<?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>192861</bug_id>
          
          <creation_ts>2018-12-19 10:45:36 -0800</creation_ts>
          <short_desc>Resync libsrtp to M72</short_desc>
          <delta_ts>2018-12-21 11:29:26 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebRTC</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="youenn fablet">youennf</reporter>
          <assigned_to name="youenn fablet">youennf</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1489357</commentid>
    <comment_count>0</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2018-12-19 10:45:36 -0800</bug_when>
    <thetext>Resync libsrtp to M72</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1489358</commentid>
    <comment_count>1</comment_count>
      <attachid>357694</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2018-12-19 10:48:21 -0800</bug_when>
    <thetext>Created attachment 357694
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1489413</commentid>
    <comment_count>2</comment_count>
      <attachid>357710</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2018-12-19 12:36:56 -0800</bug_when>
    <thetext>Created attachment 357710
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1489476</commentid>
    <comment_count>3</comment_count>
      <attachid>357710</attachid>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2018-12-19 14:18:23 -0800</bug_when>
    <thetext>Comment on attachment 357710
Patch

Attachment 357710 did not pass ios-sim-ews (ios-simulator-wk2):
Output: https://webkit-queues.webkit.org/results/10477333

New failing tests:
imported/w3c/web-platform-tests/webrtc/simplecall-no-ssrcs.https.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1489477</commentid>
    <comment_count>4</comment_count>
      <attachid>357725</attachid>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2018-12-19 14:18:25 -0800</bug_when>
    <thetext>Created attachment 357725
Archive of layout-test-results from ews123 for ios-simulator-wk2

The attached test failures were seen while running run-webkit-tests on the ios-sim-ews.
Bot: ews123  Port: ios-simulator-wk2  Platform: Mac OS X 10.13.6</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1490130</commentid>
    <comment_count>5</comment_count>
      <attachid>357890</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2018-12-20 16:02:59 -0800</bug_when>
    <thetext>Created attachment 357890
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1490390</commentid>
    <comment_count>6</comment_count>
      <attachid>357890</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2018-12-21 10:20:35 -0800</bug_when>
    <thetext>Comment on attachment 357890
Patch

rs=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1490408</commentid>
    <comment_count>7</comment_count>
      <attachid>357890</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-12-21 11:28:24 -0800</bug_when>
    <thetext>Comment on attachment 357890
Patch

Clearing flags on attachment: 357890

Committed r239509: &lt;https://trac.webkit.org/changeset/239509&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1490409</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-12-21 11:28:26 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1490411</commentid>
    <comment_count>9</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-12-21 11:29:26 -0800</bug_when>
    <thetext>&lt;rdar://problem/46905211&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>357694</attachid>
            <date>2018-12-19 10:48:21 -0800</date>
            <delta_ts>2018-12-19 12:36:55 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-192861-20181219104817.patch</filename>
            <type>text/plain</type>
            <size>966831</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM5MjgyCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvQ2hhbmdlTG9nIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL0NoYW5n
ZUxvZwppbmRleCA4YjAwNjIxN2QwYTEyOWJlYjUwMGZlMjdhMTIyYmNmZWQ0ZjkwZWRiLi45MGZm
YzQ1ODAwODFhYzRhMTQwOTIwNjY3NjZlNWNmNjBmZGZkZTM0IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMiBAQAorMjAxOC0xMi0xOSAgWW91ZW5uIEZh
YmxldCAgPHlvdWVubkBhcHBsZS5jb20+CisKKyAgICAgICAgUmVzeW5jIGxpYnNydHAgdG8gTTcy
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTI4NjEK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFNvdXJj
ZS90aGlyZF9wYXJ0eS9saWJzcnRwLzogUmVzeW5jZWQgdG8gQ2hyb21lIE03MiBicmFuY2guCisK
IDIwMTgtMTItMTkgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAg
IFJlc3luYyBCb3JpbmdTU0wgdG8gTTcyCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvQ29uZmlndXJhdGlvbnMvbGlid2VicnRjcGNydGMueGNjb25maWcgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvQ29uZmlndXJhdGlvbnMvbGlid2VicnRjcGNydGMueGNjb25m
aWcKaW5kZXggOWFmOWIxZjVmMzZlM2ExZDVlODQ5NjY5YjUxMjFhYTRhYzBlMmJhYi4uNWE4MmMx
M2I3ZGFlMzE4NjI3MTVkNjc4ZjFhMTFmYmVjMzY4NDA5MyAxMDA2NDQKLS0tIGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL0NvbmZpZ3VyYXRpb25zL2xpYndlYnJ0Y3BjcnRjLnhjY29uZmln
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Db25maWd1cmF0aW9ucy9saWJ3ZWJy
dGNwY3J0Yy54Y2NvbmZpZwpAQCAtMTIsNyArMTIsNyBAQCBJTlNUQUxMX1BBVEggPSAvdXNyL2xv
Y2FsL2xpYjsKIFBVQkxJQ19IRUFERVJTX0ZPTERFUl9QQVRIID0gL3Vzci9sb2NhbC9pbmNsdWRl
L2xpYndlYnJ0YzsKIFVTRV9IRUFERVJNQVAgPSBOTzsKIAotR0NDX1BSRVBST0NFU1NPUl9ERUZJ
TklUSU9OUyA9IFdFQlJUQ19QT1NJWCBXRUJSVENfTUFDIFNTTF9VU0VfT1BFTlNTTCBGRUFUVVJF
X0VOQUJMRV9TU0wgSEFWRV9TUlRQIEhBVkVfT1BFTlNTTF9TU0xfSCBTQ1RQX1BST0NFU1NfTEVW
RUxfTE9DS1MgU0NUUF9TSU1QTEVfQUxMT0NBVE9SIFNDVFBfVVNFX09QRU5TU0xfU0hBMSBfX1Vz
ZXJzcGFjZV9fIEhBVkVfU0FfTEVOIEhBVkVfU0NPTk5fTEVOIF9fQVBQTEVfVVNFX1JGQ18yMjky
IF9fVXNlcnNwYWNlX29zX0RhcndpbiBOT05fV0lORE9XU19ERUZJTkUgSEFWRV9XRUJSVENfVklE
RU8gSEFWRV9XRUJSVENfVk9JQ0UgV0VCUlRDX0lOVEVMTElHSUJJTElUWV9FTkhBTkNFUj0wIFdF
QlJUQ19BUE1fREVCVUdfRFVNUD0wIFdFQlJUQ19OU19GTE9BVCBXRUJSVENfVVNFX0JVSUxUSU5f
SUxCQyBXRUJSVENfQ09ERUNfSUxCQyBXRUJSVENfVVNFX0JVSUxUSU5fT1BVUyBXRUJSVENfQ09E
RUNfT1BVUyBXRUJSVENfQ09ERUNfSVNBQyBXRUJSVENfQ09ERUNfUkVEIFJUQ19ESVNBQkxFX1ZQ
OSBIQVZFX1NURElOVF9IIEhBVkVfU1RETElCX0ggSEFWRV9VSU5UNjRfVCBPUEVOU1NMIEhBVkVf
Q09ORklHX0ggV0VCUlRDX1dFQktJVF9CVUlMRCBIQVZFX1BUSFJFQURfQ09ORF9USU1FRFdBSVRf
UkVMQVRJVkUgIEhBVkVfU0NUUCAkKGluaGVyaXRlZCk7CitHQ0NfUFJFUFJPQ0VTU09SX0RFRklO
SVRJT05TID0gV0VCUlRDX1BPU0lYIFdFQlJUQ19NQUMgU1NMX1VTRV9PUEVOU1NMIEZFQVRVUkVf
RU5BQkxFX1NTTCBIQVZFX1NSVFAgSEFWRV9PUEVOU1NMX1NTTF9IIFNDVFBfUFJPQ0VTU19MRVZF
TF9MT0NLUyBTQ1RQX1NJTVBMRV9BTExPQ0FUT1IgU0NUUF9VU0VfT1BFTlNTTF9TSEExIF9fVXNl
cnNwYWNlX18gSEFWRV9TQV9MRU4gSEFWRV9TQ09OTl9MRU4gX19BUFBMRV9VU0VfUkZDXzIyOTIg
X19Vc2Vyc3BhY2Vfb3NfRGFyd2luIE5PTl9XSU5ET1dTX0RFRklORSBIQVZFX1dFQlJUQ19WSURF
TyBIQVZFX1dFQlJUQ19WT0lDRSBXRUJSVENfSU5URUxMSUdJQklMSVRZX0VOSEFOQ0VSPTAgV0VC
UlRDX0FQTV9ERUJVR19EVU1QPTAgV0VCUlRDX05TX0ZMT0FUIFdFQlJUQ19VU0VfQlVJTFRJTl9J
TEJDIFdFQlJUQ19DT0RFQ19JTEJDIFdFQlJUQ19VU0VfQlVJTFRJTl9PUFVTIFdFQlJUQ19DT0RF
Q19PUFVTIFdFQlJUQ19DT0RFQ19JU0FDIFdFQlJUQ19DT0RFQ19SRUQgUlRDX0RJU0FCTEVfVlA5
IEhBVkVfU1RESU5UX0ggSEFWRV9TVERMSUJfSCBIQVZFX1VJTlQ2NF9UIE9QRU5TU0wgSEFWRV9D
T05GSUdfSCBXRUJSVENfV0VCS0lUX0JVSUxEIEhBVkVfUFRIUkVBRF9DT05EX1RJTUVEV0FJVF9S
RUxBVElWRSBIQVZFX05FVElORVRfSU5fSCBIQVZFX1NDVFAgJChpbmhlcml0ZWQpOwogCiBHQ0Nf
UFJFUFJPQ0VTU09SX0RFRklOSVRJT05TW3Nkaz1tYWNvc3gqXSA9ICQoaW5oZXJpdGVkKTsKIEdD
Q19QUkVQUk9DRVNTT1JfREVGSU5JVElPTlNbc2RrPWlwaG9uZW9zKl0gPSAkKGluaGVyaXRlZCkg
V0VCUlRDX0lPUzsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlic3J0cC9CVUlMRC5nbiBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9CVUlMRC5nbgppbmRleCA1ZDM4NmQ2Y2Ew
ZjIyYWM0ZWY1N2FlOGZiYjA5MmFkODM3MzdmZjJlLi42MzU5NTg1N2YwZTVhZDg1YzAzZmNhMDgw
N2I1ZjU4OTk5OGQ1ZTA3IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvQlVJTEQuZ24KKysrIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL0JVSUxELmduCkBAIC0zMyw3
ICszMyw3IEBAIGNvbmZpZygibGlic3J0cF9jb25maWciKSB7CiAgICAgIkhBVkVfVUlOVDY0X1Qi
LAogICAgICJIQVZFX1VJTlQ4X1QiLAogICBdCi0gIGlmIChpc19wb3NpeCkgeworICBpZiAoaXNf
cG9zaXggfHwgaXNfZnVjaHNpYSkgewogICAgIGRlZmluZXMgKz0gWwogICAgICAgIkhBVkVfQVJQ
QV9JTkVUX0giLAogICAgICAgIkhBVkVfTkVUSU5FVF9JTl9IIiwKQEAgLTgwLDYgKzgwLDcgQEAg
c3RhdGljX2xpYnJhcnkoImxpYnNydHAiKSB7CiAgICAgImNyeXB0by9pbmNsdWRlL2FsbG9jLmgi
LAogICAgICJjcnlwdG8vaW5jbHVkZS9hdXRoLmgiLAogICAgICJjcnlwdG8vaW5jbHVkZS9jaXBo
ZXIuaCIsCisgICAgImNyeXB0by9pbmNsdWRlL2NpcGhlcl90eXBlcy5oIiwKICAgICAiY3J5cHRv
L2luY2x1ZGUvY3J5cHRvX2tlcm5lbC5oIiwKICAgICAiY3J5cHRvL2luY2x1ZGUvY3J5cHRvX3R5
cGVzLmgiLAogICAgICJjcnlwdG8vaW5jbHVkZS9kYXRhdHlwZXMuaCIsCmRpZmYgLS1naXQgYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvQ0hB
TkdFUyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGli
c3J0cC9DSEFOR0VTCmluZGV4IGEzMjNhZjE5NjVkZDAxNjliNGZkYTdmNjMyM2E2NDM2ZjU0MWQ4
MjguLmNhYTJiNjExMzljNjg4ZmE2OWU4MjUyMmM1YTRmZDE0MjM0OTM4ZWUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9D
SEFOR0VTCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvbGlic3J0cC9DSEFOR0VTCkBAIC0xLDUgKzEsNjUgQEAKIENoYW5nZWxvZwogCisyLjIuMC1w
cmUgKFRoaXMgdmVyc2lvbikKKworTWFqb3IgY2hhbmdlcworCitBbGwgY29kZSBoYXMgYmVlbiBy
ZWZvcm1hdHRlZCB0byBiZSBjb25zaXN0ZW50LiBBIC5jbGFuZy1mb3JtYXQgZmlsZSBhbmQgZm9y
bWF0LnNoIHNjcmlwdCBoYXMgYmVlbiBhZGRlZCB0aGF0IGNhbiBiZSB1c2UgdG8gdmVyaWZ5IGFu
ZCBlbmZvcmNlIGNvbnNpc3RlbnQgZm9ybWF0dGluZy4gQW4gYXV0b21hdGVkIGNoZWNrIG9uIGNv
ZGUgZm9ybWF0dGluZyBpcyBub3cgcGFydCBvZiB0cmF2aXMgYnVpbGQuCisKK090aGVyIGNoYW5n
ZXMKKworUFIgIzQwOSAtIENvbXBhdGliaWx0eSB3aXRoIExpYnJlU1NMCisKK1BSICM0MDYgLSBG
aXggdW5wcm90ZWN0IHdoZW4gcGt0bGVuIDwgKDIqbWtpX3NpemUgKyB0YWdfbGVuKQorCitQUiAj
NDA1IC0gUHJldmVudCBwb3RlbnRpYWwgZG91YmxlIGZyZWUKKworUFIgIzQwNCAtIEFkZCBiYWNr
IGV4dGVybiB0byBnbG9iYWwgdmFyaWFibGVzCisKK1BSICM0MDMgLSBTZXQgZ2NtIElWIGRpcmVj
dGx5IHdpdGggRVZQX0NpcGhlckluaXRfZXgKKworUFIgIzQwMSAtIEZpeCBtZW1vcnkgYWNjZXNz
IGlzc3VlIGluIHNydHBfZ2V0X3Nlc3Npb25fa2V5cygpCisKK1BSICMzOTggLSBGaXggbWVtb3J5
IGFjY2VzcyBmaXhlcyB3aGVuIGludmFsaWQgcHJvZmlsZXMgd2hlcmUgdXNlZAorCitQUiAjMzkx
IC0gUmV0dXJuIE5VTEwgd2hlbiBhbGxvY2F0aW5nIG1lbW9yeSBvZiBzaXplIHplcm8KKworUFIg
IzM5MCAtIEJpdHZlY3RvciBvZiBsZW5ndGggemVybyBpcyBub3QgdmFsaWQKKworUFIgIzM4NSAt
IFRyZWF0IHdhcm5pbmdzIGFzIGVycm9ycyBvbiB0cmF2aXMgYnVpbGRzCisKK1BSICMzODggLSBN
b3ZlZCBleHRlcm5zIGZyb20gY3J5cHRvX2tlcm5lbCBpbnRvIGl0cyBvd24gaGVhZGVyCisKK1BS
ICMzNzkgLSBGaXhlZCBzZXZlcmFsIGNvbXBpbGVyIHdhcm5pbmdzIGZyb20gRmlyZWZveCBidWls
ZHMKKworUFIgIzM3NyAtIFJlbW92ZWQgdmFyaWFibGUgaW5pdCBjb2RlIGluIHJkYnggd2hpY2gg
bmV2ZXIgZ2V0cyB1c2VkCisKK1BSICMzODEgLSBBZGRlZCBlcnJvciBpbiBjYXNlIHRoZSBwbGF0
Zm9ybSBpcyBub3QgZGV0ZWN0ZWQKKworUFIgIzM3NiAtIEFkZCBjb3Zlcml0eSBzY2FuIHRvIHRy
YXZpcyBidWlsZHMKKworUFIgIzM3NCAtIEFkZCBhIGJpZyBlbmRpYW4gYnVpbGQgb24gdHJhdmlz
CisKK1BSICMzNzMgLSBGaXhlZCBidWZmZXIgc2l6ZSBpc3N1ZSBpbiB0ZXN0L3NydHBfZHJpdmVy
LmMKKworUFIgIzM3MiAtIE1ha2UgcnRwX2RlY29kZXIgY29tcGlsZSBvbiBNaW5HVworCitQUiAj
MzY3IC0gUmVuYW1lIGNvbmZpZ3VyZS5pbiB0byBjb25maWd1cmUuYWMKKworUFIgIzM2NSAtIFJl
cGxhY2UgY2FsbHMgdG8gZnJlZSgpIHdpdGggc3J0cF9jcnlwdG9fZnJlZSgpCisKK1BSICMzNjQg
LSBBZGQgdmFsZ3JpbmQgdG8gdHJhdmlzIGFuZCBmaXggbGVha3MgaW4gdGVzdHMKKworUFIgIzM2
MyAtIENoYW5nZSBzbXRwX2NyeXB0b19hbGxvYyB0byBpbml0aWFsaXplIG1lbW9yeSB0byB6ZXJv
CisKK1BSICMzNTQgLSBGaXggcG90ZW50aWFsIGxlYWsgaWYgY2xvbmluZyBvZiBzdHJlYW0gZmFp
bHMKKworUFIgIzM0MCAtIEZpeCBwb3RlbnRpYWwgbGVhayBpbiBzcnRwX2FkZF9zdHJlYW0oKQor
CitQUiAjMzIzIC0gRml4IHJ1bm5pbmcgdGVzdCBpbiBvdXQgb2Ygc291cmNlIGJ1aWxkcworCitJ
c3N1ZSAjMzE2ICAtIFJlbW92ZSBWRVJTSU9OIGZpbGUKKwogMi4xLjAKIAogQ29tcGF0aWJpbGl0
eSBjaGFuZ2VzCkBAIC0xNjQsNCArMjI0LDQgQEAgT3RoZXIgY2hhbmdlcwogCiAgIFBSICMzMDIg
LSBGaXggd2FybmluZyByZWdhcmRpbmcgdW51c2VkIHZhcmlhYmxlCiAKLSAgUFIgIzMwMyAtIE1h
a2VmaWxlLmluOiBBZGQgZ251IGFzIG1hdGNoIGZvciBzaGFyZWQgbGliIHN1ZmZpeApcIE5vIG5l
d2xpbmUgYXQgZW5kIG9mIGZpbGUKKyAgUFIgIzMwMyAtIE1ha2VmaWxlLmluOiBBZGQgZ251IGFz
IG1hdGNoIGZvciBzaGFyZWQgbGliIHN1ZmZpeApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL0xJQlNSVFBfVkVSU0lPTiBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9M
SUJTUlRQX1ZFUlNJT04KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNTQzMjI2MTQ4N2Y1Y2IwNGY4NDllM2I4ZDQ1MzJh
NjdkYzc3MGVhNgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9MSUJTUlRQX1ZFUlNJT04KQEAgLTAsMCArMSBA
QAorMi4yLjAtcHJlCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvT1dORVJTIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL09XTkVSUwppbmRleCBmZDY0M2VmZDFmZDRm
NDM3MzUxZTcwNDFiY2ExODk5ZDg4ZjFlYzJlLi5hNTU4Njc4NjczNzc4OTIyOGFkMzM1MzE5NWRi
MTljMzNlOTBlYzAzIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvT1dORVJTCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9PV05FUlMKQEAgLTEsMyArMSwyIEBA
CiBtYXR0ZHJAY2hyb21pdW0ub3JnCi1ramVsbGFuZGVyQGNocm9taXVtLm9yZwogcGhvZ2x1bmRA
Y2hyb21pdW0ub3JnCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvUkVBRE1FIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL1JFQURNRQpkZWxldGVkIGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggZTY5ZGUyOWJiMmQxZDY0MzRiOGIyOWFlNzc1YWQ4YzJlNDhjNTM5MS4uMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMApkaWZmIC0tZ2l0IGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL1JFQURNRS5j
aHJvbWl1bSBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlic3J0cC9SRUFETUUuY2hyb21pdW0KaW5kZXggNzU0ZGRjZDM4NTk1YTZjNzZjYzI5MDQxMmU1
M2RhMTI0ZTc2ODYxOC4uNGE2NzNjNmE0OTAxMmViYjgyYzc3MGY4OTM0MWQ4OWJkYzNjOThkNyAx
MDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9saWJzcnRwL1JFQURNRS5jaHJvbWl1bQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvUkVBRE1FLmNocm9taXVtCkBAIC0xLDYgKzEs
NiBAQAogTmFtZTogbGlic3J0cAogVVJMOiBodHRwczovL2dpdGh1Yi5jb20vY2lzY28vbGlic3J0
cAotVmVyc2lvbjogOTNhYmEzZTc2NzUwMjM0M2MyNTVmYWQ4OTYyZGJmMGZmMjljNGNhNgorVmVy
c2lvbjogOTRhYzAwZDVhYzY0MDllM2Y2NDA5ZTRhNWVkZmNkYmRhYTdmZGFiZQogTGljZW5zZTog
My1jbGF1c2UgQlNECiBMaWNlbnNlIEZpbGU6IExJQ0VOU0UKIFNlY3VyaXR5IENyaXRpY2FsOiBZ
ZXMKQEAgLTEyLDMgKzEyLDQgQEAgRGVzY3JpcHRpb246CiAKIExvY2FsIE1vZGlmaWNhdGlvbnM6
CiAgIFJlbW92ZWQgbWFueSB1bnVzZWQgZmlsZXMsIGUuZy4gYWxsIG5vbi1PcGVuU1NMIGNpcGhl
ciBpbXBsZW1lbnRhdGlvbnMuCisgIFJlbmFtZWQgVkVSU0lPTiB0byBMSUJTUlRQX1ZFUlNJT04u
CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L2xpYnNydHAvUkVBRE1FLm1kIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJzcnRwL1JFQURNRS5tZAppbmRleCBiNjMyNjdhYzUwYjQ3NmI0NGIy
OTY1NzlkYzU3NzliYTY5ZjI2YWFmLi4zZjFlNWJiZmRlYmIyZTM0NzJjZmM5ZmRjZWRiZjgyMWY2
NjI0Yzg0IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnNydHAvUkVBRE1FLm1kCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9SRUFETUUubWQKQEAgLTEsMyArMSw2IEBA
CitbIVtCdWlsZCBTdGF0dXNdKGh0dHBzOi8vdHJhdmlzLWNpLm9yZy9jaXNjby9saWJzcnRwLnN2
Zz9icmFuY2g9bWFzdGVyKV0oaHR0cHM6Ly90cmF2aXMtY2kub3JnL2Npc2NvL2xpYnNydHApCitb
IVtDb3Zlcml0eSBTY2FuIEJ1aWxkIFN0YXR1c10oaHR0cHM6Ly9zY2FuLmNvdmVyaXR5LmNvbS9w
cm9qZWN0cy8xNDI3NC9iYWRnZS5zdmcpXShodHRwczovL3NjYW4uY292ZXJpdHkuY29tL3Byb2pl
Y3RzL2Npc2NvLWxpYnNydHApCisKIDxhIG5hbWU9ImludHJvZHVjdGlvbi10by1saWJzcnRwIj48
L2E+CiAjIEludHJvZHVjdGlvbiB0byBsaWJTUlRQCiAKQEAgLTUxLDYgKzU0LDcgQEAgYmVjYXVz
ZSBpdCBkb2VzIGl0cyB3b3JrIGJlaGluZCB0aGUgc2NlbmVzLgogICAtIFtTdXBwb3J0ZWQgRmVh
dHVyZXNdKCNzdXBwb3J0ZWQtZmVhdHVyZXMpCiAgIC0gW0ltcGxlbWVudGF0aW9uIE5vdGVzXSgj
aW1wbGVtZW50YXRpb24tbm90ZXMpCiAtIFtJbnN0YWxsaW5nIGFuZCBCdWlsZGluZyBsaWJTUlRQ
XSgjaW5zdGFsbGluZy1hbmQtYnVpbGRpbmctbGlic3J0cCkKKyAgLSBbQ2hhbmdpbmcgQnVpbGQg
Q29uZmlndXJhdGlvbl0oI2NoYW5naW5nLWJ1aWxkLWNvbmZpZ3VyYXRpb24pCiAtIFtBcHBsaWNh
dGlvbnNdKCNhcHBsaWNhdGlvbnMpCiAgIC0gW0V4YW1wbGUgQ29kZV0oI2V4YW1wbGUtY29kZSkK
IC0gW0NyZWRpdHNdKCNjcmVkaXRzKQpAQCAtMjkxLDYgKzI5NSwyNiBAQCBPcGVuQlNEIChzcGFy
Yy11bmtub3duLW9wZW5ic2QyLjcpLgogCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCis8YSBu
YW1lPSJjaGFuZ2luZy1idWlsZC1jb25maWd1cmF0aW9uIj48L2E+CisjIyBDaGFuZ2luZyBCdWls
ZCBDb25maWd1cmF0aW9uCisKK1RvIGJ1aWxkIHRoZSBgLi9jb25maWd1cmVgIHNjcmlwdCBtZW50
aW9uZWQgYWJvdmUsIGxpYlNSVFAgcmVsaWVzIG9uIHRoZQorW2F1dG9tYWtlXShodHRwczovL3d3
dy5nbnUub3JnL3NvZnR3YXJlL2F1dG9tYWtlLykgdG9vbGNoYWluLiAgU2luY2UKK2AuL2NvbmZp
Z3VyZWAgaXMgYnVpbHQgZnJvbSBgY29uZmlndXJlLmluYCBieSBhdXRvbWFrZSwgaWYgeW91IG1h
a2UgY2hhbmdlcyBpbgoraG93IGAuL2NvbmZpZ3VyZWAgd29ya3MgKGUuZy4sIHRvIGFkZCBhIG5l
dyBsaWJyYXJ5IGRlcGVuZGVuY3kpLCB5b3Ugd2lsbCBuZWVkCit0byByZWJ1aWxkIGAuL2NvbmZp
Z3VyZWAgYW5kIGNvbW1pdCB0aGUgdXBkYXRlZCB2ZXJzaW9uLiAgSW4gYWRkaXRpb24gdG8KK2F1
dG9tYWtlIGl0c2VsZiwgeW91IHdpbGwgbmVlZCB0byBoYXZlIHRoZSBgcGtnY29uZmlnYCB0b29s
cyBpbnN0YWxsZWQgYXMgd2VsbC4KKworRm9yIGV4YW1wbGUsIG9uIG1hY09TOgorCitgYGAKK2Jy
ZXcgaW5zdGFsbCBhdXRvbWFrZSBwa2djb25maWcKKyMgRWRpdCBjb25maWd1cmUuaW4KK2F1dG9y
ZW1ha2UgLWl2ZgorYGBgCisKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKIDxhIG5hbWU9ImFw
cGxpY2F0aW9ucyI+PC9hPgogIyBBcHBsaWNhdGlvbnMKIApAQCAtMzk3LDYgKzQyMSw5IEBAIHVp
bnQ4X3Qga2V5WzMwXSA9IHsweDAwLCAweDAxLCAweDAyLCAweDAzLCAweDA0LCAweDA1LCAweDA2
LCAweDA3LAogLy8gaW5pdGlhbGl6ZSBsaWJTUlRQCiBzcnRwX2luaXQoKTsKIAorLy8gZGVmYXVs
dCBwb2xpY3kgdmFsdWVzCittZW1zZXQoJnBvbGljeSwgMHgwLCBzaXplb2Yoc3J0cF9wb2xpY3lf
dCkpOworCiAvLyBzZXQgcG9saWN5IHRvIGRlc2NyaWJlIGEgcG9saWN5IGZvciBhbiBTUlRQIHN0
cmVhbQogY3J5cHRvX3BvbGljeV9zZXRfcnRwX2RlZmF1bHQoJnBvbGljeS5ydHApOwogY3J5cHRv
X3BvbGljeV9zZXRfcnRjcF9kZWZhdWx0KCZwb2xpY3kucnRjcCk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvVE9ETyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9U
T0RPCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlNjlkZTI5YmIyZDFkNjQzNGI4YjI5
YWU3NzVhZDhjMmU0OGM1MzkxLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L2xpYnNydHAvVkVSU0lPTiBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlic3J0cC9WRVJTSU9OCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCA0NGU1YmUyZjA4ZDQwZTU1OTZlNWJjNzlmY2M5NTM1ZWExNjI3NzEyLi4wMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9WRVJTSU9OCisrKyAvZGV2L251bGwK
QEAgLTEgKzAsMCBAQAotMi4xLjAtcHJlCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY29kZXJldmlldy5zZXR0aW5ncyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9j
b2RlcmV2aWV3LnNldHRpbmdzCmluZGV4IGIwZjRlNTcwZWJiNTk0MTMzYmZlY2Y1MTAzNmQ0ZmJl
ODI1MzJkOWUuLmRlNjIwYzgxNWIwNzBkNzBmOWExYWM0N2Q2MDQwOTVhMTAxOGZjYjEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGli
c3J0cC9jb2RlcmV2aWV3LnNldHRpbmdzCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jb2RlcmV2aWV3LnNldHRpbmdzCkBAIC0xLDkg
KzEsNyBAQAotQ09ERV9SRVZJRVdfU0VSVkVSOiBjb2RlcmV2aWV3LmNocm9taXVtLm9yZworIyBU
aGlzIGZpbGUgaXMgdXNlZCBieSBnaXQtY2wgdG8gZ2V0IHJlcG9zaXRvcnkgc3BlY2lmaWMgaW5m
b3JtYXRpb24uCiBDQ19MSVNUOiBjaHJvbWl1bS1yZXZpZXdzQGNocm9taXVtLm9yZwotVklFV19W
QzogaHR0cHM6Ly9jaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL2RlcHMvbGlic3J0
cC8rLworQ09ERV9SRVZJRVdfU0VSVkVSOiBjb2RlcmV2aWV3LmNocm9taXVtLm9yZworR0VSUklU
X0hPU1Q6IFRydWUKK1BST0pFQ1Q6IGxpYnNydHAKIFNUQVRVUzogaHR0cDovL2Nocm9taXVtLXN0
YXR1cy5hcHBzcG90LmNvbS9zdGF0dXMKLVRSWV9PTl9VUExPQUQ6IEZhbHNlCi1UUllTRVJWRVJf
U1ZOX1VSTDogc3ZuOi8vc3ZuLmNocm9taXVtLm9yZy9jaHJvbWUtdHJ5L3RyeQotR0lUQ0xfUFJF
VVBMT0FEOiBodHRwOi8vc3JjLmNocm9taXVtLm9yZy92aWV3dmMvY2hyb21lL3RydW5rL3Rvb2xz
L2RlcG90X3Rvb2xzL2dpdC1jbC11cGxvYWQtaG9vaz9yZXZpc2lvbj1IRUFECi1HSVRDTF9QUkVE
Q09NTUlUOiBodHRwOi8vc3JjLmNocm9taXVtLm9yZy92aWV3dmMvY2hyb21lL3RydW5rL3Rvb2xz
L2RlcG90X3Rvb2xzL2dpdC1jbC11cGxvYWQtaG9vaz9yZXZpc2lvbj1IRUFECi1QUk9KRUNUOiBj
aHJvbWl1bV9kZXBzCitWSUVXX1ZDOiBodHRwczovL2Nocm9taXVtLmdvb2dsZXNvdXJjZS5jb20v
Y2hyb21pdW0vZGVwcy9saWJzcnRwLysvCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2NpcGhlci9hZXNfZ2Nt
X29zc2wuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlic3J0cC9jcnlwdG8vY2lwaGVyL2Flc19nY21fb3NzbC5jCmluZGV4IDQxNjU4MmFhY2MyNzRl
YTdkOGEwNzgxMGRlMzE4OGYxYjk5YWIyMTAuLmVmMTNhNzgyNDA0ODM3NzU3ZGY1YjViMTQ3ZmUw
YTc5NmRhYjU4MzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vY2lwaGVyL2Flc19nY21fb3NzbC5jCisrKyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9j
cnlwdG8vY2lwaGVyL2Flc19nY21fb3NzbC5jCkBAIC00NSwzNiArNDUsMjggQEAKICAqLwogCiAj
aWZkZWYgSEFWRV9DT05GSUdfSAotICAgICNpbmNsdWRlIDxjb25maWcuaD4KKyNpbmNsdWRlIDxj
b25maWcuaD4KICNlbmRpZgogCiAjaW5jbHVkZSA8b3BlbnNzbC9ldnAuaD4KICNpbmNsdWRlICJh
ZXNfaWNtX29zc2wuaCIKICNpbmNsdWRlICJhZXNfZ2NtX29zc2wuaCIKICNpbmNsdWRlICJhbGxv
Yy5oIgotI2luY2x1ZGUgImVyci5oIiAgICAgICAgICAgICAgICAvKiBmb3Igc3J0cF9kZWJ1ZyAq
LworI2luY2x1ZGUgImVyci5oIiAvKiBmb3Igc3J0cF9kZWJ1ZyAqLwogI2luY2x1ZGUgImNyeXB0
b190eXBlcy5oIgotCisjaW5jbHVkZSAiY2lwaGVyX3R5cGVzLmgiCiAKIHNydHBfZGVidWdfbW9k
dWxlX3Qgc3J0cF9tb2RfYWVzX2djbSA9IHsKLSAgICAwLCAgICAgICAgICAgICAgIC8qIGRlYnVn
Z2luZyBpcyBvZmYgYnkgZGVmYXVsdCAqLwotICAgICJhZXMgZ2NtIiAgICAgICAgLyogcHJpbnRh
YmxlIG1vZHVsZSBuYW1lICAgICAgICovCisgICAgMCwgICAgICAgIC8qIGRlYnVnZ2luZyBpcyBv
ZmYgYnkgZGVmYXVsdCAqLworICAgICJhZXMgZ2NtIiAvKiBwcmludGFibGUgbW9kdWxlIG5hbWUg
ICAgICAgKi8KIH07CiAKLS8qCi0gKiBUaGUgZm9sbG93aW5nIGFyZSB0aGUgZ2xvYmFsIHNpbmds
ZXRvbiBpbnN0YW5jZXMgZm9yIHRoZQotICogMTI4LWJpdCBhbmQgMjU2LWJpdCBHQ00gY2lwaGVy
cy4KLSAqLwotZXh0ZXJuIGNvbnN0IHNydHBfY2lwaGVyX3R5cGVfdCBzcnRwX2Flc19nY21fMTI4
X29wZW5zc2w7Ci1leHRlcm4gY29uc3Qgc3J0cF9jaXBoZXJfdHlwZV90IHNydHBfYWVzX2djbV8y
NTZfb3BlbnNzbDsKLQogLyoKICAqIEZvciBub3cgd2Ugb25seSBzdXBwb3J0IDggYW5kIDE2IG9j
dGV0IHRhZ3MuICBUaGUgc3BlYyBhbGxvd3MgZm9yCiAgKiBvcHRpb25hbCAxMiBieXRlIHRhZywg
d2hpY2ggbWF5IGJlIHN1cHBvcnRlZCBpbiB0aGUgZnV0dXJlLgogICovCi0jZGVmaW5lIEdDTV9B
VVRIX1RBR19MRU4gICAgMTYKLSNkZWZpbmUgR0NNX0FVVEhfVEFHX0xFTl84ICA4Ci0KKyNkZWZp
bmUgR0NNX0FVVEhfVEFHX0xFTiAxNgorI2RlZmluZSBHQ01fQVVUSF9UQUdfTEVOXzggOAogCiAv
KgogICogVGhpcyBmdW5jdGlvbiBhbGxvY2F0ZXMgYSBuZXcgaW5zdGFuY2Ugb2YgdGhpcyBjcnlw
dG8gZW5naW5lLgpAQCAtODMsMTEgKzc1LDE0IEBAIGV4dGVybiBjb25zdCBzcnRwX2NpcGhlcl90
eXBlX3Qgc3J0cF9hZXNfZ2NtXzI1Nl9vcGVuc3NsOwogICoga2V5IGxlbmd0aCBpbmNsdWRlcyB0
aGUgMTQgYnl0ZSBzYWx0IHZhbHVlIHRoYXQgaXMgdXNlZCB3aGVuCiAgKiBpbml0aWFsaXppbmcg
dGhlIEtERi4KICAqLwotc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfYWVzX2djbV9vcGVu
c3NsX2FsbG9jIChzcnRwX2NpcGhlcl90ICoqYywgaW50IGtleV9sZW4sIGludCB0bGVuKQorc3Rh
dGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfYWVzX2djbV9vcGVuc3NsX2FsbG9jKHNydHBfY2lw
aGVyX3QgKipjLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGludCBrZXlfbGVuLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGludCB0bGVuKQogewogICAgIHNydHBfYWVzX2djbV9jdHhfdCAqZ2Nt
OwogCi0gICAgZGVidWdfcHJpbnQoc3J0cF9tb2RfYWVzX2djbSwgImFsbG9jYXRpbmcgY2lwaGVy
IHdpdGgga2V5IGxlbmd0aCAlZCIsIGtleV9sZW4pOworICAgIGRlYnVnX3ByaW50KHNydHBfbW9k
X2Flc19nY20sICJhbGxvY2F0aW5nIGNpcGhlciB3aXRoIGtleSBsZW5ndGggJWQiLAorICAgICAg
ICAgICAgICAgIGtleV9sZW4pOwogICAgIGRlYnVnX3ByaW50KHNydHBfbW9kX2Flc19nY20sICJh
bGxvY2F0aW5nIGNpcGhlciB3aXRoIHRhZyBsZW5ndGggJWQiLCB0bGVuKTsKIAogICAgIC8qCkBA
IC05OCw4ICs5Myw3IEBAIHN0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2Flc19nY21fb3Bl
bnNzbF9hbGxvYyAoc3J0cF9jaXBoZXJfdCAqKmMsIGludCBrZXlfCiAgICAgICAgIHJldHVybiAo
c3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJhbSk7CiAgICAgfQogCi0gICAgaWYgKHRsZW4gIT0gR0NN
X0FVVEhfVEFHX0xFTiAmJgotICAgICAgICB0bGVuICE9IEdDTV9BVVRIX1RBR19MRU5fOCkgewor
ICAgIGlmICh0bGVuICE9IEdDTV9BVVRIX1RBR19MRU4gJiYgdGxlbiAhPSBHQ01fQVVUSF9UQUdf
TEVOXzgpIHsKICAgICAgICAgcmV0dXJuIChzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtKTsKICAg
ICB9CiAKQEAgLTEwOCwxNSArMTAyLDEzIEBAIHN0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRw
X2Flc19nY21fb3BlbnNzbF9hbGxvYyAoc3J0cF9jaXBoZXJfdCAqKmMsIGludCBrZXlfCiAgICAg
aWYgKCpjID09IE5VTEwpIHsKICAgICAgICAgcmV0dXJuIChzcnRwX2Vycl9zdGF0dXNfYWxsb2Nf
ZmFpbCk7CiAgICAgfQotICAgIG1lbXNldCgqYywgMHgwLCBzaXplb2Yoc3J0cF9jaXBoZXJfdCkp
OwogCiAgICAgZ2NtID0gKHNydHBfYWVzX2djbV9jdHhfdCAqKXNydHBfY3J5cHRvX2FsbG9jKHNp
emVvZihzcnRwX2Flc19nY21fY3R4X3QpKTsKICAgICBpZiAoZ2NtID09IE5VTEwpIHsKLQlzcnRw
X2NyeXB0b19mcmVlKCpjKTsJCi0JKmMgPSBOVUxMOworICAgICAgICBzcnRwX2NyeXB0b19mcmVl
KCpjKTsKKyAgICAgICAgKmMgPSBOVUxMOwogICAgICAgICByZXR1cm4gKHNydHBfZXJyX3N0YXR1
c19hbGxvY19mYWlsKTsKICAgICB9Ci0gICAgbWVtc2V0KGdjbSwgMHgwLCBzaXplb2Yoc3J0cF9h
ZXNfZ2NtX2N0eF90KSk7CiAKICAgICBnY20tPmN0eCA9IEVWUF9DSVBIRVJfQ1RYX25ldygpOwog
ICAgIGlmIChnY20tPmN0eCA9PSBOVUxMKSB7CkBAIC0xNTEsMTUgKzE0MywxNCBAQCBzdGF0aWMg
c3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9hZXNfZ2NtX29wZW5zc2xfYWxsb2MgKHNydHBfY2lwaGVy
X3QgKipjLCBpbnQga2V5XwogICAgIHJldHVybiAoc3J0cF9lcnJfc3RhdHVzX29rKTsKIH0KIAot
CiAvKgogICogVGhpcyBmdW5jdGlvbiBkZWFsbG9jYXRlcyBhIEdDTSBzZXNzaW9uCiAgKi8KLXN0
YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2Flc19nY21fb3BlbnNzbF9kZWFsbG9jIChzcnRw
X2NpcGhlcl90ICpjKQorc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfYWVzX2djbV9vcGVu
c3NsX2RlYWxsb2Moc3J0cF9jaXBoZXJfdCAqYykKIHsKICAgICBzcnRwX2Flc19nY21fY3R4X3Qg
KmN0eDsKIAotICAgIGN0eCA9IChzcnRwX2Flc19nY21fY3R4X3QqKWMtPnN0YXRlOworICAgIGN0
eCA9IChzcnRwX2Flc19nY21fY3R4X3QgKiljLT5zdGF0ZTsKICAgICBpZiAoY3R4KSB7CiAgICAg
ICAgIEVWUF9DSVBIRVJfQ1RYX2ZyZWUoY3R4LT5jdHgpOwogICAgICAgICAvKiB6ZXJvaXplIHRo
ZSBrZXkgbWF0ZXJpYWwgKi8KQEAgLTE3OSwxNCArMTcwLDE2IEBAIHN0YXRpYyBzcnRwX2Vycl9z
dGF0dXNfdCBzcnRwX2Flc19nY21fb3BlbnNzbF9kZWFsbG9jIChzcnRwX2NpcGhlcl90ICpjKQog
ICoKICAqIHRoZSBrZXkgaXMgdGhlIHNlY3JldCBrZXkKICAqLwotc3RhdGljIHNydHBfZXJyX3N0
YXR1c190IHNydHBfYWVzX2djbV9vcGVuc3NsX2NvbnRleHRfaW5pdCAodm9pZCogY3YsIGNvbnN0
IHVpbnQ4X3QgKmtleSkKK3N0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2Flc19nY21fb3Bl
bnNzbF9jb250ZXh0X2luaXQodm9pZCAqY3YsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVpbnQ4X3QgKmtleSkKIHsKICAg
ICBzcnRwX2Flc19nY21fY3R4X3QgKmMgPSAoc3J0cF9hZXNfZ2NtX2N0eF90ICopY3Y7CiAgICAg
Y29uc3QgRVZQX0NJUEhFUiAqZXZwOwogCiAgICAgYy0+ZGlyID0gc3J0cF9kaXJlY3Rpb25fYW55
OwogCi0gICAgZGVidWdfcHJpbnQoc3J0cF9tb2RfYWVzX2djbSwgImtleTogICVzIiwgc3J0cF9v
Y3RldF9zdHJpbmdfaGV4X3N0cmluZyhrZXksIGMtPmtleV9zaXplKSk7CisgICAgZGVidWdfcHJp
bnQoc3J0cF9tb2RfYWVzX2djbSwgImtleTogICVzIiwKKyAgICAgICAgICAgICAgICBzcnRwX29j
dGV0X3N0cmluZ19oZXhfc3RyaW5nKGtleSwgYy0+a2V5X3NpemUpKTsKIAogICAgIHN3aXRjaCAo
Yy0+a2V5X3NpemUpIHsKICAgICBjYXNlIFNSVFBfQUVTXzI1Nl9LRVlfTEVOOgpAQCAtMjA3LDM1
ICsyMDAsMzIgQEAgc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfYWVzX2djbV9vcGVuc3Ns
X2NvbnRleHRfaW5pdCAodm9pZCogY3YsIGNvbnN0IHVpbnQKICAgICByZXR1cm4gKHNydHBfZXJy
X3N0YXR1c19vayk7CiB9CiAKLQogLyoKICAqIGFlc19nY21fb3BlbnNzbF9zZXRfaXYoYywgaXYp
IHNldHMgdGhlIGNvdW50ZXIgdmFsdWUgdG8gdGhlIGV4b3Igb2YgaXYgd2l0aAogICogdGhlIG9m
ZnNldAogICovCi1zdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9hZXNfZ2NtX29wZW5zc2xf
c2V0X2l2ICh2b2lkICpjdiwgdWludDhfdCAqaXYsIHNydHBfY2lwaGVyX2RpcmVjdGlvbl90IGRp
cmVjdGlvbikKK3N0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2Flc19nY21fb3BlbnNzbF9z
ZXRfaXYoCisgICAgdm9pZCAqY3YsCisgICAgdWludDhfdCAqaXYsCisgICAgc3J0cF9jaXBoZXJf
ZGlyZWN0aW9uX3QgZGlyZWN0aW9uKQogewogICAgIHNydHBfYWVzX2djbV9jdHhfdCAqYyA9IChz
cnRwX2Flc19nY21fY3R4X3QgKiljdjsKIAotICAgIGlmIChkaXJlY3Rpb24gIT0gc3J0cF9kaXJl
Y3Rpb25fZW5jcnlwdCAmJiBkaXJlY3Rpb24gIT0gc3J0cF9kaXJlY3Rpb25fZGVjcnlwdCkgewor
ICAgIGlmIChkaXJlY3Rpb24gIT0gc3J0cF9kaXJlY3Rpb25fZW5jcnlwdCAmJgorICAgICAgICBk
aXJlY3Rpb24gIT0gc3J0cF9kaXJlY3Rpb25fZGVjcnlwdCkgewogICAgICAgICByZXR1cm4gKHNy
dHBfZXJyX3N0YXR1c19iYWRfcGFyYW0pOwogICAgIH0KICAgICBjLT5kaXIgPSBkaXJlY3Rpb247
CiAKLSAgICBkZWJ1Z19wcmludChzcnRwX21vZF9hZXNfZ2NtLCAic2V0dGluZyBpdjogJXMiLCB2
MTI4X2hleF9zdHJpbmcoKHYxMjhfdCopaXYpKTsKKyAgICBkZWJ1Z19wcmludChzcnRwX21vZF9h
ZXNfZ2NtLCAic2V0dGluZyBpdjogJXMiLAorICAgICAgICAgICAgICAgIHYxMjhfaGV4X3N0cmlu
ZygodjEyOF90ICopaXYpKTsKIAotICAgIGlmICghRVZQX0NpcGhlckluaXRfZXgoYy0+Y3R4LCBO
VUxMLCBOVUxMLCBOVUxMLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgKGMtPmRp
ciA9PSBzcnRwX2RpcmVjdGlvbl9lbmNyeXB0ID8gMSA6IDApKSkgewotICAgICAgICByZXR1cm4g
KHNydHBfZXJyX3N0YXR1c19pbml0X2ZhaWwpOwotICAgIH0KLQotICAgIC8qIHNldCBJViBsZW4g
IGFuZCB0aGUgSVYgdmFsdWUsIHRoZSBmb2xsb3dpb25nIDMgY2FsbHMgYXJlIHJlcXVpcmVkICov
CiAgICAgaWYgKCFFVlBfQ0lQSEVSX0NUWF9jdHJsKGMtPmN0eCwgRVZQX0NUUkxfR0NNX1NFVF9J
VkxFTiwgMTIsIDApKSB7CiAgICAgICAgIHJldHVybiAoc3J0cF9lcnJfc3RhdHVzX2luaXRfZmFp
bCk7CiAgICAgfQotICAgIGlmICghRVZQX0NJUEhFUl9DVFhfY3RybChjLT5jdHgsIEVWUF9DVFJM
X0dDTV9TRVRfSVZfRklYRUQsIC0xLCAodm9pZCopaXYpKSB7Ci0gICAgICAgIHJldHVybiAoc3J0
cF9lcnJfc3RhdHVzX2luaXRfZmFpbCk7Ci0gICAgfQotICAgIGlmICghRVZQX0NJUEhFUl9DVFhf
Y3RybChjLT5jdHgsIEVWUF9DVFJMX0dDTV9JVl9HRU4sIDAsICh2b2lkKilpdikpIHsKKworICAg
IGlmICghRVZQX0NpcGhlckluaXRfZXgoYy0+Y3R4LCBOVUxMLCBOVUxMLCBOVUxMLCBpdiwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgIChjLT5kaXIgPT0gc3J0cF9kaXJlY3Rpb25fZW5jcnlw
dCA/IDEgOiAwKSkpIHsKICAgICAgICAgcmV0dXJuIChzcnRwX2Vycl9zdGF0dXNfaW5pdF9mYWls
KTsKICAgICB9CiAKQEAgLTI1MCw3ICsyNDAsOSBAQCBzdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qg
c3J0cF9hZXNfZ2NtX29wZW5zc2xfc2V0X2l2ICh2b2lkICpjdiwgdWludDhfdCAqaXYsIHNydAog
ICoJYWFkCUFkZGl0aW9uYWwgZGF0YSB0byBwcm9jZXNzIGZvciBBRUFEIGNpcGhlciBzdWl0ZXMK
ICAqCWFhZF9sZW4JbGVuZ3RoIG9mIGFhZCBidWZmZXIKICAqLwotc3RhdGljIHNydHBfZXJyX3N0
YXR1c190IHNydHBfYWVzX2djbV9vcGVuc3NsX3NldF9hYWQgKHZvaWQgKmN2LCBjb25zdCB1aW50
OF90ICphYWQsIHVpbnQzMl90IGFhZF9sZW4pCitzdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0
cF9hZXNfZ2NtX29wZW5zc2xfc2V0X2FhZCh2b2lkICpjdiwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVpbnQ4X3QgKmFhZCwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQz
Ml90IGFhZF9sZW4pCiB7CiAgICAgc3J0cF9hZXNfZ2NtX2N0eF90ICpjID0gKHNydHBfYWVzX2dj
bV9jdHhfdCAqKWN2OwogICAgIGludCBydjsKQEAgLTI2Miw4ICsyNTQsOCBAQCBzdGF0aWMgc3J0
cF9lcnJfc3RhdHVzX3Qgc3J0cF9hZXNfZ2NtX29wZW5zc2xfc2V0X2FhZCAodm9pZCAqY3YsIGNv
bnN0IHVpbnQ4X3QgKgogCiAgICAgLyoKICAgICAgKiBPcGVuU1NMIG5ldmVyIHdyaXRlIHRvIGFk
ZHJlc3MgcG9pbnRlZCBieSB0aGUgbGFzdCBwYXJhbWV0ZXIgb2YKLSAgICAgKiBFVlBfQ0lQSEVS
X0NUWF9jdHJsIHdoaWxlIEVWUF9DVFJMX0dDTV9TRVRfVEFHIChpbiByZWFsaXR5LCAKLSAgICAg
KiBPcGVuU1NMIGNvcHkgaXRzIGNvbnRlbnQgdG8gdGhlIGNvbnRleHQpLCBzbyB3ZSBjYW4gbWFr
ZSAKKyAgICAgKiBFVlBfQ0lQSEVSX0NUWF9jdHJsIHdoaWxlIEVWUF9DVFJMX0dDTV9TRVRfVEFH
IChpbiByZWFsaXR5LAorICAgICAqIE9wZW5TU0wgY29weSBpdHMgY29udGVudCB0byB0aGUgY29u
dGV4dCksIHNvIHdlIGNhbiBtYWtlCiAgICAgICogYWFkIHJlYWQtb25seSBpbiB0aGlzIGZ1bmN0
aW9uIGFuZCBhbGwgaXRzIHdyYXBwZXJzLgogICAgICAqLwogICAgIHVuc2lnbmVkIGNoYXIgZHVt
bXlfdGFnW0dDTV9BVVRIX1RBR19MRU5dOwpAQCAtMjg2LDcgKzI3OCw5IEBAIHN0YXRpYyBzcnRw
X2Vycl9zdGF0dXNfdCBzcnRwX2Flc19nY21fb3BlbnNzbF9zZXRfYWFkICh2b2lkICpjdiwgY29u
c3QgdWludDhfdCAqCiAgKglidWYJZGF0YSB0byBlbmNyeXB0CiAgKgllbmNfbGVuCWxlbmd0aCBv
ZiBlbmNyeXB0IGJ1ZmZlcgogICovCi1zdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9hZXNf
Z2NtX29wZW5zc2xfZW5jcnlwdCAodm9pZCAqY3YsIHVuc2lnbmVkIGNoYXIgKmJ1ZiwgdW5zaWdu
ZWQgaW50ICplbmNfbGVuKQorc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfYWVzX2djbV9v
cGVuc3NsX2VuY3J5cHQodm9pZCAqY3YsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBjaGFyICpidWYsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgKmVu
Y19sZW4pCiB7CiAgICAgc3J0cF9hZXNfZ2NtX2N0eF90ICpjID0gKHNydHBfYWVzX2djbV9jdHhf
dCAqKWN2OwogICAgIGlmIChjLT5kaXIgIT0gc3J0cF9kaXJlY3Rpb25fZW5jcnlwdCAmJiBjLT5k
aXIgIT0gc3J0cF9kaXJlY3Rpb25fZGVjcnlwdCkgewpAQCAtMzEyLDcgKzMwNiw5IEBAIHN0YXRp
YyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2Flc19nY21fb3BlbnNzbF9lbmNyeXB0ICh2b2lkICpj
diwgdW5zaWduZWQgY2hhciAqCiAgKglidWYJZGF0YSB0byBlbmNyeXB0CiAgKglsZW4JbGVuZ3Ro
IG9mIGVuY3J5cHQgYnVmZmVyCiAgKi8KLXN0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2Fl
c19nY21fb3BlbnNzbF9nZXRfdGFnICh2b2lkICpjdiwgdWludDhfdCAqYnVmLCB1aW50MzJfdCAq
bGVuKQorc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfYWVzX2djbV9vcGVuc3NsX2dldF90
YWcodm9pZCAqY3YsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB1aW50OF90ICpidWYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCAqbGVuKQogewogICAgIHNydHBfYWVzX2dj
bV9jdHhfdCAqYyA9IChzcnRwX2Flc19nY21fY3R4X3QgKiljdjsKICAgICAvKgpAQCAtMzMzLDcg
KzMyOSw2IEBAIHN0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2Flc19nY21fb3BlbnNzbF9n
ZXRfdGFnICh2b2lkICpjdiwgdWludDhfdCAqYnVmLCB1CiAgICAgcmV0dXJuIChzcnRwX2Vycl9z
dGF0dXNfb2spOwogfQogCi0KIC8qCiAgKiBUaGlzIGZ1bmN0aW9uIGRlY3J5cHRzIGEgYnVmZmVy
IHVzaW5nIEFFUyBHQ00gbW9kZQogICoKQEAgLTM0Miw3ICszMzcsOSBAQCBzdGF0aWMgc3J0cF9l
cnJfc3RhdHVzX3Qgc3J0cF9hZXNfZ2NtX29wZW5zc2xfZ2V0X3RhZyAodm9pZCAqY3YsIHVpbnQ4
X3QgKmJ1ZiwgdQogICoJYnVmCWRhdGEgdG8gZW5jcnlwdAogICoJZW5jX2xlbglsZW5ndGggb2Yg
ZW5jcnlwdCBidWZmZXIKICAqLwotc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfYWVzX2dj
bV9vcGVuc3NsX2RlY3J5cHQgKHZvaWQgKmN2LCB1bnNpZ25lZCBjaGFyICpidWYsIHVuc2lnbmVk
IGludCAqZW5jX2xlbikKK3N0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2Flc19nY21fb3Bl
bnNzbF9kZWNyeXB0KHZvaWQgKmN2LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgY2hhciAqYnVmLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50ICplbmNf
bGVuKQogewogICAgIHNydHBfYWVzX2djbV9jdHhfdCAqYyA9IChzcnRwX2Flc19nY21fY3R4X3Qg
KiljdjsKICAgICBpZiAoYy0+ZGlyICE9IHNydHBfZGlyZWN0aW9uX2VuY3J5cHQgJiYgYy0+ZGly
ICE9IHNydHBfZGlyZWN0aW9uX2RlY3J5cHQpIHsKQEAgLTM3MiwzMiArMzY5LDM2IEBAIHN0YXRp
YyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2Flc19nY21fb3BlbnNzbF9kZWNyeXB0ICh2b2lkICpj
diwgdW5zaWduZWQgY2hhciAqCiAgICAgcmV0dXJuIChzcnRwX2Vycl9zdGF0dXNfb2spOwogfQog
Ci0KLQogLyoKICAqIE5hbWUgb2YgdGhpcyBjcnlwdG8gZW5naW5lCiAgKi8KLXN0YXRpYyBjb25z
dCBjaGFyIHNydHBfYWVzX2djbV8xMjhfb3BlbnNzbF9kZXNjcmlwdGlvbltdID0gIkFFUy0xMjgg
R0NNIHVzaW5nIG9wZW5zc2wiOwotc3RhdGljIGNvbnN0IGNoYXIgc3J0cF9hZXNfZ2NtXzI1Nl9v
cGVuc3NsX2Rlc2NyaXB0aW9uW10gPSAiQUVTLTI1NiBHQ00gdXNpbmcgb3BlbnNzbCI7Ci0KK3N0
YXRpYyBjb25zdCBjaGFyIHNydHBfYWVzX2djbV8xMjhfb3BlbnNzbF9kZXNjcmlwdGlvbltdID0K
KyAgICAiQUVTLTEyOCBHQ00gdXNpbmcgb3BlbnNzbCI7CitzdGF0aWMgY29uc3QgY2hhciBzcnRw
X2Flc19nY21fMjU2X29wZW5zc2xfZGVzY3JpcHRpb25bXSA9CisgICAgIkFFUy0yNTYgR0NNIHVz
aW5nIG9wZW5zc2wiOwogCiAvKgogICogS0FUIHZhbHVlcyBmb3IgQUVTIHNlbGYtdGVzdC4gIFRo
ZXNlCiAgKiB2YWx1ZXMgd2UncmUgZGVyaXZlZCBmcm9tIGluZGVwZW5kZW50IHRlc3QgY29kZQog
ICogdXNpbmcgT3BlblNTTC4KICAqLworLyogY2xhbmctZm9ybWF0IG9mZiAqLwogc3RhdGljIGNv
bnN0IHVpbnQ4X3Qgc3J0cF9hZXNfZ2NtX3Rlc3RfY2FzZV8wX2tleVtTUlRQX0FFU19HQ01fMTI4
X0tFWV9MRU5fV1NBTFRdID0gewogICAgIDB4ZmUsIDB4ZmYsIDB4ZTksIDB4OTIsIDB4ODYsIDB4
NjUsIDB4NzMsIDB4MWMsCiAgICAgMHg2ZCwgMHg2YSwgMHg4ZiwgMHg5NCwgMHg2NywgMHgzMCwg
MHg4MywgMHgwOCwKICAgICAweDAxLCAweDAyLCAweDAzLCAweDA0LCAweDA1LCAweDA2LCAweDA3
LCAweDA4LAogICAgIDB4MDksIDB4MGEsIDB4MGIsIDB4MGMsCiB9OworLyogY2xhbmctZm9ybWF0
IG9uICovCiAKKy8qIGNsYW5nLWZvcm1hdCBvZmYgKi8KIHN0YXRpYyB1aW50OF90IHNydHBfYWVz
X2djbV90ZXN0X2Nhc2VfMF9pdlsxMl0gPSB7CiAgICAgMHhjYSwgMHhmZSwgMHhiYSwgMHhiZSwg
MHhmYSwgMHhjZSwgMHhkYiwgMHhhZCwKICAgICAweGRlLCAweGNhLCAweGY4LCAweDg4CiB9Owor
LyogY2xhbmctZm9ybWF0IG9uICovCiAKKy8qIGNsYW5nLWZvcm1hdCBvZmYgKi8KIHN0YXRpYyBj
b25zdCB1aW50OF90IHNydHBfYWVzX2djbV90ZXN0X2Nhc2VfMF9wbGFpbnRleHRbNjBdID0gIHsK
ICAgICAweGQ5LCAweDMxLCAweDMyLCAweDI1LCAweGY4LCAweDg0LCAweDA2LCAweGU1LAogICAg
IDB4YTUsIDB4NTksIDB4MDksIDB4YzUsIDB4YWYsIDB4ZjUsIDB4MjYsIDB4OWEsCkBAIC00MDks
MTIgKzQxMCwxNSBAQCBzdGF0aWMgY29uc3QgdWludDhfdCBzcnRwX2Flc19nY21fdGVzdF9jYXNl
XzBfcGxhaW50ZXh0WzYwXSA9ICB7CiAgICAgMHhiYSwgMHg2MywgMHg3YiwgMHgzOQogfTsKIAor
LyogY2xhbmctZm9ybWF0IG9mZiAqLwogc3RhdGljIGNvbnN0IHVpbnQ4X3Qgc3J0cF9hZXNfZ2Nt
X3Rlc3RfY2FzZV8wX2FhZFsyMF0gPSB7CiAgICAgMHhmZSwgMHhlZCwgMHhmYSwgMHhjZSwgMHhk
ZSwgMHhhZCwgMHhiZSwgMHhlZiwKICAgICAweGZlLCAweGVkLCAweGZhLCAweGNlLCAweGRlLCAw
eGFkLCAweGJlLCAweGVmLAogICAgIDB4YWIsIDB4YWQsIDB4ZGEsIDB4ZDIKIH07CisvKiBjbGFu
Zy1mb3JtYXQgb24gKi8KIAorLyogY2xhbmctZm9ybWF0IG9mZiAqLwogc3RhdGljIGNvbnN0IHVp
bnQ4X3Qgc3J0cF9hZXNfZ2NtX3Rlc3RfY2FzZV8wX2NpcGhlcnRleHRbNzZdID0gewogICAgIDB4
NDIsIDB4ODMsIDB4MWUsIDB4YzIsIDB4MjEsIDB4NzcsIDB4NzQsIDB4MjQsCiAgICAgMHg0Yiwg
MHg3MiwgMHgyMSwgMHhiNywgMHg4NCwgMHhkMCwgMHhkNCwgMHg5YywKQEAgLTQyOCw2ICs0MzIs
NyBAQCBzdGF0aWMgY29uc3QgdWludDhfdCBzcnRwX2Flc19nY21fdGVzdF9jYXNlXzBfY2lwaGVy
dGV4dFs3Nl0gPSB7CiAgICAgMHg1YiwgMHhjOSwgMHg0ZiwgMHhiYywgMHgzMiwgMHgyMSwgMHhh
NSwgMHhkYiwKICAgICAweDk0LCAweGZhLCAweGU5LCAweDVhLCAweGU3LCAweDEyLCAweDFhLCAw
eDQ3LAogfTsKKy8qIGNsYW5nLWZvcm1hdCBvbiAqLwogCiBzdGF0aWMgY29uc3Qgc3J0cF9jaXBo
ZXJfdGVzdF9jYXNlX3Qgc3J0cF9hZXNfZ2NtX3Rlc3RfY2FzZV8wYSA9IHsKICAgICBTUlRQX0FF
U19HQ01fMTI4X0tFWV9MRU5fV1NBTFQsICAgICAgLyogb2N0ZXRzIGluIGtleSAgICAgICAgICAg
ICovCkBAIC00MzksNyArNDQ0LDcgQEAgc3RhdGljIGNvbnN0IHNydHBfY2lwaGVyX3Rlc3RfY2Fz
ZV90IHNydHBfYWVzX2djbV90ZXN0X2Nhc2VfMGEgPSB7CiAgICAgc3J0cF9hZXNfZ2NtX3Rlc3Rf
Y2FzZV8wX2NpcGhlcnRleHQsIC8qIGNpcGhlcnRleHQgICsgdGFnICAgICAgICAqLwogICAgIDIw
LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBvY3RldHMgaW4gQUFEICAgICAg
ICAgICAgKi8KICAgICBzcnRwX2Flc19nY21fdGVzdF9jYXNlXzBfYWFkLCAgICAgICAgLyogQUFE
ICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgR0NNX0FVVEhfVEFHX0xFTl84LAorICAgIEdD
TV9BVVRIX1RBR19MRU5fOCwgICAgICAgICAgICAgICAgICAvKiAqLwogICAgIE5VTEwgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBwb2ludGVyIHRvIG5leHQgdGVzdGNhc2UgKi8K
IH07CiAKQEAgLTQ1MywxMCArNDU4LDExIEBAIHN0YXRpYyBjb25zdCBzcnRwX2NpcGhlcl90ZXN0
X2Nhc2VfdCBzcnRwX2Flc19nY21fdGVzdF9jYXNlXzAgPSB7CiAgICAgc3J0cF9hZXNfZ2NtX3Rl
c3RfY2FzZV8wX2NpcGhlcnRleHQsIC8qIGNpcGhlcnRleHQgICsgdGFnICAgICAgICAqLwogICAg
IDIwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBvY3RldHMgaW4gQUFEICAg
ICAgICAgICAgKi8KICAgICBzcnRwX2Flc19nY21fdGVzdF9jYXNlXzBfYWFkLCAgICAgICAgLyog
QUFEICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgR0NNX0FVVEhfVEFHX0xFTiwKKyAgICBH
Q01fQVVUSF9UQUdfTEVOLCAgICAgICAgICAgICAgICAgICAgLyogKi8KICAgICAmc3J0cF9hZXNf
Z2NtX3Rlc3RfY2FzZV8wYSAgICAgICAgICAgLyogcG9pbnRlciB0byBuZXh0IHRlc3RjYXNlICov
CiB9OwogCisvKiBjbGFuZy1mb3JtYXQgb2ZmICovCiBzdGF0aWMgY29uc3QgdWludDhfdCBzcnRw
X2Flc19nY21fdGVzdF9jYXNlXzFfa2V5W1NSVFBfQUVTX0dDTV8yNTZfS0VZX0xFTl9XU0FMVF0g
PSB7CiAgICAgMHhmZSwgMHhmZiwgMHhlOSwgMHg5MiwgMHg4NiwgMHg2NSwgMHg3MywgMHgxYywK
ICAgICAweGE1LCAweDU5LCAweDA5LCAweGM1LCAweDU0LCAweDY2LCAweDkzLCAweDFjLApAQCAt
NDY0LDE0ICs0NzAsMTcgQEAgc3RhdGljIGNvbnN0IHVpbnQ4X3Qgc3J0cF9hZXNfZ2NtX3Rlc3Rf
Y2FzZV8xX2tleVtTUlRQX0FFU19HQ01fMjU2X0tFWV9MRU5fV1NBTFQKICAgICAweDZkLCAweDZh
LCAweDhmLCAweDk0LCAweDY3LCAweDMwLCAweDgzLCAweDA4LAogICAgIDB4MDEsIDB4MDIsIDB4
MDMsIDB4MDQsIDB4MDUsIDB4MDYsIDB4MDcsIDB4MDgsCiAgICAgMHgwOSwgMHgwYSwgMHgwYiwg
MHgwYywKLQogfTsKKy8qIGNsYW5nLWZvcm1hdCBvbiAqLwogCisvKiBjbGFuZy1mb3JtYXQgb2Zm
ICovCiBzdGF0aWMgdWludDhfdCBzcnRwX2Flc19nY21fdGVzdF9jYXNlXzFfaXZbMTJdID0gewog
ICAgIDB4Y2EsIDB4ZmUsIDB4YmEsIDB4YmUsIDB4ZmEsIDB4Y2UsIDB4ZGIsIDB4YWQsCiAgICAg
MHhkZSwgMHhjYSwgMHhmOCwgMHg4OAogfTsKKy8qIGNsYW5nLWZvcm1hdCBvbiAqLwogCisvKiBj
bGFuZy1mb3JtYXQgb2ZmICovCiBzdGF0aWMgY29uc3QgdWludDhfdCBzcnRwX2Flc19nY21fdGVz
dF9jYXNlXzFfcGxhaW50ZXh0WzYwXSA9ICB7CiAgICAgMHhkOSwgMHgzMSwgMHgzMiwgMHgyNSwg
MHhmOCwgMHg4NCwgMHgwNiwgMHhlNSwKICAgICAweGE1LCAweDU5LCAweDA5LCAweGM1LCAweGFm
LCAweGY1LCAweDI2LCAweDlhLApAQCAtNDgyLDEzICs0OTEsMTcgQEAgc3RhdGljIGNvbnN0IHVp
bnQ4X3Qgc3J0cF9hZXNfZ2NtX3Rlc3RfY2FzZV8xX3BsYWludGV4dFs2MF0gPSAgewogICAgIDB4
YjEsIDB4NmEsIDB4ZWQsIDB4ZjUsIDB4YWEsIDB4MGQsIDB4ZTYsIDB4NTcsCiAgICAgMHhiYSwg
MHg2MywgMHg3YiwgMHgzOQogfTsKKy8qIGNsYW5nLWZvcm1hdCBvbiAqLwogCisvKiBjbGFuZy1m
b3JtYXQgb2ZmICovCiBzdGF0aWMgY29uc3QgdWludDhfdCBzcnRwX2Flc19nY21fdGVzdF9jYXNl
XzFfYWFkWzIwXSA9IHsKICAgICAweGZlLCAweGVkLCAweGZhLCAweGNlLCAweGRlLCAweGFkLCAw
eGJlLCAweGVmLAogICAgIDB4ZmUsIDB4ZWQsIDB4ZmEsIDB4Y2UsIDB4ZGUsIDB4YWQsIDB4YmUs
IDB4ZWYsCiAgICAgMHhhYiwgMHhhZCwgMHhkYSwgMHhkMgogfTsKKy8qIGNsYW5nLWZvcm1hdCBv
biAqLwogCisvKiBjbGFuZy1mb3JtYXQgb2ZmICovCiBzdGF0aWMgY29uc3QgdWludDhfdCBzcnRw
X2Flc19nY21fdGVzdF9jYXNlXzFfY2lwaGVydGV4dFs3Nl0gPSB7CiAgICAgMHgwYiwgMHgxMSwg
MHhjZiwgMHhhZiwgMHg2OCwgMHg0ZCwgMHhhZSwgMHg0NiwKICAgICAweGM3LCAweDkwLCAweGI4
LCAweDhlLCAweGI3LCAweDZhLCAweDc2LCAweDJhLApAQCAtNTAyLDYgKzUxNSw3IEBAIHN0YXRp
YyBjb25zdCB1aW50OF90IHNydHBfYWVzX2djbV90ZXN0X2Nhc2VfMV9jaXBoZXJ0ZXh0Wzc2XSA9
IHsKICAgICAweDQ1LCAweGJjLCAweDAzLCAweGU2LCAweGUxLCAweGFjLCAweDBhLCAweDlmLAog
ICAgIDB4ODEsIDB4Y2IsIDB4OGUsIDB4NWIsIDB4NDYsIDB4NjUsIDB4NjMsIDB4MWQsCiB9Owor
LyogY2xhbmctZm9ybWF0IG9uICovCiAKIHN0YXRpYyBjb25zdCBzcnRwX2NpcGhlcl90ZXN0X2Nh
c2VfdCBzcnRwX2Flc19nY21fdGVzdF9jYXNlXzFhID0gewogICAgIFNSVFBfQUVTX0dDTV8yNTZf
S0VZX0xFTl9XU0FMVCwgICAgICAvKiBvY3RldHMgaW4ga2V5ICAgICAgICAgICAgKi8KQEAgLTUx
Myw3ICs1MjcsNyBAQCBzdGF0aWMgY29uc3Qgc3J0cF9jaXBoZXJfdGVzdF9jYXNlX3Qgc3J0cF9h
ZXNfZ2NtX3Rlc3RfY2FzZV8xYSA9IHsKICAgICBzcnRwX2Flc19nY21fdGVzdF9jYXNlXzFfY2lw
aGVydGV4dCwgLyogY2lwaGVydGV4dCAgKyB0YWcgICAgICAgICovCiAgICAgMjAsICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIG9jdGV0cyBpbiBBQUQgICAgICAgICAgICAqLwog
ICAgIHNydHBfYWVzX2djbV90ZXN0X2Nhc2VfMV9hYWQsICAgICAgICAvKiBBQUQgICAgICAgICAg
ICAgICAgICAgICAgKi8KLSAgICBHQ01fQVVUSF9UQUdfTEVOXzgsCisgICAgR0NNX0FVVEhfVEFH
X0xFTl84LCAgICAgICAgICAgICAgICAgIC8qICovCiAgICAgTlVMTCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIC8qIHBvaW50ZXIgdG8gbmV4dCB0ZXN0Y2FzZSAqLwogfTsKIApAQCAt
NTI3LDcgKzU0MSw3IEBAIHN0YXRpYyBjb25zdCBzcnRwX2NpcGhlcl90ZXN0X2Nhc2VfdCBzcnRw
X2Flc19nY21fdGVzdF9jYXNlXzEgPSB7CiAgICAgc3J0cF9hZXNfZ2NtX3Rlc3RfY2FzZV8xX2Np
cGhlcnRleHQsIC8qIGNpcGhlcnRleHQgICsgdGFnICAgICAgICAqLwogICAgIDIwLCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBvY3RldHMgaW4gQUFEICAgICAgICAgICAgKi8K
ICAgICBzcnRwX2Flc19nY21fdGVzdF9jYXNlXzFfYWFkLCAgICAgICAgLyogQUFEICAgICAgICAg
ICAgICAgICAgICAgICovCi0gICAgR0NNX0FVVEhfVEFHX0xFTiwKKyAgICBHQ01fQVVUSF9UQUdf
TEVOLCAgICAgICAgICAgICAgICAgICAgLyogKi8KICAgICAmc3J0cF9hZXNfZ2NtX3Rlc3RfY2Fz
ZV8xYSAgICAgICAgICAgLyogcG9pbnRlciB0byBuZXh0IHRlc3RjYXNlICovCiB9OwogCkBAIC01
NjQsNCArNTc4LDMgQEAgY29uc3Qgc3J0cF9jaXBoZXJfdHlwZV90IHNydHBfYWVzX2djbV8yNTZf
b3BlbnNzbCA9IHsKICAgICAmc3J0cF9hZXNfZ2NtX3Rlc3RfY2FzZV8xLAogICAgIFNSVFBfQUVT
X0dDTV8yNTYKIH07Ci0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vY2lwaGVyL2Flc19pY21fb3NzbC5jIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2Ny
eXB0by9jaXBoZXIvYWVzX2ljbV9vc3NsLmMKaW5kZXggMjViNDMxZmFkZDA2NGY3OGY5OWJhZWU1
NjZlOTk5MWIwMjg4ZmVjZC4uYjU5MTg5NzYyM2JiMTY3YjFiOWE5MzVhZTg2Y2MyZWRkODZiZWUx
NSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJzcnRwL2NyeXB0by9jaXBoZXIvYWVzX2ljbV9vc3NsLmMKKysrIGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9jaXBo
ZXIvYWVzX2ljbV9vc3NsLmMKQEAgLTQ5LDIzICs0OSwyMCBAQAogICovCiAKICNpZmRlZiBIQVZF
X0NPTkZJR19ICi0gICAgI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbmZpZy5oPgog
I2VuZGlmCiAKICNpbmNsdWRlIDxvcGVuc3NsL2V2cC5oPgogI2luY2x1ZGUgImFlc19pY21fb3Nz
bC5oIgogI2luY2x1ZGUgImNyeXB0b190eXBlcy5oIgotI2luY2x1ZGUgImVyci5oIiAgICAgICAg
ICAgICAgICAvKiBmb3Igc3J0cF9kZWJ1ZyAqLworI2luY2x1ZGUgImVyci5oIiAvKiBmb3Igc3J0
cF9kZWJ1ZyAqLwogI2luY2x1ZGUgImFsbG9jLmgiCi0KKyNpbmNsdWRlICJjaXBoZXJfdHlwZXMu
aCIKIAogc3J0cF9kZWJ1Z19tb2R1bGVfdCBzcnRwX21vZF9hZXNfaWNtID0gewotICAgIDAsICAg
ICAgICAgICAgICAgLyogZGVidWdnaW5nIGlzIG9mZiBieSBkZWZhdWx0ICovCi0gICAgImFlcyBp
Y20gb3NzbCIgICAvKiBwcmludGFibGUgbW9kdWxlIG5hbWUgICAgICAgKi8KKyAgICAwLCAgICAg
ICAgICAgICAvKiBkZWJ1Z2dpbmcgaXMgb2ZmIGJ5IGRlZmF1bHQgKi8KKyAgICAiYWVzIGljbSBv
c3NsIiAvKiBwcmludGFibGUgbW9kdWxlIG5hbWUgICAgICAgKi8KIH07Ci1leHRlcm4gY29uc3Qg
c3J0cF9jaXBoZXJfdHlwZV90IHNydHBfYWVzX2ljbV8xMjg7Ci1leHRlcm4gY29uc3Qgc3J0cF9j
aXBoZXJfdHlwZV90IHNydHBfYWVzX2ljbV8xOTI7Ci1leHRlcm4gY29uc3Qgc3J0cF9jaXBoZXJf
dHlwZV90IHNydHBfYWVzX2ljbV8yNTY7CiAKIC8qCiAgKiBpbnRlZ2VyIGNvdW50ZXIgbW9kZSB3
b3JrcyBhcyBmb2xsb3dzOgpAQCAtMTA5LDE2ICsxMDYsMjAgQEAgZXh0ZXJuIGNvbnN0IHNydHBf
Y2lwaGVyX3R5cGVfdCBzcnRwX2Flc19pY21fMjU2OwogICogdmFsdWUuICBUaGUgdGxlbiBhcmd1
bWVudCBpcyBmb3IgdGhlIEFFQUQgdGFnIGxlbmd0aCwgd2hpY2gKICAqIGlzbid0IHVzZWQgaW4g
Y291bnRlciBtb2RlLgogICovCi1zdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9hZXNfaWNt
X29wZW5zc2xfYWxsb2MgKHNydHBfY2lwaGVyX3QgKipjLCBpbnQga2V5X2xlbiwgaW50IHRsZW4p
CitzdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9hZXNfaWNtX29wZW5zc2xfYWxsb2Moc3J0
cF9jaXBoZXJfdCAqKmMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgaW50IGtleV9sZW4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgaW50IHRsZW4pCiB7CiAgICAgc3J0cF9hZXNfaWNtX2N0eF90
ICppY207CiAKLSAgICBkZWJ1Z19wcmludChzcnRwX21vZF9hZXNfaWNtLCAiYWxsb2NhdGluZyBj
aXBoZXIgd2l0aCBrZXkgbGVuZ3RoICVkIiwga2V5X2xlbik7CisgICAgZGVidWdfcHJpbnQoc3J0
cF9tb2RfYWVzX2ljbSwgImFsbG9jYXRpbmcgY2lwaGVyIHdpdGgga2V5IGxlbmd0aCAlZCIsCisg
ICAgICAgICAgICAgICAga2V5X2xlbik7CiAKICAgICAvKgogICAgICAqIFZlcmlmeSB0aGUga2V5
X2xlbiBpcyB2YWxpZCBmb3Igb25lIG9mOiBBRVMtMTI4LzE5Mi8yNTYKICAgICAgKi8KLSAgICBp
ZiAoa2V5X2xlbiAhPSBTUlRQX0FFU19JQ01fMTI4X0tFWV9MRU5fV1NBTFQgJiYga2V5X2xlbiAh
PSBTUlRQX0FFU19JQ01fMTkyX0tFWV9MRU5fV1NBTFQgJiYKKyAgICBpZiAoa2V5X2xlbiAhPSBT
UlRQX0FFU19JQ01fMTI4X0tFWV9MRU5fV1NBTFQgJiYKKyAgICAgICAga2V5X2xlbiAhPSBTUlRQ
X0FFU19JQ01fMTkyX0tFWV9MRU5fV1NBTFQgJiYKICAgICAgICAga2V5X2xlbiAhPSBTUlRQX0FF
U19JQ01fMjU2X0tFWV9MRU5fV1NBTFQpIHsKICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1
c19iYWRfcGFyYW07CiAgICAgfQpAQCAtMTI4LDE1ICsxMjksMTMgQEAgc3RhdGljIHNydHBfZXJy
X3N0YXR1c190IHNydHBfYWVzX2ljbV9vcGVuc3NsX2FsbG9jIChzcnRwX2NpcGhlcl90ICoqYywg
aW50IGtleV8KICAgICBpZiAoKmMgPT0gTlVMTCkgewogICAgICAgICByZXR1cm4gc3J0cF9lcnJf
c3RhdHVzX2FsbG9jX2ZhaWw7CiAgICAgfQotICAgIG1lbXNldCgqYywgMHgwLCBzaXplb2Yoc3J0
cF9jaXBoZXJfdCkpOwogCiAgICAgaWNtID0gKHNydHBfYWVzX2ljbV9jdHhfdCAqKXNydHBfY3J5
cHRvX2FsbG9jKHNpemVvZihzcnRwX2Flc19pY21fY3R4X3QpKTsKICAgICBpZiAoaWNtID09IE5V
TEwpIHsKLQlzcnRwX2NyeXB0b19mcmVlKCpjKTsKLQkqYyA9IE5VTEw7CisgICAgICAgIHNydHBf
Y3J5cHRvX2ZyZWUoKmMpOworICAgICAgICAqYyA9IE5VTEw7CiAgICAgICAgIHJldHVybiBzcnRw
X2Vycl9zdGF0dXNfYWxsb2NfZmFpbDsKICAgICB9Ci0gICAgbWVtc2V0KGljbSwgMHgwLCBzaXpl
b2Yoc3J0cF9hZXNfaWNtX2N0eF90KSk7CiAKICAgICBpY20tPmN0eCA9IEVWUF9DSVBIRVJfQ1RY
X25ldygpOwogICAgIGlmIChpY20tPmN0eCA9PSBOVUxMKSB7CkBAIC0xNzQsMTEgKzE3MywxMCBA
QCBzdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9hZXNfaWNtX29wZW5zc2xfYWxsb2MgKHNy
dHBfY2lwaGVyX3QgKipjLCBpbnQga2V5XwogICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7
CiB9CiAKLQogLyoKICAqIFRoaXMgZnVuY3Rpb24gZGVhbGxvY2F0ZXMgYW4gaW5zdGFuY2Ugb2Yg
dGhpcyBlbmdpbmUKICAqLwotc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfYWVzX2ljbV9v
cGVuc3NsX2RlYWxsb2MgKHNydHBfY2lwaGVyX3QgKmMpCitzdGF0aWMgc3J0cF9lcnJfc3RhdHVz
X3Qgc3J0cF9hZXNfaWNtX29wZW5zc2xfZGVhbGxvYyhzcnRwX2NpcGhlcl90ICpjKQogewogICAg
IHNydHBfYWVzX2ljbV9jdHhfdCAqY3R4OwogCkBAIC0xODksNyArMTg3LDcgQEAgc3RhdGljIHNy
dHBfZXJyX3N0YXR1c190IHNydHBfYWVzX2ljbV9vcGVuc3NsX2RlYWxsb2MgKHNydHBfY2lwaGVy
X3QgKmMpCiAgICAgLyoKICAgICAgKiBGcmVlIHRoZSBFVlAgY29udGV4dAogICAgICAqLwotICAg
IGN0eCA9IChzcnRwX2Flc19pY21fY3R4X3QqKWMtPnN0YXRlOworICAgIGN0eCA9IChzcnRwX2Fl
c19pY21fY3R4X3QgKiljLT5zdGF0ZTsKICAgICBpZiAoY3R4ICE9IE5VTEwpIHsKICAgICAgICAg
RVZQX0NJUEhFUl9DVFhfZnJlZShjdHgtPmN0eCk7CiAgICAgICAgIC8qIHplcm9pemUgdGhlIGtl
eSBtYXRlcmlhbCAqLwpAQCAtMjEyLDcgKzIxMCw4IEBAIHN0YXRpYyBzcnRwX2Vycl9zdGF0dXNf
dCBzcnRwX2Flc19pY21fb3BlbnNzbF9kZWFsbG9jIChzcnRwX2NpcGhlcl90ICpjKQogICogdGhl
IHNhbHQgaXMgdW5wcmVkaWN0YWJsZSAoYnV0IG5vdCBuZWNlc3NhcmlseSBzZWNyZXQpIGRhdGEg
d2hpY2gKICAqIHJhbmRvbWl6ZXMgdGhlIHN0YXJ0aW5nIHBvaW50IGluIHRoZSBrZXlzdHJlYW0K
ICAqLwotc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfYWVzX2ljbV9vcGVuc3NsX2NvbnRl
eHRfaW5pdCAodm9pZCogY3YsIGNvbnN0IHVpbnQ4X3QgKmtleSkKK3N0YXRpYyBzcnRwX2Vycl9z
dGF0dXNfdCBzcnRwX2Flc19pY21fb3BlbnNzbF9jb250ZXh0X2luaXQodm9pZCAqY3YsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNv
bnN0IHVpbnQ4X3QgKmtleSkKIHsKICAgICBzcnRwX2Flc19pY21fY3R4X3QgKmMgPSAoc3J0cF9h
ZXNfaWNtX2N0eF90ICopY3Y7CiAgICAgY29uc3QgRVZQX0NJUEhFUiAqZXZwOwpAQCAtMjMwLDcg
KzIyOSw4IEBAIHN0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2Flc19pY21fb3BlbnNzbF9j
b250ZXh0X2luaXQgKHZvaWQqIGN2LCBjb25zdCB1aW50CiAgICAgYy0+b2Zmc2V0LnY4W1NSVFBf
U0FMVF9MRU5dID0gYy0+b2Zmc2V0LnY4W1NSVFBfU0FMVF9MRU4gKyAxXSA9IDA7CiAgICAgYy0+
Y291bnRlci52OFtTUlRQX1NBTFRfTEVOXSA9IGMtPmNvdW50ZXIudjhbU1JUUF9TQUxUX0xFTiAr
IDFdID0gMDsKIAotICAgIGRlYnVnX3ByaW50KHNydHBfbW9kX2Flc19pY20sICJrZXk6ICAlcyIs
IHNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcoa2V5LCBjLT5rZXlfc2l6ZSkpOworICAgIGRl
YnVnX3ByaW50KHNydHBfbW9kX2Flc19pY20sICJrZXk6ICAlcyIsCisgICAgICAgICAgICAgICAg
c3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZyhrZXksIGMtPmtleV9zaXplKSk7CiAgICAgZGVi
dWdfcHJpbnQoc3J0cF9tb2RfYWVzX2ljbSwgIm9mZnNldDogJXMiLCB2MTI4X2hleF9zdHJpbmco
JmMtPm9mZnNldCkpOwogCiAgICAgc3dpdGNoIChjLT5rZXlfc2l6ZSkgewpAQCAtMjQ4LDggKzI0
OCw3IEBAIHN0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2Flc19pY21fb3BlbnNzbF9jb250
ZXh0X2luaXQgKHZvaWQqIGN2LCBjb25zdCB1aW50CiAgICAgICAgIGJyZWFrOwogICAgIH0KIAot
ICAgIGlmICghRVZQX0VuY3J5cHRJbml0X2V4KGMtPmN0eCwgZXZwLAotICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIE5VTEwsIGtleSwgTlVMTCkpIHsKKyAgICBpZiAoIUVWUF9FbmNyeXB0SW5p
dF9leChjLT5jdHgsIGV2cCwgTlVMTCwga2V5LCBOVUxMKSkgewogICAgICAgICByZXR1cm4gc3J0
cF9lcnJfc3RhdHVzX2ZhaWw7CiAgICAgfSBlbHNlIHsKICAgICAgICAgcmV0dXJuIHNydHBfZXJy
X3N0YXR1c19vazsKQEAgLTI1OCwxMiArMjU3LDE0IEBAIHN0YXRpYyBzcnRwX2Vycl9zdGF0dXNf
dCBzcnRwX2Flc19pY21fb3BlbnNzbF9jb250ZXh0X2luaXQgKHZvaWQqIGN2LCBjb25zdCB1aW50
CiAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0KIAotCiAvKgogICogYWVzX2ljbV9z
ZXRfaXYoYywgaXYpIHNldHMgdGhlIGNvdW50ZXIgdmFsdWUgdG8gdGhlIGV4b3Igb2YgaXYgd2l0
aAogICogdGhlIG9mZnNldAogICovCi1zdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9hZXNf
aWNtX29wZW5zc2xfc2V0X2l2ICh2b2lkICpjdiwgdWludDhfdCAqaXYsIHNydHBfY2lwaGVyX2Rp
cmVjdGlvbl90IGRpcikKK3N0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2Flc19pY21fb3Bl
bnNzbF9zZXRfaXYoCisgICAgdm9pZCAqY3YsCisgICAgdWludDhfdCAqaXYsCisgICAgc3J0cF9j
aXBoZXJfZGlyZWN0aW9uX3QgZGlyKQogewogICAgIHNydHBfYWVzX2ljbV9jdHhfdCAqYyA9IChz
cnRwX2Flc19pY21fY3R4X3QgKiljdjsKICAgICB2MTI4X3Qgbm9uY2U7CkBAIC0yNzUsMTAgKzI3
NiwxMCBAQCBzdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9hZXNfaWNtX29wZW5zc2xfc2V0
X2l2ICh2b2lkICpjdiwgdWludDhfdCAqaXYsIHNydAogCiAgICAgdjEyOF94b3IoJmMtPmNvdW50
ZXIsICZjLT5vZmZzZXQsICZub25jZSk7CiAKLSAgICBkZWJ1Z19wcmludChzcnRwX21vZF9hZXNf
aWNtLCAic2V0X2NvdW50ZXI6ICVzIiwgdjEyOF9oZXhfc3RyaW5nKCZjLT5jb3VudGVyKSk7Cisg
ICAgZGVidWdfcHJpbnQoc3J0cF9tb2RfYWVzX2ljbSwgInNldF9jb3VudGVyOiAlcyIsCisgICAg
ICAgICAgICAgICAgdjEyOF9oZXhfc3RyaW5nKCZjLT5jb3VudGVyKSk7CiAKLSAgICBpZiAoIUVW
UF9FbmNyeXB0SW5pdF9leChjLT5jdHgsIE5VTEwsCi0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgTlVMTCwgTlVMTCwgYy0+Y291bnRlci52OCkpIHsKKyAgICBpZiAoIUVWUF9FbmNyeXB0SW5p
dF9leChjLT5jdHgsIE5VTEwsIE5VTEwsIE5VTEwsIGMtPmNvdW50ZXIudjgpKSB7CiAgICAgICAg
IHJldHVybiBzcnRwX2Vycl9zdGF0dXNfZmFpbDsKICAgICB9IGVsc2UgewogICAgICAgICByZXR1
cm4gc3J0cF9lcnJfc3RhdHVzX29rOwpAQCAtMjkzLDcgKzI5NCw5IEBAIHN0YXRpYyBzcnRwX2Vy
cl9zdGF0dXNfdCBzcnRwX2Flc19pY21fb3BlbnNzbF9zZXRfaXYgKHZvaWQgKmN2LCB1aW50OF90
ICppdiwgc3J0CiAgKglidWYJZGF0YSB0byBlbmNyeXB0CiAgKgllbmNfbGVuCWxlbmd0aCBvZiBl
bmNyeXB0IGJ1ZmZlcgogICovCi1zdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9hZXNfaWNt
X29wZW5zc2xfZW5jcnlwdCAodm9pZCAqY3YsIHVuc2lnbmVkIGNoYXIgKmJ1ZiwgdW5zaWduZWQg
aW50ICplbmNfbGVuKQorc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfYWVzX2ljbV9vcGVu
c3NsX2VuY3J5cHQodm9pZCAqY3YsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBjaGFyICpidWYsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgKmVuY19s
ZW4pCiB7CiAgICAgc3J0cF9hZXNfaWNtX2N0eF90ICpjID0gKHNydHBfYWVzX2ljbV9jdHhfdCAq
KWN2OwogICAgIGludCBsZW4gPSAwOwpAQCAtMzE2LDU5ICszMTksNzAgQEAgc3RhdGljIHNydHBf
ZXJyX3N0YXR1c190IHNydHBfYWVzX2ljbV9vcGVuc3NsX2VuY3J5cHQgKHZvaWQgKmN2LCB1bnNp
Z25lZCBjaGFyICoKIC8qCiAgKiBOYW1lIG9mIHRoaXMgY3J5cHRvIGVuZ2luZQogICovCi1zdGF0
aWMgY29uc3QgY2hhciBzcnRwX2Flc19pY21fMTI4X29wZW5zc2xfZGVzY3JpcHRpb25bXSA9ICJB
RVMtMTI4IGNvdW50ZXIgbW9kZSB1c2luZyBvcGVuc3NsIjsKLXN0YXRpYyBjb25zdCBjaGFyIHNy
dHBfYWVzX2ljbV8xOTJfb3BlbnNzbF9kZXNjcmlwdGlvbltdID0gIkFFUy0xOTIgY291bnRlciBt
b2RlIHVzaW5nIG9wZW5zc2wiOwotc3RhdGljIGNvbnN0IGNoYXIgc3J0cF9hZXNfaWNtXzI1Nl9v
cGVuc3NsX2Rlc2NyaXB0aW9uW10gPSAiQUVTLTI1NiBjb3VudGVyIG1vZGUgdXNpbmcgb3BlbnNz
bCI7Ci0KK3N0YXRpYyBjb25zdCBjaGFyIHNydHBfYWVzX2ljbV8xMjhfb3BlbnNzbF9kZXNjcmlw
dGlvbltdID0KKyAgICAiQUVTLTEyOCBjb3VudGVyIG1vZGUgdXNpbmcgb3BlbnNzbCI7CitzdGF0
aWMgY29uc3QgY2hhciBzcnRwX2Flc19pY21fMTkyX29wZW5zc2xfZGVzY3JpcHRpb25bXSA9Cisg
ICAgIkFFUy0xOTIgY291bnRlciBtb2RlIHVzaW5nIG9wZW5zc2wiOworc3RhdGljIGNvbnN0IGNo
YXIgc3J0cF9hZXNfaWNtXzI1Nl9vcGVuc3NsX2Rlc2NyaXB0aW9uW10gPQorICAgICJBRVMtMjU2
IGNvdW50ZXIgbW9kZSB1c2luZyBvcGVuc3NsIjsKIAogLyoKICAqIEtBVCB2YWx1ZXMgZm9yIEFF
UyBzZWxmLXRlc3QuICBUaGVzZQogICogdmFsdWVzIGNhbWUgZnJvbSB0aGUgbGVnYWN5IGxpYnNy
dHAgY29kZS4KICAqLworLyogY2xhbmctZm9ybWF0IG9mZiAqLwogc3RhdGljIGNvbnN0IHVpbnQ4
X3Qgc3J0cF9hZXNfaWNtXzEyOF90ZXN0X2Nhc2VfMF9rZXlbU1JUUF9BRVNfSUNNXzEyOF9LRVlf
TEVOX1dTQUxUXSA9IHsKICAgICAweDJiLCAweDdlLCAweDE1LCAweDE2LCAweDI4LCAweGFlLCAw
eGQyLCAweGE2LAogICAgIDB4YWIsIDB4ZjcsIDB4MTUsIDB4ODgsIDB4MDksIDB4Y2YsIDB4NGYs
IDB4M2MsCiAgICAgMHhmMCwgMHhmMSwgMHhmMiwgMHhmMywgMHhmNCwgMHhmNSwgMHhmNiwgMHhm
NywKICAgICAweGY4LCAweGY5LCAweGZhLCAweGZiLCAweGZjLCAweGZkCiB9OworLyogY2xhbmct
Zm9ybWF0IG9uICovCiAKKy8qIGNsYW5nLWZvcm1hdCBvZmYgKi8KIHN0YXRpYyB1aW50OF90IHNy
dHBfYWVzX2ljbV8xMjhfdGVzdF9jYXNlXzBfbm9uY2VbMTZdID0gewogICAgIDB4MDAsIDB4MDAs
IDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsCiAgICAgMHgwMCwgMHgwMCwgMHgw
MCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMAogfTsKKy8qIGNsYW5nLWZvcm1hdCBvbiAq
LwogCisvKiBjbGFuZy1mb3JtYXQgb2ZmICovCiBzdGF0aWMgY29uc3QgdWludDhfdCBzcnRwX2Fl
c19pY21fMTI4X3Rlc3RfY2FzZV8wX3BsYWludGV4dFszMl0gPSAgewogICAgIDB4MDAsIDB4MDAs
IDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsCiAgICAgMHgwMCwgMHgwMCwgMHgw
MCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwKICAgICAweDAwLCAweDAwLCAweDAwLCAw
eDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLAogICAgIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAs
IDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsCiB9OworLyogY2xhbmctZm9ybWF0IG9uICovCiAKKy8q
IGNsYW5nLWZvcm1hdCBvZmYgKi8KIHN0YXRpYyBjb25zdCB1aW50OF90IHNydHBfYWVzX2ljbV8x
MjhfdGVzdF9jYXNlXzBfY2lwaGVydGV4dFszMl0gPSB7CiAgICAgMHhlMCwgMHgzZSwgMHhhZCwg
MHgwOSwgMHgzNSwgMHhjOSwgMHg1ZSwgMHg4MCwKICAgICAweGUxLCAweDY2LCAweGIxLCAweDZk
LCAweGQ5LCAweDJiLCAweDRlLCAweGI0LAogICAgIDB4ZDIsIDB4MzUsIDB4MTMsIDB4MTYsIDB4
MmIsIDB4MDIsIDB4ZDAsIDB4ZjcsCiAgICAgMHgyYSwgMHg0MywgMHhhMiwgMHhmZSwgMHg0YSwg
MHg1ZiwgMHg5NywgMHhhYgogfTsKKy8qIGNsYW5nLWZvcm1hdCBvbiAqLwogCiBzdGF0aWMgY29u
c3Qgc3J0cF9jaXBoZXJfdGVzdF9jYXNlX3Qgc3J0cF9hZXNfaWNtXzEyOF90ZXN0X2Nhc2VfMCA9
IHsKLSAgICBTUlRQX0FFU19JQ01fMTI4X0tFWV9MRU5fV1NBTFQsICAgICAgICAgICAgICAgICAv
KiBvY3RldHMgaW4ga2V5ICAgICAgICAgICAgKi8KLSAgICBzcnRwX2Flc19pY21fMTI4X3Rlc3Rf
Y2FzZV8wX2tleSwgICAgICAgICAgICAgICAvKiBrZXkgICAgICAgICAgICAgICAgICAgICAgKi8K
LSAgICBzcnRwX2Flc19pY21fMTI4X3Rlc3RfY2FzZV8wX25vbmNlLCAgICAgICAgICAgICAvKiBw
YWNrZXQgaW5kZXggICAgICAgICAgICAgKi8KLSAgICAzMiwgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAvKiBvY3RldHMgaW4gcGxhaW50ZXh0ICAgICAgKi8KLSAgICBzcnRwX2Fl
c19pY21fMTI4X3Rlc3RfY2FzZV8wX3BsYWludGV4dCwgICAgICAgICAvKiBwbGFpbnRleHQgICAg
ICAgICAgICAgICAgKi8KLSAgICAzMiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAvKiBvY3RldHMgaW4gY2lwaGVydGV4dCAgICAgKi8KLSAgICBzcnRwX2Flc19pY21fMTI4X3Rl
c3RfY2FzZV8wX2NpcGhlcnRleHQsICAgICAgICAvKiBjaXBoZXJ0ZXh0ICAgICAgICAgICAgICAg
Ki8KLSAgICAwLAotICAgIE5VTEwsCi0gICAgMCwKLSAgICBOVUxMICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAvKiBwb2ludGVyIHRvIG5leHQgdGVzdGNhc2UgKi8KKyAgICBTUlRQ
X0FFU19JQ01fMTI4X0tFWV9MRU5fV1NBTFQsICAgICAgICAgIC8qIG9jdGV0cyBpbiBrZXkgICAg
ICAgICAgICAqLworICAgIHNydHBfYWVzX2ljbV8xMjhfdGVzdF9jYXNlXzBfa2V5LCAgICAgICAg
Lyoga2V5ICAgICAgICAgICAgICAgICAgICAgICovCisgICAgc3J0cF9hZXNfaWNtXzEyOF90ZXN0
X2Nhc2VfMF9ub25jZSwgICAgICAvKiBwYWNrZXQgaW5kZXggICAgICAgICAgICAgKi8KKyAgICAz
MiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIG9jdGV0cyBpbiBwbGFp
bnRleHQgICAgICAqLworICAgIHNydHBfYWVzX2ljbV8xMjhfdGVzdF9jYXNlXzBfcGxhaW50ZXh0
LCAgLyogcGxhaW50ZXh0ICAgICAgICAgICAgICAgICovCisgICAgMzIsICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAvKiBvY3RldHMgaW4gY2lwaGVydGV4dCAgICAgKi8KKyAg
ICBzcnRwX2Flc19pY21fMTI4X3Rlc3RfY2FzZV8wX2NpcGhlcnRleHQsIC8qIGNpcGhlcnRleHQg
ICAgICAgICAgICAgICAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgLyogKi8KKyAgICBOVUxMLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IC8qICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiAq
LworICAgIE5VTEwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogcG9pbnRl
ciB0byBuZXh0IHRlc3RjYXNlICovCiB9OwogCiAvKgogICogS0FUIHZhbHVlcyBmb3IgQUVTLTE5
Mi1DVFIgc2VsZi10ZXN0LiAgVGhlc2UKICAqIHZhbHVlcyBjYW1lIGZyb20gc2VjdGlvbiA3IG9m
IFJGQyA2MTg4LgogICovCisvKiBjbGFuZy1mb3JtYXQgb2ZmICovCiBzdGF0aWMgY29uc3QgdWlu
dDhfdCBzcnRwX2Flc19pY21fMTkyX3Rlc3RfY2FzZV8wX2tleVtTUlRQX0FFU19JQ01fMTkyX0tF
WV9MRU5fV1NBTFRdID0gewogICAgIDB4ZWEsIDB4YjIsIDB4MzQsIDB4NzYsIDB4NGUsIDB4NTEs
IDB4N2IsIDB4MmQsCiAgICAgMHgzZCwgMHgxNiwgMHgwZCwgMHg1OCwgMHg3ZCwgMHg4YywgMHg4
NiwgMHgyMSwKQEAgLTM3Niw0NCArMzkwLDUyIEBAIHN0YXRpYyBjb25zdCB1aW50OF90IHNydHBf
YWVzX2ljbV8xOTJfdGVzdF9jYXNlXzBfa2V5W1NSVFBfQUVTX0lDTV8xOTJfS0VZX0xFTl9XCiAg
ICAgMHhmMCwgMHhmMSwgMHhmMiwgMHhmMywgMHhmNCwgMHhmNSwgMHhmNiwgMHhmNywKICAgICAw
eGY4LCAweGY5LCAweGZhLCAweGZiLCAweGZjLCAweGZkCiB9OworLyogY2xhbmctZm9ybWF0IG9u
ICovCiAKKy8qIGNsYW5nLWZvcm1hdCBvZmYgKi8KIHN0YXRpYyB1aW50OF90IHNydHBfYWVzX2lj
bV8xOTJfdGVzdF9jYXNlXzBfbm9uY2VbMTZdID0gewogICAgIDB4MDAsIDB4MDAsIDB4MDAsIDB4
MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsCiAgICAgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwg
MHgwMCwgMHgwMCwgMHgwMCwgMHgwMAogfTsKKy8qIGNsYW5nLWZvcm1hdCBvbiAqLwogCisvKiBj
bGFuZy1mb3JtYXQgb2ZmICovCiBzdGF0aWMgY29uc3QgdWludDhfdCBzcnRwX2Flc19pY21fMTky
X3Rlc3RfY2FzZV8wX3BsYWludGV4dFszMl0gPSAgewogICAgIDB4MDAsIDB4MDAsIDB4MDAsIDB4
MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsCiAgICAgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwg
MHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwKICAgICAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAw
LCAweDAwLCAweDAwLCAweDAwLAogICAgIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4
MDAsIDB4MDAsIDB4MDAsCiB9OworLyogY2xhbmctZm9ybWF0IG9uICovCiAKKy8qIGNsYW5nLWZv
cm1hdCBvZmYgKi8KIHN0YXRpYyBjb25zdCB1aW50OF90IHNydHBfYWVzX2ljbV8xOTJfdGVzdF9j
YXNlXzBfY2lwaGVydGV4dFszMl0gPSB7CiAgICAgMHgzNSwgMHgwOSwgMHg2YywgMHhiYSwgMHg0
NiwgMHgxMCwgMHgwMiwgMHg4ZCwKICAgICAweGMxLCAweGI1LCAweDc1LCAweDAzLCAweDgwLCAw
eDRjLCAweGUzLCAweDdjLAogICAgIDB4NWQsIDB4ZTksIDB4ODYsIDB4MjksIDB4MWQsIDB4Y2Ms
IDB4ZTEsIDB4NjEsCiAgICAgMHhkNSwgMHgxNiwgMHg1ZSwgMHhjNCwgMHg1NiwgMHg4ZiwgMHg1
YywgMHg5YQogfTsKKy8qIGNsYW5nLWZvcm1hdCBvbiAqLwogCiBzdGF0aWMgY29uc3Qgc3J0cF9j
aXBoZXJfdGVzdF9jYXNlX3Qgc3J0cF9hZXNfaWNtXzE5Ml90ZXN0X2Nhc2VfMCA9IHsKLSAgICBT
UlRQX0FFU19JQ01fMTkyX0tFWV9MRU5fV1NBTFQsICAgICAgICAgICAgICAgICAvKiBvY3RldHMg
aW4ga2V5ICAgICAgICAgICAgKi8KLSAgICBzcnRwX2Flc19pY21fMTkyX3Rlc3RfY2FzZV8wX2tl
eSwgICAgICAgICAgIC8qIGtleSAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIHNydHBfYWVz
X2ljbV8xOTJfdGVzdF9jYXNlXzBfbm9uY2UsICAgICAgICAgLyogcGFja2V0IGluZGV4ICAgICAg
ICAgICAgICovCi0gICAgMzIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyog
b2N0ZXRzIGluIHBsYWludGV4dCAgICAgICovCi0gICAgc3J0cF9hZXNfaWNtXzE5Ml90ZXN0X2Nh
c2VfMF9wbGFpbnRleHQsICAgICAvKiBwbGFpbnRleHQgICAgICAgICAgICAgICAgKi8KLSAgICAz
MiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBvY3RldHMgaW4gY2lwaGVy
dGV4dCAgICAgKi8KLSAgICBzcnRwX2Flc19pY21fMTkyX3Rlc3RfY2FzZV8wX2NpcGhlcnRleHQs
ICAgIC8qIGNpcGhlcnRleHQgICAgICAgICAgICAgICAqLwotICAgIDAsCi0gICAgTlVMTCwKLSAg
ICAwLAotICAgIE5VTEwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHBvaW50
ZXIgdG8gbmV4dCB0ZXN0Y2FzZSAqLworICAgIFNSVFBfQUVTX0lDTV8xOTJfS0VZX0xFTl9XU0FM
VCwgICAgICAgICAgLyogb2N0ZXRzIGluIGtleSAgICAgICAgICAgICovCisgICAgc3J0cF9hZXNf
aWNtXzE5Ml90ZXN0X2Nhc2VfMF9rZXksICAgICAgICAvKiBrZXkgICAgICAgICAgICAgICAgICAg
ICAgKi8KKyAgICBzcnRwX2Flc19pY21fMTkyX3Rlc3RfY2FzZV8wX25vbmNlLCAgICAgIC8qIHBh
Y2tldCBpbmRleCAgICAgICAgICAgICAqLworICAgIDMyLCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyogb2N0ZXRzIGluIHBsYWludGV4dCAgICAgICovCisgICAgc3J0cF9h
ZXNfaWNtXzE5Ml90ZXN0X2Nhc2VfMF9wbGFpbnRleHQsICAvKiBwbGFpbnRleHQgICAgICAgICAg
ICAgICAgKi8KKyAgICAzMiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8q
IG9jdGV0cyBpbiBjaXBoZXJ0ZXh0ICAgICAqLworICAgIHNydHBfYWVzX2ljbV8xOTJfdGVzdF9j
YXNlXzBfY2lwaGVydGV4dCwgLyogY2lwaGVydGV4dCAgICAgICAgICAgICAgICovCisgICAgMCwg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiAqLworICAgIE5VTEwsICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogKi8KKyAgICAwLCAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qICovCisgICAgTlVMTCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAvKiBwb2ludGVyIHRvIG5leHQgdGVzdGNhc2UgKi8KIH07
CiAKIC8qCiAgKiBLQVQgdmFsdWVzIGZvciBBRVMtMjU2LUNUUiBzZWxmLXRlc3QuICBUaGVzZQog
ICogdmFsdWVzIGNhbWUgZnJvbSBzZWN0aW9uIDcgb2YgUkZDIDYxODguCiAgKi8KKy8qIGNsYW5n
LWZvcm1hdCBvZmYgKi8KIHN0YXRpYyBjb25zdCB1aW50OF90IHNydHBfYWVzX2ljbV8yNTZfdGVz
dF9jYXNlXzBfa2V5W1NSVFBfQUVTX0lDTV8yNTZfS0VZX0xFTl9XU0FMVF0gPSB7CiAgICAgMHg1
NywgMHhmOCwgMHgyZiwgMHhlMywgMHg2MSwgMHgzZiwgMHhkMSwgMHg3MCwKICAgICAweGE4LCAw
eDVlLCAweGM5LCAweDNjLCAweDQwLCAweGIxLCAweGYwLCAweDkyLApAQCAtNDIyLDM4ICs0NDQs
NDUgQEAgc3RhdGljIGNvbnN0IHVpbnQ4X3Qgc3J0cF9hZXNfaWNtXzI1Nl90ZXN0X2Nhc2VfMF9r
ZXlbU1JUUF9BRVNfSUNNXzI1Nl9LRVlfTEVOX1cKICAgICAweGYwLCAweGYxLCAweGYyLCAweGYz
LCAweGY0LCAweGY1LCAweGY2LCAweGY3LAogICAgIDB4ZjgsIDB4ZjksIDB4ZmEsIDB4ZmIsIDB4
ZmMsIDB4ZmQKIH07CisvKiBjbGFuZy1mb3JtYXQgb24gKi8KIAorLyogY2xhbmctZm9ybWF0IG9m
ZiAqLwogc3RhdGljIHVpbnQ4X3Qgc3J0cF9hZXNfaWNtXzI1Nl90ZXN0X2Nhc2VfMF9ub25jZVsx
Nl0gPSB7CiAgICAgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgw
MCwKICAgICAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwCiB9
OworLyogY2xhbmctZm9ybWF0IG9uICovCiAKKy8qIGNsYW5nLWZvcm1hdCBvZmYgKi8KIHN0YXRp
YyBjb25zdCB1aW50OF90IHNydHBfYWVzX2ljbV8yNTZfdGVzdF9jYXNlXzBfcGxhaW50ZXh0WzMy
XSA9ICB7CiAgICAgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgw
MCwKICAgICAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLAog
ICAgIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsCiAgICAg
MHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwKIH07CisvKiBj
bGFuZy1mb3JtYXQgb24gKi8KIAorLyogY2xhbmctZm9ybWF0IG9mZiAqLwogc3RhdGljIGNvbnN0
IHVpbnQ4X3Qgc3J0cF9hZXNfaWNtXzI1Nl90ZXN0X2Nhc2VfMF9jaXBoZXJ0ZXh0WzMyXSA9IHsK
ICAgICAweDkyLCAweGJkLCAweGQyLCAweDhhLCAweDkzLCAweGMzLCAweGY1LCAweDI1LAogICAg
IDB4MTEsIDB4YzYsIDB4NzcsIDB4ZDAsIDB4OGIsIDB4NTUsIDB4MTUsIDB4YTQsCiAgICAgMHg5
ZCwgMHhhNywgMHgxYiwgMHgyMywgMHg3OCwgMHhhOCwgMHg1NCwgMHhmNiwKICAgICAweDcwLCAw
eDUwLCAweDc1LCAweDZkLCAweGVkLCAweDE2LCAweDViLCAweGFjCiB9OworLyogY2xhbmctZm9y
bWF0IG9uICovCiAKIHN0YXRpYyBjb25zdCBzcnRwX2NpcGhlcl90ZXN0X2Nhc2VfdCBzcnRwX2Fl
c19pY21fMjU2X3Rlc3RfY2FzZV8wID0gewotICAgIFNSVFBfQUVTX0lDTV8yNTZfS0VZX0xFTl9X
U0FMVCwgICAgICAgICAgICAgICAgIC8qIG9jdGV0cyBpbiBrZXkgICAgICAgICAgICAqLwotICAg
IHNydHBfYWVzX2ljbV8yNTZfdGVzdF9jYXNlXzBfa2V5LCAgICAgICAgICAgLyoga2V5ICAgICAg
ICAgICAgICAgICAgICAgICovCi0gICAgc3J0cF9hZXNfaWNtXzI1Nl90ZXN0X2Nhc2VfMF9ub25j
ZSwgICAgICAgICAvKiBwYWNrZXQgaW5kZXggICAgICAgICAgICAgKi8KLSAgICAzMiwgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBvY3RldHMgaW4gcGxhaW50ZXh0ICAgICAg
Ki8KLSAgICBzcnRwX2Flc19pY21fMjU2X3Rlc3RfY2FzZV8wX3BsYWludGV4dCwgICAgIC8qIHBs
YWludGV4dCAgICAgICAgICAgICAgICAqLwotICAgIDMyLCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIC8qIG9jdGV0cyBpbiBjaXBoZXJ0ZXh0ICAgICAqLwotICAgIHNydHBfYWVz
X2ljbV8yNTZfdGVzdF9jYXNlXzBfY2lwaGVydGV4dCwgICAgLyogY2lwaGVydGV4dCAgICAgICAg
ICAgICAgICovCi0gICAgMCwKLSAgICBOVUxMLAotICAgIDAsCi0gICAgTlVMTCAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgLyogcG9pbnRlciB0byBuZXh0IHRlc3RjYXNlICovCisg
ICAgU1JUUF9BRVNfSUNNXzI1Nl9LRVlfTEVOX1dTQUxULCAgICAgICAgICAvKiBvY3RldHMgaW4g
a2V5ICAgICAgICAgICAgKi8KKyAgICBzcnRwX2Flc19pY21fMjU2X3Rlc3RfY2FzZV8wX2tleSwg
ICAgICAgIC8qIGtleSAgICAgICAgICAgICAgICAgICAgICAqLworICAgIHNydHBfYWVzX2ljbV8y
NTZfdGVzdF9jYXNlXzBfbm9uY2UsICAgICAgLyogcGFja2V0IGluZGV4ICAgICAgICAgICAgICov
CisgICAgMzIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBvY3RldHMg
aW4gcGxhaW50ZXh0ICAgICAgKi8KKyAgICBzcnRwX2Flc19pY21fMjU2X3Rlc3RfY2FzZV8wX3Bs
YWludGV4dCwgIC8qIHBsYWludGV4dCAgICAgICAgICAgICAgICAqLworICAgIDMyLCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogb2N0ZXRzIGluIGNpcGhlcnRleHQgICAg
ICovCisgICAgc3J0cF9hZXNfaWNtXzI1Nl90ZXN0X2Nhc2VfMF9jaXBoZXJ0ZXh0LCAvKiBjaXBo
ZXJ0ZXh0ICAgICAgICAgICAgICAgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIC8qICovCisgICAgTlVMTCwgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgLyogKi8KKyAgICBOVUxMICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8q
IHBvaW50ZXIgdG8gbmV4dCB0ZXN0Y2FzZSAqLwogfTsKIAogLyoKQEAgLTQ2MSwxNyArNDkwLDE3
IEBAIHN0YXRpYyBjb25zdCBzcnRwX2NpcGhlcl90ZXN0X2Nhc2VfdCBzcnRwX2Flc19pY21fMjU2
X3Rlc3RfY2FzZV8wID0gewogICogbm90ZTogdGhlIGVuY3J5cHQgZnVuY3Rpb24gaXMgaWRlbnRp
Y2FsIHRvIHRoZSBkZWNyeXB0IGZ1bmN0aW9uCiAgKi8KIGNvbnN0IHNydHBfY2lwaGVyX3R5cGVf
dCBzcnRwX2Flc19pY21fMTI4ID0gewotICAgIHNydHBfYWVzX2ljbV9vcGVuc3NsX2FsbG9jLAot
ICAgIHNydHBfYWVzX2ljbV9vcGVuc3NsX2RlYWxsb2MsCi0gICAgc3J0cF9hZXNfaWNtX29wZW5z
c2xfY29udGV4dF9pbml0LAotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogc2V0
X2FhZCAqLwotICAgIHNydHBfYWVzX2ljbV9vcGVuc3NsX2VuY3J5cHQsCi0gICAgc3J0cF9hZXNf
aWNtX29wZW5zc2xfZW5jcnlwdCwKLSAgICBzcnRwX2Flc19pY21fb3BlbnNzbF9zZXRfaXYsCi0g
ICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBnZXRfdGFnICovCi0gICAgc3J0cF9h
ZXNfaWNtXzEyOF9vcGVuc3NsX2Rlc2NyaXB0aW9uLAotICAgICZzcnRwX2Flc19pY21fMTI4X3Rl
c3RfY2FzZV8wLAotICAgIFNSVFBfQUVTX0lDTV8xMjgKKyAgICBzcnRwX2Flc19pY21fb3BlbnNz
bF9hbGxvYywgICAgICAgICAgIC8qICovCisgICAgc3J0cF9hZXNfaWNtX29wZW5zc2xfZGVhbGxv
YywgICAgICAgICAvKiAqLworICAgIHNydHBfYWVzX2ljbV9vcGVuc3NsX2NvbnRleHRfaW5pdCwg
ICAgLyogKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHNl
dF9hYWQgKi8KKyAgICBzcnRwX2Flc19pY21fb3BlbnNzbF9lbmNyeXB0LCAgICAgICAgIC8qICov
CisgICAgc3J0cF9hZXNfaWNtX29wZW5zc2xfZW5jcnlwdCwgICAgICAgICAvKiAqLworICAgIHNy
dHBfYWVzX2ljbV9vcGVuc3NsX3NldF9pdiwgICAgICAgICAgLyogKi8KKyAgICAwLCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIGdldF90YWcgKi8KKyAgICBzcnRwX2Flc19p
Y21fMTI4X29wZW5zc2xfZGVzY3JpcHRpb24sIC8qICovCisgICAgJnNydHBfYWVzX2ljbV8xMjhf
dGVzdF9jYXNlXzAsICAgICAgICAvKiAqLworICAgIFNSVFBfQUVTX0lDTV8xMjggICAgICAgICAg
ICAgICAgICAgICAgLyogKi8KIH07CiAKIC8qCkBAIC00NzksMTcgKzUwOCwxNyBAQCBjb25zdCBz
cnRwX2NpcGhlcl90eXBlX3Qgc3J0cF9hZXNfaWNtXzEyOCA9IHsKICAqIG5vdGU6IHRoZSBlbmNy
eXB0IGZ1bmN0aW9uIGlzIGlkZW50aWNhbCB0byB0aGUgZGVjcnlwdCBmdW5jdGlvbgogICovCiBj
b25zdCBzcnRwX2NpcGhlcl90eXBlX3Qgc3J0cF9hZXNfaWNtXzE5MiA9IHsKLSAgICBzcnRwX2Fl
c19pY21fb3BlbnNzbF9hbGxvYywKLSAgICBzcnRwX2Flc19pY21fb3BlbnNzbF9kZWFsbG9jLAot
ICAgIHNydHBfYWVzX2ljbV9vcGVuc3NsX2NvbnRleHRfaW5pdCwKLSAgICAwLCAgICAgICAgICAg
ICAgICAgICAgICAgICAgIC8qIHNldF9hYWQgKi8KLSAgICBzcnRwX2Flc19pY21fb3BlbnNzbF9l
bmNyeXB0LAotICAgIHNydHBfYWVzX2ljbV9vcGVuc3NsX2VuY3J5cHQsCi0gICAgc3J0cF9hZXNf
aWNtX29wZW5zc2xfc2V0X2l2LAotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgLyog
Z2V0X3RhZyAqLwotICAgIHNydHBfYWVzX2ljbV8xOTJfb3BlbnNzbF9kZXNjcmlwdGlvbiwKLSAg
ICAmc3J0cF9hZXNfaWNtXzE5Ml90ZXN0X2Nhc2VfMCwKLSAgICBTUlRQX0FFU19JQ01fMTkyCisg
ICAgc3J0cF9hZXNfaWNtX29wZW5zc2xfYWxsb2MsICAgICAgICAgICAvKiAqLworICAgIHNydHBf
YWVzX2ljbV9vcGVuc3NsX2RlYWxsb2MsICAgICAgICAgLyogKi8KKyAgICBzcnRwX2Flc19pY21f
b3BlbnNzbF9jb250ZXh0X2luaXQsICAgIC8qICovCisgICAgMCwgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAvKiBzZXRfYWFkICovCisgICAgc3J0cF9hZXNfaWNtX29wZW5zc2xf
ZW5jcnlwdCwgICAgICAgICAvKiAqLworICAgIHNydHBfYWVzX2ljbV9vcGVuc3NsX2VuY3J5cHQs
ICAgICAgICAgLyogKi8KKyAgICBzcnRwX2Flc19pY21fb3BlbnNzbF9zZXRfaXYsICAgICAgICAg
IC8qICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBnZXRf
dGFnICovCisgICAgc3J0cF9hZXNfaWNtXzE5Ml9vcGVuc3NsX2Rlc2NyaXB0aW9uLCAvKiAqLwor
ICAgICZzcnRwX2Flc19pY21fMTkyX3Rlc3RfY2FzZV8wLCAgICAgICAgLyogKi8KKyAgICBTUlRQ
X0FFU19JQ01fMTkyICAgICAgICAgICAgICAgICAgICAgIC8qICovCiB9OwogCiAvKgpAQCAtNDk3
LDE2ICs1MjYsMTUgQEAgY29uc3Qgc3J0cF9jaXBoZXJfdHlwZV90IHNydHBfYWVzX2ljbV8xOTIg
PSB7CiAgKiBub3RlOiB0aGUgZW5jcnlwdCBmdW5jdGlvbiBpcyBpZGVudGljYWwgdG8gdGhlIGRl
Y3J5cHQgZnVuY3Rpb24KICAqLwogY29uc3Qgc3J0cF9jaXBoZXJfdHlwZV90IHNydHBfYWVzX2lj
bV8yNTYgPSB7Ci0gICAgc3J0cF9hZXNfaWNtX29wZW5zc2xfYWxsb2MsCi0gICAgc3J0cF9hZXNf
aWNtX29wZW5zc2xfZGVhbGxvYywKLSAgICBzcnRwX2Flc19pY21fb3BlbnNzbF9jb250ZXh0X2lu
aXQsCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBzZXRfYWFkICovCi0gICAg
c3J0cF9hZXNfaWNtX29wZW5zc2xfZW5jcnlwdCwKLSAgICBzcnRwX2Flc19pY21fb3BlbnNzbF9l
bmNyeXB0LAotICAgIHNydHBfYWVzX2ljbV9vcGVuc3NsX3NldF9pdiwKLSAgICAwLCAgICAgICAg
ICAgICAgICAgICAgICAgICAgIC8qIGdldF90YWcgKi8KLSAgICBzcnRwX2Flc19pY21fMjU2X29w
ZW5zc2xfZGVzY3JpcHRpb24sCi0gICAgJnNydHBfYWVzX2ljbV8yNTZfdGVzdF9jYXNlXzAsCi0g
ICAgU1JUUF9BRVNfSUNNXzI1NgorICAgIHNydHBfYWVzX2ljbV9vcGVuc3NsX2FsbG9jLCAgICAg
ICAgICAgLyogKi8KKyAgICBzcnRwX2Flc19pY21fb3BlbnNzbF9kZWFsbG9jLCAgICAgICAgIC8q
ICovCisgICAgc3J0cF9hZXNfaWNtX29wZW5zc2xfY29udGV4dF9pbml0LCAgICAvKiAqLworICAg
IDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogc2V0X2FhZCAqLworICAg
IHNydHBfYWVzX2ljbV9vcGVuc3NsX2VuY3J5cHQsICAgICAgICAgLyogKi8KKyAgICBzcnRwX2Fl
c19pY21fb3BlbnNzbF9lbmNyeXB0LCAgICAgICAgIC8qICovCisgICAgc3J0cF9hZXNfaWNtX29w
ZW5zc2xfc2V0X2l2LCAgICAgICAgICAvKiAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyogZ2V0X3RhZyAqLworICAgIHNydHBfYWVzX2ljbV8yNTZfb3BlbnNz
bF9kZXNjcmlwdGlvbiwgLyogKi8KKyAgICAmc3J0cF9hZXNfaWNtXzI1Nl90ZXN0X2Nhc2VfMCwg
ICAgICAgIC8qICovCisgICAgU1JUUF9BRVNfSUNNXzI1NiAgICAgICAgICAgICAgICAgICAgICAv
KiAqLwogfTsKLQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9jaXBoZXIvY2lwaGVyLmMgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2NpcGhl
ci9jaXBoZXIuYwppbmRleCAzYzY3NzkwODg4ZDBhYWYyZDgyNmY4NDc2NjZiYTczMjVmZGEyODMw
Li4xOWYwMGFiYzU1YmU2NmQ2MDc1ODYzZGM5Y2U1MGQyZTQ4NjNlNDVjIDEwMDY0NAotLS0gYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5
cHRvL2NpcGhlci9jaXBoZXIuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2NpcGhlci9jaXBoZXIuYwpAQCAtNDUsNTYg
KzQ1LDYxIEBACiAgKi8KIAogI2lmZGVmIEhBVkVfQ09ORklHX0gKLSAgICAjaW5jbHVkZSA8Y29u
ZmlnLmg+CisjaW5jbHVkZSA8Y29uZmlnLmg+CiAjZW5kaWYKIAogI2luY2x1ZGUgImNpcGhlci5o
IgogI2luY2x1ZGUgImNyeXB0b190eXBlcy5oIgotI2luY2x1ZGUgImVyci5oIiAgICAgICAgICAg
ICAgICAvKiBmb3Igc3J0cF9kZWJ1ZyAqLwotI2luY2x1ZGUgImFsbG9jLmgiICAgICAgICAgICAg
ICAvKiBmb3IgY3J5cHRvX2FsbG9jKCksIGNyeXB0b19mcmVlKCkgICovCisjaW5jbHVkZSAiZXJy
LmgiICAgLyogZm9yIHNydHBfZGVidWcgKi8KKyNpbmNsdWRlICJhbGxvYy5oIiAvKiBmb3IgY3J5
cHRvX2FsbG9jKCksIGNyeXB0b19mcmVlKCkgICovCiAKIHNydHBfZGVidWdfbW9kdWxlX3Qgc3J0
cF9tb2RfY2lwaGVyID0gewotICAgIDAsICAgICAgICAgICAgICAgLyogZGVidWdnaW5nIGlzIG9m
ZiBieSBkZWZhdWx0ICovCi0gICAgImNpcGhlciIgICAgICAgICAvKiBwcmludGFibGUgbW9kdWxl
IG5hbWUgICAgICAgKi8KKyAgICAwLCAgICAgICAvKiBkZWJ1Z2dpbmcgaXMgb2ZmIGJ5IGRlZmF1
bHQgKi8KKyAgICAiY2lwaGVyIiAvKiBwcmludGFibGUgbW9kdWxlIG5hbWUgICAgICAgKi8KIH07
CiAKLXNydHBfZXJyX3N0YXR1c190IHNydHBfY2lwaGVyX3R5cGVfYWxsb2MgKGNvbnN0IHNydHBf
Y2lwaGVyX3R5cGVfdCAqY3QsIHNydHBfY2lwaGVyX3QgKipjLCBpbnQga2V5X2xlbiwgaW50IHRs
ZW4pCitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NpcGhlcl90eXBlX2FsbG9jKGNvbnN0IHNydHBf
Y2lwaGVyX3R5cGVfdCAqY3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHNydHBfY2lwaGVyX3QgKipjLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBpbnQga2V5X2xlbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgaW50IHRsZW4pCiB7CiAgICAgaWYgKCFjdCB8fCAhY3QtPmFsbG9jKSB7Ci0JcmV0dXJu
IChzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtKTsKKyAgICAgICAgcmV0dXJuIChzcnRwX2Vycl9z
dGF0dXNfYmFkX3BhcmFtKTsKICAgICB9CiAgICAgcmV0dXJuICgoY3QpLT5hbGxvYygoYyksIChr
ZXlfbGVuKSwgKHRsZW4pKSk7CiB9CiAKLXNydHBfZXJyX3N0YXR1c190IHNydHBfY2lwaGVyX2Rl
YWxsb2MgKHNydHBfY2lwaGVyX3QgKmMpCitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NpcGhlcl9k
ZWFsbG9jKHNydHBfY2lwaGVyX3QgKmMpCiB7CiAgICAgaWYgKCFjIHx8ICFjLT50eXBlKSB7Ci0J
cmV0dXJuIChzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtKTsKKyAgICAgICAgcmV0dXJuIChzcnRw
X2Vycl9zdGF0dXNfYmFkX3BhcmFtKTsKICAgICB9CiAgICAgcmV0dXJuICgoKGMpLT50eXBlKS0+
ZGVhbGxvYyhjKSk7CiB9CiAKLXNydHBfZXJyX3N0YXR1c190IHNydHBfY2lwaGVyX2luaXQgKHNy
dHBfY2lwaGVyX3QgKmMsIGNvbnN0IHVpbnQ4X3QgKmtleSkKK3NydHBfZXJyX3N0YXR1c190IHNy
dHBfY2lwaGVyX2luaXQoc3J0cF9jaXBoZXJfdCAqYywgY29uc3QgdWludDhfdCAqa2V5KQogewog
ICAgIGlmICghYyB8fCAhYy0+dHlwZSB8fCAhYy0+c3RhdGUpIHsKLQlyZXR1cm4gKHNydHBfZXJy
X3N0YXR1c19iYWRfcGFyYW0pOworICAgICAgICByZXR1cm4gKHNydHBfZXJyX3N0YXR1c19iYWRf
cGFyYW0pOwogICAgIH0KICAgICByZXR1cm4gKCgoYyktPnR5cGUpLT5pbml0KCgoYyktPnN0YXRl
KSwgKGtleSkpKTsKIH0KIAotCi1zcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NpcGhlcl9zZXRfaXYg
KHNydHBfY2lwaGVyX3QgKmMsIHVpbnQ4X3QgKml2LCBpbnQgZGlyZWN0aW9uKQorc3J0cF9lcnJf
c3RhdHVzX3Qgc3J0cF9jaXBoZXJfc2V0X2l2KHNydHBfY2lwaGVyX3QgKmMsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDhfdCAqaXYsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgaW50IGRpcmVjdGlvbikKIHsKICAgICBpZiAoIWMgfHwgIWMt
PnR5cGUgfHwgIWMtPnN0YXRlKSB7Ci0JcmV0dXJuIChzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFt
KTsKKyAgICAgICAgcmV0dXJuIChzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtKTsKICAgICB9CiAK
LSAgICByZXR1cm4gKCgoYyktPnR5cGUpLT5zZXRfaXYoKChjKS0+c3RhdGUpLCBpdiwgZGlyZWN0
aW9uKSk7IAorICAgIHJldHVybiAoKChjKS0+dHlwZSktPnNldF9pdigoKGMpLT5zdGF0ZSksIGl2
LCBkaXJlY3Rpb24pKTsKIH0KIAotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jaXBoZXJfb3V0cHV0
IChzcnRwX2NpcGhlcl90ICpjLCB1aW50OF90ICpidWZmZXIsIHVpbnQzMl90ICpudW1fb2N0ZXRz
X3RvX291dHB1dCkKK3NydHBfZXJyX3N0YXR1c190IHNydHBfY2lwaGVyX291dHB1dChzcnRwX2Np
cGhlcl90ICpjLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQ4X3Qg
KmJ1ZmZlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCAq
bnVtX29jdGV0c190b19vdXRwdXQpCiB7Ci0KICAgICAvKiB6ZXJvaXplIHRoZSBidWZmZXIgKi8K
ICAgICBvY3RldF9zdHJpbmdfc2V0X3RvX3plcm8oYnVmZmVyLCAqbnVtX29jdGV0c190b19vdXRw
dXQpOwogCkBAIC0xMDIsNDMgKzEwNyw1MSBAQCBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NpcGhl
cl9vdXRwdXQgKHNydHBfY2lwaGVyX3QgKmMsIHVpbnQ4X3QgKmJ1ZmZlciwgdWludDMyXwogICAg
IHJldHVybiAoKChjKS0+dHlwZSktPmVuY3J5cHQoKChjKS0+c3RhdGUpLCBidWZmZXIsIG51bV9v
Y3RldHNfdG9fb3V0cHV0KSk7CiB9CiAKLXNydHBfZXJyX3N0YXR1c190IHNydHBfY2lwaGVyX2Vu
Y3J5cHQgKHNydHBfY2lwaGVyX3QgKmMsIHVpbnQ4X3QgKmJ1ZmZlciwgdWludDMyX3QgKm51bV9v
Y3RldHNfdG9fb3V0cHV0KQorc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jaXBoZXJfZW5jcnlwdChz
cnRwX2NpcGhlcl90ICpjLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1
aW50OF90ICpidWZmZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVp
bnQzMl90ICpudW1fb2N0ZXRzX3RvX291dHB1dCkKIHsKICAgICBpZiAoIWMgfHwgIWMtPnR5cGUg
fHwgIWMtPnN0YXRlKSB7Ci0JcmV0dXJuIChzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtKTsKKyAg
ICAgICAgcmV0dXJuIChzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtKTsKICAgICB9CiAKICAgICBy
ZXR1cm4gKCgoYyktPnR5cGUpLT5lbmNyeXB0KCgoYyktPnN0YXRlKSwgYnVmZmVyLCBudW1fb2N0
ZXRzX3RvX291dHB1dCkpOwogfQogCi1zcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NpcGhlcl9kZWNy
eXB0IChzcnRwX2NpcGhlcl90ICpjLCB1aW50OF90ICpidWZmZXIsIHVpbnQzMl90ICpudW1fb2N0
ZXRzX3RvX291dHB1dCkKK3NydHBfZXJyX3N0YXR1c190IHNydHBfY2lwaGVyX2RlY3J5cHQoc3J0
cF9jaXBoZXJfdCAqYywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWlu
dDhfdCAqYnVmZmVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50
MzJfdCAqbnVtX29jdGV0c190b19vdXRwdXQpCiB7CiAgICAgaWYgKCFjIHx8ICFjLT50eXBlIHx8
ICFjLT5zdGF0ZSkgewotCXJldHVybiAoc3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJhbSk7CisgICAg
ICAgIHJldHVybiAoc3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJhbSk7CiAgICAgfQogCiAgICAgcmV0
dXJuICgoKGMpLT50eXBlKS0+ZGVjcnlwdCgoKGMpLT5zdGF0ZSksIGJ1ZmZlciwgbnVtX29jdGV0
c190b19vdXRwdXQpKTsKIH0KIAotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jaXBoZXJfZ2V0X3Rh
ZyAoc3J0cF9jaXBoZXJfdCAqYywgdWludDhfdCAqYnVmZmVyLCB1aW50MzJfdCAqdGFnX2xlbikK
K3NydHBfZXJyX3N0YXR1c190IHNydHBfY2lwaGVyX2dldF90YWcoc3J0cF9jaXBoZXJfdCAqYywK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDhfdCAqYnVmZmVyLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCAqdGFnX2xlbikK
IHsKICAgICBpZiAoIWMgfHwgIWMtPnR5cGUgfHwgIWMtPnN0YXRlKSB7Ci0JcmV0dXJuIChzcnRw
X2Vycl9zdGF0dXNfYmFkX3BhcmFtKTsKKyAgICAgICAgcmV0dXJuIChzcnRwX2Vycl9zdGF0dXNf
YmFkX3BhcmFtKTsKICAgICB9CiAgICAgaWYgKCEoKGMpLT50eXBlKS0+Z2V0X3RhZykgewotCXJl
dHVybiAoc3J0cF9lcnJfc3RhdHVzX25vX3N1Y2hfb3ApOworICAgICAgICByZXR1cm4gKHNydHBf
ZXJyX3N0YXR1c19ub19zdWNoX29wKTsKICAgICB9CiAKICAgICByZXR1cm4gKCgoYyktPnR5cGUp
LT5nZXRfdGFnKCgoYyktPnN0YXRlKSwgYnVmZmVyLCB0YWdfbGVuKSk7CiB9CiAKLXNydHBfZXJy
X3N0YXR1c190IHNydHBfY2lwaGVyX3NldF9hYWQgKHNydHBfY2lwaGVyX3QgKmMsIGNvbnN0IHVp
bnQ4X3QgKmFhZCwgdWludDMyX3QgYWFkX2xlbikKK3NydHBfZXJyX3N0YXR1c190IHNydHBfY2lw
aGVyX3NldF9hYWQoc3J0cF9jaXBoZXJfdCAqYywKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgY29uc3QgdWludDhfdCAqYWFkLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB1aW50MzJfdCBhYWRfbGVuKQogewogICAgIGlmICghYyB8fCAhYy0+dHlw
ZSB8fCAhYy0+c3RhdGUpIHsKLQlyZXR1cm4gKHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW0pOwor
ICAgICAgICByZXR1cm4gKHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW0pOwogICAgIH0KICAgICBp
ZiAoISgoYyktPnR5cGUpLT5zZXRfYWFkKSB7Ci0JcmV0dXJuIChzcnRwX2Vycl9zdGF0dXNfbm9f
c3VjaF9vcCk7CisgICAgICAgIHJldHVybiAoc3J0cF9lcnJfc3RhdHVzX25vX3N1Y2hfb3ApOwog
ICAgIH0KIAogICAgIHJldHVybiAoKChjKS0+dHlwZSktPnNldF9hYWQoKChjKS0+c3RhdGUpLCBh
YWQsIGFhZF9sZW4pKTsKQEAgLTE0Niw1NyArMTU5LDU2IEBAIHNydHBfZXJyX3N0YXR1c190IHNy
dHBfY2lwaGVyX3NldF9hYWQgKHNydHBfY2lwaGVyX3QgKmMsIGNvbnN0IHVpbnQ4X3QgKmFhZCwg
dWluCiAKIC8qIHNvbWUgYm9va2tlZXBpbmcgZnVuY3Rpb25zICovCiAKLWludCBzcnRwX2NpcGhl
cl9nZXRfa2V5X2xlbmd0aCAoY29uc3Qgc3J0cF9jaXBoZXJfdCAqYykKK2ludCBzcnRwX2NpcGhl
cl9nZXRfa2V5X2xlbmd0aChjb25zdCBzcnRwX2NpcGhlcl90ICpjKQogewogICAgIHJldHVybiBj
LT5rZXlfbGVuOwogfQogCi0KIC8qCiAgKiBBIHRyaXZpYWwgcGxhdGZvcm0gaW5kZXBlbmRlbnQg
cmFuZG9tIHNvdXJjZS4gIFRoZSByYW5kb20KICAqIGRhdGEgaXMgdXNlZCBmb3Igc29tZSBvZiB0
aGUgY2lwaGVyIHNlbGYtdGVzdHMuCiAgKi8KLXN0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRw
X2NpcGhlcl9yYW5kICh2b2lkICpkZXN0LCB1aW50MzJfdCBsZW4pIAorc3RhdGljIHNydHBfZXJy
X3N0YXR1c190IHNydHBfY2lwaGVyX3JhbmQodm9pZCAqZGVzdCwgdWludDMyX3QgbGVuKQogewog
I2lmIGRlZmluZWQoSEFWRV9SQU5EX1MpCi0gIHVpbnQ4X3QgKmRzdCA9ICh1aW50OF90ICopZGVz
dDsKLSAgd2hpbGUgKGxlbikKLSAgewotICAgIHVuc2lnbmVkIGludCB2YWw7Ci0gICAgZXJybm9f
dCBlcnIgPSByYW5kX3MoJnZhbCk7Ci0KLSAgICBpZiAoZXJyICE9IDApCi0gICAgICByZXR1cm4g
c3J0cF9lcnJfc3RhdHVzX2ZhaWw7Ci0gIAotICAgICpkc3QrKyA9IHZhbCAmIDB4ZmY7Ci0gICAg
bGVuLS07Ci0gIH0KKyAgICB1aW50OF90ICpkc3QgPSAodWludDhfdCAqKWRlc3Q7CisgICAgd2hp
bGUgKGxlbikgeworICAgICAgICB1bnNpZ25lZCBpbnQgdmFsOworICAgICAgICBlcnJub190IGVy
ciA9IHJhbmRfcygmdmFsKTsKKworICAgICAgICBpZiAoZXJyICE9IDApCisgICAgICAgICAgICBy
ZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7CisKKyAgICAgICAgKmRzdCsrID0gdmFsICYgMHhm
ZjsKKyAgICAgICAgbGVuLS07CisgICAgfQogI2Vsc2UKLSAgLyogR2VuZXJpYyBDLWxpYnJhcnkg
KHJhbmQoKSkgdmVyc2lvbiAqLwotICAvKiBUaGlzIGlzIGEgcmFuZG9tIHNvdXJjZSBvZiBsYXN0
IHJlc29ydCAqLwotICB1aW50OF90ICpkc3QgPSAodWludDhfdCAqKWRlc3Q7Ci0gIHdoaWxlIChs
ZW4pCi0gIHsKLQkgIGludCB2YWwgPSByYW5kKCk7Ci0JICAvKiByYW5kKCkgcmV0dXJucyAwLTMy
NzY3ICh1Z2gpICovCi0JICAvKiBJcyB0aGlzIGEgZ29vZCBlbm91Z2ggd2F5IHRvIGdldCByYW5k
b20gYnl0ZXM/Ci0JICAgICBJdCBpcyBpZiBpdCBwYXNzZXMgRklQUy0xNDAuLi4gKi8KLQkgICpk
c3QrKyA9IHZhbCAmIDB4ZmY7Ci0JICBsZW4tLTsKLSAgfQorICAgIC8qIEdlbmVyaWMgQy1saWJy
YXJ5IChyYW5kKCkpIHZlcnNpb24gKi8KKyAgICAvKiBUaGlzIGlzIGEgcmFuZG9tIHNvdXJjZSBv
ZiBsYXN0IHJlc29ydCAqLworICAgIHVpbnQ4X3QgKmRzdCA9ICh1aW50OF90ICopZGVzdDsKKyAg
ICB3aGlsZSAobGVuKSB7CisgICAgICAgIGludCB2YWwgPSByYW5kKCk7CisgICAgICAgIC8qIHJh
bmQoKSByZXR1cm5zIDAtMzI3NjcgKHVnaCkgKi8KKyAgICAgICAgLyogSXMgdGhpcyBhIGdvb2Qg
ZW5vdWdoIHdheSB0byBnZXQgcmFuZG9tIGJ5dGVzPworICAgICAgICAgICBJdCBpcyBpZiBpdCBw
YXNzZXMgRklQUy0xNDAuLi4gKi8KKyAgICAgICAgKmRzdCsrID0gdmFsICYgMHhmZjsKKyAgICAg
ICAgbGVuLS07CisgICAgfQogI2VuZGlmCi0gIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7Cisg
ICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0KLSAKKwogI2RlZmluZSBTRUxGX1RFU1Rf
QlVGX09DVEVUUyAxMjgKLSNkZWZpbmUgTlVNX1JBTkRfVEVTVFMgICAgICAgMTI4Ci0jZGVmaW5l
IE1BWF9LRVlfTEVOICAgICAgICAgIDY0CisjZGVmaW5lIE5VTV9SQU5EX1RFU1RTIDEyOAorI2Rl
ZmluZSBNQVhfS0VZX0xFTiA2NAogLyoKICAqIHNydHBfY2lwaGVyX3R5cGVfdGVzdChjdCwgdGVz
dF9kYXRhKSB0ZXN0cyBhIGNpcGhlciBvZiB0eXBlIGN0IGFnYWluc3QKICAqIHRlc3QgY2FzZXMg
cHJvdmlkZWQgaW4gYSBsaXN0IHRlc3RfZGF0YSBvZiB2YWx1ZXMgb2Yga2V5LCBzYWx0LCBpdiwK
ICAqIHBsYWludGV4dCwgYW5kIGNpcGhlcnRleHQgdGhhdCBpcyBrbm93biB0byBiZSBnb29kCiAg
Ki8KLXNydHBfZXJyX3N0YXR1c190IHNydHBfY2lwaGVyX3R5cGVfdGVzdCAoY29uc3Qgc3J0cF9j
aXBoZXJfdHlwZV90ICpjdCwgY29uc3Qgc3J0cF9jaXBoZXJfdGVzdF9jYXNlX3QgKnRlc3RfZGF0
YSkKK3NydHBfZXJyX3N0YXR1c190IHNydHBfY2lwaGVyX3R5cGVfdGVzdCgKKyAgICBjb25zdCBz
cnRwX2NpcGhlcl90eXBlX3QgKmN0LAorICAgIGNvbnN0IHNydHBfY2lwaGVyX3Rlc3RfY2FzZV90
ICp0ZXN0X2RhdGEpCiB7CiAgICAgY29uc3Qgc3J0cF9jaXBoZXJfdGVzdF9jYXNlX3QgKnRlc3Rf
Y2FzZSA9IHRlc3RfZGF0YTsKICAgICBzcnRwX2NpcGhlcl90ICpjOwpAQCAtMjA2LDYgKzIxOCw3
IEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfY2lwaGVyX3R5cGVfdGVzdCAoY29uc3Qgc3J0cF9j
aXBoZXJfdHlwZV90ICpjdCwgY29uc3Qgc3J0CiAgICAgdWludDMyX3QgdGFnX2xlbjsKICAgICB1
bnNpZ25lZCBpbnQgbGVuOwogICAgIGludCBpLCBqLCBjYXNlX251bSA9IDA7CisgICAgdW5zaWdu
ZWQgayA9IDA7CiAKICAgICBkZWJ1Z19wcmludChzcnRwX21vZF9jaXBoZXIsICJydW5uaW5nIHNl
bGYtdGVzdCBmb3IgY2lwaGVyICVzIiwKICAgICAgICAgICAgICAgICBjdC0+ZGVzY3JpcHRpb24p
OwpAQCAtMjI0LDcgKzIzNyw4IEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfY2lwaGVyX3R5cGVf
dGVzdCAoY29uc3Qgc3J0cF9jaXBoZXJfdHlwZV90ICpjdCwgY29uc3Qgc3J0CiAgICAgICovCiAg
ICAgd2hpbGUgKHRlc3RfY2FzZSAhPSBOVUxMKSB7CiAgICAgICAgIC8qIGFsbG9jYXRlIGNpcGhl
ciAqLwotICAgICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl90eXBlX2FsbG9jKGN0LCAmYywgdGVz
dF9jYXNlLT5rZXlfbGVuZ3RoX29jdGV0cywgdGVzdF9jYXNlLT50YWdfbGVuZ3RoX29jdGV0cyk7
CisgICAgICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3R5cGVfYWxsb2MoY3QsICZjLCB0ZXN0X2Nh
c2UtPmtleV9sZW5ndGhfb2N0ZXRzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHRlc3RfY2FzZS0+dGFnX2xlbmd0aF9vY3RldHMpOwogICAgICAgICBpZiAoc3RhdHVz
KSB7CiAgICAgICAgICAgICByZXR1cm4gc3RhdHVzOwogICAgICAgICB9CkBAIC0yNDYsMzYgKzI2
MCwzOSBAQCBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NpcGhlcl90eXBlX3Rlc3QgKGNvbnN0IHNy
dHBfY2lwaGVyX3R5cGVfdCAqY3QsIGNvbnN0IHNydAogICAgICAgICAgICAgc3J0cF9jaXBoZXJf
ZGVhbGxvYyhjKTsKICAgICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFt
OwogICAgICAgICB9Ci0gICAgICAgIGZvciAoaSA9IDA7IGkgPCB0ZXN0X2Nhc2UtPnBsYWludGV4
dF9sZW5ndGhfb2N0ZXRzOyBpKyspIHsKLSAgICAgICAgICAgIGJ1ZmZlcltpXSA9IHRlc3RfY2Fz
ZS0+cGxhaW50ZXh0W2ldOworICAgICAgICBmb3IgKGsgPSAwOyBrIDwgdGVzdF9jYXNlLT5wbGFp
bnRleHRfbGVuZ3RoX29jdGV0czsgaysrKSB7CisgICAgICAgICAgICBidWZmZXJba10gPSB0ZXN0
X2Nhc2UtPnBsYWludGV4dFtrXTsKICAgICAgICAgfQogCiAgICAgICAgIGRlYnVnX3ByaW50KHNy
dHBfbW9kX2NpcGhlciwgInBsYWludGV4dDogICAgJXMiLAotICAgICAgICAgICAgICAgICAgICBz
cnRwX29jdGV0X3N0cmluZ19oZXhfc3RyaW5nKGJ1ZmZlciwKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0X2Nhc2UtPnBsYWludGV4dF9sZW5ndGhf
b2N0ZXRzKSk7CisgICAgICAgICAgICAgICAgICAgIHNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJp
bmcoCisgICAgICAgICAgICAgICAgICAgICAgICBidWZmZXIsIHRlc3RfY2FzZS0+cGxhaW50ZXh0
X2xlbmd0aF9vY3RldHMpKTsKIAogICAgICAgICAvKiBzZXQgdGhlIGluaXRpYWxpemF0aW9uIHZl
Y3RvciAqLwotICAgICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9zZXRfaXYoYywgKHVpbnQ4X3Qq
KXRlc3RfY2FzZS0+aWR4LCBzcnRwX2RpcmVjdGlvbl9lbmNyeXB0KTsKKyAgICAgICAgc3RhdHVz
ID0gc3J0cF9jaXBoZXJfc2V0X2l2KGMsICh1aW50OF90ICopdGVzdF9jYXNlLT5pZHgsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcnRwX2RpcmVjdGlvbl9lbmNyeXB0KTsK
ICAgICAgICAgaWYgKHN0YXR1cykgewogICAgICAgICAgICAgc3J0cF9jaXBoZXJfZGVhbGxvYyhj
KTsKICAgICAgICAgICAgIHJldHVybiBzdGF0dXM7CiAgICAgICAgIH0KIAotICAgICAgICBpZiAo
Yy0+YWxnb3JpdGhtID09IFNSVFBfQUVTX0dDTV8xMjggfHwgYy0+YWxnb3JpdGhtID09IFNSVFBf
QUVTX0dDTV8yNTYpIHsKKyAgICAgICAgaWYgKGMtPmFsZ29yaXRobSA9PSBTUlRQX0FFU19HQ01f
MTI4IHx8CisgICAgICAgICAgICBjLT5hbGdvcml0aG0gPT0gU1JUUF9BRVNfR0NNXzI1Nikgewog
ICAgICAgICAgICAgZGVidWdfcHJpbnQoc3J0cF9tb2RfY2lwaGVyLCAiSVY6ICAgICVzIiwKICAg
ICAgICAgICAgICAgICAgICAgICAgIHNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcodGVzdF9j
YXNlLT5pZHgsIDEyKSk7CiAKICAgICAgICAgICAgIC8qCiAgICAgICAgICAgICAgKiBTZXQgdGhl
IEFBRAogICAgICAgICAgICAgICovCi0gICAgICAgICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9z
ZXRfYWFkKGMsIHRlc3RfY2FzZS0+YWFkLCB0ZXN0X2Nhc2UtPmFhZF9sZW5ndGhfb2N0ZXRzKTsK
KyAgICAgICAgICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3NldF9hYWQoYywgdGVzdF9jYXNlLT5h
YWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRlc3RfY2FzZS0+
YWFkX2xlbmd0aF9vY3RldHMpOwogICAgICAgICAgICAgaWYgKHN0YXR1cykgewogICAgICAgICAg
ICAgICAgIHNydHBfY2lwaGVyX2RlYWxsb2MoYyk7CiAgICAgICAgICAgICAgICAgcmV0dXJuIHN0
YXR1czsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGRlYnVnX3ByaW50KHNydHBfbW9kX2Np
cGhlciwgIkFBRDogICAgJXMiLAotICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF9vY3RldF9z
dHJpbmdfaGV4X3N0cmluZyh0ZXN0X2Nhc2UtPmFhZCwKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVzdF9jYXNlLT5hYWRfbGVuZ3RoX29jdGV0
cykpOworICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmlu
ZygKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0X2Nhc2UtPmFhZCwgdGVzdF9jYXNl
LT5hYWRfbGVuZ3RoX29jdGV0cykpOwogICAgICAgICB9CiAKICAgICAgICAgLyogZW5jcnlwdCAq
LwpAQCAtMjg2LDcgKzMwMyw4IEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfY2lwaGVyX3R5cGVf
dGVzdCAoY29uc3Qgc3J0cF9jaXBoZXJfdHlwZV90ICpjdCwgY29uc3Qgc3J0CiAgICAgICAgICAg
ICByZXR1cm4gc3RhdHVzOwogICAgICAgICB9CiAKLSAgICAgICAgaWYgKGMtPmFsZ29yaXRobSA9
PSBTUlRQX0FFU19HQ01fMTI4IHx8IGMtPmFsZ29yaXRobSA9PSBTUlRQX0FFU19HQ01fMjU2KSB7
CisgICAgICAgIGlmIChjLT5hbGdvcml0aG0gPT0gU1JUUF9BRVNfR0NNXzEyOCB8fAorICAgICAg
ICAgICAgYy0+YWxnb3JpdGhtID09IFNSVFBfQUVTX0dDTV8yNTYpIHsKICAgICAgICAgICAgIC8q
CiAgICAgICAgICAgICAgKiBHZXQgdGhlIEdDTSB0YWcKICAgICAgICAgICAgICAqLwpAQCAtMjk5
LDggKzMxNyw4IEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfY2lwaGVyX3R5cGVfdGVzdCAoY29u
c3Qgc3J0cF9jaXBoZXJfdHlwZV90ICpjdCwgY29uc3Qgc3J0CiAgICAgICAgIH0KIAogICAgICAg
ICBkZWJ1Z19wcmludChzcnRwX21vZF9jaXBoZXIsICJjaXBoZXJ0ZXh0OiAgICVzIiwKLSAgICAg
ICAgICAgICAgICAgICAgc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZyhidWZmZXIsCi0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVzdF9jYXNlLT5j
aXBoZXJ0ZXh0X2xlbmd0aF9vY3RldHMpKTsKKyAgICAgICAgICAgICAgICAgICAgc3J0cF9vY3Rl
dF9zdHJpbmdfaGV4X3N0cmluZygKKyAgICAgICAgICAgICAgICAgICAgICAgIGJ1ZmZlciwgdGVz
dF9jYXNlLT5jaXBoZXJ0ZXh0X2xlbmd0aF9vY3RldHMpKTsKIAogICAgICAgICAvKiBjb21wYXJl
IHRoZSByZXN1bHRpbmcgY2lwaGVydGV4dCB3aXRoIHRoYXQgaW4gdGhlIHRlc3QgY2FzZSAqLwog
ICAgICAgICBpZiAobGVuICE9IHRlc3RfY2FzZS0+Y2lwaGVydGV4dF9sZW5ndGhfb2N0ZXRzKSB7
CkBAIC0zMDgsMjIgKzMyNiwyMiBAQCBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NpcGhlcl90eXBl
X3Rlc3QgKGNvbnN0IHNydHBfY2lwaGVyX3R5cGVfdCAqY3QsIGNvbnN0IHNydAogICAgICAgICAg
ICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19hbGdvX2ZhaWw7CiAgICAgICAgIH0KICAgICAgICAg
c3RhdHVzID0gc3J0cF9lcnJfc3RhdHVzX29rOwotICAgICAgICBmb3IgKGkgPSAwOyBpIDwgdGVz
dF9jYXNlLT5jaXBoZXJ0ZXh0X2xlbmd0aF9vY3RldHM7IGkrKykgewotICAgICAgICAgICAgaWYg
KGJ1ZmZlcltpXSAhPSB0ZXN0X2Nhc2UtPmNpcGhlcnRleHRbaV0pIHsKKyAgICAgICAgZm9yIChr
ID0gMDsgayA8IHRlc3RfY2FzZS0+Y2lwaGVydGV4dF9sZW5ndGhfb2N0ZXRzOyBrKyspIHsKKyAg
ICAgICAgICAgIGlmIChidWZmZXJba10gIT0gdGVzdF9jYXNlLT5jaXBoZXJ0ZXh0W2tdKSB7CiAg
ICAgICAgICAgICAgICAgc3RhdHVzID0gc3J0cF9lcnJfc3RhdHVzX2FsZ29fZmFpbDsKICAgICAg
ICAgICAgICAgICBkZWJ1Z19wcmludChzcnRwX21vZF9jaXBoZXIsICJ0ZXN0IGNhc2UgJWQgZmFp
bGVkIiwgY2FzZV9udW0pOwotICAgICAgICAgICAgICAgIGRlYnVnX3ByaW50KHNydHBfbW9kX2Np
cGhlciwgIihmYWlsdXJlIGF0IGJ5dGUgJWQpIiwgaSk7CisgICAgICAgICAgICAgICAgZGVidWdf
cHJpbnQoc3J0cF9tb2RfY2lwaGVyLCAiKGZhaWx1cmUgYXQgYnl0ZSAldSkiLCBrKTsKICAgICAg
ICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgIH0KICAgICAgICAgfQogICAgICAgICBpZiAo
c3RhdHVzKSB7Ci0KICAgICAgICAgICAgIGRlYnVnX3ByaW50KHNydHBfbW9kX2NpcGhlciwgImMg
Y29tcHV0ZWQ6ICVzIiwKLSAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfb2N0ZXRfc3RyaW5n
X2hleF9zdHJpbmcoYnVmZmVyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAyICogdGVzdF9jYXNlLT5wbGFpbnRleHRfbGVuZ3RoX29jdGV0cykp
OworICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZygK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICBidWZmZXIsIDIgKiB0ZXN0X2Nhc2UtPnBsYWlu
dGV4dF9sZW5ndGhfb2N0ZXRzKSk7CiAgICAgICAgICAgICBkZWJ1Z19wcmludChzcnRwX21vZF9j
aXBoZXIsICJjIGV4cGVjdGVkOiAlcyIsCi0gICAgICAgICAgICAgICAgICAgICAgICBzcnRwX29j
dGV0X3N0cmluZ19oZXhfc3RyaW5nKHRlc3RfY2FzZS0+Y2lwaGVydGV4dCwKLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMiAqIHRlc3RfY2FzZS0+
cGxhaW50ZXh0X2xlbmd0aF9vY3RldHMpKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHNydHBf
b2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcoCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVz
dF9jYXNlLT5jaXBoZXJ0ZXh0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIDIgKiB0ZXN0
X2Nhc2UtPnBsYWludGV4dF9sZW5ndGhfb2N0ZXRzKSk7CiAKICAgICAgICAgICAgIHNydHBfY2lw
aGVyX2RlYWxsb2MoYyk7CiAgICAgICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2FsZ29f
ZmFpbDsKQEAgLTM0NiwzMyArMzY0LDM2IEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfY2lwaGVy
X3R5cGVfdGVzdCAoY29uc3Qgc3J0cF9jaXBoZXJfdHlwZV90ICpjdCwgY29uc3Qgc3J0CiAgICAg
ICAgICAgICBzcnRwX2NpcGhlcl9kZWFsbG9jKGMpOwogICAgICAgICAgICAgcmV0dXJuIHNydHBf
ZXJyX3N0YXR1c19iYWRfcGFyYW07CiAgICAgICAgIH0KLSAgICAgICAgZm9yIChpID0gMDsgaSA8
IHRlc3RfY2FzZS0+Y2lwaGVydGV4dF9sZW5ndGhfb2N0ZXRzOyBpKyspIHsKLSAgICAgICAgICAg
IGJ1ZmZlcltpXSA9IHRlc3RfY2FzZS0+Y2lwaGVydGV4dFtpXTsKKyAgICAgICAgZm9yIChrID0g
MDsgayA8IHRlc3RfY2FzZS0+Y2lwaGVydGV4dF9sZW5ndGhfb2N0ZXRzOyBrKyspIHsKKyAgICAg
ICAgICAgIGJ1ZmZlcltrXSA9IHRlc3RfY2FzZS0+Y2lwaGVydGV4dFtrXTsKICAgICAgICAgfQog
CiAgICAgICAgIGRlYnVnX3ByaW50KHNydHBfbW9kX2NpcGhlciwgImNpcGhlcnRleHQ6ICAgICVz
IiwKLSAgICAgICAgICAgICAgICAgICAgc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZyhidWZm
ZXIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVz
dF9jYXNlLT5wbGFpbnRleHRfbGVuZ3RoX29jdGV0cykpOworICAgICAgICAgICAgICAgICAgICBz
cnRwX29jdGV0X3N0cmluZ19oZXhfc3RyaW5nKAorICAgICAgICAgICAgICAgICAgICAgICAgYnVm
ZmVyLCB0ZXN0X2Nhc2UtPnBsYWludGV4dF9sZW5ndGhfb2N0ZXRzKSk7CiAKICAgICAgICAgLyog
c2V0IHRoZSBpbml0aWFsaXphdGlvbiB2ZWN0b3IgKi8KLSAgICAgICAgc3RhdHVzID0gc3J0cF9j
aXBoZXJfc2V0X2l2KGMsICh1aW50OF90Kil0ZXN0X2Nhc2UtPmlkeCwgc3J0cF9kaXJlY3Rpb25f
ZGVjcnlwdCk7CisgICAgICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3NldF9pdihjLCAodWludDhf
dCAqKXRlc3RfY2FzZS0+aWR4LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
c3J0cF9kaXJlY3Rpb25fZGVjcnlwdCk7CiAgICAgICAgIGlmIChzdGF0dXMpIHsKICAgICAgICAg
ICAgIHNydHBfY2lwaGVyX2RlYWxsb2MoYyk7CiAgICAgICAgICAgICByZXR1cm4gc3RhdHVzOwog
ICAgICAgICB9CiAKLSAgICAgICAgaWYgKGMtPmFsZ29yaXRobSA9PSBTUlRQX0FFU19HQ01fMTI4
IHx8IGMtPmFsZ29yaXRobSA9PSBTUlRQX0FFU19HQ01fMjU2KSB7CisgICAgICAgIGlmIChjLT5h
bGdvcml0aG0gPT0gU1JUUF9BRVNfR0NNXzEyOCB8fAorICAgICAgICAgICAgYy0+YWxnb3JpdGht
ID09IFNSVFBfQUVTX0dDTV8yNTYpIHsKICAgICAgICAgICAgIC8qCiAgICAgICAgICAgICAgKiBT
ZXQgdGhlIEFBRAogICAgICAgICAgICAgICovCi0gICAgICAgICAgICBzdGF0dXMgPSBzcnRwX2Np
cGhlcl9zZXRfYWFkKGMsIHRlc3RfY2FzZS0+YWFkLCB0ZXN0X2Nhc2UtPmFhZF9sZW5ndGhfb2N0
ZXRzKTsKKyAgICAgICAgICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3NldF9hYWQoYywgdGVzdF9j
YXNlLT5hYWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRlc3Rf
Y2FzZS0+YWFkX2xlbmd0aF9vY3RldHMpOwogICAgICAgICAgICAgaWYgKHN0YXR1cykgewogICAg
ICAgICAgICAgICAgIHNydHBfY2lwaGVyX2RlYWxsb2MoYyk7CiAgICAgICAgICAgICAgICAgcmV0
dXJuIHN0YXR1czsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGRlYnVnX3ByaW50KHNydHBf
bW9kX2NpcGhlciwgIkFBRDogICAgJXMiLAotICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF9v
Y3RldF9zdHJpbmdfaGV4X3N0cmluZyh0ZXN0X2Nhc2UtPmFhZCwKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVzdF9jYXNlLT5hYWRfbGVuZ3Ro
X29jdGV0cykpOworICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF9vY3RldF9zdHJpbmdfaGV4
X3N0cmluZygKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0X2Nhc2UtPmFhZCwgdGVz
dF9jYXNlLT5hYWRfbGVuZ3RoX29jdGV0cykpOwogICAgICAgICB9CiAKICAgICAgICAgLyogZGVj
cnlwdCAqLwpAQCAtMzg0LDggKzQwNSw4IEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfY2lwaGVy
X3R5cGVfdGVzdCAoY29uc3Qgc3J0cF9jaXBoZXJfdHlwZV90ICpjdCwgY29uc3Qgc3J0CiAgICAg
ICAgIH0KIAogICAgICAgICBkZWJ1Z19wcmludChzcnRwX21vZF9jaXBoZXIsICJwbGFpbnRleHQ6
ICAgJXMiLAotICAgICAgICAgICAgICAgICAgICBzcnRwX29jdGV0X3N0cmluZ19oZXhfc3RyaW5n
KGJ1ZmZlciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB0ZXN0X2Nhc2UtPnBsYWludGV4dF9sZW5ndGhfb2N0ZXRzKSk7CisgICAgICAgICAgICAgICAg
ICAgIHNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcoCisgICAgICAgICAgICAgICAgICAgICAg
ICBidWZmZXIsIHRlc3RfY2FzZS0+cGxhaW50ZXh0X2xlbmd0aF9vY3RldHMpKTsKIAogICAgICAg
ICAvKiBjb21wYXJlIHRoZSByZXN1bHRpbmcgcGxhaW50ZXh0IHdpdGggdGhhdCBpbiB0aGUgdGVz
dCBjYXNlICovCiAgICAgICAgIGlmIChsZW4gIT0gdGVzdF9jYXNlLT5wbGFpbnRleHRfbGVuZ3Ro
X29jdGV0cykgewpAQCAtMzkzLDIxICs0MTQsMjEgQEAgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9j
aXBoZXJfdHlwZV90ZXN0IChjb25zdCBzcnRwX2NpcGhlcl90eXBlX3QgKmN0LCBjb25zdCBzcnQK
ICAgICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYWxnb19mYWlsOwogICAgICAgICB9
CiAgICAgICAgIHN0YXR1cyA9IHNydHBfZXJyX3N0YXR1c19vazsKLSAgICAgICAgZm9yIChpID0g
MDsgaSA8IHRlc3RfY2FzZS0+cGxhaW50ZXh0X2xlbmd0aF9vY3RldHM7IGkrKykgewotICAgICAg
ICAgICAgaWYgKGJ1ZmZlcltpXSAhPSB0ZXN0X2Nhc2UtPnBsYWludGV4dFtpXSkgeworICAgICAg
ICBmb3IgKGsgPSAwOyBrIDwgdGVzdF9jYXNlLT5wbGFpbnRleHRfbGVuZ3RoX29jdGV0czsgaysr
KSB7CisgICAgICAgICAgICBpZiAoYnVmZmVyW2tdICE9IHRlc3RfY2FzZS0+cGxhaW50ZXh0W2td
KSB7CiAgICAgICAgICAgICAgICAgc3RhdHVzID0gc3J0cF9lcnJfc3RhdHVzX2FsZ29fZmFpbDsK
ICAgICAgICAgICAgICAgICBkZWJ1Z19wcmludChzcnRwX21vZF9jaXBoZXIsICJ0ZXN0IGNhc2Ug
JWQgZmFpbGVkIiwgY2FzZV9udW0pOwotICAgICAgICAgICAgICAgIGRlYnVnX3ByaW50KHNydHBf
bW9kX2NpcGhlciwgIihmYWlsdXJlIGF0IGJ5dGUgJWQpIiwgaSk7CisgICAgICAgICAgICAgICAg
ZGVidWdfcHJpbnQoc3J0cF9tb2RfY2lwaGVyLCAiKGZhaWx1cmUgYXQgYnl0ZSAldSkiLCBrKTsK
ICAgICAgICAgICAgIH0KICAgICAgICAgfQogICAgICAgICBpZiAoc3RhdHVzKSB7Ci0KICAgICAg
ICAgICAgIGRlYnVnX3ByaW50KHNydHBfbW9kX2NpcGhlciwgInAgY29tcHV0ZWQ6ICVzIiwKLSAg
ICAgICAgICAgICAgICAgICAgICAgIHNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcoYnVmZmVy
LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAy
ICogdGVzdF9jYXNlLT5wbGFpbnRleHRfbGVuZ3RoX29jdGV0cykpOworICAgICAgICAgICAgICAg
ICAgICAgICAgc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZygKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBidWZmZXIsIDIgKiB0ZXN0X2Nhc2UtPnBsYWludGV4dF9sZW5ndGhfb2N0ZXRz
KSk7CiAgICAgICAgICAgICBkZWJ1Z19wcmludChzcnRwX21vZF9jaXBoZXIsICJwIGV4cGVjdGVk
OiAlcyIsCi0gICAgICAgICAgICAgICAgICAgICAgICBzcnRwX29jdGV0X3N0cmluZ19oZXhfc3Ry
aW5nKHRlc3RfY2FzZS0+cGxhaW50ZXh0LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAyICogdGVzdF9jYXNlLT5wbGFpbnRleHRfbGVuZ3RoX29j
dGV0cykpOworICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0
cmluZygKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0X2Nhc2UtPnBsYWludGV4dCwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAyICogdGVzdF9jYXNlLT5wbGFpbnRleHRfbGVu
Z3RoX29jdGV0cykpOwogCiAgICAgICAgICAgICBzcnRwX2NpcGhlcl9kZWFsbG9jKGMpOwogICAg
ICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19hbGdvX2ZhaWw7CkBAIC00MzEsMTQgKzQ1
MiwxNSBAQCBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NpcGhlcl90eXBlX3Rlc3QgKGNvbnN0IHNy
dHBfY2lwaGVyX3R5cGVfdCAqY3QsIGNvbnN0IHNydAogCiAgICAgLyogYWxsb2NhdGUgY2lwaGVy
LCB1c2luZyBwYXJhbWF0ZXJzIGZyb20gdGhlIGZpcnN0IHRlc3QgY2FzZSAqLwogICAgIHRlc3Rf
Y2FzZSA9IHRlc3RfZGF0YTsKLSAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl90eXBlX2FsbG9jKGN0
LCAmYywgdGVzdF9jYXNlLT5rZXlfbGVuZ3RoX29jdGV0cywgdGVzdF9jYXNlLT50YWdfbGVuZ3Ro
X29jdGV0cyk7CisgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfdHlwZV9hbGxvYyhjdCwgJmMsIHRl
c3RfY2FzZS0+a2V5X2xlbmd0aF9vY3RldHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB0ZXN0X2Nhc2UtPnRhZ19sZW5ndGhfb2N0ZXRzKTsKICAgICBpZiAoc3RhdHVzKSB7
CiAgICAgICAgIHJldHVybiBzdGF0dXM7CiAgICAgfQogCiAgICAgZm9yIChqID0gMDsgaiA8IE5V
TV9SQU5EX1RFU1RTOyBqKyspIHsKLSAgICAgICAgdW5zaWduZWQgbGVuZ3RoOwotICAgICAgICBp
bnQgcGxhaW50ZXh0X2xlbjsKKyAgICAgICAgdW5zaWduZWQgaW50IGxlbmd0aDsKKyAgICAgICAg
dW5zaWduZWQgaW50IHBsYWludGV4dF9sZW47CiAgICAgICAgIHVpbnQ4X3Qga2V5W01BWF9LRVlf
TEVOXTsKICAgICAgICAgdWludDhfdCBpdltNQVhfS0VZX0xFTl07CiAKQEAgLTQ4NSwyNCArNTA3
LDI3IEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfY2lwaGVyX3R5cGVfdGVzdCAoY29uc3Qgc3J0
cF9jaXBoZXJfdHlwZV90ICpjdCwgY29uc3Qgc3J0CiAgICAgICAgIH0KIAogICAgICAgICAvKiBz
ZXQgaW5pdGlhbGl6YXRpb24gdmVjdG9yICovCi0gICAgICAgIHN0YXR1cyA9IHNydHBfY2lwaGVy
X3NldF9pdihjLCAodWludDhfdCopdGVzdF9jYXNlLT5pZHgsIHNydHBfZGlyZWN0aW9uX2VuY3J5
cHQpOworICAgICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9zZXRfaXYoYywgKHVpbnQ4X3QgKil0
ZXN0X2Nhc2UtPmlkeCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNydHBf
ZGlyZWN0aW9uX2VuY3J5cHQpOwogICAgICAgICBpZiAoc3RhdHVzKSB7CiAgICAgICAgICAgICBz
cnRwX2NpcGhlcl9kZWFsbG9jKGMpOwogICAgICAgICAgICAgcmV0dXJuIHN0YXR1czsKICAgICAg
ICAgfQogCi0gICAgICAgIGlmIChjLT5hbGdvcml0aG0gPT0gU1JUUF9BRVNfR0NNXzEyOCB8fCBj
LT5hbGdvcml0aG0gPT0gU1JUUF9BRVNfR0NNXzI1NikgeworICAgICAgICBpZiAoYy0+YWxnb3Jp
dGhtID09IFNSVFBfQUVTX0dDTV8xMjggfHwKKyAgICAgICAgICAgIGMtPmFsZ29yaXRobSA9PSBT
UlRQX0FFU19HQ01fMjU2KSB7CiAgICAgICAgICAgICAvKgogICAgICAgICAgICAgICogU2V0IHRo
ZSBBQUQKICAgICAgICAgICAgICAqLwotICAgICAgICAgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJf
c2V0X2FhZChjLCB0ZXN0X2Nhc2UtPmFhZCwgdGVzdF9jYXNlLT5hYWRfbGVuZ3RoX29jdGV0cyk7
CisgICAgICAgICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9zZXRfYWFkKGMsIHRlc3RfY2FzZS0+
YWFkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0X2Nhc2Ut
PmFhZF9sZW5ndGhfb2N0ZXRzKTsKICAgICAgICAgICAgIGlmIChzdGF0dXMpIHsKICAgICAgICAg
ICAgICAgICBzcnRwX2NpcGhlcl9kZWFsbG9jKGMpOwogICAgICAgICAgICAgICAgIHJldHVybiBz
dGF0dXM7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBkZWJ1Z19wcmludChzcnRwX21vZF9j
aXBoZXIsICJBQUQ6ICAgICVzIiwKLSAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfb2N0ZXRf
c3RyaW5nX2hleF9zdHJpbmcodGVzdF9jYXNlLT5hYWQsCi0gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRlc3RfY2FzZS0+YWFkX2xlbmd0aF9vY3Rl
dHMpKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJp
bmcoCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVzdF9jYXNlLT5hYWQsIHRlc3RfY2Fz
ZS0+YWFkX2xlbmd0aF9vY3RldHMpKTsKICAgICAgICAgfQogCiAgICAgICAgIC8qIGVuY3J5cHQg
YnVmZmVyIHdpdGggY2lwaGVyICovCkBAIC01MTIsNyArNTM3LDggQEAgc3J0cF9lcnJfc3RhdHVz
X3Qgc3J0cF9jaXBoZXJfdHlwZV90ZXN0IChjb25zdCBzcnRwX2NpcGhlcl90eXBlX3QgKmN0LCBj
b25zdCBzcnQKICAgICAgICAgICAgIHNydHBfY2lwaGVyX2RlYWxsb2MoYyk7CiAgICAgICAgICAg
ICByZXR1cm4gc3RhdHVzOwogICAgICAgICB9Ci0gICAgICAgIGlmIChjLT5hbGdvcml0aG0gPT0g
U1JUUF9BRVNfR0NNXzEyOCB8fCBjLT5hbGdvcml0aG0gPT0gU1JUUF9BRVNfR0NNXzI1Nikgewor
ICAgICAgICBpZiAoYy0+YWxnb3JpdGhtID09IFNSVFBfQUVTX0dDTV8xMjggfHwKKyAgICAgICAg
ICAgIGMtPmFsZ29yaXRobSA9PSBTUlRQX0FFU19HQ01fMjU2KSB7CiAgICAgICAgICAgICAvKgog
ICAgICAgICAgICAgICogR2V0IHRoZSBHQ00gdGFnCiAgICAgICAgICAgICAgKi8KQEAgLTUzNSwy
MyArNTYxLDI2IEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfY2lwaGVyX3R5cGVfdGVzdCAoY29u
c3Qgc3J0cF9jaXBoZXJfdHlwZV90ICpjdCwgY29uc3Qgc3J0CiAgICAgICAgICAgICBzcnRwX2Np
cGhlcl9kZWFsbG9jKGMpOwogICAgICAgICAgICAgcmV0dXJuIHN0YXR1czsKICAgICAgICAgfQot
ICAgICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9zZXRfaXYoYywgKHVpbnQ4X3QqKXRlc3RfY2Fz
ZS0+aWR4LCBzcnRwX2RpcmVjdGlvbl9kZWNyeXB0KTsKKyAgICAgICAgc3RhdHVzID0gc3J0cF9j
aXBoZXJfc2V0X2l2KGMsICh1aW50OF90ICopdGVzdF9jYXNlLT5pZHgsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBzcnRwX2RpcmVjdGlvbl9kZWNyeXB0KTsKICAgICAgICAg
aWYgKHN0YXR1cykgewogICAgICAgICAgICAgc3J0cF9jaXBoZXJfZGVhbGxvYyhjKTsKICAgICAg
ICAgICAgIHJldHVybiBzdGF0dXM7CiAgICAgICAgIH0KLSAgICAgICAgaWYgKGMtPmFsZ29yaXRo
bSA9PSBTUlRQX0FFU19HQ01fMTI4IHx8IGMtPmFsZ29yaXRobSA9PSBTUlRQX0FFU19HQ01fMjU2
KSB7CisgICAgICAgIGlmIChjLT5hbGdvcml0aG0gPT0gU1JUUF9BRVNfR0NNXzEyOCB8fAorICAg
ICAgICAgICAgYy0+YWxnb3JpdGhtID09IFNSVFBfQUVTX0dDTV8yNTYpIHsKICAgICAgICAgICAg
IC8qCiAgICAgICAgICAgICAgKiBTZXQgdGhlIEFBRAogICAgICAgICAgICAgICovCi0gICAgICAg
ICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9zZXRfYWFkKGMsIHRlc3RfY2FzZS0+YWFkLCB0ZXN0
X2Nhc2UtPmFhZF9sZW5ndGhfb2N0ZXRzKTsKKyAgICAgICAgICAgIHN0YXR1cyA9IHNydHBfY2lw
aGVyX3NldF9hYWQoYywgdGVzdF9jYXNlLT5hYWQsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHRlc3RfY2FzZS0+YWFkX2xlbmd0aF9vY3RldHMpOwogICAgICAgICAg
ICAgaWYgKHN0YXR1cykgewogICAgICAgICAgICAgICAgIHNydHBfY2lwaGVyX2RlYWxsb2MoYyk7
CiAgICAgICAgICAgICAgICAgcmV0dXJuIHN0YXR1czsKICAgICAgICAgICAgIH0KICAgICAgICAg
ICAgIGRlYnVnX3ByaW50KHNydHBfbW9kX2NpcGhlciwgIkFBRDogICAgJXMiLAotICAgICAgICAg
ICAgICAgICAgICAgICAgc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZyh0ZXN0X2Nhc2UtPmFh
ZCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
dGVzdF9jYXNlLT5hYWRfbGVuZ3RoX29jdGV0cykpOworICAgICAgICAgICAgICAgICAgICAgICAg
c3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZygKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB0ZXN0X2Nhc2UtPmFhZCwgdGVzdF9jYXNlLT5hYWRfbGVuZ3RoX29jdGV0cykpOwogICAgICAg
ICB9CiAgICAgICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX2RlY3J5cHQoYywgYnVmZmVyLCAmbGVu
Z3RoKTsKICAgICAgICAgaWYgKHN0YXR1cykgewpAQCAtNTY4LDE4ICs1OTcsMTggQEAgc3J0cF9l
cnJfc3RhdHVzX3Qgc3J0cF9jaXBoZXJfdHlwZV90ZXN0IChjb25zdCBzcnRwX2NpcGhlcl90eXBl
X3QgKmN0LCBjb25zdCBzcnQKICAgICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYWxn
b19mYWlsOwogICAgICAgICB9CiAgICAgICAgIHN0YXR1cyA9IHNydHBfZXJyX3N0YXR1c19vazsK
LSAgICAgICAgZm9yIChpID0gMDsgaSA8IHBsYWludGV4dF9sZW47IGkrKykgewotICAgICAgICAg
ICAgaWYgKGJ1ZmZlcltpXSAhPSBidWZmZXIyW2ldKSB7CisgICAgICAgIGZvciAoayA9IDA7IGsg
PCBwbGFpbnRleHRfbGVuOyBrKyspIHsKKyAgICAgICAgICAgIGlmIChidWZmZXJba10gIT0gYnVm
ZmVyMltrXSkgewogICAgICAgICAgICAgICAgIHN0YXR1cyA9IHNydHBfZXJyX3N0YXR1c19hbGdv
X2ZhaWw7Ci0gICAgICAgICAgICAgICAgZGVidWdfcHJpbnQoc3J0cF9tb2RfY2lwaGVyLCAicmFu
ZG9tIHRlc3QgY2FzZSAlZCBmYWlsZWQiLCBjYXNlX251bSk7Ci0gICAgICAgICAgICAgICAgZGVi
dWdfcHJpbnQoc3J0cF9tb2RfY2lwaGVyLCAiKGZhaWx1cmUgYXQgYnl0ZSAlZCkiLCBpKTsKKyAg
ICAgICAgICAgICAgICBkZWJ1Z19wcmludChzcnRwX21vZF9jaXBoZXIsICJyYW5kb20gdGVzdCBj
YXNlICVkIGZhaWxlZCIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZV9udW0pOwor
ICAgICAgICAgICAgICAgIGRlYnVnX3ByaW50KHNydHBfbW9kX2NpcGhlciwgIihmYWlsdXJlIGF0
IGJ5dGUgJXUpIiwgayk7CiAgICAgICAgICAgICB9CiAgICAgICAgIH0KICAgICAgICAgaWYgKHN0
YXR1cykgewogICAgICAgICAgICAgc3J0cF9jaXBoZXJfZGVhbGxvYyhjKTsKICAgICAgICAgICAg
IHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYWxnb19mYWlsOwogICAgICAgICB9Ci0KICAgICB9CiAK
ICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9kZWFsbG9jKGMpOwpAQCAtNTkwLDEyICs2MTksMTEg
QEAgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jaXBoZXJfdHlwZV90ZXN0IChjb25zdCBzcnRwX2Np
cGhlcl90eXBlX3QgKmN0LCBjb25zdCBzcnQKICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29r
OwogfQogCi0KIC8qCi0gKiBzcnRwX2NpcGhlcl90eXBlX3NlbGZfdGVzdChjdCkgcGVyZm9ybXMg
c3J0cF9jaXBoZXJfdHlwZV90ZXN0IG9uIGN0J3MgaW50ZXJuYWwKLSAqIGxpc3Qgb2YgdGVzdCBk
YXRhLgorICogc3J0cF9jaXBoZXJfdHlwZV9zZWxmX3Rlc3QoY3QpIHBlcmZvcm1zIHNydHBfY2lw
aGVyX3R5cGVfdGVzdCBvbiBjdCdzCisgKiBpbnRlcm5hbCBsaXN0IG9mIHRlc3QgZGF0YS4KICAq
Lwotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jaXBoZXJfdHlwZV9zZWxmX3Rlc3QgKGNvbnN0IHNy
dHBfY2lwaGVyX3R5cGVfdCAqY3QpCitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NpcGhlcl90eXBl
X3NlbGZfdGVzdChjb25zdCBzcnRwX2NpcGhlcl90eXBlX3QgKmN0KQogewogICAgIHJldHVybiBz
cnRwX2NpcGhlcl90eXBlX3Rlc3QoY3QsIGN0LT50ZXN0X2RhdGEpOwogfQpAQCAtNjEwLDcgKzYz
OCw5IEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfY2lwaGVyX3R5cGVfc2VsZl90ZXN0IChjb25z
dCBzcnRwX2NpcGhlcl90eXBlX3QgKmN0KQogICoKICAqIGlmIGFuIGVycm9yIGlzIGVuY291bnRl
cmVkLCB0aGUgdmFsdWUgMCBpcyByZXR1cm5lZAogICovCi11aW50NjRfdCBzcnRwX2NpcGhlcl9i
aXRzX3Blcl9zZWNvbmQgKHNydHBfY2lwaGVyX3QgKmMsIGludCBvY3RldHNfaW5fYnVmZmVyLCBp
bnQgbnVtX3RyaWFscykKK3VpbnQ2NF90IHNydHBfY2lwaGVyX2JpdHNfcGVyX3NlY29uZChzcnRw
X2NpcGhlcl90ICpjLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBv
Y3RldHNfaW5fYnVmZmVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlu
dCBudW1fdHJpYWxzKQogewogICAgIGludCBpOwogICAgIHYxMjhfdCBub25jZTsKQEAgLTYxOCwx
NiArNjQ4LDE2IEBAIHVpbnQ2NF90IHNydHBfY2lwaGVyX2JpdHNfcGVyX3NlY29uZCAoc3J0cF9j
aXBoZXJfdCAqYywgaW50IG9jdGV0c19pbl9idWZmZXIsIGluCiAgICAgdW5zaWduZWQgY2hhciAq
ZW5jX2J1ZjsKICAgICB1bnNpZ25lZCBpbnQgbGVuID0gb2N0ZXRzX2luX2J1ZmZlcjsKIAotICAg
IGVuY19idWYgPSAodW5zaWduZWQgY2hhciopc3J0cF9jcnlwdG9fYWxsb2Mob2N0ZXRzX2luX2J1
ZmZlcik7CisgICAgZW5jX2J1ZiA9ICh1bnNpZ25lZCBjaGFyICopc3J0cF9jcnlwdG9fYWxsb2Mo
b2N0ZXRzX2luX2J1ZmZlcik7CiAgICAgaWYgKGVuY19idWYgPT0gTlVMTCkgewogICAgICAgICBy
ZXR1cm4gMDsgLyogaW5kaWNhdGUgYmFkIHBhcmFtZXRlcnMgYnkgcmV0dXJuaW5nIG51bGwgKi8K
LQogICAgIH0KICAgICAvKiB0aW1lIHJlcGVhdGVkIHRyaWFscyAqLwogICAgIHYxMjhfc2V0X3Rv
X3plcm8oJm5vbmNlKTsKICAgICB0aW1lciA9IGNsb2NrKCk7CiAgICAgZm9yIChpID0gMDsgaSA8
IG51bV90cmlhbHM7IGkrKywgbm9uY2UudjMyWzNdID0gaSkgewotICAgICAgICBpZiAoc3J0cF9j
aXBoZXJfc2V0X2l2KGMsICh1aW50OF90Kikmbm9uY2UsIHNydHBfZGlyZWN0aW9uX2VuY3J5cHQp
ICE9IHNydHBfZXJyX3N0YXR1c19vaykgeworICAgICAgICBpZiAoc3J0cF9jaXBoZXJfc2V0X2l2
KGMsICh1aW50OF90ICopJm5vbmNlLCBzcnRwX2RpcmVjdGlvbl9lbmNyeXB0KSAhPQorICAgICAg
ICAgICAgc3J0cF9lcnJfc3RhdHVzX29rKSB7CiAgICAgICAgICAgICBzcnRwX2NyeXB0b19mcmVl
KGVuY19idWYpOwogICAgICAgICAgICAgcmV0dXJuIDA7CiAgICAgICAgIH0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9j
cnlwdG8vY2lwaGVyL251bGxfY2lwaGVyLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2NpcGhlci9udWxsX2NpcGhlci5jCmlu
ZGV4IDQ2YmYxMTI2ZGEzMGNjMWJlNDRhZDkyMDk2OTZjODc0OTRjNTE1YTYuLjY1OWFkZDBkNDc2
ZDQ2YjNhM2FmZjVlMDI5NWMxYzMyMjE4ZTliNGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vY2lwaGVyL251
bGxfY2lwaGVyLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9jaXBoZXIvbnVsbF9jaXBoZXIuYwpAQCAtNDUsNDUgKzQ1
LDQyIEBACiAgKi8KIAogI2lmZGVmIEhBVkVfQ09ORklHX0gKLSAgICAjaW5jbHVkZSA8Y29uZmln
Lmg+CisjaW5jbHVkZSA8Y29uZmlnLmg+CiAjZW5kaWYKIAogI2luY2x1ZGUgImRhdGF0eXBlcy5o
IgogI2luY2x1ZGUgIm51bGxfY2lwaGVyLmgiCi0jaW5jbHVkZSAiZXJyLmgiICAgICAgICAgICAg
ICAgIC8qIGZvciBzcnRwX2RlYnVnICovCisjaW5jbHVkZSAiZXJyLmgiIC8qIGZvciBzcnRwX2Rl
YnVnICovCiAjaW5jbHVkZSAiYWxsb2MuaCIKKyNpbmNsdWRlICJjaXBoZXJfdHlwZXMuaCIKIAot
LyogdGhlIG51bGxfY2lwaGVyIHVzZXMgdGhlIGNpcGhlciBkZWJ1ZyBtb2R1bGUgICovCi0KLWV4
dGVybiBzcnRwX2RlYnVnX21vZHVsZV90IHNydHBfbW9kX2NpcGhlcjsKLQotc3RhdGljIHNydHBf
ZXJyX3N0YXR1c190IHNydHBfbnVsbF9jaXBoZXJfYWxsb2MgKHNydHBfY2lwaGVyX3QgKipjLCBp
bnQga2V5X2xlbiwgaW50IHRsZW4pCitzdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9udWxs
X2NpcGhlcl9hbGxvYyhzcnRwX2NpcGhlcl90ICoqYywKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGludCBrZXlfbGVuLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IHRsZW4pCiB7CiAgICAgZXh0ZXJuIGNv
bnN0IHNydHBfY2lwaGVyX3R5cGVfdCBzcnRwX251bGxfY2lwaGVyOwogCi0gICAgZGVidWdfcHJp
bnQoc3J0cF9tb2RfY2lwaGVyLAotICAgICAgICAgICAgICAgICJhbGxvY2F0aW5nIGNpcGhlciB3
aXRoIGtleSBsZW5ndGggJWQiLCBrZXlfbGVuKTsKKyAgICBkZWJ1Z19wcmludChzcnRwX21vZF9j
aXBoZXIsICJhbGxvY2F0aW5nIGNpcGhlciB3aXRoIGtleSBsZW5ndGggJWQiLAorICAgICAgICAg
ICAgICAgIGtleV9sZW4pOwogCiAgICAgLyogYWxsb2NhdGUgbWVtb3J5IGEgY2lwaGVyIG9mIHR5
cGUgbnVsbF9jaXBoZXIgKi8KICAgICAqYyA9IChzcnRwX2NpcGhlcl90ICopc3J0cF9jcnlwdG9f
YWxsb2Moc2l6ZW9mKHNydHBfY2lwaGVyX3QpKTsKICAgICBpZiAoKmMgPT0gTlVMTCkgewogICAg
ICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2FsbG9jX2ZhaWw7CiAgICAgfQotICAgIG1lbXNl
dCgqYywgMHgwLCBzaXplb2Yoc3J0cF9jaXBoZXJfdCkpOwogCiAgICAgLyogc2V0IHBvaW50ZXJz
ICovCiAgICAgKCpjKS0+YWxnb3JpdGhtID0gU1JUUF9OVUxMX0NJUEhFUjsKICAgICAoKmMpLT50
eXBlID0gJnNydHBfbnVsbF9jaXBoZXI7Ci0gICAgKCpjKS0+c3RhdGUgPSAodm9pZCAqKSAweDE7
IC8qIFRoZSBudWxsIGNpcGhlciBkb2VzIG5vdCBtYWludGFpbiBzdGF0ZSAqLworICAgICgqYykt
PnN0YXRlID0gKHZvaWQgKikweDE7IC8qIFRoZSBudWxsIGNpcGhlciBkb2VzIG5vdCBtYWludGFp
biBzdGF0ZSAqLwogCiAgICAgLyogc2V0IGtleSBzaXplICovCiAgICAgKCpjKS0+a2V5X2xlbiA9
IGtleV9sZW47CiAKICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwotCiB9CiAKLXN0YXRp
YyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX251bGxfY2lwaGVyX2RlYWxsb2MgKHNydHBfY2lwaGVy
X3QgKmMpCitzdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9udWxsX2NpcGhlcl9kZWFsbG9j
KHNydHBfY2lwaGVyX3QgKmMpCiB7CiAgICAgZXh0ZXJuIGNvbnN0IHNydHBfY2lwaGVyX3R5cGVf
dCBzcnRwX251bGxfY2lwaGVyOwogCkBAIC05NCwyOCArOTEsMzAgQEAgc3RhdGljIHNydHBfZXJy
X3N0YXR1c190IHNydHBfbnVsbF9jaXBoZXJfZGVhbGxvYyAoc3J0cF9jaXBoZXJfdCAqYykKICAg
ICBzcnRwX2NyeXB0b19mcmVlKGMpOwogCiAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsK
LQogfQogCi1zdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9udWxsX2NpcGhlcl9pbml0ICh2
b2lkICpjdiwgY29uc3QgdWludDhfdCAqa2V5KQorc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNy
dHBfbnVsbF9jaXBoZXJfaW5pdCh2b2lkICpjdiwgY29uc3QgdWludDhfdCAqa2V5KQogewotCS8q
IHNydHBfbnVsbF9jaXBoZXJfY3R4X3QgKmMgPSAoc3J0cF9udWxsX2NpcGhlcl9jdHhfdCAqKWN2
OyAqLworICAgIC8qIHNydHBfbnVsbF9jaXBoZXJfY3R4X3QgKmMgPSAoc3J0cF9udWxsX2NpcGhl
cl9jdHhfdCAqKWN2OyAqLwogCiAgICAgZGVidWdfcHJpbnQoc3J0cF9tb2RfY2lwaGVyLCAiaW5p
dGlhbGl6aW5nIG51bGwgY2lwaGVyIiwgTlVMTCk7CiAKICAgICByZXR1cm4gc3J0cF9lcnJfc3Rh
dHVzX29rOwogfQogCi1zdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9udWxsX2NpcGhlcl9z
ZXRfaXYgKHZvaWQgKmN2LCB1aW50OF90ICppdiwgc3J0cF9jaXBoZXJfZGlyZWN0aW9uX3QgZGly
KQorc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfbnVsbF9jaXBoZXJfc2V0X2l2KHZvaWQg
KmN2LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVp
bnQ4X3QgKml2LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHNydHBfY2lwaGVyX2RpcmVjdGlvbl90IGRpcikKIHsKLQkvKiBzcnRwX251bGxfY2lwaGVy
X2N0eF90ICpjID0gKHNydHBfbnVsbF9jaXBoZXJfY3R4X3QgKiljdjsgKi8KKyAgICAvKiBzcnRw
X251bGxfY2lwaGVyX2N0eF90ICpjID0gKHNydHBfbnVsbF9jaXBoZXJfY3R4X3QgKiljdjsgKi8K
ICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQogCi1zdGF0aWMgc3J0cF9lcnJfc3Rh
dHVzX3Qgc3J0cF9udWxsX2NpcGhlcl9lbmNyeXB0ICh2b2lkICpjdiwKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgY2hhciAqYnVmLCB1bnNpZ25l
ZCBpbnQgKmJ5dGVzX3RvX2VuY3IpCitzdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9udWxs
X2NpcGhlcl9lbmNyeXB0KHZvaWQgKmN2LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBjaGFyICpidWYsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCAqYnl0ZXNfdG9f
ZW5jcikKIHsKLQkvKiBzcnRwX251bGxfY2lwaGVyX2N0eF90ICpjID0gKHNydHBfbnVsbF9jaXBo
ZXJfY3R4X3QgKiljdjsgKi8KKyAgICAvKiBzcnRwX251bGxfY2lwaGVyX2N0eF90ICpjID0gKHNy
dHBfbnVsbF9jaXBoZXJfY3R4X3QgKiljdjsgKi8KICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVz
X29rOwogfQogCkBAIC0xMjksMjggKzEyOCwyNiBAQCBzdGF0aWMgY29uc3Qgc3J0cF9jaXBoZXJf
dGVzdF9jYXNlX3Qgc3J0cF9udWxsX2NpcGhlcl90ZXN0XzAgPSB7CiAgICAgTlVMTCwgLyogcGxh
aW50ZXh0ICAgICAgICAgICAgICAgICovCiAgICAgMCwgICAgLyogb2N0ZXRzIGluIHBsYWludGV4
dCAgICAgICovCiAgICAgTlVMTCwgLyogY2lwaGVydGV4dCAgICAgICAgICAgICAgICovCi0gICAg
MCwKLSAgICBOVUxMLAotICAgIDAsCi0gICAgTlVMTCAgICAgICAgICAgICAvKiBwb2ludGVyIHRv
IG5leHQgdGVzdGNhc2UgKi8KKyAgICAwLCAgICAvKiAqLworICAgIE5VTEwsIC8qICovCisgICAg
MCwgICAgLyogKi8KKyAgICBOVUxMICAvKiBwb2ludGVyIHRvIG5leHQgdGVzdGNhc2UgKi8KIH07
CiAKLQogLyoKICAqIG5vdGU6IHRoZSBkZWNyeXB0IGZ1bmN0aW9uIGlzIGlkZW50aWFsIHRvIHRo
ZSBlbmNyeXB0IGZ1bmN0aW9uCiAgKi8KIAogY29uc3Qgc3J0cF9jaXBoZXJfdHlwZV90IHNydHBf
bnVsbF9jaXBoZXIgPSB7Ci0gICAgc3J0cF9udWxsX2NpcGhlcl9hbGxvYywKLSAgICBzcnRwX251
bGxfY2lwaGVyX2RlYWxsb2MsCi0gICAgc3J0cF9udWxsX2NpcGhlcl9pbml0LAotICAgIDAsICAg
ICAgICAgICAgICAgICAgICAgLyogc2V0X2FhZCAqLwotICAgIHNydHBfbnVsbF9jaXBoZXJfZW5j
cnlwdCwKLSAgICBzcnRwX251bGxfY2lwaGVyX2VuY3J5cHQsCi0gICAgc3J0cF9udWxsX2NpcGhl
cl9zZXRfaXYsCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAvKiBnZXRfdGFnICovCi0gICAg
c3J0cF9udWxsX2NpcGhlcl9kZXNjcmlwdGlvbiwKLSAgICAmc3J0cF9udWxsX2NpcGhlcl90ZXN0
XzAsCi0gICAgU1JUUF9OVUxMX0NJUEhFUgorICAgIHNydHBfbnVsbF9jaXBoZXJfYWxsb2MsICAg
ICAgIC8qICovCisgICAgc3J0cF9udWxsX2NpcGhlcl9kZWFsbG9jLCAgICAgLyogKi8KKyAgICBz
cnRwX251bGxfY2lwaGVyX2luaXQsICAgICAgICAvKiAqLworICAgIDAsICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIC8qIHNldF9hYWQgKi8KKyAgICBzcnRwX251bGxfY2lwaGVyX2VuY3J5cHQs
ICAgICAvKiAqLworICAgIHNydHBfbnVsbF9jaXBoZXJfZW5jcnlwdCwgICAgIC8qICovCisgICAg
c3J0cF9udWxsX2NpcGhlcl9zZXRfaXYsICAgICAgLyogKi8KKyAgICAwLCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAvKiBnZXRfdGFnICovCisgICAgc3J0cF9udWxsX2NpcGhlcl9kZXNjcmlw
dGlvbiwgLyogKi8KKyAgICAmc3J0cF9udWxsX2NpcGhlcl90ZXN0XzAsICAgICAvKiAqLworICAg
IFNSVFBfTlVMTF9DSVBIRVIgICAgICAgICAgICAgIC8qICovCiB9OwotCmRpZmYgLS1naXQgYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5
cHRvL2hhc2gvYXV0aC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9oYXNoL2F1dGguYwppbmRleCBjNmNlMzU3NmY3ZGQ1ZTNk
NzJmYmViZmI2MDhjZGU5Y2RjYTkyNTNjLi5mMTkzMjdkYzhlOTk0YTA5OGY4ODFkZWIwZWQ3MmE1
YzRjNTNiYjk0IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2hhc2gvYXV0aC5jCisrKyBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vaGFzaC9h
dXRoLmMKQEAgLTQ0LDMyICs0NCwzMSBAQAogICovCiAKICNpZmRlZiBIQVZFX0NPTkZJR19ICi0g
ICAgI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbmZpZy5oPgogI2VuZGlmCiAKICNp
bmNsdWRlICJhdXRoLmgiCi0jaW5jbHVkZSAiZXJyLmgiICAgICAgICAgICAgICAgIC8qIGZvciBz
cnRwX2RlYnVnICovCi0jaW5jbHVkZSAiZGF0YXR5cGVzLmgiICAgICAgICAgIC8qIGZvciBvY3Rl
dF9zdHJpbmcgKi8KKyNpbmNsdWRlICJlcnIuaCIgICAgICAgLyogZm9yIHNydHBfZGVidWcgKi8K
KyNpbmNsdWRlICJkYXRhdHlwZXMuaCIgLyogZm9yIG9jdGV0X3N0cmluZyAqLwogCiAvKiB0aGUg
ZGVidWcgbW9kdWxlIGZvciBhdXRoZW50aWF0aW9uICovCiAKIHNydHBfZGVidWdfbW9kdWxlX3Qg
c3J0cF9tb2RfYXV0aCA9IHsKLSAgICAwLCAgICAgICAgICAgICAgICAvKiBkZWJ1Z2dpbmcgaXMg
b2ZmIGJ5IGRlZmF1bHQgKi8KLSAgICAiYXV0aCBmdW5jIiAgICAgICAvKiBwcmludGFibGUgbmFt
ZSBmb3IgbW9kdWxlICAgKi8KKyAgICAwLCAgICAgICAgICAvKiBkZWJ1Z2dpbmcgaXMgb2ZmIGJ5
IGRlZmF1bHQgKi8KKyAgICAiYXV0aCBmdW5jIiAvKiBwcmludGFibGUgbmFtZSBmb3IgbW9kdWxl
ICAgKi8KIH07CiAKLQotaW50IHNydHBfYXV0aF9nZXRfa2V5X2xlbmd0aCAoY29uc3Qgc3J0cF9h
dXRoX3QgKmEpCitpbnQgc3J0cF9hdXRoX2dldF9rZXlfbGVuZ3RoKGNvbnN0IHNydHBfYXV0aF90
ICphKQogewogICAgIHJldHVybiBhLT5rZXlfbGVuOwogfQogCi1pbnQgc3J0cF9hdXRoX2dldF90
YWdfbGVuZ3RoIChjb25zdCBzcnRwX2F1dGhfdCAqYSkKK2ludCBzcnRwX2F1dGhfZ2V0X3RhZ19s
ZW5ndGgoY29uc3Qgc3J0cF9hdXRoX3QgKmEpCiB7CiAgICAgcmV0dXJuIGEtPm91dF9sZW47CiB9
CiAKLWludCBzcnRwX2F1dGhfZ2V0X3ByZWZpeF9sZW5ndGggKGNvbnN0IHNydHBfYXV0aF90ICph
KQoraW50IHNydHBfYXV0aF9nZXRfcHJlZml4X2xlbmd0aChjb25zdCBzcnRwX2F1dGhfdCAqYSkK
IHsKICAgICByZXR1cm4gYS0+cHJlZml4X2xlbjsKIH0KQEAgLTgzLDggKzgyLDggQEAgaW50IHNy
dHBfYXV0aF9nZXRfcHJlZml4X2xlbmd0aCAoY29uc3Qgc3J0cF9hdXRoX3QgKmEpCiAvKiBzaG91
bGQgYmUgYmlnIGVub3VnaCBmb3IgbW9zdCBvY2Nhc2lvbnMgKi8KICNkZWZpbmUgU0VMRl9URVNU
X1RBR19CVUZfT0NURVRTIDMyCiAKLXNydHBfZXJyX3N0YXR1c190Ci1zcnRwX2F1dGhfdHlwZV90
ZXN0IChjb25zdCBzcnRwX2F1dGhfdHlwZV90ICphdCwgY29uc3Qgc3J0cF9hdXRoX3Rlc3RfY2Fz
ZV90ICp0ZXN0X2RhdGEpCitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2F1dGhfdHlwZV90ZXN0KGNv
bnN0IHNydHBfYXV0aF90eXBlX3QgKmF0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBjb25zdCBzcnRwX2F1dGhfdGVzdF9jYXNlX3QgKnRlc3RfZGF0YSkKIHsKICAgICBj
b25zdCBzcnRwX2F1dGhfdGVzdF9jYXNlX3QgKnRlc3RfY2FzZSA9IHRlc3RfZGF0YTsKICAgICBz
cnRwX2F1dGhfdCAqYTsKQEAgLTEwNSw3ICsxMDQsNiBAQCBzcnRwX2F1dGhfdHlwZV90ZXN0IChj
b25zdCBzcnRwX2F1dGhfdHlwZV90ICphdCwgY29uc3Qgc3J0cF9hdXRoX3Rlc3RfY2FzZV90ICp0
ZQogCiAgICAgLyogbG9vcCBvdmVyIGFsbCB0ZXN0IGNhc2VzICovCiAgICAgd2hpbGUgKHRlc3Rf
Y2FzZSAhPSBOVUxMKSB7Ci0KICAgICAgICAgLyogY2hlY2sgdGVzdCBjYXNlIHBhcmFtZXRlcnMg
Ki8KICAgICAgICAgaWYgKHRlc3RfY2FzZS0+dGFnX2xlbmd0aF9vY3RldHMgPiBTRUxGX1RFU1Rf
VEFHX0JVRl9PQ1RFVFMpIHsKICAgICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYmFk
X3BhcmFtOwpAQCAtMTEzLDcgKzExMSw3IEBAIHNydHBfYXV0aF90eXBlX3Rlc3QgKGNvbnN0IHNy
dHBfYXV0aF90eXBlX3QgKmF0LCBjb25zdCBzcnRwX2F1dGhfdGVzdF9jYXNlX3QgKnRlCiAKICAg
ICAgICAgLyogYWxsb2NhdGUgYXV0aCAqLwogICAgICAgICBzdGF0dXMgPSBzcnRwX2F1dGhfdHlw
ZV9hbGxvYyhhdCwgJmEsIHRlc3RfY2FzZS0+a2V5X2xlbmd0aF9vY3RldHMsCi0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB0ZXN0X2Nhc2UtPnRhZ19sZW5ndGhfb2N0ZXRzKTsKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVzdF9jYXNlLT50YWdfbGVuZ3Ro
X29jdGV0cyk7CiAgICAgICAgIGlmIChzdGF0dXMpIHsKICAgICAgICAgICAgIHJldHVybiBzdGF0
dXM7CiAgICAgICAgIH0KQEAgLTEyOCw3ICsxMjYsNyBAQCBzcnRwX2F1dGhfdHlwZV90ZXN0IChj
b25zdCBzcnRwX2F1dGhfdHlwZV90ICphdCwgY29uc3Qgc3J0cF9hdXRoX3Rlc3RfY2FzZV90ICp0
ZQogICAgICAgICAvKiB6ZXJvaXplIHRhZyB0aGVuIGNvbXB1dGUgKi8KICAgICAgICAgb2N0ZXRf
c3RyaW5nX3NldF90b196ZXJvKHRhZywgdGVzdF9jYXNlLT50YWdfbGVuZ3RoX29jdGV0cyk7CiAg
ICAgICAgIHN0YXR1cyA9IHNydHBfYXV0aF9jb21wdXRlKGEsIHRlc3RfY2FzZS0+ZGF0YSwKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRlc3RfY2FzZS0+ZGF0YV9sZW5ndGhfb2N0ZXRz
LCB0YWcpOworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0X2Nhc2UtPmRh
dGFfbGVuZ3RoX29jdGV0cywgdGFnKTsKICAgICAgICAgaWYgKHN0YXR1cykgewogICAgICAgICAg
ICAgc3J0cF9hdXRoX2RlYWxsb2MoYSk7CiAgICAgICAgICAgICByZXR1cm4gc3RhdHVzOwpAQCAt
MTM4LDEwICsxMzYsMTEgQEAgc3J0cF9hdXRoX3R5cGVfdGVzdCAoY29uc3Qgc3J0cF9hdXRoX3R5
cGVfdCAqYXQsIGNvbnN0IHNydHBfYXV0aF90ZXN0X2Nhc2VfdCAqdGUKICAgICAgICAgICAgICAg
ICAgICAgc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZyh0ZXN0X2Nhc2UtPmtleSwKICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0X2Nhc2UtPmtl
eV9sZW5ndGhfb2N0ZXRzKSk7CiAgICAgICAgIGRlYnVnX3ByaW50KHNydHBfbW9kX2F1dGgsICJk
YXRhOiAlcyIsCi0gICAgICAgICAgICAgICAgICAgIHNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJp
bmcodGVzdF9jYXNlLT5kYXRhLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHRlc3RfY2FzZS0+ZGF0YV9sZW5ndGhfb2N0ZXRzKSk7Ci0gICAgICAgIGRl
YnVnX3ByaW50KHNydHBfbW9kX2F1dGgsICJ0YWcgY29tcHV0ZWQ6ICVzIiwKLSAgICAgICAgICAg
ICAgICAgICAgc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZyh0YWcsIHRlc3RfY2FzZS0+dGFn
X2xlbmd0aF9vY3RldHMpKTsKKyAgICAgICAgICAgICAgICAgICAgc3J0cF9vY3RldF9zdHJpbmdf
aGV4X3N0cmluZygKKyAgICAgICAgICAgICAgICAgICAgICAgIHRlc3RfY2FzZS0+ZGF0YSwgdGVz
dF9jYXNlLT5kYXRhX2xlbmd0aF9vY3RldHMpKTsKKyAgICAgICAgZGVidWdfcHJpbnQoCisgICAg
ICAgICAgICBzcnRwX21vZF9hdXRoLCAidGFnIGNvbXB1dGVkOiAlcyIsCisgICAgICAgICAgICBz
cnRwX29jdGV0X3N0cmluZ19oZXhfc3RyaW5nKHRhZywgdGVzdF9jYXNlLT50YWdfbGVuZ3RoX29j
dGV0cykpOwogICAgICAgICBkZWJ1Z19wcmludChzcnRwX21vZF9hdXRoLCAidGFnIGV4cGVjdGVk
OiAlcyIsCiAgICAgICAgICAgICAgICAgICAgIHNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmco
dGVzdF9jYXNlLT50YWcsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgdGVzdF9jYXNlLT50YWdfbGVuZ3RoX29jdGV0cykpOwpAQCAtMTc3LDE0ICsxNzYs
MTIgQEAgc3J0cF9hdXRoX3R5cGVfdGVzdCAoY29uc3Qgc3J0cF9hdXRoX3R5cGVfdCAqYXQsIGNv
bnN0IHNydHBfYXV0aF90ZXN0X2Nhc2VfdCAqdGUKICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVz
X29rOwogfQogCi0KIC8qCi0gKiBhdXRoX3R5cGVfc2VsZl90ZXN0KGF0KSBwZXJmb3JtcyBzcnRw
X2F1dGhfdHlwZV90ZXN0IG9uIGF0J3MgaW50ZXJuYWwKKyAqIHNydHBfYXV0aF90eXBlX3NlbGZf
dGVzdChhdCkgcGVyZm9ybXMgc3J0cF9hdXRoX3R5cGVfdGVzdCBvbiBhdCdzIGludGVybmFsCiAg
KiBsaXN0IG9mIHRlc3QgZGF0YS4KICAqLwogCi1zcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2F1dGhf
dHlwZV9zZWxmX3Rlc3QgKGNvbnN0IHNydHBfYXV0aF90eXBlX3QgKmF0KQorc3J0cF9lcnJfc3Rh
dHVzX3Qgc3J0cF9hdXRoX3R5cGVfc2VsZl90ZXN0KGNvbnN0IHNydHBfYXV0aF90eXBlX3QgKmF0
KQogewogICAgIHJldHVybiBzcnRwX2F1dGhfdHlwZV90ZXN0KGF0LCBhdC0+dGVzdF9kYXRhKTsK
IH0KLQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9oYXNoL2htYWNfb3NzbC5jIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9oYXNoL2htYWNf
b3NzbC5jCmluZGV4IGY5OTY0NmI1OGZjNDE3YzBiMmRhZGEzZTQwZGU3OTk5ZGRkNTQ2NGQuLjgx
NDY0MzhiMDUxYmFiYjFiMzYwMzE4ZWQ3YTk2NzhiZDFhOTU2ZDAgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8v
aGFzaC9obWFjX29zc2wuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2hhc2gvaG1hY19vc3NsLmMKQEAgLTQzLDMxICs0
MywzNCBAQAogICovCiAKICNpZmRlZiBIQVZFX0NPTkZJR19ICi0gICAgI2luY2x1ZGUgPGNvbmZp
Zy5oPgorI2luY2x1ZGUgPGNvbmZpZy5oPgogI2VuZGlmCiAKICNpbmNsdWRlICJhdXRoLmgiCiAj
aW5jbHVkZSAiYWxsb2MuaCIKLSNpbmNsdWRlICJlcnIuaCIgICAgICAgICAgICAgICAgLyogZm9y
IHNydHBfZGVidWcgKi8KKyNpbmNsdWRlICJlcnIuaCIgLyogZm9yIHNydHBfZGVidWcgKi8KICNp
bmNsdWRlIDxvcGVuc3NsL2V2cC5oPgogI2luY2x1ZGUgPG9wZW5zc2wvaG1hYy5oPgogCi0jZGVm
aW5lIFNIQTFfRElHRVNUX1NJWkUJCTIwCisjZGVmaW5lIFNIQTFfRElHRVNUX1NJWkUgMjAKIAog
LyogdGhlIGRlYnVnIG1vZHVsZSBmb3IgYXV0aGVudGlhdGlvbiAqLwogCiBzcnRwX2RlYnVnX21v
ZHVsZV90IHNydHBfbW9kX2htYWMgPSB7Ci0gICAgMCwgICAgICAgICAgICAgICAgLyogZGVidWdn
aW5nIGlzIG9mZiBieSBkZWZhdWx0ICovCi0gICAgImhtYWMgc2hhLTEgb3BlbnNzbCIgICAvKiBw
cmludGFibGUgbmFtZSBmb3IgbW9kdWxlICAgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAv
KiBkZWJ1Z2dpbmcgaXMgb2ZmIGJ5IGRlZmF1bHQgKi8KKyAgICAiaG1hYyBzaGEtMSBvcGVuc3Ns
IiAvKiBwcmludGFibGUgbmFtZSBmb3IgbW9kdWxlICAgKi8KIH07CiAKLQotc3RhdGljIHNydHBf
ZXJyX3N0YXR1c190IHNydHBfaG1hY19hbGxvYyAoc3J0cF9hdXRoX3QgKiphLCBpbnQga2V5X2xl
biwgaW50IG91dF9sZW4pCitzdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9obWFjX2FsbG9j
KHNydHBfYXV0aF90ICoqYSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgaW50IGtleV9sZW4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGludCBvdXRfbGVuKQogewogICAgIGV4dGVybiBjb25zdCBzcnRwX2F1dGhfdHlwZV90IHNydHBf
aG1hYzsKIAotICAgIGRlYnVnX3ByaW50KHNydHBfbW9kX2htYWMsICJhbGxvY2F0aW5nIGF1dGgg
ZnVuYyB3aXRoIGtleSBsZW5ndGggJWQiLCBrZXlfbGVuKTsKLSAgICBkZWJ1Z19wcmludChzcnRw
X21vZF9obWFjLCAiICAgICAgICAgICAgICAgICAgICAgICAgICB0YWcgbGVuZ3RoICVkIiwgb3V0
X2xlbik7CisgICAgZGVidWdfcHJpbnQoc3J0cF9tb2RfaG1hYywgImFsbG9jYXRpbmcgYXV0aCBm
dW5jIHdpdGgga2V5IGxlbmd0aCAlZCIsCisgICAgICAgICAgICAgICAga2V5X2xlbik7CisgICAg
ZGVidWdfcHJpbnQoc3J0cF9tb2RfaG1hYywgIiAgICAgICAgICAgICAgICAgICAgICAgICAgdGFn
IGxlbmd0aCAlZCIsCisgICAgICAgICAgICAgICAgb3V0X2xlbik7CiAKICAgICAvKiBjaGVjayBv
dXRwdXQgbGVuZ3RoIC0gc2hvdWxkIGJlIGxlc3MgdGhhbiAyMCBieXRlcyAqLwogICAgIGlmIChv
dXRfbGVuID4gU0hBMV9ESUdFU1RfU0laRSkgewpAQCAtNzYsMjQgKzc5LDI1IEBAIHN0YXRpYyBz
cnRwX2Vycl9zdGF0dXNfdCBzcnRwX2htYWNfYWxsb2MgKHNydHBfYXV0aF90ICoqYSwgaW50IGtl
eV9sZW4sIGludCBvdXRfCiAKIC8qIE9wZW5TU0wgMS4xLjAgbWFkZSBITUFDX0NUWCBhbiBvcGFx
dWUgc3RydWN0dXJlLCB3aGljaCBtdXN0IGJlIGFsbG9jYXRlZAogICAgdXNpbmcgSE1BQ19DVFhf
bmV3LiAgQnV0IHRoaXMgZnVuY3Rpb24gZG9lc24ndCBleGlzdCBpbiBPcGVuU1NMIDEuMC54LiAq
LwotI2lmIE9QRU5TU0xfVkVSU0lPTl9OVU1CRVIgPCAweDEwMTAwMDAwTAorI2lmIE9QRU5TU0xf
VkVSU0lPTl9OVU1CRVIgPCAweDEwMTAwMDAwTCB8fCBMSUJSRVNTTF9WRVJTSU9OX05VTUJFUgog
ICAgIHsKICAgICAgICAgLyogYWxsb2NhdGUgbWVtb3J5IGZvciBhdXRoIGFuZCBITUFDX0NUWCBz
dHJ1Y3R1cmVzICovCi0gICAgICAgIHVpbnQ4X3QqIHBvaW50ZXI7CisgICAgICAgIHVpbnQ4X3Qg
KnBvaW50ZXI7CiAgICAgICAgIEhNQUNfQ1RYICpuZXdfaG1hY19jdHg7Ci0gICAgICAgIHBvaW50
ZXIgPSAodWludDhfdCopc3J0cF9jcnlwdG9fYWxsb2Moc2l6ZW9mKEhNQUNfQ1RYKSArIHNpemVv
ZihzcnRwX2F1dGhfdCkpOworICAgICAgICBwb2ludGVyID0gKHVpbnQ4X3QgKilzcnRwX2NyeXB0
b19hbGxvYyhzaXplb2YoSE1BQ19DVFgpICsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgc2l6ZW9mKHNydHBfYXV0aF90KSk7CiAgICAgICAgIGlmIChwb2lu
dGVyID09IE5VTEwpIHsKICAgICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYWxsb2Nf
ZmFpbDsKICAgICAgICAgfQotICAgICAgICAqYSA9IChzcnRwX2F1dGhfdCopcG9pbnRlcjsKKyAg
ICAgICAgKmEgPSAoc3J0cF9hdXRoX3QgKilwb2ludGVyOwogICAgICAgICAoKmEpLT5zdGF0ZSA9
IHBvaW50ZXIgKyBzaXplb2Yoc3J0cF9hdXRoX3QpOwotICAgICAgICBuZXdfaG1hY19jdHggPSAo
SE1BQ19DVFgqKSgoKmEpLT5zdGF0ZSk7CisgICAgICAgIG5ld19obWFjX2N0eCA9IChITUFDX0NU
WCAqKSgoKmEpLT5zdGF0ZSk7CiAKICAgICAgICAgSE1BQ19DVFhfaW5pdChuZXdfaG1hY19jdHgp
OwogICAgIH0KIAogI2Vsc2UKLSAgICAqYSA9IChzcnRwX2F1dGhfdCopc3J0cF9jcnlwdG9fYWxs
b2Moc2l6ZW9mKHNydHBfYXV0aF90KSk7CisgICAgKmEgPSAoc3J0cF9hdXRoX3QgKilzcnRwX2Ny
eXB0b19hbGxvYyhzaXplb2Yoc3J0cF9hdXRoX3QpKTsKICAgICBpZiAoKmEgPT0gTlVMTCkgewog
ICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2FsbG9jX2ZhaWw7CiAgICAgfQpAQCAtMTE1
LDEzICsxMTksMTMgQEAgc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfaG1hY19hbGxvYyAo
c3J0cF9hdXRoX3QgKiphLCBpbnQga2V5X2xlbiwgaW50IG91dF8KICAgICByZXR1cm4gc3J0cF9l
cnJfc3RhdHVzX29rOwogfQogCi1zdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9obWFjX2Rl
YWxsb2MgKHNydHBfYXV0aF90ICphKQorc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfaG1h
Y19kZWFsbG9jKHNydHBfYXV0aF90ICphKQogewogICAgIEhNQUNfQ1RYICpobWFjX2N0eDsKIAot
ICAgIGhtYWNfY3R4ID0gKEhNQUNfQ1RYKilhLT5zdGF0ZTsKKyAgICBobWFjX2N0eCA9IChITUFD
X0NUWCAqKWEtPnN0YXRlOwogCi0jaWYgT1BFTlNTTF9WRVJTSU9OX05VTUJFUiA8IDB4MTAxMDAw
MDBMCisjaWYgT1BFTlNTTF9WRVJTSU9OX05VTUJFUiA8IDB4MTAxMDAwMDBMIHx8IExJQlJFU1NM
X1ZFUlNJT05fTlVNQkVSCiAgICAgSE1BQ19DVFhfY2xlYW51cChobWFjX2N0eCk7CiAKICAgICAv
KiB6ZXJvaXplIGVudGlyZSBzdGF0ZSovCkBAIC0xNDAsNyArMTQ0LDcgQEAgc3RhdGljIHNydHBf
ZXJyX3N0YXR1c190IHNydHBfaG1hY19kZWFsbG9jIChzcnRwX2F1dGhfdCAqYSkKICAgICByZXR1
cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQogCi1zdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0
cF9obWFjX3N0YXJ0ICh2b2lkICpzdGF0ZXYpCitzdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0
cF9obWFjX3N0YXJ0KHZvaWQgKnN0YXRldikKIHsKICAgICBITUFDX0NUWCAqc3RhdGUgPSAoSE1B
Q19DVFggKilzdGF0ZXY7CiAKQEAgLTE1MCw3ICsxNTQsOSBAQCBzdGF0aWMgc3J0cF9lcnJfc3Rh
dHVzX3Qgc3J0cF9obWFjX3N0YXJ0ICh2b2lkICpzdGF0ZXYpCiAgICAgcmV0dXJuIHNydHBfZXJy
X3N0YXR1c19vazsKIH0KIAotc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfaG1hY19pbml0
ICh2b2lkICpzdGF0ZXYsIGNvbnN0IHVpbnQ4X3QgKmtleSwgaW50IGtleV9sZW4pCitzdGF0aWMg
c3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9obWFjX2luaXQodm9pZCAqc3RhdGV2LAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVpbnQ4X3QgKmtleSwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQga2V5X2xlbikKIHsKICAgICBI
TUFDX0NUWCAqc3RhdGUgPSAoSE1BQ19DVFggKilzdGF0ZXY7CiAKQEAgLTE2MCw3ICsxNjYsOSBA
QCBzdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9obWFjX2luaXQgKHZvaWQgKnN0YXRldiwg
Y29uc3QgdWludDhfdCAqa2V5LCBpbnQgawogICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7
CiB9CiAKLXN0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2htYWNfdXBkYXRlICh2b2lkICpz
dGF0ZXYsIGNvbnN0IHVpbnQ4X3QgKm1lc3NhZ2UsIGludCBtc2dfb2N0ZXRzKQorc3RhdGljIHNy
dHBfZXJyX3N0YXR1c190IHNydHBfaG1hY191cGRhdGUodm9pZCAqc3RhdGV2LAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdWludDhfdCAqbWVzc2FnZSwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBtc2dfb2N0ZXRz
KQogewogICAgIEhNQUNfQ1RYICpzdGF0ZSA9IChITUFDX0NUWCAqKXN0YXRldjsKIApAQCAtMTcz
LDggKzE4MSwxMSBAQCBzdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9obWFjX3VwZGF0ZSAo
dm9pZCAqc3RhdGV2LCBjb25zdCB1aW50OF90ICptZXNzYWdlLAogICAgIHJldHVybiBzcnRwX2Vy
cl9zdGF0dXNfb2s7CiB9CiAKLXN0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2htYWNfY29t
cHV0ZSAodm9pZCAqc3RhdGV2LCBjb25zdCB1aW50OF90ICptZXNzYWdlLAotICAgICAgICAgICAg
ICBpbnQgbXNnX29jdGV0cywgaW50IHRhZ19sZW4sIHVpbnQ4X3QgKnJlc3VsdCkKK3N0YXRpYyBz
cnRwX2Vycl9zdGF0dXNfdCBzcnRwX2htYWNfY29tcHV0ZSh2b2lkICpzdGF0ZXYsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdWludDhfdCAqbWVzc2Fn
ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgbXNnX29j
dGV0cywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgdGFn
X2xlbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50OF90
ICpyZXN1bHQpCiB7CiAgICAgSE1BQ19DVFggKnN0YXRlID0gKEhNQUNfQ1RYICopc3RhdGV2Owog
ICAgIHVpbnQ4X3QgaGFzaF92YWx1ZVtTSEExX0RJR0VTVF9TSVpFXTsKQEAgLTIwNyw1MiArMjE4
LDU2IEBAIHN0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2htYWNfY29tcHV0ZSAodm9pZCAq
c3RhdGV2LCBjb25zdCB1aW50OF90ICptZXNzYWdlCiAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1
c19vazsKIH0KIAotCiAvKiBiZWdpbiB0ZXN0IGNhc2UgMCAqLwotCisvKiBjbGFuZy1mb3JtYXQg
b2ZmICovCiBzdGF0aWMgY29uc3QgdWludDhfdCBzcnRwX2htYWNfdGVzdF9jYXNlXzBfa2V5W1NI
QTFfRElHRVNUX1NJWkVdID0gewogICAgIDB4MGIsIDB4MGIsIDB4MGIsIDB4MGIsIDB4MGIsIDB4
MGIsIDB4MGIsIDB4MGIsCiAgICAgMHgwYiwgMHgwYiwgMHgwYiwgMHgwYiwgMHgwYiwgMHgwYiwg
MHgwYiwgMHgwYiwKICAgICAweDBiLCAweDBiLCAweDBiLCAweDBiCiB9OworLyogY2xhbmctZm9y
bWF0IG9uICovCiAKKy8qIGNsYW5nLWZvcm1hdCBvZmYgKi8KIHN0YXRpYyBjb25zdCB1aW50OF90
IHNydHBfaG1hY190ZXN0X2Nhc2VfMF9kYXRhWzhdID0gewogICAgIDB4NDgsIDB4NjksIDB4MjAs
IDB4NTQsIDB4NjgsIDB4NjUsIDB4NzIsIDB4NjUgLyogIkhpIFRoZXJlIiAqLwogfTsKKy8qIGNs
YW5nLWZvcm1hdCBvbiAqLwogCisvKiBjbGFuZy1mb3JtYXQgb2ZmICovCiBzdGF0aWMgY29uc3Qg
dWludDhfdCBzcnRwX2htYWNfdGVzdF9jYXNlXzBfdGFnW1NIQTFfRElHRVNUX1NJWkVdID0gewog
ICAgIDB4YjYsIDB4MTcsIDB4MzEsIDB4ODYsIDB4NTUsIDB4MDUsIDB4NzIsIDB4NjQsCiAgICAg
MHhlMiwgMHg4YiwgMHhjMCwgMHhiNiwgMHhmYiwgMHgzNywgMHg4YywgMHg4ZSwKICAgICAweGYx
LCAweDQ2LCAweGJlLCAweDAwCiB9OworLyogY2xhbmctZm9ybWF0IG9uICovCiAKIHN0YXRpYyBj
b25zdCBzcnRwX2F1dGhfdGVzdF9jYXNlX3Qgc3J0cF9obWFjX3Rlc3RfY2FzZV8wID0gewotICAg
IHNpemVvZihzcnRwX2htYWNfdGVzdF9jYXNlXzBfa2V5KSwgICAgLyogb2N0ZXRzIGluIGtleSAg
ICAgICAgICAgICovCi0gICAgc3J0cF9obWFjX3Rlc3RfY2FzZV8wX2tleSwgICAgICAgICAgICAv
KiBrZXkgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBzaXplb2Yoc3J0cF9obWFjX3Rlc3Rf
Y2FzZV8wX2RhdGEpLCAgIC8qIG9jdGV0cyBpbiBkYXRhICAgICAgICAgICAqLwotICAgIHNydHBf
aG1hY190ZXN0X2Nhc2VfMF9kYXRhLCAgICAgICAgICAgLyogZGF0YSAgICAgICAgICAgICAgICAg
ICAgICovCi0gICAgc2l6ZW9mKHNydHBfaG1hY190ZXN0X2Nhc2VfMF90YWcpLCAgICAvKiBvY3Rl
dHMgaW4gdGFnICAgICAgICAgICAgKi8KLSAgICBzcnRwX2htYWNfdGVzdF9jYXNlXzBfdGFnLCAg
ICAgICAgICAgIC8qIHRhZyAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIE5VTEwgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIHBvaW50ZXIgdG8gbmV4dCB0ZXN0Y2FzZSAqLworICAg
IHNpemVvZihzcnRwX2htYWNfdGVzdF9jYXNlXzBfa2V5KSwgIC8qIG9jdGV0cyBpbiBrZXkgICAg
ICAgICAgICAqLworICAgIHNydHBfaG1hY190ZXN0X2Nhc2VfMF9rZXksICAgICAgICAgIC8qIGtl
eSAgICAgICAgICAgICAgICAgICAgICAqLworICAgIHNpemVvZihzcnRwX2htYWNfdGVzdF9jYXNl
XzBfZGF0YSksIC8qIG9jdGV0cyBpbiBkYXRhICAgICAgICAgICAqLworICAgIHNydHBfaG1hY190
ZXN0X2Nhc2VfMF9kYXRhLCAgICAgICAgIC8qIGRhdGEgICAgICAgICAgICAgICAgICAgICAqLwor
ICAgIHNpemVvZihzcnRwX2htYWNfdGVzdF9jYXNlXzBfdGFnKSwgIC8qIG9jdGV0cyBpbiB0YWcg
ICAgICAgICAgICAqLworICAgIHNydHBfaG1hY190ZXN0X2Nhc2VfMF90YWcsICAgICAgICAgIC8q
IHRhZyAgICAgICAgICAgICAgICAgICAgICAqLworICAgIE5VTEwgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIC8qIHBvaW50ZXIgdG8gbmV4dCB0ZXN0Y2FzZSAqLwogfTsKIAogLyogZW5k
IHRlc3QgY2FzZSAwICovCiAKLXN0YXRpYyBjb25zdCBjaGFyIHNydHBfaG1hY19kZXNjcmlwdGlv
bltdID0gImhtYWMgc2hhLTEgYXV0aGVudGljYXRpb24gZnVuY3Rpb24iOworc3RhdGljIGNvbnN0
IGNoYXIgc3J0cF9obWFjX2Rlc2NyaXB0aW9uW10gPQorICAgICJobWFjIHNoYS0xIGF1dGhlbnRp
Y2F0aW9uIGZ1bmN0aW9uIjsKIAogLyoKICAqIHNydHBfYXV0aF90eXBlX3QgaG1hYyBpcyB0aGUg
aG1hYyBtZXRhb2JqZWN0CiAgKi8KIAotY29uc3Qgc3J0cF9hdXRoX3R5cGVfdCBzcnRwX2htYWMg
ID0gewotICAgIHNydHBfaG1hY19hbGxvYywKLSAgICBzcnRwX2htYWNfZGVhbGxvYywKLSAgICBz
cnRwX2htYWNfaW5pdCwKLSAgICBzcnRwX2htYWNfY29tcHV0ZSwKLSAgICBzcnRwX2htYWNfdXBk
YXRlLAotICAgIHNydHBfaG1hY19zdGFydCwKLSAgICBzcnRwX2htYWNfZGVzY3JpcHRpb24sCi0g
ICAgJnNydHBfaG1hY190ZXN0X2Nhc2VfMCwKLSAgICBTUlRQX0hNQUNfU0hBMQorY29uc3Qgc3J0
cF9hdXRoX3R5cGVfdCBzcnRwX2htYWMgPSB7CisgICAgc3J0cF9obWFjX2FsbG9jLCAgICAgICAg
LyogKi8KKyAgICBzcnRwX2htYWNfZGVhbGxvYywgICAgICAvKiAqLworICAgIHNydHBfaG1hY19p
bml0LCAgICAgICAgIC8qICovCisgICAgc3J0cF9obWFjX2NvbXB1dGUsICAgICAgLyogKi8KKyAg
ICBzcnRwX2htYWNfdXBkYXRlLCAgICAgICAvKiAqLworICAgIHNydHBfaG1hY19zdGFydCwgICAg
ICAgIC8qICovCisgICAgc3J0cF9obWFjX2Rlc2NyaXB0aW9uLCAgLyogKi8KKyAgICAmc3J0cF9o
bWFjX3Rlc3RfY2FzZV8wLCAvKiAqLworICAgIFNSVFBfSE1BQ19TSEExICAgICAgICAgIC8qICov
CiB9OwotCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2hhc2gvbnVsbF9hdXRoLmMgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2hhc2gvbnVs
bF9hdXRoLmMKaW5kZXggMmQ5OTAyN2NhYWVlZDUwOTI4ZjliMjU0MDgyZjY4YWJjMTg3ZTQ0Yy4u
NTE5NDQxN2NhZjJlMzI0YjIwMTcxNDNiYzBmYTRjZGE5N2I3MjhmZSAxMDA2NDQKLS0tIGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0
by9oYXNoL251bGxfYXV0aC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vaGFzaC9udWxsX2F1dGguYwpAQCAtNDUsMzMg
KzQ1LDM1IEBACiAgKi8KIAogI2lmZGVmIEhBVkVfQ09ORklHX0gKLSAgICAjaW5jbHVkZSA8Y29u
ZmlnLmg+CisjaW5jbHVkZSA8Y29uZmlnLmg+CiAjZW5kaWYKIAogI2luY2x1ZGUgIm51bGxfYXV0
aC5oIgotI2luY2x1ZGUgImVyci5oIiAgICAgICAgICAgICAgICAvKiBmb3Igc3J0cF9kZWJ1ZyAq
LworI2luY2x1ZGUgImVyci5oIiAvKiBmb3Igc3J0cF9kZWJ1ZyAqLwogI2luY2x1ZGUgImFsbG9j
LmgiCisjaW5jbHVkZSAiY2lwaGVyX3R5cGVzLmgiCiAKLS8qIG51bGxfYXV0aCB1c2VzIHRoZSBh
dXRoIGRlYnVnIG1vZHVsZSAqLwotCi1leHRlcm4gc3J0cF9kZWJ1Z19tb2R1bGVfdCBzcnRwX21v
ZF9hdXRoOwotCi1zdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9udWxsX2F1dGhfYWxsb2Mg
KHNydHBfYXV0aF90ICoqYSwgaW50IGtleV9sZW4sIGludCBvdXRfbGVuKQorc3RhdGljIHNydHBf
ZXJyX3N0YXR1c190IHNydHBfbnVsbF9hdXRoX2FsbG9jKHNydHBfYXV0aF90ICoqYSwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQga2V5X2xlbiwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgb3V0X2xlbikK
IHsKICAgICBleHRlcm4gY29uc3Qgc3J0cF9hdXRoX3R5cGVfdCBzcnRwX251bGxfYXV0aDsKICAg
ICB1aW50OF90ICpwb2ludGVyOwogCi0gICAgZGVidWdfcHJpbnQoc3J0cF9tb2RfYXV0aCwgImFs
bG9jYXRpbmcgYXV0aCBmdW5jIHdpdGgga2V5IGxlbmd0aCAlZCIsIGtleV9sZW4pOwotICAgIGRl
YnVnX3ByaW50KHNydHBfbW9kX2F1dGgsICIgICAgICAgICAgICAgICAgICAgICAgICAgIHRhZyBs
ZW5ndGggJWQiLCBvdXRfbGVuKTsKKyAgICBkZWJ1Z19wcmludChzcnRwX21vZF9hdXRoLCAiYWxs
b2NhdGluZyBhdXRoIGZ1bmMgd2l0aCBrZXkgbGVuZ3RoICVkIiwKKyAgICAgICAgICAgICAgICBr
ZXlfbGVuKTsKKyAgICBkZWJ1Z19wcmludChzcnRwX21vZF9hdXRoLCAiICAgICAgICAgICAgICAg
ICAgICAgICAgICB0YWcgbGVuZ3RoICVkIiwKKyAgICAgICAgICAgICAgICBvdXRfbGVuKTsKIAog
ICAgIC8qIGFsbG9jYXRlIG1lbW9yeSBmb3IgYXV0aCBhbmQgc3J0cF9udWxsX2F1dGhfY3R4X3Qg
c3RydWN0dXJlcyAqLwotICAgIHBvaW50ZXIgPSAodWludDhfdCopc3J0cF9jcnlwdG9fYWxsb2Mo
c2l6ZW9mKHNydHBfbnVsbF9hdXRoX2N0eF90KSArIHNpemVvZihzcnRwX2F1dGhfdCkpOworICAg
IHBvaW50ZXIgPSAodWludDhfdCAqKXNydHBfY3J5cHRvX2FsbG9jKHNpemVvZihzcnRwX251bGxf
YXV0aF9jdHhfdCkgKworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHNpemVvZihzcnRwX2F1dGhfdCkpOwogICAgIGlmIChwb2ludGVyID09IE5VTEwpIHsKICAgICAg
ICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19hbGxvY19mYWlsOwogICAgIH0KIAogICAgIC8qIHNl
dCBwb2ludGVycyAqLwotICAgICphID0gKHNydHBfYXV0aF90Kilwb2ludGVyOworICAgICphID0g
KHNydHBfYXV0aF90ICopcG9pbnRlcjsKICAgICAoKmEpLT50eXBlID0gJnNydHBfbnVsbF9hdXRo
OwogICAgICgqYSktPnN0YXRlID0gcG9pbnRlciArIHNpemVvZihzcnRwX2F1dGhfdCk7CiAgICAg
KCphKS0+b3V0X2xlbiA9IG91dF9sZW47CkBAIC04MSwxMiArODMsMTMgQEAgc3RhdGljIHNydHBf
ZXJyX3N0YXR1c190IHNydHBfbnVsbF9hdXRoX2FsbG9jIChzcnRwX2F1dGhfdCAqKmEsIGludCBr
ZXlfbGVuLCBpbnQKICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQogCi1zdGF0aWMg
c3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9udWxsX2F1dGhfZGVhbGxvYyAoc3J0cF9hdXRoX3QgKmEp
CitzdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9udWxsX2F1dGhfZGVhbGxvYyhzcnRwX2F1
dGhfdCAqYSkKIHsKICAgICBleHRlcm4gY29uc3Qgc3J0cF9hdXRoX3R5cGVfdCBzcnRwX251bGxf
YXV0aDsKIAogICAgIC8qIHplcm9pemUgZW50aXJlIHN0YXRlKi8KLSAgICBvY3RldF9zdHJpbmdf
c2V0X3RvX3plcm8oYSwgc2l6ZW9mKHNydHBfbnVsbF9hdXRoX2N0eF90KSArIHNpemVvZihzcnRw
X2F1dGhfdCkpOworICAgIG9jdGV0X3N0cmluZ19zZXRfdG9femVybyhhLCBzaXplb2Yoc3J0cF9u
dWxsX2F1dGhfY3R4X3QpICsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNp
emVvZihzcnRwX2F1dGhfdCkpOwogCiAgICAgLyogZnJlZSBtZW1vcnkgKi8KICAgICBzcnRwX2Ny
eXB0b19mcmVlKGEpOwpAQCAtOTQsNyArOTcsOSBAQCBzdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qg
c3J0cF9udWxsX2F1dGhfZGVhbGxvYyAoc3J0cF9hdXRoX3QgKmEpCiAgICAgcmV0dXJuIHNydHBf
ZXJyX3N0YXR1c19vazsKIH0KIAotc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfbnVsbF9h
dXRoX2luaXQgKHZvaWQgKnN0YXRldiwgY29uc3QgdWludDhfdCAqa2V5LCBpbnQga2V5X2xlbikK
K3N0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX251bGxfYXV0aF9pbml0KHZvaWQgKnN0YXRl
diwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVp
bnQ4X3QgKmtleSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGludCBrZXlfbGVuKQogewogICAgIC8qIHNydHBfbnVsbF9hdXRoX2N0eF90ICpzdGF0ZSA9IChz
cnRwX251bGxfYXV0aF9jdHhfdCAqKXN0YXRldjsgKi8KICAgICAvKiBhY2NlcHQgYW55IGxlbmd0
aCBvZiBrZXksIGFuZCBkbyBub3RoaW5nICovCkBAIC0xMDIsMjMgKzEwNywyNyBAQCBzdGF0aWMg
c3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9udWxsX2F1dGhfaW5pdCAodm9pZCAqc3RhdGV2LCBjb25z
dCB1aW50OF90ICprZXksCiAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0KIAotc3Rh
dGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfbnVsbF9hdXRoX2NvbXB1dGUgKHZvaWQgKnN0YXRl
diwgY29uc3QgdWludDhfdCAqbWVzc2FnZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGludCBtc2dfb2N0ZXRzLCBpbnQgdGFnX2xlbiwgdWludDhfdCAqcmVzdWx0
KQorc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfbnVsbF9hdXRoX2NvbXB1dGUodm9pZCAq
c3RhdGV2LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Y29uc3QgdWludDhfdCAqbWVzc2FnZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGludCBtc2dfb2N0ZXRzLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgaW50IHRhZ19sZW4sCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50OF90ICpyZXN1bHQpCiB7CiAgICAgLyog
c3J0cF9udWxsX2F1dGhfY3R4X3QgKnN0YXRlID0gKHNydHBfbnVsbF9hdXRoX2N0eF90ICopc3Rh
dGV2OyAqLwogCiAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0KIAotc3RhdGljIHNy
dHBfZXJyX3N0YXR1c190IHNydHBfbnVsbF9hdXRoX3VwZGF0ZSAodm9pZCAqc3RhdGV2LCBjb25z
dCB1aW50OF90ICptZXNzYWdlLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBpbnQgbXNnX29jdGV0cykKK3N0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX251bGxf
YXV0aF91cGRhdGUodm9pZCAqc3RhdGV2LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBjb25zdCB1aW50OF90ICptZXNzYWdlLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgbXNnX29jdGV0cykKIHsKICAgICAv
KiBzcnRwX251bGxfYXV0aF9jdHhfdCAqc3RhdGUgPSAoc3J0cF9udWxsX2F1dGhfY3R4X3QgKilz
dGF0ZXY7ICovCiAKICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQogCi1zdGF0aWMg
c3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9udWxsX2F1dGhfc3RhcnQgKHZvaWQgKnN0YXRldikKK3N0
YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX251bGxfYXV0aF9zdGFydCh2b2lkICpzdGF0ZXYp
CiB7CiAgICAgLyogc3J0cF9udWxsX2F1dGhfY3R4X3QgKnN0YXRlID0gKHNydHBfbnVsbF9hdXRo
X2N0eF90ICopc3RhdGV2OyAqLwogCkBAIC0xMzMsMjggKzE0MiwyNyBAQCBzdGF0aWMgc3J0cF9l
cnJfc3RhdHVzX3Qgc3J0cF9udWxsX2F1dGhfc3RhcnQgKHZvaWQgKnN0YXRldikKIC8qIGJlZ2lu
IHRlc3QgY2FzZSAwICovCiAKIHN0YXRpYyBjb25zdCBzcnRwX2F1dGhfdGVzdF9jYXNlX3Qgc3J0
cF9udWxsX2F1dGhfdGVzdF9jYXNlXzAgPSB7Ci0gICAgMCwgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyogb2N0ZXRzIGluIGtleSAgICAgICAgICAgICovCi0gICAgTlVMTCwg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyoga2V5ICAgICAgICAgICAgICAgICAg
ICAgICovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogb2N0
ZXRzIGluIGRhdGEgICAgICAgICAgICovCi0gICAgTlVMTCwgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgLyogZGF0YSAgICAgICAgICAgICAgICAgICAgICovCi0gICAgMCwgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogb2N0ZXRzIGluIHRhZyAgICAgICAgICAg
ICovCi0gICAgTlVMTCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdGFnICAg
ICAgICAgICAgICAgICAgICAgICovCi0gICAgTlVMTCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgLyogcG9pbnRlciB0byBuZXh0IHRlc3RjYXNlICovCisgICAgMCwgICAgLyogb2N0
ZXRzIGluIGtleSAgICAgICAgICAgICovCisgICAgTlVMTCwgLyoga2V5ICAgICAgICAgICAgICAg
ICAgICAgICovCisgICAgMCwgICAgLyogb2N0ZXRzIGluIGRhdGEgICAgICAgICAgICovCisgICAg
TlVMTCwgLyogZGF0YSAgICAgICAgICAgICAgICAgICAgICovCisgICAgMCwgICAgLyogb2N0ZXRz
IGluIHRhZyAgICAgICAgICAgICovCisgICAgTlVMTCwgLyogdGFnICAgICAgICAgICAgICAgICAg
ICAgICovCisgICAgTlVMTCAgLyogcG9pbnRlciB0byBuZXh0IHRlc3RjYXNlICovCiB9OwogCiAv
KiBlbmQgdGVzdCBjYXNlIDAgKi8KIAogc3RhdGljIGNvbnN0IGNoYXIgc3J0cF9udWxsX2F1dGhf
ZGVzY3JpcHRpb25bXSA9ICJudWxsIGF1dGhlbnRpY2F0aW9uIGZ1bmN0aW9uIjsKIAotY29uc3Qg
c3J0cF9hdXRoX3R5cGVfdCBzcnRwX251bGxfYXV0aCAgPSB7Ci0gICAgc3J0cF9udWxsX2F1dGhf
YWxsb2MsCi0gICAgc3J0cF9udWxsX2F1dGhfZGVhbGxvYywKLSAgICBzcnRwX251bGxfYXV0aF9p
bml0LAotICAgIHNydHBfbnVsbF9hdXRoX2NvbXB1dGUsCi0gICAgc3J0cF9udWxsX2F1dGhfdXBk
YXRlLAotICAgIHNydHBfbnVsbF9hdXRoX3N0YXJ0LAotICAgIHNydHBfbnVsbF9hdXRoX2Rlc2Ny
aXB0aW9uLAotICAgICZzcnRwX251bGxfYXV0aF90ZXN0X2Nhc2VfMCwKLSAgICBTUlRQX05VTExf
QVVUSAorY29uc3Qgc3J0cF9hdXRoX3R5cGVfdCBzcnRwX251bGxfYXV0aCA9IHsKKyAgICBzcnRw
X251bGxfYXV0aF9hbGxvYywgICAgICAgIC8qICovCisgICAgc3J0cF9udWxsX2F1dGhfZGVhbGxv
YywgICAgICAvKiAqLworICAgIHNydHBfbnVsbF9hdXRoX2luaXQsICAgICAgICAgLyogKi8KKyAg
ICBzcnRwX251bGxfYXV0aF9jb21wdXRlLCAgICAgIC8qICovCisgICAgc3J0cF9udWxsX2F1dGhf
dXBkYXRlLCAgICAgICAvKiAqLworICAgIHNydHBfbnVsbF9hdXRoX3N0YXJ0LCAgICAgICAgLyog
Ki8KKyAgICBzcnRwX251bGxfYXV0aF9kZXNjcmlwdGlvbiwgIC8qICovCisgICAgJnNydHBfbnVs
bF9hdXRoX3Rlc3RfY2FzZV8wLCAvKiAqLworICAgIFNSVFBfTlVMTF9BVVRIICAgICAgICAgICAg
ICAgLyogKi8KIH07Ci0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vaW5jbHVkZS9hZXMuaCBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vaW5j
bHVkZS9hZXMuaAppbmRleCAwMDcxNjNjNTM0MTY4N2Y2NjhlNjVlYmMyNjU3MGE1NjZhMzQ2NzVj
Li43NzljM2FjNzQ0ZmZhMDEyOWEzNWFjYjA5MzRiYzM3MzFiNDAyZDQxIDEwMDY0NAotLS0gYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5
cHRvL2luY2x1ZGUvYWVzLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9pbmNsdWRlL2Flcy5oCkBAIC03MCw5ICs3MCwx
MSBAQCBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2Flc19leHBhbmRfZGVjcnlwdGlvbl9rZXkoCiAg
ICAgaW50IGtleV9sZW4sCiAgICAgc3J0cF9hZXNfZXhwYW5kZWRfa2V5X3QgKmV4cGFuZGVkX2tl
eSk7CiAKLXZvaWQgc3J0cF9hZXNfZW5jcnlwdCh2MTI4X3QgKnBsYWludGV4dCwgY29uc3Qgc3J0
cF9hZXNfZXhwYW5kZWRfa2V5X3QgKmV4cF9rZXkpOwordm9pZCBzcnRwX2Flc19lbmNyeXB0KHYx
MjhfdCAqcGxhaW50ZXh0LAorICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHNydHBfYWVzX2V4
cGFuZGVkX2tleV90ICpleHBfa2V5KTsKIAotdm9pZCBzcnRwX2Flc19kZWNyeXB0KHYxMjhfdCAq
cGxhaW50ZXh0LCBjb25zdCBzcnRwX2Flc19leHBhbmRlZF9rZXlfdCAqZXhwX2tleSk7Cit2b2lk
IHNydHBfYWVzX2RlY3J5cHQodjEyOF90ICpwbGFpbnRleHQsCisgICAgICAgICAgICAgICAgICAg
ICAgY29uc3Qgc3J0cF9hZXNfZXhwYW5kZWRfa2V5X3QgKmV4cF9rZXkpOwogCiAjaWZkZWYgX19j
cGx1c3BsdXMKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vaW5jbHVkZS9hZXNfZ2NtX29zc2wuaCBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlw
dG8vaW5jbHVkZS9hZXNfZ2NtX29zc2wuaAppbmRleCA4YjBkN2EwMjY0YTZhOTFlMjM5MWY5Njll
NDUyM2NlODFlZmY2OTY2Li5kNWI4M2VlZWIwN2ZhN2Y4NzA4NzFlNTkyY2Q5ZGMwOWU3MGQwMGEx
IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L2xpYnNydHAvY3J5cHRvL2luY2x1ZGUvYWVzX2djbV9vc3NsLmgKKysrIGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9pbmNs
dWRlL2Flc19nY21fb3NzbC5oCkBAIC01NSw5ICs1NSw4IEBACiB0eXBlZGVmIHN0cnVjdCB7CiAg
ICAgaW50IGtleV9zaXplOwogICAgIGludCB0YWdfbGVuOwotICAgIEVWUF9DSVBIRVJfQ1RYKiBj
dHg7CisgICAgRVZQX0NJUEhFUl9DVFggKmN0eDsKICAgICBzcnRwX2NpcGhlcl9kaXJlY3Rpb25f
dCBkaXI7CiB9IHNydHBfYWVzX2djbV9jdHhfdDsKIAogI2VuZGlmIC8qIEFFU19HQ01fT1NTTF9I
ICovCi0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlic3J0cC9jcnlwdG8vaW5jbHVkZS9hZXNfaWNtLmggYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2luY2x1ZGUv
YWVzX2ljbS5oCmluZGV4IDkwZmJkNWUzNWQ5ZmM3ZDc5ZDBlN2JkYTEyM2JmZjZlYjcwOTcxOGIu
LjhkZWQxNTZhMjk2OWM0ZmExZDZkMWIwNWUxODYwODAxMzhiNTYzMDIgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlw
dG8vaW5jbHVkZS9hZXNfaWNtLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9pbmNsdWRlL2Flc19pY20uaApAQCAtOSwy
NiArOSwyNiBAQAogICovCiAKIC8qCi0gKgkKKyAqCiAgKiBDb3B5cmlnaHQgKGMpIDIwMDEtMjAx
NywgQ2lzY28gU3lzdGVtcywgSW5jLgogICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqIAorICoK
ICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCiAgKiBhcmUgbWV0OgotICogCisgKgogICogICBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAogICogICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIuCi0gKiAKKyAqCiAgKiAgIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkg
Zm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKICAqICAgY29weXJpZ2h0IG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKICAqICAgZGlzY2xhaW1lciBp
biB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkCiAgKiAg
IHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqIAorICoKICAqICAgTmVpdGhlciB0aGUgbmFtZSBv
ZiB0aGUgQ2lzY28gU3lzdGVtcywgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwogICogICBjb250
cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2
ZWQKICAqICAgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRl
biBwZXJtaXNzaW9uLgotICogCisgKgogICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBU
SEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwogICogIkFTIElTIiBBTkQgQU5Z
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKICAqIExJ
TUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTCkBAIC02MCw0ICs2MCwzIEBAIHR5cGVkZWYgc3RydWN0IHsKIH0gc3J0cF9hZXNfaWNt
X2N0eF90OwogCiAjZW5kaWYgLyogQUVTX0lDTV9IICovCi0KZGlmZiAtLWdpdCBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vaW5j
bHVkZS9hZXNfaWNtX29zc2wuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vaW5jbHVkZS9hZXNfaWNtX29zc2wuaAppbmRleCAx
ZGRkZDc1NWZjYTEyODFmOTdkMDc5MWM1NzlmZWQxMzhlYzJjZDRiLi5jNGFhZTM3NmU2ZDczYzZl
YzRjZDcyNGI5OGEyNGFjY2ZlMWQxY2MxIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2luY2x1ZGUvYWVzX2lj
bV9vc3NsLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJzcnRwL2NyeXB0by9pbmNsdWRlL2Flc19pY21fb3NzbC5oCkBAIC01MiwxMSArNTIs
MTAgQEAKICNpbmNsdWRlIDxvcGVuc3NsL2Flcy5oPgogCiB0eXBlZGVmIHN0cnVjdCB7Ci0gICAg
djEyOF90IGNvdW50ZXI7ICAgICAgICAgICAgICAgIC8qIGhvbGRzIHRoZSBjb3VudGVyIHZhbHVl
ICAgICAgICAgICovCi0gICAgdjEyOF90IG9mZnNldDsgICAgICAgICAgICAgICAgIC8qIGluaXRp
YWwgb2Zmc2V0IHZhbHVlICAgICAgICAgICAgICovCisgICAgdjEyOF90IGNvdW50ZXI7IC8qIGhv
bGRzIHRoZSBjb3VudGVyIHZhbHVlICAgICAgICAgICovCisgICAgdjEyOF90IG9mZnNldDsgIC8q
IGluaXRpYWwgb2Zmc2V0IHZhbHVlICAgICAgICAgICAgICovCiAgICAgaW50IGtleV9zaXplOwot
ICAgIEVWUF9DSVBIRVJfQ1RYKiBjdHg7CisgICAgRVZQX0NJUEhFUl9DVFggKmN0eDsKIH0gc3J0
cF9hZXNfaWNtX2N0eF90OwogCiAjZW5kaWYgLyogQUVTX0lDTV9IICovCi0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9j
cnlwdG8vaW5jbHVkZS9hbGxvYy5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9pbmNsdWRlL2FsbG9jLmgKaW5kZXggMGJkMmE5
MDgyMGY5ODRiM2JjMjAzYjcwZmNmOTE4N2E5MzIxMDY4Mi4uMWZjMDQxMDE0ZDhmOGM1ZTBhN2Jm
NmQ2MjRkZjg4ZDU4NzhkM2ZkMiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9pbmNsdWRlL2FsbG9jLmgKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRw
L2NyeXB0by9pbmNsdWRlL2FsbG9jLmgKQEAgLTEsMzIgKzEsMzIgQEAKIC8qCiAgKiBhbGxvYy5o
CiAgKgotICogaW50ZXJmYWNlIHRvIG1lbW9yeSBhbGxvY2F0aW9uIGFuZCBkZWFsbG9jYXRpb24s
IHdpdGggb3B0aW9uYWwgZGVidWdnaW5nIAorICogaW50ZXJmYWNlIHRvIG1lbW9yeSBhbGxvY2F0
aW9uIGFuZCBkZWFsbG9jYXRpb24sIHdpdGggb3B0aW9uYWwgZGVidWdnaW5nCiAgKgogICogRGF2
aWQgQS4gTWNHcmV3CiAgKiBDaXNjbyBTeXN0ZW1zLCBJbmMuCiAgKi8KIC8qCi0gKgkKKyAqCiAg
KiBDb3B5cmlnaHQgKGMpIDIwMDEtMjAxNyBDaXNjbyBTeXN0ZW1zLCBJbmMuCiAgKiBBbGwgcmln
aHRzIHJlc2VydmVkLgotICogCisgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKICAqIGFy
ZSBtZXQ6Ci0gKiAKKyAqCiAgKiAgIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0
IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CiAgKiAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIAorICoKICAqICAgUmVk
aXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQogICog
ICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZwogICogICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBt
YXRlcmlhbHMgcHJvdmlkZWQKICAqICAgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICogCisgKgog
ICogICBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBDaXNjbyBTeXN0ZW1zLCBJbmMuIG5vciB0aGUg
bmFtZXMgb2YgaXRzCiAgKiAgIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9y
IHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZAogICogICBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91
dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0gKiAKKyAqCiAgKiBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVU
T1JTCiAgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElO
Q0xVRElORywgQlVUIE5PVAogICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBP
RiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKQEAgLTQyLDcgKzQyLDYgQEAKICAqCiAgKi8K
IAotCiAjaWZuZGVmIENSWVBUT19BTExPQ19ICiAjZGVmaW5lIENSWVBUT19BTExPQ19ICiAKQEAg
LTUyLDggKzUxLDIyIEBACiBleHRlcm4gIkMiIHsKICNlbmRpZgogCi12b2lkICogc3J0cF9jcnlw
dG9fYWxsb2Moc2l6ZV90IHNpemUpOworLyoKKyAqIHNydHBfY3J5cHRvX2FsbG9jCisgKgorICog
QWxsb2NhdGVzIGEgYmxvY2sgb2YgbWVtb3J5ICBvZiBnaXZlbiBzaXplLiBUaGUgbWVtb3J5IHdp
bGwgYmUKKyAqIGluaXRpYWxpemVkIHRvIHplcm8ncy4gRnJlZSB0aGUgbWVtb3J5IHdpdGggYSBj
YWxsIHRvIHNydHBfY3J5cHRvX2ZyZWUuCisgKgorICogcmV0dXJucyBwb2ludGVyIHRvIG1lbW9y
eSBvbiBzdWNjZXNzIG9yIGVsc2UgTlVMTAorICovCit2b2lkICpzcnRwX2NyeXB0b19hbGxvYyhz
aXplX3Qgc2l6ZSk7CiAKKy8qCisgKiBzcnRwX2NyeXB0b19mcmVlCisgKgorICogRnJlZXMgdGhl
IGJsb2NrIG9mIG1lbW9yeSAgcHRyIHByZXZpb3VzbHkgIGFsbG9jYXRlZCB3aXRoCisgKiBzcnRw
X2NyeXB0b19hbGxvYworICovCiB2b2lkIHNydHBfY3J5cHRvX2ZyZWUodm9pZCAqcHRyKTsKIAog
I2lmZGVmIF9fY3BsdXNwbHVzCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2luY2x1ZGUvYXV0aC5oIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0
by9pbmNsdWRlL2F1dGguaAppbmRleCA3ODcwYjI5NDUwZjlhZGU5OGQ4NmRmODFhMWQzZTg2MmYy
YTQ3YjRkLi43NzRlYTE2ODdiYjhkZWUwMjViNzgyMTE0MDBjZmRiYWU0M2Q4MzJlIDEwMDY0NAot
LS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNy
dHAvY3J5cHRvL2luY2x1ZGUvYXV0aC5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vaW5jbHVkZS9hdXRoLmgKQEAgLTQ3
LDQ2ICs0Nyw1MSBAQAogI2RlZmluZSBTUlRQX0FVVEhfSAogCiAjaW5jbHVkZSAic3J0cC5oIgot
I2luY2x1ZGUgImNyeXB0b190eXBlcy5oIiAgICAgICAvKiBmb3IgdmFsdWVzIG9mIGF1dGhfdHlw
ZV9pZF90ICovCisjaW5jbHVkZSAiY3J5cHRvX3R5cGVzLmgiIC8qIGZvciB2YWx1ZXMgb2YgYXV0
aF90eXBlX2lkX3QgKi8KIAogI2lmZGVmIF9fY3BsdXNwbHVzCiBleHRlcm4gIkMiIHsKICNlbmRp
ZgogCiB0eXBlZGVmIGNvbnN0IHN0cnVjdCBzcnRwX2F1dGhfdHlwZV90ICpzcnRwX2F1dGhfdHlw
ZV9wb2ludGVyOwotdHlwZWRlZiBzdHJ1Y3Qgc3J0cF9hdXRoX3QgICAgICAqc3J0cF9hdXRoX3Bv
aW50ZXJfdDsKK3R5cGVkZWYgc3RydWN0IHNydHBfYXV0aF90ICpzcnRwX2F1dGhfcG9pbnRlcl90
OwogCi10eXBlZGVmIHNydHBfZXJyX3N0YXR1c190ICgqc3J0cF9hdXRoX2FsbG9jX2Z1bmMpCi0g
ICAgKHNydHBfYXV0aF9wb2ludGVyX3QgKmFwLCBpbnQga2V5X2xlbiwgaW50IG91dF9sZW4pOwor
dHlwZWRlZiBzcnRwX2Vycl9zdGF0dXNfdCAoKnNydHBfYXV0aF9hbGxvY19mdW5jKShzcnRwX2F1
dGhfcG9pbnRlcl90ICphcCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgaW50IGtleV9sZW4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGludCBvdXRfbGVuKTsKIAotdHlwZWRlZiBzcnRwX2Vycl9zdGF0
dXNfdCAoKnNydHBfYXV0aF9pbml0X2Z1bmMpCi0gICAgKHZvaWQgKnN0YXRlLCBjb25zdCB1aW50
OF90ICprZXksIGludCBrZXlfbGVuKTsKK3R5cGVkZWYgc3J0cF9lcnJfc3RhdHVzX3QgKCpzcnRw
X2F1dGhfaW5pdF9mdW5jKSh2b2lkICpzdGF0ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB1aW50OF90ICprZXksCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IGtleV9sZW4pOwogCiB0eXBl
ZGVmIHNydHBfZXJyX3N0YXR1c190ICgqc3J0cF9hdXRoX2RlYWxsb2NfZnVuYykoc3J0cF9hdXRo
X3BvaW50ZXJfdCBhcCk7CiAKLXR5cGVkZWYgc3J0cF9lcnJfc3RhdHVzX3QgKCpzcnRwX2F1dGhf
Y29tcHV0ZV9mdW5jKQotICAgICh2b2lkICpzdGF0ZSwgY29uc3QgdWludDhfdCAqYnVmZmVyLCBp
bnQgb2N0ZXRzX3RvX2F1dGgsCi0gICAgaW50IHRhZ19sZW4sIHVpbnQ4X3QgKnRhZyk7Cit0eXBl
ZGVmIHNydHBfZXJyX3N0YXR1c190ICgqc3J0cF9hdXRoX2NvbXB1dGVfZnVuYykodm9pZCAqc3Rh
dGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Y29uc3QgdWludDhfdCAqYnVmZmVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGludCBvY3RldHNfdG9fYXV0aCwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgdGFnX2xlbiwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50OF90ICp0YWcp
OwogCi10eXBlZGVmIHNydHBfZXJyX3N0YXR1c190ICgqc3J0cF9hdXRoX3VwZGF0ZV9mdW5jKQot
ICAgICh2b2lkICpzdGF0ZSwgY29uc3QgdWludDhfdCAqYnVmZmVyLCBpbnQgb2N0ZXRzX3RvX2F1
dGgpOwordHlwZWRlZiBzcnRwX2Vycl9zdGF0dXNfdCAoKnNydHBfYXV0aF91cGRhdGVfZnVuYyko
dm9pZCAqc3RhdGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBjb25zdCB1aW50OF90ICpidWZmZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgb2N0ZXRzX3RvX2F1dGgpOwogCiB0eXBlZGVm
IHNydHBfZXJyX3N0YXR1c190ICgqc3J0cF9hdXRoX3N0YXJ0X2Z1bmMpKHZvaWQgKnN0YXRlKTsK
IAogLyogc29tZSBzeW50YWN0aWMgc3VnYXIgb24gdGhlc2UgZnVuY3Rpb24gdHlwZXMgKi8KLSNk
ZWZpbmUgc3J0cF9hdXRoX3R5cGVfYWxsb2MoYXQsIGEsIGtsZW4sIG91dGxlbikgICAgICAgICAg
ICAgICAgICAgICAgICBcCisjZGVmaW5lIHNydHBfYXV0aF90eXBlX2FsbG9jKGF0LCBhLCBrbGVu
LCBvdXRsZW4pICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgICgoYXQpLT5hbGxv
YygoYSksIChrbGVuKSwgKG91dGxlbikpKQogCi0jZGVmaW5lIHNydHBfYXV0aF9pbml0KGEsIGtl
eSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorI2RlZmluZSBz
cnRwX2F1dGhfaW5pdChhLCBrZXkpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFwKICAgICAoKChhKS0+dHlwZSktPmluaXQoKGEpLT5zdGF0ZSwgKGtleSks
ICgoYSktPmtleV9sZW4pKSkKIAotI2RlZmluZSBzcnRwX2F1dGhfY29tcHV0ZShhLCBidWYsIGxl
biwgcmVzKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyNkZWZpbmUgc3J0cF9hdXRo
X2NvbXB1dGUoYSwgYnVmLCBsZW4sIHJlcykgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBcCiAgICAgKCgoYSktPnR5cGUpLT5jb21wdXRlKChhKS0+c3RhdGUsIChidWYpLCAobGVu
KSwgKGEpLT5vdXRfbGVuLCAocmVzKSkpCiAKLSNkZWZpbmUgc3J0cF9hdXRoX3VwZGF0ZShhLCBi
dWYsIGxlbikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisjZGVmaW5lIHNy
dHBfYXV0aF91cGRhdGUoYSwgYnVmLCBsZW4pICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgXAogICAgICgoKGEpLT50eXBlKS0+dXBkYXRlKChhKS0+c3RhdGUsIChidWYp
LCAobGVuKSkpCiAKLSNkZWZpbmUgc3J0cF9hdXRoX3N0YXJ0KGEpKCgoYSktPnR5cGUpLT5zdGFy
dCgoYSktPnN0YXRlKSkKKyNkZWZpbmUgc3J0cF9hdXRoX3N0YXJ0KGEpICgoKGEpLT50eXBlKS0+
c3RhcnQoKGEpLT5zdGF0ZSkpCiAKICNkZWZpbmUgc3J0cF9hdXRoX2RlYWxsb2MoYykgKCgoYykt
PnR5cGUpLT5kZWFsbG9jKGMpKQogCkBAIC0xMDUsMTMgKzExMCwxNCBAQCBpbnQgc3J0cF9hdXRo
X2dldF9wcmVmaXhfbGVuZ3RoKGNvbnN0IHN0cnVjdCBzcnRwX2F1dGhfdCAqYSk7CiAgKiBmdW5j
dGlvbiBiZWxvdykKICAqLwogdHlwZWRlZiBzdHJ1Y3Qgc3J0cF9hdXRoX3Rlc3RfY2FzZV90IHsK
LSAgICBpbnQga2V5X2xlbmd0aF9vY3RldHM7ICAgICAgICAgICAgICAgICAgICAgICAgLyogb2N0
ZXRzIGluIGtleSAgICAgICAgICAgICovCi0gICAgY29uc3QgdWludDhfdCAqa2V5OyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIGtleSAgICAgICAgICAgICAgICAgICAgICAqLwot
ICAgIGludCBkYXRhX2xlbmd0aF9vY3RldHM7ICAgICAgICAgICAgICAgICAgICAgICAvKiBvY3Rl
dHMgaW4gZGF0YSAgICAgICAgICAgKi8KLSAgICBjb25zdCB1aW50OF90ICpkYXRhOyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgLyogZGF0YSAgICAgICAgICAgICAgICAgICAgICovCi0g
ICAgaW50IHRhZ19sZW5ndGhfb2N0ZXRzOyAgICAgICAgICAgICAgICAgICAgICAgIC8qIG9jdGV0
cyBpbiB0YWcgICAgICAgICAgICAqLwotICAgIGNvbnN0IHVpbnQ4X3QgKnRhZzsgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAvKiB0YWcgICAgICAgICAgICAgICAgICAgICAgKi8KLSAg
ICBjb25zdCBzdHJ1Y3Qgc3J0cF9hdXRoX3Rlc3RfY2FzZV90ICpuZXh0X3Rlc3RfY2FzZTsgLyog
cG9pbnRlciB0byBuZXh0IHRlc3RjYXNlICovCisgICAgaW50IGtleV9sZW5ndGhfb2N0ZXRzOyAg
Lyogb2N0ZXRzIGluIGtleSAgICAgICAgICAgICovCisgICAgY29uc3QgdWludDhfdCAqa2V5OyAg
ICAgLyoga2V5ICAgICAgICAgICAgICAgICAgICAgICovCisgICAgaW50IGRhdGFfbGVuZ3RoX29j
dGV0czsgLyogb2N0ZXRzIGluIGRhdGEgICAgICAgICAgICovCisgICAgY29uc3QgdWludDhfdCAq
ZGF0YTsgICAgLyogZGF0YSAgICAgICAgICAgICAgICAgICAgICovCisgICAgaW50IHRhZ19sZW5n
dGhfb2N0ZXRzOyAgLyogb2N0ZXRzIGluIHRhZyAgICAgICAgICAgICovCisgICAgY29uc3QgdWlu
dDhfdCAqdGFnOyAgICAgLyogdGFnICAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qg
c3RydWN0IHNydHBfYXV0aF90ZXN0X2Nhc2VfdAorICAgICAgICAqbmV4dF90ZXN0X2Nhc2U7IC8q
IHBvaW50ZXIgdG8gbmV4dCB0ZXN0Y2FzZSAqLwogfSBzcnRwX2F1dGhfdGVzdF9jYXNlX3Q7CiAK
IC8qIHNydHBfYXV0aF90eXBlX3QgKi8KQEAgLTEyMiwxNyArMTI4LDE3IEBAIHR5cGVkZWYgc3Ry
dWN0IHNydHBfYXV0aF90eXBlX3QgewogICAgIHNydHBfYXV0aF9jb21wdXRlX2Z1bmMgY29tcHV0
ZTsKICAgICBzcnRwX2F1dGhfdXBkYXRlX2Z1bmMgdXBkYXRlOwogICAgIHNydHBfYXV0aF9zdGFy
dF9mdW5jIHN0YXJ0OwotICAgIGNvbnN0IGNoYXIgICAgICAgICAgICAgICAgKmRlc2NyaXB0aW9u
OwotICAgIGNvbnN0IHNydHBfYXV0aF90ZXN0X2Nhc2VfdCAgICAqdGVzdF9kYXRhOworICAgIGNv
bnN0IGNoYXIgKmRlc2NyaXB0aW9uOworICAgIGNvbnN0IHNydHBfYXV0aF90ZXN0X2Nhc2VfdCAq
dGVzdF9kYXRhOwogICAgIHNydHBfYXV0aF90eXBlX2lkX3QgaWQ7CiB9IHNydHBfYXV0aF90eXBl
X3Q7CiAKIHR5cGVkZWYgc3RydWN0IHNydHBfYXV0aF90IHsKICAgICBjb25zdCBzcnRwX2F1dGhf
dHlwZV90ICp0eXBlOwotICAgIHZvaWQgICAgICAgICpzdGF0ZTsKLSAgICBpbnQgb3V0X2xlbjsg
ICAgICAgICAgICAgICAgICAvKiBsZW5ndGggb2Ygb3V0cHV0IHRhZyBpbiBvY3RldHMgKi8KLSAg
ICBpbnQga2V5X2xlbjsgICAgICAgICAgICAgICAgICAvKiBsZW5ndGggb2Yga2V5IGluIG9jdGV0
cyAgICAgICAgKi8KLSAgICBpbnQgcHJlZml4X2xlbjsgICAgICAgICAgICAgICAvKiBsZW5ndGgg
b2Yga2V5c3RyZWFtIHByZWZpeCAgICAgKi8KKyAgICB2b2lkICpzdGF0ZTsKKyAgICBpbnQgb3V0
X2xlbjsgICAgLyogbGVuZ3RoIG9mIG91dHB1dCB0YWcgaW4gb2N0ZXRzICovCisgICAgaW50IGtl
eV9sZW47ICAgIC8qIGxlbmd0aCBvZiBrZXkgaW4gb2N0ZXRzICAgICAgICAqLworICAgIGludCBw
cmVmaXhfbGVuOyAvKiBsZW5ndGggb2Yga2V5c3RyZWFtIHByZWZpeCAgICAgKi8KIH0gc3J0cF9h
dXRoX3Q7CiAKIC8qCkBAIC0xNDcsOCArMTUzLDggQEAgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9h
dXRoX3R5cGVfc2VsZl90ZXN0KGNvbnN0IHNydHBfYXV0aF90eXBlX3QgKmF0KTsKICAqIHByb3Zp
ZGVkIGluIGFuIGFycmF5IG9mIHZhbHVlcyBvZiBrZXkvbWVzc2FnZS90YWcgdGhhdCBpcyBrbm93
biB0bwogICogYmUgZ29vZAogICovCi1zcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2F1dGhfdHlwZV90
ZXN0KGNvbnN0IHNydHBfYXV0aF90eXBlX3QgKmF0LCAKLQljb25zdCBzcnRwX2F1dGhfdGVzdF9j
YXNlX3QgKnRlc3RfZGF0YSk7CitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2F1dGhfdHlwZV90ZXN0
KGNvbnN0IHNydHBfYXV0aF90eXBlX3QgKmF0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBjb25zdCBzcnRwX2F1dGhfdGVzdF9jYXNlX3QgKnRlc3RfZGF0YSk7CiAKIC8q
CiAgKiBzcnRwX3JlcGxhY2VfYXV0aF90eXBlKGN0LCBpZCkKQEAgLTE1Nyw3ICsxNjMsOCBAQCBz
cnRwX2Vycl9zdGF0dXNfdCBzcnRwX2F1dGhfdHlwZV90ZXN0KGNvbnN0IHNydHBfYXV0aF90eXBl
X3QgKmF0LAogICogd2l0aCBhIG5ldyBvbmUgcGFzc2VkIGluIGV4dGVybmFsbHkuICBUaGUgbmV3
IGF1dGggdHlwZSBtdXN0IHBhc3MgYWxsIHRoZQogICogZXhpc3RpbmcgYXV0aF90eXBlJ3Mgc2Vs
ZiB0ZXN0cyBhcyB3ZWxsIGFzIGl0cyBvd24uCiAgKi8KLXNydHBfZXJyX3N0YXR1c190IHNydHBf
cmVwbGFjZV9hdXRoX3R5cGUoY29uc3Qgc3J0cF9hdXRoX3R5cGVfdCAqY3QsIHNydHBfYXV0aF90
eXBlX2lkX3QgaWQpOworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9yZXBsYWNlX2F1dGhfdHlwZShj
b25zdCBzcnRwX2F1dGhfdHlwZV90ICpjdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgc3J0cF9hdXRoX3R5cGVfaWRfdCBpZCk7CiAKICNpZmRlZiBfX2NwbHVzcGx1
cwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9pbmNsdWRlL2NpcGhlci5oIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9pbmNsdWRlL2Np
cGhlci5oCmluZGV4IGQ1NDRiMTIwNDVjY2I0MTUwZDUwNmQ5NTkxZDc1MDQyNmQyYzIxMjMuLjRm
MTRlMzU2MGZkZDAzZDdkZmIxOTQ0YTFmMTZjNzY5NzRmOTE5MzQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8v
aW5jbHVkZS9jaXBoZXIuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2luY2x1ZGUvY2lwaGVyLmgKQEAgLTQyLDEzICs0
MiwxMSBAQAogICoKICAqLwogCi0KICNpZm5kZWYgU1JUUF9DSVBIRVJfSAogI2RlZmluZSBTUlRQ
X0NJUEhFUl9ICiAKICNpbmNsdWRlICJzcnRwLmgiCi0jaW5jbHVkZSAiY3J5cHRvX3R5cGVzLmgi
ICAgICAgIC8qIGZvciB2YWx1ZXMgb2YgY2lwaGVyX3R5cGVfaWRfdCAqLwotCisjaW5jbHVkZSAi
Y3J5cHRvX3R5cGVzLmgiIC8qIGZvciB2YWx1ZXMgb2YgY2lwaGVyX3R5cGVfaWRfdCAqLwogCiAj
aWZkZWYgX19jcGx1c3BsdXMKIGV4dGVybiAiQyIgewpAQCAtNzEsNTEgKzY5LDYwIEBAIHR5cGVk
ZWYgZW51bSB7CiAgKiB0aGUgc3J0cF9jaXBoZXJfcG9pbnRlcl90IGRlZmluaXRpb24gaXMgbmVl
ZGVkCiAgKiBhcyBzcnRwX2NpcGhlcl90IGlzIG5vdCB5ZXQgZGVmaW5lZAogICovCi10eXBlZGVm
IHN0cnVjdCBzcnRwX2NpcGhlcl90ICAgICAgKnNydHBfY2lwaGVyX3BvaW50ZXJfdDsKK3R5cGVk
ZWYgc3RydWN0IHNydHBfY2lwaGVyX3QgKnNydHBfY2lwaGVyX3BvaW50ZXJfdDsKIAogLyoKLSAq
ICBhIHNydHBfY2lwaGVyX2FsbG9jX2Z1bmNfdCBhbGxvY2F0ZXMgKGJ1dCBkb2VzIG5vdCBpbml0
aWFsaXplKSBhIHNydHBfY2lwaGVyX3QKKyAqICBhIHNydHBfY2lwaGVyX2FsbG9jX2Z1bmNfdCBh
bGxvY2F0ZXMgKGJ1dCBkb2VzIG5vdCBpbml0aWFsaXplKSBhCisgKiBzcnRwX2NpcGhlcl90CiAg
Ki8KLXR5cGVkZWYgc3J0cF9lcnJfc3RhdHVzX3QgKCpzcnRwX2NpcGhlcl9hbGxvY19mdW5jX3Qp
Ci0gICAgKHNydHBfY2lwaGVyX3BvaW50ZXJfdCAqY3AsIGludCBrZXlfbGVuLCBpbnQgdGFnX2xl
bik7Cit0eXBlZGVmIHNydHBfZXJyX3N0YXR1c190ICgqc3J0cF9jaXBoZXJfYWxsb2NfZnVuY190
KShzcnRwX2NpcGhlcl9wb2ludGVyX3QgKmNwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IGtleV9sZW4sCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgdGFnX2xlbik7CiAKIC8q
CiAgKiBhIHNydHBfY2lwaGVyX2luaXRfZnVuY190IFtyZS1daW5pdGlhbGl6ZXMgYSBjaXBoZXJf
dCB3aXRoIGEgZ2l2ZW4ga2V5CiAgKi8KLXR5cGVkZWYgc3J0cF9lcnJfc3RhdHVzX3QgKCpzcnRw
X2NpcGhlcl9pbml0X2Z1bmNfdCkKLSAgICAodm9pZCAqc3RhdGUsIGNvbnN0IHVpbnQ4X3QgKmtl
eSk7Cit0eXBlZGVmIHNydHBfZXJyX3N0YXR1c190ICgqc3J0cF9jaXBoZXJfaW5pdF9mdW5jX3Qp
KHZvaWQgKnN0YXRlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBjb25zdCB1aW50OF90ICprZXkpOwogCiAvKiBhIHNydHBfY2lwaGVyX2RlYWxs
b2NfZnVuY190IGRlLWFsbG9jYXRlcyBhIGNpcGhlcl90ICovCi10eXBlZGVmIHNydHBfZXJyX3N0
YXR1c190ICgqc3J0cF9jaXBoZXJfZGVhbGxvY19mdW5jX3QpKHNydHBfY2lwaGVyX3BvaW50ZXJf
dCBjcCk7Cit0eXBlZGVmIHNydHBfZXJyX3N0YXR1c190ICgqc3J0cF9jaXBoZXJfZGVhbGxvY19m
dW5jX3QpKAorICAgIHNydHBfY2lwaGVyX3BvaW50ZXJfdCBjcCk7CiAKIC8qCiAgKiBhIHNydHBf
Y2lwaGVyX3NldF9hYWRfZnVuY190IHByb2Nlc3NlcyB0aGUgQUFEIGRhdGEgZm9yIEFFQUQgY2lw
aGVycwogICovCi10eXBlZGVmIHNydHBfZXJyX3N0YXR1c190ICgqc3J0cF9jaXBoZXJfc2V0X2Fh
ZF9mdW5jX3QpCi0gICAgKHZvaWQgKnN0YXRlLCBjb25zdCB1aW50OF90ICphYWQsIHVpbnQzMl90
IGFhZF9sZW4pOwotCit0eXBlZGVmIHNydHBfZXJyX3N0YXR1c190ICgqc3J0cF9jaXBoZXJfc2V0
X2FhZF9mdW5jX3QpKHZvaWQgKnN0YXRlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB1aW50OF90ICphYWQsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IGFh
ZF9sZW4pOwogCiAvKiBhIHNydHBfY2lwaGVyX2VuY3J5cHRfZnVuY190IGVuY3J5cHRzIGRhdGEg
aW4tcGxhY2UgKi8KLXR5cGVkZWYgc3J0cF9lcnJfc3RhdHVzX3QgKCpzcnRwX2NpcGhlcl9lbmNy
eXB0X2Z1bmNfdCkKLSAgICAodm9pZCAqc3RhdGUsIHVpbnQ4X3QgKmJ1ZmZlciwgdW5zaWduZWQg
aW50ICpvY3RldHNfdG9fZW5jcnlwdCk7Cit0eXBlZGVmIHNydHBfZXJyX3N0YXR1c190ICgqc3J0
cF9jaXBoZXJfZW5jcnlwdF9mdW5jX3QpKAorICAgIHZvaWQgKnN0YXRlLAorICAgIHVpbnQ4X3Qg
KmJ1ZmZlciwKKyAgICB1bnNpZ25lZCBpbnQgKm9jdGV0c190b19lbmNyeXB0KTsKIAogLyogYSBz
cnRwX2NpcGhlcl9kZWNyeXB0X2Z1bmNfdCBkZWNyeXB0cyBkYXRhIGluLXBsYWNlICovCi10eXBl
ZGVmIHNydHBfZXJyX3N0YXR1c190ICgqc3J0cF9jaXBoZXJfZGVjcnlwdF9mdW5jX3QpCi0gICAg
KHZvaWQgKnN0YXRlLCB1aW50OF90ICpidWZmZXIsIHVuc2lnbmVkIGludCAqb2N0ZXRzX3RvX2Rl
Y3J5cHQpOwordHlwZWRlZiBzcnRwX2Vycl9zdGF0dXNfdCAoKnNydHBfY2lwaGVyX2RlY3J5cHRf
ZnVuY190KSgKKyAgICB2b2lkICpzdGF0ZSwKKyAgICB1aW50OF90ICpidWZmZXIsCisgICAgdW5z
aWduZWQgaW50ICpvY3RldHNfdG9fZGVjcnlwdCk7CiAKIC8qCiAgKiBhIHNydHBfY2lwaGVyX3Nl
dF9pdl9mdW5jX3QgZnVuY3Rpb24gc2V0cyB0aGUgY3VycmVudCBpbml0aWFsaXphdGlvbiB2ZWN0
b3IKICAqLwotdHlwZWRlZiBzcnRwX2Vycl9zdGF0dXNfdCAoKnNydHBfY2lwaGVyX3NldF9pdl9m
dW5jX3QpCi0gICAgKHZvaWQgKnN0YXRlLCB1aW50OF90ICppdiwgc3J0cF9jaXBoZXJfZGlyZWN0
aW9uX3QgZGlyZWN0aW9uKTsKK3R5cGVkZWYgc3J0cF9lcnJfc3RhdHVzX3QgKCpzcnRwX2NpcGhl
cl9zZXRfaXZfZnVuY190KSgKKyAgICB2b2lkICpzdGF0ZSwKKyAgICB1aW50OF90ICppdiwKKyAg
ICBzcnRwX2NpcGhlcl9kaXJlY3Rpb25fdCBkaXJlY3Rpb24pOwogCiAvKgogICogYSBjaXBoZXJf
Z2V0X3RhZ19mdW5jX3QgZnVuY3Rpb24gaXMgdXNlZCB0byBnZXQgdGhlIGF1dGhlbnRpY2F0aW9u
CiAgKiB0YWcgdGhhdCB3YXMgY2FsY3VsYXRlZCBieSBhbiBBRUFEIGNpcGhlci4KICAqLwotdHlw
ZWRlZiBzcnRwX2Vycl9zdGF0dXNfdCAoKnNydHBfY2lwaGVyX2dldF90YWdfZnVuY190KQotICAg
ICh2b2lkICpzdGF0ZSwgdWludDhfdCAqdGFnLCB1aW50MzJfdCAqbGVuKTsKLQordHlwZWRlZiBz
cnRwX2Vycl9zdGF0dXNfdCAoKnNydHBfY2lwaGVyX2dldF90YWdfZnVuY190KSh2b2lkICpzdGF0
ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgdWludDhfdCAqdGFnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICB1aW50MzJfdCAqbGVuKTsKIAogLyoKICAqIHNydHBfY2lwaGVyX3Rl
c3RfY2FzZV90IGlzIGEgKGxpc3Qgb2YpIGtleSwgc2FsdCwgcGxhaW50ZXh0LCBjaXBoZXJ0ZXh0
LApAQCAtMTI1LDE3ICsxMzIsMTggQEAgdHlwZWRlZiBzcnRwX2Vycl9zdGF0dXNfdCAoKnNydHBf
Y2lwaGVyX2dldF90YWdfZnVuY190KQogICogKHNlZSB0aGUgc3J0cF9jaXBoZXJfdHlwZV9zZWxm
X3Rlc3QoKSBmdW5jdGlvbiBiZWxvdykKICAqLwogdHlwZWRlZiBzdHJ1Y3Qgc3J0cF9jaXBoZXJf
dGVzdF9jYXNlX3QgewotICAgIGludCBrZXlfbGVuZ3RoX29jdGV0czsgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIG9jdGV0cyBpbiBrZXkgICAgICAgICAgICAqLwotICAgIGNvbnN0IHVpbnQ4
X3QgKmtleTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIGtleSAgICAgICAg
ICAgICAgICAgICAgICAqLwotICAgIHVpbnQ4X3QgKmlkeDsgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIC8qIHBhY2tldCBpbmRleCAgICAgICAgICAgICAqLwotICAgIGludCBwbGFp
bnRleHRfbGVuZ3RoX29jdGV0czsgICAgICAgICAgICAgICAgICAgIC8qIG9jdGV0cyBpbiBwbGFp
bnRleHQgICAgICAqLwotICAgIGNvbnN0IHVpbnQ4X3QgKnBsYWludGV4dDsgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIC8qIHBsYWludGV4dCAgICAgICAgICAgICAgICAqLwotICAgIGludCBj
aXBoZXJ0ZXh0X2xlbmd0aF9vY3RldHM7ICAgICAgICAgICAgICAgICAgIC8qIG9jdGV0cyBpbiBw
bGFpbnRleHQgICAgICAqLwotICAgIGNvbnN0IHVpbnQ4X3QgKmNpcGhlcnRleHQ7ICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIC8qIGNpcGhlcnRleHQgICAgICAgICAgICAgICAqLwotICAgIGlu
dCBhYWRfbGVuZ3RoX29jdGV0czsgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIG9jdGV0cyBp
biBBQUQgICAgICAgICAgICAqLwotICAgIGNvbnN0IHVpbnQ4X3QgKmFhZDsgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIEFBRCAgICAgICAgICAgICAgICAgICAgICAqLwotICAg
IGludCB0YWdfbGVuZ3RoX29jdGV0czsgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIExlbmd0
aCBvZiBBRUFEIHRhZyAgICAgICAqLwotICAgIGNvbnN0IHN0cnVjdCBzcnRwX2NpcGhlcl90ZXN0
X2Nhc2VfdCAqbmV4dF90ZXN0X2Nhc2U7IC8qIHBvaW50ZXIgdG8gbmV4dCB0ZXN0Y2FzZSAqLwor
ICAgIGludCBrZXlfbGVuZ3RoX29jdGV0czsgICAgICAgICAgICAgICAgIC8qIG9jdGV0cyBpbiBr
ZXkgICAgICAgICAgICAqLworICAgIGNvbnN0IHVpbnQ4X3QgKmtleTsgICAgICAgICAgICAgICAg
ICAgIC8qIGtleSAgICAgICAgICAgICAgICAgICAgICAqLworICAgIHVpbnQ4X3QgKmlkeDsgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIHBhY2tldCBpbmRleCAgICAgICAgICAgICAqLworICAg
IHVuc2lnbmVkIGludCBwbGFpbnRleHRfbGVuZ3RoX29jdGV0czsgIC8qIG9jdGV0cyBpbiBwbGFp
bnRleHQgICAgICAqLworICAgIGNvbnN0IHVpbnQ4X3QgKnBsYWludGV4dDsgICAgICAgICAgICAg
IC8qIHBsYWludGV4dCAgICAgICAgICAgICAgICAqLworICAgIHVuc2lnbmVkIGludCBjaXBoZXJ0
ZXh0X2xlbmd0aF9vY3RldHM7IC8qIG9jdGV0cyBpbiBwbGFpbnRleHQgICAgICAqLworICAgIGNv
bnN0IHVpbnQ4X3QgKmNpcGhlcnRleHQ7ICAgICAgICAgICAgIC8qIGNpcGhlcnRleHQgICAgICAg
ICAgICAgICAqLworICAgIGludCBhYWRfbGVuZ3RoX29jdGV0czsgICAgICAgICAgICAgICAgIC8q
IG9jdGV0cyBpbiBBQUQgICAgICAgICAgICAqLworICAgIGNvbnN0IHVpbnQ4X3QgKmFhZDsgICAg
ICAgICAgICAgICAgICAgIC8qIEFBRCAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGludCB0
YWdfbGVuZ3RoX29jdGV0czsgICAgICAgICAgICAgICAgIC8qIExlbmd0aCBvZiBBRUFEIHRhZyAg
ICAgICAqLworICAgIGNvbnN0IHN0cnVjdCBzcnRwX2NpcGhlcl90ZXN0X2Nhc2VfdAorICAgICAg
ICAqbmV4dF90ZXN0X2Nhc2U7IC8qIHBvaW50ZXIgdG8gbmV4dCB0ZXN0Y2FzZSAqLwogfSBzcnRw
X2NpcGhlcl90ZXN0X2Nhc2VfdDsKIAogLyogc3J0cF9jaXBoZXJfdHlwZV90IGRlZmluZXMgdGhl
ICdtZXRhZGF0YScgZm9yIGEgcGFydGljdWxhciBjaXBoZXIgdHlwZSAqLwpAQCAtMTQ4LDggKzE1
Niw4IEBAIHR5cGVkZWYgc3RydWN0IHNydHBfY2lwaGVyX3R5cGVfdCB7CiAgICAgc3J0cF9jaXBo
ZXJfZW5jcnlwdF9mdW5jX3QgZGVjcnlwdDsKICAgICBzcnRwX2NpcGhlcl9zZXRfaXZfZnVuY190
IHNldF9pdjsKICAgICBzcnRwX2NpcGhlcl9nZXRfdGFnX2Z1bmNfdCBnZXRfdGFnOwotICAgIGNv
bnN0IGNoYXIgICAgICAgICAgICAgICAgICAgICAgICpkZXNjcmlwdGlvbjsKLSAgICBjb25zdCBz
cnRwX2NpcGhlcl90ZXN0X2Nhc2VfdCAgICAgICAgICp0ZXN0X2RhdGE7CisgICAgY29uc3QgY2hh
ciAqZGVzY3JpcHRpb247CisgICAgY29uc3Qgc3J0cF9jaXBoZXJfdGVzdF9jYXNlX3QgKnRlc3Rf
ZGF0YTsKICAgICBzcnRwX2NpcGhlcl90eXBlX2lkX3QgaWQ7CiB9IHNydHBfY2lwaGVyX3R5cGVf
dDsKIApAQCAtMTU5LDcgKzE2Nyw3IEBAIHR5cGVkZWYgc3RydWN0IHNydHBfY2lwaGVyX3R5cGVf
dCB7CiAgKi8KIHR5cGVkZWYgc3RydWN0IHNydHBfY2lwaGVyX3QgewogICAgIGNvbnN0IHNydHBf
Y2lwaGVyX3R5cGVfdCAqdHlwZTsKLSAgICB2b2lkICAgICAgICAgICpzdGF0ZTsKKyAgICB2b2lk
ICpzdGF0ZTsKICAgICBpbnQga2V5X2xlbjsKICAgICBpbnQgYWxnb3JpdGhtOwogfSBzcnRwX2Np
cGhlcl90OwpAQCAtMTY3LDcgKzE3NSw2IEBAIHR5cGVkZWYgc3RydWN0IHNydHBfY2lwaGVyX3Qg
ewogLyogc29tZSBib29ra2VlcGluZyBmdW5jdGlvbnMgKi8KIGludCBzcnRwX2NpcGhlcl9nZXRf
a2V5X2xlbmd0aChjb25zdCBzcnRwX2NpcGhlcl90ICpjKTsKIAotCiAvKgogICogc3J0cF9jaXBo
ZXJfdHlwZV9zZWxmX3Rlc3QoKSB0ZXN0cyBhIGNpcGhlciBhZ2FpbnN0IHRlc3QgY2FzZXMgcHJv
dmlkZWQgaW4KICAqIGFuIGFycmF5IG9mIHZhbHVlcyBvZiBrZXkvc3J0cF94dGRfc2VxX251bV90
L3BsYWludGV4dC9jaXBoZXJ0ZXh0CkBAIC0xNzUsMTQgKzE4MiwxNSBAQCBpbnQgc3J0cF9jaXBo
ZXJfZ2V0X2tleV9sZW5ndGgoY29uc3Qgc3J0cF9jaXBoZXJfdCAqYyk7CiAgKi8KIHNydHBfZXJy
X3N0YXR1c190IHNydHBfY2lwaGVyX3R5cGVfc2VsZl90ZXN0KGNvbnN0IHNydHBfY2lwaGVyX3R5
cGVfdCAqY3QpOwogCi0KIC8qCi0gKiBzcnRwX2NpcGhlcl90eXBlX3Rlc3QoKSB0ZXN0cyBhIGNp
cGhlciBhZ2FpbnN0IGV4dGVybmFsIHRlc3QgY2FzZXMgcHJvdmlkZWQgaW4KKyAqIHNydHBfY2lw
aGVyX3R5cGVfdGVzdCgpIHRlc3RzIGEgY2lwaGVyIGFnYWluc3QgZXh0ZXJuYWwgdGVzdCBjYXNl
cyBwcm92aWRlZAorICogaW4KICAqIGFuIGFycmF5IG9mIHZhbHVlcyBvZiBrZXkvc3J0cF94dGRf
c2VxX251bV90L3BsYWludGV4dC9jaXBoZXJ0ZXh0CiAgKiB0aGF0IGlzIGtub3duIHRvIGJlIGdv
b2QKICAqLwotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jaXBoZXJfdHlwZV90ZXN0KGNvbnN0IHNy
dHBfY2lwaGVyX3R5cGVfdCAqY3QsIGNvbnN0IHNydHBfY2lwaGVyX3Rlc3RfY2FzZV90ICp0ZXN0
X2RhdGEpOwotCitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NpcGhlcl90eXBlX3Rlc3QoCisgICAg
Y29uc3Qgc3J0cF9jaXBoZXJfdHlwZV90ICpjdCwKKyAgICBjb25zdCBzcnRwX2NpcGhlcl90ZXN0
X2Nhc2VfdCAqdGVzdF9kYXRhKTsKIAogLyoKICAqIHNydHBfY2lwaGVyX2JpdHNfcGVyX3NlY29u
ZChjLCBsLCB0KSBjb21wdXRlcyAoYW4gZXN0aW1hdGUgb2YpIHRoZQpAQCAtMTk0LDE3ICsyMDIs
MzQgQEAgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jaXBoZXJfdHlwZV90ZXN0KGNvbnN0IHNydHBf
Y2lwaGVyX3R5cGVfdCAqY3QsIGNvbnN0IHNydHAKICAqCiAgKiBpZiBhbiBlcnJvciBpcyBlbmNv
dW50ZXJlZCwgdGhlbiB0aGUgdmFsdWUgMCBpcyByZXR1cm5lZAogICovCi11aW50NjRfdCBzcnRw
X2NpcGhlcl9iaXRzX3Blcl9zZWNvbmQoc3J0cF9jaXBoZXJfdCAqYywgaW50IG9jdGV0c19pbl9i
dWZmZXIsIGludCBudW1fdHJpYWxzKTsKLQotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jaXBoZXJf
dHlwZV9hbGxvYyhjb25zdCBzcnRwX2NpcGhlcl90eXBlX3QgKmN0LCBzcnRwX2NpcGhlcl90ICoq
YywgaW50IGtleV9sZW4sIGludCB0bGVuKTsKK3VpbnQ2NF90IHNydHBfY2lwaGVyX2JpdHNfcGVy
X3NlY29uZChzcnRwX2NpcGhlcl90ICpjLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGludCBvY3RldHNfaW5fYnVmZmVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGludCBudW1fdHJpYWxzKTsKKworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jaXBo
ZXJfdHlwZV9hbGxvYyhjb25zdCBzcnRwX2NpcGhlcl90eXBlX3QgKmN0LAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcnRwX2NpcGhlcl90ICoqYywKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IGtleV9sZW4sCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCB0bGVuKTsKIHNydHBfZXJyX3N0YXR1
c190IHNydHBfY2lwaGVyX2RlYWxsb2Moc3J0cF9jaXBoZXJfdCAqYyk7CiBzcnRwX2Vycl9zdGF0
dXNfdCBzcnRwX2NpcGhlcl9pbml0KHNydHBfY2lwaGVyX3QgKmMsIGNvbnN0IHVpbnQ4X3QgKmtl
eSk7Ci1zcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NpcGhlcl9zZXRfaXYoc3J0cF9jaXBoZXJfdCAq
YywgdWludDhfdCAqaXYsIGludCBkaXJlY3Rpb24pOwotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9j
aXBoZXJfb3V0cHV0KHNydHBfY2lwaGVyX3QgKmMsIHVpbnQ4X3QgKmJ1ZmZlciwgdWludDMyX3Qg
Km51bV9vY3RldHNfdG9fb3V0cHV0KTsgCi1zcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NpcGhlcl9l
bmNyeXB0KHNydHBfY2lwaGVyX3QgKmMsIHVpbnQ4X3QgKmJ1ZmZlciwgdWludDMyX3QgKm51bV9v
Y3RldHNfdG9fb3V0cHV0KTsgCi1zcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NpcGhlcl9kZWNyeXB0
KHNydHBfY2lwaGVyX3QgKmMsIHVpbnQ4X3QgKmJ1ZmZlciwgdWludDMyX3QgKm51bV9vY3RldHNf
dG9fb3V0cHV0KTsgCi1zcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NpcGhlcl9nZXRfdGFnKHNydHBf
Y2lwaGVyX3QgKmMsIHVpbnQ4X3QgKmJ1ZmZlciwgdWludDMyX3QgKnRhZ19sZW4pOwotc3J0cF9l
cnJfc3RhdHVzX3Qgc3J0cF9jaXBoZXJfc2V0X2FhZChzcnRwX2NpcGhlcl90ICpjLCBjb25zdCB1
aW50OF90ICphYWQsIHVpbnQzMl90IGFhZF9sZW4pOworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9j
aXBoZXJfc2V0X2l2KHNydHBfY2lwaGVyX3QgKmMsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgdWludDhfdCAqaXYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgaW50IGRpcmVjdGlvbik7CitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NpcGhlcl9vdXRw
dXQoc3J0cF9jaXBoZXJfdCAqYywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB1aW50OF90ICpidWZmZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
dWludDMyX3QgKm51bV9vY3RldHNfdG9fb3V0cHV0KTsKK3NydHBfZXJyX3N0YXR1c190IHNydHBf
Y2lwaGVyX2VuY3J5cHQoc3J0cF9jaXBoZXJfdCAqYywKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgdWludDhfdCAqYnVmZmVyLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB1aW50MzJfdCAqbnVtX29jdGV0c190b19vdXRwdXQpOworc3J0cF9lcnJf
c3RhdHVzX3Qgc3J0cF9jaXBoZXJfZGVjcnlwdChzcnRwX2NpcGhlcl90ICpjLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50OF90ICpidWZmZXIsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90ICpudW1fb2N0ZXRzX3RvX291dHB1
dCk7CitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NpcGhlcl9nZXRfdGFnKHNydHBfY2lwaGVyX3Qg
KmMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQ4X3QgKmJ1ZmZl
ciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgKnRhZ19s
ZW4pOworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jaXBoZXJfc2V0X2FhZChzcnRwX2NpcGhlcl90
ICpjLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB1aW50OF90
ICphYWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IGFh
ZF9sZW4pOwogCiAvKgogICogc3J0cF9yZXBsYWNlX2NpcGhlcl90eXBlKGN0LCBpZCkKQEAgLTIx
Myw3ICsyMzgsOCBAQCBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NpcGhlcl9zZXRfYWFkKHNydHBf
Y2lwaGVyX3QgKmMsIGNvbnN0IHVpbnQ4X3QgKmFhZCwgdWludAogICogd2l0aCBhIG5ldyBvbmUg
cGFzc2VkIGluIGV4dGVybmFsbHkuICBUaGUgbmV3IGNpcGhlciBtdXN0IHBhc3MgYWxsIHRoZQog
ICogZXhpc3RpbmcgY2lwaGVyX3R5cGUncyBzZWxmIHRlc3RzIGFzIHdlbGwgYXMgaXRzIG93bi4K
ICAqLwotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9yZXBsYWNlX2NpcGhlcl90eXBlKGNvbnN0IHNy
dHBfY2lwaGVyX3R5cGVfdCAqY3QsIHNydHBfY2lwaGVyX3R5cGVfaWRfdCBpZCk7CitzcnRwX2Vy
cl9zdGF0dXNfdCBzcnRwX3JlcGxhY2VfY2lwaGVyX3R5cGUoY29uc3Qgc3J0cF9jaXBoZXJfdHlw
ZV90ICpjdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcnRw
X2NpcGhlcl90eXBlX2lkX3QgaWQpOwogCiAjaWZkZWYgX19jcGx1c3BsdXMKIH0KZGlmZiAtLWdp
dCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0
cC9jcnlwdG8vaW5jbHVkZS9jaXBoZXJfdHlwZXMuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vaW5jbHVkZS9jaXBoZXJfdHlw
ZXMuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi5hNTQzYjU0NzhiYTJkNjVhNmIxZDJiMDAyMzMyZDkxMjRlYTFhOTBj
Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9pbmNsdWRlL2NpcGhlcl90eXBlcy5oCkBAIC0wLDAg
KzEsODEgQEAKKy8qCisgKgorICogQ29weXJpZ2h0KGMpIDIwMDEtMjAxNyBDaXNjbyBTeXN0ZW1z
LCBJbmMuCisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9k
aWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zCisgKiBhcmUgbWV0OgorICoKKyAqICAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICoKKyAqICAg
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQor
ICogICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZworICogICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhl
ciBtYXRlcmlhbHMgcHJvdmlkZWQKKyAqICAgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAq
ICAgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgQ2lzY28gU3lzdGVtcywgSW5jLiBub3IgdGhlIG5h
bWVzIG9mIGl0cworICogICBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBw
cm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQKKyAqICAgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQg
c3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUg
SVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAq
ICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5H
LCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNI
QU5UQUJJTElUWSBBTkQgRklUTkVTUworICogRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBE
SVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKKyAqIENPUFlSSUdIVCBIT0xERVJTIE9S
IENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsCisgKiBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAq
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUgorICogU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCisgKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsCisgKiBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VECisgKiBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKgorICovCisK
KyNpZm5kZWYgQ0lIUEVSX1RZUEVTX0gKKyNkZWZpbmUgQ0lIUEVSX1RZUEVTX0gKKworI2luY2x1
ZGUgImNpcGhlci5oIgorI2luY2x1ZGUgImF1dGguaCIKKworLyoKKyAqIGNpcGhlciB0eXBlcyB0
aGF0IGNhbiBiZSBpbmNsdWRlZCBpbiB0aGUga2VybmVsCisgKi8KKworZXh0ZXJuIGNvbnN0IHNy
dHBfY2lwaGVyX3R5cGVfdCBzcnRwX251bGxfY2lwaGVyOworZXh0ZXJuIGNvbnN0IHNydHBfY2lw
aGVyX3R5cGVfdCBzcnRwX2Flc19pY21fMTI4OworZXh0ZXJuIGNvbnN0IHNydHBfY2lwaGVyX3R5
cGVfdCBzcnRwX2Flc19pY21fMjU2OworI2lmZGVmIE9QRU5TU0wKK2V4dGVybiBjb25zdCBzcnRw
X2NpcGhlcl90eXBlX3Qgc3J0cF9hZXNfaWNtXzE5MjsKK2V4dGVybiBjb25zdCBzcnRwX2NpcGhl
cl90eXBlX3Qgc3J0cF9hZXNfZ2NtXzEyOF9vcGVuc3NsOworZXh0ZXJuIGNvbnN0IHNydHBfY2lw
aGVyX3R5cGVfdCBzcnRwX2Flc19nY21fMjU2X29wZW5zc2w7CisjZW5kaWYKKworLyoKKyAqIGF1
dGggZnVuYyB0eXBlcyB0aGF0IGNhbiBiZSBpbmNsdWRlZCBpbiB0aGUga2VybmVsCisgKi8KKwor
ZXh0ZXJuIGNvbnN0IHNydHBfYXV0aF90eXBlX3Qgc3J0cF9udWxsX2F1dGg7CitleHRlcm4gY29u
c3Qgc3J0cF9hdXRoX3R5cGVfdCBzcnRwX2htYWM7CisKKy8qCisgKiBvdGhlciBnZW5lcmljIGRl
YnVnIG1vZHVsZXMgdGhhdCBjYW4gYmUgaW5jbHVkZWQgaW4gdGhlIGtlcm5lbAorICovCisKK2V4
dGVybiBzcnRwX2RlYnVnX21vZHVsZV90IHNydHBfbW9kX2F1dGg7CitleHRlcm4gc3J0cF9kZWJ1
Z19tb2R1bGVfdCBzcnRwX21vZF9jaXBoZXI7CitleHRlcm4gc3J0cF9kZWJ1Z19tb2R1bGVfdCBz
cnRwX21vZF9zdGF0OworZXh0ZXJuIHNydHBfZGVidWdfbW9kdWxlX3Qgc3J0cF9tb2RfYWxsb2M7
CisKKy8qIGRlYnVnIG1vZHVsZXMgZm9yIGNpcGhlciB0eXBlcyAqLworZXh0ZXJuIHNydHBfZGVi
dWdfbW9kdWxlX3Qgc3J0cF9tb2RfYWVzX2ljbTsKKyNpZmRlZiBPUEVOU1NMCitleHRlcm4gc3J0
cF9kZWJ1Z19tb2R1bGVfdCBzcnRwX21vZF9hZXNfZ2NtOworI2VuZGlmCisKKy8qIGRlYnVnIG1v
ZHVsZXMgZm9yIGF1dGggdHlwZXMgKi8KK2V4dGVybiBzcnRwX2RlYnVnX21vZHVsZV90IHNydHBf
bW9kX2htYWM7CisKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9pbmNsdWRlL2NyeXB0b19rZXJu
ZWwuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGli
c3J0cC9jcnlwdG8vaW5jbHVkZS9jcnlwdG9fa2VybmVsLmgKaW5kZXggMWFiZjM4M2Y1YTRmM2Q0
ZTE1ZTM3YjJjMmExNmZjNGQwNmNjMTgwMS4uMWY4ZGZhNzcxMjhlZmZhMDFkYzFjNzE3YzY3ZDcw
M2U4NzEwODE2MSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9pbmNsdWRlL2NyeXB0b19rZXJuZWwuaAorKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAv
Y3J5cHRvL2luY2x1ZGUvY3J5cHRvX2tlcm5lbC5oCkBAIC00Miw3ICs0Miw2IEBACiAgKgogICov
CiAKLQogI2lmbmRlZiBDUllQVE9fS0VSTkVMCiAjZGVmaW5lIENSWVBUT19LRVJORUwKIApAQCAt
NzIsNyArNzEsNyBAQCB0eXBlZGVmIGVudW0gewogICovCiB0eXBlZGVmIHN0cnVjdCBzcnRwX2tl
cm5lbF9jaXBoZXJfdHlwZSB7CiAgICAgc3J0cF9jaXBoZXJfdHlwZV9pZF90IGlkOwotICAgIGNv
bnN0IHNydHBfY2lwaGVyX3R5cGVfdCAgICAqY2lwaGVyX3R5cGU7CisgICAgY29uc3Qgc3J0cF9j
aXBoZXJfdHlwZV90ICpjaXBoZXJfdHlwZTsKICAgICBzdHJ1Y3Qgc3J0cF9rZXJuZWxfY2lwaGVy
X3R5cGUgKm5leHQ7CiB9IHNydHBfa2VybmVsX2NpcGhlcl90eXBlX3Q7CiAKQEAgLTgxLDcgKzgw
LDcgQEAgdHlwZWRlZiBzdHJ1Y3Qgc3J0cF9rZXJuZWxfY2lwaGVyX3R5cGUgewogICovCiB0eXBl
ZGVmIHN0cnVjdCBzcnRwX2tlcm5lbF9hdXRoX3R5cGUgewogICAgIHNydHBfYXV0aF90eXBlX2lk
X3QgaWQ7Ci0gICAgY29uc3Qgc3J0cF9hdXRoX3R5cGVfdCAgICAqYXV0aF90eXBlOworICAgIGNv
bnN0IHNydHBfYXV0aF90eXBlX3QgKmF1dGhfdHlwZTsKICAgICBzdHJ1Y3Qgc3J0cF9rZXJuZWxf
YXV0aF90eXBlICpuZXh0OwogfSBzcnRwX2tlcm5lbF9hdXRoX3R5cGVfdDsKIApAQCAtOTMsNyAr
OTIsNiBAQCB0eXBlZGVmIHN0cnVjdCBzcnRwX2tlcm5lbF9kZWJ1Z19tb2R1bGUgewogICAgIHN0
cnVjdCBzcnRwX2tlcm5lbF9kZWJ1Z19tb2R1bGUgKm5leHQ7CiB9IHNydHBfa2VybmVsX2RlYnVn
X21vZHVsZV90OwogCi0KIC8qCiAgKiBjcnlwdG9fa2VybmVsX3QgaXMgdGhlIGRhdGEgc3RydWN0
dXJlIGZvciB0aGUgY3J5cHRvIGtlcm5lbAogICoKQEAgLTEwMSwxOCArOTksMTcgQEAgdHlwZWRl
ZiBzdHJ1Y3Qgc3J0cF9rZXJuZWxfZGVidWdfbW9kdWxlIHsKICAqIGEgZ2xvYmFsIHZhcmlhYmxl
IGRlZmluZWQgaW4gY3J5cHRvX2tlcm5lbC5jCiAgKi8KIHR5cGVkZWYgc3RydWN0IHsKLSAgICBz
cnRwX2NyeXB0b19rZXJuZWxfc3RhdGVfdCBzdGF0ZTsgICAgICAgICAgICAgIC8qIGN1cnJlbnQg
c3RhdGUgb2Yga2VybmVsICAgICAqLwotICAgIHNydHBfa2VybmVsX2NpcGhlcl90eXBlX3QgKmNp
cGhlcl90eXBlX2xpc3Q7ICAgLyogbGlzdCBvZiBhbGwgY2lwaGVyIHR5cGVzICAgICovCi0gICAg
c3J0cF9rZXJuZWxfYXV0aF90eXBlX3QgICAqYXV0aF90eXBlX2xpc3Q7ICAgICAvKiBsaXN0IG9m
IGFsbCBhdXRoIGZ1bmMgdHlwZXMgKi8KLSAgICBzcnRwX2tlcm5lbF9kZWJ1Z19tb2R1bGVfdCAq
ZGVidWdfbW9kdWxlX2xpc3Q7IC8qIGxpc3Qgb2YgYWxsIGRlYnVnIG1vZHVsZXMgICAqLworICAg
IHNydHBfY3J5cHRvX2tlcm5lbF9zdGF0ZV90IHN0YXRlOyAvKiBjdXJyZW50IHN0YXRlIG9mIGtl
cm5lbCAgICAgKi8KKyAgICBzcnRwX2tlcm5lbF9jaXBoZXJfdHlwZV90ICpjaXBoZXJfdHlwZV9s
aXN0OyAvKiBsaXN0IG9mIGFsbCBjaXBoZXIgdHlwZXMgKi8KKyAgICBzcnRwX2tlcm5lbF9hdXRo
X3R5cGVfdCAqYXV0aF90eXBlX2xpc3Q7IC8qIGxpc3Qgb2YgYWxsIGF1dGggZnVuYyB0eXBlcyAq
LworICAgIHNydHBfa2VybmVsX2RlYnVnX21vZHVsZV90CisgICAgICAgICpkZWJ1Z19tb2R1bGVf
bGlzdDsgLyogbGlzdCBvZiBhbGwgZGVidWcgbW9kdWxlcyAgICovCiB9IHNydHBfY3J5cHRvX2tl
cm5lbF90OwogCi0KIC8qCiAgKiBzcnRwX2NyeXB0b19rZXJuZWxfdCBleHRlcm5hbCBhcGkKICAq
LwogCi0KIC8qCiAgKiBUaGUgZnVuY3Rpb24gc3J0cF9jcnlwdG9fa2VybmVsX2luaXQoKSBpbml0
aWFsaXplZCB0aGUgY3J5cHRvIGtlcm5lbCBhbmQKICAqIHJ1bnMgdGhlIHNlbGYtdGVzdCBvcGVy
YXRpb25zIG9uIHRoZSByYW5kb20gbnVtYmVyIGdlbmVyYXRvcnMgYW5kCkBAIC0xMjYsNyArMTIz
LDYgQEAgdHlwZWRlZiBzdHJ1Y3QgewogICovCiBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NyeXB0
b19rZXJuZWxfaW5pdCh2b2lkKTsKIAotCiAvKgogICogVGhlIGZ1bmN0aW9uIHNydHBfY3J5cHRv
X2tlcm5lbF9zaHV0ZG93bigpIGRlLWluaXRpYWxpemVzIHRoZQogICogY3J5cHRvX2tlcm5lbCwg
emVyb2l6ZXMga2V5cyBhbmQgb3RoZXIgY3J5cHRvZ3JhcGhpYyBtYXRlcmlhbCwgYW5kCkBAIC0x
NTAsNyArMTQ2LDYgQEAgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fa2VybmVsX3NodXRk
b3duKHZvaWQpOwogICovCiBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NyeXB0b19rZXJuZWxfc3Rh
dHVzKHZvaWQpOwogCi0KIC8qCiAgKiBzcnRwX2NyeXB0b19rZXJuZWxfbGlzdF9kZWJ1Z19tb2R1
bGVzKCkgb3V0cHV0cyBhIGxpc3Qgb2YgZGVidWdnaW5nIG1vZHVsZXMKICAqCkBAIC0xNjEsMTEg
KzE1NiwxNSBAQCBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NyeXB0b19rZXJuZWxfbGlzdF9kZWJ1
Z19tb2R1bGVzKHZvaWQpOwogICogc3J0cF9jcnlwdG9fa2VybmVsX2xvYWRfY2lwaGVyX3R5cGUo
KQogICoKICAqLwotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fa2VybmVsX2xvYWRfY2lw
aGVyX3R5cGUoY29uc3Qgc3J0cF9jaXBoZXJfdHlwZV90ICpjdCwgc3J0cF9jaXBoZXJfdHlwZV9p
ZF90IGlkKTsKK3NydHBfZXJyX3N0YXR1c190IHNydHBfY3J5cHRvX2tlcm5lbF9sb2FkX2NpcGhl
cl90eXBlKAorICAgIGNvbnN0IHNydHBfY2lwaGVyX3R5cGVfdCAqY3QsCisgICAgc3J0cF9jaXBo
ZXJfdHlwZV9pZF90IGlkKTsKIAotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fa2VybmVs
X2xvYWRfYXV0aF90eXBlKGNvbnN0IHNydHBfYXV0aF90eXBlX3QgKmN0LCBzcnRwX2F1dGhfdHlw
ZV9pZF90IGlkKTsKK3NydHBfZXJyX3N0YXR1c190IHNydHBfY3J5cHRvX2tlcm5lbF9sb2FkX2F1
dGhfdHlwZShjb25zdCBzcnRwX2F1dGhfdHlwZV90ICpjdCwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcnRwX2F1dGhfdHlwZV9pZF90IGlkKTsK
IAotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fa2VybmVsX2xvYWRfZGVidWdfbW9kdWxl
KHNydHBfZGVidWdfbW9kdWxlX3QgKm5ld19kbSk7CitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2Ny
eXB0b19rZXJuZWxfbG9hZF9kZWJ1Z19tb2R1bGUoCisgICAgc3J0cF9kZWJ1Z19tb2R1bGVfdCAq
bmV3X2RtKTsKIAogLyoKICAqIHNydHBfY3J5cHRvX2tlcm5lbF9hbGxvY19jaXBoZXIoaWQsIGNw
LCBrZXlfbGVuKTsKQEAgLTE3Nyw3ICsxNzYsMTAgQEAgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9j
cnlwdG9fa2VybmVsX2xvYWRfZGVidWdfbW9kdWxlKHNydHBfZGVidWdfbW9kdWxlX3QgKm5ld18K
ICAqICAgIHNydHBfZXJyX3N0YXR1c19hbGxvY19mYWlsICAgYW4gYWxsb2NhdGlvbiBmYWlsdXJl
IG9jY3VyZWQKICAqICAgIHNydHBfZXJyX3N0YXR1c19mYWlsICAgICAgICAgY291bGRuJ3QgZmlu
ZCBjaXBoZXIgd2l0aCBpZGVudGlmaWVyICdpZCcKICAqLwotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0
cF9jcnlwdG9fa2VybmVsX2FsbG9jX2NpcGhlcihzcnRwX2NpcGhlcl90eXBlX2lkX3QgaWQsIHNy
dHBfY2lwaGVyX3BvaW50ZXJfdCAqY3AsIGludCBrZXlfbGVuLCBpbnQgdGFnX2xlbik7CitzcnRw
X2Vycl9zdGF0dXNfdCBzcnRwX2NyeXB0b19rZXJuZWxfYWxsb2NfY2lwaGVyKHNydHBfY2lwaGVy
X3R5cGVfaWRfdCBpZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgc3J0cF9jaXBoZXJfcG9pbnRlcl90ICpjcCwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IGtleV9sZW4sCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCB0YWdfbGVuKTsKIAogLyoK
ICAqIHNydHBfY3J5cHRvX2tlcm5lbF9hbGxvY19hdXRoKGlkLCBhcCwga2V5X2xlbiwgdGFnX2xl
bik7CkBAIC0xOTAsOCArMTkyLDEwIEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfY3J5cHRvX2tl
cm5lbF9hbGxvY19jaXBoZXIoc3J0cF9jaXBoZXJfdHlwZV9pZF90IGlkLCBzcnRwCiAgKiAgICBz
cnRwX2Vycl9zdGF0dXNfYWxsb2NfZmFpbCAgIGFuIGFsbG9jYXRpb24gZmFpbHVyZSBvY2N1cmVk
CiAgKiAgICBzcnRwX2Vycl9zdGF0dXNfZmFpbCAgICAgICAgIGNvdWxkbid0IGZpbmQgYXV0aCB3
aXRoIGlkZW50aWZpZXIgJ2lkJwogICovCi1zcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NyeXB0b19r
ZXJuZWxfYWxsb2NfYXV0aChzcnRwX2F1dGhfdHlwZV9pZF90IGlkLCBzcnRwX2F1dGhfcG9pbnRl
cl90ICphcCwgaW50IGtleV9sZW4sIGludCB0YWdfbGVuKTsKLQorc3J0cF9lcnJfc3RhdHVzX3Qg
c3J0cF9jcnlwdG9fa2VybmVsX2FsbG9jX2F1dGgoc3J0cF9hdXRoX3R5cGVfaWRfdCBpZCwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfYXV0aF9w
b2ludGVyX3QgKmFwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgaW50IGtleV9sZW4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBpbnQgdGFnX2xlbik7CiAKIC8qCiAgKiBzcnRwX2NyeXB0b19rZXJuZWxfc2V0
X2RlYnVnX21vZHVsZShtb2RfbmFtZSwgdikKQEAgLTIwMSw3ICsyMDUsOCBAQCBzcnRwX2Vycl9z
dGF0dXNfdCBzcnRwX2NyeXB0b19rZXJuZWxfYWxsb2NfYXV0aChzcnRwX2F1dGhfdHlwZV9pZF90
IGlkLCBzcnRwX2F1dAogICoKICAqIHJldHVybnMgc3J0cF9lcnJfc3RhdHVzX29rIG9uIHN1Y2Nl
c3MsIHNydHBfZXJyX3N0YXR1c19mYWlsIG90aGVyd2lzZQogICovCi1zcnRwX2Vycl9zdGF0dXNf
dCBzcnRwX2NyeXB0b19rZXJuZWxfc2V0X2RlYnVnX21vZHVsZShjb25zdCBjaGFyICptb2RfbmFt
ZSwgaW50IHYpOworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fa2VybmVsX3NldF9kZWJ1
Z19tb2R1bGUoY29uc3QgY2hhciAqbW9kX25hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgdik7CiAKICNpZmRlZiBfX2NwbHVzcGx1
cwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9pbmNsdWRlL2NyeXB0b190eXBlcy5oIGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9pbmNs
dWRlL2NyeXB0b190eXBlcy5oCmluZGV4IDMyOWQ2MGRiZDFkNDdlMjVhOWY2YzQ4ZmNhMmQ1NjYy
ZmUxYWNkNzYuLjdmZDMxNzhiMGIwNGQyZDU2MDExMDY3M2QyMzEzOGRkNDlkYTA5MzYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGli
c3J0cC9jcnlwdG8vaW5jbHVkZS9jcnlwdG9fdHlwZXMuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2luY2x1ZGUvY3J5
cHRvX3R5cGVzLmgKQEAgLTcsMjYgKzcsMjYgQEAKICAqIENpc2NvIFN5c3RlbXMsIEluYy4KICAq
LwogLyoKLSAqCQorICoKICAqIENvcHlyaWdodChjKSAyMDAxLTIwMTcgQ2lzY28gU3lzdGVtcywg
SW5jLgogICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqIAorICoKICAqIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICog
bW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zCiAgKiBhcmUgbWV0OgotICogCisgKgogICogICBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAogICogICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0g
KiAKKyAqCiAgKiAgIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUKICAqICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcKICAqICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlv
biBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkCiAgKiAgIHdpdGggdGhlIGRpc3RyaWJ1
dGlvbi4KLSAqIAorICoKICAqICAgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgQ2lzY28gU3lzdGVt
cywgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwogICogICBjb250cmlidXRvcnMgbWF5IGJlIHVz
ZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQKICAqICAgZnJvbSB0aGlz
IHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotICog
CisgKgogICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERF
UlMgQU5EIENPTlRSSUJVVE9SUwogICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKICAqIExJTUlURUQgVE8sIFRIRSBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCkBAIC00OCw2MiAr
NDgsNjIgQEAKIC8qCiAgKiBUaGUgbnVsbCBjaXBoZXIgcGVyZm9ybXMgbm8gZW5jcnlwdGlvbi4K
ICAqCi0gKiBUaGUgU1JUUF9OVUxMX0NJUEhFUiBsZWF2ZXMgaXRzIGlucHV0cyB1bmFsdGVyZWQs
IGR1cmluZyBib3RoIHRoZSAKKyAqIFRoZSBTUlRQX05VTExfQ0lQSEVSIGxlYXZlcyBpdHMgaW5w
dXRzIHVuYWx0ZXJlZCwgZHVyaW5nIGJvdGggdGhlCiAgKiBlbmNyeXB0aW9uIGFuZCBkZWNyeXB0
aW9uIG9wZXJhdGlvbnMuICBUaGlzIGNpcGhlciBjYW4gYmUgY2hvc2VuCiAgKiB0byBpbmRpY2F0
ZSB0aGF0IG5vIGVuY3J5cHRpb24gaXMgdG8gYmUgcGVyZm9ybWVkLgogICovCi0jZGVmaW5lIFNS
VFBfTlVMTF9DSVBIRVIgICAgICAgIDAgICAgICAgICAgICAKKyNkZWZpbmUgU1JUUF9OVUxMX0NJ
UEhFUiAwCiAKLS8qIAorLyoKICAqIEFFUy0xMjggSW50ZWdlciBDb3VudGVyIE1vZGUgKEFFUyBJ
Q00pCiAgKgogICogQUVTLTEyOCBJQ00gaXMgdGhlIHZhcmlhbnQgb2YgY291bnRlciBtb2RlIHRo
YXQgaXMgdXNlZCBieQogICogU2VjdXJlIFJUUC4gIFRoaXMgY2lwaGVyIHVzZXMgYSAxNi1vY3Rl
dCBrZXkgY29uY2F0ZW5hdGVkIHdpdGggYQogICogMTQtb2N0ZXQgb2Zmc2V0IChvciBzYWx0KSB2
YWx1ZS4KICAqLwotI2RlZmluZSBTUlRQX0FFU19JQ01fMTI4ICAgICAgICAxCisjZGVmaW5lIFNS
VFBfQUVTX0lDTV8xMjggMQogCi0vKiAKKy8qCiAgKiBBRVMtMTkyIEludGVnZXIgQ291bnRlciBN
b2RlIChBRVMgSUNNKQogICoKICAqIEFFUy0xMjggSUNNIGlzIHRoZSB2YXJpYW50IG9mIGNvdW50
ZXIgbW9kZSB0aGF0IGlzIHVzZWQgYnkKICAqIFNlY3VyZSBSVFAuICBUaGlzIGNpcGhlciB1c2Vz
IGEgMjQtb2N0ZXQga2V5IGNvbmNhdGVuYXRlZCB3aXRoIGEKICAqIDE0LW9jdGV0IG9mZnNldCAo
b3Igc2FsdCkgdmFsdWUuCiAgKi8KLSNkZWZpbmUgU1JUUF9BRVNfSUNNXzE5MiAgICAgICAgNAor
I2RlZmluZSBTUlRQX0FFU19JQ01fMTkyIDQKIAotLyogCisvKgogICogQUVTLTI1NiBJbnRlZ2Vy
IENvdW50ZXIgTW9kZSAoQUVTIElDTSkKICAqCiAgKiBBRVMtMTI4IElDTSBpcyB0aGUgdmFyaWFu
dCBvZiBjb3VudGVyIG1vZGUgdGhhdCBpcyB1c2VkIGJ5CiAgKiBTZWN1cmUgUlRQLiAgVGhpcyBj
aXBoZXIgdXNlcyBhIDMyLW9jdGV0IGtleSBjb25jYXRlbmF0ZWQgd2l0aCBhCiAgKiAxNC1vY3Rl
dCBvZmZzZXQgKG9yIHNhbHQpIHZhbHVlLgogICovCi0jZGVmaW5lIFNSVFBfQUVTX0lDTV8yNTYg
ICAgICAgIDUKKyNkZWZpbmUgU1JUUF9BRVNfSUNNXzI1NiA1CiAKLS8qIAotICogQUVTLTEyOF9H
Q00gR2Fsb2lzIENvdW50ZXIgTW9kZSAoQUVTIEdDTSkgICAgICAgICAgICAgCisvKgorICogQUVT
LTEyOF9HQ00gR2Fsb2lzIENvdW50ZXIgTW9kZSAoQUVTIEdDTSkKICAqCi0gKiBBRVMtMTI4IEdD
TSBpcyB0aGUgdmFyaWFudCBvZiBnYWxvaXMgY291bnRlciBtb2RlIHRoYXQgaXMgdXNlZCBieSAK
KyAqIEFFUy0xMjggR0NNIGlzIHRoZSB2YXJpYW50IG9mIGdhbG9pcyBjb3VudGVyIG1vZGUgdGhh
dCBpcyB1c2VkIGJ5CiAgKiBTZWN1cmUgUlRQLiAgVGhpcyBjaXBoZXIgdXNlcyBhIDE2LW9jdGV0
IGtleS4KICAqLwotI2RlZmluZSBTUlRQX0FFU19HQ01fMTI4ICAgICAgICA2CisjZGVmaW5lIFNS
VFBfQUVTX0dDTV8xMjggNgogCi0vKiAKLSAqIEFFUy0yNTZfR0NNIEdhbG9pcyBDb3VudGVyIE1v
ZGUgKEFFUyBHQ00pICAgICAgICAgICAgIAorLyoKKyAqIEFFUy0yNTZfR0NNIEdhbG9pcyBDb3Vu
dGVyIE1vZGUgKEFFUyBHQ00pCiAgKgotICogQUVTLTI1NiBHQ00gaXMgdGhlIHZhcmlhbnQgb2Yg
Z2Fsb2lzIGNvdW50ZXIgbW9kZSB0aGF0IGlzIHVzZWQgYnkgCisgKiBBRVMtMjU2IEdDTSBpcyB0
aGUgdmFyaWFudCBvZiBnYWxvaXMgY291bnRlciBtb2RlIHRoYXQgaXMgdXNlZCBieQogICogU2Vj
dXJlIFJUUC4gIFRoaXMgY2lwaGVyIHVzZXMgYSAzMi1vY3RldCBrZXkuCiAgKi8KLSNkZWZpbmUg
U1JUUF9BRVNfR0NNXzI1NiAgICAgICAgNworI2RlZmluZSBTUlRQX0FFU19HQ01fMjU2IDcKIAog
LyoKICAqIFRoZSBudWxsIGF1dGhlbnRpY2F0aW9uIGZ1bmN0aW9uIHBlcmZvcm1zIG5vIGF1dGhl
bnRpY2F0aW9uLgogICoKICAqIFRoZSBOVUxMX0FVVEggZnVuY3Rpb24gZG9lcyBub3RoaW5nLCBh
bmQgY2FuIGJlIHNlbGVjdGVkIHRvIGluZGljYXRlCiAgKiB0aGF0IGF1dGhlbnRpY2F0aW9uIHNo
b3VsZCBub3QgYmUgcGVyZm9ybWVkLgotICovIAotI2RlZmluZSBTUlRQX05VTExfQVVUSCAgICAg
ICAgICAwICAgICAgICAgICAKKyAqLworI2RlZmluZSBTUlRQX05VTExfQVVUSCAwCiAKIC8qCiAg
KiBITUFDLVNIQTEKQEAgLTExMSw2ICsxMTEsNiBAQAogICogU1JUUF9ITUFDX1NIQTEgaW1wbGVt
ZW50cyB0aGUgSGFzaC1iYXNlZCBNQUMgdXNpbmcgdGhlIE5JU1QgU2VjdXJlCiAgKiBIYXNoIEFs
Z29yaXRobSB2ZXJzaW9uIDEgKFNIQTEpLgogICovCi0jZGVmaW5lIFNSVFBfSE1BQ19TSEExICAg
ICAgICAgIDMgICAgICAgICAgCisjZGVmaW5lIFNSVFBfSE1BQ19TSEExIDMKIAotI2VuZGlmICAv
KiBTUlRQX0NSWVBUT19UWVBFU19IICovCisjZW5kaWYgLyogU1JUUF9DUllQVE9fVFlQRVNfSCAq
LwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJzcnRwL2NyeXB0by9pbmNsdWRlL2RhdGF0eXBlcy5oIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9pbmNsdWRlL2Rh
dGF0eXBlcy5oCmluZGV4IGQyMGI5ZTZmOGNhZmEyZmUyNmUyMjliZGY4ODU4OWNlMjUyNmZhYjAu
LjE4MmNjYTI1YjlkMWJmNzYwMTk4NjFlNTQwYjUzZTllM2Y5YzNmYmQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlw
dG8vaW5jbHVkZS9kYXRhdHlwZXMuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2luY2x1ZGUvZGF0YXR5cGVzLmgKQEAg
LTEsNiArMSw2IEBACiAvKgogICogZGF0YXR5cGVzLmgKLSAqIAorICoKICAqIGRhdGEgdHlwZXMg
Zm9yIGJpdCB2ZWN0b3JzIGFuZCBmaW5pdGUgZmllbGRzCiAgKgogICogRGF2aWQgQS4gTWNHcmV3
CkBAIC04LDI2ICs4LDI2IEBACiAgKi8KIAogLyoKLSAqCQorICoKICAqIENvcHlyaWdodCAoYykg
MjAwMS0yMDE3LCBDaXNjbyBTeXN0ZW1zLCBJbmMuCiAgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgot
ICogCisgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKICAqIGFyZSBtZXQ6Ci0gKiAKKyAq
CiAgKiAgIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJv
dmUgY29weXJpZ2h0CiAgKiAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIAorICoKICAqICAgUmVkaXN0cmlidXRpb25zIGlu
IGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQogICogICBjb3B5cmlnaHQgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwogICogICBkaXNj
bGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlk
ZWQKICAqICAgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICogCisgKgogICogICBOZWl0aGVyIHRo
ZSBuYW1lIG9mIHRoZSBDaXNjbyBTeXN0ZW1zLCBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCiAg
KiAgIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVj
dHMgZGVyaXZlZAogICogICBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlv
ciB3cml0dGVuIHBlcm1pc3Npb24uCi0gKiAKKyAqCiAgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJ
REVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCiAgKiAiQVMgSVMi
IEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VAogICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJ
VFkgQU5EIEZJVE5FU1MKQEAgLTQzLDExICs0MywxMCBAQAogICoKICAqLwogCi0KICNpZm5kZWYg
REFUQVRZUEVTX0gKICNkZWZpbmUgREFUQVRZUEVTX0gKIAotI2luY2x1ZGUgImludGVnZXJzLmgi
ICAgICAgICAgICAvKiBkZWZpbml0aW9ucyBvZiB1aW50MzJfdCwgZXQgY2V0ZXJhICAgKi8KKyNp
bmNsdWRlICJpbnRlZ2Vycy5oIiAvKiBkZWZpbml0aW9ucyBvZiB1aW50MzJfdCwgZXQgY2V0ZXJh
ICAgKi8KICNpbmNsdWRlICJhbGxvYy5oIgogCiAjaW5jbHVkZSA8c3RkYXJnLmg+CkBAIC01Niw0
MiArNTUsNDMgQEAKICNpbmNsdWRlIDxzdHJpbmcuaD4KICNpbmNsdWRlIDx0aW1lLmg+CiAjaWZk
ZWYgSEFWRV9ORVRJTkVUX0lOX0gKLSMgaW5jbHVkZSA8bmV0aW5ldC9pbi5oPgorI2luY2x1ZGUg
PG5ldGluZXQvaW4uaD4KICNlbGlmIGRlZmluZWQgSEFWRV9XSU5TT0NLMl9ICi0jIGluY2x1ZGUg
PHdpbnNvY2syLmg+CisjaW5jbHVkZSA8d2luc29jazIuaD4KKyNlbHNlCisjZXJyb3IgIlBsYXRm
b3JtIG5vdCByZWNvZ25pemVkIgogI2VuZGlmCiAKICNpZmRlZiBfX2NwbHVzcGx1cwogZXh0ZXJu
ICJDIiB7CiAjZW5kaWYKIAotCiAvKiBpZiBEQVRBVFlQRVNfVVNFX01BQ1JPUyBpcyBkZWZpbmVk
LCB0aGVuIGxpdHRsZSBmdW5jdGlvbnMgYXJlIG1hY3JvcyAqLwotI2RlZmluZSBEQVRBVFlQRVNf
VVNFX01BQ1JPUyAgCisjZGVmaW5lIERBVEFUWVBFU19VU0VfTUFDUk9TCiAKIHR5cGVkZWYgdW5p
b24gewotICB1aW50OF90ICB2OFsyXTsKLSAgdWludDE2X3QgdmFsdWU7CisgICAgdWludDhfdCB2
OFsyXTsKKyAgICB1aW50MTZfdCB2YWx1ZTsKIH0gdjE2X3Q7CiAKIHR5cGVkZWYgdW5pb24gewot
ICB1aW50OF90ICB2OFs0XTsKLSAgdWludDE2X3QgdjE2WzJdOwotICB1aW50MzJfdCB2YWx1ZTsK
KyAgICB1aW50OF90IHY4WzRdOworICAgIHVpbnQxNl90IHYxNlsyXTsKKyAgICB1aW50MzJfdCB2
YWx1ZTsKIH0gdjMyX3Q7CiAKIHR5cGVkZWYgdW5pb24gewotICB1aW50OF90ICB2OFs4XTsKLSAg
dWludDE2X3QgdjE2WzRdOwotICB1aW50MzJfdCB2MzJbMl07Ci0gIHVpbnQ2NF90IHZhbHVlOwor
ICAgIHVpbnQ4X3QgdjhbOF07CisgICAgdWludDE2X3QgdjE2WzRdOworICAgIHVpbnQzMl90IHYz
MlsyXTsKKyAgICB1aW50NjRfdCB2YWx1ZTsKIH0gdjY0X3Q7CiAKIHR5cGVkZWYgdW5pb24gewot
ICB1aW50OF90ICB2OFsxNl07Ci0gIHVpbnQxNl90IHYxNls4XTsKLSAgdWludDMyX3QgdjMyWzRd
OwotICB1aW50NjRfdCB2NjRbMl07CisgICAgdWludDhfdCB2OFsxNl07CisgICAgdWludDE2X3Qg
djE2WzhdOworICAgIHVpbnQzMl90IHYzMls0XTsKKyAgICB1aW50NjRfdCB2NjRbMl07CiB9IHYx
MjhfdDsKIAogdHlwZWRlZiB1bmlvbiB7CkBAIC0xMDEsMTE4ICsxMDEsODIgQEAgdHlwZWRlZiB1
bmlvbiB7CiAgICAgdWludDY0X3QgdjY0WzRdOwogfSB2MjU2X3Q7CiAKLQogLyogc29tZSB1c2Vm
dWwgYW5kIHNpbXBsZSBtYXRoIGZ1bmN0aW9ucyAqLwogCi0jZGVmaW5lIHBvd18yKFgpICggKHVu
c2lnbmVkIGludCkxIDw8IChYKSApICAgLyogMl5YICAgICAqLwotCi0jZGVmaW5lIHBvd19taW51
c19vbmUoWCkgKCAoWCkgPyAtMSA6IDEgKSAgICAgIC8qICgtMSleWCAgKi8KKyNkZWZpbmUgcG93
XzIoWCkgKCh1bnNpZ25lZCBpbnQpMSA8PCAoWCkpIC8qIDJeWCAgICAgKi8KIAorI2RlZmluZSBw
b3dfbWludXNfb25lKFgpICgoWCkgPyAtMSA6IDEpIC8qICgtMSleWCAgKi8KIAogLyoKICAqIG9j
dGV0X2dldF93ZWlnaHQoeCkgcmV0dXJucyB0aGUgaGFtbWluZyB3ZWlnaHQgKG51bWJlciBvZiBi
aXRzIGVxdWFsIHRvCiAgKiBvbmUpIGluIHRoZSBvY3RldCB4CiAgKi8KIAotaW50Ci1vY3RldF9n
ZXRfd2VpZ2h0KHVpbnQ4X3Qgb2N0ZXQpOworaW50IG9jdGV0X2dldF93ZWlnaHQodWludDhfdCBv
Y3RldCk7CiAKICNkZWZpbmUgTUFYX1BSSU5UX1NUUklOR19MRU4gMTAyNAogCi1jaGFyICoKLXNy
dHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcoY29uc3Qgdm9pZCAqc3RyLCBpbnQgbGVuZ3RoKTsK
K2NoYXIgKnNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcoY29uc3Qgdm9pZCAqc3RyLCBpbnQg
bGVuZ3RoKTsKIAotY2hhciAqCi12MTI4X2JpdF9zdHJpbmcodjEyOF90ICp4KTsKK2NoYXIgKnYx
MjhfYml0X3N0cmluZyh2MTI4X3QgKngpOwogCi1jaGFyICoKLXYxMjhfaGV4X3N0cmluZyh2MTI4
X3QgKngpOworY2hhciAqdjEyOF9oZXhfc3RyaW5nKHYxMjhfdCAqeCk7CiAKLXZvaWQKLXYxMjhf
Y29weV9vY3RldF9zdHJpbmcodjEyOF90ICp4LCBjb25zdCB1aW50OF90IHNbMTZdKTsKK3ZvaWQg
djEyOF9jb3B5X29jdGV0X3N0cmluZyh2MTI4X3QgKngsIGNvbnN0IHVpbnQ4X3Qgc1sxNl0pOwog
Ci12b2lkCi12MTI4X2xlZnRfc2hpZnQodjEyOF90ICp4LCBpbnQgc2hpZnRfaW5kZXgpOwordm9p
ZCB2MTI4X2xlZnRfc2hpZnQodjEyOF90ICp4LCBpbnQgc2hpZnRfaW5kZXgpOwogCi12b2lkCi12
MTI4X3JpZ2h0X3NoaWZ0KHYxMjhfdCAqeCwgaW50IHNoaWZ0X2luZGV4KTsKK3ZvaWQgdjEyOF9y
aWdodF9zaGlmdCh2MTI4X3QgKngsIGludCBzaGlmdF9pbmRleCk7CiAKIC8qCiAgKiB0aGUgZm9s
bG93aW5nIG1hY3JvcyBkZWZpbmUgdGhlIGRhdGEgbWFuaXB1bGF0aW9uIGZ1bmN0aW9ucwotICog
CisgKgogICogSWYgREFUQVRZUEVTX1VTRV9NQUNST1MgaXMgZGVmaW5lZCwgdGhlbiB0aGVzZSBt
YWNyb3MgYXJlIHVzZWQKICAqIGRpcmVjdGx5IChhbmQgZnVuY3Rpb24gY2FsbCBvdmVyaGVhZCBp
cyBhdm9pZGVkKS4gIE90aGVyd2lzZSwKICAqIHRoZSBtYWNyb3MgYXJlIHVzZWQgdGhyb3VnaCB0
aGUgZnVuY3Rpb25zIGRlZmluZWQgaW4gZGF0YXR5cGVzLmMKICAqIChhbmQgdGhlIGNvbXBpbGVy
IHByb3ZpZGVzIGJldHRlciB3YXJuaW5ncykuCiAgKi8KIAotI2RlZmluZSBfdjEyOF9zZXRfdG9f
emVybyh4KSAgICAgXAotKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0gICh4KS0+
djMyWzBdID0gMCwgICAgICAgICAgICAgIFwKLSAgKHgpLT52MzJbMV0gPSAwLCAgICAgICAgICAg
ICAgXAotICAoeCktPnYzMlsyXSA9IDAsICAgICAgICAgICAgICBcCi0gICh4KS0+djMyWzNdID0g
MCAgICAgICAgICAgICAgIFwKLSkKLQotI2RlZmluZSBfdjEyOF9jb3B5KHgsIHkpICAgICAgICAg
IFwKLSggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSAgKHgpLT52MzJbMF0gPSAo
eSktPnYzMlswXSwgICAgIFwKLSAgKHgpLT52MzJbMV0gPSAoeSktPnYzMlsxXSwgICAgIFwKLSAg
KHgpLT52MzJbMl0gPSAoeSktPnYzMlsyXSwgICAgIFwKLSAgKHgpLT52MzJbM10gPSAoeSktPnYz
MlszXSAgICAgIFwKLSkKLQotI2RlZmluZSBfdjEyOF94b3IoeiwgeCwgeSkgICAgICAgICAgICAg
ICAgICAgICAgIFwKLSggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFwKLSAgICh6KS0+djMyWzBdID0gKHgpLT52MzJbMF0gXiAoeSktPnYzMlswXSwgICAgIFwK
LSAgICh6KS0+djMyWzFdID0gKHgpLT52MzJbMV0gXiAoeSktPnYzMlsxXSwgICAgIFwKLSAgICh6
KS0+djMyWzJdID0gKHgpLT52MzJbMl0gXiAoeSktPnYzMlsyXSwgICAgIFwKLSAgICh6KS0+djMy
WzNdID0gKHgpLT52MzJbM10gXiAoeSktPnYzMlszXSAgICAgIFwKLSkKLQotI2RlZmluZSBfdjEy
OF9hbmQoeiwgeCwgeSkgICAgICAgICAgICAgICAgICAgICAgIFwKLSggICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSAgICh6KS0+djMyWzBdID0gKHgpLT52
MzJbMF0gJiAoeSktPnYzMlswXSwgICAgIFwKLSAgICh6KS0+djMyWzFdID0gKHgpLT52MzJbMV0g
JiAoeSktPnYzMlsxXSwgICAgIFwKLSAgICh6KS0+djMyWzJdID0gKHgpLT52MzJbMl0gJiAoeSkt
PnYzMlsyXSwgICAgIFwKLSAgICh6KS0+djMyWzNdID0gKHgpLT52MzJbM10gJiAoeSktPnYzMlsz
XSAgICAgIFwKLSkKLQotI2RlZmluZSBfdjEyOF9vcih6LCB4LCB5KSAgICAgICAgICAgICAgICAg
ICAgICAgIFwKLSggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IFwKLSAgICh6KS0+djMyWzBdID0gKHgpLT52MzJbMF0gfCAoeSktPnYzMlswXSwgICAgIFwKLSAg
ICh6KS0+djMyWzFdID0gKHgpLT52MzJbMV0gfCAoeSktPnYzMlsxXSwgICAgIFwKLSAgICh6KS0+
djMyWzJdID0gKHgpLT52MzJbMl0gfCAoeSktPnYzMlsyXSwgICAgIFwKLSAgICh6KS0+djMyWzNd
ID0gKHgpLT52MzJbM10gfCAoeSktPnYzMlszXSAgICAgIFwKLSkKLQotI2RlZmluZSBfdjEyOF9j
b21wbGVtZW50KHgpICAgICAgICBcCi0oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IFwKLSAgICh4KS0+djMyWzBdID0gfih4KS0+djMyWzBdLCAgICAgXAotICAgKHgpLT52MzJbMV0g
PSB+KHgpLT52MzJbMV0sICAgICBcCi0gICAoeCktPnYzMlsyXSA9IH4oeCktPnYzMlsyXSwgICAg
IFwKLSAgICh4KS0+djMyWzNdID0gfih4KS0+djMyWzNdICAgICAgXAotKQorI2RlZmluZSBfdjEy
OF9zZXRfdG9femVybyh4KSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFwKKyAgICAoKHgpLT52MzJbMF0gPSAwLCAoeCktPnYzMlsxXSA9IDAsICh4KS0+
djMyWzJdID0gMCwgKHgpLT52MzJbM10gPSAwKQogCi0vKiBvayBmb3IgTk9fNjRCSVRfTUFUSCBp
ZiBpdCBjYW4gY29tcGFyZSB1aW50NjRfdCdzIChldmVuIGFzIHN0cnVjdHVyZXMpICovCi0jZGVm
aW5lIF92MTI4X2lzX2VxKHgsIHkpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFwKLSAgKCgoeCktPnY2NFswXSA9PSAoeSktPnY2NFswXSkgJiYgKCh4KS0+djY0WzFdID09
ICh5KS0+djY0WzFdKSkKKyNkZWZpbmUgX3YxMjhfY29weSh4LCB5KSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgKCh4KS0+djMyWzBd
ID0gKHkpLT52MzJbMF0sICh4KS0+djMyWzFdID0gKHkpLT52MzJbMV0sICAgICAgICAgICAgICAg
ICAgICAgXAorICAgICAoeCktPnYzMlsyXSA9ICh5KS0+djMyWzJdLCAoeCktPnYzMlszXSA9ICh5
KS0+djMyWzNdKQogCisjZGVmaW5lIF92MTI4X3hvcih6LCB4LCB5KSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICgoeiktPnYzMlswXSA9
ICh4KS0+djMyWzBdIF4gKHkpLT52MzJbMF0sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFwKKyAgICAgKHopLT52MzJbMV0gPSAoeCktPnYzMlsxXSBeICh5KS0+djMyWzFdLCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICh6KS0+djMyWzJdID0gKHgpLT52
MzJbMl0gXiAoeSktPnYzMlsyXSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAor
ICAgICAoeiktPnYzMlszXSA9ICh4KS0+djMyWzNdIF4gKHkpLT52MzJbM10pCisKKyNkZWZpbmUg
X3YxMjhfYW5kKHosIHgsIHkpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBcCisgICAgKCh6KS0+djMyWzBdID0gKHgpLT52MzJbMF0gJiAoeSktPnYz
MlswXSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAoeiktPnYzMlsx
XSA9ICh4KS0+djMyWzFdICYgKHkpLT52MzJbMV0sICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFwKKyAgICAgKHopLT52MzJbMl0gPSAoeCktPnYzMlsyXSAmICh5KS0+djMyWzJdLCAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICh6KS0+djMyWzNdID0gKHgp
LT52MzJbM10gJiAoeSktPnYzMlszXSkKKworI2RlZmluZSBfdjEyOF9vcih6LCB4LCB5KSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAo
KHopLT52MzJbMF0gPSAoeCktPnYzMlswXSB8ICh5KS0+djMyWzBdLCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBcCisgICAgICh6KS0+djMyWzFdID0gKHgpLT52MzJbMV0gfCAoeSkt
PnYzMlsxXSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAoeiktPnYz
MlsyXSA9ICh4KS0+djMyWzJdIHwgKHkpLT52MzJbMl0sICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFwKKyAgICAgKHopLT52MzJbM10gPSAoeCktPnYzMlszXSB8ICh5KS0+djMyWzNd
KQorCisjZGVmaW5lIF92MTI4X2NvbXBsZW1lbnQoeCkgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICgoeCktPnYzMlswXSA9IH4oeCktPnYz
MlswXSwgKHgpLT52MzJbMV0gPSB+KHgpLT52MzJbMV0sICAgICAgICAgICAgICAgICAgIFwKKyAg
ICAgKHgpLT52MzJbMl0gPSB+KHgpLT52MzJbMl0sICh4KS0+djMyWzNdID0gfih4KS0+djMyWzNd
KQorCisvKiBvayBmb3IgTk9fNjRCSVRfTUFUSCBpZiBpdCBjYW4gY29tcGFyZSB1aW50NjRfdCdz
IChldmVuIGFzIHN0cnVjdHVyZXMpICovCisjZGVmaW5lIF92MTI4X2lzX2VxKHgsIHkpICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICgo
KHgpLT52NjRbMF0gPT0gKHkpLT52NjRbMF0pICYmICgoeCktPnY2NFsxXSA9PSAoeSktPnY2NFsx
XSkpCiAKICNpZmRlZiBOT182NEJJVF9NQVRICi0jZGVmaW5lIF92MTI4X3hvcl9lcSh6LCB4KSAg
ICAgICAgIFwKLSggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotICAgKHopLT52
MzJbMF0gXj0gKHgpLT52MzJbMF0sICAgICBcCi0gICAoeiktPnYzMlsxXSBePSAoeCktPnYzMlsx
XSwgICAgIFwKLSAgICh6KS0+djMyWzJdIF49ICh4KS0+djMyWzJdLCAgICAgXAotICAgKHopLT52
MzJbM10gXj0gKHgpLT52MzJbM10gICAgICBcCi0pCisjZGVmaW5lIF92MTI4X3hvcl9lcSh6LCB4
KSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAor
ICAgICgoeiktPnYzMlswXSBePSAoeCktPnYzMlswXSwgKHopLT52MzJbMV0gXj0gKHgpLT52MzJb
MV0sICAgICAgICAgICAgICAgICAgIFwKKyAgICAgKHopLT52MzJbMl0gXj0gKHgpLT52MzJbMl0s
ICh6KS0+djMyWzNdIF49ICh4KS0+djMyWzNdKQogI2Vsc2UKLSNkZWZpbmUgX3YxMjhfeG9yX2Vx
KHosIHgpICAgICAgICAgXAotKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0g
ICAoeiktPnY2NFswXSBePSAoeCktPnY2NFswXSwgICAgIFwKLSAgICh6KS0+djY0WzFdIF49ICh4
KS0+djY0WzFdICAgICAgXAotKQorI2RlZmluZSBfdjEyOF94b3JfZXEoeiwgeCkgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAoKHopLT52
NjRbMF0gXj0gKHgpLT52NjRbMF0sICh6KS0+djY0WzFdIF49ICh4KS0+djY0WzFdKQogI2VuZGlm
CiAKIC8qIE5PVEUhICBUaGlzIGFzc3VtZXMgYW4gb2RkIG9yZGVyaW5nISAqLwpAQCAtMjI0LDc2
ICsxODgsNTUgQEAgdjEyOF9yaWdodF9zaGlmdCh2MTI4X3QgKngsIGludCBzaGlmdF9pbmRleCk7
CiAgICByZWFsbHkgY2FyZSB3aGljaCBiaXQgaXMgd2hpY2guICBBRVMgZG9lcyBjYXJlIHdoaWNo
IGJpdCBpcyB3aGljaCwgYnV0CiAgICBkb2Vzbid0IHVzZSB0aGUgMTI4LWJpdCBnZXQvc2V0IG9y
IDEyOC1iaXQgc2hpZnRzICAqLwogCi0jZGVmaW5lIF92MTI4X2dldF9iaXQoeCwgYml0KSAgICAg
ICAgICAgICAgICAgICAgIFwKLSggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgXAotICAoKCgoeCktPnYzMlsoYml0KSA+PiA1XSkgPj4gKChiaXQpICYgMzEp
KSAmIDEpICBcCi0pCi0KLSNkZWZpbmUgX3YxMjhfc2V0X2JpdCh4LCBiaXQpICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgXAotKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0gICgoKHgpLT52MzJbKGJpdCkg
Pj4gNV0pIHw9ICgodWludDMyX3QpMSA8PCAoKGJpdCkgJiAzMSkpKSBcCi0pCi0KLSNkZWZpbmUg
X3YxMjhfY2xlYXJfYml0KHgsIGJpdCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IFwKLSggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFwKLSAgKCgoeCktPnYzMlsoYml0KSA+PiA1XSkgJj0gfigodWludDMyX3Qp
MSA8PCAoKGJpdCkgJiAzMSkpKSBcCi0pCi0KLSNkZWZpbmUgX3YxMjhfc2V0X2JpdF90byh4LCBi
aXQsIHZhbHVlKSAgIFwKLSggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IFwKLSAgICh2YWx1ZSkgPyBfdjEyOF9zZXRfYml0KHgsIGJpdCkgOiAgICAgIFwKLSAgICAgICAg
ICAgICBfdjEyOF9jbGVhcl9iaXQoeCwgYml0KSAgICAgIFwKLSkKLQotI2lmZGVmIERBVEFUWVBF
U19VU0VfTUFDUk9TICAvKiBsaXR0bGUgZnVuY3Rpb25zIGFyZSByZWFsbHkgbWFjcm9zICovCi0g
ICAKLSNkZWZpbmUgdjEyOF9zZXRfdG9femVybyh6KSAgICAgICBfdjEyOF9zZXRfdG9femVybyh6
KQotI2RlZmluZSB2MTI4X2NvcHkoeiwgeCkgICAgICAgICAgIF92MTI4X2NvcHkoeiwgeCkKLSNk
ZWZpbmUgdjEyOF94b3IoeiwgeCwgeSkgICAgICAgICBfdjEyOF94b3IoeiwgeCwgeSkKLSNkZWZp
bmUgdjEyOF9hbmQoeiwgeCwgeSkgICAgICAgICBfdjEyOF9hbmQoeiwgeCwgeSkKLSNkZWZpbmUg
djEyOF9vcih6LCB4LCB5KSAgICAgICAgICBfdjEyOF9vcih6LCB4LCB5KQotI2RlZmluZSB2MTI4
X2NvbXBsZW1lbnQoeCkgICAgICAgIF92MTI4X2NvbXBsZW1lbnQoeCkgCi0jZGVmaW5lIHYxMjhf
aXNfZXEoeCwgeSkgICAgICAgICAgX3YxMjhfaXNfZXEoeCwgeSkKLSNkZWZpbmUgdjEyOF94b3Jf
ZXEoeCwgeSkgICAgICAgICBfdjEyOF94b3JfZXEoeCwgeSkKLSNkZWZpbmUgdjEyOF9nZXRfYml0
KHgsIGkpICAgICAgICBfdjEyOF9nZXRfYml0KHgsIGkpCi0jZGVmaW5lIHYxMjhfc2V0X2JpdCh4
LCBpKSAgICAgICAgX3YxMjhfc2V0X2JpdCh4LCBpKQotI2RlZmluZSB2MTI4X2NsZWFyX2JpdCh4
LCBpKSAgICAgIF92MTI4X2NsZWFyX2JpdCh4LCBpKQotI2RlZmluZSB2MTI4X3NldF9iaXRfdG8o
eCwgaSwgeSkgIF92MTI4X3NldF9iaXRfdG8oeCwgaSwgeSkKKyNkZWZpbmUgX3YxMjhfZ2V0X2Jp
dCh4LCBiaXQpICgoKCgoeCktPnYzMlsoYml0KSA+PiA1XSkgPj4gKChiaXQpJjMxKSkgJiAxKSkK
KworI2RlZmluZSBfdjEyOF9zZXRfYml0KHgsIGJpdCkgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAoKCgoeCktPnYzMlsoYml0KSA+PiA1XSkg
fD0gKCh1aW50MzJfdCkxIDw8ICgoYml0KSYzMSkpKSkKKworI2RlZmluZSBfdjEyOF9jbGVhcl9i
aXQoeCwgYml0KSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IFwKKyAgICAoKCgoeCktPnYzMlsoYml0KSA+PiA1XSkgJj0gfigodWludDMyX3QpMSA8PCAoKGJp
dCkmMzEpKSkpCisKKyNkZWZpbmUgX3YxMjhfc2V0X2JpdF90byh4LCBiaXQsIHZhbHVlKSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgKCh2YWx1ZSkgPyBfdjEy
OF9zZXRfYml0KHgsIGJpdCkgOiBfdjEyOF9jbGVhcl9iaXQoeCwgYml0KSkKKworI2lmZGVmIERB
VEFUWVBFU19VU0VfTUFDUk9TIC8qIGxpdHRsZSBmdW5jdGlvbnMgYXJlIHJlYWxseSBtYWNyb3Mg
Ki8KKworI2RlZmluZSB2MTI4X3NldF90b196ZXJvKHopIF92MTI4X3NldF90b196ZXJvKHopCisj
ZGVmaW5lIHYxMjhfY29weSh6LCB4KSBfdjEyOF9jb3B5KHosIHgpCisjZGVmaW5lIHYxMjhfeG9y
KHosIHgsIHkpIF92MTI4X3hvcih6LCB4LCB5KQorI2RlZmluZSB2MTI4X2FuZCh6LCB4LCB5KSBf
djEyOF9hbmQoeiwgeCwgeSkKKyNkZWZpbmUgdjEyOF9vcih6LCB4LCB5KSBfdjEyOF9vcih6LCB4
LCB5KQorI2RlZmluZSB2MTI4X2NvbXBsZW1lbnQoeCkgX3YxMjhfY29tcGxlbWVudCh4KQorI2Rl
ZmluZSB2MTI4X2lzX2VxKHgsIHkpIF92MTI4X2lzX2VxKHgsIHkpCisjZGVmaW5lIHYxMjhfeG9y
X2VxKHgsIHkpIF92MTI4X3hvcl9lcSh4LCB5KQorI2RlZmluZSB2MTI4X2dldF9iaXQoeCwgaSkg
X3YxMjhfZ2V0X2JpdCh4LCBpKQorI2RlZmluZSB2MTI4X3NldF9iaXQoeCwgaSkgX3YxMjhfc2V0
X2JpdCh4LCBpKQorI2RlZmluZSB2MTI4X2NsZWFyX2JpdCh4LCBpKSBfdjEyOF9jbGVhcl9iaXQo
eCwgaSkKKyNkZWZpbmUgdjEyOF9zZXRfYml0X3RvKHgsIGksIHkpIF92MTI4X3NldF9iaXRfdG8o
eCwgaSwgeSkKIAogI2Vsc2UKIAotdm9pZAotdjEyOF9zZXRfdG9femVybyh2MTI4X3QgKngpOwor
dm9pZCB2MTI4X3NldF90b196ZXJvKHYxMjhfdCAqeCk7CiAKLWludAotdjEyOF9pc19lcShjb25z
dCB2MTI4X3QgKngsIGNvbnN0IHYxMjhfdCAqeSk7CitpbnQgdjEyOF9pc19lcShjb25zdCB2MTI4
X3QgKngsIGNvbnN0IHYxMjhfdCAqeSk7CiAKLXZvaWQKLXYxMjhfY29weSh2MTI4X3QgKngsIGNv
bnN0IHYxMjhfdCAqeSk7Cit2b2lkIHYxMjhfY29weSh2MTI4X3QgKngsIGNvbnN0IHYxMjhfdCAq
eSk7CiAKLXZvaWQKLXYxMjhfeG9yKHYxMjhfdCAqeiwgdjEyOF90ICp4LCB2MTI4X3QgKnkpOwor
dm9pZCB2MTI4X3hvcih2MTI4X3QgKnosIHYxMjhfdCAqeCwgdjEyOF90ICp5KTsKIAotdm9pZAot
djEyOF9hbmQodjEyOF90ICp6LCB2MTI4X3QgKngsIHYxMjhfdCAqeSk7Cit2b2lkIHYxMjhfYW5k
KHYxMjhfdCAqeiwgdjEyOF90ICp4LCB2MTI4X3QgKnkpOwogCi12b2lkCi12MTI4X29yKHYxMjhf
dCAqeiwgdjEyOF90ICp4LCB2MTI4X3QgKnkpOyAKK3ZvaWQgdjEyOF9vcih2MTI4X3QgKnosIHYx
MjhfdCAqeCwgdjEyOF90ICp5KTsKIAotdm9pZAotdjEyOF9jb21wbGVtZW50KHYxMjhfdCAqeCk7
Cit2b2lkIHYxMjhfY29tcGxlbWVudCh2MTI4X3QgKngpOwogCi1pbnQKLXYxMjhfZ2V0X2JpdChj
b25zdCB2MTI4X3QgKngsIGludCBpKTsKK2ludCB2MTI4X2dldF9iaXQoY29uc3QgdjEyOF90ICp4
LCBpbnQgaSk7CiAKLXZvaWQKLXYxMjhfc2V0X2JpdCh2MTI4X3QgKngsIGludCBpKSA7ICAgICAK
K3ZvaWQgdjEyOF9zZXRfYml0KHYxMjhfdCAqeCwgaW50IGkpOwogCi12b2lkCi12MTI4X2NsZWFy
X2JpdCh2MTI4X3QgKngsIGludCBpKTsgICAgCit2b2lkIHYxMjhfY2xlYXJfYml0KHYxMjhfdCAq
eCwgaW50IGkpOwogCi12b2lkCi12MTI4X3NldF9iaXRfdG8odjEyOF90ICp4LCBpbnQgaSwgaW50
IHkpOwordm9pZCB2MTI4X3NldF9iaXRfdG8odjEyOF90ICp4LCBpbnQgaSwgaW50IHkpOwogCiAj
ZW5kaWYgLyogREFUQVRZUEVTX1VTRV9NQUNST1MgKi8KIApAQCAtMzA0LDExMyArMjQ3LDEwMiBA
QCB2MTI4X3NldF9iaXRfdG8odjEyOF90ICp4LCBpbnQgaSwgaW50IHkpOwogICogdmVyaWZ5aW5n
IGF1dGhlbnRpY2F0aW9uIHRhZ3MuCiAgKi8KIAotaW50Ci1vY3RldF9zdHJpbmdfaXNfZXEodWlu
dDhfdCAqYSwgdWludDhfdCAqYiwgaW50IGxlbik7CitpbnQgb2N0ZXRfc3RyaW5nX2lzX2VxKHVp
bnQ4X3QgKmEsIHVpbnQ4X3QgKmIsIGludCBsZW4pOwogCiAvKgogICogQSBwb3J0YWJsZSB3YXkg
dG8gemVybyBvdXQgbWVtb3J5IGFzIHJlY29tbWVuZGVkIGJ5CiAgKiBodHRwczovL2NyeXB0b2Nv
ZGluZy5uZXQvaW5kZXgucGhwL0NvZGluZ19ydWxlcyNDbGVhbl9tZW1vcnlfb2Zfc2VjcmV0X2Rh
dGEKICAqIFRoaXMgaXMgdXNlZCB0byB6ZXJvIG1lbW9yeSB3aGVuIE9QRU5TU0xfY2xlYW5zZSgp
IGlzIG5vdCBhdmFpbGFibGUuCiAgKi8KLXZvaWQKLXNydHBfY2xlYW5zZSh2b2lkICpzLCBzaXpl
X3QgbGVuKTsKK3ZvaWQgc3J0cF9jbGVhbnNlKHZvaWQgKnMsIHNpemVfdCBsZW4pOwogCiAvKgog
ICogRnVuY3Rpb25zIGFzIGEgd3JhcHBlciB0aGF0IGRlbGVnYXRlcyB0byBlaXRoZXIgc3J0cF9j
bGVhbnNlKCkgb3IKICAqIE9QRU5TU0xfY2xlYW5zZSgpIGlmIGF2YWlsYWJsZSB0byB6ZXJvIG1l
bW9yeS4KICAqLwotdm9pZAotb2N0ZXRfc3RyaW5nX3NldF90b196ZXJvKHZvaWQgKnMsIHNpemVf
dCBsZW4pOwordm9pZCBvY3RldF9zdHJpbmdfc2V0X3RvX3plcm8odm9pZCAqcywgc2l6ZV90IGxl
bik7CiAKLSNpZiBkZWZpbmVkKEhBVkVfQ09ORklHX0gpIAorI2lmIGRlZmluZWQoSEFWRV9DT05G
SUdfSCkKIAotLyogCisvKgogICogQ29udmVydCBiaWcgZW5kaWFuIGludGVnZXJzIHRvIENQVSBi
eXRlIG9yZGVyLgogICovCiAjaWZkZWYgV09SRFNfQklHRU5ESUFOCiAvKiBOb3RoaW5nIHRvIGRv
LiAqLwotIyBkZWZpbmUgYmUzMl90b19jcHUoeCkJKHgpCi0jIGRlZmluZSBiZTY0X3RvX2NwdSh4
KQkoeCkKKyNkZWZpbmUgYmUzMl90b19jcHUoeCkgKHgpCisjZGVmaW5lIGJlNjRfdG9fY3B1KHgp
ICh4KQogI2VsaWYgZGVmaW5lZChIQVZFX0JZVEVTV0FQX0gpCiAvKiBXZSBoYXZlIChob3BlZnVs
bHkpIG9wdGltaXplZCB2ZXJzaW9ucyBpbiBieXRlc3dhcC5oICovCi0jIGluY2x1ZGUgPGJ5dGVz
d2FwLmg+Ci0jIGRlZmluZSBiZTMyX3RvX2NwdSh4KQlic3dhcF8zMigoeCkpCi0jIGRlZmluZSBi
ZTY0X3RvX2NwdSh4KQlic3dhcF82NCgoeCkpCi0jZWxzZQorI2luY2x1ZGUgPGJ5dGVzd2FwLmg+
CisjZGVmaW5lIGJlMzJfdG9fY3B1KHgpIGJzd2FwXzMyKCh4KSkKKyNkZWZpbmUgYmU2NF90b19j
cHUoeCkgYnN3YXBfNjQoKHgpKQorI2Vsc2UgLyogV09SRFNfQklHRU5ESUFOICovCiAKICNpZiBk
ZWZpbmVkKF9fR05VQ19fKSAmJiBkZWZpbmVkKEhBVkVfWDg2KQogLyogRmFsbCBiYWNrLiAqLwot
c3RhdGljIGlubGluZSB1aW50MzJfdCBiZTMyX3RvX2NwdSh1aW50MzJfdCB2KSB7Ci0gICAvKiBv
cHRpbWl6ZWQgZm9yIHg4Ni4gKi8KLSAgIGFzbSgiYnN3YXAgJTAiIDogIj1yIiAodikgOiAiMCIg
KHYpKTsKLSAgIHJldHVybiB2OwotfQotIyBlbHNlIC8qIEhBVkVfWDg2ICovCi0jICBpZmRlZiBI
QVZFX05FVElORVRfSU5fSAotIyAgIGluY2x1ZGUgPG5ldGluZXQvaW4uaD4KLSMgIGVsaWYgZGVm
aW5lZCBIQVZFX1dJTlNPQ0syX0gKLSMgICBpbmNsdWRlIDx3aW5zb2NrMi5oPgotIyAgZW5kaWYK
LSMgIGRlZmluZSBiZTMyX3RvX2NwdSh4KQludG9obCgoeCkpCi0jIGVuZGlmIC8qIEhBVkVfWDg2
ICovCi0KLXN0YXRpYyBpbmxpbmUgdWludDY0X3QgYmU2NF90b19jcHUodWludDY0X3Qgdikgewot
IyBpZmRlZiBOT182NEJJVF9NQVRICi0gICAvKiB1c2UgdGhlIG1ha2U2NCBmdW5jdGlvbnMgdG8g
ZG8gNjQtYml0IG1hdGggKi8KLSAgIHYgPSBtYWtlNjQoaHRvbmwobG93MzIodikpLGh0b25sKGhp
Z2gzMih2KSkpOwotIyBlbHNlCi0gICAvKiB1c2UgdGhlIG5hdGl2ZSA2NC1iaXQgbWF0aCAqLwot
ICAgdj0gKHVpbnQ2NF90KSgoYmUzMl90b19jcHUoKHVpbnQzMl90KSh2ID4+IDMyKSkpIHwgKCgo
dWludDY0X3QpYmUzMl90b19jcHUoKHVpbnQzMl90KXYpKSA8PCAzMikpOwotIyBlbmRpZgotICAg
cmV0dXJuIHY7CitzdGF0aWMgaW5saW5lIHVpbnQzMl90IGJlMzJfdG9fY3B1KHVpbnQzMl90IHYp
Cit7CisgICAgLyogb3B0aW1pemVkIGZvciB4ODYuICovCisgICAgYXNtKCJic3dhcCAlMCIgOiAi
PXIiKHYpIDogIjAiKHYpKTsKKyAgICByZXR1cm4gdjsKIH0KKyNlbHNlIC8qIEhBVkVfWDg2ICov
CisjaWZkZWYgSEFWRV9ORVRJTkVUX0lOX0gKKyNpbmNsdWRlIDxuZXRpbmV0L2luLmg+CisjZWxp
ZiBkZWZpbmVkIEhBVkVfV0lOU09DSzJfSAorI2luY2x1ZGUgPHdpbnNvY2syLmg+CisjZW5kaWYg
LyogSEFWRV9ORVRJTkVUX0lOX0ggKi8KKyNkZWZpbmUgYmUzMl90b19jcHUoeCkgbnRvaGwoKHgp
KQorI2VuZGlmIC8qIEhBVkVfWDg2ICovCiAKLSNlbmRpZiAKK3N0YXRpYyBpbmxpbmUgdWludDY0
X3QgYmU2NF90b19jcHUodWludDY0X3QgdikKK3sKKyNpZmRlZiBOT182NEJJVF9NQVRICisgICAg
LyogdXNlIHRoZSBtYWtlNjQgZnVuY3Rpb25zIHRvIGRvIDY0LWJpdCBtYXRoICovCisgICAgdiA9
IG1ha2U2NChodG9ubChsb3czMih2KSksIGh0b25sKGhpZ2gzMih2KSkpOworI2Vsc2UgIC8qIE5P
XzY0QklUX01BVEggKi8KKyAgICAvKiB1c2UgdGhlIG5hdGl2ZSA2NC1iaXQgbWF0aCAqLworICAg
IHYgPSAodWludDY0X3QpKChiZTMyX3RvX2NwdSgodWludDMyX3QpKHYgPj4gMzIpKSkgfAorICAg
ICAgICAgICAgICAgICAgICgoKHVpbnQ2NF90KWJlMzJfdG9fY3B1KCh1aW50MzJfdCl2KSkgPDwg
MzIpKTsKKyNlbmRpZiAvKiBOT182NEJJVF9NQVRIICovCisgICAgcmV0dXJuIHY7Cit9CiAKICNl
bmRpZiAvKiBXT1JEU19CSUdFTkRJQU4gKi8KIAorI2VuZGlmIC8qIEhBVkVfQ09ORklHX0ggKi8K
KwogLyoKLSAqIGZ1bmN0aW9ucyBtYW5pcHVsYXRpbmcgYml0dmVjdG9yX3QgCisgKiBmdW5jdGlv
bnMgbWFuaXB1bGF0aW5nIGJpdHZlY3Rvcl90CiAgKgogICogQSBiaXR2ZWN0b3JfdCBjb25zaXN0
cyBvZiBhbiBhcnJheSBvZiB3b3JkcyBhbmQgYW4gaW50ZWdlcgogICogcmVwcmVzZW50aW5nIHRo
ZSBudW1iZXIgb2Ygc2lnbmlmaWNhbnQgYml0cyBzdG9yZWQgaW4gdGhlIGFycmF5LgogICogVGhl
IGJpdHMgYXJlIHBhY2tlZCBhcyBmb2xsb3dzOiB0aGUgbGVhc3Qgc2lnbmlmaWNhbnQgYml0IGlz
IHRoYXQKICAqIG9mIHdvcmRbMF0sIHdoaWxlIHRoZSBtb3N0IHNpZ25pZmljYW50IGJpdCBpcyB0
aGUgbnRoIG1vc3QKICAqIHNpZ25pZmljYW50IGJpdCBvZiB3b3JkW21dLCB3aGVyZSBsZW5ndGgg
PSBiaXRzX3Blcl93b3JkICogbSArIG4uCi0gKiAKKyAqCiAgKi8KIAotI2RlZmluZSBiaXRzX3Bl
cl93b3JkICAzMgorI2RlZmluZSBiaXRzX3Blcl93b3JkIDMyCiAjZGVmaW5lIGJ5dGVzX3Blcl93
b3JkIDQKIAogdHlwZWRlZiBzdHJ1Y3QgewotICB1aW50MzJfdCBsZW5ndGg7ICAgCi0gIHVpbnQz
Ml90ICp3b3JkOworICAgIHVpbnQzMl90IGxlbmd0aDsKKyAgICB1aW50MzJfdCAqd29yZDsKIH0g
Yml0dmVjdG9yX3Q7CiAKKyNkZWZpbmUgX2JpdHZlY3Rvcl9nZXRfYml0KHYsIGJpdF9pbmRleCkg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgKCgoKCh2KS0+d29y
ZFsoKGJpdF9pbmRleCkgPj4gNSldKSA+PiAoKGJpdF9pbmRleCkmMzEpKSAmIDEpKQogCi0jZGVm
aW5lIF9iaXR2ZWN0b3JfZ2V0X2JpdCh2LCBiaXRfaW5kZXgpCQkJCVwKLSgJCQkJCQkJCQlcCi0g
KCgoKHYpLT53b3JkWygoYml0X2luZGV4KSA+PiA1KV0pID4+ICgoYml0X2luZGV4KSAmIDMxKSkg
JiAxKQkJXAotKQotCi0KLSNkZWZpbmUgX2JpdHZlY3Rvcl9zZXRfYml0KHYsIGJpdF9pbmRleCkJ
CQkJXAotKAkJCQkJCQkJCVwKLSAoKCh2KS0+d29yZFsoKGJpdF9pbmRleCkgPj4gNSldIHw9ICgo
dWludDMyX3QpMSA8PCAoKGJpdF9pbmRleCkgJiAzMSkpKSkgXAotKQorI2RlZmluZSBfYml0dmVj
dG9yX3NldF9iaXQodiwgYml0X2luZGV4KSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFwKKyAgICAoKCgodiktPndvcmRbKChiaXRfaW5kZXgpID4+IDUpXSB8PSAoKHVpbnQz
Ml90KTEgPDwgKChiaXRfaW5kZXgpJjMxKSkpKSkKIAotI2RlZmluZSBfYml0dmVjdG9yX2NsZWFy
X2JpdCh2LCBiaXRfaW5kZXgpCQkJCVwKLSgJCQkJCQkJCQlcCi0gKCgodiktPndvcmRbKChiaXRf
aW5kZXgpID4+IDUpXSAmPSB+KCh1aW50MzJfdCkxIDw8ICgoYml0X2luZGV4KSAmIDMxKSkpKSBc
Ci0pCisjZGVmaW5lIF9iaXR2ZWN0b3JfY2xlYXJfYml0KHYsIGJpdF9pbmRleCkgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICgoKCh2KS0+d29yZFsoKGJpdF9pbmRl
eCkgPj4gNSldICY9IH4oKHVpbnQzMl90KTEgPDwgKChiaXRfaW5kZXgpJjMxKSkpKSkKIAotI2Rl
ZmluZSBfYml0dmVjdG9yX2dldF9sZW5ndGgodikJCQkJCVwKLSgJCQkJCQkJCQlcCi0gKCh2KS0+
bGVuZ3RoKQkJCQkJCQkJXAotKQorI2RlZmluZSBfYml0dmVjdG9yX2dldF9sZW5ndGgodikgKCgo
diktPmxlbmd0aCkpCiAKLSNpZmRlZiBEQVRBVFlQRVNfVVNFX01BQ1JPUyAgLyogbGl0dGxlIGZ1
bmN0aW9ucyBhcmUgcmVhbGx5IG1hY3JvcyAqLworI2lmZGVmIERBVEFUWVBFU19VU0VfTUFDUk9T
IC8qIGxpdHRsZSBmdW5jdGlvbnMgYXJlIHJlYWxseSBtYWNyb3MgKi8KIAogI2RlZmluZSBiaXR2
ZWN0b3JfZ2V0X2JpdCh2LCBiaXRfaW5kZXgpIF9iaXR2ZWN0b3JfZ2V0X2JpdCh2LCBiaXRfaW5k
ZXgpCiAjZGVmaW5lIGJpdHZlY3Rvcl9zZXRfYml0KHYsIGJpdF9pbmRleCkgX2JpdHZlY3Rvcl9z
ZXRfYml0KHYsIGJpdF9pbmRleCkKQEAgLTQxOSwzNCArMzUxLDI1IEBAIHR5cGVkZWYgc3RydWN0
IHsKIAogI2Vsc2UKIAotaW50Ci1iaXR2ZWN0b3JfZ2V0X2JpdChjb25zdCBiaXR2ZWN0b3JfdCAq
diwgaW50IGJpdF9pbmRleCk7CitpbnQgYml0dmVjdG9yX2dldF9iaXQoY29uc3QgYml0dmVjdG9y
X3QgKnYsIGludCBiaXRfaW5kZXgpOwogCi12b2lkCi1iaXR2ZWN0b3Jfc2V0X2JpdChiaXR2ZWN0
b3JfdCAqdiwgaW50IGJpdF9pbmRleCk7Cit2b2lkIGJpdHZlY3Rvcl9zZXRfYml0KGJpdHZlY3Rv
cl90ICp2LCBpbnQgYml0X2luZGV4KTsKIAotdm9pZAotYml0dmVjdG9yX2NsZWFyX2JpdChiaXR2
ZWN0b3JfdCAqdiwgaW50IGJpdF9pbmRleCk7Cit2b2lkIGJpdHZlY3Rvcl9jbGVhcl9iaXQoYml0
dmVjdG9yX3QgKnYsIGludCBiaXRfaW5kZXgpOwogCi11bnNpZ25lZCBsb25nCi1iaXR2ZWN0b3Jf
Z2V0X2xlbmd0aChjb25zdCBiaXR2ZWN0b3JfdCAqdik7Cit1bnNpZ25lZCBsb25nIGJpdHZlY3Rv
cl9nZXRfbGVuZ3RoKGNvbnN0IGJpdHZlY3Rvcl90ICp2KTsKIAogI2VuZGlmCiAKLWludAotYml0
dmVjdG9yX2FsbG9jKGJpdHZlY3Rvcl90ICp2LCB1bnNpZ25lZCBsb25nIGxlbmd0aCk7CitpbnQg
Yml0dmVjdG9yX2FsbG9jKGJpdHZlY3Rvcl90ICp2LCB1bnNpZ25lZCBsb25nIGxlbmd0aCk7CiAK
LXZvaWQKLWJpdHZlY3Rvcl9kZWFsbG9jKGJpdHZlY3Rvcl90ICp2KTsKK3ZvaWQgYml0dmVjdG9y
X2RlYWxsb2MoYml0dmVjdG9yX3QgKnYpOwogCi12b2lkCi1iaXR2ZWN0b3Jfc2V0X3RvX3plcm8o
Yml0dmVjdG9yX3QgKngpOwordm9pZCBiaXR2ZWN0b3Jfc2V0X3RvX3plcm8oYml0dmVjdG9yX3Qg
KngpOwogCi12b2lkCi1iaXR2ZWN0b3JfbGVmdF9zaGlmdChiaXR2ZWN0b3JfdCAqeCwgaW50IGlu
ZGV4KTsKK3ZvaWQgYml0dmVjdG9yX2xlZnRfc2hpZnQoYml0dmVjdG9yX3QgKngsIGludCBpbmRl
eCk7CiAKLWNoYXIgKgotYml0dmVjdG9yX2JpdF9zdHJpbmcoYml0dmVjdG9yX3QgKngsIGNoYXIq
IGJ1ZiwgaW50IGxlbik7CitjaGFyICpiaXR2ZWN0b3JfYml0X3N0cmluZyhiaXR2ZWN0b3JfdCAq
eCwgY2hhciAqYnVmLCBpbnQgbGVuKTsKIAogI2lmZGVmIF9fY3BsdXNwbHVzCiB9CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNy
dHAvY3J5cHRvL2luY2x1ZGUvZXJyLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2luY2x1ZGUvZXJyLmgKaW5kZXggYjZmMTk2
ZGE4NDNjMTRhOWE3ZWExMjEyMjM1MDNmZjI4NjMzYzFkMy4uNjZhMTAyM2VjODY5MWRjYTNmMTgw
ZmYwNWYwYzEzZjgxOTViZjg1YyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9pbmNsdWRlL2Vyci5oCisrKyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9j
cnlwdG8vaW5jbHVkZS9lcnIuaApAQCAtNDIsNyArNDIsNiBAQAogICoKICAqLwogCi0KICNpZm5k
ZWYgRVJSX0gKICNkZWZpbmUgRVJSX0gKIApAQCAtNjIsNyArNjEsNiBAQCBleHRlcm4gIkMiIHsK
ICAqIEB7CiAgKi8KIAotCiAvKioKICAqIEB9CiAgKi8KQEAgLTgyLDkgKzgwLDExIEBAIHR5cGVk
ZWYgZW51bSB7CiAKIHNydHBfZXJyX3N0YXR1c190IHNydHBfZXJyX3JlcG9ydGluZ19pbml0KHZv
aWQpOwogCi10eXBlZGVmIHZvaWQgKHNydHBfZXJyX3JlcG9ydF9oYW5kbGVyX2Z1bmNfdCkoc3J0
cF9lcnJfcmVwb3J0aW5nX2xldmVsX3QgbGV2ZWwsIGNvbnN0IGNoYXIgKiBtc2cpOwordHlwZWRl
ZiB2b2lkKHNydHBfZXJyX3JlcG9ydF9oYW5kbGVyX2Z1bmNfdCkoc3J0cF9lcnJfcmVwb3J0aW5n
X2xldmVsX3QgbGV2ZWwsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBjb25zdCBjaGFyICptc2cpOwogCi1zcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2luc3RhbGxf
ZXJyX3JlcG9ydF9oYW5kbGVyKHNydHBfZXJyX3JlcG9ydF9oYW5kbGVyX2Z1bmNfdCBmdW5jKTsK
K3NydHBfZXJyX3N0YXR1c190IHNydHBfaW5zdGFsbF9lcnJfcmVwb3J0X2hhbmRsZXIoCisgICAg
c3J0cF9lcnJfcmVwb3J0X2hhbmRsZXJfZnVuY190IGZ1bmMpOwogCiAvKgogICogc3J0cF9lcnJf
cmVwb3J0IHJlcG9ydHMgYSAncHJpbnRmJyBmb3JtYXR0ZWQgZXJyb3IKQEAgLTk2LDkgKzk2LDcg
QEAgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9pbnN0YWxsX2Vycl9yZXBvcnRfaGFuZGxlcihzcnRw
X2Vycl9yZXBvcnRfaGFuZGxlcl9mdW5jX3QKICAqCiAgKi8KIAotdm9pZAotc3J0cF9lcnJfcmVw
b3J0KHNydHBfZXJyX3JlcG9ydGluZ19sZXZlbF90IGxldmVsLCBjb25zdCBjaGFyICpmb3JtYXQs
IC4uLik7Ci0KK3ZvaWQgc3J0cF9lcnJfcmVwb3J0KHNydHBfZXJyX3JlcG9ydGluZ19sZXZlbF90
IGxldmVsLCBjb25zdCBjaGFyICpmb3JtYXQsIC4uLik7CiAKIC8qCiAgKiBkZWJ1Z19tb2R1bGVf
dCBkZWZpbmVzIGEgZGVidWcgbW9kdWxlCkBAIC0xMTEsMTcgKzEwOSwyMSBAQCB0eXBlZGVmIHN0
cnVjdCB7CiAKICNpZmRlZiBFTkFCTEVfREVCVUdfTE9HR0lORwogCi0jZGVmaW5lIGRlYnVnX3By
aW50KG1vZCwgZm9ybWF0LCBhcmcpICAgICAgICAgICAgICAgICAgXAorI2RlZmluZSBkZWJ1Z19w
cmludChtb2QsIGZvcm1hdCwgYXJnKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFwKICAgICBzcnRwX2Vycl9yZXBvcnQoc3J0cF9lcnJfbGV2ZWxfZGVidWcsICgiJXM6
ICIgZm9ybWF0ICJcbiIpLCBtb2QubmFtZSwgYXJnKQotI2RlZmluZSBkZWJ1Z19wcmludDIobW9k
LCBmb3JtYXQsIGFyZzEsIGFyZzIpICAgICAgICAgICAgICAgICAgXAotICAgIHNydHBfZXJyX3Jl
cG9ydChzcnRwX2Vycl9sZXZlbF9kZWJ1ZywgKCIlczogIiBmb3JtYXQgIlxuIiksIG1vZC5uYW1l
LCBhcmcxLCBhcmcyKQorI2RlZmluZSBkZWJ1Z19wcmludDIobW9kLCBmb3JtYXQsIGFyZzEsIGFy
ZzIpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICBzcnRwX2Vycl9yZXBv
cnQoc3J0cF9lcnJfbGV2ZWxfZGVidWcsICgiJXM6ICIgZm9ybWF0ICJcbiIpLCBtb2QubmFtZSwg
ICAgICBcCisgICAgICAgICAgICAgICAgICAgIGFyZzEsIGFyZzIpCiAKICNlbHNlCiAKLSNkZWZp
bmUgZGVidWdfcHJpbnQobW9kLCBmb3JtYXQsIGFyZykgICAgICAgICAgICAgICAgICBcCi0gICAg
aWYgKG1vZC5vbikgc3J0cF9lcnJfcmVwb3J0KHNydHBfZXJyX2xldmVsX2RlYnVnLCAoIiVzOiAi
IGZvcm1hdCAiXG4iKSwgbW9kLm5hbWUsIGFyZykKLSNkZWZpbmUgZGVidWdfcHJpbnQyKG1vZCwg
Zm9ybWF0LCBhcmcxLCBhcmcyKSAgICAgICAgICAgICAgICAgIFwKLSAgICBpZiAobW9kLm9uKSBz
cnRwX2Vycl9yZXBvcnQoc3J0cF9lcnJfbGV2ZWxfZGVidWcsICgiJXM6ICIgZm9ybWF0ICJcbiIp
LCBtb2QubmFtZSwgYXJnMSwgYXJnMikKKyNkZWZpbmUgZGVidWdfcHJpbnQobW9kLCBmb3JtYXQs
IGFyZykgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgaWYg
KG1vZC5vbikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgXAorICAgIHNydHBfZXJyX3JlcG9ydChzcnRwX2Vycl9sZXZlbF9kZWJ1
ZywgKCIlczogIiBmb3JtYXQgIlxuIiksIG1vZC5uYW1lLCBhcmcpCisjZGVmaW5lIGRlYnVnX3By
aW50Mihtb2QsIGZvcm1hdCwgYXJnMSwgYXJnMikgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgXAorICAgIGlmIChtb2Qub24pICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICBzcnRwX2Vycl9yZXBvcnQoc3J0
cF9lcnJfbGV2ZWxfZGVidWcsICgiJXM6ICIgZm9ybWF0ICJcbiIpLCBtb2QubmFtZSwgICAgICBc
CisgICAgICAgICAgICAgICAgICAgIGFyZzEsIGFyZzIpCiAKICNlbmRpZgogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAv
Y3J5cHRvL2luY2x1ZGUvaW50ZWdlcnMuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vaW5jbHVkZS9pbnRlZ2Vycy5oCmluZGV4
IDRhODcxYzcwODUwMjhjZmQ1NGIwNzcyOTQ1NGVkNTM0ZDQ0OTU4NWMuLmYyY2Q3YzA2NGQ3MTlk
YmJjNGE2YzBlZjBlNGM0ZGEwYjk4ZDZhNWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vaW5jbHVkZS9pbnRl
Z2Vycy5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvbGlic3J0cC9jcnlwdG8vaW5jbHVkZS9pbnRlZ2Vycy5oCkBAIC04LDI2ICs4LDI2IEBACiAg
Ki8KIAogLyoKLSAqCQorICoKICAqIENvcHlyaWdodCAoYykgMjAwMS0yMDE3LCBDaXNjbyBTeXN0
ZW1zLCBJbmMuCiAgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICogCisgKgogICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKICAqIGFyZSBtZXQ6Ci0gKiAKKyAqCiAgKiAgIFJlZGlzdHJpYnV0aW9u
cyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CiAgKiAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ci4KLSAqIAorICoKICAqICAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVw
cm9kdWNlIHRoZSBhYm92ZQogICogICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwogICogICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVu
dGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQKICAqICAgd2l0aCB0aGUgZGlz
dHJpYnV0aW9uLgotICogCisgKgogICogICBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBDaXNjbyBT
eXN0ZW1zLCBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCiAgKiAgIGNvbnRyaWJ1dG9ycyBtYXkg
YmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZAogICogICBmcm9t
IHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24u
Ci0gKiAKKyAqCiAgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQg
SE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCiAgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJ
TVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAogICogTElNSVRFRCBUTywgVEhF
IElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKQEAgLTQz
LDI5ICs0MywyNyBAQAogICoKICAqLwogCi0KICNpZm5kZWYgSU5URUdFUlNfSAogI2RlZmluZSBJ
TlRFR0VSU19ICiAKLQogLyogdXNlIHN0YW5kYXJkIGludGVnZXIgZGVmaW5pdGlvbnMsIGlmIHRo
ZXkncmUgYXZhaWxhYmxlICAqLwogI2lmZGVmIEhBVkVfU1RETElCX0gKLSMgaW5jbHVkZSA8c3Rk
bGliLmg+CisjaW5jbHVkZSA8c3RkbGliLmg+CiAjZW5kaWYKICNpZmRlZiBIQVZFX1NURElOVF9I
Ci0jIGluY2x1ZGUgPHN0ZGludC5oPgorI2luY2x1ZGUgPHN0ZGludC5oPgogI2VuZGlmCiAjaWZk
ZWYgSEFWRV9JTlRUWVBFU19ICi0jIGluY2x1ZGUgPGludHR5cGVzLmg+CisjaW5jbHVkZSA8aW50
dHlwZXMuaD4KICNlbmRpZgogI2lmZGVmIEhBVkVfU1lTX1RZUEVTX0gKLSMgaW5jbHVkZSA8c3lz
L3R5cGVzLmg+CisjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CiAjZW5kaWYKICNpZmRlZiBIQVZFX1NZ
U19JTlRfVFlQRVNfSAotIyBpbmNsdWRlIDxzeXMvaW50X3R5cGVzLmg+ICAgIC8qIHRoaXMgZXhp
c3RzIG9uIFN1biBPUyAqLworI2luY2x1ZGUgPHN5cy9pbnRfdHlwZXMuaD4gLyogdGhpcyBleGlz
dHMgb24gU3VuIE9TICovCiAjZW5kaWYKICNpZmRlZiBIQVZFX01BQ0hJTkVfVFlQRVNfSAotIyBp
bmNsdWRlIDxtYWNoaW5lL3R5cGVzLmg+CisjaW5jbHVkZSA8bWFjaGluZS90eXBlcy5oPgogI2Vu
ZGlmCiAKICNpZmRlZiBfX2NwbHVzcGx1cwpAQCAtNzQsMzEgKzcyLDMwIEBAIGV4dGVybiAiQyIg
ewogCiAvKiBDYW4gd2UgZG8gNjQgYml0IGludGVnZXJzPyAqLwogI2lmICFkZWZpbmVkKEhBVkVf
VUlOVDY0X1QpCi0jIGlmIFNJWkVPRl9VTlNJR05FRF9MT05HID09IDgKLXR5cGVkZWYgdW5zaWdu
ZWQgbG9uZwkJdWludDY0X3Q7Ci0jIGVsaWYgU0laRU9GX1VOU0lHTkVEX0xPTkdfTE9ORyA9PSA4
Ci10eXBlZGVmIHVuc2lnbmVkIGxvbmcgbG9uZwl1aW50NjRfdDsKLSMgZWxzZQotIyAgZGVmaW5l
IE5PXzY0QklUX01BVEggMQotIyBlbmRpZgorI2lmIFNJWkVPRl9VTlNJR05FRF9MT05HID09IDgK
K3R5cGVkZWYgdW5zaWduZWQgbG9uZyB1aW50NjRfdDsKKyNlbGlmIFNJWkVPRl9VTlNJR05FRF9M
T05HX0xPTkcgPT0gOAordHlwZWRlZiB1bnNpZ25lZCBsb25nIGxvbmcgdWludDY0X3Q7CisjZWxz
ZQorI2RlZmluZSBOT182NEJJVF9NQVRIIDEKKyNlbmRpZgogI2VuZGlmCiAKIC8qIFJlYXNvbmFi
bGUgZGVmYXVsdHMgZm9yIDMyIGJpdCBtYWNoaW5lcyAtIHlvdSBtYXkgbmVlZCB0bwogICogZWRp
dCB0aGVzZSBkZWZpbml0aW9ucyBmb3IgeW91ciBvd24gbWFjaGluZS4gKi8KICNpZm5kZWYgSEFW
RV9VSU5UOF9UCi10eXBlZGVmIHVuc2lnbmVkIGNoYXIJCXVpbnQ4X3Q7Cit0eXBlZGVmIHVuc2ln
bmVkIGNoYXIgdWludDhfdDsKICNlbmRpZgogI2lmbmRlZiBIQVZFX1VJTlQxNl9UCi10eXBlZGVm
IHVuc2lnbmVkIHNob3J0IGludAl1aW50MTZfdDsKK3R5cGVkZWYgdW5zaWduZWQgc2hvcnQgaW50
IHVpbnQxNl90OwogI2VuZGlmCiAjaWZuZGVmIEhBVkVfVUlOVDMyX1QKLXR5cGVkZWYgdW5zaWdu
ZWQgaW50CQl1aW50MzJfdDsKK3R5cGVkZWYgdW5zaWduZWQgaW50IHVpbnQzMl90OwogI2VuZGlm
CiAjaWZuZGVmIEhBVkVfSU5UMzJfVAogdHlwZWRlZiBpbnQgaW50MzJfdDsKICNlbmRpZgogCi0K
ICNpZiBkZWZpbmVkKE5PXzY0QklUX01BVEgpICYmIGRlZmluZWQoSEFWRV9DT05GSUdfSCkKIHR5
cGVkZWYgZG91YmxlIHVpbnQ2NF90OwogLyogYXNzZXJ0IHRoYXQgc2l6ZW9mKGRvdWJsZSkgPT0g
OCAqLwpAQCAtMTA3LDM5ICsxMDQsMzggQEAgZXh0ZXJuIHVpbnQzMl90IGhpZ2gzMih1aW50NjRf
dCB2YWx1ZSk7CiBleHRlcm4gdWludDMyX3QgbG93MzIodWludDY0X3QgdmFsdWUpOwogI2VuZGlm
CiAKLQogLyogVGhlc2UgbWFjcm9zIGFyZSB0byBsb2FkIGFuZCBzdG9yZSAzMi1iaXQgdmFsdWVz
IGZyb20gdW4tYWxpZ25lZAogICAgYWRkcmVzc2VzLiAgVGhpcyBpcyByZXF1aXJlZCBmb3IgcHJv
Y2Vzc29ycyB0aGF0IGRvIG5vdCBhbGxvdyB1bmFsaWduZWQKICAgIGxvYWRzLiAqLwogI2lmZGVm
IEFMSUdOTUVOVF8zMkJJVF9SRVFVSVJFRAogLyogTm90ZSB0aGF0IGlmIGl0J3MgaW4gYSB2YXJp
YWJsZSwgeW91IGNhbiBtZW1jcHkgaXQgKi8KICNpZmRlZiBXT1JEU19CSUdFTkRJQU4KLSNkZWZp
bmUgUFVUXzMyKGFkZHIsdmFsdWUpIFwKLSAgICB7IFwKLSAgICAgICAgKCh1bnNpZ25lZCBjaGFy
ICopIChhZGRyKSlbMF0gPSAodmFsdWUgPj4gMjQpOyBcCi0gICAgICAgICgodW5zaWduZWQgY2hh
ciAqKSAoYWRkcikpWzFdID0gKHZhbHVlID4+IDE2KSAmIDB4ZmY7IFwKLSAgICAgICAgKCh1bnNp
Z25lZCBjaGFyICopIChhZGRyKSlbMl0gPSAodmFsdWUgPj4gOCkgJiAweGZmOyBcCi0gICAgICAg
ICgodW5zaWduZWQgY2hhciAqKSAoYWRkcikpWzNdID0gKHZhbHVlKSAgICAgICYgMHhmZjsgXAor
I2RlZmluZSBQVVRfMzIoYWRkciwgdmFsdWUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICB7ICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAg
ICgodW5zaWduZWQgY2hhciAqKShhZGRyKSlbMF0gPSAodmFsdWUgPj4gMjQpOyAgICAgICAgICAg
ICAgICAgICAgICAgICAgXAorICAgICAgICAoKHVuc2lnbmVkIGNoYXIgKikoYWRkcikpWzFdID0g
KHZhbHVlID4+IDE2KSAmIDB4ZmY7ICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgKCh1bnNp
Z25lZCBjaGFyICopKGFkZHIpKVsyXSA9ICh2YWx1ZSA+PiA4KSAmIDB4ZmY7ICAgICAgICAgICAg
ICAgICAgICBcCisgICAgICAgICgodW5zaWduZWQgY2hhciAqKShhZGRyKSlbM10gPSAodmFsdWUp
JjB4ZmY7ICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgIH0KLSNkZWZpbmUgR0VUXzMy
KGFkZHIpICgoKCh1bnNpZ25lZCBjaGFyICopIChhZGRyKSlbMF0gPDwgMjQpIHwgIFwKLSAgICAg
ICAgICAgICAgICAgICAgICAoKCh1bnNpZ25lZCBjaGFyICopIChhZGRyKSlbMV0gPDwgMTYpIHwg
IFwKLSAgICAgICAgICAgICAgICAgICAgICAoKCh1bnNpZ25lZCBjaGFyICopIChhZGRyKSlbMl0g
PDwgOCkgIHwgIFwKLSAgICAgICAgICAgICAgICAgICAgICAoKCh1bnNpZ25lZCBjaGFyICopIChh
ZGRyKSlbM10pKSAKKyNkZWZpbmUgR0VUXzMyKGFkZHIpICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgKCgoKHVuc2lnbmVkIGNo
YXIgKikoYWRkcikpWzBdIDw8IDI0KSB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgXAorICAgICAoKCh1bnNpZ25lZCBjaGFyICopKGFkZHIpKVsxXSA8PCAxNikgfCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgKCgodW5zaWduZWQgY2hhciAqKShh
ZGRyKSlbMl0gPDwgOCkgfCAoKCh1bnNpZ25lZCBjaGFyICopKGFkZHIpKVszXSkpCiAjZWxzZQot
I2RlZmluZSBQVVRfMzIoYWRkcix2YWx1ZSkgXAotICAgIHsgXAotICAgICAgICAoKHVuc2lnbmVk
IGNoYXIgKikgKGFkZHIpKVszXSA9ICh2YWx1ZSA+PiAyNCk7IFwKLSAgICAgICAgKCh1bnNpZ25l
ZCBjaGFyICopIChhZGRyKSlbMl0gPSAodmFsdWUgPj4gMTYpICYgMHhmZjsgXAotICAgICAgICAo
KHVuc2lnbmVkIGNoYXIgKikgKGFkZHIpKVsxXSA9ICh2YWx1ZSA+PiA4KSAmIDB4ZmY7IFwKLSAg
ICAgICAgKCh1bnNpZ25lZCBjaGFyICopIChhZGRyKSlbMF0gPSAodmFsdWUpICAgICAgJiAweGZm
OyBcCisjZGVmaW5lIFBVVF8zMihhZGRyLCB2YWx1ZSkgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgIHsgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAg
ICAgICAgKCh1bnNpZ25lZCBjaGFyICopKGFkZHIpKVszXSA9ICh2YWx1ZSA+PiAyNCk7ICAgICAg
ICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgICgodW5zaWduZWQgY2hhciAqKShhZGRyKSlb
Ml0gPSAodmFsdWUgPj4gMTYpICYgMHhmZjsgICAgICAgICAgICAgICAgICAgXAorICAgICAgICAo
KHVuc2lnbmVkIGNoYXIgKikoYWRkcikpWzFdID0gKHZhbHVlID4+IDgpICYgMHhmZjsgICAgICAg
ICAgICAgICAgICAgIFwKKyAgICAgICAgKCh1bnNpZ25lZCBjaGFyICopKGFkZHIpKVswXSA9ICh2
YWx1ZSkmMHhmZjsgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgfQotI2RlZmluZSBH
RVRfMzIoYWRkcikgKCgoKHVuc2lnbmVkIGNoYXIgKikgKGFkZHIpKVszXSA8PCAyNCkgfCAgXAot
ICAgICAgICAgICAgICAgICAgICAgICgoKHVuc2lnbmVkIGNoYXIgKikgKGFkZHIpKVsyXSA8PCAx
NikgfCAgXAotICAgICAgICAgICAgICAgICAgICAgICgoKHVuc2lnbmVkIGNoYXIgKikgKGFkZHIp
KVsxXSA8PCA4KSAgfCAgXAotICAgICAgICAgICAgICAgICAgICAgICgoKHVuc2lnbmVkIGNoYXIg
KikgKGFkZHIpKVswXSkpIAorI2RlZmluZSBHRVRfMzIoYWRkcikgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAoKCgodW5zaWdu
ZWQgY2hhciAqKShhZGRyKSlbM10gPDwgMjQpIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBcCisgICAgICgoKHVuc2lnbmVkIGNoYXIgKikoYWRkcikpWzJdIDw8IDE2KSB8ICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAoKCh1bnNpZ25lZCBjaGFy
ICopKGFkZHIpKVsxXSA8PCA4KSB8ICgoKHVuc2lnbmVkIGNoYXIgKikoYWRkcikpWzBdKSkKICNl
bmRpZiAvLyBXT1JEU19CSUdFTkRJQU4KICNlbHNlCi0jZGVmaW5lIFBVVF8zMihhZGRyLHZhbHVl
KSAqKCgodWludDMyX3QgKikgKGFkZHIpKSA9ICh2YWx1ZSkKKyNkZWZpbmUgUFVUXzMyKGFkZHIs
IHZhbHVlKSAqKCgodWludDMyX3QgKikgKGFkZHIpKSA9ICh2YWx1ZSkKICNkZWZpbmUgR0VUXzMy
KGFkZHIpICgqKCgodWludDMyX3QgKikgKGFkZHIpKSkKICNlbmRpZgogCmRpZmYgLS1naXQgYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5
cHRvL2luY2x1ZGUva2V5LmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2luY2x1ZGUva2V5LmgKaW5kZXggNTViYTEyNjQzNWQ3
MzMzNWYxMDk0MDVhMTgwY2RlYWQ4YjViZTNmYy4uMzQ5ODExNGIwNTAyYTU1NmNiNWRmNzIwZTA5
ZTljODRjYzRkNDBjZSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9pbmNsdWRlL2tleS5oCisrKyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8v
aW5jbHVkZS9rZXkuaApAQCAtNDUsNyArNDUsNyBAQAogI2lmbmRlZiBLRVlfSAogI2RlZmluZSBL
RVlfSAogCi0jaW5jbHVkZSAicmRieC5oIiAgIC8qIGZvciBzcnRwX3h0ZF9zZXFfbnVtX3QgKi8K
KyNpbmNsdWRlICJyZGJ4LmgiIC8qIGZvciBzcnRwX3h0ZF9zZXFfbnVtX3QgKi8KICNpbmNsdWRl
ICJlcnIuaCIKIAogI2lmZGVmIF9fY3BsdXNwbHVzCkBAIC02MCw5ICs2MCwxMSBAQCB0eXBlZGVm
IGVudW0gewogICAgIHNydHBfa2V5X2V2ZW50X2hhcmRfbGltaXQKIH0gc3J0cF9rZXlfZXZlbnRf
dDsKIAotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9rZXlfbGltaXRfc2V0KHNydHBfa2V5X2xpbWl0
X3Qga2V5LCBjb25zdCBzcnRwX3h0ZF9zZXFfbnVtX3Qgcyk7CitzcnRwX2Vycl9zdGF0dXNfdCBz
cnRwX2tleV9saW1pdF9zZXQoc3J0cF9rZXlfbGltaXRfdCBrZXksCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3J0cF94dGRfc2VxX251bV90IHMpOwogCi1zcnRw
X2Vycl9zdGF0dXNfdCBzcnRwX2tleV9saW1pdF9jbG9uZShzcnRwX2tleV9saW1pdF90IG9yaWdp
bmFsLCBzcnRwX2tleV9saW1pdF90ICpuZXdfa2V5KTsKK3NydHBfZXJyX3N0YXR1c190IHNydHBf
a2V5X2xpbWl0X2Nsb25lKHNydHBfa2V5X2xpbWl0X3Qgb3JpZ2luYWwsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBzcnRwX2tleV9saW1pdF90ICpuZXdfa2V5KTsKIAog
c3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9rZXlfbGltaXRfY2hlY2soY29uc3Qgc3J0cF9rZXlfbGlt
aXRfdCBrZXkpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2luY2x1ZGUvbnVsbF9jaXBoZXIuaCBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlw
dG8vaW5jbHVkZS9udWxsX2NpcGhlci5oCmluZGV4IDRlMTY4ZjFhNzcyZjQ0ZWViZjc1OGE2Mjhl
ZmYyMmYzMGU2YWYyZjIuLjVlOGM5MWMxMzQ5MTM5YTAwNGI1MzNhYjNiYWZlMGE0MGFiYTAxMmUg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvbGlic3J0cC9jcnlwdG8vaW5jbHVkZS9udWxsX2NpcGhlci5oCisrKyBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vaW5jbHVk
ZS9udWxsX2NpcGhlci5oCkBAIC00NCw3ICs0NCw2IEBACiAgKgogICovCiAKLQogI2lmbmRlZiBO
VUxMX0NJUEhFUl9ICiAjZGVmaW5lIE5VTExfQ0lQSEVSX0gKIApkaWZmIC0tZ2l0IGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9p
bmNsdWRlL3JkYi5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJzcnRwL2NyeXB0by9pbmNsdWRlL3JkYi5oCmluZGV4IDQ2NzFhMGEwZDk4YjVlM2Y0
MzZiOTUyNDJkNTgwYmI2MzZlNTE3MDkuLjk4MzE0YzFmM2VlMDQ5MjIyMDE3ODc3NTg1MTJjNGI1
M2YyNzBmZTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vaW5jbHVkZS9yZGIuaAorKysgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2luY2x1
ZGUvcmRiLmgKQEAgLTcsMjggKzcsMjcgQEAKICAqIENpc2NvIFN5c3RlbXMsIEluYy4KICAqLwog
Ci0KIC8qCi0gKgkKKyAqCiAgKiBDb3B5cmlnaHQgKGMpIDIwMDEtMjAxNywgQ2lzY28gU3lzdGVt
cywgSW5jLgogICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqIAorICoKICAqIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAog
ICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zCiAgKiBhcmUgbWV0OgotICogCisgKgogICogICBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAogICogICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
Ci0gKiAKKyAqCiAgKiAgIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUKICAqICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKICAqICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRh
dGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkCiAgKiAgIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KLSAqIAorICoKICAqICAgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgQ2lzY28gU3lz
dGVtcywgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwogICogICBjb250cmlidXRvcnMgbWF5IGJl
IHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQKICAqICAgZnJvbSB0
aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgot
ICogCisgKgogICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhP
TERFUlMgQU5EIENPTlRSSUJVVE9SUwogICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1Q
TElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKICAqIExJTUlURUQgVE8sIFRIRSBJ
TVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCkBAIC00Nyw5
ICs0Niw5IEBACiAjaWZuZGVmIFJFUExBWV9EQl9ICiAjZGVmaW5lIFJFUExBWV9EQl9ICiAKLSNp
bmNsdWRlICJpbnRlZ2Vycy5oIiAgICAgICAgIC8qIGZvciB1aW50MzJfdCAgICAgKi8KLSNpbmNs
dWRlICJkYXRhdHlwZXMuaCIgICAgICAgIC8qIGZvciB2MTI4X3QgICAgICAgKi8KLSNpbmNsdWRl
ICJlcnIuaCIgICAgICAgICAgICAgIC8qIGZvciBzcnRwX2Vycl9zdGF0dXNfdCAqLworI2luY2x1
ZGUgImludGVnZXJzLmgiICAvKiBmb3IgdWludDMyX3QgICAgICovCisjaW5jbHVkZSAiZGF0YXR5
cGVzLmgiIC8qIGZvciB2MTI4X3QgICAgICAgKi8KKyNpbmNsdWRlICJlcnIuaCIgICAgICAgLyog
Zm9yIHNydHBfZXJyX3N0YXR1c190ICovCiAKICNpZmRlZiBfX2NwbHVzcGx1cwogZXh0ZXJuICJD
IiB7CkBAIC03Niw3ICs3NSw2IEBAIHR5cGVkZWYgc3RydWN0IHsKICAqLwogc3J0cF9lcnJfc3Rh
dHVzX3Qgc3J0cF9yZGJfaW5pdChzcnRwX3JkYl90ICpyZGIpOwogCi0KIC8qCiAgKiBzcnRwX3Jk
Yl9jaGVjawogICoKQEAgLTEwMyw3ICsxMDEsNiBAQCBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3Jk
Yl9hZGRfaW5kZXgoc3J0cF9yZGJfdCAqcmRiLCB1aW50MzJfdCByZGJfaW5kZXgpOwogICogc3J0
cF9yZGJfdCB1cG9uIHdoaWNoIHNydHBfcmRiX2FkZF9pbmRleCBpcyB1c2VkIQogICovCiAKLQog
LyoKICAqIHNydHBfcmRiX2luY3JlbWVudChkYikgaW5jcmVtZW50cyB0aGUgc2VxdWVuY2UgbnVt
YmVyIGluIGRiLCBpZiBpdCBpcwogICogbm90IHRvbyBoaWdoCkBAIC0xMjEsNyArMTE4LDYgQEAg
c3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9yZGJfaW5jcmVtZW50KHNydHBfcmRiX3QgKnJkYik7CiAg
Ki8KIHVpbnQzMl90IHNydHBfcmRiX2dldF92YWx1ZShjb25zdCBzcnRwX3JkYl90ICpyZGIpOwog
Ci0KICNpZmRlZiBfX2NwbHVzcGx1cwogfQogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2luY2x1
ZGUvcmRieC5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9saWJzcnRwL2NyeXB0by9pbmNsdWRlL3JkYnguaAppbmRleCAwMTBlYjAxMmQ3NzQ3YjcwMTJi
ZDdlM2JlYTAxZGQ0Y2E3NjcxOWFiLi4yMTk0MTc4ZWUyYWIzZjRjYzk4MGEwYWY4MWMzNzVkMzI4
NzljZTg4IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2luY2x1ZGUvcmRieC5oCisrKyBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vaW5jbHVk
ZS9yZGJ4LmgKQEAgLTksMjYgKzksMjYgQEAKICAqLwogCiAvKgotICoJCisgKgogICogQ29weXJp
Z2h0IChjKSAyMDAxLTIwMTcsIENpc2NvIFN5c3RlbXMsIEluYy4KICAqIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCi0gKiAKKyAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQg
YmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1p
dHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwogICogYXJlIG1ldDoK
LSAqIAorICoKICAqICAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWlu
IHRoZSBhYm92ZSBjb3B5cmlnaHQKICAqICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogCisgKgogICogICBSZWRpc3RyaWJ1
dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCiAgKiAgIGNvcHly
aWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCiAg
KiAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZAogICogICB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKiAKKyAqCiAgKiAgIE5l
aXRoZXIgdGhlIG5hbWUgb2YgdGhlIENpc2NvIFN5c3RlbXMsIEluYy4gbm9yIHRoZSBuYW1lcyBv
ZiBpdHMKICAqICAgY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90
ZSBwcm9kdWN0cyBkZXJpdmVkCiAgKiAgIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNp
ZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLSAqIAorICoKICAqIFRISVMgU09GVFdBUkUg
SVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKICAq
ICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5H
LCBCVVQgTk9UCiAgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNI
QU5UQUJJTElUWSBBTkQgRklUTkVTUwpAQCAtNTgsMTAgKzU4LDEwIEBAIGV4dGVybiAiQyIgewog
CiAjaWZuZGVmIFJPQ19URVNUCiAKLXR5cGVkZWYgdWludDE2X3Qgc3J0cF9zZXF1ZW5jZV9udW1i
ZXJfdDsgICAvKiAxNiBiaXQgc2VxdWVuY2UgbnVtYmVyICAqLwotdHlwZWRlZiB1aW50MzJfdCBz
cnRwX3JvbGxvdmVyX2NvdW50ZXJfdDsgIC8qIDMyIGJpdCByb2xsb3ZlciBjb3VudGVyICovCit0
eXBlZGVmIHVpbnQxNl90IHNydHBfc2VxdWVuY2VfbnVtYmVyX3Q7ICAvKiAxNiBiaXQgc2VxdWVu
Y2UgbnVtYmVyICAqLwordHlwZWRlZiB1aW50MzJfdCBzcnRwX3JvbGxvdmVyX2NvdW50ZXJfdDsg
LyogMzIgYml0IHJvbGxvdmVyIGNvdW50ZXIgKi8KIAotI2Vsc2UgIC8qIHVzZSBzbWFsbCBzZXFf
bnVtIGFuZCByb2MgZGF0YXR5cGVzIGZvciB0ZXN0aW5nIHB1cnBvc2VzICovCisjZWxzZSAvKiB1
c2Ugc21hbGwgc2VxX251bSBhbmQgcm9jIGRhdGF0eXBlcyBmb3IgdGVzdGluZyBwdXJwb3NlcyAq
LwogCiB0eXBlZGVmIHVuc2lnbmVkIGNoYXIgc3J0cF9zZXF1ZW5jZV9udW1iZXJfdDsgLyogOCBi
aXQgc2VxdWVuY2UgbnVtYmVyICAgKi8KIHR5cGVkZWYgdWludDE2X3Qgc3J0cF9yb2xsb3Zlcl9j
b3VudGVyX3Q7ICAgICAvKiAxNiBiaXQgcm9sbG92ZXIgY291bnRlciAqLwpAQCAtNjksNyArNjks
NyBAQCB0eXBlZGVmIHVpbnQxNl90IHNydHBfcm9sbG92ZXJfY291bnRlcl90OyAgICAgLyogMTYg
Yml0IHJvbGxvdmVyIGNvdW50ZXIgKi8KICNlbmRpZgogCiAjZGVmaW5lIHNlcV9udW1fbWVkaWFu
ICgxIDw8ICg4ICogc2l6ZW9mKHNydHBfc2VxdWVuY2VfbnVtYmVyX3QpIC0gMSkpCi0jZGVmaW5l
IHNlcV9udW1fbWF4ICAgICgxIDw8ICg4ICogc2l6ZW9mKHNydHBfc2VxdWVuY2VfbnVtYmVyX3Qp
KSkKKyNkZWZpbmUgc2VxX251bV9tYXggKDEgPDwgKDggKiBzaXplb2Yoc3J0cF9zZXF1ZW5jZV9u
dW1iZXJfdCkpKQogCiAvKgogICogQW4gcnRwX3h0ZF9zZXFfbnVtX3QgaXMgYSA2NC1iaXQgdW5z
aWduZWQgaW50ZWdlciB1c2VkIGFzIGFuICdleHRlbmRlZCcKQEAgLTc3LDcgKzc3LDYgQEAgdHlw
ZWRlZiB1aW50MTZfdCBzcnRwX3JvbGxvdmVyX2NvdW50ZXJfdDsgICAgIC8qIDE2IGJpdCByb2xs
b3ZlciBjb3VudGVyICovCiAgKi8KIHR5cGVkZWYgdWludDY0X3Qgc3J0cF94dGRfc2VxX251bV90
OwogCi0KIC8qCiAgKiBBbiBzcnRwX3JkYnhfdCBpcyBhIHJlcGxheSBkYXRhYmFzZSB3aXRoIGV4
dGVuZGVkIHJhbmdlOyBpdCB1c2VzIGFuCiAgKiB4dGRfc2VxX251bV90IGFuZCBhIGJpdG1hc2sg
b2YgcmVjZW50bHkgcmVjZWl2ZWQgaW5kaWNlcy4KQEAgLTg3LDcgKzg2LDYgQEAgdHlwZWRlZiBz
dHJ1Y3QgewogICAgIGJpdHZlY3Rvcl90IGJpdG1hc2s7CiB9IHNydHBfcmRieF90OwogCi0KIC8q
CiAgKiBzcnRwX3JkYnhfaW5pdChyZGJ4X3B0ciwgd3MpCiAgKgpAQCAtOTYsNyArOTQsNiBAQCB0
eXBlZGVmIHN0cnVjdCB7CiAgKi8KIHNydHBfZXJyX3N0YXR1c190IHNydHBfcmRieF9pbml0KHNy
dHBfcmRieF90ICpyZGJ4LCB1bnNpZ25lZCBsb25nIHdzKTsKIAotCiAvKgogICogc3J0cF9yZGJ4
X2RlYWxsb2MocmRieF9wdHIpCiAgKgpAQCAtMTA0LDcgKzEwMSw2IEBAIHNydHBfZXJyX3N0YXR1
c190IHNydHBfcmRieF9pbml0KHNydHBfcmRieF90ICpyZGJ4LCB1bnNpZ25lZCBsb25nIHdzKTsK
ICAqLwogc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9yZGJ4X2RlYWxsb2Moc3J0cF9yZGJ4X3QgKnJk
YngpOwogCi0KIC8qCiAgKiBzcnRwX3JkYnhfZXN0aW1hdGVfaW5kZXgocmRieCwgZ3Vlc3MsIHMp
CiAgKgpAQCAtMTEzLDcgKzEwOSw5IEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfcmRieF9kZWFs
bG9jKHNydHBfcmRieF90ICpyZGJ4KTsKICAqIGluZGV4IHRvIHdoaWNoIHMgY29ycmVzcG9uZHMs
IGFuZCByZXR1cm5zIHRoZSBkaWZmZXJlbmNlIGJldHdlZW4KICAqICpndWVzcyBhbmQgdGhlIGxv
Y2FsbHkgc3RvcmVkIHN5bmNoIGluZm8KICAqLwotaW50MzJfdCBzcnRwX3JkYnhfZXN0aW1hdGVf
aW5kZXgoY29uc3Qgc3J0cF9yZGJ4X3QgKnJkYngsIHNydHBfeHRkX3NlcV9udW1fdCAqZ3Vlc3Ms
IHNydHBfc2VxdWVuY2VfbnVtYmVyX3Qgcyk7CitpbnQzMl90IHNydHBfcmRieF9lc3RpbWF0ZV9p
bmRleChjb25zdCBzcnRwX3JkYnhfdCAqcmRieCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHNydHBfeHRkX3NlcV9udW1fdCAqZ3Vlc3MsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBzcnRwX3NlcXVlbmNlX251bWJlcl90IHMpOwogCiAvKgogICogc3J0cF9yZGJ4
X2NoZWNrKHJkYngsIGRlbHRhKTsKQEAgLTEzNiw3ICsxMzQsNiBAQCBzcnRwX2Vycl9zdGF0dXNf
dCBzcnRwX3JkYnhfY2hlY2soY29uc3Qgc3J0cF9yZGJ4X3QgKnJkYngsIGludCBkaWZmZXJlbmNl
KTsKICAqLwogc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9yZGJ4X2FkZF9pbmRleChzcnRwX3JkYnhf
dCAqcmRieCwgaW50IGRlbHRhKTsKIAotCiAvKgogICogc3J0cF9yZGJ4X3NldF9yb2MocmRieCwg
cm9jKSBpbml0YWxpemVzIHRoZSBzcnRwX3JkYnhfdCBhdCB0aGUgbG9jYXRpb24gcmRieAogICog
dG8gaGF2ZSB0aGUgcm9sbG92ZXIgY291bnRlciB2YWx1ZSByb2MuICBJZiB0aGF0IHZhbHVlIGlz
IGxlc3MgdGhhbgpAQCAtMTQ3LDcgKzE0NCw4IEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfcmRi
eF9hZGRfaW5kZXgoc3J0cF9yZGJ4X3QgKnJkYngsIGludCBkZWx0YSk7CiBzcnRwX2Vycl9zdGF0
dXNfdCBzcnRwX3JkYnhfc2V0X3JvYyhzcnRwX3JkYnhfdCAqcmRieCwgdWludDMyX3Qgcm9jKTsK
IAogLyoKLSAqIHNydHBfcmRieF9nZXRfcGFja2V0X2luZGV4KHJkYngpIHJldHVybnMgdGhlIHZh
bHVlIG9mIHRoZSByb2xsb3ZlciBjb3VudGVyIGZvcgorICogc3J0cF9yZGJ4X2dldF9wYWNrZXRf
aW5kZXgocmRieCkgcmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlIHJvbGxvdmVyIGNvdW50ZXIKKyAq
IGZvcgogICogdGhlIHNydHBfcmRieF90IHBvaW50ZWQgdG8gYnkgcmRieAogICoKICAqLwpAQCAt
MTY2LDE0ICsxNjQsMTIgQEAgc3J0cF94dGRfc2VxX251bV90IHNydHBfcmRieF9nZXRfcGFja2V0
X2luZGV4KGNvbnN0IHNydHBfcmRieF90ICpyZGJ4KTsKICAqLwogdW5zaWduZWQgbG9uZyBzcnRw
X3JkYnhfZ2V0X3dpbmRvd19zaXplKGNvbnN0IHNydHBfcmRieF90ICpyZGJ4KTsKIAotCiAvKiBp
bmRleF9pbml0KCZwaSkgaW5pdGlhbGl6ZXMgYSBwYWNrZXQgaW5kZXggcGkgKHNldHMgaXQgdG8g
emVybykgKi8KIHZvaWQgc3J0cF9pbmRleF9pbml0KHNydHBfeHRkX3NlcV9udW1fdCAqcGkpOwog
CiAvKiBpbmRleF9hZHZhbmNlKCZwaSwgcykgYWR2YW5jZXMgYSB4dGRfc2VxX251bV90IGZvcndh
cmQgYnkgcyAqLwogdm9pZCBzcnRwX2luZGV4X2FkdmFuY2Uoc3J0cF94dGRfc2VxX251bV90ICpw
aSwgc3J0cF9zZXF1ZW5jZV9udW1iZXJfdCBzKTsKIAotCiAvKgogICogc3J0cF9pbmRleF9ndWVz
cyhsb2NhbCwgZ3Vlc3MsIHMpCiAgKgpAQCAtMTgzLDcgKzE3OSw5IEBAIHZvaWQgc3J0cF9pbmRl
eF9hZHZhbmNlKHNydHBfeHRkX3NlcV9udW1fdCAqcGksIHNydHBfc2VxdWVuY2VfbnVtYmVyX3Qg
cyk7CiAgKiBndWVzcyBvZiB0aGUgcGFja2V0IGluZGV4IHRvIHdoaWNoIHMgY29ycmVzcG9uZHMs
IGFuZCByZXR1cm5zIHRoZQogICogZGlmZmVyZW5jZSBiZXR3ZWVuICpndWVzcyBhbmQgKmxvY2Fs
CiAgKi8KLWludDMyX3Qgc3J0cF9pbmRleF9ndWVzcyhjb25zdCBzcnRwX3h0ZF9zZXFfbnVtX3Qg
KmxvY2FsLCBzcnRwX3h0ZF9zZXFfbnVtX3QgKmd1ZXNzLCBzcnRwX3NlcXVlbmNlX251bWJlcl90
IHMpOworaW50MzJfdCBzcnRwX2luZGV4X2d1ZXNzKGNvbnN0IHNydHBfeHRkX3NlcV9udW1fdCAq
bG9jYWwsCisgICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF94dGRfc2VxX251bV90ICpndWVz
cywKKyAgICAgICAgICAgICAgICAgICAgICAgICBzcnRwX3NlcXVlbmNlX251bWJlcl90IHMpOwog
CiAvKgogICogc3J0cF9yZGJ4X2dldF9yb2MocmRieCkKQEAgLTIwMCw5ICsxOTgsOSBAQCB1aW50
MzJfdCBzcnRwX3JkYnhfZ2V0X3JvYyhjb25zdCBzcnRwX3JkYnhfdCAqcmRieCk7CiAgKiByb2xs
b3ZlciBjb3VudGVyIHZhbHVlLCB0aGVuIHRoZSBmdW5jdGlvbiByZXR1cm5zCiAgKiBzcnRwX2Vy
cl9zdGF0dXNfcmVwbGF5X29sZCwgb3RoZXJ3aXNlLCBzcnRwX2Vycl9zdGF0dXNfb2sgaXMgcmV0
dXJuZWQuCiAgKi8KLXNydHBfZXJyX3N0YXR1c190IHNydHBfcmRieF9zZXRfcm9jX3NlcSAoc3J0
cF9yZGJ4X3QgKnJkYngsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHVpbnQzMl90IHJvYywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
dWludDE2X3Qgc2VxKTsKK3NydHBfZXJyX3N0YXR1c190IHNydHBfcmRieF9zZXRfcm9jX3NlcShz
cnRwX3JkYnhfdCAqcmRieCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB1aW50MzJfdCByb2MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
dWludDE2X3Qgc2VxKTsKIAogI2lmZGVmIF9fY3BsdXNwbHVzCiB9CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRv
L2luY2x1ZGUvc3RhdC5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9pbmNsdWRlL3N0YXQuaAppbmRleCBlOGNmMzYwNWE4NjAx
ODAyMTM0OGE2MmY3MjBlNDgzNzM0NzI3NzM0Li4xODk0ZTA0MWFhN2MzNDJjMDRmMTk4OTlhYTMx
MDJiNTRlNDUxYWFhIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2luY2x1ZGUvc3RhdC5oCisrKyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8v
aW5jbHVkZS9zdGF0LmgKQEAgLTEsNiArMSw2IEBACiAvKgogICogc3RhdHMuaAotICogCisgKgog
ICogaW50ZXJmYWNlIHRvIHN0YXRpc3RpY2FsIHRlc3QgZnVuY3Rpb25zCiAgKgogICogRGF2aWQg
QS4gTWNHcmV3CkBAIC04LDI2ICs4LDI2IEBACiAgKi8KIAogLyoKLSAqCQorICoKICAqIENvcHly
aWdodChjKSAyMDAxLTIwMTcsIENpc2NvIFN5c3RlbXMsIEluYy4KICAqIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCi0gKiAKKyAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQg
YmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1p
dHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwogICogYXJlIG1ldDoK
LSAqIAorICoKICAqICAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWlu
IHRoZSBhYm92ZSBjb3B5cmlnaHQKICAqICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogCisgKgogICogICBSZWRpc3RyaWJ1
dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCiAgKiAgIGNvcHly
aWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCiAg
KiAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZAogICogICB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKiAKKyAqCiAgKiAgIE5l
aXRoZXIgdGhlIG5hbWUgb2YgdGhlIENpc2NvIFN5c3RlbXMsIEluYy4gbm9yIHRoZSBuYW1lcyBv
ZiBpdHMKICAqICAgY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90
ZSBwcm9kdWN0cyBkZXJpdmVkCiAgKiAgIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNp
ZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLSAqIAorICoKICAqIFRISVMgU09GVFdBUkUg
SVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKICAq
ICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5H
LCBCVVQgTk9UCiAgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNI
QU5UQUJJTElUWSBBTkQgRklUTkVTUwpAQCAtNDMsMTIgKzQzLDExIEBACiAgKgogICovCiAKLQog
I2lmbmRlZiBTVEFUX0gKICNkZWZpbmUgU1RBVF9ICiAKLSNpbmNsdWRlICJkYXRhdHlwZXMuaCIg
ICAgICAgLyogZm9yIHVpbnQ4X3QgICAgICAgICAgICAgICAgICAgICAgICovCi0jaW5jbHVkZSAi
ZXJyLmgiICAgICAgICAgICAgIC8qIGZvciBzcnRwX2Vycl9zdGF0dXNfdCAgICAgICAgICAgICAq
LworI2luY2x1ZGUgImRhdGF0eXBlcy5oIiAvKiBmb3IgdWludDhfdCAgICAgICAgICAgICAgICAg
ICAgICAgKi8KKyNpbmNsdWRlICJlcnIuaCIgICAgICAgLyogZm9yIHNydHBfZXJyX3N0YXR1c190
ICAgICAgICAgICAgICovCiAKICNpZmRlZiBfX2NwbHVzcGx1cwogZXh0ZXJuICJDIiB7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnNydHAvY3J5cHRvL2tlcm5lbC9hbGxvYy5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9rZXJuZWwvYWxsb2MuYwppbmRleCBj
YmQ4ODc3Yzg3ZjA1MWNhZWJkYzBlNTI3MTI5MDMxMjFmYzk1YjgxLi5kYmU1ODI2NmY0M2E2ODQ5
ZWQ5NjVhYzdmNzg3YWZmZDBlMmE4MjIxIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2tlcm5lbC9hbGxvYy5j
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGli
c3J0cC9jcnlwdG8va2VybmVsL2FsbG9jLmMKQEAgLTEsMzIgKzEsMzIgQEAKIC8qCiAgKiBhbGxv
Yy5jCiAgKgotICogbWVtb3J5IGFsbG9jYXRpb24gYW5kIGRlYWxsb2NhdGlvbiAKKyAqIG1lbW9y
eSBhbGxvY2F0aW9uIGFuZCBkZWFsbG9jYXRpb24KICAqCiAgKiBEYXZpZCBBLiBNY0dyZXcKICAq
IENpc2NvIFN5c3RlbXMsIEluYy4KICAqLwogLyoKLSAqCQorICoKICAqIENvcHlyaWdodCAoYykg
MjAwMS0yMDE3IENpc2NvIFN5c3RlbXMsIEluYy4KICAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0g
KiAKKyAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwogICogYXJlIG1ldDoKLSAqIAorICoK
ICAqICAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92
ZSBjb3B5cmlnaHQKICAqICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogCisgKgogICogICBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCiAgKiAgIGNvcHlyaWdodCBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCiAgKiAgIGRpc2Ns
YWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRl
ZAogICogICB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKiAKKyAqCiAgKiAgIE5laXRoZXIgdGhl
IG5hbWUgb2YgdGhlIENpc2NvIFN5c3RlbXMsIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKICAq
ICAgY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0
cyBkZXJpdmVkCiAgKiAgIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9y
IHdyaXR0ZW4gcGVybWlzc2lvbi4KLSAqIAorICoKICAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklE
RUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKICAqICJBUyBJUyIg
QU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
CiAgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElU
WSBBTkQgRklUTkVTUwpAQCAtNDMsNyArNDMsNyBAQAogICovCiAKICNpZmRlZiBIQVZFX0NPTkZJ
R19ICi0gICAgI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbmZpZy5oPgogI2VuZGlm
CiAKICNpbmNsdWRlICJhbGxvYy5oIgpAQCAtNTEsOSArNTEsOSBAQAogCiAvKiB0aGUgZGVidWcg
bW9kdWxlIGZvciBtZW1vcnkgYWxsb2NhdGlvbiAqLwogCi1zcnRwX2RlYnVnX21vZHVsZV90IG1v
ZF9hbGxvYyA9IHsKLSAgMCwgICAgICAgICAgICAgICAgICAvKiBkZWJ1Z2dpbmcgaXMgb2ZmIGJ5
IGRlZmF1bHQgKi8KLSAgImFsbG9jIiAgICAgICAgICAgICAvKiBwcmludGFibGUgbmFtZSBmb3Ig
bW9kdWxlICAgKi8KK3NydHBfZGVidWdfbW9kdWxlX3Qgc3J0cF9tb2RfYWxsb2MgPSB7CisgICAg
MCwgICAgICAvKiBkZWJ1Z2dpbmcgaXMgb2ZmIGJ5IGRlZmF1bHQgKi8KKyAgICAiYWxsb2MiIC8q
IHByaW50YWJsZSBuYW1lIGZvciBtb2R1bGUgICAqLwogfTsKIAogLyoKQEAgLTY3LDI5ICs2Nywz
NSBAQCBzcnRwX2RlYnVnX21vZHVsZV90IG1vZF9hbGxvYyA9IHsKIAogI2lmIGRlZmluZWQoSEFW
RV9TVERMSUJfSCkKIAotdm9pZCAqIHNydHBfY3J5cHRvX2FsbG9jKHNpemVfdCBzaXplKSB7Ci0g
IHZvaWQgKnB0cjsKK3ZvaWQgKnNydHBfY3J5cHRvX2FsbG9jKHNpemVfdCBzaXplKQoreworICAg
IHZvaWQgKnB0cjsKIAotICBwdHIgPSBtYWxsb2Moc2l6ZSk7Ci0gICAgCi0gIGlmIChwdHIpIHsK
LSAgICBkZWJ1Z19wcmludChtb2RfYWxsb2MsICIobG9jYXRpb246ICVwKSBhbGxvY2F0ZWQiLCBw
dHIpOwotICB9IGVsc2UgewotICAgIGRlYnVnX3ByaW50KG1vZF9hbGxvYywgImFsbG9jYXRpb24g
ZmFpbGVkIChhc2tlZCBmb3IgJWQgYnl0ZXMpXG4iLCBzaXplKTsKLSAgfQorICAgIGlmICghc2l6
ZSkgeworICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CiAKLSAgcmV0dXJuIHB0cjsKLX0KKyAg
ICBwdHIgPSBjYWxsb2MoMSwgc2l6ZSk7CiAKLXZvaWQgc3J0cF9jcnlwdG9fZnJlZSh2b2lkICpw
dHIpIHsKKyAgICBpZiAocHRyKSB7CisgICAgICAgIGRlYnVnX3ByaW50KHNydHBfbW9kX2FsbG9j
LCAiKGxvY2F0aW9uOiAlcCkgYWxsb2NhdGVkIiwgcHRyKTsKKyAgICB9IGVsc2UgeworICAgICAg
ICBkZWJ1Z19wcmludChzcnRwX21vZF9hbGxvYywgImFsbG9jYXRpb24gZmFpbGVkIChhc2tlZCBm
b3IgJWQgYnl0ZXMpXG4iLAorICAgICAgICAgICAgICAgICAgICBzaXplKTsKKyAgICB9CisKKyAg
ICByZXR1cm4gcHRyOworfQogCi0gIGRlYnVnX3ByaW50KG1vZF9hbGxvYywgIihsb2NhdGlvbjog
JXApIGZyZWVkIiwgcHRyKTsKK3ZvaWQgc3J0cF9jcnlwdG9fZnJlZSh2b2lkICpwdHIpCit7Cisg
ICAgZGVidWdfcHJpbnQoc3J0cF9tb2RfYWxsb2MsICIobG9jYXRpb246ICVwKSBmcmVlZCIsIHB0
cik7CiAKLSAgZnJlZShwdHIpOworICAgIGZyZWUocHRyKTsKIH0KIAotI2Vsc2UgIC8qIHdlIG5l
ZWQgdG8gZGVmaW5lIG91ciBvd24gbWVtb3J5IGFsbG9jYXRpb24gcm91dGluZXMgKi8KKyNlbHNl
IC8qIHdlIG5lZWQgdG8gZGVmaW5lIG91ciBvd24gbWVtb3J5IGFsbG9jYXRpb24gcm91dGluZXMg
Ki8KIAotI2Vycm9yIG5vIG1lbW9yeSBhbGxvY2F0aW9uIGRlZmluZWQgeWV0IAorI2Vycm9yIG5v
IG1lbW9yeSBhbGxvY2F0aW9uIGRlZmluZWQgeWV0CiAKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0
by9rZXJuZWwvY3J5cHRvX2tlcm5lbC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9rZXJuZWwvY3J5cHRvX2tlcm5lbC5jCmlu
ZGV4IDNjYWZmMGUxMjNjZTk2NTViOTM3ZmU4YThlYTFjMWMwYzQyMDBhOTQuLmFiNDQ5MmU4YTY0
NDc4MDhkMmI1NWUwYjg3ZmZiMTRiODFjYTJlNjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8va2VybmVsL2Ny
eXB0b19rZXJuZWwuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2tlcm5lbC9jcnlwdG9fa2VybmVsLmMKQEAgLTQyLDYw
ICs0MiwyMiBAQAogICoKICAqLwogCi0KICNpZmRlZiBIQVZFX0NPTkZJR19ICi0gICAgI2luY2x1
ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbmZpZy5oPgogI2VuZGlmCiAKICNpbmNsdWRlICJh
bGxvYy5oIgogCiAjaW5jbHVkZSAiY3J5cHRvX2tlcm5lbC5oIgorI2luY2x1ZGUgImNpcGhlcl90
eXBlcy5oIgogCiAvKiB0aGUgZGVidWcgbW9kdWxlIGZvciB0aGUgY3J5cHRvX2tlcm5lbCAqLwog
CiBzcnRwX2RlYnVnX21vZHVsZV90IHNydHBfbW9kX2NyeXB0b19rZXJuZWwgPSB7Ci0gICAgMCwg
ICAgICAgICAgICAgICAgLyogZGVidWdnaW5nIGlzIG9mZiBieSBkZWZhdWx0ICovCi0gICAgImNy
eXB0byBrZXJuZWwiICAgLyogcHJpbnRhYmxlIG5hbWUgZm9yIG1vZHVsZSAgICovCisgICAgMCwg
ICAgICAgICAgICAgIC8qIGRlYnVnZ2luZyBpcyBvZmYgYnkgZGVmYXVsdCAqLworICAgICJjcnlw
dG8ga2VybmVsIiAvKiBwcmludGFibGUgbmFtZSBmb3IgbW9kdWxlICAgKi8KIH07CiAKLS8qCi0g
KiBvdGhlciBnZW5lcmljIGRlYnVnIG1vZHVsZXMgdGhhdCBjYW4gYmUgaW5jbHVkZWQgaW4gdGhl
IGtlcm5lbAotICovCi0KLWV4dGVybiBzcnRwX2RlYnVnX21vZHVsZV90IHNydHBfbW9kX2F1dGg7
Ci1leHRlcm4gc3J0cF9kZWJ1Z19tb2R1bGVfdCBzcnRwX21vZF9jaXBoZXI7Ci1leHRlcm4gc3J0
cF9kZWJ1Z19tb2R1bGVfdCBtb2Rfc3RhdDsKLWV4dGVybiBzcnRwX2RlYnVnX21vZHVsZV90IG1v
ZF9hbGxvYzsKLQotLyoKLSAqIGNpcGhlciB0eXBlcyB0aGF0IGNhbiBiZSBpbmNsdWRlZCBpbiB0
aGUga2VybmVsCi0gKi8KLQotZXh0ZXJuIHNydHBfY2lwaGVyX3R5cGVfdCBzcnRwX251bGxfY2lw
aGVyOwotZXh0ZXJuIHNydHBfY2lwaGVyX3R5cGVfdCBzcnRwX2Flc19pY21fMTI4OwotZXh0ZXJu
IHNydHBfY2lwaGVyX3R5cGVfdCBzcnRwX2Flc19pY21fMjU2OwotI2lmZGVmIE9QRU5TU0wKLWV4
dGVybiBzcnRwX2NpcGhlcl90eXBlX3Qgc3J0cF9hZXNfaWNtXzE5MjsKLWV4dGVybiBzcnRwX2Np
cGhlcl90eXBlX3Qgc3J0cF9hZXNfZ2NtXzEyOF9vcGVuc3NsOwotZXh0ZXJuIHNydHBfY2lwaGVy
X3R5cGVfdCBzcnRwX2Flc19nY21fMjU2X29wZW5zc2w7Ci0jZW5kaWYKLQotLyogZGVidWcgbW9k
dWxlcyBmb3IgY2lwaGVyIHR5cGVzICovCi1leHRlcm4gc3J0cF9kZWJ1Z19tb2R1bGVfdCBzcnRw
X21vZF9hZXNfaWNtOwotI2lmZGVmIE9QRU5TU0wKLWV4dGVybiBzcnRwX2RlYnVnX21vZHVsZV90
IHNydHBfbW9kX2Flc19nY207Ci0jZW5kaWYKLQotLyoKLSAqIGF1dGggZnVuYyB0eXBlcyB0aGF0
IGNhbiBiZSBpbmNsdWRlZCBpbiB0aGUga2VybmVsCi0gKi8KLQotZXh0ZXJuIHNydHBfYXV0aF90
eXBlX3Qgc3J0cF9udWxsX2F1dGg7Ci1leHRlcm4gc3J0cF9hdXRoX3R5cGVfdCBzcnRwX2htYWM7
Ci0KLS8qIGRlYnVnIG1vZHVsZXMgZm9yIGF1dGggdHlwZXMgKi8KLWV4dGVybiBzcnRwX2RlYnVn
X21vZHVsZV90IHNydHBfbW9kX2htYWM7Ci0KIC8qIGNyeXB0b19rZXJuZWwgaXMgYSBnbG9iYWwg
dmFyaWFibGUsIHRoZSBvbmx5IG9uZSBvZiBpdHMgZGF0YXR5cGUgKi8KIAogc3J0cF9jcnlwdG9f
a2VybmVsX3QgY3J5cHRvX2tlcm5lbCA9IHsKQEAgLTEwNywxMyArNjksMTIgQEAgc3J0cF9jcnlw
dG9fa2VybmVsX3QgY3J5cHRvX2tlcm5lbCA9IHsKIAogI2RlZmluZSBNQVhfUk5HX1RSSUFMUyAy
NQogCi1zcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NyeXB0b19rZXJuZWxfaW5pdCAoKQorc3J0cF9l
cnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fa2VybmVsX2luaXQoKQogewogICAgIHNydHBfZXJyX3N0
YXR1c190IHN0YXR1czsKIAogICAgIC8qIGNoZWNrIHRoZSBzZWN1cml0eSBzdGF0ZSAqLwogICAg
IGlmIChjcnlwdG9fa2VybmVsLnN0YXRlID09IHNydHBfY3J5cHRvX2tlcm5lbF9zdGF0ZV9zZWN1
cmUpIHsKLQogICAgICAgICAvKgogICAgICAgICAgKiB3ZSdyZSBhbHJlYWR5IGluIHRoZSBzZWN1
cmUgc3RhdGUsIGJ1dCB3ZSd2ZSBiZWVuIGFza2VkIHRvCiAgICAgICAgICAqIHJlLWluaXRpYWxp
emUsIHNvIHdlIGp1c3QgcmUtcnVuIHRoZSBzZWxmLXRlc3RzIGFuZCB0aGVuIHJldHVybgpAQCAt
MTQwLDI1ICsxMDEsMjggQEAgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fa2VybmVsX2lu
aXQgKCkKICAgICBpZiAoc3RhdHVzKSB7CiAgICAgICAgIHJldHVybiBzdGF0dXM7CiAgICAgfQot
ICAgIHN0YXR1cyA9IHNydHBfY3J5cHRvX2tlcm5lbF9sb2FkX2RlYnVnX21vZHVsZSgmbW9kX3N0
YXQpOworICAgIHN0YXR1cyA9IHNydHBfY3J5cHRvX2tlcm5lbF9sb2FkX2RlYnVnX21vZHVsZSgm
c3J0cF9tb2Rfc3RhdCk7CiAgICAgaWYgKHN0YXR1cykgewogICAgICAgICByZXR1cm4gc3RhdHVz
OwogICAgIH0KLSAgICBzdGF0dXMgPSBzcnRwX2NyeXB0b19rZXJuZWxfbG9hZF9kZWJ1Z19tb2R1
bGUoJm1vZF9hbGxvYyk7CisgICAgc3RhdHVzID0gc3J0cF9jcnlwdG9fa2VybmVsX2xvYWRfZGVi
dWdfbW9kdWxlKCZzcnRwX21vZF9hbGxvYyk7CiAgICAgaWYgKHN0YXR1cykgewogICAgICAgICBy
ZXR1cm4gc3RhdHVzOwogICAgIH0KIAogICAgIC8qIGxvYWQgY2lwaGVyIHR5cGVzICovCi0gICAg
c3RhdHVzID0gc3J0cF9jcnlwdG9fa2VybmVsX2xvYWRfY2lwaGVyX3R5cGUoJnNydHBfbnVsbF9j
aXBoZXIsIFNSVFBfTlVMTF9DSVBIRVIpOworICAgIHN0YXR1cyA9IHNydHBfY3J5cHRvX2tlcm5l
bF9sb2FkX2NpcGhlcl90eXBlKCZzcnRwX251bGxfY2lwaGVyLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNSVFBfTlVMTF9DSVBIRVIpOwogICAgIGlm
IChzdGF0dXMpIHsKICAgICAgICAgcmV0dXJuIHN0YXR1czsKICAgICB9Ci0gICAgc3RhdHVzID0g
c3J0cF9jcnlwdG9fa2VybmVsX2xvYWRfY2lwaGVyX3R5cGUoJnNydHBfYWVzX2ljbV8xMjgsIFNS
VFBfQUVTX0lDTV8xMjgpOworICAgIHN0YXR1cyA9IHNydHBfY3J5cHRvX2tlcm5lbF9sb2FkX2Np
cGhlcl90eXBlKCZzcnRwX2Flc19pY21fMTI4LAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFNSVFBfQUVTX0lDTV8xMjgpOwogICAgIGlmIChzdGF0dXMp
IHsKICAgICAgICAgcmV0dXJuIHN0YXR1czsKICAgICB9Ci0gICAgc3RhdHVzID0gc3J0cF9jcnlw
dG9fa2VybmVsX2xvYWRfY2lwaGVyX3R5cGUoJnNydHBfYWVzX2ljbV8yNTYsIFNSVFBfQUVTX0lD
TV8yNTYpOworICAgIHN0YXR1cyA9IHNydHBfY3J5cHRvX2tlcm5lbF9sb2FkX2NpcGhlcl90eXBl
KCZzcnRwX2Flc19pY21fMjU2LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFNSVFBfQUVTX0lDTV8yNTYpOwogICAgIGlmIChzdGF0dXMpIHsKICAgICAg
ICAgcmV0dXJuIHN0YXR1czsKICAgICB9CkBAIC0xNjcsMTUgKzEzMSwxOCBAQCBzcnRwX2Vycl9z
dGF0dXNfdCBzcnRwX2NyeXB0b19rZXJuZWxfaW5pdCAoKQogICAgICAgICByZXR1cm4gc3RhdHVz
OwogICAgIH0KICNpZmRlZiBPUEVOU1NMCi0gICAgc3RhdHVzID0gc3J0cF9jcnlwdG9fa2VybmVs
X2xvYWRfY2lwaGVyX3R5cGUoJnNydHBfYWVzX2ljbV8xOTIsIFNSVFBfQUVTX0lDTV8xOTIpOwor
ICAgIHN0YXR1cyA9IHNydHBfY3J5cHRvX2tlcm5lbF9sb2FkX2NpcGhlcl90eXBlKCZzcnRwX2Fl
c19pY21fMTkyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFNSVFBfQUVTX0lDTV8xOTIpOwogICAgIGlmIChzdGF0dXMpIHsKICAgICAgICAgcmV0dXJu
IHN0YXR1czsKICAgICB9Ci0gICAgc3RhdHVzID0gc3J0cF9jcnlwdG9fa2VybmVsX2xvYWRfY2lw
aGVyX3R5cGUoJnNydHBfYWVzX2djbV8xMjhfb3BlbnNzbCwgU1JUUF9BRVNfR0NNXzEyOCk7Cisg
ICAgc3RhdHVzID0gc3J0cF9jcnlwdG9fa2VybmVsX2xvYWRfY2lwaGVyX3R5cGUoJnNydHBfYWVz
X2djbV8xMjhfb3BlbnNzbCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBTUlRQX0FFU19HQ01fMTI4KTsKICAgICBpZiAoc3RhdHVzKSB7CiAgICAgICAg
IHJldHVybiBzdGF0dXM7CiAgICAgfQotICAgIHN0YXR1cyA9IHNydHBfY3J5cHRvX2tlcm5lbF9s
b2FkX2NpcGhlcl90eXBlKCZzcnRwX2Flc19nY21fMjU2X29wZW5zc2wsIFNSVFBfQUVTX0dDTV8y
NTYpOworICAgIHN0YXR1cyA9IHNydHBfY3J5cHRvX2tlcm5lbF9sb2FkX2NpcGhlcl90eXBlKCZz
cnRwX2Flc19nY21fMjU2X29wZW5zc2wsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgU1JUUF9BRVNfR0NNXzI1Nik7CiAgICAgaWYgKHN0YXR1cykgewog
ICAgICAgICByZXR1cm4gc3RhdHVzOwogICAgIH0KQEAgLTIwNSwxOSArMTcyLDIxIEBAIHNydHBf
ZXJyX3N0YXR1c190IHNydHBfY3J5cHRvX2tlcm5lbF9pbml0ICgpCiAgICAgcmV0dXJuIHNydHBf
ZXJyX3N0YXR1c19vazsKIH0KIAotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fa2VybmVs
X3N0YXR1cyAoKQorc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fa2VybmVsX3N0YXR1cygp
CiB7CiAgICAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVzOwotICAgIHNydHBfa2VybmVsX2NpcGhl
cl90eXBlX3QgICpjdHlwZSA9IGNyeXB0b19rZXJuZWwuY2lwaGVyX3R5cGVfbGlzdDsKLSAgICBz
cnRwX2tlcm5lbF9hdXRoX3R5cGVfdCAgICAqYXR5cGUgPSBjcnlwdG9fa2VybmVsLmF1dGhfdHlw
ZV9saXN0OworICAgIHNydHBfa2VybmVsX2NpcGhlcl90eXBlX3QgKmN0eXBlID0gY3J5cHRvX2tl
cm5lbC5jaXBoZXJfdHlwZV9saXN0OworICAgIHNydHBfa2VybmVsX2F1dGhfdHlwZV90ICphdHlw
ZSA9IGNyeXB0b19rZXJuZWwuYXV0aF90eXBlX2xpc3Q7CiAKICAgICAvKiBmb3IgZWFjaCBjaXBo
ZXIgdHlwZSwgZGVzY3JpYmUgYW5kIHRlc3QgKi8KICAgICB3aGlsZSAoY3R5cGUgIT0gTlVMTCkg
ewotICAgICAgICBzcnRwX2Vycl9yZXBvcnQoc3J0cF9lcnJfbGV2ZWxfaW5mbywgImNpcGhlcjog
JXNcbiIsIGN0eXBlLT5jaXBoZXJfdHlwZS0+ZGVzY3JpcHRpb24pOworICAgICAgICBzcnRwX2Vy
cl9yZXBvcnQoc3J0cF9lcnJfbGV2ZWxfaW5mbywgImNpcGhlcjogJXNcbiIsCisgICAgICAgICAg
ICAgICAgICAgICAgICBjdHlwZS0+Y2lwaGVyX3R5cGUtPmRlc2NyaXB0aW9uKTsKICAgICAgICAg
c3J0cF9lcnJfcmVwb3J0KHNydHBfZXJyX2xldmVsX2luZm8sICIgIHNlbGYtdGVzdDogIik7CiAg
ICAgICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3R5cGVfc2VsZl90ZXN0KGN0eXBlLT5jaXBoZXJf
dHlwZSk7CiAgICAgICAgIGlmIChzdGF0dXMpIHsKLSAgICAgICAgICAgIHNydHBfZXJyX3JlcG9y
dChzcnRwX2Vycl9sZXZlbF9lcnJvciwgImZhaWxlZCB3aXRoIGVycm9yIGNvZGUgJWRcbiIsIHN0
YXR1cyk7CisgICAgICAgICAgICBzcnRwX2Vycl9yZXBvcnQoc3J0cF9lcnJfbGV2ZWxfZXJyb3Is
ICJmYWlsZWQgd2l0aCBlcnJvciBjb2RlICVkXG4iLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHN0YXR1cyk7CiAgICAgICAgICAgICBleGl0KHN0YXR1cyk7CiAgICAgICAgIH0KICAgICAg
ICAgc3J0cF9lcnJfcmVwb3J0KHNydHBfZXJyX2xldmVsX2luZm8sICJwYXNzZWRcbiIpOwpAQCAt
MjI2LDExICsxOTUsMTMgQEAgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fa2VybmVsX3N0
YXR1cyAoKQogCiAgICAgLyogZm9yIGVhY2ggYXV0aCB0eXBlLCBkZXNjcmliZSBhbmQgdGVzdCAq
LwogICAgIHdoaWxlIChhdHlwZSAhPSBOVUxMKSB7Ci0gICAgICAgIHNydHBfZXJyX3JlcG9ydChz
cnRwX2Vycl9sZXZlbF9pbmZvLCAiYXV0aCBmdW5jOiAlc1xuIiwgYXR5cGUtPmF1dGhfdHlwZS0+
ZGVzY3JpcHRpb24pOworICAgICAgICBzcnRwX2Vycl9yZXBvcnQoc3J0cF9lcnJfbGV2ZWxfaW5m
bywgImF1dGggZnVuYzogJXNcbiIsCisgICAgICAgICAgICAgICAgICAgICAgICBhdHlwZS0+YXV0
aF90eXBlLT5kZXNjcmlwdGlvbik7CiAgICAgICAgIHNydHBfZXJyX3JlcG9ydChzcnRwX2Vycl9s
ZXZlbF9pbmZvLCAiICBzZWxmLXRlc3Q6ICIpOwogICAgICAgICBzdGF0dXMgPSBzcnRwX2F1dGhf
dHlwZV9zZWxmX3Rlc3QoYXR5cGUtPmF1dGhfdHlwZSk7CiAgICAgICAgIGlmIChzdGF0dXMpIHsK
LSAgICAgICAgICAgIHNydHBfZXJyX3JlcG9ydChzcnRwX2Vycl9sZXZlbF9lcnJvciwgImZhaWxl
ZCB3aXRoIGVycm9yIGNvZGUgJWRcbiIsIHN0YXR1cyk7CisgICAgICAgICAgICBzcnRwX2Vycl9y
ZXBvcnQoc3J0cF9lcnJfbGV2ZWxfZXJyb3IsICJmYWlsZWQgd2l0aCBlcnJvciBjb2RlICVkXG4i
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXR1cyk7CiAgICAgICAgICAgICBleGl0
KHN0YXR1cyk7CiAgICAgICAgIH0KICAgICAgICAgc3J0cF9lcnJfcmVwb3J0KHNydHBfZXJyX2xl
dmVsX2luZm8sICJwYXNzZWRcbiIpOwpAQCAtMjQyLDcgKzIxMyw3IEBAIHNydHBfZXJyX3N0YXR1
c190IHNydHBfY3J5cHRvX2tlcm5lbF9zdGF0dXMgKCkKICAgICByZXR1cm4gc3J0cF9lcnJfc3Rh
dHVzX29rOwogfQogCi1zcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NyeXB0b19rZXJuZWxfbGlzdF9k
ZWJ1Z19tb2R1bGVzICgpCitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NyeXB0b19rZXJuZWxfbGlz
dF9kZWJ1Z19tb2R1bGVzKCkKIHsKICAgICBzcnRwX2tlcm5lbF9kZWJ1Z19tb2R1bGVfdCAqZG0g
PSBjcnlwdG9fa2VybmVsLmRlYnVnX21vZHVsZV9saXN0OwogCkBAIC0yNTIsNyArMjIzLDcgQEAg
c3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fa2VybmVsX2xpc3RfZGVidWdfbW9kdWxlcyAo
KQogICAgICAgICBzcnRwX2Vycl9yZXBvcnQoc3J0cF9lcnJfbGV2ZWxfaW5mbywgIiAgJXMgIiwg
ZG0tPm1vZC0+bmFtZSk7CiAgICAgICAgIGlmIChkbS0+bW9kLT5vbikgewogICAgICAgICAgICAg
c3J0cF9lcnJfcmVwb3J0KHNydHBfZXJyX2xldmVsX2luZm8sICIob24pXG4iKTsKLSAgICAgICAg
fSBlbHNleworICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgc3J0cF9lcnJfcmVwb3J0KHNy
dHBfZXJyX2xldmVsX2luZm8sICIob2ZmKVxuIik7CiAgICAgICAgIH0KICAgICAgICAgZG0gPSBk
bS0+bmV4dDsKQEAgLTI2MSw3ICsyMzIsNyBAQCBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NyeXB0
b19rZXJuZWxfbGlzdF9kZWJ1Z19tb2R1bGVzICgpCiAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1
c19vazsKIH0KIAotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fa2VybmVsX3NodXRkb3du
ICgpCitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NyeXB0b19rZXJuZWxfc2h1dGRvd24oKQogewog
ICAgIC8qCiAgICAgICogZnJlZSBkeW5hbWljIG1lbW9yeSB1c2VkIGluIGNyeXB0b19rZXJuZWwg
YXQgcHJlc2VudApAQCAtMjcxLDggKzI0Miw3IEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfY3J5
cHRvX2tlcm5lbF9zaHV0ZG93biAoKQogICAgIHdoaWxlIChjcnlwdG9fa2VybmVsLmNpcGhlcl90
eXBlX2xpc3QgIT0gTlVMTCkgewogICAgICAgICBzcnRwX2tlcm5lbF9jaXBoZXJfdHlwZV90ICpj
dHlwZSA9IGNyeXB0b19rZXJuZWwuY2lwaGVyX3R5cGVfbGlzdDsKICAgICAgICAgY3J5cHRvX2tl
cm5lbC5jaXBoZXJfdHlwZV9saXN0ID0gY3R5cGUtPm5leHQ7Ci0gICAgICAgIGRlYnVnX3ByaW50
KHNydHBfbW9kX2NyeXB0b19rZXJuZWwsCi0gICAgICAgICAgICAgICAgICAgICJmcmVlaW5nIG1l
bW9yeSBmb3IgY2lwaGVyICVzIiwKKyAgICAgICAgZGVidWdfcHJpbnQoc3J0cF9tb2RfY3J5cHRv
X2tlcm5lbCwgImZyZWVpbmcgbWVtb3J5IGZvciBjaXBoZXIgJXMiLAogICAgICAgICAgICAgICAg
ICAgICBjdHlwZS0+Y2lwaGVyX3R5cGUtPmRlc2NyaXB0aW9uKTsKICAgICAgICAgc3J0cF9jcnlw
dG9fZnJlZShjdHlwZSk7CiAgICAgfQpAQCAtMjkyLDggKzI2Miw3IEBAIHNydHBfZXJyX3N0YXR1
c190IHNydHBfY3J5cHRvX2tlcm5lbF9zaHV0ZG93biAoKQogICAgICAgICBzcnRwX2tlcm5lbF9k
ZWJ1Z19tb2R1bGVfdCAqa2RtID0gY3J5cHRvX2tlcm5lbC5kZWJ1Z19tb2R1bGVfbGlzdDsKICAg
ICAgICAgY3J5cHRvX2tlcm5lbC5kZWJ1Z19tb2R1bGVfbGlzdCA9IGtkbS0+bmV4dDsKICAgICAg
ICAgZGVidWdfcHJpbnQoc3J0cF9tb2RfY3J5cHRvX2tlcm5lbCwKLSAgICAgICAgICAgICAgICAg
ICAgImZyZWVpbmcgbWVtb3J5IGZvciBkZWJ1ZyBtb2R1bGUgJXMiLAotICAgICAgICAgICAgICAg
ICAgICBrZG0tPm1vZC0+bmFtZSk7CisgICAgICAgICAgICAgICAgICAgICJmcmVlaW5nIG1lbW9y
eSBmb3IgZGVidWcgbW9kdWxlICVzIiwga2RtLT5tb2QtPm5hbWUpOwogICAgICAgICBzcnRwX2Ny
eXB0b19mcmVlKGtkbSk7CiAgICAgfQogCkBAIC0zMDMsNyArMjcyLDEwIEBAIHNydHBfZXJyX3N0
YXR1c190IHNydHBfY3J5cHRvX2tlcm5lbF9zaHV0ZG93biAoKQogICAgIHJldHVybiBzcnRwX2Vy
cl9zdGF0dXNfb2s7CiB9CiAKLXN0YXRpYyBpbmxpbmUgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9j
cnlwdG9fa2VybmVsX2RvX2xvYWRfY2lwaGVyX3R5cGUgKGNvbnN0IHNydHBfY2lwaGVyX3R5cGVf
dCAqbmV3X2N0LCBzcnRwX2NpcGhlcl90eXBlX2lkX3QgaWQsIGludCByZXBsYWNlKQorc3RhdGlj
IGlubGluZSBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NyeXB0b19rZXJuZWxfZG9fbG9hZF9jaXBo
ZXJfdHlwZSgKKyAgICBjb25zdCBzcnRwX2NpcGhlcl90eXBlX3QgKm5ld19jdCwKKyAgICBzcnRw
X2NpcGhlcl90eXBlX2lkX3QgaWQsCisgICAgaW50IHJlcGxhY2UpCiB7CiAgICAgc3J0cF9rZXJu
ZWxfY2lwaGVyX3R5cGVfdCAqY3R5cGUsICpuZXdfY3R5cGU7CiAgICAgc3J0cF9lcnJfc3RhdHVz
X3Qgc3RhdHVzOwpAQCAtMzMwLDEzICszMDIsMTQgQEAgc3RhdGljIGlubGluZSBzcnRwX2Vycl9z
dGF0dXNfdCBzcnRwX2NyeXB0b19rZXJuZWxfZG9fbG9hZF9jaXBoZXJfdHlwZSAoY29uc3Qgc3IK
ICAgICAgICAgICAgIGlmICghcmVwbGFjZSkgewogICAgICAgICAgICAgICAgIHJldHVybiBzcnRw
X2Vycl9zdGF0dXNfYmFkX3BhcmFtOwogICAgICAgICAgICAgfQotICAgICAgICAgICAgc3RhdHVz
ID0gc3J0cF9jaXBoZXJfdHlwZV90ZXN0KG5ld19jdCwgY3R5cGUtPmNpcGhlcl90eXBlLT50ZXN0
X2RhdGEpOworICAgICAgICAgICAgc3RhdHVzID0KKyAgICAgICAgICAgICAgICBzcnRwX2NpcGhl
cl90eXBlX3Rlc3QobmV3X2N0LCBjdHlwZS0+Y2lwaGVyX3R5cGUtPnRlc3RfZGF0YSk7CiAgICAg
ICAgICAgICBpZiAoc3RhdHVzKSB7CiAgICAgICAgICAgICAgICAgcmV0dXJuIHN0YXR1czsKICAg
ICAgICAgICAgIH0KICAgICAgICAgICAgIG5ld19jdHlwZSA9IGN0eXBlOwogICAgICAgICAgICAg
YnJlYWs7Ci0gICAgICAgIH1lbHNlIGlmIChuZXdfY3QgPT0gY3R5cGUtPmNpcGhlcl90eXBlKSB7
CisgICAgICAgIH0gZWxzZSBpZiAobmV3X2N0ID09IGN0eXBlLT5jaXBoZXJfdHlwZSkgewogICAg
ICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW07CiAgICAgICAgIH0KICAg
ICAgICAgY3R5cGUgPSBjdHlwZS0+bmV4dDsKQEAgLTM0NSw3ICszMTgsOCBAQCBzdGF0aWMgaW5s
aW5lIHNydHBfZXJyX3N0YXR1c190IHNydHBfY3J5cHRvX2tlcm5lbF9kb19sb2FkX2NpcGhlcl90
eXBlIChjb25zdCBzcgogICAgIC8qIGlmIG5vdCBmb3VuZCwgcHV0IG5ld19jdCBhdCB0aGUgaGVh
ZCBvZiB0aGUgbGlzdCAqLwogICAgIGlmIChjdHlwZSA9PSBOVUxMKSB7CiAgICAgICAgIC8qIGFs
bG9jYXRlIG1lbW9yeSAqLwotICAgICAgICBuZXdfY3R5cGUgPSAoc3J0cF9rZXJuZWxfY2lwaGVy
X3R5cGVfdCopc3J0cF9jcnlwdG9fYWxsb2Moc2l6ZW9mKHNydHBfa2VybmVsX2NpcGhlcl90eXBl
X3QpKTsKKyAgICAgICAgbmV3X2N0eXBlID0gKHNydHBfa2VybmVsX2NpcGhlcl90eXBlX3QgKilz
cnRwX2NyeXB0b19hbGxvYygKKyAgICAgICAgICAgIHNpemVvZihzcnRwX2tlcm5lbF9jaXBoZXJf
dHlwZV90KSk7CiAgICAgICAgIGlmIChuZXdfY3R5cGUgPT0gTlVMTCkgewogICAgICAgICAgICAg
cmV0dXJuIHNydHBfZXJyX3N0YXR1c19hbGxvY19mYWlsOwogICAgICAgICB9CkBAIC0zNjIsMTcg
KzMzNiwyMyBAQCBzdGF0aWMgaW5saW5lIHNydHBfZXJyX3N0YXR1c190IHNydHBfY3J5cHRvX2tl
cm5lbF9kb19sb2FkX2NpcGhlcl90eXBlIChjb25zdCBzcgogICAgIHJldHVybiBzcnRwX2Vycl9z
dGF0dXNfb2s7CiB9CiAKLXNydHBfZXJyX3N0YXR1c190IHNydHBfY3J5cHRvX2tlcm5lbF9sb2Fk
X2NpcGhlcl90eXBlIChjb25zdCBzcnRwX2NpcGhlcl90eXBlX3QgKm5ld19jdCwgc3J0cF9jaXBo
ZXJfdHlwZV9pZF90IGlkKQorc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fa2VybmVsX2xv
YWRfY2lwaGVyX3R5cGUoCisgICAgY29uc3Qgc3J0cF9jaXBoZXJfdHlwZV90ICpuZXdfY3QsCisg
ICAgc3J0cF9jaXBoZXJfdHlwZV9pZF90IGlkKQogewogICAgIHJldHVybiBzcnRwX2NyeXB0b19r
ZXJuZWxfZG9fbG9hZF9jaXBoZXJfdHlwZShuZXdfY3QsIGlkLCAwKTsKIH0KIAotc3J0cF9lcnJf
c3RhdHVzX3Qgc3J0cF9yZXBsYWNlX2NpcGhlcl90eXBlIChjb25zdCBzcnRwX2NpcGhlcl90eXBl
X3QgKm5ld19jdCwgc3J0cF9jaXBoZXJfdHlwZV9pZF90IGlkKQorc3J0cF9lcnJfc3RhdHVzX3Qg
c3J0cF9yZXBsYWNlX2NpcGhlcl90eXBlKGNvbnN0IHNydHBfY2lwaGVyX3R5cGVfdCAqbmV3X2N0
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfY2lwaGVy
X3R5cGVfaWRfdCBpZCkKIHsKICAgICByZXR1cm4gc3J0cF9jcnlwdG9fa2VybmVsX2RvX2xvYWRf
Y2lwaGVyX3R5cGUobmV3X2N0LCBpZCwgMSk7CiB9CiAKLXNydHBfZXJyX3N0YXR1c190IHNydHBf
Y3J5cHRvX2tlcm5lbF9kb19sb2FkX2F1dGhfdHlwZSAoY29uc3Qgc3J0cF9hdXRoX3R5cGVfdCAq
bmV3X2F0LCBzcnRwX2F1dGhfdHlwZV9pZF90IGlkLCBpbnQgcmVwbGFjZSkKK3NydHBfZXJyX3N0
YXR1c190IHNydHBfY3J5cHRvX2tlcm5lbF9kb19sb2FkX2F1dGhfdHlwZSgKKyAgICBjb25zdCBz
cnRwX2F1dGhfdHlwZV90ICpuZXdfYXQsCisgICAgc3J0cF9hdXRoX3R5cGVfaWRfdCBpZCwKKyAg
ICBpbnQgcmVwbGFjZSkKIHsKICAgICBzcnRwX2tlcm5lbF9hdXRoX3R5cGVfdCAqYXR5cGUsICpu
ZXdfYXR5cGU7CiAgICAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVzOwpAQCAtNDA1LDcgKzM4NSw3
IEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfY3J5cHRvX2tlcm5lbF9kb19sb2FkX2F1dGhfdHlw
ZSAoY29uc3Qgc3J0cF9hdXRoX3R5cGVfdCAqCiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBu
ZXdfYXR5cGUgPSBhdHlwZTsKICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICB9ZWxzZSBpZiAo
bmV3X2F0ID09IGF0eXBlLT5hdXRoX3R5cGUpIHsKKyAgICAgICAgfSBlbHNlIGlmIChuZXdfYXQg
PT0gYXR5cGUtPmF1dGhfdHlwZSkgewogICAgICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1
c19iYWRfcGFyYW07CiAgICAgICAgIH0KICAgICAgICAgYXR5cGUgPSBhdHlwZS0+bmV4dDsKQEAg
LTQxNCw3ICszOTQsOCBAQCBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NyeXB0b19rZXJuZWxfZG9f
bG9hZF9hdXRoX3R5cGUgKGNvbnN0IHNydHBfYXV0aF90eXBlX3QgKgogICAgIC8qIGlmIG5vdCBm
b3VuZCwgcHV0IG5ld19hdCBhdCB0aGUgaGVhZCBvZiB0aGUgbGlzdCAqLwogICAgIGlmIChhdHlw
ZSA9PSBOVUxMKSB7CiAgICAgICAgIC8qIGFsbG9jYXRlIG1lbW9yeSAqLwotICAgICAgICBuZXdf
YXR5cGUgPSAoc3J0cF9rZXJuZWxfYXV0aF90eXBlX3QqKXNydHBfY3J5cHRvX2FsbG9jKHNpemVv
ZihzcnRwX2tlcm5lbF9hdXRoX3R5cGVfdCkpOworICAgICAgICBuZXdfYXR5cGUgPSAoc3J0cF9r
ZXJuZWxfYXV0aF90eXBlX3QgKilzcnRwX2NyeXB0b19hbGxvYygKKyAgICAgICAgICAgIHNpemVv
ZihzcnRwX2tlcm5lbF9hdXRoX3R5cGVfdCkpOwogICAgICAgICBpZiAobmV3X2F0eXBlID09IE5V
TEwpIHsKICAgICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYWxsb2NfZmFpbDsKICAg
ICAgICAgfQpAQCAtNDI5LDIxICs0MTAsMjMgQEAgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcnlw
dG9fa2VybmVsX2RvX2xvYWRfYXV0aF90eXBlIChjb25zdCBzcnRwX2F1dGhfdHlwZV90ICoKICAg
ICBuZXdfYXR5cGUtPmlkID0gaWQ7CiAKICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwot
CiB9CiAKLXNydHBfZXJyX3N0YXR1c190IHNydHBfY3J5cHRvX2tlcm5lbF9sb2FkX2F1dGhfdHlw
ZSAoY29uc3Qgc3J0cF9hdXRoX3R5cGVfdCAqbmV3X2F0LCBzcnRwX2F1dGhfdHlwZV9pZF90IGlk
KQorc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fa2VybmVsX2xvYWRfYXV0aF90eXBlKAor
ICAgIGNvbnN0IHNydHBfYXV0aF90eXBlX3QgKm5ld19hdCwKKyAgICBzcnRwX2F1dGhfdHlwZV9p
ZF90IGlkKQogewogICAgIHJldHVybiBzcnRwX2NyeXB0b19rZXJuZWxfZG9fbG9hZF9hdXRoX3R5
cGUobmV3X2F0LCBpZCwgMCk7CiB9CiAKLXNydHBfZXJyX3N0YXR1c190IHNydHBfcmVwbGFjZV9h
dXRoX3R5cGUgKGNvbnN0IHNydHBfYXV0aF90eXBlX3QgKm5ld19hdCwgc3J0cF9hdXRoX3R5cGVf
aWRfdCBpZCkKK3NydHBfZXJyX3N0YXR1c190IHNydHBfcmVwbGFjZV9hdXRoX3R5cGUoY29uc3Qg
c3J0cF9hdXRoX3R5cGVfdCAqbmV3X2F0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBzcnRwX2F1dGhfdHlwZV9pZF90IGlkKQogewogICAgIHJldHVybiBzcnRwX2Ny
eXB0b19rZXJuZWxfZG9fbG9hZF9hdXRoX3R5cGUobmV3X2F0LCBpZCwgMSk7CiB9CiAKLQotY29u
c3Qgc3J0cF9jaXBoZXJfdHlwZV90ICogc3J0cF9jcnlwdG9fa2VybmVsX2dldF9jaXBoZXJfdHlw
ZSAoc3J0cF9jaXBoZXJfdHlwZV9pZF90IGlkKQorY29uc3Qgc3J0cF9jaXBoZXJfdHlwZV90ICpz
cnRwX2NyeXB0b19rZXJuZWxfZ2V0X2NpcGhlcl90eXBlKAorICAgIHNydHBfY2lwaGVyX3R5cGVf
aWRfdCBpZCkKIHsKICAgICBzcnRwX2tlcm5lbF9jaXBoZXJfdHlwZV90ICpjdHlwZTsKIApAQCAt
NDYwLDggKzQ0MywxMCBAQCBjb25zdCBzcnRwX2NpcGhlcl90eXBlX3QgKiBzcnRwX2NyeXB0b19r
ZXJuZWxfZ2V0X2NpcGhlcl90eXBlIChzcnRwX2NpcGhlcl90eXBlXwogICAgIHJldHVybiBOVUxM
OwogfQogCi0KLXNydHBfZXJyX3N0YXR1c190IHNydHBfY3J5cHRvX2tlcm5lbF9hbGxvY19jaXBo
ZXIgKHNydHBfY2lwaGVyX3R5cGVfaWRfdCBpZCwgc3J0cF9jaXBoZXJfcG9pbnRlcl90ICpjcCwg
aW50IGtleV9sZW4sIGludCB0YWdfbGVuKQorc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9f
a2VybmVsX2FsbG9jX2NpcGhlcihzcnRwX2NpcGhlcl90eXBlX2lkX3QgaWQsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfY2lwaGVyX3BvaW50
ZXJfdCAqY3AsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGludCBrZXlfbGVuLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBpbnQgdGFnX2xlbikKIHsKICAgICBjb25zdCBzcnRwX2NpcGhlcl90eXBlX3Qg
KmN0OwogCkBAIC00ODEsOSArNDY2LDcgQEAgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9f
a2VybmVsX2FsbG9jX2NpcGhlciAoc3J0cF9jaXBoZXJfdHlwZV9pZF90IGlkLCBzcnQKICAgICBy
ZXR1cm4gKChjdCktPmFsbG9jKGNwLCBrZXlfbGVuLCB0YWdfbGVuKSk7CiB9CiAKLQotCi1jb25z
dCBzcnRwX2F1dGhfdHlwZV90ICogc3J0cF9jcnlwdG9fa2VybmVsX2dldF9hdXRoX3R5cGUgKHNy
dHBfYXV0aF90eXBlX2lkX3QgaWQpCitjb25zdCBzcnRwX2F1dGhfdHlwZV90ICpzcnRwX2NyeXB0
b19rZXJuZWxfZ2V0X2F1dGhfdHlwZShzcnRwX2F1dGhfdHlwZV9pZF90IGlkKQogewogICAgIHNy
dHBfa2VybmVsX2F1dGhfdHlwZV90ICphdHlwZTsKIApAQCAtNTAwLDcgKzQ4MywxMCBAQCBjb25z
dCBzcnRwX2F1dGhfdHlwZV90ICogc3J0cF9jcnlwdG9fa2VybmVsX2dldF9hdXRoX3R5cGUgKHNy
dHBfYXV0aF90eXBlX2lkX3QgaQogICAgIHJldHVybiBOVUxMOwogfQogCi1zcnRwX2Vycl9zdGF0
dXNfdCBzcnRwX2NyeXB0b19rZXJuZWxfYWxsb2NfYXV0aCAoc3J0cF9hdXRoX3R5cGVfaWRfdCBp
ZCwgc3J0cF9hdXRoX3BvaW50ZXJfdCAqYXAsIGludCBrZXlfbGVuLCBpbnQgdGFnX2xlbikKK3Ny
dHBfZXJyX3N0YXR1c190IHNydHBfY3J5cHRvX2tlcm5lbF9hbGxvY19hdXRoKHNydHBfYXV0aF90
eXBlX2lkX3QgaWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBzcnRwX2F1dGhfcG9pbnRlcl90ICphcCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGludCBrZXlfbGVuLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IHRhZ19sZW4pCiB7CiAgICAgY29uc3Qgc3J0
cF9hdXRoX3R5cGVfdCAqYXQ7CiAKQEAgLTUyMCwxMiArNTA2LDEzIEBAIHNydHBfZXJyX3N0YXR1
c190IHNydHBfY3J5cHRvX2tlcm5lbF9hbGxvY19hdXRoIChzcnRwX2F1dGhfdHlwZV9pZF90IGlk
LCBzcnRwX2F1CiAgICAgcmV0dXJuICgoYXQpLT5hbGxvYyhhcCwga2V5X2xlbiwgdGFnX2xlbikp
OwogfQogCi1zcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NyeXB0b19rZXJuZWxfbG9hZF9kZWJ1Z19t
b2R1bGUgKHNydHBfZGVidWdfbW9kdWxlX3QgKm5ld19kbSkKK3NydHBfZXJyX3N0YXR1c190IHNy
dHBfY3J5cHRvX2tlcm5lbF9sb2FkX2RlYnVnX21vZHVsZSgKKyAgICBzcnRwX2RlYnVnX21vZHVs
ZV90ICpuZXdfZG0pCiB7CiAgICAgc3J0cF9rZXJuZWxfZGVidWdfbW9kdWxlX3QgKmtkbSwgKm5l
dzsKIAogICAgIC8qIGRlZmVuc2l2ZSBjb2RpbmcgKi8KLSAgICBpZiAobmV3X2RtID09IE5VTEwp
IHsKKyAgICBpZiAobmV3X2RtID09IE5VTEwgfHwgbmV3X2RtLT5uYW1lID09IE5VTEwpIHsKICAg
ICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW07CiAgICAgfQogCkBAIC01NDAs
NyArNTI3LDggQEAgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fa2VybmVsX2xvYWRfZGVi
dWdfbW9kdWxlIChzcnRwX2RlYnVnX21vZHVsZV90ICpuZXcKIAogICAgIC8qIHB1dCBuZXdfZG0g
YXQgdGhlIGhlYWQgb2YgdGhlIGxpc3QgKi8KICAgICAvKiBhbGxvY2F0ZSBtZW1vcnkgKi8KLSAg
ICBuZXcgPSAoc3J0cF9rZXJuZWxfZGVidWdfbW9kdWxlX3QqKXNydHBfY3J5cHRvX2FsbG9jKHNp
emVvZihzcnRwX2tlcm5lbF9kZWJ1Z19tb2R1bGVfdCkpOworICAgIG5ldyA9IChzcnRwX2tlcm5l
bF9kZWJ1Z19tb2R1bGVfdCAqKXNydHBfY3J5cHRvX2FsbG9jKAorICAgICAgICBzaXplb2Yoc3J0
cF9rZXJuZWxfZGVidWdfbW9kdWxlX3QpKTsKICAgICBpZiAobmV3ID09IE5VTEwpIHsKICAgICAg
ICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19hbGxvY19mYWlsOwogICAgIH0KQEAgLTU1NSw3ICs1
NDMsNyBAQCBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NyeXB0b19rZXJuZWxfbG9hZF9kZWJ1Z19t
b2R1bGUgKHNydHBfZGVidWdfbW9kdWxlX3QgKm5ldwogICAgIHJldHVybiBzcnRwX2Vycl9zdGF0
dXNfb2s7CiB9CiAKLXNydHBfZXJyX3N0YXR1c190IHNydHBfY3J5cHRvX2tlcm5lbF9zZXRfZGVi
dWdfbW9kdWxlIChjb25zdCBjaGFyICpuYW1lLCBpbnQgb24pCitzcnRwX2Vycl9zdGF0dXNfdCBz
cnRwX2NyeXB0b19rZXJuZWxfc2V0X2RlYnVnX21vZHVsZShjb25zdCBjaGFyICpuYW1lLCBpbnQg
b24pCiB7CiAgICAgc3J0cF9rZXJuZWxfZGVidWdfbW9kdWxlX3QgKmtkbTsKIApkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRw
L2NyeXB0by9rZXJuZWwvZXJyLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2tlcm5lbC9lcnIuYwppbmRleCA5ZGNlY2JhZGQ1
YWY4NzQwZjdiYzFkYTljMzdiOTMzZjhkZTRlYzVkLi5mNDQzNTQ5ZTVhNDQxMzZlZjJhMDE0MTg5
YWU2N2QwZjA2ZDNlN2NmIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2tlcm5lbC9lcnIuYworKysgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRv
L2tlcm5lbC9lcnIuYwpAQCAtNDMsNyArNDMsNyBAQAogICovCiAKICNpZmRlZiBIQVZFX0NPTkZJ
R19ICi0gICAgI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbmZpZy5oPgogI2VuZGlm
CiAKICNpbmNsdWRlICJlcnIuaCIKQEAgLTU0LDcgKzU0LDcgQEAKIAogc3RhdGljIEZJTEUgKnNy
dHBfZXJyX2ZpbGUgPSBOVUxMOwogCi1zcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2Vycl9yZXBvcnRp
bmdfaW5pdCAoKQorc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9lcnJfcmVwb3J0aW5nX2luaXQoKQog
ewogI2lmZGVmIEVSUl9SRVBPUlRJTkdfU1RET1VUCiAgICAgc3J0cF9lcnJfZmlsZSA9IHN0ZG91
dDsKQEAgLTY5LDE1ICs2OSwxNiBAQCBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2Vycl9yZXBvcnRp
bmdfaW5pdCAoKQogICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAKLXN0YXRpYyBz
cnRwX2Vycl9yZXBvcnRfaGFuZGxlcl9mdW5jX3QgKiBzcnRwX2Vycl9yZXBvcnRfaGFuZGxlciA9
IE5VTEw7CitzdGF0aWMgc3J0cF9lcnJfcmVwb3J0X2hhbmRsZXJfZnVuY190ICpzcnRwX2Vycl9y
ZXBvcnRfaGFuZGxlciA9IE5VTEw7CiAKLXNydHBfZXJyX3N0YXR1c190IHNydHBfaW5zdGFsbF9l
cnJfcmVwb3J0X2hhbmRsZXIoc3J0cF9lcnJfcmVwb3J0X2hhbmRsZXJfZnVuY190IGZ1bmMpCitz
cnRwX2Vycl9zdGF0dXNfdCBzcnRwX2luc3RhbGxfZXJyX3JlcG9ydF9oYW5kbGVyKAorICAgIHNy
dHBfZXJyX3JlcG9ydF9oYW5kbGVyX2Z1bmNfdCBmdW5jKQogewogICAgIHNydHBfZXJyX3JlcG9y
dF9oYW5kbGVyID0gZnVuYzsKICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQogCi12
b2lkIHNydHBfZXJyX3JlcG9ydCAoc3J0cF9lcnJfcmVwb3J0aW5nX2xldmVsX3QgbGV2ZWwsIGNv
bnN0IGNoYXIgKmZvcm1hdCwgLi4uKQordm9pZCBzcnRwX2Vycl9yZXBvcnQoc3J0cF9lcnJfcmVw
b3J0aW5nX2xldmVsX3QgbGV2ZWwsIGNvbnN0IGNoYXIgKmZvcm1hdCwgLi4uKQogewogICAgIHZh
X2xpc3QgYXJnczsKICAgICBpZiAoc3J0cF9lcnJfZmlsZSAhPSBOVUxMKSB7CkBAIC05MSwxMiAr
OTIsMTMgQEAgdm9pZCBzcnRwX2Vycl9yZXBvcnQgKHNydHBfZXJyX3JlcG9ydGluZ19sZXZlbF90
IGxldmVsLCBjb25zdCBjaGFyICpmb3JtYXQsIC4uLikKICAgICAgICAgaWYgKHZzbnByaW50Ziht
c2csIHNpemVvZihtc2cpLCBmb3JtYXQsIGFyZ3MpID4gMCkgewogICAgICAgICAgICAgLyogc3Ry
aXAgdHJhaWxpbmcgXG4sIGNhbGxiYWNrIHNob3VsZCBub3QgaGF2ZSBvbmUgKi8KICAgICAgICAg
ICAgIHNpemVfdCBsID0gc3RybGVuKG1zZyk7Ci0gICAgICAgICAgICBpZiAobCAmJiBtc2dbbC0x
XSA9PSAnXG4nKSB7Ci0gICAgICAgICAgICAgICAgbXNnW2wtMV0gPSAnXDAnOworICAgICAgICAg
ICAgaWYgKGwgJiYgbXNnW2wgLSAxXSA9PSAnXG4nKSB7CisgICAgICAgICAgICAgICAgbXNnW2wg
LSAxXSA9ICdcMCc7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBzcnRwX2Vycl9yZXBvcnRf
aGFuZGxlcihsZXZlbCwgbXNnKTsKICAgICAgICAgICAgIC8qCi0gICAgICAgICAgICAgKiBOT1RF
LCBuZWVkIHRvIGJlIGNhcmVmdWxsLCB0aGVyZSBpcyBhIHBvdGVudGlhbCB0aGF0IG9jdGV0X3N0
cmluZ19zZXRfdG9femVybygpIGNvdWxkCisgICAgICAgICAgICAgKiBOT1RFLCBuZWVkIHRvIGJl
IGNhcmVmdWxsLCB0aGVyZSBpcyBhIHBvdGVudGlhbCB0aGF0CisgICAgICAgICAgICAgKiBvY3Rl
dF9zdHJpbmdfc2V0X3RvX3plcm8oKSBjb3VsZAogICAgICAgICAgICAgICogY2FsbCBzcnRwX2Vy
cl9yZXBvcnQoKSBpbiB0aGUgZnV0dXJlLCBsZWFkaW5nIHRvIHJlY3Vyc2lvbgogICAgICAgICAg
ICAgICovCiAgICAgICAgICAgICBvY3RldF9zdHJpbmdfc2V0X3RvX3plcm8obXNnLCBzaXplb2Yo
bXNnKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2tlcm5lbC9rZXkuYyBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8va2VybmVsL2tleS5j
CmluZGV4IDE0MzBmMGRmNjcwNjE2NmRkM2IyMTEwNWZjMmY1OGZmNTI4MDBlMmIuLjA0NjYxOTUw
NDYxZjcyYjk0OWI4MTNiMzc5MTRiNjdjMDA4NzU3ZjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8va2VybmVs
L2tleS5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvbGlic3J0cC9jcnlwdG8va2VybmVsL2tleS5jCkBAIC00MywxNCArNDMsMTUgQEAKICAqLwog
CiAjaWZkZWYgSEFWRV9DT05GSUdfSAotICAgICNpbmNsdWRlIDxjb25maWcuaD4KKyNpbmNsdWRl
IDxjb25maWcuaD4KICNlbmRpZgogCiAjaW5jbHVkZSAia2V5LmgiCiAKICNkZWZpbmUgc29mdF9s
aW1pdCAweDEwMDAwCiAKLXNydHBfZXJyX3N0YXR1c190IHNydHBfa2V5X2xpbWl0X3NldCAoc3J0
cF9rZXlfbGltaXRfdCBrZXksIGNvbnN0IHNydHBfeHRkX3NlcV9udW1fdCBzKQorc3J0cF9lcnJf
c3RhdHVzX3Qgc3J0cF9rZXlfbGltaXRfc2V0KHNydHBfa2V5X2xpbWl0X3Qga2V5LAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHNydHBfeHRkX3NlcV9udW1fdCBz
KQogewogI2lmZGVmIE5PXzY0QklUX01BVEgKICAgICBpZiAoaGlnaDMyKHMpID09IDAgJiYgbG93
MzIocykgPCBzb2Z0X2xpbWl0KSB7CkBAIC02Niw3ICs2Nyw4IEBAIHNydHBfZXJyX3N0YXR1c190
IHNydHBfa2V5X2xpbWl0X3NldCAoc3J0cF9rZXlfbGltaXRfdCBrZXksIGNvbnN0IHNydHBfeHRk
X3NlcV9uCiAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0KIAotc3J0cF9lcnJfc3Rh
dHVzX3Qgc3J0cF9rZXlfbGltaXRfY2xvbmUgKHNydHBfa2V5X2xpbWl0X3Qgb3JpZ2luYWwsIHNy
dHBfa2V5X2xpbWl0X3QgKm5ld19rZXkpCitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2tleV9saW1p
dF9jbG9uZShzcnRwX2tleV9saW1pdF90IG9yaWdpbmFsLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgc3J0cF9rZXlfbGltaXRfdCAqbmV3X2tleSkKIHsKICAgICBpZiAo
b3JpZ2luYWwgPT0gTlVMTCkgewogICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2JhZF9w
YXJhbTsKQEAgLTc1LDcgKzc3LDcgQEAgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9rZXlfbGltaXRf
Y2xvbmUgKHNydHBfa2V5X2xpbWl0X3Qgb3JpZ2luYWwsIHNydHBfa2V5X2xpbWkKICAgICByZXR1
cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQogCi1zcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2tleV9s
aW1pdF9jaGVjayAoY29uc3Qgc3J0cF9rZXlfbGltaXRfdCBrZXkpCitzcnRwX2Vycl9zdGF0dXNf
dCBzcnRwX2tleV9saW1pdF9jaGVjayhjb25zdCBzcnRwX2tleV9saW1pdF90IGtleSkKIHsKICAg
ICBpZiAoa2V5LT5zdGF0ZSA9PSBzcnRwX2tleV9zdGF0ZV9leHBpcmVkKSB7CiAgICAgICAgIHJl
dHVybiBzcnRwX2Vycl9zdGF0dXNfa2V5X2V4cGlyZWQ7CkBAIC04MywxMyArODUsMTQgQEAgc3J0
cF9lcnJfc3RhdHVzX3Qgc3J0cF9rZXlfbGltaXRfY2hlY2sgKGNvbnN0IHNydHBfa2V5X2xpbWl0
X3Qga2V5KQogICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAKLXNydHBfa2V5X2V2
ZW50X3Qgc3J0cF9rZXlfbGltaXRfdXBkYXRlIChzcnRwX2tleV9saW1pdF90IGtleSkKK3NydHBf
a2V5X2V2ZW50X3Qgc3J0cF9rZXlfbGltaXRfdXBkYXRlKHNydHBfa2V5X2xpbWl0X3Qga2V5KQog
ewogI2lmZGVmIE5PXzY0QklUX01BVEgKICAgICBpZiAobG93MzIoa2V5LT5udW1fbGVmdCkgPT0g
MCkgewogICAgICAgICAvLyBjYXJyeQotICAgICAgICBrZXktPm51bV9sZWZ0ID0gbWFrZTY0KGhp
Z2gzMihrZXktPm51bV9sZWZ0KSAtIDEsIGxvdzMyKGtleS0+bnVtX2xlZnQpIC0gMSk7Ci0gICAg
fWVsc2UgIHsKKyAgICAgICAga2V5LT5udW1fbGVmdCA9CisgICAgICAgICAgICBtYWtlNjQoaGln
aDMyKGtleS0+bnVtX2xlZnQpIC0gMSwgbG93MzIoa2V5LT5udW1fbGVmdCkgLSAxKTsKKyAgICB9
IGVsc2UgewogICAgICAgICAvLyBubyBjYXJyeQogICAgICAgICBrZXktPm51bV9sZWZ0ID0gbWFr
ZTY0KGhpZ2gzMihrZXktPm51bV9sZWZ0KSwgbG93MzIoa2V5LT5udW1fbGVmdCkgLSAxKTsKICAg
ICB9CkBAIC0xMTEsMTAgKzExNCw5IEBAIHNydHBfa2V5X2V2ZW50X3Qgc3J0cF9rZXlfbGltaXRf
dXBkYXRlIChzcnRwX2tleV9saW1pdF90IGtleSkKICNlbHNlCiAgICAgaWYgKGtleS0+bnVtX2xl
ZnQgPCAxKQogI2VuZGlmCi0gICAgeyAgIC8qIHdlIGp1c3QgaGl0IHRoZSBoYXJkIGxpbWl0ICov
CisgICAgeyAvKiB3ZSBqdXN0IGhpdCB0aGUgaGFyZCBsaW1pdCAqLwogICAgICAgICBrZXktPnN0
YXRlID0gc3J0cF9rZXlfc3RhdGVfZXhwaXJlZDsKICAgICAgICAgcmV0dXJuIHNydHBfa2V5X2V2
ZW50X2hhcmRfbGltaXQ7CiAgICAgfQogICAgIHJldHVybiBzcnRwX2tleV9ldmVudF9zb2Z0X2xp
bWl0OwogfQotCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL21hdGgvZGF0YXR5cGVzLmMgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL21hdGgv
ZGF0YXR5cGVzLmMKaW5kZXggYmI0YjU2ZTMwN2RhMDIyZTJmMmE1MDcyMTVmZWMwZWE5YjJjNjE1
MC4uYzBkZmVjZTY1OWQ3NzRiYmRkOGQwNjQ4NDgzZWJiZjIxNGZjZTgyMSAxMDA2NDQKLS0tIGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2Ny
eXB0by9tYXRoL2RhdGF0eXBlcy5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vbWF0aC9kYXRhdHlwZXMuYwpAQCAtOCwy
NiArOCwyNiBAQAogICogQ2lzY28gU3lzdGVtcywgSW5jLgogICovCiAvKgotICoJCisgKgogICog
Q29weXJpZ2h0IChjKSAyMDAxLTIwMTcgQ2lzY28gU3lzdGVtcywgSW5jLgogICogQWxsIHJpZ2h0
cyByZXNlcnZlZC4KLSAqIAorICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCiAgKiBhcmUg
bWV0OgotICogCisgKgogICogICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAogICogICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAKKyAqCiAgKiAgIFJlZGlz
dHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKICAqICAg
Y29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcKICAqICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0
ZXJpYWxzIHByb3ZpZGVkCiAgKiAgIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqIAorICoKICAq
ICAgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgQ2lzY28gU3lzdGVtcywgSW5jLiBub3IgdGhlIG5h
bWVzIG9mIGl0cwogICogICBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBw
cm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQKICAqICAgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQg
c3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotICogCisgKgogICogVEhJUyBTT0ZU
V0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9S
UwogICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNM
VURJTkcsIEJVVCBOT1QKICAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0Yg
TUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCkBAIC00NCw3ICs0NCw3IEBACiAgKi8KIAogI2lm
ZGVmIEhBVkVfQ09ORklHX0gKLSAgICAjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29u
ZmlnLmg+CiAjZW5kaWYKIAogI2lmZGVmIE9QRU5TU0wKQEAgLTUzLDQ4ICs1MywyNCBAQAogCiAj
aW5jbHVkZSAiZGF0YXR5cGVzLmgiCiAKLWludCAKLW9jdGV0X3dlaWdodFsyNTZdID0gewotICAw
LCAxLCAxLCAyLCAxLCAyLCAyLCAzLAotICAxLCAyLCAyLCAzLCAyLCAzLCAzLCA0LAotICAxLCAy
LCAyLCAzLCAyLCAzLCAzLCA0LAotICAyLCAzLCAzLCA0LCAzLCA0LCA0LCA1LAotICAxLCAyLCAy
LCAzLCAyLCAzLCAzLCA0LAotICAyLCAzLCAzLCA0LCAzLCA0LCA0LCA1LAotICAyLCAzLCAzLCA0
LCAzLCA0LCA0LCA1LAotICAzLCA0LCA0LCA1LCA0LCA1LCA1LCA2LAotICAxLCAyLCAyLCAzLCAy
LCAzLCAzLCA0LAotICAyLCAzLCAzLCA0LCAzLCA0LCA0LCA1LAotICAyLCAzLCAzLCA0LCAzLCA0
LCA0LCA1LAotICAzLCA0LCA0LCA1LCA0LCA1LCA1LCA2LAotICAyLCAzLCAzLCA0LCAzLCA0LCA0
LCA1LAotICAzLCA0LCA0LCA1LCA0LCA1LCA1LCA2LAotICAzLCA0LCA0LCA1LCA0LCA1LCA1LCA2
LAotICA0LCA1LCA1LCA2LCA1LCA2LCA2LCA3LAotICAxLCAyLCAyLCAzLCAyLCAzLCAzLCA0LAot
ICAyLCAzLCAzLCA0LCAzLCA0LCA0LCA1LAotICAyLCAzLCAzLCA0LCAzLCA0LCA0LCA1LAotICAz
LCA0LCA0LCA1LCA0LCA1LCA1LCA2LAotICAyLCAzLCAzLCA0LCAzLCA0LCA0LCA1LAotICAzLCA0
LCA0LCA1LCA0LCA1LCA1LCA2LAotICAzLCA0LCA0LCA1LCA0LCA1LCA1LCA2LAotICA0LCA1LCA1
LCA2LCA1LCA2LCA2LCA3LAotICAyLCAzLCAzLCA0LCAzLCA0LCA0LCA1LAotICAzLCA0LCA0LCA1
LCA0LCA1LCA1LCA2LAotICAzLCA0LCA0LCA1LCA0LCA1LCA1LCA2LAotICA0LCA1LCA1LCA2LCA1
LCA2LCA2LCA3LAotICAzLCA0LCA0LCA1LCA0LCA1LCA1LCA2LAotICA0LCA1LCA1LCA2LCA1LCA2
LCA2LCA3LAotICA0LCA1LCA1LCA2LCA1LCA2LCA2LCA3LAotICA1LCA2LCA2LCA3LCA2LCA3LCA3
LCA4CitzdGF0aWMgY29uc3QgaW50OF90IG9jdGV0X3dlaWdodFsyNTZdID0geworICAgIDAsIDEs
IDEsIDIsIDEsIDIsIDIsIDMsIDEsIDIsIDIsIDMsIDIsIDMsIDMsIDQsIDEsIDIsIDIsIDMsIDIs
IDMsIDMsIDQsCisgICAgMiwgMywgMywgNCwgMywgNCwgNCwgNSwgMSwgMiwgMiwgMywgMiwgMywg
MywgNCwgMiwgMywgMywgNCwgMywgNCwgNCwgNSwKKyAgICAyLCAzLCAzLCA0LCAzLCA0LCA0LCA1
LCAzLCA0LCA0LCA1LCA0LCA1LCA1LCA2LCAxLCAyLCAyLCAzLCAyLCAzLCAzLCA0LAorICAgIDIs
IDMsIDMsIDQsIDMsIDQsIDQsIDUsIDIsIDMsIDMsIDQsIDMsIDQsIDQsIDUsIDMsIDQsIDQsIDUs
IDQsIDUsIDUsIDYsCisgICAgMiwgMywgMywgNCwgMywgNCwgNCwgNSwgMywgNCwgNCwgNSwgNCwg
NSwgNSwgNiwgMywgNCwgNCwgNSwgNCwgNSwgNSwgNiwKKyAgICA0LCA1LCA1LCA2LCA1LCA2LCA2
LCA3LCAxLCAyLCAyLCAzLCAyLCAzLCAzLCA0LCAyLCAzLCAzLCA0LCAzLCA0LCA0LCA1LAorICAg
IDIsIDMsIDMsIDQsIDMsIDQsIDQsIDUsIDMsIDQsIDQsIDUsIDQsIDUsIDUsIDYsIDIsIDMsIDMs
IDQsIDMsIDQsIDQsIDUsCisgICAgMywgNCwgNCwgNSwgNCwgNSwgNSwgNiwgMywgNCwgNCwgNSwg
NCwgNSwgNSwgNiwgNCwgNSwgNSwgNiwgNSwgNiwgNiwgNywKKyAgICAyLCAzLCAzLCA0LCAzLCA0
LCA0LCA1LCAzLCA0LCA0LCA1LCA0LCA1LCA1LCA2LCAzLCA0LCA0LCA1LCA0LCA1LCA1LCA2LAor
ICAgIDQsIDUsIDUsIDYsIDUsIDYsIDYsIDcsIDMsIDQsIDQsIDUsIDQsIDUsIDUsIDYsIDQsIDUs
IDUsIDYsIDUsIDYsIDYsIDcsCisgICAgNCwgNSwgNSwgNiwgNSwgNiwgNiwgNywgNSwgNiwgNiwg
NywgNiwgNywgNywgOAogfTsKIAotaW50Ci1vY3RldF9nZXRfd2VpZ2h0KHVpbnQ4X3Qgb2N0ZXQp
IHsKLSAgZXh0ZXJuIGludCBvY3RldF93ZWlnaHRbMjU2XTsKLQotICByZXR1cm4gb2N0ZXRfd2Vp
Z2h0W29jdGV0XTsKLX0gIAoraW50IG9jdGV0X2dldF93ZWlnaHQodWludDhfdCBvY3RldCkKK3sK
KyAgICByZXR1cm4gKGludClvY3RldF93ZWlnaHRbb2N0ZXRdOworfQogCiAvKgogICogYml0X3N0
cmluZyBpcyBhIGJ1ZmZlciB0aGF0IGlzIHVzZWQgdG8gaG9sZCBvdXRwdXQgc3RyaW5ncywgZS5n
LgpAQCAtMTA1LDQxNCArODEsNDEwIEBAIG9jdGV0X2dldF93ZWlnaHQodWludDhfdCBvY3RldCkg
ewogCiBjaGFyIGJpdF9zdHJpbmdbTUFYX1BSSU5UX1NUUklOR19MRU5dOwogCi11aW50OF90Ci1z
cnRwX25pYmJsZV90b19oZXhfY2hhcih1aW50OF90IG5pYmJsZSkgewotICBjaGFyIGJ1ZlsxNl0g
PSB7JzAnLCAnMScsICcyJywgJzMnLCAnNCcsICc1JywgJzYnLCAnNycsCi0JCSAgJzgnLCAnOScs
ICdhJywgJ2InLCAnYycsICdkJywgJ2UnLCAnZicgfTsKLSAgcmV0dXJuIGJ1ZltuaWJibGUgJiAw
eEZdOwotfQotCi1jaGFyICogc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZyhjb25zdCB2b2lk
ICpzLCBpbnQgbGVuZ3RoKSB7Ci0gIGNvbnN0IHVpbnQ4X3QgKnN0ciA9IChjb25zdCB1aW50OF90
ICopczsKLSAgaW50IGk7Ci0gIAotICAvKiBkb3VibGUgbGVuZ3RoLCBzaW5jZSBvbmUgb2N0ZXQg
dGFrZXMgdHdvIGhleCBjaGFyYWN0ZXJzICovCi0gIGxlbmd0aCAqPSAyOwotCi0gIC8qIHRydW5j
YXRlIHN0cmluZyBpZiBpdCB3b3VsZCBiZSB0b28gbG9uZyAqLwotICBpZiAobGVuZ3RoID4gTUFY
X1BSSU5UX1NUUklOR19MRU4pCi0gICAgbGVuZ3RoID0gTUFYX1BSSU5UX1NUUklOR19MRU4tMjsK
LSAgCi0gIGZvciAoaT0wOyBpIDwgbGVuZ3RoOyBpKz0yKSB7Ci0gICAgYml0X3N0cmluZ1tpXSAg
ID0gc3J0cF9uaWJibGVfdG9faGV4X2NoYXIoKnN0ciA+PiA0KTsKLSAgICBiaXRfc3RyaW5nW2kr
MV0gPSBzcnRwX25pYmJsZV90b19oZXhfY2hhcigqc3RyKysgJiAweEYpOwotICB9Ci0gIGJpdF9z
dHJpbmdbaV0gPSAwOyAvKiBudWxsIHRlcm1pbmF0ZSBzdHJpbmcgKi8KLSAgcmV0dXJuIGJpdF9z
dHJpbmc7Ci19Ci0KLWNoYXIgKgotdjEyOF9oZXhfc3RyaW5nKHYxMjhfdCAqeCkgewotICBpbnQg
aSwgajsKLQotICBmb3IgKGk9aj0wOyBpIDwgMTY7IGkrKykgewotICAgIGJpdF9zdHJpbmdbaisr
XSAgPSBzcnRwX25pYmJsZV90b19oZXhfY2hhcih4LT52OFtpXSA+PiA0KTsKLSAgICBiaXRfc3Ry
aW5nW2orK10gID0gc3J0cF9uaWJibGVfdG9faGV4X2NoYXIoeC0+djhbaV0gJiAweEYpOwotICB9
Ci0gIAotICBiaXRfc3RyaW5nW2pdID0gMDsgLyogbnVsbCB0ZXJtaW5hdGUgc3RyaW5nICovCi0g
IHJldHVybiBiaXRfc3RyaW5nOwotfQotCi1jaGFyICoKLXYxMjhfYml0X3N0cmluZyh2MTI4X3Qg
KngpIHsKLSAgaW50IGosIGk7Ci0gIHVpbnQzMl90IG1hc2s7Ci0gIAotICBmb3IgKGo9aT0wOyBq
IDwgNDsgaisrKSB7Ci0gICAgZm9yIChtYXNrPTB4ODAwMDAwMDA7IG1hc2sgPiAwOyBtYXNrID4+
PSAxKSB7Ci0gICAgICBpZiAoeC0+djMyW2pdICYgbWFzaykKLQliaXRfc3RyaW5nW2ldID0gJzEn
OwotICAgICAgZWxzZQotCWJpdF9zdHJpbmdbaV0gPSAnMCc7Ci0gICAgICArK2k7Cit1aW50OF90
IHNydHBfbmliYmxlX3RvX2hleF9jaGFyKHVpbnQ4X3QgbmliYmxlKQoreworICAgIGNoYXIgYnVm
WzE2XSA9IHsgJzAnLCAnMScsICcyJywgJzMnLCAnNCcsICc1JywgJzYnLCAnNycsCisgICAgICAg
ICAgICAgICAgICAgICAnOCcsICc5JywgJ2EnLCAnYicsICdjJywgJ2QnLCAnZScsICdmJyB9Owor
ICAgIHJldHVybiBidWZbbmliYmxlICYgMHhGXTsKK30KKworY2hhciAqc3J0cF9vY3RldF9zdHJp
bmdfaGV4X3N0cmluZyhjb25zdCB2b2lkICpzLCBpbnQgbGVuZ3RoKQoreworICAgIGNvbnN0IHVp
bnQ4X3QgKnN0ciA9IChjb25zdCB1aW50OF90ICopczsKKyAgICBpbnQgaTsKKworICAgIC8qIGRv
dWJsZSBsZW5ndGgsIHNpbmNlIG9uZSBvY3RldCB0YWtlcyB0d28gaGV4IGNoYXJhY3RlcnMgKi8K
KyAgICBsZW5ndGggKj0gMjsKKworICAgIC8qIHRydW5jYXRlIHN0cmluZyBpZiBpdCB3b3VsZCBi
ZSB0b28gbG9uZyAqLworICAgIGlmIChsZW5ndGggPiBNQVhfUFJJTlRfU1RSSU5HX0xFTikKKyAg
ICAgICAgbGVuZ3RoID0gTUFYX1BSSU5UX1NUUklOR19MRU4gLSAyOworCisgICAgZm9yIChpID0g
MDsgaSA8IGxlbmd0aDsgaSArPSAyKSB7CisgICAgICAgIGJpdF9zdHJpbmdbaV0gPSBzcnRwX25p
YmJsZV90b19oZXhfY2hhcigqc3RyID4+IDQpOworICAgICAgICBiaXRfc3RyaW5nW2kgKyAxXSA9
IHNydHBfbmliYmxlX3RvX2hleF9jaGFyKCpzdHIrKyAmIDB4Rik7CisgICAgfQorICAgIGJpdF9z
dHJpbmdbaV0gPSAwOyAvKiBudWxsIHRlcm1pbmF0ZSBzdHJpbmcgKi8KKyAgICByZXR1cm4gYml0
X3N0cmluZzsKK30KKworY2hhciAqdjEyOF9oZXhfc3RyaW5nKHYxMjhfdCAqeCkKK3sKKyAgICBp
bnQgaSwgajsKKworICAgIGZvciAoaSA9IGogPSAwOyBpIDwgMTY7IGkrKykgeworICAgICAgICBi
aXRfc3RyaW5nW2orK10gPSBzcnRwX25pYmJsZV90b19oZXhfY2hhcih4LT52OFtpXSA+PiA0KTsK
KyAgICAgICAgYml0X3N0cmluZ1tqKytdID0gc3J0cF9uaWJibGVfdG9faGV4X2NoYXIoeC0+djhb
aV0gJiAweEYpOwogICAgIH0KLSAgfQotICBiaXRfc3RyaW5nWzEyOF0gPSAwOyAvKiBudWxsIHRl
cm1pbmF0ZSBzdHJpbmcgKi8KIAotICByZXR1cm4gYml0X3N0cmluZzsKKyAgICBiaXRfc3RyaW5n
W2pdID0gMDsgLyogbnVsbCB0ZXJtaW5hdGUgc3RyaW5nICovCisgICAgcmV0dXJuIGJpdF9zdHJp
bmc7CiB9CiAKLXZvaWQKLXYxMjhfY29weV9vY3RldF9zdHJpbmcodjEyOF90ICp4LCBjb25zdCB1
aW50OF90IHNbMTZdKSB7CitjaGFyICp2MTI4X2JpdF9zdHJpbmcodjEyOF90ICp4KQoreworICAg
IGludCBqLCBpOworICAgIHVpbnQzMl90IG1hc2s7CisKKyAgICBmb3IgKGogPSBpID0gMDsgaiA8
IDQ7IGorKykgeworICAgICAgICBmb3IgKG1hc2sgPSAweDgwMDAwMDAwOyBtYXNrID4gMDsgbWFz
ayA+Pj0gMSkgeworICAgICAgICAgICAgaWYgKHgtPnYzMltqXSAmIG1hc2spCisgICAgICAgICAg
ICAgICAgYml0X3N0cmluZ1tpXSA9ICcxJzsKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAg
ICAgICBiaXRfc3RyaW5nW2ldID0gJzAnOworICAgICAgICAgICAgKytpOworICAgICAgICB9Cisg
ICAgfQorICAgIGJpdF9zdHJpbmdbMTI4XSA9IDA7IC8qIG51bGwgdGVybWluYXRlIHN0cmluZyAq
LworCisgICAgcmV0dXJuIGJpdF9zdHJpbmc7Cit9CisKK3ZvaWQgdjEyOF9jb3B5X29jdGV0X3N0
cmluZyh2MTI4X3QgKngsIGNvbnN0IHVpbnQ4X3Qgc1sxNl0pCit7CiAjaWZkZWYgQUxJR05NRU5U
XzMyQklUX1JFUVVJUkVECi0gIGlmICgoKCh1aW50MzJfdCkgJnNbMF0pICYgMHgzKSAhPSAwKQor
ICAgIGlmICgoKCh1aW50MzJfdCkmc1swXSkgJiAweDMpICE9IDApCiAjZW5kaWYKLSAgewotCSAg
eC0+djhbMF0gID0gc1swXTsKLQkgIHgtPnY4WzFdICA9IHNbMV07Ci0JICB4LT52OFsyXSAgPSBz
WzJdOwotCSAgeC0+djhbM10gID0gc1szXTsKLQkgIHgtPnY4WzRdICA9IHNbNF07Ci0JICB4LT52
OFs1XSAgPSBzWzVdOwotCSAgeC0+djhbNl0gID0gc1s2XTsKLQkgIHgtPnY4WzddICA9IHNbN107
Ci0JICB4LT52OFs4XSAgPSBzWzhdOwotCSAgeC0+djhbOV0gID0gc1s5XTsKLQkgIHgtPnY4WzEw
XSA9IHNbMTBdOwotCSAgeC0+djhbMTFdID0gc1sxMV07Ci0JICB4LT52OFsxMl0gPSBzWzEyXTsK
LQkgIHgtPnY4WzEzXSA9IHNbMTNdOwotCSAgeC0+djhbMTRdID0gc1sxNF07Ci0JICB4LT52OFsx
NV0gPSBzWzE1XTsKLSAgfQorICAgIHsKKyAgICAgICAgeC0+djhbMF0gPSBzWzBdOworICAgICAg
ICB4LT52OFsxXSA9IHNbMV07CisgICAgICAgIHgtPnY4WzJdID0gc1syXTsKKyAgICAgICAgeC0+
djhbM10gPSBzWzNdOworICAgICAgICB4LT52OFs0XSA9IHNbNF07CisgICAgICAgIHgtPnY4WzVd
ID0gc1s1XTsKKyAgICAgICAgeC0+djhbNl0gPSBzWzZdOworICAgICAgICB4LT52OFs3XSA9IHNb
N107CisgICAgICAgIHgtPnY4WzhdID0gc1s4XTsKKyAgICAgICAgeC0+djhbOV0gPSBzWzldOwor
ICAgICAgICB4LT52OFsxMF0gPSBzWzEwXTsKKyAgICAgICAgeC0+djhbMTFdID0gc1sxMV07Cisg
ICAgICAgIHgtPnY4WzEyXSA9IHNbMTJdOworICAgICAgICB4LT52OFsxM10gPSBzWzEzXTsKKyAg
ICAgICAgeC0+djhbMTRdID0gc1sxNF07CisgICAgICAgIHgtPnY4WzE1XSA9IHNbMTVdOworICAg
IH0KICNpZmRlZiBBTElHTk1FTlRfMzJCSVRfUkVRVUlSRUQKLSAgZWxzZSAKLSAgewotCSAgdjEy
OF90ICp2ID0gKHYxMjhfdCAqKSAmc1swXTsKKyAgICBlbHNlIHsKKyAgICAgICAgdjEyOF90ICp2
ID0gKHYxMjhfdCAqKSZzWzBdOwogCi0JICB2MTI4X2NvcHkoeCx2KTsKLSAgfQorICAgICAgICB2
MTI4X2NvcHkoeCwgdik7CisgICAgfQogI2VuZGlmCiB9CiAKICNpZm5kZWYgREFUQVRZUEVTX1VT
RV9NQUNST1MgLyogbGl0dGxlIGZ1bmN0aW9ucyBhcmUgbm90IG1hY3JvcyAqLwogCi12b2lkCi12
MTI4X3NldF90b196ZXJvKHYxMjhfdCAqeCkgewotICBfdjEyOF9zZXRfdG9femVybyh4KTsKK3Zv
aWQgdjEyOF9zZXRfdG9femVybyh2MTI4X3QgKngpCit7CisgICAgX3YxMjhfc2V0X3RvX3plcm8o
eCk7CiB9CiAKLXZvaWQKLXYxMjhfY29weSh2MTI4X3QgKngsIGNvbnN0IHYxMjhfdCAqeSkgewot
ICBfdjEyOF9jb3B5KHgsIHkpOwordm9pZCB2MTI4X2NvcHkodjEyOF90ICp4LCBjb25zdCB2MTI4
X3QgKnkpCit7CisgICAgX3YxMjhfY29weSh4LCB5KTsKIH0KIAotdm9pZAotdjEyOF94b3IodjEy
OF90ICp6LCB2MTI4X3QgKngsIHYxMjhfdCAqeSkgewotICBfdjEyOF94b3IoeiwgeCwgeSk7Ci19
IAotCi12b2lkCi12MTI4X2FuZCh2MTI4X3QgKnosIHYxMjhfdCAqeCwgdjEyOF90ICp5KSB7Ci0g
IF92MTI4X2FuZCh6LCB4LCB5KTsKK3ZvaWQgdjEyOF94b3IodjEyOF90ICp6LCB2MTI4X3QgKngs
IHYxMjhfdCAqeSkKK3sKKyAgICBfdjEyOF94b3IoeiwgeCwgeSk7CiB9CiAKLXZvaWQKLXYxMjhf
b3IodjEyOF90ICp6LCB2MTI4X3QgKngsIHYxMjhfdCAqeSkgewotICBfdjEyOF9vcih6LCB4LCB5
KTsKK3ZvaWQgdjEyOF9hbmQodjEyOF90ICp6LCB2MTI4X3QgKngsIHYxMjhfdCAqeSkKK3sKKyAg
ICBfdjEyOF9hbmQoeiwgeCwgeSk7CiB9CiAKLXZvaWQKLXYxMjhfY29tcGxlbWVudCh2MTI4X3Qg
KngpIHsKLSAgX3YxMjhfY29tcGxlbWVudCh4KTsKK3ZvaWQgdjEyOF9vcih2MTI4X3QgKnosIHYx
MjhfdCAqeCwgdjEyOF90ICp5KQoreworICAgIF92MTI4X29yKHosIHgsIHkpOwogfQogCi1pbnQK
LXYxMjhfaXNfZXEoY29uc3QgdjEyOF90ICp4LCBjb25zdCB2MTI4X3QgKnkpIHsKLSAgcmV0dXJu
IF92MTI4X2lzX2VxKHgsIHkpOwordm9pZCB2MTI4X2NvbXBsZW1lbnQodjEyOF90ICp4KQorewor
ICAgIF92MTI4X2NvbXBsZW1lbnQoeCk7CiB9CiAKLWludAotdjEyOF94b3JfZXEodjEyOF90ICp4
LCBjb25zdCB2MTI4X3QgKnkpIHsKLSAgcmV0dXJuIF92MTI4X3hvcl9lcSh4LCB5KTsKK2ludCB2
MTI4X2lzX2VxKGNvbnN0IHYxMjhfdCAqeCwgY29uc3QgdjEyOF90ICp5KQoreworICAgIHJldHVy
biBfdjEyOF9pc19lcSh4LCB5KTsKIH0KIAotaW50Ci12MTI4X2dldF9iaXQoY29uc3QgdjEyOF90
ICp4LCBpbnQgaSkgewotICByZXR1cm4gX3YxMjhfZ2V0X2JpdCh4LCBpKTsKK2ludCB2MTI4X3hv
cl9lcSh2MTI4X3QgKngsIGNvbnN0IHYxMjhfdCAqeSkKK3sKKyAgICByZXR1cm4gX3YxMjhfeG9y
X2VxKHgsIHkpOwogfQogCi12b2lkCi12MTI4X3NldF9iaXQodjEyOF90ICp4LCBpbnQgaSkgewot
ICBfdjEyOF9zZXRfYml0KHgsIGkpOwotfSAgICAgCitpbnQgdjEyOF9nZXRfYml0KGNvbnN0IHYx
MjhfdCAqeCwgaW50IGkpCit7CisgICAgcmV0dXJuIF92MTI4X2dldF9iaXQoeCwgaSk7Cit9CiAK
LXZvaWQKLXYxMjhfY2xlYXJfYml0KHYxMjhfdCAqeCwgaW50IGkpewotICBfdjEyOF9jbGVhcl9i
aXQoeCwgaSk7Ci19ICAgIAordm9pZCB2MTI4X3NldF9iaXQodjEyOF90ICp4LCBpbnQgaSkKK3sK
KyAgICBfdjEyOF9zZXRfYml0KHgsIGkpOworfQogCi12b2lkCi12MTI4X3NldF9iaXRfdG8odjEy
OF90ICp4LCBpbnQgaSwgaW50IHkpewotICBfdjEyOF9zZXRfYml0X3RvKHgsIGksIHkpOwordm9p
ZCB2MTI4X2NsZWFyX2JpdCh2MTI4X3QgKngsIGludCBpKQoreworICAgIF92MTI4X2NsZWFyX2Jp
dCh4LCBpKTsKIH0KIAordm9pZCB2MTI4X3NldF9iaXRfdG8odjEyOF90ICp4LCBpbnQgaSwgaW50
IHkpCit7CisgICAgX3YxMjhfc2V0X2JpdF90byh4LCBpLCB5KTsKK30KIAogI2VuZGlmIC8qIERB
VEFUWVBFU19VU0VfTUFDUk9TICovCiAKLXZvaWQKLXYxMjhfcmlnaHRfc2hpZnQodjEyOF90ICp4
LCBpbnQgc2hpZnQpIHsKLSAgY29uc3QgaW50IGJhc2VfaW5kZXggPSBzaGlmdCA+PiA1OwotICBj
b25zdCBpbnQgYml0X2luZGV4ID0gc2hpZnQgJiAzMTsKLSAgaW50IGksIGZyb207Ci0gIHVpbnQz
Ml90IGI7Ci0gICAgCi0gIGlmIChzaGlmdCA+IDEyNykgewotICAgIHYxMjhfc2V0X3RvX3plcm8o
eCk7Ci0gICAgcmV0dXJuOwotICB9Ci0KLSAgaWYgKGJpdF9pbmRleCA9PSAwKSB7Ci0KLSAgICAv
KiBjb3B5IGVhY2ggd29yZCBmcm9tIGxlZnQgc2l6ZSB0byByaWdodCBzaWRlICovCi0gICAgeC0+
djMyWzQtMV0gPSB4LT52MzJbNC0xLWJhc2VfaW5kZXhdOwotICAgIGZvciAoaT00LTE7IGkgPiBi
YXNlX2luZGV4OyBpLS0pIAotICAgICAgeC0+djMyW2ktMV0gPSB4LT52MzJbaS0xLWJhc2VfaW5k
ZXhdOwotCi0gIH0gZWxzZSB7Ci0gICAgCi0gICAgLyogc2V0IGVhY2ggd29yZCB0byB0aGUgIm9y
IiBvZiB0aGUgdHdvIGJpdC1zaGlmdGVkIHdvcmRzICovCi0gICAgZm9yIChpID0gNDsgaSA+IGJh
c2VfaW5kZXg7IGktLSkgewotICAgICAgZnJvbSA9IGktMSAtIGJhc2VfaW5kZXg7Ci0gICAgICBi
ID0geC0+djMyW2Zyb21dIDw8IGJpdF9pbmRleDsKLSAgICAgIGlmIChmcm9tID4gMCkKLSAgICAg
ICAgYiB8PSB4LT52MzJbZnJvbS0xXSA+PiAoMzItYml0X2luZGV4KTsKLSAgICAgIHgtPnYzMltp
LTFdID0gYjsKK3ZvaWQgdjEyOF9yaWdodF9zaGlmdCh2MTI4X3QgKngsIGludCBzaGlmdCkKK3sK
KyAgICBjb25zdCBpbnQgYmFzZV9pbmRleCA9IHNoaWZ0ID4+IDU7CisgICAgY29uc3QgaW50IGJp
dF9pbmRleCA9IHNoaWZ0ICYgMzE7CisgICAgaW50IGksIGZyb207CisgICAgdWludDMyX3QgYjsK
KworICAgIGlmIChzaGlmdCA+IDEyNykgeworICAgICAgICB2MTI4X3NldF90b196ZXJvKHgpOwor
ICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgaWYgKGJpdF9pbmRleCA9PSAwKSB7CisgICAg
ICAgIC8qIGNvcHkgZWFjaCB3b3JkIGZyb20gbGVmdCBzaXplIHRvIHJpZ2h0IHNpZGUgKi8KKyAg
ICAgICAgeC0+djMyWzQgLSAxXSA9IHgtPnYzMls0IC0gMSAtIGJhc2VfaW5kZXhdOworICAgICAg
ICBmb3IgKGkgPSA0IC0gMTsgaSA+IGJhc2VfaW5kZXg7IGktLSkKKyAgICAgICAgICAgIHgtPnYz
MltpIC0gMV0gPSB4LT52MzJbaSAtIDEgLSBiYXNlX2luZGV4XTsKKworICAgIH0gZWxzZSB7Cisg
ICAgICAgIC8qIHNldCBlYWNoIHdvcmQgdG8gdGhlICJvciIgb2YgdGhlIHR3byBiaXQtc2hpZnRl
ZCB3b3JkcyAqLworICAgICAgICBmb3IgKGkgPSA0OyBpID4gYmFzZV9pbmRleDsgaS0tKSB7Cisg
ICAgICAgICAgICBmcm9tID0gaSAtIDEgLSBiYXNlX2luZGV4OworICAgICAgICAgICAgYiA9IHgt
PnYzMltmcm9tXSA8PCBiaXRfaW5kZXg7CisgICAgICAgICAgICBpZiAoZnJvbSA+IDApCisgICAg
ICAgICAgICAgICAgYiB8PSB4LT52MzJbZnJvbSAtIDFdID4+ICgzMiAtIGJpdF9pbmRleCk7Cisg
ICAgICAgICAgICB4LT52MzJbaSAtIDFdID0gYjsKKyAgICAgICAgfQorICAgIH0KKworICAgIC8q
IG5vdyB3cmFwIHVwIHRoZSBmaW5hbCBwb3J0aW9uICovCisgICAgZm9yIChpID0gMDsgaSA8IGJh
c2VfaW5kZXg7IGkrKykKKyAgICAgICAgeC0+djMyW2ldID0gMDsKK30KKwordm9pZCB2MTI4X2xl
ZnRfc2hpZnQodjEyOF90ICp4LCBpbnQgc2hpZnQpCit7CisgICAgaW50IGk7CisgICAgY29uc3Qg
aW50IGJhc2VfaW5kZXggPSBzaGlmdCA+PiA1OworICAgIGNvbnN0IGludCBiaXRfaW5kZXggPSBz
aGlmdCAmIDMxOworCisgICAgaWYgKHNoaWZ0ID4gMTI3KSB7CisgICAgICAgIHYxMjhfc2V0X3Rv
X3plcm8oeCk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBpZiAoYml0X2luZGV4ID09
IDApIHsKKyAgICAgICAgZm9yIChpID0gMDsgaSA8IDQgLSBiYXNlX2luZGV4OyBpKyspCisgICAg
ICAgICAgICB4LT52MzJbaV0gPSB4LT52MzJbaSArIGJhc2VfaW5kZXhdOworICAgIH0gZWxzZSB7
CisgICAgICAgIGZvciAoaSA9IDA7IGkgPCA0IC0gYmFzZV9pbmRleCAtIDE7IGkrKykKKyAgICAg
ICAgICAgIHgtPnYzMltpXSA9ICh4LT52MzJbaSArIGJhc2VfaW5kZXhdID4+IGJpdF9pbmRleCkg
XgorICAgICAgICAgICAgICAgICAgICAgICAgKHgtPnYzMltpICsgYmFzZV9pbmRleCArIDFdIDw8
ICgzMiAtIGJpdF9pbmRleCkpOworICAgICAgICB4LT52MzJbNCAtIGJhc2VfaW5kZXggLSAxXSA9
IHgtPnYzMls0IC0gMV0gPj4gYml0X2luZGV4OwogICAgIH0KLSAgICAKLSAgfQotCi0gIC8qIG5v
dyB3cmFwIHVwIHRoZSBmaW5hbCBwb3J0aW9uICovCi0gIGZvciAoaT0wOyBpIDwgYmFzZV9pbmRl
eDsgaSsrKSAKLSAgICB4LT52MzJbaV0gPSAwOwotICAKLX0KLQotdm9pZAotdjEyOF9sZWZ0X3No
aWZ0KHYxMjhfdCAqeCwgaW50IHNoaWZ0KSB7Ci0gIGludCBpOwotICBjb25zdCBpbnQgYmFzZV9p
bmRleCA9IHNoaWZ0ID4+IDU7Ci0gIGNvbnN0IGludCBiaXRfaW5kZXggPSBzaGlmdCAmIDMxOwot
Ci0gIGlmIChzaGlmdCA+IDEyNykgewotICAgIHYxMjhfc2V0X3RvX3plcm8oeCk7Ci0gICAgcmV0
dXJuOwotICB9IAotICAKLSAgaWYgKGJpdF9pbmRleCA9PSAwKSB7Ci0gICAgZm9yIChpPTA7IGkg
PCA0IC0gYmFzZV9pbmRleDsgaSsrKQotICAgICAgeC0+djMyW2ldID0geC0+djMyW2krYmFzZV9p
bmRleF07Ci0gIH0gZWxzZSB7Ci0gICAgZm9yIChpPTA7IGkgPCA0IC0gYmFzZV9pbmRleCAtIDE7
IGkrKykKLSAgICAgIHgtPnYzMltpXSA9ICh4LT52MzJbaStiYXNlX2luZGV4XSA+PiBiaXRfaW5k
ZXgpIF4KLQkoeC0+djMyW2krYmFzZV9pbmRleCsxXSA8PCAoMzIgLSBiaXRfaW5kZXgpKTsKLSAg
ICB4LT52MzJbNCAtIGJhc2VfaW5kZXgtMV0gPSB4LT52MzJbNC0xXSA+PiBiaXRfaW5kZXg7Ci0g
IH0KLQotICAvKiBub3cgd3JhcCB1cCB0aGUgZmluYWwgcG9ydGlvbiAqLwotICBmb3IgKGkgPSA0
IC0gYmFzZV9pbmRleDsgaSA8IDQ7IGkrKykgCi0gICAgeC0+djMyW2ldID0gMDsKIAorICAgIC8q
IG5vdyB3cmFwIHVwIHRoZSBmaW5hbCBwb3J0aW9uICovCisgICAgZm9yIChpID0gNCAtIGJhc2Vf
aW5kZXg7IGkgPCA0OyBpKyspCisgICAgICAgIHgtPnYzMltpXSA9IDA7CiB9CiAKIC8qIGZ1bmN0
aW9ucyBtYW5pcHVsYXRpbmcgYml0dmVjdG9yX3QgKi8KIAogI2lmbmRlZiBEQVRBVFlQRVNfVVNF
X01BQ1JPUyAvKiBsaXR0bGUgZnVuY3Rpb25zIGFyZSBub3QgbWFjcm9zICovCiAKLWludAotYml0
dmVjdG9yX2dldF9iaXQoY29uc3QgYml0dmVjdG9yX3QgKnYsIGludCBiaXRfaW5kZXgpCitpbnQg
Yml0dmVjdG9yX2dldF9iaXQoY29uc3QgYml0dmVjdG9yX3QgKnYsIGludCBiaXRfaW5kZXgpCiB7
Ci0gIHJldHVybiBfYml0dmVjdG9yX2dldF9iaXQodiwgYml0X2luZGV4KTsKKyAgICByZXR1cm4g
X2JpdHZlY3Rvcl9nZXRfYml0KHYsIGJpdF9pbmRleCk7CiB9CiAKLXZvaWQKLWJpdHZlY3Rvcl9z
ZXRfYml0KGJpdHZlY3Rvcl90ICp2LCBpbnQgYml0X2luZGV4KQordm9pZCBiaXR2ZWN0b3Jfc2V0
X2JpdChiaXR2ZWN0b3JfdCAqdiwgaW50IGJpdF9pbmRleCkKIHsKLSAgX2JpdHZlY3Rvcl9zZXRf
Yml0KHYsIGJpdF9pbmRleCk7CisgICAgX2JpdHZlY3Rvcl9zZXRfYml0KHYsIGJpdF9pbmRleCk7
CiB9CiAKLXZvaWQKLWJpdHZlY3Rvcl9jbGVhcl9iaXQoYml0dmVjdG9yX3QgKnYsIGludCBiaXRf
aW5kZXgpCit2b2lkIGJpdHZlY3Rvcl9jbGVhcl9iaXQoYml0dmVjdG9yX3QgKnYsIGludCBiaXRf
aW5kZXgpCiB7Ci0gIF9iaXR2ZWN0b3JfY2xlYXJfYml0KHYsIGJpdF9pbmRleCk7CisgICAgX2Jp
dHZlY3Rvcl9jbGVhcl9iaXQodiwgYml0X2luZGV4KTsKIH0KIAotCiAjZW5kaWYgLyogREFUQVRZ
UEVTX1VTRV9NQUNST1MgKi8KIAotaW50Ci1iaXR2ZWN0b3JfYWxsb2MoYml0dmVjdG9yX3QgKnYs
IHVuc2lnbmVkIGxvbmcgbGVuZ3RoKSB7Ci0gIHVuc2lnbmVkIGxvbmcgbDsKLQotICAvKiBSb3Vu
ZCBsZW5ndGggdXAgdG8gYSBtdWx0aXBsZSBvZiBiaXRzX3Blcl93b3JkICovCi0gIGxlbmd0aCA9
IChsZW5ndGggKyBiaXRzX3Blcl93b3JkIC0gMSkgJiB+KHVuc2lnbmVkIGxvbmcpKChiaXRzX3Bl
cl93b3JkIC0gMSkpOwotCi0gIGwgPSBsZW5ndGggLyBiaXRzX3Blcl93b3JkICogYnl0ZXNfcGVy
X3dvcmQ7Ci0KLSAgLyogYWxsb2NhdGUgbWVtb3J5LCB0aGVuIHNldCBwYXJhbWV0ZXJzICovCi0g
IGlmIChsID09IDApCi0gICAgdi0+d29yZCA9IE5VTEw7Ci0gIGVsc2UgewotICAgIHYtPndvcmQg
PSAodWludDMyX3QqKXNydHBfY3J5cHRvX2FsbG9jKGwpOwotICAgIGlmICh2LT53b3JkID09IE5V
TEwpIHsKLSAgICAgIHYtPndvcmQgPSBOVUxMOwotICAgICAgdi0+bGVuZ3RoID0gMDsKLSAgICAg
IHJldHVybiAtMTsKK2ludCBiaXR2ZWN0b3JfYWxsb2MoYml0dmVjdG9yX3QgKnYsIHVuc2lnbmVk
IGxvbmcgbGVuZ3RoKQoreworICAgIHVuc2lnbmVkIGxvbmcgbDsKKworICAgIC8qIFJvdW5kIGxl
bmd0aCB1cCB0byBhIG11bHRpcGxlIG9mIGJpdHNfcGVyX3dvcmQgKi8KKyAgICBsZW5ndGggPQor
ICAgICAgICAobGVuZ3RoICsgYml0c19wZXJfd29yZCAtIDEpICYgfih1bnNpZ25lZCBsb25nKSgo
Yml0c19wZXJfd29yZCAtIDEpKTsKKworICAgIGwgPSBsZW5ndGggLyBiaXRzX3Blcl93b3JkICog
Ynl0ZXNfcGVyX3dvcmQ7CisKKyAgICAvKiBhbGxvY2F0ZSBtZW1vcnksIHRoZW4gc2V0IHBhcmFt
ZXRlcnMgKi8KKyAgICBpZiAobCA9PSAwKSB7CisgICAgICAgIHYtPndvcmQgPSBOVUxMOworICAg
ICAgICB2LT5sZW5ndGggPSAwOworICAgICAgICByZXR1cm4gLTE7CisgICAgfSBlbHNlIHsKKyAg
ICAgICAgdi0+d29yZCA9ICh1aW50MzJfdCAqKXNydHBfY3J5cHRvX2FsbG9jKGwpOworICAgICAg
ICBpZiAodi0+d29yZCA9PSBOVUxMKSB7CisgICAgICAgICAgICB2LT5sZW5ndGggPSAwOworICAg
ICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICB9CiAgICAgfQotICB9Ci0gIHYtPmxlbmd0aCA9
IGxlbmd0aDsKKyAgICB2LT5sZW5ndGggPSBsZW5ndGg7CiAKLSAgLyogaW5pdGlhbGl6ZSBiaXR2
ZWN0b3IgdG8gemVybyAqLwotICBiaXR2ZWN0b3Jfc2V0X3RvX3plcm8odik7CisgICAgLyogaW5p
dGlhbGl6ZSBiaXR2ZWN0b3IgdG8gemVybyAqLworICAgIGJpdHZlY3Rvcl9zZXRfdG9femVybyh2
KTsKIAotICByZXR1cm4gMDsKKyAgICByZXR1cm4gMDsKIH0KIAotCi12b2lkCi1iaXR2ZWN0b3Jf
ZGVhbGxvYyhiaXR2ZWN0b3JfdCAqdikgewotICBpZiAodi0+d29yZCAhPSBOVUxMKQotICAgIHNy
dHBfY3J5cHRvX2ZyZWUodi0+d29yZCk7Ci0gIHYtPndvcmQgPSBOVUxMOwotICB2LT5sZW5ndGgg
PSAwOwordm9pZCBiaXR2ZWN0b3JfZGVhbGxvYyhiaXR2ZWN0b3JfdCAqdikKK3sKKyAgICBpZiAo
di0+d29yZCAhPSBOVUxMKQorICAgICAgICBzcnRwX2NyeXB0b19mcmVlKHYtPndvcmQpOworICAg
IHYtPndvcmQgPSBOVUxMOworICAgIHYtPmxlbmd0aCA9IDA7CiB9CiAKLXZvaWQKLWJpdHZlY3Rv
cl9zZXRfdG9femVybyhiaXR2ZWN0b3JfdCAqeCkKK3ZvaWQgYml0dmVjdG9yX3NldF90b196ZXJv
KGJpdHZlY3Rvcl90ICp4KQogewotICAvKiBDOTkgZ3VhcmFudGVlcyB0aGF0IG1lbXNldCgwKSB3
aWxsIHNldCB0aGUgdmFsdWUgMCBmb3IgdWludDMyX3QgKi8KLSAgbWVtc2V0KHgtPndvcmQsIDAs
IHgtPmxlbmd0aCA+PiAzKTsKKyAgICAvKiBDOTkgZ3VhcmFudGVlcyB0aGF0IG1lbXNldCgwKSB3
aWxsIHNldCB0aGUgdmFsdWUgMCBmb3IgdWludDMyX3QgKi8KKyAgICBtZW1zZXQoeC0+d29yZCwg
MCwgeC0+bGVuZ3RoID4+IDMpOwogfQogCi1jaGFyICoKLWJpdHZlY3Rvcl9iaXRfc3RyaW5nKGJp
dHZlY3Rvcl90ICp4LCBjaGFyKiBidWYsIGludCBsZW4pIHsKLSAgaW50IGosIGk7Ci0gIHVpbnQz
Ml90IG1hc2s7Ci0gIAotICBmb3IgKGo9aT0wOyBqIDwgKGludCkoeC0+bGVuZ3RoPj41KSAmJiBp
IDwgbGVuLTE7IGorKykgewotICAgIGZvciAobWFzaz0weDgwMDAwMDAwOyBtYXNrID4gMDsgbWFz
ayA+Pj0gMSkgewotICAgICAgaWYgKHgtPndvcmRbal0gJiBtYXNrKQotCWJ1ZltpXSA9ICcxJzsK
LSAgICAgIGVsc2UKLQlidWZbaV0gPSAnMCc7Ci0gICAgICArK2k7Ci0gICAgICBpZiAoaSA+PSBs
ZW4tMSkKLSAgICAgICAgYnJlYWs7CitjaGFyICpiaXR2ZWN0b3JfYml0X3N0cmluZyhiaXR2ZWN0
b3JfdCAqeCwgY2hhciAqYnVmLCBpbnQgbGVuKQoreworICAgIGludCBqLCBpOworICAgIHVpbnQz
Ml90IG1hc2s7CisKKyAgICBmb3IgKGogPSBpID0gMDsgaiA8IChpbnQpKHgtPmxlbmd0aCA+PiA1
KSAmJiBpIDwgbGVuIC0gMTsgaisrKSB7CisgICAgICAgIGZvciAobWFzayA9IDB4ODAwMDAwMDA7
IG1hc2sgPiAwOyBtYXNrID4+PSAxKSB7CisgICAgICAgICAgICBpZiAoeC0+d29yZFtqXSAmIG1h
c2spCisgICAgICAgICAgICAgICAgYnVmW2ldID0gJzEnOworICAgICAgICAgICAgZWxzZQorICAg
ICAgICAgICAgICAgIGJ1ZltpXSA9ICcwJzsKKyAgICAgICAgICAgICsraTsKKyAgICAgICAgICAg
IGlmIChpID49IGxlbiAtIDEpCisgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KICAg
ICB9Ci0gIH0KLSAgYnVmW2ldID0gMDsgLyogbnVsbCB0ZXJtaW5hdGUgc3RyaW5nICovCisgICAg
YnVmW2ldID0gMDsgLyogbnVsbCB0ZXJtaW5hdGUgc3RyaW5nICovCiAKLSAgcmV0dXJuIGJ1ZjsK
KyAgICByZXR1cm4gYnVmOwogfQogCi12b2lkCi1iaXR2ZWN0b3JfbGVmdF9zaGlmdChiaXR2ZWN0
b3JfdCAqeCwgaW50IHNoaWZ0KSB7Ci0gIGludCBpOwotICBjb25zdCBpbnQgYmFzZV9pbmRleCA9
IHNoaWZ0ID4+IDU7Ci0gIGNvbnN0IGludCBiaXRfaW5kZXggPSBzaGlmdCAmIDMxOwotICBjb25z
dCBpbnQgd29yZF9sZW5ndGggPSB4LT5sZW5ndGggPj4gNTsKLQotICBpZiAoc2hpZnQgPj0gKGlu
dCl4LT5sZW5ndGgpIHsKLSAgICBiaXR2ZWN0b3Jfc2V0X3RvX3plcm8oeCk7Ci0gICAgcmV0dXJu
OwotICB9IAotICAKLSAgaWYgKGJpdF9pbmRleCA9PSAwKSB7Ci0gICAgZm9yIChpPTA7IGkgPCB3
b3JkX2xlbmd0aCAtIGJhc2VfaW5kZXg7IGkrKykKLSAgICAgIHgtPndvcmRbaV0gPSB4LT53b3Jk
W2krYmFzZV9pbmRleF07Ci0gIH0gZWxzZSB7Ci0gICAgZm9yIChpPTA7IGkgPCB3b3JkX2xlbmd0
aCAtIGJhc2VfaW5kZXggLSAxOyBpKyspCi0gICAgICB4LT53b3JkW2ldID0gKHgtPndvcmRbaSti
YXNlX2luZGV4XSA+PiBiaXRfaW5kZXgpIF4KLQkoeC0+d29yZFtpK2Jhc2VfaW5kZXgrMV0gPDwg
KDMyIC0gYml0X2luZGV4KSk7Ci0gICAgeC0+d29yZFt3b3JkX2xlbmd0aCAtIGJhc2VfaW5kZXgt
MV0gPSB4LT53b3JkW3dvcmRfbGVuZ3RoLTFdID4+IGJpdF9pbmRleDsKLSAgfQordm9pZCBiaXR2
ZWN0b3JfbGVmdF9zaGlmdChiaXR2ZWN0b3JfdCAqeCwgaW50IHNoaWZ0KQoreworICAgIGludCBp
OworICAgIGNvbnN0IGludCBiYXNlX2luZGV4ID0gc2hpZnQgPj4gNTsKKyAgICBjb25zdCBpbnQg
Yml0X2luZGV4ID0gc2hpZnQgJiAzMTsKKyAgICBjb25zdCBpbnQgd29yZF9sZW5ndGggPSB4LT5s
ZW5ndGggPj4gNTsKKworICAgIGlmIChzaGlmdCA+PSAoaW50KXgtPmxlbmd0aCkgeworICAgICAg
ICBiaXR2ZWN0b3Jfc2V0X3RvX3plcm8oeCk7CisgICAgICAgIHJldHVybjsKKyAgICB9CiAKLSAg
Lyogbm93IHdyYXAgdXAgdGhlIGZpbmFsIHBvcnRpb24gKi8KLSAgZm9yIChpID0gd29yZF9sZW5n
dGggLSBiYXNlX2luZGV4OyBpIDwgd29yZF9sZW5ndGg7IGkrKykgCi0gICAgeC0+d29yZFtpXSA9
IDA7CisgICAgaWYgKGJpdF9pbmRleCA9PSAwKSB7CisgICAgICAgIGZvciAoaSA9IDA7IGkgPCB3
b3JkX2xlbmd0aCAtIGJhc2VfaW5kZXg7IGkrKykKKyAgICAgICAgICAgIHgtPndvcmRbaV0gPSB4
LT53b3JkW2kgKyBiYXNlX2luZGV4XTsKKyAgICB9IGVsc2UgeworICAgICAgICBmb3IgKGkgPSAw
OyBpIDwgd29yZF9sZW5ndGggLSBiYXNlX2luZGV4IC0gMTsgaSsrKQorICAgICAgICAgICAgeC0+
d29yZFtpXSA9ICh4LT53b3JkW2kgKyBiYXNlX2luZGV4XSA+PiBiaXRfaW5kZXgpIF4KKyAgICAg
ICAgICAgICAgICAgICAgICAgICAoeC0+d29yZFtpICsgYmFzZV9pbmRleCArIDFdIDw8ICgzMiAt
IGJpdF9pbmRleCkpOworICAgICAgICB4LT53b3JkW3dvcmRfbGVuZ3RoIC0gYmFzZV9pbmRleCAt
IDFdID0KKyAgICAgICAgICAgIHgtPndvcmRbd29yZF9sZW5ndGggLSAxXSA+PiBiaXRfaW5kZXg7
CisgICAgfQogCisgICAgLyogbm93IHdyYXAgdXAgdGhlIGZpbmFsIHBvcnRpb24gKi8KKyAgICBm
b3IgKGkgPSB3b3JkX2xlbmd0aCAtIGJhc2VfaW5kZXg7IGkgPCB3b3JkX2xlbmd0aDsgaSsrKQor
ICAgICAgICB4LT53b3JkW2ldID0gMDsKIH0KIAotaW50Ci1vY3RldF9zdHJpbmdfaXNfZXEodWlu
dDhfdCAqYSwgdWludDhfdCAqYiwgaW50IGxlbikgewotICB1aW50OF90ICplbmQgPSBiICsgbGVu
OwotICB1aW50OF90IGFjY3VtdWxhdG9yID0gMDsKLQotICAvKgotICAgKiBXZSB1c2UgdGhpcyBz
b21ld2hhdCBvYnNjdXJlIGltcGxlbWVudGF0aW9uIHRvIHRyeSB0byBlbnN1cmUgdGhlIHJ1bm5p
bmcKLSAgICogdGltZSBvbmx5IGRlcGVuZHMgb24gbGVuLCBldmVuIGFjY291bnRpbmcgZm9yIGNv
bXBpbGVyIG9wdGltaXphdGlvbnMuCi0gICAqIFRoZSBhY2N1bXVsYXRvciBlbmRzIHVwIHplcm8g
aWZmIHRoZSBzdHJpbmdzIGFyZSBlcXVhbC4KLSAgICovCi0gIHdoaWxlIChiIDwgZW5kKQotICAg
IGFjY3VtdWxhdG9yIHw9ICgqYSsrIF4gKmIrKyk7Ci0KLSAgLyogUmV0dXJuIDEgaWYgKm5vdCog
ZXF1YWwuICovCi0gIHJldHVybiBhY2N1bXVsYXRvciAhPSAwOworaW50IG9jdGV0X3N0cmluZ19p
c19lcSh1aW50OF90ICphLCB1aW50OF90ICpiLCBpbnQgbGVuKQoreworICAgIHVpbnQ4X3QgKmVu
ZCA9IGIgKyBsZW47CisgICAgdWludDhfdCBhY2N1bXVsYXRvciA9IDA7CisKKyAgICAvKgorICAg
ICAqIFdlIHVzZSB0aGlzIHNvbWV3aGF0IG9ic2N1cmUgaW1wbGVtZW50YXRpb24gdG8gdHJ5IHRv
IGVuc3VyZSB0aGUgcnVubmluZworICAgICAqIHRpbWUgb25seSBkZXBlbmRzIG9uIGxlbiwgZXZl
biBhY2NvdW50aW5nIGZvciBjb21waWxlciBvcHRpbWl6YXRpb25zLgorICAgICAqIFRoZSBhY2N1
bXVsYXRvciBlbmRzIHVwIHplcm8gaWZmIHRoZSBzdHJpbmdzIGFyZSBlcXVhbC4KKyAgICAgKi8K
KyAgICB3aGlsZSAoYiA8IGVuZCkKKyAgICAgICAgYWNjdW11bGF0b3IgfD0gKCphKysgXiAqYisr
KTsKKworICAgIC8qIFJldHVybiAxIGlmICpub3QqIGVxdWFsLiAqLworICAgIHJldHVybiBhY2N1
bXVsYXRvciAhPSAwOwogfQogCi12b2lkCi1zcnRwX2NsZWFuc2Uodm9pZCAqcywgc2l6ZV90IGxl
bikKK3ZvaWQgc3J0cF9jbGVhbnNlKHZvaWQgKnMsIHNpemVfdCBsZW4pCiB7Ci0gIHZvbGF0aWxl
IHVuc2lnbmVkIGNoYXIgKnAgPSAodm9sYXRpbGUgdW5zaWduZWQgY2hhciAqKXM7Ci0gIHdoaWxl
KGxlbi0tKSAqcCsrID0gMDsKKyAgICB2b2xhdGlsZSB1bnNpZ25lZCBjaGFyICpwID0gKHZvbGF0
aWxlIHVuc2lnbmVkIGNoYXIgKilzOworICAgIHdoaWxlIChsZW4tLSkKKyAgICAgICAgKnArKyA9
IDA7CiB9CiAKLXZvaWQKLW9jdGV0X3N0cmluZ19zZXRfdG9femVybyh2b2lkICpzLCBzaXplX3Qg
bGVuKQordm9pZCBvY3RldF9zdHJpbmdfc2V0X3RvX3plcm8odm9pZCAqcywgc2l6ZV90IGxlbikK
IHsKICNpZmRlZiBPUEVOU1NMCi0gIE9QRU5TU0xfY2xlYW5zZShzLCBsZW4pOworICAgIE9QRU5T
U0xfY2xlYW5zZShzLCBsZW4pOwogI2Vsc2UKLSAgc3J0cF9jbGVhbnNlKHMsIGxlbik7CisgICAg
c3J0cF9jbGVhbnNlKHMsIGxlbik7CiAjZW5kaWYKIH0KIAogI2lmZGVmIFRFU1RBUFBfU09VUkNF
CiAKIHN0YXRpYyBjb25zdCBjaGFyIGI2NGNoYXJzW10gPSAiQUJDREVGR0hJSktMTU5PUFFSU1RV
VldYWVoiCi0gICJhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkrLyI7Ci0KLXN0
YXRpYyBpbnQgYmFzZTY0X2Jsb2NrX3RvX29jdGV0X3RyaXBsZShjaGFyICpvdXQsIGNoYXIgKmlu
KSB7Ci0gIHVuc2lnbmVkIGNoYXIgc2V4dGV0c1s0XSA9IHswfTsKLSAgaW50IGogPSAwOwotICBp
bnQgaTsKLQotICBmb3IgKGkgPSAwOyBpIDwgNDsgaSsrKSB7Ci0gICAgY2hhciAqcCA9IHN0cmNo
cihiNjRjaGFycywgaW5baV0pOwotICAgIGlmIChwICE9IE5VTEwpIHNleHRldHNbaV0gPSBwIC0g
YjY0Y2hhcnM7Ci0gICAgZWxzZSBqKys7Ci0gIH0KLQotICBvdXRbMF0gPSAoc2V4dGV0c1swXTw8
Mil8KHNleHRldHNbMV0+PjQpOwotICBpZiAoaiA8IDIpIG91dFsxXSA9IChzZXh0ZXRzWzFdPDw0
KXwoc2V4dGV0c1syXT4+Mik7Ci0gIGlmIChqIDwgMSkgb3V0WzJdID0gKHNleHRldHNbMl08PDYp
fHNleHRldHNbM107Ci0gIHJldHVybiBqOwotfQotCi1pbnQgYmFzZTY0X3N0cmluZ190b19vY3Rl
dF9zdHJpbmcoY2hhciAqb3V0LCBpbnQgKnBhZCwgY2hhciAqaW4sIGludCBsZW4pIHsKLSAgaW50
IGsgPSAwOwotICBpbnQgaSA9IDA7Ci0gIGludCBqID0gMDsKLSAgaWYgKGxlbiAlIDQgIT0gMCkg
cmV0dXJuIDA7Ci0KLSAgd2hpbGUgKGkgPCBsZW4gJiYgaiA9PSAwKSB7Ci0gICAgaiA9IGJhc2U2
NF9ibG9ja190b19vY3RldF90cmlwbGUob3V0ICsgaywgaW4gKyBpKTsKLSAgICBrICs9IDM7Ci0g
ICAgaSArPSA0OwotICB9Ci0gICpwYWQgPSBqOwotICByZXR1cm4gaTsKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAiYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5Ky8i
OworCitzdGF0aWMgaW50IGJhc2U2NF9ibG9ja190b19vY3RldF90cmlwbGUoY2hhciAqb3V0LCBj
aGFyICppbikKK3sKKyAgICB1bnNpZ25lZCBjaGFyIHNleHRldHNbNF0gPSB7IDAgfTsKKyAgICBp
bnQgaiA9IDA7CisgICAgaW50IGk7CisKKyAgICBmb3IgKGkgPSAwOyBpIDwgNDsgaSsrKSB7Cisg
ICAgICAgIGNoYXIgKnAgPSBzdHJjaHIoYjY0Y2hhcnMsIGluW2ldKTsKKyAgICAgICAgaWYgKHAg
IT0gTlVMTCkKKyAgICAgICAgICAgIHNleHRldHNbaV0gPSBwIC0gYjY0Y2hhcnM7CisgICAgICAg
IGVsc2UKKyAgICAgICAgICAgIGorKzsKKyAgICB9CisKKyAgICBvdXRbMF0gPSAoc2V4dGV0c1sw
XSA8PCAyKSB8IChzZXh0ZXRzWzFdID4+IDQpOworICAgIGlmIChqIDwgMikKKyAgICAgICAgb3V0
WzFdID0gKHNleHRldHNbMV0gPDwgNCkgfCAoc2V4dGV0c1syXSA+PiAyKTsKKyAgICBpZiAoaiA8
IDEpCisgICAgICAgIG91dFsyXSA9IChzZXh0ZXRzWzJdIDw8IDYpIHwgc2V4dGV0c1szXTsKKyAg
ICByZXR1cm4gajsKK30KKworaW50IGJhc2U2NF9zdHJpbmdfdG9fb2N0ZXRfc3RyaW5nKGNoYXIg
Km91dCwgaW50ICpwYWQsIGNoYXIgKmluLCBpbnQgbGVuKQoreworICAgIGludCBrID0gMDsKKyAg
ICBpbnQgaSA9IDA7CisgICAgaW50IGogPSAwOworICAgIGlmIChsZW4gJSA0ICE9IDApCisgICAg
ICAgIHJldHVybiAwOworCisgICAgd2hpbGUgKGkgPCBsZW4gJiYgaiA9PSAwKSB7CisgICAgICAg
IGogPSBiYXNlNjRfYmxvY2tfdG9fb2N0ZXRfdHJpcGxlKG91dCArIGssIGluICsgaSk7CisgICAg
ICAgIGsgKz0gMzsKKyAgICAgICAgaSArPSA0OworICAgIH0KKyAgICAqcGFkID0gajsKKyAgICBy
ZXR1cm4gaTsKIH0KIAogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL21hdGgvc3RhdC5jIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0
by9tYXRoL3N0YXQuYwppbmRleCAwYjRhZWMzNzY0OWZjNDBjMmM0MTZiYzNiOTk2YmFkZjAxOTFm
ZWU4Li42ZGQzMzJiMGNmNTM2YzUzYTE0ZTNlN2NiNmUyNmZkNjJhNDBiNzZiIDEwMDY0NAotLS0g
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAv
Y3J5cHRvL21hdGgvc3RhdC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vbWF0aC9zdGF0LmMKQEAgLTEsMzMgKzEsMzMg
QEAKIC8qCiAgKiBzdGF0cy5jCiAgKgotICogc3RhdGlzdGljYWwgdGVzdHMgCi0gKiAKKyAqIHN0
YXRpc3RpY2FsIHRlc3RzCisgKgogICogRGF2aWQgQS4gTWNHcmV3CiAgKiBDaXNjbyBTeXN0ZW1z
LCBJbmMuCiAgKi8KIAogLyoKLSAqCQorICoKICAqIENvcHlyaWdodCAoYykgMjAwMS0yMDE3LCBD
aXNjbyBTeXN0ZW1zLCBJbmMuCiAgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICogCisgKgogICog
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKICAqIGFyZSBtZXQ6Ci0gKiAKKyAqCiAgKiAgIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
CiAgKiAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lci4KLSAqIAorICoKICAqICAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3Jt
IG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQogICogICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwogICogICBkaXNjbGFpbWVyIGluIHRo
ZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQKICAqICAgd2l0
aCB0aGUgZGlzdHJpYnV0aW9uLgotICogCisgKgogICogICBOZWl0aGVyIHRoZSBuYW1lIG9mIHRo
ZSBDaXNjbyBTeXN0ZW1zLCBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCiAgKiAgIGNvbnRyaWJ1
dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZAog
ICogICBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBl
cm1pc3Npb24uCi0gKiAKKyAqCiAgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBD
T1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCiAgKiAiQVMgSVMiIEFORCBBTlkgRVhQ
UkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAogICogTElNSVRF
RCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5F
U1MKQEAgLTQ0LDE0ICs0NCwxNCBAQAogICovCiAKICNpZmRlZiBIQVZFX0NPTkZJR19ICi0gICAg
I2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbmZpZy5oPgogI2VuZGlmCiAKICNpbmNs
dWRlICJzdGF0LmgiCiAKLXNydHBfZGVidWdfbW9kdWxlX3QgbW9kX3N0YXQgPSB7Ci0gIDAsICAg
ICAgICAgICAgICAgICAvKiBkZWJ1Z2dpbmcgaXMgb2ZmIGJ5IGRlZmF1bHQgKi8KLSAgKGNoYXIg
Kikic3RhdCB0ZXN0IiAgICAgICAgLyogcHJpbnRhYmxlIG1vZHVsZSBuYW1lICAgICAgICovCitz
cnRwX2RlYnVnX21vZHVsZV90IHNydHBfbW9kX3N0YXQgPSB7CisgICAgMCwgICAgICAgICAgICAg
ICAgICAvKiBkZWJ1Z2dpbmcgaXMgb2ZmIGJ5IGRlZmF1bHQgKi8KKyAgICAoY2hhciAqKSJzdGF0
IHRlc3QiIC8qIHByaW50YWJsZSBtb2R1bGUgbmFtZSAgICAgICAqLwogfTsKIAogLyoKQEAgLTYx
LDE2NiArNjEsMTUzIEBAIHNydHBfZGVidWdfbW9kdWxlX3QgbW9kX3N0YXQgPSB7CiAKICNkZWZp
bmUgU1RBVF9URVNUX0RBVEFfTEVOIDI1MDAKIAotc3J0cF9lcnJfc3RhdHVzX3QKLXN0YXRfdGVz
dF9tb25vYml0KHVpbnQ4X3QgKmRhdGEpIHsKLSAgdWludDhfdCAqZGF0YV9lbmQgPSBkYXRhICsg
U1RBVF9URVNUX0RBVEFfTEVOOwotICB1aW50MTZfdCBvbmVzX2NvdW50Oworc3J0cF9lcnJfc3Rh
dHVzX3Qgc3RhdF90ZXN0X21vbm9iaXQodWludDhfdCAqZGF0YSkKK3sKKyAgICB1aW50OF90ICpk
YXRhX2VuZCA9IGRhdGEgKyBTVEFUX1RFU1RfREFUQV9MRU47CisgICAgdWludDE2X3Qgb25lc19j
b3VudDsKIAotICBvbmVzX2NvdW50ID0gMDsKLSAgd2hpbGUgKGRhdGEgPCBkYXRhX2VuZCkgewot
ICAgIG9uZXNfY291bnQgKz0gb2N0ZXRfZ2V0X3dlaWdodCgqZGF0YSk7Ci0gICAgZGF0YSsrOwot
ICB9CisgICAgb25lc19jb3VudCA9IDA7CisgICAgd2hpbGUgKGRhdGEgPCBkYXRhX2VuZCkgewor
ICAgICAgICBvbmVzX2NvdW50ICs9IG9jdGV0X2dldF93ZWlnaHQoKmRhdGEpOworICAgICAgICBk
YXRhKys7CisgICAgfQogCi0gIGRlYnVnX3ByaW50KG1vZF9zdGF0LCAiYml0IGNvdW50OiAlZCIs
IG9uZXNfY291bnQpOwotICAKLSAgaWYgKChvbmVzX2NvdW50IDwgOTcyNSkgfHwgKG9uZXNfY291
bnQgPiAxMDI3NSkpCi0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19hbGdvX2ZhaWw7CisgICAg
ZGVidWdfcHJpbnQoc3J0cF9tb2Rfc3RhdCwgImJpdCBjb3VudDogJWQiLCBvbmVzX2NvdW50KTsK
IAotICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwotfQorICAgIGlmICgob25lc19jb3VudCA8
IDk3MjUpIHx8IChvbmVzX2NvdW50ID4gMTAyNzUpKQorICAgICAgICByZXR1cm4gc3J0cF9lcnJf
c3RhdHVzX2FsZ29fZmFpbDsKIAotc3J0cF9lcnJfc3RhdHVzX3QKLXN0YXRfdGVzdF9wb2tlcih1
aW50OF90ICpkYXRhKSB7Ci0gIGludCBpOwotICB1aW50OF90ICpkYXRhX2VuZCA9IGRhdGEgKyBT
VEFUX1RFU1RfREFUQV9MRU47Ci0gIGRvdWJsZSBwb2tlcjsKLSAgdWludDE2X3QgZlsxNl0gPSB7
Ci0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAw
Ci0gIH07Ci0gIAotICB3aGlsZSAoZGF0YSA8IGRhdGFfZW5kKSB7Ci0gICAgZlsqZGF0YSAmIDB4
MGZdKys7ICAgIC8qIGluY3JlbWVudCBmcmVxLiBjb3VudCBmb3IgbG93IG5pYmJsZSAgKi8KLSAg
ICBmWygqZGF0YSkgPj4gNF0rKzsgICAgLyogaW5jcmVtZW50IGZyZXEuIGNvdW50IGZvciBoaWdo
IG5pYmJsZSAqLwotICAgIGRhdGErKzsKLSAgfQotCi0gIHBva2VyID0gMC4wOwotICBmb3IgKGk9
MDsgaSA8IDE2OyBpKyspIAotICAgIHBva2VyICs9IChkb3VibGUpIGZbaV0gKiBmW2ldOwotCi0g
IHBva2VyICo9ICgxNi4wIC8gNTAwMC4wKTsKLSAgcG9rZXIgLT0gNTAwMC4wOwotCi0gIGRlYnVn
X3ByaW50KG1vZF9zdGF0LCAicG9rZXIgdGVzdDogJWZcbiIsIHBva2VyKTsKLSAgICAKLSAgaWYg
KChwb2tlciA8IDIuMTYpIHx8IChwb2tlciA+IDQ2LjE3KSkKLSAgICByZXR1cm4gc3J0cF9lcnJf
c3RhdHVzX2FsZ29fZmFpbDsKLSAgCi0gIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CisgICAg
cmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0KIAorc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdF90
ZXN0X3Bva2VyKHVpbnQ4X3QgKmRhdGEpCit7CisgICAgaW50IGk7CisgICAgdWludDhfdCAqZGF0
YV9lbmQgPSBkYXRhICsgU1RBVF9URVNUX0RBVEFfTEVOOworICAgIGRvdWJsZSBwb2tlcjsKKyAg
ICB1aW50MTZfdCBmWzE2XSA9IHsgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwg
MCwgMCwgMCwgMCB9OworCisgICAgd2hpbGUgKGRhdGEgPCBkYXRhX2VuZCkgeworICAgICAgICBm
WypkYXRhICYgMHgwZl0rKzsgLyogaW5jcmVtZW50IGZyZXEuIGNvdW50IGZvciBsb3cgbmliYmxl
ICAqLworICAgICAgICBmWygqZGF0YSkgPj4gNF0rKzsgLyogaW5jcmVtZW50IGZyZXEuIGNvdW50
IGZvciBoaWdoIG5pYmJsZSAqLworICAgICAgICBkYXRhKys7CisgICAgfQorCisgICAgcG9rZXIg
PSAwLjA7CisgICAgZm9yIChpID0gMDsgaSA8IDE2OyBpKyspCisgICAgICAgIHBva2VyICs9IChk
b3VibGUpZltpXSAqIGZbaV07CisKKyAgICBwb2tlciAqPSAoMTYuMCAvIDUwMDAuMCk7CisgICAg
cG9rZXIgLT0gNTAwMC4wOworCisgICAgZGVidWdfcHJpbnQoc3J0cF9tb2Rfc3RhdCwgInBva2Vy
IHRlc3Q6ICVmXG4iLCBwb2tlcik7CisKKyAgICBpZiAoKHBva2VyIDwgMi4xNikgfHwgKHBva2Vy
ID4gNDYuMTcpKQorICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2FsZ29fZmFpbDsKKwor
ICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7Cit9CiAKIC8qCiAgKiBydW5zW2ldIGhvbGRz
IHRoZSBudW1iZXIgb2YgcnVucyBvZiBzaXplIChpLTEpCiAgKi8KIAotc3J0cF9lcnJfc3RhdHVz
X3QKLXN0YXRfdGVzdF9ydW5zKHVpbnQ4X3QgKmRhdGEpIHsKLSAgdWludDhfdCAqZGF0YV9lbmQg
PSBkYXRhICsgU1RBVF9URVNUX0RBVEFfTEVOOwotICB1aW50MTZfdCBydW5zWzZdID0geyAwLCAw
LCAwLCAwLCAwLCAwIH07IAotICB1aW50MTZfdCBnYXBzWzZdID0geyAwLCAwLCAwLCAwLCAwLCAw
IH07Ci0gIHVpbnQxNl90IGxvX3ZhbHVlWzZdID0geyAyMzE1LCAxMTE0LCA1MjcsIDI0MCwgMTAz
LCAxMDMgfTsKLSAgdWludDE2X3QgaGlfdmFsdWVbNl0gPSB7IDI2ODUsIDEzODYsIDcyMywgMzg0
LCAyMDksIDIwOSB9OwotICBpbnQgc3RhdGUgPSAwOwotICB1aW50MTZfdCBtYXNrOwotICBpbnQg
aTsKLSAgCi0gIC8qCi0gICAqIHRoZSBzdGF0ZSB2YXJpYWJsZSBob2xkcyB0aGUgbnVtYmVyIG9m
IGJpdHMgaW4gdGhlCi0gICAqIGN1cnJlbnQgcnVuIChvciBnYXAsIGlmIG5lZ2F0aXZlKQotICAg
Ki8KLSAgCi0gIHdoaWxlIChkYXRhIDwgZGF0YV9lbmQpIHsKLQotICAgIC8qIGxvb3Agb3ZlciB0
aGUgYml0cyBvZiB0aGlzIGJ5dGUgKi8KLSAgICBmb3IgKG1hc2sgPSAxOyBtYXNrIDwgMjU2OyBt
YXNrIDw8PSAxKSB7Ci0gICAgICBpZiAoKmRhdGEgJiBtYXNrKSB7Ci0KLSAJLyogbmV4dCBiaXQg
aXMgYSBvbmUgICovCi0JaWYgKHN0YXRlID4gMCkgewotCi0JICAvKiBwcmVmaXggaXMgYSBydW4s
IHNvIGluY3JlbWVudCB0aGUgcnVuLWNvdW50ICAqLwotCSAgc3RhdGUrKzsgICAgICAgICAgICAg
ICAgICAgICAgICAgIAotCi0JICAvKiBjaGVjayBmb3IgbG9uZyBydW5zICovIAotCSAgaWYgKHN0
YXRlID4gMjUpIHsKLQkJZGVidWdfcHJpbnQobW9kX3N0YXQsICI+MjUgcnVuczogJWQiLCBzdGF0
ZSk7Ci0JCXJldHVybiBzcnRwX2Vycl9zdGF0dXNfYWxnb19mYWlsOwotCSAgfQotCi0JfSBlbHNl
IGlmIChzdGF0ZSA8IDApIHsKLQotCSAgLyogcHJlZml4IGlzIGEgZ2FwICAqLwotCSAgaWYgKHN0
YXRlIDwgLTI1KSB7Ci0JCWRlYnVnX3ByaW50KG1vZF9zdGF0LCAiPjI1IGdhcHM6ICVkIiwgc3Rh
dGUpOwotCSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2FsZ29fZmFpbDsgICAgLyogbG9uZy1y
dW5zIHRlc3QgZmFpbGVkICAgKi8KLQkgIH0KLQkgIGlmIChzdGF0ZSA8IC02KSB7Ci0JICAgIHN0
YXRlID0gLTY7ICAgICAgICAgICAgICAgICAgICAgLyogZ3JvdXAgdG9nZXRoZXIgZ2FwcyA+IDUg
Ki8KLQkgIH0KLQkgIGdhcHNbLTEtc3RhdGVdKys7ICAgICAgICAgICAgICAgICAvKiBpbmNyZW1l
bnQgZ2FwIGNvdW50ICAgICAgKi8KLSAgICAgICAgICBzdGF0ZSA9IDE7ICAgICAgICAgICAgICAg
ICAgICAgICAgLyogc2V0IHN0YXRlIGF0IG9uZSBzZXQgYml0ICovCi0JfSBlbHNlIHsKLQotCSAg
Lyogc3RhdGUgaXMgemVybzsgdGhpcyBoYXBwZW5zIG9ubHkgYXQgaW5pdGlhbGl6YXRpb24gICAg
ICAgICovCi0JICBzdGF0ZSA9IDE7ICAgICAgICAgICAgCi0JfQotICAgICAgfSBlbHNlIHsKLQot
CS8qIG5leHQgYml0IGlzIGEgemVybyAgKi8KLQlpZiAoc3RhdGUgPiAwKSB7Ci0KLQkgIC8qIHBy
ZWZpeCBpcyBhIHJ1biAqLwotCSAgaWYgKHN0YXRlID4gMjUpIHsKLQkJZGVidWdfcHJpbnQobW9k
X3N0YXQsICI+MjUgcnVucyAoMik6ICVkIiwgc3RhdGUpOwotCSAgICByZXR1cm4gc3J0cF9lcnJf
c3RhdHVzX2FsZ29fZmFpbDsgICAgLyogbG9uZy1ydW5zIHRlc3QgZmFpbGVkICAgKi8KLQkgIH0K
LQkgIGlmIChzdGF0ZSA+IDYpIHsKLQkgICAgc3RhdGUgPSA2OyAgICAgICAgICAgICAgICAgICAg
ICAvKiBncm91cCB0b2dldGhlciBydW5zID4gNSAqLwotCSAgfQotCSAgcnVuc1tzdGF0ZS0xXSsr
OyAgICAgICAgICAgICAgICAgIC8qIGluY3JlbWVudCBydW4gY291bnQgICAgICAgKi8KLSAgICAg
ICAgICBzdGF0ZSA9IC0xOyAgICAgICAgICAgICAgICAgICAgICAgLyogc2V0IHN0YXRlIGF0IG9u
ZSB6ZXJvIGJpdCAqLwotCX0gZWxzZSBpZiAoc3RhdGUgPCAwKSB7Ci0KLQkgIC8qIHByZWZpeCBp
cyBhIGdhcCwgc28gaW5jcmVtZW50IGdhcC1jb3VudCAoZGVjcmVtZW50IHN0YXRlKSAqLwotCSAg
c3RhdGUtLTsKLQotCSAgLyogY2hlY2sgZm9yIGxvbmcgZ2FwcyAqLyAKLQkgIGlmIChzdGF0ZSA8
IC0yNSkgewotCQlkZWJ1Z19wcmludChtb2Rfc3RhdCwgIj4yNSBnYXBzICgyKTogJWQiLCBzdGF0
ZSk7Ci0JICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYWxnb19mYWlsOwotCSAgfQotCi0JfSBl
bHNlIHsKLQotCSAgLyogc3RhdGUgaXMgemVybzsgdGhpcyBoYXBwZW5zIG9ubHkgYXQgaW5pdGlh
bGl6YXRpb24gICAgICAgICovCi0JICBzdGF0ZSA9IC0xOwotCX0KLSAgICAgIH0KK3NydHBfZXJy
X3N0YXR1c190IHN0YXRfdGVzdF9ydW5zKHVpbnQ4X3QgKmRhdGEpCit7CisgICAgdWludDhfdCAq
ZGF0YV9lbmQgPSBkYXRhICsgU1RBVF9URVNUX0RBVEFfTEVOOworICAgIHVpbnQxNl90IHJ1bnNb
Nl0gPSB7IDAsIDAsIDAsIDAsIDAsIDAgfTsKKyAgICB1aW50MTZfdCBnYXBzWzZdID0geyAwLCAw
LCAwLCAwLCAwLCAwIH07CisgICAgdWludDE2X3QgbG9fdmFsdWVbNl0gPSB7IDIzMTUsIDExMTQs
IDUyNywgMjQwLCAxMDMsIDEwMyB9OworICAgIHVpbnQxNl90IGhpX3ZhbHVlWzZdID0geyAyNjg1
LCAxMzg2LCA3MjMsIDM4NCwgMjA5LCAyMDkgfTsKKyAgICBpbnQgc3RhdGUgPSAwOworICAgIHVp
bnQxNl90IG1hc2s7CisgICAgaW50IGk7CisKKyAgICAvKgorICAgICAqIHRoZSBzdGF0ZSB2YXJp
YWJsZSBob2xkcyB0aGUgbnVtYmVyIG9mIGJpdHMgaW4gdGhlCisgICAgICogY3VycmVudCBydW4g
KG9yIGdhcCwgaWYgbmVnYXRpdmUpCisgICAgICovCisKKyAgICB3aGlsZSAoZGF0YSA8IGRhdGFf
ZW5kKSB7CisgICAgICAgIC8qIGxvb3Agb3ZlciB0aGUgYml0cyBvZiB0aGlzIGJ5dGUgKi8KKyAg
ICAgICAgZm9yIChtYXNrID0gMTsgbWFzayA8IDI1NjsgbWFzayA8PD0gMSkgeworICAgICAgICAg
ICAgaWYgKCpkYXRhICYgbWFzaykgeworICAgICAgICAgICAgICAgIC8qIG5leHQgYml0IGlzIGEg
b25lICAqLworICAgICAgICAgICAgICAgIGlmIChzdGF0ZSA+IDApIHsKKyAgICAgICAgICAgICAg
ICAgICAgLyogcHJlZml4IGlzIGEgcnVuLCBzbyBpbmNyZW1lbnQgdGhlIHJ1bi1jb3VudCAgKi8K
KyAgICAgICAgICAgICAgICAgICAgc3RhdGUrKzsKKworICAgICAgICAgICAgICAgICAgICAvKiBj
aGVjayBmb3IgbG9uZyBydW5zICovCisgICAgICAgICAgICAgICAgICAgIGlmIChzdGF0ZSA+IDI1
KSB7CisgICAgICAgICAgICAgICAgICAgICAgICBkZWJ1Z19wcmludChzcnRwX21vZF9zdGF0LCAi
PjI1IHJ1bnM6ICVkIiwgc3RhdGUpOworICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHNy
dHBfZXJyX3N0YXR1c19hbGdvX2ZhaWw7CisgICAgICAgICAgICAgICAgICAgIH0KKworICAgICAg
ICAgICAgICAgIH0gZWxzZSBpZiAoc3RhdGUgPCAwKSB7CisgICAgICAgICAgICAgICAgICAgIC8q
IHByZWZpeCBpcyBhIGdhcCAgKi8KKyAgICAgICAgICAgICAgICAgICAgaWYgKHN0YXRlIDwgLTI1
KSB7CisgICAgICAgICAgICAgICAgICAgICAgICBkZWJ1Z19wcmludChzcnRwX21vZF9zdGF0LCAi
PjI1IGdhcHM6ICVkIiwgc3RhdGUpOworICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHNy
dHBfZXJyX3N0YXR1c19hbGdvX2ZhaWw7IC8qIGxvbmctcnVucyB0ZXN0CisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmFpbGVkICAg
Ki8KKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICBpZiAoc3RhdGUg
PCAtNikgeworICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGUgPSAtNjsgLyogZ3JvdXAgdG9n
ZXRoZXIgZ2FwcyA+IDUgKi8KKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAg
ICAgICBnYXBzWy0xIC0gc3RhdGVdKys7IC8qIGluY3JlbWVudCBnYXAgY291bnQgICAgICAqLwor
ICAgICAgICAgICAgICAgICAgICBzdGF0ZSA9IDE7ICAgICAgICAgIC8qIHNldCBzdGF0ZSBhdCBv
bmUgc2V0IGJpdCAqLworICAgICAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAg
ICAgIC8qIHN0YXRlIGlzIHplcm87IHRoaXMgaGFwcGVucyBvbmx5IGF0IGluaXRpYWxpemF0aW9u
ICovCisgICAgICAgICAgICAgICAgICAgIHN0YXRlID0gMTsKKyAgICAgICAgICAgICAgICB9Cisg
ICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgIC8qIG5leHQgYml0IGlzIGEgemVy
byAgKi8KKyAgICAgICAgICAgICAgICBpZiAoc3RhdGUgPiAwKSB7CisgICAgICAgICAgICAgICAg
ICAgIC8qIHByZWZpeCBpcyBhIHJ1biAqLworICAgICAgICAgICAgICAgICAgICBpZiAoc3RhdGUg
PiAyNSkgeworICAgICAgICAgICAgICAgICAgICAgICAgZGVidWdfcHJpbnQoc3J0cF9tb2Rfc3Rh
dCwgIj4yNSBydW5zICgyKTogJWQiLCBzdGF0ZSk7CisgICAgICAgICAgICAgICAgICAgICAgICBy
ZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2FsZ29fZmFpbDsgLyogbG9uZy1ydW5zIHRlc3QKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBm
YWlsZWQgICAqLworICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgIGlm
IChzdGF0ZSA+IDYpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRlID0gNjsgLyogZ3Jv
dXAgdG9nZXRoZXIgcnVucyA+IDUgKi8KKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAg
ICAgICAgICAgICBydW5zW3N0YXRlIC0gMV0rKzsgLyogaW5jcmVtZW50IHJ1biBjb3VudCAgICAg
ICAqLworICAgICAgICAgICAgICAgICAgICBzdGF0ZSA9IC0xOyAgICAgICAgLyogc2V0IHN0YXRl
IGF0IG9uZSB6ZXJvIGJpdCAqLworICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoc3RhdGUgPCAw
KSB7CisgICAgICAgICAgICAgICAgICAgIC8qIHByZWZpeCBpcyBhIGdhcCwgc28gaW5jcmVtZW50
IGdhcC1jb3VudCAoZGVjcmVtZW50IHN0YXRlKQorICAgICAgICAgICAgICAgICAgICAgKi8KKyAg
ICAgICAgICAgICAgICAgICAgc3RhdGUtLTsKKworICAgICAgICAgICAgICAgICAgICAvKiBjaGVj
ayBmb3IgbG9uZyBnYXBzICovCisgICAgICAgICAgICAgICAgICAgIGlmIChzdGF0ZSA8IC0yNSkg
eworICAgICAgICAgICAgICAgICAgICAgICAgZGVidWdfcHJpbnQoc3J0cF9tb2Rfc3RhdCwgIj4y
NSBnYXBzICgyKTogJWQiLCBzdGF0ZSk7CisgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4g
c3J0cF9lcnJfc3RhdHVzX2FsZ29fZmFpbDsKKyAgICAgICAgICAgICAgICAgICAgfQorCisgICAg
ICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICAgICAgLyogc3RhdGUgaXMgemVy
bzsgdGhpcyBoYXBwZW5zIG9ubHkgYXQgaW5pdGlhbGl6YXRpb24gKi8KKyAgICAgICAgICAgICAg
ICAgICAgc3RhdGUgPSAtMTsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAg
ICAgIH0KKworICAgICAgICAvKiBtb3ZlIGFsb25nIHRvIG5leHQgb2N0ZXQgKi8KKyAgICAgICAg
ZGF0YSsrOwogICAgIH0KIAotICAgIC8qIG1vdmUgYWxvbmcgdG8gbmV4dCBvY3RldCAqLwotICAg
IGRhdGErKzsKLSAgfQotCi0gIGlmIChtb2Rfc3RhdC5vbikgewotICAgIGRlYnVnX3ByaW50KG1v
ZF9zdGF0LCAicnVucyB0ZXN0IiwgTlVMTCk7Ci0gICAgZm9yIChpPTA7IGkgPCA2OyBpKyspCi0g
ICAgICBkZWJ1Z19wcmludChtb2Rfc3RhdCwgIiAgcnVuc1tdOiAlZCIsIHJ1bnNbaV0pOwotICAg
IGZvciAoaT0wOyBpIDwgNjsgaSsrKQotICAgICAgZGVidWdfcHJpbnQobW9kX3N0YXQsICIgIGdh
cHNbXTogJWQiLCBnYXBzW2ldKTsKLSAgfQotCi0gIC8qIGNoZWNrIHJ1biBhbmQgZ2FwIGNvdW50
cyBhZ2FpbnN0IHRoZSBmaXhlZCBsaW1pdHMgKi8KLSAgZm9yIChpPTA7IGkgPCA2OyBpKyspIAot
ICAgIGlmICggICAocnVuc1tpXSA8IGxvX3ZhbHVlW2ldICkgfHwgKHJ1bnNbaV0gPiBoaV92YWx1
ZVtpXSkKLQl8fCAoZ2Fwc1tpXSA8IGxvX3ZhbHVlW2ldICkgfHwgKGdhcHNbaV0gPiBoaV92YWx1
ZVtpXSkpCi0gICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2FsZ29fZmFpbDsKLQotICAKLSAg
cmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKLX0KKyAgICBpZiAoc3J0cF9tb2Rfc3RhdC5vbikg
eworICAgICAgICBkZWJ1Z19wcmludChzcnRwX21vZF9zdGF0LCAicnVucyB0ZXN0IiwgTlVMTCk7
CisgICAgICAgIGZvciAoaSA9IDA7IGkgPCA2OyBpKyspCisgICAgICAgICAgICBkZWJ1Z19wcmlu
dChzcnRwX21vZF9zdGF0LCAiICBydW5zW106ICVkIiwgcnVuc1tpXSk7CisgICAgICAgIGZvciAo
aSA9IDA7IGkgPCA2OyBpKyspCisgICAgICAgICAgICBkZWJ1Z19wcmludChzcnRwX21vZF9zdGF0
LCAiICBnYXBzW106ICVkIiwgZ2Fwc1tpXSk7CisgICAgfQogCisgICAgLyogY2hlY2sgcnVuIGFu
ZCBnYXAgY291bnRzIGFnYWluc3QgdGhlIGZpeGVkIGxpbWl0cyAqLworICAgIGZvciAoaSA9IDA7
IGkgPCA2OyBpKyspCisgICAgICAgIGlmICgocnVuc1tpXSA8IGxvX3ZhbHVlW2ldKSB8fCAocnVu
c1tpXSA+IGhpX3ZhbHVlW2ldKSB8fAorICAgICAgICAgICAgKGdhcHNbaV0gPCBsb192YWx1ZVtp
XSkgfHwgKGdhcHNbaV0gPiBoaV92YWx1ZVtpXSkpCisgICAgICAgICAgICByZXR1cm4gc3J0cF9l
cnJfc3RhdHVzX2FsZ29fZmFpbDsKIAorICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7Cit9
CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L2xpYnNydHAvY3J5cHRvL3JlcGxheS9yZGIuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vcmVwbGF5L3JkYi5jCmluZGV4
IDM3NDEzNjdmNjgwNzcyNTBlM2I2OWUxODg1NTY1Yjk2NTJjMjllMjIuLmFiMWM3YjU1YjZkOGY0
N2VhZmU0ZmNkMmY4N2MxNzM2MjBlMTBhMTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vcmVwbGF5L3JkYi5j
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGli
c3J0cC9jcnlwdG8vcmVwbGF5L3JkYi5jCkBAIC00MywxNCArNDMsMTIgQEAKICAqCiAgKi8KIAot
CiAjaWZkZWYgSEFWRV9DT05GSUdfSAotICAgICNpbmNsdWRlIDxjb25maWcuaD4KKyNpbmNsdWRl
IDxjb25maWcuaD4KICNlbmRpZgogCiAjaW5jbHVkZSAicmRiLmgiCiAKLQogLyoKICAqIHRoaXMg
aW1wbGVtZW50YXRpb24gb2YgYSByZXBsYXkgZGF0YWJhc2Ugd29ya3MgYXMgZm9sbG93czoKICAq
CkBAIC02MSw3ICs1OSw3IEBACiAgKi8KIAogLyogc3J0cF9yZGJfaW5pdCBpbml0YWxpemVzIHJk
YiAqLwotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9yZGJfaW5pdCAoc3J0cF9yZGJfdCAqcmRiKQor
c3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9yZGJfaW5pdChzcnRwX3JkYl90ICpyZGIpCiB7CiAgICAg
djEyOF9zZXRfdG9femVybygmcmRiLT5iaXRtYXNrKTsKICAgICByZGItPndpbmRvd19zdGFydCA9
IDA7CkBAIC03MSw5ICs2OSw4IEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfcmRiX2luaXQgKHNy
dHBfcmRiX3QgKnJkYikKIC8qCiAgKiBzcnRwX3JkYl9jaGVjayBjaGVja3MgdG8gc2VlIGlmIGlu
ZGV4IGFwcGVhcnMgaW4gcmRiCiAgKi8KLXNydHBfZXJyX3N0YXR1c190IHNydHBfcmRiX2NoZWNr
IChjb25zdCBzcnRwX3JkYl90ICpyZGIsIHVpbnQzMl90IHBfaW5kZXgpCitzcnRwX2Vycl9zdGF0
dXNfdCBzcnRwX3JkYl9jaGVjayhjb25zdCBzcnRwX3JkYl90ICpyZGIsIHVpbnQzMl90IHBfaW5k
ZXgpCiB7Ci0KICAgICAvKiBpZiB0aGUgaW5kZXggYXBwZWFycyBhZnRlciAob3IgYXQgdmVyeSBl
bmQgb2YpIHRoZSB3aW5kb3csIGl0cyBnb29kICovCiAgICAgaWYgKHBfaW5kZXggPj0gcmRiLT53
aW5kb3dfc3RhcnQgKyByZGJfYml0c19pbl9iaXRtYXNrKSB7CiAgICAgICAgIHJldHVybiBzcnRw
X2Vycl9zdGF0dXNfb2s7CkBAIC0xMDEsMzUgKzk4LDMyIEBAIHNydHBfZXJyX3N0YXR1c190IHNy
dHBfcmRiX2NoZWNrIChjb25zdCBzcnRwX3JkYl90ICpyZGIsIHVpbnQzMl90IHBfaW5kZXgpCiAg
KiBpbmRpY2F0ZWQgdGhhdCB0aGUgaW5kZXggZG9lcyBub3QgYXBwZWFyIGluIHRoZSByZGIsIGUu
Zy4sIGEgbXV0ZXgKICAqIHNob3VsZCBwcm90ZWN0IHRoZSByZGIgYmV0d2VlbiB0aGVzZSBjYWxs
cwogICovCi1zcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3JkYl9hZGRfaW5kZXggKHNydHBfcmRiX3Qg
KnJkYiwgdWludDMyX3QgcF9pbmRleCkKK3NydHBfZXJyX3N0YXR1c190IHNydHBfcmRiX2FkZF9p
bmRleChzcnRwX3JkYl90ICpyZGIsIHVpbnQzMl90IHBfaW5kZXgpCiB7Ci0gICAgaW50IGRlbHRh
OworICAgIHVuc2lnbmVkIGludCBkZWx0YTsKIAotICAgIC8qIGhlcmUgd2UgKmFzc3VtZSogdGhh
dCBwX2luZGV4ID4gcmRiLT53aW5kb3dfc3RhcnQgKi8KKyAgICBpZiAocF9pbmRleCA8IHJkYi0+
d2luZG93X3N0YXJ0KQorICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX3JlcGxheV9mYWls
OwogCiAgICAgZGVsdGEgPSAocF9pbmRleCAtIHJkYi0+d2luZG93X3N0YXJ0KTsKICAgICBpZiAo
ZGVsdGEgPCByZGJfYml0c19pbl9iaXRtYXNrKSB7Ci0KICAgICAgICAgLyogaWYgdGhlIHBfaW5k
ZXggaXMgd2l0aGluIHRoZSB3aW5kb3csIHNldCB0aGUgYXBwcm9wcmlhdGUgYml0ICovCiAgICAg
ICAgIHYxMjhfc2V0X2JpdCgmcmRiLT5iaXRtYXNrLCBkZWx0YSk7CiAKICAgICB9IGVsc2Ugewot
CiAgICAgICAgIGRlbHRhIC09IHJkYl9iaXRzX2luX2JpdG1hc2sgLSAxOwogCiAgICAgICAgIC8q
IHNoaWZ0IHRoZSB3aW5kb3cgZm9yd2FyZCBieSBkZWx0YSBiaXRzKi8KICAgICAgICAgdjEyOF9s
ZWZ0X3NoaWZ0KCZyZGItPmJpdG1hc2ssIGRlbHRhKTsKICAgICAgICAgdjEyOF9zZXRfYml0KCZy
ZGItPmJpdG1hc2ssIHJkYl9iaXRzX2luX2JpdG1hc2sgLSAxKTsKICAgICAgICAgcmRiLT53aW5k
b3dfc3RhcnQgKz0gZGVsdGE7Ci0KICAgICB9CiAKICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVz
X29rOwogfQogCi1zcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3JkYl9pbmNyZW1lbnQgKHNydHBfcmRi
X3QgKnJkYikKK3NydHBfZXJyX3N0YXR1c190IHNydHBfcmRiX2luY3JlbWVudChzcnRwX3JkYl90
ICpyZGIpCiB7Ci0KICAgICBpZiAocmRiLT53aW5kb3dfc3RhcnQgPj0gMHg3ZmZmZmZmZikgewog
ICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2tleV9leHBpcmVkOwogICAgIH0KQEAgLTEz
Nyw3ICsxMzEsNyBAQCBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3JkYl9pbmNyZW1lbnQgKHNydHBf
cmRiX3QgKnJkYikKICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQogCi11aW50MzJf
dCBzcnRwX3JkYl9nZXRfdmFsdWUgKGNvbnN0IHNydHBfcmRiX3QgKnJkYikKK3VpbnQzMl90IHNy
dHBfcmRiX2dldF92YWx1ZShjb25zdCBzcnRwX3JkYl90ICpyZGIpCiB7CiAgICAgcmV0dXJuIHJk
Yi0+d2luZG93X3N0YXJ0OwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9yZXBsYXkvcmRieC5jIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0
by9yZXBsYXkvcmRieC5jCmluZGV4IDYzZjY2ZmYwMjRlNDYwOGI4NmU4ODFiZTlkMWQxODU1MDg4
ZDJhMzkuLjQwY2JhMDFhMWY1ZGI0Mzk0NzBkNWRlMGI5YjVhMzhlNjFjYjUzOGEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0
cC9jcnlwdG8vcmVwbGF5L3JkYnguYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL3JlcGxheS9yZGJ4LmMKQEAgLTQ0LDEy
ICs0NCwxMSBAQAogICovCiAKICNpZmRlZiBIQVZFX0NPTkZJR19ICi0gICAgI2luY2x1ZGUgPGNv
bmZpZy5oPgorI2luY2x1ZGUgPGNvbmZpZy5oPgogI2VuZGlmCiAKICNpbmNsdWRlICJyZGJ4Lmgi
CiAKLQogLyoKICAqIGZyb20gUkZDIDM3MTE6CiAgKgpAQCAtNjQsOCArNjMsNiBAQAogICogaW5j
cmVtZW50ZWQgYnkgb25lIChpZiB0aGUgcGFja2V0IGNvbnRhaW5pbmcgcyBpcyBhdXRoZW50aWMp
LgogICovCiAKLQotCiAvKgogICogcmRieCBpbXBsZW1lbnRhdGlvbiBub3RlcwogICoKQEAgLTgz
LDE0ICs4MCwxMyBAQAogICogc3J0cF9pbmRleF9hZHZhbmNlKCZndWVzcywgZGVsdGEpLCB3aGVy
ZSBkZWx0YSBpcyB0aGUgZGlmZmVyZW5jZS4KICAqCiAgKgotICogQSBzcnRwX3JkYnhfdCBjb25z
aXN0cyBvZiBhIHNydHBfeHRkX3NlcV9udW1fdCBhbmQgYSBiaXRtYXNrLiAgVGhlIGluZGV4IGlz
IGhpZ2hlc3QKLSAqIHNlcXVlbmNlIG51bWJlciB0aGF0IGhhcyBiZWVuIHJlY2VpdmVkLCBhbmQg
dGhlIGJpdG1hc2sgaW5kaWNhdGVzCisgKiBBIHNydHBfcmRieF90IGNvbnNpc3RzIG9mIGEgc3J0
cF94dGRfc2VxX251bV90IGFuZCBhIGJpdG1hc2suICBUaGUgaW5kZXggaXMKKyAqIGhpZ2hlc3Qg
c2VxdWVuY2UgbnVtYmVyIHRoYXQgaGFzIGJlZW4gcmVjZWl2ZWQsIGFuZCB0aGUgYml0bWFzayBp
bmRpY2F0ZXMKICAqIHdoaWNoIG9mIHRoZSByZWNlbnQgaW5kaWNpZXMgaGF2ZSBiZWVuIHJlY2Vp
dmVkIGFzIHdlbGwuICBUaGUKICAqIGhpZ2hlc3QgYml0IGluIHRoZSBiaXRtYXNrIGNvcnJlc3Bv
bmRzIHRvIHRoZSBpbmRleCBpbiB0aGUgYml0bWFzay4KICAqLwogCi0KLXZvaWQgc3J0cF9pbmRl
eF9pbml0IChzcnRwX3h0ZF9zZXFfbnVtX3QgKnBpKQordm9pZCBzcnRwX2luZGV4X2luaXQoc3J0
cF94dGRfc2VxX251bV90ICpwaSkKIHsKICNpZmRlZiBOT182NEJJVF9NQVRICiAgICAgKnBpID0g
bWFrZTY0KDAsIDApOwpAQCAtOTksNyArOTUsNyBAQCB2b2lkIHNydHBfaW5kZXhfaW5pdCAoc3J0
cF94dGRfc2VxX251bV90ICpwaSkKICNlbmRpZgogfQogCi12b2lkIHNydHBfaW5kZXhfYWR2YW5j
ZSAoc3J0cF94dGRfc2VxX251bV90ICpwaSwgc3J0cF9zZXF1ZW5jZV9udW1iZXJfdCBzKQordm9p
ZCBzcnRwX2luZGV4X2FkdmFuY2Uoc3J0cF94dGRfc2VxX251bV90ICpwaSwgc3J0cF9zZXF1ZW5j
ZV9udW1iZXJfdCBzKQogewogI2lmZGVmIE5PXzY0QklUX01BVEgKICAgICAvKiBhID4gfmIgbWVh
bnMgYStiIHdpbGwgZ2VuZXJhdGUgYSBjYXJyeSAqLwpAQCAtMTEwLDcgKzEwNiw2IEBAIHZvaWQg
c3J0cF9pbmRleF9hZHZhbmNlIChzcnRwX3h0ZF9zZXFfbnVtX3QgKnBpLCBzcnRwX3NlcXVlbmNl
X251bWJlcl90IHMpCiAjZW5kaWYKIH0KIAotCiAvKgogICogc3J0cF9pbmRleF9ndWVzcyhsb2Nh
bCwgZ3Vlc3MsIHMpCiAgKgpAQCAtMTI0LDI0ICsxMTksMTkgQEAgdm9pZCBzcnRwX2luZGV4X2Fk
dmFuY2UgKHNydHBfeHRkX3NlcV9udW1fdCAqcGksIHNydHBfc2VxdWVuY2VfbnVtYmVyX3QgcykK
ICAqIHVuc2lnbmVkIGludGVnZXIhCiAgKi8KIAotaW50MzJfdCBzcnRwX2luZGV4X2d1ZXNzIChj
b25zdCBzcnRwX3h0ZF9zZXFfbnVtX3QgKmxvY2FsLCBzcnRwX3h0ZF9zZXFfbnVtX3QgKmd1ZXNz
LCBzcnRwX3NlcXVlbmNlX251bWJlcl90IHMpCitpbnQzMl90IHNydHBfaW5kZXhfZ3Vlc3MoY29u
c3Qgc3J0cF94dGRfc2VxX251bV90ICpsb2NhbCwKKyAgICAgICAgICAgICAgICAgICAgICAgICBz
cnRwX3h0ZF9zZXFfbnVtX3QgKmd1ZXNzLAorICAgICAgICAgICAgICAgICAgICAgICAgIHNydHBf
c2VxdWVuY2VfbnVtYmVyX3QgcykKIHsKICNpZmRlZiBOT182NEJJVF9NQVRICi0gICAgdWludDMy
X3QgbG9jYWxfcm9jID0gKChoaWdoMzIoKmxvY2FsKSA8PCAxNikgfAotICAgICAgICAgICAgICAg
ICAgICAgICAgICAobG93MzIoKmxvY2FsKSA+PiAxNikpOworICAgIHVpbnQzMl90IGxvY2FsX3Jv
YyA9ICgoaGlnaDMyKCpsb2NhbCkgPDwgMTYpIHwgKGxvdzMyKCpsb2NhbCkgPj4gMTYpKTsKICAg
ICB1aW50MTZfdCBsb2NhbF9zZXEgPSAodWludDE2X3QpKGxvdzMyKCpsb2NhbCkpOwogI2Vsc2UK
ICAgICB1aW50MzJfdCBsb2NhbF9yb2MgPSAodWludDMyX3QpKCpsb2NhbCA+PiAxNik7CiAgICAg
dWludDE2X3QgbG9jYWxfc2VxID0gKHVpbnQxNl90KSpsb2NhbDsKICNlbmRpZgotI2lmZGVmIE5P
XzY0QklUX01BVEgKLSAgICB1aW50MzJfdCBndWVzc19yb2MgPSAoKGhpZ2gzMigqZ3Vlc3MpIDw8
IDE2KSB8Ci0gICAgICAgICAgICAgICAgICAgICAgICAgIChsb3czMigqZ3Vlc3MpID4+IDE2KSk7
Ci0gICAgdWludDE2X3QgZ3Vlc3Nfc2VxID0gKHVpbnQxNl90KShsb3czMigqZ3Vlc3MpKTsKLSNl
bHNlCi0gICAgdWludDMyX3QgZ3Vlc3Nfcm9jID0gKHVpbnQzMl90KSgqZ3Vlc3MgPj4gMTYpOwot
ICAgIHVpbnQxNl90IGd1ZXNzX3NlcSA9ICh1aW50MTZfdCkqZ3Vlc3M7Ci0jZW5kaWYKKyAgICB1
aW50MzJfdCBndWVzc19yb2M7CisgICAgdWludDE2X3QgZ3Vlc3Nfc2VxOwogICAgIGludDMyX3Qg
ZGlmZmVyZW5jZTsKIAogICAgIGlmIChsb2NhbF9zZXEgPCBzZXFfbnVtX21lZGlhbikgewpAQCAt
MTYzLDEwICsxNTMsOSBAQCBpbnQzMl90IHNydHBfaW5kZXhfZ3Vlc3MgKGNvbnN0IHNydHBfeHRk
X3NlcV9udW1fdCAqbG9jYWwsIHNydHBfeHRkX3NlcV9udW1fdCAqZwogICAgIH0KICAgICBndWVz
c19zZXEgPSBzOwogCi0gICAgLyogTm90ZTogZ3Vlc3Nfcm9jIGlzIDMyIGJpdHMsIHNvIHRoaXMg
Z2VuZXJhdGVzIGEgNDgtYml0IHJlc3VsdCEgKi8KKy8qIE5vdGU6IGd1ZXNzX3JvYyBpcyAzMiBi
aXRzLCBzbyB0aGlzIGdlbmVyYXRlcyBhIDQ4LWJpdCByZXN1bHQhICovCiAjaWZkZWYgTk9fNjRC
SVRfTUFUSAotICAgICpndWVzcyA9IG1ha2U2NChndWVzc19yb2MgPj4gMTYsCi0gICAgICAgICAg
ICAgICAgICAgIChndWVzc19yb2MgPDwgMTYpIHwgZ3Vlc3Nfc2VxKTsKKyAgICAqZ3Vlc3MgPSBt
YWtlNjQoZ3Vlc3Nfcm9jID4+IDE2LCAoZ3Vlc3Nfcm9jIDw8IDE2KSB8IGd1ZXNzX3NlcSk7CiAj
ZWxzZQogICAgICpndWVzcyA9ICgoKHVpbnQ2NF90KWd1ZXNzX3JvYykgPDwgMTYpIHwgZ3Vlc3Nf
c2VxOwogI2VuZGlmCkBAIC0xNzksMTEgKzE2OCwxMSBAQCBpbnQzMl90IHNydHBfaW5kZXhfZ3Vl
c3MgKGNvbnN0IHNydHBfeHRkX3NlcV9udW1fdCAqbG9jYWwsIHNydHBfeHRkX3NlcV9udW1fdCAq
ZwogICoKICAqLwogCi0KIC8qCi0gKiAgc3J0cF9yZGJ4X2luaXQoJnIsIHdzKSBpbml0aWFsaXpl
cyB0aGUgc3J0cF9yZGJ4X3QgcG9pbnRlZCB0byBieSByIHdpdGggd2luZG93IHNpemUgd3MKKyAq
ICBzcnRwX3JkYnhfaW5pdCgmciwgd3MpIGluaXRpYWxpemVzIHRoZSBzcnRwX3JkYnhfdCBwb2lu
dGVkIHRvIGJ5IHIgd2l0aAorICogd2luZG93IHNpemUgd3MKICAqLwotc3J0cF9lcnJfc3RhdHVz
X3Qgc3J0cF9yZGJ4X2luaXQgKHNydHBfcmRieF90ICpyZGJ4LCB1bnNpZ25lZCBsb25nIHdzKQor
c3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9yZGJ4X2luaXQoc3J0cF9yZGJ4X3QgKnJkYngsIHVuc2ln
bmVkIGxvbmcgd3MpCiB7CiAgICAgaWYgKHdzID09IDApIHsKICAgICAgICAgcmV0dXJuIHNydHBf
ZXJyX3N0YXR1c19iYWRfcGFyYW07CkBAIC0yMDEsNyArMTkwLDcgQEAgc3J0cF9lcnJfc3RhdHVz
X3Qgc3J0cF9yZGJ4X2luaXQgKHNydHBfcmRieF90ICpyZGJ4LCB1bnNpZ25lZCBsb25nIHdzKQog
LyoKICAqICBzcnRwX3JkYnhfZGVhbGxvYygmcikgZnJlZXMgbWVtb3J5IGZvciB0aGUgc3J0cF9y
ZGJ4X3QgcG9pbnRlZCB0byBieSByCiAgKi8KLXNydHBfZXJyX3N0YXR1c190IHNydHBfcmRieF9k
ZWFsbG9jIChzcnRwX3JkYnhfdCAqcmRieCkKK3NydHBfZXJyX3N0YXR1c190IHNydHBfcmRieF9k
ZWFsbG9jKHNydHBfcmRieF90ICpyZGJ4KQogewogICAgIGJpdHZlY3Rvcl9kZWFsbG9jKCZyZGJ4
LT5iaXRtYXNrKTsKIApAQCAtMjE1LDEyICsyMDQsMTIgQEAgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0
cF9yZGJ4X2RlYWxsb2MgKHNydHBfcmRieF90ICpyZGJ4KQogICogc3J0cF9lcnJfc3RhdHVzX3Jl
cGxheV9vbGQ7IG90aGVyd2lzZSwgc3J0cF9lcnJfc3RhdHVzX29rIGlzIHJldHVybmVkLgogICoK
ICAqLwotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9yZGJ4X3NldF9yb2MgKHNydHBfcmRieF90ICpy
ZGJ4LCB1aW50MzJfdCByb2MpCitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3JkYnhfc2V0X3JvYyhz
cnRwX3JkYnhfdCAqcmRieCwgdWludDMyX3Qgcm9jKQogewogICAgIGJpdHZlY3Rvcl9zZXRfdG9f
emVybygmcmRieC0+Yml0bWFzayk7CiAKICNpZmRlZiBOT182NEJJVF9NQVRICi0gICNlcnJvciBu
b3QgeWV0IGltcGxlbWVudGVkCisjZXJyb3Igbm90IHlldCBpbXBsZW1lbnRlZAogI2Vsc2UKIAog
ICAgIC8qIG1ha2Ugc3VyZSB0aGF0IHdlJ3JlIG5vdCBtb3ZpbmcgYmFja3dhcmRzICovCkBAIC0y
NDAsNyArMjI5LDcgQEAgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9yZGJ4X3NldF9yb2MgKHNydHBf
cmRieF90ICpyZGJ4LCB1aW50MzJfdCByb2MpCiAgKiBmb3IgdGhlIHNydHBfcmRieF90IHBvaW50
ZWQgdG8gYnkgcmRieAogICoKICAqLwotc3J0cF94dGRfc2VxX251bV90IHNydHBfcmRieF9nZXRf
cGFja2V0X2luZGV4IChjb25zdCBzcnRwX3JkYnhfdCAqcmRieCkKK3NydHBfeHRkX3NlcV9udW1f
dCBzcnRwX3JkYnhfZ2V0X3BhY2tldF9pbmRleChjb25zdCBzcnRwX3JkYnhfdCAqcmRieCkKIHsK
ICAgICByZXR1cm4gcmRieC0+aW5kZXg7CiB9CkBAIC0yNTAsNyArMjM5LDcgQEAgc3J0cF94dGRf
c2VxX251bV90IHNydHBfcmRieF9nZXRfcGFja2V0X2luZGV4IChjb25zdCBzcnRwX3JkYnhfdCAq
cmRieCkKICAqIGZvciB0aGUgc3J0cF9yZGJ4X3QgcG9pbnRlZCB0byBieSByZGJ4CiAgKgogICov
Ci11bnNpZ25lZCBsb25nIHNydHBfcmRieF9nZXRfd2luZG93X3NpemUgKGNvbnN0IHNydHBfcmRi
eF90ICpyZGJ4KQordW5zaWduZWQgbG9uZyBzcnRwX3JkYnhfZ2V0X3dpbmRvd19zaXplKGNvbnN0
IHNydHBfcmRieF90ICpyZGJ4KQogewogICAgIHJldHVybiBiaXR2ZWN0b3JfZ2V0X2xlbmd0aCgm
cmRieC0+Yml0bWFzayk7CiB9CkBAIC0yNTksMTYgKzI0OCwxNyBAQCB1bnNpZ25lZCBsb25nIHNy
dHBfcmRieF9nZXRfd2luZG93X3NpemUgKGNvbnN0IHNydHBfcmRieF90ICpyZGJ4KQogICogc3J0
cF9yZGJ4X2NoZWNrKCZyLCBkZWx0YSkgY2hlY2tzIHRvIHNlZSBpZiB0aGUgc3J0cF94dGRfc2Vx
X251bV90CiAgKiB3aGljaCBpcyBhdCByZGJ4LT5pbmRleCArIGRlbHRhIGlzIGluIHRoZSByZGIK
ICAqLwotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9yZGJ4X2NoZWNrIChjb25zdCBzcnRwX3JkYnhf
dCAqcmRieCwgaW50IGRlbHRhKQorc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9yZGJ4X2NoZWNrKGNv
bnN0IHNydHBfcmRieF90ICpyZGJ4LCBpbnQgZGVsdGEpCiB7Ci0KLSAgICBpZiAoZGVsdGEgPiAw
KSB7ICAgICAvKiBpZiBkZWx0YSBpcyBwb3NpdGl2ZSwgaXQncyBnb29kICovCisgICAgaWYgKGRl
bHRhID4gMCkgeyAvKiBpZiBkZWx0YSBpcyBwb3NpdGl2ZSwgaXQncyBnb29kICovCiAgICAgICAg
IHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiAgICAgfSBlbHNlIGlmICgoaW50KShiaXR2ZWN0
b3JfZ2V0X2xlbmd0aCgmcmRieC0+Yml0bWFzaykgLSAxKSArIGRlbHRhIDwgMCkgewogICAgICAg
ICAvKiBpZiBkZWx0YSBpcyBsb3dlciB0aGFuIHRoZSBiaXRtYXNrLCBpdCdzIGJhZCAqLwogICAg
ICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX3JlcGxheV9vbGQ7Ci0gICAgfSBlbHNlIGlmIChi
aXR2ZWN0b3JfZ2V0X2JpdCgmcmRieC0+Yml0bWFzaywKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIChpbnQpKGJpdHZlY3Rvcl9nZXRfbGVuZ3RoKCZyZGJ4LT5iaXRtYXNrKSAtIDEp
ICsgZGVsdGEpID09IDEpIHsKKyAgICB9IGVsc2UgaWYgKGJpdHZlY3Rvcl9nZXRfYml0KAorICAg
ICAgICAgICAgICAgICAgICZyZGJ4LT5iaXRtYXNrLAorICAgICAgICAgICAgICAgICAgIChpbnQp
KGJpdHZlY3Rvcl9nZXRfbGVuZ3RoKCZyZGJ4LT5iaXRtYXNrKSAtIDEpICsgZGVsdGEpID09Cisg
ICAgICAgICAgICAgICAxKSB7CiAgICAgICAgIC8qIGRlbHRhIGlzIHdpdGhpbiB0aGUgd2luZG93
LCBzbyBjaGVjayB0aGUgYml0bWFzayAqLwogICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVz
X3JlcGxheV9mYWlsOwogICAgIH0KQEAgLTI4NSwxNyArMjc1LDE4IEBAIHNydHBfZXJyX3N0YXR1
c190IHNydHBfcmRieF9jaGVjayAoY29uc3Qgc3J0cF9yZGJ4X3QgKnJkYngsIGludCBkZWx0YSkK
ICAqIGluZGljYXRlZCB0aGF0IHRoZSBpbmRleCBkb2VzIG5vdCBhcHBlYXIgaW4gdGhlIHJkYngs
IGUuZy4sIGEgbXV0ZXgKICAqIHNob3VsZCBwcm90ZWN0IHRoZSByZGJ4IGJldHdlZW4gdGhlc2Ug
Y2FsbHMgaWYgbmVlZCBiZQogICovCi1zcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3JkYnhfYWRkX2lu
ZGV4IChzcnRwX3JkYnhfdCAqcmRieCwgaW50IGRlbHRhKQorc3J0cF9lcnJfc3RhdHVzX3Qgc3J0
cF9yZGJ4X2FkZF9pbmRleChzcnRwX3JkYnhfdCAqcmRieCwgaW50IGRlbHRhKQogewotCiAgICAg
aWYgKGRlbHRhID4gMCkgewogICAgICAgICAvKiBzaGlmdCBmb3J3YXJkIGJ5IGRlbHRhICovCiAg
ICAgICAgIHNydHBfaW5kZXhfYWR2YW5jZSgmcmRieC0+aW5kZXgsIGRlbHRhKTsKICAgICAgICAg
Yml0dmVjdG9yX2xlZnRfc2hpZnQoJnJkYngtPmJpdG1hc2ssIGRlbHRhKTsKLSAgICAgICAgYml0
dmVjdG9yX3NldF9iaXQoJnJkYngtPmJpdG1hc2ssIGJpdHZlY3Rvcl9nZXRfbGVuZ3RoKCZyZGJ4
LT5iaXRtYXNrKSAtIDEpOworICAgICAgICBiaXR2ZWN0b3Jfc2V0X2JpdCgmcmRieC0+Yml0bWFz
aywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgYml0dmVjdG9yX2dldF9sZW5ndGgoJnJkYngt
PmJpdG1hc2spIC0gMSk7CiAgICAgfSBlbHNlIHsKICAgICAgICAgLyogZGVsdGEgaXMgaW4gd2lu
ZG93ICovCi0gICAgICAgIGJpdHZlY3Rvcl9zZXRfYml0KCZyZGJ4LT5iaXRtYXNrLCBiaXR2ZWN0
b3JfZ2V0X2xlbmd0aCgmcmRieC0+Yml0bWFzaykgLSAxICsgZGVsdGEpOworICAgICAgICBiaXR2
ZWN0b3Jfc2V0X2JpdCgmcmRieC0+Yml0bWFzaywKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
Yml0dmVjdG9yX2dldF9sZW5ndGgoJnJkYngtPmJpdG1hc2spIC0gMSArIGRlbHRhKTsKICAgICB9
CiAKICAgICAvKiBub3RlIHRoYXQgd2UgbmVlZCBub3QgY29uc2lkZXIgdGhlIGNhc2UgdGhhdCBk
ZWx0YSA9PSAwICovCkBAIC0zMDMsOCArMjk0LDYgQEAgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9y
ZGJ4X2FkZF9pbmRleCAoc3J0cF9yZGJ4X3QgKnJkYngsIGludCBkZWx0YSkKICAgICByZXR1cm4g
c3J0cF9lcnJfc3RhdHVzX29rOwogfQogCi0KLQogLyoKICAqIHNydHBfcmRieF9lc3RpbWF0ZV9p
bmRleChyZGJ4LCBndWVzcywgcykKICAqCkBAIC0zMTMsMjUgKzMwMiwyNyBAQCBzcnRwX2Vycl9z
dGF0dXNfdCBzcnRwX3JkYnhfYWRkX2luZGV4IChzcnRwX3JkYnhfdCAqcmRieCwgaW50IGRlbHRh
KQogICogaW5kZXggdG8gd2hpY2ggcyBjb3JyZXNwb25kcywgYW5kIHJldHVybnMgdGhlIGRpZmZl
cmVuY2UgYmV0d2VlbgogICogKmd1ZXNzIGFuZCB0aGUgbG9jYWxseSBzdG9yZWQgc3luY2ggaW5m
bwogICovCi1pbnQzMl90IHNydHBfcmRieF9lc3RpbWF0ZV9pbmRleCAoY29uc3Qgc3J0cF9yZGJ4
X3QgKnJkYngsIHNydHBfeHRkX3NlcV9udW1fdCAqZ3Vlc3MsIHNydHBfc2VxdWVuY2VfbnVtYmVy
X3QgcykKK2ludDMyX3Qgc3J0cF9yZGJ4X2VzdGltYXRlX2luZGV4KGNvbnN0IHNydHBfcmRieF90
ICpyZGJ4LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF94dGRfc2VxX251
bV90ICpndWVzcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfc2VxdWVu
Y2VfbnVtYmVyX3QgcykKIHsKLQotICAgIC8qCi0gICAgICogaWYgdGhlIHNlcXVlbmNlIG51bWJl
ciBhbmQgcm9sbG92ZXIgY291bnRlciBpbiB0aGUgcmRieCBhcmUKLSAgICAgKiBub24temVybywg
dGhlbiB1c2UgdGhlIHNydHBfaW5kZXhfZ3Vlc3MoLi4uKSBmdW5jdGlvbiwgb3RoZXJ3aXNlLCBq
dXN0Ci0gICAgICogc2V0IHRoZSByb2xsb3ZlciBjb3VudGVyIHRvIHplcm8gKHNpbmNlIHRoZSBz
cnRwX2luZGV4X2d1ZXNzKC4uLikKLSAgICAgKiBmdW5jdGlvbiBtaWdodCBpbmNvcnJlY3RseSBn
dWVzcyB0aGF0IHRoZSByb2xsb3ZlciBjb3VudGVyIGlzCi0gICAgICogMHhmZmZmZmZmZikKLSAg
ICAgKi8KKy8qCisgKiBpZiB0aGUgc2VxdWVuY2UgbnVtYmVyIGFuZCByb2xsb3ZlciBjb3VudGVy
IGluIHRoZSByZGJ4IGFyZQorICogbm9uLXplcm8sIHRoZW4gdXNlIHRoZSBzcnRwX2luZGV4X2d1
ZXNzKC4uLikgZnVuY3Rpb24sIG90aGVyd2lzZSwganVzdAorICogc2V0IHRoZSByb2xsb3ZlciBj
b3VudGVyIHRvIHplcm8gKHNpbmNlIHRoZSBzcnRwX2luZGV4X2d1ZXNzKC4uLikKKyAqIGZ1bmN0
aW9uIG1pZ2h0IGluY29ycmVjdGx5IGd1ZXNzIHRoYXQgdGhlIHJvbGxvdmVyIGNvdW50ZXIgaXMK
KyAqIDB4ZmZmZmZmZmYpCisgKi8KIAogI2lmZGVmIE5PXzY0QklUX01BVEgKICAgICAvKiBzZXFf
bnVtX21lZGlhbiA9IDB4ODAwMCAqLwotICAgIGlmIChoaWdoMzIocmRieC0+aW5kZXgpID4gMCB8
fAotICAgICAgICBsb3czMihyZGJ4LT5pbmRleCkgPiBzZXFfbnVtX21lZGlhbikKKyAgICBpZiAo
aGlnaDMyKHJkYngtPmluZGV4KSA+IDAgfHwgbG93MzIocmRieC0+aW5kZXgpID4gc2VxX251bV9t
ZWRpYW4pCiAjZWxzZQogICAgIGlmIChyZGJ4LT5pbmRleCA+IHNlcV9udW1fbWVkaWFuKQogI2Vu
ZGlmCi0gICAgeyByZXR1cm4gc3J0cF9pbmRleF9ndWVzcygmcmRieC0+aW5kZXgsIGd1ZXNzLCBz
KTsgfQorICAgIHsKKyAgICAgICAgcmV0dXJuIHNydHBfaW5kZXhfZ3Vlc3MoJnJkYngtPmluZGV4
LCBndWVzcywgcyk7CisgICAgfQogCiAjaWZkZWYgTk9fNjRCSVRfTUFUSAogICAgICpndWVzcyA9
IG1ha2U2NCgwLCAodWludDMyX3Qpcyk7CkBAIC0zNzIsMTIgKzM2MywxMiBAQCB1aW50MzJfdCBz
cnRwX3JkYnhfZ2V0X3JvYyhjb25zdCBzcnRwX3JkYnhfdCAqcmRieCkKICAqIHJvbGxvdmVyIGNv
dW50ZXIgdmFsdWUsIHRoZW4gdGhlIGZ1bmN0aW9uIHJldHVybnMKICAqIHNydHBfZXJyX3N0YXR1
c19yZXBsYXlfb2xkLCBvdGhlcndpc2UsIHNydHBfZXJyX3N0YXR1c19vayBpcyByZXR1cm5lZC4K
ICAqLwotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9yZGJ4X3NldF9yb2Nfc2VxIChzcnRwX3JkYnhf
dCAqcmRieCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMy
X3Qgcm9jLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MTZf
dCBzZXEpCitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3JkYnhfc2V0X3JvY19zZXEoc3J0cF9yZGJ4
X3QgKnJkYngsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMy
X3Qgcm9jLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQxNl90
IHNlcSkKIHsKICNpZmRlZiBOT182NEJJVF9NQVRICi0gICNlcnJvciBub3QgeWV0IGltcGxlbWVu
dGVkCisjZXJyb3Igbm90IHlldCBpbXBsZW1lbnRlZAogI2Vsc2UKIAogICAgIC8qIG1ha2Ugc3Vy
ZSB0aGF0IHdlJ3JlIG5vdCBtb3ZpbmcgYmFja3dhcmRzICovCkBAIC0zOTMsNCArMzg0LDMgQEAg
c3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9yZGJ4X3NldF9yb2Nfc2VxIChzcnRwX3JkYnhfdCAqcmRi
eCwKIAogICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9Ci0KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlw
dG8vcmVwbGF5L3V0X3NpbS5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9yZXBsYXkvdXRfc2ltLmMKaW5kZXggYjUwMTY0Y2Vk
MWQ5ZTU0ZWE5MjY5ZGMxOTEzOTZmOGViOTZjMGZmNC4uYzYyMWMwZTlmMjI1OWMxNTQwODE3YjBk
ZGY3YzE3ZGY5MDNiNTI5MiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9yZXBsYXkvdXRfc2ltLmMKKysrIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2Ny
eXB0by9yZXBsYXkvdXRfc2ltLmMKQEAgLTMsMzIgKzMsMzIgQEAKICAqCiAgKiBhbiB1bnJlbGlh
YmxlIHRyYW5zcG9ydCBzaW11bGF0b3IKICAqIChmb3IgdGVzdGluZyByZXBsYXkgZGF0YWJhc2Vz
IGFuZCBzdWNobGlrZSkKLSAqIAorICoKICAqIERhdmlkIEEuIE1jR3JldwogICogQ2lzY28gU3lz
dGVtcywgSW5jLgogICovCiAKIC8qCi0gKgkKKyAqCiAgKiBDb3B5cmlnaHQgKGMpIDIwMDEtMjAx
NywgQ2lzY28gU3lzdGVtcywgSW5jLgogICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqIAorICoK
ICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCiAgKiBhcmUgbWV0OgotICogCisgKgogICogICBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAogICogICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIuCi0gKiAKKyAqCiAgKiAgIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkg
Zm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKICAqICAgY29weXJpZ2h0IG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKICAqICAgZGlzY2xhaW1lciBp
biB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkCiAgKiAg
IHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqIAorICoKICAqICAgTmVpdGhlciB0aGUgbmFtZSBv
ZiB0aGUgQ2lzY28gU3lzdGVtcywgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwogICogICBjb250
cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2
ZWQKICAqICAgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRl
biBwZXJtaXNzaW9uLgotICogCisgKgogICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBU
SEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwogICogIkFTIElTIiBBTkQgQU5Z
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKICAqIExJ
TUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTCkBAIC00NCw2NiArNDQsNjEgQEAKICAqCiAgKi8KIAotCiAjaWZkZWYgSEFWRV9DT05G
SUdfSAotICAgICNpbmNsdWRlIDxjb25maWcuaD4KKyNpbmNsdWRlIDxjb25maWcuaD4KICNlbmRp
ZgogCiAjaW5jbHVkZSAidXRfc2ltLmgiCiAKLQotaW50Ci11dF9jb21wYXIoY29uc3Qgdm9pZCAq
YSwgY29uc3Qgdm9pZCAqYikgewotICByZXR1cm4gcmFuZCgpID4gKFJBTkRfTUFYLzIpID8gLTEg
OiAxOworaW50IHV0X2NvbXBhcihjb25zdCB2b2lkICphLCBjb25zdCB2b2lkICpiKQoreworICAg
IHJldHVybiByYW5kKCkgPiAoUkFORF9NQVggLyAyKSA/IC0xIDogMTsKIH0KIAotdm9pZAotdXRf
aW5pdCh1dF9jb25uZWN0aW9uICp1dGMpIHsKLSAgaW50IGk7Ci0gIHV0Yy0+aW5kZXggPSAwOwor
dm9pZCB1dF9pbml0KHV0X2Nvbm5lY3Rpb24gKnV0YykKK3sKKyAgICBpbnQgaTsKKyAgICB1dGMt
PmluZGV4ID0gMDsKIAotICBmb3IgKGk9MDsgaSA8IFVUX0JVRjsgaSsrKQotICAgIHV0Yy0+YnVm
ZmVyW2ldID0gaTsKLSAgCi0gIHFzb3J0KHV0Yy0+YnVmZmVyLCBVVF9CVUYsIHNpemVvZih1aW50
MzJfdCksIHV0X2NvbXBhcik7CisgICAgZm9yIChpID0gMDsgaSA8IFVUX0JVRjsgaSsrKQorICAg
ICAgICB1dGMtPmJ1ZmZlcltpXSA9IGk7CiAKLSAgdXRjLT5pbmRleCA9IFVUX0JVRiAtIDE7Ci19
CisgICAgcXNvcnQodXRjLT5idWZmZXIsIFVUX0JVRiwgc2l6ZW9mKHVpbnQzMl90KSwgdXRfY29t
cGFyKTsKIAotdWludDMyX3QKLXV0X25leHRfaW5kZXgodXRfY29ubmVjdGlvbiAqdXRjKSB7Ci0g
IHVpbnQzMl90IHRtcDsKKyAgICB1dGMtPmluZGV4ID0gVVRfQlVGIC0gMTsKK30KIAotICB0bXAg
PSB1dGMtPmJ1ZmZlclswXTsKLSAgdXRjLT5pbmRleCsrOwotICB1dGMtPmJ1ZmZlclswXSA9IHV0
Yy0+aW5kZXg7Cit1aW50MzJfdCB1dF9uZXh0X2luZGV4KHV0X2Nvbm5lY3Rpb24gKnV0YykKK3sK
KyAgICB1aW50MzJfdCB0bXA7CiAKLSAgcXNvcnQodXRjLT5idWZmZXIsIFVUX0JVRiwgc2l6ZW9m
KHVpbnQzMl90KSwgdXRfY29tcGFyKTsKLSAgCi0gIHJldHVybiB0bXA7Ci19CisgICAgdG1wID0g
dXRjLT5idWZmZXJbMF07CisgICAgdXRjLT5pbmRleCsrOworICAgIHV0Yy0+YnVmZmVyWzBdID0g
dXRjLT5pbmRleDsKIAorICAgIHFzb3J0KHV0Yy0+YnVmZmVyLCBVVF9CVUYsIHNpemVvZih1aW50
MzJfdCksIHV0X2NvbXBhcik7CiAKKyAgICByZXR1cm4gdG1wOworfQogCiAjaWZkZWYgVVRfVEVT
VAogCiAjaW5jbHVkZSA8c3RkaW8uaD4KIAotaW50Ci1tYWluKCkgewotICB1aW50MzJfdCBpLCBp
cmVjdmQsIGlkaWZmOwotICB1dF9jb25uZWN0aW9uIHV0YzsKK2ludCBtYWluKCkKK3sKKyAgICB1
aW50MzJfdCBpLCBpcmVjdmQsIGlkaWZmOworICAgIHV0X2Nvbm5lY3Rpb24gdXRjOwogCi0gIHV0
X2luaXQoJnV0Yyk7CisgICAgdXRfaW5pdCgmdXRjKTsKIAotICBmb3IgKGk9MDsgaSA8IDEwMDA7
IGkrKykgewotICAgIGlyZWN2ZCA9IHV0X25leHRfaW5kZXgoJnV0Yyk7Ci0gICAgaWRpZmYgPSBp
IC0gaXJlY3ZkOwotICAgIHByaW50ZigiJWx1XHQlbHVcdCVkXG4iLCBpLCBpcmVjdmQsIGlkaWZm
KTsKLSAgfQotICAKLSAgcmV0dXJuIDA7Ci19CisgICAgZm9yIChpID0gMDsgaSA8IDEwMDA7IGkr
KykgeworICAgICAgICBpcmVjdmQgPSB1dF9uZXh0X2luZGV4KCZ1dGMpOworICAgICAgICBpZGlm
ZiA9IGkgLSBpcmVjdmQ7CisgICAgICAgIHByaW50ZigiJWx1XHQlbHVcdCVkXG4iLCBpLCBpcmVj
dmQsIGlkaWZmKTsKKyAgICB9CiAKKyAgICByZXR1cm4gMDsKK30KIAogI2VuZGlmCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNy
dHAvY3J5cHRvL3Rlc3QvYXV0aF9kcml2ZXIuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vdGVzdC9hdXRoX2RyaXZlci5jCmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlNjlkZTI5YmIyZDFkNjQzNGI4YjI5YWU3NzVh
ZDhjMmU0OGM1MzkxLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L2xpYnNydHAvY3J5cHRvL3Rlc3QvY2lwaGVyX2RyaXZlci5jIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by90ZXN0L2NpcGhlcl9k
cml2ZXIuYwppbmRleCBiNjNjZDViYTBhY2E4NjZiZWFlYTk1ZTBmM2QwNzIxM2Q5NmZlZmY2Li5l
MjhmNWYyNjRmOGRhMzY1Y2FiNmZkNmNlOTZjNjk2NDkyM2NmOWYzIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRv
L3Rlc3QvY2lwaGVyX2RyaXZlci5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vdGVzdC9jaXBoZXJfZHJpdmVyLmMKQEAg
LTgsMjYgKzgsMjYgQEAKICAqLwogCiAvKgotICoJCisgKgogICogQ29weXJpZ2h0IChjKSAyMDAx
LTIwMTcgQ2lzY28gU3lzdGVtcywgSW5jLgogICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqIAor
ICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCiAgKiBhcmUgbWV0OgotICogCisgKgogICog
ICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAogICogICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCi0gKiAKKyAqCiAgKiAgIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKICAqICAgY29weXJpZ2h0IG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKICAqICAgZGlzY2xhaW1l
ciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkCiAg
KiAgIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqIAorICoKICAqICAgTmVpdGhlciB0aGUgbmFt
ZSBvZiB0aGUgQ2lzY28gU3lzdGVtcywgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwogICogICBj
b250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRl
cml2ZWQKICAqICAgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3Jp
dHRlbiBwZXJtaXNzaW9uLgotICogCisgKgogICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBC
WSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwogICogIkFTIElTIiBBTkQg
QU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKICAq
IExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RCBGSVRORVNTCkBAIC00NCwxMiArNDQsMTEgQEAKICAqLwogCiAjaWZkZWYgSEFWRV9DT05GSUdf
SAotICAgICNpbmNsdWRlIDxjb25maWcuaD4KKyNpbmNsdWRlIDxjb25maWcuaD4KICNlbmRpZgog
Ci0jaW5jbHVkZSA8c3RkaW8uaD4gICAgICAgICAgIC8qIGZvciBwcmludGYoKSAqLwotI2luY2x1
ZGUgPHN0ZGxpYi5oPiAgICAgICAgICAvKiBmb3IgcmFuZCgpICovCi0jaW5jbHVkZSA8c3RyaW5n
Lmg+ICAgICAgICAgIC8qIGZvciBtZW1zZXQoKSAqLworI2luY2x1ZGUgPHN0ZGlvLmg+ICAvKiBm
b3IgcHJpbnRmKCkgKi8KKyNpbmNsdWRlIDxzdGRsaWIuaD4gLyogZm9yIHJhbmQoKSAqLwogI2lu
Y2x1ZGUgImdldG9wdF9zLmgiCiAjaW5jbHVkZSAiY2lwaGVyLmgiCiAjaWZkZWYgT1BFTlNTTApA
QCAtNjEsMTIgKzYwLDkgQEAKIAogI2RlZmluZSBQUklOVF9ERUJVRyAwCiAKLXZvaWQKLWNpcGhl
cl9kcml2ZXJfdGVzdF90aHJvdWdocHV0KHNydHBfY2lwaGVyX3QgKmMpOwotCi1zcnRwX2Vycl9z
dGF0dXNfdAotY2lwaGVyX2RyaXZlcl9zZWxmX3Rlc3Qoc3J0cF9jaXBoZXJfdHlwZV90ICpjdCk7
Cit2b2lkIGNpcGhlcl9kcml2ZXJfdGVzdF90aHJvdWdocHV0KHNydHBfY2lwaGVyX3QgKmMpOwog
CitzcnRwX2Vycl9zdGF0dXNfdCBjaXBoZXJfZHJpdmVyX3NlbGZfdGVzdChzcnRwX2NpcGhlcl90
eXBlX3QgKmN0KTsKIAogLyoKICAqIGNpcGhlcl9kcml2ZXJfdGVzdF9idWZmZXJpbmcoY3QpIHRl
c3RzIHRoZSBjaXBoZXIncyBvdXRwdXQKQEAgLTc0LDQ0ICs3MCw0MyBAQCBjaXBoZXJfZHJpdmVy
X3NlbGZfdGVzdChzcnRwX2NpcGhlcl90eXBlX3QgKmN0KTsKICAqIGNhbGxzCiAgKi8KIAotc3J0
cF9lcnJfc3RhdHVzX3QKLWNpcGhlcl9kcml2ZXJfdGVzdF9idWZmZXJpbmcoc3J0cF9jaXBoZXJf
dCAqYyk7Ci0KK3NydHBfZXJyX3N0YXR1c190IGNpcGhlcl9kcml2ZXJfdGVzdF9idWZmZXJpbmco
c3J0cF9jaXBoZXJfdCAqYyk7CiAKIC8qCiAgKiBmdW5jdGlvbnMgZm9yIHRlc3RpbmcgY2lwaGVy
IGNhY2hlIHRocmFzaAogICovCi1zcnRwX2Vycl9zdGF0dXNfdAotY2lwaGVyX2RyaXZlcl90ZXN0
X2FycmF5X3Rocm91Z2hwdXQoc3J0cF9jaXBoZXJfdHlwZV90ICpjdCwgCi0JCQkJICAgIGludCBr
bGVuLCBpbnQgbnVtX2NpcGhlcik7CitzcnRwX2Vycl9zdGF0dXNfdCBjaXBoZXJfZHJpdmVyX3Rl
c3RfYXJyYXlfdGhyb3VnaHB1dChzcnRwX2NpcGhlcl90eXBlX3QgKmN0LAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IGtsZW4sCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgbnVt
X2NpcGhlcik7CiAKLXZvaWQKLWNpcGhlcl9hcnJheV90ZXN0X3Rocm91Z2hwdXQoc3J0cF9jaXBo
ZXJfdCAqY2FbXSwgaW50IG51bV9jaXBoZXIpOwordm9pZCBjaXBoZXJfYXJyYXlfdGVzdF90aHJv
dWdocHV0KHNydHBfY2lwaGVyX3QgKmNhW10sIGludCBudW1fY2lwaGVyKTsKIAotdWludDY0X3QK
LWNpcGhlcl9hcnJheV9iaXRzX3Blcl9zZWNvbmQoc3J0cF9jaXBoZXJfdCAqY2lwaGVyX2FycmF5
W10sIGludCBudW1fY2lwaGVyLCAKLQkJCSAgICAgdW5zaWduZWQgb2N0ZXRzX2luX2J1ZmZlciwg
aW50IG51bV90cmlhbHMpOwordWludDY0X3QgY2lwaGVyX2FycmF5X2JpdHNfcGVyX3NlY29uZChz
cnRwX2NpcGhlcl90ICpjaXBoZXJfYXJyYXlbXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgaW50IG51bV9jaXBoZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHVuc2lnbmVkIG9jdGV0c19pbl9idWZmZXIsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGludCBudW1fdHJpYWxzKTsKIAotc3J0cF9lcnJfc3RhdHVzX3QK
LWNpcGhlcl9hcnJheV9kZWxldGUoc3J0cF9jaXBoZXJfdCAqY2lwaGVyX2FycmF5W10sIGludCBu
dW1fY2lwaGVyKTsKK3NydHBfZXJyX3N0YXR1c190IGNpcGhlcl9hcnJheV9kZWxldGUoc3J0cF9j
aXBoZXJfdCAqY2lwaGVyX2FycmF5W10sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGludCBudW1fY2lwaGVyKTsKIAotc3J0cF9lcnJfc3RhdHVzX3QKLWNpcGhlcl9hcnJh
eV9hbGxvY19pbml0KHNydHBfY2lwaGVyX3QgKioqY2lwaGVyX2FycmF5LCBpbnQgbnVtX2NpcGhl
cnMsCi0JCQlzcnRwX2NpcGhlcl90eXBlX3QgKmN0eXBlLCBpbnQga2xlbik7CitzcnRwX2Vycl9z
dGF0dXNfdCBjaXBoZXJfYXJyYXlfYWxsb2NfaW5pdChzcnRwX2NpcGhlcl90ICoqKmNpcGhlcl9h
cnJheSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBudW1f
Y2lwaGVycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNydHBf
Y2lwaGVyX3R5cGVfdCAqY3R5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBpbnQga2xlbik7CiAKLXZvaWQKLXVzYWdlKGNoYXIgKnByb2dfbmFtZSkgewotICBw
cmludGYoInVzYWdlOiAlcyBbIC10IHwgLXYgfCAtYSBdXG4iLCBwcm9nX25hbWUpOwotICBleGl0
KDI1NSk7Cit2b2lkIHVzYWdlKGNoYXIgKnByb2dfbmFtZSkKK3sKKyAgICBwcmludGYoInVzYWdl
OiAlcyBbIC10IHwgLXYgfCAtYSBdXG4iLCBwcm9nX25hbWUpOworICAgIGV4aXQoMjU1KTsKIH0K
IAotdm9pZAotY2hlY2tfc3RhdHVzKHNydHBfZXJyX3N0YXR1c190IHMpIHsKLSAgaWYgKHMpIHsK
LSAgICBwcmludGYoImVycm9yIChjb2RlICVkKVxuIiwgcyk7Ci0gICAgZXhpdChzKTsKLSAgfQot
ICByZXR1cm47Cit2b2lkIGNoZWNrX3N0YXR1cyhzcnRwX2Vycl9zdGF0dXNfdCBzKQoreworICAg
IGlmIChzKSB7CisgICAgICAgIHByaW50ZigiZXJyb3IgKGNvZGUgJWQpXG4iLCBzKTsKKyAgICAg
ICAgZXhpdChzKTsKKyAgICB9CisgICAgcmV0dXJuOwogfQogCiAvKgpAQCAtMTI5LDE1MSArMTI0
LDE2MyBAQCBleHRlcm4gc3J0cF9jaXBoZXJfdHlwZV90IHNydHBfYWVzX2djbV8xMjhfb3BlbnNz
bDsKIGV4dGVybiBzcnRwX2NpcGhlcl90eXBlX3Qgc3J0cF9hZXNfZ2NtXzI1Nl9vcGVuc3NsOwog
I2VuZGlmCiAKLWludAotbWFpbihpbnQgYXJnYywgY2hhciAqYXJndltdKSB7Ci0gIHNydHBfY2lw
aGVyX3QgKmMgPSBOVUxMOwotICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7Ci0gIHVuc2lnbmVk
IGNoYXIgdGVzdF9rZXlbNDhdID0gewotICAgIDB4MDAsIDB4MDEsIDB4MDIsIDB4MDMsIDB4MDQs
IDB4MDUsIDB4MDYsIDB4MDcsCi0gICAgMHgwOCwgMHgwOSwgMHgwYSwgMHgwYiwgMHgwYywgMHgw
ZCwgMHgwZSwgMHgwZiwKLSAgICAweDEwLCAweDExLCAweDEyLCAweDEzLCAweDE0LCAweDE1LCAw
eDE2LCAweDE3LAotICAgIDB4MTgsIDB4MTksIDB4MWEsIDB4MWIsIDB4MWMsIDB4MWQsIDB4MWUs
IDB4MWYsCi0gICAgMHgyMCwgMHgyMSwgMHgyMiwgMHgyMywgMHgyNCwgMHgyNSwgMHgyNiwgMHgy
NywKLSAgICAweDI4LCAweDI5LCAweDJhLCAweDJiLCAweDJjLCAweDJkLCAweDJlLCAweDJmLAot
ICB9OwotICBpbnQgcTsKLSAgdW5zaWduZWQgZG9fdGltaW5nX3Rlc3QgPSAwOwotICB1bnNpZ25l
ZCBkb192YWxpZGF0aW9uID0gMDsKLSAgdW5zaWduZWQgZG9fYXJyYXlfdGltaW5nX3Rlc3QgPSAw
OwotCi0gIC8qIHByb2Nlc3MgaW5wdXQgYXJndW1lbnRzICovCi0gIHdoaWxlICgxKSB7Ci0gICAg
cSA9IGdldG9wdF9zKGFyZ2MsIGFyZ3YsICJ0dmEiKTsKLSAgICBpZiAocSA9PSAtMSkgCi0gICAg
ICBicmVhazsKLSAgICBzd2l0Y2ggKHEpIHsKLSAgICBjYXNlICd0JzoKLSAgICAgIGRvX3RpbWlu
Z190ZXN0ID0gMTsKLSAgICAgIGJyZWFrOwotICAgIGNhc2UgJ3YnOgotICAgICAgZG9fdmFsaWRh
dGlvbiA9IDE7Ci0gICAgICBicmVhazsKLSAgICBjYXNlICdhJzoKLSAgICAgIGRvX2FycmF5X3Rp
bWluZ190ZXN0ID0gMTsKLSAgICAgIGJyZWFrOwotICAgIGRlZmF1bHQ6Ci0gICAgICB1c2FnZShh
cmd2WzBdKTsKLSAgICB9ICAgIAotICB9Ci0KLSAgcHJpbnRmKCJjaXBoZXIgdGVzdCBkcml2ZXJc
biIKLQkgIkRhdmlkIEEuIE1jR3Jld1xuIgotCSAiQ2lzY28gU3lzdGVtcywgSW5jLlxuIik7Ci0K
LSAgaWYgKCFkb192YWxpZGF0aW9uICYmICFkb190aW1pbmdfdGVzdCAmJiAhZG9fYXJyYXlfdGlt
aW5nX3Rlc3QpCi0gICAgdXNhZ2UoYXJndlswXSk7Ci0KLSAgIC8qIGFycnkgdGltaW5nIChjYWNo
ZSB0aHJhc2gpIHRlc3QgKi8KLSAgaWYgKGRvX2FycmF5X3RpbWluZ190ZXN0KSB7Ci0gICAgaW50
IG1heF9udW1fY2lwaGVyID0gMSA8PCAxNjsgICAvKiBudW1iZXIgb2YgY2lwaGVycyBpbiBjaXBo
ZXJfYXJyYXkgKi8KLSAgICBpbnQgbnVtX2NpcGhlcjsKLSAgICAKLSAgICBmb3IgKG51bV9jaXBo
ZXI9MTsgbnVtX2NpcGhlciA8IG1heF9udW1fY2lwaGVyOyBudW1fY2lwaGVyICo9OCkKLSAgICAg
IGNpcGhlcl9kcml2ZXJfdGVzdF9hcnJheV90aHJvdWdocHV0KCZzcnRwX251bGxfY2lwaGVyLCAw
LCBudW1fY2lwaGVyKTsgCi0KLSAgICBmb3IgKG51bV9jaXBoZXI9MTsgbnVtX2NpcGhlciA8IG1h
eF9udW1fY2lwaGVyOyBudW1fY2lwaGVyICo9OCkKLSAgICAgIGNpcGhlcl9kcml2ZXJfdGVzdF9h
cnJheV90aHJvdWdocHV0KCZzcnRwX2Flc19pY21fMTI4LCBTUlRQX0FFU19JQ01fMTI4X0tFWV9M
RU5fV1NBTFQsIG51bV9jaXBoZXIpOwotCi0gICAgZm9yIChudW1fY2lwaGVyPTE7IG51bV9jaXBo
ZXIgPCBtYXhfbnVtX2NpcGhlcjsgbnVtX2NpcGhlciAqPTgpCi0gICAgICBjaXBoZXJfZHJpdmVy
X3Rlc3RfYXJyYXlfdGhyb3VnaHB1dCgmc3J0cF9hZXNfaWNtXzI1NiwgU1JUUF9BRVNfSUNNXzI1
Nl9LRVlfTEVOX1dTQUxULCBudW1fY2lwaGVyKTsKK2ludCBtYWluKGludCBhcmdjLCBjaGFyICph
cmd2W10pCit7CisgICAgc3J0cF9jaXBoZXJfdCAqYyA9IE5VTEw7CisgICAgc3J0cF9lcnJfc3Rh
dHVzX3Qgc3RhdHVzOworICAgIC8qIGNsYW5nLWZvcm1hdCBvZmYgKi8KKyAgICB1bnNpZ25lZCBj
aGFyIHRlc3Rfa2V5WzQ4XSA9IHsKKyAgICAgICAgMHgwMCwgMHgwMSwgMHgwMiwgMHgwMywgMHgw
NCwgMHgwNSwgMHgwNiwgMHgwNywKKyAgICAgICAgMHgwOCwgMHgwOSwgMHgwYSwgMHgwYiwgMHgw
YywgMHgwZCwgMHgwZSwgMHgwZiwKKyAgICAgICAgMHgxMCwgMHgxMSwgMHgxMiwgMHgxMywgMHgx
NCwgMHgxNSwgMHgxNiwgMHgxNywKKyAgICAgICAgMHgxOCwgMHgxOSwgMHgxYSwgMHgxYiwgMHgx
YywgMHgxZCwgMHgxZSwgMHgxZiwKKyAgICAgICAgMHgyMCwgMHgyMSwgMHgyMiwgMHgyMywgMHgy
NCwgMHgyNSwgMHgyNiwgMHgyNywKKyAgICAgICAgMHgyOCwgMHgyOSwgMHgyYSwgMHgyYiwgMHgy
YywgMHgyZCwgMHgyZSwgMHgyZiwKKyAgICB9OworICAgIC8qIGNsYW5nLWZvcm1hdCBvbiAqLwor
ICAgIGludCBxOworICAgIHVuc2lnbmVkIGRvX3RpbWluZ190ZXN0ID0gMDsKKyAgICB1bnNpZ25l
ZCBkb192YWxpZGF0aW9uID0gMDsKKyAgICB1bnNpZ25lZCBkb19hcnJheV90aW1pbmdfdGVzdCA9
IDA7CisKKyAgICAvKiBwcm9jZXNzIGlucHV0IGFyZ3VtZW50cyAqLworICAgIHdoaWxlICgxKSB7
CisgICAgICAgIHEgPSBnZXRvcHRfcyhhcmdjLCBhcmd2LCAidHZhIik7CisgICAgICAgIGlmIChx
ID09IC0xKQorICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIHN3aXRjaCAocSkgeworICAgICAg
ICBjYXNlICd0JzoKKyAgICAgICAgICAgIGRvX3RpbWluZ190ZXN0ID0gMTsKKyAgICAgICAgICAg
IGJyZWFrOworICAgICAgICBjYXNlICd2JzoKKyAgICAgICAgICAgIGRvX3ZhbGlkYXRpb24gPSAx
OworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgJ2EnOgorICAgICAgICAgICAgZG9f
YXJyYXlfdGltaW5nX3Rlc3QgPSAxOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGRlZmF1
bHQ6CisgICAgICAgICAgICB1c2FnZShhcmd2WzBdKTsKKyAgICAgICAgfQorICAgIH0KKworICAg
IHByaW50ZigiY2lwaGVyIHRlc3QgZHJpdmVyXG4iCisgICAgICAgICAgICJEYXZpZCBBLiBNY0dy
ZXdcbiIKKyAgICAgICAgICAgIkNpc2NvIFN5c3RlbXMsIEluYy5cbiIpOwogCi0jaWZkZWYgT1BF
TlNTTAotICAgIGZvciAobnVtX2NpcGhlcj0xOyBudW1fY2lwaGVyIDwgbWF4X251bV9jaXBoZXI7
IG51bV9jaXBoZXIgKj04KQotICAgICAgY2lwaGVyX2RyaXZlcl90ZXN0X2FycmF5X3Rocm91Z2hw
dXQoJnNydHBfYWVzX2ljbV8xOTIsIFNSVFBfQUVTX0lDTV8xOTJfS0VZX0xFTl9XU0FMVCwgbnVt
X2NpcGhlcik7CisgICAgaWYgKCFkb192YWxpZGF0aW9uICYmICFkb190aW1pbmdfdGVzdCAmJiAh
ZG9fYXJyYXlfdGltaW5nX3Rlc3QpCisgICAgICAgIHVzYWdlKGFyZ3ZbMF0pOwogCi0gICAgZm9y
IChudW1fY2lwaGVyPTE7IG51bV9jaXBoZXIgPCBtYXhfbnVtX2NpcGhlcjsgbnVtX2NpcGhlciAq
PTgpIHsKLSAgICAgIGNpcGhlcl9kcml2ZXJfdGVzdF9hcnJheV90aHJvdWdocHV0KCZzcnRwX2Fl
c19nY21fMTI4X29wZW5zc2wsIFNSVFBfQUVTX0dDTV8xMjhfS0VZX0xFTl9XU0FMVCwgbnVtX2Np
cGhlcik7Ci0gICAgfQorICAgIC8qIGFycnkgdGltaW5nIChjYWNoZSB0aHJhc2gpIHRlc3QgKi8K
KyAgICBpZiAoZG9fYXJyYXlfdGltaW5nX3Rlc3QpIHsKKyAgICAgICAgaW50IG1heF9udW1fY2lw
aGVyID0gMSA8PCAxNjsgLyogbnVtYmVyIG9mIGNpcGhlcnMgaW4gY2lwaGVyX2FycmF5ICovCisg
ICAgICAgIGludCBudW1fY2lwaGVyOwogCi0gICAgZm9yIChudW1fY2lwaGVyPTE7IG51bV9jaXBo
ZXIgPCBtYXhfbnVtX2NpcGhlcjsgbnVtX2NpcGhlciAqPTgpIHsKLSAgICAgIGNpcGhlcl9kcml2
ZXJfdGVzdF9hcnJheV90aHJvdWdocHV0KCZzcnRwX2Flc19nY21fMjU2X29wZW5zc2wsIFNSVFBf
QUVTX0dDTV8yNTZfS0VZX0xFTl9XU0FMVCwgbnVtX2NpcGhlcik7Ci0gICAgfQorICAgICAgICBm
b3IgKG51bV9jaXBoZXIgPSAxOyBudW1fY2lwaGVyIDwgbWF4X251bV9jaXBoZXI7IG51bV9jaXBo
ZXIgKj0gOCkKKyAgICAgICAgICAgIGNpcGhlcl9kcml2ZXJfdGVzdF9hcnJheV90aHJvdWdocHV0
KCZzcnRwX251bGxfY2lwaGVyLCAwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgbnVtX2NpcGhlcik7CisKKyAgICAgICAgZm9yIChudW1fY2lwaGVyID0g
MTsgbnVtX2NpcGhlciA8IG1heF9udW1fY2lwaGVyOyBudW1fY2lwaGVyICo9IDgpCisgICAgICAg
ICAgICBjaXBoZXJfZHJpdmVyX3Rlc3RfYXJyYXlfdGhyb3VnaHB1dCgKKyAgICAgICAgICAgICAg
ICAmc3J0cF9hZXNfaWNtXzEyOCwgU1JUUF9BRVNfSUNNXzEyOF9LRVlfTEVOX1dTQUxULCBudW1f
Y2lwaGVyKTsKKworICAgICAgICBmb3IgKG51bV9jaXBoZXIgPSAxOyBudW1fY2lwaGVyIDwgbWF4
X251bV9jaXBoZXI7IG51bV9jaXBoZXIgKj0gOCkKKyAgICAgICAgICAgIGNpcGhlcl9kcml2ZXJf
dGVzdF9hcnJheV90aHJvdWdocHV0KAorICAgICAgICAgICAgICAgICZzcnRwX2Flc19pY21fMjU2
LCBTUlRQX0FFU19JQ01fMjU2X0tFWV9MRU5fV1NBTFQsIG51bV9jaXBoZXIpOworCisjaWZkZWYg
T1BFTlNTTAorICAgICAgICBmb3IgKG51bV9jaXBoZXIgPSAxOyBudW1fY2lwaGVyIDwgbWF4X251
bV9jaXBoZXI7IG51bV9jaXBoZXIgKj0gOCkKKyAgICAgICAgICAgIGNpcGhlcl9kcml2ZXJfdGVz
dF9hcnJheV90aHJvdWdocHV0KAorICAgICAgICAgICAgICAgICZzcnRwX2Flc19pY21fMTkyLCBT
UlRQX0FFU19JQ01fMTkyX0tFWV9MRU5fV1NBTFQsIG51bV9jaXBoZXIpOworCisgICAgICAgIGZv
ciAobnVtX2NpcGhlciA9IDE7IG51bV9jaXBoZXIgPCBtYXhfbnVtX2NpcGhlcjsgbnVtX2NpcGhl
ciAqPSA4KSB7CisgICAgICAgICAgICBjaXBoZXJfZHJpdmVyX3Rlc3RfYXJyYXlfdGhyb3VnaHB1
dCgmc3J0cF9hZXNfZ2NtXzEyOF9vcGVuc3NsLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgU1JUUF9BRVNfR0NNXzEyOF9LRVlfTEVOX1dTQUxULAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbnVtX2NpcGhlcik7
CisgICAgICAgIH0KKworICAgICAgICBmb3IgKG51bV9jaXBoZXIgPSAxOyBudW1fY2lwaGVyIDwg
bWF4X251bV9jaXBoZXI7IG51bV9jaXBoZXIgKj0gOCkgeworICAgICAgICAgICAgY2lwaGVyX2Ry
aXZlcl90ZXN0X2FycmF5X3Rocm91Z2hwdXQoJnNydHBfYWVzX2djbV8yNTZfb3BlbnNzbCwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNSVFBfQUVTX0dD
TV8yNTZfS0VZX0xFTl9XU0FMVCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIG51bV9jaXBoZXIpOworICAgICAgICB9CiAjZW5kaWYKLSAgfQorICAgIH0K
IAotICBpZiAoZG9fdmFsaWRhdGlvbikgewotICAgIGNpcGhlcl9kcml2ZXJfc2VsZl90ZXN0KCZz
cnRwX251bGxfY2lwaGVyKTsKLSAgICBjaXBoZXJfZHJpdmVyX3NlbGZfdGVzdCgmc3J0cF9hZXNf
aWNtXzEyOCk7Ci0gICAgY2lwaGVyX2RyaXZlcl9zZWxmX3Rlc3QoJnNydHBfYWVzX2ljbV8yNTYp
OworICAgIGlmIChkb192YWxpZGF0aW9uKSB7CisgICAgICAgIGNpcGhlcl9kcml2ZXJfc2VsZl90
ZXN0KCZzcnRwX251bGxfY2lwaGVyKTsKKyAgICAgICAgY2lwaGVyX2RyaXZlcl9zZWxmX3Rlc3Qo
JnNydHBfYWVzX2ljbV8xMjgpOworICAgICAgICBjaXBoZXJfZHJpdmVyX3NlbGZfdGVzdCgmc3J0
cF9hZXNfaWNtXzI1Nik7CiAjaWZkZWYgT1BFTlNTTAotICAgIGNpcGhlcl9kcml2ZXJfc2VsZl90
ZXN0KCZzcnRwX2Flc19pY21fMTkyKTsKLSAgICBjaXBoZXJfZHJpdmVyX3NlbGZfdGVzdCgmc3J0
cF9hZXNfZ2NtXzEyOF9vcGVuc3NsKTsKLSAgICBjaXBoZXJfZHJpdmVyX3NlbGZfdGVzdCgmc3J0
cF9hZXNfZ2NtXzI1Nl9vcGVuc3NsKTsKKyAgICAgICAgY2lwaGVyX2RyaXZlcl9zZWxmX3Rlc3Qo
JnNydHBfYWVzX2ljbV8xOTIpOworICAgICAgICBjaXBoZXJfZHJpdmVyX3NlbGZfdGVzdCgmc3J0
cF9hZXNfZ2NtXzEyOF9vcGVuc3NsKTsKKyAgICAgICAgY2lwaGVyX2RyaXZlcl9zZWxmX3Rlc3Qo
JnNydHBfYWVzX2djbV8yNTZfb3BlbnNzbCk7CiAjZW5kaWYKLSAgfQorICAgIH0KIAotICAvKiBk
byB0aW1pbmcgYW5kL29yIGJ1ZmZlcl90ZXN0IG9uIHNydHBfbnVsbF9jaXBoZXIgKi8KLSAgc3Rh
dHVzID0gc3J0cF9jaXBoZXJfdHlwZV9hbGxvYygmc3J0cF9udWxsX2NpcGhlciwgJmMsIDAsIDAp
OyAKLSAgY2hlY2tfc3RhdHVzKHN0YXR1cyk7CisgICAgLyogZG8gdGltaW5nIGFuZC9vciBidWZm
ZXJfdGVzdCBvbiBzcnRwX251bGxfY2lwaGVyICovCisgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJf
dHlwZV9hbGxvYygmc3J0cF9udWxsX2NpcGhlciwgJmMsIDAsIDApOworICAgIGNoZWNrX3N0YXR1
cyhzdGF0dXMpOwogCi0gIHN0YXR1cyA9IHNydHBfY2lwaGVyX2luaXQoYywgTlVMTCk7Ci0gIGNo
ZWNrX3N0YXR1cyhzdGF0dXMpOworICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX2luaXQoYywgTlVM
TCk7CisgICAgY2hlY2tfc3RhdHVzKHN0YXR1cyk7CiAKLSAgaWYgKGRvX3RpbWluZ190ZXN0KSAK
LSAgICBjaXBoZXJfZHJpdmVyX3Rlc3RfdGhyb3VnaHB1dChjKTsKLSAgaWYgKGRvX3ZhbGlkYXRp
b24pIHsKLSAgICBzdGF0dXMgPSBjaXBoZXJfZHJpdmVyX3Rlc3RfYnVmZmVyaW5nKGMpOworICAg
IGlmIChkb190aW1pbmdfdGVzdCkKKyAgICAgICAgY2lwaGVyX2RyaXZlcl90ZXN0X3Rocm91Z2hw
dXQoYyk7CisgICAgaWYgKGRvX3ZhbGlkYXRpb24pIHsKKyAgICAgICAgc3RhdHVzID0gY2lwaGVy
X2RyaXZlcl90ZXN0X2J1ZmZlcmluZyhjKTsKKyAgICAgICAgY2hlY2tfc3RhdHVzKHN0YXR1cyk7
CisgICAgfQorICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX2RlYWxsb2MoYyk7CiAgICAgY2hlY2tf
c3RhdHVzKHN0YXR1cyk7Ci0gIH0KLSAgc3RhdHVzID0gc3J0cF9jaXBoZXJfZGVhbGxvYyhjKTsK
LSAgY2hlY2tfc3RhdHVzKHN0YXR1cyk7Ci0gIAogCi0gIC8qIHJ1biB0aGUgdGhyb3VnaHB1dCB0
ZXN0IG9uIHRoZSBhZXNfaWNtIGNpcGhlciAoMTI4LWJpdCBrZXkpICovCi0gICAgc3RhdHVzID0g
c3J0cF9jaXBoZXJfdHlwZV9hbGxvYygmc3J0cF9hZXNfaWNtXzEyOCwgJmMsIFNSVFBfQUVTX0lD
TV8xMjhfS0VZX0xFTl9XU0FMVCwgMCk7CisgICAgLyogcnVuIHRoZSB0aHJvdWdocHV0IHRlc3Qg
b24gdGhlIGFlc19pY20gY2lwaGVyICgxMjgtYml0IGtleSkgKi8KKyAgICBzdGF0dXMgPSBzcnRw
X2NpcGhlcl90eXBlX2FsbG9jKCZzcnRwX2Flc19pY21fMTI4LCAmYywKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFNSVFBfQUVTX0lDTV8xMjhfS0VZX0xFTl9XU0FMVCwgMCk7
CiAgICAgaWYgKHN0YXR1cykgewotICAgICAgZnByaW50ZihzdGRlcnIsICJlcnJvcjogY2FuJ3Qg
YWxsb2NhdGUgY2lwaGVyXG4iKTsKLSAgICAgIGV4aXQoc3RhdHVzKTsKKyAgICAgICAgZnByaW50
ZihzdGRlcnIsICJlcnJvcjogY2FuJ3QgYWxsb2NhdGUgY2lwaGVyXG4iKTsKKyAgICAgICAgZXhp
dChzdGF0dXMpOwogICAgIH0KIAogICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX2luaXQoYywgdGVz
dF9rZXkpOwogICAgIGNoZWNrX3N0YXR1cyhzdGF0dXMpOwogCiAgICAgaWYgKGRvX3RpbWluZ190
ZXN0KQotICAgICAgY2lwaGVyX2RyaXZlcl90ZXN0X3Rocm91Z2hwdXQoYyk7Ci0gICAgCisgICAg
ICAgIGNpcGhlcl9kcml2ZXJfdGVzdF90aHJvdWdocHV0KGMpOworCiAgICAgaWYgKGRvX3ZhbGlk
YXRpb24pIHsKLSAgICAgIHN0YXR1cyA9IGNpcGhlcl9kcml2ZXJfdGVzdF9idWZmZXJpbmcoYyk7
Ci0gICAgICBjaGVja19zdGF0dXMoc3RhdHVzKTsKKyAgICAgICAgc3RhdHVzID0gY2lwaGVyX2Ry
aXZlcl90ZXN0X2J1ZmZlcmluZyhjKTsKKyAgICAgICAgY2hlY2tfc3RhdHVzKHN0YXR1cyk7CiAg
ICAgfQotICAgIAorCiAgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfZGVhbGxvYyhjKTsKICAgICBj
aGVja19zdGF0dXMoc3RhdHVzKTsKIAotICAvKiByZXBlYXQgdGhlIHRlc3RzIHdpdGggMjU2LWJp
dCBrZXlzICovCi0gICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfdHlwZV9hbGxvYygmc3J0cF9hZXNf
aWNtXzI1NiwgJmMsIFNSVFBfQUVTX0lDTV8yNTZfS0VZX0xFTl9XU0FMVCwgMCk7CisgICAgLyog
cmVwZWF0IHRoZSB0ZXN0cyB3aXRoIDI1Ni1iaXQga2V5cyAqLworICAgIHN0YXR1cyA9IHNydHBf
Y2lwaGVyX3R5cGVfYWxsb2MoJnNydHBfYWVzX2ljbV8yNTYsICZjLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgU1JUUF9BRVNfSUNNXzI1Nl9LRVlfTEVOX1dTQUxULCAwKTsK
ICAgICBpZiAoc3RhdHVzKSB7Ci0gICAgICBmcHJpbnRmKHN0ZGVyciwgImVycm9yOiBjYW4ndCBh
bGxvY2F0ZSBjaXBoZXJcbiIpOwotICAgICAgZXhpdChzdGF0dXMpOworICAgICAgICBmcHJpbnRm
KHN0ZGVyciwgImVycm9yOiBjYW4ndCBhbGxvY2F0ZSBjaXBoZXJcbiIpOworICAgICAgICBleGl0
KHN0YXR1cyk7CiAgICAgfQogCiAgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfaW5pdChjLCB0ZXN0
X2tleSk7CiAgICAgY2hlY2tfc3RhdHVzKHN0YXR1cyk7CiAKICAgICBpZiAoZG9fdGltaW5nX3Rl
c3QpCi0gICAgICBjaXBoZXJfZHJpdmVyX3Rlc3RfdGhyb3VnaHB1dChjKTsKLSAgICAKKyAgICAg
ICAgY2lwaGVyX2RyaXZlcl90ZXN0X3Rocm91Z2hwdXQoYyk7CisKICAgICBpZiAoZG9fdmFsaWRh
dGlvbikgewotICAgICAgc3RhdHVzID0gY2lwaGVyX2RyaXZlcl90ZXN0X2J1ZmZlcmluZyhjKTsK
LSAgICAgIGNoZWNrX3N0YXR1cyhzdGF0dXMpOworICAgICAgICBzdGF0dXMgPSBjaXBoZXJfZHJp
dmVyX3Rlc3RfYnVmZmVyaW5nKGMpOworICAgICAgICBjaGVja19zdGF0dXMoc3RhdHVzKTsKICAg
ICB9Ci0gICAgCisKICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9kZWFsbG9jKGMpOwogICAgIGNo
ZWNrX3N0YXR1cyhzdGF0dXMpOwogCiAjaWZkZWYgT1BFTlNTTAogICAgIC8qIHJ1biB0aGUgdGhy
b3VnaHB1dCB0ZXN0IG9uIHRoZSBhZXNfZ2NtXzEyOF9vcGVuc3NsIGNpcGhlciAqLwotICAgIHN0
YXR1cyA9IHNydHBfY2lwaGVyX3R5cGVfYWxsb2MoJnNydHBfYWVzX2djbV8xMjhfb3BlbnNzbCwg
JmMsIFNSVFBfQUVTX0dDTV8xMjhfS0VZX0xFTl9XU0FMVCwgOCk7CisgICAgc3RhdHVzID0gc3J0
cF9jaXBoZXJfdHlwZV9hbGxvYygmc3J0cF9hZXNfZ2NtXzEyOF9vcGVuc3NsLCAmYywKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNSVFBfQUVTX0dDTV8xMjhfS0VZX0xFTl9X
U0FMVCwgOCk7CiAgICAgaWYgKHN0YXR1cykgewogICAgICAgICBmcHJpbnRmKHN0ZGVyciwgImVy
cm9yOiBjYW4ndCBhbGxvY2F0ZSBHQ00gMTI4IGNpcGhlclxuIik7CiAgICAgICAgIGV4aXQoc3Rh
dHVzKTsKQEAgLTI5Miw3ICsyOTksOCBAQCBtYWluKGludCBhcmdjLCBjaGFyICphcmd2W10pIHsK
ICAgICBjaGVja19zdGF0dXMoc3RhdHVzKTsKIAogICAgIC8qIHJ1biB0aGUgdGhyb3VnaHB1dCB0
ZXN0IG9uIHRoZSBhZXNfZ2NtXzI1Nl9vcGVuc3NsIGNpcGhlciAqLwotICAgIHN0YXR1cyA9IHNy
dHBfY2lwaGVyX3R5cGVfYWxsb2MoJnNydHBfYWVzX2djbV8yNTZfb3BlbnNzbCwgJmMsIFNSVFBf
QUVTX0dDTV8yNTZfS0VZX0xFTl9XU0FMVCwgMTYpOworICAgIHN0YXR1cyA9IHNydHBfY2lwaGVy
X3R5cGVfYWxsb2MoJnNydHBfYWVzX2djbV8yNTZfb3BlbnNzbCwgJmMsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBTUlRQX0FFU19HQ01fMjU2X0tFWV9MRU5fV1NBTFQsIDE2
KTsKICAgICBpZiAoc3RhdHVzKSB7CiAgICAgICAgIGZwcmludGYoc3RkZXJyLCAiZXJyb3I6IGNh
bid0IGFsbG9jYXRlIEdDTSAyNTYgY2lwaGVyXG4iKTsKICAgICAgICAgZXhpdChzdGF0dXMpOwpA
QCAtMzA5LDM5ICszMTcsMzkgQEAgbWFpbihpbnQgYXJnYywgY2hhciAqYXJndltdKSB7CiAgICAg
fQogICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX2RlYWxsb2MoYyk7CiAgICAgY2hlY2tfc3RhdHVz
KHN0YXR1cyk7Ci0jZW5kaWYgCisjZW5kaWYKIAogICAgIHJldHVybiAwOwogfQogCi12b2lkCi1j
aXBoZXJfZHJpdmVyX3Rlc3RfdGhyb3VnaHB1dChzcnRwX2NpcGhlcl90ICpjKSB7Ci0gIGludCBp
OwotICBpbnQgbWluX2VuY19sZW4gPSAzMjsgICAgIAotICBpbnQgbWF4X2VuY19sZW4gPSAyMDQ4
OyAgIC8qIHNob3VsZCBiZSBhIHBvd2VyIG9mIHR3byAqLwotICBpbnQgbnVtX3RyaWFscyA9IDEw
MDAwMDA7ICAKLSAgCi0gIHByaW50ZigidGltaW5nICVzIHRocm91Z2hwdXQsIGtleSBsZW5ndGgg
JWQ6XG4iLCBjLT50eXBlLT5kZXNjcmlwdGlvbiwgYy0+a2V5X2xlbik7Ci0gIGZmbHVzaChzdGRv
dXQpOwotICBmb3IgKGk9bWluX2VuY19sZW47IGkgPD0gbWF4X2VuY19sZW47IGkgPSBpICogMikK
LSAgICBwcmludGYoIm1zZyBsZW46ICVkXHRnaWdhYml0cyBwZXIgc2Vjb25kOiAlZlxuIiwKLQkg
ICBpLCBzcnRwX2NpcGhlcl9iaXRzX3Blcl9zZWNvbmQoYywgaSwgbnVtX3RyaWFscykgLyAxZTkp
OwotCit2b2lkIGNpcGhlcl9kcml2ZXJfdGVzdF90aHJvdWdocHV0KHNydHBfY2lwaGVyX3QgKmMp
Cit7CisgICAgaW50IGk7CisgICAgaW50IG1pbl9lbmNfbGVuID0gMzI7CisgICAgaW50IG1heF9l
bmNfbGVuID0gMjA0ODsgLyogc2hvdWxkIGJlIGEgcG93ZXIgb2YgdHdvICovCisgICAgaW50IG51
bV90cmlhbHMgPSAxMDAwMDAwOworCisgICAgcHJpbnRmKCJ0aW1pbmcgJXMgdGhyb3VnaHB1dCwg
a2V5IGxlbmd0aCAlZDpcbiIsIGMtPnR5cGUtPmRlc2NyaXB0aW9uLAorICAgICAgICAgICBjLT5r
ZXlfbGVuKTsKKyAgICBmZmx1c2goc3Rkb3V0KTsKKyAgICBmb3IgKGkgPSBtaW5fZW5jX2xlbjsg
aSA8PSBtYXhfZW5jX2xlbjsgaSA9IGkgKiAyKQorICAgICAgICBwcmludGYoIm1zZyBsZW46ICVk
XHRnaWdhYml0cyBwZXIgc2Vjb25kOiAlZlxuIiwgaSwKKyAgICAgICAgICAgICAgIHNydHBfY2lw
aGVyX2JpdHNfcGVyX3NlY29uZChjLCBpLCBudW1fdHJpYWxzKSAvIDFlOSk7CiB9CiAKLXNydHBf
ZXJyX3N0YXR1c190Ci1jaXBoZXJfZHJpdmVyX3NlbGZfdGVzdChzcnRwX2NpcGhlcl90eXBlX3Qg
KmN0KSB7Ci0gIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKLSAgCi0gIHByaW50ZigicnVubmlu
ZyBjaXBoZXIgc2VsZi10ZXN0IGZvciAlcy4uLiIsIGN0LT5kZXNjcmlwdGlvbik7Ci0gIHN0YXR1
cyA9IHNydHBfY2lwaGVyX3R5cGVfc2VsZl90ZXN0KGN0KTsKLSAgaWYgKHN0YXR1cykgewotICAg
IHByaW50ZigiZmFpbGVkIHdpdGggZXJyb3IgY29kZSAlZFxuIiwgc3RhdHVzKTsKLSAgICBleGl0
KHN0YXR1cyk7Ci0gIH0KLSAgcHJpbnRmKCJwYXNzZWRcbiIpOwotICAKLSAgcmV0dXJuIHNydHBf
ZXJyX3N0YXR1c19vazsKK3NydHBfZXJyX3N0YXR1c190IGNpcGhlcl9kcml2ZXJfc2VsZl90ZXN0
KHNydHBfY2lwaGVyX3R5cGVfdCAqY3QpCit7CisgICAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVz
OworCisgICAgcHJpbnRmKCJydW5uaW5nIGNpcGhlciBzZWxmLXRlc3QgZm9yICVzLi4uIiwgY3Qt
PmRlc2NyaXB0aW9uKTsKKyAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl90eXBlX3NlbGZfdGVzdChj
dCk7CisgICAgaWYgKHN0YXR1cykgeworICAgICAgICBwcmludGYoImZhaWxlZCB3aXRoIGVycm9y
IGNvZGUgJWRcbiIsIHN0YXR1cyk7CisgICAgICAgIGV4aXQoc3RhdHVzKTsKKyAgICB9CisgICAg
cHJpbnRmKCJwYXNzZWRcbiIpOworCisgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0K
IAogLyoKQEAgLTM1MSwxNjggKzM1OSwxNjYgQEAgY2lwaGVyX2RyaXZlcl9zZWxmX3Rlc3Qoc3J0
cF9jaXBoZXJfdHlwZV90ICpjdCkgewogICovCiAKICNkZWZpbmUgSU5JVElBTF9CVUZMRU4gMTAy
NAotc3J0cF9lcnJfc3RhdHVzX3QKLWNpcGhlcl9kcml2ZXJfdGVzdF9idWZmZXJpbmcoc3J0cF9j
aXBoZXJfdCAqYykgewotICBpbnQgaSwgaiwgbnVtX3RyaWFscyA9IDEwMDA7Ci0gIHVuc2lnbmVk
IGxlbiwgYnVmbGVuID0gSU5JVElBTF9CVUZMRU47Ci0gIHVpbnQ4X3QgYnVmZmVyMFtJTklUSUFM
X0JVRkxFTl0sIGJ1ZmZlcjFbSU5JVElBTF9CVUZMRU5dLCAqY3VycmVudCwgKmVuZDsKLSAgdWlu
dDhfdCBpZHhbMTZdID0geyAKLSAgICAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAw
LCAweDAwLCAweDAwLCAKLSAgICAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAw
eDEyLCAweDM0Ci0gIH07Ci0gIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKLSAgCi0gIHByaW50
ZigidGVzdGluZyBvdXRwdXQgYnVmZmVyaW5nIGZvciBjaXBoZXIgJXMuLi4iLAotCSBjLT50eXBl
LT5kZXNjcmlwdGlvbik7Ci0KLSAgZm9yIChpPTA7IGkgPCBudW1fdHJpYWxzOyBpKyspIHsKLQot
ICAgLyogc2V0IGJ1ZmZlcnMgdG8gemVybyAqLwotICAgIGZvciAoaj0wOyBqIDwgKGludCkgYnVm
bGVuOyBqKyspIHsKLSAgICAgIGJ1ZmZlcjBbal0gPSBidWZmZXIxW2pdID0gMDsKLSAgICB9Ci0g
ICAgCi0gICAgLyogaW5pdGlhbGl6ZSBjaXBoZXIgICovCi0gICAgc3RhdHVzID0gc3J0cF9jaXBo
ZXJfc2V0X2l2KGMsICh1aW50OF90KilpZHgsIHNydHBfZGlyZWN0aW9uX2VuY3J5cHQpOwotICAg
IGlmIChzdGF0dXMpCi0gICAgICByZXR1cm4gc3RhdHVzOwotCi0gICAgLyogZ2VuZXJhdGUgJ3Jl
ZmVyZW5jZScgdmFsdWUgYnkgZW5jcnlwdGluZyBhbGwgYXQgb25jZSAqLwotICAgIHN0YXR1cyA9
IHNydHBfY2lwaGVyX2VuY3J5cHQoYywgYnVmZmVyMCwgJmJ1Zmxlbik7Ci0gICAgaWYgKHN0YXR1
cykKLSAgICAgIHJldHVybiBzdGF0dXM7Ci0KLSAgICAvKiByZS1pbml0aWFsaXplIGNpcGhlciAq
LwotICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3NldF9pdihjLCAodWludDhfdCopaWR4LCBzcnRw
X2RpcmVjdGlvbl9lbmNyeXB0KTsKLSAgICBpZiAoc3RhdHVzKQotICAgICAgcmV0dXJuIHN0YXR1
czsKLSAgICAKLSAgICAvKiBub3cgbG9vcCBvdmVyIHNob3J0IGxlbmd0aHMgdW50aWwgYnVmZmVy
MSBpcyBlbmNyeXB0ZWQgKi8KLSAgICBjdXJyZW50ID0gYnVmZmVyMTsKLSAgICBlbmQgPSBidWZm
ZXIxICsgYnVmbGVuOwotICAgIHdoaWxlIChjdXJyZW50IDwgZW5kKSB7Ci0KLSAgICAgIC8qIGNo
b29zZSBhIHNob3J0IGxlbmd0aCAqLwotICAgICAgbGVuID0gcmFuZCgpICYgMHgwMWY7Ci0KLSAg
ICAgIC8qIG1ha2Ugc3VyZSB0aGF0IGxlbiBkb2Vzbid0IGNhdXNlIHVzIHRvIG92ZXJyZWFjaCB0
aGUgYnVmZmVyICovCi0gICAgICBpZiAoY3VycmVudCArIGxlbiA+IGVuZCkKLQlsZW4gPSBlbmQg
LSBjdXJyZW50OwotCi0gICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9lbmNyeXB0KGMsIGN1cnJl
bnQsICZsZW4pOwotICAgICAgaWYgKHN0YXR1cykgCi0JcmV0dXJuIHN0YXR1czsKLSAgICAgIAot
ICAgICAgLyogYWR2YW5jZSBwb2ludGVyIGludG8gYnVmZmVyMSB0byByZWZsZWN0IGVuY3J5cHRp
b24gKi8KLSAgICAgIGN1cnJlbnQgKz0gbGVuOwotICAgICAgCi0gICAgICAvKiBpZiBidWZmZXIx
IGlzIGFsbCBlbmNyeXB0ZWQsIGJyZWFrIG91dCBvZiBsb29wICovCi0gICAgICBpZiAoY3VycmVu
dCA9PSBlbmQpCi0JYnJlYWs7Ci0gICAgfQotCi0gICAgLyogY29tcGFyZSBidWZmZXJzICovCi0g
ICAgZm9yIChqPTA7IGogPCAoaW50KSBidWZsZW47IGorKykgewotICAgICAgaWYgKGJ1ZmZlcjBb
al0gIT0gYnVmZmVyMVtqXSkgeworc3J0cF9lcnJfc3RhdHVzX3QgY2lwaGVyX2RyaXZlcl90ZXN0
X2J1ZmZlcmluZyhzcnRwX2NpcGhlcl90ICpjKQoreworICAgIGludCBpLCBqLCBudW1fdHJpYWxz
ID0gMTAwMDsKKyAgICB1bnNpZ25lZCBsZW4sIGJ1ZmxlbiA9IElOSVRJQUxfQlVGTEVOOworICAg
IHVpbnQ4X3QgYnVmZmVyMFtJTklUSUFMX0JVRkxFTl0sIGJ1ZmZlcjFbSU5JVElBTF9CVUZMRU5d
LCAqY3VycmVudCwgKmVuZDsKKyAgICB1aW50OF90IGlkeFsxNl0gPSB7IDB4MDAsIDB4MDAsIDB4
MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsCisgICAgICAgICAgICAgICAgICAgICAg
ICAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDEyLCAweDM0IH07CisgICAg
c3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVzOworCisgICAgcHJpbnRmKCJ0ZXN0aW5nIG91dHB1dCBi
dWZmZXJpbmcgZm9yIGNpcGhlciAlcy4uLiIsIGMtPnR5cGUtPmRlc2NyaXB0aW9uKTsKKworICAg
IGZvciAoaSA9IDA7IGkgPCBudW1fdHJpYWxzOyBpKyspIHsKKyAgICAgICAgLyogc2V0IGJ1ZmZl
cnMgdG8gemVybyAqLworICAgICAgICBmb3IgKGogPSAwOyBqIDwgKGludClidWZsZW47IGorKykg
eworICAgICAgICAgICAgYnVmZmVyMFtqXSA9IGJ1ZmZlcjFbal0gPSAwOworICAgICAgICB9CisK
KyAgICAgICAgLyogaW5pdGlhbGl6ZSBjaXBoZXIgICovCisgICAgICAgIHN0YXR1cyA9IHNydHBf
Y2lwaGVyX3NldF9pdihjLCAodWludDhfdCAqKWlkeCwgc3J0cF9kaXJlY3Rpb25fZW5jcnlwdCk7
CisgICAgICAgIGlmIChzdGF0dXMpCisgICAgICAgICAgICByZXR1cm4gc3RhdHVzOworCisgICAg
ICAgIC8qIGdlbmVyYXRlICdyZWZlcmVuY2UnIHZhbHVlIGJ5IGVuY3J5cHRpbmcgYWxsIGF0IG9u
Y2UgKi8KKyAgICAgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfZW5jcnlwdChjLCBidWZmZXIwLCAm
YnVmbGVuKTsKKyAgICAgICAgaWYgKHN0YXR1cykKKyAgICAgICAgICAgIHJldHVybiBzdGF0dXM7
CisKKyAgICAgICAgLyogcmUtaW5pdGlhbGl6ZSBjaXBoZXIgKi8KKyAgICAgICAgc3RhdHVzID0g
c3J0cF9jaXBoZXJfc2V0X2l2KGMsICh1aW50OF90ICopaWR4LCBzcnRwX2RpcmVjdGlvbl9lbmNy
eXB0KTsKKyAgICAgICAgaWYgKHN0YXR1cykKKyAgICAgICAgICAgIHJldHVybiBzdGF0dXM7CisK
KyAgICAgICAgLyogbm93IGxvb3Agb3ZlciBzaG9ydCBsZW5ndGhzIHVudGlsIGJ1ZmZlcjEgaXMg
ZW5jcnlwdGVkICovCisgICAgICAgIGN1cnJlbnQgPSBidWZmZXIxOworICAgICAgICBlbmQgPSBi
dWZmZXIxICsgYnVmbGVuOworICAgICAgICB3aGlsZSAoY3VycmVudCA8IGVuZCkgeworICAgICAg
ICAgICAgLyogY2hvb3NlIGEgc2hvcnQgbGVuZ3RoICovCisgICAgICAgICAgICBsZW4gPSByYW5k
KCkgJiAweDAxZjsKKworICAgICAgICAgICAgLyogbWFrZSBzdXJlIHRoYXQgbGVuIGRvZXNuJ3Qg
Y2F1c2UgdXMgdG8gb3ZlcnJlYWNoIHRoZSBidWZmZXIgKi8KKyAgICAgICAgICAgIGlmIChjdXJy
ZW50ICsgbGVuID4gZW5kKQorICAgICAgICAgICAgICAgIGxlbiA9IGVuZCAtIGN1cnJlbnQ7CisK
KyAgICAgICAgICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX2VuY3J5cHQoYywgY3VycmVudCwgJmxl
bik7CisgICAgICAgICAgICBpZiAoc3RhdHVzKQorICAgICAgICAgICAgICAgIHJldHVybiBzdGF0
dXM7CisKKyAgICAgICAgICAgIC8qIGFkdmFuY2UgcG9pbnRlciBpbnRvIGJ1ZmZlcjEgdG8gcmVm
bGVjdCBlbmNyeXB0aW9uICovCisgICAgICAgICAgICBjdXJyZW50ICs9IGxlbjsKKworICAgICAg
ICAgICAgLyogaWYgYnVmZmVyMSBpcyBhbGwgZW5jcnlwdGVkLCBicmVhayBvdXQgb2YgbG9vcCAq
LworICAgICAgICAgICAgaWYgKGN1cnJlbnQgPT0gZW5kKQorICAgICAgICAgICAgICAgIGJyZWFr
OworICAgICAgICB9CisKKyAgICAgICAgLyogY29tcGFyZSBidWZmZXJzICovCisgICAgICAgIGZv
ciAoaiA9IDA7IGogPCAoaW50KWJ1ZmxlbjsgaisrKSB7CisgICAgICAgICAgICBpZiAoYnVmZmVy
MFtqXSAhPSBidWZmZXIxW2pdKSB7CiAjaWYgUFJJTlRfREVCVUcKLQlwcmludGYoInRlc3QgY2Fz
ZSAlZCBmYWlsZWQgYXQgYnl0ZSAlZFxuIiwgaSwgaik7Ci0JcHJpbnRmKCJjb21wdXRlZDogJXNc
biIsIG9jdGV0X3N0cmluZ19oZXhfc3RyaW5nKGJ1ZmZlcjEsIGJ1ZmxlbikpOwotCXByaW50Zigi
ZXhwZWN0ZWQ6ICVzXG4iLCBvY3RldF9zdHJpbmdfaGV4X3N0cmluZyhidWZmZXIwLCBidWZsZW4p
KTsKLSNlbmRpZiAKLQlyZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2FsZ29fZmFpbDsKLSAgICAgIH0K
KyAgICAgICAgICAgICAgICBwcmludGYoInRlc3QgY2FzZSAlZCBmYWlsZWQgYXQgYnl0ZSAlZFxu
IiwgaSwgaik7CisgICAgICAgICAgICAgICAgcHJpbnRmKCJjb21wdXRlZDogJXNcbiIsCisgICAg
ICAgICAgICAgICAgICAgICAgIG9jdGV0X3N0cmluZ19oZXhfc3RyaW5nKGJ1ZmZlcjEsIGJ1Zmxl
bikpOworICAgICAgICAgICAgICAgIHByaW50ZigiZXhwZWN0ZWQ6ICVzXG4iLAorICAgICAgICAg
ICAgICAgICAgICAgICBvY3RldF9zdHJpbmdfaGV4X3N0cmluZyhidWZmZXIwLCBidWZsZW4pKTsK
KyNlbmRpZgorICAgICAgICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYWxnb19mYWls
OworICAgICAgICAgICAgfQorICAgICAgICB9CiAgICAgfQotICB9Ci0gIAotICBwcmludGYoInBh
c3NlZFxuIik7CiAKLSAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKLX0KKyAgICBwcmludGYo
InBhc3NlZFxuIik7CiAKKyAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOworfQogCiAvKgog
ICogVGhlIGZ1bmN0aW9uIGNpcGhlcl90ZXN0X3Rocm91Z2hwdXRfYXJyYXkoKSB0ZXN0cyB0aGUg
ZWZmZWN0IG9mIENQVQotICogY2FjaGUgdGhyYXNoIG9uIGNpcGhlciB0aHJvdWdocHV0LiAgCisg
KiBjYWNoZSB0aHJhc2ggb24gY2lwaGVyIHRocm91Z2hwdXQuCiAgKgogICogY2lwaGVyX2FycmF5
X2FsbG9jX2luaXQoY3R5cGUsIGFycmF5LCBudW1fY2lwaGVycykgY3JlYXRlcyBhbiBhcnJheQog
ICogb2Ygc3J0cF9jaXBoZXJfdCBvZiB0eXBlIGN0eXBlCiAgKi8KIAotc3J0cF9lcnJfc3RhdHVz
X3QKLWNpcGhlcl9hcnJheV9hbGxvY19pbml0KHNydHBfY2lwaGVyX3QgKioqY2EsIGludCBudW1f
Y2lwaGVycywKLQkJCXNydHBfY2lwaGVyX3R5cGVfdCAqY3R5cGUsIGludCBrbGVuKSB7Ci0gIGlu
dCBpLCBqOwotICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7Ci0gIHVpbnQ4X3QgKmtleTsKLSAg
c3J0cF9jaXBoZXJfdCAqKmNpcGhlcl9hcnJheTsKLSAgLyogcGFkIGtsZW4gYWxsb2NhdGlvbiwg
dG8gaGFuZGxlIGFlc19pY20gcmVhZGluZyAxNiBieXRlcyBmb3IgdGhlCi0gICAgIDE0LWJ5dGUg
c2FsdCAqLwotICBpbnQga2xlbl9wYWQgPSAoKGtsZW4gKyAxNSkgPj4gNCkgPDwgNDsKLQotICAv
KiBhbGxvY2F0ZSBhcnJheSBvZiBwb2ludGVycyB0byBjaXBoZXJzICovCi0gIGNpcGhlcl9hcnJh
eSA9IChzcnRwX2NpcGhlcl90ICoqKSBtYWxsb2Moc2l6ZW9mKHNydHBfY2lwaGVyX3QgKikgKiBu
dW1fY2lwaGVycyk7Ci0gIGlmIChjaXBoZXJfYXJyYXkgPT0gTlVMTCkKLSAgICByZXR1cm4gc3J0
cF9lcnJfc3RhdHVzX2FsbG9jX2ZhaWw7Ci0KLSAgLyogc2V0IGNhIHRvIGxvY2F0aW9uIG9mIGNp
cGhlcl9hcnJheSAqLwotICAqY2EgPSBjaXBoZXJfYXJyYXk7Ci0KLSAgLyogYWxsb2NhdGUga2V5
ICovCi0gIGtleSA9IHNydHBfY3J5cHRvX2FsbG9jKGtsZW5fcGFkKTsKLSAgaWYgKGtleSA9PSBO
VUxMKSB7Ci0gICAgZnJlZShjaXBoZXJfYXJyYXkpOwotICAgIHJldHVybiBzcnRwX2Vycl9zdGF0
dXNfYWxsb2NfZmFpbDsKLSAgfQotICAKLSAgLyogYWxsb2NhdGUgYW5kIGluaXRpYWxpemUgYW4g
YXJyYXkgb2YgY2lwaGVycyAqLwotICBmb3IgKGk9MDsgaSA8IG51bV9jaXBoZXJzOyBpKyspIHsK
LQotICAgIC8qIGFsbG9jYXRlIGNpcGhlciAqLwotICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3R5
cGVfYWxsb2MoY3R5cGUsIGNpcGhlcl9hcnJheSwga2xlbiwgMTYpOwotICAgIGlmIChzdGF0dXMp
Ci0gICAgICByZXR1cm4gc3RhdHVzOwotICAgIAotICAgIC8qIGdlbmVyYXRlIHJhbmRvbSBrZXkg
YW5kIGluaXRpYWxpemUgY2lwaGVyICovCi0gICAgZm9yIChqPTA7IGogPCBrbGVuOyBqKyspCi0g
ICAgICBrZXlbal0gPSAodWludDhfdCkgcmFuZCgpOwotICAgIGZvciAoOyBqIDwga2xlbl9wYWQ7
IGorKykKLSAgICAgIGtleVtqXSA9IDA7Ci0gICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfaW5pdCgq
Y2lwaGVyX2FycmF5LCBrZXkpOwotICAgIGlmIChzdGF0dXMpCi0gICAgICByZXR1cm4gc3RhdHVz
OwotCi0vKiAgICAgcHJpbnRmKCIlZHRoIGNpcGhlciBpcyBhdCAlcFxuIiwgaSwgKmNpcGhlcl9h
cnJheSk7ICovCi0vKiAgICAgcHJpbnRmKCIlZHRoIGNpcGhlciBkZXNjcmlwdGlvbjogJXNcbiIs
IGksICAqLwotLyogCSAgICgqY2lwaGVyX2FycmF5KS0+dHlwZS0+ZGVzY3JpcHRpb24pOyAqLwot
ICAgIAotICAgIC8qIGFkdmFuY2UgY2lwaGVyIGFycmF5IHBvaW50ZXIgKi8KLSAgICBjaXBoZXJf
YXJyYXkrKzsKLSAgfQotCi0gIHNydHBfY3J5cHRvX2ZyZWUoa2V5KTsKLQotICByZXR1cm4gc3J0
cF9lcnJfc3RhdHVzX29rOwotfQorc3J0cF9lcnJfc3RhdHVzX3QgY2lwaGVyX2FycmF5X2FsbG9j
X2luaXQoc3J0cF9jaXBoZXJfdCAqKipjYSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGludCBudW1fY2lwaGVycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHNydHBfY2lwaGVyX3R5cGVfdCAqY3R5cGUsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQga2xlbikKK3sKKyAgICBpbnQgaSwgajsK
KyAgICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7CisgICAgdWludDhfdCAqa2V5OworICAgIHNy
dHBfY2lwaGVyX3QgKipjaXBoZXJfYXJyYXk7CisgICAgLyogcGFkIGtsZW4gYWxsb2NhdGlvbiwg
dG8gaGFuZGxlIGFlc19pY20gcmVhZGluZyAxNiBieXRlcyBmb3IgdGhlCisgICAgICAgMTQtYnl0
ZSBzYWx0ICovCisgICAgaW50IGtsZW5fcGFkID0gKChrbGVuICsgMTUpID4+IDQpIDw8IDQ7CisK
KyAgICAvKiBhbGxvY2F0ZSBhcnJheSBvZiBwb2ludGVycyB0byBjaXBoZXJzICovCisgICAgY2lw
aGVyX2FycmF5ID0gKHNydHBfY2lwaGVyX3QgKiopc3J0cF9jcnlwdG9fYWxsb2Moc2l6ZW9mKHNy
dHBfY2lwaGVyX3QgKikgKgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIG51bV9jaXBoZXJzKTsKKyAgICBpZiAoY2lwaGVyX2FycmF5ID09IE5V
TEwpCisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYWxsb2NfZmFpbDsKKworICAgIC8q
IHNldCBjYSB0byBsb2NhdGlvbiBvZiBjaXBoZXJfYXJyYXkgKi8KKyAgICAqY2EgPSBjaXBoZXJf
YXJyYXk7CisKKyAgICAvKiBhbGxvY2F0ZSBrZXkgKi8KKyAgICBrZXkgPSBzcnRwX2NyeXB0b19h
bGxvYyhrbGVuX3BhZCk7CisgICAgaWYgKGtleSA9PSBOVUxMKSB7CisgICAgICAgIHNydHBfY3J5
cHRvX2ZyZWUoY2lwaGVyX2FycmF5KTsKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19h
bGxvY19mYWlsOworICAgIH0KKworICAgIC8qIGFsbG9jYXRlIGFuZCBpbml0aWFsaXplIGFuIGFy
cmF5IG9mIGNpcGhlcnMgKi8KKyAgICBmb3IgKGkgPSAwOyBpIDwgbnVtX2NpcGhlcnM7IGkrKykg
eworICAgICAgICAvKiBhbGxvY2F0ZSBjaXBoZXIgKi8KKyAgICAgICAgc3RhdHVzID0gc3J0cF9j
aXBoZXJfdHlwZV9hbGxvYyhjdHlwZSwgY2lwaGVyX2FycmF5LCBrbGVuLCAxNik7CisgICAgICAg
IGlmIChzdGF0dXMpCisgICAgICAgICAgICByZXR1cm4gc3RhdHVzOworCisgICAgICAgIC8qIGdl
bmVyYXRlIHJhbmRvbSBrZXkgYW5kIGluaXRpYWxpemUgY2lwaGVyICovCisgICAgICAgIGZvciAo
aiA9IDA7IGogPCBrbGVuOyBqKyspCisgICAgICAgICAgICBrZXlbal0gPSAodWludDhfdClyYW5k
KCk7CisgICAgICAgIGZvciAoOyBqIDwga2xlbl9wYWQ7IGorKykKKyAgICAgICAgICAgIGtleVtq
XSA9IDA7CisgICAgICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX2luaXQoKmNpcGhlcl9hcnJheSwg
a2V5KTsKKyAgICAgICAgaWYgKHN0YXR1cykKKyAgICAgICAgICAgIHJldHVybiBzdGF0dXM7CisK
KyAgICAgICAgLyogICAgIHByaW50ZigiJWR0aCBjaXBoZXIgaXMgYXQgJXBcbiIsIGksICpjaXBo
ZXJfYXJyYXkpOyAqLworICAgICAgICAvKiAgICAgcHJpbnRmKCIlZHRoIGNpcGhlciBkZXNjcmlw
dGlvbjogJXNcbiIsIGksICAqLworICAgICAgICAvKiAJICAgKCpjaXBoZXJfYXJyYXkpLT50eXBl
LT5kZXNjcmlwdGlvbik7ICovCisKKyAgICAgICAgLyogYWR2YW5jZSBjaXBoZXIgYXJyYXkgcG9p
bnRlciAqLworICAgICAgICBjaXBoZXJfYXJyYXkrKzsKKyAgICB9CisKKyAgICBzcnRwX2NyeXB0
b19mcmVlKGtleSk7CiAKLXNydHBfZXJyX3N0YXR1c190Ci1jaXBoZXJfYXJyYXlfZGVsZXRlKHNy
dHBfY2lwaGVyX3QgKmNpcGhlcl9hcnJheVtdLCBpbnQgbnVtX2NpcGhlcikgewotICBpbnQgaTsK
LSAgCi0gIGZvciAoaT0wOyBpIDwgbnVtX2NpcGhlcjsgaSsrKSB7Ci0gICAgc3J0cF9jaXBoZXJf
ZGVhbGxvYyhjaXBoZXJfYXJyYXlbaV0pOwotICB9Ci0KLSAgZnJlZShjaXBoZXJfYXJyYXkpOwot
ICAKLSAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKKyAgICByZXR1cm4gc3J0cF9lcnJfc3Rh
dHVzX29rOwogfQogCitzcnRwX2Vycl9zdGF0dXNfdCBjaXBoZXJfYXJyYXlfZGVsZXRlKHNydHBf
Y2lwaGVyX3QgKmNpcGhlcl9hcnJheVtdLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBpbnQgbnVtX2NpcGhlcikKK3sKKyAgICBpbnQgaTsKKworICAgIGZvciAoaSA9IDA7
IGkgPCBudW1fY2lwaGVyOyBpKyspIHsKKyAgICAgICAgc3J0cF9jaXBoZXJfZGVhbGxvYyhjaXBo
ZXJfYXJyYXlbaV0pOworICAgIH0KKworICAgIHNydHBfY3J5cHRvX2ZyZWUoY2lwaGVyX2FycmF5
KTsKKworICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7Cit9CiAKIC8qCiAgKiBjaXBoZXJf
YXJyYXlfYml0c19wZXJfc2Vjb25kKGMsIGwsIHQpIGNvbXB1dGVzIChhbiBlc3RpbWF0ZSBvZikg
dGhlCiAgKiBudW1iZXIgb2YgYml0cyB0aGF0IGEgY2lwaGVyIGltcGxlbWVudGF0aW9uIGNhbiBl
bmNyeXB0IGluIGEgc2Vjb25kCiAgKiB3aGVuIGRpc3RpbmN0IGtleXMgYXJlIHVzZWQgdG8gZW5j
cnlwdCBkaXN0aW5jdCBtZXNzYWdlcwotICogCisgKgogICogYyBpcyBhIGNpcGhlciAod2hpY2gg
TVVTVCBiZSBhbGxvY2F0ZWQgYW4gaW5pdGlhbGl6ZWQgYWxyZWFkeSksIGwKICAqIGlzIHRoZSBs
ZW5ndGggaW4gb2N0ZXRzIG9mIHRoZSB0ZXN0IGRhdGEgdG8gYmUgZW5jcnlwdGVkLCBhbmQgdCBp
cwogICogdGhlIG51bWJlciBvZiB0cmlhbHMKQEAgLTUyMCw4MCArNTI2LDg1IEBAIGNpcGhlcl9h
cnJheV9kZWxldGUoc3J0cF9jaXBoZXJfdCAqY2lwaGVyX2FycmF5W10sIGludCBudW1fY2lwaGVy
KSB7CiAgKiBpZiBhbiBlcnJvciBpcyBlbmNvdW50ZXJlZCwgdGhlIHZhbHVlIDAgaXMgcmV0dXJu
ZWQKICAqLwogCi11aW50NjRfdAotY2lwaGVyX2FycmF5X2JpdHNfcGVyX3NlY29uZChzcnRwX2Np
cGhlcl90ICpjaXBoZXJfYXJyYXlbXSwgaW50IG51bV9jaXBoZXIsIAotCQkJICAgICAgdW5zaWdu
ZWQgb2N0ZXRzX2luX2J1ZmZlciwgaW50IG51bV90cmlhbHMpIHsKLSAgaW50IGk7Ci0gIHYxMjhf
dCBub25jZTsKLSAgY2xvY2tfdCB0aW1lcjsKLSAgdW5zaWduZWQgY2hhciAqZW5jX2J1ZjsKLSAg
aW50IGNpcGhlcl9pbmRleCA9IHJhbmQoKSAlIG51bV9jaXBoZXI7Ci0KLSAgLyogT3Zlci1hbGxv
YywgZm9yIE5JU1QgQ0JDIHBhZGRpbmcgKi8KLSAgZW5jX2J1ZiA9IHNydHBfY3J5cHRvX2FsbG9j
KG9jdGV0c19pbl9idWZmZXIrMTcpOwotICBpZiAoZW5jX2J1ZiA9PSBOVUxMKQotICAgIHJldHVy
biAwOyAgLyogaW5kaWNhdGUgYmFkIHBhcmFtZXRlcnMgYnkgcmV0dXJuaW5nIG51bGwgKi8KLSAg
bWVtc2V0KGVuY19idWYsIDAsIG9jdGV0c19pbl9idWZmZXIpOwotICAKLSAgLyogdGltZSByZXBl
YXRlZCB0cmlhbHMgKi8KLSAgdjEyOF9zZXRfdG9femVybygmbm9uY2UpOwotICB0aW1lciA9IGNs
b2NrKCk7Ci0gIGZvcihpPTA7IGkgPCBudW1fdHJpYWxzOyBpKyssIG5vbmNlLnYzMlszXSA9IGkp
IHsKLSAgICAvKiBsZW5ndGggcGFyYW1ldGVyIHRvIHNydHBfY2lwaGVyX2VuY3J5cHQgaXMgaW4v
b3V0IC0tIG91dCBpcyB0b3RhbCwgcGFkZGVkCi0gICAgICogbGVuZ3RoIC0tIHNvIHJlc2V0IGl0
IGVhY2ggdGltZS4gKi8KLSAgICB1bnNpZ25lZCBvY3RldHNfdG9fZW5jcnlwdCA9IG9jdGV0c19p
bl9idWZmZXI7Ci0KLSAgICAvKiBlbmNyeXB0IGJ1ZmZlciB3aXRoIGNpcGhlciAqLwotICAgIHNy
dHBfY2lwaGVyX3NldF9pdihjaXBoZXJfYXJyYXlbY2lwaGVyX2luZGV4XSwgKHVpbnQ4X3QqKSZu
b25jZSwgc3J0cF9kaXJlY3Rpb25fZW5jcnlwdCk7Ci0gICAgc3J0cF9jaXBoZXJfZW5jcnlwdChj
aXBoZXJfYXJyYXlbY2lwaGVyX2luZGV4XSwgZW5jX2J1ZiwgJm9jdGV0c190b19lbmNyeXB0KTsK
LQotICAgIC8qIGNob29zZSBhIGNpcGhlciBhdCByYW5kb20gZnJvbSB0aGUgYXJyYXkqLwotICAg
IGNpcGhlcl9pbmRleCA9ICgqKCh1aW50MzJfdCAqKWVuY19idWYpKSAlIG51bV9jaXBoZXI7Ci0g
IH0KLSAgdGltZXIgPSBjbG9jaygpIC0gdGltZXI7Ci0KLSAgZnJlZShlbmNfYnVmKTsKLQotICBp
ZiAodGltZXIgPT0gMCkgewotICAgIC8qIFRvbyBmYXN0ISAqLwotICAgIHJldHVybiAwOwotICB9
Cit1aW50NjRfdCBjaXBoZXJfYXJyYXlfYml0c19wZXJfc2Vjb25kKHNydHBfY2lwaGVyX3QgKmNp
cGhlcl9hcnJheVtdLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQg
bnVtX2NpcGhlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWdu
ZWQgb2N0ZXRzX2luX2J1ZmZlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgaW50IG51bV90cmlhbHMpCit7CisgICAgaW50IGk7CisgICAgdjEyOF90IG5vbmNlOworICAg
IGNsb2NrX3QgdGltZXI7CisgICAgdW5zaWduZWQgY2hhciAqZW5jX2J1ZjsKKyAgICBpbnQgY2lw
aGVyX2luZGV4ID0gcmFuZCgpICUgbnVtX2NpcGhlcjsKKworICAgIC8qIE92ZXItYWxsb2MsIGZv
ciBOSVNUIENCQyBwYWRkaW5nICovCisgICAgZW5jX2J1ZiA9IHNydHBfY3J5cHRvX2FsbG9jKG9j
dGV0c19pbl9idWZmZXIgKyAxNyk7CisgICAgaWYgKGVuY19idWYgPT0gTlVMTCkKKyAgICAgICAg
cmV0dXJuIDA7IC8qIGluZGljYXRlIGJhZCBwYXJhbWV0ZXJzIGJ5IHJldHVybmluZyBudWxsICov
CisKKyAgICAvKiB0aW1lIHJlcGVhdGVkIHRyaWFscyAqLworICAgIHYxMjhfc2V0X3RvX3plcm8o
Jm5vbmNlKTsKKyAgICB0aW1lciA9IGNsb2NrKCk7CisgICAgZm9yIChpID0gMDsgaSA8IG51bV90
cmlhbHM7IGkrKywgbm9uY2UudjMyWzNdID0gaSkgeworICAgICAgICAvKiBsZW5ndGggcGFyYW1l
dGVyIHRvIHNydHBfY2lwaGVyX2VuY3J5cHQgaXMgaW4vb3V0IC0tIG91dCBpcyB0b3RhbCwKKyAg
ICAgICAgICogcGFkZGVkCisgICAgICAgICAqIGxlbmd0aCAtLSBzbyByZXNldCBpdCBlYWNoIHRp
bWUuICovCisgICAgICAgIHVuc2lnbmVkIG9jdGV0c190b19lbmNyeXB0ID0gb2N0ZXRzX2luX2J1
ZmZlcjsKKworICAgICAgICAvKiBlbmNyeXB0IGJ1ZmZlciB3aXRoIGNpcGhlciAqLworICAgICAg
ICBzcnRwX2NpcGhlcl9zZXRfaXYoY2lwaGVyX2FycmF5W2NpcGhlcl9pbmRleF0sICh1aW50OF90
ICopJm5vbmNlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF9kaXJlY3Rpb25fZW5j
cnlwdCk7CisgICAgICAgIHNydHBfY2lwaGVyX2VuY3J5cHQoY2lwaGVyX2FycmF5W2NpcGhlcl9p
bmRleF0sIGVuY19idWYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgJm9jdGV0c190b19l
bmNyeXB0KTsKKworICAgICAgICAvKiBjaG9vc2UgYSBjaXBoZXIgYXQgcmFuZG9tIGZyb20gdGhl
IGFycmF5Ki8KKyAgICAgICAgY2lwaGVyX2luZGV4ID0gKCooKHVpbnQzMl90ICopZW5jX2J1Zikp
ICUgbnVtX2NpcGhlcjsKKyAgICB9CisgICAgdGltZXIgPSBjbG9jaygpIC0gdGltZXI7CiAKLSAg
cmV0dXJuICh1aW50NjRfdClDTE9DS1NfUEVSX1NFQyAqIG51bV90cmlhbHMgKiA4ICogb2N0ZXRz
X2luX2J1ZmZlciAvIHRpbWVyOwotfQorICAgIHNydHBfY3J5cHRvX2ZyZWUoZW5jX2J1Zik7CiAK
LXZvaWQKLWNpcGhlcl9hcnJheV90ZXN0X3Rocm91Z2hwdXQoc3J0cF9jaXBoZXJfdCAqY2FbXSwg
aW50IG51bV9jaXBoZXIpIHsKLSAgaW50IGk7Ci0gIGludCBtaW5fZW5jX2xlbiA9IDE2OyAgICAg
Ci0gIGludCBtYXhfZW5jX2xlbiA9IDIwNDg7ICAgLyogc2hvdWxkIGJlIGEgcG93ZXIgb2YgdHdv
ICovCi0gIGludCBudW1fdHJpYWxzID0gMTAwMDAwMDsKKyAgICBpZiAodGltZXIgPT0gMCkgewor
ICAgICAgICAvKiBUb28gZmFzdCEgKi8KKyAgICAgICAgcmV0dXJuIDA7CisgICAgfQogCi0gIHBy
aW50ZigidGltaW5nICVzIHRocm91Z2hwdXQgd2l0aCBrZXkgbGVuZ3RoICVkLCBhcnJheSBzaXpl
ICVkOlxuIiwgCi0JIChjYVswXSktPnR5cGUtPmRlc2NyaXB0aW9uLCAoY2FbMF0pLT5rZXlfbGVu
LCBudW1fY2lwaGVyKTsKLSAgZmZsdXNoKHN0ZG91dCk7Ci0gIGZvciAoaT1taW5fZW5jX2xlbjsg
aSA8PSBtYXhfZW5jX2xlbjsgaSA9IGkgKiA0KQotICAgIHByaW50ZigibXNnIGxlbjogJWRcdGdp
Z2FiaXRzIHBlciBzZWNvbmQ6ICVmXG4iLCBpLAotCSAgIGNpcGhlcl9hcnJheV9iaXRzX3Blcl9z
ZWNvbmQoY2EsIG51bV9jaXBoZXIsIGksIG51bV90cmlhbHMpIC8gMWU5KTsKKyAgICByZXR1cm4g
KHVpbnQ2NF90KUNMT0NLU19QRVJfU0VDICogbnVtX3RyaWFscyAqIDggKiBvY3RldHNfaW5fYnVm
ZmVyIC8gdGltZXI7Cit9CiAKK3ZvaWQgY2lwaGVyX2FycmF5X3Rlc3RfdGhyb3VnaHB1dChzcnRw
X2NpcGhlcl90ICpjYVtdLCBpbnQgbnVtX2NpcGhlcikKK3sKKyAgICBpbnQgaTsKKyAgICBpbnQg
bWluX2VuY19sZW4gPSAxNjsKKyAgICBpbnQgbWF4X2VuY19sZW4gPSAyMDQ4OyAvKiBzaG91bGQg
YmUgYSBwb3dlciBvZiB0d28gKi8KKyAgICBpbnQgbnVtX3RyaWFscyA9IDEwMDAwMDA7CisKKyAg
ICBwcmludGYoInRpbWluZyAlcyB0aHJvdWdocHV0IHdpdGgga2V5IGxlbmd0aCAlZCwgYXJyYXkg
c2l6ZSAlZDpcbiIsCisgICAgICAgICAgIChjYVswXSktPnR5cGUtPmRlc2NyaXB0aW9uLCAoY2Fb
MF0pLT5rZXlfbGVuLCBudW1fY2lwaGVyKTsKKyAgICBmZmx1c2goc3Rkb3V0KTsKKyAgICBmb3Ig
KGkgPSBtaW5fZW5jX2xlbjsgaSA8PSBtYXhfZW5jX2xlbjsgaSA9IGkgKiA0KQorICAgICAgICBw
cmludGYoIm1zZyBsZW46ICVkXHRnaWdhYml0cyBwZXIgc2Vjb25kOiAlZlxuIiwgaSwKKyAgICAg
ICAgICAgICAgIGNpcGhlcl9hcnJheV9iaXRzX3Blcl9zZWNvbmQoY2EsIG51bV9jaXBoZXIsIGks
IG51bV90cmlhbHMpIC8KKyAgICAgICAgICAgICAgICAgICAxZTkpOwogfQogCi1zcnRwX2Vycl9z
dGF0dXNfdAotY2lwaGVyX2RyaXZlcl90ZXN0X2FycmF5X3Rocm91Z2hwdXQoc3J0cF9jaXBoZXJf
dHlwZV90ICpjdCwgCi0JCQkJICAgIGludCBrbGVuLCBpbnQgbnVtX2NpcGhlcikgewotICBzcnRw
X2NpcGhlcl90ICoqY2EgPSBOVUxMOwotICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7Ci0KLSAg
c3RhdHVzID0gY2lwaGVyX2FycmF5X2FsbG9jX2luaXQoJmNhLCBudW1fY2lwaGVyLCBjdCwga2xl
bik7Ci0gIGlmIChzdGF0dXMpIHsKLSAgICBwcmludGYoImVycm9yOiBjaXBoZXJfYXJyYXlfYWxs
b2NfaW5pdCgpIGZhaWxlZCB3aXRoIGVycm9yIGNvZGUgJWRcbiIsCi0JICAgc3RhdHVzKTsKLSAg
ICByZXR1cm4gc3RhdHVzOwotICB9Ci0gIAotICBjaXBoZXJfYXJyYXlfdGVzdF90aHJvdWdocHV0
KGNhLCBudW1fY2lwaGVyKTsKLSAgCi0gIGNpcGhlcl9hcnJheV9kZWxldGUoY2EsIG51bV9jaXBo
ZXIpOyAgICAKLSAKLSAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKK3NydHBfZXJyX3N0YXR1
c190IGNpcGhlcl9kcml2ZXJfdGVzdF9hcnJheV90aHJvdWdocHV0KHNydHBfY2lwaGVyX3R5cGVf
dCAqY3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBpbnQga2xlbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGludCBudW1fY2lwaGVyKQoreworICAgIHNydHBfY2lwaGVyX3QgKipjYSA9
IE5VTEw7CisgICAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVzOworCisgICAgc3RhdHVzID0gY2lw
aGVyX2FycmF5X2FsbG9jX2luaXQoJmNhLCBudW1fY2lwaGVyLCBjdCwga2xlbik7CisgICAgaWYg
KHN0YXR1cykgeworICAgICAgICBwcmludGYoImVycm9yOiBjaXBoZXJfYXJyYXlfYWxsb2NfaW5p
dCgpIGZhaWxlZCB3aXRoIGVycm9yIGNvZGUgJWRcbiIsCisgICAgICAgICAgICAgICBzdGF0dXMp
OworICAgICAgICByZXR1cm4gc3RhdHVzOworICAgIH0KKworICAgIGNpcGhlcl9hcnJheV90ZXN0
X3Rocm91Z2hwdXQoY2EsIG51bV9jaXBoZXIpOworCisgICAgY2lwaGVyX2FycmF5X2RlbGV0ZShj
YSwgbnVtX2NpcGhlcik7CisKKyAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQpkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9s
aWJzcnRwL2NyeXB0by90ZXN0L2RhdGF0eXBlc19kcml2ZXIuYyBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vdGVzdC9kYXRhdHlw
ZXNfZHJpdmVyLmMKaW5kZXggZDg0N2MyZjgwMjlhNWRmMmYzZTRkYjIxOTRmOTljMzkwNzY5ODg2
Ni4uMmY3ODkwM2ViOGViMTMzZTYyMmRlYTVjZDFkMGE5ZWUyMTU3ZDI3ZCAxMDA2NDQKLS0tIGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2Ny
eXB0by90ZXN0L2RhdGF0eXBlc19kcml2ZXIuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL3Rlc3QvZGF0YXR5cGVzX2Ry
aXZlci5jCkBAIC04LDI2ICs4LDI2IEBACiAgKi8KIAogLyoKLSAqCQorICoKICAqIENvcHlyaWdo
dCAoYykgMjAwMS0yMDE3LCBDaXNjbyBTeXN0ZW1zLCBJbmMuCiAgKiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgotICogCisgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKICAqIGFyZSBtZXQ6Ci0g
KiAKKyAqCiAgKiAgIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0CiAgKiAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIAorICoKICAqICAgUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQogICogICBjb3B5cmln
aHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwogICog
ICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQKICAqICAgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICogCisgKgogICogICBOZWl0
aGVyIHRoZSBuYW1lIG9mIHRoZSBDaXNjbyBTeXN0ZW1zLCBJbmMuIG5vciB0aGUgbmFtZXMgb2Yg
aXRzCiAgKiAgIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUg
cHJvZHVjdHMgZGVyaXZlZAogICogICBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZp
YyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0gKiAKKyAqCiAgKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCiAgKiAi
QVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVAogICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MKQEAgLTQzLDExNyArNDMsMTA4IEBACiAgKgogICovCiAKLQog
I2lmZGVmIEhBVkVfQ09ORklHX0gKLSAgICAjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8
Y29uZmlnLmg+CiAjZW5kaWYKIAotI2luY2x1ZGUgPHN0ZGlvLmg+ICAgICAgICAgICAgLyogZm9y
IHByaW50ZigpICovCi0jaW5jbHVkZSA8c3RyaW5nLmg+ICAgICAgICAgICAvKiBmb3Igc3RybGVu
KCkgKi8KKyNpbmNsdWRlIDxzdGRpby5oPiAgLyogZm9yIHByaW50ZigpICovCisjaW5jbHVkZSA8
c3RyaW5nLmg+IC8qIGZvciBzdHJsZW4oKSAqLwogI2luY2x1ZGUgImRhdGF0eXBlcy5oIgogI2lu
Y2x1ZGUgInV0aWwuaCIKIAotdm9pZAotYnl0ZV9vcmRlcih2b2lkKTsKK3ZvaWQgYnl0ZV9vcmRl
cih2b2lkKTsKIAotdm9pZAotdGVzdF9oZXhfc3RyaW5nX2Z1bmNzKHZvaWQpOwordm9pZCB0ZXN0
X2hleF9zdHJpbmdfZnVuY3Modm9pZCk7CiAKLXZvaWQKLXByaW50X3N0cmluZyhjaGFyICpzKTsK
K3ZvaWQgcHJpbnRfc3RyaW5nKGNoYXIgKnMpOwogCi12b2lkCi10ZXN0X2Jzd2FwKHZvaWQpOwor
dm9pZCB0ZXN0X2Jzd2FwKHZvaWQpOwogCi1pbnQKLW1haW4gKHZvaWQpIHsKLSAgCi0gIC8qCi0g
ICAqIHRoaXMgcHJvZ3JhbSBpbmNsdWRlcyB2YXJpb3VzIGFuZCBzdW5kcnkgdGVzdHMgZm9yIGZ1
bmRhbWVudGFsCi0gICAqIGRhdGF0eXBlcy4gIGl0J3MgYSBncmFiLWJhZyBvZiB0aHJvd2F3YXkg
Y29kZSwgcmV0YWluZWQgb25seSBpbgotICAgKiBjYXNlIG9mIGZ1dHVyZSBwcm9ibGVtcwotICAg
Ki8KLQotICBpbnQgaSwgajsKLSAgdjEyOF90IHg7Ci0gIGNoYXIgKnIgPSAKLSAgICAiVGhlIE1v
dmluZyBGaW5nZXIgd3JpdGVzOyBhbmQsIGhhdmluZyB3cml0LFxuIgotICAgICJNb3ZlcyBvbjog
bm9yIGFsbCB0aHkgUGlldHkgbm9yIFdpdFxuIgotICAgICJTaGFsbCBsdXJlIGl0IGJhY2sgdG8g
Y2FuY2VsIGhhbGYgYSBMaW5lLFxuIgotICAgICJOb3IgYWxsIHRoeSBUZWFycyB3YXNoIG91dCBh
IFdvcmQgb2YgaXQuIjsKLSAgY2hhciAqcyA9ICJpbmNvbXBsZXQiOyAKLSAKLSAgcHJpbnRfc3Ry
aW5nKHIpOwotICBwcmludF9zdHJpbmcocyk7Ci0gCi0gIGJ5dGVfb3JkZXIoKTsKLSAgdGVzdF9o
ZXhfc3RyaW5nX2Z1bmNzKCk7Ci0KLSAgZm9yIChqPTA7IGogPCAxMjg7IGorKykgeworaW50IG1h
aW4odm9pZCkKK3sKKyAgICAvKgorICAgICAqIHRoaXMgcHJvZ3JhbSBpbmNsdWRlcyB2YXJpb3Vz
IGFuZCBzdW5kcnkgdGVzdHMgZm9yIGZ1bmRhbWVudGFsCisgICAgICogZGF0YXR5cGVzLiAgaXQn
cyBhIGdyYWItYmFnIG9mIHRocm93YXdheSBjb2RlLCByZXRhaW5lZCBvbmx5IGluCisgICAgICog
Y2FzZSBvZiBmdXR1cmUgcHJvYmxlbXMKKyAgICAgKi8KKworICAgIGludCBpLCBqOworICAgIHYx
MjhfdCB4OworICAgIGNoYXIgKnIgPSAiVGhlIE1vdmluZyBGaW5nZXIgd3JpdGVzOyBhbmQsIGhh
dmluZyB3cml0LFxuIgorICAgICAgICAgICAgICAiTW92ZXMgb246IG5vciBhbGwgdGh5IFBpZXR5
IG5vciBXaXRcbiIKKyAgICAgICAgICAgICAgIlNoYWxsIGx1cmUgaXQgYmFjayB0byBjYW5jZWwg
aGFsZiBhIExpbmUsXG4iCisgICAgICAgICAgICAgICJOb3IgYWxsIHRoeSBUZWFycyB3YXNoIG91
dCBhIFdvcmQgb2YgaXQuIjsKKyAgICBjaGFyICpzID0gImluY29tcGxldCI7CisKKyAgICBwcmlu
dF9zdHJpbmcocik7CisgICAgcHJpbnRfc3RyaW5nKHMpOworCisgICAgYnl0ZV9vcmRlcigpOwor
ICAgIHRlc3RfaGV4X3N0cmluZ19mdW5jcygpOworCisgICAgZm9yIChqID0gMDsgaiA8IDEyODsg
aisrKSB7CisgICAgICAgIHYxMjhfc2V0X3RvX3plcm8oJngpOworICAgICAgICAvKiAgICAgIHgu
djMyWzBdID0gKDEgPDwgaik7ICovCisgICAgICAgIHYxMjhfc2V0X2JpdCgmeCwgaik7CisgICAg
ICAgIHByaW50ZigiJXNcbiIsIHYxMjhfYml0X3N0cmluZygmeCkpOworICAgICAgICB2MTI4X2Ns
ZWFyX2JpdCgmeCwgaik7CisgICAgICAgIHByaW50ZigiJXNcbiIsIHYxMjhfYml0X3N0cmluZygm
eCkpOworICAgIH0KKworICAgIHByaW50ZigiLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLVxuIik7CisgICAgdjEyOF9zZXRfdG9femVybygmeCk7CisgICAgZm9y
IChpID0gMDsgaSA8IDEyODsgaSsrKSB7CisgICAgICAgIHYxMjhfc2V0X2JpdCgmeCwgaSk7Cisg
ICAgfQorICAgIHByaW50ZigiJXNcbiIsIHYxMjhfYml0X3N0cmluZygmeCkpOworCisgICAgcHJp
bnRmKCItLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4iKTsK
ICAgICB2MTI4X3NldF90b196ZXJvKCZ4KTsKLSAgICAvKiAgICAgIHgudjMyWzBdID0gKDEgPDwg
aik7ICovCi0gICAgdjEyOF9zZXRfYml0KCZ4LCBqKTsKLSAgICBwcmludGYoIiVzXG4iLCB2MTI4
X2JpdF9zdHJpbmcoJngpKTsgCi0gICAgdjEyOF9jbGVhcl9iaXQoJngsIGopOwotICAgIHByaW50
ZigiJXNcbiIsIHYxMjhfYml0X3N0cmluZygmeCkpOyAKLSAgICAKLSAgfQotCi0gIHByaW50Zigi
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIik7Ci0gIHYx
Mjhfc2V0X3RvX3plcm8oJngpOwotICBmb3IgKGk9MDsgaSA8IDEyODsgaSsrKSB7Ci0gICAgdjEy
OF9zZXRfYml0KCZ4LCBpKTsKLSAgfQotICBwcmludGYoIiVzXG4iLCB2MTI4X2JpdF9zdHJpbmco
JngpKTsgCi0KLSAgcHJpbnRmKCItLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tXG4iKTsKLSAgdjEyOF9zZXRfdG9femVybygmeCk7Ci0gIHYxMjhfc2V0X2JpdCgm
eCwgMCk7Ci0gIGZvciAoaT0wOyBpIDwgMTI4OyBpKyspIHsKLSAgICAgIHByaW50ZigiJXNcbiIs
IHYxMjhfYml0X3N0cmluZygmeCkpOyAKLSAgICB2MTI4X3JpZ2h0X3NoaWZ0KCZ4LCAxKTsKLSAg
fQotICBwcmludGYoIi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS1cbiIpOwotICB2MTI4X3NldF90b196ZXJvKCZ4KTsKLSAgdjEyOF9zZXRfYml0KCZ4LCAxMjcp
OwotICBmb3IgKGk9MDsgaSA8IDEyODsgaSsrKSB7Ci0gICAgICBwcmludGYoIiVzXG4iLCB2MTI4
X2JpdF9zdHJpbmcoJngpKTsgCi0gICAgdjEyOF9sZWZ0X3NoaWZ0KCZ4LCAxKTsKLSAgfQotICBw
cmludGYoIi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiIp
OwotICBmb3IgKGk9MDsgaSA8IDEyODsgaSsrKSB7CisgICAgdjEyOF9zZXRfYml0KCZ4LCAwKTsK
KyAgICBmb3IgKGkgPSAwOyBpIDwgMTI4OyBpKyspIHsKKyAgICAgICAgcHJpbnRmKCIlc1xuIiwg
djEyOF9iaXRfc3RyaW5nKCZ4KSk7CisgICAgICAgIHYxMjhfcmlnaHRfc2hpZnQoJngsIDEpOwor
ICAgIH0KKyAgICBwcmludGYoIi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS1cbiIpOwogICAgIHYxMjhfc2V0X3RvX3plcm8oJngpOwogICAgIHYxMjhfc2V0X2Jp
dCgmeCwgMTI3KTsKLSAgICB2MTI4X2xlZnRfc2hpZnQoJngsIGkpOwotICAgICAgcHJpbnRmKCIl
c1xuIiwgdjEyOF9iaXRfc3RyaW5nKCZ4KSk7IAotICB9Ci0gIHByaW50ZigiLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIik7Ci0gIHYxMjhfc2V0X3RvX3pl
cm8oJngpOwotICBmb3IgKGk9MDsgaSA8IDEyODsgaSs9MikgewotICAgIHYxMjhfc2V0X2JpdCgm
eCwgaSk7Ci0gIH0KLSAgcHJpbnRmKCJiaXRfc3RyaW5nOiB7ICVzIH1cbiIsIHYxMjhfYml0X3N0
cmluZygmeCkpOyAKLSAgcHJpbnRmKCJnZXRfYml0OiAgICB7ICIpOyAgIAotICBmb3IgKGk9MDsg
aSA8IDEyODsgaSsrKSB7Ci0gICAgaWYgKHYxMjhfZ2V0X2JpdCgmeCwgaSkgPT0gMSkKLSAgICAg
IHByaW50ZigiMSIpOwotICAgIGVsc2UKLSAgICAgIHByaW50ZigiMCIpOwotICB9Ci0gIHByaW50
ZigiIH0gXG4iKTsKLQotICB0ZXN0X2Jzd2FwKCk7Ci0KLSAgcmV0dXJuIDA7CisgICAgZm9yIChp
ID0gMDsgaSA8IDEyODsgaSsrKSB7CisgICAgICAgIHByaW50ZigiJXNcbiIsIHYxMjhfYml0X3N0
cmluZygmeCkpOworICAgICAgICB2MTI4X2xlZnRfc2hpZnQoJngsIDEpOworICAgIH0KKyAgICBw
cmludGYoIi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiIp
OworICAgIGZvciAoaSA9IDA7IGkgPCAxMjg7IGkrKykgeworICAgICAgICB2MTI4X3NldF90b196
ZXJvKCZ4KTsKKyAgICAgICAgdjEyOF9zZXRfYml0KCZ4LCAxMjcpOworICAgICAgICB2MTI4X2xl
ZnRfc2hpZnQoJngsIGkpOworICAgICAgICBwcmludGYoIiVzXG4iLCB2MTI4X2JpdF9zdHJpbmco
JngpKTsKKyAgICB9CisgICAgcHJpbnRmKCItLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tXG4iKTsKKyAgICB2MTI4X3NldF90b196ZXJvKCZ4KTsKKyAgICBmb3Ig
KGkgPSAwOyBpIDwgMTI4OyBpICs9IDIpIHsKKyAgICAgICAgdjEyOF9zZXRfYml0KCZ4LCBpKTsK
KyAgICB9CisgICAgcHJpbnRmKCJiaXRfc3RyaW5nOiB7ICVzIH1cbiIsIHYxMjhfYml0X3N0cmlu
ZygmeCkpOworICAgIHByaW50ZigiZ2V0X2JpdDogICAgeyAiKTsKKyAgICBmb3IgKGkgPSAwOyBp
IDwgMTI4OyBpKyspIHsKKyAgICAgICAgaWYgKHYxMjhfZ2V0X2JpdCgmeCwgaSkgPT0gMSkKKyAg
ICAgICAgICAgIHByaW50ZigiMSIpOworICAgICAgICBlbHNlCisgICAgICAgICAgICBwcmludGYo
IjAiKTsKKyAgICB9CisgICAgcHJpbnRmKCIgfSBcbiIpOworCisgICAgdGVzdF9ic3dhcCgpOwor
CisgICAgcmV0dXJuIDA7CiB9CiAKLQogLyogYnl0ZV9vcmRlcigpIHByaW50cyBvdXQgYnl0ZSBv
cmRlcmluZyBvZiBkYXRhdHlwZXMgKi8KIAotdm9pZAotYnl0ZV9vcmRlcih2b2lkKSB7Ci0gIGlu
dCBpOwotICB2MTI4X3QgZTsKK3ZvaWQgYnl0ZV9vcmRlcih2b2lkKQoreworICAgIGludCBpOwor
ICAgIHYxMjhfdCBlOwogI2lmIDAKICAgdjE2X3QgYjsKICAgdjMyX3QgYzsKQEAgLTE4MCw2MyAr
MTcxLDYwIEBAIGJ5dGVfb3JkZXIodm9pZCkgewogCiAgIGMudmFsdWUgPSAweDAwMDEwMDAyOwog
ICBwcmludGYoInYzMl90Olx0JXgleFxuIiwgYy52MTZbMF0sIGMudjE2WzFdKTsKLSNlbmRpZiAK
KyNlbmRpZgogCi0gIHByaW50ZigiYnl0ZSBvcmRlcmluZyBvZiBjcnlwdG8vbWF0aCBkYXRhdHlw
ZXM6XG4iKTsKLSAgZm9yIChpPTA7IGkgPCBzaXplb2YoZSk7IGkrKykKLSAgICBlLnY4W2ldID0g
aTsKLSAgcHJpbnRmKCJ2MTI4X3Q6ICVzXG4iLCB2MTI4X2hleF9zdHJpbmcoJmUpKTsKLSAgCisg
ICAgcHJpbnRmKCJieXRlIG9yZGVyaW5nIG9mIGNyeXB0by9tYXRoIGRhdGF0eXBlczpcbiIpOwor
ICAgIGZvciAoaSA9IDA7IGkgPCBzaXplb2YoZSk7IGkrKykKKyAgICAgICAgZS52OFtpXSA9IGk7
CisgICAgcHJpbnRmKCJ2MTI4X3Q6ICVzXG4iLCB2MTI4X2hleF9zdHJpbmcoJmUpKTsKIH0KIAot
dm9pZAotdGVzdF9oZXhfc3RyaW5nX2Z1bmNzKHZvaWQpIHsKLSAgY2hhciBoZXgxW10gPSAiYWJh
ZGNhZmUiOwotICBjaGFyIGhleDJbXSA9ICIwMTIzNDU2Nzg5YWJjZGVmcXFxcXEiOwotICBjaGFy
IHJhd1sxMF07Ci0gIGludCBsZW47Ci0KLSAgbGVuID0gaGV4X3N0cmluZ190b19vY3RldF9zdHJp
bmcocmF3LCBoZXgxLCBzdHJsZW4oaGV4MSkpOwotICBwcmludGYoImNvbXB1dGVkIGxlbmd0aDog
JWRcdHN0cmluZzogJXNcbiIsIGxlbiwKLQkgb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcocmF3LCBs
ZW4vMikpOwotICBwcmludGYoImV4cGVjdGVkIGxlbmd0aDogJXVcdHN0cmluZzogJXNcbiIsICh1
bnNpZ25lZClzdHJsZW4oaGV4MSksIGhleDEpOwotCi0gIGxlbiA9IGhleF9zdHJpbmdfdG9fb2N0
ZXRfc3RyaW5nKHJhdywgaGV4Miwgc3RybGVuKGhleDIpKTsKLSAgcHJpbnRmKCJjb21wdXRlZCBs
ZW5ndGg6ICVkXHRzdHJpbmc6ICVzXG4iLCBsZW4sCi0JIG9jdGV0X3N0cmluZ19oZXhfc3RyaW5n
KHJhdywgbGVuLzIpKTsKLSAgcHJpbnRmKCJleHBlY3RlZCBsZW5ndGg6ICVkXHRzdHJpbmc6ICVz
XG4iLCAxNiwgIjAxMjM0NTY3ODlhYmNkZWYiKTsKLQordm9pZCB0ZXN0X2hleF9zdHJpbmdfZnVu
Y3Modm9pZCkKK3sKKyAgICBjaGFyIGhleDFbXSA9ICJhYmFkY2FmZSI7CisgICAgY2hhciBoZXgy
W10gPSAiMDEyMzQ1Njc4OWFiY2RlZnFxcXFxIjsKKyAgICBjaGFyIHJhd1sxMF07CisgICAgaW50
IGxlbjsKKworICAgIGxlbiA9IGhleF9zdHJpbmdfdG9fb2N0ZXRfc3RyaW5nKHJhdywgaGV4MSwg
c3RybGVuKGhleDEpKTsKKyAgICBwcmludGYoImNvbXB1dGVkIGxlbmd0aDogJWRcdHN0cmluZzog
JXNcbiIsIGxlbiwKKyAgICAgICAgICAgb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcocmF3LCBsZW4g
LyAyKSk7CisgICAgcHJpbnRmKCJleHBlY3RlZCBsZW5ndGg6ICV1XHRzdHJpbmc6ICVzXG4iLCAo
dW5zaWduZWQpc3RybGVuKGhleDEpLCBoZXgxKTsKKworICAgIGxlbiA9IGhleF9zdHJpbmdfdG9f
b2N0ZXRfc3RyaW5nKHJhdywgaGV4Miwgc3RybGVuKGhleDIpKTsKKyAgICBwcmludGYoImNvbXB1
dGVkIGxlbmd0aDogJWRcdHN0cmluZzogJXNcbiIsIGxlbiwKKyAgICAgICAgICAgb2N0ZXRfc3Ry
aW5nX2hleF9zdHJpbmcocmF3LCBsZW4gLyAyKSk7CisgICAgcHJpbnRmKCJleHBlY3RlZCBsZW5n
dGg6ICVkXHRzdHJpbmc6ICVzXG4iLCAxNiwgIjAxMjM0NTY3ODlhYmNkZWYiKTsKIH0KIAotdm9p
ZAotcHJpbnRfc3RyaW5nKGNoYXIgKnMpIHsKLSAgc2l6ZV90IGk7Ci0gIHByaW50ZigiJXNcbiIs
IHMpOwotICBwcmludGYoInN0cmxlbihzKSA9ICV1XG4iLCAodW5zaWduZWQpc3RybGVuKHMpKTsK
LSAgcHJpbnRmKCJ7ICIpOwotICBmb3IgKGk9MDsgaSA8IHN0cmxlbihzKTsgaSsrKSB7Ci0gICAg
cHJpbnRmKCIweCV4LCAiLCBzW2ldKTsKLSAgICBpZiAoKChpKzEpICUgOCkgPT0gMCkKLSAgICAg
IHByaW50ZigiXG4gICAiKTsKLSAgfQotICBwcmludGYoIn1cbiIpOwordm9pZCBwcmludF9zdHJp
bmcoY2hhciAqcykKK3sKKyAgICBzaXplX3QgaTsKKyAgICBwcmludGYoIiVzXG4iLCBzKTsKKyAg
ICBwcmludGYoInN0cmxlbihzKSA9ICV1XG4iLCAodW5zaWduZWQpc3RybGVuKHMpKTsKKyAgICBw
cmludGYoInsgIik7CisgICAgZm9yIChpID0gMDsgaSA8IHN0cmxlbihzKTsgaSsrKSB7CisgICAg
ICAgIHByaW50ZigiMHgleCwgIiwgc1tpXSk7CisgICAgICAgIGlmICgoKGkgKyAxKSAlIDgpID09
IDApCisgICAgICAgICAgICBwcmludGYoIlxuICAgIik7CisgICAgfQorICAgIHByaW50ZigifVxu
Iik7CiB9CiAKLXZvaWQKLXRlc3RfYnN3YXAodm9pZCkgewotICB1aW50MzJfdCB4ID0gMHgxMTIy
MzM0NDsKLSAgdWludDY0X3QgeSA9IDB4MTEyMjMzNDQ1NTY2Nzc4OExMOwordm9pZCB0ZXN0X2Jz
d2FwKHZvaWQpCit7CisgICAgdWludDMyX3QgeCA9IDB4MTEyMjMzNDQ7CisgICAgdWludDY0X3Qg
eSA9IDB4MTEyMjMzNDQ1NTY2Nzc4OExMOwogCi0gIHByaW50ZigiYmVmb3JlOiAlMHhcbmFmdGVy
OiAgJTB4XG4iLCB4LCAodW5zaWduZWQgaW50KWJlMzJfdG9fY3B1KHgpKTsKLSAgcHJpbnRmKCJi
ZWZvcmU6ICUwbGx4XG5hZnRlcjogICUwbGx4XG4iLCAodW5zaWduZWQgbG9uZyBsb25nKXksCi0J
ICh1bnNpZ25lZCBsb25nIGxvbmcpYmU2NF90b19jcHUoeSkpOworICAgIHByaW50ZigiYmVmb3Jl
OiAlMHhcbmFmdGVyOiAgJTB4XG4iLCB4LCAodW5zaWduZWQgaW50KWJlMzJfdG9fY3B1KHgpKTsK
KyAgICBwcmludGYoImJlZm9yZTogJTBsbHhcbmFmdGVyOiAgJTBsbHhcbiIsICh1bnNpZ25lZCBs
b25nIGxvbmcpeSwKKyAgICAgICAgICAgKHVuc2lnbmVkIGxvbmcgbG9uZyliZTY0X3RvX2NwdSh5
KSk7CiAKLSAgeSA9IDEyMzQ7CisgICAgeSA9IDEyMzQ7CiAKLSAgcHJpbnRmKCIxMjM0OiAlMGxs
eFxuIiwgKHVuc2lnbmVkIGxvbmcgbG9uZyl5KTsKLSAgcHJpbnRmKCJhcyBvY3RldCBzdHJpbmc6
ICVzXG4iLCAKLQkgb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcoKHVpbnQ4X3QgKikgJnksIDgpKTsK
LSAgeSA9IGJlNjRfdG9fY3B1KHkpOwotICBwcmludGYoImJzd2FwcGVkIG9jdGV0IHN0cmluZzog
JXNcbiIsIAotCSBvY3RldF9zdHJpbmdfaGV4X3N0cmluZygodWludDhfdCAqKSAmeSwgOCkpOwor
ICAgIHByaW50ZigiMTIzNDogJTBsbHhcbiIsICh1bnNpZ25lZCBsb25nIGxvbmcpeSk7CisgICAg
cHJpbnRmKCJhcyBvY3RldCBzdHJpbmc6ICVzXG4iLCBvY3RldF9zdHJpbmdfaGV4X3N0cmluZygo
dWludDhfdCAqKSZ5LCA4KSk7CisgICAgeSA9IGJlNjRfdG9fY3B1KHkpOworICAgIHByaW50Zigi
YnN3YXBwZWQgb2N0ZXQgc3RyaW5nOiAlc1xuIiwKKyAgICAgICAgICAgb2N0ZXRfc3RyaW5nX2hl
eF9zdHJpbmcoKHVpbnQ4X3QgKikmeSwgOCkpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by90ZXN0L2tl
cm5lbF9kcml2ZXIuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlic3J0cC9jcnlwdG8vdGVzdC9rZXJuZWxfZHJpdmVyLmMKaW5kZXggOTJiNzI0MDI0
OThjNTE3NDAzOWRmNjMyMWUxMTQ5YTIxMzM5NDFlZi4uZDI5NDA1YTk3MTdkYTM2MWU4NWFlNDZi
OTNhNjg4Yjg3ZTBkYzkyOCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by90ZXN0L2tlcm5lbF9kcml2ZXIuYwor
KysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNy
dHAvY3J5cHRvL3Rlc3Qva2VybmVsX2RyaXZlci5jCkBAIC03LDI2ICs3LDI2IEBACiAgKiBDaXNj
byBTeXN0ZW1zLCBJbmMuCiAgKi8KIC8qCi0gKgkKKyAqCiAgKiBDb3B5cmlnaHQoYykgMjAwMS0y
MDE3IENpc2NvIFN5c3RlbXMsIEluYy4KICAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKiAKKyAq
CiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwogICogYXJlIG1ldDoKLSAqIAorICoKICAqICAg
UmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5
cmlnaHQKICAqICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgotICogCisgKgogICogICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5
IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCiAgKiAgIGNvcHlyaWdodCBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCiAgKiAgIGRpc2NsYWltZXIg
aW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZAogICog
ICB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKiAKKyAqCiAgKiAgIE5laXRoZXIgdGhlIG5hbWUg
b2YgdGhlIENpc2NvIFN5c3RlbXMsIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKICAqICAgY29u
dHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJp
dmVkCiAgKiAgIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0
ZW4gcGVybWlzc2lvbi4KLSAqIAorICoKICAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkg
VEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKICAqICJBUyBJUyIgQU5EIEFO
WSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCiAgKiBM
SU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg
RklUTkVTUwpAQCAtNDIsNzcgKzQyLDc2IEBACiAgKgogICovCiAKLQogI2lmZGVmIEhBVkVfQ09O
RklHX0gKLSAgICAjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29uZmlnLmg+CiAjZW5k
aWYKIAotI2luY2x1ZGUgPHN0ZGlvLmg+ICAgICAgICAgICAvKiBmb3IgcHJpbnRmKCkgKi8KKyNp
bmNsdWRlIDxzdGRpby5oPiAvKiBmb3IgcHJpbnRmKCkgKi8KICNpbmNsdWRlICJnZXRvcHRfcy5o
IgogI2luY2x1ZGUgImNyeXB0b19rZXJuZWwuaCIKIAotdm9pZAotdXNhZ2UoY2hhciAqcHJvZ19u
YW1lKSB7Ci0gIHByaW50ZigidXNhZ2U6ICVzIFsgLXYgXVsgLWQgZGVidWdfbW9kdWxlIF0qXG4i
LCBwcm9nX25hbWUpOwotICBleGl0KDI1NSk7Cit2b2lkIHVzYWdlKGNoYXIgKnByb2dfbmFtZSkK
K3sKKyAgICBwcmludGYoInVzYWdlOiAlcyBbIC12IF1bIC1kIGRlYnVnX21vZHVsZSBdKlxuIiwg
cHJvZ19uYW1lKTsKKyAgICBleGl0KDI1NSk7CiB9CiAKLWludAotbWFpbiAoaW50IGFyZ2MsIGNo
YXIgKmFyZ3ZbXSkgewotICBpbnQgcTsKLSAgaW50IGRvX3ZhbGlkYXRpb24gICAgICA9IDA7Ci0g
IHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKK2ludCBtYWluKGludCBhcmdjLCBjaGFyICphcmd2
W10pCit7CisgICAgaW50IHE7CisgICAgaW50IGRvX3ZhbGlkYXRpb24gPSAwOworICAgIHNydHBf
ZXJyX3N0YXR1c190IHN0YXR1czsKIAotICBpZiAoYXJnYyA9PSAxKQotICAgIHVzYWdlKGFyZ3Zb
MF0pOworICAgIGlmIChhcmdjID09IDEpCisgICAgICAgIHVzYWdlKGFyZ3ZbMF0pOwogCi0gIC8q
IGluaXRpYWxpemUga2VybmVsIC0gd2UgbmVlZCB0byBkbyB0aGlzIGJlZm9yZSBhbnl0aGluZyBl
bHNlICovIAotICBzdGF0dXMgPSBzcnRwX2NyeXB0b19rZXJuZWxfaW5pdCgpOwotICBpZiAoc3Rh
dHVzKSB7Ci0gICAgcHJpbnRmKCJlcnJvcjogc3J0cF9jcnlwdG9fa2VybmVsIGluaXQgZmFpbGVk
XG4iKTsKLSAgICBleGl0KDEpOwotICB9Ci0gIHByaW50Zigic3J0cF9jcnlwdG9fa2VybmVsIHN1
Y2Nlc3NmdWxseSBpbml0YWxpemVkXG4iKTsKKyAgICAvKiBpbml0aWFsaXplIGtlcm5lbCAtIHdl
IG5lZWQgdG8gZG8gdGhpcyBiZWZvcmUgYW55dGhpbmcgZWxzZSAqLworICAgIHN0YXR1cyA9IHNy
dHBfY3J5cHRvX2tlcm5lbF9pbml0KCk7CisgICAgaWYgKHN0YXR1cykgeworICAgICAgICBwcmlu
dGYoImVycm9yOiBzcnRwX2NyeXB0b19rZXJuZWwgaW5pdCBmYWlsZWRcbiIpOworICAgICAgICBl
eGl0KDEpOworICAgIH0KKyAgICBwcmludGYoInNydHBfY3J5cHRvX2tlcm5lbCBzdWNjZXNzZnVs
bHkgaW5pdGFsaXplZFxuIik7CisKKyAgICAvKiBwcm9jZXNzIGlucHV0IGFyZ3VtZW50cyAqLwor
ICAgIHdoaWxlICgxKSB7CisgICAgICAgIHEgPSBnZXRvcHRfcyhhcmdjLCBhcmd2LCAidmQ6Iik7
CisgICAgICAgIGlmIChxID09IC0xKQorICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIHN3aXRj
aCAocSkgeworICAgICAgICBjYXNlICd2JzoKKyAgICAgICAgICAgIGRvX3ZhbGlkYXRpb24gPSAx
OworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgJ2QnOgorICAgICAgICAgICAgc3Rh
dHVzID0gc3J0cF9jcnlwdG9fa2VybmVsX3NldF9kZWJ1Z19tb2R1bGUob3B0YXJnX3MsIDEpOwor
ICAgICAgICAgICAgaWYgKHN0YXR1cykgeworICAgICAgICAgICAgICAgIHByaW50ZigiZXJyb3I6
IHNldCBkZWJ1ZyBtb2R1bGUgKCVzKSBmYWlsZWRcbiIsIG9wdGFyZ19zKTsKKyAgICAgICAgICAg
ICAgICBleGl0KDEpOworICAgICAgICAgICAgfQorICAgICAgICAgICAgYnJlYWs7CisgICAgICAg
IGRlZmF1bHQ6CisgICAgICAgICAgICB1c2FnZShhcmd2WzBdKTsKKyAgICAgICAgfQorICAgIH0K
IAotICAvKiBwcm9jZXNzIGlucHV0IGFyZ3VtZW50cyAqLwotICB3aGlsZSAoMSkgewotICAgIHEg
PSBnZXRvcHRfcyhhcmdjLCBhcmd2LCAidmQ6Iik7Ci0gICAgaWYgKHEgPT0gLTEpIAotICAgICAg
YnJlYWs7Ci0gICAgc3dpdGNoIChxKSB7Ci0gICAgY2FzZSAndic6Ci0gICAgICBkb192YWxpZGF0
aW9uID0gMTsKLSAgICAgIGJyZWFrOwotICAgIGNhc2UgJ2QnOgotICAgICAgc3RhdHVzID0gc3J0
cF9jcnlwdG9fa2VybmVsX3NldF9kZWJ1Z19tb2R1bGUob3B0YXJnX3MsIDEpOwotICAgICAgaWYg
KHN0YXR1cykgewotCXByaW50ZigiZXJyb3I6IHNldCBkZWJ1ZyBtb2R1bGUgKCVzKSBmYWlsZWRc
biIsIG9wdGFyZ19zKTsKLQlleGl0KDEpOwotICAgICAgfQotICAgICAgYnJlYWs7Ci0gICAgZGVm
YXVsdDoKLSAgICAgIHVzYWdlKGFyZ3ZbMF0pOwotICAgIH0gICAgCi0gIH0KKyAgICBpZiAoZG9f
dmFsaWRhdGlvbikgeworICAgICAgICBwcmludGYoImNoZWNraW5nIHNydHBfY3J5cHRvX2tlcm5l
bCBzdGF0dXMuLi5cbiIpOworICAgICAgICBzdGF0dXMgPSBzcnRwX2NyeXB0b19rZXJuZWxfc3Rh
dHVzKCk7CisgICAgICAgIGlmIChzdGF0dXMpIHsKKyAgICAgICAgICAgIHByaW50ZigiZmFpbGVk
XG4iKTsKKyAgICAgICAgICAgIGV4aXQoMSk7CisgICAgICAgIH0KKyAgICAgICAgcHJpbnRmKCJz
cnRwX2NyeXB0b19rZXJuZWwgcGFzc2VkIHNlbGYtdGVzdHNcbiIpOworICAgIH0KIAotICBpZiAo
ZG9fdmFsaWRhdGlvbikgewotICAgIHByaW50ZigiY2hlY2tpbmcgc3J0cF9jcnlwdG9fa2VybmVs
IHN0YXR1cy4uLlxuIik7Ci0gICAgc3RhdHVzID0gc3J0cF9jcnlwdG9fa2VybmVsX3N0YXR1cygp
OworICAgIHN0YXR1cyA9IHNydHBfY3J5cHRvX2tlcm5lbF9zaHV0ZG93bigpOwogICAgIGlmIChz
dGF0dXMpIHsKLSAgICAgIHByaW50ZigiZmFpbGVkXG4iKTsKLSAgICAgIGV4aXQoMSk7CisgICAg
ICAgIHByaW50ZigiZXJyb3I6IHNydHBfY3J5cHRvX2tlcm5lbCBzaHV0ZG93biBmYWlsZWRcbiIp
OworICAgICAgICBleGl0KDEpOwogICAgIH0KLSAgICBwcmludGYoInNydHBfY3J5cHRvX2tlcm5l
bCBwYXNzZWQgc2VsZi10ZXN0c1xuIik7Ci0gIH0KKyAgICBwcmludGYoInNydHBfY3J5cHRvX2tl
cm5lbCBzdWNjZXNzZnVsbHkgc2h1dCBkb3duXG4iKTsKIAotICBzdGF0dXMgPSBzcnRwX2NyeXB0
b19rZXJuZWxfc2h1dGRvd24oKTsKLSAgaWYgKHN0YXR1cykgewotICAgIHByaW50ZigiZXJyb3I6
IHNydHBfY3J5cHRvX2tlcm5lbCBzaHV0ZG93biBmYWlsZWRcbiIpOwotICAgIGV4aXQoMSk7Ci0g
IH0KLSAgcHJpbnRmKCJzcnRwX2NyeXB0b19rZXJuZWwgc3VjY2Vzc2Z1bGx5IHNodXQgZG93blxu
Iik7Ci0gIAotICByZXR1cm4gMDsKKyAgICByZXR1cm4gMDsKIH0KIAogLyoKQEAgLTEyMCwxMCAr
MTE5LDkgQEAgbWFpbiAoaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkgewogICogb2YgdGhlIGNyeXB0
b19rZXJuZWwKICAqLwogCi1zcnRwX2Vycl9zdGF0dXNfdAotY3J5cHRvX2tlcm5lbF9jaXBoZXJf
dGVzdCh2b2lkKSB7Ci0KLSAgLyogbm90IGltcGxlbWVudGVkIHlldCEgKi8KK3NydHBfZXJyX3N0
YXR1c190IGNyeXB0b19rZXJuZWxfY2lwaGVyX3Rlc3Qodm9pZCkKK3sKKyAgICAvKiBub3QgaW1w
bGVtZW50ZWQgeWV0ISAqLwogCi0gIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CisgICAgcmV0
dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9pbmNsdWRlL2VrdC5oIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2luY2x1
ZGUvZWt0LmgKaW5kZXggODZiZmExN2FkZjY5ZWI0Mzk2M2IxMWViOTNkNzRhN2YzOTc0OWY0ZS4u
YTI4OWE1M2RhYmU1MWVjYzExYzczZjhkYTY2ZGJjNjg2MmNhNzI3ZCAxMDA2NDQKLS0tIGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2luY2x1
ZGUvZWt0LmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJzcnRwL2luY2x1ZGUvZWt0LmgKQEAgLTcsMjYgKzcsMjYgQEAKICAqIENpc2NvIFN5
c3RlbXMsIEluYy4KICAqLwogLyoKLSAqCQorICoKICAqIENvcHlyaWdodCAoYykgMjAwMS0yMDE3
IENpc2NvIFN5c3RlbXMsIEluYy4KICAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKiAKKyAqCiAg
KiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwogICogYXJlIG1ldDoKLSAqIAorICoKICAqICAgUmVk
aXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmln
aHQKICAqICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgotICogCisgKgogICogICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCiAgKiAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCiAgKiAgIGRpc2NsYWltZXIgaW4g
dGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZAogICogICB3
aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKiAKKyAqCiAgKiAgIE5laXRoZXIgdGhlIG5hbWUgb2Yg
dGhlIENpc2NvIFN5c3RlbXMsIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKICAqICAgY29udHJp
YnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVk
CiAgKiAgIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4g
cGVybWlzc2lvbi4KLSAqIAorICoKICAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhF
IENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKICAqICJBUyBJUyIgQU5EIEFOWSBF
WFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCiAgKiBMSU1J
VEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklU
TkVTUwpAQCAtNDIsMTUgKzQyLDEzIEBACiAgKgogICovCiAKLQotCiAvKgotICogRUtUIGltcGxl
bWVudGF0aW9uIHN0cmF0ZWd5IAotICogCisgKiBFS1QgaW1wbGVtZW50YXRpb24gc3RyYXRlZ3kK
KyAqCiAgKiB1c2Ugc3RyZWFtX3RlbXBsYXRlIGFwcHJvYWNoCiAgKgogICogaW4gc3J0cF91bnBy
b3RlY3QsIHdoZW4gYSBuZXcgc3RyZWFtIGFwcGVhcnMsIGNoZWNrIGlmIHRlbXBsYXRlIGhhcwot
ICogRUtUIGRlZmluZWQsIGFuZCBpZiBpdCBkb2VzLCB0aGVuIGFwcGx5IEVLVCBwcm9jZXNzaW5n
IAorICogRUtUIGRlZmluZWQsIGFuZCBpZiBpdCBkb2VzLCB0aGVuIGFwcGx5IEVLVCBwcm9jZXNz
aW5nCiAgKgogICogcXVlc3Rpb246IHdpbGwgd2Ugd2FudCB0byBhbGxvdyBrZXktc2hhcmluZyB0
ZW1wbGF0ZXMgaW4gYWRkaXRpb24KICAqIHRvIEVLVCB0ZW1wbGF0ZXM/ICBjb3VsZCBkZWZpbmUg
YSBuZXcgc3NyY190eXBlX3QgdGhhdCdzIGFzc29jaWF0ZWQKQEAgLTY5LDE0ICs2NywxMyBAQAog
ZXh0ZXJuICJDIiB7CiAjZW5kaWYKIAotI2RlZmluZSBTUlRQX0VLVF9DSVBIRVJfREVGQVVMVCAg
ICAgICAgICAgMQotI2RlZmluZSBTUlRQX0VLVF9DSVBIRVJfQUVTXzEyOF9FQ0IgICAgICAgMQot
I2RlZmluZSBTUlRQX0VLVF9DSVBIRVJfQUVTXzE5Ml9LRVlfV1JBUCAgMgotI2RlZmluZSBTUlRQ
X0VLVF9DSVBIRVJfQUVTXzI1Nl9LRVlfV1JBUCAgMworI2RlZmluZSBTUlRQX0VLVF9DSVBIRVJf
REVGQVVMVCAxCisjZGVmaW5lIFNSVFBfRUtUX0NJUEhFUl9BRVNfMTI4X0VDQiAxCisjZGVmaW5l
IFNSVFBfRUtUX0NJUEhFUl9BRVNfMTkyX0tFWV9XUkFQIDIKKyNkZWZpbmUgU1JUUF9FS1RfQ0lQ
SEVSX0FFU18yNTZfS0VZX1dSQVAgMwogCiB0eXBlZGVmIHVpbnQxNl90IHNydHBfZWt0X3NwaV90
OwogCi0KIHVuc2lnbmVkIHNydHBfZWt0X29jdGV0c19hZnRlcl9iYXNlX3RhZyhzcnRwX2VrdF9z
dHJlYW1fdCBla3QpOwogCiAvKgpAQCAtODgsMjQgKzg1LDIzIEBAIHVuc2lnbmVkIHNydHBfZWt0
X29jdGV0c19hZnRlcl9iYXNlX3RhZyhzcnRwX2VrdF9zdHJlYW1fdCBla3QpOwogICovCiAKIHR5
cGVkZWYgc3RydWN0IHNydHBfZWt0X3BvbGljeV9jdHhfdCB7Ci0gIHNydHBfZWt0X3NwaV90ICBz
cGk7ICAgICAvKiBzZWN1cml0eSBwYXJhbWV0ZXIgaW5kZXggKi8KLSAgdWludDhfdCAgICBla3Rf
Y2lwaGVyX3R5cGU7Ci0gIHVpbnQ4X3QgICAqZWt0X2tleTsKLSAgc3RydWN0IHNydHBfZWt0X3Bv
bGljeV9jdHhfdCAqbmV4dF9la3RfcG9saWN5OworICAgIHNydHBfZWt0X3NwaV90IHNwaTsgLyog
c2VjdXJpdHkgcGFyYW1ldGVyIGluZGV4ICovCisgICAgdWludDhfdCBla3RfY2lwaGVyX3R5cGU7
CisgICAgdWludDhfdCAqZWt0X2tleTsKKyAgICBzdHJ1Y3Qgc3J0cF9la3RfcG9saWN5X2N0eF90
ICpuZXh0X2VrdF9wb2xpY3k7CiB9IHNydHBfZWt0X3BvbGljeV9jdHhfdDsKIAotCiAvKgogICog
YW4gc3J0cF9la3RfZGF0YV90IHN0cnVjdHVyZSBob2xkcyB0aGUgZGF0YSBjb3JyZXNwb25kaW5n
IHRvIGFuIGVrdCBrZXksCiAgKiBzcGksIGFuZCBzbyBvbgogICovCiAKIHR5cGVkZWYgc3RydWN0
IHNydHBfZWt0X2RhdGFfdCB7Ci0gIHNydHBfZWt0X3NwaV90IHNwaTsKLSAgdWludDhfdCBla3Rf
Y2lwaGVyX3R5cGU7Ci0gIHNydHBfYWVzX2V4cGFuZGVkX2tleV90IGVrdF9lbmNfa2V5OwotICBz
cnRwX2Flc19leHBhbmRlZF9rZXlfdCBla3RfZGVjX2tleTsKLSAgc3RydWN0IGVrdF9kYXRhX3Qg
Km5leHRfZWt0X2RhdGE7CisgICAgc3J0cF9la3Rfc3BpX3Qgc3BpOworICAgIHVpbnQ4X3QgZWt0
X2NpcGhlcl90eXBlOworICAgIHNydHBfYWVzX2V4cGFuZGVkX2tleV90IGVrdF9lbmNfa2V5Owor
ICAgIHNydHBfYWVzX2V4cGFuZGVkX2tleV90IGVrdF9kZWNfa2V5OworICAgIHN0cnVjdCBla3Rf
ZGF0YV90ICpuZXh0X2VrdF9kYXRhOwogfSBzcnRwX2VrdF9kYXRhX3Q7CiAKIC8qCkBAIC0xMTYs
MjUgKzExMiwzMSBAQCB0eXBlZGVmIHN0cnVjdCBzcnRwX2VrdF9kYXRhX3QgewogICovCiAKIHR5
cGVkZWYgc3RydWN0IHNydHBfZWt0X3N0cmVhbV9jdHhfdCB7Ci0gIHNydHBfZWt0X2RhdGFfdCAg
ICpkYXRhOyAgICAKLSAgdWludDE2X3QJICAgIGlzbjsgICAgIC8qIGluaXRpYWwgc2VxdWVuY2Ug
bnVtYmVyICAqLwotICB1aW50OF90CSAgICBlbmNyeXB0ZWRfbWFzdGVyX2tleVtTUlRQX01BWF9L
RVlfTEVOXTsKKyAgICBzcnRwX2VrdF9kYXRhX3QgKmRhdGE7CisgICAgdWludDE2X3QgaXNuOyAv
KiBpbml0aWFsIHNlcXVlbmNlIG51bWJlciAgKi8KKyAgICB1aW50OF90IGVuY3J5cHRlZF9tYXN0
ZXJfa2V5W1NSVFBfTUFYX0tFWV9MRU5dOwogfSBzcnRwX2VrdF9zdHJlYW1fY3R4X3Q7CiAKK3Ny
dHBfZXJyX3N0YXR1c190IHNydHBfZWt0X2FsbG9jKHNydHBfZWt0X3N0cmVhbV90ICpzdHJlYW1f
ZGF0YSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfZWt0X3BvbGljeV90
IHBvbGljeSk7CiAKK3NydHBfZXJyX3N0YXR1c190IHNydHBfZWt0X3N0cmVhbV9pbml0KHNydHBf
ZWt0X3N0cmVhbV90IGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBz
cnRwX2VrdF9zcGlfdCBzcGksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB2b2lkICpla3Rfa2V5LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
dW5zaWduZWQgZWt0X2NpcGhlcl90eXBlKTsKIAotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9la3Rf
YWxsb2Moc3J0cF9la3Rfc3RyZWFtX3QgKnN0cmVhbV9kYXRhLCBzcnRwX2VrdF9wb2xpY3lfdCBw
b2xpY3kpOwotCi1zcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2VrdF9zdHJlYW1faW5pdChzcnRwX2Vr
dF9zdHJlYW1fdCBlLCBzcnRwX2VrdF9zcGlfdCBzcGksIHZvaWQgKmVrdF9rZXksIHVuc2lnbmVk
IGVrdF9jaXBoZXJfdHlwZSk7Ci0KLXNydHBfZXJyX3N0YXR1c190IHNydHBfZWt0X3N0cmVhbV9p
bml0X2Zyb21fcG9saWN5KHNydHBfZWt0X3N0cmVhbV90IGUsIHNydHBfZWt0X3BvbGljeV90IHAp
OwotICAKLQorc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9la3Rfc3RyZWFtX2luaXRfZnJvbV9wb2xp
Y3koc3J0cF9la3Rfc3RyZWFtX3QgZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHNydHBfZWt0X3BvbGljeV90IHApOwogCi1zcnRwX2Vycl9zdGF0
dXNfdCBzcnRwX3N0cmVhbV9pbml0X2Zyb21fZWt0KHNydHBfc3RyZWFtX3Qgc3RyZWFtLCBjb25z
dCB2b2lkICpzcnRjcF9oZHIsIHVuc2lnbmVkIHBrdF9vY3RldF9sZW4pOwotCQkKK3NydHBfZXJy
X3N0YXR1c190IHNydHBfc3RyZWFtX2luaXRfZnJvbV9la3Qoc3J0cF9zdHJlYW1fdCBzdHJlYW0s
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHZvaWQg
KnNydGNwX2hkciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
dW5zaWduZWQgcGt0X29jdGV0X2xlbik7CiAKLXZvaWQgc3J0cF9la3Rfd3JpdGVfZGF0YShzcnRw
X2VrdF9zdHJlYW1fdCBla3QsIHVpbnQ4X3QgKmJhc2VfdGFnLCB1bnNpZ25lZCBiYXNlX3RhZ19s
ZW4sIGludCAqcGFja2V0X2xlbiwgc3J0cF94dGRfc2VxX251bV90IHBrdF9pbmRleCk7CQkKK3Zv
aWQgc3J0cF9la3Rfd3JpdGVfZGF0YShzcnRwX2VrdF9zdHJlYW1fdCBla3QsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgdWludDhfdCAqYmFzZV90YWcsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgdW5zaWduZWQgYmFzZV90YWdfbGVuLAorICAgICAgICAgICAgICAgICAgICAgICAgIGludCAq
cGFja2V0X2xlbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICBzcnRwX3h0ZF9zZXFfbnVtX3Qg
cGt0X2luZGV4KTsKIAogLyoKICAqIFdlIGhhbmRsZSBFS1QgYnkgcGVyZm9ybWluZyBzb21lIGFk
ZGl0aW9uYWwgc3RlcHMgYmVmb3JlCkBAIC0xNDQsMTAgKzE0NiwxMyBAQCB2b2lkIHNydHBfZWt0
X3dyaXRlX2RhdGEoc3J0cF9la3Rfc3RyZWFtX3QgZWt0LCB1aW50OF90ICpiYXNlX3RhZywgdW5z
aWduZWQgYmFzZQogICogV2l0aCBFS1QsIHRoZSB0YWdfbGVuIHBhcmFtZXRlciBpcyBhY3R1YWxs
eSB0aGUgYmFzZSB0YWcKICAqIGxlbmd0aAogICovCi1zcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2Vr
dF90YWdfdmVyaWZpY2F0aW9uX3ByZXByb2Nlcyh1aW50OF90ICpwa3RfdGFnLCB1aW50OF90ICpw
a3RfdGFnX2NvcHksIHVuc2lnbmVkIHRhZ19sZW4pOwotCi1zcnRwX2Vycl9zdGF0dXNfdCBzcnRw
X2VrdF90YWdfdmVyaWZpY2F0aW9uX3Bvc3Rwcm9jZXModWludDhfdCAqcGt0X3RhZywgdWludDhf
dCAqcGt0X3RhZ19jb3B5LCB1bnNpZ25lZCB0YWdfbGVuKTsKK3NydHBfZXJyX3N0YXR1c190IHNy
dHBfZWt0X3RhZ192ZXJpZmljYXRpb25fcHJlcHJvY2VzKHVpbnQ4X3QgKnBrdF90YWcsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50OF90
ICpwa3RfdGFnX2NvcHksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB1bnNpZ25lZCB0YWdfbGVuKTsKIAorc3J0cF9lcnJfc3RhdHVzX3Qgc3J0
cF9la3RfdGFnX3ZlcmlmaWNhdGlvbl9wb3N0cHJvY2VzKHVpbnQ4X3QgKnBrdF90YWcsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDhf
dCAqcGt0X3RhZ19jb3B5LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHVuc2lnbmVkIHRhZ19sZW4pOwogCiAvKgogICogQGJyaWVmIEVLVCBw
cmUtcHJvY2Vzc2luZyBmb3Igc3J0Y3AgdGFnIGdlbmVyYXRpb24KQEAgLTE1NywxNiArMTYyLDE4
IEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfZWt0X3RhZ192ZXJpZmljYXRpb25fcG9zdHByb2Nl
cyh1aW50OF90ICpwa3RfdGFnLCB1aW50OF90CiAgKiBNYXN0ZXIgS2V5LCB0aGUgU1JUUCBST0Ms
IHRoZSBJbml0aWFsIFNlcXVlbmNlIE51bWJlciwgYW5kIFNQSQogICogZmllbGRzLiAgVGhlIEJh
c2UgQXV0aGVudGljYXRpb24gVGFnIGZpZWxkIGlzIHNldCB0byB0aGUgYWxsLXplcm8KICAqIHZh
bHVlCi0gKiAKKyAqCiAgKiBXaGVuIEVLVCBpcyBub3QgdXNlZCwgdGhpcyBmdW5jdGlvbiBpcyBh
IG5vLW9wLgotICogCisgKgogICovCi1zcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3N0cmVhbV9zcnRj
cF9hdXRoX3RhZ19nZW5lcmF0aW9uX3ByZXByb2Nlc3MoY29uc3Qgc3J0cF9zdHJlYW1fdCAqcywg
dWludDhfdCAqcGt0X3RhZywgdW5zaWduZWQgcGt0X29jdGV0X2xlbik7CitzcnRwX2Vycl9zdGF0
dXNfdCBzcnRwX3N0cmVhbV9zcnRjcF9hdXRoX3RhZ19nZW5lcmF0aW9uX3ByZXByb2Nlc3MoCisg
ICAgY29uc3Qgc3J0cF9zdHJlYW1fdCAqcywKKyAgICB1aW50OF90ICpwa3RfdGFnLAorICAgIHVu
c2lnbmVkIHBrdF9vY3RldF9sZW4pOwogCiAvKiBpdCdzIG5vdCBjbGVhciB0aGF0IGEgdGFnX2dl
bmVyYXRpb25fcG9zdHByb2Nlc3MgZnVuY3Rpb24gaXMgbmVlZGVkICovCiBzcnRwX2Vycl9zdGF0
dXNfdCBzcnRjcF9hdXRoX3RhZ19nZW5lcmF0aW9uX3Bvc3Rwcm9jZXNzKHZvaWQpOwogCi0KICNp
ZmRlZiBfX2NwbHVzcGx1cwogfQogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvaW5jbHVkZS9nZXRvcHRfcy5o
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRw
L2luY2x1ZGUvZ2V0b3B0X3MuaAppbmRleCA2MzI3OGU5ODUwODM1YjEwMjcxM2MwYmNhNGYyY2I3
NzczOWEyYzhmLi41M2ZiMjViYTcxMDAyMTlkMzllMjJiZWZlYjNkNTAzNDA0NjljMWQ1IDEwMDY0
NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnNydHAvaW5jbHVkZS9nZXRvcHRfcy5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9pbmNsdWRlL2dldG9wdF9zLmgKQEAgLTcsMjYg
KzcsMjYgQEAKICAqCiAgKi8KIC8qCi0gKgkKKyAqCiAgKiBDb3B5cmlnaHQgKGMpIDIwMDEtMjAx
NyBDaXNjbyBTeXN0ZW1zLCBJbmMuCiAgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICogCisgKgog
ICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0
aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhh
dCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKICAqIGFyZSBtZXQ6Ci0gKiAKKyAqCiAgKiAgIFJl
ZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJp
Z2h0CiAgKiAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lci4KLSAqIAorICoKICAqICAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQogICogICBjb3B5cmlnaHQgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwogICogICBkaXNjbGFpbWVyIGlu
IHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQKICAqICAg
d2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICogCisgKgogICogICBOZWl0aGVyIHRoZSBuYW1lIG9m
IHRoZSBDaXNjbyBTeXN0ZW1zLCBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCiAgKiAgIGNvbnRy
aWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZl
ZAogICogICBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVu
IHBlcm1pc3Npb24uCi0gKiAKKyAqCiAgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRI
RSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCiAgKiAiQVMgSVMiIEFORCBBTlkg
RVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAogICogTElN
SVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJ
VE5FU1MKQEAgLTQ5LDE3ICs0OSwxNiBAQAogZXh0ZXJuICJDIiB7CiAjZW5kaWYKIAotLyogCisv
KgogICogZ2V0b3B0X3MoKSwgb3B0YXJnX3MsIGFuZCBvcHRpbmRfcyBhcmUgc21hbGwsIGxvY2Fs
bHkgZGVmaW5lZAogICogdmVyc2lvbnMgb2YgdGhlIFBPU0lYIHN0YW5kYXJkIGdldG9wdCgpIGlu
dGVyZmFjZS4KICAqLwotIAotaW50Ci1nZXRvcHRfcyhpbnQgYXJnYywgY2hhciAqIGNvbnN0IGFy
Z3ZbXSwgY29uc3QgY2hhciAqb3B0c3RyaW5nKTsKIAotZXh0ZXJuIGNoYXIgKm9wdGFyZ19zOyAg
ICAvKiBkZWZpbmVkIGluIGdldG9wdC5jICovCitpbnQgZ2V0b3B0X3MoaW50IGFyZ2MsIGNoYXIg
KmNvbnN0IGFyZ3ZbXSwgY29uc3QgY2hhciAqb3B0c3RyaW5nKTsKKworZXh0ZXJuIGNoYXIgKm9w
dGFyZ19zOyAvKiBkZWZpbmVkIGluIGdldG9wdC5jICovCiAKLWV4dGVybiBpbnQgb3B0aW5kX3M7
ICAgICAgLyogZGVmaW5lZCBpbiBnZXRvcHQuYyAqLworZXh0ZXJuIGludCBvcHRpbmRfczsgLyog
ZGVmaW5lZCBpbiBnZXRvcHQuYyAqLwogCiAjaWZkZWYgX19jcGx1c3BsdXMKIH0KZGlmZiAtLWdp
dCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0
cC9pbmNsdWRlL3J0cC5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJzcnRwL2luY2x1ZGUvcnRwLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IGU2OWRlMjliYjJkMWQ2NDM0YjhiMjlhZTc3NWFkOGMyZTQ4YzUzOTEuLjAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9pbmNsdWRlL3J0cF9wcml2
LmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNy
dHAvaW5jbHVkZS9ydHBfcHJpdi5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlNjlk
ZTI5YmIyZDFkNjQzNGI4YjI5YWU3NzVhZDhjMmU0OGM1MzkxLi4wMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvaW5jbHVkZS9zcnRwLmggYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvaW5jbHVkZS9z
cnRwLmgKaW5kZXggNmQ0MmY3YjUyZjBkNmU2MDVmYWU4ZGI3MzE1NmUyNjcyMDQ5NjhiYS4uMWZk
ZDZjM2FmZmQ4MzVjZDQyMjNkZDljY2M3NzcwNDVmODhkYmQ3ZiAxMDA2NDQKLS0tIGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2luY2x1ZGUv
c3J0cC5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvbGlic3J0cC9pbmNsdWRlL3NydHAuaApAQCAtNywyNiArNywyNiBAQAogICogQ2lzY28gU3lz
dGVtcywgSW5jLgogICovCiAvKgotICoJCisgKgogICogQ29weXJpZ2h0IChjKSAyMDAxLTIwMTcs
IENpc2NvIFN5c3RlbXMsIEluYy4KICAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKiAKKyAqCiAg
KiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwogICogYXJlIG1ldDoKLSAqIAorICoKICAqICAgUmVk
aXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmln
aHQKICAqICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgotICogCisgKgogICogICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCiAgKiAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCiAgKiAgIGRpc2NsYWltZXIgaW4g
dGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZAogICogICB3
aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKiAKKyAqCiAgKiAgIE5laXRoZXIgdGhlIG5hbWUgb2Yg
dGhlIENpc2NvIFN5c3RlbXMsIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKICAqICAgY29udHJp
YnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVk
CiAgKiAgIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4g
cGVybWlzc2lvbi4KLSAqIAorICoKICAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhF
IENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKICAqICJBUyBJUyIgQU5EIEFOWSBF
WFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCiAgKiBMSU1J
VEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklU
TkVTUwpAQCAtNDIsNyArNDIsNiBAQAogICoKICAqLwogCi0KICNpZm5kZWYgU1JUUF9TUlRQX0gK
ICNkZWZpbmUgU1JUUF9TUlRQX0gKIApAQCAtNzAsMTMgKzY5LDEzIEBAIGV4dGVybiAiQyIgewog
LyoKICAqIFNSVFBfTUFYX0tFWV9MRU4gaXMgdGhlIG1heGltdW0ga2V5IGxlbmd0aCBzdXBwb3J0
ZWQgYnkgbGliU1JUUAogICovCi0jZGVmaW5lIFNSVFBfTUFYX0tFWV9MRU4gICAgICA2NAorI2Rl
ZmluZSBTUlRQX01BWF9LRVlfTEVOIDY0CiAKIC8qCiAgKiBTUlRQX01BWF9UQUdfTEVOIGlzIHRo
ZSBtYXhpbXVtIHRhZyBsZW5ndGggc3VwcG9ydGVkIGJ5IGxpYlNSVFAKICAqLwogCi0jZGVmaW5l
IFNSVFBfTUFYX1RBR19MRU4gMTYgCisjZGVmaW5lIFNSVFBfTUFYX1RBR19MRU4gMTYKIAogLyoq
CiAgKiBTUlRQX01BWF9NS0lfTEVOIGlzIHRoZSBtYXhpbXVtIHNpemUgdGhlIE1LSSBjb3VsZCBi
ZSB3aGljaCBpcwpAQCAtODQsNyArODMsNiBAQCBleHRlcm4gIkMiIHsKICAqLwogI2RlZmluZSBT
UlRQX01BWF9NS0lfTEVOIDEyOAogCi0KIC8qKgogICogU1JUUF9NQVhfVFJBSUxFUl9MRU4gaXMg
dGhlIG1heGltdW0gbGVuZ3RoIG9mIHRoZSBTUlRQIHRyYWlsZXIKICAqIChhdXRoZW50aWNhdGlv
biB0YWcgYW5kIE1LSSkgc3VwcG9ydGVkIGJ5IGxpYlNSVFAuICBUaGlzIHZhbHVlIGlzCkBAIC05
NywzMiArOTUsMzYgQEAgZXh0ZXJuICJDIiB7CiAKIC8qKgogICogU1JUUF9NQVhfTlVNX01BU1RF
Ul9LRVlTIGlzIHRoZSBtYXhpbXVtIG51bWJlciBvZiBNYXN0ZXIga2V5cyBmb3IKLSAqIE1LSSBz
dXBwb3J0ZWQgYnkgbGliU1JUUC4gIAotICogIAorICogTUtJIHN1cHBvcnRlZCBieSBsaWJTUlRQ
LgorICoKICAqLwogI2RlZmluZSBTUlRQX01BWF9OVU1fTUFTVEVSX0tFWVMgMTYKIAotI2RlZmlu
ZSBTUlRQX1NBTFRfTEVOICAgICAgICAgICAgICAgIDE0CisjZGVmaW5lIFNSVFBfU0FMVF9MRU4g
MTQKKwogLyoKICAqIFNSVFBfQUVBRF9TQUxUX0xFTiBpcyB0aGUgbGVuZ3RoIG9mIHRoZSBTQUxU
IHZhbHVlcyB1c2VkIHdpdGgKICAqIEdDTSBtb2RlLiAgR0NNIG1vZGUgcmVxdWlyZXMgYW4gSVYu
ICBUaGUgU0FMVCB2YWx1ZSBpcyB1c2VkCiAgKiBhcyBwYXJ0IG9mIHRoZSBJViBmb3JtYXRpb24g
bG9naWMgYXBwbGllZCB0byBlYWNoIFJUUCBwYWNrZXQuCiAgKi8KLSNkZWZpbmUgU1JUUF9BRUFE
X1NBTFRfTEVOICAgICAgICAgICAgICAgMTIKKyNkZWZpbmUgU1JUUF9BRUFEX1NBTFRfTEVOIDEy
CiAKLSNkZWZpbmUgU1JUUF9BRVNfMTI4X0tFWV9MRU4gICAgICAgICAxNgotI2RlZmluZSBTUlRQ
X0FFU18xOTJfS0VZX0xFTiAgICAgICAgIDI0Ci0jZGVmaW5lIFNSVFBfQUVTXzI1Nl9LRVlfTEVO
ICAgICAgICAgMzIKKyNkZWZpbmUgU1JUUF9BRVNfMTI4X0tFWV9MRU4gMTYKKyNkZWZpbmUgU1JU
UF9BRVNfMTkyX0tFWV9MRU4gMjQKKyNkZWZpbmUgU1JUUF9BRVNfMjU2X0tFWV9MRU4gMzIKIAot
I2RlZmluZSBTUlRQX0FFU19JQ01fMTI4X0tFWV9MRU5fV1NBTFQgICAoU1JUUF9TQUxUX0xFTiAr
IFNSVFBfQUVTXzEyOF9LRVlfTEVOKQotI2RlZmluZSBTUlRQX0FFU19JQ01fMTkyX0tFWV9MRU5f
V1NBTFQgICAoU1JUUF9TQUxUX0xFTiArIFNSVFBfQUVTXzE5Ml9LRVlfTEVOKQotI2RlZmluZSBT
UlRQX0FFU19JQ01fMjU2X0tFWV9MRU5fV1NBTFQgICAoU1JUUF9TQUxUX0xFTiArIFNSVFBfQUVT
XzI1Nl9LRVlfTEVOKQorI2RlZmluZSBTUlRQX0FFU19JQ01fMTI4X0tFWV9MRU5fV1NBTFQgKFNS
VFBfU0FMVF9MRU4gKyBTUlRQX0FFU18xMjhfS0VZX0xFTikKKyNkZWZpbmUgU1JUUF9BRVNfSUNN
XzE5Ml9LRVlfTEVOX1dTQUxUIChTUlRQX1NBTFRfTEVOICsgU1JUUF9BRVNfMTkyX0tFWV9MRU4p
CisjZGVmaW5lIFNSVFBfQUVTX0lDTV8yNTZfS0VZX0xFTl9XU0FMVCAoU1JUUF9TQUxUX0xFTiAr
IFNSVFBfQUVTXzI1Nl9LRVlfTEVOKQogCi0jZGVmaW5lIFNSVFBfQUVTX0dDTV8xMjhfS0VZX0xF
Tl9XU0FMVCAgIChTUlRQX0FFQURfU0FMVF9MRU4gKyBTUlRQX0FFU18xMjhfS0VZX0xFTikKLSNk
ZWZpbmUgU1JUUF9BRVNfR0NNXzE5Ml9LRVlfTEVOX1dTQUxUICAgKFNSVFBfQUVBRF9TQUxUX0xF
TiArIFNSVFBfQUVTXzE5Ml9LRVlfTEVOKQotI2RlZmluZSBTUlRQX0FFU19HQ01fMjU2X0tFWV9M
RU5fV1NBTFQgICAoU1JUUF9BRUFEX1NBTFRfTEVOICsgU1JUUF9BRVNfMjU2X0tFWV9MRU4pCisj
ZGVmaW5lIFNSVFBfQUVTX0dDTV8xMjhfS0VZX0xFTl9XU0FMVCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgXAorICAgIChTUlRQX0FFQURfU0FMVF9MRU4gKyBTUlRQX0FF
U18xMjhfS0VZX0xFTikKKyNkZWZpbmUgU1JUUF9BRVNfR0NNXzE5Ml9LRVlfTEVOX1dTQUxUICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgKFNSVFBfQUVBRF9T
QUxUX0xFTiArIFNSVFBfQUVTXzE5Ml9LRVlfTEVOKQorI2RlZmluZSBTUlRQX0FFU19HQ01fMjU2
X0tFWV9MRU5fV1NBTFQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwK
KyAgICAoU1JUUF9BRUFEX1NBTFRfTEVOICsgU1JUUF9BRVNfMjU2X0tFWV9MRU4pCiAKLS8qKiAK
Ky8qKgogICogIEBicmllZiBBIHNydHBfY2lwaGVyX3R5cGVfaWRfdCBpcyBhbiBpZGVudGlmaWVy
IGZvciBhIHBhcnRpY3VsYXIgY2lwaGVyCiAgKiAgdHlwZS4KICAqCkBAIC0xMzEsMTMgKzEzMywx
NCBAQCBleHRlcm4gIkMiIHsKICAqICBTUlRQX05VTExfQ0lQSEVSIGlzIGF2YWxpYWJsZTsgdGhp
cyBjaXBoZXIgbGVhdmVzIHRoZSBkYXRhIHVuY2hhbmdlZCwKICAqICBhbmQgY2FuIGJlIHNlbGVj
dGVkIHRvIGluZGljYXRlIHRoYXQgbm8gZW5jcnlwdGlvbiBpcyB0byB0YWtlCiAgKiAgcGxhY2Uu
Ci0gKiAKKyAqCiAgKiAgQGluZ3JvdXAgQ2lwaGVycwogICovCi10eXBlZGVmIHVpbnQzMl90IHNy
dHBfY2lwaGVyX3R5cGVfaWRfdDsgCit0eXBlZGVmIHVpbnQzMl90IHNydHBfY2lwaGVyX3R5cGVf
aWRfdDsKIAogLyoqCi0gKiAgQGJyaWVmIEFuIHNydHBfYXV0aF90eXBlX2lkX3QgaXMgYW4gaWRl
bnRpZmllciBmb3IgYSBwYXJ0aWN1bGFyIGF1dGhlbnRpY2F0aW9uCisgKiAgQGJyaWVmIEFuIHNy
dHBfYXV0aF90eXBlX2lkX3QgaXMgYW4gaWRlbnRpZmllciBmb3IgYSBwYXJ0aWN1bGFyCisgKiBh
dXRoZW50aWNhdGlvbgogICogICBmdW5jdGlvbi4KICAqCiAgKiAgQW4gc3J0cF9hdXRoX3R5cGVf
aWRfdCBpcyBhbiBpbnRlZ2VyIHRoYXQgcmVwcmVzZW50cyBhIHBhcnRpY3VsYXIKQEAgLTE0NSw3
ICsxNDgsNyBAQCB0eXBlZGVmIHVpbnQzMl90IHNydHBfY2lwaGVyX3R5cGVfaWRfdDsKICAqICBh
dmFsaWFibGU7IHRoaXMgYXV0aGVudGljYXRpb24gZnVuY3Rpb24gcGVyZm9ybXMgbm8gY29tcHV0
YXRpb24sCiAgKiAgYW5kIGNhbiBiZSBzZWxlY3RlZCB0byBpbmRpY2F0ZSB0aGF0IG5vIGF1dGhl
bnRpY2F0aW9uIGlzIHRvIHRha2UKICAqICBwbGFjZS4KLSAqICAKKyAqCiAgKiAgQGluZ3JvdXAg
QXV0aGVudGljYXRpb24KICAqLwogdHlwZWRlZiB1aW50MzJfdCBzcnRwX2F1dGhfdHlwZV9pZF90
OwpAQCAtMTU5LDEyMCArMTYyLDExOSBAQCB0eXBlZGVmIHVpbnQzMl90IHNydHBfYXV0aF90eXBl
X2lkX3Q7CiAgKgogICovCiB0eXBlZGVmIGVudW0gewotICBzcnRwX2Vycl9zdGF0dXNfb2sgICAg
ICAgICAgID0gMCwgIC8qKjwgbm90aGluZyB0byByZXBvcnQgICAgICAgICAgICAgICAgICAgICAg
ICovCi0gIHNydHBfZXJyX3N0YXR1c19mYWlsICAgICAgICAgPSAxLCAgLyoqPCB1bnNwZWNpZmll
ZCBmYWlsdXJlICAgICAgICAgICAgICAgICAgICAgKi8KLSAgc3J0cF9lcnJfc3RhdHVzX2JhZF9w
YXJhbSAgICA9IDIsICAvKio8IHVuc3VwcG9ydGVkIHBhcmFtZXRlciAgICAgICAgICAgICAgICAg
ICAqLwotICBzcnRwX2Vycl9zdGF0dXNfYWxsb2NfZmFpbCAgID0gMywgIC8qKjwgY291bGRuJ3Qg
YWxsb2NhdGUgbWVtb3J5ICAgICAgICAgICAgICAgICovCi0gIHNydHBfZXJyX3N0YXR1c19kZWFs
bG9jX2ZhaWwgPSA0LCAgLyoqPCBjb3VsZG4ndCBkZWFsbG9jYXRlIHByb3Blcmx5ICAgICAgICAg
ICAgKi8KLSAgc3J0cF9lcnJfc3RhdHVzX2luaXRfZmFpbCAgICA9IDUsICAvKio8IGNvdWxkbid0
IGluaXRpYWxpemUgICAgICAgICAgICAgICAgICAgICAqLwotICBzcnRwX2Vycl9zdGF0dXNfdGVy
bWludXMgICAgID0gNiwgIC8qKjwgY2FuJ3QgcHJvY2VzcyBhcyBtdWNoIGRhdGEgYXMgcmVxdWVz
dGVkICovCi0gIHNydHBfZXJyX3N0YXR1c19hdXRoX2ZhaWwgICAgPSA3LCAgLyoqPCBhdXRoZW50
aWNhdGlvbiBmYWlsdXJlICAgICAgICAgICAgICAgICAgKi8KLSAgc3J0cF9lcnJfc3RhdHVzX2Np
cGhlcl9mYWlsICA9IDgsICAvKio8IGNpcGhlciBmYWlsdXJlICAgICAgICAgICAgICAgICAgICAg
ICAgICAqLwotICBzcnRwX2Vycl9zdGF0dXNfcmVwbGF5X2ZhaWwgID0gOSwgIC8qKjwgcmVwbGF5
IGNoZWNrIGZhaWxlZCAoYmFkIGluZGV4KSAgICAgICAgICovCi0gIHNydHBfZXJyX3N0YXR1c19y
ZXBsYXlfb2xkICAgPSAxMCwgLyoqPCByZXBsYXkgY2hlY2sgZmFpbGVkIChpbmRleCB0b28gb2xk
KSAgICAgKi8KLSAgc3J0cF9lcnJfc3RhdHVzX2FsZ29fZmFpbCAgICA9IDExLCAvKio8IGFsZ29y
aXRobSBmYWlsZWQgdGVzdCByb3V0aW5lICAgICAgICAgICAqLwotICBzcnRwX2Vycl9zdGF0dXNf
bm9fc3VjaF9vcCAgID0gMTIsIC8qKjwgdW5zdXBwb3J0ZWQgb3BlcmF0aW9uICAgICAgICAgICAg
ICAgICAgICovCi0gIHNydHBfZXJyX3N0YXR1c19ub19jdHggICAgICAgPSAxMywgLyoqPCBubyBh
cHByb3ByaWF0ZSBjb250ZXh0IGZvdW5kICAgICAgICAgICAgKi8KLSAgc3J0cF9lcnJfc3RhdHVz
X2NhbnRfY2hlY2sgICA9IDE0LCAvKio8IHVuYWJsZSB0byBwZXJmb3JtIGRlc2lyZWQgdmFsaWRh
dGlvbiAgICAqLwotICBzcnRwX2Vycl9zdGF0dXNfa2V5X2V4cGlyZWQgID0gMTUsIC8qKjwgY2Fu
J3QgdXNlIGtleSBhbnkgbW9yZSAgICAgICAgICAgICAgICAgICovCi0gIHNydHBfZXJyX3N0YXR1
c19zb2NrZXRfZXJyICAgPSAxNiwgLyoqPCBlcnJvciBpbiB1c2Ugb2Ygc29ja2V0ICAgICAgICAg
ICAgICAgICAgKi8KLSAgc3J0cF9lcnJfc3RhdHVzX3NpZ25hbF9lcnIgICA9IDE3LCAvKio8IGVy
cm9yIGluIHVzZSBQT1NJWCBzaWduYWxzICAgICAgICAgICAgICAqLwotICBzcnRwX2Vycl9zdGF0
dXNfbm9uY2VfYmFkICAgID0gMTgsIC8qKjwgbm9uY2UgY2hlY2sgZmFpbGVkICAgICAgICAgICAg
ICAgICAgICAgICovCi0gIHNydHBfZXJyX3N0YXR1c19yZWFkX2ZhaWwgICAgPSAxOSwgLyoqPCBj
b3VsZG4ndCByZWFkIGRhdGEgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgc3J0cF9lcnJfc3Rh
dHVzX3dyaXRlX2ZhaWwgICA9IDIwLCAvKio8IGNvdWxkbid0IHdyaXRlIGRhdGEgICAgICAgICAg
ICAgICAgICAgICAqLwotICBzcnRwX2Vycl9zdGF0dXNfcGFyc2VfZXJyICAgID0gMjEsIC8qKjwg
ZXJyb3IgcGFyc2luZyBkYXRhICAgICAgICAgICAgICAgICAgICAgICovCi0gIHNydHBfZXJyX3N0
YXR1c19lbmNvZGVfZXJyICAgPSAyMiwgLyoqPCBlcnJvciBlbmNvZGluZyBkYXRhICAgICAgICAg
ICAgICAgICAgICAgKi8KLSAgc3J0cF9lcnJfc3RhdHVzX3NlbWFwaG9yZV9lcnIgPSAyMywvKio8
IGVycm9yIHdoaWxlIHVzaW5nIHNlbWFwaG9yZXMgICAgICAgICAgICAqLwotICBzcnRwX2Vycl9z
dGF0dXNfcGZrZXlfZXJyICAgID0gMjQsIC8qKjwgZXJyb3Igd2hpbGUgdXNpbmcgcGZrZXkgICAg
ICAgICAgICAgICAgICovCi0gIHNydHBfZXJyX3N0YXR1c19iYWRfbWtpICAgICAgPSAyNSwgLyoq
PCBlcnJvciBNS0kgcHJlc2VudCBpbiBwYWNrZXQgaXMgaW52YWxpZCAgKi8KLSAgc3J0cF9lcnJf
c3RhdHVzX3BrdF9pZHhfb2xkICA9IDI2LCAvKio8IHBhY2tldCBpbmRleCBpcyB0b28gb2xkIHRv
IGNvbnNpZGVyICAgICAqLwotICBzcnRwX2Vycl9zdGF0dXNfcGt0X2lkeF9hZHYgID0gMjcgLyoq
PCBwYWNrZXQgaW5kZXggYWR2YW5jZWQsIHJlc2V0IG5lZWRlZCAgICAgICovCisgICAgc3J0cF9l
cnJfc3RhdHVzX29rID0gMCwgICAgICAgICAgICAgLyoqPCBub3RoaW5nIHRvIHJlcG9ydCAgICAg
ICAgICAgICAgICovCisgICAgc3J0cF9lcnJfc3RhdHVzX2ZhaWwgPSAxLCAgICAgICAgICAgLyoq
PCB1bnNwZWNpZmllZCBmYWlsdXJlICAgICAgICAgICAgICovCisgICAgc3J0cF9lcnJfc3RhdHVz
X2JhZF9wYXJhbSA9IDIsICAgICAgLyoqPCB1bnN1cHBvcnRlZCBwYXJhbWV0ZXIgICAgICAgICAg
ICovCisgICAgc3J0cF9lcnJfc3RhdHVzX2FsbG9jX2ZhaWwgPSAzLCAgICAgLyoqPCBjb3VsZG4n
dCBhbGxvY2F0ZSBtZW1vcnkgICAgICAgICovCisgICAgc3J0cF9lcnJfc3RhdHVzX2RlYWxsb2Nf
ZmFpbCA9IDQsICAgLyoqPCBjb3VsZG4ndCBkZWFsbG9jYXRlIHByb3Blcmx5ICAgICovCisgICAg
c3J0cF9lcnJfc3RhdHVzX2luaXRfZmFpbCA9IDUsICAgICAgLyoqPCBjb3VsZG4ndCBpbml0aWFs
aXplICAgICAgICAgICAgICovCisgICAgc3J0cF9lcnJfc3RhdHVzX3Rlcm1pbnVzID0gNiwgICAg
ICAgLyoqPCBjYW4ndCBwcm9jZXNzIGFzIG11Y2ggZGF0YSBhcyAgICovCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgLyoqPCByZXF1ZXN0ZWQgICAgICAgICAgICAgICAg
ICAgICAgICovCisgICAgc3J0cF9lcnJfc3RhdHVzX2F1dGhfZmFpbCA9IDcsICAgICAgLyoqPCBh
dXRoZW50aWNhdGlvbiBmYWlsdXJlICAgICAgICAgICovCisgICAgc3J0cF9lcnJfc3RhdHVzX2Np
cGhlcl9mYWlsID0gOCwgICAgLyoqPCBjaXBoZXIgZmFpbHVyZSAgICAgICAgICAgICAgICAgICov
CisgICAgc3J0cF9lcnJfc3RhdHVzX3JlcGxheV9mYWlsID0gOSwgICAgLyoqPCByZXBsYXkgY2hl
Y2sgZmFpbGVkIChiYWQgaW5kZXgpICovCisgICAgc3J0cF9lcnJfc3RhdHVzX3JlcGxheV9vbGQg
PSAxMCwgICAgLyoqPCByZXBsYXkgY2hlY2sgZmFpbGVkIChpbmRleCB0b28gICovCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyoqPCBvbGQpICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICovCisgICAgc3J0cF9lcnJfc3RhdHVzX2FsZ29fZmFpbCA9IDExLCAgICAg
LyoqPCBhbGdvcml0aG0gZmFpbGVkIHRlc3Qgcm91dGluZSAgICovCisgICAgc3J0cF9lcnJfc3Rh
dHVzX25vX3N1Y2hfb3AgPSAxMiwgICAgLyoqPCB1bnN1cHBvcnRlZCBvcGVyYXRpb24gICAgICAg
ICAgICovCisgICAgc3J0cF9lcnJfc3RhdHVzX25vX2N0eCA9IDEzLCAgICAgICAgLyoqPCBubyBh
cHByb3ByaWF0ZSBjb250ZXh0IGZvdW5kICAgICovCisgICAgc3J0cF9lcnJfc3RhdHVzX2NhbnRf
Y2hlY2sgPSAxNCwgICAgLyoqPCB1bmFibGUgdG8gcGVyZm9ybSBkZXNpcmVkICAgICAgICovCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyoqPCB2YWxpZGF0aW9uICAg
ICAgICAgICAgICAgICAgICAgICovCisgICAgc3J0cF9lcnJfc3RhdHVzX2tleV9leHBpcmVkID0g
MTUsICAgLyoqPCBjYW4ndCB1c2Uga2V5IGFueSBtb3JlICAgICAgICAgICovCisgICAgc3J0cF9l
cnJfc3RhdHVzX3NvY2tldF9lcnIgPSAxNiwgICAgLyoqPCBlcnJvciBpbiB1c2Ugb2Ygc29ja2V0
ICAgICAgICAgICovCisgICAgc3J0cF9lcnJfc3RhdHVzX3NpZ25hbF9lcnIgPSAxNywgICAgLyoq
PCBlcnJvciBpbiB1c2UgUE9TSVggc2lnbmFscyAgICAgICovCisgICAgc3J0cF9lcnJfc3RhdHVz
X25vbmNlX2JhZCA9IDE4LCAgICAgLyoqPCBub25jZSBjaGVjayBmYWlsZWQgICAgICAgICAgICAg
ICovCisgICAgc3J0cF9lcnJfc3RhdHVzX3JlYWRfZmFpbCA9IDE5LCAgICAgLyoqPCBjb3VsZG4n
dCByZWFkIGRhdGEgICAgICAgICAgICAgICovCisgICAgc3J0cF9lcnJfc3RhdHVzX3dyaXRlX2Zh
aWwgPSAyMCwgICAgLyoqPCBjb3VsZG4ndCB3cml0ZSBkYXRhICAgICAgICAgICAgICovCisgICAg
c3J0cF9lcnJfc3RhdHVzX3BhcnNlX2VyciA9IDIxLCAgICAgLyoqPCBlcnJvciBwYXJzaW5nIGRh
dGEgICAgICAgICAgICAgICovCisgICAgc3J0cF9lcnJfc3RhdHVzX2VuY29kZV9lcnIgPSAyMiwg
ICAgLyoqPCBlcnJvciBlbmNvZGluZyBkYXRhICAgICAgICAgICAgICovCisgICAgc3J0cF9lcnJf
c3RhdHVzX3NlbWFwaG9yZV9lcnIgPSAyMywgLyoqPCBlcnJvciB3aGlsZSB1c2luZyBzZW1hcGhv
cmVzICAgICovCisgICAgc3J0cF9lcnJfc3RhdHVzX3Bma2V5X2VyciA9IDI0LCAgICAgLyoqPCBl
cnJvciB3aGlsZSB1c2luZyBwZmtleSAgICAgICAgICovCisgICAgc3J0cF9lcnJfc3RhdHVzX2Jh
ZF9ta2kgPSAyNSwgICAgICAgLyoqPCBlcnJvciBNS0kgcHJlc2VudCBpbiBwYWNrZXQgaXMgICov
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyoqPCBpbnZhbGlkICAg
ICAgICAgICAgICAgICAgICAgICAgICovCisgICAgc3J0cF9lcnJfc3RhdHVzX3BrdF9pZHhfb2xk
ID0gMjYsICAgLyoqPCBwYWNrZXQgaW5kZXggaXMgdG9vIG9sZCB0byAgICAgICovCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyoqPCBjb25zaWRlciAgICAgICAgICAg
ICAgICAgICAgICAgICovCisgICAgc3J0cF9lcnJfc3RhdHVzX3BrdF9pZHhfYWR2ID0gMjcgICAg
LyoqPCBwYWNrZXQgaW5kZXggYWR2YW5jZWQsIHJlc2V0ICAgICovCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgLyoqPCBuZWVkZWQgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCiB9IHNydHBfZXJyX3N0YXR1c190OwogCi0KIHR5cGVkZWYgc3RydWN0IHNydHBfY3R4
X3RfIHNydHBfY3R4X3Q7CiAKIC8qKgotICogQGJyaWVmIHNydHBfc2VjX3NlcnZfdCBkZXNjcmli
ZXMgYSBzZXQgb2Ygc2VjdXJpdHkgc2VydmljZXMuIAorICogQGJyaWVmIHNydHBfc2VjX3NlcnZf
dCBkZXNjcmliZXMgYSBzZXQgb2Ygc2VjdXJpdHkgc2VydmljZXMuCiAgKgogICogQSBzcnRwX3Nl
Y19zZXJ2X3QgZW51bWVyYXRpb24gaXMgdXNlZCB0byBkZXNjcmliZSB0aGUgcGFydGljdWxhcgog
ICogc2VjdXJpdHkgc2VydmljZXMgdGhhdCB3aWxsIGJlIGFwcGxpZWQgYnkgYSBwYXJ0aWN1bGFy
IGNyeXB0bwotICogcG9saWN5IChvciBvdGhlciBtZWNoYW5pc20pLiAgCisgKiBwb2xpY3kgKG9y
IG90aGVyIG1lY2hhbmlzbSkuCiAgKi8KLQogdHlwZWRlZiBlbnVtIHsKLSAgc2VjX3NlcnZfbm9u
ZSAgICAgICAgICA9IDAsIC8qKjwgbm8gc2VydmljZXMgICAgICAgICAgICAgICAgICAgICAgICAq
LwotICBzZWNfc2Vydl9jb25mICAgICAgICAgID0gMSwgLyoqPCBjb25maWRlbnRpYWxpdHkgICAg
ICAgICAgICAgICAgICAgICovCi0gIHNlY19zZXJ2X2F1dGggICAgICAgICAgPSAyLCAvKio8IGF1
dGhlbnRpY2F0aW9uICAgICAgICAgICAgICAgICAgICAgKi8KLSAgc2VjX3NlcnZfY29uZl9hbmRf
YXV0aCA9IDMgIC8qKjwgY29uZmlkZW50aWFsaXR5IGFuZCBhdXRoZW50aWNhdGlvbiAqLworICAg
IHNlY19zZXJ2X25vbmUgPSAwLCAgICAgICAgIC8qKjwgbm8gc2VydmljZXMgICAgICAgICAgICAg
ICAgICAgICAgICAqLworICAgIHNlY19zZXJ2X2NvbmYgPSAxLCAgICAgICAgIC8qKjwgY29uZmlk
ZW50aWFsaXR5ICAgICAgICAgICAgICAgICAgICAqLworICAgIHNlY19zZXJ2X2F1dGggPSAyLCAg
ICAgICAgIC8qKjwgYXV0aGVudGljYXRpb24gICAgICAgICAgICAgICAgICAgICAqLworICAgIHNl
Y19zZXJ2X2NvbmZfYW5kX2F1dGggPSAzIC8qKjwgY29uZmlkZW50aWFsaXR5IGFuZCBhdXRoZW50
aWNhdGlvbiAqLwogfSBzcnRwX3NlY19zZXJ2X3Q7CiAKLS8qKiAKKy8qKgogICogQGJyaWVmIHNy
dHBfY3J5cHRvX3BvbGljeV90IGRlc2NyaWJlcyBhIHBhcnRpY3VsYXIgY3J5cHRvIHBvbGljeSB0
aGF0CiAgKiBjYW4gYmUgYXBwbGllZCB0byBhbiBTUlRQIHN0cmVhbS4KICAqCiAgKiBBIHNydHBf
Y3J5cHRvX3BvbGljeV90IGRlc2NyaWJlcyBhIHBhcnRpY3VsYXIgY3J5cHRvZ3JhcGhpYyBwb2xp
Y3kgdGhhdAogICogY2FuIGJlIGFwcGxpZWQgdG8gYW4gU1JUUCBvciBTUlRDUCBzdHJlYW0uICBB
biBTUlRQIHNlc3Npb24gcG9saWN5Ci0gKiBjb25zaXN0cyBvZiBhIGxpc3Qgb2YgdGhlc2UgcG9s
aWNpZXMsIG9uZSBmb3IgZWFjaCBTUlRQIHN0cmVhbSAKKyAqIGNvbnNpc3RzIG9mIGEgbGlzdCBv
ZiB0aGVzZSBwb2xpY2llcywgb25lIGZvciBlYWNoIFNSVFAgc3RyZWFtCiAgKiBpbiB0aGUgc2Vz
c2lvbi4KICAqLwotCiB0eXBlZGVmIHN0cnVjdCBzcnRwX2NyeXB0b19wb2xpY3lfdCB7Ci0gIHNy
dHBfY2lwaGVyX3R5cGVfaWRfdCBjaXBoZXJfdHlwZTsgICAgLyoqPCBBbiBpbnRlZ2VyIHJlcHJl
c2VudGluZwotCQkJCSAgICAgICAgICogICB0aGUgdHlwZSBvZiBjaXBoZXIuICAqLwotICBpbnQg
ICAgICAgICAgICAgIGNpcGhlcl9rZXlfbGVuOyAvKio8IFRoZSBsZW5ndGggb2YgdGhlIGNpcGhl
ciBrZXkKLQkJCQkgICAgKiAgIGluIG9jdGV0cy4gICAgICAgICAgICAgICAgICAgICAgICovCi0g
IHNydHBfYXV0aF90eXBlX2lkX3QgICBhdXRoX3R5cGU7ICAgICAgLyoqPCBBbiBpbnRlZ2VyIHJl
cHJlc2VudGluZyB0aGUKLQkJCQkgICAgICAgICAqICAgYXV0aGVudGljYXRpb24gZnVuY3Rpb24u
ICAgICAgICAgKi8KLSAgaW50ICAgICAgICAgICAgICBhdXRoX2tleV9sZW47ICAgLyoqPCBUaGUg
bGVuZ3RoIG9mIHRoZSBhdXRoZW50aWNhdGlvbiAKLQkJCQkgICAgKiAgIGZ1bmN0aW9uIGtleSBp
biBvY3RldHMuICAgICAgICAgICovCi0gIGludCAgICAgICAgICAgICAgYXV0aF90YWdfbGVuOyAg
IC8qKjwgVGhlIGxlbmd0aCBvZiB0aGUgYXV0aGVudGljYXRpb24gCi0JCQkJICAgICogICB0YWcg
aW4gb2N0ZXRzLiAgICAgICAgICAgICAgICAgICAqLwotICBzcnRwX3NlY19zZXJ2X3QgIHNlY19z
ZXJ2OyAgICAgICAvKio8IFRoZSBmbGFnIGluZGljYXRpbmcgdGhlIHNlY3VyaXR5Ci0JCQkJICAg
ICogICBzZXJ2aWNlcyB0byBiZSBhcHBsaWVkLiAgICAgICAgICAqLworICAgIHNydHBfY2lwaGVy
X3R5cGVfaWRfdCBjaXBoZXJfdHlwZTsgLyoqPCBBbiBpbnRlZ2VyIHJlcHJlc2VudGluZyAgICAg
ICAgICAqLworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyoqPCB0aGUg
dHlwZSBvZiBjaXBoZXIuICAgICAgICAgICAgICAqLworICAgIGludCBjaXBoZXJfa2V5X2xlbjsg
ICAgICAgICAgICAgICAgLyoqPCBUaGUgbGVuZ3RoIG9mIHRoZSBjaXBoZXIga2V5ICAgICAqLwor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyoqPCBpbiBvY3RldHMuICAg
ICAgICAgICAgICAgICAgICAgICAqLworICAgIHNydHBfYXV0aF90eXBlX2lkX3QgYXV0aF90eXBl
OyAgICAgLyoqPCBBbiBpbnRlZ2VyIHJlcHJlc2VudGluZyB0aGUgICAgICAqLworICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyoqPCBhdXRoZW50aWNhdGlvbiBmdW5jdGlv
bi4gICAgICAgICAqLworICAgIGludCBhdXRoX2tleV9sZW47ICAgICAgICAgICAgICAgICAgLyoq
PCBUaGUgbGVuZ3RoIG9mIHRoZSBhdXRoZW50aWNhdGlvbiAqLworICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgLyoqPCBmdW5jdGlvbiBrZXkgaW4gb2N0ZXRzLiAgICAgICAg
ICAqLworICAgIGludCBhdXRoX3RhZ19sZW47ICAgICAgICAgICAgICAgICAgLyoqPCBUaGUgbGVu
Z3RoIG9mIHRoZSBhdXRoZW50aWNhdGlvbiAqLworICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgLyoqPCB0YWcgaW4gb2N0ZXRzLiAgICAgICAgICAgICAgICAgICAqLworICAg
IHNydHBfc2VjX3NlcnZfdCBzZWNfc2VydjsgICAgICAgICAgLyoqPCBUaGUgZmxhZyBpbmRpY2F0
aW5nIHRoZSBzZWN1cml0eSAqLworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgLyoqPCBzZXJ2aWNlcyB0byBiZSBhcHBsaWVkLiAgICAgICAgICAqLwogfSBzcnRwX2NyeXB0
b19wb2xpY3lfdDsKIAotCi0vKiogCisvKioKICAqIEBicmllZiBzcnRwX3NzcmNfdHlwZV90IGRl
c2NyaWJlcyB0aGUgdHlwZSBvZiBhbiBTU1JDLgotICogCisgKgogICogQW4gc3J0cF9zc3JjX3R5
cGVfdCBlbnVtZXJhdGlvbiBpcyB1c2VkIHRvIGluZGljYXRlIGEgdHlwZSBvZiBTU1JDLiAgU2Vl
CiAgKiBAcmVmIHNydHBfcG9saWN5X3QgZm9yIG1vcmUgaW5mb3JtYXRhaW9uLgogICovCi0KLXR5
cGVkZWYgZW51bSB7IAotICBzc3JjX3VuZGVmaW5lZCAgICA9IDAsICAvKio8IEluZGljYXRlcyBh
biB1bmRlZmluZWQgU1NSQyB0eXBlLiAqLwotICBzc3JjX3NwZWNpZmljICAgICA9IDEsICAvKio8
IEluZGljYXRlcyBhIHNwZWNpZmljIFNTUkMgdmFsdWUgICAqLwotICBzc3JjX2FueV9pbmJvdW5k
ICA9IDIsIC8qKjwgSW5kaWNhdGVzIGFueSBpbmJvdW5kIFNTUkMgdmFsdWUgCi0JCQkgICAgKGku
ZS4gYSB2YWx1ZSB0aGF0IGlzIHVzZWQgaW4gdGhlCi0JCQkgICAgZnVuY3Rpb24gc3J0cF91bnBy
b3RlY3QoKSkgICAgICAgICAgICAgICovCi0gIHNzcmNfYW55X291dGJvdW5kID0gMyAgLyoqPCBJ
bmRpY2F0ZXMgYW55IG91dGJvdW5kIFNTUkMgdmFsdWUgCi0JCQkgICAgKGkuZS4gYSB2YWx1ZSB0
aGF0IGlzIHVzZWQgaW4gdGhlIAotCQkJICAgIGZ1bmN0aW9uIHNydHBfcHJvdGVjdCgpKQkJICAq
LwordHlwZWRlZiBlbnVtIHsKKyAgICBzc3JjX3VuZGVmaW5lZCA9IDAsICAgLyoqPCBJbmRpY2F0
ZXMgYW4gdW5kZWZpbmVkIFNTUkMgdHlwZS4gICAgKi8KKyAgICBzc3JjX3NwZWNpZmljID0gMSwg
ICAgLyoqPCBJbmRpY2F0ZXMgYSBzcGVjaWZpYyBTU1JDIHZhbHVlICAgICAgKi8KKyAgICBzc3Jj
X2FueV9pbmJvdW5kID0gMiwgLyoqPCBJbmRpY2F0ZXMgYW55IGluYm91bmQgU1NSQyB2YWx1ZSAg
ICAgKi8KKyAgICAgICAgICAgICAgICAgICAgICAgICAgLyoqPCAoaS5lLiBhIHZhbHVlIHRoYXQg
aXMgdXNlZCBpbiB0aGUgICAgKi8KKyAgICAgICAgICAgICAgICAgICAgICAgICAgLyoqPCBmdW5j
dGlvbiBzcnRwX3VucHJvdGVjdCgpKSAgICAgICAgICAgKi8KKyAgICBzc3JjX2FueV9vdXRib3Vu
ZCA9IDMgLyoqPCBJbmRpY2F0ZXMgYW55IG91dGJvdW5kIFNTUkMgdmFsdWUgICAgKi8KKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgLyoqPCAoaS5lLiBhIHZhbHVlIHRoYXQgaXMgdXNlZCBpbiB0
aGUgICAgKi8KKyAgICAgICAgICAgICAgICAgICAgICAgICAgLyoqPCBmdW5jdGlvbiBzcnRwX3By
b3RlY3QoKSkgICAgICAgICAgICAgKi8KIH0gc3J0cF9zc3JjX3R5cGVfdDsKIAogLyoqCi0gKiBA
YnJpZWYgQW4gc3J0cF9zc3JjX3QgcmVwcmVzZW50cyBhIHBhcnRpY3VsYXIgU1NSQyB2YWx1ZSwg
b3IgYSBgd2lsZGNhcmQnIFNTUkMuCi0gKiAKKyAqIEBicmllZiBBbiBzcnRwX3NzcmNfdCByZXBy
ZXNlbnRzIGEgcGFydGljdWxhciBTU1JDIHZhbHVlLCBvciBhIGB3aWxkY2FyZCcKKyAqIFNTUkMu
CisgKgogICogQW4gc3J0cF9zc3JjX3QgcmVwcmVzZW50cyBhIHBhcnRpY3VsYXIgU1NSQyB2YWx1
ZSAoaWYgaXRzIHR5cGUgaXMKICAqIHNzcmNfc3BlY2lmaWMpLCBvciBhIHdpbGRjYXJkIFNTUkMg
dmFsdWUgdGhhdCB3aWxsIG1hdGNoIGFsbAogICogb3V0Ym91bmQgU1NSQ3MgKGlmIGl0cyB0eXBl
IGlzIHNzcmNfYW55X291dGJvdW5kKSBvciBhbGwgaW5ib3VuZAotICogU1NSQ3MgKGlmIGl0cyB0
eXBlIGlzIHNzcmNfYW55X2luYm91bmQpLiAgCi0gKgorICogU1NSQ3MgKGlmIGl0cyB0eXBlIGlz
IHNzcmNfYW55X2luYm91bmQpLgogICovCi0KLXR5cGVkZWYgc3RydWN0IHsgCi0gIHNydHBfc3Ny
Y190eXBlX3QgdHlwZTsgIC8qKjwgVGhlIHR5cGUgb2YgdGhpcyBwYXJ0aWN1bGFyIFNTUkMgKi8K
LSAgdW5zaWduZWQgaW50ICAgICB2YWx1ZTsgLyoqPCBUaGUgdmFsdWUgb2YgdGhpcyBTU1JDLCBp
ZiBpdCBpcyBub3QgYSB3aWxkY2FyZCAqLwordHlwZWRlZiBzdHJ1Y3QgeworICAgIHNydHBfc3Ny
Y190eXBlX3QgdHlwZTsgLyoqPCBUaGUgdHlwZSBvZiB0aGlzIHBhcnRpY3VsYXIgU1NSQyAqLwor
ICAgIHVuc2lnbmVkIGludCB2YWx1ZTsgICAgLyoqPCBUaGUgdmFsdWUgb2YgdGhpcyBTU1JDLCBp
ZiBpdCBpcyBub3QgYSAqLworICAgICAgICAgICAgICAgICAgICAgICAgICAgLyoqPCB3aWxkY2Fy
ZCAqLwogfSBzcnRwX3NzcmNfdDsKIAotCiAvKioKICAqIEBicmllZiBwb2ludHMgdG8gYW4gRUtU
IHBvbGljeQogICovCiB0eXBlZGVmIHN0cnVjdCBzcnRwX2VrdF9wb2xpY3lfY3R4X3QgKnNydHBf
ZWt0X3BvbGljeV90OwogCi0KIC8qKgogICogQGJyaWVmIHBvaW50cyB0byBFS1Qgc3RyZWFtIGRh
dGEKICAqLwpAQCAtMjg1LDEzICsyODcsMTMgQEAgdHlwZWRlZiBzdHJ1Y3Qgc3J0cF9la3Rfc3Ry
ZWFtX2N0eF90ICpzcnRwX2VrdF9zdHJlYW1fdDsKICAqIEluZGV4IFNpemUgdG8gY29ycmVjdGx5
IHJlYWQgaXQgZnJvbSBhIHBhY2tldC4KICAqLwogdHlwZWRlZiBzdHJ1Y3Qgc3J0cF9tYXN0ZXJf
a2V5X3QgewotICB1bnNpZ25lZCBjaGFyICprZXk7Ci0gIHVuc2lnbmVkIGNoYXIgKm1raV9pZDsK
LSAgdW5zaWduZWQgaW50IG1raV9zaXplOworICAgIHVuc2lnbmVkIGNoYXIgKmtleTsKKyAgICB1
bnNpZ25lZCBjaGFyICpta2lfaWQ7CisgICAgdW5zaWduZWQgaW50IG1raV9zaXplOwogfSBzcnRw
X21hc3Rlcl9rZXlfdDsKIAotLyoqIAotICogQGJyaWVmIHJlcHJlc2VudHMgdGhlIHBvbGljeSBm
b3IgYW4gU1JUUCBzZXNzaW9uLiAgCisvKioKKyAqIEBicmllZiByZXByZXNlbnRzIHRoZSBwb2xp
Y3kgZm9yIGFuIFNSVFAgc2Vzc2lvbi4KICAqCiAgKiBBIHNpbmdsZSBzcnRwX3BvbGljeV90IHN0
cnVjdCByZXByZXNlbnRzIHRoZSBwb2xpY3kgZm9yIGEgc2luZ2xlCiAgKiBTUlRQIHN0cmVhbSwg
YW5kIGEgbGlua2VkIGxpc3Qgb2YgdGhlc2UgZWxlbWVudHMgcmVwcmVzZW50cyB0aGUKQEAgLTMw
MCw3ICszMDIsNyBAQCB0eXBlZGVmIHN0cnVjdCBzcnRwX21hc3Rlcl9rZXlfdCB7CiAgKiBtYXN0
ZXIga2V5IGZvciB0aGF0IHN0cmVhbSwgdGhlIFNTUkMgZGVzY3JpYmluZyB0aGF0IHN0cmVhbSwg
b3IgYQogICogZmxhZyBpbmRpY2F0aW5nIGEgYHdpbGRjYXJkJyBTU1JDIHZhbHVlLCBhbmQgYSBg
bmV4dCcgZmllbGQgdGhhdAogICogaG9sZHMgYSBwb2ludGVyIHRvIHRoZSBuZXh0IGVsZW1lbnQg
aW4gdGhlIGxpc3Qgb2YgcG9saWN5IGVsZW1lbnRzLAotICogb3IgTlVMTCBpZiBpdCBpcyB0aGUg
bGFzdCBlbGVtZW50LiAKKyAqIG9yIE5VTEwgaWYgaXQgaXMgdGhlIGxhc3QgZWxlbWVudC4KICAq
CiAgKiBUaGUgd2lsZGNhcmQgdmFsdWUgU1NSQ19BTllfSU5CT1VORCBtYXRjaGVzIGFueSBTU1JD
IGZyb20gYW4KICAqIGluYm91bmQgc3RyZWFtIHRoYXQgZm9yIHdoaWNoIHRoZXJlIGlzIG5vIGV4
cGxpY2l0IFNTUkMgZW50cnkgaW4KQEAgLTMxMSw0NyArMzEzLDQ0IEBAIHR5cGVkZWYgc3RydWN0
IHNydHBfbWFzdGVyX2tleV90IHsKICAqIGlzIGludGVudGlvbmFsLCBhbmQgaXQgYWxsb3dzIGxp
YlNSVFAgdG8gZW5zdXJlIHRoYXQgbm8gc2VjdXJpdHkKICAqIGxhcHNlcyByZXN1bHQgZnJvbSBh
Y2NpZGVudGFsIHJlLXVzZSBvZiBTU1JDIHZhbHVlcyBkdXJpbmcga2V5CiAgKiBzaGFyaW5nLgot
ICogCi0gKiAKKyAqCiAgKiBAd2FybmluZyBUaGUgZmluYWwgZWxlbWVudCBvZiB0aGUgbGlzdCBA
YiBtdXN0IGhhdmUgaXRzIGBuZXh0JyBwb2ludGVyCiAgKiAgICAgICAgICBzZXQgdG8gTlVMTC4K
ICAqLwogCiB0eXBlZGVmIHN0cnVjdCBzcnRwX3BvbGljeV90IHsKLSAgc3J0cF9zc3JjX3QgICBz
c3JjOyAgICAgICAgLyoqPCBUaGUgU1NSQyB2YWx1ZSBvZiBzdHJlYW0sIG9yIHRoZSAKLQkJCSAg
ICAgICogICBmbGFncyBTU1JDX0FOWV9JTkJPVU5EIG9yIAotCQkJICAgICAgKiAgIFNTUkNfQU5Z
X09VVEJPVU5EIGlmIGtleSBzaGFyaW5nCi0JCQkgICAgICAqICAgaXMgdXNlZCBmb3IgdGhpcyBw
b2xpY3kgZWxlbWVudC4KLQkJCSAgICAgICovCi0gIHNydHBfY3J5cHRvX3BvbGljeV90IHJ0cDsg
ICAgLyoqPCBTUlRQIGNyeXB0byBwb2xpY3kuICAgICAgICAgICAgICAgICAgKi8KLSAgc3J0cF9j
cnlwdG9fcG9saWN5X3QgcnRjcDsgICAvKio8IFNSVENQIGNyeXB0byBwb2xpY3kuICAgICAgICAg
ICAgICAgICAqLwotICB1bnNpZ25lZCBjaGFyICprZXk7ICAgICAgICAgIC8qKjwgUG9pbnRlciB0
byB0aGUgU1JUUCBtYXN0ZXIga2V5IGZvcgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAqICAgIHRoaXMgc3RyZWFtLiAgICAgICAgICAgICAgICAgICAgICAgICovCi0gIHNydHBfbWFz
dGVyX2tleV90ICoqa2V5czsgICAgLyoqIEFycmF5IG9mIE1hc3RlciBLZXkgc3RydWN0dXJlcyAq
LwotICB1bnNpZ25lZCBsb25nIG51bV9tYXN0ZXJfa2V5czsgIC8qKiBOdW1iZXIgb2YgbWFzdGVy
IGtleXMgICAgICAgICAgICAqLwotICBzcnRwX2VrdF9wb2xpY3lfdCBla3Q7ICAgICAgIC8qKjwg
UG9pbnRlciB0byB0aGUgRUtUIHBvbGljeSBzdHJ1Y3R1cmUKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgKiAgIGZvciB0aGlzIHN0cmVhbSAoaWYgYW55KSAgICAgICAgICAgICAqLyAK
LSAgdW5zaWduZWQgbG9uZyB3aW5kb3dfc2l6ZTsgICAvKio8IFRoZSB3aW5kb3cgc2l6ZSB0byB1
c2UgZm9yIHJlcGxheQotCQkJCSogICBwcm90ZWN0aW9uLiAqLwotICBpbnQgICAgICAgIGFsbG93
X3JlcGVhdF90eDsgIC8qKjwgV2hldGhlciByZXRyYW5zbWlzc2lvbnMgb2YKLQkJCQkqICAgcGFj
a2V0cyB3aXRoIHRoZSBzYW1lIHNlcXVlbmNlIG51bWJlcgotCQkJCSogICBhcmUgYWxsb3dlZC4g
IChOb3RlIHRoYXQgc3VjaCByZXBlYXRlZAotCQkJCSogICB0cmFuc21pc3Npb25zIG11c3QgaGF2
ZSB0aGUgc2FtZSBSVFAKLQkJCQkqICAgcGF5bG9hZCwgb3IgYSBzZXZlcmUgc2VjdXJpdHkgd2Vh
a25lc3MKLQkJCQkqICAgaXMgaW50cm9kdWNlZCEpICAgICAgICAgICAgICAgICAgICAgICovCi0g
IGludCAqZW5jX3h0bl9oZHI7ICAgICAgICAgICAgLyoqPCBMaXN0IG9mIGhlYWRlciBpZHMgdG8g
ZW5jcnlwdC4gICAgICAgKi8KLSAgaW50IGVuY194dG5faGRyX2NvdW50OyAgICAgICAvKio8IE51
bWJlciBvZiBlbnRyaWVzIGluIGxpc3Qgb2YgaGVhZGVyIGlkcy4gKi8KLSAgc3RydWN0IHNydHBf
cG9saWN5X3QgKm5leHQ7ICAvKio8IFBvaW50ZXIgdG8gbmV4dCBzdHJlYW0gcG9saWN5LiAgICAg
ICAqLworICAgIHNydHBfc3NyY190IHNzcmM7ICAgICAgICAgICAgICAvKio8IFRoZSBTU1JDIHZh
bHVlIG9mIHN0cmVhbSwgb3IgdGhlICAgICovCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIC8qKjwgZmxhZ3MgU1NSQ19BTllfSU5CT1VORCBvciAgICAgICAgICAgKi8KKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyoqPCBTU1JDX0FOWV9PVVRCT1VORCBpZiBr
ZXkgc2hhcmluZyAgICAqLworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKio8
IGlzIHVzZWQgZm9yIHRoaXMgcG9saWN5IGVsZW1lbnQuICAgICovCisgICAgc3J0cF9jcnlwdG9f
cG9saWN5X3QgcnRwOyAgICAgIC8qKjwgU1JUUCBjcnlwdG8gcG9saWN5LiAgICAgICAgICAgICAg
ICAgKi8KKyAgICBzcnRwX2NyeXB0b19wb2xpY3lfdCBydGNwOyAgICAgLyoqPCBTUlRDUCBjcnlw
dG8gcG9saWN5LiAgICAgICAgICAgICAgICAqLworICAgIHVuc2lnbmVkIGNoYXIgKmtleTsgICAg
ICAgICAgICAvKio8IFBvaW50ZXIgdG8gdGhlIFNSVFAgbWFzdGVyIGtleSBmb3IgICovCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qKjwgdGhpcyBzdHJlYW0uICAgICAgICAg
ICAgICAgICAgICAgICAgKi8KKyAgICBzcnRwX21hc3Rlcl9rZXlfdCAqKmtleXM7ICAgICAgLyoq
IEFycmF5IG9mIE1hc3RlciBLZXkgc3RydWN0dXJlcyAgICAgICAqLworICAgIHVuc2lnbmVkIGxv
bmcgbnVtX21hc3Rlcl9rZXlzOyAvKiogTnVtYmVyIG9mIG1hc3RlciBrZXlzICAgICAgICAgICAg
ICAgICovCisgICAgc3J0cF9la3RfcG9saWN5X3QgZWt0OyAgICAgICAgIC8qKjwgUG9pbnRlciB0
byB0aGUgRUtUIHBvbGljeSBzdHJ1Y3R1cmUgKi8KKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgLyoqPCBmb3IgdGhpcyBzdHJlYW0gKGlmIGFueSkgICAgICAgICAgICAqLworICAg
IHVuc2lnbmVkIGxvbmcgd2luZG93X3NpemU7ICAgICAvKio8IFRoZSB3aW5kb3cgc2l6ZSB0byB1
c2UgZm9yIHJlcGxheSAgICovCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8q
KjwgcHJvdGVjdGlvbi4gICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBpbnQgYWxsb3df
cmVwZWF0X3R4OyAgICAgICAgICAgLyoqPCBXaGV0aGVyIHJldHJhbnNtaXNzaW9ucyBvZiAgICAg
ICAgICAqLworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKio8IHBhY2tldHMg
d2l0aCB0aGUgc2FtZSBzZXF1ZW5jZSAgICAgICovCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qKjwgbnVtYmVyIGFyZSBhbGxvd2VkLiAgICAgICAgICAgICAgICAgKi8KKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyoqPCAoTm90ZSB0aGF0IHN1Y2ggcmVw
ZWF0ZWQgICAgICAgICAgICAqLworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAv
Kio8IHRyYW5zbWlzc2lvbnMgbXVzdCBoYXZlIHRoZSBzYW1lICAgICovCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qKjwgUlRQIHBheWxvYWQsIG9yIGEgc2V2ZXJlIHNlY3Vy
aXR5ICAgKi8KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyoqPCB3ZWFrbmVz
cyBpcyBpbnRyb2R1Y2VkISkgICAgICAgICAgICAqLworICAgIGludCAqZW5jX3h0bl9oZHI7ICAg
ICAgICAgICAgICAvKio8IExpc3Qgb2YgaGVhZGVyIGlkcyB0byBlbmNyeXB0LiAgICAgICovCisg
ICAgaW50IGVuY194dG5faGRyX2NvdW50OyAgICAgICAgIC8qKjwgTnVtYmVyIG9mIGVudHJpZXMg
aW4gbGlzdCBvZiBoZWFkZXIgKi8KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
LyoqPCAgaWRzLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIHN0cnVjdCBz
cnRwX3BvbGljeV90ICpuZXh0OyAgICAvKio8IFBvaW50ZXIgdG8gbmV4dCBzdHJlYW0gcG9saWN5
LiAgICAgICovCiB9IHNydHBfcG9saWN5X3Q7CiAKLQotCi0KIC8qKgogICogQGJyaWVmIEFuIHNy
dHBfdCBwb2ludHMgdG8gYW4gU1JUUCBzZXNzaW9uIHN0cnVjdHVyZS4KICAqCiAgKiBUaGUgdHlw
ZWRlZiBzcnRwX3QgaXMgYSBwb2ludGVyIHRvIGEgc3RydWN0dXJlIHRoYXQgcmVwcmVzZW50cwot
ICogYW4gU1JUUCBzZXNzaW9uLiAgVGhpcyBkYXRhdHlwZSBpcyBpbnRlbnRpYWxseSBvcGFxdWUg
aW4gCisgKiBhbiBTUlRQIHNlc3Npb24uICBUaGlzIGRhdGF0eXBlIGlzIGludGVudGlhbGx5IG9w
YXF1ZSBpbgogICogb3JkZXIgdG8gc2VwYXJhdGUgdGhlIGludGVyZmFjZSBmcm9tIHRoZSBpbXBs
ZW1lbnRhdGlvbi4KICAqCiAgKiBBbiBTUlRQIHNlc3Npb24gY29uc2lzdHMgb2YgYWxsIG9mIHRo
ZSB0cmFmZmljIHNlbnQgdG8gdGhlIFJUUCBhbmQKQEAgLTM1OSwxNyArMzU4LDE0IEBAIHR5cGVk
ZWYgc3RydWN0IHNydHBfcG9saWN5X3QgewogICogQXVkaW8vVmlkZW8gUHJvZmlsZSkuICBBIHNl
c3Npb24gY2FuIGJlIHZpZXdlZCBhcyBhIHNldCBvZiBTUlRQCiAgKiBzdHJlYW1zLCBlYWNoIG9m
IHdoaWNoIG9yaWdpbmF0ZXMgd2l0aCBhIGRpZmZlcmVudCBwYXJ0aWNpcGFudC4KICAqLwotCiB0
eXBlZGVmIHNydHBfY3R4X3QgKnNydHBfdDsKIAotCiAvKioKLSAqIEBicmllZiBzcnRwX2luaXQo
KSBpbml0aWFsaXplcyB0aGUgc3J0cCBsaWJyYXJ5LiAgCisgKiBAYnJpZWYgc3J0cF9pbml0KCkg
aW5pdGlhbGl6ZXMgdGhlIHNydHAgbGlicmFyeS4KICAqCiAgKiBAd2FybmluZyBUaGlzIGZ1bmN0
aW9uIEBiIG11c3QgYmUgY2FsbGVkIGJlZm9yZSBhbnkgb3RoZXIgc3J0cAogICogZnVuY3Rpb25z
LgogICovCi0KIHNydHBfZXJyX3N0YXR1c190IHNydHBfaW5pdCh2b2lkKTsKIAogLyoqCkBAIC0z
NzcsMjAgKzM3MywxOSBAQCBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2luaXQodm9pZCk7CiAgKgog
ICogQHdhcm5pbmcgTm8gc3J0cCBmdW5jdGlvbnMgbWF5IGJlIGNhbGxlZCBhZnRlciBjYWxsaW5n
IHRoaXMgZnVuY3Rpb24uCiAgKi8KLQogc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9zaHV0ZG93bih2
b2lkKTsKIAogLyoqCiAgKiBAYnJpZWYgc3J0cF9wcm90ZWN0KCkgaXMgdGhlIFNlY3VyZSBSVFAg
c2VuZGVyLXNpZGUgcGFja2V0IHByb2Nlc3NpbmcKICAqIGZ1bmN0aW9uLgotICogCisgKgogICog
VGhlIGZ1bmN0aW9uIGNhbGwgc3J0cF9wcm90ZWN0KGN0eCwgcnRwX2hkciwgbGVuX3B0cikgYXBw
bGllcyBTUlRQCiAgKiBwcm90ZWN0aW9uIHRvIHRoZSBSVFAgcGFja2V0IHJ0cF9oZHIgKHdoaWNo
IGhhcyBsZW5ndGggKmxlbl9wdHIpIHVzaW5nCiAgKiB0aGUgU1JUUCBjb250ZXh0IGN0eC4gIElm
IHNydHBfZXJyX3N0YXR1c19vayBpcyByZXR1cm5lZCwgdGhlbiBydHBfaGRyCiAgKiBwb2ludHMg
dG8gdGhlIHJlc3VsdGluZyBTUlRQIHBhY2tldCBhbmQgKmxlbl9wdHIgaXMgdGhlIG51bWJlciBv
ZgogICogb2N0ZXRzIGluIHRoYXQgcGFja2V0OyBvdGhlcndpc2UsIG5vIGFzc3VtcHRpb25zIHNo
b3VsZCBiZSBtYWRlCiAgKiBhYm91dCB0aGUgdmFsdWUgb2YgZWl0aGVyIGRhdGEgZWxlbWVudHMu
Ci0gKiAKKyAqCiAgKiBUaGUgc2VxdWVuY2UgbnVtYmVycyBvZiB0aGUgUlRQIHBhY2tldHMgcHJl
c2VudGVkIHRvIHRoaXMgZnVuY3Rpb24KICAqIG5lZWQgbm90IGJlIGNvbnNlY3V0aXZlLCBidXQg
dGhleSBAYiBtdXN0IGJlIG91dCBvZiBvcmRlciBieSBsZXNzCiAgKiB0aGFuIDJeMTUgPSAzMiw3
NjggcGFja2V0cy4KQEAgLTQwMCwxMSArMzk1LDExIEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBf
c2h1dGRvd24odm9pZCk7CiAgKiBwYWNrZXQsIGFuZCBhc3N1bWVzIHRoYXQgdGhlIFJUUCBwYWNr
ZXQgaXMgYWxpZ25lZCBvbiBhIDMyLWJpdAogICogYm91bmRhcnkuCiAgKgotICogQHdhcm5pbmcg
VGhpcyBmdW5jdGlvbiBhc3N1bWVzIHRoYXQgaXQgY2FuIHdyaXRlIFNSVFBfTUFYX1RSQUlMRVJf
TEVOIAotICogaW50byB0aGUgbG9jYXRpb24gaW4gbWVtb3J5IGltbWVkaWF0ZWx5IGZvbGxvd2lu
ZyB0aGUgUlRQIHBhY2tldC4gICAKLSAqIENhbGxlcnMgTVVTVCBlbnN1cmUgdGhhdCB0aGlzIG11
Y2ggd3JpdGFibGUgbWVtb3J5IGlzIGF2YWlsYWJsZSBpbiAKKyAqIEB3YXJuaW5nIFRoaXMgZnVu
Y3Rpb24gYXNzdW1lcyB0aGF0IGl0IGNhbiB3cml0ZSBTUlRQX01BWF9UUkFJTEVSX0xFTgorICog
aW50byB0aGUgbG9jYXRpb24gaW4gbWVtb3J5IGltbWVkaWF0ZWx5IGZvbGxvd2luZyB0aGUgUlRQ
IHBhY2tldC4KKyAqIENhbGxlcnMgTVVTVCBlbnN1cmUgdGhhdCB0aGlzIG11Y2ggd3JpdGFibGUg
bWVtb3J5IGlzIGF2YWlsYWJsZSBpbgogICogdGhlIGJ1ZmZlciB0aGF0IGhvbGRzIHRoZSBSVFAg
cGFja2V0LgotICogCisgKgogICogQHBhcmFtIGN0eCBpcyB0aGUgU1JUUCBjb250ZXh0IHRvIHVz
ZSBpbiBwcm9jZXNzaW5nIHRoZSBwYWNrZXQuCiAgKgogICogQHBhcmFtIHJ0cF9oZHIgaXMgYSBw
b2ludGVyIHRvIHRoZSBSVFAgcGFja2V0IChiZWZvcmUgdGhlIGNhbGwpOyBhZnRlcgpAQCAtNDE1
LDI1ICs0MTAsMjQgQEAgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9zaHV0ZG93bih2b2lkKTsKICAq
IGNvbXBsZXRlIFNSVFAgcGFja2V0IGFmdGVyIHRoZSBjYWxsLCBpZiBzcnRwX2Vycl9zdGF0dXNf
b2sgd2FzIHJldHVybmVkLgogICogT3RoZXJ3aXNlLCB0aGUgdmFsdWUgb2YgdGhlIGRhdGEgdG8g
d2hpY2ggaXQgcG9pbnRzIGlzIHVuZGVmaW5lZC4KICAqCi0gKiBAcmV0dXJuIAorICogQHJldHVy
bgogICogICAgLSBzcnRwX2Vycl9zdGF0dXNfb2sgICAgICAgICAgICBubyBwcm9ibGVtcwogICog
ICAgLSBzcnRwX2Vycl9zdGF0dXNfcmVwbGF5X2ZhaWwgICBydHAgc2VxdWVuY2UgbnVtYmVyIHdh
cyBub24taW5jcmVhc2luZwogICogICAgLSBAZSBvdGhlciAgICAgICAgICAgICAgICAgZmFpbHVy
ZSBpbiBjcnlwdG9ncmFwaGljIG1lY2hhbmlzbXMKICAqLwotCiBzcnRwX2Vycl9zdGF0dXNfdCBz
cnRwX3Byb3RlY3Qoc3J0cF90IGN0eCwgdm9pZCAqcnRwX2hkciwgaW50ICpsZW5fcHRyKTsKIAog
LyoqCiAgKiBAYnJpZWYgc3J0cF9wcm90ZWN0X21raSgpIGlzIHRoZSBTZWN1cmUgUlRQIHNlbmRl
ci1zaWRlIHBhY2tldCBwcm9jZXNzaW5nCiAgKiBmdW5jdGlvbiB0aGF0IGNhbiB1dGlsaXplIE1L
SS4KLSAqIAorICoKICAqIFRoZSBmdW5jdGlvbiBjYWxsIHNydHBfcHJvdGVjdChjdHgsIHJ0cF9o
ZHIsIGxlbl9wdHIpIGFwcGxpZXMgU1JUUAogICogcHJvdGVjdGlvbiB0byB0aGUgUlRQIHBhY2tl
dCBydHBfaGRyICh3aGljaCBoYXMgbGVuZ3RoICpsZW5fcHRyKSB1c2luZwogICogdGhlIFNSVFAg
Y29udGV4dCBjdHguICBJZiBzcnRwX2Vycl9zdGF0dXNfb2sgaXMgcmV0dXJuZWQsIHRoZW4gcnRw
X2hkcgogICogcG9pbnRzIHRvIHRoZSByZXN1bHRpbmcgU1JUUCBwYWNrZXQgYW5kICpsZW5fcHRy
IGlzIHRoZSBudW1iZXIgb2YKICAqIG9jdGV0cyBpbiB0aGF0IHBhY2tldDsgb3RoZXJ3aXNlLCBu
byBhc3N1bXB0aW9ucyBzaG91bGQgYmUgbWFkZQogICogYWJvdXQgdGhlIHZhbHVlIG9mIGVpdGhl
ciBkYXRhIGVsZW1lbnRzLgotICogCisgKgogICogVGhlIHNlcXVlbmNlIG51bWJlcnMgb2YgdGhl
IFJUUCBwYWNrZXRzIHByZXNlbnRlZCB0byB0aGlzIGZ1bmN0aW9uCiAgKiBuZWVkIG5vdCBiZSBj
b25zZWN1dGl2ZSwgYnV0IHRoZXkgQGIgbXVzdCBiZSBvdXQgb2Ygb3JkZXIgYnkgbGVzcwogICog
dGhhbiAyXjE1ID0gMzIsNzY4IHBhY2tldHMuCkBAIC00NDMsMTEgKzQzNywxMSBAQCBzcnRwX2Vy
cl9zdGF0dXNfdCBzcnRwX3Byb3RlY3Qoc3J0cF90IGN0eCwgdm9pZCAqcnRwX2hkciwgaW50ICps
ZW5fcHRyKTsKICAqIHBhY2tldCwgYW5kIGFzc3VtZXMgdGhhdCB0aGUgUlRQIHBhY2tldCBpcyBh
bGlnbmVkIG9uIGEgMzItYml0CiAgKiBib3VuZGFyeS4KICAqCi0gKiBAd2FybmluZyBUaGlzIGZ1
bmN0aW9uIGFzc3VtZXMgdGhhdCBpdCBjYW4gd3JpdGUgU1JUUF9NQVhfVFJBSUxFUl9MRU4gCi0g
KiBpbnRvIHRoZSBsb2NhdGlvbiBpbiBtZW1vcnkgaW1tZWRpYXRlbHkgZm9sbG93aW5nIHRoZSBS
VFAgcGFja2V0LiAgIAotICogQ2FsbGVycyBNVVNUIGVuc3VyZSB0aGF0IHRoaXMgbXVjaCB3cml0
YWJsZSBtZW1vcnkgaXMgYXZhaWxhYmxlIGluIAorICogQHdhcm5pbmcgVGhpcyBmdW5jdGlvbiBh
c3N1bWVzIHRoYXQgaXQgY2FuIHdyaXRlIFNSVFBfTUFYX1RSQUlMRVJfTEVOCisgKiBpbnRvIHRo
ZSBsb2NhdGlvbiBpbiBtZW1vcnkgaW1tZWRpYXRlbHkgZm9sbG93aW5nIHRoZSBSVFAgcGFja2V0
LgorICogQ2FsbGVycyBNVVNUIGVuc3VyZSB0aGF0IHRoaXMgbXVjaCB3cml0YWJsZSBtZW1vcnkg
aXMgYXZhaWxhYmxlIGluCiAgKiB0aGUgYnVmZmVyIHRoYXQgaG9sZHMgdGhlIFJUUCBwYWNrZXQu
Ci0gKiAKKyAqCiAgKiBAcGFyYW0gY3R4IGlzIHRoZSBTUlRQIGNvbnRleHQgdG8gdXNlIGluIHBy
b2Nlc3NpbmcgdGhlIHBhY2tldC4KICAqCiAgKiBAcGFyYW0gcnRwX2hkciBpcyBhIHBvaW50ZXIg
dG8gdGhlIFJUUCBwYWNrZXQgKGJlZm9yZSB0aGUgY2FsbCk7IGFmdGVyCkBAIC00NTgsMjEgKzQ1
MiwyMyBAQCBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3Byb3RlY3Qoc3J0cF90IGN0eCwgdm9pZCAq
cnRwX2hkciwgaW50ICpsZW5fcHRyKTsKICAqIGNvbXBsZXRlIFNSVFAgcGFja2V0IGFmdGVyIHRo
ZSBjYWxsLCBpZiBzcnRwX2Vycl9zdGF0dXNfb2sgd2FzIHJldHVybmVkLgogICogT3RoZXJ3aXNl
LCB0aGUgdmFsdWUgb2YgdGhlIGRhdGEgdG8gd2hpY2ggaXQgcG9pbnRzIGlzIHVuZGVmaW5lZC4K
ICAqCi0gKiBAcGFyYW0gdXNlX21raSBpcyBhIGJvb2xlYW4gdG8gdGVsbCB0aGUgc3lzdGVtIGlm
IG1raSBpcyBiZWluZyB1c2VkLiAgSWYgCi0gKiBzZXQgdG8gZmFsc2UgdGhlbiB3aWxsIHVzZSB0
aGUgZmlyc3Qgc2V0IG9mIHNlc3Npb24ga2V5cy4gIElmIHNldCB0byB0cnVlIHdpbGwKKyAqIEBw
YXJhbSB1c2VfbWtpIGlzIGEgYm9vbGVhbiB0byB0ZWxsIHRoZSBzeXN0ZW0gaWYgbWtpIGlzIGJl
aW5nIHVzZWQuICBJZgorICogc2V0IHRvIGZhbHNlIHRoZW4gd2lsbCB1c2UgdGhlIGZpcnN0IHNl
dCBvZiBzZXNzaW9uIGtleXMuICBJZiBzZXQgdG8gdHJ1ZQorICogd2lsbAogICogdXNlIHRoZSBz
ZXNzaW9uIGtleXMgaWRlbnRpZmllZCBieSB0aGUgbWtpX2luZGV4CiAgKgogICogQHBhcmFtIG1r
aV9pbmRleCBpbnRlZ2VyIHZhbHVlIHNwZWNpZnlpbmcgd2hpY2ggc2V0IG9mIHNlc3Npb24ga2V5
cyBzaG91bGQgYmUKICAqIHVzZWQgaWYgdXNlX21raSBpcyBzZXQgdG8gdHJ1ZS4KICAqCi0gKiBA
cmV0dXJuIAorICogQHJldHVybgogICogICAgLSBzcnRwX2Vycl9zdGF0dXNfb2sgICAgICAgICAg
ICBubyBwcm9ibGVtcwogICogICAgLSBzcnRwX2Vycl9zdGF0dXNfcmVwbGF5X2ZhaWwgICBydHAg
c2VxdWVuY2UgbnVtYmVyIHdhcyBub24taW5jcmVhc2luZwogICogICAgLSBAZSBvdGhlciAgICAg
ICAgICAgICAgICAgZmFpbHVyZSBpbiBjcnlwdG9ncmFwaGljIG1lY2hhbmlzbXMKICAqLwotCi1z
cnRwX2Vycl9zdGF0dXNfdCBzcnRwX3Byb3RlY3RfbWtpKHNydHBfY3R4X3QgKmN0eCwgdm9pZCAq
cnRwX2hkciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50ICpwa3Rfb2N0
ZXRfbGVuLCB1bnNpZ25lZCBpbnQgdXNlX21raSwKK3NydHBfZXJyX3N0YXR1c190IHNydHBfcHJv
dGVjdF9ta2koc3J0cF9jdHhfdCAqY3R4LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB2b2lkICpydHBfaGRyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBp
bnQgKnBrdF9vY3RldF9sZW4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVu
c2lnbmVkIGludCB1c2VfbWtpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1
bnNpZ25lZCBpbnQgbWtpX2luZGV4KTsKIAogLyoqCkBAIC00ODUsMTIgKzQ4MSwxMiBAQCBzcnRw
X2Vycl9zdGF0dXNfdCBzcnRwX3Byb3RlY3RfbWtpKHNydHBfY3R4X3QgKmN0eCwgdm9pZCAqcnRw
X2hkciwKICAqIHNydHBfZXJyX3N0YXR1c19vayBpcyByZXR1cm5lZCwgdGhlbiBzcnRwX2hkciBw
b2ludHMgdG8gdGhlIHJlc3VsdGluZwogICogUlRQIHBhY2tldCBhbmQgKmxlbl9wdHIgaXMgdGhl
IG51bWJlciBvZiBvY3RldHMgaW4gdGhhdCBwYWNrZXQ7CiAgKiBvdGhlcndpc2UsIG5vIGFzc3Vt
cHRpb25zIHNob3VsZCBiZSBtYWRlIGFib3V0IHRoZSB2YWx1ZSBvZiBlaXRoZXIKLSAqIGRhdGEg
ZWxlbWVudHMuICAKLSAqIAorICogZGF0YSBlbGVtZW50cy4KKyAqCiAgKiBUaGUgc2VxdWVuY2Ug
bnVtYmVycyBvZiB0aGUgUlRQIHBhY2tldHMgcHJlc2VudGVkIHRvIHRoaXMgZnVuY3Rpb24KICAq
IG5lZWQgbm90IGJlIGNvbnNlY3V0aXZlLCBidXQgdGhleSBAYiBtdXN0IGJlIG91dCBvZiBvcmRl
ciBieSBsZXNzCiAgKiB0aGFuIDJeMTUgPSAzMiw3NjggcGFja2V0cy4KLSAqIAorICoKICAqIEB3
YXJuaW5nIFRoaXMgZnVuY3Rpb24gYXNzdW1lcyB0aGF0IHRoZSBTUlRQIHBhY2tldCBpcyBhbGln
bmVkIG9uIGEKICAqIDMyLWJpdCBib3VuZGFyeS4KICAqCkBAIC01MDYsMTYgKzUwMiwxNSBAQCBz
cnRwX2Vycl9zdGF0dXNfdCBzcnRwX3Byb3RlY3RfbWtpKHNydHBfY3R4X3QgKmN0eCwgdm9pZCAq
cnRwX2hkciwKICAqIGNvbXBsZXRlIHJ0cCBwYWNrZXQgYWZ0ZXIgdGhlIGNhbGwsIGlmIHNydHBf
ZXJyX3N0YXR1c19vayB3YXMgcmV0dXJuZWQuCiAgKiBPdGhlcndpc2UsIHRoZSB2YWx1ZSBvZiB0
aGUgZGF0YSB0byB3aGljaCBpdCBwb2ludHMgaXMgdW5kZWZpbmVkLgogICoKLSAqIEByZXR1cm4g
CisgKiBAcmV0dXJuCiAgKiAgICAtIHNydHBfZXJyX3N0YXR1c19vayAgICAgICAgICBpZiB0aGUg
UlRQIHBhY2tldCBpcyB2YWxpZC4KLSAqICAgIC0gc3J0cF9lcnJfc3RhdHVzX2F1dGhfZmFpbCAg
IGlmIHRoZSBTUlRQIHBhY2tldCBmYWlsZWQgdGhlIG1lc3NhZ2UgCi0gKiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgYXV0aGVudGljYXRpb24gY2hlY2suCi0gKiAgICAtIHNydHBfZXJyX3N0
YXR1c19yZXBsYXlfZmFpbCBpZiB0aGUgU1JUUCBwYWNrZXQgaXMgYSByZXBsYXkgKGUuZy4gcGFj
a2V0IGhhcwotICogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFscmVhZHkgYmVlbiBwcm9j
ZXNzZWQgYW5kIGFjY2VwdGVkKS4KKyAqICAgIC0gc3J0cF9lcnJfc3RhdHVzX2F1dGhfZmFpbCAg
IGlmIHRoZSBTUlRQIHBhY2tldCBmYWlsZWQgdGhlIG1lc3NhZ2UKKyAqICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGF1dGhlbnRpY2F0aW9uIGNoZWNrLgorICogICAgLSBzcnRwX2Vy
cl9zdGF0dXNfcmVwbGF5X2ZhaWwgaWYgdGhlIFNSVFAgcGFja2V0IGlzIGEgcmVwbGF5IChlLmcu
IHBhY2tldAorICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGFzIGFscmVhZHkg
YmVlbiBwcm9jZXNzZWQgYW5kIGFjY2VwdGVkKS4KICAqICAgIC0gW290aGVyXSAgaWYgdGhlcmUg
aGFzIGJlZW4gYW4gZXJyb3IgaW4gdGhlIGNyeXB0b2dyYXBoaWMgbWVjaGFuaXNtcy4KICAqCiAg
Ki8KLQogc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF91bnByb3RlY3Qoc3J0cF90IGN0eCwgdm9pZCAq
c3J0cF9oZHIsIGludCAqbGVuX3B0cik7CiAKIC8qKgpAQCAtNTI4LDEyICs1MjMsMTIgQEAgc3J0
cF9lcnJfc3RhdHVzX3Qgc3J0cF91bnByb3RlY3Qoc3J0cF90IGN0eCwgdm9pZCAqc3J0cF9oZHIs
IGludCAqbGVuX3B0cik7CiAgKiBzcnRwX2Vycl9zdGF0dXNfb2sgaXMgcmV0dXJuZWQsIHRoZW4g
c3J0cF9oZHIgcG9pbnRzIHRvIHRoZSByZXN1bHRpbmcKICAqIFJUUCBwYWNrZXQgYW5kICpsZW5f
cHRyIGlzIHRoZSBudW1iZXIgb2Ygb2N0ZXRzIGluIHRoYXQgcGFja2V0OwogICogb3RoZXJ3aXNl
LCBubyBhc3N1bXB0aW9ucyBzaG91bGQgYmUgbWFkZSBhYm91dCB0aGUgdmFsdWUgb2YgZWl0aGVy
Ci0gKiBkYXRhIGVsZW1lbnRzLiAgCi0gKiAKKyAqIGRhdGEgZWxlbWVudHMuCisgKgogICogVGhl
IHNlcXVlbmNlIG51bWJlcnMgb2YgdGhlIFJUUCBwYWNrZXRzIHByZXNlbnRlZCB0byB0aGlzIGZ1
bmN0aW9uCiAgKiBuZWVkIG5vdCBiZSBjb25zZWN1dGl2ZSwgYnV0IHRoZXkgQGIgbXVzdCBiZSBv
dXQgb2Ygb3JkZXIgYnkgbGVzcwogICogdGhhbiAyXjE1ID0gMzIsNzY4IHBhY2tldHMuCi0gKiAK
KyAqCiAgKiBAd2FybmluZyBUaGlzIGZ1bmN0aW9uIGFzc3VtZXMgdGhhdCB0aGUgU1JUUCBwYWNr
ZXQgaXMgYWxpZ25lZCBvbiBhCiAgKiAzMi1iaXQgYm91bmRhcnkuCiAgKgpAQCAtNTUwLDUyICs1
NDUsNTIgQEAgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF91bnByb3RlY3Qoc3J0cF90IGN0eCwgdm9p
ZCAqc3J0cF9oZHIsIGludCAqbGVuX3B0cik7CiAgKiBPdGhlcndpc2UsIHRoZSB2YWx1ZSBvZiB0
aGUgZGF0YSB0byB3aGljaCBpdCBwb2ludHMgaXMgdW5kZWZpbmVkLgogICoKICAqIEBwYXJhbSB1
c2VfbWtpIGlzIGEgYm9vbGVhbiB0byB0ZWxsIHRoZSBzeXN0ZW0gaWYgbWtpIGlzIGJlaW5nIHVz
ZWQuICBJZgotICogc2V0IHRvIGZhbHNlIHRoZW4gd2lsbCB1c2UgdGhlIGZpcnN0IHNldCBvZiBz
ZXNzaW9uIGtleXMuICBJZiBzZXQgdG8gdHJ1ZSB3aWxsCisgKiBzZXQgdG8gZmFsc2UgdGhlbiB3
aWxsIHVzZSB0aGUgZmlyc3Qgc2V0IG9mIHNlc3Npb24ga2V5cy4gIElmIHNldCB0byB0cnVlCisg
KiB3aWxsCiAgKiB1c2UgdGhlIHNlc3Npb24ga2V5cyBpZGVudGlmaWVkIGJ5IHRoZSBta2lfaW5k
ZXgKICAqCi0gKiBAcmV0dXJuIAorICogQHJldHVybgogICogICAgLSBzcnRwX2Vycl9zdGF0dXNf
b2sgICAgICAgICAgaWYgdGhlIFJUUCBwYWNrZXQgaXMgdmFsaWQuCi0gKiAgICAtIHNydHBfZXJy
X3N0YXR1c19hdXRoX2ZhaWwgICBpZiB0aGUgU1JUUCBwYWNrZXQgZmFpbGVkIHRoZSBtZXNzYWdl
IAotICogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF1dGhlbnRpY2F0aW9uIGNoZWNrLgot
ICogICAgLSBzcnRwX2Vycl9zdGF0dXNfcmVwbGF5X2ZhaWwgaWYgdGhlIFNSVFAgcGFja2V0IGlz
IGEgcmVwbGF5IChlLmcuIHBhY2tldCBoYXMKLSAqICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBhbHJlYWR5IGJlZW4gcHJvY2Vzc2VkIGFuZCBhY2NlcHRlZCkuCisgKiAgICAtIHNydHBfZXJy
X3N0YXR1c19hdXRoX2ZhaWwgICBpZiB0aGUgU1JUUCBwYWNrZXQgZmFpbGVkIHRoZSBtZXNzYWdl
CisgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdXRoZW50aWNhdGlvbiBjaGVj
ay4KKyAqICAgIC0gc3J0cF9lcnJfc3RhdHVzX3JlcGxheV9mYWlsIGlmIHRoZSBTUlRQIHBhY2tl
dCBpcyBhIHJlcGxheSAoZS5nLiBwYWNrZXQKKyAqICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGhhcyBhbHJlYWR5IGJlZW4gcHJvY2Vzc2VkIGFuZCBhY2NlcHRlZCkuCiAgKiAgICAt
IHNydHBfZXJyX3N0YXR1c19iYWRfbWtpIGlmIHRoZSBNS0kgaW4gdGhlIHBhY2tldCBpcyBub3Qg
YSBrbm93biBNS0kgaWQKICAqICAgIC0gW290aGVyXSAgaWYgdGhlcmUgaGFzIGJlZW4gYW4gZXJy
b3IgaW4gdGhlIGNyeXB0b2dyYXBoaWMgbWVjaGFuaXNtcy4KICAqCiAgKi8KLQotc3J0cF9lcnJf
c3RhdHVzX3Qgc3J0cF91bnByb3RlY3RfbWtpKHNydHBfdCBjdHgsIHZvaWQgKnNydHBfaGRyLCBp
bnQgKmxlbl9wdHIsCitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3VucHJvdGVjdF9ta2koc3J0cF90
IGN0eCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2b2lkICpzcnRwX2hk
ciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgKmxlbl9wdHIsCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IHVzZV9ta2kp
OwogCiAvKioKICAqIEBicmllZiBzcnRwX2NyZWF0ZSgpIGFsbG9jYXRlcyBhbmQgaW5pdGlhbGl6
ZXMgYW4gU1JUUCBzZXNzaW9uLgogCiAgKiBUaGUgZnVuY3Rpb24gY2FsbCBzcnRwX2NyZWF0ZShz
ZXNzaW9uLCBwb2xpY3kpIGFsbG9jYXRlcyBhbmQKLSAqIGluaXRpYWxpemVzIGFuIFNSVFAgc2Vz
c2lvbiBjb250ZXh0LCBhcHBseWluZyB0aGUgZ2l2ZW4gcG9saWN5LiAKKyAqIGluaXRpYWxpemVz
IGFuIFNSVFAgc2Vzc2lvbiBjb250ZXh0LCBhcHBseWluZyB0aGUgZ2l2ZW4gcG9saWN5LgogICoK
ICAqIEBwYXJhbSBzZXNzaW9uIGlzIGEgcG9pbnRlciB0byB0aGUgU1JUUCBzZXNzaW9uIHRvIHdo
aWNoIHRoZSBwb2xpY3kgaXMKICAqIHRvIGJlIGFkZGVkLgotICogCisgKgogICogQHBhcmFtIHBv
bGljeSBpcyB0aGUgc3J0cF9wb2xpY3lfdCBzdHJ1Y3QgdGhhdCBkZXNjcmliZXMgdGhlIHBvbGlj
eQogICogZm9yIHRoZSBzZXNzaW9uLiAgVGhlIHN0cnVjdCBtYXkgYmUgYSBzaW5nbGUgZWxlbWVu
dCwgb3IgaXQgbWF5IGJlCiAgKiB0aGUgaGVhZCBvZiBhIGxpc3QsIGluIHdoaWNoIGNhc2UgZWFj
aCBlbGVtZW50IG9mIHRoZSBsaXN0IGlzCiAgKiBwcm9jZXNzZWQuICBJdCBtYXkgYWxzbyBiZSBO
VUxMLCBpbiB3aGljaCBjYXNlIHN0cmVhbXMgc2hvdWxkIGJlIGFkZGVkCiAgKiBsYXRlciB1c2lu
ZyBzcnRwX2FkZF9zdHJlYW0oKS4gIFRoZSBmaW5hbCBlbGVtZW50IG9mIHRoZSBsaXN0IEBiIG11
c3QKICAqIGhhdmUgaXRzIGBuZXh0JyBmaWVsZCBzZXQgdG8gTlVMTC4KLSAqIAorICoKICAqIEBy
ZXR1cm4KICAqICAgIC0gc3J0cF9lcnJfc3RhdHVzX29rICAgICAgICAgICBpZiBjcmVhdGlvbiBz
dWNjZWRlZC4KICAqICAgIC0gc3J0cF9lcnJfc3RhdHVzX2FsbG9jX2ZhaWwgICBpZiBhbGxvY2F0
aW9uIGZhaWxlZC4KICAqICAgIC0gc3J0cF9lcnJfc3RhdHVzX2luaXRfZmFpbCAgICBpZiBpbml0
aWFsaXphdGlvbiBmYWlsZWQuCiAgKi8KLQogc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcmVhdGUo
c3J0cF90ICpzZXNzaW9uLCBjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3kpOwogCi0KIC8qKgog
ICogQGJyaWVmIHNydHBfYWRkX3N0cmVhbSgpIGFsbG9jYXRlcyBhbmQgaW5pdGlhbGl6ZXMgYW4g
U1JUUCBzdHJlYW0KICAqIHdpdGhpbiBhIGdpdmVuIFNSVFAgc2Vzc2lvbi4KLSAqIAorICoKICAq
IFRoZSBmdW5jdGlvbiBjYWxsIHNydHBfYWRkX3N0cmVhbShzZXNzaW9uLCBwb2xpY3kpIGFsbG9j
YXRlcyBhbmQKICAqIGluaXRpYWxpemVzIGEgbmV3IFNSVFAgc3RyZWFtIHdpdGhpbiBhIGdpdmVu
LCBwcmV2aW91c2x5IGNyZWF0ZWQKICAqIHNlc3Npb24sIGFwcGx5aW5nIHRoZSBwb2xpY3kgZ2l2
ZW4gYXMgdGhlIG90aGVyIGFyZ3VtZW50IHRvIHRoYXQKQEAgLTYwNiwxMyArNjAxLDExIEBAIHNy
dHBfZXJyX3N0YXR1c190IHNydHBfY3JlYXRlKHNydHBfdCAqc2Vzc2lvbiwgY29uc3Qgc3J0cF9w
b2xpY3lfdCAqcG9saWN5KTsKICAqICAgIC0gc3J0cF9lcnJfc3RhdHVzX2FsbG9jX2ZhaWwgICBp
ZiBzdHJlYW0gYWxsb2NhdGlvbiBmYWlsZWQKICAqICAgIC0gc3J0cF9lcnJfc3RhdHVzX2luaXRf
ZmFpbCAgICBpZiBzdHJlYW0gaW5pdGlhbGl6YXRpb24gZmFpbGVkLgogICovCi0KIHNydHBfZXJy
X3N0YXR1c190IHNydHBfYWRkX3N0cmVhbShzcnRwX3Qgc2Vzc2lvbiwgY29uc3Qgc3J0cF9wb2xp
Y3lfdCAqcG9saWN5KTsKIAotCiAvKioKICAqIEBicmllZiBzcnRwX3JlbW92ZV9zdHJlYW0oKSBk
ZWFsbG9jYXRlcyBhbiBTUlRQIHN0cmVhbS4KLSAqIAorICoKICAqIFRoZSBmdW5jdGlvbiBjYWxs
IHNydHBfcmVtb3ZlX3N0cmVhbShzZXNzaW9uLCBzc3JjKSByZW1vdmVzCiAgKiB0aGUgU1JUUCBz
dHJlYW0gd2l0aCB0aGUgU1NSQyB2YWx1ZSBzc3JjIGZyb20gdGhlIFNSVFAgc2Vzc2lvbgogICog
Y29udGV4dCBnaXZlbiBieSB0aGUgYXJndW1lbnQgc2Vzc2lvbi4KQEAgLTYyNSwxMyArNjE4LDEy
IEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfYWRkX3N0cmVhbShzcnRwX3Qgc2Vzc2lvbiwgY29u
c3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5KTsKICAqCiAgKiBAd2FybmluZyBXaWxkY2FyZCBTU1JD
IHZhbHVlcyBjYW5ub3QgYmUgcmVtb3ZlZCBmcm9tIGEKICAqICAgICAgICAgIHNlc3Npb24uCi0g
KiAKKyAqCiAgKiBAcmV0dXJuCiAgKiAgICAtIHNydHBfZXJyX3N0YXR1c19vayAgICAgaWYgdGhl
IHN0cmVhbSBkZWFsbG9jYXRpb24gc3VjY2VkZWQuCiAgKiAgICAtIFtvdGhlcl0gICAgICAgICAg
IG90aGVyd2lzZS4KICAqCiAgKi8KLQogc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9yZW1vdmVfc3Ry
ZWFtKHNydHBfdCBzZXNzaW9uLCB1bnNpZ25lZCBpbnQgc3NyYyk7CiAKIC8qKgpAQCAtNjU4LDcg
KzY1MCw2IEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfcmVtb3ZlX3N0cmVhbShzcnRwX3Qgc2Vz
c2lvbiwgdW5zaWduZWQgaW50IHNzcmMpOwogICogICAgLSBbb3RoZXJdICAgICAgICAgICAgICAg
ICBvdGhlcndpc2UuCiAgKgogICovCi0KIHNydHBfZXJyX3N0YXR1c190IHNydHBfdXBkYXRlKHNy
dHBfdCBzZXNzaW9uLCBjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3kpOwogCiAvKioKQEAgLTY4
MiwxNSArNjczLDE1IEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfdXBkYXRlKHNydHBfdCBzZXNz
aW9uLCBjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3kpOwogICogICAgLSBbb3RoZXJdICAgICAg
ICAgICAgICAgICAgICAgIG90aGVyd2lzZS4KICAqCiAgKi8KLQotc3J0cF9lcnJfc3RhdHVzX3Qg
c3J0cF91cGRhdGVfc3RyZWFtKHNydHBfdCBzZXNzaW9uLCBjb25zdCBzcnRwX3BvbGljeV90ICpw
b2xpY3kpOworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF91cGRhdGVfc3RyZWFtKHNydHBfdCBzZXNz
aW9uLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHNydHBfcG9s
aWN5X3QgKnBvbGljeSk7CiAKIC8qKgogICogQGJyaWVmIHNydHBfY3J5cHRvX3BvbGljeV9zZXRf
cnRwX2RlZmF1bHQoKSBzZXRzIGEgY3J5cHRvIHBvbGljeQogICogc3RydWN0dXJlIHRvIHRoZSBT
UlRQIGRlZmF1bHQgcG9saWN5IGZvciBSVFAgcHJvdGVjdGlvbi4KICAqCi0gKiBAcGFyYW0gcCBp
cyBhIHBvaW50ZXIgdG8gdGhlIHBvbGljeSBzdHJ1Y3R1cmUgdG8gYmUgc2V0IAotICogCisgKiBA
cGFyYW0gcCBpcyBhIHBvaW50ZXIgdG8gdGhlIHBvbGljeSBzdHJ1Y3R1cmUgdG8gYmUgc2V0Cisg
KgogICogVGhlIGZ1bmN0aW9uIGNhbGwgY3J5cHRvX3BvbGljeV9zZXRfcnRwX2RlZmF1bHQoJnAp
IHNldHMgdGhlCiAgKiBjcnlwdG9fcG9saWN5X3QgYXQgbG9jYXRpb24gcCB0byB0aGUgU1JUUCBk
ZWZhdWx0IHBvbGljeSBmb3IgUlRQCiAgKiBwcm90ZWN0aW9uLCBhcyBkZWZpbmVkIGluIHRoZSBz
cGVjaWZpY2F0aW9uLiAgVGhpcyBmdW5jdGlvbiBpcyBhCkBAIC02OTksMTkgKzY5MCwxOCBAQCBz
cnRwX2Vycl9zdGF0dXNfdCBzcnRwX3VwZGF0ZV9zdHJlYW0oc3J0cF90IHNlc3Npb24sIGNvbnN0
IHNydHBfcG9saWN5X3QgKnBvbGljeQogICogd2l0aCB0aGlzIGZ1bmN0aW9uIGNhbGwuICBEb2lu
ZyBzbyBtYXkgYWxsb3cgeW91ciBjb2RlIHRvIGJlCiAgKiBmb3J3YXJkIGNvbXBhdGlibGUgd2l0
aCBsYXRlciB2ZXJzaW9ucyBvZiBsaWJTUlRQIHRoYXQgaW5jbHVkZSBtb3JlCiAgKiBlbGVtZW50
cyBpbiB0aGUgY3J5cHRvX3BvbGljeV90IGRhdGF0eXBlLgotICogCisgKgogICogQHJldHVybiB2
b2lkLgotICogCisgKgogICovCi0KIHZvaWQgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9ydHBfZGVm
YXVsdChzcnRwX2NyeXB0b19wb2xpY3lfdCAqcCk7CiAKIC8qKgogICogQGJyaWVmIHNydHBfY3J5
cHRvX3BvbGljeV9zZXRfcnRjcF9kZWZhdWx0KCkgc2V0cyBhIGNyeXB0byBwb2xpY3kKICAqIHN0
cnVjdHVyZSB0byB0aGUgU1JUUCBkZWZhdWx0IHBvbGljeSBmb3IgUlRDUCBwcm90ZWN0aW9uLgog
ICoKLSAqIEBwYXJhbSBwIGlzIGEgcG9pbnRlciB0byB0aGUgcG9saWN5IHN0cnVjdHVyZSB0byBi
ZSBzZXQgCi0gKiAKKyAqIEBwYXJhbSBwIGlzIGEgcG9pbnRlciB0byB0aGUgcG9saWN5IHN0cnVj
dHVyZSB0byBiZSBzZXQKKyAqCiAgKiBUaGUgZnVuY3Rpb24gY2FsbCBzcnRwX2NyeXB0b19wb2xp
Y3lfc2V0X3J0Y3BfZGVmYXVsdCgmcCkgc2V0cyB0aGUKICAqIHNydHBfY3J5cHRvX3BvbGljeV90
IGF0IGxvY2F0aW9uIHAgdG8gdGhlIFNSVFAgZGVmYXVsdCBwb2xpY3kgZm9yIFJUQ1AKICAqIHBy
b3RlY3Rpb24sIGFzIGRlZmluZWQgaW4gdGhlIHNwZWNpZmljYXRpb24uICBUaGlzIGZ1bmN0aW9u
IGlzIGEKQEAgLTcyMCwzNyArNzEwLDM1IEBAIHZvaWQgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9y
dHBfZGVmYXVsdChzcnRwX2NyeXB0b19wb2xpY3lfdCAqcCk7CiAgKiB3aXRoIHRoaXMgZnVuY3Rp
b24gY2FsbC4gIERvaW5nIHNvIG1heSBhbGxvdyB5b3VyIGNvZGUgdG8gYmUKICAqIGZvcndhcmQg
Y29tcGF0aWJsZSB3aXRoIGxhdGVyIHZlcnNpb25zIG9mIGxpYlNSVFAgdGhhdCBpbmNsdWRlIG1v
cmUKICAqIGVsZW1lbnRzIGluIHRoZSBzcnRwX2NyeXB0b19wb2xpY3lfdCBkYXRhdHlwZS4KLSAq
IAorICoKICAqIEByZXR1cm4gdm9pZC4KLSAqIAorICoKICAqLwotCiB2b2lkIHNydHBfY3J5cHRv
X3BvbGljeV9zZXRfcnRjcF9kZWZhdWx0KHNydHBfY3J5cHRvX3BvbGljeV90ICpwKTsKIAogLyoq
CiAgKiBAYnJpZWYgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfY21fMTI4X2htYWNfc2hhMV84
MCgpIHNldHMgYSBjcnlwdG8KICAqIHBvbGljeSBzdHJ1Y3R1cmUgdG8gdGhlIFNSVFAgZGVmYXVs
dCBwb2xpY3kgZm9yIFJUUCBwcm90ZWN0aW9uLgogICoKLSAqIEBwYXJhbSBwIGlzIGEgcG9pbnRl
ciB0byB0aGUgcG9saWN5IHN0cnVjdHVyZSB0byBiZSBzZXQgCi0gKiAKKyAqIEBwYXJhbSBwIGlz
IGEgcG9pbnRlciB0byB0aGUgcG9saWN5IHN0cnVjdHVyZSB0byBiZSBzZXQKKyAqCiAgKiBUaGUg
ZnVuY3Rpb24gc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfY21fMTI4X2htYWNfc2hhMV84MCgp
IGlzIGEKICAqIHN5bm9ueW0gZm9yIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfcnRwX2RlZmF1bHQo
KS4gIEl0IGNvbmZvcm1zIHRvIHRoZQogICogbmFtaW5nIGNvbnZlbnRpb24gdXNlZCBpbiBSRkMg
NDU2OCAoU0RQIFNlY3VyaXR5IERlc2NyaXB0aW9ucyBmb3IKICAqIE1lZGlhIFN0cmVhbXMpLgot
ICogCisgKgogICogQHJldHVybiB2b2lkLgotICogCisgKgogICovCi0KLSNkZWZpbmUgc3J0cF9j
cnlwdG9fcG9saWN5X3NldF9hZXNfY21fMTI4X2htYWNfc2hhMV84MChwKSBzcnRwX2NyeXB0b19w
b2xpY3lfc2V0X3J0cF9kZWZhdWx0KHApCi0KKyNkZWZpbmUgc3J0cF9jcnlwdG9fcG9saWN5X3Nl
dF9hZXNfY21fMTI4X2htYWNfc2hhMV84MChwKSAgICAgICAgICAgICAgICAgICAgICBcCisgICAg
c3J0cF9jcnlwdG9fcG9saWN5X3NldF9ydHBfZGVmYXVsdChwKQogCiAvKioKICAqIEBicmllZiBz
cnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19jbV8xMjhfaG1hY19zaGExXzMyKCkgc2V0cyBhIGNy
eXB0bwogICogcG9saWN5IHN0cnVjdHVyZSB0byBhIHNob3J0LWF1dGhlbnRpY2F0aW9uIHRhZyBw
b2xpY3kKICAqCi0gKiBAcGFyYW0gcCBpcyBhIHBvaW50ZXIgdG8gdGhlIHBvbGljeSBzdHJ1Y3R1
cmUgdG8gYmUgc2V0IAotICogCisgKiBAcGFyYW0gcCBpcyBhIHBvaW50ZXIgdG8gdGhlIHBvbGlj
eSBzdHJ1Y3R1cmUgdG8gYmUgc2V0CisgKgogICogVGhlIGZ1bmN0aW9uIGNhbGwgc3J0cF9jcnlw
dG9fcG9saWN5X3NldF9hZXNfY21fMTI4X2htYWNfc2hhMV8zMigmcCkKICAqIHNldHMgdGhlIHNy
dHBfY3J5cHRvX3BvbGljeV90IGF0IGxvY2F0aW9uIHAgdG8gdXNlIHBvbGljeQogICogQUVTX0NN
XzEyOF9ITUFDX1NIQTFfMzIgYXMgZGVmaW5lZCBpbiBSRkMgNDU2OC4KQEAgLTc2MCw3ICs3NDgs
NyBAQCB2b2lkIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfcnRjcF9kZWZhdWx0KHNydHBfY3J5cHRv
X3BvbGljeV90ICpwKTsKICAqIGNvbnNpZGVyZWQgYWRlcXVhdGUgb25seSBmb3IgcHJvdGVjdGlu
ZyBhdWRpbyBhbmQgdmlkZW8gbWVkaWEgdGhhdAogICogdXNlIGEgc3RhdGVsZXNzIHBsYXliYWNr
IGZ1bmN0aW9uLiAgU2VlIFNlY3Rpb24gNy41IG9mIFJGQyAzNzExCiAgKiAoaHR0cDovL3d3dy5p
ZXRmLm9yZy9yZmMvcmZjMzcxMS50eHQpLgotICogCisgKgogICogVGhpcyBmdW5jdGlvbiBpcyBh
IGNvbnZlbmllbmNlIHRoYXQgaGVscHMgdG8gYXZvaWQgZGVhbGluZyBkaXJlY3RseQogICogd2l0
aCB0aGUgcG9saWN5IGRhdGEgc3RydWN0dXJlLiAgWW91IGFyZSBlbmNvdXJhZ2VkIHRvIGluaXRp
YWxpemUKICAqIHBvbGljeSBlbGVtZW50cyB3aXRoIHRoaXMgZnVuY3Rpb24gY2FsbC4gIERvaW5n
IHNvIG1heSBhbGxvdyB5b3VyCkBAIC03NzMsMjUgKzc2MSwyMiBAQCB2b2lkIHNydHBfY3J5cHRv
X3BvbGljeV9zZXRfcnRjcF9kZWZhdWx0KHNydHBfY3J5cHRvX3BvbGljeV90ICpwKTsKICAqICho
dHRwOi8vd3d3LmlldGYub3JnL3JmYy9yZmMzNzExLnR4dCkuCiAgKgogICogQHJldHVybiB2b2lk
LgotICogCisgKgogICovCi0KIHZvaWQgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfY21fMTI4
X2htYWNfc2hhMV8zMihzcnRwX2NyeXB0b19wb2xpY3lfdCAqcCk7CiAKLQotCiAvKioKICAqIEBi
cmllZiBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19jbV8xMjhfbnVsbF9hdXRoKCkgc2V0cyBh
IGNyeXB0bwogICogcG9saWN5IHN0cnVjdHVyZSB0byBhbiBlbmNyeXB0aW9uLW9ubHkgcG9saWN5
CiAgKgotICogQHBhcmFtIHAgaXMgYSBwb2ludGVyIHRvIHRoZSBwb2xpY3kgc3RydWN0dXJlIHRv
IGJlIHNldCAKLSAqIAorICogQHBhcmFtIHAgaXMgYSBwb2ludGVyIHRvIHRoZSBwb2xpY3kgc3Ry
dWN0dXJlIHRvIGJlIHNldAorICoKICAqIFRoZSBmdW5jdGlvbiBjYWxsIHNydHBfY3J5cHRvX3Bv
bGljeV9zZXRfYWVzX2NtXzEyOF9udWxsX2F1dGgoJnApIHNldHMKICAqIHRoZSBzcnRwX2NyeXB0
b19wb2xpY3lfdCBhdCBsb2NhdGlvbiBwIHRvIHVzZSB0aGUgU1JUUCBkZWZhdWx0IGNpcGhlcgog
ICogKEFFUy0xMjggQ291bnRlciBNb2RlKSwgYnV0IHRvIHVzZSBubyBhdXRoZW50aWNhdGlvbiBt
ZXRob2QuICBUaGlzCiAgKiBwb2xpY3kgaXMgTk9UIFJFQ09NTUVOREVEIHVubGVzcyBpdCBpcyB1
bmF2b2lkYWJsZTsgc2VlIFNlY3Rpb24gNy41CiAgKiBvZiBSRkMgMzcxMSAoaHR0cDovL3d3dy5p
ZXRmLm9yZy9yZmMvcmZjMzcxMS50eHQpLgotICogCisgKgogICogVGhpcyBmdW5jdGlvbiBpcyBh
IGNvbnZlbmllbmNlIHRoYXQgaGVscHMgdG8gYXZvaWQgZGVhbGluZyBkaXJlY3RseQogICogd2l0
aCB0aGUgcG9saWN5IGRhdGEgc3RydWN0dXJlLiAgWW91IGFyZSBlbmNvdXJhZ2VkIHRvIGluaXRp
YWxpemUKICAqIHBvbGljeSBlbGVtZW50cyB3aXRoIHRoaXMgZnVuY3Rpb24gY2FsbC4gIERvaW5n
IHNvIG1heSBhbGxvdyB5b3VyCkBAIC04MDMsMjQgKzc4OCwyMiBAQCB2b2lkIHNydHBfY3J5cHRv
X3BvbGljeV9zZXRfYWVzX2NtXzEyOF9obWFjX3NoYTFfMzIoc3J0cF9jcnlwdG9fcG9saWN5X3Qg
KnApOwogICogU2VjdGlvbiA3LjUgb2YgUkZDIDM3MTEgKGh0dHA6Ly93d3cuaWV0Zi5vcmcvcmZj
L3JmYzM3MTEudHh0KS4KICAqCiAgKiBAcmV0dXJuIHZvaWQuCi0gKiAKKyAqCiAgKi8KLQogdm9p
ZCBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19jbV8xMjhfbnVsbF9hdXRoKHNydHBfY3J5cHRv
X3BvbGljeV90ICpwKTsKIAotCiAvKioKICAqIEBicmllZiBzcnRwX2NyeXB0b19wb2xpY3lfc2V0
X251bGxfY2lwaGVyX2htYWNfc2hhMV84MCgpIHNldHMgYSBjcnlwdG8KICAqIHBvbGljeSBzdHJ1
Y3R1cmUgdG8gYW4gYXV0aGVudGljYXRpb24tb25seSBwb2xpY3kKICAqCi0gKiBAcGFyYW0gcCBp
cyBhIHBvaW50ZXIgdG8gdGhlIHBvbGljeSBzdHJ1Y3R1cmUgdG8gYmUgc2V0IAotICogCisgKiBA
cGFyYW0gcCBpcyBhIHBvaW50ZXIgdG8gdGhlIHBvbGljeSBzdHJ1Y3R1cmUgdG8gYmUgc2V0Cisg
KgogICogVGhlIGZ1bmN0aW9uIGNhbGwgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9udWxsX2NpcGhl
cl9obWFjX3NoYTFfODAoJnApCiAgKiBzZXRzIHRoZSBzcnRwX2NyeXB0b19wb2xpY3lfdCBhdCBs
b2NhdGlvbiBwIHRvIHVzZSBITUFDLVNIQTEgd2l0aCBhbiA4MAogICogYml0IGF1dGhlbnRpY2F0
aW9uIHRhZyB0byBwcm92aWRlIG1lc3NhZ2UgYXV0aGVudGljYXRpb24sIGJ1dCB0bwogICogdXNl
IG5vIGVuY3J5cHRpb24uICBUaGlzIHBvbGljeSBpcyBOT1QgUkVDT01NRU5ERUQgZm9yIFNSVFAg
dW5sZXNzCi0gKiB0aGVyZSBpcyBhIHJlcXVpcmVtZW50IHRvIGZvcmVnbyBlbmNyeXB0aW9uLiAg
Ci0gKiAKKyAqIHRoZXJlIGlzIGEgcmVxdWlyZW1lbnQgdG8gZm9yZWdvIGVuY3J5cHRpb24uCisg
KgogICogVGhpcyBmdW5jdGlvbiBpcyBhIGNvbnZlbmllbmNlIHRoYXQgaGVscHMgdG8gYXZvaWQg
ZGVhbGluZyBkaXJlY3RseQogICogd2l0aCB0aGUgcG9saWN5IGRhdGEgc3RydWN0dXJlLiAgWW91
IGFyZSBlbmNvdXJhZ2VkIHRvIGluaXRpYWxpemUKICAqIHBvbGljeSBlbGVtZW50cyB3aXRoIHRo
aXMgZnVuY3Rpb24gY2FsbC4gIERvaW5nIHNvIG1heSBhbGxvdyB5b3VyCkBAIC04MjgsMjQgKzgx
MSwyNCBAQCB2b2lkIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2NtXzEyOF9udWxsX2F1dGgo
c3J0cF9jcnlwdG9fcG9saWN5X3QgKnApOwogICogaW5jbHVkZSBtb3JlIGVsZW1lbnRzIGluIHRo
ZSBzcnRwX2NyeXB0b19wb2xpY3lfdCBkYXRhdHlwZS4KICAqCiAgKiBAd2FybmluZyBUaGlzIHBv
bGljeSBpcyBOT1QgUkVDT01NRU5ERUQgZm9yIFNSVFAgdW5sZXNzIHRoZXJlIGlzIGEKLSAqIHJl
cXVpcmVtZW50IHRvIGZvcmVnbyBlbmNyeXB0aW9uLiAgCisgKiByZXF1aXJlbWVudCB0byBmb3Jl
Z28gZW5jcnlwdGlvbi4KICAqCiAgKiBAcmV0dXJuIHZvaWQuCi0gKiAKKyAqCiAgKi8KIHZvaWQg
c3J0cF9jcnlwdG9fcG9saWN5X3NldF9udWxsX2NpcGhlcl9obWFjX3NoYTFfODAoc3J0cF9jcnlw
dG9fcG9saWN5X3QgKnApOwogCiAvKioKICAqIEBicmllZiBzcnRwX2NyeXB0b19wb2xpY3lfc2V0
X251bGxfY2lwaGVyX2htYWNfbnVsbCgpIHNldHMgYSBjcnlwdG8KLSAqIHBvbGljeSBzdHJ1Y3R1
cmUgdG8gdXNlIG5vIGVuY3J5cHRpb24gb3IgYXV0aGVudGljYXRpb24uIAorICogcG9saWN5IHN0
cnVjdHVyZSB0byB1c2Ugbm8gZW5jcnlwdGlvbiBvciBhdXRoZW50aWNhdGlvbi4KKyAqCisgKiBA
cGFyYW0gcCBpcyBhIHBvaW50ZXIgdG8gdGhlIHBvbGljeSBzdHJ1Y3R1cmUgdG8gYmUgc2V0CiAg
KgotICogQHBhcmFtIHAgaXMgYSBwb2ludGVyIHRvIHRoZSBwb2xpY3kgc3RydWN0dXJlIHRvIGJl
IHNldCAKLSAqIAogICogVGhlIGZ1bmN0aW9uIGNhbGwgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9u
dWxsX2NpcGhlcl9obWFjX251bGwoJnApCiAgKiBzZXRzIHRoZSBzcnRwX2NyeXB0b19wb2xpY3lf
dCBhdCBsb2NhdGlvbiBwIHRvIHVzZSBubyBlbmNyeXB0aW9uIGFuZAogICogbm8gYXV0aGVudGlj
YXRpb24uICBUaGlzIHBvbGljeSBzaG91bGQgb25seSBiZSB1c2VkIGZvciB0ZXN0aW5nIGFuZAot
ICogdHJvdWJsZXNob290aW5nbC4gCi0gKiAKKyAqIHRyb3VibGVzaG9vdGluZ2wuCisgKgogICog
VGhpcyBmdW5jdGlvbiBpcyBhIGNvbnZlbmllbmNlIHRoYXQgaGVscHMgdG8gYXZvaWQgZGVhbGlu
ZyBkaXJlY3RseQogICogd2l0aCB0aGUgcG9saWN5IGRhdGEgc3RydWN0dXJlLiAgWW91IGFyZSBl
bmNvdXJhZ2VkIHRvIGluaXRpYWxpemUKICAqIHBvbGljeSBlbGVtZW50cyB3aXRoIHRoaXMgZnVu
Y3Rpb24gY2FsbC4gIERvaW5nIHNvIG1heSBhbGxvdyB5b3VyCkBAIC04NTMsMjcgKzgzNiwyNiBA
QCB2b2lkIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfbnVsbF9jaXBoZXJfaG1hY19zaGExXzgwKHNy
dHBfY3J5cHRvX3BvbGljeV90ICpwKTsKICAqIGluY2x1ZGUgbW9yZSBlbGVtZW50cyBpbiB0aGUg
c3J0cF9jcnlwdG9fcG9saWN5X3QgZGF0YXR5cGUuCiAgKgogICogQHdhcm5pbmcgVGhpcyBwb2xp
Y3kgaXMgTk9UIFJFQ09NTUVOREVEIGZvciBTUlRQIHVubGVzcyB0aGVyZSBpcyBhCi0gKiByZXF1
aXJlbWVudCB0byBmb3JlZ28gZW5jcnlwdGlvbiBhbmQgYXV0aGVudGljYXRpb24uICAKKyAqIHJl
cXVpcmVtZW50IHRvIGZvcmVnbyBlbmNyeXB0aW9uIGFuZCBhdXRoZW50aWNhdGlvbi4KICAqCiAg
KiBAcmV0dXJuIHZvaWQuCi0gKiAKKyAqCiAgKi8KIHZvaWQgc3J0cF9jcnlwdG9fcG9saWN5X3Nl
dF9udWxsX2NpcGhlcl9obWFjX251bGwoc3J0cF9jcnlwdG9fcG9saWN5X3QgKnApOwogCi0KIC8q
KgogICogQGJyaWVmIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2NtXzI1Nl9obWFjX3NoYTFf
ODAoKSBzZXRzIGEgY3J5cHRvCi0gKiBwb2xpY3kgc3RydWN0dXJlIHRvIGEgZW5jcnlwdGlvbiBh
bmQgYXV0aGVudGljYXRpb24gcG9saWN5IHVzaW5nIEFFUy0yNTYgCisgKiBwb2xpY3kgc3RydWN0
dXJlIHRvIGEgZW5jcnlwdGlvbiBhbmQgYXV0aGVudGljYXRpb24gcG9saWN5IHVzaW5nIEFFUy0y
NTYKICAqIGZvciBSVFAgcHJvdGVjdGlvbi4KICAqCi0gKiBAcGFyYW0gcCBpcyBhIHBvaW50ZXIg
dG8gdGhlIHBvbGljeSBzdHJ1Y3R1cmUgdG8gYmUgc2V0IAotICogCisgKiBAcGFyYW0gcCBpcyBh
IHBvaW50ZXIgdG8gdGhlIHBvbGljeSBzdHJ1Y3R1cmUgdG8gYmUgc2V0CisgKgogICogVGhlIGZ1
bmN0aW9uIGNhbGwgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfY21fMjU2X2htYWNfc2hhMV84
MCgmcCkKICAqIHNldHMgdGhlIHNydHBfY3J5cHRvX3BvbGljeV90IGF0IGxvY2F0aW9uIHAgdG8g
dXNlIHBvbGljeQogICogQUVTX0NNXzI1Nl9ITUFDX1NIQTFfODAgYXMgZGVmaW5lZCBpbiBSRkMg
NjE4OC4gIFRoaXMgcG9saWN5IHVzZXMgQUVTLTI1NgogICogQ291bnRlciBNb2RlIGVuY3J5cHRp
b24gYW5kIEhNQUMtU0hBMSBhdXRoZW50aWNhdGlvbiwgd2l0aCBhbiA4MCBiaXQKICAqIGF1dGhl
bnRpY2F0aW9uIHRhZy4KLSAqIAorICoKICAqIFRoaXMgZnVuY3Rpb24gaXMgYSBjb252ZW5pZW5j
ZSB0aGF0IGhlbHBzIHRvIGF2b2lkIGRlYWxpbmcgZGlyZWN0bHkKICAqIHdpdGggdGhlIHBvbGlj
eSBkYXRhIHN0cnVjdHVyZS4gIFlvdSBhcmUgZW5jb3VyYWdlZCB0byBpbml0aWFsaXplCiAgKiBw
b2xpY3kgZWxlbWVudHMgd2l0aCB0aGlzIGZ1bmN0aW9uIGNhbGwuICBEb2luZyBzbyBtYXkgYWxs
b3cgeW91cgpAQCAtODgxLDE5ICs4NjMsMTcgQEAgdm9pZCBzcnRwX2NyeXB0b19wb2xpY3lfc2V0
X251bGxfY2lwaGVyX2htYWNfbnVsbChzcnRwX2NyeXB0b19wb2xpY3lfdCAqcCk7CiAgKiBpbmNs
dWRlIG1vcmUgZWxlbWVudHMgaW4gdGhlIHNydHBfY3J5cHRvX3BvbGljeV90IGRhdGF0eXBlLgog
ICoKICAqIEByZXR1cm4gdm9pZC4KLSAqIAorICoKICAqLwotCiB2b2lkIHNydHBfY3J5cHRvX3Bv
bGljeV9zZXRfYWVzX2NtXzI1Nl9obWFjX3NoYTFfODAoc3J0cF9jcnlwdG9fcG9saWN5X3QgKnAp
OwogCi0KIC8qKgogICogQGJyaWVmIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2NtXzI1Nl9o
bWFjX3NoYTFfMzIoKSBzZXRzIGEgY3J5cHRvCiAgKiBwb2xpY3kgc3RydWN0dXJlIHRvIGEgc2hv
cnQtYXV0aGVudGljYXRpb24gdGFnIHBvbGljeSB1c2luZyBBRVMtMjU2CiAgKiBlbmNyeXB0aW9u
LgogICoKLSAqIEBwYXJhbSBwIGlzIGEgcG9pbnRlciB0byB0aGUgcG9saWN5IHN0cnVjdHVyZSB0
byBiZSBzZXQgCi0gKiAKKyAqIEBwYXJhbSBwIGlzIGEgcG9pbnRlciB0byB0aGUgcG9saWN5IHN0
cnVjdHVyZSB0byBiZSBzZXQKKyAqCiAgKiBUaGUgZnVuY3Rpb24gY2FsbCBzcnRwX2NyeXB0b19w
b2xpY3lfc2V0X2Flc19jbV8yNTZfaG1hY19zaGExXzMyKCZwKQogICogc2V0cyB0aGUgc3J0cF9j
cnlwdG9fcG9saWN5X3QgYXQgbG9jYXRpb24gcCB0byB1c2UgcG9saWN5CiAgKiBBRVNfQ01fMjU2
X0hNQUNfU0hBMV8zMiBhcyBkZWZpbmVkIGluIFJGQyA2MTg4LiAgVGhpcyBwb2xpY3kgdXNlcyBB
RVMtMjU2CkBAIC05MDIsNyArODgyLDcgQEAgdm9pZCBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Fl
c19jbV8yNTZfaG1hY19zaGExXzgwKHNydHBfY3J5cHRvX3BvbGljeV90ICpwKTsKICAqIGNvbnNp
ZGVyZWQgYWRlcXVhdGUgb25seSBmb3IgcHJvdGVjdGluZyBhdWRpbyBhbmQgdmlkZW8gbWVkaWEg
dGhhdAogICogdXNlIGEgc3RhdGVsZXNzIHBsYXliYWNrIGZ1bmN0aW9uLiAgU2VlIFNlY3Rpb24g
Ny41IG9mIFJGQyAzNzExCiAgKiAoaHR0cDovL3d3dy5pZXRmLm9yZy9yZmMvcmZjMzcxMS50eHQp
LgotICogCisgKgogICogVGhpcyBmdW5jdGlvbiBpcyBhIGNvbnZlbmllbmNlIHRoYXQgaGVscHMg
dG8gYXZvaWQgZGVhbGluZyBkaXJlY3RseQogICogd2l0aCB0aGUgcG9saWN5IGRhdGEgc3RydWN0
dXJlLiAgWW91IGFyZSBlbmNvdXJhZ2VkIHRvIGluaXRpYWxpemUKICAqIHBvbGljeSBlbGVtZW50
cyB3aXRoIHRoaXMgZnVuY3Rpb24gY2FsbC4gIERvaW5nIHNvIG1heSBhbGxvdyB5b3VyCkBAIC05
MTUsOSArODk1LDggQEAgdm9pZCBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19jbV8yNTZfaG1h
Y19zaGExXzgwKHNydHBfY3J5cHRvX3BvbGljeV90ICpwKTsKICAqIChodHRwOi8vd3d3LmlldGYu
b3JnL3JmYy9yZmMzNzExLnR4dCkuCiAgKgogICogQHJldHVybiB2b2lkLgotICogCisgKgogICov
Ci0KIHZvaWQgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfY21fMjU2X2htYWNfc2hhMV8zMihz
cnRwX2NyeXB0b19wb2xpY3lfdCAqcCk7CiAKIC8qKgpAQCAtOTQ3LDcgKzkyNiw2IEBAIHZvaWQg
c3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfY21fMjU2X2htYWNfc2hhMV8zMihzcnRwX2NyeXB0
b19wb2xpY3lfdCAqcCk7CiAgKi8KIHZvaWQgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfY21f
MjU2X251bGxfYXV0aChzcnRwX2NyeXB0b19wb2xpY3lfdCAqcCk7CiAKLQogLyoqCiAgKiBAYnJp
ZWYgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfY21fMTkyX2htYWNfc2hhMV84MCgpIHNldHMg
YSBjcnlwdG8KICAqIHBvbGljeSBzdHJ1Y3R1cmUgdG8gYSBlbmNyeXB0aW9uIGFuZCBhdXRoZW50
aWNhdGlvbiBwb2xpY3kgdXNpbmcgQUVTLTE5MgpAQCAtOTcyLDcgKzk1MCw2IEBAIHZvaWQgc3J0
cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfY21fMjU2X251bGxfYXV0aChzcnRwX2NyeXB0b19wb2xp
Y3lfdCAqcCk7CiAgKi8KIHZvaWQgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfY21fMTkyX2ht
YWNfc2hhMV84MChzcnRwX2NyeXB0b19wb2xpY3lfdCAqcCk7CiAKLQogLyoqCiAgKiBAYnJpZWYg
c3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfY21fMTkyX2htYWNfc2hhMV8zMigpIHNldHMgYSBj
cnlwdG8KICAqIHBvbGljeSBzdHJ1Y3R1cmUgdG8gYSBzaG9ydC1hdXRoZW50aWNhdGlvbiB0YWcg
cG9saWN5IHVzaW5nIEFFUy0xOTIKQEAgLTEwMDUsNyArOTgyLDYgQEAgdm9pZCBzcnRwX2NyeXB0
b19wb2xpY3lfc2V0X2Flc19jbV8xOTJfaG1hY19zaGExXzgwKHNydHBfY3J5cHRvX3BvbGljeV90
ICpwKTsKICAqLwogdm9pZCBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19jbV8xOTJfaG1hY19z
aGExXzMyKHNydHBfY3J5cHRvX3BvbGljeV90ICpwKTsKIAotCiAvKioKICAqIEBicmllZiBzcnRw
X2NyeXB0b19wb2xpY3lfc2V0X2Flc19jbV8xOTJfbnVsbF9hdXRoKCkgc2V0cyBhIGNyeXB0bwog
ICogcG9saWN5IHN0cnVjdHVyZSB0byBhbiBlbmNyeXB0aW9uLW9ubHkgcG9saWN5CkBAIC0xMDMz
LDE5ICsxMDA5LDE4IEBAIHZvaWQgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfY21fMTkyX2ht
YWNfc2hhMV8zMihzcnRwX2NyeXB0b19wb2xpY3lfdCAqcCk7CiAgKi8KIHZvaWQgc3J0cF9jcnlw
dG9fcG9saWN5X3NldF9hZXNfY21fMTkyX251bGxfYXV0aChzcnRwX2NyeXB0b19wb2xpY3lfdCAq
cCk7CiAKLQogLyoqCiAgKiBAYnJpZWYgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfZ2NtXzEy
OF84X2F1dGgoKSBzZXRzIGEgY3J5cHRvCiAgKiBwb2xpY3kgc3RydWN0dXJlIHRvIGFuIEFFQUQg
ZW5jcnlwdGlvbiBwb2xpY3kuCiAgKgotICogQHBhcmFtIHAgaXMgYSBwb2ludGVyIHRvIHRoZSBw
b2xpY3kgc3RydWN0dXJlIHRvIGJlIHNldCAKLSAqIAorICogQHBhcmFtIHAgaXMgYSBwb2ludGVy
IHRvIHRoZSBwb2xpY3kgc3RydWN0dXJlIHRvIGJlIHNldAorICoKICAqIFRoZSBmdW5jdGlvbiBj
YWxsIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2djbV8xMjhfOF9hdXRoKCZwKSBzZXRzCiAg
KiB0aGUgc3J0cF9jcnlwdG9fcG9saWN5X3QgYXQgbG9jYXRpb24gcCB0byB1c2UgdGhlIFNSVFAg
ZGVmYXVsdCBjaXBoZXIKICAqIChBRVMtMTI4IEdhbG9pcyBDb3VudGVyIE1vZGUpIHdpdGggOCBv
Y3RldCBhdXRoIHRhZy4gIFRoaXMKICAqIHBvbGljeSBhcHBsaWVzIGNvbmZpZGVudGlhbGl0eSBh
bmQgYXV0aGVudGljYXRpb24gdG8gYm90aCB0aGUKICAqIFJUUCBhbmQgUlRDUCBwYWNrZXRzLgot
ICogCisgKgogICogVGhpcyBmdW5jdGlvbiBpcyBhIGNvbnZlbmllbmNlIHRoYXQgaGVscHMgdG8g
YXZvaWQgZGVhbGluZyBkaXJlY3RseQogICogd2l0aCB0aGUgcG9saWN5IGRhdGEgc3RydWN0dXJl
LiAgWW91IGFyZSBlbmNvdXJhZ2VkIHRvIGluaXRpYWxpemUKICAqIHBvbGljeSBlbGVtZW50cyB3
aXRoIHRoaXMgZnVuY3Rpb24gY2FsbC4gIERvaW5nIHNvIG1heSBhbGxvdyB5b3VyCkBAIC0xMDUz
LDcgKzEwMjgsNyBAQCB2b2lkIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2NtXzE5Ml9udWxs
X2F1dGgoc3J0cF9jcnlwdG9fcG9saWN5X3QgKnApOwogICogaW5jbHVkZSBtb3JlIGVsZW1lbnRz
IGluIHRoZSBzcnRwX2NyeXB0b19wb2xpY3lfdCBkYXRhdHlwZS4KICAqCiAgKiBAcmV0dXJuIHZv
aWQuCi0gKiAKKyAqCiAgKi8KIHZvaWQgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfZ2NtXzEy
OF84X2F1dGgoc3J0cF9jcnlwdG9fcG9saWN5X3QgKnApOwogCkBAIC0xMDYxLDE0ICsxMDM2LDE0
IEBAIHZvaWQgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfZ2NtXzEyOF84X2F1dGgoc3J0cF9j
cnlwdG9fcG9saWN5X3QgKnApOwogICogQGJyaWVmIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVz
X2djbV8yNTZfOF9hdXRoKCkgc2V0cyBhIGNyeXB0bwogICogcG9saWN5IHN0cnVjdHVyZSB0byBh
biBBRUFEIGVuY3J5cHRpb24gcG9saWN5CiAgKgotICogQHBhcmFtIHAgaXMgYSBwb2ludGVyIHRv
IHRoZSBwb2xpY3kgc3RydWN0dXJlIHRvIGJlIHNldCAKLSAqIAorICogQHBhcmFtIHAgaXMgYSBw
b2ludGVyIHRvIHRoZSBwb2xpY3kgc3RydWN0dXJlIHRvIGJlIHNldAorICoKICAqIFRoZSBmdW5j
dGlvbiBjYWxsIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2djbV8yNTZfOF9hdXRoKCZwKSBz
ZXRzCiAgKiB0aGUgc3J0cF9jcnlwdG9fcG9saWN5X3QgYXQgbG9jYXRpb24gcCB0byB1c2UgdGhl
IFNSVFAgZGVmYXVsdCBjaXBoZXIKLSAqIChBRVMtMjU2IEdhbG9pcyBDb3VudGVyIE1vZGUpIHdp
dGggOCBvY3RldCBhdXRoIHRhZy4gIFRoaXMgCisgKiAoQUVTLTI1NiBHYWxvaXMgQ291bnRlciBN
b2RlKSB3aXRoIDggb2N0ZXQgYXV0aCB0YWcuICBUaGlzCiAgKiBwb2xpY3kgYXBwbGllcyBjb25m
aWRlbnRpYWxpdHkgYW5kIGF1dGhlbnRpY2F0aW9uIHRvIGJvdGggdGhlCiAgKiBSVFAgYW5kIFJU
Q1AgcGFja2V0cy4KLSAqIAorICoKICAqIFRoaXMgZnVuY3Rpb24gaXMgYSBjb252ZW5pZW5jZSB0
aGF0IGhlbHBzIHRvIGF2b2lkIGRlYWxpbmcgZGlyZWN0bHkKICAqIHdpdGggdGhlIHBvbGljeSBk
YXRhIHN0cnVjdHVyZS4gIFlvdSBhcmUgZW5jb3VyYWdlZCB0byBpbml0aWFsaXplCiAgKiBwb2xp
Y3kgZWxlbWVudHMgd2l0aCB0aGlzIGZ1bmN0aW9uIGNhbGwuICBEb2luZyBzbyBtYXkgYWxsb3cg
eW91cgpAQCAtMTA3Niw3ICsxMDUxLDcgQEAgdm9pZCBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Fl
c19nY21fMTI4XzhfYXV0aChzcnRwX2NyeXB0b19wb2xpY3lfdCAqcCk7CiAgKiBpbmNsdWRlIG1v
cmUgZWxlbWVudHMgaW4gdGhlIHNydHBfY3J5cHRvX3BvbGljeV90IGRhdGF0eXBlLgogICoKICAq
IEByZXR1cm4gdm9pZC4KLSAqIAorICoKICAqLwogdm9pZCBzcnRwX2NyeXB0b19wb2xpY3lfc2V0
X2Flc19nY21fMjU2XzhfYXV0aChzcnRwX2NyeXB0b19wb2xpY3lfdCAqcCk7CiAKQEAgLTEwODQs
MTQgKzEwNTksMTQgQEAgdm9pZCBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21fMjU2Xzhf
YXV0aChzcnRwX2NyeXB0b19wb2xpY3lfdCAqcCk7CiAgKiBAYnJpZWYgc3J0cF9jcnlwdG9fcG9s
aWN5X3NldF9hZXNfZ2NtXzEyOF84X29ubHlfYXV0aCgpIHNldHMgYSBjcnlwdG8KICAqIHBvbGlj
eSBzdHJ1Y3R1cmUgdG8gYW4gQUVBRCBhdXRoZW50aWNhdGlvbi1vbmx5IHBvbGljeQogICoKLSAq
IEBwYXJhbSBwIGlzIGEgcG9pbnRlciB0byB0aGUgcG9saWN5IHN0cnVjdHVyZSB0byBiZSBzZXQg
Ci0gKiAKKyAqIEBwYXJhbSBwIGlzIGEgcG9pbnRlciB0byB0aGUgcG9saWN5IHN0cnVjdHVyZSB0
byBiZSBzZXQKKyAqCiAgKiBUaGUgZnVuY3Rpb24gY2FsbCBzcnRwX2NyeXB0b19wb2xpY3lfc2V0
X2Flc19nY21fMTI4Xzhfb25seV9hdXRoKCZwKSBzZXRzCiAgKiB0aGUgc3J0cF9jcnlwdG9fcG9s
aWN5X3QgYXQgbG9jYXRpb24gcCB0byB1c2UgdGhlIFNSVFAgZGVmYXVsdCBjaXBoZXIKLSAqIChB
RVMtMTI4IEdhbG9pcyBDb3VudGVyIE1vZGUpIHdpdGggOCBvY3RldCBhdXRoIHRhZy4gIFRoaXMg
cG9saWN5IAotICogYXBwbGllcyBjb25maWRlbnRpYWxpdHkgYW5kIGF1dGhlbnRpY2F0aW9uIHRv
IHRoZSBSVFAgcGFja2V0cywgCisgKiAoQUVTLTEyOCBHYWxvaXMgQ291bnRlciBNb2RlKSB3aXRo
IDggb2N0ZXQgYXV0aCB0YWcuICBUaGlzIHBvbGljeQorICogYXBwbGllcyBjb25maWRlbnRpYWxp
dHkgYW5kIGF1dGhlbnRpY2F0aW9uIHRvIHRoZSBSVFAgcGFja2V0cywKICAqIGJ1dCBvbmx5IGF1
dGhlbnRpY2F0aW9uIHRvIHRoZSBSVENQIHBhY2tldHMuCi0gKiAKKyAqCiAgKiBUaGlzIGZ1bmN0
aW9uIGlzIGEgY29udmVuaWVuY2UgdGhhdCBoZWxwcyB0byBhdm9pZCBkZWFsaW5nIGRpcmVjdGx5
CiAgKiB3aXRoIHRoZSBwb2xpY3kgZGF0YSBzdHJ1Y3R1cmUuICBZb3UgYXJlIGVuY291cmFnZWQg
dG8gaW5pdGlhbGl6ZQogICogcG9saWN5IGVsZW1lbnRzIHdpdGggdGhpcyBmdW5jdGlvbiBjYWxs
LiAgRG9pbmcgc28gbWF5IGFsbG93IHlvdXIKQEAgLTEwOTksNyArMTA3NCw3IEBAIHZvaWQgc3J0
cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfZ2NtXzI1Nl84X2F1dGgoc3J0cF9jcnlwdG9fcG9saWN5
X3QgKnApOwogICogaW5jbHVkZSBtb3JlIGVsZW1lbnRzIGluIHRoZSBzcnRwX2NyeXB0b19wb2xp
Y3lfdCBkYXRhdHlwZS4KICAqCiAgKiBAcmV0dXJuIHZvaWQuCi0gKiAKKyAqCiAgKi8KIHZvaWQg
c3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfZ2NtXzEyOF84X29ubHlfYXV0aChzcnRwX2NyeXB0
b19wb2xpY3lfdCAqcCk7CiAKQEAgLTExMDcsMTQgKzEwODIsMTQgQEAgdm9pZCBzcnRwX2NyeXB0
b19wb2xpY3lfc2V0X2Flc19nY21fMTI4Xzhfb25seV9hdXRoKHNydHBfY3J5cHRvX3BvbGljeV90
ICpwKTsKICAqIEBicmllZiBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21fMjU2Xzhfb25s
eV9hdXRoKCkgc2V0cyBhIGNyeXB0bwogICogcG9saWN5IHN0cnVjdHVyZSB0byBhbiBBRUFEIGF1
dGhlbnRpY2F0aW9uLW9ubHkgcG9saWN5CiAgKgotICogQHBhcmFtIHAgaXMgYSBwb2ludGVyIHRv
IHRoZSBwb2xpY3kgc3RydWN0dXJlIHRvIGJlIHNldCAKLSAqIAorICogQHBhcmFtIHAgaXMgYSBw
b2ludGVyIHRvIHRoZSBwb2xpY3kgc3RydWN0dXJlIHRvIGJlIHNldAorICoKICAqIFRoZSBmdW5j
dGlvbiBjYWxsIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2djbV8yNTZfOF9vbmx5X2F1dGgo
JnApIHNldHMKICAqIHRoZSBzcnRwX2NyeXB0b19wb2xpY3lfdCBhdCBsb2NhdGlvbiBwIHRvIHVz
ZSB0aGUgU1JUUCBkZWZhdWx0IGNpcGhlcgotICogKEFFUy0yNTYgR2Fsb2lzIENvdW50ZXIgTW9k
ZSkgd2l0aCA4IG9jdGV0IGF1dGggdGFnLiAgVGhpcyBwb2xpY3kgCi0gKiBhcHBsaWVzIGNvbmZp
ZGVudGlhbGl0eSBhbmQgYXV0aGVudGljYXRpb24gdG8gdGhlIFJUUCBwYWNrZXRzLCAKKyAqIChB
RVMtMjU2IEdhbG9pcyBDb3VudGVyIE1vZGUpIHdpdGggOCBvY3RldCBhdXRoIHRhZy4gIFRoaXMg
cG9saWN5CisgKiBhcHBsaWVzIGNvbmZpZGVudGlhbGl0eSBhbmQgYXV0aGVudGljYXRpb24gdG8g
dGhlIFJUUCBwYWNrZXRzLAogICogYnV0IG9ubHkgYXV0aGVudGljYXRpb24gdG8gdGhlIFJUQ1Ag
cGFja2V0cy4KLSAqIAorICoKICAqIFRoaXMgZnVuY3Rpb24gaXMgYSBjb252ZW5pZW5jZSB0aGF0
IGhlbHBzIHRvIGF2b2lkIGRlYWxpbmcgZGlyZWN0bHkKICAqIHdpdGggdGhlIHBvbGljeSBkYXRh
IHN0cnVjdHVyZS4gIFlvdSBhcmUgZW5jb3VyYWdlZCB0byBpbml0aWFsaXplCiAgKiBwb2xpY3kg
ZWxlbWVudHMgd2l0aCB0aGlzIGZ1bmN0aW9uIGNhbGwuICBEb2luZyBzbyBtYXkgYWxsb3cgeW91
cgpAQCAtMTEyMiw3ICsxMDk3LDcgQEAgdm9pZCBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19n
Y21fMTI4Xzhfb25seV9hdXRoKHNydHBfY3J5cHRvX3BvbGljeV90ICpwKTsKICAqIGluY2x1ZGUg
bW9yZSBlbGVtZW50cyBpbiB0aGUgc3J0cF9jcnlwdG9fcG9saWN5X3QgZGF0YXR5cGUuCiAgKgog
ICogQHJldHVybiB2b2lkLgotICogCisgKgogICovCiB2b2lkIHNydHBfY3J5cHRvX3BvbGljeV9z
ZXRfYWVzX2djbV8yNTZfOF9vbmx5X2F1dGgoc3J0cF9jcnlwdG9fcG9saWN5X3QgKnApOwogCkBA
IC0xMTMwLDE0ICsxMTA1LDE0IEBAIHZvaWQgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfZ2Nt
XzI1Nl84X29ubHlfYXV0aChzcnRwX2NyeXB0b19wb2xpY3lfdCAqcCk7CiAgKiBAYnJpZWYgc3J0
cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfZ2NtXzEyOF8xNl9hdXRoKCkgc2V0cyBhIGNyeXB0bwog
ICogcG9saWN5IHN0cnVjdHVyZSB0byBhbiBBRUFEIGVuY3J5cHRpb24gcG9saWN5LgogICoKLSAq
IEBwYXJhbSBwIGlzIGEgcG9pbnRlciB0byB0aGUgcG9saWN5IHN0cnVjdHVyZSB0byBiZSBzZXQg
Ci0gKiAKKyAqIEBwYXJhbSBwIGlzIGEgcG9pbnRlciB0byB0aGUgcG9saWN5IHN0cnVjdHVyZSB0
byBiZSBzZXQKKyAqCiAgKiBUaGUgZnVuY3Rpb24gY2FsbCBzcnRwX2NyeXB0b19wb2xpY3lfc2V0
X2Flc19nY21fMTI4XzE2X2F1dGgoJnApIHNldHMKICAqIHRoZSBzcnRwX2NyeXB0b19wb2xpY3lf
dCBhdCBsb2NhdGlvbiBwIHRvIHVzZSB0aGUgU1JUUCBkZWZhdWx0IGNpcGhlcgogICogKEFFUy0x
MjggR2Fsb2lzIENvdW50ZXIgTW9kZSkgd2l0aCAxNiBvY3RldCBhdXRoIHRhZy4gIFRoaXMKICAq
IHBvbGljeSBhcHBsaWVzIGNvbmZpZGVudGlhbGl0eSBhbmQgYXV0aGVudGljYXRpb24gdG8gYm90
aCB0aGUKICAqIFJUUCBhbmQgUlRDUCBwYWNrZXRzLgotICogCisgKgogICogVGhpcyBmdW5jdGlv
biBpcyBhIGNvbnZlbmllbmNlIHRoYXQgaGVscHMgdG8gYXZvaWQgZGVhbGluZyBkaXJlY3RseQog
ICogd2l0aCB0aGUgcG9saWN5IGRhdGEgc3RydWN0dXJlLiAgWW91IGFyZSBlbmNvdXJhZ2VkIHRv
IGluaXRpYWxpemUKICAqIHBvbGljeSBlbGVtZW50cyB3aXRoIHRoaXMgZnVuY3Rpb24gY2FsbC4g
IERvaW5nIHNvIG1heSBhbGxvdyB5b3VyCkBAIC0xMTQ1LDcgKzExMjAsNyBAQCB2b2lkIHNydHBf
Y3J5cHRvX3BvbGljeV9zZXRfYWVzX2djbV8yNTZfOF9vbmx5X2F1dGgoc3J0cF9jcnlwdG9fcG9s
aWN5X3QgKnApOwogICogaW5jbHVkZSBtb3JlIGVsZW1lbnRzIGluIHRoZSBzcnRwX2NyeXB0b19w
b2xpY3lfdCBkYXRhdHlwZS4KICAqCiAgKiBAcmV0dXJuIHZvaWQuCi0gKiAKKyAqCiAgKi8KIHZv
aWQgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfZ2NtXzEyOF8xNl9hdXRoKHNydHBfY3J5cHRv
X3BvbGljeV90ICpwKTsKIApAQCAtMTE1MywxNCArMTEyOCwxNCBAQCB2b2lkIHNydHBfY3J5cHRv
X3BvbGljeV9zZXRfYWVzX2djbV8xMjhfMTZfYXV0aChzcnRwX2NyeXB0b19wb2xpY3lfdCAqcCk7
CiAgKiBAYnJpZWYgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfZ2NtXzI1Nl8xNl9hdXRoKCkg
c2V0cyBhIGNyeXB0bwogICogcG9saWN5IHN0cnVjdHVyZSB0byBhbiBBRUFEIGVuY3J5cHRpb24g
cG9saWN5CiAgKgotICogQHBhcmFtIHAgaXMgYSBwb2ludGVyIHRvIHRoZSBwb2xpY3kgc3RydWN0
dXJlIHRvIGJlIHNldCAKLSAqIAorICogQHBhcmFtIHAgaXMgYSBwb2ludGVyIHRvIHRoZSBwb2xp
Y3kgc3RydWN0dXJlIHRvIGJlIHNldAorICoKICAqIFRoZSBmdW5jdGlvbiBjYWxsIHNydHBfY3J5
cHRvX3BvbGljeV9zZXRfYWVzX2djbV8yNTZfMTZfYXV0aCgmcCkgc2V0cwogICogdGhlIHNydHBf
Y3J5cHRvX3BvbGljeV90IGF0IGxvY2F0aW9uIHAgdG8gdXNlIHRoZSBTUlRQIGRlZmF1bHQgY2lw
aGVyCi0gKiAoQUVTLTI1NiBHYWxvaXMgQ291bnRlciBNb2RlKSB3aXRoIDE2IG9jdGV0IGF1dGgg
dGFnLiAgVGhpcyAKKyAqIChBRVMtMjU2IEdhbG9pcyBDb3VudGVyIE1vZGUpIHdpdGggMTYgb2N0
ZXQgYXV0aCB0YWcuICBUaGlzCiAgKiBwb2xpY3kgYXBwbGllcyBjb25maWRlbnRpYWxpdHkgYW5k
IGF1dGhlbnRpY2F0aW9uIHRvIGJvdGggdGhlCiAgKiBSVFAgYW5kIFJUQ1AgcGFja2V0cy4KLSAq
IAorICoKICAqIFRoaXMgZnVuY3Rpb24gaXMgYSBjb252ZW5pZW5jZSB0aGF0IGhlbHBzIHRvIGF2
b2lkIGRlYWxpbmcgZGlyZWN0bHkKICAqIHdpdGggdGhlIHBvbGljeSBkYXRhIHN0cnVjdHVyZS4g
IFlvdSBhcmUgZW5jb3VyYWdlZCB0byBpbml0aWFsaXplCiAgKiBwb2xpY3kgZWxlbWVudHMgd2l0
aCB0aGlzIGZ1bmN0aW9uIGNhbGwuICBEb2luZyBzbyBtYXkgYWxsb3cgeW91cgpAQCAtMTE2OCwx
NSArMTE0MywxNCBAQCB2b2lkIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2djbV8xMjhfMTZf
YXV0aChzcnRwX2NyeXB0b19wb2xpY3lfdCAqcCk7CiAgKiBpbmNsdWRlIG1vcmUgZWxlbWVudHMg
aW4gdGhlIHNydHBfY3J5cHRvX3BvbGljeV90IGRhdGF0eXBlLgogICoKICAqIEByZXR1cm4gdm9p
ZC4KLSAqIAorICoKICAqLwogdm9pZCBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21fMjU2
XzE2X2F1dGgoc3J0cF9jcnlwdG9fcG9saWN5X3QgKnApOwogCi0KIC8qKgogICogQGJyaWVmIHNy
dHBfZGVhbGxvYygpIGRlYWxsb2NhdGVzIHN0b3JhZ2UgZm9yIGFuIFNSVFAgc2Vzc2lvbgogICog
Y29udGV4dC4KLSAqIAorICoKICAqIFRoZSBmdW5jdGlvbiBjYWxsIHNydHBfZGVhbGxvYyhzKSBk
ZWFsbG9jYXRlcyBzdG9yYWdlIGZvciB0aGUKICAqIFNSVFAgc2Vzc2lvbiBjb250ZXh0IHMuICBU
aGlzIGZ1bmN0aW9uIHNob3VsZCBiZSBjYWxsZWQgbm8gbW9yZQogICogdGhhbiBvbmUgdGltZSBm
b3IgZWFjaCBvZiB0aGUgY29udGV4dHMgYWxsb2NhdGVkIGJ5IHRoZSBmdW5jdGlvbgpAQCAtMTE4
OCwzMCArMTE2MiwyNiBAQCB2b2lkIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2djbV8yNTZf
MTZfYXV0aChzcnRwX2NyeXB0b19wb2xpY3lfdCAqcCk7CiAgKiAgICAtIHNydHBfZXJyX3N0YXR1
c19vayAgICAgICAgICAgICBpZiB0aGVyZSBubyBwcm9ibGVtcy4KICAqICAgIC0gc3J0cF9lcnJf
c3RhdHVzX2RlYWxsb2NfZmFpbCAgIGEgbWVtb3J5IGRlYWxsb2NhdGlvbiBmYWlsdXJlIG9jY3Vy
ZWQuCiAgKi8KLQogc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9kZWFsbG9jKHNydHBfdCBzKTsKIAot
CiAvKgotICogQGJyaWVmIGlkZW50aWZpZXMgYSBwYXJ0aWN1bGFyIFNSVFAgcHJvZmlsZSAKKyAq
IEBicmllZiBpZGVudGlmaWVzIGEgcGFydGljdWxhciBTUlRQIHByb2ZpbGUKICAqCiAgKiBBbiBz
cnRwX3Byb2ZpbGVfdCBlbnVtZXJhdGlvbiBpcyB1c2VkIHRvIGlkZW50aWZ5IGEgcGFydGljdWxh
ciBTUlRQCiAgKiBwcm9maWxlICh0aGF0IGlzLCBhIHNldCBvZiBhbGdvcml0aG1zIGFuZCBwYXJh
bWV0ZXJzKS4gVGhlc2UgcHJvZmlsZXMKICAqIGFyZSBkZWZpbmVkIGZvciBEVExTLVNSVFA6CiAg
KiBodHRwczovL3d3dy5pYW5hLm9yZy9hc3NpZ25tZW50cy9zcnRwLXByb3RlY3Rpb24vc3J0cC1w
cm90ZWN0aW9uLnhodG1sCiAgKi8KLQogdHlwZWRlZiBlbnVtIHsKLSAgc3J0cF9wcm9maWxlX3Jl
c2VydmVkICAgICAgICAgICA9IDAsCi0gIHNydHBfcHJvZmlsZV9hZXMxMjhfY21fc2hhMV84MCAg
PSAxLAotICBzcnRwX3Byb2ZpbGVfYWVzMTI4X2NtX3NoYTFfMzIgID0gMiwKLSAgc3J0cF9wcm9m
aWxlX251bGxfc2hhMV84MCAgICAgICA9IDUsCi0gIHNydHBfcHJvZmlsZV9udWxsX3NoYTFfMzIg
ICAgICAgPSA2LAotICBzcnRwX3Byb2ZpbGVfYWVhZF9hZXNfMTI4X2djbSAgID0gNywKLSAgc3J0
cF9wcm9maWxlX2FlYWRfYWVzXzI1Nl9nY20gICA9IDgsCisgICAgc3J0cF9wcm9maWxlX3Jlc2Vy
dmVkID0gMCwKKyAgICBzcnRwX3Byb2ZpbGVfYWVzMTI4X2NtX3NoYTFfODAgPSAxLAorICAgIHNy
dHBfcHJvZmlsZV9hZXMxMjhfY21fc2hhMV8zMiA9IDIsCisgICAgc3J0cF9wcm9maWxlX251bGxf
c2hhMV84MCA9IDUsCisgICAgc3J0cF9wcm9maWxlX251bGxfc2hhMV8zMiA9IDYsCisgICAgc3J0
cF9wcm9maWxlX2FlYWRfYWVzXzEyOF9nY20gPSA3LAorICAgIHNydHBfcHJvZmlsZV9hZWFkX2Fl
c18yNTZfZ2NtID0gOCwKIH0gc3J0cF9wcm9maWxlX3Q7CiAKLQogLyoqCiAgKiBAYnJpZWYgc3J0
cF9jcnlwdG9fcG9saWN5X3NldF9mcm9tX3Byb2ZpbGVfZm9yX3J0cCgpIHNldHMgYSBjcnlwdG8g
cG9saWN5CiAgKiBzdHJ1Y3R1cmUgdG8gdGhlIGFwcHJvcHJpYXRlIHZhbHVlIGZvciBSVFAgYmFz
ZWQgb24gYW4gc3J0cF9wcm9maWxlX3QKQEAgLTEyMzIsMTMgKzEyMDIsMTIgQEAgdHlwZWRlZiBl
bnVtIHsKICAqCiAgKiBAcmV0dXJuIHZhbHVlcwogICogICAgIC0gc3J0cF9lcnJfc3RhdHVzX29r
ICAgICAgICAgbm8gcHJvYmxlbXMgd2VyZSBlbmNvdW50ZXJlZAotICogICAgIC0gc3J0cF9lcnJf
c3RhdHVzX2JhZF9wYXJhbSAgdGhlIHByb2ZpbGUgaXMgbm90IHN1cHBvcnRlZCAKKyAqICAgICAt
IHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW0gIHRoZSBwcm9maWxlIGlzIG5vdCBzdXBwb3J0ZWQK
ICAqCiAgKi8KLXNydHBfZXJyX3N0YXR1c190IHNydHBfY3J5cHRvX3BvbGljeV9zZXRfZnJvbV9w
cm9maWxlX2Zvcl9ydHAoc3J0cF9jcnlwdG9fcG9saWN5X3QgKnBvbGljeSwgc3J0cF9wcm9maWxl
X3QgcHJvZmlsZSk7Ci0KLQotCitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NyeXB0b19wb2xpY3lf
c2V0X2Zyb21fcHJvZmlsZV9mb3JfcnRwKAorICAgIHNydHBfY3J5cHRvX3BvbGljeV90ICpwb2xp
Y3ksCisgICAgc3J0cF9wcm9maWxlX3QgcHJvZmlsZSk7CiAKIC8qKgogICogQGJyaWVmIHNydHBf
Y3J5cHRvX3BvbGljeV9zZXRfZnJvbV9wcm9maWxlX2Zvcl9ydGNwKCkgc2V0cyBhIGNyeXB0byBw
b2xpY3kKQEAgLTEyNjMsNDggKzEyMzIsNDMgQEAgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcnlw
dG9fcG9saWN5X3NldF9mcm9tX3Byb2ZpbGVfZm9yX3J0cChzcnRwX2NyeXB0b19wb2xpY3kKICAq
ICAgICAtIHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW0gIHRoZSBwcm9maWxlIGlzIG5vdCBzdXBw
b3J0ZWQKICAqCiAgKi8KLXNydHBfZXJyX3N0YXR1c190IHNydHBfY3J5cHRvX3BvbGljeV9zZXRf
ZnJvbV9wcm9maWxlX2Zvcl9ydGNwKHNydHBfY3J5cHRvX3BvbGljeV90ICpwb2xpY3ksIHNydHBf
cHJvZmlsZV90IHByb2ZpbGUpOworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fcG9saWN5
X3NldF9mcm9tX3Byb2ZpbGVfZm9yX3J0Y3AoCisgICAgc3J0cF9jcnlwdG9fcG9saWN5X3QgKnBv
bGljeSwKKyAgICBzcnRwX3Byb2ZpbGVfdCBwcm9maWxlKTsKIAogLyoqCiAgKiBAYnJpZWYgcmV0
dXJucyB0aGUgbWFzdGVyIGtleSBsZW5ndGggZm9yIGEgZ2l2ZW4gU1JUUCBwcm9maWxlCiAgKi8K
LXVuc2lnbmVkIGludAotc3J0cF9wcm9maWxlX2dldF9tYXN0ZXJfa2V5X2xlbmd0aChzcnRwX3By
b2ZpbGVfdCBwcm9maWxlKTsKLQordW5zaWduZWQgaW50IHNydHBfcHJvZmlsZV9nZXRfbWFzdGVy
X2tleV9sZW5ndGgoc3J0cF9wcm9maWxlX3QgcHJvZmlsZSk7CiAKIC8qKgogICogQGJyaWVmIHJl
dHVybnMgdGhlIG1hc3RlciBzYWx0IGxlbmd0aCBmb3IgYSBnaXZlbiBTUlRQIHByb2ZpbGUKICAq
LwotdW5zaWduZWQgaW50Ci1zcnRwX3Byb2ZpbGVfZ2V0X21hc3Rlcl9zYWx0X2xlbmd0aChzcnRw
X3Byb2ZpbGVfdCBwcm9maWxlKTsKK3Vuc2lnbmVkIGludCBzcnRwX3Byb2ZpbGVfZ2V0X21hc3Rl
cl9zYWx0X2xlbmd0aChzcnRwX3Byb2ZpbGVfdCBwcm9maWxlKTsKIAogLyoqCiAgKiBAYnJpZWYg
YXBwZW5kcyB0aGUgc2FsdCB0byB0aGUga2V5CiAgKgotICogVGhlIGZ1bmN0aW9uIGNhbGwgc3J0
cF9hcHBlbmRfc2FsdF90b19rZXkoaywga2xlbiwgcywgc2xlbikgCisgKiBUaGUgZnVuY3Rpb24g
Y2FsbCBzcnRwX2FwcGVuZF9zYWx0X3RvX2tleShrLCBrbGVuLCBzLCBzbGVuKQogICogY29waWVz
IHRoZSBzdHJpbmcgcyB0byB0aGUgbG9jYXRpb24gYXQga2xlbiBieXRlcyBmb2xsb3dpbmcKLSAq
IHRoZSBsb2NhdGlvbiBrLiAgCisgKiB0aGUgbG9jYXRpb24gay4KICAqCiAgKiBAd2FybmluZyBU
aGVyZSBtdXN0IGJlIGF0IGxlYXN0IGJ5dGVzX2luX3NhbHQgKyBieXRlc19pbl9rZXkgYnl0ZXMK
ICAqICAgICAgICAgIGF2YWlsYWJsZSBhdCB0aGUgbG9jYXRpb24gcG9pbnRlZCB0byBieSBrZXku
Ci0gKiAKKyAqCiAgKi8KLQotdm9pZAotc3J0cF9hcHBlbmRfc2FsdF90b19rZXkodW5zaWduZWQg
Y2hhciAqa2V5LCB1bnNpZ25lZCBpbnQgYnl0ZXNfaW5fa2V5LAotCSAgCSAgICAgICAgdW5zaWdu
ZWQgY2hhciAqc2FsdCwgdW5zaWduZWQgaW50IGJ5dGVzX2luX3NhbHQpOwotCi0KK3ZvaWQgc3J0
cF9hcHBlbmRfc2FsdF90b19rZXkodW5zaWduZWQgY2hhciAqa2V5LAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgYnl0ZXNfaW5fa2V5LAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB1bnNpZ25lZCBjaGFyICpzYWx0LAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB1bnNpZ25lZCBpbnQgYnl0ZXNfaW5fc2FsdCk7CiAKIC8qKgogICogQH0KICAqLwog
Ci0KLQogLyoqCiAgKiBAZGVmZ3JvdXAgU1JUQ1AgU2VjdXJlIFJUQ1AKLSAqIEBpbmdyb3VwICBT
UlRQIAorICogQGluZ3JvdXAgIFNSVFAKICAqCiAgKiBAYnJpZWYgU2VjdXJlIFJUQ1AgZnVuY3Rp
b25zIGFyZSB1c2VkIHRvIHByb3RlY3QgUlRDUCB0cmFmZmljLgogICoKQEAgLTEzMTIsMzYgKzEy
NzYsMzYgQEAgc3J0cF9hcHBlbmRfc2FsdF90b19rZXkodW5zaWduZWQgY2hhciAqa2V5LCB1bnNp
Z25lZCBpbnQgYnl0ZXNfaW5fa2V5LAogICogdHJhZmZpYyBpbiBtdWNoIHRoZSBzYW1lIHdheSBh
cyBpdCBkb2VzIFJUUCB0cmFmZmljLiAgVGhlIGZ1bmN0aW9uCiAgKiBzcnRwX3Byb3RlY3RfcnRj
cCgpIGFwcGxpZXMgY3J5cHRvZ3JhcGhpYyBwcm90ZWN0aW9ucyB0byBvdXRib3VuZAogICogUlRD
UCBwYWNrZXRzLCBhbmQgc3J0cF91bnByb3RlY3RfcnRjcCgpIHZlcmlmaWVzIHRoZSBwcm90ZWN0
aW9ucyBvbgotICogaW5ib3VuZCBSVENQIHBhY2tldHMuICAKKyAqIGluYm91bmQgUlRDUCBwYWNr
ZXRzLgogICoKICAqIEEgbm90ZSBvbiB0aGUgbmFtaW5nIGNvbnZlbnRpb246IHNydHBfcHJvdGVj
dF9ydGNwKCkgaGFzIGFuIHNydHBfdAogICogYXMgaXRzIGZpcnN0IGFyZ3VtZW50LCBhbmQgdGh1
cyBoYXMgYHNydHBfJyBhcyBpdHMgcHJlZml4LiAgVGhlCi0gKiB0cmFpbGluZyBgX3J0Y3AnIGlu
ZGljYXRlcyB0aGUgcHJvdG9jb2wgb24gd2hpY2ggaXQgYWN0cy4gIAotICogCisgKiB0cmFpbGlu
ZyBgX3J0Y3AnIGluZGljYXRlcyB0aGUgcHJvdG9jb2wgb24gd2hpY2ggaXQgYWN0cy4KKyAqCiAg
KiBAewogICovCiAKIC8qKgogICogQGJyaWVmIHNydHBfcHJvdGVjdF9ydGNwKCkgaXMgdGhlIFNl
Y3VyZSBSVENQIHNlbmRlci1zaWRlIHBhY2tldAogICogcHJvY2Vzc2luZyBmdW5jdGlvbi4KLSAq
IAorICoKICAqIFRoZSBmdW5jdGlvbiBjYWxsIHNydHBfcHJvdGVjdF9ydGNwKGN0eCwgcnRwX2hk
ciwgbGVuX3B0cikgYXBwbGllcwogICogU1JUQ1AgcHJvdGVjdGlvbiB0byB0aGUgUlRDUCBwYWNr
ZXQgcnRjcF9oZHIgKHdoaWNoIGhhcyBsZW5ndGgKICAqICpsZW5fcHRyKSB1c2luZyB0aGUgU1JU
UCBzZXNzaW9uIGNvbnRleHQgY3R4LiAgSWYgc3J0cF9lcnJfc3RhdHVzX29rIGlzCiAgKiByZXR1
cm5lZCwgdGhlbiBydHBfaGRyIHBvaW50cyB0byB0aGUgcmVzdWx0aW5nIFNSVENQIHBhY2tldCBh
bmQKICAqICpsZW5fcHRyIGlzIHRoZSBudW1iZXIgb2Ygb2N0ZXRzIGluIHRoYXQgcGFja2V0OyBv
dGhlcndpc2UsIG5vCiAgKiBhc3N1bXB0aW9ucyBzaG91bGQgYmUgbWFkZSBhYm91dCB0aGUgdmFs
dWUgb2YgZWl0aGVyIGRhdGEgZWxlbWVudHMuCi0gKiAKKyAqCiAgKiBAd2FybmluZyBUaGlzIGZ1
bmN0aW9uIGFzc3VtZXMgdGhhdCBpdCBjYW4gd3JpdGUgdGhlIGF1dGhlbnRpY2F0aW9uCiAgKiB0
YWcgaW50byB0aGUgbG9jYXRpb24gaW4gbWVtb3J5IGltbWVkaWF0ZWx5IGZvbGxvd2luZyB0aGUg
UlRDUAogICogcGFja2V0LCBhbmQgYXNzdW1lcyB0aGF0IHRoZSBSVENQIHBhY2tldCBpcyBhbGln
bmVkIG9uIGEgMzItYml0CiAgKiBib3VuZGFyeS4KICAqCi0gKiBAd2FybmluZyBUaGlzIGZ1bmN0
aW9uIGFzc3VtZXMgdGhhdCBpdCBjYW4gd3JpdGUgU1JUUF9NQVhfVFJBSUxFUl9MRU4rNCAKLSAq
IGludG8gdGhlIGxvY2F0aW9uIGluIG1lbW9yeSBpbW1lZGlhdGVseSBmb2xsb3dpbmcgdGhlIFJU
Q1AgcGFja2V0LiAgIAotICogQ2FsbGVycyBNVVNUIGVuc3VyZSB0aGF0IHRoaXMgbXVjaCB3cml0
YWJsZSBtZW1vcnkgaXMgYXZhaWxhYmxlIGluIAorICogQHdhcm5pbmcgVGhpcyBmdW5jdGlvbiBh
c3N1bWVzIHRoYXQgaXQgY2FuIHdyaXRlIFNSVFBfTUFYX1RSQUlMRVJfTEVOKzQKKyAqIGludG8g
dGhlIGxvY2F0aW9uIGluIG1lbW9yeSBpbW1lZGlhdGVseSBmb2xsb3dpbmcgdGhlIFJUQ1AgcGFj
a2V0LgorICogQ2FsbGVycyBNVVNUIGVuc3VyZSB0aGF0IHRoaXMgbXVjaCB3cml0YWJsZSBtZW1v
cnkgaXMgYXZhaWxhYmxlIGluCiAgKiB0aGUgYnVmZmVyIHRoYXQgaG9sZHMgdGhlIFJUQ1AgcGFj
a2V0LgotICogCisgKgogICogQHBhcmFtIGN0eCBpcyB0aGUgU1JUUCBjb250ZXh0IHRvIHVzZSBp
biBwcm9jZXNzaW5nIHRoZSBwYWNrZXQuCiAgKgogICogQHBhcmFtIHJ0Y3BfaGRyIGlzIGEgcG9p
bnRlciB0byB0aGUgUlRDUCBwYWNrZXQgKGJlZm9yZSB0aGUgY2FsbCk7IGFmdGVyCkBAIC0xMzUz
LDM3ICsxMzE3LDM2IEBAIHNydHBfYXBwZW5kX3NhbHRfdG9fa2V5KHVuc2lnbmVkIGNoYXIgKmtl
eSwgdW5zaWduZWQgaW50IGJ5dGVzX2luX2tleSwKICAqIHdhcyByZXR1cm5lZC4gIE90aGVyd2lz
ZSwgdGhlIHZhbHVlIG9mIHRoZSBkYXRhIHRvIHdoaWNoIGl0IHBvaW50cwogICogaXMgdW5kZWZp
bmVkLgogICoKLSAqIEByZXR1cm4gCisgKiBAcmV0dXJuCiAgKiAgICAtIHNydHBfZXJyX3N0YXR1
c19vayAgICAgICAgICAgIGlmIHRoZXJlIHdlcmUgbm8gcHJvYmxlbXMuCi0gKiAgICAtIFtvdGhl
cl0gICAgICAgICAgICAgICAgICBpZiB0aGVyZSB3YXMgYSBmYWlsdXJlIGluIAorICogICAgLSBb
b3RoZXJdICAgICAgICAgICAgICAgICAgaWYgdGhlcmUgd2FzIGEgZmFpbHVyZSBpbgogICogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhlIGNyeXB0b2dyYXBoaWMgbWVjaGFuaXNtcy4K
ICAqLwotCSAgICAgCi0KLXNydHBfZXJyX3N0YXR1c190IHNydHBfcHJvdGVjdF9ydGNwKHNydHBf
dCBjdHgsIHZvaWQgKnJ0Y3BfaGRyLCBpbnQgKnBrdF9vY3RldF9sZW4pOwotCitzcnRwX2Vycl9z
dGF0dXNfdCBzcnRwX3Byb3RlY3RfcnRjcChzcnRwX3QgY3R4LAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgdm9pZCAqcnRjcF9oZHIsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBpbnQgKnBrdF9vY3RldF9sZW4pOwogCiAvKioKICAqIEBicmllZiBzcnRw
X3Byb3RlY3RfcnRjcF9ta2koKSBpcyB0aGUgU2VjdXJlIFJUQ1Agc2VuZGVyLXNpZGUgcGFja2V0
CiAgKiBwcm9jZXNzaW5nIGZ1bmN0aW9uIHRoYXQgY2FuIHV0aWxpemUgbWtpLgotICogCisgKgog
ICogVGhlIGZ1bmN0aW9uIGNhbGwgc3J0cF9wcm90ZWN0X3J0Y3AoY3R4LCBydHBfaGRyLCBsZW5f
cHRyKSBhcHBsaWVzCiAgKiBTUlRDUCBwcm90ZWN0aW9uIHRvIHRoZSBSVENQIHBhY2tldCBydGNw
X2hkciAod2hpY2ggaGFzIGxlbmd0aAogICogKmxlbl9wdHIpIHVzaW5nIHRoZSBTUlRQIHNlc3Np
b24gY29udGV4dCBjdHguICBJZiBzcnRwX2Vycl9zdGF0dXNfb2sgaXMKICAqIHJldHVybmVkLCB0
aGVuIHJ0cF9oZHIgcG9pbnRzIHRvIHRoZSByZXN1bHRpbmcgU1JUQ1AgcGFja2V0IGFuZAogICog
Kmxlbl9wdHIgaXMgdGhlIG51bWJlciBvZiBvY3RldHMgaW4gdGhhdCBwYWNrZXQ7IG90aGVyd2lz
ZSwgbm8KICAqIGFzc3VtcHRpb25zIHNob3VsZCBiZSBtYWRlIGFib3V0IHRoZSB2YWx1ZSBvZiBl
aXRoZXIgZGF0YSBlbGVtZW50cy4KLSAqIAorICoKICAqIEB3YXJuaW5nIFRoaXMgZnVuY3Rpb24g
YXNzdW1lcyB0aGF0IGl0IGNhbiB3cml0ZSB0aGUgYXV0aGVudGljYXRpb24KICAqIHRhZyBpbnRv
IHRoZSBsb2NhdGlvbiBpbiBtZW1vcnkgaW1tZWRpYXRlbHkgZm9sbG93aW5nIHRoZSBSVENQCiAg
KiBwYWNrZXQsIGFuZCBhc3N1bWVzIHRoYXQgdGhlIFJUQ1AgcGFja2V0IGlzIGFsaWduZWQgb24g
YSAzMi1iaXQKICAqIGJvdW5kYXJ5LgogICoKLSAqIEB3YXJuaW5nIFRoaXMgZnVuY3Rpb24gYXNz
dW1lcyB0aGF0IGl0IGNhbiB3cml0ZSBTUlRQX01BWF9UUkFJTEVSX0xFTis0IAotICogaW50byB0
aGUgbG9jYXRpb24gaW4gbWVtb3J5IGltbWVkaWF0ZWx5IGZvbGxvd2luZyB0aGUgUlRDUCBwYWNr
ZXQuICAgCi0gKiBDYWxsZXJzIE1VU1QgZW5zdXJlIHRoYXQgdGhpcyBtdWNoIHdyaXRhYmxlIG1l
bW9yeSBpcyBhdmFpbGFibGUgaW4gCisgKiBAd2FybmluZyBUaGlzIGZ1bmN0aW9uIGFzc3VtZXMg
dGhhdCBpdCBjYW4gd3JpdGUgU1JUUF9NQVhfVFJBSUxFUl9MRU4rNAorICogaW50byB0aGUgbG9j
YXRpb24gaW4gbWVtb3J5IGltbWVkaWF0ZWx5IGZvbGxvd2luZyB0aGUgUlRDUCBwYWNrZXQuCisg
KiBDYWxsZXJzIE1VU1QgZW5zdXJlIHRoYXQgdGhpcyBtdWNoIHdyaXRhYmxlIG1lbW9yeSBpcyBh
dmFpbGFibGUgaW4KICAqIHRoZSBidWZmZXIgdGhhdCBob2xkcyB0aGUgUlRDUCBwYWNrZXQuCi0g
KiAKKyAqCiAgKiBAcGFyYW0gY3R4IGlzIHRoZSBTUlRQIGNvbnRleHQgdG8gdXNlIGluIHByb2Nl
c3NpbmcgdGhlIHBhY2tldC4KICAqCiAgKiBAcGFyYW0gcnRjcF9oZHIgaXMgYSBwb2ludGVyIHRv
IHRoZSBSVENQIHBhY2tldCAoYmVmb3JlIHRoZSBjYWxsKTsgYWZ0ZXIKQEAgLTEzOTUsMjEgKzEz
NTgsMjQgQEAgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9wcm90ZWN0X3J0Y3Aoc3J0cF90IGN0eCwg
dm9pZCAqcnRjcF9oZHIsIGludCAqcGt0X29jdGV0X2wKICAqIHdhcyByZXR1cm5lZC4gIE90aGVy
d2lzZSwgdGhlIHZhbHVlIG9mIHRoZSBkYXRhIHRvIHdoaWNoIGl0IHBvaW50cwogICogaXMgdW5k
ZWZpbmVkLgogICoKLSAqIEBwYXJhbSB1c2VfbWtpIGlzIGEgYm9vbGVhbiB0byB0ZWxsIHRoZSBz
eXN0ZW0gaWYgbWtpIGlzIGJlaW5nIHVzZWQuICBJZiAKLSAqIHNldCB0byBmYWxzZSB0aGVuIHdp
bGwgdXNlIHRoZSBmaXJzdCBzZXQgb2Ygc2Vzc2lvbiBrZXlzLiAgSWYgc2V0IHRvIHRydWUgd2ls
bAorICogQHBhcmFtIHVzZV9ta2kgaXMgYSBib29sZWFuIHRvIHRlbGwgdGhlIHN5c3RlbSBpZiBt
a2kgaXMgYmVpbmcgdXNlZC4gIElmCisgKiBzZXQgdG8gZmFsc2UgdGhlbiB3aWxsIHVzZSB0aGUg
Zmlyc3Qgc2V0IG9mIHNlc3Npb24ga2V5cy4gIElmIHNldCB0byB0cnVlCisgKiB3aWxsCiAgKiB1
c2UgdGhlIHNlc3Npb24ga2V5cyBpZGVudGlmaWVkIGJ5IHRoZSBta2lfaW5kZXgKICAqCiAgKiBA
cGFyYW0gbWtpX2luZGV4IGludGVnZXIgdmFsdWUgc3BlY2lmeWluZyB3aGljaCBzZXQgb2Ygc2Vz
c2lvbiBrZXN5IHNob3VsZCBiZQogICogdXNlZCBpZiB1c2VfbWtpIGlzIHNldCB0byB0cnVlLgog
ICoKLSAqIEByZXR1cm4gCisgKiBAcmV0dXJuCiAgKiAgICAtIHNydHBfZXJyX3N0YXR1c19vayAg
ICAgICAgICAgIGlmIHRoZXJlIHdlcmUgbm8gcHJvYmxlbXMuCi0gKiAgICAtIFtvdGhlcl0gICAg
ICAgICAgICAgICAgICBpZiB0aGVyZSB3YXMgYSBmYWlsdXJlIGluIAorICogICAgLSBbb3RoZXJd
ICAgICAgICAgICAgICAgICAgaWYgdGhlcmUgd2FzIGEgZmFpbHVyZSBpbgogICogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgdGhlIGNyeXB0b2dyYXBoaWMgbWVjaGFuaXNtcy4KICAqLwot
Ci1zcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3Byb3RlY3RfcnRjcF9ta2koc3J0cF90IGN0eCwgdm9p
ZCAqcnRjcF9oZHIsIGludCAqcGt0X29jdGV0X2xlbiwKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgdXNlX21raSwgdW5zaWduZWQgaW50IG1raV9p
bmRleCk7CitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3Byb3RlY3RfcnRjcF9ta2koc3J0cF90IGN0
eCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2b2lkICpydGNwX2hk
ciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgKnBrdF9vY3Rl
dF9sZW4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQg
aW50IHVzZV9ta2ksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5z
aWduZWQgaW50IG1raV9pbmRleCk7CiAKIC8qKgogICogQGJyaWVmIHNydHBfdW5wcm90ZWN0X3J0
Y3AoKSBpcyB0aGUgU2VjdXJlIFJUQ1AgcmVjZWl2ZXItc2lkZSBwYWNrZXQKQEAgLTE0MjIsNyAr
MTM4OCw3IEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfcHJvdGVjdF9ydGNwX21raShzcnRwX3Qg
Y3R4LCB2b2lkICpydGNwX2hkciwgaW50ICpwa3Rfb2N0CiAgKiB0byB0aGUgcmVzdWx0aW5nIFJU
Q1AgcGFja2V0IGFuZCAqbGVuX3B0ciBpcyB0aGUgbnVtYmVyIG9mIG9jdGV0cwogICogaW4gdGhh
dCBwYWNrZXQ7IG90aGVyd2lzZSwgbm8gYXNzdW1wdGlvbnMgc2hvdWxkIGJlIG1hZGUgYWJvdXQg
dGhlCiAgKiB2YWx1ZSBvZiBlaXRoZXIgZGF0YSBlbGVtZW50cy4KLSAqIAorICoKICAqIEB3YXJu
aW5nIFRoaXMgZnVuY3Rpb24gYXNzdW1lcyB0aGF0IHRoZSBTUlRDUCBwYWNrZXQgaXMgYWxpZ25l
ZCBvbiBhCiAgKiAzMi1iaXQgYm91bmRhcnkuCiAgKgpAQCAtMTQ0MCwxNyArMTQwNiwxOCBAQCBz
cnRwX2Vycl9zdGF0dXNfdCBzcnRwX3Byb3RlY3RfcnRjcF9ta2koc3J0cF90IGN0eCwgdm9pZCAq
cnRjcF9oZHIsIGludCAqcGt0X29jdAogICogcmV0dXJuZWQuICBPdGhlcndpc2UsIHRoZSB2YWx1
ZSBvZiB0aGUgZGF0YSB0byB3aGljaCBpdCBwb2ludHMgaXMKICAqIHVuZGVmaW5lZC4KICAqCi0g
KiBAcmV0dXJuIAorICogQHJldHVybgogICogICAgLSBzcnRwX2Vycl9zdGF0dXNfb2sgICAgICAg
ICAgaWYgdGhlIFJUQ1AgcGFja2V0IGlzIHZhbGlkLgotICogICAgLSBzcnRwX2Vycl9zdGF0dXNf
YXV0aF9mYWlsICAgaWYgdGhlIFNSVENQIHBhY2tldCBmYWlsZWQgdGhlIG1lc3NhZ2UgCisgKiAg
ICAtIHNydHBfZXJyX3N0YXR1c19hdXRoX2ZhaWwgICBpZiB0aGUgU1JUQ1AgcGFja2V0IGZhaWxl
ZCB0aGUgbWVzc2FnZQogICogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF1dGhlbnRpY2F0
aW9uIGNoZWNrLgogICogICAgLSBzcnRwX2Vycl9zdGF0dXNfcmVwbGF5X2ZhaWwgaWYgdGhlIFNS
VENQIHBhY2tldCBpcyBhIHJlcGxheSAoZS5nLiBoYXMKICAqICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBhbHJlYWR5IGJlZW4gcHJvY2Vzc2VkIGFuZCBhY2NlcHRlZCkuCiAgKiAgICAtIFtv
dGhlcl0gIGlmIHRoZXJlIGhhcyBiZWVuIGFuIGVycm9yIGluIHRoZSBjcnlwdG9ncmFwaGljIG1l
Y2hhbmlzbXMuCiAgKgogICovCi0KLXNydHBfZXJyX3N0YXR1c190IHNydHBfdW5wcm90ZWN0X3J0
Y3Aoc3J0cF90IGN0eCwgdm9pZCAqc3J0Y3BfaGRyLCBpbnQgKnBrdF9vY3RldF9sZW4pOworc3J0
cF9lcnJfc3RhdHVzX3Qgc3J0cF91bnByb3RlY3RfcnRjcChzcnRwX3QgY3R4LAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2b2lkICpzcnRjcF9oZHIsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCAqcGt0X29jdGV0X2xlbik7CiAKIC8qKgog
ICogQGJyaWVmIHNydHBfdW5wcm90ZWN0X3J0Y3AoKSBpcyB0aGUgU2VjdXJlIFJUQ1AgcmVjZWl2
ZXItc2lkZSBwYWNrZXQKQEAgLTE0NjMsNyArMTQzMCw3IEBAIHNydHBfZXJyX3N0YXR1c190IHNy
dHBfdW5wcm90ZWN0X3J0Y3Aoc3J0cF90IGN0eCwgdm9pZCAqc3J0Y3BfaGRyLCBpbnQgKnBrdF9v
Y3RlCiAgKiB0byB0aGUgcmVzdWx0aW5nIFJUQ1AgcGFja2V0IGFuZCAqbGVuX3B0ciBpcyB0aGUg
bnVtYmVyIG9mIG9jdGV0cwogICogaW4gdGhhdCBwYWNrZXQ7IG90aGVyd2lzZSwgbm8gYXNzdW1w
dGlvbnMgc2hvdWxkIGJlIG1hZGUgYWJvdXQgdGhlCiAgKiB2YWx1ZSBvZiBlaXRoZXIgZGF0YSBl
bGVtZW50cy4KLSAqIAorICoKICAqIEB3YXJuaW5nIFRoaXMgZnVuY3Rpb24gYXNzdW1lcyB0aGF0
IHRoZSBTUlRDUCBwYWNrZXQgaXMgYWxpZ25lZCBvbiBhCiAgKiAzMi1iaXQgYm91bmRhcnkuCiAg
KgpAQCAtMTQ4MiwyMSArMTQ0OSwyMyBAQCBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3VucHJvdGVj
dF9ydGNwKHNydHBfdCBjdHgsIHZvaWQgKnNydGNwX2hkciwgaW50ICpwa3Rfb2N0ZQogICogdW5k
ZWZpbmVkLgogICoKICAqIEBwYXJhbSB1c2VfbWtpIGlzIGEgYm9vbGVhbiB0byB0ZWxsIHRoZSBz
eXN0ZW0gaWYgbWtpIGlzIGJlaW5nIHVzZWQuICBJZgotICogc2V0IHRvIGZhbHNlIHRoZW4gd2ls
bCB1c2UgdGhlIGZpcnN0IHNldCBvZiBzZXNzaW9uIGtleXMuICBJZiBzZXQgdG8gdHJ1ZSB3aWxs
Ci0gKiB1c2UgdGhlIHNlc3Npb24ga2V5cyBpZGVudGlmaWVkIGJ5IHRoZSBta2lfaW5kZXgKKyAq
IHNldCB0byBmYWxzZSB0aGVuIHdpbGwgdXNlIHRoZSBmaXJzdCBzZXQgb2Ygc2Vzc2lvbiBrZXlz
LiAgSWYgc2V0IHRvIHRydWUKKyAqIHdpbGwgdXNlIHRoZSBzZXNzaW9uIGtleXMgaWRlbnRpZmll
ZCBieSB0aGUgbWtpX2luZGV4CiAgKgotICogQHJldHVybiAKKyAqIEByZXR1cm4KICAqICAgIC0g
c3J0cF9lcnJfc3RhdHVzX29rICAgICAgICAgIGlmIHRoZSBSVENQIHBhY2tldCBpcyB2YWxpZC4K
LSAqICAgIC0gc3J0cF9lcnJfc3RhdHVzX2F1dGhfZmFpbCAgIGlmIHRoZSBTUlRDUCBwYWNrZXQg
ZmFpbGVkIHRoZSBtZXNzYWdlIAotICogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF1dGhl
bnRpY2F0aW9uIGNoZWNrLgorICogICAgLSBzcnRwX2Vycl9zdGF0dXNfYXV0aF9mYWlsICAgaWYg
dGhlIFNSVENQIHBhY2tldCBmYWlsZWQgdGhlIG1lc3NhZ2UKKyAqICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGF1dGhlbnRpY2F0aW9uIGNoZWNrLgogICogICAgLSBzcnRwX2Vycl9z
dGF0dXNfcmVwbGF5X2ZhaWwgaWYgdGhlIFNSVENQIHBhY2tldCBpcyBhIHJlcGxheSAoZS5nLiBo
YXMKLSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbHJlYWR5IGJlZW4gcHJvY2Vzc2Vk
IGFuZCBhY2NlcHRlZCkuCi0gKiAgICAtIHNydHBfZXJyX3N0YXR1c19iYWRfbWtpIGlmIHRoZSBN
S0kgaW4gdGhlIHBhY2tldCBpcyBub3QgYSBrbm93biBNS0kgaWQKLSAqICAgIC0gW290aGVyXSAg
aWYgdGhlcmUgaGFzIGJlZW4gYW4gZXJyb3IgaW4gdGhlIGNyeXB0b2dyYXBoaWMgbWVjaGFuaXNt
cy4KKyAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFscmVhZHkgYmVlbiBwcm9j
ZXNzZWQgYW5kIGFjY2VwdGVkKS4KKyAqICAgIC0gc3J0cF9lcnJfc3RhdHVzX2JhZF9ta2kgICAg
IGlmIHRoZSBNS0kgaW4gdGhlIHBhY2tldCBpcyBub3QgYSBrbm93biBNS0kKKyAqICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGlkCisgKiAgICAtIFtvdGhlcl0gICAgICAgICAgICAg
ICAgICAgICBpZiB0aGVyZSBoYXMgYmVlbiBhbiBlcnJvciBpbiB0aGUKKyAqICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGNyeXB0b2dyYXBoaWMgbWVjaGFuaXNtcy4KICAqCiAgKi8K
LQotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF91bnByb3RlY3RfcnRjcF9ta2koc3J0cF90IGN0eCwg
dm9pZCAqc3J0Y3BfaGRyLAorc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF91bnByb3RlY3RfcnRjcF9t
a2koc3J0cF90IGN0eCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHZvaWQgKnNydGNwX2hkciwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGludCAqcGt0X29jdGV0X2xlbiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHVuc2lnbmVkIGludCB1c2VfbWtpKTsKIApAQCAtMTUwNCw3ICsxNDczLDYgQEAg
c3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF91bnByb3RlY3RfcnRjcF9ta2koc3J0cF90IGN0eCwgdm9p
ZCAqc3J0Y3BfaGRyLAogICogQH0KICAqLwogCi0KIC8qKgogICogQGRlZmdyb3VwIFVzZXIgZGF0
YSBhc3NvY2lhdGVkIHRvIGEgU1JUUCBzZXNzaW9uLgogICogQGluZ3JvdXAgIFNSVFAKQEAgLTE1
MjcsOSArMTQ5NSw3IEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfdW5wcm90ZWN0X3J0Y3BfbWtp
KHNydHBfdCBjdHgsIHZvaWQgKnNydGNwX2hkciwKICAqIEByZXR1cm4gdm9pZC4KICAqCiAgKi8K
LQotdm9pZAotc3J0cF9zZXRfdXNlcl9kYXRhKHNydHBfdCBjdHgsIHZvaWQgKmRhdGEpOwordm9p
ZCBzcnRwX3NldF91c2VyX2RhdGEoc3J0cF90IGN0eCwgdm9pZCAqZGF0YSk7CiAKIC8qKgogICog
QGJyaWVmIHNydHBfZ2V0X3VzZXJfZGF0YSgpIHJldHJpZXZlcyB0aGUgcG9pbnRlciB0byB0aGUg
Y3VzdG9tIGRhdGEKQEAgLTE1NDYsMjMgKzE1MTIsMjAgQEAgc3J0cF9zZXRfdXNlcl9kYXRhKHNy
dHBfdCBjdHgsIHZvaWQgKmRhdGEpOwogICogQHJldHVybiB2b2lkKiBwb2ludGVyIHRvIHRoZSB1
c2VyIGRhdGEuCiAgKgogICovCi0KLXZvaWQqCi1zcnRwX2dldF91c2VyX2RhdGEoc3J0cF90IGN0
eCk7Cit2b2lkICpzcnRwX2dldF91c2VyX2RhdGEoc3J0cF90IGN0eCk7CiAKIC8qKgogICogQH0K
ICAqLwogCi0KIC8qKgogICogQGRlZmdyb3VwIFNSVFBldmVudHMgU1JUUCBldmVudHMgYW5kIGNh
bGxiYWNrcwogICogQGluZ3JvdXAgIFNSVFAKICAqCi0gKiBAYnJpZWYgbGliU1JUUCBjYW4gdXNl
IGEgdXNlci1wcm92aWRlZCBjYWxsYmFjayBmdW5jdGlvbiB0byAKKyAqIEBicmllZiBsaWJTUlRQ
IGNhbiB1c2UgYSB1c2VyLXByb3ZpZGVkIGNhbGxiYWNrIGZ1bmN0aW9uIHRvCiAgKiBoYW5kbGUg
ZXZlbnRzLgogICoKLSAqIAorICoKICAqIGxpYlNSVFAgYWxsb3dzIGEgdXNlciB0byBwcm92aWRl
IGEgY2FsbGJhY2sgZnVuY3Rpb24gdG8gaGFuZGxlCiAgKiBldmVudHMgdGhhdCBuZWVkIHRvIGJl
IGRlYWx0IHdpdGggb3V0c2lkZSBvZiB0aGUgZGF0YSBwbGFuZSAoc2VlCiAgKiB0aGUgZW51bSBz
cnRwX2V2ZW50X3QgZm9yIGEgZGVzY3JpcHRpb24gb2YgdGhlc2UgZXZlbnRzKS4gIERlYWxpbmcK
QEAgLTE1ODMsOCArMTU0Niw4IEBAIHNydHBfZ2V0X3VzZXJfZGF0YShzcnRwX3QgY3R4KTsKICAq
IEBicmllZiBzcnRwX2V2ZW50X3QgZGVmaW5lcyBldmVudHMgdGhhdCBuZWVkIHRvIGJlIGhhbmRs
ZWQKICAqCiAgKiBUaGUgZW51bSBzcnRwX2V2ZW50X3QgZGVmaW5lcyBldmVudHMgdGhhdCBuZWVk
IHRvIGJlIGhhbmRsZWQKLSAqIG91dHNpZGUgdGhlIGBkYXRhIHBsYW5lJywgc3VjaCBhcyBTU1JD
IGNvbGxpc2lvbnMgYW5kIAotICoga2V5IGV4cGlyYXRpb25zLiAgCisgKiBvdXRzaWRlIHRoZSBg
ZGF0YSBwbGFuZScsIHN1Y2ggYXMgU1NSQyBjb2xsaXNpb25zIGFuZAorICoga2V5IGV4cGlyYXRp
b25zLgogICoKICAqIFdoZW4gYSBrZXkgZXhwaXJlcyBvciB0aGUgbWF4aW11bSBudW1iZXIgb2Yg
cGFja2V0cyBoYXMgYmVlbgogICogcmVhY2hlZCwgYW4gU1JUUCBzdHJlYW0gd2lsbCBlbnRlciBh
biBgZXhwaXJlZCcgc3RhdGUgaW4gd2hpY2ggbm8KQEAgLTE1OTYsMzQgKzE1NTksMjggQEAgc3J0
cF9nZXRfdXNlcl9kYXRhKHNydHBfdCBjdHgpOwogICogYXJlIHVuYWZmZWN0ZWQsIHVubGVzcyBr
ZXkgc2hhcmluZyBpcyB1c2VkIGJ5IHRoYXQgc3RyZWFtLiAgSW4gdGhlCiAgKiBsYXR0ZXIgY2Fz
ZSwgYWxsIG9mIHRoZSBzdHJlYW1zIGluIHRoZSBzZXNzaW9uIHdpbGwgZXhwaXJlLgogICovCi0K
LXR5cGVkZWYgZW51bSB7IAotICBldmVudF9zc3JjX2NvbGxpc2lvbiwgICAgLyoqPAotCQkJICAg
ICogQW4gU1NSQyBjb2xsaXNpb24gb2NjdXJlZC4gICAgICAgICAgICAgCi0JCQkgICAgKi8KLSAg
ZXZlbnRfa2V5X3NvZnRfbGltaXQsICAgIC8qKjwgQW4gU1JUUCBzdHJlYW0gcmVhY2hlZCB0aGUg
c29mdCBrZXkKLQkJCSAgICAqICAgdXNhZ2UgbGltaXQgYW5kIHdpbGwgZXhwaXJlIHNvb24uCSAg
IAotCQkJICAgICovCi0gIGV2ZW50X2tleV9oYXJkX2xpbWl0LCAgICAvKio8IEFuIFNSVFAgc3Ry
ZWFtIHJlYWNoZWQgdGhlIGhhcmQgCi0JCQkgICAgKiAgIGtleSB1c2FnZSBsaW1pdCBhbmQgaGFz
IGV4cGlyZWQuCi0JCQkgICAgKi8KLSAgZXZlbnRfcGFja2V0X2luZGV4X2xpbWl0IC8qKjwgQW4g
U1JUUCBzdHJlYW0gcmVhY2hlZCB0aGUgaGFyZCAKLQkJCSAgICAqIHBhY2tldCBsaW1pdCAoMl40
OCBwYWNrZXRzKS4gICAgICAgICAgICAgCi0JCQkgICAgKi8KK3R5cGVkZWYgZW51bSB7CisgICAg
ZXZlbnRfc3NyY19jb2xsaXNpb24sICAgIC8qKjwgQW4gU1NSQyBjb2xsaXNpb24gb2NjdXJlZC4g
ICAgICAgICAgICAqLworICAgIGV2ZW50X2tleV9zb2Z0X2xpbWl0LCAgICAvKio8IEFuIFNSVFAg
c3RyZWFtIHJlYWNoZWQgdGhlIHNvZnQga2V5ICAgKi8KKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgLyoqPCB1c2FnZSBsaW1pdCBhbmQgd2lsbCBleHBpcmUgc29vbi4gICAgICovCisgICAg
ZXZlbnRfa2V5X2hhcmRfbGltaXQsICAgIC8qKjwgQW4gU1JUUCBzdHJlYW0gcmVhY2hlZCB0aGUg
aGFyZCAgICAgICAqLworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKio8IGtleSB1c2Fn
ZSBsaW1pdCBhbmQgaGFzIGV4cGlyZWQuICAgICAgKi8KKyAgICBldmVudF9wYWNrZXRfaW5kZXhf
bGltaXQgLyoqPCBBbiBTUlRQIHN0cmVhbSByZWFjaGVkIHRoZSBoYXJkICAgICAgICovCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qKjwgcGFja2V0IGxpbWl0ICgyXjQ4IHBhY2tldHMp
LiAgICAgICAgICAqLwogfSBzcnRwX2V2ZW50X3Q7CiAKIC8qKgotICogQGJyaWVmIHNydHBfZXZl
bnRfZGF0YV90IGlzIHRoZSBzdHJ1Y3R1cmUgcGFzc2VkIGFzIGEgY2FsbGJhY2sgdG8gCisgKiBA
YnJpZWYgc3J0cF9ldmVudF9kYXRhX3QgaXMgdGhlIHN0cnVjdHVyZSBwYXNzZWQgYXMgYSBjYWxs
YmFjayB0bwogICogdGhlIGV2ZW50IGhhbmRsZXIgZnVuY3Rpb24KICAqCiAgKiBUaGUgc3RydWN0
IHNydHBfZXZlbnRfZGF0YV90IGhvbGRzIHRoZSBkYXRhIHBhc3NlZCB0byB0aGUgZXZlbnQKLSAq
IGhhbmRsZXIgZnVuY3Rpb24uICAKKyAqIGhhbmRsZXIgZnVuY3Rpb24uCiAgKi8KLQogdHlwZWRl
ZiBzdHJ1Y3Qgc3J0cF9ldmVudF9kYXRhX3QgewotICBzcnRwX3QgICAgICAgIHNlc3Npb247ICAv
Kio8IFRoZSBzZXNzaW9uIGluIHdoaWNoIHRoZSBldmVudCBoYXBwZW5kLiAqLwotICB1aW50MzJf
dCAgICAgIHNzcmM7ICAgICAvKio8IFRoZSBzc3JjIGluIGhvc3Qgb3JkZXIgb2YgdGhlIHN0cmVh
bSBpbiB3aGljaCB0aGUgZXZlbnQgaGFwcGVuZCAqLwotICBzcnRwX2V2ZW50X3QgIGV2ZW50OyAg
ICAvKio8IEFuIGVudW0gaW5kaWNhdGluZyB0aGUgdHlwZSBvZiBldmVudC4gICAqLworICAgIHNy
dHBfdCBzZXNzaW9uOyAgICAgLyoqPCBUaGUgc2Vzc2lvbiBpbiB3aGljaCB0aGUgZXZlbnQgaGFw
cGVuZC4gICAgICAgICovCisgICAgdWludDMyX3Qgc3NyYzsgICAgICAvKio8IFRoZSBzc3JjIGlu
IGhvc3Qgb3JkZXIgb2YgdGhlIHN0cmVhbSBpbiB3aGljaCAgKi8KKyAgICAgICAgICAgICAgICAg
ICAgICAgIC8qKjwgdGhlIGV2ZW50IGhhcHBlbmQgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAqLworICAgIHNydHBfZXZlbnRfdCBldmVudDsgLyoqPCBBbiBlbnVtIGluZGljYXRpbmcgdGhl
IHR5cGUgb2YgZXZlbnQuICAgICAgICAgICovCiB9IHNydHBfZXZlbnRfZGF0YV90OwogCiAvKioK
QEAgLTE2MzYsMTIgKzE1OTMsMTEgQEAgdHlwZWRlZiBzdHJ1Y3Qgc3J0cF9ldmVudF9kYXRhX3Qg
ewogICogVGhlcmUgY2FuIG9ubHkgYmUgYSBzaW5nbGUsIGdsb2JhbCBoYW5kbGVyIGZvciBhbGwg
ZXZlbnRzIGluCiAgKiBsaWJTUlRQLgogICovCi0KLXR5cGVkZWYgdm9pZCAoc3J0cF9ldmVudF9o
YW5kbGVyX2Z1bmNfdCkoc3J0cF9ldmVudF9kYXRhX3QgKmRhdGEpOwordHlwZWRlZiB2b2lkKHNy
dHBfZXZlbnRfaGFuZGxlcl9mdW5jX3QpKHNydHBfZXZlbnRfZGF0YV90ICpkYXRhKTsKIAogLyoq
CiAgKiBAYnJpZWYgc2V0cyB0aGUgZXZlbnQgaGFuZGxlciB0byB0aGUgZnVuY3Rpb24gc3VwcGxp
ZWQgYnkgdGhlIGNhbGxlci4KLSAqIAorICoKICAqIFRoZSBmdW5jdGlvbiBjYWxsIHNydHBfaW5z
dGFsbF9ldmVudF9oYW5kbGVyKGZ1bmMpIHNldHMgdGhlIGV2ZW50CiAgKiBoYW5kbGVyIGZ1bmN0
aW9uIHRvIHRoZSB2YWx1ZSBmdW5jLiAgVGhlIHZhbHVlIE5VTEwgaXMgYWNjZXB0YWJsZQogICog
YXMgYW4gYXJndW1lbnQ7IGluIHRoaXMgY2FzZSwgZXZlbnRzIHdpbGwgYmUgaWdub3JlZCByYXRo
ZXIgdGhhbgpAQCAtMTY1MSwyNCArMTYwNywyMyBAQCB0eXBlZGVmIHZvaWQgKHNydHBfZXZlbnRf
aGFuZGxlcl9mdW5jX3QpKHNydHBfZXZlbnRfZGF0YV90ICpkYXRhKTsKICAqICAgICAgICAgICAg
IHBvaW50ZXIgYXMgYW4gYXJndW1lbnQgYW5kIHJldHVybnMgdm9pZC4gIFRoaXMgZnVuY3Rpb24K
ICAqICAgICAgICAgICAgIHdpbGwgYmUgdXNlZCBieSBsaWJTUlRQIHRvIGhhbmRsZSBldmVudHMu
CiAgKi8KLQogc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9pbnN0YWxsX2V2ZW50X2hhbmRsZXIoc3J0
cF9ldmVudF9oYW5kbGVyX2Z1bmNfdCBmdW5jKTsKIAogLyoqCi0gKiBAYnJpZWYgUmV0dXJucyB0
aGUgdmVyc2lvbiBzdHJpbmcgb2YgdGhlIGxpYnJhcnkuIAotICogCisgKiBAYnJpZWYgUmV0dXJu
cyB0aGUgdmVyc2lvbiBzdHJpbmcgb2YgdGhlIGxpYnJhcnkuCisgKgogICovCiBjb25zdCBjaGFy
ICpzcnRwX2dldF92ZXJzaW9uX3N0cmluZyh2b2lkKTsKIAogLyoqCi0gKiBAYnJpZWYgUmV0dXJu
cyB0aGUgbnVtZXJpYyByZXByZXNlbnRhdGlvbiBvZiB0aGUgbGlicmFyeSB2ZXJzaW9uLiAKLSAq
IAorICogQGJyaWVmIFJldHVybnMgdGhlIG51bWVyaWMgcmVwcmVzZW50YXRpb24gb2YgdGhlIGxp
YnJhcnkgdmVyc2lvbi4KKyAqCiAgKi8KIHVuc2lnbmVkIGludCBzcnRwX2dldF92ZXJzaW9uKHZv
aWQpOwogCiAvKioKICAqIEBicmllZiBzcnRwX3NldF9kZWJ1Z19tb2R1bGUobW9kX25hbWUsIHYp
Ci0gKiAKKyAqCiAgKiBzZXRzIGR5bmFtaWMgZGVidWdnaW5nIHRvIHRoZSB2YWx1ZSB2ICgwIGZv
ciBvZmYsIDEgZm9yIG9uKSBmb3IgdGhlCiAgKiBkZWJ1ZyBtb2R1bGUgd2l0aCB0aGUgbmFtZSBt
b2RfbmFtZQogICoKQEAgLTE3MDYsNyArMTY2MSw5IEBAIHR5cGVkZWYgZW51bSB7CiAgKiBUaGVy
ZSBjYW4gb25seSBiZSBhIHNpbmdsZSwgZ2xvYmFsIGhhbmRsZXIgZm9yIGFsbCBsb2cgbWVzc2Fn
ZXMgaW4KICAqIGxpYlNSVFAuCiAgKi8KLXR5cGVkZWYgdm9pZCAoc3J0cF9sb2dfaGFuZGxlcl9m
dW5jX3QpKHNydHBfbG9nX2xldmVsX3QgbGV2ZWwsIGNvbnN0IGNoYXIgKiBtc2csIHZvaWQgKmRh
dGEpOwordHlwZWRlZiB2b2lkKHNydHBfbG9nX2hhbmRsZXJfZnVuY190KShzcnRwX2xvZ19sZXZl
bF90IGxldmVsLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBj
aGFyICptc2csCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZvaWQgKmRh
dGEpOwogCiAvKioKICAqIEBicmllZiBzZXRzIHRoZSBsb2cgaGFuZGxlciB0byB0aGUgZnVuY3Rp
b24gc3VwcGxpZWQgYnkgdGhlIGNhbGxlci4KQEAgLTE3MTksMzQgKzE2NzYsNDQgQEAgdHlwZWRl
ZiB2b2lkIChzcnRwX2xvZ19oYW5kbGVyX2Z1bmNfdCkoc3J0cF9sb2dfbGV2ZWxfdCBsZXZlbCwg
Y29uc3QgY2hhciAqIG1zZywKICAqCiAgKiBAcGFyYW0gZnVuYyBpcyBhIHBvaW50ZXIgdG8gYSBm
dWN0aW9uIG9mIHR5cGUgc3J0cF9sb2dfaGFuZGxlcl9mdW5jX3QuCiAgKiAgICAgICAgICAgICBU
aGlzIGZ1bmN0aW9uIHdpbGwgYmUgdXNlZCBieSBsaWJTUlRQIHRvIG91dHB1dCBsb2cgbWVzc2Fn
ZXMuCi0gKiBAcGFyYW0gZGF0YSBpcyBhIHVzZXIgcG9pbnRlciB0aGF0IHdpbGwgYmUgcmV0dXJu
ZWQgYXMgdGhlIGRhdGEgYXJndW1lbnQgaW4gZnVuYy4KKyAqIEBwYXJhbSBkYXRhIGlzIGEgdXNl
ciBwb2ludGVyIHRoYXQgd2lsbCBiZSByZXR1cm5lZCBhcyB0aGUgZGF0YSBhcmd1bWVudCBpbgor
ICogZnVuYy4KICAqLwotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9pbnN0YWxsX2xvZ19oYW5kbGVy
KHNydHBfbG9nX2hhbmRsZXJfZnVuY190IGZ1bmMsIHZvaWQgKmRhdGEpOworc3J0cF9lcnJfc3Rh
dHVzX3Qgc3J0cF9pbnN0YWxsX2xvZ19oYW5kbGVyKHNydHBfbG9nX2hhbmRsZXJfZnVuY190IGZ1
bmMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdm9pZCAqZGF0
YSk7CiAKIC8qKgogICogQGJyaWVmIHNydHBfZ2V0X3Byb3RlY3RfdHJhaWxlcl9sZW5ndGgoc2Vz
c2lvbiwgdXNlX21raSwgbWtpX2luZGV4LCBsZW5ndGgpCiAgKgotICogRGV0ZXJtaW5lcyB0aGUg
bGVuZ3RoIG9mIHRoZSBhbW91bnQgb2YgZGF0YSBMaWIgU1JUUCB3aWxsIGFkZCB0byB0aGUgCi0g
KiBwYWNrZXQgZHVyaW5nIHRoZSBwcm90ZWN0IHByb2Nlc3MuIFRoZSBsZW5ndGggaXMgcmV0dXJu
ZWQgaW4gdGhlIGxlbmd0aCBwYXJhbWV0ZXIKKyAqIERldGVybWluZXMgdGhlIGxlbmd0aCBvZiB0
aGUgYW1vdW50IG9mIGRhdGEgTGliIFNSVFAgd2lsbCBhZGQgdG8gdGhlCisgKiBwYWNrZXQgZHVy
aW5nIHRoZSBwcm90ZWN0IHByb2Nlc3MuIFRoZSBsZW5ndGggaXMgcmV0dXJuZWQgaW4gdGhlIGxl
bmd0aAorICogcGFyYW1ldGVyCiAgKgotICogcmV0dXJucyBlcnJfc3RhdHVzX29rIG9uIHN1Y2Nl
c3MsIGVycl9zdGF0dXNfYmFkX21raSBpZiB0aGUgTUtJIGluZGV4IGlzIGludmFsaWQKKyAqIHJl
dHVybnMgZXJyX3N0YXR1c19vayBvbiBzdWNjZXNzLCBlcnJfc3RhdHVzX2JhZF9ta2kgaWYgdGhl
IE1LSSBpbmRleCBpcworICogaW52YWxpZAogICoKICAqLwotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0
cF9nZXRfcHJvdGVjdF90cmFpbGVyX2xlbmd0aChzcnRwX3Qgc2Vzc2lvbiwgdWludDMyX3QgdXNl
X21raSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
dWludDMyX3QgbWtpX2luZGV4LCB1aW50MzJfdCAqbGVuZ3RoKTsKK3NydHBfZXJyX3N0YXR1c190
IHNydHBfZ2V0X3Byb3RlY3RfdHJhaWxlcl9sZW5ndGgoc3J0cF90IHNlc3Npb24sCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IHVzZV9t
a2ksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVp
bnQzMl90IG1raV9pbmRleCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgdWludDMyX3QgKmxlbmd0aCk7CiAKIC8qKgotICogQGJyaWVmIHNydHBfZ2V0
X3Byb3RlY3RfcnRjcF90cmFpbGVyX2xlbmd0aChzZXNzaW9uLCB1c2VfbWtpLCBta2lfaW5kZXgs
IGxlbmd0aCkKKyAqIEBicmllZiBzcnRwX2dldF9wcm90ZWN0X3J0Y3BfdHJhaWxlcl9sZW5ndGgo
c2Vzc2lvbiwgdXNlX21raSwgbWtpX2luZGV4LAorICogbGVuZ3RoKQogICoKLSAqIERldGVybWlu
ZXMgdGhlIGxlbmd0aCBvZiB0aGUgYW1vdW50IG9mIGRhdGEgTGliIFNSVFAgd2lsbCBhZGQgdG8g
dGhlIAotICogcGFja2V0IGR1cmluZyB0aGUgcHJvdGVjdCBwcm9jZXNzLiBUaGUgbGVuZ3RoIGlz
IHJldHVybmVkIGluIHRoZSBsZW5ndGggcGFyYW1ldGVyCisgKiBEZXRlcm1pbmVzIHRoZSBsZW5n
dGggb2YgdGhlIGFtb3VudCBvZiBkYXRhIExpYiBTUlRQIHdpbGwgYWRkIHRvIHRoZQorICogcGFj
a2V0IGR1cmluZyB0aGUgcHJvdGVjdCBwcm9jZXNzLiBUaGUgbGVuZ3RoIGlzIHJldHVybmVkIGlu
IHRoZSBsZW5ndGgKKyAqIHBhcmFtZXRlcgogICoKLSAqIHJldHVybnMgZXJyX3N0YXR1c19vayBv
biBzdWNjZXNzLCBlcnJfc3RhdHVzX2JhZF9ta2kgaWYgdGhlIE1LSSBpbmRleCBpcyBpbnZhbGlk
CisgKiByZXR1cm5zIGVycl9zdGF0dXNfb2sgb24gc3VjY2VzcywgZXJyX3N0YXR1c19iYWRfbWtp
IGlmIHRoZSBNS0kgaW5kZXggaXMKKyAqIGludmFsaWQKICAqCiAgKi8KLXNydHBfZXJyX3N0YXR1
c190IHNydHBfZ2V0X3Byb3RlY3RfcnRjcF90cmFpbGVyX2xlbmd0aChzcnRwX3Qgc2Vzc2lvbiwg
dWludDMyX3QgdXNlX21raSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICB1aW50MzJfdCBta2lfaW5kZXgsIHVpbnQzMl90ICpsZW5ndGgpOwot
CitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2dldF9wcm90ZWN0X3J0Y3BfdHJhaWxlcl9sZW5ndGgo
c3J0cF90IHNlc3Npb24sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgdWludDMyX3QgdXNlX21raSwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBta2lfaW5kZXgsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMy
X3QgKmxlbmd0aCk7CiAKIC8qKgogICogQGJyaWVmIHNydHBfc2V0X3N0cmVhbV9yb2Moc2Vzc2lv
biwgc3NyYywgcm9jKQpAQCAtMTc1Nyw3ICsxNzI0LDkgQEAgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0
cF9nZXRfcHJvdGVjdF9ydGNwX3RyYWlsZXJfbGVuZ3RoKHNydHBfdCBzZXNzaW9uLCB1aW50MzJf
dAogICogc3RyZWFtIGZvdW5kCiAgKgogICovCi1zcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3NldF9z
dHJlYW1fcm9jKHNydHBfdCBzZXNzaW9uLCB1aW50MzJfdCBzc3JjLCB1aW50MzJfdCByb2MpOwor
c3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9zZXRfc3RyZWFtX3JvYyhzcnRwX3Qgc2Vzc2lvbiwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3Qgc3NyYywKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3Qgcm9jKTsKIAogLyoqCiAg
KiBAYnJpZWYgc3J0cF9nZXRfc3RyZWFtX3JvYyhzZXNzaW9uLCBzc3JjLCByb2MpCkBAIC0xNzY4
LDE0ICsxNzM3LDE3IEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfc2V0X3N0cmVhbV9yb2Moc3J0
cF90IHNlc3Npb24sIHVpbnQzMl90IHNzcmMsIHVpbnQzMl90IHJvCiAgKiBzdHJlYW0gZm91bmQK
ICAqCiAgKi8KLXNydHBfZXJyX3N0YXR1c190IHNydHBfZ2V0X3N0cmVhbV9yb2Moc3J0cF90IHNl
c3Npb24sIHVpbnQzMl90IHNzcmMsIHVpbnQzMl90ICpyb2MpOwotCitzcnRwX2Vycl9zdGF0dXNf
dCBzcnRwX2dldF9zdHJlYW1fcm9jKHNydHBfdCBzZXNzaW9uLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBzc3JjLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICB1aW50MzJfdCAqcm9jKTsKIAogLyoqCiAgKiBAfQogICovCisKIC8q
IGluIGhvc3Qgb3JkZXIsIHNvIG91dHNpZGUgdGhlICNpZiAqLwotI2RlZmluZSBTUlRDUF9FX0JJ
VCAgICAgIDB4ODAwMDAwMDAKKyNkZWZpbmUgU1JUQ1BfRV9CSVQgMHg4MDAwMDAwMAorCiAvKiBm
b3IgYnl0ZS1hY2Nlc3MgKi8KICNkZWZpbmUgU1JUQ1BfRV9CWVRFX0JJVCAweDgwCiAjZGVmaW5l
IFNSVENQX0lOREVYX01BU0sgMHg3ZmZmZmZmZgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2luY2x1ZGUvc3J0cF9wcml2
LmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNy
dHAvaW5jbHVkZS9zcnRwX3ByaXYuaAppbmRleCAyNGQxOTJkYmNhMzU3NjQ1ZjlmMGI5YTlmNjky
YjJhMmE0NjgxOWQ4Li45ODhlZmM0MTY0ZDNjMWM0ZDdlZTZhNzI5YTk3ZjhmNDk2NTM4YTU4IDEw
MDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L2xpYnNydHAvaW5jbHVkZS9zcnRwX3ByaXYuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvaW5jbHVkZS9zcnRwX3ByaXYuaApAQCAt
NywyNiArNywyNiBAQAogICogQ2lzY28gU3lzdGVtcywgSW5jLgogICovCiAvKgotICoJCisgKgog
ICogQ29weXJpZ2h0IChjKSAyMDAxLTIwMTcgQ2lzY28gU3lzdGVtcywgSW5jLgogICogQWxsIHJp
Z2h0cyByZXNlcnZlZC4KLSAqIAorICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBh
cmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCiAgKiBh
cmUgbWV0OgotICogCisgKgogICogICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVz
dCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAogICogICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAKKyAqCiAgKiAgIFJl
ZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKICAq
ICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcKICAqICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg
bWF0ZXJpYWxzIHByb3ZpZGVkCiAgKiAgIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqIAorICoK
ICAqICAgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgQ2lzY28gU3lzdGVtcywgSW5jLiBub3IgdGhl
IG5hbWVzIG9mIGl0cwogICogICBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBv
ciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQKICAqICAgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhv
dXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotICogCisgKgogICogVEhJUyBT
T0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJV
VE9SUwogICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJ
TkNMVURJTkcsIEJVVCBOT1QKICAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMg
T0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCkBAIC02MiwxNCArNjIsMTQgQEAKIGV4dGVy
biAiQyIgewogI2VuZGlmCiAKLSNkZWZpbmUgU1JUUF9WRVJfU1RSSU5HCSAgICBQQUNLQUdFX1NU
UklORwotI2RlZmluZSBTUlRQX1ZFUlNJT04gICAgICAgIFBBQ0tBR0VfVkVSU0lPTgorI2RlZmlu
ZSBTUlRQX1ZFUl9TVFJJTkcgUEFDS0FHRV9TVFJJTkcKKyNkZWZpbmUgU1JUUF9WRVJTSU9OIFBB
Q0tBR0VfVkVSU0lPTgogCiB0eXBlZGVmIHN0cnVjdCBzcnRwX3N0cmVhbV9jdHhfdF8gc3J0cF9z
dHJlYW1fY3R4X3Q7CiB0eXBlZGVmIHNydHBfc3RyZWFtX2N0eF90ICpzcnRwX3N0cmVhbV90Owog
CiAvKgotICogdGhlIGZvbGxvd2luZyBkZWNsYXJhdGlvbnMgYXJlIGxpYlNSVFAgaW50ZXJuYWwg
ZnVuY3Rpb25zIAorICogdGhlIGZvbGxvd2luZyBkZWNsYXJhdGlvbnMgYXJlIGxpYlNSVFAgaW50
ZXJuYWwgZnVuY3Rpb25zCiAgKi8KIAogLyoKQEAgLTc4LDcgKzc4LDYgQEAgdHlwZWRlZiBzcnRw
X3N0cmVhbV9jdHhfdCAqc3J0cF9zdHJlYW1fdDsKICAqLwogc3J0cF9zdHJlYW1fdCBzcnRwX2dl
dF9zdHJlYW0oc3J0cF90IHNydHAsIHVpbnQzMl90IHNzcmMpOwogCi0KIC8qCiAgKiBzcnRwX3N0
cmVhbV9pbml0X2tleXMocywgaykgKHJlKWluaXRpYWxpemVzIHRoZSBzcnRwX3N0cmVhbV90IHMg
YnkKICAqIGRlcml2aW5nIGFsbCBvZiB0aGUgbmVlZGVkIGtleXMgdXNpbmcgdGhlIEtERiBhbmQg
dGhlIGtleSBrLgpAQCAtODgsMjkgKzg3LDI5IEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfc3Ry
ZWFtX2luaXRfa2V5cyhzcnRwX3N0cmVhbV9jdHhfdCAqc3J0cCwKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB1bnNpZ25lZCBpbnQgY3VycmVudF9ta2lfaW5k
ZXgpOwogCiAvKgotICogc3J0cF9zdHJlYW1faW5pdF9hbGxfbWFzdGVyX2tleXMocywgaywgbSkg
KHJlKWluaXRpYWxpemVzIHRoZSBzcnRwX3N0cmVhbV90IHMgYnkKLSAqIGRlcml2aW5nIGFsbCBv
ZiB0aGUgbmVlZGVkIGtleXMgZm9yIGFsbCB0aGUgbWFzdGVyIGtleXMgdXNpbmcgdGhlIEtERiBh
bmQgdGhlIGtleXMgZnJvbSBrLgorICogc3J0cF9zdHJlYW1faW5pdF9hbGxfbWFzdGVyX2tleXMo
cywgaywgbSkgKHJlKWluaXRpYWxpemVzIHRoZSBzcnRwX3N0cmVhbV90IHMKKyAqIGJ5IGRlcml2
aW5nIGFsbCBvZiB0aGUgbmVlZGVkIGtleXMgZm9yIGFsbCB0aGUgbWFzdGVyIGtleXMgdXNpbmcg
dGhlIEtERiBhbmQKKyAqIHRoZSBrZXlzIGZyb20gay4KICAqLwotc3J0cF9lcnJfc3RhdHVzX3Qg
c3J0cF9zdGVhbV9pbml0X2FsbF9tYXN0ZXJfa2V5cyhzcnRwX3N0cmVhbV9jdHhfdCAqc3J0cCwK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWdu
ZWQgY2hhciAqa2V5LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBzcnRwX21hc3Rlcl9rZXlfdCAqKmtleXMsCi0gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVuc2lnbmVkIGludCBtYXhfbWFzdGVy
X2tleXMpOworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9zdGVhbV9pbml0X2FsbF9tYXN0ZXJfa2V5
cygKKyAgICBzcnRwX3N0cmVhbV9jdHhfdCAqc3J0cCwKKyAgICB1bnNpZ25lZCBjaGFyICprZXks
CisgICAgc3J0cF9tYXN0ZXJfa2V5X3QgKiprZXlzLAorICAgIGNvbnN0IHVuc2lnbmVkIGludCBt
YXhfbWFzdGVyX2tleXMpOwogCiAvKgotICogc3J0cF9zdHJlYW1faW5pdChzLCBwKSBpbml0aWFs
aXplcyB0aGUgc3J0cF9zdHJlYW1fdCBzIHRvIAorICogc3J0cF9zdHJlYW1faW5pdChzLCBwKSBp
bml0aWFsaXplcyB0aGUgc3J0cF9zdHJlYW1fdCBzIHRvCiAgKiB1c2UgdGhlIHBvbGljeSBhdCB0
aGUgbG9jYXRpb24gcAogICovCiBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3N0cmVhbV9pbml0KHNy
dHBfc3RyZWFtX3Qgc3J0cCwgY29uc3Qgc3J0cF9wb2xpY3lfdCAqcCk7CiAKLQogLyoKLSAqIGxp
YnNydHAgaW50ZXJuYWwgZGF0YXR5cGVzIAorICogbGlic3J0cCBpbnRlcm5hbCBkYXRhdHlwZXMK
ICAqLwotCi10eXBlZGVmIGVudW0gZGlyZWN0aW9uX3QgeyAKLSAgZGlyX3Vua25vd24gICAgICAg
PSAwLAotICBkaXJfc3J0cF9zZW5kZXIgICA9IDEsIAotICBkaXJfc3J0cF9yZWNlaXZlciA9IDIK
K3R5cGVkZWYgZW51bSBkaXJlY3Rpb25fdCB7CisgICAgZGlyX3Vua25vd24gPSAwLAorICAgIGRp
cl9zcnRwX3NlbmRlciA9IDEsCisgICAgZGlyX3NydHBfcmVjZWl2ZXIgPSAyCiB9IGRpcmVjdGlv
bl90OwogCiAvKgpAQCAtMTE5LDU2ICsxMTgsNTIgQEAgdHlwZWRlZiBlbnVtIGRpcmVjdGlvbl90
IHsKICAqIE1LSSBJRCB3aGljaCBpcyB1c2VkIHRvIGlkZW50aWZ5IHRoZSBzZXNzaW9uIGtleXMu
CiAgKi8KIHR5cGVkZWYgc3RydWN0IHNydHBfc2Vzc2lvbl9rZXlzX3QgewotICBzcnRwX2NpcGhl
cl90ICpydHBfY2lwaGVyOwotICBzcnRwX2NpcGhlcl90ICpydHBfeHRuX2hkcl9jaXBoZXI7Ci0g
IHNydHBfYXV0aF90ICAgKnJ0cF9hdXRoOwotICBzcnRwX2NpcGhlcl90ICpydGNwX2NpcGhlcjsK
LSAgc3J0cF9hdXRoX3QgICAqcnRjcF9hdXRoOwotICB1aW50OF90ICAgICAgICBzYWx0W1NSVFBf
QUVBRF9TQUxUX0xFTl07Ci0gIHVpbnQ4X3QgICAgICAgIGNfc2FsdFtTUlRQX0FFQURfU0FMVF9M
RU5dOwotICB1aW50OF90ICAgICAgICpta2lfaWQ7Ci0gIHVuc2lnbmVkIGludCAgIG1raV9zaXpl
OwotICBzcnRwX2tleV9saW1pdF9jdHhfdCAqbGltaXQ7CisgICAgc3J0cF9jaXBoZXJfdCAqcnRw
X2NpcGhlcjsKKyAgICBzcnRwX2NpcGhlcl90ICpydHBfeHRuX2hkcl9jaXBoZXI7CisgICAgc3J0
cF9hdXRoX3QgKnJ0cF9hdXRoOworICAgIHNydHBfY2lwaGVyX3QgKnJ0Y3BfY2lwaGVyOworICAg
IHNydHBfYXV0aF90ICpydGNwX2F1dGg7CisgICAgdWludDhfdCBzYWx0W1NSVFBfQUVBRF9TQUxU
X0xFTl07CisgICAgdWludDhfdCBjX3NhbHRbU1JUUF9BRUFEX1NBTFRfTEVOXTsKKyAgICB1aW50
OF90ICpta2lfaWQ7CisgICAgdW5zaWduZWQgaW50IG1raV9zaXplOworICAgIHNydHBfa2V5X2xp
bWl0X2N0eF90ICpsaW1pdDsKIH0gc3J0cF9zZXNzaW9uX2tleXNfdDsKIAotCi0vKiAKKy8qCiAg
KiBhbiBzcnRwX3N0cmVhbV90IGhhcyBpdHMgb3duIFNTUkMsIGVuY3J5cHRpb24ga2V5LCBhdXRo
ZW50aWNhdGlvbgogICoga2V5LCBzZXF1ZW5jZSBudW1iZXIsIGFuZCByZXBsYXkgZGF0YWJhc2UK
LSAqIAorICoKICAqIG5vdGUgdGhhdCB0aGUga2V5cyBtaWdodCBub3QgYWN0dWFsbHkgYmUgdW5p
cXVlLCBpbiB3aGljaCBjYXNlIHRoZQogICogc3J0cF9jaXBoZXJfdCBhbmQgc3J0cF9hdXRoX3Qg
cG9pbnRlcnMgd2lsbCBwb2ludCB0byB0aGUgc2FtZSBzdHJ1Y3R1cmVzCiAgKi8KLQogdHlwZWRl
ZiBzdHJ1Y3Qgc3J0cF9zdHJlYW1fY3R4X3RfIHsKLSAgdWludDMyX3QgICBzc3JjOwotICBzcnRw
X3Nlc3Npb25fa2V5c190ICpzZXNzaW9uX2tleXM7Ci0gIHVuc2lnbmVkIGludCBudW1fbWFzdGVy
X2tleXM7Ci0gIHNydHBfcmRieF90ICAgICBydHBfcmRieDsKLSAgc3J0cF9zZWNfc2Vydl90IHJ0
cF9zZXJ2aWNlczsKLSAgc3J0cF9yZGJfdCAgICAgIHJ0Y3BfcmRiOwotICBzcnRwX3NlY19zZXJ2
X3QgcnRjcF9zZXJ2aWNlczsKLSAgZGlyZWN0aW9uX3QgZGlyZWN0aW9uOwotICBpbnQgICAgICAg
IGFsbG93X3JlcGVhdF90eDsKLSAgc3J0cF9la3Rfc3RyZWFtX3QgZWt0OyAKLSAgaW50ICAgICAg
ICplbmNfeHRuX2hkcjsKLSAgaW50ICAgICAgICBlbmNfeHRuX2hkcl9jb3VudDsKLSAgdWludDMy
X3QgcGVuZGluZ19yb2M7Ci0gIHN0cnVjdCBzcnRwX3N0cmVhbV9jdHhfdF8gKm5leHQ7ICAgLyog
bGlua2VkIGxpc3Qgb2Ygc3RyZWFtcyAqLworICAgIHVpbnQzMl90IHNzcmM7CisgICAgc3J0cF9z
ZXNzaW9uX2tleXNfdCAqc2Vzc2lvbl9rZXlzOworICAgIHVuc2lnbmVkIGludCBudW1fbWFzdGVy
X2tleXM7CisgICAgc3J0cF9yZGJ4X3QgcnRwX3JkYng7CisgICAgc3J0cF9zZWNfc2Vydl90IHJ0
cF9zZXJ2aWNlczsKKyAgICBzcnRwX3JkYl90IHJ0Y3BfcmRiOworICAgIHNydHBfc2VjX3NlcnZf
dCBydGNwX3NlcnZpY2VzOworICAgIGRpcmVjdGlvbl90IGRpcmVjdGlvbjsKKyAgICBpbnQgYWxs
b3dfcmVwZWF0X3R4OworICAgIHNydHBfZWt0X3N0cmVhbV90IGVrdDsKKyAgICBpbnQgKmVuY194
dG5faGRyOworICAgIGludCBlbmNfeHRuX2hkcl9jb3VudDsKKyAgICB1aW50MzJfdCBwZW5kaW5n
X3JvYzsKKyAgICBzdHJ1Y3Qgc3J0cF9zdHJlYW1fY3R4X3RfICpuZXh0OyAvKiBsaW5rZWQgbGlz
dCBvZiBzdHJlYW1zICovCiB9IHN0cnBfc3RyZWFtX2N0eF90XzsKIAotCiAvKgogICogYW4gc3J0
cF9jdHhfdCBob2xkcyBhIHN0cmVhbSBsaXN0IGFuZCBhIHNlcnZpY2UgZGVzY3JpcHRpb24KICAq
LwotCiB0eXBlZGVmIHN0cnVjdCBzcnRwX2N0eF90XyB7Ci0gIHN0cnVjdCBzcnRwX3N0cmVhbV9j
dHhfdF8gKnN0cmVhbV9saXN0OyAgICAgLyogbGlua2VkIGxpc3Qgb2Ygc3RyZWFtcyAgICAgICAg
ICAgICovCi0gIHN0cnVjdCBzcnRwX3N0cmVhbV9jdHhfdF8gKnN0cmVhbV90ZW1wbGF0ZTsgLyog
YWN0IGFzIHRlbXBsYXRlIGZvciBvdGhlciBzdHJlYW1zICovCi0gIHZvaWQgKnVzZXJfZGF0YTsg
ICAgICAgICAgICAgICAgICAgIC8qIHVzZXIgY3VzdG9tIGRhdGEgKi8KKyAgICBzdHJ1Y3Qgc3J0
cF9zdHJlYW1fY3R4X3RfICpzdHJlYW1fbGlzdDsgICAgIC8qIGxpbmtlZCBsaXN0IG9mIHN0cmVh
bXMgICAgICovCisgICAgc3RydWN0IHNydHBfc3RyZWFtX2N0eF90XyAqc3RyZWFtX3RlbXBsYXRl
OyAvKiBhY3QgYXMgdGVtcGxhdGUgZm9yIG90aGVyICAqLworICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogc3RyZWFtcyAgICAgICAgICAgICAgICAgICAg
Ki8KKyAgICB2b2lkICp1c2VyX2RhdGE7ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHVz
ZXIgY3VzdG9tIGRhdGEgICAgICAgICAgICovCiB9IHNydHBfY3R4X3RfOwogCi0KIC8qCiAgKiBz
cnRwX2hkcl90IHJlcHJlc2VudHMgYW4gUlRQIG9yIFNSVFAgaGVhZGVyLiAgVGhlIGJpdC1maWVs
ZHMgaW4KICAqIHRoaXMgc3RydWN0dXJlIHNob3VsZCBiZSBkZWNsYXJlZCAidW5zaWduZWQgaW50
IiBpbnN0ZWFkIG9mCkBAIC0yMTEsMTMgKzIwNiwxMSBAQCB0eXBlZGVmIHN0cnVjdCB7CiAKICNl
bmRpZgogCi0KIHR5cGVkZWYgc3RydWN0IHsKLSAgdWludDE2X3QgcHJvZmlsZV9zcGVjaWZpYzsg
ICAvKiBwcm9maWxlLXNwZWNpZmljIGluZm8gICAgICAgICAgICAgICAqLwotICB1aW50MTZfdCBs
ZW5ndGg7ICAgICAgICAgICAgIC8qIG51bWJlciBvZiAzMi1iaXQgd29yZHMgaW4gZXh0ZW5zaW9u
ICovCisgICAgdWludDE2X3QgcHJvZmlsZV9zcGVjaWZpYzsgLyogcHJvZmlsZS1zcGVjaWZpYyBp
bmZvICAgICAgICAgICAgICAgKi8KKyAgICB1aW50MTZfdCBsZW5ndGg7ICAgICAgICAgICAvKiBu
dW1iZXIgb2YgMzItYml0IHdvcmRzIGluIGV4dGVuc2lvbiAqLwogfSBzcnRwX2hkcl94dG5kX3Q7
CiAKLQogLyoKICAqIHNydGNwX2hkcl90IHJlcHJlc2VudHMgYSBzZWN1cmUgcnRjcCBoZWFkZXIK
ICAqCkBAIC0yMzcsMTAgKzIzMCwxMCBAQCB0eXBlZGVmIHN0cnVjdCB7CiB9IHNydGNwX2hkcl90
OwogCiB0eXBlZGVmIHN0cnVjdCB7Ci0gICAgdW5zaWduZWQgaW50IGluZGV4IDogMzE7ICAgLyog
c3J0Y3AgcGFja2V0IGluZGV4IGluIG5ldHdvcmsgb3JkZXIhICAqLwotICAgIHVuc2lnbmVkIGlu
dCBlIDogMTsgICAgICAgIC8qIGVuY3J5cHRlZD8gMT15ZXMgICAgICAgICAgICAgICAgICAgICAg
Ki8KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBvcHRpb25hbCBtaWtleS9ldGMg
Z28gaGVyZSAgICAgICAgICAgICovCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyog
YW5kIHRoZW4gdGhlIHZhcmlhYmxlLWxlbmd0aCBhdXRoIHRhZyAqLworICAgIHVuc2lnbmVkIGlu
dCBpbmRleCA6IDMxOyAvKiBzcnRjcCBwYWNrZXQgaW5kZXggaW4gbmV0d29yayBvcmRlciEgICov
CisgICAgdW5zaWduZWQgaW50IGUgOiAxOyAgICAgIC8qIGVuY3J5cHRlZD8gMT15ZXMgICAgICAg
ICAgICAgICAgICAgICAgKi8KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogb3B0aW9u
YWwgbWlrZXkvZXRjIGdvIGhlcmUgICAgICAgICAgICAqLworICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiBhbmQgdGhlbiB0aGUgdmFyaWFibGUtbGVuZ3RoIGF1dGggdGFnICovCiB9IHNy
dGNwX3RyYWlsZXJfdDsKIAogI2Vsc2UgLyogIEJJR19FTkRJQU4gKi8KQEAgLTI1NSwzMSArMjQ4
LDMwIEBAIHR5cGVkZWYgc3RydWN0IHsKIH0gc3J0Y3BfaGRyX3Q7CiAKIHR5cGVkZWYgc3RydWN0
IHsKLSAgICB1bnNpZ25lZCBpbnQgZSA6IDE7ICAgICAgICAvKiBlbmNyeXB0ZWQ/IDE9eWVzICAg
ICAgICAgICAgICAgICAgICAgICovCi0gICAgdW5zaWduZWQgaW50IGluZGV4IDogMzE7ICAgLyog
c3J0Y3AgcGFja2V0IGluZGV4ICAgICAgICAgICAgICAgICAgICAqLwotICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIC8qIG9wdGlvbmFsIG1pa2V5L2V0YyBnbyBoZXJlICAgICAgICAgICAg
Ki8KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBhbmQgdGhlbiB0aGUgdmFyaWFi
bGUtbGVuZ3RoIGF1dGggdGFnICovCisgICAgdW5zaWduZWQgaW50IGUgOiAxOyAgICAgIC8qIGVu
Y3J5cHRlZD8gMT15ZXMgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICB1bnNpZ25lZCBpbnQg
aW5kZXggOiAzMTsgLyogc3J0Y3AgcGFja2V0IGluZGV4ICAgICAgICAgICAgICAgICAgICAqLwor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBvcHRpb25hbCBtaWtleS9ldGMgZ28gaGVy
ZSAgICAgICAgICAgICovCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIGFuZCB0aGVu
IHRoZSB2YXJpYWJsZS1sZW5ndGggYXV0aCB0YWcgKi8KIH0gc3J0Y3BfdHJhaWxlcl90OwogCiAj
ZW5kaWYKIAotCiAvKgogICogc3J0cF9oYW5kbGVfZXZlbnQoc3J0cCwgc3J0bSwgZXZudCkgY2Fs
bHMgdGhlIGV2ZW50IGhhbmRsaW5nCiAgKiBmdW5jdGlvbiwgaWYgdGhlcmUgaXMgb25lLgogICoK
LSAqIFRoaXMgbWFjcm8gaXMgbm90IGluY2x1ZGVkIGluIHRoZSBkb2N1bWVudGF0aW9uIGFzIGl0
IGlzIAorICogVGhpcyBtYWNybyBpcyBub3QgaW5jbHVkZWQgaW4gdGhlIGRvY3VtZW50YXRpb24g
YXMgaXQgaXMKICAqIGFuIGludGVybmFsLW9ubHkgZnVuY3Rpb24uCiAgKi8KIAotI2RlZmluZSBz
cnRwX2hhbmRsZV9ldmVudChzcnRwLCBzdHJtLCBldm50KSAgICAgICAgIFwKLSAgIGlmKHNydHBf
ZXZlbnRfaGFuZGxlcikgeyAgICAgICAgICAgICAgICAgICAgICAgICBcCi0gICAgICBzcnRwX2V2
ZW50X2RhdGFfdCBkYXRhOyAgICAgICAgICAgICAgICAgICAgICAgXAotICAgICAgZGF0YS5zZXNz
aW9uID0gc3J0cDsgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSAgICAgIGRhdGEuc3NyYyAg
ICA9IG50b2hsKHN0cm0tPnNzcmMpOyAgICAgICAgICAgICBcCi0gICAgICBkYXRhLmV2ZW50ICAg
PSBldm50OyAgICAgICAgICAgICAgICAgICAgICAgICAgXAotICAgICAgc3J0cF9ldmVudF9oYW5k
bGVyKCZkYXRhKTsgICAgICAgICAgICAgICAgICAgIFwKLX0gICAKKyNkZWZpbmUgc3J0cF9oYW5k
bGVfZXZlbnQoc3J0cCwgc3RybSwgZXZudCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBcCisgICAgaWYgKHNydHBfZXZlbnRfaGFuZGxlcikgeyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICBzcnRwX2V2ZW50X2RhdGFf
dCBkYXRhOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwK
KyAgICAgICAgZGF0YS5zZXNzaW9uID0gc3J0cDsgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgIGRhdGEuc3NyYyA9IG50b2hsKHN0cm0t
PnNzcmMpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAg
ICBkYXRhLmV2ZW50ID0gZXZudDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFwKKyAgICAgICAgc3J0cF9ldmVudF9oYW5kbGVyKCZkYXRhKTsgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgfQogCiAjaWZk
ZWYgX19jcGx1c3BsdXMKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9pbmNsdWRlL3V0X3NpbS5oIGIvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2luY2x1ZGUvdXRf
c2ltLmgKaW5kZXggZDVjMDRiYWVlNzJlMDg5ZjFhNmYyMzNlMjM2N2ViYjRiMDkwZTA3ZS4uZTY3
OGI1ZmRmN2U0ZGY3OTQ4YjdkNTYwNjEwMzIyODFlZTRiODNhYiAxMDA2NDQKLS0tIGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2luY2x1ZGUv
dXRfc2ltLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJzcnRwL2luY2x1ZGUvdXRfc2ltLmgKQEAgLTksMjYgKzksMjYgQEAKICAqLwogCiAv
KgotICoJCisgKgogICogQ29weXJpZ2h0IChjKSAyMDAxLTIwMTcsIENpc2NvIFN5c3RlbXMsIElu
Yy4KICAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKiAKKyAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBh
bmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1v
ZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29u
ZGl0aW9ucwogICogYXJlIG1ldDoKLSAqIAorICoKICAqICAgUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKICAqICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICog
CisgKgogICogICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2Ug
dGhlIGFib3ZlCiAgKiAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nCiAgKiAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZAogICogICB3aXRoIHRoZSBkaXN0cmlidXRp
b24uCi0gKiAKKyAqCiAgKiAgIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIENpc2NvIFN5c3RlbXMs
IEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKICAqICAgY29udHJpYnV0b3JzIG1heSBiZSB1c2Vk
IHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkCiAgKiAgIGZyb20gdGhpcyBz
b2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLSAqIAor
ICoKICAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJT
IEFORCBDT05UUklCVVRPUlMKICAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCiAgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUwpAQCAtNDQsNDEgKzQ0
LDM3IEBACiAgKgogICovCiAKLQotCiAjaWZuZGVmIFVUX1NJTV9ICiAjZGVmaW5lIFVUX1NJTV9I
CiAKLSNpbmNsdWRlICJpbnRlZ2Vycy5oIiAgLyogZm9yIHVpbnQzMl90ICovCisjaW5jbHVkZSAi
aW50ZWdlcnMuaCIgLyogZm9yIHVpbnQzMl90ICovCiAKICNpZmRlZiBfX2NwbHVzcGx1cwogZXh0
ZXJuICJDIiB7CiAjZW5kaWYKIAotI2RlZmluZSBVVF9CVUYgMTYwICAgICAgLyogbWF4aW11bSBh
bW91bnQgb2YgcGFja2V0IHJlb3JkZXIgKi8KKyNkZWZpbmUgVVRfQlVGIDE2MCAvKiBtYXhpbXVt
IGFtb3VudCBvZiBwYWNrZXQgcmVvcmRlciAqLwogCiB0eXBlZGVmIHN0cnVjdCB7Ci0gIHVpbnQz
Ml90IGluZGV4OwotICB1aW50MzJfdCBidWZmZXJbVVRfQlVGXTsKKyAgICB1aW50MzJfdCBpbmRl
eDsKKyAgICB1aW50MzJfdCBidWZmZXJbVVRfQlVGXTsKIH0gdXRfY29ubmVjdGlvbjsKIAogLyoK
LSAqIHV0X2luaXQoJnUpIGluaXRpYWxpemVzIHRoZSB1dF9jb25uZWN0aW9uIAorICogdXRfaW5p
dCgmdSkgaW5pdGlhbGl6ZXMgdGhlIHV0X2Nvbm5lY3Rpb24KICAqCiAgKiB0aGlzIGZ1bmN0aW9u
IHNob3VsZCBhbHdheXMgYmUgdGhlIGZpcnN0IG9uZSBjYWxsZWQgb24gYSBuZXcKICAqIHV0X2Nv
bm5lY3Rpb24KICAqLwogCi12b2lkCi11dF9pbml0KHV0X2Nvbm5lY3Rpb24gKnV0Yyk7Cit2b2lk
IHV0X2luaXQodXRfY29ubmVjdGlvbiAqdXRjKTsKIAogLyoKICAqIHV0X25leHRfaW5kZXgoJnUp
IHJldHVybnMgdGhlIG5leHQgaW5kZXggZnJvbSB0aGUgc2ltdWxhdGVkCiAgKiB1bnJlbGlhYmxl
IGNvbm5lY3Rpb24KICAqLwogCi11aW50MzJfdAotdXRfbmV4dF9pbmRleCh1dF9jb25uZWN0aW9u
ICp1dGMpOwordWludDMyX3QgdXRfbmV4dF9pbmRleCh1dF9jb25uZWN0aW9uICp1dGMpOwogCiAj
aWZkZWYgX19jcGx1c3BsdXMKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9zcnRwL2VrdC5jIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL3NydHAvZWt0LmMKaW5k
ZXggY2QyYzA1ZDljN2I3MGIwMDVkNDI3ZGJmZmUyNmYwNjI5NTEyNzY1NS4uYjU0ZWNmNjRlYjQ0
NWVlNTk0MTQyNWEyMmY0NmExNmNmZGU3ZjRjOSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL3NydHAvZWt0LmMKKysrIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL3Ny
dHAvZWt0LmMKQEAgLTIsMzEgKzIsMzEgQEAKICAqIGVrdC5jCiAgKgogICogRW5jcnlwdGVkIEtl
eSBUcmFuc3BvcnQgZm9yIFNSVFAKLSAqIAorICoKICAqIERhdmlkIE1jR3JldwogICogQ2lzY28g
U3lzdGVtcywgSW5jLgogICovCiAvKgotICoJCisgKgogICogQ29weXJpZ2h0IChjKSAyMDAxLTIw
MTcgQ2lzY28gU3lzdGVtcywgSW5jLgogICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqIAorICoK
ICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCiAgKiBhcmUgbWV0OgotICogCisgKgogICogICBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAogICogICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIuCi0gKiAKKyAqCiAgKiAgIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkg
Zm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKICAqICAgY29weXJpZ2h0IG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKICAqICAgZGlzY2xhaW1lciBp
biB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkCiAgKiAg
IHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqIAorICoKICAqICAgTmVpdGhlciB0aGUgbmFtZSBv
ZiB0aGUgQ2lzY28gU3lzdGVtcywgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwogICogICBjb250
cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2
ZWQKICAqICAgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRl
biBwZXJtaXNzaW9uLgotICogCisgKgogICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBU
SEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwogICogIkFTIElTIiBBTkQgQU5Z
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKICAqIExJ
TUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTCkBAIC00Miw3ICs0Miw2IEBACiAgKgogICovCiAKLQogI2luY2x1ZGUgInNydHBfcHJp
di5oIgogI2luY2x1ZGUgImVyci5oIgogI2luY2x1ZGUgImVrdC5oIgpAQCAtNjQsMTk1ICs2Mywy
MTkgQEAgZXh0ZXJuIHNydHBfZGVidWdfbW9kdWxlX3QgbW9kX3NydHA7CiAgKiAgIHwgICAgSW5p
dGlhbCBTZXF1ZW5jZSBOdW1iZXIgICAgfCAgIFNlY3VyaXR5IFBhcmFtZXRlciBJbmRleCAgICB8
CiAgKiAgICstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rCiAgKgotICovCQkJIAorICovCiAKICNkZWZpbmUgRUtUX09DVEVUU19B
RlRFUl9CQVNFX1RBRyAyNAotI2RlZmluZSBFS1RfT0NURVRTX0FGVEVSX0VNSyAgICAgICA4Ci0j
ZGVmaW5lIEVLVF9PQ1RFVFNfQUZURVJfUk9DICAgICAgIDQKLSNkZWZpbmUgRUtUX1NQSV9MRU4g
ICAgICAgICAgICAgICAgMgotCi11bnNpZ25lZCBzcnRwX2VrdF9vY3RldHNfYWZ0ZXJfYmFzZV90
YWcoc3J0cF9la3Rfc3RyZWFtX3QgZWt0KSB7Ci0gIC8qCi0gICAqIGlmIHRoZSBwb2ludGVyIGVr
dCBpcyBOVUxMLCB0aGVuIEVLVCBpcyBub3QgaW4gZWZmZWN0LCBzbyB3ZQotICAgKiBpbmRpY2F0
ZSB0aGlzIGJ5IHJldHVybmluZyB6ZXJvCi0gICAqLwotICBpZiAoIWVrdCkKKyNkZWZpbmUgRUtU
X09DVEVUU19BRlRFUl9FTUsgOAorI2RlZmluZSBFS1RfT0NURVRTX0FGVEVSX1JPQyA0CisjZGVm
aW5lIEVLVF9TUElfTEVOIDIKKwordW5zaWduZWQgc3J0cF9la3Rfb2N0ZXRzX2FmdGVyX2Jhc2Vf
dGFnKHNydHBfZWt0X3N0cmVhbV90IGVrdCkKK3sKKyAgICAvKgorICAgICAqIGlmIHRoZSBwb2lu
dGVyIGVrdCBpcyBOVUxMLCB0aGVuIEVLVCBpcyBub3QgaW4gZWZmZWN0LCBzbyB3ZQorICAgICAq
IGluZGljYXRlIHRoaXMgYnkgcmV0dXJuaW5nIHplcm8KKyAgICAgKi8KKyAgICBpZiAoIWVrdCkK
KyAgICAgICAgcmV0dXJuIDA7CisKKyAgICBzd2l0Y2ggKGVrdC0+ZGF0YS0+ZWt0X2NpcGhlcl90
eXBlKSB7CisgICAgY2FzZSBTUlRQX0VLVF9DSVBIRVJfQUVTXzEyOF9FQ0I6CisgICAgICAgIHJl
dHVybiAxNiArIEVLVF9PQ1RFVFNfQUZURVJfRU1LOworICAgICAgICBicmVhazsKKyAgICBkZWZh
dWx0OgorICAgICAgICBicmVhazsKKyAgICB9CiAgICAgcmV0dXJuIDA7Ci0KLSAgc3dpdGNoKGVr
dC0+ZGF0YS0+ZWt0X2NpcGhlcl90eXBlKSB7Ci0gIGNhc2UgU1JUUF9FS1RfQ0lQSEVSX0FFU18x
MjhfRUNCOgotICAgIHJldHVybiAxNiArIEVLVF9PQ1RFVFNfQUZURVJfRU1LOwotICAgIGJyZWFr
OwotICBkZWZhdWx0OgotICAgIGJyZWFrOwotICB9Ci0gIHJldHVybiAwOwogfQogCi1zdGF0aWMg
aW5saW5lIHNydHBfZWt0X3NwaV90IHNydGNwX3BhY2tldF9nZXRfZWt0X3NwaShjb25zdCB1aW50
OF90ICpwYWNrZXRfc3RhcnQsIHVuc2lnbmVkIHBrdF9vY3RldF9sZW4pIHsKLSAgY29uc3QgdWlu
dDhfdCAqc3BpX2xvY2F0aW9uOwotICAKLSAgc3BpX2xvY2F0aW9uID0gcGFja2V0X3N0YXJ0ICsg
KHBrdF9vY3RldF9sZW4gLSBFS1RfU1BJX0xFTik7Ci0gIAotICByZXR1cm4gKigoY29uc3Qgc3J0
cF9la3Rfc3BpX3QgKilzcGlfbG9jYXRpb24pOwotfQorc3RhdGljIGlubGluZSBzcnRwX2VrdF9z
cGlfdCBzcnRjcF9wYWNrZXRfZ2V0X2VrdF9zcGkoCisgICAgY29uc3QgdWludDhfdCAqcGFja2V0
X3N0YXJ0LAorICAgIHVuc2lnbmVkIHBrdF9vY3RldF9sZW4pCit7CisgICAgY29uc3QgdWludDhf
dCAqc3BpX2xvY2F0aW9uOworCisgICAgc3BpX2xvY2F0aW9uID0gcGFja2V0X3N0YXJ0ICsgKHBr
dF9vY3RldF9sZW4gLSBFS1RfU1BJX0xFTik7CiAKLXN0YXRpYyBpbmxpbmUgdWludDMyX3Qgc3J0
Y3BfcGFja2V0X2dldF9la3Rfcm9jKGNvbnN0IHVpbnQ4X3QgKnBhY2tldF9zdGFydCwgdW5zaWdu
ZWQgcGt0X29jdGV0X2xlbikgewotICBjb25zdCB1aW50OF90ICpyb2NfbG9jYXRpb247Ci0gIAot
ICByb2NfbG9jYXRpb24gPSBwYWNrZXRfc3RhcnQgKyAocGt0X29jdGV0X2xlbiAtIEVLVF9PQ1RF
VFNfQUZURVJfUk9DKTsKLSAgCi0gIHJldHVybiAqKChjb25zdCB1aW50MzJfdCAqKXJvY19sb2Nh
dGlvbik7CisgICAgcmV0dXJuICooKGNvbnN0IHNydHBfZWt0X3NwaV90ICopc3BpX2xvY2F0aW9u
KTsKIH0KIAotc3RhdGljIGlubGluZSBjb25zdCB1aW50OF90ICogc3J0Y3BfcGFja2V0X2dldF9l
bWtfbG9jYXRpb24oY29uc3QgdWludDhfdCAqcGFja2V0X3N0YXJ0LCB1bnNpZ25lZCBwa3Rfb2N0
ZXRfbGVuKSB7Ci0gIGNvbnN0IHVpbnQ4X3QgKmxvY2F0aW9uOwotICAKLSAgbG9jYXRpb24gPSBw
YWNrZXRfc3RhcnQgKyAocGt0X29jdGV0X2xlbiAtIEVLVF9PQ1RFVFNfQUZURVJfQkFTRV9UQUcp
Oworc3RhdGljIGlubGluZSB1aW50MzJfdCBzcnRjcF9wYWNrZXRfZ2V0X2VrdF9yb2MoY29uc3Qg
dWludDhfdCAqcGFja2V0X3N0YXJ0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgdW5zaWduZWQgcGt0X29jdGV0X2xlbikKK3sKKyAgICBjb25zdCB1aW50
OF90ICpyb2NfbG9jYXRpb247CisKKyAgICByb2NfbG9jYXRpb24gPSBwYWNrZXRfc3RhcnQgKyAo
cGt0X29jdGV0X2xlbiAtIEVLVF9PQ1RFVFNfQUZURVJfUk9DKTsKIAotICByZXR1cm4gbG9jYXRp
b247CisgICAgcmV0dXJuICooKGNvbnN0IHVpbnQzMl90ICopcm9jX2xvY2F0aW9uKTsKIH0KIAor
c3RhdGljIGlubGluZSBjb25zdCB1aW50OF90ICpzcnRjcF9wYWNrZXRfZ2V0X2Vta19sb2NhdGlv
bigKKyAgICBjb25zdCB1aW50OF90ICpwYWNrZXRfc3RhcnQsCisgICAgdW5zaWduZWQgcGt0X29j
dGV0X2xlbikKK3sKKyAgICBjb25zdCB1aW50OF90ICpsb2NhdGlvbjsKIAotc3J0cF9lcnJfc3Rh
dHVzX3Qgc3J0cF9la3RfYWxsb2Moc3J0cF9la3Rfc3RyZWFtX3QgKnN0cmVhbV9kYXRhLCBzcnRw
X2VrdF9wb2xpY3lfdCBwb2xpY3kpIHsKKyAgICBsb2NhdGlvbiA9IHBhY2tldF9zdGFydCArIChw
a3Rfb2N0ZXRfbGVuIC0gRUtUX09DVEVUU19BRlRFUl9CQVNFX1RBRyk7CiAKLSAgLyoKLSAgICog
aWYgdGhlIHBvbGljeSBwb2ludGVyIGlzIE5VTEwsIHRoZW4gRUtUIGlzIG5vdCBpbiB1c2UKLSAg
ICogc28gd2UganVzdCBzZXQgdGhlIEVLVCBzdHJlYW0gZGF0YSBwb2ludGVyIHRvIE5VTEwKLSAg
ICovCi0gIGlmICghcG9saWN5KSB7Ci0gICAgKnN0cmVhbV9kYXRhID0gTlVMTDsKLSAgICByZXR1
cm4gc3J0cF9lcnJfc3RhdHVzX29rOwotICB9CisgICAgcmV0dXJuIGxvY2F0aW9uOworfQogCi0g
IC8qIFRPRE8gKi8KLSAgKnN0cmVhbV9kYXRhID0gTlVMTDsKK3NydHBfZXJyX3N0YXR1c190IHNy
dHBfZWt0X2FsbG9jKHNydHBfZWt0X3N0cmVhbV90ICpzdHJlYW1fZGF0YSwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHNydHBfZWt0X3BvbGljeV90IHBvbGljeSkKK3sKKyAgICAv
KgorICAgICAqIGlmIHRoZSBwb2xpY3kgcG9pbnRlciBpcyBOVUxMLCB0aGVuIEVLVCBpcyBub3Qg
aW4gdXNlCisgICAgICogc28gd2UganVzdCBzZXQgdGhlIEVLVCBzdHJlYW0gZGF0YSBwb2ludGVy
IHRvIE5VTEwKKyAgICAgKi8KKyAgICBpZiAoIXBvbGljeSkgeworICAgICAgICAqc3RyZWFtX2Rh
dGEgPSBOVUxMOworICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOworICAgIH0KKwor
ICAgIC8qIFRPRE8gKi8KKyAgICAqc3RyZWFtX2RhdGEgPSBOVUxMOwogCi0gIHJldHVybiBzcnRw
X2Vycl9zdGF0dXNfb2s7CisgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0KIAotc3J0
cF9lcnJfc3RhdHVzX3Qgc3J0cF9la3Rfc3RyZWFtX2luaXRfZnJvbV9wb2xpY3koc3J0cF9la3Rf
c3RyZWFtX3Qgc3RyZWFtX2RhdGEsIHNydHBfZWt0X3BvbGljeV90IHBvbGljeSkgewotICBpZiAo
IXN0cmVhbV9kYXRhKQotICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CitzcnRwX2Vycl9z
dGF0dXNfdCBzcnRwX2VrdF9zdHJlYW1faW5pdF9mcm9tX3BvbGljeSgKKyAgICBzcnRwX2VrdF9z
dHJlYW1fdCBzdHJlYW1fZGF0YSwKKyAgICBzcnRwX2VrdF9wb2xpY3lfdCBwb2xpY3kpCit7Cisg
ICAgaWYgKCFzdHJlYW1fZGF0YSkKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsK
IAotICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOworICAgIHJldHVybiBzcnRwX2Vycl9zdGF0
dXNfb2s7CiB9CiAKLQotdm9pZCBhZXNfZGVjcnlwdF93aXRoX3Jhd19rZXkodm9pZCAqY2lwaGVy
dGV4dCwgY29uc3Qgdm9pZCAqa2V5LCBpbnQga2V5X2xlbikgewordm9pZCBhZXNfZGVjcnlwdF93
aXRoX3Jhd19rZXkodm9pZCAqY2lwaGVydGV4dCwgY29uc3Qgdm9pZCAqa2V5LCBpbnQga2V5X2xl
bikKK3sKICNpZm5kZWYgT1BFTlNTTAotLy9GSVhNRTogbmVlZCB0byBnZXQgdGhpcyB3b3JraW5n
IHRocm91Z2ggdGhlIGNyeXB0byBtb2R1bGUgaW50ZXJmYWNlCi0gIHNydHBfYWVzX2V4cGFuZGVk
X2tleV90IGV4cGFuZGVkX2tleTsKKyAgICAvLyBGSVhNRTogbmVlZCB0byBnZXQgdGhpcyB3b3Jr
aW5nIHRocm91Z2ggdGhlIGNyeXB0byBtb2R1bGUgaW50ZXJmYWNlCisgICAgc3J0cF9hZXNfZXhw
YW5kZWRfa2V5X3QgZXhwYW5kZWRfa2V5OwogCi0gIHNydHBfYWVzX2V4cGFuZF9kZWNyeXB0aW9u
X2tleShrZXksIGtleV9sZW4sICZleHBhbmRlZF9rZXkpOwotICBzcnRwX2Flc19kZWNyeXB0KGNp
cGhlcnRleHQsICZleHBhbmRlZF9rZXkpOworICAgIHNydHBfYWVzX2V4cGFuZF9kZWNyeXB0aW9u
X2tleShrZXksIGtleV9sZW4sICZleHBhbmRlZF9rZXkpOworICAgIHNydHBfYWVzX2RlY3J5cHQo
Y2lwaGVydGV4dCwgJmV4cGFuZGVkX2tleSk7CiAjZW5kaWYKIH0KIAogLyoKICAqIFRoZSBmdW5j
dGlvbiBzcnRwX3N0cmVhbV9pbml0X2Zyb21fZWt0KCkgaW5pdGlhbGl6ZXMgYSBzdHJlYW0gdXNp
bmcKLSAqIHRoZSBFS1QgZGF0YSBmcm9tIGFuIFNSVENQIHRyYWlsZXIuICAKKyAqIHRoZSBFS1Qg
ZGF0YSBmcm9tIGFuIFNSVENQIHRyYWlsZXIuCiAgKi8KIAotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0
cF9zdHJlYW1faW5pdF9mcm9tX2VrdChzcnRwX3N0cmVhbV90IHN0cmVhbSwgY29uc3Qgdm9pZCAq
c3J0Y3BfaGRyLCB1bnNpZ25lZCBwa3Rfb2N0ZXRfbGVuKSB7Ci0gIHNydHBfZXJyX3N0YXR1c190
IGVycjsKLSAgY29uc3QgdWludDhfdCAqbWFzdGVyX2tleTsKLSAgc3J0cF9wb2xpY3lfdCBzcnRw
X3BvbGljeTsKLSAgdWludDMyX3Qgcm9jOwotCi0gIC8qCi0gICAqIE5PVEU6IGF0IHByZXNlbnQs
IHdlIG9ubHkgc3VwcG9ydCBhIHNpbmdsZSBla3RfcG9saWN5IGF0IGEgdGltZS4gIAotICAgKi8K
LSAgaWYgKHN0cmVhbS0+ZWt0LT5kYXRhLT5zcGkgIT0gCi0gICAgICBzcnRjcF9wYWNrZXRfZ2V0
X2VrdF9zcGkoc3J0Y3BfaGRyLCBwa3Rfb2N0ZXRfbGVuKSkKLSAgICByZXR1cm4gc3J0cF9lcnJf
c3RhdHVzX25vX2N0eDsKLQotICBpZiAoc3RyZWFtLT5la3QtPmRhdGEtPmVrdF9jaXBoZXJfdHlw
ZSAhPSBTUlRQX0VLVF9DSVBIRVJfQUVTXzEyOF9FQ0IpCi0gICAgcmV0dXJuIHNydHBfZXJyX3N0
YXR1c19iYWRfcGFyYW07Ci0KLSAgLyogZGVjcnlwdCB0aGUgRW5jcnlwdGVkIE1hc3RlciBLZXkg
ZmllbGQgKi8KLSAgbWFzdGVyX2tleSA9IHNydGNwX3BhY2tldF9nZXRfZW1rX2xvY2F0aW9uKHNy
dGNwX2hkciwgcGt0X29jdGV0X2xlbik7Ci0gIC8qIEZJWCE/IFRoaXMgZGVjcnlwdHMgdGhlIG1h
c3RlciBrZXkgaW4tcGxhY2UsIGFuZCBuZXZlciB1c2VzIGl0ICovCi0gIC8qIEZJWCE/IEl0J3Mg
YWxzbyBwYXNzaW5nIHRvIGVrdF9kZWNfa2V5ICh3aGljaCBpcyBhbiBhZXNfZXhwYW5kZWRfa2V5
X3QpCi0gICAqIHRvIGEgZnVuY3Rpb24gd2hpY2ggZXhwZWN0cyBhIHJhdyAodW5leHBhbmRlZCkg
a2V5ICovCi0gIGFlc19kZWNyeXB0X3dpdGhfcmF3X2tleSgodm9pZCopbWFzdGVyX2tleSwgJnN0
cmVhbS0+ZWt0LT5kYXRhLT5la3RfZGVjX2tleSwgMTYpOwotCi0gIC8qIHNldCB0aGUgU1JUUCBS
T0MgKi8KLSAgcm9jID0gc3J0Y3BfcGFja2V0X2dldF9la3Rfcm9jKHNydGNwX2hkciwgcGt0X29j
dGV0X2xlbik7Ci0gIGVyciA9IHNydHBfcmRieF9zZXRfcm9jKCZzdHJlYW0tPnJ0cF9yZGJ4LCBy
b2MpOwotICBpZiAoZXJyKSByZXR1cm4gZXJyOwotCi0gIGVyciA9IHNydHBfc3RyZWFtX2luaXQo
c3RyZWFtLCAmc3J0cF9wb2xpY3kpOwotICBpZiAoZXJyKSByZXR1cm4gZXJyOwotCi0gIHJldHVy
biBzcnRwX2Vycl9zdGF0dXNfb2s7Ci19CitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3N0cmVhbV9p
bml0X2Zyb21fZWt0KHNydHBfc3RyZWFtX3Qgc3RyZWFtLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB2b2lkICpzcnRjcF9oZHIsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIHBrdF9vY3RldF9sZW4p
Cit7CisgICAgc3J0cF9lcnJfc3RhdHVzX3QgZXJyOworICAgIGNvbnN0IHVpbnQ4X3QgKm1hc3Rl
cl9rZXk7CisgICAgc3J0cF9wb2xpY3lfdCBzcnRwX3BvbGljeTsKKyAgICB1aW50MzJfdCByb2M7
CisKKyAgICAvKgorICAgICAqIE5PVEU6IGF0IHByZXNlbnQsIHdlIG9ubHkgc3VwcG9ydCBhIHNp
bmdsZSBla3RfcG9saWN5IGF0IGEgdGltZS4KKyAgICAgKi8KKyAgICBpZiAoc3RyZWFtLT5la3Qt
PmRhdGEtPnNwaSAhPQorICAgICAgICBzcnRjcF9wYWNrZXRfZ2V0X2VrdF9zcGkoc3J0Y3BfaGRy
LCBwa3Rfb2N0ZXRfbGVuKSkKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19ub19jdHg7
CisKKyAgICBpZiAoc3RyZWFtLT5la3QtPmRhdGEtPmVrdF9jaXBoZXJfdHlwZSAhPSBTUlRQX0VL
VF9DSVBIRVJfQUVTXzEyOF9FQ0IpCisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYmFk
X3BhcmFtOworCisgICAgLyogZGVjcnlwdCB0aGUgRW5jcnlwdGVkIE1hc3RlciBLZXkgZmllbGQg
Ki8KKyAgICBtYXN0ZXJfa2V5ID0gc3J0Y3BfcGFja2V0X2dldF9lbWtfbG9jYXRpb24oc3J0Y3Bf
aGRyLCBwa3Rfb2N0ZXRfbGVuKTsKKyAgICAvKiBGSVghPyBUaGlzIGRlY3J5cHRzIHRoZSBtYXN0
ZXIga2V5IGluLXBsYWNlLCBhbmQgbmV2ZXIgdXNlcyBpdCAqLworICAgIC8qIEZJWCE/IEl0J3Mg
YWxzbyBwYXNzaW5nIHRvIGVrdF9kZWNfa2V5ICh3aGljaCBpcyBhbiBhZXNfZXhwYW5kZWRfa2V5
X3QpCisgICAgICogdG8gYSBmdW5jdGlvbiB3aGljaCBleHBlY3RzIGEgcmF3ICh1bmV4cGFuZGVk
KSBrZXkgKi8KKyAgICBhZXNfZGVjcnlwdF93aXRoX3Jhd19rZXkoKHZvaWQgKiltYXN0ZXJfa2V5
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmc3RyZWFtLT5la3QtPmRhdGEtPmVrdF9k
ZWNfa2V5LCAxNik7CisKKyAgICAvKiBzZXQgdGhlIFNSVFAgUk9DICovCisgICAgcm9jID0gc3J0
Y3BfcGFja2V0X2dldF9la3Rfcm9jKHNydGNwX2hkciwgcGt0X29jdGV0X2xlbik7CisgICAgZXJy
ID0gc3J0cF9yZGJ4X3NldF9yb2MoJnN0cmVhbS0+cnRwX3JkYngsIHJvYyk7CisgICAgaWYgKGVy
cikKKyAgICAgICAgcmV0dXJuIGVycjsKKworICAgIGVyciA9IHNydHBfc3RyZWFtX2luaXQoc3Ry
ZWFtLCAmc3J0cF9wb2xpY3kpOworICAgIGlmIChlcnIpCisgICAgICAgIHJldHVybiBlcnI7CiAK
LXZvaWQgc3J0cF9la3Rfd3JpdGVfZGF0YShzcnRwX2VrdF9zdHJlYW1fdCBla3QsIHVpbnQ4X3Qg
KmJhc2VfdGFnLCB1bnNpZ25lZCBiYXNlX3RhZ19sZW4sIGludCAqcGFja2V0X2xlbiwgc3J0cF94
dGRfc2VxX251bV90IHBrdF9pbmRleCkgewotICB1aW50MzJfdCByb2M7Ci0gIHVpbnQxNl90IGlz
bjsKLSAgdW5zaWduZWQgZW1rX2xlbjsKLSAgdWludDhfdCAqcGFja2V0OwotCi0gIC8qIGlmIHRo
ZSBwb2ludGVyIGVrdCBpcyBOVUxMLCB0aGVuIEVLVCBpcyBub3QgaW4gZWZmZWN0ICovCi0gIGlm
ICghZWt0KSB7Ci0gICAgZGVidWdfcHJpbnQobW9kX3NydHAsICJFS1Qgbm90IGluIHVzZSIsIE5V
TEwpOwotICAgIHJldHVybjsKLSAgfQotCi0gIC8qIHdyaXRlIHplcm9zIGludG8gdGhlIGxvY2F0
aW9uIG9mIHRoZSBiYXNlIHRhZyAqLwotICBvY3RldF9zdHJpbmdfc2V0X3RvX3plcm8oYmFzZV90
YWcsIGJhc2VfdGFnX2xlbik7Ci0gIHBhY2tldCA9IGJhc2VfdGFnICsgYmFzZV90YWdfbGVuOwot
Ci0gIC8qIGNvcHkgZW5jcnlwdGVkIG1hc3RlciBrZXkgaW50byBwYWNrZXQgKi8KLSAgZW1rX2xl
biA9IHNydHBfZWt0X29jdGV0c19hZnRlcl9iYXNlX3RhZyhla3QpOwotICBtZW1jcHkocGFja2V0
LCBla3QtPmVuY3J5cHRlZF9tYXN0ZXJfa2V5LCBlbWtfbGVuKTsKLSAgZGVidWdfcHJpbnQobW9k
X3NydHAsICJ3cml0aW5nIEVLVCBFTUs6ICVzLCIsIAotCSAgICAgIHNydHBfb2N0ZXRfc3RyaW5n
X2hleF9zdHJpbmcocGFja2V0LCBlbWtfbGVuKSk7Ci0gIHBhY2tldCArPSBlbWtfbGVuOwotCi0g
IC8qIGNvcHkgUk9DIGludG8gcGFja2V0ICovCi0gIHJvYyA9ICh1aW50MzJfdCkocGt0X2luZGV4
ID4+IDE2KTsKLSAgKigodWludDMyX3QgKilwYWNrZXQpID0gYmUzMl90b19jcHUocm9jKTsKLSAg
ZGVidWdfcHJpbnQobW9kX3NydHAsICJ3cml0aW5nIEVLVCBST0M6ICVzLCIsIAotCSAgICAgIHNy
dHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcocGFja2V0LCBzaXplb2Yocm9jKSkpOwotICBwYWNr
ZXQgKz0gc2l6ZW9mKHJvYyk7Ci0KLSAgLyogY29weSBJU04gaW50byBwYWNrZXQgKi8KLSAgaXNu
ID0gKHVpbnQxNl90KXBrdF9pbmRleDsKLSAgKigodWludDE2X3QgKilwYWNrZXQpID0gaHRvbnMo
aXNuKTsKLSAgZGVidWdfcHJpbnQobW9kX3NydHAsICJ3cml0aW5nIEVLVCBJU046ICVzLCIsIAot
CSAgICAgIHNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcocGFja2V0LCBzaXplb2YoaXNuKSkp
OwotICBwYWNrZXQgKz0gc2l6ZW9mKGlzbik7Ci0KLSAgLyogY29weSBTUEkgaW50byBwYWNrZXQg
Ki8KLSAgKigodWludDE2X3QgKilwYWNrZXQpID0gaHRvbnMoZWt0LT5kYXRhLT5zcGkpOwotICBk
ZWJ1Z19wcmludChtb2Rfc3J0cCwgIndyaXRpbmcgRUtUIFNQSTogJXMsIiwgCi0JICAgICAgc3J0
cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZyhwYWNrZXQsIHNpemVvZihla3QtPmRhdGEtPnNwaSkp
KTsKLQotICAvKiBpbmNyZWFzZSBwYWNrZXQgbGVuZ3RoIGFwcHJvcHJpYXRlbHkgKi8KLSAgKnBh
Y2tldF9sZW4gKz0gRUtUX09DVEVUU19BRlRFUl9FTUsgKyBlbWtfbGVuOworICAgIHJldHVybiBz
cnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAKK3ZvaWQgc3J0cF9la3Rfd3JpdGVfZGF0YShzcnRwX2Vr
dF9zdHJlYW1fdCBla3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgdWludDhfdCAqYmFzZV90
YWcsCisgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgYmFzZV90YWdfbGVuLAorICAg
ICAgICAgICAgICAgICAgICAgICAgIGludCAqcGFja2V0X2xlbiwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICBzcnRwX3h0ZF9zZXFfbnVtX3QgcGt0X2luZGV4KQoreworICAgIHVpbnQzMl90IHJv
YzsKKyAgICB1aW50MTZfdCBpc247CisgICAgdW5zaWduZWQgZW1rX2xlbjsKKyAgICB1aW50OF90
ICpwYWNrZXQ7CisKKyAgICAvKiBpZiB0aGUgcG9pbnRlciBla3QgaXMgTlVMTCwgdGhlbiBFS1Qg
aXMgbm90IGluIGVmZmVjdCAqLworICAgIGlmICghZWt0KSB7CisgICAgICAgIGRlYnVnX3ByaW50
KG1vZF9zcnRwLCAiRUtUIG5vdCBpbiB1c2UiLCBOVUxMKTsKKyAgICAgICAgcmV0dXJuOworICAg
IH0KKworICAgIC8qIHdyaXRlIHplcm9zIGludG8gdGhlIGxvY2F0aW9uIG9mIHRoZSBiYXNlIHRh
ZyAqLworICAgIG9jdGV0X3N0cmluZ19zZXRfdG9femVybyhiYXNlX3RhZywgYmFzZV90YWdfbGVu
KTsKKyAgICBwYWNrZXQgPSBiYXNlX3RhZyArIGJhc2VfdGFnX2xlbjsKKworICAgIC8qIGNvcHkg
ZW5jcnlwdGVkIG1hc3RlciBrZXkgaW50byBwYWNrZXQgKi8KKyAgICBlbWtfbGVuID0gc3J0cF9l
a3Rfb2N0ZXRzX2FmdGVyX2Jhc2VfdGFnKGVrdCk7CisgICAgbWVtY3B5KHBhY2tldCwgZWt0LT5l
bmNyeXB0ZWRfbWFzdGVyX2tleSwgZW1rX2xlbik7CisgICAgZGVidWdfcHJpbnQobW9kX3NydHAs
ICJ3cml0aW5nIEVLVCBFTUs6ICVzLCIsCisgICAgICAgICAgICAgICAgc3J0cF9vY3RldF9zdHJp
bmdfaGV4X3N0cmluZyhwYWNrZXQsIGVta19sZW4pKTsKKyAgICBwYWNrZXQgKz0gZW1rX2xlbjsK
KworICAgIC8qIGNvcHkgUk9DIGludG8gcGFja2V0ICovCisgICAgcm9jID0gKHVpbnQzMl90KShw
a3RfaW5kZXggPj4gMTYpOworICAgICooKHVpbnQzMl90ICopcGFja2V0KSA9IGJlMzJfdG9fY3B1
KHJvYyk7CisgICAgZGVidWdfcHJpbnQobW9kX3NydHAsICJ3cml0aW5nIEVLVCBST0M6ICVzLCIs
CisgICAgICAgICAgICAgICAgc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZyhwYWNrZXQsIHNp
emVvZihyb2MpKSk7CisgICAgcGFja2V0ICs9IHNpemVvZihyb2MpOworCisgICAgLyogY29weSBJ
U04gaW50byBwYWNrZXQgKi8KKyAgICBpc24gPSAodWludDE2X3QpcGt0X2luZGV4OworICAgICoo
KHVpbnQxNl90ICopcGFja2V0KSA9IGh0b25zKGlzbik7CisgICAgZGVidWdfcHJpbnQobW9kX3Ny
dHAsICJ3cml0aW5nIEVLVCBJU046ICVzLCIsCisgICAgICAgICAgICAgICAgc3J0cF9vY3RldF9z
dHJpbmdfaGV4X3N0cmluZyhwYWNrZXQsIHNpemVvZihpc24pKSk7CisgICAgcGFja2V0ICs9IHNp
emVvZihpc24pOworCisgICAgLyogY29weSBTUEkgaW50byBwYWNrZXQgKi8KKyAgICAqKCh1aW50
MTZfdCAqKXBhY2tldCkgPSBodG9ucyhla3QtPmRhdGEtPnNwaSk7CisgICAgZGVidWdfcHJpbnQo
bW9kX3NydHAsICJ3cml0aW5nIEVLVCBTUEk6ICVzLCIsCisgICAgICAgICAgICAgICAgc3J0cF9v
Y3RldF9zdHJpbmdfaGV4X3N0cmluZyhwYWNrZXQsIHNpemVvZihla3QtPmRhdGEtPnNwaSkpKTsK
KworICAgIC8qIGluY3JlYXNlIHBhY2tldCBsZW5ndGggYXBwcm9wcmlhdGVseSAqLworICAgICpw
YWNrZXRfbGVuICs9IEVLVF9PQ1RFVFNfQUZURVJfRU1LICsgZW1rX2xlbjsKK30KIAogLyoKICAq
IFRoZSBmdW5jdGlvbiBjYWxsIHNydGNwX2VrdF90cmFpbGVyKGVrdCwgYXV0aF9sZW4sIGF1dGhf
dGFnICAgKQotICogCisgKgogICogSWYgdGhlIHBvaW50ZXIgZWt0IGlzIE5VTEwsIHRoZW4gdGhl
IG90aGVyIGlucHV0cyBhcmUgdW5hZmZlY3RlZC4KICAqCiAgKiBhdXRoX3RhZyBpcyBhIHBvaW50
ZXIgdG8gdGhlIHBvaW50ZXIgdG8gdGhlIGxvY2F0aW9uIG9mIHRoZQogICogYXV0aGVudGljYXRp
b24gdGFnIGluIHRoZSBwYWNrZXQuICBJZiBFS1QgaXMgaW4gZWZmZWN0LCB0aGVuIHRoZQotICog
YXV0aF90YWcgcG9pbnRlciBpcyBzZXQgdG8gdGhlIGxvY2F0aW9uIAorICogYXV0aF90YWcgcG9p
bnRlciBpcyBzZXQgdG8gdGhlIGxvY2F0aW9uCiAgKi8KIAotdm9pZCBzcnRjcF9la3RfdHJhaWxl
cihzcnRwX2VrdF9zdHJlYW1fdCBla3QsIHVuc2lnbmVkICphdXRoX2xlbiwgdm9pZCAqKmF1dGhf
dGFnLCB2b2lkICp0YWdfY29weSkgeyAKLSAgLyogCi0gICAqIGlmIHRoZXJlIGlzIG5vIEVLVCBw
b2xpY3ksIHRoZW4gdGhlIG90aGVyIGlucHV0cyBhcmUgdW5hZmZlY3RlZAotICAgKi8KLSAgaWYg
KCFla3QpIAotICAgIHJldHVybjsKLSAgICAgIAotICAvKiBjb3B5IGF1dGhfdGFnIGludG8gdGVt
cG9yYXJ5IGxvY2F0aW9uICovCi0gIAordm9pZCBzcnRjcF9la3RfdHJhaWxlcihzcnRwX2VrdF9z
dHJlYW1fdCBla3QsCisgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkICphdXRoX2xlbiwK
KyAgICAgICAgICAgICAgICAgICAgICAgdm9pZCAqKmF1dGhfdGFnLAorICAgICAgICAgICAgICAg
ICAgICAgICB2b2lkICp0YWdfY29weSkKK3sKKyAgICAvKgorICAgICAqIGlmIHRoZXJlIGlzIG5v
IEVLVCBwb2xpY3ksIHRoZW4gdGhlIG90aGVyIGlucHV0cyBhcmUgdW5hZmZlY3RlZAorICAgICAq
LworICAgIGlmICghZWt0KQorICAgICAgICByZXR1cm47CisKKyAgICAvKiBjb3B5IGF1dGhfdGFn
IGludG8gdGVtcG9yYXJ5IGxvY2F0aW9uICovCiB9Ci0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9zcnRwL3NydHAuYyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9z
cnRwL3NydHAuYwppbmRleCBlZGU4MDRmMWQwYTJkMThjMjQzYmZmZjFjMTI5Y2U0NDBjYzA4YjEy
Li40NDYyNTAxNWU3YjY4NWIwN2Y5NTlhNWE2ZWI1OWFiMDg1ZmMzNDYzIDEwMDY0NAotLS0gYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvc3J0
cC9zcnRwLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJzcnRwL3NydHAvc3J0cC5jCkBAIC03LDI2ICs3LDI2IEBACiAgKiBDaXNjbyBTeXN0
ZW1zLCBJbmMuCiAgKi8KIC8qCi0gKgkKKyAqCiAgKiBDb3B5cmlnaHQgKGMpIDIwMDEtMjAxNywg
Q2lzY28gU3lzdGVtcywgSW5jLgogICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqIAorICoKICAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zCiAgKiBhcmUgbWV0OgotICogCisgKgogICogICBSZWRp
c3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdo
dAogICogICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIuCi0gKiAKKyAqCiAgKiAgIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKICAqICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKICAqICAgZGlzY2xhaW1lciBpbiB0
aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkCiAgKiAgIHdp
dGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqIAorICoKICAqICAgTmVpdGhlciB0aGUgbmFtZSBvZiB0
aGUgQ2lzY28gU3lzdGVtcywgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwogICogICBjb250cmli
dXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQK
ICAqICAgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBw
ZXJtaXNzaW9uLgotICogCisgKgogICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUg
Q09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwogICogIkFTIElTIiBBTkQgQU5ZIEVY
UFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKICAqIExJTUlU
RUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRO
RVNTCkBAIC00OCw2NiArNDgsNjcgQEAKICNpbmNsdWRlICJzcnRwX3ByaXYuaCIKICNpbmNsdWRl
ICJjcnlwdG9fdHlwZXMuaCIKICNpbmNsdWRlICJlcnIuaCIKLSNpbmNsdWRlICJla3QuaCIgICAg
ICAgICAgICAgLyogZm9yIFNSVFAgRW5jcnlwdGVkIEtleSBUcmFuc3BvcnQgKi8KLSNpbmNsdWRl
ICJhbGxvYy5oIiAgICAgICAgICAgLyogZm9yIHNydHBfY3J5cHRvX2FsbG9jKCkgICAgICAgICAg
Ki8KKyNpbmNsdWRlICJla3QuaCIgICAvKiBmb3IgU1JUUCBFbmNyeXB0ZWQgS2V5IFRyYW5zcG9y
dCAqLworI2luY2x1ZGUgImFsbG9jLmgiIC8qIGZvciBzcnRwX2NyeXB0b19hbGxvYygpICovCisK
ICNpZmRlZiBPUEVOU1NMCi0jaW5jbHVkZSAiYWVzX2djbV9vc3NsLmgiICAgIC8qIGZvciBBRVMg
R0NNIG1vZGUgICovCi0jIGlmZGVmIE9QRU5TU0xfS0RGCi0jIGluY2x1ZGUgPG9wZW5zc2wva2Rm
Lmg+Ci0jIGluY2x1ZGUgImFlc19pY21fb3NzbC5oIiAgICAvKiBmb3IgQUVTIEdDTSBtb2RlICAq
LwotIyBlbmRpZgorI2luY2x1ZGUgImFlc19nY21fb3NzbC5oIiAvKiBmb3IgQUVTIEdDTSBtb2Rl
ICovCisjaWZkZWYgT1BFTlNTTF9LREYKKyNpbmNsdWRlIDxvcGVuc3NsL2tkZi5oPgorI2luY2x1
ZGUgImFlc19pY21fb3NzbC5oIiAvKiBmb3IgQUVTIEdDTSBtb2RlICovCisjZW5kaWYKICNlbmRp
ZgogCiAjaW5jbHVkZSA8bGltaXRzLmg+CiAjaWZkZWYgSEFWRV9ORVRJTkVUX0lOX0gKLSMgaW5j
bHVkZSA8bmV0aW5ldC9pbi5oPgorI2luY2x1ZGUgPG5ldGluZXQvaW4uaD4KICNlbGlmIGRlZmlu
ZWQoSEFWRV9XSU5TT0NLMl9IKQotIyBpbmNsdWRlIDx3aW5zb2NrMi5oPgorI2luY2x1ZGUgPHdp
bnNvY2syLmg+CiAjZW5kaWYKIAotCiAvKiB0aGUgZGVidWcgbW9kdWxlIGZvciBzcnRwICovCi0K
IHNydHBfZGVidWdfbW9kdWxlX3QgbW9kX3NydHAgPSB7Ci0gIDAsICAgICAgICAgICAgICAgICAg
LyogZGVidWdnaW5nIGlzIG9mZiBieSBkZWZhdWx0ICovCi0gICJzcnRwIiAgICAgICAgICAgICAg
LyogcHJpbnRhYmxlIG5hbWUgZm9yIG1vZHVsZSAgICovCisgICAgMCwgICAgIC8qIGRlYnVnZ2lu
ZyBpcyBvZmYgYnkgZGVmYXVsdCAqLworICAgICJzcnRwIiAvKiBwcmludGFibGUgbmFtZSBmb3Ig
bW9kdWxlICovCiB9OwogCi0jZGVmaW5lIG9jdGV0c19pbl9ydHBfaGVhZGVyICAgMTIKLSNkZWZp
bmUgdWludDMyc19pbl9ydHBfaGVhZGVyICAzCi0jZGVmaW5lIG9jdGV0c19pbl9ydGNwX2hlYWRl
ciAgOAorI2RlZmluZSBvY3RldHNfaW5fcnRwX2hlYWRlciAxMgorI2RlZmluZSB1aW50MzJzX2lu
X3J0cF9oZWFkZXIgMworI2RlZmluZSBvY3RldHNfaW5fcnRjcF9oZWFkZXIgOAogI2RlZmluZSB1
aW50MzJzX2luX3J0Y3BfaGVhZGVyIDIKICNkZWZpbmUgb2N0ZXRzX2luX3J0cF9leHRuX2hkciA0
CiAKLXN0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdAotc3J0cF92YWxpZGF0ZV9ydHBfaGVhZGVyKHZv
aWQgKnJ0cF9oZHIsIGludCAqcGt0X29jdGV0X2xlbikgewotICBpZiAoKnBrdF9vY3RldF9sZW4g
PCBvY3RldHNfaW5fcnRwX2hlYWRlcikKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2JhZF9w
YXJhbTsKLQotICBzcnRwX2hkcl90ICpoZHIgPSAoc3J0cF9oZHJfdCAqKXJ0cF9oZHI7CitzdGF0
aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF92YWxpZGF0ZV9ydHBfaGVhZGVyKHZvaWQgKnJ0cF9o
ZHIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlu
dCAqcGt0X29jdGV0X2xlbikKK3sKKyAgICBpZiAoKnBrdF9vY3RldF9sZW4gPCBvY3RldHNfaW5f
cnRwX2hlYWRlcikKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW07CiAK
LSAgLyogQ2hlY2sgUlRQIGhlYWRlciBsZW5ndGggKi8KLSAgaW50IHJ0cF9oZWFkZXJfbGVuID0g
b2N0ZXRzX2luX3J0cF9oZWFkZXIgKyA0ICogaGRyLT5jYzsKLSAgaWYgKGhkci0+eCA9PSAxKQot
ICAgIHJ0cF9oZWFkZXJfbGVuICs9IG9jdGV0c19pbl9ydHBfZXh0bl9oZHI7CisgICAgc3J0cF9o
ZHJfdCAqaGRyID0gKHNydHBfaGRyX3QgKilydHBfaGRyOwogCi0gIGlmICgqcGt0X29jdGV0X2xl
biA8IHJ0cF9oZWFkZXJfbGVuKQotICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFt
OworICAgIC8qIENoZWNrIFJUUCBoZWFkZXIgbGVuZ3RoICovCisgICAgaW50IHJ0cF9oZWFkZXJf
bGVuID0gb2N0ZXRzX2luX3J0cF9oZWFkZXIgKyA0ICogaGRyLT5jYzsKKyAgICBpZiAoaGRyLT54
ID09IDEpCisgICAgICAgIHJ0cF9oZWFkZXJfbGVuICs9IG9jdGV0c19pbl9ydHBfZXh0bl9oZHI7
CiAKLSAgLyogVmVyaWZpbmcgcHJvZmlsZSBsZW5ndGguICovCi0gIGlmIChoZHItPnggPT0gMSkg
ewotICAgIHNydHBfaGRyX3h0bmRfdCAqeHRuX2hkciA9Ci0gICAgICAoc3J0cF9oZHJfeHRuZF90
ICopKCh1aW50MzJfdCAqKWhkciArIHVpbnQzMnNfaW5fcnRwX2hlYWRlciArIGhkci0+Y2MpOwot
ICAgIGludCBwcm9maWxlX2xlbiA9IG50b2hzKHh0bl9oZHItPmxlbmd0aCk7Ci0gICAgcnRwX2hl
YWRlcl9sZW4gKz0gcHJvZmlsZV9sZW4gKiA0OwotICAgIC8qIHByb2ZpbGUgbGVuZ3RoIGNvdW50
cyB0aGUgbnVtYmVyIG9mIDMyLWJpdCB3b3JkcyAqLwogICAgIGlmICgqcGt0X29jdGV0X2xlbiA8
IHJ0cF9oZWFkZXJfbGVuKQotICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW07
Ci0gIH0KLSAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKKyAgICAgICAgcmV0dXJuIHNydHBf
ZXJyX3N0YXR1c19iYWRfcGFyYW07CisKKyAgICAvKiBWZXJpZmluZyBwcm9maWxlIGxlbmd0aC4g
Ki8KKyAgICBpZiAoaGRyLT54ID09IDEpIHsKKyAgICAgICAgc3J0cF9oZHJfeHRuZF90ICp4dG5f
aGRyID0KKyAgICAgICAgICAgIChzcnRwX2hkcl94dG5kX3QgKikoKHVpbnQzMl90ICopaGRyICsg
dWludDMyc19pbl9ydHBfaGVhZGVyICsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
aGRyLT5jYyk7CisgICAgICAgIGludCBwcm9maWxlX2xlbiA9IG50b2hzKHh0bl9oZHItPmxlbmd0
aCk7CisgICAgICAgIHJ0cF9oZWFkZXJfbGVuICs9IHByb2ZpbGVfbGVuICogNDsKKyAgICAgICAg
LyogcHJvZmlsZSBsZW5ndGggY291bnRzIHRoZSBudW1iZXIgb2YgMzItYml0IHdvcmRzICovCisg
ICAgICAgIGlmICgqcGt0X29jdGV0X2xlbiA8IHJ0cF9oZWFkZXJfbGVuKQorICAgICAgICAgICAg
cmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW07CisgICAgfQorICAgIHJldHVybiBzcnRw
X2Vycl9zdGF0dXNfb2s7CiB9CiAKLWNvbnN0IGNoYXIgKnNydHBfZ2V0X3ZlcnNpb25fc3RyaW5n
ICgpCitjb25zdCBjaGFyICpzcnRwX2dldF92ZXJzaW9uX3N0cmluZygpCiB7CiAgICAgLyoKICAg
ICAgKiBTaW1wbHkgcmV0dXJuIHRoZSBhdXRvdG9vbHMgZ2VuZXJhdGVkIHN0cmluZwpAQCAtMTE1
LDI5ICsxMTYsMjkgQEAgY29uc3QgY2hhciAqc3J0cF9nZXRfdmVyc2lvbl9zdHJpbmcgKCkKICAg
ICByZXR1cm4gU1JUUF9WRVJfU1RSSU5HOwogfQogCi11bnNpZ25lZCBpbnQgc3J0cF9nZXRfdmVy
c2lvbiAoKQordW5zaWduZWQgaW50IHNydHBfZ2V0X3ZlcnNpb24oKQogewogICAgIHVuc2lnbmVk
IGludCBtYWpvciA9IDAsIG1pbm9yID0gMCwgbWljcm8gPSAwOwogICAgIHVuc2lnbmVkIGludCBy
diA9IDA7CiAgICAgaW50IHBhcnNlX3J2OwogCiAgICAgLyoKLSAgICAgKiBQYXJzZSB0aGUgYXV0
b3Rvb2xzIGdlbmVyYXRlZCB2ZXJzaW9uIAorICAgICAqIFBhcnNlIHRoZSBhdXRvdG9vbHMgZ2Vu
ZXJhdGVkIHZlcnNpb24KICAgICAgKi8KICAgICBwYXJzZV9ydiA9IHNzY2FuZihTUlRQX1ZFUlNJ
T04sICIldS4ldS4ldSIsICZtYWpvciwgJm1pbm9yLCAmbWljcm8pOwogICAgIGlmIChwYXJzZV9y
diAhPSAzKSB7Ci0JLyoKLQkgKiBXZSdyZSBleHBlY3RlZCB0byBwYXJzZSBhbGwgMyB2ZXJzaW9u
IGxldmVscy4KLQkgKiBJZiBub3QsIHRoZW4gdGhpcyBtdXN0IG5vdCBiZSBhbiBvZmZpY2lhbCBy
ZWxlYXNlLgotCSAqIFJldHVybiBhbGwgemVyb3Mgb24gdGhlIHZlcnNpb24KLQkgKi8KLQlyZXR1
cm4gKDApOworICAgICAgICAvKgorICAgICAgICAgKiBXZSdyZSBleHBlY3RlZCB0byBwYXJzZSBh
bGwgMyB2ZXJzaW9uIGxldmVscy4KKyAgICAgICAgICogSWYgbm90LCB0aGVuIHRoaXMgbXVzdCBu
b3QgYmUgYW4gb2ZmaWNpYWwgcmVsZWFzZS4KKyAgICAgICAgICogUmV0dXJuIGFsbCB6ZXJvcyBv
biB0aGUgdmVyc2lvbgorICAgICAgICAgKi8KKyAgICAgICAgcmV0dXJuICgwKTsKICAgICB9CiAK
LSAgICAvKiAKKyAgICAvKgogICAgICAqIFdlIGFsbG93IDggYml0cyBmb3IgdGhlIG1ham9yIGFu
ZCBtaW5vciwgd2hpbGUKICAgICAgKiBhbGxvd2luZyAxNiBiaXRzIGZvciB0aGUgbWljcm8uICAx
NiBiaXRzIGZvciB0aGUgbWljcm8KLSAgICAgKiBtYXkgYmUgYmVuZWZpY2lhbCBmb3IgYSBjb250
aW51b3VzIGRlbGl2ZXJ5IG1vZGVsIAorICAgICAqIG1heSBiZSBiZW5lZmljaWFsIGZvciBhIGNv
bnRpbnVvdXMgZGVsaXZlcnkgbW9kZWwKICAgICAgKiBpbiB0aGUgZnV0dXJlLgogICAgICAqLwog
ICAgIHJ2IHw9IChtYWpvciAmIDB4RkYpIDw8IDI0OwpAQCAtMTQ2LDQ0NSArMTQ3LDQwOSBAQCB1
bnNpZ25lZCBpbnQgc3J0cF9nZXRfdmVyc2lvbiAoKQogICAgIHJldHVybiBydjsKIH0KIAotLyog
UmVsZWFzZSAobWF5YmUgcGFydGlhbGx5IGFsbG9jYXRlZCkgc3RyZWFtLiAqLwotc3RhdGljIHZv
aWQKLXNydHBfc3RyZWFtX2ZyZWUoc3J0cF9zdHJlYW1fY3R4X3QgKnN0cikgewotICB1bnNpZ25l
ZCBpbnQgaSA9IDA7Ci0gIHNydHBfc2Vzc2lvbl9rZXlzX3QgKnNlc3Npb25fa2V5cyA9IE5VTEw7
CitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3N0cmVhbV9kZWFsbG9jKHNydHBfc3RyZWFtX2N0eF90
ICpzdHJlYW0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHNy
dHBfc3RyZWFtX2N0eF90ICpzdHJlYW1fdGVtcGxhdGUpCit7CisgICAgc3J0cF9lcnJfc3RhdHVz
X3Qgc3RhdHVzOworICAgIHVuc2lnbmVkIGludCBpID0gMDsKKyAgICBzcnRwX3Nlc3Npb25fa2V5
c190ICpzZXNzaW9uX2tleXMgPSBOVUxMOworICAgIHNydHBfc2Vzc2lvbl9rZXlzX3QgKnRlbXBs
YXRlX3Nlc3Npb25fa2V5cyA9IE5VTEw7CiAKLSAgZm9yIChpID0gMDsgaSA8IHN0ci0+bnVtX21h
c3Rlcl9rZXlzOyBpKyspIHsKLSAgICBzZXNzaW9uX2tleXMgPSAmc3RyLT5zZXNzaW9uX2tleXNb
aV07CisgICAgLyoKKyAgICAgKiB3ZSB1c2UgYSBjb25zZXJ2YXRpdmUgZGVhbGxvY2F0aW9uIHN0
cmF0ZWd5IC0gaWYgYW55IGRlYWxsb2NhdGlvbgorICAgICAqIGZhaWxzLCB0aGVuIHdlIHJlcG9y
dCB0aGF0IGZhY3Qgd2l0aG91dCB0cnlpbmcgdG8gZGVhbGxvY2F0ZQorICAgICAqIGFueXRoaW5n
IGVsc2UKKyAgICAgKi8KKyAgICBpZiAoc3RyZWFtLT5zZXNzaW9uX2tleXMpIHsKKyAgICAgICAg
Zm9yIChpID0gMDsgaSA8IHN0cmVhbS0+bnVtX21hc3Rlcl9rZXlzOyBpKyspIHsKKyAgICAgICAg
ICAgIHNlc3Npb25fa2V5cyA9ICZzdHJlYW0tPnNlc3Npb25fa2V5c1tpXTsKKworICAgICAgICAg
ICAgaWYgKHN0cmVhbV90ZW1wbGF0ZSAmJgorICAgICAgICAgICAgICAgIHN0cmVhbS0+bnVtX21h
c3Rlcl9rZXlzID09IHN0cmVhbV90ZW1wbGF0ZS0+bnVtX21hc3Rlcl9rZXlzKSB7CisgICAgICAg
ICAgICAgICAgdGVtcGxhdGVfc2Vzc2lvbl9rZXlzID0gJnN0cmVhbV90ZW1wbGF0ZS0+c2Vzc2lv
bl9rZXlzW2ldOworICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICB0ZW1wbGF0
ZV9zZXNzaW9uX2tleXMgPSBOVUxMOworICAgICAgICAgICAgfQogCi0gICAgaWYgKHNlc3Npb25f
a2V5cy0+cnRwX3h0bl9oZHJfY2lwaGVyKSB7Ci0gICAgICBzcnRwX2NpcGhlcl9kZWFsbG9jKHNl
c3Npb25fa2V5cy0+cnRwX3h0bl9oZHJfY2lwaGVyKTsKLSAgICB9CisgICAgICAgICAgICAvKgor
ICAgICAgICAgICAgKiBkZWFsbG9jYXRlIGNpcGhlciwgaWYgaXQgaXMgbm90IHRoZSBzYW1lIGFz
IHRoYXQgaW4gdGVtcGxhdGUKKyAgICAgICAgICAgICovCisgICAgICAgICAgICBpZiAodGVtcGxh
dGVfc2Vzc2lvbl9rZXlzICYmCisgICAgICAgICAgICAgICAgc2Vzc2lvbl9rZXlzLT5ydHBfY2lw
aGVyID09IHRlbXBsYXRlX3Nlc3Npb25fa2V5cy0+cnRwX2NpcGhlcikgeworICAgICAgICAgICAg
ICAgIC8qIGRvIG5vdGhpbmcgKi8KKyAgICAgICAgICAgIH0gZWxzZSBpZiAoc2Vzc2lvbl9rZXlz
LT5ydHBfY2lwaGVyKSB7CisgICAgICAgICAgICAgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfZGVh
bGxvYyhzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXIpOworICAgICAgICAgICAgICAgIGlmIChzdGF0
dXMpCisgICAgICAgICAgICAgICAgICAgIHJldHVybiBzdGF0dXM7CisgICAgICAgICAgICB9CiAK
LSAgICBpZiAoc2Vzc2lvbl9rZXlzLT5ydGNwX2NpcGhlcikgewotICAgICAgc3J0cF9jaXBoZXJf
ZGVhbGxvYyhzZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyKTsKLSAgICB9CisgICAgICAgICAgICAv
KgorICAgICAgICAgICAgICogZGVhbGxvY2F0ZSBhdXRoIGZ1bmN0aW9uLCBpZiBpdCBpcyBub3Qg
dGhlIHNhbWUgYXMgdGhhdCBpbgorICAgICAgICAgICAgICogdGVtcGxhdGUKKyAgICAgICAgICAg
ICAqLworICAgICAgICAgICAgaWYgKHRlbXBsYXRlX3Nlc3Npb25fa2V5cyAmJgorICAgICAgICAg
ICAgICAgIHNlc3Npb25fa2V5cy0+cnRwX2F1dGggPT0gdGVtcGxhdGVfc2Vzc2lvbl9rZXlzLT5y
dHBfYXV0aCkgeworICAgICAgICAgICAgICAgIC8qIGRvIG5vdGhpbmcgKi8KKyAgICAgICAgICAg
IH0gZWxzZSBpZiAoc2Vzc2lvbl9rZXlzLT5ydHBfYXV0aCkgeworICAgICAgICAgICAgICAgIHN0
YXR1cyA9IHNydHBfYXV0aF9kZWFsbG9jKHNlc3Npb25fa2V5cy0+cnRwX2F1dGgpOworICAgICAg
ICAgICAgICAgIGlmIChzdGF0dXMpCisgICAgICAgICAgICAgICAgICAgIHJldHVybiBzdGF0dXM7
CisgICAgICAgICAgICB9CiAKLSAgICBpZiAoc2Vzc2lvbl9rZXlzLT5ydGNwX2F1dGgpIHsKLSAg
ICAgIHNydHBfYXV0aF9kZWFsbG9jKHNlc3Npb25fa2V5cy0+cnRjcF9hdXRoKTsKLSAgICB9Cisg
ICAgICAgICAgICBpZiAodGVtcGxhdGVfc2Vzc2lvbl9rZXlzICYmCisgICAgICAgICAgICAgICAg
c2Vzc2lvbl9rZXlzLT5ydHBfeHRuX2hkcl9jaXBoZXIgPT0KKyAgICAgICAgICAgICAgICAgICAg
dGVtcGxhdGVfc2Vzc2lvbl9rZXlzLT5ydHBfeHRuX2hkcl9jaXBoZXIpIHsKKyAgICAgICAgICAg
ICAgICAvKiBkbyBub3RoaW5nICovCisgICAgICAgICAgICB9IGVsc2UgaWYgKHNlc3Npb25fa2V5
cy0+cnRwX3h0bl9oZHJfY2lwaGVyKSB7CisgICAgICAgICAgICAgICAgc3RhdHVzID0gc3J0cF9j
aXBoZXJfZGVhbGxvYyhzZXNzaW9uX2tleXMtPnJ0cF94dG5faGRyX2NpcGhlcik7CisgICAgICAg
ICAgICAgICAgaWYgKHN0YXR1cykKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHN0YXR1czsK
KyAgICAgICAgICAgIH0KIAotICAgIGlmIChzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXIpIHsKLSAg
ICAgIHNydHBfY2lwaGVyX2RlYWxsb2Moc2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVyKTsKLSAgICB9
CisgICAgICAgICAgICAvKgorICAgICAgICAgICAgICogZGVhbGxvY2F0ZSBydGNwIGNpcGhlciwg
aWYgaXQgaXMgbm90IHRoZSBzYW1lIGFzIHRoYXQgaW4KKyAgICAgICAgICAgICAqIHRlbXBsYXRl
CisgICAgICAgICAgICAgKi8KKyAgICAgICAgICAgIGlmICh0ZW1wbGF0ZV9zZXNzaW9uX2tleXMg
JiYKKyAgICAgICAgICAgICAgICBzZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyID09CisgICAgICAg
ICAgICAgICAgICAgIHRlbXBsYXRlX3Nlc3Npb25fa2V5cy0+cnRjcF9jaXBoZXIpIHsKKyAgICAg
ICAgICAgICAgICAvKiBkbyBub3RoaW5nICovCisgICAgICAgICAgICB9IGVsc2UgaWYgKHNlc3Np
b25fa2V5cy0+cnRjcF9jaXBoZXIpIHsKKyAgICAgICAgICAgICAgICBzdGF0dXMgPSBzcnRwX2Np
cGhlcl9kZWFsbG9jKHNlc3Npb25fa2V5cy0+cnRjcF9jaXBoZXIpOworICAgICAgICAgICAgICAg
IGlmIChzdGF0dXMpCisgICAgICAgICAgICAgICAgICAgIHJldHVybiBzdGF0dXM7CisgICAgICAg
ICAgICB9CiAKLSAgICBpZiAoc2Vzc2lvbl9rZXlzLT5ydHBfYXV0aCkgewotICAgICAgc3J0cF9h
dXRoX2RlYWxsb2Moc2Vzc2lvbl9rZXlzLT5ydHBfYXV0aCk7Ci0gICAgfQorICAgICAgICAgICAg
LyoKKyAgICAgICAgICAgICAqIGRlYWxsb2NhdGUgcnRjcCBhdXRoIGZ1bmN0aW9uLCBpZiBpdCBp
cyBub3QgdGhlIHNhbWUgYXMgdGhhdCBpbgorICAgICAgICAgICAgICogdGVtcGxhdGUKKyAgICAg
ICAgICAgICAqLworICAgICAgICAgICAgaWYgKHRlbXBsYXRlX3Nlc3Npb25fa2V5cyAmJgorICAg
ICAgICAgICAgICAgIHNlc3Npb25fa2V5cy0+cnRjcF9hdXRoID09IHRlbXBsYXRlX3Nlc3Npb25f
a2V5cy0+cnRjcF9hdXRoKSB7CisgICAgICAgICAgICAgICAgLyogZG8gbm90aGluZyAqLworICAg
ICAgICAgICAgfSBlbHNlIGlmIChzZXNzaW9uX2tleXMtPnJ0Y3BfYXV0aCkgeworICAgICAgICAg
ICAgICAgIHN0YXR1cyA9IHNydHBfYXV0aF9kZWFsbG9jKHNlc3Npb25fa2V5cy0+cnRjcF9hdXRo
KTsKKyAgICAgICAgICAgICAgICBpZiAoc3RhdHVzKQorICAgICAgICAgICAgICAgICAgICByZXR1
cm4gc3RhdHVzOworICAgICAgICAgICAgfQogCi0gICAgaWYgKHNlc3Npb25fa2V5cy0+bWtpX2lk
KSB7Ci0gICAgICBzcnRwX2NyeXB0b19mcmVlKHNlc3Npb25fa2V5cy0+bWtpX2lkKTsKLSAgICB9
CisgICAgICAgICAgICAvKgorICAgICAgICAgICAgICogemVyb2l6ZSB0aGUgc2FsdCB2YWx1ZQor
ICAgICAgICAgICAgICovCisgICAgICAgICAgICBvY3RldF9zdHJpbmdfc2V0X3RvX3plcm8oc2Vz
c2lvbl9rZXlzLT5zYWx0LCBTUlRQX0FFQURfU0FMVF9MRU4pOworICAgICAgICAgICAgb2N0ZXRf
c3RyaW5nX3NldF90b196ZXJvKHNlc3Npb25fa2V5cy0+Y19zYWx0LCBTUlRQX0FFQURfU0FMVF9M
RU4pOworCisgICAgICAgICAgICBpZiAoc2Vzc2lvbl9rZXlzLT5ta2lfaWQpIHsKKyAgICAgICAg
ICAgICAgICBvY3RldF9zdHJpbmdfc2V0X3RvX3plcm8oc2Vzc2lvbl9rZXlzLT5ta2lfaWQsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlc3Npb25fa2V5cy0+bWtp
X3NpemUpOworICAgICAgICAgICAgICAgIHNydHBfY3J5cHRvX2ZyZWUoc2Vzc2lvbl9rZXlzLT5t
a2lfaWQpOworICAgICAgICAgICAgICAgIHNlc3Npb25fa2V5cy0+bWtpX2lkID0gTlVMTDsKKyAg
ICAgICAgICAgIH0KIAotICAgIGlmIChzZXNzaW9uX2tleXMtPmxpbWl0KSB7Ci0gICAgICBzcnRw
X2NyeXB0b19mcmVlKHNlc3Npb25fa2V5cy0+bGltaXQpOworICAgICAgICAgICAgLyoKKyAgICAg
ICAgICAgICAqIGRlYWxsb2NhdGUga2V5IHVzYWdlIGxpbWl0LCBpZiBpdCBpcyBub3QgdGhlIHNh
bWUgYXMgdGhhdCBpbgorICAgICAgICAgICAgICogdGVtcGxhdGUKKyAgICAgICAgICAgICAqLwor
ICAgICAgICAgICAgaWYgKHRlbXBsYXRlX3Nlc3Npb25fa2V5cyAmJgorICAgICAgICAgICAgICAg
IHNlc3Npb25fa2V5cy0+bGltaXQgPT0gdGVtcGxhdGVfc2Vzc2lvbl9rZXlzLT5saW1pdCkgewor
ICAgICAgICAgICAgICAgIC8qIGRvIG5vdGhpbmcgKi8KKyAgICAgICAgICAgIH0gZWxzZSBpZiAo
c2Vzc2lvbl9rZXlzLT5saW1pdCkgeworICAgICAgICAgICAgICAgIHNydHBfY3J5cHRvX2ZyZWUo
c2Vzc2lvbl9rZXlzLT5saW1pdCk7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICAgICAg
c3J0cF9jcnlwdG9fZnJlZShzdHJlYW0tPnNlc3Npb25fa2V5cyk7CiAgICAgfQotICB9Ci0KLSAg
c3J0cF9jcnlwdG9fZnJlZShzdHItPnNlc3Npb25fa2V5cyk7CiAKLSAgaWYgKHN0ci0+ZW5jX3h0
bl9oZHIpIHsKLSAgICBzcnRwX2NyeXB0b19mcmVlKHN0ci0+ZW5jX3h0bl9oZHIpOwotICB9Cisg
ICAgc3RhdHVzID0gc3J0cF9yZGJ4X2RlYWxsb2MoJnN0cmVhbS0+cnRwX3JkYngpOworICAgIGlm
IChzdGF0dXMpCisgICAgICAgIHJldHVybiBzdGF0dXM7CiAKLSAgc3J0cF9jcnlwdG9fZnJlZShz
dHIpOwotfQorICAgIC8qIERBTSAtIG5lZWQgdG8gZGVhbGxvY2F0ZSBFS1QgaGVyZSAqLwogCi1z
cnRwX2Vycl9zdGF0dXNfdAotc3J0cF9zdHJlYW1fYWxsb2Moc3J0cF9zdHJlYW1fY3R4X3QgKipz
dHJfcHRyLAotCQkgIGNvbnN0IHNydHBfcG9saWN5X3QgKnApIHsKLSAgc3J0cF9zdHJlYW1fY3R4
X3QgKnN0cjsKLSAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdDsKLSAgdW5zaWduZWQgaW50IGkgPSAw
OwotICBzcnRwX3Nlc3Npb25fa2V5c190ICpzZXNzaW9uX2tleXMgPSBOVUxMOwotCi0gIC8qCi0g
ICAqIFRoaXMgZnVuY3Rpb24gYWxsb2NhdGVzIHRoZSBzdHJlYW0gY29udGV4dCwgcnRwIGFuZCBy
dGNwIGNpcGhlcnMKLSAgICogYW5kIGF1dGggZnVuY3Rpb25zLCBhbmQga2V5IGxpbWl0IHN0cnVj
dHVyZS4gIElmIHRoZXJlIGlzIGEKLSAgICogZmFpbHVyZSBkdXJpbmcgYWxsb2NhdGlvbiwgd2Ug
ZnJlZSBhbGwgcHJldmlvdXNseSBhbGxvY2F0ZWQKLSAgICogbWVtb3J5IGFuZCByZXR1cm4gYSBm
YWlsdXJlIGNvZGUuICBUaGUgY29kZSBjb3VsZCBwcm9iYWJseSAKLSAgICogYmUgaW1wcm92ZWQs
IGJ1dCBpdCB3b3JrcyBhbmQgc2hvdWxkIGJlIGNsZWFyLgotICAgKi8KLQotICAvKiBhbGxvY2F0
ZSBzcnRwIHN0cmVhbSBhbmQgc2V0IHN0cl9wdHIgKi8KLSAgc3RyID0gKHNydHBfc3RyZWFtX2N0
eF90ICopIHNydHBfY3J5cHRvX2FsbG9jKHNpemVvZihzcnRwX3N0cmVhbV9jdHhfdCkpOwotICBp
ZiAoc3RyID09IE5VTEwpCi0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19hbGxvY19mYWlsOwot
Ci0gIG1lbXNldChzdHIsIDAsIHNpemVvZihzcnRwX3N0cmVhbV9jdHhfdCkpOwotICAqc3RyX3B0
ciA9IHN0cjsKLQotICAvKiBUbyBrZWVwIGJhY2t3YXJkcyBBUEkgY29tcGF0aWJsZSBpZiBzb21l
b25lIGlzIHVzaW5nIG11bHRpcGxlIG1hc3RlcgotICAgKiBrZXlzIHRoZW4ga2V5IHNob3VsZCBi
ZSBzZXQgdG8gTlVMTAotICAgKi8KLSAgaWYgKHAtPmtleSAhPSBOVUxMKSB7Ci0gICAgICBzdHIt
Pm51bV9tYXN0ZXJfa2V5cyA9IDE7Ci0gIH0gZWxzZSB7Ci0gICAgICBzdHItPm51bV9tYXN0ZXJf
a2V5cyA9IHAtPm51bV9tYXN0ZXJfa2V5czsKLSAgfQotCi0gIHN0ci0+c2Vzc2lvbl9rZXlzID0g
KHNydHBfc2Vzc2lvbl9rZXlzX3QgKilzcnRwX2NyeXB0b19hbGxvYygKLSAgICAgIHNpemVvZihz
cnRwX3Nlc3Npb25fa2V5c190KSAqIHN0ci0+bnVtX21hc3Rlcl9rZXlzKTsKLQotICBpZiAoc3Ry
LT5zZXNzaW9uX2tleXMgPT0gTlVMTCkgewotICAgICAgc3J0cF9zdHJlYW1fZnJlZShzdHIpOwot
ICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19hbGxvY19mYWlsOwotICB9Ci0KLSAgbWVtc2V0
KHN0ci0+c2Vzc2lvbl9rZXlzLCAwLCBzaXplb2Yoc3J0cF9zZXNzaW9uX2tleXNfdCkgKiBzdHIt
Pm51bV9tYXN0ZXJfa2V5cyk7Ci0KLSAgZm9yIChpID0gMDsgaSA8IHN0ci0+bnVtX21hc3Rlcl9r
ZXlzOyBpKyspIHsKLSAgICBzZXNzaW9uX2tleXMgPSAmc3RyLT5zZXNzaW9uX2tleXNbaV07Ci0K
LSAgICAvKiBhbGxvY2F0ZSBjaXBoZXIgKi8gCi0gICAgc3RhdCA9IHNydHBfY3J5cHRvX2tlcm5l
bF9hbGxvY19jaXBoZXIocC0+cnRwLmNpcGhlcl90eXBlLAotICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICZzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXIsCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcC0+cnRwLmNpcGhlcl9rZXlfbGVu
LAotCQkJCSAgICAgICAgICAgcC0+cnRwLmF1dGhfdGFnX2xlbik7Ci0gICAgaWYgKHN0YXQpIHsK
LSAgICAgIHNydHBfc3RyZWFtX2ZyZWUoc3RyKTsKLSAgICAgIHJldHVybiBzdGF0OworICAgIGlm
IChzdHJlYW1fdGVtcGxhdGUgJiYKKyAgICAgICAgc3RyZWFtLT5lbmNfeHRuX2hkciA9PSBzdHJl
YW1fdGVtcGxhdGUtPmVuY194dG5faGRyKSB7CisgICAgICAgIC8qIGRvIG5vdGhpbmcgKi8KKyAg
ICB9IGVsc2UgaWYgKHN0cmVhbS0+ZW5jX3h0bl9oZHIpIHsKKyAgICAgICAgc3J0cF9jcnlwdG9f
ZnJlZShzdHJlYW0tPmVuY194dG5faGRyKTsKICAgICB9CiAKLSAgICAvKiBhbGxvY2F0ZSBhdXRo
IGZ1bmN0aW9uICovCi0gICAgc3RhdCA9IHNydHBfY3J5cHRvX2tlcm5lbF9hbGxvY19hdXRoKHAt
PnJ0cC5hdXRoX3R5cGUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICZzZXNzaW9uX2tleXMtPnJ0cF9hdXRoLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBwLT5ydHAuYXV0aF9rZXlfbGVuLAotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBwLT5ydHAuYXV0aF90YWdfbGVuKTsKLSAgICBpZiAoc3RhdCkgewot
ICAgICAgc3J0cF9zdHJlYW1fZnJlZShzdHIpOwotICAgICAgcmV0dXJuIHN0YXQ7Ci0gICAgfQor
ICAgIC8qIGRlYWxsb2NhdGUgc3J0cCBzdHJlYW0gY29udGV4dCAqLworICAgIHNydHBfY3J5cHRv
X2ZyZWUoc3RyZWFtKTsKKworICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7Cit9CisKK3Ny
dHBfZXJyX3N0YXR1c190IHNydHBfc3RyZWFtX2FsbG9jKHNydHBfc3RyZWFtX2N0eF90ICoqc3Ry
X3B0ciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHNydHBfcG9s
aWN5X3QgKnApCit7CisgICAgc3J0cF9zdHJlYW1fY3R4X3QgKnN0cjsKKyAgICBzcnRwX2Vycl9z
dGF0dXNfdCBzdGF0OworICAgIHVuc2lnbmVkIGludCBpID0gMDsKKyAgICBzcnRwX3Nlc3Npb25f
a2V5c190ICpzZXNzaW9uX2tleXMgPSBOVUxMOwogCiAgICAgLyoKLSAgICAgKiAuLi5hbmQgbm93
IHRoZSBSVENQLXNwZWNpZmljIGluaXRpYWxpemF0aW9uIC0gZmlyc3QsIGFsbG9jYXRlCi0gICAg
ICogdGhlIGNpcGhlciAKKyAgICAgKiBUaGlzIGZ1bmN0aW9uIGFsbG9jYXRlcyB0aGUgc3RyZWFt
IGNvbnRleHQsIHJ0cCBhbmQgcnRjcCBjaXBoZXJzCisgICAgICogYW5kIGF1dGggZnVuY3Rpb25z
LCBhbmQga2V5IGxpbWl0IHN0cnVjdHVyZS4gIElmIHRoZXJlIGlzIGEKKyAgICAgKiBmYWlsdXJl
IGR1cmluZyBhbGxvY2F0aW9uLCB3ZSBmcmVlIGFsbCBwcmV2aW91c2x5IGFsbG9jYXRlZAorICAg
ICAqIG1lbW9yeSBhbmQgcmV0dXJuIGEgZmFpbHVyZSBjb2RlLiAgVGhlIGNvZGUgY291bGQgcHJv
YmFibHkKKyAgICAgKiBiZSBpbXByb3ZlZCwgYnV0IGl0IHdvcmtzIGFuZCBzaG91bGQgYmUgY2xl
YXIuCiAgICAgICovCi0gICAgc3RhdCA9IHNydHBfY3J5cHRvX2tlcm5lbF9hbGxvY19jaXBoZXIo
cC0+cnRjcC5jaXBoZXJfdHlwZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAmc2Vzc2lvbl9rZXlzLT5ydGNwX2NpcGhlciwKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBwLT5ydGNwLmNpcGhlcl9rZXlfbGVuLAotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHAtPnJ0Y3AuYXV0aF90YWdfbGVuKTsK
LSAgICBpZiAoc3RhdCkgewotICAgICAgc3J0cF9zdHJlYW1fZnJlZShzdHIpOwotICAgICAgcmV0
dXJuIHN0YXQ7Ci0gICAgfQotCi0gICAgLyogYWxsb2NhdGUgYXV0aCBmdW5jdGlvbiAqLwotICAg
IHN0YXQgPSBzcnRwX2NyeXB0b19rZXJuZWxfYWxsb2NfYXV0aChwLT5ydGNwLmF1dGhfdHlwZSwK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnNlc3Npb25fa2V5cy0+
cnRjcF9hdXRoLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwLT5y
dGNwLmF1dGhfa2V5X2xlbiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgcC0+cnRjcC5hdXRoX3RhZ19sZW4pOwotICAgIGlmIChzdGF0KSB7Ci0gICAgICBzcnRwX3N0
cmVhbV9mcmVlKHN0cik7Ci0gICAgICByZXR1cm4gc3RhdDsKLSAgICB9Ci0gICAKLSAgICBzZXNz
aW9uX2tleXMtPm1raV9pZCA9IE5VTEw7CiAKLSAgICAvKiBhbGxvY2F0ZSBrZXkgbGltaXQgc3Ry
dWN0dXJlICovCi0gICAgc2Vzc2lvbl9rZXlzLT5saW1pdCA9IChzcnRwX2tleV9saW1pdF9jdHhf
dCopIHNydHBfY3J5cHRvX2FsbG9jKHNpemVvZihzcnRwX2tleV9saW1pdF9jdHhfdCkpOwotICAg
IGlmIChzZXNzaW9uX2tleXMtPmxpbWl0ID09IE5VTEwpIHsKLSAgICAgICAgc3J0cF9zdHJlYW1f
ZnJlZShzdHIpOworICAgIC8qIGFsbG9jYXRlIHNydHAgc3RyZWFtIGFuZCBzZXQgc3RyX3B0ciAq
LworICAgIHN0ciA9IChzcnRwX3N0cmVhbV9jdHhfdCAqKXNydHBfY3J5cHRvX2FsbG9jKHNpemVv
ZihzcnRwX3N0cmVhbV9jdHhfdCkpOworICAgIGlmIChzdHIgPT0gTlVMTCkKICAgICAgICAgcmV0
dXJuIHNydHBfZXJyX3N0YXR1c19hbGxvY19mYWlsOwotICAgIH0KLSAgfQotCi0gIC8qIGFsbG9j
YXRlIGVrdCBkYXRhIGFzc29jaWF0ZWQgd2l0aCBzdHJlYW0gKi8KLSAgc3RhdCA9IHNydHBfZWt0
X2FsbG9jKCZzdHItPmVrdCwgcC0+ZWt0KTsKLSAgaWYgKHN0YXQpIHsKLSAgICBzcnRwX3N0cmVh
bV9mcmVlKHN0cik7Ci0gICAgcmV0dXJuIHN0YXQ7Ci0gIH0KIAotICBpZiAocC0+ZW5jX3h0bl9o
ZHIgJiYgcC0+ZW5jX3h0bl9oZHJfY291bnQgPiAwKSB7Ci0gICAgc3J0cF9jaXBoZXJfdHlwZV9p
ZF90IGVuY194dG5faGRyX2NpcGhlcl90eXBlOwotICAgIGludCBlbmNfeHRuX2hkcl9jaXBoZXJf
a2V5X2xlbjsKKyAgICAqc3RyX3B0ciA9IHN0cjsKIAotICAgIHN0ci0+ZW5jX3h0bl9oZHIgPSAo
aW50Kikgc3J0cF9jcnlwdG9fYWxsb2MocC0+ZW5jX3h0bl9oZHJfY291bnQgKiBzaXplb2YocC0+
ZW5jX3h0bl9oZHJbMF0pKTsKLSAgICBpZiAoIXN0ci0+ZW5jX3h0bl9oZHIpIHsKLSAgICAgIHNy
dHBfc3RyZWFtX2ZyZWUoc3RyKTsKLSAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYWxsb2Nf
ZmFpbDsKKyAgICAvKgorICAgICAqVG8ga2VlcCBiYWNrd2FyZHMgQVBJIGNvbXBhdGlibGUgaWYg
c29tZW9uZSBpcyB1c2luZyBtdWx0aXBsZSBtYXN0ZXIKKyAgICAgKiBrZXlzIHRoZW4ga2V5IHNo
b3VsZCBiZSBzZXQgdG8gTlVMTAorICAgICAqLworICAgIGlmIChwLT5rZXkgIT0gTlVMTCkgewor
ICAgICAgICBzdHItPm51bV9tYXN0ZXJfa2V5cyA9IDE7CisgICAgfSBlbHNlIHsKKyAgICAgICAg
c3RyLT5udW1fbWFzdGVyX2tleXMgPSBwLT5udW1fbWFzdGVyX2tleXM7CiAgICAgfQotICAgIG1l
bWNweShzdHItPmVuY194dG5faGRyLCBwLT5lbmNfeHRuX2hkciwgcC0+ZW5jX3h0bl9oZHJfY291
bnQgKiBzaXplb2YocC0+ZW5jX3h0bl9oZHJbMF0pKTsKLSAgICBzdHItPmVuY194dG5faGRyX2Nv
dW50ID0gcC0+ZW5jX3h0bl9oZHJfY291bnQ7CiAKLSAgICAvKiBGb3IgR0NNIGNpcGhlcnMsIHRo
ZSBjb3JyZXNwb25kaW5nIElDTSBjaXBoZXIgaXMgdXNlZCBmb3IgaGVhZGVyIGV4dGVuc2lvbnMg
ZW5jcnlwdGlvbi4gKi8KLSAgICBzd2l0Y2ggKHAtPnJ0cC5jaXBoZXJfdHlwZSkgewotICAgIGNh
c2UgU1JUUF9BRVNfR0NNXzEyODoKLSAgICAgIGVuY194dG5faGRyX2NpcGhlcl90eXBlID0gU1JU
UF9BRVNfSUNNXzEyODsKLSAgICAgIGVuY194dG5faGRyX2NpcGhlcl9rZXlfbGVuID0gU1JUUF9B
RVNfSUNNXzEyOF9LRVlfTEVOX1dTQUxUOwotICAgICAgYnJlYWs7Ci0gICAgY2FzZSBTUlRQX0FF
U19HQ01fMjU2OgotICAgICAgZW5jX3h0bl9oZHJfY2lwaGVyX3R5cGUgPSBTUlRQX0FFU19JQ01f
MjU2OwotICAgICAgZW5jX3h0bl9oZHJfY2lwaGVyX2tleV9sZW4gPSBTUlRQX0FFU19JQ01fMjU2
X0tFWV9MRU5fV1NBTFQ7Ci0gICAgICBicmVhazsKLSAgICBkZWZhdWx0OgotICAgICAgZW5jX3h0
bl9oZHJfY2lwaGVyX3R5cGUgPSBwLT5ydHAuY2lwaGVyX3R5cGU7Ci0gICAgICBlbmNfeHRuX2hk
cl9jaXBoZXJfa2V5X2xlbiA9IHAtPnJ0cC5jaXBoZXJfa2V5X2xlbjsKLSAgICAgIGJyZWFrOwot
ICAgIH0KKyAgICBzdHItPnNlc3Npb25fa2V5cyA9IChzcnRwX3Nlc3Npb25fa2V5c190ICopc3J0
cF9jcnlwdG9fYWxsb2MoCisgICAgICAgIHNpemVvZihzcnRwX3Nlc3Npb25fa2V5c190KSAqIHN0
ci0+bnVtX21hc3Rlcl9rZXlzKTsKIAotICAgIGZvciAoaSA9IDA7IGkgPCBzdHItPm51bV9tYXN0
ZXJfa2V5czsgaSsrKSB7Ci0gICAgICBzZXNzaW9uX2tleXMgPSAmc3RyLT5zZXNzaW9uX2tleXNb
aV07Ci0KLSAgICAgIC8qIGFsbG9jYXRlIGNpcGhlciBmb3IgZXh0ZW5zaW9ucyBoZWFkZXIgZW5j
cnlwdGlvbiAqLwotICAgICAgc3RhdCA9IHNydHBfY3J5cHRvX2tlcm5lbF9hbGxvY19jaXBoZXIo
ZW5jX3h0bl9oZHJfY2lwaGVyX3R5cGUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAmc2Vzc2lvbl9rZXlzLT5ydHBfeHRuX2hkcl9jaXBoZXIsCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbmNfeHRuX2hkcl9jaXBoZXJf
a2V5X2xlbiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAp
OwotICAgICAgaWYgKHN0YXQpIHsKLSAgICAgICAgc3J0cF9zdHJlYW1fZnJlZShzdHIpOwotICAg
ICAgICByZXR1cm4gc3RhdDsKLSAgICAgIH0KKyAgICBpZiAoc3RyLT5zZXNzaW9uX2tleXMgPT0g
TlVMTCkgeworICAgICAgICBzcnRwX3N0cmVhbV9kZWFsbG9jKHN0ciwgTlVMTCk7CisgICAgICAg
IHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYWxsb2NfZmFpbDsKICAgICB9Ci0gIH0gZWxzZSB7CisK
ICAgICBmb3IgKGkgPSAwOyBpIDwgc3RyLT5udW1fbWFzdGVyX2tleXM7IGkrKykgewotICAgICAg
c2Vzc2lvbl9rZXlzID0gJnN0ci0+c2Vzc2lvbl9rZXlzW2ldOwotICAgICAgc2Vzc2lvbl9rZXlz
LT5ydHBfeHRuX2hkcl9jaXBoZXIgPSBOVUxMOwotICAgIH0KKyAgICAgICAgc2Vzc2lvbl9rZXlz
ID0gJnN0ci0+c2Vzc2lvbl9rZXlzW2ldOworCisgICAgICAgIC8qIGFsbG9jYXRlIGNpcGhlciAq
LworICAgICAgICBzdGF0ID0gc3J0cF9jcnlwdG9fa2VybmVsX2FsbG9jX2NpcGhlcigKKyAgICAg
ICAgICAgIHAtPnJ0cC5jaXBoZXJfdHlwZSwgJnNlc3Npb25fa2V5cy0+cnRwX2NpcGhlciwKKyAg
ICAgICAgICAgIHAtPnJ0cC5jaXBoZXJfa2V5X2xlbiwgcC0+cnRwLmF1dGhfdGFnX2xlbik7Cisg
ICAgICAgIGlmIChzdGF0KSB7CisgICAgICAgICAgICBzcnRwX3N0cmVhbV9kZWFsbG9jKHN0ciwg
TlVMTCk7CisgICAgICAgICAgICByZXR1cm4gc3RhdDsKKyAgICAgICAgfQogCi0gICAgc3RyLT5l
bmNfeHRuX2hkciA9IE5VTEw7Ci0gICAgc3RyLT5lbmNfeHRuX2hkcl9jb3VudCA9IDA7Ci0gIH0K
KyAgICAgICAgLyogYWxsb2NhdGUgYXV0aCBmdW5jdGlvbiAqLworICAgICAgICBzdGF0ID0gc3J0
cF9jcnlwdG9fa2VybmVsX2FsbG9jX2F1dGgoCisgICAgICAgICAgICBwLT5ydHAuYXV0aF90eXBl
LCAmc2Vzc2lvbl9rZXlzLT5ydHBfYXV0aCwgcC0+cnRwLmF1dGhfa2V5X2xlbiwKKyAgICAgICAg
ICAgIHAtPnJ0cC5hdXRoX3RhZ19sZW4pOworICAgICAgICBpZiAoc3RhdCkgeworICAgICAgICAg
ICAgc3J0cF9zdHJlYW1fZGVhbGxvYyhzdHIsIE5VTEwpOworICAgICAgICAgICAgcmV0dXJuIHN0
YXQ7CisgICAgICAgIH0KIAotICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwotfQorICAgICAg
ICAvKgorICAgICAgICAgKiAuLi5hbmQgbm93IHRoZSBSVENQLXNwZWNpZmljIGluaXRpYWxpemF0
aW9uIC0gZmlyc3QsIGFsbG9jYXRlCisgICAgICAgICAqIHRoZSBjaXBoZXIKKyAgICAgICAgICov
CisgICAgICAgIHN0YXQgPSBzcnRwX2NyeXB0b19rZXJuZWxfYWxsb2NfY2lwaGVyKAorICAgICAg
ICAgICAgcC0+cnRjcC5jaXBoZXJfdHlwZSwgJnNlc3Npb25fa2V5cy0+cnRjcF9jaXBoZXIsCisg
ICAgICAgICAgICBwLT5ydGNwLmNpcGhlcl9rZXlfbGVuLCBwLT5ydGNwLmF1dGhfdGFnX2xlbik7
CisgICAgICAgIGlmIChzdGF0KSB7CisgICAgICAgICAgICBzcnRwX3N0cmVhbV9kZWFsbG9jKHN0
ciwgTlVMTCk7CisgICAgICAgICAgICByZXR1cm4gc3RhdDsKKyAgICAgICAgfQogCi1zcnRwX2Vy
cl9zdGF0dXNfdAotc3J0cF9zdHJlYW1fZGVhbGxvYyhzcnRwX3N0cmVhbV9jdHhfdCAqc3RyZWFt
LCBzcnRwX3N0cmVhbV9jdHhfdCAqc3RyZWFtX3RlbXBsYXRlKSB7Ci0gIHNydHBfZXJyX3N0YXR1
c190IHN0YXR1czsKLSAgdW5zaWduZWQgaW50IGkgPSAwOwotICBzcnRwX3Nlc3Npb25fa2V5c190
ICpzZXNzaW9uX2tleXMgPSBOVUxMOwotICBzcnRwX3Nlc3Npb25fa2V5c190ICp0ZW1wbGF0ZV9z
ZXNzaW9uX2tleXMgPSBOVUxMOwotCi0gIC8qCi0gICAqIHdlIHVzZSBhIGNvbnNlcnZhdGl2ZSBk
ZWFsbG9jYXRpb24gc3RyYXRlZ3kgLSBpZiBhbnkgZGVhbGxvY2F0aW9uCi0gICAqIGZhaWxzLCB0
aGVuIHdlIHJlcG9ydCB0aGF0IGZhY3Qgd2l0aG91dCB0cnlpbmcgdG8gZGVhbGxvY2F0ZQotICAg
KiBhbnl0aGluZyBlbHNlCi0gICAqLwotICBmb3IgKCBpID0gMDsgaSA8IHN0cmVhbS0+bnVtX21h
c3Rlcl9rZXlzOyBpKyspIHsKLSAgICBzZXNzaW9uX2tleXMgPSAmc3RyZWFtLT5zZXNzaW9uX2tl
eXNbaV07Ci0KLSAgICBpZiAoc3RyZWFtX3RlbXBsYXRlKSB7Ci0gICAgICB0ZW1wbGF0ZV9zZXNz
aW9uX2tleXMgPSAmc3RyZWFtX3RlbXBsYXRlLT5zZXNzaW9uX2tleXNbaV07Ci0gICAgfSBlbHNl
IHsKLSAgICAgIHRlbXBsYXRlX3Nlc3Npb25fa2V5cyA9IE5VTEw7Ci0gICAgfQorICAgICAgICAv
KiBhbGxvY2F0ZSBhdXRoIGZ1bmN0aW9uICovCisgICAgICAgIHN0YXQgPSBzcnRwX2NyeXB0b19r
ZXJuZWxfYWxsb2NfYXV0aCgKKyAgICAgICAgICAgIHAtPnJ0Y3AuYXV0aF90eXBlLCAmc2Vzc2lv
bl9rZXlzLT5ydGNwX2F1dGgsIHAtPnJ0Y3AuYXV0aF9rZXlfbGVuLAorICAgICAgICAgICAgcC0+
cnRjcC5hdXRoX3RhZ19sZW4pOworICAgICAgICBpZiAoc3RhdCkgeworICAgICAgICAgICAgc3J0
cF9zdHJlYW1fZGVhbGxvYyhzdHIsIE5VTEwpOworICAgICAgICAgICAgcmV0dXJuIHN0YXQ7Cisg
ICAgICAgIH0KIAotICAgIC8qIGRlYWxsb2NhdGUgY2lwaGVyLCBpZiBpdCBpcyBub3QgdGhlIHNh
bWUgYXMgdGhhdCBpbiB0ZW1wbGF0ZSAqLwotICAgIGlmICh0ZW1wbGF0ZV9zZXNzaW9uX2tleXMK
LSAgICAgICAgJiYgc2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVyID09IHRlbXBsYXRlX3Nlc3Npb25f
a2V5cy0+cnRwX2NpcGhlcikgewotICAgICAgIC8qIGRvIG5vdGhpbmcgKi8KLSAgICB9IGVsc2Ug
ewotICAgICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX2RlYWxsb2Moc2Vzc2lvbl9rZXlzLT5ydHBf
Y2lwaGVyKTsKLSAgICAgICBpZiAoc3RhdHVzKQotICAgICAgICAgcmV0dXJuIHN0YXR1czsKLSAg
ICB9CisgICAgICAgIHNlc3Npb25fa2V5cy0+bWtpX2lkID0gTlVMTDsKIAotICAgIC8qIGRlYWxs
b2NhdGUgYXV0aCBmdW5jdGlvbiwgaWYgaXQgaXMgbm90IHRoZSBzYW1lIGFzIHRoYXQgaW4gdGVt
cGxhdGUgKi8KLSAgICBpZiAodGVtcGxhdGVfc2Vzc2lvbl9rZXlzCi0gICAgICAgICYmIHNlc3Np
b25fa2V5cy0+cnRwX2F1dGggPT0gdGVtcGxhdGVfc2Vzc2lvbl9rZXlzLT5ydHBfYXV0aCkgewot
ICAgICAgIC8qIGRvIG5vdGhpbmcgKi8KLSAgICB9IGVsc2UgewotICAgICAgc3RhdHVzID0gc3J0
cF9hdXRoX2RlYWxsb2Moc2Vzc2lvbl9rZXlzLT5ydHBfYXV0aCk7Ci0gICAgICBpZiAoc3RhdHVz
KQotICAgICAgICByZXR1cm4gc3RhdHVzOworICAgICAgICAvKiBhbGxvY2F0ZSBrZXkgbGltaXQg
c3RydWN0dXJlICovCisgICAgICAgIHNlc3Npb25fa2V5cy0+bGltaXQgPSAoc3J0cF9rZXlfbGlt
aXRfY3R4X3QgKilzcnRwX2NyeXB0b19hbGxvYygKKyAgICAgICAgICAgIHNpemVvZihzcnRwX2tl
eV9saW1pdF9jdHhfdCkpOworICAgICAgICBpZiAoc2Vzc2lvbl9rZXlzLT5saW1pdCA9PSBOVUxM
KSB7CisgICAgICAgICAgICBzcnRwX3N0cmVhbV9kZWFsbG9jKHN0ciwgTlVMTCk7CisgICAgICAg
ICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2FsbG9jX2ZhaWw7CisgICAgICAgIH0KICAgICB9
CiAKLSAgICBpZiAodGVtcGxhdGVfc2Vzc2lvbl9rZXlzCi0gICAgICAgICYmIHNlc3Npb25fa2V5
cy0+cnRwX3h0bl9oZHJfY2lwaGVyID09IHRlbXBsYXRlX3Nlc3Npb25fa2V5cy0+cnRwX3h0bl9o
ZHJfY2lwaGVyKSB7Ci0gICAgICAgLyogZG8gbm90aGluZyAqLwotICAgIH0gZWxzZSBpZiAoc2Vz
c2lvbl9rZXlzLT5ydHBfeHRuX2hkcl9jaXBoZXIpIHsKLSAgICAgIHN0YXR1cyA9IHNydHBfY2lw
aGVyX2RlYWxsb2Moc2Vzc2lvbl9rZXlzLT5ydHBfeHRuX2hkcl9jaXBoZXIpOwotICAgICAgaWYg
KHN0YXR1cykKLSAgICAgICAgcmV0dXJuIHN0YXR1czsKKyAgICAvKiBhbGxvY2F0ZSBla3QgZGF0
YSBhc3NvY2lhdGVkIHdpdGggc3RyZWFtICovCisgICAgc3RhdCA9IHNydHBfZWt0X2FsbG9jKCZz
dHItPmVrdCwgcC0+ZWt0KTsKKyAgICBpZiAoc3RhdCkgeworICAgICAgICBzcnRwX3N0cmVhbV9k
ZWFsbG9jKHN0ciwgTlVMTCk7CisgICAgICAgIHJldHVybiBzdGF0OwogICAgIH0KIAotICAgIC8q
Ci0gICAgICogZGVhbGxvY2F0ZSBydGNwIGNpcGhlciwgaWYgaXQgaXMgbm90IHRoZSBzYW1lIGFz
IHRoYXQgaW4KLSAgICAgKiB0ZW1wbGF0ZQotICAgICAqLwotICAgIGlmICh0ZW1wbGF0ZV9zZXNz
aW9uX2tleXMKLSAgICAgICAgJiYgc2Vzc2lvbl9rZXlzLT5ydGNwX2NpcGhlciA9PSB0ZW1wbGF0
ZV9zZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyKSB7Ci0gICAgICAvKiBkbyBub3RoaW5nICovCi0g
ICAgfSBlbHNlIHsKLSAgICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX2RlYWxsb2Moc2Vzc2lvbl9r
ZXlzLT5ydGNwX2NpcGhlcik7Ci0gICAgICBpZiAoc3RhdHVzKQotICAgICAgICByZXR1cm4gc3Rh
dHVzOwotICAgIH0KKyAgICBpZiAocC0+ZW5jX3h0bl9oZHIgJiYgcC0+ZW5jX3h0bl9oZHJfY291
bnQgPiAwKSB7CisgICAgICAgIHNydHBfY2lwaGVyX3R5cGVfaWRfdCBlbmNfeHRuX2hkcl9jaXBo
ZXJfdHlwZTsKKyAgICAgICAgaW50IGVuY194dG5faGRyX2NpcGhlcl9rZXlfbGVuOwogCi0gICAg
LyoKLSAgICAgKiBkZWFsbG9jYXRlIHJ0Y3AgYXV0aCBmdW5jdGlvbiwgaWYgaXQgaXMgbm90IHRo
ZSBzYW1lIGFzIHRoYXQgaW4KLSAgICAgKiB0ZW1wbGF0ZQotICAgICAqLwotICAgIGlmICh0ZW1w
bGF0ZV9zZXNzaW9uX2tleXMKLSAgICAgICAgJiYgc2Vzc2lvbl9rZXlzLT5ydGNwX2F1dGggPT0g
dGVtcGxhdGVfc2Vzc2lvbl9rZXlzLT5ydGNwX2F1dGgpIHsKLSAgICAgIC8qIGRvIG5vdGhpbmcg
Ki8KLSAgICB9IGVsc2UgewotICAgICAgc3RhdHVzID0gc3J0cF9hdXRoX2RlYWxsb2Moc2Vzc2lv
bl9rZXlzLT5ydGNwX2F1dGgpOwotICAgICAgaWYgKHN0YXR1cykKLSAgICAgICAgcmV0dXJuIHN0
YXR1czsKLSAgICB9CisgICAgICAgIHN0ci0+ZW5jX3h0bl9oZHIgPSAoaW50ICopc3J0cF9jcnlw
dG9fYWxsb2MocC0+ZW5jX3h0bl9oZHJfY291bnQgKgorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVvZihwLT5lbmNfeHRuX2hkclswXSkpOwor
ICAgICAgICBpZiAoIXN0ci0+ZW5jX3h0bl9oZHIpIHsKKyAgICAgICAgICAgIHNydHBfc3RyZWFt
X2RlYWxsb2Moc3RyLCBOVUxMKTsKKyAgICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNf
YWxsb2NfZmFpbDsKKyAgICAgICAgfQorICAgICAgICBtZW1jcHkoc3RyLT5lbmNfeHRuX2hkciwg
cC0+ZW5jX3h0bl9oZHIsCisgICAgICAgICAgICAgICBwLT5lbmNfeHRuX2hkcl9jb3VudCAqIHNp
emVvZihwLT5lbmNfeHRuX2hkclswXSkpOworICAgICAgICBzdHItPmVuY194dG5faGRyX2NvdW50
ID0gcC0+ZW5jX3h0bl9oZHJfY291bnQ7CiAKLSAgICAvKgotICAgICAqIHplcm9pemUgdGhlIHNh
bHQgdmFsdWUKLSAgICAgKi8KLSAgICBvY3RldF9zdHJpbmdfc2V0X3RvX3plcm8oc2Vzc2lvbl9r
ZXlzLT5zYWx0LCBTUlRQX0FFQURfU0FMVF9MRU4pOwotICAgIG9jdGV0X3N0cmluZ19zZXRfdG9f
emVybyhzZXNzaW9uX2tleXMtPmNfc2FsdCwgU1JUUF9BRUFEX1NBTFRfTEVOKTsKKyAgICAgICAg
LyoKKyAgICAgICAgICogRm9yIEdDTSBjaXBoZXJzLCB0aGUgY29ycmVzcG9uZGluZyBJQ00gY2lw
aGVyIGlzIHVzZWQgZm9yIGhlYWRlcgorICAgICAgICAgKiBleHRlbnNpb25zIGVuY3J5cHRpb24u
CisgICAgICAgICAqLworICAgICAgICBzd2l0Y2ggKHAtPnJ0cC5jaXBoZXJfdHlwZSkgeworICAg
ICAgICBjYXNlIFNSVFBfQUVTX0dDTV8xMjg6CisgICAgICAgICAgICBlbmNfeHRuX2hkcl9jaXBo
ZXJfdHlwZSA9IFNSVFBfQUVTX0lDTV8xMjg7CisgICAgICAgICAgICBlbmNfeHRuX2hkcl9jaXBo
ZXJfa2V5X2xlbiA9IFNSVFBfQUVTX0lDTV8xMjhfS0VZX0xFTl9XU0FMVDsKKyAgICAgICAgICAg
IGJyZWFrOworICAgICAgICBjYXNlIFNSVFBfQUVTX0dDTV8yNTY6CisgICAgICAgICAgICBlbmNf
eHRuX2hkcl9jaXBoZXJfdHlwZSA9IFNSVFBfQUVTX0lDTV8yNTY7CisgICAgICAgICAgICBlbmNf
eHRuX2hkcl9jaXBoZXJfa2V5X2xlbiA9IFNSVFBfQUVTX0lDTV8yNTZfS0VZX0xFTl9XU0FMVDsK
KyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgZW5jX3h0
bl9oZHJfY2lwaGVyX3R5cGUgPSBwLT5ydHAuY2lwaGVyX3R5cGU7CisgICAgICAgICAgICBlbmNf
eHRuX2hkcl9jaXBoZXJfa2V5X2xlbiA9IHAtPnJ0cC5jaXBoZXJfa2V5X2xlbjsKKyAgICAgICAg
ICAgIGJyZWFrOworICAgICAgICB9CiAKLSAgICBpZiAoc2Vzc2lvbl9rZXlzLT5ta2lfaWQpIHsK
LSAgICAgIG9jdGV0X3N0cmluZ19zZXRfdG9femVybyhzZXNzaW9uX2tleXMtPm1raV9pZCwgc2Vz
c2lvbl9rZXlzLT5ta2lfc2l6ZSk7Ci0gICAgICBzcnRwX2NyeXB0b19mcmVlKHNlc3Npb25fa2V5
cy0+bWtpX2lkKTsKLSAgICAgIHNlc3Npb25fa2V5cy0+bWtpX2lkID0gTlVMTDsKLSAgICB9Cisg
ICAgICAgIGZvciAoaSA9IDA7IGkgPCBzdHItPm51bV9tYXN0ZXJfa2V5czsgaSsrKSB7CisgICAg
ICAgICAgICBzZXNzaW9uX2tleXMgPSAmc3RyLT5zZXNzaW9uX2tleXNbaV07CiAKLSAgICAvKiBk
ZWFsbG9jYXRlIGtleSB1c2FnZSBsaW1pdCwgaWYgaXQgaXMgbm90IHRoZSBzYW1lIGFzIHRoYXQg
aW4gdGVtcGxhdGUgKi8KLSAgICBpZiAodGVtcGxhdGVfc2Vzc2lvbl9rZXlzCi0gICAgICAgICYm
IHNlc3Npb25fa2V5cy0+bGltaXQgPT0gdGVtcGxhdGVfc2Vzc2lvbl9rZXlzLT5saW1pdCkgewot
ICAgICAgICAvKiBkbyBub3RoaW5nICovCisgICAgICAgICAgICAvKiBhbGxvY2F0ZSBjaXBoZXIg
Zm9yIGV4dGVuc2lvbnMgaGVhZGVyIGVuY3J5cHRpb24gKi8KKyAgICAgICAgICAgIHN0YXQgPSBz
cnRwX2NyeXB0b19rZXJuZWxfYWxsb2NfY2lwaGVyKAorICAgICAgICAgICAgICAgIGVuY194dG5f
aGRyX2NpcGhlcl90eXBlLCAmc2Vzc2lvbl9rZXlzLT5ydHBfeHRuX2hkcl9jaXBoZXIsCisgICAg
ICAgICAgICAgICAgZW5jX3h0bl9oZHJfY2lwaGVyX2tleV9sZW4sIDApOworICAgICAgICAgICAg
aWYgKHN0YXQpIHsKKyAgICAgICAgICAgICAgICBzcnRwX3N0cmVhbV9kZWFsbG9jKHN0ciwgTlVM
TCk7CisgICAgICAgICAgICAgICAgcmV0dXJuIHN0YXQ7CisgICAgICAgICAgICB9CisgICAgICAg
IH0KICAgICB9IGVsc2UgewotICAgICAgc3J0cF9jcnlwdG9fZnJlZShzZXNzaW9uX2tleXMtPmxp
bWl0KTsKLSAgICB9Ci0KLSAgfQotCi0gIGlmIChzdHJlYW1fdGVtcGxhdGUKLSAgICAgICYmIHN0
cmVhbS0+c2Vzc2lvbl9rZXlzID09IHN0cmVhbV90ZW1wbGF0ZS0+c2Vzc2lvbl9rZXlzKSB7Ci0g
ICAgICAvKiBkbyBub3RoaW5nICovCi0gIH0gZWxzZSB7Ci0gICAgc3J0cF9jcnlwdG9fZnJlZShz
dHJlYW0tPnNlc3Npb25fa2V5cyk7Ci0gIH0KLQotICBzdGF0dXMgPSBzcnRwX3JkYnhfZGVhbGxv
Yygmc3RyZWFtLT5ydHBfcmRieCk7Ci0gIGlmIChzdGF0dXMpCi0gICAgcmV0dXJuIHN0YXR1czsK
LQotICAvKiBEQU0gLSBuZWVkIHRvIGRlYWxsb2NhdGUgRUtUIGhlcmUgKi8KLQotICBpZiAoc3Ry
ZWFtX3RlbXBsYXRlCi0gICAgICAmJiBzdHJlYW0tPmVuY194dG5faGRyID09IHN0cmVhbV90ZW1w
bGF0ZS0+ZW5jX3h0bl9oZHIpIHsKLSAgICAvKiBkbyBub3RoaW5nICovCi0gIH0gZWxzZSBpZiAo
c3RyZWFtLT5lbmNfeHRuX2hkcikgewotICAgIHNydHBfY3J5cHRvX2ZyZWUoc3RyZWFtLT5lbmNf
eHRuX2hkcik7Ci0gIH0KKyAgICAgICAgZm9yIChpID0gMDsgaSA8IHN0ci0+bnVtX21hc3Rlcl9r
ZXlzOyBpKyspIHsKKyAgICAgICAgICAgIHNlc3Npb25fa2V5cyA9ICZzdHItPnNlc3Npb25fa2V5
c1tpXTsKKyAgICAgICAgICAgIHNlc3Npb25fa2V5cy0+cnRwX3h0bl9oZHJfY2lwaGVyID0gTlVM
TDsKKyAgICAgICAgfQogCi0gIC8qIGRlYWxsb2NhdGUgc3J0cCBzdHJlYW0gY29udGV4dCAqLwot
ICBzcnRwX2NyeXB0b19mcmVlKHN0cmVhbSk7CisgICAgICAgIHN0ci0+ZW5jX3h0bl9oZHIgPSBO
VUxMOworICAgICAgICBzdHItPmVuY194dG5faGRyX2NvdW50ID0gMDsKKyAgICB9CiAKLSAgcmV0
dXJuIHNydHBfZXJyX3N0YXR1c19vazsKKyAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwog
fQogCi0KIC8qCiAgKiBzcnRwX3N0cmVhbV9jbG9uZShzdHJlYW1fdGVtcGxhdGUsIG5ldykgYWxs
b2NhdGVzIGEgbmV3IHN0cmVhbSBhbmQKICAqIGluaXRpYWxpemVzIGl0IHVzaW5nIHRoZSBjaXBo
ZXIgYW5kIGF1dGggb2YgdGhlIHN0cmVhbV90ZW1wbGF0ZQotICogCisgKgogICogdGhlIG9ubHkg
dW5pcXVlIGRhdGEgaW4gYSBjbG9uZWQgc3RyZWFtIGlzIHRoZSByZXBsYXkgZGF0YWJhc2UgYW5k
CiAgKiB0aGUgU1NSQwogICovCiAKLXNydHBfZXJyX3N0YXR1c190Ci1zcnRwX3N0cmVhbV9jbG9u
ZShjb25zdCBzcnRwX3N0cmVhbV9jdHhfdCAqc3RyZWFtX3RlbXBsYXRlLCAKLQkJICB1aW50MzJf
dCBzc3JjLCAKLQkJICBzcnRwX3N0cmVhbV9jdHhfdCAqKnN0cl9wdHIpIHsKLSAgc3J0cF9lcnJf
c3RhdHVzX3Qgc3RhdHVzOwotICBzcnRwX3N0cmVhbV9jdHhfdCAqc3RyOwotICB1bnNpZ25lZCBp
bnQgaSA9IDA7Ci0gIHNydHBfc2Vzc2lvbl9rZXlzX3QgKnNlc3Npb25fa2V5cyA9IE5VTEw7Ci0g
IGNvbnN0IHNydHBfc2Vzc2lvbl9rZXlzX3QgKnRlbXBsYXRlX3Nlc3Npb25fa2V5cyA9IE5VTEw7
Ci0KLSAgZGVidWdfcHJpbnQobW9kX3NydHAsICJjbG9uaW5nIHN0cmVhbSAoU1NSQzogMHglMDh4
KSIsIG50b2hsKHNzcmMpKTsKLQotICAvKiBhbGxvY2F0ZSBzcnRwIHN0cmVhbSBhbmQgc2V0IHN0
cl9wdHIgKi8KLSAgc3RyID0gKHNydHBfc3RyZWFtX2N0eF90ICopIHNydHBfY3J5cHRvX2FsbG9j
KHNpemVvZihzcnRwX3N0cmVhbV9jdHhfdCkpOwotICBpZiAoc3RyID09IE5VTEwpCi0gICAgcmV0
dXJuIHNydHBfZXJyX3N0YXR1c19hbGxvY19mYWlsOwotICAqc3RyX3B0ciA9IHN0cjsgIAotCi0g
IHN0ci0+bnVtX21hc3Rlcl9rZXlzID0gc3RyZWFtX3RlbXBsYXRlLT5udW1fbWFzdGVyX2tleXM7
Ci0gIHN0ci0+c2Vzc2lvbl9rZXlzID0gKHNydHBfc2Vzc2lvbl9rZXlzX3QgKilzcnRwX2NyeXB0
b19hbGxvYygKLSAgICAgIHNpemVvZihzcnRwX3Nlc3Npb25fa2V5c190KSAqIHN0ci0+bnVtX21h
c3Rlcl9rZXlzKTsKLQotICBpZiAoc3RyLT5zZXNzaW9uX2tleXMgPT0gTlVMTCkgewotICAgIHNy
dHBfY3J5cHRvX2ZyZWUoKnN0cl9wdHIpOwotICAgICpzdHJfcHRyID0gTlVMTDsKLSAgICByZXR1
cm4gc3J0cF9lcnJfc3RhdHVzX2FsbG9jX2ZhaWw7Ci0gIH0KLQotICBmb3IgKGkgPSAwOyBpIDwg
c3RyZWFtX3RlbXBsYXRlLT5udW1fbWFzdGVyX2tleXM7IGkrKyl7Ci0gICAgc2Vzc2lvbl9rZXlz
ID0gJnN0ci0+c2Vzc2lvbl9rZXlzW2ldOwotICAgIHRlbXBsYXRlX3Nlc3Npb25fa2V5cyA9ICZz
dHJlYW1fdGVtcGxhdGUtPnNlc3Npb25fa2V5c1tpXTsKLQotICAgIC8qIHNldCBjaXBoZXIgYW5k
IGF1dGggcG9pbnRlcnMgdG8gdGhvc2Ugb2YgdGhlIHRlbXBsYXRlICovCi0gICAgc2Vzc2lvbl9r
ZXlzLT5ydHBfY2lwaGVyICA9IHRlbXBsYXRlX3Nlc3Npb25fa2V5cy0+cnRwX2NpcGhlcjsKLSAg
ICBzZXNzaW9uX2tleXMtPnJ0cF9hdXRoICAgID0gdGVtcGxhdGVfc2Vzc2lvbl9rZXlzLT5ydHBf
YXV0aDsKLSAgICBzZXNzaW9uX2tleXMtPnJ0cF94dG5faGRyX2NpcGhlciA9IHRlbXBsYXRlX3Nl
c3Npb25fa2V5cy0+cnRwX3h0bl9oZHJfY2lwaGVyOwotICAgIHNlc3Npb25fa2V5cy0+cnRjcF9j
aXBoZXIgPSB0ZW1wbGF0ZV9zZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyOwotICAgIHNlc3Npb25f
a2V5cy0+cnRjcF9hdXRoICAgPSB0ZW1wbGF0ZV9zZXNzaW9uX2tleXMtPnJ0Y3BfYXV0aDsKLSAg
ICBzZXNzaW9uX2tleXMtPm1raV9zaXplID0gdGVtcGxhdGVfc2Vzc2lvbl9rZXlzLT5ta2lfc2l6
ZTsKLQotICAgIGlmICh0ZW1wbGF0ZV9zZXNzaW9uX2tleXMtPm1raV9zaXplID09IDApIHsKLSAg
ICAgIHNlc3Npb25fa2V5cy0+bWtpX2lkID0gTlVMTDsKLSAgICB9IGVsc2UgewotICAgICAgc2Vz
c2lvbl9rZXlzLT5ta2lfaWQgPSBzcnRwX2NyeXB0b19hbGxvYyh0ZW1wbGF0ZV9zZXNzaW9uX2tl
eXMtPm1raV9zaXplKTsKK3NydHBfZXJyX3N0YXR1c190IHNydHBfc3RyZWFtX2Nsb25lKGNvbnN0
IHNydHBfc3RyZWFtX2N0eF90ICpzdHJlYW1fdGVtcGxhdGUsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICB1aW50MzJfdCBzc3JjLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgc3J0cF9zdHJlYW1fY3R4X3QgKipzdHJfcHRyKQoreworICAgIHNydHBfZXJy
X3N0YXR1c190IHN0YXR1czsKKyAgICBzcnRwX3N0cmVhbV9jdHhfdCAqc3RyOworICAgIHVuc2ln
bmVkIGludCBpID0gMDsKKyAgICBzcnRwX3Nlc3Npb25fa2V5c190ICpzZXNzaW9uX2tleXMgPSBO
VUxMOworICAgIGNvbnN0IHNydHBfc2Vzc2lvbl9rZXlzX3QgKnRlbXBsYXRlX3Nlc3Npb25fa2V5
cyA9IE5VTEw7CiAKLSAgICAgIGlmIChzZXNzaW9uX2tleXMtPm1raV9pZCA9PSBOVUxMKSB7Ci0g
ICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfaW5pdF9mYWlsOwotICAgICAgfQotICAgICAg
bWVtc2V0KHNlc3Npb25fa2V5cy0+bWtpX2lkLCAweDAsIHNlc3Npb25fa2V5cy0+bWtpX3NpemUp
OwotICAgICAgbWVtY3B5KHNlc3Npb25fa2V5cy0+bWtpX2lkLCB0ZW1wbGF0ZV9zZXNzaW9uX2tl
eXMtPm1raV9pZCwgc2Vzc2lvbl9rZXlzLT5ta2lfc2l6ZSk7Ci0gICAgfQotICAgIC8qIENvcHkg
dGhlIHNhbHQgdmFsdWVzICovCi0gICAgbWVtY3B5KHNlc3Npb25fa2V5cy0+c2FsdCwgdGVtcGxh
dGVfc2Vzc2lvbl9rZXlzLT5zYWx0LCBTUlRQX0FFQURfU0FMVF9MRU4pOwotICAgIG1lbWNweShz
ZXNzaW9uX2tleXMtPmNfc2FsdCwgdGVtcGxhdGVfc2Vzc2lvbl9rZXlzLT5jX3NhbHQsIFNSVFBf
QUVBRF9TQUxUX0xFTik7Ci0KLSAgICAvKiBzZXQga2V5IGxpbWl0IHRvIHBvaW50IHRvIHRoYXQg
b2YgdGhlIHRlbXBsYXRlICovCi0gICAgc3RhdHVzID0gc3J0cF9rZXlfbGltaXRfY2xvbmUodGVt
cGxhdGVfc2Vzc2lvbl9rZXlzLT5saW1pdCwgJnNlc3Npb25fa2V5cy0+bGltaXQpOwotICAgIGlm
IChzdGF0dXMpIHsgCi0gICAgICBzcnRwX2NyeXB0b19mcmVlKCpzdHJfcHRyKTsKLSAgICAgICpz
dHJfcHRyID0gTlVMTDsKLSAgICAgIHJldHVybiBzdGF0dXM7Ci0gICAgfQotICB9Ci0KLQotICAv
KiBpbml0aWFsaXplIHJlcGxheSBkYXRhYmFzZXMgKi8KLSAgc3RhdHVzID0gc3J0cF9yZGJ4X2lu
aXQoJnN0ci0+cnRwX3JkYngsCi0JCSAgICAgc3J0cF9yZGJ4X2dldF93aW5kb3dfc2l6ZSgmc3Ry
ZWFtX3RlbXBsYXRlLT5ydHBfcmRieCkpOwotICBpZiAoc3RhdHVzKSB7Ci0gICAgc3J0cF9jcnlw
dG9fZnJlZSgqc3RyX3B0cik7Ci0gICAgKnN0cl9wdHIgPSBOVUxMOwotICAgIHJldHVybiBzdGF0
dXM7Ci0gIH0KLSAgc3J0cF9yZGJfaW5pdCgmc3RyLT5ydGNwX3JkYik7Ci0gIHN0ci0+YWxsb3df
cmVwZWF0X3R4ID0gc3RyZWFtX3RlbXBsYXRlLT5hbGxvd19yZXBlYXRfdHg7CisgICAgZGVidWdf
cHJpbnQobW9kX3NydHAsICJjbG9uaW5nIHN0cmVhbSAoU1NSQzogMHglMDh4KSIsIG50b2hsKHNz
cmMpKTsKIAotICAvKiBzZXQgc3NyYyB0byB0aGF0IHByb3ZpZGVkICovCi0gIHN0ci0+c3NyYyA9
IHNzcmM7CisgICAgLyogYWxsb2NhdGUgc3J0cCBzdHJlYW0gYW5kIHNldCBzdHJfcHRyICovCisg
ICAgc3RyID0gKHNydHBfc3RyZWFtX2N0eF90ICopc3J0cF9jcnlwdG9fYWxsb2Moc2l6ZW9mKHNy
dHBfc3RyZWFtX2N0eF90KSk7CisgICAgaWYgKHN0ciA9PSBOVUxMKQorICAgICAgICByZXR1cm4g
c3J0cF9lcnJfc3RhdHVzX2FsbG9jX2ZhaWw7CisgICAgKnN0cl9wdHIgPSBzdHI7CiAKLSAgLyog
cmVzZXQgcGVuZGluZyBST0MgKi8KLSAgc3RyLT5wZW5kaW5nX3JvYyA9IDA7CisgICAgc3RyLT5u
dW1fbWFzdGVyX2tleXMgPSBzdHJlYW1fdGVtcGxhdGUtPm51bV9tYXN0ZXJfa2V5czsKKyAgICBz
dHItPnNlc3Npb25fa2V5cyA9IChzcnRwX3Nlc3Npb25fa2V5c190ICopc3J0cF9jcnlwdG9fYWxs
b2MoCisgICAgICAgIHNpemVvZihzcnRwX3Nlc3Npb25fa2V5c190KSAqIHN0ci0+bnVtX21hc3Rl
cl9rZXlzKTsKIAotICAvKiBzZXQgZGlyZWN0aW9uIGFuZCBzZWN1cml0eSBzZXJ2aWNlcyAqLwot
ICBzdHItPmRpcmVjdGlvbiAgICAgPSBzdHJlYW1fdGVtcGxhdGUtPmRpcmVjdGlvbjsKLSAgc3Ry
LT5ydHBfc2VydmljZXMgID0gc3RyZWFtX3RlbXBsYXRlLT5ydHBfc2VydmljZXM7Ci0gIHN0ci0+
cnRjcF9zZXJ2aWNlcyA9IHN0cmVhbV90ZW1wbGF0ZS0+cnRjcF9zZXJ2aWNlczsKKyAgICBpZiAo
c3RyLT5zZXNzaW9uX2tleXMgPT0gTlVMTCkgeworICAgICAgICBzcnRwX3N0cmVhbV9kZWFsbG9j
KCpzdHJfcHRyLCBzdHJlYW1fdGVtcGxhdGUpOworICAgICAgICAqc3RyX3B0ciA9IE5VTEw7Cisg
ICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYWxsb2NfZmFpbDsKKyAgICB9CiAKLSAgLyog
c2V0IHBvaW50ZXIgdG8gRUtUIGRhdGEgYXNzb2NpYXRlZCB3aXRoIHN0cmVhbSAqLwotICBzdHIt
PmVrdCA9IHN0cmVhbV90ZW1wbGF0ZS0+ZWt0OworICAgIGZvciAoaSA9IDA7IGkgPCBzdHJlYW1f
dGVtcGxhdGUtPm51bV9tYXN0ZXJfa2V5czsgaSsrKSB7CisgICAgICAgIHNlc3Npb25fa2V5cyA9
ICZzdHItPnNlc3Npb25fa2V5c1tpXTsKKyAgICAgICAgdGVtcGxhdGVfc2Vzc2lvbl9rZXlzID0g
JnN0cmVhbV90ZW1wbGF0ZS0+c2Vzc2lvbl9rZXlzW2ldOworCisgICAgICAgIC8qIHNldCBjaXBo
ZXIgYW5kIGF1dGggcG9pbnRlcnMgdG8gdGhvc2Ugb2YgdGhlIHRlbXBsYXRlICovCisgICAgICAg
IHNlc3Npb25fa2V5cy0+cnRwX2NpcGhlciA9IHRlbXBsYXRlX3Nlc3Npb25fa2V5cy0+cnRwX2Np
cGhlcjsKKyAgICAgICAgc2Vzc2lvbl9rZXlzLT5ydHBfYXV0aCA9IHRlbXBsYXRlX3Nlc3Npb25f
a2V5cy0+cnRwX2F1dGg7CisgICAgICAgIHNlc3Npb25fa2V5cy0+cnRwX3h0bl9oZHJfY2lwaGVy
ID0KKyAgICAgICAgICAgIHRlbXBsYXRlX3Nlc3Npb25fa2V5cy0+cnRwX3h0bl9oZHJfY2lwaGVy
OworICAgICAgICBzZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyID0gdGVtcGxhdGVfc2Vzc2lvbl9r
ZXlzLT5ydGNwX2NpcGhlcjsKKyAgICAgICAgc2Vzc2lvbl9rZXlzLT5ydGNwX2F1dGggPSB0ZW1w
bGF0ZV9zZXNzaW9uX2tleXMtPnJ0Y3BfYXV0aDsKKyAgICAgICAgc2Vzc2lvbl9rZXlzLT5ta2lf
c2l6ZSA9IHRlbXBsYXRlX3Nlc3Npb25fa2V5cy0+bWtpX3NpemU7CisKKyAgICAgICAgaWYgKHRl
bXBsYXRlX3Nlc3Npb25fa2V5cy0+bWtpX3NpemUgPT0gMCkgeworICAgICAgICAgICAgc2Vzc2lv
bl9rZXlzLT5ta2lfaWQgPSBOVUxMOworICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgc2Vz
c2lvbl9rZXlzLT5ta2lfaWQgPQorICAgICAgICAgICAgICAgIHNydHBfY3J5cHRvX2FsbG9jKHRl
bXBsYXRlX3Nlc3Npb25fa2V5cy0+bWtpX3NpemUpOwogCi0gIC8qIGNvcHkgaW5mb3JtYXRpb24g
YWJvdXQgZXh0ZW5zaW9ucyBoZWFkZXIgZW5jcnlwdGlvbiAqLwotICBzdHItPmVuY194dG5faGRy
ID0gc3RyZWFtX3RlbXBsYXRlLT5lbmNfeHRuX2hkcjsKLSAgc3RyLT5lbmNfeHRuX2hkcl9jb3Vu
dCA9IHN0cmVhbV90ZW1wbGF0ZS0+ZW5jX3h0bl9oZHJfY291bnQ7CisgICAgICAgICAgICBpZiAo
c2Vzc2lvbl9rZXlzLT5ta2lfaWQgPT0gTlVMTCkgeworICAgICAgICAgICAgICAgIHNydHBfc3Ry
ZWFtX2RlYWxsb2MoKnN0cl9wdHIsIHN0cmVhbV90ZW1wbGF0ZSk7CisgICAgICAgICAgICAgICAg
KnN0cl9wdHIgPSBOVUxMOworICAgICAgICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNf
aW5pdF9mYWlsOworICAgICAgICAgICAgfQorICAgICAgICAgICAgbWVtY3B5KHNlc3Npb25fa2V5
cy0+bWtpX2lkLCB0ZW1wbGF0ZV9zZXNzaW9uX2tleXMtPm1raV9pZCwKKyAgICAgICAgICAgICAg
ICAgICBzZXNzaW9uX2tleXMtPm1raV9zaXplKTsKKyAgICAgICAgfQorICAgICAgICAvKiBDb3B5
IHRoZSBzYWx0IHZhbHVlcyAqLworICAgICAgICBtZW1jcHkoc2Vzc2lvbl9rZXlzLT5zYWx0LCB0
ZW1wbGF0ZV9zZXNzaW9uX2tleXMtPnNhbHQsCisgICAgICAgICAgICAgICBTUlRQX0FFQURfU0FM
VF9MRU4pOworICAgICAgICBtZW1jcHkoc2Vzc2lvbl9rZXlzLT5jX3NhbHQsIHRlbXBsYXRlX3Nl
c3Npb25fa2V5cy0+Y19zYWx0LAorICAgICAgICAgICAgICAgU1JUUF9BRUFEX1NBTFRfTEVOKTsK
KworICAgICAgICAvKiBzZXQga2V5IGxpbWl0IHRvIHBvaW50IHRvIHRoYXQgb2YgdGhlIHRlbXBs
YXRlICovCisgICAgICAgIHN0YXR1cyA9IHNydHBfa2V5X2xpbWl0X2Nsb25lKHRlbXBsYXRlX3Nl
c3Npb25fa2V5cy0+bGltaXQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICZzZXNzaW9uX2tleXMtPmxpbWl0KTsKKyAgICAgICAgaWYgKHN0YXR1cykgeworICAgICAgICAg
ICAgc3J0cF9zdHJlYW1fZGVhbGxvYygqc3RyX3B0ciwgc3RyZWFtX3RlbXBsYXRlKTsKKyAgICAg
ICAgICAgICpzdHJfcHRyID0gTlVMTDsKKyAgICAgICAgICAgIHJldHVybiBzdGF0dXM7CisgICAg
ICAgIH0KKyAgICB9CiAKLSAgLyogZGVmZW5zaXZlIGNvZGluZyAqLwotICBzdHItPm5leHQgPSBO
VUxMOwotICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwotfQorICAgIC8qIGluaXRpYWxpemUg
cmVwbGF5IGRhdGFiYXNlcyAqLworICAgIHN0YXR1cyA9IHNydHBfcmRieF9pbml0KAorICAgICAg
ICAmc3RyLT5ydHBfcmRieCwgc3J0cF9yZGJ4X2dldF93aW5kb3dfc2l6ZSgmc3RyZWFtX3RlbXBs
YXRlLT5ydHBfcmRieCkpOworICAgIGlmIChzdGF0dXMpIHsKKyAgICAgICAgc3J0cF9zdHJlYW1f
ZGVhbGxvYygqc3RyX3B0ciwgc3RyZWFtX3RlbXBsYXRlKTsKKyAgICAgICAgKnN0cl9wdHIgPSBO
VUxMOworICAgICAgICByZXR1cm4gc3RhdHVzOworICAgIH0KKyAgICBzcnRwX3JkYl9pbml0KCZz
dHItPnJ0Y3BfcmRiKTsKKyAgICBzdHItPmFsbG93X3JlcGVhdF90eCA9IHN0cmVhbV90ZW1wbGF0
ZS0+YWxsb3dfcmVwZWF0X3R4OworCisgICAgLyogc2V0IHNzcmMgdG8gdGhhdCBwcm92aWRlZCAq
LworICAgIHN0ci0+c3NyYyA9IHNzcmM7CisKKyAgICAvKiByZXNldCBwZW5kaW5nIFJPQyAqLwor
ICAgIHN0ci0+cGVuZGluZ19yb2MgPSAwOworCisgICAgLyogc2V0IGRpcmVjdGlvbiBhbmQgc2Vj
dXJpdHkgc2VydmljZXMgKi8KKyAgICBzdHItPmRpcmVjdGlvbiA9IHN0cmVhbV90ZW1wbGF0ZS0+
ZGlyZWN0aW9uOworICAgIHN0ci0+cnRwX3NlcnZpY2VzID0gc3RyZWFtX3RlbXBsYXRlLT5ydHBf
c2VydmljZXM7CisgICAgc3RyLT5ydGNwX3NlcnZpY2VzID0gc3RyZWFtX3RlbXBsYXRlLT5ydGNw
X3NlcnZpY2VzOwogCisgICAgLyogc2V0IHBvaW50ZXIgdG8gRUtUIGRhdGEgYXNzb2NpYXRlZCB3
aXRoIHN0cmVhbSAqLworICAgIHN0ci0+ZWt0ID0gc3RyZWFtX3RlbXBsYXRlLT5la3Q7CisKKyAg
ICAvKiBjb3B5IGluZm9ybWF0aW9uIGFib3V0IGV4dGVuc2lvbnMgaGVhZGVyIGVuY3J5cHRpb24g
Ki8KKyAgICBzdHItPmVuY194dG5faGRyID0gc3RyZWFtX3RlbXBsYXRlLT5lbmNfeHRuX2hkcjsK
KyAgICBzdHItPmVuY194dG5faGRyX2NvdW50ID0gc3RyZWFtX3RlbXBsYXRlLT5lbmNfeHRuX2hk
cl9jb3VudDsKKworICAgIC8qIGRlZmVuc2l2ZSBjb2RpbmcgKi8KKyAgICBzdHItPm5leHQgPSBO
VUxMOworICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7Cit9CiAKIC8qCiAgKiBrZXkgZGVy
aXZhdGlvbiBmdW5jdGlvbnMsIGludGVybmFsIHRvIGxpYlNSVFAKQEAgLTU5Myw3ICs1NTgsNyBA
QCBzcnRwX3N0cmVhbV9jbG9uZShjb25zdCBzcnRwX3N0cmVhbV9jdHhfdCAqc3RyZWFtX3RlbXBs
YXRlLAogICoKICAqIHNydHBfa2RmX2luaXQoJmtkZiwgY2lwaGVyX2lkLCBrLCBrZXlsZW4pIGlu
aXRpYWxpemVzIGtkZiB0byB1c2UgY2lwaGVyCiAgKiBkZXNjcmliZWQgYnkgY2lwaGVyX2lkLCB3
aXRoIHRoZSBtYXN0ZXIga2V5IGsgd2l0aCBsZW5ndGggaW4gb2N0ZXRzIGtleWxlbi4KLSAqIAor
ICoKICAqIHNydHBfa2RmX2dlbmVyYXRlKCZrZGYsIGwsIGtsLCBrZXlsZW4pIGRlcml2ZXMgdGhl
IGtleQogICogY29ycmVzcG9uZGluZyB0byBsYWJlbCBsIGFuZCBwdXRzIGl0IGludG8ga2w7IHRo
ZSBsZW5ndGgKICAqIG9mIHRoZSBrZXkgaW4gb2N0ZXRzIGlzIHByb3ZpZGVkIGFzIGtleWxlbi4g
IHRoaXMgZnVuY3Rpb24KQEAgLTYwMywzOSArNTY4LDQyIEBAIHNydHBfc3RyZWFtX2Nsb25lKGNv
bnN0IHNydHBfc3RyZWFtX2N0eF90ICpzdHJlYW1fdGVtcGxhdGUsCiAgKi8KIAogdHlwZWRlZiBl
bnVtIHsKLSAgbGFiZWxfcnRwX2VuY3J5cHRpb24gID0gMHgwMCwKLSAgbGFiZWxfcnRwX21zZ19h
dXRoICAgID0gMHgwMSwKLSAgbGFiZWxfcnRwX3NhbHQgICAgICAgID0gMHgwMiwKLSAgbGFiZWxf
cnRjcF9lbmNyeXB0aW9uID0gMHgwMywKLSAgbGFiZWxfcnRjcF9tc2dfYXV0aCAgID0gMHgwNCwK
LSAgbGFiZWxfcnRjcF9zYWx0ICAgICAgID0gMHgwNSwKLSAgbGFiZWxfcnRwX2hlYWRlcl9lbmNy
eXB0aW9uID0gMHgwNiwKLSAgbGFiZWxfcnRwX2hlYWRlcl9zYWx0ID0gMHgwNworICAgIGxhYmVs
X3J0cF9lbmNyeXB0aW9uID0gMHgwMCwKKyAgICBsYWJlbF9ydHBfbXNnX2F1dGggPSAweDAxLAor
ICAgIGxhYmVsX3J0cF9zYWx0ID0gMHgwMiwKKyAgICBsYWJlbF9ydGNwX2VuY3J5cHRpb24gPSAw
eDAzLAorICAgIGxhYmVsX3J0Y3BfbXNnX2F1dGggPSAweDA0LAorICAgIGxhYmVsX3J0Y3Bfc2Fs
dCA9IDB4MDUsCisgICAgbGFiZWxfcnRwX2hlYWRlcl9lbmNyeXB0aW9uID0gMHgwNiwKKyAgICBs
YWJlbF9ydHBfaGVhZGVyX3NhbHQgPSAweDA3CiB9IHNydHBfcHJmX2xhYmVsOwogCiAjZGVmaW5l
IE1BWF9TUlRQX0tFWV9MRU4gMjU2CiAKICNpZiBkZWZpbmVkKE9QRU5TU0wpICYmIGRlZmluZWQo
T1BFTlNTTF9LREYpCiAjZGVmaW5lIE1BWF9TUlRQX0FFU0tFWV9MRU4gMzIKLSNkZWZpbmUgTUFY
X1NSVFBfU0FMVF9MRU4gMTQgCisjZGVmaW5lIE1BWF9TUlRQX1NBTFRfTEVOIDE0CiAKIC8qCiAg
KiBzcnRwX2tkZl90IHJlcHJlc2VudHMgYSBrZXkgZGVyaXZhdGlvbiBmdW5jdGlvbi4gIFRoZSBT
UlRQCiAgKiBkZWZhdWx0IEtERiBpcyB0aGUgb25seSBvbmUgaW1wbGVtZW50ZWQgYXQgcHJlc2Vu
dC4KICAqLwotdHlwZWRlZiBzdHJ1Y3QgeyAKK3R5cGVkZWYgc3RydWN0IHsKICAgICB1aW50OF90
IG1hc3Rlcl9rZXlbTUFYX1NSVFBfQUVTS0VZX0xFTl07CiAgICAgdWludDhfdCBtYXN0ZXJfc2Fs
dFtNQVhfU1JUUF9TQUxUX0xFTl07CiAgICAgY29uc3QgRVZQX0NJUEhFUiAqZXZwOwogfSBzcnRw
X2tkZl90OwogCi0KLXN0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2tkZl9pbml0KHNydHBf
a2RmX3QgKmtkZiwgY29uc3QgdWludDhfdCAqa2V5LCBpbnQga2V5X2xlbiwgaW50IHNhbHRfbGVu
KSAKK3N0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2tkZl9pbml0KHNydHBfa2RmX3QgKmtk
ZiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVpbnQ4X3Qg
KmtleSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBrZXlfbGVu
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IHNhbHRfbGVuKQog
ewogICAgIG1lbXNldChrZGYsIDB4MCwgc2l6ZW9mKHNydHBfa2RmX3QpKTsKIAogICAgIC8qIFRo
ZSBOVUxMIGNpcGhlciBoYXMgemVybyBrZXkgbGVuZ3RoICovCi0gICAgaWYgKGtleV9sZW4gPT0g
MCkgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKKyAgICBpZiAoa2V5X2xlbiA9PSAwKQorICAg
ICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogCiAgICAgaWYgKChrZXlfbGVuID4gTUFY
X1NSVFBfQUVTS0VZX0xFTikgfHwgKHNhbHRfbGVuID4gTUFYX1NSVFBfU0FMVF9MRU4pKSB7CiAg
ICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtOwpAQCAtNjU0LDE3ICs2MjIs
MjEgQEAgc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfa2RmX2luaXQoc3J0cF9rZGZfdCAq
a2RmLCBjb25zdCB1aW50OF90ICprZXksIGludAogICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3Rh
dHVzX2JhZF9wYXJhbTsKICAgICAgICAgYnJlYWs7CiAgICAgfQotICAgIG1lbWNweShrZGYtPm1h
c3Rlcl9rZXksIGtleSwga2V5X2xlbik7IAotICAgIG1lbWNweShrZGYtPm1hc3Rlcl9zYWx0LCBr
ZXkra2V5X2xlbiwgc2FsdF9sZW4pOyAKKyAgICBtZW1jcHkoa2RmLT5tYXN0ZXJfa2V5LCBrZXks
IGtleV9sZW4pOworICAgIG1lbWNweShrZGYtPm1hc3Rlcl9zYWx0LCBrZXkgKyBrZXlfbGVuLCBz
YWx0X2xlbik7CiAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0KIAotc3RhdGljIHNy
dHBfZXJyX3N0YXR1c190IHNydHBfa2RmX2dlbmVyYXRlKHNydHBfa2RmX3QgKmtkZiwgc3J0cF9w
cmZfbGFiZWwgbGFiZWwsIHVpbnQ4X3QgKmtleSwgdW5zaWduZWQgaW50IGxlbmd0aCkgCitzdGF0
aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9rZGZfZ2VuZXJhdGUoc3J0cF9rZGZfdCAqa2RmLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfcHJmX2xhYmVs
IGxhYmVsLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQ4
X3QgKmtleSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNp
Z25lZCBpbnQgbGVuZ3RoKQogewogICAgIGludCByZXQ7CiAKICAgICAvKiBUaGUgTlVMTCBjaXBo
ZXIgd2lsbCBub3QgaGF2ZSBhbiBFVlAgKi8KLSAgICBpZiAoIWtkZi0+ZXZwKSByZXR1cm4gc3J0
cF9lcnJfc3RhdHVzX29rOworICAgIGlmICgha2RmLT5ldnApCisgICAgICAgIHJldHVybiBzcnRw
X2Vycl9zdGF0dXNfb2s7CiAgICAgb2N0ZXRfc3RyaW5nX3NldF90b196ZXJvKGtleSwgbGVuZ3Ro
KTsKIAogICAgIC8qCkBAIC02NzIsNyArNjQ0LDggQEAgc3RhdGljIHNydHBfZXJyX3N0YXR1c190
IHNydHBfa2RmX2dlbmVyYXRlKHNydHBfa2RmX3QgKmtkZiwgc3J0cF9wcmZfbGFiZWwgbGFiZWwK
ICAgICAgKiBUaGlzIGlzIHVzZWZ1bCBpZiBPcGVuU1NMIGlzIGluIEZJUFMgbW9kZSBhbmQgRklQ
CiAgICAgICogY29tcGxpYW5jZSBpcyByZXF1aXJlZCBmb3IgU1JUUC4KICAgICAgKi8KLSAgICBy
ZXQgPSBrZGZfc3J0cChrZGYtPmV2cCwgKGNoYXIgKikma2RmLT5tYXN0ZXJfa2V5LCAoY2hhciAq
KSZrZGYtPm1hc3Rlcl9zYWx0LCBOVUxMLCBOVUxMLCBsYWJlbCwgKGNoYXIgKilrZXkpOworICAg
IHJldCA9IGtkZl9zcnRwKGtkZi0+ZXZwLCAoY2hhciAqKSZrZGYtPm1hc3Rlcl9rZXksCisgICAg
ICAgICAgICAgICAgICAgKGNoYXIgKikma2RmLT5tYXN0ZXJfc2FsdCwgTlVMTCwgTlVMTCwgbGFi
ZWwsIChjaGFyICopa2V5KTsKICAgICBpZiAocmV0ID09IC0xKSB7CiAgICAgICAgIHJldHVybiAo
c3J0cF9lcnJfc3RhdHVzX2FsZ29fZmFpbCk7CiAgICAgfQpAQCAtNjgwLDI1ICs2NTMsMjggQEAg
c3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfa2RmX2dlbmVyYXRlKHNydHBfa2RmX3QgKmtk
Ziwgc3J0cF9wcmZfbGFiZWwgbGFiZWwKICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwog
fQogCi1zdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9rZGZfY2xlYXIoc3J0cF9rZGZfdCAq
a2RmKSB7CitzdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9rZGZfY2xlYXIoc3J0cF9rZGZf
dCAqa2RmKQorewogICAgIG9jdGV0X3N0cmluZ19zZXRfdG9femVybyhrZGYtPm1hc3Rlcl9rZXks
IE1BWF9TUlRQX0FFU0tFWV9MRU4pOwogICAgIG9jdGV0X3N0cmluZ19zZXRfdG9femVybyhrZGYt
Pm1hc3Rlcl9zYWx0LCBNQVhfU1JUUF9TQUxUX0xFTik7CiAgICAga2RmLT5ldnAgPSBOVUxMOwog
Ci0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsgIAorICAgIHJldHVybiBzcnRwX2Vycl9z
dGF0dXNfb2s7CiB9CiAKLSNlbHNlIC8qIGlmIE9QRU5TU0xfS0RGICovCisjZWxzZSAgLyogaWYg
T1BFTlNTTF9LREYgKi8KIAogLyoKICAqIHNydHBfa2RmX3QgcmVwcmVzZW50cyBhIGtleSBkZXJp
dmF0aW9uIGZ1bmN0aW9uLiAgVGhlIFNSVFAKICAqIGRlZmF1bHQgS0RGIGlzIHRoZSBvbmx5IG9u
ZSBpbXBsZW1lbnRlZCBhdCBwcmVzZW50LgogICovCi10eXBlZGVmIHN0cnVjdCB7IAotICAgIHNy
dHBfY2lwaGVyX3QgKmNpcGhlcjsgICAgLyogY2lwaGVyIHVzZWQgZm9yIGtleSBkZXJpdmF0aW9u
ICAqLyAgCit0eXBlZGVmIHN0cnVjdCB7CisgICAgc3J0cF9jaXBoZXJfdCAqY2lwaGVyOyAvKiBj
aXBoZXIgdXNlZCBmb3Iga2V5IGRlcml2YXRpb24gICovCiB9IHNydHBfa2RmX3Q7CiAKLXN0YXRp
YyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2tkZl9pbml0KHNydHBfa2RmX3QgKmtkZiwgY29uc3Qg
dWludDhfdCAqa2V5LCBpbnQga2V5X2xlbikKK3N0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRw
X2tkZl9pbml0KHNydHBfa2RmX3QgKmtkZiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGNvbnN0IHVpbnQ4X3QgKmtleSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGludCBrZXlfbGVuKQogewogICAgIHNydHBfY2lwaGVyX3R5cGVfaWRfdCBj
aXBoZXJfaWQ7CiAgICAgc3dpdGNoIChrZXlfbGVuKSB7CkBAIC03MTgsNyArNjk0LDggQEAgc3Rh
dGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfa2RmX2luaXQoc3J0cF9rZGZfdCAqa2RmLCBjb25z
dCB1aW50OF90ICprZXksIGludAogCiAgICAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdDsKICAgICBz
dGF0ID0gc3J0cF9jcnlwdG9fa2VybmVsX2FsbG9jX2NpcGhlcihjaXBoZXJfaWQsICZrZGYtPmNp
cGhlciwga2V5X2xlbiwgMCk7Ci0gICAgaWYgKHN0YXQpIHJldHVybiBzdGF0OworICAgIGlmIChz
dGF0KQorICAgICAgICByZXR1cm4gc3RhdDsKIAogICAgIHN0YXQgPSBzcnRwX2NpcGhlcl9pbml0
KGtkZi0+Y2lwaGVyLCBrZXkpOwogICAgIGlmIChzdGF0KSB7CkBAIC03MjgsMTA1ICs3MDUsMTEz
IEBAIHN0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2tkZl9pbml0KHNydHBfa2RmX3QgKmtk
ZiwgY29uc3QgdWludDhfdCAqa2V5LCBpbnQKICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29r
OwogfQogCi1zdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9rZGZfZ2VuZXJhdGUoc3J0cF9r
ZGZfdCAqa2RmLCBzcnRwX3ByZl9sYWJlbCBsYWJlbCwgdWludDhfdCAqa2V5LCB1bnNpZ25lZCBp
bnQgbGVuZ3RoKSAKK3N0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2tkZl9nZW5lcmF0ZShz
cnRwX2tkZl90ICprZGYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgc3J0cF9wcmZfbGFiZWwgbGFiZWwsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgdWludDhfdCAqa2V5LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHVuc2lnbmVkIGludCBsZW5ndGgpCiB7CiAgICAgc3J0cF9lcnJfc3RhdHVz
X3Qgc3RhdHVzOwogICAgIHYxMjhfdCBub25jZTsKLSAgCisKICAgICAvKiBzZXQgZWlndGggb2N0
ZXQgb2Ygbm9uY2UgdG8gPGxhYmVsPiwgc2V0IHRoZSByZXN0IG9mIGl0IHRvIHplcm8gKi8KICAg
ICB2MTI4X3NldF90b196ZXJvKCZub25jZSk7CiAgICAgbm9uY2UudjhbN10gPSBsYWJlbDsKLSAK
LSAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9zZXRfaXYoa2RmLT5jaXBoZXIsICh1aW50OF90Kikm
bm9uY2UsIHNydHBfZGlyZWN0aW9uX2VuY3J5cHQpOwotICAgIGlmIChzdGF0dXMpIHJldHVybiBz
dGF0dXM7Ci0gIAorCisgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfc2V0X2l2KGtkZi0+Y2lwaGVy
LCAodWludDhfdCAqKSZub25jZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3J0
cF9kaXJlY3Rpb25fZW5jcnlwdCk7CisgICAgaWYgKHN0YXR1cykKKyAgICAgICAgcmV0dXJuIHN0
YXR1czsKKwogICAgIC8qIGdlbmVyYXRlIGtleXN0cmVhbSBvdXRwdXQgKi8KICAgICBvY3RldF9z
dHJpbmdfc2V0X3RvX3plcm8oa2V5LCBsZW5ndGgpOwogICAgIHN0YXR1cyA9IHNydHBfY2lwaGVy
X2VuY3J5cHQoa2RmLT5jaXBoZXIsIGtleSwgJmxlbmd0aCk7Ci0gICAgaWYgKHN0YXR1cykgcmV0
dXJuIHN0YXR1czsKKyAgICBpZiAoc3RhdHVzKQorICAgICAgICByZXR1cm4gc3RhdHVzOwogCiAg
ICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0KIAotc3RhdGljIHNydHBfZXJyX3N0YXR1
c190IHNydHBfa2RmX2NsZWFyKHNydHBfa2RmX3QgKmtkZikgeworc3RhdGljIHNydHBfZXJyX3N0
YXR1c190IHNydHBfa2RmX2NsZWFyKHNydHBfa2RmX3QgKmtkZikKK3sKICAgICBzcnRwX2Vycl9z
dGF0dXNfdCBzdGF0dXM7CiAgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfZGVhbGxvYyhrZGYtPmNp
cGhlcik7Ci0gICAgaWYgKHN0YXR1cykgcmV0dXJuIHN0YXR1czsKKyAgICBpZiAoc3RhdHVzKQor
ICAgICAgICByZXR1cm4gc3RhdHVzOwogICAgIGtkZi0+Y2lwaGVyID0gTlVMTDsKLSAgICByZXR1
cm4gc3J0cF9lcnJfc3RhdHVzX29rOyAgCisgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsK
IH0KICNlbmRpZiAvKiBlbHNlIE9QRU5TU0xfS0RGICovCiAKIC8qCi0gKiAgZW5kIG9mIGtleSBk
ZXJpdmF0aW9uIGZ1bmN0aW9ucyAKKyAqICBlbmQgb2Yga2V5IGRlcml2YXRpb24gZnVuY3Rpb25z
CiAgKi8KIAotCi0KIC8qIEdldCB0aGUgYmFzZSBrZXkgbGVuZ3RoIGNvcnJlc3BvbmRpbmcgdG8g
YSBnaXZlbiBjb21iaW5lZCBrZXkrc2FsdAogICogbGVuZ3RoIGZvciB0aGUgZ2l2ZW4gY2lwaGVy
LgogICogVE9ETzoga2V5IGFuZCBzYWx0IGxlbmd0aHMgc2hvdWxkIGJlIHNlcGFyYXRlIGZpZWxk
cyBpbiB0aGUgcG9saWN5LiAgKi8KLXN0YXRpYyBpbmxpbmUgaW50IGJhc2Vfa2V5X2xlbmd0aChj
b25zdCBzcnRwX2NpcGhlcl90eXBlX3QgKmNpcGhlciwgaW50IGtleV9sZW5ndGgpCitzdGF0aWMg
aW5saW5lIGludCBiYXNlX2tleV9sZW5ndGgoY29uc3Qgc3J0cF9jaXBoZXJfdHlwZV90ICpjaXBo
ZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IGtleV9sZW5ndGgpCiB7
Ci0gIHN3aXRjaCAoY2lwaGVyLT5pZCkgewotICBjYXNlIFNSVFBfQUVTX0lDTV8xMjg6Ci0gIGNh
c2UgU1JUUF9BRVNfSUNNXzE5MjoKLSAgY2FzZSBTUlRQX0FFU19JQ01fMjU2OgotICAgIC8qIFRo
ZSBsZWdhY3kgbW9kZXMgYXJlIGRlcml2ZWQgZnJvbQotICAgICAqIHRoZSBjb25maWd1cmVkIGtl
eSBsZW5ndGggb24gdGhlIHBvbGljeSAqLwotICAgIHJldHVybiBrZXlfbGVuZ3RoIC0gU1JUUF9T
QUxUX0xFTjsKLSAgICBicmVhazsKLSAgY2FzZSBTUlRQX0FFU19HQ01fMTI4OgotICAgIHJldHVy
biBrZXlfbGVuZ3RoIC0gU1JUUF9BRUFEX1NBTFRfTEVOOwotICAgIGJyZWFrOwotICBjYXNlIFNS
VFBfQUVTX0dDTV8yNTY6Ci0gICAgICByZXR1cm4ga2V5X2xlbmd0aCAtIFNSVFBfQUVBRF9TQUxU
X0xFTjsKLSAgICBicmVhazsKLSAgZGVmYXVsdDoKLSAgICByZXR1cm4ga2V5X2xlbmd0aDsKLSAg
ICBicmVhazsKLSAgfQorICAgIHN3aXRjaCAoY2lwaGVyLT5pZCkgeworICAgIGNhc2UgU1JUUF9B
RVNfSUNNXzEyODoKKyAgICBjYXNlIFNSVFBfQUVTX0lDTV8xOTI6CisgICAgY2FzZSBTUlRQX0FF
U19JQ01fMjU2OgorICAgICAgICAvKiBUaGUgbGVnYWN5IG1vZGVzIGFyZSBkZXJpdmVkIGZyb20K
KyAgICAgICAgICogdGhlIGNvbmZpZ3VyZWQga2V5IGxlbmd0aCBvbiB0aGUgcG9saWN5ICovCisg
ICAgICAgIHJldHVybiBrZXlfbGVuZ3RoIC0gU1JUUF9TQUxUX0xFTjsKKyAgICAgICAgYnJlYWs7
CisgICAgY2FzZSBTUlRQX0FFU19HQ01fMTI4OgorICAgICAgICByZXR1cm4ga2V5X2xlbmd0aCAt
IFNSVFBfQUVBRF9TQUxUX0xFTjsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBTUlRQX0FFU19H
Q01fMjU2OgorICAgICAgICByZXR1cm4ga2V5X2xlbmd0aCAtIFNSVFBfQUVBRF9TQUxUX0xFTjsK
KyAgICAgICAgYnJlYWs7CisgICAgZGVmYXVsdDoKKyAgICAgICAgcmV0dXJuIGtleV9sZW5ndGg7
CisgICAgICAgIGJyZWFrOworICAgIH0KIH0KIAotdW5zaWduZWQgaW50Ci1zcnRwX3ZhbGlkYXRl
X3BvbGljeV9tYXN0ZXJfa2V5cyhjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3kpCit1bnNpZ25l
ZCBpbnQgc3J0cF92YWxpZGF0ZV9wb2xpY3lfbWFzdGVyX2tleXMoY29uc3Qgc3J0cF9wb2xpY3lf
dCAqcG9saWN5KQogewotICAgIGludCBpID0gMDsKKyAgICB1bnNpZ25lZCBsb25nIGkgPSAwOwog
CiAgICAgaWYgKHBvbGljeS0+a2V5ID09IE5VTEwpIHsKICAgICAgICAgaWYgKHBvbGljeS0+bnVt
X21hc3Rlcl9rZXlzIDw9IDApCiAgICAgICAgICAgICByZXR1cm4gMDsKIAogICAgICAgICBpZiAo
cG9saWN5LT5udW1fbWFzdGVyX2tleXMgPiBTUlRQX01BWF9OVU1fTUFTVEVSX0tFWVMpCi0JICAg
IHJldHVybiAwOwotCQorICAgICAgICAgICAgcmV0dXJuIDA7CisKICAgICAgICAgZm9yIChpID0g
MDsgaSA8IHBvbGljeS0+bnVtX21hc3Rlcl9rZXlzOyBpKyspIHsKICAgICAgICAgICAgIGlmIChw
b2xpY3ktPmtleXNbaV0tPmtleSA9PSBOVUxMKQogICAgICAgICAgICAgICAgIHJldHVybiAwOwot
CSAgICBpZiAocG9saWN5LT5rZXlzW2ldLT5ta2lfc2l6ZSA+IFNSVFBfTUFYX01LSV9MRU4pCi0J
CXJldHVybiAwOworICAgICAgICAgICAgaWYgKHBvbGljeS0+a2V5c1tpXS0+bWtpX3NpemUgPiBT
UlRQX01BWF9NS0lfTEVOKQorICAgICAgICAgICAgICAgIHJldHVybiAwOwogICAgICAgICB9CiAg
ICAgfQogCiAgICAgcmV0dXJuIDE7CiB9CiAKLXNydHBfc2Vzc2lvbl9rZXlzX3QqCi1zcnRwX2dl
dF9zZXNzaW9uX2tleXNfd2l0aF9ta2lfaW5kZXgoc3J0cF9zdHJlYW1fY3R4X3QgKnN0cmVhbSwK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgdXNlX21r
aSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgbWtp
X2luZGV4KSB7CitzcnRwX3Nlc3Npb25fa2V5c190ICpzcnRwX2dldF9zZXNzaW9uX2tleXNfd2l0
aF9ta2lfaW5kZXgoCisgICAgc3J0cF9zdHJlYW1fY3R4X3QgKnN0cmVhbSwKKyAgICB1bnNpZ25l
ZCBpbnQgdXNlX21raSwKKyAgICB1bnNpZ25lZCBpbnQgbWtpX2luZGV4KQorewogICAgIGlmICh1
c2VfbWtpKSB7Ci0gICAgICAgIGlmIChta2lfaW5kZXggPCBzdHJlYW0tPm51bV9tYXN0ZXJfa2V5
cykgewotICAgICAgICAgICAgcmV0dXJuICZzdHJlYW0tPnNlc3Npb25fa2V5c1tta2lfaW5kZXhd
OworICAgICAgICBpZiAobWtpX2luZGV4ID49IHN0cmVhbS0+bnVtX21hc3Rlcl9rZXlzKSB7Cisg
ICAgICAgICAgICByZXR1cm4gTlVMTDsKICAgICAgICAgfQorICAgICAgICByZXR1cm4gJnN0cmVh
bS0+c2Vzc2lvbl9rZXlzW21raV9pbmRleF07CiAgICAgfQogCiAgICAgcmV0dXJuICZzdHJlYW0t
PnNlc3Npb25fa2V5c1swXTsKIH0KIAotdW5zaWduZWQgaW50Ci1zcnRwX2luamVjdF9ta2kodWlu
dDhfdCAqbWtpX3RhZ19sb2NhdGlvbiwgc3J0cF9zZXNzaW9uX2tleXNfdCogc2Vzc2lvbl9rZXlz
LAotICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCB1c2VfbWtpKQordW5zaWduZWQgaW50IHNy
dHBfaW5qZWN0X21raSh1aW50OF90ICpta2lfdGFnX2xvY2F0aW9uLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBzcnRwX3Nlc3Npb25fa2V5c190ICpzZXNzaW9uX2tleXMsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCB1c2VfbWtpKQogewogICAgIHVuc2ln
bmVkIGludCBta2lfc2l6ZSA9IDA7CiAKQEAgLTg0MiwxNiArODI3LDE3IEBAIHNydHBfaW5qZWN0
X21raSh1aW50OF90ICpta2lfdGFnX2xvY2F0aW9uLCBzcnRwX3Nlc3Npb25fa2V5c190KiBzZXNz
aW9uX2tleXMsCiAgICAgcmV0dXJuIG1raV9zaXplOwogfQogCi1zcnRwX2Vycl9zdGF0dXNfdAot
c3J0cF9zdHJlYW1faW5pdF9hbGxfbWFzdGVyX2tleXMoc3J0cF9zdHJlYW1fY3R4X3QgKnNydHAs
Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBjaGFyICprZXksCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcnRwX21hc3Rlcl9rZXlfdCAqKmtleXMs
Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB1bnNpZ25lZCBpbnQgbWF4
X21hc3Rlcl9rZXlzKSB7Ci0gICAgaW50IGkgPSAwOworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9z
dHJlYW1faW5pdF9hbGxfbWFzdGVyX2tleXMoCisgICAgc3J0cF9zdHJlYW1fY3R4X3QgKnNydHAs
CisgICAgdW5zaWduZWQgY2hhciAqa2V5LAorICAgIHNydHBfbWFzdGVyX2tleV90ICoqa2V5cywK
KyAgICBjb25zdCB1bnNpZ25lZCBpbnQgbWF4X21hc3Rlcl9rZXlzKQoreworICAgIHVuc2lnbmVk
IGludCBpID0gMDsKICAgICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0dXMgPSBzcnRwX2Vycl9zdGF0
dXNfb2s7CiAgICAgc3J0cF9tYXN0ZXJfa2V5X3Qgc2luZ2xlX21hc3Rlcl9rZXk7CiAKLSAgICBp
ZiAoIGtleSAhPSBOVUxMICkgeworICAgIGlmIChrZXkgIT0gTlVMTCkgewogICAgICAgICBzcnRw
LT5udW1fbWFzdGVyX2tleXMgPSAxOwogICAgICAgICBzaW5nbGVfbWFzdGVyX2tleS5rZXkgPSBr
ZXk7CiAgICAgICAgIHNpbmdsZV9tYXN0ZXJfa2V5Lm1raV9pZCA9IE5VTEw7CkBAIC04NjAsNyAr
ODQ2LDggQEAgc3J0cF9zdHJlYW1faW5pdF9hbGxfbWFzdGVyX2tleXMoc3J0cF9zdHJlYW1fY3R4
X3QgKnNydHAsCiAgICAgfSBlbHNlIHsKICAgICAgICAgc3J0cC0+bnVtX21hc3Rlcl9rZXlzID0g
bWF4X21hc3Rlcl9rZXlzOwogCi0gICAgICAgIGZvciAoaSA9IDA7IGkgPCBzcnRwLT5udW1fbWFz
dGVyX2tleXMgJiYgaSA8IFNSVFBfTUFYX05VTV9NQVNURVJfS0VZUzsgaSsrKSB7CisgICAgICAg
IGZvciAoaSA9IDA7IGkgPCBzcnRwLT5udW1fbWFzdGVyX2tleXMgJiYgaSA8IFNSVFBfTUFYX05V
TV9NQVNURVJfS0VZUzsKKyAgICAgICAgICAgICBpKyspIHsKICAgICAgICAgICAgIHN0YXR1cyA9
IHNydHBfc3RyZWFtX2luaXRfa2V5cyhzcnRwLCBrZXlzW2ldLCBpKTsKIAogICAgICAgICAgICAg
aWYgKHN0YXR1cykgewpAQCAtODcyLDU3NyArODU5LDYwOSBAQCBzcnRwX3N0cmVhbV9pbml0X2Fs
bF9tYXN0ZXJfa2V5cyhzcnRwX3N0cmVhbV9jdHhfdCAqc3J0cCwKICAgICByZXR1cm4gc3RhdHVz
OwogfQogCi1zcnRwX2Vycl9zdGF0dXNfdAotc3J0cF9zdHJlYW1faW5pdF9rZXlzKHNydHBfc3Ry
ZWFtX2N0eF90ICpzcnRwLCBzcnRwX21hc3Rlcl9rZXlfdCAqbWFzdGVyX2tleSwKLSAgICAgICAg
ICAgICAgICAgICAgICBjb25zdCB1bnNpZ25lZCBpbnQgY3VycmVudF9ta2lfaW5kZXgpIHsKLSAg
c3J0cF9lcnJfc3RhdHVzX3Qgc3RhdDsKLSAgc3J0cF9rZGZfdCBrZGY7Ci0gIHVpbnQ4X3QgdG1w
X2tleVtNQVhfU1JUUF9LRVlfTEVOXTsKLSAgaW50IGtkZl9rZXlsZW4gPSAzMCwgcnRwX2tleWxl
biwgcnRjcF9rZXlsZW47Ci0gIGludCBydHBfYmFzZV9rZXlfbGVuLCBydHBfc2FsdF9sZW47Ci0g
IGludCBydGNwX2Jhc2Vfa2V5X2xlbiwgcnRjcF9zYWx0X2xlbjsKLSAgc3J0cF9zZXNzaW9uX2tl
eXNfdCAqc2Vzc2lvbl9rZXlzID0gTlVMTDsKLSAgdW5zaWduZWQgY2hhciAqa2V5ID0gbWFzdGVy
X2tleS0+a2V5OwotCi0gIC8qIElmIFJUUCBvciBSVENQIGhhdmUgYSBrZXkgbGVuZ3RoID4gQUVT
LTEyOCwgYXNzdW1lIG1hdGNoaW5nIGtkZi4gKi8KLSAgLyogVE9ETzoga2RmIGFsZ29yaXRobSwg
bWFzdGVyIGtleSBsZW5ndGgsIGFuZCBtYXN0ZXIgc2FsdCBsZW5ndGggc2hvdWxkCi0gICAqIGJl
IHBhcnQgb2Ygc3J0cF9wb2xpY3lfdC4gKi8KLSAgc2Vzc2lvbl9rZXlzID0gJnNydHAtPnNlc3Np
b25fa2V5c1tjdXJyZW50X21raV9pbmRleF07Ci0KLSAgIC8qIGluaXRpYWxpemUga2V5IGxpbWl0
IHRvIG1heGltdW0gdmFsdWUgKi8KLSNpZmRlZiBOT182NEJJVF9NQVRICitzcnRwX2Vycl9zdGF0
dXNfdCBzcnRwX3N0cmVhbV9pbml0X2tleXMoc3J0cF9zdHJlYW1fY3R4X3QgKnNydHAsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF9tYXN0ZXJfa2V5X3QgKm1h
c3Rlcl9rZXksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qg
dW5zaWduZWQgaW50IGN1cnJlbnRfbWtpX2luZGV4KQogewotICAgdWludDY0X3QgdGVtcDsKLSAg
IHRlbXAgPSBtYWtlNjQoVUlOVF9NQVgsVUlOVF9NQVgpOwotICAgc3J0cF9rZXlfbGltaXRfc2V0
KHNlc3Npb25fa2V5cy0+bGltaXQsIHRlbXApOwotfQorICAgIHNydHBfZXJyX3N0YXR1c190IHN0
YXQ7CisgICAgc3J0cF9rZGZfdCBrZGY7CisgICAgdWludDhfdCB0bXBfa2V5W01BWF9TUlRQX0tF
WV9MRU5dOworICAgIGludCBrZGZfa2V5bGVuID0gMzAsIHJ0cF9rZXlsZW4sIHJ0Y3Bfa2V5bGVu
OworICAgIGludCBydHBfYmFzZV9rZXlfbGVuLCBydHBfc2FsdF9sZW47CisgICAgaW50IHJ0Y3Bf
YmFzZV9rZXlfbGVuLCBydGNwX3NhbHRfbGVuOworICAgIHNydHBfc2Vzc2lvbl9rZXlzX3QgKnNl
c3Npb25fa2V5cyA9IE5VTEw7CisgICAgdW5zaWduZWQgY2hhciAqa2V5ID0gbWFzdGVyX2tleS0+
a2V5OworCisgICAgLyogSWYgUlRQIG9yIFJUQ1AgaGF2ZSBhIGtleSBsZW5ndGggPiBBRVMtMTI4
LCBhc3N1bWUgbWF0Y2hpbmcga2RmLiAqLworICAgIC8qIFRPRE86IGtkZiBhbGdvcml0aG0sIG1h
c3RlciBrZXkgbGVuZ3RoLCBhbmQgbWFzdGVyIHNhbHQgbGVuZ3RoIHNob3VsZAorICAgICAqIGJl
IHBhcnQgb2Ygc3J0cF9wb2xpY3lfdC4KKyAgICAqLworICAgIHNlc3Npb25fa2V5cyA9ICZzcnRw
LT5zZXNzaW9uX2tleXNbY3VycmVudF9ta2lfaW5kZXhdOworCisvKiBpbml0aWFsaXplIGtleSBs
aW1pdCB0byBtYXhpbXVtIHZhbHVlICovCisjaWZkZWYgTk9fNjRCSVRfTUFUSAorICAgIHsKKyAg
ICAgICAgdWludDY0X3QgdGVtcDsKKyAgICAgICAgdGVtcCA9IG1ha2U2NChVSU5UX01BWCwgVUlO
VF9NQVgpOworICAgICAgICBzcnRwX2tleV9saW1pdF9zZXQoc2Vzc2lvbl9rZXlzLT5saW1pdCwg
dGVtcCk7CisgICAgfQogI2Vsc2UKLSAgIHNydHBfa2V5X2xpbWl0X3NldChzZXNzaW9uX2tleXMt
PmxpbWl0LCAweGZmZmZmZmZmZmZmZkxMKTsKKyAgICBzcnRwX2tleV9saW1pdF9zZXQoc2Vzc2lv
bl9rZXlzLT5saW1pdCwgMHhmZmZmZmZmZmZmZmZMTCk7CiAjZW5kaWYKIAorICAgIGlmIChtYXN0
ZXJfa2V5LT5ta2lfc2l6ZSAhPSAwKSB7CisgICAgICAgIHNlc3Npb25fa2V5cy0+bWtpX2lkID0g
c3J0cF9jcnlwdG9fYWxsb2MobWFzdGVyX2tleS0+bWtpX3NpemUpOwogCi0gIGlmICggbWFzdGVy
X2tleS0+bWtpX3NpemUgIT0gMCApIHsKLSAgICAgIHNlc3Npb25fa2V5cy0+bWtpX2lkID0gc3J0
cF9jcnlwdG9fYWxsb2MobWFzdGVyX2tleS0+bWtpX3NpemUpOwotCi0gICAgICBpZiAoc2Vzc2lv
bl9rZXlzLT5ta2lfaWQgPT0gTlVMTCkgewotICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVz
X2luaXRfZmFpbDsKLSAgICAgIH0KLSAgICAgIG1lbXNldChzZXNzaW9uX2tleXMtPm1raV9pZCwg
MHgwLCBtYXN0ZXJfa2V5LT5ta2lfc2l6ZSk7Ci0gICAgICBtZW1jcHkoc2Vzc2lvbl9rZXlzLT5t
a2lfaWQsIG1hc3Rlcl9rZXktPm1raV9pZCwgbWFzdGVyX2tleS0+bWtpX3NpemUpOwotICB9IGVs
c2UgewotICAgICAgc2Vzc2lvbl9rZXlzLT5ta2lfaWQgPSBOVUxMOwotICB9Ci0KLSAgc2Vzc2lv
bl9rZXlzLT5ta2lfc2l6ZSA9IG1hc3Rlcl9rZXktPm1raV9zaXplOwotCi0gIHJ0cF9rZXlsZW4g
PSBzcnRwX2NpcGhlcl9nZXRfa2V5X2xlbmd0aChzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXIpOwot
ICBydGNwX2tleWxlbiA9IHNydHBfY2lwaGVyX2dldF9rZXlfbGVuZ3RoKHNlc3Npb25fa2V5cy0+
cnRjcF9jaXBoZXIpOwotICBydHBfYmFzZV9rZXlfbGVuID0gYmFzZV9rZXlfbGVuZ3RoKHNlc3Np
b25fa2V5cy0+cnRwX2NpcGhlci0+dHlwZSwgcnRwX2tleWxlbik7Ci0gIHJ0cF9zYWx0X2xlbiA9
IHJ0cF9rZXlsZW4gLSBydHBfYmFzZV9rZXlfbGVuOwotCi0gIGlmIChydHBfa2V5bGVuID4ga2Rm
X2tleWxlbikgewotICAgIGtkZl9rZXlsZW4gPSA0NjsgIC8qIEFFUy1DVFIgbW9kZSBpcyBhbHdh
eXMgdXNlZCBmb3IgS0RGICovCi0gIH0KLQotICBpZiAocnRjcF9rZXlsZW4gPiBrZGZfa2V5bGVu
KSB7Ci0gICAga2RmX2tleWxlbiA9IDQ2OyAgLyogQUVTLUNUUiBtb2RlIGlzIGFsd2F5cyB1c2Vk
IGZvciBLREYgKi8KLSAgfQotCi0gIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAic3J0cCBrZXkgbGVu
OiAlZCIsIHJ0cF9rZXlsZW4pOwotICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgInNydGNwIGtleSBs
ZW46ICVkIiwgcnRjcF9rZXlsZW4pOwotICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgImJhc2Uga2V5
IGxlbjogJWQiLCBydHBfYmFzZV9rZXlfbGVuKTsKLSAgZGVidWdfcHJpbnQobW9kX3NydHAsICJr
ZGYga2V5IGxlbjogJWQiLCBrZGZfa2V5bGVuKTsKLSAgZGVidWdfcHJpbnQobW9kX3NydHAsICJy
dHAgc2FsdCBsZW46ICVkIiwgcnRwX3NhbHRfbGVuKTsKLQotICAvKiAKLSAgICogTWFrZSBzdXJl
IHRoZSBrZXkgZ2l2ZW4gdG8gdXMgaXMgJ3plcm8nIGFwcGVuZGVkLiAgR0NNCi0gICAqIG1vZGUg
dXNlcyBhIHNob3J0ZXIgbWFzdGVyIFNBTFQgKDk2IGJpdHMpLCBidXQgc3RpbGwgcmVsaWVzIG9u
IAotICAgKiB0aGUgbGVnYWN5IENUUiBtb2RlIEtERiwgd2hpY2ggdXNlcyBhIDExMiBiaXQgbWFz
dGVyIFNBTFQuCi0gICAqLwotICBtZW1zZXQodG1wX2tleSwgMHgwLCBNQVhfU1JUUF9LRVlfTEVO
KTsKLSAgbWVtY3B5KHRtcF9rZXksIGtleSwgKHJ0cF9iYXNlX2tleV9sZW4gKyBydHBfc2FsdF9s
ZW4pKTsKLQotICAvKiBpbml0aWFsaXplIEtERiBzdGF0ZSAgICAgKi8KLSNpZiBkZWZpbmVkKE9Q
RU5TU0wpICYmIGRlZmluZWQoT1BFTlNTTF9LREYpCi0gIHN0YXQgPSBzcnRwX2tkZl9pbml0KCZr
ZGYsIChjb25zdCB1aW50OF90ICopdG1wX2tleSwgcnRwX2Jhc2Vfa2V5X2xlbiwgcnRwX3NhbHRf
bGVuKTsgCi0jZWxzZQotICBzdGF0ID0gc3J0cF9rZGZfaW5pdCgma2RmLCAoY29uc3QgdWludDhf
dCAqKXRtcF9rZXksIGtkZl9rZXlsZW4pOwotI2VuZGlmCi0gIGlmIChzdGF0KSB7Ci0gICAgLyog
emVyb2l6ZSB0ZW1wIGJ1ZmZlciAqLwotICAgIG9jdGV0X3N0cmluZ19zZXRfdG9femVybyh0bXBf
a2V5LCBNQVhfU1JUUF9LRVlfTEVOKTsKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2luaXRf
ZmFpbDsKLSAgfQotICAKLSAgLyogZ2VuZXJhdGUgZW5jcnlwdGlvbiBrZXkgICovCi0gIHN0YXQg
PSBzcnRwX2tkZl9nZW5lcmF0ZSgma2RmLCBsYWJlbF9ydHBfZW5jcnlwdGlvbiwgCi0JCQkgICB0
bXBfa2V5LCBydHBfYmFzZV9rZXlfbGVuKTsKLSAgaWYgKHN0YXQpIHsKLSAgICAvKiB6ZXJvaXpl
IHRlbXAgYnVmZmVyICovCi0gICAgb2N0ZXRfc3RyaW5nX3NldF90b196ZXJvKHRtcF9rZXksIE1B
WF9TUlRQX0tFWV9MRU4pOwotICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfaW5pdF9mYWlsOwot
ICB9Ci0gIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAiY2lwaGVyIGtleTogJXMiLCAKLQkgICAgICBz
cnRwX29jdGV0X3N0cmluZ19oZXhfc3RyaW5nKHRtcF9rZXksIHJ0cF9iYXNlX2tleV9sZW4pKTsK
LQotICAvKiAKLSAgICogaWYgdGhlIGNpcGhlciBpbiB0aGUgc3J0cCBjb250ZXh0IHVzZXMgYSBz
YWx0LCB0aGVuIHdlIG5lZWQKLSAgICogdG8gZ2VuZXJhdGUgdGhlIHNhbHQgdmFsdWUKLSAgICov
Ci0gIGlmIChydHBfc2FsdF9sZW4gPiAwKSB7Ci0gICAgZGVidWdfcHJpbnQobW9kX3NydHAsICJm
b3VuZCBydHBfc2FsdF9sZW4gPiAwLCBnZW5lcmF0aW5nIHNhbHQiLCBOVUxMKTsKLQotICAgIC8q
IGdlbmVyYXRlIGVuY3J5cHRpb24gc2FsdCwgcHV0IGFmdGVyIGVuY3J5cHRpb24ga2V5ICovCi0g
ICAgc3RhdCA9IHNydHBfa2RmX2dlbmVyYXRlKCZrZGYsIGxhYmVsX3J0cF9zYWx0LCAKLQkJCSAg
ICAgdG1wX2tleSArIHJ0cF9iYXNlX2tleV9sZW4sIHJ0cF9zYWx0X2xlbik7Ci0gICAgaWYgKHN0
YXQpIHsKLSAgICAgIC8qIHplcm9pemUgdGVtcCBidWZmZXIgKi8KLSAgICAgIG9jdGV0X3N0cmlu
Z19zZXRfdG9femVybyh0bXBfa2V5LCBNQVhfU1JUUF9LRVlfTEVOKTsKLSAgICAgIHJldHVybiBz
cnRwX2Vycl9zdGF0dXNfaW5pdF9mYWlsOwotICAgIH0KLSAgICBtZW1jcHkoc2Vzc2lvbl9rZXlz
LT5zYWx0LCB0bXBfa2V5ICsgcnRwX2Jhc2Vfa2V5X2xlbiwgU1JUUF9BRUFEX1NBTFRfTEVOKTsK
LSAgfQotICBpZiAocnRwX3NhbHRfbGVuID4gMCkgewotICAgIGRlYnVnX3ByaW50KG1vZF9zcnRw
LCAiY2lwaGVyIHNhbHQ6ICVzIiwKLQkJc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZyh0bXBf
a2V5ICsgcnRwX2Jhc2Vfa2V5X2xlbiwgcnRwX3NhbHRfbGVuKSk7Ci0gIH0KLQotICAvKiBpbml0
aWFsaXplIGNpcGhlciAqLwotICBzdGF0ID0gc3J0cF9jaXBoZXJfaW5pdChzZXNzaW9uX2tleXMt
PnJ0cF9jaXBoZXIsIHRtcF9rZXkpOwotICBpZiAoc3RhdCkgewotICAgIC8qIHplcm9pemUgdGVt
cCBidWZmZXIgKi8KLSAgICBvY3RldF9zdHJpbmdfc2V0X3RvX3plcm8odG1wX2tleSwgTUFYX1NS
VFBfS0VZX0xFTik7Ci0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19pbml0X2ZhaWw7Ci0gIH0K
LQotICBpZiAoc2Vzc2lvbl9rZXlzLT5ydHBfeHRuX2hkcl9jaXBoZXIpIHsKLSAgICAvKiBnZW5l
cmF0ZSBleHRlbnNpb25zIGhlYWRlciBlbmNyeXB0aW9uIGtleSAgKi8KLSAgICBpbnQgcnRwX3h0
bl9oZHJfa2V5bGVuOwotICAgIGludCBydHBfeHRuX2hkcl9iYXNlX2tleV9sZW47Ci0gICAgaW50
IHJ0cF94dG5faGRyX3NhbHRfbGVuOwotICAgIHNydHBfa2RmX3QgdG1wX2tkZjsKLSAgICBzcnRw
X2tkZl90ICp4dG5faGRyX2tkZjsKLQotICAgIGlmIChzZXNzaW9uX2tleXMtPnJ0cF94dG5faGRy
X2NpcGhlci0+dHlwZSAhPSBzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXItPnR5cGUpIHsKLSAgICAg
IC8qIFdpdGggR0NNIGNpcGhlcnMsIHRoZSBoZWFkZXIgZXh0ZW5zaW9ucyBhcmUgc3RpbGwgZW5j
cnlwdGVkIHVzaW5nIHRoZSBjb3JyZXNwb25kaW5nIElDTSBjaXBoZXIuICovCi0gICAgICAvKiBT
ZWUgaHR0cHM6Ly90b29scy5pZXRmLm9yZy9odG1sL3JmYzc3MTQjc2VjdGlvbi04LjMgKi8KLSAg
ICAgIHVpbnQ4X3QgdG1wX3h0bl9oZHJfa2V5W01BWF9TUlRQX0tFWV9MRU5dOwotICAgICAgcnRw
X3h0bl9oZHJfa2V5bGVuID0gc3J0cF9jaXBoZXJfZ2V0X2tleV9sZW5ndGgoc2Vzc2lvbl9rZXlz
LT5ydHBfeHRuX2hkcl9jaXBoZXIpOwotICAgICAgcnRwX3h0bl9oZHJfYmFzZV9rZXlfbGVuID0g
YmFzZV9rZXlfbGVuZ3RoKHNlc3Npb25fa2V5cy0+cnRwX3h0bl9oZHJfY2lwaGVyLT50eXBlLAot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJ0cF94dG5f
aGRyX2tleWxlbik7Ci0gICAgICBydHBfeHRuX2hkcl9zYWx0X2xlbiA9IHJ0cF94dG5faGRyX2tl
eWxlbiAtIHJ0cF94dG5faGRyX2Jhc2Vfa2V5X2xlbjsKLSAgICAgIGlmIChydHBfeHRuX2hkcl9z
YWx0X2xlbiA+IHJ0cF9zYWx0X2xlbikgewotICAgICAgICBzd2l0Y2ggKHNlc3Npb25fa2V5cy0+
cnRwX2NpcGhlci0+dHlwZS0+aWQpIHsKLSAgICAgICAgY2FzZSBTUlRQX0FFU19HQ01fMTI4Ogot
ICAgICAgICBjYXNlIFNSVFBfQUVTX0dDTV8yNTY6Ci0gICAgICAgICAgLyogVGhlIHNob3J0ZXIg
R0NNIHNhbHQgaXMgcGFkZGVkIHRvIHRoZSByZXF1aXJlZCBJQ00gc2FsdCBsZW5ndGguICovCi0g
ICAgICAgICAgcnRwX3h0bl9oZHJfc2FsdF9sZW4gPSBydHBfc2FsdF9sZW47Ci0gICAgICAgICAg
YnJlYWs7Ci0gICAgICAgIGRlZmF1bHQ6Ci0gICAgICAgICAgLyogemVyb2l6ZSB0ZW1wIGJ1ZmZl
ciAqLwotICAgICAgICAgIG9jdGV0X3N0cmluZ19zZXRfdG9femVybyh0bXBfa2V5LCBNQVhfU1JU
UF9LRVlfTEVOKTsKLSAgICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJhbTsK
KyAgICAgICAgaWYgKHNlc3Npb25fa2V5cy0+bWtpX2lkID09IE5VTEwpIHsKKyAgICAgICAgICAg
IHJldHVybiBzcnRwX2Vycl9zdGF0dXNfaW5pdF9mYWlsOwogICAgICAgICB9Ci0gICAgICB9Ci0g
ICAgICBtZW1zZXQodG1wX3h0bl9oZHJfa2V5LCAweDAsIE1BWF9TUlRQX0tFWV9MRU4pOwotICAg
ICAgbWVtY3B5KHRtcF94dG5faGRyX2tleSwga2V5LCAocnRwX3h0bl9oZHJfYmFzZV9rZXlfbGVu
ICsgcnRwX3h0bl9oZHJfc2FsdF9sZW4pKTsKLSAgICAgIHh0bl9oZHJfa2RmID0gJnRtcF9rZGY7
CisgICAgICAgIG1lbWNweShzZXNzaW9uX2tleXMtPm1raV9pZCwgbWFzdGVyX2tleS0+bWtpX2lk
LCBtYXN0ZXJfa2V5LT5ta2lfc2l6ZSk7CisgICAgfSBlbHNlIHsKKyAgICAgICAgc2Vzc2lvbl9r
ZXlzLT5ta2lfaWQgPSBOVUxMOworICAgIH0KKworICAgIHNlc3Npb25fa2V5cy0+bWtpX3NpemUg
PSBtYXN0ZXJfa2V5LT5ta2lfc2l6ZTsKKworICAgIHJ0cF9rZXlsZW4gPSBzcnRwX2NpcGhlcl9n
ZXRfa2V5X2xlbmd0aChzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXIpOworICAgIHJ0Y3Bfa2V5bGVu
ID0gc3J0cF9jaXBoZXJfZ2V0X2tleV9sZW5ndGgoc2Vzc2lvbl9rZXlzLT5ydGNwX2NpcGhlcik7
CisgICAgcnRwX2Jhc2Vfa2V5X2xlbiA9CisgICAgICAgIGJhc2Vfa2V5X2xlbmd0aChzZXNzaW9u
X2tleXMtPnJ0cF9jaXBoZXItPnR5cGUsIHJ0cF9rZXlsZW4pOworICAgIHJ0cF9zYWx0X2xlbiA9
IHJ0cF9rZXlsZW4gLSBydHBfYmFzZV9rZXlfbGVuOworCisgICAgaWYgKHJ0cF9rZXlsZW4gPiBr
ZGZfa2V5bGVuKSB7CisgICAgICAgIGtkZl9rZXlsZW4gPSA0NjsgLyogQUVTLUNUUiBtb2RlIGlz
IGFsd2F5cyB1c2VkIGZvciBLREYgKi8KKyAgICB9CisKKyAgICBpZiAocnRjcF9rZXlsZW4gPiBr
ZGZfa2V5bGVuKSB7CisgICAgICAgIGtkZl9rZXlsZW4gPSA0NjsgLyogQUVTLUNUUiBtb2RlIGlz
IGFsd2F5cyB1c2VkIGZvciBLREYgKi8KKyAgICB9CisKKyAgICBkZWJ1Z19wcmludChtb2Rfc3J0
cCwgInNydHAga2V5IGxlbjogJWQiLCBydHBfa2V5bGVuKTsKKyAgICBkZWJ1Z19wcmludChtb2Rf
c3J0cCwgInNydGNwIGtleSBsZW46ICVkIiwgcnRjcF9rZXlsZW4pOworICAgIGRlYnVnX3ByaW50
KG1vZF9zcnRwLCAiYmFzZSBrZXkgbGVuOiAlZCIsIHJ0cF9iYXNlX2tleV9sZW4pOworICAgIGRl
YnVnX3ByaW50KG1vZF9zcnRwLCAia2RmIGtleSBsZW46ICVkIiwga2RmX2tleWxlbik7CisgICAg
ZGVidWdfcHJpbnQobW9kX3NydHAsICJydHAgc2FsdCBsZW46ICVkIiwgcnRwX3NhbHRfbGVuKTsK
IAotICAgICAgLyogaW5pdGlhbGl6ZSBLREYgc3RhdGUgICAgICovCisgICAgLyoKKyAgICAgKiBN
YWtlIHN1cmUgdGhlIGtleSBnaXZlbiB0byB1cyBpcyAnemVybycgYXBwZW5kZWQuICBHQ00KKyAg
ICAgKiBtb2RlIHVzZXMgYSBzaG9ydGVyIG1hc3RlciBTQUxUICg5NiBiaXRzKSwgYnV0IHN0aWxs
IHJlbGllcyBvbgorICAgICAqIHRoZSBsZWdhY3kgQ1RSIG1vZGUgS0RGLCB3aGljaCB1c2VzIGEg
MTEyIGJpdCBtYXN0ZXIgU0FMVC4KKyAgICAgKi8KKyAgICBtZW1zZXQodG1wX2tleSwgMHgwLCBN
QVhfU1JUUF9LRVlfTEVOKTsKKyAgICBtZW1jcHkodG1wX2tleSwga2V5LCAocnRwX2Jhc2Vfa2V5
X2xlbiArIHJ0cF9zYWx0X2xlbikpOworCisvKiBpbml0aWFsaXplIEtERiBzdGF0ZSAgICAgKi8K
ICNpZiBkZWZpbmVkKE9QRU5TU0wpICYmIGRlZmluZWQoT1BFTlNTTF9LREYpCi0gICAgICBzdGF0
ID0gc3J0cF9rZGZfaW5pdCh4dG5faGRyX2tkZiwgKGNvbnN0IHVpbnQ4X3QgKil0bXBfeHRuX2hk
cl9rZXksIHJ0cF94dG5faGRyX2Jhc2Vfa2V5X2xlbiwgcnRwX3h0bl9oZHJfc2FsdF9sZW4pOwor
ICAgIHN0YXQgPSBzcnRwX2tkZl9pbml0KCZrZGYsIChjb25zdCB1aW50OF90ICopdG1wX2tleSwg
cnRwX2Jhc2Vfa2V5X2xlbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICBydHBfc2FsdF9sZW4p
OwogI2Vsc2UKLSAgICAgIHN0YXQgPSBzcnRwX2tkZl9pbml0KHh0bl9oZHJfa2RmLCAoY29uc3Qg
dWludDhfdCAqKXRtcF94dG5faGRyX2tleSwga2RmX2tleWxlbik7CisgICAgc3RhdCA9IHNydHBf
a2RmX2luaXQoJmtkZiwgKGNvbnN0IHVpbnQ4X3QgKil0bXBfa2V5LCBrZGZfa2V5bGVuKTsKICNl
bmRpZgotICAgICAgb2N0ZXRfc3RyaW5nX3NldF90b196ZXJvKHRtcF94dG5faGRyX2tleSwgTUFY
X1NSVFBfS0VZX0xFTik7Ci0gICAgICBpZiAoc3RhdCkgeworICAgIGlmIChzdGF0KSB7CiAgICAg
ICAgIC8qIHplcm9pemUgdGVtcCBidWZmZXIgKi8KICAgICAgICAgb2N0ZXRfc3RyaW5nX3NldF90
b196ZXJvKHRtcF9rZXksIE1BWF9TUlRQX0tFWV9MRU4pOwogICAgICAgICByZXR1cm4gc3J0cF9l
cnJfc3RhdHVzX2luaXRfZmFpbDsKLSAgICAgIH0KLSAgICB9IGVsc2UgewotICAgICAgLyogUmV1
c2UgbWFpbiBLREYuICovCi0gICAgICBydHBfeHRuX2hkcl9rZXlsZW4gPSBydHBfa2V5bGVuOwot
ICAgICAgcnRwX3h0bl9oZHJfYmFzZV9rZXlfbGVuID0gcnRwX2Jhc2Vfa2V5X2xlbjsKLSAgICAg
IHJ0cF94dG5faGRyX3NhbHRfbGVuID0gcnRwX3NhbHRfbGVuOwotICAgICAgeHRuX2hkcl9rZGYg
PSAma2RmOwogICAgIH0KIAotICAgIHN0YXQgPSBzcnRwX2tkZl9nZW5lcmF0ZSh4dG5faGRyX2tk
ZiwgbGFiZWxfcnRwX2hlYWRlcl9lbmNyeXB0aW9uLAotICAgICAgICAgICB0bXBfa2V5LCBydHBf
eHRuX2hkcl9iYXNlX2tleV9sZW4pOworICAgIC8qIGdlbmVyYXRlIGVuY3J5cHRpb24ga2V5ICAq
LworICAgIHN0YXQgPSBzcnRwX2tkZl9nZW5lcmF0ZSgma2RmLCBsYWJlbF9ydHBfZW5jcnlwdGlv
biwgdG1wX2tleSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcnRwX2Jhc2Vfa2V5X2xl
bik7CiAgICAgaWYgKHN0YXQpIHsKLSAgICAgIC8qIHplcm9pemUgdGVtcCBidWZmZXIgKi8KLSAg
ICAgIG9jdGV0X3N0cmluZ19zZXRfdG9femVybyh0bXBfa2V5LCBNQVhfU1JUUF9LRVlfTEVOKTsK
LSAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfaW5pdF9mYWlsOworICAgICAgICAvKiB6ZXJv
aXplIHRlbXAgYnVmZmVyICovCisgICAgICAgIG9jdGV0X3N0cmluZ19zZXRfdG9femVybyh0bXBf
a2V5LCBNQVhfU1JUUF9LRVlfTEVOKTsKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19p
bml0X2ZhaWw7CiAgICAgfQotICAgIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAiZXh0ZW5zaW9ucyBj
aXBoZXIga2V5OiAlcyIsCi0gICAgICAgICAgc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZyh0
bXBfa2V5LCBydHBfeHRuX2hkcl9iYXNlX2tleV9sZW4pKTsKKyAgICBkZWJ1Z19wcmludChtb2Rf
c3J0cCwgImNpcGhlciBrZXk6ICVzIiwKKyAgICAgICAgICAgICAgICBzcnRwX29jdGV0X3N0cmlu
Z19oZXhfc3RyaW5nKHRtcF9rZXksIHJ0cF9iYXNlX2tleV9sZW4pKTsKIAogICAgIC8qCiAgICAg
ICogaWYgdGhlIGNpcGhlciBpbiB0aGUgc3J0cCBjb250ZXh0IHVzZXMgYSBzYWx0LCB0aGVuIHdl
IG5lZWQKICAgICAgKiB0byBnZW5lcmF0ZSB0aGUgc2FsdCB2YWx1ZQogICAgICAqLwotICAgIGlm
IChydHBfeHRuX2hkcl9zYWx0X2xlbiA+IDApIHsKLSAgICAgIGRlYnVnX3ByaW50KG1vZF9zcnRw
LCAiZm91bmQgcnRwX3h0bl9oZHJfc2FsdF9sZW4gPiAwLCBnZW5lcmF0aW5nIHNhbHQiLCBOVUxM
KTsKLQotICAgICAgLyogZ2VuZXJhdGUgZW5jcnlwdGlvbiBzYWx0LCBwdXQgYWZ0ZXIgZW5jcnlw
dGlvbiBrZXkgKi8KLSAgICAgIHN0YXQgPSBzcnRwX2tkZl9nZW5lcmF0ZSh4dG5faGRyX2tkZiwg
bGFiZWxfcnRwX2hlYWRlcl9zYWx0LAotICAgICAgICAgICAgIHRtcF9rZXkgKyBydHBfeHRuX2hk
cl9iYXNlX2tleV9sZW4sIHJ0cF94dG5faGRyX3NhbHRfbGVuKTsKLSAgICAgIGlmIChzdGF0KSB7
Ci0gICAgICAgIC8qIHplcm9pemUgdGVtcCBidWZmZXIgKi8KLSAgICAgICAgb2N0ZXRfc3RyaW5n
X3NldF90b196ZXJvKHRtcF9rZXksIE1BWF9TUlRQX0tFWV9MRU4pOwotICAgICAgICByZXR1cm4g
c3J0cF9lcnJfc3RhdHVzX2luaXRfZmFpbDsKLSAgICAgIH0KKyAgICBpZiAocnRwX3NhbHRfbGVu
ID4gMCkgeworICAgICAgICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgImZvdW5kIHJ0cF9zYWx0X2xl
biA+IDAsIGdlbmVyYXRpbmcgc2FsdCIsIE5VTEwpOworCisgICAgICAgIC8qIGdlbmVyYXRlIGVu
Y3J5cHRpb24gc2FsdCwgcHV0IGFmdGVyIGVuY3J5cHRpb24ga2V5ICovCisgICAgICAgIHN0YXQg
PSBzcnRwX2tkZl9nZW5lcmF0ZSgma2RmLCBsYWJlbF9ydHBfc2FsdCwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHRtcF9rZXkgKyBydHBfYmFzZV9rZXlfbGVuLCBydHBfc2FsdF9s
ZW4pOworICAgICAgICBpZiAoc3RhdCkgeworICAgICAgICAgICAgLyogemVyb2l6ZSB0ZW1wIGJ1
ZmZlciAqLworICAgICAgICAgICAgb2N0ZXRfc3RyaW5nX3NldF90b196ZXJvKHRtcF9rZXksIE1B
WF9TUlRQX0tFWV9MRU4pOworICAgICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19pbml0
X2ZhaWw7CisgICAgICAgIH0KKyAgICAgICAgbWVtY3B5KHNlc3Npb25fa2V5cy0+c2FsdCwgdG1w
X2tleSArIHJ0cF9iYXNlX2tleV9sZW4sCisgICAgICAgICAgICAgICBTUlRQX0FFQURfU0FMVF9M
RU4pOwogICAgIH0KLSAgICBpZiAocnRwX3h0bl9oZHJfc2FsdF9sZW4gPiAwKSB7Ci0gICAgICBk
ZWJ1Z19wcmludChtb2Rfc3J0cCwgImV4dGVuc2lvbnMgY2lwaGVyIHNhbHQ6ICVzIiwKLSAgICAg
IHNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcodG1wX2tleSArIHJ0cF94dG5faGRyX2Jhc2Vf
a2V5X2xlbiwgcnRwX3h0bl9oZHJfc2FsdF9sZW4pKTsKKyAgICBpZiAocnRwX3NhbHRfbGVuID4g
MCkgeworICAgICAgICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgImNpcGhlciBzYWx0OiAlcyIsCisg
ICAgICAgICAgICAgICAgICAgIHNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcodG1wX2tleSAr
IHJ0cF9iYXNlX2tleV9sZW4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgcnRwX3NhbHRfbGVuKSk7CiAgICAgfQogCi0gICAgLyogaW5pdGlhbGl6ZSBl
eHRlbnNpb25zIGhlYWRlciBjaXBoZXIgKi8KLSAgICBzdGF0ID0gc3J0cF9jaXBoZXJfaW5pdChz
ZXNzaW9uX2tleXMtPnJ0cF94dG5faGRyX2NpcGhlciwgdG1wX2tleSk7CisgICAgLyogaW5pdGlh
bGl6ZSBjaXBoZXIgKi8KKyAgICBzdGF0ID0gc3J0cF9jaXBoZXJfaW5pdChzZXNzaW9uX2tleXMt
PnJ0cF9jaXBoZXIsIHRtcF9rZXkpOwogICAgIGlmIChzdGF0KSB7Ci0gICAgICAvKiB6ZXJvaXpl
IHRlbXAgYnVmZmVyICovCi0gICAgICBvY3RldF9zdHJpbmdfc2V0X3RvX3plcm8odG1wX2tleSwg
TUFYX1NSVFBfS0VZX0xFTik7Ci0gICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2luaXRfZmFp
bDsKLSAgICB9Ci0KLSAgICBpZiAoeHRuX2hkcl9rZGYgIT0gJmtkZikgewotICAgICAgLyogcmVs
ZWFzZSBtZW1vcnkgZm9yIGN1c3RvbSBoZWFkZXIgZXh0ZW5zaW9uIGVuY3J5cHRpb24ga2RmICov
Ci0gICAgICBzdGF0ID0gc3J0cF9rZGZfY2xlYXIoeHRuX2hkcl9rZGYpOwotICAgICAgaWYgKHN0
YXQpIHsKICAgICAgICAgLyogemVyb2l6ZSB0ZW1wIGJ1ZmZlciAqLwogICAgICAgICBvY3RldF9z
dHJpbmdfc2V0X3RvX3plcm8odG1wX2tleSwgTUFYX1NSVFBfS0VZX0xFTik7CiAgICAgICAgIHJl
dHVybiBzcnRwX2Vycl9zdGF0dXNfaW5pdF9mYWlsOwotICAgICAgfQogICAgIH0KLSAgfQotCi0g
IC8qIGdlbmVyYXRlIGF1dGhlbnRpY2F0aW9uIGtleSAqLwotICBzdGF0ID0gc3J0cF9rZGZfZ2Vu
ZXJhdGUoJmtkZiwgbGFiZWxfcnRwX21zZ19hdXRoLAotCQkJICAgdG1wX2tleSwgc3J0cF9hdXRo
X2dldF9rZXlfbGVuZ3RoKHNlc3Npb25fa2V5cy0+cnRwX2F1dGgpKTsKLSAgaWYgKHN0YXQpIHsK
LSAgICAvKiB6ZXJvaXplIHRlbXAgYnVmZmVyICovCi0gICAgb2N0ZXRfc3RyaW5nX3NldF90b196
ZXJvKHRtcF9rZXksIE1BWF9TUlRQX0tFWV9MRU4pOwotICAgIHJldHVybiBzcnRwX2Vycl9zdGF0
dXNfaW5pdF9mYWlsOwotICB9Ci0gIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAiYXV0aCBrZXk6ICAg
JXMiLAotCSAgICAgIHNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcodG1wX2tleSwgCi0JCQkJ
ICAgICAgc3J0cF9hdXRoX2dldF9rZXlfbGVuZ3RoKHNlc3Npb25fa2V5cy0+cnRwX2F1dGgpKSk7
IAotCi0gIC8qIGluaXRpYWxpemUgYXV0aCBmdW5jdGlvbiAqLwotICBzdGF0ID0gc3J0cF9hdXRo
X2luaXQoc2Vzc2lvbl9rZXlzLT5ydHBfYXV0aCwgdG1wX2tleSk7Ci0gIGlmIChzdGF0KSB7Ci0g
ICAgLyogemVyb2l6ZSB0ZW1wIGJ1ZmZlciAqLwotICAgIG9jdGV0X3N0cmluZ19zZXRfdG9femVy
byh0bXBfa2V5LCBNQVhfU1JUUF9LRVlfTEVOKTsKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVz
X2luaXRfZmFpbDsKLSAgfQotCi0gIC8qCi0gICAqIC4uLm5vdyBpbml0aWFsaXplIFNSVENQIGtl
eXMKLSAgICovCi0KLSAgcnRjcF9iYXNlX2tleV9sZW4gPSBiYXNlX2tleV9sZW5ndGgoc2Vzc2lv
bl9rZXlzLT5ydGNwX2NpcGhlci0+dHlwZSwgcnRjcF9rZXlsZW4pOwotICBydGNwX3NhbHRfbGVu
ID0gcnRjcF9rZXlsZW4gLSBydGNwX2Jhc2Vfa2V5X2xlbjsKLSAgZGVidWdfcHJpbnQobW9kX3Ny
dHAsICJydGNwIHNhbHQgbGVuOiAlZCIsIHJ0Y3Bfc2FsdF9sZW4pOwotICAKLSAgLyogZ2VuZXJh
dGUgZW5jcnlwdGlvbiBrZXkgICovCi0gIHN0YXQgPSBzcnRwX2tkZl9nZW5lcmF0ZSgma2RmLCBs
YWJlbF9ydGNwX2VuY3J5cHRpb24sIAotCQkJICAgdG1wX2tleSwgcnRjcF9iYXNlX2tleV9sZW4p
OwotICBpZiAoc3RhdCkgewotICAgIC8qIHplcm9pemUgdGVtcCBidWZmZXIgKi8KLSAgICBvY3Rl
dF9zdHJpbmdfc2V0X3RvX3plcm8odG1wX2tleSwgTUFYX1NSVFBfS0VZX0xFTik7Ci0gICAgcmV0
dXJuIHNydHBfZXJyX3N0YXR1c19pbml0X2ZhaWw7Ci0gIH0KLQotICAvKiAKLSAgICogaWYgdGhl
IGNpcGhlciBpbiB0aGUgc3J0cCBjb250ZXh0IHVzZXMgYSBzYWx0LCB0aGVuIHdlIG5lZWQKLSAg
ICogdG8gZ2VuZXJhdGUgdGhlIHNhbHQgdmFsdWUKLSAgICovCi0gIGlmIChydGNwX3NhbHRfbGVu
ID4gMCkgewotICAgIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAiZm91bmQgcnRjcF9zYWx0X2xlbiA+
IDAsIGdlbmVyYXRpbmcgcnRjcCBzYWx0IiwKLQkJTlVMTCk7Ci0KLSAgICAvKiBnZW5lcmF0ZSBl
bmNyeXB0aW9uIHNhbHQsIHB1dCBhZnRlciBlbmNyeXB0aW9uIGtleSAqLwotICAgIHN0YXQgPSBz
cnRwX2tkZl9nZW5lcmF0ZSgma2RmLCBsYWJlbF9ydGNwX3NhbHQsIAotCQkJICAgICB0bXBfa2V5
ICsgcnRjcF9iYXNlX2tleV9sZW4sIHJ0Y3Bfc2FsdF9sZW4pOwotICAgIGlmIChzdGF0KSB7Ci0g
ICAgICAvKiB6ZXJvaXplIHRlbXAgYnVmZmVyICovCi0gICAgICBvY3RldF9zdHJpbmdfc2V0X3Rv
X3plcm8odG1wX2tleSwgTUFYX1NSVFBfS0VZX0xFTik7Ci0gICAgICByZXR1cm4gc3J0cF9lcnJf
c3RhdHVzX2luaXRfZmFpbDsKLSAgICB9Ci0gICAgbWVtY3B5KHNlc3Npb25fa2V5cy0+Y19zYWx0
LCB0bXBfa2V5ICsgcnRjcF9iYXNlX2tleV9sZW4sIFNSVFBfQUVBRF9TQUxUX0xFTik7Ci0gIH0K
LSAgZGVidWdfcHJpbnQobW9kX3NydHAsICJydGNwIGNpcGhlciBrZXk6ICVzIiwgCi0JICAgICAg
c3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZyh0bXBfa2V5LCBydGNwX2Jhc2Vfa2V5X2xlbikp
OyAgCi0gIGlmIChydGNwX3NhbHRfbGVuID4gMCkgewotICAgIGRlYnVnX3ByaW50KG1vZF9zcnRw
LCAicnRjcCBjaXBoZXIgc2FsdDogJXMiLAotCQlzcnRwX29jdGV0X3N0cmluZ19oZXhfc3RyaW5n
KHRtcF9rZXkgKyBydGNwX2Jhc2Vfa2V5X2xlbiwgcnRjcF9zYWx0X2xlbikpOwotICB9Ci0KLSAg
LyogaW5pdGlhbGl6ZSBjaXBoZXIgKi8KLSAgc3RhdCA9IHNydHBfY2lwaGVyX2luaXQoc2Vzc2lv
bl9rZXlzLT5ydGNwX2NpcGhlciwgdG1wX2tleSk7Ci0gIGlmIChzdGF0KSB7Ci0gICAgLyogemVy
b2l6ZSB0ZW1wIGJ1ZmZlciAqLwotICAgIG9jdGV0X3N0cmluZ19zZXRfdG9femVybyh0bXBfa2V5
LCBNQVhfU1JUUF9LRVlfTEVOKTsKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2luaXRfZmFp
bDsKLSAgfQotCi0gIC8qIGdlbmVyYXRlIGF1dGhlbnRpY2F0aW9uIGtleSAqLwotICBzdGF0ID0g
c3J0cF9rZGZfZ2VuZXJhdGUoJmtkZiwgbGFiZWxfcnRjcF9tc2dfYXV0aCwKLQkJCSAgIHRtcF9r
ZXksIHNydHBfYXV0aF9nZXRfa2V5X2xlbmd0aChzZXNzaW9uX2tleXMtPnJ0Y3BfYXV0aCkpOwot
ICBpZiAoc3RhdCkgewotICAgIC8qIHplcm9pemUgdGVtcCBidWZmZXIgKi8KLSAgICBvY3RldF9z
dHJpbmdfc2V0X3RvX3plcm8odG1wX2tleSwgTUFYX1NSVFBfS0VZX0xFTik7Ci0gICAgcmV0dXJu
IHNydHBfZXJyX3N0YXR1c19pbml0X2ZhaWw7Ci0gIH0KLQotICBkZWJ1Z19wcmludChtb2Rfc3J0
cCwgInJ0Y3AgYXV0aCBrZXk6ICAgJXMiLAotCSAgICAgIHNydHBfb2N0ZXRfc3RyaW5nX2hleF9z
dHJpbmcodG1wX2tleSwgCi0JCSAgICAgc3J0cF9hdXRoX2dldF9rZXlfbGVuZ3RoKHNlc3Npb25f
a2V5cy0+cnRjcF9hdXRoKSkpOyAKLQotICAvKiBpbml0aWFsaXplIGF1dGggZnVuY3Rpb24gKi8K
LSAgc3RhdCA9IHNydHBfYXV0aF9pbml0KHNlc3Npb25fa2V5cy0+cnRjcF9hdXRoLCB0bXBfa2V5
KTsKLSAgaWYgKHN0YXQpIHsKLSAgICAvKiB6ZXJvaXplIHRlbXAgYnVmZmVyICovCi0gICAgb2N0
ZXRfc3RyaW5nX3NldF90b196ZXJvKHRtcF9rZXksIE1BWF9TUlRQX0tFWV9MRU4pOwotICAgIHJl
dHVybiBzcnRwX2Vycl9zdGF0dXNfaW5pdF9mYWlsOwotICB9CiAKLSAgLyogY2xlYXIgbWVtb3J5
IHRoZW4gcmV0dXJuICovCi0gIHN0YXQgPSBzcnRwX2tkZl9jbGVhcigma2RmKTsKLSAgb2N0ZXRf
c3RyaW5nX3NldF90b196ZXJvKHRtcF9rZXksIE1BWF9TUlRQX0tFWV9MRU4pOwotICBpZiAoc3Rh
dCkKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2luaXRfZmFpbDsKKyAgICBpZiAoc2Vzc2lv
bl9rZXlzLT5ydHBfeHRuX2hkcl9jaXBoZXIpIHsKKyAgICAgICAgLyogZ2VuZXJhdGUgZXh0ZW5z
aW9ucyBoZWFkZXIgZW5jcnlwdGlvbiBrZXkgICovCisgICAgICAgIGludCBydHBfeHRuX2hkcl9r
ZXlsZW47CisgICAgICAgIGludCBydHBfeHRuX2hkcl9iYXNlX2tleV9sZW47CisgICAgICAgIGlu
dCBydHBfeHRuX2hkcl9zYWx0X2xlbjsKKyAgICAgICAgc3J0cF9rZGZfdCB0bXBfa2RmOworICAg
ICAgICBzcnRwX2tkZl90ICp4dG5faGRyX2tkZjsKKworICAgICAgICBpZiAoc2Vzc2lvbl9rZXlz
LT5ydHBfeHRuX2hkcl9jaXBoZXItPnR5cGUgIT0KKyAgICAgICAgICAgIHNlc3Npb25fa2V5cy0+
cnRwX2NpcGhlci0+dHlwZSkgeworICAgICAgICAgICAgLyoKKyAgICAgICAgICAgICAqIFdpdGgg
R0NNIGNpcGhlcnMsIHRoZSBoZWFkZXIgZXh0ZW5zaW9ucyBhcmUgc3RpbGwgZW5jcnlwdGVkIHVz
aW5nCisgICAgICAgICAgICAgKiB0aGUgY29ycmVzcG9uZGluZyBJQ00gY2lwaGVyLgorICAgICAg
ICAgICAgICogU2VlIGh0dHBzOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmM3NzE0I3NlY3Rpb24t
OC4zCisgICAgICAgICAgICAgKi8KKyAgICAgICAgICAgIHVpbnQ4X3QgdG1wX3h0bl9oZHJfa2V5
W01BWF9TUlRQX0tFWV9MRU5dOworICAgICAgICAgICAgcnRwX3h0bl9oZHJfa2V5bGVuID0KKyAg
ICAgICAgICAgICAgICBzcnRwX2NpcGhlcl9nZXRfa2V5X2xlbmd0aChzZXNzaW9uX2tleXMtPnJ0
cF94dG5faGRyX2NpcGhlcik7CisgICAgICAgICAgICBydHBfeHRuX2hkcl9iYXNlX2tleV9sZW4g
PSBiYXNlX2tleV9sZW5ndGgoCisgICAgICAgICAgICAgICAgc2Vzc2lvbl9rZXlzLT5ydHBfeHRu
X2hkcl9jaXBoZXItPnR5cGUsIHJ0cF94dG5faGRyX2tleWxlbik7CisgICAgICAgICAgICBydHBf
eHRuX2hkcl9zYWx0X2xlbiA9CisgICAgICAgICAgICAgICAgcnRwX3h0bl9oZHJfa2V5bGVuIC0g
cnRwX3h0bl9oZHJfYmFzZV9rZXlfbGVuOworICAgICAgICAgICAgaWYgKHJ0cF94dG5faGRyX3Nh
bHRfbGVuID4gcnRwX3NhbHRfbGVuKSB7CisgICAgICAgICAgICAgICAgc3dpdGNoIChzZXNzaW9u
X2tleXMtPnJ0cF9jaXBoZXItPnR5cGUtPmlkKSB7CisgICAgICAgICAgICAgICAgY2FzZSBTUlRQ
X0FFU19HQ01fMTI4OgorICAgICAgICAgICAgICAgIGNhc2UgU1JUUF9BRVNfR0NNXzI1NjoKKyAg
ICAgICAgICAgICAgICAgICAgLyoKKyAgICAgICAgICAgICAgICAgICAgICogVGhlIHNob3J0ZXIg
R0NNIHNhbHQgaXMgcGFkZGVkIHRvIHRoZSByZXF1aXJlZCBJQ00gc2FsdAorICAgICAgICAgICAg
ICAgICAgICAgKiBsZW5ndGguCisgICAgICAgICAgICAgICAgICAgICAqLworICAgICAgICAgICAg
ICAgICAgICBydHBfeHRuX2hkcl9zYWx0X2xlbiA9IHJ0cF9zYWx0X2xlbjsKKyAgICAgICAgICAg
ICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgICAg
ICAgICAgLyogemVyb2l6ZSB0ZW1wIGJ1ZmZlciAqLworICAgICAgICAgICAgICAgICAgICBvY3Rl
dF9zdHJpbmdfc2V0X3RvX3plcm8odG1wX2tleSwgTUFYX1NSVFBfS0VZX0xFTik7CisgICAgICAg
ICAgICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtOworICAgICAgICAg
ICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIG1lbXNldCh0bXBfeHRuX2hkcl9r
ZXksIDB4MCwgTUFYX1NSVFBfS0VZX0xFTik7CisgICAgICAgICAgICBtZW1jcHkodG1wX3h0bl9o
ZHJfa2V5LCBrZXksCisgICAgICAgICAgICAgICAgICAgKHJ0cF94dG5faGRyX2Jhc2Vfa2V5X2xl
biArIHJ0cF94dG5faGRyX3NhbHRfbGVuKSk7CisgICAgICAgICAgICB4dG5faGRyX2tkZiA9ICZ0
bXBfa2RmOwogCi0gIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7Ci19CisvKiBpbml0aWFsaXpl
IEtERiBzdGF0ZSAqLworI2lmIGRlZmluZWQoT1BFTlNTTCkgJiYgZGVmaW5lZChPUEVOU1NMX0tE
RikKKyAgICAgICAgICAgIHN0YXQgPQorICAgICAgICAgICAgICAgIHNydHBfa2RmX2luaXQoeHRu
X2hkcl9rZGYsIChjb25zdCB1aW50OF90ICopdG1wX3h0bl9oZHJfa2V5LAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgcnRwX3h0bl9oZHJfYmFzZV9rZXlfbGVuLCBydHBfeHRuX2hkcl9z
YWx0X2xlbik7CisjZWxzZQorICAgICAgICAgICAgc3RhdCA9IHNydHBfa2RmX2luaXQoeHRuX2hk
cl9rZGYsIChjb25zdCB1aW50OF90ICopdG1wX3h0bl9oZHJfa2V5LAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAga2RmX2tleWxlbik7CisjZW5kaWYKKyAgICAgICAgICAgIG9jdGV0
X3N0cmluZ19zZXRfdG9femVybyh0bXBfeHRuX2hkcl9rZXksIE1BWF9TUlRQX0tFWV9MRU4pOwor
ICAgICAgICAgICAgaWYgKHN0YXQpIHsKKyAgICAgICAgICAgICAgICAvKiB6ZXJvaXplIHRlbXAg
YnVmZmVyICovCisgICAgICAgICAgICAgICAgb2N0ZXRfc3RyaW5nX3NldF90b196ZXJvKHRtcF9r
ZXksIE1BWF9TUlRQX0tFWV9MRU4pOworICAgICAgICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9z
dGF0dXNfaW5pdF9mYWlsOworICAgICAgICAgICAgfQorICAgICAgICB9IGVsc2UgeworICAgICAg
ICAgICAgLyogUmV1c2UgbWFpbiBLREYuICovCisgICAgICAgICAgICBydHBfeHRuX2hkcl9rZXls
ZW4gPSBydHBfa2V5bGVuOworICAgICAgICAgICAgcnRwX3h0bl9oZHJfYmFzZV9rZXlfbGVuID0g
cnRwX2Jhc2Vfa2V5X2xlbjsKKyAgICAgICAgICAgIHJ0cF94dG5faGRyX3NhbHRfbGVuID0gcnRw
X3NhbHRfbGVuOworICAgICAgICAgICAgeHRuX2hkcl9rZGYgPSAma2RmOworICAgICAgICB9CiAK
LXNydHBfZXJyX3N0YXR1c190Ci1zcnRwX3N0cmVhbV9pbml0KHNydHBfc3RyZWFtX2N0eF90ICpz
cnRwLCAKLQkJICBjb25zdCBzcnRwX3BvbGljeV90ICpwKSB7Ci0gIHNydHBfZXJyX3N0YXR1c190
IGVycjsKKyAgICAgICAgc3RhdCA9IHNydHBfa2RmX2dlbmVyYXRlKHh0bl9oZHJfa2RmLCBsYWJl
bF9ydHBfaGVhZGVyX2VuY3J5cHRpb24sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB0bXBfa2V5LCBydHBfeHRuX2hkcl9iYXNlX2tleV9sZW4pOworICAgICAgICBpZiAoc3RhdCkg
eworICAgICAgICAgICAgLyogemVyb2l6ZSB0ZW1wIGJ1ZmZlciAqLworICAgICAgICAgICAgb2N0
ZXRfc3RyaW5nX3NldF90b196ZXJvKHRtcF9rZXksIE1BWF9TUlRQX0tFWV9MRU4pOworICAgICAg
ICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19pbml0X2ZhaWw7CisgICAgICAgIH0KKyAgICAg
ICAgZGVidWdfcHJpbnQoCisgICAgICAgICAgICBtb2Rfc3J0cCwgImV4dGVuc2lvbnMgY2lwaGVy
IGtleTogJXMiLAorICAgICAgICAgICAgc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZyh0bXBf
a2V5LCBydHBfeHRuX2hkcl9iYXNlX2tleV9sZW4pKTsKIAotICAgZGVidWdfcHJpbnQobW9kX3Ny
dHAsICJpbml0aWFsaXppbmcgc3RyZWFtIChTU1JDOiAweCUwOHgpIiwgCi0JICAgICAgIHAtPnNz
cmMudmFsdWUpOworICAgICAgICAvKgorICAgICAgICAgKiBpZiB0aGUgY2lwaGVyIGluIHRoZSBz
cnRwIGNvbnRleHQgdXNlcyBhIHNhbHQsIHRoZW4gd2UgbmVlZAorICAgICAgICAgKiB0byBnZW5l
cmF0ZSB0aGUgc2FsdCB2YWx1ZQorICAgICAgICAgKi8KKyAgICAgICAgaWYgKHJ0cF94dG5faGRy
X3NhbHRfbGVuID4gMCkgeworICAgICAgICAgICAgZGVidWdfcHJpbnQobW9kX3NydHAsCisgICAg
ICAgICAgICAgICAgICAgICAgICAiZm91bmQgcnRwX3h0bl9oZHJfc2FsdF9sZW4gPiAwLCBnZW5l
cmF0aW5nIHNhbHQiLAorICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCk7CisKKyAgICAgICAg
ICAgIC8qIGdlbmVyYXRlIGVuY3J5cHRpb24gc2FsdCwgcHV0IGFmdGVyIGVuY3J5cHRpb24ga2V5
ICovCisgICAgICAgICAgICBzdGF0ID0gc3J0cF9rZGZfZ2VuZXJhdGUoeHRuX2hkcl9rZGYsIGxh
YmVsX3J0cF9oZWFkZXJfc2FsdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB0bXBfa2V5ICsgcnRwX3h0bl9oZHJfYmFzZV9rZXlfbGVuLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHJ0cF94dG5faGRyX3NhbHRfbGVuKTsKKyAgICAgICAgICAgIGlm
IChzdGF0KSB7CisgICAgICAgICAgICAgICAgLyogemVyb2l6ZSB0ZW1wIGJ1ZmZlciAqLworICAg
ICAgICAgICAgICAgIG9jdGV0X3N0cmluZ19zZXRfdG9femVybyh0bXBfa2V5LCBNQVhfU1JUUF9L
RVlfTEVOKTsKKyAgICAgICAgICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2luaXRfZmFp
bDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgICAgICBpZiAocnRwX3h0bl9oZHJfc2Fs
dF9sZW4gPiAwKSB7CisgICAgICAgICAgICBkZWJ1Z19wcmludCgKKyAgICAgICAgICAgICAgICBt
b2Rfc3J0cCwgImV4dGVuc2lvbnMgY2lwaGVyIHNhbHQ6ICVzIiwKKyAgICAgICAgICAgICAgICBz
cnRwX29jdGV0X3N0cmluZ19oZXhfc3RyaW5nKHRtcF9rZXkgKyBydHBfeHRuX2hkcl9iYXNlX2tl
eV9sZW4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBydHBf
eHRuX2hkcl9zYWx0X2xlbikpOworICAgICAgICB9CiAKLSAgIC8qIGluaXRpYWxpemUgcmVwbGF5
IGRhdGFiYXNlICovCi0gICAvKiB3aW5kb3cgc2l6ZSBNVVNUIGJlIGF0IGxlYXN0IDY0LiAgTUFZ
IGJlIGxhcmdlci4gIFZhbHVlcyBtb3JlIHRoYW4KLSAgICAqIDJeMTUgYXJlbid0IG1lYW5pbmdm
dWwgZHVlIHRvIGhvdyBleHRlbmRlZCBzZXF1ZW5jZSBudW1iZXJzIGFyZQotICAgICogY2FsY3Vs
YXRlZC4gICBMZXQgYSB3aW5kb3cgc2l6ZSBvZiAwIGltcGx5IHRoZSBkZWZhdWx0IHZhbHVlLiAq
LworICAgICAgICAvKiBpbml0aWFsaXplIGV4dGVuc2lvbnMgaGVhZGVyIGNpcGhlciAqLworICAg
ICAgICBzdGF0ID0gc3J0cF9jaXBoZXJfaW5pdChzZXNzaW9uX2tleXMtPnJ0cF94dG5faGRyX2Np
cGhlciwgdG1wX2tleSk7CisgICAgICAgIGlmIChzdGF0KSB7CisgICAgICAgICAgICAvKiB6ZXJv
aXplIHRlbXAgYnVmZmVyICovCisgICAgICAgICAgICBvY3RldF9zdHJpbmdfc2V0X3RvX3plcm8o
dG1wX2tleSwgTUFYX1NSVFBfS0VZX0xFTik7CisgICAgICAgICAgICByZXR1cm4gc3J0cF9lcnJf
c3RhdHVzX2luaXRfZmFpbDsKKyAgICAgICAgfQogCi0gICBpZiAocC0+d2luZG93X3NpemUgIT0g
MCAmJiAocC0+d2luZG93X3NpemUgPCA2NCB8fCBwLT53aW5kb3dfc2l6ZSA+PSAweDgwMDApKQot
ICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJhbTsKKyAgICAgICAgaWYgKHh0bl9o
ZHJfa2RmICE9ICZrZGYpIHsKKyAgICAgICAgICAgIC8qIHJlbGVhc2UgbWVtb3J5IGZvciBjdXN0
b20gaGVhZGVyIGV4dGVuc2lvbiBlbmNyeXB0aW9uIGtkZiAqLworICAgICAgICAgICAgc3RhdCA9
IHNydHBfa2RmX2NsZWFyKHh0bl9oZHJfa2RmKTsKKyAgICAgICAgICAgIGlmIChzdGF0KSB7Cisg
ICAgICAgICAgICAgICAgLyogemVyb2l6ZSB0ZW1wIGJ1ZmZlciAqLworICAgICAgICAgICAgICAg
IG9jdGV0X3N0cmluZ19zZXRfdG9femVybyh0bXBfa2V5LCBNQVhfU1JUUF9LRVlfTEVOKTsKKyAg
ICAgICAgICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2luaXRfZmFpbDsKKyAgICAgICAg
ICAgIH0KKyAgICAgICAgfQorICAgIH0KIAotICAgaWYgKHAtPndpbmRvd19zaXplICE9IDApCi0g
ICAgIGVyciA9IHNydHBfcmRieF9pbml0KCZzcnRwLT5ydHBfcmRieCwgcC0+d2luZG93X3NpemUp
OwotICAgZWxzZQotICAgICBlcnIgPSBzcnRwX3JkYnhfaW5pdCgmc3J0cC0+cnRwX3JkYngsIDEy
OCk7Ci0gICBpZiAoZXJyKSByZXR1cm4gZXJyOworICAgIC8qIGdlbmVyYXRlIGF1dGhlbnRpY2F0
aW9uIGtleSAqLworICAgIHN0YXQgPSBzcnRwX2tkZl9nZW5lcmF0ZSgma2RmLCBsYWJlbF9ydHBf
bXNnX2F1dGgsIHRtcF9rZXksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfYXV0
aF9nZXRfa2V5X2xlbmd0aChzZXNzaW9uX2tleXMtPnJ0cF9hdXRoKSk7CisgICAgaWYgKHN0YXQp
IHsKKyAgICAgICAgLyogemVyb2l6ZSB0ZW1wIGJ1ZmZlciAqLworICAgICAgICBvY3RldF9zdHJp
bmdfc2V0X3RvX3plcm8odG1wX2tleSwgTUFYX1NSVFBfS0VZX0xFTik7CisgICAgICAgIHJldHVy
biBzcnRwX2Vycl9zdGF0dXNfaW5pdF9mYWlsOworICAgIH0KKyAgICBkZWJ1Z19wcmludChtb2Rf
c3J0cCwgImF1dGgga2V5OiAgICVzIiwKKyAgICAgICAgICAgICAgICBzcnRwX29jdGV0X3N0cmlu
Z19oZXhfc3RyaW5nKAorICAgICAgICAgICAgICAgICAgICB0bXBfa2V5LCBzcnRwX2F1dGhfZ2V0
X2tleV9sZW5ndGgoc2Vzc2lvbl9rZXlzLT5ydHBfYXV0aCkpKTsKIAotICAgLyogc2V0IHRoZSBT
U1JDIHZhbHVlICovCi0gICBzcnRwLT5zc3JjID0gaHRvbmwocC0+c3NyYy52YWx1ZSk7CisgICAg
LyogaW5pdGlhbGl6ZSBhdXRoIGZ1bmN0aW9uICovCisgICAgc3RhdCA9IHNydHBfYXV0aF9pbml0
KHNlc3Npb25fa2V5cy0+cnRwX2F1dGgsIHRtcF9rZXkpOworICAgIGlmIChzdGF0KSB7CisgICAg
ICAgIC8qIHplcm9pemUgdGVtcCBidWZmZXIgKi8KKyAgICAgICAgb2N0ZXRfc3RyaW5nX3NldF90
b196ZXJvKHRtcF9rZXksIE1BWF9TUlRQX0tFWV9MRU4pOworICAgICAgICByZXR1cm4gc3J0cF9l
cnJfc3RhdHVzX2luaXRfZmFpbDsKKyAgICB9CiAKLSAgIC8qIHJlc2V0IHBlbmRpbmcgUk9DICov
Ci0gICBzcnRwLT5wZW5kaW5nX3JvYyA9IDA7CisgICAgLyoKKyAgICAgKiAuLi5ub3cgaW5pdGlh
bGl6ZSBTUlRDUCBrZXlzCisgICAgICovCiAKLSAgIC8qIHNldCB0aGUgc2VjdXJpdHkgc2Vydmlj
ZSBmbGFncyAqLwotICAgc3J0cC0+cnRwX3NlcnZpY2VzICA9IHAtPnJ0cC5zZWNfc2VydjsKLSAg
IHNydHAtPnJ0Y3Bfc2VydmljZXMgPSBwLT5ydGNwLnNlY19zZXJ2OworICAgIHJ0Y3BfYmFzZV9r
ZXlfbGVuID0KKyAgICAgICAgYmFzZV9rZXlfbGVuZ3RoKHNlc3Npb25fa2V5cy0+cnRjcF9jaXBo
ZXItPnR5cGUsIHJ0Y3Bfa2V5bGVuKTsKKyAgICBydGNwX3NhbHRfbGVuID0gcnRjcF9rZXlsZW4g
LSBydGNwX2Jhc2Vfa2V5X2xlbjsKKyAgICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgInJ0Y3Agc2Fs
dCBsZW46ICVkIiwgcnRjcF9zYWx0X2xlbik7CiAKLSAgIC8qCi0gICAgKiBzZXQgZGlyZWN0aW9u
IHRvIHVua25vd24gLSB0aGlzIGZsYWcgZ2V0cyBjaGVja2VkIGluIHNydHBfcHJvdGVjdCgpLAot
ICAgICogc3J0cF91bnByb3RlY3QoKSwgc3J0cF9wcm90ZWN0X3J0Y3AoKSwgYW5kIHNydHBfdW5w
cm90ZWN0X3J0Y3AoKSwgYW5kIAotICAgICogZ2V0cyBzZXQgYXBwcm9wcmlhdGVseSBpZiBpdCBp
cyBzZXQgdG8gdW5rbm93bi4KLSAgICAqLwotICAgc3J0cC0+ZGlyZWN0aW9uID0gZGlyX3Vua25v
d247Ci0KLSAgIC8qIGluaXRpYWxpemUgU1JUQ1AgcmVwbGF5IGRhdGFiYXNlICovCi0gICBzcnRw
X3JkYl9pbml0KCZzcnRwLT5ydGNwX3JkYik7Ci0KLSAgIC8qIGluaXRpYWxpemUgYWxsb3dfcmVw
ZWF0X3R4ICovCi0gICAvKiBndWFyZCBhZ2FpbnN0IHVuaW5pdGlhbGl6ZWQgbWVtb3J5OiBhbGxv
dyBvbmx5IDAgb3IgMSBoZXJlICovCi0gICBpZiAocC0+YWxsb3dfcmVwZWF0X3R4ICE9IDAgJiYg
cC0+YWxsb3dfcmVwZWF0X3R4ICE9IDEpIHsKLSAgICAgc3J0cF9yZGJ4X2RlYWxsb2MoJnNydHAt
PnJ0cF9yZGJ4KTsKLSAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW07Ci0gICB9
Ci0gICBzcnRwLT5hbGxvd19yZXBlYXRfdHggPSBwLT5hbGxvd19yZXBlYXRfdHg7Ci0KLSAgIC8q
IERBTSAtIG5vIFJUQ1Aga2V5IGxpbWl0IGF0IHByZXNlbnQgKi8KLQotICAgLyogaW5pdGlhbGl6
ZSBrZXlzICovCi0gICBlcnIgPSBzcnRwX3N0cmVhbV9pbml0X2FsbF9tYXN0ZXJfa2V5cyhzcnRw
LCBwLT5rZXksIHAtPmtleXMsIHAtPm51bV9tYXN0ZXJfa2V5cyk7Ci0gICBpZiAoZXJyKSB7Ci0g
ICAgIHNydHBfcmRieF9kZWFsbG9jKCZzcnRwLT5ydHBfcmRieCk7Ci0gICAgIHJldHVybiBlcnI7
Ci0gICB9Ci0KLSAgIC8qIAotICAgICogaWYgRUtUIGlzIGluIHVzZSwgdGhlbiBpbml0aWFsaXpl
IHRoZSBFS1QgZGF0YSBhc3NvY2lhdGVkIHdpdGgKLSAgICAqIHRoZSBzdHJlYW0KLSAgICAqLwot
ICAgZXJyID0gc3J0cF9la3Rfc3RyZWFtX2luaXRfZnJvbV9wb2xpY3koc3J0cC0+ZWt0LCBwLT5l
a3QpOwotICAgaWYgKGVycikgewotICAgICBzcnRwX3JkYnhfZGVhbGxvYygmc3J0cC0+cnRwX3Jk
YngpOwotICAgICByZXR1cm4gZXJyOwotICAgfQotCi0gICByZXR1cm4gc3J0cF9lcnJfc3RhdHVz
X29rOyAgCi0gfQotCi0KLSAvKgotICAqIHNydHBfZXZlbnRfcmVwb3J0ZXIgaXMgYW4gZXZlbnQg
aGFuZGxlciBmdW5jdGlvbiB0aGF0IG1lcmVseQotICAqIHJlcG9ydHMgdGhlIGV2ZW50cyB0aGF0
IGFyZSByZXBvcnRlZCBieSB0aGUgY2FsbGJhY2tzCi0gICovCi0KLSB2b2lkCi0gc3J0cF9ldmVu
dF9yZXBvcnRlcihzcnRwX2V2ZW50X2RhdGFfdCAqZGF0YSkgewotCi0gICBzcnRwX2Vycl9yZXBv
cnQoc3J0cF9lcnJfbGV2ZWxfd2FybmluZywgInNydHA6IGluIHN0cmVhbSAweCV4OiAiLCAKLSAg
ICAgICAgICAgICAgICAgICBkYXRhLT5zc3JjKTsKLQotICAgc3dpdGNoKGRhdGEtPmV2ZW50KSB7
Ci0gICBjYXNlIGV2ZW50X3NzcmNfY29sbGlzaW9uOgotICAgICBzcnRwX2Vycl9yZXBvcnQoc3J0
cF9lcnJfbGV2ZWxfd2FybmluZywgIlx0U1NSQyBjb2xsaXNpb25cbiIpOwotICAgICBicmVhazsK
LSAgIGNhc2UgZXZlbnRfa2V5X3NvZnRfbGltaXQ6Ci0gICAgIHNydHBfZXJyX3JlcG9ydChzcnRw
X2Vycl9sZXZlbF93YXJuaW5nLCAiXHRrZXkgdXNhZ2Ugc29mdCBsaW1pdCByZWFjaGVkXG4iKTsK
LSAgICAgYnJlYWs7Ci0gICBjYXNlIGV2ZW50X2tleV9oYXJkX2xpbWl0OgotICAgICBzcnRwX2Vy
cl9yZXBvcnQoc3J0cF9lcnJfbGV2ZWxfd2FybmluZywgIlx0a2V5IHVzYWdlIGhhcmQgbGltaXQg
cmVhY2hlZFxuIik7Ci0gICAgIGJyZWFrOwotICAgY2FzZSBldmVudF9wYWNrZXRfaW5kZXhfbGlt
aXQ6Ci0gICAgIHNydHBfZXJyX3JlcG9ydChzcnRwX2Vycl9sZXZlbF93YXJuaW5nLCAiXHRwYWNr
ZXQgaW5kZXggbGltaXQgcmVhY2hlZFxuIik7Ci0gICAgIGJyZWFrOwotICAgZGVmYXVsdDoKLSAg
ICAgc3J0cF9lcnJfcmVwb3J0KHNydHBfZXJyX2xldmVsX3dhcm5pbmcsICJcdHVua25vd24gZXZl
bnQgcmVwb3J0ZWQgdG8gaGFuZGxlclxuIik7Ci0gICB9Ci0gfQotCi0gLyoKLSAgKiBzcnRwX2V2
ZW50X2hhbmRsZXIgaXMgYSBnbG9iYWwgdmFyaWFibGUgaG9sZGluZyBhIHBvaW50ZXIgdG8gdGhl
Ci0gICogZXZlbnQgaGFuZGxlciBmdW5jdGlvbjsgdGhpcyBmdW5jdGlvbiBpcyBjYWxsZWQgZm9y
IGFueSB1bmV4cGVjdGVkCi0gICogZXZlbnQgdGhhdCBuZWVkcyB0byBiZSBoYW5kbGVkIG91dCBv
ZiB0aGUgU1JUUCBkYXRhIHBhdGguICBzZWUKLSAgKiBzcnRwX2V2ZW50X3QgaW4gc3J0cC5oIGZv
ciBtb3JlIGluZm8KLSAgKgotICAqIGl0IGlzIG9rYXkgdG8gc2V0IHNydHBfZXZlbnRfaGFuZGxl
ciB0byBOVUxMLCBidXQgd2Ugc2V0IAotICAqIGl0IHRvIHRoZSBzcnRwX2V2ZW50X3JlcG9ydGVy
LgotICAqLwotCi0gc3RhdGljIHNydHBfZXZlbnRfaGFuZGxlcl9mdW5jX3QgKnNydHBfZXZlbnRf
aGFuZGxlciA9IHNydHBfZXZlbnRfcmVwb3J0ZXI7Ci0KLSBzcnRwX2Vycl9zdGF0dXNfdAotIHNy
dHBfaW5zdGFsbF9ldmVudF9oYW5kbGVyKHNydHBfZXZlbnRfaGFuZGxlcl9mdW5jX3QgZnVuYykg
ewotCi0gICAvKiAKLSAgICAqIG5vdGUgdGhhdCB3ZSBhY2NlcHQgTlVMTCBhcmd1bWVudHMgaW50
ZW50aW9uYWxseSAtIGNhbGxpbmcgdGhpcwotICAgICogZnVuY3Rpb24gd2l0aCBhIE5VTEwgYXJn
dW1lbnRzIHJlbW92ZXMgYW4gZXZlbnQgaGFuZGxlciB0aGF0J3MKLSAgICAqIGJlZW4gcHJldmlv
dXNseSBpbnN0YWxsZWQKLSAgICAqLworICAgIC8qIGdlbmVyYXRlIGVuY3J5cHRpb24ga2V5ICAq
LworICAgIHN0YXQgPSBzcnRwX2tkZl9nZW5lcmF0ZSgma2RmLCBsYWJlbF9ydGNwX2VuY3J5cHRp
b24sIHRtcF9rZXksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJ0Y3BfYmFzZV9rZXlf
bGVuKTsKKyAgICBpZiAoc3RhdCkgeworICAgICAgICAvKiB6ZXJvaXplIHRlbXAgYnVmZmVyICov
CisgICAgICAgIG9jdGV0X3N0cmluZ19zZXRfdG9femVybyh0bXBfa2V5LCBNQVhfU1JUUF9LRVlf
TEVOKTsKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19pbml0X2ZhaWw7CisgICAgfQog
Ci0gICAvKiBzZXQgZ2xvYmFsIGV2ZW50IGhhbmRsaW5nIGZ1bmN0aW9uICovCi0gICBzcnRwX2V2
ZW50X2hhbmRsZXIgPSBmdW5jOwotICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKLSB9Cisg
ICAgLyoKKyAgICAgKiBpZiB0aGUgY2lwaGVyIGluIHRoZSBzcnRwIGNvbnRleHQgdXNlcyBhIHNh
bHQsIHRoZW4gd2UgbmVlZAorICAgICAqIHRvIGdlbmVyYXRlIHRoZSBzYWx0IHZhbHVlCisgICAg
ICovCisgICAgaWYgKHJ0Y3Bfc2FsdF9sZW4gPiAwKSB7CisgICAgICAgIGRlYnVnX3ByaW50KG1v
ZF9zcnRwLCAiZm91bmQgcnRjcF9zYWx0X2xlbiA+IDAsIGdlbmVyYXRpbmcgcnRjcCBzYWx0IiwK
KyAgICAgICAgICAgICAgICAgICAgTlVMTCk7CisKKyAgICAgICAgLyogZ2VuZXJhdGUgZW5jcnlw
dGlvbiBzYWx0LCBwdXQgYWZ0ZXIgZW5jcnlwdGlvbiBrZXkgKi8KKyAgICAgICAgc3RhdCA9IHNy
dHBfa2RmX2dlbmVyYXRlKCZrZGYsIGxhYmVsX3J0Y3Bfc2FsdCwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHRtcF9rZXkgKyBydGNwX2Jhc2Vfa2V5X2xlbiwgcnRjcF9zYWx0X2xl
bik7CisgICAgICAgIGlmIChzdGF0KSB7CisgICAgICAgICAgICAvKiB6ZXJvaXplIHRlbXAgYnVm
ZmVyICovCisgICAgICAgICAgICBvY3RldF9zdHJpbmdfc2V0X3RvX3plcm8odG1wX2tleSwgTUFY
X1NSVFBfS0VZX0xFTik7CisgICAgICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2luaXRf
ZmFpbDsKKyAgICAgICAgfQorICAgICAgICBtZW1jcHkoc2Vzc2lvbl9rZXlzLT5jX3NhbHQsIHRt
cF9rZXkgKyBydGNwX2Jhc2Vfa2V5X2xlbiwKKyAgICAgICAgICAgICAgIFNSVFBfQUVBRF9TQUxU
X0xFTik7CisgICAgfQorICAgIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAicnRjcCBjaXBoZXIga2V5
OiAlcyIsCisgICAgICAgICAgICAgICAgc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZyh0bXBf
a2V5LCBydGNwX2Jhc2Vfa2V5X2xlbikpOworICAgIGlmIChydGNwX3NhbHRfbGVuID4gMCkgewor
ICAgICAgICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgInJ0Y3AgY2lwaGVyIHNhbHQ6ICVzIiwKKyAg
ICAgICAgICAgICAgICAgICAgc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZyh0bXBfa2V5ICsg
cnRjcF9iYXNlX2tleV9sZW4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgcnRjcF9zYWx0X2xlbikpOworICAgIH0KIAorICAgIC8qIGluaXRpYWxpemUg
Y2lwaGVyICovCisgICAgc3RhdCA9IHNydHBfY2lwaGVyX2luaXQoc2Vzc2lvbl9rZXlzLT5ydGNw
X2NpcGhlciwgdG1wX2tleSk7CisgICAgaWYgKHN0YXQpIHsKKyAgICAgICAgLyogemVyb2l6ZSB0
ZW1wIGJ1ZmZlciAqLworICAgICAgICBvY3RldF9zdHJpbmdfc2V0X3RvX3plcm8odG1wX2tleSwg
TUFYX1NSVFBfS0VZX0xFTik7CisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfaW5pdF9m
YWlsOworICAgIH0KIAotLyoKLSAqIENoZWNrIGlmIHRoZSBnaXZlbiBleHRlbnNpb24gaGVhZGVy
IGlkIGlzIC8gc2hvdWxkIGJlIGVuY3J5cHRlZC4KLSAqIFJldHVybnMgMSBpZiB5ZXMsIG90aGVy
d2lzZSAwLgotICovCi1zdGF0aWMgaW50Ci1zcnRwX3Byb3RlY3RfZXh0ZW5zaW9uX2hlYWRlcihz
cnRwX3N0cmVhbV9jdHhfdCAqc3RyZWFtLCBpbnQgaWQpIHsKLSAgaW50KiBlbmNfeHRuX2hkciA9
IHN0cmVhbS0+ZW5jX3h0bl9oZHI7Ci0gIGludCBjb3VudCA9IHN0cmVhbS0+ZW5jX3h0bl9oZHJf
Y291bnQ7CisgICAgLyogZ2VuZXJhdGUgYXV0aGVudGljYXRpb24ga2V5ICovCisgICAgc3RhdCA9
IHNydHBfa2RmX2dlbmVyYXRlKCZrZGYsIGxhYmVsX3J0Y3BfbXNnX2F1dGgsIHRtcF9rZXksCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfYXV0aF9nZXRfa2V5X2xlbmd0aChzZXNz
aW9uX2tleXMtPnJ0Y3BfYXV0aCkpOworICAgIGlmIChzdGF0KSB7CisgICAgICAgIC8qIHplcm9p
emUgdGVtcCBidWZmZXIgKi8KKyAgICAgICAgb2N0ZXRfc3RyaW5nX3NldF90b196ZXJvKHRtcF9r
ZXksIE1BWF9TUlRQX0tFWV9MRU4pOworICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2lu
aXRfZmFpbDsKKyAgICB9CiAKLSAgaWYgKCFlbmNfeHRuX2hkciB8fCBjb3VudCA8PSAwKSB7Ci0g
ICAgcmV0dXJuIDA7Ci0gIH0KKyAgICBkZWJ1Z19wcmludCgKKyAgICAgICAgbW9kX3NydHAsICJy
dGNwIGF1dGgga2V5OiAgICVzIiwKKyAgICAgICAgc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmlu
ZygKKyAgICAgICAgICAgIHRtcF9rZXksIHNydHBfYXV0aF9nZXRfa2V5X2xlbmd0aChzZXNzaW9u
X2tleXMtPnJ0Y3BfYXV0aCkpKTsKIAotICB3aGlsZSAoY291bnQgPiAwKSB7Ci0gICAgaWYgKCpl
bmNfeHRuX2hkciA9PSBpZCkgewotICAgICAgcmV0dXJuIDE7CisgICAgLyogaW5pdGlhbGl6ZSBh
dXRoIGZ1bmN0aW9uICovCisgICAgc3RhdCA9IHNydHBfYXV0aF9pbml0KHNlc3Npb25fa2V5cy0+
cnRjcF9hdXRoLCB0bXBfa2V5KTsKKyAgICBpZiAoc3RhdCkgeworICAgICAgICAvKiB6ZXJvaXpl
IHRlbXAgYnVmZmVyICovCisgICAgICAgIG9jdGV0X3N0cmluZ19zZXRfdG9femVybyh0bXBfa2V5
LCBNQVhfU1JUUF9LRVlfTEVOKTsKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19pbml0
X2ZhaWw7CiAgICAgfQogCi0gICAgZW5jX3h0bl9oZHIrKzsKLSAgICBjb3VudC0tOwotICB9Ci0g
IHJldHVybiAwOworICAgIC8qIGNsZWFyIG1lbW9yeSB0aGVuIHJldHVybiAqLworICAgIHN0YXQg
PSBzcnRwX2tkZl9jbGVhcigma2RmKTsKKyAgICBvY3RldF9zdHJpbmdfc2V0X3RvX3plcm8odG1w
X2tleSwgTUFYX1NSVFBfS0VZX0xFTik7CisgICAgaWYgKHN0YXQpCisgICAgICAgIHJldHVybiBz
cnRwX2Vycl9zdGF0dXNfaW5pdF9mYWlsOworCisgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19v
azsKIH0KIAorc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9zdHJlYW1faW5pdChzcnRwX3N0cmVhbV9j
dHhfdCAqc3J0cCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3J0
cF9wb2xpY3lfdCAqcCkKK3sKKyAgICBzcnRwX2Vycl9zdGF0dXNfdCBlcnI7CisKKyAgICBkZWJ1
Z19wcmludChtb2Rfc3J0cCwgImluaXRpYWxpemluZyBzdHJlYW0gKFNTUkM6IDB4JTA4eCkiLCBw
LT5zc3JjLnZhbHVlKTsKKworICAgIC8qIGluaXRpYWxpemUgcmVwbGF5IGRhdGFiYXNlICovCisg
ICAgLyoKKyAgICAgKiB3aW5kb3cgc2l6ZSBNVVNUIGJlIGF0IGxlYXN0IDY0LiAgTUFZIGJlIGxh
cmdlci4gIFZhbHVlcyBtb3JlIHRoYW4KKyAgICAgKiAyXjE1IGFyZW4ndCBtZWFuaW5nZnVsIGR1
ZSB0byBob3cgZXh0ZW5kZWQgc2VxdWVuY2UgbnVtYmVycyBhcmUKKyAgICAgKiBjYWxjdWxhdGVk
LgorICAgICAqIExldCBhIHdpbmRvdyBzaXplIG9mIDAgaW1wbHkgdGhlIGRlZmF1bHQgdmFsdWUu
CisgICAgICovCisKKyAgICBpZiAocC0+d2luZG93X3NpemUgIT0gMCAmJgorICAgICAgICAocC0+
d2luZG93X3NpemUgPCA2NCB8fCBwLT53aW5kb3dfc2l6ZSA+PSAweDgwMDApKQorICAgICAgICBy
ZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJhbTsKKworICAgIGlmIChwLT53aW5kb3dfc2l6
ZSAhPSAwKQorICAgICAgICBlcnIgPSBzcnRwX3JkYnhfaW5pdCgmc3J0cC0+cnRwX3JkYngsIHAt
PndpbmRvd19zaXplKTsKKyAgICBlbHNlCisgICAgICAgIGVyciA9IHNydHBfcmRieF9pbml0KCZz
cnRwLT5ydHBfcmRieCwgMTI4KTsKKyAgICBpZiAoZXJyKQorICAgICAgICByZXR1cm4gZXJyOwor
CisgICAgLyogc2V0IHRoZSBTU1JDIHZhbHVlICovCisgICAgc3J0cC0+c3NyYyA9IGh0b25sKHAt
PnNzcmMudmFsdWUpOworCisgICAgLyogcmVzZXQgcGVuZGluZyBST0MgKi8KKyAgICBzcnRwLT5w
ZW5kaW5nX3JvYyA9IDA7CisKKyAgICAvKiBzZXQgdGhlIHNlY3VyaXR5IHNlcnZpY2UgZmxhZ3Mg
Ki8KKyAgICBzcnRwLT5ydHBfc2VydmljZXMgPSBwLT5ydHAuc2VjX3NlcnY7CisgICAgc3J0cC0+
cnRjcF9zZXJ2aWNlcyA9IHAtPnJ0Y3Auc2VjX3NlcnY7CisKKyAgICAvKgorICAgICAqIHNldCBk
aXJlY3Rpb24gdG8gdW5rbm93biAtIHRoaXMgZmxhZyBnZXRzIGNoZWNrZWQgaW4gc3J0cF9wcm90
ZWN0KCksCisgICAgICogc3J0cF91bnByb3RlY3QoKSwgc3J0cF9wcm90ZWN0X3J0Y3AoKSwgYW5k
IHNydHBfdW5wcm90ZWN0X3J0Y3AoKSwgYW5kCisgICAgICogZ2V0cyBzZXQgYXBwcm9wcmlhdGVs
eSBpZiBpdCBpcyBzZXQgdG8gdW5rbm93bi4KKyAgICAgKi8KKyAgICBzcnRwLT5kaXJlY3Rpb24g
PSBkaXJfdW5rbm93bjsKKworICAgIC8qIGluaXRpYWxpemUgU1JUQ1AgcmVwbGF5IGRhdGFiYXNl
ICovCisgICAgc3J0cF9yZGJfaW5pdCgmc3J0cC0+cnRjcF9yZGIpOworCisgICAgLyogaW5pdGlh
bGl6ZSBhbGxvd19yZXBlYXRfdHggKi8KKyAgICAvKiBndWFyZCBhZ2FpbnN0IHVuaW5pdGlhbGl6
ZWQgbWVtb3J5OiBhbGxvdyBvbmx5IDAgb3IgMSBoZXJlICovCisgICAgaWYgKHAtPmFsbG93X3Jl
cGVhdF90eCAhPSAwICYmIHAtPmFsbG93X3JlcGVhdF90eCAhPSAxKSB7CisgICAgICAgIHNydHBf
cmRieF9kZWFsbG9jKCZzcnRwLT5ydHBfcmRieCk7CisgICAgICAgIHJldHVybiBzcnRwX2Vycl9z
dGF0dXNfYmFkX3BhcmFtOworICAgIH0KKyAgICBzcnRwLT5hbGxvd19yZXBlYXRfdHggPSBwLT5h
bGxvd19yZXBlYXRfdHg7CisKKyAgICAvKiBEQU0gLSBubyBSVENQIGtleSBsaW1pdCBhdCBwcmVz
ZW50ICovCisKKyAgICAvKiBpbml0aWFsaXplIGtleXMgKi8KKyAgICBlcnIgPSBzcnRwX3N0cmVh
bV9pbml0X2FsbF9tYXN0ZXJfa2V5cyhzcnRwLCBwLT5rZXksIHAtPmtleXMsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcC0+bnVtX21hc3Rlcl9rZXlzKTsKKyAg
ICBpZiAoZXJyKSB7CisgICAgICAgIHNydHBfcmRieF9kZWFsbG9jKCZzcnRwLT5ydHBfcmRieCk7
CisgICAgICAgIHJldHVybiBlcnI7CisgICAgfQorCisgICAgLyoKKyAgICAgKiBpZiBFS1QgaXMg
aW4gdXNlLCB0aGVuIGluaXRpYWxpemUgdGhlIEVLVCBkYXRhIGFzc29jaWF0ZWQgd2l0aAorICAg
ICAqIHRoZSBzdHJlYW0KKyAgICAgKi8KKyAgICBlcnIgPSBzcnRwX2VrdF9zdHJlYW1faW5pdF9m
cm9tX3BvbGljeShzcnRwLT5la3QsIHAtPmVrdCk7CisgICAgaWYgKGVycikgeworICAgICAgICBz
cnRwX3JkYnhfZGVhbGxvYygmc3J0cC0+cnRwX3JkYngpOworICAgICAgICByZXR1cm4gZXJyOwor
ICAgIH0KKworICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7Cit9CiAKIC8qCi0gKiBleHRl
bnNpb25zIGhlYWRlciBlbmNyeXB0aW9uIFJGQyA2OTA0CisgKiBzcnRwX2V2ZW50X3JlcG9ydGVy
IGlzIGFuIGV2ZW50IGhhbmRsZXIgZnVuY3Rpb24gdGhhdCBtZXJlbHkKKyAqIHJlcG9ydHMgdGhl
IGV2ZW50cyB0aGF0IGFyZSByZXBvcnRlZCBieSB0aGUgY2FsbGJhY2tzCiAgKi8KLXN0YXRpYyBz
cnRwX2Vycl9zdGF0dXNfdAotc3J0cF9wcm9jZXNzX2hlYWRlcl9lbmNyeXB0aW9uKHNydHBfc3Ry
ZWFtX2N0eF90ICpzdHJlYW0sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF9o
ZHJfeHRuZF90ICp4dG5faGRyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNydHBf
c2Vzc2lvbl9rZXlzX3QgKnNlc3Npb25fa2V5cykgewotICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0
dXM7Ci0gIHVpbnQ4X3Qga2V5c3RyZWFtWzI1N107ICAvKiBNYXhpbXVtIDIgYnl0ZXMgaGVhZGVy
ICsgMjU1IGJ5dGVzIGRhdGEuICovCi0gIGludCBrZXlzdHJlYW1fcG9zOwotICB1aW50OF90KiB4
dG5faGRyX2RhdGEgPSAoKHVpbnQ4X3QgKil4dG5faGRyKSArIG9jdGV0c19pbl9ydHBfZXh0bl9o
ZHI7Ci0gIHVpbnQ4X3QqIHh0bl9oZHJfZW5kID0geHRuX2hkcl9kYXRhICsgKG50b2hzKHh0bl9o
ZHItPmxlbmd0aCkgKiBzaXplb2YodWludDMyX3QpKTsKLQotICBpZiAobnRvaHMoeHRuX2hkci0+
cHJvZmlsZV9zcGVjaWZpYykgPT0gMHhiZWRlKSB7Ci0gICAgLyogUkZDIDUyODUsIHNlY3Rpb24g
NC4yLiBPbmUtQnl0ZSBIZWFkZXIgKi8KLSAgICB3aGlsZSAoeHRuX2hkcl9kYXRhIDwgeHRuX2hk
cl9lbmQpIHsKLSAgICAgIHVpbnQ4X3QgeGlkID0gKCp4dG5faGRyX2RhdGEgJiAweGYwKSA+PiA0
OwotICAgICAgdW5zaWduZWQgaW50IHhsZW4gPSAoKnh0bl9oZHJfZGF0YSAmIDB4MGYpICsgMTsK
LSAgICAgIHVpbnQzMl90IHhsZW5fd2l0aF9oZWFkZXIgPSAxK3hsZW47Ci0gICAgICB4dG5faGRy
X2RhdGErKzsKLQotICAgICAgaWYgKHh0bl9oZHJfZGF0YSArIHhsZW4gPiB4dG5faGRyX2VuZCkK
LSAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19wYXJzZV9lcnI7CiAKLSAgICAgIGlmICh4
aWQgPT0gMTUpIHsKLSAgICAgICAgLyogZm91bmQgaGVhZGVyIDE1LCBzdG9wIGZ1cnRoZXIgcHJv
Y2Vzc2luZy4gKi8KK3ZvaWQgc3J0cF9ldmVudF9yZXBvcnRlcihzcnRwX2V2ZW50X2RhdGFfdCAq
ZGF0YSkKK3sKKyAgICBzcnRwX2Vycl9yZXBvcnQoc3J0cF9lcnJfbGV2ZWxfd2FybmluZywgInNy
dHA6IGluIHN0cmVhbSAweCV4OiAiLAorICAgICAgICAgICAgICAgICAgICBkYXRhLT5zc3JjKTsK
KworICAgIHN3aXRjaCAoZGF0YS0+ZXZlbnQpIHsKKyAgICBjYXNlIGV2ZW50X3NzcmNfY29sbGlz
aW9uOgorICAgICAgICBzcnRwX2Vycl9yZXBvcnQoc3J0cF9lcnJfbGV2ZWxfd2FybmluZywgIlx0
U1NSQyBjb2xsaXNpb25cbiIpOworICAgICAgICBicmVhazsKKyAgICBjYXNlIGV2ZW50X2tleV9z
b2Z0X2xpbWl0OgorICAgICAgICBzcnRwX2Vycl9yZXBvcnQoc3J0cF9lcnJfbGV2ZWxfd2Fybmlu
ZywKKyAgICAgICAgICAgICAgICAgICAgICAgICJcdGtleSB1c2FnZSBzb2Z0IGxpbWl0IHJlYWNo
ZWRcbiIpOworICAgICAgICBicmVhazsKKyAgICBjYXNlIGV2ZW50X2tleV9oYXJkX2xpbWl0Ogor
ICAgICAgICBzcnRwX2Vycl9yZXBvcnQoc3J0cF9lcnJfbGV2ZWxfd2FybmluZywKKyAgICAgICAg
ICAgICAgICAgICAgICAgICJcdGtleSB1c2FnZSBoYXJkIGxpbWl0IHJlYWNoZWRcbiIpOwogICAg
ICAgICBicmVhazsKLSAgICAgIH0KKyAgICBjYXNlIGV2ZW50X3BhY2tldF9pbmRleF9saW1pdDoK
KyAgICAgICAgc3J0cF9lcnJfcmVwb3J0KHNydHBfZXJyX2xldmVsX3dhcm5pbmcsCisgICAgICAg
ICAgICAgICAgICAgICAgICAiXHRwYWNrZXQgaW5kZXggbGltaXQgcmVhY2hlZFxuIik7CisgICAg
ICAgIGJyZWFrOworICAgIGRlZmF1bHQ6CisgICAgICAgIHNydHBfZXJyX3JlcG9ydChzcnRwX2Vy
cl9sZXZlbF93YXJuaW5nLAorICAgICAgICAgICAgICAgICAgICAgICAgIlx0dW5rbm93biBldmVu
dCByZXBvcnRlZCB0byBoYW5kbGVyXG4iKTsKKyAgICB9Cit9CiAKLSAgICAgIHN0YXR1cyA9IHNy
dHBfY2lwaGVyX291dHB1dChzZXNzaW9uX2tleXMtPnJ0cF94dG5faGRyX2NpcGhlciwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBrZXlzdHJlYW0sICZ4bGVuX3dpdGhfaGVhZGVy
KTsKLSAgICAgIGlmIChzdGF0dXMpCi0gICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfY2lw
aGVyX2ZhaWw7CisvKgorICogc3J0cF9ldmVudF9oYW5kbGVyIGlzIGEgZ2xvYmFsIHZhcmlhYmxl
IGhvbGRpbmcgYSBwb2ludGVyIHRvIHRoZQorICogZXZlbnQgaGFuZGxlciBmdW5jdGlvbjsgdGhp
cyBmdW5jdGlvbiBpcyBjYWxsZWQgZm9yIGFueSB1bmV4cGVjdGVkCisgKiBldmVudCB0aGF0IG5l
ZWRzIHRvIGJlIGhhbmRsZWQgb3V0IG9mIHRoZSBTUlRQIGRhdGEgcGF0aC4gIHNlZQorICogc3J0
cF9ldmVudF90IGluIHNydHAuaCBmb3IgbW9yZSBpbmZvCisgKgorICogaXQgaXMgb2theSB0byBz
ZXQgc3J0cF9ldmVudF9oYW5kbGVyIHRvIE5VTEwsIGJ1dCB3ZSBzZXQKKyAqIGl0IHRvIHRoZSBz
cnRwX2V2ZW50X3JlcG9ydGVyLgorICovCisKK3N0YXRpYyBzcnRwX2V2ZW50X2hhbmRsZXJfZnVu
Y190ICpzcnRwX2V2ZW50X2hhbmRsZXIgPSBzcnRwX2V2ZW50X3JlcG9ydGVyOworCitzcnRwX2Vy
cl9zdGF0dXNfdCBzcnRwX2luc3RhbGxfZXZlbnRfaGFuZGxlcihzcnRwX2V2ZW50X2hhbmRsZXJf
ZnVuY190IGZ1bmMpCit7CisgICAgLyoKKyAgICAgKiBub3RlIHRoYXQgd2UgYWNjZXB0IE5VTEwg
YXJndW1lbnRzIGludGVudGlvbmFsbHkgLSBjYWxsaW5nIHRoaXMKKyAgICAgKiBmdW5jdGlvbiB3
aXRoIGEgTlVMTCBhcmd1bWVudHMgcmVtb3ZlcyBhbiBldmVudCBoYW5kbGVyIHRoYXQncworICAg
ICAqIGJlZW4gcHJldmlvdXNseSBpbnN0YWxsZWQKKyAgICAgKi8KKworICAgIC8qIHNldCBnbG9i
YWwgZXZlbnQgaGFuZGxpbmcgZnVuY3Rpb24gKi8KKyAgICBzcnRwX2V2ZW50X2hhbmRsZXIgPSBm
dW5jOworICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7Cit9CisKKy8qCisgKiBDaGVjayBp
ZiB0aGUgZ2l2ZW4gZXh0ZW5zaW9uIGhlYWRlciBpZCBpcyAvIHNob3VsZCBiZSBlbmNyeXB0ZWQu
CisgKiBSZXR1cm5zIDEgaWYgeWVzLCBvdGhlcndpc2UgMC4KKyAqLworc3RhdGljIGludCBzcnRw
X3Byb3RlY3RfZXh0ZW5zaW9uX2hlYWRlcihzcnRwX3N0cmVhbV9jdHhfdCAqc3RyZWFtLCBpbnQg
aWQpCit7CisgICAgaW50ICplbmNfeHRuX2hkciA9IHN0cmVhbS0+ZW5jX3h0bl9oZHI7CisgICAg
aW50IGNvdW50ID0gc3RyZWFtLT5lbmNfeHRuX2hkcl9jb3VudDsKIAotICAgICAgaWYgKHNydHBf
cHJvdGVjdF9leHRlbnNpb25faGVhZGVyKHN0cmVhbSwgeGlkKSkgewotICAgICAgICBrZXlzdHJl
YW1fcG9zID0gMTsKLSAgICAgICAgd2hpbGUgKHhsZW4gPiAwKSB7Ci0gICAgICAgICAgKnh0bl9o
ZHJfZGF0YSBePSBrZXlzdHJlYW1ba2V5c3RyZWFtX3BvcysrXTsKLSAgICAgICAgICB4dG5faGRy
X2RhdGErKzsKLSAgICAgICAgICB4bGVuLS07CisgICAgaWYgKCFlbmNfeHRuX2hkciB8fCBjb3Vu
dCA8PSAwKSB7CisgICAgICAgIHJldHVybiAwOworICAgIH0KKworICAgIHdoaWxlIChjb3VudCA+
IDApIHsKKyAgICAgICAgaWYgKCplbmNfeHRuX2hkciA9PSBpZCkgeworICAgICAgICAgICAgcmV0
dXJuIDE7CiAgICAgICAgIH0KLSAgICAgIH0gZWxzZSB7Ci0gICAgICAgIHh0bl9oZHJfZGF0YSAr
PSB4bGVuOwotICAgICAgfQotCi0gICAgICAvKiBza2lwIHBhZGRpbmcgYnl0ZXMuICovCi0gICAg
ICB3aGlsZSAoeHRuX2hkcl9kYXRhIDwgeHRuX2hkcl9lbmQgJiYgKnh0bl9oZHJfZGF0YSA9PSAw
KSB7Ci0gICAgICAgIHh0bl9oZHJfZGF0YSsrOwotICAgICAgfQotICAgIH0KLSAgfSBlbHNlIGlm
ICgobnRvaHMoeHRuX2hkci0+cHJvZmlsZV9zcGVjaWZpYykgJiAweDFmZmYpID09IDB4MTAwKSB7
Ci0gICAgLyogUkZDIDUyODUsIHNlY3Rpb24gNC4zLiBUd28tQnl0ZSBIZWFkZXIgKi8KLSAgICB3
aGlsZSAoeHRuX2hkcl9kYXRhICsgMSA8IHh0bl9oZHJfZW5kKSB7Ci0gICAgICB1aW50OF90IHhp
ZCA9ICp4dG5faGRyX2RhdGE7Ci0gICAgICB1bnNpZ25lZCBpbnQgeGxlbiA9ICooeHRuX2hkcl9k
YXRhKzEpOwotICAgICAgdWludDMyX3QgeGxlbl93aXRoX2hlYWRlciA9IDIreGxlbjsKLSAgICAg
IHh0bl9oZHJfZGF0YSArPSAyOwotCi0gICAgICBpZiAoeHRuX2hkcl9kYXRhICsgeGxlbiA+IHh0
bl9oZHJfZW5kKQotICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX3BhcnNlX2VycjsKIAot
ICAgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfb3V0cHV0KHNlc3Npb25fa2V5cy0+cnRwX3h0bl9o
ZHJfY2lwaGVyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGtleXN0cmVhbSwg
JnhsZW5fd2l0aF9oZWFkZXIpOwotICAgICAgaWYgKHN0YXR1cykKLSAgICAgICAgcmV0dXJuIHNy
dHBfZXJyX3N0YXR1c19jaXBoZXJfZmFpbDsKKyAgICAgICAgZW5jX3h0bl9oZHIrKzsKKyAgICAg
ICAgY291bnQtLTsKKyAgICB9CisgICAgcmV0dXJuIDA7Cit9CisKKy8qCisgKiBleHRlbnNpb25z
IGhlYWRlciBlbmNyeXB0aW9uIFJGQyA2OTA0CisgKi8KK3N0YXRpYyBzcnRwX2Vycl9zdGF0dXNf
dCBzcnRwX3Byb2Nlc3NfaGVhZGVyX2VuY3J5cHRpb24oCisgICAgc3J0cF9zdHJlYW1fY3R4X3Qg
KnN0cmVhbSwKKyAgICBzcnRwX2hkcl94dG5kX3QgKnh0bl9oZHIsCisgICAgc3J0cF9zZXNzaW9u
X2tleXNfdCAqc2Vzc2lvbl9rZXlzKQoreworICAgIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsK
KyAgICB1aW50OF90IGtleXN0cmVhbVsyNTddOyAvKiBNYXhpbXVtIDIgYnl0ZXMgaGVhZGVyICsg
MjU1IGJ5dGVzIGRhdGEuICovCisgICAgaW50IGtleXN0cmVhbV9wb3M7CisgICAgdWludDhfdCAq
eHRuX2hkcl9kYXRhID0gKCh1aW50OF90ICopeHRuX2hkcikgKyBvY3RldHNfaW5fcnRwX2V4dG5f
aGRyOworICAgIHVpbnQ4X3QgKnh0bl9oZHJfZW5kID0KKyAgICAgICAgeHRuX2hkcl9kYXRhICsg
KG50b2hzKHh0bl9oZHItPmxlbmd0aCkgKiBzaXplb2YodWludDMyX3QpKTsKKworICAgIGlmIChu
dG9ocyh4dG5faGRyLT5wcm9maWxlX3NwZWNpZmljKSA9PSAweGJlZGUpIHsKKyAgICAgICAgLyog
UkZDIDUyODUsIHNlY3Rpb24gNC4yLiBPbmUtQnl0ZSBIZWFkZXIgKi8KKyAgICAgICAgd2hpbGUg
KHh0bl9oZHJfZGF0YSA8IHh0bl9oZHJfZW5kKSB7CisgICAgICAgICAgICB1aW50OF90IHhpZCA9
ICgqeHRuX2hkcl9kYXRhICYgMHhmMCkgPj4gNDsKKyAgICAgICAgICAgIHVuc2lnbmVkIGludCB4
bGVuID0gKCp4dG5faGRyX2RhdGEgJiAweDBmKSArIDE7CisgICAgICAgICAgICB1aW50MzJfdCB4
bGVuX3dpdGhfaGVhZGVyID0gMSArIHhsZW47CisgICAgICAgICAgICB4dG5faGRyX2RhdGErKzsK
KworICAgICAgICAgICAgaWYgKHh0bl9oZHJfZGF0YSArIHhsZW4gPiB4dG5faGRyX2VuZCkKKyAg
ICAgICAgICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX3BhcnNlX2VycjsKKworICAgICAg
ICAgICAgaWYgKHhpZCA9PSAxNSkgeworICAgICAgICAgICAgICAgIC8qIGZvdW5kIGhlYWRlciAx
NSwgc3RvcCBmdXJ0aGVyIHByb2Nlc3NpbmcuICovCisgICAgICAgICAgICAgICAgYnJlYWs7Cisg
ICAgICAgICAgICB9CisKKyAgICAgICAgICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX291dHB1dChz
ZXNzaW9uX2tleXMtPnJ0cF94dG5faGRyX2NpcGhlciwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBrZXlzdHJlYW0sICZ4bGVuX3dpdGhfaGVhZGVyKTsKKyAgICAgICAg
ICAgIGlmIChzdGF0dXMpCisgICAgICAgICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19j
aXBoZXJfZmFpbDsKKworICAgICAgICAgICAgaWYgKHNydHBfcHJvdGVjdF9leHRlbnNpb25faGVh
ZGVyKHN0cmVhbSwgeGlkKSkgeworICAgICAgICAgICAgICAgIGtleXN0cmVhbV9wb3MgPSAxOwor
ICAgICAgICAgICAgICAgIHdoaWxlICh4bGVuID4gMCkgeworICAgICAgICAgICAgICAgICAgICAq
eHRuX2hkcl9kYXRhIF49IGtleXN0cmVhbVtrZXlzdHJlYW1fcG9zKytdOworICAgICAgICAgICAg
ICAgICAgICB4dG5faGRyX2RhdGErKzsKKyAgICAgICAgICAgICAgICAgICAgeGxlbi0tOworICAg
ICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgeHRu
X2hkcl9kYXRhICs9IHhsZW47CisgICAgICAgICAgICB9CiAKLSAgICAgIGlmICh4bGVuID4gMCAm
JiBzcnRwX3Byb3RlY3RfZXh0ZW5zaW9uX2hlYWRlcihzdHJlYW0sIHhpZCkpIHsKLSAgICAgICAg
a2V5c3RyZWFtX3BvcyA9IDI7Ci0gICAgICAgIHdoaWxlICh4bGVuID4gMCkgewotICAgICAgICAg
ICp4dG5faGRyX2RhdGEgXj0ga2V5c3RyZWFtW2tleXN0cmVhbV9wb3MrK107Ci0gICAgICAgICAg
eHRuX2hkcl9kYXRhKys7Ci0gICAgICAgICAgeGxlbi0tOworICAgICAgICAgICAgLyogc2tpcCBw
YWRkaW5nIGJ5dGVzLiAqLworICAgICAgICAgICAgd2hpbGUgKHh0bl9oZHJfZGF0YSA8IHh0bl9o
ZHJfZW5kICYmICp4dG5faGRyX2RhdGEgPT0gMCkgeworICAgICAgICAgICAgICAgIHh0bl9oZHJf
ZGF0YSsrOworICAgICAgICAgICAgfQogICAgICAgICB9Ci0gICAgICB9IGVsc2UgewotICAgICAg
ICB4dG5faGRyX2RhdGEgKz0geGxlbjsKLSAgICAgIH0KKyAgICB9IGVsc2UgaWYgKChudG9ocyh4
dG5faGRyLT5wcm9maWxlX3NwZWNpZmljKSAmIDB4MWZmZikgPT0gMHgxMDApIHsKKyAgICAgICAg
LyogUkZDIDUyODUsIHNlY3Rpb24gNC4zLiBUd28tQnl0ZSBIZWFkZXIgKi8KKyAgICAgICAgd2hp
bGUgKHh0bl9oZHJfZGF0YSArIDEgPCB4dG5faGRyX2VuZCkgeworICAgICAgICAgICAgdWludDhf
dCB4aWQgPSAqeHRuX2hkcl9kYXRhOworICAgICAgICAgICAgdW5zaWduZWQgaW50IHhsZW4gPSAq
KHh0bl9oZHJfZGF0YSArIDEpOworICAgICAgICAgICAgdWludDMyX3QgeGxlbl93aXRoX2hlYWRl
ciA9IDIgKyB4bGVuOworICAgICAgICAgICAgeHRuX2hkcl9kYXRhICs9IDI7CisKKyAgICAgICAg
ICAgIGlmICh4dG5faGRyX2RhdGEgKyB4bGVuID4geHRuX2hkcl9lbmQpCisgICAgICAgICAgICAg
ICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19wYXJzZV9lcnI7CisKKyAgICAgICAgICAgIHN0YXR1
cyA9IHNydHBfY2lwaGVyX291dHB1dChzZXNzaW9uX2tleXMtPnJ0cF94dG5faGRyX2NpcGhlciwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBrZXlzdHJlYW0sICZ4bGVu
X3dpdGhfaGVhZGVyKTsKKyAgICAgICAgICAgIGlmIChzdGF0dXMpCisgICAgICAgICAgICAgICAg
cmV0dXJuIHNydHBfZXJyX3N0YXR1c19jaXBoZXJfZmFpbDsKKworICAgICAgICAgICAgaWYgKHhs
ZW4gPiAwICYmIHNydHBfcHJvdGVjdF9leHRlbnNpb25faGVhZGVyKHN0cmVhbSwgeGlkKSkgewor
ICAgICAgICAgICAgICAgIGtleXN0cmVhbV9wb3MgPSAyOworICAgICAgICAgICAgICAgIHdoaWxl
ICh4bGVuID4gMCkgeworICAgICAgICAgICAgICAgICAgICAqeHRuX2hkcl9kYXRhIF49IGtleXN0
cmVhbVtrZXlzdHJlYW1fcG9zKytdOworICAgICAgICAgICAgICAgICAgICB4dG5faGRyX2RhdGEr
KzsKKyAgICAgICAgICAgICAgICAgICAgeGxlbi0tOworICAgICAgICAgICAgICAgIH0KKyAgICAg
ICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgeHRuX2hkcl9kYXRhICs9IHhsZW47Cisg
ICAgICAgICAgICB9CiAKLSAgICAgIC8qIHNraXAgcGFkZGluZyBieXRlcy4gKi8KLSAgICAgIHdo
aWxlICh4dG5faGRyX2RhdGEgPCB4dG5faGRyX2VuZCAmJiAqeHRuX2hkcl9kYXRhID09IDApIHsK
LSAgICAgICAgeHRuX2hkcl9kYXRhKys7Ci0gICAgICB9CisgICAgICAgICAgICAvKiBza2lwIHBh
ZGRpbmcgYnl0ZXMuICovCisgICAgICAgICAgICB3aGlsZSAoeHRuX2hkcl9kYXRhIDwgeHRuX2hk
cl9lbmQgJiYgKnh0bl9oZHJfZGF0YSA9PSAwKSB7CisgICAgICAgICAgICAgICAgeHRuX2hkcl9k
YXRhKys7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICB9IGVsc2UgeworICAgICAgICAv
KiB1bnN1cHBvcnRlZCBleHRlbnNpb24gaGVhZGVyIGZvcm1hdC4gKi8KKyAgICAgICAgcmV0dXJu
IHNydHBfZXJyX3N0YXR1c19wYXJzZV9lcnI7CiAgICAgfQotICB9IGVsc2UgewotICAgIC8qIHVu
c3VwcG9ydGVkIGV4dGVuc2lvbiBoZWFkZXIgZm9ybWF0LiAqLwotICAgIHJldHVybiBzcnRwX2Vy
cl9zdGF0dXNfcGFyc2VfZXJyOwotICB9CiAKLSAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsK
KyAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQogCi0KIC8qCiAgKiBBRUFEIHVzZXMg
YSBuZXcgSVYgZm9ybWF0aW9uIG1ldGhvZC4gIFRoaXMgZnVuY3Rpb24gaW1wbGVtZW50cwogICog
c2VjdGlvbiA4LjEuIChTUlRQIElWIEZvcm1hdGlvbiBmb3IgQUVTLUdDTSkgb2YgUkZDNzcxNC4K
QEAgLTE0NjQsNyArMTQ4Myw3IEBAIHNydHBfcHJvY2Vzc19oZWFkZXJfZW5jcnlwdGlvbihzcnRw
X3N0cmVhbV9jdHhfdCAqc3RyZWFtLAogICogICAgICAgICAgICArLS0rLS0rLS0rLS0rLS0rLS0r
LS0rLS0rLS0rLS0rLS0rLS0rKgogICoKICAqIElucHV0OiAgKnNlc3Npb25fa2V5cyAtIHBvaW50
ZXIgdG8gU1JUUCBzdHJlYW0gY29udGV4dCBzZXNzaW9uIGtleXMsCi0gKiAgICAgICAgICAgICAg
ICAgICAgICAgICB1c2VkIHRvIHJldHJpZXZlIHRoZSBTQUxUIAorICogICAgICAgICAgICAgICAg
ICAgICAgICAgdXNlZCB0byByZXRyaWV2ZSB0aGUgU0FMVAogICogICAgICAgICAqaXYgICAgIC0g
UG9pbnRlciB0byByZWNlaXZlIHRoZSBjYWxjdWxhdGVkIElWCiAgKiAgICAgICAgICpzZXEgICAg
LSBUaGUgUk9DIGFuZCBTRVEgdmFsdWUgdG8gdXNlIGZvciB0aGUKICAqICAgICAgICAgICAgICAg
ICAgIElWIGNhbGN1bGF0aW9uLgpAQCAtMTQ3MiwxOSArMTQ5MSwyMCBAQCBzcnRwX3Byb2Nlc3Nf
aGVhZGVyX2VuY3J5cHRpb24oc3J0cF9zdHJlYW1fY3R4X3QgKnN0cmVhbSwKICAqCiAgKi8KIAot
c3RhdGljIHZvaWQgc3J0cF9jYWxjX2FlYWRfaXYoc3J0cF9zZXNzaW9uX2tleXNfdCAqc2Vzc2lv
bl9rZXlzLCB2MTI4X3QgKml2LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF94
dGRfc2VxX251bV90ICpzZXEsIHNydHBfaGRyX3QgKmhkcikKK3N0YXRpYyB2b2lkIHNydHBfY2Fs
Y19hZWFkX2l2KHNydHBfc2Vzc2lvbl9rZXlzX3QgKnNlc3Npb25fa2V5cywKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHYxMjhfdCAqaXYsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBzcnRwX3h0ZF9zZXFfbnVtX3QgKnNlcSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHNydHBfaGRyX3QgKmhkcikKIHsKLSAgICB2MTI4X3QJaW47Ci0gICAgdjEyOF90CXNhbHQ7
CisgICAgdjEyOF90IGluOworICAgIHYxMjhfdCBzYWx0OwogCiAjaWZkZWYgTk9fNjRCSVRfTUFU
SAotICAgIHVpbnQzMl90IGxvY2FsX3JvYyA9ICgoaGlnaDMyKCpzZXEpIDw8IDE2KSB8Ci0gICAg
ICAgICAgICAgICAgICAgICAgICAgKGxvdzMyKCpzZXEpID4+IDE2KSk7Ci0gICAgdWludDE2X3Qg
bG9jYWxfc2VxID0gKHVpbnQxNl90KSAobG93MzIoKnNlcSkpOworICAgIHVpbnQzMl90IGxvY2Fs
X3JvYyA9ICgoaGlnaDMyKCpzZXEpIDw8IDE2KSB8IChsb3czMigqc2VxKSA+PiAxNikpOworICAg
IHVpbnQxNl90IGxvY2FsX3NlcSA9ICh1aW50MTZfdCkobG93MzIoKnNlcSkpOwogI2Vsc2UKICAg
ICB1aW50MzJfdCBsb2NhbF9yb2MgPSAodWludDMyX3QpKCpzZXEgPj4gMTYpOwotICAgIHVpbnQx
Nl90IGxvY2FsX3NlcSA9ICh1aW50MTZfdCkgKnNlcTsKKyAgICB1aW50MTZfdCBsb2NhbF9zZXEg
PSAodWludDE2X3QpKnNlcTsKICNlbmRpZgogCiAgICAgbWVtc2V0KCZpbiwgMCwgc2l6ZW9mKHYx
MjhfdCkpOwpAQCAtMTUxMiwxNDkgKzE1MzIsMTQ1IEBAIHN0YXRpYyB2b2lkIHNydHBfY2FsY19h
ZWFkX2l2KHNydHBfc2Vzc2lvbl9rZXlzX3QgKnNlc3Npb25fa2V5cywgdjEyOF90ICppdiwKICAg
ICB2MTI4X3hvcihpdiwgJmluLCAmc2FsdCk7CiB9CiAKK3NydHBfc2Vzc2lvbl9rZXlzX3QgKnNy
dHBfZ2V0X3Nlc3Npb25fa2V5cyhzcnRwX3N0cmVhbV9jdHhfdCAqc3RyZWFtLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQ4X3QgKmhkciwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB1bnNpZ25lZCBpbnQgKnBr
dF9vY3RldF9sZW4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
dW5zaWduZWQgaW50ICpta2lfc2l6ZSkKK3sKKyAgICB1bnNpZ25lZCBpbnQgYmFzZV9ta2lfc3Rh
cnRfbG9jYXRpb24gPSAqcGt0X29jdGV0X2xlbjsKKyAgICB1bnNpZ25lZCBpbnQgbWtpX3N0YXJ0
X2xvY2F0aW9uID0gMDsKKyAgICB1bnNpZ25lZCBpbnQgdGFnX2xlbiA9IDA7CisgICAgdW5zaWdu
ZWQgaW50IGkgPSAwOworCisgICAgLy8gRGV0ZXJtaW5lIHRoZSBhdXRoZW50aWNhdGlvbiB0YWcg
c2l6ZQorICAgIGlmIChzdHJlYW0tPnNlc3Npb25fa2V5c1swXS5ydHBfY2lwaGVyLT5hbGdvcml0
aG0gPT0gU1JUUF9BRVNfR0NNXzEyOCB8fAorICAgICAgICBzdHJlYW0tPnNlc3Npb25fa2V5c1sw
XS5ydHBfY2lwaGVyLT5hbGdvcml0aG0gPT0gU1JUUF9BRVNfR0NNXzI1NikgeworICAgICAgICB0
YWdfbGVuID0gMDsKKyAgICB9IGVsc2UgeworICAgICAgICB0YWdfbGVuID0gc3J0cF9hdXRoX2dl
dF90YWdfbGVuZ3RoKHN0cmVhbS0+c2Vzc2lvbl9rZXlzWzBdLnJ0cF9hdXRoKTsKKyAgICB9CisK
KyAgICBpZiAodGFnX2xlbiA+IGJhc2VfbWtpX3N0YXJ0X2xvY2F0aW9uKSB7CisgICAgICAgICpt
a2lfc2l6ZSA9IDA7CisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKworICAgIGJhc2VfbWtp
X3N0YXJ0X2xvY2F0aW9uIC09IHRhZ19sZW47CisKKyAgICBmb3IgKGkgPSAwOyBpIDwgc3RyZWFt
LT5udW1fbWFzdGVyX2tleXM7IGkrKykgeworICAgICAgICBpZiAoc3RyZWFtLT5zZXNzaW9uX2tl
eXNbaV0ubWtpX3NpemUgIT0gMCAmJgorICAgICAgICAgICAgc3RyZWFtLT5zZXNzaW9uX2tleXNb
aV0ubWtpX3NpemUgPD0gYmFzZV9ta2lfc3RhcnRfbG9jYXRpb24pIHsKKyAgICAgICAgICAgICpt
a2lfc2l6ZSA9IHN0cmVhbS0+c2Vzc2lvbl9rZXlzW2ldLm1raV9zaXplOworICAgICAgICAgICAg
bWtpX3N0YXJ0X2xvY2F0aW9uID0gYmFzZV9ta2lfc3RhcnRfbG9jYXRpb24gLSAqbWtpX3NpemU7
CisKKyAgICAgICAgICAgIGlmIChtZW1jbXAoaGRyICsgbWtpX3N0YXJ0X2xvY2F0aW9uLCBzdHJl
YW0tPnNlc3Npb25fa2V5c1tpXS5ta2lfaWQsCisgICAgICAgICAgICAgICAgICAgICAgICpta2lf
c2l6ZSkgPT0gMCkgeworICAgICAgICAgICAgICAgIHJldHVybiAmc3RyZWFtLT5zZXNzaW9uX2tl
eXNbaV07CisgICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICB9CiAKLXNydHBfc2Vzc2lvbl9r
ZXlzX3QqIAotc3J0cF9nZXRfc2Vzc2lvbl9rZXlzKHNydHBfc3RyZWFtX2N0eF90ICpzdHJlYW0s
IHVpbnQ4X3QqIGhkciwKLSAgICAgICAgICAgICAgICAgICAgICBjb25zdCB1bnNpZ25lZCBpbnQq
IHBrdF9vY3RldF9sZW4sCi0gICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50KiBta2lf
c2l6ZSkgewotICB1bnNpZ25lZCBpbnQgYmFzZV9ta2lfc3RhcnRfbG9jYXRpb24gPSAqcGt0X29j
dGV0X2xlbjsKLSAgdW5zaWduZWQgaW50IG1raV9zdGFydF9sb2NhdGlvbiA9IDA7Ci0gIHVuc2ln
bmVkIGludCB0YWdfbGVuID0gMDsKLSAgdW5zaWduZWQgaW50IGkgPSAwOwotCi0gIC8vIERldGVy
bWluZSB0aGUgYXV0aGVudGljYXRpb24gdGFnIHNpemUKLSAgaWYgKHN0cmVhbS0+c2Vzc2lvbl9r
ZXlzWzBdLnJ0cF9jaXBoZXItPmFsZ29yaXRobSA9PSBTUlRQX0FFU19HQ01fMTI4IHx8Ci0gICAg
ICBzdHJlYW0tPnNlc3Npb25fa2V5c1swXS5ydHBfY2lwaGVyLT5hbGdvcml0aG0gPT0gU1JUUF9B
RVNfR0NNXzI1NikgewotICAgICAgdGFnX2xlbiA9IDA7Ci0gIH0gZWxzZSB7Ci0gICAgICB0YWdf
bGVuID0gc3J0cF9hdXRoX2dldF90YWdfbGVuZ3RoKHN0cmVhbS0+c2Vzc2lvbl9rZXlzWzBdLnJ0
cF9hdXRoKTsKLSAgfQotCi0gIGlmICh0YWdfbGVuID4gYmFzZV9ta2lfc3RhcnRfbG9jYXRpb24p
IHsKLSAgICAgKm1raV9zaXplID0gMDsKLSAgICAgcmV0dXJuIE5VTEw7Ci0gIH0KLQotICBiYXNl
X21raV9zdGFydF9sb2NhdGlvbiAtPSB0YWdfbGVuOwotCi0gIGZvciAoaSA9IDA7IGkgPCBzdHJl
YW0tPm51bV9tYXN0ZXJfa2V5czsgaSsrKSB7Ci0gICAgICBpZiAoc3RyZWFtLT5zZXNzaW9uX2tl
eXNbaV0ubWtpX3NpemUgIT0gMCkgewotICAgICAgICAgICpta2lfc2l6ZSA9IHN0cmVhbS0+c2Vz
c2lvbl9rZXlzW2ldLm1raV9zaXplOwotICAgICAgICAgIG1raV9zdGFydF9sb2NhdGlvbiA9IGJh
c2VfbWtpX3N0YXJ0X2xvY2F0aW9uIC0gKm1raV9zaXplOwotCi0gICAgICAgICAgaWYgKCBta2lf
c3RhcnRfbG9jYXRpb24gPj0gKm1raV9zaXplICYmCi0gICAgICAgICAgICAgIG1lbWNtcChoZHIg
KyBta2lfc3RhcnRfbG9jYXRpb24sIHN0cmVhbS0+c2Vzc2lvbl9rZXlzW2ldLm1raV9pZCwgKm1r
aV9zaXplKSA9PSAwICkgewotICAgICAgICAgICAgICByZXR1cm4gJnN0cmVhbS0+c2Vzc2lvbl9r
ZXlzW2ldOwotCSAgfQotICAgICAgfQotICB9Ci0KLSAgKm1raV9zaXplID0gMDsKLSAgcmV0dXJu
IE5VTEw7CisgICAgKm1raV9zaXplID0gMDsKKyAgICByZXR1cm4gTlVMTDsKIH0KIAotc3RhdGlj
IHNydHBfZXJyX3N0YXR1c190Ci1zcnRwX2VzdGltYXRlX2luZGV4KHNydHBfcmRieF90ICpyZGJ4
LAotICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCByb2MsCi0gICAgICAgICAgICAgICAgICAg
IHNydHBfeHRkX3NlcV9udW1fdCAqZXN0LAotICAgICAgICAgICAgICAgICAgICBzcnRwX3NlcXVl
bmNlX251bWJlcl90IHNlcSwKLSAgICAgICAgICAgICAgICAgICAgaW50ICpkZWx0YSkKK3N0YXRp
YyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2VzdGltYXRlX2luZGV4KHNydHBfcmRieF90ICpyZGJ4
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3Qg
cm9jLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF94
dGRfc2VxX251bV90ICplc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBzcnRwX3NlcXVlbmNlX251bWJlcl90IHNlcSwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGludCAqZGVsdGEpCiB7CiAjaWZkZWYgTk9fNjRCSVRf
TUFUSAotICB1aW50MzJfdCBpbnRlcm5hbF9wa3RfaWR4X3JlZHVjZWQ7Ci0gIHVpbnQzMl90IGV4
dGVybmFsX3BrdF9pZHhfcmVkdWNlZDsKLSAgdWludDMyX3QgaW50ZXJuYWxfcm9jOwotICB1aW50
MzJfdCByb2NfZGlmZmVyZW5jZTsKKyAgICB1aW50MzJfdCBpbnRlcm5hbF9wa3RfaWR4X3JlZHVj
ZWQ7CisgICAgdWludDMyX3QgZXh0ZXJuYWxfcGt0X2lkeF9yZWR1Y2VkOworICAgIHVpbnQzMl90
IGludGVybmFsX3JvYzsKKyAgICB1aW50MzJfdCByb2NfZGlmZmVyZW5jZTsKICNlbmRpZgogCiAj
aWZkZWYgTk9fNjRCSVRfTUFUSAotICAqZXN0ID0gKHNydHBfeHRkX3NlcV9udW1fdCltYWtlNjQo
cm9jID4+IDE2LCAocm9jIDw8IDE2KSB8IHNlcSk7Ci0gICpkZWx0YSA9IGxvdzMyKGVzdCkgLSBy
ZGJ4LT5pbmRleDsKKyAgICAqZXN0ID0gKHNydHBfeHRkX3NlcV9udW1fdCltYWtlNjQocm9jID4+
IDE2LCAocm9jIDw8IDE2KSB8IHNlcSk7CisgICAgKmRlbHRhID0gbG93MzIoZXN0KSAtIHJkYngt
PmluZGV4OwogI2Vsc2UKLSAgKmVzdCA9IChzcnRwX3h0ZF9zZXFfbnVtX3QpKCgodWludDY0X3Qp
cm9jKSA8PCAxNikgfCBzZXE7Ci0gICpkZWx0YSA9IChpbnQpKCplc3QgLSByZGJ4LT5pbmRleCk7
CisgICAgKmVzdCA9IChzcnRwX3h0ZF9zZXFfbnVtX3QpKCgodWludDY0X3Qpcm9jKSA8PCAxNikg
fCBzZXE7CisgICAgKmRlbHRhID0gKGludCkoKmVzdCAtIHJkYngtPmluZGV4KTsKICNlbmRpZgog
Ci0gIGlmICgqZXN0ID4gcmRieC0+aW5kZXgpIHsKKyAgICBpZiAoKmVzdCA+IHJkYngtPmluZGV4
KSB7CiAjaWZkZWYgTk9fNjRCSVRfTUFUSAotICAgIGludGVybmFsX3JvYyA9ICh1aW50MzJfdCko
cmRieC0+aW5kZXggPj4gMTYpOwotICAgIHJvY19kaWZmZXJlbmNlID0gcm9jIC0gaW50ZXJuYWxf
cm9jOwotICAgIGlmIChyb2NfZGlmZmVyZW5jZSA+IDEpIHsKLSAgICAgICpkZWx0YSA9IDA7Ci0g
ICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX3BrdF9pZHhfYWR2OwotICAgIH0KKyAgICAgICAg
aW50ZXJuYWxfcm9jID0gKHVpbnQzMl90KShyZGJ4LT5pbmRleCA+PiAxNik7CisgICAgICAgIHJv
Y19kaWZmZXJlbmNlID0gcm9jIC0gaW50ZXJuYWxfcm9jOworICAgICAgICBpZiAocm9jX2RpZmZl
cmVuY2UgPiAxKSB7CisgICAgICAgICAgICAqZGVsdGEgPSAwOworICAgICAgICAgICAgcmV0dXJu
IHNydHBfZXJyX3N0YXR1c19wa3RfaWR4X2FkdjsKKyAgICAgICAgfQogCi0gICAgaW50ZXJuYWxf
cGt0X2lkeF9yZWR1Y2VkID0gKHVpbnQzMl90KShyZGJ4LT5pbmRleCAmIDB4RkZGRik7Ci0gICAg
ZXh0ZXJuYWxfcGt0X2lkeF9yZWR1Y2VkID0gKHVpbnQzMl90KSgocm9jX2RpZmZlcmVuY2UgPDwg
MTYpIHwgc2VxKTsKKyAgICAgICAgaW50ZXJuYWxfcGt0X2lkeF9yZWR1Y2VkID0gKHVpbnQzMl90
KShyZGJ4LT5pbmRleCAmIDB4RkZGRik7CisgICAgICAgIGV4dGVybmFsX3BrdF9pZHhfcmVkdWNl
ZCA9ICh1aW50MzJfdCkoKHJvY19kaWZmZXJlbmNlIDw8IDE2KSB8IHNlcSk7CiAKLSAgICBpZiAo
ZXh0ZXJuYWxfcGt0X2lkeF9yZWR1Y2VkIC0gaW50ZXJuYWxfcGt0X2lkeF9yZWR1Y2VkID4KLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXFfbnVt
X21lZGlhbikgewotICAgICAgKmRlbHRhID0gMDsKLSAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0
dXNfcGt0X2lkeF9hZHY7Ci0gICAgfQorICAgICAgICBpZiAoZXh0ZXJuYWxfcGt0X2lkeF9yZWR1
Y2VkIC0gaW50ZXJuYWxfcGt0X2lkeF9yZWR1Y2VkID4KKyAgICAgICAgICAgIHNlcV9udW1fbWVk
aWFuKSB7CisgICAgICAgICAgICAqZGVsdGEgPSAwOworICAgICAgICAgICAgcmV0dXJuIHNydHBf
ZXJyX3N0YXR1c19wa3RfaWR4X2FkdjsKKyAgICAgICAgfQogI2Vsc2UKLSAgICBpZiAoKmVzdCAt
IHJkYngtPmluZGV4ID4gc2VxX251bV9tZWRpYW4pIHsKLSAgICAgICpkZWx0YSA9IDA7Ci0gICAg
ICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX3BrdF9pZHhfYWR2OwotICAgIH0KKyAgICAgICAgaWYg
KCplc3QgLSByZGJ4LT5pbmRleCA+IHNlcV9udW1fbWVkaWFuKSB7CisgICAgICAgICAgICAqZGVs
dGEgPSAwOworICAgICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19wa3RfaWR4X2FkdjsK
KyAgICAgICAgfQogI2VuZGlmCi0gIH0gZWxzZSBpZiAoKmVzdCA8IHJkYngtPmluZGV4KSB7Cisg
ICAgfSBlbHNlIGlmICgqZXN0IDwgcmRieC0+aW5kZXgpIHsKICNpZmRlZiBOT182NEJJVF9NQVRI
CiAKLSAgICBpbnRlcm5hbF9yb2MgPSAodWludDMyX3QpKHJkYngtPmluZGV4ID4+IDE2KTsKLSAg
ICByb2NfZGlmZmVyZW5jZSA9IGludGVybmFsX3JvYyAtIHJvYzsKLSAgICBpZiAocm9jX2RpZmZl
cmVuY2UgPiAxKSB7Ci0gICAgICAqZGVsdGEgPSAwOwotICAgICAgcmV0dXJuIHNydHBfZXJyX3N0
YXR1c19wa3RfaWR4X2FkdjsKLSAgICB9CisgICAgICAgIGludGVybmFsX3JvYyA9ICh1aW50MzJf
dCkocmRieC0+aW5kZXggPj4gMTYpOworICAgICAgICByb2NfZGlmZmVyZW5jZSA9IGludGVybmFs
X3JvYyAtIHJvYzsKKyAgICAgICAgaWYgKHJvY19kaWZmZXJlbmNlID4gMSkgeworICAgICAgICAg
ICAgKmRlbHRhID0gMDsKKyAgICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfcGt0X2lk
eF9hZHY7CisgICAgICAgIH0KIAotICAgIGludGVybmFsX3BrdF9pZHhfcmVkdWNlZCA9Ci0gICAg
ICAgICAgICAgICAgKHVpbnQzMl90KSgocm9jX2RpZmZlcmVuY2UgPDwgMTYpIHwgcmRieC0+aW5k
ZXggJiAweEZGRkYpOwotICAgIGV4dGVybmFsX3BrdF9pZHhfcmVkdWNlZCA9ICh1aW50MzJfdCko
c2VxKTsKKyAgICAgICAgaW50ZXJuYWxfcGt0X2lkeF9yZWR1Y2VkID0KKyAgICAgICAgICAgICh1
aW50MzJfdCkoKHJvY19kaWZmZXJlbmNlIDw8IDE2KSB8IHJkYngtPmluZGV4ICYgMHhGRkZGKTsK
KyAgICAgICAgZXh0ZXJuYWxfcGt0X2lkeF9yZWR1Y2VkID0gKHVpbnQzMl90KShzZXEpOwogCi0g
ICAgaWYgKGludGVybmFsX3BrdF9pZHhfcmVkdWNlZCAtIGV4dGVybmFsX3BrdF9pZHhfcmVkdWNl
ZCA+Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
c2VxX251bV9tZWRpYW4pIHsKLSAgICAgICpkZWx0YSA9IDA7Ci0gICAgICByZXR1cm4gc3J0cF9l
cnJfc3RhdHVzX3BrdF9pZHhfb2xkOwotICAgIH0KKyAgICAgICAgaWYgKGludGVybmFsX3BrdF9p
ZHhfcmVkdWNlZCAtIGV4dGVybmFsX3BrdF9pZHhfcmVkdWNlZCA+CisgICAgICAgICAgICBzZXFf
bnVtX21lZGlhbikgeworICAgICAgICAgICAgKmRlbHRhID0gMDsKKyAgICAgICAgICAgIHJldHVy
biBzcnRwX2Vycl9zdGF0dXNfcGt0X2lkeF9vbGQ7CisgICAgICAgIH0KICNlbHNlCi0gICAgaWYg
KHJkYngtPmluZGV4IC0gKmVzdCA+IHNlcV9udW1fbWVkaWFuKSB7Ci0gICAgICAqZGVsdGEgPSAw
OwotICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19wa3RfaWR4X29sZDsKLSAgICB9CisgICAg
ICAgIGlmIChyZGJ4LT5pbmRleCAtICplc3QgPiBzZXFfbnVtX21lZGlhbikgeworICAgICAgICAg
ICAgKmRlbHRhID0gMDsKKyAgICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfcGt0X2lk
eF9vbGQ7CisgICAgICAgIH0KICNlbmRpZgotICB9CisgICAgfQogCi0gIHJldHVybiBzcnRwX2Vy
cl9zdGF0dXNfb2s7CisgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0KIAotc3RhdGlj
IHNydHBfZXJyX3N0YXR1c190Ci1zcnRwX2dldF9lc3RfcGt0X2luZGV4KHNydHBfaGRyX3QgKmhk
ciwKLSAgICAgICAgICAgICAgICAgICAgICAgc3J0cF9zdHJlYW1fY3R4X3QgKnN0cmVhbSwKLSAg
ICAgICAgICAgICAgICAgICAgICAgc3J0cF94dGRfc2VxX251bV90ICplc3QsCi0gICAgICAgICAg
ICAgICAgICAgICAgIGludCAqZGVsdGEpCitzdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9n
ZXRfZXN0X3BrdF9pbmRleChzcnRwX2hkcl90ICpoZHIsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBzcnRwX3N0cmVhbV9jdHhfdCAqc3RyZWFtLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF94dGRfc2Vx
X251bV90ICplc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBpbnQgKmRlbHRhKQogewotICBzcnRwX2Vycl9zdGF0dXNfdCByZXN1bHQgPSBzcnRwX2Vy
cl9zdGF0dXNfb2s7Ci0KLSAgaWYgKHN0cmVhbS0+cGVuZGluZ19yb2MpIHsKLSAgICByZXN1bHQg
PSBzcnRwX2VzdGltYXRlX2luZGV4KCZzdHJlYW0tPnJ0cF9yZGJ4LAotICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgc3RyZWFtLT5wZW5kaW5nX3JvYywKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGVzdCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG50
b2hzKGhkci0+c2VxKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlbHRhKTsK
LSAgfSBlbHNlIHsKLSAgICAvKiBlc3RpbWF0ZSBwYWNrZXQgaW5kZXggZnJvbSBzZXEuIG51bS4g
aW4gaGVhZGVyICovCi0gICAgKmRlbHRhID0gc3J0cF9yZGJ4X2VzdGltYXRlX2luZGV4KCZzdHJl
YW0tPnJ0cF9yZGJ4LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlc3Qs
Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG50b2hzKGhkci0+c2VxKSk7
Ci0gIH0KKyAgICBzcnRwX2Vycl9zdGF0dXNfdCByZXN1bHQgPSBzcnRwX2Vycl9zdGF0dXNfb2s7
CisKKyAgICBpZiAoc3RyZWFtLT5wZW5kaW5nX3JvYykgeworICAgICAgICByZXN1bHQgPSBzcnRw
X2VzdGltYXRlX2luZGV4KCZzdHJlYW0tPnJ0cF9yZGJ4LCBzdHJlYW0tPnBlbmRpbmdfcm9jLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVzdCwgbnRvaHMoaGRyLT5zZXEp
LCBkZWx0YSk7CisgICAgfSBlbHNlIHsKKyAgICAgICAgLyogZXN0aW1hdGUgcGFja2V0IGluZGV4
IGZyb20gc2VxLiBudW0uIGluIGhlYWRlciAqLworICAgICAgICAqZGVsdGEgPQorICAgICAgICAg
ICAgc3J0cF9yZGJ4X2VzdGltYXRlX2luZGV4KCZzdHJlYW0tPnJ0cF9yZGJ4LCBlc3QsIG50b2hz
KGhkci0+c2VxKSk7CisgICAgfQogCiAjaWZkZWYgTk9fNjRCSVRfTUFUSAotICBkZWJ1Z19wcmlu
dDIobW9kX3NydHAsICJlc3RpbWF0ZWQgdV9wYWNrZXQgaW5kZXg6ICUwOHglMDh4IiwgaGlnaDMy
KCplc3QpLCBsb3czMigqZXN0KSk7CisgICAgZGVidWdfcHJpbnQyKG1vZF9zcnRwLCAiZXN0aW1h
dGVkIHVfcGFja2V0IGluZGV4OiAlMDh4JTA4eCIsIGhpZ2gzMigqZXN0KSwKKyAgICAgICAgICAg
ICAgICAgbG93MzIoKmVzdCkpOwogI2Vsc2UKLSAgZGVidWdfcHJpbnQobW9kX3NydHAsICJlc3Rp
bWF0ZWQgdV9wYWNrZXQgaW5kZXg6ICUwMTZsbHgiLCAqZXN0KTsKKyAgICBkZWJ1Z19wcmludCht
b2Rfc3J0cCwgImVzdGltYXRlZCB1X3BhY2tldCBpbmRleDogJTAxNmxseCIsICplc3QpOwogI2Vu
ZGlmCi0gIHJldHVybiByZXN1bHQ7CisgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAogLyoKQEAgLTE2
NjIsMTYgKzE2NzgsMTggQEAgc3J0cF9nZXRfZXN0X3BrdF9pbmRleChzcnRwX2hkcl90ICpoZHIs
CiAgKiB3aGljaCBjdXJyZW50bHkgc3VwcG9ydHMgQUVTLUdDTSBlbmNyeXB0aW9uLiAgQWxsIHBh
Y2tldHMgYXJlCiAgKiBlbmNyeXB0ZWQgYW5kIGF1dGhlbnRpY2F0ZWQuCiAgKi8KLXN0YXRpYyBz
cnRwX2Vycl9zdGF0dXNfdAotc3J0cF9wcm90ZWN0X2FlYWQgKHNydHBfY3R4X3QgKmN0eCwgc3J0
cF9zdHJlYW1fY3R4X3QgKnN0cmVhbSwKLSAgICAgICAgICAgICAgICAgICB2b2lkICpydHBfaGRy
LCB1bnNpZ25lZCBpbnQgKnBrdF9vY3RldF9sZW4sCi0gICAgICAgICAgICAgICAgICAgc3J0cF9z
ZXNzaW9uX2tleXNfdCAqc2Vzc2lvbl9rZXlzLCB1bnNpZ25lZCBpbnQgdXNlX21raSkKK3N0YXRp
YyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3Byb3RlY3RfYWVhZChzcnRwX2N0eF90ICpjdHgsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF9zdHJlYW1fY3R4
X3QgKnN0cmVhbSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2
b2lkICpydHBfaGRyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHVuc2lnbmVkIGludCAqcGt0X29jdGV0X2xlbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBzcnRwX3Nlc3Npb25fa2V5c190ICpzZXNzaW9uX2tleXMsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IHVzZV9t
a2kpCiB7Ci0gICAgc3J0cF9oZHJfdCAqaGRyID0gKHNydHBfaGRyX3QqKXJ0cF9oZHI7Ci0gICAg
dWludDMyX3QgKmVuY19zdGFydDsgICAgICAgIC8qIHBvaW50ZXIgdG8gc3RhcnQgb2YgZW5jcnlw
dGVkIHBvcnRpb24gICovCi0gICAgaW50IGVuY19vY3RldF9sZW4gPSAwOyAvKiBudW1iZXIgb2Yg
b2N0ZXRzIGluIGVuY3J5cHRlZCBwb3J0aW9uICAqLwotICAgIHNydHBfeHRkX3NlcV9udW1fdCBl
c3Q7ICAgICAgICAgIC8qIGVzdGltYXRlZCB4dGRfc2VxX251bV90IG9mICpoZHIgICAgICAgICov
Ci0gICAgaW50IGRlbHRhOyAgICAgICAgICAgICAgICAgIC8qIGRlbHRhIG9mIGxvY2FsIHBrdCBp
ZHggYW5kIHRoYXQgaW4gaGRyICovCisgICAgc3J0cF9oZHJfdCAqaGRyID0gKHNydHBfaGRyX3Qg
KilydHBfaGRyOworICAgIHVpbnQzMl90ICplbmNfc3RhcnQ7ICAgIC8qIHBvaW50ZXIgdG8gc3Rh
cnQgb2YgZW5jcnlwdGVkIHBvcnRpb24gICovCisgICAgaW50IGVuY19vY3RldF9sZW4gPSAwOyAg
LyogbnVtYmVyIG9mIG9jdGV0cyBpbiBlbmNyeXB0ZWQgcG9ydGlvbiAgKi8KKyAgICBzcnRwX3h0
ZF9zZXFfbnVtX3QgZXN0OyAvKiBlc3RpbWF0ZWQgeHRkX3NlcV9udW1fdCBvZiAqaGRyICAgICAg
ICAqLworICAgIGludCBkZWx0YTsgICAgICAgICAgICAgIC8qIGRlbHRhIG9mIGxvY2FsIHBrdCBp
ZHggYW5kIHRoYXQgaW4gaGRyICovCiAgICAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVzOwogICAg
IHVpbnQzMl90IHRhZ19sZW47CiAgICAgdjEyOF90IGl2OwpAQCAtMTcwOCwxNyArMTcyNiwxOCBA
QCBzcnRwX3Byb3RlY3RfYWVhZCAoc3J0cF9jdHhfdCAqY3R4LCBzcnRwX3N0cmVhbV9jdHhfdCAq
c3RyZWFtLAogICAgICAqIGV4dGVuc2lvbiwgaWYgcHJlc2VudDsgb3RoZXJ3aXNlLCBpdCBzdGFy
dHMgYWZ0ZXIgdGhlIGxhc3QgY3NyYywKICAgICAgKiBpZiBhbnkgYXJlIHByZXNlbnQKICAgICAg
Ki8KLSAgICAgZW5jX3N0YXJ0ID0gKHVpbnQzMl90KiloZHIgKyB1aW50MzJzX2luX3J0cF9oZWFk
ZXIgKyBoZHItPmNjOwotICAgICBpZiAoaGRyLT54ID09IDEpIHsKLSAgICAgICAgIHh0bl9oZHIg
PSAoc3J0cF9oZHJfeHRuZF90KillbmNfc3RhcnQ7Ci0gICAgICAgICBlbmNfc3RhcnQgKz0gKG50
b2hzKHh0bl9oZHItPmxlbmd0aCkgKyAxKTsKLSAgICAgfQotICAgICAvKiBub3RlOiB0aGUgcGFz
c2VkIHNpemUgaXMgd2l0aG91dCB0aGUgYXV0aCB0YWcgKi8KLSAgICAgaWYgKCEoKHVpbnQ4X3Qq
KWVuY19zdGFydCA8PSAodWludDhfdCopaGRyICsgKnBrdF9vY3RldF9sZW4pKQotICAgICAgICAg
cmV0dXJuIHNydHBfZXJyX3N0YXR1c19wYXJzZV9lcnI7Ci0gICAgIGVuY19vY3RldF9sZW4gPSAo
aW50KSgqcGt0X29jdGV0X2xlbiAtCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAoKHVpbnQ4X3QqKWVuY19zdGFydCAtICh1aW50OF90KiloZHIpKTsKLSAgICAgaWYgKGVuY19v
Y3RldF9sZW4gPCAwKSByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX3BhcnNlX2VycjsKKyAgICBlbmNf
c3RhcnQgPSAodWludDMyX3QgKiloZHIgKyB1aW50MzJzX2luX3J0cF9oZWFkZXIgKyBoZHItPmNj
OworICAgIGlmIChoZHItPnggPT0gMSkgeworICAgICAgICB4dG5faGRyID0gKHNydHBfaGRyX3h0
bmRfdCAqKWVuY19zdGFydDsKKyAgICAgICAgZW5jX3N0YXJ0ICs9IChudG9ocyh4dG5faGRyLT5s
ZW5ndGgpICsgMSk7CisgICAgfQorICAgIC8qIG5vdGU6IHRoZSBwYXNzZWQgc2l6ZSBpcyB3aXRo
b3V0IHRoZSBhdXRoIHRhZyAqLworICAgIGlmICghKCh1aW50OF90ICopZW5jX3N0YXJ0IDw9ICh1
aW50OF90ICopaGRyICsgKnBrdF9vY3RldF9sZW4pKQorICAgICAgICByZXR1cm4gc3J0cF9lcnJf
c3RhdHVzX3BhcnNlX2VycjsKKyAgICBlbmNfb2N0ZXRfbGVuID0KKyAgICAgICAgKGludCkoKnBr
dF9vY3RldF9sZW4gLSAoKHVpbnQ4X3QgKillbmNfc3RhcnQgLSAodWludDhfdCAqKWhkcikpOwor
ICAgIGlmIChlbmNfb2N0ZXRfbGVuIDwgMCkKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1
c19wYXJzZV9lcnI7CiAKICAgICAvKgogICAgICAqIGVzdGltYXRlIHRoZSBwYWNrZXQgaW5kZXgg
dXNpbmcgdGhlIHN0YXJ0IG9mIHRoZSByZXBsYXkgd2luZG93CkBAIC0xNzI3LDE2ICsxNzQ2LDE2
IEBAIHNydHBfcHJvdGVjdF9hZWFkIChzcnRwX2N0eF90ICpjdHgsIHNydHBfc3RyZWFtX2N0eF90
ICpzdHJlYW0sCiAgICAgZGVsdGEgPSBzcnRwX3JkYnhfZXN0aW1hdGVfaW5kZXgoJnN0cmVhbS0+
cnRwX3JkYngsICZlc3QsIG50b2hzKGhkci0+c2VxKSk7CiAgICAgc3RhdHVzID0gc3J0cF9yZGJ4
X2NoZWNrKCZzdHJlYW0tPnJ0cF9yZGJ4LCBkZWx0YSk7CiAgICAgaWYgKHN0YXR1cykgewotCWlm
IChzdGF0dXMgIT0gc3J0cF9lcnJfc3RhdHVzX3JlcGxheV9mYWlsIHx8ICFzdHJlYW0tPmFsbG93
X3JlcGVhdF90eCkgewotCSAgICByZXR1cm4gc3RhdHVzOyAgLyogd2UndmUgYmVlbiBhc2tlZCB0
byByZXVzZSBhbiBpbmRleCAqLwotCX0KKyAgICAgICAgaWYgKHN0YXR1cyAhPSBzcnRwX2Vycl9z
dGF0dXNfcmVwbGF5X2ZhaWwgfHwgIXN0cmVhbS0+YWxsb3dfcmVwZWF0X3R4KSB7CisgICAgICAg
ICAgICByZXR1cm4gc3RhdHVzOyAvKiB3ZSd2ZSBiZWVuIGFza2VkIHRvIHJldXNlIGFuIGluZGV4
ICovCisgICAgICAgIH0KICAgICB9IGVsc2UgewotCXNydHBfcmRieF9hZGRfaW5kZXgoJnN0cmVh
bS0+cnRwX3JkYngsIGRlbHRhKTsKKyAgICAgICAgc3J0cF9yZGJ4X2FkZF9pbmRleCgmc3RyZWFt
LT5ydHBfcmRieCwgZGVsdGEpOwogICAgIH0KIAogI2lmZGVmIE5PXzY0QklUX01BVEgKLSAgICBk
ZWJ1Z19wcmludDIobW9kX3NydHAsICJlc3RpbWF0ZWQgcGFja2V0IGluZGV4OiAlMDh4JTA4eCIs
Ci0gICAgICAgICAgICAgICAgIGhpZ2gzMihlc3QpLCBsb3czMihlc3QpKTsKKyAgICBkZWJ1Z19w
cmludDIobW9kX3NydHAsICJlc3RpbWF0ZWQgcGFja2V0IGluZGV4OiAlMDh4JTA4eCIsIGhpZ2gz
Mihlc3QpLAorICAgICAgICAgICAgICAgICBsb3czMihlc3QpKTsKICNlbHNlCiAgICAgZGVidWdf
cHJpbnQobW9kX3NydHAsICJlc3RpbWF0ZWQgcGFja2V0IGluZGV4OiAlMDE2bGx4IiwgZXN0KTsK
ICNlbmRpZgpAQCAtMTc0NSw1MCArMTc2NCw1MCBAQCBzcnRwX3Byb3RlY3RfYWVhZCAoc3J0cF9j
dHhfdCAqY3R4LCBzcnRwX3N0cmVhbV9jdHhfdCAqc3RyZWFtLAogICAgICAqIEFFQUQgdXNlcyBh
IG5ldyBJViBmb3JtYXRpb24gbWV0aG9kCiAgICAgICovCiAgICAgc3J0cF9jYWxjX2FlYWRfaXYo
c2Vzc2lvbl9rZXlzLCAmaXYsICZlc3QsIGhkcik7Ci0gICAgLyogc2hpZnQgZXN0LCBwdXQgaW50
byBuZXR3b3JrIGJ5dGUgb3JkZXIgKi8KKy8qIHNoaWZ0IGVzdCwgcHV0IGludG8gbmV0d29yayBi
eXRlIG9yZGVyICovCiAjaWZkZWYgTk9fNjRCSVRfTUFUSAotICAgIGVzdCA9IGJlNjRfdG9fY3B1
KG1ha2U2NCgoaGlnaDMyKGVzdCkgPDwgMTYpIHwKLSAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgKGxvdzMyKGVzdCkgPj4gMTYpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsb3cz
Mihlc3QpIDw8IDE2KSk7CisgICAgZXN0ID0gYmU2NF90b19jcHUoCisgICAgICAgIG1ha2U2NCgo
aGlnaDMyKGVzdCkgPDwgMTYpIHwgKGxvdzMyKGVzdCkgPj4gMTYpLCBsb3czMihlc3QpIDw8IDE2
KSk7CiAjZWxzZQogICAgIGVzdCA9IGJlNjRfdG9fY3B1KGVzdCA8PCAxNik7CiAjZW5kaWYKIAot
ICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3NldF9pdihzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXIs
Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICh1aW50OF90KikmaXYsIHNydHBfZGly
ZWN0aW9uX2VuY3J5cHQpOworICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3NldF9pdihzZXNzaW9u
X2tleXMtPnJ0cF9jaXBoZXIsICh1aW50OF90ICopJml2LAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBzcnRwX2RpcmVjdGlvbl9lbmNyeXB0KTsKICAgICBpZiAoIXN0YXR1cyAmJiBz
ZXNzaW9uX2tleXMtPnJ0cF94dG5faGRyX2NpcGhlcikgewotICAgICAgaXYudjMyWzBdID0gMDsK
LSAgICAgIGl2LnYzMlsxXSA9IGhkci0+c3NyYzsKLSAgICAgIGl2LnY2NFsxXSA9IGVzdDsKLSAg
ICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3NldF9pdihzZXNzaW9uX2tleXMtPnJ0cF94dG5faGRy
X2NpcGhlciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAodWludDhfdCopJml2
LCBzcnRwX2RpcmVjdGlvbl9lbmNyeXB0KTsKKyAgICAgICAgaXYudjMyWzBdID0gMDsKKyAgICAg
ICAgaXYudjMyWzFdID0gaGRyLT5zc3JjOworICAgICAgICBpdi52NjRbMV0gPSBlc3Q7CisgICAg
ICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3NldF9pdihzZXNzaW9uX2tleXMtPnJ0cF94dG5faGRy
X2NpcGhlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICh1aW50OF90ICop
Jml2LCBzcnRwX2RpcmVjdGlvbl9lbmNyeXB0KTsKICAgICB9CiAgICAgaWYgKHN0YXR1cykgewog
ICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2NpcGhlcl9mYWlsOwogICAgIH0KIAogICAg
IGlmICh4dG5faGRyICYmIHNlc3Npb25fa2V5cy0+cnRwX3h0bl9oZHJfY2lwaGVyKSB7Ci0gICAg
ICAvKgotICAgICAgICogZXh0ZW5zaW9ucyBoZWFkZXIgZW5jcnlwdGlvbiBSRkMgNjkwNAotICAg
ICAgICovCi0Jc3RhdHVzID0gc3J0cF9wcm9jZXNzX2hlYWRlcl9lbmNyeXB0aW9uKHN0cmVhbSwg
eHRuX2hkciwgc2Vzc2lvbl9rZXlzKTsKLSAgICAgIGlmIChzdGF0dXMpIHsKLSAgICAgICAgcmV0
dXJuIHN0YXR1czsKLSAgICAgIH0KKyAgICAgICAgLyoKKyAgICAgICAgICogZXh0ZW5zaW9ucyBo
ZWFkZXIgZW5jcnlwdGlvbiBSRkMgNjkwNAorICAgICAgICAgKi8KKyAgICAgICAgc3RhdHVzID0g
c3J0cF9wcm9jZXNzX2hlYWRlcl9lbmNyeXB0aW9uKHN0cmVhbSwgeHRuX2hkciwgc2Vzc2lvbl9r
ZXlzKTsKKyAgICAgICAgaWYgKHN0YXR1cykgeworICAgICAgICAgICAgcmV0dXJuIHN0YXR1czsK
KyAgICAgICAgfQogICAgIH0KIAogICAgIC8qCi0gICAgICogU2V0IHRoZSBBQUQgb3ZlciB0aGUg
UlRQIGhlYWRlciAKKyAgICAgKiBTZXQgdGhlIEFBRCBvdmVyIHRoZSBSVFAgaGVhZGVyCiAgICAg
ICovCiAgICAgYWFkX2xlbiA9ICh1aW50OF90ICopZW5jX3N0YXJ0IC0gKHVpbnQ4X3QgKiloZHI7
Ci0gICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfc2V0X2FhZChzZXNzaW9uX2tleXMtPnJ0cF9jaXBo
ZXIsICh1aW50OF90KiloZHIsIGFhZF9sZW4pOworICAgIHN0YXR1cyA9CisgICAgICAgIHNydHBf
Y2lwaGVyX3NldF9hYWQoc2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVyLCAodWludDhfdCAqKWhkciwg
YWFkX2xlbik7CiAgICAgaWYgKHN0YXR1cykgewotICAgICAgICByZXR1cm4gKCBzcnRwX2Vycl9z
dGF0dXNfY2lwaGVyX2ZhaWwpOworICAgICAgICByZXR1cm4gKHNydHBfZXJyX3N0YXR1c19jaXBo
ZXJfZmFpbCk7CiAgICAgfQogCiAgICAgLyogRW5jcnlwdCB0aGUgcGF5bG9hZCAgKi8KLSAgICBz
dGF0dXMgPSBzcnRwX2NpcGhlcl9lbmNyeXB0KHNlc3Npb25fa2V5cy0+cnRwX2NpcGhlciwKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAodWludDhfdCopZW5jX3N0YXJ0LCAodW5zaWduZWQg
aW50ICopJmVuY19vY3RldF9sZW4pOworICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX2VuY3J5cHQo
c2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVyLCAodWludDhfdCAqKWVuY19zdGFydCwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICh1bnNpZ25lZCBpbnQgKikmZW5jX29jdGV0X2xlbik7
CiAgICAgaWYgKHN0YXR1cykgewogICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2NpcGhl
cl9mYWlsOwogICAgIH0KQEAgLTE3OTYsMTAgKzE4MTUsMTEgQEAgc3J0cF9wcm90ZWN0X2FlYWQg
KHNydHBfY3R4X3QgKmN0eCwgc3J0cF9zdHJlYW1fY3R4X3QgKnN0cmVhbSwKICAgICAgKiBJZiB3
ZSdyZSBkb2luZyBHQ00sIHdlIG5lZWQgdG8gZ2V0IHRoZSB0YWcKICAgICAgKiBhbmQgYXBwZW5k
IHRoYXQgdG8gdGhlIG91dHB1dAogICAgICAqLwotICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX2dl
dF90YWcoc2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVyLCAKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAodWludDhfdCopZW5jX3N0YXJ0K2VuY19vY3RldF9sZW4sICZ0YWdfbGVuKTsKKyAgICBz
dGF0dXMgPQorICAgICAgICBzcnRwX2NpcGhlcl9nZXRfdGFnKHNlc3Npb25fa2V5cy0+cnRwX2Np
cGhlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAodWludDhfdCAqKWVuY19zdGFydCAr
IGVuY19vY3RldF9sZW4sICZ0YWdfbGVuKTsKICAgICBpZiAoc3RhdHVzKSB7Ci0JcmV0dXJuICgg
c3J0cF9lcnJfc3RhdHVzX2NpcGhlcl9mYWlsKTsKKyAgICAgICAgcmV0dXJuIChzcnRwX2Vycl9z
dGF0dXNfY2lwaGVyX2ZhaWwpOwogICAgIH0KIAogICAgIG1raV9sb2NhdGlvbiA9ICh1aW50OF90
ICopaGRyICsgKnBrdF9vY3RldF9sZW4gKyB0YWdfbGVuOwpAQCAtMTgxNCw3ICsxODM0LDYgQEAg
c3J0cF9wcm90ZWN0X2FlYWQgKHNydHBfY3R4X3QgKmN0eCwgc3J0cF9zdHJlYW1fY3R4X3QgKnN0
cmVhbSwKICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQogCi0KIC8qCiAgKiBUaGlz
IGZ1bmN0aW9uIGhhbmRsZXMgaW5jb21pbmcgU1JUUCBwYWNrZXRzIHdoaWxlIGluIEFFQUQgbW9k
ZSwKICAqIHdoaWNoIGN1cnJlbnRseSBzdXBwb3J0cyBBRVMtR0NNIGVuY3J5cHRpb24uICBBbGwg
cGFja2V0cyBhcmUKQEAgLTE4MjIsMTMgKzE4NDEsMTcgQEAgc3J0cF9wcm90ZWN0X2FlYWQgKHNy
dHBfY3R4X3QgKmN0eCwgc3J0cF9zdHJlYW1fY3R4X3QgKnN0cmVhbSwKICAqIG9mIHRoZSBwYWNr
ZXQgc3RyZWFtIGFuZCBpcyBhdXRvbWF0aWNhbGx5IGNoZWNrZWQgYnkgR0NNCiAgKiB3aGVuIGRl
Y3J5cHRpbmcgdGhlIHBheWxvYWQuCiAgKi8KLXN0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdAotc3J0
cF91bnByb3RlY3RfYWVhZCAoc3J0cF9jdHhfdCAqY3R4LCBzcnRwX3N0cmVhbV9jdHhfdCAqc3Ry
ZWFtLCBpbnQgZGVsdGEsIAotICAgICAgICAgICAgICAgICAgICAgc3J0cF94dGRfc2VxX251bV90
IGVzdCwgdm9pZCAqc3J0cF9oZHIsIHVuc2lnbmVkIGludCAqcGt0X29jdGV0X2xlbiwKLSAgICAg
ICAgICAgICAgICAgICAgIHNydHBfc2Vzc2lvbl9rZXlzX3QgKnNlc3Npb25fa2V5cywgdW5zaWdu
ZWQgaW50IG1raV9zaXplKQorc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfdW5wcm90ZWN0
X2FlYWQoc3J0cF9jdHhfdCAqY3R4LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgc3J0cF9zdHJlYW1fY3R4X3QgKnN0cmVhbSwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBkZWx0YSwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfeHRkX3NlcV9udW1fdCBlc3QsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2b2lkICpzcnRwX2hkciwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGlu
dCAqcGt0X29jdGV0X2xlbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHNydHBfc2Vzc2lvbl9rZXlzX3QgKnNlc3Npb25fa2V5cywKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBta2lfc2l6ZSkKIHsK
LSAgICBzcnRwX2hkcl90ICpoZHIgPSAoc3J0cF9oZHJfdCopc3J0cF9oZHI7Ci0gICAgdWludDMy
X3QgKmVuY19zdGFydDsgICAgICAgIC8qIHBvaW50ZXIgdG8gc3RhcnQgb2YgZW5jcnlwdGVkIHBv
cnRpb24gICovCisgICAgc3J0cF9oZHJfdCAqaGRyID0gKHNydHBfaGRyX3QgKilzcnRwX2hkcjsK
KyAgICB1aW50MzJfdCAqZW5jX3N0YXJ0OyAgICAgICAgICAgIC8qIHBvaW50ZXIgdG8gc3RhcnQg
b2YgZW5jcnlwdGVkIHBvcnRpb24gICovCiAgICAgdW5zaWduZWQgaW50IGVuY19vY3RldF9sZW4g
PSAwOyAvKiBudW1iZXIgb2Ygb2N0ZXRzIGluIGVuY3J5cHRlZCBwb3J0aW9uICovCiAgICAgdjEy
OF90IGl2OwogICAgIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKQEAgLTE4MzksNyArMTg2Miw4
IEBAIHNydHBfdW5wcm90ZWN0X2FlYWQgKHNydHBfY3R4X3QgKmN0eCwgc3J0cF9zdHJlYW1fY3R4
X3QgKnN0cmVhbSwgaW50IGRlbHRhLAogICAgIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAiZnVuY3Rp
b24gc3J0cF91bnByb3RlY3RfYWVhZCIsIE5VTEwpOwogCiAjaWZkZWYgTk9fNjRCSVRfTUFUSAot
ICAgIGRlYnVnX3ByaW50Mihtb2Rfc3J0cCwgImVzdGltYXRlZCB1X3BhY2tldCBpbmRleDogJTA4
eCUwOHgiLCBoaWdoMzIoZXN0KSwgbG93MzIoZXN0KSk7CisgICAgZGVidWdfcHJpbnQyKG1vZF9z
cnRwLCAiZXN0aW1hdGVkIHVfcGFja2V0IGluZGV4OiAlMDh4JTA4eCIsIGhpZ2gzMihlc3QpLAor
ICAgICAgICAgICAgICAgICBsb3czMihlc3QpKTsKICNlbHNlCiAgICAgZGVidWdfcHJpbnQobW9k
X3NydHAsICJlc3RpbWF0ZWQgdV9wYWNrZXQgaW5kZXg6ICUwMTZsbHgiLCBlc3QpOwogI2VuZGlm
CkBAIC0xODQ4LDIxICsxODcyLDIyIEBAIHNydHBfdW5wcm90ZWN0X2FlYWQgKHNydHBfY3R4X3Qg
KmN0eCwgc3J0cF9zdHJlYW1fY3R4X3QgKnN0cmVhbSwgaW50IGRlbHRhLAogICAgIHRhZ19sZW4g
PSBzcnRwX2F1dGhfZ2V0X3RhZ19sZW5ndGgoc2Vzc2lvbl9rZXlzLT5ydHBfYXV0aCk7CiAKICAg
ICAvKgotICAgICAqIEFFQUQgdXNlcyBhIG5ldyBJViBmb3JtYXRpb24gbWV0aG9kIAorICAgICAq
IEFFQUQgdXNlcyBhIG5ldyBJViBmb3JtYXRpb24gbWV0aG9kCiAgICAgICovCiAgICAgc3J0cF9j
YWxjX2FlYWRfaXYoc2Vzc2lvbl9rZXlzLCAmaXYsICZlc3QsIGhkcik7Ci0gICAgc3RhdHVzID0g
c3J0cF9jaXBoZXJfc2V0X2l2KHNlc3Npb25fa2V5cy0+cnRwX2NpcGhlciwKLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgKHVpbnQ4X3QqKSZpdiwgc3J0cF9kaXJlY3Rpb25fZGVjcnlw
dCk7CisgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfc2V0X2l2KHNlc3Npb25fa2V5cy0+cnRwX2Np
cGhlciwgKHVpbnQ4X3QgKikmaXYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNy
dHBfZGlyZWN0aW9uX2RlY3J5cHQpOwogICAgIGlmICghc3RhdHVzICYmIHNlc3Npb25fa2V5cy0+
cnRwX3h0bl9oZHJfY2lwaGVyKSB7Ci0gICAgICBpdi52MzJbMF0gPSAwOwotICAgICAgaXYudjMy
WzFdID0gaGRyLT5zc3JjOworICAgICAgICBpdi52MzJbMF0gPSAwOworICAgICAgICBpdi52MzJb
MV0gPSBoZHItPnNzcmM7CiAjaWZkZWYgTk9fNjRCSVRfTUFUSAotICAgICAgaXYudjY0WzFdID0g
YmU2NF90b19jcHUobWFrZTY0KChoaWdoMzIoZXN0KSA8PCAxNikgfCAobG93MzIoZXN0KSA+PiAx
NiksCi0gICAgICAgICAgICAgICAgICBsb3czMihlc3QpIDw8IDE2KSk7CisgICAgICAgIGl2LnY2
NFsxXSA9IGJlNjRfdG9fY3B1KAorICAgICAgICAgICAgbWFrZTY0KChoaWdoMzIoZXN0KSA8PCAx
NikgfCAobG93MzIoZXN0KSA+PiAxNiksIGxvdzMyKGVzdCkgPDwgMTYpKTsKICNlbHNlCi0gICAg
ICBpdi52NjRbMV0gPSBiZTY0X3RvX2NwdShlc3QgPDwgMTYpOworICAgICAgICBpdi52NjRbMV0g
PSBiZTY0X3RvX2NwdShlc3QgPDwgMTYpOwogI2VuZGlmCi0gICAgICBzdGF0dXMgPSBzcnRwX2Np
cGhlcl9zZXRfaXYoc2Vzc2lvbl9rZXlzLT5ydHBfeHRuX2hkcl9jaXBoZXIsICh1aW50OF90Kikm
aXYsIHNydHBfZGlyZWN0aW9uX2VuY3J5cHQpOworICAgICAgICBzdGF0dXMgPSBzcnRwX2NpcGhl
cl9zZXRfaXYoc2Vzc2lvbl9rZXlzLT5ydHBfeHRuX2hkcl9jaXBoZXIsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAodWludDhfdCAqKSZpdiwgc3J0cF9kaXJlY3Rpb25fZW5j
cnlwdCk7CiAgICAgfQogICAgIGlmIChzdGF0dXMpIHsKICAgICAgICAgcmV0dXJuIHNydHBfZXJy
X3N0YXR1c19jaXBoZXJfZmFpbDsKQEAgLTE4NzQsMjUgKzE4OTksMjYgQEAgc3J0cF91bnByb3Rl
Y3RfYWVhZCAoc3J0cF9jdHhfdCAqY3R4LCBzcnRwX3N0cmVhbV9jdHhfdCAqc3RyZWFtLCBpbnQg
ZGVsdGEsCiAgICAgICogZXh0ZW5zaW9uLCBpZiBwcmVzZW50OyBvdGhlcndpc2UsIGl0IHN0YXJ0
cyBhZnRlciB0aGUgbGFzdCBjc3JjLAogICAgICAqIGlmIGFueSBhcmUgcHJlc2VudAogICAgICAq
LwotICAgIGVuY19zdGFydCA9ICh1aW50MzJfdCopaGRyICsgdWludDMyc19pbl9ydHBfaGVhZGVy
ICsgaGRyLT5jYzsKKyAgICBlbmNfc3RhcnQgPSAodWludDMyX3QgKiloZHIgKyB1aW50MzJzX2lu
X3J0cF9oZWFkZXIgKyBoZHItPmNjOwogICAgIGlmIChoZHItPnggPT0gMSkgewotICAgICAgICB4
dG5faGRyID0gKHNydHBfaGRyX3h0bmRfdCopZW5jX3N0YXJ0OworICAgICAgICB4dG5faGRyID0g
KHNydHBfaGRyX3h0bmRfdCAqKWVuY19zdGFydDsKICAgICAgICAgZW5jX3N0YXJ0ICs9IChudG9o
cyh4dG5faGRyLT5sZW5ndGgpICsgMSk7CiAgICAgfQotICAgIGlmICghKCh1aW50OF90KillbmNf
c3RhcnQgPD0gKHVpbnQ4X3QqKWhkciArICgqcGt0X29jdGV0X2xlbiAtIHRhZ19sZW4gLSBta2lf
c2l6ZSkpKQorICAgIGlmICghKCh1aW50OF90ICopZW5jX3N0YXJ0IDw9CisgICAgICAgICAgKHVp
bnQ4X3QgKiloZHIgKyAoKnBrdF9vY3RldF9sZW4gLSB0YWdfbGVuIC0gbWtpX3NpemUpKSkKICAg
ICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19wYXJzZV9lcnI7CiAgICAgLyoKLSAgICAgKiBX
ZSBwYXNzIHRoZSB0YWcgZG93biB0byB0aGUgY2lwaGVyIHdoZW4gZG9pbmcgR0NNIG1vZGUgCisg
ICAgICogV2UgcGFzcyB0aGUgdGFnIGRvd24gdG8gdGhlIGNpcGhlciB3aGVuIGRvaW5nIEdDTSBt
b2RlCiAgICAgICovCiAgICAgZW5jX29jdGV0X2xlbiA9ICh1bnNpZ25lZCBpbnQpKCpwa3Rfb2N0
ZXRfbGVuIC0gbWtpX3NpemUgLQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAo
KHVpbnQ4X3QqKWVuY19zdGFydCAtICh1aW50OF90KiloZHIpKTsKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKCh1aW50OF90ICopZW5jX3N0YXJ0IC0gKHVpbnQ4X3QgKiloZHIp
KTsKIAogICAgIC8qCiAgICAgICogU2FuaXR5IGNoZWNrIHRoZSBlbmNyeXB0ZWQgcGF5bG9hZCBs
ZW5ndGggYWdhaW5zdAogICAgICAqIHRoZSB0YWcgc2l6ZS4gIEl0IG11c3QgYWx3YXlzIGJlIGF0
IGxlYXN0IGFzIGxhcmdlCiAgICAgICogYXMgdGhlIHRhZyBsZW5ndGguCiAgICAgICovCi0gICAg
aWYgKGVuY19vY3RldF9sZW4gPCAodW5zaWduZWQgaW50KSB0YWdfbGVuKSB7CisgICAgaWYgKGVu
Y19vY3RldF9sZW4gPCAodW5zaWduZWQgaW50KXRhZ19sZW4pIHsKICAgICAgICAgcmV0dXJuIHNy
dHBfZXJyX3N0YXR1c19jaXBoZXJfZmFpbDsKICAgICB9CiAKQEAgLTE5MTgsMjcgKzE5NDQsMjgg
QEAgc3J0cF91bnByb3RlY3RfYWVhZCAoc3J0cF9jdHhfdCAqY3R4LCBzcnRwX3N0cmVhbV9jdHhf
dCAqc3RyZWFtLCBpbnQgZGVsdGEsCiAgICAgICogU2V0IHRoZSBBQUQgZm9yIEFFUy1HQ00sIHdo
aWNoIGlzIHRoZSBSVFAgaGVhZGVyCiAgICAgICovCiAgICAgYWFkX2xlbiA9ICh1aW50OF90ICop
ZW5jX3N0YXJ0IC0gKHVpbnQ4X3QgKiloZHI7Ci0gICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfc2V0
X2FhZChzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXIsICh1aW50OF90KiloZHIsIGFhZF9sZW4pOwor
ICAgIHN0YXR1cyA9CisgICAgICAgIHNydHBfY2lwaGVyX3NldF9hYWQoc2Vzc2lvbl9rZXlzLT5y
dHBfY2lwaGVyLCAodWludDhfdCAqKWhkciwgYWFkX2xlbik7CiAgICAgaWYgKHN0YXR1cykgewot
ICAgICAgICByZXR1cm4gKCBzcnRwX2Vycl9zdGF0dXNfY2lwaGVyX2ZhaWwpOworICAgICAgICBy
ZXR1cm4gKHNydHBfZXJyX3N0YXR1c19jaXBoZXJfZmFpbCk7CiAgICAgfQogCiAgICAgLyogRGVj
cnlwdCB0aGUgY2lwaGVydGV4dC4gIFRoaXMgYWxzbyBjaGVja3MgdGhlIGF1dGggdGFnIGJhc2Vk
CiAgICAgICogb24gdGhlIEFBRCB3ZSBqdXN0IHNwZWNpZmllZCBhYm92ZSAqLwotICAgIHN0YXR1
cyA9IHNydHBfY2lwaGVyX2RlY3J5cHQoc2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVyLAotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgKHVpbnQ4X3QqKWVuY19zdGFydCwgJmVuY19vY3Rl
dF9sZW4pOworICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX2RlY3J5cHQoc2Vzc2lvbl9rZXlzLT5y
dHBfY2lwaGVyLCAodWludDhfdCAqKWVuY19zdGFydCwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICZlbmNfb2N0ZXRfbGVuKTsKICAgICBpZiAoc3RhdHVzKSB7CiAgICAgICAgIHJl
dHVybiBzdGF0dXM7CiAgICAgfQogCiAgICAgaWYgKHh0bl9oZHIgJiYgc2Vzc2lvbl9rZXlzLT5y
dHBfeHRuX2hkcl9jaXBoZXIpIHsKLSAgICAgIC8qCi0gICAgICAgKiBleHRlbnNpb25zIGhlYWRl
ciBlbmNyeXB0aW9uIFJGQyA2OTA0Ci0gICAgICAgKi8KLSAgICAgIHN0YXR1cyA9IHNydHBfcHJv
Y2Vzc19oZWFkZXJfZW5jcnlwdGlvbihzdHJlYW0sIHh0bl9oZHIsIHNlc3Npb25fa2V5cyk7Ci0g
ICAgICBpZiAoc3RhdHVzKSB7Ci0gICAgICAgIHJldHVybiBzdGF0dXM7Ci0gICAgICB9CisgICAg
ICAgIC8qCisgICAgICAgICAqIGV4dGVuc2lvbnMgaGVhZGVyIGVuY3J5cHRpb24gUkZDIDY5MDQK
KyAgICAgICAgICovCisgICAgICAgIHN0YXR1cyA9IHNydHBfcHJvY2Vzc19oZWFkZXJfZW5jcnlw
dGlvbihzdHJlYW0sIHh0bl9oZHIsIHNlc3Npb25fa2V5cyk7CisgICAgICAgIGlmIChzdGF0dXMp
IHsKKyAgICAgICAgICAgIHJldHVybiBzdGF0dXM7CisgICAgICAgIH0KICAgICB9CiAKICAgICAv
KgpAQCAtMTk3NCw3ICsyMDAxLDggQEAgc3J0cF91bnByb3RlY3RfYWVhZCAoc3J0cF9jdHhfdCAq
Y3R4LCBzcnRwX3N0cmVhbV9jdHhfdCAqc3RyZWFtLCBpbnQgZGVsdGEsCiAgICAgICAgICAqIHN0
cmVhbSwgYW5kIHNvbWUgaW1wbGVtZW50YXRpb25zIHdpbGwgd2FudCB0byBub3QgcmV0dXJuCiAg
ICAgICAgICAqIGZhaWx1cmUgaGVyZQogICAgICAgICAgKi8KLSAgICAgICAgc3RhdHVzID0gc3J0
cF9zdHJlYW1fY2xvbmUoY3R4LT5zdHJlYW1fdGVtcGxhdGUsIGhkci0+c3NyYywgJm5ld19zdHJl
YW0pOworICAgICAgICBzdGF0dXMgPQorICAgICAgICAgICAgc3J0cF9zdHJlYW1fY2xvbmUoY3R4
LT5zdHJlYW1fdGVtcGxhdGUsIGhkci0+c3NyYywgJm5ld19zdHJlYW0pOwogICAgICAgICBpZiAo
c3RhdHVzKSB7CiAgICAgICAgICAgICByZXR1cm4gc3RhdHVzOwogICAgICAgICB9CkBAIC0yMDAy
LDcyNCArMjAzMCw3MzAgQEAgc3J0cF91bnByb3RlY3RfYWVhZCAoc3J0cF9jdHhfdCAqY3R4LCBz
cnRwX3N0cmVhbV9jdHhfdCAqc3RyZWFtLCBpbnQgZGVsdGEsCiAgICAgcmV0dXJuIHNydHBfZXJy
X3N0YXR1c19vazsKIH0KIAorc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9wcm90ZWN0KHNydHBfY3R4
X3QgKmN0eCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2b2lkICpydHBfaGRyLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCAqcGt0X29jdGV0X2xlbikKK3sKKyAg
ICByZXR1cm4gc3J0cF9wcm90ZWN0X21raShjdHgsIHJ0cF9oZHIsIHBrdF9vY3RldF9sZW4sIDAs
IDApOworfQogCi0gc3J0cF9lcnJfc3RhdHVzX3QKLSBzcnRwX3Byb3RlY3Qoc3J0cF9jdHhfdCAq
Y3R4LCB2b2lkICpydHBfaGRyLCBpbnQgKnBrdF9vY3RldF9sZW4pIHsKLSAgIHJldHVybiBzcnRw
X3Byb3RlY3RfbWtpKGN0eCwgcnRwX2hkciwgcGt0X29jdGV0X2xlbiwgMCwgMCk7Ci0gfQotCi1z
cnRwX2Vycl9zdGF0dXNfdAotc3J0cF9wcm90ZWN0X21raShzcnRwX2N0eF90ICpjdHgsIHZvaWQg
KnJ0cF9oZHIsIGludCAqcGt0X29jdGV0X2xlbiwKLSAgICAgICAgICAgICAgICAgdW5zaWduZWQg
aW50IHVzZV9ta2ksIHVuc2lnbmVkIGludCBta2lfaW5kZXggKSB7Ci0gICBzcnRwX2hkcl90ICpo
ZHIgPSAoc3J0cF9oZHJfdCAqKXJ0cF9oZHI7Ci0gICB1aW50MzJfdCAqZW5jX3N0YXJ0OyAgICAg
ICAgLyogcG9pbnRlciB0byBzdGFydCBvZiBlbmNyeXB0ZWQgcG9ydGlvbiAgKi8KLSAgIHVpbnQz
Ml90ICphdXRoX3N0YXJ0OyAgICAgICAvKiBwb2ludGVyIHRvIHN0YXJ0IG9mIGF1dGguIHBvcnRp
b24gICAgICAqLwotICAgaW50IGVuY19vY3RldF9sZW4gPSAwOyAvKiBudW1iZXIgb2Ygb2N0ZXRz
IGluIGVuY3J5cHRlZCBwb3J0aW9uICAqLwotICAgc3J0cF94dGRfc2VxX251bV90IGVzdDsgICAg
ICAgICAgLyogZXN0aW1hdGVkIHh0ZF9zZXFfbnVtX3Qgb2YgKmhkciAgICAgICAgKi8KLSAgIGlu
dCBkZWx0YTsgICAgICAgICAgICAgICAgICAvKiBkZWx0YSBvZiBsb2NhbCBwa3QgaWR4IGFuZCB0
aGF0IGluIGhkciAqLwotICAgdWludDhfdCAqYXV0aF90YWcgPSBOVUxMOyAgIC8qIGxvY2F0aW9u
IG9mIGF1dGhfdGFnIHdpdGhpbiBwYWNrZXQgICAgICovCi0gICBzcnRwX2Vycl9zdGF0dXNfdCBz
dGF0dXM7ICAgCi0gICBpbnQgdGFnX2xlbjsKLSAgIHNydHBfc3RyZWFtX2N0eF90ICpzdHJlYW07
Ci0gICB1aW50MzJfdCBwcmVmaXhfbGVuOwotICAgc3J0cF9oZHJfeHRuZF90ICp4dG5faGRyID0g
TlVMTDsKLSAgIHVuc2lnbmVkIGludCBta2lfc2l6ZSA9IDA7Ci0gICBzcnRwX3Nlc3Npb25fa2V5
c190ICpzZXNzaW9uX2tleXMgPSBOVUxMOwotICAgdWludDhfdCogbWtpX2xvY2F0aW9uID0gTlVM
TDsKLSAgIGludCBhZHZhbmNlX3BhY2tldF9pbmRleCA9IDA7Ci0KLSAgIGRlYnVnX3ByaW50KG1v
ZF9zcnRwLCAiZnVuY3Rpb24gc3J0cF9wcm90ZWN0IiwgTlVMTCk7Ci0KLSAgLyogd2UgYXNzdW1l
IHRoZSBoZHIgaXMgMzItYml0IGFsaWduZWQgdG8gc3RhcnQgKi8KLQotICAvKiBWZXJpZnkgUlRQ
IGhlYWRlciAqLwotICBzdGF0dXMgPSBzcnRwX3ZhbGlkYXRlX3J0cF9oZWFkZXIocnRwX2hkciwg
cGt0X29jdGV0X2xlbik7Ci0gIGlmIChzdGF0dXMpCi0gICAgcmV0dXJuIHN0YXR1czsKLQotICAg
LyogY2hlY2sgdGhlIHBhY2tldCBsZW5ndGggLSBpdCBtdXN0IGF0IGxlYXN0IGNvbnRhaW4gYSBm
dWxsIGhlYWRlciAqLwotICAgaWYgKCpwa3Rfb2N0ZXRfbGVuIDwgb2N0ZXRzX2luX3J0cF9oZWFk
ZXIpCi0gICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtOworc3J0cF9lcnJfc3Rh
dHVzX3Qgc3J0cF9wcm90ZWN0X21raShzcnRwX2N0eF90ICpjdHgsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHZvaWQgKnJ0cF9oZHIsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGludCAqcGt0X29jdGV0X2xlbiwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgdW5zaWduZWQgaW50IHVzZV9ta2ksCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHVuc2lnbmVkIGludCBta2lfaW5kZXgpCit7CisgICAgc3J0cF9oZHJfdCAq
aGRyID0gKHNydHBfaGRyX3QgKilydHBfaGRyOworICAgIHVpbnQzMl90ICplbmNfc3RhcnQ7ICAg
ICAgLyogcG9pbnRlciB0byBzdGFydCBvZiBlbmNyeXB0ZWQgcG9ydGlvbiAgKi8KKyAgICB1aW50
MzJfdCAqYXV0aF9zdGFydDsgICAgIC8qIHBvaW50ZXIgdG8gc3RhcnQgb2YgYXV0aC4gcG9ydGlv
biAgICAgICovCisgICAgaW50IGVuY19vY3RldF9sZW4gPSAwOyAgICAvKiBudW1iZXIgb2Ygb2N0
ZXRzIGluIGVuY3J5cHRlZCBwb3J0aW9uICAqLworICAgIHNydHBfeHRkX3NlcV9udW1fdCBlc3Q7
ICAgLyogZXN0aW1hdGVkIHh0ZF9zZXFfbnVtX3Qgb2YgKmhkciAgICAgICAgKi8KKyAgICBpbnQg
ZGVsdGE7ICAgICAgICAgICAgICAgIC8qIGRlbHRhIG9mIGxvY2FsIHBrdCBpZHggYW5kIHRoYXQg
aW4gaGRyICovCisgICAgdWludDhfdCAqYXV0aF90YWcgPSBOVUxMOyAvKiBsb2NhdGlvbiBvZiBh
dXRoX3RhZyB3aXRoaW4gcGFja2V0ICAgICAqLworICAgIHNydHBfZXJyX3N0YXR1c190IHN0YXR1
czsKKyAgICBpbnQgdGFnX2xlbjsKKyAgICBzcnRwX3N0cmVhbV9jdHhfdCAqc3RyZWFtOworICAg
IHVpbnQzMl90IHByZWZpeF9sZW47CisgICAgc3J0cF9oZHJfeHRuZF90ICp4dG5faGRyID0gTlVM
TDsKKyAgICB1bnNpZ25lZCBpbnQgbWtpX3NpemUgPSAwOworICAgIHNydHBfc2Vzc2lvbl9rZXlz
X3QgKnNlc3Npb25fa2V5cyA9IE5VTEw7CisgICAgdWludDhfdCAqbWtpX2xvY2F0aW9uID0gTlVM
TDsKKyAgICBpbnQgYWR2YW5jZV9wYWNrZXRfaW5kZXggPSAwOwogCi0gICAvKgotICAgICogbG9v
ayB1cCBzc3JjIGluIHNydHBfc3RyZWFtIGxpc3QsIGFuZCBwcm9jZXNzIHRoZSBwYWNrZXQgd2l0
aAotICAgICogdGhlIGFwcHJvcHJpYXRlIHN0cmVhbS4gIGlmIHdlIGhhdmVuJ3Qgc2VlbiB0aGlz
IHN0cmVhbSBiZWZvcmUsCi0gICAgKiB0aGVyZSdzIGEgdGVtcGxhdGUga2V5IGZvciB0aGlzIHNy
dHBfc2Vzc2lvbiwgYW5kIHRoZSBjaXBoZXIKLSAgICAqIHN1cHBvcnRzIGtleS1zaGFyaW5nLCB0
aGVuIHdlIGFzc3VtZSB0aGF0IGEgbmV3IHN0cmVhbSB1c2luZwotICAgICogdGhhdCBrZXkgaGFz
IGp1c3Qgc3RhcnRlZCB1cAotICAgICovCi0gICBzdHJlYW0gPSBzcnRwX2dldF9zdHJlYW0oY3R4
LCBoZHItPnNzcmMpOwotICAgaWYgKHN0cmVhbSA9PSBOVUxMKSB7Ci0gICAgIGlmIChjdHgtPnN0
cmVhbV90ZW1wbGF0ZSAhPSBOVUxMKSB7Ci0gICAgICAgc3J0cF9zdHJlYW1fY3R4X3QgKm5ld19z
dHJlYW07Ci0KLSAgICAgICAvKiBhbGxvY2F0ZSBhbmQgaW5pdGlhbGl6ZSBhIG5ldyBzdHJlYW0g
Ki8KLSAgICAgICBzdGF0dXMgPSBzcnRwX3N0cmVhbV9jbG9uZShjdHgtPnN0cmVhbV90ZW1wbGF0
ZSwgCi0JCQkJICBoZHItPnNzcmMsICZuZXdfc3RyZWFtKTsgCi0gICAgICAgaWYgKHN0YXR1cykK
LQkgcmV0dXJuIHN0YXR1czsKLQotICAgICAgIC8qIGFkZCBuZXcgc3RyZWFtIHRvIHRoZSBoZWFk
IG9mIHRoZSBzdHJlYW1fbGlzdCAqLwotICAgICAgIG5ld19zdHJlYW0tPm5leHQgPSBjdHgtPnN0
cmVhbV9saXN0OwotICAgICAgIGN0eC0+c3RyZWFtX2xpc3QgPSBuZXdfc3RyZWFtOwotCi0gICAg
ICAgLyogc2V0IGRpcmVjdGlvbiB0byBvdXRib3VuZCAqLwotICAgICAgIG5ld19zdHJlYW0tPmRp
cmVjdGlvbiA9IGRpcl9zcnRwX3NlbmRlcjsKLQotICAgICAgIC8qIHNldCBzdHJlYW0gKHRoZSBw
b2ludGVyIHVzZWQgaW4gdGhpcyBmdW5jdGlvbikgKi8KLSAgICAgICBzdHJlYW0gPSBuZXdfc3Ry
ZWFtOwotICAgICB9IGVsc2UgewotICAgICAgIC8qIG5vIHRlbXBsYXRlIHN0cmVhbSwgc28gd2Ug
cmV0dXJuIGFuIGVycm9yICovCi0gICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19ub19jdHg7
Ci0gICAgIH0gCi0gICB9Ci0KLSAgIC8qIAotICAgICogdmVyaWZ5IHRoYXQgc3RyZWFtIGlzIGZv
ciBzZW5kaW5nIHRyYWZmaWMgLSB0aGlzIGNoZWNrIHdpbGwKLSAgICAqIGRldGVjdCBTU1JDIGNv
bGxpc2lvbnMsIHNpbmNlIGEgc3RyZWFtIHRoYXQgYXBwZWFycyBpbiBib3RoCi0gICAgKiBzcnRw
X3Byb3RlY3QoKSBhbmQgc3J0cF91bnByb3RlY3QoKSB3aWxsIGZhaWwgdGhpcyB0ZXN0IGluIG9u
ZSBvZgotICAgICogdGhvc2UgZnVuY3Rpb25zLgotICAgICovCisgICAgZGVidWdfcHJpbnQobW9k
X3NydHAsICJmdW5jdGlvbiBzcnRwX3Byb3RlY3QiLCBOVUxMKTsKIAotICBpZiAoc3RyZWFtLT5k
aXJlY3Rpb24gIT0gZGlyX3NydHBfc2VuZGVyKSB7Ci0gICAgIGlmIChzdHJlYW0tPmRpcmVjdGlv
biA9PSBkaXJfdW5rbm93bikgewotICAgICAgIHN0cmVhbS0+ZGlyZWN0aW9uID0gZGlyX3NydHBf
c2VuZGVyOwotICAgICB9IGVsc2UgewotICAgICAgIHNydHBfaGFuZGxlX2V2ZW50KGN0eCwgc3Ry
ZWFtLCBldmVudF9zc3JjX2NvbGxpc2lvbik7Ci0gICAgIH0KLSAgfQorICAgIC8qIHdlIGFzc3Vt
ZSB0aGUgaGRyIGlzIDMyLWJpdCBhbGlnbmVkIHRvIHN0YXJ0ICovCiAKLSAgc2Vzc2lvbl9rZXlz
ID0gc3J0cF9nZXRfc2Vzc2lvbl9rZXlzX3dpdGhfbWtpX2luZGV4KHN0cmVhbSwgdXNlX21raSwg
bWtpX2luZGV4KTsKKyAgICAvKiBWZXJpZnkgUlRQIGhlYWRlciAqLworICAgIHN0YXR1cyA9IHNy
dHBfdmFsaWRhdGVfcnRwX2hlYWRlcihydHBfaGRyLCBwa3Rfb2N0ZXRfbGVuKTsKKyAgICBpZiAo
c3RhdHVzKQorICAgICAgICByZXR1cm4gc3RhdHVzOwogCi0gICAvKgotICAgICogQ2hlY2sgaWYg
dGhpcyBpcyBhbiBBRUFEIHN0cmVhbSAoR0NNIG1vZGUpLiAgSWYgc28sIHRoZW4gZGlzcGF0Y2gK
LSAgICAqIHRoZSByZXF1ZXN0IHRvIG91ciBBRUFEIGhhbmRsZXIuCi0gICAgKi8KLSAgaWYgKHNl
c3Npb25fa2V5cy0+cnRwX2NpcGhlci0+YWxnb3JpdGhtID09IFNSVFBfQUVTX0dDTV8xMjggfHwK
LSAgICAgIHNlc3Npb25fa2V5cy0+cnRwX2NpcGhlci0+YWxnb3JpdGhtID09IFNSVFBfQUVTX0dD
TV8yNTYpIHsKLSAgICAgIHJldHVybiBzcnRwX3Byb3RlY3RfYWVhZChjdHgsIHN0cmVhbSwgcnRw
X2hkciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAodW5zaWduZWQgaW50Kilwa3Rf
b2N0ZXRfbGVuLCBzZXNzaW9uX2tleXMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
dXNlX21raSk7Ci0gIH0KLQotICAvKiAKLSAgICogdXBkYXRlIHRoZSBrZXkgdXNhZ2UgbGltaXQs
IGFuZCBjaGVjayBpdCB0byBtYWtlIHN1cmUgdGhhdCB3ZQotICAgKiBkaWRuJ3QganVzdCBoaXQg
ZWl0aGVyIHRoZSBzb2Z0IGxpbWl0IG9yIHRoZSBoYXJkIGxpbWl0LCBhbmQgY2FsbAotICAgKiB0
aGUgZXZlbnQgaGFuZGxlciBpZiB3ZSBoaXQgZWl0aGVyLgotICAgKi8KLSAgc3dpdGNoKHNydHBf
a2V5X2xpbWl0X3VwZGF0ZShzZXNzaW9uX2tleXMtPmxpbWl0KSkgewotICBjYXNlIHNydHBfa2V5
X2V2ZW50X25vcm1hbDoKLSAgICBicmVhazsKLSAgY2FzZSBzcnRwX2tleV9ldmVudF9zb2Z0X2xp
bWl0OiAKLSAgICBzcnRwX2hhbmRsZV9ldmVudChjdHgsIHN0cmVhbSwgZXZlbnRfa2V5X3NvZnRf
bGltaXQpOwotICAgIGJyZWFrOyAKLSAgY2FzZSBzcnRwX2tleV9ldmVudF9oYXJkX2xpbWl0Ogot
ICAgIHNydHBfaGFuZGxlX2V2ZW50KGN0eCwgc3RyZWFtLCBldmVudF9rZXlfaGFyZF9saW1pdCk7
Ci0JcmV0dXJuIHNydHBfZXJyX3N0YXR1c19rZXlfZXhwaXJlZDsKLSAgZGVmYXVsdDoKLSAgICBi
cmVhazsKLSAgfQotCi0gICAvKiBnZXQgdGFnIGxlbmd0aCBmcm9tIHN0cmVhbSAqLwotICAgdGFn
X2xlbiA9IHNydHBfYXV0aF9nZXRfdGFnX2xlbmd0aChzZXNzaW9uX2tleXMtPnJ0cF9hdXRoKTsg
Ci0KLSAgIC8qCi0gICAgKiBmaW5kIHN0YXJ0aW5nIHBvaW50IGZvciBlbmNyeXB0aW9uIGFuZCBs
ZW5ndGggb2YgZGF0YSB0byBiZQotICAgICogZW5jcnlwdGVkIC0gdGhlIGVuY3J5cHRlZCBwb3J0
aW9uIHN0YXJ0cyBhZnRlciB0aGUgcnRwIGhlYWRlcgotICAgICogZXh0ZW5zaW9uLCBpZiBwcmVz
ZW50OyBvdGhlcndpc2UsIGl0IHN0YXJ0cyBhZnRlciB0aGUgbGFzdCBjc3JjLAotICAgICogaWYg
YW55IGFyZSBwcmVzZW50Ci0gICAgKgotICAgICogaWYgd2UncmUgbm90IHByb3ZpZGluZyBjb25m
aWRlbnRpYWxpdHksIHNldCBlbmNfc3RhcnQgdG8gTlVMTAotICAgICovCi0gICBpZiAoc3RyZWFt
LT5ydHBfc2VydmljZXMgJiBzZWNfc2Vydl9jb25mKSB7Ci0gICAgIGVuY19zdGFydCA9ICh1aW50
MzJfdCAqKWhkciArIHVpbnQzMnNfaW5fcnRwX2hlYWRlciArIGhkci0+Y2M7ICAKLSAgICAgaWYg
KGhkci0+eCA9PSAxKSB7Ci0gICAgICAgeHRuX2hkciA9IChzcnRwX2hkcl94dG5kX3QgKillbmNf
c3RhcnQ7Ci0gICAgICAgZW5jX3N0YXJ0ICs9IChudG9ocyh4dG5faGRyLT5sZW5ndGgpICsgMSk7
Ci0gICAgIH0KLSAgICAgLyogbm90ZTogdGhlIHBhc3NlZCBzaXplIGlzIHdpdGhvdXQgdGhlIGF1
dGggdGFnICovCi0gICAgIGlmICghKCh1aW50OF90KillbmNfc3RhcnQgPD0gKHVpbnQ4X3QqKWhk
ciArICpwa3Rfb2N0ZXRfbGVuKSkKLSAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX3BhcnNl
X2VycjsKLSAgICAgZW5jX29jdGV0X2xlbiA9IChpbnQpKCpwa3Rfb2N0ZXRfbGVuIC0KLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgodWludDhfdCopZW5jX3N0YXJ0IC0gKHVp
bnQ4X3QqKWhkcikpOwotICAgICBpZiAoZW5jX29jdGV0X2xlbiA8IDApIHJldHVybiBzcnRwX2Vy
cl9zdGF0dXNfcGFyc2VfZXJyOwotICAgfSBlbHNlIHsKLSAgICAgZW5jX3N0YXJ0ID0gTlVMTDsK
LSAgIH0KLQotICAgbWtpX2xvY2F0aW9uID0gKHVpbnQ4X3QgKiloZHIgKyAqcGt0X29jdGV0X2xl
bjsKLSAgIG1raV9zaXplID0gc3J0cF9pbmplY3RfbWtpKG1raV9sb2NhdGlvbiwgc2Vzc2lvbl9r
ZXlzLCB1c2VfbWtpKTsKLQotICAgLyogCi0gICAgKiBpZiB3ZSdyZSBwcm92aWRpbmcgYXV0aGVu
dGljYXRpb24sIHNldCB0aGUgYXV0aF9zdGFydCBhbmQgYXV0aF90YWcKLSAgICAqIHBvaW50ZXJz
IHRvIHRoZSBwcm9wZXIgbG9jYXRpb25zOyBvdGhlcndpc2UsIHNldCBhdXRoX3N0YXJ0IHRvIE5V
TEwKLSAgICAqIHRvIGluZGljYXRlIHRoYXQgbm8gYXV0aGVudGljYXRpb24gaXMgbmVlZGVkCi0g
ICAgKi8KLSAgIGlmIChzdHJlYW0tPnJ0cF9zZXJ2aWNlcyAmIHNlY19zZXJ2X2F1dGgpIHsKLSAg
ICAgYXV0aF9zdGFydCA9ICh1aW50MzJfdCAqKWhkcjsKLSAgICAgYXV0aF90YWcgPSAodWludDhf
dCAqKWhkciArICpwa3Rfb2N0ZXRfbGVuICsgbWtpX3NpemU7Ci0gICB9IGVsc2UgewotICAgICBh
dXRoX3N0YXJ0ID0gTlVMTDsKLSAgICAgYXV0aF90YWcgPSBOVUxMOwotICAgfQotCi0gIC8qCi0g
ICAqIGVzdGltYXRlIHRoZSBwYWNrZXQgaW5kZXggdXNpbmcgdGhlIHN0YXJ0IG9mIHRoZSByZXBs
YXkgd2luZG93Ci0gICAqIGFuZCB0aGUgc2VxdWVuY2UgbnVtYmVyIGZyb20gdGhlIGhlYWRlcgot
ICAgKi8KLSAgc3RhdHVzID0gc3J0cF9nZXRfZXN0X3BrdF9pbmRleChoZHIsCi0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgc3RyZWFtLAotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICZlc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmRlbHRh
KTsKLQotICBpZiAoc3RhdHVzICYmIChzdGF0dXMgIT0gc3J0cF9lcnJfc3RhdHVzX3BrdF9pZHhf
YWR2KSkKLSAgICByZXR1cm4gc3RhdHVzOworICAgIC8qIGNoZWNrIHRoZSBwYWNrZXQgbGVuZ3Ro
IC0gaXQgbXVzdCBhdCBsZWFzdCBjb250YWluIGEgZnVsbCBoZWFkZXIgKi8KKyAgICBpZiAoKnBr
dF9vY3RldF9sZW4gPCBvY3RldHNfaW5fcnRwX2hlYWRlcikKKyAgICAgICAgcmV0dXJuIHNydHBf
ZXJyX3N0YXR1c19iYWRfcGFyYW07CiAKLSAgaWYgKHN0YXR1cyA9PSBzcnRwX2Vycl9zdGF0dXNf
cGt0X2lkeF9hZHYpCi0gICAgYWR2YW5jZV9wYWNrZXRfaW5kZXggPSAxOworICAgIC8qCisgICAg
ICogbG9vayB1cCBzc3JjIGluIHNydHBfc3RyZWFtIGxpc3QsIGFuZCBwcm9jZXNzIHRoZSBwYWNr
ZXQgd2l0aAorICAgICAqIHRoZSBhcHByb3ByaWF0ZSBzdHJlYW0uICBpZiB3ZSBoYXZlbid0IHNl
ZW4gdGhpcyBzdHJlYW0gYmVmb3JlLAorICAgICAqIHRoZXJlJ3MgYSB0ZW1wbGF0ZSBrZXkgZm9y
IHRoaXMgc3J0cF9zZXNzaW9uLCBhbmQgdGhlIGNpcGhlcgorICAgICAqIHN1cHBvcnRzIGtleS1z
aGFyaW5nLCB0aGVuIHdlIGFzc3VtZSB0aGF0IGEgbmV3IHN0cmVhbSB1c2luZworICAgICAqIHRo
YXQga2V5IGhhcyBqdXN0IHN0YXJ0ZWQgdXAKKyAgICAgKi8KKyAgICBzdHJlYW0gPSBzcnRwX2dl
dF9zdHJlYW0oY3R4LCBoZHItPnNzcmMpOworICAgIGlmIChzdHJlYW0gPT0gTlVMTCkgeworICAg
ICAgICBpZiAoY3R4LT5zdHJlYW1fdGVtcGxhdGUgIT0gTlVMTCkgeworICAgICAgICAgICAgc3J0
cF9zdHJlYW1fY3R4X3QgKm5ld19zdHJlYW07CiAKLSAgaWYgKGFkdmFuY2VfcGFja2V0X2luZGV4
KSB7Ci0gICAgc3J0cF9yZGJ4X3NldF9yb2Nfc2VxKCZzdHJlYW0tPnJ0cF9yZGJ4LAotICAgICAg
ICAgICAgICAgICAgICAgICAgICAodWludDMyX3QpKGVzdCA+PiAxNiksCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICh1aW50MTZfdCkoZXN0ICYgMHhGRkZGKSk7Ci0gICAgc3RyZWFtLT5wZW5k
aW5nX3JvYyA9IDA7Ci0gICAgc3J0cF9yZGJ4X2FkZF9pbmRleCgmc3RyZWFtLT5ydHBfcmRieCwg
MCk7Ci0gIH0gZWxzZSB7Ci0gICAgc3RhdHVzID0gc3J0cF9yZGJ4X2NoZWNrKCZzdHJlYW0tPnJ0
cF9yZGJ4LCBkZWx0YSk7Ci0gICAgaWYgKHN0YXR1cykgewotICAgICAgaWYgKHN0YXR1cyAhPSBz
cnRwX2Vycl9zdGF0dXNfcmVwbGF5X2ZhaWwgfHwgIXN0cmVhbS0+YWxsb3dfcmVwZWF0X3R4KQot
ICAgICAgICByZXR1cm4gc3RhdHVzOyAvKiB3ZSd2ZSBiZWVuIGFza2VkIHRvIHJldXNlIGFuIGlu
ZGV4ICovCi0gICAgfQotICAgIHNydHBfcmRieF9hZGRfaW5kZXgoJnN0cmVhbS0+cnRwX3JkYngs
IGRlbHRhKTsKLSAgfQorICAgICAgICAgICAgLyogYWxsb2NhdGUgYW5kIGluaXRpYWxpemUgYSBu
ZXcgc3RyZWFtICovCisgICAgICAgICAgICBzdGF0dXMgPQorICAgICAgICAgICAgICAgIHNydHBf
c3RyZWFtX2Nsb25lKGN0eC0+c3RyZWFtX3RlbXBsYXRlLCBoZHItPnNzcmMsICZuZXdfc3RyZWFt
KTsKKyAgICAgICAgICAgIGlmIChzdGF0dXMpCisgICAgICAgICAgICAgICAgcmV0dXJuIHN0YXR1
czsKIAotI2lmZGVmIE5PXzY0QklUX01BVEgKLSAgIGRlYnVnX3ByaW50Mihtb2Rfc3J0cCwgImVz
dGltYXRlZCBwYWNrZXQgaW5kZXg6ICUwOHglMDh4IiwgCi0JCWhpZ2gzMihlc3QpLGxvdzMyKGVz
dCkpOwotI2Vsc2UKLSAgIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAiZXN0aW1hdGVkIHBhY2tldCBp
bmRleDogJTAxNmxseCIsIGVzdCk7Ci0jZW5kaWYKKyAgICAgICAgICAgIC8qIGFkZCBuZXcgc3Ry
ZWFtIHRvIHRoZSBoZWFkIG9mIHRoZSBzdHJlYW1fbGlzdCAqLworICAgICAgICAgICAgbmV3X3N0
cmVhbS0+bmV4dCA9IGN0eC0+c3RyZWFtX2xpc3Q7CisgICAgICAgICAgICBjdHgtPnN0cmVhbV9s
aXN0ID0gbmV3X3N0cmVhbTsKIAotICAgLyogCi0gICAgKiBpZiB3ZSdyZSB1c2luZyByaW5kYWVs
IGNvdW50ZXIgbW9kZSwgc2V0IG5vbmNlIGFuZCBzZXEgCi0gICAgKi8KLSAgIGlmIChzZXNzaW9u
X2tleXMtPnJ0cF9jaXBoZXItPnR5cGUtPmlkID09IFNSVFBfQUVTX0lDTV8xMjggfHwKLSAgICAg
ICBzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXItPnR5cGUtPmlkID09IFNSVFBfQUVTX0lDTV8xOTIg
fHwKLSAgICAgICBzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXItPnR5cGUtPmlkID09IFNSVFBfQUVT
X0lDTV8yNTYpIHsKLSAgICAgdjEyOF90IGl2OworICAgICAgICAgICAgLyogc2V0IGRpcmVjdGlv
biB0byBvdXRib3VuZCAqLworICAgICAgICAgICAgbmV3X3N0cmVhbS0+ZGlyZWN0aW9uID0gZGly
X3NydHBfc2VuZGVyOwogCi0gICAgIGl2LnYzMlswXSA9IDA7Ci0gICAgIGl2LnYzMlsxXSA9IGhk
ci0+c3NyYzsKLSNpZmRlZiBOT182NEJJVF9NQVRICi0gICAgIGl2LnY2NFsxXSA9IGJlNjRfdG9f
Y3B1KG1ha2U2NCgoaGlnaDMyKGVzdCkgPDwgMTYpIHwgKGxvdzMyKGVzdCkgPj4gMTYpLAotCQkJ
CQkJCQkgbG93MzIoZXN0KSA8PCAxNikpOwotI2Vsc2UKLSAgICAgaXYudjY0WzFdID0gYmU2NF90
b19jcHUoZXN0IDw8IDE2KTsKLSNlbmRpZgotICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9zZXRf
aXYoc2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVyLCAodWludDhfdCopJml2LCBzcnRwX2RpcmVjdGlv
bl9lbmNyeXB0KTsKLSAgICAgaWYgKCFzdGF0dXMgJiYgc2Vzc2lvbl9rZXlzLT5ydHBfeHRuX2hk
cl9jaXBoZXIpIHsKLSAgICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9zZXRfaXYoc2Vzc2lvbl9r
ZXlzLT5ydHBfeHRuX2hkcl9jaXBoZXIsICh1aW50OF90KikmaXYsIHNydHBfZGlyZWN0aW9uX2Vu
Y3J5cHQpOwotICAgICB9Ci0gICB9IGVsc2UgeyAgCi0gICAgIHYxMjhfdCBpdjsKLQotICAgICAv
KiBvdGhlcndpc2UsIHNldCB0aGUgaW5kZXggdG8gZXN0ICovICAKLSNpZmRlZiBOT182NEJJVF9N
QVRICi0gICAgIGl2LnYzMlswXSA9IDA7Ci0gICAgIGl2LnYzMlsxXSA9IDA7Ci0jZWxzZQotICAg
ICBpdi52NjRbMF0gPSAwOwotI2VuZGlmCi0gICAgIGl2LnY2NFsxXSA9IGJlNjRfdG9fY3B1KGVz
dCk7Ci0gICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3NldF9pdihzZXNzaW9uX2tleXMtPnJ0cF9j
aXBoZXIsICh1aW50OF90KikmaXYsIHNydHBfZGlyZWN0aW9uX2VuY3J5cHQpOwotICAgICBpZiAo
IXN0YXR1cyAmJiBzZXNzaW9uX2tleXMtPnJ0cF94dG5faGRyX2NpcGhlcikgewotICAgICAgIHN0
YXR1cyA9IHNydHBfY2lwaGVyX3NldF9pdihzZXNzaW9uX2tleXMtPnJ0cF94dG5faGRyX2NpcGhl
ciwgKHVpbnQ4X3QqKSZpdiwgc3J0cF9kaXJlY3Rpb25fZW5jcnlwdCk7Ci0gICAgIH0KLSAgIH0K
LSAgIGlmIChzdGF0dXMpCi0gICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfY2lwaGVyX2ZhaWw7
Ci0KLSAgIC8qIHNoaWZ0IGVzdCwgcHV0IGludG8gbmV0d29yayBieXRlIG9yZGVyICovCi0jaWZk
ZWYgTk9fNjRCSVRfTUFUSAotICAgZXN0ID0gYmU2NF90b19jcHUobWFrZTY0KChoaWdoMzIoZXN0
KSA8PCAxNikgfAotCQkJCQkJIChsb3czMihlc3QpID4+IDE2KSwKLQkJCQkJCSBsb3czMihlc3Qp
IDw8IDE2KSk7Ci0jZWxzZQotICAgZXN0ID0gYmU2NF90b19jcHUoZXN0IDw8IDE2KTsKLSNlbmRp
ZgotICAgCi0gICAvKiAKLSAgICAqIGlmIHdlJ3JlIGF1dGhlbnRpY2F0aW5nIHVzaW5nIGEgdW5p
dmVyc2FsIGhhc2gsIHB1dCB0aGUga2V5c3RyZWFtCi0gICAgKiBwcmVmaXggaW50byB0aGUgYXV0
aGVudGljYXRpb24gdGFnCi0gICAgKi8KLSAgIGlmIChhdXRoX3N0YXJ0KSB7Ci0gICAgIAotICAg
IHByZWZpeF9sZW4gPSBzcnRwX2F1dGhfZ2V0X3ByZWZpeF9sZW5ndGgoc2Vzc2lvbl9rZXlzLT5y
dHBfYXV0aCk7ICAgIAotICAgIGlmIChwcmVmaXhfbGVuKSB7Ci0gICAgICBzdGF0dXMgPSBzcnRw
X2NpcGhlcl9vdXRwdXQoc2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVyLCBhdXRoX3RhZywgJnByZWZp
eF9sZW4pOwotICAgICAgaWYgKHN0YXR1cykKLQlyZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2NpcGhl
cl9mYWlsOwotICAgICAgZGVidWdfcHJpbnQobW9kX3NydHAsICJrZXlzdHJlYW0gcHJlZml4OiAl
cyIsIAotCQkgIHNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcoYXV0aF90YWcsIHByZWZpeF9s
ZW4pKTsKKyAgICAgICAgICAgIC8qIHNldCBzdHJlYW0gKHRoZSBwb2ludGVyIHVzZWQgaW4gdGhp
cyBmdW5jdGlvbikgKi8KKyAgICAgICAgICAgIHN0cmVhbSA9IG5ld19zdHJlYW07CisgICAgICAg
IH0gZWxzZSB7CisgICAgICAgICAgICAvKiBubyB0ZW1wbGF0ZSBzdHJlYW0sIHNvIHdlIHJldHVy
biBhbiBlcnJvciAqLworICAgICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19ub19jdHg7
CisgICAgICAgIH0KICAgICB9Ci0gIH0KIAotICBpZiAoeHRuX2hkciAmJiBzZXNzaW9uX2tleXMt
PnJ0cF94dG5faGRyX2NpcGhlcikgewogICAgIC8qCi0gICAgICogZXh0ZW5zaW9ucyBoZWFkZXIg
ZW5jcnlwdGlvbiBSRkMgNjkwNAorICAgICAqIHZlcmlmeSB0aGF0IHN0cmVhbSBpcyBmb3Igc2Vu
ZGluZyB0cmFmZmljIC0gdGhpcyBjaGVjayB3aWxsCisgICAgICogZGV0ZWN0IFNTUkMgY29sbGlz
aW9ucywgc2luY2UgYSBzdHJlYW0gdGhhdCBhcHBlYXJzIGluIGJvdGgKKyAgICAgKiBzcnRwX3By
b3RlY3QoKSBhbmQgc3J0cF91bnByb3RlY3QoKSB3aWxsIGZhaWwgdGhpcyB0ZXN0IGluIG9uZSBv
ZgorICAgICAqIHRob3NlIGZ1bmN0aW9ucy4KICAgICAgKi8KLSAgICAgIHN0YXR1cyA9IHNydHBf
cHJvY2Vzc19oZWFkZXJfZW5jcnlwdGlvbihzdHJlYW0sIHh0bl9oZHIsIHNlc3Npb25fa2V5cyk7
Ci0gICAgaWYgKHN0YXR1cykgewotICAgICAgcmV0dXJuIHN0YXR1czsKLSAgICB9Ci0gIH0KLQot
ICAvKiBpZiB3ZSdyZSBlbmNyeXB0aW5nLCBleG9yIGtleXN0cmVhbSBpbnRvIHRoZSBtZXNzYWdl
ICovCi0gIGlmIChlbmNfc3RhcnQpIHsKLSAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9lbmNyeXB0
KHNlc3Npb25fa2V5cy0+cnRwX2NpcGhlciwgCi0JCQkgICAgICAgICh1aW50OF90ICopZW5jX3N0
YXJ0LCAodW5zaWduZWQgaW50ICopJmVuY19vY3RldF9sZW4pOwotICAgIGlmIChzdGF0dXMpCi0g
ICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2NpcGhlcl9mYWlsOwotICB9Ci0KLSAgLyoKLSAg
ICogIGlmIHdlJ3JlIGF1dGhlbnRpY2F0aW5nLCBydW4gYXV0aGVudGljYXRpb24gZnVuY3Rpb24g
YW5kIHB1dCByZXN1bHQKLSAgICogIGludG8gdGhlIGF1dGhfdGFnIAotICAgKi8KLSAgaWYgKGF1
dGhfc3RhcnQpIHsgICAgICAgIAotCi0gICAgLyogaW5pdGlhbGl6ZSBhdXRoIGZ1bmMgY29udGV4
dCAqLwotICAgIHN0YXR1cyA9IHNydHBfYXV0aF9zdGFydChzZXNzaW9uX2tleXMtPnJ0cF9hdXRo
KTsKLSAgICBpZiAoc3RhdHVzKSByZXR1cm4gc3RhdHVzOwotCi0gICAgLyogcnVuIGF1dGggZnVu
YyBvdmVyIHBhY2tldCAqLwotICAgIHN0YXR1cyA9IHNydHBfYXV0aF91cGRhdGUoc2Vzc2lvbl9r
ZXlzLT5ydHBfYXV0aCwKLQkJCSAodWludDhfdCAqKWF1dGhfc3RhcnQsICpwa3Rfb2N0ZXRfbGVu
KTsKLSAgICBpZiAoc3RhdHVzKSByZXR1cm4gc3RhdHVzOwotICAgIAotICAgIC8qIHJ1biBhdXRo
IGZ1bmMgb3ZlciBST0MsIHB1dCByZXN1bHQgaW50byBhdXRoX3RhZyAqLwotICAgIGRlYnVnX3By
aW50KG1vZF9zcnRwLCAiZXN0aW1hdGVkIHBhY2tldCBpbmRleDogJTAxNmxseCIsIGVzdCk7Ci0g
ICAgc3RhdHVzID0gc3J0cF9hdXRoX2NvbXB1dGUoc2Vzc2lvbl9rZXlzLT5ydHBfYXV0aCwgKHVp
bnQ4X3QgKikmZXN0LCA0LCBhdXRoX3RhZyk7Ci0gICAgZGVidWdfcHJpbnQobW9kX3NydHAsICJz
cnRwIGF1dGggdGFnOiAgICAlcyIsIAotCQlzcnRwX29jdGV0X3N0cmluZ19oZXhfc3RyaW5nKGF1
dGhfdGFnLCB0YWdfbGVuKSk7Ci0gICAgaWYgKHN0YXR1cykKLSAgICAgIHJldHVybiBzcnRwX2Vy
cl9zdGF0dXNfYXV0aF9mYWlsOyAgIAotCi0gIH0KIAotICBpZiAoYXV0aF90YWcpIHsKLQotICAg
IC8qIGluY3JlYXNlIHRoZSBwYWNrZXQgbGVuZ3RoIGJ5IHRoZSBsZW5ndGggb2YgdGhlIGF1dGgg
dGFnICovCi0gICAgKnBrdF9vY3RldF9sZW4gKz0gdGFnX2xlbjsKLSAgfQotCi0gIGlmICh1c2Vf
bWtpKSB7Ci0gICAgLyogaW5jcmVhdGUgdGhlIHBhY2tldCBsZW5ndGggYnkgdGhlIG1raSBzaXpl
ICovCi0gICAgKnBrdF9vY3RldF9sZW4gKz0gbWtpX3NpemU7Ci0gIH0KKyAgICBpZiAoc3RyZWFt
LT5kaXJlY3Rpb24gIT0gZGlyX3NydHBfc2VuZGVyKSB7CisgICAgICAgIGlmIChzdHJlYW0tPmRp
cmVjdGlvbiA9PSBkaXJfdW5rbm93bikgeworICAgICAgICAgICAgc3RyZWFtLT5kaXJlY3Rpb24g
PSBkaXJfc3J0cF9zZW5kZXI7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICBzcnRwX2hh
bmRsZV9ldmVudChjdHgsIHN0cmVhbSwgZXZlbnRfc3NyY19jb2xsaXNpb24pOworICAgICAgICB9
CisgICAgfQogCi0gIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7ICAKLX0KKyAgICBzZXNzaW9u
X2tleXMgPQorICAgICAgICBzcnRwX2dldF9zZXNzaW9uX2tleXNfd2l0aF9ta2lfaW5kZXgoc3Ry
ZWFtLCB1c2VfbWtpLCBta2lfaW5kZXgpOwogCisgICAgaWYgKHNlc3Npb25fa2V5cyA9PSBOVUxM
KQorICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2JhZF9ta2k7CiAKLXNydHBfZXJyX3N0
YXR1c190Ci1zcnRwX3VucHJvdGVjdChzcnRwX2N0eF90ICpjdHgsIHZvaWQgKnNydHBfaGRyLCBp
bnQgKnBrdF9vY3RldF9sZW4pIHsKLSAgICByZXR1cm4gc3J0cF91bnByb3RlY3RfbWtpKGN0eCwg
c3J0cF9oZHIsIHBrdF9vY3RldF9sZW4sIDApOwotfQorICAgIC8qCisgICAgICogQ2hlY2sgaWYg
dGhpcyBpcyBhbiBBRUFEIHN0cmVhbSAoR0NNIG1vZGUpLiAgSWYgc28sIHRoZW4gZGlzcGF0Y2gK
KyAgICAgKiB0aGUgcmVxdWVzdCB0byBvdXIgQUVBRCBoYW5kbGVyLgorICAgICAqLworICAgIGlm
IChzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXItPmFsZ29yaXRobSA9PSBTUlRQX0FFU19HQ01fMTI4
IHx8CisgICAgICAgIHNlc3Npb25fa2V5cy0+cnRwX2NpcGhlci0+YWxnb3JpdGhtID09IFNSVFBf
QUVTX0dDTV8yNTYpIHsKKyAgICAgICAgcmV0dXJuIHNydHBfcHJvdGVjdF9hZWFkKGN0eCwgc3Ry
ZWFtLCBydHBfaGRyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHVuc2lnbmVk
IGludCAqKXBrdF9vY3RldF9sZW4sIHNlc3Npb25fa2V5cywKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHVzZV9ta2kpOworICAgIH0KIAotc3J0cF9lcnJfc3RhdHVzX3QKLXNydHBf
dW5wcm90ZWN0X21raShzcnRwX2N0eF90ICpjdHgsIHZvaWQgKnNydHBfaGRyLCBpbnQgKnBrdF9v
Y3RldF9sZW4sCi0gICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IHVzZV9ta2kpIHsKLSAg
c3J0cF9oZHJfdCAqaGRyID0gKHNydHBfaGRyX3QgKilzcnRwX2hkcjsKLSAgdWludDMyX3QgKmVu
Y19zdGFydDsgICAgICAvKiBwb2ludGVyIHRvIHN0YXJ0IG9mIGVuY3J5cHRlZCBwb3J0aW9uICAq
LwotICB1aW50MzJfdCAqYXV0aF9zdGFydDsgICAgIC8qIHBvaW50ZXIgdG8gc3RhcnQgb2YgYXV0
aC4gcG9ydGlvbiAgICAgICovCi0gIHVuc2lnbmVkIGludCBlbmNfb2N0ZXRfbGVuID0gMDsvKiBu
dW1iZXIgb2Ygb2N0ZXRzIGluIGVuY3J5cHRlZCBwb3J0aW9uICovCi0gIHVpbnQ4X3QgKmF1dGhf
dGFnID0gTlVMTDsgLyogbG9jYXRpb24gb2YgYXV0aF90YWcgd2l0aGluIHBhY2tldCAgICAgKi8K
LSAgc3J0cF94dGRfc2VxX251bV90IGVzdDsgICAgICAgIC8qIGVzdGltYXRlZCB4dGRfc2VxX251
bV90IG9mICpoZHIgICAgICAgICovCi0gIGludCBkZWx0YTsgICAgICAgICAgICAgICAgLyogZGVs
dGEgb2YgbG9jYWwgcGt0IGlkeCBhbmQgdGhhdCBpbiBoZHIgKi8KLSAgdjEyOF90IGl2OwotICBz
cnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7Ci0gIHNydHBfc3RyZWFtX2N0eF90ICpzdHJlYW07Ci0g
IHVpbnQ4X3QgdG1wX3RhZ1tTUlRQX01BWF9UQUdfTEVOXTsKLSAgdWludDMyX3QgdGFnX2xlbiwg
cHJlZml4X2xlbjsKLSAgc3J0cF9oZHJfeHRuZF90ICp4dG5faGRyID0gTlVMTDsKLSAgdW5zaWdu
ZWQgaW50IG1raV9zaXplID0gMDsKLSAgc3J0cF9zZXNzaW9uX2tleXNfdCAqc2Vzc2lvbl9rZXlz
ID0gTlVMTDsKLSAgaW50IGFkdmFuY2VfcGFja2V0X2luZGV4ID0gMDsKLSAgdWludDMyX3Qgcm9j
X3RvX3NldCA9IDA7Ci0gIHVpbnQxNl90IHNlcV90b19zZXQgPSAwOwotCi0gIGRlYnVnX3ByaW50
KG1vZF9zcnRwLCAiZnVuY3Rpb24gc3J0cF91bnByb3RlY3QiLCBOVUxMKTsKLQotICAvKiB3ZSBh
c3N1bWUgdGhlIGhkciBpcyAzMi1iaXQgYWxpZ25lZCB0byBzdGFydCAqLwotCi0gIC8qIFZlcmlm
eSBSVFAgaGVhZGVyICovCi0gIHN0YXR1cyA9IHNydHBfdmFsaWRhdGVfcnRwX2hlYWRlcihzcnRw
X2hkciwgcGt0X29jdGV0X2xlbik7Ci0gIGlmIChzdGF0dXMpCi0gICAgcmV0dXJuIHN0YXR1czsK
KyAgICAvKgorICAgICAqIHVwZGF0ZSB0aGUga2V5IHVzYWdlIGxpbWl0LCBhbmQgY2hlY2sgaXQg
dG8gbWFrZSBzdXJlIHRoYXQgd2UKKyAgICAgKiBkaWRuJ3QganVzdCBoaXQgZWl0aGVyIHRoZSBz
b2Z0IGxpbWl0IG9yIHRoZSBoYXJkIGxpbWl0LCBhbmQgY2FsbAorICAgICAqIHRoZSBldmVudCBo
YW5kbGVyIGlmIHdlIGhpdCBlaXRoZXIuCisgICAgICovCisgICAgc3dpdGNoIChzcnRwX2tleV9s
aW1pdF91cGRhdGUoc2Vzc2lvbl9rZXlzLT5saW1pdCkpIHsKKyAgICBjYXNlIHNydHBfa2V5X2V2
ZW50X25vcm1hbDoKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBzcnRwX2tleV9ldmVudF9zb2Z0
X2xpbWl0OgorICAgICAgICBzcnRwX2hhbmRsZV9ldmVudChjdHgsIHN0cmVhbSwgZXZlbnRfa2V5
X3NvZnRfbGltaXQpOworICAgICAgICBicmVhazsKKyAgICBjYXNlIHNydHBfa2V5X2V2ZW50X2hh
cmRfbGltaXQ6CisgICAgICAgIHNydHBfaGFuZGxlX2V2ZW50KGN0eCwgc3RyZWFtLCBldmVudF9r
ZXlfaGFyZF9saW1pdCk7CisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfa2V5X2V4cGly
ZWQ7CisgICAgZGVmYXVsdDoKKyAgICAgICAgYnJlYWs7CisgICAgfQorCisgICAgLyogZ2V0IHRh
ZyBsZW5ndGggZnJvbSBzdHJlYW0gKi8KKyAgICB0YWdfbGVuID0gc3J0cF9hdXRoX2dldF90YWdf
bGVuZ3RoKHNlc3Npb25fa2V5cy0+cnRwX2F1dGgpOworCisgICAgLyoKKyAgICAgKiBmaW5kIHN0
YXJ0aW5nIHBvaW50IGZvciBlbmNyeXB0aW9uIGFuZCBsZW5ndGggb2YgZGF0YSB0byBiZQorICAg
ICAqIGVuY3J5cHRlZCAtIHRoZSBlbmNyeXB0ZWQgcG9ydGlvbiBzdGFydHMgYWZ0ZXIgdGhlIHJ0
cCBoZWFkZXIKKyAgICAgKiBleHRlbnNpb24sIGlmIHByZXNlbnQ7IG90aGVyd2lzZSwgaXQgc3Rh
cnRzIGFmdGVyIHRoZSBsYXN0IGNzcmMsCisgICAgICogaWYgYW55IGFyZSBwcmVzZW50CisgICAg
ICoKKyAgICAgKiBpZiB3ZSdyZSBub3QgcHJvdmlkaW5nIGNvbmZpZGVudGlhbGl0eSwgc2V0IGVu
Y19zdGFydCB0byBOVUxMCisgICAgICovCisgICAgaWYgKHN0cmVhbS0+cnRwX3NlcnZpY2VzICYg
c2VjX3NlcnZfY29uZikgeworICAgICAgICBlbmNfc3RhcnQgPSAodWludDMyX3QgKiloZHIgKyB1
aW50MzJzX2luX3J0cF9oZWFkZXIgKyBoZHItPmNjOworICAgICAgICBpZiAoaGRyLT54ID09IDEp
IHsKKyAgICAgICAgICAgIHh0bl9oZHIgPSAoc3J0cF9oZHJfeHRuZF90ICopZW5jX3N0YXJ0Owor
ICAgICAgICAgICAgZW5jX3N0YXJ0ICs9IChudG9ocyh4dG5faGRyLT5sZW5ndGgpICsgMSk7Cisg
ICAgICAgIH0KKyAgICAgICAgLyogbm90ZTogdGhlIHBhc3NlZCBzaXplIGlzIHdpdGhvdXQgdGhl
IGF1dGggdGFnICovCisgICAgICAgIGlmICghKCh1aW50OF90ICopZW5jX3N0YXJ0IDw9ICh1aW50
OF90ICopaGRyICsgKnBrdF9vY3RldF9sZW4pKQorICAgICAgICAgICAgcmV0dXJuIHNydHBfZXJy
X3N0YXR1c19wYXJzZV9lcnI7CisgICAgICAgIGVuY19vY3RldF9sZW4gPQorICAgICAgICAgICAg
KGludCkoKnBrdF9vY3RldF9sZW4gLSAoKHVpbnQ4X3QgKillbmNfc3RhcnQgLSAodWludDhfdCAq
KWhkcikpOworICAgICAgICBpZiAoZW5jX29jdGV0X2xlbiA8IDApCisgICAgICAgICAgICByZXR1
cm4gc3J0cF9lcnJfc3RhdHVzX3BhcnNlX2VycjsKKyAgICB9IGVsc2UgeworICAgICAgICBlbmNf
c3RhcnQgPSBOVUxMOworICAgIH0KKworICAgIG1raV9sb2NhdGlvbiA9ICh1aW50OF90ICopaGRy
ICsgKnBrdF9vY3RldF9sZW47CisgICAgbWtpX3NpemUgPSBzcnRwX2luamVjdF9ta2kobWtpX2xv
Y2F0aW9uLCBzZXNzaW9uX2tleXMsIHVzZV9ta2kpOworCisgICAgLyoKKyAgICAgKiBpZiB3ZSdy
ZSBwcm92aWRpbmcgYXV0aGVudGljYXRpb24sIHNldCB0aGUgYXV0aF9zdGFydCBhbmQgYXV0aF90
YWcKKyAgICAgKiBwb2ludGVycyB0byB0aGUgcHJvcGVyIGxvY2F0aW9uczsgb3RoZXJ3aXNlLCBz
ZXQgYXV0aF9zdGFydCB0byBOVUxMCisgICAgICogdG8gaW5kaWNhdGUgdGhhdCBubyBhdXRoZW50
aWNhdGlvbiBpcyBuZWVkZWQKKyAgICAgKi8KKyAgICBpZiAoc3RyZWFtLT5ydHBfc2VydmljZXMg
JiBzZWNfc2Vydl9hdXRoKSB7CisgICAgICAgIGF1dGhfc3RhcnQgPSAodWludDMyX3QgKiloZHI7
CisgICAgICAgIGF1dGhfdGFnID0gKHVpbnQ4X3QgKiloZHIgKyAqcGt0X29jdGV0X2xlbiArIG1r
aV9zaXplOworICAgIH0gZWxzZSB7CisgICAgICAgIGF1dGhfc3RhcnQgPSBOVUxMOworICAgICAg
ICBhdXRoX3RhZyA9IE5VTEw7CisgICAgfQorCisgICAgLyoKKyAgICAgKiBlc3RpbWF0ZSB0aGUg
cGFja2V0IGluZGV4IHVzaW5nIHRoZSBzdGFydCBvZiB0aGUgcmVwbGF5IHdpbmRvdworICAgICAq
IGFuZCB0aGUgc2VxdWVuY2UgbnVtYmVyIGZyb20gdGhlIGhlYWRlcgorICAgICAqLworICAgIHN0
YXR1cyA9IHNydHBfZ2V0X2VzdF9wa3RfaW5kZXgoaGRyLCBzdHJlYW0sICZlc3QsICZkZWx0YSk7
CisKKyAgICBpZiAoc3RhdHVzICYmIChzdGF0dXMgIT0gc3J0cF9lcnJfc3RhdHVzX3BrdF9pZHhf
YWR2KSkKKyAgICAgICAgcmV0dXJuIHN0YXR1czsKKworICAgIGlmIChzdGF0dXMgPT0gc3J0cF9l
cnJfc3RhdHVzX3BrdF9pZHhfYWR2KQorICAgICAgICBhZHZhbmNlX3BhY2tldF9pbmRleCA9IDE7
CisKKyAgICBpZiAoYWR2YW5jZV9wYWNrZXRfaW5kZXgpIHsKKyAgICAgICAgc3J0cF9yZGJ4X3Nl
dF9yb2Nfc2VxKCZzdHJlYW0tPnJ0cF9yZGJ4LCAodWludDMyX3QpKGVzdCA+PiAxNiksCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAodWludDE2X3QpKGVzdCAmIDB4RkZGRikpOworICAg
ICAgICBzdHJlYW0tPnBlbmRpbmdfcm9jID0gMDsKKyAgICAgICAgc3J0cF9yZGJ4X2FkZF9pbmRl
eCgmc3RyZWFtLT5ydHBfcmRieCwgMCk7CisgICAgfSBlbHNlIHsKKyAgICAgICAgc3RhdHVzID0g
c3J0cF9yZGJ4X2NoZWNrKCZzdHJlYW0tPnJ0cF9yZGJ4LCBkZWx0YSk7CisgICAgICAgIGlmIChz
dGF0dXMpIHsKKyAgICAgICAgICAgIGlmIChzdGF0dXMgIT0gc3J0cF9lcnJfc3RhdHVzX3JlcGxh
eV9mYWlsIHx8CisgICAgICAgICAgICAgICAgIXN0cmVhbS0+YWxsb3dfcmVwZWF0X3R4KQorICAg
ICAgICAgICAgICAgIHJldHVybiBzdGF0dXM7IC8qIHdlJ3ZlIGJlZW4gYXNrZWQgdG8gcmV1c2Ug
YW4gaW5kZXggKi8KKyAgICAgICAgfQorICAgICAgICBzcnRwX3JkYnhfYWRkX2luZGV4KCZzdHJl
YW0tPnJ0cF9yZGJ4LCBkZWx0YSk7CisgICAgfQogCi0gIC8qIGNoZWNrIHRoZSBwYWNrZXQgbGVu
Z3RoIC0gaXQgbXVzdCBhdCBsZWFzdCBjb250YWluIGEgZnVsbCBoZWFkZXIgKi8KLSAgaWYgKCpw
a3Rfb2N0ZXRfbGVuIDwgb2N0ZXRzX2luX3J0cF9oZWFkZXIpCi0gICAgcmV0dXJuIHNydHBfZXJy
X3N0YXR1c19iYWRfcGFyYW07Ci0KLSAgLyoKLSAgICogbG9vayB1cCBzc3JjIGluIHNydHBfc3Ry
ZWFtIGxpc3QsIGFuZCBwcm9jZXNzIHRoZSBwYWNrZXQgd2l0aCAKLSAgICogdGhlIGFwcHJvcHJp
YXRlIHN0cmVhbS4gIGlmIHdlIGhhdmVuJ3Qgc2VlbiB0aGlzIHN0cmVhbSBiZWZvcmUsCi0gICAq
IHRoZXJlJ3Mgb25seSBvbmUga2V5IGZvciB0aGlzIHNydHBfc2Vzc2lvbiwgYW5kIHRoZSBjaXBo
ZXIKLSAgICogc3VwcG9ydHMga2V5LXNoYXJpbmcsIHRoZW4gd2UgYXNzdW1lIHRoYXQgYSBuZXcg
c3RyZWFtIHVzaW5nCi0gICAqIHRoYXQga2V5IGhhcyBqdXN0IHN0YXJ0ZWQgdXAKLSAgICovCi0g
IHN0cmVhbSA9IHNydHBfZ2V0X3N0cmVhbShjdHgsIGhkci0+c3NyYyk7Ci0gIGlmIChzdHJlYW0g
PT0gTlVMTCkgewotICAgIGlmIChjdHgtPnN0cmVhbV90ZW1wbGF0ZSAhPSBOVUxMKSB7Ci0gICAg
ICBzdHJlYW0gPSBjdHgtPnN0cmVhbV90ZW1wbGF0ZTsKLSAgICAgIGRlYnVnX3ByaW50KG1vZF9z
cnRwLCAidXNpbmcgcHJvdmlzaW9uYWwgc3RyZWFtIChTU1JDOiAweCUwOHgpIiwKLQkJICBudG9o
bChoZHItPnNzcmMpKTsKLSAgICAgIAotICAgICAgLyogCi0gICAgICAgKiBzZXQgZXN0aW1hdGVk
IHBhY2tldCBpbmRleCB0byBzZXF1ZW5jZSBudW1iZXIgZnJvbSBoZWFkZXIsCi0gICAgICAgKiBh
bmQgc2V0IGRlbHRhIGVxdWFsIHRvIHRoZSBzYW1lIHZhbHVlCi0gICAgICAgKi8KICNpZmRlZiBO
T182NEJJVF9NQVRICi0gICAgICBlc3QgPSAoc3J0cF94dGRfc2VxX251bV90KSBtYWtlNjQoMCxu
dG9ocyhoZHItPnNlcSkpOwotICAgICAgZGVsdGEgPSBsb3czMihlc3QpOworICAgIGRlYnVnX3By
aW50Mihtb2Rfc3J0cCwgImVzdGltYXRlZCBwYWNrZXQgaW5kZXg6ICUwOHglMDh4IiwgaGlnaDMy
KGVzdCksCisgICAgICAgICAgICAgICAgIGxvdzMyKGVzdCkpOwogI2Vsc2UKLSAgICAgIGVzdCA9
IChzcnRwX3h0ZF9zZXFfbnVtX3QpIG50b2hzKGhkci0+c2VxKTsKLSAgICAgIGRlbHRhID0gKGlu
dCllc3Q7CisgICAgZGVidWdfcHJpbnQobW9kX3NydHAsICJlc3RpbWF0ZWQgcGFja2V0IGluZGV4
OiAlMDE2bGx4IiwgZXN0KTsKICNlbmRpZgorCisgICAgLyoKKyAgICAgKiBpZiB3ZSdyZSB1c2lu
ZyByaW5kYWVsIGNvdW50ZXIgbW9kZSwgc2V0IG5vbmNlIGFuZCBzZXEKKyAgICAgKi8KKyAgICBp
ZiAoc2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVyLT50eXBlLT5pZCA9PSBTUlRQX0FFU19JQ01fMTI4
IHx8CisgICAgICAgIHNlc3Npb25fa2V5cy0+cnRwX2NpcGhlci0+dHlwZS0+aWQgPT0gU1JUUF9B
RVNfSUNNXzE5MiB8fAorICAgICAgICBzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXItPnR5cGUtPmlk
ID09IFNSVFBfQUVTX0lDTV8yNTYpIHsKKyAgICAgICAgdjEyOF90IGl2OworCisgICAgICAgIGl2
LnYzMlswXSA9IDA7CisgICAgICAgIGl2LnYzMlsxXSA9IGhkci0+c3NyYzsKKyNpZmRlZiBOT182
NEJJVF9NQVRICisgICAgICAgIGl2LnY2NFsxXSA9IGJlNjRfdG9fY3B1KAorICAgICAgICAgICAg
bWFrZTY0KChoaWdoMzIoZXN0KSA8PCAxNikgfCAobG93MzIoZXN0KSA+PiAxNiksIGxvdzMyKGVz
dCkgPDwgMTYpKTsKKyNlbHNlCisgICAgICAgIGl2LnY2NFsxXSA9IGJlNjRfdG9fY3B1KGVzdCA8
PCAxNik7CisjZW5kaWYKKyAgICAgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfc2V0X2l2KHNlc3Np
b25fa2V5cy0+cnRwX2NpcGhlciwgKHVpbnQ4X3QgKikmaXYsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBzcnRwX2RpcmVjdGlvbl9lbmNyeXB0KTsKKyAgICAgICAgaWYgKCFz
dGF0dXMgJiYgc2Vzc2lvbl9rZXlzLT5ydHBfeHRuX2hkcl9jaXBoZXIpIHsKKyAgICAgICAgICAg
IHN0YXR1cyA9IHNydHBfY2lwaGVyX3NldF9pdihzZXNzaW9uX2tleXMtPnJ0cF94dG5faGRyX2Np
cGhlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAodWludDhfdCAq
KSZpdiwgc3J0cF9kaXJlY3Rpb25fZW5jcnlwdCk7CisgICAgICAgIH0KICAgICB9IGVsc2Ugewot
ICAgICAgCi0gICAgICAvKgotICAgICAgICogbm8gc3RyZWFtIGNvcnJlc3BvbmRpbmcgdG8gU1NS
QyBmb3VuZCwgYW5kIHdlIGRvbid0IGRvCi0gICAgICAgKiBrZXktc2hhcmluZywgc28gcmV0dXJu
IGFuIGVycm9yCi0gICAgICAgKi8KLSAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfbm9fY3R4
OwotICAgIH0KLSAgfSBlbHNlIHsKLSAgICBzdGF0dXMgPSBzcnRwX2dldF9lc3RfcGt0X2luZGV4
KGhkciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cmVhbSwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZlc3QsCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAmZGVsdGEpOworICAgICAgICB2MTI4X3QgaXY7CiAKLSAgICBpZiAo
c3RhdHVzICYmIChzdGF0dXMgIT0gc3J0cF9lcnJfc3RhdHVzX3BrdF9pZHhfYWR2KSkKLSAgICAg
IHJldHVybiBzdGF0dXM7CisvKiBvdGhlcndpc2UsIHNldCB0aGUgaW5kZXggdG8gZXN0ICovCisj
aWZkZWYgTk9fNjRCSVRfTUFUSAorICAgICAgICBpdi52MzJbMF0gPSAwOworICAgICAgICBpdi52
MzJbMV0gPSAwOworI2Vsc2UKKyAgICAgICAgaXYudjY0WzBdID0gMDsKKyNlbmRpZgorICAgICAg
ICBpdi52NjRbMV0gPSBiZTY0X3RvX2NwdShlc3QpOworICAgICAgICBzdGF0dXMgPSBzcnRwX2Np
cGhlcl9zZXRfaXYoc2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVyLCAodWludDhfdCAqKSZpdiwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfZGlyZWN0aW9uX2VuY3J5cHQp
OworICAgICAgICBpZiAoIXN0YXR1cyAmJiBzZXNzaW9uX2tleXMtPnJ0cF94dG5faGRyX2NpcGhl
cikgeworICAgICAgICAgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfc2V0X2l2KHNlc3Npb25fa2V5
cy0+cnRwX3h0bl9oZHJfY2lwaGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICh1aW50OF90ICopJml2LCBzcnRwX2RpcmVjdGlvbl9lbmNyeXB0KTsKKyAgICAgICAg
fQorICAgIH0KKyAgICBpZiAoc3RhdHVzKQorICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVz
X2NpcGhlcl9mYWlsOworCisvKiBzaGlmdCBlc3QsIHB1dCBpbnRvIG5ldHdvcmsgYnl0ZSBvcmRl
ciAqLworI2lmZGVmIE5PXzY0QklUX01BVEgKKyAgICBlc3QgPSBiZTY0X3RvX2NwdSgKKyAgICAg
ICAgbWFrZTY0KChoaWdoMzIoZXN0KSA8PCAxNikgfCAobG93MzIoZXN0KSA+PiAxNiksIGxvdzMy
KGVzdCkgPDwgMTYpKTsKKyNlbHNlCisgICAgZXN0ID0gYmU2NF90b19jcHUoZXN0IDw8IDE2KTsK
KyNlbmRpZgogCi0gICAgaWYgKHN0YXR1cyA9PSBzcnRwX2Vycl9zdGF0dXNfcGt0X2lkeF9hZHYp
IHsKLSAgICAgIGFkdmFuY2VfcGFja2V0X2luZGV4ID0gMTsKLSAgICAgIHJvY190b19zZXQgPSAo
dWludDMyX3QpKGVzdCA+PiAxNik7Ci0gICAgICBzZXFfdG9fc2V0ID0gKHVpbnQxNl90KShlc3Qg
JiAweEZGRkYpOworICAgIC8qCisgICAgICogaWYgd2UncmUgYXV0aGVudGljYXRpbmcgdXNpbmcg
YSB1bml2ZXJzYWwgaGFzaCwgcHV0IHRoZSBrZXlzdHJlYW0KKyAgICAgKiBwcmVmaXggaW50byB0
aGUgYXV0aGVudGljYXRpb24gdGFnCisgICAgICovCisgICAgaWYgKGF1dGhfc3RhcnQpIHsKKyAg
ICAgICAgcHJlZml4X2xlbiA9IHNydHBfYXV0aF9nZXRfcHJlZml4X2xlbmd0aChzZXNzaW9uX2tl
eXMtPnJ0cF9hdXRoKTsKKyAgICAgICAgaWYgKHByZWZpeF9sZW4pIHsKKyAgICAgICAgICAgIHN0
YXR1cyA9IHNydHBfY2lwaGVyX291dHB1dChzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXIsIGF1dGhf
dGFnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZwcmVmaXhfbGVu
KTsKKyAgICAgICAgICAgIGlmIChzdGF0dXMpCisgICAgICAgICAgICAgICAgcmV0dXJuIHNydHBf
ZXJyX3N0YXR1c19jaXBoZXJfZmFpbDsKKyAgICAgICAgICAgIGRlYnVnX3ByaW50KG1vZF9zcnRw
LCAia2V5c3RyZWFtIHByZWZpeDogJXMiLAorICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF9v
Y3RldF9zdHJpbmdfaGV4X3N0cmluZyhhdXRoX3RhZywgcHJlZml4X2xlbikpOworICAgICAgICB9
CiAgICAgfQogCi0gICAgLyogY2hlY2sgcmVwbGF5IGRhdGFiYXNlICovCi0gICAgaWYgKCFhZHZh
bmNlX3BhY2tldF9pbmRleCkgewotICAgICAgc3RhdHVzID0gc3J0cF9yZGJ4X2NoZWNrKCZzdHJl
YW0tPnJ0cF9yZGJ4LCBkZWx0YSk7Ci0gICAgICBpZiAoc3RhdHVzKQotICAgICAgICByZXR1cm4g
c3RhdHVzOworICAgIGlmICh4dG5faGRyICYmIHNlc3Npb25fa2V5cy0+cnRwX3h0bl9oZHJfY2lw
aGVyKSB7CisgICAgICAgIC8qCisgICAgICAgICAqIGV4dGVuc2lvbnMgaGVhZGVyIGVuY3J5cHRp
b24gUkZDIDY5MDQKKyAgICAgICAgICovCisgICAgICAgIHN0YXR1cyA9IHNydHBfcHJvY2Vzc19o
ZWFkZXJfZW5jcnlwdGlvbihzdHJlYW0sIHh0bl9oZHIsIHNlc3Npb25fa2V5cyk7CisgICAgICAg
IGlmIChzdGF0dXMpIHsKKyAgICAgICAgICAgIHJldHVybiBzdGF0dXM7CisgICAgICAgIH0KKyAg
ICB9CisKKyAgICAvKiBpZiB3ZSdyZSBlbmNyeXB0aW5nLCBleG9yIGtleXN0cmVhbSBpbnRvIHRo
ZSBtZXNzYWdlICovCisgICAgaWYgKGVuY19zdGFydCkgeworICAgICAgICBzdGF0dXMgPQorICAg
ICAgICAgICAgc3J0cF9jaXBoZXJfZW5jcnlwdChzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXIsICh1
aW50OF90ICopZW5jX3N0YXJ0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAodW5z
aWduZWQgaW50ICopJmVuY19vY3RldF9sZW4pOworICAgICAgICBpZiAoc3RhdHVzKQorICAgICAg
ICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19jaXBoZXJfZmFpbDsKKyAgICB9CisKKyAgICAv
KgorICAgICAqICBpZiB3ZSdyZSBhdXRoZW50aWNhdGluZywgcnVuIGF1dGhlbnRpY2F0aW9uIGZ1
bmN0aW9uIGFuZCBwdXQgcmVzdWx0CisgICAgICogIGludG8gdGhlIGF1dGhfdGFnCisgICAgICov
CisgICAgaWYgKGF1dGhfc3RhcnQpIHsKKyAgICAgICAgLyogaW5pdGlhbGl6ZSBhdXRoIGZ1bmMg
Y29udGV4dCAqLworICAgICAgICBzdGF0dXMgPSBzcnRwX2F1dGhfc3RhcnQoc2Vzc2lvbl9rZXlz
LT5ydHBfYXV0aCk7CisgICAgICAgIGlmIChzdGF0dXMpCisgICAgICAgICAgICByZXR1cm4gc3Rh
dHVzOworCisgICAgICAgIC8qIHJ1biBhdXRoIGZ1bmMgb3ZlciBwYWNrZXQgKi8KKyAgICAgICAg
c3RhdHVzID0gc3J0cF9hdXRoX3VwZGF0ZShzZXNzaW9uX2tleXMtPnJ0cF9hdXRoLCAodWludDhf
dCAqKWF1dGhfc3RhcnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKnBrdF9v
Y3RldF9sZW4pOworICAgICAgICBpZiAoc3RhdHVzKQorICAgICAgICAgICAgcmV0dXJuIHN0YXR1
czsKKworICAgICAgICAvKiBydW4gYXV0aCBmdW5jIG92ZXIgUk9DLCBwdXQgcmVzdWx0IGludG8g
YXV0aF90YWcgKi8KKyAgICAgICAgZGVidWdfcHJpbnQobW9kX3NydHAsICJlc3RpbWF0ZWQgcGFj
a2V0IGluZGV4OiAlMDE2bGx4IiwgZXN0KTsKKyAgICAgICAgc3RhdHVzID0gc3J0cF9hdXRoX2Nv
bXB1dGUoc2Vzc2lvbl9rZXlzLT5ydHBfYXV0aCwgKHVpbnQ4X3QgKikmZXN0LCA0LAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdXRoX3RhZyk7CisgICAgICAgIGRlYnVnX3By
aW50KG1vZF9zcnRwLCAic3J0cCBhdXRoIHRhZzogICAgJXMiLAorICAgICAgICAgICAgICAgICAg
ICBzcnRwX29jdGV0X3N0cmluZ19oZXhfc3RyaW5nKGF1dGhfdGFnLCB0YWdfbGVuKSk7CisgICAg
ICAgIGlmIChzdGF0dXMpCisgICAgICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2F1dGhf
ZmFpbDsKICAgICB9Ci0gIH0KIAorICAgIGlmIChhdXRoX3RhZykgeworICAgICAgICAvKiBpbmNy
ZWFzZSB0aGUgcGFja2V0IGxlbmd0aCBieSB0aGUgbGVuZ3RoIG9mIHRoZSBhdXRoIHRhZyAqLwor
ICAgICAgICAqcGt0X29jdGV0X2xlbiArPSB0YWdfbGVuOworICAgIH0KKworICAgIGlmICh1c2Vf
bWtpKSB7CisgICAgICAgIC8qIGluY3JlYXRlIHRoZSBwYWNrZXQgbGVuZ3RoIGJ5IHRoZSBta2kg
c2l6ZSAqLworICAgICAgICAqcGt0X29jdGV0X2xlbiArPSBta2lfc2l6ZTsKKyAgICB9CisKKyAg
ICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOworfQorCitzcnRwX2Vycl9zdGF0dXNfdCBzcnRw
X3VucHJvdGVjdChzcnRwX2N0eF90ICpjdHgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB2b2lkICpzcnRwX2hkciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlu
dCAqcGt0X29jdGV0X2xlbikKK3sKKyAgICByZXR1cm4gc3J0cF91bnByb3RlY3RfbWtpKGN0eCwg
c3J0cF9oZHIsIHBrdF9vY3RldF9sZW4sIDApOworfQorCitzcnRwX2Vycl9zdGF0dXNfdCBzcnRw
X3VucHJvdGVjdF9ta2koc3J0cF9jdHhfdCAqY3R4LAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHZvaWQgKnNydHBfaGRyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGludCAqcGt0X29jdGV0X2xlbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB1bnNpZ25lZCBpbnQgdXNlX21raSkKK3sKKyAgICBzcnRwX2hkcl90ICpoZHIg
PSAoc3J0cF9oZHJfdCAqKXNydHBfaGRyOworICAgIHVpbnQzMl90ICplbmNfc3RhcnQ7ICAgICAg
ICAgICAgLyogcG9pbnRlciB0byBzdGFydCBvZiBlbmNyeXB0ZWQgcG9ydGlvbiAgKi8KKyAgICB1
aW50MzJfdCAqYXV0aF9zdGFydDsgICAgICAgICAgIC8qIHBvaW50ZXIgdG8gc3RhcnQgb2YgYXV0
aC4gcG9ydGlvbiAgICAgICovCisgICAgdW5zaWduZWQgaW50IGVuY19vY3RldF9sZW4gPSAwOyAv
KiBudW1iZXIgb2Ygb2N0ZXRzIGluIGVuY3J5cHRlZCBwb3J0aW9uICovCisgICAgdWludDhfdCAq
YXV0aF90YWcgPSBOVUxMOyAgICAgICAvKiBsb2NhdGlvbiBvZiBhdXRoX3RhZyB3aXRoaW4gcGFj
a2V0ICAgICAqLworICAgIHNydHBfeHRkX3NlcV9udW1fdCBlc3Q7ICAgICAgICAgLyogZXN0aW1h
dGVkIHh0ZF9zZXFfbnVtX3Qgb2YgKmhkciAgICAgICAgKi8KKyAgICBpbnQgZGVsdGE7ICAgICAg
ICAgICAgICAgICAgICAgIC8qIGRlbHRhIG9mIGxvY2FsIHBrdCBpZHggYW5kIHRoYXQgaW4gaGRy
ICovCisgICAgdjEyOF90IGl2OworICAgIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKKyAgICBz
cnRwX3N0cmVhbV9jdHhfdCAqc3RyZWFtOworICAgIHVpbnQ4X3QgdG1wX3RhZ1tTUlRQX01BWF9U
QUdfTEVOXTsKKyAgICB1aW50MzJfdCB0YWdfbGVuLCBwcmVmaXhfbGVuOworICAgIHNydHBfaGRy
X3h0bmRfdCAqeHRuX2hkciA9IE5VTEw7CisgICAgdW5zaWduZWQgaW50IG1raV9zaXplID0gMDsK
KyAgICBzcnRwX3Nlc3Npb25fa2V5c190ICpzZXNzaW9uX2tleXMgPSBOVUxMOworICAgIGludCBh
ZHZhbmNlX3BhY2tldF9pbmRleCA9IDA7CisgICAgdWludDMyX3Qgcm9jX3RvX3NldCA9IDA7Cisg
ICAgdWludDE2X3Qgc2VxX3RvX3NldCA9IDA7CisKKyAgICBkZWJ1Z19wcmludChtb2Rfc3J0cCwg
ImZ1bmN0aW9uIHNydHBfdW5wcm90ZWN0IiwgTlVMTCk7CisKKyAgICAvKiB3ZSBhc3N1bWUgdGhl
IGhkciBpcyAzMi1iaXQgYWxpZ25lZCB0byBzdGFydCAqLworCisgICAgLyogVmVyaWZ5IFJUUCBo
ZWFkZXIgKi8KKyAgICBzdGF0dXMgPSBzcnRwX3ZhbGlkYXRlX3J0cF9oZWFkZXIoc3J0cF9oZHIs
IHBrdF9vY3RldF9sZW4pOworICAgIGlmIChzdGF0dXMpCisgICAgICAgIHJldHVybiBzdGF0dXM7
CisKKyAgICAvKiBjaGVjayB0aGUgcGFja2V0IGxlbmd0aCAtIGl0IG11c3QgYXQgbGVhc3QgY29u
dGFpbiBhIGZ1bGwgaGVhZGVyICovCisgICAgaWYgKCpwa3Rfb2N0ZXRfbGVuIDwgb2N0ZXRzX2lu
X3J0cF9oZWFkZXIpCisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtOwor
CisgICAgLyoKKyAgICAgKiBsb29rIHVwIHNzcmMgaW4gc3J0cF9zdHJlYW0gbGlzdCwgYW5kIHBy
b2Nlc3MgdGhlIHBhY2tldCB3aXRoCisgICAgICogdGhlIGFwcHJvcHJpYXRlIHN0cmVhbS4gIGlm
IHdlIGhhdmVuJ3Qgc2VlbiB0aGlzIHN0cmVhbSBiZWZvcmUsCisgICAgICogdGhlcmUncyBvbmx5
IG9uZSBrZXkgZm9yIHRoaXMgc3J0cF9zZXNzaW9uLCBhbmQgdGhlIGNpcGhlcgorICAgICAqIHN1
cHBvcnRzIGtleS1zaGFyaW5nLCB0aGVuIHdlIGFzc3VtZSB0aGF0IGEgbmV3IHN0cmVhbSB1c2lu
ZworICAgICAqIHRoYXQga2V5IGhhcyBqdXN0IHN0YXJ0ZWQgdXAKKyAgICAgKi8KKyAgICBzdHJl
YW0gPSBzcnRwX2dldF9zdHJlYW0oY3R4LCBoZHItPnNzcmMpOworICAgIGlmIChzdHJlYW0gPT0g
TlVMTCkgeworICAgICAgICBpZiAoY3R4LT5zdHJlYW1fdGVtcGxhdGUgIT0gTlVMTCkgeworICAg
ICAgICAgICAgc3RyZWFtID0gY3R4LT5zdHJlYW1fdGVtcGxhdGU7CisgICAgICAgICAgICBkZWJ1
Z19wcmludChtb2Rfc3J0cCwgInVzaW5nIHByb3Zpc2lvbmFsIHN0cmVhbSAoU1NSQzogMHglMDh4
KSIsCisgICAgICAgICAgICAgICAgICAgICAgICBudG9obChoZHItPnNzcmMpKTsKKworLyoKKyAq
IHNldCBlc3RpbWF0ZWQgcGFja2V0IGluZGV4IHRvIHNlcXVlbmNlIG51bWJlciBmcm9tIGhlYWRl
ciwKKyAqIGFuZCBzZXQgZGVsdGEgZXF1YWwgdG8gdGhlIHNhbWUgdmFsdWUKKyAqLwogI2lmZGVm
IE5PXzY0QklUX01BVEgKLSAgZGVidWdfcHJpbnQyKG1vZF9zcnRwLCAiZXN0aW1hdGVkIHVfcGFj
a2V0IGluZGV4OiAlMDh4JTA4eCIsIGhpZ2gzMihlc3QpLGxvdzMyKGVzdCkpOworICAgICAgICAg
ICAgZXN0ID0gKHNydHBfeHRkX3NlcV9udW1fdCltYWtlNjQoMCwgbnRvaHMoaGRyLT5zZXEpKTsK
KyAgICAgICAgICAgIGRlbHRhID0gbG93MzIoZXN0KTsKICNlbHNlCi0gIGRlYnVnX3ByaW50KG1v
ZF9zcnRwLCAiZXN0aW1hdGVkIHVfcGFja2V0IGluZGV4OiAlMDE2bGx4IiwgZXN0KTsKKyAgICAg
ICAgICAgIGVzdCA9IChzcnRwX3h0ZF9zZXFfbnVtX3QpbnRvaHMoaGRyLT5zZXEpOworICAgICAg
ICAgICAgZGVsdGEgPSAoaW50KWVzdDsKICNlbmRpZgorICAgICAgICB9IGVsc2UgeworICAgICAg
ICAgICAgLyoKKyAgICAgICAgICAgICAqIG5vIHN0cmVhbSBjb3JyZXNwb25kaW5nIHRvIFNTUkMg
Zm91bmQsIGFuZCB3ZSBkb24ndCBkbworICAgICAgICAgICAgICoga2V5LXNoYXJpbmcsIHNvIHJl
dHVybiBhbiBlcnJvcgorICAgICAgICAgICAgICovCisgICAgICAgICAgICByZXR1cm4gc3J0cF9l
cnJfc3RhdHVzX25vX2N0eDsKKyAgICAgICAgfQorICAgIH0gZWxzZSB7CisgICAgICAgIHN0YXR1
cyA9IHNydHBfZ2V0X2VzdF9wa3RfaW5kZXgoaGRyLCBzdHJlYW0sICZlc3QsICZkZWx0YSk7CisK
KyAgICAgICAgaWYgKHN0YXR1cyAmJiAoc3RhdHVzICE9IHNydHBfZXJyX3N0YXR1c19wa3RfaWR4
X2FkdikpCisgICAgICAgICAgICByZXR1cm4gc3RhdHVzOworCisgICAgICAgIGlmIChzdGF0dXMg
PT0gc3J0cF9lcnJfc3RhdHVzX3BrdF9pZHhfYWR2KSB7CisgICAgICAgICAgICBhZHZhbmNlX3Bh
Y2tldF9pbmRleCA9IDE7CisgICAgICAgICAgICByb2NfdG9fc2V0ID0gKHVpbnQzMl90KShlc3Qg
Pj4gMTYpOworICAgICAgICAgICAgc2VxX3RvX3NldCA9ICh1aW50MTZfdCkoZXN0ICYgMHhGRkZG
KTsKKyAgICAgICAgfQorCisgICAgICAgIC8qIGNoZWNrIHJlcGxheSBkYXRhYmFzZSAqLworICAg
ICAgICBpZiAoIWFkdmFuY2VfcGFja2V0X2luZGV4KSB7CisgICAgICAgICAgICBzdGF0dXMgPSBz
cnRwX3JkYnhfY2hlY2soJnN0cmVhbS0+cnRwX3JkYngsIGRlbHRhKTsKKyAgICAgICAgICAgIGlm
IChzdGF0dXMpCisgICAgICAgICAgICAgICAgcmV0dXJuIHN0YXR1czsKKyAgICAgICAgfQorICAg
IH0KIAotICAvKgotICAgKiBEZXRlcm1pbmUgaWYgTUtJIGlzIGJlaW5nIHVzZWQgYW5kIHdoYXQg
c2Vzc2lvbiBrZXlzIHNob3VsZCBiZSB1c2VkCi0gICAqLwotICBpZiAodXNlX21raSkgewotICAg
ICAgc2Vzc2lvbl9rZXlzID0gc3J0cF9nZXRfc2Vzc2lvbl9rZXlzKHN0cmVhbSwgKHVpbnQ4X3Qg
KiloZHIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNvbnN0
IHVuc2lnbmVkIGludCopcGt0X29jdGV0X2xlbiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAmbWtpX3NpemUpOwotCi0gICAgICBpZiAoc2Vzc2lvbl9rZXlzID09
IE5VTEwpIAotICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfbWtpOwotICB9IGVs
c2UgewotICAgICAgc2Vzc2lvbl9rZXlzID0gJnN0cmVhbS0+c2Vzc2lvbl9rZXlzWzBdOwotICB9
Ci0KLSAgLyoKLSAgICogQ2hlY2sgaWYgdGhpcyBpcyBhbiBBRUFEIHN0cmVhbSAoR0NNIG1vZGUp
LiAgSWYgc28sIHRoZW4gZGlzcGF0Y2gKLSAgICogdGhlIHJlcXVlc3QgdG8gb3VyIEFFQUQgaGFu
ZGxlci4KLSAgICovCi0gIGlmIChzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXItPmFsZ29yaXRobSA9
PSBTUlRQX0FFU19HQ01fMTI4IHx8Ci0gICAgICBzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXItPmFs
Z29yaXRobSA9PSBTUlRQX0FFU19HQ01fMjU2KSB7Ci0gICAgICByZXR1cm4gc3J0cF91bnByb3Rl
Y3RfYWVhZChjdHgsIHN0cmVhbSwgZGVsdGEsIGVzdCwgc3J0cF9oZHIsCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAodW5zaWduZWQgaW50Kilwa3Rfb2N0ZXRfbGVuLCBzZXNzaW9u
X2tleXMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBta2lfc2l6ZSk7Ci0gIH0K
LQotICAvKiBnZXQgdGFnIGxlbmd0aCBmcm9tIHN0cmVhbSAqLwotICB0YWdfbGVuID0gc3J0cF9h
dXRoX2dldF90YWdfbGVuZ3RoKHNlc3Npb25fa2V5cy0+cnRwX2F1dGgpOyAKLQotICAvKiAKLSAg
ICogc2V0IHRoZSBjaXBoZXIncyBJViBwcm9wZXJseSwgZGVwZW5kaW5nIG9uIHdoYXRldmVyIGNp
cGhlciB3ZQotICAgKiBoYXBwZW4gdG8gYmUgdXNpbmcKLSAgICovCi0gIGlmIChzZXNzaW9uX2tl
eXMtPnJ0cF9jaXBoZXItPnR5cGUtPmlkID09IFNSVFBfQUVTX0lDTV8xMjggfHwKLSAgICAgIHNl
c3Npb25fa2V5cy0+cnRwX2NpcGhlci0+dHlwZS0+aWQgPT0gU1JUUF9BRVNfSUNNXzE5MiB8fAot
ICAgICAgc2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVyLT50eXBlLT5pZCA9PSBTUlRQX0FFU19JQ01f
MjU2KSB7Ci0gICAgLyogYWVzIGNvdW50ZXIgbW9kZSAqLwotICAgIGl2LnYzMlswXSA9IDA7Ci0g
ICAgaXYudjMyWzFdID0gaGRyLT5zc3JjOyAgLyogc3RpbGwgaW4gbmV0d29yayBvcmRlciAqLwog
I2lmZGVmIE5PXzY0QklUX01BVEgKLSAgICBpdi52NjRbMV0gPSBiZTY0X3RvX2NwdShtYWtlNjQo
KGhpZ2gzMihlc3QpIDw8IDE2KSB8IChsb3czMihlc3QpID4+IDE2KSwKLQkJCSAgICAgICAgIGxv
dzMyKGVzdCkgPDwgMTYpKTsKKyAgICBkZWJ1Z19wcmludDIobW9kX3NydHAsICJlc3RpbWF0ZWQg
dV9wYWNrZXQgaW5kZXg6ICUwOHglMDh4IiwgaGlnaDMyKGVzdCksCisgICAgICAgICAgICAgICAg
IGxvdzMyKGVzdCkpOwogI2Vsc2UKLSAgICBpdi52NjRbMV0gPSBiZTY0X3RvX2NwdShlc3QgPDwg
MTYpOworICAgIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAiZXN0aW1hdGVkIHVfcGFja2V0IGluZGV4
OiAlMDE2bGx4IiwgZXN0KTsKICNlbmRpZgotICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3NldF9p
dihzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICh1aW50OF90KikmaXYsIHNydHBfZGlyZWN0aW9uX2RlY3J5cHQpOwotICAgIGlmICghc3Rh
dHVzICYmIHNlc3Npb25fa2V5cy0+cnRwX3h0bl9oZHJfY2lwaGVyKSB7Ci0gICAgICBzdGF0dXMg
PSBzcnRwX2NpcGhlcl9zZXRfaXYoc2Vzc2lvbl9rZXlzLT5ydHBfeHRuX2hkcl9jaXBoZXIsCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHVpbnQ4X3QqKSZpdiwgc3J0cF9kaXJl
Y3Rpb25fZGVjcnlwdCk7CisKKyAgICAvKiBEZXRlcm1pbmUgaWYgTUtJIGlzIGJlaW5nIHVzZWQg
YW5kIHdoYXQgc2Vzc2lvbiBrZXlzIHNob3VsZCBiZSB1c2VkICovCisgICAgaWYgKHVzZV9ta2kp
IHsKKyAgICAgICAgc2Vzc2lvbl9rZXlzID0gc3J0cF9nZXRfc2Vzc2lvbl9rZXlzKAorICAgICAg
ICAgICAgc3RyZWFtLCAodWludDhfdCAqKWhkciwgKGNvbnN0IHVuc2lnbmVkIGludCAqKXBrdF9v
Y3RldF9sZW4sCisgICAgICAgICAgICAmbWtpX3NpemUpOworCisgICAgICAgIGlmIChzZXNzaW9u
X2tleXMgPT0gTlVMTCkKKyAgICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYmFkX21r
aTsKKyAgICB9IGVsc2UgeworICAgICAgICBzZXNzaW9uX2tleXMgPSAmc3RyZWFtLT5zZXNzaW9u
X2tleXNbMF07CiAgICAgfQotICB9IGVsc2UgeyAgCi0gICAgCi0gICAgLyogbm8gcGFydGljdWxh
ciBmb3JtYXQgLSBzZXQgdGhlIGl2IHRvIHRoZSBwYWtjZXQgaW5kZXggKi8gIAorCisgICAgLyoK
KyAgICAgKiBDaGVjayBpZiB0aGlzIGlzIGFuIEFFQUQgc3RyZWFtIChHQ00gbW9kZSkuICBJZiBz
bywgdGhlbiBkaXNwYXRjaAorICAgICAqIHRoZSByZXF1ZXN0IHRvIG91ciBBRUFEIGhhbmRsZXIu
CisgICAgICovCisgICAgaWYgKHNlc3Npb25fa2V5cy0+cnRwX2NpcGhlci0+YWxnb3JpdGhtID09
IFNSVFBfQUVTX0dDTV8xMjggfHwKKyAgICAgICAgc2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVyLT5h
bGdvcml0aG0gPT0gU1JUUF9BRVNfR0NNXzI1NikgeworICAgICAgICByZXR1cm4gc3J0cF91bnBy
b3RlY3RfYWVhZChjdHgsIHN0cmVhbSwgZGVsdGEsIGVzdCwgc3J0cF9oZHIsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICh1bnNpZ25lZCBpbnQgKilwa3Rfb2N0ZXRfbGVuLCBz
ZXNzaW9uX2tleXMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1raV9zaXpl
KTsKKyAgICB9CisKKyAgICAvKiBnZXQgdGFnIGxlbmd0aCBmcm9tIHN0cmVhbSAqLworICAgIHRh
Z19sZW4gPSBzcnRwX2F1dGhfZ2V0X3RhZ19sZW5ndGgoc2Vzc2lvbl9rZXlzLT5ydHBfYXV0aCk7
CisKKyAgICAvKgorICAgICAqIHNldCB0aGUgY2lwaGVyJ3MgSVYgcHJvcGVybHksIGRlcGVuZGlu
ZyBvbiB3aGF0ZXZlciBjaXBoZXIgd2UKKyAgICAgKiBoYXBwZW4gdG8gYmUgdXNpbmcKKyAgICAg
Ki8KKyAgICBpZiAoc2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVyLT50eXBlLT5pZCA9PSBTUlRQX0FF
U19JQ01fMTI4IHx8CisgICAgICAgIHNlc3Npb25fa2V5cy0+cnRwX2NpcGhlci0+dHlwZS0+aWQg
PT0gU1JUUF9BRVNfSUNNXzE5MiB8fAorICAgICAgICBzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXIt
PnR5cGUtPmlkID09IFNSVFBfQUVTX0lDTV8yNTYpIHsKKyAgICAgICAgLyogYWVzIGNvdW50ZXIg
bW9kZSAqLworICAgICAgICBpdi52MzJbMF0gPSAwOworICAgICAgICBpdi52MzJbMV0gPSBoZHIt
PnNzcmM7IC8qIHN0aWxsIGluIG5ldHdvcmsgb3JkZXIgKi8KICNpZmRlZiBOT182NEJJVF9NQVRI
Ci0gICAgaXYudjMyWzBdID0gMDsKLSAgICBpdi52MzJbMV0gPSAwOworICAgICAgICBpdi52NjRb
MV0gPSBiZTY0X3RvX2NwdSgKKyAgICAgICAgICAgIG1ha2U2NCgoaGlnaDMyKGVzdCkgPDwgMTYp
IHwgKGxvdzMyKGVzdCkgPj4gMTYpLCBsb3czMihlc3QpIDw8IDE2KSk7CiAjZWxzZQotICAgIGl2
LnY2NFswXSA9IDA7CisgICAgICAgIGl2LnY2NFsxXSA9IGJlNjRfdG9fY3B1KGVzdCA8PCAxNik7
CiAjZW5kaWYKLSAgICBpdi52NjRbMV0gPSBiZTY0X3RvX2NwdShlc3QpOwotICAgIHN0YXR1cyA9
IHNydHBfY2lwaGVyX3NldF9pdihzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXIsICh1aW50OF90Kikm
aXYsIHNydHBfZGlyZWN0aW9uX2RlY3J5cHQpOwotICAgIGlmICghc3RhdHVzICYmIHNlc3Npb25f
a2V5cy0+cnRwX3h0bl9oZHJfY2lwaGVyKSB7Ci0gICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9z
ZXRfaXYoc2Vzc2lvbl9rZXlzLT5ydHBfeHRuX2hkcl9jaXBoZXIsICh1aW50OF90KikmaXYsIHNy
dHBfZGlyZWN0aW9uX2RlY3J5cHQpOworICAgICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9zZXRf
aXYoc2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVyLCAodWludDhfdCAqKSZpdiwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfZGlyZWN0aW9uX2RlY3J5cHQpOworICAgICAg
ICBpZiAoIXN0YXR1cyAmJiBzZXNzaW9uX2tleXMtPnJ0cF94dG5faGRyX2NpcGhlcikgeworICAg
ICAgICAgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfc2V0X2l2KHNlc3Npb25fa2V5cy0+cnRwX3h0
bl9oZHJfY2lwaGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICh1
aW50OF90ICopJml2LCBzcnRwX2RpcmVjdGlvbl9kZWNyeXB0KTsKKyAgICAgICAgfQorICAgIH0g
ZWxzZSB7CisvKiBubyBwYXJ0aWN1bGFyIGZvcm1hdCAtIHNldCB0aGUgaXYgdG8gdGhlIHBha2Nl
dCBpbmRleCAqLworI2lmZGVmIE5PXzY0QklUX01BVEgKKyAgICAgICAgaXYudjMyWzBdID0gMDsK
KyAgICAgICAgaXYudjMyWzFdID0gMDsKKyNlbHNlCisgICAgICAgIGl2LnY2NFswXSA9IDA7Cisj
ZW5kaWYKKyAgICAgICAgaXYudjY0WzFdID0gYmU2NF90b19jcHUoZXN0KTsKKyAgICAgICAgc3Rh
dHVzID0gc3J0cF9jaXBoZXJfc2V0X2l2KHNlc3Npb25fa2V5cy0+cnRwX2NpcGhlciwgKHVpbnQ4
X3QgKikmaXYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcnRwX2RpcmVj
dGlvbl9kZWNyeXB0KTsKKyAgICAgICAgaWYgKCFzdGF0dXMgJiYgc2Vzc2lvbl9rZXlzLT5ydHBf
eHRuX2hkcl9jaXBoZXIpIHsKKyAgICAgICAgICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3NldF9p
dihzZXNzaW9uX2tleXMtPnJ0cF94dG5faGRyX2NpcGhlciwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAodWludDhfdCAqKSZpdiwgc3J0cF9kaXJlY3Rpb25fZGVjcnlw
dCk7CisgICAgICAgIH0KICAgICB9Ci0gIH0KLSAgaWYgKHN0YXR1cykKLSAgICByZXR1cm4gc3J0
cF9lcnJfc3RhdHVzX2NpcGhlcl9mYWlsOworICAgIGlmIChzdGF0dXMpCisgICAgICAgIHJldHVy
biBzcnRwX2Vycl9zdGF0dXNfY2lwaGVyX2ZhaWw7CiAKLSAgLyogc2hpZnQgZXN0LCBwdXQgaW50
byBuZXR3b3JrIGJ5dGUgb3JkZXIgKi8KKy8qIHNoaWZ0IGVzdCwgcHV0IGludG8gbmV0d29yayBi
eXRlIG9yZGVyICovCiAjaWZkZWYgTk9fNjRCSVRfTUFUSAotICBlc3QgPSBiZTY0X3RvX2NwdSht
YWtlNjQoKGhpZ2gzMihlc3QpIDw8IDE2KSB8Ci0JCQkJCSAgICAobG93MzIoZXN0KSA+PiAxNiks
Ci0JCQkJCSAgICBsb3czMihlc3QpIDw8IDE2KSk7CisgICAgZXN0ID0gYmU2NF90b19jcHUoCisg
ICAgICAgIG1ha2U2NCgoaGlnaDMyKGVzdCkgPDwgMTYpIHwgKGxvdzMyKGVzdCkgPj4gMTYpLCBs
b3czMihlc3QpIDw8IDE2KSk7CiAjZWxzZQotICBlc3QgPSBiZTY0X3RvX2NwdShlc3QgPDwgMTYp
OworICAgIGVzdCA9IGJlNjRfdG9fY3B1KGVzdCA8PCAxNik7CiAjZW5kaWYKIAotICAvKgotICAg
KiBmaW5kIHN0YXJ0aW5nIHBvaW50IGZvciBkZWNyeXB0aW9uIGFuZCBsZW5ndGggb2YgZGF0YSB0
byBiZQotICAgKiBkZWNyeXB0ZWQgLSB0aGUgZW5jcnlwdGVkIHBvcnRpb24gc3RhcnRzIGFmdGVy
IHRoZSBydHAgaGVhZGVyCi0gICAqIGV4dGVuc2lvbiwgaWYgcHJlc2VudDsgb3RoZXJ3aXNlLCBp
dCBzdGFydHMgYWZ0ZXIgdGhlIGxhc3QgY3NyYywKLSAgICogaWYgYW55IGFyZSBwcmVzZW50Ci0g
ICAqCi0gICAqIGlmIHdlJ3JlIG5vdCBwcm92aWRpbmcgY29uZmlkZW50aWFsaXR5LCBzZXQgZW5j
X3N0YXJ0IHRvIE5VTEwKLSAgICovCi0gIGlmIChzdHJlYW0tPnJ0cF9zZXJ2aWNlcyAmIHNlY19z
ZXJ2X2NvbmYpIHsKLSAgICBlbmNfc3RhcnQgPSAodWludDMyX3QgKiloZHIgKyB1aW50MzJzX2lu
X3J0cF9oZWFkZXIgKyBoZHItPmNjOyAgCi0gICAgaWYgKGhkci0+eCA9PSAxKSB7Ci0gICAgICB4
dG5faGRyID0gKHNydHBfaGRyX3h0bmRfdCAqKWVuY19zdGFydDsKLSAgICAgIGVuY19zdGFydCAr
PSAobnRvaHMoeHRuX2hkci0+bGVuZ3RoKSArIDEpOwotICAgIH0gIAotICAgIGlmICghKCh1aW50
OF90KillbmNfc3RhcnQgPD0gKHVpbnQ4X3QqKWhkciArICgqcGt0X29jdGV0X2xlbiAtIHRhZ19s
ZW4gLSBta2lfc2l6ZSkpKQotICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19wYXJzZV9lcnI7
Ci0gICAgZW5jX29jdGV0X2xlbiA9ICh1aW50MzJfdCkoKnBrdF9vY3RldF9sZW4gLSB0YWdfbGVu
IC0gbWtpX3NpemUgLQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgodWludDhfdCop
ZW5jX3N0YXJ0IC0gKHVpbnQ4X3QqKWhkcikpOwotICB9IGVsc2UgewotICAgIGVuY19zdGFydCA9
IE5VTEw7Ci0gIH0KLQotICAvKiAKLSAgICogaWYgd2UncmUgcHJvdmlkaW5nIGF1dGhlbnRpY2F0
aW9uLCBzZXQgdGhlIGF1dGhfc3RhcnQgYW5kIGF1dGhfdGFnCi0gICAqIHBvaW50ZXJzIHRvIHRo
ZSBwcm9wZXIgbG9jYXRpb25zOyBvdGhlcndpc2UsIHNldCBhdXRoX3N0YXJ0IHRvIE5VTEwKLSAg
ICogdG8gaW5kaWNhdGUgdGhhdCBubyBhdXRoZW50aWNhdGlvbiBpcyBuZWVkZWQKLSAgICovCi0g
IGlmIChzdHJlYW0tPnJ0cF9zZXJ2aWNlcyAmIHNlY19zZXJ2X2F1dGgpIHsKLSAgICBhdXRoX3N0
YXJ0ID0gKHVpbnQzMl90ICopaGRyOwotICAgIGF1dGhfdGFnID0gKHVpbnQ4X3QgKiloZHIgKyAq
cGt0X29jdGV0X2xlbiAtIHRhZ19sZW47Ci0gIH0gZWxzZSB7Ci0gICAgYXV0aF9zdGFydCA9IE5V
TEw7Ci0gICAgYXV0aF90YWcgPSBOVUxMOwotICB9IAotCi0gIC8qCi0gICAqIGlmIHdlIGV4cGVj
dCBtZXNzYWdlIGF1dGhlbnRpY2F0aW9uLCBydW4gdGhlIGF1dGhlbnRpY2F0aW9uCi0gICAqIGZ1
bmN0aW9uIGFuZCBjb21wYXJlIHRoZSByZXN1bHQgd2l0aCB0aGUgdmFsdWUgb2YgdGhlIGF1dGhf
dGFnCi0gICAqLwotICBpZiAoYXV0aF9zdGFydCkgeyAgICAgICAgCi0KLSAgICAvKiAKLSAgICAg
KiBpZiB3ZSdyZSB1c2luZyBhIHVuaXZlcnNhbCBoYXNoLCB0aGVuIHdlIG5lZWQgdG8gY29tcHV0
ZSB0aGUKLSAgICAgKiBrZXlzdHJlYW0gcHJlZml4IGZvciBlbmNyeXB0aW5nIHRoZSB1bml2ZXJz
YWwgaGFzaCBvdXRwdXQKKyAgICAvKgorICAgICAqIGZpbmQgc3RhcnRpbmcgcG9pbnQgZm9yIGRl
Y3J5cHRpb24gYW5kIGxlbmd0aCBvZiBkYXRhIHRvIGJlCisgICAgICogZGVjcnlwdGVkIC0gdGhl
IGVuY3J5cHRlZCBwb3J0aW9uIHN0YXJ0cyBhZnRlciB0aGUgcnRwIGhlYWRlcgorICAgICAqIGV4
dGVuc2lvbiwgaWYgcHJlc2VudDsgb3RoZXJ3aXNlLCBpdCBzdGFydHMgYWZ0ZXIgdGhlIGxhc3Qg
Y3NyYywKKyAgICAgKiBpZiBhbnkgYXJlIHByZXNlbnQKICAgICAgKgotICAgICAqIGlmIHRoZSBr
ZXlzdHJlYW0gcHJlZml4IGxlbmd0aCBpcyB6ZXJvLCB0aGVuIHdlIGtub3cgdGhhdAotICAgICAq
IHRoZSBhdXRoZW50aWNhdG9yIGlzbid0IHVzaW5nIGEgdW5pdmVyc2FsIGhhc2ggZnVuY3Rpb24K
LSAgICAgKi8gIAotICAgIGlmIChzZXNzaW9uX2tleXMtPnJ0cF9hdXRoLT5wcmVmaXhfbGVuICE9
IDApIHsKLSAgICAgIAotICAgICAgcHJlZml4X2xlbiA9IHNydHBfYXV0aF9nZXRfcHJlZml4X2xl
bmd0aChzZXNzaW9uX2tleXMtPnJ0cF9hdXRoKTsgICAgCi0gICAgICBzdGF0dXMgPSBzcnRwX2Np
cGhlcl9vdXRwdXQoc2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVyLCB0bXBfdGFnLCAmcHJlZml4X2xl
bik7Ci0gICAgICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgImtleXN0cmVhbSBwcmVmaXg6ICVzIiwg
Ci0JCSAgc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZyh0bXBfdGFnLCBwcmVmaXhfbGVuKSk7
Ci0gICAgICBpZiAoc3RhdHVzKQotCXJldHVybiBzcnRwX2Vycl9zdGF0dXNfY2lwaGVyX2ZhaWw7
Ci0gICAgfSAKKyAgICAgKiBpZiB3ZSdyZSBub3QgcHJvdmlkaW5nIGNvbmZpZGVudGlhbGl0eSwg
c2V0IGVuY19zdGFydCB0byBOVUxMCisgICAgICovCisgICAgaWYgKHN0cmVhbS0+cnRwX3NlcnZp
Y2VzICYgc2VjX3NlcnZfY29uZikgeworICAgICAgICBlbmNfc3RhcnQgPSAodWludDMyX3QgKilo
ZHIgKyB1aW50MzJzX2luX3J0cF9oZWFkZXIgKyBoZHItPmNjOworICAgICAgICBpZiAoaGRyLT54
ID09IDEpIHsKKyAgICAgICAgICAgIHh0bl9oZHIgPSAoc3J0cF9oZHJfeHRuZF90ICopZW5jX3N0
YXJ0OworICAgICAgICAgICAgZW5jX3N0YXJ0ICs9IChudG9ocyh4dG5faGRyLT5sZW5ndGgpICsg
MSk7CisgICAgICAgIH0KKyAgICAgICAgaWYgKCEoKHVpbnQ4X3QgKillbmNfc3RhcnQgPD0KKyAg
ICAgICAgICAgICAgKHVpbnQ4X3QgKiloZHIgKyAoKnBrdF9vY3RldF9sZW4gLSB0YWdfbGVuIC0g
bWtpX3NpemUpKSkKKyAgICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfcGFyc2VfZXJy
OworICAgICAgICBlbmNfb2N0ZXRfbGVuID0gKHVpbnQzMl90KSgqcGt0X29jdGV0X2xlbiAtIHRh
Z19sZW4gLSBta2lfc2l6ZSAtCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgo
dWludDhfdCAqKWVuY19zdGFydCAtICh1aW50OF90ICopaGRyKSk7CisgICAgfSBlbHNlIHsKKyAg
ICAgICAgZW5jX3N0YXJ0ID0gTlVMTDsKKyAgICB9CiAKLSAgICAvKiBpbml0aWFsaXplIGF1dGgg
ZnVuYyBjb250ZXh0ICovCi0gICAgc3RhdHVzID0gc3J0cF9hdXRoX3N0YXJ0KHNlc3Npb25fa2V5
cy0+cnRwX2F1dGgpOwotICAgIGlmIChzdGF0dXMpIHJldHVybiBzdGF0dXM7Ci0gCi0gICAgLyog
bm93IGNvbXB1dGUgYXV0aCBmdW5jdGlvbiBvdmVyIHBhY2tldCAqLwotICAgIHN0YXR1cyA9IHNy
dHBfYXV0aF91cGRhdGUoc2Vzc2lvbl9rZXlzLT5ydHBfYXV0aCwgKHVpbnQ4X3QgKilhdXRoX3N0
YXJ0LAotCQkJICpwa3Rfb2N0ZXRfbGVuIC0gdGFnX2xlbiAtIG1raV9zaXplKTsKLQotICAgIC8q
IHJ1biBhdXRoIGZ1bmMgb3ZlciBST0MsIHRoZW4gd3JpdGUgdG1wIHRhZyAqLwotICAgIHN0YXR1
cyA9IHNydHBfYXV0aF9jb21wdXRlKHNlc3Npb25fa2V5cy0+cnRwX2F1dGgsICh1aW50OF90ICop
JmVzdCwgNCwgdG1wX3RhZyk7Ci0KLSAgICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgImNvbXB1dGVk
IGF1dGggdGFnOiAgICAlcyIsIAotCQlzcnRwX29jdGV0X3N0cmluZ19oZXhfc3RyaW5nKHRtcF90
YWcsIHRhZ19sZW4pKTsKLSAgICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgInBhY2tldCBhdXRoIHRh
ZzogICAgICAlcyIsIAotCQlzcnRwX29jdGV0X3N0cmluZ19oZXhfc3RyaW5nKGF1dGhfdGFnLCB0
YWdfbGVuKSk7Ci0gICAgaWYgKHN0YXR1cykKLSAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNf
YXV0aF9mYWlsOyAgIAorICAgIC8qCisgICAgICogaWYgd2UncmUgcHJvdmlkaW5nIGF1dGhlbnRp
Y2F0aW9uLCBzZXQgdGhlIGF1dGhfc3RhcnQgYW5kIGF1dGhfdGFnCisgICAgICogcG9pbnRlcnMg
dG8gdGhlIHByb3BlciBsb2NhdGlvbnM7IG90aGVyd2lzZSwgc2V0IGF1dGhfc3RhcnQgdG8gTlVM
TAorICAgICAqIHRvIGluZGljYXRlIHRoYXQgbm8gYXV0aGVudGljYXRpb24gaXMgbmVlZGVkCisg
ICAgICovCisgICAgaWYgKHN0cmVhbS0+cnRwX3NlcnZpY2VzICYgc2VjX3NlcnZfYXV0aCkgewor
ICAgICAgICBhdXRoX3N0YXJ0ID0gKHVpbnQzMl90ICopaGRyOworICAgICAgICBhdXRoX3RhZyA9
ICh1aW50OF90ICopaGRyICsgKnBrdF9vY3RldF9sZW4gLSB0YWdfbGVuOworICAgIH0gZWxzZSB7
CisgICAgICAgIGF1dGhfc3RhcnQgPSBOVUxMOworICAgICAgICBhdXRoX3RhZyA9IE5VTEw7Cisg
ICAgfQogCi0gICAgaWYgKG9jdGV0X3N0cmluZ19pc19lcSh0bXBfdGFnLCBhdXRoX3RhZywgdGFn
X2xlbikpCi0gICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2F1dGhfZmFpbDsKLSAgfQotCi0g
IC8qIAotICAgKiB1cGRhdGUgdGhlIGtleSB1c2FnZSBsaW1pdCwgYW5kIGNoZWNrIGl0IHRvIG1h
a2Ugc3VyZSB0aGF0IHdlCi0gICAqIGRpZG4ndCBqdXN0IGhpdCBlaXRoZXIgdGhlIHNvZnQgbGlt
aXQgb3IgdGhlIGhhcmQgbGltaXQsIGFuZCBjYWxsCi0gICAqIHRoZSBldmVudCBoYW5kbGVyIGlm
IHdlIGhpdCBlaXRoZXIuCi0gICAqLwotICBzd2l0Y2goc3J0cF9rZXlfbGltaXRfdXBkYXRlKHNl
c3Npb25fa2V5cy0+bGltaXQpKSB7Ci0gIGNhc2Ugc3J0cF9rZXlfZXZlbnRfbm9ybWFsOgotICAg
IGJyZWFrOwotICBjYXNlIHNydHBfa2V5X2V2ZW50X3NvZnRfbGltaXQ6IAotICAgIHNydHBfaGFu
ZGxlX2V2ZW50KGN0eCwgc3RyZWFtLCBldmVudF9rZXlfc29mdF9saW1pdCk7Ci0gICAgYnJlYWs7
IAotICBjYXNlIHNydHBfa2V5X2V2ZW50X2hhcmRfbGltaXQ6Ci0gICAgc3J0cF9oYW5kbGVfZXZl
bnQoY3R4LCBzdHJlYW0sIGV2ZW50X2tleV9oYXJkX2xpbWl0KTsKLSAgICByZXR1cm4gc3J0cF9l
cnJfc3RhdHVzX2tleV9leHBpcmVkOwotICBkZWZhdWx0OgotICAgIGJyZWFrOwotICB9Ci0KLSAg
aWYgKHh0bl9oZHIgJiYgc2Vzc2lvbl9rZXlzLT5ydHBfeHRuX2hkcl9jaXBoZXIpIHsKICAgICAv
KgotICAgICAqIGV4dGVuc2lvbnMgaGVhZGVyIGVuY3J5cHRpb24gUkZDIDY5MDQKKyAgICAgKiBp
ZiB3ZSBleHBlY3QgbWVzc2FnZSBhdXRoZW50aWNhdGlvbiwgcnVuIHRoZSBhdXRoZW50aWNhdGlv
bgorICAgICAqIGZ1bmN0aW9uIGFuZCBjb21wYXJlIHRoZSByZXN1bHQgd2l0aCB0aGUgdmFsdWUg
b2YgdGhlIGF1dGhfdGFnCiAgICAgICovCi0gICAgICBzdGF0dXMgPSBzcnRwX3Byb2Nlc3NfaGVh
ZGVyX2VuY3J5cHRpb24oc3RyZWFtLCB4dG5faGRyLCBzZXNzaW9uX2tleXMpOwotICAgIGlmIChz
dGF0dXMpIHsKLSAgICAgIHJldHVybiBzdGF0dXM7CisgICAgaWYgKGF1dGhfc3RhcnQpIHsKKyAg
ICAgICAgLyoKKyAgICAgICAgICogaWYgd2UncmUgdXNpbmcgYSB1bml2ZXJzYWwgaGFzaCwgdGhl
biB3ZSBuZWVkIHRvIGNvbXB1dGUgdGhlCisgICAgICAgICAqIGtleXN0cmVhbSBwcmVmaXggZm9y
IGVuY3J5cHRpbmcgdGhlIHVuaXZlcnNhbCBoYXNoIG91dHB1dAorICAgICAgICAgKgorICAgICAg
ICAgKiBpZiB0aGUga2V5c3RyZWFtIHByZWZpeCBsZW5ndGggaXMgemVybywgdGhlbiB3ZSBrbm93
IHRoYXQKKyAgICAgICAgICogdGhlIGF1dGhlbnRpY2F0b3IgaXNuJ3QgdXNpbmcgYSB1bml2ZXJz
YWwgaGFzaCBmdW5jdGlvbgorICAgICAgICAgKi8KKyAgICAgICAgaWYgKHNlc3Npb25fa2V5cy0+
cnRwX2F1dGgtPnByZWZpeF9sZW4gIT0gMCkgeworICAgICAgICAgICAgcHJlZml4X2xlbiA9IHNy
dHBfYXV0aF9nZXRfcHJlZml4X2xlbmd0aChzZXNzaW9uX2tleXMtPnJ0cF9hdXRoKTsKKyAgICAg
ICAgICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX291dHB1dChzZXNzaW9uX2tleXMtPnJ0cF9jaXBo
ZXIsIHRtcF90YWcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnBy
ZWZpeF9sZW4pOworICAgICAgICAgICAgZGVidWdfcHJpbnQobW9kX3NydHAsICJrZXlzdHJlYW0g
cHJlZml4OiAlcyIsCisgICAgICAgICAgICAgICAgICAgICAgICBzcnRwX29jdGV0X3N0cmluZ19o
ZXhfc3RyaW5nKHRtcF90YWcsIHByZWZpeF9sZW4pKTsKKyAgICAgICAgICAgIGlmIChzdGF0dXMp
CisgICAgICAgICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19jaXBoZXJfZmFpbDsKKyAg
ICAgICAgfQorCisgICAgICAgIC8qIGluaXRpYWxpemUgYXV0aCBmdW5jIGNvbnRleHQgKi8KKyAg
ICAgICAgc3RhdHVzID0gc3J0cF9hdXRoX3N0YXJ0KHNlc3Npb25fa2V5cy0+cnRwX2F1dGgpOwor
ICAgICAgICBpZiAoc3RhdHVzKQorICAgICAgICAgICAgcmV0dXJuIHN0YXR1czsKKworICAgICAg
ICAvKiBub3cgY29tcHV0ZSBhdXRoIGZ1bmN0aW9uIG92ZXIgcGFja2V0ICovCisgICAgICAgIHN0
YXR1cyA9IHNydHBfYXV0aF91cGRhdGUoc2Vzc2lvbl9rZXlzLT5ydHBfYXV0aCwgKHVpbnQ4X3Qg
KilhdXRoX3N0YXJ0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpwa3Rfb2N0
ZXRfbGVuIC0gdGFnX2xlbiAtIG1raV9zaXplKTsKKworICAgICAgICAvKiBydW4gYXV0aCBmdW5j
IG92ZXIgUk9DLCB0aGVuIHdyaXRlIHRtcCB0YWcgKi8KKyAgICAgICAgc3RhdHVzID0gc3J0cF9h
dXRoX2NvbXB1dGUoc2Vzc2lvbl9rZXlzLT5ydHBfYXV0aCwgKHVpbnQ4X3QgKikmZXN0LCA0LAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0bXBfdGFnKTsKKworICAgICAgICBk
ZWJ1Z19wcmludChtb2Rfc3J0cCwgImNvbXB1dGVkIGF1dGggdGFnOiAgICAlcyIsCisgICAgICAg
ICAgICAgICAgICAgIHNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcodG1wX3RhZywgdGFnX2xl
bikpOworICAgICAgICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgInBhY2tldCBhdXRoIHRhZzogICAg
ICAlcyIsCisgICAgICAgICAgICAgICAgICAgIHNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmco
YXV0aF90YWcsIHRhZ19sZW4pKTsKKyAgICAgICAgaWYgKHN0YXR1cykKKyAgICAgICAgICAgIHJl
dHVybiBzcnRwX2Vycl9zdGF0dXNfYXV0aF9mYWlsOworCisgICAgICAgIGlmIChvY3RldF9zdHJp
bmdfaXNfZXEodG1wX3RhZywgYXV0aF90YWcsIHRhZ19sZW4pKQorICAgICAgICAgICAgcmV0dXJu
IHNydHBfZXJyX3N0YXR1c19hdXRoX2ZhaWw7CiAgICAgfQotICB9CiAKLSAgLyogaWYgd2UncmUg
ZGVjcnlwdGluZywgYWRkIGtleXN0cmVhbSBpbnRvIGNpcGhlcnRleHQgKi8KLSAgaWYgKGVuY19z
dGFydCkgewotICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX2RlY3J5cHQoc2Vzc2lvbl9rZXlzLT5y
dHBfY2lwaGVyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHVpbnQ4X3QgKill
bmNfc3RhcnQsICZlbmNfb2N0ZXRfbGVuKTsKLSAgICBpZiAoc3RhdHVzKQotICAgICAgcmV0dXJu
IHNydHBfZXJyX3N0YXR1c19jaXBoZXJfZmFpbDsKLSAgfQotCi0gIC8qIAotICAgKiB2ZXJpZnkg
dGhhdCBzdHJlYW0gaXMgZm9yIHJlY2VpdmVkIHRyYWZmaWMgLSB0aGlzIGNoZWNrIHdpbGwKLSAg
ICogZGV0ZWN0IFNTUkMgY29sbGlzaW9ucywgc2luY2UgYSBzdHJlYW0gdGhhdCBhcHBlYXJzIGlu
IGJvdGgKLSAgICogc3J0cF9wcm90ZWN0KCkgYW5kIHNydHBfdW5wcm90ZWN0KCkgd2lsbCBmYWls
IHRoaXMgdGVzdCBpbiBvbmUgb2YKLSAgICogdGhvc2UgZnVuY3Rpb25zLgotICAgKgotICAgKiB3
ZSBkbyB0aGlzIGNoZWNrICphZnRlciogdGhlIGF1dGhlbnRpY2F0aW9uIGNoZWNrLCBzbyB0aGF0
IHRoZQotICAgKiBsYXR0ZXIgY2hlY2sgd2lsbCBjYXRjaCBhbnkgYXR0ZW1wdHMgdG8gZm9vbCB1
cyBpbnRvIHRoaW5raW5nCi0gICAqIHRoYXQgd2UndmUgZ290IGEgY29sbGlzaW9uCi0gICAqLwot
ICBpZiAoc3RyZWFtLT5kaXJlY3Rpb24gIT0gZGlyX3NydHBfcmVjZWl2ZXIpIHsKLSAgICBpZiAo
c3RyZWFtLT5kaXJlY3Rpb24gPT0gZGlyX3Vua25vd24pIHsKLSAgICAgIHN0cmVhbS0+ZGlyZWN0
aW9uID0gZGlyX3NydHBfcmVjZWl2ZXI7Ci0gICAgfSBlbHNlIHsKLSAgICAgIHNydHBfaGFuZGxl
X2V2ZW50KGN0eCwgc3RyZWFtLCBldmVudF9zc3JjX2NvbGxpc2lvbik7Ci0gICAgfQotICB9Ci0K
LSAgLyogCi0gICAqIGlmIHRoZSBzdHJlYW0gaXMgYSAncHJvdmlzaW9uYWwnIG9uZSwgaW4gd2hp
Y2ggdGhlIHRlbXBsYXRlIGNvbnRleHQKLSAgICogaXMgdXNlZCwgdGhlbiB3ZSBuZWVkIHRvIGFs
bG9jYXRlIGEgbmV3IHN0cmVhbSBhdCB0aGlzIHBvaW50LCBzaW5jZQotICAgKiB0aGUgYXV0aGVu
dGljYXRpb24gcGFzc2VkCi0gICAqLwotICBpZiAoc3RyZWFtID09IGN0eC0+c3RyZWFtX3RlbXBs
YXRlKSB7ICAKLSAgICBzcnRwX3N0cmVhbV9jdHhfdCAqbmV3X3N0cmVhbTsKLQotICAgIC8qIAot
ICAgICAqIGFsbG9jYXRlIGFuZCBpbml0aWFsaXplIGEgbmV3IHN0cmVhbSAKLSAgICAgKiAKLSAg
ICAgKiBub3RlIHRoYXQgd2UgaW5kaWNhdGUgZmFpbHVyZSBpZiB3ZSBjYW4ndCBhbGxvY2F0ZSB0
aGUgbmV3Ci0gICAgICogc3RyZWFtLCBhbmQgc29tZSBpbXBsZW1lbnRhdGlvbnMgd2lsbCB3YW50
IHRvIG5vdCByZXR1cm4KLSAgICAgKiBmYWlsdXJlIGhlcmUKKyAgICAvKgorICAgICAqIHVwZGF0
ZSB0aGUga2V5IHVzYWdlIGxpbWl0LCBhbmQgY2hlY2sgaXQgdG8gbWFrZSBzdXJlIHRoYXQgd2UK
KyAgICAgKiBkaWRuJ3QganVzdCBoaXQgZWl0aGVyIHRoZSBzb2Z0IGxpbWl0IG9yIHRoZSBoYXJk
IGxpbWl0LCBhbmQgY2FsbAorICAgICAqIHRoZSBldmVudCBoYW5kbGVyIGlmIHdlIGhpdCBlaXRo
ZXIuCiAgICAgICovCi0gICAgc3RhdHVzID0gc3J0cF9zdHJlYW1fY2xvbmUoY3R4LT5zdHJlYW1f
dGVtcGxhdGUsIGhkci0+c3NyYywgJm5ld19zdHJlYW0pOyAKLSAgICBpZiAoc3RhdHVzKQotICAg
ICAgcmV0dXJuIHN0YXR1czsKLSAgICAKLSAgICAvKiBhZGQgbmV3IHN0cmVhbSB0byB0aGUgaGVh
ZCBvZiB0aGUgc3RyZWFtX2xpc3QgKi8KLSAgICBuZXdfc3RyZWFtLT5uZXh0ID0gY3R4LT5zdHJl
YW1fbGlzdDsKLSAgICBjdHgtPnN0cmVhbV9saXN0ID0gbmV3X3N0cmVhbTsKLSAgICAKLSAgICAv
KiBzZXQgc3RyZWFtICh0aGUgcG9pbnRlciB1c2VkIGluIHRoaXMgZnVuY3Rpb24pICovCi0gICAg
c3RyZWFtID0gbmV3X3N0cmVhbTsKLSAgfQotCi0gIC8qIAotICAgKiB0aGUgbWVzc2FnZSBhdXRo
ZW50aWNhdGlvbiBmdW5jdGlvbiBwYXNzZWQsIHNvIGFkZCB0aGUgcGFja2V0Ci0gICAqIGluZGV4
IGludG8gdGhlIHJlcGxheSBkYXRhYmFzZSAKLSAgICovCi0gIGlmIChhZHZhbmNlX3BhY2tldF9p
bmRleCkgewotICAgIHNydHBfcmRieF9zZXRfcm9jX3NlcSgmc3RyZWFtLT5ydHBfcmRieCwKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHJvY190b19zZXQsCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICBzZXFfdG9fc2V0KTsKLSAgICBzdHJlYW0tPnBlbmRpbmdfcm9jID0gMDsKLSAgICBz
cnRwX3JkYnhfYWRkX2luZGV4KCZzdHJlYW0tPnJ0cF9yZGJ4LCAwKTsKLSAgfSBlbHNlIHsKLSAg
ICBzcnRwX3JkYnhfYWRkX2luZGV4KCZzdHJlYW0tPnJ0cF9yZGJ4LCBkZWx0YSk7Ci0gIH0KKyAg
ICBzd2l0Y2ggKHNydHBfa2V5X2xpbWl0X3VwZGF0ZShzZXNzaW9uX2tleXMtPmxpbWl0KSkgewor
ICAgIGNhc2Ugc3J0cF9rZXlfZXZlbnRfbm9ybWFsOgorICAgICAgICBicmVhazsKKyAgICBjYXNl
IHNydHBfa2V5X2V2ZW50X3NvZnRfbGltaXQ6CisgICAgICAgIHNydHBfaGFuZGxlX2V2ZW50KGN0
eCwgc3RyZWFtLCBldmVudF9rZXlfc29mdF9saW1pdCk7CisgICAgICAgIGJyZWFrOworICAgIGNh
c2Ugc3J0cF9rZXlfZXZlbnRfaGFyZF9saW1pdDoKKyAgICAgICAgc3J0cF9oYW5kbGVfZXZlbnQo
Y3R4LCBzdHJlYW0sIGV2ZW50X2tleV9oYXJkX2xpbWl0KTsKKyAgICAgICAgcmV0dXJuIHNydHBf
ZXJyX3N0YXR1c19rZXlfZXhwaXJlZDsKKyAgICBkZWZhdWx0OgorICAgICAgICBicmVhazsKKyAg
ICB9CiAKLSAgLyogZGVjcmVhc2UgdGhlIHBhY2tldCBsZW5ndGggYnkgdGhlIGxlbmd0aCBvZiB0
aGUgYXV0aCB0YWcgKi8KLSAgKnBrdF9vY3RldF9sZW4gLT0gdGFnX2xlbjsKKyAgICBpZiAoeHRu
X2hkciAmJiBzZXNzaW9uX2tleXMtPnJ0cF94dG5faGRyX2NpcGhlcikgeworICAgICAgICAvKiBl
eHRlbnNpb25zIGhlYWRlciBlbmNyeXB0aW9uIFJGQyA2OTA0ICovCisgICAgICAgIHN0YXR1cyA9
IHNydHBfcHJvY2Vzc19oZWFkZXJfZW5jcnlwdGlvbihzdHJlYW0sIHh0bl9oZHIsIHNlc3Npb25f
a2V5cyk7CisgICAgICAgIGlmIChzdGF0dXMpIHsKKyAgICAgICAgICAgIHJldHVybiBzdGF0dXM7
CisgICAgICAgIH0KKyAgICB9CiAKLSAgLyogZGVjcmVhc2UgdGhlIHBhY2tldCBsZW5ndGggYnkg
dGhlIG1raSBzaXplICovCi0gICpwa3Rfb2N0ZXRfbGVuIC09IG1raV9zaXplOworICAgIC8qIGlm
IHdlJ3JlIGRlY3J5cHRpbmcsIGFkZCBrZXlzdHJlYW0gaW50byBjaXBoZXJ0ZXh0ICovCisgICAg
aWYgKGVuY19zdGFydCkgeworICAgICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9kZWNyeXB0KHNl
c3Npb25fa2V5cy0+cnRwX2NpcGhlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAodWludDhfdCAqKWVuY19zdGFydCwgJmVuY19vY3RldF9sZW4pOworICAgICAgICBpZiAo
c3RhdHVzKQorICAgICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19jaXBoZXJfZmFpbDsK
KyAgICB9CiAKLSAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsgIAotfQorICAgIC8qCisgICAg
ICogdmVyaWZ5IHRoYXQgc3RyZWFtIGlzIGZvciByZWNlaXZlZCB0cmFmZmljIC0gdGhpcyBjaGVj
ayB3aWxsCisgICAgICogZGV0ZWN0IFNTUkMgY29sbGlzaW9ucywgc2luY2UgYSBzdHJlYW0gdGhh
dCBhcHBlYXJzIGluIGJvdGgKKyAgICAgKiBzcnRwX3Byb3RlY3QoKSBhbmQgc3J0cF91bnByb3Rl
Y3QoKSB3aWxsIGZhaWwgdGhpcyB0ZXN0IGluIG9uZSBvZgorICAgICAqIHRob3NlIGZ1bmN0aW9u
cy4KKyAgICAgKgorICAgICAqIHdlIGRvIHRoaXMgY2hlY2sgKmFmdGVyKiB0aGUgYXV0aGVudGlj
YXRpb24gY2hlY2ssIHNvIHRoYXQgdGhlCisgICAgICogbGF0dGVyIGNoZWNrIHdpbGwgY2F0Y2gg
YW55IGF0dGVtcHRzIHRvIGZvb2wgdXMgaW50byB0aGlua2luZworICAgICAqIHRoYXQgd2UndmUg
Z290IGEgY29sbGlzaW9uCisgICAgICovCisgICAgaWYgKHN0cmVhbS0+ZGlyZWN0aW9uICE9IGRp
cl9zcnRwX3JlY2VpdmVyKSB7CisgICAgICAgIGlmIChzdHJlYW0tPmRpcmVjdGlvbiA9PSBkaXJf
dW5rbm93bikgeworICAgICAgICAgICAgc3RyZWFtLT5kaXJlY3Rpb24gPSBkaXJfc3J0cF9yZWNl
aXZlcjsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIHNydHBfaGFuZGxlX2V2ZW50KGN0
eCwgc3RyZWFtLCBldmVudF9zc3JjX2NvbGxpc2lvbik7CisgICAgICAgIH0KKyAgICB9CiAKLXNy
dHBfZXJyX3N0YXR1c190Ci1zcnRwX2luaXQoKSB7Ci0gIHNydHBfZXJyX3N0YXR1c190IHN0YXR1
czsKKyAgICAvKgorICAgICAqIGlmIHRoZSBzdHJlYW0gaXMgYSAncHJvdmlzaW9uYWwnIG9uZSwg
aW4gd2hpY2ggdGhlIHRlbXBsYXRlIGNvbnRleHQKKyAgICAgKiBpcyB1c2VkLCB0aGVuIHdlIG5l
ZWQgdG8gYWxsb2NhdGUgYSBuZXcgc3RyZWFtIGF0IHRoaXMgcG9pbnQsIHNpbmNlCisgICAgICog
dGhlIGF1dGhlbnRpY2F0aW9uIHBhc3NlZAorICAgICAqLworICAgIGlmIChzdHJlYW0gPT0gY3R4
LT5zdHJlYW1fdGVtcGxhdGUpIHsKKyAgICAgICAgc3J0cF9zdHJlYW1fY3R4X3QgKm5ld19zdHJl
YW07CiAKLSAgLyogaW5pdGlhbGl6ZSBjcnlwdG8ga2VybmVsICovCi0gIHN0YXR1cyA9IHNydHBf
Y3J5cHRvX2tlcm5lbF9pbml0KCk7Ci0gIGlmIChzdGF0dXMpIAotICAgIHJldHVybiBzdGF0dXM7
CisgICAgICAgIC8qCisgICAgICAgICAqIGFsbG9jYXRlIGFuZCBpbml0aWFsaXplIGEgbmV3IHN0
cmVhbQorICAgICAgICAgKgorICAgICAgICAgKiBub3RlIHRoYXQgd2UgaW5kaWNhdGUgZmFpbHVy
ZSBpZiB3ZSBjYW4ndCBhbGxvY2F0ZSB0aGUgbmV3CisgICAgICAgICAqIHN0cmVhbSwgYW5kIHNv
bWUgaW1wbGVtZW50YXRpb25zIHdpbGwgd2FudCB0byBub3QgcmV0dXJuCisgICAgICAgICAqIGZh
aWx1cmUgaGVyZQorICAgICAgICAgKi8KKyAgICAgICAgc3RhdHVzID0KKyAgICAgICAgICAgIHNy
dHBfc3RyZWFtX2Nsb25lKGN0eC0+c3RyZWFtX3RlbXBsYXRlLCBoZHItPnNzcmMsICZuZXdfc3Ry
ZWFtKTsKKyAgICAgICAgaWYgKHN0YXR1cykKKyAgICAgICAgICAgIHJldHVybiBzdGF0dXM7CiAK
LSAgLyogbG9hZCBzcnRwIGRlYnVnIG1vZHVsZSBpbnRvIHRoZSBrZXJuZWwgKi8KLSAgc3RhdHVz
ID0gc3J0cF9jcnlwdG9fa2VybmVsX2xvYWRfZGVidWdfbW9kdWxlKCZtb2Rfc3J0cCk7Ci0gIGlm
IChzdGF0dXMpCi0gICAgcmV0dXJuIHN0YXR1czsKKyAgICAgICAgLyogYWRkIG5ldyBzdHJlYW0g
dG8gdGhlIGhlYWQgb2YgdGhlIHN0cmVhbV9saXN0ICovCisgICAgICAgIG5ld19zdHJlYW0tPm5l
eHQgPSBjdHgtPnN0cmVhbV9saXN0OworICAgICAgICBjdHgtPnN0cmVhbV9saXN0ID0gbmV3X3N0
cmVhbTsKKworICAgICAgICAvKiBzZXQgc3RyZWFtICh0aGUgcG9pbnRlciB1c2VkIGluIHRoaXMg
ZnVuY3Rpb24pICovCisgICAgICAgIHN0cmVhbSA9IG5ld19zdHJlYW07CisgICAgfQorCisgICAg
LyoKKyAgICAgKiB0aGUgbWVzc2FnZSBhdXRoZW50aWNhdGlvbiBmdW5jdGlvbiBwYXNzZWQsIHNv
IGFkZCB0aGUgcGFja2V0CisgICAgICogaW5kZXggaW50byB0aGUgcmVwbGF5IGRhdGFiYXNlCisg
ICAgICovCisgICAgaWYgKGFkdmFuY2VfcGFja2V0X2luZGV4KSB7CisgICAgICAgIHNydHBfcmRi
eF9zZXRfcm9jX3NlcSgmc3RyZWFtLT5ydHBfcmRieCwgcm9jX3RvX3NldCwgc2VxX3RvX3NldCk7
CisgICAgICAgIHN0cmVhbS0+cGVuZGluZ19yb2MgPSAwOworICAgICAgICBzcnRwX3JkYnhfYWRk
X2luZGV4KCZzdHJlYW0tPnJ0cF9yZGJ4LCAwKTsKKyAgICB9IGVsc2UgeworICAgICAgICBzcnRw
X3JkYnhfYWRkX2luZGV4KCZzdHJlYW0tPnJ0cF9yZGJ4LCBkZWx0YSk7CisgICAgfQorCisgICAg
LyogZGVjcmVhc2UgdGhlIHBhY2tldCBsZW5ndGggYnkgdGhlIGxlbmd0aCBvZiB0aGUgYXV0aCB0
YWcgKi8KKyAgICAqcGt0X29jdGV0X2xlbiAtPSB0YWdfbGVuOwogCi0gIHJldHVybiBzcnRwX2Vy
cl9zdGF0dXNfb2s7CisgICAgLyogZGVjcmVhc2UgdGhlIHBhY2tldCBsZW5ndGggYnkgdGhlIG1r
aSBzaXplICovCisgICAgKnBrdF9vY3RldF9sZW4gLT0gbWtpX3NpemU7CisKKyAgICByZXR1cm4g
c3J0cF9lcnJfc3RhdHVzX29rOwogfQogCi1zcnRwX2Vycl9zdGF0dXNfdAotc3J0cF9zaHV0ZG93
bigpIHsKLSAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVzOworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0
cF9pbml0KCkKK3sKKyAgICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7CiAKLSAgLyogc2h1dCBk
b3duIGNyeXB0byBrZXJuZWwgKi8KLSAgc3RhdHVzID0gc3J0cF9jcnlwdG9fa2VybmVsX3NodXRk
b3duKCk7Ci0gIGlmIChzdGF0dXMpIAotICAgIHJldHVybiBzdGF0dXM7CisgICAgLyogaW5pdGlh
bGl6ZSBjcnlwdG8ga2VybmVsICovCisgICAgc3RhdHVzID0gc3J0cF9jcnlwdG9fa2VybmVsX2lu
aXQoKTsKKyAgICBpZiAoc3RhdHVzKQorICAgICAgICByZXR1cm4gc3RhdHVzOwogCi0gIC8qIHNo
dXR0aW5nIGRvd24gY3J5cHRvIGtlcm5lbCBmcmVlcyB0aGUgc3J0cCBkZWJ1ZyBtb2R1bGUgYXMg
d2VsbCAqLworICAgIC8qIGxvYWQgc3J0cCBkZWJ1ZyBtb2R1bGUgaW50byB0aGUga2VybmVsICov
CisgICAgc3RhdHVzID0gc3J0cF9jcnlwdG9fa2VybmVsX2xvYWRfZGVidWdfbW9kdWxlKCZtb2Rf
c3J0cCk7CisgICAgaWYgKHN0YXR1cykKKyAgICAgICAgcmV0dXJuIHN0YXR1czsKIAotICByZXR1
cm4gc3J0cF9lcnJfc3RhdHVzX29rOworICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9
CiAKK3NydHBfZXJyX3N0YXR1c190IHNydHBfc2h1dGRvd24oKQoreworICAgIHNydHBfZXJyX3N0
YXR1c190IHN0YXR1czsKKworICAgIC8qIHNodXQgZG93biBjcnlwdG8ga2VybmVsICovCisgICAg
c3RhdHVzID0gc3J0cF9jcnlwdG9fa2VybmVsX3NodXRkb3duKCk7CisgICAgaWYgKHN0YXR1cykK
KyAgICAgICAgcmV0dXJuIHN0YXR1czsKKworICAgIC8qIHNodXR0aW5nIGRvd24gY3J5cHRvIGtl
cm5lbCBmcmVlcyB0aGUgc3J0cCBkZWJ1ZyBtb2R1bGUgYXMgd2VsbCAqLwogCi0vKiAKKyAgICBy
ZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOworfQorCisvKgogICogVGhlIGZvbGxvd2luZyBjb2Rl
IGlzIHVuZGVyIGNvbnNpZGVyYXRpb24gZm9yIHJlbW92YWwuICBTZWUKLSAqIFNSVFBfTUFYX1RS
QUlMRVJfTEVOIAorICogU1JUUF9NQVhfVFJBSUxFUl9MRU4KICAqLwogI2lmIDAKIApAQCAtMjc0
MCwzNzggKzI3NzQsMzc2IEBAIHNydHBfZ2V0X3RyYWlsZXJfbGVuZ3RoKGNvbnN0IHNydHBfc3Ry
ZWFtX3QgcykgewogICogc3J0cF9nZXRfc3RyZWFtKHNzcmMpIHJldHVybnMgYSBwb2ludGVyIHRv
IHRoZSBzdHJlYW0gY29ycmVzcG9uZGluZwogICogdG8gc3NyYywgb3IgTlVMTCBpZiBubyBzdHJl
YW0gZXhpc3RzIGZvciB0aGF0IHNzcmMKICAqCi0gKiB0aGlzIGlzIGFuIGludGVybmFsIGZ1bmN0
aW9uIAorICogdGhpcyBpcyBhbiBpbnRlcm5hbCBmdW5jdGlvbgogICovCiAKLXNydHBfc3RyZWFt
X2N0eF90ICoKLXNydHBfZ2V0X3N0cmVhbShzcnRwX3Qgc3J0cCwgdWludDMyX3Qgc3NyYykgewot
ICBzcnRwX3N0cmVhbV9jdHhfdCAqc3RyZWFtOwotCi0gIC8qIHdhbGsgZG93biBsaXN0IHVudGls
IHNzcmMgaXMgZm91bmQgKi8KLSAgc3RyZWFtID0gc3J0cC0+c3RyZWFtX2xpc3Q7Ci0gIHdoaWxl
IChzdHJlYW0gIT0gTlVMTCkgewotICAgIGlmIChzdHJlYW0tPnNzcmMgPT0gc3NyYykKLSAgICAg
IHJldHVybiBzdHJlYW07Ci0gICAgc3RyZWFtID0gc3RyZWFtLT5uZXh0OwotICB9Ci0gIAotICAv
KiB3ZSBoYXZlbid0IGZvdW5kIG91ciBzc3JjLCBzbyByZXR1cm4gYSBudWxsICovCi0gIHJldHVy
biBOVUxMOworc3J0cF9zdHJlYW1fY3R4X3QgKnNydHBfZ2V0X3N0cmVhbShzcnRwX3Qgc3J0cCwg
dWludDMyX3Qgc3NyYykKK3sKKyAgICBzcnRwX3N0cmVhbV9jdHhfdCAqc3RyZWFtOworCisgICAg
Lyogd2FsayBkb3duIGxpc3QgdW50aWwgc3NyYyBpcyBmb3VuZCAqLworICAgIHN0cmVhbSA9IHNy
dHAtPnN0cmVhbV9saXN0OworICAgIHdoaWxlIChzdHJlYW0gIT0gTlVMTCkgeworICAgICAgICBp
ZiAoc3RyZWFtLT5zc3JjID09IHNzcmMpCisgICAgICAgICAgICByZXR1cm4gc3RyZWFtOworICAg
ICAgICBzdHJlYW0gPSBzdHJlYW0tPm5leHQ7CisgICAgfQorCisgICAgLyogd2UgaGF2ZW4ndCBm
b3VuZCBvdXIgc3NyYywgc28gcmV0dXJuIGEgbnVsbCAqLworICAgIHJldHVybiBOVUxMOwogfQog
Ci1zcnRwX2Vycl9zdGF0dXNfdAotc3J0cF9kZWFsbG9jKHNydHBfdCBzZXNzaW9uKSB7Ci0gIHNy
dHBfc3RyZWFtX2N0eF90ICpzdHJlYW07Ci0gIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKLQot
ICAvKgotICAgKiB3ZSB0YWtlIGEgY29uc2VydmF0aXZlIGRlYWxsb2NhdGlvbiBzdHJhdGVneSAt
IGlmIHdlIGVuY291bnRlciBhbgotICAgKiBlcnJvciBkZWFsbG9jYXRpbmcgYSBzdHJlYW0sIHRo
ZW4gd2Ugc3RvcCB0cnlpbmcgdG8gZGVhbGxvY2F0ZQotICAgKiBtZW1vcnkgYW5kIGp1c3QgcmV0
dXJuIGFuIGVycm9yCi0gICAqLwotCi0gIC8qIHdhbGsgbGlzdCBvZiBzdHJlYW1zLCBkZWFsbG9j
YXRpbmcgYXMgd2UgZ28gKi8KLSAgc3RyZWFtID0gc2Vzc2lvbi0+c3RyZWFtX2xpc3Q7Ci0gIHdo
aWxlIChzdHJlYW0gIT0gTlVMTCkgewotICAgIHNydHBfc3RyZWFtX3QgbmV4dCA9IHN0cmVhbS0+
bmV4dDsKLSAgICBzdGF0dXMgPSBzcnRwX3N0cmVhbV9kZWFsbG9jKHN0cmVhbSwgc2Vzc2lvbi0+
c3RyZWFtX3RlbXBsYXRlKTsKLSAgICBpZiAoc3RhdHVzKQotICAgICAgcmV0dXJuIHN0YXR1czsK
LSAgICBzdHJlYW0gPSBuZXh0OwotICB9Ci0gIAotICAvKiBkZWFsbG9jYXRlIHN0cmVhbSB0ZW1w
bGF0ZSwgaWYgdGhlcmUgaXMgb25lICovCi0gIGlmIChzZXNzaW9uLT5zdHJlYW1fdGVtcGxhdGUg
IT0gTlVMTCkgewotICAgIHN0YXR1cyA9IHNydHBfc3RyZWFtX2RlYWxsb2Moc2Vzc2lvbi0+c3Ry
ZWFtX3RlbXBsYXRlLCBOVUxMKTsKLSAgICBpZiAoc3RhdHVzKQotICAgICAgcmV0dXJuIHN0YXR1
czsKLSAgfQorc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9kZWFsbG9jKHNydHBfdCBzZXNzaW9uKQor
eworICAgIHNydHBfc3RyZWFtX2N0eF90ICpzdHJlYW07CisgICAgc3J0cF9lcnJfc3RhdHVzX3Qg
c3RhdHVzOworCisgICAgLyoKKyAgICAgKiB3ZSB0YWtlIGEgY29uc2VydmF0aXZlIGRlYWxsb2Nh
dGlvbiBzdHJhdGVneSAtIGlmIHdlIGVuY291bnRlciBhbgorICAgICAqIGVycm9yIGRlYWxsb2Nh
dGluZyBhIHN0cmVhbSwgdGhlbiB3ZSBzdG9wIHRyeWluZyB0byBkZWFsbG9jYXRlCisgICAgICog
bWVtb3J5IGFuZCBqdXN0IHJldHVybiBhbiBlcnJvcgorICAgICAqLworCisgICAgLyogd2FsayBs
aXN0IG9mIHN0cmVhbXMsIGRlYWxsb2NhdGluZyBhcyB3ZSBnbyAqLworICAgIHN0cmVhbSA9IHNl
c3Npb24tPnN0cmVhbV9saXN0OworICAgIHdoaWxlIChzdHJlYW0gIT0gTlVMTCkgeworICAgICAg
ICBzcnRwX3N0cmVhbV90IG5leHQgPSBzdHJlYW0tPm5leHQ7CisgICAgICAgIHN0YXR1cyA9IHNy
dHBfc3RyZWFtX2RlYWxsb2Moc3RyZWFtLCBzZXNzaW9uLT5zdHJlYW1fdGVtcGxhdGUpOworICAg
ICAgICBpZiAoc3RhdHVzKQorICAgICAgICAgICAgcmV0dXJuIHN0YXR1czsKKyAgICAgICAgc3Ry
ZWFtID0gbmV4dDsKKyAgICB9CisKKyAgICAvKiBkZWFsbG9jYXRlIHN0cmVhbSB0ZW1wbGF0ZSwg
aWYgdGhlcmUgaXMgb25lICovCisgICAgaWYgKHNlc3Npb24tPnN0cmVhbV90ZW1wbGF0ZSAhPSBO
VUxMKSB7CisgICAgICAgIHN0YXR1cyA9IHNydHBfc3RyZWFtX2RlYWxsb2Moc2Vzc2lvbi0+c3Ry
ZWFtX3RlbXBsYXRlLCBOVUxMKTsKKyAgICAgICAgaWYgKHN0YXR1cykKKyAgICAgICAgICAgIHJl
dHVybiBzdGF0dXM7CisgICAgfQorCisgICAgLyogZGVhbGxvY2F0ZSBzZXNzaW9uIGNvbnRleHQg
Ki8KKyAgICBzcnRwX2NyeXB0b19mcmVlKHNlc3Npb24pOworCisgICAgcmV0dXJuIHNydHBfZXJy
X3N0YXR1c19vazsKK30KIAotICAvKiBkZWFsbG9jYXRlIHNlc3Npb24gY29udGV4dCAqLwotICBz
cnRwX2NyeXB0b19mcmVlKHNlc3Npb24pOworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9hZGRfc3Ry
ZWFtKHNydHBfdCBzZXNzaW9uLCBjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3kpCit7CisgICAg
c3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVzOworICAgIHNydHBfc3RyZWFtX3QgdG1wOworCisgICAg
Lyogc2FuaXR5IGNoZWNrIGFyZ3VtZW50cyAqLworICAgIGlmICgoc2Vzc2lvbiA9PSBOVUxMKSB8
fCAocG9saWN5ID09IE5VTEwpIHx8CisgICAgICAgICghc3J0cF92YWxpZGF0ZV9wb2xpY3lfbWFz
dGVyX2tleXMocG9saWN5KSkpCisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYmFkX3Bh
cmFtOworCisgICAgLyogYWxsb2NhdGUgc3RyZWFtICAqLworICAgIHN0YXR1cyA9IHNydHBfc3Ry
ZWFtX2FsbG9jKCZ0bXAsIHBvbGljeSk7CisgICAgaWYgKHN0YXR1cykgeworICAgICAgICByZXR1
cm4gc3RhdHVzOworICAgIH0KKworICAgIC8qIGluaXRpYWxpemUgc3RyZWFtICAqLworICAgIHN0
YXR1cyA9IHNydHBfc3RyZWFtX2luaXQodG1wLCBwb2xpY3kpOworICAgIGlmIChzdGF0dXMpIHsK
KyAgICAgICAgc3J0cF9zdHJlYW1fZGVhbGxvYyh0bXAsIE5VTEwpOworICAgICAgICByZXR1cm4g
c3RhdHVzOworICAgIH0KKworICAgIC8qCisgICAgICogc2V0IHRoZSBoZWFkIG9mIHRoZSBzdHJl
YW0gbGlzdCBvciB0aGUgdGVtcGxhdGUgdG8gcG9pbnQgdG8gdGhlCisgICAgICogc3RyZWFtIHRo
YXQgd2UndmUganVzdCBhbGxvY2VkIGFuZCBpbml0J2VkLCBkZXBlbmRpbmcgb24gd2hldGhlcgor
ICAgICAqIG9yIG5vdCBpdCBoYXMgYSB3aWxkY2FyZCBTU1JDIHZhbHVlIG9yIG5vdAorICAgICAq
CisgICAgICogaWYgdGhlIHRlbXBsYXRlIHN0cmVhbSBoYXMgYWxyZWFkeSBiZWVuIHNldCwgdGhl
biB0aGUgcG9saWN5IGlzCisgICAgICogaW5jb25zaXN0ZW50LCBzbyB3ZSByZXR1cm4gYSBiYWRf
cGFyYW0gZXJyb3IgY29kZQorICAgICAqLworICAgIHN3aXRjaCAocG9saWN5LT5zc3JjLnR5cGUp
IHsKKyAgICBjYXNlIChzc3JjX2FueV9vdXRib3VuZCk6CisgICAgICAgIGlmIChzZXNzaW9uLT5z
dHJlYW1fdGVtcGxhdGUpIHsKKyAgICAgICAgICAgIHNydHBfc3RyZWFtX2RlYWxsb2ModG1wLCBO
VUxMKTsKKyAgICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtOworICAg
ICAgICB9CisgICAgICAgIHNlc3Npb24tPnN0cmVhbV90ZW1wbGF0ZSA9IHRtcDsKKyAgICAgICAg
c2Vzc2lvbi0+c3RyZWFtX3RlbXBsYXRlLT5kaXJlY3Rpb24gPSBkaXJfc3J0cF9zZW5kZXI7Cisg
ICAgICAgIGJyZWFrOworICAgIGNhc2UgKHNzcmNfYW55X2luYm91bmQpOgorICAgICAgICBpZiAo
c2Vzc2lvbi0+c3RyZWFtX3RlbXBsYXRlKSB7CisgICAgICAgICAgICBzcnRwX3N0cmVhbV9kZWFs
bG9jKHRtcCwgTlVMTCk7CisgICAgICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2JhZF9w
YXJhbTsKKyAgICAgICAgfQorICAgICAgICBzZXNzaW9uLT5zdHJlYW1fdGVtcGxhdGUgPSB0bXA7
CisgICAgICAgIHNlc3Npb24tPnN0cmVhbV90ZW1wbGF0ZS0+ZGlyZWN0aW9uID0gZGlyX3NydHBf
cmVjZWl2ZXI7CisgICAgICAgIGJyZWFrOworICAgIGNhc2UgKHNzcmNfc3BlY2lmaWMpOgorICAg
ICAgICB0bXAtPm5leHQgPSBzZXNzaW9uLT5zdHJlYW1fbGlzdDsKKyAgICAgICAgc2Vzc2lvbi0+
c3RyZWFtX2xpc3QgPSB0bXA7CisgICAgICAgIGJyZWFrOworICAgIGNhc2UgKHNzcmNfdW5kZWZp
bmVkKToKKyAgICBkZWZhdWx0OgorICAgICAgICBzcnRwX3N0cmVhbV9kZWFsbG9jKHRtcCwgTlVM
TCk7CisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtOworICAgIH0KIAot
ICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOworICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNf
b2s7CiB9CiAKK3NydHBfZXJyX3N0YXR1c190IHNydHBfY3JlYXRlKHNydHBfdCAqc2Vzc2lvbiwg
LyogaGFuZGxlIGZvciBzZXNzaW9uICAgICAqLworICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgY29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5KQoreyAvKiBTUlRQIHBvbGljeSAobGlzdCkg
ICAgICovCisgICAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdDsKKyAgICBzcnRwX2N0eF90ICpjdHg7
CisKKyAgICAvKiBzYW5pdHkgY2hlY2sgYXJndW1lbnRzICovCisgICAgaWYgKHNlc3Npb24gPT0g
TlVMTCkKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW07CiAKLXNydHBf
ZXJyX3N0YXR1c190Ci1zcnRwX2FkZF9zdHJlYW0oc3J0cF90IHNlc3Npb24sIAotCQljb25zdCBz
cnRwX3BvbGljeV90ICpwb2xpY3kpICB7Ci0gIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKLSAg
c3J0cF9zdHJlYW1fdCB0bXA7CisgICAgLyogYWxsb2NhdGUgc3J0cCBjb250ZXh0IGFuZCBzZXQg
Y3R4X3B0ciAqLworICAgIGN0eCA9IChzcnRwX2N0eF90ICopc3J0cF9jcnlwdG9fYWxsb2Moc2l6
ZW9mKHNydHBfY3R4X3QpKTsKKyAgICBpZiAoY3R4ID09IE5VTEwpCisgICAgICAgIHJldHVybiBz
cnRwX2Vycl9zdGF0dXNfYWxsb2NfZmFpbDsKKyAgICAqc2Vzc2lvbiA9IGN0eDsKIAotICAvKiBz
YW5pdHkgY2hlY2sgYXJndW1lbnRzICovCi0gIGlmICgoc2Vzc2lvbiA9PSBOVUxMKSB8fCAocG9s
aWN5ID09IE5VTEwpIHx8ICghc3J0cF92YWxpZGF0ZV9wb2xpY3lfbWFzdGVyX2tleXMocG9saWN5
KSkpCi0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW07CisgICAgLyoKKyAgICAg
KiBsb29wIG92ZXIgZWxlbWVudHMgaW4gdGhlIHBvbGljeSBsaXN0LCBhbGxvY2F0aW5nIGFuZAor
ICAgICAqIGluaXRpYWxpemluZyBhIHN0cmVhbSBmb3IgZWFjaCBlbGVtZW50CisgICAgICovCisg
ICAgY3R4LT5zdHJlYW1fdGVtcGxhdGUgPSBOVUxMOworICAgIGN0eC0+c3RyZWFtX2xpc3QgPSBO
VUxMOworICAgIGN0eC0+dXNlcl9kYXRhID0gTlVMTDsKKyAgICB3aGlsZSAocG9saWN5ICE9IE5V
TEwpIHsKKyAgICAgICAgc3RhdCA9IHNydHBfYWRkX3N0cmVhbShjdHgsIHBvbGljeSk7CisgICAg
ICAgIGlmIChzdGF0KSB7CisgICAgICAgICAgICAvKiBjbGVhbiB1cCBldmVyeXRoaW5nICovCisg
ICAgICAgICAgICBzcnRwX2RlYWxsb2MoKnNlc3Npb24pOworICAgICAgICAgICAgKnNlc3Npb24g
PSBOVUxMOworICAgICAgICAgICAgcmV0dXJuIHN0YXQ7CisgICAgICAgIH0KIAotICAvKiBhbGxv
Y2F0ZSBzdHJlYW0gICovCi0gIHN0YXR1cyA9IHNydHBfc3RyZWFtX2FsbG9jKCZ0bXAsIHBvbGlj
eSk7Ci0gIGlmIChzdGF0dXMpIHsKLSAgICByZXR1cm4gc3RhdHVzOwotICB9Ci0gIAotICAvKiBp
bml0aWFsaXplIHN0cmVhbSAgKi8KLSAgc3RhdHVzID0gc3J0cF9zdHJlYW1faW5pdCh0bXAsIHBv
bGljeSk7Ci0gIGlmIChzdGF0dXMpIHsKLSAgICBzcnRwX2NyeXB0b19mcmVlKHRtcCk7Ci0gICAg
cmV0dXJuIHN0YXR1czsKLSAgfQotICAKLSAgLyogCi0gICAqIHNldCB0aGUgaGVhZCBvZiB0aGUg
c3RyZWFtIGxpc3Qgb3IgdGhlIHRlbXBsYXRlIHRvIHBvaW50IHRvIHRoZQotICAgKiBzdHJlYW0g
dGhhdCB3ZSd2ZSBqdXN0IGFsbG9jZWQgYW5kIGluaXQnZWQsIGRlcGVuZGluZyBvbiB3aGV0aGVy
Ci0gICAqIG9yIG5vdCBpdCBoYXMgYSB3aWxkY2FyZCBTU1JDIHZhbHVlIG9yIG5vdAotICAgKgot
ICAgKiBpZiB0aGUgdGVtcGxhdGUgc3RyZWFtIGhhcyBhbHJlYWR5IGJlZW4gc2V0LCB0aGVuIHRo
ZSBwb2xpY3kgaXMKLSAgICogaW5jb25zaXN0ZW50LCBzbyB3ZSByZXR1cm4gYSBiYWRfcGFyYW0g
ZXJyb3IgY29kZQotICAgKi8KLSAgc3dpdGNoIChwb2xpY3ktPnNzcmMudHlwZSkgewotICBjYXNl
IChzc3JjX2FueV9vdXRib3VuZCk6Ci0gICAgaWYgKHNlc3Npb24tPnN0cmVhbV90ZW1wbGF0ZSkg
ewotICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW07Ci0gICAgfQotICAgIHNl
c3Npb24tPnN0cmVhbV90ZW1wbGF0ZSA9IHRtcDsKLSAgICBzZXNzaW9uLT5zdHJlYW1fdGVtcGxh
dGUtPmRpcmVjdGlvbiA9IGRpcl9zcnRwX3NlbmRlcjsKLSAgICBicmVhazsKLSAgY2FzZSAoc3Ny
Y19hbnlfaW5ib3VuZCk6Ci0gICAgaWYgKHNlc3Npb24tPnN0cmVhbV90ZW1wbGF0ZSkgewotICAg
ICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW07Ci0gICAgfQotICAgIHNlc3Npb24t
PnN0cmVhbV90ZW1wbGF0ZSA9IHRtcDsKLSAgICBzZXNzaW9uLT5zdHJlYW1fdGVtcGxhdGUtPmRp
cmVjdGlvbiA9IGRpcl9zcnRwX3JlY2VpdmVyOwotICAgIGJyZWFrOwotICBjYXNlIChzc3JjX3Nw
ZWNpZmljKToKLSAgICB0bXAtPm5leHQgPSBzZXNzaW9uLT5zdHJlYW1fbGlzdDsKLSAgICBzZXNz
aW9uLT5zdHJlYW1fbGlzdCA9IHRtcDsKLSAgICBicmVhazsKLSAgY2FzZSAoc3NyY191bmRlZmlu
ZWQpOgotICBkZWZhdWx0OgotICAgIHNydHBfY3J5cHRvX2ZyZWUodG1wKTsKLSAgICByZXR1cm4g
c3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJhbTsKLSAgfQotICAgIAotICByZXR1cm4gc3J0cF9lcnJf
c3RhdHVzX29rOworICAgICAgICAvKiBzZXQgcG9saWN5IHRvIG5leHQgaXRlbSBpbiBsaXN0ICAq
LworICAgICAgICBwb2xpY3kgPSBwb2xpY3ktPm5leHQ7CisgICAgfQorCisgICAgcmV0dXJuIHNy
dHBfZXJyX3N0YXR1c19vazsKIH0KIAorc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9yZW1vdmVfc3Ry
ZWFtKHNydHBfdCBzZXNzaW9uLCB1aW50MzJfdCBzc3JjKQoreworICAgIHNydHBfc3RyZWFtX2N0
eF90ICpzdHJlYW0sICpsYXN0X3N0cmVhbTsKKyAgICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7
CisKKyAgICAvKiBzYW5pdHkgY2hlY2sgYXJndW1lbnRzICovCisgICAgaWYgKHNlc3Npb24gPT0g
TlVMTCkKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW07CisKKyAgICAv
KiBmaW5kIHN0cmVhbSBpbiBsaXN0OyBjb21wbGFpbiBpZiBub3QgZm91bmQgKi8KKyAgICBsYXN0
X3N0cmVhbSA9IHN0cmVhbSA9IHNlc3Npb24tPnN0cmVhbV9saXN0OworICAgIHdoaWxlICgoc3Ry
ZWFtICE9IE5VTEwpICYmIChzc3JjICE9IHN0cmVhbS0+c3NyYykpIHsKKyAgICAgICAgbGFzdF9z
dHJlYW0gPSBzdHJlYW07CisgICAgICAgIHN0cmVhbSA9IHN0cmVhbS0+bmV4dDsKKyAgICB9Cisg
ICAgaWYgKHN0cmVhbSA9PSBOVUxMKQorICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX25v
X2N0eDsKIAotc3J0cF9lcnJfc3RhdHVzX3QKLXNydHBfY3JlYXRlKHNydHBfdCAqc2Vzc2lvbiwg
ICAgICAgICAgICAgICAvKiBoYW5kbGUgZm9yIHNlc3Npb24gICAgICovIAotCSAgICBjb25zdCBz
cnRwX3BvbGljeV90ICpwb2xpY3kpIHsgLyogU1JUUCBwb2xpY3kgKGxpc3QpICAgICAqLwotICBz
cnRwX2Vycl9zdGF0dXNfdCBzdGF0OwotICBzcnRwX2N0eF90ICpjdHg7Ci0KLSAgLyogc2FuaXR5
IGNoZWNrIGFyZ3VtZW50cyAqLwotICBpZiAoc2Vzc2lvbiA9PSBOVUxMKQotICAgIHJldHVybiBz
cnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtOwotCi0gIC8qIGFsbG9jYXRlIHNydHAgY29udGV4dCBh
bmQgc2V0IGN0eF9wdHIgKi8KLSAgY3R4ID0gKHNydHBfY3R4X3QgKikgc3J0cF9jcnlwdG9fYWxs
b2Moc2l6ZW9mKHNydHBfY3R4X3QpKTsKLSAgaWYgKGN0eCA9PSBOVUxMKQotICAgIHJldHVybiBz
cnRwX2Vycl9zdGF0dXNfYWxsb2NfZmFpbDsKLSAgKnNlc3Npb24gPSBjdHg7Ci0KLSAgLyogCi0g
ICAqIGxvb3Agb3ZlciBlbGVtZW50cyBpbiB0aGUgcG9saWN5IGxpc3QsIGFsbG9jYXRpbmcgYW5k
Ci0gICAqIGluaXRpYWxpemluZyBhIHN0cmVhbSBmb3IgZWFjaCBlbGVtZW50Ci0gICAqLwotICBj
dHgtPnN0cmVhbV90ZW1wbGF0ZSA9IE5VTEw7Ci0gIGN0eC0+c3RyZWFtX2xpc3QgPSBOVUxMOwot
ICBjdHgtPnVzZXJfZGF0YSA9IE5VTEw7Ci0gIHdoaWxlIChwb2xpY3kgIT0gTlVMTCkgeyAgICAK
LQotICAgIHN0YXQgPSBzcnRwX2FkZF9zdHJlYW0oY3R4LCBwb2xpY3kpOwotICAgIGlmIChzdGF0
KSB7Ci0gICAgICAvKiBjbGVhbiB1cCBldmVyeXRoaW5nICovCi0gICAgICBzcnRwX2RlYWxsb2Mo
KnNlc3Npb24pOwotICAgICAgKnNlc3Npb24gPSBOVUxMOwotICAgICAgcmV0dXJuIHN0YXQ7Ci0g
ICAgfSAgICAKKyAgICAvKiByZW1vdmUgc3RyZWFtIGZyb20gdGhlIGxpc3QgKi8KKyAgICBpZiAo
bGFzdF9zdHJlYW0gPT0gc3RyZWFtKQorICAgICAgICAvKiBzdHJlYW0gd2FzIGZpcnN0IGluIGxp
c3QgKi8KKyAgICAgICAgc2Vzc2lvbi0+c3RyZWFtX2xpc3QgPSBzdHJlYW0tPm5leHQ7CisgICAg
ZWxzZQorICAgICAgICBsYXN0X3N0cmVhbS0+bmV4dCA9IHN0cmVhbS0+bmV4dDsKIAotICAgIC8q
IHNldCBwb2xpY3kgdG8gbmV4dCBpdGVtIGluIGxpc3QgICovCi0gICAgcG9saWN5ID0gcG9saWN5
LT5uZXh0OwotICB9CisgICAgLyogZGVhbGxvY2F0ZSB0aGUgc3RyZWFtICovCisgICAgc3RhdHVz
ID0gc3J0cF9zdHJlYW1fZGVhbGxvYyhzdHJlYW0sIHNlc3Npb24tPnN0cmVhbV90ZW1wbGF0ZSk7
CisgICAgaWYgKHN0YXR1cykKKyAgICAgICAgcmV0dXJuIHN0YXR1czsKIAotICByZXR1cm4gc3J0
cF9lcnJfc3RhdHVzX29rOworICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAKK3Ny
dHBfZXJyX3N0YXR1c190IHNydHBfdXBkYXRlKHNydHBfdCBzZXNzaW9uLCBjb25zdCBzcnRwX3Bv
bGljeV90ICpwb2xpY3kpCit7CisgICAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdDsKIAotc3J0cF9l
cnJfc3RhdHVzX3QKLXNydHBfcmVtb3ZlX3N0cmVhbShzcnRwX3Qgc2Vzc2lvbiwgdWludDMyX3Qg
c3NyYykgewotICBzcnRwX3N0cmVhbV9jdHhfdCAqc3RyZWFtLCAqbGFzdF9zdHJlYW07Ci0gIHNy
dHBfZXJyX3N0YXR1c190IHN0YXR1czsKLQotICAvKiBzYW5pdHkgY2hlY2sgYXJndW1lbnRzICov
Ci0gIGlmIChzZXNzaW9uID09IE5VTEwpCi0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRf
cGFyYW07Ci0gIAotICAvKiBmaW5kIHN0cmVhbSBpbiBsaXN0OyBjb21wbGFpbiBpZiBub3QgZm91
bmQgKi8KLSAgbGFzdF9zdHJlYW0gPSBzdHJlYW0gPSBzZXNzaW9uLT5zdHJlYW1fbGlzdDsKLSAg
d2hpbGUgKChzdHJlYW0gIT0gTlVMTCkgJiYgKHNzcmMgIT0gc3RyZWFtLT5zc3JjKSkgewotICAg
IGxhc3Rfc3RyZWFtID0gc3RyZWFtOwotICAgIHN0cmVhbSA9IHN0cmVhbS0+bmV4dDsKLSAgfQot
ICBpZiAoc3RyZWFtID09IE5VTEwpCi0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19ub19jdHg7
Ci0KLSAgLyogcmVtb3ZlIHN0cmVhbSBmcm9tIHRoZSBsaXN0ICovCi0gIGlmIChsYXN0X3N0cmVh
bSA9PSBzdHJlYW0pCi0gICAgLyogc3RyZWFtIHdhcyBmaXJzdCBpbiBsaXN0ICovCi0gICAgc2Vz
c2lvbi0+c3RyZWFtX2xpc3QgPSBzdHJlYW0tPm5leHQ7Ci0gIGVsc2UKLSAgICBsYXN0X3N0cmVh
bS0+bmV4dCA9IHN0cmVhbS0+bmV4dDsKLQotICAvKiBkZWFsbG9jYXRlIHRoZSBzdHJlYW0gKi8K
LSAgc3RhdHVzID0gc3J0cF9zdHJlYW1fZGVhbGxvYyhzdHJlYW0sIHNlc3Npb24tPnN0cmVhbV90
ZW1wbGF0ZSk7Ci0gIGlmIChzdGF0dXMpCi0gICAgcmV0dXJuIHN0YXR1czsKKyAgICAvKiBzYW5p
dHkgY2hlY2sgYXJndW1lbnRzICovCisgICAgaWYgKChzZXNzaW9uID09IE5VTEwpIHx8IChwb2xp
Y3kgPT0gTlVMTCkgfHwKKyAgICAgICAgKCFzcnRwX3ZhbGlkYXRlX3BvbGljeV9tYXN0ZXJfa2V5
cyhwb2xpY3kpKSkgeworICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJhbTsK
KyAgICB9CisKKyAgICB3aGlsZSAocG9saWN5ICE9IE5VTEwpIHsKKyAgICAgICAgc3RhdCA9IHNy
dHBfdXBkYXRlX3N0cmVhbShzZXNzaW9uLCBwb2xpY3kpOworICAgICAgICBpZiAoc3RhdCkgewor
ICAgICAgICAgICAgcmV0dXJuIHN0YXQ7CisgICAgICAgIH0KIAotICByZXR1cm4gc3J0cF9lcnJf
c3RhdHVzX29rOworICAgICAgICAvKiBzZXQgcG9saWN5IHRvIG5leHQgaXRlbSBpbiBsaXN0ICAq
LworICAgICAgICBwb2xpY3kgPSBwb2xpY3ktPm5leHQ7CisgICAgfQorICAgIHJldHVybiBzcnRw
X2Vycl9zdGF0dXNfb2s7CiB9CiAKK3N0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCB1cGRhdGVfdGVt
cGxhdGVfc3RyZWFtcyhzcnRwX3Qgc2Vzc2lvbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3kpCit7Cisg
ICAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVzOworICAgIHNydHBfc3RyZWFtX3QgbmV3X3N0cmVh
bV90ZW1wbGF0ZTsKKyAgICBzcnRwX3N0cmVhbV90IG5ld19zdHJlYW1fbGlzdCA9IE5VTEw7CiAK
LXNydHBfZXJyX3N0YXR1c190Ci1zcnRwX3VwZGF0ZShzcnRwX3Qgc2Vzc2lvbiwgY29uc3Qgc3J0
cF9wb2xpY3lfdCAqcG9saWN5KSB7Ci0gIHNydHBfZXJyX3N0YXR1c190IHN0YXQ7CisgICAgaWYg
KHNlc3Npb24tPnN0cmVhbV90ZW1wbGF0ZSA9PSBOVUxMKSB7CisgICAgICAgIHJldHVybiBzcnRw
X2Vycl9zdGF0dXNfYmFkX3BhcmFtOworICAgIH0KIAotICAvKiBzYW5pdHkgY2hlY2sgYXJndW1l
bnRzICovCi0gIGlmICgoc2Vzc2lvbiA9PSBOVUxMKSB8fCAocG9saWN5ID09IE5VTEwpIHx8ICgh
c3J0cF92YWxpZGF0ZV9wb2xpY3lfbWFzdGVyX2tleXMocG9saWN5KSkpIHsKLSAgICByZXR1cm4g
c3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJhbTsKLSAgfQorICAgIC8qIGFsbG9jYXRlIG5ldyB0ZW1w
bGF0ZSBzdHJlYW0gICovCisgICAgc3RhdHVzID0gc3J0cF9zdHJlYW1fYWxsb2MoJm5ld19zdHJl
YW1fdGVtcGxhdGUsIHBvbGljeSk7CisgICAgaWYgKHN0YXR1cykgeworICAgICAgICByZXR1cm4g
c3RhdHVzOworICAgIH0KIAotICB3aGlsZSAocG9saWN5ICE9IE5VTEwpIHsKLSAgICBzdGF0ID0g
c3J0cF91cGRhdGVfc3RyZWFtKHNlc3Npb24sIHBvbGljeSk7Ci0gICAgaWYgKHN0YXQpIHsKLSAg
ICAgIHJldHVybiBzdGF0OworICAgIC8qIGluaXRpYWxpemUgbmV3IHRlbXBsYXRlIHN0cmVhbSAg
Ki8KKyAgICBzdGF0dXMgPSBzcnRwX3N0cmVhbV9pbml0KG5ld19zdHJlYW1fdGVtcGxhdGUsIHBv
bGljeSk7CisgICAgaWYgKHN0YXR1cykgeworICAgICAgICBzcnRwX2NyeXB0b19mcmVlKG5ld19z
dHJlYW1fdGVtcGxhdGUpOworICAgICAgICByZXR1cm4gc3RhdHVzOwogICAgIH0KIAotICAgIC8q
IHNldCBwb2xpY3kgdG8gbmV4dCBpdGVtIGluIGxpc3QgICovCi0gICAgcG9saWN5ID0gcG9saWN5
LT5uZXh0OwotICB9Ci0gIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7Ci19CisgICAgLyogZm9y
IGFsbCBvbGQgdGVtcGxhdGVkIHN0cmVhbXMgKi8KKyAgICBmb3IgKDs7KSB7CisgICAgICAgIHNy
dHBfc3RyZWFtX3Qgc3RyZWFtOworICAgICAgICB1aW50MzJfdCBzc3JjOworICAgICAgICBzcnRw
X3h0ZF9zZXFfbnVtX3Qgb2xkX2luZGV4OworICAgICAgICBzcnRwX3JkYl90IG9sZF9ydGNwX3Jk
YjsKKworICAgICAgICBzdHJlYW0gPSBzZXNzaW9uLT5zdHJlYW1fbGlzdDsKKyAgICAgICAgd2hp
bGUgKChzdHJlYW0gIT0gTlVMTCkgJiYKKyAgICAgICAgICAgICAgIChzdHJlYW0tPnNlc3Npb25f
a2V5c1swXS5ydHBfYXV0aCAhPQorICAgICAgICAgICAgICAgIHNlc3Npb24tPnN0cmVhbV90ZW1w
bGF0ZS0+c2Vzc2lvbl9rZXlzWzBdLnJ0cF9hdXRoKSkgeworICAgICAgICAgICAgc3RyZWFtID0g
c3RyZWFtLT5uZXh0OworICAgICAgICB9CisgICAgICAgIGlmIChzdHJlYW0gPT0gTlVMTCkgewor
ICAgICAgICAgICAgLyogbm8gbW9yZSB0ZW1wbGF0ZWQgc3RyZWFtcyAqLworICAgICAgICAgICAg
YnJlYWs7CisgICAgICAgIH0KIAorICAgICAgICAvKiBzYXZlIG9sZCBleHRlbmRhcmQgc2VxICov
CisgICAgICAgIHNzcmMgPSBzdHJlYW0tPnNzcmM7CisgICAgICAgIG9sZF9pbmRleCA9IHN0cmVh
bS0+cnRwX3JkYnguaW5kZXg7CisgICAgICAgIG9sZF9ydGNwX3JkYiA9IHN0cmVhbS0+cnRjcF9y
ZGI7CiAKLXN0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdAotdXBkYXRlX3RlbXBsYXRlX3N0cmVhbXMo
c3J0cF90IHNlc3Npb24sIGNvbnN0IHNydHBfcG9saWN5X3QgKnBvbGljeSkgewotICBzcnRwX2Vy
cl9zdGF0dXNfdCBzdGF0dXM7Ci0gIHNydHBfc3RyZWFtX3QgbmV3X3N0cmVhbV90ZW1wbGF0ZTsK
LSAgc3J0cF9zdHJlYW1fdCBuZXdfc3RyZWFtX2xpc3QgPSBOVUxMOworICAgICAgICAvKiByZW1v
dmUgc3RyZWFtICovCisgICAgICAgIHN0YXR1cyA9IHNydHBfcmVtb3ZlX3N0cmVhbShzZXNzaW9u
LCBzc3JjKTsKKyAgICAgICAgaWYgKHN0YXR1cykgeworICAgICAgICAgICAgLyogZnJlZSBuZXcg
YWxsb2NhdGlvbnMgKi8KKyAgICAgICAgICAgIHdoaWxlIChuZXdfc3RyZWFtX2xpc3QgIT0gTlVM
TCkgeworICAgICAgICAgICAgICAgIHNydHBfc3RyZWFtX3QgbmV4dCA9IG5ld19zdHJlYW1fbGlz
dC0+bmV4dDsKKyAgICAgICAgICAgICAgICBzcnRwX3N0cmVhbV9kZWFsbG9jKG5ld19zdHJlYW1f
bGlzdCwgbmV3X3N0cmVhbV90ZW1wbGF0ZSk7CisgICAgICAgICAgICAgICAgbmV3X3N0cmVhbV9s
aXN0ID0gbmV4dDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIHNydHBfc3RyZWFtX2RlYWxs
b2MobmV3X3N0cmVhbV90ZW1wbGF0ZSwgTlVMTCk7CisgICAgICAgICAgICByZXR1cm4gc3RhdHVz
OworICAgICAgICB9CiAKLSAgaWYgKHNlc3Npb24tPnN0cmVhbV90ZW1wbGF0ZSA9PSBOVUxMKSB7
Ci0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW07Ci0gIH0KKyAgICAgICAgLyog
YWxsb2NhdGUgYW5kIGluaXRpYWxpemUgYSBuZXcgc3RyZWFtICovCisgICAgICAgIHN0YXR1cyA9
IHNydHBfc3RyZWFtX2Nsb25lKG5ld19zdHJlYW1fdGVtcGxhdGUsIHNzcmMsICZzdHJlYW0pOwor
ICAgICAgICBpZiAoc3RhdHVzKSB7CisgICAgICAgICAgICAvKiBmcmVlIG5ldyBhbGxvY2F0aW9u
cyAqLworICAgICAgICAgICAgd2hpbGUgKG5ld19zdHJlYW1fbGlzdCAhPSBOVUxMKSB7CisgICAg
ICAgICAgICAgICAgc3J0cF9zdHJlYW1fdCBuZXh0ID0gbmV3X3N0cmVhbV9saXN0LT5uZXh0Owor
ICAgICAgICAgICAgICAgIHNydHBfc3RyZWFtX2RlYWxsb2MobmV3X3N0cmVhbV9saXN0LCBuZXdf
c3RyZWFtX3RlbXBsYXRlKTsKKyAgICAgICAgICAgICAgICBuZXdfc3RyZWFtX2xpc3QgPSBuZXh0
OworICAgICAgICAgICAgfQorICAgICAgICAgICAgc3J0cF9zdHJlYW1fZGVhbGxvYyhuZXdfc3Ry
ZWFtX3RlbXBsYXRlLCBOVUxMKTsKKyAgICAgICAgICAgIHJldHVybiBzdGF0dXM7CisgICAgICAg
IH0KIAotICAvKiBhbGxvY2F0ZSBuZXcgdGVtcGxhdGUgc3RyZWFtICAqLwotICBzdGF0dXMgPSBz
cnRwX3N0cmVhbV9hbGxvYygmbmV3X3N0cmVhbV90ZW1wbGF0ZSwgcG9saWN5KTsKLSAgaWYgKHN0
YXR1cykgewotICAgIHJldHVybiBzdGF0dXM7Ci0gIH0KKyAgICAgICAgLyogYWRkIG5ldyBzdHJl
YW0gdG8gdGhlIGhlYWQgb2YgdGhlIG5ld19zdHJlYW1fbGlzdCAqLworICAgICAgICBzdHJlYW0t
Pm5leHQgPSBuZXdfc3RyZWFtX2xpc3Q7CisgICAgICAgIG5ld19zdHJlYW1fbGlzdCA9IHN0cmVh
bTsKIAotICAvKiBpbml0aWFsaXplIG5ldyB0ZW1wbGF0ZSBzdHJlYW0gICovCi0gIHN0YXR1cyA9
IHNydHBfc3RyZWFtX2luaXQobmV3X3N0cmVhbV90ZW1wbGF0ZSwgcG9saWN5KTsKLSAgaWYgKHN0
YXR1cykgewotICAgIHNydHBfY3J5cHRvX2ZyZWUobmV3X3N0cmVhbV90ZW1wbGF0ZSk7CisgICAg
ICAgIC8qIHJlc3RvcmUgb2xkIGV4dGVuZGVkIHNlcSAqLworICAgICAgICBzdHJlYW0tPnJ0cF9y
ZGJ4LmluZGV4ID0gb2xkX2luZGV4OworICAgICAgICBzdHJlYW0tPnJ0Y3BfcmRiID0gb2xkX3J0
Y3BfcmRiOworICAgIH0KKyAgICAvKiBkZWFsbG9jIG9sZCB0ZW1wbGF0ZSAqLworICAgIHNydHBf
c3RyZWFtX2RlYWxsb2Moc2Vzc2lvbi0+c3RyZWFtX3RlbXBsYXRlLCBOVUxMKTsKKyAgICAvKiBz
ZXQgbmV3IHRlbXBsYXRlICovCisgICAgc2Vzc2lvbi0+c3RyZWFtX3RlbXBsYXRlID0gbmV3X3N0
cmVhbV90ZW1wbGF0ZTsKKyAgICAvKiBhZGQgbmV3IGxpc3QgKi8KKyAgICBpZiAobmV3X3N0cmVh
bV9saXN0KSB7CisgICAgICAgIHNydHBfc3RyZWFtX3QgdGFpbCA9IG5ld19zdHJlYW1fbGlzdDsK
KyAgICAgICAgd2hpbGUgKHRhaWwtPm5leHQpIHsKKyAgICAgICAgICAgIHRhaWwgPSB0YWlsLT5u
ZXh0OworICAgICAgICB9CisgICAgICAgIHRhaWwtPm5leHQgPSBzZXNzaW9uLT5zdHJlYW1fbGlz
dDsKKyAgICAgICAgc2Vzc2lvbi0+c3RyZWFtX2xpc3QgPSBuZXdfc3RyZWFtX2xpc3Q7CisgICAg
fQogICAgIHJldHVybiBzdGF0dXM7Ci0gIH0KK30KIAotICAvKiBmb3IgYWxsIG9sZCB0ZW1wbGF0
ZWQgc3RyZWFtcyAqLwotICBmb3IgKDs7KSB7Ci0gICAgc3J0cF9zdHJlYW1fdCBzdHJlYW07Ci0g
ICAgdWludDMyX3Qgc3NyYzsKK3N0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCB1cGRhdGVfc3RyZWFt
KHNydHBfdCBzZXNzaW9uLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Y29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5KQoreworICAgIHNydHBfZXJyX3N0YXR1c190IHN0
YXR1czsKICAgICBzcnRwX3h0ZF9zZXFfbnVtX3Qgb2xkX2luZGV4OwogICAgIHNydHBfcmRiX3Qg
b2xkX3J0Y3BfcmRiOworICAgIHNydHBfc3RyZWFtX3Qgc3RyZWFtOwogCi0gICAgc3RyZWFtID0g
c2Vzc2lvbi0+c3RyZWFtX2xpc3Q7Ci0gICAgd2hpbGUgKChzdHJlYW0gIT0gTlVMTCkgJiYKLSAg
ICAgICAgICAgKHN0cmVhbS0+c2Vzc2lvbl9rZXlzWzBdLnJ0cF9hdXRoICE9Ci0gICAgICAgICAg
ICBzZXNzaW9uLT5zdHJlYW1fdGVtcGxhdGUtPnNlc3Npb25fa2V5c1swXS5ydHBfYXV0aCkpIHsK
LSAgICAgIHN0cmVhbSA9IHN0cmVhbS0+bmV4dDsKLSAgICB9CisgICAgc3RyZWFtID0gc3J0cF9n
ZXRfc3RyZWFtKHNlc3Npb24sIGh0b25sKHBvbGljeS0+c3NyYy52YWx1ZSkpOwogICAgIGlmIChz
dHJlYW0gPT0gTlVMTCkgewotICAgICAgLyogbm8gbW9yZSB0ZW1wbGF0ZWQgc3RyZWFtcyAqLwot
ICAgICAgYnJlYWs7CisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtOwog
ICAgIH0KIAogICAgIC8qIHNhdmUgb2xkIGV4dGVuZGFyZCBzZXEgKi8KLSAgICBzc3JjID0gc3Ry
ZWFtLT5zc3JjOwogICAgIG9sZF9pbmRleCA9IHN0cmVhbS0+cnRwX3JkYnguaW5kZXg7CiAgICAg
b2xkX3J0Y3BfcmRiID0gc3RyZWFtLT5ydGNwX3JkYjsKIAotICAgIC8qIHJlbW92ZSBzdHJlYW0g
Ki8KLSAgICBzdGF0dXMgPSBzcnRwX3JlbW92ZV9zdHJlYW0oc2Vzc2lvbiwgc3NyYyk7CisgICAg
c3RhdHVzID0gc3J0cF9yZW1vdmVfc3RyZWFtKHNlc3Npb24sIGh0b25sKHBvbGljeS0+c3NyYy52
YWx1ZSkpOwogICAgIGlmIChzdGF0dXMpIHsKLSAgICAgIC8qIGZyZWUgbmV3IGFsbG9jYXRpb25z
ICovCi0gICAgICB3aGlsZSAobmV3X3N0cmVhbV9saXN0ICE9IE5VTEwpIHsKLSAgICAgICAgc3J0
cF9zdHJlYW1fdCBuZXh0ID0gbmV3X3N0cmVhbV9saXN0LT5uZXh0OwotICAgICAgICBzcnRwX3N0
cmVhbV9kZWFsbG9jKG5ld19zdHJlYW1fbGlzdCwgbmV3X3N0cmVhbV90ZW1wbGF0ZSk7Ci0gICAg
ICAgIG5ld19zdHJlYW1fbGlzdCA9IG5leHQ7Ci0gICAgICB9Ci0gICAgICBzcnRwX3N0cmVhbV9k
ZWFsbG9jKG5ld19zdHJlYW1fdGVtcGxhdGUsIE5VTEwpOwotICAgICAgcmV0dXJuIHN0YXR1czsK
LSAgICB9Ci0KLSAgICAvKiBhbGxvY2F0ZSBhbmQgaW5pdGlhbGl6ZSBhIG5ldyBzdHJlYW0gKi8K
LSAgICBzdGF0dXMgPSBzcnRwX3N0cmVhbV9jbG9uZShuZXdfc3RyZWFtX3RlbXBsYXRlLCBzc3Jj
LCAmc3RyZWFtKTsKKyAgICAgICAgcmV0dXJuIHN0YXR1czsKKyAgICB9CisKKyAgICBzdGF0dXMg
PSBzcnRwX2FkZF9zdHJlYW0oc2Vzc2lvbiwgcG9saWN5KTsKICAgICBpZiAoc3RhdHVzKSB7Ci0g
ICAgICAvKiBmcmVlIG5ldyBhbGxvY2F0aW9ucyAqLwotICAgICAgd2hpbGUgKG5ld19zdHJlYW1f
bGlzdCAhPSBOVUxMKSB7Ci0gICAgICAgIHNydHBfc3RyZWFtX3QgbmV4dCA9IG5ld19zdHJlYW1f
bGlzdC0+bmV4dDsKLSAgICAgICAgc3J0cF9zdHJlYW1fZGVhbGxvYyhuZXdfc3RyZWFtX2xpc3Qs
IG5ld19zdHJlYW1fdGVtcGxhdGUpOwotICAgICAgICBuZXdfc3RyZWFtX2xpc3QgPSBuZXh0Owot
ICAgICAgfQotICAgICAgc3J0cF9zdHJlYW1fZGVhbGxvYyhuZXdfc3RyZWFtX3RlbXBsYXRlLCBO
VUxMKTsKLSAgICAgIHJldHVybiBzdGF0dXM7CisgICAgICAgIHJldHVybiBzdGF0dXM7CiAgICAg
fQogCi0gICAgLyogYWRkIG5ldyBzdHJlYW0gdG8gdGhlIGhlYWQgb2YgdGhlIG5ld19zdHJlYW1f
bGlzdCAqLwotICAgIHN0cmVhbS0+bmV4dCA9IG5ld19zdHJlYW1fbGlzdDsKLSAgICBuZXdfc3Ry
ZWFtX2xpc3QgPSBzdHJlYW07CisgICAgc3RyZWFtID0gc3J0cF9nZXRfc3RyZWFtKHNlc3Npb24s
IGh0b25sKHBvbGljeS0+c3NyYy52YWx1ZSkpOworICAgIGlmIChzdHJlYW0gPT0gTlVMTCkgewor
ICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7CisgICAgfQogCiAgICAgLyogcmVz
dG9yZSBvbGQgZXh0ZW5kZWQgc2VxICovCiAgICAgc3RyZWFtLT5ydHBfcmRieC5pbmRleCA9IG9s
ZF9pbmRleDsKICAgICBzdHJlYW0tPnJ0Y3BfcmRiID0gb2xkX3J0Y3BfcmRiOwotICB9Ci0gIC8q
IGRlYWxsb2Mgb2xkIHRlbXBsYXRlICovCi0gIHNydHBfc3RyZWFtX2RlYWxsb2Moc2Vzc2lvbi0+
c3RyZWFtX3RlbXBsYXRlLCBOVUxMKTsKLSAgLyogc2V0IG5ldyB0ZW1wbGF0ZSAqLwotICBzZXNz
aW9uLT5zdHJlYW1fdGVtcGxhdGUgPSBuZXdfc3RyZWFtX3RlbXBsYXRlOwotICAvKiBhZGQgbmV3
IGxpc3QgKi8KLSAgaWYgKG5ld19zdHJlYW1fbGlzdCkgewotICAgIHNydHBfc3RyZWFtX3QgdGFp
bCA9IG5ld19zdHJlYW1fbGlzdDsKLSAgICB3aGlsZSAodGFpbC0+bmV4dCkgewotICAgICAgdGFp
bCA9IHRhaWwtPm5leHQ7Ci0gICAgfQotICAgIHRhaWwtPm5leHQgPSBzZXNzaW9uLT5zdHJlYW1f
bGlzdDsKLSAgICBzZXNzaW9uLT5zdHJlYW1fbGlzdCA9IG5ld19zdHJlYW1fbGlzdDsKLSAgfQot
ICByZXR1cm4gc3RhdHVzOwotfQogCisgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKK30K
IAotc3RhdGljIHNydHBfZXJyX3N0YXR1c190Ci11cGRhdGVfc3RyZWFtKHNydHBfdCBzZXNzaW9u
LCBjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3kpIHsKLSAgc3J0cF9lcnJfc3RhdHVzX3Qgc3Rh
dHVzOwotICBzcnRwX3h0ZF9zZXFfbnVtX3Qgb2xkX2luZGV4OwotICBzcnRwX3JkYl90IG9sZF9y
dGNwX3JkYjsKLSAgc3J0cF9zdHJlYW1fdCBzdHJlYW07Ci0KLSAgc3RyZWFtID0gc3J0cF9nZXRf
c3RyZWFtKHNlc3Npb24sIGh0b25sKHBvbGljeS0+c3NyYy52YWx1ZSkpOwotICBpZiAoc3RyZWFt
ID09IE5VTEwpIHsKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJhbTsKLSAgfQor
c3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF91cGRhdGVfc3RyZWFtKHNydHBfdCBzZXNzaW9uLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHNydHBfcG9saWN5X3QgKnBv
bGljeSkKK3sKKyAgICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7CiAKLSAgLyogc2F2ZSBvbGQg
ZXh0ZW5kYXJkIHNlcSAqLwotICBvbGRfaW5kZXggPSBzdHJlYW0tPnJ0cF9yZGJ4LmluZGV4Owot
ICBvbGRfcnRjcF9yZGIgPSBzdHJlYW0tPnJ0Y3BfcmRiOworICAgIC8qIHNhbml0eSBjaGVjayBh
cmd1bWVudHMgKi8KKyAgICBpZiAoKHNlc3Npb24gPT0gTlVMTCkgfHwgKHBvbGljeSA9PSBOVUxM
KSB8fAorICAgICAgICAoIXNydHBfdmFsaWRhdGVfcG9saWN5X21hc3Rlcl9rZXlzKHBvbGljeSkp
KQorICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJhbTsKIAotICBzdGF0dXMg
PSBzcnRwX3JlbW92ZV9zdHJlYW0oc2Vzc2lvbiwgaHRvbmwocG9saWN5LT5zc3JjLnZhbHVlKSk7
Ci0gIGlmIChzdGF0dXMpIHsKLSAgICByZXR1cm4gc3RhdHVzOwotICB9CisgICAgc3dpdGNoIChw
b2xpY3ktPnNzcmMudHlwZSkgeworICAgIGNhc2UgKHNzcmNfYW55X291dGJvdW5kKToKKyAgICBj
YXNlIChzc3JjX2FueV9pbmJvdW5kKToKKyAgICAgICAgc3RhdHVzID0gdXBkYXRlX3RlbXBsYXRl
X3N0cmVhbXMoc2Vzc2lvbiwgcG9saWN5KTsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSAoc3Ny
Y19zcGVjaWZpYyk6CisgICAgICAgIHN0YXR1cyA9IHVwZGF0ZV9zdHJlYW0oc2Vzc2lvbiwgcG9s
aWN5KTsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSAoc3NyY191bmRlZmluZWQpOgorICAgIGRl
ZmF1bHQ6CisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtOworICAgIH0K
IAotICBzdGF0dXMgPSBzcnRwX2FkZF9zdHJlYW0oc2Vzc2lvbiwgcG9saWN5KTsKLSAgaWYgKHN0
YXR1cykgewogICAgIHJldHVybiBzdGF0dXM7Ci0gIH0KLQotICBzdHJlYW0gPSBzcnRwX2dldF9z
dHJlYW0oc2Vzc2lvbiwgaHRvbmwocG9saWN5LT5zc3JjLnZhbHVlKSk7Ci0gIGlmIChzdHJlYW0g
PT0gTlVMTCkgewotICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfZmFpbDsKLSAgfQotCi0gIC8q
IHJlc3RvcmUgb2xkIGV4dGVuZGVkIHNlcSAqLwotICBzdHJlYW0tPnJ0cF9yZGJ4LmluZGV4ID0g
b2xkX2luZGV4OwotICBzdHJlYW0tPnJ0Y3BfcmRiID0gb2xkX3J0Y3BfcmRiOwotCi0gIHJldHVy
biBzcnRwX2Vycl9zdGF0dXNfb2s7Ci19Ci0KLQotc3J0cF9lcnJfc3RhdHVzX3QKLXNydHBfdXBk
YXRlX3N0cmVhbShzcnRwX3Qgc2Vzc2lvbiwgY29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5KSB7
Ci0gIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKLQotICAvKiBzYW5pdHkgY2hlY2sgYXJndW1l
bnRzICovCi0gIGlmICgoc2Vzc2lvbiA9PSBOVUxMKSB8fCAocG9saWN5ID09IE5VTEwpIHx8ICgh
c3J0cF92YWxpZGF0ZV9wb2xpY3lfbWFzdGVyX2tleXMocG9saWN5KSkpCi0gICAgcmV0dXJuIHNy
dHBfZXJyX3N0YXR1c19iYWRfcGFyYW07Ci0KLSAgc3dpdGNoIChwb2xpY3ktPnNzcmMudHlwZSkg
ewotICBjYXNlIChzc3JjX2FueV9vdXRib3VuZCk6Ci0gIGNhc2UgKHNzcmNfYW55X2luYm91bmQp
OgotICAgIHN0YXR1cyA9IHVwZGF0ZV90ZW1wbGF0ZV9zdHJlYW1zKHNlc3Npb24sIHBvbGljeSk7
Ci0gICAgYnJlYWs7Ci0gIGNhc2UgKHNzcmNfc3BlY2lmaWMpOgotICAgIHN0YXR1cyA9IHVwZGF0
ZV9zdHJlYW0oc2Vzc2lvbiwgcG9saWN5KTsKLSAgICBicmVhazsKLSAgY2FzZSAoc3NyY191bmRl
ZmluZWQpOgotICBkZWZhdWx0OgotICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFt
OwotICB9Ci0KLSAgcmV0dXJuIHN0YXR1czsKIH0KIAotCiAvKgogICogVGhlIGRlZmF1bHQgcG9s
aWN5IC0gcHJvdmlkZXMgYSBjb252ZW5pZW50IHdheSBmb3IgY2FsbGVycyB0byB1c2UKICAqIHRo
ZSBkZWZhdWx0IHNlY3VyaXR5IHBvbGljeQpAQCAtMzEyMSwyODMgKzMxNTMsMjY0IEBAIHNydHBf
dXBkYXRlX3N0cmVhbShzcnRwX3Qgc2Vzc2lvbiwgY29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5
KSB7CiAgKgogICovCiAKLS8qIAorLyoKICAqIE5PVEU6IGNpcGhlcl9rZXlfbGVuIGlzIHJlYWxs
eSBrZXkgbGVuICgxMjggYml0cykgcGx1cyBzYWx0IGxlbgogICogICgxMTIgYml0cykKICAqLwog
LyogVGhlcmUgYXJlIGhhcmQtY29kZWQgMTYncyBmb3IgYmFzZV9rZXlfbGVuIGluIHRoZSBrZXkg
Z2VuZXJhdGlvbiBjb2RlICovCiAKLXZvaWQKLXNydHBfY3J5cHRvX3BvbGljeV9zZXRfcnRwX2Rl
ZmF1bHQoc3J0cF9jcnlwdG9fcG9saWN5X3QgKnApIHsKLQotICBwLT5jaXBoZXJfdHlwZSAgICAg
PSBTUlRQX0FFU19JQ01fMTI4OwotICBwLT5jaXBoZXJfa2V5X2xlbiAgPSBTUlRQX0FFU19JQ01f
MTI4X0tFWV9MRU5fV1NBTFQ7IC8qIGRlZmF1bHQgMTI4IGJpdHMgcGVyIFJGQyAzNzExICovCi0g
IHAtPmF1dGhfdHlwZSAgICAgICA9IFNSVFBfSE1BQ19TSEExOyAgICAgICAgICAgICAKLSAgcC0+
YXV0aF9rZXlfbGVuICAgID0gMjA7ICAgICAgICAgICAgICAgIC8qIGRlZmF1bHQgMTYwIGJpdHMg
cGVyIFJGQyAzNzExICovCi0gIHAtPmF1dGhfdGFnX2xlbiAgICA9IDEwOyAgICAgICAgICAgICAg
ICAvKiBkZWZhdWx0IDgwIGJpdHMgcGVyIFJGQyAzNzExICovCi0gIHAtPnNlY19zZXJ2ICAgICAg
ICA9IHNlY19zZXJ2X2NvbmZfYW5kX2F1dGg7Ci0gIAotfQotCi12b2lkCi1zcnRwX2NyeXB0b19w
b2xpY3lfc2V0X3J0Y3BfZGVmYXVsdChzcnRwX2NyeXB0b19wb2xpY3lfdCAqcCkgewotCi0gIHAt
PmNpcGhlcl90eXBlICAgICA9IFNSVFBfQUVTX0lDTV8xMjg7Ci0gIHAtPmNpcGhlcl9rZXlfbGVu
ICA9IFNSVFBfQUVTX0lDTV8xMjhfS0VZX0xFTl9XU0FMVDsgLyogZGVmYXVsdCAxMjggYml0cyBw
ZXIgUkZDIDM3MTEgKi8KLSAgcC0+YXV0aF90eXBlICAgICAgID0gU1JUUF9ITUFDX1NIQTE7ICAg
ICAgICAgICAgIAotICBwLT5hdXRoX2tleV9sZW4gICAgPSAyMDsgICAgICAgICAgICAgICAgIC8q
IGRlZmF1bHQgMTYwIGJpdHMgcGVyIFJGQyAzNzExICovCi0gIHAtPmF1dGhfdGFnX2xlbiAgICA9
IDEwOyAgICAgICAgICAgICAgICAgLyogZGVmYXVsdCA4MCBiaXRzIHBlciBSRkMgMzcxMSAqLwot
ICBwLT5zZWNfc2VydiAgICAgICAgPSBzZWNfc2Vydl9jb25mX2FuZF9hdXRoOwotICAKK3ZvaWQg
c3J0cF9jcnlwdG9fcG9saWN5X3NldF9ydHBfZGVmYXVsdChzcnRwX2NyeXB0b19wb2xpY3lfdCAq
cCkKK3sKKyAgICBwLT5jaXBoZXJfdHlwZSA9IFNSVFBfQUVTX0lDTV8xMjg7CisgICAgcC0+Y2lw
aGVyX2tleV9sZW4gPQorICAgICAgICBTUlRQX0FFU19JQ01fMTI4X0tFWV9MRU5fV1NBTFQ7IC8q
IGRlZmF1bHQgMTI4IGJpdHMgcGVyIFJGQyAzNzExICovCisgICAgcC0+YXV0aF90eXBlID0gU1JU
UF9ITUFDX1NIQTE7CisgICAgcC0+YXV0aF9rZXlfbGVuID0gMjA7IC8qIGRlZmF1bHQgMTYwIGJp
dHMgcGVyIFJGQyAzNzExICovCisgICAgcC0+YXV0aF90YWdfbGVuID0gMTA7IC8qIGRlZmF1bHQg
ODAgYml0cyBwZXIgUkZDIDM3MTEgKi8KKyAgICBwLT5zZWNfc2VydiA9IHNlY19zZXJ2X2NvbmZf
YW5kX2F1dGg7CiB9CiAKLXZvaWQKLXNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2NtXzEyOF9o
bWFjX3NoYTFfMzIoc3J0cF9jcnlwdG9fcG9saWN5X3QgKnApIHsKLQotICAvKgotICAgKiBjb3Jy
ZXNwb25kcyB0byBSRkMgNDU2OAotICAgKgotICAgKiBub3RlIHRoYXQgdGhpcyBjcnlwdG8gcG9s
aWN5IGlzIGludGVuZGVkIGZvciBTUlRQLCBidXQgbm90IFNSVENQCi0gICAqLwotCi0gIHAtPmNp
cGhlcl90eXBlICAgICA9IFNSVFBfQUVTX0lDTV8xMjg7Ci0gIHAtPmNpcGhlcl9rZXlfbGVuICA9
IFNSVFBfQUVTX0lDTV8xMjhfS0VZX0xFTl9XU0FMVDsgLyogMTI4IGJpdCBrZXksIDExMiBiaXQg
c2FsdCAqLwotICBwLT5hdXRoX3R5cGUgICAgICAgPSBTUlRQX0hNQUNfU0hBMTsgICAgICAgICAg
ICAgCi0gIHAtPmF1dGhfa2V5X2xlbiAgICA9IDIwOyAgICAgICAgICAgICAgICAvKiAxNjAgYml0
IGtleSAgICAgICAgICAgICAgICovCi0gIHAtPmF1dGhfdGFnX2xlbiAgICA9IDQ7ICAgICAgICAg
ICAgICAgICAvKiAzMiBiaXQgdGFnICAgICAgICAgICAgICAgICovCi0gIHAtPnNlY19zZXJ2ICAg
ICAgICA9IHNlY19zZXJ2X2NvbmZfYW5kX2F1dGg7Ci0gIAordm9pZCBzcnRwX2NyeXB0b19wb2xp
Y3lfc2V0X3J0Y3BfZGVmYXVsdChzcnRwX2NyeXB0b19wb2xpY3lfdCAqcCkKK3sKKyAgICBwLT5j
aXBoZXJfdHlwZSA9IFNSVFBfQUVTX0lDTV8xMjg7CisgICAgcC0+Y2lwaGVyX2tleV9sZW4gPQor
ICAgICAgICBTUlRQX0FFU19JQ01fMTI4X0tFWV9MRU5fV1NBTFQ7IC8qIGRlZmF1bHQgMTI4IGJp
dHMgcGVyIFJGQyAzNzExICovCisgICAgcC0+YXV0aF90eXBlID0gU1JUUF9ITUFDX1NIQTE7Cisg
ICAgcC0+YXV0aF9rZXlfbGVuID0gMjA7IC8qIGRlZmF1bHQgMTYwIGJpdHMgcGVyIFJGQyAzNzEx
ICovCisgICAgcC0+YXV0aF90YWdfbGVuID0gMTA7IC8qIGRlZmF1bHQgODAgYml0cyBwZXIgUkZD
IDM3MTEgKi8KKyAgICBwLT5zZWNfc2VydiA9IHNlY19zZXJ2X2NvbmZfYW5kX2F1dGg7CiB9CiAK
K3ZvaWQgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfY21fMTI4X2htYWNfc2hhMV8zMihzcnRw
X2NyeXB0b19wb2xpY3lfdCAqcCkKK3sKKyAgICAvKgorICAgICAqIGNvcnJlc3BvbmRzIHRvIFJG
QyA0NTY4CisgICAgICoKKyAgICAgKiBub3RlIHRoYXQgdGhpcyBjcnlwdG8gcG9saWN5IGlzIGlu
dGVuZGVkIGZvciBTUlRQLCBidXQgbm90IFNSVENQCisgICAgICovCiAKLXZvaWQKLXNydHBfY3J5
cHRvX3BvbGljeV9zZXRfYWVzX2NtXzEyOF9udWxsX2F1dGgoc3J0cF9jcnlwdG9fcG9saWN5X3Qg
KnApIHsKLQotICAvKgotICAgKiBjb3JyZXNwb25kcyB0byBSRkMgNDU2OAotICAgKgotICAgKiBu
b3RlIHRoYXQgdGhpcyBjcnlwdG8gcG9saWN5IGlzIGludGVuZGVkIGZvciBTUlRQLCBidXQgbm90
IFNSVENQCi0gICAqLwotCi0gIHAtPmNpcGhlcl90eXBlICAgICA9IFNSVFBfQUVTX0lDTV8xMjg7
Ci0gIHAtPmNpcGhlcl9rZXlfbGVuICA9IFNSVFBfQUVTX0lDTV8xMjhfS0VZX0xFTl9XU0FMVDsg
LyogMTI4IGJpdCBrZXksIDExMiBiaXQgc2FsdCAqLwotICBwLT5hdXRoX3R5cGUgICAgICAgPSBT
UlRQX05VTExfQVVUSDsgICAgICAgICAgICAgCi0gIHAtPmF1dGhfa2V5X2xlbiAgICA9IDA7IAot
ICBwLT5hdXRoX3RhZ19sZW4gICAgPSAwOyAKLSAgcC0+c2VjX3NlcnYgICAgICAgID0gc2VjX3Nl
cnZfY29uZjsKLSAgCisgICAgcC0+Y2lwaGVyX3R5cGUgPSBTUlRQX0FFU19JQ01fMTI4OworICAg
IHAtPmNpcGhlcl9rZXlfbGVuID0KKyAgICAgICAgU1JUUF9BRVNfSUNNXzEyOF9LRVlfTEVOX1dT
QUxUOyAvKiAxMjggYml0IGtleSwgMTEyIGJpdCBzYWx0ICovCisgICAgcC0+YXV0aF90eXBlID0g
U1JUUF9ITUFDX1NIQTE7CisgICAgcC0+YXV0aF9rZXlfbGVuID0gMjA7IC8qIDE2MCBiaXQga2V5
ICAgICAgICAgICAgICAgKi8KKyAgICBwLT5hdXRoX3RhZ19sZW4gPSA0OyAgLyogMzIgYml0IHRh
ZyAgICAgICAgICAgICAgICAqLworICAgIHAtPnNlY19zZXJ2ID0gc2VjX3NlcnZfY29uZl9hbmRf
YXV0aDsKIH0KIAordm9pZCBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19jbV8xMjhfbnVsbF9h
dXRoKHNydHBfY3J5cHRvX3BvbGljeV90ICpwKQoreworICAgIC8qCisgICAgICogY29ycmVzcG9u
ZHMgdG8gUkZDIDQ1NjgKKyAgICAgKgorICAgICAqIG5vdGUgdGhhdCB0aGlzIGNyeXB0byBwb2xp
Y3kgaXMgaW50ZW5kZWQgZm9yIFNSVFAsIGJ1dCBub3QgU1JUQ1AKKyAgICAgKi8KIAotdm9pZAot
c3J0cF9jcnlwdG9fcG9saWN5X3NldF9udWxsX2NpcGhlcl9obWFjX3NoYTFfODAoc3J0cF9jcnlw
dG9fcG9saWN5X3QgKnApIHsKLQotICAvKgotICAgKiBjb3JyZXNwb25kcyB0byBSRkMgNDU2OAot
ICAgKi8KLQotICBwLT5jaXBoZXJfdHlwZSAgICAgPSBTUlRQX05VTExfQ0lQSEVSOyAgICAgICAg
ICAgCi0gIHAtPmNpcGhlcl9rZXlfbGVuICA9IDA7Ci0gIHAtPmF1dGhfdHlwZSAgICAgICA9IFNS
VFBfSE1BQ19TSEExOyAgICAgICAgICAgICAKLSAgcC0+YXV0aF9rZXlfbGVuICAgID0gMjA7IAot
ICBwLT5hdXRoX3RhZ19sZW4gICAgPSAxMDsgCi0gIHAtPnNlY19zZXJ2ICAgICAgICA9IHNlY19z
ZXJ2X2F1dGg7Ci0gIAorICAgIHAtPmNpcGhlcl90eXBlID0gU1JUUF9BRVNfSUNNXzEyODsKKyAg
ICBwLT5jaXBoZXJfa2V5X2xlbiA9CisgICAgICAgIFNSVFBfQUVTX0lDTV8xMjhfS0VZX0xFTl9X
U0FMVDsgLyogMTI4IGJpdCBrZXksIDExMiBiaXQgc2FsdCAqLworICAgIHAtPmF1dGhfdHlwZSA9
IFNSVFBfTlVMTF9BVVRIOworICAgIHAtPmF1dGhfa2V5X2xlbiA9IDA7CisgICAgcC0+YXV0aF90
YWdfbGVuID0gMDsKKyAgICBwLT5zZWNfc2VydiA9IHNlY19zZXJ2X2NvbmY7CiB9CiAKLXZvaWQK
LXNydHBfY3J5cHRvX3BvbGljeV9zZXRfbnVsbF9jaXBoZXJfaG1hY19udWxsKHNydHBfY3J5cHRv
X3BvbGljeV90ICpwKSB7Ci0KLSAgLyoKLSAgICogU2hvdWxkIG9ubHkgYmUgdXNlZCBmb3IgdGVz
dGluZwotICAgKi8KK3ZvaWQgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9udWxsX2NpcGhlcl9obWFj
X3NoYTFfODAoc3J0cF9jcnlwdG9fcG9saWN5X3QgKnApCit7CisgICAgLyoKKyAgICAgKiBjb3Jy
ZXNwb25kcyB0byBSRkMgNDU2OAorICAgICAqLwogCi0gIHAtPmNpcGhlcl90eXBlICAgICA9IFNS
VFBfTlVMTF9DSVBIRVI7ICAgICAgICAgICAKLSAgcC0+Y2lwaGVyX2tleV9sZW4gID0gMDsKLSAg
cC0+YXV0aF90eXBlICAgICAgID0gU1JUUF9OVUxMX0FVVEg7ICAgICAgICAgICAgIAotICBwLT5h
dXRoX2tleV9sZW4gICAgPSAwOyAKLSAgcC0+YXV0aF90YWdfbGVuICAgID0gMDsgCi0gIHAtPnNl
Y19zZXJ2ICAgICAgICA9IHNlY19zZXJ2X25vbmU7Ci0gIAorICAgIHAtPmNpcGhlcl90eXBlID0g
U1JUUF9OVUxMX0NJUEhFUjsKKyAgICBwLT5jaXBoZXJfa2V5X2xlbiA9IDA7CisgICAgcC0+YXV0
aF90eXBlID0gU1JUUF9ITUFDX1NIQTE7CisgICAgcC0+YXV0aF9rZXlfbGVuID0gMjA7CisgICAg
cC0+YXV0aF90YWdfbGVuID0gMTA7CisgICAgcC0+c2VjX3NlcnYgPSBzZWNfc2Vydl9hdXRoOwog
fQogCit2b2lkIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfbnVsbF9jaXBoZXJfaG1hY19udWxsKHNy
dHBfY3J5cHRvX3BvbGljeV90ICpwKQoreworICAgIC8qCisgICAgICogU2hvdWxkIG9ubHkgYmUg
dXNlZCBmb3IgdGVzdGluZworICAgICAqLwogCi12b2lkCi1zcnRwX2NyeXB0b19wb2xpY3lfc2V0
X2Flc19jbV8yNTZfaG1hY19zaGExXzgwKHNydHBfY3J5cHRvX3BvbGljeV90ICpwKSB7Ci0KLSAg
LyoKLSAgICogY29ycmVzcG9uZHMgdG8gUkZDIDYxODgKLSAgICovCi0KLSAgcC0+Y2lwaGVyX3R5
cGUgICAgID0gU1JUUF9BRVNfSUNNXzI1NjsKLSAgcC0+Y2lwaGVyX2tleV9sZW4gID0gU1JUUF9B
RVNfSUNNXzI1Nl9LRVlfTEVOX1dTQUxUOwotICBwLT5hdXRoX3R5cGUgICAgICAgPSBTUlRQX0hN
QUNfU0hBMTsgICAgICAgICAgICAgCi0gIHAtPmF1dGhfa2V5X2xlbiAgICA9IDIwOyAgICAgICAg
ICAgICAgICAvKiBkZWZhdWx0IDE2MCBiaXRzIHBlciBSRkMgMzcxMSAqLwotICBwLT5hdXRoX3Rh
Z19sZW4gICAgPSAxMDsgICAgICAgICAgICAgICAgLyogZGVmYXVsdCA4MCBiaXRzIHBlciBSRkMg
MzcxMSAqLwotICBwLT5zZWNfc2VydiAgICAgICAgPSBzZWNfc2Vydl9jb25mX2FuZF9hdXRoOwor
ICAgIHAtPmNpcGhlcl90eXBlID0gU1JUUF9OVUxMX0NJUEhFUjsKKyAgICBwLT5jaXBoZXJfa2V5
X2xlbiA9IDA7CisgICAgcC0+YXV0aF90eXBlID0gU1JUUF9OVUxMX0FVVEg7CisgICAgcC0+YXV0
aF9rZXlfbGVuID0gMDsKKyAgICBwLT5hdXRoX3RhZ19sZW4gPSAwOworICAgIHAtPnNlY19zZXJ2
ID0gc2VjX3NlcnZfbm9uZTsKIH0KIAordm9pZCBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19j
bV8yNTZfaG1hY19zaGExXzgwKHNydHBfY3J5cHRvX3BvbGljeV90ICpwKQoreworICAgIC8qCisg
ICAgICogY29ycmVzcG9uZHMgdG8gUkZDIDYxODgKKyAgICAgKi8KIAotdm9pZAotc3J0cF9jcnlw
dG9fcG9saWN5X3NldF9hZXNfY21fMjU2X2htYWNfc2hhMV8zMihzcnRwX2NyeXB0b19wb2xpY3lf
dCAqcCkgeworICAgIHAtPmNpcGhlcl90eXBlID0gU1JUUF9BRVNfSUNNXzI1NjsKKyAgICBwLT5j
aXBoZXJfa2V5X2xlbiA9IFNSVFBfQUVTX0lDTV8yNTZfS0VZX0xFTl9XU0FMVDsKKyAgICBwLT5h
dXRoX3R5cGUgPSBTUlRQX0hNQUNfU0hBMTsKKyAgICBwLT5hdXRoX2tleV9sZW4gPSAyMDsgLyog
ZGVmYXVsdCAxNjAgYml0cyBwZXIgUkZDIDM3MTEgKi8KKyAgICBwLT5hdXRoX3RhZ19sZW4gPSAx
MDsgLyogZGVmYXVsdCA4MCBiaXRzIHBlciBSRkMgMzcxMSAqLworICAgIHAtPnNlY19zZXJ2ID0g
c2VjX3NlcnZfY29uZl9hbmRfYXV0aDsKK30KIAotICAvKgotICAgKiBjb3JyZXNwb25kcyB0byBS
RkMgNjE4OAotICAgKgotICAgKiBub3RlIHRoYXQgdGhpcyBjcnlwdG8gcG9saWN5IGlzIGludGVu
ZGVkIGZvciBTUlRQLCBidXQgbm90IFNSVENQCi0gICAqLwordm9pZCBzcnRwX2NyeXB0b19wb2xp
Y3lfc2V0X2Flc19jbV8yNTZfaG1hY19zaGExXzMyKHNydHBfY3J5cHRvX3BvbGljeV90ICpwKQor
eworICAgIC8qCisgICAgICogY29ycmVzcG9uZHMgdG8gUkZDIDYxODgKKyAgICAgKgorICAgICAq
IG5vdGUgdGhhdCB0aGlzIGNyeXB0byBwb2xpY3kgaXMgaW50ZW5kZWQgZm9yIFNSVFAsIGJ1dCBu
b3QgU1JUQ1AKKyAgICAgKi8KIAotICBwLT5jaXBoZXJfdHlwZSAgICAgPSBTUlRQX0FFU19JQ01f
MjU2OwotICBwLT5jaXBoZXJfa2V5X2xlbiAgPSBTUlRQX0FFU19JQ01fMjU2X0tFWV9MRU5fV1NB
TFQ7Ci0gIHAtPmF1dGhfdHlwZSAgICAgICA9IFNSVFBfSE1BQ19TSEExOyAgICAgICAgICAgICAK
LSAgcC0+YXV0aF9rZXlfbGVuICAgID0gMjA7ICAgICAgICAgICAgICAgIC8qIGRlZmF1bHQgMTYw
IGJpdHMgcGVyIFJGQyAzNzExICovCi0gIHAtPmF1dGhfdGFnX2xlbiAgICA9IDQ7ICAgICAgICAg
ICAgICAgICAvKiBkZWZhdWx0IDgwIGJpdHMgcGVyIFJGQyAzNzExICovCi0gIHAtPnNlY19zZXJ2
ICAgICAgICA9IHNlY19zZXJ2X2NvbmZfYW5kX2F1dGg7CisgICAgcC0+Y2lwaGVyX3R5cGUgPSBT
UlRQX0FFU19JQ01fMjU2OworICAgIHAtPmNpcGhlcl9rZXlfbGVuID0gU1JUUF9BRVNfSUNNXzI1
Nl9LRVlfTEVOX1dTQUxUOworICAgIHAtPmF1dGhfdHlwZSA9IFNSVFBfSE1BQ19TSEExOworICAg
IHAtPmF1dGhfa2V5X2xlbiA9IDIwOyAvKiBkZWZhdWx0IDE2MCBiaXRzIHBlciBSRkMgMzcxMSAq
LworICAgIHAtPmF1dGhfdGFnX2xlbiA9IDQ7ICAvKiBkZWZhdWx0IDgwIGJpdHMgcGVyIFJGQyAz
NzExICovCisgICAgcC0+c2VjX3NlcnYgPSBzZWNfc2Vydl9jb25mX2FuZF9hdXRoOwogfQogCiAv
KgogICogQUVTLTI1NiB3aXRoIG5vIGF1dGhlbnRpY2F0aW9uLgogICovCi12b2lkCi1zcnRwX2Ny
eXB0b19wb2xpY3lfc2V0X2Flc19jbV8yNTZfbnVsbF9hdXRoIChzcnRwX2NyeXB0b19wb2xpY3lf
dCAqcCkKK3ZvaWQgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfY21fMjU2X251bGxfYXV0aChz
cnRwX2NyeXB0b19wb2xpY3lfdCAqcCkKIHsKLSAgICBwLT5jaXBoZXJfdHlwZSAgICAgPSBTUlRQ
X0FFU19JQ01fMjU2OwotICAgIHAtPmNpcGhlcl9rZXlfbGVuICA9IFNSVFBfQUVTX0lDTV8yNTZf
S0VZX0xFTl9XU0FMVDsKLSAgICBwLT5hdXRoX3R5cGUgICAgICAgPSBTUlRQX05VTExfQVVUSDsK
LSAgICBwLT5hdXRoX2tleV9sZW4gICAgPSAwOwotICAgIHAtPmF1dGhfdGFnX2xlbiAgICA9IDA7
Ci0gICAgcC0+c2VjX3NlcnYgICAgICAgID0gc2VjX3NlcnZfY29uZjsKKyAgICBwLT5jaXBoZXJf
dHlwZSA9IFNSVFBfQUVTX0lDTV8yNTY7CisgICAgcC0+Y2lwaGVyX2tleV9sZW4gPSBTUlRQX0FF
U19JQ01fMjU2X0tFWV9MRU5fV1NBTFQ7CisgICAgcC0+YXV0aF90eXBlID0gU1JUUF9OVUxMX0FV
VEg7CisgICAgcC0+YXV0aF9rZXlfbGVuID0gMDsKKyAgICBwLT5hdXRoX3RhZ19sZW4gPSAwOwor
ICAgIHAtPnNlY19zZXJ2ID0gc2VjX3NlcnZfY29uZjsKIH0KIAogI2lmZGVmIE9QRU5TU0wKLXZv
aWQKLXNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2NtXzE5Ml9obWFjX3NoYTFfODAoc3J0cF9j
cnlwdG9fcG9saWN5X3QgKnApIHsKLQotICAvKgotICAgKiBjb3JyZXNwb25kcyB0byBSRkMgNjE4
OAotICAgKi8KLQotICBwLT5jaXBoZXJfdHlwZSAgICAgPSBTUlRQX0FFU19JQ01fMTkyOwotICBw
LT5jaXBoZXJfa2V5X2xlbiAgPSBTUlRQX0FFU19JQ01fMTkyX0tFWV9MRU5fV1NBTFQ7Ci0gIHAt
PmF1dGhfdHlwZSAgICAgICA9IFNSVFBfSE1BQ19TSEExOwotICBwLT5hdXRoX2tleV9sZW4gICAg
PSAyMDsgICAgICAgICAgICAgICAgLyogZGVmYXVsdCAxNjAgYml0cyBwZXIgUkZDIDM3MTEgKi8K
LSAgcC0+YXV0aF90YWdfbGVuICAgID0gMTA7ICAgICAgICAgICAgICAgIC8qIGRlZmF1bHQgODAg
Yml0cyBwZXIgUkZDIDM3MTEgKi8KLSAgcC0+c2VjX3NlcnYgICAgICAgID0gc2VjX3NlcnZfY29u
Zl9hbmRfYXV0aDsKLX0KLQordm9pZCBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19jbV8xOTJf
aG1hY19zaGExXzgwKHNydHBfY3J5cHRvX3BvbGljeV90ICpwKQoreworICAgIC8qCisgICAgICog
Y29ycmVzcG9uZHMgdG8gUkZDIDYxODgKKyAgICAgKi8KIAotdm9pZAotc3J0cF9jcnlwdG9fcG9s
aWN5X3NldF9hZXNfY21fMTkyX2htYWNfc2hhMV8zMihzcnRwX2NyeXB0b19wb2xpY3lfdCAqcCkg
eworICAgIHAtPmNpcGhlcl90eXBlID0gU1JUUF9BRVNfSUNNXzE5MjsKKyAgICBwLT5jaXBoZXJf
a2V5X2xlbiA9IFNSVFBfQUVTX0lDTV8xOTJfS0VZX0xFTl9XU0FMVDsKKyAgICBwLT5hdXRoX3R5
cGUgPSBTUlRQX0hNQUNfU0hBMTsKKyAgICBwLT5hdXRoX2tleV9sZW4gPSAyMDsgLyogZGVmYXVs
dCAxNjAgYml0cyBwZXIgUkZDIDM3MTEgKi8KKyAgICBwLT5hdXRoX3RhZ19sZW4gPSAxMDsgLyog
ZGVmYXVsdCA4MCBiaXRzIHBlciBSRkMgMzcxMSAqLworICAgIHAtPnNlY19zZXJ2ID0gc2VjX3Nl
cnZfY29uZl9hbmRfYXV0aDsKK30KIAotICAvKgotICAgKiBjb3JyZXNwb25kcyB0byBSRkMgNjE4
OAotICAgKgotICAgKiBub3RlIHRoYXQgdGhpcyBjcnlwdG8gcG9saWN5IGlzIGludGVuZGVkIGZv
ciBTUlRQLCBidXQgbm90IFNSVENQCi0gICAqLwordm9pZCBzcnRwX2NyeXB0b19wb2xpY3lfc2V0
X2Flc19jbV8xOTJfaG1hY19zaGExXzMyKHNydHBfY3J5cHRvX3BvbGljeV90ICpwKQoreworICAg
IC8qCisgICAgICogY29ycmVzcG9uZHMgdG8gUkZDIDYxODgKKyAgICAgKgorICAgICAqIG5vdGUg
dGhhdCB0aGlzIGNyeXB0byBwb2xpY3kgaXMgaW50ZW5kZWQgZm9yIFNSVFAsIGJ1dCBub3QgU1JU
Q1AKKyAgICAgKi8KIAotICBwLT5jaXBoZXJfdHlwZSAgICAgPSBTUlRQX0FFU19JQ01fMTkyOwot
ICBwLT5jaXBoZXJfa2V5X2xlbiAgPSBTUlRQX0FFU19JQ01fMTkyX0tFWV9MRU5fV1NBTFQ7Ci0g
IHAtPmF1dGhfdHlwZSAgICAgICA9IFNSVFBfSE1BQ19TSEExOwotICBwLT5hdXRoX2tleV9sZW4g
ICAgPSAyMDsgICAgICAgICAgICAgICAgLyogZGVmYXVsdCAxNjAgYml0cyBwZXIgUkZDIDM3MTEg
Ki8KLSAgcC0+YXV0aF90YWdfbGVuICAgID0gNDsgICAgICAgICAgICAgICAgIC8qIGRlZmF1bHQg
ODAgYml0cyBwZXIgUkZDIDM3MTEgKi8KLSAgcC0+c2VjX3NlcnYgICAgICAgID0gc2VjX3NlcnZf
Y29uZl9hbmRfYXV0aDsKKyAgICBwLT5jaXBoZXJfdHlwZSA9IFNSVFBfQUVTX0lDTV8xOTI7Cisg
ICAgcC0+Y2lwaGVyX2tleV9sZW4gPSBTUlRQX0FFU19JQ01fMTkyX0tFWV9MRU5fV1NBTFQ7Cisg
ICAgcC0+YXV0aF90eXBlID0gU1JUUF9ITUFDX1NIQTE7CisgICAgcC0+YXV0aF9rZXlfbGVuID0g
MjA7IC8qIGRlZmF1bHQgMTYwIGJpdHMgcGVyIFJGQyAzNzExICovCisgICAgcC0+YXV0aF90YWdf
bGVuID0gNDsgIC8qIGRlZmF1bHQgODAgYml0cyBwZXIgUkZDIDM3MTEgKi8KKyAgICBwLT5zZWNf
c2VydiA9IHNlY19zZXJ2X2NvbmZfYW5kX2F1dGg7CiB9CiAKIC8qCiAgKiBBRVMtMTkyIHdpdGgg
bm8gYXV0aGVudGljYXRpb24uCiAgKi8KLXZvaWQKLXNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVz
X2NtXzE5Ml9udWxsX2F1dGggKHNydHBfY3J5cHRvX3BvbGljeV90ICpwKQordm9pZCBzcnRwX2Ny
eXB0b19wb2xpY3lfc2V0X2Flc19jbV8xOTJfbnVsbF9hdXRoKHNydHBfY3J5cHRvX3BvbGljeV90
ICpwKQogewotICAgIHAtPmNpcGhlcl90eXBlICAgICA9IFNSVFBfQUVTX0lDTV8xOTI7Ci0gICAg
cC0+Y2lwaGVyX2tleV9sZW4gID0gU1JUUF9BRVNfSUNNXzE5Ml9LRVlfTEVOX1dTQUxUOwotICAg
IHAtPmF1dGhfdHlwZSAgICAgICA9IFNSVFBfTlVMTF9BVVRIOwotICAgIHAtPmF1dGhfa2V5X2xl
biAgICA9IDA7Ci0gICAgcC0+YXV0aF90YWdfbGVuICAgID0gMDsKLSAgICBwLT5zZWNfc2VydiAg
ICAgICAgPSBzZWNfc2Vydl9jb25mOworICAgIHAtPmNpcGhlcl90eXBlID0gU1JUUF9BRVNfSUNN
XzE5MjsKKyAgICBwLT5jaXBoZXJfa2V5X2xlbiA9IFNSVFBfQUVTX0lDTV8xOTJfS0VZX0xFTl9X
U0FMVDsKKyAgICBwLT5hdXRoX3R5cGUgPSBTUlRQX05VTExfQVVUSDsKKyAgICBwLT5hdXRoX2tl
eV9sZW4gPSAwOworICAgIHAtPmF1dGhfdGFnX2xlbiA9IDA7CisgICAgcC0+c2VjX3NlcnYgPSBz
ZWNfc2Vydl9jb25mOwogfQogCiAvKgotICogQUVTLTEyOCBHQ00gbW9kZSB3aXRoIDggb2N0ZXQg
YXV0aCB0YWcuIAorICogQUVTLTEyOCBHQ00gbW9kZSB3aXRoIDggb2N0ZXQgYXV0aCB0YWcuCiAg
Ki8KLXZvaWQKLXNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2djbV8xMjhfOF9hdXRoKHNydHBf
Y3J5cHRvX3BvbGljeV90ICpwKSB7Ci0gIHAtPmNpcGhlcl90eXBlICAgICA9IFNSVFBfQUVTX0dD
TV8xMjg7Ci0gIHAtPmNpcGhlcl9rZXlfbGVuICA9IFNSVFBfQUVTX0dDTV8xMjhfS0VZX0xFTl9X
U0FMVDsKLSAgcC0+YXV0aF90eXBlICAgICAgID0gU1JUUF9OVUxMX0FVVEg7IC8qIEdDTSBoYW5k
bGVzIHRoZSBhdXRoIGZvciB1cyAqLyAgICAgICAgICAgIAotICBwLT5hdXRoX2tleV9sZW4gICAg
PSAwOyAKLSAgcC0+YXV0aF90YWdfbGVuICAgID0gODsgICAvKiA4IG9jdGV0IHRhZyBsZW5ndGgg
Ki8KLSAgcC0+c2VjX3NlcnYgICAgICAgID0gc2VjX3NlcnZfY29uZl9hbmRfYXV0aDsKK3ZvaWQg
c3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfZ2NtXzEyOF84X2F1dGgoc3J0cF9jcnlwdG9fcG9s
aWN5X3QgKnApCit7CisgICAgcC0+Y2lwaGVyX3R5cGUgPSBTUlRQX0FFU19HQ01fMTI4OworICAg
IHAtPmNpcGhlcl9rZXlfbGVuID0gU1JUUF9BRVNfR0NNXzEyOF9LRVlfTEVOX1dTQUxUOworICAg
IHAtPmF1dGhfdHlwZSA9IFNSVFBfTlVMTF9BVVRIOyAvKiBHQ00gaGFuZGxlcyB0aGUgYXV0aCBm
b3IgdXMgKi8KKyAgICBwLT5hdXRoX2tleV9sZW4gPSAwOworICAgIHAtPmF1dGhfdGFnX2xlbiA9
IDg7IC8qIDggb2N0ZXQgdGFnIGxlbmd0aCAqLworICAgIHAtPnNlY19zZXJ2ID0gc2VjX3NlcnZf
Y29uZl9hbmRfYXV0aDsKIH0KIAogLyoKLSAqIEFFUy0yNTYgR0NNIG1vZGUgd2l0aCA4IG9jdGV0
IGF1dGggdGFnLiAKKyAqIEFFUy0yNTYgR0NNIG1vZGUgd2l0aCA4IG9jdGV0IGF1dGggdGFnLgog
ICovCi12b2lkCi1zcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21fMjU2XzhfYXV0aChzcnRw
X2NyeXB0b19wb2xpY3lfdCAqcCkgewotICBwLT5jaXBoZXJfdHlwZSAgICAgPSBTUlRQX0FFU19H
Q01fMjU2OwotICBwLT5jaXBoZXJfa2V5X2xlbiAgPSBTUlRQX0FFU19HQ01fMjU2X0tFWV9MRU5f
V1NBTFQ7Ci0gIHAtPmF1dGhfdHlwZSAgICAgICA9IFNSVFBfTlVMTF9BVVRIOyAvKiBHQ00gaGFu
ZGxlcyB0aGUgYXV0aCBmb3IgdXMgKi8gCi0gIHAtPmF1dGhfa2V5X2xlbiAgICA9IDA7IAotICBw
LT5hdXRoX3RhZ19sZW4gICAgPSA4OyAgIC8qIDggb2N0ZXQgdGFnIGxlbmd0aCAqLwotICBwLT5z
ZWNfc2VydiAgICAgICAgPSBzZWNfc2Vydl9jb25mX2FuZF9hdXRoOwordm9pZCBzcnRwX2NyeXB0
b19wb2xpY3lfc2V0X2Flc19nY21fMjU2XzhfYXV0aChzcnRwX2NyeXB0b19wb2xpY3lfdCAqcCkK
K3sKKyAgICBwLT5jaXBoZXJfdHlwZSA9IFNSVFBfQUVTX0dDTV8yNTY7CisgICAgcC0+Y2lwaGVy
X2tleV9sZW4gPSBTUlRQX0FFU19HQ01fMjU2X0tFWV9MRU5fV1NBTFQ7CisgICAgcC0+YXV0aF90
eXBlID0gU1JUUF9OVUxMX0FVVEg7IC8qIEdDTSBoYW5kbGVzIHRoZSBhdXRoIGZvciB1cyAqLwor
ICAgIHAtPmF1dGhfa2V5X2xlbiA9IDA7CisgICAgcC0+YXV0aF90YWdfbGVuID0gODsgLyogOCBv
Y3RldCB0YWcgbGVuZ3RoICovCisgICAgcC0+c2VjX3NlcnYgPSBzZWNfc2Vydl9jb25mX2FuZF9h
dXRoOwogfQogCiAvKgotICogQUVTLTEyOCBHQ00gbW9kZSB3aXRoIDggb2N0ZXQgYXV0aCB0YWcs
IG5vIFJUQ1AgZW5jcnlwdGlvbi4gCisgKiBBRVMtMTI4IEdDTSBtb2RlIHdpdGggOCBvY3RldCBh
dXRoIHRhZywgbm8gUlRDUCBlbmNyeXB0aW9uLgogICovCi12b2lkCi1zcnRwX2NyeXB0b19wb2xp
Y3lfc2V0X2Flc19nY21fMTI4Xzhfb25seV9hdXRoKHNydHBfY3J5cHRvX3BvbGljeV90ICpwKSB7
Ci0gIHAtPmNpcGhlcl90eXBlICAgICA9IFNSVFBfQUVTX0dDTV8xMjg7Ci0gIHAtPmNpcGhlcl9r
ZXlfbGVuICA9IFNSVFBfQUVTX0dDTV8xMjhfS0VZX0xFTl9XU0FMVDsKLSAgcC0+YXV0aF90eXBl
ICAgICAgID0gU1JUUF9OVUxMX0FVVEg7IC8qIEdDTSBoYW5kbGVzIHRoZSBhdXRoIGZvciB1cyAq
LyAKLSAgcC0+YXV0aF9rZXlfbGVuICAgID0gMDsgCi0gIHAtPmF1dGhfdGFnX2xlbiAgICA9IDg7
ICAgLyogOCBvY3RldCB0YWcgbGVuZ3RoICovCi0gIHAtPnNlY19zZXJ2ICAgICAgICA9IHNlY19z
ZXJ2X2F1dGg7ICAvKiBUaGlzIG9ubHkgYXBwbGllcyB0byBSVENQICovCit2b2lkIHNydHBfY3J5
cHRvX3BvbGljeV9zZXRfYWVzX2djbV8xMjhfOF9vbmx5X2F1dGgoc3J0cF9jcnlwdG9fcG9saWN5
X3QgKnApCit7CisgICAgcC0+Y2lwaGVyX3R5cGUgPSBTUlRQX0FFU19HQ01fMTI4OworICAgIHAt
PmNpcGhlcl9rZXlfbGVuID0gU1JUUF9BRVNfR0NNXzEyOF9LRVlfTEVOX1dTQUxUOworICAgIHAt
PmF1dGhfdHlwZSA9IFNSVFBfTlVMTF9BVVRIOyAvKiBHQ00gaGFuZGxlcyB0aGUgYXV0aCBmb3Ig
dXMgKi8KKyAgICBwLT5hdXRoX2tleV9sZW4gPSAwOworICAgIHAtPmF1dGhfdGFnX2xlbiA9IDg7
ICAgICAgICAgLyogOCBvY3RldCB0YWcgbGVuZ3RoICovCisgICAgcC0+c2VjX3NlcnYgPSBzZWNf
c2Vydl9hdXRoOyAvKiBUaGlzIG9ubHkgYXBwbGllcyB0byBSVENQICovCiB9CiAKIC8qCi0gKiBB
RVMtMjU2IEdDTSBtb2RlIHdpdGggOCBvY3RldCBhdXRoIHRhZywgbm8gUlRDUCBlbmNyeXB0aW9u
LiAKKyAqIEFFUy0yNTYgR0NNIG1vZGUgd2l0aCA4IG9jdGV0IGF1dGggdGFnLCBubyBSVENQIGVu
Y3J5cHRpb24uCiAgKi8KLXZvaWQKLXNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2djbV8yNTZf
OF9vbmx5X2F1dGgoc3J0cF9jcnlwdG9fcG9saWN5X3QgKnApIHsKLSAgcC0+Y2lwaGVyX3R5cGUg
ICAgID0gU1JUUF9BRVNfR0NNXzI1NjsKLSAgcC0+Y2lwaGVyX2tleV9sZW4gID0gU1JUUF9BRVNf
R0NNXzI1Nl9LRVlfTEVOX1dTQUxUOwotICBwLT5hdXRoX3R5cGUgICAgICAgPSBTUlRQX05VTExf
QVVUSDsgLyogR0NNIGhhbmRsZXMgdGhlIGF1dGggZm9yIHVzICovIAotICBwLT5hdXRoX2tleV9s
ZW4gICAgPSAwOyAKLSAgcC0+YXV0aF90YWdfbGVuICAgID0gODsgICAvKiA4IG9jdGV0IHRhZyBs
ZW5ndGggKi8KLSAgcC0+c2VjX3NlcnYgICAgICAgID0gc2VjX3NlcnZfYXV0aDsgIC8qIFRoaXMg
b25seSBhcHBsaWVzIHRvIFJUQ1AgKi8KK3ZvaWQgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNf
Z2NtXzI1Nl84X29ubHlfYXV0aChzcnRwX2NyeXB0b19wb2xpY3lfdCAqcCkKK3sKKyAgICBwLT5j
aXBoZXJfdHlwZSA9IFNSVFBfQUVTX0dDTV8yNTY7CisgICAgcC0+Y2lwaGVyX2tleV9sZW4gPSBT
UlRQX0FFU19HQ01fMjU2X0tFWV9MRU5fV1NBTFQ7CisgICAgcC0+YXV0aF90eXBlID0gU1JUUF9O
VUxMX0FVVEg7IC8qIEdDTSBoYW5kbGVzIHRoZSBhdXRoIGZvciB1cyAqLworICAgIHAtPmF1dGhf
a2V5X2xlbiA9IDA7CisgICAgcC0+YXV0aF90YWdfbGVuID0gODsgICAgICAgICAvKiA4IG9jdGV0
IHRhZyBsZW5ndGggKi8KKyAgICBwLT5zZWNfc2VydiA9IHNlY19zZXJ2X2F1dGg7IC8qIFRoaXMg
b25seSBhcHBsaWVzIHRvIFJUQ1AgKi8KIH0KIAogLyoKLSAqIEFFUy0xMjggR0NNIG1vZGUgd2l0
aCAxNiBvY3RldCBhdXRoIHRhZy4gCisgKiBBRVMtMTI4IEdDTSBtb2RlIHdpdGggMTYgb2N0ZXQg
YXV0aCB0YWcuCiAgKi8KLXZvaWQKLXNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2djbV8xMjhf
MTZfYXV0aChzcnRwX2NyeXB0b19wb2xpY3lfdCAqcCkgewotICBwLT5jaXBoZXJfdHlwZSAgICAg
PSBTUlRQX0FFU19HQ01fMTI4OwotICBwLT5jaXBoZXJfa2V5X2xlbiAgPSBTUlRQX0FFU19HQ01f
MTI4X0tFWV9MRU5fV1NBTFQ7Ci0gIHAtPmF1dGhfdHlwZSAgICAgICA9IFNSVFBfTlVMTF9BVVRI
OyAvKiBHQ00gaGFuZGxlcyB0aGUgYXV0aCBmb3IgdXMgKi8gICAgICAgICAgICAKLSAgcC0+YXV0
aF9rZXlfbGVuICAgID0gMDsgCi0gIHAtPmF1dGhfdGFnX2xlbiAgICA9IDE2OyAgIC8qIDE2IG9j
dGV0IHRhZyBsZW5ndGggKi8KLSAgcC0+c2VjX3NlcnYgICAgICAgID0gc2VjX3NlcnZfY29uZl9h
bmRfYXV0aDsKK3ZvaWQgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfZ2NtXzEyOF8xNl9hdXRo
KHNydHBfY3J5cHRvX3BvbGljeV90ICpwKQoreworICAgIHAtPmNpcGhlcl90eXBlID0gU1JUUF9B
RVNfR0NNXzEyODsKKyAgICBwLT5jaXBoZXJfa2V5X2xlbiA9IFNSVFBfQUVTX0dDTV8xMjhfS0VZ
X0xFTl9XU0FMVDsKKyAgICBwLT5hdXRoX3R5cGUgPSBTUlRQX05VTExfQVVUSDsgLyogR0NNIGhh
bmRsZXMgdGhlIGF1dGggZm9yIHVzICovCisgICAgcC0+YXV0aF9rZXlfbGVuID0gMDsKKyAgICBw
LT5hdXRoX3RhZ19sZW4gPSAxNjsgLyogMTYgb2N0ZXQgdGFnIGxlbmd0aCAqLworICAgIHAtPnNl
Y19zZXJ2ID0gc2VjX3NlcnZfY29uZl9hbmRfYXV0aDsKIH0KIAogLyoKLSAqIEFFUy0yNTYgR0NN
IG1vZGUgd2l0aCAxNiBvY3RldCBhdXRoIHRhZy4gCisgKiBBRVMtMjU2IEdDTSBtb2RlIHdpdGgg
MTYgb2N0ZXQgYXV0aCB0YWcuCiAgKi8KLXZvaWQKLXNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVz
X2djbV8yNTZfMTZfYXV0aChzcnRwX2NyeXB0b19wb2xpY3lfdCAqcCkgewotICBwLT5jaXBoZXJf
dHlwZSAgICAgPSBTUlRQX0FFU19HQ01fMjU2OwotICBwLT5jaXBoZXJfa2V5X2xlbiAgPSBTUlRQ
X0FFU19HQ01fMjU2X0tFWV9MRU5fV1NBTFQ7Ci0gIHAtPmF1dGhfdHlwZSAgICAgICA9IFNSVFBf
TlVMTF9BVVRIOyAvKiBHQ00gaGFuZGxlcyB0aGUgYXV0aCBmb3IgdXMgKi8gCi0gIHAtPmF1dGhf
a2V5X2xlbiAgICA9IDA7IAotICBwLT5hdXRoX3RhZ19sZW4gICAgPSAxNjsgICAvKiAxNiBvY3Rl
dCB0YWcgbGVuZ3RoICovCi0gIHAtPnNlY19zZXJ2ICAgICAgICA9IHNlY19zZXJ2X2NvbmZfYW5k
X2F1dGg7Cit2b2lkIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2djbV8yNTZfMTZfYXV0aChz
cnRwX2NyeXB0b19wb2xpY3lfdCAqcCkKK3sKKyAgICBwLT5jaXBoZXJfdHlwZSA9IFNSVFBfQUVT
X0dDTV8yNTY7CisgICAgcC0+Y2lwaGVyX2tleV9sZW4gPSBTUlRQX0FFU19HQ01fMjU2X0tFWV9M
RU5fV1NBTFQ7CisgICAgcC0+YXV0aF90eXBlID0gU1JUUF9OVUxMX0FVVEg7IC8qIEdDTSBoYW5k
bGVzIHRoZSBhdXRoIGZvciB1cyAqLworICAgIHAtPmF1dGhfa2V5X2xlbiA9IDA7CisgICAgcC0+
YXV0aF90YWdfbGVuID0gMTY7IC8qIDE2IG9jdGV0IHRhZyBsZW5ndGggKi8KKyAgICBwLT5zZWNf
c2VydiA9IHNlY19zZXJ2X2NvbmZfYW5kX2F1dGg7CiB9CiAKICNlbmRpZgogCi0vKiAKKy8qCiAg
KiBzZWN1cmUgcnRjcCBmdW5jdGlvbnMKICAqLwogCkBAIC0zNDIwLDcgKzM0MzMsNyBAQCBzcnRw
X2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21fMjU2XzE2X2F1dGgoc3J0cF9jcnlwdG9fcG9saWN5
X3QgKnApIHsKICAqICAgICAgICAgICAgICAgKy0tKy0tKy0tKy0tKy0tKy0tKy0tKy0tKy0tKy0t
Ky0tKy0tKyoKICAqCiAgKiBJbnB1dDogICpzZXNzaW9uX2tleXMgLSBwb2ludGVyIHRvIFNSVFAg
c3RyZWFtIGNvbnRleHQgc2Vzc2lvbiBrZXlzLAotICogICAgICAgICAgICAgICAgICAgICAgICB1
c2VkIHRvIHJldHJpZXZlIHRoZSBTQUxUIAorICogICAgICAgICAgICAgICAgICAgICAgICB1c2Vk
IHRvIHJldHJpZXZlIHRoZSBTQUxUCiAgKiAgICAgICAgICppdiAgICAgICAgICAgLSBQb2ludGVy
IHRvIHJlY2lldmUgdGhlIGNhbGN1bGF0ZWQgSVYKICAqICAgICAgICAgc2VxX251bSAgICAgICAt
IFRoZSBTRVEgdmFsdWUgdG8gdXNlIGZvciB0aGUgSVYgY2FsY3VsYXRpb24uCiAgKiAgICAgICAg
ICpoZHIgICAgICAgICAgLSBUaGUgUlRQIGhlYWRlciwgdXNlZCB0byBnZXQgdGhlIFNTUkMgdmFs
dWUKQEAgLTM0MjksMTIgKzM0NDIsMTQgQEAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfZ2Nt
XzI1Nl8xNl9hdXRoKHNydHBfY3J5cHRvX3BvbGljeV90ICpwKSB7CiAgKiAgICAgICAgICBpZiBz
ZXFfbnVtIGlzIGludmFsaWQKICAqCiAgKi8KLXN0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdAotc3J0
cF9jYWxjX2FlYWRfaXZfc3J0Y3Aoc3J0cF9zZXNzaW9uX2tleXNfdCAqc2Vzc2lvbl9rZXlzLCB2
MTI4X3QgKml2LAotICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3Qgc2VxX251bSwgc3J0
Y3BfaGRyX3QgKmhkcikKK3N0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NhbGNfYWVhZF9p
dl9zcnRjcCgKKyAgICBzcnRwX3Nlc3Npb25fa2V5c190ICpzZXNzaW9uX2tleXMsCisgICAgdjEy
OF90ICppdiwKKyAgICB1aW50MzJfdCBzZXFfbnVtLAorICAgIHNydGNwX2hkcl90ICpoZHIpCiB7
Ci0gICAgdjEyOF90CWluOwotICAgIHYxMjhfdAlzYWx0OworICAgIHYxMjhfdCBpbjsKKyAgICB2
MTI4X3Qgc2FsdDsKIAogICAgIG1lbXNldCgmaW4sIDAsIHNpemVvZih2MTI4X3QpKTsKICAgICBt
ZW1zZXQoJnNhbHQsIDAsIHNpemVvZih2MTI4X3QpKTsKQEAgLTM0NTAsNDAgKzM0NjUsMjE1IEBA
IHNydHBfY2FsY19hZWFkX2l2X3NydGNwKHNydHBfc2Vzc2lvbl9rZXlzX3QgKnNlc3Npb25fa2V5
cywgdjEyOF90ICppdiwKICAgICBpZiAoc2VxX251bSAmIDB4ODAwMDAwMDBVTCkgewogICAgICAg
ICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJhbTsKICAgICB9Ci0gICAgaW4udjMyWzJd
ID0gaHRvbmwoc2VxX251bSk7Ci0KLSAgICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgIlByZS1zYWx0
ZWQgUlRDUCBJViA9ICVzXG4iLCB2MTI4X2hleF9zdHJpbmcoJmluKSk7CisgICAgaW4udjMyWzJd
ID0gaHRvbmwoc2VxX251bSk7CisKKyAgICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgIlByZS1zYWx0
ZWQgUlRDUCBJViA9ICVzXG4iLCB2MTI4X2hleF9zdHJpbmcoJmluKSk7CisKKyAgICAvKgorICAg
ICAqIEdldCB0aGUgU0FMVCB2YWx1ZSBmcm9tIHRoZSBjb250ZXh0CisgICAgICovCisgICAgbWVt
Y3B5KHNhbHQudjgsIHNlc3Npb25fa2V5cy0+Y19zYWx0LCAxMik7CisgICAgZGVidWdfcHJpbnQo
bW9kX3NydHAsICJSVENQIFNBTFQgPSAlc1xuIiwgdjEyOF9oZXhfc3RyaW5nKCZzYWx0KSk7CisK
KyAgICAvKgorICAgICAqIEZpbmFsbHksIGFwcGx5IHRoZSBTQUxUIHRvIHRoZSBpbnB1dAorICAg
ICAqLworICAgIHYxMjhfeG9yKGl2LCAmaW4sICZzYWx0KTsKKworICAgIHJldHVybiBzcnRwX2Vy
cl9zdGF0dXNfb2s7Cit9CisKKy8qCisgKiBUaGlzIGNvZGUgaGFuZGxlcyBBRUFEIGNpcGhlcnMg
Zm9yIG91dGdvaW5nIFJUQ1AuICBXZSBjdXJyZW50bHkgc3VwcG9ydAorICogQUVTLUdDTSBtb2Rl
IHdpdGggMTI4IG9yIDI1NiBiaXQga2V5cy4KKyAqLworc3RhdGljIHNydHBfZXJyX3N0YXR1c190
IHNydHBfcHJvdGVjdF9ydGNwX2FlYWQoCisgICAgc3J0cF90IGN0eCwKKyAgICBzcnRwX3N0cmVh
bV9jdHhfdCAqc3RyZWFtLAorICAgIHZvaWQgKnJ0Y3BfaGRyLAorICAgIHVuc2lnbmVkIGludCAq
cGt0X29jdGV0X2xlbiwKKyAgICBzcnRwX3Nlc3Npb25fa2V5c190ICpzZXNzaW9uX2tleXMsCisg
ICAgdW5zaWduZWQgaW50IHVzZV9ta2kpCit7CisgICAgc3J0Y3BfaGRyX3QgKmhkciA9IChzcnRj
cF9oZHJfdCAqKXJ0Y3BfaGRyOworICAgIHVpbnQzMl90ICplbmNfc3RhcnQ7ICAgICAgICAgICAg
LyogcG9pbnRlciB0byBzdGFydCBvZiBlbmNyeXB0ZWQgcG9ydGlvbiAgKi8KKyAgICB1aW50MzJf
dCAqdHJhaWxlcjsgICAgICAgICAgICAgIC8qIHBvaW50ZXIgdG8gc3RhcnQgb2YgdHJhaWxlciAg
ICAgICAgICAgICovCisgICAgdW5zaWduZWQgaW50IGVuY19vY3RldF9sZW4gPSAwOyAvKiBudW1i
ZXIgb2Ygb2N0ZXRzIGluIGVuY3J5cHRlZCBwb3J0aW9uICovCisgICAgdWludDhfdCAqYXV0aF90
YWcgPSBOVUxMOyAgICAgICAvKiBsb2NhdGlvbiBvZiBhdXRoX3RhZyB3aXRoaW4gcGFja2V0ICAg
ICAqLworICAgIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKKyAgICB1aW50MzJfdCB0YWdfbGVu
OworICAgIHVpbnQzMl90IHNlcV9udW07CisgICAgdjEyOF90IGl2OworICAgIHVpbnQzMl90IHRz
ZXE7CisgICAgdW5zaWduZWQgaW50IG1raV9zaXplID0gMDsKKworICAgIC8qIGdldCB0YWcgbGVu
Z3RoIGZyb20gc3RyZWFtIGNvbnRleHQgKi8KKyAgICB0YWdfbGVuID0gc3J0cF9hdXRoX2dldF90
YWdfbGVuZ3RoKHNlc3Npb25fa2V5cy0+cnRjcF9hdXRoKTsKKworICAgIC8qCisgICAgICogc2V0
IGVuY3J5cHRpb24gc3RhcnQgYW5kIGVuY3J5cHRpb24gbGVuZ3RoIC0gaWYgd2UncmUgbm90Cisg
ICAgICogcHJvdmlkaW5nIGNvbmZpZGVudGlhbGl0eSwgc2V0IGVuY19zdGFydCB0byBOVUxMCisg
ICAgICovCisgICAgZW5jX3N0YXJ0ID0gKHVpbnQzMl90ICopaGRyICsgdWludDMyc19pbl9ydGNw
X2hlYWRlcjsKKyAgICBlbmNfb2N0ZXRfbGVuID0gKnBrdF9vY3RldF9sZW4gLSBvY3RldHNfaW5f
cnRjcF9oZWFkZXI7CisKKyAgICAvKiBOT1RFOiBoZHItPmxlbmd0aCBpcyBub3QgdXNhYmxlIC0g
aXQgcmVmZXJzIHRvIG9ubHkgdGhlIGZpcnN0CisgICAgICogUlRDUCByZXBvcnQgaW4gdGhlIGNv
bXBvdW5kIHBhY2tldCEKKyAgICAgKi8KKyAgICAvKiBOT1RFOiB0cmFpbGVyIGlzIDMyLWJpdCBh
bGlnbmVkIGJlY2F1c2UgUlRDUCAncGFja2V0cycgYXJlIGFsd2F5cworICAgICAqIG11bHRpcGxl
cyBvZiAzMi1iaXRzIChSRkMgMzU1MCA2LjEpCisgICAgICovCisgICAgdHJhaWxlciA9ICh1aW50
MzJfdCAqKSgoY2hhciAqKWVuY19zdGFydCArIGVuY19vY3RldF9sZW4gKyB0YWdfbGVuKTsKKwor
ICAgIGlmIChzdHJlYW0tPnJ0Y3Bfc2VydmljZXMgJiBzZWNfc2Vydl9jb25mKSB7CisgICAgICAg
ICp0cmFpbGVyID0gaHRvbmwoU1JUQ1BfRV9CSVQpOyAvKiBzZXQgZW5jcnlwdCBiaXQgKi8KKyAg
ICB9IGVsc2UgeworICAgICAgICBlbmNfc3RhcnQgPSBOVUxMOworICAgICAgICBlbmNfb2N0ZXRf
bGVuID0gMDsKKyAgICAgICAgLyogMCBpcyBuZXR3b3JrLW9yZGVyIGluZGVwZW5kYW50ICovCisg
ICAgICAgICp0cmFpbGVyID0gMHgwMDAwMDAwMDsgLyogc2V0IGVuY3J5cHQgYml0ICovCisgICAg
fQorCisgICAgbWtpX3NpemUgPSBzcnRwX2luamVjdF9ta2koKHVpbnQ4X3QgKiloZHIgKyAqcGt0
X29jdGV0X2xlbiArIHRhZ19sZW4gKworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBzaXplb2Yoc3J0Y3BfdHJhaWxlcl90KSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBzZXNzaW9uX2tleXMsIHVzZV9ta2kpOworCisgICAgLyoKKyAgICAgKiBzZXQgdGhlIGF1dGhf
dGFnIHBvaW50ZXIgdG8gdGhlIHByb3BlciBsb2NhdGlvbiwgd2hpY2ggaXMgYWZ0ZXIKKyAgICAg
KiB0aGUgcGF5bG9hZCwgYnV0IGJlZm9yZSB0aGUgdHJhaWxlcgorICAgICAqIChub3RlIHRoYXQg
c3J0cGMgKmFsd2F5cyogcHJvdmlkZXMgYXV0aGVudGljYXRpb24sIHVubGlrZSBzcnRwKQorICAg
ICAqLworICAgIC8qIE5vdGU6IFRoaXMgd291bGQgbmVlZCB0byBjaGFuZ2UgZm9yIG9wdGlvbmFs
IG1pa2V5IGRhdGEgKi8KKyAgICBhdXRoX3RhZyA9ICh1aW50OF90ICopaGRyICsgKnBrdF9vY3Rl
dF9sZW47CisKKyAgICAvKgorICAgICAqIGNoZWNrIHNlcXVlbmNlIG51bWJlciBmb3Igb3ZlcnJ1
bnMsIGFuZCBjb3B5IGl0IGludG8gdGhlIHBhY2tldAorICAgICAqIGlmIGl0cyB2YWx1ZSBpc24n
dCB0b28gYmlnCisgICAgICovCisgICAgc3RhdHVzID0gc3J0cF9yZGJfaW5jcmVtZW50KCZzdHJl
YW0tPnJ0Y3BfcmRiKTsKKyAgICBpZiAoc3RhdHVzKSB7CisgICAgICAgIHJldHVybiBzdGF0dXM7
CisgICAgfQorICAgIHNlcV9udW0gPSBzcnRwX3JkYl9nZXRfdmFsdWUoJnN0cmVhbS0+cnRjcF9y
ZGIpOworICAgICp0cmFpbGVyIHw9IGh0b25sKHNlcV9udW0pOworICAgIGRlYnVnX3ByaW50KG1v
ZF9zcnRwLCAic3J0Y3AgaW5kZXg6ICV4Iiwgc2VxX251bSk7CisKKyAgICAvKgorICAgICAqIENh
bGN1bGF0ZSBhbmQgc2V0IHRoZSBJVgorICAgICAqLworICAgIHN0YXR1cyA9IHNydHBfY2FsY19h
ZWFkX2l2X3NydGNwKHNlc3Npb25fa2V5cywgJml2LCBzZXFfbnVtLCBoZHIpOworICAgIGlmIChz
dGF0dXMpIHsKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19jaXBoZXJfZmFpbDsKKyAg
ICB9CisgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfc2V0X2l2KHNlc3Npb25fa2V5cy0+cnRjcF9j
aXBoZXIsICh1aW50OF90ICopJml2LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBz
cnRwX2RpcmVjdGlvbl9lbmNyeXB0KTsKKyAgICBpZiAoc3RhdHVzKSB7CisgICAgICAgIHJldHVy
biBzcnRwX2Vycl9zdGF0dXNfY2lwaGVyX2ZhaWw7CisgICAgfQorCisgICAgLyoKKyAgICAgKiBT
ZXQgdGhlIEFBRCBmb3IgR0NNIG1vZGUKKyAgICAgKi8KKyAgICBpZiAoZW5jX3N0YXJ0KSB7Cisg
ICAgICAgIC8qCisgICAgICAgICAqIElmIHBheWxvYWQgZW5jcnlwdGlvbiBpcyBlbmFibGVkLCB0
aGVuIHRoZSBBQUQgY29uc2lzdCBvZgorICAgICAgICAgKiB0aGUgUlRDUCBoZWFkZXIgYW5kIHRo
ZSBzZXEjIGF0IHRoZSBlbmQgb2YgdGhlIHBhY2tldAorICAgICAgICAgKi8KKyAgICAgICAgc3Rh
dHVzID0gc3J0cF9jaXBoZXJfc2V0X2FhZChzZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyLCAodWlu
dDhfdCAqKWhkciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvY3RldHNf
aW5fcnRjcF9oZWFkZXIpOworICAgICAgICBpZiAoc3RhdHVzKSB7CisgICAgICAgICAgICByZXR1
cm4gKHNydHBfZXJyX3N0YXR1c19jaXBoZXJfZmFpbCk7CisgICAgICAgIH0KKyAgICB9IGVsc2Ug
eworICAgICAgICAvKgorICAgICAgICAgKiBTaW5jZSBwYXlsb2FkIGVuY3J5cHRpb24gaXMgbm90
IGVuYWJsZWQsIHdlIG11c3QgYXV0aGVudGljYXRlCisgICAgICAgICAqIHRoZSBlbnRpcmUgcGFj
a2V0IGFzIGRlc2NyaWJlZCBpbiBSRkMgNzcxNCAoU2VjdGlvbiA5LjMuIERhdGEKKyAgICAgICAg
ICogVHlwZXMgaW4gVW5lbmNyeXB0ZWQgU1JUQ1AgQ29tcG91bmQgUGFja2V0cykKKyAgICAgICAg
ICovCisgICAgICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3NldF9hYWQoc2Vzc2lvbl9rZXlzLT5y
dGNwX2NpcGhlciwgKHVpbnQ4X3QgKiloZHIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKnBrdF9vY3RldF9sZW4pOworICAgICAgICBpZiAoc3RhdHVzKSB7CisgICAgICAg
ICAgICByZXR1cm4gKHNydHBfZXJyX3N0YXR1c19jaXBoZXJfZmFpbCk7CisgICAgICAgIH0KKyAg
ICB9CisgICAgLyoKKyAgICAgKiBQcm9jZXNzIHRoZSBzZXF1ZW5jZSMgYXMgQUFECisgICAgICov
CisgICAgdHNlcSA9ICp0cmFpbGVyOworICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3NldF9hYWQo
c2Vzc2lvbl9rZXlzLT5ydGNwX2NpcGhlciwgKHVpbnQ4X3QgKikmdHNlcSwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHNpemVvZihzcnRjcF90cmFpbGVyX3QpKTsKKyAgICBpZiAo
c3RhdHVzKSB7CisgICAgICAgIHJldHVybiAoc3J0cF9lcnJfc3RhdHVzX2NpcGhlcl9mYWlsKTsK
KyAgICB9CisKKyAgICAvKiBpZiB3ZSdyZSBlbmNyeXB0aW5nLCBleG9yIGtleXN0cmVhbSBpbnRv
IHRoZSBtZXNzYWdlICovCisgICAgaWYgKGVuY19zdGFydCkgeworICAgICAgICBzdGF0dXMgPSBz
cnRwX2NpcGhlcl9lbmNyeXB0KHNlc3Npb25fa2V5cy0+cnRjcF9jaXBoZXIsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgKHVpbnQ4X3QgKillbmNfc3RhcnQsICZlbmNfb2N0
ZXRfbGVuKTsKKyAgICAgICAgaWYgKHN0YXR1cykgeworICAgICAgICAgICAgcmV0dXJuIHNydHBf
ZXJyX3N0YXR1c19jaXBoZXJfZmFpbDsKKyAgICAgICAgfQorICAgICAgICAvKgorICAgICAgICAg
KiBHZXQgdGhlIHRhZyBhbmQgYXBwZW5kIHRoYXQgdG8gdGhlIG91dHB1dAorICAgICAgICAgKi8K
KyAgICAgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfZ2V0X3RhZyhzZXNzaW9uX2tleXMtPnJ0Y3Bf
Y2lwaGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICh1aW50OF90ICop
YXV0aF90YWcsICZ0YWdfbGVuKTsKKyAgICAgICAgaWYgKHN0YXR1cykgeworICAgICAgICAgICAg
cmV0dXJuIChzcnRwX2Vycl9zdGF0dXNfY2lwaGVyX2ZhaWwpOworICAgICAgICB9CisgICAgICAg
IGVuY19vY3RldF9sZW4gKz0gdGFnX2xlbjsKKyAgICB9IGVsc2UgeworICAgICAgICAvKgorICAg
ICAgICAgKiBFdmVuIHRob3VnaCB3ZSdyZSBub3QgZW5jcnlwdGluZyB0aGUgcGF5bG9hZCwgd2Ug
bmVlZAorICAgICAgICAgKiB0byBydW4gdGhlIGNpcGhlciB0byBnZXQgdGhlIGF1dGggdGFnLgor
ICAgICAgICAgKi8KKyAgICAgICAgdW5zaWduZWQgaW50IG5vbGVuID0gMDsKKyAgICAgICAgc3Rh
dHVzID0gc3J0cF9jaXBoZXJfZW5jcnlwdChzZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyLCBOVUxM
LCAmbm9sZW4pOworICAgICAgICBpZiAoc3RhdHVzKSB7CisgICAgICAgICAgICByZXR1cm4gc3J0
cF9lcnJfc3RhdHVzX2NpcGhlcl9mYWlsOworICAgICAgICB9CisgICAgICAgIC8qCisgICAgICAg
ICAqIEdldCB0aGUgdGFnIGFuZCBhcHBlbmQgdGhhdCB0byB0aGUgb3V0cHV0CisgICAgICAgICAq
LworICAgICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9nZXRfdGFnKHNlc3Npb25fa2V5cy0+cnRj
cF9jaXBoZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHVpbnQ4X3Qg
KilhdXRoX3RhZywgJnRhZ19sZW4pOworICAgICAgICBpZiAoc3RhdHVzKSB7CisgICAgICAgICAg
ICByZXR1cm4gKHNydHBfZXJyX3N0YXR1c19jaXBoZXJfZmFpbCk7CisgICAgICAgIH0KKyAgICAg
ICAgZW5jX29jdGV0X2xlbiArPSB0YWdfbGVuOworICAgIH0KIAotICAgIC8qCi0gICAgICogR2V0
IHRoZSBTQUxUIHZhbHVlIGZyb20gdGhlIGNvbnRleHQKLSAgICAgKi8KLSAgICBtZW1jcHkoc2Fs
dC52OCwgc2Vzc2lvbl9rZXlzLT5jX3NhbHQsIDEyKTsKLSAgICBkZWJ1Z19wcmludChtb2Rfc3J0
cCwgIlJUQ1AgU0FMVCA9ICVzXG4iLCB2MTI4X2hleF9zdHJpbmcoJnNhbHQpKTsKKyAgICAvKiBp
bmNyZWFzZSB0aGUgcGFja2V0IGxlbmd0aCBieSB0aGUgbGVuZ3RoIG9mIHRoZSBhdXRoIHRhZyBh
bmQgc2VxX251bSovCisgICAgKnBrdF9vY3RldF9sZW4gKz0gKHRhZ19sZW4gKyBzaXplb2Yoc3J0
Y3BfdHJhaWxlcl90KSk7CiAKLSAgICAvKgotICAgICAqIEZpbmFsbHksIGFwcGx5IHRoZSBTQUxU
IHRvIHRoZSBpbnB1dAotICAgICAqLwotICAgIHYxMjhfeG9yKGl2LCAmaW4sICZzYWx0KTsKKyAg
ICAvKiBpbmNyZWFzZSB0aGUgcGFja2V0IGJ5IHRoZSBta2lfc2l6ZSAqLworICAgICpwa3Rfb2N0
ZXRfbGVuICs9IG1raV9zaXplOwogCiAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0K
IAogLyoKLSAqIFRoaXMgY29kZSBoYW5kbGVzIEFFQUQgY2lwaGVycyBmb3Igb3V0Z29pbmcgUlRD
UC4gIFdlIGN1cnJlbnRseSBzdXBwb3J0Ci0gKiBBRVMtR0NNIG1vZGUgd2l0aCAxMjggb3IgMjU2
IGJpdCBrZXlzLiAKKyAqIFRoaXMgZnVuY3Rpb24gaGFuZGxlcyBpbmNvbWluZyBTUlRDUCBwYWNr
ZXRzIHdoaWxlIGluIEFFQUQgbW9kZSwKKyAqIHdoaWNoIGN1cnJlbnRseSBzdXBwb3J0cyBBRVMt
R0NNIGVuY3J5cHRpb24uICBOb3RlLCB0aGUgYXV0aCB0YWcgaXMKKyAqIGF0IHRoZSBlbmQgb2Yg
dGhlIHBhY2tldCBzdHJlYW0gYW5kIGlzIGF1dG9tYXRpY2FsbHkgY2hlY2tlZCBieSBHQ00KKyAq
IHdoZW4gZGVjcnlwdGluZyB0aGUgcGF5bG9hZC4KICAqLwotc3RhdGljIHNydHBfZXJyX3N0YXR1
c190Ci1zcnRwX3Byb3RlY3RfcnRjcF9hZWFkIChzcnRwX3QgY3R4LCBzcnRwX3N0cmVhbV9jdHhf
dCAqc3RyZWFtLCAKLSAgICAgICAgICAgICAgICAgICAgICAgIHZvaWQgKnJ0Y3BfaGRyLCB1bnNp
Z25lZCBpbnQgKnBrdF9vY3RldF9sZW4sCi0gICAgICAgICAgICAgICAgICAgICAgICBzcnRwX3Nl
c3Npb25fa2V5c190ICpzZXNzaW9uX2tleXMsIHVuc2lnbmVkIGludCB1c2VfbWtpKQorc3RhdGlj
IHNydHBfZXJyX3N0YXR1c190IHNydHBfdW5wcm90ZWN0X3J0Y3BfYWVhZCgKKyAgICBzcnRwX3Qg
Y3R4LAorICAgIHNydHBfc3RyZWFtX2N0eF90ICpzdHJlYW0sCisgICAgdm9pZCAqc3J0Y3BfaGRy
LAorICAgIHVuc2lnbmVkIGludCAqcGt0X29jdGV0X2xlbiwKKyAgICBzcnRwX3Nlc3Npb25fa2V5
c190ICpzZXNzaW9uX2tleXMsCisgICAgdW5zaWduZWQgaW50IHVzZV9ta2kpCiB7Ci0gICAgc3J0
Y3BfaGRyX3QgKmhkciA9IChzcnRjcF9oZHJfdCopcnRjcF9oZHI7Ci0gICAgdWludDMyX3QgKmVu
Y19zdGFydDsgICAgICAgIC8qIHBvaW50ZXIgdG8gc3RhcnQgb2YgZW5jcnlwdGVkIHBvcnRpb24g
ICovCi0gICAgdWludDMyX3QgKnRyYWlsZXI7ICAgICAgICAgIC8qIHBvaW50ZXIgdG8gc3RhcnQg
b2YgdHJhaWxlciAgICAgICAgICAgICovCisgICAgc3J0Y3BfaGRyX3QgKmhkciA9IChzcnRjcF9o
ZHJfdCAqKXNydGNwX2hkcjsKKyAgICB1aW50MzJfdCAqZW5jX3N0YXJ0OyAgICAgICAgICAgIC8q
IHBvaW50ZXIgdG8gc3RhcnQgb2YgZW5jcnlwdGVkIHBvcnRpb24gICovCisgICAgdWludDMyX3Qg
KnRyYWlsZXI7ICAgICAgICAgICAgICAvKiBwb2ludGVyIHRvIHN0YXJ0IG9mIHRyYWlsZXIgICAg
ICAgICAgICAqLwogICAgIHVuc2lnbmVkIGludCBlbmNfb2N0ZXRfbGVuID0gMDsgLyogbnVtYmVy
IG9mIG9jdGV0cyBpbiBlbmNyeXB0ZWQgcG9ydGlvbiAqLwotICAgIHVpbnQ4X3QgKmF1dGhfdGFn
ID0gTlVMTDsgICAvKiBsb2NhdGlvbiBvZiBhdXRoX3RhZyB3aXRoaW4gcGFja2V0ICAgICAqLwor
ICAgIHVpbnQ4X3QgKmF1dGhfdGFnID0gTlVMTDsgICAgICAgLyogbG9jYXRpb24gb2YgYXV0aF90
YWcgd2l0aGluIHBhY2tldCAgICAgKi8KICAgICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7Ci0g
ICAgdWludDMyX3QgdGFnX2xlbjsKKyAgICBpbnQgdGFnX2xlbjsKKyAgICB1bnNpZ25lZCBpbnQg
dG1wX2xlbjsKICAgICB1aW50MzJfdCBzZXFfbnVtOwogICAgIHYxMjhfdCBpdjsKICAgICB1aW50
MzJfdCB0c2VxOwpAQCAtMzQ5Miw1MCArMzY4Miw0OSBAQCBzcnRwX3Byb3RlY3RfcnRjcF9hZWFk
IChzcnRwX3QgY3R4LCBzcnRwX3N0cmVhbV9jdHhfdCAqc3RyZWFtLAogICAgIC8qIGdldCB0YWcg
bGVuZ3RoIGZyb20gc3RyZWFtIGNvbnRleHQgKi8KICAgICB0YWdfbGVuID0gc3J0cF9hdXRoX2dl
dF90YWdfbGVuZ3RoKHNlc3Npb25fa2V5cy0+cnRjcF9hdXRoKTsKIAorICAgIGlmICh1c2VfbWtp
KSB7CisgICAgICAgIG1raV9zaXplID0gc2Vzc2lvbl9rZXlzLT5ta2lfc2l6ZTsKKyAgICB9CisK
ICAgICAvKgotICAgICAqIHNldCBlbmNyeXB0aW9uIHN0YXJ0IGFuZCBlbmNyeXB0aW9uIGxlbmd0
aCAtIGlmIHdlJ3JlIG5vdAotICAgICAqIHByb3ZpZGluZyBjb25maWRlbnRpYWxpdHksIHNldCBl
bmNfc3RhcnQgdG8gTlVMTAorICAgICAqIHNldCBlbmNyeXB0aW9uIHN0YXJ0LCBlbmNyeXB0aW9u
IGxlbmd0aCwgYW5kIHRyYWlsZXIKICAgICAgKi8KLSAgICBlbmNfc3RhcnQgPSAodWludDMyX3Qq
KWhkciArIHVpbnQzMnNfaW5fcnRjcF9oZWFkZXI7Ci0gICAgZW5jX29jdGV0X2xlbiA9ICpwa3Rf
b2N0ZXRfbGVuIC0gb2N0ZXRzX2luX3J0Y3BfaGVhZGVyOwotCi0gICAgLyogTk9URTogaGRyLT5s
ZW5ndGggaXMgbm90IHVzYWJsZSAtIGl0IHJlZmVycyB0byBvbmx5IHRoZSBmaXJzdAotICAgICAg
ICAgICBSVENQIHJlcG9ydCBpbiB0aGUgY29tcG91bmQgcGFja2V0ISAqLwotICAgIC8qIE5PVEU6
IHRyYWlsZXIgaXMgMzItYml0IGFsaWduZWQgYmVjYXVzZSBSVENQICdwYWNrZXRzJyBhcmUgYWx3
YXlzCi0gICAgICAgICAgIG11bHRpcGxlcyBvZiAzMi1iaXRzIChSRkMgMzU1MCA2LjEpICovCi0g
ICAgdHJhaWxlciA9ICh1aW50MzJfdCopKChjaGFyKillbmNfc3RhcnQgKyBlbmNfb2N0ZXRfbGVu
ICsgdGFnX2xlbik7CisgICAgLyogaW5kZXggJiBFIChlbmNyeXB0aW9uKSBiaXQgZm9sbG93IG5v
cm1hbCBkYXRhLiBoZHItPmxlbiBpcyB0aGUgbnVtYmVyIG9mCisgICAgICogd29yZHMgKDMyLWJp
dCkgaW4gdGhlIG5vcm1hbCBwYWNrZXQgbWludXMgMQorICAgICAqLworICAgIC8qIFRoaXMgc2hv
dWxkIHBvaW50IHRyYWlsZXIgdG8gdGhlIHdvcmQgcGFzdCB0aGUgZW5kIG9mIHRoZSBub3JtYWwg
ZGF0YS4gKi8KKyAgICAvKiBUaGlzIHdvdWxkIG5lZWQgdG8gYmUgbW9kaWZpZWQgZm9yIG9wdGlv
bmFsIG1pa2V5IGRhdGEgKi8KKyAgICAvKgorICAgICAqIE5PVEU6IHRyYWlsZXIgaXMgMzItYml0
IGFsaWduZWQgYmVjYXVzZSBSVENQICdwYWNrZXRzJyBhcmUgYWx3YXlzCisgICAgICogICBtdWx0
aXBsZXMgb2YgMzItYml0cyAoUkZDIDM1NTAgNi4xKQorICAgICAqLworICAgIHRyYWlsZXIgPSAo
dWludDMyX3QgKikoKGNoYXIgKiloZHIgKyAqcGt0X29jdGV0X2xlbiAtCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICBzaXplb2Yoc3J0Y3BfdHJhaWxlcl90KSAtIG1raV9zaXplKTsKKyAgICAv
KgorICAgICAqIFdlIHBhc3MgdGhlIHRhZyBkb3duIHRvIHRoZSBjaXBoZXIgd2hlbiBkb2luZyBH
Q00gbW9kZQorICAgICAqLworICAgIGVuY19vY3RldF9sZW4gPSAqcGt0X29jdGV0X2xlbiAtIChv
Y3RldHNfaW5fcnRjcF9oZWFkZXIgKworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBzaXplb2Yoc3J0Y3BfdHJhaWxlcl90KSArIG1raV9zaXplKTsKKyAgICBhdXRoX3RhZyA9
ICh1aW50OF90ICopaGRyICsgKnBrdF9vY3RldF9sZW4gLSB0YWdfbGVuIC0gbWtpX3NpemUgLQor
ICAgICAgICAgICAgICAgc2l6ZW9mKHNydGNwX3RyYWlsZXJfdCk7CiAKLSAgICBpZiAoc3RyZWFt
LT5ydGNwX3NlcnZpY2VzICYgc2VjX3NlcnZfY29uZikgewotICAgICAgICAqdHJhaWxlciA9IGh0
b25sKFNSVENQX0VfQklUKTsgLyogc2V0IGVuY3J5cHQgYml0ICovCisgICAgaWYgKCooKHVuc2ln
bmVkIGNoYXIgKil0cmFpbGVyKSAmIFNSVENQX0VfQllURV9CSVQpIHsKKyAgICAgICAgZW5jX3N0
YXJ0ID0gKHVpbnQzMl90ICopaGRyICsgdWludDMyc19pbl9ydGNwX2hlYWRlcjsKICAgICB9IGVs
c2UgewotICAgICAgICBlbmNfc3RhcnQgPSBOVUxMOwogICAgICAgICBlbmNfb2N0ZXRfbGVuID0g
MDsKLSAgICAgICAgLyogMCBpcyBuZXR3b3JrLW9yZGVyIGluZGVwZW5kYW50ICovCi0gICAgICAg
ICp0cmFpbGVyID0gMHgwMDAwMDAwMDsgLyogc2V0IGVuY3J5cHQgYml0ICovCisgICAgICAgIGVu
Y19zdGFydCA9IE5VTEw7IC8qIHRoaXMgaW5kaWNhdGVzIHRoYXQgdGhlcmUncyBubyBlbmNyeXB0
aW9uICovCiAgICAgfQogCi0gICAgbWtpX3NpemUgPSBzcnRwX2luamVjdF9ta2koKHVpbnQ4X3Qg
KiloZHIgKyAqcGt0X29jdGV0X2xlbiArIHRhZ19sZW4gKyBzaXplb2Yoc3J0Y3BfdHJhaWxlcl90
KSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXNzaW9uX2tleXMsIHVzZV9ta2kp
OwotCi0gICAgLyoKLSAgICAgKiBzZXQgdGhlIGF1dGhfdGFnIHBvaW50ZXIgdG8gdGhlIHByb3Bl
ciBsb2NhdGlvbiwgd2hpY2ggaXMgYWZ0ZXIKLSAgICAgKiB0aGUgcGF5bG9hZCwgYnV0IGJlZm9y
ZSB0aGUgdHJhaWxlcgotICAgICAqIChub3RlIHRoYXQgc3J0cGMgKmFsd2F5cyogcHJvdmlkZXMg
YXV0aGVudGljYXRpb24sIHVubGlrZSBzcnRwKQotICAgICAqLwotICAgIC8qIE5vdGU6IFRoaXMg
d291bGQgbmVlZCB0byBjaGFuZ2UgZm9yIG9wdGlvbmFsIG1pa2V5IGRhdGEgKi8KLSAgICBhdXRo
X3RhZyA9ICh1aW50OF90KiloZHIgKyAqcGt0X29jdGV0X2xlbjsKLQogICAgIC8qCi0gICAgICog
Y2hlY2sgc2VxdWVuY2UgbnVtYmVyIGZvciBvdmVycnVucywgYW5kIGNvcHkgaXQgaW50byB0aGUg
cGFja2V0Ci0gICAgICogaWYgaXRzIHZhbHVlIGlzbid0IHRvbyBiaWcKKyAgICAgKiBjaGVjayB0
aGUgc2VxdWVuY2UgbnVtYmVyIGZvciByZXBsYXlzCiAgICAgICovCi0gICAgc3RhdHVzID0gc3J0
cF9yZGJfaW5jcmVtZW50KCZzdHJlYW0tPnJ0Y3BfcmRiKTsKKyAgICAvKiB0aGlzIGlzIGVhc2ll
ciB0aGFuIGRlYWxpbmcgd2l0aCBiaXRmaWVsZCBhY2Nlc3MgKi8KKyAgICBzZXFfbnVtID0gbnRv
aGwoKnRyYWlsZXIpICYgU1JUQ1BfSU5ERVhfTUFTSzsKKyAgICBkZWJ1Z19wcmludChtb2Rfc3J0
cCwgInNydGNwIGluZGV4OiAleCIsIHNlcV9udW0pOworICAgIHN0YXR1cyA9IHNydHBfcmRiX2No
ZWNrKCZzdHJlYW0tPnJ0Y3BfcmRiLCBzZXFfbnVtKTsKICAgICBpZiAoc3RhdHVzKSB7CiAgICAg
ICAgIHJldHVybiBzdGF0dXM7CiAgICAgfQotICAgIHNlcV9udW0gPSBzcnRwX3JkYl9nZXRfdmFs
dWUoJnN0cmVhbS0+cnRjcF9yZGIpOwotICAgICp0cmFpbGVyIHw9IGh0b25sKHNlcV9udW0pOwot
ICAgIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAic3J0Y3AgaW5kZXg6ICV4Iiwgc2VxX251bSk7CiAK
ICAgICAvKgogICAgICAqIENhbGN1bGF0ZSBhbmQgc2V0IHRoZSBJVgpAQCAtMzU0NCw4ICszNzMz
LDggQEAgc3J0cF9wcm90ZWN0X3J0Y3BfYWVhZCAoc3J0cF90IGN0eCwgc3J0cF9zdHJlYW1fY3R4
X3QgKnN0cmVhbSwKICAgICBpZiAoc3RhdHVzKSB7CiAgICAgICAgIHJldHVybiBzcnRwX2Vycl9z
dGF0dXNfY2lwaGVyX2ZhaWw7CiAgICAgfQotICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3NldF9p
dihzZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAodWludDhfdCopJml2LCBzcnRwX2RpcmVjdGlvbl9lbmNyeXB0KTsKKyAgICBzdGF0dXMg
PSBzcnRwX2NpcGhlcl9zZXRfaXYoc2Vzc2lvbl9rZXlzLT5ydGNwX2NpcGhlciwgKHVpbnQ4X3Qg
KikmaXYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfZGlyZWN0aW9uX2Rl
Y3J5cHQpOwogICAgIGlmIChzdGF0dXMpIHsKICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1
c19jaXBoZXJfZmFpbDsKICAgICB9CkBAIC0zNTU4LDEwICszNzQ3LDEwIEBAIHNydHBfcHJvdGVj
dF9ydGNwX2FlYWQgKHNydHBfdCBjdHgsIHNydHBfc3RyZWFtX2N0eF90ICpzdHJlYW0sCiAgICAg
ICAgICAqIElmIHBheWxvYWQgZW5jcnlwdGlvbiBpcyBlbmFibGVkLCB0aGVuIHRoZSBBQUQgY29u
c2lzdCBvZgogICAgICAgICAgKiB0aGUgUlRDUCBoZWFkZXIgYW5kIHRoZSBzZXEjIGF0IHRoZSBl
bmQgb2YgdGhlIHBhY2tldAogICAgICAgICAgKi8KLSAgICAgICAgc3RhdHVzID0gc3J0cF9jaXBo
ZXJfc2V0X2FhZChzZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyLAotICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgKHVpbnQ4X3QqKWhkciwgb2N0ZXRzX2luX3J0Y3BfaGVhZGVyKTsKKyAg
ICAgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfc2V0X2FhZChzZXNzaW9uX2tleXMtPnJ0Y3BfY2lw
aGVyLCAodWludDhfdCAqKWhkciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBvY3RldHNfaW5fcnRjcF9oZWFkZXIpOwogICAgICAgICBpZiAoc3RhdHVzKSB7Ci0gICAgICAg
ICAgICByZXR1cm4gKCBzcnRwX2Vycl9zdGF0dXNfY2lwaGVyX2ZhaWwpOworICAgICAgICAgICAg
cmV0dXJuIChzcnRwX2Vycl9zdGF0dXNfY2lwaGVyX2ZhaWwpOwogICAgICAgICB9CiAgICAgfSBl
bHNlIHsKICAgICAgICAgLyoKQEAgLTM1NjksNTkgKzM3NTgsMzIyIEBAIHNydHBfcHJvdGVjdF9y
dGNwX2FlYWQgKHNydHBfdCBjdHgsIHNydHBfc3RyZWFtX2N0eF90ICpzdHJlYW0sCiAgICAgICAg
ICAqIHRoZSBlbnRpcmUgcGFja2V0IGFzIGRlc2NyaWJlZCBpbiBSRkMgNzcxNCAoU2VjdGlvbiA5
LjMuIERhdGEKICAgICAgICAgICogVHlwZXMgaW4gVW5lbmNyeXB0ZWQgU1JUQ1AgQ29tcG91bmQg
UGFja2V0cykKICAgICAgICAgICovCi0gICAgICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3NldF9h
YWQoc2Vzc2lvbl9rZXlzLT5ydGNwX2NpcGhlciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICh1aW50OF90KiloZHIsICpwa3Rfb2N0ZXRfbGVuKTsKKyAgICAgICAgc3RhdHVzID0g
c3J0cF9jaXBoZXJfc2V0X2FhZCgKKyAgICAgICAgICAgIHNlc3Npb25fa2V5cy0+cnRjcF9jaXBo
ZXIsICh1aW50OF90ICopaGRyLAorICAgICAgICAgICAgKCpwa3Rfb2N0ZXRfbGVuIC0gdGFnX2xl
biAtIHNpemVvZihzcnRjcF90cmFpbGVyX3QpIC0gbWtpX3NpemUpKTsKICAgICAgICAgaWYgKHN0
YXR1cykgewotICAgICAgICAgICAgcmV0dXJuICggc3J0cF9lcnJfc3RhdHVzX2NpcGhlcl9mYWls
KTsKKyAgICAgICAgICAgIHJldHVybiAoc3J0cF9lcnJfc3RhdHVzX2NpcGhlcl9mYWlsKTsKICAg
ICAgICAgfQogICAgIH0KKwogICAgIC8qCiAgICAgICogUHJvY2VzcyB0aGUgc2VxdWVuY2UjIGFz
IEFBRAogICAgICAqLwogICAgIHRzZXEgPSAqdHJhaWxlcjsKLSAgICBzdGF0dXMgPSBzcnRwX2Np
cGhlcl9zZXRfYWFkKHNlc3Npb25fa2V5cy0+cnRjcF9jaXBoZXIsICh1aW50OF90KikmdHNlcSwK
KyAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9zZXRfYWFkKHNlc3Npb25fa2V5cy0+cnRjcF9jaXBo
ZXIsICh1aW50OF90ICopJnRzZXEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBz
aXplb2Yoc3J0Y3BfdHJhaWxlcl90KSk7CiAgICAgaWYgKHN0YXR1cykgewotICAgICAgICByZXR1
cm4gKCBzcnRwX2Vycl9zdGF0dXNfY2lwaGVyX2ZhaWwpOworICAgICAgICByZXR1cm4gKHNydHBf
ZXJyX3N0YXR1c19jaXBoZXJfZmFpbCk7CiAgICAgfQogCi0gICAgLyogaWYgd2UncmUgZW5jcnlw
dGluZywgZXhvciBrZXlzdHJlYW0gaW50byB0aGUgbWVzc2FnZSAqLworICAgIC8qIGlmIHdlJ3Jl
IGRlY3J5cHRpbmcsIGV4b3Iga2V5c3RyZWFtIGludG8gdGhlIG1lc3NhZ2UgKi8KICAgICBpZiAo
ZW5jX3N0YXJ0KSB7Ci0gICAgICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX2VuY3J5cHQoc2Vzc2lv
bl9rZXlzLT5ydGNwX2NpcGhlciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAodWludDhfdCopZW5jX3N0YXJ0LCAmZW5jX29jdGV0X2xlbik7CisgICAgICAgIHN0YXR1cyA9
IHNydHBfY2lwaGVyX2RlY3J5cHQoc2Vzc2lvbl9rZXlzLT5ydGNwX2NpcGhlciwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAodWludDhfdCAqKWVuY19zdGFydCwgJmVuY19v
Y3RldF9sZW4pOwogICAgICAgICBpZiAoc3RhdHVzKSB7Ci0gICAgICAgICAgICByZXR1cm4gc3J0
cF9lcnJfc3RhdHVzX2NpcGhlcl9mYWlsOworICAgICAgICAgICAgcmV0dXJuIHN0YXR1czsKICAg
ICAgICAgfQorICAgIH0gZWxzZSB7CiAgICAgICAgIC8qCi0gICAgICAgICAqIEdldCB0aGUgdGFn
IGFuZCBhcHBlbmQgdGhhdCB0byB0aGUgb3V0cHV0CisgICAgICAgICAqIFN0aWxsIG5lZWQgdG8g
cnVuIHRoZSBjaXBoZXIgdG8gY2hlY2sgdGhlIHRhZwogICAgICAgICAgKi8KLSAgICAgICAgc3Rh
dHVzID0gc3J0cF9jaXBoZXJfZ2V0X3RhZyhzZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyLCAodWlu
dDhfdCopYXV0aF90YWcsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnRh
Z19sZW4pOworICAgICAgICB0bXBfbGVuID0gdGFnX2xlbjsKKyAgICAgICAgc3RhdHVzID0gc3J0
cF9jaXBoZXJfZGVjcnlwdChzZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICh1aW50OF90ICopYXV0aF90YWcsICZ0bXBfbGVuKTsK
ICAgICAgICAgaWYgKHN0YXR1cykgewotICAgICAgICAgICAgcmV0dXJuICggc3J0cF9lcnJfc3Rh
dHVzX2NpcGhlcl9mYWlsKTsKKyAgICAgICAgICAgIHJldHVybiBzdGF0dXM7CiAgICAgICAgIH0K
LSAgICAgICAgZW5jX29jdGV0X2xlbiArPSB0YWdfbGVuOwotICAgIH0gZWxzZSB7CisgICAgfQor
CisgICAgLyogZGVjcmVhc2UgdGhlIHBhY2tldCBsZW5ndGggYnkgdGhlIGxlbmd0aCBvZiB0aGUg
YXV0aCB0YWcgYW5kIHNlcV9udW0qLworICAgICpwa3Rfb2N0ZXRfbGVuIC09ICh0YWdfbGVuICsg
c2l6ZW9mKHNydGNwX3RyYWlsZXJfdCkgKyBta2lfc2l6ZSk7CisKKyAgICAvKgorICAgICAqIHZl
cmlmeSB0aGF0IHN0cmVhbSBpcyBmb3IgcmVjZWl2ZWQgdHJhZmZpYyAtIHRoaXMgY2hlY2sgd2ls
bAorICAgICAqIGRldGVjdCBTU1JDIGNvbGxpc2lvbnMsIHNpbmNlIGEgc3RyZWFtIHRoYXQgYXBw
ZWFycyBpbiBib3RoCisgICAgICogc3J0cF9wcm90ZWN0KCkgYW5kIHNydHBfdW5wcm90ZWN0KCkg
d2lsbCBmYWlsIHRoaXMgdGVzdCBpbiBvbmUgb2YKKyAgICAgKiB0aG9zZSBmdW5jdGlvbnMuCisg
ICAgICoKKyAgICAgKiB3ZSBkbyB0aGlzIGNoZWNrICphZnRlciogdGhlIGF1dGhlbnRpY2F0aW9u
IGNoZWNrLCBzbyB0aGF0IHRoZQorICAgICAqIGxhdHRlciBjaGVjayB3aWxsIGNhdGNoIGFueSBh
dHRlbXB0cyB0byBmb29sIHVzIGludG8gdGhpbmtpbmcKKyAgICAgKiB0aGF0IHdlJ3ZlIGdvdCBh
IGNvbGxpc2lvbgorICAgICAqLworICAgIGlmIChzdHJlYW0tPmRpcmVjdGlvbiAhPSBkaXJfc3J0
cF9yZWNlaXZlcikgeworICAgICAgICBpZiAoc3RyZWFtLT5kaXJlY3Rpb24gPT0gZGlyX3Vua25v
d24pIHsKKyAgICAgICAgICAgIHN0cmVhbS0+ZGlyZWN0aW9uID0gZGlyX3NydHBfcmVjZWl2ZXI7
CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICBzcnRwX2hhbmRsZV9ldmVudChjdHgsIHN0
cmVhbSwgZXZlbnRfc3NyY19jb2xsaXNpb24pOworICAgICAgICB9CisgICAgfQorCisgICAgLyoK
KyAgICAgKiBpZiB0aGUgc3RyZWFtIGlzIGEgJ3Byb3Zpc2lvbmFsJyBvbmUsIGluIHdoaWNoIHRo
ZSB0ZW1wbGF0ZSBjb250ZXh0CisgICAgICogaXMgdXNlZCwgdGhlbiB3ZSBuZWVkIHRvIGFsbG9j
YXRlIGEgbmV3IHN0cmVhbSBhdCB0aGlzIHBvaW50LCBzaW5jZQorICAgICAqIHRoZSBhdXRoZW50
aWNhdGlvbiBwYXNzZWQKKyAgICAgKi8KKyAgICBpZiAoc3RyZWFtID09IGN0eC0+c3RyZWFtX3Rl
bXBsYXRlKSB7CisgICAgICAgIHNydHBfc3RyZWFtX2N0eF90ICpuZXdfc3RyZWFtOworCiAgICAg
ICAgIC8qCi0gICAgICAgICAqIEV2ZW4gdGhvdWdoIHdlJ3JlIG5vdCBlbmNyeXB0aW5nIHRoZSBw
YXlsb2FkLCB3ZSBuZWVkCi0gICAgICAgICAqIHRvIHJ1biB0aGUgY2lwaGVyIHRvIGdldCB0aGUg
YXV0aCB0YWcuCisgICAgICAgICAqIGFsbG9jYXRlIGFuZCBpbml0aWFsaXplIGEgbmV3IHN0cmVh
bQorICAgICAgICAgKgorICAgICAgICAgKiBub3RlIHRoYXQgd2UgaW5kaWNhdGUgZmFpbHVyZSBp
ZiB3ZSBjYW4ndCBhbGxvY2F0ZSB0aGUgbmV3CisgICAgICAgICAqIHN0cmVhbSwgYW5kIHNvbWUg
aW1wbGVtZW50YXRpb25zIHdpbGwgd2FudCB0byBub3QgcmV0dXJuCisgICAgICAgICAqIGZhaWx1
cmUgaGVyZQogICAgICAgICAgKi8KLSAgICAgICAgdW5zaWduZWQgaW50IG5vbGVuID0gMDsKLSAg
ICAgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfZW5jcnlwdChzZXNzaW9uX2tleXMtPnJ0Y3BfY2lw
aGVyLCBOVUxMLCAmbm9sZW4pOworICAgICAgICBzdGF0dXMgPQorICAgICAgICAgICAgc3J0cF9z
dHJlYW1fY2xvbmUoY3R4LT5zdHJlYW1fdGVtcGxhdGUsIGhkci0+c3NyYywgJm5ld19zdHJlYW0p
OwogICAgICAgICBpZiAoc3RhdHVzKSB7CisgICAgICAgICAgICByZXR1cm4gc3RhdHVzOworICAg
ICAgICB9CisKKyAgICAgICAgLyogYWRkIG5ldyBzdHJlYW0gdG8gdGhlIGhlYWQgb2YgdGhlIHN0
cmVhbV9saXN0ICovCisgICAgICAgIG5ld19zdHJlYW0tPm5leHQgPSBjdHgtPnN0cmVhbV9saXN0
OworICAgICAgICBjdHgtPnN0cmVhbV9saXN0ID0gbmV3X3N0cmVhbTsKKworICAgICAgICAvKiBz
ZXQgc3RyZWFtICh0aGUgcG9pbnRlciB1c2VkIGluIHRoaXMgZnVuY3Rpb24pICovCisgICAgICAg
IHN0cmVhbSA9IG5ld19zdHJlYW07CisgICAgfQorCisgICAgLyogd2UndmUgcGFzc2VkIHRoZSBh
dXRoZW50aWNhdGlvbiBjaGVjaywgc28gYWRkIHNlcV9udW0gdG8gdGhlIHJkYiAqLworICAgIHNy
dHBfcmRiX2FkZF9pbmRleCgmc3RyZWFtLT5ydGNwX3JkYiwgc2VxX251bSk7CisKKyAgICByZXR1
cm4gc3J0cF9lcnJfc3RhdHVzX29rOworfQorCitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3Byb3Rl
Y3RfcnRjcChzcnRwX3QgY3R4LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
dm9pZCAqcnRjcF9oZHIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQg
KnBrdF9vY3RldF9sZW4pCit7CisgICAgcmV0dXJuIHNydHBfcHJvdGVjdF9ydGNwX21raShjdHgs
IHJ0Y3BfaGRyLCBwa3Rfb2N0ZXRfbGVuLCAwLCAwKTsKK30KKworc3J0cF9lcnJfc3RhdHVzX3Qg
c3J0cF9wcm90ZWN0X3J0Y3BfbWtpKHNydHBfdCBjdHgsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgdm9pZCAqcnRjcF9oZHIsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgaW50ICpwa3Rfb2N0ZXRfbGVuLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCB1c2VfbWtpLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBta2lfaW5kZXgpCit7Cisg
ICAgc3J0Y3BfaGRyX3QgKmhkciA9IChzcnRjcF9oZHJfdCAqKXJ0Y3BfaGRyOworICAgIHVpbnQz
Ml90ICplbmNfc3RhcnQ7ICAgICAgICAgICAgLyogcG9pbnRlciB0byBzdGFydCBvZiBlbmNyeXB0
ZWQgcG9ydGlvbiAgKi8KKyAgICB1aW50MzJfdCAqYXV0aF9zdGFydDsgICAgICAgICAgIC8qIHBv
aW50ZXIgdG8gc3RhcnQgb2YgYXV0aC4gcG9ydGlvbiAgICAgICovCisgICAgdWludDMyX3QgKnRy
YWlsZXI7ICAgICAgICAgICAgICAvKiBwb2ludGVyIHRvIHN0YXJ0IG9mIHRyYWlsZXIgICAgICAg
ICAgICAqLworICAgIHVuc2lnbmVkIGludCBlbmNfb2N0ZXRfbGVuID0gMDsgLyogbnVtYmVyIG9m
IG9jdGV0cyBpbiBlbmNyeXB0ZWQgcG9ydGlvbiAqLworICAgIHVpbnQ4X3QgKmF1dGhfdGFnID0g
TlVMTDsgICAgICAgLyogbG9jYXRpb24gb2YgYXV0aF90YWcgd2l0aGluIHBhY2tldCAgICAgKi8K
KyAgICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7CisgICAgaW50IHRhZ19sZW47CisgICAgc3J0
cF9zdHJlYW1fY3R4X3QgKnN0cmVhbTsKKyAgICB1aW50MzJfdCBwcmVmaXhfbGVuOworICAgIHVp
bnQzMl90IHNlcV9udW07CisgICAgdW5zaWduZWQgaW50IG1raV9zaXplID0gMDsKKyAgICBzcnRw
X3Nlc3Npb25fa2V5c190ICpzZXNzaW9uX2tleXMgPSBOVUxMOworCisgICAgLyogd2UgYXNzdW1l
IHRoZSBoZHIgaXMgMzItYml0IGFsaWduZWQgdG8gc3RhcnQgKi8KKworICAgIC8qIGNoZWNrIHRo
ZSBwYWNrZXQgbGVuZ3RoIC0gaXQgbXVzdCBhdCBsZWFzdCBjb250YWluIGEgZnVsbCBoZWFkZXIg
Ki8KKyAgICBpZiAoKnBrdF9vY3RldF9sZW4gPCBvY3RldHNfaW5fcnRjcF9oZWFkZXIpCisgICAg
ICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtOworCisgICAgLyoKKyAgICAgKiBs
b29rIHVwIHNzcmMgaW4gc3J0cF9zdHJlYW0gbGlzdCwgYW5kIHByb2Nlc3MgdGhlIHBhY2tldCB3
aXRoCisgICAgICogdGhlIGFwcHJvcHJpYXRlIHN0cmVhbS4gIGlmIHdlIGhhdmVuJ3Qgc2VlbiB0
aGlzIHN0cmVhbSBiZWZvcmUsCisgICAgICogdGhlcmUncyBvbmx5IG9uZSBrZXkgZm9yIHRoaXMg
c3J0cF9zZXNzaW9uLCBhbmQgdGhlIGNpcGhlcgorICAgICAqIHN1cHBvcnRzIGtleS1zaGFyaW5n
LCB0aGVuIHdlIGFzc3VtZSB0aGF0IGEgbmV3IHN0cmVhbSB1c2luZworICAgICAqIHRoYXQga2V5
IGhhcyBqdXN0IHN0YXJ0ZWQgdXAKKyAgICAgKi8KKyAgICBzdHJlYW0gPSBzcnRwX2dldF9zdHJl
YW0oY3R4LCBoZHItPnNzcmMpOworICAgIGlmIChzdHJlYW0gPT0gTlVMTCkgeworICAgICAgICBp
ZiAoY3R4LT5zdHJlYW1fdGVtcGxhdGUgIT0gTlVMTCkgeworICAgICAgICAgICAgc3J0cF9zdHJl
YW1fY3R4X3QgKm5ld19zdHJlYW07CisKKyAgICAgICAgICAgIC8qIGFsbG9jYXRlIGFuZCBpbml0
aWFsaXplIGEgbmV3IHN0cmVhbSAqLworICAgICAgICAgICAgc3RhdHVzID0KKyAgICAgICAgICAg
ICAgICBzcnRwX3N0cmVhbV9jbG9uZShjdHgtPnN0cmVhbV90ZW1wbGF0ZSwgaGRyLT5zc3JjLCAm
bmV3X3N0cmVhbSk7CisgICAgICAgICAgICBpZiAoc3RhdHVzKQorICAgICAgICAgICAgICAgIHJl
dHVybiBzdGF0dXM7CisKKyAgICAgICAgICAgIC8qIGFkZCBuZXcgc3RyZWFtIHRvIHRoZSBoZWFk
IG9mIHRoZSBzdHJlYW1fbGlzdCAqLworICAgICAgICAgICAgbmV3X3N0cmVhbS0+bmV4dCA9IGN0
eC0+c3RyZWFtX2xpc3Q7CisgICAgICAgICAgICBjdHgtPnN0cmVhbV9saXN0ID0gbmV3X3N0cmVh
bTsKKworICAgICAgICAgICAgLyogc2V0IHN0cmVhbSAodGhlIHBvaW50ZXIgdXNlZCBpbiB0aGlz
IGZ1bmN0aW9uKSAqLworICAgICAgICAgICAgc3RyZWFtID0gbmV3X3N0cmVhbTsKKyAgICAgICAg
fSBlbHNlIHsKKyAgICAgICAgICAgIC8qIG5vIHRlbXBsYXRlIHN0cmVhbSwgc28gd2UgcmV0dXJu
IGFuIGVycm9yICovCisgICAgICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX25vX2N0eDsK
KyAgICAgICAgfQorICAgIH0KKworICAgIC8qCisgICAgICogdmVyaWZ5IHRoYXQgc3RyZWFtIGlz
IGZvciBzZW5kaW5nIHRyYWZmaWMgLSB0aGlzIGNoZWNrIHdpbGwKKyAgICAgKiBkZXRlY3QgU1NS
QyBjb2xsaXNpb25zLCBzaW5jZSBhIHN0cmVhbSB0aGF0IGFwcGVhcnMgaW4gYm90aAorICAgICAq
IHNydHBfcHJvdGVjdCgpIGFuZCBzcnRwX3VucHJvdGVjdCgpIHdpbGwgZmFpbCB0aGlzIHRlc3Qg
aW4gb25lIG9mCisgICAgICogdGhvc2UgZnVuY3Rpb25zLgorICAgICAqLworICAgIGlmIChzdHJl
YW0tPmRpcmVjdGlvbiAhPSBkaXJfc3J0cF9zZW5kZXIpIHsKKyAgICAgICAgaWYgKHN0cmVhbS0+
ZGlyZWN0aW9uID09IGRpcl91bmtub3duKSB7CisgICAgICAgICAgICBzdHJlYW0tPmRpcmVjdGlv
biA9IGRpcl9zcnRwX3NlbmRlcjsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIHNydHBf
aGFuZGxlX2V2ZW50KGN0eCwgc3RyZWFtLCBldmVudF9zc3JjX2NvbGxpc2lvbik7CisgICAgICAg
IH0KKyAgICB9CisKKyAgICBzZXNzaW9uX2tleXMgPQorICAgICAgICBzcnRwX2dldF9zZXNzaW9u
X2tleXNfd2l0aF9ta2lfaW5kZXgoc3RyZWFtLCB1c2VfbWtpLCBta2lfaW5kZXgpOworCisgICAg
aWYgKHNlc3Npb25fa2V5cyA9PSBOVUxMKQorICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVz
X2JhZF9ta2k7CisKKyAgICAvKgorICAgICAqIENoZWNrIGlmIHRoaXMgaXMgYW4gQUVBRCBzdHJl
YW0gKEdDTSBtb2RlKS4gIElmIHNvLCB0aGVuIGRpc3BhdGNoCisgICAgICogdGhlIHJlcXVlc3Qg
dG8gb3VyIEFFQUQgaGFuZGxlci4KKyAgICAgKi8KKyAgICBpZiAoc2Vzc2lvbl9rZXlzLT5ydHBf
Y2lwaGVyLT5hbGdvcml0aG0gPT0gU1JUUF9BRVNfR0NNXzEyOCB8fAorICAgICAgICBzZXNzaW9u
X2tleXMtPnJ0cF9jaXBoZXItPmFsZ29yaXRobSA9PSBTUlRQX0FFU19HQ01fMjU2KSB7CisgICAg
ICAgIHJldHVybiBzcnRwX3Byb3RlY3RfcnRjcF9hZWFkKGN0eCwgc3RyZWFtLCBydGNwX2hkciwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHVuc2lnbmVkIGludCAqKXBr
dF9vY3RldF9sZW4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlc3Np
b25fa2V5cywgdXNlX21raSk7CisgICAgfQorCisgICAgLyogZ2V0IHRhZyBsZW5ndGggZnJvbSBz
dHJlYW0gY29udGV4dCAqLworICAgIHRhZ19sZW4gPSBzcnRwX2F1dGhfZ2V0X3RhZ19sZW5ndGgo
c2Vzc2lvbl9rZXlzLT5ydGNwX2F1dGgpOworCisgICAgLyoKKyAgICAgKiBzZXQgZW5jcnlwdGlv
biBzdGFydCBhbmQgZW5jcnlwdGlvbiBsZW5ndGggLSBpZiB3ZSdyZSBub3QKKyAgICAgKiBwcm92
aWRpbmcgY29uZmlkZW50aWFsaXR5LCBzZXQgZW5jX3N0YXJ0IHRvIE5VTEwKKyAgICAgKi8KKyAg
ICBlbmNfc3RhcnQgPSAodWludDMyX3QgKiloZHIgKyB1aW50MzJzX2luX3J0Y3BfaGVhZGVyOwor
ICAgIGVuY19vY3RldF9sZW4gPSAqcGt0X29jdGV0X2xlbiAtIG9jdGV0c19pbl9ydGNwX2hlYWRl
cjsKKworICAgIC8qIGFsbCBvZiB0aGUgcGFja2V0LCBleGNlcHQgdGhlIGhlYWRlciwgZ2V0cyBl
bmNyeXB0ZWQgKi8KKyAgICAvKgorICAgICAqIE5PVEU6IGhkci0+bGVuZ3RoIGlzIG5vdCB1c2Fi
bGUgLSBpdCByZWZlcnMgdG8gb25seSB0aGUgZmlyc3QgUlRDUCByZXBvcnQKKyAgICAgKiBpbiB0
aGUgY29tcG91bmQgcGFja2V0IQorICAgICAqLworICAgIC8qCisgICAgICogTk9URTogdHJhaWxl
ciBpcyAzMi1iaXQgYWxpZ25lZCBiZWNhdXNlIFJUQ1AgJ3BhY2tldHMnIGFyZSBhbHdheXMKKyAg
ICAgKiBtdWx0aXBsZXMgb2YgMzItYml0cyAoUkZDIDM1NTAgNi4xKQorICAgICAqLworICAgIHRy
YWlsZXIgPSAodWludDMyX3QgKikoKGNoYXIgKillbmNfc3RhcnQgKyBlbmNfb2N0ZXRfbGVuKTsK
KworICAgIGlmIChzdHJlYW0tPnJ0Y3Bfc2VydmljZXMgJiBzZWNfc2Vydl9jb25mKSB7CisgICAg
ICAgICp0cmFpbGVyID0gaHRvbmwoU1JUQ1BfRV9CSVQpOyAvKiBzZXQgZW5jcnlwdCBiaXQgKi8K
KyAgICB9IGVsc2UgeworICAgICAgICBlbmNfc3RhcnQgPSBOVUxMOworICAgICAgICBlbmNfb2N0
ZXRfbGVuID0gMDsKKyAgICAgICAgLyogMCBpcyBuZXR3b3JrLW9yZGVyIGluZGVwZW5kYW50ICov
CisgICAgICAgICp0cmFpbGVyID0gMHgwMDAwMDAwMDsgLyogc2V0IGVuY3J5cHQgYml0ICovCisg
ICAgfQorCisgICAgbWtpX3NpemUgPSBzcnRwX2luamVjdF9ta2koKHVpbnQ4X3QgKiloZHIgKyAq
cGt0X29jdGV0X2xlbiArCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVv
ZihzcnRjcF90cmFpbGVyX3QpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlc3Np
b25fa2V5cywgdXNlX21raSk7CisKKyAgICAvKgorICAgICAqIHNldCB0aGUgYXV0aF9zdGFydCBh
bmQgYXV0aF90YWcgcG9pbnRlcnMgdG8gdGhlIHByb3BlciBsb2NhdGlvbnMKKyAgICAgKiAobm90
ZSB0aGF0IHNydHBjICphbHdheXMqIHByb3ZpZGVzIGF1dGhlbnRpY2F0aW9uLCB1bmxpa2Ugc3J0
cCkKKyAgICAgKi8KKyAgICAvKiBOb3RlOiBUaGlzIHdvdWxkIG5lZWQgdG8gY2hhbmdlIGZvciBv
cHRpb25hbCBtaWtleSBkYXRhICovCisgICAgYXV0aF9zdGFydCA9ICh1aW50MzJfdCAqKWhkcjsK
KyAgICBhdXRoX3RhZyA9CisgICAgICAgICh1aW50OF90ICopaGRyICsgKnBrdF9vY3RldF9sZW4g
KyBzaXplb2Yoc3J0Y3BfdHJhaWxlcl90KSArIG1raV9zaXplOworCisgICAgLyogcGVyZm9ybSBF
S1QgcHJvY2Vzc2luZyBpZiBuZWVkZWQgKi8KKyAgICBzcnRwX2VrdF93cml0ZV9kYXRhKHN0cmVh
bS0+ZWt0LCBhdXRoX3RhZywgdGFnX2xlbiwgcGt0X29jdGV0X2xlbiwKKyAgICAgICAgICAgICAg
ICAgICAgICAgIHNydHBfcmRieF9nZXRfcGFja2V0X2luZGV4KCZzdHJlYW0tPnJ0cF9yZGJ4KSk7
CisKKyAgICAvKgorICAgICAqIGNoZWNrIHNlcXVlbmNlIG51bWJlciBmb3Igb3ZlcnJ1bnMsIGFu
ZCBjb3B5IGl0IGludG8gdGhlIHBhY2tldAorICAgICAqIGlmIGl0cyB2YWx1ZSBpc24ndCB0b28g
YmlnCisgICAgICovCisgICAgc3RhdHVzID0gc3J0cF9yZGJfaW5jcmVtZW50KCZzdHJlYW0tPnJ0
Y3BfcmRiKTsKKyAgICBpZiAoc3RhdHVzKQorICAgICAgICByZXR1cm4gc3RhdHVzOworICAgIHNl
cV9udW0gPSBzcnRwX3JkYl9nZXRfdmFsdWUoJnN0cmVhbS0+cnRjcF9yZGIpOworICAgICp0cmFp
bGVyIHw9IGh0b25sKHNlcV9udW0pOworICAgIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAic3J0Y3Ag
aW5kZXg6ICV4Iiwgc2VxX251bSk7CisKKyAgICAvKgorICAgICAqIGlmIHdlJ3JlIHVzaW5nIHJp
bmRhZWwgY291bnRlciBtb2RlLCBzZXQgbm9uY2UgYW5kIHNlcQorICAgICAqLworICAgIGlmIChz
ZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyLT50eXBlLT5pZCA9PSBTUlRQX0FFU19JQ01fMTI4IHx8
CisgICAgICAgIHNlc3Npb25fa2V5cy0+cnRjcF9jaXBoZXItPnR5cGUtPmlkID09IFNSVFBfQUVT
X0lDTV8xOTIgfHwKKyAgICAgICAgc2Vzc2lvbl9rZXlzLT5ydGNwX2NpcGhlci0+dHlwZS0+aWQg
PT0gU1JUUF9BRVNfSUNNXzI1NikgeworICAgICAgICB2MTI4X3QgaXY7CisKKyAgICAgICAgaXYu
djMyWzBdID0gMDsKKyAgICAgICAgaXYudjMyWzFdID0gaGRyLT5zc3JjOyAvKiBzdGlsbCBpbiBu
ZXR3b3JrIG9yZGVyISAqLworICAgICAgICBpdi52MzJbMl0gPSBodG9ubChzZXFfbnVtID4+IDE2
KTsKKyAgICAgICAgaXYudjMyWzNdID0gaHRvbmwoc2VxX251bSA8PCAxNik7CisgICAgICAgIHN0
YXR1cyA9IHNydHBfY2lwaGVyX3NldF9pdihzZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyLCAodWlu
dDhfdCAqKSZpdiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfZGly
ZWN0aW9uX2VuY3J5cHQpOworCisgICAgfSBlbHNlIHsKKyAgICAgICAgdjEyOF90IGl2OworCisg
ICAgICAgIC8qIG90aGVyd2lzZSwganVzdCBzZXQgdGhlIGluZGV4IHRvIHNlcV9udW0gKi8KKyAg
ICAgICAgaXYudjMyWzBdID0gMDsKKyAgICAgICAgaXYudjMyWzFdID0gMDsKKyAgICAgICAgaXYu
djMyWzJdID0gMDsKKyAgICAgICAgaXYudjMyWzNdID0gaHRvbmwoc2VxX251bSk7CisgICAgICAg
IHN0YXR1cyA9IHNydHBfY2lwaGVyX3NldF9pdihzZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyLCAo
dWludDhfdCAqKSZpdiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNydHBf
ZGlyZWN0aW9uX2VuY3J5cHQpOworICAgIH0KKyAgICBpZiAoc3RhdHVzKQorICAgICAgICByZXR1
cm4gc3J0cF9lcnJfc3RhdHVzX2NpcGhlcl9mYWlsOworCisgICAgLyoKKyAgICAgKiBpZiB3ZSdy
ZSBhdXRoZW50aWNhdGluZyB1c2luZyBhIHVuaXZlcnNhbCBoYXNoLCBwdXQgdGhlIGtleXN0cmVh
bQorICAgICAqIHByZWZpeCBpbnRvIHRoZSBhdXRoZW50aWNhdGlvbiB0YWcKKyAgICAgKi8KKwor
ICAgIC8qIGlmIGF1dGhfc3RhcnQgaXMgbm9uLW51bGwsIHRoZW4gcHV0IGtleXN0cmVhbSBpbnRv
IHRhZyAgKi8KKyAgICBpZiAoYXV0aF9zdGFydCkgeworICAgICAgICAvKiBwdXQga2V5c3RyZWFt
IHByZWZpeCBpbnRvIGF1dGhfdGFnICovCisgICAgICAgIHByZWZpeF9sZW4gPSBzcnRwX2F1dGhf
Z2V0X3ByZWZpeF9sZW5ndGgoc2Vzc2lvbl9rZXlzLT5ydGNwX2F1dGgpOworICAgICAgICBzdGF0
dXMgPSBzcnRwX2NpcGhlcl9vdXRwdXQoc2Vzc2lvbl9rZXlzLT5ydGNwX2NpcGhlciwgYXV0aF90
YWcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmcHJlZml4X2xlbik7CisK
KyAgICAgICAgZGVidWdfcHJpbnQobW9kX3NydHAsICJrZXlzdHJlYW0gcHJlZml4OiAlcyIsCisg
ICAgICAgICAgICAgICAgICAgIHNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcoYXV0aF90YWcs
IHByZWZpeF9sZW4pKTsKKworICAgICAgICBpZiAoc3RhdHVzKQorICAgICAgICAgICAgcmV0dXJu
IHNydHBfZXJyX3N0YXR1c19jaXBoZXJfZmFpbDsKKyAgICB9CisKKyAgICAvKiBpZiB3ZSdyZSBl
bmNyeXB0aW5nLCBleG9yIGtleXN0cmVhbSBpbnRvIHRoZSBtZXNzYWdlICovCisgICAgaWYgKGVu
Y19zdGFydCkgeworICAgICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9lbmNyeXB0KHNlc3Npb25f
a2V5cy0+cnRjcF9jaXBoZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
KHVpbnQ4X3QgKillbmNfc3RhcnQsICZlbmNfb2N0ZXRfbGVuKTsKKyAgICAgICAgaWYgKHN0YXR1
cykKICAgICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfY2lwaGVyX2ZhaWw7Ci0gICAg
ICAgIH0KLSAgICAgICAgLyoKLSAgICAgICAgICogR2V0IHRoZSB0YWcgYW5kIGFwcGVuZCB0aGF0
IHRvIHRoZSBvdXRwdXQKLSAgICAgICAgICovCi0gICAgICAgIHN0YXR1cyA9IHNydHBfY2lwaGVy
X2dldF90YWcoc2Vzc2lvbl9rZXlzLT5ydGNwX2NpcGhlciwgKHVpbnQ4X3QqKWF1dGhfdGFnLAot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZ0YWdfbGVuKTsKLSAgICAgICAg
aWYgKHN0YXR1cykgewotICAgICAgICAgICAgcmV0dXJuICggc3J0cF9lcnJfc3RhdHVzX2NpcGhl
cl9mYWlsKTsKLSAgICAgICAgfQotICAgICAgICBlbmNfb2N0ZXRfbGVuICs9IHRhZ19sZW47CiAg
ICAgfQogCisgICAgLyogaW5pdGlhbGl6ZSBhdXRoIGZ1bmMgY29udGV4dCAqLworICAgIHNydHBf
YXV0aF9zdGFydChzZXNzaW9uX2tleXMtPnJ0Y3BfYXV0aCk7CisKKyAgICAvKgorICAgICAqIHJ1
biBhdXRoIGZ1bmMgb3ZlciBwYWNrZXQgKGluY2x1ZGluZyB0cmFpbGVyKSwgYW5kIHdyaXRlIHRo
ZQorICAgICAqIHJlc3VsdCBhdCBhdXRoX3RhZworICAgICAqLworICAgIHN0YXR1cyA9CisgICAg
ICAgIHNydHBfYXV0aF9jb21wdXRlKHNlc3Npb25fa2V5cy0+cnRjcF9hdXRoLCAodWludDhfdCAq
KWF1dGhfc3RhcnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICgqcGt0X29jdGV0X2xlbikg
KyBzaXplb2Yoc3J0Y3BfdHJhaWxlcl90KSwgYXV0aF90YWcpOworICAgIGRlYnVnX3ByaW50KG1v
ZF9zcnRwLCAic3J0Y3AgYXV0aCB0YWc6ICAgICVzIiwKKyAgICAgICAgICAgICAgICBzcnRwX29j
dGV0X3N0cmluZ19oZXhfc3RyaW5nKGF1dGhfdGFnLCB0YWdfbGVuKSk7CisgICAgaWYgKHN0YXR1
cykKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19hdXRoX2ZhaWw7CisKICAgICAvKiBp
bmNyZWFzZSB0aGUgcGFja2V0IGxlbmd0aCBieSB0aGUgbGVuZ3RoIG9mIHRoZSBhdXRoIHRhZyBh
bmQgc2VxX251bSovCiAgICAgKnBrdF9vY3RldF9sZW4gKz0gKHRhZ19sZW4gKyBzaXplb2Yoc3J0
Y3BfdHJhaWxlcl90KSk7CiAKQEAgLTM2MzEsNjQgKzQwODMsMTg2IEBAIHNydHBfcHJvdGVjdF9y
dGNwX2FlYWQgKHNydHBfdCBjdHgsIHNydHBfc3RyZWFtX2N0eF90ICpzdHJlYW0sCiAgICAgcmV0
dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0KIAotLyoKLSAqIFRoaXMgZnVuY3Rpb24gaGFuZGxl
cyBpbmNvbWluZyBTUlRDUCBwYWNrZXRzIHdoaWxlIGluIEFFQUQgbW9kZSwKLSAqIHdoaWNoIGN1
cnJlbnRseSBzdXBwb3J0cyBBRVMtR0NNIGVuY3J5cHRpb24uICBOb3RlLCB0aGUgYXV0aCB0YWcg
aXMgCi0gKiBhdCB0aGUgZW5kIG9mIHRoZSBwYWNrZXQgc3RyZWFtIGFuZCBpcyBhdXRvbWF0aWNh
bGx5IGNoZWNrZWQgYnkgR0NNCi0gKiB3aGVuIGRlY3J5cHRpbmcgdGhlIHBheWxvYWQuCi0gKi8K
LXN0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdAotc3J0cF91bnByb3RlY3RfcnRjcF9hZWFkIChzcnRw
X3QgY3R4LCBzcnRwX3N0cmVhbV9jdHhfdCAqc3RyZWFtLCAKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgdm9pZCAqc3J0Y3BfaGRyLCB1bnNpZ25lZCBpbnQgKnBrdF9vY3RldF9sZW4sCi0gICAg
ICAgICAgICAgICAgICAgICAgICAgIHNydHBfc2Vzc2lvbl9rZXlzX3QgKnNlc3Npb25fa2V5cywg
dW5zaWduZWQgaW50IHVzZV9ta2kpCitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3VucHJvdGVjdF9y
dGNwKHNydHBfdCBjdHgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZv
aWQgKnNydGNwX2hkciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50
ICpwa3Rfb2N0ZXRfbGVuKQoreworICAgIHJldHVybiBzcnRwX3VucHJvdGVjdF9ydGNwX21raShj
dHgsIHNydGNwX2hkciwgcGt0X29jdGV0X2xlbiwgMCk7Cit9CisKK3NydHBfZXJyX3N0YXR1c190
IHNydHBfdW5wcm90ZWN0X3J0Y3BfbWtpKHNydHBfdCBjdHgsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB2b2lkICpzcnRjcF9oZHIsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgKnBrdF9vY3RldF9sZW4sCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgdXNlX21raSkKIHsK
LSAgICBzcnRjcF9oZHJfdCAqaGRyID0gKHNydGNwX2hkcl90KilzcnRjcF9oZHI7Ci0gICAgdWlu
dDMyX3QgKmVuY19zdGFydDsgICAgICAgIC8qIHBvaW50ZXIgdG8gc3RhcnQgb2YgZW5jcnlwdGVk
IHBvcnRpb24gICovCi0gICAgdWludDMyX3QgKnRyYWlsZXI7ICAgICAgICAgIC8qIHBvaW50ZXIg
dG8gc3RhcnQgb2YgdHJhaWxlciAgICAgICAgICAgICovCisgICAgc3J0Y3BfaGRyX3QgKmhkciA9
IChzcnRjcF9oZHJfdCAqKXNydGNwX2hkcjsKKyAgICB1aW50MzJfdCAqZW5jX3N0YXJ0OyAgICAg
ICAgICAgIC8qIHBvaW50ZXIgdG8gc3RhcnQgb2YgZW5jcnlwdGVkIHBvcnRpb24gICovCisgICAg
dWludDMyX3QgKmF1dGhfc3RhcnQ7ICAgICAgICAgICAvKiBwb2ludGVyIHRvIHN0YXJ0IG9mIGF1
dGguIHBvcnRpb24gICAgICAqLworICAgIHVpbnQzMl90ICp0cmFpbGVyOyAgICAgICAgICAgICAg
LyogcG9pbnRlciB0byBzdGFydCBvZiB0cmFpbGVyICAgICAgICAgICAgKi8KICAgICB1bnNpZ25l
ZCBpbnQgZW5jX29jdGV0X2xlbiA9IDA7IC8qIG51bWJlciBvZiBvY3RldHMgaW4gZW5jcnlwdGVk
IHBvcnRpb24gKi8KLSAgICB1aW50OF90ICphdXRoX3RhZyA9IE5VTEw7ICAgLyogbG9jYXRpb24g
b2YgYXV0aF90YWcgd2l0aGluIHBhY2tldCAgICAgKi8KKyAgICB1aW50OF90ICphdXRoX3RhZyA9
IE5VTEw7ICAgICAgIC8qIGxvY2F0aW9uIG9mIGF1dGhfdGFnIHdpdGhpbiBwYWNrZXQgICAgICov
CisgICAgdWludDhfdCB0bXBfdGFnW1NSVFBfTUFYX1RBR19MRU5dOworICAgIHVpbnQ4X3QgdGFn
X2NvcHlbU1JUUF9NQVhfVEFHX0xFTl07CiAgICAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVzOwor
ICAgIHVuc2lnbmVkIGludCBhdXRoX2xlbjsKICAgICBpbnQgdGFnX2xlbjsKLSAgICB1bnNpZ25l
ZCBpbnQgdG1wX2xlbjsKKyAgICBzcnRwX3N0cmVhbV9jdHhfdCAqc3RyZWFtOworICAgIHVpbnQz
Ml90IHByZWZpeF9sZW47CiAgICAgdWludDMyX3Qgc2VxX251bTsKLSAgICB2MTI4X3QgaXY7Ci0g
ICAgdWludDMyX3QgdHNlcTsKKyAgICBpbnQgZV9iaXRfaW5fcGFja2V0OyAvKiB3aGV0aGVyIHRo
ZSBFLWJpdCB3YXMgZm91bmQgaW4gdGhlIHBhY2tldCAqLworICAgIGludCBzZWNfc2Vydl9jb25m
aWRlbnRpYWxpdHk7IC8qIHdoZXRoZXIgY29uZmlkZW50aWFsaXR5IHdhcyByZXF1ZXN0ZWQgKi8K
ICAgICB1bnNpZ25lZCBpbnQgbWtpX3NpemUgPSAwOworICAgIHNydHBfc2Vzc2lvbl9rZXlzX3Qg
KnNlc3Npb25fa2V5cyA9IE5VTEw7CisKKyAgICAvKiB3ZSBhc3N1bWUgdGhlIGhkciBpcyAzMi1i
aXQgYWxpZ25lZCB0byBzdGFydCAqLworCisgICAgaWYgKCpwa3Rfb2N0ZXRfbGVuIDwgMCkKKyAg
ICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW07CisKKyAgICAvKgorICAgICAq
IGNoZWNrIHRoYXQgdGhlIGxlbmd0aCB2YWx1ZSBpcyBzYW5lOyB3ZSdsbCBjaGVjayBhZ2FpbiBv
bmNlIHdlCisgICAgICoga25vdyB0aGUgdGFnIGxlbmd0aCwgYnV0IHdlIGF0IGxlYXN0IHdhbnQg
dG8ga25vdyB0aGF0IGl0IGlzCisgICAgICogYSBwb3NpdGl2ZSB2YWx1ZQorICAgICAqLworICAg
IGlmICgodW5zaWduZWQgaW50KSgqcGt0X29jdGV0X2xlbikgPAorICAgICAgICBvY3RldHNfaW5f
cnRjcF9oZWFkZXIgKyBzaXplb2Yoc3J0Y3BfdHJhaWxlcl90KSkKKyAgICAgICAgcmV0dXJuIHNy
dHBfZXJyX3N0YXR1c19iYWRfcGFyYW07CisKKyAgICAvKgorICAgICAqIGxvb2sgdXAgc3NyYyBp
biBzcnRwX3N0cmVhbSBsaXN0LCBhbmQgcHJvY2VzcyB0aGUgcGFja2V0IHdpdGgKKyAgICAgKiB0
aGUgYXBwcm9wcmlhdGUgc3RyZWFtLiAgaWYgd2UgaGF2ZW4ndCBzZWVuIHRoaXMgc3RyZWFtIGJl
Zm9yZSwKKyAgICAgKiB0aGVyZSdzIG9ubHkgb25lIGtleSBmb3IgdGhpcyBzcnRwX3Nlc3Npb24s
IGFuZCB0aGUgY2lwaGVyCisgICAgICogc3VwcG9ydHMga2V5LXNoYXJpbmcsIHRoZW4gd2UgYXNz
dW1lIHRoYXQgYSBuZXcgc3RyZWFtIHVzaW5nCisgICAgICogdGhhdCBrZXkgaGFzIGp1c3Qgc3Rh
cnRlZCB1cAorICAgICAqLworICAgIHN0cmVhbSA9IHNydHBfZ2V0X3N0cmVhbShjdHgsIGhkci0+
c3NyYyk7CisgICAgaWYgKHN0cmVhbSA9PSBOVUxMKSB7CisgICAgICAgIGlmIChjdHgtPnN0cmVh
bV90ZW1wbGF0ZSAhPSBOVUxMKSB7CisgICAgICAgICAgICBzdHJlYW0gPSBjdHgtPnN0cmVhbV90
ZW1wbGF0ZTsKKworICAgICAgICAgICAgLyoKKyAgICAgICAgICAgICAqIGNoZWNrIHRvIHNlZSBp
ZiBzdHJlYW1fdGVtcGxhdGUgaGFzIGFuIEVLVCBkYXRhIHN0cnVjdHVyZSwgaW4KKyAgICAgICAg
ICAgICAqIHdoaWNoIGNhc2Ugd2UgaW5pdGlhbGl6ZSB0aGUgdGVtcGxhdGUgdXNpbmcgdGhlIEVL
VCBwb2xpY3kKKyAgICAgICAgICAgICAqIHJlZmVyZW5jZWQgYnkgdGhhdCBkYXRhICh3aGljaCBj
b25zaXN0cyBvZiBkZWNyeXB0aW5nIHRoZQorICAgICAgICAgICAgICogbWFzdGVyIGtleSBmcm9t
IHRoZSBFS1QgZmllbGQpCisgICAgICAgICAgICAgKgorICAgICAgICAgICAgICogdGhpcyBmdW5j
dGlvbiBpbml0aWFsaXplcyBhICpwcm92aXNpb25hbCogc3RyZWFtLCBhbmQgdGhpcworICAgICAg
ICAgICAgICogc3RyZWFtIHNob3VsZCBub3QgYmUgYWNjZXB0ZWQgdW50aWwgYW5kIHVubGVzcyB0
aGUgcGFja2V0CisgICAgICAgICAgICAgKiBwYXNzZXMgaXRzIGF1dGhlbnRpY2F0aW9uIGNoZWNr
CisgICAgICAgICAgICAgKi8KKyAgICAgICAgICAgIGlmIChzdHJlYW0tPmVrdCAhPSBOVUxMKSB7
CisgICAgICAgICAgICAgICAgc3RhdHVzID0gc3J0cF9zdHJlYW1faW5pdF9mcm9tX2VrdChzdHJl
YW0sIHNydGNwX2hkciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICpwa3Rfb2N0ZXRfbGVuKTsKKyAgICAgICAgICAgICAgICBpZiAoc3RhdHVzKQor
ICAgICAgICAgICAgICAgICAgICByZXR1cm4gc3RhdHVzOworICAgICAgICAgICAgfQorCisgICAg
ICAgICAgICBkZWJ1Z19wcmludChtb2Rfc3J0cCwKKyAgICAgICAgICAgICAgICAgICAgICAgICJz
cnRjcCB1c2luZyBwcm92aXNpb25hbCBzdHJlYW0gKFNTUkM6IDB4JTA4eCkiLAorICAgICAgICAg
ICAgICAgICAgICAgICAgbnRvaGwoaGRyLT5zc3JjKSk7CisgICAgICAgIH0gZWxzZSB7CisgICAg
ICAgICAgICAvKiBubyB0ZW1wbGF0ZSBzdHJlYW0sIHNvIHdlIHJldHVybiBhbiBlcnJvciAqLwor
ICAgICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19ub19jdHg7CisgICAgICAgIH0KKyAg
ICB9CisKKyAgICAvKgorICAgICAqIERldGVybWluZSBpZiBNS0kgaXMgYmVpbmcgdXNlZCBhbmQg
d2hhdCBzZXNzaW9uIGtleXMgc2hvdWxkIGJlIHVzZWQKKyAgICAgKi8KKyAgICBpZiAodXNlX21r
aSkgeworICAgICAgICBzZXNzaW9uX2tleXMgPSBzcnRwX2dldF9zZXNzaW9uX2tleXMoCisgICAg
ICAgICAgICBzdHJlYW0sICh1aW50OF90ICopaGRyLCAoY29uc3QgdW5zaWduZWQgaW50ICopcGt0
X29jdGV0X2xlbiwKKyAgICAgICAgICAgICZta2lfc2l6ZSk7CisKKyAgICAgICAgaWYgKHNlc3Np
b25fa2V5cyA9PSBOVUxMKQorICAgICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRf
bWtpOworICAgIH0gZWxzZSB7CisgICAgICAgIHNlc3Npb25fa2V5cyA9ICZzdHJlYW0tPnNlc3Np
b25fa2V5c1swXTsKKyAgICB9CiAKICAgICAvKiBnZXQgdGFnIGxlbmd0aCBmcm9tIHN0cmVhbSBj
b250ZXh0ICovCiAgICAgdGFnX2xlbiA9IHNydHBfYXV0aF9nZXRfdGFnX2xlbmd0aChzZXNzaW9u
X2tleXMtPnJ0Y3BfYXV0aCk7CiAKLSAgICBpZiAodXNlX21raSkgewotICAgICAgbWtpX3NpemUg
PSBzZXNzaW9uX2tleXMtPm1raV9zaXplOworICAgIC8qIGNoZWNrIHRoZSBwYWNrZXQgbGVuZ3Ro
IC0gaXQgbXVzdCBjb250YWluIGF0IGxlYXN0IGEgZnVsbCBSVENQCisgICAgICAgaGVhZGVyLCBh
biBhdXRoIHRhZyAoaWYgYXBwbGljYWJsZSksIGFuZCB0aGUgU1JUQ1AgZW5jcnlwdGVkIGZsYWcK
KyAgICAgICBhbmQgMzEtYml0IGluZGV4IHZhbHVlICovCisgICAgaWYgKCpwa3Rfb2N0ZXRfbGVu
IDwgKGludCkob2N0ZXRzX2luX3J0Y3BfaGVhZGVyICsgdGFnX2xlbiArIG1raV9zaXplICsKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplb2Yoc3J0Y3BfdHJhaWxlcl90KSkpIHsK
KyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW07CisgICAgfQorCisgICAg
LyoKKyAgICAgKiBDaGVjayBpZiB0aGlzIGlzIGFuIEFFQUQgc3RyZWFtIChHQ00gbW9kZSkuICBJ
ZiBzbywgdGhlbiBkaXNwYXRjaAorICAgICAqIHRoZSByZXF1ZXN0IHRvIG91ciBBRUFEIGhhbmRs
ZXIuCisgICAgICovCisgICAgaWYgKHNlc3Npb25fa2V5cy0+cnRwX2NpcGhlci0+YWxnb3JpdGht
ID09IFNSVFBfQUVTX0dDTV8xMjggfHwKKyAgICAgICAgc2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVy
LT5hbGdvcml0aG0gPT0gU1JUUF9BRVNfR0NNXzI1NikgeworICAgICAgICByZXR1cm4gc3J0cF91
bnByb3RlY3RfcnRjcF9hZWFkKGN0eCwgc3RyZWFtLCBzcnRjcF9oZHIsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgKHVuc2lnbmVkIGludCAqKXBrdF9vY3RldF9sZW4s
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2Vzc2lvbl9rZXlzLCBt
a2lfc2l6ZSk7CiAgICAgfQogCisgICAgc2VjX3NlcnZfY29uZmlkZW50aWFsaXR5ID0gc3RyZWFt
LT5ydGNwX3NlcnZpY2VzID09IHNlY19zZXJ2X2NvbmYgfHwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBzdHJlYW0tPnJ0Y3Bfc2VydmljZXMgPT0gc2VjX3NlcnZfY29uZl9hbmRfYXV0
aDsKKwogICAgIC8qCiAgICAgICogc2V0IGVuY3J5cHRpb24gc3RhcnQsIGVuY3J5cHRpb24gbGVu
Z3RoLCBhbmQgdHJhaWxlcgogICAgICAqLwotICAgIC8qIGluZGV4ICYgRSAoZW5jcnlwdGlvbikg
Yml0IGZvbGxvdyBub3JtYWwgZGF0YS4gIGhkci0+bGVuCi0gICAgICAgICAgIGlzIHRoZSBudW1i
ZXIgb2Ygd29yZHMgKDMyLWJpdCkgaW4gdGhlIG5vcm1hbCBwYWNrZXQgbWludXMgMSAqLwotICAg
IC8qIFRoaXMgc2hvdWxkIHBvaW50IHRyYWlsZXIgdG8gdGhlIHdvcmQgcGFzdCB0aGUgZW5kIG9m
IHRoZQotICAgICAgICAgICBub3JtYWwgZGF0YS4gKi8KLSAgICAvKiBUaGlzIHdvdWxkIG5lZWQg
dG8gYmUgbW9kaWZpZWQgZm9yIG9wdGlvbmFsIG1pa2V5IGRhdGEgKi8KKyAgICBlbmNfb2N0ZXRf
bGVuID0gKnBrdF9vY3RldF9sZW4gLSAob2N0ZXRzX2luX3J0Y3BfaGVhZGVyICsgdGFnX2xlbiAr
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1raV9zaXplICsgc2l6ZW9m
KHNydGNwX3RyYWlsZXJfdCkpOwogICAgIC8qCi0gICAgICogTk9URTogdHJhaWxlciBpcyAzMi1i
aXQgYWxpZ25lZCBiZWNhdXNlIFJUQ1AgJ3BhY2tldHMnIGFyZSBhbHdheXMKLSAgICAgKgkgbXVs
dGlwbGVzIG9mIDMyLWJpdHMgKFJGQyAzNTUwIDYuMSkKKyAgICAgKmluZGV4ICYgRSAoZW5jcnlw
dGlvbikgYml0IGZvbGxvdyBub3JtYWwgZGF0YS4gaGRyLT5sZW4gaXMgdGhlIG51bWJlciBvZgor
ICAgICAqIHdvcmRzICgzMi1iaXQpIGluIHRoZSBub3JtYWwgcGFja2V0IG1pbnVzIDEKICAgICAg
Ki8KLSAgICB0cmFpbGVyID0gKHVpbnQzMl90KikoKGNoYXIqKWhkciArICpwa3Rfb2N0ZXRfbGVu
IC0gc2l6ZW9mKHNydGNwX3RyYWlsZXJfdCkgLSBta2lfc2l6ZSk7CisgICAgLyogVGhpcyBzaG91
bGQgcG9pbnQgdHJhaWxlciB0byB0aGUgd29yZCBwYXN0IHRoZSBlbmQgb2YgdGhlIG5vcm1hbCBk
YXRhLiAqLworICAgIC8qIFRoaXMgd291bGQgbmVlZCB0byBiZSBtb2RpZmllZCBmb3Igb3B0aW9u
YWwgbWlrZXkgZGF0YSAqLwogICAgIC8qCi0gICAgICogV2UgcGFzcyB0aGUgdGFnIGRvd24gdG8g
dGhlIGNpcGhlciB3aGVuIGRvaW5nIEdDTSBtb2RlIAorICAgICAqIE5PVEU6IHRyYWlsZXIgaXMg
MzItYml0IGFsaWduZWQgYmVjYXVzZSBSVENQICdwYWNrZXRzJyBhcmUgYWx3YXlzCisgICAgICog
ICBtdWx0aXBsZXMgb2YgMzItYml0cyAoUkZDIDM1NTAgNi4xKQogICAgICAqLwotICAgIGVuY19v
Y3RldF9sZW4gPSAqcGt0X29jdGV0X2xlbiAtIChvY3RldHNfaW5fcnRjcF9oZWFkZXIgKyAKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZW9mKHNydGNwX3RyYWlsZXJf
dCkgKyBta2lfc2l6ZSk7Ci0gICAgYXV0aF90YWcgPSAodWludDhfdCopaGRyICsgKnBrdF9vY3Rl
dF9sZW4gLSB0YWdfbGVuIC0gbWtpX3NpemUgLSBzaXplb2Yoc3J0Y3BfdHJhaWxlcl90KTsKLQot
ICAgIGlmICgqKCh1bnNpZ25lZCBjaGFyKil0cmFpbGVyKSAmIFNSVENQX0VfQllURV9CSVQpIHsK
LSAgICAgICAgZW5jX3N0YXJ0ID0gKHVpbnQzMl90KiloZHIgKyB1aW50MzJzX2luX3J0Y3BfaGVh
ZGVyOworICAgIHRyYWlsZXIgPSAodWludDMyX3QgKikoKGNoYXIgKiloZHIgKyAqcGt0X29jdGV0
X2xlbiAtCisgICAgICAgICAgICAgICAgICAgICAgICAgICAodGFnX2xlbiArIG1raV9zaXplICsg
c2l6ZW9mKHNydGNwX3RyYWlsZXJfdCkpKTsKKyAgICBlX2JpdF9pbl9wYWNrZXQgPQorICAgICAg
ICAoKigodW5zaWduZWQgY2hhciAqKXRyYWlsZXIpICYgU1JUQ1BfRV9CWVRFX0JJVCkgPT0gU1JU
Q1BfRV9CWVRFX0JJVDsKKyAgICBpZiAoZV9iaXRfaW5fcGFja2V0ICE9IHNlY19zZXJ2X2NvbmZp
ZGVudGlhbGl0eSkgeworICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2NhbnRfY2hlY2s7
CisgICAgfQorICAgIGlmIChzZWNfc2Vydl9jb25maWRlbnRpYWxpdHkpIHsKKyAgICAgICAgZW5j
X3N0YXJ0ID0gKHVpbnQzMl90ICopaGRyICsgdWludDMyc19pbl9ydGNwX2hlYWRlcjsKICAgICB9
IGVsc2UgewogICAgICAgICBlbmNfb2N0ZXRfbGVuID0gMDsKICAgICAgICAgZW5jX3N0YXJ0ID0g
TlVMTDsgLyogdGhpcyBpbmRpY2F0ZXMgdGhhdCB0aGVyZSdzIG5vIGVuY3J5cHRpb24gKi8KICAg
ICB9CiAKKyAgICAvKgorICAgICAqIHNldCB0aGUgYXV0aF9zdGFydCBhbmQgYXV0aF90YWcgcG9p
bnRlcnMgdG8gdGhlIHByb3BlciBsb2NhdGlvbnMKKyAgICAgKiAobm90ZSB0aGF0IHNydGNwICph
bHdheXMqIHVzZXMgYXV0aGVudGljYXRpb24sIHVubGlrZSBzcnRwKQorICAgICAqLworICAgIGF1
dGhfc3RhcnQgPSAodWludDMyX3QgKiloZHI7CisKKyAgICAvKgorICAgICAqIFRoZSBsb2NhdGlv
biBvZiB0aGUgYXV0aCB0YWcgaW4gdGhlIHBhY2tldCBuZWVkcyB0byBrbm93IE1LSQorICAgICAq
IGNvdWxkIGJlIHByZXNlbnQuICBUaGUgZGF0YSBuZWVkZWQgdG8gY2FsY3VsYXRlIHRoZSBBdXRo
IHRhZworICAgICAqIG11c3Qgbm90IGluY2x1ZGUgdGhlIE1LSQorICAgICAqLworICAgIGF1dGhf
bGVuID0gKnBrdF9vY3RldF9sZW4gLSB0YWdfbGVuIC0gbWtpX3NpemU7CisgICAgYXV0aF90YWcg
PSAodWludDhfdCAqKWhkciArIGF1dGhfbGVuICsgbWtpX3NpemU7CisKKyAgICAvKgorICAgICAq
IGlmIEVLVCBpcyBpbiB1c2UsIHRoZW4gd2UgbWFrZSBhIGNvcHkgb2YgdGhlIHRhZyBmcm9tIHRo
ZSBwYWNrZXQsCisgICAgICogYW5kIHRoZW4gemVyb2l6ZSB0aGUgbG9jYXRpb24gb2YgdGhlIGJh
c2UgdGFnCisgICAgICoKKyAgICAgKiB3ZSBmaXJzdCByZS1wb3NpdGlvbiB0aGUgYXV0aF90YWcg
cG9pbnRlciBzbyB0aGF0IGl0IHBvaW50cyB0bworICAgICAqIHRoZSBiYXNlIHRhZworICAgICAq
LworICAgIGlmIChzdHJlYW0tPmVrdCkgeworICAgICAgICBhdXRoX3RhZyAtPSBzcnRwX2VrdF9v
Y3RldHNfYWZ0ZXJfYmFzZV90YWcoc3RyZWFtLT5la3QpOworICAgICAgICBtZW1jcHkodGFnX2Nv
cHksIGF1dGhfdGFnLCB0YWdfbGVuKTsKKyAgICAgICAgb2N0ZXRfc3RyaW5nX3NldF90b196ZXJv
KGF1dGhfdGFnLCB0YWdfbGVuKTsKKyAgICAgICAgYXV0aF90YWcgPSB0YWdfY29weTsKKyAgICAg
ICAgYXV0aF9sZW4gKz0gdGFnX2xlbjsKKyAgICB9CisKICAgICAvKgogICAgICAqIGNoZWNrIHRo
ZSBzZXF1ZW5jZSBudW1iZXIgZm9yIHJlcGxheXMKICAgICAgKi8KQEAgLTM2OTYsNzkgKzQyNzAs
ODggQEAgc3J0cF91bnByb3RlY3RfcnRjcF9hZWFkIChzcnRwX3QgY3R4LCBzcnRwX3N0cmVhbV9j
dHhfdCAqc3RyZWFtLAogICAgIHNlcV9udW0gPSBudG9obCgqdHJhaWxlcikgJiBTUlRDUF9JTkRF
WF9NQVNLOwogICAgIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAic3J0Y3AgaW5kZXg6ICV4Iiwgc2Vx
X251bSk7CiAgICAgc3RhdHVzID0gc3J0cF9yZGJfY2hlY2soJnN0cmVhbS0+cnRjcF9yZGIsIHNl
cV9udW0pOwotICAgIGlmIChzdGF0dXMpIHsKKyAgICBpZiAoc3RhdHVzKQogICAgICAgICByZXR1
cm4gc3RhdHVzOwotICAgIH0KIAogICAgIC8qCi0gICAgICogQ2FsY3VsYXRlIGFuZCBzZXQgdGhl
IElWCisgICAgICogaWYgd2UncmUgdXNpbmcgYWVzIGNvdW50ZXIgbW9kZSwgc2V0IG5vbmNlIGFu
ZCBzZXEKICAgICAgKi8KLSAgICBzdGF0dXMgPSBzcnRwX2NhbGNfYWVhZF9pdl9zcnRjcChzZXNz
aW9uX2tleXMsICZpdiwgc2VxX251bSwgaGRyKTsKLSAgICBpZiAoc3RhdHVzKSB7Ci0gICAgICAg
IHJldHVybiBzcnRwX2Vycl9zdGF0dXNfY2lwaGVyX2ZhaWw7Ci0gICAgfQotICAgIHN0YXR1cyA9
IHNydHBfY2lwaGVyX3NldF9pdihzZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyLAotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAodWludDhfdCopJml2LCBzcnRwX2RpcmVjdGlvbl9kZWNy
eXB0KTsKLSAgICBpZiAoc3RhdHVzKSB7Ci0gICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNf
Y2lwaGVyX2ZhaWw7Ci0gICAgfQorICAgIGlmIChzZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyLT50
eXBlLT5pZCA9PSBTUlRQX0FFU19JQ01fMTI4IHx8CisgICAgICAgIHNlc3Npb25fa2V5cy0+cnRj
cF9jaXBoZXItPnR5cGUtPmlkID09IFNSVFBfQUVTX0lDTV8xOTIgfHwKKyAgICAgICAgc2Vzc2lv
bl9rZXlzLT5ydGNwX2NpcGhlci0+dHlwZS0+aWQgPT0gU1JUUF9BRVNfSUNNXzI1NikgeworICAg
ICAgICB2MTI4X3QgaXY7CisKKyAgICAgICAgaXYudjMyWzBdID0gMDsKKyAgICAgICAgaXYudjMy
WzFdID0gaGRyLT5zc3JjOyAvKiBzdGlsbCBpbiBuZXR3b3JrIG9yZGVyISAqLworICAgICAgICBp
di52MzJbMl0gPSBodG9ubChzZXFfbnVtID4+IDE2KTsKKyAgICAgICAgaXYudjMyWzNdID0gaHRv
bmwoc2VxX251bSA8PCAxNik7CisgICAgICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3NldF9pdihz
ZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyLCAodWludDhfdCAqKSZpdiwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHNydHBfZGlyZWN0aW9uX2RlY3J5cHQpOwogCi0gICAgLyoK
LSAgICAgKiBTZXQgdGhlIEFBRCBmb3IgR0NNIG1vZGUKLSAgICAgKi8KLSAgICBpZiAoZW5jX3N0
YXJ0KSB7Ci0gICAgICAgIC8qCi0gICAgICAgICAqIElmIHBheWxvYWQgZW5jcnlwdGlvbiBpcyBl
bmFibGVkLCB0aGVuIHRoZSBBQUQgY29uc2lzdCBvZgotICAgICAgICAgKiB0aGUgUlRDUCBoZWFk
ZXIgYW5kIHRoZSBzZXEjIGF0IHRoZSBlbmQgb2YgdGhlIHBhY2tldAotICAgICAgICAgKi8KLSAg
ICAgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfc2V0X2FhZChzZXNzaW9uX2tleXMtPnJ0Y3BfY2lw
aGVyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAodWludDhfdCopaGRyLCBv
Y3RldHNfaW5fcnRjcF9oZWFkZXIpOwotICAgICAgICBpZiAoc3RhdHVzKSB7Ci0gICAgICAgICAg
ICByZXR1cm4gKCBzcnRwX2Vycl9zdGF0dXNfY2lwaGVyX2ZhaWwpOwotICAgICAgICB9CiAgICAg
fSBlbHNlIHsKLSAgICAgICAgLyoKLSAgICAgICAgICogU2luY2UgcGF5bG9hZCBlbmNyeXB0aW9u
IGlzIG5vdCBlbmFibGVkLCB3ZSBtdXN0IGF1dGhlbnRpY2F0ZQotICAgICAgICAgKiB0aGUgZW50
aXJlIHBhY2tldCBhcyBkZXNjcmliZWQgaW4gUkZDIDc3MTQgKFNlY3Rpb24gOS4zLiBEYXRhCi0g
ICAgICAgICAqIFR5cGVzIGluIFVuZW5jcnlwdGVkIFNSVENQIENvbXBvdW5kIFBhY2tldHMpCi0g
ICAgICAgICAqLwotICAgICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9zZXRfYWFkKAotICAgICAg
ICAgIHNlc3Npb25fa2V5cy0+cnRjcF9jaXBoZXIsICh1aW50OF90KiloZHIsCi0gICAgICAgICAg
KCpwa3Rfb2N0ZXRfbGVuIC0gdGFnX2xlbiAtIHNpemVvZihzcnRjcF90cmFpbGVyX3QpIC0gbWtp
X3NpemUpKTsKLSAgICAgICAgaWYgKHN0YXR1cykgewotICAgICAgICAgICAgcmV0dXJuICggc3J0
cF9lcnJfc3RhdHVzX2NpcGhlcl9mYWlsKTsKLSAgICAgICAgfQorICAgICAgICB2MTI4X3QgaXY7
CisKKyAgICAgICAgLyogb3RoZXJ3aXNlLCBqdXN0IHNldCB0aGUgaW5kZXggdG8gc2VxX251bSAq
LworICAgICAgICBpdi52MzJbMF0gPSAwOworICAgICAgICBpdi52MzJbMV0gPSAwOworICAgICAg
ICBpdi52MzJbMl0gPSAwOworICAgICAgICBpdi52MzJbM10gPSBodG9ubChzZXFfbnVtKTsKKyAg
ICAgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfc2V0X2l2KHNlc3Npb25fa2V5cy0+cnRjcF9jaXBo
ZXIsICh1aW50OF90ICopJml2LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
c3J0cF9kaXJlY3Rpb25fZGVjcnlwdCk7CiAgICAgfQorICAgIGlmIChzdGF0dXMpCisgICAgICAg
IHJldHVybiBzcnRwX2Vycl9zdGF0dXNfY2lwaGVyX2ZhaWw7CisKKyAgICAvKiBpbml0aWFsaXpl
IGF1dGggZnVuYyBjb250ZXh0ICovCisgICAgc3J0cF9hdXRoX3N0YXJ0KHNlc3Npb25fa2V5cy0+
cnRjcF9hdXRoKTsKKworICAgIC8qIHJ1biBhdXRoIGZ1bmMgb3ZlciBwYWNrZXQsIHB1dCByZXN1
bHQgaW50byB0bXBfdGFnICovCisgICAgc3RhdHVzID0gc3J0cF9hdXRoX2NvbXB1dGUoc2Vzc2lv
bl9rZXlzLT5ydGNwX2F1dGgsICh1aW50OF90ICopYXV0aF9zdGFydCwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBhdXRoX2xlbiwgdG1wX3RhZyk7CisgICAgZGVidWdfcHJpbnQobW9k
X3NydHAsICJzcnRjcCBjb21wdXRlZCB0YWc6ICAgICAgICVzIiwKKyAgICAgICAgICAgICAgICBz
cnRwX29jdGV0X3N0cmluZ19oZXhfc3RyaW5nKHRtcF90YWcsIHRhZ19sZW4pKTsKKyAgICBpZiAo
c3RhdHVzKQorICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2F1dGhfZmFpbDsKKworICAg
IC8qIGNvbXBhcmUgdGhlIHRhZyBqdXN0IGNvbXB1dGVkIHdpdGggdGhlIG9uZSBpbiB0aGUgcGFj
a2V0ICovCisgICAgZGVidWdfcHJpbnQobW9kX3NydHAsICJzcnRjcCB0YWcgZnJvbSBwYWNrZXQ6
ICAgICVzIiwKKyAgICAgICAgICAgICAgICBzcnRwX29jdGV0X3N0cmluZ19oZXhfc3RyaW5nKGF1
dGhfdGFnLCB0YWdfbGVuKSk7CisgICAgaWYgKG9jdGV0X3N0cmluZ19pc19lcSh0bXBfdGFnLCBh
dXRoX3RhZywgdGFnX2xlbikpCisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYXV0aF9m
YWlsOwogCiAgICAgLyoKLSAgICAgKiBQcm9jZXNzIHRoZSBzZXF1ZW5jZSMgYXMgQUFECisgICAg
ICogaWYgd2UncmUgYXV0aGVudGljYXRpbmcgdXNpbmcgYSB1bml2ZXJzYWwgaGFzaCwgcHV0IHRo
ZSBrZXlzdHJlYW0KKyAgICAgKiBwcmVmaXggaW50byB0aGUgYXV0aGVudGljYXRpb24gdGFnCiAg
ICAgICovCi0gICAgdHNlcSA9ICp0cmFpbGVyOwotICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3Nl
dF9hYWQoc2Vzc2lvbl9rZXlzLT5ydGNwX2NpcGhlciwKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICh1aW50OF90KikmdHNlcSwgc2l6ZW9mKHNydGNwX3RyYWlsZXJfdCkpOwotICAg
IGlmIChzdGF0dXMpIHsKLSAgICAgICAgcmV0dXJuICggc3J0cF9lcnJfc3RhdHVzX2NpcGhlcl9m
YWlsKTsKKyAgICBwcmVmaXhfbGVuID0gc3J0cF9hdXRoX2dldF9wcmVmaXhfbGVuZ3RoKHNlc3Np
b25fa2V5cy0+cnRjcF9hdXRoKTsKKyAgICBpZiAocHJlZml4X2xlbikgeworICAgICAgICBzdGF0
dXMgPSBzcnRwX2NpcGhlcl9vdXRwdXQoc2Vzc2lvbl9rZXlzLT5ydGNwX2NpcGhlciwgYXV0aF90
YWcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmcHJlZml4X2xlbik7Cisg
ICAgICAgIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAia2V5c3RyZWFtIHByZWZpeDogJXMiLAorICAg
ICAgICAgICAgICAgICAgICBzcnRwX29jdGV0X3N0cmluZ19oZXhfc3RyaW5nKGF1dGhfdGFnLCBw
cmVmaXhfbGVuKSk7CisgICAgICAgIGlmIChzdGF0dXMpCisgICAgICAgICAgICByZXR1cm4gc3J0
cF9lcnJfc3RhdHVzX2NpcGhlcl9mYWlsOwogICAgIH0KIAogICAgIC8qIGlmIHdlJ3JlIGRlY3J5
cHRpbmcsIGV4b3Iga2V5c3RyZWFtIGludG8gdGhlIG1lc3NhZ2UgKi8KICAgICBpZiAoZW5jX3N0
YXJ0KSB7Ci0gICAgICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX2RlY3J5cHQoc2Vzc2lvbl9rZXlz
LT5ydGNwX2NpcGhlciwgKHVpbnQ4X3QqKWVuY19zdGFydCwgJmVuY19vY3RldF9sZW4pOwotICAg
ICAgICBpZiAoc3RhdHVzKSB7Ci0gICAgICAgICAgICByZXR1cm4gc3RhdHVzOwotICAgICAgICB9
Ci0gICAgfSBlbHNlIHsKLSAgICAgICAgLyoKLSAgICAgICAgICogU3RpbGwgbmVlZCB0byBydW4g
dGhlIGNpcGhlciB0byBjaGVjayB0aGUgdGFnCi0gICAgICAgICAqLwotICAgICAgICB0bXBfbGVu
ID0gdGFnX2xlbjsKLSAgICAgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfZGVjcnlwdChzZXNzaW9u
X2tleXMtPnJ0Y3BfY2lwaGVyLCAodWludDhfdCopYXV0aF90YWcsICZ0bXBfbGVuKTsKLSAgICAg
ICAgaWYgKHN0YXR1cykgewotICAgICAgICAgICAgcmV0dXJuIHN0YXR1czsKLSAgICAgICAgfQor
ICAgICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9kZWNyeXB0KHNlc3Npb25fa2V5cy0+cnRjcF9j
aXBoZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHVpbnQ4X3QgKill
bmNfc3RhcnQsICZlbmNfb2N0ZXRfbGVuKTsKKyAgICAgICAgaWYgKHN0YXR1cykKKyAgICAgICAg
ICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfY2lwaGVyX2ZhaWw7CiAgICAgfQogCi0gICAgLyog
ZGVjcmVhc2UgdGhlIHBhY2tldCBsZW5ndGggYnkgdGhlIGxlbmd0aCBvZiB0aGUgYXV0aCB0YWcg
YW5kIHNlcV9udW0qLwotICAgICpwa3Rfb2N0ZXRfbGVuIC09ICh0YWdfbGVuICsgc2l6ZW9mKHNy
dGNwX3RyYWlsZXJfdCkgKyBta2lfc2l6ZSk7CisgICAgLyogZGVjcmVhc2UgdGhlIHBhY2tldCBs
ZW5ndGggYnkgdGhlIGxlbmd0aCBvZiB0aGUgYXV0aCB0YWcgYW5kIHNlcV9udW0gKi8KKyAgICAq
cGt0X29jdGV0X2xlbiAtPSAodGFnX2xlbiArIHNpemVvZihzcnRjcF90cmFpbGVyX3QpKTsKKwor
ICAgIC8qIGRlY3JlYXNlIHRoZSBwYWNrZXQgbGVuZ3RoIGJ5IHRoZSBsZW5ndGggb2YgdGhlIG1r
aV9zaXplICovCisgICAgKnBrdF9vY3RldF9sZW4gLT0gbWtpX3NpemU7CisKKyAgICAvKgorICAg
ICAqIGlmIEVLVCBpcyBpbiBlZmZlY3QsIHN1YnRyYWN0IHRoZSBFS1QgZGF0YSBvdXQgb2YgdGhl
IHBhY2tldAorICAgICAqIGxlbmd0aAorICAgICAqLworICAgICpwa3Rfb2N0ZXRfbGVuIC09IHNy
dHBfZWt0X29jdGV0c19hZnRlcl9iYXNlX3RhZyhzdHJlYW0tPmVrdCk7CiAKICAgICAvKgogICAg
ICAqIHZlcmlmeSB0aGF0IHN0cmVhbSBpcyBmb3IgcmVjZWl2ZWQgdHJhZmZpYyAtIHRoaXMgY2hl
Y2sgd2lsbApAQCAtMzgwMywxMCArNDM4NiwxMCBAQCBzcnRwX3VucHJvdGVjdF9ydGNwX2FlYWQg
KHNydHBfdCBjdHgsIHNydHBfc3RyZWFtX2N0eF90ICpzdHJlYW0sCiAgICAgICAgICAqIHN0cmVh
bSwgYW5kIHNvbWUgaW1wbGVtZW50YXRpb25zIHdpbGwgd2FudCB0byBub3QgcmV0dXJuCiAgICAg
ICAgICAqIGZhaWx1cmUgaGVyZQogICAgICAgICAgKi8KLSAgICAgICAgc3RhdHVzID0gc3J0cF9z
dHJlYW1fY2xvbmUoY3R4LT5zdHJlYW1fdGVtcGxhdGUsIGhkci0+c3NyYywgJm5ld19zdHJlYW0p
OwotICAgICAgICBpZiAoc3RhdHVzKSB7CisgICAgICAgIHN0YXR1cyA9CisgICAgICAgICAgICBz
cnRwX3N0cmVhbV9jbG9uZShjdHgtPnN0cmVhbV90ZW1wbGF0ZSwgaGRyLT5zc3JjLCAmbmV3X3N0
cmVhbSk7CisgICAgICAgIGlmIChzdGF0dXMpCiAgICAgICAgICAgICByZXR1cm4gc3RhdHVzOwot
ICAgICAgICB9CiAKICAgICAgICAgLyogYWRkIG5ldyBzdHJlYW0gdG8gdGhlIGhlYWQgb2YgdGhl
IHN0cmVhbV9saXN0ICovCiAgICAgICAgIG5ld19zdHJlYW0tPm5leHQgPSBjdHgtPnN0cmVhbV9s
aXN0OwpAQCAtMzgyMiw3NTQgKzQ0MDUsMjM2IEBAIHNydHBfdW5wcm90ZWN0X3J0Y3BfYWVhZCAo
c3J0cF90IGN0eCwgc3J0cF9zdHJlYW1fY3R4X3QgKnN0cmVhbSwKICAgICByZXR1cm4gc3J0cF9l
cnJfc3RhdHVzX29rOwogfQogCi1zcnRwX2Vycl9zdGF0dXNfdCAKLXNydHBfcHJvdGVjdF9ydGNw
KHNydHBfdCBjdHgsIHZvaWQgKnJ0Y3BfaGRyLCBpbnQgKnBrdF9vY3RldF9sZW4pIHsKLSAgcmV0
dXJuIHNydHBfcHJvdGVjdF9ydGNwX21raShjdHgsIHJ0Y3BfaGRyLCBwa3Rfb2N0ZXRfbGVuLCAw
LCAwKTsKLX0KLQotc3J0cF9lcnJfc3RhdHVzX3QgCi1zcnRwX3Byb3RlY3RfcnRjcF9ta2koc3J0
cF90IGN0eCwgdm9pZCAqcnRjcF9oZHIsIGludCAqcGt0X29jdGV0X2xlbiwKLSAgICAgICAgICAg
ICAgICAgICAgICB1bnNpZ25lZCBpbnQgdXNlX21raSwgdW5zaWduZWQgaW50IG1raV9pbmRleCkg
ewotICBzcnRjcF9oZHJfdCAqaGRyID0gKHNydGNwX2hkcl90ICopcnRjcF9oZHI7Ci0gIHVpbnQz
Ml90ICplbmNfc3RhcnQ7ICAgICAgLyogcG9pbnRlciB0byBzdGFydCBvZiBlbmNyeXB0ZWQgcG9y
dGlvbiAgKi8KLSAgdWludDMyX3QgKmF1dGhfc3RhcnQ7ICAgICAvKiBwb2ludGVyIHRvIHN0YXJ0
IG9mIGF1dGguIHBvcnRpb24gICAgICAqLwotICB1aW50MzJfdCAqdHJhaWxlcjsgICAgICAgIC8q
IHBvaW50ZXIgdG8gc3RhcnQgb2YgdHJhaWxlciAgICAgICAgICAgICovCi0gIHVuc2lnbmVkIGlu
dCBlbmNfb2N0ZXRfbGVuID0gMDsvKiBudW1iZXIgb2Ygb2N0ZXRzIGluIGVuY3J5cHRlZCBwb3J0
aW9uICovCi0gIHVpbnQ4X3QgKmF1dGhfdGFnID0gTlVMTDsgLyogbG9jYXRpb24gb2YgYXV0aF90
YWcgd2l0aGluIHBhY2tldCAgICAgKi8KLSAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVzOyAgIAot
ICBpbnQgdGFnX2xlbjsKLSAgc3J0cF9zdHJlYW1fY3R4X3QgKnN0cmVhbTsKLSAgdWludDMyX3Qg
cHJlZml4X2xlbjsKLSAgdWludDMyX3Qgc2VxX251bTsKLSAgdW5zaWduZWQgaW50IG1raV9zaXpl
ID0gMDsKLSAgc3J0cF9zZXNzaW9uX2tleXNfdCAqc2Vzc2lvbl9rZXlzID0gTlVMTDsKLQotICAv
KiB3ZSBhc3N1bWUgdGhlIGhkciBpcyAzMi1iaXQgYWxpZ25lZCB0byBzdGFydCAqLwotCi0gIC8q
IGNoZWNrIHRoZSBwYWNrZXQgbGVuZ3RoIC0gaXQgbXVzdCBhdCBsZWFzdCBjb250YWluIGEgZnVs
bCBoZWFkZXIgKi8KLSAgaWYgKCpwa3Rfb2N0ZXRfbGVuIDwgb2N0ZXRzX2luX3J0Y3BfaGVhZGVy
KQotICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtOwotCi0gIC8qCi0gICAqIGxv
b2sgdXAgc3NyYyBpbiBzcnRwX3N0cmVhbSBsaXN0LCBhbmQgcHJvY2VzcyB0aGUgcGFja2V0IHdp
dGggCi0gICAqIHRoZSBhcHByb3ByaWF0ZSBzdHJlYW0uICBpZiB3ZSBoYXZlbid0IHNlZW4gdGhp
cyBzdHJlYW0gYmVmb3JlLAotICAgKiB0aGVyZSdzIG9ubHkgb25lIGtleSBmb3IgdGhpcyBzcnRw
X3Nlc3Npb24sIGFuZCB0aGUgY2lwaGVyCi0gICAqIHN1cHBvcnRzIGtleS1zaGFyaW5nLCB0aGVu
IHdlIGFzc3VtZSB0aGF0IGEgbmV3IHN0cmVhbSB1c2luZwotICAgKiB0aGF0IGtleSBoYXMganVz
dCBzdGFydGVkIHVwCi0gICAqLwotICBzdHJlYW0gPSBzcnRwX2dldF9zdHJlYW0oY3R4LCBoZHIt
PnNzcmMpOwotICBpZiAoc3RyZWFtID09IE5VTEwpIHsKLSAgICBpZiAoY3R4LT5zdHJlYW1fdGVt
cGxhdGUgIT0gTlVMTCkgewotICAgICAgc3J0cF9zdHJlYW1fY3R4X3QgKm5ld19zdHJlYW07Ci0g
ICAgICAKLSAgICAgIC8qIGFsbG9jYXRlIGFuZCBpbml0aWFsaXplIGEgbmV3IHN0cmVhbSAqLwot
ICAgICAgc3RhdHVzID0gc3J0cF9zdHJlYW1fY2xvbmUoY3R4LT5zdHJlYW1fdGVtcGxhdGUsCi0J
CQkJIGhkci0+c3NyYywgJm5ld19zdHJlYW0pOyAKLSAgICAgIGlmIChzdGF0dXMpCi0JcmV0dXJu
IHN0YXR1czsKLSAgICAgIAotICAgICAgLyogYWRkIG5ldyBzdHJlYW0gdG8gdGhlIGhlYWQgb2Yg
dGhlIHN0cmVhbV9saXN0ICovCi0gICAgICBuZXdfc3RyZWFtLT5uZXh0ID0gY3R4LT5zdHJlYW1f
bGlzdDsKLSAgICAgIGN0eC0+c3RyZWFtX2xpc3QgPSBuZXdfc3RyZWFtOwotICAgICAgCi0gICAg
ICAvKiBzZXQgc3RyZWFtICh0aGUgcG9pbnRlciB1c2VkIGluIHRoaXMgZnVuY3Rpb24pICovCi0g
ICAgICBzdHJlYW0gPSBuZXdfc3RyZWFtOwotICAgIH0gZWxzZSB7Ci0gICAgICAvKiBubyB0ZW1w
bGF0ZSBzdHJlYW0sIHNvIHdlIHJldHVybiBhbiBlcnJvciAqLwotICAgICAgcmV0dXJuIHNydHBf
ZXJyX3N0YXR1c19ub19jdHg7Ci0gICAgfSAKLSAgfQotICAKLSAgLyogCi0gICAqIHZlcmlmeSB0
aGF0IHN0cmVhbSBpcyBmb3Igc2VuZGluZyB0cmFmZmljIC0gdGhpcyBjaGVjayB3aWxsCi0gICAq
IGRldGVjdCBTU1JDIGNvbGxpc2lvbnMsIHNpbmNlIGEgc3RyZWFtIHRoYXQgYXBwZWFycyBpbiBi
b3RoCi0gICAqIHNydHBfcHJvdGVjdCgpIGFuZCBzcnRwX3VucHJvdGVjdCgpIHdpbGwgZmFpbCB0
aGlzIHRlc3QgaW4gb25lIG9mCi0gICAqIHRob3NlIGZ1bmN0aW9ucy4KLSAgICovCi0gIGlmIChz
dHJlYW0tPmRpcmVjdGlvbiAhPSBkaXJfc3J0cF9zZW5kZXIpIHsKLSAgICBpZiAoc3RyZWFtLT5k
aXJlY3Rpb24gPT0gZGlyX3Vua25vd24pIHsKLSAgICAgIHN0cmVhbS0+ZGlyZWN0aW9uID0gZGly
X3NydHBfc2VuZGVyOwotICAgIH0gZWxzZSB7Ci0gICAgICBzcnRwX2hhbmRsZV9ldmVudChjdHgs
IHN0cmVhbSwgZXZlbnRfc3NyY19jb2xsaXNpb24pOwotICAgIH0KLSAgfSAgCi0KLSAgc2Vzc2lv
bl9rZXlzID0gc3J0cF9nZXRfc2Vzc2lvbl9rZXlzX3dpdGhfbWtpX2luZGV4KHN0cmVhbSwgdXNl
X21raSwgbWtpX2luZGV4KTsKLQotICAvKgotICAgKiBDaGVjayBpZiB0aGlzIGlzIGFuIEFFQUQg
c3RyZWFtIChHQ00gbW9kZSkuICBJZiBzbywgdGhlbiBkaXNwYXRjaAotICAgKiB0aGUgcmVxdWVz
dCB0byBvdXIgQUVBRCBoYW5kbGVyLgotICAgKi8KLSAgaWYgKHNlc3Npb25fa2V5cy0+cnRwX2Np
cGhlci0+YWxnb3JpdGhtID09IFNSVFBfQUVTX0dDTV8xMjggfHwKLSAgICAgIHNlc3Npb25fa2V5
cy0+cnRwX2NpcGhlci0+YWxnb3JpdGhtID09IFNSVFBfQUVTX0dDTV8yNTYpIHsKLSAgICAgIHJl
dHVybiBzcnRwX3Byb3RlY3RfcnRjcF9hZWFkKGN0eCwgc3RyZWFtLCBydGNwX2hkciwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICh1bnNpZ25lZCBpbnQqKXBrdF9vY3RldF9s
ZW4sIHNlc3Npb25fa2V5cywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVz
ZV9ta2kpOwotICB9Ci0KLSAgLyogZ2V0IHRhZyBsZW5ndGggZnJvbSBzdHJlYW0gY29udGV4dCAq
LwotICB0YWdfbGVuID0gc3J0cF9hdXRoX2dldF90YWdfbGVuZ3RoKHNlc3Npb25fa2V5cy0+cnRj
cF9hdXRoKTsgCi0KLSAgLyoKLSAgICogc2V0IGVuY3J5cHRpb24gc3RhcnQgYW5kIGVuY3J5cHRp
b24gbGVuZ3RoIC0gaWYgd2UncmUgbm90Ci0gICAqIHByb3ZpZGluZyBjb25maWRlbnRpYWxpdHks
IHNldCBlbmNfc3RhcnQgdG8gTlVMTAotICAgKi8KLSAgZW5jX3N0YXJ0ID0gKHVpbnQzMl90ICop
aGRyICsgdWludDMyc19pbl9ydGNwX2hlYWRlcjsgIAotICBlbmNfb2N0ZXRfbGVuID0gKnBrdF9v
Y3RldF9sZW4gLSBvY3RldHNfaW5fcnRjcF9oZWFkZXI7Ci0KLSAgLyogYWxsIG9mIHRoZSBwYWNr
ZXQsIGV4Y2VwdCB0aGUgaGVhZGVyLCBnZXRzIGVuY3J5cHRlZCAqLwotICAvKiBOT1RFOiBoZHIt
Pmxlbmd0aCBpcyBub3QgdXNhYmxlIC0gaXQgcmVmZXJzIHRvIG9ubHkgdGhlIGZpcnN0Ci0JIFJU
Q1AgcmVwb3J0IGluIHRoZSBjb21wb3VuZCBwYWNrZXQhICovCi0gIC8qIE5PVEU6IHRyYWlsZXIg
aXMgMzItYml0IGFsaWduZWQgYmVjYXVzZSBSVENQICdwYWNrZXRzJyBhcmUgYWx3YXlzCi0JIG11
bHRpcGxlcyBvZiAzMi1iaXRzIChSRkMgMzU1MCA2LjEpICovCi0gIHRyYWlsZXIgPSAodWludDMy
X3QgKikgKChjaGFyICopZW5jX3N0YXJ0ICsgZW5jX29jdGV0X2xlbik7Ci0KLSAgaWYgKHN0cmVh
bS0+cnRjcF9zZXJ2aWNlcyAmIHNlY19zZXJ2X2NvbmYpIHsKLSAgICAqdHJhaWxlciA9IGh0b25s
KFNSVENQX0VfQklUKTsgICAgIC8qIHNldCBlbmNyeXB0IGJpdCAqLyAgICAKLSAgfSBlbHNlIHsK
LSAgICBlbmNfc3RhcnQgPSBOVUxMOwotICAgIGVuY19vY3RldF9sZW4gPSAwOwotCS8qIDAgaXMg
bmV0d29yay1vcmRlciBpbmRlcGVuZGFudCAqLwotICAgICp0cmFpbGVyID0gMHgwMDAwMDAwMDsg
ICAgIC8qIHNldCBlbmNyeXB0IGJpdCAqLyAgICAKLSAgfQotCi0gIG1raV9zaXplID0gc3J0cF9p
bmplY3RfbWtpKCh1aW50OF90ICopaGRyICsgKnBrdF9vY3RldF9sZW4gKyBzaXplb2Yoc3J0Y3Bf
dHJhaWxlcl90KSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2Vzc2lvbl9rZXlzLCB1
c2VfbWtpKTsKLQotICAvKiAKLSAgICogc2V0IHRoZSBhdXRoX3N0YXJ0IGFuZCBhdXRoX3RhZyBw
b2ludGVycyB0byB0aGUgcHJvcGVyIGxvY2F0aW9ucwotICAgKiAobm90ZSB0aGF0IHNydHBjICph
bHdheXMqIHByb3ZpZGVzIGF1dGhlbnRpY2F0aW9uLCB1bmxpa2Ugc3J0cCkKLSAgICovCi0gIC8q
IE5vdGU6IFRoaXMgd291bGQgbmVlZCB0byBjaGFuZ2UgZm9yIG9wdGlvbmFsIG1pa2V5IGRhdGEg
Ki8KLSAgYXV0aF9zdGFydCA9ICh1aW50MzJfdCAqKWhkcjsKLSAgYXV0aF90YWcgPSAodWludDhf
dCAqKWhkciArICpwa3Rfb2N0ZXRfbGVuICsgc2l6ZW9mKHNydGNwX3RyYWlsZXJfdCkgKyBta2lf
c2l6ZTsgCi0KLSAgLyogcGVyZm9ybSBFS1QgcHJvY2Vzc2luZyBpZiBuZWVkZWQgKi8KLSAgc3J0
cF9la3Rfd3JpdGVfZGF0YShzdHJlYW0tPmVrdCwgYXV0aF90YWcsIHRhZ19sZW4sIHBrdF9vY3Rl
dF9sZW4sIAotCQkgICAgICBzcnRwX3JkYnhfZ2V0X3BhY2tldF9pbmRleCgmc3RyZWFtLT5ydHBf
cmRieCkpOwotCi0gIC8qIAotICAgKiBjaGVjayBzZXF1ZW5jZSBudW1iZXIgZm9yIG92ZXJydW5z
LCBhbmQgY29weSBpdCBpbnRvIHRoZSBwYWNrZXQKLSAgICogaWYgaXRzIHZhbHVlIGlzbid0IHRv
byBiaWcKLSAgICovCi0gIHN0YXR1cyA9IHNydHBfcmRiX2luY3JlbWVudCgmc3RyZWFtLT5ydGNw
X3JkYik7Ci0gIGlmIChzdGF0dXMpCi0gICAgcmV0dXJuIHN0YXR1czsKLSAgc2VxX251bSA9IHNy
dHBfcmRiX2dldF92YWx1ZSgmc3RyZWFtLT5ydGNwX3JkYik7Ci0gICp0cmFpbGVyIHw9IGh0b25s
KHNlcV9udW0pOwotICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgInNydGNwIGluZGV4OiAleCIsIHNl
cV9udW0pOwotCi0gIC8qIAotICAgKiBpZiB3ZSdyZSB1c2luZyByaW5kYWVsIGNvdW50ZXIgbW9k
ZSwgc2V0IG5vbmNlIGFuZCBzZXEgCi0gICAqLwotICBpZiAoc2Vzc2lvbl9rZXlzLT5ydGNwX2Np
cGhlci0+dHlwZS0+aWQgPT0gU1JUUF9BRVNfSUNNXzEyOCB8fAotICAgICAgc2Vzc2lvbl9rZXlz
LT5ydGNwX2NpcGhlci0+dHlwZS0+aWQgPT0gU1JUUF9BRVNfSUNNXzE5MiB8fAotICAgICAgc2Vz
c2lvbl9rZXlzLT5ydGNwX2NpcGhlci0+dHlwZS0+aWQgPT0gU1JUUF9BRVNfSUNNXzI1Nikgewot
ICAgIHYxMjhfdCBpdjsKLSAgICAKLSAgICBpdi52MzJbMF0gPSAwOwotICAgIGl2LnYzMlsxXSA9
IGhkci0+c3NyYzsgIC8qIHN0aWxsIGluIG5ldHdvcmsgb3JkZXIhICovCi0gICAgaXYudjMyWzJd
ID0gaHRvbmwoc2VxX251bSA+PiAxNik7Ci0gICAgaXYudjMyWzNdID0gaHRvbmwoc2VxX251bSA8
PCAxNik7Ci0gICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfc2V0X2l2KHNlc3Npb25fa2V5cy0+cnRj
cF9jaXBoZXIsICh1aW50OF90KikmaXYsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHNydHBfZGlyZWN0aW9uX2VuY3J5cHQpOwotCi0gIH0gZWxzZSB7ICAKLSAgICB2MTI4X3QgaXY7
Ci0gICAgCi0gICAgLyogb3RoZXJ3aXNlLCBqdXN0IHNldCB0aGUgaW5kZXggdG8gc2VxX251bSAq
LyAgCi0gICAgaXYudjMyWzBdID0gMDsKLSAgICBpdi52MzJbMV0gPSAwOwotICAgIGl2LnYzMlsy
XSA9IDA7Ci0gICAgaXYudjMyWzNdID0gaHRvbmwoc2VxX251bSk7Ci0gICAgc3RhdHVzID0gc3J0
cF9jaXBoZXJfc2V0X2l2KHNlc3Npb25fa2V5cy0+cnRjcF9jaXBoZXIsCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICh1aW50OF90KikmaXYsIHNydHBfZGlyZWN0aW9uX2VuY3J5cHQp
OwotICB9Ci0gIGlmIChzdGF0dXMpCi0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19jaXBoZXJf
ZmFpbDsKLQotICAvKiAKLSAgICogaWYgd2UncmUgYXV0aGVudGljYXRpbmcgdXNpbmcgYSB1bml2
ZXJzYWwgaGFzaCwgcHV0IHRoZSBrZXlzdHJlYW0KLSAgICogcHJlZml4IGludG8gdGhlIGF1dGhl
bnRpY2F0aW9uIHRhZwotICAgKi8KLSAgCi0gIC8qIGlmIGF1dGhfc3RhcnQgaXMgbm9uLW51bGws
IHRoZW4gcHV0IGtleXN0cmVhbSBpbnRvIHRhZyAgKi8KLSAgaWYgKGF1dGhfc3RhcnQpIHsKLQot
ICAgIC8qIHB1dCBrZXlzdHJlYW0gcHJlZml4IGludG8gYXV0aF90YWcgKi8KLSAgICBwcmVmaXhf
bGVuID0gc3J0cF9hdXRoX2dldF9wcmVmaXhfbGVuZ3RoKHNlc3Npb25fa2V5cy0+cnRjcF9hdXRo
KTsgICAgCi0gICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfb3V0cHV0KHNlc3Npb25fa2V5cy0+cnRj
cF9jaXBoZXIsIGF1dGhfdGFnLCAmcHJlZml4X2xlbik7Ci0KLSAgICBkZWJ1Z19wcmludChtb2Rf
c3J0cCwgImtleXN0cmVhbSBwcmVmaXg6ICVzIiwgCi0JCXNydHBfb2N0ZXRfc3RyaW5nX2hleF9z
dHJpbmcoYXV0aF90YWcsIHByZWZpeF9sZW4pKTsKLQotICAgIGlmIChzdGF0dXMpCi0gICAgICBy
ZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2NpcGhlcl9mYWlsOwotICB9Ci0KLSAgLyogaWYgd2UncmUg
ZW5jcnlwdGluZywgZXhvciBrZXlzdHJlYW0gaW50byB0aGUgbWVzc2FnZSAqLwotICBpZiAoZW5j
X3N0YXJ0KSB7Ci0gICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfZW5jcnlwdChzZXNzaW9uX2tleXMt
PnJ0Y3BfY2lwaGVyLCAKLQkJICAJICAgICAgICAodWludDhfdCAqKWVuY19zdGFydCwgJmVuY19v
Y3RldF9sZW4pOwotICAgIGlmIChzdGF0dXMpCi0gICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVz
X2NpcGhlcl9mYWlsOwotICB9Ci0KLSAgLyogaW5pdGlhbGl6ZSBhdXRoIGZ1bmMgY29udGV4dCAq
LwotICBzcnRwX2F1dGhfc3RhcnQoc2Vzc2lvbl9rZXlzLT5ydGNwX2F1dGgpOwotCi0gIC8qIAot
ICAgKiBydW4gYXV0aCBmdW5jIG92ZXIgcGFja2V0IChpbmNsdWRpbmcgdHJhaWxlciksIGFuZCB3
cml0ZSB0aGUKLSAgICogcmVzdWx0IGF0IGF1dGhfdGFnIAotICAgKi8KLSAgc3RhdHVzID0gc3J0
cF9hdXRoX2NvbXB1dGUoc2Vzc2lvbl9rZXlzLT5ydGNwX2F1dGgsCi0JCQkodWludDhfdCAqKWF1
dGhfc3RhcnQsIAotCQkJKCpwa3Rfb2N0ZXRfbGVuKSArIHNpemVvZihzcnRjcF90cmFpbGVyX3Qp
LCAKLQkJCWF1dGhfdGFnKTsKLSAgZGVidWdfcHJpbnQobW9kX3NydHAsICJzcnRjcCBhdXRoIHRh
ZzogICAgJXMiLCAKLQkgICAgICBzcnRwX29jdGV0X3N0cmluZ19oZXhfc3RyaW5nKGF1dGhfdGFn
LCB0YWdfbGVuKSk7Ci0gIGlmIChzdGF0dXMpCi0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19h
dXRoX2ZhaWw7ICAgCi0gICAgCi0gIC8qIGluY3JlYXNlIHRoZSBwYWNrZXQgbGVuZ3RoIGJ5IHRo
ZSBsZW5ndGggb2YgdGhlIGF1dGggdGFnIGFuZCBzZXFfbnVtKi8KLSAgKnBrdF9vY3RldF9sZW4g
Kz0gKHRhZ19sZW4gKyBzaXplb2Yoc3J0Y3BfdHJhaWxlcl90KSk7Ci0KLSAgLyogaW5jcmVhc2Ug
dGhlIHBhY2tldCBieSB0aGUgbWtpX3NpemUgKi8KLSAgKnBrdF9vY3RldF9sZW4gKz0gbWtpX3Np
emU7Ci0gICAgCi0gIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7ICAKLX0KLQotCi1zcnRwX2Vy
cl9zdGF0dXNfdCAKLXNydHBfdW5wcm90ZWN0X3J0Y3Aoc3J0cF90IGN0eCwgdm9pZCAqc3J0Y3Bf
aGRyLCBpbnQgKnBrdF9vY3RldF9sZW4pIHsKLSAgICByZXR1cm4gc3J0cF91bnByb3RlY3RfcnRj
cF9ta2koY3R4LCBzcnRjcF9oZHIsIHBrdF9vY3RldF9sZW4sIDApOwotfQotCi1zcnRwX2Vycl9z
dGF0dXNfdAotc3J0cF91bnByb3RlY3RfcnRjcF9ta2koc3J0cF90IGN0eCwgdm9pZCAqc3J0Y3Bf
aGRyLCBpbnQgKnBrdF9vY3RldF9sZW4sCi0gICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25l
ZCBpbnQgdXNlX21raSkgewotICBzcnRjcF9oZHJfdCAqaGRyID0gKHNydGNwX2hkcl90ICopc3J0
Y3BfaGRyOwotICB1aW50MzJfdCAqZW5jX3N0YXJ0OyAgICAgIC8qIHBvaW50ZXIgdG8gc3RhcnQg
b2YgZW5jcnlwdGVkIHBvcnRpb24gICovCi0gIHVpbnQzMl90ICphdXRoX3N0YXJ0OyAgICAgLyog
cG9pbnRlciB0byBzdGFydCBvZiBhdXRoLiBwb3J0aW9uICAgICAgKi8KLSAgdWludDMyX3QgKnRy
YWlsZXI7ICAgICAgICAvKiBwb2ludGVyIHRvIHN0YXJ0IG9mIHRyYWlsZXIgICAgICAgICAgICAq
LwotICB1bnNpZ25lZCBpbnQgZW5jX29jdGV0X2xlbiA9IDA7LyogbnVtYmVyIG9mIG9jdGV0cyBp
biBlbmNyeXB0ZWQgcG9ydGlvbiAqLwotICB1aW50OF90ICphdXRoX3RhZyA9IE5VTEw7IC8qIGxv
Y2F0aW9uIG9mIGF1dGhfdGFnIHdpdGhpbiBwYWNrZXQgICAgICovCi0gIHVpbnQ4X3QgdG1wX3Rh
Z1tTUlRQX01BWF9UQUdfTEVOXTsKLSAgdWludDhfdCB0YWdfY29weVtTUlRQX01BWF9UQUdfTEVO
XTsKLSAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVzOyAgIAotICB1bnNpZ25lZCBpbnQgYXV0aF9s
ZW47Ci0gIGludCB0YWdfbGVuOwotICBzcnRwX3N0cmVhbV9jdHhfdCAqc3RyZWFtOwotICB1aW50
MzJfdCBwcmVmaXhfbGVuOwotICB1aW50MzJfdCBzZXFfbnVtOwotICBpbnQgZV9iaXRfaW5fcGFj
a2V0OyAgICAgLyogd2hldGhlciB0aGUgRS1iaXQgd2FzIGZvdW5kIGluIHRoZSBwYWNrZXQgKi8K
LSAgaW50IHNlY19zZXJ2X2NvbmZpZGVudGlhbGl0eTsgLyogd2hldGhlciBjb25maWRlbnRpYWxp
dHkgd2FzIHJlcXVlc3RlZCAqLwotICB1bnNpZ25lZCBpbnQgbWtpX3NpemUgPSAwOwotICBzcnRw
X3Nlc3Npb25fa2V5c190ICpzZXNzaW9uX2tleXMgPSBOVUxMOwotCi0gIC8qIHdlIGFzc3VtZSB0
aGUgaGRyIGlzIDMyLWJpdCBhbGlnbmVkIHRvIHN0YXJ0ICovCi0KLSAgLyogY2hlY2sgdGhhdCB0
aGUgbGVuZ3RoIHZhbHVlIGlzIHNhbmU7IHdlJ2xsIGNoZWNrIGFnYWluIG9uY2Ugd2UKLSAgICAg
a25vdyB0aGUgdGFnIGxlbmd0aCwgYnV0IHdlIGF0IGxlYXN0IHdhbnQgdG8ga25vdyB0aGF0IGl0
IGlzCi0gICAgIGEgcG9zaXRpdmUgdmFsdWUgKi8KLSAgaWYgKCpwa3Rfb2N0ZXRfbGVuIDwgb2N0
ZXRzX2luX3J0Y3BfaGVhZGVyICsgc2l6ZW9mKHNydGNwX3RyYWlsZXJfdCkpCi0gICAgcmV0dXJu
IHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW07Ci0KLSAgLyoKLSAgICogbG9vayB1cCBzc3JjIGlu
IHNydHBfc3RyZWFtIGxpc3QsIGFuZCBwcm9jZXNzIHRoZSBwYWNrZXQgd2l0aCAKLSAgICogdGhl
IGFwcHJvcHJpYXRlIHN0cmVhbS4gIGlmIHdlIGhhdmVuJ3Qgc2VlbiB0aGlzIHN0cmVhbSBiZWZv
cmUsCi0gICAqIHRoZXJlJ3Mgb25seSBvbmUga2V5IGZvciB0aGlzIHNydHBfc2Vzc2lvbiwgYW5k
IHRoZSBjaXBoZXIKLSAgICogc3VwcG9ydHMga2V5LXNoYXJpbmcsIHRoZW4gd2UgYXNzdW1lIHRo
YXQgYSBuZXcgc3RyZWFtIHVzaW5nCi0gICAqIHRoYXQga2V5IGhhcyBqdXN0IHN0YXJ0ZWQgdXAK
LSAgICovCi0gIHN0cmVhbSA9IHNydHBfZ2V0X3N0cmVhbShjdHgsIGhkci0+c3NyYyk7Ci0gIGlm
IChzdHJlYW0gPT0gTlVMTCkgewotICAgIGlmIChjdHgtPnN0cmVhbV90ZW1wbGF0ZSAhPSBOVUxM
KSB7Ci0gICAgICBzdHJlYW0gPSBjdHgtPnN0cmVhbV90ZW1wbGF0ZTsKLQotICAgICAgLyogCi0g
ICAgICAgKiBjaGVjayB0byBzZWUgaWYgc3RyZWFtX3RlbXBsYXRlIGhhcyBhbiBFS1QgZGF0YSBz
dHJ1Y3R1cmUsIGluCi0gICAgICAgKiB3aGljaCBjYXNlIHdlIGluaXRpYWxpemUgdGhlIHRlbXBs
YXRlIHVzaW5nIHRoZSBFS1QgcG9saWN5Ci0gICAgICAgKiByZWZlcmVuY2VkIGJ5IHRoYXQgZGF0
YSAod2hpY2ggY29uc2lzdHMgb2YgZGVjcnlwdGluZyB0aGUKLSAgICAgICAqIG1hc3RlciBrZXkg
ZnJvbSB0aGUgRUtUIGZpZWxkKQotICAgICAgICoKLSAgICAgICAqIHRoaXMgZnVuY3Rpb24gaW5p
dGlhbGl6ZXMgYSAqcHJvdmlzaW9uYWwqIHN0cmVhbSwgYW5kIHRoaXMKLSAgICAgICAqIHN0cmVh
bSBzaG91bGQgbm90IGJlIGFjY2VwdGVkIHVudGlsIGFuZCB1bmxlc3MgdGhlIHBhY2tldAotICAg
ICAgICogcGFzc2VzIGl0cyBhdXRoZW50aWNhdGlvbiBjaGVjawotICAgICAgICovIAotICAgICAg
aWYgKHN0cmVhbS0+ZWt0ICE9IE5VTEwpIHsKLQlzdGF0dXMgPSBzcnRwX3N0cmVhbV9pbml0X2Zy
b21fZWt0KHN0cmVhbSwgc3J0Y3BfaGRyLCAqcGt0X29jdGV0X2xlbik7Ci0JaWYgKHN0YXR1cykK
LQkgIHJldHVybiBzdGF0dXM7Ci0gICAgICB9Ci0KLSAgICAgIGRlYnVnX3ByaW50KG1vZF9zcnRw
LCAic3J0Y3AgdXNpbmcgcHJvdmlzaW9uYWwgc3RyZWFtIChTU1JDOiAweCUwOHgpIiwgCi0JCSAg
bnRvaGwoaGRyLT5zc3JjKSk7Ci0gICAgfSBlbHNlIHsKLSAgICAgIC8qIG5vIHRlbXBsYXRlIHN0
cmVhbSwgc28gd2UgcmV0dXJuIGFuIGVycm9yICovCi0gICAgICByZXR1cm4gc3J0cF9lcnJfc3Rh
dHVzX25vX2N0eDsKLSAgICB9IAotICB9Ci0KLSAgLyoKLSAgICogRGV0ZXJtaW5lIGlmIE1LSSBp
cyBiZWluZyB1c2VkIGFuZCB3aGF0IHNlc3Npb24ga2V5cyBzaG91bGQgYmUgdXNlZAotICAgKi8K
LSAgaWYgKHVzZV9ta2kpIHsKLSAgICAgIHNlc3Npb25fa2V5cyA9IHNydHBfZ2V0X3Nlc3Npb25f
a2V5cyhzdHJlYW0sICh1aW50OF90ICopaGRyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIChjb25zdCB1bnNpZ25lZCBpbnQqKXBrdF9vY3RldF9sZW4sCi0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJm1raV9zaXplKTsKLQotICAg
ICAgaWYgKHNlc3Npb25fa2V5cyA9PSBOVUxMKSAKLSAgICAgICAgIHJldHVybiBzcnRwX2Vycl9z
dGF0dXNfYmFkX21raTsKLSAgfSBlbHNlIHsKLSAgICAgIHNlc3Npb25fa2V5cyA9ICZzdHJlYW0t
PnNlc3Npb25fa2V5c1swXTsKLSAgfSAgCi0KLQotICAvKiBnZXQgdGFnIGxlbmd0aCBmcm9tIHN0
cmVhbSBjb250ZXh0ICovCi0gIHRhZ19sZW4gPSBzcnRwX2F1dGhfZ2V0X3RhZ19sZW5ndGgoc2Vz
c2lvbl9rZXlzLT5ydGNwX2F1dGgpOwotCi0gIC8qIGNoZWNrIHRoZSBwYWNrZXQgbGVuZ3RoIC0g
aXQgbXVzdCBjb250YWluIGF0IGxlYXN0IGEgZnVsbCBSVENQCi0gICAgIGhlYWRlciwgYW4gYXV0
aCB0YWcgKGlmIGFwcGxpY2FibGUpLCBhbmQgdGhlIFNSVENQIGVuY3J5cHRlZCBmbGFnCi0gICAg
IGFuZCAzMS1iaXQgaW5kZXggdmFsdWUgKi8KLSAgaWYgKCpwa3Rfb2N0ZXRfbGVuIDwgKGludCkg
KG9jdGV0c19pbl9ydGNwX2hlYWRlciArIHRhZ19sZW4gKyBta2lfc2l6ZSArIHNpemVvZihzcnRj
cF90cmFpbGVyX3QpKSkgewotICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtOwot
ICB9Ci0KLSAgLyoKLSAgICogQ2hlY2sgaWYgdGhpcyBpcyBhbiBBRUFEIHN0cmVhbSAoR0NNIG1v
ZGUpLiAgSWYgc28sIHRoZW4gZGlzcGF0Y2gKLSAgICogdGhlIHJlcXVlc3QgdG8gb3VyIEFFQUQg
aGFuZGxlci4KLSAgICovCi0gIGlmIChzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXItPmFsZ29yaXRo
bSA9PSBTUlRQX0FFU19HQ01fMTI4IHx8Ci0gICAgICBzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXIt
PmFsZ29yaXRobSA9PSBTUlRQX0FFU19HQ01fMjU2KSB7Ci0gICAgICByZXR1cm4gc3J0cF91bnBy
b3RlY3RfcnRjcF9hZWFkKGN0eCwgc3RyZWFtLCBzcnRjcF9oZHIsCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICh1bnNpZ25lZCBpbnQqKXBrdF9vY3RldF9sZW4sIHNlc3Np
b25fa2V5cywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWtpX3NpemUp
OwotICB9Ci0KLSAgc2VjX3NlcnZfY29uZmlkZW50aWFsaXR5ID0gc3RyZWFtLT5ydGNwX3NlcnZp
Y2VzID09IHNlY19zZXJ2X2NvbmYgfHwKLSAgICAgIHN0cmVhbS0+cnRjcF9zZXJ2aWNlcyA9PSBz
ZWNfc2Vydl9jb25mX2FuZF9hdXRoOwotCi0gIC8qCi0gICAqIHNldCBlbmNyeXB0aW9uIHN0YXJ0
LCBlbmNyeXB0aW9uIGxlbmd0aCwgYW5kIHRyYWlsZXIKLSAgICovCi0gIGVuY19vY3RldF9sZW4g
PSAqcGt0X29jdGV0X2xlbiAtIAotICAgICAgICAgICAgICAgICAgKG9jdGV0c19pbl9ydGNwX2hl
YWRlciArIHRhZ19sZW4gKyBta2lfc2l6ZSArIHNpemVvZihzcnRjcF90cmFpbGVyX3QpKTsKLSAg
LyogaW5kZXggJiBFIChlbmNyeXB0aW9uKSBiaXQgZm9sbG93IG5vcm1hbCBkYXRhLiAgaGRyLT5s
ZW4KLQkgaXMgdGhlIG51bWJlciBvZiB3b3JkcyAoMzItYml0KSBpbiB0aGUgbm9ybWFsIHBhY2tl
dCBtaW51cyAxICovCi0gIC8qIFRoaXMgc2hvdWxkIHBvaW50IHRyYWlsZXIgdG8gdGhlIHdvcmQg
cGFzdCB0aGUgZW5kIG9mIHRoZQotCSBub3JtYWwgZGF0YS4gKi8KLSAgLyogVGhpcyB3b3VsZCBu
ZWVkIHRvIGJlIG1vZGlmaWVkIGZvciBvcHRpb25hbCBtaWtleSBkYXRhICovCi0gIC8qCi0gICAq
IE5PVEU6IHRyYWlsZXIgaXMgMzItYml0IGFsaWduZWQgYmVjYXVzZSBSVENQICdwYWNrZXRzJyBh
cmUgYWx3YXlzCi0gICAqCSBtdWx0aXBsZXMgb2YgMzItYml0cyAoUkZDIDM1NTAgNi4xKQotICAg
Ki8KLSAgdHJhaWxlciA9ICh1aW50MzJfdCAqKSAoKGNoYXIgKikgaGRyICsKLSAgICAgICpwa3Rf
b2N0ZXRfbGVuIC0odGFnX2xlbiArIG1raV9zaXplICsgc2l6ZW9mKHNydGNwX3RyYWlsZXJfdCkp
KTsKLSAgZV9iaXRfaW5fcGFja2V0ID0KLSAgICAgICgqKCh1bnNpZ25lZCBjaGFyICopIHRyYWls
ZXIpICYgU1JUQ1BfRV9CWVRFX0JJVCkgPT0gU1JUQ1BfRV9CWVRFX0JJVDsKLSAgaWYgKGVfYml0
X2luX3BhY2tldCAhPSBzZWNfc2Vydl9jb25maWRlbnRpYWxpdHkpIHsKLSAgICByZXR1cm4gc3J0
cF9lcnJfc3RhdHVzX2NhbnRfY2hlY2s7Ci0gIH0KLSAgaWYgKHNlY19zZXJ2X2NvbmZpZGVudGlh
bGl0eSkgewotICAgIGVuY19zdGFydCA9ICh1aW50MzJfdCAqKWhkciArIHVpbnQzMnNfaW5fcnRj
cF9oZWFkZXI7ICAKLSAgfSBlbHNlIHsKLSAgICBlbmNfb2N0ZXRfbGVuID0gMDsKLSAgICBlbmNf
c3RhcnQgPSBOVUxMOyAvKiB0aGlzIGluZGljYXRlcyB0aGF0IHRoZXJlJ3Mgbm8gZW5jcnlwdGlv
biAqLwotICB9Ci0KLSAgLyogCi0gICAqIHNldCB0aGUgYXV0aF9zdGFydCBhbmQgYXV0aF90YWcg
cG9pbnRlcnMgdG8gdGhlIHByb3BlciBsb2NhdGlvbnMKLSAgICogKG5vdGUgdGhhdCBzcnRjcCAq
YWx3YXlzKiB1c2VzIGF1dGhlbnRpY2F0aW9uLCB1bmxpa2Ugc3J0cCkKLSAgICovCi0gIGF1dGhf
c3RhcnQgPSAodWludDMyX3QgKiloZHI7Ci0KLSAgLyoKLSAgICogVGhlIGxvY2F0aW9uIG9mIHRo
ZSBhdXRoIHRhZyBpbiB0aGUgcGFja2V0IG5lZWRzIHRvIGtub3cgTUtJIAotICAgKiBjb3VsZCBi
ZSBwcmVzZW50LiAgVGhlIGRhdGEgbmVlZGVkIHRvIGNhbGN1bGF0ZSB0aGUgQXV0aCB0YWcKLSAg
ICogbXVzdCBub3QgaW5jbHVkZSB0aGUgTUtJCi0gICAqLwotICBhdXRoX2xlbiA9ICpwa3Rfb2N0
ZXRfbGVuIC0gdGFnX2xlbiAtIG1raV9zaXplOwotICBhdXRoX3RhZyA9ICh1aW50OF90ICopaGRy
ICsgYXV0aF9sZW4gKyBta2lfc2l6ZTsKLQotICAvKiAKLSAgICogaWYgRUtUIGlzIGluIHVzZSwg
dGhlbiB3ZSBtYWtlIGEgY29weSBvZiB0aGUgdGFnIGZyb20gdGhlIHBhY2tldCwKLSAgICogYW5k
IHRoZW4gemVyb2l6ZSB0aGUgbG9jYXRpb24gb2YgdGhlIGJhc2UgdGFnCi0gICAqCi0gICAqIHdl
IGZpcnN0IHJlLXBvc2l0aW9uIHRoZSBhdXRoX3RhZyBwb2ludGVyIHNvIHRoYXQgaXQgcG9pbnRz
IHRvCi0gICAqIHRoZSBiYXNlIHRhZwotICAgKi8KLSAgaWYgKHN0cmVhbS0+ZWt0KSB7Ci0gICAg
YXV0aF90YWcgLT0gc3J0cF9la3Rfb2N0ZXRzX2FmdGVyX2Jhc2VfdGFnKHN0cmVhbS0+ZWt0KTsK
LSAgICBtZW1jcHkodGFnX2NvcHksIGF1dGhfdGFnLCB0YWdfbGVuKTsKLSAgICBvY3RldF9zdHJp
bmdfc2V0X3RvX3plcm8oYXV0aF90YWcsIHRhZ19sZW4pOwotICAgIGF1dGhfdGFnID0gdGFnX2Nv
cHk7Ci0gICAgYXV0aF9sZW4gKz0gdGFnX2xlbjsKLSAgfQotCi0gIC8qIAotICAgKiBjaGVjayB0
aGUgc2VxdWVuY2UgbnVtYmVyIGZvciByZXBsYXlzCi0gICAqLwotICAvKiB0aGlzIGlzIGVhc2ll
ciB0aGFuIGRlYWxpbmcgd2l0aCBiaXRmaWVsZCBhY2Nlc3MgKi8KLSAgc2VxX251bSA9IG50b2hs
KCp0cmFpbGVyKSAmIFNSVENQX0lOREVYX01BU0s7Ci0gIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAi
c3J0Y3AgaW5kZXg6ICV4Iiwgc2VxX251bSk7Ci0gIHN0YXR1cyA9IHNydHBfcmRiX2NoZWNrKCZz
dHJlYW0tPnJ0Y3BfcmRiLCBzZXFfbnVtKTsKLSAgaWYgKHN0YXR1cykKLSAgICByZXR1cm4gc3Rh
dHVzOwotCi0gIC8qIAotICAgKiBpZiB3ZSdyZSB1c2luZyBhZXMgY291bnRlciBtb2RlLCBzZXQg
bm9uY2UgYW5kIHNlcSAKLSAgICovCi0gIGlmIChzZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyLT50
eXBlLT5pZCA9PSBTUlRQX0FFU19JQ01fMTI4IHx8Ci0gICAgICBzZXNzaW9uX2tleXMtPnJ0Y3Bf
Y2lwaGVyLT50eXBlLT5pZCA9PSBTUlRQX0FFU19JQ01fMTkyIHx8Ci0gICAgICBzZXNzaW9uX2tl
eXMtPnJ0Y3BfY2lwaGVyLT50eXBlLT5pZCA9PSBTUlRQX0FFU19JQ01fMjU2KSB7Ci0gICAgdjEy
OF90IGl2OwotCi0gICAgaXYudjMyWzBdID0gMDsKLSAgICBpdi52MzJbMV0gPSBoZHItPnNzcmM7
IC8qIHN0aWxsIGluIG5ldHdvcmsgb3JkZXIhICovCi0gICAgaXYudjMyWzJdID0gaHRvbmwoc2Vx
X251bSA+PiAxNik7Ci0gICAgaXYudjMyWzNdID0gaHRvbmwoc2VxX251bSA8PCAxNik7Ci0gICAg
c3RhdHVzID0gc3J0cF9jaXBoZXJfc2V0X2l2KHNlc3Npb25fa2V5cy0+cnRjcF9jaXBoZXIsCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICh1aW50OF90KikmaXYsIHNydHBfZGlyZWN0
aW9uX2RlY3J5cHQpOwotCi0gIH0gZWxzZSB7ICAKLSAgICB2MTI4X3QgaXY7Ci0gICAgCi0gICAg
Lyogb3RoZXJ3aXNlLCBqdXN0IHNldCB0aGUgaW5kZXggdG8gc2VxX251bSAqLyAgCi0gICAgaXYu
djMyWzBdID0gMDsKLSAgICBpdi52MzJbMV0gPSAwOwotICAgIGl2LnYzMlsyXSA9IDA7Ci0gICAg
aXYudjMyWzNdID0gaHRvbmwoc2VxX251bSk7Ci0gICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfc2V0
X2l2KHNlc3Npb25fa2V5cy0+cnRjcF9jaXBoZXIsCi0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICh1aW50OF90KikmaXYsIHNydHBfZGlyZWN0aW9uX2RlY3J5cHQpOwotCi0gIH0KLSAg
aWYgKHN0YXR1cykKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2NpcGhlcl9mYWlsOwotCi0g
IC8qIGluaXRpYWxpemUgYXV0aCBmdW5jIGNvbnRleHQgKi8KLSAgc3J0cF9hdXRoX3N0YXJ0KHNl
c3Npb25fa2V5cy0+cnRjcF9hdXRoKTsKLQotICAvKiBydW4gYXV0aCBmdW5jIG92ZXIgcGFja2V0
LCBwdXQgcmVzdWx0IGludG8gdG1wX3RhZyAqLwotICBzdGF0dXMgPSBzcnRwX2F1dGhfY29tcHV0
ZShzZXNzaW9uX2tleXMtPnJ0Y3BfYXV0aCwgKHVpbnQ4X3QgKilhdXRoX3N0YXJ0LAotCQkJYXV0
aF9sZW4sIHRtcF90YWcpOwotICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgInNydGNwIGNvbXB1dGVk
IHRhZzogICAgICAgJXMiLCAKLQkgICAgICBzcnRwX29jdGV0X3N0cmluZ19oZXhfc3RyaW5nKHRt
cF90YWcsIHRhZ19sZW4pKTsKLSAgaWYgKHN0YXR1cykKLSAgICByZXR1cm4gc3J0cF9lcnJfc3Rh
dHVzX2F1dGhfZmFpbDsgICAKLSAgCi0gIC8qIGNvbXBhcmUgdGhlIHRhZyBqdXN0IGNvbXB1dGVk
IHdpdGggdGhlIG9uZSBpbiB0aGUgcGFja2V0ICovCi0gIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAi
c3J0Y3AgdGFnIGZyb20gcGFja2V0OiAgICAlcyIsIAotCSAgICAgIHNydHBfb2N0ZXRfc3RyaW5n
X2hleF9zdHJpbmcoYXV0aF90YWcsIHRhZ19sZW4pKTsgIAotICBpZiAob2N0ZXRfc3RyaW5nX2lz
X2VxKHRtcF90YWcsIGF1dGhfdGFnLCB0YWdfbGVuKSkKLSAgICByZXR1cm4gc3J0cF9lcnJfc3Rh
dHVzX2F1dGhfZmFpbDsKLQotICAvKiAKLSAgICogaWYgd2UncmUgYXV0aGVudGljYXRpbmcgdXNp
bmcgYSB1bml2ZXJzYWwgaGFzaCwgcHV0IHRoZSBrZXlzdHJlYW0KLSAgICogcHJlZml4IGludG8g
dGhlIGF1dGhlbnRpY2F0aW9uIHRhZwotICAgKi8KLSAgcHJlZml4X2xlbiA9IHNydHBfYXV0aF9n
ZXRfcHJlZml4X2xlbmd0aChzZXNzaW9uX2tleXMtPnJ0Y3BfYXV0aCk7ICAgIAotICBpZiAocHJl
Zml4X2xlbikgewotICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX291dHB1dChzZXNzaW9uX2tleXMt
PnJ0Y3BfY2lwaGVyLCBhdXRoX3RhZywgJnByZWZpeF9sZW4pOwotICAgIGRlYnVnX3ByaW50KG1v
ZF9zcnRwLCAia2V5c3RyZWFtIHByZWZpeDogJXMiLCAKLQkJc3J0cF9vY3RldF9zdHJpbmdfaGV4
X3N0cmluZyhhdXRoX3RhZywgcHJlZml4X2xlbikpOwotICAgIGlmIChzdGF0dXMpCi0gICAgICBy
ZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2NpcGhlcl9mYWlsOwotICB9Ci0KLSAgLyogaWYgd2UncmUg
ZGVjcnlwdGluZywgZXhvciBrZXlzdHJlYW0gaW50byB0aGUgbWVzc2FnZSAqLwotICBpZiAoZW5j
X3N0YXJ0KSB7Ci0gICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfZGVjcnlwdChzZXNzaW9uX2tleXMt
PnJ0Y3BfY2lwaGVyLCAodWludDhfdCAqKWVuY19zdGFydCwKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICZlbmNfb2N0ZXRfbGVuKTsKLSAgICBpZiAoc3RhdHVzKQotICAgICAgcmV0
dXJuIHNydHBfZXJyX3N0YXR1c19jaXBoZXJfZmFpbDsKLSAgfQotCi0gIC8qIGRlY3JlYXNlIHRo
ZSBwYWNrZXQgbGVuZ3RoIGJ5IHRoZSBsZW5ndGggb2YgdGhlIGF1dGggdGFnIGFuZCBzZXFfbnVt
ICovCi0gICpwa3Rfb2N0ZXRfbGVuIC09ICh0YWdfbGVuICsgc2l6ZW9mKHNydGNwX3RyYWlsZXJf
dCkpOwotCi0gIC8qIGRlY3JlYXNlIHRoZSBwYWNrZXQgbGVuZ3RoIGJ5IHRoZSBsZW5ndGggb2Yg
dGhlIG1raV9zaXplICovCi0gICpwa3Rfb2N0ZXRfbGVuIC09IG1raV9zaXplOwotCi0gIC8qCi0g
ICAqIGlmIEVLVCBpcyBpbiBlZmZlY3QsIHN1YnRyYWN0IHRoZSBFS1QgZGF0YSBvdXQgb2YgdGhl
IHBhY2tldAotICAgKiBsZW5ndGgKLSAgICovCi0gICpwa3Rfb2N0ZXRfbGVuIC09IHNydHBfZWt0
X29jdGV0c19hZnRlcl9iYXNlX3RhZyhzdHJlYW0tPmVrdCk7Ci0KLSAgLyogCi0gICAqIHZlcmlm
eSB0aGF0IHN0cmVhbSBpcyBmb3IgcmVjZWl2ZWQgdHJhZmZpYyAtIHRoaXMgY2hlY2sgd2lsbAot
ICAgKiBkZXRlY3QgU1NSQyBjb2xsaXNpb25zLCBzaW5jZSBhIHN0cmVhbSB0aGF0IGFwcGVhcnMg
aW4gYm90aAotICAgKiBzcnRwX3Byb3RlY3QoKSBhbmQgc3J0cF91bnByb3RlY3QoKSB3aWxsIGZh
aWwgdGhpcyB0ZXN0IGluIG9uZSBvZgotICAgKiB0aG9zZSBmdW5jdGlvbnMuCi0gICAqCi0gICAq
IHdlIGRvIHRoaXMgY2hlY2sgKmFmdGVyKiB0aGUgYXV0aGVudGljYXRpb24gY2hlY2ssIHNvIHRo
YXQgdGhlCi0gICAqIGxhdHRlciBjaGVjayB3aWxsIGNhdGNoIGFueSBhdHRlbXB0cyB0byBmb29s
IHVzIGludG8gdGhpbmtpbmcKLSAgICogdGhhdCB3ZSd2ZSBnb3QgYSBjb2xsaXNpb24KLSAgICov
Ci0gIGlmIChzdHJlYW0tPmRpcmVjdGlvbiAhPSBkaXJfc3J0cF9yZWNlaXZlcikgewotICAgIGlm
IChzdHJlYW0tPmRpcmVjdGlvbiA9PSBkaXJfdW5rbm93bikgewotICAgICAgc3RyZWFtLT5kaXJl
Y3Rpb24gPSBkaXJfc3J0cF9yZWNlaXZlcjsKLSAgICB9IGVsc2UgewotICAgICAgc3J0cF9oYW5k
bGVfZXZlbnQoY3R4LCBzdHJlYW0sIGV2ZW50X3NzcmNfY29sbGlzaW9uKTsKLSAgICB9Ci0gIH0K
LQotICAvKiAKLSAgICogaWYgdGhlIHN0cmVhbSBpcyBhICdwcm92aXNpb25hbCcgb25lLCBpbiB3
aGljaCB0aGUgdGVtcGxhdGUgY29udGV4dAotICAgKiBpcyB1c2VkLCB0aGVuIHdlIG5lZWQgdG8g
YWxsb2NhdGUgYSBuZXcgc3RyZWFtIGF0IHRoaXMgcG9pbnQsIHNpbmNlCi0gICAqIHRoZSBhdXRo
ZW50aWNhdGlvbiBwYXNzZWQKLSAgICovCi0gIGlmIChzdHJlYW0gPT0gY3R4LT5zdHJlYW1fdGVt
cGxhdGUpIHsgIAotICAgIHNydHBfc3RyZWFtX2N0eF90ICpuZXdfc3RyZWFtOwotCi0gICAgLyog
Ci0gICAgICogYWxsb2NhdGUgYW5kIGluaXRpYWxpemUgYSBuZXcgc3RyZWFtIAotICAgICAqIAot
ICAgICAqIG5vdGUgdGhhdCB3ZSBpbmRpY2F0ZSBmYWlsdXJlIGlmIHdlIGNhbid0IGFsbG9jYXRl
IHRoZSBuZXcKLSAgICAgKiBzdHJlYW0sIGFuZCBzb21lIGltcGxlbWVudGF0aW9ucyB3aWxsIHdh
bnQgdG8gbm90IHJldHVybgotICAgICAqIGZhaWx1cmUgaGVyZQotICAgICAqLwotICAgIHN0YXR1
cyA9IHNydHBfc3RyZWFtX2Nsb25lKGN0eC0+c3RyZWFtX3RlbXBsYXRlLCBoZHItPnNzcmMsICZu
ZXdfc3RyZWFtKTsgCi0gICAgaWYgKHN0YXR1cykKLSAgICAgIHJldHVybiBzdGF0dXM7Ci0gICAg
Ci0gICAgLyogYWRkIG5ldyBzdHJlYW0gdG8gdGhlIGhlYWQgb2YgdGhlIHN0cmVhbV9saXN0ICov
Ci0gICAgbmV3X3N0cmVhbS0+bmV4dCA9IGN0eC0+c3RyZWFtX2xpc3Q7Ci0gICAgY3R4LT5zdHJl
YW1fbGlzdCA9IG5ld19zdHJlYW07Ci0gICAgCi0gICAgLyogc2V0IHN0cmVhbSAodGhlIHBvaW50
ZXIgdXNlZCBpbiB0aGlzIGZ1bmN0aW9uKSAqLwotICAgIHN0cmVhbSA9IG5ld19zdHJlYW07Ci0g
IH0KLQotICAvKiB3ZSd2ZSBwYXNzZWQgdGhlIGF1dGhlbnRpY2F0aW9uIGNoZWNrLCBzbyBhZGQg
c2VxX251bSB0byB0aGUgcmRiICovCi0gIHNydHBfcmRiX2FkZF9pbmRleCgmc3RyZWFtLT5ydGNw
X3JkYiwgc2VxX251bSk7Ci0gICAgCi0gICAgCi0gIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7
ICAKLX0KLQotCiAvKgogICogdXNlciBkYXRhIHdpdGhpbiBzcnRwX3QgY29udGV4dAogICovCiAK
LXZvaWQKLXNydHBfc2V0X3VzZXJfZGF0YShzcnRwX3QgY3R4LCB2b2lkICpkYXRhKSB7Ci0gIGN0
eC0+dXNlcl9kYXRhID0gZGF0YTsKK3ZvaWQgc3J0cF9zZXRfdXNlcl9kYXRhKHNydHBfdCBjdHgs
IHZvaWQgKmRhdGEpCit7CisgICAgY3R4LT51c2VyX2RhdGEgPSBkYXRhOwogfQogCi12b2lkKgot
c3J0cF9nZXRfdXNlcl9kYXRhKHNydHBfdCBjdHgpIHsKLSAgcmV0dXJuIGN0eC0+dXNlcl9kYXRh
Owordm9pZCAqc3J0cF9nZXRfdXNlcl9kYXRhKHNydHBfdCBjdHgpCit7CisgICAgcmV0dXJuIGN0
eC0+dXNlcl9kYXRhOwogfQogCi0KIC8qCi0gKiBkdGxzIGtleWluZyBmb3Igc3J0cCAKKyAqIGR0
bHMga2V5aW5nIGZvciBzcnRwCiAgKi8KIAotc3J0cF9lcnJfc3RhdHVzX3QKLXNydHBfY3J5cHRv
X3BvbGljeV9zZXRfZnJvbV9wcm9maWxlX2Zvcl9ydHAoc3J0cF9jcnlwdG9fcG9saWN5X3QgKnBv
bGljeSwgCi0JCQkJICAgICAgICAgICAgc3J0cF9wcm9maWxlX3QgcHJvZmlsZSkgewotCi0gIC8q
IHNldCBTUlRQIHBvbGljeSBmcm9tIHRoZSBTUlRQIHByb2ZpbGUgaW4gdGhlIGtleSBzZXQgKi8K
LSAgc3dpdGNoKHByb2ZpbGUpIHsKLSAgY2FzZSBzcnRwX3Byb2ZpbGVfYWVzMTI4X2NtX3NoYTFf
ODA6Ci0gICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfY21fMTI4X2htYWNfc2hhMV84MChw
b2xpY3kpOwotICAgIGJyZWFrOwotICBjYXNlIHNydHBfcHJvZmlsZV9hZXMxMjhfY21fc2hhMV8z
MjoKLSAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19jbV8xMjhfaG1hY19zaGExXzMyKHBv
bGljeSk7Ci0gICAgYnJlYWs7Ci0gIGNhc2Ugc3J0cF9wcm9maWxlX251bGxfc2hhMV84MDoKLSAg
ICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X251bGxfY2lwaGVyX2htYWNfc2hhMV84MChwb2xpY3kp
OwotICAgIGJyZWFrOworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9m
cm9tX3Byb2ZpbGVfZm9yX3J0cCgKKyAgICBzcnRwX2NyeXB0b19wb2xpY3lfdCAqcG9saWN5LAor
ICAgIHNydHBfcHJvZmlsZV90IHByb2ZpbGUpCit7CisgICAgLyogc2V0IFNSVFAgcG9saWN5IGZy
b20gdGhlIFNSVFAgcHJvZmlsZSBpbiB0aGUga2V5IHNldCAqLworICAgIHN3aXRjaCAocHJvZmls
ZSkgeworICAgIGNhc2Ugc3J0cF9wcm9maWxlX2FlczEyOF9jbV9zaGExXzgwOgorICAgICAgICBz
cnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19jbV8xMjhfaG1hY19zaGExXzgwKHBvbGljeSk7Cisg
ICAgICAgIGJyZWFrOworICAgIGNhc2Ugc3J0cF9wcm9maWxlX2FlczEyOF9jbV9zaGExXzMyOgor
ICAgICAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19jbV8xMjhfaG1hY19zaGExXzMyKHBv
bGljeSk7CisgICAgICAgIGJyZWFrOworICAgIGNhc2Ugc3J0cF9wcm9maWxlX251bGxfc2hhMV84
MDoKKyAgICAgICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9udWxsX2NpcGhlcl9obWFjX3NoYTFf
ODAocG9saWN5KTsKKyAgICAgICAgYnJlYWs7CiAjaWYgZGVmaW5lZChPUEVOU1NMKQotICBjYXNl
IHNydHBfcHJvZmlsZV9hZWFkX2Flc18xMjhfZ2NtOgotICAgIHNydHBfY3J5cHRvX3BvbGljeV9z
ZXRfYWVzX2djbV8xMjhfMTZfYXV0aChwb2xpY3kpOwotICAgIGJyZWFrOwotICBjYXNlIHNydHBf
cHJvZmlsZV9hZWFkX2Flc18yNTZfZ2NtOgotICAgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVz
X2djbV8yNTZfMTZfYXV0aChwb2xpY3kpOwotICAgIGJyZWFrOworICAgIGNhc2Ugc3J0cF9wcm9m
aWxlX2FlYWRfYWVzXzEyOF9nY206CisgICAgICAgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVz
X2djbV8xMjhfMTZfYXV0aChwb2xpY3kpOworICAgICAgICBicmVhazsKKyAgICBjYXNlIHNydHBf
cHJvZmlsZV9hZWFkX2Flc18yNTZfZ2NtOgorICAgICAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0
X2Flc19nY21fMjU2XzE2X2F1dGgocG9saWN5KTsKKyAgICAgICAgYnJlYWs7CiAjZW5kaWYKICAg
ICAvKiB0aGUgZm9sbG93aW5nIHByb2ZpbGVzIGFyZSBub3QgKHlldCkgc3VwcG9ydGVkICovCi0g
IGNhc2Ugc3J0cF9wcm9maWxlX251bGxfc2hhMV8zMjoKLSAgZGVmYXVsdDoKLSAgICByZXR1cm4g
c3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJhbTsKLSAgfQorICAgIGNhc2Ugc3J0cF9wcm9maWxlX251
bGxfc2hhMV8zMjoKKyAgICBkZWZhdWx0OgorICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVz
X2JhZF9wYXJhbTsKKyAgICB9CiAKLSAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKKyAgICBy
ZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQogCi1zcnRwX2Vycl9zdGF0dXNfdAotc3J0cF9j
cnlwdG9fcG9saWN5X3NldF9mcm9tX3Byb2ZpbGVfZm9yX3J0Y3Aoc3J0cF9jcnlwdG9fcG9saWN5
X3QgKnBvbGljeSwgCi0JCQkJCSAgICAgc3J0cF9wcm9maWxlX3QgcHJvZmlsZSkgewotCi0gIC8q
IHNldCBTUlRQIHBvbGljeSBmcm9tIHRoZSBTUlRQIHByb2ZpbGUgaW4gdGhlIGtleSBzZXQgKi8K
LSAgc3dpdGNoKHByb2ZpbGUpIHsKLSAgY2FzZSBzcnRwX3Byb2ZpbGVfYWVzMTI4X2NtX3NoYTFf
ODA6Ci0gICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfY21fMTI4X2htYWNfc2hhMV84MChw
b2xpY3kpOwotICAgIGJyZWFrOwotICBjYXNlIHNydHBfcHJvZmlsZV9hZXMxMjhfY21fc2hhMV8z
MjoKLSAgICAvKiBXZSBkbyBub3QgaG9ub3IgdGhlIDMyLWJpdCBhdXRoIHRhZyByZXF1ZXN0IHNp
bmNlCi0gICAgICogdGhpcyBpcyBub3QgY29tcGxpYW50IHdpdGggUkZDIDM3MTEgKi8KLSAgICBz
cnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19jbV8xMjhfaG1hY19zaGExXzgwKHBvbGljeSk7Ci0g
ICAgYnJlYWs7Ci0gIGNhc2Ugc3J0cF9wcm9maWxlX251bGxfc2hhMV84MDoKLSAgICBzcnRwX2Ny
eXB0b19wb2xpY3lfc2V0X251bGxfY2lwaGVyX2htYWNfc2hhMV84MChwb2xpY3kpOwotICAgIGJy
ZWFrOworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9mcm9tX3Byb2Zp
bGVfZm9yX3J0Y3AoCisgICAgc3J0cF9jcnlwdG9fcG9saWN5X3QgKnBvbGljeSwKKyAgICBzcnRw
X3Byb2ZpbGVfdCBwcm9maWxlKQoreworICAgIC8qIHNldCBTUlRQIHBvbGljeSBmcm9tIHRoZSBT
UlRQIHByb2ZpbGUgaW4gdGhlIGtleSBzZXQgKi8KKyAgICBzd2l0Y2ggKHByb2ZpbGUpIHsKKyAg
ICBjYXNlIHNydHBfcHJvZmlsZV9hZXMxMjhfY21fc2hhMV84MDoKKyAgICAgICAgc3J0cF9jcnlw
dG9fcG9saWN5X3NldF9hZXNfY21fMTI4X2htYWNfc2hhMV84MChwb2xpY3kpOworICAgICAgICBi
cmVhazsKKyAgICBjYXNlIHNydHBfcHJvZmlsZV9hZXMxMjhfY21fc2hhMV8zMjoKKyAgICAgICAg
LyogV2UgZG8gbm90IGhvbm9yIHRoZSAzMi1iaXQgYXV0aCB0YWcgcmVxdWVzdCBzaW5jZQorICAg
ICAgICAgKiB0aGlzIGlzIG5vdCBjb21wbGlhbnQgd2l0aCBSRkMgMzcxMSAqLworICAgICAgICBz
cnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19jbV8xMjhfaG1hY19zaGExXzgwKHBvbGljeSk7Cisg
ICAgICAgIGJyZWFrOworICAgIGNhc2Ugc3J0cF9wcm9maWxlX251bGxfc2hhMV84MDoKKyAgICAg
ICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9udWxsX2NpcGhlcl9obWFjX3NoYTFfODAocG9saWN5
KTsKKyAgICAgICAgYnJlYWs7CiAjaWYgZGVmaW5lZChPUEVOU1NMKQotICBjYXNlIHNydHBfcHJv
ZmlsZV9hZWFkX2Flc18xMjhfZ2NtOgotICAgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2dj
bV8xMjhfMTZfYXV0aChwb2xpY3kpOwotICAgIGJyZWFrOwotICBjYXNlIHNydHBfcHJvZmlsZV9h
ZWFkX2Flc18yNTZfZ2NtOgotICAgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2djbV8yNTZf
MTZfYXV0aChwb2xpY3kpOwotICAgIGJyZWFrOworICAgIGNhc2Ugc3J0cF9wcm9maWxlX2FlYWRf
YWVzXzEyOF9nY206CisgICAgICAgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2djbV8xMjhf
MTZfYXV0aChwb2xpY3kpOworICAgICAgICBicmVhazsKKyAgICBjYXNlIHNydHBfcHJvZmlsZV9h
ZWFkX2Flc18yNTZfZ2NtOgorICAgICAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21f
MjU2XzE2X2F1dGgocG9saWN5KTsKKyAgICAgICAgYnJlYWs7CiAjZW5kaWYKICAgICAvKiB0aGUg
Zm9sbG93aW5nIHByb2ZpbGVzIGFyZSBub3QgKHlldCkgc3VwcG9ydGVkICovCi0gIGNhc2Ugc3J0
cF9wcm9maWxlX251bGxfc2hhMV8zMjoKLSAgZGVmYXVsdDoKLSAgICByZXR1cm4gc3J0cF9lcnJf
c3RhdHVzX2JhZF9wYXJhbTsKLSAgfQorICAgIGNhc2Ugc3J0cF9wcm9maWxlX251bGxfc2hhMV8z
MjoKKyAgICBkZWZhdWx0OgorICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJh
bTsKKyAgICB9CiAKLSAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKKyAgICByZXR1cm4gc3J0
cF9lcnJfc3RhdHVzX29rOwogfQogCi12b2lkIHNydHBfYXBwZW5kX3NhbHRfdG9fa2V5KHVpbnQ4
X3QgKmtleSwgdW5zaWduZWQgaW50IGJ5dGVzX2luX2tleSwgdWludDhfdCAqc2FsdCwgdW5zaWdu
ZWQgaW50IGJ5dGVzX2luX3NhbHQpIHsKLSAgbWVtY3B5KGtleSArIGJ5dGVzX2luX2tleSwgc2Fs
dCwgYnl0ZXNfaW5fc2FsdCk7Cit2b2lkIHNydHBfYXBwZW5kX3NhbHRfdG9fa2V5KHVpbnQ4X3Qg
KmtleSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IGJ5dGVzX2lu
X2tleSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDhfdCAqc2FsdCwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IGJ5dGVzX2luX3NhbHQpCit7Cisg
ICAgbWVtY3B5KGtleSArIGJ5dGVzX2luX2tleSwgc2FsdCwgYnl0ZXNfaW5fc2FsdCk7CiB9CiAK
LXVuc2lnbmVkIGludAotc3J0cF9wcm9maWxlX2dldF9tYXN0ZXJfa2V5X2xlbmd0aChzcnRwX3By
b2ZpbGVfdCBwcm9maWxlKSB7Ci0KLSAgc3dpdGNoKHByb2ZpbGUpIHsKLSAgY2FzZSBzcnRwX3By
b2ZpbGVfYWVzMTI4X2NtX3NoYTFfODA6Ci0gICAgcmV0dXJuIFNSVFBfQUVTXzEyOF9LRVlfTEVO
OwotICAgIGJyZWFrOwotICBjYXNlIHNydHBfcHJvZmlsZV9hZXMxMjhfY21fc2hhMV8zMjoKLSAg
ICByZXR1cm4gU1JUUF9BRVNfMTI4X0tFWV9MRU47Ci0gICAgYnJlYWs7Ci0gIGNhc2Ugc3J0cF9w
cm9maWxlX251bGxfc2hhMV84MDoKLSAgICByZXR1cm4gU1JUUF9BRVNfMTI4X0tFWV9MRU47Ci0g
ICAgYnJlYWs7Ci0gIGNhc2Ugc3J0cF9wcm9maWxlX2FlYWRfYWVzXzEyOF9nY206Ci0gICAgcmV0
dXJuIFNSVFBfQUVTXzEyOF9LRVlfTEVOOwotICAgIGJyZWFrOwotICBjYXNlIHNydHBfcHJvZmls
ZV9hZWFkX2Flc18yNTZfZ2NtOgotICAgIHJldHVybiBTUlRQX0FFU18yNTZfS0VZX0xFTjsKLSAg
ICBicmVhazsKK3Vuc2lnbmVkIGludCBzcnRwX3Byb2ZpbGVfZ2V0X21hc3Rlcl9rZXlfbGVuZ3Ro
KHNydHBfcHJvZmlsZV90IHByb2ZpbGUpCit7CisgICAgc3dpdGNoIChwcm9maWxlKSB7CisgICAg
Y2FzZSBzcnRwX3Byb2ZpbGVfYWVzMTI4X2NtX3NoYTFfODA6CisgICAgICAgIHJldHVybiBTUlRQ
X0FFU18xMjhfS0VZX0xFTjsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBzcnRwX3Byb2ZpbGVf
YWVzMTI4X2NtX3NoYTFfMzI6CisgICAgICAgIHJldHVybiBTUlRQX0FFU18xMjhfS0VZX0xFTjsK
KyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBzcnRwX3Byb2ZpbGVfbnVsbF9zaGExXzgwOgorICAg
ICAgICByZXR1cm4gU1JUUF9BRVNfMTI4X0tFWV9MRU47CisgICAgICAgIGJyZWFrOworICAgIGNh
c2Ugc3J0cF9wcm9maWxlX2FlYWRfYWVzXzEyOF9nY206CisgICAgICAgIHJldHVybiBTUlRQX0FF
U18xMjhfS0VZX0xFTjsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBzcnRwX3Byb2ZpbGVfYWVh
ZF9hZXNfMjU2X2djbToKKyAgICAgICAgcmV0dXJuIFNSVFBfQUVTXzI1Nl9LRVlfTEVOOworICAg
ICAgICBicmVhazsKICAgICAvKiB0aGUgZm9sbG93aW5nIHByb2ZpbGVzIGFyZSBub3QgKHlldCkg
c3VwcG9ydGVkICovCi0gIGNhc2Ugc3J0cF9wcm9maWxlX251bGxfc2hhMV8zMjoKLSAgZGVmYXVs
dDoKLSAgICByZXR1cm4gMDsgIC8qIGluZGljYXRlIGVycm9yIGJ5IHJldHVybmluZyBhIHplcm8g
Ki8KLSAgfQorICAgIGNhc2Ugc3J0cF9wcm9maWxlX251bGxfc2hhMV8zMjoKKyAgICBkZWZhdWx0
OgorICAgICAgICByZXR1cm4gMDsgLyogaW5kaWNhdGUgZXJyb3IgYnkgcmV0dXJuaW5nIGEgemVy
byAqLworICAgIH0KIH0KIAotdW5zaWduZWQgaW50Ci1zcnRwX3Byb2ZpbGVfZ2V0X21hc3Rlcl9z
YWx0X2xlbmd0aChzcnRwX3Byb2ZpbGVfdCBwcm9maWxlKSB7Ci0KLSAgc3dpdGNoKHByb2ZpbGUp
IHsKLSAgY2FzZSBzcnRwX3Byb2ZpbGVfYWVzMTI4X2NtX3NoYTFfODA6Ci0gICAgcmV0dXJuIFNS
VFBfU0FMVF9MRU47Ci0gICAgYnJlYWs7Ci0gIGNhc2Ugc3J0cF9wcm9maWxlX2FlczEyOF9jbV9z
aGExXzMyOgotICAgIHJldHVybiBTUlRQX1NBTFRfTEVOOwotICAgIGJyZWFrOwotICBjYXNlIHNy
dHBfcHJvZmlsZV9udWxsX3NoYTFfODA6Ci0gICAgcmV0dXJuIFNSVFBfU0FMVF9MRU47Ci0gICAg
YnJlYWs7Ci0gIGNhc2Ugc3J0cF9wcm9maWxlX2FlYWRfYWVzXzEyOF9nY206Ci0gICAgcmV0dXJu
IFNSVFBfQUVBRF9TQUxUX0xFTjsKLSAgICBicmVhazsKLSAgY2FzZSBzcnRwX3Byb2ZpbGVfYWVh
ZF9hZXNfMjU2X2djbToKLSAgICByZXR1cm4gU1JUUF9BRUFEX1NBTFRfTEVOOwotICAgIGJyZWFr
OwordW5zaWduZWQgaW50IHNydHBfcHJvZmlsZV9nZXRfbWFzdGVyX3NhbHRfbGVuZ3RoKHNydHBf
cHJvZmlsZV90IHByb2ZpbGUpCit7CisgICAgc3dpdGNoIChwcm9maWxlKSB7CisgICAgY2FzZSBz
cnRwX3Byb2ZpbGVfYWVzMTI4X2NtX3NoYTFfODA6CisgICAgICAgIHJldHVybiBTUlRQX1NBTFRf
TEVOOworICAgICAgICBicmVhazsKKyAgICBjYXNlIHNydHBfcHJvZmlsZV9hZXMxMjhfY21fc2hh
MV8zMjoKKyAgICAgICAgcmV0dXJuIFNSVFBfU0FMVF9MRU47CisgICAgICAgIGJyZWFrOworICAg
IGNhc2Ugc3J0cF9wcm9maWxlX251bGxfc2hhMV84MDoKKyAgICAgICAgcmV0dXJuIFNSVFBfU0FM
VF9MRU47CisgICAgICAgIGJyZWFrOworICAgIGNhc2Ugc3J0cF9wcm9maWxlX2FlYWRfYWVzXzEy
OF9nY206CisgICAgICAgIHJldHVybiBTUlRQX0FFQURfU0FMVF9MRU47CisgICAgICAgIGJyZWFr
OworICAgIGNhc2Ugc3J0cF9wcm9maWxlX2FlYWRfYWVzXzI1Nl9nY206CisgICAgICAgIHJldHVy
biBTUlRQX0FFQURfU0FMVF9MRU47CisgICAgICAgIGJyZWFrOwogICAgIC8qIHRoZSBmb2xsb3dp
bmcgcHJvZmlsZXMgYXJlIG5vdCAoeWV0KSBzdXBwb3J0ZWQgKi8KLSAgY2FzZSBzcnRwX3Byb2Zp
bGVfbnVsbF9zaGExXzMyOgotICBkZWZhdWx0OgotICAgIHJldHVybiAwOyAgLyogaW5kaWNhdGUg
ZXJyb3IgYnkgcmV0dXJuaW5nIGEgemVybyAqLwotICB9CisgICAgY2FzZSBzcnRwX3Byb2ZpbGVf
bnVsbF9zaGExXzMyOgorICAgIGRlZmF1bHQ6CisgICAgICAgIHJldHVybiAwOyAvKiBpbmRpY2F0
ZSBlcnJvciBieSByZXR1cm5pbmcgYSB6ZXJvICovCisgICAgfQogfQogCi1zcnRwX2Vycl9zdGF0
dXNfdAotc3J0cF9nZXRfcHJvdGVjdF90cmFpbGVyX2xlbmd0aChzcnRwX3Qgc2Vzc2lvbiwKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgdXNlX21raSwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgbWtpX2luZGV4LAotICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCAqbGVuZ3RoKSAKK3NydHBfZXJyX3N0YXR1c190
IHN0cmVhbV9nZXRfcHJvdGVjdF90cmFpbGVyX2xlbmd0aChzcnRwX3N0cmVhbV9jdHhfdCAqc3Ry
ZWFtLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHVpbnQzMl90IGlzX3J0cCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB1aW50MzJfdCB1c2VfbWtpLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IG1raV9pbmRleCwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCAqbGVu
Z3RoKQogewotICAgIHNydHBfc3RyZWFtX2N0eF90ICpzdHJlYW07Ci0KLSAgICBpZiAoc2Vzc2lv
biA9PSBOVUxMKQotICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW07Ci0KICAg
ICAqbGVuZ3RoID0gMDsKIAotICAgIC8qIFRyeSBvYnRhaW5pbmcgc3RyZWFtIGZyb20gc3RyZWFt
X2xpc3QgKi8KLSAgICBzdHJlYW0gPSBzZXNzaW9uLT5zdHJlYW1fbGlzdDsKLQotICAgIGlmIChz
dHJlYW0gPT0gTlVMTCkgewotICAgICAgICAvKiBUcnkgb2J0YWluaW5nIHRoZSB0ZW1wbGF0ZSBz
dHJlYW0gKi8KLSAgICAgICAgc3RyZWFtID0gc2Vzc2lvbi0+c3RyZWFtX3RlbXBsYXRlOwotICAg
IH0KLQotICAgIGlmIChzdHJlYW0gPT0gTlVMTCkgewotICAgICAgICByZXR1cm4gc3J0cF9lcnJf
c3RhdHVzX2JhZF9wYXJhbTsKLSAgICB9CisgICAgc3J0cF9zZXNzaW9uX2tleXNfdCAqc2Vzc2lv
bl9rZXk7CiAKICAgICBpZiAodXNlX21raSkgewotICAgICAgIGlmIChta2lfaW5kZXggPiBzdHJl
YW0tPm51bV9tYXN0ZXJfa2V5cykKLSAgICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19i
YWRfbWtpOworICAgICAgICBpZiAobWtpX2luZGV4ID49IHN0cmVhbS0+bnVtX21hc3Rlcl9rZXlz
KSB7CisgICAgICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2JhZF9ta2k7CisgICAgICAg
IH0KKyAgICAgICAgc2Vzc2lvbl9rZXkgPSAmc3RyZWFtLT5zZXNzaW9uX2tleXNbbWtpX2luZGV4
XTsKIAotICAgICAgICpsZW5ndGggKz0gc3RyZWFtLT5zZXNzaW9uX2tleXNbbWtpX2luZGV4XS5t
a2lfc2l6ZTsKLSAgICAgICAqbGVuZ3RoICs9IHNydHBfYXV0aF9nZXRfdGFnX2xlbmd0aChzdHJl
YW0tPnNlc3Npb25fa2V5c1tta2lfaW5kZXhdLnJ0cF9hdXRoKTsKKyAgICAgICAgKmxlbmd0aCAr
PSBzZXNzaW9uX2tleS0+bWtpX3NpemU7CisKKyAgICB9IGVsc2UgeworICAgICAgICBzZXNzaW9u
X2tleSA9ICZzdHJlYW0tPnNlc3Npb25fa2V5c1swXTsKKyAgICB9CisgICAgaWYgKGlzX3J0cCkg
eworICAgICAgICAqbGVuZ3RoICs9IHNydHBfYXV0aF9nZXRfdGFnX2xlbmd0aChzZXNzaW9uX2tl
eS0+cnRwX2F1dGgpOwogICAgIH0gZWxzZSB7Ci0gICAgICAgKmxlbmd0aCArPSBzcnRwX2F1dGhf
Z2V0X3RhZ19sZW5ndGgoc3RyZWFtLT5zZXNzaW9uX2tleXNbMF0ucnRwX2F1dGgpOworICAgICAg
ICAqbGVuZ3RoICs9IHNydHBfYXV0aF9nZXRfdGFnX2xlbmd0aChzZXNzaW9uX2tleS0+cnRjcF9h
dXRoKTsKKyAgICAgICAgKmxlbmd0aCArPSBzaXplb2Yoc3J0Y3BfdHJhaWxlcl90KTsKICAgICB9
CiAKICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQogCi1zcnRwX2Vycl9zdGF0dXNf
dAotc3J0cF9nZXRfcHJvdGVjdF9ydGNwX3RyYWlsZXJfbGVuZ3RoKHNydHBfdCBzZXNzaW9uLAot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IHVzZV9ta2ksCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgbWtpX2luZGV4LAot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90ICpsZW5ndGgpIAor
c3J0cF9lcnJfc3RhdHVzX3QgZ2V0X3Byb3RlY3RfdHJhaWxlcl9sZW5ndGgoc3J0cF90IHNlc3Np
b24sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJf
dCBpc19ydHAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1
aW50MzJfdCB1c2VfbWtpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgdWludDMyX3QgbWtpX2luZGV4LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgdWludDMyX3QgKmxlbmd0aCkKIHsKICAgICBzcnRwX3N0cmVhbV9jdHhf
dCAqc3RyZWFtOwogCi0gICAgaWYgKHNlc3Npb24gPT0gTlVMTCkKLSAgICAgIHJldHVybiBzcnRw
X2Vycl9zdGF0dXNfYmFkX3BhcmFtOworICAgIGlmIChzZXNzaW9uID09IE5VTEwpIHsKKyAgICAg
ICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW07CisgICAgfQogCi0gICAgKmxlbmd0
aCA9IDA7CisgICAgaWYgKHNlc3Npb24tPnN0cmVhbV90ZW1wbGF0ZSA9PSBOVUxMICYmIHNlc3Np
b24tPnN0cmVhbV9saXN0ID09IE5VTEwpIHsKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1
c19iYWRfcGFyYW07CisgICAgfQogCi0gICAgLyogVHJ5IG9idGFpbmluZyBzdHJlYW0gZnJvbSBz
dHJlYW1fbGlzdCAqLwotICAgIHN0cmVhbSA9IHNlc3Npb24tPnN0cmVhbV9saXN0OworICAgICps
ZW5ndGggPSAwOwogCi0gICAgaWYgKHN0cmVhbSA9PSBOVUxMKSB7Ci0gICAgICAgIC8qIFRyeSBv
YnRhaW5pbmcgdGhlIHRlbXBsYXRlIHN0cmVhbSAqLwotICAgICAgICBzdHJlYW0gPSBzZXNzaW9u
LT5zdHJlYW1fdGVtcGxhdGU7Ci0gICAgfQorICAgIHN0cmVhbSA9IHNlc3Npb24tPnN0cmVhbV90
ZW1wbGF0ZTsKIAotICAgIGlmIChzdHJlYW0gPT0gTlVMTCkgewotICAgICAgICByZXR1cm4gc3J0
cF9lcnJfc3RhdHVzX2JhZF9wYXJhbTsKKyAgICBpZiAoc3RyZWFtICE9IE5VTEwpIHsKKyAgICAg
ICAgc3RyZWFtX2dldF9wcm90ZWN0X3RyYWlsZXJfbGVuZ3RoKHN0cmVhbSwgaXNfcnRwLCB1c2Vf
bWtpLCBta2lfaW5kZXgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBsZW5ndGgpOwogICAgIH0KIAotICAgIGlmICh1c2VfbWtpKSB7Ci0gICAgICAgaWYgKG1raV9p
bmRleCA+IHN0cmVhbS0+bnVtX21hc3Rlcl9rZXlzKQotICAgICAgICAgICByZXR1cm4gc3J0cF9l
cnJfc3RhdHVzX2JhZF9ta2k7CisgICAgc3RyZWFtID0gc2Vzc2lvbi0+c3RyZWFtX2xpc3Q7CiAK
LSAgICAgICAqbGVuZ3RoICs9IHN0cmVhbS0+c2Vzc2lvbl9rZXlzW21raV9pbmRleF0ubWtpX3Np
emU7Ci0gICAgICAgKmxlbmd0aCArPSBzcnRwX2F1dGhfZ2V0X3RhZ19sZW5ndGgoc3RyZWFtLT5z
ZXNzaW9uX2tleXNbbWtpX2luZGV4XS5ydGNwX2F1dGgpOwotICAgIH0gZWxzZSB7Ci0gICAgICAg
Kmxlbmd0aCArPSBzcnRwX2F1dGhfZ2V0X3RhZ19sZW5ndGgoc3RyZWFtLT5zZXNzaW9uX2tleXNb
MF0ucnRjcF9hdXRoKTsKKyAgICB3aGlsZSAoc3RyZWFtICE9IE5VTEwpIHsKKyAgICAgICAgdWlu
dDMyX3QgdGVtcF9sZW5ndGg7CisgICAgICAgIGlmIChzdHJlYW1fZ2V0X3Byb3RlY3RfdHJhaWxl
cl9sZW5ndGgoc3RyZWFtLCBpc19ydHAsIHVzZV9ta2ksCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgbWtpX2luZGV4LCAmdGVtcF9sZW5ndGgpID09CisgICAg
ICAgICAgICBzcnRwX2Vycl9zdGF0dXNfb2spIHsKKyAgICAgICAgICAgIGlmICh0ZW1wX2xlbmd0
aCA+ICpsZW5ndGgpIHsKKyAgICAgICAgICAgICAgICAqbGVuZ3RoID0gdGVtcF9sZW5ndGg7Cisg
ICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICAgICAgc3RyZWFtID0gc3RyZWFtLT5uZXh0Owog
ICAgIH0KLSAKLSAgICAqbGVuZ3RoICs9IHNpemVvZihzcnRjcF90cmFpbGVyX3QpOwogCiAgICAg
cmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0KIAorc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9n
ZXRfcHJvdGVjdF90cmFpbGVyX2xlbmd0aChzcnRwX3Qgc2Vzc2lvbiwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgdXNlX21raSwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3Qg
bWtpX2luZGV4LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB1aW50MzJfdCAqbGVuZ3RoKQoreworICAgIHJldHVybiBnZXRfcHJvdGVjdF90cmFpbGVy
X2xlbmd0aChzZXNzaW9uLCAxLCB1c2VfbWtpLCBta2lfaW5kZXgsIGxlbmd0aCk7Cit9CisKK3Ny
dHBfZXJyX3N0YXR1c190IHNydHBfZ2V0X3Byb3RlY3RfcnRjcF90cmFpbGVyX2xlbmd0aChzcnRw
X3Qgc2Vzc2lvbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB1aW50MzJfdCB1c2VfbWtpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IG1raV9pbmRleCwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCAq
bGVuZ3RoKQoreworICAgIHJldHVybiBnZXRfcHJvdGVjdF90cmFpbGVyX2xlbmd0aChzZXNzaW9u
LCAwLCB1c2VfbWtpLCBta2lfaW5kZXgsIGxlbmd0aCk7Cit9CiAKIC8qCiAgKiBTUlRQIGRlYnVn
IGludGVyZmFjZQpAQCAtNDU5MSwyNiArNDY1NiwzNCBAQCBzcnRwX2Vycl9zdGF0dXNfdCBzcnRw
X2xpc3RfZGVidWdfbW9kdWxlcyh2b2lkKQogICovCiAKIHN0YXRpYyBzcnRwX2xvZ19oYW5kbGVy
X2Z1bmNfdCAqc3J0cF9sb2dfaGFuZGxlciA9IE5VTEw7Ci1zdGF0aWMgdm9pZCAqIHNydHBfbG9n
X2hhbmRsZXJfZGF0YSA9IE5VTEw7CitzdGF0aWMgdm9pZCAqc3J0cF9sb2dfaGFuZGxlcl9kYXRh
ID0gTlVMTDsKIAotdm9pZCBzcnRwX2Vycl9oYW5kbGVyKHNydHBfZXJyX3JlcG9ydGluZ19sZXZl
bF90IGxldmVsLCBjb25zdCBjaGFyICogbXNnKQordm9pZCBzcnRwX2Vycl9oYW5kbGVyKHNydHBf
ZXJyX3JlcG9ydGluZ19sZXZlbF90IGxldmVsLCBjb25zdCBjaGFyICptc2cpCiB7CiAgICAgaWYg
KHNydHBfbG9nX2hhbmRsZXIpIHsKICAgICAgICAgc3J0cF9sb2dfbGV2ZWxfdCBsb2dfbGV2ZWwg
PSBzcnRwX2xvZ19sZXZlbF9lcnJvcjsKLSAgICAgICAgc3dpdGNoKGxldmVsKSB7Ci0gICAgICAg
ICAgICBjYXNlIHNydHBfZXJyX2xldmVsX2Vycm9yOiBsb2dfbGV2ZWwgPSBzcnRwX2xvZ19sZXZl
bF9lcnJvcjsgYnJlYWs7Ci0gICAgICAgICAgICBjYXNlIHNydHBfZXJyX2xldmVsX3dhcm5pbmc6
IGxvZ19sZXZlbCA9IHNydHBfbG9nX2xldmVsX3dhcm5pbmc7IGJyZWFrOwotICAgICAgICAgICAg
Y2FzZSBzcnRwX2Vycl9sZXZlbF9pbmZvOiBsb2dfbGV2ZWwgPSBzcnRwX2xvZ19sZXZlbF9pbmZv
OyBicmVhazsKLSAgICAgICAgICAgIGNhc2Ugc3J0cF9lcnJfbGV2ZWxfZGVidWc6IGxvZ19sZXZl
bCA9IHNydHBfbG9nX2xldmVsX2RlYnVnOyBicmVhazsKKyAgICAgICAgc3dpdGNoIChsZXZlbCkg
eworICAgICAgICBjYXNlIHNydHBfZXJyX2xldmVsX2Vycm9yOgorICAgICAgICAgICAgbG9nX2xl
dmVsID0gc3J0cF9sb2dfbGV2ZWxfZXJyb3I7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAg
Y2FzZSBzcnRwX2Vycl9sZXZlbF93YXJuaW5nOgorICAgICAgICAgICAgbG9nX2xldmVsID0gc3J0
cF9sb2dfbGV2ZWxfd2FybmluZzsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIHNy
dHBfZXJyX2xldmVsX2luZm86CisgICAgICAgICAgICBsb2dfbGV2ZWwgPSBzcnRwX2xvZ19sZXZl
bF9pbmZvOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2Ugc3J0cF9lcnJfbGV2ZWxf
ZGVidWc6CisgICAgICAgICAgICBsb2dfbGV2ZWwgPSBzcnRwX2xvZ19sZXZlbF9kZWJ1ZzsKKyAg
ICAgICAgICAgIGJyZWFrOwogICAgICAgICB9CiAKICAgICAgICAgc3J0cF9sb2dfaGFuZGxlcihs
b2dfbGV2ZWwsIG1zZywgc3J0cF9sb2dfaGFuZGxlcl9kYXRhKTsKICAgICB9CiB9CiAKLXNydHBf
ZXJyX3N0YXR1c190IHNydHBfaW5zdGFsbF9sb2dfaGFuZGxlcihzcnRwX2xvZ19oYW5kbGVyX2Z1
bmNfdCBmdW5jLCB2b2lkICogZGF0YSkKK3NydHBfZXJyX3N0YXR1c190IHNydHBfaW5zdGFsbF9s
b2dfaGFuZGxlcihzcnRwX2xvZ19oYW5kbGVyX2Z1bmNfdCBmdW5jLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZvaWQgKmRhdGEpCiB7Ci0KICAgICAvKgogICAg
ICAqIG5vdGUgdGhhdCB3ZSBhY2NlcHQgTlVMTCBhcmd1bWVudHMgaW50ZW50aW9uYWxseSAtIGNh
bGxpbmcgdGhpcwogICAgICAqIGZ1bmN0aW9uIHdpdGggYSBOVUxMIGFyZ3VtZW50cyByZW1vdmVz
IGEgbG9nIGhhbmRsZXIgdGhhdCdzCkBAIC00NjI4LDggKzQ3MDEsMTAgQEAgc3J0cF9lcnJfc3Rh
dHVzX3Qgc3J0cF9pbnN0YWxsX2xvZ19oYW5kbGVyKHNydHBfbG9nX2hhbmRsZXJfZnVuY190IGZ1
bmMsIHZvaWQgKgogICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAKLXNydHBfZXJy
X3N0YXR1c190Ci1zcnRwX3NldF9zdHJlYW1fcm9jKHNydHBfdCBzZXNzaW9uLCB1aW50MzJfdCBz
c3JjLCB1aW50MzJfdCByb2MpIHsKK3NydHBfZXJyX3N0YXR1c190IHNydHBfc2V0X3N0cmVhbV9y
b2Moc3J0cF90IHNlc3Npb24sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHVpbnQzMl90IHNzcmMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVp
bnQzMl90IHJvYykKK3sKICAgICBzcnRwX3N0cmVhbV90IHN0cmVhbTsKIAogICAgIHN0cmVhbSA9
IHNydHBfZ2V0X3N0cmVhbShzZXNzaW9uLCBodG9ubChzc3JjKSk7CkBAIC00NjQxLDggKzQ3MTYs
MTAgQEAgc3J0cF9zZXRfc3RyZWFtX3JvYyhzcnRwX3Qgc2Vzc2lvbiwgdWludDMyX3Qgc3NyYywg
dWludDMyX3Qgcm9jKSB7CiAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0KIAotc3J0
cF9lcnJfc3RhdHVzX3QKLXNydHBfZ2V0X3N0cmVhbV9yb2Moc3J0cF90IHNlc3Npb24sIHVpbnQz
Ml90IHNzcmMsIHVpbnQzMl90ICpyb2MpIHsKK3NydHBfZXJyX3N0YXR1c190IHNydHBfZ2V0X3N0
cmVhbV9yb2Moc3J0cF90IHNlc3Npb24sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHVpbnQzMl90IHNzcmMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHVpbnQzMl90ICpyb2MpCit7CiAgICAgc3J0cF9zdHJlYW1fdCBzdHJlYW07CiAKICAgICBz
dHJlYW0gPSBzcnRwX2dldF9zdHJlYW0oc2Vzc2lvbiwgaHRvbmwoc3NyYykpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRw
L3Rlc3QvLmdpdGF0dHJpYnV0ZXMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnNydHAvdGVzdC8uZ2l0YXR0cmlidXRlcwpkZWxldGVkIGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggZjczN2E5NGM3NjgwYzcyNTczMTdjNGI1NTE4YzM4YTBhNjk5ZjUxMC4u
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvdGVzdC8uZ2l0YXR0
cmlidXRlcworKysgL2Rldi9udWxsCkBAIC0xLDIgKzAsMCBAQAotc3J0cF9kcml2ZXIuYyBzdm4t
cHJvcGVydGllcz1hbGxvdy10YWJzPW9uCi1ydHAuaCBzdm4tcHJvcGVydGllcz1hbGxvdy10YWJz
PW9uCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L2xpYnNydHAvdGVzdC9jdXRlc3QuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC90ZXN0L2N1dGVzdC5oCmluZGV4IGE5NGUxNDRh
YjVhNmI5N2FmNmI5ZDQ4MjkxYTE3ZDdjZWViNzY5NzcuLmY0NjYyNmQzOTU2YWY2NWY1OGYxYjE0
MzRkYjM3ZGI0NTdkNTZhMjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC90ZXN0L2N1dGVzdC5oCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC90ZXN0L2N1dGVz
dC5oCkBAIC0xMCwxMCArMTAsMTAgQEAKICAqIHRoZSByaWdodHMgdG8gdXNlLCBjb3B5LCBtb2Rp
ZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLAogICogYW5kL29yIHNl
bGwgY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20g
dGhlCiAgKiBTb2Z0d2FyZSBpcyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zOgotICogCisgKgogICogVGhlIGFib3ZlIGNvcHlyaWdodCBub3Rp
Y2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW4KICAqIGFs
bCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLgotICogCisg
KgogICogVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkg
T0YgQU5ZIEtJTkQsIEVYUFJFU1MKICAqIE9SIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJ
TUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLAogICogRklUTkVTUyBG
T1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQg
U0hBTEwgVEhFCkBAIC0yNiw3ICsyNiw2IEBACiAjaWZuZGVmIENVVEVTVF9IX18KICNkZWZpbmUg
Q1VURVNUX0hfXwogCi0KIC8qKioqKioqKioqKioqKioqKioqKioqKioKICAqKiogUHVibGljIGlu
dGVyZmFjZSAqKioKICAqKioqKioqKioqKioqKioqKioqKioqKiovCkBAIC01Niw4ICs1NSw3IEBA
CiAgKgogICogICB2b2lkIHRlc3RfZnVuYyh2b2lkKTsKICAqLwotI2RlZmluZSBURVNUX0xJU1Qg
ICAgICAgICAgICAgIGNvbnN0IHN0cnVjdCB0ZXN0X18gdGVzdF9saXN0X19bXQotCisjZGVmaW5l
IFRFU1RfTElTVCBjb25zdCBzdHJ1Y3QgdGVzdF9fIHRlc3RfbGlzdF9fW10KIAogLyogTWFjcm9z
IGZvciB0ZXN0aW5nIHdoZXRoZXIgYW4gdW5pdCB0ZXN0IHN1Y2NlZWRzIG9yIGZhaWxzLiBUaGVz
ZSBtYWNyb3MKICAqIGNhbiBiZSB1c2VkIGFyYml0cmFyaWx5IGluIGZ1bmN0aW9ucyBpbXBsZW1l
bnRpbmcgdGhlIHVuaXQgdGVzdHMuCkBAIC03OCw5ICs3Niw5IEBACiAgKiAgICAgICBURVNUX0NI
RUNLKHB0ci0+bWVtYmVyMiA+IDIwMCk7CiAgKiAgIH0KICAqLwotI2RlZmluZSBURVNUX0NIRUNL
Xyhjb25kLC4uLikgIHRlc3RfY2hlY2tfXygoY29uZCksIF9fRklMRV9fLCBfX0xJTkVfXywgX19W
QV9BUkdTX18pCi0jZGVmaW5lIFRFU1RfQ0hFQ0soY29uZCkgICAgICAgdGVzdF9jaGVja19fKChj
b25kKSwgX19GSUxFX18sIF9fTElORV9fLCAiJXMiLCAjY29uZCkKLQorI2RlZmluZSBURVNUX0NI
RUNLXyhjb25kLCAuLi4pICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFwKKyAgICB0ZXN0X2NoZWNrX18oKGNvbmQpLCBfX0ZJTEVfXywgX19MSU5FX18sIF9f
VkFfQVJHU19fKQorI2RlZmluZSBURVNUX0NIRUNLKGNvbmQpIHRlc3RfY2hlY2tfXygoY29uZCks
IF9fRklMRV9fLCBfX0xJTkVfXywgIiVzIiwgI2NvbmQpCiAKIC8qKioqKioqKioqKioqKioqKioq
KioqCiAgKioqIEltcGxlbWVudGF0aW9uICoqKgpAQCAtOTQsNDcgKzkyLDQzIEBACiAjaW5jbHVk
ZSA8c3RyaW5nLmg+CiAKICNpZiBkZWZpbmVkKHVuaXgpIHx8IGRlZmluZWQoX191bml4X18pIHx8
IGRlZmluZWQoX191bml4KSB8fCBkZWZpbmVkKF9fQVBQTEVfXykKLSAgICAjZGVmaW5lIENVVEVT
VF9VTklYX18gICAgMQotICAgICNpbmNsdWRlIDxlcnJuby5oPgotICAgICNpbmNsdWRlIDx1bmlz
dGQuaD4KLSAgICAjaW5jbHVkZSA8c3lzL3R5cGVzLmg+Ci0gICAgI2luY2x1ZGUgPHN5cy93YWl0
Lmg+Ci0gICAgI2luY2x1ZGUgPHNpZ25hbC5oPgorI2RlZmluZSBDVVRFU1RfVU5JWF9fIDEKKyNp
bmNsdWRlIDxlcnJuby5oPgorI2luY2x1ZGUgPHVuaXN0ZC5oPgorI2luY2x1ZGUgPHN5cy90eXBl
cy5oPgorI2luY2x1ZGUgPHN5cy93YWl0Lmg+CisjaW5jbHVkZSA8c2lnbmFsLmg+CiAjZW5kaWYK
IAogI2lmIGRlZmluZWQoX1dJTjMyKSB8fCBkZWZpbmVkKF9fV0lOMzJfXykgfHwgZGVmaW5lZChf
X1dJTkRPV1NfXykKLSAgICAjZGVmaW5lIENVVEVTVF9XSU5fXyAgICAgMQotICAgICNpbmNsdWRl
IDx3aW5kb3dzLmg+Ci0gICAgI2luY2x1ZGUgPGlvLmg+CisjZGVmaW5lIENVVEVTVF9XSU5fXyAx
CisjaW5jbHVkZSA8d2luZG93cy5oPgorI2luY2x1ZGUgPGlvLmg+CiAjZW5kaWYKIAogI2lmZGVm
IF9fY3BsdXNwbHVzCi0gICAgI2luY2x1ZGUgPGV4Y2VwdGlvbj4KKyNpbmNsdWRlIDxleGNlcHRp
b24+CiAjZW5kaWYKIAotCiAvKiBOb3RlIG91ciBnbG9iYWwgcHJpdmF0ZSBpZGVudGlmaWVycyBl
bmQgd2l0aCAnX18nIHRvIG1pdGlnYXRlIHJpc2sgb2YgY2xhc2gKICAqIHdpdGggdGhlIHVuaXQg
dGVzdHMgaW1wbGVtZW50YXRpb24uICovCiAKLQogI2lmZGVmIF9fY3BsdXNwbHVzCi0gICAgZXh0
ZXJuICJDIiB7CitleHRlcm4gIkMiIHsKICNlbmRpZgogCi0KIHN0cnVjdCB0ZXN0X18gewotICAg
IGNvbnN0IGNoYXIqIG5hbWU7CisgICAgY29uc3QgY2hhciAqbmFtZTsKICAgICB2b2lkICgqZnVu
Yykodm9pZCk7CiB9OwogCiBleHRlcm4gY29uc3Qgc3RydWN0IHRlc3RfXyB0ZXN0X2xpc3RfX1td
OwogCi1pbnQgdGVzdF9jaGVja19fKGludCBjb25kLCBjb25zdCBjaGFyKiBmaWxlLCBpbnQgbGlu
ZSwgY29uc3QgY2hhciogZm10LCAuLi4pOwotCitpbnQgdGVzdF9jaGVja19fKGludCBjb25kLCBj
b25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwgY29uc3QgY2hhciAqZm10LCAuLi4pOwogCiAjaWZu
ZGVmIFRFU1RfTk9fTUFJTgogCi1zdGF0aWMgY2hhciogdGVzdF9hcmd2MF9fID0gTlVMTDsKK3N0
YXRpYyBjaGFyICp0ZXN0X2FyZ3YwX18gPSBOVUxMOwogc3RhdGljIGludCB0ZXN0X2NvdW50X18g
PSAwOwogc3RhdGljIGludCB0ZXN0X25vX2V4ZWNfXyA9IDA7CiBzdGF0aWMgaW50IHRlc3Rfbm9f
c3VtbWFyeV9fID0gMDsKQEAgLTE0MywyMSArMTM3LDIwIEBAIHN0YXRpYyBpbnQgdGVzdF9za2lw
X21vZGVfXyA9IDA7CiBzdGF0aWMgaW50IHRlc3Rfc3RhdF9mYWlsZWRfdW5pdHNfXyA9IDA7CiBz
dGF0aWMgaW50IHRlc3Rfc3RhdF9ydW5fdW5pdHNfXyA9IDA7CiAKLXN0YXRpYyBjb25zdCBzdHJ1
Y3QgdGVzdF9fKiB0ZXN0X2N1cnJlbnRfdW5pdF9fID0gTlVMTDsKK3N0YXRpYyBjb25zdCBzdHJ1
Y3QgdGVzdF9fICp0ZXN0X2N1cnJlbnRfdW5pdF9fID0gTlVMTDsKIHN0YXRpYyBpbnQgdGVzdF9j
dXJyZW50X2FscmVhZHlfbG9nZ2VkX18gPSAwOwogc3RhdGljIGludCB0ZXN0X3ZlcmJvc2VfbGV2
ZWxfXyA9IDI7CiBzdGF0aWMgaW50IHRlc3RfY3VycmVudF9mYWlsdXJlc19fID0gMDsKIHN0YXRp
YyBpbnQgdGVzdF9jb2xvcml6ZV9fID0gMDsKIAotI2RlZmluZSBDVVRFU1RfQ09MT1JfREVGQVVM
VF9fICAgICAgICAgICAgICAgMAotI2RlZmluZSBDVVRFU1RfQ09MT1JfR1JFRU5fXyAgICAgICAg
ICAgICAgICAgMQotI2RlZmluZSBDVVRFU1RfQ09MT1JfUkVEX18gICAgICAgICAgICAgICAgICAg
MgotI2RlZmluZSBDVVRFU1RfQ09MT1JfREVGQVVMVF9JTlRFTlNJVkVfXyAgICAgMwotI2RlZmlu
ZSBDVVRFU1RfQ09MT1JfR1JFRU5fSU5URU5TSVZFX18gICAgICAgNAotI2RlZmluZSBDVVRFU1Rf
Q09MT1JfUkVEX0lOVEVOU0lWRV9fICAgICAgICAgNQorI2RlZmluZSBDVVRFU1RfQ09MT1JfREVG
QVVMVF9fIDAKKyNkZWZpbmUgQ1VURVNUX0NPTE9SX0dSRUVOX18gMQorI2RlZmluZSBDVVRFU1Rf
Q09MT1JfUkVEX18gMgorI2RlZmluZSBDVVRFU1RfQ09MT1JfREVGQVVMVF9JTlRFTlNJVkVfXyAz
CisjZGVmaW5lIENVVEVTVF9DT0xPUl9HUkVFTl9JTlRFTlNJVkVfXyA0CisjZGVmaW5lIENVVEVT
VF9DT0xPUl9SRURfSU5URU5TSVZFX18gNQogCi1zdGF0aWMgc2l6ZV90Ci10ZXN0X3ByaW50X2lu
X2NvbG9yX18oaW50IGNvbG9yLCBjb25zdCBjaGFyKiBmbXQsIC4uLikKK3N0YXRpYyBzaXplX3Qg
dGVzdF9wcmludF9pbl9jb2xvcl9fKGludCBjb2xvciwgY29uc3QgY2hhciAqZm10LCAuLi4pCiB7
CiAgICAgdmFfbGlzdCBhcmdzOwogICAgIGNoYXIgYnVmZmVyWzI1Nl07CkBAIC0xNjYsMjIgKzE1
OSwzNCBAQCB0ZXN0X3ByaW50X2luX2NvbG9yX18oaW50IGNvbG9yLCBjb25zdCBjaGFyKiBmbXQs
IC4uLikKICAgICB2YV9zdGFydChhcmdzLCBmbXQpOwogICAgIHZzbnByaW50ZihidWZmZXIsIHNp
emVvZihidWZmZXIpLCBmbXQsIGFyZ3MpOwogICAgIHZhX2VuZChhcmdzKTsKLSAgICBidWZmZXJb
c2l6ZW9mKGJ1ZmZlciktMV0gPSAnXDAnOworICAgIGJ1ZmZlcltzaXplb2YoYnVmZmVyKSAtIDFd
ID0gJ1wwJzsKIAotICAgIGlmKCF0ZXN0X2NvbG9yaXplX18pIHsKKyAgICBpZiAoIXRlc3RfY29s
b3JpemVfXykgewogICAgICAgICByZXR1cm4gcHJpbnRmKCIlcyIsIGJ1ZmZlcik7CiAgICAgfQog
CiAjaWYgZGVmaW5lZCBDVVRFU1RfVU5JWF9fCiAgICAgewotICAgICAgICBjb25zdCBjaGFyKiBj
b2xfc3RyOwotICAgICAgICBzd2l0Y2goY29sb3IpIHsKLSAgICAgICAgICAgIGNhc2UgQ1VURVNU
X0NPTE9SX0dSRUVOX186ICAgICAgICAgICAgIGNvbF9zdHIgPSAiXDAzM1swOzMybSI7IGJyZWFr
OwotICAgICAgICAgICAgY2FzZSBDVVRFU1RfQ09MT1JfUkVEX186ICAgICAgICAgICAgICAgY29s
X3N0ciA9ICJcMDMzWzA7MzFtIjsgYnJlYWs7Ci0gICAgICAgICAgICBjYXNlIENVVEVTVF9DT0xP
Ul9HUkVFTl9JTlRFTlNJVkVfXzogICBjb2xfc3RyID0gIlwwMzNbMTszMm0iOyBicmVhazsKLSAg
ICAgICAgICAgIGNhc2UgQ1VURVNUX0NPTE9SX1JFRF9JTlRFTlNJVkVfXzogICAgIGNvbF9zdHIg
PSAiXDAzM1sxOzMwbSI7IGJyZWFrOwotICAgICAgICAgICAgY2FzZSBDVVRFU1RfQ09MT1JfREVG
QVVMVF9JTlRFTlNJVkVfXzogY29sX3N0ciA9ICJcMDMzWzFtIjsgYnJlYWs7Ci0gICAgICAgICAg
ICBkZWZhdWx0OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xfc3RyID0gIlwwMzNb
MG0iOyBicmVhazsKKyAgICAgICAgY29uc3QgY2hhciAqY29sX3N0cjsKKyAgICAgICAgc3dpdGNo
IChjb2xvcikgeworICAgICAgICBjYXNlIENVVEVTVF9DT0xPUl9HUkVFTl9fOgorICAgICAgICAg
ICAgY29sX3N0ciA9ICJcMDMzWzA7MzJtIjsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBj
YXNlIENVVEVTVF9DT0xPUl9SRURfXzoKKyAgICAgICAgICAgIGNvbF9zdHIgPSAiXDAzM1swOzMx
bSI7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSBDVVRFU1RfQ09MT1JfR1JFRU5f
SU5URU5TSVZFX186CisgICAgICAgICAgICBjb2xfc3RyID0gIlwwMzNbMTszMm0iOworICAgICAg
ICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgQ1VURVNUX0NPTE9SX1JFRF9JTlRFTlNJVkVfXzoK
KyAgICAgICAgICAgIGNvbF9zdHIgPSAiXDAzM1sxOzMwbSI7CisgICAgICAgICAgICBicmVhazsK
KyAgICAgICAgY2FzZSBDVVRFU1RfQ09MT1JfREVGQVVMVF9JTlRFTlNJVkVfXzoKKyAgICAgICAg
ICAgIGNvbF9zdHIgPSAiXDAzM1sxbSI7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVm
YXVsdDoKKyAgICAgICAgICAgIGNvbF9zdHIgPSAiXDAzM1swbSI7CisgICAgICAgICAgICBicmVh
azsKICAgICAgICAgfQogICAgICAgICBwcmludGYoIiVzIiwgY29sX3N0cik7CiAgICAgICAgIG4g
PSBwcmludGYoIiVzIiwgYnVmZmVyKTsKQEAgLTE5NywxNSArMjAyLDI4IEBAIHRlc3RfcHJpbnRf
aW5fY29sb3JfXyhpbnQgY29sb3IsIGNvbnN0IGNoYXIqIGZtdCwgLi4uKQogICAgICAgICBoID0g
R2V0U3RkSGFuZGxlKFNURF9PVVRQVVRfSEFORExFKTsKICAgICAgICAgR2V0Q29uc29sZVNjcmVl
bkJ1ZmZlckluZm8oaCwgJmluZm8pOwogCi0gICAgICAgIHN3aXRjaChjb2xvcikgewotICAgICAg
ICAgICAgY2FzZSBDVVRFU1RfQ09MT1JfR1JFRU5fXzogICAgICAgICAgICAgYXR0ciA9IEZPUkVH
Uk9VTkRfR1JFRU47IGJyZWFrOwotICAgICAgICAgICAgY2FzZSBDVVRFU1RfQ09MT1JfUkVEX186
ICAgICAgICAgICAgICAgYXR0ciA9IEZPUkVHUk9VTkRfUkVEOyBicmVhazsKLSAgICAgICAgICAg
IGNhc2UgQ1VURVNUX0NPTE9SX0dSRUVOX0lOVEVOU0lWRV9fOiAgIGF0dHIgPSBGT1JFR1JPVU5E
X0dSRUVOIHwgRk9SRUdST1VORF9JTlRFTlNJVFk7IGJyZWFrOwotICAgICAgICAgICAgY2FzZSBD
VVRFU1RfQ09MT1JfUkVEX0lOVEVOU0lWRV9fOiAgICAgYXR0ciA9IEZPUkVHUk9VTkRfUkVEIHwg
Rk9SRUdST1VORF9JTlRFTlNJVFk7IGJyZWFrOwotICAgICAgICAgICAgY2FzZSBDVVRFU1RfQ09M
T1JfREVGQVVMVF9JTlRFTlNJVkVfXzogYXR0ciA9IEZPUkVHUk9VTkRfQkxVRSB8IEZPUkVHUk9V
TkRfR1JFRU4gfCBGT1JFR1JPVU5EX1JFRCB8IEZPUkVHUk9VTkRfSU5URU5TSVRZOyBicmVhazsK
LSAgICAgICAgICAgIGRlZmF1bHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF0dHIg
PSAwOyBicmVhazsKKyAgICAgICAgc3dpdGNoIChjb2xvcikgeworICAgICAgICBjYXNlIENVVEVT
VF9DT0xPUl9HUkVFTl9fOgorICAgICAgICAgICAgYXR0ciA9IEZPUkVHUk9VTkRfR1JFRU47Cisg
ICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSBDVVRFU1RfQ09MT1JfUkVEX186CisgICAg
ICAgICAgICBhdHRyID0gRk9SRUdST1VORF9SRUQ7CisgICAgICAgICAgICBicmVhazsKKyAgICAg
ICAgY2FzZSBDVVRFU1RfQ09MT1JfR1JFRU5fSU5URU5TSVZFX186CisgICAgICAgICAgICBhdHRy
ID0gRk9SRUdST1VORF9HUkVFTiB8IEZPUkVHUk9VTkRfSU5URU5TSVRZOworICAgICAgICAgICAg
YnJlYWs7CisgICAgICAgIGNhc2UgQ1VURVNUX0NPTE9SX1JFRF9JTlRFTlNJVkVfXzoKKyAgICAg
ICAgICAgIGF0dHIgPSBGT1JFR1JPVU5EX1JFRCB8IEZPUkVHUk9VTkRfSU5URU5TSVRZOworICAg
ICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgQ1VURVNUX0NPTE9SX0RFRkFVTFRfSU5URU5T
SVZFX186CisgICAgICAgICAgICBhdHRyID0gRk9SRUdST1VORF9CTFVFIHwgRk9SRUdST1VORF9H
UkVFTiB8IEZPUkVHUk9VTkRfUkVEIHwKKyAgICAgICAgICAgICAgICAgICBGT1JFR1JPVU5EX0lO
VEVOU0lUWTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBkZWZhdWx0OgorICAgICAgICAg
ICAgYXR0ciA9IDA7CisgICAgICAgICAgICBicmVhazsKICAgICAgICAgfQotICAgICAgICBpZihh
dHRyICE9IDApCisgICAgICAgIGlmIChhdHRyICE9IDApCiAgICAgICAgICAgICBTZXRDb25zb2xl
VGV4dEF0dHJpYnV0ZShoLCBhdHRyKTsKICAgICAgICAgbiA9IHByaW50ZigiJXMiLCBidWZmZXIp
OwogICAgICAgICBTZXRDb25zb2xlVGV4dEF0dHJpYnV0ZShoLCBpbmZvLndBdHRyaWJ1dGVzKTsK
QEAgLTIxNywxOSArMjM1LDE4IEBAIHRlc3RfcHJpbnRfaW5fY29sb3JfXyhpbnQgY29sb3IsIGNv
bnN0IGNoYXIqIGZtdCwgLi4uKQogI2VuZGlmCiB9CiAKLWludAotdGVzdF9jaGVja19fKGludCBj
b25kLCBjb25zdCBjaGFyKiBmaWxlLCBpbnQgbGluZSwgY29uc3QgY2hhciogZm10LCAuLi4pCitp
bnQgdGVzdF9jaGVja19fKGludCBjb25kLCBjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwgY29u
c3QgY2hhciAqZm10LCAuLi4pCiB7CiAgICAgY29uc3QgY2hhciAqcmVzdWx0X3N0cjsKICAgICBp
bnQgcmVzdWx0X2NvbG9yOwogICAgIGludCB2ZXJib3NlX2xldmVsOwogCi0gICAgaWYoY29uZCkg
eworICAgIGlmIChjb25kKSB7CiAgICAgICAgIHJlc3VsdF9zdHIgPSAib2siOwogICAgICAgICBy
ZXN1bHRfY29sb3IgPSBDVVRFU1RfQ09MT1JfR1JFRU5fXzsKICAgICAgICAgdmVyYm9zZV9sZXZl
bCA9IDM7CiAgICAgfSBlbHNlIHsKLSAgICAgICAgaWYoIXRlc3RfY3VycmVudF9hbHJlYWR5X2xv
Z2dlZF9fICAmJiAgdGVzdF9jdXJyZW50X3VuaXRfXyAhPSBOVUxMKSB7CisgICAgICAgIGlmICgh
dGVzdF9jdXJyZW50X2FscmVhZHlfbG9nZ2VkX18gJiYgdGVzdF9jdXJyZW50X3VuaXRfXyAhPSBO
VUxMKSB7CiAgICAgICAgICAgICBwcmludGYoIlsgIik7CiAgICAgICAgICAgICB0ZXN0X3ByaW50
X2luX2NvbG9yX18oQ1VURVNUX0NPTE9SX1JFRF9JTlRFTlNJVkVfXywgIkZBSUxFRCIpOwogICAg
ICAgICAgICAgcHJpbnRmKCIgXVxuIik7CkBAIC0yNDEsMTMgKzI1OCwxMyBAQCB0ZXN0X2NoZWNr
X18oaW50IGNvbmQsIGNvbnN0IGNoYXIqIGZpbGUsIGludCBsaW5lLCBjb25zdCBjaGFyKiBmbXQs
IC4uLikKICAgICAgICAgdGVzdF9jdXJyZW50X2FscmVhZHlfbG9nZ2VkX18rKzsKICAgICB9CiAK
LSAgICBpZih0ZXN0X3ZlcmJvc2VfbGV2ZWxfXyA+PSB2ZXJib3NlX2xldmVsKSB7CisgICAgaWYg
KHRlc3RfdmVyYm9zZV9sZXZlbF9fID49IHZlcmJvc2VfbGV2ZWwpIHsKICAgICAgICAgc2l6ZV90
IG4gPSAwOwogICAgICAgICB2YV9saXN0IGFyZ3M7CiAKICAgICAgICAgcHJpbnRmKCIgICIpOwog
Ci0gICAgICAgIGlmKGZpbGUgIT0gTlVMTCkKKyAgICAgICAgaWYgKGZpbGUgIT0gTlVMTCkKICAg
ICAgICAgICAgIG4gKz0gcHJpbnRmKCIlczolZDogQ2hlY2sgIiwgZmlsZSwgbGluZSk7CiAKICAg
ICAgICAgdmFfc3RhcnQoYXJncywgZm10KTsKQEAgLTI2MywyMyArMjgwLDIxIEBAIHRlc3RfY2hl
Y2tfXyhpbnQgY29uZCwgY29uc3QgY2hhciogZmlsZSwgaW50IGxpbmUsIGNvbnN0IGNoYXIqIGZt
dCwgLi4uKQogICAgIHJldHVybiAoY29uZCAhPSAwKTsKIH0KIAotc3RhdGljIHZvaWQKLXRlc3Rf
bGlzdF9uYW1lc19fKHZvaWQpCitzdGF0aWMgdm9pZCB0ZXN0X2xpc3RfbmFtZXNfXyh2b2lkKQog
ewotICAgIGNvbnN0IHN0cnVjdCB0ZXN0X18qIHRlc3Q7CisgICAgY29uc3Qgc3RydWN0IHRlc3Rf
XyAqdGVzdDsKIAogICAgIHByaW50ZigiVW5pdCB0ZXN0czpcbiIpOwotICAgIGZvcih0ZXN0ID0g
JnRlc3RfbGlzdF9fWzBdOyB0ZXN0LT5mdW5jICE9IE5VTEw7IHRlc3QrKykKKyAgICBmb3IgKHRl
c3QgPSAmdGVzdF9saXN0X19bMF07IHRlc3QtPmZ1bmMgIT0gTlVMTDsgdGVzdCsrKQogICAgICAg
ICBwcmludGYoIiAgJXNcbiIsIHRlc3QtPm5hbWUpOwogfQogCi1zdGF0aWMgY29uc3Qgc3RydWN0
IHRlc3RfXyoKLXRlc3RfYnlfbmFtZV9fKGNvbnN0IGNoYXIqIG5hbWUpCitzdGF0aWMgY29uc3Qg
c3RydWN0IHRlc3RfXyAqdGVzdF9ieV9uYW1lX18oY29uc3QgY2hhciAqbmFtZSkKIHsKLSAgICBj
b25zdCBzdHJ1Y3QgdGVzdF9fKiB0ZXN0OworICAgIGNvbnN0IHN0cnVjdCB0ZXN0X18gKnRlc3Q7
CiAKLSAgICBmb3IodGVzdCA9ICZ0ZXN0X2xpc3RfX1swXTsgdGVzdC0+ZnVuYyAhPSBOVUxMOyB0
ZXN0KyspIHsKLSAgICAgICAgaWYoc3RyY21wKHRlc3QtPm5hbWUsIG5hbWUpID09IDApCisgICAg
Zm9yICh0ZXN0ID0gJnRlc3RfbGlzdF9fWzBdOyB0ZXN0LT5mdW5jICE9IE5VTEw7IHRlc3QrKykg
eworICAgICAgICBpZiAoc3RyY21wKHRlc3QtPm5hbWUsIG5hbWUpID09IDApCiAgICAgICAgICAg
ICByZXR1cm4gdGVzdDsKICAgICB9CiAKQEAgLTI4NywyNCArMzAyLDI1IEBAIHRlc3RfYnlfbmFt
ZV9fKGNvbnN0IGNoYXIqIG5hbWUpCiB9CiAKIC8qIENhbGwgZGlyZWN0bHkgdGhlIGdpdmVuIHRl
c3QgdW5pdCBmdW5jdGlvbi4gKi8KLXN0YXRpYyBpbnQKLXRlc3RfZG9fcnVuX18oY29uc3Qgc3Ry
dWN0IHRlc3RfXyogdGVzdCkKK3N0YXRpYyBpbnQgdGVzdF9kb19ydW5fXyhjb25zdCBzdHJ1Y3Qg
dGVzdF9fICp0ZXN0KQogewogICAgIHRlc3RfY3VycmVudF91bml0X18gPSB0ZXN0OwogICAgIHRl
c3RfY3VycmVudF9mYWlsdXJlc19fID0gMDsKICAgICB0ZXN0X2N1cnJlbnRfYWxyZWFkeV9sb2dn
ZWRfXyA9IDA7CiAKLSAgICBpZih0ZXN0X3ZlcmJvc2VfbGV2ZWxfXyA+PSAzKSB7Ci0gICAgICAg
IHRlc3RfcHJpbnRfaW5fY29sb3JfXyhDVVRFU1RfQ09MT1JfREVGQVVMVF9JTlRFTlNJVkVfXywg
IlRlc3QgJXM6XG4iLCB0ZXN0LT5uYW1lKTsKKyAgICBpZiAodGVzdF92ZXJib3NlX2xldmVsX18g
Pj0gMykgeworICAgICAgICB0ZXN0X3ByaW50X2luX2NvbG9yX18oQ1VURVNUX0NPTE9SX0RFRkFV
TFRfSU5URU5TSVZFX18sICJUZXN0ICVzOlxuIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHRlc3QtPm5hbWUpOwogICAgICAgICB0ZXN0X2N1cnJlbnRfYWxyZWFkeV9sb2dnZWRfXysr
OwotICAgIH0gZWxzZSBpZih0ZXN0X3ZlcmJvc2VfbGV2ZWxfXyA+PSAxKSB7CisgICAgfSBlbHNl
IGlmICh0ZXN0X3ZlcmJvc2VfbGV2ZWxfXyA+PSAxKSB7CiAgICAgICAgIHNpemVfdCBuOwogICAg
ICAgICBjaGFyIHNwYWNlc1szMl07CiAKLSAgICAgICAgbiA9IHRlc3RfcHJpbnRfaW5fY29sb3Jf
XyhDVVRFU1RfQ09MT1JfREVGQVVMVF9JTlRFTlNJVkVfXywgIlRlc3QgJXMuLi4gIiwgdGVzdC0+
bmFtZSk7CisgICAgICAgIG4gPSB0ZXN0X3ByaW50X2luX2NvbG9yX18oQ1VURVNUX0NPTE9SX0RF
RkFVTFRfSU5URU5TSVZFX18sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlRl
c3QgJXMuLi4gIiwgdGVzdC0+bmFtZSk7CiAgICAgICAgIG1lbXNldChzcGFjZXMsICcgJywgc2l6
ZW9mKHNwYWNlcykpOwotICAgICAgICBpZihuIDwgc2l6ZW9mKHNwYWNlcykpCi0gICAgICAgICAg
ICBwcmludGYoIiUuKnMiLCAoaW50KSAoc2l6ZW9mKHNwYWNlcykgLSBuKSwgc3BhY2VzKTsKKyAg
ICAgICAgaWYgKG4gPCBzaXplb2Yoc3BhY2VzKSkKKyAgICAgICAgICAgIHByaW50ZigiJS4qcyIs
IChpbnQpKHNpemVvZihzcGFjZXMpIC0gbiksIHNwYWNlcyk7CiAgICAgfSBlbHNlIHsKICAgICAg
ICAgdGVzdF9jdXJyZW50X2FscmVhZHlfbG9nZ2VkX18gPSAxOwogICAgIH0KQEAgLTMyMCwyNCAr
MzM2LDM0IEBAIHRlc3RfZG9fcnVuX18oY29uc3Qgc3RydWN0IHRlc3RfXyogdGVzdCkKICAgICAg
ICAgdGVzdC0+ZnVuYygpOwogCiAjaWZkZWYgX19jcGx1c3BsdXMKLSAgICB9IGNhdGNoKHN0ZDo6
ZXhjZXB0aW9uJiBlKSB7Ci0gICAgICAgIGNvbnN0IGNoYXIqIHdoYXQgPSBlLndoYXQoKTsKLSAg
ICAgICAgaWYod2hhdCAhPSBOVUxMKQorICAgIH0gY2F0Y2ggKHN0ZDo6ZXhjZXB0aW9uICZlKSB7
CisgICAgICAgIGNvbnN0IGNoYXIgKndoYXQgPSBlLndoYXQoKTsKKyAgICAgICAgaWYgKHdoYXQg
IT0gTlVMTCkKICAgICAgICAgICAgIHRlc3RfY2hlY2tfXygwLCBOVUxMLCAwLCAiVGhyZXcgc3Rk
OjpleGNlcHRpb246ICVzIiwgd2hhdCk7CiAgICAgICAgIGVsc2UKICAgICAgICAgICAgIHRlc3Rf
Y2hlY2tfXygwLCBOVUxMLCAwLCAiVGhyZXcgc3RkOjpleGNlcHRpb24iKTsKLSAgICB9IGNhdGNo
KC4uLikgeworICAgIH0gY2F0Y2ggKC4uLikgewogICAgICAgICB0ZXN0X2NoZWNrX18oMCwgTlVM
TCwgMCwgIlRocmV3IGFuIGV4Y2VwdGlvbiIpOwogICAgIH0KICNlbmRpZgogCi0gICAgaWYodGVz
dF92ZXJib3NlX2xldmVsX18gPj0gMykgewotICAgICAgICBzd2l0Y2godGVzdF9jdXJyZW50X2Zh
aWx1cmVzX18pIHsKLSAgICAgICAgICAgIGNhc2UgMDogIHRlc3RfcHJpbnRfaW5fY29sb3JfXyhD
VVRFU1RfQ09MT1JfR1JFRU5fSU5URU5TSVZFX18sICIgIEFsbCBjb25kaXRpb25zIGhhdmUgcGFz
c2VkLlxuXG4iKTsgYnJlYWs7Ci0gICAgICAgICAgICBjYXNlIDE6ICB0ZXN0X3ByaW50X2luX2Nv
bG9yX18oQ1VURVNUX0NPTE9SX1JFRF9JTlRFTlNJVkVfXywgIiAgT25lIGNvbmRpdGlvbiBoYXMg
RkFJTEVELlxuXG4iKTsgYnJlYWs7Ci0gICAgICAgICAgICBkZWZhdWx0OiB0ZXN0X3ByaW50X2lu
X2NvbG9yX18oQ1VURVNUX0NPTE9SX1JFRF9JTlRFTlNJVkVfXywgIiAgJWQgY29uZGl0aW9ucyBo
YXZlIEZBSUxFRC5cblxuIiwgdGVzdF9jdXJyZW50X2ZhaWx1cmVzX18pOyBicmVhazsKKyAgICBp
ZiAodGVzdF92ZXJib3NlX2xldmVsX18gPj0gMykgeworICAgICAgICBzd2l0Y2ggKHRlc3RfY3Vy
cmVudF9mYWlsdXJlc19fKSB7CisgICAgICAgIGNhc2UgMDoKKyAgICAgICAgICAgIHRlc3RfcHJp
bnRfaW5fY29sb3JfXyhDVVRFU1RfQ09MT1JfR1JFRU5fSU5URU5TSVZFX18sCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIiAgQWxsIGNvbmRpdGlvbnMgaGF2ZSBwYXNzZWQuXG5c
biIpOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHRl
c3RfcHJpbnRfaW5fY29sb3JfXyhDVVRFU1RfQ09MT1JfUkVEX0lOVEVOU0lWRV9fLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICIgIE9uZSBjb25kaXRpb24gaGFzIEZBSUxFRC5c
blxuIik7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAg
IHRlc3RfcHJpbnRfaW5fY29sb3JfXyhDVVRFU1RfQ09MT1JfUkVEX0lOVEVOU0lWRV9fLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICIgICVkIGNvbmRpdGlvbnMgaGF2ZSBGQUlM
RUQuXG5cbiIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVzdF9jdXJyZW50
X2ZhaWx1cmVzX18pOworICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KLSAgICB9IGVsc2Ug
aWYodGVzdF92ZXJib3NlX2xldmVsX18gPj0gMSAmJiB0ZXN0X2N1cnJlbnRfZmFpbHVyZXNfXyA9
PSAwKSB7CisgICAgfSBlbHNlIGlmICh0ZXN0X3ZlcmJvc2VfbGV2ZWxfXyA+PSAxICYmIHRlc3Rf
Y3VycmVudF9mYWlsdXJlc19fID09IDApIHsKICAgICAgICAgcHJpbnRmKCJbICAgIik7CiAgICAg
ICAgIHRlc3RfcHJpbnRfaW5fY29sb3JfXyhDVVRFU1RfQ09MT1JfR1JFRU5fSU5URU5TSVZFX18s
ICJPSyIpOwogICAgICAgICBwcmludGYoIiAgIF1cbiIpOwpAQCAtMzUxLDIxICszNzcsMjEgQEAg
dGVzdF9kb19ydW5fXyhjb25zdCBzdHJ1Y3QgdGVzdF9fKiB0ZXN0KQogLyogQ2FsbGVkIGlmIGFu
eXRoaW5nIGdvZXMgYmFkIGluIGN1dGVzdCwgb3IgaWYgdGhlIHVuaXQgdGVzdCBlbmRzIGluIG90
aGVyCiAgKiB3YXkgdGhlbiBieSBub3JtYWwgcmV0dXJuaW5nIGZyb20gaXRzIGZ1bmN0aW9uIChl
LmcuIGV4Y2VwdGlvbiBvciBzb21lCiAgKiBhYm5vcm1hbCBjaGlsZCBwcm9jZXNzIHRlcm1pbmF0
aW9uKS4gKi8KLXN0YXRpYyB2b2lkCi10ZXN0X2Vycm9yX18oY29uc3QgY2hhciogZm10LCAuLi4p
CitzdGF0aWMgdm9pZCB0ZXN0X2Vycm9yX18oY29uc3QgY2hhciAqZm10LCAuLi4pCiB7CiAgICAg
dmFfbGlzdCBhcmdzOwogCi0gICAgaWYodGVzdF92ZXJib3NlX2xldmVsX18gPT0gMCkKKyAgICBp
ZiAodGVzdF92ZXJib3NlX2xldmVsX18gPT0gMCkKICAgICAgICAgcmV0dXJuOwogCi0gICAgaWYo
dGVzdF92ZXJib3NlX2xldmVsX18gPD0gMiAgJiYgICF0ZXN0X2N1cnJlbnRfYWxyZWFkeV9sb2dn
ZWRfXyAgJiYgIHRlc3RfY3VycmVudF91bml0X18gIT0gTlVMTCkgeworICAgIGlmICh0ZXN0X3Zl
cmJvc2VfbGV2ZWxfXyA8PSAyICYmICF0ZXN0X2N1cnJlbnRfYWxyZWFkeV9sb2dnZWRfXyAmJgor
ICAgICAgICB0ZXN0X2N1cnJlbnRfdW5pdF9fICE9IE5VTEwpIHsKICAgICAgICAgcHJpbnRmKCJb
ICIpOwogICAgICAgICB0ZXN0X3ByaW50X2luX2NvbG9yX18oQ1VURVNUX0NPTE9SX1JFRF9JTlRF
TlNJVkVfXywgIkZBSUxFRCIpOwogICAgICAgICBwcmludGYoIiBdXG4iKTsKICAgICB9CiAKLSAg
ICBpZih0ZXN0X3ZlcmJvc2VfbGV2ZWxfXyA+PSAyKSB7CisgICAgaWYgKHRlc3RfdmVyYm9zZV9s
ZXZlbF9fID49IDIpIHsKICAgICAgICAgdGVzdF9wcmludF9pbl9jb2xvcl9fKENVVEVTVF9DT0xP
Ul9SRURfSU5URU5TSVZFX18sICIgIEVycm9yOiAiKTsKICAgICAgICAgdmFfc3RhcnQoYXJncywg
Zm10KTsKICAgICAgICAgdnByaW50ZihmbXQsIGFyZ3MpOwpAQCAtMzc4LDUxICs0MDQsNzMgQEAg
dGVzdF9lcnJvcl9fKGNvbnN0IGNoYXIqIGZtdCwgLi4uKQogLyogVHJpZ2dlciB0aGUgdW5pdCB0
ZXN0LiBJZiBwb3NzaWJsZSAoYW5kIG5vdCBzdXBwcmVzc2VkKSBpdCBzdGFydHMgYSBjaGlsZAog
ICogcHJvY2VzcyB3aG8gY2FsbHMgdGVzdF9kb19ydW5fXygpLCBvdGhlcndpc2UgaXQgY2FsbHMg
dGVzdF9kb19ydW5fXygpCiAgKiBkaXJlY3RseS4gKi8KLXN0YXRpYyB2b2lkCi10ZXN0X3J1bl9f
KGNvbnN0IHN0cnVjdCB0ZXN0X18qIHRlc3QpCitzdGF0aWMgdm9pZCB0ZXN0X3J1bl9fKGNvbnN0
IHN0cnVjdCB0ZXN0X18gKnRlc3QpCiB7CiAgICAgaW50IGZhaWxlZCA9IDE7CiAKICAgICB0ZXN0
X2N1cnJlbnRfdW5pdF9fID0gdGVzdDsKICAgICB0ZXN0X2N1cnJlbnRfYWxyZWFkeV9sb2dnZWRf
XyA9IDA7CiAKLSAgICBpZighdGVzdF9ub19leGVjX18pIHsKLQorICAgIGlmICghdGVzdF9ub19l
eGVjX18pIHsKICNpZiBkZWZpbmVkKENVVEVTVF9VTklYX18pCiAKICAgICAgICAgcGlkX3QgcGlk
OwogICAgICAgICBpbnQgZXhpdF9jb2RlOwogCiAgICAgICAgIHBpZCA9IGZvcmsoKTsKLSAgICAg
ICAgaWYocGlkID09IChwaWRfdCktMSkgeworICAgICAgICBpZiAocGlkID09IChwaWRfdCktMSkg
ewogICAgICAgICAgICAgdGVzdF9lcnJvcl9fKCJDYW5ub3QgZm9yay4gJXMgWyVkXSIsIHN0cmVy
cm9yKGVycm5vKSwgZXJybm8pOwogICAgICAgICAgICAgZmFpbGVkID0gMTsKLSAgICAgICAgfSBl
bHNlIGlmKHBpZCA9PSAwKSB7CisgICAgICAgIH0gZWxzZSBpZiAocGlkID09IDApIHsKICAgICAg
ICAgICAgIC8qIENoaWxkOiBEbyB0aGUgdGVzdC4gKi8KICAgICAgICAgICAgIGZhaWxlZCA9ICh0
ZXN0X2RvX3J1bl9fKHRlc3QpICE9IDApOwogICAgICAgICAgICAgZXhpdChmYWlsZWQgPyAxIDog
MCk7CiAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAvKiBQYXJlbnQ6IFdhaXQgdW50aWwg
Y2hpbGQgdGVybWluYXRlcyBhbmQgYW5hbHl6ZSBpdHMgZXhpdCBjb2RlLiAqLwogICAgICAgICAg
ICAgd2FpdHBpZChwaWQsICZleGl0X2NvZGUsIDApOwotICAgICAgICAgICAgaWYoV0lGRVhJVEVE
KGV4aXRfY29kZSkpIHsKLSAgICAgICAgICAgICAgICBzd2l0Y2goV0VYSVRTVEFUVVMoZXhpdF9j
b2RlKSkgewotICAgICAgICAgICAgICAgICAgICBjYXNlIDA6ICAgZmFpbGVkID0gMDsgYnJlYWs7
ICAgLyogdGVzdCBoYXMgcGFzc2VkLiAqLwotICAgICAgICAgICAgICAgICAgICBjYXNlIDE6ICAg
Lyogbm9vcCAqLyBicmVhazsgICAgLyogIm5vcm1hbCIgZmFpbHVyZS4gKi8KLSAgICAgICAgICAg
ICAgICAgICAgZGVmYXVsdDogIHRlc3RfZXJyb3JfXygiVW5leHBlY3RlZCBleGl0IGNvZGUgWyVk
XSIsIFdFWElUU1RBVFVTKGV4aXRfY29kZSkpOworICAgICAgICAgICAgaWYgKFdJRkVYSVRFRChl
eGl0X2NvZGUpKSB7CisgICAgICAgICAgICAgICAgc3dpdGNoIChXRVhJVFNUQVRVUyhleGl0X2Nv
ZGUpKSB7CisgICAgICAgICAgICAgICAgY2FzZSAwOgorICAgICAgICAgICAgICAgICAgICBmYWls
ZWQgPSAwOworICAgICAgICAgICAgICAgICAgICBicmVhazsgLyogdGVzdCBoYXMgcGFzc2VkLiAq
LworICAgICAgICAgICAgICAgIGNhc2UgMTogICAgLyogbm9vcCAqLworICAgICAgICAgICAgICAg
ICAgICBicmVhazsgLyogIm5vcm1hbCIgZmFpbHVyZS4gKi8KKyAgICAgICAgICAgICAgICBkZWZh
dWx0OgorICAgICAgICAgICAgICAgICAgICB0ZXN0X2Vycm9yX18oIlVuZXhwZWN0ZWQgZXhpdCBj
b2RlIFslZF0iLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgV0VYSVRTVEFUVVMo
ZXhpdF9jb2RlKSk7CiAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgfSBlbHNlIGlmKFdJ
RlNJR05BTEVEKGV4aXRfY29kZSkpIHsKKyAgICAgICAgICAgIH0gZWxzZSBpZiAoV0lGU0lHTkFM
RUQoZXhpdF9jb2RlKSkgewogICAgICAgICAgICAgICAgIGNoYXIgdG1wWzMyXTsKLSAgICAgICAg
ICAgICAgICBjb25zdCBjaGFyKiBzaWduYW1lOwotICAgICAgICAgICAgICAgIHN3aXRjaChXVEVS
TVNJRyhleGl0X2NvZGUpKSB7Ci0gICAgICAgICAgICAgICAgICAgIGNhc2UgU0lHSU5UOiAgc2ln
bmFtZSA9ICJTSUdJTlQiOyBicmVhazsKLSAgICAgICAgICAgICAgICAgICAgY2FzZSBTSUdIVVA6
ICBzaWduYW1lID0gIlNJR0hVUCI7IGJyZWFrOwotICAgICAgICAgICAgICAgICAgICBjYXNlIFNJ
R1FVSVQ6IHNpZ25hbWUgPSAiU0lHUVVJVCI7IGJyZWFrOwotICAgICAgICAgICAgICAgICAgICBj
YXNlIFNJR0FCUlQ6IHNpZ25hbWUgPSAiU0lHQUJSVCI7IGJyZWFrOwotICAgICAgICAgICAgICAg
ICAgICBjYXNlIFNJR0tJTEw6IHNpZ25hbWUgPSAiU0lHS0lMTCI7IGJyZWFrOwotICAgICAgICAg
ICAgICAgICAgICBjYXNlIFNJR1NFR1Y6IHNpZ25hbWUgPSAiU0lHU0VHViI7IGJyZWFrOwotICAg
ICAgICAgICAgICAgICAgICBjYXNlIFNJR0lMTDogIHNpZ25hbWUgPSAiU0lHSUxMIjsgYnJlYWs7
Ci0gICAgICAgICAgICAgICAgICAgIGNhc2UgU0lHVEVSTTogc2lnbmFtZSA9ICJTSUdURVJNIjsg
YnJlYWs7Ci0gICAgICAgICAgICAgICAgICAgIGRlZmF1bHQ6ICAgICAgc3ByaW50Zih0bXAsICJz
aWduYWwgJWQiLCBXVEVSTVNJRyhleGl0X2NvZGUpKTsgc2lnbmFtZSA9IHRtcDsgYnJlYWs7Cisg
ICAgICAgICAgICAgICAgY29uc3QgY2hhciAqc2lnbmFtZTsKKyAgICAgICAgICAgICAgICBzd2l0
Y2ggKFdURVJNU0lHKGV4aXRfY29kZSkpIHsKKyAgICAgICAgICAgICAgICBjYXNlIFNJR0lOVDoK
KyAgICAgICAgICAgICAgICAgICAgc2lnbmFtZSA9ICJTSUdJTlQiOworICAgICAgICAgICAgICAg
ICAgICBicmVhazsKKyAgICAgICAgICAgICAgICBjYXNlIFNJR0hVUDoKKyAgICAgICAgICAgICAg
ICAgICAgc2lnbmFtZSA9ICJTSUdIVVAiOworICAgICAgICAgICAgICAgICAgICBicmVhazsKKyAg
ICAgICAgICAgICAgICBjYXNlIFNJR1FVSVQ6CisgICAgICAgICAgICAgICAgICAgIHNpZ25hbWUg
PSAiU0lHUVVJVCI7CisgICAgICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgICAg
IGNhc2UgU0lHQUJSVDoKKyAgICAgICAgICAgICAgICAgICAgc2lnbmFtZSA9ICJTSUdBQlJUIjsK
KyAgICAgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICAgICAgY2FzZSBTSUdLSUxM
OgorICAgICAgICAgICAgICAgICAgICBzaWduYW1lID0gIlNJR0tJTEwiOworICAgICAgICAgICAg
ICAgICAgICBicmVhazsKKyAgICAgICAgICAgICAgICBjYXNlIFNJR1NFR1Y6CisgICAgICAgICAg
ICAgICAgICAgIHNpZ25hbWUgPSAiU0lHU0VHViI7CisgICAgICAgICAgICAgICAgICAgIGJyZWFr
OworICAgICAgICAgICAgICAgIGNhc2UgU0lHSUxMOgorICAgICAgICAgICAgICAgICAgICBzaWdu
YW1lID0gIlNJR0lMTCI7CisgICAgICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAg
ICAgIGNhc2UgU0lHVEVSTToKKyAgICAgICAgICAgICAgICAgICAgc2lnbmFtZSA9ICJTSUdURVJN
IjsKKyAgICAgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICAgICAgZGVmYXVsdDoK
KyAgICAgICAgICAgICAgICAgICAgc3ByaW50Zih0bXAsICJzaWduYWwgJWQiLCBXVEVSTVNJRyhl
eGl0X2NvZGUpKTsKKyAgICAgICAgICAgICAgICAgICAgc2lnbmFtZSA9IHRtcDsKKyAgICAgICAg
ICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIHRl
c3RfZXJyb3JfXygiVGVzdCBpbnRlcnJ1cHRlZCBieSAlcyIsIHNpZ25hbWUpOwogICAgICAgICAg
ICAgfSBlbHNlIHsKQEAgLTQzMiwyNiArNDgwLDI4IEBAIHRlc3RfcnVuX18oY29uc3Qgc3RydWN0
IHRlc3RfXyogdGVzdCkKIAogI2VsaWYgZGVmaW5lZChDVVRFU1RfV0lOX18pCiAKLSAgICAgICAg
Y2hhciBidWZmZXJbNTEyXSA9IHswfTsKLSAgICAgICAgU1RBUlRVUElORk9BIHN0YXJ0dXBJbmZv
ID0gezB9OworICAgICAgICBjaGFyIGJ1ZmZlcls1MTJdID0geyAwIH07CisgICAgICAgIFNUQVJU
VVBJTkZPQSBzdGFydHVwSW5mbyA9IHsgMCB9OwogICAgICAgICBQUk9DRVNTX0lORk9STUFUSU9O
IHByb2Nlc3NJbmZvOwogICAgICAgICBEV09SRCBleGl0Q29kZTsKIAogICAgICAgICAvKiBXaW5k
b3dzIGhhcyBubyBmb3JrKCkuIFNvIHdlIHByb3BhZ2F0ZSBhbGwgaW5mbyBpbnRvIHRoZSBjaGls
ZAogICAgICAgICAgKiB0aHJvdWdoIGEgY29tbWFuZCBsaW5lIGFyZ3VtZW50cy4gKi8KLSAgICAg
ICAgX3NucHJpbnRmKGJ1ZmZlciwgc2l6ZW9mKGJ1ZmZlciktMSwKLSAgICAgICAgICAgICAgICAg
IiVzIC0tbm8tZXhlYyAtLW5vLXN1bW1hcnkgLS12ZXJib3NlPSVkIC0tY29sb3I9JXMgLS0gXCIl
c1wiIiwKLSAgICAgICAgICAgICAgICAgdGVzdF9hcmd2MF9fLCB0ZXN0X3ZlcmJvc2VfbGV2ZWxf
XywKLSAgICAgICAgICAgICAgICAgdGVzdF9jb2xvcml6ZV9fID8gImFsd2F5cyIgOiAibmV2ZXIi
LCB0ZXN0LT5uYW1lKTsKKyAgICAgICAgX3NucHJpbnRmKGJ1ZmZlciwgc2l6ZW9mKGJ1ZmZlcikg
LSAxLAorICAgICAgICAgICAgICAgICAgIiVzIC0tbm8tZXhlYyAtLW5vLXN1bW1hcnkgLS12ZXJi
b3NlPSVkIC0tY29sb3I9JXMgLS0gXCIlc1wiIiwKKyAgICAgICAgICAgICAgICAgIHRlc3RfYXJn
djBfXywgdGVzdF92ZXJib3NlX2xldmVsX18sCisgICAgICAgICAgICAgICAgICB0ZXN0X2NvbG9y
aXplX18gPyAiYWx3YXlzIiA6ICJuZXZlciIsIHRlc3QtPm5hbWUpOwogICAgICAgICBzdGFydHVw
SW5mby5jYiA9IHNpemVvZihTVEFSVFVQSU5GTyk7Ci0gICAgICAgIGlmKENyZWF0ZVByb2Nlc3NB
KE5VTEwsIGJ1ZmZlciwgTlVMTCwgTlVMTCwgRkFMU0UsIDAsIE5VTEwsIE5VTEwsICZzdGFydHVw
SW5mbywgJnByb2Nlc3NJbmZvKSkgeworICAgICAgICBpZiAoQ3JlYXRlUHJvY2Vzc0EoTlVMTCwg
YnVmZmVyLCBOVUxMLCBOVUxMLCBGQUxTRSwgMCwgTlVMTCwgTlVMTCwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICZzdGFydHVwSW5mbywgJnByb2Nlc3NJbmZvKSkgewogICAgICAgICAgICAg
V2FpdEZvclNpbmdsZU9iamVjdChwcm9jZXNzSW5mby5oUHJvY2VzcywgSU5GSU5JVEUpOwogICAg
ICAgICAgICAgR2V0RXhpdENvZGVQcm9jZXNzKHByb2Nlc3NJbmZvLmhQcm9jZXNzLCAmZXhpdENv
ZGUpOwogICAgICAgICAgICAgQ2xvc2VIYW5kbGUocHJvY2Vzc0luZm8uaFRocmVhZCk7CiAgICAg
ICAgICAgICBDbG9zZUhhbmRsZShwcm9jZXNzSW5mby5oUHJvY2Vzcyk7CiAgICAgICAgICAgICBm
YWlsZWQgPSAoZXhpdENvZGUgIT0gMCk7CiAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICB0
ZXN0X2Vycm9yX18oIkNhbm5vdCBjcmVhdGUgdW5pdCB0ZXN0IHN1YnByb2Nlc3MgWyVsZF0uIiwg
R2V0TGFzdEVycm9yKCkpOworICAgICAgICAgICAgdGVzdF9lcnJvcl9fKCJDYW5ub3QgY3JlYXRl
IHVuaXQgdGVzdCBzdWJwcm9jZXNzIFslbGRdLiIsCisgICAgICAgICAgICAgICAgICAgICAgICAg
R2V0TGFzdEVycm9yKCkpOwogICAgICAgICAgICAgZmFpbGVkID0gMTsKICAgICAgICAgfQogCkBA
IC00NzAsMTQgKzUyMCwxMyBAQCB0ZXN0X3J1bl9fKGNvbnN0IHN0cnVjdCB0ZXN0X18qIHRlc3Qp
CiAgICAgdGVzdF9jdXJyZW50X3VuaXRfXyA9IE5VTEw7CiAKICAgICB0ZXN0X3N0YXRfcnVuX3Vu
aXRzX18rKzsKLSAgICBpZihmYWlsZWQpCisgICAgaWYgKGZhaWxlZCkKICAgICAgICAgdGVzdF9z
dGF0X2ZhaWxlZF91bml0c19fKys7CiB9CiAKICNpZiBkZWZpbmVkKENVVEVTVF9XSU5fXykKIC8q
IENhbGxiYWNrIGZvciBTRUggZXZlbnRzLiAqLwotc3RhdGljIExPTkcgQ0FMTEJBQ0sKLXRlc3Rf
ZXhjZXB0aW9uX2ZpbHRlcl9fKEVYQ0VQVElPTl9QT0lOVEVSUyAqcHRycykKK3N0YXRpYyBMT05H
IENBTExCQUNLIHRlc3RfZXhjZXB0aW9uX2ZpbHRlcl9fKEVYQ0VQVElPTl9QT0lOVEVSUyAqcHRy
cykKIHsKICAgICB0ZXN0X2Vycm9yX18oIlVuaGFuZGxlZCBTRUggZXhjZXB0aW9uICUwOGx4IGF0
ICVwLiIsCiAgICAgICAgICAgICAgICAgIHB0cnMtPkV4Y2VwdGlvblJlY29yZC0+RXhjZXB0aW9u
Q29kZSwKQEAgLTQ4OCwzNSArNTM3LDQyIEBAIHRlc3RfZXhjZXB0aW9uX2ZpbHRlcl9fKEVYQ0VQ
VElPTl9QT0lOVEVSUyAqcHRycykKIH0KICNlbmRpZgogCi1zdGF0aWMgdm9pZAotdGVzdF9oZWxw
X18odm9pZCkKK3N0YXRpYyB2b2lkIHRlc3RfaGVscF9fKHZvaWQpCiB7CiAgICAgcHJpbnRmKCJV
c2FnZTogJXMgW29wdGlvbnNdIFt0ZXN0Li4uXVxuIiwgdGVzdF9hcmd2MF9fKTsKLSAgICBwcmlu
dGYoIlJ1biB0aGUgc3BlY2lmaWVkIHVuaXQgdGVzdHM7IG9yIGlmIHRoZSBvcHRpb24gJy0tc2tp
cCcgaXMgdXNlZCwgcnVuIGFsbFxuIik7Ci0gICAgcHJpbnRmKCJ0ZXN0cyBpbiB0aGUgc3VpdGUg
YnV0IHRob3NlIGxpc3RlZC4gIEJ5IGRlZmF1bHQsIGlmIG5vIHRlc3RzIGFyZSBzcGVjaWZpZWRc
biIpOworICAgIHByaW50ZigiUnVuIHRoZSBzcGVjaWZpZWQgdW5pdCB0ZXN0czsgb3IgaWYgdGhl
IG9wdGlvbiAnLS1za2lwJyBpcyB1c2VkLCAiCisgICAgICAgICAgICJydW4gYWxsXG4iKTsKKyAg
ICBwcmludGYoInRlc3RzIGluIHRoZSBzdWl0ZSBidXQgdGhvc2UgbGlzdGVkLiAgQnkgZGVmYXVs
dCwgaWYgbm8gdGVzdHMgYXJlICIKKyAgICAgICAgICAgInNwZWNpZmllZFxuIik7CiAgICAgcHJp
bnRmKCJvbiB0aGUgY29tbWFuZCBsaW5lLCBhbGwgdW5pdCB0ZXN0cyBpbiB0aGUgc3VpdGUgYXJl
IHJ1bi5cbiIpOwogICAgIHByaW50ZigiXG4iKTsKICAgICBwcmludGYoIk9wdGlvbnM6XG4iKTsK
LSAgICBwcmludGYoIiAgLXMsIC0tc2tpcCAgICAgICAgICAgIEV4ZWN1dGUgYWxsIHVuaXQgdGVz
dHMgYnV0IHRoZSBsaXN0ZWQgb25lc1xuIik7Ci0gICAgcHJpbnRmKCIgICAgICAtLW5vLWV4ZWMg
ICAgICAgICBEbyBub3QgZXhlY3V0ZSB1bml0IHRlc3RzIGFzIGNoaWxkIHByb2Nlc3Nlc1xuIik7
Ci0gICAgcHJpbnRmKCIgICAgICAtLW5vLXN1bW1hcnkgICAgICBTdXBwcmVzcyBwcmludGluZyBv
ZiB0ZXN0IHJlc3VsdHMgc3VtbWFyeVxuIik7CisgICAgcHJpbnRmKAorICAgICAgICAiICAtcywg
LS1za2lwICAgICAgICAgICAgRXhlY3V0ZSBhbGwgdW5pdCB0ZXN0cyBidXQgdGhlIGxpc3RlZCBv
bmVzXG4iKTsKKyAgICBwcmludGYoIiAgICAgIC0tbm8tZXhlYyAgICAgICAgIERvIG5vdCBleGVj
dXRlIHVuaXQgdGVzdHMgYXMgY2hpbGQgIgorICAgICAgICAgICAicHJvY2Vzc2VzXG4iKTsKKyAg
ICBwcmludGYoCisgICAgICAgICIgICAgICAtLW5vLXN1bW1hcnkgICAgICBTdXBwcmVzcyBwcmlu
dGluZyBvZiB0ZXN0IHJlc3VsdHMgc3VtbWFyeVxuIik7CiAgICAgcHJpbnRmKCIgIC1sLCAtLWxp
c3QgICAgICAgICAgICBMaXN0IHVuaXQgdGVzdHMgaW4gdGhlIHN1aXRlIGFuZCBleGl0XG4iKTsK
ICAgICBwcmludGYoIiAgLXYsIC0tdmVyYm9zZSAgICAgICAgIEVuYWJsZSBtb3JlIHZlcmJvc2Ug
b3V0cHV0XG4iKTsKICAgICBwcmludGYoIiAgICAgIC0tdmVyYm9zZT1MRVZFTCAgIFNldCB2ZXJi
b3NlIGxldmVsIHRvIExFVkVMOlxuIik7CiAgICAgcHJpbnRmKCIgICAgICAgICAgICAgICAgICAg
ICAgICAgIDAgLi4uIEJlIHNpbGVudFxuIik7Ci0gICAgcHJpbnRmKCIgICAgICAgICAgICAgICAg
ICAgICAgICAgIDEgLi4uIE91dHB1dCBvbmUgbGluZSBwZXIgdGVzdCAoYW5kIHN1bW1hcnkpXG4i
KTsKLSAgICBwcmludGYoIiAgICAgICAgICAgICAgICAgICAgICAgICAgMiAuLi4gQXMgMSBhbmQg
ZmFpbGVkIGNvbmRpdGlvbnMgKHRoaXMgaXMgZGVmYXVsdClcbiIpOwotICAgIHByaW50ZigiICAg
ICAgICAgICAgICAgICAgICAgICAgICAzIC4uLiBBcyAxIGFuZCBhbGwgY29uZGl0aW9ucyAoYW5k
IGV4dGVuZGVkIHN1bW1hcnkpXG4iKTsKLSAgICBwcmludGYoIiAgICAgIC0tY29sb3I9V0hFTiAg
ICAgIEVuYWJsZSBjb2xvcml6ZWQgb3V0cHV0IChXSEVOIGlzIG9uZSBvZiAnYXV0bycsICdhbHdh
eXMnLCAnbmV2ZXInKVxuIik7CisgICAgcHJpbnRmKCIgICAgICAgICAgICAgICAgICAgICAgICAg
IDEgLi4uIE91dHB1dCBvbmUgbGluZSBwZXIgdGVzdCAoYW5kICIKKyAgICAgICAgICAgInN1bW1h
cnkpXG4iKTsKKyAgICBwcmludGYoIiAgICAgICAgICAgICAgICAgICAgICAgICAgMiAuLi4gQXMg
MSBhbmQgZmFpbGVkIGNvbmRpdGlvbnMgKHRoaXMgIgorICAgICAgICAgICAiaXMgZGVmYXVsdClc
biIpOworICAgIHByaW50ZigiICAgICAgICAgICAgICAgICAgICAgICAgICAzIC4uLiBBcyAxIGFu
ZCBhbGwgY29uZGl0aW9ucyAoYW5kICIKKyAgICAgICAgICAgImV4dGVuZGVkIHN1bW1hcnkpXG4i
KTsKKyAgICBwcmludGYoIiAgICAgIC0tY29sb3I9V0hFTiAgICAgIEVuYWJsZSBjb2xvcml6ZWQg
b3V0cHV0IChXSEVOIGlzIG9uZSBvZiAiCisgICAgICAgICAgICInYXV0bycsICdhbHdheXMnLCAn
bmV2ZXInKVxuIik7CiAgICAgcHJpbnRmKCIgIC1oLCAtLWhlbHAgICAgICAgICAgICBEaXNwbGF5
IHRoaXMgaGVscCBhbmQgZXhpdFxuIik7CiAgICAgcHJpbnRmKCJcbiIpOwogICAgIHRlc3RfbGlz
dF9uYW1lc19fKCk7CiB9CiAKLWludAotbWFpbihpbnQgYXJnYywgY2hhcioqIGFyZ3YpCitpbnQg
bWFpbihpbnQgYXJnYywgY2hhciAqKmFyZ3YpCiB7Ci0gICAgY29uc3Qgc3RydWN0IHRlc3RfXyoq
IHRlc3RzID0gTlVMTDsKKyAgICBjb25zdCBzdHJ1Y3QgdGVzdF9fICoqdGVzdHMgPSBOVUxMOwog
ICAgIGludCBpLCBqLCBuID0gMDsKICAgICBpbnQgc2Vlbl9kb3VibGVfZGFzaCA9IDA7CiAKQEAg
LTUzMSw0MiArNTg3LDUwIEBAIG1haW4oaW50IGFyZ2MsIGNoYXIqKiBhcmd2KQogI2VuZGlmCiAK
ICAgICAvKiBQYXJzZSBvcHRpb25zICovCi0gICAgZm9yKGkgPSAxOyBpIDwgYXJnYzsgaSsrKSB7
Ci0gICAgICAgIGlmKHNlZW5fZG91YmxlX2Rhc2ggfHwgYXJndltpXVswXSAhPSAnLScpIHsKLSAg
ICAgICAgICAgIHRlc3RzID0gKGNvbnN0IHN0cnVjdCB0ZXN0X18qKikgcmVhbGxvYygodm9pZCop
dGVzdHMsIChuKzEpICogc2l6ZW9mKGNvbnN0IHN0cnVjdCB0ZXN0X18qKSk7Ci0gICAgICAgICAg
ICBpZih0ZXN0cyA9PSBOVUxMKSB7CisgICAgZm9yIChpID0gMTsgaSA8IGFyZ2M7IGkrKykgewor
ICAgICAgICBpZiAoc2Vlbl9kb3VibGVfZGFzaCB8fCBhcmd2W2ldWzBdICE9ICctJykgeworICAg
ICAgICAgICAgdGVzdHMgPSAoY29uc3Qgc3RydWN0IHRlc3RfXyAqKilyZWFsbG9jKAorICAgICAg
ICAgICAgICAgICh2b2lkICopdGVzdHMsIChuICsgMSkgKiBzaXplb2YoY29uc3Qgc3RydWN0IHRl
c3RfXyAqKSk7CisgICAgICAgICAgICBpZiAodGVzdHMgPT0gTlVMTCkgewogICAgICAgICAgICAg
ICAgIGZwcmludGYoc3RkZXJyLCAiT3V0IG9mIG1lbW9yeS5cbiIpOwogICAgICAgICAgICAgICAg
IGV4aXQoMik7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICB0ZXN0c1tuXSA9IHRlc3RfYnlf
bmFtZV9fKGFyZ3ZbaV0pOwotICAgICAgICAgICAgaWYodGVzdHNbbl0gPT0gTlVMTCkgewotICAg
ICAgICAgICAgICAgIGZwcmludGYoc3RkZXJyLCAiJXM6IFVucmVjb2duaXplZCB1bml0IHRlc3Qg
JyVzJ1xuIiwgYXJndlswXSwgYXJndltpXSk7Ci0gICAgICAgICAgICAgICAgZnByaW50ZihzdGRl
cnIsICJUcnkgJyVzIC0tbGlzdCcgZm9yIGxpc3Qgb2YgdW5pdCB0ZXN0cy5cbiIsIGFyZ3ZbMF0p
OworICAgICAgICAgICAgaWYgKHRlc3RzW25dID09IE5VTEwpIHsKKyAgICAgICAgICAgICAgICBm
cHJpbnRmKHN0ZGVyciwgIiVzOiBVbnJlY29nbml6ZWQgdW5pdCB0ZXN0ICclcydcbiIsIGFyZ3Zb
MF0sCisgICAgICAgICAgICAgICAgICAgICAgICBhcmd2W2ldKTsKKyAgICAgICAgICAgICAgICBm
cHJpbnRmKHN0ZGVyciwgIlRyeSAnJXMgLS1saXN0JyBmb3IgbGlzdCBvZiB1bml0IHRlc3RzLlxu
IiwKKyAgICAgICAgICAgICAgICAgICAgICAgIGFyZ3ZbMF0pOwogICAgICAgICAgICAgICAgIGV4
aXQoMik7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBuKys7Ci0gICAgICAgIH0gZWxzZSBp
ZihzdHJjbXAoYXJndltpXSwgIi0tIikgPT0gMCkgeworICAgICAgICB9IGVsc2UgaWYgKHN0cmNt
cChhcmd2W2ldLCAiLS0iKSA9PSAwKSB7CiAgICAgICAgICAgICBzZWVuX2RvdWJsZV9kYXNoID0g
MTsKLSAgICAgICAgfSBlbHNlIGlmKHN0cmNtcChhcmd2W2ldLCAiLS1oZWxwIikgPT0gMCB8fCBz
dHJjbXAoYXJndltpXSwgIi1oIikgPT0gMCkgeworICAgICAgICB9IGVsc2UgaWYgKHN0cmNtcChh
cmd2W2ldLCAiLS1oZWxwIikgPT0gMCB8fAorICAgICAgICAgICAgICAgICAgIHN0cmNtcChhcmd2
W2ldLCAiLWgiKSA9PSAwKSB7CiAgICAgICAgICAgICB0ZXN0X2hlbHBfXygpOwogICAgICAgICAg
ICAgZXhpdCgwKTsKLSAgICAgICAgfSBlbHNlIGlmKHN0cmNtcChhcmd2W2ldLCAiLS12ZXJib3Nl
IikgPT0gMCB8fCBzdHJjbXAoYXJndltpXSwgIi12IikgPT0gMCkgeworICAgICAgICB9IGVsc2Ug
aWYgKHN0cmNtcChhcmd2W2ldLCAiLS12ZXJib3NlIikgPT0gMCB8fAorICAgICAgICAgICAgICAg
ICAgIHN0cmNtcChhcmd2W2ldLCAiLXYiKSA9PSAwKSB7CiAgICAgICAgICAgICB0ZXN0X3ZlcmJv
c2VfbGV2ZWxfXysrOwotICAgICAgICB9IGVsc2UgaWYoc3RybmNtcChhcmd2W2ldLCAiLS12ZXJi
b3NlPSIsIDEwKSA9PSAwKSB7CisgICAgICAgIH0gZWxzZSBpZiAoc3RybmNtcChhcmd2W2ldLCAi
LS12ZXJib3NlPSIsIDEwKSA9PSAwKSB7CiAgICAgICAgICAgICB0ZXN0X3ZlcmJvc2VfbGV2ZWxf
XyA9IGF0b2koYXJndltpXSArIDEwKTsKLSAgICAgICAgfSBlbHNlIGlmKHN0cmNtcChhcmd2W2ld
LCAiLS1jb2xvcj1hdXRvIikgPT0gMCkgeworICAgICAgICB9IGVsc2UgaWYgKHN0cmNtcChhcmd2
W2ldLCAiLS1jb2xvcj1hdXRvIikgPT0gMCkgewogICAgICAgICAgICAgLyogbm9vcCAoc2V0IGZy
b20gYWJvdmUpICovCi0gICAgICAgIH0gZWxzZSBpZihzdHJjbXAoYXJndltpXSwgIi0tY29sb3I9
YWx3YXlzIikgPT0gMCB8fCBzdHJjbXAoYXJndltpXSwgIi0tY29sb3IiKSA9PSAwKSB7CisgICAg
ICAgIH0gZWxzZSBpZiAoc3RyY21wKGFyZ3ZbaV0sICItLWNvbG9yPWFsd2F5cyIpID09IDAgfHwK
KyAgICAgICAgICAgICAgICAgICBzdHJjbXAoYXJndltpXSwgIi0tY29sb3IiKSA9PSAwKSB7CiAg
ICAgICAgICAgICB0ZXN0X2NvbG9yaXplX18gPSAxOwotICAgICAgICB9IGVsc2UgaWYoc3RyY21w
KGFyZ3ZbaV0sICItLWNvbG9yPW5ldmVyIikgPT0gMCkgeworICAgICAgICB9IGVsc2UgaWYgKHN0
cmNtcChhcmd2W2ldLCAiLS1jb2xvcj1uZXZlciIpID09IDApIHsKICAgICAgICAgICAgIHRlc3Rf
Y29sb3JpemVfXyA9IDA7Ci0gICAgICAgIH0gZWxzZSBpZihzdHJjbXAoYXJndltpXSwgIi0tc2tp
cCIpID09IDAgfHwgc3RyY21wKGFyZ3ZbaV0sICItcyIpID09IDApIHsKKyAgICAgICAgfSBlbHNl
IGlmIChzdHJjbXAoYXJndltpXSwgIi0tc2tpcCIpID09IDAgfHwKKyAgICAgICAgICAgICAgICAg
ICBzdHJjbXAoYXJndltpXSwgIi1zIikgPT0gMCkgewogICAgICAgICAgICAgdGVzdF9za2lwX21v
ZGVfXyA9IDE7Ci0gICAgICAgIH0gZWxzZSBpZihzdHJjbXAoYXJndltpXSwgIi0tbm8tZXhlYyIp
ID09IDApIHsKKyAgICAgICAgfSBlbHNlIGlmIChzdHJjbXAoYXJndltpXSwgIi0tbm8tZXhlYyIp
ID09IDApIHsKICAgICAgICAgICAgIHRlc3Rfbm9fZXhlY19fID0gMTsKLSAgICAgICAgfSBlbHNl
IGlmKHN0cmNtcChhcmd2W2ldLCAiLS1uby1zdW1tYXJ5IikgPT0gMCkgeworICAgICAgICB9IGVs
c2UgaWYgKHN0cmNtcChhcmd2W2ldLCAiLS1uby1zdW1tYXJ5IikgPT0gMCkgewogICAgICAgICAg
ICAgdGVzdF9ub19zdW1tYXJ5X18gPSAxOwotICAgICAgICB9IGVsc2UgaWYoc3RyY21wKGFyZ3Zb
aV0sICItLWxpc3QiKSA9PSAwIHx8IHN0cmNtcChhcmd2W2ldLCAiLWwiKSA9PSAwKSB7CisgICAg
ICAgIH0gZWxzZSBpZiAoc3RyY21wKGFyZ3ZbaV0sICItLWxpc3QiKSA9PSAwIHx8CisgICAgICAg
ICAgICAgICAgICAgc3RyY21wKGFyZ3ZbaV0sICItbCIpID09IDApIHsKICAgICAgICAgICAgIHRl
c3RfbGlzdF9uYW1lc19fKCk7CiAgICAgICAgICAgICBleGl0KDApOwogICAgICAgICB9IGVsc2Ug
ewpAQCAtNTgyLDY2ICs2NDYsNjggQEAgbWFpbihpbnQgYXJnYywgY2hhcioqIGFyZ3YpCiAKICAg
ICAvKiBDb3VudCBhbGwgdGVzdCB1bml0cyAqLwogICAgIHRlc3RfY291bnRfXyA9IDA7Ci0gICAg
Zm9yKGkgPSAwOyB0ZXN0X2xpc3RfX1tpXS5mdW5jICE9IE5VTEw7IGkrKykKKyAgICBmb3IgKGkg
PSAwOyB0ZXN0X2xpc3RfX1tpXS5mdW5jICE9IE5VTEw7IGkrKykKICAgICAgICAgdGVzdF9jb3Vu
dF9fKys7CiAKICAgICAvKiBSdW4gdGhlIHRlc3RzICovCi0gICAgaWYobiA9PSAwKSB7CisgICAg
aWYgKG4gPT0gMCkgewogICAgICAgICAvKiBSdW4gYWxsIHRlc3RzICovCi0gICAgICAgIGZvcihp
ID0gMDsgdGVzdF9saXN0X19baV0uZnVuYyAhPSBOVUxMOyBpKyspCisgICAgICAgIGZvciAoaSA9
IDA7IHRlc3RfbGlzdF9fW2ldLmZ1bmMgIT0gTlVMTDsgaSsrKQogICAgICAgICAgICAgdGVzdF9y
dW5fXygmdGVzdF9saXN0X19baV0pOwotICAgIH0gZWxzZSBpZighdGVzdF9za2lwX21vZGVfXykg
eworICAgIH0gZWxzZSBpZiAoIXRlc3Rfc2tpcF9tb2RlX18pIHsKICAgICAgICAgLyogUnVuIHRo
ZSBsaXN0ZWQgdGVzdHMgKi8KLSAgICAgICAgZm9yKGkgPSAwOyBpIDwgbjsgaSsrKQorICAgICAg
ICBmb3IgKGkgPSAwOyBpIDwgbjsgaSsrKQogICAgICAgICAgICAgdGVzdF9ydW5fXyh0ZXN0c1tp
XSk7CiAgICAgfSBlbHNlIHsKICAgICAgICAgLyogUnVuIGFsbCB0ZXN0cyBleGNlcHQgdGhvc2Ug
bGlzdGVkICovCi0gICAgICAgIGZvcihpID0gMDsgdGVzdF9saXN0X19baV0uZnVuYyAhPSBOVUxM
OyBpKyspIHsKKyAgICAgICAgZm9yIChpID0gMDsgdGVzdF9saXN0X19baV0uZnVuYyAhPSBOVUxM
OyBpKyspIHsKICAgICAgICAgICAgIGludCB3YW50X3NraXAgPSAwOwotICAgICAgICAgICAgZm9y
KGogPSAwOyBqIDwgbjsgaisrKSB7Ci0gICAgICAgICAgICAgICAgaWYodGVzdHNbal0gPT0gJnRl
c3RfbGlzdF9fW2ldKSB7CisgICAgICAgICAgICBmb3IgKGogPSAwOyBqIDwgbjsgaisrKSB7Cisg
ICAgICAgICAgICAgICAgaWYgKHRlc3RzW2pdID09ICZ0ZXN0X2xpc3RfX1tpXSkgewogICAgICAg
ICAgICAgICAgICAgICB3YW50X3NraXAgPSAxOwogICAgICAgICAgICAgICAgICAgICBicmVhazsK
ICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICB9Ci0gICAgICAgICAgICBpZighd2FudF9z
a2lwKQorICAgICAgICAgICAgaWYgKCF3YW50X3NraXApCiAgICAgICAgICAgICAgICAgdGVzdF9y
dW5fXygmdGVzdF9saXN0X19baV0pOwogICAgICAgICB9CiAgICAgfQogCiAgICAgLyogV3JpdGUg
YSBzdW1tYXJ5ICovCi0gICAgaWYoIXRlc3Rfbm9fc3VtbWFyeV9fICYmIHRlc3RfdmVyYm9zZV9s
ZXZlbF9fID49IDEpIHsKKyAgICBpZiAoIXRlc3Rfbm9fc3VtbWFyeV9fICYmIHRlc3RfdmVyYm9z
ZV9sZXZlbF9fID49IDEpIHsKICAgICAgICAgdGVzdF9wcmludF9pbl9jb2xvcl9fKENVVEVTVF9D
T0xPUl9ERUZBVUxUX0lOVEVOU0lWRV9fLCAiXG5TdW1tYXJ5OlxuIik7CiAKLSAgICAgICAgaWYo
dGVzdF92ZXJib3NlX2xldmVsX18gPj0gMykgeworICAgICAgICBpZiAodGVzdF92ZXJib3NlX2xl
dmVsX18gPj0gMykgewogICAgICAgICAgICAgcHJpbnRmKCIgIENvdW50IG9mIGFsbCB1bml0IHRl
c3RzOiAgICAgJTRkXG4iLCB0ZXN0X2NvdW50X18pOwotICAgICAgICAgICAgcHJpbnRmKCIgIENv
dW50IG9mIHJ1biB1bml0IHRlc3RzOiAgICAgJTRkXG4iLCB0ZXN0X3N0YXRfcnVuX3VuaXRzX18p
OwotICAgICAgICAgICAgcHJpbnRmKCIgIENvdW50IG9mIGZhaWxlZCB1bml0IHRlc3RzOiAgJTRk
XG4iLCB0ZXN0X3N0YXRfZmFpbGVkX3VuaXRzX18pOwotICAgICAgICAgICAgcHJpbnRmKCIgIENv
dW50IG9mIHNraXBwZWQgdW5pdCB0ZXN0czogJTRkXG4iLCB0ZXN0X2NvdW50X18gLSB0ZXN0X3N0
YXRfcnVuX3VuaXRzX18pOworICAgICAgICAgICAgcHJpbnRmKCIgIENvdW50IG9mIHJ1biB1bml0
IHRlc3RzOiAgICAgJTRkXG4iLAorICAgICAgICAgICAgICAgICAgIHRlc3Rfc3RhdF9ydW5fdW5p
dHNfXyk7CisgICAgICAgICAgICBwcmludGYoIiAgQ291bnQgb2YgZmFpbGVkIHVuaXQgdGVzdHM6
ICAlNGRcbiIsCisgICAgICAgICAgICAgICAgICAgdGVzdF9zdGF0X2ZhaWxlZF91bml0c19fKTsK
KyAgICAgICAgICAgIHByaW50ZigiICBDb3VudCBvZiBza2lwcGVkIHVuaXQgdGVzdHM6ICU0ZFxu
IiwKKyAgICAgICAgICAgICAgICAgICB0ZXN0X2NvdW50X18gLSB0ZXN0X3N0YXRfcnVuX3VuaXRz
X18pOwogICAgICAgICB9CiAKLSAgICAgICAgaWYodGVzdF9zdGF0X2ZhaWxlZF91bml0c19fID09
IDApIHsKKyAgICAgICAgaWYgKHRlc3Rfc3RhdF9mYWlsZWRfdW5pdHNfXyA9PSAwKSB7CiAgICAg
ICAgICAgICB0ZXN0X3ByaW50X2luX2NvbG9yX18oQ1VURVNUX0NPTE9SX0dSRUVOX0lOVEVOU0lW
RV9fLAotICAgICAgICAgICAgICAgICAgICAiICBTVUNDRVNTOiBBbGwgdW5pdCB0ZXN0cyBoYXZl
IHBhc3NlZC5cbiIpOworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICIgIFNVQ0NF
U1M6IEFsbCB1bml0IHRlc3RzIGhhdmUgcGFzc2VkLlxuIik7CiAgICAgICAgIH0gZWxzZSB7Ci0g
ICAgICAgICAgICB0ZXN0X3ByaW50X2luX2NvbG9yX18oQ1VURVNUX0NPTE9SX1JFRF9JTlRFTlNJ
VkVfXywKLSAgICAgICAgICAgICAgICAgICAgIiAgRkFJTEVEOiAlZCBvZiAlZCB1bml0IHRlc3Rz
IGhhdmUgZmFpbGVkLlxuIiwKLSAgICAgICAgICAgICAgICAgICAgdGVzdF9zdGF0X2ZhaWxlZF91
bml0c19fLCB0ZXN0X3N0YXRfcnVuX3VuaXRzX18pOworICAgICAgICAgICAgdGVzdF9wcmludF9p
bl9jb2xvcl9fKAorICAgICAgICAgICAgICAgIENVVEVTVF9DT0xPUl9SRURfSU5URU5TSVZFX18s
CisgICAgICAgICAgICAgICAgIiAgRkFJTEVEOiAlZCBvZiAlZCB1bml0IHRlc3RzIGhhdmUgZmFp
bGVkLlxuIiwKKyAgICAgICAgICAgICAgICB0ZXN0X3N0YXRfZmFpbGVkX3VuaXRzX18sIHRlc3Rf
c3RhdF9ydW5fdW5pdHNfXyk7CiAgICAgICAgIH0KICAgICB9CiAKLSAgICBpZih0ZXN0cyAhPSBO
VUxMKQotICAgICAgICBmcmVlKCh2b2lkKil0ZXN0cyk7CisgICAgaWYgKHRlc3RzICE9IE5VTEwp
CisgICAgICAgIGZyZWUoKHZvaWQgKil0ZXN0cyk7CiAKICAgICByZXR1cm4gKHRlc3Rfc3RhdF9m
YWlsZWRfdW5pdHNfXyA9PSAwKSA/IDAgOiAxOwogfQogCi0KLSNlbmRpZiAgLyogI2lmbmRlZiBU
RVNUX05PX01BSU4gKi8KKyNlbmRpZiAvKiAjaWZuZGVmIFRFU1RfTk9fTUFJTiAqLwogCiAjaWZk
ZWYgX19jcGx1c3BsdXMKLSAgICB9ICAvKiBleHRlcm4gIkMiICovCit9IC8qIGV4dGVybiAiQyIg
Ki8KICNlbmRpZgogCi0KLSNlbmRpZiAgLyogI2lmbmRlZiBDVVRFU1RfSF9fICovCisjZW5kaWYg
LyogI2lmbmRlZiBDVVRFU1RfSF9fICovCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvdGVzdC9kdGxzX3NydHBfZHJpdmVy
LmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNy
dHAvdGVzdC9kdGxzX3NydHBfZHJpdmVyLmMKaW5kZXggZWJmNzNmOWZjNTFiNWU1MGU5ZjJlZDNk
OTVlMTlmOGUwMjBiZGRmZC4uNGY0ZDBhMzliMzhlZGM0YjQ4OGY2NGVkNTM3NjFkZmNkMDYzZWM2
NSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJzcnRwL3Rlc3QvZHRsc19zcnRwX2RyaXZlci5jCisrKyBiL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC90ZXN0L2R0bHNfc3J0cF9k
cml2ZXIuYwpAQCAtNywyNiArNywyNiBAQAogICogQ2lzY28gU3lzdGVtcywgSW5jLgogICovCiAv
KgotICoJCisgKgogICogQ29weXJpZ2h0IChjKSAyMDAxLTIwMTcgQ2lzY28gU3lzdGVtcywgSW5j
LgogICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqIAorICoKICAqIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9k
aWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zCiAgKiBhcmUgbWV0OgotICogCisgKgogICogICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291
cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAogICogICBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAK
KyAqCiAgKiAgIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUKICAqICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcKICAqICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkCiAgKiAgIHdpdGggdGhlIGRpc3RyaWJ1dGlv
bi4KLSAqIAorICoKICAqICAgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgQ2lzY28gU3lzdGVtcywg
SW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwogICogICBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQg
dG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQKICAqICAgZnJvbSB0aGlzIHNv
ZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotICogCisg
KgogICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMg
QU5EIENPTlRSSUJVVE9SUwogICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKICAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVE
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCkBAIC00NiwxNzEgKzQ2
LDE3MCBAQAogI2luY2x1ZGUgImdldG9wdF9zLmgiIC8qIGZvciBsb2NhbCBnZXRvcHQoKSAgICAq
LwogI2luY2x1ZGUgInNydHBfcHJpdi5oIgogCi1zcnRwX2Vycl9zdGF0dXNfdCAKLXRlc3RfZHRs
c19zcnRwKHZvaWQpOworc3J0cF9lcnJfc3RhdHVzX3QgdGVzdF9kdGxzX3NydHAodm9pZCk7CiAK
LXNydHBfaGRyX3QgKgotc3J0cF9jcmVhdGVfdGVzdF9wYWNrZXQoaW50IHBrdF9vY3RldF9sZW4s
IHVpbnQzMl90IHNzcmMpOworc3J0cF9oZHJfdCAqc3J0cF9jcmVhdGVfdGVzdF9wYWNrZXQoaW50
IHBrdF9vY3RldF9sZW4sIHVpbnQzMl90IHNzcmMpOwogCi12b2lkCi11c2FnZShjaGFyICpwcm9n
X25hbWUpIHsKLSAgcHJpbnRmKCJ1c2FnZTogJXMgWyAtdCBdWyAtYyBdWyAtdiBdWy1kIDxkZWJ1
Z19tb2R1bGU+IF0qIFsgLWwgXVxuIgotICAgICAgICAgIiAgLWQgPG1vZD4gICB0dXJuIG9uIGRl
YnVnZ2luZyBtb2R1bGUgPG1vZD5cbiIKLSAgICAgICAgICIgIC1sICAgICAgICAgbGlzdCBkZWJ1
Z2dpbmcgbW9kdWxlc1xuIiwgcHJvZ19uYW1lKTsKLSAgZXhpdCgxKTsKK3ZvaWQgdXNhZ2UoY2hh
ciAqcHJvZ19uYW1lKQoreworICAgIHByaW50ZigidXNhZ2U6ICVzIFsgLXQgXVsgLWMgXVsgLXYg
XVstZCA8ZGVidWdfbW9kdWxlPiBdKiBbIC1sIF1cbiIKKyAgICAgICAgICAgIiAgLWQgPG1vZD4g
ICB0dXJuIG9uIGRlYnVnZ2luZyBtb2R1bGUgPG1vZD5cbiIKKyAgICAgICAgICAgIiAgLWwgICAg
ICAgICBsaXN0IGRlYnVnZ2luZyBtb2R1bGVzXG4iLAorICAgICAgICAgICBwcm9nX25hbWUpOwor
ICAgIGV4aXQoMSk7CiB9CiAKLWludAotbWFpbihpbnQgYXJnYywgY2hhciAqYXJndltdKSB7Ci0g
IHVuc2lnbmVkIGRvX2xpc3RfbW9kcyAgICAgID0gMDsKLSAgaW50IHE7Ci0gIHNydHBfZXJyX3N0
YXR1c190IGVycjsKK2ludCBtYWluKGludCBhcmdjLCBjaGFyICphcmd2W10pCit7CisgICAgdW5z
aWduZWQgZG9fbGlzdF9tb2RzID0gMDsKKyAgICBpbnQgcTsKKyAgICBzcnRwX2Vycl9zdGF0dXNf
dCBlcnI7CiAKLSAgcHJpbnRmKCJkdGxzX3NydHBfZHJpdmVyXG4iKTsKKyAgICBwcmludGYoImR0
bHNfc3J0cF9kcml2ZXJcbiIpOwogCi0gIC8qIGluaXRpYWxpemUgc3J0cCBsaWJyYXJ5ICovCi0g
IGVyciA9IHNydHBfaW5pdCgpOwotICBpZiAoZXJyKSB7Ci0gICAgcHJpbnRmKCJlcnJvcjogc3J0
cCBpbml0IGZhaWxlZCB3aXRoIGVycm9yIGNvZGUgJWRcbiIsIGVycik7Ci0gICAgZXhpdCgxKTsK
LSAgfQotCi0gIC8qIHByb2Nlc3MgaW5wdXQgYXJndW1lbnRzICovCi0gIHdoaWxlICgxKSB7Ci0g
ICAgcSA9IGdldG9wdF9zKGFyZ2MsIGFyZ3YsICJsZDoiKTsKLSAgICBpZiAocSA9PSAtMSkgCi0g
ICAgICBicmVhazsKLSAgICBzd2l0Y2ggKHEpIHsKLSAgICBjYXNlICdsJzoKLSAgICAgIGRvX2xp
c3RfbW9kcyA9IDE7Ci0gICAgICBicmVhazsKLSAgICBjYXNlICdkJzoKLSAgICAgIGVyciA9IHNy
dHBfY3J5cHRvX2tlcm5lbF9zZXRfZGVidWdfbW9kdWxlKG9wdGFyZ19zLCAxKTsKLSAgICAgIGlm
IChlcnIpIHsKLSAgICAgICAgcHJpbnRmKCJlcnJvcjogc2V0IGRlYnVnIG1vZHVsZSAoJXMpIGZh
aWxlZFxuIiwgb3B0YXJnX3MpOworICAgIC8qIGluaXRpYWxpemUgc3J0cCBsaWJyYXJ5ICovCisg
ICAgZXJyID0gc3J0cF9pbml0KCk7CisgICAgaWYgKGVycikgeworICAgICAgICBwcmludGYoImVy
cm9yOiBzcnRwIGluaXQgZmFpbGVkIHdpdGggZXJyb3IgY29kZSAlZFxuIiwgZXJyKTsKICAgICAg
ICAgZXhpdCgxKTsKLSAgICAgIH0gIAotICAgICAgYnJlYWs7Ci0gICAgZGVmYXVsdDoKLSAgICAg
IHVzYWdlKGFyZ3ZbMF0pOwotICAgIH0gICAgCi0gIH0KLQotICBpZiAoZG9fbGlzdF9tb2RzKSB7
Ci0gICAgZXJyID0gc3J0cF9jcnlwdG9fa2VybmVsX2xpc3RfZGVidWdfbW9kdWxlcygpOworICAg
IH0KKworICAgIC8qIHByb2Nlc3MgaW5wdXQgYXJndW1lbnRzICovCisgICAgd2hpbGUgKDEpIHsK
KyAgICAgICAgcSA9IGdldG9wdF9zKGFyZ2MsIGFyZ3YsICJsZDoiKTsKKyAgICAgICAgaWYgKHEg
PT0gLTEpCisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgc3dpdGNoIChxKSB7CisgICAgICAg
IGNhc2UgJ2wnOgorICAgICAgICAgICAgZG9fbGlzdF9tb2RzID0gMTsKKyAgICAgICAgICAgIGJy
ZWFrOworICAgICAgICBjYXNlICdkJzoKKyAgICAgICAgICAgIGVyciA9IHNydHBfY3J5cHRvX2tl
cm5lbF9zZXRfZGVidWdfbW9kdWxlKG9wdGFyZ19zLCAxKTsKKyAgICAgICAgICAgIGlmIChlcnIp
IHsKKyAgICAgICAgICAgICAgICBwcmludGYoImVycm9yOiBzZXQgZGVidWcgbW9kdWxlICglcykg
ZmFpbGVkXG4iLCBvcHRhcmdfcyk7CisgICAgICAgICAgICAgICAgZXhpdCgxKTsKKyAgICAgICAg
ICAgIH0KKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAg
dXNhZ2UoYXJndlswXSk7CisgICAgICAgIH0KKyAgICB9CisKKyAgICBpZiAoZG9fbGlzdF9tb2Rz
KSB7CisgICAgICAgIGVyciA9IHNydHBfY3J5cHRvX2tlcm5lbF9saXN0X2RlYnVnX21vZHVsZXMo
KTsKKyAgICAgICAgaWYgKGVycikgeworICAgICAgICAgICAgcHJpbnRmKCJlcnJvcjogbGlzdCBv
ZiBkZWJ1ZyBtb2R1bGVzIGZhaWxlZFxuIik7CisgICAgICAgICAgICBleGl0KDEpOworICAgICAg
ICB9CisgICAgfQorCisgICAgcHJpbnRmKCJ0ZXN0aW5nIGR0bHNfc3J0cC4uLiIpOworICAgIGVy
ciA9IHRlc3RfZHRsc19zcnRwKCk7CiAgICAgaWYgKGVycikgewotICAgICAgcHJpbnRmKCJlcnJv
cjogbGlzdCBvZiBkZWJ1ZyBtb2R1bGVzIGZhaWxlZFxuIik7Ci0gICAgICBleGl0KDEpOworICAg
ICAgICBwcmludGYoIlxuZXJyb3IgKGNvZGUgJWQpXG4iLCBlcnIpOworICAgICAgICBleGl0KDEp
OwogICAgIH0KLSAgfQorICAgIHByaW50ZigicGFzc2VkXG4iKTsKIAotICBwcmludGYoInRlc3Rp
bmcgZHRsc19zcnRwLi4uIik7Ci0gIGVyciA9IHRlc3RfZHRsc19zcnRwKCk7Ci0gIGlmIChlcnIp
IHsKLSAgICBwcmludGYoIlxuZXJyb3IgKGNvZGUgJWQpXG4iLCBlcnIpOwotICAgIGV4aXQoMSk7
Ci0gIH0KLSAgcHJpbnRmKCJwYXNzZWRcbiIpOwotICAKLSAgLyogc2h1dCBkb3duIHNydHAgbGli
cmFyeSAqLwotICBlcnIgPSBzcnRwX3NodXRkb3duKCk7Ci0gIGlmIChlcnIpIHsKLSAgICBwcmlu
dGYoImVycm9yOiBzcnRwIHNodXRkb3duIGZhaWxlZCB3aXRoIGVycm9yIGNvZGUgJWRcbiIsIGVy
cik7Ci0gICAgZXhpdCgxKTsKLSAgfQorICAgIC8qIHNodXQgZG93biBzcnRwIGxpYnJhcnkgKi8K
KyAgICBlcnIgPSBzcnRwX3NodXRkb3duKCk7CisgICAgaWYgKGVycikgeworICAgICAgICBwcmlu
dGYoImVycm9yOiBzcnRwIHNodXRkb3duIGZhaWxlZCB3aXRoIGVycm9yIGNvZGUgJWRcbiIsIGVy
cik7CisgICAgICAgIGV4aXQoMSk7CisgICAgfQogCi0gIHJldHVybiAwOworICAgIHJldHVybiAw
OwogfQogCitzcnRwX2Vycl9zdGF0dXNfdCB0ZXN0X2R0bHNfc3J0cCh2b2lkKQoreworICAgIHNy
dHBfaGRyX3QgKnRlc3RfcGFja2V0OworICAgIGludCB0ZXN0X3BhY2tldF9sZW4gPSA4MDsKKyAg
ICBzcnRwX3QgczsKKyAgICBzcnRwX3BvbGljeV90IHBvbGljeTsKKyAgICB1aW50OF90IGtleVtT
UlRQX01BWF9LRVlfTEVOXTsKKyAgICB1aW50OF90IHNhbHRbU1JUUF9NQVhfS0VZX0xFTl07Cisg
ICAgdW5zaWduZWQgaW50IGtleV9sZW4sIHNhbHRfbGVuOworICAgIHNydHBfcHJvZmlsZV90IHBy
b2ZpbGU7CisgICAgc3J0cF9lcnJfc3RhdHVzX3QgZXJyOwogCi1zcnRwX2Vycl9zdGF0dXNfdAot
dGVzdF9kdGxzX3NydHAodm9pZCkgewotICBzcnRwX2hkcl90ICp0ZXN0X3BhY2tldDsKLSAgaW50
IHRlc3RfcGFja2V0X2xlbiA9IDgwOwotICBzcnRwX3QgczsKLSAgc3J0cF9wb2xpY3lfdCBwb2xp
Y3k7Ci0gIHVpbnQ4X3Qga2V5W1NSVFBfTUFYX0tFWV9MRU5dOwotICB1aW50OF90IHNhbHRbU1JU
UF9NQVhfS0VZX0xFTl07Ci0gIHVuc2lnbmVkIGludCBrZXlfbGVuLCBzYWx0X2xlbjsKLSAgc3J0
cF9wcm9maWxlX3QgcHJvZmlsZTsKLSAgc3J0cF9lcnJfc3RhdHVzX3QgZXJyOwotCi0gIG1lbXNl
dCgmcG9saWN5LCAweDAsIHNpemVvZihzcnRwX3BvbGljeV90KSk7Ci0KLSAgLyogY3JlYXRlIGEg
J251bGwnIFNSVFAgc2Vzc2lvbiAqLwotICBlcnIgPSBzcnRwX2NyZWF0ZSgmcywgTlVMTCk7Ci0g
IGlmIChlcnIpIAotICAgIHJldHVybiBlcnI7Ci0KLSAgLyogCi0gICAqIHZlcmlmeSB0aGF0IHBh
Y2tldC1wcm9jZXNzaW5nIGZ1bmN0aW9ucyBiZWhhdmUgcHJvcGVybHkgLSB3ZQotICAgKiBleHBl
Y3QgdGhhdCB0aGVzZSBmdW5jdGlvbnMgd2lsbCByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX25vX2N0
eAotICAgKi8KLSAgdGVzdF9wYWNrZXQgPSBzcnRwX2NyZWF0ZV90ZXN0X3BhY2tldCg4MCwgMHhh
NWE1YTVhNSk7Ci0gIGlmICh0ZXN0X3BhY2tldCA9PSBOVUxMKSAKLSAgICByZXR1cm4gc3J0cF9l
cnJfc3RhdHVzX2FsbG9jX2ZhaWw7Ci0gIGVyciA9IHNydHBfcHJvdGVjdChzLCB0ZXN0X3BhY2tl
dCwgJnRlc3RfcGFja2V0X2xlbik7Ci0gIGlmIChlcnIgIT0gc3J0cF9lcnJfc3RhdHVzX25vX2N0
eCkgewotICAgIHByaW50Zigid3JvbmcgcmV0dXJuIHZhbHVlIGZyb20gc3J0cF9wcm90ZWN0KCkg
KGdvdCBjb2RlICVkKVxuIiwgCi0JICAgZXJyKTsKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVz
X2ZhaWw7Ci0gIH0KLSAgZXJyID0gc3J0cF91bnByb3RlY3QocywgdGVzdF9wYWNrZXQsICZ0ZXN0
X3BhY2tldF9sZW4pOwotICBpZiAoZXJyICE9IHNydHBfZXJyX3N0YXR1c19ub19jdHgpIHsKLSAg
ICBwcmludGYoIndyb25nIHJldHVybiB2YWx1ZSBmcm9tIHNydHBfdW5wcm90ZWN0KCkgKGdvdCBj
b2RlICVkKVxuIiwgCi0JICAgZXJyKTsKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7
Ci0gIH0KLSAgZXJyID0gc3J0cF9wcm90ZWN0X3J0Y3AocywgdGVzdF9wYWNrZXQsICZ0ZXN0X3Bh
Y2tldF9sZW4pOwotICBpZiAoZXJyICE9IHNydHBfZXJyX3N0YXR1c19ub19jdHgpIHsKLSAgICBw
cmludGYoIndyb25nIHJldHVybiB2YWx1ZSBmcm9tIHNydHBfcHJvdGVjdF9ydGNwKCkgKGdvdCBj
b2RlICVkKVxuIiwgCi0JICAgZXJyKTsKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7
Ci0gIH0KLSAgZXJyID0gc3J0cF91bnByb3RlY3RfcnRjcChzLCB0ZXN0X3BhY2tldCwgJnRlc3Rf
cGFja2V0X2xlbik7Ci0gIGlmIChlcnIgIT0gc3J0cF9lcnJfc3RhdHVzX25vX2N0eCkgewotICAg
IHByaW50Zigid3JvbmcgcmV0dXJuIHZhbHVlIGZyb20gc3J0cF91bnByb3RlY3RfcnRjcCgpIChn
b3QgY29kZSAlZClcbiIsIAotCSAgIGVycik7Ci0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19m
YWlsOwotICB9Ci0KLQotICAvKiAKLSAgICogc2V0IGtleXMgdG8ga25vd24gdmFsdWVzIGZvciB0
ZXN0aW5nCi0gICAqLwotICBwcm9maWxlID0gc3J0cF9wcm9maWxlX2FlczEyOF9jbV9zaGExXzgw
OwotICBrZXlfbGVuID0gc3J0cF9wcm9maWxlX2dldF9tYXN0ZXJfa2V5X2xlbmd0aChwcm9maWxl
KTsKLSAgc2FsdF9sZW4gPSBzcnRwX3Byb2ZpbGVfZ2V0X21hc3Rlcl9zYWx0X2xlbmd0aChwcm9m
aWxlKTsKLSAgbWVtc2V0KGtleSwgMHhmZiwga2V5X2xlbik7Ci0gIG1lbXNldChzYWx0LCAweGVl
LCBzYWx0X2xlbik7Ci0gIHNydHBfYXBwZW5kX3NhbHRfdG9fa2V5KGtleSwga2V5X2xlbiwgc2Fs
dCwgc2FsdF9sZW4pOwotICBwb2xpY3kua2V5ID0ga2V5OwotCi0gIC8qIGluaXRpYWxpemUgU1JU
UCBwb2xpY3kgZnJvbSBwcm9maWxlICAqLwotICBlcnIgPSBzcnRwX2NyeXB0b19wb2xpY3lfc2V0
X2Zyb21fcHJvZmlsZV9mb3JfcnRwKCZwb2xpY3kucnRwLCBwcm9maWxlKTsKLSAgaWYgKGVycikg
cmV0dXJuIGVycjsKLSAgZXJyID0gc3J0cF9jcnlwdG9fcG9saWN5X3NldF9mcm9tX3Byb2ZpbGVf
Zm9yX3J0Y3AoJnBvbGljeS5ydGNwLCBwcm9maWxlKTsKLSAgaWYgKGVycikgcmV0dXJuIGVycjsK
LSAgcG9saWN5LnNzcmMudHlwZSAgPSBzc3JjX2FueV9pbmJvdW5kOwotICBwb2xpY3kuZWt0ID0g
TlVMTDsKLSAgcG9saWN5LndpbmRvd19zaXplID0gMTI4OwotICBwb2xpY3kuYWxsb3dfcmVwZWF0
X3R4ID0gMDsKLSAgcG9saWN5Lm5leHQgPSBOVUxMOwotICAgIAotICBlcnIgPSBzcnRwX2FkZF9z
dHJlYW0ocywgJnBvbGljeSk7Ci0gIGlmIChlcnIpCi0gICAgcmV0dXJuIGVycjsKLSAgCi0gIGVy
ciA9IHNydHBfZGVhbGxvYyhzKTsKLSAgaWYgKGVycikKLSAgICByZXR1cm4gZXJyOwotCi0gIGZy
ZWUodGVzdF9wYWNrZXQpOwotCi0gIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7Ci19CisgICAg
bWVtc2V0KCZwb2xpY3ksIDB4MCwgc2l6ZW9mKHNydHBfcG9saWN5X3QpKTsKIAorICAgIC8qIGNy
ZWF0ZSBhICdudWxsJyBTUlRQIHNlc3Npb24gKi8KKyAgICBlcnIgPSBzcnRwX2NyZWF0ZSgmcywg
TlVMTCk7CisgICAgaWYgKGVycikKKyAgICAgICAgcmV0dXJuIGVycjsKIAorICAgIC8qCisgICAg
ICogdmVyaWZ5IHRoYXQgcGFja2V0LXByb2Nlc3NpbmcgZnVuY3Rpb25zIGJlaGF2ZSBwcm9wZXJs
eSAtIHdlCisgICAgICogZXhwZWN0IHRoYXQgdGhlc2UgZnVuY3Rpb25zIHdpbGwgcmV0dXJuIHNy
dHBfZXJyX3N0YXR1c19ub19jdHgKKyAgICAgKi8KKyAgICB0ZXN0X3BhY2tldCA9IHNydHBfY3Jl
YXRlX3Rlc3RfcGFja2V0KDgwLCAweGE1YTVhNWE1KTsKKyAgICBpZiAodGVzdF9wYWNrZXQgPT0g
TlVMTCkKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19hbGxvY19mYWlsOworCisgICAg
ZXJyID0gc3J0cF9wcm90ZWN0KHMsIHRlc3RfcGFja2V0LCAmdGVzdF9wYWNrZXRfbGVuKTsKKyAg
ICBpZiAoZXJyICE9IHNydHBfZXJyX3N0YXR1c19ub19jdHgpIHsKKyAgICAgICAgcHJpbnRmKCJ3
cm9uZyByZXR1cm4gdmFsdWUgZnJvbSBzcnRwX3Byb3RlY3QoKSAoZ290IGNvZGUgJWQpXG4iLCBl
cnIpOworICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7CisgICAgfQorCisgICAg
ZXJyID0gc3J0cF91bnByb3RlY3QocywgdGVzdF9wYWNrZXQsICZ0ZXN0X3BhY2tldF9sZW4pOwor
ICAgIGlmIChlcnIgIT0gc3J0cF9lcnJfc3RhdHVzX25vX2N0eCkgeworICAgICAgICBwcmludGYo
Indyb25nIHJldHVybiB2YWx1ZSBmcm9tIHNydHBfdW5wcm90ZWN0KCkgKGdvdCBjb2RlICVkKVxu
IiwgZXJyKTsKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19mYWlsOworICAgIH0KKwor
ICAgIGVyciA9IHNydHBfcHJvdGVjdF9ydGNwKHMsIHRlc3RfcGFja2V0LCAmdGVzdF9wYWNrZXRf
bGVuKTsKKyAgICBpZiAoZXJyICE9IHNydHBfZXJyX3N0YXR1c19ub19jdHgpIHsKKyAgICAgICAg
cHJpbnRmKCJ3cm9uZyByZXR1cm4gdmFsdWUgZnJvbSBzcnRwX3Byb3RlY3RfcnRjcCgpIChnb3Qg
Y29kZSAlZClcbiIsCisgICAgICAgICAgICAgICBlcnIpOworICAgICAgICByZXR1cm4gc3J0cF9l
cnJfc3RhdHVzX2ZhaWw7CisgICAgfQorCisgICAgZXJyID0gc3J0cF91bnByb3RlY3RfcnRjcChz
LCB0ZXN0X3BhY2tldCwgJnRlc3RfcGFja2V0X2xlbik7CisgICAgaWYgKGVyciAhPSBzcnRwX2Vy
cl9zdGF0dXNfbm9fY3R4KSB7CisgICAgICAgIHByaW50Zigid3JvbmcgcmV0dXJuIHZhbHVlIGZy
b20gc3J0cF91bnByb3RlY3RfcnRjcCgpIChnb3QgY29kZSAlZClcbiIsCisgICAgICAgICAgICAg
ICBlcnIpOworICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7CisgICAgfQorCisg
ICAgLyoKKyAgICAgKiBzZXQga2V5cyB0byBrbm93biB2YWx1ZXMgZm9yIHRlc3RpbmcKKyAgICAg
Ki8KKyAgICBwcm9maWxlID0gc3J0cF9wcm9maWxlX2FlczEyOF9jbV9zaGExXzgwOworICAgIGtl
eV9sZW4gPSBzcnRwX3Byb2ZpbGVfZ2V0X21hc3Rlcl9rZXlfbGVuZ3RoKHByb2ZpbGUpOworICAg
IHNhbHRfbGVuID0gc3J0cF9wcm9maWxlX2dldF9tYXN0ZXJfc2FsdF9sZW5ndGgocHJvZmlsZSk7
CisgICAgbWVtc2V0KGtleSwgMHhmZiwga2V5X2xlbik7CisgICAgbWVtc2V0KHNhbHQsIDB4ZWUs
IHNhbHRfbGVuKTsKKyAgICBzcnRwX2FwcGVuZF9zYWx0X3RvX2tleShrZXksIGtleV9sZW4sIHNh
bHQsIHNhbHRfbGVuKTsKKyAgICBwb2xpY3kua2V5ID0ga2V5OworCisgICAgLyogaW5pdGlhbGl6
ZSBTUlRQIHBvbGljeSBmcm9tIHByb2ZpbGUgICovCisgICAgZXJyID0gc3J0cF9jcnlwdG9fcG9s
aWN5X3NldF9mcm9tX3Byb2ZpbGVfZm9yX3J0cCgmcG9saWN5LnJ0cCwgcHJvZmlsZSk7CisgICAg
aWYgKGVycikKKyAgICAgICAgcmV0dXJuIGVycjsKKyAgICBlcnIgPSBzcnRwX2NyeXB0b19wb2xp
Y3lfc2V0X2Zyb21fcHJvZmlsZV9mb3JfcnRjcCgmcG9saWN5LnJ0Y3AsIHByb2ZpbGUpOworICAg
IGlmIChlcnIpCisgICAgICAgIHJldHVybiBlcnI7CisgICAgcG9saWN5LnNzcmMudHlwZSA9IHNz
cmNfYW55X2luYm91bmQ7CisgICAgcG9saWN5LmVrdCA9IE5VTEw7CisgICAgcG9saWN5LndpbmRv
d19zaXplID0gMTI4OworICAgIHBvbGljeS5hbGxvd19yZXBlYXRfdHggPSAwOworICAgIHBvbGlj
eS5uZXh0ID0gTlVMTDsKKworICAgIGVyciA9IHNydHBfYWRkX3N0cmVhbShzLCAmcG9saWN5KTsK
KyAgICBpZiAoZXJyKQorICAgICAgICByZXR1cm4gZXJyOworCisgICAgZXJyID0gc3J0cF9kZWFs
bG9jKHMpOworICAgIGlmIChlcnIpCisgICAgICAgIHJldHVybiBlcnI7CisKKyAgICBmcmVlKHRl
c3RfcGFja2V0KTsKKworICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7Cit9CiAKIC8qCiAg
KiBzcnRwX2NyZWF0ZV90ZXN0X3BhY2tldChsZW4sIHNzcmMpIHJldHVybnMgYSBwb2ludGVyIHRv
IGEKQEAgLTIyNSwzOSArMjI0LDM4IEBAIHRlc3RfZHRsc19zcnRwKHZvaWQpIHsKICAqIGRlYWxs
b2NhdGVkIHdpdGggdGhlIGZyZWUoKSBjYWxsIG9uY2UgaXQgaXMgbm8gbG9uZ2VyIG5lZWRlZC4K
ICAqLwogCi1zcnRwX2hkcl90ICoKLXNydHBfY3JlYXRlX3Rlc3RfcGFja2V0KGludCBwa3Rfb2N0
ZXRfbGVuLCB1aW50MzJfdCBzc3JjKSB7Ci0gIGludCBpOwotICB1aW50OF90ICpidWZmZXI7Ci0g
IHNydHBfaGRyX3QgKmhkcjsKLSAgaW50IGJ5dGVzX2luX2hkciA9IDEyOwotCi0gIC8qIGFsbG9j
YXRlIG1lbW9yeSBmb3IgdGVzdCBwYWNrZXQgKi8KLSAgaGRyID0gbWFsbG9jKHBrdF9vY3RldF9s
ZW4gKyBieXRlc19pbl9oZHIKLQkgICAgICAgKyBTUlRQX01BWF9UUkFJTEVSX0xFTiArIDQpOwot
ICBpZiAoIWhkcikKLSAgICByZXR1cm4gTlVMTDsKLSAgCi0gIGhkci0+dmVyc2lvbiA9IDI7ICAg
ICAgICAgICAgICAvKiBSVFAgdmVyc2lvbiB0d28gICAgICovCi0gIGhkci0+cCAgICA9IDA7ICAg
ICAgICAgICAgICAgICAvKiBubyBwYWRkaW5nIG5lZWRlZCAgICovCi0gIGhkci0+eCAgICA9IDA7
ICAgICAgICAgICAgICAgICAvKiBubyBoZWFkZXIgZXh0ZW5zaW9uICovCi0gIGhkci0+Y2MgICA9
IDA7ICAgICAgICAgICAgICAgICAvKiBubyBDU1JDcyAgICAgICAgICAgICovCi0gIGhkci0+bSAg
ICA9IDA7ICAgICAgICAgICAgICAgICAvKiBtYXJrZXIgYml0ICAgICAgICAgICovCi0gIGhkci0+
cHQgICA9IDB4ZjsgICAgICAgICAgICAgICAvKiBwYXlsb2FkIHR5cGUgICAgICAgICovCi0gIGhk
ci0+c2VxICA9IGh0b25zKDB4MTIzNCk7ICAgICAvKiBzZXF1ZW5jZSBudW1iZXIgICAgICovCi0g
IGhkci0+dHMgICA9IGh0b25sKDB4ZGVjYWZiYWQpOyAvKiB0aW1lc3RhbXAgICAgICAgICAgICov
Ci0gIGhkci0+c3NyYyA9IGh0b25sKHNzcmMpOyAgICAgICAvKiBzeW5jaC4gc291cmNlICAgICAg
ICovCi0KLSAgYnVmZmVyID0gKHVpbnQ4X3QgKiloZHI7Ci0gIGJ1ZmZlciArPSBieXRlc19pbl9o
ZHI7Ci0KLSAgLyogc2V0IFJUUCBkYXRhIHRvIDB4YWIgKi8KLSAgZm9yIChpPTA7IGkgPCBwa3Rf
b2N0ZXRfbGVuOyBpKyspCi0gICAgKmJ1ZmZlcisrID0gMHhhYjsKLQotICAvKiBzZXQgcG9zdC1k
YXRhIHZhbHVlIHRvIDB4ZmZmZiB0byBlbmFibGUgb3ZlcnJ1biBjaGVja2luZyAqLwotICBmb3Ig
KGk9MDsgaSA8IFNSVFBfTUFYX1RSQUlMRVJfTEVOKzQ7IGkrKykKLSAgICAqYnVmZmVyKysgPSAw
eGZmOwotCi0gIHJldHVybiBoZHI7CitzcnRwX2hkcl90ICpzcnRwX2NyZWF0ZV90ZXN0X3BhY2tl
dChpbnQgcGt0X29jdGV0X2xlbiwgdWludDMyX3Qgc3NyYykKK3sKKyAgICBpbnQgaTsKKyAgICB1
aW50OF90ICpidWZmZXI7CisgICAgc3J0cF9oZHJfdCAqaGRyOworICAgIGludCBieXRlc19pbl9o
ZHIgPSAxMjsKKworICAgIC8qIGFsbG9jYXRlIG1lbW9yeSBmb3IgdGVzdCBwYWNrZXQgKi8KKyAg
ICBoZHIgPSBtYWxsb2MocGt0X29jdGV0X2xlbiArIGJ5dGVzX2luX2hkciArIFNSVFBfTUFYX1RS
QUlMRVJfTEVOICsgNCk7CisgICAgaWYgKCFoZHIpCisgICAgICAgIHJldHVybiBOVUxMOworCisg
ICAgaGRyLT52ZXJzaW9uID0gMjsgICAgICAgICAgICAvKiBSVFAgdmVyc2lvbiB0d28gICAgICov
CisgICAgaGRyLT5wID0gMDsgICAgICAgICAgICAgICAgICAvKiBubyBwYWRkaW5nIG5lZWRlZCAg
ICovCisgICAgaGRyLT54ID0gMDsgICAgICAgICAgICAgICAgICAvKiBubyBoZWFkZXIgZXh0ZW5z
aW9uICovCisgICAgaGRyLT5jYyA9IDA7ICAgICAgICAgICAgICAgICAvKiBubyBDU1JDcyAgICAg
ICAgICAgICovCisgICAgaGRyLT5tID0gMDsgICAgICAgICAgICAgICAgICAvKiBtYXJrZXIgYml0
ICAgICAgICAgICovCisgICAgaGRyLT5wdCA9IDB4ZjsgICAgICAgICAgICAgICAvKiBwYXlsb2Fk
IHR5cGUgICAgICAgICovCisgICAgaGRyLT5zZXEgPSBodG9ucygweDEyMzQpOyAgICAvKiBzZXF1
ZW5jZSBudW1iZXIgICAgICovCisgICAgaGRyLT50cyA9IGh0b25sKDB4ZGVjYWZiYWQpOyAvKiB0
aW1lc3RhbXAgICAgICAgICAgICovCisgICAgaGRyLT5zc3JjID0gaHRvbmwoc3NyYyk7ICAgICAv
KiBzeW5jaC4gc291cmNlICAgICAgICovCisKKyAgICBidWZmZXIgPSAodWludDhfdCAqKWhkcjsK
KyAgICBidWZmZXIgKz0gYnl0ZXNfaW5faGRyOworCisgICAgLyogc2V0IFJUUCBkYXRhIHRvIDB4
YWIgKi8KKyAgICBmb3IgKGkgPSAwOyBpIDwgcGt0X29jdGV0X2xlbjsgaSsrKQorICAgICAgICAq
YnVmZmVyKysgPSAweGFiOworCisgICAgLyogc2V0IHBvc3QtZGF0YSB2YWx1ZSB0byAweGZmZmYg
dG8gZW5hYmxlIG92ZXJydW4gY2hlY2tpbmcgKi8KKyAgICBmb3IgKGkgPSAwOyBpIDwgU1JUUF9N
QVhfVFJBSUxFUl9MRU4gKyA0OyBpKyspCisgICAgICAgICpidWZmZXIrKyA9IDB4ZmY7CisKKyAg
ICByZXR1cm4gaGRyOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL3Rlc3QvZ2V0b3B0X3MuYyBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC90ZXN0L2dldG9wdF9z
LmMKaW5kZXggMzVlODg3MWY5ZjczNTAxNGFmMTViMjE2MWRkMDA3YjNmNTg4NWJhMy4uYWI2MzE4
NzhhNDA1MGExNTY3MjMwYzYwZTA4NmFjYzlhOTkxNTY3OCAxMDA2NDQKLS0tIGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL3Rlc3QvZ2V0b3B0
X3MuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L2xpYnNydHAvdGVzdC9nZXRvcHRfcy5jCkBAIC0zLDMwICszLDMwIEBACiAgKgogICogYSBtaW5p
bWFsIGltcGxlbWVudGF0aW9uIG9mIHRoZSBnZXRvcHQoKSBmdW5jdGlvbiwgd3JpdHRlbiBzbyB0
aGF0CiAgKiB0ZXN0IGFwcGxpY2F0aW9ucyB0aGF0IHVzZSB0aGF0IGZ1bmN0aW9uIGNhbiBydW4g
b24gbm9uLVBPU0lYCi0gKiBwbGF0Zm9ybXMgCisgKiBwbGF0Zm9ybXMKICAqCiAgKi8KIC8qCi0g
KgkKKyAqCiAgKiBDb3B5cmlnaHQgKGMpIDIwMDEtMjAxNyBDaXNjbyBTeXN0ZW1zLCBJbmMuCiAg
KiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICogCisgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMKICAqIGFyZSBtZXQ6Ci0gKiAKKyAqCiAgKiAgIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CiAgKiAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIAorICoK
ICAqICAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZQogICogICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZwogICogICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQKICAqICAgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgot
ICogCisgKgogICogICBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBDaXNjbyBTeXN0ZW1zLCBJbmMu
IG5vciB0aGUgbmFtZXMgb2YgaXRzCiAgKiAgIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBl
bmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZAogICogICBmcm9tIHRoaXMgc29mdHdh
cmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0gKiAKKyAqCiAg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQg
Q09OVFJJQlVUT1JTCiAgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAogICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKQEAgLTQyLDcxICs0Miw2NyBA
QAogICoKICAqLwogCi0jaW5jbHVkZSA8c3RkbGliLmg+ICAvKiBmb3IgTlVMTCAqLworI2luY2x1
ZGUgPHN0ZGxpYi5oPiAvKiBmb3IgTlVMTCAqLwogCiBpbnQgb3B0aW5kX3MgPSAwOwogCiBjaGFy
ICpvcHRhcmdfczsKIAotI2RlZmluZSBHRVRPUFRfRk9VTkRfV0lUSE9VVF9BUkdVTUVOVCAgICAy
Ci0jZGVmaW5lIEdFVE9QVF9GT1VORF9XSVRIX0FSR1VNRU5UICAgICAgIDEKLSNkZWZpbmUgR0VU
T1BUX05PVF9GT1VORCAgICAgICAgICAgICAgICAgMCAKKyNkZWZpbmUgR0VUT1BUX0ZPVU5EX1dJ
VEhPVVRfQVJHVU1FTlQgMgorI2RlZmluZSBHRVRPUFRfRk9VTkRfV0lUSF9BUkdVTUVOVCAxCisj
ZGVmaW5lIEdFVE9QVF9OT1RfRk9VTkQgMAogCi1zdGF0aWMgaW50IAotZ2V0b3B0X2NoZWNrX2No
YXJhY3RlcihjaGFyIGMsIGNvbnN0IGNoYXIgKnN0cmluZykgewotICB1bnNpZ25lZCBpbnQgbWF4
X3N0cmluZ19sZW4gPSAxMjg7CitzdGF0aWMgaW50IGdldG9wdF9jaGVja19jaGFyYWN0ZXIoY2hh
ciBjLCBjb25zdCBjaGFyICpzdHJpbmcpCit7CisgICAgdW5zaWduZWQgaW50IG1heF9zdHJpbmdf
bGVuID0gMTI4OwogCi0gIHdoaWxlICgqc3RyaW5nICE9IDApIHsKLSAgICBpZiAobWF4X3N0cmlu
Z19sZW4gPT0gMCkgewotICAgICAgcmV0dXJuICc/JzsKKyAgICB3aGlsZSAoKnN0cmluZyAhPSAw
KSB7CisgICAgICAgIGlmIChtYXhfc3RyaW5nX2xlbiA9PSAwKSB7CisgICAgICAgICAgICByZXR1
cm4gJz8nOworICAgICAgICB9CisgICAgICAgIGlmICgqc3RyaW5nKysgPT0gYykgeworICAgICAg
ICAgICAgaWYgKCpzdHJpbmcgPT0gJzonKSB7CisgICAgICAgICAgICAgICAgcmV0dXJuIEdFVE9Q
VF9GT1VORF9XSVRIX0FSR1VNRU5UOworICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAg
ICAgICByZXR1cm4gR0VUT1BUX0ZPVU5EX1dJVEhPVVRfQVJHVU1FTlQ7CisgICAgICAgICAgICB9
CisgICAgICAgIH0KICAgICB9Ci0gICAgaWYgKCpzdHJpbmcrKyA9PSBjKSB7Ci0gICAgICBpZiAo
KnN0cmluZyA9PSAnOicpIHsKLQlyZXR1cm4gR0VUT1BUX0ZPVU5EX1dJVEhfQVJHVU1FTlQ7Ci0g
ICAgICB9IGVsc2UgewotCXJldHVybiBHRVRPUFRfRk9VTkRfV0lUSE9VVF9BUkdVTUVOVDsKLSAg
ICAgIH0KLSAgICB9Ci0gIH0KLSAgcmV0dXJuIEdFVE9QVF9OT1RfRk9VTkQ7CisgICAgcmV0dXJu
IEdFVE9QVF9OT1RfRk9VTkQ7CiB9CiAKLWludAotZ2V0b3B0X3MoaW50IGFyZ2MsIAotICAgICAg
IGNoYXIgKiBjb25zdCBhcmd2W10sIAotICAgICAgIGNvbnN0IGNoYXIgKm9wdHN0cmluZykgewot
CitpbnQgZ2V0b3B0X3MoaW50IGFyZ2MsIGNoYXIgKmNvbnN0IGFyZ3ZbXSwgY29uc3QgY2hhciAq
b3B0c3RyaW5nKQoreworICAgIHdoaWxlIChvcHRpbmRfcyArIDEgPCBhcmdjKSB7CisgICAgICAg
IGNoYXIgKnN0cmluZzsKIAotICB3aGlsZSAob3B0aW5kX3MgKyAxIDwgYXJnYykgewotICAgIGNo
YXIgKnN0cmluZzsKLSAgICAKLSAgICAvKiBtb3ZlICdzdHJpbmcnIG9uIHRvIG5leHQgYXJndW1l
bnQgKi8KLSAgICBvcHRpbmRfcysrOwotICAgIHN0cmluZyA9IGFyZ3Zbb3B0aW5kX3NdOworICAg
ICAgICAvKiBtb3ZlICdzdHJpbmcnIG9uIHRvIG5leHQgYXJndW1lbnQgKi8KKyAgICAgICAgb3B0
aW5kX3MrKzsKKyAgICAgICAgc3RyaW5nID0gYXJndltvcHRpbmRfc107CiAKLSAgICBpZiAoc3Ry
aW5nID09IE5VTEwpCi0gICAgICByZXR1cm4gJz8nOyAvKiBOVUxMIGFyZ3VtZW50IHN0cmluZyAq
LworICAgICAgICBpZiAoc3RyaW5nID09IE5VTEwpCisgICAgICAgICAgICByZXR1cm4gJz8nOyAv
KiBOVUxMIGFyZ3VtZW50IHN0cmluZyAqLwogCi0gICAgaWYgKHN0cmluZ1swXSAhPSAnLScpCi0g
ICAgICByZXR1cm4gLTE7IC8qIGZvdW5kIGFuIHVuZXhwZWN0ZWQgY2hhcmFjdGVyICovCisgICAg
ICAgIGlmIChzdHJpbmdbMF0gIT0gJy0nKQorICAgICAgICAgICAgcmV0dXJuIC0xOyAvKiBmb3Vu
ZCBhbiB1bmV4cGVjdGVkIGNoYXJhY3RlciAqLwogCi0gICAgc3dpdGNoKGdldG9wdF9jaGVja19j
aGFyYWN0ZXIoc3RyaW5nWzFdLCBvcHRzdHJpbmcpKSB7Ci0gICAgY2FzZSBHRVRPUFRfRk9VTkRf
V0lUSF9BUkdVTUVOVDoKLSAgICAgIGlmIChvcHRpbmRfcyArIDEgPCBhcmdjKSB7Ci0Jb3B0aW5k
X3MrKzsKLQlvcHRhcmdfcyA9IGFyZ3Zbb3B0aW5kX3NdOwotCXJldHVybiBzdHJpbmdbMV07IAot
ICAgICAgfSBlbHNlIHsKLQlyZXR1cm4gJz8nOyAgLyogYXJndW1lbnQgbWlzc2luZyAqLwotICAg
ICAgfQotICAgIGNhc2UgR0VUT1BUX0ZPVU5EX1dJVEhPVVRfQVJHVU1FTlQ6Ci0gICAgICByZXR1
cm4gc3RyaW5nWzFdOwotICAgIGNhc2UgR0VUT1BUX05PVF9GT1VORDoKLSAgICBkZWZhdWx0Ogot
ICAgICAgcmV0dXJuICc/JzsgLyogZGlkbid0IGZpbmQgZXhwZWN0ZWQgY2hhcmFjdGVyICovCi0g
ICAgICBicmVhazsKKyAgICAgICAgc3dpdGNoIChnZXRvcHRfY2hlY2tfY2hhcmFjdGVyKHN0cmlu
Z1sxXSwgb3B0c3RyaW5nKSkgeworICAgICAgICBjYXNlIEdFVE9QVF9GT1VORF9XSVRIX0FSR1VN
RU5UOgorICAgICAgICAgICAgaWYgKG9wdGluZF9zICsgMSA8IGFyZ2MpIHsKKyAgICAgICAgICAg
ICAgICBvcHRpbmRfcysrOworICAgICAgICAgICAgICAgIG9wdGFyZ19zID0gYXJndltvcHRpbmRf
c107CisgICAgICAgICAgICAgICAgcmV0dXJuIHN0cmluZ1sxXTsKKyAgICAgICAgICAgIH0gZWxz
ZSB7CisgICAgICAgICAgICAgICAgcmV0dXJuICc/JzsgLyogYXJndW1lbnQgbWlzc2luZyAqLwor
ICAgICAgICAgICAgfQorICAgICAgICBjYXNlIEdFVE9QVF9GT1VORF9XSVRIT1VUX0FSR1VNRU5U
OgorICAgICAgICAgICAgcmV0dXJuIHN0cmluZ1sxXTsKKyAgICAgICAgY2FzZSBHRVRPUFRfTk9U
X0ZPVU5EOgorICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgcmV0dXJuICc/JzsgLyogZGlk
bid0IGZpbmQgZXhwZWN0ZWQgY2hhcmFjdGVyICovCisgICAgICAgICAgICBicmVhazsKKyAgICAg
ICAgfQogICAgIH0KLSAgfQogCi0gIHJldHVybiAtMTsKKyAgICByZXR1cm4gLTE7CiB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnNydHAvdGVzdC9yZGJ4X2RyaXZlci5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL3Rlc3QvcmRieF9kcml2ZXIuYwppbmRleCA4ZWNiZjlm
NDliZmJmODI4YTEyYWFiZWZjZTZmZDczZGExYTc4ZmMzLi42MDljZTljOGU0OGEyNzVjYzE5OWIz
YTFlOGRhYjRiODkwYTlhYjdkIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvdGVzdC9yZGJ4X2RyaXZlci5jCisrKyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC90ZXN0
L3JkYnhfZHJpdmVyLmMKQEAgLTYsMjggKzYsMjcgQEAKICAqIERhdmlkIEEuIE1jR3JldwogICog
Q2lzY28gU3lzdGVtcywgSW5jLgogICovCi0KIC8qCi0gKgkKKyAqCiAgKiBDb3B5cmlnaHQgKGMp
IDIwMDEtMjAxNywgQ2lzY28gU3lzdGVtcywgSW5jLgogICogQWxsIHJpZ2h0cyByZXNlcnZlZC4K
LSAqIAorICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkg
Zm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCiAgKiBhcmUgbWV0OgotICogCisg
KgogICogICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFi
b3ZlIGNvcHlyaWdodAogICogICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAKKyAqCiAgKiAgIFJlZGlzdHJpYnV0aW9ucyBp
biBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKICAqICAgY29weXJpZ2h0IG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKICAqICAgZGlz
Y2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3Zp
ZGVkCiAgKiAgIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqIAorICoKICAqICAgTmVpdGhlciB0
aGUgbmFtZSBvZiB0aGUgQ2lzY28gU3lzdGVtcywgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwog
ICogICBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1
Y3RzIGRlcml2ZWQKICAqICAgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJp
b3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotICogCisgKgogICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwogICogIkFTIElT
IiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QKICAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklM
SVRZIEFORCBGSVRORVNTCkBAIC00NCw3ICs0Myw3IEBACiAgKi8KIAogI2lmZGVmIEhBVkVfQ09O
RklHX0gKLSAgICAjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29uZmlnLmg+CiAjZW5k
aWYKIAogI2luY2x1ZGUgPHN0ZGlvLmg+ICAgIC8qIGZvciBwcmludGYoKSAgICAgICAgICAqLwpA
QCAtNTgsODkgKzU3LDg0IEBACiAKICNpbmNsdWRlICJ1dF9zaW0uaCIKIAotc3J0cF9lcnJfc3Rh
dHVzX3QgCi10ZXN0X3JlcGxheV9kYngoaW50IG51bV90cmlhbHMsIHVuc2lnbmVkIGxvbmcgd3Mp
Oworc3J0cF9lcnJfc3RhdHVzX3QgdGVzdF9yZXBsYXlfZGJ4KGludCBudW1fdHJpYWxzLCB1bnNp
Z25lZCBsb25nIHdzKTsKIAotZG91YmxlCi1yZGJ4X2NoZWNrX2FkZHNfcGVyX3NlY29uZChpbnQg
bnVtX3RyaWFscywgdW5zaWduZWQgbG9uZyB3cyk7Citkb3VibGUgcmRieF9jaGVja19hZGRzX3Bl
cl9zZWNvbmQoaW50IG51bV90cmlhbHMsIHVuc2lnbmVkIGxvbmcgd3MpOwogCi12b2lkCi11c2Fn
ZShjaGFyICpwcm9nX25hbWUpIHsKLSAgcHJpbnRmKCJ1c2FnZTogJXMgWyAtdCB8IC12IF1cbiIs
IHByb2dfbmFtZSk7Ci0gIGV4aXQoMjU1KTsKK3ZvaWQgdXNhZ2UoY2hhciAqcHJvZ19uYW1lKQor
eworICAgIHByaW50ZigidXNhZ2U6ICVzIFsgLXQgfCAtdiBdXG4iLCBwcm9nX25hbWUpOworICAg
IGV4aXQoMjU1KTsKIH0KIAotaW50Ci1tYWluIChpbnQgYXJnYywgY2hhciAqYXJndltdKSB7Ci0g
IGRvdWJsZSByYXRlOwotICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7Ci0gIGludCBxOwotICB1
bnNpZ25lZCBkb190aW1pbmdfdGVzdCA9IDA7Ci0gIHVuc2lnbmVkIGRvX3ZhbGlkYXRpb24gPSAw
OwotCi0gIC8qIHByb2Nlc3MgaW5wdXQgYXJndW1lbnRzICovCi0gIHdoaWxlICgxKSB7Ci0gICAg
cSA9IGdldG9wdF9zKGFyZ2MsIGFyZ3YsICJ0diIpOwotICAgIGlmIChxID09IC0xKSAKLSAgICAg
IGJyZWFrOwotICAgIHN3aXRjaCAocSkgewotICAgIGNhc2UgJ3QnOgotICAgICAgZG9fdGltaW5n
X3Rlc3QgPSAxOwotICAgICAgYnJlYWs7Ci0gICAgY2FzZSAndic6Ci0gICAgICBkb192YWxpZGF0
aW9uID0gMTsKLSAgICAgIGJyZWFrOwotICAgIGRlZmF1bHQ6Ci0gICAgICB1c2FnZShhcmd2WzBd
KTsKLSAgICB9ICAgIAotICB9Ci0KLSAgcHJpbnRmKCJyZGJ4IChyZXBsYXkgZGF0YWJhc2Ugdy8g
ZXh0ZW5kZWQgcmFuZ2UpIHRlc3QgZHJpdmVyXG4iCi0JICJEYXZpZCBBLiBNY0dyZXdcbiIKLQkg
IkNpc2NvIFN5c3RlbXMsIEluYy5cbiIpOwotCi0gIGlmICghZG9fdmFsaWRhdGlvbiAmJiAhZG9f
dGltaW5nX3Rlc3QpCi0gICAgdXNhZ2UoYXJndlswXSk7Ci0KLSAgaWYgKGRvX3ZhbGlkYXRpb24p
IHsKLSAgICBwcmludGYoInRlc3Rpbmcgc3J0cF9yZGJ4X3QgKHdzPTEyOCkuLi5cbiIpOwotCi0g
ICAgc3RhdHVzID0gdGVzdF9yZXBsYXlfZGJ4KDEgPDwgMTIsIDEyOCk7Ci0gICAgaWYgKHN0YXR1
cykgewotICAgICAgcHJpbnRmKCJmYWlsZWRcbiIpOwotICAgICAgZXhpdCgxKTsKK2ludCBtYWlu
KGludCBhcmdjLCBjaGFyICphcmd2W10pCit7CisgICAgZG91YmxlIHJhdGU7CisgICAgc3J0cF9l
cnJfc3RhdHVzX3Qgc3RhdHVzOworICAgIGludCBxOworICAgIHVuc2lnbmVkIGRvX3RpbWluZ190
ZXN0ID0gMDsKKyAgICB1bnNpZ25lZCBkb192YWxpZGF0aW9uID0gMDsKKworICAgIC8qIHByb2Nl
c3MgaW5wdXQgYXJndW1lbnRzICovCisgICAgd2hpbGUgKDEpIHsKKyAgICAgICAgcSA9IGdldG9w
dF9zKGFyZ2MsIGFyZ3YsICJ0diIpOworICAgICAgICBpZiAocSA9PSAtMSkKKyAgICAgICAgICAg
IGJyZWFrOworICAgICAgICBzd2l0Y2ggKHEpIHsKKyAgICAgICAgY2FzZSAndCc6CisgICAgICAg
ICAgICBkb190aW1pbmdfdGVzdCA9IDE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2Fz
ZSAndic6CisgICAgICAgICAgICBkb192YWxpZGF0aW9uID0gMTsKKyAgICAgICAgICAgIGJyZWFr
OworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgdXNhZ2UoYXJndlswXSk7CisgICAgICAg
IH0KICAgICB9Ci0gICAgcHJpbnRmKCJwYXNzZWRcbiIpOwogCi0gICAgcHJpbnRmKCJ0ZXN0aW5n
IHNydHBfcmRieF90ICh3cz0xMDI0KS4uLlxuIik7CisgICAgcHJpbnRmKCJyZGJ4IChyZXBsYXkg
ZGF0YWJhc2Ugdy8gZXh0ZW5kZWQgcmFuZ2UpIHRlc3QgZHJpdmVyXG4iCisgICAgICAgICAgICJE
YXZpZCBBLiBNY0dyZXdcbiIKKyAgICAgICAgICAgIkNpc2NvIFN5c3RlbXMsIEluYy5cbiIpOwog
Ci0gICAgc3RhdHVzID0gdGVzdF9yZXBsYXlfZGJ4KDEgPDwgMTIsIDEwMjQpOwotICAgIGlmIChz
dGF0dXMpIHsKLSAgICAgIHByaW50ZigiZmFpbGVkXG4iKTsKLSAgICAgIGV4aXQoMSk7CisgICAg
aWYgKCFkb192YWxpZGF0aW9uICYmICFkb190aW1pbmdfdGVzdCkKKyAgICAgICAgdXNhZ2UoYXJn
dlswXSk7CisKKyAgICBpZiAoZG9fdmFsaWRhdGlvbikgeworICAgICAgICBwcmludGYoInRlc3Rp
bmcgc3J0cF9yZGJ4X3QgKHdzPTEyOCkuLi5cbiIpOworCisgICAgICAgIHN0YXR1cyA9IHRlc3Rf
cmVwbGF5X2RieCgxIDw8IDEyLCAxMjgpOworICAgICAgICBpZiAoc3RhdHVzKSB7CisgICAgICAg
ICAgICBwcmludGYoImZhaWxlZFxuIik7CisgICAgICAgICAgICBleGl0KDEpOworICAgICAgICB9
CisgICAgICAgIHByaW50ZigicGFzc2VkXG4iKTsKKworICAgICAgICBwcmludGYoInRlc3Rpbmcg
c3J0cF9yZGJ4X3QgKHdzPTEwMjQpLi4uXG4iKTsKKworICAgICAgICBzdGF0dXMgPSB0ZXN0X3Jl
cGxheV9kYngoMSA8PCAxMiwgMTAyNCk7CisgICAgICAgIGlmIChzdGF0dXMpIHsKKyAgICAgICAg
ICAgIHByaW50ZigiZmFpbGVkXG4iKTsKKyAgICAgICAgICAgIGV4aXQoMSk7CisgICAgICAgIH0K
KyAgICAgICAgcHJpbnRmKCJwYXNzZWRcbiIpOwogICAgIH0KLSAgICBwcmludGYoInBhc3NlZFxu
Iik7Ci0gIH0KLQotICBpZiAoZG9fdGltaW5nX3Rlc3QpIHsKLSAgICByYXRlID0gcmRieF9jaGVj
a19hZGRzX3Blcl9zZWNvbmQoMSA8PCAxOCwgMTI4KTsKLSAgICBwcmludGYoInJkYnhfY2hlY2sv
cmVwbGF5X2FkZHMgcGVyIHNlY29uZCAod3M9MTI4KTogJWVcbiIsIHJhdGUpOwotICAgIHJhdGUg
PSByZGJ4X2NoZWNrX2FkZHNfcGVyX3NlY29uZCgxIDw8IDE4LCAxMDI0KTsKLSAgICBwcmludGYo
InJkYnhfY2hlY2svcmVwbGF5X2FkZHMgcGVyIHNlY29uZCAod3M9MTAyNCk6ICVlXG4iLCByYXRl
KTsKLSAgfQotICAKLSAgcmV0dXJuIDA7Ci19CiAKLXZvaWQKLXByaW50X3JkYngoc3J0cF9yZGJ4
X3QgKnJkYngpIHsKLSAgY2hhciBidWZbMjA0OF07Ci0gIHByaW50ZigicmRieDogeyVsbHUsICVz
fVxuIiwKLQkgKHVuc2lnbmVkIGxvbmcgbG9uZykocmRieC0+aW5kZXgpLAotCSBiaXR2ZWN0b3Jf
Yml0X3N0cmluZygmcmRieC0+Yml0bWFzaywgYnVmLCBzaXplb2YoYnVmKSkKLSk7CisgICAgaWYg
KGRvX3RpbWluZ190ZXN0KSB7CisgICAgICAgIHJhdGUgPSByZGJ4X2NoZWNrX2FkZHNfcGVyX3Nl
Y29uZCgxIDw8IDE4LCAxMjgpOworICAgICAgICBwcmludGYoInJkYnhfY2hlY2svcmVwbGF5X2Fk
ZHMgcGVyIHNlY29uZCAod3M9MTI4KTogJWVcbiIsIHJhdGUpOworICAgICAgICByYXRlID0gcmRi
eF9jaGVja19hZGRzX3Blcl9zZWNvbmQoMSA8PCAxOCwgMTAyNCk7CisgICAgICAgIHByaW50Zigi
cmRieF9jaGVjay9yZXBsYXlfYWRkcyBwZXIgc2Vjb25kICh3cz0xMDI0KTogJWVcbiIsIHJhdGUp
OworICAgIH0KKworICAgIHJldHVybiAwOwogfQogCit2b2lkIHByaW50X3JkYngoc3J0cF9yZGJ4
X3QgKnJkYngpCit7CisgICAgY2hhciBidWZbMjA0OF07CisgICAgcHJpbnRmKCJyZGJ4OiB7JWxs
dSwgJXN9XG4iLCAodW5zaWduZWQgbG9uZyBsb25nKShyZGJ4LT5pbmRleCksCisgICAgICAgICAg
IGJpdHZlY3Rvcl9iaXRfc3RyaW5nKCZyZGJ4LT5iaXRtYXNrLCBidWYsIHNpemVvZihidWYpKSk7
Cit9CiAKIC8qCiAgKiByZGJ4X2NoZWNrX2FkZChyZGJ4LCBpZHgpIGNoZWNrcyBhIGtub3duLXRv
LWJlLWdvb2QgaWR4IGFnYWluc3QKQEAgLTE1MCwyMTcgKzE0NCwyMTQgQEAgcHJpbnRfcmRieChz
cnRwX3JkYnhfdCAqcmRieCkgewogICoKICAqLwogCi1zcnRwX2Vycl9zdGF0dXNfdAotcmRieF9j
aGVja19hZGQoc3J0cF9yZGJ4X3QgKnJkYngsIHVpbnQzMl90IGlkeCkgewotICBpbnQgZGVsdGE7
Ci0gIHNydHBfeHRkX3NlcV9udW1fdCBlc3Q7Ci0gIAotICBkZWx0YSA9IHNydHBfaW5kZXhfZ3Vl
c3MoJnJkYngtPmluZGV4LCAmZXN0LCBpZHgpOwotICAKLSAgaWYgKHNydHBfcmRieF9jaGVjayhy
ZGJ4LCBkZWx0YSkgIT0gc3J0cF9lcnJfc3RhdHVzX29rKSB7Ci0gICAgcHJpbnRmKCJyZXBsYXlf
Y2hlY2sgZmFpbGVkIGF0IGluZGV4ICV1XG4iLCBpZHgpOwotICAgIHJldHVybiBzcnRwX2Vycl9z
dGF0dXNfYWxnb19mYWlsOwotICB9Ci0KLSAgLyoKLSAgICogaW4gcHJhY3RpY2UsIHdlJ2QgYXV0
aGVudGljYXRlIHRoZSBwYWNrZXQgY29udGFpbmluZyBpZHgsIHVzaW5nCi0gICAqIHRoZSBlc3Rp
bWF0ZWQgdmFsdWUgZXN0LCBhdCB0aGlzIHBvaW50Ci0gICAqLwotICAKLSAgaWYgKHNydHBfcmRi
eF9hZGRfaW5kZXgocmRieCwgZGVsdGEpICE9IHNydHBfZXJyX3N0YXR1c19vaykgewotICAgIHBy
aW50ZigicmRieF9hZGRfaW5kZXggZmFpbGVkIGF0IGluZGV4ICV1XG4iLCBpZHgpOwotICAgIHJl
dHVybiBzcnRwX2Vycl9zdGF0dXNfYWxnb19mYWlsOwotICB9ICAKLQotICByZXR1cm4gc3J0cF9l
cnJfc3RhdHVzX29rOworc3J0cF9lcnJfc3RhdHVzX3QgcmRieF9jaGVja19hZGQoc3J0cF9yZGJ4
X3QgKnJkYngsIHVpbnQzMl90IGlkeCkKK3sKKyAgICBpbnQgZGVsdGE7CisgICAgc3J0cF94dGRf
c2VxX251bV90IGVzdDsKKworICAgIGRlbHRhID0gc3J0cF9pbmRleF9ndWVzcygmcmRieC0+aW5k
ZXgsICZlc3QsIGlkeCk7CisKKyAgICBpZiAoc3J0cF9yZGJ4X2NoZWNrKHJkYngsIGRlbHRhKSAh
PSBzcnRwX2Vycl9zdGF0dXNfb2spIHsKKyAgICAgICAgcHJpbnRmKCJyZXBsYXlfY2hlY2sgZmFp
bGVkIGF0IGluZGV4ICV1XG4iLCBpZHgpOworICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVz
X2FsZ29fZmFpbDsKKyAgICB9CisKKyAgICAvKgorICAgICAqIGluIHByYWN0aWNlLCB3ZSdkIGF1
dGhlbnRpY2F0ZSB0aGUgcGFja2V0IGNvbnRhaW5pbmcgaWR4LCB1c2luZworICAgICAqIHRoZSBl
c3RpbWF0ZWQgdmFsdWUgZXN0LCBhdCB0aGlzIHBvaW50CisgICAgICovCisKKyAgICBpZiAoc3J0
cF9yZGJ4X2FkZF9pbmRleChyZGJ4LCBkZWx0YSkgIT0gc3J0cF9lcnJfc3RhdHVzX29rKSB7Cisg
ICAgICAgIHByaW50ZigicmRieF9hZGRfaW5kZXggZmFpbGVkIGF0IGluZGV4ICV1XG4iLCBpZHgp
OworICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2FsZ29fZmFpbDsKKyAgICB9CisKKyAg
ICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQogCiAvKgogICogcmRieF9jaGVja19leHBl
Y3RfZmFpbHVyZShzcnRwX3JkYnhfdCAqcmRieCwgdWludDMyX3QgaWR4KQotICogCisgKgogICog
Y2hlY2tzIHRoYXQgYSBzZXF1ZW5jZSBudW1iZXIgaWR4IGlzIGluIHRoZSByZXBsYXkgZGF0YWJh
c2UKICAqIGFuZCB0aHVzIHdpbGwgYmUgcmVqZWN0ZWQKICAqLwogCi1zcnRwX2Vycl9zdGF0dXNf
dAotcmRieF9jaGVja19leHBlY3RfZmFpbHVyZShzcnRwX3JkYnhfdCAqcmRieCwgdWludDMyX3Qg
aWR4KSB7Ci0gIGludCBkZWx0YTsKLSAgc3J0cF94dGRfc2VxX251bV90IGVzdDsKLSAgc3J0cF9l
cnJfc3RhdHVzX3Qgc3RhdHVzOworc3J0cF9lcnJfc3RhdHVzX3QgcmRieF9jaGVja19leHBlY3Rf
ZmFpbHVyZShzcnRwX3JkYnhfdCAqcmRieCwgdWludDMyX3QgaWR4KQoreworICAgIGludCBkZWx0
YTsKKyAgICBzcnRwX3h0ZF9zZXFfbnVtX3QgZXN0OworICAgIHNydHBfZXJyX3N0YXR1c190IHN0
YXR1czsKIAotICBkZWx0YSA9IHNydHBfaW5kZXhfZ3Vlc3MoJnJkYngtPmluZGV4LCAmZXN0LCBp
ZHgpOworICAgIGRlbHRhID0gc3J0cF9pbmRleF9ndWVzcygmcmRieC0+aW5kZXgsICZlc3QsIGlk
eCk7CiAKLSAgc3RhdHVzID0gc3J0cF9yZGJ4X2NoZWNrKHJkYngsIGRlbHRhKTsKLSAgaWYgKHN0
YXR1cyA9PSBzcnRwX2Vycl9zdGF0dXNfb2spIHsKLSAgICBwcmludGYoImRlbHRhOiAlZCAiLCBk
ZWx0YSk7Ci0gICAgcHJpbnRmKCJyZXBsYXlfY2hlY2sgZmFpbGVkIGF0IGluZGV4ICV1IChmYWxz
ZSBwb3NpdGl2ZSlcbiIsIGlkeCk7Ci0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19hbGdvX2Zh
aWw7IAotICB9CisgICAgc3RhdHVzID0gc3J0cF9yZGJ4X2NoZWNrKHJkYngsIGRlbHRhKTsKKyAg
ICBpZiAoc3RhdHVzID09IHNydHBfZXJyX3N0YXR1c19vaykgeworICAgICAgICBwcmludGYoImRl
bHRhOiAlZCAiLCBkZWx0YSk7CisgICAgICAgIHByaW50ZigicmVwbGF5X2NoZWNrIGZhaWxlZCBh
dCBpbmRleCAldSAoZmFsc2UgcG9zaXRpdmUpXG4iLCBpZHgpOworICAgICAgICByZXR1cm4gc3J0
cF9lcnJfc3RhdHVzX2FsZ29fZmFpbDsKKyAgICB9CiAKLSAgcmV0dXJuIHNydHBfZXJyX3N0YXR1
c19vazsKKyAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQogCi1zcnRwX2Vycl9zdGF0
dXNfdAotcmRieF9jaGVja19hZGRfdW5vcmRlcmVkKHNydHBfcmRieF90ICpyZGJ4LCB1aW50MzJf
dCBpZHgpIHsKLSAgaW50IGRlbHRhOwotICBzcnRwX3h0ZF9zZXFfbnVtX3QgZXN0OwotICBzcnRw
X2Vycl9zdGF0dXNfdCByc3RhdDsKLQotICBkZWx0YSA9IHNydHBfaW5kZXhfZ3Vlc3MoJnJkYngt
PmluZGV4LCAmZXN0LCBpZHgpOwotCi0gIHJzdGF0ID0gc3J0cF9yZGJ4X2NoZWNrKHJkYngsIGRl
bHRhKTsKLSAgaWYgKChyc3RhdCAhPSBzcnRwX2Vycl9zdGF0dXNfb2spICYmIChyc3RhdCAhPSBz
cnRwX2Vycl9zdGF0dXNfcmVwbGF5X29sZCkpIHsKLSAgICBwcmludGYoInJlcGxheV9jaGVja19h
ZGRfdW5vcmRlcmVkIGZhaWxlZCBhdCBpbmRleCAldVxuIiwgaWR4KTsKLSAgICByZXR1cm4gc3J0
cF9lcnJfc3RhdHVzX2FsZ29fZmFpbDsKLSAgfQotICBpZiAocnN0YXQgPT0gc3J0cF9lcnJfc3Rh
dHVzX3JlcGxheV9vbGQpIHsKLQlyZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwotICB9Ci0gIGlm
IChzcnRwX3JkYnhfYWRkX2luZGV4KHJkYngsIGRlbHRhKSAhPSBzcnRwX2Vycl9zdGF0dXNfb2sp
IHsKLSAgICBwcmludGYoInJkYnhfYWRkX2luZGV4IGZhaWxlZCBhdCBpbmRleCAldVxuIiwgaWR4
KTsKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2FsZ29fZmFpbDsKLSAgfSAgCi0KLSAgcmV0
dXJuIHNydHBfZXJyX3N0YXR1c19vazsKLX0KK3NydHBfZXJyX3N0YXR1c190IHJkYnhfY2hlY2tf
YWRkX3Vub3JkZXJlZChzcnRwX3JkYnhfdCAqcmRieCwgdWludDMyX3QgaWR4KQoreworICAgIGlu
dCBkZWx0YTsKKyAgICBzcnRwX3h0ZF9zZXFfbnVtX3QgZXN0OworICAgIHNydHBfZXJyX3N0YXR1
c190IHJzdGF0OworCisgICAgZGVsdGEgPSBzcnRwX2luZGV4X2d1ZXNzKCZyZGJ4LT5pbmRleCwg
JmVzdCwgaWR4KTsKKworICAgIHJzdGF0ID0gc3J0cF9yZGJ4X2NoZWNrKHJkYngsIGRlbHRhKTsK
KyAgICBpZiAoKHJzdGF0ICE9IHNydHBfZXJyX3N0YXR1c19vaykgJiYKKyAgICAgICAgKHJzdGF0
ICE9IHNydHBfZXJyX3N0YXR1c19yZXBsYXlfb2xkKSkgeworICAgICAgICBwcmludGYoInJlcGxh
eV9jaGVja19hZGRfdW5vcmRlcmVkIGZhaWxlZCBhdCBpbmRleCAldVxuIiwgaWR4KTsKKyAgICAg
ICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19hbGdvX2ZhaWw7CisgICAgfQorICAgIGlmIChyc3Rh
dCA9PSBzcnRwX2Vycl9zdGF0dXNfcmVwbGF5X29sZCkgeworICAgICAgICByZXR1cm4gc3J0cF9l
cnJfc3RhdHVzX29rOworICAgIH0KKyAgICBpZiAoc3J0cF9yZGJ4X2FkZF9pbmRleChyZGJ4LCBk
ZWx0YSkgIT0gc3J0cF9lcnJfc3RhdHVzX29rKSB7CisgICAgICAgIHByaW50ZigicmRieF9hZGRf
aW5kZXggZmFpbGVkIGF0IGluZGV4ICV1XG4iLCBpZHgpOworICAgICAgICByZXR1cm4gc3J0cF9l
cnJfc3RhdHVzX2FsZ29fZmFpbDsKKyAgICB9CiAKLXNydHBfZXJyX3N0YXR1c190Ci10ZXN0X3Jl
cGxheV9kYngoaW50IG51bV90cmlhbHMsIHVuc2lnbmVkIGxvbmcgd3MpIHsKLSAgc3J0cF9yZGJ4
X3QgcmRieDsKLSAgdWludDMyX3QgaWR4LCBpcmN2ZDsKLSAgdXRfY29ubmVjdGlvbiB1dGM7Ci0g
IHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKLSAgaW50IG51bV9mcF90cmlhbHM7Ci0KLSAgc3Rh
dHVzID0gc3J0cF9yZGJ4X2luaXQoJnJkYngsIHdzKTsKLSAgaWYgKHN0YXR1cykgewotICAgIHBy
aW50ZigicmVwbGF5X2luaXQgZmFpbGVkIHdpdGggZXJyb3IgY29kZSAlZFxuIiwgc3RhdHVzKTsK
LSAgICBleGl0KDEpOwotICB9Ci0KLSAgLyoKLSAgICogIHRlc3Qgc2VxdWVudGlhbCBpbnNlcnRp
b24gCi0gICAqLwotICBwcmludGYoIlx0dGVzdGluZyBzZXF1ZW50aWFsIGluc2VydGlvbi4uLiIp
OwotICBmb3IgKGlkeD0wOyAoaW50KSBpZHggPCBudW1fdHJpYWxzOyBpZHgrKykgewotICAgIHN0
YXR1cyA9IHJkYnhfY2hlY2tfYWRkKCZyZGJ4LCBpZHgpOwotICAgIGlmIChzdGF0dXMpCi0gICAg
ICByZXR1cm4gc3RhdHVzOwotICB9Ci0gIHByaW50ZigicGFzc2VkXG4iKTsKLQotICAvKgotICAg
KiAgdGVzdCBmb3IgZmFsc2UgcG9zaXRpdmVzIGJ5IGNoZWNraW5nIGFsbCBvZiB0aGUgaW5kZXgK
LSAgICogIHZhbHVlcyB3aGljaCB3ZSd2ZSBqdXN0IGFkZGVkCi0gICAqCi0gICAqIG5vdGUgdGhh
dCB3ZSBsaW1pdCB0aGUgbnVtYmVyIG9mIHRyaWFscyBoZXJlLCBzaW5jZSBhbGxvd2luZyB0aGUK
LSAgICogcm9sbG92ZXIgY291bnRlciB0byByb2xsIG92ZXIgd291bGQgZGVmZWF0IHRoaXMgdGVz
dAotICAgKi8KLSAgbnVtX2ZwX3RyaWFscyA9IG51bV90cmlhbHMgJSAweDEwMDAwOwotICBpZiAo
bnVtX2ZwX3RyaWFscyA9PSAwKSB7Ci0gICAgcHJpbnRmKCJ3YXJuaW5nOiBubyBmYWxzZSBwb3Np
dGl2ZSB0ZXN0cyBwZXJmb3JtZWRcbiIpOwotICB9Ci0gIHByaW50ZigiXHR0ZXN0aW5nIGZvciBm
YWxzZSBwb3NpdGl2ZXMuLi4iKTsKLSAgZm9yIChpZHg9MDsgKGludCkgaWR4IDwgbnVtX2ZwX3Ry
aWFsczsgaWR4KyspIHsKLSAgICBzdGF0dXMgPSByZGJ4X2NoZWNrX2V4cGVjdF9mYWlsdXJlKCZy
ZGJ4LCBpZHgpOwotICAgIGlmIChzdGF0dXMpCi0gICAgICByZXR1cm4gc3RhdHVzOwotICB9Ci0g
IHByaW50ZigicGFzc2VkXG4iKTsKLQotICAvKiByZS1pbml0aWFsaXplICovCi0gIHNydHBfcmRi
eF9kZWFsbG9jKCZyZGJ4KTsKLQotICBpZiAoc3J0cF9yZGJ4X2luaXQoJnJkYngsIHdzKSAhPSBz
cnRwX2Vycl9zdGF0dXNfb2spIHsKLSAgICBwcmludGYoInJlcGxheV9pbml0IGZhaWxlZFxuIik7
Ci0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19pbml0X2ZhaWw7Ci0gIH0KLQotICAvKgotICAg
KiB0ZXN0IG5vbi1zZXF1ZW50aWFsIGluc2VydGlvbiAKLSAgICoKLSAgICogdGhpcyB0ZXN0IGNv
dmVycyBvbmx5IGZhc2UgbmVnYXRpdmVzLCBzaW5jZSB0aGUgdmFsdWVzIHJldHVybmVkCi0gICAq
IGJ5IHV0X25leHRfaW5kZXgoLi4uKSBhcmUgZGlzdGluY3QKLSAgICovCi0gIHV0X2luaXQoJnV0
Yyk7Ci0KLSAgcHJpbnRmKCJcdHRlc3Rpbmcgbm9uLXNlcXVlbnRpYWwgaW5zZXJ0aW9uLi4uIik7
ICAKLSAgZm9yIChpZHg9MDsgKGludCkgaWR4IDwgbnVtX3RyaWFsczsgaWR4KyspIHsKLSAgICBp
cmN2ZCA9IHV0X25leHRfaW5kZXgoJnV0Yyk7Ci0gICAgc3RhdHVzID0gcmRieF9jaGVja19hZGRf
dW5vcmRlcmVkKCZyZGJ4LCBpcmN2ZCk7Ci0gICAgaWYgKHN0YXR1cykKLSAgICAgIHJldHVybiBz
dGF0dXM7Ci0Jc3RhdHVzID0gcmRieF9jaGVja19leHBlY3RfZmFpbHVyZSgmcmRieCwgaXJjdmQp
OwotCWlmIChzdGF0dXMpCi0JCXJldHVybiBzdGF0dXM7Ci0gIH0KLSAgcHJpbnRmKCJwYXNzZWRc
biIpOwotCi0gIC8qIHJlLWluaXRpYWxpemUgKi8KLSAgc3J0cF9yZGJ4X2RlYWxsb2MoJnJkYngp
OwotCi0gIGlmIChzcnRwX3JkYnhfaW5pdCgmcmRieCwgd3MpICE9IHNydHBfZXJyX3N0YXR1c19v
aykgewotICAgIHByaW50ZigicmVwbGF5X2luaXQgZmFpbGVkXG4iKTsKLSAgICByZXR1cm4gc3J0
cF9lcnJfc3RhdHVzX2luaXRfZmFpbDsKLSAgfQotCi0gIC8qCi0gICAqIHRlc3QgaW5zZXJ0aW9u
IHdpdGggbGFyZ2UgZ2Fwcy4KLSAgICogY2hlY2sgZm9yIGZhbHNlIHBvc2l0aXZlcyBmb3IgZWFj
aCBpbnNlcnRpb24uCi0gICAqLwotICBwcmludGYoIlx0dGVzdGluZyBpbnNlcnRpb24gd2l0aCBs
YXJnZSBnYXBzLi4uIik7ICAKLSAgZm9yIChpZHg9MCwgaXJjdmQ9MDsgKGludCkgaWR4IDwgbnVt
X3RyaWFsczsgaWR4KyssIGlyY3ZkICs9ICgxIDw8IChyYW5kKCkgJSAxMikpKSB7Ci0gICAgc3Rh
dHVzID0gcmRieF9jaGVja19hZGQoJnJkYngsIGlyY3ZkKTsKLSAgICBpZiAoc3RhdHVzKQotICAg
ICAgcmV0dXJuIHN0YXR1czsKLSAgICBzdGF0dXMgPSByZGJ4X2NoZWNrX2V4cGVjdF9mYWlsdXJl
KCZyZGJ4LCBpcmN2ZCk7Ci0gICAgaWYgKHN0YXR1cykKLSAgICAgIHJldHVybiBzdGF0dXM7Ci0g
IH0KLSAgcHJpbnRmKCJwYXNzZWRcbiIpOwotCi0gIHNydHBfcmRieF9kZWFsbG9jKCZyZGJ4KTsK
LQotICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOworICAgIHJldHVybiBzcnRwX2Vycl9zdGF0
dXNfb2s7CiB9CiAKK3NydHBfZXJyX3N0YXR1c190IHRlc3RfcmVwbGF5X2RieChpbnQgbnVtX3Ry
aWFscywgdW5zaWduZWQgbG9uZyB3cykKK3sKKyAgICBzcnRwX3JkYnhfdCByZGJ4OworICAgIHVp
bnQzMl90IGlkeCwgaXJjdmQ7CisgICAgdXRfY29ubmVjdGlvbiB1dGM7CisgICAgc3J0cF9lcnJf
c3RhdHVzX3Qgc3RhdHVzOworICAgIGludCBudW1fZnBfdHJpYWxzOworCisgICAgc3RhdHVzID0g
c3J0cF9yZGJ4X2luaXQoJnJkYngsIHdzKTsKKyAgICBpZiAoc3RhdHVzKSB7CisgICAgICAgIHBy
aW50ZigicmVwbGF5X2luaXQgZmFpbGVkIHdpdGggZXJyb3IgY29kZSAlZFxuIiwgc3RhdHVzKTsK
KyAgICAgICAgZXhpdCgxKTsKKyAgICB9CisKKyAgICAvKgorICAgICAqICB0ZXN0IHNlcXVlbnRp
YWwgaW5zZXJ0aW9uCisgICAgICovCisgICAgcHJpbnRmKCJcdHRlc3Rpbmcgc2VxdWVudGlhbCBp
bnNlcnRpb24uLi4iKTsKKyAgICBmb3IgKGlkeCA9IDA7IChpbnQpaWR4IDwgbnVtX3RyaWFsczsg
aWR4KyspIHsKKyAgICAgICAgc3RhdHVzID0gcmRieF9jaGVja19hZGQoJnJkYngsIGlkeCk7Cisg
ICAgICAgIGlmIChzdGF0dXMpCisgICAgICAgICAgICByZXR1cm4gc3RhdHVzOworICAgIH0KKyAg
ICBwcmludGYoInBhc3NlZFxuIik7CisKKyAgICAvKgorICAgICAqICB0ZXN0IGZvciBmYWxzZSBw
b3NpdGl2ZXMgYnkgY2hlY2tpbmcgYWxsIG9mIHRoZSBpbmRleAorICAgICAqICB2YWx1ZXMgd2hp
Y2ggd2UndmUganVzdCBhZGRlZAorICAgICAqCisgICAgICogbm90ZSB0aGF0IHdlIGxpbWl0IHRo
ZSBudW1iZXIgb2YgdHJpYWxzIGhlcmUsIHNpbmNlIGFsbG93aW5nIHRoZQorICAgICAqIHJvbGxv
dmVyIGNvdW50ZXIgdG8gcm9sbCBvdmVyIHdvdWxkIGRlZmVhdCB0aGlzIHRlc3QKKyAgICAgKi8K
KyAgICBudW1fZnBfdHJpYWxzID0gbnVtX3RyaWFscyAlIDB4MTAwMDA7CisgICAgaWYgKG51bV9m
cF90cmlhbHMgPT0gMCkgeworICAgICAgICBwcmludGYoIndhcm5pbmc6IG5vIGZhbHNlIHBvc2l0
aXZlIHRlc3RzIHBlcmZvcm1lZFxuIik7CisgICAgfQorICAgIHByaW50ZigiXHR0ZXN0aW5nIGZv
ciBmYWxzZSBwb3NpdGl2ZXMuLi4iKTsKKyAgICBmb3IgKGlkeCA9IDA7IChpbnQpaWR4IDwgbnVt
X2ZwX3RyaWFsczsgaWR4KyspIHsKKyAgICAgICAgc3RhdHVzID0gcmRieF9jaGVja19leHBlY3Rf
ZmFpbHVyZSgmcmRieCwgaWR4KTsKKyAgICAgICAgaWYgKHN0YXR1cykKKyAgICAgICAgICAgIHJl
dHVybiBzdGF0dXM7CisgICAgfQorICAgIHByaW50ZigicGFzc2VkXG4iKTsKKworICAgIC8qIHJl
LWluaXRpYWxpemUgKi8KKyAgICBzcnRwX3JkYnhfZGVhbGxvYygmcmRieCk7CisKKyAgICBpZiAo
c3J0cF9yZGJ4X2luaXQoJnJkYngsIHdzKSAhPSBzcnRwX2Vycl9zdGF0dXNfb2spIHsKKyAgICAg
ICAgcHJpbnRmKCJyZXBsYXlfaW5pdCBmYWlsZWRcbiIpOworICAgICAgICByZXR1cm4gc3J0cF9l
cnJfc3RhdHVzX2luaXRfZmFpbDsKKyAgICB9CisKKyAgICAvKgorICAgICAqIHRlc3Qgbm9uLXNl
cXVlbnRpYWwgaW5zZXJ0aW9uCisgICAgICoKKyAgICAgKiB0aGlzIHRlc3QgY292ZXJzIG9ubHkg
ZmFzZSBuZWdhdGl2ZXMsIHNpbmNlIHRoZSB2YWx1ZXMgcmV0dXJuZWQKKyAgICAgKiBieSB1dF9u
ZXh0X2luZGV4KC4uLikgYXJlIGRpc3RpbmN0CisgICAgICovCisgICAgdXRfaW5pdCgmdXRjKTsK
KworICAgIHByaW50ZigiXHR0ZXN0aW5nIG5vbi1zZXF1ZW50aWFsIGluc2VydGlvbi4uLiIpOwor
ICAgIGZvciAoaWR4ID0gMDsgKGludClpZHggPCBudW1fdHJpYWxzOyBpZHgrKykgeworICAgICAg
ICBpcmN2ZCA9IHV0X25leHRfaW5kZXgoJnV0Yyk7CisgICAgICAgIHN0YXR1cyA9IHJkYnhfY2hl
Y2tfYWRkX3Vub3JkZXJlZCgmcmRieCwgaXJjdmQpOworICAgICAgICBpZiAoc3RhdHVzKQorICAg
ICAgICAgICAgcmV0dXJuIHN0YXR1czsKKyAgICAgICAgc3RhdHVzID0gcmRieF9jaGVja19leHBl
Y3RfZmFpbHVyZSgmcmRieCwgaXJjdmQpOworICAgICAgICBpZiAoc3RhdHVzKQorICAgICAgICAg
ICAgcmV0dXJuIHN0YXR1czsKKyAgICB9CisgICAgcHJpbnRmKCJwYXNzZWRcbiIpOworCisgICAg
LyogcmUtaW5pdGlhbGl6ZSAqLworICAgIHNydHBfcmRieF9kZWFsbG9jKCZyZGJ4KTsKKworICAg
IGlmIChzcnRwX3JkYnhfaW5pdCgmcmRieCwgd3MpICE9IHNydHBfZXJyX3N0YXR1c19vaykgewor
ICAgICAgICBwcmludGYoInJlcGxheV9pbml0IGZhaWxlZFxuIik7CisgICAgICAgIHJldHVybiBz
cnRwX2Vycl9zdGF0dXNfaW5pdF9mYWlsOworICAgIH0KKworICAgIC8qCisgICAgICogdGVzdCBp
bnNlcnRpb24gd2l0aCBsYXJnZSBnYXBzLgorICAgICAqIGNoZWNrIGZvciBmYWxzZSBwb3NpdGl2
ZXMgZm9yIGVhY2ggaW5zZXJ0aW9uLgorICAgICAqLworICAgIHByaW50ZigiXHR0ZXN0aW5nIGlu
c2VydGlvbiB3aXRoIGxhcmdlIGdhcHMuLi4iKTsKKyAgICBmb3IgKGlkeCA9IDAsIGlyY3ZkID0g
MDsgKGludClpZHggPCBudW1fdHJpYWxzOworICAgICAgICAgaWR4KyssIGlyY3ZkICs9ICgxIDw8
IChyYW5kKCkgJSAxMikpKSB7CisgICAgICAgIHN0YXR1cyA9IHJkYnhfY2hlY2tfYWRkKCZyZGJ4
LCBpcmN2ZCk7CisgICAgICAgIGlmIChzdGF0dXMpCisgICAgICAgICAgICByZXR1cm4gc3RhdHVz
OworICAgICAgICBzdGF0dXMgPSByZGJ4X2NoZWNrX2V4cGVjdF9mYWlsdXJlKCZyZGJ4LCBpcmN2
ZCk7CisgICAgICAgIGlmIChzdGF0dXMpCisgICAgICAgICAgICByZXR1cm4gc3RhdHVzOworICAg
IH0KKyAgICBwcmludGYoInBhc3NlZFxuIik7CiAKKyAgICBzcnRwX3JkYnhfZGVhbGxvYygmcmRi
eCk7CiAKLSNpbmNsdWRlIDx0aW1lLmg+ICAgICAgIC8qIGZvciBjbG9jaygpICAqLwotI2luY2x1
ZGUgPHN0ZGxpYi5oPiAgICAgLyogZm9yIHJhbmRvbSgpICovCi0KLWRvdWJsZQotcmRieF9jaGVj
a19hZGRzX3Blcl9zZWNvbmQoaW50IG51bV90cmlhbHMsIHVuc2lnbmVkIGxvbmcgd3MpIHsKLSAg
dWludDMyX3QgaTsKLSAgaW50IGRlbHRhOwotICBzcnRwX3JkYnhfdCByZGJ4OwotICBzcnRwX3h0
ZF9zZXFfbnVtX3QgZXN0OwotICBjbG9ja190IHRpbWVyOwotICBpbnQgZmFpbHVyZXM7ICAgICAg
ICAgICAgICAgICAgICAvKiBjb3VudCBudW1iZXIgb2YgZmFpbHVyZXMgICAgICAgICovCi0gIAot
ICBpZiAoc3J0cF9yZGJ4X2luaXQoJnJkYngsIHdzKSAhPSBzcnRwX2Vycl9zdGF0dXNfb2spIHsK
LSAgICBwcmludGYoInJlcGxheV9pbml0IGZhaWxlZFxuIik7Ci0gICAgZXhpdCgxKTsKLSAgfSAg
Ci0KLSAgZmFpbHVyZXMgPSAwOwotICB0aW1lciA9IGNsb2NrKCk7Ci0gIGZvcihpPTA7IChpbnQp
IGkgPCBudW1fdHJpYWxzOyBpKyspIHsKLSAgICAKLSAgICBkZWx0YSA9IHNydHBfaW5kZXhfZ3Vl
c3MoJnJkYnguaW5kZXgsICZlc3QsIGkpOwotICAgIAotICAgIGlmIChzcnRwX3JkYnhfY2hlY2so
JnJkYngsIGRlbHRhKSAhPSBzcnRwX2Vycl9zdGF0dXNfb2spIAotICAgICAgKytmYWlsdXJlczsK
LSAgICBlbHNlCi0gICAgICBpZiAoc3J0cF9yZGJ4X2FkZF9pbmRleCgmcmRieCwgZGVsdGEpICE9
IHNydHBfZXJyX3N0YXR1c19vaykKLQkrK2ZhaWx1cmVzOwotICB9Ci0gIHRpbWVyID0gY2xvY2so
KSAtIHRpbWVyOwotCi0gIHByaW50ZigibnVtYmVyIG9mIGZhaWx1cmVzOiAlZCBcbiIsIGZhaWx1
cmVzKTsKLQotICBzcnRwX3JkYnhfZGVhbGxvYygmcmRieCk7Ci0KLSAgcmV0dXJuIChkb3VibGUp
IENMT0NLU19QRVJfU0VDICogbnVtX3RyaWFscyAvIHRpbWVyOworICAgIHJldHVybiBzcnRwX2Vy
cl9zdGF0dXNfb2s7CiB9CiAKKyNpbmNsdWRlIDx0aW1lLmg+ICAgLyogZm9yIGNsb2NrKCkgICov
CisjaW5jbHVkZSA8c3RkbGliLmg+IC8qIGZvciByYW5kb20oKSAqLworCitkb3VibGUgcmRieF9j
aGVja19hZGRzX3Blcl9zZWNvbmQoaW50IG51bV90cmlhbHMsIHVuc2lnbmVkIGxvbmcgd3MpCit7
CisgICAgdWludDMyX3QgaTsKKyAgICBpbnQgZGVsdGE7CisgICAgc3J0cF9yZGJ4X3QgcmRieDsK
KyAgICBzcnRwX3h0ZF9zZXFfbnVtX3QgZXN0OworICAgIGNsb2NrX3QgdGltZXI7CisgICAgaW50
IGZhaWx1cmVzOyAvKiBjb3VudCBudW1iZXIgb2YgZmFpbHVyZXMgKi8KKworICAgIGlmIChzcnRw
X3JkYnhfaW5pdCgmcmRieCwgd3MpICE9IHNydHBfZXJyX3N0YXR1c19vaykgeworICAgICAgICBw
cmludGYoInJlcGxheV9pbml0IGZhaWxlZFxuIik7CisgICAgICAgIGV4aXQoMSk7CisgICAgfQor
CisgICAgZmFpbHVyZXMgPSAwOworICAgIHRpbWVyID0gY2xvY2soKTsKKyAgICBmb3IgKGkgPSAw
OyAoaW50KWkgPCBudW1fdHJpYWxzOyBpKyspIHsKKyAgICAgICAgZGVsdGEgPSBzcnRwX2luZGV4
X2d1ZXNzKCZyZGJ4LmluZGV4LCAmZXN0LCBpKTsKKworICAgICAgICBpZiAoc3J0cF9yZGJ4X2No
ZWNrKCZyZGJ4LCBkZWx0YSkgIT0gc3J0cF9lcnJfc3RhdHVzX29rKQorICAgICAgICAgICAgKytm
YWlsdXJlczsKKyAgICAgICAgZWxzZSBpZiAoc3J0cF9yZGJ4X2FkZF9pbmRleCgmcmRieCwgZGVs
dGEpICE9IHNydHBfZXJyX3N0YXR1c19vaykKKyAgICAgICAgICAgICsrZmFpbHVyZXM7CisgICAg
fQorICAgIHRpbWVyID0gY2xvY2soKSAtIHRpbWVyOworCisgICAgcHJpbnRmKCJudW1iZXIgb2Yg
ZmFpbHVyZXM6ICVkIFxuIiwgZmFpbHVyZXMpOworCisgICAgc3J0cF9yZGJ4X2RlYWxsb2MoJnJk
YngpOworCisgICAgcmV0dXJuIChkb3VibGUpQ0xPQ0tTX1BFUl9TRUMgKiBudW1fdHJpYWxzIC8g
dGltZXI7Cit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnNydHAvdGVzdC9yZXBsYXlfZHJpdmVyLmMgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvdGVzdC9yZXBsYXlfZHJp
dmVyLmMKaW5kZXggYjk2NGE0YTAzZWJiY2E1NDJkOGYyYzA0MDQ1Yjc1ZjdlOTE2ODc5MS4uYTg4
MjI0Njg0ZjZhNDExY2UxNWFlYjUzMGIzM2EwYzhjNThlNTVhMyAxMDA2NDQKLS0tIGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL3Rlc3QvcmVw
bGF5X2RyaXZlci5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlic3J0cC90ZXN0L3JlcGxheV9kcml2ZXIuYwpAQCAtOCwyNiArOCwyNiBAQAog
ICovCiAKIC8qCi0gKgkKKyAqCiAgKiBDb3B5cmlnaHQgKGMpIDIwMDEtMjAxNywgQ2lzY28gU3lz
dGVtcywgSW5jLgogICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqIAorICoKICAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCiAgKiBhcmUgbWV0OgotICogCisgKgogICogICBSZWRpc3RyaWJ1dGlv
bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAogICogICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIuCi0gKiAKKyAqCiAgKiAgIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUKICAqICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKICAqICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1l
bnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkCiAgKiAgIHdpdGggdGhlIGRp
c3RyaWJ1dGlvbi4KLSAqIAorICoKICAqICAgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgQ2lzY28g
U3lzdGVtcywgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwogICogICBjb250cmlidXRvcnMgbWF5
IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQKICAqICAgZnJv
bSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9u
LgotICogCisgKgogICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hU
IEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwogICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1Ig
SU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKICAqIExJTUlURUQgVE8sIFRI
RSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCkBAIC00
NCw3ICs0NCw3IEBACiAgKi8KIAogI2lmZGVmIEhBVkVfQ09ORklHX0gKLSAgICAjaW5jbHVkZSA8
Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29uZmlnLmg+CiAjZW5kaWYKIAogI2luY2x1ZGUgPHN0ZGlv
Lmg+CkBAIC01OSwyMjYgKzU5LDIyNSBAQAogCiB1bnNpZ25lZCBudW1fdHJpYWxzID0gMSA8PCAx
NjsKIAotc3J0cF9lcnJfc3RhdHVzX3QKLXRlc3RfcmRiX2RiKHZvaWQpOwotCi1kb3VibGUKLXJk
Yl9jaGVja19hZGRzX3Blcl9zZWNvbmQodm9pZCk7Ci0KLWludAotbWFpbiAodm9pZCkgewotICBz
cnRwX2Vycl9zdGF0dXNfdCBlcnI7Ci0gIAotICBwcmludGYoInRlc3RpbmcgYW50aS1yZXBsYXkg
ZGF0YWJhc2UgKHNydHBfcmRiX3QpLi4uXG4iKTsKLSAgZXJyID0gdGVzdF9yZGJfZGIoKTsKLSAg
aWYgKGVycikgewotICAgIHByaW50ZigiZmFpbGVkXG4iKTsKLSAgICBleGl0KDEpOwotICB9Ci0g
IHByaW50ZigiZG9uZVxuIik7Ci0KLSAgcHJpbnRmKCJyZGJfY2hlY2svcmRiX2FkZHMgcGVyIHNl
Y29uZDogJWVcbiIsCi0JIHJkYl9jaGVja19hZGRzX3Blcl9zZWNvbmQoKSk7Ci0gIAotICByZXR1
cm4gMDsKLX0KK3NydHBfZXJyX3N0YXR1c190IHRlc3RfcmRiX2RiKHZvaWQpOwogCitkb3VibGUg
cmRiX2NoZWNrX2FkZHNfcGVyX3NlY29uZCh2b2lkKTsKIAotdm9pZAotcHJpbnRfcmRiKHNydHBf
cmRiX3QgKnJkYikgewotICBwcmludGYoInJkYjogeyV1LCAlc31cbiIsIHJkYi0+d2luZG93X3N0
YXJ0LCB2MTI4X2JpdF9zdHJpbmcoJnJkYi0+Yml0bWFzaykpOwotfQoraW50IG1haW4odm9pZCkK
K3sKKyAgICBzcnRwX2Vycl9zdGF0dXNfdCBlcnI7CisKKyAgICBwcmludGYoInRlc3RpbmcgYW50
aS1yZXBsYXkgZGF0YWJhc2UgKHNydHBfcmRiX3QpLi4uXG4iKTsKKyAgICBlcnIgPSB0ZXN0X3Jk
Yl9kYigpOworICAgIGlmIChlcnIpIHsKKyAgICAgICAgcHJpbnRmKCJmYWlsZWRcbiIpOworICAg
ICAgICBleGl0KDEpOworICAgIH0KKyAgICBwcmludGYoImRvbmVcbiIpOwogCi1zcnRwX2Vycl9z
dGF0dXNfdAotcmRiX2NoZWNrX2FkZChzcnRwX3JkYl90ICpyZGIsIHVpbnQzMl90IGlkeCkgewor
ICAgIHByaW50ZigicmRiX2NoZWNrL3JkYl9hZGRzIHBlciBzZWNvbmQ6ICVlXG4iLCByZGJfY2hl
Y2tfYWRkc19wZXJfc2Vjb25kKCkpOwogCi0gIGlmIChzcnRwX3JkYl9jaGVjayhyZGIsIGlkeCkg
IT0gc3J0cF9lcnJfc3RhdHVzX29rKSB7Ci0gICAgcHJpbnRmKCJyZGJfY2hlY2sgZmFpbGVkIGF0
IGluZGV4ICV1XG4iLCBpZHgpOwotICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfZmFpbDsKLSAg
fQotICBpZiAoc3J0cF9yZGJfYWRkX2luZGV4KHJkYiwgaWR4KSAhPSBzcnRwX2Vycl9zdGF0dXNf
b2spIHsKLSAgICBwcmludGYoInJkYl9hZGRfaW5kZXggZmFpbGVkIGF0IGluZGV4ICV1XG4iLCBp
ZHgpOwotICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfZmFpbDsKLSAgfQorICAgIHJldHVybiAw
OworfQogCi0gIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7Cit2b2lkIHByaW50X3JkYihzcnRw
X3JkYl90ICpyZGIpCit7CisgICAgcHJpbnRmKCJyZGI6IHsldSwgJXN9XG4iLCByZGItPndpbmRv
d19zdGFydCwKKyAgICAgICAgICAgdjEyOF9iaXRfc3RyaW5nKCZyZGItPmJpdG1hc2spKTsKIH0K
IAotc3J0cF9lcnJfc3RhdHVzX3QKLXJkYl9jaGVja19leHBlY3RfZmFpbHVyZShzcnRwX3JkYl90
ICpyZGIsIHVpbnQzMl90IGlkeCkgewotICBzcnRwX2Vycl9zdGF0dXNfdCBlcnI7Ci0gIAotICBl
cnIgPSBzcnRwX3JkYl9jaGVjayhyZGIsIGlkeCk7Ci0gIGlmICgoZXJyICE9IHNydHBfZXJyX3N0
YXR1c19yZXBsYXlfb2xkKSAmJiAoZXJyICE9IHNydHBfZXJyX3N0YXR1c19yZXBsYXlfZmFpbCkp
IHsKLSAgICBwcmludGYoInJkYl9jaGVjayBmYWlsZWQgYXQgaW5kZXggJXUgKGZhbHNlIHBvc2l0
aXZlKVxuIiwgaWR4KTsKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7Ci0gIH0KLQot
ICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOworc3J0cF9lcnJfc3RhdHVzX3QgcmRiX2NoZWNr
X2FkZChzcnRwX3JkYl90ICpyZGIsIHVpbnQzMl90IGlkeCkKK3sKKyAgICBpZiAoc3J0cF9yZGJf
Y2hlY2socmRiLCBpZHgpICE9IHNydHBfZXJyX3N0YXR1c19vaykgeworICAgICAgICBwcmludGYo
InJkYl9jaGVjayBmYWlsZWQgYXQgaW5kZXggJXVcbiIsIGlkeCk7CisgICAgICAgIHJldHVybiBz
cnRwX2Vycl9zdGF0dXNfZmFpbDsKKyAgICB9CisgICAgaWYgKHNydHBfcmRiX2FkZF9pbmRleChy
ZGIsIGlkeCkgIT0gc3J0cF9lcnJfc3RhdHVzX29rKSB7CisgICAgICAgIHByaW50ZigicmRiX2Fk
ZF9pbmRleCBmYWlsZWQgYXQgaW5kZXggJXVcbiIsIGlkeCk7CisgICAgICAgIHJldHVybiBzcnRw
X2Vycl9zdGF0dXNfZmFpbDsKKyAgICB9CisKKyAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29r
OworfQorCitzcnRwX2Vycl9zdGF0dXNfdCByZGJfY2hlY2tfZXhwZWN0X2ZhaWx1cmUoc3J0cF9y
ZGJfdCAqcmRiLCB1aW50MzJfdCBpZHgpCit7CisgICAgc3J0cF9lcnJfc3RhdHVzX3QgZXJyOwor
CisgICAgZXJyID0gc3J0cF9yZGJfY2hlY2socmRiLCBpZHgpOworICAgIGlmICgoZXJyICE9IHNy
dHBfZXJyX3N0YXR1c19yZXBsYXlfb2xkKSAmJgorICAgICAgICAoZXJyICE9IHNydHBfZXJyX3N0
YXR1c19yZXBsYXlfZmFpbCkpIHsKKyAgICAgICAgcHJpbnRmKCJyZGJfY2hlY2sgZmFpbGVkIGF0
IGluZGV4ICV1IChmYWxzZSBwb3NpdGl2ZSlcbiIsIGlkeCk7CisgICAgICAgIHJldHVybiBzcnRw
X2Vycl9zdGF0dXNfZmFpbDsKKyAgICB9CisKKyAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29r
OwogfQogCi1zcnRwX2Vycl9zdGF0dXNfdAotcmRiX2NoZWNrX2FkZF91bm9yZGVyZWQoc3J0cF9y
ZGJfdCAqcmRiLCB1aW50MzJfdCBpZHgpIHsKLSAgc3J0cF9lcnJfc3RhdHVzX3QgcnN0YXQ7Ci0K
LSAvKiBwcmludGYoImluZGV4OiAldVxuIiwgaWR4KTsgKi8KLSAgcnN0YXQgPSBzcnRwX3JkYl9j
aGVjayhyZGIsIGlkeCk7Ci0gIGlmICgocnN0YXQgIT0gc3J0cF9lcnJfc3RhdHVzX29rKSAmJiAo
cnN0YXQgIT0gc3J0cF9lcnJfc3RhdHVzX3JlcGxheV9vbGQpKSB7Ci0gICAgcHJpbnRmKCJyZGJf
Y2hlY2tfYWRkX3Vub3JkZXJlZCBmYWlsZWQgYXQgaW5kZXggJXVcbiIsIGlkeCk7Ci0gICAgcmV0
dXJuIHJzdGF0OwotICB9Ci0gIGlmIChyc3RhdCA9PSBzcnRwX2Vycl9zdGF0dXNfcmVwbGF5X29s
ZCkgewotCXJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7Ci0gIH0KLSAgaWYgKHNydHBfcmRiX2Fk
ZF9pbmRleChyZGIsIGlkeCkgIT0gc3J0cF9lcnJfc3RhdHVzX29rKSB7Ci0gICAgcHJpbnRmKCJy
ZGJfYWRkX2luZGV4IGZhaWxlZCBhdCBpbmRleCAldVxuIiwgaWR4KTsKLSAgICByZXR1cm4gc3J0
cF9lcnJfc3RhdHVzX2ZhaWw7Ci0gIH0gIAotCi0gIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7
CitzcnRwX2Vycl9zdGF0dXNfdCByZGJfY2hlY2tfYWRkX3Vub3JkZXJlZChzcnRwX3JkYl90ICpy
ZGIsIHVpbnQzMl90IGlkeCkKK3sKKyAgICBzcnRwX2Vycl9zdGF0dXNfdCByc3RhdDsKKworICAg
IC8qIHByaW50ZigiaW5kZXg6ICV1XG4iLCBpZHgpOyAqLworICAgIHJzdGF0ID0gc3J0cF9yZGJf
Y2hlY2socmRiLCBpZHgpOworICAgIGlmICgocnN0YXQgIT0gc3J0cF9lcnJfc3RhdHVzX29rKSAm
JgorICAgICAgICAocnN0YXQgIT0gc3J0cF9lcnJfc3RhdHVzX3JlcGxheV9vbGQpKSB7CisgICAg
ICAgIHByaW50ZigicmRiX2NoZWNrX2FkZF91bm9yZGVyZWQgZmFpbGVkIGF0IGluZGV4ICV1XG4i
LCBpZHgpOworICAgICAgICByZXR1cm4gcnN0YXQ7CisgICAgfQorICAgIGlmIChyc3RhdCA9PSBz
cnRwX2Vycl9zdGF0dXNfcmVwbGF5X29sZCkgeworICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3Rh
dHVzX29rOworICAgIH0KKyAgICBpZiAoc3J0cF9yZGJfYWRkX2luZGV4KHJkYiwgaWR4KSAhPSBz
cnRwX2Vycl9zdGF0dXNfb2spIHsKKyAgICAgICAgcHJpbnRmKCJyZGJfYWRkX2luZGV4IGZhaWxl
ZCBhdCBpbmRleCAldVxuIiwgaWR4KTsKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19m
YWlsOworICAgIH0KKworICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAKLXNydHBf
ZXJyX3N0YXR1c190Ci10ZXN0X3JkYl9kYigpIHsKLSAgc3J0cF9yZGJfdCByZGI7Ci0gIHVpbnQz
Ml90IGlkeCwgaXJjdmQ7Ci0gIHV0X2Nvbm5lY3Rpb24gdXRjOwotICBzcnRwX2Vycl9zdGF0dXNf
dCBlcnI7Ci0KLSAgaWYgKHNydHBfcmRiX2luaXQoJnJkYikgIT0gc3J0cF9lcnJfc3RhdHVzX29r
KSB7Ci0gICAgcHJpbnRmKCJyZGJfaW5pdCBmYWlsZWRcbiIpOwotICAgIHJldHVybiBzcnRwX2Vy
cl9zdGF0dXNfaW5pdF9mYWlsOwotICB9Ci0KLSAgLyogdGVzdCBzZXF1ZW50aWFsIGluc2VydGlv
biAqLwotICBmb3IgKGlkeD0wOyBpZHggPCBudW1fdHJpYWxzOyBpZHgrKykgewotICAgIGVyciA9
IHJkYl9jaGVja19hZGQoJnJkYiwgaWR4KTsKLSAgICBpZiAoZXJyKSAKLSAgICAgIHJldHVybiBl
cnI7Ci0gIH0KLQotICAvKiB0ZXN0IGZvciBmYWxzZSBwb3NpdGl2ZXMgKi8KLSAgZm9yIChpZHg9
MDsgaWR4IDwgbnVtX3RyaWFsczsgaWR4KyspIHsKLSAgICBlcnIgPSByZGJfY2hlY2tfZXhwZWN0
X2ZhaWx1cmUoJnJkYiwgaWR4KTsKLSAgICBpZiAoZXJyKSAKLSAgICAgIHJldHVybiBlcnI7Ci0g
IH0KLQotICAvKiByZS1pbml0aWFsaXplICovCi0gIGlmIChzcnRwX3JkYl9pbml0KCZyZGIpICE9
IHNydHBfZXJyX3N0YXR1c19vaykgewotICAgIHByaW50ZigicmRiX2luaXQgZmFpbGVkXG4iKTsK
LSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7Ci0gIH0KLQotICAvKiB0ZXN0IG5vbi1z
ZXF1ZW50aWFsIGluc2VydGlvbiAqLwotICB1dF9pbml0KCZ1dGMpOwotICAKLSAgZm9yIChpZHg9
MDsgaWR4IDwgbnVtX3RyaWFsczsgaWR4KyspIHsKLSAgICBpcmN2ZCA9IHV0X25leHRfaW5kZXgo
JnV0Yyk7Ci0gICAgZXJyID0gcmRiX2NoZWNrX2FkZF91bm9yZGVyZWQoJnJkYiwgaXJjdmQpOwot
ICAgIGlmIChlcnIpIAotICAgICAgcmV0dXJuIGVycjsKLSAgICBlcnIgPSByZGJfY2hlY2tfZXhw
ZWN0X2ZhaWx1cmUoJnJkYiwgaXJjdmQpOwotICAgIGlmIChlcnIpIAotICAgICAgcmV0dXJuIGVy
cjsKLSAgfQotCi0gIC8qIHJlLWluaXRpYWxpemUgKi8KLSAgaWYgKHNydHBfcmRiX2luaXQoJnJk
YikgIT0gc3J0cF9lcnJfc3RhdHVzX29rKSB7Ci0gICAgcHJpbnRmKCJyZGJfaW5pdCBmYWlsZWRc
biIpOwotICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfZmFpbDsKLSAgfQotCi0gIC8qIHRlc3Qg
aW5zZXJ0aW9uIHdpdGggbGFyZ2UgZ2FwcyAqLwotICBmb3IgKGlkeD0wLCBpcmN2ZD0wOyBpZHgg
PCBudW1fdHJpYWxzOyBpZHgrKywgaXJjdmQgKz0gKDEgPDwgKHJhbmQoKSAlIDEwKSkpIHsKLSAg
ICBlcnIgPSByZGJfY2hlY2tfYWRkKCZyZGIsIGlyY3ZkKTsKLSAgICBpZiAoZXJyKQotICAgICAg
cmV0dXJuIGVycjsKLSAgICBlcnIgPSByZGJfY2hlY2tfZXhwZWN0X2ZhaWx1cmUoJnJkYiwgaXJj
dmQpOwotICAgIGlmIChlcnIpCi0gICAgICByZXR1cm4gZXJyOwotICB9Ci0KLSAgLyogcmUtaW5p
dGlhbGl6ZSAqLwotICBpZiAoc3J0cF9yZGJfaW5pdCgmcmRiKSAhPSBzcnRwX2Vycl9zdGF0dXNf
b2spIHsKLSAgICBwcmludGYoInJkYl9pbml0IGZhaWxlZFxuIik7Ci0gICAgcmV0dXJuIHNydHBf
ZXJyX3N0YXR1c19mYWlsOwotICB9Ci0KLSAgLyogdGVzdCBsb3NzIG9mIGZpcnN0IDUxMyBwYWNr
ZXRzICovCi0gIGZvciAoaWR4PTA7IGlkeCA8IG51bV90cmlhbHM7IGlkeCsrKSB7Ci0gICAgZXJy
ID0gcmRiX2NoZWNrX2FkZCgmcmRiLCBpZHggKyA1MTMpOwotICAgIGlmIChlcnIpIAotICAgICAg
cmV0dXJuIGVycjsKLSAgfQotCi0gIC8qIHRlc3QgZm9yIGZhbHNlIHBvc2l0aXZlcyAqLwotICBm
b3IgKGlkeD0wOyBpZHggPCBudW1fdHJpYWxzICsgNTEzOyBpZHgrKykgewotICAgIGVyciA9IHJk
Yl9jaGVja19leHBlY3RfZmFpbHVyZSgmcmRiLCBpZHgpOwotICAgIGlmIChlcnIpIAotICAgICAg
cmV0dXJuIGVycjsKLSAgfQotCi0gIC8qIHRlc3QgZm9yIGtleSBleHBpcmVkICovCi0gIGlmIChz
cnRwX3JkYl9pbml0KCZyZGIpICE9IHNydHBfZXJyX3N0YXR1c19vaykgewotICAgIHByaW50Zigi
cmRiX2luaXQgZmFpbGVkXG4iKTsKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7Ci0g
IH0KLSAgcmRiLndpbmRvd19zdGFydCA9IDB4N2ZmZmZmZmU7Ci0gIGlmIChzcnRwX3JkYl9pbmNy
ZW1lbnQoJnJkYikgIT0gc3J0cF9lcnJfc3RhdHVzX29rKSB7Ci0gICAgcHJpbnRmKCJzcnRwX3Jk
Yl9pbmNyZW1lbnQgb2YgMHg3ZmZmZmZmZSBmYWlsZWRcbiIpOwotICAgIHJldHVybiBzcnRwX2Vy
cl9zdGF0dXNfZmFpbDsKLSAgfQotICBpZiAoc3J0cF9yZGJfZ2V0X3ZhbHVlKCZyZGIpICE9IDB4
N2ZmZmZmZmYpIHsKLSAgICBwcmludGYoInJkYiB2YWxpdWUgd2FzIG5vdCAweDdmZmZmZmZmXG4i
KTsKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7Ci0gIH0KLSAgaWYgKHNydHBfcmRi
X2luY3JlbWVudCgmcmRiKSAhPSBzcnRwX2Vycl9zdGF0dXNfa2V5X2V4cGlyZWQpIHsKLSAgICBw
cmludGYoInNydHBfcmRiX2luY3JlbWVudCBvZiAweDdmZmZmZmZmIGRpZCBub3QgcmV0dXJuIHNy
dHBfZXJyX3N0YXR1c19rZXlfZXhwaXJlZFxuIik7Ci0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1
c19mYWlsOwotICB9Ci0gIGlmIChzcnRwX3JkYl9nZXRfdmFsdWUoJnJkYikgIT0gMHg3ZmZmZmZm
ZikgewotICAgIHByaW50ZigicmRiIHZhbGl1ZSB3YXMgbm90IDB4N2ZmZmZmZmZcbiIpOwotICAg
IHJldHVybiBzcnRwX2Vycl9zdGF0dXNfZmFpbDsKLSAgfQotCi0KLSAgcmV0dXJuIHNydHBfZXJy
X3N0YXR1c19vazsKK3NydHBfZXJyX3N0YXR1c190IHRlc3RfcmRiX2RiKCkKK3sKKyAgICBzcnRw
X3JkYl90IHJkYjsKKyAgICB1aW50MzJfdCBpZHgsIGlyY3ZkOworICAgIHV0X2Nvbm5lY3Rpb24g
dXRjOworICAgIHNydHBfZXJyX3N0YXR1c190IGVycjsKKworICAgIGlmIChzcnRwX3JkYl9pbml0
KCZyZGIpICE9IHNydHBfZXJyX3N0YXR1c19vaykgeworICAgICAgICBwcmludGYoInJkYl9pbml0
IGZhaWxlZFxuIik7CisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfaW5pdF9mYWlsOwor
ICAgIH0KKworICAgIC8qIHRlc3Qgc2VxdWVudGlhbCBpbnNlcnRpb24gKi8KKyAgICBmb3IgKGlk
eCA9IDA7IGlkeCA8IG51bV90cmlhbHM7IGlkeCsrKSB7CisgICAgICAgIGVyciA9IHJkYl9jaGVj
a19hZGQoJnJkYiwgaWR4KTsKKyAgICAgICAgaWYgKGVycikKKyAgICAgICAgICAgIHJldHVybiBl
cnI7CisgICAgfQorCisgICAgLyogdGVzdCBmb3IgZmFsc2UgcG9zaXRpdmVzICovCisgICAgZm9y
IChpZHggPSAwOyBpZHggPCBudW1fdHJpYWxzOyBpZHgrKykgeworICAgICAgICBlcnIgPSByZGJf
Y2hlY2tfZXhwZWN0X2ZhaWx1cmUoJnJkYiwgaWR4KTsKKyAgICAgICAgaWYgKGVycikKKyAgICAg
ICAgICAgIHJldHVybiBlcnI7CisgICAgfQorCisgICAgLyogcmUtaW5pdGlhbGl6ZSAqLworICAg
IGlmIChzcnRwX3JkYl9pbml0KCZyZGIpICE9IHNydHBfZXJyX3N0YXR1c19vaykgeworICAgICAg
ICBwcmludGYoInJkYl9pbml0IGZhaWxlZFxuIik7CisgICAgICAgIHJldHVybiBzcnRwX2Vycl9z
dGF0dXNfZmFpbDsKKyAgICB9CisKKyAgICAvKiB0ZXN0IG5vbi1zZXF1ZW50aWFsIGluc2VydGlv
biAqLworICAgIHV0X2luaXQoJnV0Yyk7CisKKyAgICBmb3IgKGlkeCA9IDA7IGlkeCA8IG51bV90
cmlhbHM7IGlkeCsrKSB7CisgICAgICAgIGlyY3ZkID0gdXRfbmV4dF9pbmRleCgmdXRjKTsKKyAg
ICAgICAgZXJyID0gcmRiX2NoZWNrX2FkZF91bm9yZGVyZWQoJnJkYiwgaXJjdmQpOworICAgICAg
ICBpZiAoZXJyKQorICAgICAgICAgICAgcmV0dXJuIGVycjsKKyAgICAgICAgZXJyID0gcmRiX2No
ZWNrX2V4cGVjdF9mYWlsdXJlKCZyZGIsIGlyY3ZkKTsKKyAgICAgICAgaWYgKGVycikKKyAgICAg
ICAgICAgIHJldHVybiBlcnI7CisgICAgfQorCisgICAgLyogcmUtaW5pdGlhbGl6ZSAqLworICAg
IGlmIChzcnRwX3JkYl9pbml0KCZyZGIpICE9IHNydHBfZXJyX3N0YXR1c19vaykgeworICAgICAg
ICBwcmludGYoInJkYl9pbml0IGZhaWxlZFxuIik7CisgICAgICAgIHJldHVybiBzcnRwX2Vycl9z
dGF0dXNfZmFpbDsKKyAgICB9CisKKyAgICAvKiB0ZXN0IGluc2VydGlvbiB3aXRoIGxhcmdlIGdh
cHMgKi8KKyAgICBmb3IgKGlkeCA9IDAsIGlyY3ZkID0gMDsgaWR4IDwgbnVtX3RyaWFsczsKKyAg
ICAgICAgIGlkeCsrLCBpcmN2ZCArPSAoMSA8PCAocmFuZCgpICUgMTApKSkgeworICAgICAgICBl
cnIgPSByZGJfY2hlY2tfYWRkKCZyZGIsIGlyY3ZkKTsKKyAgICAgICAgaWYgKGVycikKKyAgICAg
ICAgICAgIHJldHVybiBlcnI7CisgICAgICAgIGVyciA9IHJkYl9jaGVja19leHBlY3RfZmFpbHVy
ZSgmcmRiLCBpcmN2ZCk7CisgICAgICAgIGlmIChlcnIpCisgICAgICAgICAgICByZXR1cm4gZXJy
OworICAgIH0KKworICAgIC8qIHJlLWluaXRpYWxpemUgKi8KKyAgICBpZiAoc3J0cF9yZGJfaW5p
dCgmcmRiKSAhPSBzcnRwX2Vycl9zdGF0dXNfb2spIHsKKyAgICAgICAgcHJpbnRmKCJyZGJfaW5p
dCBmYWlsZWRcbiIpOworICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7CisgICAg
fQorCisgICAgLyogdGVzdCBsb3NzIG9mIGZpcnN0IDUxMyBwYWNrZXRzICovCisgICAgZm9yIChp
ZHggPSAwOyBpZHggPCBudW1fdHJpYWxzOyBpZHgrKykgeworICAgICAgICBlcnIgPSByZGJfY2hl
Y2tfYWRkKCZyZGIsIGlkeCArIDUxMyk7CisgICAgICAgIGlmIChlcnIpCisgICAgICAgICAgICBy
ZXR1cm4gZXJyOworICAgIH0KKworICAgIC8qIHRlc3QgZm9yIGZhbHNlIHBvc2l0aXZlcyAqLwor
ICAgIGZvciAoaWR4ID0gMDsgaWR4IDwgbnVtX3RyaWFscyArIDUxMzsgaWR4KyspIHsKKyAgICAg
ICAgZXJyID0gcmRiX2NoZWNrX2V4cGVjdF9mYWlsdXJlKCZyZGIsIGlkeCk7CisgICAgICAgIGlm
IChlcnIpCisgICAgICAgICAgICByZXR1cm4gZXJyOworICAgIH0KKworICAgIC8qIHRlc3QgZm9y
IGtleSBleHBpcmVkICovCisgICAgaWYgKHNydHBfcmRiX2luaXQoJnJkYikgIT0gc3J0cF9lcnJf
c3RhdHVzX29rKSB7CisgICAgICAgIHByaW50ZigicmRiX2luaXQgZmFpbGVkXG4iKTsKKyAgICAg
ICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19mYWlsOworICAgIH0KKyAgICByZGIud2luZG93X3N0
YXJ0ID0gMHg3ZmZmZmZmZTsKKyAgICBpZiAoc3J0cF9yZGJfaW5jcmVtZW50KCZyZGIpICE9IHNy
dHBfZXJyX3N0YXR1c19vaykgeworICAgICAgICBwcmludGYoInNydHBfcmRiX2luY3JlbWVudCBv
ZiAweDdmZmZmZmZlIGZhaWxlZFxuIik7CisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNf
ZmFpbDsKKyAgICB9CisgICAgaWYgKHNydHBfcmRiX2dldF92YWx1ZSgmcmRiKSAhPSAweDdmZmZm
ZmZmKSB7CisgICAgICAgIHByaW50ZigicmRiIHZhbGl1ZSB3YXMgbm90IDB4N2ZmZmZmZmZcbiIp
OworICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7CisgICAgfQorICAgIGlmIChz
cnRwX3JkYl9pbmNyZW1lbnQoJnJkYikgIT0gc3J0cF9lcnJfc3RhdHVzX2tleV9leHBpcmVkKSB7
CisgICAgICAgIHByaW50Zigic3J0cF9yZGJfaW5jcmVtZW50IG9mIDB4N2ZmZmZmZmYgZGlkIG5v
dCByZXR1cm4gIgorICAgICAgICAgICAgICAgInNydHBfZXJyX3N0YXR1c19rZXlfZXhwaXJlZFxu
Iik7CisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfZmFpbDsKKyAgICB9CisgICAgaWYg
KHNydHBfcmRiX2dldF92YWx1ZSgmcmRiKSAhPSAweDdmZmZmZmZmKSB7CisgICAgICAgIHByaW50
ZigicmRiIHZhbGl1ZSB3YXMgbm90IDB4N2ZmZmZmZmZcbiIpOworICAgICAgICByZXR1cm4gc3J0
cF9lcnJfc3RhdHVzX2ZhaWw7CisgICAgfQorCisgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19v
azsKIH0KIAotI2luY2x1ZGUgPHRpbWUuaD4gICAgICAgLyogZm9yIGNsb2NrKCkgICovCi0jaW5j
bHVkZSA8c3RkbGliLmg+ICAgICAvKiBmb3IgcmFuZG9tKCkgKi8KKyNpbmNsdWRlIDx0aW1lLmg+
ICAgLyogZm9yIGNsb2NrKCkgICovCisjaW5jbHVkZSA8c3RkbGliLmg+IC8qIGZvciByYW5kb20o
KSAqLwogCiAjZGVmaW5lIFJFUExBWV9OVU1fVFJJQUxTIDEwMDAwMDAwCiAKLWRvdWJsZQotcmRi
X2NoZWNrX2FkZHNfcGVyX3NlY29uZCh2b2lkKSB7Ci0gIHVpbnQzMl90IGk7Ci0gIHNydHBfcmRi
X3QgcmRiOwotICBjbG9ja190IHRpbWVyOwotICBpbnQgZmFpbHVyZXMgPSAwOyAgICAgICAgICAg
ICAgICAgICAgLyogY291bnQgbnVtYmVyIG9mIGZhaWx1cmVzICAgICAgICAqLwotICAKLSAgaWYg
KHNydHBfcmRiX2luaXQoJnJkYikgIT0gc3J0cF9lcnJfc3RhdHVzX29rKSB7Ci0gICAgcHJpbnRm
KCJyZGJfaW5pdCBmYWlsZWRcbiIpOwotICAgIGV4aXQoMSk7Ci0gIH0gIAotCi0gIHRpbWVyID0g
Y2xvY2soKTsKLSAgZm9yKGk9MDsgaSA8IFJFUExBWV9OVU1fVFJJQUxTOyBpKz0zKSB7Ci0gICAg
aWYgKHNydHBfcmRiX2NoZWNrKCZyZGIsIGkrMikgIT0gc3J0cF9lcnJfc3RhdHVzX29rKQotICAg
ICAgKytmYWlsdXJlczsKLSAgICBpZiAoc3J0cF9yZGJfYWRkX2luZGV4KCZyZGIsIGkrMikgIT0g
c3J0cF9lcnJfc3RhdHVzX29rKQotICAgICAgKytmYWlsdXJlczsKLSAgICBpZiAoc3J0cF9yZGJf
Y2hlY2soJnJkYiwgaSsxKSAhPSBzcnRwX2Vycl9zdGF0dXNfb2spCi0gICAgICArK2ZhaWx1cmVz
OwotICAgIGlmIChzcnRwX3JkYl9hZGRfaW5kZXgoJnJkYiwgaSsxKSAhPSBzcnRwX2Vycl9zdGF0
dXNfb2spCi0gICAgICArK2ZhaWx1cmVzOwotICAgIGlmIChzcnRwX3JkYl9jaGVjaygmcmRiLCBp
KSAhPSBzcnRwX2Vycl9zdGF0dXNfb2spCi0gICAgICArK2ZhaWx1cmVzOwotICAgIGlmIChzcnRw
X3JkYl9hZGRfaW5kZXgoJnJkYiwgaSkgIT0gc3J0cF9lcnJfc3RhdHVzX29rKQotICAgICAgKytm
YWlsdXJlczsKLSAgfQotICB0aW1lciA9IGNsb2NrKCkgLSB0aW1lcjsKLQotICByZXR1cm4gKGRv
dWJsZSkgQ0xPQ0tTX1BFUl9TRUMgKiBSRVBMQVlfTlVNX1RSSUFMUyAvIHRpbWVyOworZG91Ymxl
IHJkYl9jaGVja19hZGRzX3Blcl9zZWNvbmQodm9pZCkKK3sKKyAgICB1aW50MzJfdCBpOworICAg
IHNydHBfcmRiX3QgcmRiOworICAgIGNsb2NrX3QgdGltZXI7CisgICAgaW50IGZhaWx1cmVzID0g
MDsgLyogY291bnQgbnVtYmVyIG9mIGZhaWx1cmVzICAgICAgICAqLworCisgICAgaWYgKHNydHBf
cmRiX2luaXQoJnJkYikgIT0gc3J0cF9lcnJfc3RhdHVzX29rKSB7CisgICAgICAgIHByaW50Zigi
cmRiX2luaXQgZmFpbGVkXG4iKTsKKyAgICAgICAgZXhpdCgxKTsKKyAgICB9CisKKyAgICB0aW1l
ciA9IGNsb2NrKCk7CisgICAgZm9yIChpID0gMDsgaSA8IFJFUExBWV9OVU1fVFJJQUxTOyBpICs9
IDMpIHsKKyAgICAgICAgaWYgKHNydHBfcmRiX2NoZWNrKCZyZGIsIGkgKyAyKSAhPSBzcnRwX2Vy
cl9zdGF0dXNfb2spCisgICAgICAgICAgICArK2ZhaWx1cmVzOworICAgICAgICBpZiAoc3J0cF9y
ZGJfYWRkX2luZGV4KCZyZGIsIGkgKyAyKSAhPSBzcnRwX2Vycl9zdGF0dXNfb2spCisgICAgICAg
ICAgICArK2ZhaWx1cmVzOworICAgICAgICBpZiAoc3J0cF9yZGJfY2hlY2soJnJkYiwgaSArIDEp
ICE9IHNydHBfZXJyX3N0YXR1c19vaykKKyAgICAgICAgICAgICsrZmFpbHVyZXM7CisgICAgICAg
IGlmIChzcnRwX3JkYl9hZGRfaW5kZXgoJnJkYiwgaSArIDEpICE9IHNydHBfZXJyX3N0YXR1c19v
aykKKyAgICAgICAgICAgICsrZmFpbHVyZXM7CisgICAgICAgIGlmIChzcnRwX3JkYl9jaGVjaygm
cmRiLCBpKSAhPSBzcnRwX2Vycl9zdGF0dXNfb2spCisgICAgICAgICAgICArK2ZhaWx1cmVzOwor
ICAgICAgICBpZiAoc3J0cF9yZGJfYWRkX2luZGV4KCZyZGIsIGkpICE9IHNydHBfZXJyX3N0YXR1
c19vaykKKyAgICAgICAgICAgICsrZmFpbHVyZXM7CisgICAgfQorICAgIHRpbWVyID0gY2xvY2so
KSAtIHRpbWVyOworCisgICAgcmV0dXJuIChkb3VibGUpQ0xPQ0tTX1BFUl9TRUMgKiBSRVBMQVlf
TlVNX1RSSUFMUyAvIHRpbWVyOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL3Rlc3Qvcm9jX2RyaXZlci5jIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL3Rlc3Qv
cm9jX2RyaXZlci5jCmluZGV4IGMyMzExM2FkYzk4MzYyNmQxZmFjZWU2MGUxM2UzNGY2ZTk0NjE0
ZjkuLmQ2MWJhOGVmMjRlYTIyZjY2YmI5ODM3NzNhYTY2NjJmNDdmNGZiMzcgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC90
ZXN0L3JvY19kcml2ZXIuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnNydHAvdGVzdC9yb2NfZHJpdmVyLmMKQEAgLTgsMjYgKzgsMjYgQEAK
ICAqLwogCiAvKgotICoJCisgKgogICogQ29weXJpZ2h0IChjKSAyMDAxLTIwMTcsIENpc2NvIFN5
c3RlbXMsIEluYy4KICAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKiAKKyAqCiAgKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucwogICogYXJlIG1ldDoKLSAqIAorICoKICAqICAgUmVkaXN0cmlidXRp
b25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKICAqICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyLgotICogCisgKgogICogICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy
ZXByb2R1Y2UgdGhlIGFib3ZlCiAgKiAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCiAgKiAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZAogICogICB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCi0gKiAKKyAqCiAgKiAgIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIENpc2Nv
IFN5c3RlbXMsIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKICAqICAgY29udHJpYnV0b3JzIG1h
eSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkCiAgKiAgIGZy
b20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lv
bi4KLSAqIAorICoKICAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdI
VCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKICAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCiAgKiBMSU1JVEVEIFRPLCBU
SEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUwpAQCAt
NDMsOSArNDMsOCBAQAogICoKICAqLwogCi0KICNpZmRlZiBIQVZFX0NPTkZJR19ICi0gICAgI2lu
Y2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbmZpZy5oPgogI2VuZGlmCiAKICNpbmNsdWRl
IDxzdGRpby5oPgpAQCAtNTUsMTIxICs1NCwxMTcgQEAKICAqIHNydHBfeHRkX3NlcV9udW1fdCAt
IHRoaXMgYWxsb3dzIHRoZSBmdW5jdGlvbnMgdG8gYmUgZXhoYXVzdGl2ZWx5IHRlc3RlZC4KICAq
LwogI2lmIFJPQ19ORUVEU19UT19CRV9URVNURUQKLSNkZWZpbmUgUk9DX1RFU1QgICAgIAorI2Rl
ZmluZSBST0NfVEVTVAogI2VuZGlmCiAKICNpbmNsdWRlICJyZGJ4LmgiCiAjaW5jbHVkZSAidXRf
c2ltLmgiCiAKLXNydHBfZXJyX3N0YXR1c190Ci1yb2NfdGVzdChpbnQgbnVtX3RyaWFscyk7Ci0K
LWludAotbWFpbiAodm9pZCkgewotICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7Ci0KLSAgcHJp
bnRmKCJyb2xsb3ZlciBjb3VudGVyIHRlc3QgZHJpdmVyXG4iCi0JICJEYXZpZCBBLiBNY0dyZXdc
biIKLQkgIkNpc2NvIFN5c3RlbXMsIEluYy5cbiIpOwotICAKLSAgcHJpbnRmKCJ0ZXN0aW5nIGlu
ZGV4IGZ1bmN0aW9ucy4uLiIpOwotICBzdGF0dXMgPSByb2NfdGVzdCgxIDw8IDE4KTsKLSAgaWYg
KHN0YXR1cykgewotICAgIHByaW50ZigiZmFpbGVkXG4iKTsKLSAgICBleGl0KHN0YXR1cyk7Ci0g
IH0KLSAgcHJpbnRmKCJwYXNzZWRcbiIpOwotICByZXR1cm4gMDsKLX0KK3NydHBfZXJyX3N0YXR1
c190IHJvY190ZXN0KGludCBudW1fdHJpYWxzKTsKKworaW50IG1haW4odm9pZCkKK3sKKyAgICBz
cnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7CiAKKyAgICBwcmludGYoInJvbGxvdmVyIGNvdW50ZXIg
dGVzdCBkcml2ZXJcbiIKKyAgICAgICAgICAgIkRhdmlkIEEuIE1jR3Jld1xuIgorICAgICAgICAg
ICAiQ2lzY28gU3lzdGVtcywgSW5jLlxuIik7CisKKyAgICBwcmludGYoInRlc3RpbmcgaW5kZXgg
ZnVuY3Rpb25zLi4uIik7CisgICAgc3RhdHVzID0gcm9jX3Rlc3QoMSA8PCAxOCk7CisgICAgaWYg
KHN0YXR1cykgeworICAgICAgICBwcmludGYoImZhaWxlZFxuIik7CisgICAgICAgIGV4aXQoc3Rh
dHVzKTsKKyAgICB9CisgICAgcHJpbnRmKCJwYXNzZWRcbiIpOworICAgIHJldHVybiAwOworfQog
CiAjZGVmaW5lIFJPQ19WRVJCT1NFIDAKIAotc3J0cF9lcnJfc3RhdHVzX3QKLXJvY190ZXN0KGlu
dCBudW1fdHJpYWxzKSB7Ci0gIHNydHBfeHRkX3NlcV9udW1fdCBsb2NhbCwgZXN0LCByZWY7Ci0g
IHV0X2Nvbm5lY3Rpb24gdXRjOwotICBpbnQgaSwgbnVtX2JhZF9lc3QgPSAwOwotICBpbnQgZGVs
dGE7Ci0gIHVpbnQzMl90IGlyY3ZkOwotICBkb3VibGUgZmFpbHVyZV9yYXRlOwotCi0gIHNydHBf
aW5kZXhfaW5pdCgmbG9jYWwpOwotICBzcnRwX2luZGV4X2luaXQoJnJlZik7Ci0gIHNydHBfaW5k
ZXhfaW5pdCgmZXN0KTsKLQotICBwcmludGYoIlxuXHR0ZXN0aW5nIHNlcXVlbnRpYWwgaW5zZXJ0
aW9uLi4uIik7Ci0gIGZvciAoaT0wOyBpIDwgMjA0ODsgaSsrKSB7Ci0gICAgZGVsdGEgPSBzcnRw
X2luZGV4X2d1ZXNzKCZsb2NhbCwgJmVzdCwgKHVpbnQxNl90KSByZWYpOworc3J0cF9lcnJfc3Rh
dHVzX3Qgcm9jX3Rlc3QoaW50IG51bV90cmlhbHMpCit7CisgICAgc3J0cF94dGRfc2VxX251bV90
IGxvY2FsLCBlc3QsIHJlZjsKKyAgICB1dF9jb25uZWN0aW9uIHV0YzsKKyAgICBpbnQgaSwgbnVt
X2JhZF9lc3QgPSAwOworICAgIGludCBkZWx0YTsKKyAgICB1aW50MzJfdCBpcmN2ZDsKKyAgICBk
b3VibGUgZmFpbHVyZV9yYXRlOworCisgICAgc3J0cF9pbmRleF9pbml0KCZsb2NhbCk7CisgICAg
c3J0cF9pbmRleF9pbml0KCZyZWYpOworICAgIHNydHBfaW5kZXhfaW5pdCgmZXN0KTsKKworICAg
IHByaW50ZigiXG5cdHRlc3Rpbmcgc2VxdWVudGlhbCBpbnNlcnRpb24uLi4iKTsKKyAgICBmb3Ig
KGkgPSAwOyBpIDwgMjA0ODsgaSsrKSB7CisgICAgICAgIGRlbHRhID0gc3J0cF9pbmRleF9ndWVz
cygmbG9jYWwsICZlc3QsICh1aW50MTZfdClyZWYpOwogI2lmIFJPQ19WRVJCT1NFCi0gICAgcHJp
bnRmKCIlbGxkLCAlbGxkLCAlZFxuIiwgcmVmLCBlc3QsICBpKTsKKyAgICAgICAgcHJpbnRmKCIl
bGxkLCAlbGxkLCAlZFxuIiwgcmVmLCBlc3QsIGkpOwogI2VuZGlmCi0gICAgaWYgKHJlZiAhPSBl
c3QpIHsKKyAgICAgICAgaWYgKHJlZiAhPSBlc3QpIHsKICNpZiBST0NfVkVSQk9TRQotICAgICAg
cHJpbnRmKCIgKmJhZCBlc3RpbWF0ZSpcbiIpOworICAgICAgICAgICAgcHJpbnRmKCIgKmJhZCBl
c3RpbWF0ZSpcbiIpOwogI2VuZGlmCi0gICAgICArK251bV9iYWRfZXN0OworICAgICAgICAgICAg
KytudW1fYmFkX2VzdDsKKyAgICAgICAgfQorICAgICAgICBzcnRwX2luZGV4X2FkdmFuY2UoJnJl
ZiwgMSk7CisgICAgfQorICAgIGZhaWx1cmVfcmF0ZSA9IChkb3VibGUpbnVtX2JhZF9lc3QgLyBu
dW1fdHJpYWxzOworICAgIGlmIChmYWlsdXJlX3JhdGUgPiAwLjAxKSB7CisgICAgICAgIHByaW50
ZigiZXJyb3I6IGZhaWx1cmUgcmF0ZSB0b28gaGlnaCAoJWQgYmFkIGVzdGltYXRlcyBpbiAlZCB0
cmlhbHMpXG4iLAorICAgICAgICAgICAgICAgbnVtX2JhZF9lc3QsIG51bV90cmlhbHMpOworICAg
ICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2FsZ29fZmFpbDsKICAgICB9Ci0gICAgc3J0cF9p
bmRleF9hZHZhbmNlKCZyZWYsIDEpOwotICB9Ci0gIGZhaWx1cmVfcmF0ZSA9IChkb3VibGUpIG51
bV9iYWRfZXN0IC8gbnVtX3RyaWFsczsKLSAgaWYgKGZhaWx1cmVfcmF0ZSA+IDAuMDEpIHsKLSAg
ICBwcmludGYoImVycm9yOiBmYWlsdXJlIHJhdGUgdG9vIGhpZ2ggKCVkIGJhZCBlc3RpbWF0ZXMg
aW4gJWQgdHJpYWxzKVxuIiwgCi0JICAgbnVtX2JhZF9lc3QsIG51bV90cmlhbHMpOwotICAgIHJl
dHVybiBzcnRwX2Vycl9zdGF0dXNfYWxnb19mYWlsOwotICB9Ci0gIHByaW50ZigiZG9uZVxuIik7
Ci0KLQotICBwcmludGYoIlx0dGVzdGluZyBub24tc2VxdWVudGlhbCBpbnNlcnRpb24uLi4iKTsK
LSAgc3J0cF9pbmRleF9pbml0KCZsb2NhbCk7Ci0gIHNydHBfaW5kZXhfaW5pdCgmcmVmKTsKLSAg
c3J0cF9pbmRleF9pbml0KCZlc3QpOwotICB1dF9pbml0KCZ1dGMpOwotICAKLSAgZm9yIChpPTA7
IGkgPCBudW1fdHJpYWxzOyBpKyspIHsKLSAgICAKLSAgICAvKiBnZXQgbmV4dCBzZXEgbnVtIGZy
b20gdW5yZWxpYWJsZSB0cmFuc3BvcnQgc2ltdWxhdG9yICovCi0gICAgaXJjdmQgPSB1dF9uZXh0
X2luZGV4KCZ1dGMpOwotICAgIAotICAgIC8qIHNldCByZWYgdG8gdmFsdWUgb2YgaXJjdmQgKi8K
LSAgICByZWYgPSBpcmN2ZDsgCi0KLSAgICAvKiBlc3RpbWF0ZSBpbmRleCBiYXNlZCBvbiBsb3cg
Yml0cyBvZiBpcmN2ZCAqLwotICAgIGRlbHRhID0gc3J0cF9pbmRleF9ndWVzcygmbG9jYWwsICZl
c3QsICh1aW50MTZfdCkgcmVmKTsKKyAgICBwcmludGYoImRvbmVcbiIpOworCisgICAgcHJpbnRm
KCJcdHRlc3Rpbmcgbm9uLXNlcXVlbnRpYWwgaW5zZXJ0aW9uLi4uIik7CisgICAgc3J0cF9pbmRl
eF9pbml0KCZsb2NhbCk7CisgICAgc3J0cF9pbmRleF9pbml0KCZyZWYpOworICAgIHNydHBfaW5k
ZXhfaW5pdCgmZXN0KTsKKyAgICB1dF9pbml0KCZ1dGMpOworCisgICAgZm9yIChpID0gMDsgaSA8
IG51bV90cmlhbHM7IGkrKykgeworICAgICAgICAvKiBnZXQgbmV4dCBzZXEgbnVtIGZyb20gdW5y
ZWxpYWJsZSB0cmFuc3BvcnQgc2ltdWxhdG9yICovCisgICAgICAgIGlyY3ZkID0gdXRfbmV4dF9p
bmRleCgmdXRjKTsKKworICAgICAgICAvKiBzZXQgcmVmIHRvIHZhbHVlIG9mIGlyY3ZkICovCisg
ICAgICAgIHJlZiA9IGlyY3ZkOworCisgICAgICAgIC8qIGVzdGltYXRlIGluZGV4IGJhc2VkIG9u
IGxvdyBiaXRzIG9mIGlyY3ZkICovCisgICAgICAgIGRlbHRhID0gc3J0cF9pbmRleF9ndWVzcygm
bG9jYWwsICZlc3QsICh1aW50MTZfdClyZWYpOwogI2lmIFJPQ19WRVJCT1NFCi0gICAgcHJpbnRm
KCJyZWY6ICVsbGQsIGxvY2FsOiAlbGxkLCBlc3Q6ICVsbGQsIGlyY3ZkOiAlZCwgZGVsdGE6ICVk
XG4iLCAKLQkgICByZWYsIGxvY2FsLCBlc3QsIGlyY3ZkLCBkZWx0YSk7CisgICAgICAgIHByaW50
ZigicmVmOiAlbGxkLCBsb2NhbDogJWxsZCwgZXN0OiAlbGxkLCBpcmN2ZDogJWQsIGRlbHRhOiAl
ZFxuIiwgcmVmLAorICAgICAgICAgICAgICAgbG9jYWwsIGVzdCwgaXJjdmQsIGRlbHRhKTsKICNl
bmRpZgotICAgIAotICAgIGlmIChsb2NhbCArIGRlbHRhICE9IGVzdCkgewotICAgICAgcHJpbnRm
KCIgKmJhZCBkZWx0YSo6IGxvY2FsICVsbHUgKyBkZWx0YSAlZCAhPSBlc3QgJWxsdVxuIiwKLQkg
ICAgICh1bnNpZ25lZCBsb25nIGxvbmcpbG9jYWwsIGRlbHRhLCAodW5zaWduZWQgbG9uZyBsb25n
KWVzdCk7Ci0gICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2FsZ29fZmFpbDsKLSAgICB9CiAK
LSAgICAvKiBub3cgdXBkYXRlIGxvY2FsIHNydHBfeHRkX3NlcV9udW1fdCBhcyBuZWNlc3Nhcnkg
Ki8KLSAgICBpZiAoZGVsdGEgPiAwKSAKLSAgICAgIHNydHBfaW5kZXhfYWR2YW5jZSgmbG9jYWws
IGRlbHRhKTsKKyAgICAgICAgaWYgKGxvY2FsICsgZGVsdGEgIT0gZXN0KSB7CisgICAgICAgICAg
ICBwcmludGYoIiAqYmFkIGRlbHRhKjogbG9jYWwgJWxsdSArIGRlbHRhICVkICE9IGVzdCAlbGx1
XG4iLAorICAgICAgICAgICAgICAgICAgICh1bnNpZ25lZCBsb25nIGxvbmcpbG9jYWwsIGRlbHRh
LCAodW5zaWduZWQgbG9uZyBsb25nKWVzdCk7CisgICAgICAgICAgICByZXR1cm4gc3J0cF9lcnJf
c3RhdHVzX2FsZ29fZmFpbDsKKyAgICAgICAgfQorCisgICAgICAgIC8qIG5vdyB1cGRhdGUgbG9j
YWwgc3J0cF94dGRfc2VxX251bV90IGFzIG5lY2Vzc2FyeSAqLworICAgICAgICBpZiAoZGVsdGEg
PiAwKQorICAgICAgICAgICAgc3J0cF9pbmRleF9hZHZhbmNlKCZsb2NhbCwgZGVsdGEpOwogCi0g
ICAgaWYgKHJlZiAhPSBlc3QpIHsKKyAgICAgICAgaWYgKHJlZiAhPSBlc3QpIHsKICNpZiBST0Nf
VkVSQk9TRQotICAgICAgcHJpbnRmKCIgKmJhZCBlc3RpbWF0ZSpcbiIpOworICAgICAgICAgICAg
cHJpbnRmKCIgKmJhZCBlc3RpbWF0ZSpcbiIpOwogI2VuZGlmCi0gICAgICAvKiByZWNvcmQgZmFp
bHVyZSBldmVudCAqLwotICAgICAgKytudW1fYmFkX2VzdDsKLSAgICAgIAotICAgICAgLyogcmVz
ZXQgbG9jYWwgdmFsdWUgdG8gY29ycmVjdCB2YWx1ZSAqLwotICAgICAgbG9jYWwgPSByZWY7Cisg
ICAgICAgICAgICAvKiByZWNvcmQgZmFpbHVyZSBldmVudCAqLworICAgICAgICAgICAgKytudW1f
YmFkX2VzdDsKKworICAgICAgICAgICAgLyogcmVzZXQgbG9jYWwgdmFsdWUgdG8gY29ycmVjdCB2
YWx1ZSAqLworICAgICAgICAgICAgbG9jYWwgPSByZWY7CisgICAgICAgIH0KICAgICB9Ci0gIH0K
LSAgZmFpbHVyZV9yYXRlID0gKGRvdWJsZSkgbnVtX2JhZF9lc3QgLyBudW1fdHJpYWxzOwotICBp
ZiAoZmFpbHVyZV9yYXRlID4gMC4wMSkgewotICAgIHByaW50ZigiZXJyb3I6IGZhaWx1cmUgcmF0
ZSB0b28gaGlnaCAoJWQgYmFkIGVzdGltYXRlcyBpbiAlZCB0cmlhbHMpXG4iLCAKLQkgICBudW1f
YmFkX2VzdCwgbnVtX3RyaWFscyk7Ci0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19hbGdvX2Zh
aWw7Ci0gIH0KLSAgcHJpbnRmKCJkb25lXG4iKTsKLQotICByZXR1cm4gc3J0cF9lcnJfc3RhdHVz
X29rOworICAgIGZhaWx1cmVfcmF0ZSA9IChkb3VibGUpbnVtX2JhZF9lc3QgLyBudW1fdHJpYWxz
OworICAgIGlmIChmYWlsdXJlX3JhdGUgPiAwLjAxKSB7CisgICAgICAgIHByaW50ZigiZXJyb3I6
IGZhaWx1cmUgcmF0ZSB0b28gaGlnaCAoJWQgYmFkIGVzdGltYXRlcyBpbiAlZCB0cmlhbHMpXG4i
LAorICAgICAgICAgICAgICAgbnVtX2JhZF9lc3QsIG51bV90cmlhbHMpOworICAgICAgICByZXR1
cm4gc3J0cF9lcnJfc3RhdHVzX2FsZ29fZmFpbDsKKyAgICB9CisgICAgcHJpbnRmKCJkb25lXG4i
KTsKKworICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvdGVzdC9y
dHAuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGli
c3J0cC90ZXN0L3J0cC5jCmluZGV4IDc0Y2I5MDIxNzk2ZDVjZjlmZmQ4ODc4MjRhN2MzOWYwYTMz
MDZiOWUuLmY2MGE5YjExYjI4ODUwZTYwMjU4MDBkYzk1ODNjYWFhNDEwODY0OGMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0
cC90ZXN0L3J0cC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlic3J0cC90ZXN0L3J0cC5jCkBAIC04LDI2ICs4LDI2IEBACiAgKi8KIAogLyoK
LSAqCQorICoKICAqIENvcHlyaWdodCAoYykgMjAwMS0yMDE3LCBDaXNjbyBTeXN0ZW1zLCBJbmMu
CiAgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICogCisgKgogICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKICAqIGFyZSBtZXQ6Ci0gKiAKKyAqCiAgKiAgIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3Vy
Y2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CiAgKiAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIAor
ICoKICAqICAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZQogICogICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZwogICogICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFu
ZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQKICAqICAgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgotICogCisgKgogICogICBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBDaXNjbyBTeXN0ZW1zLCBJ
bmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCiAgKiAgIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0
byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZAogICogICBmcm9tIHRoaXMgc29m
dHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0gKiAKKyAq
CiAgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBB
TkQgQ09OVFJJQlVUT1JTCiAgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAogICogTElNSVRFRCBUTywgVEhFIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKQEAgLTUwLDE3OCArNTAs
MTc4IEBACiAKICNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KICNpZmRlZiBIQVZFX1NZU19TT0NLRVRf
SAotIyBpbmNsdWRlIDxzeXMvc29ja2V0Lmg+CisjaW5jbHVkZSA8c3lzL3NvY2tldC5oPgogI2Vu
ZGlmCiAKLSNkZWZpbmUgUFJJTlRfREVCVUcgICAgMCAgICAvKiBzZXQgdG8gMSB0byBwcmludCBv
dXQgZGVidWdnaW5nIGRhdGEgKi8KLSNkZWZpbmUgVkVSQk9TRV9ERUJVRyAgMCAgICAvKiBzZXQg
dG8gMSB0byBwcmludCBvdXQgbW9yZSBkYXRhICAgICAgKi8KLQotaW50Ci1ydHBfc2VuZHRvKHJ0
cF9zZW5kZXJfdCBzZW5kZXIsIGNvbnN0IHZvaWQqIG1zZywgaW50IGxlbikgewotICBpbnQgb2N0
ZXRzX3NlbnQ7Ci0gIHNydHBfZXJyX3N0YXR1c190IHN0YXQ7Ci0gIGludCBwa3RfbGVuID0gbGVu
ICsgUlRQX0hFQURFUl9MRU47Ci0KLSAgLyogbWFyc2hhbCBkYXRhICovCi0gIHN0cm5jcHkoc2Vu
ZGVyLT5tZXNzYWdlLmJvZHksIG1zZywgbGVuKTsKLSAgCi0gIC8qIHVwZGF0ZSBoZWFkZXIgKi8K
LSAgc2VuZGVyLT5tZXNzYWdlLmhlYWRlci5zZXEgPSBudG9ocyhzZW5kZXItPm1lc3NhZ2UuaGVh
ZGVyLnNlcSkgKyAxOwotICBzZW5kZXItPm1lc3NhZ2UuaGVhZGVyLnNlcSA9IGh0b25zKHNlbmRl
ci0+bWVzc2FnZS5oZWFkZXIuc2VxKTsKLSAgc2VuZGVyLT5tZXNzYWdlLmhlYWRlci50cyA9IG50
b2hsKHNlbmRlci0+bWVzc2FnZS5oZWFkZXIudHMpICsgMTsKLSAgc2VuZGVyLT5tZXNzYWdlLmhl
YWRlci50cyA9IGh0b25sKHNlbmRlci0+bWVzc2FnZS5oZWFkZXIudHMpOwotICAKLSAgLyogYXBw
bHkgc3J0cCAqLwotICBzdGF0ID0gc3J0cF9wcm90ZWN0KHNlbmRlci0+c3J0cF9jdHgsICZzZW5k
ZXItPm1lc3NhZ2UuaGVhZGVyLCAmcGt0X2xlbik7Ci0gIGlmIChzdGF0KSB7CisjZGVmaW5lIFBS
SU5UX0RFQlVHIDAgICAvKiBzZXQgdG8gMSB0byBwcmludCBvdXQgZGVidWdnaW5nIGRhdGEgKi8K
KyNkZWZpbmUgVkVSQk9TRV9ERUJVRyAwIC8qIHNldCB0byAxIHRvIHByaW50IG91dCBtb3JlIGRh
dGEgICAgICAqLworCitpbnQgcnRwX3NlbmR0byhydHBfc2VuZGVyX3Qgc2VuZGVyLCBjb25zdCB2
b2lkICptc2csIGludCBsZW4pCit7CisgICAgaW50IG9jdGV0c19zZW50OworICAgIHNydHBfZXJy
X3N0YXR1c190IHN0YXQ7CisgICAgaW50IHBrdF9sZW4gPSBsZW4gKyBSVFBfSEVBREVSX0xFTjsK
KworICAgIC8qIG1hcnNoYWwgZGF0YSAqLworICAgIHN0cm5jcHkoc2VuZGVyLT5tZXNzYWdlLmJv
ZHksIG1zZywgbGVuKTsKKworICAgIC8qIHVwZGF0ZSBoZWFkZXIgKi8KKyAgICBzZW5kZXItPm1l
c3NhZ2UuaGVhZGVyLnNlcSA9IG50b2hzKHNlbmRlci0+bWVzc2FnZS5oZWFkZXIuc2VxKSArIDE7
CisgICAgc2VuZGVyLT5tZXNzYWdlLmhlYWRlci5zZXEgPSBodG9ucyhzZW5kZXItPm1lc3NhZ2Uu
aGVhZGVyLnNlcSk7CisgICAgc2VuZGVyLT5tZXNzYWdlLmhlYWRlci50cyA9IG50b2hsKHNlbmRl
ci0+bWVzc2FnZS5oZWFkZXIudHMpICsgMTsKKyAgICBzZW5kZXItPm1lc3NhZ2UuaGVhZGVyLnRz
ID0gaHRvbmwoc2VuZGVyLT5tZXNzYWdlLmhlYWRlci50cyk7CisKKyAgICAvKiBhcHBseSBzcnRw
ICovCisgICAgc3RhdCA9IHNydHBfcHJvdGVjdChzZW5kZXItPnNydHBfY3R4LCAmc2VuZGVyLT5t
ZXNzYWdlLmhlYWRlciwgJnBrdF9sZW4pOworICAgIGlmIChzdGF0KSB7CiAjaWYgUFJJTlRfREVC
VUcKLSAgICBmcHJpbnRmKHN0ZGVyciwgImVycm9yOiBzcnRwIHByb3RlY3Rpb24gZmFpbGVkIHdp
dGggY29kZSAlZFxuIiwgc3RhdCk7CisgICAgICAgIGZwcmludGYoc3RkZXJyLCAiZXJyb3I6IHNy
dHAgcHJvdGVjdGlvbiBmYWlsZWQgd2l0aCBjb2RlICVkXG4iLCBzdGF0KTsKICNlbmRpZgotICAg
IHJldHVybiAtMTsKLSAgfQorICAgICAgICByZXR1cm4gLTE7CisgICAgfQogI2lmIFZFUkJPU0Vf
REVCVUcKLSAgc3J0cF9wcmludF9wYWNrZXQoJnNlbmRlci0+bWVzc2FnZS5oZWFkZXIsIHBrdF9s
ZW4pOworICAgIHNydHBfcHJpbnRfcGFja2V0KCZzZW5kZXItPm1lc3NhZ2UuaGVhZGVyLCBwa3Rf
bGVuKTsKICNlbmRpZgotICBvY3RldHNfc2VudCA9IHNlbmR0byhzZW5kZXItPnNvY2tldCwgKHZv
aWQqKSZzZW5kZXItPm1lc3NhZ2UsCi0JCSAgICAgICBwa3RfbGVuLCAwLCAoc3RydWN0IHNvY2th
ZGRyICopJnNlbmRlci0+YWRkciwKLQkJICAgICAgIHNpemVvZiAoc3RydWN0IHNvY2thZGRyX2lu
KSk7CisgICAgb2N0ZXRzX3NlbnQgPQorICAgICAgICBzZW5kdG8oc2VuZGVyLT5zb2NrZXQsICh2
b2lkICopJnNlbmRlci0+bWVzc2FnZSwgcGt0X2xlbiwgMCwKKyAgICAgICAgICAgICAgIChzdHJ1
Y3Qgc29ja2FkZHIgKikmc2VuZGVyLT5hZGRyLCBzaXplb2Yoc3RydWN0IHNvY2thZGRyX2luKSk7
CiAKLSAgaWYgKG9jdGV0c19zZW50ICE9IHBrdF9sZW4pIHsKKyAgICBpZiAob2N0ZXRzX3NlbnQg
IT0gcGt0X2xlbikgewogI2lmIFBSSU5UX0RFQlVHCi0gICAgZnByaW50ZihzdGRlcnIsICJlcnJv
cjogY291bGRuJ3Qgc2VuZCBtZXNzYWdlICVzIiwgKGNoYXIgKiltc2cpOwotICAgIHBlcnJvcigi
Iik7CisgICAgICAgIGZwcmludGYoc3RkZXJyLCAiZXJyb3I6IGNvdWxkbid0IHNlbmQgbWVzc2Fn
ZSAlcyIsIChjaGFyICopbXNnKTsKKyAgICAgICAgcGVycm9yKCIiKTsKICNlbmRpZgotICB9Cisg
ICAgfQogCi0gIHJldHVybiBvY3RldHNfc2VudDsKKyAgICByZXR1cm4gb2N0ZXRzX3NlbnQ7CiB9
CiAKLWludAotcnRwX3JlY3Zmcm9tKHJ0cF9yZWNlaXZlcl90IHJlY2VpdmVyLCB2b2lkICptc2cs
IGludCAqbGVuKSB7Ci0gIGludCBvY3RldHNfcmVjdmQ7Ci0gIHNydHBfZXJyX3N0YXR1c190IHN0
YXQ7Ci0gIAotICBvY3RldHNfcmVjdmQgPSByZWN2ZnJvbShyZWNlaXZlci0+c29ja2V0LCAodm9p
ZCAqKSZyZWNlaXZlci0+bWVzc2FnZSwKLQkJCSAqbGVuLCAwLCAoc3RydWN0IHNvY2thZGRyICop
IE5VTEwsIDApOwotCi0gIGlmIChvY3RldHNfcmVjdmQgPT0gLTEpIHsKLSAgICAqbGVuID0gMDsK
LSAgICByZXR1cm4gLTE7Ci0gIH0KLQotICAvKiB2ZXJpZnkgcnRwIGhlYWRlciAqLwotICBpZiAo
cmVjZWl2ZXItPm1lc3NhZ2UuaGVhZGVyLnZlcnNpb24gIT0gMikgewotICAgICpsZW4gPSAwOwot
ICAgIHJldHVybiAtMTsKLSAgfQoraW50IHJ0cF9yZWN2ZnJvbShydHBfcmVjZWl2ZXJfdCByZWNl
aXZlciwgdm9pZCAqbXNnLCBpbnQgKmxlbikKK3sKKyAgICBpbnQgb2N0ZXRzX3JlY3ZkOworICAg
IHNydHBfZXJyX3N0YXR1c190IHN0YXQ7CisKKyAgICBvY3RldHNfcmVjdmQgPSByZWN2ZnJvbShy
ZWNlaXZlci0+c29ja2V0LCAodm9pZCAqKSZyZWNlaXZlci0+bWVzc2FnZSwgKmxlbiwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAwLCAoc3RydWN0IHNvY2thZGRyICopTlVMTCwgMCk7CisK
KyAgICBpZiAob2N0ZXRzX3JlY3ZkID09IC0xKSB7CisgICAgICAgICpsZW4gPSAwOworICAgICAg
ICByZXR1cm4gLTE7CisgICAgfQorCisgICAgLyogdmVyaWZ5IHJ0cCBoZWFkZXIgKi8KKyAgICBp
ZiAocmVjZWl2ZXItPm1lc3NhZ2UuaGVhZGVyLnZlcnNpb24gIT0gMikgeworICAgICAgICAqbGVu
ID0gMDsKKyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KIAogI2lmIFBSSU5UX0RFQlVHCi0gIGZw
cmludGYoc3RkZXJyLCAiJWQgb2N0ZXRzIHJlY2VpdmVkIGZyb20gU1NSQyAldVxuIiwKLQkgIG9j
dGV0c19yZWN2ZCwgcmVjZWl2ZXItPm1lc3NhZ2UuaGVhZGVyLnNzcmMpOworICAgIGZwcmludGYo
c3RkZXJyLCAiJWQgb2N0ZXRzIHJlY2VpdmVkIGZyb20gU1NSQyAldVxuIiwgb2N0ZXRzX3JlY3Zk
LAorICAgICAgICAgICAgcmVjZWl2ZXItPm1lc3NhZ2UuaGVhZGVyLnNzcmMpOwogI2VuZGlmCiAj
aWYgVkVSQk9TRV9ERUJVRwotICBzcnRwX3ByaW50X3BhY2tldCgmcmVjZWl2ZXItPm1lc3NhZ2Uu
aGVhZGVyLCBvY3RldHNfcmVjdmQpOworICAgIHNydHBfcHJpbnRfcGFja2V0KCZyZWNlaXZlci0+
bWVzc2FnZS5oZWFkZXIsIG9jdGV0c19yZWN2ZCk7CiAjZW5kaWYKIAotICAvKiBhcHBseSBzcnRw
ICovCi0gIHN0YXQgPSBzcnRwX3VucHJvdGVjdChyZWNlaXZlci0+c3J0cF9jdHgsCi0JCQkmcmVj
ZWl2ZXItPm1lc3NhZ2UuaGVhZGVyLCAmb2N0ZXRzX3JlY3ZkKTsKLSAgaWYgKHN0YXQpIHsKLSAg
ICBmcHJpbnRmKHN0ZGVyciwKLQkgICAgImVycm9yOiBzcnRwIHVucHJvdGVjdGlvbiBmYWlsZWQg
d2l0aCBjb2RlICVkJXNcbiIsIHN0YXQsCi0JICAgIHN0YXQgPT0gc3J0cF9lcnJfc3RhdHVzX3Jl
cGxheV9mYWlsID8gIiAocmVwbGF5IGNoZWNrIGZhaWxlZCkiIDoKLQkgICAgc3RhdCA9PSBzcnRw
X2Vycl9zdGF0dXNfYXV0aF9mYWlsID8gIiAoYXV0aCBjaGVjayBmYWlsZWQpIiA6ICIiKTsKLSAg
ICByZXR1cm4gLTE7Ci0gIH0KLSAgc3RybmNweShtc2csIHJlY2VpdmVyLT5tZXNzYWdlLmJvZHks
IG9jdGV0c19yZWN2ZCk7Ci0gIAotICByZXR1cm4gb2N0ZXRzX3JlY3ZkOworICAgIC8qIGFwcGx5
IHNydHAgKi8KKyAgICBzdGF0ID0gc3J0cF91bnByb3RlY3QocmVjZWl2ZXItPnNydHBfY3R4LCAm
cmVjZWl2ZXItPm1lc3NhZ2UuaGVhZGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAmb2N0
ZXRzX3JlY3ZkKTsKKyAgICBpZiAoc3RhdCkgeworICAgICAgICBmcHJpbnRmKHN0ZGVyciwgImVy
cm9yOiBzcnRwIHVucHJvdGVjdGlvbiBmYWlsZWQgd2l0aCBjb2RlICVkJXNcbiIsCisgICAgICAg
ICAgICAgICAgc3RhdCwKKyAgICAgICAgICAgICAgICBzdGF0ID09IHNydHBfZXJyX3N0YXR1c19y
ZXBsYXlfZmFpbAorICAgICAgICAgICAgICAgICAgICA/ICIgKHJlcGxheSBjaGVjayBmYWlsZWQp
IgorICAgICAgICAgICAgICAgICAgICA6IHN0YXQgPT0gc3J0cF9lcnJfc3RhdHVzX2F1dGhfZmFp
bCA/ICIgKGF1dGggY2hlY2sgZmFpbGVkKSIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAiIik7CisgICAgICAgIHJldHVybiAtMTsKKyAg
ICB9CisgICAgc3RybmNweShtc2csIHJlY2VpdmVyLT5tZXNzYWdlLmJvZHksIG9jdGV0c19yZWN2
ZCk7CisKKyAgICByZXR1cm4gb2N0ZXRzX3JlY3ZkOwogfQogCi1pbnQKLXJ0cF9zZW5kZXJfaW5p
dChydHBfc2VuZGVyX3Qgc2VuZGVyLCAKLQkJaW50IHNvY2ssIAotCQlzdHJ1Y3Qgc29ja2FkZHJf
aW4gYWRkciwKLQkJdW5zaWduZWQgaW50IHNzcmMpIHsKLQotICAvKiBzZXQgaGVhZGVyIHZhbHVl
cyAqLwotICBzZW5kZXItPm1lc3NhZ2UuaGVhZGVyLnNzcmMgICAgPSBodG9ubChzc3JjKTsKLSAg
c2VuZGVyLT5tZXNzYWdlLmhlYWRlci50cyAgICAgID0gMDsKLSAgc2VuZGVyLT5tZXNzYWdlLmhl
YWRlci5zZXEgICAgID0gKHVpbnQxNl90KSByYW5kKCk7Ci0gIHNlbmRlci0+bWVzc2FnZS5oZWFk
ZXIubSAgICAgICA9IDA7Ci0gIHNlbmRlci0+bWVzc2FnZS5oZWFkZXIucHQgICAgICA9IDB4MTsK
LSAgc2VuZGVyLT5tZXNzYWdlLmhlYWRlci52ZXJzaW9uID0gMjsKLSAgc2VuZGVyLT5tZXNzYWdl
LmhlYWRlci5wICAgICAgID0gMDsKLSAgc2VuZGVyLT5tZXNzYWdlLmhlYWRlci54ICAgICAgID0g
MDsKLSAgc2VuZGVyLT5tZXNzYWdlLmhlYWRlci5jYyAgICAgID0gMDsKLQotICAvKiBzZXQgb3Ro
ZXIgc3R1ZmYgKi8KLSAgc2VuZGVyLT5zb2NrZXQgPSBzb2NrOwotICBzZW5kZXItPmFkZHIgPSBh
ZGRyOwotCi0gIHJldHVybiAwOworaW50IHJ0cF9zZW5kZXJfaW5pdChydHBfc2VuZGVyX3Qgc2Vu
ZGVyLAorICAgICAgICAgICAgICAgICAgICBpbnQgc29jaywKKyAgICAgICAgICAgICAgICAgICAg
c3RydWN0IHNvY2thZGRyX2luIGFkZHIsCisgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGlu
dCBzc3JjKQoreworICAgIC8qIHNldCBoZWFkZXIgdmFsdWVzICovCisgICAgc2VuZGVyLT5tZXNz
YWdlLmhlYWRlci5zc3JjID0gaHRvbmwoc3NyYyk7CisgICAgc2VuZGVyLT5tZXNzYWdlLmhlYWRl
ci50cyA9IDA7CisgICAgc2VuZGVyLT5tZXNzYWdlLmhlYWRlci5zZXEgPSAodWludDE2X3QpcmFu
ZCgpOworICAgIHNlbmRlci0+bWVzc2FnZS5oZWFkZXIubSA9IDA7CisgICAgc2VuZGVyLT5tZXNz
YWdlLmhlYWRlci5wdCA9IDB4MTsKKyAgICBzZW5kZXItPm1lc3NhZ2UuaGVhZGVyLnZlcnNpb24g
PSAyOworICAgIHNlbmRlci0+bWVzc2FnZS5oZWFkZXIucCA9IDA7CisgICAgc2VuZGVyLT5tZXNz
YWdlLmhlYWRlci54ID0gMDsKKyAgICBzZW5kZXItPm1lc3NhZ2UuaGVhZGVyLmNjID0gMDsKKwor
ICAgIC8qIHNldCBvdGhlciBzdHVmZiAqLworICAgIHNlbmRlci0+c29ja2V0ID0gc29jazsKKyAg
ICBzZW5kZXItPmFkZHIgPSBhZGRyOworCisgICAgcmV0dXJuIDA7CiB9CiAKLWludAotcnRwX3Jl
Y2VpdmVyX2luaXQocnRwX3JlY2VpdmVyX3QgcmN2ciwgCi0JCSAgaW50IHNvY2ssIAotCQkgIHN0
cnVjdCBzb2NrYWRkcl9pbiBhZGRyLAotCQkgIHVuc2lnbmVkIGludCBzc3JjKSB7Ci0gIAotICAv
KiBzZXQgaGVhZGVyIHZhbHVlcyAqLwotICByY3ZyLT5tZXNzYWdlLmhlYWRlci5zc3JjICAgID0g
aHRvbmwoc3NyYyk7Ci0gIHJjdnItPm1lc3NhZ2UuaGVhZGVyLnRzICAgICAgPSAwOwotICByY3Zy
LT5tZXNzYWdlLmhlYWRlci5zZXEgICAgID0gMDsKLSAgcmN2ci0+bWVzc2FnZS5oZWFkZXIubSAg
ICAgICA9IDA7Ci0gIHJjdnItPm1lc3NhZ2UuaGVhZGVyLnB0ICAgICAgPSAweDE7Ci0gIHJjdnIt
Pm1lc3NhZ2UuaGVhZGVyLnZlcnNpb24gPSAyOwotICByY3ZyLT5tZXNzYWdlLmhlYWRlci5wICAg
ICAgID0gMDsKLSAgcmN2ci0+bWVzc2FnZS5oZWFkZXIueCAgICAgICA9IDA7Ci0gIHJjdnItPm1l
c3NhZ2UuaGVhZGVyLmNjICAgICAgPSAwOwotCi0gIC8qIHNldCBvdGhlciBzdHVmZiAqLwotICBy
Y3ZyLT5zb2NrZXQgPSBzb2NrOwotICByY3ZyLT5hZGRyID0gYWRkcjsKLQotICByZXR1cm4gMDsK
K2ludCBydHBfcmVjZWl2ZXJfaW5pdChydHBfcmVjZWl2ZXJfdCByY3ZyLAorICAgICAgICAgICAg
ICAgICAgICAgIGludCBzb2NrLAorICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdCBzb2NrYWRk
cl9pbiBhZGRyLAorICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBzc3JjKQorewor
ICAgIC8qIHNldCBoZWFkZXIgdmFsdWVzICovCisgICAgcmN2ci0+bWVzc2FnZS5oZWFkZXIuc3Ny
YyA9IGh0b25sKHNzcmMpOworICAgIHJjdnItPm1lc3NhZ2UuaGVhZGVyLnRzID0gMDsKKyAgICBy
Y3ZyLT5tZXNzYWdlLmhlYWRlci5zZXEgPSAwOworICAgIHJjdnItPm1lc3NhZ2UuaGVhZGVyLm0g
PSAwOworICAgIHJjdnItPm1lc3NhZ2UuaGVhZGVyLnB0ID0gMHgxOworICAgIHJjdnItPm1lc3Nh
Z2UuaGVhZGVyLnZlcnNpb24gPSAyOworICAgIHJjdnItPm1lc3NhZ2UuaGVhZGVyLnAgPSAwOwor
ICAgIHJjdnItPm1lc3NhZ2UuaGVhZGVyLnggPSAwOworICAgIHJjdnItPm1lc3NhZ2UuaGVhZGVy
LmNjID0gMDsKKworICAgIC8qIHNldCBvdGhlciBzdHVmZiAqLworICAgIHJjdnItPnNvY2tldCA9
IHNvY2s7CisgICAgcmN2ci0+YWRkciA9IGFkZHI7CisKKyAgICByZXR1cm4gMDsKIH0KIAotaW50
Ci1ydHBfc2VuZGVyX2luaXRfc3J0cChydHBfc2VuZGVyX3Qgc2VuZGVyLCBjb25zdCBzcnRwX3Bv
bGljeV90ICpwb2xpY3kpIHsKLSAgcmV0dXJuIHNydHBfY3JlYXRlKCZzZW5kZXItPnNydHBfY3R4
LCBwb2xpY3kpOworaW50IHJ0cF9zZW5kZXJfaW5pdF9zcnRwKHJ0cF9zZW5kZXJfdCBzZW5kZXIs
IGNvbnN0IHNydHBfcG9saWN5X3QgKnBvbGljeSkKK3sKKyAgICByZXR1cm4gc3J0cF9jcmVhdGUo
JnNlbmRlci0+c3J0cF9jdHgsIHBvbGljeSk7CiB9CiAKLWludAotcnRwX3NlbmRlcl9kZWluaXRf
c3J0cChydHBfc2VuZGVyX3Qgc2VuZGVyKSB7Ci0gIHJldHVybiBzcnRwX2RlYWxsb2Moc2VuZGVy
LT5zcnRwX2N0eCk7CitpbnQgcnRwX3NlbmRlcl9kZWluaXRfc3J0cChydHBfc2VuZGVyX3Qgc2Vu
ZGVyKQoreworICAgIHJldHVybiBzcnRwX2RlYWxsb2Moc2VuZGVyLT5zcnRwX2N0eCk7CiB9CiAK
LWludAotcnRwX3JlY2VpdmVyX2luaXRfc3J0cChydHBfcmVjZWl2ZXJfdCBzZW5kZXIsIGNvbnN0
IHNydHBfcG9saWN5X3QgKnBvbGljeSkgewotICByZXR1cm4gc3J0cF9jcmVhdGUoJnNlbmRlci0+
c3J0cF9jdHgsIHBvbGljeSk7CitpbnQgcnRwX3JlY2VpdmVyX2luaXRfc3J0cChydHBfcmVjZWl2
ZXJfdCBzZW5kZXIsIGNvbnN0IHNydHBfcG9saWN5X3QgKnBvbGljeSkKK3sKKyAgICByZXR1cm4g
c3J0cF9jcmVhdGUoJnNlbmRlci0+c3J0cF9jdHgsIHBvbGljeSk7CiB9CiAKLWludAotcnRwX3Jl
Y2VpdmVyX2RlaW5pdF9zcnRwKHJ0cF9yZWNlaXZlcl90IHNlbmRlcikgewotICByZXR1cm4gc3J0
cF9kZWFsbG9jKHNlbmRlci0+c3J0cF9jdHgpOworaW50IHJ0cF9yZWNlaXZlcl9kZWluaXRfc3J0
cChydHBfcmVjZWl2ZXJfdCBzZW5kZXIpCit7CisgICAgcmV0dXJuIHNydHBfZGVhbGxvYyhzZW5k
ZXItPnNydHBfY3R4KTsKIH0KIAotcnRwX3NlbmRlcl90IAotcnRwX3NlbmRlcl9hbGxvYyh2b2lk
KSB7Ci0gIHJldHVybiAocnRwX3NlbmRlcl90KW1hbGxvYyhzaXplb2YocnRwX3NlbmRlcl9jdHhf
dCkpOworcnRwX3NlbmRlcl90IHJ0cF9zZW5kZXJfYWxsb2Modm9pZCkKK3sKKyAgICByZXR1cm4g
KHJ0cF9zZW5kZXJfdCltYWxsb2Moc2l6ZW9mKHJ0cF9zZW5kZXJfY3R4X3QpKTsKIH0KIAotdm9p
ZAotcnRwX3NlbmRlcl9kZWFsbG9jKHJ0cF9zZW5kZXJfdCBydHBfY3R4KSB7Ci0gIGZyZWUocnRw
X2N0eCk7Cit2b2lkIHJ0cF9zZW5kZXJfZGVhbGxvYyhydHBfc2VuZGVyX3QgcnRwX2N0eCkKK3sK
KyAgICBmcmVlKHJ0cF9jdHgpOwogfQogCi1ydHBfcmVjZWl2ZXJfdCAKLXJ0cF9yZWNlaXZlcl9h
bGxvYyh2b2lkKSB7Ci0gIHJldHVybiAocnRwX3JlY2VpdmVyX3QpbWFsbG9jKHNpemVvZihydHBf
cmVjZWl2ZXJfY3R4X3QpKTsKK3J0cF9yZWNlaXZlcl90IHJ0cF9yZWNlaXZlcl9hbGxvYyh2b2lk
KQoreworICAgIHJldHVybiAocnRwX3JlY2VpdmVyX3QpbWFsbG9jKHNpemVvZihydHBfcmVjZWl2
ZXJfY3R4X3QpKTsKIH0KIAotdm9pZAotcnRwX3JlY2VpdmVyX2RlYWxsb2MocnRwX3JlY2VpdmVy
X3QgcnRwX2N0eCkgewotICBmcmVlKHJ0cF9jdHgpOwordm9pZCBydHBfcmVjZWl2ZXJfZGVhbGxv
YyhydHBfcmVjZWl2ZXJfdCBydHBfY3R4KQoreworICAgIGZyZWUocnRwX2N0eCk7CiB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnNydHAvdGVzdC9ydHAuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlic3J0cC90ZXN0L3J0cC5oCmluZGV4IGQwMTA1MDhkZTMyZmRkOGFjYWVmMDFm
OGNhN2ZhNTY5ZDI2NDMwZDIuLjM3OTIxYTY2NWMwYTMxNjVkOThiNWVlOWZkZTU3ZGIyNDc4MjZk
MmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlic3J0cC90ZXN0L3J0cC5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC90ZXN0L3J0cC5oCkBAIC0xLDYgKzEsNiBAQAog
LyoKICAqIHJ0cC5oCi0gKiAKKyAqCiAgKiBydHAgaW50ZXJmYWNlIGZvciBzcnRwIHJlZmVyZW5j
ZSBpbXBsZW1lbnRhdGlvbgogICoKICAqIERhdmlkIEEuIE1jR3JldwpAQCAtMTUsMjYgKzE1LDI2
IEBACiAgKi8KIAogLyoKLSAqCQorICoKICAqIENvcHlyaWdodCAoYykgMjAwMS0yMDE3LCBDaXNj
byBTeXN0ZW1zLCBJbmMuCiAgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICogCisgKgogICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKICAqIGFyZSBtZXQ6Ci0gKiAKKyAqCiAgKiAgIFJlZGlzdHJp
YnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CiAg
KiAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KLSAqIAorICoKICAqICAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQogICogICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwogICogICBkaXNjbGFpbWVyIGluIHRoZSBk
b2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQKICAqICAgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgotICogCisgKgogICogICBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBD
aXNjbyBTeXN0ZW1zLCBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCiAgKiAgIGNvbnRyaWJ1dG9y
cyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZAogICog
ICBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1p
c3Npb24uCi0gKiAKKyAqCiAgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZ
UklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCiAgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAogICogTElNSVRFRCBU
TywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MK
QEAgLTUwLDE0ICs1MCwxMyBAQAogICoKICAqLwogCi0KICNpZm5kZWYgU1JUUF9SVFBfSAogI2Rl
ZmluZSBTUlRQX1JUUF9ICiAKICNpZmRlZiBIQVZFX05FVElORVRfSU5fSAotIyBpbmNsdWRlIDxu
ZXRpbmV0L2luLmg+CisjaW5jbHVkZSA8bmV0aW5ldC9pbi5oPgogI2VsaWYgZGVmaW5lZCBIQVZF
X1dJTlNPQ0syX0gKLSMgaW5jbHVkZSA8d2luc29jazIuaD4KKyNpbmNsdWRlIDx3aW5zb2NrMi5o
PgogI2VuZGlmCiAKICNpbmNsdWRlICJzcnRwX3ByaXYuaCIKQEAgLTY5LDk4ICs2OCw4NSBAQCBl
eHRlcm4gIkMiIHsKIC8qCiAgKiBSVFBfSEVBREVSX0xFTiBpbmRpY2F0ZXMgdGhlIHNpemUgb2Yg
YW4gUlRQIGhlYWRlcgogICovCi0jZGVmaW5lIFJUUF9IRUFERVJfTEVOICAgMTIKKyNkZWZpbmUg
UlRQX0hFQURFUl9MRU4gMTIKIAotLyogCisvKgogICogUlRQX01BWF9CVUZfTEVOIGRlZmluZXMg
dGhlIGxhcmdlc3QgUlRQIHBhY2tldCBpbiB0aGUgcnRwLmMgaW1wbGVtZW50YXRpb24KICAqLwot
I2RlZmluZSBSVFBfTUFYX0JVRl9MRU4gIDE2Mzg0Ci0KKyNkZWZpbmUgUlRQX01BWF9CVUZfTEVO
IDE2Mzg0CiAKIHR5cGVkZWYgc3J0cF9oZHJfdCBydHBfaGRyX3Q7CiAKIHR5cGVkZWYgc3RydWN0
IHsKLSAgc3J0cF9oZHJfdCBoZWFkZXI7ICAgICAgICAKLSAgY2hhciBib2R5W1JUUF9NQVhfQlVG
X0xFTl07ICAKKyAgICBzcnRwX2hkcl90IGhlYWRlcjsKKyAgICBjaGFyIGJvZHlbUlRQX01BWF9C
VUZfTEVOXTsKIH0gcnRwX21zZ190OwogCiB0eXBlZGVmIHN0cnVjdCBydHBfc2VuZGVyX2N0eF90
IHsKLSAgcnRwX21zZ190IG1lc3NhZ2U7ICAgICAgICAgCi0gIGludCBzb2NrZXQ7Ci0gIHNydHBf
Y3R4X3QgKnNydHBfY3R4OwotICBzdHJ1Y3Qgc29ja2FkZHJfaW4gYWRkcjsgICAvKiByZWNpZXZl
cidzIGFkZHJlc3MgKi8KKyAgICBydHBfbXNnX3QgbWVzc2FnZTsKKyAgICBpbnQgc29ja2V0Owor
ICAgIHNydHBfY3R4X3QgKnNydHBfY3R4OworICAgIHN0cnVjdCBzb2NrYWRkcl9pbiBhZGRyOyAv
KiByZWNpZXZlcidzIGFkZHJlc3MgKi8KIH0gcnRwX3NlbmRlcl9jdHhfdDsKIAogdHlwZWRlZiBz
dHJ1Y3QgcnRwX3JlY2VpdmVyX2N0eF90IHsKLSAgcnRwX21zZ190IG1lc3NhZ2U7Ci0gIGludCBz
b2NrZXQ7Ci0gIHNydHBfY3R4X3QgKnNydHBfY3R4OwotICBzdHJ1Y3Qgc29ja2FkZHJfaW4gYWRk
cjsgICAvKiByZWNlaXZlcidzIGFkZHJlc3MgKi8KKyAgICBydHBfbXNnX3QgbWVzc2FnZTsKKyAg
ICBpbnQgc29ja2V0OworICAgIHNydHBfY3R4X3QgKnNydHBfY3R4OworICAgIHN0cnVjdCBzb2Nr
YWRkcl9pbiBhZGRyOyAvKiByZWNlaXZlcidzIGFkZHJlc3MgKi8KIH0gcnRwX3JlY2VpdmVyX2N0
eF90OwogCi0KIHR5cGVkZWYgc3RydWN0IHJ0cF9zZW5kZXJfY3R4X3QgKnJ0cF9zZW5kZXJfdDsK
IAogdHlwZWRlZiBzdHJ1Y3QgcnRwX3JlY2VpdmVyX2N0eF90ICpydHBfcmVjZWl2ZXJfdDsKIAot
aW50Ci1ydHBfc2VuZHRvKHJ0cF9zZW5kZXJfdCBzZW5kZXIsIGNvbnN0IHZvaWQqIG1zZywgaW50
IGxlbik7CitpbnQgcnRwX3NlbmR0byhydHBfc2VuZGVyX3Qgc2VuZGVyLCBjb25zdCB2b2lkICpt
c2csIGludCBsZW4pOwogCi1pbnQKLXJ0cF9yZWN2ZnJvbShydHBfcmVjZWl2ZXJfdCByZWNlaXZl
ciwgdm9pZCAqbXNnLCBpbnQgKmxlbik7CitpbnQgcnRwX3JlY3Zmcm9tKHJ0cF9yZWNlaXZlcl90
IHJlY2VpdmVyLCB2b2lkICptc2csIGludCAqbGVuKTsKIAotaW50Ci1ydHBfcmVjZWl2ZXJfaW5p
dChydHBfcmVjZWl2ZXJfdCByY3ZyLCBpbnQgc29jaywgCi0JCSAgc3RydWN0IHNvY2thZGRyX2lu
IGFkZHIsIHVuc2lnbmVkIGludCBzc3JjKTsKK2ludCBydHBfcmVjZWl2ZXJfaW5pdChydHBfcmVj
ZWl2ZXJfdCByY3ZyLAorICAgICAgICAgICAgICAgICAgICAgIGludCBzb2NrLAorICAgICAgICAg
ICAgICAgICAgICAgIHN0cnVjdCBzb2NrYWRkcl9pbiBhZGRyLAorICAgICAgICAgICAgICAgICAg
ICAgIHVuc2lnbmVkIGludCBzc3JjKTsKIAotaW50Ci1ydHBfc2VuZGVyX2luaXQocnRwX3NlbmRl
cl90IHNlbmRlciwgaW50IHNvY2ssIAotCQlzdHJ1Y3Qgc29ja2FkZHJfaW4gYWRkciwgdW5zaWdu
ZWQgaW50IHNzcmMpOworaW50IHJ0cF9zZW5kZXJfaW5pdChydHBfc2VuZGVyX3Qgc2VuZGVyLAor
ICAgICAgICAgICAgICAgICAgICBpbnQgc29jaywKKyAgICAgICAgICAgICAgICAgICAgc3RydWN0
IHNvY2thZGRyX2luIGFkZHIsCisgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBzc3Jj
KTsKIAogLyoKICAqIHNydHBfc2VuZGVyX2luaXQoLi4uKSBpbml0aWFsaXplcyBhbiBydHBfc2Vu
ZGVyX3QKICAqLwogCi1pbnQKLXNydHBfc2VuZGVyX2luaXQocnRwX3NlbmRlcl90IHJ0cF9jdHgs
ICAgICAgICAgIC8qIHN0cnVjdHVyZSB0byBiZSBpbml0J2VkICovCi0JCSBzdHJ1Y3Qgc29ja2Fk
ZHJfaW4gbmFtZSwgICAgICAgLyogc29ja2V0IG5hbWUgICAgICAgICAgICAgKi8KLQkJIHNydHBf
c2VjX3NlcnZfdCBzZWN1cml0eV9zZXJ2aWNlcywgIC8qIHNlYy4gc2VydnMuIHRvIGJlIHVzZWQg
ICovCi0JCSB1bnNpZ25lZCBjaGFyICppbnB1dF9rZXkgICAgICAgLyogbWFzdGVyIGtleS9zYWx0
IGluIGhleCAgKi8KLQkJICk7Ci0KLWludAotc3J0cF9yZWNlaXZlcl9pbml0KHJ0cF9yZWNlaXZl
cl90IHJ0cF9jdHgsICAgICAgIC8qIHN0cnVjdHVyZSB0byBiZSBpbml0J2VkICovCi0JCSAgIHN0
cnVjdCBzb2NrYWRkcl9pbiBuYW1lLCAJIC8qIHNvY2tldCBuYW1lICAgICAgICAgICAgICovCi0J
CSAgIHNydHBfc2VjX3NlcnZfdCBzZWN1cml0eV9zZXJ2aWNlcywgLyogc2VjLiBzZXJ2cy4gdG8g
YmUgdXNlZCAgKi8KLQkJICAgdW5zaWduZWQgY2hhciAqaW5wdXRfa2V5CSAvKiBtYXN0ZXIga2V5
L3NhbHQgaW4gaGV4ICAqLwotCQkgICApOwotCi0KLWludAotcnRwX3NlbmRlcl9pbml0X3NydHAo
cnRwX3NlbmRlcl90IHNlbmRlciwgY29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5KTsKK2ludCBz
cnRwX3NlbmRlcl9pbml0KAorICAgIHJ0cF9zZW5kZXJfdCBydHBfY3R4LCAgICAgICAgICAgICAg
Lyogc3RydWN0dXJlIHRvIGJlIGluaXQnZWQgKi8KKyAgICBzdHJ1Y3Qgc29ja2FkZHJfaW4gbmFt
ZSwgICAgICAgICAgIC8qIHNvY2tldCBuYW1lICAgICAgICAgICAgICovCisgICAgc3J0cF9zZWNf
c2Vydl90IHNlY3VyaXR5X3NlcnZpY2VzLCAvKiBzZWMuIHNlcnZzLiB0byBiZSB1c2VkICAqLwor
ICAgIHVuc2lnbmVkIGNoYXIgKmlucHV0X2tleSAgICAgICAgICAgLyogbWFzdGVyIGtleS9zYWx0
IGluIGhleCAgKi8KKyAgICApOwogCi1pbnQKLXJ0cF9zZW5kZXJfZGVpbml0X3NydHAocnRwX3Nl
bmRlcl90IHNlbmRlcik7CitpbnQgc3J0cF9yZWNlaXZlcl9pbml0KAorICAgIHJ0cF9yZWNlaXZl
cl90IHJ0cF9jdHgsICAgICAgICAgICAgLyogc3RydWN0dXJlIHRvIGJlIGluaXQnZWQgKi8KKyAg
ICBzdHJ1Y3Qgc29ja2FkZHJfaW4gbmFtZSwgICAgICAgICAgIC8qIHNvY2tldCBuYW1lICAgICAg
ICAgICAgICovCisgICAgc3J0cF9zZWNfc2Vydl90IHNlY3VyaXR5X3NlcnZpY2VzLCAvKiBzZWMu
IHNlcnZzLiB0byBiZSB1c2VkICAqLworICAgIHVuc2lnbmVkIGNoYXIgKmlucHV0X2tleSAgICAg
ICAgICAgLyogbWFzdGVyIGtleS9zYWx0IGluIGhleCAgKi8KKyAgICApOwogCi1pbnQKLXJ0cF9y
ZWNlaXZlcl9pbml0X3NydHAocnRwX3JlY2VpdmVyX3Qgc2VuZGVyLCBjb25zdCBzcnRwX3BvbGlj
eV90ICpwb2xpY3kpOworaW50IHJ0cF9zZW5kZXJfaW5pdF9zcnRwKHJ0cF9zZW5kZXJfdCBzZW5k
ZXIsIGNvbnN0IHNydHBfcG9saWN5X3QgKnBvbGljeSk7CiAKLWludAotcnRwX3JlY2VpdmVyX2Rl
aW5pdF9zcnRwKHJ0cF9yZWNlaXZlcl90IHNlbmRlcik7CitpbnQgcnRwX3NlbmRlcl9kZWluaXRf
c3J0cChydHBfc2VuZGVyX3Qgc2VuZGVyKTsKIAoraW50IHJ0cF9yZWNlaXZlcl9pbml0X3NydHAo
cnRwX3JlY2VpdmVyX3Qgc2VuZGVyLCBjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3kpOwogCi1y
dHBfc2VuZGVyX3QgCi1ydHBfc2VuZGVyX2FsbG9jKHZvaWQpOworaW50IHJ0cF9yZWNlaXZlcl9k
ZWluaXRfc3J0cChydHBfcmVjZWl2ZXJfdCBzZW5kZXIpOwogCi12b2lkCi1ydHBfc2VuZGVyX2Rl
YWxsb2MocnRwX3NlbmRlcl90IHJ0cF9jdHgpOworcnRwX3NlbmRlcl90IHJ0cF9zZW5kZXJfYWxs
b2Modm9pZCk7CiAKLXJ0cF9yZWNlaXZlcl90IAotcnRwX3JlY2VpdmVyX2FsbG9jKHZvaWQpOwor
dm9pZCBydHBfc2VuZGVyX2RlYWxsb2MocnRwX3NlbmRlcl90IHJ0cF9jdHgpOwogCi12b2lkCi1y
dHBfcmVjZWl2ZXJfZGVhbGxvYyhydHBfcmVjZWl2ZXJfdCBydHBfY3R4KTsKK3J0cF9yZWNlaXZl
cl90IHJ0cF9yZWNlaXZlcl9hbGxvYyh2b2lkKTsKIAordm9pZCBydHBfcmVjZWl2ZXJfZGVhbGxv
YyhydHBfcmVjZWl2ZXJfdCBydHBfY3R4KTsKIAogI2lmZGVmIF9fY3BsdXNwbHVzCiB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnNydHAvdGVzdC9ydHB3LmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnNydHAvdGVzdC9ydHB3LmMKaW5kZXggM2I3YWM2NzAwYjIwZWJhZDEwMGQ4
MThlMTgwNTAyNDRiYmZjOTFiNC4uNmU3NDE2YzdmNTI0ZDg2ZTY4OWE0ZmM4MGYyMTBkODZjOGUy
MzdjZSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJzcnRwL3Rlc3QvcnRwdy5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC90ZXN0L3J0cHcuYwpAQCAtOCwzMyArOCwz
MyBAQAogICoKICAqIFRoaXMgYXBwIGlzIGEgc2ltcGxlIFJUUCBhcHBsaWNhdGlvbiBpbnRlbmRl
ZCBvbmx5IGZvciB0ZXN0aW5nCiAgKiBsaWJzcnRwLiAgSXQgcmVhZHMgb25lIHdvcmQgYXQgYSB0
aW1lIGZyb20gd29yZHMudHh0IChvcgotICogd2hhdGV2ZXIgZmlsZSBpcyBzcGVjaWZpZWQgYXMg
RElDVF9GSUxFKSwgYW5kIHNlbmRzIG9uZSB3b3JkIG91dAorICogd2hhdGV2ZXIgZmlsZSBpcyBz
cGVjaWZpZWQgYXMgRElDVF9GSUxFIG9yIHdpdGggLXcpLCBhbmQgc2VuZHMgb25lIHdvcmQgb3V0
CiAgKiBlYWNoIFVTRUNfUkFURSBtaWNyb3NlY29uZHMuICBTZWN1cmUgUlRQIHByb3RlY3Rpb25z
IGNhbiBiZQogICogYXBwbGllZC4gIFNlZSB0aGUgdXNhZ2UoKSBmdW5jdGlvbiBmb3IgbW9yZSBk
ZXRhaWxzLgogICoKICAqLwogCiAvKgotICoJCisgKgogICogQ29weXJpZ2h0IChjKSAyMDAxLTIw
MTcsIENpc2NvIFN5c3RlbXMsIEluYy4KICAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKiAKKyAq
CiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwogICogYXJlIG1ldDoKLSAqIAorICoKICAqICAg
UmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5
cmlnaHQKICAqICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgotICogCisgKgogICogICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5
IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCiAgKiAgIGNvcHlyaWdodCBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCiAgKiAgIGRpc2NsYWltZXIg
aW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZAogICog
ICB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKiAKKyAqCiAgKiAgIE5laXRoZXIgdGhlIG5hbWUg
b2YgdGhlIENpc2NvIFN5c3RlbXMsIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKICAqICAgY29u
dHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJp
dmVkCiAgKiAgIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0
ZW4gcGVybWlzc2lvbi4KLSAqIAorICoKICAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkg
VEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKICAqICJBUyBJUyIgQU5EIEFO
WSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCiAgKiBM
SU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg
RklUTkVTUwpAQCAtNTAsODIgKzUwLDc2IEBACiAgKgogICovCiAKLQogI2lmZGVmIEhBVkVfQ09O
RklHX0gKLSAgICAjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29uZmlnLmg+CiAjZW5k
aWYKIAotI2luY2x1ZGUgImdldG9wdF9zLmgiICAgICAgIC8qIGZvciBsb2NhbCBnZXRvcHQoKSAg
Ki8KKyNpbmNsdWRlICJnZXRvcHRfcy5oIiAvKiBmb3IgbG9jYWwgZ2V0b3B0KCkgICovCiAKLSNp
bmNsdWRlIDxzdGRpby5oPiAgICAgICAgICAvKiBmb3IgcHJpbnRmLCBmcHJpbnRmICovCi0jaW5j
bHVkZSA8c3RkbGliLmg+ICAgICAgICAgLyogZm9yIGF0b2koKSAgICAgICAgICAqLworI2luY2x1
ZGUgPHN0ZGlvLmg+ICAvKiBmb3IgcHJpbnRmLCBmcHJpbnRmICovCisjaW5jbHVkZSA8c3RkbGli
Lmg+IC8qIGZvciBhdG9pKCkgICAgICAgICAgKi8KICNpbmNsdWRlIDxlcnJuby5oPgotI2luY2x1
ZGUgPHNpZ25hbC5oPiAgICAgICAgIC8qIGZvciBzaWduYWwoKSAgICAgICAgKi8KKyNpbmNsdWRl
IDxzaWduYWwuaD4gLyogZm9yIHNpZ25hbCgpICAgICAgICAqLwogCi0jaW5jbHVkZSA8c3RyaW5n
Lmg+ICAgICAgICAgLyogZm9yIHN0cm5jcHkoKSAgICAgICAqLwotI2luY2x1ZGUgPHRpbWUuaD4J
ICAgIC8qIGZvciB1c2xlZXAoKSAgICAgICAgKi8KKyNpbmNsdWRlIDxzdHJpbmcuaD4gLyogZm9y
IHN0cm5jcHkoKSAgICAgICAqLworI2luY2x1ZGUgPHRpbWUuaD4gICAvKiBmb3IgdXNsZWVwKCkg
ICAgICAgICovCiAKICNpZmRlZiBIQVZFX1VOSVNURF9ICi0jaW5jbHVkZSA8dW5pc3RkLmg+ICAg
ICAgICAgLyogZm9yIGNsb3NlKCkgICAgICAgICAqLworI2luY2x1ZGUgPHVuaXN0ZC5oPiAvKiBm
b3IgY2xvc2UoKSAgICAgICAgICovCiAjZWxpZiBkZWZpbmVkKF9NU0NfVkVSKQotI2luY2x1ZGUg
PGlvLmg+ICAgICAgICAgICAgIC8qIGZvciBfY2xvc2UoKSAgICAgICAgKi8KKyNpbmNsdWRlIDxp
by5oPiAvKiBmb3IgX2Nsb3NlKCkgICAgICAgICovCiAjZGVmaW5lIGNsb3NlIF9jbG9zZQogI2Vu
ZGlmCiAjaWZkZWYgSEFWRV9TWVNfU09DS0VUX0gKLSMgaW5jbHVkZSA8c3lzL3NvY2tldC5oPgor
I2luY2x1ZGUgPHN5cy9zb2NrZXQuaD4KICNlbmRpZgogI2lmZGVmIEhBVkVfTkVUSU5FVF9JTl9I
Ci0jIGluY2x1ZGUgPG5ldGluZXQvaW4uaD4KKyNpbmNsdWRlIDxuZXRpbmV0L2luLmg+CiAjZWxp
ZiBkZWZpbmVkIEhBVkVfV0lOU09DSzJfSAotIyBpbmNsdWRlIDx3aW5zb2NrMi5oPgotIyBpbmNs
dWRlIDx3czJ0Y3BpcC5oPgotIyBkZWZpbmUgUlRQV19VU0VfV0lOU09DSzIJMQorI2luY2x1ZGUg
PHdpbnNvY2syLmg+CisjaW5jbHVkZSA8d3MydGNwaXAuaD4KKyNkZWZpbmUgUlRQV19VU0VfV0lO
U09DSzIgMQogI2VuZGlmCiAjaWZkZWYgSEFWRV9BUlBBX0lORVRfSAotIyBpbmNsdWRlIDxhcnBh
L2luZXQuaD4KKyNpbmNsdWRlIDxhcnBhL2luZXQuaD4KICNlbmRpZgogCi0jaW5jbHVkZSAic3J0
cC5oIiAgICAgICAgICAgCisjaW5jbHVkZSAic3J0cC5oIgogI2luY2x1ZGUgInJ0cC5oIgogI2lu
Y2x1ZGUgInV0aWwuaCIKIAotI2RlZmluZSBESUNUX0ZJTEUgICAgICAgICJ3b3Jkcy50eHQiCi0j
ZGVmaW5lIFVTRUNfUkFURSAgICAgICAgKDVlNSkKLSNkZWZpbmUgTUFYX1dPUkRfTEVOICAgICAx
MjggIAorI2RlZmluZSBESUNUX0ZJTEUgIndvcmRzLnR4dCIKKyNkZWZpbmUgVVNFQ19SQVRFICg1
ZTUpCisjZGVmaW5lIE1BWF9XT1JEX0xFTiAxMjgKICNkZWZpbmUgQUREUl9JU19NVUxUSUNBU1Qo
YSkgSU5fTVVMVElDQVNUKGh0b25sKGEpKQotI2RlZmluZSBNQVhfS0VZX0xFTiAgICAgIDk2Ci0K
KyNkZWZpbmUgTUFYX0tFWV9MRU4gOTYKIAogI2lmbmRlZiBIQVZFX1VTTEVFUAotIyBpZmRlZiBI
QVZFX1dJTkRPV1NfSAotIyAgZGVmaW5lIHVzbGVlcCh1cykJU2xlZXAoKHVzKS8xMDAwKQotIyBl
bHNlCi0jICBkZWZpbmUgdXNsZWVwKHVzKQlzbGVlcCgodXMpLzEwMDAwMDApCi0jIGVuZGlmCisj
aWZkZWYgSEFWRV9XSU5ET1dTX0gKKyNkZWZpbmUgdXNsZWVwKHVzKSBTbGVlcCgodXMpIC8gMTAw
MCkKKyNlbHNlCisjZGVmaW5lIHVzbGVlcCh1cykgc2xlZXAoKHVzKSAvIDEwMDAwMDApCisjZW5k
aWYKICNlbmRpZgotCiAKIC8qCiAgKiB0aGUgZnVuY3Rpb24gdXNhZ2UoKSBwcmludHMgYW4gZXJy
b3IgbWVzc2FnZSBkZXNjcmliaW5nIGhvdyB0aGlzCiAgKiBwcm9ncmFtIHNob3VsZCBiZSBjYWxs
ZWQsIHRoZW4gY2FsbHMgZXhpdCgpCiAgKi8KIAotdm9pZAotdXNhZ2UoY2hhciAqcHJvZ19uYW1l
KTsKK3ZvaWQgdXNhZ2UoY2hhciAqcHJvZ19uYW1lKTsKIAogLyoKICAqIGxlYXZlX2dyb3VwKC4u
LikgZGUtcmVnaXN0ZXJzIGZyb20gYSBtdWx0aWNhc3QgZ3JvdXAKICAqLwogCi12b2lkCi1sZWF2
ZV9ncm91cChpbnQgc29jaywgc3RydWN0IGlwX21yZXEgbXJlcSwgY2hhciAqbmFtZSk7Ci0KK3Zv
aWQgbGVhdmVfZ3JvdXAoaW50IHNvY2ssIHN0cnVjdCBpcF9tcmVxIG1yZXEsIGNoYXIgKm5hbWUp
OwogCiAvKgogICogc2V0dXBfc2lnbmFsX2hhbmRsZXIoKSBzZXRzIHVwIGEgc2lnbmFsIGhhbmRs
ZXIgdG8gdHJpZ2dlcgogICogY2xlYW51cHMgYWZ0ZXIgYW4gaW50ZXJydXB0CiAgKi8KLWludCBz
ZXR1cF9zaWduYWxfaGFuZGxlcihjaGFyKiBuYW1lKTsKK2ludCBzZXR1cF9zaWduYWxfaGFuZGxl
cihjaGFyICpuYW1lKTsKIAogLyoKICAqIGhhbmRsZV9zaWduYWwoLi4uKSBoYW5kbGVzIGludGVy
cnVwdCBzaWduYWwgdG8gdHJpZ2dlciBjbGVhbnVwcwpAQCAtMTM5LDU2MSArMTMzLDU2OCBAQCB2
b2xhdGlsZSBpbnQgaW50ZXJydXB0ZWQgPSAwOwogCiB0eXBlZGVmIGVudW0geyBzZW5kZXIsIHJl
Y2VpdmVyLCB1bmtub3duIH0gcHJvZ3JhbV90eXBlOwogCi1pbnQKLW1haW4gKGludCBhcmdjLCBj
aGFyICphcmd2W10pIHsKLSAgY2hhciAqZGljdGZpbGUgPSBESUNUX0ZJTEU7Ci0gIEZJTEUgKmRp
Y3Q7Ci0gIGNoYXIgd29yZFtNQVhfV09SRF9MRU5dOwotICBpbnQgc29jaywgcmV0OwotICBzdHJ1
Y3QgaW5fYWRkciByY3ZyX2FkZHI7Ci0gIHN0cnVjdCBzb2NrYWRkcl9pbiBuYW1lOwotICBzdHJ1
Y3QgaXBfbXJlcSBtcmVxOworaW50IG1haW4oaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKK3sKKyAg
ICBjaGFyICpkaWN0ZmlsZSA9IERJQ1RfRklMRTsKKyAgICBGSUxFICpkaWN0OworICAgIGNoYXIg
d29yZFtNQVhfV09SRF9MRU5dOworICAgIGludCBzb2NrLCByZXQ7CisgICAgc3RydWN0IGluX2Fk
ZHIgcmN2cl9hZGRyOworICAgIHN0cnVjdCBzb2NrYWRkcl9pbiBuYW1lOworICAgIHN0cnVjdCBp
cF9tcmVxIG1yZXE7CiAjaWYgQkVXCi0gIHN0cnVjdCBzb2NrYWRkcl9pbiBsb2NhbDsKLSNlbmRp
ZiAKLSAgcHJvZ3JhbV90eXBlIHByb2dfdHlwZSA9IHVua25vd247Ci0gIHNydHBfc2VjX3NlcnZf
dCBzZWNfc2VydnMgPSBzZWNfc2Vydl9ub25lOwotICB1bnNpZ25lZCBjaGFyIHR0bCA9IDU7Ci0g
IGludCBjOwotICBpbnQga2V5X3NpemUgPSAxMjg7Ci0gIGludCB0YWdfc2l6ZSA9IDg7Ci0gIGlu
dCBnY21fb24gPSAwOwotICBjaGFyICppbnB1dF9rZXkgPSBOVUxMOwotICBpbnQgYjY0X2lucHV0
ID0gMDsKLSAgY2hhciAqYWRkcmVzcyA9IE5VTEw7Ci0gIGNoYXIga2V5W01BWF9LRVlfTEVOXTsK
LSAgdW5zaWduZWQgc2hvcnQgcG9ydCA9IDA7Ci0gIHJ0cF9zZW5kZXJfdCBzbmQ7Ci0gIHNydHBf
cG9saWN5X3QgcG9saWN5OwotICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7Ci0gIGludCBsZW47
Ci0gIGludCBleHBlY3RlZF9sZW47Ci0gIGludCBkb19saXN0X21vZHMgPSAwOwotICB1aW50MzJf
dCBzc3JjID0gMHhkZWFkYmVlZjsgLyogc3NyYyB2YWx1ZSBoYXJkY29kZWQgZm9yIG5vdyAqLwor
ICAgIHN0cnVjdCBzb2NrYWRkcl9pbiBsb2NhbDsKKyNlbmRpZgorICAgIHByb2dyYW1fdHlwZSBw
cm9nX3R5cGUgPSB1bmtub3duOworICAgIHNydHBfc2VjX3NlcnZfdCBzZWNfc2VydnMgPSBzZWNf
c2Vydl9ub25lOworICAgIHVuc2lnbmVkIGNoYXIgdHRsID0gNTsKKyAgICBpbnQgYzsKKyAgICBp
bnQga2V5X3NpemUgPSAxMjg7CisgICAgaW50IHRhZ19zaXplID0gODsKKyAgICBpbnQgZ2NtX29u
ID0gMDsKKyAgICBjaGFyICppbnB1dF9rZXkgPSBOVUxMOworICAgIGludCBiNjRfaW5wdXQgPSAw
OworICAgIGNoYXIgKmFkZHJlc3MgPSBOVUxMOworICAgIGNoYXIga2V5W01BWF9LRVlfTEVOXTsK
KyAgICB1bnNpZ25lZCBzaG9ydCBwb3J0ID0gMDsKKyAgICBydHBfc2VuZGVyX3Qgc25kOworICAg
IHNydHBfcG9saWN5X3QgcG9saWN5OworICAgIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKKyAg
ICBpbnQgbGVuOworICAgIGludCBleHBlY3RlZF9sZW47CisgICAgaW50IGRvX2xpc3RfbW9kcyA9
IDA7CisgICAgdWludDMyX3Qgc3NyYyA9IDB4ZGVhZGJlZWY7IC8qIHNzcmMgdmFsdWUgaGFyZGNv
ZGVkIGZvciBub3cgKi8KICNpZmRlZiBSVFBXX1VTRV9XSU5TT0NLMgotICBXT1JEIHdWZXJzaW9u
UmVxdWVzdGVkID0gTUFLRVdPUkQoMiwgMCk7Ci0gIFdTQURBVEEgd3NhRGF0YTsKKyAgICBXT1JE
IHdWZXJzaW9uUmVxdWVzdGVkID0gTUFLRVdPUkQoMiwgMCk7CisgICAgV1NBREFUQSB3c2FEYXRh
OwogCi0gIHJldCA9IFdTQVN0YXJ0dXAod1ZlcnNpb25SZXF1ZXN0ZWQsICZ3c2FEYXRhKTsKLSAg
aWYgKHJldCAhPSAwKSB7Ci0gICAgZnByaW50ZihzdGRlcnIsICJlcnJvcjogV1NBU3RhcnR1cCgp
IGZhaWxlZDogJWRcbiIsIHJldCk7Ci0gICAgZXhpdCgxKTsKLSAgfQorICAgIHJldCA9IFdTQVN0
YXJ0dXAod1ZlcnNpb25SZXF1ZXN0ZWQsICZ3c2FEYXRhKTsKKyAgICBpZiAocmV0ICE9IDApIHsK
KyAgICAgICAgZnByaW50ZihzdGRlcnIsICJlcnJvcjogV1NBU3RhcnR1cCgpIGZhaWxlZDogJWRc
biIsIHJldCk7CisgICAgICAgIGV4aXQoMSk7CisgICAgfQogI2VuZGlmCiAKLSAgbWVtc2V0KCZw
b2xpY3ksIDB4MCwgc2l6ZW9mKHNydHBfcG9saWN5X3QpKTsKKyAgICBtZW1zZXQoJnBvbGljeSwg
MHgwLCBzaXplb2Yoc3J0cF9wb2xpY3lfdCkpOwogCi0gIHByaW50ZigiVXNpbmcgJXMgWzB4JXhd
XG4iLCBzcnRwX2dldF92ZXJzaW9uX3N0cmluZygpLCBzcnRwX2dldF92ZXJzaW9uKCkpOworICAg
IHByaW50ZigiVXNpbmcgJXMgWzB4JXhdXG4iLCBzcnRwX2dldF92ZXJzaW9uX3N0cmluZygpLCBz
cnRwX2dldF92ZXJzaW9uKCkpOwogCi0gIGlmIChzZXR1cF9zaWduYWxfaGFuZGxlcihhcmd2WzBd
KSAhPSAwKSB7Ci0gICAgZXhpdCgxKTsKLSAgfQorICAgIGlmIChzZXR1cF9zaWduYWxfaGFuZGxl
cihhcmd2WzBdKSAhPSAwKSB7CisgICAgICAgIGV4aXQoMSk7CisgICAgfQogCi0gIC8qIGluaXRp
YWxpemUgc3J0cCBsaWJyYXJ5ICovCi0gIHN0YXR1cyA9IHNydHBfaW5pdCgpOwotICBpZiAoc3Rh
dHVzKSB7Ci0gICAgcHJpbnRmKCJlcnJvcjogc3J0cCBpbml0aWFsaXphdGlvbiBmYWlsZWQgd2l0
aCBlcnJvciBjb2RlICVkXG4iLCBzdGF0dXMpOwotICAgIGV4aXQoMSk7Ci0gIH0KKyAgICAvKiBp
bml0aWFsaXplIHNydHAgbGlicmFyeSAqLworICAgIHN0YXR1cyA9IHNydHBfaW5pdCgpOworICAg
IGlmIChzdGF0dXMpIHsKKyAgICAgICAgcHJpbnRmKCJlcnJvcjogc3J0cCBpbml0aWFsaXphdGlv
biBmYWlsZWQgd2l0aCBlcnJvciBjb2RlICVkXG4iLAorICAgICAgICAgICAgICAgc3RhdHVzKTsK
KyAgICAgICAgZXhpdCgxKTsKKyAgICB9CisKKyAgICAvKiBjaGVjayBhcmdzICovCisgICAgd2hp
bGUgKDEpIHsKKyAgICAgICAgYyA9IGdldG9wdF9zKGFyZ2MsIGFyZ3YsICJiOms6cnNndDphZTps
ZDp3OiIpOworICAgICAgICBpZiAoYyA9PSAtMSkgeworICAgICAgICAgICAgYnJlYWs7CisgICAg
ICAgIH0KKyAgICAgICAgc3dpdGNoIChjKSB7CisgICAgICAgIGNhc2UgJ2InOgorICAgICAgICAg
ICAgYjY0X2lucHV0ID0gMTsKKyAgICAgICAgLyogZmFsbCB0aHJ1ICovCisgICAgICAgIGNhc2Ug
J2snOgorICAgICAgICAgICAgaW5wdXRfa2V5ID0gb3B0YXJnX3M7CisgICAgICAgICAgICBicmVh
azsKKyAgICAgICAgY2FzZSAnZSc6CisgICAgICAgICAgICBrZXlfc2l6ZSA9IGF0b2kob3B0YXJn
X3MpOworICAgICAgICAgICAgaWYgKGtleV9zaXplICE9IDEyOCAmJiBrZXlfc2l6ZSAhPSAyNTYp
IHsKKyAgICAgICAgICAgICAgICBwcmludGYoImVycm9yOiBlbmNyeXB0aW9uIGtleSBzaXplIG11
c3QgYmUgMTI4IG9yIDI1NiAoJWQpXG4iLAorICAgICAgICAgICAgICAgICAgICAgICBrZXlfc2l6
ZSk7CisgICAgICAgICAgICAgICAgZXhpdCgxKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAg
IHNlY19zZXJ2cyB8PSBzZWNfc2Vydl9jb25mOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAg
IGNhc2UgJ3QnOgorICAgICAgICAgICAgdGFnX3NpemUgPSBhdG9pKG9wdGFyZ19zKTsKKyAgICAg
ICAgICAgIGlmICh0YWdfc2l6ZSAhPSA4ICYmIHRhZ19zaXplICE9IDE2KSB7CisgICAgICAgICAg
ICAgICAgcHJpbnRmKCJlcnJvcjogR0NNIHRhZyBzaXplIG11c3QgYmUgOCBvciAxNiAoJWQpXG4i
LCB0YWdfc2l6ZSk7CisgICAgICAgICAgICAgICAgZXhpdCgxKTsKKyAgICAgICAgICAgIH0KKyAg
ICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlICdhJzoKKyAgICAgICAgICAgIHNlY19zZXJ2
cyB8PSBzZWNfc2Vydl9hdXRoOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgJ2cn
OgorICAgICAgICAgICAgZ2NtX29uID0gMTsKKyAgICAgICAgICAgIHNlY19zZXJ2cyB8PSBzZWNf
c2Vydl9hdXRoOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgJ3InOgorICAgICAg
ICAgICAgcHJvZ190eXBlID0gcmVjZWl2ZXI7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAg
Y2FzZSAncyc6CisgICAgICAgICAgICBwcm9nX3R5cGUgPSBzZW5kZXI7CisgICAgICAgICAgICBi
cmVhazsKKyAgICAgICAgY2FzZSAnZCc6CisgICAgICAgICAgICBzdGF0dXMgPSBzcnRwX3NldF9k
ZWJ1Z19tb2R1bGUob3B0YXJnX3MsIDEpOworICAgICAgICAgICAgaWYgKHN0YXR1cykgeworICAg
ICAgICAgICAgICAgIHByaW50ZigiZXJyb3I6IHNldCBkZWJ1ZyBtb2R1bGUgKCVzKSBmYWlsZWRc
biIsIG9wdGFyZ19zKTsKKyAgICAgICAgICAgICAgICBleGl0KDEpOworICAgICAgICAgICAgfQor
ICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgJ2wnOgorICAgICAgICAgICAgZG9fbGlz
dF9tb2RzID0gMTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlICd3JzoKKyAgICAg
ICAgICAgIGRpY3RmaWxlID0gb3B0YXJnX3M7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAg
ZGVmYXVsdDoKKyAgICAgICAgICAgIHVzYWdlKGFyZ3ZbMF0pOworICAgICAgICB9CisgICAgfQog
Ci0gIC8qIGNoZWNrIGFyZ3MgKi8KLSAgd2hpbGUgKDEpIHsKLSAgICBjID0gZ2V0b3B0X3MoYXJn
YywgYXJndiwgImI6azpyc2d0OmFlOmxkOiIpOwotICAgIGlmIChjID09IC0xKSB7Ci0gICAgICBi
cmVhazsKKyAgICBpZiAocHJvZ190eXBlID09IHVua25vd24pIHsKKyAgICAgICAgaWYgKGRvX2xp
c3RfbW9kcykgeworICAgICAgICAgICAgc3RhdHVzID0gc3J0cF9saXN0X2RlYnVnX21vZHVsZXMo
KTsKKyAgICAgICAgICAgIGlmIChzdGF0dXMpIHsKKyAgICAgICAgICAgICAgICBwcmludGYoImVy
cm9yOiBsaXN0IG9mIGRlYnVnIG1vZHVsZXMgZmFpbGVkXG4iKTsKKyAgICAgICAgICAgICAgICBl
eGl0KDEpOworICAgICAgICAgICAgfQorICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIH0g
ZWxzZSB7CisgICAgICAgICAgICBwcmludGYoImVycm9yOiBuZWl0aGVyIHNlbmRlciBbLXNdIG5v
ciByZWNlaXZlciBbLXJdIHNwZWNpZmllZFxuIik7CisgICAgICAgICAgICB1c2FnZShhcmd2WzBd
KTsKKyAgICAgICAgfQogICAgIH0KLSAgICBzd2l0Y2ggKGMpIHsKLQljYXNlICdiJzoKLSAgICAg
IGI2NF9pbnB1dCA9IDE7Ci0gICAgICAvKiBmYWxsIHRocnUgKi8KLSAgICBjYXNlICdrJzoKLSAg
ICAgIGlucHV0X2tleSA9IG9wdGFyZ19zOwotICAgICAgYnJlYWs7Ci0gICAgY2FzZSAnZSc6Ci0g
ICAgICBrZXlfc2l6ZSA9IGF0b2kob3B0YXJnX3MpOwotICAgICAgaWYgKGtleV9zaXplICE9IDEy
OCAmJiBrZXlfc2l6ZSAhPSAyNTYpIHsKLSAgICAgICAgcHJpbnRmKCJlcnJvcjogZW5jcnlwdGlv
biBrZXkgc2l6ZSBtdXN0IGJlIDEyOCBvciAyNTYgKCVkKVxuIiwga2V5X3NpemUpOwotICAgICAg
ICBleGl0KDEpOwotICAgICAgfQotICAgICAgc2VjX3NlcnZzIHw9IHNlY19zZXJ2X2NvbmY7Ci0g
ICAgICBicmVhazsKLSAgICBjYXNlICd0JzoKLSAgICAgIHRhZ19zaXplID0gYXRvaShvcHRhcmdf
cyk7Ci0gICAgICBpZiAodGFnX3NpemUgIT0gOCAmJiB0YWdfc2l6ZSAhPSAxNikgewotICAgICAg
ICBwcmludGYoImVycm9yOiBHQ00gdGFnIHNpemUgbXVzdCBiZSA4IG9yIDE2ICglZClcbiIsIHRh
Z19zaXplKTsKLSAgICAgICAgZXhpdCgxKTsKLSAgICAgIH0KLSAgICAgIGJyZWFrOwotICAgIGNh
c2UgJ2EnOgotICAgICAgc2VjX3NlcnZzIHw9IHNlY19zZXJ2X2F1dGg7Ci0gICAgICBicmVhazsK
LSAgICBjYXNlICdnJzoKLSAgICAgIGdjbV9vbiA9IDE7Ci0gICAgICBzZWNfc2VydnMgfD0gc2Vj
X3NlcnZfYXV0aDsKLSAgICAgIGJyZWFrOwotICAgIGNhc2UgJ3InOgotICAgICAgcHJvZ190eXBl
ID0gcmVjZWl2ZXI7Ci0gICAgICBicmVhazsKLSAgICBjYXNlICdzJzoKLSAgICAgIHByb2dfdHlw
ZSA9IHNlbmRlcjsKLSAgICAgIGJyZWFrOwotICAgIGNhc2UgJ2QnOgotICAgICAgc3RhdHVzID0g
c3J0cF9zZXRfZGVidWdfbW9kdWxlKG9wdGFyZ19zLCAxKTsKLSAgICAgIGlmIChzdGF0dXMpIHsK
LSAgICAgICAgcHJpbnRmKCJlcnJvcjogc2V0IGRlYnVnIG1vZHVsZSAoJXMpIGZhaWxlZFxuIiwg
b3B0YXJnX3MpOwotICAgICAgICBleGl0KDEpOwotICAgICAgfQotICAgICAgYnJlYWs7Ci0gICAg
Y2FzZSAnbCc6Ci0gICAgICBkb19saXN0X21vZHMgPSAxOwotICAgICAgYnJlYWs7Ci0gICAgZGVm
YXVsdDoKLSAgICAgIHVzYWdlKGFyZ3ZbMF0pOworCisgICAgaWYgKChzZWNfc2VydnMgJiYgIWlu
cHV0X2tleSkgfHwgKCFzZWNfc2VydnMgJiYgaW5wdXRfa2V5KSkgeworICAgICAgICAvKgorICAg
ICAgICAgKiBhIGtleSBtdXN0IGJlIHByb3ZpZGVkIGlmIGFuZCBvbmx5IGlmIHNlY3VyaXR5IHNl
cnZpY2VzIGhhdmUKKyAgICAgICAgICogYmVlbiByZXF1ZXN0ZWQKKyAgICAgICAgICovCisgICAg
ICAgIHVzYWdlKGFyZ3ZbMF0pOwogICAgIH0KLSAgfQotCi0gIGlmIChwcm9nX3R5cGUgPT0gdW5r
bm93bikgewotICAgIGlmIChkb19saXN0X21vZHMpIHsKLSAgICAgIHN0YXR1cyA9IHNydHBfbGlz
dF9kZWJ1Z19tb2R1bGVzKCk7Ci0gICAgICBpZiAoc3RhdHVzKSB7Ci0JcHJpbnRmKCJlcnJvcjog
bGlzdCBvZiBkZWJ1ZyBtb2R1bGVzIGZhaWxlZFxuIik7Ci0JZXhpdCgxKTsKLSAgICAgIH0KLSAg
ICAgIHJldHVybiAwOwotICAgIH0gZWxzZSB7Ci0gICAgICBwcmludGYoImVycm9yOiBuZWl0aGVy
IHNlbmRlciBbLXNdIG5vciByZWNlaXZlciBbLXJdIHNwZWNpZmllZFxuIik7Ci0gICAgICB1c2Fn
ZShhcmd2WzBdKTsKKworICAgIGlmIChhcmdjICE9IG9wdGluZF9zICsgMikgeworICAgICAgICAv
KiB3cm9uZyBudW1iZXIgb2YgYXJndW1lbnRzICovCisgICAgICAgIHVzYWdlKGFyZ3ZbMF0pOwog
ICAgIH0KLSAgfQotICAgCi0gIGlmICgoc2VjX3NlcnZzICYmICFpbnB1dF9rZXkpIHx8ICghc2Vj
X3NlcnZzICYmIGlucHV0X2tleSkpIHsKLSAgICAvKiAKLSAgICAgKiBhIGtleSBtdXN0IGJlIHBy
b3ZpZGVkIGlmIGFuZCBvbmx5IGlmIHNlY3VyaXR5IHNlcnZpY2VzIGhhdmUKLSAgICAgKiBiZWVu
IHJlcXVlc3RlZCAKLSAgICAgKi8KLSAgICB1c2FnZShhcmd2WzBdKTsKLSAgfQotICAgIAotICBp
ZiAoYXJnYyAhPSBvcHRpbmRfcyArIDIpIHsKLSAgICAvKiB3cm9uZyBudW1iZXIgb2YgYXJndW1l
bnRzICovCi0gICAgdXNhZ2UoYXJndlswXSk7Ci0gIH0KLQotICAvKiBnZXQgYWRkcmVzcyBmcm9t
IGFyZyAqLwotICBhZGRyZXNzID0gYXJndltvcHRpbmRfcysrXTsKLQotICAvKiBnZXQgcG9ydCBm
cm9tIGFyZyAqLwotICBwb3J0ID0gYXRvaShhcmd2W29wdGluZF9zKytdKTsKLQotICAvKiBzZXQg
YWRkcmVzcyAqLworCisgICAgLyogZ2V0IGFkZHJlc3MgZnJvbSBhcmcgKi8KKyAgICBhZGRyZXNz
ID0gYXJndltvcHRpbmRfcysrXTsKKworICAgIC8qIGdldCBwb3J0IGZyb20gYXJnICovCisgICAg
cG9ydCA9IGF0b2koYXJndltvcHRpbmRfcysrXSk7CisKKy8qIHNldCBhZGRyZXNzICovCiAjaWZk
ZWYgSEFWRV9JTkVUX0FUT04KLSAgaWYgKDAgPT0gaW5ldF9hdG9uKGFkZHJlc3MsICZyY3ZyX2Fk
ZHIpKSB7Ci0gICAgZnByaW50ZihzdGRlcnIsICIlczogY2Fubm90IHBhcnNlIElQIHY0IGFkZHJl
c3MgJXNcbiIsIGFyZ3ZbMF0sIGFkZHJlc3MpOwotICAgIGV4aXQoMSk7Ci0gIH0KLSAgaWYgKHJj
dnJfYWRkci5zX2FkZHIgPT0gSU5BRERSX05PTkUpIHsKLSAgICBmcHJpbnRmKHN0ZGVyciwgIiVz
OiBhZGRyZXNzIGVycm9yIiwgYXJndlswXSk7Ci0gICAgZXhpdCgxKTsKLSAgfQorICAgIGlmICgw
ID09IGluZXRfYXRvbihhZGRyZXNzLCAmcmN2cl9hZGRyKSkgeworICAgICAgICBmcHJpbnRmKHN0
ZGVyciwgIiVzOiBjYW5ub3QgcGFyc2UgSVAgdjQgYWRkcmVzcyAlc1xuIiwgYXJndlswXSwKKyAg
ICAgICAgICAgICAgICBhZGRyZXNzKTsKKyAgICAgICAgZXhpdCgxKTsKKyAgICB9CisgICAgaWYg
KHJjdnJfYWRkci5zX2FkZHIgPT0gSU5BRERSX05PTkUpIHsKKyAgICAgICAgZnByaW50ZihzdGRl
cnIsICIlczogYWRkcmVzcyBlcnJvciIsIGFyZ3ZbMF0pOworICAgICAgICBleGl0KDEpOworICAg
IH0KICNlbHNlCi0gIHJjdnJfYWRkci5zX2FkZHIgPSBpbmV0X2FkZHIoYWRkcmVzcyk7Ci0gIGlm
ICgweGZmZmZmZmZmID09IHJjdnJfYWRkci5zX2FkZHIpIHsKLSAgICBmcHJpbnRmKHN0ZGVyciwg
IiVzOiBjYW5ub3QgcGFyc2UgSVAgdjQgYWRkcmVzcyAlc1xuIiwgYXJndlswXSwgYWRkcmVzcyk7
Ci0gICAgZXhpdCgxKTsKLSAgfQorICAgIHJjdnJfYWRkci5zX2FkZHIgPSBpbmV0X2FkZHIoYWRk
cmVzcyk7CisgICAgaWYgKDB4ZmZmZmZmZmYgPT0gcmN2cl9hZGRyLnNfYWRkcikgeworICAgICAg
ICBmcHJpbnRmKHN0ZGVyciwgIiVzOiBjYW5ub3QgcGFyc2UgSVAgdjQgYWRkcmVzcyAlc1xuIiwg
YXJndlswXSwKKyAgICAgICAgICAgICAgICBhZGRyZXNzKTsKKyAgICAgICAgZXhpdCgxKTsKKyAg
ICB9CiAjZW5kaWYKIAotICAvKiBvcGVuIHNvY2tldCAqLwotICBzb2NrID0gc29ja2V0KFBGX0lO
RVQsIFNPQ0tfREdSQU0sIElQUFJPVE9fVURQKTsKLSAgaWYgKHNvY2sgPCAwKSB7Ci0gICAgaW50
IGVycjsKKyAgICAvKiBvcGVuIHNvY2tldCAqLworICAgIHNvY2sgPSBzb2NrZXQoUEZfSU5FVCwg
U09DS19ER1JBTSwgSVBQUk9UT19VRFApOworICAgIGlmIChzb2NrIDwgMCkgeworICAgICAgICBp
bnQgZXJyOwogI2lmZGVmIFJUUFdfVVNFX1dJTlNPQ0syCi0gICAgZXJyID0gV1NBR2V0TGFzdEVy
cm9yKCk7CisgICAgICAgIGVyciA9IFdTQUdldExhc3RFcnJvcigpOwogI2Vsc2UKLSAgICBlcnIg
PSBlcnJubzsKKyAgICAgICAgZXJyID0gZXJybm87CiAjZW5kaWYKLSAgICBmcHJpbnRmKHN0ZGVy
ciwgIiVzOiBjb3VsZG4ndCBvcGVuIHNvY2tldDogJWRcbiIsIGFyZ3ZbMF0sIGVycik7Ci0gICBl
eGl0KDEpOwotICB9Ci0KLSAgbmFtZS5zaW5fYWRkciAgID0gcmN2cl9hZGRyOyAgICAKLSAgbmFt
ZS5zaW5fZmFtaWx5ID0gUEZfSU5FVDsKLSAgbmFtZS5zaW5fcG9ydCAgID0gaHRvbnMocG9ydCk7
Ci0gCi0gIGlmIChBRERSX0lTX01VTFRJQ0FTVChyY3ZyX2FkZHIuc19hZGRyKSkgewotICAgIGlm
IChwcm9nX3R5cGUgPT0gc2VuZGVyKSB7Ci0gICAgICByZXQgPSBzZXRzb2Nrb3B0KHNvY2ssIElQ
UFJPVE9fSVAsIElQX01VTFRJQ0FTVF9UVEwsICZ0dGwsIAotICAJICAgICAgICAgICAgICAgc2l6
ZW9mKHR0bCkpOwotICAgICAgaWYgKHJldCA8IDApIHsKLQlmcHJpbnRmKHN0ZGVyciwgIiVzOiBG
YWlsZWQgdG8gc2V0IFRUTCBmb3IgbXVsdGljYXN0IGdyb3VwIiwgYXJndlswXSk7Ci0JcGVycm9y
KCIiKTsKLQlleGl0KDEpOwotICAgICAgfQorICAgICAgICBmcHJpbnRmKHN0ZGVyciwgIiVzOiBj
b3VsZG4ndCBvcGVuIHNvY2tldDogJWRcbiIsIGFyZ3ZbMF0sIGVycik7CisgICAgICAgIGV4aXQo
MSk7CiAgICAgfQogCi0gICAgbXJlcS5pbXJfbXVsdGlhZGRyLnNfYWRkciA9IHJjdnJfYWRkci5z
X2FkZHI7Ci0gICAgbXJlcS5pbXJfaW50ZXJmYWNlLnNfYWRkciA9IGh0b25sKElOQUREUl9BTlkp
OwotICAgIHJldCA9IHNldHNvY2tvcHQoc29jaywgSVBQUk9UT19JUCwgSVBfQUREX01FTUJFUlNI
SVAsICh2b2lkKikmbXJlcSwKLQkJICAgICBzaXplb2YobXJlcSkpOwotICAgIGlmIChyZXQgPCAw
KSB7Ci0gICAgICBmcHJpbnRmKHN0ZGVyciwgIiVzOiBGYWlsZWQgdG8gam9pbiBtdWx0aWNhc3Qg
Z3JvdXAiLCBhcmd2WzBdKTsKLSAgICAgIHBlcnJvcigiIik7Ci0gICAgICBleGl0KDEpOworICAg
IG5hbWUuc2luX2FkZHIgPSByY3ZyX2FkZHI7CisgICAgbmFtZS5zaW5fZmFtaWx5ID0gUEZfSU5F
VDsKKyAgICBuYW1lLnNpbl9wb3J0ID0gaHRvbnMocG9ydCk7CisKKyAgICBpZiAoQUREUl9JU19N
VUxUSUNBU1QocmN2cl9hZGRyLnNfYWRkcikpIHsKKyAgICAgICAgaWYgKHByb2dfdHlwZSA9PSBz
ZW5kZXIpIHsKKyAgICAgICAgICAgIHJldCA9IHNldHNvY2tvcHQoc29jaywgSVBQUk9UT19JUCwg
SVBfTVVMVElDQVNUX1RUTCwgJnR0bCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6
ZW9mKHR0bCkpOworICAgICAgICAgICAgaWYgKHJldCA8IDApIHsKKyAgICAgICAgICAgICAgICBm
cHJpbnRmKHN0ZGVyciwgIiVzOiBGYWlsZWQgdG8gc2V0IFRUTCBmb3IgbXVsdGljYXN0IGdyb3Vw
IiwKKyAgICAgICAgICAgICAgICAgICAgICAgIGFyZ3ZbMF0pOworICAgICAgICAgICAgICAgIHBl
cnJvcigiIik7CisgICAgICAgICAgICAgICAgZXhpdCgxKTsKKyAgICAgICAgICAgIH0KKyAgICAg
ICAgfQorCisgICAgICAgIG1yZXEuaW1yX211bHRpYWRkci5zX2FkZHIgPSByY3ZyX2FkZHIuc19h
ZGRyOworICAgICAgICBtcmVxLmltcl9pbnRlcmZhY2Uuc19hZGRyID0gaHRvbmwoSU5BRERSX0FO
WSk7CisgICAgICAgIHJldCA9IHNldHNvY2tvcHQoc29jaywgSVBQUk9UT19JUCwgSVBfQUREX01F
TUJFUlNISVAsICh2b2lkICopJm1yZXEsCisgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZW9m
KG1yZXEpKTsKKyAgICAgICAgaWYgKHJldCA8IDApIHsKKyAgICAgICAgICAgIGZwcmludGYoc3Rk
ZXJyLCAiJXM6IEZhaWxlZCB0byBqb2luIG11bHRpY2FzdCBncm91cCIsIGFyZ3ZbMF0pOworICAg
ICAgICAgICAgcGVycm9yKCIiKTsKKyAgICAgICAgICAgIGV4aXQoMSk7CisgICAgICAgIH0KICAg
ICB9Ci0gIH0KLQotICAvKiByZXBvcnQgc2VjdXJpdHkgc2VydmljZXMgc2VsZWN0ZWQgb24gdGhl
IGNvbW1hbmQgbGluZSAqLwotICBwcmludGYoInNlY3VyaXR5IHNlcnZpY2VzOiAiKTsKLSAgaWYg
KHNlY19zZXJ2cyAmIHNlY19zZXJ2X2NvbmYpCi0gICAgcHJpbnRmKCJjb25maWRlbnRpYWxpdHkg
Iik7Ci0gIGlmIChzZWNfc2VydnMgJiBzZWNfc2Vydl9hdXRoKQotICAgIHByaW50ZigibWVzc2Fn
ZSBhdXRoZW50aWNhdGlvbiIpOwotICBpZiAoc2VjX3NlcnZzID09IHNlY19zZXJ2X25vbmUpCi0g
ICAgcHJpbnRmKCJub25lIik7Ci0gIHByaW50ZigiXG4iKTsKLSAgCi0gIC8qIHNldCB1cCB0aGUg
c3J0cCBwb2xpY3kgYW5kIG1hc3RlciBrZXkgKi8gICAgCi0gIGlmIChzZWNfc2VydnMpIHsKLSAg
ICAvKiAKLSAgICAgKiBjcmVhdGUgcG9saWN5IHN0cnVjdHVyZSwgdXNpbmcgdGhlIGRlZmF1bHQg
bWVjaGFuaXNtcyBidXQgCi0gICAgICogd2l0aCBvbmx5IHRoZSBzZWN1cml0eSBzZXJ2aWNlcyBy
ZXF1ZXN0ZWQgb24gdGhlIGNvbW1hbmQgbGluZSwKLSAgICAgKiB1c2luZyB0aGUgcmlnaHQgU1NS
QyB2YWx1ZQotICAgICAqLwotICAgIHN3aXRjaCAoc2VjX3NlcnZzKSB7Ci0gICAgY2FzZSBzZWNf
c2Vydl9jb25mX2FuZF9hdXRoOgotICAgICAgaWYgKGdjbV9vbikgeworCisgICAgLyogcmVwb3J0
IHNlY3VyaXR5IHNlcnZpY2VzIHNlbGVjdGVkIG9uIHRoZSBjb21tYW5kIGxpbmUgKi8KKyAgICBw
cmludGYoInNlY3VyaXR5IHNlcnZpY2VzOiAiKTsKKyAgICBpZiAoc2VjX3NlcnZzICYgc2VjX3Nl
cnZfY29uZikKKyAgICAgICAgcHJpbnRmKCJjb25maWRlbnRpYWxpdHkgIik7CisgICAgaWYgKHNl
Y19zZXJ2cyAmIHNlY19zZXJ2X2F1dGgpCisgICAgICAgIHByaW50ZigibWVzc2FnZSBhdXRoZW50
aWNhdGlvbiIpOworICAgIGlmIChzZWNfc2VydnMgPT0gc2VjX3NlcnZfbm9uZSkKKyAgICAgICAg
cHJpbnRmKCJub25lIik7CisgICAgcHJpbnRmKCJcbiIpOworCisgICAgLyogc2V0IHVwIHRoZSBz
cnRwIHBvbGljeSBhbmQgbWFzdGVyIGtleSAqLworICAgIGlmIChzZWNfc2VydnMpIHsKKyAgICAg
ICAgLyoKKyAgICAgICAgICogY3JlYXRlIHBvbGljeSBzdHJ1Y3R1cmUsIHVzaW5nIHRoZSBkZWZh
dWx0IG1lY2hhbmlzbXMgYnV0CisgICAgICAgICAqIHdpdGggb25seSB0aGUgc2VjdXJpdHkgc2Vy
dmljZXMgcmVxdWVzdGVkIG9uIHRoZSBjb21tYW5kIGxpbmUsCisgICAgICAgICAqIHVzaW5nIHRo
ZSByaWdodCBTU1JDIHZhbHVlCisgICAgICAgICAqLworICAgICAgICBzd2l0Y2ggKHNlY19zZXJ2
cykgeworICAgICAgICBjYXNlIHNlY19zZXJ2X2NvbmZfYW5kX2F1dGg6CisgICAgICAgICAgICBp
ZiAoZ2NtX29uKSB7CiAjaWZkZWYgT1BFTlNTTAotCXN3aXRjaCAoa2V5X3NpemUpIHsKLQljYXNl
IDEyODoKLQkgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2djbV8xMjhfOF9hdXRoKCZwb2xp
Y3kucnRwKTsKLQkgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2djbV8xMjhfOF9hdXRoKCZw
b2xpY3kucnRjcCk7Ci0JICBicmVhazsKLQljYXNlIDI1NjoKLQkgIHNydHBfY3J5cHRvX3BvbGlj
eV9zZXRfYWVzX2djbV8yNTZfOF9hdXRoKCZwb2xpY3kucnRwKTsKLQkgIHNydHBfY3J5cHRvX3Bv
bGljeV9zZXRfYWVzX2djbV8yNTZfOF9hdXRoKCZwb2xpY3kucnRjcCk7Ci0JICBicmVhazsKLQl9
CisgICAgICAgICAgICAgICAgc3dpdGNoIChrZXlfc2l6ZSkgeworICAgICAgICAgICAgICAgIGNh
c2UgMTI4OgorICAgICAgICAgICAgICAgICAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19n
Y21fMTI4XzhfYXV0aCgmcG9saWN5LnJ0cCk7CisgICAgICAgICAgICAgICAgICAgIHNydHBfY3J5
cHRvX3BvbGljeV9zZXRfYWVzX2djbV8xMjhfOF9hdXRoKCZwb2xpY3kucnRjcCk7CisgICAgICAg
ICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgICAgIGNhc2UgMjU2OgorICAgICAgICAg
ICAgICAgICAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21fMjU2XzhfYXV0aCgmcG9s
aWN5LnJ0cCk7CisgICAgICAgICAgICAgICAgICAgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVz
X2djbV8yNTZfOF9hdXRoKCZwb2xpY3kucnRjcCk7CisgICAgICAgICAgICAgICAgICAgIGJyZWFr
OworICAgICAgICAgICAgICAgIH0KICNlbHNlCi0JcHJpbnRmKCJlcnJvcjogR0NNIG1vZGUgb25s
eSBzdXBwb3J0ZWQgd2hlbiB1c2luZyB0aGUgT3BlblNTTCBjcnlwdG8gZW5naW5lLlxuIik7Ci0J
cmV0dXJuIDA7CisgICAgICAgICAgICAgICAgcHJpbnRmKCJlcnJvcjogR0NNIG1vZGUgb25seSBz
dXBwb3J0ZWQgd2hlbiB1c2luZyB0aGUgT3BlblNTTCAiCisgICAgICAgICAgICAgICAgICAgICAg
ICJjcnlwdG8gZW5naW5lLlxuIik7CisgICAgICAgICAgICAgICAgcmV0dXJuIDA7CiAjZW5kaWYK
LSAgICAgIH0gZWxzZSB7Ci0Jc3dpdGNoIChrZXlfc2l6ZSkgewotCWNhc2UgMTI4OgotICAgICAg
ICAgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfcnRwX2RlZmF1bHQoJnBvbGljeS5ydHApOwotICAg
ICAgICAgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfcnRjcF9kZWZhdWx0KCZwb2xpY3kucnRjcCk7
Ci0JICBicmVhazsKLQljYXNlIDI1NjoKLSAgICAgICAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0
X2Flc19jbV8yNTZfaG1hY19zaGExXzgwKCZwb2xpY3kucnRwKTsKLSAgICAgICAgICBzcnRwX2Ny
eXB0b19wb2xpY3lfc2V0X3J0Y3BfZGVmYXVsdCgmcG9saWN5LnJ0Y3ApOwotCSAgYnJlYWs7Ci0J
fQotICAgICAgfQotICAgICAgYnJlYWs7Ci0gICAgY2FzZSBzZWNfc2Vydl9jb25mOgotICAgICAg
aWYgKGdjbV9vbikgewotCSAgcHJpbnRmKCJlcnJvcjogR0NNIG1vZGUgbXVzdCBhbHdheXMgYmUg
dXNlZCB3aXRoIGF1dGggZW5hYmxlZFxuIik7Ci0JICByZXR1cm4gLTE7Ci0gICAgICB9IGVsc2Ug
ewotCXN3aXRjaCAoa2V5X3NpemUpIHsKLQljYXNlIDEyODoKLSAgICAgICAgICBzcnRwX2NyeXB0
b19wb2xpY3lfc2V0X2Flc19jbV8xMjhfbnVsbF9hdXRoKCZwb2xpY3kucnRwKTsKLSAgICAgICAg
ICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X3J0Y3BfZGVmYXVsdCgmcG9saWN5LnJ0Y3ApOyAgICAg
IAotCSAgYnJlYWs7Ci0JY2FzZSAyNTY6Ci0gICAgICAgICAgc3J0cF9jcnlwdG9fcG9saWN5X3Nl
dF9hZXNfY21fMjU2X251bGxfYXV0aCgmcG9saWN5LnJ0cCk7Ci0gICAgICAgICAgc3J0cF9jcnlw
dG9fcG9saWN5X3NldF9ydGNwX2RlZmF1bHQoJnBvbGljeS5ydGNwKTsgICAgICAKLQkgIGJyZWFr
OwotCX0KLSAgICAgIH0KLSAgICAgIGJyZWFrOwotICAgIGNhc2Ugc2VjX3NlcnZfYXV0aDoKLSAg
ICAgIGlmIChnY21fb24pIHsKKyAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAg
c3dpdGNoIChrZXlfc2l6ZSkgeworICAgICAgICAgICAgICAgIGNhc2UgMTI4OgorICAgICAgICAg
ICAgICAgICAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X3J0cF9kZWZhdWx0KCZwb2xpY3kucnRw
KTsKKyAgICAgICAgICAgICAgICAgICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9ydGNwX2RlZmF1
bHQoJnBvbGljeS5ydGNwKTsKKyAgICAgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAg
ICAgICAgY2FzZSAyNTY6CisgICAgICAgICAgICAgICAgICAgIHNydHBfY3J5cHRvX3BvbGljeV9z
ZXRfYWVzX2NtXzI1Nl9obWFjX3NoYTFfODAoJnBvbGljeS5ydHApOworICAgICAgICAgICAgICAg
ICAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X3J0Y3BfZGVmYXVsdCgmcG9saWN5LnJ0Y3ApOwor
ICAgICAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAg
ICB9CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSBzZWNfc2Vydl9jb25mOgorICAg
ICAgICAgICAgaWYgKGdjbV9vbikgeworICAgICAgICAgICAgICAgIHByaW50ZigKKyAgICAgICAg
ICAgICAgICAgICAgImVycm9yOiBHQ00gbW9kZSBtdXN0IGFsd2F5cyBiZSB1c2VkIHdpdGggYXV0
aCBlbmFibGVkXG4iKTsKKyAgICAgICAgICAgICAgICByZXR1cm4gLTE7CisgICAgICAgICAgICB9
IGVsc2UgeworICAgICAgICAgICAgICAgIHN3aXRjaCAoa2V5X3NpemUpIHsKKyAgICAgICAgICAg
ICAgICBjYXNlIDEyODoKKyAgICAgICAgICAgICAgICAgICAgc3J0cF9jcnlwdG9fcG9saWN5X3Nl
dF9hZXNfY21fMTI4X251bGxfYXV0aCgmcG9saWN5LnJ0cCk7CisgICAgICAgICAgICAgICAgICAg
IHNydHBfY3J5cHRvX3BvbGljeV9zZXRfcnRjcF9kZWZhdWx0KCZwb2xpY3kucnRjcCk7CisgICAg
ICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgICAgIGNhc2UgMjU2OgorICAgICAg
ICAgICAgICAgICAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19jbV8yNTZfbnVsbF9hdXRo
KCZwb2xpY3kucnRwKTsKKyAgICAgICAgICAgICAgICAgICAgc3J0cF9jcnlwdG9fcG9saWN5X3Nl
dF9ydGNwX2RlZmF1bHQoJnBvbGljeS5ydGNwKTsKKyAgICAgICAgICAgICAgICAgICAgYnJlYWs7
CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICAgICAgYnJlYWs7Cisg
ICAgICAgIGNhc2Ugc2VjX3NlcnZfYXV0aDoKKyAgICAgICAgICAgIGlmIChnY21fb24pIHsKICNp
ZmRlZiBPUEVOU1NMCi0Jc3dpdGNoIChrZXlfc2l6ZSkgewotCWNhc2UgMTI4OgotCSAgc3J0cF9j
cnlwdG9fcG9saWN5X3NldF9hZXNfZ2NtXzEyOF84X29ubHlfYXV0aCgmcG9saWN5LnJ0cCk7Ci0J
ICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21fMTI4Xzhfb25seV9hdXRoKCZwb2xpY3ku
cnRjcCk7Ci0JICBicmVhazsKLQljYXNlIDI1NjoKLQkgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRf
YWVzX2djbV8yNTZfOF9vbmx5X2F1dGgoJnBvbGljeS5ydHApOwotCSAgc3J0cF9jcnlwdG9fcG9s
aWN5X3NldF9hZXNfZ2NtXzI1Nl84X29ubHlfYXV0aCgmcG9saWN5LnJ0Y3ApOwotCSAgYnJlYWs7
Ci0JfQorICAgICAgICAgICAgICAgIHN3aXRjaCAoa2V5X3NpemUpIHsKKyAgICAgICAgICAgICAg
ICBjYXNlIDEyODoKKyAgICAgICAgICAgICAgICAgICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9h
ZXNfZ2NtXzEyOF84X29ubHlfYXV0aCgmcG9saWN5LnJ0cCk7CisgICAgICAgICAgICAgICAgICAg
IHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2djbV8xMjhfOF9vbmx5X2F1dGgoCisgICAgICAg
ICAgICAgICAgICAgICAgICAmcG9saWN5LnJ0Y3ApOworICAgICAgICAgICAgICAgICAgICBicmVh
azsKKyAgICAgICAgICAgICAgICBjYXNlIDI1NjoKKyAgICAgICAgICAgICAgICAgICAgc3J0cF9j
cnlwdG9fcG9saWN5X3NldF9hZXNfZ2NtXzI1Nl84X29ubHlfYXV0aCgmcG9saWN5LnJ0cCk7Cisg
ICAgICAgICAgICAgICAgICAgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2djbV8yNTZfOF9v
bmx5X2F1dGgoCisgICAgICAgICAgICAgICAgICAgICAgICAmcG9saWN5LnJ0Y3ApOworICAgICAg
ICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgICAgICB9CiAjZWxzZQotCXByaW50Zigi
ZXJyb3I6IEdDTSBtb2RlIG9ubHkgc3VwcG9ydGVkIHdoZW4gdXNpbmcgdGhlIE9wZW5TU0wgY3J5
cHRvIGVuZ2luZS5cbiIpOwotCXJldHVybiAwOworICAgICAgICAgICAgICAgIHByaW50ZigiZXJy
b3I6IEdDTSBtb2RlIG9ubHkgc3VwcG9ydGVkIHdoZW4gdXNpbmcgdGhlIE9wZW5TU0wgIgorICAg
ICAgICAgICAgICAgICAgICAgICAiY3J5cHRvIGVuZ2luZS5cbiIpOworICAgICAgICAgICAgICAg
IHJldHVybiAwOwogI2VuZGlmCi0gICAgICB9IGVsc2UgewotICAgICAgICBzcnRwX2NyeXB0b19w
b2xpY3lfc2V0X251bGxfY2lwaGVyX2htYWNfc2hhMV84MCgmcG9saWN5LnJ0cCk7Ci0gICAgICAg
IHNydHBfY3J5cHRvX3BvbGljeV9zZXRfcnRjcF9kZWZhdWx0KCZwb2xpY3kucnRjcCk7Ci0gICAg
ICB9Ci0gICAgICBicmVhazsKLSAgICBkZWZhdWx0OgotICAgICAgcHJpbnRmKCJlcnJvcjogdW5r
bm93biBzZWN1cml0eSBzZXJ2aWNlIHJlcXVlc3RlZFxuIik7Ci0gICAgICByZXR1cm4gLTE7Ci0g
ICAgfSAKLSAgICBwb2xpY3kuc3NyYy50eXBlICA9IHNzcmNfc3BlY2lmaWM7Ci0gICAgcG9saWN5
LnNzcmMudmFsdWUgPSBzc3JjOwotICAgIHBvbGljeS5rZXkgPSAodWludDhfdCAqKWtleTsKLSAg
ICBwb2xpY3kuZWt0ICA9IE5VTEw7Ci0gICAgcG9saWN5Lm5leHQgPSBOVUxMOwotICAgIHBvbGlj
eS53aW5kb3dfc2l6ZSA9IDEyODsKLSAgICBwb2xpY3kuYWxsb3dfcmVwZWF0X3R4ID0gMDsKLSAg
ICBwb2xpY3kucnRwLnNlY19zZXJ2ID0gc2VjX3NlcnZzOwotICAgIHBvbGljeS5ydGNwLnNlY19z
ZXJ2ID0gc2VjX3NlcnZfbm9uZTsgIC8qIHdlIGRvbid0IGRvIFJUQ1AgYW55d2F5ICovCi0KLSAg
ICBpZiAoZ2NtX29uICYmIHRhZ19zaXplICE9IDgpIHsKLQlwb2xpY3kucnRwLmF1dGhfdGFnX2xl
biA9IHRhZ19zaXplOwotICAgIH0KKyAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAg
ICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9udWxsX2NpcGhlcl9obWFjX3NoYTFfODAoJnBvbGlj
eS5ydHApOworICAgICAgICAgICAgICAgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfcnRjcF9kZWZh
dWx0KCZwb2xpY3kucnRjcCk7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBicmVhazsKKyAg
ICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHByaW50ZigiZXJyb3I6IHVua25vd24gc2VjdXJp
dHkgc2VydmljZSByZXF1ZXN0ZWRcbiIpOworICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAg
ICB9CisgICAgICAgIHBvbGljeS5zc3JjLnR5cGUgPSBzc3JjX3NwZWNpZmljOworICAgICAgICBw
b2xpY3kuc3NyYy52YWx1ZSA9IHNzcmM7CisgICAgICAgIHBvbGljeS5rZXkgPSAodWludDhfdCAq
KWtleTsKKyAgICAgICAgcG9saWN5LmVrdCA9IE5VTEw7CisgICAgICAgIHBvbGljeS5uZXh0ID0g
TlVMTDsKKyAgICAgICAgcG9saWN5LndpbmRvd19zaXplID0gMTI4OworICAgICAgICBwb2xpY3ku
YWxsb3dfcmVwZWF0X3R4ID0gMDsKKyAgICAgICAgcG9saWN5LnJ0cC5zZWNfc2VydiA9IHNlY19z
ZXJ2czsKKyAgICAgICAgcG9saWN5LnJ0Y3Auc2VjX3NlcnYgPSBzZWNfc2Vydl9ub25lOyAvKiB3
ZSBkb24ndCBkbyBSVENQIGFueXdheSAqLworCisgICAgICAgIGlmIChnY21fb24gJiYgdGFnX3Np
emUgIT0gOCkgeworICAgICAgICAgICAgcG9saWN5LnJ0cC5hdXRoX3RhZ19sZW4gPSB0YWdfc2l6
ZTsKKyAgICAgICAgfQogCi0gICAgLyoKLSAgICAgKiByZWFkIGtleSBmcm9tIGhleGFkZWNpbWFs
IG9yIGJhc2U2NCBvbiBjb21tYW5kIGxpbmUgaW50byBhbiBvY3RldCBzdHJpbmcKLSAgICAgKi8K
LSAgICBpZiAoYjY0X2lucHV0KSB7Ci0gICAgICAgIGludCBwYWQ7Ci0gICAgICAgIGV4cGVjdGVk
X2xlbiA9IChwb2xpY3kucnRwLmNpcGhlcl9rZXlfbGVuKjQpLzM7Ci0gICAgICAgIGxlbiA9IGJh
c2U2NF9zdHJpbmdfdG9fb2N0ZXRfc3RyaW5nKGtleSwgJnBhZCwgaW5wdXRfa2V5LCBleHBlY3Rl
ZF9sZW4pOwotICAgICAgICBpZiAocGFkICE9IDApIHsKLSAgICAgICAgICBmcHJpbnRmKHN0ZGVy
ciwgImVycm9yOiBwYWRkaW5nIGluIGJhc2U2NCB1bmV4cGVjdGVkXG4iKTsKLSAgICAgICAgICBl
eGl0KDEpOworICAgICAgICAvKgorICAgICAgICAgKiByZWFkIGtleSBmcm9tIGhleGFkZWNpbWFs
IG9yIGJhc2U2NCBvbiBjb21tYW5kIGxpbmUgaW50byBhbiBvY3RldAorICAgICAgICAgKiBzdHJp
bmcKKyAgICAgICAgICovCisgICAgICAgIGlmIChiNjRfaW5wdXQpIHsKKyAgICAgICAgICAgIGlu
dCBwYWQ7CisgICAgICAgICAgICBleHBlY3RlZF9sZW4gPSAocG9saWN5LnJ0cC5jaXBoZXJfa2V5
X2xlbiAqIDQpIC8gMzsKKyAgICAgICAgICAgIGxlbiA9IGJhc2U2NF9zdHJpbmdfdG9fb2N0ZXRf
c3RyaW5nKGtleSwgJnBhZCwgaW5wdXRfa2V5LAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgZXhwZWN0ZWRfbGVuKTsKKyAgICAgICAgICAgIGlmIChwYWQg
IT0gMCkgeworICAgICAgICAgICAgICAgIGZwcmludGYoc3RkZXJyLCAiZXJyb3I6IHBhZGRpbmcg
aW4gYmFzZTY0IHVuZXhwZWN0ZWRcbiIpOworICAgICAgICAgICAgICAgIGV4aXQoMSk7CisgICAg
ICAgICAgICB9CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICBleHBlY3RlZF9sZW4gPSBw
b2xpY3kucnRwLmNpcGhlcl9rZXlfbGVuICogMjsKKyAgICAgICAgICAgIGxlbiA9IGhleF9zdHJp
bmdfdG9fb2N0ZXRfc3RyaW5nKGtleSwgaW5wdXRfa2V5LCBleHBlY3RlZF9sZW4pOworICAgICAg
ICB9CisgICAgICAgIC8qIGNoZWNrIHRoYXQgaGV4IHN0cmluZyBpcyB0aGUgcmlnaHQgbGVuZ3Ro
ICovCisgICAgICAgIGlmIChsZW4gPCBleHBlY3RlZF9sZW4pIHsKKyAgICAgICAgICAgIGZwcmlu
dGYoc3RkZXJyLCAiZXJyb3I6IHRvbyBmZXcgZGlnaXRzIGluIGtleS9zYWx0ICIKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAiKHNob3VsZCBiZSAlZCBkaWdpdHMsIGZvdW5kICVkKVxuIiwK
KyAgICAgICAgICAgICAgICAgICAgZXhwZWN0ZWRfbGVuLCBsZW4pOworICAgICAgICAgICAgZXhp
dCgxKTsKKyAgICAgICAgfQorICAgICAgICBpZiAoKGludClzdHJsZW4oaW5wdXRfa2V5KSA+IHBv
bGljeS5ydHAuY2lwaGVyX2tleV9sZW4gKiAyKSB7CisgICAgICAgICAgICBmcHJpbnRmKHN0ZGVy
ciwgImVycm9yOiB0b28gbWFueSBkaWdpdHMgaW4ga2V5L3NhbHQgIgorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICIoc2hvdWxkIGJlICVkIGhleGFkZWNpbWFsIGRpZ2l0cywgZm91bmQgJXUp
XG4iLAorICAgICAgICAgICAgICAgICAgICBwb2xpY3kucnRwLmNpcGhlcl9rZXlfbGVuICogMiwg
KHVuc2lnbmVkKXN0cmxlbihpbnB1dF9rZXkpKTsKKyAgICAgICAgICAgIGV4aXQoMSk7CiAgICAg
ICAgIH0KKworICAgICAgICBwcmludGYoInNldCBtYXN0ZXIga2V5L3NhbHQgdG8gJXMvIiwgb2N0
ZXRfc3RyaW5nX2hleF9zdHJpbmcoa2V5LCAxNikpOworICAgICAgICBwcmludGYoIiVzXG4iLCBv
Y3RldF9zdHJpbmdfaGV4X3N0cmluZyhrZXkgKyAxNiwgMTQpKTsKKwogICAgIH0gZWxzZSB7Ci0g
ICAgICAgIGV4cGVjdGVkX2xlbiA9IHBvbGljeS5ydHAuY2lwaGVyX2tleV9sZW4qMjsKLSAgICAg
ICAgbGVuID0gaGV4X3N0cmluZ190b19vY3RldF9zdHJpbmcoa2V5LCBpbnB1dF9rZXksIGV4cGVj
dGVkX2xlbik7Ci0gICAgfQotICAgIC8qIGNoZWNrIHRoYXQgaGV4IHN0cmluZyBpcyB0aGUgcmln
aHQgbGVuZ3RoICovCi0gICAgaWYgKGxlbiA8IGV4cGVjdGVkX2xlbikgewotICAgICAgZnByaW50
ZihzdGRlcnIsIAotCSAgICAgICJlcnJvcjogdG9vIGZldyBkaWdpdHMgaW4ga2V5L3NhbHQgIgot
CSAgICAgICIoc2hvdWxkIGJlICVkIGRpZ2l0cywgZm91bmQgJWQpXG4iLAotCSAgICAgIGV4cGVj
dGVkX2xlbiwgbGVuKTsKLSAgICAgIGV4aXQoMSk7ICAgIAotICAgIH0gCi0gICAgaWYgKChpbnQp
IHN0cmxlbihpbnB1dF9rZXkpID4gcG9saWN5LnJ0cC5jaXBoZXJfa2V5X2xlbioyKSB7Ci0gICAg
ICBmcHJpbnRmKHN0ZGVyciwgCi0JICAgICAgImVycm9yOiB0b28gbWFueSBkaWdpdHMgaW4ga2V5
L3NhbHQgIgotCSAgICAgICIoc2hvdWxkIGJlICVkIGhleGFkZWNpbWFsIGRpZ2l0cywgZm91bmQg
JXUpXG4iLAotCSAgICAgIHBvbGljeS5ydHAuY2lwaGVyX2tleV9sZW4qMiwgKHVuc2lnbmVkKXN0
cmxlbihpbnB1dF9rZXkpKTsKLSAgICAgIGV4aXQoMSk7ICAgIAorICAgICAgICAvKgorICAgICAg
ICAgKiB3ZSdyZSBub3QgcHJvdmlkaW5nIHNlY3VyaXR5IHNlcnZpY2VzLCBzbyBzZXQgdGhlIHBv
bGljeSB0byB0aGUKKyAgICAgICAgICogbnVsbCBwb2xpY3kKKyAgICAgICAgICoKKyAgICAgICAg
ICogTm90ZSB0aGF0IHRoaXMgcG9saWN5IGRvZXMgbm90IGNvbmZvcm0gdG8gdGhlIFNSVFAKKyAg
ICAgICAgICogc3BlY2lmaWNhdGlvbiwgc2luY2UgUlRDUCBhdXRoZW50aWNhdGlvbiBpcyByZXF1
aXJlZC4gIEhvd2V2ZXIsCisgICAgICAgICAqIHRoZSBlZmZlY3Qgb2YgdGhpcyBwb2xpY3kgaXMg
dG8gdHVybiBvZmYgU1JUUCwgc28gdGhhdCB0aGlzCisgICAgICAgICAqIGFwcGxpY2F0aW9uIGlz
IG5vdyBhIHZhbmlsbGEtZmxhdm9yZWQgUlRQIGFwcGxpY2F0aW9uLgorICAgICAgICAgKi8KKyAg
ICAgICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9udWxsX2NpcGhlcl9obWFjX251bGwoJnBvbGlj
eS5ydHApOworICAgICAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X251bGxfY2lwaGVyX2htYWNf
bnVsbCgmcG9saWN5LnJ0Y3ApOworICAgICAgICBwb2xpY3kua2V5ID0gKHVpbnQ4X3QgKilrZXk7
CisgICAgICAgIHBvbGljeS5zc3JjLnR5cGUgPSBzc3JjX3NwZWNpZmljOworICAgICAgICBwb2xp
Y3kuc3NyYy52YWx1ZSA9IHNzcmM7CisgICAgICAgIHBvbGljeS53aW5kb3dfc2l6ZSA9IDA7Cisg
ICAgICAgIHBvbGljeS5hbGxvd19yZXBlYXRfdHggPSAwOworICAgICAgICBwb2xpY3kuZWt0ID0g
TlVMTDsKKyAgICAgICAgcG9saWN5Lm5leHQgPSBOVUxMOwogICAgIH0KLSAgICAKLSAgICBwcmlu
dGYoInNldCBtYXN0ZXIga2V5L3NhbHQgdG8gJXMvIiwgb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmco
a2V5LCAxNikpOwotICAgIHByaW50ZigiJXNcbiIsIG9jdGV0X3N0cmluZ19oZXhfc3RyaW5nKGtl
eSsxNiwgMTQpKTsKLSAgCi0gIH0gZWxzZSB7Ci0gICAgLyoKLSAgICAgKiB3ZSdyZSBub3QgcHJv
dmlkaW5nIHNlY3VyaXR5IHNlcnZpY2VzLCBzbyBzZXQgdGhlIHBvbGljeSB0byB0aGUKLSAgICAg
KiBudWxsIHBvbGljeQotICAgICAqCi0gICAgICogTm90ZSB0aGF0IHRoaXMgcG9saWN5IGRvZXMg
bm90IGNvbmZvcm0gdG8gdGhlIFNSVFAKLSAgICAgKiBzcGVjaWZpY2F0aW9uLCBzaW5jZSBSVENQ
IGF1dGhlbnRpY2F0aW9uIGlzIHJlcXVpcmVkLiAgSG93ZXZlciwKLSAgICAgKiB0aGUgZWZmZWN0
IG9mIHRoaXMgcG9saWN5IGlzIHRvIHR1cm4gb2ZmIFNSVFAsIHNvIHRoYXQgdGhpcwotICAgICAq
IGFwcGxpY2F0aW9uIGlzIG5vdyBhIHZhbmlsbGEtZmxhdm9yZWQgUlRQIGFwcGxpY2F0aW9uLgot
ICAgICAqLwotICAgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfbnVsbF9jaXBoZXJfaG1hY19udWxs
KCZwb2xpY3kucnRwKTsKLSAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X251bGxfY2lwaGVyX2ht
YWNfbnVsbCgmcG9saWN5LnJ0Y3ApOwotICAgIHBvbGljeS5rZXkgPSAodWludDhfdCAqKWtleTsK
LSAgICBwb2xpY3kuc3NyYy50eXBlICAgICAgICAgICA9IHNzcmNfc3BlY2lmaWM7Ci0gICAgcG9s
aWN5LnNzcmMudmFsdWUgICAgICAgICAgPSBzc3JjOwotICAgIHBvbGljeS53aW5kb3dfc2l6ZSAg
ICAgICAgID0gMDsKLSAgICBwb2xpY3kuYWxsb3dfcmVwZWF0X3R4ICAgICA9IDA7Ci0gICAgcG9s
aWN5LmVrdCAgICAgICAgICAgICAgICAgPSBOVUxMOwotICAgIHBvbGljeS5uZXh0ICAgICAgICAg
ICAgICAgID0gTlVMTDsKLSAgfQotCi0gIGlmIChwcm9nX3R5cGUgPT0gc2VuZGVyKSB7CiAKKyAg
ICBpZiAocHJvZ190eXBlID09IHNlbmRlcikgewogI2lmIEJFVwotICAgIC8qIGJpbmQgdG8gbG9j
YWwgc29ja2V0ICh0byBtYXRjaCBjcnlwdG8gcG9saWN5LCBpZiBuZWVkIGJlKSAqLwotICAgIG1l
bXNldCgmbG9jYWwsIDAsIHNpemVvZihzdHJ1Y3Qgc29ja2FkZHJfaW4pKTsKLSAgICBsb2NhbC5z
aW5fYWRkci5zX2FkZHIgPSBodG9ubChJTkFERFJfQU5ZKTsKLSAgICBsb2NhbC5zaW5fcG9ydCA9
IGh0b25zKHBvcnQpOwotICAgIHJldCA9IGJpbmQoc29jaywgKHN0cnVjdCBzb2NrYWRkciAqKSAm
bG9jYWwsIHNpemVvZihzdHJ1Y3Qgc29ja2FkZHJfaW4pKTsKLSAgICBpZiAocmV0IDwgMCkgewot
ICAgICAgZnByaW50ZihzdGRlcnIsICIlczogYmluZCBmYWlsZWRcbiIsIGFyZ3ZbMF0pOwotICAg
ICAgcGVycm9yKCIiKTsKLSAgICAgIGV4aXQoMSk7IAotICAgIH0KKyAgICAgICAgLyogYmluZCB0
byBsb2NhbCBzb2NrZXQgKHRvIG1hdGNoIGNyeXB0byBwb2xpY3ksIGlmIG5lZWQgYmUpICovCisg
ICAgICAgIG1lbXNldCgmbG9jYWwsIDAsIHNpemVvZihzdHJ1Y3Qgc29ja2FkZHJfaW4pKTsKKyAg
ICAgICAgbG9jYWwuc2luX2FkZHIuc19hZGRyID0gaHRvbmwoSU5BRERSX0FOWSk7CisgICAgICAg
IGxvY2FsLnNpbl9wb3J0ID0gaHRvbnMocG9ydCk7CisgICAgICAgIHJldCA9IGJpbmQoc29jaywg
KHN0cnVjdCBzb2NrYWRkciAqKSZsb2NhbCwgc2l6ZW9mKHN0cnVjdCBzb2NrYWRkcl9pbikpOwor
ICAgICAgICBpZiAocmV0IDwgMCkgeworICAgICAgICAgICAgZnByaW50ZihzdGRlcnIsICIlczog
YmluZCBmYWlsZWRcbiIsIGFyZ3ZbMF0pOworICAgICAgICAgICAgcGVycm9yKCIiKTsKKyAgICAg
ICAgICAgIGV4aXQoMSk7CisgICAgICAgIH0KICNlbmRpZiAvKiBCRVcgKi8KIAotICAgIC8qIGlu
aXRpYWxpemUgc2VuZGVyJ3MgcnRwIGFuZCBzcnRwIGNvbnRleHRzICovCi0gICAgc25kID0gcnRw
X3NlbmRlcl9hbGxvYygpOwotICAgIGlmIChzbmQgPT0gTlVMTCkgewotICAgICAgZnByaW50Zihz
dGRlcnIsICJlcnJvcjogbWFsbG9jKCkgZmFpbGVkXG4iKTsKLSAgICAgIGV4aXQoMSk7Ci0gICAg
fQotICAgIHJ0cF9zZW5kZXJfaW5pdChzbmQsIHNvY2ssIG5hbWUsIHNzcmMpOyAKLSAgICBzdGF0
dXMgPSBydHBfc2VuZGVyX2luaXRfc3J0cChzbmQsICZwb2xpY3kpOwotICAgIGlmIChzdGF0dXMp
IHsKLSAgICAgIGZwcmludGYoc3RkZXJyLCAKLQkgICAgICAiZXJyb3I6IHNydHBfY3JlYXRlKCkg
ZmFpbGVkIHdpdGggY29kZSAlZFxuIiwgCi0JICAgICAgc3RhdHVzKTsKLSAgICAgIGV4aXQoMSk7
Ci0gICAgfQotIAotICAgIC8qIG9wZW4gZGljdGlvbmFyeSAqLwotICAgIGRpY3QgPSBmb3BlbiAo
ZGljdGZpbGUsICJyIik7Ci0gICAgaWYgKGRpY3QgPT0gTlVMTCkgewotICAgICAgZnByaW50Zihz
dGRlcnIsICIlczogY291bGRuJ3Qgb3BlbiBmaWxlICVzXG4iLCBhcmd2WzBdLCBkaWN0ZmlsZSk7
Ci0gICAgICBpZiAoQUREUl9JU19NVUxUSUNBU1QocmN2cl9hZGRyLnNfYWRkcikpIHsKLSAgCWxl
YXZlX2dyb3VwKHNvY2ssIG1yZXEsIGFyZ3ZbMF0pOwotICAgICAgfQotICAgICAgZXhpdCgxKTsK
LSAgICB9Ci0gICAgICAgICAgCi0gICAgLyogcmVhZCB3b3JkcyBmcm9tIGRpY3Rpb25hcnksIHRo
ZW4gc2VuZCB0aGVtIG9mZiAqLwotICAgIHdoaWxlICghaW50ZXJydXB0ZWQgJiYgZmdldHMod29y
ZCwgTUFYX1dPUkRfTEVOLCBkaWN0KSAhPSBOVUxMKSB7IAotICAgICAgbGVuID0gc3RybGVuKHdv
cmQpICsgMTsgIC8qIHBsdXMgb25lIGZvciBudWxsICovCi0gICAgICAKLSAgICAgIGlmIChsZW4g
PiBNQVhfV09SRF9MRU4pIAotCXByaW50ZigiZXJyb3I6IHdvcmQgJXMgdG9vIGxhcmdlIHRvIHNl
bmRcbiIsIHdvcmQpOwotICAgICAgZWxzZSB7Ci0JcnRwX3NlbmR0byhzbmQsIHdvcmQsIGxlbik7
Ci0gICAgICAgIHByaW50Zigic2VuZGluZyB3b3JkOiAlcyIsIHdvcmQpOwotICAgICAgfQotICAg
ICAgdXNsZWVwKFVTRUNfUkFURSk7Ci0gICAgfQorICAgICAgICAvKiBpbml0aWFsaXplIHNlbmRl
cidzIHJ0cCBhbmQgc3J0cCBjb250ZXh0cyAqLworICAgICAgICBzbmQgPSBydHBfc2VuZGVyX2Fs
bG9jKCk7CisgICAgICAgIGlmIChzbmQgPT0gTlVMTCkgeworICAgICAgICAgICAgZnByaW50Zihz
dGRlcnIsICJlcnJvcjogbWFsbG9jKCkgZmFpbGVkXG4iKTsKKyAgICAgICAgICAgIGV4aXQoMSk7
CisgICAgICAgIH0KKyAgICAgICAgcnRwX3NlbmRlcl9pbml0KHNuZCwgc29jaywgbmFtZSwgc3Ny
Yyk7CisgICAgICAgIHN0YXR1cyA9IHJ0cF9zZW5kZXJfaW5pdF9zcnRwKHNuZCwgJnBvbGljeSk7
CisgICAgICAgIGlmIChzdGF0dXMpIHsKKyAgICAgICAgICAgIGZwcmludGYoc3RkZXJyLCAiZXJy
b3I6IHNydHBfY3JlYXRlKCkgZmFpbGVkIHdpdGggY29kZSAlZFxuIiwKKyAgICAgICAgICAgICAg
ICAgICAgc3RhdHVzKTsKKyAgICAgICAgICAgIGV4aXQoMSk7CisgICAgICAgIH0KIAotICAgIHJ0
cF9zZW5kZXJfZGVpbml0X3NydHAoc25kKTsKLSAgICBydHBfc2VuZGVyX2RlYWxsb2Moc25kKTsK
LQotICAgIGZjbG9zZShkaWN0KTsKLSAgfSBlbHNlICB7IC8qIHByb2dfdHlwZSA9PSByZWNlaXZl
ciAqLwotICAgIHJ0cF9yZWNlaXZlcl90IHJjdnI7Ci0gICAgICAgIAotICAgIGlmIChiaW5kKHNv
Y2ssIChzdHJ1Y3Qgc29ja2FkZHIgKikmbmFtZSwgc2l6ZW9mKG5hbWUpKSA8IDApIHsKLSAgICAg
IGNsb3NlKHNvY2spOwotICAgICAgZnByaW50ZihzdGRlcnIsICIlczogc29ja2V0IGJpbmQgZXJy
b3JcbiIsIGFyZ3ZbMF0pOwotICAgICAgcGVycm9yKE5VTEwpOwotICAgICAgaWYgKEFERFJfSVNf
TVVMVElDQVNUKHJjdnJfYWRkci5zX2FkZHIpKSB7Ci0gICAgCWxlYXZlX2dyb3VwKHNvY2ssIG1y
ZXEsIGFyZ3ZbMF0pOwotICAgICAgfQotICAgICAgZXhpdCgxKTsKLSAgICB9CisgICAgICAgIC8q
IG9wZW4gZGljdGlvbmFyeSAqLworICAgICAgICBkaWN0ID0gZm9wZW4oZGljdGZpbGUsICJyIik7
CisgICAgICAgIGlmIChkaWN0ID09IE5VTEwpIHsKKyAgICAgICAgICAgIGZwcmludGYoc3RkZXJy
LCAiJXM6IGNvdWxkbid0IG9wZW4gZmlsZSAlc1xuIiwgYXJndlswXSwgZGljdGZpbGUpOworICAg
ICAgICAgICAgaWYgKEFERFJfSVNfTVVMVElDQVNUKHJjdnJfYWRkci5zX2FkZHIpKSB7CisgICAg
ICAgICAgICAgICAgbGVhdmVfZ3JvdXAoc29jaywgbXJlcSwgYXJndlswXSk7CisgICAgICAgICAg
ICB9CisgICAgICAgICAgICBleGl0KDEpOworICAgICAgICB9CiAKLSAgICByY3ZyID0gcnRwX3Jl
Y2VpdmVyX2FsbG9jKCk7Ci0gICAgaWYgKHJjdnIgPT0gTlVMTCkgewotICAgICAgZnByaW50Zihz
dGRlcnIsICJlcnJvcjogbWFsbG9jKCkgZmFpbGVkXG4iKTsKLSAgICAgIGV4aXQoMSk7Ci0gICAg
fQotICAgIHJ0cF9yZWNlaXZlcl9pbml0KHJjdnIsIHNvY2ssIG5hbWUsIHNzcmMpOwotICAgIHN0
YXR1cyA9IHJ0cF9yZWNlaXZlcl9pbml0X3NydHAocmN2ciwgJnBvbGljeSk7Ci0gICAgaWYgKHN0
YXR1cykgewotICAgICAgZnByaW50ZihzdGRlcnIsIAotCSAgICAgICJlcnJvcjogc3J0cF9jcmVh
dGUoKSBmYWlsZWQgd2l0aCBjb2RlICVkXG4iLCAKLQkgICAgICBzdGF0dXMpOwotICAgICAgZXhp
dCgxKTsKLSAgICB9CisgICAgICAgIC8qIHJlYWQgd29yZHMgZnJvbSBkaWN0aW9uYXJ5LCB0aGVu
IHNlbmQgdGhlbSBvZmYgKi8KKyAgICAgICAgd2hpbGUgKCFpbnRlcnJ1cHRlZCAmJiBmZ2V0cyh3
b3JkLCBNQVhfV09SRF9MRU4sIGRpY3QpICE9IE5VTEwpIHsKKyAgICAgICAgICAgIGxlbiA9IHN0
cmxlbih3b3JkKSArIDE7IC8qIHBsdXMgb25lIGZvciBudWxsICovCisKKyAgICAgICAgICAgIGlm
IChsZW4gPiBNQVhfV09SRF9MRU4pCisgICAgICAgICAgICAgICAgcHJpbnRmKCJlcnJvcjogd29y
ZCAlcyB0b28gbGFyZ2UgdG8gc2VuZFxuIiwgd29yZCk7CisgICAgICAgICAgICBlbHNlIHsKKyAg
ICAgICAgICAgICAgICBydHBfc2VuZHRvKHNuZCwgd29yZCwgbGVuKTsKKyAgICAgICAgICAgICAg
ICBwcmludGYoInNlbmRpbmcgd29yZDogJXMiLCB3b3JkKTsKKyAgICAgICAgICAgIH0KKyAgICAg
ICAgICAgIHVzbGVlcChVU0VDX1JBVEUpOworICAgICAgICB9CisKKyAgICAgICAgcnRwX3NlbmRl
cl9kZWluaXRfc3J0cChzbmQpOworICAgICAgICBydHBfc2VuZGVyX2RlYWxsb2Moc25kKTsKKwor
ICAgICAgICBmY2xvc2UoZGljdCk7CisgICAgfSBlbHNlIHsgLyogcHJvZ190eXBlID09IHJlY2Vp
dmVyICovCisgICAgICAgIHJ0cF9yZWNlaXZlcl90IHJjdnI7CisKKyAgICAgICAgaWYgKGJpbmQo
c29jaywgKHN0cnVjdCBzb2NrYWRkciAqKSZuYW1lLCBzaXplb2YobmFtZSkpIDwgMCkgeworICAg
ICAgICAgICAgY2xvc2Uoc29jayk7CisgICAgICAgICAgICBmcHJpbnRmKHN0ZGVyciwgIiVzOiBz
b2NrZXQgYmluZCBlcnJvclxuIiwgYXJndlswXSk7CisgICAgICAgICAgICBwZXJyb3IoTlVMTCk7
CisgICAgICAgICAgICBpZiAoQUREUl9JU19NVUxUSUNBU1QocmN2cl9hZGRyLnNfYWRkcikpIHsK
KyAgICAgICAgICAgICAgICBsZWF2ZV9ncm91cChzb2NrLCBtcmVxLCBhcmd2WzBdKTsKKyAgICAg
ICAgICAgIH0KKyAgICAgICAgICAgIGV4aXQoMSk7CisgICAgICAgIH0KIAotICAgIC8qIGdldCBu
ZXh0IHdvcmQgYW5kIGxvb3AgKi8KLSAgICB3aGlsZSAoIWludGVycnVwdGVkKSB7Ci0gICAgICBs
ZW4gPSBNQVhfV09SRF9MRU47Ci0gICAgICBpZiAocnRwX3JlY3Zmcm9tKHJjdnIsIHdvcmQsICZs
ZW4pID4gLTEpCi0JcHJpbnRmKCJcdHdvcmQ6ICVzXG4iLCB3b3JkKTsKKyAgICAgICAgcmN2ciA9
IHJ0cF9yZWNlaXZlcl9hbGxvYygpOworICAgICAgICBpZiAocmN2ciA9PSBOVUxMKSB7CisgICAg
ICAgICAgICBmcHJpbnRmKHN0ZGVyciwgImVycm9yOiBtYWxsb2MoKSBmYWlsZWRcbiIpOworICAg
ICAgICAgICAgZXhpdCgxKTsKKyAgICAgICAgfQorICAgICAgICBydHBfcmVjZWl2ZXJfaW5pdChy
Y3ZyLCBzb2NrLCBuYW1lLCBzc3JjKTsKKyAgICAgICAgc3RhdHVzID0gcnRwX3JlY2VpdmVyX2lu
aXRfc3J0cChyY3ZyLCAmcG9saWN5KTsKKyAgICAgICAgaWYgKHN0YXR1cykgeworICAgICAgICAg
ICAgZnByaW50ZihzdGRlcnIsICJlcnJvcjogc3J0cF9jcmVhdGUoKSBmYWlsZWQgd2l0aCBjb2Rl
ICVkXG4iLAorICAgICAgICAgICAgICAgICAgICBzdGF0dXMpOworICAgICAgICAgICAgZXhpdCgx
KTsKKyAgICAgICAgfQorCisgICAgICAgIC8qIGdldCBuZXh0IHdvcmQgYW5kIGxvb3AgKi8KKyAg
ICAgICAgd2hpbGUgKCFpbnRlcnJ1cHRlZCkgeworICAgICAgICAgICAgbGVuID0gTUFYX1dPUkRf
TEVOOworICAgICAgICAgICAgaWYgKHJ0cF9yZWN2ZnJvbShyY3ZyLCB3b3JkLCAmbGVuKSA+IC0x
KQorICAgICAgICAgICAgICAgIHByaW50ZigiXHR3b3JkOiAlc1xuIiwgd29yZCk7CisgICAgICAg
IH0KKworICAgICAgICBydHBfcmVjZWl2ZXJfZGVpbml0X3NydHAocmN2cik7CisgICAgICAgIHJ0
cF9yZWNlaXZlcl9kZWFsbG9jKHJjdnIpOwogICAgIH0KLSAgICAgIAotICAgIHJ0cF9yZWNlaXZl
cl9kZWluaXRfc3J0cChyY3ZyKTsKLSAgICBydHBfcmVjZWl2ZXJfZGVhbGxvYyhyY3ZyKTsKLSAg
fSAKIAotICBpZiAoQUREUl9JU19NVUxUSUNBU1QocmN2cl9hZGRyLnNfYWRkcikpIHsKLSAgICBs
ZWF2ZV9ncm91cChzb2NrLCBtcmVxLCBhcmd2WzBdKTsKLSAgfQorICAgIGlmIChBRERSX0lTX01V
TFRJQ0FTVChyY3ZyX2FkZHIuc19hZGRyKSkgeworICAgICAgICBsZWF2ZV9ncm91cChzb2NrLCBt
cmVxLCBhcmd2WzBdKTsKKyAgICB9CiAKICNpZmRlZiBSVFBXX1VTRV9XSU5TT0NLMgotICByZXQg
PSBjbG9zZXNvY2tldChzb2NrKTsKKyAgICByZXQgPSBjbG9zZXNvY2tldChzb2NrKTsKICNlbHNl
Ci0gIHJldCA9IGNsb3NlKHNvY2spOworICAgIHJldCA9IGNsb3NlKHNvY2spOwogI2VuZGlmCi0g
IGlmIChyZXQgPCAwKSB7Ci0gICAgZnByaW50ZihzdGRlcnIsICIlczogRmFpbGVkIHRvIGNsb3Nl
IHNvY2tldCIsIGFyZ3ZbMF0pOwotICAgIHBlcnJvcigiIik7Ci0gIH0KLQotICBzdGF0dXMgPSBz
cnRwX3NodXRkb3duKCk7Ci0gIGlmIChzdGF0dXMpIHsKLSAgICBwcmludGYoImVycm9yOiBzcnRw
IHNodXRkb3duIGZhaWxlZCB3aXRoIGVycm9yIGNvZGUgJWRcbiIsIHN0YXR1cyk7Ci0gICAgZXhp
dCgxKTsKLSAgfQorICAgIGlmIChyZXQgPCAwKSB7CisgICAgICAgIGZwcmludGYoc3RkZXJyLCAi
JXM6IEZhaWxlZCB0byBjbG9zZSBzb2NrZXQiLCBhcmd2WzBdKTsKKyAgICAgICAgcGVycm9yKCIi
KTsKKyAgICB9CisKKyAgICBzdGF0dXMgPSBzcnRwX3NodXRkb3duKCk7CisgICAgaWYgKHN0YXR1
cykgeworICAgICAgICBwcmludGYoImVycm9yOiBzcnRwIHNodXRkb3duIGZhaWxlZCB3aXRoIGVy
cm9yIGNvZGUgJWRcbiIsIHN0YXR1cyk7CisgICAgICAgIGV4aXQoMSk7CisgICAgfQogCiAjaWZk
ZWYgUlRQV19VU0VfV0lOU09DSzIKLSAgV1NBQ2xlYW51cCgpOworICAgIFdTQUNsZWFudXAoKTsK
ICNlbmRpZgogCi0gIHJldHVybiAwOworICAgIHJldHVybiAwOwogfQogCi0KLXZvaWQKLXVzYWdl
KGNoYXIgKnN0cmluZykgewotCi0gIHByaW50ZigidXNhZ2U6ICVzIFstZCA8ZGVidWc+XSogWy1r
IDxrZXk+IFstYV1bLWVdXSAiCi0JICJbLXMgfCAtcl0gZGVzdF9pcCBkZXN0X3BvcnRcbiIKLQkg
Im9yICAgICAlcyAtbFxuIgotCSAid2hlcmUgIC1hIHVzZSBtZXNzYWdlIGF1dGhlbnRpY2F0aW9u
XG4iCi0JICIgICAgICAgLWUgPGtleSBzaXplPiB1c2UgZW5jcnlwdGlvbiAodXNlIDEyOCBvciAy
NTYgZm9yIGtleSBzaXplKVxuIgotCSAiICAgICAgIC1nIFVzZSBBRVMtR0NNIG1vZGUgKG11c3Qg
YmUgdXNlZCB3aXRoIC1lKVxuIgotCSAiICAgICAgIC10IDx0YWcgc2l6ZT4gVGFnIHNpemUgdG8g
dXNlIGluIEdDTSBtb2RlICh1c2UgOCBvciAxNilcbiIKLQkgIiAgICAgICAtayA8a2V5PiAgc2V0
cyB0aGUgc3J0cCBtYXN0ZXIga2V5IGdpdmVuIGluIGhleGFkZWNpbWFsXG4iCi0JICIgICAgICAg
LWIgPGtleT4gIHNldHMgdGhlIHNydHAgbWFzdGVyIGtleSBnaXZlbiBpbiBiYXNlNjRcbiIKLQkg
IiAgICAgICAtcyBhY3QgYXMgcnRwIHNlbmRlclxuIgotCSAiICAgICAgIC1yIGFjdCBhcyBydHAg
cmVjZWl2ZXJcbiIKLQkgIiAgICAgICAtbCBsaXN0IGRlYnVnIG1vZHVsZXNcbiIKLQkgIiAgICAg
ICAtZCA8ZGVidWc+IHR1cm4gb24gZGVidWdnaW5nIGZvciBtb2R1bGUgPGRlYnVnPlxuIiwKLQkg
c3RyaW5nLCBzdHJpbmcpOwotICBleGl0KDEpOwotICAKK3ZvaWQgdXNhZ2UoY2hhciAqc3RyaW5n
KQoreworICAgIHByaW50ZigidXNhZ2U6ICVzIFstZCA8ZGVidWc+XSogWy1rIDxrZXk+IFstYV1b
LWVdXSAiCisgICAgICAgICAgICJbLXMgfCAtcl0gZGVzdF9pcCBkZXN0X3BvcnRcbiIKKyAgICAg
ICAgICAgIm9yICAgICAlcyAtbFxuIgorICAgICAgICAgICAid2hlcmUgIC1hIHVzZSBtZXNzYWdl
IGF1dGhlbnRpY2F0aW9uXG4iCisgICAgICAgICAgICIgICAgICAgLWUgPGtleSBzaXplPiB1c2Ug
ZW5jcnlwdGlvbiAodXNlIDEyOCBvciAyNTYgZm9yIGtleSBzaXplKVxuIgorICAgICAgICAgICAi
ICAgICAgIC1nIFVzZSBBRVMtR0NNIG1vZGUgKG11c3QgYmUgdXNlZCB3aXRoIC1lKVxuIgorICAg
ICAgICAgICAiICAgICAgIC10IDx0YWcgc2l6ZT4gVGFnIHNpemUgdG8gdXNlIGluIEdDTSBtb2Rl
ICh1c2UgOCBvciAxNilcbiIKKyAgICAgICAgICAgIiAgICAgICAtayA8a2V5PiAgc2V0cyB0aGUg
c3J0cCBtYXN0ZXIga2V5IGdpdmVuIGluIGhleGFkZWNpbWFsXG4iCisgICAgICAgICAgICIgICAg
ICAgLWIgPGtleT4gIHNldHMgdGhlIHNydHAgbWFzdGVyIGtleSBnaXZlbiBpbiBiYXNlNjRcbiIK
KyAgICAgICAgICAgIiAgICAgICAtcyBhY3QgYXMgcnRwIHNlbmRlclxuIgorICAgICAgICAgICAi
ICAgICAgIC1yIGFjdCBhcyBydHAgcmVjZWl2ZXJcbiIKKyAgICAgICAgICAgIiAgICAgICAtbCBs
aXN0IGRlYnVnIG1vZHVsZXNcbiIKKyAgICAgICAgICAgIiAgICAgICAtZCA8ZGVidWc+IHR1cm4g
b24gZGVidWdnaW5nIGZvciBtb2R1bGUgPGRlYnVnPlxuIgorICAgICAgICAgICAiICAgICAgIC13
IDx3b3Jkc2ZpbGU+IHVzZSA8d29yZHNmaWxlPiBmb3IgaW5wdXQsIHJhdGhlciB0aGFuICVzXG4i
LAorICAgICAgICAgICBzdHJpbmcsIHN0cmluZywgRElDVF9GSUxFKTsKKyAgICBleGl0KDEpOwog
fQogCit2b2lkIGxlYXZlX2dyb3VwKGludCBzb2NrLCBzdHJ1Y3QgaXBfbXJlcSBtcmVxLCBjaGFy
ICpuYW1lKQoreworICAgIGludCByZXQ7CiAKLXZvaWQKLWxlYXZlX2dyb3VwKGludCBzb2NrLCBz
dHJ1Y3QgaXBfbXJlcSBtcmVxLCBjaGFyICpuYW1lKSB7Ci0gIGludCByZXQ7Ci0KLSAgcmV0ID0g
c2V0c29ja29wdChzb2NrLCBJUFBST1RPX0lQLCBJUF9EUk9QX01FTUJFUlNISVAsICh2b2lkKikm
bXJlcSwKLQkJICAgc2l6ZW9mKG1yZXEpKTsKLSAgaWYgKHJldCA8IDApIHsKLQlmcHJpbnRmKHN0
ZGVyciwgIiVzOiBGYWlsZWQgdG8gbGVhdmUgbXVsdGljYXN0IGdyb3VwIiwgbmFtZSk7Ci0JcGVy
cm9yKCIiKTsKLSAgfQorICAgIHJldCA9IHNldHNvY2tvcHQoc29jaywgSVBQUk9UT19JUCwgSVBf
RFJPUF9NRU1CRVJTSElQLCAodm9pZCAqKSZtcmVxLAorICAgICAgICAgICAgICAgICAgICAgc2l6
ZW9mKG1yZXEpKTsKKyAgICBpZiAocmV0IDwgMCkgeworICAgICAgICBmcHJpbnRmKHN0ZGVyciwg
IiVzOiBGYWlsZWQgdG8gbGVhdmUgbXVsdGljYXN0IGdyb3VwIiwgbmFtZSk7CisgICAgICAgIHBl
cnJvcigiIik7CisgICAgfQogfQogCiB2b2lkIGhhbmRsZV9zaWduYWwoaW50IHNpZ251bSkKIHsK
LSAgaW50ZXJydXB0ZWQgPSAxOwotICAvKiBSZXNldCBoYW5kbGVyIGV4cGxpY2l0bHksIGluIGNh
c2Ugd2UgZG9uJ3QgaGF2ZSBzaWdhY3Rpb24oKSAoYW5kIHNpZ25hbCgpCi0gICAgIGhhcyBCU0Qg
c2VtYW50aWNzKSwgb3Igd2UgZG9uJ3QgaGF2ZSBTQV9SRVNFVEhBTkQgKi8KLSAgc2lnbmFsKHNp
Z251bSwgU0lHX0RGTCk7CisgICAgaW50ZXJydXB0ZWQgPSAxOworICAgIC8qIFJlc2V0IGhhbmRs
ZXIgZXhwbGljaXRseSwgaW4gY2FzZSB3ZSBkb24ndCBoYXZlIHNpZ2FjdGlvbigpIChhbmQgc2ln
bmFsKCkKKyAgICAgICBoYXMgQlNEIHNlbWFudGljcyksIG9yIHdlIGRvbid0IGhhdmUgU0FfUkVT
RVRIQU5EICovCisgICAgc2lnbmFsKHNpZ251bSwgU0lHX0RGTCk7CiB9CiAKLWludCBzZXR1cF9z
aWduYWxfaGFuZGxlcihjaGFyKiBuYW1lKQoraW50IHNldHVwX3NpZ25hbF9oYW5kbGVyKGNoYXIg
Km5hbWUpCiB7CiAjaWYgSEFWRV9TSUdBQ1RJT04KLSAgc3RydWN0IHNpZ2FjdGlvbiBhY3Q7Ci0g
IG1lbXNldCgmYWN0LCAwLCBzaXplb2YoYWN0KSk7CisgICAgc3RydWN0IHNpZ2FjdGlvbiBhY3Q7
CisgICAgbWVtc2V0KCZhY3QsIDAsIHNpemVvZihhY3QpKTsKIAotICBhY3Quc2FfaGFuZGxlciA9
IGhhbmRsZV9zaWduYWw7Ci0gIHNpZ2VtcHR5c2V0KCZhY3Quc2FfbWFzayk7CisgICAgYWN0LnNh
X2hhbmRsZXIgPSBoYW5kbGVfc2lnbmFsOworICAgIHNpZ2VtcHR5c2V0KCZhY3Quc2FfbWFzayk7
CiAjaWYgZGVmaW5lZChTQV9SRVNFVEhBTkQpCi0gIGFjdC5zYV9mbGFncyA9IFNBX1JFU0VUSEFO
RDsKKyAgICBhY3Quc2FfZmxhZ3MgPSBTQV9SRVNFVEhBTkQ7CiAjZWxzZQotICBhY3Quc2FfZmxh
Z3MgPSAwOworICAgIGFjdC5zYV9mbGFncyA9IDA7CiAjZW5kaWYKLSAgLyogTm90ZSB0aGF0IHdl
J3JlIG5vdCBzZXR0aW5nIFNBX1JFU1RBUlQ7IHdlIHdhbnQgcmVjdmZyb20gdG8gcmV0dXJuCi0g
ICAqIEVJTlRSIHdoZW4gd2Ugc2lnbmFsIHRoZSByZWNlaXZlci4gKi8KLSAgCi0gIGlmIChzaWdh
Y3Rpb24oU0lHVEVSTSwgJmFjdCwgTlVMTCkgIT0gMCkgewotICAgIGZwcmludGYoc3RkZXJyLCAi
JXM6IGVycm9yIHNldHRpbmcgdXAgc2lnbmFsIGhhbmRsZXIiLCBuYW1lKTsKLSAgICBwZXJyb3Io
IiIpOwotICAgIHJldHVybiAtMTsKLSAgfQorICAgIC8qIE5vdGUgdGhhdCB3ZSdyZSBub3Qgc2V0
dGluZyBTQV9SRVNUQVJUOyB3ZSB3YW50IHJlY3Zmcm9tIHRvIHJldHVybgorICAgICAqIEVJTlRS
IHdoZW4gd2Ugc2lnbmFsIHRoZSByZWNlaXZlci4gKi8KKworICAgIGlmIChzaWdhY3Rpb24oU0lH
VEVSTSwgJmFjdCwgTlVMTCkgIT0gMCkgeworICAgICAgICBmcHJpbnRmKHN0ZGVyciwgIiVzOiBl
cnJvciBzZXR0aW5nIHVwIHNpZ25hbCBoYW5kbGVyIiwgbmFtZSk7CisgICAgICAgIHBlcnJvcigi
Iik7CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CiAjZWxzZQotICBpZiAoc2lnbmFsKFNJR1RF
Uk0sIGhhbmRsZV9zaWduYWwpID09IFNJR19FUlIpIHsKLSAgICBmcHJpbnRmKHN0ZGVyciwgIiVz
OiBlcnJvciBzZXR0aW5nIHVwIHNpZ25hbCBoYW5kbGVyIiwgbmFtZSk7Ci0gICAgcGVycm9yKCIi
KTsKLSAgICByZXR1cm4gLTE7Ci0gIH0KKyAgICBpZiAoc2lnbmFsKFNJR1RFUk0sIGhhbmRsZV9z
aWduYWwpID09IFNJR19FUlIpIHsKKyAgICAgICAgZnByaW50ZihzdGRlcnIsICIlczogZXJyb3Ig
c2V0dGluZyB1cCBzaWduYWwgaGFuZGxlciIsIG5hbWUpOworICAgICAgICBwZXJyb3IoIiIpOwor
ICAgICAgICByZXR1cm4gLTE7CisgICAgfQogI2VuZGlmCi0gIHJldHVybiAwOworICAgIHJldHVy
biAwOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9saWJzcnRwL3Rlc3Qvc3J0cF9kcml2ZXIuYyBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC90ZXN0L3NydHBfZHJpdmVyLmMK
aW5kZXggNTYwNTJhNjMyMWQ1MTdmMTVkYzI2MTJlYzQzNmJlZDI4NzNmYmJmMS4uNGVhOGZlNTMw
MmMxYmUzNDkyOWY5YjBkOWYyNzcxMGJiMTNjY2JjZSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL3Rlc3Qvc3J0cF9kcml2
ZXIuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L2xpYnNydHAvdGVzdC9zcnRwX2RyaXZlci5jCkBAIC0xLDUgKzEsMyBAQAotCi0KIC8qCiAgKiBz
cnRwX2RyaXZlci5jCiAgKgpAQCAtNDQsNyArNDIsNiBAQAogICoKICAqLwogCi0KICNpbmNsdWRl
IDxzdHJpbmcuaD4gICAvKiBmb3IgbWVtY3B5KCkgICAgICAgICAgKi8KICNpbmNsdWRlIDx0aW1l
Lmg+ICAgICAvKiBmb3IgY2xvY2soKSAgICAgICAgICAgKi8KICNpbmNsdWRlIDxzdGRsaWIuaD4g
ICAvKiBmb3IgbWFsbG9jKCksIGZyZWUoKSAgKi8KQEAgLTU1LDk2ICs1Miw3MyBAQAogI2luY2x1
ZGUgInV0aWwuaCIKIAogI2lmZGVmIEhBVkVfTkVUSU5FVF9JTl9ICi0jIGluY2x1ZGUgPG5ldGlu
ZXQvaW4uaD4KKyNpbmNsdWRlIDxuZXRpbmV0L2luLmg+CiAjZWxpZiBkZWZpbmVkIEhBVkVfV0lO
U09DSzJfSAotIyBpbmNsdWRlIDx3aW5zb2NrMi5oPgorI2luY2x1ZGUgPHdpbnNvY2syLmg+CiAj
ZW5kaWYKIAogI2RlZmluZSBQUklOVF9SRUZFUkVOQ0VfUEFDS0VUIDEKIAotc3J0cF9lcnJfc3Rh
dHVzX3QKLXNydHBfdmFsaWRhdGUodm9pZCk7CitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3ZhbGlk
YXRlKHZvaWQpOwogCiAjaWZkZWYgT1BFTlNTTAotc3J0cF9lcnJfc3RhdHVzX3QKLXNydHBfdmFs
aWRhdGVfZ2NtKHZvaWQpOworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF92YWxpZGF0ZV9nY20odm9p
ZCk7CiAjZW5kaWYKIAotc3J0cF9lcnJfc3RhdHVzX3QKLXNydHBfdmFsaWRhdGVfZW5jcnlwdGVk
X2V4dGVuc2lvbnNfaGVhZGVycyh2b2lkKTsKK3NydHBfZXJyX3N0YXR1c190IHNydHBfdmFsaWRh
dGVfZW5jcnlwdGVkX2V4dGVuc2lvbnNfaGVhZGVycyh2b2lkKTsKIAogI2lmZGVmIE9QRU5TU0wK
LXNydHBfZXJyX3N0YXR1c190Ci1zcnRwX3ZhbGlkYXRlX2VuY3J5cHRlZF9leHRlbnNpb25zX2hl
YWRlcnNfZ2NtKHZvaWQpOworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF92YWxpZGF0ZV9lbmNyeXB0
ZWRfZXh0ZW5zaW9uc19oZWFkZXJzX2djbSh2b2lkKTsKICNlbmRpZgogCi1zcnRwX2Vycl9zdGF0
dXNfdAotc3J0cF92YWxpZGF0ZV9hZXNfMjU2KHZvaWQpOworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0
cF92YWxpZGF0ZV9hZXNfMjU2KHZvaWQpOwogCi1zcnRwX2Vycl9zdGF0dXNfdAotc3J0cF9jcmVh
dGVfYmlnX3BvbGljeShzcnRwX3BvbGljeV90ICoqbGlzdCk7CitzcnRwX2Vycl9zdGF0dXNfdCBz
cnRwX2NyZWF0ZV9iaWdfcG9saWN5KHNydHBfcG9saWN5X3QgKipsaXN0KTsKIAotc3J0cF9lcnJf
c3RhdHVzX3QKLXNydHBfZGVhbGxvY19iaWdfcG9saWN5KHNydHBfcG9saWN5X3QgKmxpc3QpOwor
c3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9kZWFsbG9jX2JpZ19wb2xpY3koc3J0cF9wb2xpY3lfdCAq
bGlzdCk7CiAKLXNydHBfZXJyX3N0YXR1c190Ci1zcnRwX3Rlc3RfZW1wdHlfcGF5bG9hZCh2b2lk
KTsKK3NydHBfZXJyX3N0YXR1c190IHNydHBfdGVzdF9lbXB0eV9wYXlsb2FkKHZvaWQpOwogCiAj
aWZkZWYgT1BFTlNTTAotc3J0cF9lcnJfc3RhdHVzX3QKLXNydHBfdGVzdF9lbXB0eV9wYXlsb2Fk
X2djbSh2b2lkKTsKK3NydHBfZXJyX3N0YXR1c190IHNydHBfdGVzdF9lbXB0eV9wYXlsb2FkX2dj
bSh2b2lkKTsKICNlbmRpZgogCi1zcnRwX2Vycl9zdGF0dXNfdAotc3J0cF90ZXN0X3JlbW92ZV9z
dHJlYW0odm9pZCk7CitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3Rlc3RfcmVtb3ZlX3N0cmVhbSh2
b2lkKTsKIAotc3J0cF9lcnJfc3RhdHVzX3QKLXNydHBfdGVzdF91cGRhdGUodm9pZCk7CitzcnRw
X2Vycl9zdGF0dXNfdCBzcnRwX3Rlc3RfdXBkYXRlKHZvaWQpOwogCi1zcnRwX2Vycl9zdGF0dXNf
dAotc3J0cF90ZXN0X3Byb3RlY3RfdHJhaWxlcl9sZW5ndGgodm9pZCk7CitzcnRwX2Vycl9zdGF0
dXNfdCBzcnRwX3Rlc3RfcHJvdGVjdF90cmFpbGVyX2xlbmd0aCh2b2lkKTsKIAotc3J0cF9lcnJf
c3RhdHVzX3QKLXNydHBfdGVzdF9wcm90ZWN0X3J0Y3BfdHJhaWxlcl9sZW5ndGgodm9pZCk7Citz
cnRwX2Vycl9zdGF0dXNfdCBzcnRwX3Rlc3RfcHJvdGVjdF9ydGNwX3RyYWlsZXJfbGVuZ3RoKHZv
aWQpOwogCi1zcnRwX2Vycl9zdGF0dXNfdAotc3J0cF90ZXN0X2dldF9yb2Modm9pZCk7CitzcnRw
X2Vycl9zdGF0dXNfdCBzcnRwX3Rlc3RfZ2V0X3JvYyh2b2lkKTsKIAotc3J0cF9lcnJfc3RhdHVz
X3QKLXNydHBfdGVzdF9zZXRfcmVjZWl2ZXJfcm9jKHZvaWQpOworc3J0cF9lcnJfc3RhdHVzX3Qg
c3J0cF90ZXN0X3NldF9yZWNlaXZlcl9yb2Modm9pZCk7CiAKLXNydHBfZXJyX3N0YXR1c190Ci1z
cnRwX3Rlc3Rfc2V0X3NlbmRlcl9yb2Modm9pZCk7CitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3Rl
c3Rfc2V0X3NlbmRlcl9yb2Modm9pZCk7CiAKLWRvdWJsZQotc3J0cF9iaXRzX3Blcl9zZWNvbmQo
aW50IG1zZ19sZW5fb2N0ZXRzLCBjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3kpOworZG91Ymxl
IHNydHBfYml0c19wZXJfc2Vjb25kKGludCBtc2dfbGVuX29jdGV0cywgY29uc3Qgc3J0cF9wb2xp
Y3lfdCAqcG9saWN5KTsKIAotZG91YmxlCi1zcnRwX3JlamVjdGlvbnNfcGVyX3NlY29uZChpbnQg
bXNnX2xlbl9vY3RldHMsIGNvbnN0IHNydHBfcG9saWN5X3QgKnBvbGljeSk7Citkb3VibGUgc3J0
cF9yZWplY3Rpb25zX3Blcl9zZWNvbmQoaW50IG1zZ19sZW5fb2N0ZXRzLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHNydHBfcG9saWN5X3QgKnBvbGljeSk7CiAKLXZv
aWQKLXNydHBfZG9fdGltaW5nKGNvbnN0IHNydHBfcG9saWN5X3QgKnBvbGljeSk7Cit2b2lkIHNy
dHBfZG9fdGltaW5nKGNvbnN0IHNydHBfcG9saWN5X3QgKnBvbGljeSk7CiAKLXZvaWQKLXNydHBf
ZG9fcmVqZWN0aW9uX3RpbWluZyhjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3kpOwordm9pZCBz
cnRwX2RvX3JlamVjdGlvbl90aW1pbmcoY29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5KTsKIAot
c3J0cF9lcnJfc3RhdHVzX3QKLXNydHBfdGVzdChjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3ks
IGludCBleHRlbnNpb25faGVhZGVyLCBpbnQgbWtpX2luZGV4KTsKK3NydHBfZXJyX3N0YXR1c190
IHNydHBfdGVzdChjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3ksCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgaW50IGV4dGVuc2lvbl9oZWFkZXIsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgaW50IG1raV9pbmRleCk7CiAKLXNydHBfZXJyX3N0YXR1c190Ci1zcnRjcF90ZXN0KGNv
bnN0IHNydHBfcG9saWN5X3QgKnBvbGljeSwgaW50IG1raV9pbmRleCk7CitzcnRwX2Vycl9zdGF0
dXNfdCBzcnRjcF90ZXN0KGNvbnN0IHNydHBfcG9saWN5X3QgKnBvbGljeSwgaW50IG1raV9pbmRl
eCk7CiAKLXNydHBfZXJyX3N0YXR1c190Ci1zcnRwX3Nlc3Npb25fcHJpbnRfcG9saWN5KHNydHBf
dCBzcnRwKTsKK3NydHBfZXJyX3N0YXR1c190IHNydHBfc2Vzc2lvbl9wcmludF9wb2xpY3koc3J0
cF90IHNydHApOwogCi1zcnRwX2Vycl9zdGF0dXNfdAotc3J0cF9wcmludF9wb2xpY3koY29uc3Qg
c3J0cF9wb2xpY3lfdCAqcG9saWN5KTsKK3NydHBfZXJyX3N0YXR1c190IHNydHBfcHJpbnRfcG9s
aWN5KGNvbnN0IHNydHBfcG9saWN5X3QgKnBvbGljeSk7CiAKLWNoYXIgKgotc3J0cF9wYWNrZXRf
dG9fc3RyaW5nKHNydHBfaGRyX3QgKmhkciwgaW50IHBhY2tldF9sZW4pOworY2hhciAqc3J0cF9w
YWNrZXRfdG9fc3RyaW5nKHNydHBfaGRyX3QgKmhkciwgaW50IHBhY2tldF9sZW4pOwogCi1kb3Vi
bGUKLW1pcHNfZXN0aW1hdGUoaW50IG51bV90cmlhbHMsIGludCAqaWdub3JlKTsKK2RvdWJsZSBt
aXBzX2VzdGltYXRlKGludCBudW1fdHJpYWxzLCBpbnQgKmlnbm9yZSk7CiAKICNkZWZpbmUgVEVT
VF9NS0lfSURfU0laRSA0CiAKQEAgLTE1Myw2ICsxMjcsNyBAQCBleHRlcm4gdWludDhfdCB0ZXN0
X2tleV8yWzQ2XTsKIGV4dGVybiB1aW50OF90IHRlc3RfbWtpX2lkW1RFU1RfTUtJX0lEX1NJWkVd
OwogZXh0ZXJuIHVpbnQ4X3QgdGVzdF9ta2lfaWRfMltURVNUX01LSV9JRF9TSVpFXTsKIAorLy8g
Y2xhbmctZm9ybWF0IG9mZgogc3J0cF9tYXN0ZXJfa2V5X3QgbWFzdGVyX2tleV8xID0gewogICAg
IHRlc3Rfa2V5LAogICAgIHRlc3RfbWtpX2lkLApAQCAtMTY5LDkgKzE0NCw5IEBAIHNydHBfbWFz
dGVyX2tleV90ICp0ZXN0X2tleXNbMl0gPSB7CiAgICAgJm1hc3Rlcl9rZXlfMSwKICAgICAmbWFz
dGVyX2tleV8yCiB9OworLy8gY2xhbmctZm9ybWF0IG9uCiAKLXZvaWQKLXVzYWdlIChjaGFyICpw
cm9nX25hbWUpCit2b2lkIHVzYWdlKGNoYXIgKnByb2dfbmFtZSkKIHsKICAgICBwcmludGYoInVz
YWdlOiAlcyBbIC10IF1bIC1jIF1bIC12IF1bIC1vIF1bLWQgPGRlYnVnX21vZHVsZT4gXSogWyAt
bCBdXG4iCiAgICAgICAgICAgICIgIC10ICAgICAgICAgcnVuIHRpbWluZyB0ZXN0XG4iCkBAIC0x
ODAsMTkgKzE1NSwyNyBAQCB1c2FnZSAoY2hhciAqcHJvZ19uYW1lKQogICAgICAgICAgICAiICAt
diAgICAgICAgIHJ1biB2YWxpZGF0aW9uIHRlc3RzXG4iCiAgICAgICAgICAgICIgIC1vICAgICAg
ICAgb3V0cHV0IGxvZ2dpbmcgdG8gc3Rkb3V0XG4iCiAgICAgICAgICAgICIgIC1kIDxtb2Q+ICAg
dHVybiBvbiBkZWJ1Z2dpbmcgbW9kdWxlIDxtb2Q+XG4iCi0gICAgICAgICAgICIgIC1sICAgICAg
ICAgbGlzdCBkZWJ1Z2dpbmcgbW9kdWxlc1xuIiwgcHJvZ19uYW1lKTsKKyAgICAgICAgICAgIiAg
LWwgICAgICAgICBsaXN0IGRlYnVnZ2luZyBtb2R1bGVzXG4iLAorICAgICAgICAgICBwcm9nX25h
bWUpOwogICAgIGV4aXQoMSk7CiB9CiAKLXZvaWQKLWxvZ19oYW5kbGVyIChzcnRwX2xvZ19sZXZl
bF90IGxldmVsLCBjb25zdCBjaGFyICogbXNnLCB2b2lkICogZGF0YSkKK3ZvaWQgbG9nX2hhbmRs
ZXIoc3J0cF9sb2dfbGV2ZWxfdCBsZXZlbCwgY29uc3QgY2hhciAqbXNnLCB2b2lkICpkYXRhKQog
ewogICAgIGNoYXIgbGV2ZWxfY2hhciA9ICc/JzsKLSAgICBzd2l0Y2gobGV2ZWwpIHsKLSAgICAg
ICAgY2FzZSBzcnRwX2xvZ19sZXZlbF9lcnJvcjogbGV2ZWxfY2hhciA9ICdlJzsgYnJlYWs7Ci0g
ICAgICAgIGNhc2Ugc3J0cF9sb2dfbGV2ZWxfd2FybmluZzogbGV2ZWxfY2hhciA9ICd3JzsgYnJl
YWs7Ci0gICAgICAgIGNhc2Ugc3J0cF9sb2dfbGV2ZWxfaW5mbzogbGV2ZWxfY2hhciA9ICdpJzsg
YnJlYWs7Ci0gICAgICAgIGNhc2Ugc3J0cF9sb2dfbGV2ZWxfZGVidWc6IGxldmVsX2NoYXIgPSAn
ZCc7IGJyZWFrOworICAgIHN3aXRjaCAobGV2ZWwpIHsKKyAgICBjYXNlIHNydHBfbG9nX2xldmVs
X2Vycm9yOgorICAgICAgICBsZXZlbF9jaGFyID0gJ2UnOworICAgICAgICBicmVhazsKKyAgICBj
YXNlIHNydHBfbG9nX2xldmVsX3dhcm5pbmc6CisgICAgICAgIGxldmVsX2NoYXIgPSAndyc7Cisg
ICAgICAgIGJyZWFrOworICAgIGNhc2Ugc3J0cF9sb2dfbGV2ZWxfaW5mbzoKKyAgICAgICAgbGV2
ZWxfY2hhciA9ICdpJzsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBzcnRwX2xvZ19sZXZlbF9k
ZWJ1ZzoKKyAgICAgICAgbGV2ZWxfY2hhciA9ICdkJzsKKyAgICAgICAgYnJlYWs7CiAgICAgfQog
ICAgIHByaW50ZigiU1JUUC1MT0cgWyVjXTogJXNcbiIsIGxldmVsX2NoYXIsIG1zZyk7CiB9CkBA
IC0yMDQsNyArMTg3LDYgQEAgbG9nX2hhbmRsZXIgKHNydHBfbG9nX2xldmVsX3QgbGV2ZWwsIGNv
bnN0IGNoYXIgKiBtc2csIHZvaWQgKiBkYXRhKQogCiBleHRlcm4gY29uc3Qgc3J0cF9wb2xpY3lf
dCAqcG9saWN5X2FycmF5W107CiAKLQogLyogdGhlIHdpbGRjYXJkX3BvbGljeSBpcyBkZWNsYXJl
ZCBiZWxvdzsgaXQgaGFzIGEgd2lsZGNhcmQgc3NyYyAqLwogCiBleHRlcm4gY29uc3Qgc3J0cF9w
b2xpY3lfdCB3aWxkY2FyZF9wb2xpY3k7CkBAIC0yMTcsMjAgKzE5OSwxOSBAQCBleHRlcm4gY29u
c3Qgc3J0cF9wb2xpY3lfdCB3aWxkY2FyZF9wb2xpY3k7CiAgKi8KIAogc3J0cF9kZWJ1Z19tb2R1
bGVfdCBtb2RfZHJpdmVyID0gewotICAgIDAsICAgICAgICAgICAgICAgIC8qIGRlYnVnZ2luZyBp
cyBvZmYgYnkgZGVmYXVsdCAqLwotICAgICJkcml2ZXIiICAgICAgICAgIC8qIHByaW50YWJsZSBu
YW1lIGZvciBtb2R1bGUgICAqLworICAgIDAsICAgICAgIC8qIGRlYnVnZ2luZyBpcyBvZmYgYnkg
ZGVmYXVsdCAqLworICAgICJkcml2ZXIiIC8qIHByaW50YWJsZSBuYW1lIGZvciBtb2R1bGUgICAq
LwogfTsKIAotaW50Ci1tYWluIChpbnQgYXJnYywgY2hhciAqYXJndltdKQoraW50IG1haW4oaW50
IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKIHsKICAgICBpbnQgcTsKLSAgICB1bnNpZ25lZCBkb190aW1p
bmdfdGVzdCAgICA9IDA7CisgICAgdW5zaWduZWQgZG9fdGltaW5nX3Rlc3QgPSAwOwogICAgIHVu
c2lnbmVkIGRvX3JlamVjdGlvbl90ZXN0ID0gMDsKLSAgICB1bnNpZ25lZCBkb19jb2RlY190aW1p
bmcgICA9IDA7Ci0gICAgdW5zaWduZWQgZG9fdmFsaWRhdGlvbiAgICAgPSAwOwotICAgIHVuc2ln
bmVkIGRvX2xpc3RfbW9kcyAgICAgID0gMDsKLSAgICB1bnNpZ25lZCBkb19sb2dfc3Rkb3V0ICAg
ICA9IDA7CisgICAgdW5zaWduZWQgZG9fY29kZWNfdGltaW5nID0gMDsKKyAgICB1bnNpZ25lZCBk
b192YWxpZGF0aW9uID0gMDsKKyAgICB1bnNpZ25lZCBkb19saXN0X21vZHMgPSAwOworICAgIHVu
c2lnbmVkIGRvX2xvZ19zdGRvdXQgPSAwOwogICAgIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsK
IAogICAgIC8qCkBAIC0yNTUsNyArMjM2LDggQEAgbWFpbiAoaW50IGFyZ2MsIGNoYXIgKmFyZ3Zb
XSkKICAgICBzdGF0dXMgPSBzcnRwX2NyeXB0b19rZXJuZWxfbG9hZF9kZWJ1Z19tb2R1bGUoJm1v
ZF9kcml2ZXIpOwogICAgIGlmIChzdGF0dXMpIHsKICAgICAgICAgcHJpbnRmKCJlcnJvcjogbG9h
ZCBvZiBzcnRwX2RyaXZlciBkZWJ1ZyBtb2R1bGUgZmFpbGVkICIKLSAgICAgICAgICAgICAgICJ3
aXRoIGVycm9yIGNvZGUgJWRcbiIsIHN0YXR1cyk7CisgICAgICAgICAgICAgICAid2l0aCBlcnJv
ciBjb2RlICVkXG4iLAorICAgICAgICAgICAgICAgc3RhdHVzKTsKICAgICAgICAgZXhpdCgxKTsK
ICAgICB9CiAKQEAgLTI5Niw4ICsyNzgsOCBAQCBtYWluIChpbnQgYXJnYywgY2hhciAqYXJndltd
KQogICAgICAgICB9CiAgICAgfQogCi0gICAgaWYgKCFkb192YWxpZGF0aW9uICYmICFkb190aW1p
bmdfdGVzdCAmJiAhZG9fY29kZWNfdGltaW5nCi0gICAgICAgICYmICFkb19saXN0X21vZHMgJiYg
IWRvX3JlamVjdGlvbl90ZXN0KSB7CisgICAgaWYgKCFkb192YWxpZGF0aW9uICYmICFkb190aW1p
bmdfdGVzdCAmJiAhZG9fY29kZWNfdGltaW5nICYmCisgICAgICAgICFkb19saXN0X21vZHMgJiYg
IWRvX3JlamVjdGlvbl90ZXN0KSB7CiAgICAgICAgIHVzYWdlKGFyZ3ZbMF0pOwogICAgIH0KIApA
QCAtMzI2LDUxICszMDgsNTYgQEAgbWFpbiAoaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKICAgICAg
ICAgICAgIHByaW50ZigidGVzdGluZyBzcnRwX3Byb3RlY3QgYW5kIHNydHBfdW5wcm90ZWN0XG4i
KTsKICAgICAgICAgICAgIGlmIChzcnRwX3Rlc3QoKnBvbGljeSwgMCwgLTEpID09IHNydHBfZXJy
X3N0YXR1c19vaykgewogICAgICAgICAgICAgICAgIHByaW50ZigicGFzc2VkXG5cbiIpOwotICAg
ICAgICAgICAgfSBlbHNleworICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICBw
cmludGYoImZhaWxlZFxuIik7CiAgICAgICAgICAgICAgICAgZXhpdCgxKTsKICAgICAgICAgICAg
IH0KIAotICAgICAgICAgICAgcHJpbnRmKCJ0ZXN0aW5nIHNydHBfcHJvdGVjdCBhbmQgc3J0cF91
bnByb3RlY3Qgd2l0aCBlbmNyeXB0ZWQgZXh0ZW5zaW9ucyBoZWFkZXJzXG4iKTsKKyAgICAgICAg
ICAgIHByaW50ZigidGVzdGluZyBzcnRwX3Byb3RlY3QgYW5kIHNydHBfdW5wcm90ZWN0IHdpdGgg
ZW5jcnlwdGVkICIKKyAgICAgICAgICAgICAgICAgICAiZXh0ZW5zaW9ucyBoZWFkZXJzXG4iKTsK
ICAgICAgICAgICAgIGlmIChzcnRwX3Rlc3QoKnBvbGljeSwgMSwgLTEpID09IHNydHBfZXJyX3N0
YXR1c19vaykgewogICAgICAgICAgICAgICAgIHByaW50ZigicGFzc2VkXG5cbiIpOwotICAgICAg
ICAgICAgfSBlbHNleworICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICBwcmlu
dGYoImZhaWxlZFxuIik7CiAgICAgICAgICAgICAgICAgZXhpdCgxKTsKICAgICAgICAgICAgIH0K
ICAgICAgICAgICAgIHByaW50ZigidGVzdGluZyBzcnRwX3Byb3RlY3RfcnRjcCBhbmQgc3J0cF91
bnByb3RlY3RfcnRjcFxuIik7CiAgICAgICAgICAgICBpZiAoc3J0Y3BfdGVzdCgqcG9saWN5LCAt
MSkgPT0gc3J0cF9lcnJfc3RhdHVzX29rKSB7CiAgICAgICAgICAgICAgICAgcHJpbnRmKCJwYXNz
ZWRcblxuIik7Ci0gICAgICAgICAgICB9IGVsc2V7CisgICAgICAgICAgICB9IGVsc2UgewogICAg
ICAgICAgICAgICAgIHByaW50ZigiZmFpbGVkXG4iKTsKICAgICAgICAgICAgICAgICBleGl0KDEp
OwogICAgICAgICAgICAgfQotICAgICAgICAgICAgcHJpbnRmKCJ0ZXN0aW5nIHNydHBfcHJvdGVj
dF9ydHAgYW5kIHNydHBfdW5wcm90ZWN0X3J0cCB3aXRoIE1LSSBpbmRleCBzZXQgdG8gMFxuIik7
CisgICAgICAgICAgICBwcmludGYoInRlc3Rpbmcgc3J0cF9wcm90ZWN0X3J0cCBhbmQgc3J0cF91
bnByb3RlY3RfcnRwIHdpdGggTUtJICIKKyAgICAgICAgICAgICAgICAgICAiaW5kZXggc2V0IHRv
IDBcbiIpOwogICAgICAgICAgICAgaWYgKHNydHBfdGVzdCgqcG9saWN5LCAwLCAwKSA9PSBzcnRw
X2Vycl9zdGF0dXNfb2spIHsKICAgICAgICAgICAgICAgICBwcmludGYoInBhc3NlZFxuXG4iKTsK
LSAgICAgICAgICAgIH0gZWxzZXsKKyAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAg
ICAgcHJpbnRmKCJmYWlsZWRcbiIpOwogICAgICAgICAgICAgICAgIGV4aXQoMSk7CiAgICAgICAg
ICAgICB9Ci0gICAgICAgICAgICBwcmludGYoInRlc3Rpbmcgc3J0cF9wcm90ZWN0X3J0cCBhbmQg
c3J0cF91bnByb3RlY3RfcnRwIHdpdGggTUtJIGluZGV4IHNldCB0byAxXG4iKTsKKyAgICAgICAg
ICAgIHByaW50ZigidGVzdGluZyBzcnRwX3Byb3RlY3RfcnRwIGFuZCBzcnRwX3VucHJvdGVjdF9y
dHAgd2l0aCBNS0kgIgorICAgICAgICAgICAgICAgICAgICJpbmRleCBzZXQgdG8gMVxuIik7CiAg
ICAgICAgICAgICBpZiAoc3J0cF90ZXN0KCpwb2xpY3ksIDAsIDEpID09IHNydHBfZXJyX3N0YXR1
c19vaykgewogICAgICAgICAgICAgICAgIHByaW50ZigicGFzc2VkXG5cbiIpOwotICAgICAgICAg
ICAgfSBlbHNleworICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICBwcmludGYo
ImZhaWxlZFxuIik7CiAgICAgICAgICAgICAgICAgZXhpdCgxKTsKICAgICAgICAgICAgIH0KIAot
ICAgICAgICAgICAgcHJpbnRmKCJ0ZXN0aW5nIHNydHBfcHJvdGVjdF9ydGNwIGFuZCBzcnRwX3Vu
cHJvdGVjdF9ydGNwIHdpdGggTUtJIGluZGV4IHNldCB0byAwXG4iKTsKKyAgICAgICAgICAgIHBy
aW50ZigidGVzdGluZyBzcnRwX3Byb3RlY3RfcnRjcCBhbmQgc3J0cF91bnByb3RlY3RfcnRjcCB3
aXRoIE1LSSAiCisgICAgICAgICAgICAgICAgICAgImluZGV4IHNldCB0byAwXG4iKTsKICAgICAg
ICAgICAgIGlmIChzcnRjcF90ZXN0KCpwb2xpY3ksIDApID09IHNydHBfZXJyX3N0YXR1c19vaykg
ewogICAgICAgICAgICAgICAgIHByaW50ZigicGFzc2VkXG5cbiIpOwotICAgICAgICAgICAgfSBl
bHNleworICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICBwcmludGYoImZhaWxl
ZFxuIik7CiAgICAgICAgICAgICAgICAgZXhpdCgxKTsKICAgICAgICAgICAgIH0KLSAgICAgICAg
ICAgIHByaW50ZigidGVzdGluZyBzcnRwX3Byb3RlY3RfcnRjcCBhbmQgc3J0cF91bnByb3RlY3Rf
cnRjcCB3aXRoIE1LSSBpbmRleCBzZXQgdG8gMVxuIik7CisgICAgICAgICAgICBwcmludGYoInRl
c3Rpbmcgc3J0cF9wcm90ZWN0X3J0Y3AgYW5kIHNydHBfdW5wcm90ZWN0X3J0Y3Agd2l0aCBNS0kg
IgorICAgICAgICAgICAgICAgICAgICJpbmRleCBzZXQgdG8gMVxuIik7CiAgICAgICAgICAgICBp
ZiAoc3J0Y3BfdGVzdCgqcG9saWN5LCAxKSA9PSBzcnRwX2Vycl9zdGF0dXNfb2spIHsKICAgICAg
ICAgICAgICAgICBwcmludGYoInBhc3NlZFxuXG4iKTsKLSAgICAgICAgICAgIH0gZWxzZXsKKyAg
ICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgcHJpbnRmKCJmYWlsZWRcbiIpOwog
ICAgICAgICAgICAgICAgIGV4aXQoMSk7CiAgICAgICAgICAgICB9CkBAIC0zODYsMTQgKzM3Mywx
NSBAQCBtYWluIChpbnQgYXJnYywgY2hhciAqYXJndltdKQogICAgICAgICBwcmludGYoInRlc3Rp
bmcgc3J0cF9wcm90ZWN0IGFuZCBzcnRwX3VucHJvdGVjdCB3aXRoIGJpZyBwb2xpY3lcbiIpOwog
ICAgICAgICBpZiAoc3J0cF90ZXN0KGJpZ19wb2xpY3ksIDAsIC0xKSA9PSBzcnRwX2Vycl9zdGF0
dXNfb2spIHsKICAgICAgICAgICAgIHByaW50ZigicGFzc2VkXG5cbiIpOwotICAgICAgICB9IGVs
c2V7CisgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICBwcmludGYoImZhaWxlZFxuIik7CiAg
ICAgICAgICAgICBleGl0KDEpOwogICAgICAgICB9Ci0gICAgICAgIHByaW50ZigidGVzdGluZyBz
cnRwX3Byb3RlY3QgYW5kIHNydHBfdW5wcm90ZWN0IHdpdGggYmlnIHBvbGljeSBhbmQgZW5jcnlw
dGVkIGV4dGVuc2lvbnMgaGVhZGVyc1xuIik7CisgICAgICAgIHByaW50ZigidGVzdGluZyBzcnRw
X3Byb3RlY3QgYW5kIHNydHBfdW5wcm90ZWN0IHdpdGggYmlnIHBvbGljeSBhbmQgIgorICAgICAg
ICAgICAgICAgImVuY3J5cHRlZCBleHRlbnNpb25zIGhlYWRlcnNcbiIpOwogICAgICAgICBpZiAo
c3J0cF90ZXN0KGJpZ19wb2xpY3ksIDEsIC0xKSA9PSBzcnRwX2Vycl9zdGF0dXNfb2spIHsKICAg
ICAgICAgICAgIHByaW50ZigicGFzc2VkXG5cbiIpOwotICAgICAgICB9IGVsc2V7CisgICAgICAg
IH0gZWxzZSB7CiAgICAgICAgICAgICBwcmludGYoImZhaWxlZFxuIik7CiAgICAgICAgICAgICBl
eGl0KDEpOwogICAgICAgICB9CkBAIC00MDgsNyArMzk2LDcgQEAgbWFpbiAoaW50IGFyZ2MsIGNo
YXIgKmFyZ3ZbXSkKICAgICAgICAgICAgICAgICJ3aWxkY2FyZCBzc3JjIHBvbGljeVxuIik7CiAg
ICAgICAgIGlmIChzcnRwX3Rlc3QoJndpbGRjYXJkX3BvbGljeSwgMCwgLTEpID09IHNydHBfZXJy
X3N0YXR1c19vaykgewogICAgICAgICAgICAgcHJpbnRmKCJwYXNzZWRcblxuIik7Ci0gICAgICAg
IH0gZWxzZXsKKyAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgIHByaW50ZigiZmFpbGVkXG4i
KTsKICAgICAgICAgICAgIGV4aXQoMSk7CiAgICAgICAgIH0KQEAgLTQxNiw3ICs0MDQsNyBAQCBt
YWluIChpbnQgYXJnYywgY2hhciAqYXJndltdKQogICAgICAgICAgICAgICAgIndpbGRjYXJkIHNz
cmMgcG9saWN5IGFuZCBlbmNyeXB0ZWQgZXh0ZW5zaW9ucyBoZWFkZXJzXG4iKTsKICAgICAgICAg
aWYgKHNydHBfdGVzdCgmd2lsZGNhcmRfcG9saWN5LCAxLCAtMSkgPT0gc3J0cF9lcnJfc3RhdHVz
X29rKSB7CiAgICAgICAgICAgICBwcmludGYoInBhc3NlZFxuXG4iKTsKLSAgICAgICAgfSBlbHNl
eworICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgcHJpbnRmKCJmYWlsZWRcbiIpOwogICAg
ICAgICAgICAgZXhpdCgxKTsKICAgICAgICAgfQpAQCAtNDI5LDcgKzQxNyw3IEBAIG1haW4gKGlu
dCBhcmdjLCBjaGFyICphcmd2W10pCiAgICAgICAgICAgICAgICAicmVmZXJlbmNlIHBhY2tldFxu
Iik7CiAgICAgICAgIGlmIChzcnRwX3ZhbGlkYXRlKCkgPT0gc3J0cF9lcnJfc3RhdHVzX29rKSB7
CiAgICAgICAgICAgICBwcmludGYoInBhc3NlZFxuXG4iKTsKLSAgICAgICAgfSBlbHNleworICAg
ICAgICB9IGVsc2UgewogICAgICAgICAgICAgcHJpbnRmKCJmYWlsZWRcbiIpOwogICAgICAgICAg
ICAgZXhpdCgxKTsKICAgICAgICAgfQpAQCAtNDM5LDcgKzQyNyw3IEBAIG1haW4gKGludCBhcmdj
LCBjaGFyICphcmd2W10pCiAgICAgICAgICAgICAgICAicmVmZXJlbmNlIHBhY2tldCB1c2luZyBH
Q01cbiIpOwogICAgICAgICBpZiAoc3J0cF92YWxpZGF0ZV9nY20oKSA9PSBzcnRwX2Vycl9zdGF0
dXNfb2spIHsKICAgICAgICAgICAgIHByaW50ZigicGFzc2VkXG5cbiIpOwotICAgICAgICB9IGVs
c2V7CisgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICBwcmludGYoImZhaWxlZFxuIik7CiAg
ICAgICAgICAgICBleGl0KDEpOwogICAgICAgICB9CkBAIC00NTcsOSArNDQ1LDEwIEBAIG1haW4g
KGludCBhcmdjLCBjaGFyICphcmd2W10pCiAjaWZkZWYgT1BFTlNTTAogICAgICAgICBwcmludGYo
InRlc3Rpbmcgc3J0cF9wcm90ZWN0IGFuZCBzcnRwX3VucHJvdGVjdCBhZ2FpbnN0ICIKICAgICAg
ICAgICAgICAgICJyZWZlcmVuY2UgcGFja2V0IHdpdGggZW5jcnlwdGVkIGV4dGVuc2lvbiBoZWFk
ZXJzIChHQ00pXG4iKTsKLSAgICAgICAgaWYgKHNydHBfdmFsaWRhdGVfZW5jcnlwdGVkX2V4dGVu
c2lvbnNfaGVhZGVyc19nY20oKSA9PSBzcnRwX2Vycl9zdGF0dXNfb2spIHsKKyAgICAgICAgaWYg
KHNydHBfdmFsaWRhdGVfZW5jcnlwdGVkX2V4dGVuc2lvbnNfaGVhZGVyc19nY20oKSA9PQorICAg
ICAgICAgICAgc3J0cF9lcnJfc3RhdHVzX29rKSB7CiAgICAgICAgICAgICBwcmludGYoInBhc3Nl
ZFxuXG4iKTsKLSAgICAgICAgfSBlbHNleworICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAg
cHJpbnRmKCJmYWlsZWRcbiIpOwogICAgICAgICAgICAgZXhpdCgxKTsKICAgICAgICAgfQpAQCAt
NDczLDcgKzQ2Miw3IEBAIG1haW4gKGludCBhcmdjLCBjaGFyICphcmd2W10pCiAgICAgICAgICAg
ICAgICAicmVmZXJlbmNlIHBhY2tldCAoQUVTLTI1NilcbiIpOwogICAgICAgICBpZiAoc3J0cF92
YWxpZGF0ZV9hZXNfMjU2KCkgPT0gc3J0cF9lcnJfc3RhdHVzX29rKSB7CiAgICAgICAgICAgICBw
cmludGYoInBhc3NlZFxuXG4iKTsKLSAgICAgICAgfSBlbHNleworICAgICAgICB9IGVsc2Ugewog
ICAgICAgICAgICAgcHJpbnRmKCJmYWlsZWRcbiIpOwogICAgICAgICAgICAgZXhpdCgxKTsKICAg
ICAgICAgfQpAQCAtNDg1LDcgKzQ3NCw3IEBAIG1haW4gKGludCBhcmdjLCBjaGFyICphcmd2W10p
CiAgICAgICAgICAgICAgICAicGFja2V0IHdpdGggZW1wdHkgcGF5bG9hZFxuIik7CiAgICAgICAg
IGlmIChzcnRwX3Rlc3RfZW1wdHlfcGF5bG9hZCgpID09IHNydHBfZXJyX3N0YXR1c19vaykgewog
ICAgICAgICAgICAgcHJpbnRmKCJwYXNzZWRcbiIpOwotICAgICAgICB9IGVsc2V7CisgICAgICAg
IH0gZWxzZSB7CiAgICAgICAgICAgICBwcmludGYoImZhaWxlZFxuIik7CiAgICAgICAgICAgICBl
eGl0KDEpOwogICAgICAgICB9CkBAIC00OTQsNyArNDgzLDcgQEAgbWFpbiAoaW50IGFyZ2MsIGNo
YXIgKmFyZ3ZbXSkKICAgICAgICAgICAgICAgICJwYWNrZXQgd2l0aCBlbXB0eSBwYXlsb2FkIChH
Q00pXG4iKTsKICAgICAgICAgaWYgKHNydHBfdGVzdF9lbXB0eV9wYXlsb2FkX2djbSgpID09IHNy
dHBfZXJyX3N0YXR1c19vaykgewogICAgICAgICAgICAgcHJpbnRmKCJwYXNzZWRcbiIpOwotICAg
ICAgICB9IGVsc2V7CisgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICBwcmludGYoImZhaWxl
ZFxuIik7CiAgICAgICAgICAgICBleGl0KDEpOwogICAgICAgICB9CkBAIC01MDYsNyArNDk1LDcg
QEAgbWFpbiAoaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKICAgICAgICAgcHJpbnRmKCJ0ZXN0aW5n
IHNydHBfcmVtb3ZlX3N0cmVhbSgpLi4uIik7CiAgICAgICAgIGlmIChzcnRwX3Rlc3RfcmVtb3Zl
X3N0cmVhbSgpID09IHNydHBfZXJyX3N0YXR1c19vaykgewogICAgICAgICAgICAgcHJpbnRmKCJw
YXNzZWRcbiIpOwotICAgICAgICB9IGVsc2V7CisgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAg
ICBwcmludGYoImZhaWxlZFxuIik7CiAgICAgICAgICAgICBleGl0KDEpOwogICAgICAgICB9CkBA
IC01NjUsNyArNTU0LDYgQEAgbWFpbiAoaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKICAgICAgICAg
ICAgIHByaW50ZigiZmFpbGVkXG4iKTsKICAgICAgICAgICAgIGV4aXQoMSk7CiAgICAgICAgIH0K
LQogICAgIH0KIAogICAgIGlmIChkb190aW1pbmdfdGVzdCkgewpAQCAtNTk4LDcgKzU4Niw3IEBA
IG1haW4gKGludCBhcmdjLCBjaGFyICphcmd2W10pCiAgICAgICAgIG1lbXNldCgmcG9saWN5LCAw
LCBzaXplb2YocG9saWN5KSk7CiAgICAgICAgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfcnRwX2Rl
ZmF1bHQoJnBvbGljeS5ydHApOwogICAgICAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X3J0Y3Bf
ZGVmYXVsdCgmcG9saWN5LnJ0Y3ApOwotICAgICAgICBwb2xpY3kuc3NyYy50eXBlICA9IHNzcmNf
c3BlY2lmaWM7CisgICAgICAgIHBvbGljeS5zc3JjLnR5cGUgPSBzc3JjX3NwZWNpZmljOwogICAg
ICAgICBwb2xpY3kuc3NyYy52YWx1ZSA9IDB4ZGVjYWZiYWQ7CiAgICAgICAgIHBvbGljeS5rZXkg
PSB0ZXN0X2tleTsKICAgICAgICAgcG9saWN5LmVrdCA9IE5VTEw7CkBAIC02MTIsMjggKzYwMCwy
OCBAQCBtYWluIChpbnQgYXJnYywgY2hhciAqYXJndltdKQogICAgICAgICBwcmludGYoImNvZGVj
XHRcdGxlbmd0aCAob2N0ZXRzKVx0XHRzcnRwIGluc3RydWN0aW9ucy9zZWNvbmRcbiIpOwogICAg
ICAgICBwcmludGYoIkcuNzExXHRcdCVkXHRcdFx0JWVcbiIsIDgwLAogICAgICAgICAgICAgICAg
KGRvdWJsZSltaXBzX3ZhbHVlICogKDgwICogOCkgLwotICAgICAgICAgICAgICAgc3J0cF9iaXRz
X3Blcl9zZWNvbmQoODAsICZwb2xpY3kpIC8gLjAxICk7CisgICAgICAgICAgICAgICAgICAgc3J0
cF9iaXRzX3Blcl9zZWNvbmQoODAsICZwb2xpY3kpIC8gLjAxKTsKICAgICAgICAgcHJpbnRmKCJH
LjcxMVx0XHQlZFx0XHRcdCVlXG4iLCAxNjAsCiAgICAgICAgICAgICAgICAoZG91YmxlKW1pcHNf
dmFsdWUgKiAoMTYwICogOCkgLwotICAgICAgICAgICAgICAgc3J0cF9iaXRzX3Blcl9zZWNvbmQo
MTYwLCAmcG9saWN5KSAvIC4wMik7CisgICAgICAgICAgICAgICAgICAgc3J0cF9iaXRzX3Blcl9z
ZWNvbmQoMTYwLCAmcG9saWN5KSAvIC4wMik7CiAgICAgICAgIHByaW50ZigiRy43MjYtMzJcdCVk
XHRcdFx0JWVcbiIsIDQwLAogICAgICAgICAgICAgICAgKGRvdWJsZSltaXBzX3ZhbHVlICogKDQw
ICogOCkgLwotICAgICAgICAgICAgICAgc3J0cF9iaXRzX3Blcl9zZWNvbmQoNDAsICZwb2xpY3kp
IC8gLjAxICk7CisgICAgICAgICAgICAgICAgICAgc3J0cF9iaXRzX3Blcl9zZWNvbmQoNDAsICZw
b2xpY3kpIC8gLjAxKTsKICAgICAgICAgcHJpbnRmKCJHLjcyNi0zMlx0JWRcdFx0XHQlZVxuIiwg
ODAsCiAgICAgICAgICAgICAgICAoZG91YmxlKW1pcHNfdmFsdWUgKiAoODAgKiA4KSAvCi0gICAg
ICAgICAgICAgICBzcnRwX2JpdHNfcGVyX3NlY29uZCg4MCwgJnBvbGljeSkgLyAuMDIpOworICAg
ICAgICAgICAgICAgICAgIHNydHBfYml0c19wZXJfc2Vjb25kKDgwLCAmcG9saWN5KSAvIC4wMik7
CiAgICAgICAgIHByaW50ZigiRy43MjlcdFx0JWRcdFx0XHQlZVxuIiwgMTAsCiAgICAgICAgICAg
ICAgICAoZG91YmxlKW1pcHNfdmFsdWUgKiAoMTAgKiA4KSAvCi0gICAgICAgICAgICAgICBzcnRw
X2JpdHNfcGVyX3NlY29uZCgxMCwgJnBvbGljeSkgLyAuMDEgKTsKKyAgICAgICAgICAgICAgICAg
ICBzcnRwX2JpdHNfcGVyX3NlY29uZCgxMCwgJnBvbGljeSkgLyAuMDEpOwogICAgICAgICBwcmlu
dGYoIkcuNzI5XHRcdCVkXHRcdFx0JWVcbiIsIDIwLAogICAgICAgICAgICAgICAgKGRvdWJsZSlt
aXBzX3ZhbHVlICogKDIwICogOCkgLwotICAgICAgICAgICAgICAgc3J0cF9iaXRzX3Blcl9zZWNv
bmQoMjAsICZwb2xpY3kpIC8gLjAyICk7CisgICAgICAgICAgICAgICAgICAgc3J0cF9iaXRzX3Bl
cl9zZWNvbmQoMjAsICZwb2xpY3kpIC8gLjAyKTsKICAgICAgICAgcHJpbnRmKCJXaWRlYmFuZFx0
JWRcdFx0XHQlZVxuIiwgMzIwLAogICAgICAgICAgICAgICAgKGRvdWJsZSltaXBzX3ZhbHVlICog
KDMyMCAqIDgpIC8KLSAgICAgICAgICAgICAgIHNydHBfYml0c19wZXJfc2Vjb25kKDMyMCwgJnBv
bGljeSkgLyAuMDEgKTsKKyAgICAgICAgICAgICAgICAgICBzcnRwX2JpdHNfcGVyX3NlY29uZCgz
MjAsICZwb2xpY3kpIC8gLjAxKTsKICAgICAgICAgcHJpbnRmKCJXaWRlYmFuZFx0JWRcdFx0XHQl
ZVxuIiwgNjQwLAogICAgICAgICAgICAgICAgKGRvdWJsZSltaXBzX3ZhbHVlICogKDY0MCAqIDgp
IC8KLSAgICAgICAgICAgICAgIHNydHBfYml0c19wZXJfc2Vjb25kKDY0MCwgJnBvbGljeSkgLyAu
MDIgKTsKKyAgICAgICAgICAgICAgICAgICBzcnRwX2JpdHNfcGVyX3NlY29uZCg2NDAsICZwb2xp
Y3kpIC8gLjAyKTsKICAgICB9CiAKICAgICBzdGF0dXMgPSBzcnRwX3NodXRkb3duKCk7CkBAIC02
NDUsOCArNjMzLDYgQEAgbWFpbiAoaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKICAgICByZXR1cm4g
MDsKIH0KIAotCi0KIC8qCiAgKiBzcnRwX2NyZWF0ZV90ZXN0X3BhY2tldChsZW4sIHNzcmMpIHJl
dHVybnMgYSBwb2ludGVyIHRvIGEKICAqIChtYWxsb2NlZCkgZXhhbXBsZSBSVFAgcGFja2V0IHdo
b3NlIGRhdGEgZmllbGQgaGFzIHRoZSBsZW5ndGggZ2l2ZW4KQEAgLTY2MCw4ICs2NDYsOSBAQCBt
YWluIChpbnQgYXJnYywgY2hhciAqYXJndltdKQogICogZGVhbGxvY2F0ZWQgd2l0aCB0aGUgZnJl
ZSgpIGNhbGwgb25jZSBpdCBpcyBubyBsb25nZXIgbmVlZGVkLgogICovCiAKLXNydHBfaGRyX3Qg
Kgotc3J0cF9jcmVhdGVfdGVzdF9wYWNrZXQgKGludCBwa3Rfb2N0ZXRfbGVuLCB1aW50MzJfdCBz
c3JjKQorc3J0cF9oZHJfdCAqc3J0cF9jcmVhdGVfdGVzdF9wYWNrZXQoaW50IHBrdF9vY3RldF9s
ZW4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBzc3JjLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50ICpwa3RfbGVuKQogewogICAg
IGludCBpOwogICAgIHVpbnQ4X3QgKmJ1ZmZlcjsKQEAgLTY2OSwyMyArNjU2LDIzIEBAIHNydHBf
Y3JlYXRlX3Rlc3RfcGFja2V0IChpbnQgcGt0X29jdGV0X2xlbiwgdWludDMyX3Qgc3NyYykKICAg
ICBpbnQgYnl0ZXNfaW5faGRyID0gMTI7CiAKICAgICAvKiBhbGxvY2F0ZSBtZW1vcnkgZm9yIHRl
c3QgcGFja2V0ICovCi0gICAgaGRyID0gKHNydHBfaGRyX3QqKW1hbGxvYyhwa3Rfb2N0ZXRfbGVu
ICsgYnl0ZXNfaW5faGRyCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICArIFNSVFBfTUFY
X1RSQUlMRVJfTEVOICsgNCk7CisgICAgaGRyID0gKHNydHBfaGRyX3QgKiltYWxsb2MocGt0X29j
dGV0X2xlbiArIGJ5dGVzX2luX2hkciArCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
U1JUUF9NQVhfVFJBSUxFUl9MRU4gKyA0KTsKICAgICBpZiAoIWhkcikgewogICAgICAgICByZXR1
cm4gTlVMTDsKICAgICB9CiAKLSAgICBoZHItPnZlcnNpb24gPSAyOyAgICAgICAgICAgICAgLyog
UlRQIHZlcnNpb24gdHdvICAgICAqLwotICAgIGhkci0+cCAgICA9IDA7ICAgICAgICAgICAgICAg
ICAvKiBubyBwYWRkaW5nIG5lZWRlZCAgICovCi0gICAgaGRyLT54ICAgID0gMDsgICAgICAgICAg
ICAgICAgIC8qIG5vIGhlYWRlciBleHRlbnNpb24gKi8KLSAgICBoZHItPmNjICAgPSAwOyAgICAg
ICAgICAgICAgICAgLyogbm8gQ1NSQ3MgICAgICAgICAgICAqLwotICAgIGhkci0+bSAgICA9IDA7
ICAgICAgICAgICAgICAgICAvKiBtYXJrZXIgYml0ICAgICAgICAgICovCi0gICAgaGRyLT5wdCAg
ID0gMHhmOyAgICAgICAgICAgICAgIC8qIHBheWxvYWQgdHlwZSAgICAgICAgKi8KLSAgICBoZHIt
PnNlcSAgPSBodG9ucygweDEyMzQpOyAgICAgLyogc2VxdWVuY2UgbnVtYmVyICAgICAqLwotICAg
IGhkci0+dHMgICA9IGh0b25sKDB4ZGVjYWZiYWQpOyAvKiB0aW1lc3RhbXAgICAgICAgICAgICov
Ci0gICAgaGRyLT5zc3JjID0gaHRvbmwoc3NyYyk7ICAgICAgIC8qIHN5bmNoLiBzb3VyY2UgICAg
ICAgKi8KKyAgICBoZHItPnZlcnNpb24gPSAyOyAgICAgICAgICAgIC8qIFJUUCB2ZXJzaW9uIHR3
byAgICAgKi8KKyAgICBoZHItPnAgPSAwOyAgICAgICAgICAgICAgICAgIC8qIG5vIHBhZGRpbmcg
bmVlZGVkICAgKi8KKyAgICBoZHItPnggPSAwOyAgICAgICAgICAgICAgICAgIC8qIG5vIGhlYWRl
ciBleHRlbnNpb24gKi8KKyAgICBoZHItPmNjID0gMDsgICAgICAgICAgICAgICAgIC8qIG5vIENT
UkNzICAgICAgICAgICAgKi8KKyAgICBoZHItPm0gPSAwOyAgICAgICAgICAgICAgICAgIC8qIG1h
cmtlciBiaXQgICAgICAgICAgKi8KKyAgICBoZHItPnB0ID0gMHhmOyAgICAgICAgICAgICAgIC8q
IHBheWxvYWQgdHlwZSAgICAgICAgKi8KKyAgICBoZHItPnNlcSA9IGh0b25zKDB4MTIzNCk7ICAg
IC8qIHNlcXVlbmNlIG51bWJlciAgICAgKi8KKyAgICBoZHItPnRzID0gaHRvbmwoMHhkZWNhZmJh
ZCk7IC8qIHRpbWVzdGFtcCAgICAgICAgICAgKi8KKyAgICBoZHItPnNzcmMgPSBodG9ubChzc3Jj
KTsgICAgIC8qIHN5bmNoLiBzb3VyY2UgICAgICAgKi8KIAotICAgIGJ1ZmZlciA9ICh1aW50OF90
KiloZHI7CisgICAgYnVmZmVyID0gKHVpbnQ4X3QgKiloZHI7CiAgICAgYnVmZmVyICs9IGJ5dGVz
X2luX2hkcjsKIAogICAgIC8qIHNldCBSVFAgZGF0YSB0byAweGFiICovCkBAIC02OTgsODUgKzY4
NSw5MSBAQCBzcnRwX2NyZWF0ZV90ZXN0X3BhY2tldCAoaW50IHBrdF9vY3RldF9sZW4sIHVpbnQz
Ml90IHNzcmMpCiAgICAgICAgICpidWZmZXIrKyA9IDB4ZmY7CiAgICAgfQogCisgICAgKnBrdF9s
ZW4gPSBieXRlc19pbl9oZHIgKyBwa3Rfb2N0ZXRfbGVuOworCiAgICAgcmV0dXJuIGhkcjsKIH0K
IAotc3RhdGljIHNydHBfaGRyX3QgKgotc3J0cF9jcmVhdGVfdGVzdF9wYWNrZXRfZXh0ZW5kZWQg
KGludCBwa3Rfb2N0ZXRfbGVuLCB1aW50MzJfdCBzc3JjLCB1aW50MTZfdCBzZXEsIHVpbnQzMl90
IHRzKQorc3RhdGljIHNydHBfaGRyX3QgKnNydHBfY3JlYXRlX3Rlc3RfcGFja2V0X2V4dGVuZGVk
KGludCBwa3Rfb2N0ZXRfbGVuLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHVpbnQzMl90IHNzcmMsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDE2X3Qgc2VxLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IHRzLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCAqcGt0X2xl
bikKIHsKLSAgc3J0cF9oZHJfdCAqaGRyOworICAgIHNydHBfaGRyX3QgKmhkcjsKIAotICBoZHIg
PSBzcnRwX2NyZWF0ZV90ZXN0X3BhY2tldChwa3Rfb2N0ZXRfbGVuLCBzc3JjKTsKLSAgaWYgKGhk
ciA9PSBOVUxMKQotICAgIHJldHVybiBoZHI7CisgICAgaGRyID0gc3J0cF9jcmVhdGVfdGVzdF9w
YWNrZXQocGt0X29jdGV0X2xlbiwgc3NyYywgcGt0X2xlbik7CisgICAgaWYgKGhkciA9PSBOVUxM
KQorICAgICAgICByZXR1cm4gaGRyOwogCi0gIGhkci0+c2VxICA9IGh0b25zKHNlcSk7Ci0gIGhk
ci0+dHMgICA9IGh0b25sKHRzKTsKLSAgcmV0dXJuIGhkcjsKKyAgICBoZHItPnNlcSA9IGh0b25z
KHNlcSk7CisgICAgaGRyLT50cyA9IGh0b25sKHRzKTsKKyAgICByZXR1cm4gaGRyOwogfQogCi1z
cnRwX2hkcl90ICoKLXNydHBfY3JlYXRlX3Rlc3RfcGFja2V0X2V4dF9oZHIoaW50IHBrdF9vY3Rl
dF9sZW4sIHVpbnQzMl90IHNzcmMpIHsKLSAgaW50IGk7Ci0gIHVpbnQ4X3QgKmJ1ZmZlcjsKLSAg
c3J0cF9oZHJfdCAqaGRyOwotICBpbnQgYnl0ZXNfaW5faGRyID0gMTI7Ci0gIHVpbnQ4X3QgZXh0
ZW5zaW9uX2hlYWRlclsxMl0gPSB7Ci0gICAgLyogb25lLWJ5dGUgaGVhZGVyICovCi0gICAgMHhi
ZSwgMHhkZSwKLSAgICAvKiBzaXplICovCi0gICAgMHgwMCwgMHgwMiwKLSAgICAvKiBpZCAxLCBs
ZW5ndGggMSAoaS5lLiAyIGJ5dGVzKSAqLwotICAgIDB4MTEsCi0gICAgLyogcGF5bG9hZCAqLwot
ICAgIDB4Y2EsCi0gICAgMHhmZSwKLSAgICAvKiBwYWRkaW5nICovCi0gICAgMHgwMCwKLSAgICAv
KiBpZCAyLCBsZW5ndGggMCAoaS5lLiAxIGJ5dGUpICovCi0gICAgMHgyMCwKLSAgICAvKiBwYXls
b2FkICovCi0gICAgMHhiYSwKLSAgICAvKiBwYWRkaW5nICovCi0gICAgMHgwMCwKLSAgICAweDAw
Ci0gIH07Ci0KLSAgLyogYWxsb2NhdGUgbWVtb3J5IGZvciB0ZXN0IHBhY2tldCAqLwotICBoZHIg
PSAoc3J0cF9oZHJfdCopIG1hbGxvYyhwa3Rfb2N0ZXRfbGVuICsgYnl0ZXNfaW5faGRyCi0gICAg
ICAgICAgICsgc2l6ZW9mKGV4dGVuc2lvbl9oZWFkZXIpICsgU1JUUF9NQVhfVFJBSUxFUl9MRU4g
KyA0KTsKLSAgaWYgKCFoZHIpCi0gICAgcmV0dXJuIE5VTEw7Ci0KLSAgaGRyLT52ZXJzaW9uID0g
MjsgICAgICAgICAgICAgIC8qIFJUUCB2ZXJzaW9uIHR3byAgICAgKi8KLSAgaGRyLT5wICAgID0g
MDsgICAgICAgICAgICAgICAgIC8qIG5vIHBhZGRpbmcgbmVlZGVkICAgKi8KLSAgaGRyLT54ICAg
ID0gMTsgICAgICAgICAgICAgICAgIC8qIG5vIGhlYWRlciBleHRlbnNpb24gKi8KLSAgaGRyLT5j
YyAgID0gMDsgICAgICAgICAgICAgICAgIC8qIG5vIENTUkNzICAgICAgICAgICAgKi8KLSAgaGRy
LT5tICAgID0gMDsgICAgICAgICAgICAgICAgIC8qIG1hcmtlciBiaXQgICAgICAgICAgKi8KLSAg
aGRyLT5wdCAgID0gMHhmOyAgICAgICAgICAgICAgIC8qIHBheWxvYWQgdHlwZSAgICAgICAgKi8K
LSAgaGRyLT5zZXEgID0gaHRvbnMoMHgxMjM0KTsgICAgIC8qIHNlcXVlbmNlIG51bWJlciAgICAg
Ki8KLSAgaGRyLT50cyAgID0gaHRvbmwoMHhkZWNhZmJhZCk7IC8qIHRpbWVzdGFtcCAgICAgICAg
ICAgKi8KLSAgaGRyLT5zc3JjID0gaHRvbmwoc3NyYyk7ICAgICAgIC8qIHN5bmNoLiBzb3VyY2Ug
ICAgICAgKi8KLQotICBidWZmZXIgPSAodWludDhfdCAqKWhkcjsKLSAgYnVmZmVyICs9IGJ5dGVz
X2luX2hkcjsKLQotICBtZW1jcHkoYnVmZmVyLCBleHRlbnNpb25faGVhZGVyLCBzaXplb2YoZXh0
ZW5zaW9uX2hlYWRlcikpOwotICBidWZmZXIgKz0gc2l6ZW9mKGV4dGVuc2lvbl9oZWFkZXIpOwot
Ci0gIC8qIHNldCBSVFAgZGF0YSB0byAweGFiICovCi0gIGZvciAoaT0wOyBpIDwgcGt0X29jdGV0
X2xlbjsgaSsrKQotICAgICpidWZmZXIrKyA9IDB4YWI7Ci0KLSAgLyogc2V0IHBvc3QtZGF0YSB2
YWx1ZSB0byAweGZmZmYgdG8gZW5hYmxlIG92ZXJydW4gY2hlY2tpbmcgKi8KLSAgZm9yIChpPTA7
IGkgPCBTUlRQX01BWF9UUkFJTEVSX0xFTis0OyBpKyspCi0gICAgKmJ1ZmZlcisrID0gMHhmZjsK
LQotICByZXR1cm4gaGRyOworc3J0cF9oZHJfdCAqc3J0cF9jcmVhdGVfdGVzdF9wYWNrZXRfZXh0
X2hkcihpbnQgcGt0X29jdGV0X2xlbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgdWludDMyX3Qgc3NyYywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgaW50ICpwa3RfbGVuKQoreworICAgIGludCBpOworICAgIHVpbnQ4X3Qg
KmJ1ZmZlcjsKKyAgICBzcnRwX2hkcl90ICpoZHI7CisgICAgaW50IGJ5dGVzX2luX2hkciA9IDEy
OworICAgIHVpbnQ4X3QgZXh0ZW5zaW9uX2hlYWRlclsxMl0gPSB7IC8qIG9uZS1ieXRlIGhlYWRl
ciAqLworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4YmUsIDB4ZGUsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogc2l6ZSAqLworICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAsIDB4MDIsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgLyogaWQgMSwgbGVuZ3RoIDEgKGkuZS4gMiBieXRlcykgKi8K
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDExLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHBheWxvYWQgKi8KKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAweGNhLCAweGZlLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIC8qIHBhZGRpbmcgKi8KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAweDAwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIGlk
IDIsIGxlbmd0aCAwIChpLmUuIDEgYnl0ZSkgKi8KKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAweDIwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8q
IHBheWxvYWQgKi8KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweGJhLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHBhZGRpbmcgKi8KKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAwLCAweDAwCisgICAgfTsKKworICAg
IC8qIGFsbG9jYXRlIG1lbW9yeSBmb3IgdGVzdCBwYWNrZXQgKi8KKyAgICBoZHIgPSAoc3J0cF9o
ZHJfdCAqKW1hbGxvYyhwa3Rfb2N0ZXRfbGVuICsgYnl0ZXNfaW5faGRyICsKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBzaXplb2YoZXh0ZW5zaW9uX2hlYWRlcikgKyBTUlRQX01BWF9U
UkFJTEVSX0xFTiArCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgNCk7CisgICAgaWYg
KCFoZHIpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgaGRyLT52ZXJzaW9uID0gMjsgICAg
ICAgICAgICAvKiBSVFAgdmVyc2lvbiB0d28gICAgICovCisgICAgaGRyLT5wID0gMDsgICAgICAg
ICAgICAgICAgICAvKiBubyBwYWRkaW5nIG5lZWRlZCAgICovCisgICAgaGRyLT54ID0gMTsgICAg
ICAgICAgICAgICAgICAvKiBubyBoZWFkZXIgZXh0ZW5zaW9uICovCisgICAgaGRyLT5jYyA9IDA7
ICAgICAgICAgICAgICAgICAvKiBubyBDU1JDcyAgICAgICAgICAgICovCisgICAgaGRyLT5tID0g
MDsgICAgICAgICAgICAgICAgICAvKiBtYXJrZXIgYml0ICAgICAgICAgICovCisgICAgaGRyLT5w
dCA9IDB4ZjsgICAgICAgICAgICAgICAvKiBwYXlsb2FkIHR5cGUgICAgICAgICovCisgICAgaGRy
LT5zZXEgPSBodG9ucygweDEyMzQpOyAgICAvKiBzZXF1ZW5jZSBudW1iZXIgICAgICovCisgICAg
aGRyLT50cyA9IGh0b25sKDB4ZGVjYWZiYWQpOyAvKiB0aW1lc3RhbXAgICAgICAgICAgICovCisg
ICAgaGRyLT5zc3JjID0gaHRvbmwoc3NyYyk7ICAgICAvKiBzeW5jaC4gc291cmNlICAgICAgICov
CisKKyAgICBidWZmZXIgPSAodWludDhfdCAqKWhkcjsKKyAgICBidWZmZXIgKz0gYnl0ZXNfaW5f
aGRyOworCisgICAgbWVtY3B5KGJ1ZmZlciwgZXh0ZW5zaW9uX2hlYWRlciwgc2l6ZW9mKGV4dGVu
c2lvbl9oZWFkZXIpKTsKKyAgICBidWZmZXIgKz0gc2l6ZW9mKGV4dGVuc2lvbl9oZWFkZXIpOwor
CisgICAgLyogc2V0IFJUUCBkYXRhIHRvIDB4YWIgKi8KKyAgICBmb3IgKGkgPSAwOyBpIDwgcGt0
X29jdGV0X2xlbjsgaSsrKQorICAgICAgICAqYnVmZmVyKysgPSAweGFiOworCisgICAgLyogc2V0
IHBvc3QtZGF0YSB2YWx1ZSB0byAweGZmZmYgdG8gZW5hYmxlIG92ZXJydW4gY2hlY2tpbmcgKi8K
KyAgICBmb3IgKGkgPSAwOyBpIDwgU1JUUF9NQVhfVFJBSUxFUl9MRU4gKyA0OyBpKyspCisgICAg
ICAgICpidWZmZXIrKyA9IDB4ZmY7CisKKyAgICAqcGt0X2xlbiA9IGJ5dGVzX2luX2hkciArIHNp
emVvZihleHRlbnNpb25faGVhZGVyKSArIHBrdF9vY3RldF9sZW47CisKKyAgICByZXR1cm4gaGRy
OwogfQogCi12b2lkCi1zcnRwX2RvX3RpbWluZyAoY29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5
KQordm9pZCBzcnRwX2RvX3RpbWluZyhjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3kpCiB7CiAg
ICAgaW50IGxlbjsKIApAQCAtNzk2LDExICs3ODksOSBAQCBzcnRwX2RvX3RpbWluZyAoY29uc3Qg
c3J0cF9wb2xpY3lfdCAqcG9saWN5KQogCiAgICAgLyogdGhlc2UgZXh0cmEgbGluZWZlZWRzIGxl
dCBnbnVwbG90IGtub3cgdGhhdCBhIGRhdGFzZXQgaXMgZG9uZSAqLwogICAgIHByaW50ZigiXHJc
blxyXG4iKTsKLQogfQogCi12b2lkCi1zcnRwX2RvX3JlamVjdGlvbl90aW1pbmcgKGNvbnN0IHNy
dHBfcG9saWN5X3QgKnBvbGljeSkKK3ZvaWQgc3J0cF9kb19yZWplY3Rpb25fdGltaW5nKGNvbnN0
IHNydHBfcG9saWN5X3QgKnBvbGljeSkKIHsKICAgICBpbnQgbGVuOwogCkBAIC04MTksMjEgKzgx
MCwxOCBAQCBzcnRwX2RvX3JlamVjdGlvbl90aW1pbmcgKGNvbnN0IHNydHBfcG9saWN5X3QgKnBv
bGljeSkKIAogICAgIC8qIHRoZXNlIGV4dHJhIGxpbmVmZWVkcyBsZXQgZ251cGxvdCBrbm93IHRo
YXQgYSBkYXRhc2V0IGlzIGRvbmUgKi8KICAgICBwcmludGYoIlxyXG5cclxuIik7Ci0KIH0KIAot
CiAjZGVmaW5lIE1BWF9NU0dfTEVOIDEwMjQKIAotZG91YmxlCi1zcnRwX2JpdHNfcGVyX3NlY29u
ZCAoaW50IG1zZ19sZW5fb2N0ZXRzLCBjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3kpCitkb3Vi
bGUgc3J0cF9iaXRzX3Blcl9zZWNvbmQoaW50IG1zZ19sZW5fb2N0ZXRzLCBjb25zdCBzcnRwX3Bv
bGljeV90ICpwb2xpY3kpCiB7CiAgICAgc3J0cF90IHNydHA7CiAgICAgc3J0cF9oZHJfdCAqbWVz
ZzsKICAgICBpbnQgaTsKICAgICBjbG9ja190IHRpbWVyOwogICAgIGludCBudW1fdHJpYWxzID0g
MTAwMDAwOwotICAgIGludCBsZW47CisgICAgaW50IGlucHV0X2xlbiwgbGVuOwogICAgIHVpbnQz
Ml90IHNzcmM7CiAgICAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVzOwogCkBAIC04NTgsMTUgKzg0
NiwxMyBAQCBzcnRwX2JpdHNfcGVyX3NlY29uZCAoaW50IG1zZ19sZW5fb2N0ZXRzLCBjb25zdCBz
cnRwX3BvbGljeV90ICpwb2xpY3kpCiAgICAgLyoKICAgICAgKiBjcmVhdGUgYSB0ZXN0IHBhY2tl
dAogICAgICAqLwotICAgIG1lc2cgPSBzcnRwX2NyZWF0ZV90ZXN0X3BhY2tldChtc2dfbGVuX29j
dGV0cywgc3NyYyk7CisgICAgbWVzZyA9IHNydHBfY3JlYXRlX3Rlc3RfcGFja2V0KG1zZ19sZW5f
b2N0ZXRzLCBzc3JjLCAmaW5wdXRfbGVuKTsKICAgICBpZiAobWVzZyA9PSBOVUxMKSB7CiAgICAg
ICAgIHJldHVybiAwLjA7IC8qIGluZGljYXRlIGZhaWx1cmUgYnkgcmV0dXJuaW5nIHplcm8gKi8K
LQogICAgIH0KICAgICB0aW1lciA9IGNsb2NrKCk7CiAgICAgZm9yIChpID0gMDsgaSA8IG51bV90
cmlhbHM7IGkrKykgewotICAgICAgICBsZW4gPSBtc2dfbGVuX29jdGV0cyArIDEyOyAvKiBhZGQg
aW4gcnRwIGhlYWRlciBsZW5ndGggKi8KLQorICAgICAgICBsZW4gPSBpbnB1dF9sZW47CiAgICAg
ICAgIC8qIHNydHAgcHJvdGVjdCBtZXNzYWdlICovCiAgICAgICAgIHN0YXR1cyA9IHNydHBfcHJv
dGVjdChzcnRwLCBtZXNnLCAmbGVuKTsKICAgICAgICAgaWYgKHN0YXR1cykgewpAQCAtODc2LDcg
Kzg2Miw4IEBAIHNydHBfYml0c19wZXJfc2Vjb25kIChpbnQgbXNnX2xlbl9vY3RldHMsIGNvbnN0
IHNydHBfcG9saWN5X3QgKnBvbGljeSkKIAogICAgICAgICAvKiBpbmNyZW1lbnQgbWVzc2FnZSBu
dW1iZXIgKi8KICAgICAgICAgewotICAgICAgICAgICAgLyogaGFjayBzZXF1ZW5jZSB0byBhdm9p
ZCBwcm9ibGVtcyB3aXRoIG1hY3JvcyBmb3IgaHRvbnMvbnRvaHMgb24gc29tZSBzeXN0ZW1zICov
CisgICAgICAgICAgICAvKiBoYWNrIHNlcXVlbmNlIHRvIGF2b2lkIHByb2JsZW1zIHdpdGggbWFj
cm9zIGZvciBodG9ucy9udG9ocyBvbgorICAgICAgICAgICAgICogc29tZSBzeXN0ZW1zICovCiAg
ICAgICAgICAgICBzaG9ydCBuZXdfc2VxID0gbnRvaHMobWVzZy0+c2VxKSArIDE7CiAgICAgICAg
ICAgICBtZXNnLT5zZXEgPSBodG9ucyhuZXdfc2VxKTsKICAgICAgICAgfQpAQCAtODkxLDEyICs4
NzgsMTEgQEAgc3J0cF9iaXRzX3Blcl9zZWNvbmQgKGludCBtc2dfbGVuX29jdGV0cywgY29uc3Qg
c3J0cF9wb2xpY3lfdCAqcG9saWN5KQogICAgICAgICBleGl0KDEpOwogICAgIH0KIAotICAgIHJl
dHVybiAoZG91YmxlKShtc2dfbGVuX29jdGV0cykgKiA4ICoKLSAgICAgICAgICAgbnVtX3RyaWFs
cyAqIENMT0NLU19QRVJfU0VDIC8gdGltZXI7CisgICAgcmV0dXJuIChkb3VibGUpKG1zZ19sZW5f
b2N0ZXRzKSo4ICogbnVtX3RyaWFscyAqIENMT0NLU19QRVJfU0VDIC8gdGltZXI7CiB9CiAKLWRv
dWJsZQotc3J0cF9yZWplY3Rpb25zX3Blcl9zZWNvbmQgKGludCBtc2dfbGVuX29jdGV0cywgY29u
c3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5KQorZG91YmxlIHNydHBfcmVqZWN0aW9uc19wZXJfc2Vj
b25kKGludCBtc2dfbGVuX29jdGV0cywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3kpCiB7CiAgICAgc3J0cF9jdHhfdCAqc3J0cDsK
ICAgICBzcnRwX2hkcl90ICptZXNnOwpAQCAtOTE2LDE4ICs5MDIsMTYgQEAgc3J0cF9yZWplY3Rp
b25zX3Blcl9zZWNvbmQgKGludCBtc2dfbGVuX29jdGV0cywgY29uc3Qgc3J0cF9wb2xpY3lfdCAq
cG9saWN5KQogICAgICAgICBleGl0KDEpOwogICAgIH0KIAotICAgIG1lc2cgPSBzcnRwX2NyZWF0
ZV90ZXN0X3BhY2tldChtc2dfbGVuX29jdGV0cywgc3NyYyk7CisgICAgbWVzZyA9IHNydHBfY3Jl
YXRlX3Rlc3RfcGFja2V0KG1zZ19sZW5fb2N0ZXRzLCBzc3JjLCAmbGVuKTsKICAgICBpZiAobWVz
ZyA9PSBOVUxMKSB7CiAgICAgICAgIHJldHVybiAwLjA7IC8qIGluZGljYXRlIGZhaWx1cmUgYnkg
cmV0dXJuaW5nIHplcm8gKi8KLQogICAgIH0KLSAgICBsZW4gPSBtc2dfbGVuX29jdGV0czsKLSAg
ICBzcnRwX3Byb3RlY3Qoc3J0cCwgKHNydHBfaGRyX3QqKW1lc2csICZsZW4pOworICAgIHNydHBf
cHJvdGVjdChzcnRwLCAoc3J0cF9oZHJfdCAqKW1lc2csICZsZW4pOwogCiAgICAgdGltZXIgPSBj
bG9jaygpOwogICAgIGZvciAoaSA9IDA7IGkgPCBudW1fdHJpYWxzOyBpKyspIHsKICAgICAgICAg
bGVuID0gbXNnX2xlbl9vY3RldHM7Ci0gICAgICAgIHNydHBfdW5wcm90ZWN0KHNydHAsIChzcnRw
X2hkcl90KiltZXNnLCAmbGVuKTsKKyAgICAgICAgc3J0cF91bnByb3RlY3Qoc3J0cCwgKHNydHBf
aGRyX3QgKiltZXNnLCAmbGVuKTsKICAgICB9CiAgICAgdGltZXIgPSBjbG9jaygpIC0gdGltZXI7
CiAKQEAgLTk0Miw1NiArOTI2LDY3IEBAIHNydHBfcmVqZWN0aW9uc19wZXJfc2Vjb25kIChpbnQg
bXNnX2xlbl9vY3RldHMsIGNvbnN0IHNydHBfcG9saWN5X3QgKnBvbGljeSkKICAgICByZXR1cm4g
KGRvdWJsZSludW1fdHJpYWxzICogQ0xPQ0tTX1BFUl9TRUMgLyB0aW1lcjsKIH0KIAotCi12b2lk
Ci1lcnJfY2hlY2sgKHNydHBfZXJyX3N0YXR1c190IHMpCit2b2lkIGVycl9jaGVjayhzcnRwX2Vy
cl9zdGF0dXNfdCBzKQogewogICAgIGlmIChzID09IHNydHBfZXJyX3N0YXR1c19vaykgewogICAg
ICAgICByZXR1cm47Ci0gICAgfSBlbHNleworICAgIH0gZWxzZSB7CiAgICAgICAgIGZwcmludGYo
c3RkZXJyLCAiZXJyb3I6IHVuZXhwZWN0ZWQgc3J0cCBmYWlsdXJlIChjb2RlICVkKVxuIiwgcyk7
CiAgICAgfQogICAgIGV4aXQoMSk7CiB9CiAKLXNydHBfZXJyX3N0YXR1c190Ci1zcnRwX3Rlc3Rf
Y2FsbF9wcm90ZWN0KHNydHBfdCBzcnRwX3NlbmRlciwgc3J0cF9oZHJfdCAqaGRyLCBpbnQgKmxl
biwgaW50IG1raV9pbmRleCkgeworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF90ZXN0X2NhbGxfcHJv
dGVjdChzcnRwX3Qgc3J0cF9zZW5kZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHNydHBfaGRyX3QgKmhkciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgaW50ICpsZW4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGludCBta2lfaW5kZXgpCit7CiAgICAgaWYgKG1raV9pbmRleCA9PSAtMSkgewotCXJl
dHVybiBzcnRwX3Byb3RlY3Qoc3J0cF9zZW5kZXIsIGhkciwgbGVuKTsKKyAgICAgICAgcmV0dXJu
IHNydHBfcHJvdGVjdChzcnRwX3NlbmRlciwgaGRyLCBsZW4pOwogICAgIH0gZWxzZSB7Ci0JcmV0
dXJuIHNydHBfcHJvdGVjdF9ta2koc3J0cF9zZW5kZXIsIGhkciwgbGVuLCAxLCBta2lfaW5kZXgp
OworICAgICAgICByZXR1cm4gc3J0cF9wcm90ZWN0X21raShzcnRwX3NlbmRlciwgaGRyLCBsZW4s
IDEsIG1raV9pbmRleCk7CiAgICAgfQogfQogCi1zcnRwX2Vycl9zdGF0dXNfdAotc3J0cF90ZXN0
X2NhbGxfcHJvdGVjdF9ydGNwKHNydHBfdCBzcnRwX3NlbmRlciwgc3J0cF9oZHJfdCAqaGRyLCBp
bnQgKmxlbiwgaW50IG1raV9pbmRleCkgeworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF90ZXN0X2Nh
bGxfcHJvdGVjdF9ydGNwKHNydHBfdCBzcnRwX3NlbmRlciwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBzcnRwX2hkcl90ICpoZHIsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50ICpsZW4sCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IG1raV9pbmRleCkKK3sKICAgICBp
ZiAobWtpX2luZGV4ID09IC0xKSB7Ci0JcmV0dXJuIHNydHBfcHJvdGVjdF9ydGNwKHNydHBfc2Vu
ZGVyLCBoZHIsIGxlbik7CisgICAgICAgIHJldHVybiBzcnRwX3Byb3RlY3RfcnRjcChzcnRwX3Nl
bmRlciwgaGRyLCBsZW4pOwogICAgIH0gZWxzZSB7Ci0JcmV0dXJuIHNydHBfcHJvdGVjdF9ydGNw
X21raShzcnRwX3NlbmRlciwgaGRyLCBsZW4sIDEsIG1raV9pbmRleCk7CisgICAgICAgIHJldHVy
biBzcnRwX3Byb3RlY3RfcnRjcF9ta2koc3J0cF9zZW5kZXIsIGhkciwgbGVuLCAxLCBta2lfaW5k
ZXgpOwogICAgIH0KIH0KIAotc3J0cF9lcnJfc3RhdHVzX3QKLXNydHBfdGVzdF9jYWxsX3VucHJv
dGVjdChzcnRwX3Qgc3J0cF9zZW5kZXIsIHNydHBfaGRyX3QgKmhkciwgaW50ICpsZW4sIGludCB1
c2VfbWtpKSB7CitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3Rlc3RfY2FsbF91bnByb3RlY3Qoc3J0
cF90IHNydHBfc2VuZGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHNydHBfaGRyX3QgKmhkciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBpbnQgKmxlbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBpbnQgdXNlX21raSkKK3sKICAgICBpZiAodXNlX21raSA9PSAtMSkgewotCXJldHVybiBz
cnRwX3VucHJvdGVjdChzcnRwX3NlbmRlciwgaGRyLCBsZW4pOworICAgICAgICByZXR1cm4gc3J0
cF91bnByb3RlY3Qoc3J0cF9zZW5kZXIsIGhkciwgbGVuKTsKICAgICB9IGVsc2UgewotCXJldHVy
biBzcnRwX3VucHJvdGVjdF9ta2koc3J0cF9zZW5kZXIsIGhkciwgbGVuLCB1c2VfbWtpKTsKKyAg
ICAgICAgcmV0dXJuIHNydHBfdW5wcm90ZWN0X21raShzcnRwX3NlbmRlciwgaGRyLCBsZW4sIHVz
ZV9ta2kpOwogICAgIH0KIH0KIAotc3J0cF9lcnJfc3RhdHVzX3QKLXNydHBfdGVzdF9jYWxsX3Vu
cHJvdGVjdF9ydGNwKHNydHBfdCBzcnRwX3NlbmRlciwgc3J0cF9oZHJfdCAqaGRyLCBpbnQgKmxl
biwgaW50IHVzZV9ta2kpIHsKK3NydHBfZXJyX3N0YXR1c190IHNydHBfdGVzdF9jYWxsX3VucHJv
dGVjdF9ydGNwKHNydHBfdCBzcnRwX3NlbmRlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHNydHBfaGRyX3QgKmhkciwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCAqbGVuLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IHVzZV9ta2kpCit7CiAgICAgaWYg
KHVzZV9ta2kgPT0gLTEpIHsKLQlyZXR1cm4gc3J0cF91bnByb3RlY3RfcnRjcChzcnRwX3NlbmRl
ciwgaGRyLCBsZW4pOworICAgICAgICByZXR1cm4gc3J0cF91bnByb3RlY3RfcnRjcChzcnRwX3Nl
bmRlciwgaGRyLCBsZW4pOwogICAgIH0gZWxzZSB7Ci0JcmV0dXJuIHNydHBfdW5wcm90ZWN0X3J0
Y3BfbWtpKHNydHBfc2VuZGVyLCBoZHIsIGxlbiwgdXNlX21raSk7CisgICAgICAgIHJldHVybiBz
cnRwX3VucHJvdGVjdF9ydGNwX21raShzcnRwX3NlbmRlciwgaGRyLCBsZW4sIHVzZV9ta2kpOwog
ICAgIH0KIH0KIAotc3J0cF9lcnJfc3RhdHVzX3QKLXNydHBfdGVzdCAoY29uc3Qgc3J0cF9wb2xp
Y3lfdCAqcG9saWN5LCBpbnQgZXh0ZW5zaW9uX2hlYWRlciwgaW50IG1raV9pbmRleCkKK3NydHBf
ZXJyX3N0YXR1c190IHNydHBfdGVzdChjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3ksCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgaW50IGV4dGVuc2lvbl9oZWFkZXIsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgaW50IG1raV9pbmRleCkKIHsKICAgICBpbnQgaTsKICAgICBzcnRw
X3Qgc3J0cF9zZW5kZXI7CkBAIC0xMDAwLDkgKzk5NSw5IEBAIHNydHBfdGVzdCAoY29uc3Qgc3J0
cF9wb2xpY3lfdCAqcG9saWN5LCBpbnQgZXh0ZW5zaW9uX2hlYWRlciwgaW50IG1raV9pbmRleCkK
ICAgICBzcnRwX2hkcl90ICpoZHIsICpoZHIyOwogICAgIHVpbnQ4X3QgaGRyX2VuY1s2NF07CiAg
ICAgdWludDhfdCAqcGt0X2VuZDsKLSAgICBpbnQgbXNnX2xlbl9vY3RldHMsIG1zZ19sZW5fZW5j
OwotICAgIGludCBsZW47Ci0gICAgaW50IHRhZ19sZW5ndGggPSBwb2xpY3ktPnJ0cC5hdXRoX3Rh
Z19sZW47CisgICAgaW50IG1zZ19sZW5fb2N0ZXRzLCBtc2dfbGVuX2VuYywgbXNnX2xlbjsKKyAg
ICBpbnQgbGVuLCBsZW4yOworICAgIHVpbnQzMl90IHRhZ19sZW5ndGg7CiAgICAgdWludDMyX3Qg
c3NyYzsKICAgICBzcnRwX3BvbGljeV90ICpyY3ZyX3BvbGljeTsKICAgICBzcnRwX3BvbGljeV90
IHRtcF9wb2xpY3k7CkBAIC0xMDEwLDcgKzEwMDUsNyBAQCBzcnRwX3Rlc3QgKGNvbnN0IHNydHBf
cG9saWN5X3QgKnBvbGljeSwgaW50IGV4dGVuc2lvbl9oZWFkZXIsIGludCBta2lfaW5kZXgpCiAg
ICAgaW50IHVzZV9ta2kgPSAwOwogCiAgICAgaWYgKG1raV9pbmRleCA+PSAwKQotCXVzZV9ta2kg
PSAxOworICAgICAgICB1c2VfbWtpID0gMTsKIAogICAgIGlmIChleHRlbnNpb25faGVhZGVyKSB7
CiAgICAgICAgIG1lbWNweSgmdG1wX3BvbGljeSwgcG9saWN5LCBzaXplb2Yoc3J0cF9wb2xpY3lf
dCkpOwpAQCAtMTAzMSwxOCArMTAyNiwyMSBAQCBzcnRwX3Rlc3QgKGNvbnN0IHNydHBfcG9saWN5
X3QgKnBvbGljeSwgaW50IGV4dGVuc2lvbl9oZWFkZXIsIGludCBta2lfaW5kZXgpCiAgICAgICov
CiAgICAgaWYgKHBvbGljeS0+c3NyYy50eXBlICE9IHNzcmNfc3BlY2lmaWMpIHsKICAgICAgICAg
c3NyYyA9IDB4ZGVjYWZiYWQ7Ci0gICAgfSBlbHNleworICAgIH0gZWxzZSB7CiAgICAgICAgIHNz
cmMgPSBwb2xpY3ktPnNzcmMudmFsdWU7CiAgICAgfQogICAgIG1zZ19sZW5fb2N0ZXRzID0gMjg7
CiAgICAgaWYgKGV4dGVuc2lvbl9oZWFkZXIpIHsKLSAgICAgICAgaGRyID0gc3J0cF9jcmVhdGVf
dGVzdF9wYWNrZXRfZXh0X2hkcihtc2dfbGVuX29jdGV0cywgc3NyYyk7Ci0gICAgICAgIGhkcjIg
PSBzcnRwX2NyZWF0ZV90ZXN0X3BhY2tldF9leHRfaGRyKG1zZ19sZW5fb2N0ZXRzLCBzc3JjKTsK
KyAgICAgICAgaGRyID0gc3J0cF9jcmVhdGVfdGVzdF9wYWNrZXRfZXh0X2hkcihtc2dfbGVuX29j
dGV0cywgc3NyYywgJmxlbik7CisgICAgICAgIGhkcjIgPSBzcnRwX2NyZWF0ZV90ZXN0X3BhY2tl
dF9leHRfaGRyKG1zZ19sZW5fb2N0ZXRzLCBzc3JjLCAmbGVuMik7CiAgICAgfSBlbHNlIHsKLSAg
ICAgICAgaGRyID0gc3J0cF9jcmVhdGVfdGVzdF9wYWNrZXQobXNnX2xlbl9vY3RldHMsIHNzcmMp
OwotICAgICAgICBoZHIyID0gc3J0cF9jcmVhdGVfdGVzdF9wYWNrZXQobXNnX2xlbl9vY3RldHMs
IHNzcmMpOworICAgICAgICBoZHIgPSBzcnRwX2NyZWF0ZV90ZXN0X3BhY2tldChtc2dfbGVuX29j
dGV0cywgc3NyYywgJmxlbik7CisgICAgICAgIGhkcjIgPSBzcnRwX2NyZWF0ZV90ZXN0X3BhY2tl
dChtc2dfbGVuX29jdGV0cywgc3NyYywgJmxlbjIpOwogICAgIH0KIAorICAgIC8qIHNhdmUgb3Jp
Z2luYWwgbXNnIGxlbiAqLworICAgIG1zZ19sZW4gPSBsZW47CisKICAgICBpZiAoaGRyID09IE5V
TEwpIHsKICAgICAgICAgZnJlZShoZHIyKTsKICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1
c19hbGxvY19mYWlsOwpAQCAtMTA1MiwxOCArMTA1MCwxMiBAQCBzcnRwX3Rlc3QgKGNvbnN0IHNy
dHBfcG9saWN5X3QgKnBvbGljeSwgaW50IGV4dGVuc2lvbl9oZWFkZXIsIGludCBta2lfaW5kZXgp
CiAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYWxsb2NfZmFpbDsKICAgICB9CiAKLSAg
ICAvKiBzZXQgbWVzc2FnZSBsZW5ndGggKi8KLSAgICBsZW4gPSBtc2dfbGVuX29jdGV0czsKLSAg
ICBpZiAoZXh0ZW5zaW9uX2hlYWRlcikgewotICAgICAgICBsZW4gKz0gMTI7Ci0gICAgfQotCiAg
ICAgZGVidWdfcHJpbnQobW9kX2RyaXZlciwgImJlZm9yZSBwcm90ZWN0aW9uOlxuJXMiLAogICAg
ICAgICAgICAgICAgIHNydHBfcGFja2V0X3RvX3N0cmluZyhoZHIsIGxlbikpOwogCiAjaWYgUFJJ
TlRfUkVGRVJFTkNFX1BBQ0tFVAogICAgIGRlYnVnX3ByaW50KG1vZF9kcml2ZXIsICJyZWZlcmVu
Y2UgcGFja2V0IGJlZm9yZSBwcm90ZWN0aW9uOlxuJXMiLAotICAgICAgICAgICAgICAgIG9jdGV0
X3N0cmluZ19oZXhfc3RyaW5nKCh1aW50OF90KiloZHIsIGxlbikpOworICAgICAgICAgICAgICAg
IG9jdGV0X3N0cmluZ19oZXhfc3RyaW5nKCh1aW50OF90ICopaGRyLCBsZW4pKTsKICNlbmRpZgog
ICAgIGVycl9jaGVjayhzcnRwX3Rlc3RfY2FsbF9wcm90ZWN0KHNydHBfc2VuZGVyLCBoZHIsICZs
ZW4sIG1raV9pbmRleCkpOwogCkBAIC0xMDcxLDcgKzEwNjMsNyBAQCBzcnRwX3Rlc3QgKGNvbnN0
IHNydHBfcG9saWN5X3QgKnBvbGljeSwgaW50IGV4dGVuc2lvbl9oZWFkZXIsIGludCBta2lfaW5k
ZXgpCiAgICAgICAgICAgICAgICAgc3J0cF9wYWNrZXRfdG9fc3RyaW5nKGhkciwgbGVuKSk7CiAj
aWYgUFJJTlRfUkVGRVJFTkNFX1BBQ0tFVAogICAgIGRlYnVnX3ByaW50KG1vZF9kcml2ZXIsICJh
ZnRlciBwcm90ZWN0aW9uOlxuJXMiLAotICAgICAgICAgICAgICAgIG9jdGV0X3N0cmluZ19oZXhf
c3RyaW5nKCh1aW50OF90KiloZHIsIGxlbikpOworICAgICAgICAgICAgICAgIG9jdGV0X3N0cmlu
Z19oZXhfc3RyaW5nKCh1aW50OF90ICopaGRyLCBsZW4pKTsKICNlbmRpZgogCiAgICAgLyogc2F2
ZSBwcm90ZWN0ZWQgbWVzc2FnZSBhbmQgbGVuZ3RoICovCkBAIC0xMDg1LDE2ICsxMDc3LDE0IEBA
IHNydHBfdGVzdCAoY29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5LCBpbnQgZXh0ZW5zaW9uX2hl
YWRlciwgaW50IG1raV9pbmRleCkKICAgICAgKiBkYXRhIGZvbGxvd2luZyB0aGUgcGFja2V0IGlz
IGRpZmZlcmVudCwgdGhlbiB3ZSBrbm93IHRoYXQgdGhlCiAgICAgICogcHJvdGVjdCBmdW5jdGlv
biBpcyBvdmVyd3JpdGluZyB0aGUgZW5kIG9mIHRoZSBwYWNrZXQuCiAgICAgICovCi0gICAgcGt0
X2VuZCA9ICh1aW50OF90KiloZHIgKyBzaXplb2Yoc3J0cF9oZHJfdCkKLSAgICAgICAgICAgICAg
KyBtc2dfbGVuX29jdGV0cyArIHRhZ19sZW5ndGg7Ci0gICAgaWYgKGV4dGVuc2lvbl9oZWFkZXIp
IHsKLSAgICAgICAgcGt0X2VuZCArPSAxMjsKLSAgICB9CisgICAgZXJyX2NoZWNrKHNydHBfZ2V0
X3Byb3RlY3RfdHJhaWxlcl9sZW5ndGgoc3J0cF9zZW5kZXIsIHVzZV9ta2ksIG1raV9pbmRleCwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmdGFnX2xlbmd0
aCkpOworICAgIHBrdF9lbmQgPSAodWludDhfdCAqKWhkciArIG1zZ19sZW4gKyB0YWdfbGVuZ3Ro
OwogICAgIGZvciAoaSA9IDA7IGkgPCA0OyBpKyspIHsKICAgICAgICAgaWYgKHBrdF9lbmRbaV0g
IT0gMHhmZikgewogICAgICAgICAgICAgZnByaW50ZihzdGRvdXQsICJvdmVyd3JpdGUgaW4gc3J0
cF9wcm90ZWN0KCkgZnVuY3Rpb24gIgotICAgICAgICAgICAgICAgICAgICAiKGV4cGVjdGVkICV4
LCBmb3VuZCAleCBpbiB0cmFpbGluZyBvY3RldCAlZClcbiIsCi0gICAgICAgICAgICAgICAgICAg
IDB4ZmYsICgodWludDhfdCopaGRyKVtpXSwgaSk7CisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIihleHBlY3RlZCAleCwgZm91bmQgJXggaW4gdHJhaWxpbmcgb2N0ZXQgJWQpXG4iLAorICAg
ICAgICAgICAgICAgICAgICAweGZmLCAoKHVpbnQ4X3QgKiloZHIpW2ldLCBpKTsKICAgICAgICAg
ICAgIGZyZWUoaGRyKTsKICAgICAgICAgICAgIGZyZWUoaGRyMik7CiAgICAgICAgICAgICByZXR1
cm4gc3J0cF9lcnJfc3RhdHVzX2FsZ29fZmFpbDsKQEAgLTExMTQsNyArMTEwNCw3IEBAIHNydHBf
dGVzdCAoY29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5LCBpbnQgZXh0ZW5zaW9uX2hlYWRlciwg
aW50IG1raV9pbmRleCkKICAgICAgICAgcHJpbnRmKCJ0ZXN0aW5nIHRoYXQgY2lwaGVydGV4dCBp
cyBkaXN0aW5jdCBmcm9tIHBsYWludGV4dC4uLiIpOwogICAgICAgICBzdGF0dXMgPSBzcnRwX2Vy
cl9zdGF0dXNfYWxnb19mYWlsOwogICAgICAgICBmb3IgKGkgPSAxMjsgaSA8IG1zZ19sZW5fb2N0
ZXRzICsgMTI7IGkrKykgewotICAgICAgICAgICAgaWYgKCgodWludDhfdCopaGRyKVtpXSAhPSAo
KHVpbnQ4X3QqKWhkcjIpW2ldKSB7CisgICAgICAgICAgICBpZiAoKCh1aW50OF90ICopaGRyKVtp
XSAhPSAoKHVpbnQ4X3QgKiloZHIyKVtpXSkgewogICAgICAgICAgICAgICAgIHN0YXR1cyA9IHNy
dHBfZXJyX3N0YXR1c19vazsKICAgICAgICAgICAgIH0KICAgICAgICAgfQpAQCAtMTEzNCw3ICsx
MTI0LDcgQEAgc3J0cF90ZXN0IChjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3ksIGludCBleHRl
bnNpb25faGVhZGVyLCBpbnQgbWtpX2luZGV4KQogICAgICAqIHdlIGFsd2F5cyBjb3B5IHRoZSBw
b2xpY3kgaW50byB0aGUgcmN2cl9wb2xpY3ksIHNpbmNlIG90aGVyd2lzZQogICAgICAqIHRoZSBj
b21waWxlciB3b3VsZCBmcmV0IGFib3V0IHRoZSBjb25zdG5lc3Mgb2YgdGhlIHBvbGljeQogICAg
ICAqLwotICAgIHJjdnJfcG9saWN5ID0gKHNydHBfcG9saWN5X3QqKW1hbGxvYyhzaXplb2Yoc3J0
cF9wb2xpY3lfdCkpOworICAgIHJjdnJfcG9saWN5ID0gKHNydHBfcG9saWN5X3QgKiltYWxsb2Mo
c2l6ZW9mKHNydHBfcG9saWN5X3QpKTsKICAgICBpZiAocmN2cl9wb2xpY3kgPT0gTlVMTCkgewog
ICAgICAgICBmcmVlKGhkcik7CiAgICAgICAgIGZyZWUoaGRyMik7CkBAIC0xMTYwLDggKzExNTAs
OCBAQCBzcnRwX3Rlc3QgKGNvbnN0IHNydHBfcG9saWN5X3QgKnBvbGljeSwgaW50IGV4dGVuc2lv
bl9oZWFkZXIsIGludCBta2lfaW5kZXgpCiAgICAgICAgICAgICAgICAgc3J0cF9wYWNrZXRfdG9f
c3RyaW5nKGhkciwgbGVuKSk7CiAKICAgICAvKiB2ZXJpZnkgdGhhdCB0aGUgdW5wcm90ZWN0ZWQg
cGFja2V0IG1hdGNoZXMgdGhlIG9yaWdpYWwgb25lICovCi0gICAgZm9yIChpID0gMDsgaSA8IG1z
Z19sZW5fb2N0ZXRzOyBpKyspIHsKLSAgICAgICAgaWYgKCgodWludDhfdCopaGRyKVtpXSAhPSAo
KHVpbnQ4X3QqKWhkcjIpW2ldKSB7CisgICAgZm9yIChpID0gMDsgaSA8IGxlbjsgaSsrKSB7Cisg
ICAgICAgIGlmICgoKHVpbnQ4X3QgKiloZHIpW2ldICE9ICgodWludDhfdCAqKWhkcjIpW2ldKSB7
CiAgICAgICAgICAgICBmcHJpbnRmKHN0ZG91dCwgIm1pc21hdGNoIGF0IG9jdGV0ICVkXG4iLCBp
KTsKICAgICAgICAgICAgIHN0YXR1cyA9IHNydHBfZXJyX3N0YXR1c19hbGdvX2ZhaWw7CiAgICAg
ICAgIH0KQEAgLTExNzcsMTUgKzExNjcsMTMgQEAgc3J0cF90ZXN0IChjb25zdCBzcnRwX3BvbGlj
eV90ICpwb2xpY3ksIGludCBleHRlbnNpb25faGVhZGVyLCBpbnQgbWtpX2luZGV4KQogICAgICAq
IGlmIHRoZSBwb2xpY3kgaW5jbHVkZXMgYXV0aGVudGljYXRpb24sIHRoZW4gdGVzdCBmb3IgZmFs
c2UgcG9zaXRpdmVzCiAgICAgICovCiAgICAgaWYgKHBvbGljeS0+cnRwLnNlY19zZXJ2ICYgc2Vj
X3NlcnZfYXV0aCkgewotICAgICAgICBjaGFyICpkYXRhID0gKChjaGFyKiloZHIpICsgMTI7Cisg
ICAgICAgIGNoYXIgKmRhdGEgPSAoKGNoYXIgKiloZHIpICsgKGV4dGVuc2lvbl9oZWFkZXIgPyAy
NCA6IDEyKTsKIAogICAgICAgICBwcmludGYoInRlc3RpbmcgZm9yIGZhbHNlIHBvc2l0aXZlcyBp
biByZXBsYXkgY2hlY2suLi4iKTsKIAotICAgICAgICAvKiBzZXQgbWVzc2FnZSBsZW5ndGggKi8K
LSAgICAgICAgbGVuID0gbXNnX2xlbl9lbmM7Ci0KICAgICAgICAgLyogdW5wcm90ZWN0IGEgc2Vj
b25kIHRpbWUgLSBzaG91bGQgZmFpbCB3aXRoIGEgcmVwbGF5IGVycm9yICovCi0gICAgICAgIHN0
YXR1cyA9IHNydHBfdGVzdF9jYWxsX3VucHJvdGVjdChzcnRwX3JjdnIsIGhkciwgJmxlbiwgdXNl
X21raSk7CisgICAgICAgIHN0YXR1cyA9CisgICAgICAgICAgICBzcnRwX3Rlc3RfY2FsbF91bnBy
b3RlY3Qoc3J0cF9yY3ZyLCBoZHIsICZtc2dfbGVuX2VuYywgdXNlX21raSk7CiAgICAgICAgIGlm
IChzdGF0dXMgIT0gc3J0cF9lcnJfc3RhdHVzX3JlcGxheV9mYWlsKSB7CiAgICAgICAgICAgICBw
cmludGYoImZhaWxlZCB3aXRoIGVycm9yIGNvZGUgJWRcbiIsIHN0YXR1cyk7CiAgICAgICAgICAg
ICBmcmVlKGhkcik7CkBAIC0xMjAxLDE3ICsxMTg5LDExIEBAIHNydHBfdGVzdCAoY29uc3Qgc3J0
cF9wb2xpY3lfdCAqcG9saWN5LCBpbnQgZXh0ZW5zaW9uX2hlYWRlciwgaW50IG1raV9pbmRleCkK
ICAgICAgICAgLyogaW5jcmVtZW50IHNlcXVlbmNlIG51bWJlciBpbiBoZWFkZXIgKi8KICAgICAg
ICAgaGRyLT5zZXErKzsKIAotICAgICAgICAvKiBzZXQgbWVzc2FnZSBsZW5ndGggKi8KLSAgICAg
ICAgbGVuID0gbXNnX2xlbl9vY3RldHM7Ci0gICAgICAgIGlmIChleHRlbnNpb25faGVhZGVyKSB7
Ci0gICAgICAgICAgICBsZW4gKz0gMTI7Ci0gICAgICAgIH0KLQogICAgICAgICAvKiBhcHBseSBw
cm90ZWN0aW9uICovCiAgICAgICAgIGVycl9jaGVjayhzcnRwX3Rlc3RfY2FsbF9wcm90ZWN0KHNy
dHBfc2VuZGVyLCBoZHIsICZsZW4sIG1raV9pbmRleCkpOwogCiAgICAgICAgIC8qIGZsaXAgYml0
cyBpbiBwYWNrZXQgKi8KLSAgICAgICAgZGF0YVtleHRlbnNpb25faGVhZGVyID8gMTIgOiAwXSBe
PSAweGZmOworICAgICAgICBkYXRhWzBdIF49IDB4ZmY7CiAKICAgICAgICAgLyogdW5wcm90ZWN0
LCBhbmQgY2hlY2sgZm9yIGF1dGhlbnRpY2F0aW9uIGZhaWx1cmUgKi8KICAgICAgICAgc3RhdHVz
ID0gc3J0cF90ZXN0X2NhbGxfdW5wcm90ZWN0KHNydHBfcmN2ciwgaGRyLCAmbGVuLCB1c2VfbWtp
KTsKQEAgLTEyMjQsNyArMTIwNiw2IEBAIHNydHBfdGVzdCAoY29uc3Qgc3J0cF9wb2xpY3lfdCAq
cG9saWN5LCBpbnQgZXh0ZW5zaW9uX2hlYWRlciwgaW50IG1raV9pbmRleCkKICAgICAgICAgfSBl
bHNlIHsKICAgICAgICAgICAgIHByaW50ZigicGFzc2VkXG4iKTsKICAgICAgICAgfQotCiAgICAg
fQogCiAgICAgZXJyX2NoZWNrKHNydHBfZGVhbGxvYyhzcnRwX3NlbmRlcikpOwpAQCAtMTIzNiw5
ICsxMjE3LDcgQEAgc3J0cF90ZXN0IChjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3ksIGludCBl
eHRlbnNpb25faGVhZGVyLCBpbnQgbWtpX2luZGV4KQogICAgIHJldHVybiBzcnRwX2Vycl9zdGF0
dXNfb2s7CiB9CiAKLQotc3J0cF9lcnJfc3RhdHVzX3QKLXNydGNwX3Rlc3QgKGNvbnN0IHNydHBf
cG9saWN5X3QgKnBvbGljeSwgaW50IG1raV9pbmRleCkKK3NydHBfZXJyX3N0YXR1c190IHNydGNw
X3Rlc3QoY29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5LCBpbnQgbWtpX2luZGV4KQogewogICAg
IGludCBpOwogICAgIHNydHBfdCBzcnRjcF9zZW5kZXI7CkBAIC0xMjQ3LDkgKzEyMjYsOSBAQCBz
cnRjcF90ZXN0IChjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3ksIGludCBta2lfaW5kZXgpCiAg
ICAgc3J0cF9oZHJfdCAqaGRyLCAqaGRyMjsKICAgICB1aW50OF90IGhkcl9lbmNbNjRdOwogICAg
IHVpbnQ4X3QgKnBrdF9lbmQ7Ci0gICAgaW50IG1zZ19sZW5fb2N0ZXRzLCBtc2dfbGVuX2VuYzsK
LSAgICBpbnQgbGVuOwotICAgIGludCB0YWdfbGVuZ3RoID0gcG9saWN5LT5ydHAuYXV0aF90YWdf
bGVuOworICAgIGludCBtc2dfbGVuX29jdGV0cywgbXNnX2xlbl9lbmMsIG1zZ19sZW47CisgICAg
aW50IGxlbiwgbGVuMjsKKyAgICB1aW50MzJfdCB0YWdfbGVuZ3RoOwogICAgIHVpbnQzMl90IHNz
cmM7CiAgICAgc3J0cF9wb2xpY3lfdCAqcmN2cl9wb2xpY3k7CiAgICAgaW50IHVzZV9ta2kgPSAw
OwpAQCAtMTI2OSwzMCArMTI0OCwyOSBAQCBzcnRjcF90ZXN0IChjb25zdCBzcnRwX3BvbGljeV90
ICpwb2xpY3ksIGludCBta2lfaW5kZXgpCiAgICAgICovCiAgICAgaWYgKHBvbGljeS0+c3NyYy50
eXBlICE9IHNzcmNfc3BlY2lmaWMpIHsKICAgICAgICAgc3NyYyA9IDB4ZGVjYWZiYWQ7Ci0gICAg
fSBlbHNleworICAgIH0gZWxzZSB7CiAgICAgICAgIHNzcmMgPSBwb2xpY3ktPnNzcmMudmFsdWU7
CiAgICAgfQogICAgIG1zZ19sZW5fb2N0ZXRzID0gMjg7Ci0gICAgaGRyID0gc3J0cF9jcmVhdGVf
dGVzdF9wYWNrZXQobXNnX2xlbl9vY3RldHMsIHNzcmMpOworICAgIGhkciA9IHNydHBfY3JlYXRl
X3Rlc3RfcGFja2V0KG1zZ19sZW5fb2N0ZXRzLCBzc3JjLCAmbGVuKTsKKyAgICAvKiBzYXZlIG1l
c3NhZ2UgbGVuICovCisgICAgbXNnX2xlbiA9IGxlbjsKIAogICAgIGlmIChoZHIgPT0gTlVMTCkg
ewogICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2FsbG9jX2ZhaWw7CiAgICAgfQotICAg
IGhkcjIgPSBzcnRwX2NyZWF0ZV90ZXN0X3BhY2tldChtc2dfbGVuX29jdGV0cywgc3NyYyk7Cisg
ICAgaGRyMiA9IHNydHBfY3JlYXRlX3Rlc3RfcGFja2V0KG1zZ19sZW5fb2N0ZXRzLCBzc3JjLCAm
bGVuMik7CiAgICAgaWYgKGhkcjIgPT0gTlVMTCkgewogICAgICAgICBmcmVlKGhkcik7CiAgICAg
ICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYWxsb2NfZmFpbDsKICAgICB9CiAKLSAgICAvKiBz
ZXQgbWVzc2FnZSBsZW5ndGggKi8KLSAgICBsZW4gPSBtc2dfbGVuX29jdGV0czsKLQogICAgIGRl
YnVnX3ByaW50KG1vZF9kcml2ZXIsICJiZWZvcmUgcHJvdGVjdGlvbjpcbiVzIiwKICAgICAgICAg
ICAgICAgICBzcnRwX3BhY2tldF90b19zdHJpbmcoaGRyLCBsZW4pKTsKIAogI2lmIFBSSU5UX1JF
RkVSRU5DRV9QQUNLRVQKICAgICBkZWJ1Z19wcmludChtb2RfZHJpdmVyLCAicmVmZXJlbmNlIHBh
Y2tldCBiZWZvcmUgcHJvdGVjdGlvbjpcbiVzIiwKLSAgICAgICAgICAgICAgICBvY3RldF9zdHJp
bmdfaGV4X3N0cmluZygodWludDhfdCopaGRyLCBsZW4pKTsKKyAgICAgICAgICAgICAgICBvY3Rl
dF9zdHJpbmdfaGV4X3N0cmluZygodWludDhfdCAqKWhkciwgbGVuKSk7CiAjZW5kaWYKICAgICBl
cnJfY2hlY2soc3J0cF90ZXN0X2NhbGxfcHJvdGVjdF9ydGNwKHNydGNwX3NlbmRlciwgaGRyLCAm
bGVuLCBta2lfaW5kZXgpKTsKIApAQCAtMTMwMCw3ICsxMjc4LDcgQEAgc3J0Y3BfdGVzdCAoY29u
c3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5LCBpbnQgbWtpX2luZGV4KQogICAgICAgICAgICAgICAg
IHNydHBfcGFja2V0X3RvX3N0cmluZyhoZHIsIGxlbikpOwogI2lmIFBSSU5UX1JFRkVSRU5DRV9Q
QUNLRVQKICAgICBkZWJ1Z19wcmludChtb2RfZHJpdmVyLCAiYWZ0ZXIgcHJvdGVjdGlvbjpcbiVz
IiwKLSAgICAgICAgICAgICAgICBvY3RldF9zdHJpbmdfaGV4X3N0cmluZygodWludDhfdCopaGRy
LCBsZW4pKTsKKyAgICAgICAgICAgICAgICBvY3RldF9zdHJpbmdfaGV4X3N0cmluZygodWludDhf
dCAqKWhkciwgbGVuKSk7CiAjZW5kaWYKIAogICAgIC8qIHNhdmUgcHJvdGVjdGVkIG1lc3NhZ2Ug
YW5kIGxlbmd0aCAqLwpAQCAtMTMxNCwxMyArMTI5MiwxNCBAQCBzcnRjcF90ZXN0IChjb25zdCBz
cnRwX3BvbGljeV90ICpwb2xpY3ksIGludCBta2lfaW5kZXgpCiAgICAgICogZGF0YSBmb2xsb3dp
bmcgdGhlIHBhY2tldCBpcyBkaWZmZXJlbnQsIHRoZW4gd2Uga25vdyB0aGF0IHRoZQogICAgICAq
IHByb3RlY3QgZnVuY3Rpb24gaXMgb3ZlcndyaXRpbmcgdGhlIGVuZCBvZiB0aGUgcGFja2V0Lgog
ICAgICAqLwotICAgIHBrdF9lbmQgPSAodWludDhfdCopaGRyICsgc2l6ZW9mKHNydHBfaGRyX3Qp
Ci0gICAgICAgICAgICAgICsgbXNnX2xlbl9vY3RldHMgKyB0YWdfbGVuZ3RoOworICAgIHNydHBf
Z2V0X3Byb3RlY3RfcnRjcF90cmFpbGVyX2xlbmd0aChzcnRjcF9zZW5kZXIsIHVzZV9ta2ksIG1r
aV9pbmRleCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnRhZ19s
ZW5ndGgpOworICAgIHBrdF9lbmQgPSAodWludDhfdCAqKWhkciArIG1zZ19sZW4gKyB0YWdfbGVu
Z3RoOwogICAgIGZvciAoaSA9IDA7IGkgPCA0OyBpKyspIHsKICAgICAgICAgaWYgKHBrdF9lbmRb
aV0gIT0gMHhmZikgewogICAgICAgICAgICAgZnByaW50ZihzdGRvdXQsICJvdmVyd3JpdGUgaW4g
c3J0cF9wcm90ZWN0X3J0Y3AoKSBmdW5jdGlvbiAiCi0gICAgICAgICAgICAgICAgICAgICIoZXhw
ZWN0ZWQgJXgsIGZvdW5kICV4IGluIHRyYWlsaW5nIG9jdGV0ICVkKVxuIiwKLSAgICAgICAgICAg
ICAgICAgICAgMHhmZiwgKCh1aW50OF90KiloZHIpW2ldLCBpKTsKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAiKGV4cGVjdGVkICV4LCBmb3VuZCAleCBpbiB0cmFpbGluZyBvY3RldCAlZClc
biIsCisgICAgICAgICAgICAgICAgICAgIDB4ZmYsICgodWludDhfdCAqKWhkcilbaV0sIGkpOwog
ICAgICAgICAgICAgZnJlZShoZHIpOwogICAgICAgICAgICAgZnJlZShoZHIyKTsKICAgICAgICAg
ICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYWxnb19mYWlsOwpAQCAtMTMzNiwxMSArMTMxNSwx
MSBAQCBzcnRjcF90ZXN0IChjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3ksIGludCBta2lfaW5k
ZXgpCiAgICAgICogcmVhc29uLCB3ZSBza2lwIHRoaXMgY2hlY2sgaWYgdGhlIHBsYWludGV4dCBp
cyBsZXNzIHRoYW4gZm91cgogICAgICAqIG9jdGV0cyBsb25nLgogICAgICAqLwotICAgIGlmICgo
cG9saWN5LT5ydHAuc2VjX3NlcnYgJiBzZWNfc2Vydl9jb25mKSAmJiAobXNnX2xlbl9vY3RldHMg
Pj0gNCkpIHsKKyAgICBpZiAoKHBvbGljeS0+cnRjcC5zZWNfc2VydiAmIHNlY19zZXJ2X2NvbmYp
ICYmIChtc2dfbGVuX29jdGV0cyA+PSA0KSkgewogICAgICAgICBwcmludGYoInRlc3RpbmcgdGhh
dCBjaXBoZXJ0ZXh0IGlzIGRpc3RpbmN0IGZyb20gcGxhaW50ZXh0Li4uIik7CiAgICAgICAgIHN0
YXR1cyA9IHNydHBfZXJyX3N0YXR1c19hbGdvX2ZhaWw7CiAgICAgICAgIGZvciAoaSA9IDEyOyBp
IDwgbXNnX2xlbl9vY3RldHMgKyAxMjsgaSsrKSB7Ci0gICAgICAgICAgICBpZiAoKCh1aW50OF90
KiloZHIpW2ldICE9ICgodWludDhfdCopaGRyMilbaV0pIHsKKyAgICAgICAgICAgIGlmICgoKHVp
bnQ4X3QgKiloZHIpW2ldICE9ICgodWludDhfdCAqKWhkcjIpW2ldKSB7CiAgICAgICAgICAgICAg
ICAgc3RhdHVzID0gc3J0cF9lcnJfc3RhdHVzX29rOwogICAgICAgICAgICAgfQogICAgICAgICB9
CkBAIC0xMzYwLDcgKzEzMzksNyBAQCBzcnRjcF90ZXN0IChjb25zdCBzcnRwX3BvbGljeV90ICpw
b2xpY3ksIGludCBta2lfaW5kZXgpCiAgICAgICogd2UgYWx3YXlzIGNvcHkgdGhlIHBvbGljeSBp
bnRvIHRoZSByY3ZyX3BvbGljeSwgc2luY2Ugb3RoZXJ3aXNlCiAgICAgICogdGhlIGNvbXBpbGVy
IHdvdWxkIGZyZXQgYWJvdXQgdGhlIGNvbnN0bmVzcyBvZiB0aGUgcG9saWN5CiAgICAgICovCi0g
ICAgcmN2cl9wb2xpY3kgPSAoc3J0cF9wb2xpY3lfdCopbWFsbG9jKHNpemVvZihzcnRwX3BvbGlj
eV90KSk7CisgICAgcmN2cl9wb2xpY3kgPSAoc3J0cF9wb2xpY3lfdCAqKW1hbGxvYyhzaXplb2Yo
c3J0cF9wb2xpY3lfdCkpOwogICAgIGlmIChyY3ZyX3BvbGljeSA9PSBOVUxMKSB7CiAgICAgICAg
IHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYWxsb2NfZmFpbDsKICAgICB9CkBAIC0xMzc3LDggKzEz
NTYsOCBAQCBzcnRjcF90ZXN0IChjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3ksIGludCBta2lf
aW5kZXgpCiAgICAgICAgICAgICAgICAgc3J0cF9wYWNrZXRfdG9fc3RyaW5nKGhkciwgbGVuKSk7
CiAKICAgICAvKiB2ZXJpZnkgdGhhdCB0aGUgdW5wcm90ZWN0ZWQgcGFja2V0IG1hdGNoZXMgdGhl
IG9yaWdpYWwgb25lICovCi0gICAgZm9yIChpID0gMDsgaSA8IG1zZ19sZW5fb2N0ZXRzOyBpKysp
IHsKLSAgICAgICAgaWYgKCgodWludDhfdCopaGRyKVtpXSAhPSAoKHVpbnQ4X3QqKWhkcjIpW2ld
KSB7CisgICAgZm9yIChpID0gMDsgaSA8IGxlbjsgaSsrKSB7CisgICAgICAgIGlmICgoKHVpbnQ4
X3QgKiloZHIpW2ldICE9ICgodWludDhfdCAqKWhkcjIpW2ldKSB7CiAgICAgICAgICAgICBmcHJp
bnRmKHN0ZG91dCwgIm1pc21hdGNoIGF0IG9jdGV0ICVkXG4iLCBpKTsKICAgICAgICAgICAgIHN0
YXR1cyA9IHNydHBfZXJyX3N0YXR1c19hbGdvX2ZhaWw7CiAgICAgICAgIH0KQEAgLTEzOTQsMTUg
KzEzNzMsMTMgQEAgc3J0Y3BfdGVzdCAoY29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5LCBpbnQg
bWtpX2luZGV4KQogICAgICAqIGlmIHRoZSBwb2xpY3kgaW5jbHVkZXMgYXV0aGVudGljYXRpb24s
IHRoZW4gdGVzdCBmb3IgZmFsc2UgcG9zaXRpdmVzCiAgICAgICovCiAgICAgaWYgKHBvbGljeS0+
cnRwLnNlY19zZXJ2ICYgc2VjX3NlcnZfYXV0aCkgewotICAgICAgICBjaGFyICpkYXRhID0gKChj
aGFyKiloZHIpICsgMTI7CisgICAgICAgIGNoYXIgKmRhdGEgPSAoKGNoYXIgKiloZHIpICsgMTI7
CiAKICAgICAgICAgcHJpbnRmKCJ0ZXN0aW5nIGZvciBmYWxzZSBwb3NpdGl2ZXMgaW4gcmVwbGF5
IGNoZWNrLi4uIik7CiAKLSAgICAgICAgLyogc2V0IG1lc3NhZ2UgbGVuZ3RoICovCi0gICAgICAg
IGxlbiA9IG1zZ19sZW5fZW5jOwotCiAgICAgICAgIC8qIHVucHJvdGVjdCBhIHNlY29uZCB0aW1l
IC0gc2hvdWxkIGZhaWwgd2l0aCBhIHJlcGxheSBlcnJvciAqLwotICAgICAgICBzdGF0dXMgPSBz
cnRwX3Rlc3RfY2FsbF91bnByb3RlY3RfcnRjcChzcnRjcF9yY3ZyLCBoZHIsICZsZW4sIHVzZV9t
a2kpOworICAgICAgICBzdGF0dXMgPSBzcnRwX3Rlc3RfY2FsbF91bnByb3RlY3RfcnRjcChzcnRj
cF9yY3ZyLCBoZHIsICZtc2dfbGVuX2VuYywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgdXNlX21raSk7CiAgICAgICAgIGlmIChzdGF0dXMgIT0gc3J0cF9l
cnJfc3RhdHVzX3JlcGxheV9mYWlsKSB7CiAgICAgICAgICAgICBwcmludGYoImZhaWxlZCB3aXRo
IGVycm9yIGNvZGUgJWRcbiIsIHN0YXR1cyk7CiAgICAgICAgICAgICBmcmVlKGhkcik7CkBAIC0x
NDE4LDExICsxMzk1LDkgQEAgc3J0Y3BfdGVzdCAoY29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5
LCBpbnQgbWtpX2luZGV4KQogICAgICAgICAvKiBpbmNyZW1lbnQgc2VxdWVuY2UgbnVtYmVyIGlu
IGhlYWRlciAqLwogICAgICAgICBoZHItPnNlcSsrOwogCi0gICAgICAgIC8qIHNldCBtZXNzYWdl
IGxlbmd0aCAqLwotICAgICAgICBsZW4gPSBtc2dfbGVuX29jdGV0czsKLQogICAgICAgICAvKiBh
cHBseSBwcm90ZWN0aW9uICovCi0gICAgICAgIGVycl9jaGVjayhzcnRwX3Rlc3RfY2FsbF9wcm90
ZWN0X3J0Y3Aoc3J0Y3Bfc2VuZGVyLCBoZHIsICZsZW4sIG1raV9pbmRleCkpOworICAgICAgICBl
cnJfY2hlY2soCisgICAgICAgICAgICBzcnRwX3Rlc3RfY2FsbF9wcm90ZWN0X3J0Y3Aoc3J0Y3Bf
c2VuZGVyLCBoZHIsICZsZW4sIG1raV9pbmRleCkpOwogCiAgICAgICAgIC8qIGZsaXAgYml0cyBp
biBwYWNrZXQgKi8KICAgICAgICAgZGF0YVswXSBePSAweGZmOwpAQCAtMTQzOCw3ICsxNDEzLDYg
QEAgc3J0Y3BfdGVzdCAoY29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5LCBpbnQgbWtpX2luZGV4
KQogICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgcHJpbnRmKCJwYXNzZWRcbiIpOwogICAg
ICAgICB9Ci0KICAgICB9CiAKICAgICBlcnJfY2hlY2soc3J0cF9kZWFsbG9jKHNydGNwX3NlbmRl
cikpOwpAQCAtMTQ1MCwyMSArMTQyNCwxMSBAQCBzcnRjcF90ZXN0IChjb25zdCBzcnRwX3BvbGlj
eV90ICpwb2xpY3ksIGludCBta2lfaW5kZXgpCiAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19v
azsKIH0KIAotCi1zcnRwX2Vycl9zdGF0dXNfdAotc3J0cF9zZXNzaW9uX3ByaW50X3BvbGljeSAo
c3J0cF90IHNydHApCitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3Nlc3Npb25fcHJpbnRfcG9saWN5
KHNydHBfdCBzcnRwKQogewotICAgIGNoYXIgKnNlcnZfZGVzY3JbNF0gPSB7Ci0gICAgICAgICJu
b25lIiwKLSAgICAgICAgImNvbmZpZGVudGlhbGl0eSIsCi0gICAgICAgICJhdXRoZW50aWNhdGlv
biIsCi0gICAgICAgICJjb25maWRlbnRpYWxpdHkgYW5kIGF1dGhlbnRpY2F0aW9uIgotICAgIH07
Ci0gICAgY2hhciAqZGlyZWN0aW9uWzNdID0gewotICAgICAgICAidW5rbm93biIsCi0gICAgICAg
ICJvdXRib3VuZCIsCi0gICAgICAgICJpbmJvdW5kIgotICAgIH07CisgICAgY2hhciAqc2Vydl9k
ZXNjcls0XSA9IHsgIm5vbmUiLCAiY29uZmlkZW50aWFsaXR5IiwgImF1dGhlbnRpY2F0aW9uIiwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAiY29uZmlkZW50aWFsaXR5IGFuZCBhdXRoZW50
aWNhdGlvbiIgfTsKKyAgICBjaGFyICpkaXJlY3Rpb25bM10gPSB7ICJ1bmtub3duIiwgIm91dGJv
dW5kIiwgImluYm91bmQiIH07CiAgICAgc3J0cF9zdHJlYW1fdCBzdHJlYW07CiAgICAgc3J0cF9z
ZXNzaW9uX2tleXNfdCAqc2Vzc2lvbl9rZXlzID0gTlVMTDsKIApAQCAtMTQ5OCw3ICsxNDYyLDcg
QEAgc3J0cF9zZXNzaW9uX3ByaW50X3BvbGljeSAoc3J0cF90IHNydHApCiAKICAgICAgICAgcHJp
bnRmKCIjIEVuY3J5cHRlZCBleHRlbnNpb24gaGVhZGVyczogIik7CiAgICAgICAgIGlmIChzdHJl
YW0tPmVuY194dG5faGRyICYmIHN0cmVhbS0+ZW5jX3h0bl9oZHJfY291bnQgPiAwKSB7Ci0gICAg
ICAgICAgICBpbnQqIGVuY194dG5faGRyID0gc3RyZWFtLT5lbmNfeHRuX2hkcjsKKyAgICAgICAg
ICAgIGludCAqZW5jX3h0bl9oZHIgPSBzdHJlYW0tPmVuY194dG5faGRyOwogICAgICAgICAgICAg
aW50IGNvdW50ID0gc3RyZWFtLT5lbmNfeHRuX2hkcl9jb3VudDsKICAgICAgICAgICAgIHdoaWxl
IChjb3VudCA+IDApIHsKICAgICAgICAgICAgICAgICBwcmludGYoIiVkICIsICplbmNfeHRuX2hk
cik7CkBAIC0xNTI4LDggKzE0OTIsNyBAQCBzcnRwX3Nlc3Npb25fcHJpbnRfcG9saWN5IChzcnRw
X3Qgc3J0cCkKICAgICAgICAgICAgICAgICIjIHJ0Y3Agc2VydmljZXM6ICVzXHJcbiIKICAgICAg
ICAgICAgICAgICIjIHdpbmRvdyBzaXplOiAgICVsdVxyXG4iCiAgICAgICAgICAgICAgICAiIyB0
eCBydHggYWxsb3dlZDolc1xyXG4iLAotICAgICAgICAgICAgICAgc3RyZWFtLT5zc3JjLAotICAg
ICAgICAgICAgICAgc2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVyLT50eXBlLT5kZXNjcmlwdGlvbiwK
KyAgICAgICAgICAgICAgIHN0cmVhbS0+c3NyYywgc2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVyLT50
eXBlLT5kZXNjcmlwdGlvbiwKICAgICAgICAgICAgICAgIHNlc3Npb25fa2V5cy0+cnRwX2F1dGgt
PnR5cGUtPmRlc2NyaXB0aW9uLAogICAgICAgICAgICAgICAgc2Vydl9kZXNjcltzdHJlYW0tPnJ0
cF9zZXJ2aWNlc10sCiAgICAgICAgICAgICAgICBzZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyLT50
eXBlLT5kZXNjcmlwdGlvbiwKQEAgLTE1NDAsNyArMTUwMyw3IEBAIHNydHBfc2Vzc2lvbl9wcmlu
dF9wb2xpY3kgKHNydHBfdCBzcnRwKQogCiAgICAgICAgIHByaW50ZigiIyBFbmNyeXB0ZWQgZXh0
ZW5zaW9uIGhlYWRlcnM6ICIpOwogICAgICAgICBpZiAoc3RyZWFtLT5lbmNfeHRuX2hkciAmJiBz
dHJlYW0tPmVuY194dG5faGRyX2NvdW50ID4gMCkgewotICAgICAgICAgICAgaW50KiBlbmNfeHRu
X2hkciA9IHN0cmVhbS0+ZW5jX3h0bl9oZHI7CisgICAgICAgICAgICBpbnQgKmVuY194dG5faGRy
ID0gc3RyZWFtLT5lbmNfeHRuX2hkcjsKICAgICAgICAgICAgIGludCBjb3VudCA9IHN0cmVhbS0+
ZW5jX3h0bl9oZHJfY291bnQ7CiAgICAgICAgICAgICB3aGlsZSAoY291bnQgPiAwKSB7CiAgICAg
ICAgICAgICAgICAgcHJpbnRmKCIlZCAiLCAqZW5jX3h0bl9oZHIpOwpAQCAtMTU1OCw4ICsxNTIx
LDcgQEAgc3J0cF9zZXNzaW9uX3ByaW50X3BvbGljeSAoc3J0cF90IHNydHApCiAgICAgcmV0dXJu
IHNydHBfZXJyX3N0YXR1c19vazsKIH0KIAotc3J0cF9lcnJfc3RhdHVzX3QKLXNydHBfcHJpbnRf
cG9saWN5IChjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3kpCitzcnRwX2Vycl9zdGF0dXNfdCBz
cnRwX3ByaW50X3BvbGljeShjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3kpCiB7CiAgICAgc3J0
cF9lcnJfc3RhdHVzX3Qgc3RhdHVzOwogICAgIHNydHBfdCBzZXNzaW9uOwpAQCAtMTU5MiwxMSAr
MTU1NCwxMCBAQCBzcnRwX3ByaW50X3BvbGljeSAoY29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5
KQogCiBjaGFyIHBhY2tldF9zdHJpbmdbTVRVXTsKIAotY2hhciAqCi1zcnRwX3BhY2tldF90b19z
dHJpbmcgKHNydHBfaGRyX3QgKmhkciwgaW50IHBrdF9vY3RldF9sZW4pCitjaGFyICpzcnRwX3Bh
Y2tldF90b19zdHJpbmcoc3J0cF9oZHJfdCAqaGRyLCBpbnQgcGt0X29jdGV0X2xlbikKIHsKICAg
ICBpbnQgb2N0ZXRzX2luX3J0cF9oZWFkZXIgPSAxMjsKLSAgICB1aW50OF90ICpkYXRhID0gKCh1
aW50OF90KiloZHIpICsgb2N0ZXRzX2luX3J0cF9oZWFkZXI7CisgICAgdWludDhfdCAqZGF0YSA9
ICgodWludDhfdCAqKWhkcikgKyBvY3RldHNfaW5fcnRwX2hlYWRlcjsKICAgICBpbnQgaGV4X2xl
biA9IHBrdF9vY3RldF9sZW4gLSBvY3RldHNfaW5fcnRwX2hlYWRlcjsKIAogICAgIC8qIHNhbml0
eSBjaGVja2luZyAqLwpAQCAtMTYwNSwyOSArMTU2NiwyMCBAQCBzcnRwX3BhY2tldF90b19zdHJp
bmcgKHNydHBfaGRyX3QgKmhkciwgaW50IHBrdF9vY3RldF9sZW4pCiAgICAgfQogCiAgICAgLyog
d3JpdGUgcGFja2V0IGludG8gc3RyaW5nICovCi0gICAgc3ByaW50ZihwYWNrZXRfc3RyaW5nLAot
ICAgICAgICAgICAgIihzKXJ0cCBwYWNrZXQ6IHtcbiIKLSAgICAgICAgICAgICIgICB2ZXJzaW9u
Olx0JWRcbiIKLSAgICAgICAgICAgICIgICBwOlx0XHQlZFxuIgotICAgICAgICAgICAgIiAgIHg6
XHRcdCVkXG4iCi0gICAgICAgICAgICAiICAgY2M6XHRcdCVkXG4iCi0gICAgICAgICAgICAiICAg
bTpcdFx0JWRcbiIKLSAgICAgICAgICAgICIgICBwdDpcdFx0JXhcbiIKLSAgICAgICAgICAgICIg
ICBzZXE6XHRcdCV4XG4iCi0gICAgICAgICAgICAiICAgdHM6XHRcdCV4XG4iCi0gICAgICAgICAg
ICAiICAgc3NyYzpcdCV4XG4iCi0gICAgICAgICAgICAiICAgZGF0YTpcdCVzXG4iCi0gICAgICAg
ICAgICAifSAoJWQgb2N0ZXRzIGluIHRvdGFsKVxuIiwKLSAgICAgICAgICAgIGhkci0+dmVyc2lv
biwKLSAgICAgICAgICAgIGhkci0+cCwKLSAgICAgICAgICAgIGhkci0+eCwKLSAgICAgICAgICAg
IGhkci0+Y2MsCi0gICAgICAgICAgICBoZHItPm0sCi0gICAgICAgICAgICBoZHItPnB0LAotICAg
ICAgICAgICAgaGRyLT5zZXEsCi0gICAgICAgICAgICBoZHItPnRzLAotICAgICAgICAgICAgaGRy
LT5zc3JjLAotICAgICAgICAgICAgb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcoZGF0YSwgaGV4X2xl
biksCisgICAgc3ByaW50ZihwYWNrZXRfc3RyaW5nLCAiKHMpcnRwIHBhY2tldDoge1xuIgorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIiAgIHZlcnNpb246XHQlZFxuIgorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIiAgIHA6XHRcdCVkXG4iCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAiICAgeDpcdFx0JWRcbiIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICIgICBjYzpcdFx0
JWRcbiIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICIgICBtOlx0XHQlZFxuIgorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIiAgIHB0Olx0XHQleFxuIgorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIiAgIHNlcTpcdFx0JXhcbiIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICIg
ICB0czpcdFx0JXhcbiIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICIgICBzc3JjOlx0JXhc
biIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICIgICBkYXRhOlx0JXNcbiIKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICJ9ICglZCBvY3RldHMgaW4gdG90YWwpXG4iLAorICAgICAgICAg
ICAgaGRyLT52ZXJzaW9uLCBoZHItPnAsIGhkci0+eCwgaGRyLT5jYywgaGRyLT5tLCBoZHItPnB0
LCBoZHItPnNlcSwKKyAgICAgICAgICAgIGhkci0+dHMsIGhkci0+c3NyYywgb2N0ZXRfc3RyaW5n
X2hleF9zdHJpbmcoZGF0YSwgaGV4X2xlbiksCiAgICAgICAgICAgICBwa3Rfb2N0ZXRfbGVuKTsK
IAogICAgIHJldHVybiBwYWNrZXRfc3RyaW5nOwpAQCAtMTY0Myw4ICsxNTk1LDcgQEAgc3J0cF9w
YWNrZXRfdG9fc3RyaW5nIChzcnRwX2hkcl90ICpoZHIsIGludCBwa3Rfb2N0ZXRfbGVuKQogICog
b3B0aW1pemUgYXdheSB0aGUgZnVuY3Rpb24KICAqLwogCi1kb3VibGUKLW1pcHNfZXN0aW1hdGUg
KGludCBudW1fdHJpYWxzLCBpbnQgKmlnbm9yZSkKK2RvdWJsZSBtaXBzX2VzdGltYXRlKGludCBu
dW1fdHJpYWxzLCBpbnQgKmlnbm9yZSkKIHsKICAgICBjbG9ja190IHQ7CiAgICAgdm9sYXRpbGUg
aW50IGksIHN1bTsKQEAgLTE2NTYsMjMgKzE2MDcsMjEgQEAgbWlwc19lc3RpbWF0ZSAoaW50IG51
bV90cmlhbHMsIGludCAqaWdub3JlKQogICAgIH0KICAgICB0ID0gY2xvY2soKSAtIHQ7CiAKLS8q
ICAgcHJpbnRmKCIlZFxuIiwgc3VtKTsgKi8KKyAgICAvKiAgIHByaW50ZigiJWRcbiIsIHN1bSk7
ICovCiAgICAgKmlnbm9yZSA9IHN1bTsKIAogICAgIHJldHVybiAoZG91YmxlKW51bV90cmlhbHMg
KiBDTE9DS1NfUEVSX1NFQyAvIHQ7CiB9CiAKLQogLyoKICAqIHNydHBfdmFsaWRhdGUoKSB2ZXJp
ZmllcyB0aGUgY29ycmVjdG5lc3Mgb2YgbGlic3J0cCBieSBjb21wYXJpbmcKICAqIHNvbWUgY29t
cHV0ZWQgcGFja2V0cyBhZ2FpbnN0IHNvbWUgcHJlLWNvbXB1dGVkIHJlZmVyZW5jZSB2YWx1ZXMu
CiAgKiBUaGVzZSBwYWNrZXRzIHdlcmUgbWFkZSB3aXRoIHRoZSBkZWZhdWx0IFNSVFAgcG9saWN5
LgogICovCiAKLQotc3J0cF9lcnJfc3RhdHVzX3QKLXNydHBfdmFsaWRhdGUgKCkKK3NydHBfZXJy
X3N0YXR1c190IHNydHBfdmFsaWRhdGUoKQogeworICAgIC8vIGNsYW5nLWZvcm1hdCBvZmYKICAg
ICB1aW50OF90IHNydHBfcGxhaW50ZXh0X3JlZlsyOF0gPSB7CiAgICAgICAgIDB4ODAsIDB4MGYs
IDB4MTIsIDB4MzQsIDB4ZGUsIDB4Y2EsIDB4ZmIsIDB4YWQsCiAgICAgICAgIDB4Y2EsIDB4ZmUs
IDB4YmEsIDB4YmUsIDB4YWIsIDB4YWIsIDB4YWIsIDB4YWIsCkBAIC0xNzEyLDYgKzE2NjEsOCBA
QCBzcnRwX3ZhbGlkYXRlICgpCiAgICAgICAgIDB4ODAsIDB4MDAsIDB4MDAsIDB4MDEsIDB4OTks
IDB4M2UsIDB4MDgsIDB4Y2QsCiAgICAgICAgIDB4NTQsIDB4ZDYsIDB4YzEsIDB4MjMsIDB4MDcs
IDB4OTgKICAgICB9OworICAgIC8vIGNsYW5nLWZvcm1hdCBvbgorCiAgICAgc3J0cF90IHNydHBf
c25kLCBzcnRwX3JlY3Y7CiAgICAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVzOwogICAgIGludCBs
ZW47CkBAIC0xNzI0LDcgKzE2NzUsNyBAQCBzcnRwX3ZhbGlkYXRlICgpCiAgICAgbWVtc2V0KCZw
b2xpY3ksIDAsIHNpemVvZihwb2xpY3kpKTsKICAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X3J0
cF9kZWZhdWx0KCZwb2xpY3kucnRwKTsKICAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X3J0Y3Bf
ZGVmYXVsdCgmcG9saWN5LnJ0Y3ApOwotICAgIHBvbGljeS5zc3JjLnR5cGUgID0gc3NyY19zcGVj
aWZpYzsKKyAgICBwb2xpY3kuc3NyYy50eXBlID0gc3NyY19zcGVjaWZpYzsKICAgICBwb2xpY3ku
c3NyYy52YWx1ZSA9IDB4Y2FmZWJhYmU7CiAgICAgcG9saWN5LmtleSA9IHRlc3Rfa2V5OwogICAg
IHBvbGljeS5la3QgPSBOVUxMOwpAQCAtMTgyNiw5ICsxNzc3LDkgQEAgc3J0cF92YWxpZGF0ZSAo
KQogICogc3J0cF92YWxpZGF0ZV9nY20oKSB2ZXJpZmllcyB0aGUgY29ycmVjdG5lc3Mgb2YgbGli
c3J0cCBieSBjb21wYXJpbmcKICAqIGFuIGNvbXB1dGVkIHBhY2tldCBhZ2FpbnN0IHRoZSBrbm93
biBjaXBoZXJ0ZXh0IGZvciB0aGUgcGxhaW50ZXh0LgogICovCi1zcnRwX2Vycl9zdGF0dXNfdAot
c3J0cF92YWxpZGF0ZV9nY20gKCkKK3NydHBfZXJyX3N0YXR1c190IHNydHBfdmFsaWRhdGVfZ2Nt
KCkKIHsKKyAgICAvLyBjbGFuZy1mb3JtYXQgb2ZmCiAgICAgdW5zaWduZWQgY2hhciB0ZXN0X2tl
eV9nY21bMjhdID0gewogICAgICAgICAweDAwLCAweDAxLCAweDAyLCAweDAzLCAweDA0LCAweDA1
LCAweDA2LCAweDA3LAogICAgICAgICAweDA4LCAweDA5LCAweDBhLCAweDBiLCAweDBjLCAweDBk
LCAweDBlLCAweDBmLApAQCAtMTg3OCw2ICsxODI5LDcgQEAgc3J0cF92YWxpZGF0ZV9nY20gKCkK
ICAgICAgICAgMHhlYSwgMHgzMSwgMHgxMiwgMHgzYiwgMHhhOCwgMHg4YywgMHhlNiwgMHgxZSwK
ICAgICAgICAgMHg4MCwgMHgwMCwgMHgwMCwgMHgwMQogICAgIH07CisgICAgLy8gY2xhbmctZm9y
bWF0IG9uCiAKICAgICBzcnRwX3Qgc3J0cF9zbmQsIHNydHBfcmVjdjsKICAgICBzcnRwX2Vycl9z
dGF0dXNfdCBzdGF0dXM7CkBAIC0xODkxLDkgKzE4NDMsOSBAQCBzcnRwX3ZhbGlkYXRlX2djbSAo
KQogICAgIG1lbXNldCgmcG9saWN5LCAwLCBzaXplb2YocG9saWN5KSk7CiAgICAgc3J0cF9jcnlw
dG9fcG9saWN5X3NldF9hZXNfZ2NtXzEyOF8xNl9hdXRoKCZwb2xpY3kucnRwKTsKICAgICBzcnRw
X2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21fMTI4XzE2X2F1dGgoJnBvbGljeS5ydGNwKTsKLSAg
ICBwb2xpY3kuc3NyYy50eXBlICA9IHNzcmNfc3BlY2lmaWM7CisgICAgcG9saWN5LnNzcmMudHlw
ZSA9IHNzcmNfc3BlY2lmaWM7CiAgICAgcG9saWN5LnNzcmMudmFsdWUgPSAweGNhZmViYWJlOwot
ICAgIHBvbGljeS5rZXkgID0gdGVzdF9rZXlfZ2NtOworICAgIHBvbGljeS5rZXkgPSB0ZXN0X2tl
eV9nY207CiAgICAgcG9saWN5LmVrdCA9IE5VTEw7CiAgICAgcG9saWN5LndpbmRvd19zaXplID0g
MTI4OwogICAgIHBvbGljeS5hbGxvd19yZXBlYXRfdHggPSAwOwpAQCAtMTk5Myw4ICsxOTQ1LDkg
QEAgc3J0cF92YWxpZGF0ZV9nY20gKCkKIC8qCiAgKiBUZXN0IHZlY3RvcnMgdGFrZW4gZnJvbSBS
RkMgNjkwNCwgQXBwZW5kaXggQQogICovCi1zcnRwX2Vycl9zdGF0dXNfdAotc3J0cF92YWxpZGF0
ZV9lbmNyeXB0ZWRfZXh0ZW5zaW9uc19oZWFkZXJzKCkgeworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0
cF92YWxpZGF0ZV9lbmNyeXB0ZWRfZXh0ZW5zaW9uc19oZWFkZXJzKCkKK3sKKyAgICAvLyBjbGFu
Zy1mb3JtYXQgb2ZmCiAgICAgdW5zaWduZWQgY2hhciB0ZXN0X2tleV9leHRfaGVhZGVyc1szMF0g
PSB7CiAgICAgICAgIDB4ZTEsIDB4ZjksIDB4N2EsIDB4MGQsIDB4M2UsIDB4MDEsIDB4OGIsIDB4
ZTAsCiAgICAgICAgIDB4ZDYsIDB4NGYsIDB4YTMsIDB4MmMsIDB4MDYsIDB4ZGUsIDB4NDEsIDB4
MzksCkBAIC0yMDMyLDExICsxOTg1LDEzIEBAIHNydHBfdmFsaWRhdGVfZW5jcnlwdGVkX2V4dGVu
c2lvbnNfaGVhZGVycygpIHsKICAgICAgICAgMHg1YSwgMHg0NiwgMHhiMywgMHhjYSwgMHgzNSwg
MHhjNSwgMHgzNSwgMHhhOCwKICAgICAgICAgMHg5MSwgMHhjNwogICAgIH07CisgICAgLy8gY2xh
bmctZm9ybWF0IG9uCisKICAgICBzcnRwX3Qgc3J0cF9zbmQsIHNydHBfcmVjdjsKICAgICBzcnRw
X2Vycl9zdGF0dXNfdCBzdGF0dXM7CiAgICAgaW50IGxlbjsKICAgICBzcnRwX3BvbGljeV90IHBv
bGljeTsKLSAgICBpbnQgaGVhZGVyc1szXSA9IHsxLCAzLCA0fTsKKyAgICBpbnQgaGVhZGVyc1sz
XSA9IHsgMSwgMywgNCB9OwogCiAgICAgLyoKICAgICAgKiBjcmVhdGUgYSBzZXNzaW9uIHdpdGgg
YSBzaW5nbGUgc3RyZWFtIHVzaW5nIHRoZSBkZWZhdWx0IHNydHAKQEAgLTIwNDUsNyArMjAwMCw3
IEBAIHNydHBfdmFsaWRhdGVfZW5jcnlwdGVkX2V4dGVuc2lvbnNfaGVhZGVycygpIHsKICAgICBt
ZW1zZXQoJnBvbGljeSwgMCwgc2l6ZW9mKHBvbGljeSkpOwogICAgIHNydHBfY3J5cHRvX3BvbGlj
eV9zZXRfcnRwX2RlZmF1bHQoJnBvbGljeS5ydHApOwogICAgIHNydHBfY3J5cHRvX3BvbGljeV9z
ZXRfcnRjcF9kZWZhdWx0KCZwb2xpY3kucnRjcCk7Ci0gICAgcG9saWN5LnNzcmMudHlwZSAgPSBz
c3JjX3NwZWNpZmljOworICAgIHBvbGljeS5zc3JjLnR5cGUgPSBzc3JjX3NwZWNpZmljOwogICAg
IHBvbGljeS5zc3JjLnZhbHVlID0gMHhjYWZlYmFiZTsKICAgICBwb2xpY3kua2V5ID0gdGVzdF9r
ZXlfZXh0X2hlYWRlcnM7CiAgICAgcG9saWN5LmVrdCA9IE5VTEw7CkBAIC0yMTA4LDE0ICsyMDYz
LDE0IEBAIHNydHBfdmFsaWRhdGVfZW5jcnlwdGVkX2V4dGVuc2lvbnNfaGVhZGVycygpIHsKICAg
ICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQogCi0KICNpZmRlZiBPUEVOU1NMCiAKIC8q
CiAgKiBIZWFkZXJzIG9mIHRlc3QgdmVjdG9ycyB0YWtlbiBmcm9tIFJGQyA2OTA0LCBBcHBlbmRp
eCBBCiAgKi8KLXNydHBfZXJyX3N0YXR1c190Ci1zcnRwX3ZhbGlkYXRlX2VuY3J5cHRlZF9leHRl
bnNpb25zX2hlYWRlcnNfZ2NtKCkgeworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF92YWxpZGF0ZV9l
bmNyeXB0ZWRfZXh0ZW5zaW9uc19oZWFkZXJzX2djbSgpCit7CisgICAgLy8gY2xhbmctZm9ybWF0
IG9mZgogICAgIHVuc2lnbmVkIGNoYXIgdGVzdF9rZXlfZXh0X2hlYWRlcnNbMzBdID0gewogICAg
ICAgICAweGUxLCAweGY5LCAweDdhLCAweDBkLCAweDNlLCAweDAxLCAweDhiLCAweGUwLAogICAg
ICAgICAweGQ2LCAweDRmLCAweGEzLCAweDJjLCAweDA2LCAweGRlLCAweDQxLCAweDM5LApAQCAt
MjE1MSwxMSArMjEwNiwxMyBAQCBzcnRwX3ZhbGlkYXRlX2VuY3J5cHRlZF9leHRlbnNpb25zX2hl
YWRlcnNfZ2NtKCkgewogICAgICAgICAweDZjLCAweGQzLCAweGQyLCAweDg4LCAweGI0LCAweDlm
LCAweDZjLCAweGE5LAogICAgICAgICAweGY0LCAweGIxLCAweGI3LCAweDU5LCAweDcxLCAweDll
LCAweGI1LCAweGJjCiAgICAgfTsKKyAgICAvLyBjbGFuZy1mb3JtYXQgb24KKwogICAgIHNydHBf
dCBzcnRwX3NuZCwgc3J0cF9yZWN2OwogICAgIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKICAg
ICBpbnQgbGVuOwogICAgIHNydHBfcG9saWN5X3QgcG9saWN5OwotICAgIGludCBoZWFkZXJzWzNd
ID0gezEsIDMsIDR9OworICAgIGludCBoZWFkZXJzWzNdID0geyAxLCAzLCA0IH07CiAKICAgICAv
KgogICAgICAqIGNyZWF0ZSBhIHNlc3Npb24gd2l0aCBhIHNpbmdsZSBzdHJlYW0gdXNpbmcgdGhl
IGRlZmF1bHQgc3J0cApAQCAtMjE2NCw3ICsyMTIxLDcgQEAgc3J0cF92YWxpZGF0ZV9lbmNyeXB0
ZWRfZXh0ZW5zaW9uc19oZWFkZXJzX2djbSgpIHsKICAgICBtZW1zZXQoJnBvbGljeSwgMCwgc2l6
ZW9mKHBvbGljeSkpOwogICAgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2djbV8xMjhfOF9h
dXRoKCZwb2xpY3kucnRwKTsKICAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21fMTI4
XzhfYXV0aCgmcG9saWN5LnJ0Y3ApOwotICAgIHBvbGljeS5zc3JjLnR5cGUgID0gc3NyY19zcGVj
aWZpYzsKKyAgICBwb2xpY3kuc3NyYy50eXBlID0gc3NyY19zcGVjaWZpYzsKICAgICBwb2xpY3ku
c3NyYy52YWx1ZSA9IDB4Y2FmZWJhYmU7CiAgICAgcG9saWN5LmtleSA9IHRlc3Rfa2V5X2V4dF9o
ZWFkZXJzOwogICAgIHBvbGljeS5la3QgPSBOVUxMOwpAQCAtMjIzNCwxMCArMjE5MSw5IEBAIHNy
dHBfdmFsaWRhdGVfZW5jcnlwdGVkX2V4dGVuc2lvbnNfaGVhZGVyc19nY20oKSB7CiAgKiBUaGVz
ZSBwYWNrZXRzIHdlcmUgbWFkZSB3aXRoIHRoZSBBRVMtQ00tMjU2L0hNQUMtU0hBLTEtODAgcG9s
aWN5LgogICovCiAKLQotc3J0cF9lcnJfc3RhdHVzX3QKLXNydHBfdmFsaWRhdGVfYWVzXzI1NiAo
KQorc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF92YWxpZGF0ZV9hZXNfMjU2KCkKIHsKKyAgICAvLyBj
bGFuZy1mb3JtYXQgb2ZmCiAgICAgdW5zaWduZWQgY2hhciBhZXNfMjU2X3Rlc3Rfa2V5WzQ2XSA9
IHsKICAgICAgICAgMHhmMCwgMHhmMCwgMHg0OSwgMHgxNCwgMHhiNSwgMHgxMywgMHhmMiwgMHg3
NiwKICAgICAgICAgMHgzYSwgMHgxYiwgMHgxZiwgMHhhMSwgMHgzMCwgMHhmMSwgMHgwZSwgMHgy
OSwKQEAgLTIyNjcsNiArMjIyMyw4IEBAIHNydHBfdmFsaWRhdGVfYWVzXzI1NiAoKQogICAgICAg
ICAweGIwLCAweGI0LCAweGI0LCAweDBkLCAweGEwLCAweDhkLCAweDlkLCAweDlhLAogICAgICAg
ICAweDViLCAweDNhLCAweDU1LCAweGQ4LCAweDg3LCAweDNiCiAgICAgfTsKKyAgICAvLyBjbGFu
Zy1mb3JtYXQgb24KKwogICAgIHNydHBfdCBzcnRwX3NuZCwgc3J0cF9yZWN2OwogICAgIHNydHBf
ZXJyX3N0YXR1c190IHN0YXR1czsKICAgICBpbnQgbGVuOwpAQCAtMjI3OSw3ICsyMjM3LDcgQEAg
c3J0cF92YWxpZGF0ZV9hZXNfMjU2ICgpCiAgICAgbWVtc2V0KCZwb2xpY3ksIDAsIHNpemVvZihw
b2xpY3kpKTsKICAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19jbV8yNTZfaG1hY19zaGEx
XzgwKCZwb2xpY3kucnRwKTsKICAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19jbV8yNTZf
aG1hY19zaGExXzgwKCZwb2xpY3kucnRjcCk7Ci0gICAgcG9saWN5LnNzcmMudHlwZSAgPSBzc3Jj
X3NwZWNpZmljOworICAgIHBvbGljeS5zc3JjLnR5cGUgPSBzc3JjX3NwZWNpZmljOwogICAgIHBv
bGljeS5zc3JjLnZhbHVlID0gMHhjYWZlYmFiZTsKICAgICBwb2xpY3kua2V5ID0gYWVzXzI1Nl90
ZXN0X2tleTsKICAgICBwb2xpY3kuZWt0ID0gTlVMTDsKQEAgLTIzNDUsOSArMjMwMyw3IEBAIHNy
dHBfdmFsaWRhdGVfYWVzXzI1NiAoKQogICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9
CiAKLQotc3J0cF9lcnJfc3RhdHVzX3QKLXNydHBfY3JlYXRlX2JpZ19wb2xpY3kgKHNydHBfcG9s
aWN5X3QgKipsaXN0KQorc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcmVhdGVfYmlnX3BvbGljeShz
cnRwX3BvbGljeV90ICoqbGlzdCkKIHsKICAgICBleHRlcm4gY29uc3Qgc3J0cF9wb2xpY3lfdCAq
cG9saWN5X2FycmF5W107CiAgICAgc3J0cF9wb2xpY3lfdCAqcCwgKnRtcDsKQEAgLTIzNjUsNyAr
MjMyMSw3IEBAIHNydHBfY3JlYXRlX2JpZ19wb2xpY3kgKHNydHBfcG9saWN5X3QgKipsaXN0KQog
ICAgICAqLwogICAgIHRtcCA9IE5VTEw7CiAgICAgd2hpbGUgKHBvbGljeV9hcnJheVtpXSAhPSBO
VUxMKSB7Ci0gICAgICAgIHAgID0gKHNydHBfcG9saWN5X3QqKW1hbGxvYyhzaXplb2Yoc3J0cF9w
b2xpY3lfdCkpOworICAgICAgICBwID0gKHNydHBfcG9saWN5X3QgKiltYWxsb2Moc2l6ZW9mKHNy
dHBfcG9saWN5X3QpKTsKICAgICAgICAgaWYgKHAgPT0gTlVMTCkgewogICAgICAgICAgICAgcmV0
dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW07CiAgICAgICAgIH0KQEAgLTIzODEsOCArMjMz
Nyw3IEBAIHNydHBfY3JlYXRlX2JpZ19wb2xpY3kgKHNydHBfcG9saWN5X3QgKipsaXN0KQogICAg
IHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAKLXNydHBfZXJyX3N0YXR1c190Ci1zcnRw
X2RlYWxsb2NfYmlnX3BvbGljeSAoc3J0cF9wb2xpY3lfdCAqbGlzdCkKK3NydHBfZXJyX3N0YXR1
c190IHNydHBfZGVhbGxvY19iaWdfcG9saWN5KHNydHBfcG9saWN5X3QgKmxpc3QpCiB7CiAgICAg
c3J0cF9wb2xpY3lfdCAqcCwgKm5leHQ7CiAKQEAgLTIzOTQsOCArMjM0OSw3IEBAIHNydHBfZGVh
bGxvY19iaWdfcG9saWN5IChzcnRwX3BvbGljeV90ICpsaXN0KQogICAgIHJldHVybiBzcnRwX2Vy
cl9zdGF0dXNfb2s7CiB9CiAKLXNydHBfZXJyX3N0YXR1c190Ci1zcnRwX3Rlc3RfZW1wdHlfcGF5
bG9hZCgpCitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3Rlc3RfZW1wdHlfcGF5bG9hZCgpCiB7CiAg
ICAgc3J0cF90IHNydHBfc25kLCBzcnRwX3JlY3Y7CiAgICAgc3J0cF9lcnJfc3RhdHVzX3Qgc3Rh
dHVzOwpAQCAtMjQxMCw3ICsyMzY0LDcgQEAgc3J0cF90ZXN0X2VtcHR5X3BheWxvYWQoKQogICAg
IG1lbXNldCgmcG9saWN5LCAwLCBzaXplb2YocG9saWN5KSk7CiAgICAgc3J0cF9jcnlwdG9fcG9s
aWN5X3NldF9ydHBfZGVmYXVsdCgmcG9saWN5LnJ0cCk7CiAgICAgc3J0cF9jcnlwdG9fcG9saWN5
X3NldF9ydGNwX2RlZmF1bHQoJnBvbGljeS5ydGNwKTsKLSAgICBwb2xpY3kuc3NyYy50eXBlICA9
IHNzcmNfc3BlY2lmaWM7CisgICAgcG9saWN5LnNzcmMudHlwZSA9IHNzcmNfc3BlY2lmaWM7CiAg
ICAgcG9saWN5LnNzcmMudmFsdWUgPSAweGNhZmViYWJlOwogICAgIHBvbGljeS5rZXkgPSB0ZXN0
X2tleTsKICAgICBwb2xpY3kuZWt0ID0gTlVMTDsKQEAgLTI0MjMsMTIgKzIzNzcsMTEgQEAgc3J0
cF90ZXN0X2VtcHR5X3BheWxvYWQoKQogICAgICAgICByZXR1cm4gc3RhdHVzOwogICAgIH0KIAot
ICAgIG1lc2cgPSBzcnRwX2NyZWF0ZV90ZXN0X3BhY2tldCgwLCBwb2xpY3kuc3NyYy52YWx1ZSk7
CisgICAgbWVzZyA9IHNydHBfY3JlYXRlX3Rlc3RfcGFja2V0KDAsIHBvbGljeS5zc3JjLnZhbHVl
LCAmbGVuKTsKICAgICBpZiAobWVzZyA9PSBOVUxMKSB7CiAgICAgICAgIHJldHVybiBzcnRwX2Vy
cl9zdGF0dXNfZmFpbDsKICAgICB9CiAKLSAgICBsZW4gPSAxMjsgIC8qIG9ubHkgdGhlIGhlYWRl
ciAqLwogICAgIHN0YXR1cyA9IHNydHBfcHJvdGVjdChzcnRwX3NuZCwgbWVzZywgJmxlbik7CiAg
ICAgaWYgKHN0YXR1cykgewogICAgICAgICByZXR1cm4gc3RhdHVzOwpAQCAtMjQ3Miw4ICsyNDI1
LDcgQEAgc3J0cF90ZXN0X2VtcHR5X3BheWxvYWQoKQogfQogCiAjaWZkZWYgT1BFTlNTTAotc3J0
cF9lcnJfc3RhdHVzX3QKLXNydHBfdGVzdF9lbXB0eV9wYXlsb2FkX2djbSgpCitzcnRwX2Vycl9z
dGF0dXNfdCBzcnRwX3Rlc3RfZW1wdHlfcGF5bG9hZF9nY20oKQogewogICAgIHNydHBfdCBzcnRw
X3NuZCwgc3J0cF9yZWN2OwogICAgIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKQEAgLTI0ODgs
NyArMjQ0MCw3IEBAIHNydHBfdGVzdF9lbXB0eV9wYXlsb2FkX2djbSgpCiAgICAgbWVtc2V0KCZw
b2xpY3ksIDAsIHNpemVvZihwb2xpY3kpKTsKICAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Fl
c19nY21fMTI4XzhfYXV0aCgmcG9saWN5LnJ0cCk7CiAgICAgc3J0cF9jcnlwdG9fcG9saWN5X3Nl
dF9hZXNfZ2NtXzEyOF84X2F1dGgoJnBvbGljeS5ydGNwKTsKLSAgICBwb2xpY3kuc3NyYy50eXBl
ICA9IHNzcmNfc3BlY2lmaWM7CisgICAgcG9saWN5LnNzcmMudHlwZSA9IHNzcmNfc3BlY2lmaWM7
CiAgICAgcG9saWN5LnNzcmMudmFsdWUgPSAweGNhZmViYWJlOwogICAgIHBvbGljeS5rZXkgPSB0
ZXN0X2tleTsKICAgICBwb2xpY3kuZWt0ID0gTlVMTDsKQEAgLTI1MDEsMTIgKzI0NTMsMTEgQEAg
c3J0cF90ZXN0X2VtcHR5X3BheWxvYWRfZ2NtKCkKICAgICAgICAgcmV0dXJuIHN0YXR1czsKICAg
ICB9CiAKLSAgICBtZXNnID0gc3J0cF9jcmVhdGVfdGVzdF9wYWNrZXQoMCwgcG9saWN5LnNzcmMu
dmFsdWUpOworICAgIG1lc2cgPSBzcnRwX2NyZWF0ZV90ZXN0X3BhY2tldCgwLCBwb2xpY3kuc3Ny
Yy52YWx1ZSwgJmxlbik7CiAgICAgaWYgKG1lc2cgPT0gTlVMTCkgewogICAgICAgICByZXR1cm4g
c3J0cF9lcnJfc3RhdHVzX2ZhaWw7CiAgICAgfQogCi0gICAgbGVuID0gMTI7ICAvKiBvbmx5IHRo
ZSBoZWFkZXIgKi8KICAgICBzdGF0dXMgPSBzcnRwX3Byb3RlY3Qoc3J0cF9zbmQsIG1lc2csICZs
ZW4pOwogICAgIGlmIChzdGF0dXMpIHsKICAgICAgICAgcmV0dXJuIHN0YXR1czsKQEAgLTI1NDgs
MTAgKzI0OTksOSBAQCBzcnRwX3Rlc3RfZW1wdHlfcGF5bG9hZF9nY20oKQogCiAgICAgcmV0dXJu
IHNydHBfZXJyX3N0YXR1c19vazsKIH0KLSNlbmRpZiAgLy8gT1BFTlNTTAorI2VuZGlmIC8vIE9Q
RU5TU0wKIAotc3J0cF9lcnJfc3RhdHVzX3QKLXNydHBfdGVzdF9yZW1vdmVfc3RyZWFtICgpCitz
cnRwX2Vycl9zdGF0dXNfdCBzcnRwX3Rlc3RfcmVtb3ZlX3N0cmVhbSgpCiB7CiAgICAgc3J0cF9l
cnJfc3RhdHVzX3Qgc3RhdHVzOwogICAgIHNydHBfcG9saWN5X3QgKnBvbGljeV9saXN0LCBwb2xp
Y3k7CkBAIC0yNTY1LDcgKzI1MTUsNiBAQCBzcnRwX3Rlc3RfcmVtb3ZlX3N0cmVhbSAoKQogICAg
ICAqLwogICAgIGV4dGVybiBzcnRwX3N0cmVhbV90IHNydHBfZ2V0X3N0cmVhbShzcnRwX3Qgc3J0
cCwgdWludDMyX3Qgc3NyYyk7CiAKLQogICAgIHN0YXR1cyA9IHNydHBfY3JlYXRlX2JpZ19wb2xp
Y3koJnBvbGljeV9saXN0KTsKICAgICBpZiAoc3RhdHVzKSB7CiAgICAgICAgIHJldHVybiBzdGF0
dXM7CkBAIC0yNjE2LDcgKzI1NjUsNyBAQCBzcnRwX3Rlc3RfcmVtb3ZlX3N0cmVhbSAoKQogICAg
IG1lbXNldCgmcG9saWN5LCAwLCBzaXplb2YocG9saWN5KSk7CiAgICAgc3J0cF9jcnlwdG9fcG9s
aWN5X3NldF9ydHBfZGVmYXVsdCgmcG9saWN5LnJ0cCk7CiAgICAgc3J0cF9jcnlwdG9fcG9saWN5
X3NldF9ydGNwX2RlZmF1bHQoJnBvbGljeS5ydGNwKTsKLSAgICBwb2xpY3kuc3NyYy50eXBlICA9
IHNzcmNfc3BlY2lmaWM7CisgICAgcG9saWN5LnNzcmMudHlwZSA9IHNzcmNfc3BlY2lmaWM7CiAg
ICAgcG9saWN5LnNzcmMudmFsdWUgPSAweGNhZmViYWJlOwogICAgIHBvbGljeS5rZXkgPSB0ZXN0
X2tleTsKICAgICBwb2xpY3kuZWt0ID0gTlVMTDsKQEAgLTI2NDcsNyArMjU5Niw3IEBAIHNydHBf
dGVzdF9yZW1vdmVfc3RyZWFtICgpCiAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0K
IAotCisvLyBjbGFuZy1mb3JtYXQgb2ZmCiB1bnNpZ25lZCBjaGFyIHRlc3RfYWx0X2tleVs0Nl0g
PSB7CiAgIDB4ZTUsIDB4MTksIDB4NmYsIDB4MDEsIDB4NWUsIDB4ZjEsIDB4OWIsIDB4ZTEsCiAg
IDB4ZDcsIDB4NDcsIDB4YTcsIDB4MjcsIDB4MDcsIDB4ZDcsIDB4NDcsIDB4MzMsCkBAIC0yNjU2
LDYgKzI2MDUsNyBAQCB1bnNpZ25lZCBjaGFyIHRlc3RfYWx0X2tleVs0Nl0gPSB7CiAgIDB4Yzcs
IDB4MTUsIDB4ZTIsIDB4ZWEsIDB4ZmUsIDB4NTUsIDB4NjcsIDB4OTYsCiAgIDB4YjYsIDB4OTYs
IDB4MGIsIDB4M2EsIDB4YWIsIDB4ZTYKIH07CisvLyBjbGFuZy1mb3JtYXQgb24KIAogLyoKICAq
IHNydHBfdGVzdF91cGRhdGUoKSB2ZXJpZmllcyB1cGRhdGluZy9yZWtleWluZyBleHNpc3Rpbmcg
c3RyZWFtcy4KQEAgLTI2NjQsNzQ4ICsyNjE0LDc3NiBAQCB1bnNpZ25lZCBjaGFyIHRlc3RfYWx0
X2tleVs0Nl0gPSB7CiAgKiBhdGVtcHRzIHRvIHByb3ZlIHRoYXQgc3J0cF91cGRhdGUgZG9lcyBu
b3QgcmVzZXQgdGhlIFJPQy4KICAqLwogCi1zcnRwX2Vycl9zdGF0dXNfdAotc3J0cF90ZXN0X3Vw
ZGF0ZSgpIHsKLQotICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7Ci0gIHVpbnQzMl90IHNzcmMg
PSAweDEyMTIxMjEyOwotICBpbnQgbXNnX2xlbl9vY3RldHMgPSAzMjsKLSAgaW50IHByb3RlY3Rl
ZF9tc2dfbGVuX29jdGV0czsKLSAgc3J0cF9oZHJfdCAqIG1zZzsKLSAgc3J0cF90IHNydHBfc25k
LCBzcnRwX3JlY3Y7Ci0gIHNydHBfcG9saWN5X3QgcG9saWN5OwotCi0gIG1lbXNldCgmcG9saWN5
LCAwLCBzaXplb2YocG9saWN5KSk7Ci0gIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfcnRwX2RlZmF1
bHQoJnBvbGljeS5ydHApOwotICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X3J0Y3BfZGVmYXVsdCgm
cG9saWN5LnJ0Y3ApOwotICBwb2xpY3kuZWt0ID0gTlVMTDsKLSAgcG9saWN5LndpbmRvd19zaXpl
ID0gMTI4OwotICBwb2xpY3kuYWxsb3dfcmVwZWF0X3R4ID0gMDsKLSAgcG9saWN5Lm5leHQgPSBO
VUxMOwotICBwb2xpY3kuc3NyYy50eXBlICA9IHNzcmNfYW55X291dGJvdW5kOwotICBwb2xpY3ku
a2V5ID0gdGVzdF9rZXk7Ci0KLSAgLyogY3JlYXRlIGEgc2VuZCBhbmQgcmVjaXZlIGN0eCB3aXRo
IGRlZnVhbHQgcHJvZmlsZSBhbmQgdGVzdF9rZXkgKi8KLSAgc3RhdHVzID0gc3J0cF9jcmVhdGUo
JnNydHBfcmVjdiwgJnBvbGljeSk7Ci0gIGlmIChzdGF0dXMpCi0gICAgcmV0dXJuIHN0YXR1czsK
LQotICBwb2xpY3kuc3NyYy50eXBlICA9IHNzcmNfYW55X2luYm91bmQ7Ci0gIHN0YXR1cyA9IHNy
dHBfY3JlYXRlKCZzcnRwX3NuZCwgJnBvbGljeSk7Ci0gIGlmIChzdGF0dXMpCi0gICAgcmV0dXJu
IHN0YXR1czsKLQotICAvKiBwcm90ZWN0IGFuZCB1bnByb3RlY3QgdHdvIG1zZydzIHRoYXQgd2ls
bCBjYXVzZSB0aGUgUk9DIHRvIGJlIGVxdWFsIHRvIDEgKi8KLSAgbXNnID0gc3J0cF9jcmVhdGVf
dGVzdF9wYWNrZXQobXNnX2xlbl9vY3RldHMsIHNzcmMpOwotICBpZiAobXNnID09IE5VTEwpCi0g
ICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19hbGxvY19mYWlsOwotICBtc2ctPnNlcSA9IGh0b25z
KDY1NTM1KTsKLQotICBwcm90ZWN0ZWRfbXNnX2xlbl9vY3RldHMgPSBtc2dfbGVuX29jdGV0czsK
LSAgc3RhdHVzID0gc3J0cF9wcm90ZWN0KHNydHBfc25kLCBtc2csICZwcm90ZWN0ZWRfbXNnX2xl
bl9vY3RldHMpOwotICBpZiAoc3RhdHVzKQotICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfZmFp
bDsKLQotICBzdGF0dXMgPSBzcnRwX3VucHJvdGVjdChzcnRwX3JlY3YsIG1zZywgJnByb3RlY3Rl
ZF9tc2dfbGVuX29jdGV0cyk7Ci0gIGlmIChzdGF0dXMpCi0gICAgcmV0dXJuIHN0YXR1czsKLQot
ICBmcmVlKG1zZyk7Ci0KLSAgbXNnID0gc3J0cF9jcmVhdGVfdGVzdF9wYWNrZXQobXNnX2xlbl9v
Y3RldHMsIHNzcmMpOwotICBpZiAobXNnID09IE5VTEwpCi0gICAgcmV0dXJuIHNydHBfZXJyX3N0
YXR1c19hbGxvY19mYWlsOwotICBtc2ctPnNlcSA9IGh0b25zKDEpOwotCi0gIHByb3RlY3RlZF9t
c2dfbGVuX29jdGV0cyA9IG1zZ19sZW5fb2N0ZXRzOwotICBzdGF0dXMgPSBzcnRwX3Byb3RlY3Qo
c3J0cF9zbmQsIG1zZywgJnByb3RlY3RlZF9tc2dfbGVuX29jdGV0cyk7Ci0gIGlmIChzdGF0dXMp
Ci0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19mYWlsOwotCi0gIHN0YXR1cyA9IHNydHBfdW5w
cm90ZWN0KHNydHBfcmVjdiwgbXNnLCAmcHJvdGVjdGVkX21zZ19sZW5fb2N0ZXRzKTsKLSAgaWYg
KHN0YXR1cykKLSAgICByZXR1cm4gc3RhdHVzOwotCi0gIGZyZWUobXNnKTsKLQotICAvKiB1cGRh
dGUgc2VuZCBjdHggd2l0aCBzYW1lIHRlc3Rfa2V5IHQgdmVyaWZ5IHVwZGF0ZSB3b3JrcyovCi0g
IHBvbGljeS5zc3JjLnR5cGUgPSBzc3JjX2FueV9vdXRib3VuZDsKLSAgcG9saWN5LmtleSA9IHRl
c3Rfa2V5OwotICBzdGF0dXMgPSBzcnRwX3VwZGF0ZShzcnRwX3NuZCwgJnBvbGljeSk7Ci0gIGlm
IChzdGF0dXMpCi0gICAgcmV0dXJuIHN0YXR1czsKLQotICBtc2cgPSBzcnRwX2NyZWF0ZV90ZXN0
X3BhY2tldChtc2dfbGVuX29jdGV0cywgc3NyYyk7Ci0gIGlmIChtc2cgPT0gTlVMTCkKLSAgICBy
ZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2FsbG9jX2ZhaWw7Ci0gIG1zZy0+c2VxID0gaHRvbnMoMik7
Ci0KLSAgcHJvdGVjdGVkX21zZ19sZW5fb2N0ZXRzID0gbXNnX2xlbl9vY3RldHM7Ci0gIHN0YXR1
cyA9IHNydHBfcHJvdGVjdChzcnRwX3NuZCwgbXNnLCAmcHJvdGVjdGVkX21zZ19sZW5fb2N0ZXRz
KTsKLSAgaWYgKHN0YXR1cykKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7Ci0KLSAg
c3RhdHVzID0gc3J0cF91bnByb3RlY3Qoc3J0cF9yZWN2LCBtc2csICZwcm90ZWN0ZWRfbXNnX2xl
bl9vY3RldHMpOwotICBpZiAoc3RhdHVzKQotICAgIHJldHVybiBzdGF0dXM7Ci0KLSAgZnJlZSht
c2cpOwotCi0KLSAgLyogdXBkYXRlIHNlbmQgY3R4IHRvIHVzZSB0ZXN0X2FsdF9rZXkgKi8KLSAg
cG9saWN5LnNzcmMudHlwZSA9IHNzcmNfYW55X291dGJvdW5kOwotICBwb2xpY3kua2V5ID0gdGVz
dF9hbHRfa2V5OwotICBzdGF0dXMgPSBzcnRwX3VwZGF0ZShzcnRwX3NuZCwgJnBvbGljeSk7Ci0g
IGlmIChzdGF0dXMpCi0gICAgcmV0dXJuIHN0YXR1czsKLQotICAvKiBjcmVhdGUgYW5kIHByb3Rl
Y3QgbXNnIHdpdGggbmV3IGtleSBhbmQgUk9DIHN0aWxsIGVxdWFsIHRvIDEgKi8KLSAgbXNnID0g
c3J0cF9jcmVhdGVfdGVzdF9wYWNrZXQobXNnX2xlbl9vY3RldHMsIHNzcmMpOwotICBpZiAobXNn
ID09IE5VTEwpCi0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19hbGxvY19mYWlsOwotICBtc2ct
PnNlcSA9IGh0b25zKDMpOwotCi0gIHByb3RlY3RlZF9tc2dfbGVuX29jdGV0cyA9IG1zZ19sZW5f
b2N0ZXRzOwotICBzdGF0dXMgPSBzcnRwX3Byb3RlY3Qoc3J0cF9zbmQsIG1zZywgJnByb3RlY3Rl
ZF9tc2dfbGVuX29jdGV0cyk7Ci0gIGlmIChzdGF0dXMpCi0gICAgcmV0dXJuIHNydHBfZXJyX3N0
YXR1c19mYWlsOwotCi0gIC8qIHZlcmlmeSB0aGF0IHJlY2l2ZSBjdHggd2lsbCBmYWlsIHRvIHVu
cHJvdGVjdCBhcyBpdCBzdGlsbCB1c2VzIHRlc3Rfa2V5ICovCi0gIHN0YXR1cyA9IHNydHBfdW5w
cm90ZWN0KHNydHBfcmVjdiwgbXNnLCAmcHJvdGVjdGVkX21zZ19sZW5fb2N0ZXRzKTsKLSAgaWYg
KHN0YXR1cyA9PSBzcnRwX2Vycl9zdGF0dXNfb2spCi0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1
c19mYWlsOwotCi0gIC8qIGNyZWF0ZSBhIG5ldyByZWN2aWV2ZSBjdHggd2l0aCB0ZXN0X2FsdF9r
ZXkgYnV0IHNpbmNlIGl0IGlzIG5ldyBpdCB3aWxsIGhhdmUgUk9DIGVxdWFsIHRvIDEKLSAgICog
YW5kIHRoZXJlZm9yZSBzaG91bGQgZmFpbCB0byB1bnByb3RlY3RlZCAqLwotICB7Ci0gICAgc3J0
cF90IHNydHBfcmVjdl9yb2NfMDsKLQotICAgIHBvbGljeS5zc3JjLnR5cGUgID0gc3NyY19hbnlf
aW5ib3VuZDsKK3NydHBfZXJyX3N0YXR1c190IHNydHBfdGVzdF91cGRhdGUoKQoreworICAgIHNy
dHBfZXJyX3N0YXR1c190IHN0YXR1czsKKyAgICB1aW50MzJfdCBzc3JjID0gMHgxMjEyMTIxMjsK
KyAgICBpbnQgbXNnX2xlbl9vY3RldHMgPSAzMjsKKyAgICBpbnQgcHJvdGVjdGVkX21zZ19sZW5f
b2N0ZXRzOworICAgIHNydHBfaGRyX3QgKm1zZzsKKyAgICBzcnRwX3Qgc3J0cF9zbmQsIHNydHBf
cmVjdjsKKyAgICBzcnRwX3BvbGljeV90IHBvbGljeTsKKworICAgIG1lbXNldCgmcG9saWN5LCAw
LCBzaXplb2YocG9saWN5KSk7CisgICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9ydHBfZGVmYXVs
dCgmcG9saWN5LnJ0cCk7CisgICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9ydGNwX2RlZmF1bHQo
JnBvbGljeS5ydGNwKTsKKyAgICBwb2xpY3kuZWt0ID0gTlVMTDsKKyAgICBwb2xpY3kud2luZG93
X3NpemUgPSAxMjg7CisgICAgcG9saWN5LmFsbG93X3JlcGVhdF90eCA9IDA7CisgICAgcG9saWN5
Lm5leHQgPSBOVUxMOworICAgIHBvbGljeS5zc3JjLnR5cGUgPSBzc3JjX2FueV9vdXRib3VuZDsK
KyAgICBwb2xpY3kua2V5ID0gdGVzdF9rZXk7CisKKyAgICAvKiBjcmVhdGUgYSBzZW5kIGFuZCBy
ZWNpdmUgY3R4IHdpdGggZGVmdWFsdCBwcm9maWxlIGFuZCB0ZXN0X2tleSAqLworICAgIHN0YXR1
cyA9IHNydHBfY3JlYXRlKCZzcnRwX3JlY3YsICZwb2xpY3kpOworICAgIGlmIChzdGF0dXMpCisg
ICAgICAgIHJldHVybiBzdGF0dXM7CisKKyAgICBwb2xpY3kuc3NyYy50eXBlID0gc3NyY19hbnlf
aW5ib3VuZDsKKyAgICBzdGF0dXMgPSBzcnRwX2NyZWF0ZSgmc3J0cF9zbmQsICZwb2xpY3kpOwor
ICAgIGlmIChzdGF0dXMpCisgICAgICAgIHJldHVybiBzdGF0dXM7CisKKyAgICAvKiBwcm90ZWN0
IGFuZCB1bnByb3RlY3QgdHdvIG1zZydzIHRoYXQgd2lsbCBjYXVzZSB0aGUgUk9DIHRvIGJlIGVx
dWFsIHRvIDEKKyAgICAgKi8KKyAgICBtc2cgPSBzcnRwX2NyZWF0ZV90ZXN0X3BhY2tldChtc2df
bGVuX29jdGV0cywgc3NyYywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmcHJv
dGVjdGVkX21zZ19sZW5fb2N0ZXRzKTsKKyAgICBpZiAobXNnID09IE5VTEwpCisgICAgICAgIHJl
dHVybiBzcnRwX2Vycl9zdGF0dXNfYWxsb2NfZmFpbDsKKyAgICBtc2ctPnNlcSA9IGh0b25zKDY1
NTM1KTsKKworICAgIHN0YXR1cyA9IHNydHBfcHJvdGVjdChzcnRwX3NuZCwgbXNnLCAmcHJvdGVj
dGVkX21zZ19sZW5fb2N0ZXRzKTsKKyAgICBpZiAoc3RhdHVzKQorICAgICAgICByZXR1cm4gc3J0
cF9lcnJfc3RhdHVzX2ZhaWw7CisKKyAgICBzdGF0dXMgPSBzcnRwX3VucHJvdGVjdChzcnRwX3Jl
Y3YsIG1zZywgJnByb3RlY3RlZF9tc2dfbGVuX29jdGV0cyk7CisgICAgaWYgKHN0YXR1cykKKyAg
ICAgICAgcmV0dXJuIHN0YXR1czsKKworICAgIGZyZWUobXNnKTsKKworICAgIG1zZyA9IHNydHBf
Y3JlYXRlX3Rlc3RfcGFja2V0KG1zZ19sZW5fb2N0ZXRzLCBzc3JjLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICZwcm90ZWN0ZWRfbXNnX2xlbl9vY3RldHMpOworICAgIGlmICht
c2cgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19hbGxvY19mYWlsOwor
ICAgIG1zZy0+c2VxID0gaHRvbnMoMSk7CisKKyAgICBzdGF0dXMgPSBzcnRwX3Byb3RlY3Qoc3J0
cF9zbmQsIG1zZywgJnByb3RlY3RlZF9tc2dfbGVuX29jdGV0cyk7CisgICAgaWYgKHN0YXR1cykK
KyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19mYWlsOworCisgICAgc3RhdHVzID0gc3J0
cF91bnByb3RlY3Qoc3J0cF9yZWN2LCBtc2csICZwcm90ZWN0ZWRfbXNnX2xlbl9vY3RldHMpOwor
ICAgIGlmIChzdGF0dXMpCisgICAgICAgIHJldHVybiBzdGF0dXM7CisKKyAgICBmcmVlKG1zZyk7
CisKKyAgICAvKiB1cGRhdGUgc2VuZCBjdHggd2l0aCBzYW1lIHRlc3Rfa2V5IHQgdmVyaWZ5IHVw
ZGF0ZSB3b3JrcyovCisgICAgcG9saWN5LnNzcmMudHlwZSA9IHNzcmNfYW55X291dGJvdW5kOwor
ICAgIHBvbGljeS5rZXkgPSB0ZXN0X2tleTsKKyAgICBzdGF0dXMgPSBzcnRwX3VwZGF0ZShzcnRw
X3NuZCwgJnBvbGljeSk7CisgICAgaWYgKHN0YXR1cykKKyAgICAgICAgcmV0dXJuIHN0YXR1czsK
KworICAgIG1zZyA9IHNydHBfY3JlYXRlX3Rlc3RfcGFja2V0KG1zZ19sZW5fb2N0ZXRzLCBzc3Jj
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZwcm90ZWN0ZWRfbXNnX2xlbl9v
Y3RldHMpOworICAgIGlmIChtc2cgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0
YXR1c19hbGxvY19mYWlsOworICAgIG1zZy0+c2VxID0gaHRvbnMoMik7CisKKyAgICBzdGF0dXMg
PSBzcnRwX3Byb3RlY3Qoc3J0cF9zbmQsIG1zZywgJnByb3RlY3RlZF9tc2dfbGVuX29jdGV0cyk7
CisgICAgaWYgKHN0YXR1cykKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19mYWlsOwor
CisgICAgc3RhdHVzID0gc3J0cF91bnByb3RlY3Qoc3J0cF9yZWN2LCBtc2csICZwcm90ZWN0ZWRf
bXNnX2xlbl9vY3RldHMpOworICAgIGlmIChzdGF0dXMpCisgICAgICAgIHJldHVybiBzdGF0dXM7
CisKKyAgICBmcmVlKG1zZyk7CisKKyAgICAvKiB1cGRhdGUgc2VuZCBjdHggdG8gdXNlIHRlc3Rf
YWx0X2tleSAqLworICAgIHBvbGljeS5zc3JjLnR5cGUgPSBzc3JjX2FueV9vdXRib3VuZDsKICAg
ICBwb2xpY3kua2V5ID0gdGVzdF9hbHRfa2V5OwotICAgIHN0YXR1cyA9IHNydHBfY3JlYXRlKCZz
cnRwX3JlY3Zfcm9jXzAsICZwb2xpY3kpOworICAgIHN0YXR1cyA9IHNydHBfdXBkYXRlKHNydHBf
c25kLCAmcG9saWN5KTsKICAgICBpZiAoc3RhdHVzKQotICAgICAgcmV0dXJuIHN0YXR1czsKKyAg
ICAgICAgcmV0dXJuIHN0YXR1czsKIAotICAgIHN0YXR1cyA9IHNydHBfdW5wcm90ZWN0KHNydHBf
cmVjdl9yb2NfMCwgbXNnLCAmcHJvdGVjdGVkX21zZ19sZW5fb2N0ZXRzKTsKLSAgICBpZiAoc3Rh
dHVzID09IHNydHBfZXJyX3N0YXR1c19vaykKLSAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNf
ZmFpbDsKKyAgICAvKiBjcmVhdGUgYW5kIHByb3RlY3QgbXNnIHdpdGggbmV3IGtleSBhbmQgUk9D
IHN0aWxsIGVxdWFsIHRvIDEgKi8KKyAgICBtc2cgPSBzcnRwX2NyZWF0ZV90ZXN0X3BhY2tldCht
c2dfbGVuX29jdGV0cywgc3NyYywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAm
cHJvdGVjdGVkX21zZ19sZW5fb2N0ZXRzKTsKKyAgICBpZiAobXNnID09IE5VTEwpCisgICAgICAg
IHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYWxsb2NfZmFpbDsKKyAgICBtc2ctPnNlcSA9IGh0b25z
KDMpOwogCi0gICAgc3RhdHVzID0gc3J0cF9kZWFsbG9jKHNydHBfcmVjdl9yb2NfMCk7CisgICAg
c3RhdHVzID0gc3J0cF9wcm90ZWN0KHNydHBfc25kLCBtc2csICZwcm90ZWN0ZWRfbXNnX2xlbl9v
Y3RldHMpOwogICAgIGlmIChzdGF0dXMpCi0gICAgICByZXR1cm4gc3RhdHVzOwotICB9CisgICAg
ICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfZmFpbDsKIAotICAvKiB1cGRhdGUgcmVjaXZlIGN0
eCB0byB1c2UgdGVzdF9hbHRfa2V5ICovCi0gIHBvbGljeS5zc3JjLnR5cGUgPSBzc3JjX2FueV9p
bmJvdW5kOwotICBwb2xpY3kua2V5ID0gdGVzdF9hbHRfa2V5OwotICBzdGF0dXMgPSBzcnRwX3Vw
ZGF0ZShzcnRwX3JlY3YsICZwb2xpY3kpOwotICBpZiAoc3RhdHVzKQotICAgIHJldHVybiBzdGF0
dXM7CisgICAgLyogdmVyaWZ5IHRoYXQgcmVjaXZlIGN0eCB3aWxsIGZhaWwgdG8gdW5wcm90ZWN0
IGFzIGl0IHN0aWxsIHVzZXMgdGVzdF9rZXkKKyAgICAgKi8KKyAgICBzdGF0dXMgPSBzcnRwX3Vu
cHJvdGVjdChzcnRwX3JlY3YsIG1zZywgJnByb3RlY3RlZF9tc2dfbGVuX29jdGV0cyk7CisgICAg
aWYgKHN0YXR1cyA9PSBzcnRwX2Vycl9zdGF0dXNfb2spCisgICAgICAgIHJldHVybiBzcnRwX2Vy
cl9zdGF0dXNfZmFpbDsKKworICAgIC8qIGNyZWF0ZSBhIG5ldyByZWN2aWV2ZSBjdHggd2l0aCB0
ZXN0X2FsdF9rZXkgYnV0IHNpbmNlIGl0IGlzIG5ldyBpdCB3aWxsCisgICAgICogaGF2ZSBST0Mg
ZXF1YWwgdG8gMQorICAgICAqIGFuZCB0aGVyZWZvcmUgc2hvdWxkIGZhaWwgdG8gdW5wcm90ZWN0
ZWQgKi8KKyAgICB7CisgICAgICAgIHNydHBfdCBzcnRwX3JlY3Zfcm9jXzA7CisKKyAgICAgICAg
cG9saWN5LnNzcmMudHlwZSA9IHNzcmNfYW55X2luYm91bmQ7CisgICAgICAgIHBvbGljeS5rZXkg
PSB0ZXN0X2FsdF9rZXk7CisgICAgICAgIHN0YXR1cyA9IHNydHBfY3JlYXRlKCZzcnRwX3JlY3Zf
cm9jXzAsICZwb2xpY3kpOworICAgICAgICBpZiAoc3RhdHVzKQorICAgICAgICAgICAgcmV0dXJu
IHN0YXR1czsKKworICAgICAgICBzdGF0dXMgPQorICAgICAgICAgICAgc3J0cF91bnByb3RlY3Qo
c3J0cF9yZWN2X3JvY18wLCBtc2csICZwcm90ZWN0ZWRfbXNnX2xlbl9vY3RldHMpOworICAgICAg
ICBpZiAoc3RhdHVzID09IHNydHBfZXJyX3N0YXR1c19vaykKKyAgICAgICAgICAgIHJldHVybiBz
cnRwX2Vycl9zdGF0dXNfZmFpbDsKKworICAgICAgICBzdGF0dXMgPSBzcnRwX2RlYWxsb2Moc3J0
cF9yZWN2X3JvY18wKTsKKyAgICAgICAgaWYgKHN0YXR1cykKKyAgICAgICAgICAgIHJldHVybiBz
dGF0dXM7CisgICAgfQorCisgICAgLyogdXBkYXRlIHJlY2l2ZSBjdHggdG8gdXNlIHRlc3RfYWx0
X2tleSAqLworICAgIHBvbGljeS5zc3JjLnR5cGUgPSBzc3JjX2FueV9pbmJvdW5kOworICAgIHBv
bGljeS5rZXkgPSB0ZXN0X2FsdF9rZXk7CisgICAgc3RhdHVzID0gc3J0cF91cGRhdGUoc3J0cF9y
ZWN2LCAmcG9saWN5KTsKKyAgICBpZiAoc3RhdHVzKQorICAgICAgICByZXR1cm4gc3RhdHVzOwog
Ci0gIC8qIHZlcmlmeSB0aGF0IGNhbiBzdGlsbCB1bnByb3RlY3QsIHRoZXJmb3JlIGtleSBpcyB1
cGRhdGVkIGFuZCBST0MgdmFsdWUgaXMgcHJlc2VydmVkICovCi0gIHN0YXR1cyA9IHNydHBfdW5w
cm90ZWN0KHNydHBfcmVjdiwgbXNnLCAmcHJvdGVjdGVkX21zZ19sZW5fb2N0ZXRzKTsKLSAgaWYg
KHN0YXR1cykKLSAgICByZXR1cm4gc3RhdHVzOworICAgIC8qIHZlcmlmeSB0aGF0IGNhbiBzdGls
bCB1bnByb3RlY3QsIHRoZXJmb3JlIGtleSBpcyB1cGRhdGVkIGFuZCBST0MgdmFsdWUgaXMKKyAg
ICAgKiBwcmVzZXJ2ZWQgKi8KKyAgICBzdGF0dXMgPSBzcnRwX3VucHJvdGVjdChzcnRwX3JlY3Ys
IG1zZywgJnByb3RlY3RlZF9tc2dfbGVuX29jdGV0cyk7CisgICAgaWYgKHN0YXR1cykKKyAgICAg
ICAgcmV0dXJuIHN0YXR1czsKIAotICBmcmVlKG1zZyk7CisgICAgZnJlZShtc2cpOwogCi0gIHN0
YXR1cyA9IHNydHBfZGVhbGxvYyhzcnRwX3NuZCk7Ci0gIGlmIChzdGF0dXMpCi0gICAgcmV0dXJu
IHN0YXR1czsKKyAgICBzdGF0dXMgPSBzcnRwX2RlYWxsb2Moc3J0cF9zbmQpOworICAgIGlmIChz
dGF0dXMpCisgICAgICAgIHJldHVybiBzdGF0dXM7CiAKLSAgc3RhdHVzID0gc3J0cF9kZWFsbG9j
KHNydHBfcmVjdik7Ci0gIGlmIChzdGF0dXMpCi0gICAgcmV0dXJuIHN0YXR1czsKKyAgICBzdGF0
dXMgPSBzcnRwX2RlYWxsb2Moc3J0cF9yZWN2KTsKKyAgICBpZiAoc3RhdHVzKQorICAgICAgICBy
ZXR1cm4gc3RhdHVzOwogCi0gIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CisgICAgcmV0dXJu
IHNydHBfZXJyX3N0YXR1c19vazsKIH0KIAotc3J0cF9lcnJfc3RhdHVzX3QKLXNydHBfdGVzdF9z
ZXR1cF9wcm90ZWN0X3RyYWlsZXJfc3RyZWFtcyhzcnRwX3QgKnNydHBfc2VuZCwgc3J0cF90ICpz
cnRwX3NlbmRfbWtpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNy
dHBfdCAqc3J0cF9zZW5kX2Flc19nY20sIHNydHBfdCAqc3J0cF9zZW5kX2Flc19nY21fbWtpKSB7
CitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3Rlc3Rfc2V0dXBfcHJvdGVjdF90cmFpbGVyX3N0cmVh
bXMoCisgICAgc3J0cF90ICpzcnRwX3NlbmQsCisgICAgc3J0cF90ICpzcnRwX3NlbmRfbWtpLAor
ICAgIHNydHBfdCAqc3J0cF9zZW5kX2Flc19nY20sCisgICAgc3J0cF90ICpzcnRwX3NlbmRfYWVz
X2djbV9ta2kpCit7CisgICAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVzOworICAgIHNydHBfcG9s
aWN5X3QgcG9saWN5OworICAgIHNydHBfcG9saWN5X3QgcG9saWN5X21raTsKIAotICBzcnRwX2Vy
cl9zdGF0dXNfdCBzdGF0dXM7Ci0gIHNydHBfcG9saWN5X3QgcG9saWN5OwotICBzcnRwX3BvbGlj
eV90IHBvbGljeV9ta2k7CiAjaWZkZWYgT1BFTlNTTAotICBzcnRwX3BvbGljeV90IHBvbGljeV9h
ZXNfZ2NtOwotICBzcnRwX3BvbGljeV90IHBvbGljeV9hZXNfZ2NtX21raTsKKyAgICBzcnRwX3Bv
bGljeV90IHBvbGljeV9hZXNfZ2NtOworICAgIHNydHBfcG9saWN5X3QgcG9saWN5X2Flc19nY21f
bWtpOwogI2VuZGlmIC8vIE9QRU5TU0wKIAotICBtZW1zZXQoJnBvbGljeSwgMCwgc2l6ZW9mKHBv
bGljeSkpOwotICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X3J0cF9kZWZhdWx0KCZwb2xpY3kucnRw
KTsKLSAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9ydGNwX2RlZmF1bHQoJnBvbGljeS5ydGNwKTsK
LSAgcG9saWN5LmVrdCA9IE5VTEw7Ci0gIHBvbGljeS53aW5kb3dfc2l6ZSA9IDEyODsKLSAgcG9s
aWN5LmFsbG93X3JlcGVhdF90eCA9IDA7Ci0gIHBvbGljeS5uZXh0ID0gTlVMTDsKLSAgcG9saWN5
LnNzcmMudHlwZSAgPSBzc3JjX2FueV9vdXRib3VuZDsKLSAgcG9saWN5LmtleSA9IHRlc3Rfa2V5
OwotCi0gIG1lbXNldCgmcG9saWN5X21raSwgMCwgc2l6ZW9mKHBvbGljeV9ta2kpKTsKLSAgc3J0
cF9jcnlwdG9fcG9saWN5X3NldF9ydHBfZGVmYXVsdCgmcG9saWN5X21raS5ydHApOwotICBzcnRw
X2NyeXB0b19wb2xpY3lfc2V0X3J0Y3BfZGVmYXVsdCgmcG9saWN5X21raS5ydGNwKTsKLSAgcG9s
aWN5X21raS5la3QgPSBOVUxMOwotICBwb2xpY3lfbWtpLndpbmRvd19zaXplID0gMTI4OwotICBw
b2xpY3lfbWtpLmFsbG93X3JlcGVhdF90eCA9IDA7Ci0gIHBvbGljeV9ta2kubmV4dCA9IE5VTEw7
Ci0gIHBvbGljeV9ta2kuc3NyYy50eXBlICA9IHNzcmNfYW55X291dGJvdW5kOwotICBwb2xpY3lf
bWtpLmtleSA9IE5VTEw7Ci0gIHBvbGljeV9ta2kua2V5cyA9IHRlc3Rfa2V5czsKLSAgcG9saWN5
X21raS5udW1fbWFzdGVyX2tleXMgPSAyOworICAgIG1lbXNldCgmcG9saWN5LCAwLCBzaXplb2Yo
cG9saWN5KSk7CisgICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9ydHBfZGVmYXVsdCgmcG9saWN5
LnJ0cCk7CisgICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9ydGNwX2RlZmF1bHQoJnBvbGljeS5y
dGNwKTsKKyAgICBwb2xpY3kuZWt0ID0gTlVMTDsKKyAgICBwb2xpY3kud2luZG93X3NpemUgPSAx
Mjg7CisgICAgcG9saWN5LmFsbG93X3JlcGVhdF90eCA9IDA7CisgICAgcG9saWN5Lm5leHQgPSBO
VUxMOworICAgIHBvbGljeS5zc3JjLnR5cGUgPSBzc3JjX2FueV9vdXRib3VuZDsKKyAgICBwb2xp
Y3kua2V5ID0gdGVzdF9rZXk7CiAKLSNpZmRlZiBPUEVOU1NMCi0gIG1lbXNldCgmcG9saWN5X2Fl
c19nY20sIDAsIHNpemVvZihwb2xpY3lfYWVzX2djbSkpOwotICBzcnRwX2NyeXB0b19wb2xpY3lf
c2V0X2Flc19nY21fMTI4XzE2X2F1dGgoJnBvbGljeV9hZXNfZ2NtLnJ0cCk7Ci0gIHNydHBfY3J5
cHRvX3BvbGljeV9zZXRfYWVzX2djbV8xMjhfMTZfYXV0aCgmcG9saWN5X2Flc19nY20ucnRjcCk7
Ci0gIHBvbGljeV9hZXNfZ2NtLmVrdCA9IE5VTEw7Ci0gIHBvbGljeV9hZXNfZ2NtLndpbmRvd19z
aXplID0gMTI4OwotICBwb2xpY3lfYWVzX2djbS5hbGxvd19yZXBlYXRfdHggPSAwOwotICBwb2xp
Y3lfYWVzX2djbS5uZXh0ID0gTlVMTDsKLSAgcG9saWN5X2Flc19nY20uc3NyYy50eXBlICA9IHNz
cmNfYW55X291dGJvdW5kOwotICBwb2xpY3lfYWVzX2djbS5rZXkgPSB0ZXN0X2tleTsKLQotICBt
ZW1zZXQoJnBvbGljeV9hZXNfZ2NtX21raSwgMCwgc2l6ZW9mKHBvbGljeV9hZXNfZ2NtX21raSkp
OwotICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21fMTI4XzE2X2F1dGgoJnBvbGljeV9h
ZXNfZ2NtX21raS5ydHApOwotICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21fMTI4XzE2
X2F1dGgoJnBvbGljeV9hZXNfZ2NtX21raS5ydGNwKTsKLSAgcG9saWN5X2Flc19nY21fbWtpLmVr
dCA9IE5VTEw7Ci0gIHBvbGljeV9hZXNfZ2NtX21raS53aW5kb3dfc2l6ZSA9IDEyODsKLSAgcG9s
aWN5X2Flc19nY21fbWtpLmFsbG93X3JlcGVhdF90eCA9IDA7Ci0gIHBvbGljeV9hZXNfZ2NtX21r
aS5uZXh0ID0gTlVMTDsKLSAgcG9saWN5X2Flc19nY21fbWtpLnNzcmMudHlwZSAgPSBzc3JjX2Fu
eV9vdXRib3VuZDsKLSAgcG9saWN5X2Flc19nY21fbWtpLmtleSA9IE5VTEw7Ci0gIHBvbGljeV9h
ZXNfZ2NtX21raS5rZXlzID0gdGVzdF9rZXlzOwotICBwb2xpY3lfYWVzX2djbV9ta2kubnVtX21h
c3Rlcl9rZXlzID0gMjsKKyAgICBtZW1zZXQoJnBvbGljeV9ta2ksIDAsIHNpemVvZihwb2xpY3lf
bWtpKSk7CisgICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9ydHBfZGVmYXVsdCgmcG9saWN5X21r
aS5ydHApOworICAgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfcnRjcF9kZWZhdWx0KCZwb2xpY3lf
bWtpLnJ0Y3ApOworICAgIHBvbGljeV9ta2kuZWt0ID0gTlVMTDsKKyAgICBwb2xpY3lfbWtpLndp
bmRvd19zaXplID0gMTI4OworICAgIHBvbGljeV9ta2kuYWxsb3dfcmVwZWF0X3R4ID0gMDsKKyAg
ICBwb2xpY3lfbWtpLm5leHQgPSBOVUxMOworICAgIHBvbGljeV9ta2kuc3NyYy50eXBlID0gc3Ny
Y19hbnlfb3V0Ym91bmQ7CisgICAgcG9saWN5X21raS5rZXkgPSBOVUxMOworICAgIHBvbGljeV9t
a2kua2V5cyA9IHRlc3Rfa2V5czsKKyAgICBwb2xpY3lfbWtpLm51bV9tYXN0ZXJfa2V5cyA9IDI7
CiAKKyNpZmRlZiBPUEVOU1NMCisgICAgbWVtc2V0KCZwb2xpY3lfYWVzX2djbSwgMCwgc2l6ZW9m
KHBvbGljeV9hZXNfZ2NtKSk7CisgICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfZ2NtXzEy
OF8xNl9hdXRoKCZwb2xpY3lfYWVzX2djbS5ydHApOworICAgIHNydHBfY3J5cHRvX3BvbGljeV9z
ZXRfYWVzX2djbV8xMjhfMTZfYXV0aCgmcG9saWN5X2Flc19nY20ucnRjcCk7CisgICAgcG9saWN5
X2Flc19nY20uZWt0ID0gTlVMTDsKKyAgICBwb2xpY3lfYWVzX2djbS53aW5kb3dfc2l6ZSA9IDEy
ODsKKyAgICBwb2xpY3lfYWVzX2djbS5hbGxvd19yZXBlYXRfdHggPSAwOworICAgIHBvbGljeV9h
ZXNfZ2NtLm5leHQgPSBOVUxMOworICAgIHBvbGljeV9hZXNfZ2NtLnNzcmMudHlwZSA9IHNzcmNf
YW55X291dGJvdW5kOworICAgIHBvbGljeV9hZXNfZ2NtLmtleSA9IHRlc3Rfa2V5OworCisgICAg
bWVtc2V0KCZwb2xpY3lfYWVzX2djbV9ta2ksIDAsIHNpemVvZihwb2xpY3lfYWVzX2djbV9ta2kp
KTsKKyAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21fMTI4XzE2X2F1dGgoJnBvbGlj
eV9hZXNfZ2NtX21raS5ydHApOworICAgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2djbV8x
MjhfMTZfYXV0aCgmcG9saWN5X2Flc19nY21fbWtpLnJ0Y3ApOworICAgIHBvbGljeV9hZXNfZ2Nt
X21raS5la3QgPSBOVUxMOworICAgIHBvbGljeV9hZXNfZ2NtX21raS53aW5kb3dfc2l6ZSA9IDEy
ODsKKyAgICBwb2xpY3lfYWVzX2djbV9ta2kuYWxsb3dfcmVwZWF0X3R4ID0gMDsKKyAgICBwb2xp
Y3lfYWVzX2djbV9ta2kubmV4dCA9IE5VTEw7CisgICAgcG9saWN5X2Flc19nY21fbWtpLnNzcmMu
dHlwZSA9IHNzcmNfYW55X291dGJvdW5kOworICAgIHBvbGljeV9hZXNfZ2NtX21raS5rZXkgPSBO
VUxMOworICAgIHBvbGljeV9hZXNfZ2NtX21raS5rZXlzID0gdGVzdF9rZXlzOworICAgIHBvbGlj
eV9hZXNfZ2NtX21raS5udW1fbWFzdGVyX2tleXMgPSAyOwogI2VuZGlmCiAKLSAgLyogY3JlYXRl
IGEgc2VuZCBjdHggd2l0aCBkZWZ1YWx0IHByb2ZpbGUgYW5kIHRlc3Rfa2V5ICovCi0gIHN0YXR1
cyA9IHNydHBfY3JlYXRlKHNydHBfc2VuZCwgJnBvbGljeSk7Ci0gIGlmIChzdGF0dXMpCi0gICAg
cmV0dXJuIHN0YXR1czsKKyAgICAvKiBjcmVhdGUgYSBzZW5kIGN0eCB3aXRoIGRlZnVhbHQgcHJv
ZmlsZSBhbmQgdGVzdF9rZXkgKi8KKyAgICBzdGF0dXMgPSBzcnRwX2NyZWF0ZShzcnRwX3NlbmQs
ICZwb2xpY3kpOworICAgIGlmIChzdGF0dXMpCisgICAgICAgIHJldHVybiBzdGF0dXM7CiAKLSAg
c3RhdHVzID0gc3J0cF9jcmVhdGUoc3J0cF9zZW5kX21raSwgJnBvbGljeV9ta2kpOwotICBpZiAo
c3RhdHVzKQotICAgIHJldHVybiBzdGF0dXM7CisgICAgc3RhdHVzID0gc3J0cF9jcmVhdGUoc3J0
cF9zZW5kX21raSwgJnBvbGljeV9ta2kpOworICAgIGlmIChzdGF0dXMpCisgICAgICAgIHJldHVy
biBzdGF0dXM7CiAKICNpZmRlZiBPUEVOU1NMCi0gIHN0YXR1cyA9IHNydHBfY3JlYXRlKHNydHBf
c2VuZF9hZXNfZ2NtLCAmcG9saWN5X2Flc19nY20pOwotICBpZiAoc3RhdHVzKQotICAgIHJldHVy
biBzdGF0dXM7CisgICAgc3RhdHVzID0gc3J0cF9jcmVhdGUoc3J0cF9zZW5kX2Flc19nY20sICZw
b2xpY3lfYWVzX2djbSk7CisgICAgaWYgKHN0YXR1cykKKyAgICAgICAgcmV0dXJuIHN0YXR1czsK
IAotICBzdGF0dXMgPSBzcnRwX2NyZWF0ZShzcnRwX3NlbmRfYWVzX2djbV9ta2ksICZwb2xpY3lf
YWVzX2djbV9ta2kpOwotICBpZiAoc3RhdHVzKQotICAgIHJldHVybiBzdGF0dXM7Ci0jZW5kaWYg
Ly9PUEVOU1NMCisgICAgc3RhdHVzID0gc3J0cF9jcmVhdGUoc3J0cF9zZW5kX2Flc19nY21fbWtp
LCAmcG9saWN5X2Flc19nY21fbWtpKTsKKyAgICBpZiAoc3RhdHVzKQorICAgICAgICByZXR1cm4g
c3RhdHVzOworI2VuZGlmIC8vIE9QRU5TU0wKIAotICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29r
OworICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAKLXNydHBfZXJyX3N0YXR1c190
Ci1zcnRwX3Rlc3RfcHJvdGVjdF90cmFpbGVyX2xlbmd0aCgpIHsKLQotICBzcnRwX3Qgc3J0cF9z
ZW5kOwotICBzcnRwX3Qgc3J0cF9zZW5kX21raTsKLSAgc3J0cF90IHNydHBfc2VuZF9hZXNfZ2Nt
OwotICBzcnRwX3Qgc3J0cF9zZW5kX2Flc19nY21fbWtpOwotICB1aW50MzJfdCBsZW5ndGggPSAw
OwotICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7CitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3Rl
c3RfcHJvdGVjdF90cmFpbGVyX2xlbmd0aCgpCit7CisgICAgc3J0cF90IHNydHBfc2VuZDsKKyAg
ICBzcnRwX3Qgc3J0cF9zZW5kX21raTsKKyAgICBzcnRwX3Qgc3J0cF9zZW5kX2Flc19nY207Cisg
ICAgc3J0cF90IHNydHBfc2VuZF9hZXNfZ2NtX21raTsKKyAgICB1aW50MzJfdCBsZW5ndGggPSAw
OworICAgIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKIAotICBzcnRwX3Rlc3Rfc2V0dXBfcHJv
dGVjdF90cmFpbGVyX3N0cmVhbXMoJnNydHBfc2VuZCwgJnNydHBfc2VuZF9ta2ksCi0JCQkJCSAg
JnNydHBfc2VuZF9hZXNfZ2NtLCAmc3J0cF9zZW5kX2Flc19nY21fbWtpKTsKKyAgICBzcnRwX3Rl
c3Rfc2V0dXBfcHJvdGVjdF90cmFpbGVyX3N0cmVhbXMoCisgICAgICAgICZzcnRwX3NlbmQsICZz
cnRwX3NlbmRfbWtpLCAmc3J0cF9zZW5kX2Flc19nY20sICZzcnRwX3NlbmRfYWVzX2djbV9ta2kp
OwogCi0gIHN0YXR1cyA9IHNydHBfZ2V0X3Byb3RlY3RfdHJhaWxlcl9sZW5ndGgoc3J0cF9zZW5k
LCAwLCAwLCAmbGVuZ3RoKTsKLSAgaWYgKHN0YXR1cykKLSAgICByZXR1cm4gc3RhdHVzOworICAg
IHN0YXR1cyA9IHNydHBfZ2V0X3Byb3RlY3RfdHJhaWxlcl9sZW5ndGgoc3J0cF9zZW5kLCAwLCAw
LCAmbGVuZ3RoKTsKKyAgICBpZiAoc3RhdHVzKQorICAgICAgICByZXR1cm4gc3RhdHVzOwogCi0g
IC8qICBUQUcgTGVuZ3RoOiAxMCBieXRlcyAqLwotICBpZiAobGVuZ3RoICE9IDEwKQotICAgIHJl
dHVybiBzcnRwX2Vycl9zdGF0dXNfZmFpbDsKKyAgICAvKiAgVEFHIExlbmd0aDogMTAgYnl0ZXMg
Ki8KKyAgICBpZiAobGVuZ3RoICE9IDEwKQorICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVz
X2ZhaWw7CiAKLSAgc3RhdHVzID0gc3J0cF9nZXRfcHJvdGVjdF90cmFpbGVyX2xlbmd0aChzcnRw
X3NlbmRfbWtpLCAxLCAxLCAmbGVuZ3RoKTsKLSAgaWYgKHN0YXR1cykKLSAgICByZXR1cm4gc3Rh
dHVzOworICAgIHN0YXR1cyA9IHNydHBfZ2V0X3Byb3RlY3RfdHJhaWxlcl9sZW5ndGgoc3J0cF9z
ZW5kX21raSwgMSwgMSwgJmxlbmd0aCk7CisgICAgaWYgKHN0YXR1cykKKyAgICAgICAgcmV0dXJu
IHN0YXR1czsKIAotICAvKiAgVEFHIExlbmd0aDogMTAgYnl0ZXMgKyBNS0kgbGVuZ3RoOiA0IGJ5
dGVzKi8KLSAgaWYgKGxlbmd0aCAhPSAxNCkKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2Zh
aWw7CisgICAgLyogIFRBRyBMZW5ndGg6IDEwIGJ5dGVzICsgTUtJIGxlbmd0aDogNCBieXRlcyov
CisgICAgaWYgKGxlbmd0aCAhPSAxNCkKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19m
YWlsOwogCiAjaWZkZWYgT1BFTlNTTAotICBzdGF0dXMgPSBzcnRwX2dldF9wcm90ZWN0X3RyYWls
ZXJfbGVuZ3RoKHNydHBfc2VuZF9hZXNfZ2NtLCAwLCAwLCAmbGVuZ3RoKTsKLSAgaWYgKHN0YXR1
cykKLSAgICByZXR1cm4gc3RhdHVzOworICAgIHN0YXR1cyA9IHNydHBfZ2V0X3Byb3RlY3RfdHJh
aWxlcl9sZW5ndGgoc3J0cF9zZW5kX2Flc19nY20sIDAsIDAsICZsZW5ndGgpOworICAgIGlmIChz
dGF0dXMpCisgICAgICAgIHJldHVybiBzdGF0dXM7CiAKLSAgLyogIFRBRyBMZW5ndGg6IDE2IGJ5
dGVzICovCi0gIGlmIChsZW5ndGggIT0gMTYpCi0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19m
YWlsOworICAgIC8qICBUQUcgTGVuZ3RoOiAxNiBieXRlcyAqLworICAgIGlmIChsZW5ndGggIT0g
MTYpCisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfZmFpbDsKIAorICAgIHN0YXR1cyA9
CisgICAgICAgIHNydHBfZ2V0X3Byb3RlY3RfdHJhaWxlcl9sZW5ndGgoc3J0cF9zZW5kX2Flc19n
Y21fbWtpLCAxLCAxLCAmbGVuZ3RoKTsKKyAgICBpZiAoc3RhdHVzKQorICAgICAgICByZXR1cm4g
c3RhdHVzOwogCi0gIHN0YXR1cyA9IHNydHBfZ2V0X3Byb3RlY3RfdHJhaWxlcl9sZW5ndGgoc3J0
cF9zZW5kX2Flc19nY21fbWtpLCAxLCAxLCAmbGVuZ3RoKTsKLSAgaWYgKHN0YXR1cykKLSAgICBy
ZXR1cm4gc3RhdHVzOworICAgIC8qICBUQUcgTGVuZ3RoOiAxNiBieXRlcyArIE1LSSBsZW5ndGg6
IDQgYnl0ZXMqLworICAgIGlmIChsZW5ndGggIT0gMjApCisgICAgICAgIHJldHVybiBzcnRwX2Vy
cl9zdGF0dXNfZmFpbDsKKyNlbmRpZiAvLyBPUEVOU1NMCiAKLSAgLyogIFRBRyBMZW5ndGg6IDE2
IGJ5dGVzICsgTUtJIGxlbmd0aDogNCBieXRlcyovCi0gIGlmIChsZW5ndGggIT0gMjApCi0gICAg
cmV0dXJuIHNydHBfZXJyX3N0YXR1c19mYWlsOworICAgIHNydHBfZGVhbGxvYyhzcnRwX3NlbmQp
OworICAgIHNydHBfZGVhbGxvYyhzcnRwX3NlbmRfbWtpKTsKKyNpZmRlZiBPUEVOU1NMCisgICAg
c3J0cF9kZWFsbG9jKHNydHBfc2VuZF9hZXNfZ2NtKTsKKyAgICBzcnRwX2RlYWxsb2Moc3J0cF9z
ZW5kX2Flc19nY21fbWtpKTsKKyNlbmRpZgogCi0jZW5kaWYgLy9PUEVOU1NMCi0gIHJldHVybiBz
cnRwX2Vycl9zdGF0dXNfb2s7CisgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0KIAot
c3J0cF9lcnJfc3RhdHVzX3QKLXNydHBfdGVzdF9wcm90ZWN0X3J0Y3BfdHJhaWxlcl9sZW5ndGgo
KSB7Ci0KLSAgc3J0cF90IHNydHBfc2VuZDsKLSAgc3J0cF90IHNydHBfc2VuZF9ta2k7Ci0gIHNy
dHBfdCBzcnRwX3NlbmRfYWVzX2djbTsKLSAgc3J0cF90IHNydHBfc2VuZF9hZXNfZ2NtX21raTsK
LSAgdWludDMyX3QgbGVuZ3RoID0gMDsKLSAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVzOworc3J0
cF9lcnJfc3RhdHVzX3Qgc3J0cF90ZXN0X3Byb3RlY3RfcnRjcF90cmFpbGVyX2xlbmd0aCgpCit7
CisgICAgc3J0cF90IHNydHBfc2VuZDsKKyAgICBzcnRwX3Qgc3J0cF9zZW5kX21raTsKKyAgICBz
cnRwX3Qgc3J0cF9zZW5kX2Flc19nY207CisgICAgc3J0cF90IHNydHBfc2VuZF9hZXNfZ2NtX21r
aTsKKyAgICB1aW50MzJfdCBsZW5ndGggPSAwOworICAgIHNydHBfZXJyX3N0YXR1c190IHN0YXR1
czsKIAotICBzcnRwX3Rlc3Rfc2V0dXBfcHJvdGVjdF90cmFpbGVyX3N0cmVhbXMoJnNydHBfc2Vu
ZCwgJnNydHBfc2VuZF9ta2ksCi0JCQkJCSAgJnNydHBfc2VuZF9hZXNfZ2NtLCAmc3J0cF9zZW5k
X2Flc19nY21fbWtpKTsKKyAgICBzcnRwX3Rlc3Rfc2V0dXBfcHJvdGVjdF90cmFpbGVyX3N0cmVh
bXMoCisgICAgICAgICZzcnRwX3NlbmQsICZzcnRwX3NlbmRfbWtpLCAmc3J0cF9zZW5kX2Flc19n
Y20sICZzcnRwX3NlbmRfYWVzX2djbV9ta2kpOwogCi0gIHN0YXR1cyA9IHNydHBfZ2V0X3Byb3Rl
Y3RfcnRjcF90cmFpbGVyX2xlbmd0aChzcnRwX3NlbmQsIDAsIDAsICZsZW5ndGgpOwotICBpZiAo
c3RhdHVzKQotICAgIHJldHVybiBzdGF0dXM7CisgICAgc3RhdHVzID0gc3J0cF9nZXRfcHJvdGVj
dF9ydGNwX3RyYWlsZXJfbGVuZ3RoKHNydHBfc2VuZCwgMCwgMCwgJmxlbmd0aCk7CisgICAgaWYg
KHN0YXR1cykKKyAgICAgICAgcmV0dXJuIHN0YXR1czsKIAotICAvKiAgVEFHIExlbmd0aDogMTAg
Ynl0ZXMgKyBTUlRDUCBUcmFpbGVyIDQgYnl0ZXMqLwotICBpZiAobGVuZ3RoICE9IDE0KQotICAg
IHJldHVybiBzcnRwX2Vycl9zdGF0dXNfZmFpbDsKKyAgICAvKiAgVEFHIExlbmd0aDogMTAgYnl0
ZXMgKyBTUlRDUCBUcmFpbGVyIDQgYnl0ZXMqLworICAgIGlmIChsZW5ndGggIT0gMTQpCisgICAg
ICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfZmFpbDsKIAotICBzdGF0dXMgPSBzcnRwX2dldF9w
cm90ZWN0X3J0Y3BfdHJhaWxlcl9sZW5ndGgoc3J0cF9zZW5kX21raSwgMSwgMSwgJmxlbmd0aCk7
Ci0gIGlmIChzdGF0dXMpCi0gICAgcmV0dXJuIHN0YXR1czsKKyAgICBzdGF0dXMgPSBzcnRwX2dl
dF9wcm90ZWN0X3J0Y3BfdHJhaWxlcl9sZW5ndGgoc3J0cF9zZW5kX21raSwgMSwgMSwgJmxlbmd0
aCk7CisgICAgaWYgKHN0YXR1cykKKyAgICAgICAgcmV0dXJuIHN0YXR1czsKIAotICAvKiAgVEFH
IExlbmd0aDogMTAgYnl0ZXMgKyBTUlRDUCBUcmFpbGVyIDQgYnl0ZXMgKyBNS0kgNCBieXRlcyov
Ci0gIGlmIChsZW5ndGggIT0gMTgpCi0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19mYWlsOwor
ICAgIC8qICBUQUcgTGVuZ3RoOiAxMCBieXRlcyArIFNSVENQIFRyYWlsZXIgNCBieXRlcyArIE1L
SSA0IGJ5dGVzKi8KKyAgICBpZiAobGVuZ3RoICE9IDE4KQorICAgICAgICByZXR1cm4gc3J0cF9l
cnJfc3RhdHVzX2ZhaWw7CiAKICNpZmRlZiBPUEVOU1NMCi0gIHN0YXR1cyA9IHNydHBfZ2V0X3By
b3RlY3RfcnRjcF90cmFpbGVyX2xlbmd0aChzcnRwX3NlbmRfYWVzX2djbSwgMCwgMCwgJmxlbmd0
aCk7Ci0gIGlmIChzdGF0dXMpCi0gICAgcmV0dXJuIHN0YXR1czsKKyAgICBzdGF0dXMgPQorICAg
ICAgICBzcnRwX2dldF9wcm90ZWN0X3J0Y3BfdHJhaWxlcl9sZW5ndGgoc3J0cF9zZW5kX2Flc19n
Y20sIDAsIDAsICZsZW5ndGgpOworICAgIGlmIChzdGF0dXMpCisgICAgICAgIHJldHVybiBzdGF0
dXM7CiAKLSAgLyogIFRBRyBMZW5ndGg6IDE2IGJ5dGVzICsgU1JUQ1AgVHJhaWxlciA0IGJ5dGVz
Ki8KLSAgaWYgKGxlbmd0aCAhPSAyMCkKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7
CisgICAgLyogIFRBRyBMZW5ndGg6IDE2IGJ5dGVzICsgU1JUQ1AgVHJhaWxlciA0IGJ5dGVzKi8K
KyAgICBpZiAobGVuZ3RoICE9IDIwKQorICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2Zh
aWw7CiAKKyAgICBzdGF0dXMgPSBzcnRwX2dldF9wcm90ZWN0X3J0Y3BfdHJhaWxlcl9sZW5ndGgo
c3J0cF9zZW5kX2Flc19nY21fbWtpLCAxLCAxLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAmbGVuZ3RoKTsKKyAgICBpZiAoc3RhdHVzKQorICAgICAg
ICByZXR1cm4gc3RhdHVzOwogCi0gIHN0YXR1cyA9IHNydHBfZ2V0X3Byb3RlY3RfcnRjcF90cmFp
bGVyX2xlbmd0aChzcnRwX3NlbmRfYWVzX2djbV9ta2ksIDEsIDEsICZsZW5ndGgpOwotICBpZiAo
c3RhdHVzKQotICAgIHJldHVybiBzdGF0dXM7CisgICAgLyogIFRBRyBMZW5ndGg6IDE2IGJ5dGVz
ICsgU1JUQ1AgVHJhaWxlciA0IGJ5dGVzICsgTUtJIDQgYnl0ZXMqLworICAgIGlmIChsZW5ndGgg
IT0gMjQpCisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfZmFpbDsKKyNlbmRpZiAvLyBP
UEVOU1NMCiAKLSAgLyogIFRBRyBMZW5ndGg6IDE2IGJ5dGVzICsgU1JUQ1AgVHJhaWxlciA0IGJ5
dGVzICsgTUtJIDQgYnl0ZXMqLwotICBpZiAobGVuZ3RoICE9IDI0KQotICAgIHJldHVybiBzcnRw
X2Vycl9zdGF0dXNfZmFpbDsKKyAgICBzcnRwX2RlYWxsb2Moc3J0cF9zZW5kKTsKKyAgICBzcnRw
X2RlYWxsb2Moc3J0cF9zZW5kX21raSk7CisjaWZkZWYgT1BFTlNTTAorICAgIHNydHBfZGVhbGxv
YyhzcnRwX3NlbmRfYWVzX2djbSk7CisgICAgc3J0cF9kZWFsbG9jKHNydHBfc2VuZF9hZXNfZ2Nt
X21raSk7CisjZW5kaWYKIAotI2VuZGlmIC8vT1BFTlNTTAotICByZXR1cm4gc3J0cF9lcnJfc3Rh
dHVzX29rOworICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAKLXNydHBfZXJyX3N0
YXR1c190Ci1zcnRwX3Rlc3RfZ2V0X3JvYygpIHsKLSAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVz
OwotICBzcnRwX3BvbGljeV90IHBvbGljeTsKLSAgc3J0cF90IHNlc3Npb247Ci0gIHNydHBfaGRy
X3QgKnBrdDsKLSAgdWludDMyX3QgaTsKLSAgdWludDMyX3Qgcm9jOwotICB1aW50MzJfdCB0czsK
LSAgdWludDE2X3Qgc2VxOwotCi0gIGludCBtc2dfbGVuX29jdGV0cyA9IDMyOwotICBpbnQgcHJv
dGVjdGVkX21zZ19sZW5fb2N0ZXRzOwotCi0gIG1lbXNldCgmcG9saWN5LCAwLCBzaXplb2YocG9s
aWN5KSk7Ci0gIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfcnRwX2RlZmF1bHQoJnBvbGljeS5ydHAp
OwotICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X3J0Y3BfZGVmYXVsdCgmcG9saWN5LnJ0Y3ApOwot
ICBwb2xpY3kuc3NyYy50eXBlICA9IHNzcmNfc3BlY2lmaWM7Ci0gIHBvbGljeS5zc3JjLnZhbHVl
ID0gMHhjYWZlYmFiZTsKLSAgcG9saWN5LmtleSA9IHRlc3Rfa2V5OwotICBwb2xpY3kud2luZG93
X3NpemUgPSAxMjg7Ci0KLSAgLyogQ3JlYXRlIGEgc2VuZGVyIHNlc3Npb24gKi8KLSAgc3RhdHVz
ID0gc3J0cF9jcmVhdGUoJnNlc3Npb24sICZwb2xpY3kpOwotICBpZiAoc3RhdHVzKSB7Ci0gICAg
cmV0dXJuIHN0YXR1czsKLSAgfQotCi0gIC8qIFNldCBzdGFydCBzZXF1ZW5jZSBzbyB3ZSByb2xs
IG92ZXIgKi8KLSAgc2VxID0gNjU1MzU7Ci0gIHRzID0gMDsKLQotICBmb3IgKGkgPSAwOyBpIDwg
MjsgaSsrKSB7Ci0gICAgcGt0ID0gc3J0cF9jcmVhdGVfdGVzdF9wYWNrZXRfZXh0ZW5kZWQobXNn
X2xlbl9vY3RldHMsIHBvbGljeS5zc3JjLnZhbHVlLCBzZXEsIHRzKTsKLSAgICBwcm90ZWN0ZWRf
bXNnX2xlbl9vY3RldHMgPSBtc2dfbGVuX29jdGV0czsKLSAgICBzdGF0dXMgPSBzcnRwX3Byb3Rl
Y3Qoc2Vzc2lvbiwgcGt0LCAmcHJvdGVjdGVkX21zZ19sZW5fb2N0ZXRzKTsKLSAgICBmcmVlKHBr
dCk7CitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3Rlc3RfZ2V0X3JvYygpCit7CisgICAgc3J0cF9l
cnJfc3RhdHVzX3Qgc3RhdHVzOworICAgIHNydHBfcG9saWN5X3QgcG9saWN5OworICAgIHNydHBf
dCBzZXNzaW9uOworICAgIHNydHBfaGRyX3QgKnBrdDsKKyAgICB1aW50MzJfdCBpOworICAgIHVp
bnQzMl90IHJvYzsKKyAgICB1aW50MzJfdCB0czsKKyAgICB1aW50MTZfdCBzZXE7CisKKyAgICBp
bnQgbXNnX2xlbl9vY3RldHMgPSAzMjsKKyAgICBpbnQgcHJvdGVjdGVkX21zZ19sZW5fb2N0ZXRz
OworCisgICAgbWVtc2V0KCZwb2xpY3ksIDAsIHNpemVvZihwb2xpY3kpKTsKKyAgICBzcnRwX2Ny
eXB0b19wb2xpY3lfc2V0X3J0cF9kZWZhdWx0KCZwb2xpY3kucnRwKTsKKyAgICBzcnRwX2NyeXB0
b19wb2xpY3lfc2V0X3J0Y3BfZGVmYXVsdCgmcG9saWN5LnJ0Y3ApOworICAgIHBvbGljeS5zc3Jj
LnR5cGUgPSBzc3JjX3NwZWNpZmljOworICAgIHBvbGljeS5zc3JjLnZhbHVlID0gMHhjYWZlYmFi
ZTsKKyAgICBwb2xpY3kua2V5ID0gdGVzdF9rZXk7CisgICAgcG9saWN5LndpbmRvd19zaXplID0g
MTI4OworCisgICAgLyogQ3JlYXRlIGEgc2VuZGVyIHNlc3Npb24gKi8KKyAgICBzdGF0dXMgPSBz
cnRwX2NyZWF0ZSgmc2Vzc2lvbiwgJnBvbGljeSk7CiAgICAgaWYgKHN0YXR1cykgewotICAgICAg
cmV0dXJuIHN0YXR1czsKKyAgICAgICAgcmV0dXJuIHN0YXR1czsKICAgICB9CiAKLSAgICBzdGF0
dXMgPSBzcnRwX2dldF9zdHJlYW1fcm9jKHNlc3Npb24sIHBvbGljeS5zc3JjLnZhbHVlLCAmcm9j
KTsKKyAgICAvKiBTZXQgc3RhcnQgc2VxdWVuY2Ugc28gd2Ugcm9sbCBvdmVyICovCisgICAgc2Vx
ID0gNjU1MzU7CisgICAgdHMgPSAwOworCisgICAgZm9yIChpID0gMDsgaSA8IDI7IGkrKykgewor
ICAgICAgICBwa3QgPSBzcnRwX2NyZWF0ZV90ZXN0X3BhY2tldF9leHRlbmRlZChtc2dfbGVuX29j
dGV0cywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9s
aWN5LnNzcmMudmFsdWUsIHNlcSwgdHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICZwcm90ZWN0ZWRfbXNnX2xlbl9vY3RldHMpOworICAgICAgICBzdGF0
dXMgPSBzcnRwX3Byb3RlY3Qoc2Vzc2lvbiwgcGt0LCAmcHJvdGVjdGVkX21zZ19sZW5fb2N0ZXRz
KTsKKyAgICAgICAgZnJlZShwa3QpOworICAgICAgICBpZiAoc3RhdHVzKSB7CisgICAgICAgICAg
ICByZXR1cm4gc3RhdHVzOworICAgICAgICB9CisKKyAgICAgICAgc3RhdHVzID0gc3J0cF9nZXRf
c3RyZWFtX3JvYyhzZXNzaW9uLCBwb2xpY3kuc3NyYy52YWx1ZSwgJnJvYyk7CisgICAgICAgIGlm
IChzdGF0dXMpIHsKKyAgICAgICAgICAgIHJldHVybiBzdGF0dXM7CisgICAgICAgIH0KKworICAg
ICAgICBpZiAocm9jICE9IGkpIHsKKyAgICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNf
ZmFpbDsKKyAgICAgICAgfQorCisgICAgICAgIHNlcSsrOworICAgICAgICB0cysrOworICAgIH0K
KworICAgIC8qIENsZWFudXAgKi8KKyAgICBzdGF0dXMgPSBzcnRwX2RlYWxsb2Moc2Vzc2lvbik7
CisgICAgaWYgKHN0YXR1cykgeworICAgICAgICByZXR1cm4gc3RhdHVzOworICAgIH0KKworICAg
IHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7Cit9CisKK3N0YXRpYyBzcnRwX2Vycl9zdGF0dXNf
dCB0ZXN0X3NldF9yZWNlaXZlcl9yb2ModWludDMyX3QgcGFja2V0cywKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3Qgcm9jX3RvX3NldCkKK3sK
KyAgICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7CisKKyAgICBzcnRwX3BvbGljeV90IHNlbmRl
cl9wb2xpY3k7CisgICAgc3J0cF90IHNlbmRlcl9zZXNzaW9uOworCisgICAgc3J0cF9wb2xpY3lf
dCByZWNlaXZlcl9wb2xpY3k7CisgICAgc3J0cF90IHJlY2VpdmVyX3Nlc3Npb247CisKKyAgICBz
cnRwX2hkcl90ICpwa3RfMTsKKyAgICB1bnNpZ25lZCBjaGFyICpyZWN2X3BrdF8xOworCisgICAg
c3J0cF9oZHJfdCAqcGt0XzI7CisgICAgdW5zaWduZWQgY2hhciAqcmVjdl9wa3RfMjsKKworICAg
IHVpbnQzMl90IGk7CisgICAgdWludDMyX3QgdHM7CisgICAgdWludDE2X3Qgc2VxOworCisgICAg
aW50IG1zZ19sZW5fb2N0ZXRzID0gMzI7CisgICAgaW50IHByb3RlY3RlZF9tc2dfbGVuX29jdGV0
c18xOworICAgIGludCBwcm90ZWN0ZWRfbXNnX2xlbl9vY3RldHNfMjsKKworICAgIC8qIENyZWF0
ZSBzZW5kZXIgKi8KKyAgICBtZW1zZXQoJnNlbmRlcl9wb2xpY3ksIDAsIHNpemVvZihzZW5kZXJf
cG9saWN5KSk7CisgICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9ydHBfZGVmYXVsdCgmc2VuZGVy
X3BvbGljeS5ydHApOworICAgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfcnRjcF9kZWZhdWx0KCZz
ZW5kZXJfcG9saWN5LnJ0Y3ApOworICAgIHNlbmRlcl9wb2xpY3kuc3NyYy50eXBlID0gc3NyY19z
cGVjaWZpYzsKKyAgICBzZW5kZXJfcG9saWN5LnNzcmMudmFsdWUgPSAweGNhZmViYWJlOworICAg
IHNlbmRlcl9wb2xpY3kua2V5ID0gdGVzdF9rZXk7CisgICAgc2VuZGVyX3BvbGljeS53aW5kb3df
c2l6ZSA9IDEyODsKKworICAgIHN0YXR1cyA9IHNydHBfY3JlYXRlKCZzZW5kZXJfc2Vzc2lvbiwg
JnNlbmRlcl9wb2xpY3kpOwogICAgIGlmIChzdGF0dXMpIHsKLSAgICAgIHJldHVybiBzdGF0dXM7
CisgICAgICAgIHJldHVybiBzdGF0dXM7CiAgICAgfQogCi0gICAgaWYgKHJvYyAhPSBpKSB7Ci0g
ICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7CisgICAgLyogQ3JlYXRlIGFuZCBwcm90
ZWN0IHBhY2tldHMgKi8KKyAgICBzZXEgPSAwOworICAgIHRzID0gMDsKKyAgICBmb3IgKGkgPSAw
OyBpIDwgcGFja2V0czsgaSsrKSB7CisgICAgICAgIHNydHBfaGRyX3QgKnRtcF9wa3Q7CisgICAg
ICAgIGludCB0bXBfbGVuOworCisgICAgICAgIHRtcF9wa3QgPSBzcnRwX2NyZWF0ZV90ZXN0X3Bh
Y2tldF9leHRlbmRlZCgKKyAgICAgICAgICAgIG1zZ19sZW5fb2N0ZXRzLCBzZW5kZXJfcG9saWN5
LnNzcmMudmFsdWUsIHNlcSwgdHMsICZ0bXBfbGVuKTsKKyAgICAgICAgc3RhdHVzID0gc3J0cF9w
cm90ZWN0KHNlbmRlcl9zZXNzaW9uLCB0bXBfcGt0LCAmdG1wX2xlbik7CisgICAgICAgIGZyZWUo
dG1wX3BrdCk7CisgICAgICAgIGlmIChzdGF0dXMpIHsKKyAgICAgICAgICAgIHJldHVybiBzdGF0
dXM7CisgICAgICAgIH0KKyAgICAgICAgc2VxKys7CisgICAgICAgIHRzKys7CiAgICAgfQogCisg
ICAgLyogQ3JlYXRlIHRoZSBmaXJzdCBwYWNrZXQgdG8gZGVjcnlwdCBhbmQgdGVzdCBmb3IgUk9D
IGNoYW5nZSAqLworICAgIHBrdF8xID0gc3J0cF9jcmVhdGVfdGVzdF9wYWNrZXRfZXh0ZW5kZWQo
bXNnX2xlbl9vY3RldHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBzZW5kZXJfcG9saWN5LnNzcmMudmFsdWUsIHNlcSwgdHMsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmcHJvdGVjdGVkX21zZ19sZW5fb2N0ZXRzXzEp
OworICAgIHN0YXR1cyA9IHNydHBfcHJvdGVjdChzZW5kZXJfc2Vzc2lvbiwgcGt0XzEsICZwcm90
ZWN0ZWRfbXNnX2xlbl9vY3RldHNfMSk7CisgICAgaWYgKHN0YXR1cykgeworICAgICAgICByZXR1
cm4gc3RhdHVzOworICAgIH0KKworICAgIC8qIENyZWF0ZSB0aGUgc2Vjb25kIHBhY2tldCB0byBk
ZWNyeXB0IGFuZCB0ZXN0IGZvciBST0MgY2hhbmdlICovCiAgICAgc2VxKys7CiAgICAgdHMrKzsK
LSAgfQorICAgIHBrdF8yID0gc3J0cF9jcmVhdGVfdGVzdF9wYWNrZXRfZXh0ZW5kZWQobXNnX2xl
bl9vY3RldHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBz
ZW5kZXJfcG9saWN5LnNzcmMudmFsdWUsIHNlcSwgdHMsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAmcHJvdGVjdGVkX21zZ19sZW5fb2N0ZXRzXzIpOworICAg
IHN0YXR1cyA9IHNydHBfcHJvdGVjdChzZW5kZXJfc2Vzc2lvbiwgcGt0XzIsICZwcm90ZWN0ZWRf
bXNnX2xlbl9vY3RldHNfMik7CisgICAgaWYgKHN0YXR1cykgeworICAgICAgICByZXR1cm4gc3Rh
dHVzOworICAgIH0KIAotICAvKiBDbGVhbnVwICovCi0gIHN0YXR1cyA9IHNydHBfZGVhbGxvYyhz
ZXNzaW9uKTsKLSAgaWYgKHN0YXR1cykgewotICAgIHJldHVybiBzdGF0dXM7Ci0gIH0KKyAgICAv
KiBDcmVhdGUgdGhlIHJlY2VpdmVyICovCisgICAgbWVtc2V0KCZyZWNlaXZlcl9wb2xpY3ksIDAs
IHNpemVvZihyZWNlaXZlcl9wb2xpY3kpKTsKKyAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X3J0
cF9kZWZhdWx0KCZyZWNlaXZlcl9wb2xpY3kucnRwKTsKKyAgICBzcnRwX2NyeXB0b19wb2xpY3lf
c2V0X3J0Y3BfZGVmYXVsdCgmcmVjZWl2ZXJfcG9saWN5LnJ0Y3ApOworICAgIHJlY2VpdmVyX3Bv
bGljeS5zc3JjLnR5cGUgPSBzc3JjX3NwZWNpZmljOworICAgIHJlY2VpdmVyX3BvbGljeS5zc3Jj
LnZhbHVlID0gc2VuZGVyX3BvbGljeS5zc3JjLnZhbHVlOworICAgIHJlY2VpdmVyX3BvbGljeS5r
ZXkgPSB0ZXN0X2tleTsKKyAgICByZWNlaXZlcl9wb2xpY3kud2luZG93X3NpemUgPSAxMjg7CisK
KyAgICBzdGF0dXMgPSBzcnRwX2NyZWF0ZSgmcmVjZWl2ZXJfc2Vzc2lvbiwgJnJlY2VpdmVyX3Bv
bGljeSk7CisgICAgaWYgKHN0YXR1cykgeworICAgICAgICByZXR1cm4gc3RhdHVzOworICAgIH0K
KworICAgIC8qIE1ha2UgYSBjb3B5IG9mIHRoZSBmaXJzdCBzZW50IHByb3RlY3RlZCBwYWNrZXQg
Ki8KKyAgICByZWN2X3BrdF8xID0gbWFsbG9jKHByb3RlY3RlZF9tc2dfbGVuX29jdGV0c18xKTsK
KyAgICBpZiAocmVjdl9wa3RfMSA9PSBOVUxMKSB7CisgICAgICAgIHJldHVybiBzcnRwX2Vycl9z
dGF0dXNfZmFpbDsKKyAgICB9CisgICAgbWVtY3B5KHJlY3ZfcGt0XzEsIHBrdF8xLCBwcm90ZWN0
ZWRfbXNnX2xlbl9vY3RldHNfMSk7CisKKyAgICAvKiBNYWtlIGEgY29weSBvZiB0aGUgc2Vjb25k
IHNlbnQgcHJvdGVjdGVkIHBhY2tldCAqLworICAgIHJlY3ZfcGt0XzIgPSBtYWxsb2MocHJvdGVj
dGVkX21zZ19sZW5fb2N0ZXRzXzIpOworICAgIGlmIChyZWN2X3BrdF8yID09IE5VTEwpIHsKKyAg
ICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19mYWlsOworICAgIH0KKyAgICBtZW1jcHkocmVj
dl9wa3RfMiwgcGt0XzIsIHByb3RlY3RlZF9tc2dfbGVuX29jdGV0c18yKTsKKworICAgIC8qIFNl
dCB0aGUgUk9DIHRvIHRoZSB3YW50ZWQgdmFsdWUgKi8KKyAgICBzdGF0dXMgPSBzcnRwX3NldF9z
dHJlYW1fcm9jKHJlY2VpdmVyX3Nlc3Npb24sIHJlY2VpdmVyX3BvbGljeS5zc3JjLnZhbHVlLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcm9jX3RvX3NldCk7CisgICAgaWYgKHN0
YXR1cykgeworICAgICAgICByZXR1cm4gc3RhdHVzOworICAgIH0KIAotICByZXR1cm4gc3J0cF9l
cnJfc3RhdHVzX29rOworICAgIC8qIFVucHJvdGVjdCB0aGUgZmlyc3QgcGFja2V0ICovCisgICAg
c3RhdHVzID0gc3J0cF91bnByb3RlY3QocmVjZWl2ZXJfc2Vzc2lvbiwgcmVjdl9wa3RfMSwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAmcHJvdGVjdGVkX21zZ19sZW5fb2N0ZXRzXzEpOwor
ICAgIGlmIChzdGF0dXMpIHsKKyAgICAgICAgcmV0dXJuIHN0YXR1czsKKyAgICB9CisKKyAgICAv
KiBVbnByb3RlY3QgdGhlIHNlY29uZCBwYWNrZXQgKi8KKyAgICBzdGF0dXMgPSBzcnRwX3VucHJv
dGVjdChyZWNlaXZlcl9zZXNzaW9uLCByZWN2X3BrdF8yLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICZwcm90ZWN0ZWRfbXNnX2xlbl9vY3RldHNfMik7CisgICAgaWYgKHN0YXR1cykgewor
ICAgICAgICByZXR1cm4gc3RhdHVzOworICAgIH0KKworICAgIC8qIENsZWFudXAgKi8KKyAgICBz
dGF0dXMgPSBzcnRwX2RlYWxsb2Moc2VuZGVyX3Nlc3Npb24pOworICAgIGlmIChzdGF0dXMpIHsK
KyAgICAgICAgcmV0dXJuIHN0YXR1czsKKyAgICB9CisKKyAgICBzdGF0dXMgPSBzcnRwX2RlYWxs
b2MocmVjZWl2ZXJfc2Vzc2lvbik7CisgICAgaWYgKHN0YXR1cykgeworICAgICAgICByZXR1cm4g
c3RhdHVzOworICAgIH0KKworICAgIGZyZWUocGt0XzEpOworICAgIGZyZWUocmVjdl9wa3RfMSk7
CisgICAgZnJlZShwa3RfMik7CisgICAgZnJlZShyZWN2X3BrdF8yKTsKKworICAgIHJldHVybiBz
cnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAKLXN0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdAotdGVzdF9z
ZXRfcmVjZWl2ZXJfcm9jKHVpbnQzMl90IHBhY2tldHMsIHVpbnQzMl90IHJvY190b19zZXQpCitz
dGF0aWMgc3J0cF9lcnJfc3RhdHVzX3QgdGVzdF9zZXRfc2VuZGVyX3JvYyh1aW50MTZfdCBzZXEs
IHVpbnQzMl90IHJvY190b19zZXQpCiB7Ci0gIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKKyAg
ICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7CisKKyAgICBzcnRwX3BvbGljeV90IHNlbmRlcl9w
b2xpY3k7CisgICAgc3J0cF90IHNlbmRlcl9zZXNzaW9uOworCisgICAgc3J0cF9wb2xpY3lfdCBy
ZWNlaXZlcl9wb2xpY3k7CisgICAgc3J0cF90IHJlY2VpdmVyX3Nlc3Npb247CiAKLSAgc3J0cF9w
b2xpY3lfdCBzZW5kZXJfcG9saWN5OwotICBzcnRwX3Qgc2VuZGVyX3Nlc3Npb247CisgICAgc3J0
cF9oZHJfdCAqcGt0OworICAgIHVuc2lnbmVkIGNoYXIgKnJlY3ZfcGt0OworCisgICAgdWludDMy
X3QgdHM7CisKKyAgICBpbnQgbXNnX2xlbl9vY3RldHMgPSAzMjsKKyAgICBpbnQgcHJvdGVjdGVk
X21zZ19sZW5fb2N0ZXRzOworCisgICAgLyogQ3JlYXRlIHNlbmRlciAqLworICAgIG1lbXNldCgm
c2VuZGVyX3BvbGljeSwgMCwgc2l6ZW9mKHNlbmRlcl9wb2xpY3kpKTsKKyAgICBzcnRwX2NyeXB0
b19wb2xpY3lfc2V0X3J0cF9kZWZhdWx0KCZzZW5kZXJfcG9saWN5LnJ0cCk7CisgICAgc3J0cF9j
cnlwdG9fcG9saWN5X3NldF9ydGNwX2RlZmF1bHQoJnNlbmRlcl9wb2xpY3kucnRjcCk7CisgICAg
c2VuZGVyX3BvbGljeS5zc3JjLnR5cGUgPSBzc3JjX3NwZWNpZmljOworICAgIHNlbmRlcl9wb2xp
Y3kuc3NyYy52YWx1ZSA9IDB4Y2FmZWJhYmU7CisgICAgc2VuZGVyX3BvbGljeS5rZXkgPSB0ZXN0
X2tleTsKKyAgICBzZW5kZXJfcG9saWN5LndpbmRvd19zaXplID0gMTI4OworCisgICAgc3RhdHVz
ID0gc3J0cF9jcmVhdGUoJnNlbmRlcl9zZXNzaW9uLCAmc2VuZGVyX3BvbGljeSk7CisgICAgaWYg
KHN0YXR1cykgeworICAgICAgICByZXR1cm4gc3RhdHVzOworICAgIH0KIAotICBzcnRwX3BvbGlj
eV90IHJlY2VpdmVyX3BvbGljeTsKLSAgc3J0cF90IHJlY2VpdmVyX3Nlc3Npb247CisgICAgLyog
U2V0IHRoZSBST0MgYmVmb3JlIGVuY3J5cHRpbmcgdGhlIGZpcnN0IHBhY2tldCAqLworICAgIHN0
YXR1cyA9IHNydHBfc2V0X3N0cmVhbV9yb2Moc2VuZGVyX3Nlc3Npb24sIHNlbmRlcl9wb2xpY3ku
c3NyYy52YWx1ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvY190b19zZXQp
OworICAgIGlmIChzdGF0dXMgIT0gc3J0cF9lcnJfc3RhdHVzX29rKSB7CisgICAgICAgIHJldHVy
biBzdGF0dXM7CisgICAgfQogCi0gIHNydHBfaGRyX3QgKnBrdF8xOwotICB1bnNpZ25lZCBjaGFy
ICpyZWN2X3BrdF8xOworICAgIC8qIENyZWF0ZSB0aGUgcGFja2V0IHRvIGRlY3J5cHQgKi8KKyAg
ICB0cyA9IDA7CisgICAgcGt0ID0gc3J0cF9jcmVhdGVfdGVzdF9wYWNrZXRfZXh0ZW5kZWQobXNn
X2xlbl9vY3RldHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
c2VuZGVyX3BvbGljeS5zc3JjLnZhbHVlLCBzZXEsIHRzLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICZwcm90ZWN0ZWRfbXNnX2xlbl9vY3RldHMpOworICAgIHN0
YXR1cyA9IHNydHBfcHJvdGVjdChzZW5kZXJfc2Vzc2lvbiwgcGt0LCAmcHJvdGVjdGVkX21zZ19s
ZW5fb2N0ZXRzKTsKKyAgICBpZiAoc3RhdHVzKSB7CisgICAgICAgIHJldHVybiBzdGF0dXM7Cisg
ICAgfQogCi0gIHNydHBfaGRyX3QgKnBrdF8yOwotICB1bnNpZ25lZCBjaGFyICpyZWN2X3BrdF8y
OworICAgIC8qIENyZWF0ZSB0aGUgcmVjZWl2ZXIgKi8KKyAgICBtZW1zZXQoJnJlY2VpdmVyX3Bv
bGljeSwgMCwgc2l6ZW9mKHJlY2VpdmVyX3BvbGljeSkpOworICAgIHNydHBfY3J5cHRvX3BvbGlj
eV9zZXRfcnRwX2RlZmF1bHQoJnJlY2VpdmVyX3BvbGljeS5ydHApOworICAgIHNydHBfY3J5cHRv
X3BvbGljeV9zZXRfcnRjcF9kZWZhdWx0KCZyZWNlaXZlcl9wb2xpY3kucnRjcCk7CisgICAgcmVj
ZWl2ZXJfcG9saWN5LnNzcmMudHlwZSA9IHNzcmNfc3BlY2lmaWM7CisgICAgcmVjZWl2ZXJfcG9s
aWN5LnNzcmMudmFsdWUgPSBzZW5kZXJfcG9saWN5LnNzcmMudmFsdWU7CisgICAgcmVjZWl2ZXJf
cG9saWN5LmtleSA9IHRlc3Rfa2V5OworICAgIHJlY2VpdmVyX3BvbGljeS53aW5kb3dfc2l6ZSA9
IDEyODsKIAotICB1aW50MzJfdCBpOwotICB1aW50MzJfdCB0czsKLSAgdWludDE2X3Qgc2VxOwor
ICAgIHN0YXR1cyA9IHNydHBfY3JlYXRlKCZyZWNlaXZlcl9zZXNzaW9uLCAmcmVjZWl2ZXJfcG9s
aWN5KTsKKyAgICBpZiAoc3RhdHVzKSB7CisgICAgICAgIHJldHVybiBzdGF0dXM7CisgICAgfQog
Ci0gIGludCBtc2dfbGVuX29jdGV0cyA9IDMyOwotICBpbnQgcHJvdGVjdGVkX21zZ19sZW5fb2N0
ZXRzXzE7Ci0gIGludCBwcm90ZWN0ZWRfbXNnX2xlbl9vY3RldHNfMjsKKyAgICAvKiBNYWtlIGEg
Y29weSBvZiB0aGUgc2VudCBwcm90ZWN0ZWQgcGFja2V0ICovCisgICAgcmVjdl9wa3QgPSBtYWxs
b2MocHJvdGVjdGVkX21zZ19sZW5fb2N0ZXRzKTsKKyAgICBpZiAocmVjdl9wa3QgPT0gTlVMTCkg
eworICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7CisgICAgfQorICAgIG1lbWNw
eShyZWN2X3BrdCwgcGt0LCBwcm90ZWN0ZWRfbXNnX2xlbl9vY3RldHMpOwogCi0gIC8qIENyZWF0
ZSBzZW5kZXIgKi8KLSAgbWVtc2V0KCZzZW5kZXJfcG9saWN5LCAwLCBzaXplb2Yoc2VuZGVyX3Bv
bGljeSkpOwotICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X3J0cF9kZWZhdWx0KCZzZW5kZXJfcG9s
aWN5LnJ0cCk7Ci0gIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfcnRjcF9kZWZhdWx0KCZzZW5kZXJf
cG9saWN5LnJ0Y3ApOwotICBzZW5kZXJfcG9saWN5LnNzcmMudHlwZSAgPSBzc3JjX3NwZWNpZmlj
OwotICBzZW5kZXJfcG9saWN5LnNzcmMudmFsdWUgPSAweGNhZmViYWJlOwotICBzZW5kZXJfcG9s
aWN5LmtleSA9IHRlc3Rfa2V5OwotICBzZW5kZXJfcG9saWN5LndpbmRvd19zaXplID0gMTI4Owor
ICAgIC8qIFNldCB0aGUgUk9DIHRvIHRoZSB3YW50ZWQgdmFsdWUgKi8KKyAgICBzdGF0dXMgPSBz
cnRwX3NldF9zdHJlYW1fcm9jKHJlY2VpdmVyX3Nlc3Npb24sIHJlY2VpdmVyX3BvbGljeS5zc3Jj
LnZhbHVlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcm9jX3RvX3NldCk7Cisg
ICAgaWYgKHN0YXR1cykgeworICAgICAgICByZXR1cm4gc3RhdHVzOworICAgIH0KIAotICBzdGF0
dXMgPSBzcnRwX2NyZWF0ZSgmc2VuZGVyX3Nlc3Npb24sICZzZW5kZXJfcG9saWN5KTsKLSAgaWYg
KHN0YXR1cykgewotICAgIHJldHVybiBzdGF0dXM7Ci0gIH0KKyAgICBzdGF0dXMgPQorICAgICAg
ICBzcnRwX3VucHJvdGVjdChyZWNlaXZlcl9zZXNzaW9uLCByZWN2X3BrdCwgJnByb3RlY3RlZF9t
c2dfbGVuX29jdGV0cyk7CisgICAgaWYgKHN0YXR1cykgeworICAgICAgICByZXR1cm4gc3RhdHVz
OworICAgIH0KIAotICAvKiBDcmVhdGUgYW5kIHByb3RlY3QgcGFja2V0cyAqLwotICBzZXEgPSAw
OwotICB0cyA9IDA7Ci0gIGZvciAoaSA9IDA7IGkgPCBwYWNrZXRzOyBpKyspIHsKLSAgICBzcnRw
X2hkcl90ICp0bXBfcGt0OwotICAgIGludCB0bXBfbGVuOworICAgIC8qIENsZWFudXAgKi8KKyAg
ICBzdGF0dXMgPSBzcnRwX2RlYWxsb2Moc2VuZGVyX3Nlc3Npb24pOworICAgIGlmIChzdGF0dXMp
IHsKKyAgICAgICAgcmV0dXJuIHN0YXR1czsKKyAgICB9CiAKLSAgICB0bXBfcGt0ID0gc3J0cF9j
cmVhdGVfdGVzdF9wYWNrZXRfZXh0ZW5kZWQobXNnX2xlbl9vY3RldHMsIHNlbmRlcl9wb2xpY3ku
c3NyYy52YWx1ZSwgc2VxLCB0cyk7Ci0gICAgdG1wX2xlbiA9IG1zZ19sZW5fb2N0ZXRzOwotICAg
IHN0YXR1cyA9IHNydHBfcHJvdGVjdChzZW5kZXJfc2Vzc2lvbiwgdG1wX3BrdCwgJnRtcF9sZW4p
OwotICAgIGZyZWUodG1wX3BrdCk7CisgICAgc3RhdHVzID0gc3J0cF9kZWFsbG9jKHJlY2VpdmVy
X3Nlc3Npb24pOwogICAgIGlmIChzdGF0dXMpIHsKLSAgICAgIHJldHVybiBzdGF0dXM7CisgICAg
ICAgIHJldHVybiBzdGF0dXM7CiAgICAgfQotICAgIHNlcSsrOwotICAgIHRzKys7Ci0gIH0KLQot
ICAvKiBDcmVhdGUgdGhlIGZpcnN0IHBhY2tldCB0byBkZWNyeXB0IGFuZCB0ZXN0IGZvciBST0Mg
Y2hhbmdlICovCi0gIHBrdF8xID0gc3J0cF9jcmVhdGVfdGVzdF9wYWNrZXRfZXh0ZW5kZWQobXNn
X2xlbl9vY3RldHMsIHNlbmRlcl9wb2xpY3kuc3NyYy52YWx1ZSwgc2VxLCB0cyk7Ci0gIHByb3Rl
Y3RlZF9tc2dfbGVuX29jdGV0c18xID0gbXNnX2xlbl9vY3RldHM7Ci0gIHN0YXR1cyA9IHNydHBf
cHJvdGVjdChzZW5kZXJfc2Vzc2lvbiwgcGt0XzEsICZwcm90ZWN0ZWRfbXNnX2xlbl9vY3RldHNf
MSk7Ci0gIGlmIChzdGF0dXMpIHsKLSAgICByZXR1cm4gc3RhdHVzOwotICB9Ci0KLSAgLyogQ3Jl
YXRlIHRoZSBzZWNvbmQgcGFja2V0IHRvIGRlY3J5cHQgYW5kIHRlc3QgZm9yIFJPQyBjaGFuZ2Ug
Ki8KLSAgc2VxKys7Ci0gIHRzKys7Ci0gIHBrdF8yID0gc3J0cF9jcmVhdGVfdGVzdF9wYWNrZXRf
ZXh0ZW5kZWQobXNnX2xlbl9vY3RldHMsIHNlbmRlcl9wb2xpY3kuc3NyYy52YWx1ZSwgc2VxLCB0
cyk7Ci0gIHByb3RlY3RlZF9tc2dfbGVuX29jdGV0c18yID0gbXNnX2xlbl9vY3RldHM7Ci0gIHN0
YXR1cyA9IHNydHBfcHJvdGVjdChzZW5kZXJfc2Vzc2lvbiwgcGt0XzIsICZwcm90ZWN0ZWRfbXNn
X2xlbl9vY3RldHNfMik7Ci0gIGlmIChzdGF0dXMpIHsKLSAgICByZXR1cm4gc3RhdHVzOwotICB9
Ci0KLSAgLyogQ3JlYXRlIHRoZSByZWNlaXZlciAqLwotICBtZW1zZXQoJnJlY2VpdmVyX3BvbGlj
eSwgMCwgc2l6ZW9mKHJlY2VpdmVyX3BvbGljeSkpOwotICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0
X3J0cF9kZWZhdWx0KCZyZWNlaXZlcl9wb2xpY3kucnRwKTsKLSAgc3J0cF9jcnlwdG9fcG9saWN5
X3NldF9ydGNwX2RlZmF1bHQoJnJlY2VpdmVyX3BvbGljeS5ydGNwKTsKLSAgcmVjZWl2ZXJfcG9s
aWN5LnNzcmMudHlwZSAgPSBzc3JjX3NwZWNpZmljOwotICByZWNlaXZlcl9wb2xpY3kuc3NyYy52
YWx1ZSA9IHNlbmRlcl9wb2xpY3kuc3NyYy52YWx1ZTsKLSAgcmVjZWl2ZXJfcG9saWN5LmtleSA9
IHRlc3Rfa2V5OwotICByZWNlaXZlcl9wb2xpY3kud2luZG93X3NpemUgPSAxMjg7Ci0KLSAgc3Rh
dHVzID0gc3J0cF9jcmVhdGUoJnJlY2VpdmVyX3Nlc3Npb24sICZyZWNlaXZlcl9wb2xpY3kpOwot
ICBpZiAoc3RhdHVzKSB7Ci0gICAgcmV0dXJuIHN0YXR1czsKLSAgfQotCi0gIC8qIE1ha2UgYSBj
b3B5IG9mIHRoZSBmaXJzdCBzZW50IHByb3RlY3RlZCBwYWNrZXQgKi8KLSAgcmVjdl9wa3RfMSA9
IG1hbGxvYyhwcm90ZWN0ZWRfbXNnX2xlbl9vY3RldHNfMSk7Ci0gIGlmIChyZWN2X3BrdF8xID09
IE5VTEwpIHsKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7Ci0gIH0KLSAgbWVtY3B5
KHJlY3ZfcGt0XzEsIHBrdF8xLCBwcm90ZWN0ZWRfbXNnX2xlbl9vY3RldHNfMSk7Ci0KLSAgLyog
TWFrZSBhIGNvcHkgb2YgdGhlIHNlY29uZCBzZW50IHByb3RlY3RlZCBwYWNrZXQgKi8KLSAgcmVj
dl9wa3RfMiA9IG1hbGxvYyhwcm90ZWN0ZWRfbXNnX2xlbl9vY3RldHNfMik7Ci0gIGlmIChyZWN2
X3BrdF8yID09IE5VTEwpIHsKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7Ci0gIH0K
LSAgbWVtY3B5KHJlY3ZfcGt0XzIsIHBrdF8yLCBwcm90ZWN0ZWRfbXNnX2xlbl9vY3RldHNfMik7
Ci0KLSAgLyogU2V0IHRoZSBST0MgdG8gdGhlIHdhbnRlZCB2YWx1ZSAqLwotICBzdGF0dXMgPSBz
cnRwX3NldF9zdHJlYW1fcm9jKHJlY2VpdmVyX3Nlc3Npb24sIHJlY2VpdmVyX3BvbGljeS5zc3Jj
LnZhbHVlLCByb2NfdG9fc2V0KTsKLSAgaWYgKHN0YXR1cykgewotICAgIHJldHVybiBzdGF0dXM7
Ci0gIH0KLQotICAvKiBVbnByb3RlY3QgdGhlIGZpcnN0IHBhY2tldCAqLwotICBzdGF0dXMgPSBz
cnRwX3VucHJvdGVjdChyZWNlaXZlcl9zZXNzaW9uLCByZWN2X3BrdF8xLCAmcHJvdGVjdGVkX21z
Z19sZW5fb2N0ZXRzXzEpOwotICBpZiAoc3RhdHVzKSB7Ci0gICAgcmV0dXJuIHN0YXR1czsKLSAg
fQotCi0gIC8qIFVucHJvdGVjdCB0aGUgc2Vjb25kIHBhY2tldCAqLwotICBzdGF0dXMgPSBzcnRw
X3VucHJvdGVjdChyZWNlaXZlcl9zZXNzaW9uLCByZWN2X3BrdF8yLCAmcHJvdGVjdGVkX21zZ19s
ZW5fb2N0ZXRzXzIpOwotICBpZiAoc3RhdHVzKSB7Ci0gICAgcmV0dXJuIHN0YXR1czsKLSAgfQot
Ci0gIC8qIENsZWFudXAgKi8KLSAgc3RhdHVzID0gc3J0cF9kZWFsbG9jKHNlbmRlcl9zZXNzaW9u
KTsKLSAgaWYgKHN0YXR1cykgewotICAgIHJldHVybiBzdGF0dXM7Ci0gIH0KLQotICBzdGF0dXMg
PSBzcnRwX2RlYWxsb2MocmVjZWl2ZXJfc2Vzc2lvbik7Ci0gIGlmIChzdGF0dXMpIHsKLSAgICBy
ZXR1cm4gc3RhdHVzOwotICB9Ci0KLSAgZnJlZShwa3RfMSk7Ci0gIGZyZWUocmVjdl9wa3RfMSk7
Ci0gIGZyZWUocGt0XzIpOwotICBmcmVlKHJlY3ZfcGt0XzIpOwotCi0gIHJldHVybiBzcnRwX2Vy
cl9zdGF0dXNfb2s7CisKKyAgICBmcmVlKHBrdCk7CisgICAgZnJlZShyZWN2X3BrdCk7CisKKyAg
ICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQogCi1zdGF0aWMgc3J0cF9lcnJfc3RhdHVz
X3QKLXRlc3Rfc2V0X3NlbmRlcl9yb2ModWludDE2X3Qgc2VxLCB1aW50MzJfdCByb2NfdG9fc2V0
KQorc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF90ZXN0X3NldF9yZWNlaXZlcl9yb2MoKQogewotICBz
cnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7Ci0KLSAgc3J0cF9wb2xpY3lfdCBzZW5kZXJfcG9saWN5
OwotICBzcnRwX3Qgc2VuZGVyX3Nlc3Npb247Ci0KLSAgc3J0cF9wb2xpY3lfdCByZWNlaXZlcl9w
b2xpY3k7Ci0gIHNydHBfdCByZWNlaXZlcl9zZXNzaW9uOwotCi0gIHNydHBfaGRyX3QgKnBrdDsK
LSAgdW5zaWduZWQgY2hhciAqcmVjdl9wa3Q7Ci0KLSAgdWludDMyX3QgdHM7Ci0KLSAgaW50IG1z
Z19sZW5fb2N0ZXRzID0gMzI7Ci0gIGludCBwcm90ZWN0ZWRfbXNnX2xlbl9vY3RldHM7Ci0KLSAg
LyogQ3JlYXRlIHNlbmRlciAqLwotICBtZW1zZXQoJnNlbmRlcl9wb2xpY3ksIDAsIHNpemVvZihz
ZW5kZXJfcG9saWN5KSk7Ci0gIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfcnRwX2RlZmF1bHQoJnNl
bmRlcl9wb2xpY3kucnRwKTsKLSAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9ydGNwX2RlZmF1bHQo
JnNlbmRlcl9wb2xpY3kucnRjcCk7Ci0gIHNlbmRlcl9wb2xpY3kuc3NyYy50eXBlICA9IHNzcmNf
c3BlY2lmaWM7Ci0gIHNlbmRlcl9wb2xpY3kuc3NyYy52YWx1ZSA9IDB4Y2FmZWJhYmU7Ci0gIHNl
bmRlcl9wb2xpY3kua2V5ID0gdGVzdF9rZXk7Ci0gIHNlbmRlcl9wb2xpY3kud2luZG93X3NpemUg
PSAxMjg7Ci0KLSAgc3RhdHVzID0gc3J0cF9jcmVhdGUoJnNlbmRlcl9zZXNzaW9uLCAmc2VuZGVy
X3BvbGljeSk7Ci0gIGlmIChzdGF0dXMpIHsKLSAgICByZXR1cm4gc3RhdHVzOwotICB9Ci0KLSAg
LyogU2V0IHRoZSBST0MgYmVmb3JlIGVuY3J5cHRpbmcgdGhlIGZpcnN0IHBhY2tldCAqLwotICBz
dGF0dXMgPSBzcnRwX3NldF9zdHJlYW1fcm9jKHNlbmRlcl9zZXNzaW9uLCBzZW5kZXJfcG9saWN5
LnNzcmMudmFsdWUsIHJvY190b19zZXQpOwotICBpZiAoc3RhdHVzICE9IHNydHBfZXJyX3N0YXR1
c19vaykgewotICAgIHJldHVybiBzdGF0dXM7Ci0gIH0KLQotICAvKiBDcmVhdGUgdGhlIHBhY2tl
dCB0byBkZWNyeXB0ICovCi0gIHRzID0gMDsKLSAgcGt0ID0gc3J0cF9jcmVhdGVfdGVzdF9wYWNr
ZXRfZXh0ZW5kZWQobXNnX2xlbl9vY3RldHMsIHNlbmRlcl9wb2xpY3kuc3NyYy52YWx1ZSwgc2Vx
LCB0cyk7Ci0gIHByb3RlY3RlZF9tc2dfbGVuX29jdGV0cyA9IG1zZ19sZW5fb2N0ZXRzOwotICBz
dGF0dXMgPSBzcnRwX3Byb3RlY3Qoc2VuZGVyX3Nlc3Npb24sIHBrdCwgJnByb3RlY3RlZF9tc2df
bGVuX29jdGV0cyk7Ci0gIGlmIChzdGF0dXMpIHsKLSAgICByZXR1cm4gc3RhdHVzOwotICB9Ci0K
LSAgLyogQ3JlYXRlIHRoZSByZWNlaXZlciAqLwotICBtZW1zZXQoJnJlY2VpdmVyX3BvbGljeSwg
MCwgc2l6ZW9mKHJlY2VpdmVyX3BvbGljeSkpOwotICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X3J0
cF9kZWZhdWx0KCZyZWNlaXZlcl9wb2xpY3kucnRwKTsKLSAgc3J0cF9jcnlwdG9fcG9saWN5X3Nl
dF9ydGNwX2RlZmF1bHQoJnJlY2VpdmVyX3BvbGljeS5ydGNwKTsKLSAgcmVjZWl2ZXJfcG9saWN5
LnNzcmMudHlwZSAgPSBzc3JjX3NwZWNpZmljOwotICByZWNlaXZlcl9wb2xpY3kuc3NyYy52YWx1
ZSA9IHNlbmRlcl9wb2xpY3kuc3NyYy52YWx1ZTsKLSAgcmVjZWl2ZXJfcG9saWN5LmtleSA9IHRl
c3Rfa2V5OwotICByZWNlaXZlcl9wb2xpY3kud2luZG93X3NpemUgPSAxMjg7Ci0KLSAgc3RhdHVz
ID0gc3J0cF9jcmVhdGUoJnJlY2VpdmVyX3Nlc3Npb24sICZyZWNlaXZlcl9wb2xpY3kpOwotICBp
ZiAoc3RhdHVzKSB7Ci0gICAgcmV0dXJuIHN0YXR1czsKLSAgfQotCi0gIC8qIE1ha2UgYSBjb3B5
IG9mIHRoZSBzZW50IHByb3RlY3RlZCBwYWNrZXQgKi8KLSAgcmVjdl9wa3QgPSBtYWxsb2MocHJv
dGVjdGVkX21zZ19sZW5fb2N0ZXRzKTsKLSAgaWYgKHJlY3ZfcGt0ID09IE5VTEwpIHsKLSAgICBy
ZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7Ci0gIH0KLSAgbWVtY3B5KHJlY3ZfcGt0LCBwa3Qs
IHByb3RlY3RlZF9tc2dfbGVuX29jdGV0cyk7Ci0KLSAgLyogU2V0IHRoZSBST0MgdG8gdGhlIHdh
bnRlZCB2YWx1ZSAqLwotICBzdGF0dXMgPSBzcnRwX3NldF9zdHJlYW1fcm9jKHJlY2VpdmVyX3Nl
c3Npb24sIHJlY2VpdmVyX3BvbGljeS5zc3JjLnZhbHVlLCByb2NfdG9fc2V0KTsKLSAgaWYgKHN0
YXR1cykgewotICAgIHJldHVybiBzdGF0dXM7Ci0gIH0KLQotICBzdGF0dXMgPSBzcnRwX3VucHJv
dGVjdChyZWNlaXZlcl9zZXNzaW9uLCByZWN2X3BrdCwgJnByb3RlY3RlZF9tc2dfbGVuX29jdGV0
cyk7Ci0gIGlmIChzdGF0dXMpIHsKLSAgICByZXR1cm4gc3RhdHVzOwotICB9Ci0KLSAgLyogQ2xl
YW51cCAqLwotICBzdGF0dXMgPSBzcnRwX2RlYWxsb2Moc2VuZGVyX3Nlc3Npb24pOwotICBpZiAo
c3RhdHVzKSB7Ci0gICAgcmV0dXJuIHN0YXR1czsKLSAgfQotCi0gIHN0YXR1cyA9IHNydHBfZGVh
bGxvYyhyZWNlaXZlcl9zZXNzaW9uKTsKLSAgaWYgKHN0YXR1cykgewotICAgIHJldHVybiBzdGF0
dXM7Ci0gIH0KLQotICBmcmVlKHBrdCk7Ci0gIGZyZWUocmVjdl9wa3QpOwotCi0gIHJldHVybiBz
cnRwX2Vycl9zdGF0dXNfb2s7Ci19CisgICAgaW50IHBhY2tldHM7CisgICAgdWludDMyX3Qgcm9j
OworICAgIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKKworICAgIC8qIEZpcnN0IHRlc3QgZG9l
cyBub3Qgcm9sbG92ZXIgKi8KKyAgICBwYWNrZXRzID0gMTsKKyAgICByb2MgPSAwOworCisgICAg
c3RhdHVzID0gdGVzdF9zZXRfcmVjZWl2ZXJfcm9jKHBhY2tldHMgLSAxLCByb2MpOworICAgIGlm
IChzdGF0dXMpIHsKKyAgICAgICAgcmV0dXJuIHN0YXR1czsKKyAgICB9CisKKyAgICBzdGF0dXMg
PSB0ZXN0X3NldF9yZWNlaXZlcl9yb2MocGFja2V0cywgcm9jKTsKKyAgICBpZiAoc3RhdHVzKSB7
CisgICAgICAgIHJldHVybiBzdGF0dXM7CisgICAgfQorCisgICAgc3RhdHVzID0gdGVzdF9zZXRf
cmVjZWl2ZXJfcm9jKHBhY2tldHMgKyAxLCByb2MpOworICAgIGlmIChzdGF0dXMpIHsKKyAgICAg
ICAgcmV0dXJuIHN0YXR1czsKKyAgICB9CisKKyAgICBzdGF0dXMgPSB0ZXN0X3NldF9yZWNlaXZl
cl9yb2MocGFja2V0cyArIDYwMDAwLCByb2MpOworICAgIGlmIChzdGF0dXMpIHsKKyAgICAgICAg
cmV0dXJuIHN0YXR1czsKKyAgICB9CisKKyAgICAvKiBTZWNvbmQgdGVzdCBzaG91bGQgcm9sbG92
ZXIgKi8KKyAgICBwYWNrZXRzID0gNjU1MzU7CisgICAgcm9jID0gMDsKKworICAgIHN0YXR1cyA9
IHRlc3Rfc2V0X3JlY2VpdmVyX3JvYyhwYWNrZXRzIC0gMSwgcm9jKTsKKyAgICBpZiAoc3RhdHVz
KSB7CisgICAgICAgIHJldHVybiBzdGF0dXM7CisgICAgfQorCisgICAgc3RhdHVzID0gdGVzdF9z
ZXRfcmVjZWl2ZXJfcm9jKHBhY2tldHMsIHJvYyk7CisgICAgaWYgKHN0YXR1cykgeworICAgICAg
ICByZXR1cm4gc3RhdHVzOworICAgIH0KKworICAgIC8qIE5vdyB0aGUgcm9sbG92ZXIgY291bnRl
ciBzaG91bGQgYmUgMSAqLworICAgIHJvYyA9IDE7CisgICAgc3RhdHVzID0gdGVzdF9zZXRfcmVj
ZWl2ZXJfcm9jKHBhY2tldHMgKyAxLCByb2MpOworICAgIGlmIChzdGF0dXMpIHsKKyAgICAgICAg
cmV0dXJuIHN0YXR1czsKKyAgICB9CisKKyAgICBzdGF0dXMgPSB0ZXN0X3NldF9yZWNlaXZlcl9y
b2MocGFja2V0cyArIDYwMDAwLCByb2MpOworICAgIGlmIChzdGF0dXMpIHsKKyAgICAgICAgcmV0
dXJuIHN0YXR1czsKKyAgICB9CiAKLXNydHBfZXJyX3N0YXR1c190Ci1zcnRwX3Rlc3Rfc2V0X3Jl
Y2VpdmVyX3JvYygpIHsKLSAgaW50IHBhY2tldHM7Ci0gIHVpbnQzMl90IHJvYzsKLSAgc3J0cF9l
cnJfc3RhdHVzX3Qgc3RhdHVzOwotCi0gIC8qIEZpcnN0IHRlc3QgZG9lcyBub3Qgcm9sbG92ZXIg
Ki8KLSAgcGFja2V0cyA9IDE7Ci0gIHJvYyA9IDA7Ci0KLSAgc3RhdHVzID0gdGVzdF9zZXRfcmVj
ZWl2ZXJfcm9jKHBhY2tldHMgLSAxLCByb2MpOwotICBpZiAoc3RhdHVzKSB7Ci0gICAgcmV0dXJu
IHN0YXR1czsKLSAgfQotCi0gIHN0YXR1cyA9IHRlc3Rfc2V0X3JlY2VpdmVyX3JvYyhwYWNrZXRz
LCByb2MpOwotICBpZiAoc3RhdHVzKSB7Ci0gICAgcmV0dXJuIHN0YXR1czsKLSAgfQotCi0gIHN0
YXR1cyA9IHRlc3Rfc2V0X3JlY2VpdmVyX3JvYyhwYWNrZXRzICsgMSwgcm9jKTsKLSAgaWYgKHN0
YXR1cykgewotICAgIHJldHVybiBzdGF0dXM7Ci0gIH0KLQotICBzdGF0dXMgPSB0ZXN0X3NldF9y
ZWNlaXZlcl9yb2MocGFja2V0cyArIDYwMDAwLCByb2MpOwotICBpZiAoc3RhdHVzKSB7Ci0gICAg
cmV0dXJuIHN0YXR1czsKLSAgfQotCi0gIC8qIFNlY29uZCB0ZXN0IHNob3VsZCByb2xsb3ZlciAq
LwotICBwYWNrZXRzID0gNjU1MzU7Ci0gIHJvYyA9IDA7Ci0KLSAgc3RhdHVzID0gdGVzdF9zZXRf
cmVjZWl2ZXJfcm9jKHBhY2tldHMgLSAxLCByb2MpOwotICBpZiAoc3RhdHVzKSB7Ci0gICAgcmV0
dXJuIHN0YXR1czsKLSAgfQotCi0gIHN0YXR1cyA9IHRlc3Rfc2V0X3JlY2VpdmVyX3JvYyhwYWNr
ZXRzLCByb2MpOwotICBpZiAoc3RhdHVzKSB7Ci0gICAgcmV0dXJuIHN0YXR1czsKLSAgfQotCi0g
IC8qIE5vdyB0aGUgcm9sbG92ZXIgY291bnRlciBzaG91bGQgYmUgMSAqLwotICByb2MgPSAxOwot
ICBzdGF0dXMgPSB0ZXN0X3NldF9yZWNlaXZlcl9yb2MocGFja2V0cyArIDEsIHJvYyk7Ci0gIGlm
IChzdGF0dXMpIHsKLSAgICByZXR1cm4gc3RhdHVzOwotICB9Ci0KLSAgc3RhdHVzID0gdGVzdF9z
ZXRfcmVjZWl2ZXJfcm9jKHBhY2tldHMgKyA2MDAwMCwgcm9jKTsKLSAgaWYgKHN0YXR1cykgewot
ICAgIHJldHVybiBzdGF0dXM7Ci0gIH0KLQotICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwor
ICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAKLXNydHBfZXJyX3N0YXR1c190Ci1z
cnRwX3Rlc3Rfc2V0X3NlbmRlcl9yb2MoKSB7Ci0gIHVpbnQzMl90IHJvYzsKLSAgdWludDE2X3Qg
c2VxOwotICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7Ci0KLSAgc2VxID0gNDMyMTA7Ci0gIHJv
YyA9IDA7Ci0gIHN0YXR1cyA9IHRlc3Rfc2V0X3NlbmRlcl9yb2Moc2VxLCByb2MpOwotICBpZiAo
c3RhdHVzKSB7Ci0gICAgcmV0dXJuIHN0YXR1czsKLSAgfQotCi0gIHJvYyA9IDY1NTM1OwotICBz
dGF0dXMgPSB0ZXN0X3NldF9zZW5kZXJfcm9jKHNlcSwgcm9jKTsKLSAgaWYgKHN0YXR1cykgewot
ICAgIHJldHVybiBzdGF0dXM7Ci0gIH0KLQotICByb2MgPSAweGZmZmY7Ci0gIHN0YXR1cyA9IHRl
c3Rfc2V0X3NlbmRlcl9yb2Moc2VxLCByb2MpOwotICBpZiAoc3RhdHVzKSB7Ci0gICAgcmV0dXJu
IHN0YXR1czsKLSAgfQotCi0gIHJvYyA9IDB4ZmZmZjAwOwotICBzdGF0dXMgPSB0ZXN0X3NldF9z
ZW5kZXJfcm9jKHNlcSwgcm9jKTsKLSAgaWYgKHN0YXR1cykgewotICAgIHJldHVybiBzdGF0dXM7
Ci0gIH0KLQotICByb2MgPSAweGZmZmZmZmYwOwotICBzdGF0dXMgPSB0ZXN0X3NldF9zZW5kZXJf
cm9jKHNlcSwgcm9jKTsKLSAgaWYgKHN0YXR1cykgewotICAgIHJldHVybiBzdGF0dXM7Ci0gIH0K
LQotICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF90
ZXN0X3NldF9zZW5kZXJfcm9jKCkKK3sKKyAgICB1aW50MzJfdCByb2M7CisgICAgdWludDE2X3Qg
c2VxOworICAgIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKKworICAgIHNlcSA9IDQzMjEwOwor
ICAgIHJvYyA9IDA7CisgICAgc3RhdHVzID0gdGVzdF9zZXRfc2VuZGVyX3JvYyhzZXEsIHJvYyk7
CisgICAgaWYgKHN0YXR1cykgeworICAgICAgICByZXR1cm4gc3RhdHVzOworICAgIH0KKworICAg
IHJvYyA9IDY1NTM1OworICAgIHN0YXR1cyA9IHRlc3Rfc2V0X3NlbmRlcl9yb2Moc2VxLCByb2Mp
OworICAgIGlmIChzdGF0dXMpIHsKKyAgICAgICAgcmV0dXJuIHN0YXR1czsKKyAgICB9CisKKyAg
ICByb2MgPSAweGZmZmY7CisgICAgc3RhdHVzID0gdGVzdF9zZXRfc2VuZGVyX3JvYyhzZXEsIHJv
Yyk7CisgICAgaWYgKHN0YXR1cykgeworICAgICAgICByZXR1cm4gc3RhdHVzOworICAgIH0KKwor
ICAgIHJvYyA9IDB4ZmZmZjAwOworICAgIHN0YXR1cyA9IHRlc3Rfc2V0X3NlbmRlcl9yb2Moc2Vx
LCByb2MpOworICAgIGlmIChzdGF0dXMpIHsKKyAgICAgICAgcmV0dXJuIHN0YXR1czsKKyAgICB9
CisKKyAgICByb2MgPSAweGZmZmZmZmYwOworICAgIHN0YXR1cyA9IHRlc3Rfc2V0X3NlbmRlcl9y
b2Moc2VxLCByb2MpOworICAgIGlmIChzdGF0dXMpIHsKKyAgICAgICAgcmV0dXJuIHN0YXR1czsK
KyAgICB9CisKKyAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQogCiAvKgogICogc3J0
cCBwb2xpY3kgZGVmaW5pdGlvbnMgLSB0aGVzZSBkZWZpbml0aW9ucyBhcmUgdXNlZCBhYm92ZQog
ICovCiAKKy8vIGNsYW5nLWZvcm1hdCBvZmYKIHVuc2lnbmVkIGNoYXIgdGVzdF9rZXlbNDZdID0g
ewogICAgIDB4ZTEsIDB4ZjksIDB4N2EsIDB4MGQsIDB4M2UsIDB4MDEsIDB4OGIsIDB4ZTAsCiAg
ICAgMHhkNiwgMHg0ZiwgMHhhMywgMHgyYywgMHgwNiwgMHhkZSwgMHg0MSwgMHgzOSwKQEAgLTM0
MzEsMjQxICszNDA5LDI1MyBAQCB1bnNpZ25lZCBjaGFyIHRlc3RfbWtpX2lkW1RFU1RfTUtJX0lE
X1NJWkVdID0gewogdW5zaWduZWQgY2hhciB0ZXN0X21raV9pZF8yW1RFU1RfTUtJX0lEX1NJWkVd
ID0gewogICAgIDB4ZjMsIDB4YTEsIDB4NDYsIDB4NzEKIH07CisvLyBjbGFuZy1mb3JtYXQgb24K
IAogY29uc3Qgc3J0cF9wb2xpY3lfdCBkZWZhdWx0X3BvbGljeSA9IHsKLSAgICB7IHNzcmNfYW55
X291dGJvdW5kLCAwIH0sICAvKiBTU1JDICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAg
ICB7ICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBTUlRQIHBvbGljeSAgICAgICAgICAgICAg
ICAgICAgKi8KLSAgICAgICAgU1JUUF9BRVNfSUNNXzEyOCwgICAgICAgICAgIC8qIGNpcGhlciB0
eXBlICAgICAgICAgICAgICAgICAqLworICAgIHsgc3NyY19hbnlfb3V0Ym91bmQsIDAgfSwgLyog
U1NSQyAqLworICAgIHsKKyAgICAgICAgLyogU1JUUCBwb2xpY3kgKi8KKyAgICAgICAgU1JUUF9B
RVNfSUNNXzEyOCwgICAgICAgICAgICAgICAvKiBjaXBoZXIgdHlwZSAgICAgICAgICAgICAgICAg
Ki8KICAgICAgICAgU1JUUF9BRVNfSUNNXzEyOF9LRVlfTEVOX1dTQUxULCAvKiBjaXBoZXIga2V5
IGxlbmd0aCBpbiBvY3RldHMgKi8KLSAgICAgICAgU1JUUF9ITUFDX1NIQTEsICAgICAgICAgICAg
IC8qIGF1dGhlbnRpY2F0aW9uIGZ1bmMgdHlwZSAgICAqLwotICAgICAgICAxNiwgICAgICAgICAg
ICAgICAgICAgIC8qIGF1dGgga2V5IGxlbmd0aCBpbiBvY3RldHMgICAqLwotICAgICAgICAxMCwg
ICAgICAgICAgICAgICAgICAgIC8qIGF1dGggdGFnIGxlbmd0aCBpbiBvY3RldHMgICAqLwotICAg
ICAgICBzZWNfc2Vydl9jb25mX2FuZF9hdXRoIC8qIHNlY3VyaXR5IHNlcnZpY2VzIGZsYWcgICAg
ICAqLworICAgICAgICBTUlRQX0hNQUNfU0hBMSwgICAgICAgICAgICAgICAgIC8qIGF1dGhlbnRp
Y2F0aW9uIGZ1bmMgdHlwZSAgICAqLworICAgICAgICAxNiwgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIC8qIGF1dGgga2V5IGxlbmd0aCBpbiBvY3RldHMgICAqLworICAgICAgICAxMCwgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIGF1dGggdGFnIGxlbmd0aCBpbiBvY3RldHMgICAq
LworICAgICAgICBzZWNfc2Vydl9jb25mX2FuZF9hdXRoICAgICAgICAgIC8qIHNlY3VyaXR5IHNl
cnZpY2VzIGZsYWcgICAgICAqLwogICAgIH0sCi0gICAgeyAgICAgICAgICAgICAgICAgICAgICAg
ICAgLyogU1JUQ1AgcG9saWN5ICAgICAgICAgICAgICAgICAgICovCi0gICAgICAgIFNSVFBfQUVT
X0lDTV8xMjgsICAgICAgICAgICAvKiBjaXBoZXIgdHlwZSAgICAgICAgICAgICAgICAgKi8KKyAg
ICB7CisgICAgICAgIC8qIFNSVENQIHBvbGljeSAqLworICAgICAgICBTUlRQX0FFU19JQ01fMTI4
LCAgICAgICAgICAgICAgIC8qIGNpcGhlciB0eXBlICAgICAgICAgICAgICAgICAqLwogICAgICAg
ICBTUlRQX0FFU19JQ01fMTI4X0tFWV9MRU5fV1NBTFQsIC8qIGNpcGhlciBrZXkgbGVuZ3RoIGlu
IG9jdGV0cyAqLwotICAgICAgICBTUlRQX0hNQUNfU0hBMSwgICAgICAgICAgICAgLyogYXV0aGVu
dGljYXRpb24gZnVuYyB0eXBlICAgICovCi0gICAgICAgIDE2LCAgICAgICAgICAgICAgICAgICAg
LyogYXV0aCBrZXkgbGVuZ3RoIGluIG9jdGV0cyAgICovCi0gICAgICAgIDEwLCAgICAgICAgICAg
ICAgICAgICAgLyogYXV0aCB0YWcgbGVuZ3RoIGluIG9jdGV0cyAgICovCi0gICAgICAgIHNlY19z
ZXJ2X2NvbmZfYW5kX2F1dGggLyogc2VjdXJpdHkgc2VydmljZXMgZmxhZyAgICAgICovCisgICAg
ICAgIFNSVFBfSE1BQ19TSEExLCAgICAgICAgICAgICAgICAgLyogYXV0aGVudGljYXRpb24gZnVu
YyB0eXBlICAgICovCisgICAgICAgIDE2LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyog
YXV0aCBrZXkgbGVuZ3RoIGluIG9jdGV0cyAgICovCisgICAgICAgIDEwLCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyogYXV0aCB0YWcgbGVuZ3RoIGluIG9jdGV0cyAgICovCisgICAgICAg
IHNlY19zZXJ2X2NvbmZfYW5kX2F1dGggICAgICAgICAgLyogc2VjdXJpdHkgc2VydmljZXMgZmxh
ZyAgICAgICovCiAgICAgfSwKICAgICBOVUxMLAogICAgIChzcnRwX21hc3Rlcl9rZXlfdCAqKil0
ZXN0X2tleXMsCi0gICAgMiwgICAgICAgICAvKiBpbmRpY2F0ZXMgdGhlIG51bWJlciBvZiBNYXN0
ZXIga2V5cyAqLwotICAgIE5VTEwsICAgICAgLyogaW5kaWNhdGVzIHRoYXQgRUtUIGlzIG5vdCBp
biB1c2UgKi8KLSAgICAxMjgsICAgICAgIC8qIHJlcGxheSB3aW5kb3cgc2l6ZSAqLwotICAgIDAs
ICAgICAgICAgLyogcmV0cmFuc21pc3Npb24gbm90IGFsbG93ZWQgKi8KLSAgICBOVUxMLCAgICAg
IC8qIG5vIGVuY3J5cHRlZCBleHRlbnNpb24gaGVhZGVycyAqLwotICAgIDAsICAgICAgICAgLyog
bGlzdCBvZiBlbmNyeXB0ZWQgZXh0ZW5zaW9uIGhlYWRlcnMgaXMgZW1wdHkgKi8KKyAgICAyLCAg
ICAvKiBpbmRpY2F0ZXMgdGhlIG51bWJlciBvZiBNYXN0ZXIga2V5cyAgICAgICAgICAqLworICAg
IE5VTEwsIC8qIGluZGljYXRlcyB0aGF0IEVLVCBpcyBub3QgaW4gdXNlICAgICAgICAgICAgICov
CisgICAgMTI4LCAgLyogcmVwbGF5IHdpbmRvdyBzaXplICAgICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KKyAgICAwLCAgICAvKiByZXRyYW5zbWlzc2lvbiBub3QgYWxsb3dlZCAgICAgICAgICAg
ICAgICAgICAqLworICAgIE5VTEwsIC8qIG5vIGVuY3J5cHRlZCBleHRlbnNpb24gaGVhZGVycyAg
ICAgICAgICAgICAgICovCisgICAgMCwgICAgLyogbGlzdCBvZiBlbmNyeXB0ZWQgZXh0ZW5zaW9u
IGhlYWRlcnMgaXMgZW1wdHkgKi8KICAgICBOVUxMCiB9OwogCiBjb25zdCBzcnRwX3BvbGljeV90
IGFlc19vbmx5X3BvbGljeSA9IHsKICAgICB7IHNzcmNfYW55X291dGJvdW5kLCAwIH0sIC8qIFNT
UkMgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgIHsKLSAgICAgICAgU1JUUF9BRVNfSUNN
XzEyOCwgICAgICAgICAgLyogY2lwaGVyIHR5cGUgICAgICAgICAgICAgICAgICovCisgICAgICAg
IFNSVFBfQUVTX0lDTV8xMjgsICAgICAgICAgICAgICAgLyogY2lwaGVyIHR5cGUgICAgICAgICAg
ICAgICAgICovCiAgICAgICAgIFNSVFBfQUVTX0lDTV8xMjhfS0VZX0xFTl9XU0FMVCwgLyogY2lw
aGVyIGtleSBsZW5ndGggaW4gb2N0ZXRzICovCi0gICAgICAgIFNSVFBfTlVMTF9BVVRILCAgICAg
ICAgICAgIC8qIGF1dGhlbnRpY2F0aW9uIGZ1bmMgdHlwZSAgICAqLwotICAgICAgICAwLCAgICAg
ICAgICAgICAgICAgICAgLyogYXV0aCBrZXkgbGVuZ3RoIGluIG9jdGV0cyAgICovCi0gICAgICAg
IDAsICAgICAgICAgICAgICAgICAgICAvKiBhdXRoIHRhZyBsZW5ndGggaW4gb2N0ZXRzICAgKi8K
LSAgICAgICAgc2VjX3NlcnZfY29uZiAgICAgICAgIC8qIHNlY3VyaXR5IHNlcnZpY2VzIGZsYWcg
ICAgICAqLworICAgICAgICBTUlRQX05VTExfQVVUSCwgICAgICAgICAgICAgICAgIC8qIGF1dGhl
bnRpY2F0aW9uIGZ1bmMgdHlwZSAgICAqLworICAgICAgICAwLCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIGF1dGgga2V5IGxlbmd0aCBpbiBvY3RldHMgICAqLworICAgICAgICAwLCAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIGF1dGggdGFnIGxlbmd0aCBpbiBvY3RldHMg
ICAqLworICAgICAgICBzZWNfc2Vydl9jb25mICAgICAgICAgICAgICAgICAgIC8qIHNlY3VyaXR5
IHNlcnZpY2VzIGZsYWcgICAgICAqLwogICAgIH0sCiAgICAgewotICAgICAgICBTUlRQX0FFU19J
Q01fMTI4LCAgICAgICAgLyogY2lwaGVyIHR5cGUgICAgICAgICAgICAgICAgICovCisgICAgICAg
IFNSVFBfQUVTX0lDTV8xMjgsICAgICAgICAgICAgICAgLyogY2lwaGVyIHR5cGUgICAgICAgICAg
ICAgICAgICovCiAgICAgICAgIFNSVFBfQUVTX0lDTV8xMjhfS0VZX0xFTl9XU0FMVCwgLyogY2lw
aGVyIGtleSBsZW5ndGggaW4gb2N0ZXRzICovCi0gICAgICAgIFNSVFBfTlVMTF9BVVRILCAgICAg
ICAgICAvKiBhdXRoZW50aWNhdGlvbiBmdW5jIHR5cGUgICAgKi8KLSAgICAgICAgMCwgICAgICAg
ICAgICAgICAgICAvKiBhdXRoIGtleSBsZW5ndGggaW4gb2N0ZXRzICAgKi8KLSAgICAgICAgMCwg
ICAgICAgICAgICAgICAgICAvKiBhdXRoIHRhZyBsZW5ndGggaW4gb2N0ZXRzICAgKi8KLSAgICAg
ICAgc2VjX3NlcnZfY29uZiAgICAgICAvKiBzZWN1cml0eSBzZXJ2aWNlcyBmbGFnICAgICAgKi8K
KyAgICAgICAgU1JUUF9OVUxMX0FVVEgsICAgICAgICAgICAgICAgICAvKiBhdXRoZW50aWNhdGlv
biBmdW5jIHR5cGUgICAgKi8KKyAgICAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAvKiBhdXRoIGtleSBsZW5ndGggaW4gb2N0ZXRzICAgKi8KKyAgICAgICAgMCwgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAvKiBhdXRoIHRhZyBsZW5ndGggaW4gb2N0ZXRzICAgKi8KKyAg
ICAgICAgc2VjX3NlcnZfY29uZiAgICAgICAgICAgICAgICAgICAvKiBzZWN1cml0eSBzZXJ2aWNl
cyBmbGFnICAgICAgKi8KICAgICB9LAogICAgIE5VTEwsCiAgICAgKHNydHBfbWFzdGVyX2tleV90
ICoqKXRlc3Rfa2V5cywKLSAgICAyLCAgICAgICAgIC8qIGluZGljYXRlcyB0aGUgbnVtYmVyIG9m
IE1hc3RlciBrZXlzICovCi0gICAgTlVMTCwgICAgICAvKiBpbmRpY2F0ZXMgdGhhdCBFS1QgaXMg
bm90IGluIHVzZSAqLwotICAgIDEyOCwgICAgICAgLyogcmVwbGF5IHdpbmRvdyBzaXplICovCi0g
ICAgMCwgICAgICAgICAvKiByZXRyYW5zbWlzc2lvbiBub3QgYWxsb3dlZCAqLwotICAgIE5VTEws
ICAgICAgLyogbm8gZW5jcnlwdGVkIGV4dGVuc2lvbiBoZWFkZXJzICovCi0gICAgMCwgICAgICAg
ICAvKiBsaXN0IG9mIGVuY3J5cHRlZCBleHRlbnNpb24gaGVhZGVycyBpcyBlbXB0eSAqLworICAg
IDIsICAgIC8qIGluZGljYXRlcyB0aGUgbnVtYmVyIG9mIE1hc3RlciBrZXlzICAgICAgICAgICov
CisgICAgTlVMTCwgLyogaW5kaWNhdGVzIHRoYXQgRUtUIGlzIG5vdCBpbiB1c2UgICAgICAgICAg
ICAgKi8KKyAgICAxMjgsICAvKiByZXBsYXkgd2luZG93IHNpemUgICAgICAgICAgICAgICAgICAg
ICAgICAgICAqLworICAgIDAsICAgIC8qIHJldHJhbnNtaXNzaW9uIG5vdCBhbGxvd2VkICAgICAg
ICAgICAgICAgICAgICovCisgICAgTlVMTCwgLyogbm8gZW5jcnlwdGVkIGV4dGVuc2lvbiBoZWFk
ZXJzICAgICAgICAgICAgICAgKi8KKyAgICAwLCAgICAvKiBsaXN0IG9mIGVuY3J5cHRlZCBleHRl
bnNpb24gaGVhZGVycyBpcyBlbXB0eSAqLwogICAgIE5VTEwKIH07CiAKIGNvbnN0IHNydHBfcG9s
aWN5X3QgaG1hY19vbmx5X3BvbGljeSA9IHsKLSAgICB7IHNzcmNfYW55X291dGJvdW5kLCAwIH0s
IC8qIFNTUkMgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIHsgc3NyY19hbnlfb3V0Ym91
bmQsIDAgfSwgLyogU1NSQyAqLwogICAgIHsKLSAgICAgICAgU1JUUF9OVUxMX0NJUEhFUiwgICAg
ICAgICAgLyogY2lwaGVyIHR5cGUgICAgICAgICAgICAgICAgICovCi0gICAgICAgIDAsICAgICAg
ICAgICAgICAgICAgICAvKiBjaXBoZXIga2V5IGxlbmd0aCBpbiBvY3RldHMgKi8KLSAgICAgICAg
U1JUUF9ITUFDX1NIQTEsICAgICAgICAgICAgLyogYXV0aGVudGljYXRpb24gZnVuYyB0eXBlICAg
ICovCi0gICAgICAgIDIwLCAgICAgICAgICAgICAgICAgICAvKiBhdXRoIGtleSBsZW5ndGggaW4g
b2N0ZXRzICAgKi8KLSAgICAgICAgNCwgICAgICAgICAgICAgICAgICAgIC8qIGF1dGggdGFnIGxl
bmd0aCBpbiBvY3RldHMgICAqLwotICAgICAgICBzZWNfc2Vydl9hdXRoICAgICAgICAgLyogc2Vj
dXJpdHkgc2VydmljZXMgZmxhZyAgICAgICovCisgICAgICAgIFNSVFBfTlVMTF9DSVBIRVIsIC8q
IGNpcGhlciB0eXBlICAgICAgICAgICAgICAgICAqLworICAgICAgICAwLCAgICAgICAgICAgICAg
ICAvKiBjaXBoZXIga2V5IGxlbmd0aCBpbiBvY3RldHMgKi8KKyAgICAgICAgU1JUUF9ITUFDX1NI
QTEsICAgLyogYXV0aGVudGljYXRpb24gZnVuYyB0eXBlICAgICovCisgICAgICAgIDIwLCAgICAg
ICAgICAgICAgIC8qIGF1dGgga2V5IGxlbmd0aCBpbiBvY3RldHMgICAqLworICAgICAgICA0LCAg
ICAgICAgICAgICAgICAvKiBhdXRoIHRhZyBsZW5ndGggaW4gb2N0ZXRzICAgKi8KKyAgICAgICAg
c2VjX3NlcnZfYXV0aCAgICAgLyogc2VjdXJpdHkgc2VydmljZXMgZmxhZyAgICAgICovCiAgICAg
fSwKICAgICB7Ci0gICAgICAgIFNSVFBfTlVMTF9DSVBIRVIsICAgICAgICAvKiBjaXBoZXIgdHlw
ZSAgICAgICAgICAgICAgICAgKi8KLSAgICAgICAgMCwgICAgICAgICAgICAgICAgICAvKiBjaXBo
ZXIga2V5IGxlbmd0aCBpbiBvY3RldHMgKi8KLSAgICAgICAgU1JUUF9ITUFDX1NIQTEsICAgICAg
ICAgIC8qIGF1dGhlbnRpY2F0aW9uIGZ1bmMgdHlwZSAgICAqLwotICAgICAgICAyMCwgICAgICAg
ICAgICAgICAgIC8qIGF1dGgga2V5IGxlbmd0aCBpbiBvY3RldHMgICAqLwotICAgICAgICA0LCAg
ICAgICAgICAgICAgICAgIC8qIGF1dGggdGFnIGxlbmd0aCBpbiBvY3RldHMgICAqLwotICAgICAg
ICBzZWNfc2Vydl9hdXRoICAgICAgIC8qIHNlY3VyaXR5IHNlcnZpY2VzIGZsYWcgICAgICAqLwor
ICAgICAgICBTUlRQX05VTExfQ0lQSEVSLCAvKiBjaXBoZXIgdHlwZSAgICAgICAgICAgICAgICAg
Ki8KKyAgICAgICAgMCwgICAgICAgICAgICAgICAgLyogY2lwaGVyIGtleSBsZW5ndGggaW4gb2N0
ZXRzICovCisgICAgICAgIFNSVFBfSE1BQ19TSEExLCAgIC8qIGF1dGhlbnRpY2F0aW9uIGZ1bmMg
dHlwZSAgICAqLworICAgICAgICAyMCwgICAgICAgICAgICAgICAvKiBhdXRoIGtleSBsZW5ndGgg
aW4gb2N0ZXRzICAgKi8KKyAgICAgICAgNCwgICAgICAgICAgICAgICAgLyogYXV0aCB0YWcgbGVu
Z3RoIGluIG9jdGV0cyAgICovCisgICAgICAgIHNlY19zZXJ2X2F1dGggICAgIC8qIHNlY3VyaXR5
IHNlcnZpY2VzIGZsYWcgICAgICAqLwogICAgIH0sCiAgICAgTlVMTCwKICAgICAoc3J0cF9tYXN0
ZXJfa2V5X3QgKiopdGVzdF9rZXlzLAotICAgIDIsICAgICAgICAgLyogTnVtYmVyIG9mIE1hc3Rl
ciBrZXlzIGFzc29jaWF0ZWQgd2l0aCB0aGUgcG9saWN5ICovCi0gICAgTlVMTCwgICAgICAvKiBp
bmRpY2F0ZXMgdGhhdCBFS1QgaXMgbm90IGluIHVzZSAqLwotICAgIDEyOCwgICAgICAgLyogcmVw
bGF5IHdpbmRvdyBzaXplICovCi0gICAgMCwgICAgICAgICAvKiByZXRyYW5zbWlzc2lvbiBub3Qg
YWxsb3dlZCAqLwotICAgIE5VTEwsICAgICAgLyogbm8gZW5jcnlwdGVkIGV4dGVuc2lvbiBoZWFk
ZXJzICovCi0gICAgMCwgICAgICAgICAvKiBsaXN0IG9mIGVuY3J5cHRlZCBleHRlbnNpb24gaGVh
ZGVycyBpcyBlbXB0eSAqLworICAgIDIsICAgIC8qIE51bWJlciBvZiBNYXN0ZXIga2V5cyBhc3Nv
Y2lhdGVkIHdpdGggdGhlIHBvbGljeSAqLworICAgIE5VTEwsIC8qIGluZGljYXRlcyB0aGF0IEVL
VCBpcyBub3QgaW4gdXNlICAgICAgICAgICAgICAgICAqLworICAgIDEyOCwgIC8qIHJlcGxheSB3
aW5kb3cgc2l6ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIDAsICAgIC8q
IHJldHJhbnNtaXNzaW9uIG5vdCBhbGxvd2VkICAgICAgICAgICAgICAgICAgICAgICAqLworICAg
IE5VTEwsIC8qIG5vIGVuY3J5cHRlZCBleHRlbnNpb24gaGVhZGVycyAgICAgICAgICAgICAgICAg
ICAqLworICAgIDAsICAgIC8qIGxpc3Qgb2YgZW5jcnlwdGVkIGV4dGVuc2lvbiBoZWFkZXJzIGlz
IGVtcHR5ICAgICAqLwogICAgIE5VTEwKIH07CiAKICNpZmRlZiBPUEVOU1NMCiBjb25zdCBzcnRw
X3BvbGljeV90IGFlczEyOF9nY21fOF9wb2xpY3kgPSB7Ci0gICAgeyBzc3JjX2FueV9vdXRib3Vu
ZCwgMCB9LCAgICAgICAgICAgLyogU1NSQyAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0g
ICAgeyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogU1JUUCBwb2xpY3kgICAg
ICAgICAgICAgICAgICAgICovCi0gICAgICAgIFNSVFBfQUVTX0dDTV8xMjgsICAgICAgICAgICAg
ICAgICAgICAvKiBjaXBoZXIgdHlwZSAgICAgICAgICAgICAgICAgKi8KKyAgICB7IHNzcmNfYW55
X291dGJvdW5kLCAwIH0sIC8qIFNTUkMgKi8KKyAgICB7CisgICAgICAgIC8qIFNSVFAgcG9saWN5
ICovCisgICAgICAgIFNSVFBfQUVTX0dDTV8xMjgsICAgICAgICAgICAgICAgLyogY2lwaGVyIHR5
cGUgICAgICAgICAgICAgICAgICovCiAgICAgICAgIFNSVFBfQUVTX0dDTV8xMjhfS0VZX0xFTl9X
U0FMVCwgLyogY2lwaGVyIGtleSBsZW5ndGggaW4gb2N0ZXRzICovCi0gICAgICAgIFNSVFBfTlVM
TF9BVVRILCAgICAgICAgICAgICAgICAgICAgICAvKiBhdXRoZW50aWNhdGlvbiBmdW5jIHR5cGUg
ICAgKi8KKyAgICAgICAgU1JUUF9OVUxMX0FVVEgsICAgICAgICAgICAgICAgICAvKiBhdXRoZW50
aWNhdGlvbiBmdW5jIHR5cGUgICAgKi8KICAgICAgICAgMCwgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiBhdXRoIGtleSBsZW5ndGggaW4gb2N0ZXRzICAgKi8KICAgICAgICAgOCwgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBhdXRoIHRhZyBsZW5ndGggaW4gb2N0ZXRzICAg
Ki8KICAgICAgICAgc2VjX3NlcnZfY29uZl9hbmRfYXV0aCAgICAgICAgICAvKiBzZWN1cml0eSBz
ZXJ2aWNlcyBmbGFnICAgICAgKi8KICAgICB9LAotICAgIHsgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIC8qIFNSVENQIHBvbGljeSAgICAgICAgICAgICAgICAgICAqLwotICAgICAg
ICBTUlRQX0FFU19HQ01fMTI4LCAgICAgICAgICAgICAgICAgICAgLyogY2lwaGVyIHR5cGUgICAg
ICAgICAgICAgICAgICovCisgICAgeworICAgICAgICAvKiBTUlRDUCBwb2xpY3kgKi8KKyAgICAg
ICAgU1JUUF9BRVNfR0NNXzEyOCwgICAgICAgICAgICAgICAvKiBjaXBoZXIgdHlwZSAgICAgICAg
ICAgICAgICAgKi8KICAgICAgICAgU1JUUF9BRVNfR0NNXzEyOF9LRVlfTEVOX1dTQUxULCAvKiBj
aXBoZXIga2V5IGxlbmd0aCBpbiBvY3RldHMgKi8KLSAgICAgICAgU1JUUF9OVUxMX0FVVEgsICAg
ICAgICAgICAgICAgICAgICAgIC8qIGF1dGhlbnRpY2F0aW9uIGZ1bmMgdHlwZSAgICAqLworICAg
ICAgICBTUlRQX05VTExfQVVUSCwgICAgICAgICAgICAgICAgIC8qIGF1dGhlbnRpY2F0aW9uIGZ1
bmMgdHlwZSAgICAqLwogICAgICAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8q
IGF1dGgga2V5IGxlbmd0aCBpbiBvY3RldHMgICAqLwogICAgICAgICA4LCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIC8qIGF1dGggdGFnIGxlbmd0aCBpbiBvY3RldHMgICAqLwogICAgICAg
ICBzZWNfc2Vydl9jb25mX2FuZF9hdXRoICAgICAgICAgIC8qIHNlY3VyaXR5IHNlcnZpY2VzIGZs
YWcgICAgICAqLwogICAgIH0sCiAgICAgTlVMTCwKICAgICAoc3J0cF9tYXN0ZXJfa2V5X3QgKiop
dGVzdF9rZXlzLAotICAgIDIsICAgICAgICAgICAvKiBpbmRpY2F0ZXMgdGhlIG51bWJlciBvZiBN
YXN0ZXIga2V5cyAqLwotICAgIE5VTEwsICAgICAgICAvKiBpbmRpY2F0ZXMgdGhhdCBFS1QgaXMg
bm90IGluIHVzZSAqLwotICAgIDEyOCwgICAgICAgICAvKiByZXBsYXkgd2luZG93IHNpemUgKi8K
LSAgICAwLCAgICAgICAgICAgLyogcmV0cmFuc21pc3Npb24gbm90IGFsbG93ZWQgKi8KLSAgICBO
VUxMLCAgICAgICAgLyogbm8gZW5jcnlwdGVkIGV4dGVuc2lvbiBoZWFkZXJzICovCi0gICAgMCwg
ICAgICAgICAgIC8qIGxpc3Qgb2YgZW5jcnlwdGVkIGV4dGVuc2lvbiBoZWFkZXJzIGlzIGVtcHR5
ICovCisgICAgMiwgICAgLyogaW5kaWNhdGVzIHRoZSBudW1iZXIgb2YgTWFzdGVyIGtleXMgICAg
ICAgICAgKi8KKyAgICBOVUxMLCAvKiBpbmRpY2F0ZXMgdGhhdCBFS1QgaXMgbm90IGluIHVzZSAg
ICAgICAgICAgICAqLworICAgIDEyOCwgIC8qIHJlcGxheSB3aW5kb3cgc2l6ZSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICovCisgICAgMCwgICAgLyogcmV0cmFuc21pc3Npb24gbm90IGFsbG93
ZWQgICAgICAgICAgICAgICAgICAgKi8KKyAgICBOVUxMLCAvKiBubyBlbmNyeXB0ZWQgZXh0ZW5z
aW9uIGhlYWRlcnMgICAgICAgICAgICAgICAqLworICAgIDAsICAgIC8qIGxpc3Qgb2YgZW5jcnlw
dGVkIGV4dGVuc2lvbiBoZWFkZXJzIGlzIGVtcHR5ICovCiAgICAgTlVMTAogfTsKIAogY29uc3Qg
c3J0cF9wb2xpY3lfdCBhZXMxMjhfZ2NtXzhfY2F1dGhfcG9saWN5ID0gewotICAgIHsgc3NyY19h
bnlfb3V0Ym91bmQsIDAgfSwgICAgICAgICAgIC8qIFNTUkMgICAgICAgICAgICAgICAgICAgICAg
ICAgICAqLwotICAgIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIFNSVFAg
cG9saWN5ICAgICAgICAgICAgICAgICAgICAqLwotICAgICAgICBTUlRQX0FFU19HQ01fMTI4LCAg
ICAgICAgICAgICAgICAgICAgLyogY2lwaGVyIHR5cGUgICAgICAgICAgICAgICAgICovCisgICAg
eyBzc3JjX2FueV9vdXRib3VuZCwgMCB9LCAvKiBTU1JDICovCisgICAgeworICAgICAgICAvKiBT
UlRQIHBvbGljeSAqLworICAgICAgICBTUlRQX0FFU19HQ01fMTI4LCAgICAgICAgICAgICAgIC8q
IGNpcGhlciB0eXBlICAgICAgICAgICAgICAgICAqLwogICAgICAgICBTUlRQX0FFU19HQ01fMTI4
X0tFWV9MRU5fV1NBTFQsIC8qIGNpcGhlciBrZXkgbGVuZ3RoIGluIG9jdGV0cyAqLwotICAgICAg
ICBTUlRQX05VTExfQVVUSCwgICAgICAgICAgICAgICAgICAgICAgLyogYXV0aGVudGljYXRpb24g
ZnVuYyB0eXBlICAgICovCisgICAgICAgIFNSVFBfTlVMTF9BVVRILCAgICAgICAgICAgICAgICAg
LyogYXV0aGVudGljYXRpb24gZnVuYyB0eXBlICAgICovCiAgICAgICAgIDAsICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgLyogYXV0aCBrZXkgbGVuZ3RoIGluIG9jdGV0cyAgICovCiAgICAg
ICAgIDgsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogYXV0aCB0YWcgbGVuZ3RoIGlu
IG9jdGV0cyAgICovCiAgICAgICAgIHNlY19zZXJ2X2NvbmZfYW5kX2F1dGggICAgICAgICAgLyog
c2VjdXJpdHkgc2VydmljZXMgZmxhZyAgICAgICovCiAgICAgfSwKLSAgICB7ICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAvKiBTUlRDUCBwb2xpY3kgICAgICAgICAgICAgICAgICAg
Ki8KLSAgICAgICAgU1JUUF9BRVNfR0NNXzEyOCwgICAgICAgICAgICAgICAgICAgIC8qIGNpcGhl
ciB0eXBlICAgICAgICAgICAgICAgICAqLworICAgIHsKKyAgICAgICAgLyogU1JUQ1AgcG9saWN5
ICovCisgICAgICAgIFNSVFBfQUVTX0dDTV8xMjgsICAgICAgICAgICAgICAgLyogY2lwaGVyIHR5
cGUgICAgICAgICAgICAgICAgICovCiAgICAgICAgIFNSVFBfQUVTX0dDTV8xMjhfS0VZX0xFTl9X
U0FMVCwgLyogY2lwaGVyIGtleSBsZW5ndGggaW4gb2N0ZXRzICovCi0gICAgICAgIFNSVFBfTlVM
TF9BVVRILCAgICAgICAgICAgICAgICAgICAgICAvKiBhdXRoZW50aWNhdGlvbiBmdW5jIHR5cGUg
ICAgKi8KKyAgICAgICAgU1JUUF9OVUxMX0FVVEgsICAgICAgICAgICAgICAgICAvKiBhdXRoZW50
aWNhdGlvbiBmdW5jIHR5cGUgICAgKi8KICAgICAgICAgMCwgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiBhdXRoIGtleSBsZW5ndGggaW4gb2N0ZXRzICAgKi8KICAgICAgICAgOCwgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBhdXRoIHRhZyBsZW5ndGggaW4gb2N0ZXRzICAg
Ki8KICAgICAgICAgc2VjX3NlcnZfYXV0aCAgICAgICAgICAgICAgICAgICAvKiBzZWN1cml0eSBz
ZXJ2aWNlcyBmbGFnICAgICAgKi8KICAgICB9LAogICAgIE5VTEwsCiAgICAgKHNydHBfbWFzdGVy
X2tleV90ICoqKXRlc3Rfa2V5cywKLSAgICAyLCAgICAgICAgICAgLyogaW5kaWNhdGVzIHRoZSBu
dW1iZXIgb2YgTWFzdGVyIGtleXMgKi8KLSAgICBOVUxMLCAgICAgICAgLyogaW5kaWNhdGVzIHRo
YXQgRUtUIGlzIG5vdCBpbiB1c2UgKi8KLSAgICAxMjgsICAgICAgICAgLyogcmVwbGF5IHdpbmRv
dyBzaXplICovCi0gICAgMCwgICAgICAgICAgIC8qIHJldHJhbnNtaXNzaW9uIG5vdCBhbGxvd2Vk
ICovCi0gICAgTlVMTCwgICAgICAgIC8qIG5vIGVuY3J5cHRlZCBleHRlbnNpb24gaGVhZGVycyAq
LwotICAgIDAsICAgICAgICAgICAvKiBsaXN0IG9mIGVuY3J5cHRlZCBleHRlbnNpb24gaGVhZGVy
cyBpcyBlbXB0eSAqLworICAgIDIsICAgIC8qIGluZGljYXRlcyB0aGUgbnVtYmVyIG9mIE1hc3Rl
ciBrZXlzICAgICAgICAgICovCisgICAgTlVMTCwgLyogaW5kaWNhdGVzIHRoYXQgRUtUIGlzIG5v
dCBpbiB1c2UgICAgICAgICAgICAgKi8KKyAgICAxMjgsICAvKiByZXBsYXkgd2luZG93IHNpemUg
ICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIDAsICAgIC8qIHJldHJhbnNtaXNzaW9u
IG5vdCBhbGxvd2VkICAgICAgICAgICAgICAgICAgICovCisgICAgTlVMTCwgLyogbm8gZW5jcnlw
dGVkIGV4dGVuc2lvbiBoZWFkZXJzICAgICAgICAgICAgICAgKi8KKyAgICAwLCAgICAvKiBsaXN0
IG9mIGVuY3J5cHRlZCBleHRlbnNpb24gaGVhZGVycyBpcyBlbXB0eSAqLwogICAgIE5VTEwKIH07
CiAKIGNvbnN0IHNydHBfcG9saWN5X3QgYWVzMjU2X2djbV84X3BvbGljeSA9IHsKLSAgICB7IHNz
cmNfYW55X291dGJvdW5kLCAwIH0sICAgICAgICAgICAvKiBTU1JDICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKi8KLSAgICB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBT
UlRQIHBvbGljeSAgICAgICAgICAgICAgICAgICAgKi8KLSAgICAgICAgU1JUUF9BRVNfR0NNXzI1
NiwgICAgICAgICAgICAgICAgICAgIC8qIGNpcGhlciB0eXBlICAgICAgICAgICAgICAgICAqLwor
ICAgIHsgc3NyY19hbnlfb3V0Ym91bmQsIDAgfSwgLyogU1NSQyAqLworICAgIHsKKyAgICAgICAg
LyogU1JUUCBwb2xpY3kgKi8KKyAgICAgICAgU1JUUF9BRVNfR0NNXzI1NiwgICAgICAgICAgICAg
ICAvKiBjaXBoZXIgdHlwZSAgICAgICAgICAgICAgICAgKi8KICAgICAgICAgU1JUUF9BRVNfR0NN
XzI1Nl9LRVlfTEVOX1dTQUxULCAvKiBjaXBoZXIga2V5IGxlbmd0aCBpbiBvY3RldHMgKi8KLSAg
ICAgICAgU1JUUF9OVUxMX0FVVEgsICAgICAgICAgICAgICAgICAgICAgIC8qIGF1dGhlbnRpY2F0
aW9uIGZ1bmMgdHlwZSAgICAqLworICAgICAgICBTUlRQX05VTExfQVVUSCwgICAgICAgICAgICAg
ICAgIC8qIGF1dGhlbnRpY2F0aW9uIGZ1bmMgdHlwZSAgICAqLwogICAgICAgICAwLCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIGF1dGgga2V5IGxlbmd0aCBpbiBvY3RldHMgICAqLwog
ICAgICAgICA4LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIGF1dGggdGFnIGxlbmd0
aCBpbiBvY3RldHMgICAqLwogICAgICAgICBzZWNfc2Vydl9jb25mX2FuZF9hdXRoICAgICAgICAg
IC8qIHNlY3VyaXR5IHNlcnZpY2VzIGZsYWcgICAgICAqLwogICAgIH0sCi0gICAgeyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogU1JUQ1AgcG9saWN5ICAgICAgICAgICAgICAg
ICAgICovCi0gICAgICAgIFNSVFBfQUVTX0dDTV8yNTYsICAgICAgICAgICAgICAgICAgICAvKiBj
aXBoZXIgdHlwZSAgICAgICAgICAgICAgICAgKi8KKyAgICB7CisgICAgICAgIC8qIFNSVENQIHBv
bGljeSAqLworICAgICAgICBTUlRQX0FFU19HQ01fMjU2LCAgICAgICAgICAgICAgIC8qIGNpcGhl
ciB0eXBlICAgICAgICAgICAgICAgICAqLwogICAgICAgICBTUlRQX0FFU19HQ01fMjU2X0tFWV9M
RU5fV1NBTFQsIC8qIGNpcGhlciBrZXkgbGVuZ3RoIGluIG9jdGV0cyAqLwotICAgICAgICBTUlRQ
X05VTExfQVVUSCwgICAgICAgICAgICAgICAgICAgICAgLyogYXV0aGVudGljYXRpb24gZnVuYyB0
eXBlICAgICovCisgICAgICAgIFNSVFBfTlVMTF9BVVRILCAgICAgICAgICAgICAgICAgLyogYXV0
aGVudGljYXRpb24gZnVuYyB0eXBlICAgICovCiAgICAgICAgIDAsICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgLyogYXV0aCBrZXkgbGVuZ3RoIGluIG9jdGV0cyAgICovCiAgICAgICAgIDgs
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogYXV0aCB0YWcgbGVuZ3RoIGluIG9jdGV0
cyAgICovCiAgICAgICAgIHNlY19zZXJ2X2NvbmZfYW5kX2F1dGggICAgICAgICAgLyogc2VjdXJp
dHkgc2VydmljZXMgZmxhZyAgICAgICovCiAgICAgfSwKICAgICBOVUxMLAogICAgIChzcnRwX21h
c3Rlcl9rZXlfdCAqKil0ZXN0X2tleXMsCi0gICAgMiwgICAgICAgICAgIC8qIGluZGljYXRlcyB0
aGUgbnVtYmVyIG9mIE1hc3RlciBrZXlzICovCi0gICAgTlVMTCwgICAgICAgIC8qIGluZGljYXRl
cyB0aGF0IEVLVCBpcyBub3QgaW4gdXNlICovCi0gICAgMTI4LCAgICAgICAgIC8qIHJlcGxheSB3
aW5kb3cgc2l6ZSAqLwotICAgIDAsICAgICAgICAgICAvKiByZXRyYW5zbWlzc2lvbiBub3QgYWxs
b3dlZCAqLwotICAgIE5VTEwsICAgICAgICAvKiBubyBlbmNyeXB0ZWQgZXh0ZW5zaW9uIGhlYWRl
cnMgKi8KLSAgICAwLCAgICAgICAgICAgLyogbGlzdCBvZiBlbmNyeXB0ZWQgZXh0ZW5zaW9uIGhl
YWRlcnMgaXMgZW1wdHkgKi8KKyAgICAyLCAgICAvKiBpbmRpY2F0ZXMgdGhlIG51bWJlciBvZiBN
YXN0ZXIga2V5cyAgICAgICAgICAqLworICAgIE5VTEwsIC8qIGluZGljYXRlcyB0aGF0IEVLVCBp
cyBub3QgaW4gdXNlICAgICAgICAgICAgICovCisgICAgMTI4LCAgLyogcmVwbGF5IHdpbmRvdyBz
aXplICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICAwLCAgICAvKiByZXRyYW5zbWlz
c2lvbiBub3QgYWxsb3dlZCAgICAgICAgICAgICAgICAgICAqLworICAgIE5VTEwsIC8qIG5vIGVu
Y3J5cHRlZCBleHRlbnNpb24gaGVhZGVycyAgICAgICAgICAgICAgICovCisgICAgMCwgICAgLyog
bGlzdCBvZiBlbmNyeXB0ZWQgZXh0ZW5zaW9uIGhlYWRlcnMgaXMgZW1wdHkgKi8KICAgICBOVUxM
CiB9OwogCiBjb25zdCBzcnRwX3BvbGljeV90IGFlczI1Nl9nY21fOF9jYXV0aF9wb2xpY3kgPSB7
Ci0gICAgeyBzc3JjX2FueV9vdXRib3VuZCwgMCB9LCAgICAgICAgICAgLyogU1NSQyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICovCi0gICAgeyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgLyogU1JUUCBwb2xpY3kgICAgICAgICAgICAgICAgICAgICovCi0gICAgICAgIFNSVFBf
QUVTX0dDTV8yNTYsICAgICAgICAgICAgICAgICAgICAvKiBjaXBoZXIgdHlwZSAgICAgICAgICAg
ICAgICAgKi8KKyAgICB7IHNzcmNfYW55X291dGJvdW5kLCAwIH0sIC8qIFNTUkMgKi8KKyAgICB7
CisgICAgICAgIC8qIFNSVFAgcG9saWN5ICovCisgICAgICAgIFNSVFBfQUVTX0dDTV8yNTYsICAg
ICAgICAgICAgICAgLyogY2lwaGVyIHR5cGUgICAgICAgICAgICAgICAgICovCiAgICAgICAgIFNS
VFBfQUVTX0dDTV8yNTZfS0VZX0xFTl9XU0FMVCwgLyogY2lwaGVyIGtleSBsZW5ndGggaW4gb2N0
ZXRzICovCi0gICAgICAgIFNSVFBfTlVMTF9BVVRILCAgICAgICAgICAgICAgICAgICAgICAvKiBh
dXRoZW50aWNhdGlvbiBmdW5jIHR5cGUgICAgKi8KKyAgICAgICAgU1JUUF9OVUxMX0FVVEgsICAg
ICAgICAgICAgICAgICAvKiBhdXRoZW50aWNhdGlvbiBmdW5jIHR5cGUgICAgKi8KICAgICAgICAg
MCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBhdXRoIGtleSBsZW5ndGggaW4gb2N0
ZXRzICAgKi8KICAgICAgICAgOCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBhdXRo
IHRhZyBsZW5ndGggaW4gb2N0ZXRzICAgKi8KICAgICAgICAgc2VjX3NlcnZfY29uZl9hbmRfYXV0
aCAgICAgICAgICAvKiBzZWN1cml0eSBzZXJ2aWNlcyBmbGFnICAgICAgKi8KICAgICB9LAotICAg
IHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIFNSVENQIHBvbGljeSAgICAg
ICAgICAgICAgICAgICAqLwotICAgICAgICBTUlRQX0FFU19HQ01fMjU2LCAgICAgICAgICAgICAg
ICAgICAgLyogY2lwaGVyIHR5cGUgICAgICAgICAgICAgICAgICovCisgICAgeworICAgICAgICAv
KiBTUlRDUCBwb2xpY3kgKi8KKyAgICAgICAgU1JUUF9BRVNfR0NNXzI1NiwgICAgICAgICAgICAg
ICAvKiBjaXBoZXIgdHlwZSAgICAgICAgICAgICAgICAgKi8KICAgICAgICAgU1JUUF9BRVNfR0NN
XzI1Nl9LRVlfTEVOX1dTQUxULCAvKiBjaXBoZXIga2V5IGxlbmd0aCBpbiBvY3RldHMgKi8KLSAg
ICAgICAgU1JUUF9OVUxMX0FVVEgsICAgICAgICAgICAgICAgICAgICAgIC8qIGF1dGhlbnRpY2F0
aW9uIGZ1bmMgdHlwZSAgICAqLworICAgICAgICBTUlRQX05VTExfQVVUSCwgICAgICAgICAgICAg
ICAgIC8qIGF1dGhlbnRpY2F0aW9uIGZ1bmMgdHlwZSAgICAqLwogICAgICAgICAwLCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIGF1dGgga2V5IGxlbmd0aCBpbiBvY3RldHMgICAqLwog
ICAgICAgICA4LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIGF1dGggdGFnIGxlbmd0
aCBpbiBvY3RldHMgICAqLwogICAgICAgICBzZWNfc2Vydl9hdXRoICAgICAgICAgICAgICAgICAg
IC8qIHNlY3VyaXR5IHNlcnZpY2VzIGZsYWcgICAgICAqLwogICAgIH0sCiAgICAgTlVMTCwKICAg
ICAoc3J0cF9tYXN0ZXJfa2V5X3QgKiopdGVzdF9rZXlzLAotICAgIDIsICAgICAgICAgICAvKiBp
bmRpY2F0ZXMgdGhlIG51bWJlciBvZiBNYXN0ZXIga2V5cyAqLwotICAgIE5VTEwsICAgICAgICAv
KiBpbmRpY2F0ZXMgdGhhdCBFS1QgaXMgbm90IGluIHVzZSAqLwotICAgIDEyOCwgICAgICAgICAv
KiByZXBsYXkgd2luZG93IHNpemUgKi8KLSAgICAwLCAgICAgICAgICAgLyogcmV0cmFuc21pc3Np
b24gbm90IGFsbG93ZWQgKi8KLSAgICBOVUxMLCAgICAgICAgLyogbm8gZW5jcnlwdGVkIGV4dGVu
c2lvbiBoZWFkZXJzICovCi0gICAgMCwgICAgICAgICAgIC8qIGxpc3Qgb2YgZW5jcnlwdGVkIGV4
dGVuc2lvbiBoZWFkZXJzIGlzIGVtcHR5ICovCisgICAgMiwgICAgLyogaW5kaWNhdGVzIHRoZSBu
dW1iZXIgb2YgTWFzdGVyIGtleXMgICAgICAgICAgKi8KKyAgICBOVUxMLCAvKiBpbmRpY2F0ZXMg
dGhhdCBFS1QgaXMgbm90IGluIHVzZSAgICAgICAgICAgICAqLworICAgIDEyOCwgIC8qIHJlcGxh
eSB3aW5kb3cgc2l6ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgMCwgICAgLyog
cmV0cmFuc21pc3Npb24gbm90IGFsbG93ZWQgICAgICAgICAgICAgICAgICAgKi8KKyAgICBOVUxM
LCAvKiBubyBlbmNyeXB0ZWQgZXh0ZW5zaW9uIGhlYWRlcnMgICAgICAgICAgICAgICAqLworICAg
IDAsICAgIC8qIGxpc3Qgb2YgZW5jcnlwdGVkIGV4dGVuc2lvbiBoZWFkZXJzIGlzIGVtcHR5ICov
CiAgICAgTlVMTAogfTsKICNlbmRpZgogCiBjb25zdCBzcnRwX3BvbGljeV90IG51bGxfcG9saWN5
ID0gewotICAgIHsgc3NyY19hbnlfb3V0Ym91bmQsIDAgfSwgLyogU1NSQyAgICAgICAgICAgICAg
ICAgICAgICAgICovCisgICAgeyBzc3JjX2FueV9vdXRib3VuZCwgMCB9LCAvKiBTU1JDICovCiAg
ICAgewotICAgICAgICBTUlRQX05VTExfQ0lQSEVSLCAgICAgICAgICAvKiBjaXBoZXIgdHlwZSAg
ICAgICAgICAgICAgICAgKi8KLSAgICAgICAgMCwgICAgICAgICAgICAgICAgICAgIC8qIGNpcGhl
ciBrZXkgbGVuZ3RoIGluIG9jdGV0cyAqLwotICAgICAgICBTUlRQX05VTExfQVVUSCwgICAgICAg
ICAgICAvKiBhdXRoZW50aWNhdGlvbiBmdW5jIHR5cGUgICAgKi8KLSAgICAgICAgMCwgICAgICAg
ICAgICAgICAgICAgIC8qIGF1dGgga2V5IGxlbmd0aCBpbiBvY3RldHMgICAqLwotICAgICAgICAw
LCAgICAgICAgICAgICAgICAgICAgLyogYXV0aCB0YWcgbGVuZ3RoIGluIG9jdGV0cyAgICovCi0g
ICAgICAgIHNlY19zZXJ2X25vbmUgICAgICAgICAvKiBzZWN1cml0eSBzZXJ2aWNlcyBmbGFnICAg
ICAgKi8KKyAgICAgICAgU1JUUF9OVUxMX0NJUEhFUiwgLyogY2lwaGVyIHR5cGUgICAgICAgICAg
ICAgICAgICovCisgICAgICAgIDAsICAgICAgICAgICAgICAgIC8qIGNpcGhlciBrZXkgbGVuZ3Ro
IGluIG9jdGV0cyAqLworICAgICAgICBTUlRQX05VTExfQVVUSCwgICAvKiBhdXRoZW50aWNhdGlv
biBmdW5jIHR5cGUgICAgKi8KKyAgICAgICAgMCwgICAgICAgICAgICAgICAgLyogYXV0aCBrZXkg
bGVuZ3RoIGluIG9jdGV0cyAgICovCisgICAgICAgIDAsICAgICAgICAgICAgICAgIC8qIGF1dGgg
dGFnIGxlbmd0aCBpbiBvY3RldHMgICAqLworICAgICAgICBzZWNfc2Vydl9ub25lICAgICAvKiBz
ZWN1cml0eSBzZXJ2aWNlcyBmbGFnICAgICAgKi8KICAgICB9LAogICAgIHsKLSAgICAgICAgU1JU
UF9OVUxMX0NJUEhFUiwgICAgICAgIC8qIGNpcGhlciB0eXBlICAgICAgICAgICAgICAgICAqLwot
ICAgICAgICAwLCAgICAgICAgICAgICAgICAgIC8qIGNpcGhlciBrZXkgbGVuZ3RoIGluIG9jdGV0
cyAqLwotICAgICAgICBTUlRQX05VTExfQVVUSCwgICAgICAgICAgLyogYXV0aGVudGljYXRpb24g
ZnVuYyB0eXBlICAgICovCi0gICAgICAgIDAsICAgICAgICAgICAgICAgICAgLyogYXV0aCBrZXkg
bGVuZ3RoIGluIG9jdGV0cyAgICovCi0gICAgICAgIDAsICAgICAgICAgICAgICAgICAgLyogYXV0
aCB0YWcgbGVuZ3RoIGluIG9jdGV0cyAgICovCi0gICAgICAgIHNlY19zZXJ2X25vbmUgICAgICAg
Lyogc2VjdXJpdHkgc2VydmljZXMgZmxhZyAgICAgICovCisgICAgICAgIFNSVFBfTlVMTF9DSVBI
RVIsIC8qIGNpcGhlciB0eXBlICAgICAgICAgICAgICAgICAqLworICAgICAgICAwLCAgICAgICAg
ICAgICAgICAvKiBjaXBoZXIga2V5IGxlbmd0aCBpbiBvY3RldHMgKi8KKyAgICAgICAgU1JUUF9O
VUxMX0FVVEgsICAgLyogYXV0aGVudGljYXRpb24gZnVuYyB0eXBlICAgICovCisgICAgICAgIDAs
ICAgICAgICAgICAgICAgIC8qIGF1dGgga2V5IGxlbmd0aCBpbiBvY3RldHMgICAqLworICAgICAg
ICAwLCAgICAgICAgICAgICAgICAvKiBhdXRoIHRhZyBsZW5ndGggaW4gb2N0ZXRzICAgKi8KKyAg
ICAgICAgc2VjX3NlcnZfbm9uZSAgICAgLyogc2VjdXJpdHkgc2VydmljZXMgZmxhZyAgICAgICov
CiAgICAgfSwKICAgICBOVUxMLAogICAgIChzcnRwX21hc3Rlcl9rZXlfdCAqKil0ZXN0X2tleXMs
Ci0gICAgMiwgICAgICAgICAvKiBpbmRpY2F0ZXMgdGhlIG51bWJlciBvZiBNYXN0ZXIga2V5cyAq
LwotICAgIE5VTEwsICAgICAgLyogaW5kaWNhdGVzIHRoYXQgRUtUIGlzIG5vdCBpbiB1c2UgKi8K
LSAgICAxMjgsICAgICAgIC8qIHJlcGxheSB3aW5kb3cgc2l6ZSAqLwotICAgIDAsICAgICAgICAg
LyogcmV0cmFuc21pc3Npb24gbm90IGFsbG93ZWQgKi8KLSAgICBOVUxMLCAgICAgIC8qIG5vIGVu
Y3J5cHRlZCBleHRlbnNpb24gaGVhZGVycyAqLwotICAgIDAsICAgICAgICAgLyogbGlzdCBvZiBl
bmNyeXB0ZWQgZXh0ZW5zaW9uIGhlYWRlcnMgaXMgZW1wdHkgKi8KKyAgICAyLCAgICAvKiBpbmRp
Y2F0ZXMgdGhlIG51bWJlciBvZiBNYXN0ZXIga2V5cyAgICAgICAgICAqLworICAgIE5VTEwsIC8q
IGluZGljYXRlcyB0aGF0IEVLVCBpcyBub3QgaW4gdXNlICAgICAgICAgICAgICovCisgICAgMTI4
LCAgLyogcmVwbGF5IHdpbmRvdyBzaXplICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAg
ICAwLCAgICAvKiByZXRyYW5zbWlzc2lvbiBub3QgYWxsb3dlZCAgICAgICAgICAgICAgICAgICAq
LworICAgIE5VTEwsIC8qIG5vIGVuY3J5cHRlZCBleHRlbnNpb24gaGVhZGVycyAgICAgICAgICAg
ICAgICovCisgICAgMCwgICAgLyogbGlzdCBvZiBlbmNyeXB0ZWQgZXh0ZW5zaW9uIGhlYWRlcnMg
aXMgZW1wdHkgKi8KICAgICBOVUxMCiB9OwogCisvLyBjbGFuZy1mb3JtYXQgb2ZmCiB1bnNpZ25l
ZCBjaGFyIHRlc3RfMjU2X2tleVs0Nl0gPSB7CiAgICAgMHhmMCwgMHhmMCwgMHg0OSwgMHgxNCwg
MHhiNSwgMHgxMywgMHhmMiwgMHg3NiwKICAgICAweDNhLCAweDFiLCAweDFmLCAweGExLCAweDMw
LCAweGYxLCAweDBlLCAweDI5LApAQCAtMzcwMSw4MCArMzY5MSw4NiBAQCBzcnRwX21hc3Rlcl9r
ZXlfdCAqdGVzdF8yNTZfa2V5c1syXSA9IHsKICAgICAmbWFzdGVyX2tleV8xLAogICAgICZtYXN0
ZXJfa2V5XzIKIH07CisvLyBjbGFuZy1mb3JtYXQgb24KIAogY29uc3Qgc3J0cF9wb2xpY3lfdCBh
ZXNfMjU2X2htYWNfcG9saWN5ID0gewotICAgIHsgc3NyY19hbnlfb3V0Ym91bmQsIDAgfSwgIC8q
IFNTUkMgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIHsgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIFNSVFAgcG9saWN5ICAgICAgICAgICAgICAgICAgICAqLworICAgIHsgc3Ny
Y19hbnlfb3V0Ym91bmQsIDAgfSwgLyogU1NSQyAqLworICAgIHsKKyAgICAgICAgLyogU1JUUCBw
b2xpY3kgKi8KICAgICAgICAgU1JUUF9BRVNfSUNNXzI1NiwgICAgICAgICAgICAgICAvKiBjaXBo
ZXIgdHlwZSAgICAgICAgICAgICAgICAgKi8KICAgICAgICAgU1JUUF9BRVNfSUNNXzI1Nl9LRVlf
TEVOX1dTQUxULCAvKiBjaXBoZXIga2V5IGxlbmd0aCBpbiBvY3RldHMgKi8KLSAgICAgICAgU1JU
UF9ITUFDX1NIQTEsICAgICAgICAgICAgIC8qIGF1dGhlbnRpY2F0aW9uIGZ1bmMgdHlwZSAgICAq
LwotICAgICAgICAyMCwgICAgICAgICAgICAgICAgICAgIC8qIGF1dGgga2V5IGxlbmd0aCBpbiBv
Y3RldHMgICAqLwotICAgICAgICAxMCwgICAgICAgICAgICAgICAgICAgIC8qIGF1dGggdGFnIGxl
bmd0aCBpbiBvY3RldHMgICAqLwotICAgICAgICBzZWNfc2Vydl9jb25mX2FuZF9hdXRoIC8qIHNl
Y3VyaXR5IHNlcnZpY2VzIGZsYWcgICAgICAqLworICAgICAgICBTUlRQX0hNQUNfU0hBMSwgICAg
ICAgICAgICAgICAgIC8qIGF1dGhlbnRpY2F0aW9uIGZ1bmMgdHlwZSAgICAqLworICAgICAgICAy
MCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIGF1dGgga2V5IGxlbmd0aCBpbiBvY3Rl
dHMgICAqLworICAgICAgICAxMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIGF1dGgg
dGFnIGxlbmd0aCBpbiBvY3RldHMgICAqLworICAgICAgICBzZWNfc2Vydl9jb25mX2FuZF9hdXRo
ICAgICAgICAgIC8qIHNlY3VyaXR5IHNlcnZpY2VzIGZsYWcgICAgICAqLwogICAgIH0sCi0gICAg
eyAgICAgICAgICAgICAgICAgICAgICAgICAgLyogU1JUQ1AgcG9saWN5ICAgICAgICAgICAgICAg
ICAgICovCisgICAgeworICAgICAgICAvKiBTUlRDUCBwb2xpY3kgKi8KICAgICAgICAgU1JUUF9B
RVNfSUNNXzI1NiwgICAgICAgICAgICAgICAvKiBjaXBoZXIgdHlwZSAgICAgICAgICAgICAgICAg
Ki8KICAgICAgICAgU1JUUF9BRVNfSUNNXzI1Nl9LRVlfTEVOX1dTQUxULCAvKiBjaXBoZXIga2V5
IGxlbmd0aCBpbiBvY3RldHMgKi8KLSAgICAgICAgU1JUUF9ITUFDX1NIQTEsICAgICAgICAgICAg
IC8qIGF1dGhlbnRpY2F0aW9uIGZ1bmMgdHlwZSAgICAqLwotICAgICAgICAyMCwgICAgICAgICAg
ICAgICAgICAgIC8qIGF1dGgga2V5IGxlbmd0aCBpbiBvY3RldHMgICAqLwotICAgICAgICAxMCwg
ICAgICAgICAgICAgICAgICAgIC8qIGF1dGggdGFnIGxlbmd0aCBpbiBvY3RldHMgICAqLwotICAg
ICAgICBzZWNfc2Vydl9jb25mX2FuZF9hdXRoIC8qIHNlY3VyaXR5IHNlcnZpY2VzIGZsYWcgICAg
ICAqLworICAgICAgICBTUlRQX0hNQUNfU0hBMSwgICAgICAgICAgICAgICAgIC8qIGF1dGhlbnRp
Y2F0aW9uIGZ1bmMgdHlwZSAgICAqLworICAgICAgICAyMCwgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIC8qIGF1dGgga2V5IGxlbmd0aCBpbiBvY3RldHMgICAqLworICAgICAgICAxMCwgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIGF1dGggdGFnIGxlbmd0aCBpbiBvY3RldHMgICAq
LworICAgICAgICBzZWNfc2Vydl9jb25mX2FuZF9hdXRoICAgICAgICAgIC8qIHNlY3VyaXR5IHNl
cnZpY2VzIGZsYWcgICAgICAqLwogICAgIH0sCiAgICAgTlVMTCwKICAgICAoc3J0cF9tYXN0ZXJf
a2V5X3QgKiopdGVzdF8yNTZfa2V5cywKLSAgICAyLCAgICAgICAgIC8qIGluZGljYXRlcyB0aGUg
bnVtYmVyIG9mIE1hc3RlciBrZXlzICovCi0gICAgTlVMTCwgICAgICAvKiBpbmRpY2F0ZXMgdGhh
dCBFS1QgaXMgbm90IGluIHVzZSAqLwotICAgIDEyOCwgICAgICAgLyogcmVwbGF5IHdpbmRvdyBz
aXplICovCi0gICAgMCwgICAgICAgICAvKiByZXRyYW5zbWlzc2lvbiBub3QgYWxsb3dlZCAqLwot
ICAgIE5VTEwsICAgICAgLyogbm8gZW5jcnlwdGVkIGV4dGVuc2lvbiBoZWFkZXJzICovCi0gICAg
MCwgICAgICAgICAvKiBsaXN0IG9mIGVuY3J5cHRlZCBleHRlbnNpb24gaGVhZGVycyBpcyBlbXB0
eSAqLworICAgIDIsICAgIC8qIGluZGljYXRlcyB0aGUgbnVtYmVyIG9mIE1hc3RlciBrZXlzICAg
ICAgICAgICovCisgICAgTlVMTCwgLyogaW5kaWNhdGVzIHRoYXQgRUtUIGlzIG5vdCBpbiB1c2Ug
ICAgICAgICAgICAgKi8KKyAgICAxMjgsICAvKiByZXBsYXkgd2luZG93IHNpemUgICAgICAgICAg
ICAgICAgICAgICAgICAgICAqLworICAgIDAsICAgIC8qIHJldHJhbnNtaXNzaW9uIG5vdCBhbGxv
d2VkICAgICAgICAgICAgICAgICAgICovCisgICAgTlVMTCwgLyogbm8gZW5jcnlwdGVkIGV4dGVu
c2lvbiBoZWFkZXJzICAgICAgICAgICAgICAgKi8KKyAgICAwLCAgICAvKiBsaXN0IG9mIGVuY3J5
cHRlZCBleHRlbnNpb24gaGVhZGVycyBpcyBlbXB0eSAqLwogICAgIE5VTEwKIH07CiAKKy8vIGNs
YW5nLWZvcm1hdCBvZmYKIHVpbnQ4X3QgZWt0X3Rlc3Rfa2V5WzE2XSA9IHsKICAgICAweDc3LCAw
eDI2LCAweDlkLCAweGFjLCAweDE2LCAweGEzLCAweDI4LCAweGNhLAogICAgIDB4OGUsIDB4Yzks
IDB4NjgsIDB4NGIsIDB4Y2MsIDB4YzQsIDB4ZDIsIDB4MWIKIH07CisvLyBjbGFuZy1mb3JtYXQg
b24KIAogI2luY2x1ZGUgImVrdC5oIgogCisvLyBjbGFuZy1mb3JtYXQgb2ZmCiBzcnRwX2VrdF9w
b2xpY3lfY3R4X3QgZWt0X3Rlc3RfcG9saWN5ID0gewogICAgIDB4YTVhNSwgICAgICAgICAgICAg
ICAgICAgICAvKiBTUEkgKi8KICAgICBTUlRQX0VLVF9DSVBIRVJfQUVTXzEyOF9FQ0IsCiAgICAg
ZWt0X3Rlc3Rfa2V5LAogICAgIE5VTEwKIH07CisvLyBjbGFuZy1mb3JtYXQgb24KIAogY29uc3Qg
c3J0cF9wb2xpY3lfdCBobWFjX29ubHlfd2l0aF9la3RfcG9saWN5ID0gewotICAgIHsgc3NyY19h
bnlfb3V0Ym91bmQsIDAgfSwgLyogU1NSQyAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAg
eyBzc3JjX2FueV9vdXRib3VuZCwgMCB9LCAvKiBTU1JDICovCiAgICAgewotICAgICAgICBTUlRQ
X05VTExfQ0lQSEVSLCAgICAgICAgICAvKiBjaXBoZXIgdHlwZSAgICAgICAgICAgICAgICAgKi8K
LSAgICAgICAgMCwgICAgICAgICAgICAgICAgICAgIC8qIGNpcGhlciBrZXkgbGVuZ3RoIGluIG9j
dGV0cyAqLwotICAgICAgICBTUlRQX0hNQUNfU0hBMSwgICAgICAgICAgICAvKiBhdXRoZW50aWNh
dGlvbiBmdW5jIHR5cGUgICAgKi8KLSAgICAgICAgMjAsICAgICAgICAgICAgICAgICAgIC8qIGF1
dGgga2V5IGxlbmd0aCBpbiBvY3RldHMgICAqLwotICAgICAgICA0LCAgICAgICAgICAgICAgICAg
ICAgLyogYXV0aCB0YWcgbGVuZ3RoIGluIG9jdGV0cyAgICovCi0gICAgICAgIHNlY19zZXJ2X2F1
dGggICAgICAgICAvKiBzZWN1cml0eSBzZXJ2aWNlcyBmbGFnICAgICAgKi8KKyAgICAgICAgU1JU
UF9OVUxMX0NJUEhFUiwgLyogY2lwaGVyIHR5cGUgICAgICAgICAgICAgICAgICovCisgICAgICAg
IDAsICAgICAgICAgICAgICAgIC8qIGNpcGhlciBrZXkgbGVuZ3RoIGluIG9jdGV0cyAqLworICAg
ICAgICBTUlRQX0hNQUNfU0hBMSwgICAvKiBhdXRoZW50aWNhdGlvbiBmdW5jIHR5cGUgICAgKi8K
KyAgICAgICAgMjAsICAgICAgICAgICAgICAgLyogYXV0aCBrZXkgbGVuZ3RoIGluIG9jdGV0cyAg
ICovCisgICAgICAgIDQsICAgICAgICAgICAgICAgIC8qIGF1dGggdGFnIGxlbmd0aCBpbiBvY3Rl
dHMgICAqLworICAgICAgICBzZWNfc2Vydl9hdXRoICAgICAvKiBzZWN1cml0eSBzZXJ2aWNlcyBm
bGFnICAgICAgKi8KICAgICB9LAogICAgIHsKLSAgICAgICAgU1JUUF9OVUxMX0NJUEhFUiwgICAg
ICAgIC8qIGNpcGhlciB0eXBlICAgICAgICAgICAgICAgICAqLwotICAgICAgICAwLCAgICAgICAg
ICAgICAgICAgIC8qIGNpcGhlciBrZXkgbGVuZ3RoIGluIG9jdGV0cyAqLwotICAgICAgICBTUlRQ
X0hNQUNfU0hBMSwgICAgICAgICAgLyogYXV0aGVudGljYXRpb24gZnVuYyB0eXBlICAgICovCi0g
ICAgICAgIDIwLCAgICAgICAgICAgICAgICAgLyogYXV0aCBrZXkgbGVuZ3RoIGluIG9jdGV0cyAg
ICovCi0gICAgICAgIDQsICAgICAgICAgICAgICAgICAgLyogYXV0aCB0YWcgbGVuZ3RoIGluIG9j
dGV0cyAgICovCi0gICAgICAgIHNlY19zZXJ2X2F1dGggICAgICAgLyogc2VjdXJpdHkgc2Vydmlj
ZXMgZmxhZyAgICAgICovCisgICAgICAgIFNSVFBfTlVMTF9DSVBIRVIsIC8qIGNpcGhlciB0eXBl
ICAgICAgICAgICAgICAgICAqLworICAgICAgICAwLCAgICAgICAgICAgICAgICAvKiBjaXBoZXIg
a2V5IGxlbmd0aCBpbiBvY3RldHMgKi8KKyAgICAgICAgU1JUUF9ITUFDX1NIQTEsICAgLyogYXV0
aGVudGljYXRpb24gZnVuYyB0eXBlICAgICovCisgICAgICAgIDIwLCAgICAgICAgICAgICAgIC8q
IGF1dGgga2V5IGxlbmd0aCBpbiBvY3RldHMgICAqLworICAgICAgICA0LCAgICAgICAgICAgICAg
ICAvKiBhdXRoIHRhZyBsZW5ndGggaW4gb2N0ZXRzICAgKi8KKyAgICAgICAgc2VjX3NlcnZfYXV0
aCAgICAgLyogc2VjdXJpdHkgc2VydmljZXMgZmxhZyAgICAgICovCiAgICAgfSwKICAgICBOVUxM
LAogICAgIChzcnRwX21hc3Rlcl9rZXlfdCAqKil0ZXN0X2tleXMsCi0gICAgMiwgICAgICAgICAg
ICAgICAgICAgICAvKiBpbmRpY2F0ZXMgdGhlIG51bWJlciBvZiBNYXN0ZXIga2V5cyAqLwotICAg
ICZla3RfdGVzdF9wb2xpY3ksICAgICAgLyogaW5kaWNhdGVzIHRoYXQgRUtUIGlzIG5vdCBpbiB1
c2UgKi8KLSAgICAxMjgsICAgICAgICAgICAgICAgICAgIC8qIHJlcGxheSB3aW5kb3cgc2l6ZSAq
LwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgLyogcmV0cmFuc21pc3Npb24gbm90IGFsbG93
ZWQgKi8KLSAgICBOVUxMLCAgICAgICAgICAgICAgICAgIC8qIG5vIGVuY3J5cHRlZCBleHRlbnNp
b24gaGVhZGVycyAqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgLyogbGlzdCBvZiBlbmNy
eXB0ZWQgZXh0ZW5zaW9uIGhlYWRlcnMgaXMgZW1wdHkgKi8KKyAgICAyLCAgICAgICAgICAgICAg
ICAvKiBpbmRpY2F0ZXMgdGhlIG51bWJlciBvZiBNYXN0ZXIga2V5cyAgICAgICAgICAqLworICAg
ICZla3RfdGVzdF9wb2xpY3ksIC8qIGluZGljYXRlcyB0aGF0IEVLVCBpcyBub3QgaW4gdXNlICAg
ICAgICAgICAgICovCisgICAgMTI4LCAgICAgICAgICAgICAgLyogcmVwbGF5IHdpbmRvdyBzaXpl
ICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAvKiBy
ZXRyYW5zbWlzc2lvbiBub3QgYWxsb3dlZCAgICAgICAgICAgICAgICAgICAqLworICAgIE5VTEws
ICAgICAgICAgICAgIC8qIG5vIGVuY3J5cHRlZCBleHRlbnNpb24gaGVhZGVycyAgICAgICAgICAg
ICAgICovCisgICAgMCwgICAgICAgICAgICAgICAgLyogbGlzdCBvZiBlbmNyeXB0ZWQgZXh0ZW5z
aW9uIGhlYWRlcnMgaXMgZW1wdHkgKi8KICAgICBOVUxMCiB9OwogCi0KIC8qCiAgKiBhbiBhcnJh
eSBvZiBwb2ludGVycyB0byB0aGUgcG9saWNpZXMgbGlzdGVkIGFib3ZlCiAgKgpAQCAtMzc4NSw4
ICszNzgxLDggQEAgY29uc3Qgc3J0cF9wb2xpY3lfdCBobWFjX29ubHlfd2l0aF9la3RfcG9saWN5
ID0gewogICogYWRkIHRvIHRoaXMgbGlzdCwgeW91IHNob3VsZCBkbyBpdCBhdCB0aGUgZW5kLgog
ICovCiAKLWNvbnN0IHNydHBfcG9saWN5X3QgKgotcG9saWN5X2FycmF5W10gPSB7CisvLyBjbGFu
Zy1mb3JtYXQgb2ZmCitjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3lfYXJyYXlbXSA9IHsKICAg
ICAmaG1hY19vbmx5X3BvbGljeSwKICAgICAmYWVzX29ubHlfcG9saWN5LAogICAgICZkZWZhdWx0
X3BvbGljeSwKQEAgLTM4MDEsMzIgKzM3OTcsMzUgQEAgcG9saWN5X2FycmF5W10gPSB7CiAgICAg
JmhtYWNfb25seV93aXRoX2VrdF9wb2xpY3ksCiAgICAgTlVMTAogfTsKKy8vIGNsYW5nLWZvcm1h
dCBvbgogCiBjb25zdCBzcnRwX3BvbGljeV90IHdpbGRjYXJkX3BvbGljeSA9IHsKLSAgICB7IHNz
cmNfYW55X291dGJvdW5kLCAwIH0sICAvKiBTU1JDICAgICAgICAgICAgICAgICAgICAgICAgKi8K
LSAgICB7ICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBTUlRQIHBvbGljeSAgICAgICAgICAg
ICAgICAgICAgKi8KLSAgICAgICAgU1JUUF9BRVNfSUNNXzEyOCwgICAgICAgICAgIC8qIGNpcGhl
ciB0eXBlICAgICAgICAgICAgICAgICAqLworICAgIHsgc3NyY19hbnlfb3V0Ym91bmQsIDAgfSwg
LyogU1NSQyAqLworICAgIHsKKyAgICAgICAgLyogU1JUUCBwb2xpY3kgKi8KKyAgICAgICAgU1JU
UF9BRVNfSUNNXzEyOCwgICAgICAgICAgICAgICAvKiBjaXBoZXIgdHlwZSAgICAgICAgICAgICAg
ICAgKi8KICAgICAgICAgU1JUUF9BRVNfSUNNXzEyOF9LRVlfTEVOX1dTQUxULCAvKiBjaXBoZXIg
a2V5IGxlbmd0aCBpbiBvY3RldHMgKi8KLSAgICAgICAgU1JUUF9ITUFDX1NIQTEsICAgICAgICAg
ICAgIC8qIGF1dGhlbnRpY2F0aW9uIGZ1bmMgdHlwZSAgICAqLwotICAgICAgICAxNiwgICAgICAg
ICAgICAgICAgICAgIC8qIGF1dGgga2V5IGxlbmd0aCBpbiBvY3RldHMgICAqLwotICAgICAgICAx
MCwgICAgICAgICAgICAgICAgICAgIC8qIGF1dGggdGFnIGxlbmd0aCBpbiBvY3RldHMgICAqLwot
ICAgICAgICBzZWNfc2Vydl9jb25mX2FuZF9hdXRoIC8qIHNlY3VyaXR5IHNlcnZpY2VzIGZsYWcg
ICAgICAqLworICAgICAgICBTUlRQX0hNQUNfU0hBMSwgICAgICAgICAgICAgICAgIC8qIGF1dGhl
bnRpY2F0aW9uIGZ1bmMgdHlwZSAgICAqLworICAgICAgICAxNiwgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIGF1dGgga2V5IGxlbmd0aCBpbiBvY3RldHMgICAqLworICAgICAgICAxMCwg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIGF1dGggdGFnIGxlbmd0aCBpbiBvY3RldHMg
ICAqLworICAgICAgICBzZWNfc2Vydl9jb25mX2FuZF9hdXRoICAgICAgICAgIC8qIHNlY3VyaXR5
IHNlcnZpY2VzIGZsYWcgICAgICAqLwogICAgIH0sCi0gICAgeyAgICAgICAgICAgICAgICAgICAg
ICAgICAgLyogU1JUQ1AgcG9saWN5ICAgICAgICAgICAgICAgICAgICovCi0gICAgICAgIFNSVFBf
QUVTX0lDTV8xMjgsICAgICAgICAgICAvKiBjaXBoZXIgdHlwZSAgICAgICAgICAgICAgICAgKi8K
KyAgICB7CisgICAgICAgIC8qIFNSVENQIHBvbGljeSAqLworICAgICAgICBTUlRQX0FFU19JQ01f
MTI4LCAgICAgICAgICAgICAgIC8qIGNpcGhlciB0eXBlICAgICAgICAgICAgICAgICAqLwogICAg
ICAgICBTUlRQX0FFU19JQ01fMTI4X0tFWV9MRU5fV1NBTFQsIC8qIGNpcGhlciBrZXkgbGVuZ3Ro
IGluIG9jdGV0cyAqLwotICAgICAgICBTUlRQX0hNQUNfU0hBMSwgICAgICAgICAgICAgLyogYXV0
aGVudGljYXRpb24gZnVuYyB0eXBlICAgICovCi0gICAgICAgIDE2LCAgICAgICAgICAgICAgICAg
ICAgLyogYXV0aCBrZXkgbGVuZ3RoIGluIG9jdGV0cyAgICovCi0gICAgICAgIDEwLCAgICAgICAg
ICAgICAgICAgICAgLyogYXV0aCB0YWcgbGVuZ3RoIGluIG9jdGV0cyAgICovCi0gICAgICAgIHNl
Y19zZXJ2X2NvbmZfYW5kX2F1dGggLyogc2VjdXJpdHkgc2VydmljZXMgZmxhZyAgICAgICovCisg
ICAgICAgIFNSVFBfSE1BQ19TSEExLCAgICAgICAgICAgICAgICAgLyogYXV0aGVudGljYXRpb24g
ZnVuYyB0eXBlICAgICovCisgICAgICAgIDE2LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
LyogYXV0aCBrZXkgbGVuZ3RoIGluIG9jdGV0cyAgICovCisgICAgICAgIDEwLCAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgLyogYXV0aCB0YWcgbGVuZ3RoIGluIG9jdGV0cyAgICovCisgICAg
ICAgIHNlY19zZXJ2X2NvbmZfYW5kX2F1dGggICAgICAgICAgLyogc2VjdXJpdHkgc2VydmljZXMg
ZmxhZyAgICAgICovCiAgICAgfSwKICAgICB0ZXN0X2tleSwKICAgICBOVUxMLAogICAgIDAsCiAg
ICAgTlVMTCwKLSAgICAxMjgsICAgICAgICAgICAgICAgICAvKiByZXBsYXkgd2luZG93IHNpemUg
Ki8KLSAgICAwLCAgICAgICAgICAgICAgICAgICAvKiByZXRyYW5zbWlzc2lvbiBub3QgYWxsb3dl
ZCAqLwotICAgIE5VTEwsICAgICAgICAgICAgICAgIC8qIG5vIGVuY3J5cHRlZCBleHRlbnNpb24g
aGVhZGVycyAqLwotICAgIDAsICAgICAgICAgICAgICAgICAgIC8qIGxpc3Qgb2YgZW5jcnlwdGVk
IGV4dGVuc2lvbiBoZWFkZXJzIGlzIGVtcHR5ICovCisgICAgMTI4LCAgLyogcmVwbGF5IHdpbmRv
dyBzaXplICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICAwLCAgICAvKiByZXRyYW5z
bWlzc2lvbiBub3QgYWxsb3dlZCAgICAgICAgICAgICAgICAgICAqLworICAgIE5VTEwsIC8qIG5v
IGVuY3J5cHRlZCBleHRlbnNpb24gaGVhZGVycyAgICAgICAgICAgICAgICovCisgICAgMCwgICAg
LyogbGlzdCBvZiBlbmNyeXB0ZWQgZXh0ZW5zaW9uIGhlYWRlcnMgaXMgZW1wdHkgKi8KICAgICBO
VUxMCiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9saWJzcnRwL3Rlc3QvdGVzdF9zcnRwLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvdGVzdC90ZXN0X3NydHAuYwppbmRl
eCAyMjU2NTU3M2RjYjA2Y2QxMjdkYTdmZWE4Yjc4ZGIyY2JiOGE4MzQ2Li5jZGM5YjVkNWI3NjI4
Nzg2MDgyMjIyZDM4MjRkY2E1YTEyZDNmMGRkIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvdGVzdC90ZXN0X3NydHAuYwor
KysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNy
dHAvdGVzdC90ZXN0X3NydHAuYwpAQCAtNzIsMTMgKzcyLDEzIEBAIHZvaWQgc3J0cF9jYWxjX2Fl
YWRfaXZfc3J0Y3BfZGlzdGluY3RfaXZfcGVyX3NlcXVlbmNlX251bWJlcih2b2lkKTsKICAqIGl0
ZW0gaXMgdGhlIHRlc3QgZnVuY3Rpb24uCiAgKi8KIAotVEVTVF9MSVNUID0ge3sic3J0cF9jYWxj
X2FlYWRfaXZfc3J0Y3BfYWxsX3plcm9faW5wdXRfeWllbGRfemVyb19vdXRwdXQoKSIsCi0gICAg
ICAgICAgICAgIHNydHBfY2FsY19hZWFkX2l2X3NydGNwX2FsbF96ZXJvX2lucHV0X3lpZWxkX3pl
cm9fb3V0cHV0fSwKLSAgICAgICAgICAgICB7InNydHBfY2FsY19hZWFkX2l2X3NydGNwX3NlcV9u
dW1fb3Zlcl8weDdGRkZGRkZGX2JhZF9wYXJhbSgpIiwKLSAgICAgICAgICAgICAgc3J0cF9jYWxj
X2FlYWRfaXZfc3J0Y3Bfc2VxX251bV9vdmVyXzB4N0ZGRkZGRkZfYmFkX3BhcmFtfSwKLSAgICAg
ICAgICAgICB7InNydHBfY2FsY19hZWFkX2l2X3NydGNwX2Rpc3RpbmN0X2l2X3Blcl9zZXF1ZW5j
ZV9udW1iZXIoKSIsCi0gICAgICAgICAgICAgIHNydHBfY2FsY19hZWFkX2l2X3NydGNwX2Rpc3Rp
bmN0X2l2X3Blcl9zZXF1ZW5jZV9udW1iZXJ9LAotICAgICAgICAgICAgIHtOVUxMfSAvKiBFbmQg
b2YgdGVzdHMgKi99OworVEVTVF9MSVNUID0geyB7ICJzcnRwX2NhbGNfYWVhZF9pdl9zcnRjcF9h
bGxfemVyb19pbnB1dF95aWVsZF96ZXJvX291dHB1dCgpIiwKKyAgICAgICAgICAgICAgICBzcnRw
X2NhbGNfYWVhZF9pdl9zcnRjcF9hbGxfemVyb19pbnB1dF95aWVsZF96ZXJvX291dHB1dCB9LAor
ICAgICAgICAgICAgICB7ICJzcnRwX2NhbGNfYWVhZF9pdl9zcnRjcF9zZXFfbnVtX292ZXJfMHg3
RkZGRkZGRl9iYWRfcGFyYW0oKSIsCisgICAgICAgICAgICAgICAgc3J0cF9jYWxjX2FlYWRfaXZf
c3J0Y3Bfc2VxX251bV9vdmVyXzB4N0ZGRkZGRkZfYmFkX3BhcmFtIH0sCisgICAgICAgICAgICAg
IHsgInNydHBfY2FsY19hZWFkX2l2X3NydGNwX2Rpc3RpbmN0X2l2X3Blcl9zZXF1ZW5jZV9udW1i
ZXIoKSIsCisgICAgICAgICAgICAgICAgc3J0cF9jYWxjX2FlYWRfaXZfc3J0Y3BfZGlzdGluY3Rf
aXZfcGVyX3NlcXVlbmNlX251bWJlciB9LAorICAgICAgICAgICAgICB7IE5VTEwgfSAvKiBFbmQg
b2YgdGVzdHMgKi8gfTsKIAogLyoKICAqIEltcGxlbWVudGF0aW9uLgpAQCAtMTQ2LDkgKzE0Niw5
IEBAIHZvaWQgc3J0cF9jYWxjX2FlYWRfaXZfc3J0Y3Bfc2VxX251bV9vdmVyXzB4N0ZGRkZGRkZf
YmFkX3BhcmFtKCkKICAqLwogdm9pZCBzcnRwX2NhbGNfYWVhZF9pdl9zcnRjcF9kaXN0aW5jdF9p
dl9wZXJfc2VxdWVuY2VfbnVtYmVyKCkKIHsKKyNkZWZpbmUgU0FNUExFX0NPVU5UICgzKQogICAg
IC8vIFByZWNvbmRpdGlvbnMKICAgICAvLyBUZXN0IGVhY2ggc2lnbmlmaWNhbnQgYml0IGhpZ2gg
aW4gZWFjaCBmdWxsIGJ5dGUuCi0gICAgI2RlZmluZSBTQU1QTEVfQ09VTlQgKDMpCiAgICAgc3J0
cF9zZXNzaW9uX2tleXNfdCBzZXNzaW9uX2tleXM7CiAgICAgc3J0Y3BfaGRyX3QgaGVhZGVyOwog
ICAgIHYxMjhfdCBvdXRwdXRfaXZbU0FNUExFX0NPVU5UXTsKQEAgLTE3MywxMyArMTczLDEzIEBA
IHZvaWQgc3J0cF9jYWxjX2FlYWRfaXZfc3J0Y3BfZGlzdGluY3RfaXZfcGVyX3NlcXVlbmNlX251
bWJlcigpCiAgICAgc2l6ZV90IGkgPSAwOwogICAgIGZvciAoaSA9IDA7IGkgPCBTQU1QTEVfQ09V
TlQ7IGkrKykgewogICAgICAgICBURVNUX0NIRUNLKHNydHBfY2FsY19hZWFkX2l2X3NydGNwKCZz
ZXNzaW9uX2tleXMsICZvdXRwdXRfaXZbaV0sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgc2VxdWVuY2VfbnVtW2ldLCAmaGVhZGVyKQotICAgICAgICAgICAgICAg
ICAgID09IHNydHBfZXJyX3N0YXR1c19vayk7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgc2VxdWVuY2VfbnVtW2ldLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICZoZWFkZXIpID09IHNydHBfZXJyX3N0YXR1c19vayk7CiAgICAg
fQogCiAgICAgLy8gVGhlbiBhbGwgSVZzIGFyZSBhcyBleHBlY3RlZAogICAgIGZvciAoaSA9IDA7
IGkgPCBTQU1QTEVfQ09VTlQ7IGkrKykgewogICAgICAgICBURVNUX0NIRUNLKG1lbWNtcCgmZmlu
YWxfaXZbaV0sICZvdXRwdXRfaXZbaV0sIHNpemVvZih2MTI4X3QpKSA9PSAwKTsKICAgICB9Ci0g
ICAgI3VuZGVmIFNBTVBMRV9DT1VOVAorI3VuZGVmIFNBTVBMRV9DT1VOVAogfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRw
L3Rlc3QvdXRpbC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJzcnRwL3Rlc3QvdXRpbC5jCmluZGV4IDc1MmE2YTRjN2E4NGZlM2EwYzFhMDk4N2Nm
ZWRmYmJkZWIyMTZlNjYuLmViMjAzZjRjNGFmZWU5ODJiYjI0OTM4MGFlNjYxZTE0MTc3MDFhMzYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvbGlic3J0cC90ZXN0L3V0aWwuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvdGVzdC91dGlsLmMKQEAgLTQ5LDM4ICs0OSw2MSBA
QAogCiBjaGFyIGJpdF9zdHJpbmdbTUFYX1BSSU5UX1NUUklOR19MRU5dOwogCi1zdGF0aWMgaW5s
aW5lIGludCBoZXhfY2hhcl90b19uaWJibGUgKHVpbnQ4X3QgYykKK3N0YXRpYyBpbmxpbmUgaW50
IGhleF9jaGFyX3RvX25pYmJsZSh1aW50OF90IGMpCiB7CiAgICAgc3dpdGNoIChjKSB7Ci0gICAg
Y2FzZSAoJzAnKTogcmV0dXJuIDB4MDsKLSAgICBjYXNlICgnMScpOiByZXR1cm4gMHgxOwotICAg
IGNhc2UgKCcyJyk6IHJldHVybiAweDI7Ci0gICAgY2FzZSAoJzMnKTogcmV0dXJuIDB4MzsKLSAg
ICBjYXNlICgnNCcpOiByZXR1cm4gMHg0OwotICAgIGNhc2UgKCc1Jyk6IHJldHVybiAweDU7Ci0g
ICAgY2FzZSAoJzYnKTogcmV0dXJuIDB4NjsKLSAgICBjYXNlICgnNycpOiByZXR1cm4gMHg3Owot
ICAgIGNhc2UgKCc4Jyk6IHJldHVybiAweDg7Ci0gICAgY2FzZSAoJzknKTogcmV0dXJuIDB4OTsK
LSAgICBjYXNlICgnYScpOiByZXR1cm4gMHhhOwotICAgIGNhc2UgKCdBJyk6IHJldHVybiAweGE7
Ci0gICAgY2FzZSAoJ2InKTogcmV0dXJuIDB4YjsKLSAgICBjYXNlICgnQicpOiByZXR1cm4gMHhi
OwotICAgIGNhc2UgKCdjJyk6IHJldHVybiAweGM7Ci0gICAgY2FzZSAoJ0MnKTogcmV0dXJuIDB4
YzsKLSAgICBjYXNlICgnZCcpOiByZXR1cm4gMHhkOwotICAgIGNhc2UgKCdEJyk6IHJldHVybiAw
eGQ7Ci0gICAgY2FzZSAoJ2UnKTogcmV0dXJuIDB4ZTsKLSAgICBjYXNlICgnRScpOiByZXR1cm4g
MHhlOwotICAgIGNhc2UgKCdmJyk6IHJldHVybiAweGY7Ci0gICAgY2FzZSAoJ0YnKTogcmV0dXJu
IDB4ZjsKLSAgICBkZWZhdWx0OiByZXR1cm4gLTE7IC8qIHRoaXMgZmxhZ3MgYW4gZXJyb3IgKi8K
KyAgICBjYXNlICgnMCcpOgorICAgICAgICByZXR1cm4gMHgwOworICAgIGNhc2UgKCcxJyk6Cisg
ICAgICAgIHJldHVybiAweDE7CisgICAgY2FzZSAoJzInKToKKyAgICAgICAgcmV0dXJuIDB4MjsK
KyAgICBjYXNlICgnMycpOgorICAgICAgICByZXR1cm4gMHgzOworICAgIGNhc2UgKCc0Jyk6Cisg
ICAgICAgIHJldHVybiAweDQ7CisgICAgY2FzZSAoJzUnKToKKyAgICAgICAgcmV0dXJuIDB4NTsK
KyAgICBjYXNlICgnNicpOgorICAgICAgICByZXR1cm4gMHg2OworICAgIGNhc2UgKCc3Jyk6Cisg
ICAgICAgIHJldHVybiAweDc7CisgICAgY2FzZSAoJzgnKToKKyAgICAgICAgcmV0dXJuIDB4ODsK
KyAgICBjYXNlICgnOScpOgorICAgICAgICByZXR1cm4gMHg5OworICAgIGNhc2UgKCdhJyk6Cisg
ICAgICAgIHJldHVybiAweGE7CisgICAgY2FzZSAoJ0EnKToKKyAgICAgICAgcmV0dXJuIDB4YTsK
KyAgICBjYXNlICgnYicpOgorICAgICAgICByZXR1cm4gMHhiOworICAgIGNhc2UgKCdCJyk6Cisg
ICAgICAgIHJldHVybiAweGI7CisgICAgY2FzZSAoJ2MnKToKKyAgICAgICAgcmV0dXJuIDB4YzsK
KyAgICBjYXNlICgnQycpOgorICAgICAgICByZXR1cm4gMHhjOworICAgIGNhc2UgKCdkJyk6Cisg
ICAgICAgIHJldHVybiAweGQ7CisgICAgY2FzZSAoJ0QnKToKKyAgICAgICAgcmV0dXJuIDB4ZDsK
KyAgICBjYXNlICgnZScpOgorICAgICAgICByZXR1cm4gMHhlOworICAgIGNhc2UgKCdFJyk6Cisg
ICAgICAgIHJldHVybiAweGU7CisgICAgY2FzZSAoJ2YnKToKKyAgICAgICAgcmV0dXJuIDB4ZjsK
KyAgICBjYXNlICgnRicpOgorICAgICAgICByZXR1cm4gMHhmOworICAgIGRlZmF1bHQ6CisgICAg
ICAgIHJldHVybiAtMTsgLyogdGhpcyBmbGFncyBhbiBlcnJvciAqLwogICAgIH0KICAgICAvKiBO
T1RSRUFDSEVEICovCiAgICAgcmV0dXJuIC0xOyAvKiB0aGlzIGtlZXBzIGNvbXBpbGVycyBmcm9t
IGNvbXBsYWluaW5nICovCiB9CiAKLXVpbnQ4X3QgbmliYmxlX3RvX2hleF9jaGFyICh1aW50OF90
IG5pYmJsZSkKK3VpbnQ4X3QgbmliYmxlX3RvX2hleF9jaGFyKHVpbnQ4X3QgbmliYmxlKQogewog
ICAgIGNoYXIgYnVmWzE2XSA9IHsgJzAnLCAnMScsICcyJywgJzMnLCAnNCcsICc1JywgJzYnLCAn
NycsCiAgICAgICAgICAgICAgICAgICAgICAnOCcsICc5JywgJ2EnLCAnYicsICdjJywgJ2QnLCAn
ZScsICdmJyB9OwpAQCAtOTIsNyArMTE1LDcgQEAgdWludDhfdCBuaWJibGVfdG9faGV4X2NoYXIg
KHVpbnQ4X3QgbmliYmxlKQogICogaGV4X3N0cmluZ190b19vY3RldF9zdHJpbmcgY29udmVydHMg
YSBoZXhhZGVjaW1hbCBzdHJpbmcKICAqIG9mIGxlbmd0aCAyICogbGVuIHRvIGEgcmF3IG9jdGV0
IHN0cmluZyBvZiBsZW5ndGggbGVuCiAgKi8KLWludCBoZXhfc3RyaW5nX3RvX29jdGV0X3N0cmlu
ZyAoY2hhciAqcmF3LCBjaGFyICpoZXgsIGludCBsZW4pCitpbnQgaGV4X3N0cmluZ190b19vY3Rl
dF9zdHJpbmcoY2hhciAqcmF3LCBjaGFyICpoZXgsIGludCBsZW4pCiB7CiAgICAgdWludDhfdCB4
OwogICAgIGludCB0bXA7CkBAIC0xMTgsOSArMTQxLDkgQEAgaW50IGhleF9zdHJpbmdfdG9fb2N0
ZXRfc3RyaW5nIChjaGFyICpyYXcsIGNoYXIgKmhleCwgaW50IGxlbikKICAgICByZXR1cm4gaGV4
X2xlbjsKIH0KIAotY2hhciAqIG9jdGV0X3N0cmluZ19oZXhfc3RyaW5nIChjb25zdCB2b2lkICpz
LCBpbnQgbGVuZ3RoKQorY2hhciAqb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcoY29uc3Qgdm9pZCAq
cywgaW50IGxlbmd0aCkKIHsKLSAgICBjb25zdCB1aW50OF90ICpzdHIgPSAoY29uc3QgdWludDhf
dCopczsKKyAgICBjb25zdCB1aW50OF90ICpzdHIgPSAoY29uc3QgdWludDhfdCAqKXM7CiAgICAg
aW50IGk7CiAKICAgICAvKiBkb3VibGUgbGVuZ3RoLCBzaW5jZSBvbmUgb2N0ZXQgdGFrZXMgdHdv
IGhleCBjaGFyYWN0ZXJzICovCkBAIC0xMzIsNyArMTU1LDcgQEAgY2hhciAqIG9jdGV0X3N0cmlu
Z19oZXhfc3RyaW5nIChjb25zdCB2b2lkICpzLCBpbnQgbGVuZ3RoKQogICAgIH0KIAogICAgIGZv
ciAoaSA9IDA7IGkgPCBsZW5ndGg7IGkgKz0gMikgewotICAgICAgICBiaXRfc3RyaW5nW2ldICAg
PSBuaWJibGVfdG9faGV4X2NoYXIoKnN0ciA+PiA0KTsKKyAgICAgICAgYml0X3N0cmluZ1tpXSA9
IG5pYmJsZV90b19oZXhfY2hhcigqc3RyID4+IDQpOwogICAgICAgICBiaXRfc3RyaW5nW2kgKyAx
XSA9IG5pYmJsZV90b19oZXhfY2hhcigqc3RyKysgJiAweEYpOwogICAgIH0KICAgICBiaXRfc3Ry
aW5nW2ldID0gMDsgLyogbnVsbCB0ZXJtaW5hdGUgc3RyaW5nICovCkBAIC0xNDIsOSArMTY1LDkg
QEAgY2hhciAqIG9jdGV0X3N0cmluZ19oZXhfc3RyaW5nIChjb25zdCB2b2lkICpzLCBpbnQgbGVu
Z3RoKQogc3RhdGljIGNvbnN0IGNoYXIgYjY0Y2hhcnNbXSA9ICJBQkNERUZHSElKS0xNTk9QUVJT
VFVWV1hZWiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiYWJjZGVmZ2hpamtsbW5v
cHFyc3R1dnd4eXowMTIzNDU2Nzg5Ky8iOwogCi1zdGF0aWMgaW50IGJhc2U2NF9ibG9ja190b19v
Y3RldF90cmlwbGUgKGNoYXIgKm91dCwgY2hhciAqaW4pCitzdGF0aWMgaW50IGJhc2U2NF9ibG9j
a190b19vY3RldF90cmlwbGUoY2hhciAqb3V0LCBjaGFyICppbikKIHsKLSAgICB1bnNpZ25lZCBj
aGFyIHNleHRldHNbNF0gPSB7MH07CisgICAgdW5zaWduZWQgY2hhciBzZXh0ZXRzWzRdID0geyAw
IH07CiAgICAgaW50IGogPSAwOwogICAgIGludCBpOwogCkBAIC0xNTIsNyArMTc1LDkgQEAgc3Rh
dGljIGludCBiYXNlNjRfYmxvY2tfdG9fb2N0ZXRfdHJpcGxlIChjaGFyICpvdXQsIGNoYXIgKmlu
KQogICAgICAgICBjaGFyICpwID0gc3RyY2hyKGI2NGNoYXJzLCBpbltpXSk7CiAgICAgICAgIGlm
IChwICE9IE5VTEwpIHsKICAgICAgICAgICAgIHNleHRldHNbaV0gPSBwIC0gYjY0Y2hhcnM7Ci0g
ICAgICAgIH0gZWxzZXsgIGorKzsgfQorICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgaisr
OworICAgICAgICB9CiAgICAgfQogCiAgICAgb3V0WzBdID0gKHNleHRldHNbMF0gPDwgMikgfCAo
c2V4dGV0c1sxXSA+PiA0KTsKQEAgLTE2NSw3ICsxOTAsNyBAQCBzdGF0aWMgaW50IGJhc2U2NF9i
bG9ja190b19vY3RldF90cmlwbGUgKGNoYXIgKm91dCwgY2hhciAqaW4pCiAgICAgcmV0dXJuIGo7
CiB9CiAKLWludCBiYXNlNjRfc3RyaW5nX3RvX29jdGV0X3N0cmluZyAoY2hhciAqb3V0LCBpbnQg
KnBhZCwgY2hhciAqaW4sIGludCBsZW4pCitpbnQgYmFzZTY0X3N0cmluZ190b19vY3RldF9zdHJp
bmcoY2hhciAqb3V0LCBpbnQgKnBhZCwgY2hhciAqaW4sIGludCBsZW4pCiB7CiAgICAgaW50IGsg
PSAwOwogICAgIGludCBpID0gMDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC90ZXN0L3V0aWwuaCBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC90ZXN0L3V0aWwuaApp
bmRleCBkYjU4YzI0NjYxY2RjNDU1ZGM4NzRkOWJiMTRmMDhlYTA4MWJkNTY3Li5kMDRiMjc5YjNh
M2EzOWUyMmJhOWZmMmVmNWEyOTQ1NTI1NWY2NWEzIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvdGVzdC91dGlsLmgKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRw
L3Rlc3QvdXRpbC5oCkBAIC00Nyw3ICs0Nyw3IEBACiAjZGVmaW5lIE1BWF9QUklOVF9TVFJJTkdf
TEVOIDEwMjQKIAogaW50IGhleF9zdHJpbmdfdG9fb2N0ZXRfc3RyaW5nKGNoYXIgKnJhdywgY2hh
ciAqaGV4LCBpbnQgbGVuKTsKLWNoYXIgKiBvY3RldF9zdHJpbmdfaGV4X3N0cmluZyhjb25zdCB2
b2lkICpzLCBpbnQgbGVuZ3RoKTsKK2NoYXIgKm9jdGV0X3N0cmluZ19oZXhfc3RyaW5nKGNvbnN0
IHZvaWQgKnMsIGludCBsZW5ndGgpOwogaW50IGJhc2U2NF9zdHJpbmdfdG9fb2N0ZXRfc3RyaW5n
KGNoYXIgKnJhdywgaW50ICpwYWQsIGNoYXIgKmJhc2U2NCwgaW50IGxlbik7CiAKICNlbmRpZgpk
aWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL2xpYndlYnJ0Yy54Y29kZXBy
b2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL2xpYndlYnJ0
Yy54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDc5NDEwNDQ5MDdlNzRlZjliNTNhYzVl
YjY4ZjllOTUyM2JkZjQ3Y2MuLjIyOTI4MmNhN2NkOTRjMjdkZWRlMjdhOTA2N2I4MWQwM2JhMDU4
NGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9saWJ3ZWJydGMueGNv
ZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
bGlid2VicnRjLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTU0Niw2ICs1NDYsNyBAQAog
CQk0MTU0NDlCNjIxQ0FDNENFMDAxQzBBNTUgLyogdXRpbC5jIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDE1NDQ5QjUyMUNBQzRDRTAwMUMwQTU1IC8qIHV0
aWwuYyAqLzsgfTsKIAkJNDE1NDQ5QjgyMUNBQzRFQzAwMUMwQTU1IC8qIHAyNTYuYyBpbiBTb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxNTQ0OUI3MjFDQUM0RUMw
MDFDMEE1NSAvKiBwMjU2LmMgKi87IH07CiAJCTQxNTQ0OUJCMjFDQUM1QjQwMDFDMEE1NSAvKiBl
Y2RoX2V4dHJhLmMgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA0MTU0NDlCQTIxQ0FDNUIzMDAxQzBBNTUgLyogZWNkaF9leHRyYS5jICovOyB9OworCQk0MTU0
NDlCQzIxQ0FDOEUwMDAxQzBBNTUgLyogc3J0cHNlc3Npb24uY2MgaW4gU291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MTlDODJEMDFGRTIwRTU2MDA0MEMzMEYgLyog
c3J0cHNlc3Npb24uY2MgKi87IH07CiAJCTQxNUYxRkE2MjEyNzJGQkEwMDA2NENCRiAvKiBhZGFw
dGl2ZV9kaWdpdGFsX2dhaW5fYXBwbGllci5jYyBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDQxQTA4QkU0MjEyNzJGODUwMDFENUQ3QiAvKiBhZGFwdGl2ZV9k
aWdpdGFsX2dhaW5fYXBwbGllci5jYyAqLzsgfTsKIAkJNDE1RjFGQTcyMTI3MkZCQTAwMDY0Q0JG
IC8qIGFkYXB0aXZlX2RpZ2l0YWxfZ2Fpbl9hcHBsaWVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MUEwOEJEQjIxMjcyRjg0MDAxRDVEN0IgLyogYWRh
cHRpdmVfZGlnaXRhbF9nYWluX2FwcGxpZXIuaCAqLzsgfTsKIAkJNDE1RjFGQTgyMTI3MkZCQTAw
MDY0Q0JGIC8qIGFkYXB0aXZlX21vZGVfbGV2ZWxfZXN0aW1hdG9yX2FnYy5jYyBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxQTA4QkU5MjEyNzJGODYwMDFE
NUQ3QiAvKiBhZGFwdGl2ZV9tb2RlX2xldmVsX2VzdGltYXRvcl9hZ2MuY2MgKi87IH07CkBAIC04
NDMsNyArODQ0LDYgQEAKIAkJNDE5QzgyREIxRkUyMEU1OTAwNDBDMzBGIC8qIHJ0cHRyYW5zcG9y
dGludGVybmFsYWRhcHRlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNDE5QzgyQ0QxRkUyMEU1NTAwNDBDMzBGIC8qIHJ0cHRyYW5zcG9ydGludGVybmFs
YWRhcHRlci5oICovOyB9OwogCQk0MTlDODJEQzFGRTIwRTU5MDA0MEMzMEYgLyogc2RwdXRpbHMu
Y2MgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MTlDODJD
RTFGRTIwRTU1MDA0MEMzMEYgLyogc2RwdXRpbHMuY2MgKi87IH07CiAJCTQxOUM4MkREMUZFMjBF
NTkwMDQwQzMwRiAvKiBzZHB1dGlscy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gNDE5QzgyQ0YxRkUyMEU1NjAwNDBDMzBGIC8qIHNkcHV0aWxzLmggKi87
IH07Ci0JCTQxOUM4MkRFMUZFMjBFNTkwMDQwQzMwRiAvKiBzcnRwc2Vzc2lvbi5jYyBpbiBTb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxOUM4MkQwMUZFMjBFNTYw
MDQwQzMwRiAvKiBzcnRwc2Vzc2lvbi5jYyAqLzsgfTsKIAkJNDE5QzgyREYxRkUyMEU1OTAwNDBD
MzBGIC8qIHNydHB0cmFuc3BvcnQuY2MgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA0MTlDODJEMTFGRTIwRTU2MDA0MEMzMEYgLyogc3J0cHRyYW5zcG9ydC5j
YyAqLzsgfTsKIAkJNDE5QzgyRTAxRkUyMEU1OTAwNDBDMzBGIC8qIGR0bHNzcnRwdHJhbnNwb3J0
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MTlDODJE
MjFGRTIwRTU3MDA0MEMzMEYgLyogZHRsc3NydHB0cmFuc3BvcnQuaCAqLzsgfTsKIAkJNDE5Qzgy
RTExRkUyMEU1OTAwNDBDMzBGIC8qIHNydHBzZXNzaW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MTlDODJEMzFGRTIwRTU3MDA0MEMzMEYgLyogc3J0
cHNlc3Npb24uaCAqLzsgfTsKQEAgLTE1NzUxLDYgKzE1NzUxLDcgQEAKIAkJCQk1QzA4OEMxRTFF
NEFBNDQ0MDA0MDM5OTUgLyogcnRjcG11eGZpbHRlci5jYyBpbiBTb3VyY2VzICovLAogCQkJCTVD
MDg4QzIwMUU0QUE0NDQwMDQwMzk5NSAvKiBzcnRwZmlsdGVyLmNjIGluIFNvdXJjZXMgKi8sCiAJ
CQkJNDEyMzlCNEQyMTQ3NzQzQTAwMzk2RjgxIC8qIHZpZGVvX3N0cmVhbV9lbmNvZGVyX2NyZWF0
ZS5jYyBpbiBTb3VyY2VzICovLAorCQkJCTQxNTQ0OUJDMjFDQUM4RTAwMDFDMEE1NSAvKiBzcnRw
c2Vzc2lvbi5jYyBpbiBTb3VyY2VzICovLAogCQkJKTsKIAkJCXJ1bk9ubHlGb3JEZXBsb3ltZW50
UG9zdHByb2Nlc3NpbmcgPSAwOwogCQl9OwpAQCAtMTcxMTcsNyArMTcxMTgsNiBAQAogCQkJCTVD
REQ4MzVGMUU0MzI1NzIwMDYyMUU5MiAvKiBzcHNfcGFyc2VyLmNjIGluIFNvdXJjZXMgKi8sCiAJ
CQkJNUNERDgzNjIxRTQzMjU3MjAwNjIxRTkyIC8qIHNwc192dWlfcmV3cml0ZXIuY2MgaW4gU291
cmNlcyAqLywKIAkJCQk1Q0REODY3MjFFNDNCOEI1MDA2MjFFOTIgLyogc3FydF9vZl9vbmVfbWlu
dXNfeF9zcXVhcmVkLmMgaW4gU291cmNlcyAqLywKLQkJCQk0MTlDODJERTFGRTIwRTU5MDA0MEMz
MEYgLyogc3J0cHNlc3Npb24uY2MgaW4gU291cmNlcyAqLywKIAkJCQk0MTlDODJERjFGRTIwRTU5
MDA0MEMzMEYgLyogc3J0cHRyYW5zcG9ydC5jYyBpbiBTb3VyY2VzICovLAogCQkJCTQxOUM4NDVF
MUZFMjU1RkEwMDQwQzMwRiAvKiBzc2xfYWVhZF9jdHguY2MgaW4gU291cmNlcyAqLywKIAkJCQk0
MTlDODQ3NDFGRTI1NUZBMDA0MEMzMEYgLyogc3NsX2FzbjEuY2MgaW4gU291cmNlcyAqLywK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>357710</attachid>
            <date>2018-12-19 12:36:56 -0800</date>
            <delta_ts>2018-12-20 16:02:57 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-192861-20181219123653.patch</filename>
            <type>text/plain</type>
            <size>966473</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM5MjgyCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvQ2hhbmdlTG9nIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL0NoYW5n
ZUxvZwppbmRleCA2ZTcxMDg2MGNjMmI3N2Y5MWYxZjkxNTUzZGU4OTQxYWJmYTBkNDc0Li40ZjM1
NGE0OWI1ZDA2MGEzMDhmYWNjZDA1MDM5NzRjZTE5NjQyNTEzIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMiBAQAorMjAxOC0xMi0xOSAgWW91ZW5uIEZh
YmxldCAgPHlvdWVubkBhcHBsZS5jb20+CisKKyAgICAgICAgUmVzeW5jIGxpYnNydHAgdG8gTTcy
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTI4NjEK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFNvdXJj
ZS90aGlyZF9wYXJ0eS9saWJzcnRwLzogUmVzeW5jZWQgdG8gQ2hyb21lIE03MiBicmFuY2guCisK
IDIwMTgtMTItMTUgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAg
IE1ha2UgUlRDUnRwU2VuZGVyLnNldFBhcmFtZXRlcnMgdG8gYWN0aXZhdGUgc3BlY2lmaWMgZW5j
b2RpbmdzCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvQ29uZmlndXJh
dGlvbnMvbGlid2VicnRjcGNydGMueGNjb25maWcgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvQ29uZmlndXJhdGlvbnMvbGlid2VicnRjcGNydGMueGNjb25maWcKaW5kZXggOWFmOWIxZjVm
MzZlM2ExZDVlODQ5NjY5YjUxMjFhYTRhYzBlMmJhYi4uNWE4MmMxM2I3ZGFlMzE4NjI3MTVkNjc4
ZjFhMTFmYmVjMzY4NDA5MyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L0NvbmZpZ3VyYXRpb25zL2xpYndlYnJ0Y3BjcnRjLnhjY29uZmlnCisrKyBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Db25maWd1cmF0aW9ucy9saWJ3ZWJydGNwY3J0Yy54Y2NvbmZpZwpA
QCAtMTIsNyArMTIsNyBAQCBJTlNUQUxMX1BBVEggPSAvdXNyL2xvY2FsL2xpYjsKIFBVQkxJQ19I
RUFERVJTX0ZPTERFUl9QQVRIID0gL3Vzci9sb2NhbC9pbmNsdWRlL2xpYndlYnJ0YzsKIFVTRV9I
RUFERVJNQVAgPSBOTzsKIAotR0NDX1BSRVBST0NFU1NPUl9ERUZJTklUSU9OUyA9IFdFQlJUQ19Q
T1NJWCBXRUJSVENfTUFDIFNTTF9VU0VfT1BFTlNTTCBGRUFUVVJFX0VOQUJMRV9TU0wgSEFWRV9T
UlRQIEhBVkVfT1BFTlNTTF9TU0xfSCBTQ1RQX1BST0NFU1NfTEVWRUxfTE9DS1MgU0NUUF9TSU1Q
TEVfQUxMT0NBVE9SIFNDVFBfVVNFX09QRU5TU0xfU0hBMSBfX1VzZXJzcGFjZV9fIEhBVkVfU0Ff
TEVOIEhBVkVfU0NPTk5fTEVOIF9fQVBQTEVfVVNFX1JGQ18yMjkyIF9fVXNlcnNwYWNlX29zX0Rh
cndpbiBOT05fV0lORE9XU19ERUZJTkUgSEFWRV9XRUJSVENfVklERU8gSEFWRV9XRUJSVENfVk9J
Q0UgV0VCUlRDX0lOVEVMTElHSUJJTElUWV9FTkhBTkNFUj0wIFdFQlJUQ19BUE1fREVCVUdfRFVN
UD0wIFdFQlJUQ19OU19GTE9BVCBXRUJSVENfVVNFX0JVSUxUSU5fSUxCQyBXRUJSVENfQ09ERUNf
SUxCQyBXRUJSVENfVVNFX0JVSUxUSU5fT1BVUyBXRUJSVENfQ09ERUNfT1BVUyBXRUJSVENfQ09E
RUNfSVNBQyBXRUJSVENfQ09ERUNfUkVEIFJUQ19ESVNBQkxFX1ZQOSBIQVZFX1NURElOVF9IIEhB
VkVfU1RETElCX0ggSEFWRV9VSU5UNjRfVCBPUEVOU1NMIEhBVkVfQ09ORklHX0ggV0VCUlRDX1dF
QktJVF9CVUlMRCBIQVZFX1BUSFJFQURfQ09ORF9USU1FRFdBSVRfUkVMQVRJVkUgIEhBVkVfU0NU
UCAkKGluaGVyaXRlZCk7CitHQ0NfUFJFUFJPQ0VTU09SX0RFRklOSVRJT05TID0gV0VCUlRDX1BP
U0lYIFdFQlJUQ19NQUMgU1NMX1VTRV9PUEVOU1NMIEZFQVRVUkVfRU5BQkxFX1NTTCBIQVZFX1NS
VFAgSEFWRV9PUEVOU1NMX1NTTF9IIFNDVFBfUFJPQ0VTU19MRVZFTF9MT0NLUyBTQ1RQX1NJTVBM
RV9BTExPQ0FUT1IgU0NUUF9VU0VfT1BFTlNTTF9TSEExIF9fVXNlcnNwYWNlX18gSEFWRV9TQV9M
RU4gSEFWRV9TQ09OTl9MRU4gX19BUFBMRV9VU0VfUkZDXzIyOTIgX19Vc2Vyc3BhY2Vfb3NfRGFy
d2luIE5PTl9XSU5ET1dTX0RFRklORSBIQVZFX1dFQlJUQ19WSURFTyBIQVZFX1dFQlJUQ19WT0lD
RSBXRUJSVENfSU5URUxMSUdJQklMSVRZX0VOSEFOQ0VSPTAgV0VCUlRDX0FQTV9ERUJVR19EVU1Q
PTAgV0VCUlRDX05TX0ZMT0FUIFdFQlJUQ19VU0VfQlVJTFRJTl9JTEJDIFdFQlJUQ19DT0RFQ19J
TEJDIFdFQlJUQ19VU0VfQlVJTFRJTl9PUFVTIFdFQlJUQ19DT0RFQ19PUFVTIFdFQlJUQ19DT0RF
Q19JU0FDIFdFQlJUQ19DT0RFQ19SRUQgUlRDX0RJU0FCTEVfVlA5IEhBVkVfU1RESU5UX0ggSEFW
RV9TVERMSUJfSCBIQVZFX1VJTlQ2NF9UIE9QRU5TU0wgSEFWRV9DT05GSUdfSCBXRUJSVENfV0VC
S0lUX0JVSUxEIEhBVkVfUFRIUkVBRF9DT05EX1RJTUVEV0FJVF9SRUxBVElWRSBIQVZFX05FVElO
RVRfSU5fSCBIQVZFX1NDVFAgJChpbmhlcml0ZWQpOwogCiBHQ0NfUFJFUFJPQ0VTU09SX0RFRklO
SVRJT05TW3Nkaz1tYWNvc3gqXSA9ICQoaW5oZXJpdGVkKTsKIEdDQ19QUkVQUk9DRVNTT1JfREVG
SU5JVElPTlNbc2RrPWlwaG9uZW9zKl0gPSAkKGluaGVyaXRlZCkgV0VCUlRDX0lPUzsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGli
c3J0cC9CVUlMRC5nbiBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlic3J0cC9CVUlMRC5nbgppbmRleCA1ZDM4NmQ2Y2EwZjIyYWM0ZWY1N2FlOGZiYjA5
MmFkODM3MzdmZjJlLi42MzU5NTg1N2YwZTVhZDg1YzAzZmNhMDgwN2I1ZjU4OTk5OGQ1ZTA3IDEw
MDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L2xpYnNydHAvQlVJTEQuZ24KKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJzcnRwL0JVSUxELmduCkBAIC0zMyw3ICszMyw3IEBAIGNvbmZpZygi
bGlic3J0cF9jb25maWciKSB7CiAgICAgIkhBVkVfVUlOVDY0X1QiLAogICAgICJIQVZFX1VJTlQ4
X1QiLAogICBdCi0gIGlmIChpc19wb3NpeCkgeworICBpZiAoaXNfcG9zaXggfHwgaXNfZnVjaHNp
YSkgewogICAgIGRlZmluZXMgKz0gWwogICAgICAgIkhBVkVfQVJQQV9JTkVUX0giLAogICAgICAg
IkhBVkVfTkVUSU5FVF9JTl9IIiwKQEAgLTgwLDYgKzgwLDcgQEAgc3RhdGljX2xpYnJhcnkoImxp
YnNydHAiKSB7CiAgICAgImNyeXB0by9pbmNsdWRlL2FsbG9jLmgiLAogICAgICJjcnlwdG8vaW5j
bHVkZS9hdXRoLmgiLAogICAgICJjcnlwdG8vaW5jbHVkZS9jaXBoZXIuaCIsCisgICAgImNyeXB0
by9pbmNsdWRlL2NpcGhlcl90eXBlcy5oIiwKICAgICAiY3J5cHRvL2luY2x1ZGUvY3J5cHRvX2tl
cm5lbC5oIiwKICAgICAiY3J5cHRvL2luY2x1ZGUvY3J5cHRvX3R5cGVzLmgiLAogICAgICJjcnlw
dG8vaW5jbHVkZS9kYXRhdHlwZXMuaCIsCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvQ0hBTkdFUyBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9DSEFOR0VTCmluZGV4
IGEzMjNhZjE5NjVkZDAxNjliNGZkYTdmNjMyM2E2NDM2ZjU0MWQ4MjguLmNhYTJiNjExMzljNjg4
ZmE2OWU4MjUyMmM1YTRmZDE0MjM0OTM4ZWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9DSEFOR0VTCisrKyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9DSEFOR0VT
CkBAIC0xLDUgKzEsNjUgQEAKIENoYW5nZWxvZwogCisyLjIuMC1wcmUgKFRoaXMgdmVyc2lvbikK
KworTWFqb3IgY2hhbmdlcworCitBbGwgY29kZSBoYXMgYmVlbiByZWZvcm1hdHRlZCB0byBiZSBj
b25zaXN0ZW50LiBBIC5jbGFuZy1mb3JtYXQgZmlsZSBhbmQgZm9ybWF0LnNoIHNjcmlwdCBoYXMg
YmVlbiBhZGRlZCB0aGF0IGNhbiBiZSB1c2UgdG8gdmVyaWZ5IGFuZCBlbmZvcmNlIGNvbnNpc3Rl
bnQgZm9ybWF0dGluZy4gQW4gYXV0b21hdGVkIGNoZWNrIG9uIGNvZGUgZm9ybWF0dGluZyBpcyBu
b3cgcGFydCBvZiB0cmF2aXMgYnVpbGQuCisKK090aGVyIGNoYW5nZXMKKworUFIgIzQwOSAtIENv
bXBhdGliaWx0eSB3aXRoIExpYnJlU1NMCisKK1BSICM0MDYgLSBGaXggdW5wcm90ZWN0IHdoZW4g
cGt0bGVuIDwgKDIqbWtpX3NpemUgKyB0YWdfbGVuKQorCitQUiAjNDA1IC0gUHJldmVudCBwb3Rl
bnRpYWwgZG91YmxlIGZyZWUKKworUFIgIzQwNCAtIEFkZCBiYWNrIGV4dGVybiB0byBnbG9iYWwg
dmFyaWFibGVzCisKK1BSICM0MDMgLSBTZXQgZ2NtIElWIGRpcmVjdGx5IHdpdGggRVZQX0NpcGhl
ckluaXRfZXgKKworUFIgIzQwMSAtIEZpeCBtZW1vcnkgYWNjZXNzIGlzc3VlIGluIHNydHBfZ2V0
X3Nlc3Npb25fa2V5cygpCisKK1BSICMzOTggLSBGaXggbWVtb3J5IGFjY2VzcyBmaXhlcyB3aGVu
IGludmFsaWQgcHJvZmlsZXMgd2hlcmUgdXNlZAorCitQUiAjMzkxIC0gUmV0dXJuIE5VTEwgd2hl
biBhbGxvY2F0aW5nIG1lbW9yeSBvZiBzaXplIHplcm8KKworUFIgIzM5MCAtIEJpdHZlY3RvciBv
ZiBsZW5ndGggemVybyBpcyBub3QgdmFsaWQKKworUFIgIzM4NSAtIFRyZWF0IHdhcm5pbmdzIGFz
IGVycm9ycyBvbiB0cmF2aXMgYnVpbGRzCisKK1BSICMzODggLSBNb3ZlZCBleHRlcm5zIGZyb20g
Y3J5cHRvX2tlcm5lbCBpbnRvIGl0cyBvd24gaGVhZGVyCisKK1BSICMzNzkgLSBGaXhlZCBzZXZl
cmFsIGNvbXBpbGVyIHdhcm5pbmdzIGZyb20gRmlyZWZveCBidWlsZHMKKworUFIgIzM3NyAtIFJl
bW92ZWQgdmFyaWFibGUgaW5pdCBjb2RlIGluIHJkYnggd2hpY2ggbmV2ZXIgZ2V0cyB1c2VkCisK
K1BSICMzODEgLSBBZGRlZCBlcnJvciBpbiBjYXNlIHRoZSBwbGF0Zm9ybSBpcyBub3QgZGV0ZWN0
ZWQKKworUFIgIzM3NiAtIEFkZCBjb3Zlcml0eSBzY2FuIHRvIHRyYXZpcyBidWlsZHMKKworUFIg
IzM3NCAtIEFkZCBhIGJpZyBlbmRpYW4gYnVpbGQgb24gdHJhdmlzCisKK1BSICMzNzMgLSBGaXhl
ZCBidWZmZXIgc2l6ZSBpc3N1ZSBpbiB0ZXN0L3NydHBfZHJpdmVyLmMKKworUFIgIzM3MiAtIE1h
a2UgcnRwX2RlY29kZXIgY29tcGlsZSBvbiBNaW5HVworCitQUiAjMzY3IC0gUmVuYW1lIGNvbmZp
Z3VyZS5pbiB0byBjb25maWd1cmUuYWMKKworUFIgIzM2NSAtIFJlcGxhY2UgY2FsbHMgdG8gZnJl
ZSgpIHdpdGggc3J0cF9jcnlwdG9fZnJlZSgpCisKK1BSICMzNjQgLSBBZGQgdmFsZ3JpbmQgdG8g
dHJhdmlzIGFuZCBmaXggbGVha3MgaW4gdGVzdHMKKworUFIgIzM2MyAtIENoYW5nZSBzbXRwX2Ny
eXB0b19hbGxvYyB0byBpbml0aWFsaXplIG1lbW9yeSB0byB6ZXJvCisKK1BSICMzNTQgLSBGaXgg
cG90ZW50aWFsIGxlYWsgaWYgY2xvbmluZyBvZiBzdHJlYW0gZmFpbHMKKworUFIgIzM0MCAtIEZp
eCBwb3RlbnRpYWwgbGVhayBpbiBzcnRwX2FkZF9zdHJlYW0oKQorCitQUiAjMzIzIC0gRml4IHJ1
bm5pbmcgdGVzdCBpbiBvdXQgb2Ygc291cmNlIGJ1aWxkcworCitJc3N1ZSAjMzE2ICAtIFJlbW92
ZSBWRVJTSU9OIGZpbGUKKwogMi4xLjAKIAogQ29tcGF0aWJpbGl0eSBjaGFuZ2VzCkBAIC0xNjQs
NCArMjI0LDQgQEAgT3RoZXIgY2hhbmdlcwogCiAgIFBSICMzMDIgLSBGaXggd2FybmluZyByZWdh
cmRpbmcgdW51c2VkIHZhcmlhYmxlCiAKLSAgUFIgIzMwMyAtIE1ha2VmaWxlLmluOiBBZGQgZ251
IGFzIG1hdGNoIGZvciBzaGFyZWQgbGliIHN1ZmZpeApcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZp
bGUKKyAgUFIgIzMwMyAtIE1ha2VmaWxlLmluOiBBZGQgZ251IGFzIG1hdGNoIGZvciBzaGFyZWQg
bGliIHN1ZmZpeApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJzcnRwL0xJQlNSVFBfVkVSU0lPTiBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9MSUJTUlRQX1ZFUlNJT04KbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uNTQzMjI2MTQ4N2Y1Y2IwNGY4NDllM2I4ZDQ1MzJhNjdkYzc3MGVhNgotLS0gL2Rl
di9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvbGlic3J0cC9MSUJTUlRQX1ZFUlNJT04KQEAgLTAsMCArMSBAQAorMi4yLjAtcHJlCmRpZmYg
LS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnNydHAvT1dORVJTIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJzcnRwL09XTkVSUwppbmRleCBmZDY0M2VmZDFmZDRmNDM3MzUxZTcwNDFiY2ExODk5
ZDg4ZjFlYzJlLi5hNTU4Njc4NjczNzc4OTIyOGFkMzM1MzE5NWRiMTljMzNlOTBlYzAzIDEwMDY0
NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnNydHAvT1dORVJTCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlic3J0cC9PV05FUlMKQEAgLTEsMyArMSwyIEBACiBtYXR0ZHJAY2hyb21pdW0u
b3JnCi1ramVsbGFuZGVyQGNocm9taXVtLm9yZwogcGhvZ2x1bmRAY2hyb21pdW0ub3JnCmRpZmYg
LS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnNydHAvUkVBRE1FIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJzcnRwL1JFQURNRQpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZTY5ZGUy
OWJiMmQxZDY0MzRiOGIyOWFlNzc1YWQ4YzJlNDhjNTM5MS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL1JFQURNRS5jaHJvbWl1bSBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9SRUFETUUuY2hy
b21pdW0KaW5kZXggNzU0ZGRjZDM4NTk1YTZjNzZjYzI5MDQxMmU1M2RhMTI0ZTc2ODYxOC4uNGE2
NzNjNmE0OTAxMmViYjgyYzc3MGY4OTM0MWQ4OWJkYzNjOThkNyAxMDA2NDQKLS0tIGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL1JFQURNRS5j
aHJvbWl1bQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L2xpYnNydHAvUkVBRE1FLmNocm9taXVtCkBAIC0xLDYgKzEsNiBAQAogTmFtZTogbGlic3J0
cAogVVJMOiBodHRwczovL2dpdGh1Yi5jb20vY2lzY28vbGlic3J0cAotVmVyc2lvbjogOTNhYmEz
ZTc2NzUwMjM0M2MyNTVmYWQ4OTYyZGJmMGZmMjljNGNhNgorVmVyc2lvbjogOTRhYzAwZDVhYzY0
MDllM2Y2NDA5ZTRhNWVkZmNkYmRhYTdmZGFiZQogTGljZW5zZTogMy1jbGF1c2UgQlNECiBMaWNl
bnNlIEZpbGU6IExJQ0VOU0UKIFNlY3VyaXR5IENyaXRpY2FsOiBZZXMKQEAgLTEyLDMgKzEyLDQg
QEAgRGVzY3JpcHRpb246CiAKIExvY2FsIE1vZGlmaWNhdGlvbnM6CiAgIFJlbW92ZWQgbWFueSB1
bnVzZWQgZmlsZXMsIGUuZy4gYWxsIG5vbi1PcGVuU1NMIGNpcGhlciBpbXBsZW1lbnRhdGlvbnMu
CisgIFJlbmFtZWQgVkVSU0lPTiB0byBMSUJTUlRQX1ZFUlNJT04uCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvUkVBRE1F
Lm1kIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJz
cnRwL1JFQURNRS5tZAppbmRleCBiNjMyNjdhYzUwYjQ3NmI0NGIyOTY1NzlkYzU3NzliYTY5ZjI2
YWFmLi4zZjFlNWJiZmRlYmIyZTM0NzJjZmM5ZmRjZWRiZjgyMWY2NjI0Yzg0IDEwMDY0NAotLS0g
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAv
UkVBRE1FLm1kCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlic3J0cC9SRUFETUUubWQKQEAgLTEsMyArMSw2IEBACitbIVtCdWlsZCBTdGF0dXNd
KGh0dHBzOi8vdHJhdmlzLWNpLm9yZy9jaXNjby9saWJzcnRwLnN2Zz9icmFuY2g9bWFzdGVyKV0o
aHR0cHM6Ly90cmF2aXMtY2kub3JnL2Npc2NvL2xpYnNydHApCitbIVtDb3Zlcml0eSBTY2FuIEJ1
aWxkIFN0YXR1c10oaHR0cHM6Ly9zY2FuLmNvdmVyaXR5LmNvbS9wcm9qZWN0cy8xNDI3NC9iYWRn
ZS5zdmcpXShodHRwczovL3NjYW4uY292ZXJpdHkuY29tL3Byb2plY3RzL2Npc2NvLWxpYnNydHAp
CisKIDxhIG5hbWU9ImludHJvZHVjdGlvbi10by1saWJzcnRwIj48L2E+CiAjIEludHJvZHVjdGlv
biB0byBsaWJTUlRQCiAKQEAgLTUxLDYgKzU0LDcgQEAgYmVjYXVzZSBpdCBkb2VzIGl0cyB3b3Jr
IGJlaGluZCB0aGUgc2NlbmVzLgogICAtIFtTdXBwb3J0ZWQgRmVhdHVyZXNdKCNzdXBwb3J0ZWQt
ZmVhdHVyZXMpCiAgIC0gW0ltcGxlbWVudGF0aW9uIE5vdGVzXSgjaW1wbGVtZW50YXRpb24tbm90
ZXMpCiAtIFtJbnN0YWxsaW5nIGFuZCBCdWlsZGluZyBsaWJTUlRQXSgjaW5zdGFsbGluZy1hbmQt
YnVpbGRpbmctbGlic3J0cCkKKyAgLSBbQ2hhbmdpbmcgQnVpbGQgQ29uZmlndXJhdGlvbl0oI2No
YW5naW5nLWJ1aWxkLWNvbmZpZ3VyYXRpb24pCiAtIFtBcHBsaWNhdGlvbnNdKCNhcHBsaWNhdGlv
bnMpCiAgIC0gW0V4YW1wbGUgQ29kZV0oI2V4YW1wbGUtY29kZSkKIC0gW0NyZWRpdHNdKCNjcmVk
aXRzKQpAQCAtMjkxLDYgKzI5NSwyNiBAQCBPcGVuQlNEIChzcGFyYy11bmtub3duLW9wZW5ic2Qy
LjcpLgogCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCis8YSBuYW1lPSJjaGFuZ2luZy1idWls
ZC1jb25maWd1cmF0aW9uIj48L2E+CisjIyBDaGFuZ2luZyBCdWlsZCBDb25maWd1cmF0aW9uCisK
K1RvIGJ1aWxkIHRoZSBgLi9jb25maWd1cmVgIHNjcmlwdCBtZW50aW9uZWQgYWJvdmUsIGxpYlNS
VFAgcmVsaWVzIG9uIHRoZQorW2F1dG9tYWtlXShodHRwczovL3d3dy5nbnUub3JnL3NvZnR3YXJl
L2F1dG9tYWtlLykgdG9vbGNoYWluLiAgU2luY2UKK2AuL2NvbmZpZ3VyZWAgaXMgYnVpbHQgZnJv
bSBgY29uZmlndXJlLmluYCBieSBhdXRvbWFrZSwgaWYgeW91IG1ha2UgY2hhbmdlcyBpbgoraG93
IGAuL2NvbmZpZ3VyZWAgd29ya3MgKGUuZy4sIHRvIGFkZCBhIG5ldyBsaWJyYXJ5IGRlcGVuZGVu
Y3kpLCB5b3Ugd2lsbCBuZWVkCit0byByZWJ1aWxkIGAuL2NvbmZpZ3VyZWAgYW5kIGNvbW1pdCB0
aGUgdXBkYXRlZCB2ZXJzaW9uLiAgSW4gYWRkaXRpb24gdG8KK2F1dG9tYWtlIGl0c2VsZiwgeW91
IHdpbGwgbmVlZCB0byBoYXZlIHRoZSBgcGtnY29uZmlnYCB0b29scyBpbnN0YWxsZWQgYXMgd2Vs
bC4KKworRm9yIGV4YW1wbGUsIG9uIG1hY09TOgorCitgYGAKK2JyZXcgaW5zdGFsbCBhdXRvbWFr
ZSBwa2djb25maWcKKyMgRWRpdCBjb25maWd1cmUuaW4KK2F1dG9yZW1ha2UgLWl2ZgorYGBgCisK
Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKIDxhIG5hbWU9ImFwcGxpY2F0aW9ucyI+PC9hPgog
IyBBcHBsaWNhdGlvbnMKIApAQCAtMzk3LDYgKzQyMSw5IEBAIHVpbnQ4X3Qga2V5WzMwXSA9IHsw
eDAwLCAweDAxLCAweDAyLCAweDAzLCAweDA0LCAweDA1LCAweDA2LCAweDA3LAogLy8gaW5pdGlh
bGl6ZSBsaWJTUlRQCiBzcnRwX2luaXQoKTsKIAorLy8gZGVmYXVsdCBwb2xpY3kgdmFsdWVzCitt
ZW1zZXQoJnBvbGljeSwgMHgwLCBzaXplb2Yoc3J0cF9wb2xpY3lfdCkpOworCiAvLyBzZXQgcG9s
aWN5IHRvIGRlc2NyaWJlIGEgcG9saWN5IGZvciBhbiBTUlRQIHN0cmVhbQogY3J5cHRvX3BvbGlj
eV9zZXRfcnRwX2RlZmF1bHQoJnBvbGljeS5ydHApOwogY3J5cHRvX3BvbGljeV9zZXRfcnRjcF9k
ZWZhdWx0KCZwb2xpY3kucnRjcCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvVE9ETyBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9UT0RPCmRlbGV0ZWQgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCBlNjlkZTI5YmIyZDFkNjQzNGI4YjI5YWU3NzVhZDhjMmU0OGM1Mzkx
Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCmRpZmYgLS1naXQgYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvVkVS
U0lPTiBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGli
c3J0cC9WRVJTSU9OCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA0NGU1YmUyZjA4ZDQw
ZTU1OTZlNWJjNzlmY2M5NTM1ZWExNjI3NzEyLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlic3J0cC9WRVJTSU9OCisrKyAvZGV2L251bGwKQEAgLTEgKzAsMCBAQAotMi4x
LjAtcHJlCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnNydHAvY29kZXJldmlldy5zZXR0aW5ncyBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jb2RlcmV2aWV3LnNldHRpbmdz
CmluZGV4IGIwZjRlNTcwZWJiNTk0MTMzYmZlY2Y1MTAzNmQ0ZmJlODI1MzJkOWUuLmRlNjIwYzgx
NWIwNzBkNzBmOWExYWM0N2Q2MDQwOTVhMTAxOGZjYjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jb2RlcmV2aWV3LnNl
dHRpbmdzCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvbGlic3J0cC9jb2RlcmV2aWV3LnNldHRpbmdzCkBAIC0xLDkgKzEsNyBAQAotQ09ERV9SRVZJ
RVdfU0VSVkVSOiBjb2RlcmV2aWV3LmNocm9taXVtLm9yZworIyBUaGlzIGZpbGUgaXMgdXNlZCBi
eSBnaXQtY2wgdG8gZ2V0IHJlcG9zaXRvcnkgc3BlY2lmaWMgaW5mb3JtYXRpb24uCiBDQ19MSVNU
OiBjaHJvbWl1bS1yZXZpZXdzQGNocm9taXVtLm9yZwotVklFV19WQzogaHR0cHM6Ly9jaHJvbWl1
bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL2RlcHMvbGlic3J0cC8rLworQ09ERV9SRVZJRVdf
U0VSVkVSOiBjb2RlcmV2aWV3LmNocm9taXVtLm9yZworR0VSUklUX0hPU1Q6IFRydWUKK1BST0pF
Q1Q6IGxpYnNydHAKIFNUQVRVUzogaHR0cDovL2Nocm9taXVtLXN0YXR1cy5hcHBzcG90LmNvbS9z
dGF0dXMKLVRSWV9PTl9VUExPQUQ6IEZhbHNlCi1UUllTRVJWRVJfU1ZOX1VSTDogc3ZuOi8vc3Zu
LmNocm9taXVtLm9yZy9jaHJvbWUtdHJ5L3RyeQotR0lUQ0xfUFJFVVBMT0FEOiBodHRwOi8vc3Jj
LmNocm9taXVtLm9yZy92aWV3dmMvY2hyb21lL3RydW5rL3Rvb2xzL2RlcG90X3Rvb2xzL2dpdC1j
bC11cGxvYWQtaG9vaz9yZXZpc2lvbj1IRUFECi1HSVRDTF9QUkVEQ09NTUlUOiBodHRwOi8vc3Jj
LmNocm9taXVtLm9yZy92aWV3dmMvY2hyb21lL3RydW5rL3Rvb2xzL2RlcG90X3Rvb2xzL2dpdC1j
bC11cGxvYWQtaG9vaz9yZXZpc2lvbj1IRUFECi1QUk9KRUNUOiBjaHJvbWl1bV9kZXBzCitWSUVX
X1ZDOiBodHRwczovL2Nocm9taXVtLmdvb2dsZXNvdXJjZS5jb20vY2hyb21pdW0vZGVwcy9saWJz
cnRwLysvCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2NpcGhlci9hZXNfZ2NtX29zc2wuYyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vY2lw
aGVyL2Flc19nY21fb3NzbC5jCmluZGV4IDQxNjU4MmFhY2MyNzRlYTdkOGEwNzgxMGRlMzE4OGYx
Yjk5YWIyMTAuLmVmMTNhNzgyNDA0ODM3NzU3ZGY1YjViMTQ3ZmUwYTc5NmRhYjU4MzYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGli
c3J0cC9jcnlwdG8vY2lwaGVyL2Flc19nY21fb3NzbC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vY2lwaGVyL2Flc19n
Y21fb3NzbC5jCkBAIC00NSwzNiArNDUsMjggQEAKICAqLwogCiAjaWZkZWYgSEFWRV9DT05GSUdf
SAotICAgICNpbmNsdWRlIDxjb25maWcuaD4KKyNpbmNsdWRlIDxjb25maWcuaD4KICNlbmRpZgog
CiAjaW5jbHVkZSA8b3BlbnNzbC9ldnAuaD4KICNpbmNsdWRlICJhZXNfaWNtX29zc2wuaCIKICNp
bmNsdWRlICJhZXNfZ2NtX29zc2wuaCIKICNpbmNsdWRlICJhbGxvYy5oIgotI2luY2x1ZGUgImVy
ci5oIiAgICAgICAgICAgICAgICAvKiBmb3Igc3J0cF9kZWJ1ZyAqLworI2luY2x1ZGUgImVyci5o
IiAvKiBmb3Igc3J0cF9kZWJ1ZyAqLwogI2luY2x1ZGUgImNyeXB0b190eXBlcy5oIgotCisjaW5j
bHVkZSAiY2lwaGVyX3R5cGVzLmgiCiAKIHNydHBfZGVidWdfbW9kdWxlX3Qgc3J0cF9tb2RfYWVz
X2djbSA9IHsKLSAgICAwLCAgICAgICAgICAgICAgIC8qIGRlYnVnZ2luZyBpcyBvZmYgYnkgZGVm
YXVsdCAqLwotICAgICJhZXMgZ2NtIiAgICAgICAgLyogcHJpbnRhYmxlIG1vZHVsZSBuYW1lICAg
ICAgICovCisgICAgMCwgICAgICAgIC8qIGRlYnVnZ2luZyBpcyBvZmYgYnkgZGVmYXVsdCAqLwor
ICAgICJhZXMgZ2NtIiAvKiBwcmludGFibGUgbW9kdWxlIG5hbWUgICAgICAgKi8KIH07CiAKLS8q
Ci0gKiBUaGUgZm9sbG93aW5nIGFyZSB0aGUgZ2xvYmFsIHNpbmdsZXRvbiBpbnN0YW5jZXMgZm9y
IHRoZQotICogMTI4LWJpdCBhbmQgMjU2LWJpdCBHQ00gY2lwaGVycy4KLSAqLwotZXh0ZXJuIGNv
bnN0IHNydHBfY2lwaGVyX3R5cGVfdCBzcnRwX2Flc19nY21fMTI4X29wZW5zc2w7Ci1leHRlcm4g
Y29uc3Qgc3J0cF9jaXBoZXJfdHlwZV90IHNydHBfYWVzX2djbV8yNTZfb3BlbnNzbDsKLQogLyoK
ICAqIEZvciBub3cgd2Ugb25seSBzdXBwb3J0IDggYW5kIDE2IG9jdGV0IHRhZ3MuICBUaGUgc3Bl
YyBhbGxvd3MgZm9yCiAgKiBvcHRpb25hbCAxMiBieXRlIHRhZywgd2hpY2ggbWF5IGJlIHN1cHBv
cnRlZCBpbiB0aGUgZnV0dXJlLgogICovCi0jZGVmaW5lIEdDTV9BVVRIX1RBR19MRU4gICAgMTYK
LSNkZWZpbmUgR0NNX0FVVEhfVEFHX0xFTl84ICA4Ci0KKyNkZWZpbmUgR0NNX0FVVEhfVEFHX0xF
TiAxNgorI2RlZmluZSBHQ01fQVVUSF9UQUdfTEVOXzggOAogCiAvKgogICogVGhpcyBmdW5jdGlv
biBhbGxvY2F0ZXMgYSBuZXcgaW5zdGFuY2Ugb2YgdGhpcyBjcnlwdG8gZW5naW5lLgpAQCAtODMs
MTEgKzc1LDE0IEBAIGV4dGVybiBjb25zdCBzcnRwX2NpcGhlcl90eXBlX3Qgc3J0cF9hZXNfZ2Nt
XzI1Nl9vcGVuc3NsOwogICoga2V5IGxlbmd0aCBpbmNsdWRlcyB0aGUgMTQgYnl0ZSBzYWx0IHZh
bHVlIHRoYXQgaXMgdXNlZCB3aGVuCiAgKiBpbml0aWFsaXppbmcgdGhlIEtERi4KICAqLwotc3Rh
dGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfYWVzX2djbV9vcGVuc3NsX2FsbG9jIChzcnRwX2Np
cGhlcl90ICoqYywgaW50IGtleV9sZW4sIGludCB0bGVuKQorc3RhdGljIHNydHBfZXJyX3N0YXR1
c190IHNydHBfYWVzX2djbV9vcGVuc3NsX2FsbG9jKHNydHBfY2lwaGVyX3QgKipjLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBrZXlfbGVu
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlu
dCB0bGVuKQogewogICAgIHNydHBfYWVzX2djbV9jdHhfdCAqZ2NtOwogCi0gICAgZGVidWdfcHJp
bnQoc3J0cF9tb2RfYWVzX2djbSwgImFsbG9jYXRpbmcgY2lwaGVyIHdpdGgga2V5IGxlbmd0aCAl
ZCIsIGtleV9sZW4pOworICAgIGRlYnVnX3ByaW50KHNydHBfbW9kX2Flc19nY20sICJhbGxvY2F0
aW5nIGNpcGhlciB3aXRoIGtleSBsZW5ndGggJWQiLAorICAgICAgICAgICAgICAgIGtleV9sZW4p
OwogICAgIGRlYnVnX3ByaW50KHNydHBfbW9kX2Flc19nY20sICJhbGxvY2F0aW5nIGNpcGhlciB3
aXRoIHRhZyBsZW5ndGggJWQiLCB0bGVuKTsKIAogICAgIC8qCkBAIC05OCw4ICs5Myw3IEBAIHN0
YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2Flc19nY21fb3BlbnNzbF9hbGxvYyAoc3J0cF9j
aXBoZXJfdCAqKmMsIGludCBrZXlfCiAgICAgICAgIHJldHVybiAoc3J0cF9lcnJfc3RhdHVzX2Jh
ZF9wYXJhbSk7CiAgICAgfQogCi0gICAgaWYgKHRsZW4gIT0gR0NNX0FVVEhfVEFHX0xFTiAmJgot
ICAgICAgICB0bGVuICE9IEdDTV9BVVRIX1RBR19MRU5fOCkgeworICAgIGlmICh0bGVuICE9IEdD
TV9BVVRIX1RBR19MRU4gJiYgdGxlbiAhPSBHQ01fQVVUSF9UQUdfTEVOXzgpIHsKICAgICAgICAg
cmV0dXJuIChzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtKTsKICAgICB9CiAKQEAgLTEwOCwxNSAr
MTAyLDEzIEBAIHN0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2Flc19nY21fb3BlbnNzbF9h
bGxvYyAoc3J0cF9jaXBoZXJfdCAqKmMsIGludCBrZXlfCiAgICAgaWYgKCpjID09IE5VTEwpIHsK
ICAgICAgICAgcmV0dXJuIChzcnRwX2Vycl9zdGF0dXNfYWxsb2NfZmFpbCk7CiAgICAgfQotICAg
IG1lbXNldCgqYywgMHgwLCBzaXplb2Yoc3J0cF9jaXBoZXJfdCkpOwogCiAgICAgZ2NtID0gKHNy
dHBfYWVzX2djbV9jdHhfdCAqKXNydHBfY3J5cHRvX2FsbG9jKHNpemVvZihzcnRwX2Flc19nY21f
Y3R4X3QpKTsKICAgICBpZiAoZ2NtID09IE5VTEwpIHsKLQlzcnRwX2NyeXB0b19mcmVlKCpjKTsJ
Ci0JKmMgPSBOVUxMOworICAgICAgICBzcnRwX2NyeXB0b19mcmVlKCpjKTsKKyAgICAgICAgKmMg
PSBOVUxMOwogICAgICAgICByZXR1cm4gKHNydHBfZXJyX3N0YXR1c19hbGxvY19mYWlsKTsKICAg
ICB9Ci0gICAgbWVtc2V0KGdjbSwgMHgwLCBzaXplb2Yoc3J0cF9hZXNfZ2NtX2N0eF90KSk7CiAK
ICAgICBnY20tPmN0eCA9IEVWUF9DSVBIRVJfQ1RYX25ldygpOwogICAgIGlmIChnY20tPmN0eCA9
PSBOVUxMKSB7CkBAIC0xNTEsMTUgKzE0MywxNCBAQCBzdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qg
c3J0cF9hZXNfZ2NtX29wZW5zc2xfYWxsb2MgKHNydHBfY2lwaGVyX3QgKipjLCBpbnQga2V5Xwog
ICAgIHJldHVybiAoc3J0cF9lcnJfc3RhdHVzX29rKTsKIH0KIAotCiAvKgogICogVGhpcyBmdW5j
dGlvbiBkZWFsbG9jYXRlcyBhIEdDTSBzZXNzaW9uCiAgKi8KLXN0YXRpYyBzcnRwX2Vycl9zdGF0
dXNfdCBzcnRwX2Flc19nY21fb3BlbnNzbF9kZWFsbG9jIChzcnRwX2NpcGhlcl90ICpjKQorc3Rh
dGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfYWVzX2djbV9vcGVuc3NsX2RlYWxsb2Moc3J0cF9j
aXBoZXJfdCAqYykKIHsKICAgICBzcnRwX2Flc19nY21fY3R4X3QgKmN0eDsKIAotICAgIGN0eCA9
IChzcnRwX2Flc19nY21fY3R4X3QqKWMtPnN0YXRlOworICAgIGN0eCA9IChzcnRwX2Flc19nY21f
Y3R4X3QgKiljLT5zdGF0ZTsKICAgICBpZiAoY3R4KSB7CiAgICAgICAgIEVWUF9DSVBIRVJfQ1RY
X2ZyZWUoY3R4LT5jdHgpOwogICAgICAgICAvKiB6ZXJvaXplIHRoZSBrZXkgbWF0ZXJpYWwgKi8K
QEAgLTE3OSwxNCArMTcwLDE2IEBAIHN0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2Flc19n
Y21fb3BlbnNzbF9kZWFsbG9jIChzcnRwX2NpcGhlcl90ICpjKQogICoKICAqIHRoZSBrZXkgaXMg
dGhlIHNlY3JldCBrZXkKICAqLwotc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfYWVzX2dj
bV9vcGVuc3NsX2NvbnRleHRfaW5pdCAodm9pZCogY3YsIGNvbnN0IHVpbnQ4X3QgKmtleSkKK3N0
YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2Flc19nY21fb3BlbnNzbF9jb250ZXh0X2luaXQo
dm9pZCAqY3YsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGNvbnN0IHVpbnQ4X3QgKmtleSkKIHsKICAgICBzcnRwX2Flc19nY21fY3R4
X3QgKmMgPSAoc3J0cF9hZXNfZ2NtX2N0eF90ICopY3Y7CiAgICAgY29uc3QgRVZQX0NJUEhFUiAq
ZXZwOwogCiAgICAgYy0+ZGlyID0gc3J0cF9kaXJlY3Rpb25fYW55OwogCi0gICAgZGVidWdfcHJp
bnQoc3J0cF9tb2RfYWVzX2djbSwgImtleTogICVzIiwgc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0
cmluZyhrZXksIGMtPmtleV9zaXplKSk7CisgICAgZGVidWdfcHJpbnQoc3J0cF9tb2RfYWVzX2dj
bSwgImtleTogICVzIiwKKyAgICAgICAgICAgICAgICBzcnRwX29jdGV0X3N0cmluZ19oZXhfc3Ry
aW5nKGtleSwgYy0+a2V5X3NpemUpKTsKIAogICAgIHN3aXRjaCAoYy0+a2V5X3NpemUpIHsKICAg
ICBjYXNlIFNSVFBfQUVTXzI1Nl9LRVlfTEVOOgpAQCAtMjA3LDM1ICsyMDAsMzIgQEAgc3RhdGlj
IHNydHBfZXJyX3N0YXR1c190IHNydHBfYWVzX2djbV9vcGVuc3NsX2NvbnRleHRfaW5pdCAodm9p
ZCogY3YsIGNvbnN0IHVpbnQKICAgICByZXR1cm4gKHNydHBfZXJyX3N0YXR1c19vayk7CiB9CiAK
LQogLyoKICAqIGFlc19nY21fb3BlbnNzbF9zZXRfaXYoYywgaXYpIHNldHMgdGhlIGNvdW50ZXIg
dmFsdWUgdG8gdGhlIGV4b3Igb2YgaXYgd2l0aAogICogdGhlIG9mZnNldAogICovCi1zdGF0aWMg
c3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9hZXNfZ2NtX29wZW5zc2xfc2V0X2l2ICh2b2lkICpjdiwg
dWludDhfdCAqaXYsIHNydHBfY2lwaGVyX2RpcmVjdGlvbl90IGRpcmVjdGlvbikKK3N0YXRpYyBz
cnRwX2Vycl9zdGF0dXNfdCBzcnRwX2Flc19nY21fb3BlbnNzbF9zZXRfaXYoCisgICAgdm9pZCAq
Y3YsCisgICAgdWludDhfdCAqaXYsCisgICAgc3J0cF9jaXBoZXJfZGlyZWN0aW9uX3QgZGlyZWN0
aW9uKQogewogICAgIHNydHBfYWVzX2djbV9jdHhfdCAqYyA9IChzcnRwX2Flc19nY21fY3R4X3Qg
KiljdjsKIAotICAgIGlmIChkaXJlY3Rpb24gIT0gc3J0cF9kaXJlY3Rpb25fZW5jcnlwdCAmJiBk
aXJlY3Rpb24gIT0gc3J0cF9kaXJlY3Rpb25fZGVjcnlwdCkgeworICAgIGlmIChkaXJlY3Rpb24g
IT0gc3J0cF9kaXJlY3Rpb25fZW5jcnlwdCAmJgorICAgICAgICBkaXJlY3Rpb24gIT0gc3J0cF9k
aXJlY3Rpb25fZGVjcnlwdCkgewogICAgICAgICByZXR1cm4gKHNydHBfZXJyX3N0YXR1c19iYWRf
cGFyYW0pOwogICAgIH0KICAgICBjLT5kaXIgPSBkaXJlY3Rpb247CiAKLSAgICBkZWJ1Z19wcmlu
dChzcnRwX21vZF9hZXNfZ2NtLCAic2V0dGluZyBpdjogJXMiLCB2MTI4X2hleF9zdHJpbmcoKHYx
MjhfdCopaXYpKTsKKyAgICBkZWJ1Z19wcmludChzcnRwX21vZF9hZXNfZ2NtLCAic2V0dGluZyBp
djogJXMiLAorICAgICAgICAgICAgICAgIHYxMjhfaGV4X3N0cmluZygodjEyOF90ICopaXYpKTsK
IAotICAgIGlmICghRVZQX0NpcGhlckluaXRfZXgoYy0+Y3R4LCBOVUxMLCBOVUxMLCBOVUxMLAot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgKGMtPmRpciA9PSBzcnRwX2RpcmVjdGlv
bl9lbmNyeXB0ID8gMSA6IDApKSkgewotICAgICAgICByZXR1cm4gKHNydHBfZXJyX3N0YXR1c19p
bml0X2ZhaWwpOwotICAgIH0KLQotICAgIC8qIHNldCBJViBsZW4gIGFuZCB0aGUgSVYgdmFsdWUs
IHRoZSBmb2xsb3dpb25nIDMgY2FsbHMgYXJlIHJlcXVpcmVkICovCiAgICAgaWYgKCFFVlBfQ0lQ
SEVSX0NUWF9jdHJsKGMtPmN0eCwgRVZQX0NUUkxfR0NNX1NFVF9JVkxFTiwgMTIsIDApKSB7CiAg
ICAgICAgIHJldHVybiAoc3J0cF9lcnJfc3RhdHVzX2luaXRfZmFpbCk7CiAgICAgfQotICAgIGlm
ICghRVZQX0NJUEhFUl9DVFhfY3RybChjLT5jdHgsIEVWUF9DVFJMX0dDTV9TRVRfSVZfRklYRUQs
IC0xLCAodm9pZCopaXYpKSB7Ci0gICAgICAgIHJldHVybiAoc3J0cF9lcnJfc3RhdHVzX2luaXRf
ZmFpbCk7Ci0gICAgfQotICAgIGlmICghRVZQX0NJUEhFUl9DVFhfY3RybChjLT5jdHgsIEVWUF9D
VFJMX0dDTV9JVl9HRU4sIDAsICh2b2lkKilpdikpIHsKKworICAgIGlmICghRVZQX0NpcGhlcklu
aXRfZXgoYy0+Y3R4LCBOVUxMLCBOVUxMLCBOVUxMLCBpdiwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgIChjLT5kaXIgPT0gc3J0cF9kaXJlY3Rpb25fZW5jcnlwdCA/IDEgOiAwKSkpIHsKICAg
ICAgICAgcmV0dXJuIChzcnRwX2Vycl9zdGF0dXNfaW5pdF9mYWlsKTsKICAgICB9CiAKQEAgLTI1
MCw3ICsyNDAsOSBAQCBzdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9hZXNfZ2NtX29wZW5z
c2xfc2V0X2l2ICh2b2lkICpjdiwgdWludDhfdCAqaXYsIHNydAogICoJYWFkCUFkZGl0aW9uYWwg
ZGF0YSB0byBwcm9jZXNzIGZvciBBRUFEIGNpcGhlciBzdWl0ZXMKICAqCWFhZF9sZW4JbGVuZ3Ro
IG9mIGFhZCBidWZmZXIKICAqLwotc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfYWVzX2dj
bV9vcGVuc3NsX3NldF9hYWQgKHZvaWQgKmN2LCBjb25zdCB1aW50OF90ICphYWQsIHVpbnQzMl90
IGFhZF9sZW4pCitzdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9hZXNfZ2NtX29wZW5zc2xf
c2V0X2FhZCh2b2lkICpjdiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGNvbnN0IHVpbnQ4X3QgKmFhZCwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IGFhZF9sZW4pCiB7CiAg
ICAgc3J0cF9hZXNfZ2NtX2N0eF90ICpjID0gKHNydHBfYWVzX2djbV9jdHhfdCAqKWN2OwogICAg
IGludCBydjsKQEAgLTI2Miw4ICsyNTQsOCBAQCBzdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0
cF9hZXNfZ2NtX29wZW5zc2xfc2V0X2FhZCAodm9pZCAqY3YsIGNvbnN0IHVpbnQ4X3QgKgogCiAg
ICAgLyoKICAgICAgKiBPcGVuU1NMIG5ldmVyIHdyaXRlIHRvIGFkZHJlc3MgcG9pbnRlZCBieSB0
aGUgbGFzdCBwYXJhbWV0ZXIgb2YKLSAgICAgKiBFVlBfQ0lQSEVSX0NUWF9jdHJsIHdoaWxlIEVW
UF9DVFJMX0dDTV9TRVRfVEFHIChpbiByZWFsaXR5LCAKLSAgICAgKiBPcGVuU1NMIGNvcHkgaXRz
IGNvbnRlbnQgdG8gdGhlIGNvbnRleHQpLCBzbyB3ZSBjYW4gbWFrZSAKKyAgICAgKiBFVlBfQ0lQ
SEVSX0NUWF9jdHJsIHdoaWxlIEVWUF9DVFJMX0dDTV9TRVRfVEFHIChpbiByZWFsaXR5LAorICAg
ICAqIE9wZW5TU0wgY29weSBpdHMgY29udGVudCB0byB0aGUgY29udGV4dCksIHNvIHdlIGNhbiBt
YWtlCiAgICAgICogYWFkIHJlYWQtb25seSBpbiB0aGlzIGZ1bmN0aW9uIGFuZCBhbGwgaXRzIHdy
YXBwZXJzLgogICAgICAqLwogICAgIHVuc2lnbmVkIGNoYXIgZHVtbXlfdGFnW0dDTV9BVVRIX1RB
R19MRU5dOwpAQCAtMjg2LDcgKzI3OCw5IEBAIHN0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRw
X2Flc19nY21fb3BlbnNzbF9zZXRfYWFkICh2b2lkICpjdiwgY29uc3QgdWludDhfdCAqCiAgKgli
dWYJZGF0YSB0byBlbmNyeXB0CiAgKgllbmNfbGVuCWxlbmd0aCBvZiBlbmNyeXB0IGJ1ZmZlcgog
ICovCi1zdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9hZXNfZ2NtX29wZW5zc2xfZW5jcnlw
dCAodm9pZCAqY3YsIHVuc2lnbmVkIGNoYXIgKmJ1ZiwgdW5zaWduZWQgaW50ICplbmNfbGVuKQor
c3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfYWVzX2djbV9vcGVuc3NsX2VuY3J5cHQodm9p
ZCAqY3YsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB1bnNpZ25lZCBjaGFyICpidWYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgKmVuY19sZW4pCiB7CiAgICAgc3J0
cF9hZXNfZ2NtX2N0eF90ICpjID0gKHNydHBfYWVzX2djbV9jdHhfdCAqKWN2OwogICAgIGlmIChj
LT5kaXIgIT0gc3J0cF9kaXJlY3Rpb25fZW5jcnlwdCAmJiBjLT5kaXIgIT0gc3J0cF9kaXJlY3Rp
b25fZGVjcnlwdCkgewpAQCAtMzEyLDcgKzMwNiw5IEBAIHN0YXRpYyBzcnRwX2Vycl9zdGF0dXNf
dCBzcnRwX2Flc19nY21fb3BlbnNzbF9lbmNyeXB0ICh2b2lkICpjdiwgdW5zaWduZWQgY2hhciAq
CiAgKglidWYJZGF0YSB0byBlbmNyeXB0CiAgKglsZW4JbGVuZ3RoIG9mIGVuY3J5cHQgYnVmZmVy
CiAgKi8KLXN0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2Flc19nY21fb3BlbnNzbF9nZXRf
dGFnICh2b2lkICpjdiwgdWludDhfdCAqYnVmLCB1aW50MzJfdCAqbGVuKQorc3RhdGljIHNydHBf
ZXJyX3N0YXR1c190IHNydHBfYWVzX2djbV9vcGVuc3NsX2dldF90YWcodm9pZCAqY3YsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50OF90
ICpidWYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB1aW50MzJfdCAqbGVuKQogewogICAgIHNydHBfYWVzX2djbV9jdHhfdCAqYyA9IChzcnRw
X2Flc19nY21fY3R4X3QgKiljdjsKICAgICAvKgpAQCAtMzMzLDcgKzMyOSw2IEBAIHN0YXRpYyBz
cnRwX2Vycl9zdGF0dXNfdCBzcnRwX2Flc19nY21fb3BlbnNzbF9nZXRfdGFnICh2b2lkICpjdiwg
dWludDhfdCAqYnVmLCB1CiAgICAgcmV0dXJuIChzcnRwX2Vycl9zdGF0dXNfb2spOwogfQogCi0K
IC8qCiAgKiBUaGlzIGZ1bmN0aW9uIGRlY3J5cHRzIGEgYnVmZmVyIHVzaW5nIEFFUyBHQ00gbW9k
ZQogICoKQEAgLTM0Miw3ICszMzcsOSBAQCBzdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9h
ZXNfZ2NtX29wZW5zc2xfZ2V0X3RhZyAodm9pZCAqY3YsIHVpbnQ4X3QgKmJ1ZiwgdQogICoJYnVm
CWRhdGEgdG8gZW5jcnlwdAogICoJZW5jX2xlbglsZW5ndGggb2YgZW5jcnlwdCBidWZmZXIKICAq
Lwotc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfYWVzX2djbV9vcGVuc3NsX2RlY3J5cHQg
KHZvaWQgKmN2LCB1bnNpZ25lZCBjaGFyICpidWYsIHVuc2lnbmVkIGludCAqZW5jX2xlbikKK3N0
YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2Flc19nY21fb3BlbnNzbF9kZWNyeXB0KHZvaWQg
KmN2LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgdW5zaWduZWQgY2hhciAqYnVmLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50ICplbmNfbGVuKQogewogICAgIHNydHBf
YWVzX2djbV9jdHhfdCAqYyA9IChzcnRwX2Flc19nY21fY3R4X3QgKiljdjsKICAgICBpZiAoYy0+
ZGlyICE9IHNydHBfZGlyZWN0aW9uX2VuY3J5cHQgJiYgYy0+ZGlyICE9IHNydHBfZGlyZWN0aW9u
X2RlY3J5cHQpIHsKQEAgLTM3MiwzMiArMzY5LDM2IEBAIHN0YXRpYyBzcnRwX2Vycl9zdGF0dXNf
dCBzcnRwX2Flc19nY21fb3BlbnNzbF9kZWNyeXB0ICh2b2lkICpjdiwgdW5zaWduZWQgY2hhciAq
CiAgICAgcmV0dXJuIChzcnRwX2Vycl9zdGF0dXNfb2spOwogfQogCi0KLQogLyoKICAqIE5hbWUg
b2YgdGhpcyBjcnlwdG8gZW5naW5lCiAgKi8KLXN0YXRpYyBjb25zdCBjaGFyIHNydHBfYWVzX2dj
bV8xMjhfb3BlbnNzbF9kZXNjcmlwdGlvbltdID0gIkFFUy0xMjggR0NNIHVzaW5nIG9wZW5zc2wi
Owotc3RhdGljIGNvbnN0IGNoYXIgc3J0cF9hZXNfZ2NtXzI1Nl9vcGVuc3NsX2Rlc2NyaXB0aW9u
W10gPSAiQUVTLTI1NiBHQ00gdXNpbmcgb3BlbnNzbCI7Ci0KK3N0YXRpYyBjb25zdCBjaGFyIHNy
dHBfYWVzX2djbV8xMjhfb3BlbnNzbF9kZXNjcmlwdGlvbltdID0KKyAgICAiQUVTLTEyOCBHQ00g
dXNpbmcgb3BlbnNzbCI7CitzdGF0aWMgY29uc3QgY2hhciBzcnRwX2Flc19nY21fMjU2X29wZW5z
c2xfZGVzY3JpcHRpb25bXSA9CisgICAgIkFFUy0yNTYgR0NNIHVzaW5nIG9wZW5zc2wiOwogCiAv
KgogICogS0FUIHZhbHVlcyBmb3IgQUVTIHNlbGYtdGVzdC4gIFRoZXNlCiAgKiB2YWx1ZXMgd2Un
cmUgZGVyaXZlZCBmcm9tIGluZGVwZW5kZW50IHRlc3QgY29kZQogICogdXNpbmcgT3BlblNTTC4K
ICAqLworLyogY2xhbmctZm9ybWF0IG9mZiAqLwogc3RhdGljIGNvbnN0IHVpbnQ4X3Qgc3J0cF9h
ZXNfZ2NtX3Rlc3RfY2FzZV8wX2tleVtTUlRQX0FFU19HQ01fMTI4X0tFWV9MRU5fV1NBTFRdID0g
ewogICAgIDB4ZmUsIDB4ZmYsIDB4ZTksIDB4OTIsIDB4ODYsIDB4NjUsIDB4NzMsIDB4MWMsCiAg
ICAgMHg2ZCwgMHg2YSwgMHg4ZiwgMHg5NCwgMHg2NywgMHgzMCwgMHg4MywgMHgwOCwKICAgICAw
eDAxLCAweDAyLCAweDAzLCAweDA0LCAweDA1LCAweDA2LCAweDA3LCAweDA4LAogICAgIDB4MDks
IDB4MGEsIDB4MGIsIDB4MGMsCiB9OworLyogY2xhbmctZm9ybWF0IG9uICovCiAKKy8qIGNsYW5n
LWZvcm1hdCBvZmYgKi8KIHN0YXRpYyB1aW50OF90IHNydHBfYWVzX2djbV90ZXN0X2Nhc2VfMF9p
dlsxMl0gPSB7CiAgICAgMHhjYSwgMHhmZSwgMHhiYSwgMHhiZSwgMHhmYSwgMHhjZSwgMHhkYiwg
MHhhZCwKICAgICAweGRlLCAweGNhLCAweGY4LCAweDg4CiB9OworLyogY2xhbmctZm9ybWF0IG9u
ICovCiAKKy8qIGNsYW5nLWZvcm1hdCBvZmYgKi8KIHN0YXRpYyBjb25zdCB1aW50OF90IHNydHBf
YWVzX2djbV90ZXN0X2Nhc2VfMF9wbGFpbnRleHRbNjBdID0gIHsKICAgICAweGQ5LCAweDMxLCAw
eDMyLCAweDI1LCAweGY4LCAweDg0LCAweDA2LCAweGU1LAogICAgIDB4YTUsIDB4NTksIDB4MDks
IDB4YzUsIDB4YWYsIDB4ZjUsIDB4MjYsIDB4OWEsCkBAIC00MDksMTIgKzQxMCwxNSBAQCBzdGF0
aWMgY29uc3QgdWludDhfdCBzcnRwX2Flc19nY21fdGVzdF9jYXNlXzBfcGxhaW50ZXh0WzYwXSA9
ICB7CiAgICAgMHhiYSwgMHg2MywgMHg3YiwgMHgzOQogfTsKIAorLyogY2xhbmctZm9ybWF0IG9m
ZiAqLwogc3RhdGljIGNvbnN0IHVpbnQ4X3Qgc3J0cF9hZXNfZ2NtX3Rlc3RfY2FzZV8wX2FhZFsy
MF0gPSB7CiAgICAgMHhmZSwgMHhlZCwgMHhmYSwgMHhjZSwgMHhkZSwgMHhhZCwgMHhiZSwgMHhl
ZiwKICAgICAweGZlLCAweGVkLCAweGZhLCAweGNlLCAweGRlLCAweGFkLCAweGJlLCAweGVmLAog
ICAgIDB4YWIsIDB4YWQsIDB4ZGEsIDB4ZDIKIH07CisvKiBjbGFuZy1mb3JtYXQgb24gKi8KIAor
LyogY2xhbmctZm9ybWF0IG9mZiAqLwogc3RhdGljIGNvbnN0IHVpbnQ4X3Qgc3J0cF9hZXNfZ2Nt
X3Rlc3RfY2FzZV8wX2NpcGhlcnRleHRbNzZdID0gewogICAgIDB4NDIsIDB4ODMsIDB4MWUsIDB4
YzIsIDB4MjEsIDB4NzcsIDB4NzQsIDB4MjQsCiAgICAgMHg0YiwgMHg3MiwgMHgyMSwgMHhiNywg
MHg4NCwgMHhkMCwgMHhkNCwgMHg5YywKQEAgLTQyOCw2ICs0MzIsNyBAQCBzdGF0aWMgY29uc3Qg
dWludDhfdCBzcnRwX2Flc19nY21fdGVzdF9jYXNlXzBfY2lwaGVydGV4dFs3Nl0gPSB7CiAgICAg
MHg1YiwgMHhjOSwgMHg0ZiwgMHhiYywgMHgzMiwgMHgyMSwgMHhhNSwgMHhkYiwKICAgICAweDk0
LCAweGZhLCAweGU5LCAweDVhLCAweGU3LCAweDEyLCAweDFhLCAweDQ3LAogfTsKKy8qIGNsYW5n
LWZvcm1hdCBvbiAqLwogCiBzdGF0aWMgY29uc3Qgc3J0cF9jaXBoZXJfdGVzdF9jYXNlX3Qgc3J0
cF9hZXNfZ2NtX3Rlc3RfY2FzZV8wYSA9IHsKICAgICBTUlRQX0FFU19HQ01fMTI4X0tFWV9MRU5f
V1NBTFQsICAgICAgLyogb2N0ZXRzIGluIGtleSAgICAgICAgICAgICovCkBAIC00MzksNyArNDQ0
LDcgQEAgc3RhdGljIGNvbnN0IHNydHBfY2lwaGVyX3Rlc3RfY2FzZV90IHNydHBfYWVzX2djbV90
ZXN0X2Nhc2VfMGEgPSB7CiAgICAgc3J0cF9hZXNfZ2NtX3Rlc3RfY2FzZV8wX2NpcGhlcnRleHQs
IC8qIGNpcGhlcnRleHQgICsgdGFnICAgICAgICAqLwogICAgIDIwLCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAvKiBvY3RldHMgaW4gQUFEICAgICAgICAgICAgKi8KICAgICBzcnRw
X2Flc19nY21fdGVzdF9jYXNlXzBfYWFkLCAgICAgICAgLyogQUFEICAgICAgICAgICAgICAgICAg
ICAgICovCi0gICAgR0NNX0FVVEhfVEFHX0xFTl84LAorICAgIEdDTV9BVVRIX1RBR19MRU5fOCwg
ICAgICAgICAgICAgICAgICAvKiAqLwogICAgIE5VTEwgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiBwb2ludGVyIHRvIG5leHQgdGVzdGNhc2UgKi8KIH07CiAKQEAgLTQ1MywxMCAr
NDU4LDExIEBAIHN0YXRpYyBjb25zdCBzcnRwX2NpcGhlcl90ZXN0X2Nhc2VfdCBzcnRwX2Flc19n
Y21fdGVzdF9jYXNlXzAgPSB7CiAgICAgc3J0cF9hZXNfZ2NtX3Rlc3RfY2FzZV8wX2NpcGhlcnRl
eHQsIC8qIGNpcGhlcnRleHQgICsgdGFnICAgICAgICAqLwogICAgIDIwLCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAvKiBvY3RldHMgaW4gQUFEICAgICAgICAgICAgKi8KICAgICBz
cnRwX2Flc19nY21fdGVzdF9jYXNlXzBfYWFkLCAgICAgICAgLyogQUFEICAgICAgICAgICAgICAg
ICAgICAgICovCi0gICAgR0NNX0FVVEhfVEFHX0xFTiwKKyAgICBHQ01fQVVUSF9UQUdfTEVOLCAg
ICAgICAgICAgICAgICAgICAgLyogKi8KICAgICAmc3J0cF9hZXNfZ2NtX3Rlc3RfY2FzZV8wYSAg
ICAgICAgICAgLyogcG9pbnRlciB0byBuZXh0IHRlc3RjYXNlICovCiB9OwogCisvKiBjbGFuZy1m
b3JtYXQgb2ZmICovCiBzdGF0aWMgY29uc3QgdWludDhfdCBzcnRwX2Flc19nY21fdGVzdF9jYXNl
XzFfa2V5W1NSVFBfQUVTX0dDTV8yNTZfS0VZX0xFTl9XU0FMVF0gPSB7CiAgICAgMHhmZSwgMHhm
ZiwgMHhlOSwgMHg5MiwgMHg4NiwgMHg2NSwgMHg3MywgMHgxYywKICAgICAweGE1LCAweDU5LCAw
eDA5LCAweGM1LCAweDU0LCAweDY2LCAweDkzLCAweDFjLApAQCAtNDY0LDE0ICs0NzAsMTcgQEAg
c3RhdGljIGNvbnN0IHVpbnQ4X3Qgc3J0cF9hZXNfZ2NtX3Rlc3RfY2FzZV8xX2tleVtTUlRQX0FF
U19HQ01fMjU2X0tFWV9MRU5fV1NBTFQKICAgICAweDZkLCAweDZhLCAweDhmLCAweDk0LCAweDY3
LCAweDMwLCAweDgzLCAweDA4LAogICAgIDB4MDEsIDB4MDIsIDB4MDMsIDB4MDQsIDB4MDUsIDB4
MDYsIDB4MDcsIDB4MDgsCiAgICAgMHgwOSwgMHgwYSwgMHgwYiwgMHgwYywKLQogfTsKKy8qIGNs
YW5nLWZvcm1hdCBvbiAqLwogCisvKiBjbGFuZy1mb3JtYXQgb2ZmICovCiBzdGF0aWMgdWludDhf
dCBzcnRwX2Flc19nY21fdGVzdF9jYXNlXzFfaXZbMTJdID0gewogICAgIDB4Y2EsIDB4ZmUsIDB4
YmEsIDB4YmUsIDB4ZmEsIDB4Y2UsIDB4ZGIsIDB4YWQsCiAgICAgMHhkZSwgMHhjYSwgMHhmOCwg
MHg4OAogfTsKKy8qIGNsYW5nLWZvcm1hdCBvbiAqLwogCisvKiBjbGFuZy1mb3JtYXQgb2ZmICov
CiBzdGF0aWMgY29uc3QgdWludDhfdCBzcnRwX2Flc19nY21fdGVzdF9jYXNlXzFfcGxhaW50ZXh0
WzYwXSA9ICB7CiAgICAgMHhkOSwgMHgzMSwgMHgzMiwgMHgyNSwgMHhmOCwgMHg4NCwgMHgwNiwg
MHhlNSwKICAgICAweGE1LCAweDU5LCAweDA5LCAweGM1LCAweGFmLCAweGY1LCAweDI2LCAweDlh
LApAQCAtNDgyLDEzICs0OTEsMTcgQEAgc3RhdGljIGNvbnN0IHVpbnQ4X3Qgc3J0cF9hZXNfZ2Nt
X3Rlc3RfY2FzZV8xX3BsYWludGV4dFs2MF0gPSAgewogICAgIDB4YjEsIDB4NmEsIDB4ZWQsIDB4
ZjUsIDB4YWEsIDB4MGQsIDB4ZTYsIDB4NTcsCiAgICAgMHhiYSwgMHg2MywgMHg3YiwgMHgzOQog
fTsKKy8qIGNsYW5nLWZvcm1hdCBvbiAqLwogCisvKiBjbGFuZy1mb3JtYXQgb2ZmICovCiBzdGF0
aWMgY29uc3QgdWludDhfdCBzcnRwX2Flc19nY21fdGVzdF9jYXNlXzFfYWFkWzIwXSA9IHsKICAg
ICAweGZlLCAweGVkLCAweGZhLCAweGNlLCAweGRlLCAweGFkLCAweGJlLCAweGVmLAogICAgIDB4
ZmUsIDB4ZWQsIDB4ZmEsIDB4Y2UsIDB4ZGUsIDB4YWQsIDB4YmUsIDB4ZWYsCiAgICAgMHhhYiwg
MHhhZCwgMHhkYSwgMHhkMgogfTsKKy8qIGNsYW5nLWZvcm1hdCBvbiAqLwogCisvKiBjbGFuZy1m
b3JtYXQgb2ZmICovCiBzdGF0aWMgY29uc3QgdWludDhfdCBzcnRwX2Flc19nY21fdGVzdF9jYXNl
XzFfY2lwaGVydGV4dFs3Nl0gPSB7CiAgICAgMHgwYiwgMHgxMSwgMHhjZiwgMHhhZiwgMHg2OCwg
MHg0ZCwgMHhhZSwgMHg0NiwKICAgICAweGM3LCAweDkwLCAweGI4LCAweDhlLCAweGI3LCAweDZh
LCAweDc2LCAweDJhLApAQCAtNTAyLDYgKzUxNSw3IEBAIHN0YXRpYyBjb25zdCB1aW50OF90IHNy
dHBfYWVzX2djbV90ZXN0X2Nhc2VfMV9jaXBoZXJ0ZXh0Wzc2XSA9IHsKICAgICAweDQ1LCAweGJj
LCAweDAzLCAweGU2LCAweGUxLCAweGFjLCAweDBhLCAweDlmLAogICAgIDB4ODEsIDB4Y2IsIDB4
OGUsIDB4NWIsIDB4NDYsIDB4NjUsIDB4NjMsIDB4MWQsCiB9OworLyogY2xhbmctZm9ybWF0IG9u
ICovCiAKIHN0YXRpYyBjb25zdCBzcnRwX2NpcGhlcl90ZXN0X2Nhc2VfdCBzcnRwX2Flc19nY21f
dGVzdF9jYXNlXzFhID0gewogICAgIFNSVFBfQUVTX0dDTV8yNTZfS0VZX0xFTl9XU0FMVCwgICAg
ICAvKiBvY3RldHMgaW4ga2V5ICAgICAgICAgICAgKi8KQEAgLTUxMyw3ICs1MjcsNyBAQCBzdGF0
aWMgY29uc3Qgc3J0cF9jaXBoZXJfdGVzdF9jYXNlX3Qgc3J0cF9hZXNfZ2NtX3Rlc3RfY2FzZV8x
YSA9IHsKICAgICBzcnRwX2Flc19nY21fdGVzdF9jYXNlXzFfY2lwaGVydGV4dCwgLyogY2lwaGVy
dGV4dCAgKyB0YWcgICAgICAgICovCiAgICAgMjAsICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIC8qIG9jdGV0cyBpbiBBQUQgICAgICAgICAgICAqLwogICAgIHNydHBfYWVzX2djbV90
ZXN0X2Nhc2VfMV9hYWQsICAgICAgICAvKiBBQUQgICAgICAgICAgICAgICAgICAgICAgKi8KLSAg
ICBHQ01fQVVUSF9UQUdfTEVOXzgsCisgICAgR0NNX0FVVEhfVEFHX0xFTl84LCAgICAgICAgICAg
ICAgICAgIC8qICovCiAgICAgTlVMTCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8q
IHBvaW50ZXIgdG8gbmV4dCB0ZXN0Y2FzZSAqLwogfTsKIApAQCAtNTI3LDcgKzU0MSw3IEBAIHN0
YXRpYyBjb25zdCBzcnRwX2NpcGhlcl90ZXN0X2Nhc2VfdCBzcnRwX2Flc19nY21fdGVzdF9jYXNl
XzEgPSB7CiAgICAgc3J0cF9hZXNfZ2NtX3Rlc3RfY2FzZV8xX2NpcGhlcnRleHQsIC8qIGNpcGhl
cnRleHQgICsgdGFnICAgICAgICAqLwogICAgIDIwLCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiBvY3RldHMgaW4gQUFEICAgICAgICAgICAgKi8KICAgICBzcnRwX2Flc19nY21f
dGVzdF9jYXNlXzFfYWFkLCAgICAgICAgLyogQUFEICAgICAgICAgICAgICAgICAgICAgICovCi0g
ICAgR0NNX0FVVEhfVEFHX0xFTiwKKyAgICBHQ01fQVVUSF9UQUdfTEVOLCAgICAgICAgICAgICAg
ICAgICAgLyogKi8KICAgICAmc3J0cF9hZXNfZ2NtX3Rlc3RfY2FzZV8xYSAgICAgICAgICAgLyog
cG9pbnRlciB0byBuZXh0IHRlc3RjYXNlICovCiB9OwogCkBAIC01NjQsNCArNTc4LDMgQEAgY29u
c3Qgc3J0cF9jaXBoZXJfdHlwZV90IHNydHBfYWVzX2djbV8yNTZfb3BlbnNzbCA9IHsKICAgICAm
c3J0cF9hZXNfZ2NtX3Rlc3RfY2FzZV8xLAogICAgIFNSVFBfQUVTX0dDTV8yNTYKIH07Ci0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlic3J0cC9jcnlwdG8vY2lwaGVyL2Flc19pY21fb3NzbC5jIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9jaXBoZXIvYWVzX2lj
bV9vc3NsLmMKaW5kZXggMjViNDMxZmFkZDA2NGY3OGY5OWJhZWU1NjZlOTk5MWIwMjg4ZmVjZC4u
YjU5MTg5NzYyM2JiMTY3YjFiOWE5MzVhZTg2Y2MyZWRkODZiZWUxNSAxMDA2NDQKLS0tIGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0
by9jaXBoZXIvYWVzX2ljbV9vc3NsLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9jaXBoZXIvYWVzX2ljbV9vc3NsLmMK
QEAgLTQ5LDIzICs0OSwyMCBAQAogICovCiAKICNpZmRlZiBIQVZFX0NPTkZJR19ICi0gICAgI2lu
Y2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbmZpZy5oPgogI2VuZGlmCiAKICNpbmNsdWRl
IDxvcGVuc3NsL2V2cC5oPgogI2luY2x1ZGUgImFlc19pY21fb3NzbC5oIgogI2luY2x1ZGUgImNy
eXB0b190eXBlcy5oIgotI2luY2x1ZGUgImVyci5oIiAgICAgICAgICAgICAgICAvKiBmb3Igc3J0
cF9kZWJ1ZyAqLworI2luY2x1ZGUgImVyci5oIiAvKiBmb3Igc3J0cF9kZWJ1ZyAqLwogI2luY2x1
ZGUgImFsbG9jLmgiCi0KKyNpbmNsdWRlICJjaXBoZXJfdHlwZXMuaCIKIAogc3J0cF9kZWJ1Z19t
b2R1bGVfdCBzcnRwX21vZF9hZXNfaWNtID0gewotICAgIDAsICAgICAgICAgICAgICAgLyogZGVi
dWdnaW5nIGlzIG9mZiBieSBkZWZhdWx0ICovCi0gICAgImFlcyBpY20gb3NzbCIgICAvKiBwcmlu
dGFibGUgbW9kdWxlIG5hbWUgICAgICAgKi8KKyAgICAwLCAgICAgICAgICAgICAvKiBkZWJ1Z2dp
bmcgaXMgb2ZmIGJ5IGRlZmF1bHQgKi8KKyAgICAiYWVzIGljbSBvc3NsIiAvKiBwcmludGFibGUg
bW9kdWxlIG5hbWUgICAgICAgKi8KIH07Ci1leHRlcm4gY29uc3Qgc3J0cF9jaXBoZXJfdHlwZV90
IHNydHBfYWVzX2ljbV8xMjg7Ci1leHRlcm4gY29uc3Qgc3J0cF9jaXBoZXJfdHlwZV90IHNydHBf
YWVzX2ljbV8xOTI7Ci1leHRlcm4gY29uc3Qgc3J0cF9jaXBoZXJfdHlwZV90IHNydHBfYWVzX2lj
bV8yNTY7CiAKIC8qCiAgKiBpbnRlZ2VyIGNvdW50ZXIgbW9kZSB3b3JrcyBhcyBmb2xsb3dzOgpA
QCAtMTA5LDE2ICsxMDYsMjAgQEAgZXh0ZXJuIGNvbnN0IHNydHBfY2lwaGVyX3R5cGVfdCBzcnRw
X2Flc19pY21fMjU2OwogICogdmFsdWUuICBUaGUgdGxlbiBhcmd1bWVudCBpcyBmb3IgdGhlIEFF
QUQgdGFnIGxlbmd0aCwgd2hpY2gKICAqIGlzbid0IHVzZWQgaW4gY291bnRlciBtb2RlLgogICov
Ci1zdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9hZXNfaWNtX29wZW5zc2xfYWxsb2MgKHNy
dHBfY2lwaGVyX3QgKipjLCBpbnQga2V5X2xlbiwgaW50IHRsZW4pCitzdGF0aWMgc3J0cF9lcnJf
c3RhdHVzX3Qgc3J0cF9hZXNfaWNtX29wZW5zc2xfYWxsb2Moc3J0cF9jaXBoZXJfdCAqKmMsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IGtl
eV9sZW4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgaW50IHRsZW4pCiB7CiAgICAgc3J0cF9hZXNfaWNtX2N0eF90ICppY207CiAKLSAgICBkZWJ1
Z19wcmludChzcnRwX21vZF9hZXNfaWNtLCAiYWxsb2NhdGluZyBjaXBoZXIgd2l0aCBrZXkgbGVu
Z3RoICVkIiwga2V5X2xlbik7CisgICAgZGVidWdfcHJpbnQoc3J0cF9tb2RfYWVzX2ljbSwgImFs
bG9jYXRpbmcgY2lwaGVyIHdpdGgga2V5IGxlbmd0aCAlZCIsCisgICAgICAgICAgICAgICAga2V5
X2xlbik7CiAKICAgICAvKgogICAgICAqIFZlcmlmeSB0aGUga2V5X2xlbiBpcyB2YWxpZCBmb3Ig
b25lIG9mOiBBRVMtMTI4LzE5Mi8yNTYKICAgICAgKi8KLSAgICBpZiAoa2V5X2xlbiAhPSBTUlRQ
X0FFU19JQ01fMTI4X0tFWV9MRU5fV1NBTFQgJiYga2V5X2xlbiAhPSBTUlRQX0FFU19JQ01fMTky
X0tFWV9MRU5fV1NBTFQgJiYKKyAgICBpZiAoa2V5X2xlbiAhPSBTUlRQX0FFU19JQ01fMTI4X0tF
WV9MRU5fV1NBTFQgJiYKKyAgICAgICAga2V5X2xlbiAhPSBTUlRQX0FFU19JQ01fMTkyX0tFWV9M
RU5fV1NBTFQgJiYKICAgICAgICAga2V5X2xlbiAhPSBTUlRQX0FFU19JQ01fMjU2X0tFWV9MRU5f
V1NBTFQpIHsKICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW07CiAgICAg
fQpAQCAtMTI4LDE1ICsxMjksMTMgQEAgc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfYWVz
X2ljbV9vcGVuc3NsX2FsbG9jIChzcnRwX2NpcGhlcl90ICoqYywgaW50IGtleV8KICAgICBpZiAo
KmMgPT0gTlVMTCkgewogICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2FsbG9jX2ZhaWw7
CiAgICAgfQotICAgIG1lbXNldCgqYywgMHgwLCBzaXplb2Yoc3J0cF9jaXBoZXJfdCkpOwogCiAg
ICAgaWNtID0gKHNydHBfYWVzX2ljbV9jdHhfdCAqKXNydHBfY3J5cHRvX2FsbG9jKHNpemVvZihz
cnRwX2Flc19pY21fY3R4X3QpKTsKICAgICBpZiAoaWNtID09IE5VTEwpIHsKLQlzcnRwX2NyeXB0
b19mcmVlKCpjKTsKLQkqYyA9IE5VTEw7CisgICAgICAgIHNydHBfY3J5cHRvX2ZyZWUoKmMpOwor
ICAgICAgICAqYyA9IE5VTEw7CiAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYWxsb2Nf
ZmFpbDsKICAgICB9Ci0gICAgbWVtc2V0KGljbSwgMHgwLCBzaXplb2Yoc3J0cF9hZXNfaWNtX2N0
eF90KSk7CiAKICAgICBpY20tPmN0eCA9IEVWUF9DSVBIRVJfQ1RYX25ldygpOwogICAgIGlmIChp
Y20tPmN0eCA9PSBOVUxMKSB7CkBAIC0xNzQsMTEgKzE3MywxMCBAQCBzdGF0aWMgc3J0cF9lcnJf
c3RhdHVzX3Qgc3J0cF9hZXNfaWNtX29wZW5zc2xfYWxsb2MgKHNydHBfY2lwaGVyX3QgKipjLCBp
bnQga2V5XwogICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAKLQogLyoKICAqIFRo
aXMgZnVuY3Rpb24gZGVhbGxvY2F0ZXMgYW4gaW5zdGFuY2Ugb2YgdGhpcyBlbmdpbmUKICAqLwot
c3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfYWVzX2ljbV9vcGVuc3NsX2RlYWxsb2MgKHNy
dHBfY2lwaGVyX3QgKmMpCitzdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9hZXNfaWNtX29w
ZW5zc2xfZGVhbGxvYyhzcnRwX2NpcGhlcl90ICpjKQogewogICAgIHNydHBfYWVzX2ljbV9jdHhf
dCAqY3R4OwogCkBAIC0xODksNyArMTg3LDcgQEAgc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNy
dHBfYWVzX2ljbV9vcGVuc3NsX2RlYWxsb2MgKHNydHBfY2lwaGVyX3QgKmMpCiAgICAgLyoKICAg
ICAgKiBGcmVlIHRoZSBFVlAgY29udGV4dAogICAgICAqLwotICAgIGN0eCA9IChzcnRwX2Flc19p
Y21fY3R4X3QqKWMtPnN0YXRlOworICAgIGN0eCA9IChzcnRwX2Flc19pY21fY3R4X3QgKiljLT5z
dGF0ZTsKICAgICBpZiAoY3R4ICE9IE5VTEwpIHsKICAgICAgICAgRVZQX0NJUEhFUl9DVFhfZnJl
ZShjdHgtPmN0eCk7CiAgICAgICAgIC8qIHplcm9pemUgdGhlIGtleSBtYXRlcmlhbCAqLwpAQCAt
MjEyLDcgKzIxMCw4IEBAIHN0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2Flc19pY21fb3Bl
bnNzbF9kZWFsbG9jIChzcnRwX2NpcGhlcl90ICpjKQogICogdGhlIHNhbHQgaXMgdW5wcmVkaWN0
YWJsZSAoYnV0IG5vdCBuZWNlc3NhcmlseSBzZWNyZXQpIGRhdGEgd2hpY2gKICAqIHJhbmRvbWl6
ZXMgdGhlIHN0YXJ0aW5nIHBvaW50IGluIHRoZSBrZXlzdHJlYW0KICAqLwotc3RhdGljIHNydHBf
ZXJyX3N0YXR1c190IHNydHBfYWVzX2ljbV9vcGVuc3NsX2NvbnRleHRfaW5pdCAodm9pZCogY3Ys
IGNvbnN0IHVpbnQ4X3QgKmtleSkKK3N0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2Flc19p
Y21fb3BlbnNzbF9jb250ZXh0X2luaXQodm9pZCAqY3YsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVpbnQ4X3QgKmtleSkK
IHsKICAgICBzcnRwX2Flc19pY21fY3R4X3QgKmMgPSAoc3J0cF9hZXNfaWNtX2N0eF90ICopY3Y7
CiAgICAgY29uc3QgRVZQX0NJUEhFUiAqZXZwOwpAQCAtMjMwLDcgKzIyOSw4IEBAIHN0YXRpYyBz
cnRwX2Vycl9zdGF0dXNfdCBzcnRwX2Flc19pY21fb3BlbnNzbF9jb250ZXh0X2luaXQgKHZvaWQq
IGN2LCBjb25zdCB1aW50CiAgICAgYy0+b2Zmc2V0LnY4W1NSVFBfU0FMVF9MRU5dID0gYy0+b2Zm
c2V0LnY4W1NSVFBfU0FMVF9MRU4gKyAxXSA9IDA7CiAgICAgYy0+Y291bnRlci52OFtTUlRQX1NB
TFRfTEVOXSA9IGMtPmNvdW50ZXIudjhbU1JUUF9TQUxUX0xFTiArIDFdID0gMDsKIAotICAgIGRl
YnVnX3ByaW50KHNydHBfbW9kX2Flc19pY20sICJrZXk6ICAlcyIsIHNydHBfb2N0ZXRfc3RyaW5n
X2hleF9zdHJpbmcoa2V5LCBjLT5rZXlfc2l6ZSkpOworICAgIGRlYnVnX3ByaW50KHNydHBfbW9k
X2Flc19pY20sICJrZXk6ICAlcyIsCisgICAgICAgICAgICAgICAgc3J0cF9vY3RldF9zdHJpbmdf
aGV4X3N0cmluZyhrZXksIGMtPmtleV9zaXplKSk7CiAgICAgZGVidWdfcHJpbnQoc3J0cF9tb2Rf
YWVzX2ljbSwgIm9mZnNldDogJXMiLCB2MTI4X2hleF9zdHJpbmcoJmMtPm9mZnNldCkpOwogCiAg
ICAgc3dpdGNoIChjLT5rZXlfc2l6ZSkgewpAQCAtMjQ4LDggKzI0OCw3IEBAIHN0YXRpYyBzcnRw
X2Vycl9zdGF0dXNfdCBzcnRwX2Flc19pY21fb3BlbnNzbF9jb250ZXh0X2luaXQgKHZvaWQqIGN2
LCBjb25zdCB1aW50CiAgICAgICAgIGJyZWFrOwogICAgIH0KIAotICAgIGlmICghRVZQX0VuY3J5
cHRJbml0X2V4KGMtPmN0eCwgZXZwLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEws
IGtleSwgTlVMTCkpIHsKKyAgICBpZiAoIUVWUF9FbmNyeXB0SW5pdF9leChjLT5jdHgsIGV2cCwg
TlVMTCwga2V5LCBOVUxMKSkgewogICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7
CiAgICAgfSBlbHNlIHsKICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKQEAgLTI1
OCwxMiArMjU3LDE0IEBAIHN0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2Flc19pY21fb3Bl
bnNzbF9jb250ZXh0X2luaXQgKHZvaWQqIGN2LCBjb25zdCB1aW50CiAgICAgcmV0dXJuIHNydHBf
ZXJyX3N0YXR1c19vazsKIH0KIAotCiAvKgogICogYWVzX2ljbV9zZXRfaXYoYywgaXYpIHNldHMg
dGhlIGNvdW50ZXIgdmFsdWUgdG8gdGhlIGV4b3Igb2YgaXYgd2l0aAogICogdGhlIG9mZnNldAog
ICovCi1zdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9hZXNfaWNtX29wZW5zc2xfc2V0X2l2
ICh2b2lkICpjdiwgdWludDhfdCAqaXYsIHNydHBfY2lwaGVyX2RpcmVjdGlvbl90IGRpcikKK3N0
YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2Flc19pY21fb3BlbnNzbF9zZXRfaXYoCisgICAg
dm9pZCAqY3YsCisgICAgdWludDhfdCAqaXYsCisgICAgc3J0cF9jaXBoZXJfZGlyZWN0aW9uX3Qg
ZGlyKQogewogICAgIHNydHBfYWVzX2ljbV9jdHhfdCAqYyA9IChzcnRwX2Flc19pY21fY3R4X3Qg
KiljdjsKICAgICB2MTI4X3Qgbm9uY2U7CkBAIC0yNzUsMTAgKzI3NiwxMCBAQCBzdGF0aWMgc3J0
cF9lcnJfc3RhdHVzX3Qgc3J0cF9hZXNfaWNtX29wZW5zc2xfc2V0X2l2ICh2b2lkICpjdiwgdWlu
dDhfdCAqaXYsIHNydAogCiAgICAgdjEyOF94b3IoJmMtPmNvdW50ZXIsICZjLT5vZmZzZXQsICZu
b25jZSk7CiAKLSAgICBkZWJ1Z19wcmludChzcnRwX21vZF9hZXNfaWNtLCAic2V0X2NvdW50ZXI6
ICVzIiwgdjEyOF9oZXhfc3RyaW5nKCZjLT5jb3VudGVyKSk7CisgICAgZGVidWdfcHJpbnQoc3J0
cF9tb2RfYWVzX2ljbSwgInNldF9jb3VudGVyOiAlcyIsCisgICAgICAgICAgICAgICAgdjEyOF9o
ZXhfc3RyaW5nKCZjLT5jb3VudGVyKSk7CiAKLSAgICBpZiAoIUVWUF9FbmNyeXB0SW5pdF9leChj
LT5jdHgsIE5VTEwsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgTlVMTCwgYy0+
Y291bnRlci52OCkpIHsKKyAgICBpZiAoIUVWUF9FbmNyeXB0SW5pdF9leChjLT5jdHgsIE5VTEws
IE5VTEwsIE5VTEwsIGMtPmNvdW50ZXIudjgpKSB7CiAgICAgICAgIHJldHVybiBzcnRwX2Vycl9z
dGF0dXNfZmFpbDsKICAgICB9IGVsc2UgewogICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVz
X29rOwpAQCAtMjkzLDcgKzI5NCw5IEBAIHN0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2Fl
c19pY21fb3BlbnNzbF9zZXRfaXYgKHZvaWQgKmN2LCB1aW50OF90ICppdiwgc3J0CiAgKglidWYJ
ZGF0YSB0byBlbmNyeXB0CiAgKgllbmNfbGVuCWxlbmd0aCBvZiBlbmNyeXB0IGJ1ZmZlcgogICov
Ci1zdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9hZXNfaWNtX29wZW5zc2xfZW5jcnlwdCAo
dm9pZCAqY3YsIHVuc2lnbmVkIGNoYXIgKmJ1ZiwgdW5zaWduZWQgaW50ICplbmNfbGVuKQorc3Rh
dGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfYWVzX2ljbV9vcGVuc3NsX2VuY3J5cHQodm9pZCAq
Y3YsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB1bnNpZ25lZCBjaGFyICpidWYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgKmVuY19sZW4pCiB7CiAgICAgc3J0cF9h
ZXNfaWNtX2N0eF90ICpjID0gKHNydHBfYWVzX2ljbV9jdHhfdCAqKWN2OwogICAgIGludCBsZW4g
PSAwOwpAQCAtMzE2LDU5ICszMTksNzAgQEAgc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBf
YWVzX2ljbV9vcGVuc3NsX2VuY3J5cHQgKHZvaWQgKmN2LCB1bnNpZ25lZCBjaGFyICoKIC8qCiAg
KiBOYW1lIG9mIHRoaXMgY3J5cHRvIGVuZ2luZQogICovCi1zdGF0aWMgY29uc3QgY2hhciBzcnRw
X2Flc19pY21fMTI4X29wZW5zc2xfZGVzY3JpcHRpb25bXSA9ICJBRVMtMTI4IGNvdW50ZXIgbW9k
ZSB1c2luZyBvcGVuc3NsIjsKLXN0YXRpYyBjb25zdCBjaGFyIHNydHBfYWVzX2ljbV8xOTJfb3Bl
bnNzbF9kZXNjcmlwdGlvbltdID0gIkFFUy0xOTIgY291bnRlciBtb2RlIHVzaW5nIG9wZW5zc2wi
Owotc3RhdGljIGNvbnN0IGNoYXIgc3J0cF9hZXNfaWNtXzI1Nl9vcGVuc3NsX2Rlc2NyaXB0aW9u
W10gPSAiQUVTLTI1NiBjb3VudGVyIG1vZGUgdXNpbmcgb3BlbnNzbCI7Ci0KK3N0YXRpYyBjb25z
dCBjaGFyIHNydHBfYWVzX2ljbV8xMjhfb3BlbnNzbF9kZXNjcmlwdGlvbltdID0KKyAgICAiQUVT
LTEyOCBjb3VudGVyIG1vZGUgdXNpbmcgb3BlbnNzbCI7CitzdGF0aWMgY29uc3QgY2hhciBzcnRw
X2Flc19pY21fMTkyX29wZW5zc2xfZGVzY3JpcHRpb25bXSA9CisgICAgIkFFUy0xOTIgY291bnRl
ciBtb2RlIHVzaW5nIG9wZW5zc2wiOworc3RhdGljIGNvbnN0IGNoYXIgc3J0cF9hZXNfaWNtXzI1
Nl9vcGVuc3NsX2Rlc2NyaXB0aW9uW10gPQorICAgICJBRVMtMjU2IGNvdW50ZXIgbW9kZSB1c2lu
ZyBvcGVuc3NsIjsKIAogLyoKICAqIEtBVCB2YWx1ZXMgZm9yIEFFUyBzZWxmLXRlc3QuICBUaGVz
ZQogICogdmFsdWVzIGNhbWUgZnJvbSB0aGUgbGVnYWN5IGxpYnNydHAgY29kZS4KICAqLworLyog
Y2xhbmctZm9ybWF0IG9mZiAqLwogc3RhdGljIGNvbnN0IHVpbnQ4X3Qgc3J0cF9hZXNfaWNtXzEy
OF90ZXN0X2Nhc2VfMF9rZXlbU1JUUF9BRVNfSUNNXzEyOF9LRVlfTEVOX1dTQUxUXSA9IHsKICAg
ICAweDJiLCAweDdlLCAweDE1LCAweDE2LCAweDI4LCAweGFlLCAweGQyLCAweGE2LAogICAgIDB4
YWIsIDB4ZjcsIDB4MTUsIDB4ODgsIDB4MDksIDB4Y2YsIDB4NGYsIDB4M2MsCiAgICAgMHhmMCwg
MHhmMSwgMHhmMiwgMHhmMywgMHhmNCwgMHhmNSwgMHhmNiwgMHhmNywKICAgICAweGY4LCAweGY5
LCAweGZhLCAweGZiLCAweGZjLCAweGZkCiB9OworLyogY2xhbmctZm9ybWF0IG9uICovCiAKKy8q
IGNsYW5nLWZvcm1hdCBvZmYgKi8KIHN0YXRpYyB1aW50OF90IHNydHBfYWVzX2ljbV8xMjhfdGVz
dF9jYXNlXzBfbm9uY2VbMTZdID0gewogICAgIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAs
IDB4MDAsIDB4MDAsIDB4MDAsCiAgICAgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgw
MCwgMHgwMCwgMHgwMAogfTsKKy8qIGNsYW5nLWZvcm1hdCBvbiAqLwogCisvKiBjbGFuZy1mb3Jt
YXQgb2ZmICovCiBzdGF0aWMgY29uc3QgdWludDhfdCBzcnRwX2Flc19pY21fMTI4X3Rlc3RfY2Fz
ZV8wX3BsYWludGV4dFszMl0gPSAgewogICAgIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAs
IDB4MDAsIDB4MDAsIDB4MDAsCiAgICAgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgw
MCwgMHgwMCwgMHgwMCwKICAgICAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAw
eDAwLCAweDAwLAogICAgIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAs
IDB4MDAsCiB9OworLyogY2xhbmctZm9ybWF0IG9uICovCiAKKy8qIGNsYW5nLWZvcm1hdCBvZmYg
Ki8KIHN0YXRpYyBjb25zdCB1aW50OF90IHNydHBfYWVzX2ljbV8xMjhfdGVzdF9jYXNlXzBfY2lw
aGVydGV4dFszMl0gPSB7CiAgICAgMHhlMCwgMHgzZSwgMHhhZCwgMHgwOSwgMHgzNSwgMHhjOSwg
MHg1ZSwgMHg4MCwKICAgICAweGUxLCAweDY2LCAweGIxLCAweDZkLCAweGQ5LCAweDJiLCAweDRl
LCAweGI0LAogICAgIDB4ZDIsIDB4MzUsIDB4MTMsIDB4MTYsIDB4MmIsIDB4MDIsIDB4ZDAsIDB4
ZjcsCiAgICAgMHgyYSwgMHg0MywgMHhhMiwgMHhmZSwgMHg0YSwgMHg1ZiwgMHg5NywgMHhhYgog
fTsKKy8qIGNsYW5nLWZvcm1hdCBvbiAqLwogCiBzdGF0aWMgY29uc3Qgc3J0cF9jaXBoZXJfdGVz
dF9jYXNlX3Qgc3J0cF9hZXNfaWNtXzEyOF90ZXN0X2Nhc2VfMCA9IHsKLSAgICBTUlRQX0FFU19J
Q01fMTI4X0tFWV9MRU5fV1NBTFQsICAgICAgICAgICAgICAgICAvKiBvY3RldHMgaW4ga2V5ICAg
ICAgICAgICAgKi8KLSAgICBzcnRwX2Flc19pY21fMTI4X3Rlc3RfY2FzZV8wX2tleSwgICAgICAg
ICAgICAgICAvKiBrZXkgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBzcnRwX2Flc19pY21f
MTI4X3Rlc3RfY2FzZV8wX25vbmNlLCAgICAgICAgICAgICAvKiBwYWNrZXQgaW5kZXggICAgICAg
ICAgICAgKi8KLSAgICAzMiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBv
Y3RldHMgaW4gcGxhaW50ZXh0ICAgICAgKi8KLSAgICBzcnRwX2Flc19pY21fMTI4X3Rlc3RfY2Fz
ZV8wX3BsYWludGV4dCwgICAgICAgICAvKiBwbGFpbnRleHQgICAgICAgICAgICAgICAgKi8KLSAg
ICAzMiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBvY3RldHMgaW4gY2lw
aGVydGV4dCAgICAgKi8KLSAgICBzcnRwX2Flc19pY21fMTI4X3Rlc3RfY2FzZV8wX2NpcGhlcnRl
eHQsICAgICAgICAvKiBjaXBoZXJ0ZXh0ICAgICAgICAgICAgICAgKi8KLSAgICAwLAotICAgIE5V
TEwsCi0gICAgMCwKLSAgICBOVUxMICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAv
KiBwb2ludGVyIHRvIG5leHQgdGVzdGNhc2UgKi8KKyAgICBTUlRQX0FFU19JQ01fMTI4X0tFWV9M
RU5fV1NBTFQsICAgICAgICAgIC8qIG9jdGV0cyBpbiBrZXkgICAgICAgICAgICAqLworICAgIHNy
dHBfYWVzX2ljbV8xMjhfdGVzdF9jYXNlXzBfa2V5LCAgICAgICAgLyoga2V5ICAgICAgICAgICAg
ICAgICAgICAgICovCisgICAgc3J0cF9hZXNfaWNtXzEyOF90ZXN0X2Nhc2VfMF9ub25jZSwgICAg
ICAvKiBwYWNrZXQgaW5kZXggICAgICAgICAgICAgKi8KKyAgICAzMiwgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIG9jdGV0cyBpbiBwbGFpbnRleHQgICAgICAqLworICAg
IHNydHBfYWVzX2ljbV8xMjhfdGVzdF9jYXNlXzBfcGxhaW50ZXh0LCAgLyogcGxhaW50ZXh0ICAg
ICAgICAgICAgICAgICovCisgICAgMzIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAvKiBvY3RldHMgaW4gY2lwaGVydGV4dCAgICAgKi8KKyAgICBzcnRwX2Flc19pY21fMTI4
X3Rlc3RfY2FzZV8wX2NpcGhlcnRleHQsIC8qIGNpcGhlcnRleHQgICAgICAgICAgICAgICAqLwor
ICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogKi8KKyAgICBO
VUxMLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qICovCisgICAgMCwgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiAqLworICAgIE5VTEwgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogcG9pbnRlciB0byBuZXh0IHRlc3RjYXNl
ICovCiB9OwogCiAvKgogICogS0FUIHZhbHVlcyBmb3IgQUVTLTE5Mi1DVFIgc2VsZi10ZXN0LiAg
VGhlc2UKICAqIHZhbHVlcyBjYW1lIGZyb20gc2VjdGlvbiA3IG9mIFJGQyA2MTg4LgogICovCisv
KiBjbGFuZy1mb3JtYXQgb2ZmICovCiBzdGF0aWMgY29uc3QgdWludDhfdCBzcnRwX2Flc19pY21f
MTkyX3Rlc3RfY2FzZV8wX2tleVtTUlRQX0FFU19JQ01fMTkyX0tFWV9MRU5fV1NBTFRdID0gewog
ICAgIDB4ZWEsIDB4YjIsIDB4MzQsIDB4NzYsIDB4NGUsIDB4NTEsIDB4N2IsIDB4MmQsCiAgICAg
MHgzZCwgMHgxNiwgMHgwZCwgMHg1OCwgMHg3ZCwgMHg4YywgMHg4NiwgMHgyMSwKQEAgLTM3Niw0
NCArMzkwLDUyIEBAIHN0YXRpYyBjb25zdCB1aW50OF90IHNydHBfYWVzX2ljbV8xOTJfdGVzdF9j
YXNlXzBfa2V5W1NSVFBfQUVTX0lDTV8xOTJfS0VZX0xFTl9XCiAgICAgMHhmMCwgMHhmMSwgMHhm
MiwgMHhmMywgMHhmNCwgMHhmNSwgMHhmNiwgMHhmNywKICAgICAweGY4LCAweGY5LCAweGZhLCAw
eGZiLCAweGZjLCAweGZkCiB9OworLyogY2xhbmctZm9ybWF0IG9uICovCiAKKy8qIGNsYW5nLWZv
cm1hdCBvZmYgKi8KIHN0YXRpYyB1aW50OF90IHNydHBfYWVzX2ljbV8xOTJfdGVzdF9jYXNlXzBf
bm9uY2VbMTZdID0gewogICAgIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4
MDAsIDB4MDAsCiAgICAgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwg
MHgwMAogfTsKKy8qIGNsYW5nLWZvcm1hdCBvbiAqLwogCisvKiBjbGFuZy1mb3JtYXQgb2ZmICov
CiBzdGF0aWMgY29uc3QgdWludDhfdCBzcnRwX2Flc19pY21fMTkyX3Rlc3RfY2FzZV8wX3BsYWlu
dGV4dFszMl0gPSAgewogICAgIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4
MDAsIDB4MDAsCiAgICAgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwg
MHgwMCwKICAgICAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAw
LAogICAgIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsCiB9
OworLyogY2xhbmctZm9ybWF0IG9uICovCiAKKy8qIGNsYW5nLWZvcm1hdCBvZmYgKi8KIHN0YXRp
YyBjb25zdCB1aW50OF90IHNydHBfYWVzX2ljbV8xOTJfdGVzdF9jYXNlXzBfY2lwaGVydGV4dFsz
Ml0gPSB7CiAgICAgMHgzNSwgMHgwOSwgMHg2YywgMHhiYSwgMHg0NiwgMHgxMCwgMHgwMiwgMHg4
ZCwKICAgICAweGMxLCAweGI1LCAweDc1LCAweDAzLCAweDgwLCAweDRjLCAweGUzLCAweDdjLAog
ICAgIDB4NWQsIDB4ZTksIDB4ODYsIDB4MjksIDB4MWQsIDB4Y2MsIDB4ZTEsIDB4NjEsCiAgICAg
MHhkNSwgMHgxNiwgMHg1ZSwgMHhjNCwgMHg1NiwgMHg4ZiwgMHg1YywgMHg5YQogfTsKKy8qIGNs
YW5nLWZvcm1hdCBvbiAqLwogCiBzdGF0aWMgY29uc3Qgc3J0cF9jaXBoZXJfdGVzdF9jYXNlX3Qg
c3J0cF9hZXNfaWNtXzE5Ml90ZXN0X2Nhc2VfMCA9IHsKLSAgICBTUlRQX0FFU19JQ01fMTkyX0tF
WV9MRU5fV1NBTFQsICAgICAgICAgICAgICAgICAvKiBvY3RldHMgaW4ga2V5ICAgICAgICAgICAg
Ki8KLSAgICBzcnRwX2Flc19pY21fMTkyX3Rlc3RfY2FzZV8wX2tleSwgICAgICAgICAgIC8qIGtl
eSAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIHNydHBfYWVzX2ljbV8xOTJfdGVzdF9jYXNl
XzBfbm9uY2UsICAgICAgICAgLyogcGFja2V0IGluZGV4ICAgICAgICAgICAgICovCi0gICAgMzIs
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogb2N0ZXRzIGluIHBsYWludGV4
dCAgICAgICovCi0gICAgc3J0cF9hZXNfaWNtXzE5Ml90ZXN0X2Nhc2VfMF9wbGFpbnRleHQsICAg
ICAvKiBwbGFpbnRleHQgICAgICAgICAgICAgICAgKi8KLSAgICAzMiwgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAvKiBvY3RldHMgaW4gY2lwaGVydGV4dCAgICAgKi8KLSAgICBz
cnRwX2Flc19pY21fMTkyX3Rlc3RfY2FzZV8wX2NpcGhlcnRleHQsICAgIC8qIGNpcGhlcnRleHQg
ICAgICAgICAgICAgICAqLwotICAgIDAsCi0gICAgTlVMTCwKLSAgICAwLAotICAgIE5VTEwgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHBvaW50ZXIgdG8gbmV4dCB0ZXN0Y2Fz
ZSAqLworICAgIFNSVFBfQUVTX0lDTV8xOTJfS0VZX0xFTl9XU0FMVCwgICAgICAgICAgLyogb2N0
ZXRzIGluIGtleSAgICAgICAgICAgICovCisgICAgc3J0cF9hZXNfaWNtXzE5Ml90ZXN0X2Nhc2Vf
MF9rZXksICAgICAgICAvKiBrZXkgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBzcnRwX2Fl
c19pY21fMTkyX3Rlc3RfY2FzZV8wX25vbmNlLCAgICAgIC8qIHBhY2tldCBpbmRleCAgICAgICAg
ICAgICAqLworICAgIDMyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyog
b2N0ZXRzIGluIHBsYWludGV4dCAgICAgICovCisgICAgc3J0cF9hZXNfaWNtXzE5Ml90ZXN0X2Nh
c2VfMF9wbGFpbnRleHQsICAvKiBwbGFpbnRleHQgICAgICAgICAgICAgICAgKi8KKyAgICAzMiwg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIG9jdGV0cyBpbiBjaXBoZXJ0
ZXh0ICAgICAqLworICAgIHNydHBfYWVzX2ljbV8xOTJfdGVzdF9jYXNlXzBfY2lwaGVydGV4dCwg
LyogY2lwaGVydGV4dCAgICAgICAgICAgICAgICovCisgICAgMCwgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAvKiAqLworICAgIE5VTEwsICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyogKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qICovCisgICAgTlVMTCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAvKiBwb2ludGVyIHRvIG5leHQgdGVzdGNhc2UgKi8KIH07CiAKIC8qCiAgKiBLQVQgdmFs
dWVzIGZvciBBRVMtMjU2LUNUUiBzZWxmLXRlc3QuICBUaGVzZQogICogdmFsdWVzIGNhbWUgZnJv
bSBzZWN0aW9uIDcgb2YgUkZDIDYxODguCiAgKi8KKy8qIGNsYW5nLWZvcm1hdCBvZmYgKi8KIHN0
YXRpYyBjb25zdCB1aW50OF90IHNydHBfYWVzX2ljbV8yNTZfdGVzdF9jYXNlXzBfa2V5W1NSVFBf
QUVTX0lDTV8yNTZfS0VZX0xFTl9XU0FMVF0gPSB7CiAgICAgMHg1NywgMHhmOCwgMHgyZiwgMHhl
MywgMHg2MSwgMHgzZiwgMHhkMSwgMHg3MCwKICAgICAweGE4LCAweDVlLCAweGM5LCAweDNjLCAw
eDQwLCAweGIxLCAweGYwLCAweDkyLApAQCAtNDIyLDM4ICs0NDQsNDUgQEAgc3RhdGljIGNvbnN0
IHVpbnQ4X3Qgc3J0cF9hZXNfaWNtXzI1Nl90ZXN0X2Nhc2VfMF9rZXlbU1JUUF9BRVNfSUNNXzI1
Nl9LRVlfTEVOX1cKICAgICAweGYwLCAweGYxLCAweGYyLCAweGYzLCAweGY0LCAweGY1LCAweGY2
LCAweGY3LAogICAgIDB4ZjgsIDB4ZjksIDB4ZmEsIDB4ZmIsIDB4ZmMsIDB4ZmQKIH07CisvKiBj
bGFuZy1mb3JtYXQgb24gKi8KIAorLyogY2xhbmctZm9ybWF0IG9mZiAqLwogc3RhdGljIHVpbnQ4
X3Qgc3J0cF9hZXNfaWNtXzI1Nl90ZXN0X2Nhc2VfMF9ub25jZVsxNl0gPSB7CiAgICAgMHgwMCwg
MHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwKICAgICAweDAwLCAweDAw
LCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwCiB9OworLyogY2xhbmctZm9ybWF0
IG9uICovCiAKKy8qIGNsYW5nLWZvcm1hdCBvZmYgKi8KIHN0YXRpYyBjb25zdCB1aW50OF90IHNy
dHBfYWVzX2ljbV8yNTZfdGVzdF9jYXNlXzBfcGxhaW50ZXh0WzMyXSA9ICB7CiAgICAgMHgwMCwg
MHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwKICAgICAweDAwLCAweDAw
LCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLAogICAgIDB4MDAsIDB4MDAsIDB4
MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsCiAgICAgMHgwMCwgMHgwMCwgMHgwMCwg
MHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwKIH07CisvKiBjbGFuZy1mb3JtYXQgb24gKi8K
IAorLyogY2xhbmctZm9ybWF0IG9mZiAqLwogc3RhdGljIGNvbnN0IHVpbnQ4X3Qgc3J0cF9hZXNf
aWNtXzI1Nl90ZXN0X2Nhc2VfMF9jaXBoZXJ0ZXh0WzMyXSA9IHsKICAgICAweDkyLCAweGJkLCAw
eGQyLCAweDhhLCAweDkzLCAweGMzLCAweGY1LCAweDI1LAogICAgIDB4MTEsIDB4YzYsIDB4Nzcs
IDB4ZDAsIDB4OGIsIDB4NTUsIDB4MTUsIDB4YTQsCiAgICAgMHg5ZCwgMHhhNywgMHgxYiwgMHgy
MywgMHg3OCwgMHhhOCwgMHg1NCwgMHhmNiwKICAgICAweDcwLCAweDUwLCAweDc1LCAweDZkLCAw
eGVkLCAweDE2LCAweDViLCAweGFjCiB9OworLyogY2xhbmctZm9ybWF0IG9uICovCiAKIHN0YXRp
YyBjb25zdCBzcnRwX2NpcGhlcl90ZXN0X2Nhc2VfdCBzcnRwX2Flc19pY21fMjU2X3Rlc3RfY2Fz
ZV8wID0gewotICAgIFNSVFBfQUVTX0lDTV8yNTZfS0VZX0xFTl9XU0FMVCwgICAgICAgICAgICAg
ICAgIC8qIG9jdGV0cyBpbiBrZXkgICAgICAgICAgICAqLwotICAgIHNydHBfYWVzX2ljbV8yNTZf
dGVzdF9jYXNlXzBfa2V5LCAgICAgICAgICAgLyoga2V5ICAgICAgICAgICAgICAgICAgICAgICov
Ci0gICAgc3J0cF9hZXNfaWNtXzI1Nl90ZXN0X2Nhc2VfMF9ub25jZSwgICAgICAgICAvKiBwYWNr
ZXQgaW5kZXggICAgICAgICAgICAgKi8KLSAgICAzMiwgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAvKiBvY3RldHMgaW4gcGxhaW50ZXh0ICAgICAgKi8KLSAgICBzcnRwX2Flc19p
Y21fMjU2X3Rlc3RfY2FzZV8wX3BsYWludGV4dCwgICAgIC8qIHBsYWludGV4dCAgICAgICAgICAg
ICAgICAqLwotICAgIDMyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIG9j
dGV0cyBpbiBjaXBoZXJ0ZXh0ICAgICAqLwotICAgIHNydHBfYWVzX2ljbV8yNTZfdGVzdF9jYXNl
XzBfY2lwaGVydGV4dCwgICAgLyogY2lwaGVydGV4dCAgICAgICAgICAgICAgICovCi0gICAgMCwK
LSAgICBOVUxMLAotICAgIDAsCi0gICAgTlVMTCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgLyogcG9pbnRlciB0byBuZXh0IHRlc3RjYXNlICovCisgICAgU1JUUF9BRVNfSUNNXzI1
Nl9LRVlfTEVOX1dTQUxULCAgICAgICAgICAvKiBvY3RldHMgaW4ga2V5ICAgICAgICAgICAgKi8K
KyAgICBzcnRwX2Flc19pY21fMjU2X3Rlc3RfY2FzZV8wX2tleSwgICAgICAgIC8qIGtleSAgICAg
ICAgICAgICAgICAgICAgICAqLworICAgIHNydHBfYWVzX2ljbV8yNTZfdGVzdF9jYXNlXzBfbm9u
Y2UsICAgICAgLyogcGFja2V0IGluZGV4ICAgICAgICAgICAgICovCisgICAgMzIsICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBvY3RldHMgaW4gcGxhaW50ZXh0ICAgICAg
Ki8KKyAgICBzcnRwX2Flc19pY21fMjU2X3Rlc3RfY2FzZV8wX3BsYWludGV4dCwgIC8qIHBsYWlu
dGV4dCAgICAgICAgICAgICAgICAqLworICAgIDMyLCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgLyogb2N0ZXRzIGluIGNpcGhlcnRleHQgICAgICovCisgICAgc3J0cF9hZXNf
aWNtXzI1Nl90ZXN0X2Nhc2VfMF9jaXBoZXJ0ZXh0LCAvKiBjaXBoZXJ0ZXh0ICAgICAgICAgICAg
ICAgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qICov
CisgICAgTlVMTCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiAqLworICAg
IDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogKi8KKyAgICBOVUxM
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHBvaW50ZXIgdG8gbmV4dCB0
ZXN0Y2FzZSAqLwogfTsKIAogLyoKQEAgLTQ2MSwxNyArNDkwLDE3IEBAIHN0YXRpYyBjb25zdCBz
cnRwX2NpcGhlcl90ZXN0X2Nhc2VfdCBzcnRwX2Flc19pY21fMjU2X3Rlc3RfY2FzZV8wID0gewog
ICogbm90ZTogdGhlIGVuY3J5cHQgZnVuY3Rpb24gaXMgaWRlbnRpY2FsIHRvIHRoZSBkZWNyeXB0
IGZ1bmN0aW9uCiAgKi8KIGNvbnN0IHNydHBfY2lwaGVyX3R5cGVfdCBzcnRwX2Flc19pY21fMTI4
ID0gewotICAgIHNydHBfYWVzX2ljbV9vcGVuc3NsX2FsbG9jLAotICAgIHNydHBfYWVzX2ljbV9v
cGVuc3NsX2RlYWxsb2MsCi0gICAgc3J0cF9hZXNfaWNtX29wZW5zc2xfY29udGV4dF9pbml0LAot
ICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogc2V0X2FhZCAqLwotICAgIHNydHBf
YWVzX2ljbV9vcGVuc3NsX2VuY3J5cHQsCi0gICAgc3J0cF9hZXNfaWNtX29wZW5zc2xfZW5jcnlw
dCwKLSAgICBzcnRwX2Flc19pY21fb3BlbnNzbF9zZXRfaXYsCi0gICAgMCwgICAgICAgICAgICAg
ICAgICAgICAgICAgICAvKiBnZXRfdGFnICovCi0gICAgc3J0cF9hZXNfaWNtXzEyOF9vcGVuc3Ns
X2Rlc2NyaXB0aW9uLAotICAgICZzcnRwX2Flc19pY21fMTI4X3Rlc3RfY2FzZV8wLAotICAgIFNS
VFBfQUVTX0lDTV8xMjgKKyAgICBzcnRwX2Flc19pY21fb3BlbnNzbF9hbGxvYywgICAgICAgICAg
IC8qICovCisgICAgc3J0cF9hZXNfaWNtX29wZW5zc2xfZGVhbGxvYywgICAgICAgICAvKiAqLwor
ICAgIHNydHBfYWVzX2ljbV9vcGVuc3NsX2NvbnRleHRfaW5pdCwgICAgLyogKi8KKyAgICAwLCAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHNldF9hYWQgKi8KKyAgICBzcnRw
X2Flc19pY21fb3BlbnNzbF9lbmNyeXB0LCAgICAgICAgIC8qICovCisgICAgc3J0cF9hZXNfaWNt
X29wZW5zc2xfZW5jcnlwdCwgICAgICAgICAvKiAqLworICAgIHNydHBfYWVzX2ljbV9vcGVuc3Ns
X3NldF9pdiwgICAgICAgICAgLyogKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIGdldF90YWcgKi8KKyAgICBzcnRwX2Flc19pY21fMTI4X29wZW5zc2xfZGVz
Y3JpcHRpb24sIC8qICovCisgICAgJnNydHBfYWVzX2ljbV8xMjhfdGVzdF9jYXNlXzAsICAgICAg
ICAvKiAqLworICAgIFNSVFBfQUVTX0lDTV8xMjggICAgICAgICAgICAgICAgICAgICAgLyogKi8K
IH07CiAKIC8qCkBAIC00NzksMTcgKzUwOCwxNyBAQCBjb25zdCBzcnRwX2NpcGhlcl90eXBlX3Qg
c3J0cF9hZXNfaWNtXzEyOCA9IHsKICAqIG5vdGU6IHRoZSBlbmNyeXB0IGZ1bmN0aW9uIGlzIGlk
ZW50aWNhbCB0byB0aGUgZGVjcnlwdCBmdW5jdGlvbgogICovCiBjb25zdCBzcnRwX2NpcGhlcl90
eXBlX3Qgc3J0cF9hZXNfaWNtXzE5MiA9IHsKLSAgICBzcnRwX2Flc19pY21fb3BlbnNzbF9hbGxv
YywKLSAgICBzcnRwX2Flc19pY21fb3BlbnNzbF9kZWFsbG9jLAotICAgIHNydHBfYWVzX2ljbV9v
cGVuc3NsX2NvbnRleHRfaW5pdCwKLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgIC8q
IHNldF9hYWQgKi8KLSAgICBzcnRwX2Flc19pY21fb3BlbnNzbF9lbmNyeXB0LAotICAgIHNydHBf
YWVzX2ljbV9vcGVuc3NsX2VuY3J5cHQsCi0gICAgc3J0cF9hZXNfaWNtX29wZW5zc2xfc2V0X2l2
LAotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogZ2V0X3RhZyAqLwotICAgIHNy
dHBfYWVzX2ljbV8xOTJfb3BlbnNzbF9kZXNjcmlwdGlvbiwKLSAgICAmc3J0cF9hZXNfaWNtXzE5
Ml90ZXN0X2Nhc2VfMCwKLSAgICBTUlRQX0FFU19JQ01fMTkyCisgICAgc3J0cF9hZXNfaWNtX29w
ZW5zc2xfYWxsb2MsICAgICAgICAgICAvKiAqLworICAgIHNydHBfYWVzX2ljbV9vcGVuc3NsX2Rl
YWxsb2MsICAgICAgICAgLyogKi8KKyAgICBzcnRwX2Flc19pY21fb3BlbnNzbF9jb250ZXh0X2lu
aXQsICAgIC8qICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAv
KiBzZXRfYWFkICovCisgICAgc3J0cF9hZXNfaWNtX29wZW5zc2xfZW5jcnlwdCwgICAgICAgICAv
KiAqLworICAgIHNydHBfYWVzX2ljbV9vcGVuc3NsX2VuY3J5cHQsICAgICAgICAgLyogKi8KKyAg
ICBzcnRwX2Flc19pY21fb3BlbnNzbF9zZXRfaXYsICAgICAgICAgIC8qICovCisgICAgMCwgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBnZXRfdGFnICovCisgICAgc3J0cF9h
ZXNfaWNtXzE5Ml9vcGVuc3NsX2Rlc2NyaXB0aW9uLCAvKiAqLworICAgICZzcnRwX2Flc19pY21f
MTkyX3Rlc3RfY2FzZV8wLCAgICAgICAgLyogKi8KKyAgICBTUlRQX0FFU19JQ01fMTkyICAgICAg
ICAgICAgICAgICAgICAgIC8qICovCiB9OwogCiAvKgpAQCAtNDk3LDE2ICs1MjYsMTUgQEAgY29u
c3Qgc3J0cF9jaXBoZXJfdHlwZV90IHNydHBfYWVzX2ljbV8xOTIgPSB7CiAgKiBub3RlOiB0aGUg
ZW5jcnlwdCBmdW5jdGlvbiBpcyBpZGVudGljYWwgdG8gdGhlIGRlY3J5cHQgZnVuY3Rpb24KICAq
LwogY29uc3Qgc3J0cF9jaXBoZXJfdHlwZV90IHNydHBfYWVzX2ljbV8yNTYgPSB7Ci0gICAgc3J0
cF9hZXNfaWNtX29wZW5zc2xfYWxsb2MsCi0gICAgc3J0cF9hZXNfaWNtX29wZW5zc2xfZGVhbGxv
YywKLSAgICBzcnRwX2Flc19pY21fb3BlbnNzbF9jb250ZXh0X2luaXQsCi0gICAgMCwgICAgICAg
ICAgICAgICAgICAgICAgICAgICAvKiBzZXRfYWFkICovCi0gICAgc3J0cF9hZXNfaWNtX29wZW5z
c2xfZW5jcnlwdCwKLSAgICBzcnRwX2Flc19pY21fb3BlbnNzbF9lbmNyeXB0LAotICAgIHNydHBf
YWVzX2ljbV9vcGVuc3NsX3NldF9pdiwKLSAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAg
IC8qIGdldF90YWcgKi8KLSAgICBzcnRwX2Flc19pY21fMjU2X29wZW5zc2xfZGVzY3JpcHRpb24s
Ci0gICAgJnNydHBfYWVzX2ljbV8yNTZfdGVzdF9jYXNlXzAsCi0gICAgU1JUUF9BRVNfSUNNXzI1
NgorICAgIHNydHBfYWVzX2ljbV9vcGVuc3NsX2FsbG9jLCAgICAgICAgICAgLyogKi8KKyAgICBz
cnRwX2Flc19pY21fb3BlbnNzbF9kZWFsbG9jLCAgICAgICAgIC8qICovCisgICAgc3J0cF9hZXNf
aWNtX29wZW5zc2xfY29udGV4dF9pbml0LCAgICAvKiAqLworICAgIDAsICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgLyogc2V0X2FhZCAqLworICAgIHNydHBfYWVzX2ljbV9vcGVu
c3NsX2VuY3J5cHQsICAgICAgICAgLyogKi8KKyAgICBzcnRwX2Flc19pY21fb3BlbnNzbF9lbmNy
eXB0LCAgICAgICAgIC8qICovCisgICAgc3J0cF9hZXNfaWNtX29wZW5zc2xfc2V0X2l2LCAgICAg
ICAgICAvKiAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyog
Z2V0X3RhZyAqLworICAgIHNydHBfYWVzX2ljbV8yNTZfb3BlbnNzbF9kZXNjcmlwdGlvbiwgLyog
Ki8KKyAgICAmc3J0cF9hZXNfaWNtXzI1Nl90ZXN0X2Nhc2VfMCwgICAgICAgIC8qICovCisgICAg
U1JUUF9BRVNfSUNNXzI1NiAgICAgICAgICAgICAgICAgICAgICAvKiAqLwogfTsKLQpkaWZmIC0t
Z2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJz
cnRwL2NyeXB0by9jaXBoZXIvY2lwaGVyLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2NpcGhlci9jaXBoZXIuYwppbmRleCAz
YzY3NzkwODg4ZDBhYWYyZDgyNmY4NDc2NjZiYTczMjVmZGEyODMwLi4xOWYwMGFiYzU1YmU2NmQ2
MDc1ODYzZGM5Y2U1MGQyZTQ4NjNlNDVjIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2NpcGhlci9jaXBoZXIu
YworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnNydHAvY3J5cHRvL2NpcGhlci9jaXBoZXIuYwpAQCAtNDUsNTYgKzQ1LDYxIEBACiAgKi8KIAog
I2lmZGVmIEhBVkVfQ09ORklHX0gKLSAgICAjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8
Y29uZmlnLmg+CiAjZW5kaWYKIAogI2luY2x1ZGUgImNpcGhlci5oIgogI2luY2x1ZGUgImNyeXB0
b190eXBlcy5oIgotI2luY2x1ZGUgImVyci5oIiAgICAgICAgICAgICAgICAvKiBmb3Igc3J0cF9k
ZWJ1ZyAqLwotI2luY2x1ZGUgImFsbG9jLmgiICAgICAgICAgICAgICAvKiBmb3IgY3J5cHRvX2Fs
bG9jKCksIGNyeXB0b19mcmVlKCkgICovCisjaW5jbHVkZSAiZXJyLmgiICAgLyogZm9yIHNydHBf
ZGVidWcgKi8KKyNpbmNsdWRlICJhbGxvYy5oIiAvKiBmb3IgY3J5cHRvX2FsbG9jKCksIGNyeXB0
b19mcmVlKCkgICovCiAKIHNydHBfZGVidWdfbW9kdWxlX3Qgc3J0cF9tb2RfY2lwaGVyID0gewot
ICAgIDAsICAgICAgICAgICAgICAgLyogZGVidWdnaW5nIGlzIG9mZiBieSBkZWZhdWx0ICovCi0g
ICAgImNpcGhlciIgICAgICAgICAvKiBwcmludGFibGUgbW9kdWxlIG5hbWUgICAgICAgKi8KKyAg
ICAwLCAgICAgICAvKiBkZWJ1Z2dpbmcgaXMgb2ZmIGJ5IGRlZmF1bHQgKi8KKyAgICAiY2lwaGVy
IiAvKiBwcmludGFibGUgbW9kdWxlIG5hbWUgICAgICAgKi8KIH07CiAKLXNydHBfZXJyX3N0YXR1
c190IHNydHBfY2lwaGVyX3R5cGVfYWxsb2MgKGNvbnN0IHNydHBfY2lwaGVyX3R5cGVfdCAqY3Qs
IHNydHBfY2lwaGVyX3QgKipjLCBpbnQga2V5X2xlbiwgaW50IHRsZW4pCitzcnRwX2Vycl9zdGF0
dXNfdCBzcnRwX2NpcGhlcl90eXBlX2FsbG9jKGNvbnN0IHNydHBfY2lwaGVyX3R5cGVfdCAqY3Qs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfY2lwaGVyX3Qg
KipjLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQga2V5X2xl
biwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IHRsZW4pCiB7
CiAgICAgaWYgKCFjdCB8fCAhY3QtPmFsbG9jKSB7Ci0JcmV0dXJuIChzcnRwX2Vycl9zdGF0dXNf
YmFkX3BhcmFtKTsKKyAgICAgICAgcmV0dXJuIChzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtKTsK
ICAgICB9CiAgICAgcmV0dXJuICgoY3QpLT5hbGxvYygoYyksIChrZXlfbGVuKSwgKHRsZW4pKSk7
CiB9CiAKLXNydHBfZXJyX3N0YXR1c190IHNydHBfY2lwaGVyX2RlYWxsb2MgKHNydHBfY2lwaGVy
X3QgKmMpCitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NpcGhlcl9kZWFsbG9jKHNydHBfY2lwaGVy
X3QgKmMpCiB7CiAgICAgaWYgKCFjIHx8ICFjLT50eXBlKSB7Ci0JcmV0dXJuIChzcnRwX2Vycl9z
dGF0dXNfYmFkX3BhcmFtKTsKKyAgICAgICAgcmV0dXJuIChzcnRwX2Vycl9zdGF0dXNfYmFkX3Bh
cmFtKTsKICAgICB9CiAgICAgcmV0dXJuICgoKGMpLT50eXBlKS0+ZGVhbGxvYyhjKSk7CiB9CiAK
LXNydHBfZXJyX3N0YXR1c190IHNydHBfY2lwaGVyX2luaXQgKHNydHBfY2lwaGVyX3QgKmMsIGNv
bnN0IHVpbnQ4X3QgKmtleSkKK3NydHBfZXJyX3N0YXR1c190IHNydHBfY2lwaGVyX2luaXQoc3J0
cF9jaXBoZXJfdCAqYywgY29uc3QgdWludDhfdCAqa2V5KQogewogICAgIGlmICghYyB8fCAhYy0+
dHlwZSB8fCAhYy0+c3RhdGUpIHsKLQlyZXR1cm4gKHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW0p
OworICAgICAgICByZXR1cm4gKHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW0pOwogICAgIH0KICAg
ICByZXR1cm4gKCgoYyktPnR5cGUpLT5pbml0KCgoYyktPnN0YXRlKSwgKGtleSkpKTsKIH0KIAot
Ci1zcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NpcGhlcl9zZXRfaXYgKHNydHBfY2lwaGVyX3QgKmMs
IHVpbnQ4X3QgKml2LCBpbnQgZGlyZWN0aW9uKQorc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jaXBo
ZXJfc2V0X2l2KHNydHBfY2lwaGVyX3QgKmMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgdWludDhfdCAqaXYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgaW50IGRpcmVjdGlvbikKIHsKICAgICBpZiAoIWMgfHwgIWMtPnR5cGUgfHwgIWMtPnN0YXRl
KSB7Ci0JcmV0dXJuIChzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtKTsKKyAgICAgICAgcmV0dXJu
IChzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtKTsKICAgICB9CiAKLSAgICByZXR1cm4gKCgoYykt
PnR5cGUpLT5zZXRfaXYoKChjKS0+c3RhdGUpLCBpdiwgZGlyZWN0aW9uKSk7IAorICAgIHJldHVy
biAoKChjKS0+dHlwZSktPnNldF9pdigoKGMpLT5zdGF0ZSksIGl2LCBkaXJlY3Rpb24pKTsKIH0K
IAotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jaXBoZXJfb3V0cHV0IChzcnRwX2NpcGhlcl90ICpj
LCB1aW50OF90ICpidWZmZXIsIHVpbnQzMl90ICpudW1fb2N0ZXRzX3RvX291dHB1dCkKK3NydHBf
ZXJyX3N0YXR1c190IHNydHBfY2lwaGVyX291dHB1dChzcnRwX2NpcGhlcl90ICpjLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQ4X3QgKmJ1ZmZlciwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCAqbnVtX29jdGV0c190b19vdXRw
dXQpCiB7Ci0KICAgICAvKiB6ZXJvaXplIHRoZSBidWZmZXIgKi8KICAgICBvY3RldF9zdHJpbmdf
c2V0X3RvX3plcm8oYnVmZmVyLCAqbnVtX29jdGV0c190b19vdXRwdXQpOwogCkBAIC0xMDIsNDMg
KzEwNyw1MSBAQCBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NpcGhlcl9vdXRwdXQgKHNydHBfY2lw
aGVyX3QgKmMsIHVpbnQ4X3QgKmJ1ZmZlciwgdWludDMyXwogICAgIHJldHVybiAoKChjKS0+dHlw
ZSktPmVuY3J5cHQoKChjKS0+c3RhdGUpLCBidWZmZXIsIG51bV9vY3RldHNfdG9fb3V0cHV0KSk7
CiB9CiAKLXNydHBfZXJyX3N0YXR1c190IHNydHBfY2lwaGVyX2VuY3J5cHQgKHNydHBfY2lwaGVy
X3QgKmMsIHVpbnQ4X3QgKmJ1ZmZlciwgdWludDMyX3QgKm51bV9vY3RldHNfdG9fb3V0cHV0KQor
c3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jaXBoZXJfZW5jcnlwdChzcnRwX2NpcGhlcl90ICpjLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50OF90ICpidWZmZXIsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90ICpudW1fb2N0ZXRz
X3RvX291dHB1dCkKIHsKICAgICBpZiAoIWMgfHwgIWMtPnR5cGUgfHwgIWMtPnN0YXRlKSB7Ci0J
cmV0dXJuIChzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtKTsKKyAgICAgICAgcmV0dXJuIChzcnRw
X2Vycl9zdGF0dXNfYmFkX3BhcmFtKTsKICAgICB9CiAKICAgICByZXR1cm4gKCgoYyktPnR5cGUp
LT5lbmNyeXB0KCgoYyktPnN0YXRlKSwgYnVmZmVyLCBudW1fb2N0ZXRzX3RvX291dHB1dCkpOwog
fQogCi1zcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NpcGhlcl9kZWNyeXB0IChzcnRwX2NpcGhlcl90
ICpjLCB1aW50OF90ICpidWZmZXIsIHVpbnQzMl90ICpudW1fb2N0ZXRzX3RvX291dHB1dCkKK3Ny
dHBfZXJyX3N0YXR1c190IHNydHBfY2lwaGVyX2RlY3J5cHQoc3J0cF9jaXBoZXJfdCAqYywKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDhfdCAqYnVmZmVyLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCAqbnVtX29jdGV0c190
b19vdXRwdXQpCiB7CiAgICAgaWYgKCFjIHx8ICFjLT50eXBlIHx8ICFjLT5zdGF0ZSkgewotCXJl
dHVybiAoc3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJhbSk7CisgICAgICAgIHJldHVybiAoc3J0cF9l
cnJfc3RhdHVzX2JhZF9wYXJhbSk7CiAgICAgfQogCiAgICAgcmV0dXJuICgoKGMpLT50eXBlKS0+
ZGVjcnlwdCgoKGMpLT5zdGF0ZSksIGJ1ZmZlciwgbnVtX29jdGV0c190b19vdXRwdXQpKTsKIH0K
IAotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jaXBoZXJfZ2V0X3RhZyAoc3J0cF9jaXBoZXJfdCAq
YywgdWludDhfdCAqYnVmZmVyLCB1aW50MzJfdCAqdGFnX2xlbikKK3NydHBfZXJyX3N0YXR1c190
IHNydHBfY2lwaGVyX2dldF90YWcoc3J0cF9jaXBoZXJfdCAqYywKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgdWludDhfdCAqYnVmZmVyLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCAqdGFnX2xlbikKIHsKICAgICBpZiAoIWMgfHwg
IWMtPnR5cGUgfHwgIWMtPnN0YXRlKSB7Ci0JcmV0dXJuIChzcnRwX2Vycl9zdGF0dXNfYmFkX3Bh
cmFtKTsKKyAgICAgICAgcmV0dXJuIChzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtKTsKICAgICB9
CiAgICAgaWYgKCEoKGMpLT50eXBlKS0+Z2V0X3RhZykgewotCXJldHVybiAoc3J0cF9lcnJfc3Rh
dHVzX25vX3N1Y2hfb3ApOworICAgICAgICByZXR1cm4gKHNydHBfZXJyX3N0YXR1c19ub19zdWNo
X29wKTsKICAgICB9CiAKICAgICByZXR1cm4gKCgoYyktPnR5cGUpLT5nZXRfdGFnKCgoYyktPnN0
YXRlKSwgYnVmZmVyLCB0YWdfbGVuKSk7CiB9CiAKLXNydHBfZXJyX3N0YXR1c190IHNydHBfY2lw
aGVyX3NldF9hYWQgKHNydHBfY2lwaGVyX3QgKmMsIGNvbnN0IHVpbnQ4X3QgKmFhZCwgdWludDMy
X3QgYWFkX2xlbikKK3NydHBfZXJyX3N0YXR1c190IHNydHBfY2lwaGVyX3NldF9hYWQoc3J0cF9j
aXBoZXJfdCAqYywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qg
dWludDhfdCAqYWFkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50
MzJfdCBhYWRfbGVuKQogewogICAgIGlmICghYyB8fCAhYy0+dHlwZSB8fCAhYy0+c3RhdGUpIHsK
LQlyZXR1cm4gKHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW0pOworICAgICAgICByZXR1cm4gKHNy
dHBfZXJyX3N0YXR1c19iYWRfcGFyYW0pOwogICAgIH0KICAgICBpZiAoISgoYyktPnR5cGUpLT5z
ZXRfYWFkKSB7Ci0JcmV0dXJuIChzcnRwX2Vycl9zdGF0dXNfbm9fc3VjaF9vcCk7CisgICAgICAg
IHJldHVybiAoc3J0cF9lcnJfc3RhdHVzX25vX3N1Y2hfb3ApOwogICAgIH0KIAogICAgIHJldHVy
biAoKChjKS0+dHlwZSktPnNldF9hYWQoKChjKS0+c3RhdGUpLCBhYWQsIGFhZF9sZW4pKTsKQEAg
LTE0Niw1NyArMTU5LDU2IEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfY2lwaGVyX3NldF9hYWQg
KHNydHBfY2lwaGVyX3QgKmMsIGNvbnN0IHVpbnQ4X3QgKmFhZCwgdWluCiAKIC8qIHNvbWUgYm9v
a2tlZXBpbmcgZnVuY3Rpb25zICovCiAKLWludCBzcnRwX2NpcGhlcl9nZXRfa2V5X2xlbmd0aCAo
Y29uc3Qgc3J0cF9jaXBoZXJfdCAqYykKK2ludCBzcnRwX2NpcGhlcl9nZXRfa2V5X2xlbmd0aChj
b25zdCBzcnRwX2NpcGhlcl90ICpjKQogewogICAgIHJldHVybiBjLT5rZXlfbGVuOwogfQogCi0K
IC8qCiAgKiBBIHRyaXZpYWwgcGxhdGZvcm0gaW5kZXBlbmRlbnQgcmFuZG9tIHNvdXJjZS4gIFRo
ZSByYW5kb20KICAqIGRhdGEgaXMgdXNlZCBmb3Igc29tZSBvZiB0aGUgY2lwaGVyIHNlbGYtdGVz
dHMuCiAgKi8KLXN0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NpcGhlcl9yYW5kICh2b2lk
ICpkZXN0LCB1aW50MzJfdCBsZW4pIAorc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfY2lw
aGVyX3JhbmQodm9pZCAqZGVzdCwgdWludDMyX3QgbGVuKQogewogI2lmIGRlZmluZWQoSEFWRV9S
QU5EX1MpCi0gIHVpbnQ4X3QgKmRzdCA9ICh1aW50OF90ICopZGVzdDsKLSAgd2hpbGUgKGxlbikK
LSAgewotICAgIHVuc2lnbmVkIGludCB2YWw7Ci0gICAgZXJybm9fdCBlcnIgPSByYW5kX3MoJnZh
bCk7Ci0KLSAgICBpZiAoZXJyICE9IDApCi0gICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2Zh
aWw7Ci0gIAotICAgICpkc3QrKyA9IHZhbCAmIDB4ZmY7Ci0gICAgbGVuLS07Ci0gIH0KKyAgICB1
aW50OF90ICpkc3QgPSAodWludDhfdCAqKWRlc3Q7CisgICAgd2hpbGUgKGxlbikgeworICAgICAg
ICB1bnNpZ25lZCBpbnQgdmFsOworICAgICAgICBlcnJub190IGVyciA9IHJhbmRfcygmdmFsKTsK
KworICAgICAgICBpZiAoZXJyICE9IDApCisgICAgICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3Rh
dHVzX2ZhaWw7CisKKyAgICAgICAgKmRzdCsrID0gdmFsICYgMHhmZjsKKyAgICAgICAgbGVuLS07
CisgICAgfQogI2Vsc2UKLSAgLyogR2VuZXJpYyBDLWxpYnJhcnkgKHJhbmQoKSkgdmVyc2lvbiAq
LwotICAvKiBUaGlzIGlzIGEgcmFuZG9tIHNvdXJjZSBvZiBsYXN0IHJlc29ydCAqLwotICB1aW50
OF90ICpkc3QgPSAodWludDhfdCAqKWRlc3Q7Ci0gIHdoaWxlIChsZW4pCi0gIHsKLQkgIGludCB2
YWwgPSByYW5kKCk7Ci0JICAvKiByYW5kKCkgcmV0dXJucyAwLTMyNzY3ICh1Z2gpICovCi0JICAv
KiBJcyB0aGlzIGEgZ29vZCBlbm91Z2ggd2F5IHRvIGdldCByYW5kb20gYnl0ZXM/Ci0JICAgICBJ
dCBpcyBpZiBpdCBwYXNzZXMgRklQUy0xNDAuLi4gKi8KLQkgICpkc3QrKyA9IHZhbCAmIDB4ZmY7
Ci0JICBsZW4tLTsKLSAgfQorICAgIC8qIEdlbmVyaWMgQy1saWJyYXJ5IChyYW5kKCkpIHZlcnNp
b24gKi8KKyAgICAvKiBUaGlzIGlzIGEgcmFuZG9tIHNvdXJjZSBvZiBsYXN0IHJlc29ydCAqLwor
ICAgIHVpbnQ4X3QgKmRzdCA9ICh1aW50OF90ICopZGVzdDsKKyAgICB3aGlsZSAobGVuKSB7Cisg
ICAgICAgIGludCB2YWwgPSByYW5kKCk7CisgICAgICAgIC8qIHJhbmQoKSByZXR1cm5zIDAtMzI3
NjcgKHVnaCkgKi8KKyAgICAgICAgLyogSXMgdGhpcyBhIGdvb2QgZW5vdWdoIHdheSB0byBnZXQg
cmFuZG9tIGJ5dGVzPworICAgICAgICAgICBJdCBpcyBpZiBpdCBwYXNzZXMgRklQUy0xNDAuLi4g
Ki8KKyAgICAgICAgKmRzdCsrID0gdmFsICYgMHhmZjsKKyAgICAgICAgbGVuLS07CisgICAgfQog
I2VuZGlmCi0gIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CisgICAgcmV0dXJuIHNydHBfZXJy
X3N0YXR1c19vazsKIH0KLSAKKwogI2RlZmluZSBTRUxGX1RFU1RfQlVGX09DVEVUUyAxMjgKLSNk
ZWZpbmUgTlVNX1JBTkRfVEVTVFMgICAgICAgMTI4Ci0jZGVmaW5lIE1BWF9LRVlfTEVOICAgICAg
ICAgIDY0CisjZGVmaW5lIE5VTV9SQU5EX1RFU1RTIDEyOAorI2RlZmluZSBNQVhfS0VZX0xFTiA2
NAogLyoKICAqIHNydHBfY2lwaGVyX3R5cGVfdGVzdChjdCwgdGVzdF9kYXRhKSB0ZXN0cyBhIGNp
cGhlciBvZiB0eXBlIGN0IGFnYWluc3QKICAqIHRlc3QgY2FzZXMgcHJvdmlkZWQgaW4gYSBsaXN0
IHRlc3RfZGF0YSBvZiB2YWx1ZXMgb2Yga2V5LCBzYWx0LCBpdiwKICAqIHBsYWludGV4dCwgYW5k
IGNpcGhlcnRleHQgdGhhdCBpcyBrbm93biB0byBiZSBnb29kCiAgKi8KLXNydHBfZXJyX3N0YXR1
c190IHNydHBfY2lwaGVyX3R5cGVfdGVzdCAoY29uc3Qgc3J0cF9jaXBoZXJfdHlwZV90ICpjdCwg
Y29uc3Qgc3J0cF9jaXBoZXJfdGVzdF9jYXNlX3QgKnRlc3RfZGF0YSkKK3NydHBfZXJyX3N0YXR1
c190IHNydHBfY2lwaGVyX3R5cGVfdGVzdCgKKyAgICBjb25zdCBzcnRwX2NpcGhlcl90eXBlX3Qg
KmN0LAorICAgIGNvbnN0IHNydHBfY2lwaGVyX3Rlc3RfY2FzZV90ICp0ZXN0X2RhdGEpCiB7CiAg
ICAgY29uc3Qgc3J0cF9jaXBoZXJfdGVzdF9jYXNlX3QgKnRlc3RfY2FzZSA9IHRlc3RfZGF0YTsK
ICAgICBzcnRwX2NpcGhlcl90ICpjOwpAQCAtMjA2LDYgKzIxOCw3IEBAIHNydHBfZXJyX3N0YXR1
c190IHNydHBfY2lwaGVyX3R5cGVfdGVzdCAoY29uc3Qgc3J0cF9jaXBoZXJfdHlwZV90ICpjdCwg
Y29uc3Qgc3J0CiAgICAgdWludDMyX3QgdGFnX2xlbjsKICAgICB1bnNpZ25lZCBpbnQgbGVuOwog
ICAgIGludCBpLCBqLCBjYXNlX251bSA9IDA7CisgICAgdW5zaWduZWQgayA9IDA7CiAKICAgICBk
ZWJ1Z19wcmludChzcnRwX21vZF9jaXBoZXIsICJydW5uaW5nIHNlbGYtdGVzdCBmb3IgY2lwaGVy
ICVzIiwKICAgICAgICAgICAgICAgICBjdC0+ZGVzY3JpcHRpb24pOwpAQCAtMjI0LDcgKzIzNyw4
IEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfY2lwaGVyX3R5cGVfdGVzdCAoY29uc3Qgc3J0cF9j
aXBoZXJfdHlwZV90ICpjdCwgY29uc3Qgc3J0CiAgICAgICovCiAgICAgd2hpbGUgKHRlc3RfY2Fz
ZSAhPSBOVUxMKSB7CiAgICAgICAgIC8qIGFsbG9jYXRlIGNpcGhlciAqLwotICAgICAgICBzdGF0
dXMgPSBzcnRwX2NpcGhlcl90eXBlX2FsbG9jKGN0LCAmYywgdGVzdF9jYXNlLT5rZXlfbGVuZ3Ro
X29jdGV0cywgdGVzdF9jYXNlLT50YWdfbGVuZ3RoX29jdGV0cyk7CisgICAgICAgIHN0YXR1cyA9
IHNydHBfY2lwaGVyX3R5cGVfYWxsb2MoY3QsICZjLCB0ZXN0X2Nhc2UtPmtleV9sZW5ndGhfb2N0
ZXRzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRlc3RfY2FzZS0+
dGFnX2xlbmd0aF9vY3RldHMpOwogICAgICAgICBpZiAoc3RhdHVzKSB7CiAgICAgICAgICAgICBy
ZXR1cm4gc3RhdHVzOwogICAgICAgICB9CkBAIC0yNDYsMzYgKzI2MCwzOSBAQCBzcnRwX2Vycl9z
dGF0dXNfdCBzcnRwX2NpcGhlcl90eXBlX3Rlc3QgKGNvbnN0IHNydHBfY2lwaGVyX3R5cGVfdCAq
Y3QsIGNvbnN0IHNydAogICAgICAgICAgICAgc3J0cF9jaXBoZXJfZGVhbGxvYyhjKTsKICAgICAg
ICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtOwogICAgICAgICB9Ci0gICAg
ICAgIGZvciAoaSA9IDA7IGkgPCB0ZXN0X2Nhc2UtPnBsYWludGV4dF9sZW5ndGhfb2N0ZXRzOyBp
KyspIHsKLSAgICAgICAgICAgIGJ1ZmZlcltpXSA9IHRlc3RfY2FzZS0+cGxhaW50ZXh0W2ldOwor
ICAgICAgICBmb3IgKGsgPSAwOyBrIDwgdGVzdF9jYXNlLT5wbGFpbnRleHRfbGVuZ3RoX29jdGV0
czsgaysrKSB7CisgICAgICAgICAgICBidWZmZXJba10gPSB0ZXN0X2Nhc2UtPnBsYWludGV4dFtr
XTsKICAgICAgICAgfQogCiAgICAgICAgIGRlYnVnX3ByaW50KHNydHBfbW9kX2NpcGhlciwgInBs
YWludGV4dDogICAgJXMiLAotICAgICAgICAgICAgICAgICAgICBzcnRwX29jdGV0X3N0cmluZ19o
ZXhfc3RyaW5nKGJ1ZmZlciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB0ZXN0X2Nhc2UtPnBsYWludGV4dF9sZW5ndGhfb2N0ZXRzKSk7CisgICAgICAg
ICAgICAgICAgICAgIHNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcoCisgICAgICAgICAgICAg
ICAgICAgICAgICBidWZmZXIsIHRlc3RfY2FzZS0+cGxhaW50ZXh0X2xlbmd0aF9vY3RldHMpKTsK
IAogICAgICAgICAvKiBzZXQgdGhlIGluaXRpYWxpemF0aW9uIHZlY3RvciAqLwotICAgICAgICBz
dGF0dXMgPSBzcnRwX2NpcGhlcl9zZXRfaXYoYywgKHVpbnQ4X3QqKXRlc3RfY2FzZS0+aWR4LCBz
cnRwX2RpcmVjdGlvbl9lbmNyeXB0KTsKKyAgICAgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfc2V0
X2l2KGMsICh1aW50OF90ICopdGVzdF9jYXNlLT5pZHgsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBzcnRwX2RpcmVjdGlvbl9lbmNyeXB0KTsKICAgICAgICAgaWYgKHN0YXR1
cykgewogICAgICAgICAgICAgc3J0cF9jaXBoZXJfZGVhbGxvYyhjKTsKICAgICAgICAgICAgIHJl
dHVybiBzdGF0dXM7CiAgICAgICAgIH0KIAotICAgICAgICBpZiAoYy0+YWxnb3JpdGhtID09IFNS
VFBfQUVTX0dDTV8xMjggfHwgYy0+YWxnb3JpdGhtID09IFNSVFBfQUVTX0dDTV8yNTYpIHsKKyAg
ICAgICAgaWYgKGMtPmFsZ29yaXRobSA9PSBTUlRQX0FFU19HQ01fMTI4IHx8CisgICAgICAgICAg
ICBjLT5hbGdvcml0aG0gPT0gU1JUUF9BRVNfR0NNXzI1NikgewogICAgICAgICAgICAgZGVidWdf
cHJpbnQoc3J0cF9tb2RfY2lwaGVyLCAiSVY6ICAgICVzIiwKICAgICAgICAgICAgICAgICAgICAg
ICAgIHNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcodGVzdF9jYXNlLT5pZHgsIDEyKSk7CiAK
ICAgICAgICAgICAgIC8qCiAgICAgICAgICAgICAgKiBTZXQgdGhlIEFBRAogICAgICAgICAgICAg
ICovCi0gICAgICAgICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9zZXRfYWFkKGMsIHRlc3RfY2Fz
ZS0+YWFkLCB0ZXN0X2Nhc2UtPmFhZF9sZW5ndGhfb2N0ZXRzKTsKKyAgICAgICAgICAgIHN0YXR1
cyA9IHNydHBfY2lwaGVyX3NldF9hYWQoYywgdGVzdF9jYXNlLT5hYWQsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRlc3RfY2FzZS0+YWFkX2xlbmd0aF9vY3RldHMp
OwogICAgICAgICAgICAgaWYgKHN0YXR1cykgewogICAgICAgICAgICAgICAgIHNydHBfY2lwaGVy
X2RlYWxsb2MoYyk7CiAgICAgICAgICAgICAgICAgcmV0dXJuIHN0YXR1czsKICAgICAgICAgICAg
IH0KICAgICAgICAgICAgIGRlYnVnX3ByaW50KHNydHBfbW9kX2NpcGhlciwgIkFBRDogICAgJXMi
LAotICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZyh0
ZXN0X2Nhc2UtPmFhZCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgdGVzdF9jYXNlLT5hYWRfbGVuZ3RoX29jdGV0cykpOworICAgICAgICAgICAg
ICAgICAgICAgICAgc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZygKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB0ZXN0X2Nhc2UtPmFhZCwgdGVzdF9jYXNlLT5hYWRfbGVuZ3RoX29jdGV0
cykpOwogICAgICAgICB9CiAKICAgICAgICAgLyogZW5jcnlwdCAqLwpAQCAtMjg2LDcgKzMwMyw4
IEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfY2lwaGVyX3R5cGVfdGVzdCAoY29uc3Qgc3J0cF9j
aXBoZXJfdHlwZV90ICpjdCwgY29uc3Qgc3J0CiAgICAgICAgICAgICByZXR1cm4gc3RhdHVzOwog
ICAgICAgICB9CiAKLSAgICAgICAgaWYgKGMtPmFsZ29yaXRobSA9PSBTUlRQX0FFU19HQ01fMTI4
IHx8IGMtPmFsZ29yaXRobSA9PSBTUlRQX0FFU19HQ01fMjU2KSB7CisgICAgICAgIGlmIChjLT5h
bGdvcml0aG0gPT0gU1JUUF9BRVNfR0NNXzEyOCB8fAorICAgICAgICAgICAgYy0+YWxnb3JpdGht
ID09IFNSVFBfQUVTX0dDTV8yNTYpIHsKICAgICAgICAgICAgIC8qCiAgICAgICAgICAgICAgKiBH
ZXQgdGhlIEdDTSB0YWcKICAgICAgICAgICAgICAqLwpAQCAtMjk5LDggKzMxNyw4IEBAIHNydHBf
ZXJyX3N0YXR1c190IHNydHBfY2lwaGVyX3R5cGVfdGVzdCAoY29uc3Qgc3J0cF9jaXBoZXJfdHlw
ZV90ICpjdCwgY29uc3Qgc3J0CiAgICAgICAgIH0KIAogICAgICAgICBkZWJ1Z19wcmludChzcnRw
X21vZF9jaXBoZXIsICJjaXBoZXJ0ZXh0OiAgICVzIiwKLSAgICAgICAgICAgICAgICAgICAgc3J0
cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZyhidWZmZXIsCi0gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVzdF9jYXNlLT5jaXBoZXJ0ZXh0X2xlbmd0aF9v
Y3RldHMpKTsKKyAgICAgICAgICAgICAgICAgICAgc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmlu
ZygKKyAgICAgICAgICAgICAgICAgICAgICAgIGJ1ZmZlciwgdGVzdF9jYXNlLT5jaXBoZXJ0ZXh0
X2xlbmd0aF9vY3RldHMpKTsKIAogICAgICAgICAvKiBjb21wYXJlIHRoZSByZXN1bHRpbmcgY2lw
aGVydGV4dCB3aXRoIHRoYXQgaW4gdGhlIHRlc3QgY2FzZSAqLwogICAgICAgICBpZiAobGVuICE9
IHRlc3RfY2FzZS0+Y2lwaGVydGV4dF9sZW5ndGhfb2N0ZXRzKSB7CkBAIC0zMDgsMjIgKzMyNiwy
MiBAQCBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NpcGhlcl90eXBlX3Rlc3QgKGNvbnN0IHNydHBf
Y2lwaGVyX3R5cGVfdCAqY3QsIGNvbnN0IHNydAogICAgICAgICAgICAgcmV0dXJuIHNydHBfZXJy
X3N0YXR1c19hbGdvX2ZhaWw7CiAgICAgICAgIH0KICAgICAgICAgc3RhdHVzID0gc3J0cF9lcnJf
c3RhdHVzX29rOwotICAgICAgICBmb3IgKGkgPSAwOyBpIDwgdGVzdF9jYXNlLT5jaXBoZXJ0ZXh0
X2xlbmd0aF9vY3RldHM7IGkrKykgewotICAgICAgICAgICAgaWYgKGJ1ZmZlcltpXSAhPSB0ZXN0
X2Nhc2UtPmNpcGhlcnRleHRbaV0pIHsKKyAgICAgICAgZm9yIChrID0gMDsgayA8IHRlc3RfY2Fz
ZS0+Y2lwaGVydGV4dF9sZW5ndGhfb2N0ZXRzOyBrKyspIHsKKyAgICAgICAgICAgIGlmIChidWZm
ZXJba10gIT0gdGVzdF9jYXNlLT5jaXBoZXJ0ZXh0W2tdKSB7CiAgICAgICAgICAgICAgICAgc3Rh
dHVzID0gc3J0cF9lcnJfc3RhdHVzX2FsZ29fZmFpbDsKICAgICAgICAgICAgICAgICBkZWJ1Z19w
cmludChzcnRwX21vZF9jaXBoZXIsICJ0ZXN0IGNhc2UgJWQgZmFpbGVkIiwgY2FzZV9udW0pOwot
ICAgICAgICAgICAgICAgIGRlYnVnX3ByaW50KHNydHBfbW9kX2NpcGhlciwgIihmYWlsdXJlIGF0
IGJ5dGUgJWQpIiwgaSk7CisgICAgICAgICAgICAgICAgZGVidWdfcHJpbnQoc3J0cF9tb2RfY2lw
aGVyLCAiKGZhaWx1cmUgYXQgYnl0ZSAldSkiLCBrKTsKICAgICAgICAgICAgICAgICBicmVhazsK
ICAgICAgICAgICAgIH0KICAgICAgICAgfQogICAgICAgICBpZiAoc3RhdHVzKSB7Ci0KICAgICAg
ICAgICAgIGRlYnVnX3ByaW50KHNydHBfbW9kX2NpcGhlciwgImMgY29tcHV0ZWQ6ICVzIiwKLSAg
ICAgICAgICAgICAgICAgICAgICAgIHNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcoYnVmZmVy
LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAy
ICogdGVzdF9jYXNlLT5wbGFpbnRleHRfbGVuZ3RoX29jdGV0cykpOworICAgICAgICAgICAgICAg
ICAgICAgICAgc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZygKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBidWZmZXIsIDIgKiB0ZXN0X2Nhc2UtPnBsYWludGV4dF9sZW5ndGhfb2N0ZXRz
KSk7CiAgICAgICAgICAgICBkZWJ1Z19wcmludChzcnRwX21vZF9jaXBoZXIsICJjIGV4cGVjdGVk
OiAlcyIsCi0gICAgICAgICAgICAgICAgICAgICAgICBzcnRwX29jdGV0X3N0cmluZ19oZXhfc3Ry
aW5nKHRlc3RfY2FzZS0+Y2lwaGVydGV4dCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgMiAqIHRlc3RfY2FzZS0+cGxhaW50ZXh0X2xlbmd0aF9v
Y3RldHMpKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfb2N0ZXRfc3RyaW5nX2hleF9z
dHJpbmcoCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVzdF9jYXNlLT5jaXBoZXJ0ZXh0
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIDIgKiB0ZXN0X2Nhc2UtPnBsYWludGV4dF9s
ZW5ndGhfb2N0ZXRzKSk7CiAKICAgICAgICAgICAgIHNydHBfY2lwaGVyX2RlYWxsb2MoYyk7CiAg
ICAgICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2FsZ29fZmFpbDsKQEAgLTM0NiwzMyAr
MzY0LDM2IEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfY2lwaGVyX3R5cGVfdGVzdCAoY29uc3Qg
c3J0cF9jaXBoZXJfdHlwZV90ICpjdCwgY29uc3Qgc3J0CiAgICAgICAgICAgICBzcnRwX2NpcGhl
cl9kZWFsbG9jKGMpOwogICAgICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfcGFy
YW07CiAgICAgICAgIH0KLSAgICAgICAgZm9yIChpID0gMDsgaSA8IHRlc3RfY2FzZS0+Y2lwaGVy
dGV4dF9sZW5ndGhfb2N0ZXRzOyBpKyspIHsKLSAgICAgICAgICAgIGJ1ZmZlcltpXSA9IHRlc3Rf
Y2FzZS0+Y2lwaGVydGV4dFtpXTsKKyAgICAgICAgZm9yIChrID0gMDsgayA8IHRlc3RfY2FzZS0+
Y2lwaGVydGV4dF9sZW5ndGhfb2N0ZXRzOyBrKyspIHsKKyAgICAgICAgICAgIGJ1ZmZlcltrXSA9
IHRlc3RfY2FzZS0+Y2lwaGVydGV4dFtrXTsKICAgICAgICAgfQogCiAgICAgICAgIGRlYnVnX3By
aW50KHNydHBfbW9kX2NpcGhlciwgImNpcGhlcnRleHQ6ICAgICVzIiwKLSAgICAgICAgICAgICAg
ICAgICAgc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZyhidWZmZXIsCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVzdF9jYXNlLT5wbGFpbnRleHRf
bGVuZ3RoX29jdGV0cykpOworICAgICAgICAgICAgICAgICAgICBzcnRwX29jdGV0X3N0cmluZ19o
ZXhfc3RyaW5nKAorICAgICAgICAgICAgICAgICAgICAgICAgYnVmZmVyLCB0ZXN0X2Nhc2UtPnBs
YWludGV4dF9sZW5ndGhfb2N0ZXRzKSk7CiAKICAgICAgICAgLyogc2V0IHRoZSBpbml0aWFsaXph
dGlvbiB2ZWN0b3IgKi8KLSAgICAgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfc2V0X2l2KGMsICh1
aW50OF90Kil0ZXN0X2Nhc2UtPmlkeCwgc3J0cF9kaXJlY3Rpb25fZGVjcnlwdCk7CisgICAgICAg
IHN0YXR1cyA9IHNydHBfY2lwaGVyX3NldF9pdihjLCAodWludDhfdCAqKXRlc3RfY2FzZS0+aWR4
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF9kaXJlY3Rpb25fZGVj
cnlwdCk7CiAgICAgICAgIGlmIChzdGF0dXMpIHsKICAgICAgICAgICAgIHNydHBfY2lwaGVyX2Rl
YWxsb2MoYyk7CiAgICAgICAgICAgICByZXR1cm4gc3RhdHVzOwogICAgICAgICB9CiAKLSAgICAg
ICAgaWYgKGMtPmFsZ29yaXRobSA9PSBTUlRQX0FFU19HQ01fMTI4IHx8IGMtPmFsZ29yaXRobSA9
PSBTUlRQX0FFU19HQ01fMjU2KSB7CisgICAgICAgIGlmIChjLT5hbGdvcml0aG0gPT0gU1JUUF9B
RVNfR0NNXzEyOCB8fAorICAgICAgICAgICAgYy0+YWxnb3JpdGhtID09IFNSVFBfQUVTX0dDTV8y
NTYpIHsKICAgICAgICAgICAgIC8qCiAgICAgICAgICAgICAgKiBTZXQgdGhlIEFBRAogICAgICAg
ICAgICAgICovCi0gICAgICAgICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9zZXRfYWFkKGMsIHRl
c3RfY2FzZS0+YWFkLCB0ZXN0X2Nhc2UtPmFhZF9sZW5ndGhfb2N0ZXRzKTsKKyAgICAgICAgICAg
IHN0YXR1cyA9IHNydHBfY2lwaGVyX3NldF9hYWQoYywgdGVzdF9jYXNlLT5hYWQsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRlc3RfY2FzZS0+YWFkX2xlbmd0aF9v
Y3RldHMpOwogICAgICAgICAgICAgaWYgKHN0YXR1cykgewogICAgICAgICAgICAgICAgIHNydHBf
Y2lwaGVyX2RlYWxsb2MoYyk7CiAgICAgICAgICAgICAgICAgcmV0dXJuIHN0YXR1czsKICAgICAg
ICAgICAgIH0KICAgICAgICAgICAgIGRlYnVnX3ByaW50KHNydHBfbW9kX2NpcGhlciwgIkFBRDog
ICAgJXMiLAotICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0
cmluZyh0ZXN0X2Nhc2UtPmFhZCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgdGVzdF9jYXNlLT5hYWRfbGVuZ3RoX29jdGV0cykpOworICAgICAg
ICAgICAgICAgICAgICAgICAgc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZygKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB0ZXN0X2Nhc2UtPmFhZCwgdGVzdF9jYXNlLT5hYWRfbGVuZ3Ro
X29jdGV0cykpOwogICAgICAgICB9CiAKICAgICAgICAgLyogZGVjcnlwdCAqLwpAQCAtMzg0LDgg
KzQwNSw4IEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfY2lwaGVyX3R5cGVfdGVzdCAoY29uc3Qg
c3J0cF9jaXBoZXJfdHlwZV90ICpjdCwgY29uc3Qgc3J0CiAgICAgICAgIH0KIAogICAgICAgICBk
ZWJ1Z19wcmludChzcnRwX21vZF9jaXBoZXIsICJwbGFpbnRleHQ6ICAgJXMiLAotICAgICAgICAg
ICAgICAgICAgICBzcnRwX29jdGV0X3N0cmluZ19oZXhfc3RyaW5nKGJ1ZmZlciwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0X2Nhc2UtPnBsYWlu
dGV4dF9sZW5ndGhfb2N0ZXRzKSk7CisgICAgICAgICAgICAgICAgICAgIHNydHBfb2N0ZXRfc3Ry
aW5nX2hleF9zdHJpbmcoCisgICAgICAgICAgICAgICAgICAgICAgICBidWZmZXIsIHRlc3RfY2Fz
ZS0+cGxhaW50ZXh0X2xlbmd0aF9vY3RldHMpKTsKIAogICAgICAgICAvKiBjb21wYXJlIHRoZSBy
ZXN1bHRpbmcgcGxhaW50ZXh0IHdpdGggdGhhdCBpbiB0aGUgdGVzdCBjYXNlICovCiAgICAgICAg
IGlmIChsZW4gIT0gdGVzdF9jYXNlLT5wbGFpbnRleHRfbGVuZ3RoX29jdGV0cykgewpAQCAtMzkz
LDIxICs0MTQsMjEgQEAgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jaXBoZXJfdHlwZV90ZXN0IChj
b25zdCBzcnRwX2NpcGhlcl90eXBlX3QgKmN0LCBjb25zdCBzcnQKICAgICAgICAgICAgIHJldHVy
biBzcnRwX2Vycl9zdGF0dXNfYWxnb19mYWlsOwogICAgICAgICB9CiAgICAgICAgIHN0YXR1cyA9
IHNydHBfZXJyX3N0YXR1c19vazsKLSAgICAgICAgZm9yIChpID0gMDsgaSA8IHRlc3RfY2FzZS0+
cGxhaW50ZXh0X2xlbmd0aF9vY3RldHM7IGkrKykgewotICAgICAgICAgICAgaWYgKGJ1ZmZlcltp
XSAhPSB0ZXN0X2Nhc2UtPnBsYWludGV4dFtpXSkgeworICAgICAgICBmb3IgKGsgPSAwOyBrIDwg
dGVzdF9jYXNlLT5wbGFpbnRleHRfbGVuZ3RoX29jdGV0czsgaysrKSB7CisgICAgICAgICAgICBp
ZiAoYnVmZmVyW2tdICE9IHRlc3RfY2FzZS0+cGxhaW50ZXh0W2tdKSB7CiAgICAgICAgICAgICAg
ICAgc3RhdHVzID0gc3J0cF9lcnJfc3RhdHVzX2FsZ29fZmFpbDsKICAgICAgICAgICAgICAgICBk
ZWJ1Z19wcmludChzcnRwX21vZF9jaXBoZXIsICJ0ZXN0IGNhc2UgJWQgZmFpbGVkIiwgY2FzZV9u
dW0pOwotICAgICAgICAgICAgICAgIGRlYnVnX3ByaW50KHNydHBfbW9kX2NpcGhlciwgIihmYWls
dXJlIGF0IGJ5dGUgJWQpIiwgaSk7CisgICAgICAgICAgICAgICAgZGVidWdfcHJpbnQoc3J0cF9t
b2RfY2lwaGVyLCAiKGZhaWx1cmUgYXQgYnl0ZSAldSkiLCBrKTsKICAgICAgICAgICAgIH0KICAg
ICAgICAgfQogICAgICAgICBpZiAoc3RhdHVzKSB7Ci0KICAgICAgICAgICAgIGRlYnVnX3ByaW50
KHNydHBfbW9kX2NpcGhlciwgInAgY29tcHV0ZWQ6ICVzIiwKLSAgICAgICAgICAgICAgICAgICAg
ICAgIHNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcoYnVmZmVyLAotICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAyICogdGVzdF9jYXNlLT5wbGFp
bnRleHRfbGVuZ3RoX29jdGV0cykpOworICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF9vY3Rl
dF9zdHJpbmdfaGV4X3N0cmluZygKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBidWZmZXIs
IDIgKiB0ZXN0X2Nhc2UtPnBsYWludGV4dF9sZW5ndGhfb2N0ZXRzKSk7CiAgICAgICAgICAgICBk
ZWJ1Z19wcmludChzcnRwX21vZF9jaXBoZXIsICJwIGV4cGVjdGVkOiAlcyIsCi0gICAgICAgICAg
ICAgICAgICAgICAgICBzcnRwX29jdGV0X3N0cmluZ19oZXhfc3RyaW5nKHRlc3RfY2FzZS0+cGxh
aW50ZXh0LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAyICogdGVzdF9jYXNlLT5wbGFpbnRleHRfbGVuZ3RoX29jdGV0cykpOworICAgICAgICAg
ICAgICAgICAgICAgICAgc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZygKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICB0ZXN0X2Nhc2UtPnBsYWludGV4dCwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAyICogdGVzdF9jYXNlLT5wbGFpbnRleHRfbGVuZ3RoX29jdGV0cykpOwogCiAg
ICAgICAgICAgICBzcnRwX2NpcGhlcl9kZWFsbG9jKGMpOwogICAgICAgICAgICAgcmV0dXJuIHNy
dHBfZXJyX3N0YXR1c19hbGdvX2ZhaWw7CkBAIC00MzEsMTQgKzQ1MiwxNSBAQCBzcnRwX2Vycl9z
dGF0dXNfdCBzcnRwX2NpcGhlcl90eXBlX3Rlc3QgKGNvbnN0IHNydHBfY2lwaGVyX3R5cGVfdCAq
Y3QsIGNvbnN0IHNydAogCiAgICAgLyogYWxsb2NhdGUgY2lwaGVyLCB1c2luZyBwYXJhbWF0ZXJz
IGZyb20gdGhlIGZpcnN0IHRlc3QgY2FzZSAqLwogICAgIHRlc3RfY2FzZSA9IHRlc3RfZGF0YTsK
LSAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl90eXBlX2FsbG9jKGN0LCAmYywgdGVzdF9jYXNlLT5r
ZXlfbGVuZ3RoX29jdGV0cywgdGVzdF9jYXNlLT50YWdfbGVuZ3RoX29jdGV0cyk7CisgICAgc3Rh
dHVzID0gc3J0cF9jaXBoZXJfdHlwZV9hbGxvYyhjdCwgJmMsIHRlc3RfY2FzZS0+a2V5X2xlbmd0
aF9vY3RldHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0X2Nhc2Ut
PnRhZ19sZW5ndGhfb2N0ZXRzKTsKICAgICBpZiAoc3RhdHVzKSB7CiAgICAgICAgIHJldHVybiBz
dGF0dXM7CiAgICAgfQogCiAgICAgZm9yIChqID0gMDsgaiA8IE5VTV9SQU5EX1RFU1RTOyBqKysp
IHsKLSAgICAgICAgdW5zaWduZWQgbGVuZ3RoOwotICAgICAgICBpbnQgcGxhaW50ZXh0X2xlbjsK
KyAgICAgICAgdW5zaWduZWQgaW50IGxlbmd0aDsKKyAgICAgICAgdW5zaWduZWQgaW50IHBsYWlu
dGV4dF9sZW47CiAgICAgICAgIHVpbnQ4X3Qga2V5W01BWF9LRVlfTEVOXTsKICAgICAgICAgdWlu
dDhfdCBpdltNQVhfS0VZX0xFTl07CiAKQEAgLTQ4NSwyNCArNTA3LDI3IEBAIHNydHBfZXJyX3N0
YXR1c190IHNydHBfY2lwaGVyX3R5cGVfdGVzdCAoY29uc3Qgc3J0cF9jaXBoZXJfdHlwZV90ICpj
dCwgY29uc3Qgc3J0CiAgICAgICAgIH0KIAogICAgICAgICAvKiBzZXQgaW5pdGlhbGl6YXRpb24g
dmVjdG9yICovCi0gICAgICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3NldF9pdihjLCAodWludDhf
dCopdGVzdF9jYXNlLT5pZHgsIHNydHBfZGlyZWN0aW9uX2VuY3J5cHQpOworICAgICAgICBzdGF0
dXMgPSBzcnRwX2NpcGhlcl9zZXRfaXYoYywgKHVpbnQ4X3QgKil0ZXN0X2Nhc2UtPmlkeCwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfZGlyZWN0aW9uX2VuY3J5cHQp
OwogICAgICAgICBpZiAoc3RhdHVzKSB7CiAgICAgICAgICAgICBzcnRwX2NpcGhlcl9kZWFsbG9j
KGMpOwogICAgICAgICAgICAgcmV0dXJuIHN0YXR1czsKICAgICAgICAgfQogCi0gICAgICAgIGlm
IChjLT5hbGdvcml0aG0gPT0gU1JUUF9BRVNfR0NNXzEyOCB8fCBjLT5hbGdvcml0aG0gPT0gU1JU
UF9BRVNfR0NNXzI1NikgeworICAgICAgICBpZiAoYy0+YWxnb3JpdGhtID09IFNSVFBfQUVTX0dD
TV8xMjggfHwKKyAgICAgICAgICAgIGMtPmFsZ29yaXRobSA9PSBTUlRQX0FFU19HQ01fMjU2KSB7
CiAgICAgICAgICAgICAvKgogICAgICAgICAgICAgICogU2V0IHRoZSBBQUQKICAgICAgICAgICAg
ICAqLwotICAgICAgICAgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfc2V0X2FhZChjLCB0ZXN0X2Nh
c2UtPmFhZCwgdGVzdF9jYXNlLT5hYWRfbGVuZ3RoX29jdGV0cyk7CisgICAgICAgICAgICBzdGF0
dXMgPSBzcnRwX2NpcGhlcl9zZXRfYWFkKGMsIHRlc3RfY2FzZS0+YWFkLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0X2Nhc2UtPmFhZF9sZW5ndGhfb2N0ZXRz
KTsKICAgICAgICAgICAgIGlmIChzdGF0dXMpIHsKICAgICAgICAgICAgICAgICBzcnRwX2NpcGhl
cl9kZWFsbG9jKGMpOwogICAgICAgICAgICAgICAgIHJldHVybiBzdGF0dXM7CiAgICAgICAgICAg
ICB9CiAgICAgICAgICAgICBkZWJ1Z19wcmludChzcnRwX21vZF9jaXBoZXIsICJBQUQ6ICAgICVz
IiwKLSAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmco
dGVzdF9jYXNlLT5hYWQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHRlc3RfY2FzZS0+YWFkX2xlbmd0aF9vY3RldHMpKTsKKyAgICAgICAgICAg
ICAgICAgICAgICAgIHNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcoCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgdGVzdF9jYXNlLT5hYWQsIHRlc3RfY2FzZS0+YWFkX2xlbmd0aF9vY3Rl
dHMpKTsKICAgICAgICAgfQogCiAgICAgICAgIC8qIGVuY3J5cHQgYnVmZmVyIHdpdGggY2lwaGVy
ICovCkBAIC01MTIsNyArNTM3LDggQEAgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jaXBoZXJfdHlw
ZV90ZXN0IChjb25zdCBzcnRwX2NpcGhlcl90eXBlX3QgKmN0LCBjb25zdCBzcnQKICAgICAgICAg
ICAgIHNydHBfY2lwaGVyX2RlYWxsb2MoYyk7CiAgICAgICAgICAgICByZXR1cm4gc3RhdHVzOwog
ICAgICAgICB9Ci0gICAgICAgIGlmIChjLT5hbGdvcml0aG0gPT0gU1JUUF9BRVNfR0NNXzEyOCB8
fCBjLT5hbGdvcml0aG0gPT0gU1JUUF9BRVNfR0NNXzI1NikgeworICAgICAgICBpZiAoYy0+YWxn
b3JpdGhtID09IFNSVFBfQUVTX0dDTV8xMjggfHwKKyAgICAgICAgICAgIGMtPmFsZ29yaXRobSA9
PSBTUlRQX0FFU19HQ01fMjU2KSB7CiAgICAgICAgICAgICAvKgogICAgICAgICAgICAgICogR2V0
IHRoZSBHQ00gdGFnCiAgICAgICAgICAgICAgKi8KQEAgLTUzNSwyMyArNTYxLDI2IEBAIHNydHBf
ZXJyX3N0YXR1c190IHNydHBfY2lwaGVyX3R5cGVfdGVzdCAoY29uc3Qgc3J0cF9jaXBoZXJfdHlw
ZV90ICpjdCwgY29uc3Qgc3J0CiAgICAgICAgICAgICBzcnRwX2NpcGhlcl9kZWFsbG9jKGMpOwog
ICAgICAgICAgICAgcmV0dXJuIHN0YXR1czsKICAgICAgICAgfQotICAgICAgICBzdGF0dXMgPSBz
cnRwX2NpcGhlcl9zZXRfaXYoYywgKHVpbnQ4X3QqKXRlc3RfY2FzZS0+aWR4LCBzcnRwX2RpcmVj
dGlvbl9kZWNyeXB0KTsKKyAgICAgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfc2V0X2l2KGMsICh1
aW50OF90ICopdGVzdF9jYXNlLT5pZHgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBzcnRwX2RpcmVjdGlvbl9kZWNyeXB0KTsKICAgICAgICAgaWYgKHN0YXR1cykgewogICAg
ICAgICAgICAgc3J0cF9jaXBoZXJfZGVhbGxvYyhjKTsKICAgICAgICAgICAgIHJldHVybiBzdGF0
dXM7CiAgICAgICAgIH0KLSAgICAgICAgaWYgKGMtPmFsZ29yaXRobSA9PSBTUlRQX0FFU19HQ01f
MTI4IHx8IGMtPmFsZ29yaXRobSA9PSBTUlRQX0FFU19HQ01fMjU2KSB7CisgICAgICAgIGlmIChj
LT5hbGdvcml0aG0gPT0gU1JUUF9BRVNfR0NNXzEyOCB8fAorICAgICAgICAgICAgYy0+YWxnb3Jp
dGhtID09IFNSVFBfQUVTX0dDTV8yNTYpIHsKICAgICAgICAgICAgIC8qCiAgICAgICAgICAgICAg
KiBTZXQgdGhlIEFBRAogICAgICAgICAgICAgICovCi0gICAgICAgICAgICBzdGF0dXMgPSBzcnRw
X2NpcGhlcl9zZXRfYWFkKGMsIHRlc3RfY2FzZS0+YWFkLCB0ZXN0X2Nhc2UtPmFhZF9sZW5ndGhf
b2N0ZXRzKTsKKyAgICAgICAgICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3NldF9hYWQoYywgdGVz
dF9jYXNlLT5hYWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRl
c3RfY2FzZS0+YWFkX2xlbmd0aF9vY3RldHMpOwogICAgICAgICAgICAgaWYgKHN0YXR1cykgewog
ICAgICAgICAgICAgICAgIHNydHBfY2lwaGVyX2RlYWxsb2MoYyk7CiAgICAgICAgICAgICAgICAg
cmV0dXJuIHN0YXR1czsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGRlYnVnX3ByaW50KHNy
dHBfbW9kX2NpcGhlciwgIkFBRDogICAgJXMiLAotICAgICAgICAgICAgICAgICAgICAgICAgc3J0
cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZyh0ZXN0X2Nhc2UtPmFhZCwKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVzdF9jYXNlLT5hYWRfbGVu
Z3RoX29jdGV0cykpOworICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF9vY3RldF9zdHJpbmdf
aGV4X3N0cmluZygKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0X2Nhc2UtPmFhZCwg
dGVzdF9jYXNlLT5hYWRfbGVuZ3RoX29jdGV0cykpOwogICAgICAgICB9CiAgICAgICAgIHN0YXR1
cyA9IHNydHBfY2lwaGVyX2RlY3J5cHQoYywgYnVmZmVyLCAmbGVuZ3RoKTsKICAgICAgICAgaWYg
KHN0YXR1cykgewpAQCAtNTY4LDE4ICs1OTcsMTggQEAgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9j
aXBoZXJfdHlwZV90ZXN0IChjb25zdCBzcnRwX2NpcGhlcl90eXBlX3QgKmN0LCBjb25zdCBzcnQK
ICAgICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYWxnb19mYWlsOwogICAgICAgICB9
CiAgICAgICAgIHN0YXR1cyA9IHNydHBfZXJyX3N0YXR1c19vazsKLSAgICAgICAgZm9yIChpID0g
MDsgaSA8IHBsYWludGV4dF9sZW47IGkrKykgewotICAgICAgICAgICAgaWYgKGJ1ZmZlcltpXSAh
PSBidWZmZXIyW2ldKSB7CisgICAgICAgIGZvciAoayA9IDA7IGsgPCBwbGFpbnRleHRfbGVuOyBr
KyspIHsKKyAgICAgICAgICAgIGlmIChidWZmZXJba10gIT0gYnVmZmVyMltrXSkgewogICAgICAg
ICAgICAgICAgIHN0YXR1cyA9IHNydHBfZXJyX3N0YXR1c19hbGdvX2ZhaWw7Ci0gICAgICAgICAg
ICAgICAgZGVidWdfcHJpbnQoc3J0cF9tb2RfY2lwaGVyLCAicmFuZG9tIHRlc3QgY2FzZSAlZCBm
YWlsZWQiLCBjYXNlX251bSk7Ci0gICAgICAgICAgICAgICAgZGVidWdfcHJpbnQoc3J0cF9tb2Rf
Y2lwaGVyLCAiKGZhaWx1cmUgYXQgYnl0ZSAlZCkiLCBpKTsKKyAgICAgICAgICAgICAgICBkZWJ1
Z19wcmludChzcnRwX21vZF9jaXBoZXIsICJyYW5kb20gdGVzdCBjYXNlICVkIGZhaWxlZCIsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZV9udW0pOworICAgICAgICAgICAgICAgIGRl
YnVnX3ByaW50KHNydHBfbW9kX2NpcGhlciwgIihmYWlsdXJlIGF0IGJ5dGUgJXUpIiwgayk7CiAg
ICAgICAgICAgICB9CiAgICAgICAgIH0KICAgICAgICAgaWYgKHN0YXR1cykgewogICAgICAgICAg
ICAgc3J0cF9jaXBoZXJfZGVhbGxvYyhjKTsKICAgICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9z
dGF0dXNfYWxnb19mYWlsOwogICAgICAgICB9Ci0KICAgICB9CiAKICAgICBzdGF0dXMgPSBzcnRw
X2NpcGhlcl9kZWFsbG9jKGMpOwpAQCAtNTkwLDEyICs2MTksMTEgQEAgc3J0cF9lcnJfc3RhdHVz
X3Qgc3J0cF9jaXBoZXJfdHlwZV90ZXN0IChjb25zdCBzcnRwX2NpcGhlcl90eXBlX3QgKmN0LCBj
b25zdCBzcnQKICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQogCi0KIC8qCi0gKiBz
cnRwX2NpcGhlcl90eXBlX3NlbGZfdGVzdChjdCkgcGVyZm9ybXMgc3J0cF9jaXBoZXJfdHlwZV90
ZXN0IG9uIGN0J3MgaW50ZXJuYWwKLSAqIGxpc3Qgb2YgdGVzdCBkYXRhLgorICogc3J0cF9jaXBo
ZXJfdHlwZV9zZWxmX3Rlc3QoY3QpIHBlcmZvcm1zIHNydHBfY2lwaGVyX3R5cGVfdGVzdCBvbiBj
dCdzCisgKiBpbnRlcm5hbCBsaXN0IG9mIHRlc3QgZGF0YS4KICAqLwotc3J0cF9lcnJfc3RhdHVz
X3Qgc3J0cF9jaXBoZXJfdHlwZV9zZWxmX3Rlc3QgKGNvbnN0IHNydHBfY2lwaGVyX3R5cGVfdCAq
Y3QpCitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NpcGhlcl90eXBlX3NlbGZfdGVzdChjb25zdCBz
cnRwX2NpcGhlcl90eXBlX3QgKmN0KQogewogICAgIHJldHVybiBzcnRwX2NpcGhlcl90eXBlX3Rl
c3QoY3QsIGN0LT50ZXN0X2RhdGEpOwogfQpAQCAtNjEwLDcgKzYzOCw5IEBAIHNydHBfZXJyX3N0
YXR1c190IHNydHBfY2lwaGVyX3R5cGVfc2VsZl90ZXN0IChjb25zdCBzcnRwX2NpcGhlcl90eXBl
X3QgKmN0KQogICoKICAqIGlmIGFuIGVycm9yIGlzIGVuY291bnRlcmVkLCB0aGUgdmFsdWUgMCBp
cyByZXR1cm5lZAogICovCi11aW50NjRfdCBzcnRwX2NpcGhlcl9iaXRzX3Blcl9zZWNvbmQgKHNy
dHBfY2lwaGVyX3QgKmMsIGludCBvY3RldHNfaW5fYnVmZmVyLCBpbnQgbnVtX3RyaWFscykKK3Vp
bnQ2NF90IHNydHBfY2lwaGVyX2JpdHNfcGVyX3NlY29uZChzcnRwX2NpcGhlcl90ICpjLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBvY3RldHNfaW5fYnVmZmVyLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBudW1fdHJpYWxzKQogewog
ICAgIGludCBpOwogICAgIHYxMjhfdCBub25jZTsKQEAgLTYxOCwxNiArNjQ4LDE2IEBAIHVpbnQ2
NF90IHNydHBfY2lwaGVyX2JpdHNfcGVyX3NlY29uZCAoc3J0cF9jaXBoZXJfdCAqYywgaW50IG9j
dGV0c19pbl9idWZmZXIsIGluCiAgICAgdW5zaWduZWQgY2hhciAqZW5jX2J1ZjsKICAgICB1bnNp
Z25lZCBpbnQgbGVuID0gb2N0ZXRzX2luX2J1ZmZlcjsKIAotICAgIGVuY19idWYgPSAodW5zaWdu
ZWQgY2hhciopc3J0cF9jcnlwdG9fYWxsb2Mob2N0ZXRzX2luX2J1ZmZlcik7CisgICAgZW5jX2J1
ZiA9ICh1bnNpZ25lZCBjaGFyICopc3J0cF9jcnlwdG9fYWxsb2Mob2N0ZXRzX2luX2J1ZmZlcik7
CiAgICAgaWYgKGVuY19idWYgPT0gTlVMTCkgewogICAgICAgICByZXR1cm4gMDsgLyogaW5kaWNh
dGUgYmFkIHBhcmFtZXRlcnMgYnkgcmV0dXJuaW5nIG51bGwgKi8KLQogICAgIH0KICAgICAvKiB0
aW1lIHJlcGVhdGVkIHRyaWFscyAqLwogICAgIHYxMjhfc2V0X3RvX3plcm8oJm5vbmNlKTsKICAg
ICB0aW1lciA9IGNsb2NrKCk7CiAgICAgZm9yIChpID0gMDsgaSA8IG51bV90cmlhbHM7IGkrKywg
bm9uY2UudjMyWzNdID0gaSkgewotICAgICAgICBpZiAoc3J0cF9jaXBoZXJfc2V0X2l2KGMsICh1
aW50OF90Kikmbm9uY2UsIHNydHBfZGlyZWN0aW9uX2VuY3J5cHQpICE9IHNydHBfZXJyX3N0YXR1
c19vaykgeworICAgICAgICBpZiAoc3J0cF9jaXBoZXJfc2V0X2l2KGMsICh1aW50OF90ICopJm5v
bmNlLCBzcnRwX2RpcmVjdGlvbl9lbmNyeXB0KSAhPQorICAgICAgICAgICAgc3J0cF9lcnJfc3Rh
dHVzX29rKSB7CiAgICAgICAgICAgICBzcnRwX2NyeXB0b19mcmVlKGVuY19idWYpOwogICAgICAg
ICAgICAgcmV0dXJuIDA7CiAgICAgICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vY2lwaGVyL251bGxf
Y2lwaGVyLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L2xpYnNydHAvY3J5cHRvL2NpcGhlci9udWxsX2NpcGhlci5jCmluZGV4IDQ2YmYxMTI2ZGEzMGNj
MWJlNDRhZDkyMDk2OTZjODc0OTRjNTE1YTYuLjY1OWFkZDBkNDc2ZDQ2YjNhM2FmZjVlMDI5NWMx
YzMyMjE4ZTliNGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vY2lwaGVyL251bGxfY2lwaGVyLmMKKysrIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2Ny
eXB0by9jaXBoZXIvbnVsbF9jaXBoZXIuYwpAQCAtNDUsNDUgKzQ1LDQyIEBACiAgKi8KIAogI2lm
ZGVmIEhBVkVfQ09ORklHX0gKLSAgICAjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29u
ZmlnLmg+CiAjZW5kaWYKIAogI2luY2x1ZGUgImRhdGF0eXBlcy5oIgogI2luY2x1ZGUgIm51bGxf
Y2lwaGVyLmgiCi0jaW5jbHVkZSAiZXJyLmgiICAgICAgICAgICAgICAgIC8qIGZvciBzcnRwX2Rl
YnVnICovCisjaW5jbHVkZSAiZXJyLmgiIC8qIGZvciBzcnRwX2RlYnVnICovCiAjaW5jbHVkZSAi
YWxsb2MuaCIKKyNpbmNsdWRlICJjaXBoZXJfdHlwZXMuaCIKIAotLyogdGhlIG51bGxfY2lwaGVy
IHVzZXMgdGhlIGNpcGhlciBkZWJ1ZyBtb2R1bGUgICovCi0KLWV4dGVybiBzcnRwX2RlYnVnX21v
ZHVsZV90IHNydHBfbW9kX2NpcGhlcjsKLQotc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBf
bnVsbF9jaXBoZXJfYWxsb2MgKHNydHBfY2lwaGVyX3QgKipjLCBpbnQga2V5X2xlbiwgaW50IHRs
ZW4pCitzdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9udWxsX2NpcGhlcl9hbGxvYyhzcnRw
X2NpcGhlcl90ICoqYywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGludCBrZXlfbGVuLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgaW50IHRsZW4pCiB7CiAgICAgZXh0ZXJuIGNvbnN0IHNydHBfY2lwaGVyX3R5
cGVfdCBzcnRwX251bGxfY2lwaGVyOwogCi0gICAgZGVidWdfcHJpbnQoc3J0cF9tb2RfY2lwaGVy
LAotICAgICAgICAgICAgICAgICJhbGxvY2F0aW5nIGNpcGhlciB3aXRoIGtleSBsZW5ndGggJWQi
LCBrZXlfbGVuKTsKKyAgICBkZWJ1Z19wcmludChzcnRwX21vZF9jaXBoZXIsICJhbGxvY2F0aW5n
IGNpcGhlciB3aXRoIGtleSBsZW5ndGggJWQiLAorICAgICAgICAgICAgICAgIGtleV9sZW4pOwog
CiAgICAgLyogYWxsb2NhdGUgbWVtb3J5IGEgY2lwaGVyIG9mIHR5cGUgbnVsbF9jaXBoZXIgKi8K
ICAgICAqYyA9IChzcnRwX2NpcGhlcl90ICopc3J0cF9jcnlwdG9fYWxsb2Moc2l6ZW9mKHNydHBf
Y2lwaGVyX3QpKTsKICAgICBpZiAoKmMgPT0gTlVMTCkgewogICAgICAgICByZXR1cm4gc3J0cF9l
cnJfc3RhdHVzX2FsbG9jX2ZhaWw7CiAgICAgfQotICAgIG1lbXNldCgqYywgMHgwLCBzaXplb2Yo
c3J0cF9jaXBoZXJfdCkpOwogCiAgICAgLyogc2V0IHBvaW50ZXJzICovCiAgICAgKCpjKS0+YWxn
b3JpdGhtID0gU1JUUF9OVUxMX0NJUEhFUjsKICAgICAoKmMpLT50eXBlID0gJnNydHBfbnVsbF9j
aXBoZXI7Ci0gICAgKCpjKS0+c3RhdGUgPSAodm9pZCAqKSAweDE7IC8qIFRoZSBudWxsIGNpcGhl
ciBkb2VzIG5vdCBtYWludGFpbiBzdGF0ZSAqLworICAgICgqYyktPnN0YXRlID0gKHZvaWQgKikw
eDE7IC8qIFRoZSBudWxsIGNpcGhlciBkb2VzIG5vdCBtYWludGFpbiBzdGF0ZSAqLwogCiAgICAg
Lyogc2V0IGtleSBzaXplICovCiAgICAgKCpjKS0+a2V5X2xlbiA9IGtleV9sZW47CiAKICAgICBy
ZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwotCiB9CiAKLXN0YXRpYyBzcnRwX2Vycl9zdGF0dXNf
dCBzcnRwX251bGxfY2lwaGVyX2RlYWxsb2MgKHNydHBfY2lwaGVyX3QgKmMpCitzdGF0aWMgc3J0
cF9lcnJfc3RhdHVzX3Qgc3J0cF9udWxsX2NpcGhlcl9kZWFsbG9jKHNydHBfY2lwaGVyX3QgKmMp
CiB7CiAgICAgZXh0ZXJuIGNvbnN0IHNydHBfY2lwaGVyX3R5cGVfdCBzcnRwX251bGxfY2lwaGVy
OwogCkBAIC05NCwyOCArOTEsMzAgQEAgc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfbnVs
bF9jaXBoZXJfZGVhbGxvYyAoc3J0cF9jaXBoZXJfdCAqYykKICAgICBzcnRwX2NyeXB0b19mcmVl
KGMpOwogCiAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKLQogfQogCi1zdGF0aWMgc3J0
cF9lcnJfc3RhdHVzX3Qgc3J0cF9udWxsX2NpcGhlcl9pbml0ICh2b2lkICpjdiwgY29uc3QgdWlu
dDhfdCAqa2V5KQorc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfbnVsbF9jaXBoZXJfaW5p
dCh2b2lkICpjdiwgY29uc3QgdWludDhfdCAqa2V5KQogewotCS8qIHNydHBfbnVsbF9jaXBoZXJf
Y3R4X3QgKmMgPSAoc3J0cF9udWxsX2NpcGhlcl9jdHhfdCAqKWN2OyAqLworICAgIC8qIHNydHBf
bnVsbF9jaXBoZXJfY3R4X3QgKmMgPSAoc3J0cF9udWxsX2NpcGhlcl9jdHhfdCAqKWN2OyAqLwog
CiAgICAgZGVidWdfcHJpbnQoc3J0cF9tb2RfY2lwaGVyLCAiaW5pdGlhbGl6aW5nIG51bGwgY2lw
aGVyIiwgTlVMTCk7CiAKICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQogCi1zdGF0
aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9udWxsX2NpcGhlcl9zZXRfaXYgKHZvaWQgKmN2LCB1
aW50OF90ICppdiwgc3J0cF9jaXBoZXJfZGlyZWN0aW9uX3QgZGlyKQorc3RhdGljIHNydHBfZXJy
X3N0YXR1c190IHNydHBfbnVsbF9jaXBoZXJfc2V0X2l2KHZvaWQgKmN2LAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQ4X3QgKml2LAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfY2lwaGVyX2Rp
cmVjdGlvbl90IGRpcikKIHsKLQkvKiBzcnRwX251bGxfY2lwaGVyX2N0eF90ICpjID0gKHNydHBf
bnVsbF9jaXBoZXJfY3R4X3QgKiljdjsgKi8KKyAgICAvKiBzcnRwX251bGxfY2lwaGVyX2N0eF90
ICpjID0gKHNydHBfbnVsbF9jaXBoZXJfY3R4X3QgKiljdjsgKi8KICAgICByZXR1cm4gc3J0cF9l
cnJfc3RhdHVzX29rOwogfQogCi1zdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9udWxsX2Np
cGhlcl9lbmNyeXB0ICh2b2lkICpjdiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgdW5zaWduZWQgY2hhciAqYnVmLCB1bnNpZ25lZCBpbnQgKmJ5dGVzX3RvX2Vu
Y3IpCitzdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9udWxsX2NpcGhlcl9lbmNyeXB0KHZv
aWQgKmN2LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB1bnNpZ25lZCBjaGFyICpidWYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCAqYnl0ZXNfdG9fZW5jcikKIHsKLQkvKiBzcnRw
X251bGxfY2lwaGVyX2N0eF90ICpjID0gKHNydHBfbnVsbF9jaXBoZXJfY3R4X3QgKiljdjsgKi8K
KyAgICAvKiBzcnRwX251bGxfY2lwaGVyX2N0eF90ICpjID0gKHNydHBfbnVsbF9jaXBoZXJfY3R4
X3QgKiljdjsgKi8KICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQogCkBAIC0xMjks
MjggKzEyOCwyNiBAQCBzdGF0aWMgY29uc3Qgc3J0cF9jaXBoZXJfdGVzdF9jYXNlX3Qgc3J0cF9u
dWxsX2NpcGhlcl90ZXN0XzAgPSB7CiAgICAgTlVMTCwgLyogcGxhaW50ZXh0ICAgICAgICAgICAg
ICAgICovCiAgICAgMCwgICAgLyogb2N0ZXRzIGluIHBsYWludGV4dCAgICAgICovCiAgICAgTlVM
TCwgLyogY2lwaGVydGV4dCAgICAgICAgICAgICAgICovCi0gICAgMCwKLSAgICBOVUxMLAotICAg
IDAsCi0gICAgTlVMTCAgICAgICAgICAgICAvKiBwb2ludGVyIHRvIG5leHQgdGVzdGNhc2UgKi8K
KyAgICAwLCAgICAvKiAqLworICAgIE5VTEwsIC8qICovCisgICAgMCwgICAgLyogKi8KKyAgICBO
VUxMICAvKiBwb2ludGVyIHRvIG5leHQgdGVzdGNhc2UgKi8KIH07CiAKLQogLyoKICAqIG5vdGU6
IHRoZSBkZWNyeXB0IGZ1bmN0aW9uIGlzIGlkZW50aWFsIHRvIHRoZSBlbmNyeXB0IGZ1bmN0aW9u
CiAgKi8KIAogY29uc3Qgc3J0cF9jaXBoZXJfdHlwZV90IHNydHBfbnVsbF9jaXBoZXIgPSB7Ci0g
ICAgc3J0cF9udWxsX2NpcGhlcl9hbGxvYywKLSAgICBzcnRwX251bGxfY2lwaGVyX2RlYWxsb2Ms
Ci0gICAgc3J0cF9udWxsX2NpcGhlcl9pbml0LAotICAgIDAsICAgICAgICAgICAgICAgICAgICAg
Lyogc2V0X2FhZCAqLwotICAgIHNydHBfbnVsbF9jaXBoZXJfZW5jcnlwdCwKLSAgICBzcnRwX251
bGxfY2lwaGVyX2VuY3J5cHQsCi0gICAgc3J0cF9udWxsX2NpcGhlcl9zZXRfaXYsCi0gICAgMCwg
ICAgICAgICAgICAgICAgICAgICAvKiBnZXRfdGFnICovCi0gICAgc3J0cF9udWxsX2NpcGhlcl9k
ZXNjcmlwdGlvbiwKLSAgICAmc3J0cF9udWxsX2NpcGhlcl90ZXN0XzAsCi0gICAgU1JUUF9OVUxM
X0NJUEhFUgorICAgIHNydHBfbnVsbF9jaXBoZXJfYWxsb2MsICAgICAgIC8qICovCisgICAgc3J0
cF9udWxsX2NpcGhlcl9kZWFsbG9jLCAgICAgLyogKi8KKyAgICBzcnRwX251bGxfY2lwaGVyX2lu
aXQsICAgICAgICAvKiAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHNl
dF9hYWQgKi8KKyAgICBzcnRwX251bGxfY2lwaGVyX2VuY3J5cHQsICAgICAvKiAqLworICAgIHNy
dHBfbnVsbF9jaXBoZXJfZW5jcnlwdCwgICAgIC8qICovCisgICAgc3J0cF9udWxsX2NpcGhlcl9z
ZXRfaXYsICAgICAgLyogKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBn
ZXRfdGFnICovCisgICAgc3J0cF9udWxsX2NpcGhlcl9kZXNjcmlwdGlvbiwgLyogKi8KKyAgICAm
c3J0cF9udWxsX2NpcGhlcl90ZXN0XzAsICAgICAvKiAqLworICAgIFNSVFBfTlVMTF9DSVBIRVIg
ICAgICAgICAgICAgIC8qICovCiB9OwotCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2hhc2gvYXV0aC5jIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2Ny
eXB0by9oYXNoL2F1dGguYwppbmRleCBjNmNlMzU3NmY3ZGQ1ZTNkNzJmYmViZmI2MDhjZGU5Y2Rj
YTkyNTNjLi5mMTkzMjdkYzhlOTk0YTA5OGY4ODFkZWIwZWQ3MmE1YzRjNTNiYjk0IDEwMDY0NAot
LS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNy
dHAvY3J5cHRvL2hhc2gvYXV0aC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vaGFzaC9hdXRoLmMKQEAgLTQ0LDMyICs0
NCwzMSBAQAogICovCiAKICNpZmRlZiBIQVZFX0NPTkZJR19ICi0gICAgI2luY2x1ZGUgPGNvbmZp
Zy5oPgorI2luY2x1ZGUgPGNvbmZpZy5oPgogI2VuZGlmCiAKICNpbmNsdWRlICJhdXRoLmgiCi0j
aW5jbHVkZSAiZXJyLmgiICAgICAgICAgICAgICAgIC8qIGZvciBzcnRwX2RlYnVnICovCi0jaW5j
bHVkZSAiZGF0YXR5cGVzLmgiICAgICAgICAgIC8qIGZvciBvY3RldF9zdHJpbmcgKi8KKyNpbmNs
dWRlICJlcnIuaCIgICAgICAgLyogZm9yIHNydHBfZGVidWcgKi8KKyNpbmNsdWRlICJkYXRhdHlw
ZXMuaCIgLyogZm9yIG9jdGV0X3N0cmluZyAqLwogCiAvKiB0aGUgZGVidWcgbW9kdWxlIGZvciBh
dXRoZW50aWF0aW9uICovCiAKIHNydHBfZGVidWdfbW9kdWxlX3Qgc3J0cF9tb2RfYXV0aCA9IHsK
LSAgICAwLCAgICAgICAgICAgICAgICAvKiBkZWJ1Z2dpbmcgaXMgb2ZmIGJ5IGRlZmF1bHQgKi8K
LSAgICAiYXV0aCBmdW5jIiAgICAgICAvKiBwcmludGFibGUgbmFtZSBmb3IgbW9kdWxlICAgKi8K
KyAgICAwLCAgICAgICAgICAvKiBkZWJ1Z2dpbmcgaXMgb2ZmIGJ5IGRlZmF1bHQgKi8KKyAgICAi
YXV0aCBmdW5jIiAvKiBwcmludGFibGUgbmFtZSBmb3IgbW9kdWxlICAgKi8KIH07CiAKLQotaW50
IHNydHBfYXV0aF9nZXRfa2V5X2xlbmd0aCAoY29uc3Qgc3J0cF9hdXRoX3QgKmEpCitpbnQgc3J0
cF9hdXRoX2dldF9rZXlfbGVuZ3RoKGNvbnN0IHNydHBfYXV0aF90ICphKQogewogICAgIHJldHVy
biBhLT5rZXlfbGVuOwogfQogCi1pbnQgc3J0cF9hdXRoX2dldF90YWdfbGVuZ3RoIChjb25zdCBz
cnRwX2F1dGhfdCAqYSkKK2ludCBzcnRwX2F1dGhfZ2V0X3RhZ19sZW5ndGgoY29uc3Qgc3J0cF9h
dXRoX3QgKmEpCiB7CiAgICAgcmV0dXJuIGEtPm91dF9sZW47CiB9CiAKLWludCBzcnRwX2F1dGhf
Z2V0X3ByZWZpeF9sZW5ndGggKGNvbnN0IHNydHBfYXV0aF90ICphKQoraW50IHNydHBfYXV0aF9n
ZXRfcHJlZml4X2xlbmd0aChjb25zdCBzcnRwX2F1dGhfdCAqYSkKIHsKICAgICByZXR1cm4gYS0+
cHJlZml4X2xlbjsKIH0KQEAgLTgzLDggKzgyLDggQEAgaW50IHNydHBfYXV0aF9nZXRfcHJlZml4
X2xlbmd0aCAoY29uc3Qgc3J0cF9hdXRoX3QgKmEpCiAvKiBzaG91bGQgYmUgYmlnIGVub3VnaCBm
b3IgbW9zdCBvY2Nhc2lvbnMgKi8KICNkZWZpbmUgU0VMRl9URVNUX1RBR19CVUZfT0NURVRTIDMy
CiAKLXNydHBfZXJyX3N0YXR1c190Ci1zcnRwX2F1dGhfdHlwZV90ZXN0IChjb25zdCBzcnRwX2F1
dGhfdHlwZV90ICphdCwgY29uc3Qgc3J0cF9hdXRoX3Rlc3RfY2FzZV90ICp0ZXN0X2RhdGEpCitz
cnRwX2Vycl9zdGF0dXNfdCBzcnRwX2F1dGhfdHlwZV90ZXN0KGNvbnN0IHNydHBfYXV0aF90eXBl
X3QgKmF0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzcnRw
X2F1dGhfdGVzdF9jYXNlX3QgKnRlc3RfZGF0YSkKIHsKICAgICBjb25zdCBzcnRwX2F1dGhfdGVz
dF9jYXNlX3QgKnRlc3RfY2FzZSA9IHRlc3RfZGF0YTsKICAgICBzcnRwX2F1dGhfdCAqYTsKQEAg
LTEwNSw3ICsxMDQsNiBAQCBzcnRwX2F1dGhfdHlwZV90ZXN0IChjb25zdCBzcnRwX2F1dGhfdHlw
ZV90ICphdCwgY29uc3Qgc3J0cF9hdXRoX3Rlc3RfY2FzZV90ICp0ZQogCiAgICAgLyogbG9vcCBv
dmVyIGFsbCB0ZXN0IGNhc2VzICovCiAgICAgd2hpbGUgKHRlc3RfY2FzZSAhPSBOVUxMKSB7Ci0K
ICAgICAgICAgLyogY2hlY2sgdGVzdCBjYXNlIHBhcmFtZXRlcnMgKi8KICAgICAgICAgaWYgKHRl
c3RfY2FzZS0+dGFnX2xlbmd0aF9vY3RldHMgPiBTRUxGX1RFU1RfVEFHX0JVRl9PQ1RFVFMpIHsK
ICAgICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtOwpAQCAtMTEzLDcg
KzExMSw3IEBAIHNydHBfYXV0aF90eXBlX3Rlc3QgKGNvbnN0IHNydHBfYXV0aF90eXBlX3QgKmF0
LCBjb25zdCBzcnRwX2F1dGhfdGVzdF9jYXNlX3QgKnRlCiAKICAgICAgICAgLyogYWxsb2NhdGUg
YXV0aCAqLwogICAgICAgICBzdGF0dXMgPSBzcnRwX2F1dGhfdHlwZV9hbGxvYyhhdCwgJmEsIHRl
c3RfY2FzZS0+a2V5X2xlbmd0aF9vY3RldHMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB0ZXN0X2Nhc2UtPnRhZ19sZW5ndGhfb2N0ZXRzKTsKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgdGVzdF9jYXNlLT50YWdfbGVuZ3RoX29jdGV0cyk7CiAgICAgICAg
IGlmIChzdGF0dXMpIHsKICAgICAgICAgICAgIHJldHVybiBzdGF0dXM7CiAgICAgICAgIH0KQEAg
LTEyOCw3ICsxMjYsNyBAQCBzcnRwX2F1dGhfdHlwZV90ZXN0IChjb25zdCBzcnRwX2F1dGhfdHlw
ZV90ICphdCwgY29uc3Qgc3J0cF9hdXRoX3Rlc3RfY2FzZV90ICp0ZQogICAgICAgICAvKiB6ZXJv
aXplIHRhZyB0aGVuIGNvbXB1dGUgKi8KICAgICAgICAgb2N0ZXRfc3RyaW5nX3NldF90b196ZXJv
KHRhZywgdGVzdF9jYXNlLT50YWdfbGVuZ3RoX29jdGV0cyk7CiAgICAgICAgIHN0YXR1cyA9IHNy
dHBfYXV0aF9jb21wdXRlKGEsIHRlc3RfY2FzZS0+ZGF0YSwKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHRlc3RfY2FzZS0+ZGF0YV9sZW5ndGhfb2N0ZXRzLCB0YWcpOworICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0X2Nhc2UtPmRhdGFfbGVuZ3RoX29jdGV0cywg
dGFnKTsKICAgICAgICAgaWYgKHN0YXR1cykgewogICAgICAgICAgICAgc3J0cF9hdXRoX2RlYWxs
b2MoYSk7CiAgICAgICAgICAgICByZXR1cm4gc3RhdHVzOwpAQCAtMTM4LDEwICsxMzYsMTEgQEAg
c3J0cF9hdXRoX3R5cGVfdGVzdCAoY29uc3Qgc3J0cF9hdXRoX3R5cGVfdCAqYXQsIGNvbnN0IHNy
dHBfYXV0aF90ZXN0X2Nhc2VfdCAqdGUKICAgICAgICAgICAgICAgICAgICAgc3J0cF9vY3RldF9z
dHJpbmdfaGV4X3N0cmluZyh0ZXN0X2Nhc2UtPmtleSwKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0X2Nhc2UtPmtleV9sZW5ndGhfb2N0ZXRzKSk7
CiAgICAgICAgIGRlYnVnX3ByaW50KHNydHBfbW9kX2F1dGgsICJkYXRhOiAlcyIsCi0gICAgICAg
ICAgICAgICAgICAgIHNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcodGVzdF9jYXNlLT5kYXRh
LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRlc3Rf
Y2FzZS0+ZGF0YV9sZW5ndGhfb2N0ZXRzKSk7Ci0gICAgICAgIGRlYnVnX3ByaW50KHNydHBfbW9k
X2F1dGgsICJ0YWcgY29tcHV0ZWQ6ICVzIiwKLSAgICAgICAgICAgICAgICAgICAgc3J0cF9vY3Rl
dF9zdHJpbmdfaGV4X3N0cmluZyh0YWcsIHRlc3RfY2FzZS0+dGFnX2xlbmd0aF9vY3RldHMpKTsK
KyAgICAgICAgICAgICAgICAgICAgc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZygKKyAgICAg
ICAgICAgICAgICAgICAgICAgIHRlc3RfY2FzZS0+ZGF0YSwgdGVzdF9jYXNlLT5kYXRhX2xlbmd0
aF9vY3RldHMpKTsKKyAgICAgICAgZGVidWdfcHJpbnQoCisgICAgICAgICAgICBzcnRwX21vZF9h
dXRoLCAidGFnIGNvbXB1dGVkOiAlcyIsCisgICAgICAgICAgICBzcnRwX29jdGV0X3N0cmluZ19o
ZXhfc3RyaW5nKHRhZywgdGVzdF9jYXNlLT50YWdfbGVuZ3RoX29jdGV0cykpOwogICAgICAgICBk
ZWJ1Z19wcmludChzcnRwX21vZF9hdXRoLCAidGFnIGV4cGVjdGVkOiAlcyIsCiAgICAgICAgICAg
ICAgICAgICAgIHNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcodGVzdF9jYXNlLT50YWcsCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVzdF9jYXNl
LT50YWdfbGVuZ3RoX29jdGV0cykpOwpAQCAtMTc3LDE0ICsxNzYsMTIgQEAgc3J0cF9hdXRoX3R5
cGVfdGVzdCAoY29uc3Qgc3J0cF9hdXRoX3R5cGVfdCAqYXQsIGNvbnN0IHNydHBfYXV0aF90ZXN0
X2Nhc2VfdCAqdGUKICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQogCi0KIC8qCi0g
KiBhdXRoX3R5cGVfc2VsZl90ZXN0KGF0KSBwZXJmb3JtcyBzcnRwX2F1dGhfdHlwZV90ZXN0IG9u
IGF0J3MgaW50ZXJuYWwKKyAqIHNydHBfYXV0aF90eXBlX3NlbGZfdGVzdChhdCkgcGVyZm9ybXMg
c3J0cF9hdXRoX3R5cGVfdGVzdCBvbiBhdCdzIGludGVybmFsCiAgKiBsaXN0IG9mIHRlc3QgZGF0
YS4KICAqLwogCi1zcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2F1dGhfdHlwZV9zZWxmX3Rlc3QgKGNv
bnN0IHNydHBfYXV0aF90eXBlX3QgKmF0KQorc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9hdXRoX3R5
cGVfc2VsZl90ZXN0KGNvbnN0IHNydHBfYXV0aF90eXBlX3QgKmF0KQogewogICAgIHJldHVybiBz
cnRwX2F1dGhfdHlwZV90ZXN0KGF0LCBhdC0+dGVzdF9kYXRhKTsKIH0KLQpkaWZmIC0tZ2l0IGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2Ny
eXB0by9oYXNoL2htYWNfb3NzbC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9oYXNoL2htYWNfb3NzbC5jCmluZGV4IGY5OTY0
NmI1OGZjNDE3YzBiMmRhZGEzZTQwZGU3OTk5ZGRkNTQ2NGQuLjgxNDY0MzhiMDUxYmFiYjFiMzYw
MzE4ZWQ3YTk2NzhiZDFhOTU2ZDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vaGFzaC9obWFjX29zc2wuYwor
KysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNy
dHAvY3J5cHRvL2hhc2gvaG1hY19vc3NsLmMKQEAgLTQzLDMxICs0MywzNCBAQAogICovCiAKICNp
ZmRlZiBIQVZFX0NPTkZJR19ICi0gICAgI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNv
bmZpZy5oPgogI2VuZGlmCiAKICNpbmNsdWRlICJhdXRoLmgiCiAjaW5jbHVkZSAiYWxsb2MuaCIK
LSNpbmNsdWRlICJlcnIuaCIgICAgICAgICAgICAgICAgLyogZm9yIHNydHBfZGVidWcgKi8KKyNp
bmNsdWRlICJlcnIuaCIgLyogZm9yIHNydHBfZGVidWcgKi8KICNpbmNsdWRlIDxvcGVuc3NsL2V2
cC5oPgogI2luY2x1ZGUgPG9wZW5zc2wvaG1hYy5oPgogCi0jZGVmaW5lIFNIQTFfRElHRVNUX1NJ
WkUJCTIwCisjZGVmaW5lIFNIQTFfRElHRVNUX1NJWkUgMjAKIAogLyogdGhlIGRlYnVnIG1vZHVs
ZSBmb3IgYXV0aGVudGlhdGlvbiAqLwogCiBzcnRwX2RlYnVnX21vZHVsZV90IHNydHBfbW9kX2ht
YWMgPSB7Ci0gICAgMCwgICAgICAgICAgICAgICAgLyogZGVidWdnaW5nIGlzIG9mZiBieSBkZWZh
dWx0ICovCi0gICAgImhtYWMgc2hhLTEgb3BlbnNzbCIgICAvKiBwcmludGFibGUgbmFtZSBmb3Ig
bW9kdWxlICAgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAvKiBkZWJ1Z2dpbmcgaXMgb2Zm
IGJ5IGRlZmF1bHQgKi8KKyAgICAiaG1hYyBzaGEtMSBvcGVuc3NsIiAvKiBwcmludGFibGUgbmFt
ZSBmb3IgbW9kdWxlICAgKi8KIH07CiAKLQotc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBf
aG1hY19hbGxvYyAoc3J0cF9hdXRoX3QgKiphLCBpbnQga2V5X2xlbiwgaW50IG91dF9sZW4pCitz
dGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9obWFjX2FsbG9jKHNydHBfYXV0aF90ICoqYSwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IGtleV9sZW4sCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBvdXRfbGVuKQogewog
ICAgIGV4dGVybiBjb25zdCBzcnRwX2F1dGhfdHlwZV90IHNydHBfaG1hYzsKIAotICAgIGRlYnVn
X3ByaW50KHNydHBfbW9kX2htYWMsICJhbGxvY2F0aW5nIGF1dGggZnVuYyB3aXRoIGtleSBsZW5n
dGggJWQiLCBrZXlfbGVuKTsKLSAgICBkZWJ1Z19wcmludChzcnRwX21vZF9obWFjLCAiICAgICAg
ICAgICAgICAgICAgICAgICAgICB0YWcgbGVuZ3RoICVkIiwgb3V0X2xlbik7CisgICAgZGVidWdf
cHJpbnQoc3J0cF9tb2RfaG1hYywgImFsbG9jYXRpbmcgYXV0aCBmdW5jIHdpdGgga2V5IGxlbmd0
aCAlZCIsCisgICAgICAgICAgICAgICAga2V5X2xlbik7CisgICAgZGVidWdfcHJpbnQoc3J0cF9t
b2RfaG1hYywgIiAgICAgICAgICAgICAgICAgICAgICAgICAgdGFnIGxlbmd0aCAlZCIsCisgICAg
ICAgICAgICAgICAgb3V0X2xlbik7CiAKICAgICAvKiBjaGVjayBvdXRwdXQgbGVuZ3RoIC0gc2hv
dWxkIGJlIGxlc3MgdGhhbiAyMCBieXRlcyAqLwogICAgIGlmIChvdXRfbGVuID4gU0hBMV9ESUdF
U1RfU0laRSkgewpAQCAtNzYsMjQgKzc5LDI1IEBAIHN0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBz
cnRwX2htYWNfYWxsb2MgKHNydHBfYXV0aF90ICoqYSwgaW50IGtleV9sZW4sIGludCBvdXRfCiAK
IC8qIE9wZW5TU0wgMS4xLjAgbWFkZSBITUFDX0NUWCBhbiBvcGFxdWUgc3RydWN0dXJlLCB3aGlj
aCBtdXN0IGJlIGFsbG9jYXRlZAogICAgdXNpbmcgSE1BQ19DVFhfbmV3LiAgQnV0IHRoaXMgZnVu
Y3Rpb24gZG9lc24ndCBleGlzdCBpbiBPcGVuU1NMIDEuMC54LiAqLwotI2lmIE9QRU5TU0xfVkVS
U0lPTl9OVU1CRVIgPCAweDEwMTAwMDAwTAorI2lmIE9QRU5TU0xfVkVSU0lPTl9OVU1CRVIgPCAw
eDEwMTAwMDAwTCB8fCBMSUJSRVNTTF9WRVJTSU9OX05VTUJFUgogICAgIHsKICAgICAgICAgLyog
YWxsb2NhdGUgbWVtb3J5IGZvciBhdXRoIGFuZCBITUFDX0NUWCBzdHJ1Y3R1cmVzICovCi0gICAg
ICAgIHVpbnQ4X3QqIHBvaW50ZXI7CisgICAgICAgIHVpbnQ4X3QgKnBvaW50ZXI7CiAgICAgICAg
IEhNQUNfQ1RYICpuZXdfaG1hY19jdHg7Ci0gICAgICAgIHBvaW50ZXIgPSAodWludDhfdCopc3J0
cF9jcnlwdG9fYWxsb2Moc2l6ZW9mKEhNQUNfQ1RYKSArIHNpemVvZihzcnRwX2F1dGhfdCkpOwor
ICAgICAgICBwb2ludGVyID0gKHVpbnQ4X3QgKilzcnRwX2NyeXB0b19hbGxvYyhzaXplb2YoSE1B
Q19DVFgpICsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
c2l6ZW9mKHNydHBfYXV0aF90KSk7CiAgICAgICAgIGlmIChwb2ludGVyID09IE5VTEwpIHsKICAg
ICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYWxsb2NfZmFpbDsKICAgICAgICAgfQot
ICAgICAgICAqYSA9IChzcnRwX2F1dGhfdCopcG9pbnRlcjsKKyAgICAgICAgKmEgPSAoc3J0cF9h
dXRoX3QgKilwb2ludGVyOwogICAgICAgICAoKmEpLT5zdGF0ZSA9IHBvaW50ZXIgKyBzaXplb2Yo
c3J0cF9hdXRoX3QpOwotICAgICAgICBuZXdfaG1hY19jdHggPSAoSE1BQ19DVFgqKSgoKmEpLT5z
dGF0ZSk7CisgICAgICAgIG5ld19obWFjX2N0eCA9IChITUFDX0NUWCAqKSgoKmEpLT5zdGF0ZSk7
CiAKICAgICAgICAgSE1BQ19DVFhfaW5pdChuZXdfaG1hY19jdHgpOwogICAgIH0KIAogI2Vsc2UK
LSAgICAqYSA9IChzcnRwX2F1dGhfdCopc3J0cF9jcnlwdG9fYWxsb2Moc2l6ZW9mKHNydHBfYXV0
aF90KSk7CisgICAgKmEgPSAoc3J0cF9hdXRoX3QgKilzcnRwX2NyeXB0b19hbGxvYyhzaXplb2Yo
c3J0cF9hdXRoX3QpKTsKICAgICBpZiAoKmEgPT0gTlVMTCkgewogICAgICAgICByZXR1cm4gc3J0
cF9lcnJfc3RhdHVzX2FsbG9jX2ZhaWw7CiAgICAgfQpAQCAtMTE1LDEzICsxMTksMTMgQEAgc3Rh
dGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfaG1hY19hbGxvYyAoc3J0cF9hdXRoX3QgKiphLCBp
bnQga2V5X2xlbiwgaW50IG91dF8KICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQog
Ci1zdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9obWFjX2RlYWxsb2MgKHNydHBfYXV0aF90
ICphKQorc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfaG1hY19kZWFsbG9jKHNydHBfYXV0
aF90ICphKQogewogICAgIEhNQUNfQ1RYICpobWFjX2N0eDsKIAotICAgIGhtYWNfY3R4ID0gKEhN
QUNfQ1RYKilhLT5zdGF0ZTsKKyAgICBobWFjX2N0eCA9IChITUFDX0NUWCAqKWEtPnN0YXRlOwog
Ci0jaWYgT1BFTlNTTF9WRVJTSU9OX05VTUJFUiA8IDB4MTAxMDAwMDBMCisjaWYgT1BFTlNTTF9W
RVJTSU9OX05VTUJFUiA8IDB4MTAxMDAwMDBMIHx8IExJQlJFU1NMX1ZFUlNJT05fTlVNQkVSCiAg
ICAgSE1BQ19DVFhfY2xlYW51cChobWFjX2N0eCk7CiAKICAgICAvKiB6ZXJvaXplIGVudGlyZSBz
dGF0ZSovCkBAIC0xNDAsNyArMTQ0LDcgQEAgc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBf
aG1hY19kZWFsbG9jIChzcnRwX2F1dGhfdCAqYSkKICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVz
X29rOwogfQogCi1zdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9obWFjX3N0YXJ0ICh2b2lk
ICpzdGF0ZXYpCitzdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9obWFjX3N0YXJ0KHZvaWQg
KnN0YXRldikKIHsKICAgICBITUFDX0NUWCAqc3RhdGUgPSAoSE1BQ19DVFggKilzdGF0ZXY7CiAK
QEAgLTE1MCw3ICsxNTQsOSBAQCBzdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9obWFjX3N0
YXJ0ICh2b2lkICpzdGF0ZXYpCiAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0KIAot
c3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfaG1hY19pbml0ICh2b2lkICpzdGF0ZXYsIGNv
bnN0IHVpbnQ4X3QgKmtleSwgaW50IGtleV9sZW4pCitzdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qg
c3J0cF9obWFjX2luaXQodm9pZCAqc3RhdGV2LAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGNvbnN0IHVpbnQ4X3QgKmtleSwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBpbnQga2V5X2xlbikKIHsKICAgICBITUFDX0NUWCAqc3RhdGUgPSAo
SE1BQ19DVFggKilzdGF0ZXY7CiAKQEAgLTE2MCw3ICsxNjYsOSBAQCBzdGF0aWMgc3J0cF9lcnJf
c3RhdHVzX3Qgc3J0cF9obWFjX2luaXQgKHZvaWQgKnN0YXRldiwgY29uc3QgdWludDhfdCAqa2V5
LCBpbnQgawogICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAKLXN0YXRpYyBzcnRw
X2Vycl9zdGF0dXNfdCBzcnRwX2htYWNfdXBkYXRlICh2b2lkICpzdGF0ZXYsIGNvbnN0IHVpbnQ4
X3QgKm1lc3NhZ2UsIGludCBtc2dfb2N0ZXRzKQorc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNy
dHBfaG1hY191cGRhdGUodm9pZCAqc3RhdGV2LAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgY29uc3QgdWludDhfdCAqbWVzc2FnZSwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGludCBtc2dfb2N0ZXRzKQogewogICAgIEhNQUNfQ1RY
ICpzdGF0ZSA9IChITUFDX0NUWCAqKXN0YXRldjsKIApAQCAtMTczLDggKzE4MSwxMSBAQCBzdGF0
aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9obWFjX3VwZGF0ZSAodm9pZCAqc3RhdGV2LCBjb25z
dCB1aW50OF90ICptZXNzYWdlLAogICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAK
LXN0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2htYWNfY29tcHV0ZSAodm9pZCAqc3RhdGV2
LCBjb25zdCB1aW50OF90ICptZXNzYWdlLAotICAgICAgICAgICAgICBpbnQgbXNnX29jdGV0cywg
aW50IHRhZ19sZW4sIHVpbnQ4X3QgKnJlc3VsdCkKK3N0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBz
cnRwX2htYWNfY29tcHV0ZSh2b2lkICpzdGF0ZXYsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgY29uc3QgdWludDhfdCAqbWVzc2FnZSwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgbXNnX29jdGV0cywKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgdGFnX2xlbiwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50OF90ICpyZXN1bHQpCiB7CiAgICAg
SE1BQ19DVFggKnN0YXRlID0gKEhNQUNfQ1RYICopc3RhdGV2OwogICAgIHVpbnQ4X3QgaGFzaF92
YWx1ZVtTSEExX0RJR0VTVF9TSVpFXTsKQEAgLTIwNyw1MiArMjE4LDU2IEBAIHN0YXRpYyBzcnRw
X2Vycl9zdGF0dXNfdCBzcnRwX2htYWNfY29tcHV0ZSAodm9pZCAqc3RhdGV2LCBjb25zdCB1aW50
OF90ICptZXNzYWdlCiAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0KIAotCiAvKiBi
ZWdpbiB0ZXN0IGNhc2UgMCAqLwotCisvKiBjbGFuZy1mb3JtYXQgb2ZmICovCiBzdGF0aWMgY29u
c3QgdWludDhfdCBzcnRwX2htYWNfdGVzdF9jYXNlXzBfa2V5W1NIQTFfRElHRVNUX1NJWkVdID0g
ewogICAgIDB4MGIsIDB4MGIsIDB4MGIsIDB4MGIsIDB4MGIsIDB4MGIsIDB4MGIsIDB4MGIsCiAg
ICAgMHgwYiwgMHgwYiwgMHgwYiwgMHgwYiwgMHgwYiwgMHgwYiwgMHgwYiwgMHgwYiwKICAgICAw
eDBiLCAweDBiLCAweDBiLCAweDBiCiB9OworLyogY2xhbmctZm9ybWF0IG9uICovCiAKKy8qIGNs
YW5nLWZvcm1hdCBvZmYgKi8KIHN0YXRpYyBjb25zdCB1aW50OF90IHNydHBfaG1hY190ZXN0X2Nh
c2VfMF9kYXRhWzhdID0gewogICAgIDB4NDgsIDB4NjksIDB4MjAsIDB4NTQsIDB4NjgsIDB4NjUs
IDB4NzIsIDB4NjUgLyogIkhpIFRoZXJlIiAqLwogfTsKKy8qIGNsYW5nLWZvcm1hdCBvbiAqLwog
CisvKiBjbGFuZy1mb3JtYXQgb2ZmICovCiBzdGF0aWMgY29uc3QgdWludDhfdCBzcnRwX2htYWNf
dGVzdF9jYXNlXzBfdGFnW1NIQTFfRElHRVNUX1NJWkVdID0gewogICAgIDB4YjYsIDB4MTcsIDB4
MzEsIDB4ODYsIDB4NTUsIDB4MDUsIDB4NzIsIDB4NjQsCiAgICAgMHhlMiwgMHg4YiwgMHhjMCwg
MHhiNiwgMHhmYiwgMHgzNywgMHg4YywgMHg4ZSwKICAgICAweGYxLCAweDQ2LCAweGJlLCAweDAw
CiB9OworLyogY2xhbmctZm9ybWF0IG9uICovCiAKIHN0YXRpYyBjb25zdCBzcnRwX2F1dGhfdGVz
dF9jYXNlX3Qgc3J0cF9obWFjX3Rlc3RfY2FzZV8wID0gewotICAgIHNpemVvZihzcnRwX2htYWNf
dGVzdF9jYXNlXzBfa2V5KSwgICAgLyogb2N0ZXRzIGluIGtleSAgICAgICAgICAgICovCi0gICAg
c3J0cF9obWFjX3Rlc3RfY2FzZV8wX2tleSwgICAgICAgICAgICAvKiBrZXkgICAgICAgICAgICAg
ICAgICAgICAgKi8KLSAgICBzaXplb2Yoc3J0cF9obWFjX3Rlc3RfY2FzZV8wX2RhdGEpLCAgIC8q
IG9jdGV0cyBpbiBkYXRhICAgICAgICAgICAqLwotICAgIHNydHBfaG1hY190ZXN0X2Nhc2VfMF9k
YXRhLCAgICAgICAgICAgLyogZGF0YSAgICAgICAgICAgICAgICAgICAgICovCi0gICAgc2l6ZW9m
KHNydHBfaG1hY190ZXN0X2Nhc2VfMF90YWcpLCAgICAvKiBvY3RldHMgaW4gdGFnICAgICAgICAg
ICAgKi8KLSAgICBzcnRwX2htYWNfdGVzdF9jYXNlXzBfdGFnLCAgICAgICAgICAgIC8qIHRhZyAg
ICAgICAgICAgICAgICAgICAgICAqLwotICAgIE5VTEwgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIHBvaW50ZXIgdG8gbmV4dCB0ZXN0Y2FzZSAqLworICAgIHNpemVvZihzcnRwX2htYWNf
dGVzdF9jYXNlXzBfa2V5KSwgIC8qIG9jdGV0cyBpbiBrZXkgICAgICAgICAgICAqLworICAgIHNy
dHBfaG1hY190ZXN0X2Nhc2VfMF9rZXksICAgICAgICAgIC8qIGtleSAgICAgICAgICAgICAgICAg
ICAgICAqLworICAgIHNpemVvZihzcnRwX2htYWNfdGVzdF9jYXNlXzBfZGF0YSksIC8qIG9jdGV0
cyBpbiBkYXRhICAgICAgICAgICAqLworICAgIHNydHBfaG1hY190ZXN0X2Nhc2VfMF9kYXRhLCAg
ICAgICAgIC8qIGRhdGEgICAgICAgICAgICAgICAgICAgICAqLworICAgIHNpemVvZihzcnRwX2ht
YWNfdGVzdF9jYXNlXzBfdGFnKSwgIC8qIG9jdGV0cyBpbiB0YWcgICAgICAgICAgICAqLworICAg
IHNydHBfaG1hY190ZXN0X2Nhc2VfMF90YWcsICAgICAgICAgIC8qIHRhZyAgICAgICAgICAgICAg
ICAgICAgICAqLworICAgIE5VTEwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHBv
aW50ZXIgdG8gbmV4dCB0ZXN0Y2FzZSAqLwogfTsKIAogLyogZW5kIHRlc3QgY2FzZSAwICovCiAK
LXN0YXRpYyBjb25zdCBjaGFyIHNydHBfaG1hY19kZXNjcmlwdGlvbltdID0gImhtYWMgc2hhLTEg
YXV0aGVudGljYXRpb24gZnVuY3Rpb24iOworc3RhdGljIGNvbnN0IGNoYXIgc3J0cF9obWFjX2Rl
c2NyaXB0aW9uW10gPQorICAgICJobWFjIHNoYS0xIGF1dGhlbnRpY2F0aW9uIGZ1bmN0aW9uIjsK
IAogLyoKICAqIHNydHBfYXV0aF90eXBlX3QgaG1hYyBpcyB0aGUgaG1hYyBtZXRhb2JqZWN0CiAg
Ki8KIAotY29uc3Qgc3J0cF9hdXRoX3R5cGVfdCBzcnRwX2htYWMgID0gewotICAgIHNydHBfaG1h
Y19hbGxvYywKLSAgICBzcnRwX2htYWNfZGVhbGxvYywKLSAgICBzcnRwX2htYWNfaW5pdCwKLSAg
ICBzcnRwX2htYWNfY29tcHV0ZSwKLSAgICBzcnRwX2htYWNfdXBkYXRlLAotICAgIHNydHBfaG1h
Y19zdGFydCwKLSAgICBzcnRwX2htYWNfZGVzY3JpcHRpb24sCi0gICAgJnNydHBfaG1hY190ZXN0
X2Nhc2VfMCwKLSAgICBTUlRQX0hNQUNfU0hBMQorY29uc3Qgc3J0cF9hdXRoX3R5cGVfdCBzcnRw
X2htYWMgPSB7CisgICAgc3J0cF9obWFjX2FsbG9jLCAgICAgICAgLyogKi8KKyAgICBzcnRwX2ht
YWNfZGVhbGxvYywgICAgICAvKiAqLworICAgIHNydHBfaG1hY19pbml0LCAgICAgICAgIC8qICov
CisgICAgc3J0cF9obWFjX2NvbXB1dGUsICAgICAgLyogKi8KKyAgICBzcnRwX2htYWNfdXBkYXRl
LCAgICAgICAvKiAqLworICAgIHNydHBfaG1hY19zdGFydCwgICAgICAgIC8qICovCisgICAgc3J0
cF9obWFjX2Rlc2NyaXB0aW9uLCAgLyogKi8KKyAgICAmc3J0cF9obWFjX3Rlc3RfY2FzZV8wLCAv
KiAqLworICAgIFNSVFBfSE1BQ19TSEExICAgICAgICAgIC8qICovCiB9OwotCmRpZmYgLS1naXQg
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAv
Y3J5cHRvL2hhc2gvbnVsbF9hdXRoLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2hhc2gvbnVsbF9hdXRoLmMKaW5kZXggMmQ5
OTAyN2NhYWVlZDUwOTI4ZjliMjU0MDgyZjY4YWJjMTg3ZTQ0Yy4uNTE5NDQxN2NhZjJlMzI0YjIw
MTcxNDNiYzBmYTRjZGE5N2I3MjhmZSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9oYXNoL251bGxfYXV0aC5j
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGli
c3J0cC9jcnlwdG8vaGFzaC9udWxsX2F1dGguYwpAQCAtNDUsMzMgKzQ1LDM1IEBACiAgKi8KIAog
I2lmZGVmIEhBVkVfQ09ORklHX0gKLSAgICAjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8
Y29uZmlnLmg+CiAjZW5kaWYKIAogI2luY2x1ZGUgIm51bGxfYXV0aC5oIgotI2luY2x1ZGUgImVy
ci5oIiAgICAgICAgICAgICAgICAvKiBmb3Igc3J0cF9kZWJ1ZyAqLworI2luY2x1ZGUgImVyci5o
IiAvKiBmb3Igc3J0cF9kZWJ1ZyAqLwogI2luY2x1ZGUgImFsbG9jLmgiCisjaW5jbHVkZSAiY2lw
aGVyX3R5cGVzLmgiCiAKLS8qIG51bGxfYXV0aCB1c2VzIHRoZSBhdXRoIGRlYnVnIG1vZHVsZSAq
LwotCi1leHRlcm4gc3J0cF9kZWJ1Z19tb2R1bGVfdCBzcnRwX21vZF9hdXRoOwotCi1zdGF0aWMg
c3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9udWxsX2F1dGhfYWxsb2MgKHNydHBfYXV0aF90ICoqYSwg
aW50IGtleV9sZW4sIGludCBvdXRfbGVuKQorc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBf
bnVsbF9hdXRoX2FsbG9jKHNydHBfYXV0aF90ICoqYSwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBpbnQga2V5X2xlbiwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgb3V0X2xlbikKIHsKICAgICBleHRlcm4gY29u
c3Qgc3J0cF9hdXRoX3R5cGVfdCBzcnRwX251bGxfYXV0aDsKICAgICB1aW50OF90ICpwb2ludGVy
OwogCi0gICAgZGVidWdfcHJpbnQoc3J0cF9tb2RfYXV0aCwgImFsbG9jYXRpbmcgYXV0aCBmdW5j
IHdpdGgga2V5IGxlbmd0aCAlZCIsIGtleV9sZW4pOwotICAgIGRlYnVnX3ByaW50KHNydHBfbW9k
X2F1dGgsICIgICAgICAgICAgICAgICAgICAgICAgICAgIHRhZyBsZW5ndGggJWQiLCBvdXRfbGVu
KTsKKyAgICBkZWJ1Z19wcmludChzcnRwX21vZF9hdXRoLCAiYWxsb2NhdGluZyBhdXRoIGZ1bmMg
d2l0aCBrZXkgbGVuZ3RoICVkIiwKKyAgICAgICAgICAgICAgICBrZXlfbGVuKTsKKyAgICBkZWJ1
Z19wcmludChzcnRwX21vZF9hdXRoLCAiICAgICAgICAgICAgICAgICAgICAgICAgICB0YWcgbGVu
Z3RoICVkIiwKKyAgICAgICAgICAgICAgICBvdXRfbGVuKTsKIAogICAgIC8qIGFsbG9jYXRlIG1l
bW9yeSBmb3IgYXV0aCBhbmQgc3J0cF9udWxsX2F1dGhfY3R4X3Qgc3RydWN0dXJlcyAqLwotICAg
IHBvaW50ZXIgPSAodWludDhfdCopc3J0cF9jcnlwdG9fYWxsb2Moc2l6ZW9mKHNydHBfbnVsbF9h
dXRoX2N0eF90KSArIHNpemVvZihzcnRwX2F1dGhfdCkpOworICAgIHBvaW50ZXIgPSAodWludDhf
dCAqKXNydHBfY3J5cHRvX2FsbG9jKHNpemVvZihzcnRwX251bGxfYXV0aF9jdHhfdCkgKworICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVvZihzcnRwX2F1dGhf
dCkpOwogICAgIGlmIChwb2ludGVyID09IE5VTEwpIHsKICAgICAgICAgcmV0dXJuIHNydHBfZXJy
X3N0YXR1c19hbGxvY19mYWlsOwogICAgIH0KIAogICAgIC8qIHNldCBwb2ludGVycyAqLwotICAg
ICphID0gKHNydHBfYXV0aF90Kilwb2ludGVyOworICAgICphID0gKHNydHBfYXV0aF90ICopcG9p
bnRlcjsKICAgICAoKmEpLT50eXBlID0gJnNydHBfbnVsbF9hdXRoOwogICAgICgqYSktPnN0YXRl
ID0gcG9pbnRlciArIHNpemVvZihzcnRwX2F1dGhfdCk7CiAgICAgKCphKS0+b3V0X2xlbiA9IG91
dF9sZW47CkBAIC04MSwxMiArODMsMTMgQEAgc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBf
bnVsbF9hdXRoX2FsbG9jIChzcnRwX2F1dGhfdCAqKmEsIGludCBrZXlfbGVuLCBpbnQKICAgICBy
ZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQogCi1zdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qg
c3J0cF9udWxsX2F1dGhfZGVhbGxvYyAoc3J0cF9hdXRoX3QgKmEpCitzdGF0aWMgc3J0cF9lcnJf
c3RhdHVzX3Qgc3J0cF9udWxsX2F1dGhfZGVhbGxvYyhzcnRwX2F1dGhfdCAqYSkKIHsKICAgICBl
eHRlcm4gY29uc3Qgc3J0cF9hdXRoX3R5cGVfdCBzcnRwX251bGxfYXV0aDsKIAogICAgIC8qIHpl
cm9pemUgZW50aXJlIHN0YXRlKi8KLSAgICBvY3RldF9zdHJpbmdfc2V0X3RvX3plcm8oYSwgc2l6
ZW9mKHNydHBfbnVsbF9hdXRoX2N0eF90KSArIHNpemVvZihzcnRwX2F1dGhfdCkpOworICAgIG9j
dGV0X3N0cmluZ19zZXRfdG9femVybyhhLCBzaXplb2Yoc3J0cF9udWxsX2F1dGhfY3R4X3QpICsK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVvZihzcnRwX2F1dGhfdCkp
OwogCiAgICAgLyogZnJlZSBtZW1vcnkgKi8KICAgICBzcnRwX2NyeXB0b19mcmVlKGEpOwpAQCAt
OTQsNyArOTcsOSBAQCBzdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9udWxsX2F1dGhfZGVh
bGxvYyAoc3J0cF9hdXRoX3QgKmEpCiAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0K
IAotc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfbnVsbF9hdXRoX2luaXQgKHZvaWQgKnN0
YXRldiwgY29uc3QgdWludDhfdCAqa2V5LCBpbnQga2V5X2xlbikKK3N0YXRpYyBzcnRwX2Vycl9z
dGF0dXNfdCBzcnRwX251bGxfYXV0aF9pbml0KHZvaWQgKnN0YXRldiwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVpbnQ4X3QgKmtleSwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBrZXlfbGVuKQogewog
ICAgIC8qIHNydHBfbnVsbF9hdXRoX2N0eF90ICpzdGF0ZSA9IChzcnRwX251bGxfYXV0aF9jdHhf
dCAqKXN0YXRldjsgKi8KICAgICAvKiBhY2NlcHQgYW55IGxlbmd0aCBvZiBrZXksIGFuZCBkbyBu
b3RoaW5nICovCkBAIC0xMDIsMjMgKzEwNywyNyBAQCBzdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qg
c3J0cF9udWxsX2F1dGhfaW5pdCAodm9pZCAqc3RhdGV2LCBjb25zdCB1aW50OF90ICprZXksCiAg
ICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0KIAotc3RhdGljIHNydHBfZXJyX3N0YXR1
c190IHNydHBfbnVsbF9hdXRoX2NvbXB1dGUgKHZvaWQgKnN0YXRldiwgY29uc3QgdWludDhfdCAq
bWVzc2FnZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBt
c2dfb2N0ZXRzLCBpbnQgdGFnX2xlbiwgdWludDhfdCAqcmVzdWx0KQorc3RhdGljIHNydHBfZXJy
X3N0YXR1c190IHNydHBfbnVsbF9hdXRoX2NvbXB1dGUodm9pZCAqc3RhdGV2LAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdWludDhfdCAqbWVz
c2FnZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlu
dCBtc2dfb2N0ZXRzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgaW50IHRhZ19sZW4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB1aW50OF90ICpyZXN1bHQpCiB7CiAgICAgLyogc3J0cF9udWxsX2F1dGhfY3R4
X3QgKnN0YXRlID0gKHNydHBfbnVsbF9hdXRoX2N0eF90ICopc3RhdGV2OyAqLwogCiAgICAgcmV0
dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0KIAotc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNy
dHBfbnVsbF9hdXRoX3VwZGF0ZSAodm9pZCAqc3RhdGV2LCBjb25zdCB1aW50OF90ICptZXNzYWdl
LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgbXNnX29jdGV0
cykKK3N0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX251bGxfYXV0aF91cGRhdGUodm9pZCAq
c3RhdGV2LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBj
b25zdCB1aW50OF90ICptZXNzYWdlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBpbnQgbXNnX29jdGV0cykKIHsKICAgICAvKiBzcnRwX251bGxfYXV0aF9j
dHhfdCAqc3RhdGUgPSAoc3J0cF9udWxsX2F1dGhfY3R4X3QgKilzdGF0ZXY7ICovCiAKICAgICBy
ZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQogCi1zdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qg
c3J0cF9udWxsX2F1dGhfc3RhcnQgKHZvaWQgKnN0YXRldikKK3N0YXRpYyBzcnRwX2Vycl9zdGF0
dXNfdCBzcnRwX251bGxfYXV0aF9zdGFydCh2b2lkICpzdGF0ZXYpCiB7CiAgICAgLyogc3J0cF9u
dWxsX2F1dGhfY3R4X3QgKnN0YXRlID0gKHNydHBfbnVsbF9hdXRoX2N0eF90ICopc3RhdGV2OyAq
LwogCkBAIC0xMzMsMjggKzE0MiwyNyBAQCBzdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9u
dWxsX2F1dGhfc3RhcnQgKHZvaWQgKnN0YXRldikKIC8qIGJlZ2luIHRlc3QgY2FzZSAwICovCiAK
IHN0YXRpYyBjb25zdCBzcnRwX2F1dGhfdGVzdF9jYXNlX3Qgc3J0cF9udWxsX2F1dGhfdGVzdF9j
YXNlXzAgPSB7Ci0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyog
b2N0ZXRzIGluIGtleSAgICAgICAgICAgICovCi0gICAgTlVMTCwgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyoga2V5ICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgMCwgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogb2N0ZXRzIGluIGRhdGEgICAgICAg
ICAgICovCi0gICAgTlVMTCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogZGF0
YSAgICAgICAgICAgICAgICAgICAgICovCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgLyogb2N0ZXRzIGluIHRhZyAgICAgICAgICAgICovCi0gICAgTlVMTCwgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogdGFnICAgICAgICAgICAgICAgICAgICAg
ICovCi0gICAgTlVMTCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogcG9pbnRl
ciB0byBuZXh0IHRlc3RjYXNlICovCisgICAgMCwgICAgLyogb2N0ZXRzIGluIGtleSAgICAgICAg
ICAgICovCisgICAgTlVMTCwgLyoga2V5ICAgICAgICAgICAgICAgICAgICAgICovCisgICAgMCwg
ICAgLyogb2N0ZXRzIGluIGRhdGEgICAgICAgICAgICovCisgICAgTlVMTCwgLyogZGF0YSAgICAg
ICAgICAgICAgICAgICAgICovCisgICAgMCwgICAgLyogb2N0ZXRzIGluIHRhZyAgICAgICAgICAg
ICovCisgICAgTlVMTCwgLyogdGFnICAgICAgICAgICAgICAgICAgICAgICovCisgICAgTlVMTCAg
LyogcG9pbnRlciB0byBuZXh0IHRlc3RjYXNlICovCiB9OwogCiAvKiBlbmQgdGVzdCBjYXNlIDAg
Ki8KIAogc3RhdGljIGNvbnN0IGNoYXIgc3J0cF9udWxsX2F1dGhfZGVzY3JpcHRpb25bXSA9ICJu
dWxsIGF1dGhlbnRpY2F0aW9uIGZ1bmN0aW9uIjsKIAotY29uc3Qgc3J0cF9hdXRoX3R5cGVfdCBz
cnRwX251bGxfYXV0aCAgPSB7Ci0gICAgc3J0cF9udWxsX2F1dGhfYWxsb2MsCi0gICAgc3J0cF9u
dWxsX2F1dGhfZGVhbGxvYywKLSAgICBzcnRwX251bGxfYXV0aF9pbml0LAotICAgIHNydHBfbnVs
bF9hdXRoX2NvbXB1dGUsCi0gICAgc3J0cF9udWxsX2F1dGhfdXBkYXRlLAotICAgIHNydHBfbnVs
bF9hdXRoX3N0YXJ0LAotICAgIHNydHBfbnVsbF9hdXRoX2Rlc2NyaXB0aW9uLAotICAgICZzcnRw
X251bGxfYXV0aF90ZXN0X2Nhc2VfMCwKLSAgICBTUlRQX05VTExfQVVUSAorY29uc3Qgc3J0cF9h
dXRoX3R5cGVfdCBzcnRwX251bGxfYXV0aCA9IHsKKyAgICBzcnRwX251bGxfYXV0aF9hbGxvYywg
ICAgICAgIC8qICovCisgICAgc3J0cF9udWxsX2F1dGhfZGVhbGxvYywgICAgICAvKiAqLworICAg
IHNydHBfbnVsbF9hdXRoX2luaXQsICAgICAgICAgLyogKi8KKyAgICBzcnRwX251bGxfYXV0aF9j
b21wdXRlLCAgICAgIC8qICovCisgICAgc3J0cF9udWxsX2F1dGhfdXBkYXRlLCAgICAgICAvKiAq
LworICAgIHNydHBfbnVsbF9hdXRoX3N0YXJ0LCAgICAgICAgLyogKi8KKyAgICBzcnRwX251bGxf
YXV0aF9kZXNjcmlwdGlvbiwgIC8qICovCisgICAgJnNydHBfbnVsbF9hdXRoX3Rlc3RfY2FzZV8w
LCAvKiAqLworICAgIFNSVFBfTlVMTF9BVVRIICAgICAgICAgICAgICAgLyogKi8KIH07Ci0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlic3J0cC9jcnlwdG8vaW5jbHVkZS9hZXMuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vaW5jbHVkZS9hZXMuaAppbmRleCAw
MDcxNjNjNTM0MTY4N2Y2NjhlNjVlYmMyNjU3MGE1NjZhMzQ2NzVjLi43NzljM2FjNzQ0ZmZhMDEy
OWEzNWFjYjA5MzRiYzM3MzFiNDAyZDQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2luY2x1ZGUvYWVzLmgK
KysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJz
cnRwL2NyeXB0by9pbmNsdWRlL2Flcy5oCkBAIC03MCw5ICs3MCwxMSBAQCBzcnRwX2Vycl9zdGF0
dXNfdCBzcnRwX2Flc19leHBhbmRfZGVjcnlwdGlvbl9rZXkoCiAgICAgaW50IGtleV9sZW4sCiAg
ICAgc3J0cF9hZXNfZXhwYW5kZWRfa2V5X3QgKmV4cGFuZGVkX2tleSk7CiAKLXZvaWQgc3J0cF9h
ZXNfZW5jcnlwdCh2MTI4X3QgKnBsYWludGV4dCwgY29uc3Qgc3J0cF9hZXNfZXhwYW5kZWRfa2V5
X3QgKmV4cF9rZXkpOwordm9pZCBzcnRwX2Flc19lbmNyeXB0KHYxMjhfdCAqcGxhaW50ZXh0LAor
ICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHNydHBfYWVzX2V4cGFuZGVkX2tleV90ICpleHBf
a2V5KTsKIAotdm9pZCBzcnRwX2Flc19kZWNyeXB0KHYxMjhfdCAqcGxhaW50ZXh0LCBjb25zdCBz
cnRwX2Flc19leHBhbmRlZF9rZXlfdCAqZXhwX2tleSk7Cit2b2lkIHNydHBfYWVzX2RlY3J5cHQo
djEyOF90ICpwbGFpbnRleHQsCisgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3J0cF9hZXNf
ZXhwYW5kZWRfa2V5X3QgKmV4cF9rZXkpOwogCiAjaWZkZWYgX19jcGx1c3BsdXMKIH0KZGlmZiAt
LWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGli
c3J0cC9jcnlwdG8vaW5jbHVkZS9hZXNfZ2NtX29zc2wuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vaW5jbHVkZS9hZXNfZ2Nt
X29zc2wuaAppbmRleCA4YjBkN2EwMjY0YTZhOTFlMjM5MWY5NjllNDUyM2NlODFlZmY2OTY2Li5k
NWI4M2VlZWIwN2ZhN2Y4NzA4NzFlNTkyY2Q5ZGMwOWU3MGQwMGExIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRv
L2luY2x1ZGUvYWVzX2djbV9vc3NsLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9pbmNsdWRlL2Flc19nY21fb3NzbC5o
CkBAIC01NSw5ICs1NSw4IEBACiB0eXBlZGVmIHN0cnVjdCB7CiAgICAgaW50IGtleV9zaXplOwog
ICAgIGludCB0YWdfbGVuOwotICAgIEVWUF9DSVBIRVJfQ1RYKiBjdHg7CisgICAgRVZQX0NJUEhF
Ul9DVFggKmN0eDsKICAgICBzcnRwX2NpcGhlcl9kaXJlY3Rpb25fdCBkaXI7CiB9IHNydHBfYWVz
X2djbV9jdHhfdDsKIAogI2VuZGlmIC8qIEFFU19HQ01fT1NTTF9IICovCi0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9j
cnlwdG8vaW5jbHVkZS9hZXNfaWNtLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2luY2x1ZGUvYWVzX2ljbS5oCmluZGV4IDkw
ZmJkNWUzNWQ5ZmM3ZDc5ZDBlN2JkYTEyM2JmZjZlYjcwOTcxOGIuLjhkZWQxNTZhMjk2OWM0ZmEx
ZDZkMWIwNWUxODYwODAxMzhiNTYzMDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vaW5jbHVkZS9hZXNfaWNt
LmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9s
aWJzcnRwL2NyeXB0by9pbmNsdWRlL2Flc19pY20uaApAQCAtOSwyNiArOSwyNiBAQAogICovCiAK
IC8qCi0gKgkKKyAqCiAgKiBDb3B5cmlnaHQgKGMpIDIwMDEtMjAxNywgQ2lzY28gU3lzdGVtcywg
SW5jLgogICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqIAorICoKICAqIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICog
bW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zCiAgKiBhcmUgbWV0OgotICogCisgKgogICogICBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAogICogICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0g
KiAKKyAqCiAgKiAgIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUKICAqICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcKICAqICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlv
biBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkCiAgKiAgIHdpdGggdGhlIGRpc3RyaWJ1
dGlvbi4KLSAqIAorICoKICAqICAgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgQ2lzY28gU3lzdGVt
cywgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwogICogICBjb250cmlidXRvcnMgbWF5IGJlIHVz
ZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQKICAqICAgZnJvbSB0aGlz
IHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotICog
CisgKgogICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERF
UlMgQU5EIENPTlRSSUJVVE9SUwogICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKICAqIExJTUlURUQgVE8sIFRIRSBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCkBAIC02MCw0ICs2
MCwzIEBAIHR5cGVkZWYgc3RydWN0IHsKIH0gc3J0cF9hZXNfaWNtX2N0eF90OwogCiAjZW5kaWYg
LyogQUVTX0lDTV9IICovCi0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vaW5jbHVkZS9hZXNfaWNtX29zc2wu
aCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0
cC9jcnlwdG8vaW5jbHVkZS9hZXNfaWNtX29zc2wuaAppbmRleCAxZGRkZDc1NWZjYTEyODFmOTdk
MDc5MWM1NzlmZWQxMzhlYzJjZDRiLi5jNGFhZTM3NmU2ZDczYzZlYzRjZDcyNGI5OGEyNGFjY2Zl
MWQxY2MxIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2luY2x1ZGUvYWVzX2ljbV9vc3NsLmgKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0
by9pbmNsdWRlL2Flc19pY21fb3NzbC5oCkBAIC01MiwxMSArNTIsMTAgQEAKICNpbmNsdWRlIDxv
cGVuc3NsL2Flcy5oPgogCiB0eXBlZGVmIHN0cnVjdCB7Ci0gICAgdjEyOF90IGNvdW50ZXI7ICAg
ICAgICAgICAgICAgIC8qIGhvbGRzIHRoZSBjb3VudGVyIHZhbHVlICAgICAgICAgICovCi0gICAg
djEyOF90IG9mZnNldDsgICAgICAgICAgICAgICAgIC8qIGluaXRpYWwgb2Zmc2V0IHZhbHVlICAg
ICAgICAgICAgICovCisgICAgdjEyOF90IGNvdW50ZXI7IC8qIGhvbGRzIHRoZSBjb3VudGVyIHZh
bHVlICAgICAgICAgICovCisgICAgdjEyOF90IG9mZnNldDsgIC8qIGluaXRpYWwgb2Zmc2V0IHZh
bHVlICAgICAgICAgICAgICovCiAgICAgaW50IGtleV9zaXplOwotICAgIEVWUF9DSVBIRVJfQ1RY
KiBjdHg7CisgICAgRVZQX0NJUEhFUl9DVFggKmN0eDsKIH0gc3J0cF9hZXNfaWNtX2N0eF90Owog
CiAjZW5kaWYgLyogQUVTX0lDTV9IICovCi0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vaW5jbHVkZS9hbGxv
Yy5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJz
cnRwL2NyeXB0by9pbmNsdWRlL2FsbG9jLmgKaW5kZXggMGJkMmE5MDgyMGY5ODRiM2JjMjAzYjcw
ZmNmOTE4N2E5MzIxMDY4Mi4uMWZjMDQxMDE0ZDhmOGM1ZTBhN2JmNmQ2MjRkZjg4ZDU4NzhkM2Zk
MiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJzcnRwL2NyeXB0by9pbmNsdWRlL2FsbG9jLmgKKysrIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9pbmNsdWRlL2Fs
bG9jLmgKQEAgLTEsMzIgKzEsMzIgQEAKIC8qCiAgKiBhbGxvYy5oCiAgKgotICogaW50ZXJmYWNl
IHRvIG1lbW9yeSBhbGxvY2F0aW9uIGFuZCBkZWFsbG9jYXRpb24sIHdpdGggb3B0aW9uYWwgZGVi
dWdnaW5nIAorICogaW50ZXJmYWNlIHRvIG1lbW9yeSBhbGxvY2F0aW9uIGFuZCBkZWFsbG9jYXRp
b24sIHdpdGggb3B0aW9uYWwgZGVidWdnaW5nCiAgKgogICogRGF2aWQgQS4gTWNHcmV3CiAgKiBD
aXNjbyBTeXN0ZW1zLCBJbmMuCiAgKi8KIC8qCi0gKgkKKyAqCiAgKiBDb3B5cmlnaHQgKGMpIDIw
MDEtMjAxNyBDaXNjbyBTeXN0ZW1zLCBJbmMuCiAgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICog
CisgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKICAqIGFyZSBtZXQ6Ci0gKiAKKyAqCiAg
KiAgIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUg
Y29weXJpZ2h0CiAgKiAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIAorICoKICAqICAgUmVkaXN0cmlidXRpb25zIGluIGJp
bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQogICogICBjb3B5cmlnaHQgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwogICogICBkaXNjbGFp
bWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQK
ICAqICAgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICogCisgKgogICogICBOZWl0aGVyIHRoZSBu
YW1lIG9mIHRoZSBDaXNjbyBTeXN0ZW1zLCBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCiAgKiAg
IGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMg
ZGVyaXZlZAogICogICBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3
cml0dGVuIHBlcm1pc3Npb24uCi0gKiAKKyAqCiAgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVE
IEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCiAgKiAiQVMgSVMiIEFO
RCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAog
ICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkg
QU5EIEZJVE5FU1MKQEAgLTQyLDcgKzQyLDYgQEAKICAqCiAgKi8KIAotCiAjaWZuZGVmIENSWVBU
T19BTExPQ19ICiAjZGVmaW5lIENSWVBUT19BTExPQ19ICiAKQEAgLTUyLDggKzUxLDIyIEBACiBl
eHRlcm4gIkMiIHsKICNlbmRpZgogCi12b2lkICogc3J0cF9jcnlwdG9fYWxsb2Moc2l6ZV90IHNp
emUpOworLyoKKyAqIHNydHBfY3J5cHRvX2FsbG9jCisgKgorICogQWxsb2NhdGVzIGEgYmxvY2sg
b2YgbWVtb3J5ICBvZiBnaXZlbiBzaXplLiBUaGUgbWVtb3J5IHdpbGwgYmUKKyAqIGluaXRpYWxp
emVkIHRvIHplcm8ncy4gRnJlZSB0aGUgbWVtb3J5IHdpdGggYSBjYWxsIHRvIHNydHBfY3J5cHRv
X2ZyZWUuCisgKgorICogcmV0dXJucyBwb2ludGVyIHRvIG1lbW9yeSBvbiBzdWNjZXNzIG9yIGVs
c2UgTlVMTAorICovCit2b2lkICpzcnRwX2NyeXB0b19hbGxvYyhzaXplX3Qgc2l6ZSk7CiAKKy8q
CisgKiBzcnRwX2NyeXB0b19mcmVlCisgKgorICogRnJlZXMgdGhlIGJsb2NrIG9mIG1lbW9yeSAg
cHRyIHByZXZpb3VzbHkgIGFsbG9jYXRlZCB3aXRoCisgKiBzcnRwX2NyeXB0b19hbGxvYworICov
CiB2b2lkIHNydHBfY3J5cHRvX2ZyZWUodm9pZCAqcHRyKTsKIAogI2lmZGVmIF9fY3BsdXNwbHVz
CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L2xpYnNydHAvY3J5cHRvL2luY2x1ZGUvYXV0aC5oIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9pbmNsdWRlL2F1dGguaApp
bmRleCA3ODcwYjI5NDUwZjlhZGU5OGQ4NmRmODFhMWQzZTg2MmYyYTQ3YjRkLi43NzRlYTE2ODdi
YjhkZWUwMjViNzgyMTE0MDBjZmRiYWU0M2Q4MzJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2luY2x1ZGUv
YXV0aC5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvbGlic3J0cC9jcnlwdG8vaW5jbHVkZS9hdXRoLmgKQEAgLTQ3LDQ2ICs0Nyw1MSBAQAogI2Rl
ZmluZSBTUlRQX0FVVEhfSAogCiAjaW5jbHVkZSAic3J0cC5oIgotI2luY2x1ZGUgImNyeXB0b190
eXBlcy5oIiAgICAgICAvKiBmb3IgdmFsdWVzIG9mIGF1dGhfdHlwZV9pZF90ICovCisjaW5jbHVk
ZSAiY3J5cHRvX3R5cGVzLmgiIC8qIGZvciB2YWx1ZXMgb2YgYXV0aF90eXBlX2lkX3QgKi8KIAog
I2lmZGVmIF9fY3BsdXNwbHVzCiBleHRlcm4gIkMiIHsKICNlbmRpZgogCiB0eXBlZGVmIGNvbnN0
IHN0cnVjdCBzcnRwX2F1dGhfdHlwZV90ICpzcnRwX2F1dGhfdHlwZV9wb2ludGVyOwotdHlwZWRl
ZiBzdHJ1Y3Qgc3J0cF9hdXRoX3QgICAgICAqc3J0cF9hdXRoX3BvaW50ZXJfdDsKK3R5cGVkZWYg
c3RydWN0IHNydHBfYXV0aF90ICpzcnRwX2F1dGhfcG9pbnRlcl90OwogCi10eXBlZGVmIHNydHBf
ZXJyX3N0YXR1c190ICgqc3J0cF9hdXRoX2FsbG9jX2Z1bmMpCi0gICAgKHNydHBfYXV0aF9wb2lu
dGVyX3QgKmFwLCBpbnQga2V5X2xlbiwgaW50IG91dF9sZW4pOwordHlwZWRlZiBzcnRwX2Vycl9z
dGF0dXNfdCAoKnNydHBfYXV0aF9hbGxvY19mdW5jKShzcnRwX2F1dGhfcG9pbnRlcl90ICphcCwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IGtl
eV9sZW4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGludCBvdXRfbGVuKTsKIAotdHlwZWRlZiBzcnRwX2Vycl9zdGF0dXNfdCAoKnNydHBfYXV0aF9p
bml0X2Z1bmMpCi0gICAgKHZvaWQgKnN0YXRlLCBjb25zdCB1aW50OF90ICprZXksIGludCBrZXlf
bGVuKTsKK3R5cGVkZWYgc3J0cF9lcnJfc3RhdHVzX3QgKCpzcnRwX2F1dGhfaW5pdF9mdW5jKSh2
b2lkICpzdGF0ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBjb25zdCB1aW50OF90ICprZXksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgaW50IGtleV9sZW4pOwogCiB0eXBlZGVmIHNydHBfZXJyX3N0YXR1
c190ICgqc3J0cF9hdXRoX2RlYWxsb2NfZnVuYykoc3J0cF9hdXRoX3BvaW50ZXJfdCBhcCk7CiAK
LXR5cGVkZWYgc3J0cF9lcnJfc3RhdHVzX3QgKCpzcnRwX2F1dGhfY29tcHV0ZV9mdW5jKQotICAg
ICh2b2lkICpzdGF0ZSwgY29uc3QgdWludDhfdCAqYnVmZmVyLCBpbnQgb2N0ZXRzX3RvX2F1dGgs
Ci0gICAgaW50IHRhZ19sZW4sIHVpbnQ4X3QgKnRhZyk7Cit0eXBlZGVmIHNydHBfZXJyX3N0YXR1
c190ICgqc3J0cF9hdXRoX2NvbXB1dGVfZnVuYykodm9pZCAqc3RhdGUsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdWludDhfdCAqYnVm
ZmVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGludCBvY3RldHNfdG9fYXV0aCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBpbnQgdGFnX2xlbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50OF90ICp0YWcpOwogCi10eXBlZGVmIHNydHBf
ZXJyX3N0YXR1c190ICgqc3J0cF9hdXRoX3VwZGF0ZV9mdW5jKQotICAgICh2b2lkICpzdGF0ZSwg
Y29uc3QgdWludDhfdCAqYnVmZmVyLCBpbnQgb2N0ZXRzX3RvX2F1dGgpOwordHlwZWRlZiBzcnRw
X2Vycl9zdGF0dXNfdCAoKnNydHBfYXV0aF91cGRhdGVfZnVuYykodm9pZCAqc3RhdGUsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB1aW50
OF90ICpidWZmZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBpbnQgb2N0ZXRzX3RvX2F1dGgpOwogCiB0eXBlZGVmIHNydHBfZXJyX3N0YXR1c190
ICgqc3J0cF9hdXRoX3N0YXJ0X2Z1bmMpKHZvaWQgKnN0YXRlKTsKIAogLyogc29tZSBzeW50YWN0
aWMgc3VnYXIgb24gdGhlc2UgZnVuY3Rpb24gdHlwZXMgKi8KLSNkZWZpbmUgc3J0cF9hdXRoX3R5
cGVfYWxsb2MoYXQsIGEsIGtsZW4sIG91dGxlbikgICAgICAgICAgICAgICAgICAgICAgICBcCisj
ZGVmaW5lIHNydHBfYXV0aF90eXBlX2FsbG9jKGF0LCBhLCBrbGVuLCBvdXRsZW4pICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgXAogICAgICgoYXQpLT5hbGxvYygoYSksIChrbGVuKSwgKG91
dGxlbikpKQogCi0jZGVmaW5lIHNydHBfYXV0aF9pbml0KGEsIGtleSkgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorI2RlZmluZSBzcnRwX2F1dGhfaW5pdChhLCBr
ZXkpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAg
ICAoKChhKS0+dHlwZSktPmluaXQoKGEpLT5zdGF0ZSwgKGtleSksICgoYSktPmtleV9sZW4pKSkK
IAotI2RlZmluZSBzcnRwX2F1dGhfY29tcHV0ZShhLCBidWYsIGxlbiwgcmVzKSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFwKKyNkZWZpbmUgc3J0cF9hdXRoX2NvbXB1dGUoYSwgYnVmLCBs
ZW4sIHJlcykgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgKCgoYSkt
PnR5cGUpLT5jb21wdXRlKChhKS0+c3RhdGUsIChidWYpLCAobGVuKSwgKGEpLT5vdXRfbGVuLCAo
cmVzKSkpCiAKLSNkZWZpbmUgc3J0cF9hdXRoX3VwZGF0ZShhLCBidWYsIGxlbikgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBcCisjZGVmaW5lIHNydHBfYXV0aF91cGRhdGUoYSwg
YnVmLCBsZW4pICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAg
ICgoKGEpLT50eXBlKS0+dXBkYXRlKChhKS0+c3RhdGUsIChidWYpLCAobGVuKSkpCiAKLSNkZWZp
bmUgc3J0cF9hdXRoX3N0YXJ0KGEpKCgoYSktPnR5cGUpLT5zdGFydCgoYSktPnN0YXRlKSkKKyNk
ZWZpbmUgc3J0cF9hdXRoX3N0YXJ0KGEpICgoKGEpLT50eXBlKS0+c3RhcnQoKGEpLT5zdGF0ZSkp
CiAKICNkZWZpbmUgc3J0cF9hdXRoX2RlYWxsb2MoYykgKCgoYyktPnR5cGUpLT5kZWFsbG9jKGMp
KQogCkBAIC0xMDUsMTMgKzExMCwxNCBAQCBpbnQgc3J0cF9hdXRoX2dldF9wcmVmaXhfbGVuZ3Ro
KGNvbnN0IHN0cnVjdCBzcnRwX2F1dGhfdCAqYSk7CiAgKiBmdW5jdGlvbiBiZWxvdykKICAqLwog
dHlwZWRlZiBzdHJ1Y3Qgc3J0cF9hdXRoX3Rlc3RfY2FzZV90IHsKLSAgICBpbnQga2V5X2xlbmd0
aF9vY3RldHM7ICAgICAgICAgICAgICAgICAgICAgICAgLyogb2N0ZXRzIGluIGtleSAgICAgICAg
ICAgICovCi0gICAgY29uc3QgdWludDhfdCAqa2V5OyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIC8qIGtleSAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGludCBkYXRhX2xlbmd0
aF9vY3RldHM7ICAgICAgICAgICAgICAgICAgICAgICAvKiBvY3RldHMgaW4gZGF0YSAgICAgICAg
ICAgKi8KLSAgICBjb25zdCB1aW50OF90ICpkYXRhOyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgLyogZGF0YSAgICAgICAgICAgICAgICAgICAgICovCi0gICAgaW50IHRhZ19sZW5ndGhf
b2N0ZXRzOyAgICAgICAgICAgICAgICAgICAgICAgIC8qIG9jdGV0cyBpbiB0YWcgICAgICAgICAg
ICAqLwotICAgIGNvbnN0IHVpbnQ4X3QgKnRhZzsgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAvKiB0YWcgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBjb25zdCBzdHJ1Y3Qgc3J0
cF9hdXRoX3Rlc3RfY2FzZV90ICpuZXh0X3Rlc3RfY2FzZTsgLyogcG9pbnRlciB0byBuZXh0IHRl
c3RjYXNlICovCisgICAgaW50IGtleV9sZW5ndGhfb2N0ZXRzOyAgLyogb2N0ZXRzIGluIGtleSAg
ICAgICAgICAgICovCisgICAgY29uc3QgdWludDhfdCAqa2V5OyAgICAgLyoga2V5ICAgICAgICAg
ICAgICAgICAgICAgICovCisgICAgaW50IGRhdGFfbGVuZ3RoX29jdGV0czsgLyogb2N0ZXRzIGlu
IGRhdGEgICAgICAgICAgICovCisgICAgY29uc3QgdWludDhfdCAqZGF0YTsgICAgLyogZGF0YSAg
ICAgICAgICAgICAgICAgICAgICovCisgICAgaW50IHRhZ19sZW5ndGhfb2N0ZXRzOyAgLyogb2N0
ZXRzIGluIHRhZyAgICAgICAgICAgICovCisgICAgY29uc3QgdWludDhfdCAqdGFnOyAgICAgLyog
dGFnICAgICAgICAgICAgICAgICAgICAgICovCisgICAgY29uc3Qgc3RydWN0IHNydHBfYXV0aF90
ZXN0X2Nhc2VfdAorICAgICAgICAqbmV4dF90ZXN0X2Nhc2U7IC8qIHBvaW50ZXIgdG8gbmV4dCB0
ZXN0Y2FzZSAqLwogfSBzcnRwX2F1dGhfdGVzdF9jYXNlX3Q7CiAKIC8qIHNydHBfYXV0aF90eXBl
X3QgKi8KQEAgLTEyMiwxNyArMTI4LDE3IEBAIHR5cGVkZWYgc3RydWN0IHNydHBfYXV0aF90eXBl
X3QgewogICAgIHNydHBfYXV0aF9jb21wdXRlX2Z1bmMgY29tcHV0ZTsKICAgICBzcnRwX2F1dGhf
dXBkYXRlX2Z1bmMgdXBkYXRlOwogICAgIHNydHBfYXV0aF9zdGFydF9mdW5jIHN0YXJ0OwotICAg
IGNvbnN0IGNoYXIgICAgICAgICAgICAgICAgKmRlc2NyaXB0aW9uOwotICAgIGNvbnN0IHNydHBf
YXV0aF90ZXN0X2Nhc2VfdCAgICAqdGVzdF9kYXRhOworICAgIGNvbnN0IGNoYXIgKmRlc2NyaXB0
aW9uOworICAgIGNvbnN0IHNydHBfYXV0aF90ZXN0X2Nhc2VfdCAqdGVzdF9kYXRhOwogICAgIHNy
dHBfYXV0aF90eXBlX2lkX3QgaWQ7CiB9IHNydHBfYXV0aF90eXBlX3Q7CiAKIHR5cGVkZWYgc3Ry
dWN0IHNydHBfYXV0aF90IHsKICAgICBjb25zdCBzcnRwX2F1dGhfdHlwZV90ICp0eXBlOwotICAg
IHZvaWQgICAgICAgICpzdGF0ZTsKLSAgICBpbnQgb3V0X2xlbjsgICAgICAgICAgICAgICAgICAv
KiBsZW5ndGggb2Ygb3V0cHV0IHRhZyBpbiBvY3RldHMgKi8KLSAgICBpbnQga2V5X2xlbjsgICAg
ICAgICAgICAgICAgICAvKiBsZW5ndGggb2Yga2V5IGluIG9jdGV0cyAgICAgICAgKi8KLSAgICBp
bnQgcHJlZml4X2xlbjsgICAgICAgICAgICAgICAvKiBsZW5ndGggb2Yga2V5c3RyZWFtIHByZWZp
eCAgICAgKi8KKyAgICB2b2lkICpzdGF0ZTsKKyAgICBpbnQgb3V0X2xlbjsgICAgLyogbGVuZ3Ro
IG9mIG91dHB1dCB0YWcgaW4gb2N0ZXRzICovCisgICAgaW50IGtleV9sZW47ICAgIC8qIGxlbmd0
aCBvZiBrZXkgaW4gb2N0ZXRzICAgICAgICAqLworICAgIGludCBwcmVmaXhfbGVuOyAvKiBsZW5n
dGggb2Yga2V5c3RyZWFtIHByZWZpeCAgICAgKi8KIH0gc3J0cF9hdXRoX3Q7CiAKIC8qCkBAIC0x
NDcsOCArMTUzLDggQEAgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9hdXRoX3R5cGVfc2VsZl90ZXN0
KGNvbnN0IHNydHBfYXV0aF90eXBlX3QgKmF0KTsKICAqIHByb3ZpZGVkIGluIGFuIGFycmF5IG9m
IHZhbHVlcyBvZiBrZXkvbWVzc2FnZS90YWcgdGhhdCBpcyBrbm93biB0bwogICogYmUgZ29vZAog
ICovCi1zcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2F1dGhfdHlwZV90ZXN0KGNvbnN0IHNydHBfYXV0
aF90eXBlX3QgKmF0LCAKLQljb25zdCBzcnRwX2F1dGhfdGVzdF9jYXNlX3QgKnRlc3RfZGF0YSk7
CitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2F1dGhfdHlwZV90ZXN0KGNvbnN0IHNydHBfYXV0aF90
eXBlX3QgKmF0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBz
cnRwX2F1dGhfdGVzdF9jYXNlX3QgKnRlc3RfZGF0YSk7CiAKIC8qCiAgKiBzcnRwX3JlcGxhY2Vf
YXV0aF90eXBlKGN0LCBpZCkKQEAgLTE1Nyw3ICsxNjMsOCBAQCBzcnRwX2Vycl9zdGF0dXNfdCBz
cnRwX2F1dGhfdHlwZV90ZXN0KGNvbnN0IHNydHBfYXV0aF90eXBlX3QgKmF0LAogICogd2l0aCBh
IG5ldyBvbmUgcGFzc2VkIGluIGV4dGVybmFsbHkuICBUaGUgbmV3IGF1dGggdHlwZSBtdXN0IHBh
c3MgYWxsIHRoZQogICogZXhpc3RpbmcgYXV0aF90eXBlJ3Mgc2VsZiB0ZXN0cyBhcyB3ZWxsIGFz
IGl0cyBvd24uCiAgKi8KLXNydHBfZXJyX3N0YXR1c190IHNydHBfcmVwbGFjZV9hdXRoX3R5cGUo
Y29uc3Qgc3J0cF9hdXRoX3R5cGVfdCAqY3QsIHNydHBfYXV0aF90eXBlX2lkX3QgaWQpOworc3J0
cF9lcnJfc3RhdHVzX3Qgc3J0cF9yZXBsYWNlX2F1dGhfdHlwZShjb25zdCBzcnRwX2F1dGhfdHlw
ZV90ICpjdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF9h
dXRoX3R5cGVfaWRfdCBpZCk7CiAKICNpZmRlZiBfX2NwbHVzcGx1cwogfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2Ny
eXB0by9pbmNsdWRlL2NpcGhlci5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9pbmNsdWRlL2NpcGhlci5oCmluZGV4IGQ1NDRi
MTIwNDVjY2I0MTUwZDUwNmQ5NTkxZDc1MDQyNmQyYzIxMjMuLjRmMTRlMzU2MGZkZDAzZDdkZmIx
OTQ0YTFmMTZjNzY5NzRmOTE5MzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vaW5jbHVkZS9jaXBoZXIuaAor
KysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNy
dHAvY3J5cHRvL2luY2x1ZGUvY2lwaGVyLmgKQEAgLTQyLDEzICs0MiwxMSBAQAogICoKICAqLwog
Ci0KICNpZm5kZWYgU1JUUF9DSVBIRVJfSAogI2RlZmluZSBTUlRQX0NJUEhFUl9ICiAKICNpbmNs
dWRlICJzcnRwLmgiCi0jaW5jbHVkZSAiY3J5cHRvX3R5cGVzLmgiICAgICAgIC8qIGZvciB2YWx1
ZXMgb2YgY2lwaGVyX3R5cGVfaWRfdCAqLwotCisjaW5jbHVkZSAiY3J5cHRvX3R5cGVzLmgiIC8q
IGZvciB2YWx1ZXMgb2YgY2lwaGVyX3R5cGVfaWRfdCAqLwogCiAjaWZkZWYgX19jcGx1c3BsdXMK
IGV4dGVybiAiQyIgewpAQCAtNzEsNTEgKzY5LDYwIEBAIHR5cGVkZWYgZW51bSB7CiAgKiB0aGUg
c3J0cF9jaXBoZXJfcG9pbnRlcl90IGRlZmluaXRpb24gaXMgbmVlZGVkCiAgKiBhcyBzcnRwX2Np
cGhlcl90IGlzIG5vdCB5ZXQgZGVmaW5lZAogICovCi10eXBlZGVmIHN0cnVjdCBzcnRwX2NpcGhl
cl90ICAgICAgKnNydHBfY2lwaGVyX3BvaW50ZXJfdDsKK3R5cGVkZWYgc3RydWN0IHNydHBfY2lw
aGVyX3QgKnNydHBfY2lwaGVyX3BvaW50ZXJfdDsKIAogLyoKLSAqICBhIHNydHBfY2lwaGVyX2Fs
bG9jX2Z1bmNfdCBhbGxvY2F0ZXMgKGJ1dCBkb2VzIG5vdCBpbml0aWFsaXplKSBhIHNydHBfY2lw
aGVyX3QKKyAqICBhIHNydHBfY2lwaGVyX2FsbG9jX2Z1bmNfdCBhbGxvY2F0ZXMgKGJ1dCBkb2Vz
IG5vdCBpbml0aWFsaXplKSBhCisgKiBzcnRwX2NpcGhlcl90CiAgKi8KLXR5cGVkZWYgc3J0cF9l
cnJfc3RhdHVzX3QgKCpzcnRwX2NpcGhlcl9hbGxvY19mdW5jX3QpCi0gICAgKHNydHBfY2lwaGVy
X3BvaW50ZXJfdCAqY3AsIGludCBrZXlfbGVuLCBpbnQgdGFnX2xlbik7Cit0eXBlZGVmIHNydHBf
ZXJyX3N0YXR1c190ICgqc3J0cF9jaXBoZXJfYWxsb2NfZnVuY190KShzcnRwX2NpcGhlcl9wb2lu
dGVyX3QgKmNwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgaW50IGtleV9sZW4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBpbnQgdGFnX2xlbik7CiAKIC8qCiAgKiBhIHNydHBfY2lwaGVy
X2luaXRfZnVuY190IFtyZS1daW5pdGlhbGl6ZXMgYSBjaXBoZXJfdCB3aXRoIGEgZ2l2ZW4ga2V5
CiAgKi8KLXR5cGVkZWYgc3J0cF9lcnJfc3RhdHVzX3QgKCpzcnRwX2NpcGhlcl9pbml0X2Z1bmNf
dCkKLSAgICAodm9pZCAqc3RhdGUsIGNvbnN0IHVpbnQ4X3QgKmtleSk7Cit0eXBlZGVmIHNydHBf
ZXJyX3N0YXR1c190ICgqc3J0cF9jaXBoZXJfaW5pdF9mdW5jX3QpKHZvaWQgKnN0YXRlLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB1
aW50OF90ICprZXkpOwogCiAvKiBhIHNydHBfY2lwaGVyX2RlYWxsb2NfZnVuY190IGRlLWFsbG9j
YXRlcyBhIGNpcGhlcl90ICovCi10eXBlZGVmIHNydHBfZXJyX3N0YXR1c190ICgqc3J0cF9jaXBo
ZXJfZGVhbGxvY19mdW5jX3QpKHNydHBfY2lwaGVyX3BvaW50ZXJfdCBjcCk7Cit0eXBlZGVmIHNy
dHBfZXJyX3N0YXR1c190ICgqc3J0cF9jaXBoZXJfZGVhbGxvY19mdW5jX3QpKAorICAgIHNydHBf
Y2lwaGVyX3BvaW50ZXJfdCBjcCk7CiAKIC8qCiAgKiBhIHNydHBfY2lwaGVyX3NldF9hYWRfZnVu
Y190IHByb2Nlc3NlcyB0aGUgQUFEIGRhdGEgZm9yIEFFQUQgY2lwaGVycwogICovCi10eXBlZGVm
IHNydHBfZXJyX3N0YXR1c190ICgqc3J0cF9jaXBoZXJfc2V0X2FhZF9mdW5jX3QpCi0gICAgKHZv
aWQgKnN0YXRlLCBjb25zdCB1aW50OF90ICphYWQsIHVpbnQzMl90IGFhZF9sZW4pOwotCit0eXBl
ZGVmIHNydHBfZXJyX3N0YXR1c190ICgqc3J0cF9jaXBoZXJfc2V0X2FhZF9mdW5jX3QpKHZvaWQg
KnN0YXRlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBjb25zdCB1aW50OF90ICphYWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IGFhZF9sZW4pOwogCiAvKiBhIHNy
dHBfY2lwaGVyX2VuY3J5cHRfZnVuY190IGVuY3J5cHRzIGRhdGEgaW4tcGxhY2UgKi8KLXR5cGVk
ZWYgc3J0cF9lcnJfc3RhdHVzX3QgKCpzcnRwX2NpcGhlcl9lbmNyeXB0X2Z1bmNfdCkKLSAgICAo
dm9pZCAqc3RhdGUsIHVpbnQ4X3QgKmJ1ZmZlciwgdW5zaWduZWQgaW50ICpvY3RldHNfdG9fZW5j
cnlwdCk7Cit0eXBlZGVmIHNydHBfZXJyX3N0YXR1c190ICgqc3J0cF9jaXBoZXJfZW5jcnlwdF9m
dW5jX3QpKAorICAgIHZvaWQgKnN0YXRlLAorICAgIHVpbnQ4X3QgKmJ1ZmZlciwKKyAgICB1bnNp
Z25lZCBpbnQgKm9jdGV0c190b19lbmNyeXB0KTsKIAogLyogYSBzcnRwX2NpcGhlcl9kZWNyeXB0
X2Z1bmNfdCBkZWNyeXB0cyBkYXRhIGluLXBsYWNlICovCi10eXBlZGVmIHNydHBfZXJyX3N0YXR1
c190ICgqc3J0cF9jaXBoZXJfZGVjcnlwdF9mdW5jX3QpCi0gICAgKHZvaWQgKnN0YXRlLCB1aW50
OF90ICpidWZmZXIsIHVuc2lnbmVkIGludCAqb2N0ZXRzX3RvX2RlY3J5cHQpOwordHlwZWRlZiBz
cnRwX2Vycl9zdGF0dXNfdCAoKnNydHBfY2lwaGVyX2RlY3J5cHRfZnVuY190KSgKKyAgICB2b2lk
ICpzdGF0ZSwKKyAgICB1aW50OF90ICpidWZmZXIsCisgICAgdW5zaWduZWQgaW50ICpvY3RldHNf
dG9fZGVjcnlwdCk7CiAKIC8qCiAgKiBhIHNydHBfY2lwaGVyX3NldF9pdl9mdW5jX3QgZnVuY3Rp
b24gc2V0cyB0aGUgY3VycmVudCBpbml0aWFsaXphdGlvbiB2ZWN0b3IKICAqLwotdHlwZWRlZiBz
cnRwX2Vycl9zdGF0dXNfdCAoKnNydHBfY2lwaGVyX3NldF9pdl9mdW5jX3QpCi0gICAgKHZvaWQg
KnN0YXRlLCB1aW50OF90ICppdiwgc3J0cF9jaXBoZXJfZGlyZWN0aW9uX3QgZGlyZWN0aW9uKTsK
K3R5cGVkZWYgc3J0cF9lcnJfc3RhdHVzX3QgKCpzcnRwX2NpcGhlcl9zZXRfaXZfZnVuY190KSgK
KyAgICB2b2lkICpzdGF0ZSwKKyAgICB1aW50OF90ICppdiwKKyAgICBzcnRwX2NpcGhlcl9kaXJl
Y3Rpb25fdCBkaXJlY3Rpb24pOwogCiAvKgogICogYSBjaXBoZXJfZ2V0X3RhZ19mdW5jX3QgZnVu
Y3Rpb24gaXMgdXNlZCB0byBnZXQgdGhlIGF1dGhlbnRpY2F0aW9uCiAgKiB0YWcgdGhhdCB3YXMg
Y2FsY3VsYXRlZCBieSBhbiBBRUFEIGNpcGhlci4KICAqLwotdHlwZWRlZiBzcnRwX2Vycl9zdGF0
dXNfdCAoKnNydHBfY2lwaGVyX2dldF90YWdfZnVuY190KQotICAgICh2b2lkICpzdGF0ZSwgdWlu
dDhfdCAqdGFnLCB1aW50MzJfdCAqbGVuKTsKLQordHlwZWRlZiBzcnRwX2Vycl9zdGF0dXNfdCAo
KnNydHBfY2lwaGVyX2dldF90YWdfZnVuY190KSh2b2lkICpzdGF0ZSwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDhfdCAqdGFnLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1
aW50MzJfdCAqbGVuKTsKIAogLyoKICAqIHNydHBfY2lwaGVyX3Rlc3RfY2FzZV90IGlzIGEgKGxp
c3Qgb2YpIGtleSwgc2FsdCwgcGxhaW50ZXh0LCBjaXBoZXJ0ZXh0LApAQCAtMTI1LDE3ICsxMzIs
MTggQEAgdHlwZWRlZiBzcnRwX2Vycl9zdGF0dXNfdCAoKnNydHBfY2lwaGVyX2dldF90YWdfZnVu
Y190KQogICogKHNlZSB0aGUgc3J0cF9jaXBoZXJfdHlwZV9zZWxmX3Rlc3QoKSBmdW5jdGlvbiBi
ZWxvdykKICAqLwogdHlwZWRlZiBzdHJ1Y3Qgc3J0cF9jaXBoZXJfdGVzdF9jYXNlX3QgewotICAg
IGludCBrZXlfbGVuZ3RoX29jdGV0czsgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIG9jdGV0
cyBpbiBrZXkgICAgICAgICAgICAqLwotICAgIGNvbnN0IHVpbnQ4X3QgKmtleTsgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIGtleSAgICAgICAgICAgICAgICAgICAgICAqLwot
ICAgIHVpbnQ4X3QgKmlkeDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHBh
Y2tldCBpbmRleCAgICAgICAgICAgICAqLwotICAgIGludCBwbGFpbnRleHRfbGVuZ3RoX29jdGV0
czsgICAgICAgICAgICAgICAgICAgIC8qIG9jdGV0cyBpbiBwbGFpbnRleHQgICAgICAqLwotICAg
IGNvbnN0IHVpbnQ4X3QgKnBsYWludGV4dDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8q
IHBsYWludGV4dCAgICAgICAgICAgICAgICAqLwotICAgIGludCBjaXBoZXJ0ZXh0X2xlbmd0aF9v
Y3RldHM7ICAgICAgICAgICAgICAgICAgIC8qIG9jdGV0cyBpbiBwbGFpbnRleHQgICAgICAqLwot
ICAgIGNvbnN0IHVpbnQ4X3QgKmNpcGhlcnRleHQ7ICAgICAgICAgICAgICAgICAgICAgICAgICAg
IC8qIGNpcGhlcnRleHQgICAgICAgICAgICAgICAqLwotICAgIGludCBhYWRfbGVuZ3RoX29jdGV0
czsgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIG9jdGV0cyBpbiBBQUQgICAgICAgICAgICAq
LwotICAgIGNvbnN0IHVpbnQ4X3QgKmFhZDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIEFBRCAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGludCB0YWdfbGVuZ3RoX29j
dGV0czsgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIExlbmd0aCBvZiBBRUFEIHRhZyAgICAg
ICAqLwotICAgIGNvbnN0IHN0cnVjdCBzcnRwX2NpcGhlcl90ZXN0X2Nhc2VfdCAqbmV4dF90ZXN0
X2Nhc2U7IC8qIHBvaW50ZXIgdG8gbmV4dCB0ZXN0Y2FzZSAqLworICAgIGludCBrZXlfbGVuZ3Ro
X29jdGV0czsgICAgICAgICAgICAgICAgIC8qIG9jdGV0cyBpbiBrZXkgICAgICAgICAgICAqLwor
ICAgIGNvbnN0IHVpbnQ4X3QgKmtleTsgICAgICAgICAgICAgICAgICAgIC8qIGtleSAgICAgICAg
ICAgICAgICAgICAgICAqLworICAgIHVpbnQ4X3QgKmlkeDsgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIHBhY2tldCBpbmRleCAgICAgICAgICAgICAqLworICAgIHVuc2lnbmVkIGludCBwbGFp
bnRleHRfbGVuZ3RoX29jdGV0czsgIC8qIG9jdGV0cyBpbiBwbGFpbnRleHQgICAgICAqLworICAg
IGNvbnN0IHVpbnQ4X3QgKnBsYWludGV4dDsgICAgICAgICAgICAgIC8qIHBsYWludGV4dCAgICAg
ICAgICAgICAgICAqLworICAgIHVuc2lnbmVkIGludCBjaXBoZXJ0ZXh0X2xlbmd0aF9vY3RldHM7
IC8qIG9jdGV0cyBpbiBwbGFpbnRleHQgICAgICAqLworICAgIGNvbnN0IHVpbnQ4X3QgKmNpcGhl
cnRleHQ7ICAgICAgICAgICAgIC8qIGNpcGhlcnRleHQgICAgICAgICAgICAgICAqLworICAgIGlu
dCBhYWRfbGVuZ3RoX29jdGV0czsgICAgICAgICAgICAgICAgIC8qIG9jdGV0cyBpbiBBQUQgICAg
ICAgICAgICAqLworICAgIGNvbnN0IHVpbnQ4X3QgKmFhZDsgICAgICAgICAgICAgICAgICAgIC8q
IEFBRCAgICAgICAgICAgICAgICAgICAgICAqLworICAgIGludCB0YWdfbGVuZ3RoX29jdGV0czsg
ICAgICAgICAgICAgICAgIC8qIExlbmd0aCBvZiBBRUFEIHRhZyAgICAgICAqLworICAgIGNvbnN0
IHN0cnVjdCBzcnRwX2NpcGhlcl90ZXN0X2Nhc2VfdAorICAgICAgICAqbmV4dF90ZXN0X2Nhc2U7
IC8qIHBvaW50ZXIgdG8gbmV4dCB0ZXN0Y2FzZSAqLwogfSBzcnRwX2NpcGhlcl90ZXN0X2Nhc2Vf
dDsKIAogLyogc3J0cF9jaXBoZXJfdHlwZV90IGRlZmluZXMgdGhlICdtZXRhZGF0YScgZm9yIGEg
cGFydGljdWxhciBjaXBoZXIgdHlwZSAqLwpAQCAtMTQ4LDggKzE1Niw4IEBAIHR5cGVkZWYgc3Ry
dWN0IHNydHBfY2lwaGVyX3R5cGVfdCB7CiAgICAgc3J0cF9jaXBoZXJfZW5jcnlwdF9mdW5jX3Qg
ZGVjcnlwdDsKICAgICBzcnRwX2NpcGhlcl9zZXRfaXZfZnVuY190IHNldF9pdjsKICAgICBzcnRw
X2NpcGhlcl9nZXRfdGFnX2Z1bmNfdCBnZXRfdGFnOwotICAgIGNvbnN0IGNoYXIgICAgICAgICAg
ICAgICAgICAgICAgICpkZXNjcmlwdGlvbjsKLSAgICBjb25zdCBzcnRwX2NpcGhlcl90ZXN0X2Nh
c2VfdCAgICAgICAgICp0ZXN0X2RhdGE7CisgICAgY29uc3QgY2hhciAqZGVzY3JpcHRpb247Cisg
ICAgY29uc3Qgc3J0cF9jaXBoZXJfdGVzdF9jYXNlX3QgKnRlc3RfZGF0YTsKICAgICBzcnRwX2Np
cGhlcl90eXBlX2lkX3QgaWQ7CiB9IHNydHBfY2lwaGVyX3R5cGVfdDsKIApAQCAtMTU5LDcgKzE2
Nyw3IEBAIHR5cGVkZWYgc3RydWN0IHNydHBfY2lwaGVyX3R5cGVfdCB7CiAgKi8KIHR5cGVkZWYg
c3RydWN0IHNydHBfY2lwaGVyX3QgewogICAgIGNvbnN0IHNydHBfY2lwaGVyX3R5cGVfdCAqdHlw
ZTsKLSAgICB2b2lkICAgICAgICAgICpzdGF0ZTsKKyAgICB2b2lkICpzdGF0ZTsKICAgICBpbnQg
a2V5X2xlbjsKICAgICBpbnQgYWxnb3JpdGhtOwogfSBzcnRwX2NpcGhlcl90OwpAQCAtMTY3LDcg
KzE3NSw2IEBAIHR5cGVkZWYgc3RydWN0IHNydHBfY2lwaGVyX3QgewogLyogc29tZSBib29ra2Vl
cGluZyBmdW5jdGlvbnMgKi8KIGludCBzcnRwX2NpcGhlcl9nZXRfa2V5X2xlbmd0aChjb25zdCBz
cnRwX2NpcGhlcl90ICpjKTsKIAotCiAvKgogICogc3J0cF9jaXBoZXJfdHlwZV9zZWxmX3Rlc3Qo
KSB0ZXN0cyBhIGNpcGhlciBhZ2FpbnN0IHRlc3QgY2FzZXMgcHJvdmlkZWQgaW4KICAqIGFuIGFy
cmF5IG9mIHZhbHVlcyBvZiBrZXkvc3J0cF94dGRfc2VxX251bV90L3BsYWludGV4dC9jaXBoZXJ0
ZXh0CkBAIC0xNzUsMTQgKzE4MiwxNSBAQCBpbnQgc3J0cF9jaXBoZXJfZ2V0X2tleV9sZW5ndGgo
Y29uc3Qgc3J0cF9jaXBoZXJfdCAqYyk7CiAgKi8KIHNydHBfZXJyX3N0YXR1c190IHNydHBfY2lw
aGVyX3R5cGVfc2VsZl90ZXN0KGNvbnN0IHNydHBfY2lwaGVyX3R5cGVfdCAqY3QpOwogCi0KIC8q
Ci0gKiBzcnRwX2NpcGhlcl90eXBlX3Rlc3QoKSB0ZXN0cyBhIGNpcGhlciBhZ2FpbnN0IGV4dGVy
bmFsIHRlc3QgY2FzZXMgcHJvdmlkZWQgaW4KKyAqIHNydHBfY2lwaGVyX3R5cGVfdGVzdCgpIHRl
c3RzIGEgY2lwaGVyIGFnYWluc3QgZXh0ZXJuYWwgdGVzdCBjYXNlcyBwcm92aWRlZAorICogaW4K
ICAqIGFuIGFycmF5IG9mIHZhbHVlcyBvZiBrZXkvc3J0cF94dGRfc2VxX251bV90L3BsYWludGV4
dC9jaXBoZXJ0ZXh0CiAgKiB0aGF0IGlzIGtub3duIHRvIGJlIGdvb2QKICAqLwotc3J0cF9lcnJf
c3RhdHVzX3Qgc3J0cF9jaXBoZXJfdHlwZV90ZXN0KGNvbnN0IHNydHBfY2lwaGVyX3R5cGVfdCAq
Y3QsIGNvbnN0IHNydHBfY2lwaGVyX3Rlc3RfY2FzZV90ICp0ZXN0X2RhdGEpOwotCitzcnRwX2Vy
cl9zdGF0dXNfdCBzcnRwX2NpcGhlcl90eXBlX3Rlc3QoCisgICAgY29uc3Qgc3J0cF9jaXBoZXJf
dHlwZV90ICpjdCwKKyAgICBjb25zdCBzcnRwX2NpcGhlcl90ZXN0X2Nhc2VfdCAqdGVzdF9kYXRh
KTsKIAogLyoKICAqIHNydHBfY2lwaGVyX2JpdHNfcGVyX3NlY29uZChjLCBsLCB0KSBjb21wdXRl
cyAoYW4gZXN0aW1hdGUgb2YpIHRoZQpAQCAtMTk0LDE3ICsyMDIsMzQgQEAgc3J0cF9lcnJfc3Rh
dHVzX3Qgc3J0cF9jaXBoZXJfdHlwZV90ZXN0KGNvbnN0IHNydHBfY2lwaGVyX3R5cGVfdCAqY3Qs
IGNvbnN0IHNydHAKICAqCiAgKiBpZiBhbiBlcnJvciBpcyBlbmNvdW50ZXJlZCwgdGhlbiB0aGUg
dmFsdWUgMCBpcyByZXR1cm5lZAogICovCi11aW50NjRfdCBzcnRwX2NpcGhlcl9iaXRzX3Blcl9z
ZWNvbmQoc3J0cF9jaXBoZXJfdCAqYywgaW50IG9jdGV0c19pbl9idWZmZXIsIGludCBudW1fdHJp
YWxzKTsKLQotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jaXBoZXJfdHlwZV9hbGxvYyhjb25zdCBz
cnRwX2NpcGhlcl90eXBlX3QgKmN0LCBzcnRwX2NpcGhlcl90ICoqYywgaW50IGtleV9sZW4sIGlu
dCB0bGVuKTsKK3VpbnQ2NF90IHNydHBfY2lwaGVyX2JpdHNfcGVyX3NlY29uZChzcnRwX2NpcGhl
cl90ICpjLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBvY3RldHNf
aW5fYnVmZmVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBudW1f
dHJpYWxzKTsKKworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jaXBoZXJfdHlwZV9hbGxvYyhjb25z
dCBzcnRwX2NpcGhlcl90eXBlX3QgKmN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBzcnRwX2NpcGhlcl90ICoqYywKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgaW50IGtleV9sZW4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGludCB0bGVuKTsKIHNydHBfZXJyX3N0YXR1c190IHNydHBfY2lwaGVyX2Rl
YWxsb2Moc3J0cF9jaXBoZXJfdCAqYyk7CiBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NpcGhlcl9p
bml0KHNydHBfY2lwaGVyX3QgKmMsIGNvbnN0IHVpbnQ4X3QgKmtleSk7Ci1zcnRwX2Vycl9zdGF0
dXNfdCBzcnRwX2NpcGhlcl9zZXRfaXYoc3J0cF9jaXBoZXJfdCAqYywgdWludDhfdCAqaXYsIGlu
dCBkaXJlY3Rpb24pOwotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jaXBoZXJfb3V0cHV0KHNydHBf
Y2lwaGVyX3QgKmMsIHVpbnQ4X3QgKmJ1ZmZlciwgdWludDMyX3QgKm51bV9vY3RldHNfdG9fb3V0
cHV0KTsgCi1zcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NpcGhlcl9lbmNyeXB0KHNydHBfY2lwaGVy
X3QgKmMsIHVpbnQ4X3QgKmJ1ZmZlciwgdWludDMyX3QgKm51bV9vY3RldHNfdG9fb3V0cHV0KTsg
Ci1zcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NpcGhlcl9kZWNyeXB0KHNydHBfY2lwaGVyX3QgKmMs
IHVpbnQ4X3QgKmJ1ZmZlciwgdWludDMyX3QgKm51bV9vY3RldHNfdG9fb3V0cHV0KTsgCi1zcnRw
X2Vycl9zdGF0dXNfdCBzcnRwX2NpcGhlcl9nZXRfdGFnKHNydHBfY2lwaGVyX3QgKmMsIHVpbnQ4
X3QgKmJ1ZmZlciwgdWludDMyX3QgKnRhZ19sZW4pOwotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9j
aXBoZXJfc2V0X2FhZChzcnRwX2NpcGhlcl90ICpjLCBjb25zdCB1aW50OF90ICphYWQsIHVpbnQz
Ml90IGFhZF9sZW4pOworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jaXBoZXJfc2V0X2l2KHNydHBf
Y2lwaGVyX3QgKmMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDhf
dCAqaXYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IGRpcmVjdGlv
bik7CitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NpcGhlcl9vdXRwdXQoc3J0cF9jaXBoZXJfdCAq
YywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50OF90ICpidWZmZXIs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgKm51bV9vY3Rl
dHNfdG9fb3V0cHV0KTsKK3NydHBfZXJyX3N0YXR1c190IHNydHBfY2lwaGVyX2VuY3J5cHQoc3J0
cF9jaXBoZXJfdCAqYywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWlu
dDhfdCAqYnVmZmVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50
MzJfdCAqbnVtX29jdGV0c190b19vdXRwdXQpOworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jaXBo
ZXJfZGVjcnlwdChzcnRwX2NpcGhlcl90ICpjLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB1aW50OF90ICpidWZmZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHVpbnQzMl90ICpudW1fb2N0ZXRzX3RvX291dHB1dCk7CitzcnRwX2Vycl9zdGF0
dXNfdCBzcnRwX2NpcGhlcl9nZXRfdGFnKHNydHBfY2lwaGVyX3QgKmMsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQ4X3QgKmJ1ZmZlciwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgKnRhZ19sZW4pOworc3J0cF9lcnJfc3Rh
dHVzX3Qgc3J0cF9jaXBoZXJfc2V0X2FhZChzcnRwX2NpcGhlcl90ICpjLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB1aW50OF90ICphYWQsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IGFhZF9sZW4pOwogCiAvKgogICog
c3J0cF9yZXBsYWNlX2NpcGhlcl90eXBlKGN0LCBpZCkKQEAgLTIxMyw3ICsyMzgsOCBAQCBzcnRw
X2Vycl9zdGF0dXNfdCBzcnRwX2NpcGhlcl9zZXRfYWFkKHNydHBfY2lwaGVyX3QgKmMsIGNvbnN0
IHVpbnQ4X3QgKmFhZCwgdWludAogICogd2l0aCBhIG5ldyBvbmUgcGFzc2VkIGluIGV4dGVybmFs
bHkuICBUaGUgbmV3IGNpcGhlciBtdXN0IHBhc3MgYWxsIHRoZQogICogZXhpc3RpbmcgY2lwaGVy
X3R5cGUncyBzZWxmIHRlc3RzIGFzIHdlbGwgYXMgaXRzIG93bi4KICAqLwotc3J0cF9lcnJfc3Rh
dHVzX3Qgc3J0cF9yZXBsYWNlX2NpcGhlcl90eXBlKGNvbnN0IHNydHBfY2lwaGVyX3R5cGVfdCAq
Y3QsIHNydHBfY2lwaGVyX3R5cGVfaWRfdCBpZCk7CitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3Jl
cGxhY2VfY2lwaGVyX3R5cGUoY29uc3Qgc3J0cF9jaXBoZXJfdHlwZV90ICpjdCwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcnRwX2NpcGhlcl90eXBlX2lkX3Qg
aWQpOwogCiAjaWZkZWYgX19jcGx1c3BsdXMKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vaW5jbHVkZS9j
aXBoZXJfdHlwZXMuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlic3J0cC9jcnlwdG8vaW5jbHVkZS9jaXBoZXJfdHlwZXMuaApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5h
NTQzYjU0NzhiYTJkNjVhNmIxZDJiMDAyMzMyZDkxMjRlYTFhOTBjCi0tLSAvZGV2L251bGwKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRw
L2NyeXB0by9pbmNsdWRlL2NpcGhlcl90eXBlcy5oCkBAIC0wLDAgKzEsODEgQEAKKy8qCisgKgor
ICogQ29weXJpZ2h0KGMpIDIwMDEtMjAxNyBDaXNjbyBTeXN0ZW1zLCBJbmMuCisgKiBBbGwgcmln
aHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0
OgorICoKKyAqICAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICoKKyAqICAgUmVkaXN0cmlidXRpb25zIGlu
IGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogICBjb3B5cmlnaHQgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZworICogICBkaXNj
bGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlk
ZWQKKyAqICAgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqICAgTmVpdGhlciB0aGUgbmFt
ZSBvZiB0aGUgQ2lzY28gU3lzdGVtcywgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cworICogICBj
b250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRl
cml2ZWQKKyAqICAgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3Jp
dHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhF
IENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBF
WFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1J
VEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklU
TkVTUworICogRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBF
VkVOVCBTSEFMTCBUSEUKKyAqIENPUFlSSUdIVCBIT0xERVJTIE9SIENPTlRSSUJVVE9SUyBCRSBM
SUFCTEUgRk9SIEFOWSBESVJFQ1QsCisgKiBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwg
RVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAqIChJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUgorICogU0VS
VklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJV
UFRJT04pCisgKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFks
IFdIRVRIRVIgSU4gQ09OVFJBQ1QsCisgKiBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNM
VURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VECisgKiBPRiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKgorICovCisKKyNpZm5kZWYgQ0lIUEVSX1RZ
UEVTX0gKKyNkZWZpbmUgQ0lIUEVSX1RZUEVTX0gKKworI2luY2x1ZGUgImNpcGhlci5oIgorI2lu
Y2x1ZGUgImF1dGguaCIKKworLyoKKyAqIGNpcGhlciB0eXBlcyB0aGF0IGNhbiBiZSBpbmNsdWRl
ZCBpbiB0aGUga2VybmVsCisgKi8KKworZXh0ZXJuIGNvbnN0IHNydHBfY2lwaGVyX3R5cGVfdCBz
cnRwX251bGxfY2lwaGVyOworZXh0ZXJuIGNvbnN0IHNydHBfY2lwaGVyX3R5cGVfdCBzcnRwX2Fl
c19pY21fMTI4OworZXh0ZXJuIGNvbnN0IHNydHBfY2lwaGVyX3R5cGVfdCBzcnRwX2Flc19pY21f
MjU2OworI2lmZGVmIE9QRU5TU0wKK2V4dGVybiBjb25zdCBzcnRwX2NpcGhlcl90eXBlX3Qgc3J0
cF9hZXNfaWNtXzE5MjsKK2V4dGVybiBjb25zdCBzcnRwX2NpcGhlcl90eXBlX3Qgc3J0cF9hZXNf
Z2NtXzEyOF9vcGVuc3NsOworZXh0ZXJuIGNvbnN0IHNydHBfY2lwaGVyX3R5cGVfdCBzcnRwX2Fl
c19nY21fMjU2X29wZW5zc2w7CisjZW5kaWYKKworLyoKKyAqIGF1dGggZnVuYyB0eXBlcyB0aGF0
IGNhbiBiZSBpbmNsdWRlZCBpbiB0aGUga2VybmVsCisgKi8KKworZXh0ZXJuIGNvbnN0IHNydHBf
YXV0aF90eXBlX3Qgc3J0cF9udWxsX2F1dGg7CitleHRlcm4gY29uc3Qgc3J0cF9hdXRoX3R5cGVf
dCBzcnRwX2htYWM7CisKKy8qCisgKiBvdGhlciBnZW5lcmljIGRlYnVnIG1vZHVsZXMgdGhhdCBj
YW4gYmUgaW5jbHVkZWQgaW4gdGhlIGtlcm5lbAorICovCisKK2V4dGVybiBzcnRwX2RlYnVnX21v
ZHVsZV90IHNydHBfbW9kX2F1dGg7CitleHRlcm4gc3J0cF9kZWJ1Z19tb2R1bGVfdCBzcnRwX21v
ZF9jaXBoZXI7CitleHRlcm4gc3J0cF9kZWJ1Z19tb2R1bGVfdCBzcnRwX21vZF9zdGF0OworZXh0
ZXJuIHNydHBfZGVidWdfbW9kdWxlX3Qgc3J0cF9tb2RfYWxsb2M7CisKKy8qIGRlYnVnIG1vZHVs
ZXMgZm9yIGNpcGhlciB0eXBlcyAqLworZXh0ZXJuIHNydHBfZGVidWdfbW9kdWxlX3Qgc3J0cF9t
b2RfYWVzX2ljbTsKKyNpZmRlZiBPUEVOU1NMCitleHRlcm4gc3J0cF9kZWJ1Z19tb2R1bGVfdCBz
cnRwX21vZF9hZXNfZ2NtOworI2VuZGlmCisKKy8qIGRlYnVnIG1vZHVsZXMgZm9yIGF1dGggdHlw
ZXMgKi8KK2V4dGVybiBzcnRwX2RlYnVnX21vZHVsZV90IHNydHBfbW9kX2htYWM7CisKKyNlbmRp
ZgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJzcnRwL2NyeXB0by9pbmNsdWRlL2NyeXB0b19rZXJuZWwuaCBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vaW5jbHVk
ZS9jcnlwdG9fa2VybmVsLmgKaW5kZXggMWFiZjM4M2Y1YTRmM2Q0ZTE1ZTM3YjJjMmExNmZjNGQw
NmNjMTgwMS4uMWY4ZGZhNzcxMjhlZmZhMDFkYzFjNzE3YzY3ZDcwM2U4NzEwODE2MSAxMDA2NDQK
LS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJz
cnRwL2NyeXB0by9pbmNsdWRlL2NyeXB0b19rZXJuZWwuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2luY2x1ZGUvY3J5
cHRvX2tlcm5lbC5oCkBAIC00Miw3ICs0Miw2IEBACiAgKgogICovCiAKLQogI2lmbmRlZiBDUllQ
VE9fS0VSTkVMCiAjZGVmaW5lIENSWVBUT19LRVJORUwKIApAQCAtNzIsNyArNzEsNyBAQCB0eXBl
ZGVmIGVudW0gewogICovCiB0eXBlZGVmIHN0cnVjdCBzcnRwX2tlcm5lbF9jaXBoZXJfdHlwZSB7
CiAgICAgc3J0cF9jaXBoZXJfdHlwZV9pZF90IGlkOwotICAgIGNvbnN0IHNydHBfY2lwaGVyX3R5
cGVfdCAgICAqY2lwaGVyX3R5cGU7CisgICAgY29uc3Qgc3J0cF9jaXBoZXJfdHlwZV90ICpjaXBo
ZXJfdHlwZTsKICAgICBzdHJ1Y3Qgc3J0cF9rZXJuZWxfY2lwaGVyX3R5cGUgKm5leHQ7CiB9IHNy
dHBfa2VybmVsX2NpcGhlcl90eXBlX3Q7CiAKQEAgLTgxLDcgKzgwLDcgQEAgdHlwZWRlZiBzdHJ1
Y3Qgc3J0cF9rZXJuZWxfY2lwaGVyX3R5cGUgewogICovCiB0eXBlZGVmIHN0cnVjdCBzcnRwX2tl
cm5lbF9hdXRoX3R5cGUgewogICAgIHNydHBfYXV0aF90eXBlX2lkX3QgaWQ7Ci0gICAgY29uc3Qg
c3J0cF9hdXRoX3R5cGVfdCAgICAqYXV0aF90eXBlOworICAgIGNvbnN0IHNydHBfYXV0aF90eXBl
X3QgKmF1dGhfdHlwZTsKICAgICBzdHJ1Y3Qgc3J0cF9rZXJuZWxfYXV0aF90eXBlICpuZXh0Owog
fSBzcnRwX2tlcm5lbF9hdXRoX3R5cGVfdDsKIApAQCAtOTMsNyArOTIsNiBAQCB0eXBlZGVmIHN0
cnVjdCBzcnRwX2tlcm5lbF9kZWJ1Z19tb2R1bGUgewogICAgIHN0cnVjdCBzcnRwX2tlcm5lbF9k
ZWJ1Z19tb2R1bGUgKm5leHQ7CiB9IHNydHBfa2VybmVsX2RlYnVnX21vZHVsZV90OwogCi0KIC8q
CiAgKiBjcnlwdG9fa2VybmVsX3QgaXMgdGhlIGRhdGEgc3RydWN0dXJlIGZvciB0aGUgY3J5cHRv
IGtlcm5lbAogICoKQEAgLTEwMSwxOCArOTksMTcgQEAgdHlwZWRlZiBzdHJ1Y3Qgc3J0cF9rZXJu
ZWxfZGVidWdfbW9kdWxlIHsKICAqIGEgZ2xvYmFsIHZhcmlhYmxlIGRlZmluZWQgaW4gY3J5cHRv
X2tlcm5lbC5jCiAgKi8KIHR5cGVkZWYgc3RydWN0IHsKLSAgICBzcnRwX2NyeXB0b19rZXJuZWxf
c3RhdGVfdCBzdGF0ZTsgICAgICAgICAgICAgIC8qIGN1cnJlbnQgc3RhdGUgb2Yga2VybmVsICAg
ICAqLwotICAgIHNydHBfa2VybmVsX2NpcGhlcl90eXBlX3QgKmNpcGhlcl90eXBlX2xpc3Q7ICAg
LyogbGlzdCBvZiBhbGwgY2lwaGVyIHR5cGVzICAgICovCi0gICAgc3J0cF9rZXJuZWxfYXV0aF90
eXBlX3QgICAqYXV0aF90eXBlX2xpc3Q7ICAgICAvKiBsaXN0IG9mIGFsbCBhdXRoIGZ1bmMgdHlw
ZXMgKi8KLSAgICBzcnRwX2tlcm5lbF9kZWJ1Z19tb2R1bGVfdCAqZGVidWdfbW9kdWxlX2xpc3Q7
IC8qIGxpc3Qgb2YgYWxsIGRlYnVnIG1vZHVsZXMgICAqLworICAgIHNydHBfY3J5cHRvX2tlcm5l
bF9zdGF0ZV90IHN0YXRlOyAvKiBjdXJyZW50IHN0YXRlIG9mIGtlcm5lbCAgICAgKi8KKyAgICBz
cnRwX2tlcm5lbF9jaXBoZXJfdHlwZV90ICpjaXBoZXJfdHlwZV9saXN0OyAvKiBsaXN0IG9mIGFs
bCBjaXBoZXIgdHlwZXMgKi8KKyAgICBzcnRwX2tlcm5lbF9hdXRoX3R5cGVfdCAqYXV0aF90eXBl
X2xpc3Q7IC8qIGxpc3Qgb2YgYWxsIGF1dGggZnVuYyB0eXBlcyAqLworICAgIHNydHBfa2VybmVs
X2RlYnVnX21vZHVsZV90CisgICAgICAgICpkZWJ1Z19tb2R1bGVfbGlzdDsgLyogbGlzdCBvZiBh
bGwgZGVidWcgbW9kdWxlcyAgICovCiB9IHNydHBfY3J5cHRvX2tlcm5lbF90OwogCi0KIC8qCiAg
KiBzcnRwX2NyeXB0b19rZXJuZWxfdCBleHRlcm5hbCBhcGkKICAqLwogCi0KIC8qCiAgKiBUaGUg
ZnVuY3Rpb24gc3J0cF9jcnlwdG9fa2VybmVsX2luaXQoKSBpbml0aWFsaXplZCB0aGUgY3J5cHRv
IGtlcm5lbCBhbmQKICAqIHJ1bnMgdGhlIHNlbGYtdGVzdCBvcGVyYXRpb25zIG9uIHRoZSByYW5k
b20gbnVtYmVyIGdlbmVyYXRvcnMgYW5kCkBAIC0xMjYsNyArMTIzLDYgQEAgdHlwZWRlZiBzdHJ1
Y3QgewogICovCiBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NyeXB0b19rZXJuZWxfaW5pdCh2b2lk
KTsKIAotCiAvKgogICogVGhlIGZ1bmN0aW9uIHNydHBfY3J5cHRvX2tlcm5lbF9zaHV0ZG93bigp
IGRlLWluaXRpYWxpemVzIHRoZQogICogY3J5cHRvX2tlcm5lbCwgemVyb2l6ZXMga2V5cyBhbmQg
b3RoZXIgY3J5cHRvZ3JhcGhpYyBtYXRlcmlhbCwgYW5kCkBAIC0xNTAsNyArMTQ2LDYgQEAgc3J0
cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fa2VybmVsX3NodXRkb3duKHZvaWQpOwogICovCiBz
cnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NyeXB0b19rZXJuZWxfc3RhdHVzKHZvaWQpOwogCi0KIC8q
CiAgKiBzcnRwX2NyeXB0b19rZXJuZWxfbGlzdF9kZWJ1Z19tb2R1bGVzKCkgb3V0cHV0cyBhIGxp
c3Qgb2YgZGVidWdnaW5nIG1vZHVsZXMKICAqCkBAIC0xNjEsMTEgKzE1NiwxNSBAQCBzcnRwX2Vy
cl9zdGF0dXNfdCBzcnRwX2NyeXB0b19rZXJuZWxfbGlzdF9kZWJ1Z19tb2R1bGVzKHZvaWQpOwog
ICogc3J0cF9jcnlwdG9fa2VybmVsX2xvYWRfY2lwaGVyX3R5cGUoKQogICoKICAqLwotc3J0cF9l
cnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fa2VybmVsX2xvYWRfY2lwaGVyX3R5cGUoY29uc3Qgc3J0
cF9jaXBoZXJfdHlwZV90ICpjdCwgc3J0cF9jaXBoZXJfdHlwZV9pZF90IGlkKTsKK3NydHBfZXJy
X3N0YXR1c190IHNydHBfY3J5cHRvX2tlcm5lbF9sb2FkX2NpcGhlcl90eXBlKAorICAgIGNvbnN0
IHNydHBfY2lwaGVyX3R5cGVfdCAqY3QsCisgICAgc3J0cF9jaXBoZXJfdHlwZV9pZF90IGlkKTsK
IAotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fa2VybmVsX2xvYWRfYXV0aF90eXBlKGNv
bnN0IHNydHBfYXV0aF90eXBlX3QgKmN0LCBzcnRwX2F1dGhfdHlwZV9pZF90IGlkKTsKK3NydHBf
ZXJyX3N0YXR1c190IHNydHBfY3J5cHRvX2tlcm5lbF9sb2FkX2F1dGhfdHlwZShjb25zdCBzcnRw
X2F1dGhfdHlwZV90ICpjdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBzcnRwX2F1dGhfdHlwZV9pZF90IGlkKTsKIAotc3J0cF9lcnJfc3RhdHVz
X3Qgc3J0cF9jcnlwdG9fa2VybmVsX2xvYWRfZGVidWdfbW9kdWxlKHNydHBfZGVidWdfbW9kdWxl
X3QgKm5ld19kbSk7CitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NyeXB0b19rZXJuZWxfbG9hZF9k
ZWJ1Z19tb2R1bGUoCisgICAgc3J0cF9kZWJ1Z19tb2R1bGVfdCAqbmV3X2RtKTsKIAogLyoKICAq
IHNydHBfY3J5cHRvX2tlcm5lbF9hbGxvY19jaXBoZXIoaWQsIGNwLCBrZXlfbGVuKTsKQEAgLTE3
Nyw3ICsxNzYsMTAgQEAgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fa2VybmVsX2xvYWRf
ZGVidWdfbW9kdWxlKHNydHBfZGVidWdfbW9kdWxlX3QgKm5ld18KICAqICAgIHNydHBfZXJyX3N0
YXR1c19hbGxvY19mYWlsICAgYW4gYWxsb2NhdGlvbiBmYWlsdXJlIG9jY3VyZWQKICAqICAgIHNy
dHBfZXJyX3N0YXR1c19mYWlsICAgICAgICAgY291bGRuJ3QgZmluZCBjaXBoZXIgd2l0aCBpZGVu
dGlmaWVyICdpZCcKICAqLwotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fa2VybmVsX2Fs
bG9jX2NpcGhlcihzcnRwX2NpcGhlcl90eXBlX2lkX3QgaWQsIHNydHBfY2lwaGVyX3BvaW50ZXJf
dCAqY3AsIGludCBrZXlfbGVuLCBpbnQgdGFnX2xlbik7CitzcnRwX2Vycl9zdGF0dXNfdCBzcnRw
X2NyeXB0b19rZXJuZWxfYWxsb2NfY2lwaGVyKHNydHBfY2lwaGVyX3R5cGVfaWRfdCBpZCwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF9jaXBo
ZXJfcG9pbnRlcl90ICpjcCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgaW50IGtleV9sZW4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGludCB0YWdfbGVuKTsKIAogLyoKICAqIHNydHBfY3J5cHRvX2tl
cm5lbF9hbGxvY19hdXRoKGlkLCBhcCwga2V5X2xlbiwgdGFnX2xlbik7CkBAIC0xOTAsOCArMTky
LDEwIEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfY3J5cHRvX2tlcm5lbF9hbGxvY19jaXBoZXIo
c3J0cF9jaXBoZXJfdHlwZV9pZF90IGlkLCBzcnRwCiAgKiAgICBzcnRwX2Vycl9zdGF0dXNfYWxs
b2NfZmFpbCAgIGFuIGFsbG9jYXRpb24gZmFpbHVyZSBvY2N1cmVkCiAgKiAgICBzcnRwX2Vycl9z
dGF0dXNfZmFpbCAgICAgICAgIGNvdWxkbid0IGZpbmQgYXV0aCB3aXRoIGlkZW50aWZpZXIgJ2lk
JwogICovCi1zcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NyeXB0b19rZXJuZWxfYWxsb2NfYXV0aChz
cnRwX2F1dGhfdHlwZV9pZF90IGlkLCBzcnRwX2F1dGhfcG9pbnRlcl90ICphcCwgaW50IGtleV9s
ZW4sIGludCB0YWdfbGVuKTsKLQorc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fa2VybmVs
X2FsbG9jX2F1dGgoc3J0cF9hdXRoX3R5cGVfaWRfdCBpZCwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfYXV0aF9wb2ludGVyX3QgKmFwLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IGtleV9sZW4s
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgdGFn
X2xlbik7CiAKIC8qCiAgKiBzcnRwX2NyeXB0b19rZXJuZWxfc2V0X2RlYnVnX21vZHVsZShtb2Rf
bmFtZSwgdikKQEAgLTIwMSw3ICsyMDUsOCBAQCBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NyeXB0
b19rZXJuZWxfYWxsb2NfYXV0aChzcnRwX2F1dGhfdHlwZV9pZF90IGlkLCBzcnRwX2F1dAogICoK
ICAqIHJldHVybnMgc3J0cF9lcnJfc3RhdHVzX29rIG9uIHN1Y2Nlc3MsIHNydHBfZXJyX3N0YXR1
c19mYWlsIG90aGVyd2lzZQogICovCi1zcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NyeXB0b19rZXJu
ZWxfc2V0X2RlYnVnX21vZHVsZShjb25zdCBjaGFyICptb2RfbmFtZSwgaW50IHYpOworc3J0cF9l
cnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fa2VybmVsX3NldF9kZWJ1Z19tb2R1bGUoY29uc3QgY2hh
ciAqbW9kX25hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBpbnQgdik7CiAKICNpZmRlZiBfX2NwbHVzcGx1cwogfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2Ny
eXB0by9pbmNsdWRlL2NyeXB0b190eXBlcy5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9pbmNsdWRlL2NyeXB0b190eXBlcy5o
CmluZGV4IDMyOWQ2MGRiZDFkNDdlMjVhOWY2YzQ4ZmNhMmQ1NjYyZmUxYWNkNzYuLjdmZDMxNzhi
MGIwNGQyZDU2MDExMDY3M2QyMzEzOGRkNDlkYTA5MzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vaW5jbHVk
ZS9jcnlwdG9fdHlwZXMuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2luY2x1ZGUvY3J5cHRvX3R5cGVzLmgKQEAgLTcs
MjYgKzcsMjYgQEAKICAqIENpc2NvIFN5c3RlbXMsIEluYy4KICAqLwogLyoKLSAqCQorICoKICAq
IENvcHlyaWdodChjKSAyMDAxLTIwMTcgQ2lzY28gU3lzdGVtcywgSW5jLgogICogQWxsIHJpZ2h0
cyByZXNlcnZlZC4KLSAqIAorICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCiAgKiBhcmUg
bWV0OgotICogCisgKgogICogICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAogICogICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAKKyAqCiAgKiAgIFJlZGlz
dHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKICAqICAg
Y29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcKICAqICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0
ZXJpYWxzIHByb3ZpZGVkCiAgKiAgIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqIAorICoKICAq
ICAgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgQ2lzY28gU3lzdGVtcywgSW5jLiBub3IgdGhlIG5h
bWVzIG9mIGl0cwogICogICBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBw
cm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQKICAqICAgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQg
c3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotICogCisgKgogICogVEhJUyBTT0ZU
V0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9S
UwogICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNM
VURJTkcsIEJVVCBOT1QKICAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0Yg
TUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCkBAIC00OCw2MiArNDgsNjIgQEAKIC8qCiAgKiBU
aGUgbnVsbCBjaXBoZXIgcGVyZm9ybXMgbm8gZW5jcnlwdGlvbi4KICAqCi0gKiBUaGUgU1JUUF9O
VUxMX0NJUEhFUiBsZWF2ZXMgaXRzIGlucHV0cyB1bmFsdGVyZWQsIGR1cmluZyBib3RoIHRoZSAK
KyAqIFRoZSBTUlRQX05VTExfQ0lQSEVSIGxlYXZlcyBpdHMgaW5wdXRzIHVuYWx0ZXJlZCwgZHVy
aW5nIGJvdGggdGhlCiAgKiBlbmNyeXB0aW9uIGFuZCBkZWNyeXB0aW9uIG9wZXJhdGlvbnMuICBU
aGlzIGNpcGhlciBjYW4gYmUgY2hvc2VuCiAgKiB0byBpbmRpY2F0ZSB0aGF0IG5vIGVuY3J5cHRp
b24gaXMgdG8gYmUgcGVyZm9ybWVkLgogICovCi0jZGVmaW5lIFNSVFBfTlVMTF9DSVBIRVIgICAg
ICAgIDAgICAgICAgICAgICAKKyNkZWZpbmUgU1JUUF9OVUxMX0NJUEhFUiAwCiAKLS8qIAorLyoK
ICAqIEFFUy0xMjggSW50ZWdlciBDb3VudGVyIE1vZGUgKEFFUyBJQ00pCiAgKgogICogQUVTLTEy
OCBJQ00gaXMgdGhlIHZhcmlhbnQgb2YgY291bnRlciBtb2RlIHRoYXQgaXMgdXNlZCBieQogICog
U2VjdXJlIFJUUC4gIFRoaXMgY2lwaGVyIHVzZXMgYSAxNi1vY3RldCBrZXkgY29uY2F0ZW5hdGVk
IHdpdGggYQogICogMTQtb2N0ZXQgb2Zmc2V0IChvciBzYWx0KSB2YWx1ZS4KICAqLwotI2RlZmlu
ZSBTUlRQX0FFU19JQ01fMTI4ICAgICAgICAxCisjZGVmaW5lIFNSVFBfQUVTX0lDTV8xMjggMQog
Ci0vKiAKKy8qCiAgKiBBRVMtMTkyIEludGVnZXIgQ291bnRlciBNb2RlIChBRVMgSUNNKQogICoK
ICAqIEFFUy0xMjggSUNNIGlzIHRoZSB2YXJpYW50IG9mIGNvdW50ZXIgbW9kZSB0aGF0IGlzIHVz
ZWQgYnkKICAqIFNlY3VyZSBSVFAuICBUaGlzIGNpcGhlciB1c2VzIGEgMjQtb2N0ZXQga2V5IGNv
bmNhdGVuYXRlZCB3aXRoIGEKICAqIDE0LW9jdGV0IG9mZnNldCAob3Igc2FsdCkgdmFsdWUuCiAg
Ki8KLSNkZWZpbmUgU1JUUF9BRVNfSUNNXzE5MiAgICAgICAgNAorI2RlZmluZSBTUlRQX0FFU19J
Q01fMTkyIDQKIAotLyogCisvKgogICogQUVTLTI1NiBJbnRlZ2VyIENvdW50ZXIgTW9kZSAoQUVT
IElDTSkKICAqCiAgKiBBRVMtMTI4IElDTSBpcyB0aGUgdmFyaWFudCBvZiBjb3VudGVyIG1vZGUg
dGhhdCBpcyB1c2VkIGJ5CiAgKiBTZWN1cmUgUlRQLiAgVGhpcyBjaXBoZXIgdXNlcyBhIDMyLW9j
dGV0IGtleSBjb25jYXRlbmF0ZWQgd2l0aCBhCiAgKiAxNC1vY3RldCBvZmZzZXQgKG9yIHNhbHQp
IHZhbHVlLgogICovCi0jZGVmaW5lIFNSVFBfQUVTX0lDTV8yNTYgICAgICAgIDUKKyNkZWZpbmUg
U1JUUF9BRVNfSUNNXzI1NiA1CiAKLS8qIAotICogQUVTLTEyOF9HQ00gR2Fsb2lzIENvdW50ZXIg
TW9kZSAoQUVTIEdDTSkgICAgICAgICAgICAgCisvKgorICogQUVTLTEyOF9HQ00gR2Fsb2lzIENv
dW50ZXIgTW9kZSAoQUVTIEdDTSkKICAqCi0gKiBBRVMtMTI4IEdDTSBpcyB0aGUgdmFyaWFudCBv
ZiBnYWxvaXMgY291bnRlciBtb2RlIHRoYXQgaXMgdXNlZCBieSAKKyAqIEFFUy0xMjggR0NNIGlz
IHRoZSB2YXJpYW50IG9mIGdhbG9pcyBjb3VudGVyIG1vZGUgdGhhdCBpcyB1c2VkIGJ5CiAgKiBT
ZWN1cmUgUlRQLiAgVGhpcyBjaXBoZXIgdXNlcyBhIDE2LW9jdGV0IGtleS4KICAqLwotI2RlZmlu
ZSBTUlRQX0FFU19HQ01fMTI4ICAgICAgICA2CisjZGVmaW5lIFNSVFBfQUVTX0dDTV8xMjggNgog
Ci0vKiAKLSAqIEFFUy0yNTZfR0NNIEdhbG9pcyBDb3VudGVyIE1vZGUgKEFFUyBHQ00pICAgICAg
ICAgICAgIAorLyoKKyAqIEFFUy0yNTZfR0NNIEdhbG9pcyBDb3VudGVyIE1vZGUgKEFFUyBHQ00p
CiAgKgotICogQUVTLTI1NiBHQ00gaXMgdGhlIHZhcmlhbnQgb2YgZ2Fsb2lzIGNvdW50ZXIgbW9k
ZSB0aGF0IGlzIHVzZWQgYnkgCisgKiBBRVMtMjU2IEdDTSBpcyB0aGUgdmFyaWFudCBvZiBnYWxv
aXMgY291bnRlciBtb2RlIHRoYXQgaXMgdXNlZCBieQogICogU2VjdXJlIFJUUC4gIFRoaXMgY2lw
aGVyIHVzZXMgYSAzMi1vY3RldCBrZXkuCiAgKi8KLSNkZWZpbmUgU1JUUF9BRVNfR0NNXzI1NiAg
ICAgICAgNworI2RlZmluZSBTUlRQX0FFU19HQ01fMjU2IDcKIAogLyoKICAqIFRoZSBudWxsIGF1
dGhlbnRpY2F0aW9uIGZ1bmN0aW9uIHBlcmZvcm1zIG5vIGF1dGhlbnRpY2F0aW9uLgogICoKICAq
IFRoZSBOVUxMX0FVVEggZnVuY3Rpb24gZG9lcyBub3RoaW5nLCBhbmQgY2FuIGJlIHNlbGVjdGVk
IHRvIGluZGljYXRlCiAgKiB0aGF0IGF1dGhlbnRpY2F0aW9uIHNob3VsZCBub3QgYmUgcGVyZm9y
bWVkLgotICovIAotI2RlZmluZSBTUlRQX05VTExfQVVUSCAgICAgICAgICAwICAgICAgICAgICAK
KyAqLworI2RlZmluZSBTUlRQX05VTExfQVVUSCAwCiAKIC8qCiAgKiBITUFDLVNIQTEKQEAgLTEx
MSw2ICsxMTEsNiBAQAogICogU1JUUF9ITUFDX1NIQTEgaW1wbGVtZW50cyB0aGUgSGFzaC1iYXNl
ZCBNQUMgdXNpbmcgdGhlIE5JU1QgU2VjdXJlCiAgKiBIYXNoIEFsZ29yaXRobSB2ZXJzaW9uIDEg
KFNIQTEpLgogICovCi0jZGVmaW5lIFNSVFBfSE1BQ19TSEExICAgICAgICAgIDMgICAgICAgICAg
CisjZGVmaW5lIFNSVFBfSE1BQ19TSEExIDMKIAotI2VuZGlmICAvKiBTUlRQX0NSWVBUT19UWVBF
U19IICovCisjZW5kaWYgLyogU1JUUF9DUllQVE9fVFlQRVNfSCAqLwpkaWZmIC0tZ2l0IGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0
by9pbmNsdWRlL2RhdGF0eXBlcy5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9pbmNsdWRlL2RhdGF0eXBlcy5oCmluZGV4IGQy
MGI5ZTZmOGNhZmEyZmUyNmUyMjliZGY4ODU4OWNlMjUyNmZhYjAuLjE4MmNjYTI1YjlkMWJmNzYw
MTk4NjFlNTQwYjUzZTllM2Y5YzNmYmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vaW5jbHVkZS9kYXRhdHlw
ZXMuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L2xpYnNydHAvY3J5cHRvL2luY2x1ZGUvZGF0YXR5cGVzLmgKQEAgLTEsNiArMSw2IEBACiAvKgog
ICogZGF0YXR5cGVzLmgKLSAqIAorICoKICAqIGRhdGEgdHlwZXMgZm9yIGJpdCB2ZWN0b3JzIGFu
ZCBmaW5pdGUgZmllbGRzCiAgKgogICogRGF2aWQgQS4gTWNHcmV3CkBAIC04LDI2ICs4LDI2IEBA
CiAgKi8KIAogLyoKLSAqCQorICoKICAqIENvcHlyaWdodCAoYykgMjAwMS0yMDE3LCBDaXNjbyBT
eXN0ZW1zLCBJbmMuCiAgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICogCisgKgogICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKICAqIGFyZSBtZXQ6Ci0gKiAKKyAqCiAgKiAgIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CiAgKiAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lci4KLSAqIAorICoKICAqICAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3Qg
cmVwcm9kdWNlIHRoZSBhYm92ZQogICogICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwogICogICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQKICAqICAgd2l0aCB0aGUg
ZGlzdHJpYnV0aW9uLgotICogCisgKgogICogICBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBDaXNj
byBTeXN0ZW1zLCBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCiAgKiAgIGNvbnRyaWJ1dG9ycyBt
YXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZAogICogICBm
cm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Np
b24uCi0gKiAKKyAqCiAgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklH
SFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCiAgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBP
UiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAogICogTElNSVRFRCBUTywg
VEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKQEAg
LTQzLDExICs0MywxMCBAQAogICoKICAqLwogCi0KICNpZm5kZWYgREFUQVRZUEVTX0gKICNkZWZp
bmUgREFUQVRZUEVTX0gKIAotI2luY2x1ZGUgImludGVnZXJzLmgiICAgICAgICAgICAvKiBkZWZp
bml0aW9ucyBvZiB1aW50MzJfdCwgZXQgY2V0ZXJhICAgKi8KKyNpbmNsdWRlICJpbnRlZ2Vycy5o
IiAvKiBkZWZpbml0aW9ucyBvZiB1aW50MzJfdCwgZXQgY2V0ZXJhICAgKi8KICNpbmNsdWRlICJh
bGxvYy5oIgogCiAjaW5jbHVkZSA8c3RkYXJnLmg+CkBAIC01Niw0MiArNTUsNDMgQEAKICNpbmNs
dWRlIDxzdHJpbmcuaD4KICNpbmNsdWRlIDx0aW1lLmg+CiAjaWZkZWYgSEFWRV9ORVRJTkVUX0lO
X0gKLSMgaW5jbHVkZSA8bmV0aW5ldC9pbi5oPgorI2luY2x1ZGUgPG5ldGluZXQvaW4uaD4KICNl
bGlmIGRlZmluZWQgSEFWRV9XSU5TT0NLMl9ICi0jIGluY2x1ZGUgPHdpbnNvY2syLmg+CisjaW5j
bHVkZSA8d2luc29jazIuaD4KKyNlbHNlCisjZXJyb3IgIlBsYXRmb3JtIG5vdCByZWNvZ25pemVk
IgogI2VuZGlmCiAKICNpZmRlZiBfX2NwbHVzcGx1cwogZXh0ZXJuICJDIiB7CiAjZW5kaWYKIAot
CiAvKiBpZiBEQVRBVFlQRVNfVVNFX01BQ1JPUyBpcyBkZWZpbmVkLCB0aGVuIGxpdHRsZSBmdW5j
dGlvbnMgYXJlIG1hY3JvcyAqLwotI2RlZmluZSBEQVRBVFlQRVNfVVNFX01BQ1JPUyAgCisjZGVm
aW5lIERBVEFUWVBFU19VU0VfTUFDUk9TCiAKIHR5cGVkZWYgdW5pb24gewotICB1aW50OF90ICB2
OFsyXTsKLSAgdWludDE2X3QgdmFsdWU7CisgICAgdWludDhfdCB2OFsyXTsKKyAgICB1aW50MTZf
dCB2YWx1ZTsKIH0gdjE2X3Q7CiAKIHR5cGVkZWYgdW5pb24gewotICB1aW50OF90ICB2OFs0XTsK
LSAgdWludDE2X3QgdjE2WzJdOwotICB1aW50MzJfdCB2YWx1ZTsKKyAgICB1aW50OF90IHY4WzRd
OworICAgIHVpbnQxNl90IHYxNlsyXTsKKyAgICB1aW50MzJfdCB2YWx1ZTsKIH0gdjMyX3Q7CiAK
IHR5cGVkZWYgdW5pb24gewotICB1aW50OF90ICB2OFs4XTsKLSAgdWludDE2X3QgdjE2WzRdOwot
ICB1aW50MzJfdCB2MzJbMl07Ci0gIHVpbnQ2NF90IHZhbHVlOworICAgIHVpbnQ4X3QgdjhbOF07
CisgICAgdWludDE2X3QgdjE2WzRdOworICAgIHVpbnQzMl90IHYzMlsyXTsKKyAgICB1aW50NjRf
dCB2YWx1ZTsKIH0gdjY0X3Q7CiAKIHR5cGVkZWYgdW5pb24gewotICB1aW50OF90ICB2OFsxNl07
Ci0gIHVpbnQxNl90IHYxNls4XTsKLSAgdWludDMyX3QgdjMyWzRdOwotICB1aW50NjRfdCB2NjRb
Ml07CisgICAgdWludDhfdCB2OFsxNl07CisgICAgdWludDE2X3QgdjE2WzhdOworICAgIHVpbnQz
Ml90IHYzMls0XTsKKyAgICB1aW50NjRfdCB2NjRbMl07CiB9IHYxMjhfdDsKIAogdHlwZWRlZiB1
bmlvbiB7CkBAIC0xMDEsMTE4ICsxMDEsODIgQEAgdHlwZWRlZiB1bmlvbiB7CiAgICAgdWludDY0
X3QgdjY0WzRdOwogfSB2MjU2X3Q7CiAKLQogLyogc29tZSB1c2VmdWwgYW5kIHNpbXBsZSBtYXRo
IGZ1bmN0aW9ucyAqLwogCi0jZGVmaW5lIHBvd18yKFgpICggKHVuc2lnbmVkIGludCkxIDw8IChY
KSApICAgLyogMl5YICAgICAqLwotCi0jZGVmaW5lIHBvd19taW51c19vbmUoWCkgKCAoWCkgPyAt
MSA6IDEgKSAgICAgIC8qICgtMSleWCAgKi8KKyNkZWZpbmUgcG93XzIoWCkgKCh1bnNpZ25lZCBp
bnQpMSA8PCAoWCkpIC8qIDJeWCAgICAgKi8KIAorI2RlZmluZSBwb3dfbWludXNfb25lKFgpICgo
WCkgPyAtMSA6IDEpIC8qICgtMSleWCAgKi8KIAogLyoKICAqIG9jdGV0X2dldF93ZWlnaHQoeCkg
cmV0dXJucyB0aGUgaGFtbWluZyB3ZWlnaHQgKG51bWJlciBvZiBiaXRzIGVxdWFsIHRvCiAgKiBv
bmUpIGluIHRoZSBvY3RldCB4CiAgKi8KIAotaW50Ci1vY3RldF9nZXRfd2VpZ2h0KHVpbnQ4X3Qg
b2N0ZXQpOworaW50IG9jdGV0X2dldF93ZWlnaHQodWludDhfdCBvY3RldCk7CiAKICNkZWZpbmUg
TUFYX1BSSU5UX1NUUklOR19MRU4gMTAyNAogCi1jaGFyICoKLXNydHBfb2N0ZXRfc3RyaW5nX2hl
eF9zdHJpbmcoY29uc3Qgdm9pZCAqc3RyLCBpbnQgbGVuZ3RoKTsKK2NoYXIgKnNydHBfb2N0ZXRf
c3RyaW5nX2hleF9zdHJpbmcoY29uc3Qgdm9pZCAqc3RyLCBpbnQgbGVuZ3RoKTsKIAotY2hhciAq
Ci12MTI4X2JpdF9zdHJpbmcodjEyOF90ICp4KTsKK2NoYXIgKnYxMjhfYml0X3N0cmluZyh2MTI4
X3QgKngpOwogCi1jaGFyICoKLXYxMjhfaGV4X3N0cmluZyh2MTI4X3QgKngpOworY2hhciAqdjEy
OF9oZXhfc3RyaW5nKHYxMjhfdCAqeCk7CiAKLXZvaWQKLXYxMjhfY29weV9vY3RldF9zdHJpbmco
djEyOF90ICp4LCBjb25zdCB1aW50OF90IHNbMTZdKTsKK3ZvaWQgdjEyOF9jb3B5X29jdGV0X3N0
cmluZyh2MTI4X3QgKngsIGNvbnN0IHVpbnQ4X3Qgc1sxNl0pOwogCi12b2lkCi12MTI4X2xlZnRf
c2hpZnQodjEyOF90ICp4LCBpbnQgc2hpZnRfaW5kZXgpOwordm9pZCB2MTI4X2xlZnRfc2hpZnQo
djEyOF90ICp4LCBpbnQgc2hpZnRfaW5kZXgpOwogCi12b2lkCi12MTI4X3JpZ2h0X3NoaWZ0KHYx
MjhfdCAqeCwgaW50IHNoaWZ0X2luZGV4KTsKK3ZvaWQgdjEyOF9yaWdodF9zaGlmdCh2MTI4X3Qg
KngsIGludCBzaGlmdF9pbmRleCk7CiAKIC8qCiAgKiB0aGUgZm9sbG93aW5nIG1hY3JvcyBkZWZp
bmUgdGhlIGRhdGEgbWFuaXB1bGF0aW9uIGZ1bmN0aW9ucwotICogCisgKgogICogSWYgREFUQVRZ
UEVTX1VTRV9NQUNST1MgaXMgZGVmaW5lZCwgdGhlbiB0aGVzZSBtYWNyb3MgYXJlIHVzZWQKICAq
IGRpcmVjdGx5IChhbmQgZnVuY3Rpb24gY2FsbCBvdmVyaGVhZCBpcyBhdm9pZGVkKS4gIE90aGVy
d2lzZSwKICAqIHRoZSBtYWNyb3MgYXJlIHVzZWQgdGhyb3VnaCB0aGUgZnVuY3Rpb25zIGRlZmlu
ZWQgaW4gZGF0YXR5cGVzLmMKICAqIChhbmQgdGhlIGNvbXBpbGVyIHByb3ZpZGVzIGJldHRlciB3
YXJuaW5ncykuCiAgKi8KIAotI2RlZmluZSBfdjEyOF9zZXRfdG9femVybyh4KSAgICAgXAotKCAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0gICh4KS0+djMyWzBdID0gMCwgICAgICAg
ICAgICAgIFwKLSAgKHgpLT52MzJbMV0gPSAwLCAgICAgICAgICAgICAgXAotICAoeCktPnYzMlsy
XSA9IDAsICAgICAgICAgICAgICBcCi0gICh4KS0+djMyWzNdID0gMCAgICAgICAgICAgICAgIFwK
LSkKLQotI2RlZmluZSBfdjEyOF9jb3B5KHgsIHkpICAgICAgICAgIFwKLSggICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFwKLSAgKHgpLT52MzJbMF0gPSAoeSktPnYzMlswXSwgICAgIFwK
LSAgKHgpLT52MzJbMV0gPSAoeSktPnYzMlsxXSwgICAgIFwKLSAgKHgpLT52MzJbMl0gPSAoeSkt
PnYzMlsyXSwgICAgIFwKLSAgKHgpLT52MzJbM10gPSAoeSktPnYzMlszXSAgICAgIFwKLSkKLQot
I2RlZmluZSBfdjEyOF94b3IoeiwgeCwgeSkgICAgICAgICAgICAgICAgICAgICAgIFwKLSggICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSAgICh6KS0+djMy
WzBdID0gKHgpLT52MzJbMF0gXiAoeSktPnYzMlswXSwgICAgIFwKLSAgICh6KS0+djMyWzFdID0g
KHgpLT52MzJbMV0gXiAoeSktPnYzMlsxXSwgICAgIFwKLSAgICh6KS0+djMyWzJdID0gKHgpLT52
MzJbMl0gXiAoeSktPnYzMlsyXSwgICAgIFwKLSAgICh6KS0+djMyWzNdID0gKHgpLT52MzJbM10g
XiAoeSktPnYzMlszXSAgICAgIFwKLSkKLQotI2RlZmluZSBfdjEyOF9hbmQoeiwgeCwgeSkgICAg
ICAgICAgICAgICAgICAgICAgIFwKLSggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFwKLSAgICh6KS0+djMyWzBdID0gKHgpLT52MzJbMF0gJiAoeSktPnYzMlsw
XSwgICAgIFwKLSAgICh6KS0+djMyWzFdID0gKHgpLT52MzJbMV0gJiAoeSktPnYzMlsxXSwgICAg
IFwKLSAgICh6KS0+djMyWzJdID0gKHgpLT52MzJbMl0gJiAoeSktPnYzMlsyXSwgICAgIFwKLSAg
ICh6KS0+djMyWzNdID0gKHgpLT52MzJbM10gJiAoeSktPnYzMlszXSAgICAgIFwKLSkKLQotI2Rl
ZmluZSBfdjEyOF9vcih6LCB4LCB5KSAgICAgICAgICAgICAgICAgICAgICAgIFwKLSggICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSAgICh6KS0+djMyWzBd
ID0gKHgpLT52MzJbMF0gfCAoeSktPnYzMlswXSwgICAgIFwKLSAgICh6KS0+djMyWzFdID0gKHgp
LT52MzJbMV0gfCAoeSktPnYzMlsxXSwgICAgIFwKLSAgICh6KS0+djMyWzJdID0gKHgpLT52MzJb
Ml0gfCAoeSktPnYzMlsyXSwgICAgIFwKLSAgICh6KS0+djMyWzNdID0gKHgpLT52MzJbM10gfCAo
eSktPnYzMlszXSAgICAgIFwKLSkKLQotI2RlZmluZSBfdjEyOF9jb21wbGVtZW50KHgpICAgICAg
ICBcCi0oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSAgICh4KS0+djMyWzBd
ID0gfih4KS0+djMyWzBdLCAgICAgXAotICAgKHgpLT52MzJbMV0gPSB+KHgpLT52MzJbMV0sICAg
ICBcCi0gICAoeCktPnYzMlsyXSA9IH4oeCktPnYzMlsyXSwgICAgIFwKLSAgICh4KS0+djMyWzNd
ID0gfih4KS0+djMyWzNdICAgICAgXAotKQorI2RlZmluZSBfdjEyOF9zZXRfdG9femVybyh4KSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAo
KHgpLT52MzJbMF0gPSAwLCAoeCktPnYzMlsxXSA9IDAsICh4KS0+djMyWzJdID0gMCwgKHgpLT52
MzJbM10gPSAwKQogCi0vKiBvayBmb3IgTk9fNjRCSVRfTUFUSCBpZiBpdCBjYW4gY29tcGFyZSB1
aW50NjRfdCdzIChldmVuIGFzIHN0cnVjdHVyZXMpICovCi0jZGVmaW5lIF92MTI4X2lzX2VxKHgs
IHkpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSAgKCgoeCktPnY2
NFswXSA9PSAoeSktPnY2NFswXSkgJiYgKCh4KS0+djY0WzFdID09ICh5KS0+djY0WzFdKSkKKyNk
ZWZpbmUgX3YxMjhfY29weSh4LCB5KSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBcCisgICAgKCh4KS0+djMyWzBdID0gKHkpLT52MzJbMF0sICh4
KS0+djMyWzFdID0gKHkpLT52MzJbMV0sICAgICAgICAgICAgICAgICAgICAgXAorICAgICAoeCkt
PnYzMlsyXSA9ICh5KS0+djMyWzJdLCAoeCktPnYzMlszXSA9ICh5KS0+djMyWzNdKQogCisjZGVm
aW5lIF92MTI4X3hvcih6LCB4LCB5KSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgXAorICAgICgoeiktPnYzMlswXSA9ICh4KS0+djMyWzBdIF4gKHkp
LT52MzJbMF0sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgKHopLT52
MzJbMV0gPSAoeCktPnYzMlsxXSBeICh5KS0+djMyWzFdLCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBcCisgICAgICh6KS0+djMyWzJdID0gKHgpLT52MzJbMl0gXiAoeSktPnYzMlsy
XSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAoeiktPnYzMlszXSA9
ICh4KS0+djMyWzNdIF4gKHkpLT52MzJbM10pCisKKyNkZWZpbmUgX3YxMjhfYW5kKHosIHgsIHkp
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisg
ICAgKCh6KS0+djMyWzBdID0gKHgpLT52MzJbMF0gJiAoeSktPnYzMlswXSwgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgXAorICAgICAoeiktPnYzMlsxXSA9ICh4KS0+djMyWzFdICYg
KHkpLT52MzJbMV0sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgKHop
LT52MzJbMl0gPSAoeCktPnYzMlsyXSAmICh5KS0+djMyWzJdLCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBcCisgICAgICh6KS0+djMyWzNdID0gKHgpLT52MzJbM10gJiAoeSktPnYz
MlszXSkKKworI2RlZmluZSBfdjEyOF9vcih6LCB4LCB5KSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAoKHopLT52MzJbMF0gPSAoeCkt
PnYzMlswXSB8ICh5KS0+djMyWzBdLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBc
CisgICAgICh6KS0+djMyWzFdID0gKHgpLT52MzJbMV0gfCAoeSktPnYzMlsxXSwgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAoeiktPnYzMlsyXSA9ICh4KS0+djMyWzJd
IHwgKHkpLT52MzJbMl0sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAg
KHopLT52MzJbM10gPSAoeCktPnYzMlszXSB8ICh5KS0+djMyWzNdKQorCisjZGVmaW5lIF92MTI4
X2NvbXBsZW1lbnQoeCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgXAorICAgICgoeCktPnYzMlswXSA9IH4oeCktPnYzMlswXSwgKHgpLT52MzJbMV0g
PSB+KHgpLT52MzJbMV0sICAgICAgICAgICAgICAgICAgIFwKKyAgICAgKHgpLT52MzJbMl0gPSB+
KHgpLT52MzJbMl0sICh4KS0+djMyWzNdID0gfih4KS0+djMyWzNdKQorCisvKiBvayBmb3IgTk9f
NjRCSVRfTUFUSCBpZiBpdCBjYW4gY29tcGFyZSB1aW50NjRfdCdzIChldmVuIGFzIHN0cnVjdHVy
ZXMpICovCisjZGVmaW5lIF92MTI4X2lzX2VxKHgsIHkpICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICgoKHgpLT52NjRbMF0gPT0gKHkp
LT52NjRbMF0pICYmICgoeCktPnY2NFsxXSA9PSAoeSktPnY2NFsxXSkpCiAKICNpZmRlZiBOT182
NEJJVF9NQVRICi0jZGVmaW5lIF92MTI4X3hvcl9lcSh6LCB4KSAgICAgICAgIFwKLSggICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotICAgKHopLT52MzJbMF0gXj0gKHgpLT52MzJb
MF0sICAgICBcCi0gICAoeiktPnYzMlsxXSBePSAoeCktPnYzMlsxXSwgICAgIFwKLSAgICh6KS0+
djMyWzJdIF49ICh4KS0+djMyWzJdLCAgICAgXAotICAgKHopLT52MzJbM10gXj0gKHgpLT52MzJb
M10gICAgICBcCi0pCisjZGVmaW5lIF92MTI4X3hvcl9lcSh6LCB4KSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICgoeiktPnYzMlswXSBe
PSAoeCktPnYzMlswXSwgKHopLT52MzJbMV0gXj0gKHgpLT52MzJbMV0sICAgICAgICAgICAgICAg
ICAgIFwKKyAgICAgKHopLT52MzJbMl0gXj0gKHgpLT52MzJbMl0sICh6KS0+djMyWzNdIF49ICh4
KS0+djMyWzNdKQogI2Vsc2UKLSNkZWZpbmUgX3YxMjhfeG9yX2VxKHosIHgpICAgICAgICAgXAot
KCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0gICAoeiktPnY2NFswXSBePSAo
eCktPnY2NFswXSwgICAgIFwKLSAgICh6KS0+djY0WzFdIF49ICh4KS0+djY0WzFdICAgICAgXAot
KQorI2RlZmluZSBfdjEyOF94b3JfZXEoeiwgeCkgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAoKHopLT52NjRbMF0gXj0gKHgpLT52NjRb
MF0sICh6KS0+djY0WzFdIF49ICh4KS0+djY0WzFdKQogI2VuZGlmCiAKIC8qIE5PVEUhICBUaGlz
IGFzc3VtZXMgYW4gb2RkIG9yZGVyaW5nISAqLwpAQCAtMjI0LDc2ICsxODgsNTUgQEAgdjEyOF9y
aWdodF9zaGlmdCh2MTI4X3QgKngsIGludCBzaGlmdF9pbmRleCk7CiAgICByZWFsbHkgY2FyZSB3
aGljaCBiaXQgaXMgd2hpY2guICBBRVMgZG9lcyBjYXJlIHdoaWNoIGJpdCBpcyB3aGljaCwgYnV0
CiAgICBkb2Vzbid0IHVzZSB0aGUgMTI4LWJpdCBnZXQvc2V0IG9yIDEyOC1iaXQgc2hpZnRzICAq
LwogCi0jZGVmaW5lIF92MTI4X2dldF9iaXQoeCwgYml0KSAgICAgICAgICAgICAgICAgICAgIFwK
LSggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotICAo
KCgoeCktPnYzMlsoYml0KSA+PiA1XSkgPj4gKChiaXQpICYgMzEpKSAmIDEpICBcCi0pCi0KLSNk
ZWZpbmUgX3YxMjhfc2V0X2JpdCh4LCBiaXQpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgXAotKCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBcCi0gICgoKHgpLT52MzJbKGJpdCkgPj4gNV0pIHw9ICgodWludDMy
X3QpMSA8PCAoKGJpdCkgJiAzMSkpKSBcCi0pCi0KLSNkZWZpbmUgX3YxMjhfY2xlYXJfYml0KHgs
IGJpdCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSggICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSAg
KCgoeCktPnYzMlsoYml0KSA+PiA1XSkgJj0gfigodWludDMyX3QpMSA8PCAoKGJpdCkgJiAzMSkp
KSBcCi0pCi0KLSNkZWZpbmUgX3YxMjhfc2V0X2JpdF90byh4LCBiaXQsIHZhbHVlKSAgIFwKLSgg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSAgICh2YWx1ZSkgPyBf
djEyOF9zZXRfYml0KHgsIGJpdCkgOiAgICAgIFwKLSAgICAgICAgICAgICBfdjEyOF9jbGVhcl9i
aXQoeCwgYml0KSAgICAgIFwKLSkKLQotI2lmZGVmIERBVEFUWVBFU19VU0VfTUFDUk9TICAvKiBs
aXR0bGUgZnVuY3Rpb25zIGFyZSByZWFsbHkgbWFjcm9zICovCi0gICAKLSNkZWZpbmUgdjEyOF9z
ZXRfdG9femVybyh6KSAgICAgICBfdjEyOF9zZXRfdG9femVybyh6KQotI2RlZmluZSB2MTI4X2Nv
cHkoeiwgeCkgICAgICAgICAgIF92MTI4X2NvcHkoeiwgeCkKLSNkZWZpbmUgdjEyOF94b3Ioeiwg
eCwgeSkgICAgICAgICBfdjEyOF94b3IoeiwgeCwgeSkKLSNkZWZpbmUgdjEyOF9hbmQoeiwgeCwg
eSkgICAgICAgICBfdjEyOF9hbmQoeiwgeCwgeSkKLSNkZWZpbmUgdjEyOF9vcih6LCB4LCB5KSAg
ICAgICAgICBfdjEyOF9vcih6LCB4LCB5KQotI2RlZmluZSB2MTI4X2NvbXBsZW1lbnQoeCkgICAg
ICAgIF92MTI4X2NvbXBsZW1lbnQoeCkgCi0jZGVmaW5lIHYxMjhfaXNfZXEoeCwgeSkgICAgICAg
ICAgX3YxMjhfaXNfZXEoeCwgeSkKLSNkZWZpbmUgdjEyOF94b3JfZXEoeCwgeSkgICAgICAgICBf
djEyOF94b3JfZXEoeCwgeSkKLSNkZWZpbmUgdjEyOF9nZXRfYml0KHgsIGkpICAgICAgICBfdjEy
OF9nZXRfYml0KHgsIGkpCi0jZGVmaW5lIHYxMjhfc2V0X2JpdCh4LCBpKSAgICAgICAgX3YxMjhf
c2V0X2JpdCh4LCBpKQotI2RlZmluZSB2MTI4X2NsZWFyX2JpdCh4LCBpKSAgICAgIF92MTI4X2Ns
ZWFyX2JpdCh4LCBpKQotI2RlZmluZSB2MTI4X3NldF9iaXRfdG8oeCwgaSwgeSkgIF92MTI4X3Nl
dF9iaXRfdG8oeCwgaSwgeSkKKyNkZWZpbmUgX3YxMjhfZ2V0X2JpdCh4LCBiaXQpICgoKCgoeCkt
PnYzMlsoYml0KSA+PiA1XSkgPj4gKChiaXQpJjMxKSkgJiAxKSkKKworI2RlZmluZSBfdjEyOF9z
ZXRfYml0KHgsIGJpdCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFwKKyAgICAoKCgoeCktPnYzMlsoYml0KSA+PiA1XSkgfD0gKCh1aW50MzJfdCkxIDw8
ICgoYml0KSYzMSkpKSkKKworI2RlZmluZSBfdjEyOF9jbGVhcl9iaXQoeCwgYml0KSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAoKCgoeCktPnYz
MlsoYml0KSA+PiA1XSkgJj0gfigodWludDMyX3QpMSA8PCAoKGJpdCkmMzEpKSkpCisKKyNkZWZp
bmUgX3YxMjhfc2V0X2JpdF90byh4LCBiaXQsIHZhbHVlKSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBcCisgICAgKCh2YWx1ZSkgPyBfdjEyOF9zZXRfYml0KHgsIGJpdCkg
OiBfdjEyOF9jbGVhcl9iaXQoeCwgYml0KSkKKworI2lmZGVmIERBVEFUWVBFU19VU0VfTUFDUk9T
IC8qIGxpdHRsZSBmdW5jdGlvbnMgYXJlIHJlYWxseSBtYWNyb3MgKi8KKworI2RlZmluZSB2MTI4
X3NldF90b196ZXJvKHopIF92MTI4X3NldF90b196ZXJvKHopCisjZGVmaW5lIHYxMjhfY29weSh6
LCB4KSBfdjEyOF9jb3B5KHosIHgpCisjZGVmaW5lIHYxMjhfeG9yKHosIHgsIHkpIF92MTI4X3hv
cih6LCB4LCB5KQorI2RlZmluZSB2MTI4X2FuZCh6LCB4LCB5KSBfdjEyOF9hbmQoeiwgeCwgeSkK
KyNkZWZpbmUgdjEyOF9vcih6LCB4LCB5KSBfdjEyOF9vcih6LCB4LCB5KQorI2RlZmluZSB2MTI4
X2NvbXBsZW1lbnQoeCkgX3YxMjhfY29tcGxlbWVudCh4KQorI2RlZmluZSB2MTI4X2lzX2VxKHgs
IHkpIF92MTI4X2lzX2VxKHgsIHkpCisjZGVmaW5lIHYxMjhfeG9yX2VxKHgsIHkpIF92MTI4X3hv
cl9lcSh4LCB5KQorI2RlZmluZSB2MTI4X2dldF9iaXQoeCwgaSkgX3YxMjhfZ2V0X2JpdCh4LCBp
KQorI2RlZmluZSB2MTI4X3NldF9iaXQoeCwgaSkgX3YxMjhfc2V0X2JpdCh4LCBpKQorI2RlZmlu
ZSB2MTI4X2NsZWFyX2JpdCh4LCBpKSBfdjEyOF9jbGVhcl9iaXQoeCwgaSkKKyNkZWZpbmUgdjEy
OF9zZXRfYml0X3RvKHgsIGksIHkpIF92MTI4X3NldF9iaXRfdG8oeCwgaSwgeSkKIAogI2Vsc2UK
IAotdm9pZAotdjEyOF9zZXRfdG9femVybyh2MTI4X3QgKngpOwordm9pZCB2MTI4X3NldF90b196
ZXJvKHYxMjhfdCAqeCk7CiAKLWludAotdjEyOF9pc19lcShjb25zdCB2MTI4X3QgKngsIGNvbnN0
IHYxMjhfdCAqeSk7CitpbnQgdjEyOF9pc19lcShjb25zdCB2MTI4X3QgKngsIGNvbnN0IHYxMjhf
dCAqeSk7CiAKLXZvaWQKLXYxMjhfY29weSh2MTI4X3QgKngsIGNvbnN0IHYxMjhfdCAqeSk7Cit2
b2lkIHYxMjhfY29weSh2MTI4X3QgKngsIGNvbnN0IHYxMjhfdCAqeSk7CiAKLXZvaWQKLXYxMjhf
eG9yKHYxMjhfdCAqeiwgdjEyOF90ICp4LCB2MTI4X3QgKnkpOwordm9pZCB2MTI4X3hvcih2MTI4
X3QgKnosIHYxMjhfdCAqeCwgdjEyOF90ICp5KTsKIAotdm9pZAotdjEyOF9hbmQodjEyOF90ICp6
LCB2MTI4X3QgKngsIHYxMjhfdCAqeSk7Cit2b2lkIHYxMjhfYW5kKHYxMjhfdCAqeiwgdjEyOF90
ICp4LCB2MTI4X3QgKnkpOwogCi12b2lkCi12MTI4X29yKHYxMjhfdCAqeiwgdjEyOF90ICp4LCB2
MTI4X3QgKnkpOyAKK3ZvaWQgdjEyOF9vcih2MTI4X3QgKnosIHYxMjhfdCAqeCwgdjEyOF90ICp5
KTsKIAotdm9pZAotdjEyOF9jb21wbGVtZW50KHYxMjhfdCAqeCk7Cit2b2lkIHYxMjhfY29tcGxl
bWVudCh2MTI4X3QgKngpOwogCi1pbnQKLXYxMjhfZ2V0X2JpdChjb25zdCB2MTI4X3QgKngsIGlu
dCBpKTsKK2ludCB2MTI4X2dldF9iaXQoY29uc3QgdjEyOF90ICp4LCBpbnQgaSk7CiAKLXZvaWQK
LXYxMjhfc2V0X2JpdCh2MTI4X3QgKngsIGludCBpKSA7ICAgICAKK3ZvaWQgdjEyOF9zZXRfYml0
KHYxMjhfdCAqeCwgaW50IGkpOwogCi12b2lkCi12MTI4X2NsZWFyX2JpdCh2MTI4X3QgKngsIGlu
dCBpKTsgICAgCit2b2lkIHYxMjhfY2xlYXJfYml0KHYxMjhfdCAqeCwgaW50IGkpOwogCi12b2lk
Ci12MTI4X3NldF9iaXRfdG8odjEyOF90ICp4LCBpbnQgaSwgaW50IHkpOwordm9pZCB2MTI4X3Nl
dF9iaXRfdG8odjEyOF90ICp4LCBpbnQgaSwgaW50IHkpOwogCiAjZW5kaWYgLyogREFUQVRZUEVT
X1VTRV9NQUNST1MgKi8KIApAQCAtMzA0LDExMyArMjQ3LDEwMiBAQCB2MTI4X3NldF9iaXRfdG8o
djEyOF90ICp4LCBpbnQgaSwgaW50IHkpOwogICogdmVyaWZ5aW5nIGF1dGhlbnRpY2F0aW9uIHRh
Z3MuCiAgKi8KIAotaW50Ci1vY3RldF9zdHJpbmdfaXNfZXEodWludDhfdCAqYSwgdWludDhfdCAq
YiwgaW50IGxlbik7CitpbnQgb2N0ZXRfc3RyaW5nX2lzX2VxKHVpbnQ4X3QgKmEsIHVpbnQ4X3Qg
KmIsIGludCBsZW4pOwogCiAvKgogICogQSBwb3J0YWJsZSB3YXkgdG8gemVybyBvdXQgbWVtb3J5
IGFzIHJlY29tbWVuZGVkIGJ5CiAgKiBodHRwczovL2NyeXB0b2NvZGluZy5uZXQvaW5kZXgucGhw
L0NvZGluZ19ydWxlcyNDbGVhbl9tZW1vcnlfb2Zfc2VjcmV0X2RhdGEKICAqIFRoaXMgaXMgdXNl
ZCB0byB6ZXJvIG1lbW9yeSB3aGVuIE9QRU5TU0xfY2xlYW5zZSgpIGlzIG5vdCBhdmFpbGFibGUu
CiAgKi8KLXZvaWQKLXNydHBfY2xlYW5zZSh2b2lkICpzLCBzaXplX3QgbGVuKTsKK3ZvaWQgc3J0
cF9jbGVhbnNlKHZvaWQgKnMsIHNpemVfdCBsZW4pOwogCiAvKgogICogRnVuY3Rpb25zIGFzIGEg
d3JhcHBlciB0aGF0IGRlbGVnYXRlcyB0byBlaXRoZXIgc3J0cF9jbGVhbnNlKCkgb3IKICAqIE9Q
RU5TU0xfY2xlYW5zZSgpIGlmIGF2YWlsYWJsZSB0byB6ZXJvIG1lbW9yeS4KICAqLwotdm9pZAot
b2N0ZXRfc3RyaW5nX3NldF90b196ZXJvKHZvaWQgKnMsIHNpemVfdCBsZW4pOwordm9pZCBvY3Rl
dF9zdHJpbmdfc2V0X3RvX3plcm8odm9pZCAqcywgc2l6ZV90IGxlbik7CiAKLSNpZiBkZWZpbmVk
KEhBVkVfQ09ORklHX0gpIAorI2lmIGRlZmluZWQoSEFWRV9DT05GSUdfSCkKIAotLyogCisvKgog
ICogQ29udmVydCBiaWcgZW5kaWFuIGludGVnZXJzIHRvIENQVSBieXRlIG9yZGVyLgogICovCiAj
aWZkZWYgV09SRFNfQklHRU5ESUFOCiAvKiBOb3RoaW5nIHRvIGRvLiAqLwotIyBkZWZpbmUgYmUz
Ml90b19jcHUoeCkJKHgpCi0jIGRlZmluZSBiZTY0X3RvX2NwdSh4KQkoeCkKKyNkZWZpbmUgYmUz
Ml90b19jcHUoeCkgKHgpCisjZGVmaW5lIGJlNjRfdG9fY3B1KHgpICh4KQogI2VsaWYgZGVmaW5l
ZChIQVZFX0JZVEVTV0FQX0gpCiAvKiBXZSBoYXZlIChob3BlZnVsbHkpIG9wdGltaXplZCB2ZXJz
aW9ucyBpbiBieXRlc3dhcC5oICovCi0jIGluY2x1ZGUgPGJ5dGVzd2FwLmg+Ci0jIGRlZmluZSBi
ZTMyX3RvX2NwdSh4KQlic3dhcF8zMigoeCkpCi0jIGRlZmluZSBiZTY0X3RvX2NwdSh4KQlic3dh
cF82NCgoeCkpCi0jZWxzZQorI2luY2x1ZGUgPGJ5dGVzd2FwLmg+CisjZGVmaW5lIGJlMzJfdG9f
Y3B1KHgpIGJzd2FwXzMyKCh4KSkKKyNkZWZpbmUgYmU2NF90b19jcHUoeCkgYnN3YXBfNjQoKHgp
KQorI2Vsc2UgLyogV09SRFNfQklHRU5ESUFOICovCiAKICNpZiBkZWZpbmVkKF9fR05VQ19fKSAm
JiBkZWZpbmVkKEhBVkVfWDg2KQogLyogRmFsbCBiYWNrLiAqLwotc3RhdGljIGlubGluZSB1aW50
MzJfdCBiZTMyX3RvX2NwdSh1aW50MzJfdCB2KSB7Ci0gICAvKiBvcHRpbWl6ZWQgZm9yIHg4Ni4g
Ki8KLSAgIGFzbSgiYnN3YXAgJTAiIDogIj1yIiAodikgOiAiMCIgKHYpKTsKLSAgIHJldHVybiB2
OwotfQotIyBlbHNlIC8qIEhBVkVfWDg2ICovCi0jICBpZmRlZiBIQVZFX05FVElORVRfSU5fSAot
IyAgIGluY2x1ZGUgPG5ldGluZXQvaW4uaD4KLSMgIGVsaWYgZGVmaW5lZCBIQVZFX1dJTlNPQ0sy
X0gKLSMgICBpbmNsdWRlIDx3aW5zb2NrMi5oPgotIyAgZW5kaWYKLSMgIGRlZmluZSBiZTMyX3Rv
X2NwdSh4KQludG9obCgoeCkpCi0jIGVuZGlmIC8qIEhBVkVfWDg2ICovCi0KLXN0YXRpYyBpbmxp
bmUgdWludDY0X3QgYmU2NF90b19jcHUodWludDY0X3QgdikgewotIyBpZmRlZiBOT182NEJJVF9N
QVRICi0gICAvKiB1c2UgdGhlIG1ha2U2NCBmdW5jdGlvbnMgdG8gZG8gNjQtYml0IG1hdGggKi8K
LSAgIHYgPSBtYWtlNjQoaHRvbmwobG93MzIodikpLGh0b25sKGhpZ2gzMih2KSkpOwotIyBlbHNl
Ci0gICAvKiB1c2UgdGhlIG5hdGl2ZSA2NC1iaXQgbWF0aCAqLwotICAgdj0gKHVpbnQ2NF90KSgo
YmUzMl90b19jcHUoKHVpbnQzMl90KSh2ID4+IDMyKSkpIHwgKCgodWludDY0X3QpYmUzMl90b19j
cHUoKHVpbnQzMl90KXYpKSA8PCAzMikpOwotIyBlbmRpZgotICAgcmV0dXJuIHY7CitzdGF0aWMg
aW5saW5lIHVpbnQzMl90IGJlMzJfdG9fY3B1KHVpbnQzMl90IHYpCit7CisgICAgLyogb3B0aW1p
emVkIGZvciB4ODYuICovCisgICAgYXNtKCJic3dhcCAlMCIgOiAiPXIiKHYpIDogIjAiKHYpKTsK
KyAgICByZXR1cm4gdjsKIH0KKyNlbHNlIC8qIEhBVkVfWDg2ICovCisjaWZkZWYgSEFWRV9ORVRJ
TkVUX0lOX0gKKyNpbmNsdWRlIDxuZXRpbmV0L2luLmg+CisjZWxpZiBkZWZpbmVkIEhBVkVfV0lO
U09DSzJfSAorI2luY2x1ZGUgPHdpbnNvY2syLmg+CisjZW5kaWYgLyogSEFWRV9ORVRJTkVUX0lO
X0ggKi8KKyNkZWZpbmUgYmUzMl90b19jcHUoeCkgbnRvaGwoKHgpKQorI2VuZGlmIC8qIEhBVkVf
WDg2ICovCiAKLSNlbmRpZiAKK3N0YXRpYyBpbmxpbmUgdWludDY0X3QgYmU2NF90b19jcHUodWlu
dDY0X3QgdikKK3sKKyNpZmRlZiBOT182NEJJVF9NQVRICisgICAgLyogdXNlIHRoZSBtYWtlNjQg
ZnVuY3Rpb25zIHRvIGRvIDY0LWJpdCBtYXRoICovCisgICAgdiA9IG1ha2U2NChodG9ubChsb3cz
Mih2KSksIGh0b25sKGhpZ2gzMih2KSkpOworI2Vsc2UgIC8qIE5PXzY0QklUX01BVEggKi8KKyAg
ICAvKiB1c2UgdGhlIG5hdGl2ZSA2NC1iaXQgbWF0aCAqLworICAgIHYgPSAodWludDY0X3QpKChi
ZTMyX3RvX2NwdSgodWludDMyX3QpKHYgPj4gMzIpKSkgfAorICAgICAgICAgICAgICAgICAgICgo
KHVpbnQ2NF90KWJlMzJfdG9fY3B1KCh1aW50MzJfdCl2KSkgPDwgMzIpKTsKKyNlbmRpZiAvKiBO
T182NEJJVF9NQVRIICovCisgICAgcmV0dXJuIHY7Cit9CiAKICNlbmRpZiAvKiBXT1JEU19CSUdF
TkRJQU4gKi8KIAorI2VuZGlmIC8qIEhBVkVfQ09ORklHX0ggKi8KKwogLyoKLSAqIGZ1bmN0aW9u
cyBtYW5pcHVsYXRpbmcgYml0dmVjdG9yX3QgCisgKiBmdW5jdGlvbnMgbWFuaXB1bGF0aW5nIGJp
dHZlY3Rvcl90CiAgKgogICogQSBiaXR2ZWN0b3JfdCBjb25zaXN0cyBvZiBhbiBhcnJheSBvZiB3
b3JkcyBhbmQgYW4gaW50ZWdlcgogICogcmVwcmVzZW50aW5nIHRoZSBudW1iZXIgb2Ygc2lnbmlm
aWNhbnQgYml0cyBzdG9yZWQgaW4gdGhlIGFycmF5LgogICogVGhlIGJpdHMgYXJlIHBhY2tlZCBh
cyBmb2xsb3dzOiB0aGUgbGVhc3Qgc2lnbmlmaWNhbnQgYml0IGlzIHRoYXQKICAqIG9mIHdvcmRb
MF0sIHdoaWxlIHRoZSBtb3N0IHNpZ25pZmljYW50IGJpdCBpcyB0aGUgbnRoIG1vc3QKICAqIHNp
Z25pZmljYW50IGJpdCBvZiB3b3JkW21dLCB3aGVyZSBsZW5ndGggPSBiaXRzX3Blcl93b3JkICog
bSArIG4uCi0gKiAKKyAqCiAgKi8KIAotI2RlZmluZSBiaXRzX3Blcl93b3JkICAzMgorI2RlZmlu
ZSBiaXRzX3Blcl93b3JkIDMyCiAjZGVmaW5lIGJ5dGVzX3Blcl93b3JkIDQKIAogdHlwZWRlZiBz
dHJ1Y3QgewotICB1aW50MzJfdCBsZW5ndGg7ICAgCi0gIHVpbnQzMl90ICp3b3JkOworICAgIHVp
bnQzMl90IGxlbmd0aDsKKyAgICB1aW50MzJfdCAqd29yZDsKIH0gYml0dmVjdG9yX3Q7CiAKKyNk
ZWZpbmUgX2JpdHZlY3Rvcl9nZXRfYml0KHYsIGJpdF9pbmRleCkgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBcCisgICAgKCgoKCh2KS0+d29yZFsoKGJpdF9pbmRleCkgPj4g
NSldKSA+PiAoKGJpdF9pbmRleCkmMzEpKSAmIDEpKQogCi0jZGVmaW5lIF9iaXR2ZWN0b3JfZ2V0
X2JpdCh2LCBiaXRfaW5kZXgpCQkJCVwKLSgJCQkJCQkJCQlcCi0gKCgoKHYpLT53b3JkWygoYml0
X2luZGV4KSA+PiA1KV0pID4+ICgoYml0X2luZGV4KSAmIDMxKSkgJiAxKQkJXAotKQotCi0KLSNk
ZWZpbmUgX2JpdHZlY3Rvcl9zZXRfYml0KHYsIGJpdF9pbmRleCkJCQkJXAotKAkJCQkJCQkJCVwK
LSAoKCh2KS0+d29yZFsoKGJpdF9pbmRleCkgPj4gNSldIHw9ICgodWludDMyX3QpMSA8PCAoKGJp
dF9pbmRleCkgJiAzMSkpKSkgXAotKQorI2RlZmluZSBfYml0dmVjdG9yX3NldF9iaXQodiwgYml0
X2luZGV4KSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAoKCgo
diktPndvcmRbKChiaXRfaW5kZXgpID4+IDUpXSB8PSAoKHVpbnQzMl90KTEgPDwgKChiaXRfaW5k
ZXgpJjMxKSkpKSkKIAotI2RlZmluZSBfYml0dmVjdG9yX2NsZWFyX2JpdCh2LCBiaXRfaW5kZXgp
CQkJCVwKLSgJCQkJCQkJCQlcCi0gKCgodiktPndvcmRbKChiaXRfaW5kZXgpID4+IDUpXSAmPSB+
KCh1aW50MzJfdCkxIDw8ICgoYml0X2luZGV4KSAmIDMxKSkpKSBcCi0pCisjZGVmaW5lIF9iaXR2
ZWN0b3JfY2xlYXJfYml0KHYsIGJpdF9pbmRleCkgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgXAorICAgICgoKCh2KS0+d29yZFsoKGJpdF9pbmRleCkgPj4gNSldICY9IH4oKHVp
bnQzMl90KTEgPDwgKChiaXRfaW5kZXgpJjMxKSkpKSkKIAotI2RlZmluZSBfYml0dmVjdG9yX2dl
dF9sZW5ndGgodikJCQkJCVwKLSgJCQkJCQkJCQlcCi0gKCh2KS0+bGVuZ3RoKQkJCQkJCQkJXAot
KQorI2RlZmluZSBfYml0dmVjdG9yX2dldF9sZW5ndGgodikgKCgodiktPmxlbmd0aCkpCiAKLSNp
ZmRlZiBEQVRBVFlQRVNfVVNFX01BQ1JPUyAgLyogbGl0dGxlIGZ1bmN0aW9ucyBhcmUgcmVhbGx5
IG1hY3JvcyAqLworI2lmZGVmIERBVEFUWVBFU19VU0VfTUFDUk9TIC8qIGxpdHRsZSBmdW5jdGlv
bnMgYXJlIHJlYWxseSBtYWNyb3MgKi8KIAogI2RlZmluZSBiaXR2ZWN0b3JfZ2V0X2JpdCh2LCBi
aXRfaW5kZXgpIF9iaXR2ZWN0b3JfZ2V0X2JpdCh2LCBiaXRfaW5kZXgpCiAjZGVmaW5lIGJpdHZl
Y3Rvcl9zZXRfYml0KHYsIGJpdF9pbmRleCkgX2JpdHZlY3Rvcl9zZXRfYml0KHYsIGJpdF9pbmRl
eCkKQEAgLTQxOSwzNCArMzUxLDI1IEBAIHR5cGVkZWYgc3RydWN0IHsKIAogI2Vsc2UKIAotaW50
Ci1iaXR2ZWN0b3JfZ2V0X2JpdChjb25zdCBiaXR2ZWN0b3JfdCAqdiwgaW50IGJpdF9pbmRleCk7
CitpbnQgYml0dmVjdG9yX2dldF9iaXQoY29uc3QgYml0dmVjdG9yX3QgKnYsIGludCBiaXRfaW5k
ZXgpOwogCi12b2lkCi1iaXR2ZWN0b3Jfc2V0X2JpdChiaXR2ZWN0b3JfdCAqdiwgaW50IGJpdF9p
bmRleCk7Cit2b2lkIGJpdHZlY3Rvcl9zZXRfYml0KGJpdHZlY3Rvcl90ICp2LCBpbnQgYml0X2lu
ZGV4KTsKIAotdm9pZAotYml0dmVjdG9yX2NsZWFyX2JpdChiaXR2ZWN0b3JfdCAqdiwgaW50IGJp
dF9pbmRleCk7Cit2b2lkIGJpdHZlY3Rvcl9jbGVhcl9iaXQoYml0dmVjdG9yX3QgKnYsIGludCBi
aXRfaW5kZXgpOwogCi11bnNpZ25lZCBsb25nCi1iaXR2ZWN0b3JfZ2V0X2xlbmd0aChjb25zdCBi
aXR2ZWN0b3JfdCAqdik7Cit1bnNpZ25lZCBsb25nIGJpdHZlY3Rvcl9nZXRfbGVuZ3RoKGNvbnN0
IGJpdHZlY3Rvcl90ICp2KTsKIAogI2VuZGlmCiAKLWludAotYml0dmVjdG9yX2FsbG9jKGJpdHZl
Y3Rvcl90ICp2LCB1bnNpZ25lZCBsb25nIGxlbmd0aCk7CitpbnQgYml0dmVjdG9yX2FsbG9jKGJp
dHZlY3Rvcl90ICp2LCB1bnNpZ25lZCBsb25nIGxlbmd0aCk7CiAKLXZvaWQKLWJpdHZlY3Rvcl9k
ZWFsbG9jKGJpdHZlY3Rvcl90ICp2KTsKK3ZvaWQgYml0dmVjdG9yX2RlYWxsb2MoYml0dmVjdG9y
X3QgKnYpOwogCi12b2lkCi1iaXR2ZWN0b3Jfc2V0X3RvX3plcm8oYml0dmVjdG9yX3QgKngpOwor
dm9pZCBiaXR2ZWN0b3Jfc2V0X3RvX3plcm8oYml0dmVjdG9yX3QgKngpOwogCi12b2lkCi1iaXR2
ZWN0b3JfbGVmdF9zaGlmdChiaXR2ZWN0b3JfdCAqeCwgaW50IGluZGV4KTsKK3ZvaWQgYml0dmVj
dG9yX2xlZnRfc2hpZnQoYml0dmVjdG9yX3QgKngsIGludCBpbmRleCk7CiAKLWNoYXIgKgotYml0
dmVjdG9yX2JpdF9zdHJpbmcoYml0dmVjdG9yX3QgKngsIGNoYXIqIGJ1ZiwgaW50IGxlbik7Citj
aGFyICpiaXR2ZWN0b3JfYml0X3N0cmluZyhiaXR2ZWN0b3JfdCAqeCwgY2hhciAqYnVmLCBpbnQg
bGVuKTsKIAogI2lmZGVmIF9fY3BsdXNwbHVzCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2luY2x1ZGUv
ZXJyLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnNydHAvY3J5cHRvL2luY2x1ZGUvZXJyLmgKaW5kZXggYjZmMTk2ZGE4NDNjMTRhOWE3ZWExMjEy
MjM1MDNmZjI4NjMzYzFkMy4uNjZhMTAyM2VjODY5MWRjYTNmMTgwZmYwNWYwYzEzZjgxOTViZjg1
YyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJzcnRwL2NyeXB0by9pbmNsdWRlL2Vyci5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vaW5jbHVkZS9lcnIu
aApAQCAtNDIsNyArNDIsNiBAQAogICoKICAqLwogCi0KICNpZm5kZWYgRVJSX0gKICNkZWZpbmUg
RVJSX0gKIApAQCAtNjIsNyArNjEsNiBAQCBleHRlcm4gIkMiIHsKICAqIEB7CiAgKi8KIAotCiAv
KioKICAqIEB9CiAgKi8KQEAgLTgyLDkgKzgwLDExIEBAIHR5cGVkZWYgZW51bSB7CiAKIHNydHBf
ZXJyX3N0YXR1c190IHNydHBfZXJyX3JlcG9ydGluZ19pbml0KHZvaWQpOwogCi10eXBlZGVmIHZv
aWQgKHNydHBfZXJyX3JlcG9ydF9oYW5kbGVyX2Z1bmNfdCkoc3J0cF9lcnJfcmVwb3J0aW5nX2xl
dmVsX3QgbGV2ZWwsIGNvbnN0IGNoYXIgKiBtc2cpOwordHlwZWRlZiB2b2lkKHNydHBfZXJyX3Jl
cG9ydF9oYW5kbGVyX2Z1bmNfdCkoc3J0cF9lcnJfcmVwb3J0aW5nX2xldmVsX3QgbGV2ZWwsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpt
c2cpOwogCi1zcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2luc3RhbGxfZXJyX3JlcG9ydF9oYW5kbGVy
KHNydHBfZXJyX3JlcG9ydF9oYW5kbGVyX2Z1bmNfdCBmdW5jKTsKK3NydHBfZXJyX3N0YXR1c190
IHNydHBfaW5zdGFsbF9lcnJfcmVwb3J0X2hhbmRsZXIoCisgICAgc3J0cF9lcnJfcmVwb3J0X2hh
bmRsZXJfZnVuY190IGZ1bmMpOwogCiAvKgogICogc3J0cF9lcnJfcmVwb3J0IHJlcG9ydHMgYSAn
cHJpbnRmJyBmb3JtYXR0ZWQgZXJyb3IKQEAgLTk2LDkgKzk2LDcgQEAgc3J0cF9lcnJfc3RhdHVz
X3Qgc3J0cF9pbnN0YWxsX2Vycl9yZXBvcnRfaGFuZGxlcihzcnRwX2Vycl9yZXBvcnRfaGFuZGxl
cl9mdW5jX3QKICAqCiAgKi8KIAotdm9pZAotc3J0cF9lcnJfcmVwb3J0KHNydHBfZXJyX3JlcG9y
dGluZ19sZXZlbF90IGxldmVsLCBjb25zdCBjaGFyICpmb3JtYXQsIC4uLik7Ci0KK3ZvaWQgc3J0
cF9lcnJfcmVwb3J0KHNydHBfZXJyX3JlcG9ydGluZ19sZXZlbF90IGxldmVsLCBjb25zdCBjaGFy
ICpmb3JtYXQsIC4uLik7CiAKIC8qCiAgKiBkZWJ1Z19tb2R1bGVfdCBkZWZpbmVzIGEgZGVidWcg
bW9kdWxlCkBAIC0xMTEsMTcgKzEwOSwyMSBAQCB0eXBlZGVmIHN0cnVjdCB7CiAKICNpZmRlZiBF
TkFCTEVfREVCVUdfTE9HR0lORwogCi0jZGVmaW5lIGRlYnVnX3ByaW50KG1vZCwgZm9ybWF0LCBh
cmcpICAgICAgICAgICAgICAgICAgXAorI2RlZmluZSBkZWJ1Z19wcmludChtb2QsIGZvcm1hdCwg
YXJnKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAgICBzcnRw
X2Vycl9yZXBvcnQoc3J0cF9lcnJfbGV2ZWxfZGVidWcsICgiJXM6ICIgZm9ybWF0ICJcbiIpLCBt
b2QubmFtZSwgYXJnKQotI2RlZmluZSBkZWJ1Z19wcmludDIobW9kLCBmb3JtYXQsIGFyZzEsIGFy
ZzIpICAgICAgICAgICAgICAgICAgXAotICAgIHNydHBfZXJyX3JlcG9ydChzcnRwX2Vycl9sZXZl
bF9kZWJ1ZywgKCIlczogIiBmb3JtYXQgIlxuIiksIG1vZC5uYW1lLCBhcmcxLCBhcmcyKQorI2Rl
ZmluZSBkZWJ1Z19wcmludDIobW9kLCBmb3JtYXQsIGFyZzEsIGFyZzIpICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFwKKyAgICBzcnRwX2Vycl9yZXBvcnQoc3J0cF9lcnJfbGV2ZWxf
ZGVidWcsICgiJXM6ICIgZm9ybWF0ICJcbiIpLCBtb2QubmFtZSwgICAgICBcCisgICAgICAgICAg
ICAgICAgICAgIGFyZzEsIGFyZzIpCiAKICNlbHNlCiAKLSNkZWZpbmUgZGVidWdfcHJpbnQobW9k
LCBmb3JtYXQsIGFyZykgICAgICAgICAgICAgICAgICBcCi0gICAgaWYgKG1vZC5vbikgc3J0cF9l
cnJfcmVwb3J0KHNydHBfZXJyX2xldmVsX2RlYnVnLCAoIiVzOiAiIGZvcm1hdCAiXG4iKSwgbW9k
Lm5hbWUsIGFyZykKLSNkZWZpbmUgZGVidWdfcHJpbnQyKG1vZCwgZm9ybWF0LCBhcmcxLCBhcmcy
KSAgICAgICAgICAgICAgICAgIFwKLSAgICBpZiAobW9kLm9uKSBzcnRwX2Vycl9yZXBvcnQoc3J0
cF9lcnJfbGV2ZWxfZGVidWcsICgiJXM6ICIgZm9ybWF0ICJcbiIpLCBtb2QubmFtZSwgYXJnMSwg
YXJnMikKKyNkZWZpbmUgZGVidWdfcHJpbnQobW9kLCBmb3JtYXQsIGFyZykgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgaWYgKG1vZC5vbikgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAor
ICAgIHNydHBfZXJyX3JlcG9ydChzcnRwX2Vycl9sZXZlbF9kZWJ1ZywgKCIlczogIiBmb3JtYXQg
IlxuIiksIG1vZC5uYW1lLCBhcmcpCisjZGVmaW5lIGRlYnVnX3ByaW50Mihtb2QsIGZvcm1hdCwg
YXJnMSwgYXJnMikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgIGlmICht
b2Qub24pICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFwKKyAgICBzcnRwX2Vycl9yZXBvcnQoc3J0cF9lcnJfbGV2ZWxfZGVidWcs
ICgiJXM6ICIgZm9ybWF0ICJcbiIpLCBtb2QubmFtZSwgICAgICBcCisgICAgICAgICAgICAgICAg
ICAgIGFyZzEsIGFyZzIpCiAKICNlbmRpZgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2luY2x1ZGUvaW50
ZWdlcnMuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlic3J0cC9jcnlwdG8vaW5jbHVkZS9pbnRlZ2Vycy5oCmluZGV4IDRhODcxYzcwODUwMjhjZmQ1
NGIwNzcyOTQ1NGVkNTM0ZDQ0OTU4NWMuLmYyY2Q3YzA2NGQ3MTlkYmJjNGE2YzBlZjBlNGM0ZGEw
Yjk4ZDZhNWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vaW5jbHVkZS9pbnRlZ2Vycy5oCisrKyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8v
aW5jbHVkZS9pbnRlZ2Vycy5oCkBAIC04LDI2ICs4LDI2IEBACiAgKi8KIAogLyoKLSAqCQorICoK
ICAqIENvcHlyaWdodCAoYykgMjAwMS0yMDE3LCBDaXNjbyBTeXN0ZW1zLCBJbmMuCiAgKiBBbGwg
cmlnaHRzIHJlc2VydmVkLgotICogCisgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKICAq
IGFyZSBtZXQ6Ci0gKiAKKyAqCiAgKiAgIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBt
dXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CiAgKiAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIAorICoKICAqICAg
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQog
ICogICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZwogICogICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhl
ciBtYXRlcmlhbHMgcHJvdmlkZWQKICAqICAgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICogCisg
KgogICogICBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBDaXNjbyBTeXN0ZW1zLCBJbmMuIG5vciB0
aGUgbmFtZXMgb2YgaXRzCiAgKiAgIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNl
IG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZAogICogICBmcm9tIHRoaXMgc29mdHdhcmUgd2l0
aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0gKiAKKyAqCiAgKiBUSElT
IFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJ
QlVUT1JTCiAgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVAogICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKQEAgLTQzLDI5ICs0MywyNyBAQAogICoK
ICAqLwogCi0KICNpZm5kZWYgSU5URUdFUlNfSAogI2RlZmluZSBJTlRFR0VSU19ICiAKLQogLyog
dXNlIHN0YW5kYXJkIGludGVnZXIgZGVmaW5pdGlvbnMsIGlmIHRoZXkncmUgYXZhaWxhYmxlICAq
LwogI2lmZGVmIEhBVkVfU1RETElCX0gKLSMgaW5jbHVkZSA8c3RkbGliLmg+CisjaW5jbHVkZSA8
c3RkbGliLmg+CiAjZW5kaWYKICNpZmRlZiBIQVZFX1NURElOVF9ICi0jIGluY2x1ZGUgPHN0ZGlu
dC5oPgorI2luY2x1ZGUgPHN0ZGludC5oPgogI2VuZGlmCiAjaWZkZWYgSEFWRV9JTlRUWVBFU19I
Ci0jIGluY2x1ZGUgPGludHR5cGVzLmg+CisjaW5jbHVkZSA8aW50dHlwZXMuaD4KICNlbmRpZgog
I2lmZGVmIEhBVkVfU1lTX1RZUEVTX0gKLSMgaW5jbHVkZSA8c3lzL3R5cGVzLmg+CisjaW5jbHVk
ZSA8c3lzL3R5cGVzLmg+CiAjZW5kaWYKICNpZmRlZiBIQVZFX1NZU19JTlRfVFlQRVNfSAotIyBp
bmNsdWRlIDxzeXMvaW50X3R5cGVzLmg+ICAgIC8qIHRoaXMgZXhpc3RzIG9uIFN1biBPUyAqLwor
I2luY2x1ZGUgPHN5cy9pbnRfdHlwZXMuaD4gLyogdGhpcyBleGlzdHMgb24gU3VuIE9TICovCiAj
ZW5kaWYKICNpZmRlZiBIQVZFX01BQ0hJTkVfVFlQRVNfSAotIyBpbmNsdWRlIDxtYWNoaW5lL3R5
cGVzLmg+CisjaW5jbHVkZSA8bWFjaGluZS90eXBlcy5oPgogI2VuZGlmCiAKICNpZmRlZiBfX2Nw
bHVzcGx1cwpAQCAtNzQsMzEgKzcyLDMwIEBAIGV4dGVybiAiQyIgewogCiAvKiBDYW4gd2UgZG8g
NjQgYml0IGludGVnZXJzPyAqLwogI2lmICFkZWZpbmVkKEhBVkVfVUlOVDY0X1QpCi0jIGlmIFNJ
WkVPRl9VTlNJR05FRF9MT05HID09IDgKLXR5cGVkZWYgdW5zaWduZWQgbG9uZwkJdWludDY0X3Q7
Ci0jIGVsaWYgU0laRU9GX1VOU0lHTkVEX0xPTkdfTE9ORyA9PSA4Ci10eXBlZGVmIHVuc2lnbmVk
IGxvbmcgbG9uZwl1aW50NjRfdDsKLSMgZWxzZQotIyAgZGVmaW5lIE5PXzY0QklUX01BVEggMQot
IyBlbmRpZgorI2lmIFNJWkVPRl9VTlNJR05FRF9MT05HID09IDgKK3R5cGVkZWYgdW5zaWduZWQg
bG9uZyB1aW50NjRfdDsKKyNlbGlmIFNJWkVPRl9VTlNJR05FRF9MT05HX0xPTkcgPT0gOAordHlw
ZWRlZiB1bnNpZ25lZCBsb25nIGxvbmcgdWludDY0X3Q7CisjZWxzZQorI2RlZmluZSBOT182NEJJ
VF9NQVRIIDEKKyNlbmRpZgogI2VuZGlmCiAKIC8qIFJlYXNvbmFibGUgZGVmYXVsdHMgZm9yIDMy
IGJpdCBtYWNoaW5lcyAtIHlvdSBtYXkgbmVlZCB0bwogICogZWRpdCB0aGVzZSBkZWZpbml0aW9u
cyBmb3IgeW91ciBvd24gbWFjaGluZS4gKi8KICNpZm5kZWYgSEFWRV9VSU5UOF9UCi10eXBlZGVm
IHVuc2lnbmVkIGNoYXIJCXVpbnQ4X3Q7Cit0eXBlZGVmIHVuc2lnbmVkIGNoYXIgdWludDhfdDsK
ICNlbmRpZgogI2lmbmRlZiBIQVZFX1VJTlQxNl9UCi10eXBlZGVmIHVuc2lnbmVkIHNob3J0IGlu
dAl1aW50MTZfdDsKK3R5cGVkZWYgdW5zaWduZWQgc2hvcnQgaW50IHVpbnQxNl90OwogI2VuZGlm
CiAjaWZuZGVmIEhBVkVfVUlOVDMyX1QKLXR5cGVkZWYgdW5zaWduZWQgaW50CQl1aW50MzJfdDsK
K3R5cGVkZWYgdW5zaWduZWQgaW50IHVpbnQzMl90OwogI2VuZGlmCiAjaWZuZGVmIEhBVkVfSU5U
MzJfVAogdHlwZWRlZiBpbnQgaW50MzJfdDsKICNlbmRpZgogCi0KICNpZiBkZWZpbmVkKE5PXzY0
QklUX01BVEgpICYmIGRlZmluZWQoSEFWRV9DT05GSUdfSCkKIHR5cGVkZWYgZG91YmxlIHVpbnQ2
NF90OwogLyogYXNzZXJ0IHRoYXQgc2l6ZW9mKGRvdWJsZSkgPT0gOCAqLwpAQCAtMTA3LDM5ICsx
MDQsMzggQEAgZXh0ZXJuIHVpbnQzMl90IGhpZ2gzMih1aW50NjRfdCB2YWx1ZSk7CiBleHRlcm4g
dWludDMyX3QgbG93MzIodWludDY0X3QgdmFsdWUpOwogI2VuZGlmCiAKLQogLyogVGhlc2UgbWFj
cm9zIGFyZSB0byBsb2FkIGFuZCBzdG9yZSAzMi1iaXQgdmFsdWVzIGZyb20gdW4tYWxpZ25lZAog
ICAgYWRkcmVzc2VzLiAgVGhpcyBpcyByZXF1aXJlZCBmb3IgcHJvY2Vzc29ycyB0aGF0IGRvIG5v
dCBhbGxvdyB1bmFsaWduZWQKICAgIGxvYWRzLiAqLwogI2lmZGVmIEFMSUdOTUVOVF8zMkJJVF9S
RVFVSVJFRAogLyogTm90ZSB0aGF0IGlmIGl0J3MgaW4gYSB2YXJpYWJsZSwgeW91IGNhbiBtZW1j
cHkgaXQgKi8KICNpZmRlZiBXT1JEU19CSUdFTkRJQU4KLSNkZWZpbmUgUFVUXzMyKGFkZHIsdmFs
dWUpIFwKLSAgICB7IFwKLSAgICAgICAgKCh1bnNpZ25lZCBjaGFyICopIChhZGRyKSlbMF0gPSAo
dmFsdWUgPj4gMjQpOyBcCi0gICAgICAgICgodW5zaWduZWQgY2hhciAqKSAoYWRkcikpWzFdID0g
KHZhbHVlID4+IDE2KSAmIDB4ZmY7IFwKLSAgICAgICAgKCh1bnNpZ25lZCBjaGFyICopIChhZGRy
KSlbMl0gPSAodmFsdWUgPj4gOCkgJiAweGZmOyBcCi0gICAgICAgICgodW5zaWduZWQgY2hhciAq
KSAoYWRkcikpWzNdID0gKHZhbHVlKSAgICAgICYgMHhmZjsgXAorI2RlZmluZSBQVVRfMzIoYWRk
ciwgdmFsdWUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFwKKyAgICB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgICgodW5zaWduZWQgY2hhciAq
KShhZGRyKSlbMF0gPSAodmFsdWUgPj4gMjQpOyAgICAgICAgICAgICAgICAgICAgICAgICAgXAor
ICAgICAgICAoKHVuc2lnbmVkIGNoYXIgKikoYWRkcikpWzFdID0gKHZhbHVlID4+IDE2KSAmIDB4
ZmY7ICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgKCh1bnNpZ25lZCBjaGFyICopKGFkZHIp
KVsyXSA9ICh2YWx1ZSA+PiA4KSAmIDB4ZmY7ICAgICAgICAgICAgICAgICAgICBcCisgICAgICAg
ICgodW5zaWduZWQgY2hhciAqKShhZGRyKSlbM10gPSAodmFsdWUpJjB4ZmY7ICAgICAgICAgICAg
ICAgICAgICAgICAgICAgXAogICAgIH0KLSNkZWZpbmUgR0VUXzMyKGFkZHIpICgoKCh1bnNpZ25l
ZCBjaGFyICopIChhZGRyKSlbMF0gPDwgMjQpIHwgIFwKLSAgICAgICAgICAgICAgICAgICAgICAo
KCh1bnNpZ25lZCBjaGFyICopIChhZGRyKSlbMV0gPDwgMTYpIHwgIFwKLSAgICAgICAgICAgICAg
ICAgICAgICAoKCh1bnNpZ25lZCBjaGFyICopIChhZGRyKSlbMl0gPDwgOCkgIHwgIFwKLSAgICAg
ICAgICAgICAgICAgICAgICAoKCh1bnNpZ25lZCBjaGFyICopIChhZGRyKSlbM10pKSAKKyNkZWZp
bmUgR0VUXzMyKGFkZHIpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBcCisgICAgKCgoKHVuc2lnbmVkIGNoYXIgKikoYWRkcikpWzBdIDw8
IDI0KSB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAoKCh1bnNp
Z25lZCBjaGFyICopKGFkZHIpKVsxXSA8PCAxNikgfCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFwKKyAgICAgKCgodW5zaWduZWQgY2hhciAqKShhZGRyKSlbMl0gPDwgOCkgfCAo
KCh1bnNpZ25lZCBjaGFyICopKGFkZHIpKVszXSkpCiAjZWxzZQotI2RlZmluZSBQVVRfMzIoYWRk
cix2YWx1ZSkgXAotICAgIHsgXAotICAgICAgICAoKHVuc2lnbmVkIGNoYXIgKikgKGFkZHIpKVsz
XSA9ICh2YWx1ZSA+PiAyNCk7IFwKLSAgICAgICAgKCh1bnNpZ25lZCBjaGFyICopIChhZGRyKSlb
Ml0gPSAodmFsdWUgPj4gMTYpICYgMHhmZjsgXAotICAgICAgICAoKHVuc2lnbmVkIGNoYXIgKikg
KGFkZHIpKVsxXSA9ICh2YWx1ZSA+PiA4KSAmIDB4ZmY7IFwKLSAgICAgICAgKCh1bnNpZ25lZCBj
aGFyICopIChhZGRyKSlbMF0gPSAodmFsdWUpICAgICAgJiAweGZmOyBcCisjZGVmaW5lIFBVVF8z
MihhZGRyLCB2YWx1ZSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgXAorICAgIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgKCh1bnNpZ25lZCBj
aGFyICopKGFkZHIpKVszXSA9ICh2YWx1ZSA+PiAyNCk7ICAgICAgICAgICAgICAgICAgICAgICAg
ICBcCisgICAgICAgICgodW5zaWduZWQgY2hhciAqKShhZGRyKSlbMl0gPSAodmFsdWUgPj4gMTYp
ICYgMHhmZjsgICAgICAgICAgICAgICAgICAgXAorICAgICAgICAoKHVuc2lnbmVkIGNoYXIgKiko
YWRkcikpWzFdID0gKHZhbHVlID4+IDgpICYgMHhmZjsgICAgICAgICAgICAgICAgICAgIFwKKyAg
ICAgICAgKCh1bnNpZ25lZCBjaGFyICopKGFkZHIpKVswXSA9ICh2YWx1ZSkmMHhmZjsgICAgICAg
ICAgICAgICAgICAgICAgICAgICBcCiAgICAgfQotI2RlZmluZSBHRVRfMzIoYWRkcikgKCgoKHVu
c2lnbmVkIGNoYXIgKikgKGFkZHIpKVszXSA8PCAyNCkgfCAgXAotICAgICAgICAgICAgICAgICAg
ICAgICgoKHVuc2lnbmVkIGNoYXIgKikgKGFkZHIpKVsyXSA8PCAxNikgfCAgXAotICAgICAgICAg
ICAgICAgICAgICAgICgoKHVuc2lnbmVkIGNoYXIgKikgKGFkZHIpKVsxXSA8PCA4KSAgfCAgXAot
ICAgICAgICAgICAgICAgICAgICAgICgoKHVuc2lnbmVkIGNoYXIgKikgKGFkZHIpKVswXSkpIAor
I2RlZmluZSBHRVRfMzIoYWRkcikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAoKCgodW5zaWduZWQgY2hhciAqKShhZGRyKSlb
M10gPDwgMjQpIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICgo
KHVuc2lnbmVkIGNoYXIgKikoYWRkcikpWzJdIDw8IDE2KSB8ICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgXAorICAgICAoKCh1bnNpZ25lZCBjaGFyICopKGFkZHIpKVsxXSA8PCA4
KSB8ICgoKHVuc2lnbmVkIGNoYXIgKikoYWRkcikpWzBdKSkKICNlbmRpZiAvLyBXT1JEU19CSUdF
TkRJQU4KICNlbHNlCi0jZGVmaW5lIFBVVF8zMihhZGRyLHZhbHVlKSAqKCgodWludDMyX3QgKikg
KGFkZHIpKSA9ICh2YWx1ZSkKKyNkZWZpbmUgUFVUXzMyKGFkZHIsIHZhbHVlKSAqKCgodWludDMy
X3QgKikgKGFkZHIpKSA9ICh2YWx1ZSkKICNkZWZpbmUgR0VUXzMyKGFkZHIpICgqKCgodWludDMy
X3QgKikgKGFkZHIpKSkKICNlbmRpZgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2luY2x1ZGUva2V5Lmgg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAv
Y3J5cHRvL2luY2x1ZGUva2V5LmgKaW5kZXggNTViYTEyNjQzNWQ3MzMzNWYxMDk0MDVhMTgwY2Rl
YWQ4YjViZTNmYy4uMzQ5ODExNGIwNTAyYTU1NmNiNWRmNzIwZTA5ZTljODRjYzRkNDBjZSAxMDA2
NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9s
aWJzcnRwL2NyeXB0by9pbmNsdWRlL2tleS5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vaW5jbHVkZS9rZXkuaApAQCAt
NDUsNyArNDUsNyBAQAogI2lmbmRlZiBLRVlfSAogI2RlZmluZSBLRVlfSAogCi0jaW5jbHVkZSAi
cmRieC5oIiAgIC8qIGZvciBzcnRwX3h0ZF9zZXFfbnVtX3QgKi8KKyNpbmNsdWRlICJyZGJ4Lmgi
IC8qIGZvciBzcnRwX3h0ZF9zZXFfbnVtX3QgKi8KICNpbmNsdWRlICJlcnIuaCIKIAogI2lmZGVm
IF9fY3BsdXNwbHVzCkBAIC02MCw5ICs2MCwxMSBAQCB0eXBlZGVmIGVudW0gewogICAgIHNydHBf
a2V5X2V2ZW50X2hhcmRfbGltaXQKIH0gc3J0cF9rZXlfZXZlbnRfdDsKIAotc3J0cF9lcnJfc3Rh
dHVzX3Qgc3J0cF9rZXlfbGltaXRfc2V0KHNydHBfa2V5X2xpbWl0X3Qga2V5LCBjb25zdCBzcnRw
X3h0ZF9zZXFfbnVtX3Qgcyk7CitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2tleV9saW1pdF9zZXQo
c3J0cF9rZXlfbGltaXRfdCBrZXksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgY29uc3Qgc3J0cF94dGRfc2VxX251bV90IHMpOwogCi1zcnRwX2Vycl9zdGF0dXNfdCBzcnRw
X2tleV9saW1pdF9jbG9uZShzcnRwX2tleV9saW1pdF90IG9yaWdpbmFsLCBzcnRwX2tleV9saW1p
dF90ICpuZXdfa2V5KTsKK3NydHBfZXJyX3N0YXR1c190IHNydHBfa2V5X2xpbWl0X2Nsb25lKHNy
dHBfa2V5X2xpbWl0X3Qgb3JpZ2luYWwsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBzcnRwX2tleV9saW1pdF90ICpuZXdfa2V5KTsKIAogc3J0cF9lcnJfc3RhdHVzX3Qg
c3J0cF9rZXlfbGltaXRfY2hlY2soY29uc3Qgc3J0cF9rZXlfbGltaXRfdCBrZXkpOwogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnNydHAvY3J5cHRvL2luY2x1ZGUvbnVsbF9jaXBoZXIuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vaW5jbHVkZS9udWxsX2Np
cGhlci5oCmluZGV4IDRlMTY4ZjFhNzcyZjQ0ZWViZjc1OGE2MjhlZmYyMmYzMGU2YWYyZjIuLjVl
OGM5MWMxMzQ5MTM5YTAwNGI1MzNhYjNiYWZlMGE0MGFiYTAxMmUgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8v
aW5jbHVkZS9udWxsX2NpcGhlci5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vaW5jbHVkZS9udWxsX2NpcGhlci5oCkBA
IC00NCw3ICs0NCw2IEBACiAgKgogICovCiAKLQogI2lmbmRlZiBOVUxMX0NJUEhFUl9ICiAjZGVm
aW5lIE5VTExfQ0lQSEVSX0gKIApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9pbmNsdWRlL3JkYi5oIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0
by9pbmNsdWRlL3JkYi5oCmluZGV4IDQ2NzFhMGEwZDk4YjVlM2Y0MzZiOTUyNDJkNTgwYmI2MzZl
NTE3MDkuLjk4MzE0YzFmM2VlMDQ5MjIyMDE3ODc3NTg1MTJjNGI1M2YyNzBmZTAgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0
cC9jcnlwdG8vaW5jbHVkZS9yZGIuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2luY2x1ZGUvcmRiLmgKQEAgLTcsMjgg
KzcsMjcgQEAKICAqIENpc2NvIFN5c3RlbXMsIEluYy4KICAqLwogCi0KIC8qCi0gKgkKKyAqCiAg
KiBDb3B5cmlnaHQgKGMpIDIwMDEtMjAxNywgQ2lzY28gU3lzdGVtcywgSW5jLgogICogQWxsIHJp
Z2h0cyByZXNlcnZlZC4KLSAqIAorICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291
cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBh
cmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCiAgKiBh
cmUgbWV0OgotICogCisgKgogICogICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVz
dCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAogICogICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAKKyAqCiAgKiAgIFJl
ZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKICAq
ICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcKICAqICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg
bWF0ZXJpYWxzIHByb3ZpZGVkCiAgKiAgIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqIAorICoK
ICAqICAgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgQ2lzY28gU3lzdGVtcywgSW5jLiBub3IgdGhl
IG5hbWVzIG9mIGl0cwogICogICBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBv
ciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQKICAqICAgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhv
dXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotICogCisgKgogICogVEhJUyBT
T0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJV
VE9SUwogICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJ
TkNMVURJTkcsIEJVVCBOT1QKICAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMg
T0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCkBAIC00Nyw5ICs0Niw5IEBACiAjaWZuZGVm
IFJFUExBWV9EQl9ICiAjZGVmaW5lIFJFUExBWV9EQl9ICiAKLSNpbmNsdWRlICJpbnRlZ2Vycy5o
IiAgICAgICAgIC8qIGZvciB1aW50MzJfdCAgICAgKi8KLSNpbmNsdWRlICJkYXRhdHlwZXMuaCIg
ICAgICAgIC8qIGZvciB2MTI4X3QgICAgICAgKi8KLSNpbmNsdWRlICJlcnIuaCIgICAgICAgICAg
ICAgIC8qIGZvciBzcnRwX2Vycl9zdGF0dXNfdCAqLworI2luY2x1ZGUgImludGVnZXJzLmgiICAv
KiBmb3IgdWludDMyX3QgICAgICovCisjaW5jbHVkZSAiZGF0YXR5cGVzLmgiIC8qIGZvciB2MTI4
X3QgICAgICAgKi8KKyNpbmNsdWRlICJlcnIuaCIgICAgICAgLyogZm9yIHNydHBfZXJyX3N0YXR1
c190ICovCiAKICNpZmRlZiBfX2NwbHVzcGx1cwogZXh0ZXJuICJDIiB7CkBAIC03Niw3ICs3NSw2
IEBAIHR5cGVkZWYgc3RydWN0IHsKICAqLwogc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9yZGJfaW5p
dChzcnRwX3JkYl90ICpyZGIpOwogCi0KIC8qCiAgKiBzcnRwX3JkYl9jaGVjawogICoKQEAgLTEw
Myw3ICsxMDEsNiBAQCBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3JkYl9hZGRfaW5kZXgoc3J0cF9y
ZGJfdCAqcmRiLCB1aW50MzJfdCByZGJfaW5kZXgpOwogICogc3J0cF9yZGJfdCB1cG9uIHdoaWNo
IHNydHBfcmRiX2FkZF9pbmRleCBpcyB1c2VkIQogICovCiAKLQogLyoKICAqIHNydHBfcmRiX2lu
Y3JlbWVudChkYikgaW5jcmVtZW50cyB0aGUgc2VxdWVuY2UgbnVtYmVyIGluIGRiLCBpZiBpdCBp
cwogICogbm90IHRvbyBoaWdoCkBAIC0xMjEsNyArMTE4LDYgQEAgc3J0cF9lcnJfc3RhdHVzX3Qg
c3J0cF9yZGJfaW5jcmVtZW50KHNydHBfcmRiX3QgKnJkYik7CiAgKi8KIHVpbnQzMl90IHNydHBf
cmRiX2dldF92YWx1ZShjb25zdCBzcnRwX3JkYl90ICpyZGIpOwogCi0KICNpZmRlZiBfX2NwbHVz
cGx1cwogfQogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2luY2x1ZGUvcmRieC5oIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9p
bmNsdWRlL3JkYnguaAppbmRleCAwMTBlYjAxMmQ3NzQ3YjcwMTJiZDdlM2JlYTAxZGQ0Y2E3Njcx
OWFiLi4yMTk0MTc4ZWUyYWIzZjRjYzk4MGEwYWY4MWMzNzVkMzI4NzljZTg4IDEwMDY0NAotLS0g
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAv
Y3J5cHRvL2luY2x1ZGUvcmRieC5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vaW5jbHVkZS9yZGJ4LmgKQEAgLTksMjYg
KzksMjYgQEAKICAqLwogCiAvKgotICoJCisgKgogICogQ29weXJpZ2h0IChjKSAyMDAxLTIwMTcs
IENpc2NvIFN5c3RlbXMsIEluYy4KICAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKiAKKyAqCiAg
KiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwogICogYXJlIG1ldDoKLSAqIAorICoKICAqICAgUmVk
aXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmln
aHQKICAqICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgotICogCisgKgogICogICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCiAgKiAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCiAgKiAgIGRpc2NsYWltZXIgaW4g
dGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZAogICogICB3
aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKiAKKyAqCiAgKiAgIE5laXRoZXIgdGhlIG5hbWUgb2Yg
dGhlIENpc2NvIFN5c3RlbXMsIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKICAqICAgY29udHJp
YnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVk
CiAgKiAgIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4g
cGVybWlzc2lvbi4KLSAqIAorICoKICAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhF
IENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKICAqICJBUyBJUyIgQU5EIEFOWSBF
WFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCiAgKiBMSU1J
VEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklU
TkVTUwpAQCAtNTgsMTAgKzU4LDEwIEBAIGV4dGVybiAiQyIgewogCiAjaWZuZGVmIFJPQ19URVNU
CiAKLXR5cGVkZWYgdWludDE2X3Qgc3J0cF9zZXF1ZW5jZV9udW1iZXJfdDsgICAvKiAxNiBiaXQg
c2VxdWVuY2UgbnVtYmVyICAqLwotdHlwZWRlZiB1aW50MzJfdCBzcnRwX3JvbGxvdmVyX2NvdW50
ZXJfdDsgIC8qIDMyIGJpdCByb2xsb3ZlciBjb3VudGVyICovCit0eXBlZGVmIHVpbnQxNl90IHNy
dHBfc2VxdWVuY2VfbnVtYmVyX3Q7ICAvKiAxNiBiaXQgc2VxdWVuY2UgbnVtYmVyICAqLwordHlw
ZWRlZiB1aW50MzJfdCBzcnRwX3JvbGxvdmVyX2NvdW50ZXJfdDsgLyogMzIgYml0IHJvbGxvdmVy
IGNvdW50ZXIgKi8KIAotI2Vsc2UgIC8qIHVzZSBzbWFsbCBzZXFfbnVtIGFuZCByb2MgZGF0YXR5
cGVzIGZvciB0ZXN0aW5nIHB1cnBvc2VzICovCisjZWxzZSAvKiB1c2Ugc21hbGwgc2VxX251bSBh
bmQgcm9jIGRhdGF0eXBlcyBmb3IgdGVzdGluZyBwdXJwb3NlcyAqLwogCiB0eXBlZGVmIHVuc2ln
bmVkIGNoYXIgc3J0cF9zZXF1ZW5jZV9udW1iZXJfdDsgLyogOCBiaXQgc2VxdWVuY2UgbnVtYmVy
ICAgKi8KIHR5cGVkZWYgdWludDE2X3Qgc3J0cF9yb2xsb3Zlcl9jb3VudGVyX3Q7ICAgICAvKiAx
NiBiaXQgcm9sbG92ZXIgY291bnRlciAqLwpAQCAtNjksNyArNjksNyBAQCB0eXBlZGVmIHVpbnQx
Nl90IHNydHBfcm9sbG92ZXJfY291bnRlcl90OyAgICAgLyogMTYgYml0IHJvbGxvdmVyIGNvdW50
ZXIgKi8KICNlbmRpZgogCiAjZGVmaW5lIHNlcV9udW1fbWVkaWFuICgxIDw8ICg4ICogc2l6ZW9m
KHNydHBfc2VxdWVuY2VfbnVtYmVyX3QpIC0gMSkpCi0jZGVmaW5lIHNlcV9udW1fbWF4ICAgICgx
IDw8ICg4ICogc2l6ZW9mKHNydHBfc2VxdWVuY2VfbnVtYmVyX3QpKSkKKyNkZWZpbmUgc2VxX251
bV9tYXggKDEgPDwgKDggKiBzaXplb2Yoc3J0cF9zZXF1ZW5jZV9udW1iZXJfdCkpKQogCiAvKgog
ICogQW4gcnRwX3h0ZF9zZXFfbnVtX3QgaXMgYSA2NC1iaXQgdW5zaWduZWQgaW50ZWdlciB1c2Vk
IGFzIGFuICdleHRlbmRlZCcKQEAgLTc3LDcgKzc3LDYgQEAgdHlwZWRlZiB1aW50MTZfdCBzcnRw
X3JvbGxvdmVyX2NvdW50ZXJfdDsgICAgIC8qIDE2IGJpdCByb2xsb3ZlciBjb3VudGVyICovCiAg
Ki8KIHR5cGVkZWYgdWludDY0X3Qgc3J0cF94dGRfc2VxX251bV90OwogCi0KIC8qCiAgKiBBbiBz
cnRwX3JkYnhfdCBpcyBhIHJlcGxheSBkYXRhYmFzZSB3aXRoIGV4dGVuZGVkIHJhbmdlOyBpdCB1
c2VzIGFuCiAgKiB4dGRfc2VxX251bV90IGFuZCBhIGJpdG1hc2sgb2YgcmVjZW50bHkgcmVjZWl2
ZWQgaW5kaWNlcy4KQEAgLTg3LDcgKzg2LDYgQEAgdHlwZWRlZiBzdHJ1Y3QgewogICAgIGJpdHZl
Y3Rvcl90IGJpdG1hc2s7CiB9IHNydHBfcmRieF90OwogCi0KIC8qCiAgKiBzcnRwX3JkYnhfaW5p
dChyZGJ4X3B0ciwgd3MpCiAgKgpAQCAtOTYsNyArOTQsNiBAQCB0eXBlZGVmIHN0cnVjdCB7CiAg
Ki8KIHNydHBfZXJyX3N0YXR1c190IHNydHBfcmRieF9pbml0KHNydHBfcmRieF90ICpyZGJ4LCB1
bnNpZ25lZCBsb25nIHdzKTsKIAotCiAvKgogICogc3J0cF9yZGJ4X2RlYWxsb2MocmRieF9wdHIp
CiAgKgpAQCAtMTA0LDcgKzEwMSw2IEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfcmRieF9pbml0
KHNydHBfcmRieF90ICpyZGJ4LCB1bnNpZ25lZCBsb25nIHdzKTsKICAqLwogc3J0cF9lcnJfc3Rh
dHVzX3Qgc3J0cF9yZGJ4X2RlYWxsb2Moc3J0cF9yZGJ4X3QgKnJkYngpOwogCi0KIC8qCiAgKiBz
cnRwX3JkYnhfZXN0aW1hdGVfaW5kZXgocmRieCwgZ3Vlc3MsIHMpCiAgKgpAQCAtMTEzLDcgKzEw
OSw5IEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfcmRieF9kZWFsbG9jKHNydHBfcmRieF90ICpy
ZGJ4KTsKICAqIGluZGV4IHRvIHdoaWNoIHMgY29ycmVzcG9uZHMsIGFuZCByZXR1cm5zIHRoZSBk
aWZmZXJlbmNlIGJldHdlZW4KICAqICpndWVzcyBhbmQgdGhlIGxvY2FsbHkgc3RvcmVkIHN5bmNo
IGluZm8KICAqLwotaW50MzJfdCBzcnRwX3JkYnhfZXN0aW1hdGVfaW5kZXgoY29uc3Qgc3J0cF9y
ZGJ4X3QgKnJkYngsIHNydHBfeHRkX3NlcV9udW1fdCAqZ3Vlc3MsIHNydHBfc2VxdWVuY2VfbnVt
YmVyX3Qgcyk7CitpbnQzMl90IHNydHBfcmRieF9lc3RpbWF0ZV9pbmRleChjb25zdCBzcnRwX3Jk
YnhfdCAqcmRieCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfeHRkX3Nl
cV9udW1fdCAqZ3Vlc3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcnRwX3Nl
cXVlbmNlX251bWJlcl90IHMpOwogCiAvKgogICogc3J0cF9yZGJ4X2NoZWNrKHJkYngsIGRlbHRh
KTsKQEAgLTEzNiw3ICsxMzQsNiBAQCBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3JkYnhfY2hlY2so
Y29uc3Qgc3J0cF9yZGJ4X3QgKnJkYngsIGludCBkaWZmZXJlbmNlKTsKICAqLwogc3J0cF9lcnJf
c3RhdHVzX3Qgc3J0cF9yZGJ4X2FkZF9pbmRleChzcnRwX3JkYnhfdCAqcmRieCwgaW50IGRlbHRh
KTsKIAotCiAvKgogICogc3J0cF9yZGJ4X3NldF9yb2MocmRieCwgcm9jKSBpbml0YWxpemVzIHRo
ZSBzcnRwX3JkYnhfdCBhdCB0aGUgbG9jYXRpb24gcmRieAogICogdG8gaGF2ZSB0aGUgcm9sbG92
ZXIgY291bnRlciB2YWx1ZSByb2MuICBJZiB0aGF0IHZhbHVlIGlzIGxlc3MgdGhhbgpAQCAtMTQ3
LDcgKzE0NCw4IEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfcmRieF9hZGRfaW5kZXgoc3J0cF9y
ZGJ4X3QgKnJkYngsIGludCBkZWx0YSk7CiBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3JkYnhfc2V0
X3JvYyhzcnRwX3JkYnhfdCAqcmRieCwgdWludDMyX3Qgcm9jKTsKIAogLyoKLSAqIHNydHBfcmRi
eF9nZXRfcGFja2V0X2luZGV4KHJkYngpIHJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSByb2xsb3Zl
ciBjb3VudGVyIGZvcgorICogc3J0cF9yZGJ4X2dldF9wYWNrZXRfaW5kZXgocmRieCkgcmV0dXJu
cyB0aGUgdmFsdWUgb2YgdGhlIHJvbGxvdmVyIGNvdW50ZXIKKyAqIGZvcgogICogdGhlIHNydHBf
cmRieF90IHBvaW50ZWQgdG8gYnkgcmRieAogICoKICAqLwpAQCAtMTY2LDE0ICsxNjQsMTIgQEAg
c3J0cF94dGRfc2VxX251bV90IHNydHBfcmRieF9nZXRfcGFja2V0X2luZGV4KGNvbnN0IHNydHBf
cmRieF90ICpyZGJ4KTsKICAqLwogdW5zaWduZWQgbG9uZyBzcnRwX3JkYnhfZ2V0X3dpbmRvd19z
aXplKGNvbnN0IHNydHBfcmRieF90ICpyZGJ4KTsKIAotCiAvKiBpbmRleF9pbml0KCZwaSkgaW5p
dGlhbGl6ZXMgYSBwYWNrZXQgaW5kZXggcGkgKHNldHMgaXQgdG8gemVybykgKi8KIHZvaWQgc3J0
cF9pbmRleF9pbml0KHNydHBfeHRkX3NlcV9udW1fdCAqcGkpOwogCiAvKiBpbmRleF9hZHZhbmNl
KCZwaSwgcykgYWR2YW5jZXMgYSB4dGRfc2VxX251bV90IGZvcndhcmQgYnkgcyAqLwogdm9pZCBz
cnRwX2luZGV4X2FkdmFuY2Uoc3J0cF94dGRfc2VxX251bV90ICpwaSwgc3J0cF9zZXF1ZW5jZV9u
dW1iZXJfdCBzKTsKIAotCiAvKgogICogc3J0cF9pbmRleF9ndWVzcyhsb2NhbCwgZ3Vlc3MsIHMp
CiAgKgpAQCAtMTgzLDcgKzE3OSw5IEBAIHZvaWQgc3J0cF9pbmRleF9hZHZhbmNlKHNydHBfeHRk
X3NlcV9udW1fdCAqcGksIHNydHBfc2VxdWVuY2VfbnVtYmVyX3Qgcyk7CiAgKiBndWVzcyBvZiB0
aGUgcGFja2V0IGluZGV4IHRvIHdoaWNoIHMgY29ycmVzcG9uZHMsIGFuZCByZXR1cm5zIHRoZQog
ICogZGlmZmVyZW5jZSBiZXR3ZWVuICpndWVzcyBhbmQgKmxvY2FsCiAgKi8KLWludDMyX3Qgc3J0
cF9pbmRleF9ndWVzcyhjb25zdCBzcnRwX3h0ZF9zZXFfbnVtX3QgKmxvY2FsLCBzcnRwX3h0ZF9z
ZXFfbnVtX3QgKmd1ZXNzLCBzcnRwX3NlcXVlbmNlX251bWJlcl90IHMpOworaW50MzJfdCBzcnRw
X2luZGV4X2d1ZXNzKGNvbnN0IHNydHBfeHRkX3NlcV9udW1fdCAqbG9jYWwsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgc3J0cF94dGRfc2VxX251bV90ICpndWVzcywKKyAgICAgICAgICAgICAg
ICAgICAgICAgICBzcnRwX3NlcXVlbmNlX251bWJlcl90IHMpOwogCiAvKgogICogc3J0cF9yZGJ4
X2dldF9yb2MocmRieCkKQEAgLTIwMCw5ICsxOTgsOSBAQCB1aW50MzJfdCBzcnRwX3JkYnhfZ2V0
X3JvYyhjb25zdCBzcnRwX3JkYnhfdCAqcmRieCk7CiAgKiByb2xsb3ZlciBjb3VudGVyIHZhbHVl
LCB0aGVuIHRoZSBmdW5jdGlvbiByZXR1cm5zCiAgKiBzcnRwX2Vycl9zdGF0dXNfcmVwbGF5X29s
ZCwgb3RoZXJ3aXNlLCBzcnRwX2Vycl9zdGF0dXNfb2sgaXMgcmV0dXJuZWQuCiAgKi8KLXNydHBf
ZXJyX3N0YXR1c190IHNydHBfcmRieF9zZXRfcm9jX3NlcSAoc3J0cF9yZGJ4X3QgKnJkYngsCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IHJvYywKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDE2X3Qgc2VxKTsKK3Ny
dHBfZXJyX3N0YXR1c190IHNydHBfcmRieF9zZXRfcm9jX3NlcShzcnRwX3JkYnhfdCAqcmRieCwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCByb2MsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDE2X3Qgc2VxKTsKIAog
I2lmZGVmIF9fY3BsdXNwbHVzCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2luY2x1ZGUvc3RhdC5oIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2Ny
eXB0by9pbmNsdWRlL3N0YXQuaAppbmRleCBlOGNmMzYwNWE4NjAxODAyMTM0OGE2MmY3MjBlNDgz
NzM0NzI3NzM0Li4xODk0ZTA0MWFhN2MzNDJjMDRmMTk4OTlhYTMxMDJiNTRlNDUxYWFhIDEwMDY0
NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnNydHAvY3J5cHRvL2luY2x1ZGUvc3RhdC5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vaW5jbHVkZS9zdGF0LmgKQEAg
LTEsNiArMSw2IEBACiAvKgogICogc3RhdHMuaAotICogCisgKgogICogaW50ZXJmYWNlIHRvIHN0
YXRpc3RpY2FsIHRlc3QgZnVuY3Rpb25zCiAgKgogICogRGF2aWQgQS4gTWNHcmV3CkBAIC04LDI2
ICs4LDI2IEBACiAgKi8KIAogLyoKLSAqCQorICoKICAqIENvcHlyaWdodChjKSAyMDAxLTIwMTcs
IENpc2NvIFN5c3RlbXMsIEluYy4KICAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKiAKKyAqCiAg
KiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwogICogYXJlIG1ldDoKLSAqIAorICoKICAqICAgUmVk
aXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmln
aHQKICAqICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgotICogCisgKgogICogICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCiAgKiAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCiAgKiAgIGRpc2NsYWltZXIgaW4g
dGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZAogICogICB3
aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKiAKKyAqCiAgKiAgIE5laXRoZXIgdGhlIG5hbWUgb2Yg
dGhlIENpc2NvIFN5c3RlbXMsIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKICAqICAgY29udHJp
YnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVk
CiAgKiAgIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4g
cGVybWlzc2lvbi4KLSAqIAorICoKICAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhF
IENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKICAqICJBUyBJUyIgQU5EIEFOWSBF
WFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCiAgKiBMSU1J
VEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklU
TkVTUwpAQCAtNDMsMTIgKzQzLDExIEBACiAgKgogICovCiAKLQogI2lmbmRlZiBTVEFUX0gKICNk
ZWZpbmUgU1RBVF9ICiAKLSNpbmNsdWRlICJkYXRhdHlwZXMuaCIgICAgICAgLyogZm9yIHVpbnQ4
X3QgICAgICAgICAgICAgICAgICAgICAgICovCi0jaW5jbHVkZSAiZXJyLmgiICAgICAgICAgICAg
IC8qIGZvciBzcnRwX2Vycl9zdGF0dXNfdCAgICAgICAgICAgICAqLworI2luY2x1ZGUgImRhdGF0
eXBlcy5oIiAvKiBmb3IgdWludDhfdCAgICAgICAgICAgICAgICAgICAgICAgKi8KKyNpbmNsdWRl
ICJlcnIuaCIgICAgICAgLyogZm9yIHNydHBfZXJyX3N0YXR1c190ICAgICAgICAgICAgICovCiAK
ICNpZmRlZiBfX2NwbHVzcGx1cwogZXh0ZXJuICJDIiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2tlcm5l
bC9hbGxvYy5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9saWJzcnRwL2NyeXB0by9rZXJuZWwvYWxsb2MuYwppbmRleCBjYmQ4ODc3Yzg3ZjA1MWNhZWJk
YzBlNTI3MTI5MDMxMjFmYzk1YjgxLi5kYmU1ODI2NmY0M2E2ODQ5ZWQ5NjVhYzdmNzg3YWZmZDBl
MmE4MjIxIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2tlcm5lbC9hbGxvYy5jCisrKyBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8va2VybmVs
L2FsbG9jLmMKQEAgLTEsMzIgKzEsMzIgQEAKIC8qCiAgKiBhbGxvYy5jCiAgKgotICogbWVtb3J5
IGFsbG9jYXRpb24gYW5kIGRlYWxsb2NhdGlvbiAKKyAqIG1lbW9yeSBhbGxvY2F0aW9uIGFuZCBk
ZWFsbG9jYXRpb24KICAqCiAgKiBEYXZpZCBBLiBNY0dyZXcKICAqIENpc2NvIFN5c3RlbXMsIElu
Yy4KICAqLwogLyoKLSAqCQorICoKICAqIENvcHlyaWdodCAoYykgMjAwMS0yMDE3IENpc2NvIFN5
c3RlbXMsIEluYy4KICAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKiAKKyAqCiAgKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucwogICogYXJlIG1ldDoKLSAqIAorICoKICAqICAgUmVkaXN0cmlidXRp
b25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKICAqICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyLgotICogCisgKgogICogICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy
ZXByb2R1Y2UgdGhlIGFib3ZlCiAgKiAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCiAgKiAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZAogICogICB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCi0gKiAKKyAqCiAgKiAgIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIENpc2Nv
IFN5c3RlbXMsIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKICAqICAgY29udHJpYnV0b3JzIG1h
eSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkCiAgKiAgIGZy
b20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lv
bi4KLSAqIAorICoKICAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdI
VCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKICAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCiAgKiBMSU1JVEVEIFRPLCBU
SEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUwpAQCAt
NDMsNyArNDMsNyBAQAogICovCiAKICNpZmRlZiBIQVZFX0NPTkZJR19ICi0gICAgI2luY2x1ZGUg
PGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbmZpZy5oPgogI2VuZGlmCiAKICNpbmNsdWRlICJhbGxv
Yy5oIgpAQCAtNTEsOSArNTEsOSBAQAogCiAvKiB0aGUgZGVidWcgbW9kdWxlIGZvciBtZW1vcnkg
YWxsb2NhdGlvbiAqLwogCi1zcnRwX2RlYnVnX21vZHVsZV90IG1vZF9hbGxvYyA9IHsKLSAgMCwg
ICAgICAgICAgICAgICAgICAvKiBkZWJ1Z2dpbmcgaXMgb2ZmIGJ5IGRlZmF1bHQgKi8KLSAgImFs
bG9jIiAgICAgICAgICAgICAvKiBwcmludGFibGUgbmFtZSBmb3IgbW9kdWxlICAgKi8KK3NydHBf
ZGVidWdfbW9kdWxlX3Qgc3J0cF9tb2RfYWxsb2MgPSB7CisgICAgMCwgICAgICAvKiBkZWJ1Z2dp
bmcgaXMgb2ZmIGJ5IGRlZmF1bHQgKi8KKyAgICAiYWxsb2MiIC8qIHByaW50YWJsZSBuYW1lIGZv
ciBtb2R1bGUgICAqLwogfTsKIAogLyoKQEAgLTY3LDI5ICs2NywzNSBAQCBzcnRwX2RlYnVnX21v
ZHVsZV90IG1vZF9hbGxvYyA9IHsKIAogI2lmIGRlZmluZWQoSEFWRV9TVERMSUJfSCkKIAotdm9p
ZCAqIHNydHBfY3J5cHRvX2FsbG9jKHNpemVfdCBzaXplKSB7Ci0gIHZvaWQgKnB0cjsKK3ZvaWQg
KnNydHBfY3J5cHRvX2FsbG9jKHNpemVfdCBzaXplKQoreworICAgIHZvaWQgKnB0cjsKIAotICBw
dHIgPSBtYWxsb2Moc2l6ZSk7Ci0gICAgCi0gIGlmIChwdHIpIHsKLSAgICBkZWJ1Z19wcmludCht
b2RfYWxsb2MsICIobG9jYXRpb246ICVwKSBhbGxvY2F0ZWQiLCBwdHIpOwotICB9IGVsc2Ugewot
ICAgIGRlYnVnX3ByaW50KG1vZF9hbGxvYywgImFsbG9jYXRpb24gZmFpbGVkIChhc2tlZCBmb3Ig
JWQgYnl0ZXMpXG4iLCBzaXplKTsKLSAgfQorICAgIGlmICghc2l6ZSkgeworICAgICAgICByZXR1
cm4gTlVMTDsKKyAgICB9CiAKLSAgcmV0dXJuIHB0cjsKLX0KKyAgICBwdHIgPSBjYWxsb2MoMSwg
c2l6ZSk7CiAKLXZvaWQgc3J0cF9jcnlwdG9fZnJlZSh2b2lkICpwdHIpIHsKKyAgICBpZiAocHRy
KSB7CisgICAgICAgIGRlYnVnX3ByaW50KHNydHBfbW9kX2FsbG9jLCAiKGxvY2F0aW9uOiAlcCkg
YWxsb2NhdGVkIiwgcHRyKTsKKyAgICB9IGVsc2UgeworICAgICAgICBkZWJ1Z19wcmludChzcnRw
X21vZF9hbGxvYywgImFsbG9jYXRpb24gZmFpbGVkIChhc2tlZCBmb3IgJWQgYnl0ZXMpXG4iLAor
ICAgICAgICAgICAgICAgICAgICBzaXplKTsKKyAgICB9CisKKyAgICByZXR1cm4gcHRyOworfQog
Ci0gIGRlYnVnX3ByaW50KG1vZF9hbGxvYywgIihsb2NhdGlvbjogJXApIGZyZWVkIiwgcHRyKTsK
K3ZvaWQgc3J0cF9jcnlwdG9fZnJlZSh2b2lkICpwdHIpCit7CisgICAgZGVidWdfcHJpbnQoc3J0
cF9tb2RfYWxsb2MsICIobG9jYXRpb246ICVwKSBmcmVlZCIsIHB0cik7CiAKLSAgZnJlZShwdHIp
OworICAgIGZyZWUocHRyKTsKIH0KIAotI2Vsc2UgIC8qIHdlIG5lZWQgdG8gZGVmaW5lIG91ciBv
d24gbWVtb3J5IGFsbG9jYXRpb24gcm91dGluZXMgKi8KKyNlbHNlIC8qIHdlIG5lZWQgdG8gZGVm
aW5lIG91ciBvd24gbWVtb3J5IGFsbG9jYXRpb24gcm91dGluZXMgKi8KIAotI2Vycm9yIG5vIG1l
bW9yeSBhbGxvY2F0aW9uIGRlZmluZWQgeWV0IAorI2Vycm9yIG5vIG1lbW9yeSBhbGxvY2F0aW9u
IGRlZmluZWQgeWV0CiAKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9rZXJuZWwvY3J5cHRvX2tl
cm5lbC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9s
aWJzcnRwL2NyeXB0by9rZXJuZWwvY3J5cHRvX2tlcm5lbC5jCmluZGV4IDNjYWZmMGUxMjNjZTk2
NTViOTM3ZmU4YThlYTFjMWMwYzQyMDBhOTQuLmFiNDQ5MmU4YTY0NDc4MDhkMmI1NWUwYjg3ZmZi
MTRiODFjYTJlNjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8va2VybmVsL2NyeXB0b19rZXJuZWwuYworKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAv
Y3J5cHRvL2tlcm5lbC9jcnlwdG9fa2VybmVsLmMKQEAgLTQyLDYwICs0MiwyMiBAQAogICoKICAq
LwogCi0KICNpZmRlZiBIQVZFX0NPTkZJR19ICi0gICAgI2luY2x1ZGUgPGNvbmZpZy5oPgorI2lu
Y2x1ZGUgPGNvbmZpZy5oPgogI2VuZGlmCiAKICNpbmNsdWRlICJhbGxvYy5oIgogCiAjaW5jbHVk
ZSAiY3J5cHRvX2tlcm5lbC5oIgorI2luY2x1ZGUgImNpcGhlcl90eXBlcy5oIgogCiAvKiB0aGUg
ZGVidWcgbW9kdWxlIGZvciB0aGUgY3J5cHRvX2tlcm5lbCAqLwogCiBzcnRwX2RlYnVnX21vZHVs
ZV90IHNydHBfbW9kX2NyeXB0b19rZXJuZWwgPSB7Ci0gICAgMCwgICAgICAgICAgICAgICAgLyog
ZGVidWdnaW5nIGlzIG9mZiBieSBkZWZhdWx0ICovCi0gICAgImNyeXB0byBrZXJuZWwiICAgLyog
cHJpbnRhYmxlIG5hbWUgZm9yIG1vZHVsZSAgICovCisgICAgMCwgICAgICAgICAgICAgIC8qIGRl
YnVnZ2luZyBpcyBvZmYgYnkgZGVmYXVsdCAqLworICAgICJjcnlwdG8ga2VybmVsIiAvKiBwcmlu
dGFibGUgbmFtZSBmb3IgbW9kdWxlICAgKi8KIH07CiAKLS8qCi0gKiBvdGhlciBnZW5lcmljIGRl
YnVnIG1vZHVsZXMgdGhhdCBjYW4gYmUgaW5jbHVkZWQgaW4gdGhlIGtlcm5lbAotICovCi0KLWV4
dGVybiBzcnRwX2RlYnVnX21vZHVsZV90IHNydHBfbW9kX2F1dGg7Ci1leHRlcm4gc3J0cF9kZWJ1
Z19tb2R1bGVfdCBzcnRwX21vZF9jaXBoZXI7Ci1leHRlcm4gc3J0cF9kZWJ1Z19tb2R1bGVfdCBt
b2Rfc3RhdDsKLWV4dGVybiBzcnRwX2RlYnVnX21vZHVsZV90IG1vZF9hbGxvYzsKLQotLyoKLSAq
IGNpcGhlciB0eXBlcyB0aGF0IGNhbiBiZSBpbmNsdWRlZCBpbiB0aGUga2VybmVsCi0gKi8KLQot
ZXh0ZXJuIHNydHBfY2lwaGVyX3R5cGVfdCBzcnRwX251bGxfY2lwaGVyOwotZXh0ZXJuIHNydHBf
Y2lwaGVyX3R5cGVfdCBzcnRwX2Flc19pY21fMTI4OwotZXh0ZXJuIHNydHBfY2lwaGVyX3R5cGVf
dCBzcnRwX2Flc19pY21fMjU2OwotI2lmZGVmIE9QRU5TU0wKLWV4dGVybiBzcnRwX2NpcGhlcl90
eXBlX3Qgc3J0cF9hZXNfaWNtXzE5MjsKLWV4dGVybiBzcnRwX2NpcGhlcl90eXBlX3Qgc3J0cF9h
ZXNfZ2NtXzEyOF9vcGVuc3NsOwotZXh0ZXJuIHNydHBfY2lwaGVyX3R5cGVfdCBzcnRwX2Flc19n
Y21fMjU2X29wZW5zc2w7Ci0jZW5kaWYKLQotLyogZGVidWcgbW9kdWxlcyBmb3IgY2lwaGVyIHR5
cGVzICovCi1leHRlcm4gc3J0cF9kZWJ1Z19tb2R1bGVfdCBzcnRwX21vZF9hZXNfaWNtOwotI2lm
ZGVmIE9QRU5TU0wKLWV4dGVybiBzcnRwX2RlYnVnX21vZHVsZV90IHNydHBfbW9kX2Flc19nY207
Ci0jZW5kaWYKLQotLyoKLSAqIGF1dGggZnVuYyB0eXBlcyB0aGF0IGNhbiBiZSBpbmNsdWRlZCBp
biB0aGUga2VybmVsCi0gKi8KLQotZXh0ZXJuIHNydHBfYXV0aF90eXBlX3Qgc3J0cF9udWxsX2F1
dGg7Ci1leHRlcm4gc3J0cF9hdXRoX3R5cGVfdCBzcnRwX2htYWM7Ci0KLS8qIGRlYnVnIG1vZHVs
ZXMgZm9yIGF1dGggdHlwZXMgKi8KLWV4dGVybiBzcnRwX2RlYnVnX21vZHVsZV90IHNydHBfbW9k
X2htYWM7Ci0KIC8qIGNyeXB0b19rZXJuZWwgaXMgYSBnbG9iYWwgdmFyaWFibGUsIHRoZSBvbmx5
IG9uZSBvZiBpdHMgZGF0YXR5cGUgKi8KIAogc3J0cF9jcnlwdG9fa2VybmVsX3QgY3J5cHRvX2tl
cm5lbCA9IHsKQEAgLTEwNywxMyArNjksMTIgQEAgc3J0cF9jcnlwdG9fa2VybmVsX3QgY3J5cHRv
X2tlcm5lbCA9IHsKIAogI2RlZmluZSBNQVhfUk5HX1RSSUFMUyAyNQogCi1zcnRwX2Vycl9zdGF0
dXNfdCBzcnRwX2NyeXB0b19rZXJuZWxfaW5pdCAoKQorc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9j
cnlwdG9fa2VybmVsX2luaXQoKQogewogICAgIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKIAog
ICAgIC8qIGNoZWNrIHRoZSBzZWN1cml0eSBzdGF0ZSAqLwogICAgIGlmIChjcnlwdG9fa2VybmVs
LnN0YXRlID09IHNydHBfY3J5cHRvX2tlcm5lbF9zdGF0ZV9zZWN1cmUpIHsKLQogICAgICAgICAv
KgogICAgICAgICAgKiB3ZSdyZSBhbHJlYWR5IGluIHRoZSBzZWN1cmUgc3RhdGUsIGJ1dCB3ZSd2
ZSBiZWVuIGFza2VkIHRvCiAgICAgICAgICAqIHJlLWluaXRpYWxpemUsIHNvIHdlIGp1c3QgcmUt
cnVuIHRoZSBzZWxmLXRlc3RzIGFuZCB0aGVuIHJldHVybgpAQCAtMTQwLDI1ICsxMDEsMjggQEAg
c3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fa2VybmVsX2luaXQgKCkKICAgICBpZiAoc3Rh
dHVzKSB7CiAgICAgICAgIHJldHVybiBzdGF0dXM7CiAgICAgfQotICAgIHN0YXR1cyA9IHNydHBf
Y3J5cHRvX2tlcm5lbF9sb2FkX2RlYnVnX21vZHVsZSgmbW9kX3N0YXQpOworICAgIHN0YXR1cyA9
IHNydHBfY3J5cHRvX2tlcm5lbF9sb2FkX2RlYnVnX21vZHVsZSgmc3J0cF9tb2Rfc3RhdCk7CiAg
ICAgaWYgKHN0YXR1cykgewogICAgICAgICByZXR1cm4gc3RhdHVzOwogICAgIH0KLSAgICBzdGF0
dXMgPSBzcnRwX2NyeXB0b19rZXJuZWxfbG9hZF9kZWJ1Z19tb2R1bGUoJm1vZF9hbGxvYyk7Cisg
ICAgc3RhdHVzID0gc3J0cF9jcnlwdG9fa2VybmVsX2xvYWRfZGVidWdfbW9kdWxlKCZzcnRwX21v
ZF9hbGxvYyk7CiAgICAgaWYgKHN0YXR1cykgewogICAgICAgICByZXR1cm4gc3RhdHVzOwogICAg
IH0KIAogICAgIC8qIGxvYWQgY2lwaGVyIHR5cGVzICovCi0gICAgc3RhdHVzID0gc3J0cF9jcnlw
dG9fa2VybmVsX2xvYWRfY2lwaGVyX3R5cGUoJnNydHBfbnVsbF9jaXBoZXIsIFNSVFBfTlVMTF9D
SVBIRVIpOworICAgIHN0YXR1cyA9IHNydHBfY3J5cHRvX2tlcm5lbF9sb2FkX2NpcGhlcl90eXBl
KCZzcnRwX251bGxfY2lwaGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFNSVFBfTlVMTF9DSVBIRVIpOwogICAgIGlmIChzdGF0dXMpIHsKICAgICAg
ICAgcmV0dXJuIHN0YXR1czsKICAgICB9Ci0gICAgc3RhdHVzID0gc3J0cF9jcnlwdG9fa2VybmVs
X2xvYWRfY2lwaGVyX3R5cGUoJnNydHBfYWVzX2ljbV8xMjgsIFNSVFBfQUVTX0lDTV8xMjgpOwor
ICAgIHN0YXR1cyA9IHNydHBfY3J5cHRvX2tlcm5lbF9sb2FkX2NpcGhlcl90eXBlKCZzcnRwX2Fl
c19pY21fMTI4LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFNSVFBfQUVTX0lDTV8xMjgpOwogICAgIGlmIChzdGF0dXMpIHsKICAgICAgICAgcmV0dXJu
IHN0YXR1czsKICAgICB9Ci0gICAgc3RhdHVzID0gc3J0cF9jcnlwdG9fa2VybmVsX2xvYWRfY2lw
aGVyX3R5cGUoJnNydHBfYWVzX2ljbV8yNTYsIFNSVFBfQUVTX0lDTV8yNTYpOworICAgIHN0YXR1
cyA9IHNydHBfY3J5cHRvX2tlcm5lbF9sb2FkX2NpcGhlcl90eXBlKCZzcnRwX2Flc19pY21fMjU2
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNSVFBf
QUVTX0lDTV8yNTYpOwogICAgIGlmIChzdGF0dXMpIHsKICAgICAgICAgcmV0dXJuIHN0YXR1czsK
ICAgICB9CkBAIC0xNjcsMTUgKzEzMSwxOCBAQCBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NyeXB0
b19rZXJuZWxfaW5pdCAoKQogICAgICAgICByZXR1cm4gc3RhdHVzOwogICAgIH0KICNpZmRlZiBP
UEVOU1NMCi0gICAgc3RhdHVzID0gc3J0cF9jcnlwdG9fa2VybmVsX2xvYWRfY2lwaGVyX3R5cGUo
JnNydHBfYWVzX2ljbV8xOTIsIFNSVFBfQUVTX0lDTV8xOTIpOworICAgIHN0YXR1cyA9IHNydHBf
Y3J5cHRvX2tlcm5lbF9sb2FkX2NpcGhlcl90eXBlKCZzcnRwX2Flc19pY21fMTkyLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNSVFBfQUVTX0lDTV8x
OTIpOwogICAgIGlmIChzdGF0dXMpIHsKICAgICAgICAgcmV0dXJuIHN0YXR1czsKICAgICB9Ci0g
ICAgc3RhdHVzID0gc3J0cF9jcnlwdG9fa2VybmVsX2xvYWRfY2lwaGVyX3R5cGUoJnNydHBfYWVz
X2djbV8xMjhfb3BlbnNzbCwgU1JUUF9BRVNfR0NNXzEyOCk7CisgICAgc3RhdHVzID0gc3J0cF9j
cnlwdG9fa2VybmVsX2xvYWRfY2lwaGVyX3R5cGUoJnNydHBfYWVzX2djbV8xMjhfb3BlbnNzbCwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTUlRQX0FF
U19HQ01fMTI4KTsKICAgICBpZiAoc3RhdHVzKSB7CiAgICAgICAgIHJldHVybiBzdGF0dXM7CiAg
ICAgfQotICAgIHN0YXR1cyA9IHNydHBfY3J5cHRvX2tlcm5lbF9sb2FkX2NpcGhlcl90eXBlKCZz
cnRwX2Flc19nY21fMjU2X29wZW5zc2wsIFNSVFBfQUVTX0dDTV8yNTYpOworICAgIHN0YXR1cyA9
IHNydHBfY3J5cHRvX2tlcm5lbF9sb2FkX2NpcGhlcl90eXBlKCZzcnRwX2Flc19nY21fMjU2X29w
ZW5zc2wsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
U1JUUF9BRVNfR0NNXzI1Nik7CiAgICAgaWYgKHN0YXR1cykgewogICAgICAgICByZXR1cm4gc3Rh
dHVzOwogICAgIH0KQEAgLTIwNSwxOSArMTcyLDIxIEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBf
Y3J5cHRvX2tlcm5lbF9pbml0ICgpCiAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0K
IAotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fa2VybmVsX3N0YXR1cyAoKQorc3J0cF9l
cnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fa2VybmVsX3N0YXR1cygpCiB7CiAgICAgc3J0cF9lcnJf
c3RhdHVzX3Qgc3RhdHVzOwotICAgIHNydHBfa2VybmVsX2NpcGhlcl90eXBlX3QgICpjdHlwZSA9
IGNyeXB0b19rZXJuZWwuY2lwaGVyX3R5cGVfbGlzdDsKLSAgICBzcnRwX2tlcm5lbF9hdXRoX3R5
cGVfdCAgICAqYXR5cGUgPSBjcnlwdG9fa2VybmVsLmF1dGhfdHlwZV9saXN0OworICAgIHNydHBf
a2VybmVsX2NpcGhlcl90eXBlX3QgKmN0eXBlID0gY3J5cHRvX2tlcm5lbC5jaXBoZXJfdHlwZV9s
aXN0OworICAgIHNydHBfa2VybmVsX2F1dGhfdHlwZV90ICphdHlwZSA9IGNyeXB0b19rZXJuZWwu
YXV0aF90eXBlX2xpc3Q7CiAKICAgICAvKiBmb3IgZWFjaCBjaXBoZXIgdHlwZSwgZGVzY3JpYmUg
YW5kIHRlc3QgKi8KICAgICB3aGlsZSAoY3R5cGUgIT0gTlVMTCkgewotICAgICAgICBzcnRwX2Vy
cl9yZXBvcnQoc3J0cF9lcnJfbGV2ZWxfaW5mbywgImNpcGhlcjogJXNcbiIsIGN0eXBlLT5jaXBo
ZXJfdHlwZS0+ZGVzY3JpcHRpb24pOworICAgICAgICBzcnRwX2Vycl9yZXBvcnQoc3J0cF9lcnJf
bGV2ZWxfaW5mbywgImNpcGhlcjogJXNcbiIsCisgICAgICAgICAgICAgICAgICAgICAgICBjdHlw
ZS0+Y2lwaGVyX3R5cGUtPmRlc2NyaXB0aW9uKTsKICAgICAgICAgc3J0cF9lcnJfcmVwb3J0KHNy
dHBfZXJyX2xldmVsX2luZm8sICIgIHNlbGYtdGVzdDogIik7CiAgICAgICAgIHN0YXR1cyA9IHNy
dHBfY2lwaGVyX3R5cGVfc2VsZl90ZXN0KGN0eXBlLT5jaXBoZXJfdHlwZSk7CiAgICAgICAgIGlm
IChzdGF0dXMpIHsKLSAgICAgICAgICAgIHNydHBfZXJyX3JlcG9ydChzcnRwX2Vycl9sZXZlbF9l
cnJvciwgImZhaWxlZCB3aXRoIGVycm9yIGNvZGUgJWRcbiIsIHN0YXR1cyk7CisgICAgICAgICAg
ICBzcnRwX2Vycl9yZXBvcnQoc3J0cF9lcnJfbGV2ZWxfZXJyb3IsICJmYWlsZWQgd2l0aCBlcnJv
ciBjb2RlICVkXG4iLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXR1cyk7CiAgICAg
ICAgICAgICBleGl0KHN0YXR1cyk7CiAgICAgICAgIH0KICAgICAgICAgc3J0cF9lcnJfcmVwb3J0
KHNydHBfZXJyX2xldmVsX2luZm8sICJwYXNzZWRcbiIpOwpAQCAtMjI2LDExICsxOTUsMTMgQEAg
c3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fa2VybmVsX3N0YXR1cyAoKQogCiAgICAgLyog
Zm9yIGVhY2ggYXV0aCB0eXBlLCBkZXNjcmliZSBhbmQgdGVzdCAqLwogICAgIHdoaWxlIChhdHlw
ZSAhPSBOVUxMKSB7Ci0gICAgICAgIHNydHBfZXJyX3JlcG9ydChzcnRwX2Vycl9sZXZlbF9pbmZv
LCAiYXV0aCBmdW5jOiAlc1xuIiwgYXR5cGUtPmF1dGhfdHlwZS0+ZGVzY3JpcHRpb24pOworICAg
ICAgICBzcnRwX2Vycl9yZXBvcnQoc3J0cF9lcnJfbGV2ZWxfaW5mbywgImF1dGggZnVuYzogJXNc
biIsCisgICAgICAgICAgICAgICAgICAgICAgICBhdHlwZS0+YXV0aF90eXBlLT5kZXNjcmlwdGlv
bik7CiAgICAgICAgIHNydHBfZXJyX3JlcG9ydChzcnRwX2Vycl9sZXZlbF9pbmZvLCAiICBzZWxm
LXRlc3Q6ICIpOwogICAgICAgICBzdGF0dXMgPSBzcnRwX2F1dGhfdHlwZV9zZWxmX3Rlc3QoYXR5
cGUtPmF1dGhfdHlwZSk7CiAgICAgICAgIGlmIChzdGF0dXMpIHsKLSAgICAgICAgICAgIHNydHBf
ZXJyX3JlcG9ydChzcnRwX2Vycl9sZXZlbF9lcnJvciwgImZhaWxlZCB3aXRoIGVycm9yIGNvZGUg
JWRcbiIsIHN0YXR1cyk7CisgICAgICAgICAgICBzcnRwX2Vycl9yZXBvcnQoc3J0cF9lcnJfbGV2
ZWxfZXJyb3IsICJmYWlsZWQgd2l0aCBlcnJvciBjb2RlICVkXG4iLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHN0YXR1cyk7CiAgICAgICAgICAgICBleGl0KHN0YXR1cyk7CiAgICAgICAg
IH0KICAgICAgICAgc3J0cF9lcnJfcmVwb3J0KHNydHBfZXJyX2xldmVsX2luZm8sICJwYXNzZWRc
biIpOwpAQCAtMjQyLDcgKzIxMyw3IEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfY3J5cHRvX2tl
cm5lbF9zdGF0dXMgKCkKICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQogCi1zcnRw
X2Vycl9zdGF0dXNfdCBzcnRwX2NyeXB0b19rZXJuZWxfbGlzdF9kZWJ1Z19tb2R1bGVzICgpCitz
cnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NyeXB0b19rZXJuZWxfbGlzdF9kZWJ1Z19tb2R1bGVzKCkK
IHsKICAgICBzcnRwX2tlcm5lbF9kZWJ1Z19tb2R1bGVfdCAqZG0gPSBjcnlwdG9fa2VybmVsLmRl
YnVnX21vZHVsZV9saXN0OwogCkBAIC0yNTIsNyArMjIzLDcgQEAgc3J0cF9lcnJfc3RhdHVzX3Qg
c3J0cF9jcnlwdG9fa2VybmVsX2xpc3RfZGVidWdfbW9kdWxlcyAoKQogICAgICAgICBzcnRwX2Vy
cl9yZXBvcnQoc3J0cF9lcnJfbGV2ZWxfaW5mbywgIiAgJXMgIiwgZG0tPm1vZC0+bmFtZSk7CiAg
ICAgICAgIGlmIChkbS0+bW9kLT5vbikgewogICAgICAgICAgICAgc3J0cF9lcnJfcmVwb3J0KHNy
dHBfZXJyX2xldmVsX2luZm8sICIob24pXG4iKTsKLSAgICAgICAgfSBlbHNleworICAgICAgICB9
IGVsc2UgewogICAgICAgICAgICAgc3J0cF9lcnJfcmVwb3J0KHNydHBfZXJyX2xldmVsX2luZm8s
ICIob2ZmKVxuIik7CiAgICAgICAgIH0KICAgICAgICAgZG0gPSBkbS0+bmV4dDsKQEAgLTI2MSw3
ICsyMzIsNyBAQCBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NyeXB0b19rZXJuZWxfbGlzdF9kZWJ1
Z19tb2R1bGVzICgpCiAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0KIAotc3J0cF9l
cnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fa2VybmVsX3NodXRkb3duICgpCitzcnRwX2Vycl9zdGF0
dXNfdCBzcnRwX2NyeXB0b19rZXJuZWxfc2h1dGRvd24oKQogewogICAgIC8qCiAgICAgICogZnJl
ZSBkeW5hbWljIG1lbW9yeSB1c2VkIGluIGNyeXB0b19rZXJuZWwgYXQgcHJlc2VudApAQCAtMjcx
LDggKzI0Miw3IEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfY3J5cHRvX2tlcm5lbF9zaHV0ZG93
biAoKQogICAgIHdoaWxlIChjcnlwdG9fa2VybmVsLmNpcGhlcl90eXBlX2xpc3QgIT0gTlVMTCkg
ewogICAgICAgICBzcnRwX2tlcm5lbF9jaXBoZXJfdHlwZV90ICpjdHlwZSA9IGNyeXB0b19rZXJu
ZWwuY2lwaGVyX3R5cGVfbGlzdDsKICAgICAgICAgY3J5cHRvX2tlcm5lbC5jaXBoZXJfdHlwZV9s
aXN0ID0gY3R5cGUtPm5leHQ7Ci0gICAgICAgIGRlYnVnX3ByaW50KHNydHBfbW9kX2NyeXB0b19r
ZXJuZWwsCi0gICAgICAgICAgICAgICAgICAgICJmcmVlaW5nIG1lbW9yeSBmb3IgY2lwaGVyICVz
IiwKKyAgICAgICAgZGVidWdfcHJpbnQoc3J0cF9tb2RfY3J5cHRvX2tlcm5lbCwgImZyZWVpbmcg
bWVtb3J5IGZvciBjaXBoZXIgJXMiLAogICAgICAgICAgICAgICAgICAgICBjdHlwZS0+Y2lwaGVy
X3R5cGUtPmRlc2NyaXB0aW9uKTsKICAgICAgICAgc3J0cF9jcnlwdG9fZnJlZShjdHlwZSk7CiAg
ICAgfQpAQCAtMjkyLDggKzI2Miw3IEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfY3J5cHRvX2tl
cm5lbF9zaHV0ZG93biAoKQogICAgICAgICBzcnRwX2tlcm5lbF9kZWJ1Z19tb2R1bGVfdCAqa2Rt
ID0gY3J5cHRvX2tlcm5lbC5kZWJ1Z19tb2R1bGVfbGlzdDsKICAgICAgICAgY3J5cHRvX2tlcm5l
bC5kZWJ1Z19tb2R1bGVfbGlzdCA9IGtkbS0+bmV4dDsKICAgICAgICAgZGVidWdfcHJpbnQoc3J0
cF9tb2RfY3J5cHRvX2tlcm5lbCwKLSAgICAgICAgICAgICAgICAgICAgImZyZWVpbmcgbWVtb3J5
IGZvciBkZWJ1ZyBtb2R1bGUgJXMiLAotICAgICAgICAgICAgICAgICAgICBrZG0tPm1vZC0+bmFt
ZSk7CisgICAgICAgICAgICAgICAgICAgICJmcmVlaW5nIG1lbW9yeSBmb3IgZGVidWcgbW9kdWxl
ICVzIiwga2RtLT5tb2QtPm5hbWUpOwogICAgICAgICBzcnRwX2NyeXB0b19mcmVlKGtkbSk7CiAg
ICAgfQogCkBAIC0zMDMsNyArMjcyLDEwIEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfY3J5cHRv
X2tlcm5lbF9zaHV0ZG93biAoKQogICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAK
LXN0YXRpYyBpbmxpbmUgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fa2VybmVsX2RvX2xv
YWRfY2lwaGVyX3R5cGUgKGNvbnN0IHNydHBfY2lwaGVyX3R5cGVfdCAqbmV3X2N0LCBzcnRwX2Np
cGhlcl90eXBlX2lkX3QgaWQsIGludCByZXBsYWNlKQorc3RhdGljIGlubGluZSBzcnRwX2Vycl9z
dGF0dXNfdCBzcnRwX2NyeXB0b19rZXJuZWxfZG9fbG9hZF9jaXBoZXJfdHlwZSgKKyAgICBjb25z
dCBzcnRwX2NpcGhlcl90eXBlX3QgKm5ld19jdCwKKyAgICBzcnRwX2NpcGhlcl90eXBlX2lkX3Qg
aWQsCisgICAgaW50IHJlcGxhY2UpCiB7CiAgICAgc3J0cF9rZXJuZWxfY2lwaGVyX3R5cGVfdCAq
Y3R5cGUsICpuZXdfY3R5cGU7CiAgICAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVzOwpAQCAtMzMw
LDEzICszMDIsMTQgQEAgc3RhdGljIGlubGluZSBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NyeXB0
b19rZXJuZWxfZG9fbG9hZF9jaXBoZXJfdHlwZSAoY29uc3Qgc3IKICAgICAgICAgICAgIGlmICgh
cmVwbGFjZSkgewogICAgICAgICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYmFkX3Bh
cmFtOwogICAgICAgICAgICAgfQotICAgICAgICAgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfdHlw
ZV90ZXN0KG5ld19jdCwgY3R5cGUtPmNpcGhlcl90eXBlLT50ZXN0X2RhdGEpOworICAgICAgICAg
ICAgc3RhdHVzID0KKyAgICAgICAgICAgICAgICBzcnRwX2NpcGhlcl90eXBlX3Rlc3QobmV3X2N0
LCBjdHlwZS0+Y2lwaGVyX3R5cGUtPnRlc3RfZGF0YSk7CiAgICAgICAgICAgICBpZiAoc3RhdHVz
KSB7CiAgICAgICAgICAgICAgICAgcmV0dXJuIHN0YXR1czsKICAgICAgICAgICAgIH0KICAgICAg
ICAgICAgIG5ld19jdHlwZSA9IGN0eXBlOwogICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIH1l
bHNlIGlmIChuZXdfY3QgPT0gY3R5cGUtPmNpcGhlcl90eXBlKSB7CisgICAgICAgIH0gZWxzZSBp
ZiAobmV3X2N0ID09IGN0eXBlLT5jaXBoZXJfdHlwZSkgewogICAgICAgICAgICAgcmV0dXJuIHNy
dHBfZXJyX3N0YXR1c19iYWRfcGFyYW07CiAgICAgICAgIH0KICAgICAgICAgY3R5cGUgPSBjdHlw
ZS0+bmV4dDsKQEAgLTM0NSw3ICszMTgsOCBAQCBzdGF0aWMgaW5saW5lIHNydHBfZXJyX3N0YXR1
c190IHNydHBfY3J5cHRvX2tlcm5lbF9kb19sb2FkX2NpcGhlcl90eXBlIChjb25zdCBzcgogICAg
IC8qIGlmIG5vdCBmb3VuZCwgcHV0IG5ld19jdCBhdCB0aGUgaGVhZCBvZiB0aGUgbGlzdCAqLwog
ICAgIGlmIChjdHlwZSA9PSBOVUxMKSB7CiAgICAgICAgIC8qIGFsbG9jYXRlIG1lbW9yeSAqLwot
ICAgICAgICBuZXdfY3R5cGUgPSAoc3J0cF9rZXJuZWxfY2lwaGVyX3R5cGVfdCopc3J0cF9jcnlw
dG9fYWxsb2Moc2l6ZW9mKHNydHBfa2VybmVsX2NpcGhlcl90eXBlX3QpKTsKKyAgICAgICAgbmV3
X2N0eXBlID0gKHNydHBfa2VybmVsX2NpcGhlcl90eXBlX3QgKilzcnRwX2NyeXB0b19hbGxvYygK
KyAgICAgICAgICAgIHNpemVvZihzcnRwX2tlcm5lbF9jaXBoZXJfdHlwZV90KSk7CiAgICAgICAg
IGlmIChuZXdfY3R5cGUgPT0gTlVMTCkgewogICAgICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0
YXR1c19hbGxvY19mYWlsOwogICAgICAgICB9CkBAIC0zNjIsMTcgKzMzNiwyMyBAQCBzdGF0aWMg
aW5saW5lIHNydHBfZXJyX3N0YXR1c190IHNydHBfY3J5cHRvX2tlcm5lbF9kb19sb2FkX2NpcGhl
cl90eXBlIChjb25zdCBzcgogICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAKLXNy
dHBfZXJyX3N0YXR1c190IHNydHBfY3J5cHRvX2tlcm5lbF9sb2FkX2NpcGhlcl90eXBlIChjb25z
dCBzcnRwX2NpcGhlcl90eXBlX3QgKm5ld19jdCwgc3J0cF9jaXBoZXJfdHlwZV9pZF90IGlkKQor
c3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fa2VybmVsX2xvYWRfY2lwaGVyX3R5cGUoCisg
ICAgY29uc3Qgc3J0cF9jaXBoZXJfdHlwZV90ICpuZXdfY3QsCisgICAgc3J0cF9jaXBoZXJfdHlw
ZV9pZF90IGlkKQogewogICAgIHJldHVybiBzcnRwX2NyeXB0b19rZXJuZWxfZG9fbG9hZF9jaXBo
ZXJfdHlwZShuZXdfY3QsIGlkLCAwKTsKIH0KIAotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9yZXBs
YWNlX2NpcGhlcl90eXBlIChjb25zdCBzcnRwX2NpcGhlcl90eXBlX3QgKm5ld19jdCwgc3J0cF9j
aXBoZXJfdHlwZV9pZF90IGlkKQorc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9yZXBsYWNlX2NpcGhl
cl90eXBlKGNvbnN0IHNydHBfY2lwaGVyX3R5cGVfdCAqbmV3X2N0LAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfY2lwaGVyX3R5cGVfaWRfdCBpZCkKIHsK
ICAgICByZXR1cm4gc3J0cF9jcnlwdG9fa2VybmVsX2RvX2xvYWRfY2lwaGVyX3R5cGUobmV3X2N0
LCBpZCwgMSk7CiB9CiAKLXNydHBfZXJyX3N0YXR1c190IHNydHBfY3J5cHRvX2tlcm5lbF9kb19s
b2FkX2F1dGhfdHlwZSAoY29uc3Qgc3J0cF9hdXRoX3R5cGVfdCAqbmV3X2F0LCBzcnRwX2F1dGhf
dHlwZV9pZF90IGlkLCBpbnQgcmVwbGFjZSkKK3NydHBfZXJyX3N0YXR1c190IHNydHBfY3J5cHRv
X2tlcm5lbF9kb19sb2FkX2F1dGhfdHlwZSgKKyAgICBjb25zdCBzcnRwX2F1dGhfdHlwZV90ICpu
ZXdfYXQsCisgICAgc3J0cF9hdXRoX3R5cGVfaWRfdCBpZCwKKyAgICBpbnQgcmVwbGFjZSkKIHsK
ICAgICBzcnRwX2tlcm5lbF9hdXRoX3R5cGVfdCAqYXR5cGUsICpuZXdfYXR5cGU7CiAgICAgc3J0
cF9lcnJfc3RhdHVzX3Qgc3RhdHVzOwpAQCAtNDA1LDcgKzM4NSw3IEBAIHNydHBfZXJyX3N0YXR1
c190IHNydHBfY3J5cHRvX2tlcm5lbF9kb19sb2FkX2F1dGhfdHlwZSAoY29uc3Qgc3J0cF9hdXRo
X3R5cGVfdCAqCiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBuZXdfYXR5cGUgPSBhdHlwZTsK
ICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICB9ZWxzZSBpZiAobmV3X2F0ID09IGF0eXBlLT5h
dXRoX3R5cGUpIHsKKyAgICAgICAgfSBlbHNlIGlmIChuZXdfYXQgPT0gYXR5cGUtPmF1dGhfdHlw
ZSkgewogICAgICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW07CiAgICAg
ICAgIH0KICAgICAgICAgYXR5cGUgPSBhdHlwZS0+bmV4dDsKQEAgLTQxNCw3ICszOTQsOCBAQCBz
cnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NyeXB0b19rZXJuZWxfZG9fbG9hZF9hdXRoX3R5cGUgKGNv
bnN0IHNydHBfYXV0aF90eXBlX3QgKgogICAgIC8qIGlmIG5vdCBmb3VuZCwgcHV0IG5ld19hdCBh
dCB0aGUgaGVhZCBvZiB0aGUgbGlzdCAqLwogICAgIGlmIChhdHlwZSA9PSBOVUxMKSB7CiAgICAg
ICAgIC8qIGFsbG9jYXRlIG1lbW9yeSAqLwotICAgICAgICBuZXdfYXR5cGUgPSAoc3J0cF9rZXJu
ZWxfYXV0aF90eXBlX3QqKXNydHBfY3J5cHRvX2FsbG9jKHNpemVvZihzcnRwX2tlcm5lbF9hdXRo
X3R5cGVfdCkpOworICAgICAgICBuZXdfYXR5cGUgPSAoc3J0cF9rZXJuZWxfYXV0aF90eXBlX3Qg
KilzcnRwX2NyeXB0b19hbGxvYygKKyAgICAgICAgICAgIHNpemVvZihzcnRwX2tlcm5lbF9hdXRo
X3R5cGVfdCkpOwogICAgICAgICBpZiAobmV3X2F0eXBlID09IE5VTEwpIHsKICAgICAgICAgICAg
IHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYWxsb2NfZmFpbDsKICAgICAgICAgfQpAQCAtNDI5LDIx
ICs0MTAsMjMgQEAgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fa2VybmVsX2RvX2xvYWRf
YXV0aF90eXBlIChjb25zdCBzcnRwX2F1dGhfdHlwZV90ICoKICAgICBuZXdfYXR5cGUtPmlkID0g
aWQ7CiAKICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwotCiB9CiAKLXNydHBfZXJyX3N0
YXR1c190IHNydHBfY3J5cHRvX2tlcm5lbF9sb2FkX2F1dGhfdHlwZSAoY29uc3Qgc3J0cF9hdXRo
X3R5cGVfdCAqbmV3X2F0LCBzcnRwX2F1dGhfdHlwZV9pZF90IGlkKQorc3J0cF9lcnJfc3RhdHVz
X3Qgc3J0cF9jcnlwdG9fa2VybmVsX2xvYWRfYXV0aF90eXBlKAorICAgIGNvbnN0IHNydHBfYXV0
aF90eXBlX3QgKm5ld19hdCwKKyAgICBzcnRwX2F1dGhfdHlwZV9pZF90IGlkKQogewogICAgIHJl
dHVybiBzcnRwX2NyeXB0b19rZXJuZWxfZG9fbG9hZF9hdXRoX3R5cGUobmV3X2F0LCBpZCwgMCk7
CiB9CiAKLXNydHBfZXJyX3N0YXR1c190IHNydHBfcmVwbGFjZV9hdXRoX3R5cGUgKGNvbnN0IHNy
dHBfYXV0aF90eXBlX3QgKm5ld19hdCwgc3J0cF9hdXRoX3R5cGVfaWRfdCBpZCkKK3NydHBfZXJy
X3N0YXR1c190IHNydHBfcmVwbGFjZV9hdXRoX3R5cGUoY29uc3Qgc3J0cF9hdXRoX3R5cGVfdCAq
bmV3X2F0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcnRwX2F1
dGhfdHlwZV9pZF90IGlkKQogewogICAgIHJldHVybiBzcnRwX2NyeXB0b19rZXJuZWxfZG9fbG9h
ZF9hdXRoX3R5cGUobmV3X2F0LCBpZCwgMSk7CiB9CiAKLQotY29uc3Qgc3J0cF9jaXBoZXJfdHlw
ZV90ICogc3J0cF9jcnlwdG9fa2VybmVsX2dldF9jaXBoZXJfdHlwZSAoc3J0cF9jaXBoZXJfdHlw
ZV9pZF90IGlkKQorY29uc3Qgc3J0cF9jaXBoZXJfdHlwZV90ICpzcnRwX2NyeXB0b19rZXJuZWxf
Z2V0X2NpcGhlcl90eXBlKAorICAgIHNydHBfY2lwaGVyX3R5cGVfaWRfdCBpZCkKIHsKICAgICBz
cnRwX2tlcm5lbF9jaXBoZXJfdHlwZV90ICpjdHlwZTsKIApAQCAtNDYwLDggKzQ0MywxMCBAQCBj
b25zdCBzcnRwX2NpcGhlcl90eXBlX3QgKiBzcnRwX2NyeXB0b19rZXJuZWxfZ2V0X2NpcGhlcl90
eXBlIChzcnRwX2NpcGhlcl90eXBlXwogICAgIHJldHVybiBOVUxMOwogfQogCi0KLXNydHBfZXJy
X3N0YXR1c190IHNydHBfY3J5cHRvX2tlcm5lbF9hbGxvY19jaXBoZXIgKHNydHBfY2lwaGVyX3R5
cGVfaWRfdCBpZCwgc3J0cF9jaXBoZXJfcG9pbnRlcl90ICpjcCwgaW50IGtleV9sZW4sIGludCB0
YWdfbGVuKQorc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fa2VybmVsX2FsbG9jX2NpcGhl
cihzcnRwX2NpcGhlcl90eXBlX2lkX3QgaWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHNydHBfY2lwaGVyX3BvaW50ZXJfdCAqY3AsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBrZXlfbGVuLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgdGFn
X2xlbikKIHsKICAgICBjb25zdCBzcnRwX2NpcGhlcl90eXBlX3QgKmN0OwogCkBAIC00ODEsOSAr
NDY2LDcgQEAgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fa2VybmVsX2FsbG9jX2NpcGhl
ciAoc3J0cF9jaXBoZXJfdHlwZV9pZF90IGlkLCBzcnQKICAgICByZXR1cm4gKChjdCktPmFsbG9j
KGNwLCBrZXlfbGVuLCB0YWdfbGVuKSk7CiB9CiAKLQotCi1jb25zdCBzcnRwX2F1dGhfdHlwZV90
ICogc3J0cF9jcnlwdG9fa2VybmVsX2dldF9hdXRoX3R5cGUgKHNydHBfYXV0aF90eXBlX2lkX3Qg
aWQpCitjb25zdCBzcnRwX2F1dGhfdHlwZV90ICpzcnRwX2NyeXB0b19rZXJuZWxfZ2V0X2F1dGhf
dHlwZShzcnRwX2F1dGhfdHlwZV9pZF90IGlkKQogewogICAgIHNydHBfa2VybmVsX2F1dGhfdHlw
ZV90ICphdHlwZTsKIApAQCAtNTAwLDcgKzQ4MywxMCBAQCBjb25zdCBzcnRwX2F1dGhfdHlwZV90
ICogc3J0cF9jcnlwdG9fa2VybmVsX2dldF9hdXRoX3R5cGUgKHNydHBfYXV0aF90eXBlX2lkX3Qg
aQogICAgIHJldHVybiBOVUxMOwogfQogCi1zcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NyeXB0b19r
ZXJuZWxfYWxsb2NfYXV0aCAoc3J0cF9hdXRoX3R5cGVfaWRfdCBpZCwgc3J0cF9hdXRoX3BvaW50
ZXJfdCAqYXAsIGludCBrZXlfbGVuLCBpbnQgdGFnX2xlbikKK3NydHBfZXJyX3N0YXR1c190IHNy
dHBfY3J5cHRvX2tlcm5lbF9hbGxvY19hdXRoKHNydHBfYXV0aF90eXBlX2lkX3QgaWQsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcnRwX2F1dGhfcG9p
bnRlcl90ICphcCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGludCBrZXlfbGVuLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgaW50IHRhZ19sZW4pCiB7CiAgICAgY29uc3Qgc3J0cF9hdXRoX3R5cGVfdCAqYXQ7
CiAKQEAgLTUyMCwxMiArNTA2LDEzIEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfY3J5cHRvX2tl
cm5lbF9hbGxvY19hdXRoIChzcnRwX2F1dGhfdHlwZV9pZF90IGlkLCBzcnRwX2F1CiAgICAgcmV0
dXJuICgoYXQpLT5hbGxvYyhhcCwga2V5X2xlbiwgdGFnX2xlbikpOwogfQogCi1zcnRwX2Vycl9z
dGF0dXNfdCBzcnRwX2NyeXB0b19rZXJuZWxfbG9hZF9kZWJ1Z19tb2R1bGUgKHNydHBfZGVidWdf
bW9kdWxlX3QgKm5ld19kbSkKK3NydHBfZXJyX3N0YXR1c190IHNydHBfY3J5cHRvX2tlcm5lbF9s
b2FkX2RlYnVnX21vZHVsZSgKKyAgICBzcnRwX2RlYnVnX21vZHVsZV90ICpuZXdfZG0pCiB7CiAg
ICAgc3J0cF9rZXJuZWxfZGVidWdfbW9kdWxlX3QgKmtkbSwgKm5ldzsKIAogICAgIC8qIGRlZmVu
c2l2ZSBjb2RpbmcgKi8KLSAgICBpZiAobmV3X2RtID09IE5VTEwpIHsKKyAgICBpZiAobmV3X2Rt
ID09IE5VTEwgfHwgbmV3X2RtLT5uYW1lID09IE5VTEwpIHsKICAgICAgICAgcmV0dXJuIHNydHBf
ZXJyX3N0YXR1c19iYWRfcGFyYW07CiAgICAgfQogCkBAIC01NDAsNyArNTI3LDggQEAgc3J0cF9l
cnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fa2VybmVsX2xvYWRfZGVidWdfbW9kdWxlIChzcnRwX2Rl
YnVnX21vZHVsZV90ICpuZXcKIAogICAgIC8qIHB1dCBuZXdfZG0gYXQgdGhlIGhlYWQgb2YgdGhl
IGxpc3QgKi8KICAgICAvKiBhbGxvY2F0ZSBtZW1vcnkgKi8KLSAgICBuZXcgPSAoc3J0cF9rZXJu
ZWxfZGVidWdfbW9kdWxlX3QqKXNydHBfY3J5cHRvX2FsbG9jKHNpemVvZihzcnRwX2tlcm5lbF9k
ZWJ1Z19tb2R1bGVfdCkpOworICAgIG5ldyA9IChzcnRwX2tlcm5lbF9kZWJ1Z19tb2R1bGVfdCAq
KXNydHBfY3J5cHRvX2FsbG9jKAorICAgICAgICBzaXplb2Yoc3J0cF9rZXJuZWxfZGVidWdfbW9k
dWxlX3QpKTsKICAgICBpZiAobmV3ID09IE5VTEwpIHsKICAgICAgICAgcmV0dXJuIHNydHBfZXJy
X3N0YXR1c19hbGxvY19mYWlsOwogICAgIH0KQEAgLTU1NSw3ICs1NDMsNyBAQCBzcnRwX2Vycl9z
dGF0dXNfdCBzcnRwX2NyeXB0b19rZXJuZWxfbG9hZF9kZWJ1Z19tb2R1bGUgKHNydHBfZGVidWdf
bW9kdWxlX3QgKm5ldwogICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAKLXNydHBf
ZXJyX3N0YXR1c190IHNydHBfY3J5cHRvX2tlcm5lbF9zZXRfZGVidWdfbW9kdWxlIChjb25zdCBj
aGFyICpuYW1lLCBpbnQgb24pCitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NyeXB0b19rZXJuZWxf
c2V0X2RlYnVnX21vZHVsZShjb25zdCBjaGFyICpuYW1lLCBpbnQgb24pCiB7CiAgICAgc3J0cF9r
ZXJuZWxfZGVidWdfbW9kdWxlX3QgKmtkbTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9rZXJuZWwvZXJy
LmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNy
dHAvY3J5cHRvL2tlcm5lbC9lcnIuYwppbmRleCA5ZGNlY2JhZGQ1YWY4NzQwZjdiYzFkYTljMzdi
OTMzZjhkZTRlYzVkLi5mNDQzNTQ5ZTVhNDQxMzZlZjJhMDE0MTg5YWU2N2QwZjA2ZDNlN2NmIDEw
MDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L2xpYnNydHAvY3J5cHRvL2tlcm5lbC9lcnIuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2tlcm5lbC9lcnIuYwpAQCAt
NDMsNyArNDMsNyBAQAogICovCiAKICNpZmRlZiBIQVZFX0NPTkZJR19ICi0gICAgI2luY2x1ZGUg
PGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbmZpZy5oPgogI2VuZGlmCiAKICNpbmNsdWRlICJlcnIu
aCIKQEAgLTU0LDcgKzU0LDcgQEAKIAogc3RhdGljIEZJTEUgKnNydHBfZXJyX2ZpbGUgPSBOVUxM
OwogCi1zcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2Vycl9yZXBvcnRpbmdfaW5pdCAoKQorc3J0cF9l
cnJfc3RhdHVzX3Qgc3J0cF9lcnJfcmVwb3J0aW5nX2luaXQoKQogewogI2lmZGVmIEVSUl9SRVBP
UlRJTkdfU1RET1VUCiAgICAgc3J0cF9lcnJfZmlsZSA9IHN0ZG91dDsKQEAgLTY5LDE1ICs2OSwx
NiBAQCBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2Vycl9yZXBvcnRpbmdfaW5pdCAoKQogICAgIHJl
dHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAKLXN0YXRpYyBzcnRwX2Vycl9yZXBvcnRfaGFu
ZGxlcl9mdW5jX3QgKiBzcnRwX2Vycl9yZXBvcnRfaGFuZGxlciA9IE5VTEw7CitzdGF0aWMgc3J0
cF9lcnJfcmVwb3J0X2hhbmRsZXJfZnVuY190ICpzcnRwX2Vycl9yZXBvcnRfaGFuZGxlciA9IE5V
TEw7CiAKLXNydHBfZXJyX3N0YXR1c190IHNydHBfaW5zdGFsbF9lcnJfcmVwb3J0X2hhbmRsZXIo
c3J0cF9lcnJfcmVwb3J0X2hhbmRsZXJfZnVuY190IGZ1bmMpCitzcnRwX2Vycl9zdGF0dXNfdCBz
cnRwX2luc3RhbGxfZXJyX3JlcG9ydF9oYW5kbGVyKAorICAgIHNydHBfZXJyX3JlcG9ydF9oYW5k
bGVyX2Z1bmNfdCBmdW5jKQogewogICAgIHNydHBfZXJyX3JlcG9ydF9oYW5kbGVyID0gZnVuYzsK
ICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQogCi12b2lkIHNydHBfZXJyX3JlcG9y
dCAoc3J0cF9lcnJfcmVwb3J0aW5nX2xldmVsX3QgbGV2ZWwsIGNvbnN0IGNoYXIgKmZvcm1hdCwg
Li4uKQordm9pZCBzcnRwX2Vycl9yZXBvcnQoc3J0cF9lcnJfcmVwb3J0aW5nX2xldmVsX3QgbGV2
ZWwsIGNvbnN0IGNoYXIgKmZvcm1hdCwgLi4uKQogewogICAgIHZhX2xpc3QgYXJnczsKICAgICBp
ZiAoc3J0cF9lcnJfZmlsZSAhPSBOVUxMKSB7CkBAIC05MSwxMiArOTIsMTMgQEAgdm9pZCBzcnRw
X2Vycl9yZXBvcnQgKHNydHBfZXJyX3JlcG9ydGluZ19sZXZlbF90IGxldmVsLCBjb25zdCBjaGFy
ICpmb3JtYXQsIC4uLikKICAgICAgICAgaWYgKHZzbnByaW50Zihtc2csIHNpemVvZihtc2cpLCBm
b3JtYXQsIGFyZ3MpID4gMCkgewogICAgICAgICAgICAgLyogc3RyaXAgdHJhaWxpbmcgXG4sIGNh
bGxiYWNrIHNob3VsZCBub3QgaGF2ZSBvbmUgKi8KICAgICAgICAgICAgIHNpemVfdCBsID0gc3Ry
bGVuKG1zZyk7Ci0gICAgICAgICAgICBpZiAobCAmJiBtc2dbbC0xXSA9PSAnXG4nKSB7Ci0gICAg
ICAgICAgICAgICAgbXNnW2wtMV0gPSAnXDAnOworICAgICAgICAgICAgaWYgKGwgJiYgbXNnW2wg
LSAxXSA9PSAnXG4nKSB7CisgICAgICAgICAgICAgICAgbXNnW2wgLSAxXSA9ICdcMCc7CiAgICAg
ICAgICAgICB9CiAgICAgICAgICAgICBzcnRwX2Vycl9yZXBvcnRfaGFuZGxlcihsZXZlbCwgbXNn
KTsKICAgICAgICAgICAgIC8qCi0gICAgICAgICAgICAgKiBOT1RFLCBuZWVkIHRvIGJlIGNhcmVm
dWxsLCB0aGVyZSBpcyBhIHBvdGVudGlhbCB0aGF0IG9jdGV0X3N0cmluZ19zZXRfdG9femVybygp
IGNvdWxkCisgICAgICAgICAgICAgKiBOT1RFLCBuZWVkIHRvIGJlIGNhcmVmdWxsLCB0aGVyZSBp
cyBhIHBvdGVudGlhbCB0aGF0CisgICAgICAgICAgICAgKiBvY3RldF9zdHJpbmdfc2V0X3RvX3pl
cm8oKSBjb3VsZAogICAgICAgICAgICAgICogY2FsbCBzcnRwX2Vycl9yZXBvcnQoKSBpbiB0aGUg
ZnV0dXJlLCBsZWFkaW5nIHRvIHJlY3Vyc2lvbgogICAgICAgICAgICAgICovCiAgICAgICAgICAg
ICBvY3RldF9zdHJpbmdfc2V0X3RvX3plcm8obXNnLCBzaXplb2YobXNnKSk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAv
Y3J5cHRvL2tlcm5lbC9rZXkuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8va2VybmVsL2tleS5jCmluZGV4IDE0MzBmMGRmNjcw
NjE2NmRkM2IyMTEwNWZjMmY1OGZmNTI4MDBlMmIuLjA0NjYxOTUwNDYxZjcyYjk0OWI4MTNiMzc5
MTRiNjdjMDA4NzU3ZjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8va2VybmVsL2tleS5jCisrKyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8v
a2VybmVsL2tleS5jCkBAIC00MywxNCArNDMsMTUgQEAKICAqLwogCiAjaWZkZWYgSEFWRV9DT05G
SUdfSAotICAgICNpbmNsdWRlIDxjb25maWcuaD4KKyNpbmNsdWRlIDxjb25maWcuaD4KICNlbmRp
ZgogCiAjaW5jbHVkZSAia2V5LmgiCiAKICNkZWZpbmUgc29mdF9saW1pdCAweDEwMDAwCiAKLXNy
dHBfZXJyX3N0YXR1c190IHNydHBfa2V5X2xpbWl0X3NldCAoc3J0cF9rZXlfbGltaXRfdCBrZXks
IGNvbnN0IHNydHBfeHRkX3NlcV9udW1fdCBzKQorc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9rZXlf
bGltaXRfc2V0KHNydHBfa2V5X2xpbWl0X3Qga2V5LAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGNvbnN0IHNydHBfeHRkX3NlcV9udW1fdCBzKQogewogI2lmZGVmIE5PXzY0
QklUX01BVEgKICAgICBpZiAoaGlnaDMyKHMpID09IDAgJiYgbG93MzIocykgPCBzb2Z0X2xpbWl0
KSB7CkBAIC02Niw3ICs2Nyw4IEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfa2V5X2xpbWl0X3Nl
dCAoc3J0cF9rZXlfbGltaXRfdCBrZXksIGNvbnN0IHNydHBfeHRkX3NlcV9uCiAgICAgcmV0dXJu
IHNydHBfZXJyX3N0YXR1c19vazsKIH0KIAotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9rZXlfbGlt
aXRfY2xvbmUgKHNydHBfa2V5X2xpbWl0X3Qgb3JpZ2luYWwsIHNydHBfa2V5X2xpbWl0X3QgKm5l
d19rZXkpCitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2tleV9saW1pdF9jbG9uZShzcnRwX2tleV9s
aW1pdF90IG9yaWdpbmFsLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
c3J0cF9rZXlfbGltaXRfdCAqbmV3X2tleSkKIHsKICAgICBpZiAob3JpZ2luYWwgPT0gTlVMTCkg
ewogICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJhbTsKQEAgLTc1LDcgKzc3
LDcgQEAgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9rZXlfbGltaXRfY2xvbmUgKHNydHBfa2V5X2xp
bWl0X3Qgb3JpZ2luYWwsIHNydHBfa2V5X2xpbWkKICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVz
X29rOwogfQogCi1zcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2tleV9saW1pdF9jaGVjayAoY29uc3Qg
c3J0cF9rZXlfbGltaXRfdCBrZXkpCitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2tleV9saW1pdF9j
aGVjayhjb25zdCBzcnRwX2tleV9saW1pdF90IGtleSkKIHsKICAgICBpZiAoa2V5LT5zdGF0ZSA9
PSBzcnRwX2tleV9zdGF0ZV9leHBpcmVkKSB7CiAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0
dXNfa2V5X2V4cGlyZWQ7CkBAIC04MywxMyArODUsMTQgQEAgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0
cF9rZXlfbGltaXRfY2hlY2sgKGNvbnN0IHNydHBfa2V5X2xpbWl0X3Qga2V5KQogICAgIHJldHVy
biBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAKLXNydHBfa2V5X2V2ZW50X3Qgc3J0cF9rZXlfbGlt
aXRfdXBkYXRlIChzcnRwX2tleV9saW1pdF90IGtleSkKK3NydHBfa2V5X2V2ZW50X3Qgc3J0cF9r
ZXlfbGltaXRfdXBkYXRlKHNydHBfa2V5X2xpbWl0X3Qga2V5KQogewogI2lmZGVmIE5PXzY0QklU
X01BVEgKICAgICBpZiAobG93MzIoa2V5LT5udW1fbGVmdCkgPT0gMCkgewogICAgICAgICAvLyBj
YXJyeQotICAgICAgICBrZXktPm51bV9sZWZ0ID0gbWFrZTY0KGhpZ2gzMihrZXktPm51bV9sZWZ0
KSAtIDEsIGxvdzMyKGtleS0+bnVtX2xlZnQpIC0gMSk7Ci0gICAgfWVsc2UgIHsKKyAgICAgICAg
a2V5LT5udW1fbGVmdCA9CisgICAgICAgICAgICBtYWtlNjQoaGlnaDMyKGtleS0+bnVtX2xlZnQp
IC0gMSwgbG93MzIoa2V5LT5udW1fbGVmdCkgLSAxKTsKKyAgICB9IGVsc2UgewogICAgICAgICAv
LyBubyBjYXJyeQogICAgICAgICBrZXktPm51bV9sZWZ0ID0gbWFrZTY0KGhpZ2gzMihrZXktPm51
bV9sZWZ0KSwgbG93MzIoa2V5LT5udW1fbGVmdCkgLSAxKTsKICAgICB9CkBAIC0xMTEsMTAgKzEx
NCw5IEBAIHNydHBfa2V5X2V2ZW50X3Qgc3J0cF9rZXlfbGltaXRfdXBkYXRlIChzcnRwX2tleV9s
aW1pdF90IGtleSkKICNlbHNlCiAgICAgaWYgKGtleS0+bnVtX2xlZnQgPCAxKQogI2VuZGlmCi0g
ICAgeyAgIC8qIHdlIGp1c3QgaGl0IHRoZSBoYXJkIGxpbWl0ICovCisgICAgeyAvKiB3ZSBqdXN0
IGhpdCB0aGUgaGFyZCBsaW1pdCAqLwogICAgICAgICBrZXktPnN0YXRlID0gc3J0cF9rZXlfc3Rh
dGVfZXhwaXJlZDsKICAgICAgICAgcmV0dXJuIHNydHBfa2V5X2V2ZW50X2hhcmRfbGltaXQ7CiAg
ICAgfQogICAgIHJldHVybiBzcnRwX2tleV9ldmVudF9zb2Z0X2xpbWl0OwogfQotCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNy
dHAvY3J5cHRvL21hdGgvZGF0YXR5cGVzLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL21hdGgvZGF0YXR5cGVzLmMKaW5kZXgg
YmI0YjU2ZTMwN2RhMDIyZTJmMmE1MDcyMTVmZWMwZWE5YjJjNjE1MC4uYzBkZmVjZTY1OWQ3NzRi
YmRkOGQwNjQ4NDgzZWJiZjIxNGZjZTgyMSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9tYXRoL2RhdGF0eXBl
cy5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlic3J0cC9jcnlwdG8vbWF0aC9kYXRhdHlwZXMuYwpAQCAtOCwyNiArOCwyNiBAQAogICogQ2lz
Y28gU3lzdGVtcywgSW5jLgogICovCiAvKgotICoJCisgKgogICogQ29weXJpZ2h0IChjKSAyMDAx
LTIwMTcgQ2lzY28gU3lzdGVtcywgSW5jLgogICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqIAor
ICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMs
IHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVk
IHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCiAgKiBhcmUgbWV0OgotICogCisgKgogICog
ICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAogICogICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCi0gKiAKKyAqCiAgKiAgIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKICAqICAgY29weXJpZ2h0IG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKICAqICAgZGlzY2xhaW1l
ciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkCiAg
KiAgIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqIAorICoKICAqICAgTmVpdGhlciB0aGUgbmFt
ZSBvZiB0aGUgQ2lzY28gU3lzdGVtcywgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwogICogICBj
b250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRl
cml2ZWQKICAqICAgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3Jp
dHRlbiBwZXJtaXNzaW9uLgotICogCisgKgogICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBC
WSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwogICogIkFTIElTIiBBTkQg
QU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKICAq
IExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RCBGSVRORVNTCkBAIC00NCw3ICs0NCw3IEBACiAgKi8KIAogI2lmZGVmIEhBVkVfQ09ORklHX0gK
LSAgICAjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29uZmlnLmg+CiAjZW5kaWYKIAog
I2lmZGVmIE9QRU5TU0wKQEAgLTUzLDQ4ICs1MywyNCBAQAogCiAjaW5jbHVkZSAiZGF0YXR5cGVz
LmgiCiAKLWludCAKLW9jdGV0X3dlaWdodFsyNTZdID0gewotICAwLCAxLCAxLCAyLCAxLCAyLCAy
LCAzLAotICAxLCAyLCAyLCAzLCAyLCAzLCAzLCA0LAotICAxLCAyLCAyLCAzLCAyLCAzLCAzLCA0
LAotICAyLCAzLCAzLCA0LCAzLCA0LCA0LCA1LAotICAxLCAyLCAyLCAzLCAyLCAzLCAzLCA0LAot
ICAyLCAzLCAzLCA0LCAzLCA0LCA0LCA1LAotICAyLCAzLCAzLCA0LCAzLCA0LCA0LCA1LAotICAz
LCA0LCA0LCA1LCA0LCA1LCA1LCA2LAotICAxLCAyLCAyLCAzLCAyLCAzLCAzLCA0LAotICAyLCAz
LCAzLCA0LCAzLCA0LCA0LCA1LAotICAyLCAzLCAzLCA0LCAzLCA0LCA0LCA1LAotICAzLCA0LCA0
LCA1LCA0LCA1LCA1LCA2LAotICAyLCAzLCAzLCA0LCAzLCA0LCA0LCA1LAotICAzLCA0LCA0LCA1
LCA0LCA1LCA1LCA2LAotICAzLCA0LCA0LCA1LCA0LCA1LCA1LCA2LAotICA0LCA1LCA1LCA2LCA1
LCA2LCA2LCA3LAotICAxLCAyLCAyLCAzLCAyLCAzLCAzLCA0LAotICAyLCAzLCAzLCA0LCAzLCA0
LCA0LCA1LAotICAyLCAzLCAzLCA0LCAzLCA0LCA0LCA1LAotICAzLCA0LCA0LCA1LCA0LCA1LCA1
LCA2LAotICAyLCAzLCAzLCA0LCAzLCA0LCA0LCA1LAotICAzLCA0LCA0LCA1LCA0LCA1LCA1LCA2
LAotICAzLCA0LCA0LCA1LCA0LCA1LCA1LCA2LAotICA0LCA1LCA1LCA2LCA1LCA2LCA2LCA3LAot
ICAyLCAzLCAzLCA0LCAzLCA0LCA0LCA1LAotICAzLCA0LCA0LCA1LCA0LCA1LCA1LCA2LAotICAz
LCA0LCA0LCA1LCA0LCA1LCA1LCA2LAotICA0LCA1LCA1LCA2LCA1LCA2LCA2LCA3LAotICAzLCA0
LCA0LCA1LCA0LCA1LCA1LCA2LAotICA0LCA1LCA1LCA2LCA1LCA2LCA2LCA3LAotICA0LCA1LCA1
LCA2LCA1LCA2LCA2LCA3LAotICA1LCA2LCA2LCA3LCA2LCA3LCA3LCA4CitzdGF0aWMgY29uc3Qg
aW50OF90IG9jdGV0X3dlaWdodFsyNTZdID0geworICAgIDAsIDEsIDEsIDIsIDEsIDIsIDIsIDMs
IDEsIDIsIDIsIDMsIDIsIDMsIDMsIDQsIDEsIDIsIDIsIDMsIDIsIDMsIDMsIDQsCisgICAgMiwg
MywgMywgNCwgMywgNCwgNCwgNSwgMSwgMiwgMiwgMywgMiwgMywgMywgNCwgMiwgMywgMywgNCwg
MywgNCwgNCwgNSwKKyAgICAyLCAzLCAzLCA0LCAzLCA0LCA0LCA1LCAzLCA0LCA0LCA1LCA0LCA1
LCA1LCA2LCAxLCAyLCAyLCAzLCAyLCAzLCAzLCA0LAorICAgIDIsIDMsIDMsIDQsIDMsIDQsIDQs
IDUsIDIsIDMsIDMsIDQsIDMsIDQsIDQsIDUsIDMsIDQsIDQsIDUsIDQsIDUsIDUsIDYsCisgICAg
MiwgMywgMywgNCwgMywgNCwgNCwgNSwgMywgNCwgNCwgNSwgNCwgNSwgNSwgNiwgMywgNCwgNCwg
NSwgNCwgNSwgNSwgNiwKKyAgICA0LCA1LCA1LCA2LCA1LCA2LCA2LCA3LCAxLCAyLCAyLCAzLCAy
LCAzLCAzLCA0LCAyLCAzLCAzLCA0LCAzLCA0LCA0LCA1LAorICAgIDIsIDMsIDMsIDQsIDMsIDQs
IDQsIDUsIDMsIDQsIDQsIDUsIDQsIDUsIDUsIDYsIDIsIDMsIDMsIDQsIDMsIDQsIDQsIDUsCisg
ICAgMywgNCwgNCwgNSwgNCwgNSwgNSwgNiwgMywgNCwgNCwgNSwgNCwgNSwgNSwgNiwgNCwgNSwg
NSwgNiwgNSwgNiwgNiwgNywKKyAgICAyLCAzLCAzLCA0LCAzLCA0LCA0LCA1LCAzLCA0LCA0LCA1
LCA0LCA1LCA1LCA2LCAzLCA0LCA0LCA1LCA0LCA1LCA1LCA2LAorICAgIDQsIDUsIDUsIDYsIDUs
IDYsIDYsIDcsIDMsIDQsIDQsIDUsIDQsIDUsIDUsIDYsIDQsIDUsIDUsIDYsIDUsIDYsIDYsIDcs
CisgICAgNCwgNSwgNSwgNiwgNSwgNiwgNiwgNywgNSwgNiwgNiwgNywgNiwgNywgNywgOAogfTsK
IAotaW50Ci1vY3RldF9nZXRfd2VpZ2h0KHVpbnQ4X3Qgb2N0ZXQpIHsKLSAgZXh0ZXJuIGludCBv
Y3RldF93ZWlnaHRbMjU2XTsKLQotICByZXR1cm4gb2N0ZXRfd2VpZ2h0W29jdGV0XTsKLX0gIAor
aW50IG9jdGV0X2dldF93ZWlnaHQodWludDhfdCBvY3RldCkKK3sKKyAgICByZXR1cm4gKGludClv
Y3RldF93ZWlnaHRbb2N0ZXRdOworfQogCiAvKgogICogYml0X3N0cmluZyBpcyBhIGJ1ZmZlciB0
aGF0IGlzIHVzZWQgdG8gaG9sZCBvdXRwdXQgc3RyaW5ncywgZS5nLgpAQCAtMTA1LDQxNCArODEs
NDEwIEBAIG9jdGV0X2dldF93ZWlnaHQodWludDhfdCBvY3RldCkgewogCiBjaGFyIGJpdF9zdHJp
bmdbTUFYX1BSSU5UX1NUUklOR19MRU5dOwogCi11aW50OF90Ci1zcnRwX25pYmJsZV90b19oZXhf
Y2hhcih1aW50OF90IG5pYmJsZSkgewotICBjaGFyIGJ1ZlsxNl0gPSB7JzAnLCAnMScsICcyJywg
JzMnLCAnNCcsICc1JywgJzYnLCAnNycsCi0JCSAgJzgnLCAnOScsICdhJywgJ2InLCAnYycsICdk
JywgJ2UnLCAnZicgfTsKLSAgcmV0dXJuIGJ1ZltuaWJibGUgJiAweEZdOwotfQotCi1jaGFyICog
c3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZyhjb25zdCB2b2lkICpzLCBpbnQgbGVuZ3RoKSB7
Ci0gIGNvbnN0IHVpbnQ4X3QgKnN0ciA9IChjb25zdCB1aW50OF90ICopczsKLSAgaW50IGk7Ci0g
IAotICAvKiBkb3VibGUgbGVuZ3RoLCBzaW5jZSBvbmUgb2N0ZXQgdGFrZXMgdHdvIGhleCBjaGFy
YWN0ZXJzICovCi0gIGxlbmd0aCAqPSAyOwotCi0gIC8qIHRydW5jYXRlIHN0cmluZyBpZiBpdCB3
b3VsZCBiZSB0b28gbG9uZyAqLwotICBpZiAobGVuZ3RoID4gTUFYX1BSSU5UX1NUUklOR19MRU4p
Ci0gICAgbGVuZ3RoID0gTUFYX1BSSU5UX1NUUklOR19MRU4tMjsKLSAgCi0gIGZvciAoaT0wOyBp
IDwgbGVuZ3RoOyBpKz0yKSB7Ci0gICAgYml0X3N0cmluZ1tpXSAgID0gc3J0cF9uaWJibGVfdG9f
aGV4X2NoYXIoKnN0ciA+PiA0KTsKLSAgICBiaXRfc3RyaW5nW2krMV0gPSBzcnRwX25pYmJsZV90
b19oZXhfY2hhcigqc3RyKysgJiAweEYpOwotICB9Ci0gIGJpdF9zdHJpbmdbaV0gPSAwOyAvKiBu
dWxsIHRlcm1pbmF0ZSBzdHJpbmcgKi8KLSAgcmV0dXJuIGJpdF9zdHJpbmc7Ci19Ci0KLWNoYXIg
KgotdjEyOF9oZXhfc3RyaW5nKHYxMjhfdCAqeCkgewotICBpbnQgaSwgajsKLQotICBmb3IgKGk9
aj0wOyBpIDwgMTY7IGkrKykgewotICAgIGJpdF9zdHJpbmdbaisrXSAgPSBzcnRwX25pYmJsZV90
b19oZXhfY2hhcih4LT52OFtpXSA+PiA0KTsKLSAgICBiaXRfc3RyaW5nW2orK10gID0gc3J0cF9u
aWJibGVfdG9faGV4X2NoYXIoeC0+djhbaV0gJiAweEYpOwotICB9Ci0gIAotICBiaXRfc3RyaW5n
W2pdID0gMDsgLyogbnVsbCB0ZXJtaW5hdGUgc3RyaW5nICovCi0gIHJldHVybiBiaXRfc3RyaW5n
OwotfQotCi1jaGFyICoKLXYxMjhfYml0X3N0cmluZyh2MTI4X3QgKngpIHsKLSAgaW50IGosIGk7
Ci0gIHVpbnQzMl90IG1hc2s7Ci0gIAotICBmb3IgKGo9aT0wOyBqIDwgNDsgaisrKSB7Ci0gICAg
Zm9yIChtYXNrPTB4ODAwMDAwMDA7IG1hc2sgPiAwOyBtYXNrID4+PSAxKSB7Ci0gICAgICBpZiAo
eC0+djMyW2pdICYgbWFzaykKLQliaXRfc3RyaW5nW2ldID0gJzEnOwotICAgICAgZWxzZQotCWJp
dF9zdHJpbmdbaV0gPSAnMCc7Ci0gICAgICArK2k7Cit1aW50OF90IHNydHBfbmliYmxlX3RvX2hl
eF9jaGFyKHVpbnQ4X3QgbmliYmxlKQoreworICAgIGNoYXIgYnVmWzE2XSA9IHsgJzAnLCAnMScs
ICcyJywgJzMnLCAnNCcsICc1JywgJzYnLCAnNycsCisgICAgICAgICAgICAgICAgICAgICAnOCcs
ICc5JywgJ2EnLCAnYicsICdjJywgJ2QnLCAnZScsICdmJyB9OworICAgIHJldHVybiBidWZbbmli
YmxlICYgMHhGXTsKK30KKworY2hhciAqc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZyhjb25z
dCB2b2lkICpzLCBpbnQgbGVuZ3RoKQoreworICAgIGNvbnN0IHVpbnQ4X3QgKnN0ciA9IChjb25z
dCB1aW50OF90ICopczsKKyAgICBpbnQgaTsKKworICAgIC8qIGRvdWJsZSBsZW5ndGgsIHNpbmNl
IG9uZSBvY3RldCB0YWtlcyB0d28gaGV4IGNoYXJhY3RlcnMgKi8KKyAgICBsZW5ndGggKj0gMjsK
KworICAgIC8qIHRydW5jYXRlIHN0cmluZyBpZiBpdCB3b3VsZCBiZSB0b28gbG9uZyAqLworICAg
IGlmIChsZW5ndGggPiBNQVhfUFJJTlRfU1RSSU5HX0xFTikKKyAgICAgICAgbGVuZ3RoID0gTUFY
X1BSSU5UX1NUUklOR19MRU4gLSAyOworCisgICAgZm9yIChpID0gMDsgaSA8IGxlbmd0aDsgaSAr
PSAyKSB7CisgICAgICAgIGJpdF9zdHJpbmdbaV0gPSBzcnRwX25pYmJsZV90b19oZXhfY2hhcigq
c3RyID4+IDQpOworICAgICAgICBiaXRfc3RyaW5nW2kgKyAxXSA9IHNydHBfbmliYmxlX3RvX2hl
eF9jaGFyKCpzdHIrKyAmIDB4Rik7CisgICAgfQorICAgIGJpdF9zdHJpbmdbaV0gPSAwOyAvKiBu
dWxsIHRlcm1pbmF0ZSBzdHJpbmcgKi8KKyAgICByZXR1cm4gYml0X3N0cmluZzsKK30KKworY2hh
ciAqdjEyOF9oZXhfc3RyaW5nKHYxMjhfdCAqeCkKK3sKKyAgICBpbnQgaSwgajsKKworICAgIGZv
ciAoaSA9IGogPSAwOyBpIDwgMTY7IGkrKykgeworICAgICAgICBiaXRfc3RyaW5nW2orK10gPSBz
cnRwX25pYmJsZV90b19oZXhfY2hhcih4LT52OFtpXSA+PiA0KTsKKyAgICAgICAgYml0X3N0cmlu
Z1tqKytdID0gc3J0cF9uaWJibGVfdG9faGV4X2NoYXIoeC0+djhbaV0gJiAweEYpOwogICAgIH0K
LSAgfQotICBiaXRfc3RyaW5nWzEyOF0gPSAwOyAvKiBudWxsIHRlcm1pbmF0ZSBzdHJpbmcgKi8K
IAotICByZXR1cm4gYml0X3N0cmluZzsKKyAgICBiaXRfc3RyaW5nW2pdID0gMDsgLyogbnVsbCB0
ZXJtaW5hdGUgc3RyaW5nICovCisgICAgcmV0dXJuIGJpdF9zdHJpbmc7CiB9CiAKLXZvaWQKLXYx
MjhfY29weV9vY3RldF9zdHJpbmcodjEyOF90ICp4LCBjb25zdCB1aW50OF90IHNbMTZdKSB7Citj
aGFyICp2MTI4X2JpdF9zdHJpbmcodjEyOF90ICp4KQoreworICAgIGludCBqLCBpOworICAgIHVp
bnQzMl90IG1hc2s7CisKKyAgICBmb3IgKGogPSBpID0gMDsgaiA8IDQ7IGorKykgeworICAgICAg
ICBmb3IgKG1hc2sgPSAweDgwMDAwMDAwOyBtYXNrID4gMDsgbWFzayA+Pj0gMSkgeworICAgICAg
ICAgICAgaWYgKHgtPnYzMltqXSAmIG1hc2spCisgICAgICAgICAgICAgICAgYml0X3N0cmluZ1tp
XSA9ICcxJzsKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICBiaXRfc3RyaW5nW2ld
ID0gJzAnOworICAgICAgICAgICAgKytpOworICAgICAgICB9CisgICAgfQorICAgIGJpdF9zdHJp
bmdbMTI4XSA9IDA7IC8qIG51bGwgdGVybWluYXRlIHN0cmluZyAqLworCisgICAgcmV0dXJuIGJp
dF9zdHJpbmc7Cit9CisKK3ZvaWQgdjEyOF9jb3B5X29jdGV0X3N0cmluZyh2MTI4X3QgKngsIGNv
bnN0IHVpbnQ4X3Qgc1sxNl0pCit7CiAjaWZkZWYgQUxJR05NRU5UXzMyQklUX1JFUVVJUkVECi0g
IGlmICgoKCh1aW50MzJfdCkgJnNbMF0pICYgMHgzKSAhPSAwKQorICAgIGlmICgoKCh1aW50MzJf
dCkmc1swXSkgJiAweDMpICE9IDApCiAjZW5kaWYKLSAgewotCSAgeC0+djhbMF0gID0gc1swXTsK
LQkgIHgtPnY4WzFdICA9IHNbMV07Ci0JICB4LT52OFsyXSAgPSBzWzJdOwotCSAgeC0+djhbM10g
ID0gc1szXTsKLQkgIHgtPnY4WzRdICA9IHNbNF07Ci0JICB4LT52OFs1XSAgPSBzWzVdOwotCSAg
eC0+djhbNl0gID0gc1s2XTsKLQkgIHgtPnY4WzddICA9IHNbN107Ci0JICB4LT52OFs4XSAgPSBz
WzhdOwotCSAgeC0+djhbOV0gID0gc1s5XTsKLQkgIHgtPnY4WzEwXSA9IHNbMTBdOwotCSAgeC0+
djhbMTFdID0gc1sxMV07Ci0JICB4LT52OFsxMl0gPSBzWzEyXTsKLQkgIHgtPnY4WzEzXSA9IHNb
MTNdOwotCSAgeC0+djhbMTRdID0gc1sxNF07Ci0JICB4LT52OFsxNV0gPSBzWzE1XTsKLSAgfQor
ICAgIHsKKyAgICAgICAgeC0+djhbMF0gPSBzWzBdOworICAgICAgICB4LT52OFsxXSA9IHNbMV07
CisgICAgICAgIHgtPnY4WzJdID0gc1syXTsKKyAgICAgICAgeC0+djhbM10gPSBzWzNdOworICAg
ICAgICB4LT52OFs0XSA9IHNbNF07CisgICAgICAgIHgtPnY4WzVdID0gc1s1XTsKKyAgICAgICAg
eC0+djhbNl0gPSBzWzZdOworICAgICAgICB4LT52OFs3XSA9IHNbN107CisgICAgICAgIHgtPnY4
WzhdID0gc1s4XTsKKyAgICAgICAgeC0+djhbOV0gPSBzWzldOworICAgICAgICB4LT52OFsxMF0g
PSBzWzEwXTsKKyAgICAgICAgeC0+djhbMTFdID0gc1sxMV07CisgICAgICAgIHgtPnY4WzEyXSA9
IHNbMTJdOworICAgICAgICB4LT52OFsxM10gPSBzWzEzXTsKKyAgICAgICAgeC0+djhbMTRdID0g
c1sxNF07CisgICAgICAgIHgtPnY4WzE1XSA9IHNbMTVdOworICAgIH0KICNpZmRlZiBBTElHTk1F
TlRfMzJCSVRfUkVRVUlSRUQKLSAgZWxzZSAKLSAgewotCSAgdjEyOF90ICp2ID0gKHYxMjhfdCAq
KSAmc1swXTsKKyAgICBlbHNlIHsKKyAgICAgICAgdjEyOF90ICp2ID0gKHYxMjhfdCAqKSZzWzBd
OwogCi0JICB2MTI4X2NvcHkoeCx2KTsKLSAgfQorICAgICAgICB2MTI4X2NvcHkoeCwgdik7Cisg
ICAgfQogI2VuZGlmCiB9CiAKICNpZm5kZWYgREFUQVRZUEVTX1VTRV9NQUNST1MgLyogbGl0dGxl
IGZ1bmN0aW9ucyBhcmUgbm90IG1hY3JvcyAqLwogCi12b2lkCi12MTI4X3NldF90b196ZXJvKHYx
MjhfdCAqeCkgewotICBfdjEyOF9zZXRfdG9femVybyh4KTsKK3ZvaWQgdjEyOF9zZXRfdG9femVy
byh2MTI4X3QgKngpCit7CisgICAgX3YxMjhfc2V0X3RvX3plcm8oeCk7CiB9CiAKLXZvaWQKLXYx
MjhfY29weSh2MTI4X3QgKngsIGNvbnN0IHYxMjhfdCAqeSkgewotICBfdjEyOF9jb3B5KHgsIHkp
Owordm9pZCB2MTI4X2NvcHkodjEyOF90ICp4LCBjb25zdCB2MTI4X3QgKnkpCit7CisgICAgX3Yx
MjhfY29weSh4LCB5KTsKIH0KIAotdm9pZAotdjEyOF94b3IodjEyOF90ICp6LCB2MTI4X3QgKngs
IHYxMjhfdCAqeSkgewotICBfdjEyOF94b3IoeiwgeCwgeSk7Ci19IAotCi12b2lkCi12MTI4X2Fu
ZCh2MTI4X3QgKnosIHYxMjhfdCAqeCwgdjEyOF90ICp5KSB7Ci0gIF92MTI4X2FuZCh6LCB4LCB5
KTsKK3ZvaWQgdjEyOF94b3IodjEyOF90ICp6LCB2MTI4X3QgKngsIHYxMjhfdCAqeSkKK3sKKyAg
ICBfdjEyOF94b3IoeiwgeCwgeSk7CiB9CiAKLXZvaWQKLXYxMjhfb3IodjEyOF90ICp6LCB2MTI4
X3QgKngsIHYxMjhfdCAqeSkgewotICBfdjEyOF9vcih6LCB4LCB5KTsKK3ZvaWQgdjEyOF9hbmQo
djEyOF90ICp6LCB2MTI4X3QgKngsIHYxMjhfdCAqeSkKK3sKKyAgICBfdjEyOF9hbmQoeiwgeCwg
eSk7CiB9CiAKLXZvaWQKLXYxMjhfY29tcGxlbWVudCh2MTI4X3QgKngpIHsKLSAgX3YxMjhfY29t
cGxlbWVudCh4KTsKK3ZvaWQgdjEyOF9vcih2MTI4X3QgKnosIHYxMjhfdCAqeCwgdjEyOF90ICp5
KQoreworICAgIF92MTI4X29yKHosIHgsIHkpOwogfQogCi1pbnQKLXYxMjhfaXNfZXEoY29uc3Qg
djEyOF90ICp4LCBjb25zdCB2MTI4X3QgKnkpIHsKLSAgcmV0dXJuIF92MTI4X2lzX2VxKHgsIHkp
Owordm9pZCB2MTI4X2NvbXBsZW1lbnQodjEyOF90ICp4KQoreworICAgIF92MTI4X2NvbXBsZW1l
bnQoeCk7CiB9CiAKLWludAotdjEyOF94b3JfZXEodjEyOF90ICp4LCBjb25zdCB2MTI4X3QgKnkp
IHsKLSAgcmV0dXJuIF92MTI4X3hvcl9lcSh4LCB5KTsKK2ludCB2MTI4X2lzX2VxKGNvbnN0IHYx
MjhfdCAqeCwgY29uc3QgdjEyOF90ICp5KQoreworICAgIHJldHVybiBfdjEyOF9pc19lcSh4LCB5
KTsKIH0KIAotaW50Ci12MTI4X2dldF9iaXQoY29uc3QgdjEyOF90ICp4LCBpbnQgaSkgewotICBy
ZXR1cm4gX3YxMjhfZ2V0X2JpdCh4LCBpKTsKK2ludCB2MTI4X3hvcl9lcSh2MTI4X3QgKngsIGNv
bnN0IHYxMjhfdCAqeSkKK3sKKyAgICByZXR1cm4gX3YxMjhfeG9yX2VxKHgsIHkpOwogfQogCi12
b2lkCi12MTI4X3NldF9iaXQodjEyOF90ICp4LCBpbnQgaSkgewotICBfdjEyOF9zZXRfYml0KHgs
IGkpOwotfSAgICAgCitpbnQgdjEyOF9nZXRfYml0KGNvbnN0IHYxMjhfdCAqeCwgaW50IGkpCit7
CisgICAgcmV0dXJuIF92MTI4X2dldF9iaXQoeCwgaSk7Cit9CiAKLXZvaWQKLXYxMjhfY2xlYXJf
Yml0KHYxMjhfdCAqeCwgaW50IGkpewotICBfdjEyOF9jbGVhcl9iaXQoeCwgaSk7Ci19ICAgIAor
dm9pZCB2MTI4X3NldF9iaXQodjEyOF90ICp4LCBpbnQgaSkKK3sKKyAgICBfdjEyOF9zZXRfYml0
KHgsIGkpOworfQogCi12b2lkCi12MTI4X3NldF9iaXRfdG8odjEyOF90ICp4LCBpbnQgaSwgaW50
IHkpewotICBfdjEyOF9zZXRfYml0X3RvKHgsIGksIHkpOwordm9pZCB2MTI4X2NsZWFyX2JpdCh2
MTI4X3QgKngsIGludCBpKQoreworICAgIF92MTI4X2NsZWFyX2JpdCh4LCBpKTsKIH0KIAordm9p
ZCB2MTI4X3NldF9iaXRfdG8odjEyOF90ICp4LCBpbnQgaSwgaW50IHkpCit7CisgICAgX3YxMjhf
c2V0X2JpdF90byh4LCBpLCB5KTsKK30KIAogI2VuZGlmIC8qIERBVEFUWVBFU19VU0VfTUFDUk9T
ICovCiAKLXZvaWQKLXYxMjhfcmlnaHRfc2hpZnQodjEyOF90ICp4LCBpbnQgc2hpZnQpIHsKLSAg
Y29uc3QgaW50IGJhc2VfaW5kZXggPSBzaGlmdCA+PiA1OwotICBjb25zdCBpbnQgYml0X2luZGV4
ID0gc2hpZnQgJiAzMTsKLSAgaW50IGksIGZyb207Ci0gIHVpbnQzMl90IGI7Ci0gICAgCi0gIGlm
IChzaGlmdCA+IDEyNykgewotICAgIHYxMjhfc2V0X3RvX3plcm8oeCk7Ci0gICAgcmV0dXJuOwot
ICB9Ci0KLSAgaWYgKGJpdF9pbmRleCA9PSAwKSB7Ci0KLSAgICAvKiBjb3B5IGVhY2ggd29yZCBm
cm9tIGxlZnQgc2l6ZSB0byByaWdodCBzaWRlICovCi0gICAgeC0+djMyWzQtMV0gPSB4LT52MzJb
NC0xLWJhc2VfaW5kZXhdOwotICAgIGZvciAoaT00LTE7IGkgPiBiYXNlX2luZGV4OyBpLS0pIAot
ICAgICAgeC0+djMyW2ktMV0gPSB4LT52MzJbaS0xLWJhc2VfaW5kZXhdOwotCi0gIH0gZWxzZSB7
Ci0gICAgCi0gICAgLyogc2V0IGVhY2ggd29yZCB0byB0aGUgIm9yIiBvZiB0aGUgdHdvIGJpdC1z
aGlmdGVkIHdvcmRzICovCi0gICAgZm9yIChpID0gNDsgaSA+IGJhc2VfaW5kZXg7IGktLSkgewot
ICAgICAgZnJvbSA9IGktMSAtIGJhc2VfaW5kZXg7Ci0gICAgICBiID0geC0+djMyW2Zyb21dIDw8
IGJpdF9pbmRleDsKLSAgICAgIGlmIChmcm9tID4gMCkKLSAgICAgICAgYiB8PSB4LT52MzJbZnJv
bS0xXSA+PiAoMzItYml0X2luZGV4KTsKLSAgICAgIHgtPnYzMltpLTFdID0gYjsKK3ZvaWQgdjEy
OF9yaWdodF9zaGlmdCh2MTI4X3QgKngsIGludCBzaGlmdCkKK3sKKyAgICBjb25zdCBpbnQgYmFz
ZV9pbmRleCA9IHNoaWZ0ID4+IDU7CisgICAgY29uc3QgaW50IGJpdF9pbmRleCA9IHNoaWZ0ICYg
MzE7CisgICAgaW50IGksIGZyb207CisgICAgdWludDMyX3QgYjsKKworICAgIGlmIChzaGlmdCA+
IDEyNykgeworICAgICAgICB2MTI4X3NldF90b196ZXJvKHgpOworICAgICAgICByZXR1cm47Cisg
ICAgfQorCisgICAgaWYgKGJpdF9pbmRleCA9PSAwKSB7CisgICAgICAgIC8qIGNvcHkgZWFjaCB3
b3JkIGZyb20gbGVmdCBzaXplIHRvIHJpZ2h0IHNpZGUgKi8KKyAgICAgICAgeC0+djMyWzQgLSAx
XSA9IHgtPnYzMls0IC0gMSAtIGJhc2VfaW5kZXhdOworICAgICAgICBmb3IgKGkgPSA0IC0gMTsg
aSA+IGJhc2VfaW5kZXg7IGktLSkKKyAgICAgICAgICAgIHgtPnYzMltpIC0gMV0gPSB4LT52MzJb
aSAtIDEgLSBiYXNlX2luZGV4XTsKKworICAgIH0gZWxzZSB7CisgICAgICAgIC8qIHNldCBlYWNo
IHdvcmQgdG8gdGhlICJvciIgb2YgdGhlIHR3byBiaXQtc2hpZnRlZCB3b3JkcyAqLworICAgICAg
ICBmb3IgKGkgPSA0OyBpID4gYmFzZV9pbmRleDsgaS0tKSB7CisgICAgICAgICAgICBmcm9tID0g
aSAtIDEgLSBiYXNlX2luZGV4OworICAgICAgICAgICAgYiA9IHgtPnYzMltmcm9tXSA8PCBiaXRf
aW5kZXg7CisgICAgICAgICAgICBpZiAoZnJvbSA+IDApCisgICAgICAgICAgICAgICAgYiB8PSB4
LT52MzJbZnJvbSAtIDFdID4+ICgzMiAtIGJpdF9pbmRleCk7CisgICAgICAgICAgICB4LT52MzJb
aSAtIDFdID0gYjsKKyAgICAgICAgfQorICAgIH0KKworICAgIC8qIG5vdyB3cmFwIHVwIHRoZSBm
aW5hbCBwb3J0aW9uICovCisgICAgZm9yIChpID0gMDsgaSA8IGJhc2VfaW5kZXg7IGkrKykKKyAg
ICAgICAgeC0+djMyW2ldID0gMDsKK30KKwordm9pZCB2MTI4X2xlZnRfc2hpZnQodjEyOF90ICp4
LCBpbnQgc2hpZnQpCit7CisgICAgaW50IGk7CisgICAgY29uc3QgaW50IGJhc2VfaW5kZXggPSBz
aGlmdCA+PiA1OworICAgIGNvbnN0IGludCBiaXRfaW5kZXggPSBzaGlmdCAmIDMxOworCisgICAg
aWYgKHNoaWZ0ID4gMTI3KSB7CisgICAgICAgIHYxMjhfc2V0X3RvX3plcm8oeCk7CisgICAgICAg
IHJldHVybjsKKyAgICB9CisKKyAgICBpZiAoYml0X2luZGV4ID09IDApIHsKKyAgICAgICAgZm9y
IChpID0gMDsgaSA8IDQgLSBiYXNlX2luZGV4OyBpKyspCisgICAgICAgICAgICB4LT52MzJbaV0g
PSB4LT52MzJbaSArIGJhc2VfaW5kZXhdOworICAgIH0gZWxzZSB7CisgICAgICAgIGZvciAoaSA9
IDA7IGkgPCA0IC0gYmFzZV9pbmRleCAtIDE7IGkrKykKKyAgICAgICAgICAgIHgtPnYzMltpXSA9
ICh4LT52MzJbaSArIGJhc2VfaW5kZXhdID4+IGJpdF9pbmRleCkgXgorICAgICAgICAgICAgICAg
ICAgICAgICAgKHgtPnYzMltpICsgYmFzZV9pbmRleCArIDFdIDw8ICgzMiAtIGJpdF9pbmRleCkp
OworICAgICAgICB4LT52MzJbNCAtIGJhc2VfaW5kZXggLSAxXSA9IHgtPnYzMls0IC0gMV0gPj4g
Yml0X2luZGV4OwogICAgIH0KLSAgICAKLSAgfQotCi0gIC8qIG5vdyB3cmFwIHVwIHRoZSBmaW5h
bCBwb3J0aW9uICovCi0gIGZvciAoaT0wOyBpIDwgYmFzZV9pbmRleDsgaSsrKSAKLSAgICB4LT52
MzJbaV0gPSAwOwotICAKLX0KLQotdm9pZAotdjEyOF9sZWZ0X3NoaWZ0KHYxMjhfdCAqeCwgaW50
IHNoaWZ0KSB7Ci0gIGludCBpOwotICBjb25zdCBpbnQgYmFzZV9pbmRleCA9IHNoaWZ0ID4+IDU7
Ci0gIGNvbnN0IGludCBiaXRfaW5kZXggPSBzaGlmdCAmIDMxOwotCi0gIGlmIChzaGlmdCA+IDEy
NykgewotICAgIHYxMjhfc2V0X3RvX3plcm8oeCk7Ci0gICAgcmV0dXJuOwotICB9IAotICAKLSAg
aWYgKGJpdF9pbmRleCA9PSAwKSB7Ci0gICAgZm9yIChpPTA7IGkgPCA0IC0gYmFzZV9pbmRleDsg
aSsrKQotICAgICAgeC0+djMyW2ldID0geC0+djMyW2krYmFzZV9pbmRleF07Ci0gIH0gZWxzZSB7
Ci0gICAgZm9yIChpPTA7IGkgPCA0IC0gYmFzZV9pbmRleCAtIDE7IGkrKykKLSAgICAgIHgtPnYz
MltpXSA9ICh4LT52MzJbaStiYXNlX2luZGV4XSA+PiBiaXRfaW5kZXgpIF4KLQkoeC0+djMyW2kr
YmFzZV9pbmRleCsxXSA8PCAoMzIgLSBiaXRfaW5kZXgpKTsKLSAgICB4LT52MzJbNCAtIGJhc2Vf
aW5kZXgtMV0gPSB4LT52MzJbNC0xXSA+PiBiaXRfaW5kZXg7Ci0gIH0KLQotICAvKiBub3cgd3Jh
cCB1cCB0aGUgZmluYWwgcG9ydGlvbiAqLwotICBmb3IgKGkgPSA0IC0gYmFzZV9pbmRleDsgaSA8
IDQ7IGkrKykgCi0gICAgeC0+djMyW2ldID0gMDsKIAorICAgIC8qIG5vdyB3cmFwIHVwIHRoZSBm
aW5hbCBwb3J0aW9uICovCisgICAgZm9yIChpID0gNCAtIGJhc2VfaW5kZXg7IGkgPCA0OyBpKysp
CisgICAgICAgIHgtPnYzMltpXSA9IDA7CiB9CiAKIC8qIGZ1bmN0aW9ucyBtYW5pcHVsYXRpbmcg
Yml0dmVjdG9yX3QgKi8KIAogI2lmbmRlZiBEQVRBVFlQRVNfVVNFX01BQ1JPUyAvKiBsaXR0bGUg
ZnVuY3Rpb25zIGFyZSBub3QgbWFjcm9zICovCiAKLWludAotYml0dmVjdG9yX2dldF9iaXQoY29u
c3QgYml0dmVjdG9yX3QgKnYsIGludCBiaXRfaW5kZXgpCitpbnQgYml0dmVjdG9yX2dldF9iaXQo
Y29uc3QgYml0dmVjdG9yX3QgKnYsIGludCBiaXRfaW5kZXgpCiB7Ci0gIHJldHVybiBfYml0dmVj
dG9yX2dldF9iaXQodiwgYml0X2luZGV4KTsKKyAgICByZXR1cm4gX2JpdHZlY3Rvcl9nZXRfYml0
KHYsIGJpdF9pbmRleCk7CiB9CiAKLXZvaWQKLWJpdHZlY3Rvcl9zZXRfYml0KGJpdHZlY3Rvcl90
ICp2LCBpbnQgYml0X2luZGV4KQordm9pZCBiaXR2ZWN0b3Jfc2V0X2JpdChiaXR2ZWN0b3JfdCAq
diwgaW50IGJpdF9pbmRleCkKIHsKLSAgX2JpdHZlY3Rvcl9zZXRfYml0KHYsIGJpdF9pbmRleCk7
CisgICAgX2JpdHZlY3Rvcl9zZXRfYml0KHYsIGJpdF9pbmRleCk7CiB9CiAKLXZvaWQKLWJpdHZl
Y3Rvcl9jbGVhcl9iaXQoYml0dmVjdG9yX3QgKnYsIGludCBiaXRfaW5kZXgpCit2b2lkIGJpdHZl
Y3Rvcl9jbGVhcl9iaXQoYml0dmVjdG9yX3QgKnYsIGludCBiaXRfaW5kZXgpCiB7Ci0gIF9iaXR2
ZWN0b3JfY2xlYXJfYml0KHYsIGJpdF9pbmRleCk7CisgICAgX2JpdHZlY3Rvcl9jbGVhcl9iaXQo
diwgYml0X2luZGV4KTsKIH0KIAotCiAjZW5kaWYgLyogREFUQVRZUEVTX1VTRV9NQUNST1MgKi8K
IAotaW50Ci1iaXR2ZWN0b3JfYWxsb2MoYml0dmVjdG9yX3QgKnYsIHVuc2lnbmVkIGxvbmcgbGVu
Z3RoKSB7Ci0gIHVuc2lnbmVkIGxvbmcgbDsKLQotICAvKiBSb3VuZCBsZW5ndGggdXAgdG8gYSBt
dWx0aXBsZSBvZiBiaXRzX3Blcl93b3JkICovCi0gIGxlbmd0aCA9IChsZW5ndGggKyBiaXRzX3Bl
cl93b3JkIC0gMSkgJiB+KHVuc2lnbmVkIGxvbmcpKChiaXRzX3Blcl93b3JkIC0gMSkpOwotCi0g
IGwgPSBsZW5ndGggLyBiaXRzX3Blcl93b3JkICogYnl0ZXNfcGVyX3dvcmQ7Ci0KLSAgLyogYWxs
b2NhdGUgbWVtb3J5LCB0aGVuIHNldCBwYXJhbWV0ZXJzICovCi0gIGlmIChsID09IDApCi0gICAg
di0+d29yZCA9IE5VTEw7Ci0gIGVsc2UgewotICAgIHYtPndvcmQgPSAodWludDMyX3QqKXNydHBf
Y3J5cHRvX2FsbG9jKGwpOwotICAgIGlmICh2LT53b3JkID09IE5VTEwpIHsKLSAgICAgIHYtPndv
cmQgPSBOVUxMOwotICAgICAgdi0+bGVuZ3RoID0gMDsKLSAgICAgIHJldHVybiAtMTsKK2ludCBi
aXR2ZWN0b3JfYWxsb2MoYml0dmVjdG9yX3QgKnYsIHVuc2lnbmVkIGxvbmcgbGVuZ3RoKQorewor
ICAgIHVuc2lnbmVkIGxvbmcgbDsKKworICAgIC8qIFJvdW5kIGxlbmd0aCB1cCB0byBhIG11bHRp
cGxlIG9mIGJpdHNfcGVyX3dvcmQgKi8KKyAgICBsZW5ndGggPQorICAgICAgICAobGVuZ3RoICsg
Yml0c19wZXJfd29yZCAtIDEpICYgfih1bnNpZ25lZCBsb25nKSgoYml0c19wZXJfd29yZCAtIDEp
KTsKKworICAgIGwgPSBsZW5ndGggLyBiaXRzX3Blcl93b3JkICogYnl0ZXNfcGVyX3dvcmQ7CisK
KyAgICAvKiBhbGxvY2F0ZSBtZW1vcnksIHRoZW4gc2V0IHBhcmFtZXRlcnMgKi8KKyAgICBpZiAo
bCA9PSAwKSB7CisgICAgICAgIHYtPndvcmQgPSBOVUxMOworICAgICAgICB2LT5sZW5ndGggPSAw
OworICAgICAgICByZXR1cm4gLTE7CisgICAgfSBlbHNlIHsKKyAgICAgICAgdi0+d29yZCA9ICh1
aW50MzJfdCAqKXNydHBfY3J5cHRvX2FsbG9jKGwpOworICAgICAgICBpZiAodi0+d29yZCA9PSBO
VUxMKSB7CisgICAgICAgICAgICB2LT5sZW5ndGggPSAwOworICAgICAgICAgICAgcmV0dXJuIC0x
OworICAgICAgICB9CiAgICAgfQotICB9Ci0gIHYtPmxlbmd0aCA9IGxlbmd0aDsKKyAgICB2LT5s
ZW5ndGggPSBsZW5ndGg7CiAKLSAgLyogaW5pdGlhbGl6ZSBiaXR2ZWN0b3IgdG8gemVybyAqLwot
ICBiaXR2ZWN0b3Jfc2V0X3RvX3plcm8odik7CisgICAgLyogaW5pdGlhbGl6ZSBiaXR2ZWN0b3Ig
dG8gemVybyAqLworICAgIGJpdHZlY3Rvcl9zZXRfdG9femVybyh2KTsKIAotICByZXR1cm4gMDsK
KyAgICByZXR1cm4gMDsKIH0KIAotCi12b2lkCi1iaXR2ZWN0b3JfZGVhbGxvYyhiaXR2ZWN0b3Jf
dCAqdikgewotICBpZiAodi0+d29yZCAhPSBOVUxMKQotICAgIHNydHBfY3J5cHRvX2ZyZWUodi0+
d29yZCk7Ci0gIHYtPndvcmQgPSBOVUxMOwotICB2LT5sZW5ndGggPSAwOwordm9pZCBiaXR2ZWN0
b3JfZGVhbGxvYyhiaXR2ZWN0b3JfdCAqdikKK3sKKyAgICBpZiAodi0+d29yZCAhPSBOVUxMKQor
ICAgICAgICBzcnRwX2NyeXB0b19mcmVlKHYtPndvcmQpOworICAgIHYtPndvcmQgPSBOVUxMOwor
ICAgIHYtPmxlbmd0aCA9IDA7CiB9CiAKLXZvaWQKLWJpdHZlY3Rvcl9zZXRfdG9femVybyhiaXR2
ZWN0b3JfdCAqeCkKK3ZvaWQgYml0dmVjdG9yX3NldF90b196ZXJvKGJpdHZlY3Rvcl90ICp4KQog
ewotICAvKiBDOTkgZ3VhcmFudGVlcyB0aGF0IG1lbXNldCgwKSB3aWxsIHNldCB0aGUgdmFsdWUg
MCBmb3IgdWludDMyX3QgKi8KLSAgbWVtc2V0KHgtPndvcmQsIDAsIHgtPmxlbmd0aCA+PiAzKTsK
KyAgICAvKiBDOTkgZ3VhcmFudGVlcyB0aGF0IG1lbXNldCgwKSB3aWxsIHNldCB0aGUgdmFsdWUg
MCBmb3IgdWludDMyX3QgKi8KKyAgICBtZW1zZXQoeC0+d29yZCwgMCwgeC0+bGVuZ3RoID4+IDMp
OwogfQogCi1jaGFyICoKLWJpdHZlY3Rvcl9iaXRfc3RyaW5nKGJpdHZlY3Rvcl90ICp4LCBjaGFy
KiBidWYsIGludCBsZW4pIHsKLSAgaW50IGosIGk7Ci0gIHVpbnQzMl90IG1hc2s7Ci0gIAotICBm
b3IgKGo9aT0wOyBqIDwgKGludCkoeC0+bGVuZ3RoPj41KSAmJiBpIDwgbGVuLTE7IGorKykgewot
ICAgIGZvciAobWFzaz0weDgwMDAwMDAwOyBtYXNrID4gMDsgbWFzayA+Pj0gMSkgewotICAgICAg
aWYgKHgtPndvcmRbal0gJiBtYXNrKQotCWJ1ZltpXSA9ICcxJzsKLSAgICAgIGVsc2UKLQlidWZb
aV0gPSAnMCc7Ci0gICAgICArK2k7Ci0gICAgICBpZiAoaSA+PSBsZW4tMSkKLSAgICAgICAgYnJl
YWs7CitjaGFyICpiaXR2ZWN0b3JfYml0X3N0cmluZyhiaXR2ZWN0b3JfdCAqeCwgY2hhciAqYnVm
LCBpbnQgbGVuKQoreworICAgIGludCBqLCBpOworICAgIHVpbnQzMl90IG1hc2s7CisKKyAgICBm
b3IgKGogPSBpID0gMDsgaiA8IChpbnQpKHgtPmxlbmd0aCA+PiA1KSAmJiBpIDwgbGVuIC0gMTsg
aisrKSB7CisgICAgICAgIGZvciAobWFzayA9IDB4ODAwMDAwMDA7IG1hc2sgPiAwOyBtYXNrID4+
PSAxKSB7CisgICAgICAgICAgICBpZiAoeC0+d29yZFtqXSAmIG1hc2spCisgICAgICAgICAgICAg
ICAgYnVmW2ldID0gJzEnOworICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIGJ1Zltp
XSA9ICcwJzsKKyAgICAgICAgICAgICsraTsKKyAgICAgICAgICAgIGlmIChpID49IGxlbiAtIDEp
CisgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KICAgICB9Ci0gIH0KLSAgYnVmW2ld
ID0gMDsgLyogbnVsbCB0ZXJtaW5hdGUgc3RyaW5nICovCisgICAgYnVmW2ldID0gMDsgLyogbnVs
bCB0ZXJtaW5hdGUgc3RyaW5nICovCiAKLSAgcmV0dXJuIGJ1ZjsKKyAgICByZXR1cm4gYnVmOwog
fQogCi12b2lkCi1iaXR2ZWN0b3JfbGVmdF9zaGlmdChiaXR2ZWN0b3JfdCAqeCwgaW50IHNoaWZ0
KSB7Ci0gIGludCBpOwotICBjb25zdCBpbnQgYmFzZV9pbmRleCA9IHNoaWZ0ID4+IDU7Ci0gIGNv
bnN0IGludCBiaXRfaW5kZXggPSBzaGlmdCAmIDMxOwotICBjb25zdCBpbnQgd29yZF9sZW5ndGgg
PSB4LT5sZW5ndGggPj4gNTsKLQotICBpZiAoc2hpZnQgPj0gKGludCl4LT5sZW5ndGgpIHsKLSAg
ICBiaXR2ZWN0b3Jfc2V0X3RvX3plcm8oeCk7Ci0gICAgcmV0dXJuOwotICB9IAotICAKLSAgaWYg
KGJpdF9pbmRleCA9PSAwKSB7Ci0gICAgZm9yIChpPTA7IGkgPCB3b3JkX2xlbmd0aCAtIGJhc2Vf
aW5kZXg7IGkrKykKLSAgICAgIHgtPndvcmRbaV0gPSB4LT53b3JkW2krYmFzZV9pbmRleF07Ci0g
IH0gZWxzZSB7Ci0gICAgZm9yIChpPTA7IGkgPCB3b3JkX2xlbmd0aCAtIGJhc2VfaW5kZXggLSAx
OyBpKyspCi0gICAgICB4LT53b3JkW2ldID0gKHgtPndvcmRbaStiYXNlX2luZGV4XSA+PiBiaXRf
aW5kZXgpIF4KLQkoeC0+d29yZFtpK2Jhc2VfaW5kZXgrMV0gPDwgKDMyIC0gYml0X2luZGV4KSk7
Ci0gICAgeC0+d29yZFt3b3JkX2xlbmd0aCAtIGJhc2VfaW5kZXgtMV0gPSB4LT53b3JkW3dvcmRf
bGVuZ3RoLTFdID4+IGJpdF9pbmRleDsKLSAgfQordm9pZCBiaXR2ZWN0b3JfbGVmdF9zaGlmdChi
aXR2ZWN0b3JfdCAqeCwgaW50IHNoaWZ0KQoreworICAgIGludCBpOworICAgIGNvbnN0IGludCBi
YXNlX2luZGV4ID0gc2hpZnQgPj4gNTsKKyAgICBjb25zdCBpbnQgYml0X2luZGV4ID0gc2hpZnQg
JiAzMTsKKyAgICBjb25zdCBpbnQgd29yZF9sZW5ndGggPSB4LT5sZW5ndGggPj4gNTsKKworICAg
IGlmIChzaGlmdCA+PSAoaW50KXgtPmxlbmd0aCkgeworICAgICAgICBiaXR2ZWN0b3Jfc2V0X3Rv
X3plcm8oeCk7CisgICAgICAgIHJldHVybjsKKyAgICB9CiAKLSAgLyogbm93IHdyYXAgdXAgdGhl
IGZpbmFsIHBvcnRpb24gKi8KLSAgZm9yIChpID0gd29yZF9sZW5ndGggLSBiYXNlX2luZGV4OyBp
IDwgd29yZF9sZW5ndGg7IGkrKykgCi0gICAgeC0+d29yZFtpXSA9IDA7CisgICAgaWYgKGJpdF9p
bmRleCA9PSAwKSB7CisgICAgICAgIGZvciAoaSA9IDA7IGkgPCB3b3JkX2xlbmd0aCAtIGJhc2Vf
aW5kZXg7IGkrKykKKyAgICAgICAgICAgIHgtPndvcmRbaV0gPSB4LT53b3JkW2kgKyBiYXNlX2lu
ZGV4XTsKKyAgICB9IGVsc2UgeworICAgICAgICBmb3IgKGkgPSAwOyBpIDwgd29yZF9sZW5ndGgg
LSBiYXNlX2luZGV4IC0gMTsgaSsrKQorICAgICAgICAgICAgeC0+d29yZFtpXSA9ICh4LT53b3Jk
W2kgKyBiYXNlX2luZGV4XSA+PiBiaXRfaW5kZXgpIF4KKyAgICAgICAgICAgICAgICAgICAgICAg
ICAoeC0+d29yZFtpICsgYmFzZV9pbmRleCArIDFdIDw8ICgzMiAtIGJpdF9pbmRleCkpOworICAg
ICAgICB4LT53b3JkW3dvcmRfbGVuZ3RoIC0gYmFzZV9pbmRleCAtIDFdID0KKyAgICAgICAgICAg
IHgtPndvcmRbd29yZF9sZW5ndGggLSAxXSA+PiBiaXRfaW5kZXg7CisgICAgfQogCisgICAgLyog
bm93IHdyYXAgdXAgdGhlIGZpbmFsIHBvcnRpb24gKi8KKyAgICBmb3IgKGkgPSB3b3JkX2xlbmd0
aCAtIGJhc2VfaW5kZXg7IGkgPCB3b3JkX2xlbmd0aDsgaSsrKQorICAgICAgICB4LT53b3JkW2ld
ID0gMDsKIH0KIAotaW50Ci1vY3RldF9zdHJpbmdfaXNfZXEodWludDhfdCAqYSwgdWludDhfdCAq
YiwgaW50IGxlbikgewotICB1aW50OF90ICplbmQgPSBiICsgbGVuOwotICB1aW50OF90IGFjY3Vt
dWxhdG9yID0gMDsKLQotICAvKgotICAgKiBXZSB1c2UgdGhpcyBzb21ld2hhdCBvYnNjdXJlIGlt
cGxlbWVudGF0aW9uIHRvIHRyeSB0byBlbnN1cmUgdGhlIHJ1bm5pbmcKLSAgICogdGltZSBvbmx5
IGRlcGVuZHMgb24gbGVuLCBldmVuIGFjY291bnRpbmcgZm9yIGNvbXBpbGVyIG9wdGltaXphdGlv
bnMuCi0gICAqIFRoZSBhY2N1bXVsYXRvciBlbmRzIHVwIHplcm8gaWZmIHRoZSBzdHJpbmdzIGFy
ZSBlcXVhbC4KLSAgICovCi0gIHdoaWxlIChiIDwgZW5kKQotICAgIGFjY3VtdWxhdG9yIHw9ICgq
YSsrIF4gKmIrKyk7Ci0KLSAgLyogUmV0dXJuIDEgaWYgKm5vdCogZXF1YWwuICovCi0gIHJldHVy
biBhY2N1bXVsYXRvciAhPSAwOworaW50IG9jdGV0X3N0cmluZ19pc19lcSh1aW50OF90ICphLCB1
aW50OF90ICpiLCBpbnQgbGVuKQoreworICAgIHVpbnQ4X3QgKmVuZCA9IGIgKyBsZW47CisgICAg
dWludDhfdCBhY2N1bXVsYXRvciA9IDA7CisKKyAgICAvKgorICAgICAqIFdlIHVzZSB0aGlzIHNv
bWV3aGF0IG9ic2N1cmUgaW1wbGVtZW50YXRpb24gdG8gdHJ5IHRvIGVuc3VyZSB0aGUgcnVubmlu
ZworICAgICAqIHRpbWUgb25seSBkZXBlbmRzIG9uIGxlbiwgZXZlbiBhY2NvdW50aW5nIGZvciBj
b21waWxlciBvcHRpbWl6YXRpb25zLgorICAgICAqIFRoZSBhY2N1bXVsYXRvciBlbmRzIHVwIHpl
cm8gaWZmIHRoZSBzdHJpbmdzIGFyZSBlcXVhbC4KKyAgICAgKi8KKyAgICB3aGlsZSAoYiA8IGVu
ZCkKKyAgICAgICAgYWNjdW11bGF0b3IgfD0gKCphKysgXiAqYisrKTsKKworICAgIC8qIFJldHVy
biAxIGlmICpub3QqIGVxdWFsLiAqLworICAgIHJldHVybiBhY2N1bXVsYXRvciAhPSAwOwogfQog
Ci12b2lkCi1zcnRwX2NsZWFuc2Uodm9pZCAqcywgc2l6ZV90IGxlbikKK3ZvaWQgc3J0cF9jbGVh
bnNlKHZvaWQgKnMsIHNpemVfdCBsZW4pCiB7Ci0gIHZvbGF0aWxlIHVuc2lnbmVkIGNoYXIgKnAg
PSAodm9sYXRpbGUgdW5zaWduZWQgY2hhciAqKXM7Ci0gIHdoaWxlKGxlbi0tKSAqcCsrID0gMDsK
KyAgICB2b2xhdGlsZSB1bnNpZ25lZCBjaGFyICpwID0gKHZvbGF0aWxlIHVuc2lnbmVkIGNoYXIg
KilzOworICAgIHdoaWxlIChsZW4tLSkKKyAgICAgICAgKnArKyA9IDA7CiB9CiAKLXZvaWQKLW9j
dGV0X3N0cmluZ19zZXRfdG9femVybyh2b2lkICpzLCBzaXplX3QgbGVuKQordm9pZCBvY3RldF9z
dHJpbmdfc2V0X3RvX3plcm8odm9pZCAqcywgc2l6ZV90IGxlbikKIHsKICNpZmRlZiBPUEVOU1NM
Ci0gIE9QRU5TU0xfY2xlYW5zZShzLCBsZW4pOworICAgIE9QRU5TU0xfY2xlYW5zZShzLCBsZW4p
OwogI2Vsc2UKLSAgc3J0cF9jbGVhbnNlKHMsIGxlbik7CisgICAgc3J0cF9jbGVhbnNlKHMsIGxl
bik7CiAjZW5kaWYKIH0KIAogI2lmZGVmIFRFU1RBUFBfU09VUkNFCiAKIHN0YXRpYyBjb25zdCBj
aGFyIGI2NGNoYXJzW10gPSAiQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVoiCi0gICJhYmNkZWZn
aGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkrLyI7Ci0KLXN0YXRpYyBpbnQgYmFzZTY0X2Js
b2NrX3RvX29jdGV0X3RyaXBsZShjaGFyICpvdXQsIGNoYXIgKmluKSB7Ci0gIHVuc2lnbmVkIGNo
YXIgc2V4dGV0c1s0XSA9IHswfTsKLSAgaW50IGogPSAwOwotICBpbnQgaTsKLQotICBmb3IgKGkg
PSAwOyBpIDwgNDsgaSsrKSB7Ci0gICAgY2hhciAqcCA9IHN0cmNocihiNjRjaGFycywgaW5baV0p
OwotICAgIGlmIChwICE9IE5VTEwpIHNleHRldHNbaV0gPSBwIC0gYjY0Y2hhcnM7Ci0gICAgZWxz
ZSBqKys7Ci0gIH0KLQotICBvdXRbMF0gPSAoc2V4dGV0c1swXTw8Mil8KHNleHRldHNbMV0+PjQp
OwotICBpZiAoaiA8IDIpIG91dFsxXSA9IChzZXh0ZXRzWzFdPDw0KXwoc2V4dGV0c1syXT4+Mik7
Ci0gIGlmIChqIDwgMSkgb3V0WzJdID0gKHNleHRldHNbMl08PDYpfHNleHRldHNbM107Ci0gIHJl
dHVybiBqOwotfQotCi1pbnQgYmFzZTY0X3N0cmluZ190b19vY3RldF9zdHJpbmcoY2hhciAqb3V0
LCBpbnQgKnBhZCwgY2hhciAqaW4sIGludCBsZW4pIHsKLSAgaW50IGsgPSAwOwotICBpbnQgaSA9
IDA7Ci0gIGludCBqID0gMDsKLSAgaWYgKGxlbiAlIDQgIT0gMCkgcmV0dXJuIDA7Ci0KLSAgd2hp
bGUgKGkgPCBsZW4gJiYgaiA9PSAwKSB7Ci0gICAgaiA9IGJhc2U2NF9ibG9ja190b19vY3RldF90
cmlwbGUob3V0ICsgaywgaW4gKyBpKTsKLSAgICBrICs9IDM7Ci0gICAgaSArPSA0OwotICB9Ci0g
ICpwYWQgPSBqOwotICByZXR1cm4gaTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAi
YWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5Ky8iOworCitzdGF0aWMgaW50IGJh
c2U2NF9ibG9ja190b19vY3RldF90cmlwbGUoY2hhciAqb3V0LCBjaGFyICppbikKK3sKKyAgICB1
bnNpZ25lZCBjaGFyIHNleHRldHNbNF0gPSB7IDAgfTsKKyAgICBpbnQgaiA9IDA7CisgICAgaW50
IGk7CisKKyAgICBmb3IgKGkgPSAwOyBpIDwgNDsgaSsrKSB7CisgICAgICAgIGNoYXIgKnAgPSBz
dHJjaHIoYjY0Y2hhcnMsIGluW2ldKTsKKyAgICAgICAgaWYgKHAgIT0gTlVMTCkKKyAgICAgICAg
ICAgIHNleHRldHNbaV0gPSBwIC0gYjY0Y2hhcnM7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAg
IGorKzsKKyAgICB9CisKKyAgICBvdXRbMF0gPSAoc2V4dGV0c1swXSA8PCAyKSB8IChzZXh0ZXRz
WzFdID4+IDQpOworICAgIGlmIChqIDwgMikKKyAgICAgICAgb3V0WzFdID0gKHNleHRldHNbMV0g
PDwgNCkgfCAoc2V4dGV0c1syXSA+PiAyKTsKKyAgICBpZiAoaiA8IDEpCisgICAgICAgIG91dFsy
XSA9IChzZXh0ZXRzWzJdIDw8IDYpIHwgc2V4dGV0c1szXTsKKyAgICByZXR1cm4gajsKK30KKwor
aW50IGJhc2U2NF9zdHJpbmdfdG9fb2N0ZXRfc3RyaW5nKGNoYXIgKm91dCwgaW50ICpwYWQsIGNo
YXIgKmluLCBpbnQgbGVuKQoreworICAgIGludCBrID0gMDsKKyAgICBpbnQgaSA9IDA7CisgICAg
aW50IGogPSAwOworICAgIGlmIChsZW4gJSA0ICE9IDApCisgICAgICAgIHJldHVybiAwOworCisg
ICAgd2hpbGUgKGkgPCBsZW4gJiYgaiA9PSAwKSB7CisgICAgICAgIGogPSBiYXNlNjRfYmxvY2tf
dG9fb2N0ZXRfdHJpcGxlKG91dCArIGssIGluICsgaSk7CisgICAgICAgIGsgKz0gMzsKKyAgICAg
ICAgaSArPSA0OworICAgIH0KKyAgICAqcGFkID0gajsKKyAgICByZXR1cm4gaTsKIH0KIAogI2Vu
ZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L2xpYnNydHAvY3J5cHRvL21hdGgvc3RhdC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9tYXRoL3N0YXQuYwppbmRl
eCAwYjRhZWMzNzY0OWZjNDBjMmM0MTZiYzNiOTk2YmFkZjAxOTFmZWU4Li42ZGQzMzJiMGNmNTM2
YzUzYTE0ZTNlN2NiNmUyNmZkNjJhNDBiNzZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL21hdGgvc3RhdC5j
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGli
c3J0cC9jcnlwdG8vbWF0aC9zdGF0LmMKQEAgLTEsMzMgKzEsMzMgQEAKIC8qCiAgKiBzdGF0cy5j
CiAgKgotICogc3RhdGlzdGljYWwgdGVzdHMgCi0gKiAKKyAqIHN0YXRpc3RpY2FsIHRlc3RzCisg
KgogICogRGF2aWQgQS4gTWNHcmV3CiAgKiBDaXNjbyBTeXN0ZW1zLCBJbmMuCiAgKi8KIAogLyoK
LSAqCQorICoKICAqIENvcHlyaWdodCAoYykgMjAwMS0yMDE3LCBDaXNjbyBTeXN0ZW1zLCBJbmMu
CiAgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICogCisgKgogICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKICAqIGFyZSBtZXQ6Ci0gKiAKKyAqCiAgKiAgIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3Vy
Y2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CiAgKiAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIAor
ICoKICAqICAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZQogICogICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZwogICogICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFu
ZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQKICAqICAgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgotICogCisgKgogICogICBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBDaXNjbyBTeXN0ZW1zLCBJ
bmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCiAgKiAgIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0
byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZAogICogICBmcm9tIHRoaXMgc29m
dHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0gKiAKKyAq
CiAgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBB
TkQgQ09OVFJJQlVUT1JTCiAgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAogICogTElNSVRFRCBUTywgVEhFIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKQEAgLTQ0LDE0ICs0NCwx
NCBAQAogICovCiAKICNpZmRlZiBIQVZFX0NPTkZJR19ICi0gICAgI2luY2x1ZGUgPGNvbmZpZy5o
PgorI2luY2x1ZGUgPGNvbmZpZy5oPgogI2VuZGlmCiAKICNpbmNsdWRlICJzdGF0LmgiCiAKLXNy
dHBfZGVidWdfbW9kdWxlX3QgbW9kX3N0YXQgPSB7Ci0gIDAsICAgICAgICAgICAgICAgICAvKiBk
ZWJ1Z2dpbmcgaXMgb2ZmIGJ5IGRlZmF1bHQgKi8KLSAgKGNoYXIgKikic3RhdCB0ZXN0IiAgICAg
ICAgLyogcHJpbnRhYmxlIG1vZHVsZSBuYW1lICAgICAgICovCitzcnRwX2RlYnVnX21vZHVsZV90
IHNydHBfbW9kX3N0YXQgPSB7CisgICAgMCwgICAgICAgICAgICAgICAgICAvKiBkZWJ1Z2dpbmcg
aXMgb2ZmIGJ5IGRlZmF1bHQgKi8KKyAgICAoY2hhciAqKSJzdGF0IHRlc3QiIC8qIHByaW50YWJs
ZSBtb2R1bGUgbmFtZSAgICAgICAqLwogfTsKIAogLyoKQEAgLTYxLDE2NiArNjEsMTUzIEBAIHNy
dHBfZGVidWdfbW9kdWxlX3QgbW9kX3N0YXQgPSB7CiAKICNkZWZpbmUgU1RBVF9URVNUX0RBVEFf
TEVOIDI1MDAKIAotc3J0cF9lcnJfc3RhdHVzX3QKLXN0YXRfdGVzdF9tb25vYml0KHVpbnQ4X3Qg
KmRhdGEpIHsKLSAgdWludDhfdCAqZGF0YV9lbmQgPSBkYXRhICsgU1RBVF9URVNUX0RBVEFfTEVO
OwotICB1aW50MTZfdCBvbmVzX2NvdW50Oworc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdF90ZXN0X21v
bm9iaXQodWludDhfdCAqZGF0YSkKK3sKKyAgICB1aW50OF90ICpkYXRhX2VuZCA9IGRhdGEgKyBT
VEFUX1RFU1RfREFUQV9MRU47CisgICAgdWludDE2X3Qgb25lc19jb3VudDsKIAotICBvbmVzX2Nv
dW50ID0gMDsKLSAgd2hpbGUgKGRhdGEgPCBkYXRhX2VuZCkgewotICAgIG9uZXNfY291bnQgKz0g
b2N0ZXRfZ2V0X3dlaWdodCgqZGF0YSk7Ci0gICAgZGF0YSsrOwotICB9CisgICAgb25lc19jb3Vu
dCA9IDA7CisgICAgd2hpbGUgKGRhdGEgPCBkYXRhX2VuZCkgeworICAgICAgICBvbmVzX2NvdW50
ICs9IG9jdGV0X2dldF93ZWlnaHQoKmRhdGEpOworICAgICAgICBkYXRhKys7CisgICAgfQogCi0g
IGRlYnVnX3ByaW50KG1vZF9zdGF0LCAiYml0IGNvdW50OiAlZCIsIG9uZXNfY291bnQpOwotICAK
LSAgaWYgKChvbmVzX2NvdW50IDwgOTcyNSkgfHwgKG9uZXNfY291bnQgPiAxMDI3NSkpCi0gICAg
cmV0dXJuIHNydHBfZXJyX3N0YXR1c19hbGdvX2ZhaWw7CisgICAgZGVidWdfcHJpbnQoc3J0cF9t
b2Rfc3RhdCwgImJpdCBjb3VudDogJWQiLCBvbmVzX2NvdW50KTsKIAotICByZXR1cm4gc3J0cF9l
cnJfc3RhdHVzX29rOwotfQorICAgIGlmICgob25lc19jb3VudCA8IDk3MjUpIHx8IChvbmVzX2Nv
dW50ID4gMTAyNzUpKQorICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2FsZ29fZmFpbDsK
IAotc3J0cF9lcnJfc3RhdHVzX3QKLXN0YXRfdGVzdF9wb2tlcih1aW50OF90ICpkYXRhKSB7Ci0g
IGludCBpOwotICB1aW50OF90ICpkYXRhX2VuZCA9IGRhdGEgKyBTVEFUX1RFU1RfREFUQV9MRU47
Ci0gIGRvdWJsZSBwb2tlcjsKLSAgdWludDE2X3QgZlsxNl0gPSB7Ci0gICAgMCwgMCwgMCwgMCwg
MCwgMCwgMCwgMCwKLSAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwCi0gIH07Ci0gIAotICB3aGls
ZSAoZGF0YSA8IGRhdGFfZW5kKSB7Ci0gICAgZlsqZGF0YSAmIDB4MGZdKys7ICAgIC8qIGluY3Jl
bWVudCBmcmVxLiBjb3VudCBmb3IgbG93IG5pYmJsZSAgKi8KLSAgICBmWygqZGF0YSkgPj4gNF0r
KzsgICAgLyogaW5jcmVtZW50IGZyZXEuIGNvdW50IGZvciBoaWdoIG5pYmJsZSAqLwotICAgIGRh
dGErKzsKLSAgfQotCi0gIHBva2VyID0gMC4wOwotICBmb3IgKGk9MDsgaSA8IDE2OyBpKyspIAot
ICAgIHBva2VyICs9IChkb3VibGUpIGZbaV0gKiBmW2ldOwotCi0gIHBva2VyICo9ICgxNi4wIC8g
NTAwMC4wKTsKLSAgcG9rZXIgLT0gNTAwMC4wOwotCi0gIGRlYnVnX3ByaW50KG1vZF9zdGF0LCAi
cG9rZXIgdGVzdDogJWZcbiIsIHBva2VyKTsKLSAgICAKLSAgaWYgKChwb2tlciA8IDIuMTYpIHx8
IChwb2tlciA+IDQ2LjE3KSkKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2FsZ29fZmFpbDsK
LSAgCi0gIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CisgICAgcmV0dXJuIHNydHBfZXJyX3N0
YXR1c19vazsKIH0KIAorc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdF90ZXN0X3Bva2VyKHVpbnQ4X3Qg
KmRhdGEpCit7CisgICAgaW50IGk7CisgICAgdWludDhfdCAqZGF0YV9lbmQgPSBkYXRhICsgU1RB
VF9URVNUX0RBVEFfTEVOOworICAgIGRvdWJsZSBwb2tlcjsKKyAgICB1aW50MTZfdCBmWzE2XSA9
IHsgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCB9OworCisg
ICAgd2hpbGUgKGRhdGEgPCBkYXRhX2VuZCkgeworICAgICAgICBmWypkYXRhICYgMHgwZl0rKzsg
LyogaW5jcmVtZW50IGZyZXEuIGNvdW50IGZvciBsb3cgbmliYmxlICAqLworICAgICAgICBmWygq
ZGF0YSkgPj4gNF0rKzsgLyogaW5jcmVtZW50IGZyZXEuIGNvdW50IGZvciBoaWdoIG5pYmJsZSAq
LworICAgICAgICBkYXRhKys7CisgICAgfQorCisgICAgcG9rZXIgPSAwLjA7CisgICAgZm9yIChp
ID0gMDsgaSA8IDE2OyBpKyspCisgICAgICAgIHBva2VyICs9IChkb3VibGUpZltpXSAqIGZbaV07
CisKKyAgICBwb2tlciAqPSAoMTYuMCAvIDUwMDAuMCk7CisgICAgcG9rZXIgLT0gNTAwMC4wOwor
CisgICAgZGVidWdfcHJpbnQoc3J0cF9tb2Rfc3RhdCwgInBva2VyIHRlc3Q6ICVmXG4iLCBwb2tl
cik7CisKKyAgICBpZiAoKHBva2VyIDwgMi4xNikgfHwgKHBva2VyID4gNDYuMTcpKQorICAgICAg
ICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2FsZ29fZmFpbDsKKworICAgIHJldHVybiBzcnRwX2Vy
cl9zdGF0dXNfb2s7Cit9CiAKIC8qCiAgKiBydW5zW2ldIGhvbGRzIHRoZSBudW1iZXIgb2YgcnVu
cyBvZiBzaXplIChpLTEpCiAgKi8KIAotc3J0cF9lcnJfc3RhdHVzX3QKLXN0YXRfdGVzdF9ydW5z
KHVpbnQ4X3QgKmRhdGEpIHsKLSAgdWludDhfdCAqZGF0YV9lbmQgPSBkYXRhICsgU1RBVF9URVNU
X0RBVEFfTEVOOwotICB1aW50MTZfdCBydW5zWzZdID0geyAwLCAwLCAwLCAwLCAwLCAwIH07IAot
ICB1aW50MTZfdCBnYXBzWzZdID0geyAwLCAwLCAwLCAwLCAwLCAwIH07Ci0gIHVpbnQxNl90IGxv
X3ZhbHVlWzZdID0geyAyMzE1LCAxMTE0LCA1MjcsIDI0MCwgMTAzLCAxMDMgfTsKLSAgdWludDE2
X3QgaGlfdmFsdWVbNl0gPSB7IDI2ODUsIDEzODYsIDcyMywgMzg0LCAyMDksIDIwOSB9OwotICBp
bnQgc3RhdGUgPSAwOwotICB1aW50MTZfdCBtYXNrOwotICBpbnQgaTsKLSAgCi0gIC8qCi0gICAq
IHRoZSBzdGF0ZSB2YXJpYWJsZSBob2xkcyB0aGUgbnVtYmVyIG9mIGJpdHMgaW4gdGhlCi0gICAq
IGN1cnJlbnQgcnVuIChvciBnYXAsIGlmIG5lZ2F0aXZlKQotICAgKi8KLSAgCi0gIHdoaWxlIChk
YXRhIDwgZGF0YV9lbmQpIHsKLQotICAgIC8qIGxvb3Agb3ZlciB0aGUgYml0cyBvZiB0aGlzIGJ5
dGUgKi8KLSAgICBmb3IgKG1hc2sgPSAxOyBtYXNrIDwgMjU2OyBtYXNrIDw8PSAxKSB7Ci0gICAg
ICBpZiAoKmRhdGEgJiBtYXNrKSB7Ci0KLSAJLyogbmV4dCBiaXQgaXMgYSBvbmUgICovCi0JaWYg
KHN0YXRlID4gMCkgewotCi0JICAvKiBwcmVmaXggaXMgYSBydW4sIHNvIGluY3JlbWVudCB0aGUg
cnVuLWNvdW50ICAqLwotCSAgc3RhdGUrKzsgICAgICAgICAgICAgICAgICAgICAgICAgIAotCi0J
ICAvKiBjaGVjayBmb3IgbG9uZyBydW5zICovIAotCSAgaWYgKHN0YXRlID4gMjUpIHsKLQkJZGVi
dWdfcHJpbnQobW9kX3N0YXQsICI+MjUgcnVuczogJWQiLCBzdGF0ZSk7Ci0JCXJldHVybiBzcnRw
X2Vycl9zdGF0dXNfYWxnb19mYWlsOwotCSAgfQotCi0JfSBlbHNlIGlmIChzdGF0ZSA8IDApIHsK
LQotCSAgLyogcHJlZml4IGlzIGEgZ2FwICAqLwotCSAgaWYgKHN0YXRlIDwgLTI1KSB7Ci0JCWRl
YnVnX3ByaW50KG1vZF9zdGF0LCAiPjI1IGdhcHM6ICVkIiwgc3RhdGUpOwotCSAgICByZXR1cm4g
c3J0cF9lcnJfc3RhdHVzX2FsZ29fZmFpbDsgICAgLyogbG9uZy1ydW5zIHRlc3QgZmFpbGVkICAg
Ki8KLQkgIH0KLQkgIGlmIChzdGF0ZSA8IC02KSB7Ci0JICAgIHN0YXRlID0gLTY7ICAgICAgICAg
ICAgICAgICAgICAgLyogZ3JvdXAgdG9nZXRoZXIgZ2FwcyA+IDUgKi8KLQkgIH0KLQkgIGdhcHNb
LTEtc3RhdGVdKys7ICAgICAgICAgICAgICAgICAvKiBpbmNyZW1lbnQgZ2FwIGNvdW50ICAgICAg
Ki8KLSAgICAgICAgICBzdGF0ZSA9IDE7ICAgICAgICAgICAgICAgICAgICAgICAgLyogc2V0IHN0
YXRlIGF0IG9uZSBzZXQgYml0ICovCi0JfSBlbHNlIHsKLQotCSAgLyogc3RhdGUgaXMgemVybzsg
dGhpcyBoYXBwZW5zIG9ubHkgYXQgaW5pdGlhbGl6YXRpb24gICAgICAgICovCi0JICBzdGF0ZSA9
IDE7ICAgICAgICAgICAgCi0JfQotICAgICAgfSBlbHNlIHsKLQotCS8qIG5leHQgYml0IGlzIGEg
emVybyAgKi8KLQlpZiAoc3RhdGUgPiAwKSB7Ci0KLQkgIC8qIHByZWZpeCBpcyBhIHJ1biAqLwot
CSAgaWYgKHN0YXRlID4gMjUpIHsKLQkJZGVidWdfcHJpbnQobW9kX3N0YXQsICI+MjUgcnVucyAo
Mik6ICVkIiwgc3RhdGUpOwotCSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2FsZ29fZmFpbDsg
ICAgLyogbG9uZy1ydW5zIHRlc3QgZmFpbGVkICAgKi8KLQkgIH0KLQkgIGlmIChzdGF0ZSA+IDYp
IHsKLQkgICAgc3RhdGUgPSA2OyAgICAgICAgICAgICAgICAgICAgICAvKiBncm91cCB0b2dldGhl
ciBydW5zID4gNSAqLwotCSAgfQotCSAgcnVuc1tzdGF0ZS0xXSsrOyAgICAgICAgICAgICAgICAg
IC8qIGluY3JlbWVudCBydW4gY291bnQgICAgICAgKi8KLSAgICAgICAgICBzdGF0ZSA9IC0xOyAg
ICAgICAgICAgICAgICAgICAgICAgLyogc2V0IHN0YXRlIGF0IG9uZSB6ZXJvIGJpdCAqLwotCX0g
ZWxzZSBpZiAoc3RhdGUgPCAwKSB7Ci0KLQkgIC8qIHByZWZpeCBpcyBhIGdhcCwgc28gaW5jcmVt
ZW50IGdhcC1jb3VudCAoZGVjcmVtZW50IHN0YXRlKSAqLwotCSAgc3RhdGUtLTsKLQotCSAgLyog
Y2hlY2sgZm9yIGxvbmcgZ2FwcyAqLyAKLQkgIGlmIChzdGF0ZSA8IC0yNSkgewotCQlkZWJ1Z19w
cmludChtb2Rfc3RhdCwgIj4yNSBnYXBzICgyKTogJWQiLCBzdGF0ZSk7Ci0JICAgIHJldHVybiBz
cnRwX2Vycl9zdGF0dXNfYWxnb19mYWlsOwotCSAgfQotCi0JfSBlbHNlIHsKLQotCSAgLyogc3Rh
dGUgaXMgemVybzsgdGhpcyBoYXBwZW5zIG9ubHkgYXQgaW5pdGlhbGl6YXRpb24gICAgICAgICov
Ci0JICBzdGF0ZSA9IC0xOwotCX0KLSAgICAgIH0KK3NydHBfZXJyX3N0YXR1c190IHN0YXRfdGVz
dF9ydW5zKHVpbnQ4X3QgKmRhdGEpCit7CisgICAgdWludDhfdCAqZGF0YV9lbmQgPSBkYXRhICsg
U1RBVF9URVNUX0RBVEFfTEVOOworICAgIHVpbnQxNl90IHJ1bnNbNl0gPSB7IDAsIDAsIDAsIDAs
IDAsIDAgfTsKKyAgICB1aW50MTZfdCBnYXBzWzZdID0geyAwLCAwLCAwLCAwLCAwLCAwIH07Cisg
ICAgdWludDE2X3QgbG9fdmFsdWVbNl0gPSB7IDIzMTUsIDExMTQsIDUyNywgMjQwLCAxMDMsIDEw
MyB9OworICAgIHVpbnQxNl90IGhpX3ZhbHVlWzZdID0geyAyNjg1LCAxMzg2LCA3MjMsIDM4NCwg
MjA5LCAyMDkgfTsKKyAgICBpbnQgc3RhdGUgPSAwOworICAgIHVpbnQxNl90IG1hc2s7CisgICAg
aW50IGk7CisKKyAgICAvKgorICAgICAqIHRoZSBzdGF0ZSB2YXJpYWJsZSBob2xkcyB0aGUgbnVt
YmVyIG9mIGJpdHMgaW4gdGhlCisgICAgICogY3VycmVudCBydW4gKG9yIGdhcCwgaWYgbmVnYXRp
dmUpCisgICAgICovCisKKyAgICB3aGlsZSAoZGF0YSA8IGRhdGFfZW5kKSB7CisgICAgICAgIC8q
IGxvb3Agb3ZlciB0aGUgYml0cyBvZiB0aGlzIGJ5dGUgKi8KKyAgICAgICAgZm9yIChtYXNrID0g
MTsgbWFzayA8IDI1NjsgbWFzayA8PD0gMSkgeworICAgICAgICAgICAgaWYgKCpkYXRhICYgbWFz
aykgeworICAgICAgICAgICAgICAgIC8qIG5leHQgYml0IGlzIGEgb25lICAqLworICAgICAgICAg
ICAgICAgIGlmIChzdGF0ZSA+IDApIHsKKyAgICAgICAgICAgICAgICAgICAgLyogcHJlZml4IGlz
IGEgcnVuLCBzbyBpbmNyZW1lbnQgdGhlIHJ1bi1jb3VudCAgKi8KKyAgICAgICAgICAgICAgICAg
ICAgc3RhdGUrKzsKKworICAgICAgICAgICAgICAgICAgICAvKiBjaGVjayBmb3IgbG9uZyBydW5z
ICovCisgICAgICAgICAgICAgICAgICAgIGlmIChzdGF0ZSA+IDI1KSB7CisgICAgICAgICAgICAg
ICAgICAgICAgICBkZWJ1Z19wcmludChzcnRwX21vZF9zdGF0LCAiPjI1IHJ1bnM6ICVkIiwgc3Rh
dGUpOworICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19hbGdv
X2ZhaWw7CisgICAgICAgICAgICAgICAgICAgIH0KKworICAgICAgICAgICAgICAgIH0gZWxzZSBp
ZiAoc3RhdGUgPCAwKSB7CisgICAgICAgICAgICAgICAgICAgIC8qIHByZWZpeCBpcyBhIGdhcCAg
Ki8KKyAgICAgICAgICAgICAgICAgICAgaWYgKHN0YXRlIDwgLTI1KSB7CisgICAgICAgICAgICAg
ICAgICAgICAgICBkZWJ1Z19wcmludChzcnRwX21vZF9zdGF0LCAiPjI1IGdhcHM6ICVkIiwgc3Rh
dGUpOworICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19hbGdv
X2ZhaWw7IC8qIGxvbmctcnVucyB0ZXN0CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmFpbGVkICAgKi8KKyAgICAgICAgICAgICAg
ICAgICAgfQorICAgICAgICAgICAgICAgICAgICBpZiAoc3RhdGUgPCAtNikgeworICAgICAgICAg
ICAgICAgICAgICAgICAgc3RhdGUgPSAtNjsgLyogZ3JvdXAgdG9nZXRoZXIgZ2FwcyA+IDUgKi8K
KyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICBnYXBzWy0xIC0gc3Rh
dGVdKys7IC8qIGluY3JlbWVudCBnYXAgY291bnQgICAgICAqLworICAgICAgICAgICAgICAgICAg
ICBzdGF0ZSA9IDE7ICAgICAgICAgIC8qIHNldCBzdGF0ZSBhdCBvbmUgc2V0IGJpdCAqLworICAg
ICAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgICAgIC8qIHN0YXRlIGlzIHpl
cm87IHRoaXMgaGFwcGVucyBvbmx5IGF0IGluaXRpYWxpemF0aW9uICovCisgICAgICAgICAgICAg
ICAgICAgIHN0YXRlID0gMTsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9IGVsc2Ug
eworICAgICAgICAgICAgICAgIC8qIG5leHQgYml0IGlzIGEgemVybyAgKi8KKyAgICAgICAgICAg
ICAgICBpZiAoc3RhdGUgPiAwKSB7CisgICAgICAgICAgICAgICAgICAgIC8qIHByZWZpeCBpcyBh
IHJ1biAqLworICAgICAgICAgICAgICAgICAgICBpZiAoc3RhdGUgPiAyNSkgeworICAgICAgICAg
ICAgICAgICAgICAgICAgZGVidWdfcHJpbnQoc3J0cF9tb2Rfc3RhdCwgIj4yNSBydW5zICgyKTog
JWQiLCBzdGF0ZSk7CisgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3Rh
dHVzX2FsZ29fZmFpbDsgLyogbG9uZy1ydW5zIHRlc3QKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmYWlsZWQgICAqLworICAgICAg
ICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgIGlmIChzdGF0ZSA+IDYpIHsKKyAg
ICAgICAgICAgICAgICAgICAgICAgIHN0YXRlID0gNjsgLyogZ3JvdXAgdG9nZXRoZXIgcnVucyA+
IDUgKi8KKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICBydW5zW3N0
YXRlIC0gMV0rKzsgLyogaW5jcmVtZW50IHJ1biBjb3VudCAgICAgICAqLworICAgICAgICAgICAg
ICAgICAgICBzdGF0ZSA9IC0xOyAgICAgICAgLyogc2V0IHN0YXRlIGF0IG9uZSB6ZXJvIGJpdCAq
LworICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoc3RhdGUgPCAwKSB7CisgICAgICAgICAgICAg
ICAgICAgIC8qIHByZWZpeCBpcyBhIGdhcCwgc28gaW5jcmVtZW50IGdhcC1jb3VudCAoZGVjcmVt
ZW50IHN0YXRlKQorICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICAgICAgICAgICAgICAgICAg
c3RhdGUtLTsKKworICAgICAgICAgICAgICAgICAgICAvKiBjaGVjayBmb3IgbG9uZyBnYXBzICov
CisgICAgICAgICAgICAgICAgICAgIGlmIChzdGF0ZSA8IC0yNSkgeworICAgICAgICAgICAgICAg
ICAgICAgICAgZGVidWdfcHJpbnQoc3J0cF9tb2Rfc3RhdCwgIj4yNSBnYXBzICgyKTogJWQiLCBz
dGF0ZSk7CisgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2Fs
Z29fZmFpbDsKKyAgICAgICAgICAgICAgICAgICAgfQorCisgICAgICAgICAgICAgICAgfSBlbHNl
IHsKKyAgICAgICAgICAgICAgICAgICAgLyogc3RhdGUgaXMgemVybzsgdGhpcyBoYXBwZW5zIG9u
bHkgYXQgaW5pdGlhbGl6YXRpb24gKi8KKyAgICAgICAgICAgICAgICAgICAgc3RhdGUgPSAtMTsK
KyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgIH0KKworICAgICAgICAv
KiBtb3ZlIGFsb25nIHRvIG5leHQgb2N0ZXQgKi8KKyAgICAgICAgZGF0YSsrOwogICAgIH0KIAot
ICAgIC8qIG1vdmUgYWxvbmcgdG8gbmV4dCBvY3RldCAqLwotICAgIGRhdGErKzsKLSAgfQotCi0g
IGlmIChtb2Rfc3RhdC5vbikgewotICAgIGRlYnVnX3ByaW50KG1vZF9zdGF0LCAicnVucyB0ZXN0
IiwgTlVMTCk7Ci0gICAgZm9yIChpPTA7IGkgPCA2OyBpKyspCi0gICAgICBkZWJ1Z19wcmludCht
b2Rfc3RhdCwgIiAgcnVuc1tdOiAlZCIsIHJ1bnNbaV0pOwotICAgIGZvciAoaT0wOyBpIDwgNjsg
aSsrKQotICAgICAgZGVidWdfcHJpbnQobW9kX3N0YXQsICIgIGdhcHNbXTogJWQiLCBnYXBzW2ld
KTsKLSAgfQotCi0gIC8qIGNoZWNrIHJ1biBhbmQgZ2FwIGNvdW50cyBhZ2FpbnN0IHRoZSBmaXhl
ZCBsaW1pdHMgKi8KLSAgZm9yIChpPTA7IGkgPCA2OyBpKyspIAotICAgIGlmICggICAocnVuc1tp
XSA8IGxvX3ZhbHVlW2ldICkgfHwgKHJ1bnNbaV0gPiBoaV92YWx1ZVtpXSkKLQl8fCAoZ2Fwc1tp
XSA8IGxvX3ZhbHVlW2ldICkgfHwgKGdhcHNbaV0gPiBoaV92YWx1ZVtpXSkpCi0gICAgICByZXR1
cm4gc3J0cF9lcnJfc3RhdHVzX2FsZ29fZmFpbDsKLQotICAKLSAgcmV0dXJuIHNydHBfZXJyX3N0
YXR1c19vazsKLX0KKyAgICBpZiAoc3J0cF9tb2Rfc3RhdC5vbikgeworICAgICAgICBkZWJ1Z19w
cmludChzcnRwX21vZF9zdGF0LCAicnVucyB0ZXN0IiwgTlVMTCk7CisgICAgICAgIGZvciAoaSA9
IDA7IGkgPCA2OyBpKyspCisgICAgICAgICAgICBkZWJ1Z19wcmludChzcnRwX21vZF9zdGF0LCAi
ICBydW5zW106ICVkIiwgcnVuc1tpXSk7CisgICAgICAgIGZvciAoaSA9IDA7IGkgPCA2OyBpKysp
CisgICAgICAgICAgICBkZWJ1Z19wcmludChzcnRwX21vZF9zdGF0LCAiICBnYXBzW106ICVkIiwg
Z2Fwc1tpXSk7CisgICAgfQogCisgICAgLyogY2hlY2sgcnVuIGFuZCBnYXAgY291bnRzIGFnYWlu
c3QgdGhlIGZpeGVkIGxpbWl0cyAqLworICAgIGZvciAoaSA9IDA7IGkgPCA2OyBpKyspCisgICAg
ICAgIGlmICgocnVuc1tpXSA8IGxvX3ZhbHVlW2ldKSB8fCAocnVuc1tpXSA+IGhpX3ZhbHVlW2ld
KSB8fAorICAgICAgICAgICAgKGdhcHNbaV0gPCBsb192YWx1ZVtpXSkgfHwgKGdhcHNbaV0gPiBo
aV92YWx1ZVtpXSkpCisgICAgICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2FsZ29fZmFp
bDsKIAorICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7Cit9CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRv
L3JlcGxheS9yZGIuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlic3J0cC9jcnlwdG8vcmVwbGF5L3JkYi5jCmluZGV4IDM3NDEzNjdmNjgwNzcyNTBl
M2I2OWUxODg1NTY1Yjk2NTJjMjllMjIuLmFiMWM3YjU1YjZkOGY0N2VhZmU0ZmNkMmY4N2MxNzM2
MjBlMTBhMTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vcmVwbGF5L3JkYi5jCisrKyBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vcmVwbGF5
L3JkYi5jCkBAIC00MywxNCArNDMsMTIgQEAKICAqCiAgKi8KIAotCiAjaWZkZWYgSEFWRV9DT05G
SUdfSAotICAgICNpbmNsdWRlIDxjb25maWcuaD4KKyNpbmNsdWRlIDxjb25maWcuaD4KICNlbmRp
ZgogCiAjaW5jbHVkZSAicmRiLmgiCiAKLQogLyoKICAqIHRoaXMgaW1wbGVtZW50YXRpb24gb2Yg
YSByZXBsYXkgZGF0YWJhc2Ugd29ya3MgYXMgZm9sbG93czoKICAqCkBAIC02MSw3ICs1OSw3IEBA
CiAgKi8KIAogLyogc3J0cF9yZGJfaW5pdCBpbml0YWxpemVzIHJkYiAqLwotc3J0cF9lcnJfc3Rh
dHVzX3Qgc3J0cF9yZGJfaW5pdCAoc3J0cF9yZGJfdCAqcmRiKQorc3J0cF9lcnJfc3RhdHVzX3Qg
c3J0cF9yZGJfaW5pdChzcnRwX3JkYl90ICpyZGIpCiB7CiAgICAgdjEyOF9zZXRfdG9femVybygm
cmRiLT5iaXRtYXNrKTsKICAgICByZGItPndpbmRvd19zdGFydCA9IDA7CkBAIC03MSw5ICs2OSw4
IEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfcmRiX2luaXQgKHNydHBfcmRiX3QgKnJkYikKIC8q
CiAgKiBzcnRwX3JkYl9jaGVjayBjaGVja3MgdG8gc2VlIGlmIGluZGV4IGFwcGVhcnMgaW4gcmRi
CiAgKi8KLXNydHBfZXJyX3N0YXR1c190IHNydHBfcmRiX2NoZWNrIChjb25zdCBzcnRwX3JkYl90
ICpyZGIsIHVpbnQzMl90IHBfaW5kZXgpCitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3JkYl9jaGVj
ayhjb25zdCBzcnRwX3JkYl90ICpyZGIsIHVpbnQzMl90IHBfaW5kZXgpCiB7Ci0KICAgICAvKiBp
ZiB0aGUgaW5kZXggYXBwZWFycyBhZnRlciAob3IgYXQgdmVyeSBlbmQgb2YpIHRoZSB3aW5kb3cs
IGl0cyBnb29kICovCiAgICAgaWYgKHBfaW5kZXggPj0gcmRiLT53aW5kb3dfc3RhcnQgKyByZGJf
Yml0c19pbl9iaXRtYXNrKSB7CiAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CkBA
IC0xMDEsMzUgKzk4LDMyIEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfcmRiX2NoZWNrIChjb25z
dCBzcnRwX3JkYl90ICpyZGIsIHVpbnQzMl90IHBfaW5kZXgpCiAgKiBpbmRpY2F0ZWQgdGhhdCB0
aGUgaW5kZXggZG9lcyBub3QgYXBwZWFyIGluIHRoZSByZGIsIGUuZy4sIGEgbXV0ZXgKICAqIHNo
b3VsZCBwcm90ZWN0IHRoZSByZGIgYmV0d2VlbiB0aGVzZSBjYWxscwogICovCi1zcnRwX2Vycl9z
dGF0dXNfdCBzcnRwX3JkYl9hZGRfaW5kZXggKHNydHBfcmRiX3QgKnJkYiwgdWludDMyX3QgcF9p
bmRleCkKK3NydHBfZXJyX3N0YXR1c190IHNydHBfcmRiX2FkZF9pbmRleChzcnRwX3JkYl90ICpy
ZGIsIHVpbnQzMl90IHBfaW5kZXgpCiB7Ci0gICAgaW50IGRlbHRhOworICAgIHVuc2lnbmVkIGlu
dCBkZWx0YTsKIAotICAgIC8qIGhlcmUgd2UgKmFzc3VtZSogdGhhdCBwX2luZGV4ID4gcmRiLT53
aW5kb3dfc3RhcnQgKi8KKyAgICBpZiAocF9pbmRleCA8IHJkYi0+d2luZG93X3N0YXJ0KQorICAg
ICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX3JlcGxheV9mYWlsOwogCiAgICAgZGVsdGEgPSAo
cF9pbmRleCAtIHJkYi0+d2luZG93X3N0YXJ0KTsKICAgICBpZiAoZGVsdGEgPCByZGJfYml0c19p
bl9iaXRtYXNrKSB7Ci0KICAgICAgICAgLyogaWYgdGhlIHBfaW5kZXggaXMgd2l0aGluIHRoZSB3
aW5kb3csIHNldCB0aGUgYXBwcm9wcmlhdGUgYml0ICovCiAgICAgICAgIHYxMjhfc2V0X2JpdCgm
cmRiLT5iaXRtYXNrLCBkZWx0YSk7CiAKICAgICB9IGVsc2UgewotCiAgICAgICAgIGRlbHRhIC09
IHJkYl9iaXRzX2luX2JpdG1hc2sgLSAxOwogCiAgICAgICAgIC8qIHNoaWZ0IHRoZSB3aW5kb3cg
Zm9yd2FyZCBieSBkZWx0YSBiaXRzKi8KICAgICAgICAgdjEyOF9sZWZ0X3NoaWZ0KCZyZGItPmJp
dG1hc2ssIGRlbHRhKTsKICAgICAgICAgdjEyOF9zZXRfYml0KCZyZGItPmJpdG1hc2ssIHJkYl9i
aXRzX2luX2JpdG1hc2sgLSAxKTsKICAgICAgICAgcmRiLT53aW5kb3dfc3RhcnQgKz0gZGVsdGE7
Ci0KICAgICB9CiAKICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQogCi1zcnRwX2Vy
cl9zdGF0dXNfdCBzcnRwX3JkYl9pbmNyZW1lbnQgKHNydHBfcmRiX3QgKnJkYikKK3NydHBfZXJy
X3N0YXR1c190IHNydHBfcmRiX2luY3JlbWVudChzcnRwX3JkYl90ICpyZGIpCiB7Ci0KICAgICBp
ZiAocmRiLT53aW5kb3dfc3RhcnQgPj0gMHg3ZmZmZmZmZikgewogICAgICAgICByZXR1cm4gc3J0
cF9lcnJfc3RhdHVzX2tleV9leHBpcmVkOwogICAgIH0KQEAgLTEzNyw3ICsxMzEsNyBAQCBzcnRw
X2Vycl9zdGF0dXNfdCBzcnRwX3JkYl9pbmNyZW1lbnQgKHNydHBfcmRiX3QgKnJkYikKICAgICBy
ZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQogCi11aW50MzJfdCBzcnRwX3JkYl9nZXRfdmFs
dWUgKGNvbnN0IHNydHBfcmRiX3QgKnJkYikKK3VpbnQzMl90IHNydHBfcmRiX2dldF92YWx1ZShj
b25zdCBzcnRwX3JkYl90ICpyZGIpCiB7CiAgICAgcmV0dXJuIHJkYi0+d2luZG93X3N0YXJ0Owog
fQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJzcnRwL2NyeXB0by9yZXBsYXkvcmRieC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9yZXBsYXkvcmRieC5jCmlu
ZGV4IDYzZjY2ZmYwMjRlNDYwOGI4NmU4ODFiZTlkMWQxODU1MDg4ZDJhMzkuLjQwY2JhMDFhMWY1
ZGI0Mzk0NzBkNWRlMGI5YjVhMzhlNjFjYjUzOGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vcmVwbGF5L3Jk
YnguYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L2xpYnNydHAvY3J5cHRvL3JlcGxheS9yZGJ4LmMKQEAgLTQ0LDEyICs0NCwxMSBAQAogICovCiAK
ICNpZmRlZiBIQVZFX0NPTkZJR19ICi0gICAgI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUg
PGNvbmZpZy5oPgogI2VuZGlmCiAKICNpbmNsdWRlICJyZGJ4LmgiCiAKLQogLyoKICAqIGZyb20g
UkZDIDM3MTE6CiAgKgpAQCAtNjQsOCArNjMsNiBAQAogICogaW5jcmVtZW50ZWQgYnkgb25lIChp
ZiB0aGUgcGFja2V0IGNvbnRhaW5pbmcgcyBpcyBhdXRoZW50aWMpLgogICovCiAKLQotCiAvKgog
ICogcmRieCBpbXBsZW1lbnRhdGlvbiBub3RlcwogICoKQEAgLTgzLDE0ICs4MCwxMyBAQAogICog
c3J0cF9pbmRleF9hZHZhbmNlKCZndWVzcywgZGVsdGEpLCB3aGVyZSBkZWx0YSBpcyB0aGUgZGlm
ZmVyZW5jZS4KICAqCiAgKgotICogQSBzcnRwX3JkYnhfdCBjb25zaXN0cyBvZiBhIHNydHBfeHRk
X3NlcV9udW1fdCBhbmQgYSBiaXRtYXNrLiAgVGhlIGluZGV4IGlzIGhpZ2hlc3QKLSAqIHNlcXVl
bmNlIG51bWJlciB0aGF0IGhhcyBiZWVuIHJlY2VpdmVkLCBhbmQgdGhlIGJpdG1hc2sgaW5kaWNh
dGVzCisgKiBBIHNydHBfcmRieF90IGNvbnNpc3RzIG9mIGEgc3J0cF94dGRfc2VxX251bV90IGFu
ZCBhIGJpdG1hc2suICBUaGUgaW5kZXggaXMKKyAqIGhpZ2hlc3Qgc2VxdWVuY2UgbnVtYmVyIHRo
YXQgaGFzIGJlZW4gcmVjZWl2ZWQsIGFuZCB0aGUgYml0bWFzayBpbmRpY2F0ZXMKICAqIHdoaWNo
IG9mIHRoZSByZWNlbnQgaW5kaWNpZXMgaGF2ZSBiZWVuIHJlY2VpdmVkIGFzIHdlbGwuICBUaGUK
ICAqIGhpZ2hlc3QgYml0IGluIHRoZSBiaXRtYXNrIGNvcnJlc3BvbmRzIHRvIHRoZSBpbmRleCBp
biB0aGUgYml0bWFzay4KICAqLwogCi0KLXZvaWQgc3J0cF9pbmRleF9pbml0IChzcnRwX3h0ZF9z
ZXFfbnVtX3QgKnBpKQordm9pZCBzcnRwX2luZGV4X2luaXQoc3J0cF94dGRfc2VxX251bV90ICpw
aSkKIHsKICNpZmRlZiBOT182NEJJVF9NQVRICiAgICAgKnBpID0gbWFrZTY0KDAsIDApOwpAQCAt
OTksNyArOTUsNyBAQCB2b2lkIHNydHBfaW5kZXhfaW5pdCAoc3J0cF94dGRfc2VxX251bV90ICpw
aSkKICNlbmRpZgogfQogCi12b2lkIHNydHBfaW5kZXhfYWR2YW5jZSAoc3J0cF94dGRfc2VxX251
bV90ICpwaSwgc3J0cF9zZXF1ZW5jZV9udW1iZXJfdCBzKQordm9pZCBzcnRwX2luZGV4X2FkdmFu
Y2Uoc3J0cF94dGRfc2VxX251bV90ICpwaSwgc3J0cF9zZXF1ZW5jZV9udW1iZXJfdCBzKQogewog
I2lmZGVmIE5PXzY0QklUX01BVEgKICAgICAvKiBhID4gfmIgbWVhbnMgYStiIHdpbGwgZ2VuZXJh
dGUgYSBjYXJyeSAqLwpAQCAtMTEwLDcgKzEwNiw2IEBAIHZvaWQgc3J0cF9pbmRleF9hZHZhbmNl
IChzcnRwX3h0ZF9zZXFfbnVtX3QgKnBpLCBzcnRwX3NlcXVlbmNlX251bWJlcl90IHMpCiAjZW5k
aWYKIH0KIAotCiAvKgogICogc3J0cF9pbmRleF9ndWVzcyhsb2NhbCwgZ3Vlc3MsIHMpCiAgKgpA
QCAtMTI0LDI0ICsxMTksMTkgQEAgdm9pZCBzcnRwX2luZGV4X2FkdmFuY2UgKHNydHBfeHRkX3Nl
cV9udW1fdCAqcGksIHNydHBfc2VxdWVuY2VfbnVtYmVyX3QgcykKICAqIHVuc2lnbmVkIGludGVn
ZXIhCiAgKi8KIAotaW50MzJfdCBzcnRwX2luZGV4X2d1ZXNzIChjb25zdCBzcnRwX3h0ZF9zZXFf
bnVtX3QgKmxvY2FsLCBzcnRwX3h0ZF9zZXFfbnVtX3QgKmd1ZXNzLCBzcnRwX3NlcXVlbmNlX251
bWJlcl90IHMpCitpbnQzMl90IHNydHBfaW5kZXhfZ3Vlc3MoY29uc3Qgc3J0cF94dGRfc2VxX251
bV90ICpsb2NhbCwKKyAgICAgICAgICAgICAgICAgICAgICAgICBzcnRwX3h0ZF9zZXFfbnVtX3Qg
Kmd1ZXNzLAorICAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfc2VxdWVuY2VfbnVtYmVyX3Qg
cykKIHsKICNpZmRlZiBOT182NEJJVF9NQVRICi0gICAgdWludDMyX3QgbG9jYWxfcm9jID0gKCho
aWdoMzIoKmxvY2FsKSA8PCAxNikgfAotICAgICAgICAgICAgICAgICAgICAgICAgICAobG93MzIo
KmxvY2FsKSA+PiAxNikpOworICAgIHVpbnQzMl90IGxvY2FsX3JvYyA9ICgoaGlnaDMyKCpsb2Nh
bCkgPDwgMTYpIHwgKGxvdzMyKCpsb2NhbCkgPj4gMTYpKTsKICAgICB1aW50MTZfdCBsb2NhbF9z
ZXEgPSAodWludDE2X3QpKGxvdzMyKCpsb2NhbCkpOwogI2Vsc2UKICAgICB1aW50MzJfdCBsb2Nh
bF9yb2MgPSAodWludDMyX3QpKCpsb2NhbCA+PiAxNik7CiAgICAgdWludDE2X3QgbG9jYWxfc2Vx
ID0gKHVpbnQxNl90KSpsb2NhbDsKICNlbmRpZgotI2lmZGVmIE5PXzY0QklUX01BVEgKLSAgICB1
aW50MzJfdCBndWVzc19yb2MgPSAoKGhpZ2gzMigqZ3Vlc3MpIDw8IDE2KSB8Ci0gICAgICAgICAg
ICAgICAgICAgICAgICAgIChsb3czMigqZ3Vlc3MpID4+IDE2KSk7Ci0gICAgdWludDE2X3QgZ3Vl
c3Nfc2VxID0gKHVpbnQxNl90KShsb3czMigqZ3Vlc3MpKTsKLSNlbHNlCi0gICAgdWludDMyX3Qg
Z3Vlc3Nfcm9jID0gKHVpbnQzMl90KSgqZ3Vlc3MgPj4gMTYpOwotICAgIHVpbnQxNl90IGd1ZXNz
X3NlcSA9ICh1aW50MTZfdCkqZ3Vlc3M7Ci0jZW5kaWYKKyAgICB1aW50MzJfdCBndWVzc19yb2M7
CisgICAgdWludDE2X3QgZ3Vlc3Nfc2VxOwogICAgIGludDMyX3QgZGlmZmVyZW5jZTsKIAogICAg
IGlmIChsb2NhbF9zZXEgPCBzZXFfbnVtX21lZGlhbikgewpAQCAtMTYzLDEwICsxNTMsOSBAQCBp
bnQzMl90IHNydHBfaW5kZXhfZ3Vlc3MgKGNvbnN0IHNydHBfeHRkX3NlcV9udW1fdCAqbG9jYWws
IHNydHBfeHRkX3NlcV9udW1fdCAqZwogICAgIH0KICAgICBndWVzc19zZXEgPSBzOwogCi0gICAg
LyogTm90ZTogZ3Vlc3Nfcm9jIGlzIDMyIGJpdHMsIHNvIHRoaXMgZ2VuZXJhdGVzIGEgNDgtYml0
IHJlc3VsdCEgKi8KKy8qIE5vdGU6IGd1ZXNzX3JvYyBpcyAzMiBiaXRzLCBzbyB0aGlzIGdlbmVy
YXRlcyBhIDQ4LWJpdCByZXN1bHQhICovCiAjaWZkZWYgTk9fNjRCSVRfTUFUSAotICAgICpndWVz
cyA9IG1ha2U2NChndWVzc19yb2MgPj4gMTYsCi0gICAgICAgICAgICAgICAgICAgIChndWVzc19y
b2MgPDwgMTYpIHwgZ3Vlc3Nfc2VxKTsKKyAgICAqZ3Vlc3MgPSBtYWtlNjQoZ3Vlc3Nfcm9jID4+
IDE2LCAoZ3Vlc3Nfcm9jIDw8IDE2KSB8IGd1ZXNzX3NlcSk7CiAjZWxzZQogICAgICpndWVzcyA9
ICgoKHVpbnQ2NF90KWd1ZXNzX3JvYykgPDwgMTYpIHwgZ3Vlc3Nfc2VxOwogI2VuZGlmCkBAIC0x
NzksMTEgKzE2OCwxMSBAQCBpbnQzMl90IHNydHBfaW5kZXhfZ3Vlc3MgKGNvbnN0IHNydHBfeHRk
X3NlcV9udW1fdCAqbG9jYWwsIHNydHBfeHRkX3NlcV9udW1fdCAqZwogICoKICAqLwogCi0KIC8q
Ci0gKiAgc3J0cF9yZGJ4X2luaXQoJnIsIHdzKSBpbml0aWFsaXplcyB0aGUgc3J0cF9yZGJ4X3Qg
cG9pbnRlZCB0byBieSByIHdpdGggd2luZG93IHNpemUgd3MKKyAqICBzcnRwX3JkYnhfaW5pdCgm
ciwgd3MpIGluaXRpYWxpemVzIHRoZSBzcnRwX3JkYnhfdCBwb2ludGVkIHRvIGJ5IHIgd2l0aAor
ICogd2luZG93IHNpemUgd3MKICAqLwotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9yZGJ4X2luaXQg
KHNydHBfcmRieF90ICpyZGJ4LCB1bnNpZ25lZCBsb25nIHdzKQorc3J0cF9lcnJfc3RhdHVzX3Qg
c3J0cF9yZGJ4X2luaXQoc3J0cF9yZGJ4X3QgKnJkYngsIHVuc2lnbmVkIGxvbmcgd3MpCiB7CiAg
ICAgaWYgKHdzID09IDApIHsKICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfcGFy
YW07CkBAIC0yMDEsNyArMTkwLDcgQEAgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9yZGJ4X2luaXQg
KHNydHBfcmRieF90ICpyZGJ4LCB1bnNpZ25lZCBsb25nIHdzKQogLyoKICAqICBzcnRwX3JkYnhf
ZGVhbGxvYygmcikgZnJlZXMgbWVtb3J5IGZvciB0aGUgc3J0cF9yZGJ4X3QgcG9pbnRlZCB0byBi
eSByCiAgKi8KLXNydHBfZXJyX3N0YXR1c190IHNydHBfcmRieF9kZWFsbG9jIChzcnRwX3JkYnhf
dCAqcmRieCkKK3NydHBfZXJyX3N0YXR1c190IHNydHBfcmRieF9kZWFsbG9jKHNydHBfcmRieF90
ICpyZGJ4KQogewogICAgIGJpdHZlY3Rvcl9kZWFsbG9jKCZyZGJ4LT5iaXRtYXNrKTsKIApAQCAt
MjE1LDEyICsyMDQsMTIgQEAgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9yZGJ4X2RlYWxsb2MgKHNy
dHBfcmRieF90ICpyZGJ4KQogICogc3J0cF9lcnJfc3RhdHVzX3JlcGxheV9vbGQ7IG90aGVyd2lz
ZSwgc3J0cF9lcnJfc3RhdHVzX29rIGlzIHJldHVybmVkLgogICoKICAqLwotc3J0cF9lcnJfc3Rh
dHVzX3Qgc3J0cF9yZGJ4X3NldF9yb2MgKHNydHBfcmRieF90ICpyZGJ4LCB1aW50MzJfdCByb2Mp
CitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3JkYnhfc2V0X3JvYyhzcnRwX3JkYnhfdCAqcmRieCwg
dWludDMyX3Qgcm9jKQogewogICAgIGJpdHZlY3Rvcl9zZXRfdG9femVybygmcmRieC0+Yml0bWFz
ayk7CiAKICNpZmRlZiBOT182NEJJVF9NQVRICi0gICNlcnJvciBub3QgeWV0IGltcGxlbWVudGVk
CisjZXJyb3Igbm90IHlldCBpbXBsZW1lbnRlZAogI2Vsc2UKIAogICAgIC8qIG1ha2Ugc3VyZSB0
aGF0IHdlJ3JlIG5vdCBtb3ZpbmcgYmFja3dhcmRzICovCkBAIC0yNDAsNyArMjI5LDcgQEAgc3J0
cF9lcnJfc3RhdHVzX3Qgc3J0cF9yZGJ4X3NldF9yb2MgKHNydHBfcmRieF90ICpyZGJ4LCB1aW50
MzJfdCByb2MpCiAgKiBmb3IgdGhlIHNydHBfcmRieF90IHBvaW50ZWQgdG8gYnkgcmRieAogICoK
ICAqLwotc3J0cF94dGRfc2VxX251bV90IHNydHBfcmRieF9nZXRfcGFja2V0X2luZGV4IChjb25z
dCBzcnRwX3JkYnhfdCAqcmRieCkKK3NydHBfeHRkX3NlcV9udW1fdCBzcnRwX3JkYnhfZ2V0X3Bh
Y2tldF9pbmRleChjb25zdCBzcnRwX3JkYnhfdCAqcmRieCkKIHsKICAgICByZXR1cm4gcmRieC0+
aW5kZXg7CiB9CkBAIC0yNTAsNyArMjM5LDcgQEAgc3J0cF94dGRfc2VxX251bV90IHNydHBfcmRi
eF9nZXRfcGFja2V0X2luZGV4IChjb25zdCBzcnRwX3JkYnhfdCAqcmRieCkKICAqIGZvciB0aGUg
c3J0cF9yZGJ4X3QgcG9pbnRlZCB0byBieSByZGJ4CiAgKgogICovCi11bnNpZ25lZCBsb25nIHNy
dHBfcmRieF9nZXRfd2luZG93X3NpemUgKGNvbnN0IHNydHBfcmRieF90ICpyZGJ4KQordW5zaWdu
ZWQgbG9uZyBzcnRwX3JkYnhfZ2V0X3dpbmRvd19zaXplKGNvbnN0IHNydHBfcmRieF90ICpyZGJ4
KQogewogICAgIHJldHVybiBiaXR2ZWN0b3JfZ2V0X2xlbmd0aCgmcmRieC0+Yml0bWFzayk7CiB9
CkBAIC0yNTksMTYgKzI0OCwxNyBAQCB1bnNpZ25lZCBsb25nIHNydHBfcmRieF9nZXRfd2luZG93
X3NpemUgKGNvbnN0IHNydHBfcmRieF90ICpyZGJ4KQogICogc3J0cF9yZGJ4X2NoZWNrKCZyLCBk
ZWx0YSkgY2hlY2tzIHRvIHNlZSBpZiB0aGUgc3J0cF94dGRfc2VxX251bV90CiAgKiB3aGljaCBp
cyBhdCByZGJ4LT5pbmRleCArIGRlbHRhIGlzIGluIHRoZSByZGIKICAqLwotc3J0cF9lcnJfc3Rh
dHVzX3Qgc3J0cF9yZGJ4X2NoZWNrIChjb25zdCBzcnRwX3JkYnhfdCAqcmRieCwgaW50IGRlbHRh
KQorc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9yZGJ4X2NoZWNrKGNvbnN0IHNydHBfcmRieF90ICpy
ZGJ4LCBpbnQgZGVsdGEpCiB7Ci0KLSAgICBpZiAoZGVsdGEgPiAwKSB7ICAgICAvKiBpZiBkZWx0
YSBpcyBwb3NpdGl2ZSwgaXQncyBnb29kICovCisgICAgaWYgKGRlbHRhID4gMCkgeyAvKiBpZiBk
ZWx0YSBpcyBwb3NpdGl2ZSwgaXQncyBnb29kICovCiAgICAgICAgIHJldHVybiBzcnRwX2Vycl9z
dGF0dXNfb2s7CiAgICAgfSBlbHNlIGlmICgoaW50KShiaXR2ZWN0b3JfZ2V0X2xlbmd0aCgmcmRi
eC0+Yml0bWFzaykgLSAxKSArIGRlbHRhIDwgMCkgewogICAgICAgICAvKiBpZiBkZWx0YSBpcyBs
b3dlciB0aGFuIHRoZSBiaXRtYXNrLCBpdCdzIGJhZCAqLwogICAgICAgICByZXR1cm4gc3J0cF9l
cnJfc3RhdHVzX3JlcGxheV9vbGQ7Ci0gICAgfSBlbHNlIGlmIChiaXR2ZWN0b3JfZ2V0X2JpdCgm
cmRieC0+Yml0bWFzaywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChpbnQpKGJp
dHZlY3Rvcl9nZXRfbGVuZ3RoKCZyZGJ4LT5iaXRtYXNrKSAtIDEpICsgZGVsdGEpID09IDEpIHsK
KyAgICB9IGVsc2UgaWYgKGJpdHZlY3Rvcl9nZXRfYml0KAorICAgICAgICAgICAgICAgICAgICZy
ZGJ4LT5iaXRtYXNrLAorICAgICAgICAgICAgICAgICAgIChpbnQpKGJpdHZlY3Rvcl9nZXRfbGVu
Z3RoKCZyZGJ4LT5iaXRtYXNrKSAtIDEpICsgZGVsdGEpID09CisgICAgICAgICAgICAgICAxKSB7
CiAgICAgICAgIC8qIGRlbHRhIGlzIHdpdGhpbiB0aGUgd2luZG93LCBzbyBjaGVjayB0aGUgYml0
bWFzayAqLwogICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX3JlcGxheV9mYWlsOwogICAg
IH0KQEAgLTI4NSwxNyArMjc1LDE4IEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfcmRieF9jaGVj
ayAoY29uc3Qgc3J0cF9yZGJ4X3QgKnJkYngsIGludCBkZWx0YSkKICAqIGluZGljYXRlZCB0aGF0
IHRoZSBpbmRleCBkb2VzIG5vdCBhcHBlYXIgaW4gdGhlIHJkYngsIGUuZy4sIGEgbXV0ZXgKICAq
IHNob3VsZCBwcm90ZWN0IHRoZSByZGJ4IGJldHdlZW4gdGhlc2UgY2FsbHMgaWYgbmVlZCBiZQog
ICovCi1zcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3JkYnhfYWRkX2luZGV4IChzcnRwX3JkYnhfdCAq
cmRieCwgaW50IGRlbHRhKQorc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9yZGJ4X2FkZF9pbmRleChz
cnRwX3JkYnhfdCAqcmRieCwgaW50IGRlbHRhKQogewotCiAgICAgaWYgKGRlbHRhID4gMCkgewog
ICAgICAgICAvKiBzaGlmdCBmb3J3YXJkIGJ5IGRlbHRhICovCiAgICAgICAgIHNydHBfaW5kZXhf
YWR2YW5jZSgmcmRieC0+aW5kZXgsIGRlbHRhKTsKICAgICAgICAgYml0dmVjdG9yX2xlZnRfc2hp
ZnQoJnJkYngtPmJpdG1hc2ssIGRlbHRhKTsKLSAgICAgICAgYml0dmVjdG9yX3NldF9iaXQoJnJk
YngtPmJpdG1hc2ssIGJpdHZlY3Rvcl9nZXRfbGVuZ3RoKCZyZGJ4LT5iaXRtYXNrKSAtIDEpOwor
ICAgICAgICBiaXR2ZWN0b3Jfc2V0X2JpdCgmcmRieC0+Yml0bWFzaywKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgYml0dmVjdG9yX2dldF9sZW5ndGgoJnJkYngtPmJpdG1hc2spIC0gMSk7CiAg
ICAgfSBlbHNlIHsKICAgICAgICAgLyogZGVsdGEgaXMgaW4gd2luZG93ICovCi0gICAgICAgIGJp
dHZlY3Rvcl9zZXRfYml0KCZyZGJ4LT5iaXRtYXNrLCBiaXR2ZWN0b3JfZ2V0X2xlbmd0aCgmcmRi
eC0+Yml0bWFzaykgLSAxICsgZGVsdGEpOworICAgICAgICBiaXR2ZWN0b3Jfc2V0X2JpdCgmcmRi
eC0+Yml0bWFzaywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgYml0dmVjdG9yX2dldF9sZW5n
dGgoJnJkYngtPmJpdG1hc2spIC0gMSArIGRlbHRhKTsKICAgICB9CiAKICAgICAvKiBub3RlIHRo
YXQgd2UgbmVlZCBub3QgY29uc2lkZXIgdGhlIGNhc2UgdGhhdCBkZWx0YSA9PSAwICovCkBAIC0z
MDMsOCArMjk0LDYgQEAgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9yZGJ4X2FkZF9pbmRleCAoc3J0
cF9yZGJ4X3QgKnJkYngsIGludCBkZWx0YSkKICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29r
OwogfQogCi0KLQogLyoKICAqIHNydHBfcmRieF9lc3RpbWF0ZV9pbmRleChyZGJ4LCBndWVzcywg
cykKICAqCkBAIC0zMTMsMjUgKzMwMiwyNyBAQCBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3JkYnhf
YWRkX2luZGV4IChzcnRwX3JkYnhfdCAqcmRieCwgaW50IGRlbHRhKQogICogaW5kZXggdG8gd2hp
Y2ggcyBjb3JyZXNwb25kcywgYW5kIHJldHVybnMgdGhlIGRpZmZlcmVuY2UgYmV0d2VlbgogICog
Kmd1ZXNzIGFuZCB0aGUgbG9jYWxseSBzdG9yZWQgc3luY2ggaW5mbwogICovCi1pbnQzMl90IHNy
dHBfcmRieF9lc3RpbWF0ZV9pbmRleCAoY29uc3Qgc3J0cF9yZGJ4X3QgKnJkYngsIHNydHBfeHRk
X3NlcV9udW1fdCAqZ3Vlc3MsIHNydHBfc2VxdWVuY2VfbnVtYmVyX3QgcykKK2ludDMyX3Qgc3J0
cF9yZGJ4X2VzdGltYXRlX2luZGV4KGNvbnN0IHNydHBfcmRieF90ICpyZGJ4LAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF94dGRfc2VxX251bV90ICpndWVzcywKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfc2VxdWVuY2VfbnVtYmVyX3QgcykKIHsK
LQotICAgIC8qCi0gICAgICogaWYgdGhlIHNlcXVlbmNlIG51bWJlciBhbmQgcm9sbG92ZXIgY291
bnRlciBpbiB0aGUgcmRieCBhcmUKLSAgICAgKiBub24temVybywgdGhlbiB1c2UgdGhlIHNydHBf
aW5kZXhfZ3Vlc3MoLi4uKSBmdW5jdGlvbiwgb3RoZXJ3aXNlLCBqdXN0Ci0gICAgICogc2V0IHRo
ZSByb2xsb3ZlciBjb3VudGVyIHRvIHplcm8gKHNpbmNlIHRoZSBzcnRwX2luZGV4X2d1ZXNzKC4u
LikKLSAgICAgKiBmdW5jdGlvbiBtaWdodCBpbmNvcnJlY3RseSBndWVzcyB0aGF0IHRoZSByb2xs
b3ZlciBjb3VudGVyIGlzCi0gICAgICogMHhmZmZmZmZmZikKLSAgICAgKi8KKy8qCisgKiBpZiB0
aGUgc2VxdWVuY2UgbnVtYmVyIGFuZCByb2xsb3ZlciBjb3VudGVyIGluIHRoZSByZGJ4IGFyZQor
ICogbm9uLXplcm8sIHRoZW4gdXNlIHRoZSBzcnRwX2luZGV4X2d1ZXNzKC4uLikgZnVuY3Rpb24s
IG90aGVyd2lzZSwganVzdAorICogc2V0IHRoZSByb2xsb3ZlciBjb3VudGVyIHRvIHplcm8gKHNp
bmNlIHRoZSBzcnRwX2luZGV4X2d1ZXNzKC4uLikKKyAqIGZ1bmN0aW9uIG1pZ2h0IGluY29ycmVj
dGx5IGd1ZXNzIHRoYXQgdGhlIHJvbGxvdmVyIGNvdW50ZXIgaXMKKyAqIDB4ZmZmZmZmZmYpCisg
Ki8KIAogI2lmZGVmIE5PXzY0QklUX01BVEgKICAgICAvKiBzZXFfbnVtX21lZGlhbiA9IDB4ODAw
MCAqLwotICAgIGlmIChoaWdoMzIocmRieC0+aW5kZXgpID4gMCB8fAotICAgICAgICBsb3czMihy
ZGJ4LT5pbmRleCkgPiBzZXFfbnVtX21lZGlhbikKKyAgICBpZiAoaGlnaDMyKHJkYngtPmluZGV4
KSA+IDAgfHwgbG93MzIocmRieC0+aW5kZXgpID4gc2VxX251bV9tZWRpYW4pCiAjZWxzZQogICAg
IGlmIChyZGJ4LT5pbmRleCA+IHNlcV9udW1fbWVkaWFuKQogI2VuZGlmCi0gICAgeyByZXR1cm4g
c3J0cF9pbmRleF9ndWVzcygmcmRieC0+aW5kZXgsIGd1ZXNzLCBzKTsgfQorICAgIHsKKyAgICAg
ICAgcmV0dXJuIHNydHBfaW5kZXhfZ3Vlc3MoJnJkYngtPmluZGV4LCBndWVzcywgcyk7CisgICAg
fQogCiAjaWZkZWYgTk9fNjRCSVRfTUFUSAogICAgICpndWVzcyA9IG1ha2U2NCgwLCAodWludDMy
X3Qpcyk7CkBAIC0zNzIsMTIgKzM2MywxMiBAQCB1aW50MzJfdCBzcnRwX3JkYnhfZ2V0X3JvYyhj
b25zdCBzcnRwX3JkYnhfdCAqcmRieCkKICAqIHJvbGxvdmVyIGNvdW50ZXIgdmFsdWUsIHRoZW4g
dGhlIGZ1bmN0aW9uIHJldHVybnMKICAqIHNydHBfZXJyX3N0YXR1c19yZXBsYXlfb2xkLCBvdGhl
cndpc2UsIHNydHBfZXJyX3N0YXR1c19vayBpcyByZXR1cm5lZC4KICAqLwotc3J0cF9lcnJfc3Rh
dHVzX3Qgc3J0cF9yZGJ4X3NldF9yb2Nfc2VxIChzcnRwX3JkYnhfdCAqcmRieCwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3Qgcm9jLAotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MTZfdCBzZXEpCitzcnRwX2Vycl9z
dGF0dXNfdCBzcnRwX3JkYnhfc2V0X3JvY19zZXEoc3J0cF9yZGJ4X3QgKnJkYngsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3Qgcm9jLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQxNl90IHNlcSkKIHsKICNpZmRlZiBO
T182NEJJVF9NQVRICi0gICNlcnJvciBub3QgeWV0IGltcGxlbWVudGVkCisjZXJyb3Igbm90IHll
dCBpbXBsZW1lbnRlZAogI2Vsc2UKIAogICAgIC8qIG1ha2Ugc3VyZSB0aGF0IHdlJ3JlIG5vdCBt
b3ZpbmcgYmFja3dhcmRzICovCkBAIC0zOTMsNCArMzg0LDMgQEAgc3J0cF9lcnJfc3RhdHVzX3Qg
c3J0cF9yZGJ4X3NldF9yb2Nfc2VxIChzcnRwX3JkYnhfdCAqcmRieCwKIAogICAgIHJldHVybiBz
cnRwX2Vycl9zdGF0dXNfb2s7CiB9Ci0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vcmVwbGF5L3V0X3NpbS5j
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRw
L2NyeXB0by9yZXBsYXkvdXRfc2ltLmMKaW5kZXggYjUwMTY0Y2VkMWQ5ZTU0ZWE5MjY5ZGMxOTEz
OTZmOGViOTZjMGZmNC4uYzYyMWMwZTlmMjI1OWMxNTQwODE3YjBkZGY3YzE3ZGY5MDNiNTI5MiAx
MDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9saWJzcnRwL2NyeXB0by9yZXBsYXkvdXRfc2ltLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9yZXBsYXkvdXRfc2lt
LmMKQEAgLTMsMzIgKzMsMzIgQEAKICAqCiAgKiBhbiB1bnJlbGlhYmxlIHRyYW5zcG9ydCBzaW11
bGF0b3IKICAqIChmb3IgdGVzdGluZyByZXBsYXkgZGF0YWJhc2VzIGFuZCBzdWNobGlrZSkKLSAq
IAorICoKICAqIERhdmlkIEEuIE1jR3JldwogICogQ2lzY28gU3lzdGVtcywgSW5jLgogICovCiAK
IC8qCi0gKgkKKyAqCiAgKiBDb3B5cmlnaHQgKGMpIDIwMDEtMjAxNywgQ2lzY28gU3lzdGVtcywg
SW5jLgogICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqIAorICoKICAqIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICog
bW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zCiAgKiBhcmUgbWV0OgotICogCisgKgogICogICBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAogICogICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0g
KiAKKyAqCiAgKiAgIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUKICAqICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcKICAqICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlv
biBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkCiAgKiAgIHdpdGggdGhlIGRpc3RyaWJ1
dGlvbi4KLSAqIAorICoKICAqICAgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgQ2lzY28gU3lzdGVt
cywgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwogICogICBjb250cmlidXRvcnMgbWF5IGJlIHVz
ZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQKICAqICAgZnJvbSB0aGlz
IHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotICog
CisgKgogICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERF
UlMgQU5EIENPTlRSSUJVVE9SUwogICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKICAqIExJTUlURUQgVE8sIFRIRSBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCkBAIC00NCw2NiAr
NDQsNjEgQEAKICAqCiAgKi8KIAotCiAjaWZkZWYgSEFWRV9DT05GSUdfSAotICAgICNpbmNsdWRl
IDxjb25maWcuaD4KKyNpbmNsdWRlIDxjb25maWcuaD4KICNlbmRpZgogCiAjaW5jbHVkZSAidXRf
c2ltLmgiCiAKLQotaW50Ci11dF9jb21wYXIoY29uc3Qgdm9pZCAqYSwgY29uc3Qgdm9pZCAqYikg
ewotICByZXR1cm4gcmFuZCgpID4gKFJBTkRfTUFYLzIpID8gLTEgOiAxOworaW50IHV0X2NvbXBh
cihjb25zdCB2b2lkICphLCBjb25zdCB2b2lkICpiKQoreworICAgIHJldHVybiByYW5kKCkgPiAo
UkFORF9NQVggLyAyKSA/IC0xIDogMTsKIH0KIAotdm9pZAotdXRfaW5pdCh1dF9jb25uZWN0aW9u
ICp1dGMpIHsKLSAgaW50IGk7Ci0gIHV0Yy0+aW5kZXggPSAwOwordm9pZCB1dF9pbml0KHV0X2Nv
bm5lY3Rpb24gKnV0YykKK3sKKyAgICBpbnQgaTsKKyAgICB1dGMtPmluZGV4ID0gMDsKIAotICBm
b3IgKGk9MDsgaSA8IFVUX0JVRjsgaSsrKQotICAgIHV0Yy0+YnVmZmVyW2ldID0gaTsKLSAgCi0g
IHFzb3J0KHV0Yy0+YnVmZmVyLCBVVF9CVUYsIHNpemVvZih1aW50MzJfdCksIHV0X2NvbXBhcik7
CisgICAgZm9yIChpID0gMDsgaSA8IFVUX0JVRjsgaSsrKQorICAgICAgICB1dGMtPmJ1ZmZlcltp
XSA9IGk7CiAKLSAgdXRjLT5pbmRleCA9IFVUX0JVRiAtIDE7Ci19CisgICAgcXNvcnQodXRjLT5i
dWZmZXIsIFVUX0JVRiwgc2l6ZW9mKHVpbnQzMl90KSwgdXRfY29tcGFyKTsKIAotdWludDMyX3QK
LXV0X25leHRfaW5kZXgodXRfY29ubmVjdGlvbiAqdXRjKSB7Ci0gIHVpbnQzMl90IHRtcDsKKyAg
ICB1dGMtPmluZGV4ID0gVVRfQlVGIC0gMTsKK30KIAotICB0bXAgPSB1dGMtPmJ1ZmZlclswXTsK
LSAgdXRjLT5pbmRleCsrOwotICB1dGMtPmJ1ZmZlclswXSA9IHV0Yy0+aW5kZXg7Cit1aW50MzJf
dCB1dF9uZXh0X2luZGV4KHV0X2Nvbm5lY3Rpb24gKnV0YykKK3sKKyAgICB1aW50MzJfdCB0bXA7
CiAKLSAgcXNvcnQodXRjLT5idWZmZXIsIFVUX0JVRiwgc2l6ZW9mKHVpbnQzMl90KSwgdXRfY29t
cGFyKTsKLSAgCi0gIHJldHVybiB0bXA7Ci19CisgICAgdG1wID0gdXRjLT5idWZmZXJbMF07Cisg
ICAgdXRjLT5pbmRleCsrOworICAgIHV0Yy0+YnVmZmVyWzBdID0gdXRjLT5pbmRleDsKIAorICAg
IHFzb3J0KHV0Yy0+YnVmZmVyLCBVVF9CVUYsIHNpemVvZih1aW50MzJfdCksIHV0X2NvbXBhcik7
CiAKKyAgICByZXR1cm4gdG1wOworfQogCiAjaWZkZWYgVVRfVEVTVAogCiAjaW5jbHVkZSA8c3Rk
aW8uaD4KIAotaW50Ci1tYWluKCkgewotICB1aW50MzJfdCBpLCBpcmVjdmQsIGlkaWZmOwotICB1
dF9jb25uZWN0aW9uIHV0YzsKK2ludCBtYWluKCkKK3sKKyAgICB1aW50MzJfdCBpLCBpcmVjdmQs
IGlkaWZmOworICAgIHV0X2Nvbm5lY3Rpb24gdXRjOwogCi0gIHV0X2luaXQoJnV0Yyk7CisgICAg
dXRfaW5pdCgmdXRjKTsKIAotICBmb3IgKGk9MDsgaSA8IDEwMDA7IGkrKykgewotICAgIGlyZWN2
ZCA9IHV0X25leHRfaW5kZXgoJnV0Yyk7Ci0gICAgaWRpZmYgPSBpIC0gaXJlY3ZkOwotICAgIHBy
aW50ZigiJWx1XHQlbHVcdCVkXG4iLCBpLCBpcmVjdmQsIGlkaWZmKTsKLSAgfQotICAKLSAgcmV0
dXJuIDA7Ci19CisgICAgZm9yIChpID0gMDsgaSA8IDEwMDA7IGkrKykgeworICAgICAgICBpcmVj
dmQgPSB1dF9uZXh0X2luZGV4KCZ1dGMpOworICAgICAgICBpZGlmZiA9IGkgLSBpcmVjdmQ7Cisg
ICAgICAgIHByaW50ZigiJWx1XHQlbHVcdCVkXG4iLCBpLCBpcmVjdmQsIGlkaWZmKTsKKyAgICB9
CiAKKyAgICByZXR1cm4gMDsKK30KIAogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL3Rlc3QvYXV0
aF9kcml2ZXIuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvbGlic3J0cC9jcnlwdG8vdGVzdC9hdXRoX2RyaXZlci5jCmRlbGV0ZWQgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCBlNjlkZTI5YmIyZDFkNjQzNGI4YjI5YWU3NzVhZDhjMmU0OGM1MzkxLi4wMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL3Rl
c3QvY2lwaGVyX2RyaXZlci5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by90ZXN0L2NpcGhlcl9kcml2ZXIuYwppbmRleCBiNjNj
ZDViYTBhY2E4NjZiZWFlYTk1ZTBmM2QwNzIxM2Q5NmZlZmY2Li5lMjhmNWYyNjRmOGRhMzY1Y2Fi
NmZkNmNlOTZjNjk2NDkyM2NmOWYzIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL3Rlc3QvY2lwaGVyX2RyaXZl
ci5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlic3J0cC9jcnlwdG8vdGVzdC9jaXBoZXJfZHJpdmVyLmMKQEAgLTgsMjYgKzgsMjYgQEAKICAq
LwogCiAvKgotICoJCisgKgogICogQ29weXJpZ2h0IChjKSAyMDAxLTIwMTcgQ2lzY28gU3lzdGVt
cywgSW5jLgogICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqIAorICoKICAqIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAog
ICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zCiAgKiBhcmUgbWV0OgotICogCisgKgogICogICBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAogICogICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
Ci0gKiAKKyAqCiAgKiAgIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUKICAqICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKICAqICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRh
dGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkCiAgKiAgIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KLSAqIAorICoKICAqICAgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgQ2lzY28gU3lz
dGVtcywgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwogICogICBjb250cmlidXRvcnMgbWF5IGJl
IHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQKICAqICAgZnJvbSB0
aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgot
ICogCisgKgogICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhP
TERFUlMgQU5EIENPTlRSSUJVVE9SUwogICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1Q
TElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKICAqIExJTUlURUQgVE8sIFRIRSBJ
TVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCkBAIC00NCwx
MiArNDQsMTEgQEAKICAqLwogCiAjaWZkZWYgSEFWRV9DT05GSUdfSAotICAgICNpbmNsdWRlIDxj
b25maWcuaD4KKyNpbmNsdWRlIDxjb25maWcuaD4KICNlbmRpZgogCi0jaW5jbHVkZSA8c3RkaW8u
aD4gICAgICAgICAgIC8qIGZvciBwcmludGYoKSAqLwotI2luY2x1ZGUgPHN0ZGxpYi5oPiAgICAg
ICAgICAvKiBmb3IgcmFuZCgpICovCi0jaW5jbHVkZSA8c3RyaW5nLmg+ICAgICAgICAgIC8qIGZv
ciBtZW1zZXQoKSAqLworI2luY2x1ZGUgPHN0ZGlvLmg+ICAvKiBmb3IgcHJpbnRmKCkgKi8KKyNp
bmNsdWRlIDxzdGRsaWIuaD4gLyogZm9yIHJhbmQoKSAqLwogI2luY2x1ZGUgImdldG9wdF9zLmgi
CiAjaW5jbHVkZSAiY2lwaGVyLmgiCiAjaWZkZWYgT1BFTlNTTApAQCAtNjEsMTIgKzYwLDkgQEAK
IAogI2RlZmluZSBQUklOVF9ERUJVRyAwCiAKLXZvaWQKLWNpcGhlcl9kcml2ZXJfdGVzdF90aHJv
dWdocHV0KHNydHBfY2lwaGVyX3QgKmMpOwotCi1zcnRwX2Vycl9zdGF0dXNfdAotY2lwaGVyX2Ry
aXZlcl9zZWxmX3Rlc3Qoc3J0cF9jaXBoZXJfdHlwZV90ICpjdCk7Cit2b2lkIGNpcGhlcl9kcml2
ZXJfdGVzdF90aHJvdWdocHV0KHNydHBfY2lwaGVyX3QgKmMpOwogCitzcnRwX2Vycl9zdGF0dXNf
dCBjaXBoZXJfZHJpdmVyX3NlbGZfdGVzdChzcnRwX2NpcGhlcl90eXBlX3QgKmN0KTsKIAogLyoK
ICAqIGNpcGhlcl9kcml2ZXJfdGVzdF9idWZmZXJpbmcoY3QpIHRlc3RzIHRoZSBjaXBoZXIncyBv
dXRwdXQKQEAgLTc0LDQ0ICs3MCw0MyBAQCBjaXBoZXJfZHJpdmVyX3NlbGZfdGVzdChzcnRwX2Np
cGhlcl90eXBlX3QgKmN0KTsKICAqIGNhbGxzCiAgKi8KIAotc3J0cF9lcnJfc3RhdHVzX3QKLWNp
cGhlcl9kcml2ZXJfdGVzdF9idWZmZXJpbmcoc3J0cF9jaXBoZXJfdCAqYyk7Ci0KK3NydHBfZXJy
X3N0YXR1c190IGNpcGhlcl9kcml2ZXJfdGVzdF9idWZmZXJpbmcoc3J0cF9jaXBoZXJfdCAqYyk7
CiAKIC8qCiAgKiBmdW5jdGlvbnMgZm9yIHRlc3RpbmcgY2lwaGVyIGNhY2hlIHRocmFzaAogICov
Ci1zcnRwX2Vycl9zdGF0dXNfdAotY2lwaGVyX2RyaXZlcl90ZXN0X2FycmF5X3Rocm91Z2hwdXQo
c3J0cF9jaXBoZXJfdHlwZV90ICpjdCwgCi0JCQkJICAgIGludCBrbGVuLCBpbnQgbnVtX2NpcGhl
cik7CitzcnRwX2Vycl9zdGF0dXNfdCBjaXBoZXJfZHJpdmVyX3Rlc3RfYXJyYXlfdGhyb3VnaHB1
dChzcnRwX2NpcGhlcl90eXBlX3QgKmN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgaW50IGtsZW4sCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgbnVtX2NpcGhlcik7CiAKLXZvaWQK
LWNpcGhlcl9hcnJheV90ZXN0X3Rocm91Z2hwdXQoc3J0cF9jaXBoZXJfdCAqY2FbXSwgaW50IG51
bV9jaXBoZXIpOwordm9pZCBjaXBoZXJfYXJyYXlfdGVzdF90aHJvdWdocHV0KHNydHBfY2lwaGVy
X3QgKmNhW10sIGludCBudW1fY2lwaGVyKTsKIAotdWludDY0X3QKLWNpcGhlcl9hcnJheV9iaXRz
X3Blcl9zZWNvbmQoc3J0cF9jaXBoZXJfdCAqY2lwaGVyX2FycmF5W10sIGludCBudW1fY2lwaGVy
LCAKLQkJCSAgICAgdW5zaWduZWQgb2N0ZXRzX2luX2J1ZmZlciwgaW50IG51bV90cmlhbHMpOwor
dWludDY0X3QgY2lwaGVyX2FycmF5X2JpdHNfcGVyX3NlY29uZChzcnRwX2NpcGhlcl90ICpjaXBo
ZXJfYXJyYXlbXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IG51
bV9jaXBoZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVk
IG9jdGV0c19pbl9idWZmZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGludCBudW1fdHJpYWxzKTsKIAotc3J0cF9lcnJfc3RhdHVzX3QKLWNpcGhlcl9hcnJheV9kZWxl
dGUoc3J0cF9jaXBoZXJfdCAqY2lwaGVyX2FycmF5W10sIGludCBudW1fY2lwaGVyKTsKK3NydHBf
ZXJyX3N0YXR1c190IGNpcGhlcl9hcnJheV9kZWxldGUoc3J0cF9jaXBoZXJfdCAqY2lwaGVyX2Fy
cmF5W10sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBudW1fY2lw
aGVyKTsKIAotc3J0cF9lcnJfc3RhdHVzX3QKLWNpcGhlcl9hcnJheV9hbGxvY19pbml0KHNydHBf
Y2lwaGVyX3QgKioqY2lwaGVyX2FycmF5LCBpbnQgbnVtX2NpcGhlcnMsCi0JCQlzcnRwX2NpcGhl
cl90eXBlX3QgKmN0eXBlLCBpbnQga2xlbik7CitzcnRwX2Vycl9zdGF0dXNfdCBjaXBoZXJfYXJy
YXlfYWxsb2NfaW5pdChzcnRwX2NpcGhlcl90ICoqKmNpcGhlcl9hcnJheSwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBudW1fY2lwaGVycywKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfY2lwaGVyX3R5cGVfdCAqY3R5
cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQga2xlbik7
CiAKLXZvaWQKLXVzYWdlKGNoYXIgKnByb2dfbmFtZSkgewotICBwcmludGYoInVzYWdlOiAlcyBb
IC10IHwgLXYgfCAtYSBdXG4iLCBwcm9nX25hbWUpOwotICBleGl0KDI1NSk7Cit2b2lkIHVzYWdl
KGNoYXIgKnByb2dfbmFtZSkKK3sKKyAgICBwcmludGYoInVzYWdlOiAlcyBbIC10IHwgLXYgfCAt
YSBdXG4iLCBwcm9nX25hbWUpOworICAgIGV4aXQoMjU1KTsKIH0KIAotdm9pZAotY2hlY2tfc3Rh
dHVzKHNydHBfZXJyX3N0YXR1c190IHMpIHsKLSAgaWYgKHMpIHsKLSAgICBwcmludGYoImVycm9y
IChjb2RlICVkKVxuIiwgcyk7Ci0gICAgZXhpdChzKTsKLSAgfQotICByZXR1cm47Cit2b2lkIGNo
ZWNrX3N0YXR1cyhzcnRwX2Vycl9zdGF0dXNfdCBzKQoreworICAgIGlmIChzKSB7CisgICAgICAg
IHByaW50ZigiZXJyb3IgKGNvZGUgJWQpXG4iLCBzKTsKKyAgICAgICAgZXhpdChzKTsKKyAgICB9
CisgICAgcmV0dXJuOwogfQogCiAvKgpAQCAtMTI5LDE1MSArMTI0LDE2MyBAQCBleHRlcm4gc3J0
cF9jaXBoZXJfdHlwZV90IHNydHBfYWVzX2djbV8xMjhfb3BlbnNzbDsKIGV4dGVybiBzcnRwX2Np
cGhlcl90eXBlX3Qgc3J0cF9hZXNfZ2NtXzI1Nl9vcGVuc3NsOwogI2VuZGlmCiAKLWludAotbWFp
bihpbnQgYXJnYywgY2hhciAqYXJndltdKSB7Ci0gIHNydHBfY2lwaGVyX3QgKmMgPSBOVUxMOwot
ICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7Ci0gIHVuc2lnbmVkIGNoYXIgdGVzdF9rZXlbNDhd
ID0gewotICAgIDB4MDAsIDB4MDEsIDB4MDIsIDB4MDMsIDB4MDQsIDB4MDUsIDB4MDYsIDB4MDcs
Ci0gICAgMHgwOCwgMHgwOSwgMHgwYSwgMHgwYiwgMHgwYywgMHgwZCwgMHgwZSwgMHgwZiwKLSAg
ICAweDEwLCAweDExLCAweDEyLCAweDEzLCAweDE0LCAweDE1LCAweDE2LCAweDE3LAotICAgIDB4
MTgsIDB4MTksIDB4MWEsIDB4MWIsIDB4MWMsIDB4MWQsIDB4MWUsIDB4MWYsCi0gICAgMHgyMCwg
MHgyMSwgMHgyMiwgMHgyMywgMHgyNCwgMHgyNSwgMHgyNiwgMHgyNywKLSAgICAweDI4LCAweDI5
LCAweDJhLCAweDJiLCAweDJjLCAweDJkLCAweDJlLCAweDJmLAotICB9OwotICBpbnQgcTsKLSAg
dW5zaWduZWQgZG9fdGltaW5nX3Rlc3QgPSAwOwotICB1bnNpZ25lZCBkb192YWxpZGF0aW9uID0g
MDsKLSAgdW5zaWduZWQgZG9fYXJyYXlfdGltaW5nX3Rlc3QgPSAwOwotCi0gIC8qIHByb2Nlc3Mg
aW5wdXQgYXJndW1lbnRzICovCi0gIHdoaWxlICgxKSB7Ci0gICAgcSA9IGdldG9wdF9zKGFyZ2Ms
IGFyZ3YsICJ0dmEiKTsKLSAgICBpZiAocSA9PSAtMSkgCi0gICAgICBicmVhazsKLSAgICBzd2l0
Y2ggKHEpIHsKLSAgICBjYXNlICd0JzoKLSAgICAgIGRvX3RpbWluZ190ZXN0ID0gMTsKLSAgICAg
IGJyZWFrOwotICAgIGNhc2UgJ3YnOgotICAgICAgZG9fdmFsaWRhdGlvbiA9IDE7Ci0gICAgICBi
cmVhazsKLSAgICBjYXNlICdhJzoKLSAgICAgIGRvX2FycmF5X3RpbWluZ190ZXN0ID0gMTsKLSAg
ICAgIGJyZWFrOwotICAgIGRlZmF1bHQ6Ci0gICAgICB1c2FnZShhcmd2WzBdKTsKLSAgICB9ICAg
IAotICB9Ci0KLSAgcHJpbnRmKCJjaXBoZXIgdGVzdCBkcml2ZXJcbiIKLQkgIkRhdmlkIEEuIE1j
R3Jld1xuIgotCSAiQ2lzY28gU3lzdGVtcywgSW5jLlxuIik7Ci0KLSAgaWYgKCFkb192YWxpZGF0
aW9uICYmICFkb190aW1pbmdfdGVzdCAmJiAhZG9fYXJyYXlfdGltaW5nX3Rlc3QpCi0gICAgdXNh
Z2UoYXJndlswXSk7Ci0KLSAgIC8qIGFycnkgdGltaW5nIChjYWNoZSB0aHJhc2gpIHRlc3QgKi8K
LSAgaWYgKGRvX2FycmF5X3RpbWluZ190ZXN0KSB7Ci0gICAgaW50IG1heF9udW1fY2lwaGVyID0g
MSA8PCAxNjsgICAvKiBudW1iZXIgb2YgY2lwaGVycyBpbiBjaXBoZXJfYXJyYXkgKi8KLSAgICBp
bnQgbnVtX2NpcGhlcjsKLSAgICAKLSAgICBmb3IgKG51bV9jaXBoZXI9MTsgbnVtX2NpcGhlciA8
IG1heF9udW1fY2lwaGVyOyBudW1fY2lwaGVyICo9OCkKLSAgICAgIGNpcGhlcl9kcml2ZXJfdGVz
dF9hcnJheV90aHJvdWdocHV0KCZzcnRwX251bGxfY2lwaGVyLCAwLCBudW1fY2lwaGVyKTsgCi0K
LSAgICBmb3IgKG51bV9jaXBoZXI9MTsgbnVtX2NpcGhlciA8IG1heF9udW1fY2lwaGVyOyBudW1f
Y2lwaGVyICo9OCkKLSAgICAgIGNpcGhlcl9kcml2ZXJfdGVzdF9hcnJheV90aHJvdWdocHV0KCZz
cnRwX2Flc19pY21fMTI4LCBTUlRQX0FFU19JQ01fMTI4X0tFWV9MRU5fV1NBTFQsIG51bV9jaXBo
ZXIpOwotCi0gICAgZm9yIChudW1fY2lwaGVyPTE7IG51bV9jaXBoZXIgPCBtYXhfbnVtX2NpcGhl
cjsgbnVtX2NpcGhlciAqPTgpCi0gICAgICBjaXBoZXJfZHJpdmVyX3Rlc3RfYXJyYXlfdGhyb3Vn
aHB1dCgmc3J0cF9hZXNfaWNtXzI1NiwgU1JUUF9BRVNfSUNNXzI1Nl9LRVlfTEVOX1dTQUxULCBu
dW1fY2lwaGVyKTsKK2ludCBtYWluKGludCBhcmdjLCBjaGFyICphcmd2W10pCit7CisgICAgc3J0
cF9jaXBoZXJfdCAqYyA9IE5VTEw7CisgICAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVzOworICAg
IC8qIGNsYW5nLWZvcm1hdCBvZmYgKi8KKyAgICB1bnNpZ25lZCBjaGFyIHRlc3Rfa2V5WzQ4XSA9
IHsKKyAgICAgICAgMHgwMCwgMHgwMSwgMHgwMiwgMHgwMywgMHgwNCwgMHgwNSwgMHgwNiwgMHgw
NywKKyAgICAgICAgMHgwOCwgMHgwOSwgMHgwYSwgMHgwYiwgMHgwYywgMHgwZCwgMHgwZSwgMHgw
ZiwKKyAgICAgICAgMHgxMCwgMHgxMSwgMHgxMiwgMHgxMywgMHgxNCwgMHgxNSwgMHgxNiwgMHgx
NywKKyAgICAgICAgMHgxOCwgMHgxOSwgMHgxYSwgMHgxYiwgMHgxYywgMHgxZCwgMHgxZSwgMHgx
ZiwKKyAgICAgICAgMHgyMCwgMHgyMSwgMHgyMiwgMHgyMywgMHgyNCwgMHgyNSwgMHgyNiwgMHgy
NywKKyAgICAgICAgMHgyOCwgMHgyOSwgMHgyYSwgMHgyYiwgMHgyYywgMHgyZCwgMHgyZSwgMHgy
ZiwKKyAgICB9OworICAgIC8qIGNsYW5nLWZvcm1hdCBvbiAqLworICAgIGludCBxOworICAgIHVu
c2lnbmVkIGRvX3RpbWluZ190ZXN0ID0gMDsKKyAgICB1bnNpZ25lZCBkb192YWxpZGF0aW9uID0g
MDsKKyAgICB1bnNpZ25lZCBkb19hcnJheV90aW1pbmdfdGVzdCA9IDA7CisKKyAgICAvKiBwcm9j
ZXNzIGlucHV0IGFyZ3VtZW50cyAqLworICAgIHdoaWxlICgxKSB7CisgICAgICAgIHEgPSBnZXRv
cHRfcyhhcmdjLCBhcmd2LCAidHZhIik7CisgICAgICAgIGlmIChxID09IC0xKQorICAgICAgICAg
ICAgYnJlYWs7CisgICAgICAgIHN3aXRjaCAocSkgeworICAgICAgICBjYXNlICd0JzoKKyAgICAg
ICAgICAgIGRvX3RpbWluZ190ZXN0ID0gMTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBj
YXNlICd2JzoKKyAgICAgICAgICAgIGRvX3ZhbGlkYXRpb24gPSAxOworICAgICAgICAgICAgYnJl
YWs7CisgICAgICAgIGNhc2UgJ2EnOgorICAgICAgICAgICAgZG9fYXJyYXlfdGltaW5nX3Rlc3Qg
PSAxOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICB1
c2FnZShhcmd2WzBdKTsKKyAgICAgICAgfQorICAgIH0KKworICAgIHByaW50ZigiY2lwaGVyIHRl
c3QgZHJpdmVyXG4iCisgICAgICAgICAgICJEYXZpZCBBLiBNY0dyZXdcbiIKKyAgICAgICAgICAg
IkNpc2NvIFN5c3RlbXMsIEluYy5cbiIpOwogCi0jaWZkZWYgT1BFTlNTTAotICAgIGZvciAobnVt
X2NpcGhlcj0xOyBudW1fY2lwaGVyIDwgbWF4X251bV9jaXBoZXI7IG51bV9jaXBoZXIgKj04KQot
ICAgICAgY2lwaGVyX2RyaXZlcl90ZXN0X2FycmF5X3Rocm91Z2hwdXQoJnNydHBfYWVzX2ljbV8x
OTIsIFNSVFBfQUVTX0lDTV8xOTJfS0VZX0xFTl9XU0FMVCwgbnVtX2NpcGhlcik7CisgICAgaWYg
KCFkb192YWxpZGF0aW9uICYmICFkb190aW1pbmdfdGVzdCAmJiAhZG9fYXJyYXlfdGltaW5nX3Rl
c3QpCisgICAgICAgIHVzYWdlKGFyZ3ZbMF0pOwogCi0gICAgZm9yIChudW1fY2lwaGVyPTE7IG51
bV9jaXBoZXIgPCBtYXhfbnVtX2NpcGhlcjsgbnVtX2NpcGhlciAqPTgpIHsKLSAgICAgIGNpcGhl
cl9kcml2ZXJfdGVzdF9hcnJheV90aHJvdWdocHV0KCZzcnRwX2Flc19nY21fMTI4X29wZW5zc2ws
IFNSVFBfQUVTX0dDTV8xMjhfS0VZX0xFTl9XU0FMVCwgbnVtX2NpcGhlcik7Ci0gICAgfQorICAg
IC8qIGFycnkgdGltaW5nIChjYWNoZSB0aHJhc2gpIHRlc3QgKi8KKyAgICBpZiAoZG9fYXJyYXlf
dGltaW5nX3Rlc3QpIHsKKyAgICAgICAgaW50IG1heF9udW1fY2lwaGVyID0gMSA8PCAxNjsgLyog
bnVtYmVyIG9mIGNpcGhlcnMgaW4gY2lwaGVyX2FycmF5ICovCisgICAgICAgIGludCBudW1fY2lw
aGVyOwogCi0gICAgZm9yIChudW1fY2lwaGVyPTE7IG51bV9jaXBoZXIgPCBtYXhfbnVtX2NpcGhl
cjsgbnVtX2NpcGhlciAqPTgpIHsKLSAgICAgIGNpcGhlcl9kcml2ZXJfdGVzdF9hcnJheV90aHJv
dWdocHV0KCZzcnRwX2Flc19nY21fMjU2X29wZW5zc2wsIFNSVFBfQUVTX0dDTV8yNTZfS0VZX0xF
Tl9XU0FMVCwgbnVtX2NpcGhlcik7Ci0gICAgfQorICAgICAgICBmb3IgKG51bV9jaXBoZXIgPSAx
OyBudW1fY2lwaGVyIDwgbWF4X251bV9jaXBoZXI7IG51bV9jaXBoZXIgKj0gOCkKKyAgICAgICAg
ICAgIGNpcGhlcl9kcml2ZXJfdGVzdF9hcnJheV90aHJvdWdocHV0KCZzcnRwX251bGxfY2lwaGVy
LCAwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbnVt
X2NpcGhlcik7CisKKyAgICAgICAgZm9yIChudW1fY2lwaGVyID0gMTsgbnVtX2NpcGhlciA8IG1h
eF9udW1fY2lwaGVyOyBudW1fY2lwaGVyICo9IDgpCisgICAgICAgICAgICBjaXBoZXJfZHJpdmVy
X3Rlc3RfYXJyYXlfdGhyb3VnaHB1dCgKKyAgICAgICAgICAgICAgICAmc3J0cF9hZXNfaWNtXzEy
OCwgU1JUUF9BRVNfSUNNXzEyOF9LRVlfTEVOX1dTQUxULCBudW1fY2lwaGVyKTsKKworICAgICAg
ICBmb3IgKG51bV9jaXBoZXIgPSAxOyBudW1fY2lwaGVyIDwgbWF4X251bV9jaXBoZXI7IG51bV9j
aXBoZXIgKj0gOCkKKyAgICAgICAgICAgIGNpcGhlcl9kcml2ZXJfdGVzdF9hcnJheV90aHJvdWdo
cHV0KAorICAgICAgICAgICAgICAgICZzcnRwX2Flc19pY21fMjU2LCBTUlRQX0FFU19JQ01fMjU2
X0tFWV9MRU5fV1NBTFQsIG51bV9jaXBoZXIpOworCisjaWZkZWYgT1BFTlNTTAorICAgICAgICBm
b3IgKG51bV9jaXBoZXIgPSAxOyBudW1fY2lwaGVyIDwgbWF4X251bV9jaXBoZXI7IG51bV9jaXBo
ZXIgKj0gOCkKKyAgICAgICAgICAgIGNpcGhlcl9kcml2ZXJfdGVzdF9hcnJheV90aHJvdWdocHV0
KAorICAgICAgICAgICAgICAgICZzcnRwX2Flc19pY21fMTkyLCBTUlRQX0FFU19JQ01fMTkyX0tF
WV9MRU5fV1NBTFQsIG51bV9jaXBoZXIpOworCisgICAgICAgIGZvciAobnVtX2NpcGhlciA9IDE7
IG51bV9jaXBoZXIgPCBtYXhfbnVtX2NpcGhlcjsgbnVtX2NpcGhlciAqPSA4KSB7CisgICAgICAg
ICAgICBjaXBoZXJfZHJpdmVyX3Rlc3RfYXJyYXlfdGhyb3VnaHB1dCgmc3J0cF9hZXNfZ2NtXzEy
OF9vcGVuc3NsLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgU1JUUF9BRVNfR0NNXzEyOF9LRVlfTEVOX1dTQUxULAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgbnVtX2NpcGhlcik7CisgICAgICAgIH0KKworICAg
ICAgICBmb3IgKG51bV9jaXBoZXIgPSAxOyBudW1fY2lwaGVyIDwgbWF4X251bV9jaXBoZXI7IG51
bV9jaXBoZXIgKj0gOCkgeworICAgICAgICAgICAgY2lwaGVyX2RyaXZlcl90ZXN0X2FycmF5X3Ro
cm91Z2hwdXQoJnNydHBfYWVzX2djbV8yNTZfb3BlbnNzbCwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNSVFBfQUVTX0dDTV8yNTZfS0VZX0xFTl9XU0FM
VCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG51bV9j
aXBoZXIpOworICAgICAgICB9CiAjZW5kaWYKLSAgfQorICAgIH0KIAotICBpZiAoZG9fdmFsaWRh
dGlvbikgewotICAgIGNpcGhlcl9kcml2ZXJfc2VsZl90ZXN0KCZzcnRwX251bGxfY2lwaGVyKTsK
LSAgICBjaXBoZXJfZHJpdmVyX3NlbGZfdGVzdCgmc3J0cF9hZXNfaWNtXzEyOCk7Ci0gICAgY2lw
aGVyX2RyaXZlcl9zZWxmX3Rlc3QoJnNydHBfYWVzX2ljbV8yNTYpOworICAgIGlmIChkb192YWxp
ZGF0aW9uKSB7CisgICAgICAgIGNpcGhlcl9kcml2ZXJfc2VsZl90ZXN0KCZzcnRwX251bGxfY2lw
aGVyKTsKKyAgICAgICAgY2lwaGVyX2RyaXZlcl9zZWxmX3Rlc3QoJnNydHBfYWVzX2ljbV8xMjgp
OworICAgICAgICBjaXBoZXJfZHJpdmVyX3NlbGZfdGVzdCgmc3J0cF9hZXNfaWNtXzI1Nik7CiAj
aWZkZWYgT1BFTlNTTAotICAgIGNpcGhlcl9kcml2ZXJfc2VsZl90ZXN0KCZzcnRwX2Flc19pY21f
MTkyKTsKLSAgICBjaXBoZXJfZHJpdmVyX3NlbGZfdGVzdCgmc3J0cF9hZXNfZ2NtXzEyOF9vcGVu
c3NsKTsKLSAgICBjaXBoZXJfZHJpdmVyX3NlbGZfdGVzdCgmc3J0cF9hZXNfZ2NtXzI1Nl9vcGVu
c3NsKTsKKyAgICAgICAgY2lwaGVyX2RyaXZlcl9zZWxmX3Rlc3QoJnNydHBfYWVzX2ljbV8xOTIp
OworICAgICAgICBjaXBoZXJfZHJpdmVyX3NlbGZfdGVzdCgmc3J0cF9hZXNfZ2NtXzEyOF9vcGVu
c3NsKTsKKyAgICAgICAgY2lwaGVyX2RyaXZlcl9zZWxmX3Rlc3QoJnNydHBfYWVzX2djbV8yNTZf
b3BlbnNzbCk7CiAjZW5kaWYKLSAgfQorICAgIH0KIAotICAvKiBkbyB0aW1pbmcgYW5kL29yIGJ1
ZmZlcl90ZXN0IG9uIHNydHBfbnVsbF9jaXBoZXIgKi8KLSAgc3RhdHVzID0gc3J0cF9jaXBoZXJf
dHlwZV9hbGxvYygmc3J0cF9udWxsX2NpcGhlciwgJmMsIDAsIDApOyAKLSAgY2hlY2tfc3RhdHVz
KHN0YXR1cyk7CisgICAgLyogZG8gdGltaW5nIGFuZC9vciBidWZmZXJfdGVzdCBvbiBzcnRwX251
bGxfY2lwaGVyICovCisgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfdHlwZV9hbGxvYygmc3J0cF9u
dWxsX2NpcGhlciwgJmMsIDAsIDApOworICAgIGNoZWNrX3N0YXR1cyhzdGF0dXMpOwogCi0gIHN0
YXR1cyA9IHNydHBfY2lwaGVyX2luaXQoYywgTlVMTCk7Ci0gIGNoZWNrX3N0YXR1cyhzdGF0dXMp
OworICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX2luaXQoYywgTlVMTCk7CisgICAgY2hlY2tfc3Rh
dHVzKHN0YXR1cyk7CiAKLSAgaWYgKGRvX3RpbWluZ190ZXN0KSAKLSAgICBjaXBoZXJfZHJpdmVy
X3Rlc3RfdGhyb3VnaHB1dChjKTsKLSAgaWYgKGRvX3ZhbGlkYXRpb24pIHsKLSAgICBzdGF0dXMg
PSBjaXBoZXJfZHJpdmVyX3Rlc3RfYnVmZmVyaW5nKGMpOworICAgIGlmIChkb190aW1pbmdfdGVz
dCkKKyAgICAgICAgY2lwaGVyX2RyaXZlcl90ZXN0X3Rocm91Z2hwdXQoYyk7CisgICAgaWYgKGRv
X3ZhbGlkYXRpb24pIHsKKyAgICAgICAgc3RhdHVzID0gY2lwaGVyX2RyaXZlcl90ZXN0X2J1ZmZl
cmluZyhjKTsKKyAgICAgICAgY2hlY2tfc3RhdHVzKHN0YXR1cyk7CisgICAgfQorICAgIHN0YXR1
cyA9IHNydHBfY2lwaGVyX2RlYWxsb2MoYyk7CiAgICAgY2hlY2tfc3RhdHVzKHN0YXR1cyk7Ci0g
IH0KLSAgc3RhdHVzID0gc3J0cF9jaXBoZXJfZGVhbGxvYyhjKTsKLSAgY2hlY2tfc3RhdHVzKHN0
YXR1cyk7Ci0gIAogCi0gIC8qIHJ1biB0aGUgdGhyb3VnaHB1dCB0ZXN0IG9uIHRoZSBhZXNfaWNt
IGNpcGhlciAoMTI4LWJpdCBrZXkpICovCi0gICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfdHlwZV9h
bGxvYygmc3J0cF9hZXNfaWNtXzEyOCwgJmMsIFNSVFBfQUVTX0lDTV8xMjhfS0VZX0xFTl9XU0FM
VCwgMCk7CisgICAgLyogcnVuIHRoZSB0aHJvdWdocHV0IHRlc3Qgb24gdGhlIGFlc19pY20gY2lw
aGVyICgxMjgtYml0IGtleSkgKi8KKyAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl90eXBlX2FsbG9j
KCZzcnRwX2Flc19pY21fMTI4LCAmYywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFNSVFBfQUVTX0lDTV8xMjhfS0VZX0xFTl9XU0FMVCwgMCk7CiAgICAgaWYgKHN0YXR1cykg
ewotICAgICAgZnByaW50ZihzdGRlcnIsICJlcnJvcjogY2FuJ3QgYWxsb2NhdGUgY2lwaGVyXG4i
KTsKLSAgICAgIGV4aXQoc3RhdHVzKTsKKyAgICAgICAgZnByaW50ZihzdGRlcnIsICJlcnJvcjog
Y2FuJ3QgYWxsb2NhdGUgY2lwaGVyXG4iKTsKKyAgICAgICAgZXhpdChzdGF0dXMpOwogICAgIH0K
IAogICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX2luaXQoYywgdGVzdF9rZXkpOwogICAgIGNoZWNr
X3N0YXR1cyhzdGF0dXMpOwogCiAgICAgaWYgKGRvX3RpbWluZ190ZXN0KQotICAgICAgY2lwaGVy
X2RyaXZlcl90ZXN0X3Rocm91Z2hwdXQoYyk7Ci0gICAgCisgICAgICAgIGNpcGhlcl9kcml2ZXJf
dGVzdF90aHJvdWdocHV0KGMpOworCiAgICAgaWYgKGRvX3ZhbGlkYXRpb24pIHsKLSAgICAgIHN0
YXR1cyA9IGNpcGhlcl9kcml2ZXJfdGVzdF9idWZmZXJpbmcoYyk7Ci0gICAgICBjaGVja19zdGF0
dXMoc3RhdHVzKTsKKyAgICAgICAgc3RhdHVzID0gY2lwaGVyX2RyaXZlcl90ZXN0X2J1ZmZlcmlu
ZyhjKTsKKyAgICAgICAgY2hlY2tfc3RhdHVzKHN0YXR1cyk7CiAgICAgfQotICAgIAorCiAgICAg
c3RhdHVzID0gc3J0cF9jaXBoZXJfZGVhbGxvYyhjKTsKICAgICBjaGVja19zdGF0dXMoc3RhdHVz
KTsKIAotICAvKiByZXBlYXQgdGhlIHRlc3RzIHdpdGggMjU2LWJpdCBrZXlzICovCi0gICAgc3Rh
dHVzID0gc3J0cF9jaXBoZXJfdHlwZV9hbGxvYygmc3J0cF9hZXNfaWNtXzI1NiwgJmMsIFNSVFBf
QUVTX0lDTV8yNTZfS0VZX0xFTl9XU0FMVCwgMCk7CisgICAgLyogcmVwZWF0IHRoZSB0ZXN0cyB3
aXRoIDI1Ni1iaXQga2V5cyAqLworICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3R5cGVfYWxsb2Mo
JnNydHBfYWVzX2ljbV8yNTYsICZjLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgU1JUUF9BRVNfSUNNXzI1Nl9LRVlfTEVOX1dTQUxULCAwKTsKICAgICBpZiAoc3RhdHVzKSB7
Ci0gICAgICBmcHJpbnRmKHN0ZGVyciwgImVycm9yOiBjYW4ndCBhbGxvY2F0ZSBjaXBoZXJcbiIp
OwotICAgICAgZXhpdChzdGF0dXMpOworICAgICAgICBmcHJpbnRmKHN0ZGVyciwgImVycm9yOiBj
YW4ndCBhbGxvY2F0ZSBjaXBoZXJcbiIpOworICAgICAgICBleGl0KHN0YXR1cyk7CiAgICAgfQog
CiAgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfaW5pdChjLCB0ZXN0X2tleSk7CiAgICAgY2hlY2tf
c3RhdHVzKHN0YXR1cyk7CiAKICAgICBpZiAoZG9fdGltaW5nX3Rlc3QpCi0gICAgICBjaXBoZXJf
ZHJpdmVyX3Rlc3RfdGhyb3VnaHB1dChjKTsKLSAgICAKKyAgICAgICAgY2lwaGVyX2RyaXZlcl90
ZXN0X3Rocm91Z2hwdXQoYyk7CisKICAgICBpZiAoZG9fdmFsaWRhdGlvbikgewotICAgICAgc3Rh
dHVzID0gY2lwaGVyX2RyaXZlcl90ZXN0X2J1ZmZlcmluZyhjKTsKLSAgICAgIGNoZWNrX3N0YXR1
cyhzdGF0dXMpOworICAgICAgICBzdGF0dXMgPSBjaXBoZXJfZHJpdmVyX3Rlc3RfYnVmZmVyaW5n
KGMpOworICAgICAgICBjaGVja19zdGF0dXMoc3RhdHVzKTsKICAgICB9Ci0gICAgCisKICAgICBz
dGF0dXMgPSBzcnRwX2NpcGhlcl9kZWFsbG9jKGMpOwogICAgIGNoZWNrX3N0YXR1cyhzdGF0dXMp
OwogCiAjaWZkZWYgT1BFTlNTTAogICAgIC8qIHJ1biB0aGUgdGhyb3VnaHB1dCB0ZXN0IG9uIHRo
ZSBhZXNfZ2NtXzEyOF9vcGVuc3NsIGNpcGhlciAqLwotICAgIHN0YXR1cyA9IHNydHBfY2lwaGVy
X3R5cGVfYWxsb2MoJnNydHBfYWVzX2djbV8xMjhfb3BlbnNzbCwgJmMsIFNSVFBfQUVTX0dDTV8x
MjhfS0VZX0xFTl9XU0FMVCwgOCk7CisgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfdHlwZV9hbGxv
Yygmc3J0cF9hZXNfZ2NtXzEyOF9vcGVuc3NsLCAmYywKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFNSVFBfQUVTX0dDTV8xMjhfS0VZX0xFTl9XU0FMVCwgOCk7CiAgICAgaWYg
KHN0YXR1cykgewogICAgICAgICBmcHJpbnRmKHN0ZGVyciwgImVycm9yOiBjYW4ndCBhbGxvY2F0
ZSBHQ00gMTI4IGNpcGhlclxuIik7CiAgICAgICAgIGV4aXQoc3RhdHVzKTsKQEAgLTI5Miw3ICsy
OTksOCBAQCBtYWluKGludCBhcmdjLCBjaGFyICphcmd2W10pIHsKICAgICBjaGVja19zdGF0dXMo
c3RhdHVzKTsKIAogICAgIC8qIHJ1biB0aGUgdGhyb3VnaHB1dCB0ZXN0IG9uIHRoZSBhZXNfZ2Nt
XzI1Nl9vcGVuc3NsIGNpcGhlciAqLwotICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3R5cGVfYWxs
b2MoJnNydHBfYWVzX2djbV8yNTZfb3BlbnNzbCwgJmMsIFNSVFBfQUVTX0dDTV8yNTZfS0VZX0xF
Tl9XU0FMVCwgMTYpOworICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3R5cGVfYWxsb2MoJnNydHBf
YWVzX2djbV8yNTZfb3BlbnNzbCwgJmMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBTUlRQX0FFU19HQ01fMjU2X0tFWV9MRU5fV1NBTFQsIDE2KTsKICAgICBpZiAoc3RhdHVz
KSB7CiAgICAgICAgIGZwcmludGYoc3RkZXJyLCAiZXJyb3I6IGNhbid0IGFsbG9jYXRlIEdDTSAy
NTYgY2lwaGVyXG4iKTsKICAgICAgICAgZXhpdChzdGF0dXMpOwpAQCAtMzA5LDM5ICszMTcsMzkg
QEAgbWFpbihpbnQgYXJnYywgY2hhciAqYXJndltdKSB7CiAgICAgfQogICAgIHN0YXR1cyA9IHNy
dHBfY2lwaGVyX2RlYWxsb2MoYyk7CiAgICAgY2hlY2tfc3RhdHVzKHN0YXR1cyk7Ci0jZW5kaWYg
CisjZW5kaWYKIAogICAgIHJldHVybiAwOwogfQogCi12b2lkCi1jaXBoZXJfZHJpdmVyX3Rlc3Rf
dGhyb3VnaHB1dChzcnRwX2NpcGhlcl90ICpjKSB7Ci0gIGludCBpOwotICBpbnQgbWluX2VuY19s
ZW4gPSAzMjsgICAgIAotICBpbnQgbWF4X2VuY19sZW4gPSAyMDQ4OyAgIC8qIHNob3VsZCBiZSBh
IHBvd2VyIG9mIHR3byAqLwotICBpbnQgbnVtX3RyaWFscyA9IDEwMDAwMDA7ICAKLSAgCi0gIHBy
aW50ZigidGltaW5nICVzIHRocm91Z2hwdXQsIGtleSBsZW5ndGggJWQ6XG4iLCBjLT50eXBlLT5k
ZXNjcmlwdGlvbiwgYy0+a2V5X2xlbik7Ci0gIGZmbHVzaChzdGRvdXQpOwotICBmb3IgKGk9bWlu
X2VuY19sZW47IGkgPD0gbWF4X2VuY19sZW47IGkgPSBpICogMikKLSAgICBwcmludGYoIm1zZyBs
ZW46ICVkXHRnaWdhYml0cyBwZXIgc2Vjb25kOiAlZlxuIiwKLQkgICBpLCBzcnRwX2NpcGhlcl9i
aXRzX3Blcl9zZWNvbmQoYywgaSwgbnVtX3RyaWFscykgLyAxZTkpOwotCit2b2lkIGNpcGhlcl9k
cml2ZXJfdGVzdF90aHJvdWdocHV0KHNydHBfY2lwaGVyX3QgKmMpCit7CisgICAgaW50IGk7Cisg
ICAgaW50IG1pbl9lbmNfbGVuID0gMzI7CisgICAgaW50IG1heF9lbmNfbGVuID0gMjA0ODsgLyog
c2hvdWxkIGJlIGEgcG93ZXIgb2YgdHdvICovCisgICAgaW50IG51bV90cmlhbHMgPSAxMDAwMDAw
OworCisgICAgcHJpbnRmKCJ0aW1pbmcgJXMgdGhyb3VnaHB1dCwga2V5IGxlbmd0aCAlZDpcbiIs
IGMtPnR5cGUtPmRlc2NyaXB0aW9uLAorICAgICAgICAgICBjLT5rZXlfbGVuKTsKKyAgICBmZmx1
c2goc3Rkb3V0KTsKKyAgICBmb3IgKGkgPSBtaW5fZW5jX2xlbjsgaSA8PSBtYXhfZW5jX2xlbjsg
aSA9IGkgKiAyKQorICAgICAgICBwcmludGYoIm1zZyBsZW46ICVkXHRnaWdhYml0cyBwZXIgc2Vj
b25kOiAlZlxuIiwgaSwKKyAgICAgICAgICAgICAgIHNydHBfY2lwaGVyX2JpdHNfcGVyX3NlY29u
ZChjLCBpLCBudW1fdHJpYWxzKSAvIDFlOSk7CiB9CiAKLXNydHBfZXJyX3N0YXR1c190Ci1jaXBo
ZXJfZHJpdmVyX3NlbGZfdGVzdChzcnRwX2NpcGhlcl90eXBlX3QgKmN0KSB7Ci0gIHNydHBfZXJy
X3N0YXR1c190IHN0YXR1czsKLSAgCi0gIHByaW50ZigicnVubmluZyBjaXBoZXIgc2VsZi10ZXN0
IGZvciAlcy4uLiIsIGN0LT5kZXNjcmlwdGlvbik7Ci0gIHN0YXR1cyA9IHNydHBfY2lwaGVyX3R5
cGVfc2VsZl90ZXN0KGN0KTsKLSAgaWYgKHN0YXR1cykgewotICAgIHByaW50ZigiZmFpbGVkIHdp
dGggZXJyb3IgY29kZSAlZFxuIiwgc3RhdHVzKTsKLSAgICBleGl0KHN0YXR1cyk7Ci0gIH0KLSAg
cHJpbnRmKCJwYXNzZWRcbiIpOwotICAKLSAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKK3Ny
dHBfZXJyX3N0YXR1c190IGNpcGhlcl9kcml2ZXJfc2VsZl90ZXN0KHNydHBfY2lwaGVyX3R5cGVf
dCAqY3QpCit7CisgICAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVzOworCisgICAgcHJpbnRmKCJy
dW5uaW5nIGNpcGhlciBzZWxmLXRlc3QgZm9yICVzLi4uIiwgY3QtPmRlc2NyaXB0aW9uKTsKKyAg
ICBzdGF0dXMgPSBzcnRwX2NpcGhlcl90eXBlX3NlbGZfdGVzdChjdCk7CisgICAgaWYgKHN0YXR1
cykgeworICAgICAgICBwcmludGYoImZhaWxlZCB3aXRoIGVycm9yIGNvZGUgJWRcbiIsIHN0YXR1
cyk7CisgICAgICAgIGV4aXQoc3RhdHVzKTsKKyAgICB9CisgICAgcHJpbnRmKCJwYXNzZWRcbiIp
OworCisgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0KIAogLyoKQEAgLTM1MSwxNjgg
KzM1OSwxNjYgQEAgY2lwaGVyX2RyaXZlcl9zZWxmX3Rlc3Qoc3J0cF9jaXBoZXJfdHlwZV90ICpj
dCkgewogICovCiAKICNkZWZpbmUgSU5JVElBTF9CVUZMRU4gMTAyNAotc3J0cF9lcnJfc3RhdHVz
X3QKLWNpcGhlcl9kcml2ZXJfdGVzdF9idWZmZXJpbmcoc3J0cF9jaXBoZXJfdCAqYykgewotICBp
bnQgaSwgaiwgbnVtX3RyaWFscyA9IDEwMDA7Ci0gIHVuc2lnbmVkIGxlbiwgYnVmbGVuID0gSU5J
VElBTF9CVUZMRU47Ci0gIHVpbnQ4X3QgYnVmZmVyMFtJTklUSUFMX0JVRkxFTl0sIGJ1ZmZlcjFb
SU5JVElBTF9CVUZMRU5dLCAqY3VycmVudCwgKmVuZDsKLSAgdWludDhfdCBpZHhbMTZdID0geyAK
LSAgICAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAKLSAg
ICAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDEyLCAweDM0Ci0gIH07Ci0g
IHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKLSAgCi0gIHByaW50ZigidGVzdGluZyBvdXRwdXQg
YnVmZmVyaW5nIGZvciBjaXBoZXIgJXMuLi4iLAotCSBjLT50eXBlLT5kZXNjcmlwdGlvbik7Ci0K
LSAgZm9yIChpPTA7IGkgPCBudW1fdHJpYWxzOyBpKyspIHsKLQotICAgLyogc2V0IGJ1ZmZlcnMg
dG8gemVybyAqLwotICAgIGZvciAoaj0wOyBqIDwgKGludCkgYnVmbGVuOyBqKyspIHsKLSAgICAg
IGJ1ZmZlcjBbal0gPSBidWZmZXIxW2pdID0gMDsKLSAgICB9Ci0gICAgCi0gICAgLyogaW5pdGlh
bGl6ZSBjaXBoZXIgICovCi0gICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfc2V0X2l2KGMsICh1aW50
OF90KilpZHgsIHNydHBfZGlyZWN0aW9uX2VuY3J5cHQpOwotICAgIGlmIChzdGF0dXMpCi0gICAg
ICByZXR1cm4gc3RhdHVzOwotCi0gICAgLyogZ2VuZXJhdGUgJ3JlZmVyZW5jZScgdmFsdWUgYnkg
ZW5jcnlwdGluZyBhbGwgYXQgb25jZSAqLwotICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX2VuY3J5
cHQoYywgYnVmZmVyMCwgJmJ1Zmxlbik7Ci0gICAgaWYgKHN0YXR1cykKLSAgICAgIHJldHVybiBz
dGF0dXM7Ci0KLSAgICAvKiByZS1pbml0aWFsaXplIGNpcGhlciAqLwotICAgIHN0YXR1cyA9IHNy
dHBfY2lwaGVyX3NldF9pdihjLCAodWludDhfdCopaWR4LCBzcnRwX2RpcmVjdGlvbl9lbmNyeXB0
KTsKLSAgICBpZiAoc3RhdHVzKQotICAgICAgcmV0dXJuIHN0YXR1czsKLSAgICAKLSAgICAvKiBu
b3cgbG9vcCBvdmVyIHNob3J0IGxlbmd0aHMgdW50aWwgYnVmZmVyMSBpcyBlbmNyeXB0ZWQgKi8K
LSAgICBjdXJyZW50ID0gYnVmZmVyMTsKLSAgICBlbmQgPSBidWZmZXIxICsgYnVmbGVuOwotICAg
IHdoaWxlIChjdXJyZW50IDwgZW5kKSB7Ci0KLSAgICAgIC8qIGNob29zZSBhIHNob3J0IGxlbmd0
aCAqLwotICAgICAgbGVuID0gcmFuZCgpICYgMHgwMWY7Ci0KLSAgICAgIC8qIG1ha2Ugc3VyZSB0
aGF0IGxlbiBkb2Vzbid0IGNhdXNlIHVzIHRvIG92ZXJyZWFjaCB0aGUgYnVmZmVyICovCi0gICAg
ICBpZiAoY3VycmVudCArIGxlbiA+IGVuZCkKLQlsZW4gPSBlbmQgLSBjdXJyZW50OwotCi0gICAg
ICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9lbmNyeXB0KGMsIGN1cnJlbnQsICZsZW4pOwotICAgICAg
aWYgKHN0YXR1cykgCi0JcmV0dXJuIHN0YXR1czsKLSAgICAgIAotICAgICAgLyogYWR2YW5jZSBw
b2ludGVyIGludG8gYnVmZmVyMSB0byByZWZsZWN0IGVuY3J5cHRpb24gKi8KLSAgICAgIGN1cnJl
bnQgKz0gbGVuOwotICAgICAgCi0gICAgICAvKiBpZiBidWZmZXIxIGlzIGFsbCBlbmNyeXB0ZWQs
IGJyZWFrIG91dCBvZiBsb29wICovCi0gICAgICBpZiAoY3VycmVudCA9PSBlbmQpCi0JYnJlYWs7
Ci0gICAgfQotCi0gICAgLyogY29tcGFyZSBidWZmZXJzICovCi0gICAgZm9yIChqPTA7IGogPCAo
aW50KSBidWZsZW47IGorKykgewotICAgICAgaWYgKGJ1ZmZlcjBbal0gIT0gYnVmZmVyMVtqXSkg
eworc3J0cF9lcnJfc3RhdHVzX3QgY2lwaGVyX2RyaXZlcl90ZXN0X2J1ZmZlcmluZyhzcnRwX2Np
cGhlcl90ICpjKQoreworICAgIGludCBpLCBqLCBudW1fdHJpYWxzID0gMTAwMDsKKyAgICB1bnNp
Z25lZCBsZW4sIGJ1ZmxlbiA9IElOSVRJQUxfQlVGTEVOOworICAgIHVpbnQ4X3QgYnVmZmVyMFtJ
TklUSUFMX0JVRkxFTl0sIGJ1ZmZlcjFbSU5JVElBTF9CVUZMRU5dLCAqY3VycmVudCwgKmVuZDsK
KyAgICB1aW50OF90IGlkeFsxNl0gPSB7IDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4
MDAsIDB4MDAsIDB4MDAsCisgICAgICAgICAgICAgICAgICAgICAgICAweDAwLCAweDAwLCAweDAw
LCAweDAwLCAweDAwLCAweDAwLCAweDEyLCAweDM0IH07CisgICAgc3J0cF9lcnJfc3RhdHVzX3Qg
c3RhdHVzOworCisgICAgcHJpbnRmKCJ0ZXN0aW5nIG91dHB1dCBidWZmZXJpbmcgZm9yIGNpcGhl
ciAlcy4uLiIsIGMtPnR5cGUtPmRlc2NyaXB0aW9uKTsKKworICAgIGZvciAoaSA9IDA7IGkgPCBu
dW1fdHJpYWxzOyBpKyspIHsKKyAgICAgICAgLyogc2V0IGJ1ZmZlcnMgdG8gemVybyAqLworICAg
ICAgICBmb3IgKGogPSAwOyBqIDwgKGludClidWZsZW47IGorKykgeworICAgICAgICAgICAgYnVm
ZmVyMFtqXSA9IGJ1ZmZlcjFbal0gPSAwOworICAgICAgICB9CisKKyAgICAgICAgLyogaW5pdGlh
bGl6ZSBjaXBoZXIgICovCisgICAgICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3NldF9pdihjLCAo
dWludDhfdCAqKWlkeCwgc3J0cF9kaXJlY3Rpb25fZW5jcnlwdCk7CisgICAgICAgIGlmIChzdGF0
dXMpCisgICAgICAgICAgICByZXR1cm4gc3RhdHVzOworCisgICAgICAgIC8qIGdlbmVyYXRlICdy
ZWZlcmVuY2UnIHZhbHVlIGJ5IGVuY3J5cHRpbmcgYWxsIGF0IG9uY2UgKi8KKyAgICAgICAgc3Rh
dHVzID0gc3J0cF9jaXBoZXJfZW5jcnlwdChjLCBidWZmZXIwLCAmYnVmbGVuKTsKKyAgICAgICAg
aWYgKHN0YXR1cykKKyAgICAgICAgICAgIHJldHVybiBzdGF0dXM7CisKKyAgICAgICAgLyogcmUt
aW5pdGlhbGl6ZSBjaXBoZXIgKi8KKyAgICAgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfc2V0X2l2
KGMsICh1aW50OF90ICopaWR4LCBzcnRwX2RpcmVjdGlvbl9lbmNyeXB0KTsKKyAgICAgICAgaWYg
KHN0YXR1cykKKyAgICAgICAgICAgIHJldHVybiBzdGF0dXM7CisKKyAgICAgICAgLyogbm93IGxv
b3Agb3ZlciBzaG9ydCBsZW5ndGhzIHVudGlsIGJ1ZmZlcjEgaXMgZW5jcnlwdGVkICovCisgICAg
ICAgIGN1cnJlbnQgPSBidWZmZXIxOworICAgICAgICBlbmQgPSBidWZmZXIxICsgYnVmbGVuOwor
ICAgICAgICB3aGlsZSAoY3VycmVudCA8IGVuZCkgeworICAgICAgICAgICAgLyogY2hvb3NlIGEg
c2hvcnQgbGVuZ3RoICovCisgICAgICAgICAgICBsZW4gPSByYW5kKCkgJiAweDAxZjsKKworICAg
ICAgICAgICAgLyogbWFrZSBzdXJlIHRoYXQgbGVuIGRvZXNuJ3QgY2F1c2UgdXMgdG8gb3ZlcnJl
YWNoIHRoZSBidWZmZXIgKi8KKyAgICAgICAgICAgIGlmIChjdXJyZW50ICsgbGVuID4gZW5kKQor
ICAgICAgICAgICAgICAgIGxlbiA9IGVuZCAtIGN1cnJlbnQ7CisKKyAgICAgICAgICAgIHN0YXR1
cyA9IHNydHBfY2lwaGVyX2VuY3J5cHQoYywgY3VycmVudCwgJmxlbik7CisgICAgICAgICAgICBp
ZiAoc3RhdHVzKQorICAgICAgICAgICAgICAgIHJldHVybiBzdGF0dXM7CisKKyAgICAgICAgICAg
IC8qIGFkdmFuY2UgcG9pbnRlciBpbnRvIGJ1ZmZlcjEgdG8gcmVmbGVjdCBlbmNyeXB0aW9uICov
CisgICAgICAgICAgICBjdXJyZW50ICs9IGxlbjsKKworICAgICAgICAgICAgLyogaWYgYnVmZmVy
MSBpcyBhbGwgZW5jcnlwdGVkLCBicmVhayBvdXQgb2YgbG9vcCAqLworICAgICAgICAgICAgaWYg
KGN1cnJlbnQgPT0gZW5kKQorICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICB9CisKKyAg
ICAgICAgLyogY29tcGFyZSBidWZmZXJzICovCisgICAgICAgIGZvciAoaiA9IDA7IGogPCAoaW50
KWJ1ZmxlbjsgaisrKSB7CisgICAgICAgICAgICBpZiAoYnVmZmVyMFtqXSAhPSBidWZmZXIxW2pd
KSB7CiAjaWYgUFJJTlRfREVCVUcKLQlwcmludGYoInRlc3QgY2FzZSAlZCBmYWlsZWQgYXQgYnl0
ZSAlZFxuIiwgaSwgaik7Ci0JcHJpbnRmKCJjb21wdXRlZDogJXNcbiIsIG9jdGV0X3N0cmluZ19o
ZXhfc3RyaW5nKGJ1ZmZlcjEsIGJ1ZmxlbikpOwotCXByaW50ZigiZXhwZWN0ZWQ6ICVzXG4iLCBv
Y3RldF9zdHJpbmdfaGV4X3N0cmluZyhidWZmZXIwLCBidWZsZW4pKTsKLSNlbmRpZiAKLQlyZXR1
cm4gc3J0cF9lcnJfc3RhdHVzX2FsZ29fZmFpbDsKLSAgICAgIH0KKyAgICAgICAgICAgICAgICBw
cmludGYoInRlc3QgY2FzZSAlZCBmYWlsZWQgYXQgYnl0ZSAlZFxuIiwgaSwgaik7CisgICAgICAg
ICAgICAgICAgcHJpbnRmKCJjb21wdXRlZDogJXNcbiIsCisgICAgICAgICAgICAgICAgICAgICAg
IG9jdGV0X3N0cmluZ19oZXhfc3RyaW5nKGJ1ZmZlcjEsIGJ1ZmxlbikpOworICAgICAgICAgICAg
ICAgIHByaW50ZigiZXhwZWN0ZWQ6ICVzXG4iLAorICAgICAgICAgICAgICAgICAgICAgICBvY3Rl
dF9zdHJpbmdfaGV4X3N0cmluZyhidWZmZXIwLCBidWZsZW4pKTsKKyNlbmRpZgorICAgICAgICAg
ICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYWxnb19mYWlsOworICAgICAgICAgICAgfQor
ICAgICAgICB9CiAgICAgfQotICB9Ci0gIAotICBwcmludGYoInBhc3NlZFxuIik7CiAKLSAgcmV0
dXJuIHNydHBfZXJyX3N0YXR1c19vazsKLX0KKyAgICBwcmludGYoInBhc3NlZFxuIik7CiAKKyAg
ICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOworfQogCiAvKgogICogVGhlIGZ1bmN0aW9uIGNp
cGhlcl90ZXN0X3Rocm91Z2hwdXRfYXJyYXkoKSB0ZXN0cyB0aGUgZWZmZWN0IG9mIENQVQotICog
Y2FjaGUgdGhyYXNoIG9uIGNpcGhlciB0aHJvdWdocHV0LiAgCisgKiBjYWNoZSB0aHJhc2ggb24g
Y2lwaGVyIHRocm91Z2hwdXQuCiAgKgogICogY2lwaGVyX2FycmF5X2FsbG9jX2luaXQoY3R5cGUs
IGFycmF5LCBudW1fY2lwaGVycykgY3JlYXRlcyBhbiBhcnJheQogICogb2Ygc3J0cF9jaXBoZXJf
dCBvZiB0eXBlIGN0eXBlCiAgKi8KIAotc3J0cF9lcnJfc3RhdHVzX3QKLWNpcGhlcl9hcnJheV9h
bGxvY19pbml0KHNydHBfY2lwaGVyX3QgKioqY2EsIGludCBudW1fY2lwaGVycywKLQkJCXNydHBf
Y2lwaGVyX3R5cGVfdCAqY3R5cGUsIGludCBrbGVuKSB7Ci0gIGludCBpLCBqOwotICBzcnRwX2Vy
cl9zdGF0dXNfdCBzdGF0dXM7Ci0gIHVpbnQ4X3QgKmtleTsKLSAgc3J0cF9jaXBoZXJfdCAqKmNp
cGhlcl9hcnJheTsKLSAgLyogcGFkIGtsZW4gYWxsb2NhdGlvbiwgdG8gaGFuZGxlIGFlc19pY20g
cmVhZGluZyAxNiBieXRlcyBmb3IgdGhlCi0gICAgIDE0LWJ5dGUgc2FsdCAqLwotICBpbnQga2xl
bl9wYWQgPSAoKGtsZW4gKyAxNSkgPj4gNCkgPDwgNDsKLQotICAvKiBhbGxvY2F0ZSBhcnJheSBv
ZiBwb2ludGVycyB0byBjaXBoZXJzICovCi0gIGNpcGhlcl9hcnJheSA9IChzcnRwX2NpcGhlcl90
ICoqKSBtYWxsb2Moc2l6ZW9mKHNydHBfY2lwaGVyX3QgKikgKiBudW1fY2lwaGVycyk7Ci0gIGlm
IChjaXBoZXJfYXJyYXkgPT0gTlVMTCkKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2FsbG9j
X2ZhaWw7Ci0KLSAgLyogc2V0IGNhIHRvIGxvY2F0aW9uIG9mIGNpcGhlcl9hcnJheSAqLwotICAq
Y2EgPSBjaXBoZXJfYXJyYXk7Ci0KLSAgLyogYWxsb2NhdGUga2V5ICovCi0gIGtleSA9IHNydHBf
Y3J5cHRvX2FsbG9jKGtsZW5fcGFkKTsKLSAgaWYgKGtleSA9PSBOVUxMKSB7Ci0gICAgZnJlZShj
aXBoZXJfYXJyYXkpOwotICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYWxsb2NfZmFpbDsKLSAg
fQotICAKLSAgLyogYWxsb2NhdGUgYW5kIGluaXRpYWxpemUgYW4gYXJyYXkgb2YgY2lwaGVycyAq
LwotICBmb3IgKGk9MDsgaSA8IG51bV9jaXBoZXJzOyBpKyspIHsKLQotICAgIC8qIGFsbG9jYXRl
IGNpcGhlciAqLwotICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3R5cGVfYWxsb2MoY3R5cGUsIGNp
cGhlcl9hcnJheSwga2xlbiwgMTYpOwotICAgIGlmIChzdGF0dXMpCi0gICAgICByZXR1cm4gc3Rh
dHVzOwotICAgIAotICAgIC8qIGdlbmVyYXRlIHJhbmRvbSBrZXkgYW5kIGluaXRpYWxpemUgY2lw
aGVyICovCi0gICAgZm9yIChqPTA7IGogPCBrbGVuOyBqKyspCi0gICAgICBrZXlbal0gPSAodWlu
dDhfdCkgcmFuZCgpOwotICAgIGZvciAoOyBqIDwga2xlbl9wYWQ7IGorKykKLSAgICAgIGtleVtq
XSA9IDA7Ci0gICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfaW5pdCgqY2lwaGVyX2FycmF5LCBrZXkp
OwotICAgIGlmIChzdGF0dXMpCi0gICAgICByZXR1cm4gc3RhdHVzOwotCi0vKiAgICAgcHJpbnRm
KCIlZHRoIGNpcGhlciBpcyBhdCAlcFxuIiwgaSwgKmNpcGhlcl9hcnJheSk7ICovCi0vKiAgICAg
cHJpbnRmKCIlZHRoIGNpcGhlciBkZXNjcmlwdGlvbjogJXNcbiIsIGksICAqLwotLyogCSAgICgq
Y2lwaGVyX2FycmF5KS0+dHlwZS0+ZGVzY3JpcHRpb24pOyAqLwotICAgIAotICAgIC8qIGFkdmFu
Y2UgY2lwaGVyIGFycmF5IHBvaW50ZXIgKi8KLSAgICBjaXBoZXJfYXJyYXkrKzsKLSAgfQotCi0g
IHNydHBfY3J5cHRvX2ZyZWUoa2V5KTsKLQotICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwot
fQorc3J0cF9lcnJfc3RhdHVzX3QgY2lwaGVyX2FycmF5X2FsbG9jX2luaXQoc3J0cF9jaXBoZXJf
dCAqKipjYSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBu
dW1fY2lwaGVycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNy
dHBfY2lwaGVyX3R5cGVfdCAqY3R5cGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBpbnQga2xlbikKK3sKKyAgICBpbnQgaSwgajsKKyAgICBzcnRwX2Vycl9zdGF0
dXNfdCBzdGF0dXM7CisgICAgdWludDhfdCAqa2V5OworICAgIHNydHBfY2lwaGVyX3QgKipjaXBo
ZXJfYXJyYXk7CisgICAgLyogcGFkIGtsZW4gYWxsb2NhdGlvbiwgdG8gaGFuZGxlIGFlc19pY20g
cmVhZGluZyAxNiBieXRlcyBmb3IgdGhlCisgICAgICAgMTQtYnl0ZSBzYWx0ICovCisgICAgaW50
IGtsZW5fcGFkID0gKChrbGVuICsgMTUpID4+IDQpIDw8IDQ7CisKKyAgICAvKiBhbGxvY2F0ZSBh
cnJheSBvZiBwb2ludGVycyB0byBjaXBoZXJzICovCisgICAgY2lwaGVyX2FycmF5ID0gKHNydHBf
Y2lwaGVyX3QgKiopc3J0cF9jcnlwdG9fYWxsb2Moc2l6ZW9mKHNydHBfY2lwaGVyX3QgKikgKgor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG51
bV9jaXBoZXJzKTsKKyAgICBpZiAoY2lwaGVyX2FycmF5ID09IE5VTEwpCisgICAgICAgIHJldHVy
biBzcnRwX2Vycl9zdGF0dXNfYWxsb2NfZmFpbDsKKworICAgIC8qIHNldCBjYSB0byBsb2NhdGlv
biBvZiBjaXBoZXJfYXJyYXkgKi8KKyAgICAqY2EgPSBjaXBoZXJfYXJyYXk7CisKKyAgICAvKiBh
bGxvY2F0ZSBrZXkgKi8KKyAgICBrZXkgPSBzcnRwX2NyeXB0b19hbGxvYyhrbGVuX3BhZCk7Cisg
ICAgaWYgKGtleSA9PSBOVUxMKSB7CisgICAgICAgIHNydHBfY3J5cHRvX2ZyZWUoY2lwaGVyX2Fy
cmF5KTsKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19hbGxvY19mYWlsOworICAgIH0K
KworICAgIC8qIGFsbG9jYXRlIGFuZCBpbml0aWFsaXplIGFuIGFycmF5IG9mIGNpcGhlcnMgKi8K
KyAgICBmb3IgKGkgPSAwOyBpIDwgbnVtX2NpcGhlcnM7IGkrKykgeworICAgICAgICAvKiBhbGxv
Y2F0ZSBjaXBoZXIgKi8KKyAgICAgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfdHlwZV9hbGxvYyhj
dHlwZSwgY2lwaGVyX2FycmF5LCBrbGVuLCAxNik7CisgICAgICAgIGlmIChzdGF0dXMpCisgICAg
ICAgICAgICByZXR1cm4gc3RhdHVzOworCisgICAgICAgIC8qIGdlbmVyYXRlIHJhbmRvbSBrZXkg
YW5kIGluaXRpYWxpemUgY2lwaGVyICovCisgICAgICAgIGZvciAoaiA9IDA7IGogPCBrbGVuOyBq
KyspCisgICAgICAgICAgICBrZXlbal0gPSAodWludDhfdClyYW5kKCk7CisgICAgICAgIGZvciAo
OyBqIDwga2xlbl9wYWQ7IGorKykKKyAgICAgICAgICAgIGtleVtqXSA9IDA7CisgICAgICAgIHN0
YXR1cyA9IHNydHBfY2lwaGVyX2luaXQoKmNpcGhlcl9hcnJheSwga2V5KTsKKyAgICAgICAgaWYg
KHN0YXR1cykKKyAgICAgICAgICAgIHJldHVybiBzdGF0dXM7CisKKyAgICAgICAgLyogICAgIHBy
aW50ZigiJWR0aCBjaXBoZXIgaXMgYXQgJXBcbiIsIGksICpjaXBoZXJfYXJyYXkpOyAqLworICAg
ICAgICAvKiAgICAgcHJpbnRmKCIlZHRoIGNpcGhlciBkZXNjcmlwdGlvbjogJXNcbiIsIGksICAq
LworICAgICAgICAvKiAJICAgKCpjaXBoZXJfYXJyYXkpLT50eXBlLT5kZXNjcmlwdGlvbik7ICov
CisKKyAgICAgICAgLyogYWR2YW5jZSBjaXBoZXIgYXJyYXkgcG9pbnRlciAqLworICAgICAgICBj
aXBoZXJfYXJyYXkrKzsKKyAgICB9CisKKyAgICBzcnRwX2NyeXB0b19mcmVlKGtleSk7CiAKLXNy
dHBfZXJyX3N0YXR1c190Ci1jaXBoZXJfYXJyYXlfZGVsZXRlKHNydHBfY2lwaGVyX3QgKmNpcGhl
cl9hcnJheVtdLCBpbnQgbnVtX2NpcGhlcikgewotICBpbnQgaTsKLSAgCi0gIGZvciAoaT0wOyBp
IDwgbnVtX2NpcGhlcjsgaSsrKSB7Ci0gICAgc3J0cF9jaXBoZXJfZGVhbGxvYyhjaXBoZXJfYXJy
YXlbaV0pOwotICB9Ci0KLSAgZnJlZShjaXBoZXJfYXJyYXkpOwotICAKLSAgcmV0dXJuIHNydHBf
ZXJyX3N0YXR1c19vazsKKyAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQogCitzcnRw
X2Vycl9zdGF0dXNfdCBjaXBoZXJfYXJyYXlfZGVsZXRlKHNydHBfY2lwaGVyX3QgKmNpcGhlcl9h
cnJheVtdLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgbnVtX2Np
cGhlcikKK3sKKyAgICBpbnQgaTsKKworICAgIGZvciAoaSA9IDA7IGkgPCBudW1fY2lwaGVyOyBp
KyspIHsKKyAgICAgICAgc3J0cF9jaXBoZXJfZGVhbGxvYyhjaXBoZXJfYXJyYXlbaV0pOworICAg
IH0KKworICAgIHNydHBfY3J5cHRvX2ZyZWUoY2lwaGVyX2FycmF5KTsKKworICAgIHJldHVybiBz
cnRwX2Vycl9zdGF0dXNfb2s7Cit9CiAKIC8qCiAgKiBjaXBoZXJfYXJyYXlfYml0c19wZXJfc2Vj
b25kKGMsIGwsIHQpIGNvbXB1dGVzIChhbiBlc3RpbWF0ZSBvZikgdGhlCiAgKiBudW1iZXIgb2Yg
Yml0cyB0aGF0IGEgY2lwaGVyIGltcGxlbWVudGF0aW9uIGNhbiBlbmNyeXB0IGluIGEgc2Vjb25k
CiAgKiB3aGVuIGRpc3RpbmN0IGtleXMgYXJlIHVzZWQgdG8gZW5jcnlwdCBkaXN0aW5jdCBtZXNz
YWdlcwotICogCisgKgogICogYyBpcyBhIGNpcGhlciAod2hpY2ggTVVTVCBiZSBhbGxvY2F0ZWQg
YW4gaW5pdGlhbGl6ZWQgYWxyZWFkeSksIGwKICAqIGlzIHRoZSBsZW5ndGggaW4gb2N0ZXRzIG9m
IHRoZSB0ZXN0IGRhdGEgdG8gYmUgZW5jcnlwdGVkLCBhbmQgdCBpcwogICogdGhlIG51bWJlciBv
ZiB0cmlhbHMKQEAgLTUyMCw4MCArNTI2LDg1IEBAIGNpcGhlcl9hcnJheV9kZWxldGUoc3J0cF9j
aXBoZXJfdCAqY2lwaGVyX2FycmF5W10sIGludCBudW1fY2lwaGVyKSB7CiAgKiBpZiBhbiBlcnJv
ciBpcyBlbmNvdW50ZXJlZCwgdGhlIHZhbHVlIDAgaXMgcmV0dXJuZWQKICAqLwogCi11aW50NjRf
dAotY2lwaGVyX2FycmF5X2JpdHNfcGVyX3NlY29uZChzcnRwX2NpcGhlcl90ICpjaXBoZXJfYXJy
YXlbXSwgaW50IG51bV9jaXBoZXIsIAotCQkJICAgICAgdW5zaWduZWQgb2N0ZXRzX2luX2J1ZmZl
ciwgaW50IG51bV90cmlhbHMpIHsKLSAgaW50IGk7Ci0gIHYxMjhfdCBub25jZTsKLSAgY2xvY2tf
dCB0aW1lcjsKLSAgdW5zaWduZWQgY2hhciAqZW5jX2J1ZjsKLSAgaW50IGNpcGhlcl9pbmRleCA9
IHJhbmQoKSAlIG51bV9jaXBoZXI7Ci0KLSAgLyogT3Zlci1hbGxvYywgZm9yIE5JU1QgQ0JDIHBh
ZGRpbmcgKi8KLSAgZW5jX2J1ZiA9IHNydHBfY3J5cHRvX2FsbG9jKG9jdGV0c19pbl9idWZmZXIr
MTcpOwotICBpZiAoZW5jX2J1ZiA9PSBOVUxMKQotICAgIHJldHVybiAwOyAgLyogaW5kaWNhdGUg
YmFkIHBhcmFtZXRlcnMgYnkgcmV0dXJuaW5nIG51bGwgKi8KLSAgbWVtc2V0KGVuY19idWYsIDAs
IG9jdGV0c19pbl9idWZmZXIpOwotICAKLSAgLyogdGltZSByZXBlYXRlZCB0cmlhbHMgKi8KLSAg
djEyOF9zZXRfdG9femVybygmbm9uY2UpOwotICB0aW1lciA9IGNsb2NrKCk7Ci0gIGZvcihpPTA7
IGkgPCBudW1fdHJpYWxzOyBpKyssIG5vbmNlLnYzMlszXSA9IGkpIHsKLSAgICAvKiBsZW5ndGgg
cGFyYW1ldGVyIHRvIHNydHBfY2lwaGVyX2VuY3J5cHQgaXMgaW4vb3V0IC0tIG91dCBpcyB0b3Rh
bCwgcGFkZGVkCi0gICAgICogbGVuZ3RoIC0tIHNvIHJlc2V0IGl0IGVhY2ggdGltZS4gKi8KLSAg
ICB1bnNpZ25lZCBvY3RldHNfdG9fZW5jcnlwdCA9IG9jdGV0c19pbl9idWZmZXI7Ci0KLSAgICAv
KiBlbmNyeXB0IGJ1ZmZlciB3aXRoIGNpcGhlciAqLwotICAgIHNydHBfY2lwaGVyX3NldF9pdihj
aXBoZXJfYXJyYXlbY2lwaGVyX2luZGV4XSwgKHVpbnQ4X3QqKSZub25jZSwgc3J0cF9kaXJlY3Rp
b25fZW5jcnlwdCk7Ci0gICAgc3J0cF9jaXBoZXJfZW5jcnlwdChjaXBoZXJfYXJyYXlbY2lwaGVy
X2luZGV4XSwgZW5jX2J1ZiwgJm9jdGV0c190b19lbmNyeXB0KTsKLQotICAgIC8qIGNob29zZSBh
IGNpcGhlciBhdCByYW5kb20gZnJvbSB0aGUgYXJyYXkqLwotICAgIGNpcGhlcl9pbmRleCA9ICgq
KCh1aW50MzJfdCAqKWVuY19idWYpKSAlIG51bV9jaXBoZXI7Ci0gIH0KLSAgdGltZXIgPSBjbG9j
aygpIC0gdGltZXI7Ci0KLSAgZnJlZShlbmNfYnVmKTsKLQotICBpZiAodGltZXIgPT0gMCkgewot
ICAgIC8qIFRvbyBmYXN0ISAqLwotICAgIHJldHVybiAwOwotICB9Cit1aW50NjRfdCBjaXBoZXJf
YXJyYXlfYml0c19wZXJfc2Vjb25kKHNydHBfY2lwaGVyX3QgKmNpcGhlcl9hcnJheVtdLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgbnVtX2NpcGhlciwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgb2N0ZXRzX2luX2J1ZmZl
ciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IG51bV90cmlhbHMp
Cit7CisgICAgaW50IGk7CisgICAgdjEyOF90IG5vbmNlOworICAgIGNsb2NrX3QgdGltZXI7Cisg
ICAgdW5zaWduZWQgY2hhciAqZW5jX2J1ZjsKKyAgICBpbnQgY2lwaGVyX2luZGV4ID0gcmFuZCgp
ICUgbnVtX2NpcGhlcjsKKworICAgIC8qIE92ZXItYWxsb2MsIGZvciBOSVNUIENCQyBwYWRkaW5n
ICovCisgICAgZW5jX2J1ZiA9IHNydHBfY3J5cHRvX2FsbG9jKG9jdGV0c19pbl9idWZmZXIgKyAx
Nyk7CisgICAgaWYgKGVuY19idWYgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIDA7IC8qIGluZGlj
YXRlIGJhZCBwYXJhbWV0ZXJzIGJ5IHJldHVybmluZyBudWxsICovCisKKyAgICAvKiB0aW1lIHJl
cGVhdGVkIHRyaWFscyAqLworICAgIHYxMjhfc2V0X3RvX3plcm8oJm5vbmNlKTsKKyAgICB0aW1l
ciA9IGNsb2NrKCk7CisgICAgZm9yIChpID0gMDsgaSA8IG51bV90cmlhbHM7IGkrKywgbm9uY2Uu
djMyWzNdID0gaSkgeworICAgICAgICAvKiBsZW5ndGggcGFyYW1ldGVyIHRvIHNydHBfY2lwaGVy
X2VuY3J5cHQgaXMgaW4vb3V0IC0tIG91dCBpcyB0b3RhbCwKKyAgICAgICAgICogcGFkZGVkCisg
ICAgICAgICAqIGxlbmd0aCAtLSBzbyByZXNldCBpdCBlYWNoIHRpbWUuICovCisgICAgICAgIHVu
c2lnbmVkIG9jdGV0c190b19lbmNyeXB0ID0gb2N0ZXRzX2luX2J1ZmZlcjsKKworICAgICAgICAv
KiBlbmNyeXB0IGJ1ZmZlciB3aXRoIGNpcGhlciAqLworICAgICAgICBzcnRwX2NpcGhlcl9zZXRf
aXYoY2lwaGVyX2FycmF5W2NpcGhlcl9pbmRleF0sICh1aW50OF90ICopJm5vbmNlLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgc3J0cF9kaXJlY3Rpb25fZW5jcnlwdCk7CisgICAgICAgIHNy
dHBfY2lwaGVyX2VuY3J5cHQoY2lwaGVyX2FycmF5W2NpcGhlcl9pbmRleF0sIGVuY19idWYsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgJm9jdGV0c190b19lbmNyeXB0KTsKKworICAgICAg
ICAvKiBjaG9vc2UgYSBjaXBoZXIgYXQgcmFuZG9tIGZyb20gdGhlIGFycmF5Ki8KKyAgICAgICAg
Y2lwaGVyX2luZGV4ID0gKCooKHVpbnQzMl90ICopZW5jX2J1ZikpICUgbnVtX2NpcGhlcjsKKyAg
ICB9CisgICAgdGltZXIgPSBjbG9jaygpIC0gdGltZXI7CiAKLSAgcmV0dXJuICh1aW50NjRfdClD
TE9DS1NfUEVSX1NFQyAqIG51bV90cmlhbHMgKiA4ICogb2N0ZXRzX2luX2J1ZmZlciAvIHRpbWVy
OwotfQorICAgIHNydHBfY3J5cHRvX2ZyZWUoZW5jX2J1Zik7CiAKLXZvaWQKLWNpcGhlcl9hcnJh
eV90ZXN0X3Rocm91Z2hwdXQoc3J0cF9jaXBoZXJfdCAqY2FbXSwgaW50IG51bV9jaXBoZXIpIHsK
LSAgaW50IGk7Ci0gIGludCBtaW5fZW5jX2xlbiA9IDE2OyAgICAgCi0gIGludCBtYXhfZW5jX2xl
biA9IDIwNDg7ICAgLyogc2hvdWxkIGJlIGEgcG93ZXIgb2YgdHdvICovCi0gIGludCBudW1fdHJp
YWxzID0gMTAwMDAwMDsKKyAgICBpZiAodGltZXIgPT0gMCkgeworICAgICAgICAvKiBUb28gZmFz
dCEgKi8KKyAgICAgICAgcmV0dXJuIDA7CisgICAgfQogCi0gIHByaW50ZigidGltaW5nICVzIHRo
cm91Z2hwdXQgd2l0aCBrZXkgbGVuZ3RoICVkLCBhcnJheSBzaXplICVkOlxuIiwgCi0JIChjYVsw
XSktPnR5cGUtPmRlc2NyaXB0aW9uLCAoY2FbMF0pLT5rZXlfbGVuLCBudW1fY2lwaGVyKTsKLSAg
ZmZsdXNoKHN0ZG91dCk7Ci0gIGZvciAoaT1taW5fZW5jX2xlbjsgaSA8PSBtYXhfZW5jX2xlbjsg
aSA9IGkgKiA0KQotICAgIHByaW50ZigibXNnIGxlbjogJWRcdGdpZ2FiaXRzIHBlciBzZWNvbmQ6
ICVmXG4iLCBpLAotCSAgIGNpcGhlcl9hcnJheV9iaXRzX3Blcl9zZWNvbmQoY2EsIG51bV9jaXBo
ZXIsIGksIG51bV90cmlhbHMpIC8gMWU5KTsKKyAgICByZXR1cm4gKHVpbnQ2NF90KUNMT0NLU19Q
RVJfU0VDICogbnVtX3RyaWFscyAqIDggKiBvY3RldHNfaW5fYnVmZmVyIC8gdGltZXI7Cit9CiAK
K3ZvaWQgY2lwaGVyX2FycmF5X3Rlc3RfdGhyb3VnaHB1dChzcnRwX2NpcGhlcl90ICpjYVtdLCBp
bnQgbnVtX2NpcGhlcikKK3sKKyAgICBpbnQgaTsKKyAgICBpbnQgbWluX2VuY19sZW4gPSAxNjsK
KyAgICBpbnQgbWF4X2VuY19sZW4gPSAyMDQ4OyAvKiBzaG91bGQgYmUgYSBwb3dlciBvZiB0d28g
Ki8KKyAgICBpbnQgbnVtX3RyaWFscyA9IDEwMDAwMDA7CisKKyAgICBwcmludGYoInRpbWluZyAl
cyB0aHJvdWdocHV0IHdpdGgga2V5IGxlbmd0aCAlZCwgYXJyYXkgc2l6ZSAlZDpcbiIsCisgICAg
ICAgICAgIChjYVswXSktPnR5cGUtPmRlc2NyaXB0aW9uLCAoY2FbMF0pLT5rZXlfbGVuLCBudW1f
Y2lwaGVyKTsKKyAgICBmZmx1c2goc3Rkb3V0KTsKKyAgICBmb3IgKGkgPSBtaW5fZW5jX2xlbjsg
aSA8PSBtYXhfZW5jX2xlbjsgaSA9IGkgKiA0KQorICAgICAgICBwcmludGYoIm1zZyBsZW46ICVk
XHRnaWdhYml0cyBwZXIgc2Vjb25kOiAlZlxuIiwgaSwKKyAgICAgICAgICAgICAgIGNpcGhlcl9h
cnJheV9iaXRzX3Blcl9zZWNvbmQoY2EsIG51bV9jaXBoZXIsIGksIG51bV90cmlhbHMpIC8KKyAg
ICAgICAgICAgICAgICAgICAxZTkpOwogfQogCi1zcnRwX2Vycl9zdGF0dXNfdAotY2lwaGVyX2Ry
aXZlcl90ZXN0X2FycmF5X3Rocm91Z2hwdXQoc3J0cF9jaXBoZXJfdHlwZV90ICpjdCwgCi0JCQkJ
ICAgIGludCBrbGVuLCBpbnQgbnVtX2NpcGhlcikgewotICBzcnRwX2NpcGhlcl90ICoqY2EgPSBO
VUxMOwotICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7Ci0KLSAgc3RhdHVzID0gY2lwaGVyX2Fy
cmF5X2FsbG9jX2luaXQoJmNhLCBudW1fY2lwaGVyLCBjdCwga2xlbik7Ci0gIGlmIChzdGF0dXMp
IHsKLSAgICBwcmludGYoImVycm9yOiBjaXBoZXJfYXJyYXlfYWxsb2NfaW5pdCgpIGZhaWxlZCB3
aXRoIGVycm9yIGNvZGUgJWRcbiIsCi0JICAgc3RhdHVzKTsKLSAgICByZXR1cm4gc3RhdHVzOwot
ICB9Ci0gIAotICBjaXBoZXJfYXJyYXlfdGVzdF90aHJvdWdocHV0KGNhLCBudW1fY2lwaGVyKTsK
LSAgCi0gIGNpcGhlcl9hcnJheV9kZWxldGUoY2EsIG51bV9jaXBoZXIpOyAgICAKLSAKLSAgcmV0
dXJuIHNydHBfZXJyX3N0YXR1c19vazsKK3NydHBfZXJyX3N0YXR1c190IGNpcGhlcl9kcml2ZXJf
dGVzdF9hcnJheV90aHJvdWdocHV0KHNydHBfY2lwaGVyX3R5cGVfdCAqY3QsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQga2xlbiwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBu
dW1fY2lwaGVyKQoreworICAgIHNydHBfY2lwaGVyX3QgKipjYSA9IE5VTEw7CisgICAgc3J0cF9l
cnJfc3RhdHVzX3Qgc3RhdHVzOworCisgICAgc3RhdHVzID0gY2lwaGVyX2FycmF5X2FsbG9jX2lu
aXQoJmNhLCBudW1fY2lwaGVyLCBjdCwga2xlbik7CisgICAgaWYgKHN0YXR1cykgeworICAgICAg
ICBwcmludGYoImVycm9yOiBjaXBoZXJfYXJyYXlfYWxsb2NfaW5pdCgpIGZhaWxlZCB3aXRoIGVy
cm9yIGNvZGUgJWRcbiIsCisgICAgICAgICAgICAgICBzdGF0dXMpOworICAgICAgICByZXR1cm4g
c3RhdHVzOworICAgIH0KKworICAgIGNpcGhlcl9hcnJheV90ZXN0X3Rocm91Z2hwdXQoY2EsIG51
bV9jaXBoZXIpOworCisgICAgY2lwaGVyX2FycmF5X2RlbGV0ZShjYSwgbnVtX2NpcGhlcik7CisK
KyAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by90ZXN0
L2RhdGF0eXBlc19kcml2ZXIuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vdGVzdC9kYXRhdHlwZXNfZHJpdmVyLmMKaW5kZXgg
ZDg0N2MyZjgwMjlhNWRmMmYzZTRkYjIxOTRmOTljMzkwNzY5ODg2Ni4uMmY3ODkwM2ViOGViMTMz
ZTYyMmRlYTVjZDFkMGE5ZWUyMTU3ZDI3ZCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by90ZXN0L2RhdGF0eXBl
c19kcml2ZXIuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L2xpYnNydHAvY3J5cHRvL3Rlc3QvZGF0YXR5cGVzX2RyaXZlci5jCkBAIC04LDI2ICs4
LDI2IEBACiAgKi8KIAogLyoKLSAqCQorICoKICAqIENvcHlyaWdodCAoYykgMjAwMS0yMDE3LCBD
aXNjbyBTeXN0ZW1zLCBJbmMuCiAgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICogCisgKgogICog
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKICAqIGFyZSBtZXQ6Ci0gKiAKKyAqCiAgKiAgIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
CiAgKiAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lci4KLSAqIAorICoKICAqICAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3Jt
IG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQogICogICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwogICogICBkaXNjbGFpbWVyIGluIHRo
ZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQKICAqICAgd2l0
aCB0aGUgZGlzdHJpYnV0aW9uLgotICogCisgKgogICogICBOZWl0aGVyIHRoZSBuYW1lIG9mIHRo
ZSBDaXNjbyBTeXN0ZW1zLCBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCiAgKiAgIGNvbnRyaWJ1
dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZAog
ICogICBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBl
cm1pc3Npb24uCi0gKiAKKyAqCiAgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBD
T1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCiAgKiAiQVMgSVMiIEFORCBBTlkgRVhQ
UkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAogICogTElNSVRF
RCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5F
U1MKQEAgLTQzLDExNyArNDMsMTA4IEBACiAgKgogICovCiAKLQogI2lmZGVmIEhBVkVfQ09ORklH
X0gKLSAgICAjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29uZmlnLmg+CiAjZW5kaWYK
IAotI2luY2x1ZGUgPHN0ZGlvLmg+ICAgICAgICAgICAgLyogZm9yIHByaW50ZigpICovCi0jaW5j
bHVkZSA8c3RyaW5nLmg+ICAgICAgICAgICAvKiBmb3Igc3RybGVuKCkgKi8KKyNpbmNsdWRlIDxz
dGRpby5oPiAgLyogZm9yIHByaW50ZigpICovCisjaW5jbHVkZSA8c3RyaW5nLmg+IC8qIGZvciBz
dHJsZW4oKSAqLwogI2luY2x1ZGUgImRhdGF0eXBlcy5oIgogI2luY2x1ZGUgInV0aWwuaCIKIAot
dm9pZAotYnl0ZV9vcmRlcih2b2lkKTsKK3ZvaWQgYnl0ZV9vcmRlcih2b2lkKTsKIAotdm9pZAot
dGVzdF9oZXhfc3RyaW5nX2Z1bmNzKHZvaWQpOwordm9pZCB0ZXN0X2hleF9zdHJpbmdfZnVuY3Mo
dm9pZCk7CiAKLXZvaWQKLXByaW50X3N0cmluZyhjaGFyICpzKTsKK3ZvaWQgcHJpbnRfc3RyaW5n
KGNoYXIgKnMpOwogCi12b2lkCi10ZXN0X2Jzd2FwKHZvaWQpOwordm9pZCB0ZXN0X2Jzd2FwKHZv
aWQpOwogCi1pbnQKLW1haW4gKHZvaWQpIHsKLSAgCi0gIC8qCi0gICAqIHRoaXMgcHJvZ3JhbSBp
bmNsdWRlcyB2YXJpb3VzIGFuZCBzdW5kcnkgdGVzdHMgZm9yIGZ1bmRhbWVudGFsCi0gICAqIGRh
dGF0eXBlcy4gIGl0J3MgYSBncmFiLWJhZyBvZiB0aHJvd2F3YXkgY29kZSwgcmV0YWluZWQgb25s
eSBpbgotICAgKiBjYXNlIG9mIGZ1dHVyZSBwcm9ibGVtcwotICAgKi8KLQotICBpbnQgaSwgajsK
LSAgdjEyOF90IHg7Ci0gIGNoYXIgKnIgPSAKLSAgICAiVGhlIE1vdmluZyBGaW5nZXIgd3JpdGVz
OyBhbmQsIGhhdmluZyB3cml0LFxuIgotICAgICJNb3ZlcyBvbjogbm9yIGFsbCB0aHkgUGlldHkg
bm9yIFdpdFxuIgotICAgICJTaGFsbCBsdXJlIGl0IGJhY2sgdG8gY2FuY2VsIGhhbGYgYSBMaW5l
LFxuIgotICAgICJOb3IgYWxsIHRoeSBUZWFycyB3YXNoIG91dCBhIFdvcmQgb2YgaXQuIjsKLSAg
Y2hhciAqcyA9ICJpbmNvbXBsZXQiOyAKLSAKLSAgcHJpbnRfc3RyaW5nKHIpOwotICBwcmludF9z
dHJpbmcocyk7Ci0gCi0gIGJ5dGVfb3JkZXIoKTsKLSAgdGVzdF9oZXhfc3RyaW5nX2Z1bmNzKCk7
Ci0KLSAgZm9yIChqPTA7IGogPCAxMjg7IGorKykgeworaW50IG1haW4odm9pZCkKK3sKKyAgICAv
KgorICAgICAqIHRoaXMgcHJvZ3JhbSBpbmNsdWRlcyB2YXJpb3VzIGFuZCBzdW5kcnkgdGVzdHMg
Zm9yIGZ1bmRhbWVudGFsCisgICAgICogZGF0YXR5cGVzLiAgaXQncyBhIGdyYWItYmFnIG9mIHRo
cm93YXdheSBjb2RlLCByZXRhaW5lZCBvbmx5IGluCisgICAgICogY2FzZSBvZiBmdXR1cmUgcHJv
YmxlbXMKKyAgICAgKi8KKworICAgIGludCBpLCBqOworICAgIHYxMjhfdCB4OworICAgIGNoYXIg
KnIgPSAiVGhlIE1vdmluZyBGaW5nZXIgd3JpdGVzOyBhbmQsIGhhdmluZyB3cml0LFxuIgorICAg
ICAgICAgICAgICAiTW92ZXMgb246IG5vciBhbGwgdGh5IFBpZXR5IG5vciBXaXRcbiIKKyAgICAg
ICAgICAgICAgIlNoYWxsIGx1cmUgaXQgYmFjayB0byBjYW5jZWwgaGFsZiBhIExpbmUsXG4iCisg
ICAgICAgICAgICAgICJOb3IgYWxsIHRoeSBUZWFycyB3YXNoIG91dCBhIFdvcmQgb2YgaXQuIjsK
KyAgICBjaGFyICpzID0gImluY29tcGxldCI7CisKKyAgICBwcmludF9zdHJpbmcocik7CisgICAg
cHJpbnRfc3RyaW5nKHMpOworCisgICAgYnl0ZV9vcmRlcigpOworICAgIHRlc3RfaGV4X3N0cmlu
Z19mdW5jcygpOworCisgICAgZm9yIChqID0gMDsgaiA8IDEyODsgaisrKSB7CisgICAgICAgIHYx
Mjhfc2V0X3RvX3plcm8oJngpOworICAgICAgICAvKiAgICAgIHgudjMyWzBdID0gKDEgPDwgaik7
ICovCisgICAgICAgIHYxMjhfc2V0X2JpdCgmeCwgaik7CisgICAgICAgIHByaW50ZigiJXNcbiIs
IHYxMjhfYml0X3N0cmluZygmeCkpOworICAgICAgICB2MTI4X2NsZWFyX2JpdCgmeCwgaik7Cisg
ICAgICAgIHByaW50ZigiJXNcbiIsIHYxMjhfYml0X3N0cmluZygmeCkpOworICAgIH0KKworICAg
IHByaW50ZigiLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxu
Iik7CisgICAgdjEyOF9zZXRfdG9femVybygmeCk7CisgICAgZm9yIChpID0gMDsgaSA8IDEyODsg
aSsrKSB7CisgICAgICAgIHYxMjhfc2V0X2JpdCgmeCwgaSk7CisgICAgfQorICAgIHByaW50Zigi
JXNcbiIsIHYxMjhfYml0X3N0cmluZygmeCkpOworCisgICAgcHJpbnRmKCItLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4iKTsKICAgICB2MTI4X3NldF90b196
ZXJvKCZ4KTsKLSAgICAvKiAgICAgIHgudjMyWzBdID0gKDEgPDwgaik7ICovCi0gICAgdjEyOF9z
ZXRfYml0KCZ4LCBqKTsKLSAgICBwcmludGYoIiVzXG4iLCB2MTI4X2JpdF9zdHJpbmcoJngpKTsg
Ci0gICAgdjEyOF9jbGVhcl9iaXQoJngsIGopOwotICAgIHByaW50ZigiJXNcbiIsIHYxMjhfYml0
X3N0cmluZygmeCkpOyAKLSAgICAKLSAgfQotCi0gIHByaW50ZigiLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIik7Ci0gIHYxMjhfc2V0X3RvX3plcm8oJngp
OwotICBmb3IgKGk9MDsgaSA8IDEyODsgaSsrKSB7Ci0gICAgdjEyOF9zZXRfYml0KCZ4LCBpKTsK
LSAgfQotICBwcmludGYoIiVzXG4iLCB2MTI4X2JpdF9zdHJpbmcoJngpKTsgCi0KLSAgcHJpbnRm
KCItLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4iKTsKLSAg
djEyOF9zZXRfdG9femVybygmeCk7Ci0gIHYxMjhfc2V0X2JpdCgmeCwgMCk7Ci0gIGZvciAoaT0w
OyBpIDwgMTI4OyBpKyspIHsKLSAgICAgIHByaW50ZigiJXNcbiIsIHYxMjhfYml0X3N0cmluZygm
eCkpOyAKLSAgICB2MTI4X3JpZ2h0X3NoaWZ0KCZ4LCAxKTsKLSAgfQotICBwcmludGYoIi0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiIpOwotICB2MTI4X3Nl
dF90b196ZXJvKCZ4KTsKLSAgdjEyOF9zZXRfYml0KCZ4LCAxMjcpOwotICBmb3IgKGk9MDsgaSA8
IDEyODsgaSsrKSB7Ci0gICAgICBwcmludGYoIiVzXG4iLCB2MTI4X2JpdF9zdHJpbmcoJngpKTsg
Ci0gICAgdjEyOF9sZWZ0X3NoaWZ0KCZ4LCAxKTsKLSAgfQotICBwcmludGYoIi0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiIpOwotICBmb3IgKGk9MDsgaSA8
IDEyODsgaSsrKSB7CisgICAgdjEyOF9zZXRfYml0KCZ4LCAwKTsKKyAgICBmb3IgKGkgPSAwOyBp
IDwgMTI4OyBpKyspIHsKKyAgICAgICAgcHJpbnRmKCIlc1xuIiwgdjEyOF9iaXRfc3RyaW5nKCZ4
KSk7CisgICAgICAgIHYxMjhfcmlnaHRfc2hpZnQoJngsIDEpOworICAgIH0KKyAgICBwcmludGYo
Ii0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiIpOwogICAg
IHYxMjhfc2V0X3RvX3plcm8oJngpOwogICAgIHYxMjhfc2V0X2JpdCgmeCwgMTI3KTsKLSAgICB2
MTI4X2xlZnRfc2hpZnQoJngsIGkpOwotICAgICAgcHJpbnRmKCIlc1xuIiwgdjEyOF9iaXRfc3Ry
aW5nKCZ4KSk7IAotICB9Ci0gIHByaW50ZigiLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLVxuIik7Ci0gIHYxMjhfc2V0X3RvX3plcm8oJngpOwotICBmb3IgKGk9
MDsgaSA8IDEyODsgaSs9MikgewotICAgIHYxMjhfc2V0X2JpdCgmeCwgaSk7Ci0gIH0KLSAgcHJp
bnRmKCJiaXRfc3RyaW5nOiB7ICVzIH1cbiIsIHYxMjhfYml0X3N0cmluZygmeCkpOyAKLSAgcHJp
bnRmKCJnZXRfYml0OiAgICB7ICIpOyAgIAotICBmb3IgKGk9MDsgaSA8IDEyODsgaSsrKSB7Ci0g
ICAgaWYgKHYxMjhfZ2V0X2JpdCgmeCwgaSkgPT0gMSkKLSAgICAgIHByaW50ZigiMSIpOwotICAg
IGVsc2UKLSAgICAgIHByaW50ZigiMCIpOwotICB9Ci0gIHByaW50ZigiIH0gXG4iKTsKLQotICB0
ZXN0X2Jzd2FwKCk7Ci0KLSAgcmV0dXJuIDA7CisgICAgZm9yIChpID0gMDsgaSA8IDEyODsgaSsr
KSB7CisgICAgICAgIHByaW50ZigiJXNcbiIsIHYxMjhfYml0X3N0cmluZygmeCkpOworICAgICAg
ICB2MTI4X2xlZnRfc2hpZnQoJngsIDEpOworICAgIH0KKyAgICBwcmludGYoIi0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiIpOworICAgIGZvciAoaSA9IDA7
IGkgPCAxMjg7IGkrKykgeworICAgICAgICB2MTI4X3NldF90b196ZXJvKCZ4KTsKKyAgICAgICAg
djEyOF9zZXRfYml0KCZ4LCAxMjcpOworICAgICAgICB2MTI4X2xlZnRfc2hpZnQoJngsIGkpOwor
ICAgICAgICBwcmludGYoIiVzXG4iLCB2MTI4X2JpdF9zdHJpbmcoJngpKTsKKyAgICB9CisgICAg
cHJpbnRmKCItLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4i
KTsKKyAgICB2MTI4X3NldF90b196ZXJvKCZ4KTsKKyAgICBmb3IgKGkgPSAwOyBpIDwgMTI4OyBp
ICs9IDIpIHsKKyAgICAgICAgdjEyOF9zZXRfYml0KCZ4LCBpKTsKKyAgICB9CisgICAgcHJpbnRm
KCJiaXRfc3RyaW5nOiB7ICVzIH1cbiIsIHYxMjhfYml0X3N0cmluZygmeCkpOworICAgIHByaW50
ZigiZ2V0X2JpdDogICAgeyAiKTsKKyAgICBmb3IgKGkgPSAwOyBpIDwgMTI4OyBpKyspIHsKKyAg
ICAgICAgaWYgKHYxMjhfZ2V0X2JpdCgmeCwgaSkgPT0gMSkKKyAgICAgICAgICAgIHByaW50Zigi
MSIpOworICAgICAgICBlbHNlCisgICAgICAgICAgICBwcmludGYoIjAiKTsKKyAgICB9CisgICAg
cHJpbnRmKCIgfSBcbiIpOworCisgICAgdGVzdF9ic3dhcCgpOworCisgICAgcmV0dXJuIDA7CiB9
CiAKLQogLyogYnl0ZV9vcmRlcigpIHByaW50cyBvdXQgYnl0ZSBvcmRlcmluZyBvZiBkYXRhdHlw
ZXMgKi8KIAotdm9pZAotYnl0ZV9vcmRlcih2b2lkKSB7Ci0gIGludCBpOwotICB2MTI4X3QgZTsK
K3ZvaWQgYnl0ZV9vcmRlcih2b2lkKQoreworICAgIGludCBpOworICAgIHYxMjhfdCBlOwogI2lm
IDAKICAgdjE2X3QgYjsKICAgdjMyX3QgYzsKQEAgLTE4MCw2MyArMTcxLDYwIEBAIGJ5dGVfb3Jk
ZXIodm9pZCkgewogCiAgIGMudmFsdWUgPSAweDAwMDEwMDAyOwogICBwcmludGYoInYzMl90Olx0
JXgleFxuIiwgYy52MTZbMF0sIGMudjE2WzFdKTsKLSNlbmRpZiAKKyNlbmRpZgogCi0gIHByaW50
ZigiYnl0ZSBvcmRlcmluZyBvZiBjcnlwdG8vbWF0aCBkYXRhdHlwZXM6XG4iKTsKLSAgZm9yIChp
PTA7IGkgPCBzaXplb2YoZSk7IGkrKykKLSAgICBlLnY4W2ldID0gaTsKLSAgcHJpbnRmKCJ2MTI4
X3Q6ICVzXG4iLCB2MTI4X2hleF9zdHJpbmcoJmUpKTsKLSAgCisgICAgcHJpbnRmKCJieXRlIG9y
ZGVyaW5nIG9mIGNyeXB0by9tYXRoIGRhdGF0eXBlczpcbiIpOworICAgIGZvciAoaSA9IDA7IGkg
PCBzaXplb2YoZSk7IGkrKykKKyAgICAgICAgZS52OFtpXSA9IGk7CisgICAgcHJpbnRmKCJ2MTI4
X3Q6ICVzXG4iLCB2MTI4X2hleF9zdHJpbmcoJmUpKTsKIH0KIAotdm9pZAotdGVzdF9oZXhfc3Ry
aW5nX2Z1bmNzKHZvaWQpIHsKLSAgY2hhciBoZXgxW10gPSAiYWJhZGNhZmUiOwotICBjaGFyIGhl
eDJbXSA9ICIwMTIzNDU2Nzg5YWJjZGVmcXFxcXEiOwotICBjaGFyIHJhd1sxMF07Ci0gIGludCBs
ZW47Ci0KLSAgbGVuID0gaGV4X3N0cmluZ190b19vY3RldF9zdHJpbmcocmF3LCBoZXgxLCBzdHJs
ZW4oaGV4MSkpOwotICBwcmludGYoImNvbXB1dGVkIGxlbmd0aDogJWRcdHN0cmluZzogJXNcbiIs
IGxlbiwKLQkgb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcocmF3LCBsZW4vMikpOwotICBwcmludGYo
ImV4cGVjdGVkIGxlbmd0aDogJXVcdHN0cmluZzogJXNcbiIsICh1bnNpZ25lZClzdHJsZW4oaGV4
MSksIGhleDEpOwotCi0gIGxlbiA9IGhleF9zdHJpbmdfdG9fb2N0ZXRfc3RyaW5nKHJhdywgaGV4
Miwgc3RybGVuKGhleDIpKTsKLSAgcHJpbnRmKCJjb21wdXRlZCBsZW5ndGg6ICVkXHRzdHJpbmc6
ICVzXG4iLCBsZW4sCi0JIG9jdGV0X3N0cmluZ19oZXhfc3RyaW5nKHJhdywgbGVuLzIpKTsKLSAg
cHJpbnRmKCJleHBlY3RlZCBsZW5ndGg6ICVkXHRzdHJpbmc6ICVzXG4iLCAxNiwgIjAxMjM0NTY3
ODlhYmNkZWYiKTsKLQordm9pZCB0ZXN0X2hleF9zdHJpbmdfZnVuY3Modm9pZCkKK3sKKyAgICBj
aGFyIGhleDFbXSA9ICJhYmFkY2FmZSI7CisgICAgY2hhciBoZXgyW10gPSAiMDEyMzQ1Njc4OWFi
Y2RlZnFxcXFxIjsKKyAgICBjaGFyIHJhd1sxMF07CisgICAgaW50IGxlbjsKKworICAgIGxlbiA9
IGhleF9zdHJpbmdfdG9fb2N0ZXRfc3RyaW5nKHJhdywgaGV4MSwgc3RybGVuKGhleDEpKTsKKyAg
ICBwcmludGYoImNvbXB1dGVkIGxlbmd0aDogJWRcdHN0cmluZzogJXNcbiIsIGxlbiwKKyAgICAg
ICAgICAgb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcocmF3LCBsZW4gLyAyKSk7CisgICAgcHJpbnRm
KCJleHBlY3RlZCBsZW5ndGg6ICV1XHRzdHJpbmc6ICVzXG4iLCAodW5zaWduZWQpc3RybGVuKGhl
eDEpLCBoZXgxKTsKKworICAgIGxlbiA9IGhleF9zdHJpbmdfdG9fb2N0ZXRfc3RyaW5nKHJhdywg
aGV4Miwgc3RybGVuKGhleDIpKTsKKyAgICBwcmludGYoImNvbXB1dGVkIGxlbmd0aDogJWRcdHN0
cmluZzogJXNcbiIsIGxlbiwKKyAgICAgICAgICAgb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcocmF3
LCBsZW4gLyAyKSk7CisgICAgcHJpbnRmKCJleHBlY3RlZCBsZW5ndGg6ICVkXHRzdHJpbmc6ICVz
XG4iLCAxNiwgIjAxMjM0NTY3ODlhYmNkZWYiKTsKIH0KIAotdm9pZAotcHJpbnRfc3RyaW5nKGNo
YXIgKnMpIHsKLSAgc2l6ZV90IGk7Ci0gIHByaW50ZigiJXNcbiIsIHMpOwotICBwcmludGYoInN0
cmxlbihzKSA9ICV1XG4iLCAodW5zaWduZWQpc3RybGVuKHMpKTsKLSAgcHJpbnRmKCJ7ICIpOwot
ICBmb3IgKGk9MDsgaSA8IHN0cmxlbihzKTsgaSsrKSB7Ci0gICAgcHJpbnRmKCIweCV4LCAiLCBz
W2ldKTsKLSAgICBpZiAoKChpKzEpICUgOCkgPT0gMCkKLSAgICAgIHByaW50ZigiXG4gICAiKTsK
LSAgfQotICBwcmludGYoIn1cbiIpOwordm9pZCBwcmludF9zdHJpbmcoY2hhciAqcykKK3sKKyAg
ICBzaXplX3QgaTsKKyAgICBwcmludGYoIiVzXG4iLCBzKTsKKyAgICBwcmludGYoInN0cmxlbihz
KSA9ICV1XG4iLCAodW5zaWduZWQpc3RybGVuKHMpKTsKKyAgICBwcmludGYoInsgIik7CisgICAg
Zm9yIChpID0gMDsgaSA8IHN0cmxlbihzKTsgaSsrKSB7CisgICAgICAgIHByaW50ZigiMHgleCwg
Iiwgc1tpXSk7CisgICAgICAgIGlmICgoKGkgKyAxKSAlIDgpID09IDApCisgICAgICAgICAgICBw
cmludGYoIlxuICAgIik7CisgICAgfQorICAgIHByaW50ZigifVxuIik7CiB9CiAKLXZvaWQKLXRl
c3RfYnN3YXAodm9pZCkgewotICB1aW50MzJfdCB4ID0gMHgxMTIyMzM0NDsKLSAgdWludDY0X3Qg
eSA9IDB4MTEyMjMzNDQ1NTY2Nzc4OExMOwordm9pZCB0ZXN0X2Jzd2FwKHZvaWQpCit7CisgICAg
dWludDMyX3QgeCA9IDB4MTEyMjMzNDQ7CisgICAgdWludDY0X3QgeSA9IDB4MTEyMjMzNDQ1NTY2
Nzc4OExMOwogCi0gIHByaW50ZigiYmVmb3JlOiAlMHhcbmFmdGVyOiAgJTB4XG4iLCB4LCAodW5z
aWduZWQgaW50KWJlMzJfdG9fY3B1KHgpKTsKLSAgcHJpbnRmKCJiZWZvcmU6ICUwbGx4XG5hZnRl
cjogICUwbGx4XG4iLCAodW5zaWduZWQgbG9uZyBsb25nKXksCi0JICh1bnNpZ25lZCBsb25nIGxv
bmcpYmU2NF90b19jcHUoeSkpOworICAgIHByaW50ZigiYmVmb3JlOiAlMHhcbmFmdGVyOiAgJTB4
XG4iLCB4LCAodW5zaWduZWQgaW50KWJlMzJfdG9fY3B1KHgpKTsKKyAgICBwcmludGYoImJlZm9y
ZTogJTBsbHhcbmFmdGVyOiAgJTBsbHhcbiIsICh1bnNpZ25lZCBsb25nIGxvbmcpeSwKKyAgICAg
ICAgICAgKHVuc2lnbmVkIGxvbmcgbG9uZyliZTY0X3RvX2NwdSh5KSk7CiAKLSAgeSA9IDEyMzQ7
CisgICAgeSA9IDEyMzQ7CiAKLSAgcHJpbnRmKCIxMjM0OiAlMGxseFxuIiwgKHVuc2lnbmVkIGxv
bmcgbG9uZyl5KTsKLSAgcHJpbnRmKCJhcyBvY3RldCBzdHJpbmc6ICVzXG4iLCAKLQkgb2N0ZXRf
c3RyaW5nX2hleF9zdHJpbmcoKHVpbnQ4X3QgKikgJnksIDgpKTsKLSAgeSA9IGJlNjRfdG9fY3B1
KHkpOwotICBwcmludGYoImJzd2FwcGVkIG9jdGV0IHN0cmluZzogJXNcbiIsIAotCSBvY3RldF9z
dHJpbmdfaGV4X3N0cmluZygodWludDhfdCAqKSAmeSwgOCkpOworICAgIHByaW50ZigiMTIzNDog
JTBsbHhcbiIsICh1bnNpZ25lZCBsb25nIGxvbmcpeSk7CisgICAgcHJpbnRmKCJhcyBvY3RldCBz
dHJpbmc6ICVzXG4iLCBvY3RldF9zdHJpbmdfaGV4X3N0cmluZygodWludDhfdCAqKSZ5LCA4KSk7
CisgICAgeSA9IGJlNjRfdG9fY3B1KHkpOworICAgIHByaW50ZigiYnN3YXBwZWQgb2N0ZXQgc3Ry
aW5nOiAlc1xuIiwKKyAgICAgICAgICAgb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcoKHVpbnQ4X3Qg
KikmeSwgOCkpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by90ZXN0L2tlcm5lbF9kcml2ZXIuYyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlw
dG8vdGVzdC9rZXJuZWxfZHJpdmVyLmMKaW5kZXggOTJiNzI0MDI0OThjNTE3NDAzOWRmNjMyMWUx
MTQ5YTIxMzM5NDFlZi4uZDI5NDA1YTk3MTdkYTM2MWU4NWFlNDZiOTNhNjg4Yjg3ZTBkYzkyOCAx
MDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9saWJzcnRwL2NyeXB0by90ZXN0L2tlcm5lbF9kcml2ZXIuYworKysgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL3Rlc3Qva2Vy
bmVsX2RyaXZlci5jCkBAIC03LDI2ICs3LDI2IEBACiAgKiBDaXNjbyBTeXN0ZW1zLCBJbmMuCiAg
Ki8KIC8qCi0gKgkKKyAqCiAgKiBDb3B5cmlnaHQoYykgMjAwMS0yMDE3IENpc2NvIFN5c3RlbXMs
IEluYy4KICAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKiAKKyAqCiAgKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAq
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucwogICogYXJlIG1ldDoKLSAqIAorICoKICAqICAgUmVkaXN0cmlidXRpb25zIG9m
IHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKICAqICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgot
ICogCisgKgogICogICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1
Y2UgdGhlIGFib3ZlCiAgKiAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nCiAgKiAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRp
b24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZAogICogICB3aXRoIHRoZSBkaXN0cmli
dXRpb24uCi0gKiAKKyAqCiAgKiAgIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIENpc2NvIFN5c3Rl
bXMsIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKICAqICAgY29udHJpYnV0b3JzIG1heSBiZSB1
c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkCiAgKiAgIGZyb20gdGhp
cyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLSAq
IAorICoKICAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xE
RVJTIEFORCBDT05UUklCVVRPUlMKICAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJ
RUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCiAgKiBMSU1JVEVEIFRPLCBUSEUgSU1Q
TElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUwpAQCAtNDIsNzcg
KzQyLDc2IEBACiAgKgogICovCiAKLQogI2lmZGVmIEhBVkVfQ09ORklHX0gKLSAgICAjaW5jbHVk
ZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29uZmlnLmg+CiAjZW5kaWYKIAotI2luY2x1ZGUgPHN0
ZGlvLmg+ICAgICAgICAgICAvKiBmb3IgcHJpbnRmKCkgKi8KKyNpbmNsdWRlIDxzdGRpby5oPiAv
KiBmb3IgcHJpbnRmKCkgKi8KICNpbmNsdWRlICJnZXRvcHRfcy5oIgogI2luY2x1ZGUgImNyeXB0
b19rZXJuZWwuaCIKIAotdm9pZAotdXNhZ2UoY2hhciAqcHJvZ19uYW1lKSB7Ci0gIHByaW50Zigi
dXNhZ2U6ICVzIFsgLXYgXVsgLWQgZGVidWdfbW9kdWxlIF0qXG4iLCBwcm9nX25hbWUpOwotICBl
eGl0KDI1NSk7Cit2b2lkIHVzYWdlKGNoYXIgKnByb2dfbmFtZSkKK3sKKyAgICBwcmludGYoInVz
YWdlOiAlcyBbIC12IF1bIC1kIGRlYnVnX21vZHVsZSBdKlxuIiwgcHJvZ19uYW1lKTsKKyAgICBl
eGl0KDI1NSk7CiB9CiAKLWludAotbWFpbiAoaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkgewotICBp
bnQgcTsKLSAgaW50IGRvX3ZhbGlkYXRpb24gICAgICA9IDA7Ci0gIHNydHBfZXJyX3N0YXR1c190
IHN0YXR1czsKK2ludCBtYWluKGludCBhcmdjLCBjaGFyICphcmd2W10pCit7CisgICAgaW50IHE7
CisgICAgaW50IGRvX3ZhbGlkYXRpb24gPSAwOworICAgIHNydHBfZXJyX3N0YXR1c190IHN0YXR1
czsKIAotICBpZiAoYXJnYyA9PSAxKQotICAgIHVzYWdlKGFyZ3ZbMF0pOworICAgIGlmIChhcmdj
ID09IDEpCisgICAgICAgIHVzYWdlKGFyZ3ZbMF0pOwogCi0gIC8qIGluaXRpYWxpemUga2VybmVs
IC0gd2UgbmVlZCB0byBkbyB0aGlzIGJlZm9yZSBhbnl0aGluZyBlbHNlICovIAotICBzdGF0dXMg
PSBzcnRwX2NyeXB0b19rZXJuZWxfaW5pdCgpOwotICBpZiAoc3RhdHVzKSB7Ci0gICAgcHJpbnRm
KCJlcnJvcjogc3J0cF9jcnlwdG9fa2VybmVsIGluaXQgZmFpbGVkXG4iKTsKLSAgICBleGl0KDEp
OwotICB9Ci0gIHByaW50Zigic3J0cF9jcnlwdG9fa2VybmVsIHN1Y2Nlc3NmdWxseSBpbml0YWxp
emVkXG4iKTsKKyAgICAvKiBpbml0aWFsaXplIGtlcm5lbCAtIHdlIG5lZWQgdG8gZG8gdGhpcyBi
ZWZvcmUgYW55dGhpbmcgZWxzZSAqLworICAgIHN0YXR1cyA9IHNydHBfY3J5cHRvX2tlcm5lbF9p
bml0KCk7CisgICAgaWYgKHN0YXR1cykgeworICAgICAgICBwcmludGYoImVycm9yOiBzcnRwX2Ny
eXB0b19rZXJuZWwgaW5pdCBmYWlsZWRcbiIpOworICAgICAgICBleGl0KDEpOworICAgIH0KKyAg
ICBwcmludGYoInNydHBfY3J5cHRvX2tlcm5lbCBzdWNjZXNzZnVsbHkgaW5pdGFsaXplZFxuIik7
CisKKyAgICAvKiBwcm9jZXNzIGlucHV0IGFyZ3VtZW50cyAqLworICAgIHdoaWxlICgxKSB7Cisg
ICAgICAgIHEgPSBnZXRvcHRfcyhhcmdjLCBhcmd2LCAidmQ6Iik7CisgICAgICAgIGlmIChxID09
IC0xKQorICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIHN3aXRjaCAocSkgeworICAgICAgICBj
YXNlICd2JzoKKyAgICAgICAgICAgIGRvX3ZhbGlkYXRpb24gPSAxOworICAgICAgICAgICAgYnJl
YWs7CisgICAgICAgIGNhc2UgJ2QnOgorICAgICAgICAgICAgc3RhdHVzID0gc3J0cF9jcnlwdG9f
a2VybmVsX3NldF9kZWJ1Z19tb2R1bGUob3B0YXJnX3MsIDEpOworICAgICAgICAgICAgaWYgKHN0
YXR1cykgeworICAgICAgICAgICAgICAgIHByaW50ZigiZXJyb3I6IHNldCBkZWJ1ZyBtb2R1bGUg
KCVzKSBmYWlsZWRcbiIsIG9wdGFyZ19zKTsKKyAgICAgICAgICAgICAgICBleGl0KDEpOworICAg
ICAgICAgICAgfQorICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAg
ICAgICB1c2FnZShhcmd2WzBdKTsKKyAgICAgICAgfQorICAgIH0KIAotICAvKiBwcm9jZXNzIGlu
cHV0IGFyZ3VtZW50cyAqLwotICB3aGlsZSAoMSkgewotICAgIHEgPSBnZXRvcHRfcyhhcmdjLCBh
cmd2LCAidmQ6Iik7Ci0gICAgaWYgKHEgPT0gLTEpIAotICAgICAgYnJlYWs7Ci0gICAgc3dpdGNo
IChxKSB7Ci0gICAgY2FzZSAndic6Ci0gICAgICBkb192YWxpZGF0aW9uID0gMTsKLSAgICAgIGJy
ZWFrOwotICAgIGNhc2UgJ2QnOgotICAgICAgc3RhdHVzID0gc3J0cF9jcnlwdG9fa2VybmVsX3Nl
dF9kZWJ1Z19tb2R1bGUob3B0YXJnX3MsIDEpOwotICAgICAgaWYgKHN0YXR1cykgewotCXByaW50
ZigiZXJyb3I6IHNldCBkZWJ1ZyBtb2R1bGUgKCVzKSBmYWlsZWRcbiIsIG9wdGFyZ19zKTsKLQll
eGl0KDEpOwotICAgICAgfQotICAgICAgYnJlYWs7Ci0gICAgZGVmYXVsdDoKLSAgICAgIHVzYWdl
KGFyZ3ZbMF0pOwotICAgIH0gICAgCi0gIH0KKyAgICBpZiAoZG9fdmFsaWRhdGlvbikgeworICAg
ICAgICBwcmludGYoImNoZWNraW5nIHNydHBfY3J5cHRvX2tlcm5lbCBzdGF0dXMuLi5cbiIpOwor
ICAgICAgICBzdGF0dXMgPSBzcnRwX2NyeXB0b19rZXJuZWxfc3RhdHVzKCk7CisgICAgICAgIGlm
IChzdGF0dXMpIHsKKyAgICAgICAgICAgIHByaW50ZigiZmFpbGVkXG4iKTsKKyAgICAgICAgICAg
IGV4aXQoMSk7CisgICAgICAgIH0KKyAgICAgICAgcHJpbnRmKCJzcnRwX2NyeXB0b19rZXJuZWwg
cGFzc2VkIHNlbGYtdGVzdHNcbiIpOworICAgIH0KIAotICBpZiAoZG9fdmFsaWRhdGlvbikgewot
ICAgIHByaW50ZigiY2hlY2tpbmcgc3J0cF9jcnlwdG9fa2VybmVsIHN0YXR1cy4uLlxuIik7Ci0g
ICAgc3RhdHVzID0gc3J0cF9jcnlwdG9fa2VybmVsX3N0YXR1cygpOworICAgIHN0YXR1cyA9IHNy
dHBfY3J5cHRvX2tlcm5lbF9zaHV0ZG93bigpOwogICAgIGlmIChzdGF0dXMpIHsKLSAgICAgIHBy
aW50ZigiZmFpbGVkXG4iKTsKLSAgICAgIGV4aXQoMSk7CisgICAgICAgIHByaW50ZigiZXJyb3I6
IHNydHBfY3J5cHRvX2tlcm5lbCBzaHV0ZG93biBmYWlsZWRcbiIpOworICAgICAgICBleGl0KDEp
OwogICAgIH0KLSAgICBwcmludGYoInNydHBfY3J5cHRvX2tlcm5lbCBwYXNzZWQgc2VsZi10ZXN0
c1xuIik7Ci0gIH0KKyAgICBwcmludGYoInNydHBfY3J5cHRvX2tlcm5lbCBzdWNjZXNzZnVsbHkg
c2h1dCBkb3duXG4iKTsKIAotICBzdGF0dXMgPSBzcnRwX2NyeXB0b19rZXJuZWxfc2h1dGRvd24o
KTsKLSAgaWYgKHN0YXR1cykgewotICAgIHByaW50ZigiZXJyb3I6IHNydHBfY3J5cHRvX2tlcm5l
bCBzaHV0ZG93biBmYWlsZWRcbiIpOwotICAgIGV4aXQoMSk7Ci0gIH0KLSAgcHJpbnRmKCJzcnRw
X2NyeXB0b19rZXJuZWwgc3VjY2Vzc2Z1bGx5IHNodXQgZG93blxuIik7Ci0gIAotICByZXR1cm4g
MDsKKyAgICByZXR1cm4gMDsKIH0KIAogLyoKQEAgLTEyMCwxMCArMTE5LDkgQEAgbWFpbiAoaW50
IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkgewogICogb2YgdGhlIGNyeXB0b19rZXJuZWwKICAqLwogCi1z
cnRwX2Vycl9zdGF0dXNfdAotY3J5cHRvX2tlcm5lbF9jaXBoZXJfdGVzdCh2b2lkKSB7Ci0KLSAg
Lyogbm90IGltcGxlbWVudGVkIHlldCEgKi8KK3NydHBfZXJyX3N0YXR1c190IGNyeXB0b19rZXJu
ZWxfY2lwaGVyX3Rlc3Qodm9pZCkKK3sKKyAgICAvKiBub3QgaW1wbGVtZW50ZWQgeWV0ISAqLwog
Ci0gIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CisgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1
c19vazsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlic3J0cC9pbmNsdWRlL2VrdC5oIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2luY2x1ZGUvZWt0LmgKaW5kZXggODZi
ZmExN2FkZjY5ZWI0Mzk2M2IxMWViOTNkNzRhN2YzOTc0OWY0ZS4uYTI4OWE1M2RhYmU1MWVjYzEx
YzczZjhkYTY2ZGJjNjg2MmNhNzI3ZCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2luY2x1ZGUvZWt0LmgKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2luY2x1
ZGUvZWt0LmgKQEAgLTcsMjYgKzcsMjYgQEAKICAqIENpc2NvIFN5c3RlbXMsIEluYy4KICAqLwog
LyoKLSAqCQorICoKICAqIENvcHlyaWdodCAoYykgMjAwMS0yMDE3IENpc2NvIFN5c3RlbXMsIElu
Yy4KICAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKiAKKyAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBh
bmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1v
ZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29u
ZGl0aW9ucwogICogYXJlIG1ldDoKLSAqIAorICoKICAqICAgUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKICAqICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICog
CisgKgogICogICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2Ug
dGhlIGFib3ZlCiAgKiAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nCiAgKiAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZAogICogICB3aXRoIHRoZSBkaXN0cmlidXRp
b24uCi0gKiAKKyAqCiAgKiAgIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIENpc2NvIFN5c3RlbXMs
IEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKICAqICAgY29udHJpYnV0b3JzIG1heSBiZSB1c2Vk
IHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkCiAgKiAgIGZyb20gdGhpcyBz
b2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLSAqIAor
ICoKICAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJT
IEFORCBDT05UUklCVVRPUlMKICAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCiAgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUwpAQCAtNDIsMTUgKzQy
LDEzIEBACiAgKgogICovCiAKLQotCiAvKgotICogRUtUIGltcGxlbWVudGF0aW9uIHN0cmF0ZWd5
IAotICogCisgKiBFS1QgaW1wbGVtZW50YXRpb24gc3RyYXRlZ3kKKyAqCiAgKiB1c2Ugc3RyZWFt
X3RlbXBsYXRlIGFwcHJvYWNoCiAgKgogICogaW4gc3J0cF91bnByb3RlY3QsIHdoZW4gYSBuZXcg
c3RyZWFtIGFwcGVhcnMsIGNoZWNrIGlmIHRlbXBsYXRlIGhhcwotICogRUtUIGRlZmluZWQsIGFu
ZCBpZiBpdCBkb2VzLCB0aGVuIGFwcGx5IEVLVCBwcm9jZXNzaW5nIAorICogRUtUIGRlZmluZWQs
IGFuZCBpZiBpdCBkb2VzLCB0aGVuIGFwcGx5IEVLVCBwcm9jZXNzaW5nCiAgKgogICogcXVlc3Rp
b246IHdpbGwgd2Ugd2FudCB0byBhbGxvdyBrZXktc2hhcmluZyB0ZW1wbGF0ZXMgaW4gYWRkaXRp
b24KICAqIHRvIEVLVCB0ZW1wbGF0ZXM/ICBjb3VsZCBkZWZpbmUgYSBuZXcgc3NyY190eXBlX3Qg
dGhhdCdzIGFzc29jaWF0ZWQKQEAgLTY5LDE0ICs2NywxMyBAQAogZXh0ZXJuICJDIiB7CiAjZW5k
aWYKIAotI2RlZmluZSBTUlRQX0VLVF9DSVBIRVJfREVGQVVMVCAgICAgICAgICAgMQotI2RlZmlu
ZSBTUlRQX0VLVF9DSVBIRVJfQUVTXzEyOF9FQ0IgICAgICAgMQotI2RlZmluZSBTUlRQX0VLVF9D
SVBIRVJfQUVTXzE5Ml9LRVlfV1JBUCAgMgotI2RlZmluZSBTUlRQX0VLVF9DSVBIRVJfQUVTXzI1
Nl9LRVlfV1JBUCAgMworI2RlZmluZSBTUlRQX0VLVF9DSVBIRVJfREVGQVVMVCAxCisjZGVmaW5l
IFNSVFBfRUtUX0NJUEhFUl9BRVNfMTI4X0VDQiAxCisjZGVmaW5lIFNSVFBfRUtUX0NJUEhFUl9B
RVNfMTkyX0tFWV9XUkFQIDIKKyNkZWZpbmUgU1JUUF9FS1RfQ0lQSEVSX0FFU18yNTZfS0VZX1dS
QVAgMwogCiB0eXBlZGVmIHVpbnQxNl90IHNydHBfZWt0X3NwaV90OwogCi0KIHVuc2lnbmVkIHNy
dHBfZWt0X29jdGV0c19hZnRlcl9iYXNlX3RhZyhzcnRwX2VrdF9zdHJlYW1fdCBla3QpOwogCiAv
KgpAQCAtODgsMjQgKzg1LDIzIEBAIHVuc2lnbmVkIHNydHBfZWt0X29jdGV0c19hZnRlcl9iYXNl
X3RhZyhzcnRwX2VrdF9zdHJlYW1fdCBla3QpOwogICovCiAKIHR5cGVkZWYgc3RydWN0IHNydHBf
ZWt0X3BvbGljeV9jdHhfdCB7Ci0gIHNydHBfZWt0X3NwaV90ICBzcGk7ICAgICAvKiBzZWN1cml0
eSBwYXJhbWV0ZXIgaW5kZXggKi8KLSAgdWludDhfdCAgICBla3RfY2lwaGVyX3R5cGU7Ci0gIHVp
bnQ4X3QgICAqZWt0X2tleTsKLSAgc3RydWN0IHNydHBfZWt0X3BvbGljeV9jdHhfdCAqbmV4dF9l
a3RfcG9saWN5OworICAgIHNydHBfZWt0X3NwaV90IHNwaTsgLyogc2VjdXJpdHkgcGFyYW1ldGVy
IGluZGV4ICovCisgICAgdWludDhfdCBla3RfY2lwaGVyX3R5cGU7CisgICAgdWludDhfdCAqZWt0
X2tleTsKKyAgICBzdHJ1Y3Qgc3J0cF9la3RfcG9saWN5X2N0eF90ICpuZXh0X2VrdF9wb2xpY3k7
CiB9IHNydHBfZWt0X3BvbGljeV9jdHhfdDsKIAotCiAvKgogICogYW4gc3J0cF9la3RfZGF0YV90
IHN0cnVjdHVyZSBob2xkcyB0aGUgZGF0YSBjb3JyZXNwb25kaW5nIHRvIGFuIGVrdCBrZXksCiAg
KiBzcGksIGFuZCBzbyBvbgogICovCiAKIHR5cGVkZWYgc3RydWN0IHNydHBfZWt0X2RhdGFfdCB7
Ci0gIHNydHBfZWt0X3NwaV90IHNwaTsKLSAgdWludDhfdCBla3RfY2lwaGVyX3R5cGU7Ci0gIHNy
dHBfYWVzX2V4cGFuZGVkX2tleV90IGVrdF9lbmNfa2V5OwotICBzcnRwX2Flc19leHBhbmRlZF9r
ZXlfdCBla3RfZGVjX2tleTsKLSAgc3RydWN0IGVrdF9kYXRhX3QgKm5leHRfZWt0X2RhdGE7Cisg
ICAgc3J0cF9la3Rfc3BpX3Qgc3BpOworICAgIHVpbnQ4X3QgZWt0X2NpcGhlcl90eXBlOworICAg
IHNydHBfYWVzX2V4cGFuZGVkX2tleV90IGVrdF9lbmNfa2V5OworICAgIHNydHBfYWVzX2V4cGFu
ZGVkX2tleV90IGVrdF9kZWNfa2V5OworICAgIHN0cnVjdCBla3RfZGF0YV90ICpuZXh0X2VrdF9k
YXRhOwogfSBzcnRwX2VrdF9kYXRhX3Q7CiAKIC8qCkBAIC0xMTYsMjUgKzExMiwzMSBAQCB0eXBl
ZGVmIHN0cnVjdCBzcnRwX2VrdF9kYXRhX3QgewogICovCiAKIHR5cGVkZWYgc3RydWN0IHNydHBf
ZWt0X3N0cmVhbV9jdHhfdCB7Ci0gIHNydHBfZWt0X2RhdGFfdCAgICpkYXRhOyAgICAKLSAgdWlu
dDE2X3QJICAgIGlzbjsgICAgIC8qIGluaXRpYWwgc2VxdWVuY2UgbnVtYmVyICAqLwotICB1aW50
OF90CSAgICBlbmNyeXB0ZWRfbWFzdGVyX2tleVtTUlRQX01BWF9LRVlfTEVOXTsKKyAgICBzcnRw
X2VrdF9kYXRhX3QgKmRhdGE7CisgICAgdWludDE2X3QgaXNuOyAvKiBpbml0aWFsIHNlcXVlbmNl
IG51bWJlciAgKi8KKyAgICB1aW50OF90IGVuY3J5cHRlZF9tYXN0ZXJfa2V5W1NSVFBfTUFYX0tF
WV9MRU5dOwogfSBzcnRwX2VrdF9zdHJlYW1fY3R4X3Q7CiAKK3NydHBfZXJyX3N0YXR1c190IHNy
dHBfZWt0X2FsbG9jKHNydHBfZWt0X3N0cmVhbV90ICpzdHJlYW1fZGF0YSwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHNydHBfZWt0X3BvbGljeV90IHBvbGljeSk7CiAKK3NydHBf
ZXJyX3N0YXR1c190IHNydHBfZWt0X3N0cmVhbV9pbml0KHNydHBfZWt0X3N0cmVhbV90IGUsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcnRwX2VrdF9zcGlfdCBzcGks
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2b2lkICpla3Rfa2V5LAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgZWt0X2NpcGhl
cl90eXBlKTsKIAotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9la3RfYWxsb2Moc3J0cF9la3Rfc3Ry
ZWFtX3QgKnN0cmVhbV9kYXRhLCBzcnRwX2VrdF9wb2xpY3lfdCBwb2xpY3kpOwotCi1zcnRwX2Vy
cl9zdGF0dXNfdCBzcnRwX2VrdF9zdHJlYW1faW5pdChzcnRwX2VrdF9zdHJlYW1fdCBlLCBzcnRw
X2VrdF9zcGlfdCBzcGksIHZvaWQgKmVrdF9rZXksIHVuc2lnbmVkIGVrdF9jaXBoZXJfdHlwZSk7
Ci0KLXNydHBfZXJyX3N0YXR1c190IHNydHBfZWt0X3N0cmVhbV9pbml0X2Zyb21fcG9saWN5KHNy
dHBfZWt0X3N0cmVhbV90IGUsIHNydHBfZWt0X3BvbGljeV90IHApOwotICAKLQorc3J0cF9lcnJf
c3RhdHVzX3Qgc3J0cF9la3Rfc3RyZWFtX2luaXRfZnJvbV9wb2xpY3koc3J0cF9la3Rfc3RyZWFt
X3QgZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHNydHBfZWt0X3BvbGljeV90IHApOwogCi1zcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3N0cmVhbV9p
bml0X2Zyb21fZWt0KHNydHBfc3RyZWFtX3Qgc3RyZWFtLCBjb25zdCB2b2lkICpzcnRjcF9oZHIs
IHVuc2lnbmVkIHBrdF9vY3RldF9sZW4pOwotCQkKK3NydHBfZXJyX3N0YXR1c190IHNydHBfc3Ry
ZWFtX2luaXRfZnJvbV9la3Qoc3J0cF9zdHJlYW1fdCBzdHJlYW0sCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHZvaWQgKnNydGNwX2hkciwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgcGt0X29jdGV0
X2xlbik7CiAKLXZvaWQgc3J0cF9la3Rfd3JpdGVfZGF0YShzcnRwX2VrdF9zdHJlYW1fdCBla3Qs
IHVpbnQ4X3QgKmJhc2VfdGFnLCB1bnNpZ25lZCBiYXNlX3RhZ19sZW4sIGludCAqcGFja2V0X2xl
biwgc3J0cF94dGRfc2VxX251bV90IHBrdF9pbmRleCk7CQkKK3ZvaWQgc3J0cF9la3Rfd3JpdGVf
ZGF0YShzcnRwX2VrdF9zdHJlYW1fdCBla3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgdWlu
dDhfdCAqYmFzZV90YWcsCisgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgYmFzZV90
YWdfbGVuLAorICAgICAgICAgICAgICAgICAgICAgICAgIGludCAqcGFja2V0X2xlbiwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICBzcnRwX3h0ZF9zZXFfbnVtX3QgcGt0X2luZGV4KTsKIAogLyoK
ICAqIFdlIGhhbmRsZSBFS1QgYnkgcGVyZm9ybWluZyBzb21lIGFkZGl0aW9uYWwgc3RlcHMgYmVm
b3JlCkBAIC0xNDQsMTAgKzE0NiwxMyBAQCB2b2lkIHNydHBfZWt0X3dyaXRlX2RhdGEoc3J0cF9l
a3Rfc3RyZWFtX3QgZWt0LCB1aW50OF90ICpiYXNlX3RhZywgdW5zaWduZWQgYmFzZQogICogV2l0
aCBFS1QsIHRoZSB0YWdfbGVuIHBhcmFtZXRlciBpcyBhY3R1YWxseSB0aGUgYmFzZSB0YWcKICAq
IGxlbmd0aAogICovCi1zcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2VrdF90YWdfdmVyaWZpY2F0aW9u
X3ByZXByb2Nlcyh1aW50OF90ICpwa3RfdGFnLCB1aW50OF90ICpwa3RfdGFnX2NvcHksIHVuc2ln
bmVkIHRhZ19sZW4pOwotCi1zcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2VrdF90YWdfdmVyaWZpY2F0
aW9uX3Bvc3Rwcm9jZXModWludDhfdCAqcGt0X3RhZywgdWludDhfdCAqcGt0X3RhZ19jb3B5LCB1
bnNpZ25lZCB0YWdfbGVuKTsKK3NydHBfZXJyX3N0YXR1c190IHNydHBfZWt0X3RhZ192ZXJpZmlj
YXRpb25fcHJlcHJvY2VzKHVpbnQ4X3QgKnBrdF90YWcsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50OF90ICpwa3RfdGFnX2NvcHksCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNp
Z25lZCB0YWdfbGVuKTsKIAorc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9la3RfdGFnX3ZlcmlmaWNh
dGlvbl9wb3N0cHJvY2VzKHVpbnQ4X3QgKnBrdF90YWcsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDhfdCAqcGt0X3RhZ19jb3B5LAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVu
c2lnbmVkIHRhZ19sZW4pOwogCiAvKgogICogQGJyaWVmIEVLVCBwcmUtcHJvY2Vzc2luZyBmb3Ig
c3J0Y3AgdGFnIGdlbmVyYXRpb24KQEAgLTE1NywxNiArMTYyLDE4IEBAIHNydHBfZXJyX3N0YXR1
c190IHNydHBfZWt0X3RhZ192ZXJpZmljYXRpb25fcG9zdHByb2Nlcyh1aW50OF90ICpwa3RfdGFn
LCB1aW50OF90CiAgKiBNYXN0ZXIgS2V5LCB0aGUgU1JUUCBST0MsIHRoZSBJbml0aWFsIFNlcXVl
bmNlIE51bWJlciwgYW5kIFNQSQogICogZmllbGRzLiAgVGhlIEJhc2UgQXV0aGVudGljYXRpb24g
VGFnIGZpZWxkIGlzIHNldCB0byB0aGUgYWxsLXplcm8KICAqIHZhbHVlCi0gKiAKKyAqCiAgKiBX
aGVuIEVLVCBpcyBub3QgdXNlZCwgdGhpcyBmdW5jdGlvbiBpcyBhIG5vLW9wLgotICogCisgKgog
ICovCi1zcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3N0cmVhbV9zcnRjcF9hdXRoX3RhZ19nZW5lcmF0
aW9uX3ByZXByb2Nlc3MoY29uc3Qgc3J0cF9zdHJlYW1fdCAqcywgdWludDhfdCAqcGt0X3RhZywg
dW5zaWduZWQgcGt0X29jdGV0X2xlbik7CitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3N0cmVhbV9z
cnRjcF9hdXRoX3RhZ19nZW5lcmF0aW9uX3ByZXByb2Nlc3MoCisgICAgY29uc3Qgc3J0cF9zdHJl
YW1fdCAqcywKKyAgICB1aW50OF90ICpwa3RfdGFnLAorICAgIHVuc2lnbmVkIHBrdF9vY3RldF9s
ZW4pOwogCiAvKiBpdCdzIG5vdCBjbGVhciB0aGF0IGEgdGFnX2dlbmVyYXRpb25fcG9zdHByb2Nl
c3MgZnVuY3Rpb24gaXMgbmVlZGVkICovCiBzcnRwX2Vycl9zdGF0dXNfdCBzcnRjcF9hdXRoX3Rh
Z19nZW5lcmF0aW9uX3Bvc3Rwcm9jZXNzKHZvaWQpOwogCi0KICNpZmRlZiBfX2NwbHVzcGx1cwog
fQogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnNydHAvaW5jbHVkZS9nZXRvcHRfcy5oIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2luY2x1ZGUvZ2V0b3B0X3Mu
aAppbmRleCA2MzI3OGU5ODUwODM1YjEwMjcxM2MwYmNhNGYyY2I3NzczOWEyYzhmLi41M2ZiMjVi
YTcxMDAyMTlkMzllMjJiZWZlYjNkNTAzNDA0NjljMWQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvaW5jbHVkZS9nZXRv
cHRfcy5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvbGlic3J0cC9pbmNsdWRlL2dldG9wdF9zLmgKQEAgLTcsMjYgKzcsMjYgQEAKICAqCiAgKi8K
IC8qCi0gKgkKKyAqCiAgKiBDb3B5cmlnaHQgKGMpIDIwMDEtMjAxNyBDaXNjbyBTeXN0ZW1zLCBJ
bmMuCiAgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICogCisgKgogICogUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBt
b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMKICAqIGFyZSBtZXQ6Ci0gKiAKKyAqCiAgKiAgIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CiAgKiAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAq
IAorICoKICAqICAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNl
IHRoZSBhYm92ZQogICogICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZwogICogICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQKICAqICAgd2l0aCB0aGUgZGlzdHJpYnV0
aW9uLgotICogCisgKgogICogICBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBDaXNjbyBTeXN0ZW1z
LCBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCiAgKiAgIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNl
ZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZAogICogICBmcm9tIHRoaXMg
c29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0gKiAK
KyAqCiAgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVS
UyBBTkQgQ09OVFJJQlVUT1JTCiAgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVE
IFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAogICogTElNSVRFRCBUTywgVEhFIElNUExJ
RUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKQEAgLTQ5LDE3ICs0
OSwxNiBAQAogZXh0ZXJuICJDIiB7CiAjZW5kaWYKIAotLyogCisvKgogICogZ2V0b3B0X3MoKSwg
b3B0YXJnX3MsIGFuZCBvcHRpbmRfcyBhcmUgc21hbGwsIGxvY2FsbHkgZGVmaW5lZAogICogdmVy
c2lvbnMgb2YgdGhlIFBPU0lYIHN0YW5kYXJkIGdldG9wdCgpIGludGVyZmFjZS4KICAqLwotIAot
aW50Ci1nZXRvcHRfcyhpbnQgYXJnYywgY2hhciAqIGNvbnN0IGFyZ3ZbXSwgY29uc3QgY2hhciAq
b3B0c3RyaW5nKTsKIAotZXh0ZXJuIGNoYXIgKm9wdGFyZ19zOyAgICAvKiBkZWZpbmVkIGluIGdl
dG9wdC5jICovCitpbnQgZ2V0b3B0X3MoaW50IGFyZ2MsIGNoYXIgKmNvbnN0IGFyZ3ZbXSwgY29u
c3QgY2hhciAqb3B0c3RyaW5nKTsKKworZXh0ZXJuIGNoYXIgKm9wdGFyZ19zOyAvKiBkZWZpbmVk
IGluIGdldG9wdC5jICovCiAKLWV4dGVybiBpbnQgb3B0aW5kX3M7ICAgICAgLyogZGVmaW5lZCBp
biBnZXRvcHQuYyAqLworZXh0ZXJuIGludCBvcHRpbmRfczsgLyogZGVmaW5lZCBpbiBnZXRvcHQu
YyAqLwogCiAjaWZkZWYgX19jcGx1c3BsdXMKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9pbmNsdWRlL3J0cC5oIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2lu
Y2x1ZGUvcnRwLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGU2OWRlMjliYjJkMWQ2
NDM0YjhiMjlhZTc3NWFkOGMyZTQ4YzUzOTEuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlic3J0cC9pbmNsdWRlL3J0cF9wcml2LmggYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvaW5jbHVkZS9ydHBfcHJp
di5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlNjlkZTI5YmIyZDFkNjQzNGI4YjI5
YWU3NzVhZDhjMmU0OGM1MzkxLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L2xpYnNydHAvaW5jbHVkZS9zcnRwLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvaW5jbHVkZS9zcnRwLmgKaW5kZXggNmQ0MmY3
YjUyZjBkNmU2MDVmYWU4ZGI3MzE1NmUyNjcyMDQ5NjhiYS4uMWZkZDZjM2FmZmQ4MzVjZDQyMjNk
ZDljY2M3NzcwNDVmODhkYmQ3ZiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2luY2x1ZGUvc3J0cC5oCisrKyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9pbmNsdWRl
L3NydHAuaApAQCAtNywyNiArNywyNiBAQAogICogQ2lzY28gU3lzdGVtcywgSW5jLgogICovCiAv
KgotICoJCisgKgogICogQ29weXJpZ2h0IChjKSAyMDAxLTIwMTcsIENpc2NvIFN5c3RlbXMsIElu
Yy4KICAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKiAKKyAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBh
bmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1v
ZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29u
ZGl0aW9ucwogICogYXJlIG1ldDoKLSAqIAorICoKICAqICAgUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKICAqICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICog
CisgKgogICogICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2Ug
dGhlIGFib3ZlCiAgKiAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nCiAgKiAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZAogICogICB3aXRoIHRoZSBkaXN0cmlidXRp
b24uCi0gKiAKKyAqCiAgKiAgIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIENpc2NvIFN5c3RlbXMs
IEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKICAqICAgY29udHJpYnV0b3JzIG1heSBiZSB1c2Vk
IHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkCiAgKiAgIGZyb20gdGhpcyBz
b2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLSAqIAor
ICoKICAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJT
IEFORCBDT05UUklCVVRPUlMKICAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCiAgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUwpAQCAtNDIsNyArNDIs
NiBAQAogICoKICAqLwogCi0KICNpZm5kZWYgU1JUUF9TUlRQX0gKICNkZWZpbmUgU1JUUF9TUlRQ
X0gKIApAQCAtNzAsMTMgKzY5LDEzIEBAIGV4dGVybiAiQyIgewogLyoKICAqIFNSVFBfTUFYX0tF
WV9MRU4gaXMgdGhlIG1heGltdW0ga2V5IGxlbmd0aCBzdXBwb3J0ZWQgYnkgbGliU1JUUAogICov
Ci0jZGVmaW5lIFNSVFBfTUFYX0tFWV9MRU4gICAgICA2NAorI2RlZmluZSBTUlRQX01BWF9LRVlf
TEVOIDY0CiAKIC8qCiAgKiBTUlRQX01BWF9UQUdfTEVOIGlzIHRoZSBtYXhpbXVtIHRhZyBsZW5n
dGggc3VwcG9ydGVkIGJ5IGxpYlNSVFAKICAqLwogCi0jZGVmaW5lIFNSVFBfTUFYX1RBR19MRU4g
MTYgCisjZGVmaW5lIFNSVFBfTUFYX1RBR19MRU4gMTYKIAogLyoqCiAgKiBTUlRQX01BWF9NS0lf
TEVOIGlzIHRoZSBtYXhpbXVtIHNpemUgdGhlIE1LSSBjb3VsZCBiZSB3aGljaCBpcwpAQCAtODQs
NyArODMsNiBAQCBleHRlcm4gIkMiIHsKICAqLwogI2RlZmluZSBTUlRQX01BWF9NS0lfTEVOIDEy
OAogCi0KIC8qKgogICogU1JUUF9NQVhfVFJBSUxFUl9MRU4gaXMgdGhlIG1heGltdW0gbGVuZ3Ro
IG9mIHRoZSBTUlRQIHRyYWlsZXIKICAqIChhdXRoZW50aWNhdGlvbiB0YWcgYW5kIE1LSSkgc3Vw
cG9ydGVkIGJ5IGxpYlNSVFAuICBUaGlzIHZhbHVlIGlzCkBAIC05NywzMiArOTUsMzYgQEAgZXh0
ZXJuICJDIiB7CiAKIC8qKgogICogU1JUUF9NQVhfTlVNX01BU1RFUl9LRVlTIGlzIHRoZSBtYXhp
bXVtIG51bWJlciBvZiBNYXN0ZXIga2V5cyBmb3IKLSAqIE1LSSBzdXBwb3J0ZWQgYnkgbGliU1JU
UC4gIAotICogIAorICogTUtJIHN1cHBvcnRlZCBieSBsaWJTUlRQLgorICoKICAqLwogI2RlZmlu
ZSBTUlRQX01BWF9OVU1fTUFTVEVSX0tFWVMgMTYKIAotI2RlZmluZSBTUlRQX1NBTFRfTEVOICAg
ICAgICAgICAgICAgIDE0CisjZGVmaW5lIFNSVFBfU0FMVF9MRU4gMTQKKwogLyoKICAqIFNSVFBf
QUVBRF9TQUxUX0xFTiBpcyB0aGUgbGVuZ3RoIG9mIHRoZSBTQUxUIHZhbHVlcyB1c2VkIHdpdGgK
ICAqIEdDTSBtb2RlLiAgR0NNIG1vZGUgcmVxdWlyZXMgYW4gSVYuICBUaGUgU0FMVCB2YWx1ZSBp
cyB1c2VkCiAgKiBhcyBwYXJ0IG9mIHRoZSBJViBmb3JtYXRpb24gbG9naWMgYXBwbGllZCB0byBl
YWNoIFJUUCBwYWNrZXQuCiAgKi8KLSNkZWZpbmUgU1JUUF9BRUFEX1NBTFRfTEVOICAgICAgICAg
ICAgICAgMTIKKyNkZWZpbmUgU1JUUF9BRUFEX1NBTFRfTEVOIDEyCiAKLSNkZWZpbmUgU1JUUF9B
RVNfMTI4X0tFWV9MRU4gICAgICAgICAxNgotI2RlZmluZSBTUlRQX0FFU18xOTJfS0VZX0xFTiAg
ICAgICAgIDI0Ci0jZGVmaW5lIFNSVFBfQUVTXzI1Nl9LRVlfTEVOICAgICAgICAgMzIKKyNkZWZp
bmUgU1JUUF9BRVNfMTI4X0tFWV9MRU4gMTYKKyNkZWZpbmUgU1JUUF9BRVNfMTkyX0tFWV9MRU4g
MjQKKyNkZWZpbmUgU1JUUF9BRVNfMjU2X0tFWV9MRU4gMzIKIAotI2RlZmluZSBTUlRQX0FFU19J
Q01fMTI4X0tFWV9MRU5fV1NBTFQgICAoU1JUUF9TQUxUX0xFTiArIFNSVFBfQUVTXzEyOF9LRVlf
TEVOKQotI2RlZmluZSBTUlRQX0FFU19JQ01fMTkyX0tFWV9MRU5fV1NBTFQgICAoU1JUUF9TQUxU
X0xFTiArIFNSVFBfQUVTXzE5Ml9LRVlfTEVOKQotI2RlZmluZSBTUlRQX0FFU19JQ01fMjU2X0tF
WV9MRU5fV1NBTFQgICAoU1JUUF9TQUxUX0xFTiArIFNSVFBfQUVTXzI1Nl9LRVlfTEVOKQorI2Rl
ZmluZSBTUlRQX0FFU19JQ01fMTI4X0tFWV9MRU5fV1NBTFQgKFNSVFBfU0FMVF9MRU4gKyBTUlRQ
X0FFU18xMjhfS0VZX0xFTikKKyNkZWZpbmUgU1JUUF9BRVNfSUNNXzE5Ml9LRVlfTEVOX1dTQUxU
IChTUlRQX1NBTFRfTEVOICsgU1JUUF9BRVNfMTkyX0tFWV9MRU4pCisjZGVmaW5lIFNSVFBfQUVT
X0lDTV8yNTZfS0VZX0xFTl9XU0FMVCAoU1JUUF9TQUxUX0xFTiArIFNSVFBfQUVTXzI1Nl9LRVlf
TEVOKQogCi0jZGVmaW5lIFNSVFBfQUVTX0dDTV8xMjhfS0VZX0xFTl9XU0FMVCAgIChTUlRQX0FF
QURfU0FMVF9MRU4gKyBTUlRQX0FFU18xMjhfS0VZX0xFTikKLSNkZWZpbmUgU1JUUF9BRVNfR0NN
XzE5Ml9LRVlfTEVOX1dTQUxUICAgKFNSVFBfQUVBRF9TQUxUX0xFTiArIFNSVFBfQUVTXzE5Ml9L
RVlfTEVOKQotI2RlZmluZSBTUlRQX0FFU19HQ01fMjU2X0tFWV9MRU5fV1NBTFQgICAoU1JUUF9B
RUFEX1NBTFRfTEVOICsgU1JUUF9BRVNfMjU2X0tFWV9MRU4pCisjZGVmaW5lIFNSVFBfQUVTX0dD
TV8xMjhfS0VZX0xFTl9XU0FMVCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgXAorICAgIChTUlRQX0FFQURfU0FMVF9MRU4gKyBTUlRQX0FFU18xMjhfS0VZX0xFTikKKyNk
ZWZpbmUgU1JUUF9BRVNfR0NNXzE5Ml9LRVlfTEVOX1dTQUxUICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBcCisgICAgKFNSVFBfQUVBRF9TQUxUX0xFTiArIFNSVFBfQUVT
XzE5Ml9LRVlfTEVOKQorI2RlZmluZSBTUlRQX0FFU19HQ01fMjU2X0tFWV9MRU5fV1NBTFQgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAoU1JUUF9BRUFEX1NB
TFRfTEVOICsgU1JUUF9BRVNfMjU2X0tFWV9MRU4pCiAKLS8qKiAKKy8qKgogICogIEBicmllZiBB
IHNydHBfY2lwaGVyX3R5cGVfaWRfdCBpcyBhbiBpZGVudGlmaWVyIGZvciBhIHBhcnRpY3VsYXIg
Y2lwaGVyCiAgKiAgdHlwZS4KICAqCkBAIC0xMzEsMTMgKzEzMywxNCBAQCBleHRlcm4gIkMiIHsK
ICAqICBTUlRQX05VTExfQ0lQSEVSIGlzIGF2YWxpYWJsZTsgdGhpcyBjaXBoZXIgbGVhdmVzIHRo
ZSBkYXRhIHVuY2hhbmdlZCwKICAqICBhbmQgY2FuIGJlIHNlbGVjdGVkIHRvIGluZGljYXRlIHRo
YXQgbm8gZW5jcnlwdGlvbiBpcyB0byB0YWtlCiAgKiAgcGxhY2UuCi0gKiAKKyAqCiAgKiAgQGlu
Z3JvdXAgQ2lwaGVycwogICovCi10eXBlZGVmIHVpbnQzMl90IHNydHBfY2lwaGVyX3R5cGVfaWRf
dDsgCit0eXBlZGVmIHVpbnQzMl90IHNydHBfY2lwaGVyX3R5cGVfaWRfdDsKIAogLyoqCi0gKiAg
QGJyaWVmIEFuIHNydHBfYXV0aF90eXBlX2lkX3QgaXMgYW4gaWRlbnRpZmllciBmb3IgYSBwYXJ0
aWN1bGFyIGF1dGhlbnRpY2F0aW9uCisgKiAgQGJyaWVmIEFuIHNydHBfYXV0aF90eXBlX2lkX3Qg
aXMgYW4gaWRlbnRpZmllciBmb3IgYSBwYXJ0aWN1bGFyCisgKiBhdXRoZW50aWNhdGlvbgogICog
ICBmdW5jdGlvbi4KICAqCiAgKiAgQW4gc3J0cF9hdXRoX3R5cGVfaWRfdCBpcyBhbiBpbnRlZ2Vy
IHRoYXQgcmVwcmVzZW50cyBhIHBhcnRpY3VsYXIKQEAgLTE0NSw3ICsxNDgsNyBAQCB0eXBlZGVm
IHVpbnQzMl90IHNydHBfY2lwaGVyX3R5cGVfaWRfdDsKICAqICBhdmFsaWFibGU7IHRoaXMgYXV0
aGVudGljYXRpb24gZnVuY3Rpb24gcGVyZm9ybXMgbm8gY29tcHV0YXRpb24sCiAgKiAgYW5kIGNh
biBiZSBzZWxlY3RlZCB0byBpbmRpY2F0ZSB0aGF0IG5vIGF1dGhlbnRpY2F0aW9uIGlzIHRvIHRh
a2UKICAqICBwbGFjZS4KLSAqICAKKyAqCiAgKiAgQGluZ3JvdXAgQXV0aGVudGljYXRpb24KICAq
LwogdHlwZWRlZiB1aW50MzJfdCBzcnRwX2F1dGhfdHlwZV9pZF90OwpAQCAtMTU5LDEyMCArMTYy
LDExOSBAQCB0eXBlZGVmIHVpbnQzMl90IHNydHBfYXV0aF90eXBlX2lkX3Q7CiAgKgogICovCiB0
eXBlZGVmIGVudW0gewotICBzcnRwX2Vycl9zdGF0dXNfb2sgICAgICAgICAgID0gMCwgIC8qKjwg
bm90aGluZyB0byByZXBvcnQgICAgICAgICAgICAgICAgICAgICAgICovCi0gIHNydHBfZXJyX3N0
YXR1c19mYWlsICAgICAgICAgPSAxLCAgLyoqPCB1bnNwZWNpZmllZCBmYWlsdXJlICAgICAgICAg
ICAgICAgICAgICAgKi8KLSAgc3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJhbSAgICA9IDIsICAvKio8
IHVuc3VwcG9ydGVkIHBhcmFtZXRlciAgICAgICAgICAgICAgICAgICAqLwotICBzcnRwX2Vycl9z
dGF0dXNfYWxsb2NfZmFpbCAgID0gMywgIC8qKjwgY291bGRuJ3QgYWxsb2NhdGUgbWVtb3J5ICAg
ICAgICAgICAgICAgICovCi0gIHNydHBfZXJyX3N0YXR1c19kZWFsbG9jX2ZhaWwgPSA0LCAgLyoq
PCBjb3VsZG4ndCBkZWFsbG9jYXRlIHByb3Blcmx5ICAgICAgICAgICAgKi8KLSAgc3J0cF9lcnJf
c3RhdHVzX2luaXRfZmFpbCAgICA9IDUsICAvKio8IGNvdWxkbid0IGluaXRpYWxpemUgICAgICAg
ICAgICAgICAgICAgICAqLwotICBzcnRwX2Vycl9zdGF0dXNfdGVybWludXMgICAgID0gNiwgIC8q
KjwgY2FuJ3QgcHJvY2VzcyBhcyBtdWNoIGRhdGEgYXMgcmVxdWVzdGVkICovCi0gIHNydHBfZXJy
X3N0YXR1c19hdXRoX2ZhaWwgICAgPSA3LCAgLyoqPCBhdXRoZW50aWNhdGlvbiBmYWlsdXJlICAg
ICAgICAgICAgICAgICAgKi8KLSAgc3J0cF9lcnJfc3RhdHVzX2NpcGhlcl9mYWlsICA9IDgsICAv
Kio8IGNpcGhlciBmYWlsdXJlICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICBzcnRwX2Vy
cl9zdGF0dXNfcmVwbGF5X2ZhaWwgID0gOSwgIC8qKjwgcmVwbGF5IGNoZWNrIGZhaWxlZCAoYmFk
IGluZGV4KSAgICAgICAgICovCi0gIHNydHBfZXJyX3N0YXR1c19yZXBsYXlfb2xkICAgPSAxMCwg
LyoqPCByZXBsYXkgY2hlY2sgZmFpbGVkIChpbmRleCB0b28gb2xkKSAgICAgKi8KLSAgc3J0cF9l
cnJfc3RhdHVzX2FsZ29fZmFpbCAgICA9IDExLCAvKio8IGFsZ29yaXRobSBmYWlsZWQgdGVzdCBy
b3V0aW5lICAgICAgICAgICAqLwotICBzcnRwX2Vycl9zdGF0dXNfbm9fc3VjaF9vcCAgID0gMTIs
IC8qKjwgdW5zdXBwb3J0ZWQgb3BlcmF0aW9uICAgICAgICAgICAgICAgICAgICovCi0gIHNydHBf
ZXJyX3N0YXR1c19ub19jdHggICAgICAgPSAxMywgLyoqPCBubyBhcHByb3ByaWF0ZSBjb250ZXh0
IGZvdW5kICAgICAgICAgICAgKi8KLSAgc3J0cF9lcnJfc3RhdHVzX2NhbnRfY2hlY2sgICA9IDE0
LCAvKio8IHVuYWJsZSB0byBwZXJmb3JtIGRlc2lyZWQgdmFsaWRhdGlvbiAgICAqLwotICBzcnRw
X2Vycl9zdGF0dXNfa2V5X2V4cGlyZWQgID0gMTUsIC8qKjwgY2FuJ3QgdXNlIGtleSBhbnkgbW9y
ZSAgICAgICAgICAgICAgICAgICovCi0gIHNydHBfZXJyX3N0YXR1c19zb2NrZXRfZXJyICAgPSAx
NiwgLyoqPCBlcnJvciBpbiB1c2Ugb2Ygc29ja2V0ICAgICAgICAgICAgICAgICAgKi8KLSAgc3J0
cF9lcnJfc3RhdHVzX3NpZ25hbF9lcnIgICA9IDE3LCAvKio8IGVycm9yIGluIHVzZSBQT1NJWCBz
aWduYWxzICAgICAgICAgICAgICAqLwotICBzcnRwX2Vycl9zdGF0dXNfbm9uY2VfYmFkICAgID0g
MTgsIC8qKjwgbm9uY2UgY2hlY2sgZmFpbGVkICAgICAgICAgICAgICAgICAgICAgICovCi0gIHNy
dHBfZXJyX3N0YXR1c19yZWFkX2ZhaWwgICAgPSAxOSwgLyoqPCBjb3VsZG4ndCByZWFkIGRhdGEg
ICAgICAgICAgICAgICAgICAgICAgKi8KLSAgc3J0cF9lcnJfc3RhdHVzX3dyaXRlX2ZhaWwgICA9
IDIwLCAvKio8IGNvdWxkbid0IHdyaXRlIGRhdGEgICAgICAgICAgICAgICAgICAgICAqLwotICBz
cnRwX2Vycl9zdGF0dXNfcGFyc2VfZXJyICAgID0gMjEsIC8qKjwgZXJyb3IgcGFyc2luZyBkYXRh
ICAgICAgICAgICAgICAgICAgICAgICovCi0gIHNydHBfZXJyX3N0YXR1c19lbmNvZGVfZXJyICAg
PSAyMiwgLyoqPCBlcnJvciBlbmNvZGluZyBkYXRhICAgICAgICAgICAgICAgICAgICAgKi8KLSAg
c3J0cF9lcnJfc3RhdHVzX3NlbWFwaG9yZV9lcnIgPSAyMywvKio8IGVycm9yIHdoaWxlIHVzaW5n
IHNlbWFwaG9yZXMgICAgICAgICAgICAqLwotICBzcnRwX2Vycl9zdGF0dXNfcGZrZXlfZXJyICAg
ID0gMjQsIC8qKjwgZXJyb3Igd2hpbGUgdXNpbmcgcGZrZXkgICAgICAgICAgICAgICAgICovCi0g
IHNydHBfZXJyX3N0YXR1c19iYWRfbWtpICAgICAgPSAyNSwgLyoqPCBlcnJvciBNS0kgcHJlc2Vu
dCBpbiBwYWNrZXQgaXMgaW52YWxpZCAgKi8KLSAgc3J0cF9lcnJfc3RhdHVzX3BrdF9pZHhfb2xk
ICA9IDI2LCAvKio8IHBhY2tldCBpbmRleCBpcyB0b28gb2xkIHRvIGNvbnNpZGVyICAgICAqLwot
ICBzcnRwX2Vycl9zdGF0dXNfcGt0X2lkeF9hZHYgID0gMjcgLyoqPCBwYWNrZXQgaW5kZXggYWR2
YW5jZWQsIHJlc2V0IG5lZWRlZCAgICAgICovCisgICAgc3J0cF9lcnJfc3RhdHVzX29rID0gMCwg
ICAgICAgICAgICAgLyoqPCBub3RoaW5nIHRvIHJlcG9ydCAgICAgICAgICAgICAgICovCisgICAg
c3J0cF9lcnJfc3RhdHVzX2ZhaWwgPSAxLCAgICAgICAgICAgLyoqPCB1bnNwZWNpZmllZCBmYWls
dXJlICAgICAgICAgICAgICovCisgICAgc3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJhbSA9IDIsICAg
ICAgLyoqPCB1bnN1cHBvcnRlZCBwYXJhbWV0ZXIgICAgICAgICAgICovCisgICAgc3J0cF9lcnJf
c3RhdHVzX2FsbG9jX2ZhaWwgPSAzLCAgICAgLyoqPCBjb3VsZG4ndCBhbGxvY2F0ZSBtZW1vcnkg
ICAgICAgICovCisgICAgc3J0cF9lcnJfc3RhdHVzX2RlYWxsb2NfZmFpbCA9IDQsICAgLyoqPCBj
b3VsZG4ndCBkZWFsbG9jYXRlIHByb3Blcmx5ICAgICovCisgICAgc3J0cF9lcnJfc3RhdHVzX2lu
aXRfZmFpbCA9IDUsICAgICAgLyoqPCBjb3VsZG4ndCBpbml0aWFsaXplICAgICAgICAgICAgICov
CisgICAgc3J0cF9lcnJfc3RhdHVzX3Rlcm1pbnVzID0gNiwgICAgICAgLyoqPCBjYW4ndCBwcm9j
ZXNzIGFzIG11Y2ggZGF0YSBhcyAgICovCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgLyoqPCByZXF1ZXN0ZWQgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgc3J0
cF9lcnJfc3RhdHVzX2F1dGhfZmFpbCA9IDcsICAgICAgLyoqPCBhdXRoZW50aWNhdGlvbiBmYWls
dXJlICAgICAgICAgICovCisgICAgc3J0cF9lcnJfc3RhdHVzX2NpcGhlcl9mYWlsID0gOCwgICAg
LyoqPCBjaXBoZXIgZmFpbHVyZSAgICAgICAgICAgICAgICAgICovCisgICAgc3J0cF9lcnJfc3Rh
dHVzX3JlcGxheV9mYWlsID0gOSwgICAgLyoqPCByZXBsYXkgY2hlY2sgZmFpbGVkIChiYWQgaW5k
ZXgpICovCisgICAgc3J0cF9lcnJfc3RhdHVzX3JlcGxheV9vbGQgPSAxMCwgICAgLyoqPCByZXBs
YXkgY2hlY2sgZmFpbGVkIChpbmRleCB0b28gICovCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyoqPCBvbGQpICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisg
ICAgc3J0cF9lcnJfc3RhdHVzX2FsZ29fZmFpbCA9IDExLCAgICAgLyoqPCBhbGdvcml0aG0gZmFp
bGVkIHRlc3Qgcm91dGluZSAgICovCisgICAgc3J0cF9lcnJfc3RhdHVzX25vX3N1Y2hfb3AgPSAx
MiwgICAgLyoqPCB1bnN1cHBvcnRlZCBvcGVyYXRpb24gICAgICAgICAgICovCisgICAgc3J0cF9l
cnJfc3RhdHVzX25vX2N0eCA9IDEzLCAgICAgICAgLyoqPCBubyBhcHByb3ByaWF0ZSBjb250ZXh0
IGZvdW5kICAgICovCisgICAgc3J0cF9lcnJfc3RhdHVzX2NhbnRfY2hlY2sgPSAxNCwgICAgLyoq
PCB1bmFibGUgdG8gcGVyZm9ybSBkZXNpcmVkICAgICAgICovCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgLyoqPCB2YWxpZGF0aW9uICAgICAgICAgICAgICAgICAgICAg
ICovCisgICAgc3J0cF9lcnJfc3RhdHVzX2tleV9leHBpcmVkID0gMTUsICAgLyoqPCBjYW4ndCB1
c2Uga2V5IGFueSBtb3JlICAgICAgICAgICovCisgICAgc3J0cF9lcnJfc3RhdHVzX3NvY2tldF9l
cnIgPSAxNiwgICAgLyoqPCBlcnJvciBpbiB1c2Ugb2Ygc29ja2V0ICAgICAgICAgICovCisgICAg
c3J0cF9lcnJfc3RhdHVzX3NpZ25hbF9lcnIgPSAxNywgICAgLyoqPCBlcnJvciBpbiB1c2UgUE9T
SVggc2lnbmFscyAgICAgICovCisgICAgc3J0cF9lcnJfc3RhdHVzX25vbmNlX2JhZCA9IDE4LCAg
ICAgLyoqPCBub25jZSBjaGVjayBmYWlsZWQgICAgICAgICAgICAgICovCisgICAgc3J0cF9lcnJf
c3RhdHVzX3JlYWRfZmFpbCA9IDE5LCAgICAgLyoqPCBjb3VsZG4ndCByZWFkIGRhdGEgICAgICAg
ICAgICAgICovCisgICAgc3J0cF9lcnJfc3RhdHVzX3dyaXRlX2ZhaWwgPSAyMCwgICAgLyoqPCBj
b3VsZG4ndCB3cml0ZSBkYXRhICAgICAgICAgICAgICovCisgICAgc3J0cF9lcnJfc3RhdHVzX3Bh
cnNlX2VyciA9IDIxLCAgICAgLyoqPCBlcnJvciBwYXJzaW5nIGRhdGEgICAgICAgICAgICAgICov
CisgICAgc3J0cF9lcnJfc3RhdHVzX2VuY29kZV9lcnIgPSAyMiwgICAgLyoqPCBlcnJvciBlbmNv
ZGluZyBkYXRhICAgICAgICAgICAgICovCisgICAgc3J0cF9lcnJfc3RhdHVzX3NlbWFwaG9yZV9l
cnIgPSAyMywgLyoqPCBlcnJvciB3aGlsZSB1c2luZyBzZW1hcGhvcmVzICAgICovCisgICAgc3J0
cF9lcnJfc3RhdHVzX3Bma2V5X2VyciA9IDI0LCAgICAgLyoqPCBlcnJvciB3aGlsZSB1c2luZyBw
ZmtleSAgICAgICAgICovCisgICAgc3J0cF9lcnJfc3RhdHVzX2JhZF9ta2kgPSAyNSwgICAgICAg
LyoqPCBlcnJvciBNS0kgcHJlc2VudCBpbiBwYWNrZXQgaXMgICovCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgLyoqPCBpbnZhbGlkICAgICAgICAgICAgICAgICAgICAg
ICAgICovCisgICAgc3J0cF9lcnJfc3RhdHVzX3BrdF9pZHhfb2xkID0gMjYsICAgLyoqPCBwYWNr
ZXQgaW5kZXggaXMgdG9vIG9sZCB0byAgICAgICovCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyoqPCBjb25zaWRlciAgICAgICAgICAgICAgICAgICAgICAgICovCisg
ICAgc3J0cF9lcnJfc3RhdHVzX3BrdF9pZHhfYWR2ID0gMjcgICAgLyoqPCBwYWNrZXQgaW5kZXgg
YWR2YW5jZWQsIHJlc2V0ICAgICovCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgLyoqPCBuZWVkZWQgICAgICAgICAgICAgICAgICAgICAgICAgICovCiB9IHNydHBfZXJy
X3N0YXR1c190OwogCi0KIHR5cGVkZWYgc3RydWN0IHNydHBfY3R4X3RfIHNydHBfY3R4X3Q7CiAK
IC8qKgotICogQGJyaWVmIHNydHBfc2VjX3NlcnZfdCBkZXNjcmliZXMgYSBzZXQgb2Ygc2VjdXJp
dHkgc2VydmljZXMuIAorICogQGJyaWVmIHNydHBfc2VjX3NlcnZfdCBkZXNjcmliZXMgYSBzZXQg
b2Ygc2VjdXJpdHkgc2VydmljZXMuCiAgKgogICogQSBzcnRwX3NlY19zZXJ2X3QgZW51bWVyYXRp
b24gaXMgdXNlZCB0byBkZXNjcmliZSB0aGUgcGFydGljdWxhcgogICogc2VjdXJpdHkgc2Vydmlj
ZXMgdGhhdCB3aWxsIGJlIGFwcGxpZWQgYnkgYSBwYXJ0aWN1bGFyIGNyeXB0bwotICogcG9saWN5
IChvciBvdGhlciBtZWNoYW5pc20pLiAgCisgKiBwb2xpY3kgKG9yIG90aGVyIG1lY2hhbmlzbSku
CiAgKi8KLQogdHlwZWRlZiBlbnVtIHsKLSAgc2VjX3NlcnZfbm9uZSAgICAgICAgICA9IDAsIC8q
Kjwgbm8gc2VydmljZXMgICAgICAgICAgICAgICAgICAgICAgICAqLwotICBzZWNfc2Vydl9jb25m
ICAgICAgICAgID0gMSwgLyoqPCBjb25maWRlbnRpYWxpdHkgICAgICAgICAgICAgICAgICAgICov
Ci0gIHNlY19zZXJ2X2F1dGggICAgICAgICAgPSAyLCAvKio8IGF1dGhlbnRpY2F0aW9uICAgICAg
ICAgICAgICAgICAgICAgKi8KLSAgc2VjX3NlcnZfY29uZl9hbmRfYXV0aCA9IDMgIC8qKjwgY29u
ZmlkZW50aWFsaXR5IGFuZCBhdXRoZW50aWNhdGlvbiAqLworICAgIHNlY19zZXJ2X25vbmUgPSAw
LCAgICAgICAgIC8qKjwgbm8gc2VydmljZXMgICAgICAgICAgICAgICAgICAgICAgICAqLworICAg
IHNlY19zZXJ2X2NvbmYgPSAxLCAgICAgICAgIC8qKjwgY29uZmlkZW50aWFsaXR5ICAgICAgICAg
ICAgICAgICAgICAqLworICAgIHNlY19zZXJ2X2F1dGggPSAyLCAgICAgICAgIC8qKjwgYXV0aGVu
dGljYXRpb24gICAgICAgICAgICAgICAgICAgICAqLworICAgIHNlY19zZXJ2X2NvbmZfYW5kX2F1
dGggPSAzIC8qKjwgY29uZmlkZW50aWFsaXR5IGFuZCBhdXRoZW50aWNhdGlvbiAqLwogfSBzcnRw
X3NlY19zZXJ2X3Q7CiAKLS8qKiAKKy8qKgogICogQGJyaWVmIHNydHBfY3J5cHRvX3BvbGljeV90
IGRlc2NyaWJlcyBhIHBhcnRpY3VsYXIgY3J5cHRvIHBvbGljeSB0aGF0CiAgKiBjYW4gYmUgYXBw
bGllZCB0byBhbiBTUlRQIHN0cmVhbS4KICAqCiAgKiBBIHNydHBfY3J5cHRvX3BvbGljeV90IGRl
c2NyaWJlcyBhIHBhcnRpY3VsYXIgY3J5cHRvZ3JhcGhpYyBwb2xpY3kgdGhhdAogICogY2FuIGJl
IGFwcGxpZWQgdG8gYW4gU1JUUCBvciBTUlRDUCBzdHJlYW0uICBBbiBTUlRQIHNlc3Npb24gcG9s
aWN5Ci0gKiBjb25zaXN0cyBvZiBhIGxpc3Qgb2YgdGhlc2UgcG9saWNpZXMsIG9uZSBmb3IgZWFj
aCBTUlRQIHN0cmVhbSAKKyAqIGNvbnNpc3RzIG9mIGEgbGlzdCBvZiB0aGVzZSBwb2xpY2llcywg
b25lIGZvciBlYWNoIFNSVFAgc3RyZWFtCiAgKiBpbiB0aGUgc2Vzc2lvbi4KICAqLwotCiB0eXBl
ZGVmIHN0cnVjdCBzcnRwX2NyeXB0b19wb2xpY3lfdCB7Ci0gIHNydHBfY2lwaGVyX3R5cGVfaWRf
dCBjaXBoZXJfdHlwZTsgICAgLyoqPCBBbiBpbnRlZ2VyIHJlcHJlc2VudGluZwotCQkJCSAgICAg
ICAgICogICB0aGUgdHlwZSBvZiBjaXBoZXIuICAqLwotICBpbnQgICAgICAgICAgICAgIGNpcGhl
cl9rZXlfbGVuOyAvKio8IFRoZSBsZW5ndGggb2YgdGhlIGNpcGhlciBrZXkKLQkJCQkgICAgKiAg
IGluIG9jdGV0cy4gICAgICAgICAgICAgICAgICAgICAgICovCi0gIHNydHBfYXV0aF90eXBlX2lk
X3QgICBhdXRoX3R5cGU7ICAgICAgLyoqPCBBbiBpbnRlZ2VyIHJlcHJlc2VudGluZyB0aGUKLQkJ
CQkgICAgICAgICAqICAgYXV0aGVudGljYXRpb24gZnVuY3Rpb24uICAgICAgICAgKi8KLSAgaW50
ICAgICAgICAgICAgICBhdXRoX2tleV9sZW47ICAgLyoqPCBUaGUgbGVuZ3RoIG9mIHRoZSBhdXRo
ZW50aWNhdGlvbiAKLQkJCQkgICAgKiAgIGZ1bmN0aW9uIGtleSBpbiBvY3RldHMuICAgICAgICAg
ICovCi0gIGludCAgICAgICAgICAgICAgYXV0aF90YWdfbGVuOyAgIC8qKjwgVGhlIGxlbmd0aCBv
ZiB0aGUgYXV0aGVudGljYXRpb24gCi0JCQkJICAgICogICB0YWcgaW4gb2N0ZXRzLiAgICAgICAg
ICAgICAgICAgICAqLwotICBzcnRwX3NlY19zZXJ2X3QgIHNlY19zZXJ2OyAgICAgICAvKio8IFRo
ZSBmbGFnIGluZGljYXRpbmcgdGhlIHNlY3VyaXR5Ci0JCQkJICAgICogICBzZXJ2aWNlcyB0byBi
ZSBhcHBsaWVkLiAgICAgICAgICAqLworICAgIHNydHBfY2lwaGVyX3R5cGVfaWRfdCBjaXBoZXJf
dHlwZTsgLyoqPCBBbiBpbnRlZ2VyIHJlcHJlc2VudGluZyAgICAgICAgICAqLworICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyoqPCB0aGUgdHlwZSBvZiBjaXBoZXIuICAg
ICAgICAgICAgICAqLworICAgIGludCBjaXBoZXJfa2V5X2xlbjsgICAgICAgICAgICAgICAgLyoq
PCBUaGUgbGVuZ3RoIG9mIHRoZSBjaXBoZXIga2V5ICAgICAqLworICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgLyoqPCBpbiBvY3RldHMuICAgICAgICAgICAgICAgICAgICAg
ICAqLworICAgIHNydHBfYXV0aF90eXBlX2lkX3QgYXV0aF90eXBlOyAgICAgLyoqPCBBbiBpbnRl
Z2VyIHJlcHJlc2VudGluZyB0aGUgICAgICAqLworICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgLyoqPCBhdXRoZW50aWNhdGlvbiBmdW5jdGlvbi4gICAgICAgICAqLworICAg
IGludCBhdXRoX2tleV9sZW47ICAgICAgICAgICAgICAgICAgLyoqPCBUaGUgbGVuZ3RoIG9mIHRo
ZSBhdXRoZW50aWNhdGlvbiAqLworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgLyoqPCBmdW5jdGlvbiBrZXkgaW4gb2N0ZXRzLiAgICAgICAgICAqLworICAgIGludCBhdXRo
X3RhZ19sZW47ICAgICAgICAgICAgICAgICAgLyoqPCBUaGUgbGVuZ3RoIG9mIHRoZSBhdXRoZW50
aWNhdGlvbiAqLworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyoqPCB0
YWcgaW4gb2N0ZXRzLiAgICAgICAgICAgICAgICAgICAqLworICAgIHNydHBfc2VjX3NlcnZfdCBz
ZWNfc2VydjsgICAgICAgICAgLyoqPCBUaGUgZmxhZyBpbmRpY2F0aW5nIHRoZSBzZWN1cml0eSAq
LworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyoqPCBzZXJ2aWNlcyB0
byBiZSBhcHBsaWVkLiAgICAgICAgICAqLwogfSBzcnRwX2NyeXB0b19wb2xpY3lfdDsKIAotCi0v
KiogCisvKioKICAqIEBicmllZiBzcnRwX3NzcmNfdHlwZV90IGRlc2NyaWJlcyB0aGUgdHlwZSBv
ZiBhbiBTU1JDLgotICogCisgKgogICogQW4gc3J0cF9zc3JjX3R5cGVfdCBlbnVtZXJhdGlvbiBp
cyB1c2VkIHRvIGluZGljYXRlIGEgdHlwZSBvZiBTU1JDLiAgU2VlCiAgKiBAcmVmIHNydHBfcG9s
aWN5X3QgZm9yIG1vcmUgaW5mb3JtYXRhaW9uLgogICovCi0KLXR5cGVkZWYgZW51bSB7IAotICBz
c3JjX3VuZGVmaW5lZCAgICA9IDAsICAvKio8IEluZGljYXRlcyBhbiB1bmRlZmluZWQgU1NSQyB0
eXBlLiAqLwotICBzc3JjX3NwZWNpZmljICAgICA9IDEsICAvKio8IEluZGljYXRlcyBhIHNwZWNp
ZmljIFNTUkMgdmFsdWUgICAqLwotICBzc3JjX2FueV9pbmJvdW5kICA9IDIsIC8qKjwgSW5kaWNh
dGVzIGFueSBpbmJvdW5kIFNTUkMgdmFsdWUgCi0JCQkgICAgKGkuZS4gYSB2YWx1ZSB0aGF0IGlz
IHVzZWQgaW4gdGhlCi0JCQkgICAgZnVuY3Rpb24gc3J0cF91bnByb3RlY3QoKSkgICAgICAgICAg
ICAgICovCi0gIHNzcmNfYW55X291dGJvdW5kID0gMyAgLyoqPCBJbmRpY2F0ZXMgYW55IG91dGJv
dW5kIFNTUkMgdmFsdWUgCi0JCQkgICAgKGkuZS4gYSB2YWx1ZSB0aGF0IGlzIHVzZWQgaW4gdGhl
IAotCQkJICAgIGZ1bmN0aW9uIHNydHBfcHJvdGVjdCgpKQkJICAqLwordHlwZWRlZiBlbnVtIHsK
KyAgICBzc3JjX3VuZGVmaW5lZCA9IDAsICAgLyoqPCBJbmRpY2F0ZXMgYW4gdW5kZWZpbmVkIFNT
UkMgdHlwZS4gICAgKi8KKyAgICBzc3JjX3NwZWNpZmljID0gMSwgICAgLyoqPCBJbmRpY2F0ZXMg
YSBzcGVjaWZpYyBTU1JDIHZhbHVlICAgICAgKi8KKyAgICBzc3JjX2FueV9pbmJvdW5kID0gMiwg
LyoqPCBJbmRpY2F0ZXMgYW55IGluYm91bmQgU1NSQyB2YWx1ZSAgICAgKi8KKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyoqPCAoaS5lLiBhIHZhbHVlIHRoYXQgaXMgdXNlZCBpbiB0aGUgICAg
Ki8KKyAgICAgICAgICAgICAgICAgICAgICAgICAgLyoqPCBmdW5jdGlvbiBzcnRwX3VucHJvdGVj
dCgpKSAgICAgICAgICAgKi8KKyAgICBzc3JjX2FueV9vdXRib3VuZCA9IDMgLyoqPCBJbmRpY2F0
ZXMgYW55IG91dGJvdW5kIFNTUkMgdmFsdWUgICAgKi8KKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgLyoqPCAoaS5lLiBhIHZhbHVlIHRoYXQgaXMgdXNlZCBpbiB0aGUgICAgKi8KKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgLyoqPCBmdW5jdGlvbiBzcnRwX3Byb3RlY3QoKSkgICAgICAgICAg
ICAgKi8KIH0gc3J0cF9zc3JjX3R5cGVfdDsKIAogLyoqCi0gKiBAYnJpZWYgQW4gc3J0cF9zc3Jj
X3QgcmVwcmVzZW50cyBhIHBhcnRpY3VsYXIgU1NSQyB2YWx1ZSwgb3IgYSBgd2lsZGNhcmQnIFNT
UkMuCi0gKiAKKyAqIEBicmllZiBBbiBzcnRwX3NzcmNfdCByZXByZXNlbnRzIGEgcGFydGljdWxh
ciBTU1JDIHZhbHVlLCBvciBhIGB3aWxkY2FyZCcKKyAqIFNTUkMuCisgKgogICogQW4gc3J0cF9z
c3JjX3QgcmVwcmVzZW50cyBhIHBhcnRpY3VsYXIgU1NSQyB2YWx1ZSAoaWYgaXRzIHR5cGUgaXMK
ICAqIHNzcmNfc3BlY2lmaWMpLCBvciBhIHdpbGRjYXJkIFNTUkMgdmFsdWUgdGhhdCB3aWxsIG1h
dGNoIGFsbAogICogb3V0Ym91bmQgU1NSQ3MgKGlmIGl0cyB0eXBlIGlzIHNzcmNfYW55X291dGJv
dW5kKSBvciBhbGwgaW5ib3VuZAotICogU1NSQ3MgKGlmIGl0cyB0eXBlIGlzIHNzcmNfYW55X2lu
Ym91bmQpLiAgCi0gKgorICogU1NSQ3MgKGlmIGl0cyB0eXBlIGlzIHNzcmNfYW55X2luYm91bmQp
LgogICovCi0KLXR5cGVkZWYgc3RydWN0IHsgCi0gIHNydHBfc3NyY190eXBlX3QgdHlwZTsgIC8q
KjwgVGhlIHR5cGUgb2YgdGhpcyBwYXJ0aWN1bGFyIFNTUkMgKi8KLSAgdW5zaWduZWQgaW50ICAg
ICB2YWx1ZTsgLyoqPCBUaGUgdmFsdWUgb2YgdGhpcyBTU1JDLCBpZiBpdCBpcyBub3QgYSB3aWxk
Y2FyZCAqLwordHlwZWRlZiBzdHJ1Y3QgeworICAgIHNydHBfc3NyY190eXBlX3QgdHlwZTsgLyoq
PCBUaGUgdHlwZSBvZiB0aGlzIHBhcnRpY3VsYXIgU1NSQyAqLworICAgIHVuc2lnbmVkIGludCB2
YWx1ZTsgICAgLyoqPCBUaGUgdmFsdWUgb2YgdGhpcyBTU1JDLCBpZiBpdCBpcyBub3QgYSAqLwor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgLyoqPCB3aWxkY2FyZCAqLwogfSBzcnRwX3NzcmNf
dDsKIAotCiAvKioKICAqIEBicmllZiBwb2ludHMgdG8gYW4gRUtUIHBvbGljeQogICovCiB0eXBl
ZGVmIHN0cnVjdCBzcnRwX2VrdF9wb2xpY3lfY3R4X3QgKnNydHBfZWt0X3BvbGljeV90OwogCi0K
IC8qKgogICogQGJyaWVmIHBvaW50cyB0byBFS1Qgc3RyZWFtIGRhdGEKICAqLwpAQCAtMjg1LDEz
ICsyODcsMTMgQEAgdHlwZWRlZiBzdHJ1Y3Qgc3J0cF9la3Rfc3RyZWFtX2N0eF90ICpzcnRwX2Vr
dF9zdHJlYW1fdDsKICAqIEluZGV4IFNpemUgdG8gY29ycmVjdGx5IHJlYWQgaXQgZnJvbSBhIHBh
Y2tldC4KICAqLwogdHlwZWRlZiBzdHJ1Y3Qgc3J0cF9tYXN0ZXJfa2V5X3QgewotICB1bnNpZ25l
ZCBjaGFyICprZXk7Ci0gIHVuc2lnbmVkIGNoYXIgKm1raV9pZDsKLSAgdW5zaWduZWQgaW50IG1r
aV9zaXplOworICAgIHVuc2lnbmVkIGNoYXIgKmtleTsKKyAgICB1bnNpZ25lZCBjaGFyICpta2lf
aWQ7CisgICAgdW5zaWduZWQgaW50IG1raV9zaXplOwogfSBzcnRwX21hc3Rlcl9rZXlfdDsKIAot
LyoqIAotICogQGJyaWVmIHJlcHJlc2VudHMgdGhlIHBvbGljeSBmb3IgYW4gU1JUUCBzZXNzaW9u
LiAgCisvKioKKyAqIEBicmllZiByZXByZXNlbnRzIHRoZSBwb2xpY3kgZm9yIGFuIFNSVFAgc2Vz
c2lvbi4KICAqCiAgKiBBIHNpbmdsZSBzcnRwX3BvbGljeV90IHN0cnVjdCByZXByZXNlbnRzIHRo
ZSBwb2xpY3kgZm9yIGEgc2luZ2xlCiAgKiBTUlRQIHN0cmVhbSwgYW5kIGEgbGlua2VkIGxpc3Qg
b2YgdGhlc2UgZWxlbWVudHMgcmVwcmVzZW50cyB0aGUKQEAgLTMwMCw3ICszMDIsNyBAQCB0eXBl
ZGVmIHN0cnVjdCBzcnRwX21hc3Rlcl9rZXlfdCB7CiAgKiBtYXN0ZXIga2V5IGZvciB0aGF0IHN0
cmVhbSwgdGhlIFNTUkMgZGVzY3JpYmluZyB0aGF0IHN0cmVhbSwgb3IgYQogICogZmxhZyBpbmRp
Y2F0aW5nIGEgYHdpbGRjYXJkJyBTU1JDIHZhbHVlLCBhbmQgYSBgbmV4dCcgZmllbGQgdGhhdAog
ICogaG9sZHMgYSBwb2ludGVyIHRvIHRoZSBuZXh0IGVsZW1lbnQgaW4gdGhlIGxpc3Qgb2YgcG9s
aWN5IGVsZW1lbnRzLAotICogb3IgTlVMTCBpZiBpdCBpcyB0aGUgbGFzdCBlbGVtZW50LiAKKyAq
IG9yIE5VTEwgaWYgaXQgaXMgdGhlIGxhc3QgZWxlbWVudC4KICAqCiAgKiBUaGUgd2lsZGNhcmQg
dmFsdWUgU1NSQ19BTllfSU5CT1VORCBtYXRjaGVzIGFueSBTU1JDIGZyb20gYW4KICAqIGluYm91
bmQgc3RyZWFtIHRoYXQgZm9yIHdoaWNoIHRoZXJlIGlzIG5vIGV4cGxpY2l0IFNTUkMgZW50cnkg
aW4KQEAgLTMxMSw0NyArMzEzLDQ0IEBAIHR5cGVkZWYgc3RydWN0IHNydHBfbWFzdGVyX2tleV90
IHsKICAqIGlzIGludGVudGlvbmFsLCBhbmQgaXQgYWxsb3dzIGxpYlNSVFAgdG8gZW5zdXJlIHRo
YXQgbm8gc2VjdXJpdHkKICAqIGxhcHNlcyByZXN1bHQgZnJvbSBhY2NpZGVudGFsIHJlLXVzZSBv
ZiBTU1JDIHZhbHVlcyBkdXJpbmcga2V5CiAgKiBzaGFyaW5nLgotICogCi0gKiAKKyAqCiAgKiBA
d2FybmluZyBUaGUgZmluYWwgZWxlbWVudCBvZiB0aGUgbGlzdCBAYiBtdXN0IGhhdmUgaXRzIGBu
ZXh0JyBwb2ludGVyCiAgKiAgICAgICAgICBzZXQgdG8gTlVMTC4KICAqLwogCiB0eXBlZGVmIHN0
cnVjdCBzcnRwX3BvbGljeV90IHsKLSAgc3J0cF9zc3JjX3QgICBzc3JjOyAgICAgICAgLyoqPCBU
aGUgU1NSQyB2YWx1ZSBvZiBzdHJlYW0sIG9yIHRoZSAKLQkJCSAgICAgICogICBmbGFncyBTU1JD
X0FOWV9JTkJPVU5EIG9yIAotCQkJICAgICAgKiAgIFNTUkNfQU5ZX09VVEJPVU5EIGlmIGtleSBz
aGFyaW5nCi0JCQkgICAgICAqICAgaXMgdXNlZCBmb3IgdGhpcyBwb2xpY3kgZWxlbWVudC4KLQkJ
CSAgICAgICovCi0gIHNydHBfY3J5cHRvX3BvbGljeV90IHJ0cDsgICAgLyoqPCBTUlRQIGNyeXB0
byBwb2xpY3kuICAgICAgICAgICAgICAgICAgKi8KLSAgc3J0cF9jcnlwdG9fcG9saWN5X3QgcnRj
cDsgICAvKio8IFNSVENQIGNyeXB0byBwb2xpY3kuICAgICAgICAgICAgICAgICAqLwotICB1bnNp
Z25lZCBjaGFyICprZXk7ICAgICAgICAgIC8qKjwgUG9pbnRlciB0byB0aGUgU1JUUCBtYXN0ZXIg
a2V5IGZvcgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqICAgIHRoaXMgc3RyZWFt
LiAgICAgICAgICAgICAgICAgICAgICAgICovCi0gIHNydHBfbWFzdGVyX2tleV90ICoqa2V5czsg
ICAgLyoqIEFycmF5IG9mIE1hc3RlciBLZXkgc3RydWN0dXJlcyAqLwotICB1bnNpZ25lZCBsb25n
IG51bV9tYXN0ZXJfa2V5czsgIC8qKiBOdW1iZXIgb2YgbWFzdGVyIGtleXMgICAgICAgICAgICAq
LwotICBzcnRwX2VrdF9wb2xpY3lfdCBla3Q7ICAgICAgIC8qKjwgUG9pbnRlciB0byB0aGUgRUtU
IHBvbGljeSBzdHJ1Y3R1cmUKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKiAgIGZv
ciB0aGlzIHN0cmVhbSAoaWYgYW55KSAgICAgICAgICAgICAqLyAKLSAgdW5zaWduZWQgbG9uZyB3
aW5kb3dfc2l6ZTsgICAvKio8IFRoZSB3aW5kb3cgc2l6ZSB0byB1c2UgZm9yIHJlcGxheQotCQkJ
CSogICBwcm90ZWN0aW9uLiAqLwotICBpbnQgICAgICAgIGFsbG93X3JlcGVhdF90eDsgIC8qKjwg
V2hldGhlciByZXRyYW5zbWlzc2lvbnMgb2YKLQkJCQkqICAgcGFja2V0cyB3aXRoIHRoZSBzYW1l
IHNlcXVlbmNlIG51bWJlcgotCQkJCSogICBhcmUgYWxsb3dlZC4gIChOb3RlIHRoYXQgc3VjaCBy
ZXBlYXRlZAotCQkJCSogICB0cmFuc21pc3Npb25zIG11c3QgaGF2ZSB0aGUgc2FtZSBSVFAKLQkJ
CQkqICAgcGF5bG9hZCwgb3IgYSBzZXZlcmUgc2VjdXJpdHkgd2Vha25lc3MKLQkJCQkqICAgaXMg
aW50cm9kdWNlZCEpICAgICAgICAgICAgICAgICAgICAgICovCi0gIGludCAqZW5jX3h0bl9oZHI7
ICAgICAgICAgICAgLyoqPCBMaXN0IG9mIGhlYWRlciBpZHMgdG8gZW5jcnlwdC4gICAgICAgKi8K
LSAgaW50IGVuY194dG5faGRyX2NvdW50OyAgICAgICAvKio8IE51bWJlciBvZiBlbnRyaWVzIGlu
IGxpc3Qgb2YgaGVhZGVyIGlkcy4gKi8KLSAgc3RydWN0IHNydHBfcG9saWN5X3QgKm5leHQ7ICAv
Kio8IFBvaW50ZXIgdG8gbmV4dCBzdHJlYW0gcG9saWN5LiAgICAgICAqLworICAgIHNydHBfc3Ny
Y190IHNzcmM7ICAgICAgICAgICAgICAvKio8IFRoZSBTU1JDIHZhbHVlIG9mIHN0cmVhbSwgb3Ig
dGhlICAgICovCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qKjwgZmxhZ3Mg
U1NSQ19BTllfSU5CT1VORCBvciAgICAgICAgICAgKi8KKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgLyoqPCBTU1JDX0FOWV9PVVRCT1VORCBpZiBrZXkgc2hhcmluZyAgICAqLwor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKio8IGlzIHVzZWQgZm9yIHRoaXMg
cG9saWN5IGVsZW1lbnQuICAgICovCisgICAgc3J0cF9jcnlwdG9fcG9saWN5X3QgcnRwOyAgICAg
IC8qKjwgU1JUUCBjcnlwdG8gcG9saWN5LiAgICAgICAgICAgICAgICAgKi8KKyAgICBzcnRwX2Ny
eXB0b19wb2xpY3lfdCBydGNwOyAgICAgLyoqPCBTUlRDUCBjcnlwdG8gcG9saWN5LiAgICAgICAg
ICAgICAgICAqLworICAgIHVuc2lnbmVkIGNoYXIgKmtleTsgICAgICAgICAgICAvKio8IFBvaW50
ZXIgdG8gdGhlIFNSVFAgbWFzdGVyIGtleSBmb3IgICovCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIC8qKjwgdGhpcyBzdHJlYW0uICAgICAgICAgICAgICAgICAgICAgICAgKi8K
KyAgICBzcnRwX21hc3Rlcl9rZXlfdCAqKmtleXM7ICAgICAgLyoqIEFycmF5IG9mIE1hc3RlciBL
ZXkgc3RydWN0dXJlcyAgICAgICAqLworICAgIHVuc2lnbmVkIGxvbmcgbnVtX21hc3Rlcl9rZXlz
OyAvKiogTnVtYmVyIG9mIG1hc3RlciBrZXlzICAgICAgICAgICAgICAgICovCisgICAgc3J0cF9l
a3RfcG9saWN5X3QgZWt0OyAgICAgICAgIC8qKjwgUG9pbnRlciB0byB0aGUgRUtUIHBvbGljeSBz
dHJ1Y3R1cmUgKi8KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyoqPCBmb3Ig
dGhpcyBzdHJlYW0gKGlmIGFueSkgICAgICAgICAgICAqLworICAgIHVuc2lnbmVkIGxvbmcgd2lu
ZG93X3NpemU7ICAgICAvKio8IFRoZSB3aW5kb3cgc2l6ZSB0byB1c2UgZm9yIHJlcGxheSAgICov
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qKjwgcHJvdGVjdGlvbi4gICAg
ICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBpbnQgYWxsb3dfcmVwZWF0X3R4OyAgICAgICAg
ICAgLyoqPCBXaGV0aGVyIHJldHJhbnNtaXNzaW9ucyBvZiAgICAgICAgICAqLworICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAvKio8IHBhY2tldHMgd2l0aCB0aGUgc2FtZSBzZXF1
ZW5jZSAgICAgICovCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qKjwgbnVt
YmVyIGFyZSBhbGxvd2VkLiAgICAgICAgICAgICAgICAgKi8KKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyoqPCAoTm90ZSB0aGF0IHN1Y2ggcmVwZWF0ZWQgICAgICAgICAgICAq
LworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKio8IHRyYW5zbWlzc2lvbnMg
bXVzdCBoYXZlIHRoZSBzYW1lICAgICovCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8qKjwgUlRQIHBheWxvYWQsIG9yIGEgc2V2ZXJlIHNlY3VyaXR5ICAgKi8KKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgLyoqPCB3ZWFrbmVzcyBpcyBpbnRyb2R1Y2VkISkg
ICAgICAgICAgICAqLworICAgIGludCAqZW5jX3h0bl9oZHI7ICAgICAgICAgICAgICAvKio8IExp
c3Qgb2YgaGVhZGVyIGlkcyB0byBlbmNyeXB0LiAgICAgICovCisgICAgaW50IGVuY194dG5faGRy
X2NvdW50OyAgICAgICAgIC8qKjwgTnVtYmVyIG9mIGVudHJpZXMgaW4gbGlzdCBvZiBoZWFkZXIg
Ki8KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyoqPCAgaWRzLiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIHN0cnVjdCBzcnRwX3BvbGljeV90ICpuZXh0
OyAgICAvKio8IFBvaW50ZXIgdG8gbmV4dCBzdHJlYW0gcG9saWN5LiAgICAgICovCiB9IHNydHBf
cG9saWN5X3Q7CiAKLQotCi0KIC8qKgogICogQGJyaWVmIEFuIHNydHBfdCBwb2ludHMgdG8gYW4g
U1JUUCBzZXNzaW9uIHN0cnVjdHVyZS4KICAqCiAgKiBUaGUgdHlwZWRlZiBzcnRwX3QgaXMgYSBw
b2ludGVyIHRvIGEgc3RydWN0dXJlIHRoYXQgcmVwcmVzZW50cwotICogYW4gU1JUUCBzZXNzaW9u
LiAgVGhpcyBkYXRhdHlwZSBpcyBpbnRlbnRpYWxseSBvcGFxdWUgaW4gCisgKiBhbiBTUlRQIHNl
c3Npb24uICBUaGlzIGRhdGF0eXBlIGlzIGludGVudGlhbGx5IG9wYXF1ZSBpbgogICogb3JkZXIg
dG8gc2VwYXJhdGUgdGhlIGludGVyZmFjZSBmcm9tIHRoZSBpbXBsZW1lbnRhdGlvbi4KICAqCiAg
KiBBbiBTUlRQIHNlc3Npb24gY29uc2lzdHMgb2YgYWxsIG9mIHRoZSB0cmFmZmljIHNlbnQgdG8g
dGhlIFJUUCBhbmQKQEAgLTM1OSwxNyArMzU4LDE0IEBAIHR5cGVkZWYgc3RydWN0IHNydHBfcG9s
aWN5X3QgewogICogQXVkaW8vVmlkZW8gUHJvZmlsZSkuICBBIHNlc3Npb24gY2FuIGJlIHZpZXdl
ZCBhcyBhIHNldCBvZiBTUlRQCiAgKiBzdHJlYW1zLCBlYWNoIG9mIHdoaWNoIG9yaWdpbmF0ZXMg
d2l0aCBhIGRpZmZlcmVudCBwYXJ0aWNpcGFudC4KICAqLwotCiB0eXBlZGVmIHNydHBfY3R4X3Qg
KnNydHBfdDsKIAotCiAvKioKLSAqIEBicmllZiBzcnRwX2luaXQoKSBpbml0aWFsaXplcyB0aGUg
c3J0cCBsaWJyYXJ5LiAgCisgKiBAYnJpZWYgc3J0cF9pbml0KCkgaW5pdGlhbGl6ZXMgdGhlIHNy
dHAgbGlicmFyeS4KICAqCiAgKiBAd2FybmluZyBUaGlzIGZ1bmN0aW9uIEBiIG11c3QgYmUgY2Fs
bGVkIGJlZm9yZSBhbnkgb3RoZXIgc3J0cAogICogZnVuY3Rpb25zLgogICovCi0KIHNydHBfZXJy
X3N0YXR1c190IHNydHBfaW5pdCh2b2lkKTsKIAogLyoqCkBAIC0zNzcsMjAgKzM3MywxOSBAQCBz
cnRwX2Vycl9zdGF0dXNfdCBzcnRwX2luaXQodm9pZCk7CiAgKgogICogQHdhcm5pbmcgTm8gc3J0
cCBmdW5jdGlvbnMgbWF5IGJlIGNhbGxlZCBhZnRlciBjYWxsaW5nIHRoaXMgZnVuY3Rpb24uCiAg
Ki8KLQogc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9zaHV0ZG93bih2b2lkKTsKIAogLyoqCiAgKiBA
YnJpZWYgc3J0cF9wcm90ZWN0KCkgaXMgdGhlIFNlY3VyZSBSVFAgc2VuZGVyLXNpZGUgcGFja2V0
IHByb2Nlc3NpbmcKICAqIGZ1bmN0aW9uLgotICogCisgKgogICogVGhlIGZ1bmN0aW9uIGNhbGwg
c3J0cF9wcm90ZWN0KGN0eCwgcnRwX2hkciwgbGVuX3B0cikgYXBwbGllcyBTUlRQCiAgKiBwcm90
ZWN0aW9uIHRvIHRoZSBSVFAgcGFja2V0IHJ0cF9oZHIgKHdoaWNoIGhhcyBsZW5ndGggKmxlbl9w
dHIpIHVzaW5nCiAgKiB0aGUgU1JUUCBjb250ZXh0IGN0eC4gIElmIHNydHBfZXJyX3N0YXR1c19v
ayBpcyByZXR1cm5lZCwgdGhlbiBydHBfaGRyCiAgKiBwb2ludHMgdG8gdGhlIHJlc3VsdGluZyBT
UlRQIHBhY2tldCBhbmQgKmxlbl9wdHIgaXMgdGhlIG51bWJlciBvZgogICogb2N0ZXRzIGluIHRo
YXQgcGFja2V0OyBvdGhlcndpc2UsIG5vIGFzc3VtcHRpb25zIHNob3VsZCBiZSBtYWRlCiAgKiBh
Ym91dCB0aGUgdmFsdWUgb2YgZWl0aGVyIGRhdGEgZWxlbWVudHMuCi0gKiAKKyAqCiAgKiBUaGUg
c2VxdWVuY2UgbnVtYmVycyBvZiB0aGUgUlRQIHBhY2tldHMgcHJlc2VudGVkIHRvIHRoaXMgZnVu
Y3Rpb24KICAqIG5lZWQgbm90IGJlIGNvbnNlY3V0aXZlLCBidXQgdGhleSBAYiBtdXN0IGJlIG91
dCBvZiBvcmRlciBieSBsZXNzCiAgKiB0aGFuIDJeMTUgPSAzMiw3NjggcGFja2V0cy4KQEAgLTQw
MCwxMSArMzk1LDExIEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfc2h1dGRvd24odm9pZCk7CiAg
KiBwYWNrZXQsIGFuZCBhc3N1bWVzIHRoYXQgdGhlIFJUUCBwYWNrZXQgaXMgYWxpZ25lZCBvbiBh
IDMyLWJpdAogICogYm91bmRhcnkuCiAgKgotICogQHdhcm5pbmcgVGhpcyBmdW5jdGlvbiBhc3N1
bWVzIHRoYXQgaXQgY2FuIHdyaXRlIFNSVFBfTUFYX1RSQUlMRVJfTEVOIAotICogaW50byB0aGUg
bG9jYXRpb24gaW4gbWVtb3J5IGltbWVkaWF0ZWx5IGZvbGxvd2luZyB0aGUgUlRQIHBhY2tldC4g
ICAKLSAqIENhbGxlcnMgTVVTVCBlbnN1cmUgdGhhdCB0aGlzIG11Y2ggd3JpdGFibGUgbWVtb3J5
IGlzIGF2YWlsYWJsZSBpbiAKKyAqIEB3YXJuaW5nIFRoaXMgZnVuY3Rpb24gYXNzdW1lcyB0aGF0
IGl0IGNhbiB3cml0ZSBTUlRQX01BWF9UUkFJTEVSX0xFTgorICogaW50byB0aGUgbG9jYXRpb24g
aW4gbWVtb3J5IGltbWVkaWF0ZWx5IGZvbGxvd2luZyB0aGUgUlRQIHBhY2tldC4KKyAqIENhbGxl
cnMgTVVTVCBlbnN1cmUgdGhhdCB0aGlzIG11Y2ggd3JpdGFibGUgbWVtb3J5IGlzIGF2YWlsYWJs
ZSBpbgogICogdGhlIGJ1ZmZlciB0aGF0IGhvbGRzIHRoZSBSVFAgcGFja2V0LgotICogCisgKgog
ICogQHBhcmFtIGN0eCBpcyB0aGUgU1JUUCBjb250ZXh0IHRvIHVzZSBpbiBwcm9jZXNzaW5nIHRo
ZSBwYWNrZXQuCiAgKgogICogQHBhcmFtIHJ0cF9oZHIgaXMgYSBwb2ludGVyIHRvIHRoZSBSVFAg
cGFja2V0IChiZWZvcmUgdGhlIGNhbGwpOyBhZnRlcgpAQCAtNDE1LDI1ICs0MTAsMjQgQEAgc3J0
cF9lcnJfc3RhdHVzX3Qgc3J0cF9zaHV0ZG93bih2b2lkKTsKICAqIGNvbXBsZXRlIFNSVFAgcGFj
a2V0IGFmdGVyIHRoZSBjYWxsLCBpZiBzcnRwX2Vycl9zdGF0dXNfb2sgd2FzIHJldHVybmVkLgog
ICogT3RoZXJ3aXNlLCB0aGUgdmFsdWUgb2YgdGhlIGRhdGEgdG8gd2hpY2ggaXQgcG9pbnRzIGlz
IHVuZGVmaW5lZC4KICAqCi0gKiBAcmV0dXJuIAorICogQHJldHVybgogICogICAgLSBzcnRwX2Vy
cl9zdGF0dXNfb2sgICAgICAgICAgICBubyBwcm9ibGVtcwogICogICAgLSBzcnRwX2Vycl9zdGF0
dXNfcmVwbGF5X2ZhaWwgICBydHAgc2VxdWVuY2UgbnVtYmVyIHdhcyBub24taW5jcmVhc2luZwog
ICogICAgLSBAZSBvdGhlciAgICAgICAgICAgICAgICAgZmFpbHVyZSBpbiBjcnlwdG9ncmFwaGlj
IG1lY2hhbmlzbXMKICAqLwotCiBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3Byb3RlY3Qoc3J0cF90
IGN0eCwgdm9pZCAqcnRwX2hkciwgaW50ICpsZW5fcHRyKTsKIAogLyoqCiAgKiBAYnJpZWYgc3J0
cF9wcm90ZWN0X21raSgpIGlzIHRoZSBTZWN1cmUgUlRQIHNlbmRlci1zaWRlIHBhY2tldCBwcm9j
ZXNzaW5nCiAgKiBmdW5jdGlvbiB0aGF0IGNhbiB1dGlsaXplIE1LSS4KLSAqIAorICoKICAqIFRo
ZSBmdW5jdGlvbiBjYWxsIHNydHBfcHJvdGVjdChjdHgsIHJ0cF9oZHIsIGxlbl9wdHIpIGFwcGxp
ZXMgU1JUUAogICogcHJvdGVjdGlvbiB0byB0aGUgUlRQIHBhY2tldCBydHBfaGRyICh3aGljaCBo
YXMgbGVuZ3RoICpsZW5fcHRyKSB1c2luZwogICogdGhlIFNSVFAgY29udGV4dCBjdHguICBJZiBz
cnRwX2Vycl9zdGF0dXNfb2sgaXMgcmV0dXJuZWQsIHRoZW4gcnRwX2hkcgogICogcG9pbnRzIHRv
IHRoZSByZXN1bHRpbmcgU1JUUCBwYWNrZXQgYW5kICpsZW5fcHRyIGlzIHRoZSBudW1iZXIgb2YK
ICAqIG9jdGV0cyBpbiB0aGF0IHBhY2tldDsgb3RoZXJ3aXNlLCBubyBhc3N1bXB0aW9ucyBzaG91
bGQgYmUgbWFkZQogICogYWJvdXQgdGhlIHZhbHVlIG9mIGVpdGhlciBkYXRhIGVsZW1lbnRzLgot
ICogCisgKgogICogVGhlIHNlcXVlbmNlIG51bWJlcnMgb2YgdGhlIFJUUCBwYWNrZXRzIHByZXNl
bnRlZCB0byB0aGlzIGZ1bmN0aW9uCiAgKiBuZWVkIG5vdCBiZSBjb25zZWN1dGl2ZSwgYnV0IHRo
ZXkgQGIgbXVzdCBiZSBvdXQgb2Ygb3JkZXIgYnkgbGVzcwogICogdGhhbiAyXjE1ID0gMzIsNzY4
IHBhY2tldHMuCkBAIC00NDMsMTEgKzQzNywxMSBAQCBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3By
b3RlY3Qoc3J0cF90IGN0eCwgdm9pZCAqcnRwX2hkciwgaW50ICpsZW5fcHRyKTsKICAqIHBhY2tl
dCwgYW5kIGFzc3VtZXMgdGhhdCB0aGUgUlRQIHBhY2tldCBpcyBhbGlnbmVkIG9uIGEgMzItYml0
CiAgKiBib3VuZGFyeS4KICAqCi0gKiBAd2FybmluZyBUaGlzIGZ1bmN0aW9uIGFzc3VtZXMgdGhh
dCBpdCBjYW4gd3JpdGUgU1JUUF9NQVhfVFJBSUxFUl9MRU4gCi0gKiBpbnRvIHRoZSBsb2NhdGlv
biBpbiBtZW1vcnkgaW1tZWRpYXRlbHkgZm9sbG93aW5nIHRoZSBSVFAgcGFja2V0LiAgIAotICog
Q2FsbGVycyBNVVNUIGVuc3VyZSB0aGF0IHRoaXMgbXVjaCB3cml0YWJsZSBtZW1vcnkgaXMgYXZh
aWxhYmxlIGluIAorICogQHdhcm5pbmcgVGhpcyBmdW5jdGlvbiBhc3N1bWVzIHRoYXQgaXQgY2Fu
IHdyaXRlIFNSVFBfTUFYX1RSQUlMRVJfTEVOCisgKiBpbnRvIHRoZSBsb2NhdGlvbiBpbiBtZW1v
cnkgaW1tZWRpYXRlbHkgZm9sbG93aW5nIHRoZSBSVFAgcGFja2V0LgorICogQ2FsbGVycyBNVVNU
IGVuc3VyZSB0aGF0IHRoaXMgbXVjaCB3cml0YWJsZSBtZW1vcnkgaXMgYXZhaWxhYmxlIGluCiAg
KiB0aGUgYnVmZmVyIHRoYXQgaG9sZHMgdGhlIFJUUCBwYWNrZXQuCi0gKiAKKyAqCiAgKiBAcGFy
YW0gY3R4IGlzIHRoZSBTUlRQIGNvbnRleHQgdG8gdXNlIGluIHByb2Nlc3NpbmcgdGhlIHBhY2tl
dC4KICAqCiAgKiBAcGFyYW0gcnRwX2hkciBpcyBhIHBvaW50ZXIgdG8gdGhlIFJUUCBwYWNrZXQg
KGJlZm9yZSB0aGUgY2FsbCk7IGFmdGVyCkBAIC00NTgsMjEgKzQ1MiwyMyBAQCBzcnRwX2Vycl9z
dGF0dXNfdCBzcnRwX3Byb3RlY3Qoc3J0cF90IGN0eCwgdm9pZCAqcnRwX2hkciwgaW50ICpsZW5f
cHRyKTsKICAqIGNvbXBsZXRlIFNSVFAgcGFja2V0IGFmdGVyIHRoZSBjYWxsLCBpZiBzcnRwX2Vy
cl9zdGF0dXNfb2sgd2FzIHJldHVybmVkLgogICogT3RoZXJ3aXNlLCB0aGUgdmFsdWUgb2YgdGhl
IGRhdGEgdG8gd2hpY2ggaXQgcG9pbnRzIGlzIHVuZGVmaW5lZC4KICAqCi0gKiBAcGFyYW0gdXNl
X21raSBpcyBhIGJvb2xlYW4gdG8gdGVsbCB0aGUgc3lzdGVtIGlmIG1raSBpcyBiZWluZyB1c2Vk
LiAgSWYgCi0gKiBzZXQgdG8gZmFsc2UgdGhlbiB3aWxsIHVzZSB0aGUgZmlyc3Qgc2V0IG9mIHNl
c3Npb24ga2V5cy4gIElmIHNldCB0byB0cnVlIHdpbGwKKyAqIEBwYXJhbSB1c2VfbWtpIGlzIGEg
Ym9vbGVhbiB0byB0ZWxsIHRoZSBzeXN0ZW0gaWYgbWtpIGlzIGJlaW5nIHVzZWQuICBJZgorICog
c2V0IHRvIGZhbHNlIHRoZW4gd2lsbCB1c2UgdGhlIGZpcnN0IHNldCBvZiBzZXNzaW9uIGtleXMu
ICBJZiBzZXQgdG8gdHJ1ZQorICogd2lsbAogICogdXNlIHRoZSBzZXNzaW9uIGtleXMgaWRlbnRp
ZmllZCBieSB0aGUgbWtpX2luZGV4CiAgKgogICogQHBhcmFtIG1raV9pbmRleCBpbnRlZ2VyIHZh
bHVlIHNwZWNpZnlpbmcgd2hpY2ggc2V0IG9mIHNlc3Npb24ga2V5cyBzaG91bGQgYmUKICAqIHVz
ZWQgaWYgdXNlX21raSBpcyBzZXQgdG8gdHJ1ZS4KICAqCi0gKiBAcmV0dXJuIAorICogQHJldHVy
bgogICogICAgLSBzcnRwX2Vycl9zdGF0dXNfb2sgICAgICAgICAgICBubyBwcm9ibGVtcwogICog
ICAgLSBzcnRwX2Vycl9zdGF0dXNfcmVwbGF5X2ZhaWwgICBydHAgc2VxdWVuY2UgbnVtYmVyIHdh
cyBub24taW5jcmVhc2luZwogICogICAgLSBAZSBvdGhlciAgICAgICAgICAgICAgICAgZmFpbHVy
ZSBpbiBjcnlwdG9ncmFwaGljIG1lY2hhbmlzbXMKICAqLwotCi1zcnRwX2Vycl9zdGF0dXNfdCBz
cnRwX3Byb3RlY3RfbWtpKHNydHBfY3R4X3QgKmN0eCwgdm9pZCAqcnRwX2hkciwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50ICpwa3Rfb2N0ZXRfbGVuLCB1bnNpZ25lZCBp
bnQgdXNlX21raSwKK3NydHBfZXJyX3N0YXR1c190IHNydHBfcHJvdGVjdF9ta2koc3J0cF9jdHhf
dCAqY3R4LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2b2lkICpydHBfaGRy
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgKnBrdF9vY3RldF9sZW4s
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCB1c2VfbWtp
LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgbWtpX2lu
ZGV4KTsKIAogLyoqCkBAIC00ODUsMTIgKzQ4MSwxMiBAQCBzcnRwX2Vycl9zdGF0dXNfdCBzcnRw
X3Byb3RlY3RfbWtpKHNydHBfY3R4X3QgKmN0eCwgdm9pZCAqcnRwX2hkciwKICAqIHNydHBfZXJy
X3N0YXR1c19vayBpcyByZXR1cm5lZCwgdGhlbiBzcnRwX2hkciBwb2ludHMgdG8gdGhlIHJlc3Vs
dGluZwogICogUlRQIHBhY2tldCBhbmQgKmxlbl9wdHIgaXMgdGhlIG51bWJlciBvZiBvY3RldHMg
aW4gdGhhdCBwYWNrZXQ7CiAgKiBvdGhlcndpc2UsIG5vIGFzc3VtcHRpb25zIHNob3VsZCBiZSBt
YWRlIGFib3V0IHRoZSB2YWx1ZSBvZiBlaXRoZXIKLSAqIGRhdGEgZWxlbWVudHMuICAKLSAqIAor
ICogZGF0YSBlbGVtZW50cy4KKyAqCiAgKiBUaGUgc2VxdWVuY2UgbnVtYmVycyBvZiB0aGUgUlRQ
IHBhY2tldHMgcHJlc2VudGVkIHRvIHRoaXMgZnVuY3Rpb24KICAqIG5lZWQgbm90IGJlIGNvbnNl
Y3V0aXZlLCBidXQgdGhleSBAYiBtdXN0IGJlIG91dCBvZiBvcmRlciBieSBsZXNzCiAgKiB0aGFu
IDJeMTUgPSAzMiw3NjggcGFja2V0cy4KLSAqIAorICoKICAqIEB3YXJuaW5nIFRoaXMgZnVuY3Rp
b24gYXNzdW1lcyB0aGF0IHRoZSBTUlRQIHBhY2tldCBpcyBhbGlnbmVkIG9uIGEKICAqIDMyLWJp
dCBib3VuZGFyeS4KICAqCkBAIC01MDYsMTYgKzUwMiwxNSBAQCBzcnRwX2Vycl9zdGF0dXNfdCBz
cnRwX3Byb3RlY3RfbWtpKHNydHBfY3R4X3QgKmN0eCwgdm9pZCAqcnRwX2hkciwKICAqIGNvbXBs
ZXRlIHJ0cCBwYWNrZXQgYWZ0ZXIgdGhlIGNhbGwsIGlmIHNydHBfZXJyX3N0YXR1c19vayB3YXMg
cmV0dXJuZWQuCiAgKiBPdGhlcndpc2UsIHRoZSB2YWx1ZSBvZiB0aGUgZGF0YSB0byB3aGljaCBp
dCBwb2ludHMgaXMgdW5kZWZpbmVkLgogICoKLSAqIEByZXR1cm4gCisgKiBAcmV0dXJuCiAgKiAg
ICAtIHNydHBfZXJyX3N0YXR1c19vayAgICAgICAgICBpZiB0aGUgUlRQIHBhY2tldCBpcyB2YWxp
ZC4KLSAqICAgIC0gc3J0cF9lcnJfc3RhdHVzX2F1dGhfZmFpbCAgIGlmIHRoZSBTUlRQIHBhY2tl
dCBmYWlsZWQgdGhlIG1lc3NhZ2UgCi0gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXV0
aGVudGljYXRpb24gY2hlY2suCi0gKiAgICAtIHNydHBfZXJyX3N0YXR1c19yZXBsYXlfZmFpbCBp
ZiB0aGUgU1JUUCBwYWNrZXQgaXMgYSByZXBsYXkgKGUuZy4gcGFja2V0IGhhcwotICogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGFscmVhZHkgYmVlbiBwcm9jZXNzZWQgYW5kIGFjY2VwdGVk
KS4KKyAqICAgIC0gc3J0cF9lcnJfc3RhdHVzX2F1dGhfZmFpbCAgIGlmIHRoZSBTUlRQIHBhY2tl
dCBmYWlsZWQgdGhlIG1lc3NhZ2UKKyAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGF1dGhlbnRpY2F0aW9uIGNoZWNrLgorICogICAgLSBzcnRwX2Vycl9zdGF0dXNfcmVwbGF5X2Zh
aWwgaWYgdGhlIFNSVFAgcGFja2V0IGlzIGEgcmVwbGF5IChlLmcuIHBhY2tldAorICogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgaGFzIGFscmVhZHkgYmVlbiBwcm9jZXNzZWQgYW5k
IGFjY2VwdGVkKS4KICAqICAgIC0gW290aGVyXSAgaWYgdGhlcmUgaGFzIGJlZW4gYW4gZXJyb3Ig
aW4gdGhlIGNyeXB0b2dyYXBoaWMgbWVjaGFuaXNtcy4KICAqCiAgKi8KLQogc3J0cF9lcnJfc3Rh
dHVzX3Qgc3J0cF91bnByb3RlY3Qoc3J0cF90IGN0eCwgdm9pZCAqc3J0cF9oZHIsIGludCAqbGVu
X3B0cik7CiAKIC8qKgpAQCAtNTI4LDEyICs1MjMsMTIgQEAgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0
cF91bnByb3RlY3Qoc3J0cF90IGN0eCwgdm9pZCAqc3J0cF9oZHIsIGludCAqbGVuX3B0cik7CiAg
KiBzcnRwX2Vycl9zdGF0dXNfb2sgaXMgcmV0dXJuZWQsIHRoZW4gc3J0cF9oZHIgcG9pbnRzIHRv
IHRoZSByZXN1bHRpbmcKICAqIFJUUCBwYWNrZXQgYW5kICpsZW5fcHRyIGlzIHRoZSBudW1iZXIg
b2Ygb2N0ZXRzIGluIHRoYXQgcGFja2V0OwogICogb3RoZXJ3aXNlLCBubyBhc3N1bXB0aW9ucyBz
aG91bGQgYmUgbWFkZSBhYm91dCB0aGUgdmFsdWUgb2YgZWl0aGVyCi0gKiBkYXRhIGVsZW1lbnRz
LiAgCi0gKiAKKyAqIGRhdGEgZWxlbWVudHMuCisgKgogICogVGhlIHNlcXVlbmNlIG51bWJlcnMg
b2YgdGhlIFJUUCBwYWNrZXRzIHByZXNlbnRlZCB0byB0aGlzIGZ1bmN0aW9uCiAgKiBuZWVkIG5v
dCBiZSBjb25zZWN1dGl2ZSwgYnV0IHRoZXkgQGIgbXVzdCBiZSBvdXQgb2Ygb3JkZXIgYnkgbGVz
cwogICogdGhhbiAyXjE1ID0gMzIsNzY4IHBhY2tldHMuCi0gKiAKKyAqCiAgKiBAd2FybmluZyBU
aGlzIGZ1bmN0aW9uIGFzc3VtZXMgdGhhdCB0aGUgU1JUUCBwYWNrZXQgaXMgYWxpZ25lZCBvbiBh
CiAgKiAzMi1iaXQgYm91bmRhcnkuCiAgKgpAQCAtNTUwLDUyICs1NDUsNTIgQEAgc3J0cF9lcnJf
c3RhdHVzX3Qgc3J0cF91bnByb3RlY3Qoc3J0cF90IGN0eCwgdm9pZCAqc3J0cF9oZHIsIGludCAq
bGVuX3B0cik7CiAgKiBPdGhlcndpc2UsIHRoZSB2YWx1ZSBvZiB0aGUgZGF0YSB0byB3aGljaCBp
dCBwb2ludHMgaXMgdW5kZWZpbmVkLgogICoKICAqIEBwYXJhbSB1c2VfbWtpIGlzIGEgYm9vbGVh
biB0byB0ZWxsIHRoZSBzeXN0ZW0gaWYgbWtpIGlzIGJlaW5nIHVzZWQuICBJZgotICogc2V0IHRv
IGZhbHNlIHRoZW4gd2lsbCB1c2UgdGhlIGZpcnN0IHNldCBvZiBzZXNzaW9uIGtleXMuICBJZiBz
ZXQgdG8gdHJ1ZSB3aWxsCisgKiBzZXQgdG8gZmFsc2UgdGhlbiB3aWxsIHVzZSB0aGUgZmlyc3Qg
c2V0IG9mIHNlc3Npb24ga2V5cy4gIElmIHNldCB0byB0cnVlCisgKiB3aWxsCiAgKiB1c2UgdGhl
IHNlc3Npb24ga2V5cyBpZGVudGlmaWVkIGJ5IHRoZSBta2lfaW5kZXgKICAqCi0gKiBAcmV0dXJu
IAorICogQHJldHVybgogICogICAgLSBzcnRwX2Vycl9zdGF0dXNfb2sgICAgICAgICAgaWYgdGhl
IFJUUCBwYWNrZXQgaXMgdmFsaWQuCi0gKiAgICAtIHNydHBfZXJyX3N0YXR1c19hdXRoX2ZhaWwg
ICBpZiB0aGUgU1JUUCBwYWNrZXQgZmFpbGVkIHRoZSBtZXNzYWdlIAotICogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGF1dGhlbnRpY2F0aW9uIGNoZWNrLgotICogICAgLSBzcnRwX2Vycl9z
dGF0dXNfcmVwbGF5X2ZhaWwgaWYgdGhlIFNSVFAgcGFja2V0IGlzIGEgcmVwbGF5IChlLmcuIHBh
Y2tldCBoYXMKLSAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbHJlYWR5IGJlZW4gcHJv
Y2Vzc2VkIGFuZCBhY2NlcHRlZCkuCisgKiAgICAtIHNydHBfZXJyX3N0YXR1c19hdXRoX2ZhaWwg
ICBpZiB0aGUgU1JUUCBwYWNrZXQgZmFpbGVkIHRoZSBtZXNzYWdlCisgKiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBhdXRoZW50aWNhdGlvbiBjaGVjay4KKyAqICAgIC0gc3J0cF9l
cnJfc3RhdHVzX3JlcGxheV9mYWlsIGlmIHRoZSBTUlRQIHBhY2tldCBpcyBhIHJlcGxheSAoZS5n
LiBwYWNrZXQKKyAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhcyBhbHJlYWR5
IGJlZW4gcHJvY2Vzc2VkIGFuZCBhY2NlcHRlZCkuCiAgKiAgICAtIHNydHBfZXJyX3N0YXR1c19i
YWRfbWtpIGlmIHRoZSBNS0kgaW4gdGhlIHBhY2tldCBpcyBub3QgYSBrbm93biBNS0kgaWQKICAq
ICAgIC0gW290aGVyXSAgaWYgdGhlcmUgaGFzIGJlZW4gYW4gZXJyb3IgaW4gdGhlIGNyeXB0b2dy
YXBoaWMgbWVjaGFuaXNtcy4KICAqCiAgKi8KLQotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF91bnBy
b3RlY3RfbWtpKHNydHBfdCBjdHgsIHZvaWQgKnNydHBfaGRyLCBpbnQgKmxlbl9wdHIsCitzcnRw
X2Vycl9zdGF0dXNfdCBzcnRwX3VucHJvdGVjdF9ta2koc3J0cF90IGN0eCwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICB2b2lkICpzcnRwX2hkciwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBpbnQgKmxlbl9wdHIsCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IHVzZV9ta2kpOwogCiAvKioKICAqIEBicmll
ZiBzcnRwX2NyZWF0ZSgpIGFsbG9jYXRlcyBhbmQgaW5pdGlhbGl6ZXMgYW4gU1JUUCBzZXNzaW9u
LgogCiAgKiBUaGUgZnVuY3Rpb24gY2FsbCBzcnRwX2NyZWF0ZShzZXNzaW9uLCBwb2xpY3kpIGFs
bG9jYXRlcyBhbmQKLSAqIGluaXRpYWxpemVzIGFuIFNSVFAgc2Vzc2lvbiBjb250ZXh0LCBhcHBs
eWluZyB0aGUgZ2l2ZW4gcG9saWN5LiAKKyAqIGluaXRpYWxpemVzIGFuIFNSVFAgc2Vzc2lvbiBj
b250ZXh0LCBhcHBseWluZyB0aGUgZ2l2ZW4gcG9saWN5LgogICoKICAqIEBwYXJhbSBzZXNzaW9u
IGlzIGEgcG9pbnRlciB0byB0aGUgU1JUUCBzZXNzaW9uIHRvIHdoaWNoIHRoZSBwb2xpY3kgaXMK
ICAqIHRvIGJlIGFkZGVkLgotICogCisgKgogICogQHBhcmFtIHBvbGljeSBpcyB0aGUgc3J0cF9w
b2xpY3lfdCBzdHJ1Y3QgdGhhdCBkZXNjcmliZXMgdGhlIHBvbGljeQogICogZm9yIHRoZSBzZXNz
aW9uLiAgVGhlIHN0cnVjdCBtYXkgYmUgYSBzaW5nbGUgZWxlbWVudCwgb3IgaXQgbWF5IGJlCiAg
KiB0aGUgaGVhZCBvZiBhIGxpc3QsIGluIHdoaWNoIGNhc2UgZWFjaCBlbGVtZW50IG9mIHRoZSBs
aXN0IGlzCiAgKiBwcm9jZXNzZWQuICBJdCBtYXkgYWxzbyBiZSBOVUxMLCBpbiB3aGljaCBjYXNl
IHN0cmVhbXMgc2hvdWxkIGJlIGFkZGVkCiAgKiBsYXRlciB1c2luZyBzcnRwX2FkZF9zdHJlYW0o
KS4gIFRoZSBmaW5hbCBlbGVtZW50IG9mIHRoZSBsaXN0IEBiIG11c3QKICAqIGhhdmUgaXRzIGBu
ZXh0JyBmaWVsZCBzZXQgdG8gTlVMTC4KLSAqIAorICoKICAqIEByZXR1cm4KICAqICAgIC0gc3J0
cF9lcnJfc3RhdHVzX29rICAgICAgICAgICBpZiBjcmVhdGlvbiBzdWNjZWRlZC4KICAqICAgIC0g
c3J0cF9lcnJfc3RhdHVzX2FsbG9jX2ZhaWwgICBpZiBhbGxvY2F0aW9uIGZhaWxlZC4KICAqICAg
IC0gc3J0cF9lcnJfc3RhdHVzX2luaXRfZmFpbCAgICBpZiBpbml0aWFsaXphdGlvbiBmYWlsZWQu
CiAgKi8KLQogc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcmVhdGUoc3J0cF90ICpzZXNzaW9uLCBj
b25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3kpOwogCi0KIC8qKgogICogQGJyaWVmIHNydHBfYWRk
X3N0cmVhbSgpIGFsbG9jYXRlcyBhbmQgaW5pdGlhbGl6ZXMgYW4gU1JUUCBzdHJlYW0KICAqIHdp
dGhpbiBhIGdpdmVuIFNSVFAgc2Vzc2lvbi4KLSAqIAorICoKICAqIFRoZSBmdW5jdGlvbiBjYWxs
IHNydHBfYWRkX3N0cmVhbShzZXNzaW9uLCBwb2xpY3kpIGFsbG9jYXRlcyBhbmQKICAqIGluaXRp
YWxpemVzIGEgbmV3IFNSVFAgc3RyZWFtIHdpdGhpbiBhIGdpdmVuLCBwcmV2aW91c2x5IGNyZWF0
ZWQKICAqIHNlc3Npb24sIGFwcGx5aW5nIHRoZSBwb2xpY3kgZ2l2ZW4gYXMgdGhlIG90aGVyIGFy
Z3VtZW50IHRvIHRoYXQKQEAgLTYwNiwxMyArNjAxLDExIEBAIHNydHBfZXJyX3N0YXR1c190IHNy
dHBfY3JlYXRlKHNydHBfdCAqc2Vzc2lvbiwgY29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5KTsK
ICAqICAgIC0gc3J0cF9lcnJfc3RhdHVzX2FsbG9jX2ZhaWwgICBpZiBzdHJlYW0gYWxsb2NhdGlv
biBmYWlsZWQKICAqICAgIC0gc3J0cF9lcnJfc3RhdHVzX2luaXRfZmFpbCAgICBpZiBzdHJlYW0g
aW5pdGlhbGl6YXRpb24gZmFpbGVkLgogICovCi0KIHNydHBfZXJyX3N0YXR1c190IHNydHBfYWRk
X3N0cmVhbShzcnRwX3Qgc2Vzc2lvbiwgY29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5KTsKIAot
CiAvKioKICAqIEBicmllZiBzcnRwX3JlbW92ZV9zdHJlYW0oKSBkZWFsbG9jYXRlcyBhbiBTUlRQ
IHN0cmVhbS4KLSAqIAorICoKICAqIFRoZSBmdW5jdGlvbiBjYWxsIHNydHBfcmVtb3ZlX3N0cmVh
bShzZXNzaW9uLCBzc3JjKSByZW1vdmVzCiAgKiB0aGUgU1JUUCBzdHJlYW0gd2l0aCB0aGUgU1NS
QyB2YWx1ZSBzc3JjIGZyb20gdGhlIFNSVFAgc2Vzc2lvbgogICogY29udGV4dCBnaXZlbiBieSB0
aGUgYXJndW1lbnQgc2Vzc2lvbi4KQEAgLTYyNSwxMyArNjE4LDEyIEBAIHNydHBfZXJyX3N0YXR1
c190IHNydHBfYWRkX3N0cmVhbShzcnRwX3Qgc2Vzc2lvbiwgY29uc3Qgc3J0cF9wb2xpY3lfdCAq
cG9saWN5KTsKICAqCiAgKiBAd2FybmluZyBXaWxkY2FyZCBTU1JDIHZhbHVlcyBjYW5ub3QgYmUg
cmVtb3ZlZCBmcm9tIGEKICAqICAgICAgICAgIHNlc3Npb24uCi0gKiAKKyAqCiAgKiBAcmV0dXJu
CiAgKiAgICAtIHNydHBfZXJyX3N0YXR1c19vayAgICAgaWYgdGhlIHN0cmVhbSBkZWFsbG9jYXRp
b24gc3VjY2VkZWQuCiAgKiAgICAtIFtvdGhlcl0gICAgICAgICAgIG90aGVyd2lzZS4KICAqCiAg
Ki8KLQogc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9yZW1vdmVfc3RyZWFtKHNydHBfdCBzZXNzaW9u
LCB1bnNpZ25lZCBpbnQgc3NyYyk7CiAKIC8qKgpAQCAtNjU4LDcgKzY1MCw2IEBAIHNydHBfZXJy
X3N0YXR1c190IHNydHBfcmVtb3ZlX3N0cmVhbShzcnRwX3Qgc2Vzc2lvbiwgdW5zaWduZWQgaW50
IHNzcmMpOwogICogICAgLSBbb3RoZXJdICAgICAgICAgICAgICAgICBvdGhlcndpc2UuCiAgKgog
ICovCi0KIHNydHBfZXJyX3N0YXR1c190IHNydHBfdXBkYXRlKHNydHBfdCBzZXNzaW9uLCBjb25z
dCBzcnRwX3BvbGljeV90ICpwb2xpY3kpOwogCiAvKioKQEAgLTY4MiwxNSArNjczLDE1IEBAIHNy
dHBfZXJyX3N0YXR1c190IHNydHBfdXBkYXRlKHNydHBfdCBzZXNzaW9uLCBjb25zdCBzcnRwX3Bv
bGljeV90ICpwb2xpY3kpOwogICogICAgLSBbb3RoZXJdICAgICAgICAgICAgICAgICAgICAgIG90
aGVyd2lzZS4KICAqCiAgKi8KLQotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF91cGRhdGVfc3RyZWFt
KHNydHBfdCBzZXNzaW9uLCBjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3kpOworc3J0cF9lcnJf
c3RhdHVzX3Qgc3J0cF91cGRhdGVfc3RyZWFtKHNydHBfdCBzZXNzaW9uLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHNydHBfcG9saWN5X3QgKnBvbGljeSk7CiAK
IC8qKgogICogQGJyaWVmIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfcnRwX2RlZmF1bHQoKSBzZXRz
IGEgY3J5cHRvIHBvbGljeQogICogc3RydWN0dXJlIHRvIHRoZSBTUlRQIGRlZmF1bHQgcG9saWN5
IGZvciBSVFAgcHJvdGVjdGlvbi4KICAqCi0gKiBAcGFyYW0gcCBpcyBhIHBvaW50ZXIgdG8gdGhl
IHBvbGljeSBzdHJ1Y3R1cmUgdG8gYmUgc2V0IAotICogCisgKiBAcGFyYW0gcCBpcyBhIHBvaW50
ZXIgdG8gdGhlIHBvbGljeSBzdHJ1Y3R1cmUgdG8gYmUgc2V0CisgKgogICogVGhlIGZ1bmN0aW9u
IGNhbGwgY3J5cHRvX3BvbGljeV9zZXRfcnRwX2RlZmF1bHQoJnApIHNldHMgdGhlCiAgKiBjcnlw
dG9fcG9saWN5X3QgYXQgbG9jYXRpb24gcCB0byB0aGUgU1JUUCBkZWZhdWx0IHBvbGljeSBmb3Ig
UlRQCiAgKiBwcm90ZWN0aW9uLCBhcyBkZWZpbmVkIGluIHRoZSBzcGVjaWZpY2F0aW9uLiAgVGhp
cyBmdW5jdGlvbiBpcyBhCkBAIC02OTksMTkgKzY5MCwxOCBAQCBzcnRwX2Vycl9zdGF0dXNfdCBz
cnRwX3VwZGF0ZV9zdHJlYW0oc3J0cF90IHNlc3Npb24sIGNvbnN0IHNydHBfcG9saWN5X3QgKnBv
bGljeQogICogd2l0aCB0aGlzIGZ1bmN0aW9uIGNhbGwuICBEb2luZyBzbyBtYXkgYWxsb3cgeW91
ciBjb2RlIHRvIGJlCiAgKiBmb3J3YXJkIGNvbXBhdGlibGUgd2l0aCBsYXRlciB2ZXJzaW9ucyBv
ZiBsaWJTUlRQIHRoYXQgaW5jbHVkZSBtb3JlCiAgKiBlbGVtZW50cyBpbiB0aGUgY3J5cHRvX3Bv
bGljeV90IGRhdGF0eXBlLgotICogCisgKgogICogQHJldHVybiB2b2lkLgotICogCisgKgogICov
Ci0KIHZvaWQgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9ydHBfZGVmYXVsdChzcnRwX2NyeXB0b19w
b2xpY3lfdCAqcCk7CiAKIC8qKgogICogQGJyaWVmIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfcnRj
cF9kZWZhdWx0KCkgc2V0cyBhIGNyeXB0byBwb2xpY3kKICAqIHN0cnVjdHVyZSB0byB0aGUgU1JU
UCBkZWZhdWx0IHBvbGljeSBmb3IgUlRDUCBwcm90ZWN0aW9uLgogICoKLSAqIEBwYXJhbSBwIGlz
IGEgcG9pbnRlciB0byB0aGUgcG9saWN5IHN0cnVjdHVyZSB0byBiZSBzZXQgCi0gKiAKKyAqIEBw
YXJhbSBwIGlzIGEgcG9pbnRlciB0byB0aGUgcG9saWN5IHN0cnVjdHVyZSB0byBiZSBzZXQKKyAq
CiAgKiBUaGUgZnVuY3Rpb24gY2FsbCBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X3J0Y3BfZGVmYXVs
dCgmcCkgc2V0cyB0aGUKICAqIHNydHBfY3J5cHRvX3BvbGljeV90IGF0IGxvY2F0aW9uIHAgdG8g
dGhlIFNSVFAgZGVmYXVsdCBwb2xpY3kgZm9yIFJUQ1AKICAqIHByb3RlY3Rpb24sIGFzIGRlZmlu
ZWQgaW4gdGhlIHNwZWNpZmljYXRpb24uICBUaGlzIGZ1bmN0aW9uIGlzIGEKQEAgLTcyMCwzNyAr
NzEwLDM1IEBAIHZvaWQgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9ydHBfZGVmYXVsdChzcnRwX2Ny
eXB0b19wb2xpY3lfdCAqcCk7CiAgKiB3aXRoIHRoaXMgZnVuY3Rpb24gY2FsbC4gIERvaW5nIHNv
IG1heSBhbGxvdyB5b3VyIGNvZGUgdG8gYmUKICAqIGZvcndhcmQgY29tcGF0aWJsZSB3aXRoIGxh
dGVyIHZlcnNpb25zIG9mIGxpYlNSVFAgdGhhdCBpbmNsdWRlIG1vcmUKICAqIGVsZW1lbnRzIGlu
IHRoZSBzcnRwX2NyeXB0b19wb2xpY3lfdCBkYXRhdHlwZS4KLSAqIAorICoKICAqIEByZXR1cm4g
dm9pZC4KLSAqIAorICoKICAqLwotCiB2b2lkIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfcnRjcF9k
ZWZhdWx0KHNydHBfY3J5cHRvX3BvbGljeV90ICpwKTsKIAogLyoqCiAgKiBAYnJpZWYgc3J0cF9j
cnlwdG9fcG9saWN5X3NldF9hZXNfY21fMTI4X2htYWNfc2hhMV84MCgpIHNldHMgYSBjcnlwdG8K
ICAqIHBvbGljeSBzdHJ1Y3R1cmUgdG8gdGhlIFNSVFAgZGVmYXVsdCBwb2xpY3kgZm9yIFJUUCBw
cm90ZWN0aW9uLgogICoKLSAqIEBwYXJhbSBwIGlzIGEgcG9pbnRlciB0byB0aGUgcG9saWN5IHN0
cnVjdHVyZSB0byBiZSBzZXQgCi0gKiAKKyAqIEBwYXJhbSBwIGlzIGEgcG9pbnRlciB0byB0aGUg
cG9saWN5IHN0cnVjdHVyZSB0byBiZSBzZXQKKyAqCiAgKiBUaGUgZnVuY3Rpb24gc3J0cF9jcnlw
dG9fcG9saWN5X3NldF9hZXNfY21fMTI4X2htYWNfc2hhMV84MCgpIGlzIGEKICAqIHN5bm9ueW0g
Zm9yIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfcnRwX2RlZmF1bHQoKS4gIEl0IGNvbmZvcm1zIHRv
IHRoZQogICogbmFtaW5nIGNvbnZlbnRpb24gdXNlZCBpbiBSRkMgNDU2OCAoU0RQIFNlY3VyaXR5
IERlc2NyaXB0aW9ucyBmb3IKICAqIE1lZGlhIFN0cmVhbXMpLgotICogCisgKgogICogQHJldHVy
biB2b2lkLgotICogCisgKgogICovCi0KLSNkZWZpbmUgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9h
ZXNfY21fMTI4X2htYWNfc2hhMV84MChwKSBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X3J0cF9kZWZh
dWx0KHApCi0KKyNkZWZpbmUgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfY21fMTI4X2htYWNf
c2hhMV84MChwKSAgICAgICAgICAgICAgICAgICAgICBcCisgICAgc3J0cF9jcnlwdG9fcG9saWN5
X3NldF9ydHBfZGVmYXVsdChwKQogCiAvKioKICAqIEBicmllZiBzcnRwX2NyeXB0b19wb2xpY3lf
c2V0X2Flc19jbV8xMjhfaG1hY19zaGExXzMyKCkgc2V0cyBhIGNyeXB0bwogICogcG9saWN5IHN0
cnVjdHVyZSB0byBhIHNob3J0LWF1dGhlbnRpY2F0aW9uIHRhZyBwb2xpY3kKICAqCi0gKiBAcGFy
YW0gcCBpcyBhIHBvaW50ZXIgdG8gdGhlIHBvbGljeSBzdHJ1Y3R1cmUgdG8gYmUgc2V0IAotICog
CisgKiBAcGFyYW0gcCBpcyBhIHBvaW50ZXIgdG8gdGhlIHBvbGljeSBzdHJ1Y3R1cmUgdG8gYmUg
c2V0CisgKgogICogVGhlIGZ1bmN0aW9uIGNhbGwgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNf
Y21fMTI4X2htYWNfc2hhMV8zMigmcCkKICAqIHNldHMgdGhlIHNydHBfY3J5cHRvX3BvbGljeV90
IGF0IGxvY2F0aW9uIHAgdG8gdXNlIHBvbGljeQogICogQUVTX0NNXzEyOF9ITUFDX1NIQTFfMzIg
YXMgZGVmaW5lZCBpbiBSRkMgNDU2OC4KQEAgLTc2MCw3ICs3NDgsNyBAQCB2b2lkIHNydHBfY3J5
cHRvX3BvbGljeV9zZXRfcnRjcF9kZWZhdWx0KHNydHBfY3J5cHRvX3BvbGljeV90ICpwKTsKICAq
IGNvbnNpZGVyZWQgYWRlcXVhdGUgb25seSBmb3IgcHJvdGVjdGluZyBhdWRpbyBhbmQgdmlkZW8g
bWVkaWEgdGhhdAogICogdXNlIGEgc3RhdGVsZXNzIHBsYXliYWNrIGZ1bmN0aW9uLiAgU2VlIFNl
Y3Rpb24gNy41IG9mIFJGQyAzNzExCiAgKiAoaHR0cDovL3d3dy5pZXRmLm9yZy9yZmMvcmZjMzcx
MS50eHQpLgotICogCisgKgogICogVGhpcyBmdW5jdGlvbiBpcyBhIGNvbnZlbmllbmNlIHRoYXQg
aGVscHMgdG8gYXZvaWQgZGVhbGluZyBkaXJlY3RseQogICogd2l0aCB0aGUgcG9saWN5IGRhdGEg
c3RydWN0dXJlLiAgWW91IGFyZSBlbmNvdXJhZ2VkIHRvIGluaXRpYWxpemUKICAqIHBvbGljeSBl
bGVtZW50cyB3aXRoIHRoaXMgZnVuY3Rpb24gY2FsbC4gIERvaW5nIHNvIG1heSBhbGxvdyB5b3Vy
CkBAIC03NzMsMjUgKzc2MSwyMiBAQCB2b2lkIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfcnRjcF9k
ZWZhdWx0KHNydHBfY3J5cHRvX3BvbGljeV90ICpwKTsKICAqIChodHRwOi8vd3d3LmlldGYub3Jn
L3JmYy9yZmMzNzExLnR4dCkuCiAgKgogICogQHJldHVybiB2b2lkLgotICogCisgKgogICovCi0K
IHZvaWQgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfY21fMTI4X2htYWNfc2hhMV8zMihzcnRw
X2NyeXB0b19wb2xpY3lfdCAqcCk7CiAKLQotCiAvKioKICAqIEBicmllZiBzcnRwX2NyeXB0b19w
b2xpY3lfc2V0X2Flc19jbV8xMjhfbnVsbF9hdXRoKCkgc2V0cyBhIGNyeXB0bwogICogcG9saWN5
IHN0cnVjdHVyZSB0byBhbiBlbmNyeXB0aW9uLW9ubHkgcG9saWN5CiAgKgotICogQHBhcmFtIHAg
aXMgYSBwb2ludGVyIHRvIHRoZSBwb2xpY3kgc3RydWN0dXJlIHRvIGJlIHNldCAKLSAqIAorICog
QHBhcmFtIHAgaXMgYSBwb2ludGVyIHRvIHRoZSBwb2xpY3kgc3RydWN0dXJlIHRvIGJlIHNldAor
ICoKICAqIFRoZSBmdW5jdGlvbiBjYWxsIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2NtXzEy
OF9udWxsX2F1dGgoJnApIHNldHMKICAqIHRoZSBzcnRwX2NyeXB0b19wb2xpY3lfdCBhdCBsb2Nh
dGlvbiBwIHRvIHVzZSB0aGUgU1JUUCBkZWZhdWx0IGNpcGhlcgogICogKEFFUy0xMjggQ291bnRl
ciBNb2RlKSwgYnV0IHRvIHVzZSBubyBhdXRoZW50aWNhdGlvbiBtZXRob2QuICBUaGlzCiAgKiBw
b2xpY3kgaXMgTk9UIFJFQ09NTUVOREVEIHVubGVzcyBpdCBpcyB1bmF2b2lkYWJsZTsgc2VlIFNl
Y3Rpb24gNy41CiAgKiBvZiBSRkMgMzcxMSAoaHR0cDovL3d3dy5pZXRmLm9yZy9yZmMvcmZjMzcx
MS50eHQpLgotICogCisgKgogICogVGhpcyBmdW5jdGlvbiBpcyBhIGNvbnZlbmllbmNlIHRoYXQg
aGVscHMgdG8gYXZvaWQgZGVhbGluZyBkaXJlY3RseQogICogd2l0aCB0aGUgcG9saWN5IGRhdGEg
c3RydWN0dXJlLiAgWW91IGFyZSBlbmNvdXJhZ2VkIHRvIGluaXRpYWxpemUKICAqIHBvbGljeSBl
bGVtZW50cyB3aXRoIHRoaXMgZnVuY3Rpb24gY2FsbC4gIERvaW5nIHNvIG1heSBhbGxvdyB5b3Vy
CkBAIC04MDMsMjQgKzc4OCwyMiBAQCB2b2lkIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2Nt
XzEyOF9obWFjX3NoYTFfMzIoc3J0cF9jcnlwdG9fcG9saWN5X3QgKnApOwogICogU2VjdGlvbiA3
LjUgb2YgUkZDIDM3MTEgKGh0dHA6Ly93d3cuaWV0Zi5vcmcvcmZjL3JmYzM3MTEudHh0KS4KICAq
CiAgKiBAcmV0dXJuIHZvaWQuCi0gKiAKKyAqCiAgKi8KLQogdm9pZCBzcnRwX2NyeXB0b19wb2xp
Y3lfc2V0X2Flc19jbV8xMjhfbnVsbF9hdXRoKHNydHBfY3J5cHRvX3BvbGljeV90ICpwKTsKIAot
CiAvKioKICAqIEBicmllZiBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X251bGxfY2lwaGVyX2htYWNf
c2hhMV84MCgpIHNldHMgYSBjcnlwdG8KICAqIHBvbGljeSBzdHJ1Y3R1cmUgdG8gYW4gYXV0aGVu
dGljYXRpb24tb25seSBwb2xpY3kKICAqCi0gKiBAcGFyYW0gcCBpcyBhIHBvaW50ZXIgdG8gdGhl
IHBvbGljeSBzdHJ1Y3R1cmUgdG8gYmUgc2V0IAotICogCisgKiBAcGFyYW0gcCBpcyBhIHBvaW50
ZXIgdG8gdGhlIHBvbGljeSBzdHJ1Y3R1cmUgdG8gYmUgc2V0CisgKgogICogVGhlIGZ1bmN0aW9u
IGNhbGwgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9udWxsX2NpcGhlcl9obWFjX3NoYTFfODAoJnAp
CiAgKiBzZXRzIHRoZSBzcnRwX2NyeXB0b19wb2xpY3lfdCBhdCBsb2NhdGlvbiBwIHRvIHVzZSBI
TUFDLVNIQTEgd2l0aCBhbiA4MAogICogYml0IGF1dGhlbnRpY2F0aW9uIHRhZyB0byBwcm92aWRl
IG1lc3NhZ2UgYXV0aGVudGljYXRpb24sIGJ1dCB0bwogICogdXNlIG5vIGVuY3J5cHRpb24uICBU
aGlzIHBvbGljeSBpcyBOT1QgUkVDT01NRU5ERUQgZm9yIFNSVFAgdW5sZXNzCi0gKiB0aGVyZSBp
cyBhIHJlcXVpcmVtZW50IHRvIGZvcmVnbyBlbmNyeXB0aW9uLiAgCi0gKiAKKyAqIHRoZXJlIGlz
IGEgcmVxdWlyZW1lbnQgdG8gZm9yZWdvIGVuY3J5cHRpb24uCisgKgogICogVGhpcyBmdW5jdGlv
biBpcyBhIGNvbnZlbmllbmNlIHRoYXQgaGVscHMgdG8gYXZvaWQgZGVhbGluZyBkaXJlY3RseQog
ICogd2l0aCB0aGUgcG9saWN5IGRhdGEgc3RydWN0dXJlLiAgWW91IGFyZSBlbmNvdXJhZ2VkIHRv
IGluaXRpYWxpemUKICAqIHBvbGljeSBlbGVtZW50cyB3aXRoIHRoaXMgZnVuY3Rpb24gY2FsbC4g
IERvaW5nIHNvIG1heSBhbGxvdyB5b3VyCkBAIC04MjgsMjQgKzgxMSwyNCBAQCB2b2lkIHNydHBf
Y3J5cHRvX3BvbGljeV9zZXRfYWVzX2NtXzEyOF9udWxsX2F1dGgoc3J0cF9jcnlwdG9fcG9saWN5
X3QgKnApOwogICogaW5jbHVkZSBtb3JlIGVsZW1lbnRzIGluIHRoZSBzcnRwX2NyeXB0b19wb2xp
Y3lfdCBkYXRhdHlwZS4KICAqCiAgKiBAd2FybmluZyBUaGlzIHBvbGljeSBpcyBOT1QgUkVDT01N
RU5ERUQgZm9yIFNSVFAgdW5sZXNzIHRoZXJlIGlzIGEKLSAqIHJlcXVpcmVtZW50IHRvIGZvcmVn
byBlbmNyeXB0aW9uLiAgCisgKiByZXF1aXJlbWVudCB0byBmb3JlZ28gZW5jcnlwdGlvbi4KICAq
CiAgKiBAcmV0dXJuIHZvaWQuCi0gKiAKKyAqCiAgKi8KIHZvaWQgc3J0cF9jcnlwdG9fcG9saWN5
X3NldF9udWxsX2NpcGhlcl9obWFjX3NoYTFfODAoc3J0cF9jcnlwdG9fcG9saWN5X3QgKnApOwog
CiAvKioKICAqIEBicmllZiBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X251bGxfY2lwaGVyX2htYWNf
bnVsbCgpIHNldHMgYSBjcnlwdG8KLSAqIHBvbGljeSBzdHJ1Y3R1cmUgdG8gdXNlIG5vIGVuY3J5
cHRpb24gb3IgYXV0aGVudGljYXRpb24uIAorICogcG9saWN5IHN0cnVjdHVyZSB0byB1c2Ugbm8g
ZW5jcnlwdGlvbiBvciBhdXRoZW50aWNhdGlvbi4KKyAqCisgKiBAcGFyYW0gcCBpcyBhIHBvaW50
ZXIgdG8gdGhlIHBvbGljeSBzdHJ1Y3R1cmUgdG8gYmUgc2V0CiAgKgotICogQHBhcmFtIHAgaXMg
YSBwb2ludGVyIHRvIHRoZSBwb2xpY3kgc3RydWN0dXJlIHRvIGJlIHNldCAKLSAqIAogICogVGhl
IGZ1bmN0aW9uIGNhbGwgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9udWxsX2NpcGhlcl9obWFjX251
bGwoJnApCiAgKiBzZXRzIHRoZSBzcnRwX2NyeXB0b19wb2xpY3lfdCBhdCBsb2NhdGlvbiBwIHRv
IHVzZSBubyBlbmNyeXB0aW9uIGFuZAogICogbm8gYXV0aGVudGljYXRpb24uICBUaGlzIHBvbGlj
eSBzaG91bGQgb25seSBiZSB1c2VkIGZvciB0ZXN0aW5nIGFuZAotICogdHJvdWJsZXNob290aW5n
bC4gCi0gKiAKKyAqIHRyb3VibGVzaG9vdGluZ2wuCisgKgogICogVGhpcyBmdW5jdGlvbiBpcyBh
IGNvbnZlbmllbmNlIHRoYXQgaGVscHMgdG8gYXZvaWQgZGVhbGluZyBkaXJlY3RseQogICogd2l0
aCB0aGUgcG9saWN5IGRhdGEgc3RydWN0dXJlLiAgWW91IGFyZSBlbmNvdXJhZ2VkIHRvIGluaXRp
YWxpemUKICAqIHBvbGljeSBlbGVtZW50cyB3aXRoIHRoaXMgZnVuY3Rpb24gY2FsbC4gIERvaW5n
IHNvIG1heSBhbGxvdyB5b3VyCkBAIC04NTMsMjcgKzgzNiwyNiBAQCB2b2lkIHNydHBfY3J5cHRv
X3BvbGljeV9zZXRfbnVsbF9jaXBoZXJfaG1hY19zaGExXzgwKHNydHBfY3J5cHRvX3BvbGljeV90
ICpwKTsKICAqIGluY2x1ZGUgbW9yZSBlbGVtZW50cyBpbiB0aGUgc3J0cF9jcnlwdG9fcG9saWN5
X3QgZGF0YXR5cGUuCiAgKgogICogQHdhcm5pbmcgVGhpcyBwb2xpY3kgaXMgTk9UIFJFQ09NTUVO
REVEIGZvciBTUlRQIHVubGVzcyB0aGVyZSBpcyBhCi0gKiByZXF1aXJlbWVudCB0byBmb3JlZ28g
ZW5jcnlwdGlvbiBhbmQgYXV0aGVudGljYXRpb24uICAKKyAqIHJlcXVpcmVtZW50IHRvIGZvcmVn
byBlbmNyeXB0aW9uIGFuZCBhdXRoZW50aWNhdGlvbi4KICAqCiAgKiBAcmV0dXJuIHZvaWQuCi0g
KiAKKyAqCiAgKi8KIHZvaWQgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9udWxsX2NpcGhlcl9obWFj
X251bGwoc3J0cF9jcnlwdG9fcG9saWN5X3QgKnApOwogCi0KIC8qKgogICogQGJyaWVmIHNydHBf
Y3J5cHRvX3BvbGljeV9zZXRfYWVzX2NtXzI1Nl9obWFjX3NoYTFfODAoKSBzZXRzIGEgY3J5cHRv
Ci0gKiBwb2xpY3kgc3RydWN0dXJlIHRvIGEgZW5jcnlwdGlvbiBhbmQgYXV0aGVudGljYXRpb24g
cG9saWN5IHVzaW5nIEFFUy0yNTYgCisgKiBwb2xpY3kgc3RydWN0dXJlIHRvIGEgZW5jcnlwdGlv
biBhbmQgYXV0aGVudGljYXRpb24gcG9saWN5IHVzaW5nIEFFUy0yNTYKICAqIGZvciBSVFAgcHJv
dGVjdGlvbi4KICAqCi0gKiBAcGFyYW0gcCBpcyBhIHBvaW50ZXIgdG8gdGhlIHBvbGljeSBzdHJ1
Y3R1cmUgdG8gYmUgc2V0IAotICogCisgKiBAcGFyYW0gcCBpcyBhIHBvaW50ZXIgdG8gdGhlIHBv
bGljeSBzdHJ1Y3R1cmUgdG8gYmUgc2V0CisgKgogICogVGhlIGZ1bmN0aW9uIGNhbGwgc3J0cF9j
cnlwdG9fcG9saWN5X3NldF9hZXNfY21fMjU2X2htYWNfc2hhMV84MCgmcCkKICAqIHNldHMgdGhl
IHNydHBfY3J5cHRvX3BvbGljeV90IGF0IGxvY2F0aW9uIHAgdG8gdXNlIHBvbGljeQogICogQUVT
X0NNXzI1Nl9ITUFDX1NIQTFfODAgYXMgZGVmaW5lZCBpbiBSRkMgNjE4OC4gIFRoaXMgcG9saWN5
IHVzZXMgQUVTLTI1NgogICogQ291bnRlciBNb2RlIGVuY3J5cHRpb24gYW5kIEhNQUMtU0hBMSBh
dXRoZW50aWNhdGlvbiwgd2l0aCBhbiA4MCBiaXQKICAqIGF1dGhlbnRpY2F0aW9uIHRhZy4KLSAq
IAorICoKICAqIFRoaXMgZnVuY3Rpb24gaXMgYSBjb252ZW5pZW5jZSB0aGF0IGhlbHBzIHRvIGF2
b2lkIGRlYWxpbmcgZGlyZWN0bHkKICAqIHdpdGggdGhlIHBvbGljeSBkYXRhIHN0cnVjdHVyZS4g
IFlvdSBhcmUgZW5jb3VyYWdlZCB0byBpbml0aWFsaXplCiAgKiBwb2xpY3kgZWxlbWVudHMgd2l0
aCB0aGlzIGZ1bmN0aW9uIGNhbGwuICBEb2luZyBzbyBtYXkgYWxsb3cgeW91cgpAQCAtODgxLDE5
ICs4NjMsMTcgQEAgdm9pZCBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X251bGxfY2lwaGVyX2htYWNf
bnVsbChzcnRwX2NyeXB0b19wb2xpY3lfdCAqcCk7CiAgKiBpbmNsdWRlIG1vcmUgZWxlbWVudHMg
aW4gdGhlIHNydHBfY3J5cHRvX3BvbGljeV90IGRhdGF0eXBlLgogICoKICAqIEByZXR1cm4gdm9p
ZC4KLSAqIAorICoKICAqLwotCiB2b2lkIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2NtXzI1
Nl9obWFjX3NoYTFfODAoc3J0cF9jcnlwdG9fcG9saWN5X3QgKnApOwogCi0KIC8qKgogICogQGJy
aWVmIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2NtXzI1Nl9obWFjX3NoYTFfMzIoKSBzZXRz
IGEgY3J5cHRvCiAgKiBwb2xpY3kgc3RydWN0dXJlIHRvIGEgc2hvcnQtYXV0aGVudGljYXRpb24g
dGFnIHBvbGljeSB1c2luZyBBRVMtMjU2CiAgKiBlbmNyeXB0aW9uLgogICoKLSAqIEBwYXJhbSBw
IGlzIGEgcG9pbnRlciB0byB0aGUgcG9saWN5IHN0cnVjdHVyZSB0byBiZSBzZXQgCi0gKiAKKyAq
IEBwYXJhbSBwIGlzIGEgcG9pbnRlciB0byB0aGUgcG9saWN5IHN0cnVjdHVyZSB0byBiZSBzZXQK
KyAqCiAgKiBUaGUgZnVuY3Rpb24gY2FsbCBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19jbV8y
NTZfaG1hY19zaGExXzMyKCZwKQogICogc2V0cyB0aGUgc3J0cF9jcnlwdG9fcG9saWN5X3QgYXQg
bG9jYXRpb24gcCB0byB1c2UgcG9saWN5CiAgKiBBRVNfQ01fMjU2X0hNQUNfU0hBMV8zMiBhcyBk
ZWZpbmVkIGluIFJGQyA2MTg4LiAgVGhpcyBwb2xpY3kgdXNlcyBBRVMtMjU2CkBAIC05MDIsNyAr
ODgyLDcgQEAgdm9pZCBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19jbV8yNTZfaG1hY19zaGEx
XzgwKHNydHBfY3J5cHRvX3BvbGljeV90ICpwKTsKICAqIGNvbnNpZGVyZWQgYWRlcXVhdGUgb25s
eSBmb3IgcHJvdGVjdGluZyBhdWRpbyBhbmQgdmlkZW8gbWVkaWEgdGhhdAogICogdXNlIGEgc3Rh
dGVsZXNzIHBsYXliYWNrIGZ1bmN0aW9uLiAgU2VlIFNlY3Rpb24gNy41IG9mIFJGQyAzNzExCiAg
KiAoaHR0cDovL3d3dy5pZXRmLm9yZy9yZmMvcmZjMzcxMS50eHQpLgotICogCisgKgogICogVGhp
cyBmdW5jdGlvbiBpcyBhIGNvbnZlbmllbmNlIHRoYXQgaGVscHMgdG8gYXZvaWQgZGVhbGluZyBk
aXJlY3RseQogICogd2l0aCB0aGUgcG9saWN5IGRhdGEgc3RydWN0dXJlLiAgWW91IGFyZSBlbmNv
dXJhZ2VkIHRvIGluaXRpYWxpemUKICAqIHBvbGljeSBlbGVtZW50cyB3aXRoIHRoaXMgZnVuY3Rp
b24gY2FsbC4gIERvaW5nIHNvIG1heSBhbGxvdyB5b3VyCkBAIC05MTUsOSArODk1LDggQEAgdm9p
ZCBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19jbV8yNTZfaG1hY19zaGExXzgwKHNydHBfY3J5
cHRvX3BvbGljeV90ICpwKTsKICAqIChodHRwOi8vd3d3LmlldGYub3JnL3JmYy9yZmMzNzExLnR4
dCkuCiAgKgogICogQHJldHVybiB2b2lkLgotICogCisgKgogICovCi0KIHZvaWQgc3J0cF9jcnlw
dG9fcG9saWN5X3NldF9hZXNfY21fMjU2X2htYWNfc2hhMV8zMihzcnRwX2NyeXB0b19wb2xpY3lf
dCAqcCk7CiAKIC8qKgpAQCAtOTQ3LDcgKzkyNiw2IEBAIHZvaWQgc3J0cF9jcnlwdG9fcG9saWN5
X3NldF9hZXNfY21fMjU2X2htYWNfc2hhMV8zMihzcnRwX2NyeXB0b19wb2xpY3lfdCAqcCk7CiAg
Ki8KIHZvaWQgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfY21fMjU2X251bGxfYXV0aChzcnRw
X2NyeXB0b19wb2xpY3lfdCAqcCk7CiAKLQogLyoqCiAgKiBAYnJpZWYgc3J0cF9jcnlwdG9fcG9s
aWN5X3NldF9hZXNfY21fMTkyX2htYWNfc2hhMV84MCgpIHNldHMgYSBjcnlwdG8KICAqIHBvbGlj
eSBzdHJ1Y3R1cmUgdG8gYSBlbmNyeXB0aW9uIGFuZCBhdXRoZW50aWNhdGlvbiBwb2xpY3kgdXNp
bmcgQUVTLTE5MgpAQCAtOTcyLDcgKzk1MCw2IEBAIHZvaWQgc3J0cF9jcnlwdG9fcG9saWN5X3Nl
dF9hZXNfY21fMjU2X251bGxfYXV0aChzcnRwX2NyeXB0b19wb2xpY3lfdCAqcCk7CiAgKi8KIHZv
aWQgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfY21fMTkyX2htYWNfc2hhMV84MChzcnRwX2Ny
eXB0b19wb2xpY3lfdCAqcCk7CiAKLQogLyoqCiAgKiBAYnJpZWYgc3J0cF9jcnlwdG9fcG9saWN5
X3NldF9hZXNfY21fMTkyX2htYWNfc2hhMV8zMigpIHNldHMgYSBjcnlwdG8KICAqIHBvbGljeSBz
dHJ1Y3R1cmUgdG8gYSBzaG9ydC1hdXRoZW50aWNhdGlvbiB0YWcgcG9saWN5IHVzaW5nIEFFUy0x
OTIKQEAgLTEwMDUsNyArOTgyLDYgQEAgdm9pZCBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19j
bV8xOTJfaG1hY19zaGExXzgwKHNydHBfY3J5cHRvX3BvbGljeV90ICpwKTsKICAqLwogdm9pZCBz
cnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19jbV8xOTJfaG1hY19zaGExXzMyKHNydHBfY3J5cHRv
X3BvbGljeV90ICpwKTsKIAotCiAvKioKICAqIEBicmllZiBzcnRwX2NyeXB0b19wb2xpY3lfc2V0
X2Flc19jbV8xOTJfbnVsbF9hdXRoKCkgc2V0cyBhIGNyeXB0bwogICogcG9saWN5IHN0cnVjdHVy
ZSB0byBhbiBlbmNyeXB0aW9uLW9ubHkgcG9saWN5CkBAIC0xMDMzLDE5ICsxMDA5LDE4IEBAIHZv
aWQgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfY21fMTkyX2htYWNfc2hhMV8zMihzcnRwX2Ny
eXB0b19wb2xpY3lfdCAqcCk7CiAgKi8KIHZvaWQgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNf
Y21fMTkyX251bGxfYXV0aChzcnRwX2NyeXB0b19wb2xpY3lfdCAqcCk7CiAKLQogLyoqCiAgKiBA
YnJpZWYgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfZ2NtXzEyOF84X2F1dGgoKSBzZXRzIGEg
Y3J5cHRvCiAgKiBwb2xpY3kgc3RydWN0dXJlIHRvIGFuIEFFQUQgZW5jcnlwdGlvbiBwb2xpY3ku
CiAgKgotICogQHBhcmFtIHAgaXMgYSBwb2ludGVyIHRvIHRoZSBwb2xpY3kgc3RydWN0dXJlIHRv
IGJlIHNldCAKLSAqIAorICogQHBhcmFtIHAgaXMgYSBwb2ludGVyIHRvIHRoZSBwb2xpY3kgc3Ry
dWN0dXJlIHRvIGJlIHNldAorICoKICAqIFRoZSBmdW5jdGlvbiBjYWxsIHNydHBfY3J5cHRvX3Bv
bGljeV9zZXRfYWVzX2djbV8xMjhfOF9hdXRoKCZwKSBzZXRzCiAgKiB0aGUgc3J0cF9jcnlwdG9f
cG9saWN5X3QgYXQgbG9jYXRpb24gcCB0byB1c2UgdGhlIFNSVFAgZGVmYXVsdCBjaXBoZXIKICAq
IChBRVMtMTI4IEdhbG9pcyBDb3VudGVyIE1vZGUpIHdpdGggOCBvY3RldCBhdXRoIHRhZy4gIFRo
aXMKICAqIHBvbGljeSBhcHBsaWVzIGNvbmZpZGVudGlhbGl0eSBhbmQgYXV0aGVudGljYXRpb24g
dG8gYm90aCB0aGUKICAqIFJUUCBhbmQgUlRDUCBwYWNrZXRzLgotICogCisgKgogICogVGhpcyBm
dW5jdGlvbiBpcyBhIGNvbnZlbmllbmNlIHRoYXQgaGVscHMgdG8gYXZvaWQgZGVhbGluZyBkaXJl
Y3RseQogICogd2l0aCB0aGUgcG9saWN5IGRhdGEgc3RydWN0dXJlLiAgWW91IGFyZSBlbmNvdXJh
Z2VkIHRvIGluaXRpYWxpemUKICAqIHBvbGljeSBlbGVtZW50cyB3aXRoIHRoaXMgZnVuY3Rpb24g
Y2FsbC4gIERvaW5nIHNvIG1heSBhbGxvdyB5b3VyCkBAIC0xMDUzLDcgKzEwMjgsNyBAQCB2b2lk
IHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2NtXzE5Ml9udWxsX2F1dGgoc3J0cF9jcnlwdG9f
cG9saWN5X3QgKnApOwogICogaW5jbHVkZSBtb3JlIGVsZW1lbnRzIGluIHRoZSBzcnRwX2NyeXB0
b19wb2xpY3lfdCBkYXRhdHlwZS4KICAqCiAgKiBAcmV0dXJuIHZvaWQuCi0gKiAKKyAqCiAgKi8K
IHZvaWQgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfZ2NtXzEyOF84X2F1dGgoc3J0cF9jcnlw
dG9fcG9saWN5X3QgKnApOwogCkBAIC0xMDYxLDE0ICsxMDM2LDE0IEBAIHZvaWQgc3J0cF9jcnlw
dG9fcG9saWN5X3NldF9hZXNfZ2NtXzEyOF84X2F1dGgoc3J0cF9jcnlwdG9fcG9saWN5X3QgKnAp
OwogICogQGJyaWVmIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2djbV8yNTZfOF9hdXRoKCkg
c2V0cyBhIGNyeXB0bwogICogcG9saWN5IHN0cnVjdHVyZSB0byBhbiBBRUFEIGVuY3J5cHRpb24g
cG9saWN5CiAgKgotICogQHBhcmFtIHAgaXMgYSBwb2ludGVyIHRvIHRoZSBwb2xpY3kgc3RydWN0
dXJlIHRvIGJlIHNldCAKLSAqIAorICogQHBhcmFtIHAgaXMgYSBwb2ludGVyIHRvIHRoZSBwb2xp
Y3kgc3RydWN0dXJlIHRvIGJlIHNldAorICoKICAqIFRoZSBmdW5jdGlvbiBjYWxsIHNydHBfY3J5
cHRvX3BvbGljeV9zZXRfYWVzX2djbV8yNTZfOF9hdXRoKCZwKSBzZXRzCiAgKiB0aGUgc3J0cF9j
cnlwdG9fcG9saWN5X3QgYXQgbG9jYXRpb24gcCB0byB1c2UgdGhlIFNSVFAgZGVmYXVsdCBjaXBo
ZXIKLSAqIChBRVMtMjU2IEdhbG9pcyBDb3VudGVyIE1vZGUpIHdpdGggOCBvY3RldCBhdXRoIHRh
Zy4gIFRoaXMgCisgKiAoQUVTLTI1NiBHYWxvaXMgQ291bnRlciBNb2RlKSB3aXRoIDggb2N0ZXQg
YXV0aCB0YWcuICBUaGlzCiAgKiBwb2xpY3kgYXBwbGllcyBjb25maWRlbnRpYWxpdHkgYW5kIGF1
dGhlbnRpY2F0aW9uIHRvIGJvdGggdGhlCiAgKiBSVFAgYW5kIFJUQ1AgcGFja2V0cy4KLSAqIAor
ICoKICAqIFRoaXMgZnVuY3Rpb24gaXMgYSBjb252ZW5pZW5jZSB0aGF0IGhlbHBzIHRvIGF2b2lk
IGRlYWxpbmcgZGlyZWN0bHkKICAqIHdpdGggdGhlIHBvbGljeSBkYXRhIHN0cnVjdHVyZS4gIFlv
dSBhcmUgZW5jb3VyYWdlZCB0byBpbml0aWFsaXplCiAgKiBwb2xpY3kgZWxlbWVudHMgd2l0aCB0
aGlzIGZ1bmN0aW9uIGNhbGwuICBEb2luZyBzbyBtYXkgYWxsb3cgeW91cgpAQCAtMTA3Niw3ICsx
MDUxLDcgQEAgdm9pZCBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21fMTI4XzhfYXV0aChz
cnRwX2NyeXB0b19wb2xpY3lfdCAqcCk7CiAgKiBpbmNsdWRlIG1vcmUgZWxlbWVudHMgaW4gdGhl
IHNydHBfY3J5cHRvX3BvbGljeV90IGRhdGF0eXBlLgogICoKICAqIEByZXR1cm4gdm9pZC4KLSAq
IAorICoKICAqLwogdm9pZCBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21fMjU2XzhfYXV0
aChzcnRwX2NyeXB0b19wb2xpY3lfdCAqcCk7CiAKQEAgLTEwODQsMTQgKzEwNTksMTQgQEAgdm9p
ZCBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21fMjU2XzhfYXV0aChzcnRwX2NyeXB0b19w
b2xpY3lfdCAqcCk7CiAgKiBAYnJpZWYgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfZ2NtXzEy
OF84X29ubHlfYXV0aCgpIHNldHMgYSBjcnlwdG8KICAqIHBvbGljeSBzdHJ1Y3R1cmUgdG8gYW4g
QUVBRCBhdXRoZW50aWNhdGlvbi1vbmx5IHBvbGljeQogICoKLSAqIEBwYXJhbSBwIGlzIGEgcG9p
bnRlciB0byB0aGUgcG9saWN5IHN0cnVjdHVyZSB0byBiZSBzZXQgCi0gKiAKKyAqIEBwYXJhbSBw
IGlzIGEgcG9pbnRlciB0byB0aGUgcG9saWN5IHN0cnVjdHVyZSB0byBiZSBzZXQKKyAqCiAgKiBU
aGUgZnVuY3Rpb24gY2FsbCBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21fMTI4Xzhfb25s
eV9hdXRoKCZwKSBzZXRzCiAgKiB0aGUgc3J0cF9jcnlwdG9fcG9saWN5X3QgYXQgbG9jYXRpb24g
cCB0byB1c2UgdGhlIFNSVFAgZGVmYXVsdCBjaXBoZXIKLSAqIChBRVMtMTI4IEdhbG9pcyBDb3Vu
dGVyIE1vZGUpIHdpdGggOCBvY3RldCBhdXRoIHRhZy4gIFRoaXMgcG9saWN5IAotICogYXBwbGll
cyBjb25maWRlbnRpYWxpdHkgYW5kIGF1dGhlbnRpY2F0aW9uIHRvIHRoZSBSVFAgcGFja2V0cywg
CisgKiAoQUVTLTEyOCBHYWxvaXMgQ291bnRlciBNb2RlKSB3aXRoIDggb2N0ZXQgYXV0aCB0YWcu
ICBUaGlzIHBvbGljeQorICogYXBwbGllcyBjb25maWRlbnRpYWxpdHkgYW5kIGF1dGhlbnRpY2F0
aW9uIHRvIHRoZSBSVFAgcGFja2V0cywKICAqIGJ1dCBvbmx5IGF1dGhlbnRpY2F0aW9uIHRvIHRo
ZSBSVENQIHBhY2tldHMuCi0gKiAKKyAqCiAgKiBUaGlzIGZ1bmN0aW9uIGlzIGEgY29udmVuaWVu
Y2UgdGhhdCBoZWxwcyB0byBhdm9pZCBkZWFsaW5nIGRpcmVjdGx5CiAgKiB3aXRoIHRoZSBwb2xp
Y3kgZGF0YSBzdHJ1Y3R1cmUuICBZb3UgYXJlIGVuY291cmFnZWQgdG8gaW5pdGlhbGl6ZQogICog
cG9saWN5IGVsZW1lbnRzIHdpdGggdGhpcyBmdW5jdGlvbiBjYWxsLiAgRG9pbmcgc28gbWF5IGFs
bG93IHlvdXIKQEAgLTEwOTksNyArMTA3NCw3IEBAIHZvaWQgc3J0cF9jcnlwdG9fcG9saWN5X3Nl
dF9hZXNfZ2NtXzI1Nl84X2F1dGgoc3J0cF9jcnlwdG9fcG9saWN5X3QgKnApOwogICogaW5jbHVk
ZSBtb3JlIGVsZW1lbnRzIGluIHRoZSBzcnRwX2NyeXB0b19wb2xpY3lfdCBkYXRhdHlwZS4KICAq
CiAgKiBAcmV0dXJuIHZvaWQuCi0gKiAKKyAqCiAgKi8KIHZvaWQgc3J0cF9jcnlwdG9fcG9saWN5
X3NldF9hZXNfZ2NtXzEyOF84X29ubHlfYXV0aChzcnRwX2NyeXB0b19wb2xpY3lfdCAqcCk7CiAK
QEAgLTExMDcsMTQgKzEwODIsMTQgQEAgdm9pZCBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19n
Y21fMTI4Xzhfb25seV9hdXRoKHNydHBfY3J5cHRvX3BvbGljeV90ICpwKTsKICAqIEBicmllZiBz
cnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21fMjU2Xzhfb25seV9hdXRoKCkgc2V0cyBhIGNy
eXB0bwogICogcG9saWN5IHN0cnVjdHVyZSB0byBhbiBBRUFEIGF1dGhlbnRpY2F0aW9uLW9ubHkg
cG9saWN5CiAgKgotICogQHBhcmFtIHAgaXMgYSBwb2ludGVyIHRvIHRoZSBwb2xpY3kgc3RydWN0
dXJlIHRvIGJlIHNldCAKLSAqIAorICogQHBhcmFtIHAgaXMgYSBwb2ludGVyIHRvIHRoZSBwb2xp
Y3kgc3RydWN0dXJlIHRvIGJlIHNldAorICoKICAqIFRoZSBmdW5jdGlvbiBjYWxsIHNydHBfY3J5
cHRvX3BvbGljeV9zZXRfYWVzX2djbV8yNTZfOF9vbmx5X2F1dGgoJnApIHNldHMKICAqIHRoZSBz
cnRwX2NyeXB0b19wb2xpY3lfdCBhdCBsb2NhdGlvbiBwIHRvIHVzZSB0aGUgU1JUUCBkZWZhdWx0
IGNpcGhlcgotICogKEFFUy0yNTYgR2Fsb2lzIENvdW50ZXIgTW9kZSkgd2l0aCA4IG9jdGV0IGF1
dGggdGFnLiAgVGhpcyBwb2xpY3kgCi0gKiBhcHBsaWVzIGNvbmZpZGVudGlhbGl0eSBhbmQgYXV0
aGVudGljYXRpb24gdG8gdGhlIFJUUCBwYWNrZXRzLCAKKyAqIChBRVMtMjU2IEdhbG9pcyBDb3Vu
dGVyIE1vZGUpIHdpdGggOCBvY3RldCBhdXRoIHRhZy4gIFRoaXMgcG9saWN5CisgKiBhcHBsaWVz
IGNvbmZpZGVudGlhbGl0eSBhbmQgYXV0aGVudGljYXRpb24gdG8gdGhlIFJUUCBwYWNrZXRzLAog
ICogYnV0IG9ubHkgYXV0aGVudGljYXRpb24gdG8gdGhlIFJUQ1AgcGFja2V0cy4KLSAqIAorICoK
ICAqIFRoaXMgZnVuY3Rpb24gaXMgYSBjb252ZW5pZW5jZSB0aGF0IGhlbHBzIHRvIGF2b2lkIGRl
YWxpbmcgZGlyZWN0bHkKICAqIHdpdGggdGhlIHBvbGljeSBkYXRhIHN0cnVjdHVyZS4gIFlvdSBh
cmUgZW5jb3VyYWdlZCB0byBpbml0aWFsaXplCiAgKiBwb2xpY3kgZWxlbWVudHMgd2l0aCB0aGlz
IGZ1bmN0aW9uIGNhbGwuICBEb2luZyBzbyBtYXkgYWxsb3cgeW91cgpAQCAtMTEyMiw3ICsxMDk3
LDcgQEAgdm9pZCBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21fMTI4Xzhfb25seV9hdXRo
KHNydHBfY3J5cHRvX3BvbGljeV90ICpwKTsKICAqIGluY2x1ZGUgbW9yZSBlbGVtZW50cyBpbiB0
aGUgc3J0cF9jcnlwdG9fcG9saWN5X3QgZGF0YXR5cGUuCiAgKgogICogQHJldHVybiB2b2lkLgot
ICogCisgKgogICovCiB2b2lkIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2djbV8yNTZfOF9v
bmx5X2F1dGgoc3J0cF9jcnlwdG9fcG9saWN5X3QgKnApOwogCkBAIC0xMTMwLDE0ICsxMTA1LDE0
IEBAIHZvaWQgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfZ2NtXzI1Nl84X29ubHlfYXV0aChz
cnRwX2NyeXB0b19wb2xpY3lfdCAqcCk7CiAgKiBAYnJpZWYgc3J0cF9jcnlwdG9fcG9saWN5X3Nl
dF9hZXNfZ2NtXzEyOF8xNl9hdXRoKCkgc2V0cyBhIGNyeXB0bwogICogcG9saWN5IHN0cnVjdHVy
ZSB0byBhbiBBRUFEIGVuY3J5cHRpb24gcG9saWN5LgogICoKLSAqIEBwYXJhbSBwIGlzIGEgcG9p
bnRlciB0byB0aGUgcG9saWN5IHN0cnVjdHVyZSB0byBiZSBzZXQgCi0gKiAKKyAqIEBwYXJhbSBw
IGlzIGEgcG9pbnRlciB0byB0aGUgcG9saWN5IHN0cnVjdHVyZSB0byBiZSBzZXQKKyAqCiAgKiBU
aGUgZnVuY3Rpb24gY2FsbCBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21fMTI4XzE2X2F1
dGgoJnApIHNldHMKICAqIHRoZSBzcnRwX2NyeXB0b19wb2xpY3lfdCBhdCBsb2NhdGlvbiBwIHRv
IHVzZSB0aGUgU1JUUCBkZWZhdWx0IGNpcGhlcgogICogKEFFUy0xMjggR2Fsb2lzIENvdW50ZXIg
TW9kZSkgd2l0aCAxNiBvY3RldCBhdXRoIHRhZy4gIFRoaXMKICAqIHBvbGljeSBhcHBsaWVzIGNv
bmZpZGVudGlhbGl0eSBhbmQgYXV0aGVudGljYXRpb24gdG8gYm90aCB0aGUKICAqIFJUUCBhbmQg
UlRDUCBwYWNrZXRzLgotICogCisgKgogICogVGhpcyBmdW5jdGlvbiBpcyBhIGNvbnZlbmllbmNl
IHRoYXQgaGVscHMgdG8gYXZvaWQgZGVhbGluZyBkaXJlY3RseQogICogd2l0aCB0aGUgcG9saWN5
IGRhdGEgc3RydWN0dXJlLiAgWW91IGFyZSBlbmNvdXJhZ2VkIHRvIGluaXRpYWxpemUKICAqIHBv
bGljeSBlbGVtZW50cyB3aXRoIHRoaXMgZnVuY3Rpb24gY2FsbC4gIERvaW5nIHNvIG1heSBhbGxv
dyB5b3VyCkBAIC0xMTQ1LDcgKzExMjAsNyBAQCB2b2lkIHNydHBfY3J5cHRvX3BvbGljeV9zZXRf
YWVzX2djbV8yNTZfOF9vbmx5X2F1dGgoc3J0cF9jcnlwdG9fcG9saWN5X3QgKnApOwogICogaW5j
bHVkZSBtb3JlIGVsZW1lbnRzIGluIHRoZSBzcnRwX2NyeXB0b19wb2xpY3lfdCBkYXRhdHlwZS4K
ICAqCiAgKiBAcmV0dXJuIHZvaWQuCi0gKiAKKyAqCiAgKi8KIHZvaWQgc3J0cF9jcnlwdG9fcG9s
aWN5X3NldF9hZXNfZ2NtXzEyOF8xNl9hdXRoKHNydHBfY3J5cHRvX3BvbGljeV90ICpwKTsKIApA
QCAtMTE1MywxNCArMTEyOCwxNCBAQCB2b2lkIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2dj
bV8xMjhfMTZfYXV0aChzcnRwX2NyeXB0b19wb2xpY3lfdCAqcCk7CiAgKiBAYnJpZWYgc3J0cF9j
cnlwdG9fcG9saWN5X3NldF9hZXNfZ2NtXzI1Nl8xNl9hdXRoKCkgc2V0cyBhIGNyeXB0bwogICog
cG9saWN5IHN0cnVjdHVyZSB0byBhbiBBRUFEIGVuY3J5cHRpb24gcG9saWN5CiAgKgotICogQHBh
cmFtIHAgaXMgYSBwb2ludGVyIHRvIHRoZSBwb2xpY3kgc3RydWN0dXJlIHRvIGJlIHNldCAKLSAq
IAorICogQHBhcmFtIHAgaXMgYSBwb2ludGVyIHRvIHRoZSBwb2xpY3kgc3RydWN0dXJlIHRvIGJl
IHNldAorICoKICAqIFRoZSBmdW5jdGlvbiBjYWxsIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVz
X2djbV8yNTZfMTZfYXV0aCgmcCkgc2V0cwogICogdGhlIHNydHBfY3J5cHRvX3BvbGljeV90IGF0
IGxvY2F0aW9uIHAgdG8gdXNlIHRoZSBTUlRQIGRlZmF1bHQgY2lwaGVyCi0gKiAoQUVTLTI1NiBH
YWxvaXMgQ291bnRlciBNb2RlKSB3aXRoIDE2IG9jdGV0IGF1dGggdGFnLiAgVGhpcyAKKyAqIChB
RVMtMjU2IEdhbG9pcyBDb3VudGVyIE1vZGUpIHdpdGggMTYgb2N0ZXQgYXV0aCB0YWcuICBUaGlz
CiAgKiBwb2xpY3kgYXBwbGllcyBjb25maWRlbnRpYWxpdHkgYW5kIGF1dGhlbnRpY2F0aW9uIHRv
IGJvdGggdGhlCiAgKiBSVFAgYW5kIFJUQ1AgcGFja2V0cy4KLSAqIAorICoKICAqIFRoaXMgZnVu
Y3Rpb24gaXMgYSBjb252ZW5pZW5jZSB0aGF0IGhlbHBzIHRvIGF2b2lkIGRlYWxpbmcgZGlyZWN0
bHkKICAqIHdpdGggdGhlIHBvbGljeSBkYXRhIHN0cnVjdHVyZS4gIFlvdSBhcmUgZW5jb3VyYWdl
ZCB0byBpbml0aWFsaXplCiAgKiBwb2xpY3kgZWxlbWVudHMgd2l0aCB0aGlzIGZ1bmN0aW9uIGNh
bGwuICBEb2luZyBzbyBtYXkgYWxsb3cgeW91cgpAQCAtMTE2OCwxNSArMTE0MywxNCBAQCB2b2lk
IHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2djbV8xMjhfMTZfYXV0aChzcnRwX2NyeXB0b19w
b2xpY3lfdCAqcCk7CiAgKiBpbmNsdWRlIG1vcmUgZWxlbWVudHMgaW4gdGhlIHNydHBfY3J5cHRv
X3BvbGljeV90IGRhdGF0eXBlLgogICoKICAqIEByZXR1cm4gdm9pZC4KLSAqIAorICoKICAqLwog
dm9pZCBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21fMjU2XzE2X2F1dGgoc3J0cF9jcnlw
dG9fcG9saWN5X3QgKnApOwogCi0KIC8qKgogICogQGJyaWVmIHNydHBfZGVhbGxvYygpIGRlYWxs
b2NhdGVzIHN0b3JhZ2UgZm9yIGFuIFNSVFAgc2Vzc2lvbgogICogY29udGV4dC4KLSAqIAorICoK
ICAqIFRoZSBmdW5jdGlvbiBjYWxsIHNydHBfZGVhbGxvYyhzKSBkZWFsbG9jYXRlcyBzdG9yYWdl
IGZvciB0aGUKICAqIFNSVFAgc2Vzc2lvbiBjb250ZXh0IHMuICBUaGlzIGZ1bmN0aW9uIHNob3Vs
ZCBiZSBjYWxsZWQgbm8gbW9yZQogICogdGhhbiBvbmUgdGltZSBmb3IgZWFjaCBvZiB0aGUgY29u
dGV4dHMgYWxsb2NhdGVkIGJ5IHRoZSBmdW5jdGlvbgpAQCAtMTE4OCwzMCArMTE2MiwyNiBAQCB2
b2lkIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2djbV8yNTZfMTZfYXV0aChzcnRwX2NyeXB0
b19wb2xpY3lfdCAqcCk7CiAgKiAgICAtIHNydHBfZXJyX3N0YXR1c19vayAgICAgICAgICAgICBp
ZiB0aGVyZSBubyBwcm9ibGVtcy4KICAqICAgIC0gc3J0cF9lcnJfc3RhdHVzX2RlYWxsb2NfZmFp
bCAgIGEgbWVtb3J5IGRlYWxsb2NhdGlvbiBmYWlsdXJlIG9jY3VyZWQuCiAgKi8KLQogc3J0cF9l
cnJfc3RhdHVzX3Qgc3J0cF9kZWFsbG9jKHNydHBfdCBzKTsKIAotCiAvKgotICogQGJyaWVmIGlk
ZW50aWZpZXMgYSBwYXJ0aWN1bGFyIFNSVFAgcHJvZmlsZSAKKyAqIEBicmllZiBpZGVudGlmaWVz
IGEgcGFydGljdWxhciBTUlRQIHByb2ZpbGUKICAqCiAgKiBBbiBzcnRwX3Byb2ZpbGVfdCBlbnVt
ZXJhdGlvbiBpcyB1c2VkIHRvIGlkZW50aWZ5IGEgcGFydGljdWxhciBTUlRQCiAgKiBwcm9maWxl
ICh0aGF0IGlzLCBhIHNldCBvZiBhbGdvcml0aG1zIGFuZCBwYXJhbWV0ZXJzKS4gVGhlc2UgcHJv
ZmlsZXMKICAqIGFyZSBkZWZpbmVkIGZvciBEVExTLVNSVFA6CiAgKiBodHRwczovL3d3dy5pYW5h
Lm9yZy9hc3NpZ25tZW50cy9zcnRwLXByb3RlY3Rpb24vc3J0cC1wcm90ZWN0aW9uLnhodG1sCiAg
Ki8KLQogdHlwZWRlZiBlbnVtIHsKLSAgc3J0cF9wcm9maWxlX3Jlc2VydmVkICAgICAgICAgICA9
IDAsCi0gIHNydHBfcHJvZmlsZV9hZXMxMjhfY21fc2hhMV84MCAgPSAxLAotICBzcnRwX3Byb2Zp
bGVfYWVzMTI4X2NtX3NoYTFfMzIgID0gMiwKLSAgc3J0cF9wcm9maWxlX251bGxfc2hhMV84MCAg
ICAgICA9IDUsCi0gIHNydHBfcHJvZmlsZV9udWxsX3NoYTFfMzIgICAgICAgPSA2LAotICBzcnRw
X3Byb2ZpbGVfYWVhZF9hZXNfMTI4X2djbSAgID0gNywKLSAgc3J0cF9wcm9maWxlX2FlYWRfYWVz
XzI1Nl9nY20gICA9IDgsCisgICAgc3J0cF9wcm9maWxlX3Jlc2VydmVkID0gMCwKKyAgICBzcnRw
X3Byb2ZpbGVfYWVzMTI4X2NtX3NoYTFfODAgPSAxLAorICAgIHNydHBfcHJvZmlsZV9hZXMxMjhf
Y21fc2hhMV8zMiA9IDIsCisgICAgc3J0cF9wcm9maWxlX251bGxfc2hhMV84MCA9IDUsCisgICAg
c3J0cF9wcm9maWxlX251bGxfc2hhMV8zMiA9IDYsCisgICAgc3J0cF9wcm9maWxlX2FlYWRfYWVz
XzEyOF9nY20gPSA3LAorICAgIHNydHBfcHJvZmlsZV9hZWFkX2Flc18yNTZfZ2NtID0gOCwKIH0g
c3J0cF9wcm9maWxlX3Q7CiAKLQogLyoqCiAgKiBAYnJpZWYgc3J0cF9jcnlwdG9fcG9saWN5X3Nl
dF9mcm9tX3Byb2ZpbGVfZm9yX3J0cCgpIHNldHMgYSBjcnlwdG8gcG9saWN5CiAgKiBzdHJ1Y3R1
cmUgdG8gdGhlIGFwcHJvcHJpYXRlIHZhbHVlIGZvciBSVFAgYmFzZWQgb24gYW4gc3J0cF9wcm9m
aWxlX3QKQEAgLTEyMzIsMTMgKzEyMDIsMTIgQEAgdHlwZWRlZiBlbnVtIHsKICAqCiAgKiBAcmV0
dXJuIHZhbHVlcwogICogICAgIC0gc3J0cF9lcnJfc3RhdHVzX29rICAgICAgICAgbm8gcHJvYmxl
bXMgd2VyZSBlbmNvdW50ZXJlZAotICogICAgIC0gc3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJhbSAg
dGhlIHByb2ZpbGUgaXMgbm90IHN1cHBvcnRlZCAKKyAqICAgICAtIHNydHBfZXJyX3N0YXR1c19i
YWRfcGFyYW0gIHRoZSBwcm9maWxlIGlzIG5vdCBzdXBwb3J0ZWQKICAqCiAgKi8KLXNydHBfZXJy
X3N0YXR1c190IHNydHBfY3J5cHRvX3BvbGljeV9zZXRfZnJvbV9wcm9maWxlX2Zvcl9ydHAoc3J0
cF9jcnlwdG9fcG9saWN5X3QgKnBvbGljeSwgc3J0cF9wcm9maWxlX3QgcHJvZmlsZSk7Ci0KLQot
CitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Zyb21fcHJvZmlsZV9m
b3JfcnRwKAorICAgIHNydHBfY3J5cHRvX3BvbGljeV90ICpwb2xpY3ksCisgICAgc3J0cF9wcm9m
aWxlX3QgcHJvZmlsZSk7CiAKIC8qKgogICogQGJyaWVmIHNydHBfY3J5cHRvX3BvbGljeV9zZXRf
ZnJvbV9wcm9maWxlX2Zvcl9ydGNwKCkgc2V0cyBhIGNyeXB0byBwb2xpY3kKQEAgLTEyNjMsNDgg
KzEyMzIsNDMgQEAgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9mcm9t
X3Byb2ZpbGVfZm9yX3J0cChzcnRwX2NyeXB0b19wb2xpY3kKICAqICAgICAtIHNydHBfZXJyX3N0
YXR1c19iYWRfcGFyYW0gIHRoZSBwcm9maWxlIGlzIG5vdCBzdXBwb3J0ZWQKICAqCiAgKi8KLXNy
dHBfZXJyX3N0YXR1c190IHNydHBfY3J5cHRvX3BvbGljeV9zZXRfZnJvbV9wcm9maWxlX2Zvcl9y
dGNwKHNydHBfY3J5cHRvX3BvbGljeV90ICpwb2xpY3ksIHNydHBfcHJvZmlsZV90IHByb2ZpbGUp
Oworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9mcm9tX3Byb2ZpbGVf
Zm9yX3J0Y3AoCisgICAgc3J0cF9jcnlwdG9fcG9saWN5X3QgKnBvbGljeSwKKyAgICBzcnRwX3By
b2ZpbGVfdCBwcm9maWxlKTsKIAogLyoqCiAgKiBAYnJpZWYgcmV0dXJucyB0aGUgbWFzdGVyIGtl
eSBsZW5ndGggZm9yIGEgZ2l2ZW4gU1JUUCBwcm9maWxlCiAgKi8KLXVuc2lnbmVkIGludAotc3J0
cF9wcm9maWxlX2dldF9tYXN0ZXJfa2V5X2xlbmd0aChzcnRwX3Byb2ZpbGVfdCBwcm9maWxlKTsK
LQordW5zaWduZWQgaW50IHNydHBfcHJvZmlsZV9nZXRfbWFzdGVyX2tleV9sZW5ndGgoc3J0cF9w
cm9maWxlX3QgcHJvZmlsZSk7CiAKIC8qKgogICogQGJyaWVmIHJldHVybnMgdGhlIG1hc3RlciBz
YWx0IGxlbmd0aCBmb3IgYSBnaXZlbiBTUlRQIHByb2ZpbGUKICAqLwotdW5zaWduZWQgaW50Ci1z
cnRwX3Byb2ZpbGVfZ2V0X21hc3Rlcl9zYWx0X2xlbmd0aChzcnRwX3Byb2ZpbGVfdCBwcm9maWxl
KTsKK3Vuc2lnbmVkIGludCBzcnRwX3Byb2ZpbGVfZ2V0X21hc3Rlcl9zYWx0X2xlbmd0aChzcnRw
X3Byb2ZpbGVfdCBwcm9maWxlKTsKIAogLyoqCiAgKiBAYnJpZWYgYXBwZW5kcyB0aGUgc2FsdCB0
byB0aGUga2V5CiAgKgotICogVGhlIGZ1bmN0aW9uIGNhbGwgc3J0cF9hcHBlbmRfc2FsdF90b19r
ZXkoaywga2xlbiwgcywgc2xlbikgCisgKiBUaGUgZnVuY3Rpb24gY2FsbCBzcnRwX2FwcGVuZF9z
YWx0X3RvX2tleShrLCBrbGVuLCBzLCBzbGVuKQogICogY29waWVzIHRoZSBzdHJpbmcgcyB0byB0
aGUgbG9jYXRpb24gYXQga2xlbiBieXRlcyBmb2xsb3dpbmcKLSAqIHRoZSBsb2NhdGlvbiBrLiAg
CisgKiB0aGUgbG9jYXRpb24gay4KICAqCiAgKiBAd2FybmluZyBUaGVyZSBtdXN0IGJlIGF0IGxl
YXN0IGJ5dGVzX2luX3NhbHQgKyBieXRlc19pbl9rZXkgYnl0ZXMKICAqICAgICAgICAgIGF2YWls
YWJsZSBhdCB0aGUgbG9jYXRpb24gcG9pbnRlZCB0byBieSBrZXkuCi0gKiAKKyAqCiAgKi8KLQot
dm9pZAotc3J0cF9hcHBlbmRfc2FsdF90b19rZXkodW5zaWduZWQgY2hhciAqa2V5LCB1bnNpZ25l
ZCBpbnQgYnl0ZXNfaW5fa2V5LAotCSAgCSAgICAgICAgdW5zaWduZWQgY2hhciAqc2FsdCwgdW5z
aWduZWQgaW50IGJ5dGVzX2luX3NhbHQpOwotCi0KK3ZvaWQgc3J0cF9hcHBlbmRfc2FsdF90b19r
ZXkodW5zaWduZWQgY2hhciAqa2V5LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNp
Z25lZCBpbnQgYnl0ZXNfaW5fa2V5LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNp
Z25lZCBjaGFyICpzYWx0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBp
bnQgYnl0ZXNfaW5fc2FsdCk7CiAKIC8qKgogICogQH0KICAqLwogCi0KLQogLyoqCiAgKiBAZGVm
Z3JvdXAgU1JUQ1AgU2VjdXJlIFJUQ1AKLSAqIEBpbmdyb3VwICBTUlRQIAorICogQGluZ3JvdXAg
IFNSVFAKICAqCiAgKiBAYnJpZWYgU2VjdXJlIFJUQ1AgZnVuY3Rpb25zIGFyZSB1c2VkIHRvIHBy
b3RlY3QgUlRDUCB0cmFmZmljLgogICoKQEAgLTEzMTIsMzYgKzEyNzYsMzYgQEAgc3J0cF9hcHBl
bmRfc2FsdF90b19rZXkodW5zaWduZWQgY2hhciAqa2V5LCB1bnNpZ25lZCBpbnQgYnl0ZXNfaW5f
a2V5LAogICogdHJhZmZpYyBpbiBtdWNoIHRoZSBzYW1lIHdheSBhcyBpdCBkb2VzIFJUUCB0cmFm
ZmljLiAgVGhlIGZ1bmN0aW9uCiAgKiBzcnRwX3Byb3RlY3RfcnRjcCgpIGFwcGxpZXMgY3J5cHRv
Z3JhcGhpYyBwcm90ZWN0aW9ucyB0byBvdXRib3VuZAogICogUlRDUCBwYWNrZXRzLCBhbmQgc3J0
cF91bnByb3RlY3RfcnRjcCgpIHZlcmlmaWVzIHRoZSBwcm90ZWN0aW9ucyBvbgotICogaW5ib3Vu
ZCBSVENQIHBhY2tldHMuICAKKyAqIGluYm91bmQgUlRDUCBwYWNrZXRzLgogICoKICAqIEEgbm90
ZSBvbiB0aGUgbmFtaW5nIGNvbnZlbnRpb246IHNydHBfcHJvdGVjdF9ydGNwKCkgaGFzIGFuIHNy
dHBfdAogICogYXMgaXRzIGZpcnN0IGFyZ3VtZW50LCBhbmQgdGh1cyBoYXMgYHNydHBfJyBhcyBp
dHMgcHJlZml4LiAgVGhlCi0gKiB0cmFpbGluZyBgX3J0Y3AnIGluZGljYXRlcyB0aGUgcHJvdG9j
b2wgb24gd2hpY2ggaXQgYWN0cy4gIAotICogCisgKiB0cmFpbGluZyBgX3J0Y3AnIGluZGljYXRl
cyB0aGUgcHJvdG9jb2wgb24gd2hpY2ggaXQgYWN0cy4KKyAqCiAgKiBAewogICovCiAKIC8qKgog
ICogQGJyaWVmIHNydHBfcHJvdGVjdF9ydGNwKCkgaXMgdGhlIFNlY3VyZSBSVENQIHNlbmRlci1z
aWRlIHBhY2tldAogICogcHJvY2Vzc2luZyBmdW5jdGlvbi4KLSAqIAorICoKICAqIFRoZSBmdW5j
dGlvbiBjYWxsIHNydHBfcHJvdGVjdF9ydGNwKGN0eCwgcnRwX2hkciwgbGVuX3B0cikgYXBwbGll
cwogICogU1JUQ1AgcHJvdGVjdGlvbiB0byB0aGUgUlRDUCBwYWNrZXQgcnRjcF9oZHIgKHdoaWNo
IGhhcyBsZW5ndGgKICAqICpsZW5fcHRyKSB1c2luZyB0aGUgU1JUUCBzZXNzaW9uIGNvbnRleHQg
Y3R4LiAgSWYgc3J0cF9lcnJfc3RhdHVzX29rIGlzCiAgKiByZXR1cm5lZCwgdGhlbiBydHBfaGRy
IHBvaW50cyB0byB0aGUgcmVzdWx0aW5nIFNSVENQIHBhY2tldCBhbmQKICAqICpsZW5fcHRyIGlz
IHRoZSBudW1iZXIgb2Ygb2N0ZXRzIGluIHRoYXQgcGFja2V0OyBvdGhlcndpc2UsIG5vCiAgKiBh
c3N1bXB0aW9ucyBzaG91bGQgYmUgbWFkZSBhYm91dCB0aGUgdmFsdWUgb2YgZWl0aGVyIGRhdGEg
ZWxlbWVudHMuCi0gKiAKKyAqCiAgKiBAd2FybmluZyBUaGlzIGZ1bmN0aW9uIGFzc3VtZXMgdGhh
dCBpdCBjYW4gd3JpdGUgdGhlIGF1dGhlbnRpY2F0aW9uCiAgKiB0YWcgaW50byB0aGUgbG9jYXRp
b24gaW4gbWVtb3J5IGltbWVkaWF0ZWx5IGZvbGxvd2luZyB0aGUgUlRDUAogICogcGFja2V0LCBh
bmQgYXNzdW1lcyB0aGF0IHRoZSBSVENQIHBhY2tldCBpcyBhbGlnbmVkIG9uIGEgMzItYml0CiAg
KiBib3VuZGFyeS4KICAqCi0gKiBAd2FybmluZyBUaGlzIGZ1bmN0aW9uIGFzc3VtZXMgdGhhdCBp
dCBjYW4gd3JpdGUgU1JUUF9NQVhfVFJBSUxFUl9MRU4rNCAKLSAqIGludG8gdGhlIGxvY2F0aW9u
IGluIG1lbW9yeSBpbW1lZGlhdGVseSBmb2xsb3dpbmcgdGhlIFJUQ1AgcGFja2V0LiAgIAotICog
Q2FsbGVycyBNVVNUIGVuc3VyZSB0aGF0IHRoaXMgbXVjaCB3cml0YWJsZSBtZW1vcnkgaXMgYXZh
aWxhYmxlIGluIAorICogQHdhcm5pbmcgVGhpcyBmdW5jdGlvbiBhc3N1bWVzIHRoYXQgaXQgY2Fu
IHdyaXRlIFNSVFBfTUFYX1RSQUlMRVJfTEVOKzQKKyAqIGludG8gdGhlIGxvY2F0aW9uIGluIG1l
bW9yeSBpbW1lZGlhdGVseSBmb2xsb3dpbmcgdGhlIFJUQ1AgcGFja2V0LgorICogQ2FsbGVycyBN
VVNUIGVuc3VyZSB0aGF0IHRoaXMgbXVjaCB3cml0YWJsZSBtZW1vcnkgaXMgYXZhaWxhYmxlIGlu
CiAgKiB0aGUgYnVmZmVyIHRoYXQgaG9sZHMgdGhlIFJUQ1AgcGFja2V0LgotICogCisgKgogICog
QHBhcmFtIGN0eCBpcyB0aGUgU1JUUCBjb250ZXh0IHRvIHVzZSBpbiBwcm9jZXNzaW5nIHRoZSBw
YWNrZXQuCiAgKgogICogQHBhcmFtIHJ0Y3BfaGRyIGlzIGEgcG9pbnRlciB0byB0aGUgUlRDUCBw
YWNrZXQgKGJlZm9yZSB0aGUgY2FsbCk7IGFmdGVyCkBAIC0xMzUzLDM3ICsxMzE3LDM2IEBAIHNy
dHBfYXBwZW5kX3NhbHRfdG9fa2V5KHVuc2lnbmVkIGNoYXIgKmtleSwgdW5zaWduZWQgaW50IGJ5
dGVzX2luX2tleSwKICAqIHdhcyByZXR1cm5lZC4gIE90aGVyd2lzZSwgdGhlIHZhbHVlIG9mIHRo
ZSBkYXRhIHRvIHdoaWNoIGl0IHBvaW50cwogICogaXMgdW5kZWZpbmVkLgogICoKLSAqIEByZXR1
cm4gCisgKiBAcmV0dXJuCiAgKiAgICAtIHNydHBfZXJyX3N0YXR1c19vayAgICAgICAgICAgIGlm
IHRoZXJlIHdlcmUgbm8gcHJvYmxlbXMuCi0gKiAgICAtIFtvdGhlcl0gICAgICAgICAgICAgICAg
ICBpZiB0aGVyZSB3YXMgYSBmYWlsdXJlIGluIAorICogICAgLSBbb3RoZXJdICAgICAgICAgICAg
ICAgICAgaWYgdGhlcmUgd2FzIGEgZmFpbHVyZSBpbgogICogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgdGhlIGNyeXB0b2dyYXBoaWMgbWVjaGFuaXNtcy4KICAqLwotCSAgICAgCi0KLXNy
dHBfZXJyX3N0YXR1c190IHNydHBfcHJvdGVjdF9ydGNwKHNydHBfdCBjdHgsIHZvaWQgKnJ0Y3Bf
aGRyLCBpbnQgKnBrdF9vY3RldF9sZW4pOwotCitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3Byb3Rl
Y3RfcnRjcChzcnRwX3QgY3R4LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
dm9pZCAqcnRjcF9oZHIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQg
KnBrdF9vY3RldF9sZW4pOwogCiAvKioKICAqIEBicmllZiBzcnRwX3Byb3RlY3RfcnRjcF9ta2ko
KSBpcyB0aGUgU2VjdXJlIFJUQ1Agc2VuZGVyLXNpZGUgcGFja2V0CiAgKiBwcm9jZXNzaW5nIGZ1
bmN0aW9uIHRoYXQgY2FuIHV0aWxpemUgbWtpLgotICogCisgKgogICogVGhlIGZ1bmN0aW9uIGNh
bGwgc3J0cF9wcm90ZWN0X3J0Y3AoY3R4LCBydHBfaGRyLCBsZW5fcHRyKSBhcHBsaWVzCiAgKiBT
UlRDUCBwcm90ZWN0aW9uIHRvIHRoZSBSVENQIHBhY2tldCBydGNwX2hkciAod2hpY2ggaGFzIGxl
bmd0aAogICogKmxlbl9wdHIpIHVzaW5nIHRoZSBTUlRQIHNlc3Npb24gY29udGV4dCBjdHguICBJ
ZiBzcnRwX2Vycl9zdGF0dXNfb2sgaXMKICAqIHJldHVybmVkLCB0aGVuIHJ0cF9oZHIgcG9pbnRz
IHRvIHRoZSByZXN1bHRpbmcgU1JUQ1AgcGFja2V0IGFuZAogICogKmxlbl9wdHIgaXMgdGhlIG51
bWJlciBvZiBvY3RldHMgaW4gdGhhdCBwYWNrZXQ7IG90aGVyd2lzZSwgbm8KICAqIGFzc3VtcHRp
b25zIHNob3VsZCBiZSBtYWRlIGFib3V0IHRoZSB2YWx1ZSBvZiBlaXRoZXIgZGF0YSBlbGVtZW50
cy4KLSAqIAorICoKICAqIEB3YXJuaW5nIFRoaXMgZnVuY3Rpb24gYXNzdW1lcyB0aGF0IGl0IGNh
biB3cml0ZSB0aGUgYXV0aGVudGljYXRpb24KICAqIHRhZyBpbnRvIHRoZSBsb2NhdGlvbiBpbiBt
ZW1vcnkgaW1tZWRpYXRlbHkgZm9sbG93aW5nIHRoZSBSVENQCiAgKiBwYWNrZXQsIGFuZCBhc3N1
bWVzIHRoYXQgdGhlIFJUQ1AgcGFja2V0IGlzIGFsaWduZWQgb24gYSAzMi1iaXQKICAqIGJvdW5k
YXJ5LgogICoKLSAqIEB3YXJuaW5nIFRoaXMgZnVuY3Rpb24gYXNzdW1lcyB0aGF0IGl0IGNhbiB3
cml0ZSBTUlRQX01BWF9UUkFJTEVSX0xFTis0IAotICogaW50byB0aGUgbG9jYXRpb24gaW4gbWVt
b3J5IGltbWVkaWF0ZWx5IGZvbGxvd2luZyB0aGUgUlRDUCBwYWNrZXQuICAgCi0gKiBDYWxsZXJz
IE1VU1QgZW5zdXJlIHRoYXQgdGhpcyBtdWNoIHdyaXRhYmxlIG1lbW9yeSBpcyBhdmFpbGFibGUg
aW4gCisgKiBAd2FybmluZyBUaGlzIGZ1bmN0aW9uIGFzc3VtZXMgdGhhdCBpdCBjYW4gd3JpdGUg
U1JUUF9NQVhfVFJBSUxFUl9MRU4rNAorICogaW50byB0aGUgbG9jYXRpb24gaW4gbWVtb3J5IGlt
bWVkaWF0ZWx5IGZvbGxvd2luZyB0aGUgUlRDUCBwYWNrZXQuCisgKiBDYWxsZXJzIE1VU1QgZW5z
dXJlIHRoYXQgdGhpcyBtdWNoIHdyaXRhYmxlIG1lbW9yeSBpcyBhdmFpbGFibGUgaW4KICAqIHRo
ZSBidWZmZXIgdGhhdCBob2xkcyB0aGUgUlRDUCBwYWNrZXQuCi0gKiAKKyAqCiAgKiBAcGFyYW0g
Y3R4IGlzIHRoZSBTUlRQIGNvbnRleHQgdG8gdXNlIGluIHByb2Nlc3NpbmcgdGhlIHBhY2tldC4K
ICAqCiAgKiBAcGFyYW0gcnRjcF9oZHIgaXMgYSBwb2ludGVyIHRvIHRoZSBSVENQIHBhY2tldCAo
YmVmb3JlIHRoZSBjYWxsKTsgYWZ0ZXIKQEAgLTEzOTUsMjEgKzEzNTgsMjQgQEAgc3J0cF9lcnJf
c3RhdHVzX3Qgc3J0cF9wcm90ZWN0X3J0Y3Aoc3J0cF90IGN0eCwgdm9pZCAqcnRjcF9oZHIsIGlu
dCAqcGt0X29jdGV0X2wKICAqIHdhcyByZXR1cm5lZC4gIE90aGVyd2lzZSwgdGhlIHZhbHVlIG9m
IHRoZSBkYXRhIHRvIHdoaWNoIGl0IHBvaW50cwogICogaXMgdW5kZWZpbmVkLgogICoKLSAqIEBw
YXJhbSB1c2VfbWtpIGlzIGEgYm9vbGVhbiB0byB0ZWxsIHRoZSBzeXN0ZW0gaWYgbWtpIGlzIGJl
aW5nIHVzZWQuICBJZiAKLSAqIHNldCB0byBmYWxzZSB0aGVuIHdpbGwgdXNlIHRoZSBmaXJzdCBz
ZXQgb2Ygc2Vzc2lvbiBrZXlzLiAgSWYgc2V0IHRvIHRydWUgd2lsbAorICogQHBhcmFtIHVzZV9t
a2kgaXMgYSBib29sZWFuIHRvIHRlbGwgdGhlIHN5c3RlbSBpZiBta2kgaXMgYmVpbmcgdXNlZC4g
IElmCisgKiBzZXQgdG8gZmFsc2UgdGhlbiB3aWxsIHVzZSB0aGUgZmlyc3Qgc2V0IG9mIHNlc3Np
b24ga2V5cy4gIElmIHNldCB0byB0cnVlCisgKiB3aWxsCiAgKiB1c2UgdGhlIHNlc3Npb24ga2V5
cyBpZGVudGlmaWVkIGJ5IHRoZSBta2lfaW5kZXgKICAqCiAgKiBAcGFyYW0gbWtpX2luZGV4IGlu
dGVnZXIgdmFsdWUgc3BlY2lmeWluZyB3aGljaCBzZXQgb2Ygc2Vzc2lvbiBrZXN5IHNob3VsZCBi
ZQogICogdXNlZCBpZiB1c2VfbWtpIGlzIHNldCB0byB0cnVlLgogICoKLSAqIEByZXR1cm4gCisg
KiBAcmV0dXJuCiAgKiAgICAtIHNydHBfZXJyX3N0YXR1c19vayAgICAgICAgICAgIGlmIHRoZXJl
IHdlcmUgbm8gcHJvYmxlbXMuCi0gKiAgICAtIFtvdGhlcl0gICAgICAgICAgICAgICAgICBpZiB0
aGVyZSB3YXMgYSBmYWlsdXJlIGluIAorICogICAgLSBbb3RoZXJdICAgICAgICAgICAgICAgICAg
aWYgdGhlcmUgd2FzIGEgZmFpbHVyZSBpbgogICogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgdGhlIGNyeXB0b2dyYXBoaWMgbWVjaGFuaXNtcy4KICAqLwotCi1zcnRwX2Vycl9zdGF0dXNf
dCBzcnRwX3Byb3RlY3RfcnRjcF9ta2koc3J0cF90IGN0eCwgdm9pZCAqcnRjcF9oZHIsIGludCAq
cGt0X29jdGV0X2xlbiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1
bnNpZ25lZCBpbnQgdXNlX21raSwgdW5zaWduZWQgaW50IG1raV9pbmRleCk7CitzcnRwX2Vycl9z
dGF0dXNfdCBzcnRwX3Byb3RlY3RfcnRjcF9ta2koc3J0cF90IGN0eCwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICB2b2lkICpydGNwX2hkciwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgKnBrdF9vY3RldF9sZW4sCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IHVzZV9ta2ksCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IG1raV9pbmRl
eCk7CiAKIC8qKgogICogQGJyaWVmIHNydHBfdW5wcm90ZWN0X3J0Y3AoKSBpcyB0aGUgU2VjdXJl
IFJUQ1AgcmVjZWl2ZXItc2lkZSBwYWNrZXQKQEAgLTE0MjIsNyArMTM4OCw3IEBAIHNydHBfZXJy
X3N0YXR1c190IHNydHBfcHJvdGVjdF9ydGNwX21raShzcnRwX3QgY3R4LCB2b2lkICpydGNwX2hk
ciwgaW50ICpwa3Rfb2N0CiAgKiB0byB0aGUgcmVzdWx0aW5nIFJUQ1AgcGFja2V0IGFuZCAqbGVu
X3B0ciBpcyB0aGUgbnVtYmVyIG9mIG9jdGV0cwogICogaW4gdGhhdCBwYWNrZXQ7IG90aGVyd2lz
ZSwgbm8gYXNzdW1wdGlvbnMgc2hvdWxkIGJlIG1hZGUgYWJvdXQgdGhlCiAgKiB2YWx1ZSBvZiBl
aXRoZXIgZGF0YSBlbGVtZW50cy4KLSAqIAorICoKICAqIEB3YXJuaW5nIFRoaXMgZnVuY3Rpb24g
YXNzdW1lcyB0aGF0IHRoZSBTUlRDUCBwYWNrZXQgaXMgYWxpZ25lZCBvbiBhCiAgKiAzMi1iaXQg
Ym91bmRhcnkuCiAgKgpAQCAtMTQ0MCwxNyArMTQwNiwxOCBAQCBzcnRwX2Vycl9zdGF0dXNfdCBz
cnRwX3Byb3RlY3RfcnRjcF9ta2koc3J0cF90IGN0eCwgdm9pZCAqcnRjcF9oZHIsIGludCAqcGt0
X29jdAogICogcmV0dXJuZWQuICBPdGhlcndpc2UsIHRoZSB2YWx1ZSBvZiB0aGUgZGF0YSB0byB3
aGljaCBpdCBwb2ludHMgaXMKICAqIHVuZGVmaW5lZC4KICAqCi0gKiBAcmV0dXJuIAorICogQHJl
dHVybgogICogICAgLSBzcnRwX2Vycl9zdGF0dXNfb2sgICAgICAgICAgaWYgdGhlIFJUQ1AgcGFj
a2V0IGlzIHZhbGlkLgotICogICAgLSBzcnRwX2Vycl9zdGF0dXNfYXV0aF9mYWlsICAgaWYgdGhl
IFNSVENQIHBhY2tldCBmYWlsZWQgdGhlIG1lc3NhZ2UgCisgKiAgICAtIHNydHBfZXJyX3N0YXR1
c19hdXRoX2ZhaWwgICBpZiB0aGUgU1JUQ1AgcGFja2V0IGZhaWxlZCB0aGUgbWVzc2FnZQogICog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF1dGhlbnRpY2F0aW9uIGNoZWNrLgogICogICAg
LSBzcnRwX2Vycl9zdGF0dXNfcmVwbGF5X2ZhaWwgaWYgdGhlIFNSVENQIHBhY2tldCBpcyBhIHJl
cGxheSAoZS5nLiBoYXMKICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbHJlYWR5IGJl
ZW4gcHJvY2Vzc2VkIGFuZCBhY2NlcHRlZCkuCiAgKiAgICAtIFtvdGhlcl0gIGlmIHRoZXJlIGhh
cyBiZWVuIGFuIGVycm9yIGluIHRoZSBjcnlwdG9ncmFwaGljIG1lY2hhbmlzbXMuCiAgKgogICov
Ci0KLXNydHBfZXJyX3N0YXR1c190IHNydHBfdW5wcm90ZWN0X3J0Y3Aoc3J0cF90IGN0eCwgdm9p
ZCAqc3J0Y3BfaGRyLCBpbnQgKnBrdF9vY3RldF9sZW4pOworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0
cF91bnByb3RlY3RfcnRjcChzcnRwX3QgY3R4LAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB2b2lkICpzcnRjcF9oZHIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGludCAqcGt0X29jdGV0X2xlbik7CiAKIC8qKgogICogQGJyaWVmIHNydHBfdW5w
cm90ZWN0X3J0Y3AoKSBpcyB0aGUgU2VjdXJlIFJUQ1AgcmVjZWl2ZXItc2lkZSBwYWNrZXQKQEAg
LTE0NjMsNyArMTQzMCw3IEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfdW5wcm90ZWN0X3J0Y3Ao
c3J0cF90IGN0eCwgdm9pZCAqc3J0Y3BfaGRyLCBpbnQgKnBrdF9vY3RlCiAgKiB0byB0aGUgcmVz
dWx0aW5nIFJUQ1AgcGFja2V0IGFuZCAqbGVuX3B0ciBpcyB0aGUgbnVtYmVyIG9mIG9jdGV0cwog
ICogaW4gdGhhdCBwYWNrZXQ7IG90aGVyd2lzZSwgbm8gYXNzdW1wdGlvbnMgc2hvdWxkIGJlIG1h
ZGUgYWJvdXQgdGhlCiAgKiB2YWx1ZSBvZiBlaXRoZXIgZGF0YSBlbGVtZW50cy4KLSAqIAorICoK
ICAqIEB3YXJuaW5nIFRoaXMgZnVuY3Rpb24gYXNzdW1lcyB0aGF0IHRoZSBTUlRDUCBwYWNrZXQg
aXMgYWxpZ25lZCBvbiBhCiAgKiAzMi1iaXQgYm91bmRhcnkuCiAgKgpAQCAtMTQ4MiwyMSArMTQ0
OSwyMyBAQCBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3VucHJvdGVjdF9ydGNwKHNydHBfdCBjdHgs
IHZvaWQgKnNydGNwX2hkciwgaW50ICpwa3Rfb2N0ZQogICogdW5kZWZpbmVkLgogICoKICAqIEBw
YXJhbSB1c2VfbWtpIGlzIGEgYm9vbGVhbiB0byB0ZWxsIHRoZSBzeXN0ZW0gaWYgbWtpIGlzIGJl
aW5nIHVzZWQuICBJZgotICogc2V0IHRvIGZhbHNlIHRoZW4gd2lsbCB1c2UgdGhlIGZpcnN0IHNl
dCBvZiBzZXNzaW9uIGtleXMuICBJZiBzZXQgdG8gdHJ1ZSB3aWxsCi0gKiB1c2UgdGhlIHNlc3Np
b24ga2V5cyBpZGVudGlmaWVkIGJ5IHRoZSBta2lfaW5kZXgKKyAqIHNldCB0byBmYWxzZSB0aGVu
IHdpbGwgdXNlIHRoZSBmaXJzdCBzZXQgb2Ygc2Vzc2lvbiBrZXlzLiAgSWYgc2V0IHRvIHRydWUK
KyAqIHdpbGwgdXNlIHRoZSBzZXNzaW9uIGtleXMgaWRlbnRpZmllZCBieSB0aGUgbWtpX2luZGV4
CiAgKgotICogQHJldHVybiAKKyAqIEByZXR1cm4KICAqICAgIC0gc3J0cF9lcnJfc3RhdHVzX29r
ICAgICAgICAgIGlmIHRoZSBSVENQIHBhY2tldCBpcyB2YWxpZC4KLSAqICAgIC0gc3J0cF9lcnJf
c3RhdHVzX2F1dGhfZmFpbCAgIGlmIHRoZSBTUlRDUCBwYWNrZXQgZmFpbGVkIHRoZSBtZXNzYWdl
IAotICogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF1dGhlbnRpY2F0aW9uIGNoZWNrLgor
ICogICAgLSBzcnRwX2Vycl9zdGF0dXNfYXV0aF9mYWlsICAgaWYgdGhlIFNSVENQIHBhY2tldCBm
YWlsZWQgdGhlIG1lc3NhZ2UKKyAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF1
dGhlbnRpY2F0aW9uIGNoZWNrLgogICogICAgLSBzcnRwX2Vycl9zdGF0dXNfcmVwbGF5X2ZhaWwg
aWYgdGhlIFNSVENQIHBhY2tldCBpcyBhIHJlcGxheSAoZS5nLiBoYXMKLSAqICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBhbHJlYWR5IGJlZW4gcHJvY2Vzc2VkIGFuZCBhY2NlcHRlZCkuCi0g
KiAgICAtIHNydHBfZXJyX3N0YXR1c19iYWRfbWtpIGlmIHRoZSBNS0kgaW4gdGhlIHBhY2tldCBp
cyBub3QgYSBrbm93biBNS0kgaWQKLSAqICAgIC0gW290aGVyXSAgaWYgdGhlcmUgaGFzIGJlZW4g
YW4gZXJyb3IgaW4gdGhlIGNyeXB0b2dyYXBoaWMgbWVjaGFuaXNtcy4KKyAqICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGFscmVhZHkgYmVlbiBwcm9jZXNzZWQgYW5kIGFjY2VwdGVk
KS4KKyAqICAgIC0gc3J0cF9lcnJfc3RhdHVzX2JhZF9ta2kgICAgIGlmIHRoZSBNS0kgaW4gdGhl
IHBhY2tldCBpcyBub3QgYSBrbm93biBNS0kKKyAqICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGlkCisgKiAgICAtIFtvdGhlcl0gICAgICAgICAgICAgICAgICAgICBpZiB0aGVyZSBo
YXMgYmVlbiBhbiBlcnJvciBpbiB0aGUKKyAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGNyeXB0b2dyYXBoaWMgbWVjaGFuaXNtcy4KICAqCiAgKi8KLQotc3J0cF9lcnJfc3RhdHVz
X3Qgc3J0cF91bnByb3RlY3RfcnRjcF9ta2koc3J0cF90IGN0eCwgdm9pZCAqc3J0Y3BfaGRyLAor
c3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF91bnByb3RlY3RfcnRjcF9ta2koc3J0cF90IGN0eCwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZvaWQgKnNydGNwX2hkciwK
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCAqcGt0X29jdGV0
X2xlbiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVk
IGludCB1c2VfbWtpKTsKIApAQCAtMTUwNCw3ICsxNDczLDYgQEAgc3J0cF9lcnJfc3RhdHVzX3Qg
c3J0cF91bnByb3RlY3RfcnRjcF9ta2koc3J0cF90IGN0eCwgdm9pZCAqc3J0Y3BfaGRyLAogICog
QH0KICAqLwogCi0KIC8qKgogICogQGRlZmdyb3VwIFVzZXIgZGF0YSBhc3NvY2lhdGVkIHRvIGEg
U1JUUCBzZXNzaW9uLgogICogQGluZ3JvdXAgIFNSVFAKQEAgLTE1MjcsOSArMTQ5NSw3IEBAIHNy
dHBfZXJyX3N0YXR1c190IHNydHBfdW5wcm90ZWN0X3J0Y3BfbWtpKHNydHBfdCBjdHgsIHZvaWQg
KnNydGNwX2hkciwKICAqIEByZXR1cm4gdm9pZC4KICAqCiAgKi8KLQotdm9pZAotc3J0cF9zZXRf
dXNlcl9kYXRhKHNydHBfdCBjdHgsIHZvaWQgKmRhdGEpOwordm9pZCBzcnRwX3NldF91c2VyX2Rh
dGEoc3J0cF90IGN0eCwgdm9pZCAqZGF0YSk7CiAKIC8qKgogICogQGJyaWVmIHNydHBfZ2V0X3Vz
ZXJfZGF0YSgpIHJldHJpZXZlcyB0aGUgcG9pbnRlciB0byB0aGUgY3VzdG9tIGRhdGEKQEAgLTE1
NDYsMjMgKzE1MTIsMjAgQEAgc3J0cF9zZXRfdXNlcl9kYXRhKHNydHBfdCBjdHgsIHZvaWQgKmRh
dGEpOwogICogQHJldHVybiB2b2lkKiBwb2ludGVyIHRvIHRoZSB1c2VyIGRhdGEuCiAgKgogICov
Ci0KLXZvaWQqCi1zcnRwX2dldF91c2VyX2RhdGEoc3J0cF90IGN0eCk7Cit2b2lkICpzcnRwX2dl
dF91c2VyX2RhdGEoc3J0cF90IGN0eCk7CiAKIC8qKgogICogQH0KICAqLwogCi0KIC8qKgogICog
QGRlZmdyb3VwIFNSVFBldmVudHMgU1JUUCBldmVudHMgYW5kIGNhbGxiYWNrcwogICogQGluZ3Jv
dXAgIFNSVFAKICAqCi0gKiBAYnJpZWYgbGliU1JUUCBjYW4gdXNlIGEgdXNlci1wcm92aWRlZCBj
YWxsYmFjayBmdW5jdGlvbiB0byAKKyAqIEBicmllZiBsaWJTUlRQIGNhbiB1c2UgYSB1c2VyLXBy
b3ZpZGVkIGNhbGxiYWNrIGZ1bmN0aW9uIHRvCiAgKiBoYW5kbGUgZXZlbnRzLgogICoKLSAqIAor
ICoKICAqIGxpYlNSVFAgYWxsb3dzIGEgdXNlciB0byBwcm92aWRlIGEgY2FsbGJhY2sgZnVuY3Rp
b24gdG8gaGFuZGxlCiAgKiBldmVudHMgdGhhdCBuZWVkIHRvIGJlIGRlYWx0IHdpdGggb3V0c2lk
ZSBvZiB0aGUgZGF0YSBwbGFuZSAoc2VlCiAgKiB0aGUgZW51bSBzcnRwX2V2ZW50X3QgZm9yIGEg
ZGVzY3JpcHRpb24gb2YgdGhlc2UgZXZlbnRzKS4gIERlYWxpbmcKQEAgLTE1ODMsOCArMTU0Niw4
IEBAIHNydHBfZ2V0X3VzZXJfZGF0YShzcnRwX3QgY3R4KTsKICAqIEBicmllZiBzcnRwX2V2ZW50
X3QgZGVmaW5lcyBldmVudHMgdGhhdCBuZWVkIHRvIGJlIGhhbmRsZWQKICAqCiAgKiBUaGUgZW51
bSBzcnRwX2V2ZW50X3QgZGVmaW5lcyBldmVudHMgdGhhdCBuZWVkIHRvIGJlIGhhbmRsZWQKLSAq
IG91dHNpZGUgdGhlIGBkYXRhIHBsYW5lJywgc3VjaCBhcyBTU1JDIGNvbGxpc2lvbnMgYW5kIAot
ICoga2V5IGV4cGlyYXRpb25zLiAgCisgKiBvdXRzaWRlIHRoZSBgZGF0YSBwbGFuZScsIHN1Y2gg
YXMgU1NSQyBjb2xsaXNpb25zIGFuZAorICoga2V5IGV4cGlyYXRpb25zLgogICoKICAqIFdoZW4g
YSBrZXkgZXhwaXJlcyBvciB0aGUgbWF4aW11bSBudW1iZXIgb2YgcGFja2V0cyBoYXMgYmVlbgog
ICogcmVhY2hlZCwgYW4gU1JUUCBzdHJlYW0gd2lsbCBlbnRlciBhbiBgZXhwaXJlZCcgc3RhdGUg
aW4gd2hpY2ggbm8KQEAgLTE1OTYsMzQgKzE1NTksMjggQEAgc3J0cF9nZXRfdXNlcl9kYXRhKHNy
dHBfdCBjdHgpOwogICogYXJlIHVuYWZmZWN0ZWQsIHVubGVzcyBrZXkgc2hhcmluZyBpcyB1c2Vk
IGJ5IHRoYXQgc3RyZWFtLiAgSW4gdGhlCiAgKiBsYXR0ZXIgY2FzZSwgYWxsIG9mIHRoZSBzdHJl
YW1zIGluIHRoZSBzZXNzaW9uIHdpbGwgZXhwaXJlLgogICovCi0KLXR5cGVkZWYgZW51bSB7IAot
ICBldmVudF9zc3JjX2NvbGxpc2lvbiwgICAgLyoqPAotCQkJICAgICogQW4gU1NSQyBjb2xsaXNp
b24gb2NjdXJlZC4gICAgICAgICAgICAgCi0JCQkgICAgKi8KLSAgZXZlbnRfa2V5X3NvZnRfbGlt
aXQsICAgIC8qKjwgQW4gU1JUUCBzdHJlYW0gcmVhY2hlZCB0aGUgc29mdCBrZXkKLQkJCSAgICAq
ICAgdXNhZ2UgbGltaXQgYW5kIHdpbGwgZXhwaXJlIHNvb24uCSAgIAotCQkJICAgICovCi0gIGV2
ZW50X2tleV9oYXJkX2xpbWl0LCAgICAvKio8IEFuIFNSVFAgc3RyZWFtIHJlYWNoZWQgdGhlIGhh
cmQgCi0JCQkgICAgKiAgIGtleSB1c2FnZSBsaW1pdCBhbmQgaGFzIGV4cGlyZWQuCi0JCQkgICAg
Ki8KLSAgZXZlbnRfcGFja2V0X2luZGV4X2xpbWl0IC8qKjwgQW4gU1JUUCBzdHJlYW0gcmVhY2hl
ZCB0aGUgaGFyZCAKLQkJCSAgICAqIHBhY2tldCBsaW1pdCAoMl40OCBwYWNrZXRzKS4gICAgICAg
ICAgICAgCi0JCQkgICAgKi8KK3R5cGVkZWYgZW51bSB7CisgICAgZXZlbnRfc3NyY19jb2xsaXNp
b24sICAgIC8qKjwgQW4gU1NSQyBjb2xsaXNpb24gb2NjdXJlZC4gICAgICAgICAgICAqLworICAg
IGV2ZW50X2tleV9zb2Z0X2xpbWl0LCAgICAvKio8IEFuIFNSVFAgc3RyZWFtIHJlYWNoZWQgdGhl
IHNvZnQga2V5ICAgKi8KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyoqPCB1c2FnZSBs
aW1pdCBhbmQgd2lsbCBleHBpcmUgc29vbi4gICAgICovCisgICAgZXZlbnRfa2V5X2hhcmRfbGlt
aXQsICAgIC8qKjwgQW4gU1JUUCBzdHJlYW0gcmVhY2hlZCB0aGUgaGFyZCAgICAgICAqLworICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAvKio8IGtleSB1c2FnZSBsaW1pdCBhbmQgaGFzIGV4
cGlyZWQuICAgICAgKi8KKyAgICBldmVudF9wYWNrZXRfaW5kZXhfbGltaXQgLyoqPCBBbiBTUlRQ
IHN0cmVhbSByZWFjaGVkIHRoZSBoYXJkICAgICAgICovCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIC8qKjwgcGFja2V0IGxpbWl0ICgyXjQ4IHBhY2tldHMpLiAgICAgICAgICAqLwogfSBz
cnRwX2V2ZW50X3Q7CiAKIC8qKgotICogQGJyaWVmIHNydHBfZXZlbnRfZGF0YV90IGlzIHRoZSBz
dHJ1Y3R1cmUgcGFzc2VkIGFzIGEgY2FsbGJhY2sgdG8gCisgKiBAYnJpZWYgc3J0cF9ldmVudF9k
YXRhX3QgaXMgdGhlIHN0cnVjdHVyZSBwYXNzZWQgYXMgYSBjYWxsYmFjayB0bwogICogdGhlIGV2
ZW50IGhhbmRsZXIgZnVuY3Rpb24KICAqCiAgKiBUaGUgc3RydWN0IHNydHBfZXZlbnRfZGF0YV90
IGhvbGRzIHRoZSBkYXRhIHBhc3NlZCB0byB0aGUgZXZlbnQKLSAqIGhhbmRsZXIgZnVuY3Rpb24u
ICAKKyAqIGhhbmRsZXIgZnVuY3Rpb24uCiAgKi8KLQogdHlwZWRlZiBzdHJ1Y3Qgc3J0cF9ldmVu
dF9kYXRhX3QgewotICBzcnRwX3QgICAgICAgIHNlc3Npb247ICAvKio8IFRoZSBzZXNzaW9uIGlu
IHdoaWNoIHRoZSBldmVudCBoYXBwZW5kLiAqLwotICB1aW50MzJfdCAgICAgIHNzcmM7ICAgICAv
Kio8IFRoZSBzc3JjIGluIGhvc3Qgb3JkZXIgb2YgdGhlIHN0cmVhbSBpbiB3aGljaCB0aGUgZXZl
bnQgaGFwcGVuZCAqLwotICBzcnRwX2V2ZW50X3QgIGV2ZW50OyAgICAvKio8IEFuIGVudW0gaW5k
aWNhdGluZyB0aGUgdHlwZSBvZiBldmVudC4gICAqLworICAgIHNydHBfdCBzZXNzaW9uOyAgICAg
LyoqPCBUaGUgc2Vzc2lvbiBpbiB3aGljaCB0aGUgZXZlbnQgaGFwcGVuZC4gICAgICAgICovCisg
ICAgdWludDMyX3Qgc3NyYzsgICAgICAvKio8IFRoZSBzc3JjIGluIGhvc3Qgb3JkZXIgb2YgdGhl
IHN0cmVhbSBpbiB3aGljaCAgKi8KKyAgICAgICAgICAgICAgICAgICAgICAgIC8qKjwgdGhlIGV2
ZW50IGhhcHBlbmQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIHNydHBfZXZl
bnRfdCBldmVudDsgLyoqPCBBbiBlbnVtIGluZGljYXRpbmcgdGhlIHR5cGUgb2YgZXZlbnQuICAg
ICAgICAgICovCiB9IHNydHBfZXZlbnRfZGF0YV90OwogCiAvKioKQEAgLTE2MzYsMTIgKzE1OTMs
MTEgQEAgdHlwZWRlZiBzdHJ1Y3Qgc3J0cF9ldmVudF9kYXRhX3QgewogICogVGhlcmUgY2FuIG9u
bHkgYmUgYSBzaW5nbGUsIGdsb2JhbCBoYW5kbGVyIGZvciBhbGwgZXZlbnRzIGluCiAgKiBsaWJT
UlRQLgogICovCi0KLXR5cGVkZWYgdm9pZCAoc3J0cF9ldmVudF9oYW5kbGVyX2Z1bmNfdCkoc3J0
cF9ldmVudF9kYXRhX3QgKmRhdGEpOwordHlwZWRlZiB2b2lkKHNydHBfZXZlbnRfaGFuZGxlcl9m
dW5jX3QpKHNydHBfZXZlbnRfZGF0YV90ICpkYXRhKTsKIAogLyoqCiAgKiBAYnJpZWYgc2V0cyB0
aGUgZXZlbnQgaGFuZGxlciB0byB0aGUgZnVuY3Rpb24gc3VwcGxpZWQgYnkgdGhlIGNhbGxlci4K
LSAqIAorICoKICAqIFRoZSBmdW5jdGlvbiBjYWxsIHNydHBfaW5zdGFsbF9ldmVudF9oYW5kbGVy
KGZ1bmMpIHNldHMgdGhlIGV2ZW50CiAgKiBoYW5kbGVyIGZ1bmN0aW9uIHRvIHRoZSB2YWx1ZSBm
dW5jLiAgVGhlIHZhbHVlIE5VTEwgaXMgYWNjZXB0YWJsZQogICogYXMgYW4gYXJndW1lbnQ7IGlu
IHRoaXMgY2FzZSwgZXZlbnRzIHdpbGwgYmUgaWdub3JlZCByYXRoZXIgdGhhbgpAQCAtMTY1MSwy
NCArMTYwNywyMyBAQCB0eXBlZGVmIHZvaWQgKHNydHBfZXZlbnRfaGFuZGxlcl9mdW5jX3QpKHNy
dHBfZXZlbnRfZGF0YV90ICpkYXRhKTsKICAqICAgICAgICAgICAgIHBvaW50ZXIgYXMgYW4gYXJn
dW1lbnQgYW5kIHJldHVybnMgdm9pZC4gIFRoaXMgZnVuY3Rpb24KICAqICAgICAgICAgICAgIHdp
bGwgYmUgdXNlZCBieSBsaWJTUlRQIHRvIGhhbmRsZSBldmVudHMuCiAgKi8KLQogc3J0cF9lcnJf
c3RhdHVzX3Qgc3J0cF9pbnN0YWxsX2V2ZW50X2hhbmRsZXIoc3J0cF9ldmVudF9oYW5kbGVyX2Z1
bmNfdCBmdW5jKTsKIAogLyoqCi0gKiBAYnJpZWYgUmV0dXJucyB0aGUgdmVyc2lvbiBzdHJpbmcg
b2YgdGhlIGxpYnJhcnkuIAotICogCisgKiBAYnJpZWYgUmV0dXJucyB0aGUgdmVyc2lvbiBzdHJp
bmcgb2YgdGhlIGxpYnJhcnkuCisgKgogICovCiBjb25zdCBjaGFyICpzcnRwX2dldF92ZXJzaW9u
X3N0cmluZyh2b2lkKTsKIAogLyoqCi0gKiBAYnJpZWYgUmV0dXJucyB0aGUgbnVtZXJpYyByZXBy
ZXNlbnRhdGlvbiBvZiB0aGUgbGlicmFyeSB2ZXJzaW9uLiAKLSAqIAorICogQGJyaWVmIFJldHVy
bnMgdGhlIG51bWVyaWMgcmVwcmVzZW50YXRpb24gb2YgdGhlIGxpYnJhcnkgdmVyc2lvbi4KKyAq
CiAgKi8KIHVuc2lnbmVkIGludCBzcnRwX2dldF92ZXJzaW9uKHZvaWQpOwogCiAvKioKICAqIEBi
cmllZiBzcnRwX3NldF9kZWJ1Z19tb2R1bGUobW9kX25hbWUsIHYpCi0gKiAKKyAqCiAgKiBzZXRz
IGR5bmFtaWMgZGVidWdnaW5nIHRvIHRoZSB2YWx1ZSB2ICgwIGZvciBvZmYsIDEgZm9yIG9uKSBm
b3IgdGhlCiAgKiBkZWJ1ZyBtb2R1bGUgd2l0aCB0aGUgbmFtZSBtb2RfbmFtZQogICoKQEAgLTE3
MDYsNyArMTY2MSw5IEBAIHR5cGVkZWYgZW51bSB7CiAgKiBUaGVyZSBjYW4gb25seSBiZSBhIHNp
bmdsZSwgZ2xvYmFsIGhhbmRsZXIgZm9yIGFsbCBsb2cgbWVzc2FnZXMgaW4KICAqIGxpYlNSVFAu
CiAgKi8KLXR5cGVkZWYgdm9pZCAoc3J0cF9sb2dfaGFuZGxlcl9mdW5jX3QpKHNydHBfbG9nX2xl
dmVsX3QgbGV2ZWwsIGNvbnN0IGNoYXIgKiBtc2csIHZvaWQgKmRhdGEpOwordHlwZWRlZiB2b2lk
KHNydHBfbG9nX2hhbmRsZXJfZnVuY190KShzcnRwX2xvZ19sZXZlbF90IGxldmVsLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICptc2csCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZvaWQgKmRhdGEpOwogCiAvKioKICAqIEBi
cmllZiBzZXRzIHRoZSBsb2cgaGFuZGxlciB0byB0aGUgZnVuY3Rpb24gc3VwcGxpZWQgYnkgdGhl
IGNhbGxlci4KQEAgLTE3MTksMzQgKzE2NzYsNDQgQEAgdHlwZWRlZiB2b2lkIChzcnRwX2xvZ19o
YW5kbGVyX2Z1bmNfdCkoc3J0cF9sb2dfbGV2ZWxfdCBsZXZlbCwgY29uc3QgY2hhciAqIG1zZywK
ICAqCiAgKiBAcGFyYW0gZnVuYyBpcyBhIHBvaW50ZXIgdG8gYSBmdWN0aW9uIG9mIHR5cGUgc3J0
cF9sb2dfaGFuZGxlcl9mdW5jX3QuCiAgKiAgICAgICAgICAgICBUaGlzIGZ1bmN0aW9uIHdpbGwg
YmUgdXNlZCBieSBsaWJTUlRQIHRvIG91dHB1dCBsb2cgbWVzc2FnZXMuCi0gKiBAcGFyYW0gZGF0
YSBpcyBhIHVzZXIgcG9pbnRlciB0aGF0IHdpbGwgYmUgcmV0dXJuZWQgYXMgdGhlIGRhdGEgYXJn
dW1lbnQgaW4gZnVuYy4KKyAqIEBwYXJhbSBkYXRhIGlzIGEgdXNlciBwb2ludGVyIHRoYXQgd2ls
bCBiZSByZXR1cm5lZCBhcyB0aGUgZGF0YSBhcmd1bWVudCBpbgorICogZnVuYy4KICAqLwotc3J0
cF9lcnJfc3RhdHVzX3Qgc3J0cF9pbnN0YWxsX2xvZ19oYW5kbGVyKHNydHBfbG9nX2hhbmRsZXJf
ZnVuY190IGZ1bmMsIHZvaWQgKmRhdGEpOworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9pbnN0YWxs
X2xvZ19oYW5kbGVyKHNydHBfbG9nX2hhbmRsZXJfZnVuY190IGZ1bmMsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdm9pZCAqZGF0YSk7CiAKIC8qKgogICogQGJy
aWVmIHNydHBfZ2V0X3Byb3RlY3RfdHJhaWxlcl9sZW5ndGgoc2Vzc2lvbiwgdXNlX21raSwgbWtp
X2luZGV4LCBsZW5ndGgpCiAgKgotICogRGV0ZXJtaW5lcyB0aGUgbGVuZ3RoIG9mIHRoZSBhbW91
bnQgb2YgZGF0YSBMaWIgU1JUUCB3aWxsIGFkZCB0byB0aGUgCi0gKiBwYWNrZXQgZHVyaW5nIHRo
ZSBwcm90ZWN0IHByb2Nlc3MuIFRoZSBsZW5ndGggaXMgcmV0dXJuZWQgaW4gdGhlIGxlbmd0aCBw
YXJhbWV0ZXIKKyAqIERldGVybWluZXMgdGhlIGxlbmd0aCBvZiB0aGUgYW1vdW50IG9mIGRhdGEg
TGliIFNSVFAgd2lsbCBhZGQgdG8gdGhlCisgKiBwYWNrZXQgZHVyaW5nIHRoZSBwcm90ZWN0IHBy
b2Nlc3MuIFRoZSBsZW5ndGggaXMgcmV0dXJuZWQgaW4gdGhlIGxlbmd0aAorICogcGFyYW1ldGVy
CiAgKgotICogcmV0dXJucyBlcnJfc3RhdHVzX29rIG9uIHN1Y2Nlc3MsIGVycl9zdGF0dXNfYmFk
X21raSBpZiB0aGUgTUtJIGluZGV4IGlzIGludmFsaWQKKyAqIHJldHVybnMgZXJyX3N0YXR1c19v
ayBvbiBzdWNjZXNzLCBlcnJfc3RhdHVzX2JhZF9ta2kgaWYgdGhlIE1LSSBpbmRleCBpcworICog
aW52YWxpZAogICoKICAqLwotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9nZXRfcHJvdGVjdF90cmFp
bGVyX2xlbmd0aChzcnRwX3Qgc2Vzc2lvbiwgdWludDMyX3QgdXNlX21raSwKLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgbWtpX2luZGV4
LCB1aW50MzJfdCAqbGVuZ3RoKTsKK3NydHBfZXJyX3N0YXR1c190IHNydHBfZ2V0X3Byb3RlY3Rf
dHJhaWxlcl9sZW5ndGgoc3J0cF90IHNlc3Npb24sCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IHVzZV9ta2ksCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IG1raV9pbmRleCwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMy
X3QgKmxlbmd0aCk7CiAKIC8qKgotICogQGJyaWVmIHNydHBfZ2V0X3Byb3RlY3RfcnRjcF90cmFp
bGVyX2xlbmd0aChzZXNzaW9uLCB1c2VfbWtpLCBta2lfaW5kZXgsIGxlbmd0aCkKKyAqIEBicmll
ZiBzcnRwX2dldF9wcm90ZWN0X3J0Y3BfdHJhaWxlcl9sZW5ndGgoc2Vzc2lvbiwgdXNlX21raSwg
bWtpX2luZGV4LAorICogbGVuZ3RoKQogICoKLSAqIERldGVybWluZXMgdGhlIGxlbmd0aCBvZiB0
aGUgYW1vdW50IG9mIGRhdGEgTGliIFNSVFAgd2lsbCBhZGQgdG8gdGhlIAotICogcGFja2V0IGR1
cmluZyB0aGUgcHJvdGVjdCBwcm9jZXNzLiBUaGUgbGVuZ3RoIGlzIHJldHVybmVkIGluIHRoZSBs
ZW5ndGggcGFyYW1ldGVyCisgKiBEZXRlcm1pbmVzIHRoZSBsZW5ndGggb2YgdGhlIGFtb3VudCBv
ZiBkYXRhIExpYiBTUlRQIHdpbGwgYWRkIHRvIHRoZQorICogcGFja2V0IGR1cmluZyB0aGUgcHJv
dGVjdCBwcm9jZXNzLiBUaGUgbGVuZ3RoIGlzIHJldHVybmVkIGluIHRoZSBsZW5ndGgKKyAqIHBh
cmFtZXRlcgogICoKLSAqIHJldHVybnMgZXJyX3N0YXR1c19vayBvbiBzdWNjZXNzLCBlcnJfc3Rh
dHVzX2JhZF9ta2kgaWYgdGhlIE1LSSBpbmRleCBpcyBpbnZhbGlkCisgKiByZXR1cm5zIGVycl9z
dGF0dXNfb2sgb24gc3VjY2VzcywgZXJyX3N0YXR1c19iYWRfbWtpIGlmIHRoZSBNS0kgaW5kZXgg
aXMKKyAqIGludmFsaWQKICAqCiAgKi8KLXNydHBfZXJyX3N0YXR1c190IHNydHBfZ2V0X3Byb3Rl
Y3RfcnRjcF90cmFpbGVyX2xlbmd0aChzcnRwX3Qgc2Vzc2lvbiwgdWludDMyX3QgdXNlX21raSwK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1
aW50MzJfdCBta2lfaW5kZXgsIHVpbnQzMl90ICpsZW5ndGgpOwotCitzcnRwX2Vycl9zdGF0dXNf
dCBzcnRwX2dldF9wcm90ZWN0X3J0Y3BfdHJhaWxlcl9sZW5ndGgoc3J0cF90IHNlc3Npb24sCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWlu
dDMyX3QgdXNlX21raSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB1aW50MzJfdCBta2lfaW5kZXgsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgKmxlbmd0aCk7CiAKIC8q
KgogICogQGJyaWVmIHNydHBfc2V0X3N0cmVhbV9yb2Moc2Vzc2lvbiwgc3NyYywgcm9jKQpAQCAt
MTc1Nyw3ICsxNzI0LDkgQEAgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9nZXRfcHJvdGVjdF9ydGNw
X3RyYWlsZXJfbGVuZ3RoKHNydHBfdCBzZXNzaW9uLCB1aW50MzJfdAogICogc3RyZWFtIGZvdW5k
CiAgKgogICovCi1zcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3NldF9zdHJlYW1fcm9jKHNydHBfdCBz
ZXNzaW9uLCB1aW50MzJfdCBzc3JjLCB1aW50MzJfdCByb2MpOworc3J0cF9lcnJfc3RhdHVzX3Qg
c3J0cF9zZXRfc3RyZWFtX3JvYyhzcnRwX3Qgc2Vzc2lvbiwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgdWludDMyX3Qgc3NyYywKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgdWludDMyX3Qgcm9jKTsKIAogLyoqCiAgKiBAYnJpZWYgc3J0cF9nZXRf
c3RyZWFtX3JvYyhzZXNzaW9uLCBzc3JjLCByb2MpCkBAIC0xNzY4LDE0ICsxNzM3LDE3IEBAIHNy
dHBfZXJyX3N0YXR1c190IHNydHBfc2V0X3N0cmVhbV9yb2Moc3J0cF90IHNlc3Npb24sIHVpbnQz
Ml90IHNzcmMsIHVpbnQzMl90IHJvCiAgKiBzdHJlYW0gZm91bmQKICAqCiAgKi8KLXNydHBfZXJy
X3N0YXR1c190IHNydHBfZ2V0X3N0cmVhbV9yb2Moc3J0cF90IHNlc3Npb24sIHVpbnQzMl90IHNz
cmMsIHVpbnQzMl90ICpyb2MpOwotCitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2dldF9zdHJlYW1f
cm9jKHNydHBfdCBzZXNzaW9uLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB1aW50MzJfdCBzc3JjLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1
aW50MzJfdCAqcm9jKTsKIAogLyoqCiAgKiBAfQogICovCisKIC8qIGluIGhvc3Qgb3JkZXIsIHNv
IG91dHNpZGUgdGhlICNpZiAqLwotI2RlZmluZSBTUlRDUF9FX0JJVCAgICAgIDB4ODAwMDAwMDAK
KyNkZWZpbmUgU1JUQ1BfRV9CSVQgMHg4MDAwMDAwMAorCiAvKiBmb3IgYnl0ZS1hY2Nlc3MgKi8K
ICNkZWZpbmUgU1JUQ1BfRV9CWVRFX0JJVCAweDgwCiAjZGVmaW5lIFNSVENQX0lOREVYX01BU0sg
MHg3ZmZmZmZmZgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJzcnRwL2luY2x1ZGUvc3J0cF9wcml2LmggYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvaW5jbHVkZS9zcnRwX3By
aXYuaAppbmRleCAyNGQxOTJkYmNhMzU3NjQ1ZjlmMGI5YTlmNjkyYjJhMmE0NjgxOWQ4Li45ODhl
ZmM0MTY0ZDNjMWM0ZDdlZTZhNzI5YTk3ZjhmNDk2NTM4YTU4IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvaW5jbHVkZS9z
cnRwX3ByaXYuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L2xpYnNydHAvaW5jbHVkZS9zcnRwX3ByaXYuaApAQCAtNywyNiArNywyNiBAQAogICog
Q2lzY28gU3lzdGVtcywgSW5jLgogICovCiAvKgotICoJCisgKgogICogQ29weXJpZ2h0IChjKSAy
MDAxLTIwMTcgQ2lzY28gU3lzdGVtcywgSW5jLgogICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAq
IAorICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCiAgKiBhcmUgbWV0OgotICogCisgKgog
ICogICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
IGNvcHlyaWdodAogICogICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAKKyAqCiAgKiAgIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKICAqICAgY29weXJpZ2h0IG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKICAqICAgZGlzY2xh
aW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVk
CiAgKiAgIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqIAorICoKICAqICAgTmVpdGhlciB0aGUg
bmFtZSBvZiB0aGUgQ2lzY28gU3lzdGVtcywgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwogICog
ICBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3Rz
IGRlcml2ZWQKICAqICAgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Ig
d3JpdHRlbiBwZXJtaXNzaW9uLgotICogCisgKgogICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURF
RCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwogICogIkFTIElTIiBB
TkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QK
ICAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZ
IEFORCBGSVRORVNTCkBAIC02MiwxNCArNjIsMTQgQEAKIGV4dGVybiAiQyIgewogI2VuZGlmCiAK
LSNkZWZpbmUgU1JUUF9WRVJfU1RSSU5HCSAgICBQQUNLQUdFX1NUUklORwotI2RlZmluZSBTUlRQ
X1ZFUlNJT04gICAgICAgIFBBQ0tBR0VfVkVSU0lPTgorI2RlZmluZSBTUlRQX1ZFUl9TVFJJTkcg
UEFDS0FHRV9TVFJJTkcKKyNkZWZpbmUgU1JUUF9WRVJTSU9OIFBBQ0tBR0VfVkVSU0lPTgogCiB0
eXBlZGVmIHN0cnVjdCBzcnRwX3N0cmVhbV9jdHhfdF8gc3J0cF9zdHJlYW1fY3R4X3Q7CiB0eXBl
ZGVmIHNydHBfc3RyZWFtX2N0eF90ICpzcnRwX3N0cmVhbV90OwogCiAvKgotICogdGhlIGZvbGxv
d2luZyBkZWNsYXJhdGlvbnMgYXJlIGxpYlNSVFAgaW50ZXJuYWwgZnVuY3Rpb25zIAorICogdGhl
IGZvbGxvd2luZyBkZWNsYXJhdGlvbnMgYXJlIGxpYlNSVFAgaW50ZXJuYWwgZnVuY3Rpb25zCiAg
Ki8KIAogLyoKQEAgLTc4LDcgKzc4LDYgQEAgdHlwZWRlZiBzcnRwX3N0cmVhbV9jdHhfdCAqc3J0
cF9zdHJlYW1fdDsKICAqLwogc3J0cF9zdHJlYW1fdCBzcnRwX2dldF9zdHJlYW0oc3J0cF90IHNy
dHAsIHVpbnQzMl90IHNzcmMpOwogCi0KIC8qCiAgKiBzcnRwX3N0cmVhbV9pbml0X2tleXMocywg
aykgKHJlKWluaXRpYWxpemVzIHRoZSBzcnRwX3N0cmVhbV90IHMgYnkKICAqIGRlcml2aW5nIGFs
bCBvZiB0aGUgbmVlZGVkIGtleXMgdXNpbmcgdGhlIEtERiBhbmQgdGhlIGtleSBrLgpAQCAtODgs
MjkgKzg3LDI5IEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfc3RyZWFtX2luaXRfa2V5cyhzcnRw
X3N0cmVhbV9jdHhfdCAqc3J0cCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBjb25zdCB1bnNpZ25lZCBpbnQgY3VycmVudF9ta2lfaW5kZXgpOwogCiAvKgotICogc3J0
cF9zdHJlYW1faW5pdF9hbGxfbWFzdGVyX2tleXMocywgaywgbSkgKHJlKWluaXRpYWxpemVzIHRo
ZSBzcnRwX3N0cmVhbV90IHMgYnkKLSAqIGRlcml2aW5nIGFsbCBvZiB0aGUgbmVlZGVkIGtleXMg
Zm9yIGFsbCB0aGUgbWFzdGVyIGtleXMgdXNpbmcgdGhlIEtERiBhbmQgdGhlIGtleXMgZnJvbSBr
LgorICogc3J0cF9zdHJlYW1faW5pdF9hbGxfbWFzdGVyX2tleXMocywgaywgbSkgKHJlKWluaXRp
YWxpemVzIHRoZSBzcnRwX3N0cmVhbV90IHMKKyAqIGJ5IGRlcml2aW5nIGFsbCBvZiB0aGUgbmVl
ZGVkIGtleXMgZm9yIGFsbCB0aGUgbWFzdGVyIGtleXMgdXNpbmcgdGhlIEtERiBhbmQKKyAqIHRo
ZSBrZXlzIGZyb20gay4KICAqLwotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9zdGVhbV9pbml0X2Fs
bF9tYXN0ZXJfa2V5cyhzcnRwX3N0cmVhbV9jdHhfdCAqc3J0cCwKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgY2hhciAqa2V5LAotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcnRwX21hc3Rl
cl9rZXlfdCAqKmtleXMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGNvbnN0IHVuc2lnbmVkIGludCBtYXhfbWFzdGVyX2tleXMpOworc3J0cF9lcnJf
c3RhdHVzX3Qgc3J0cF9zdGVhbV9pbml0X2FsbF9tYXN0ZXJfa2V5cygKKyAgICBzcnRwX3N0cmVh
bV9jdHhfdCAqc3J0cCwKKyAgICB1bnNpZ25lZCBjaGFyICprZXksCisgICAgc3J0cF9tYXN0ZXJf
a2V5X3QgKiprZXlzLAorICAgIGNvbnN0IHVuc2lnbmVkIGludCBtYXhfbWFzdGVyX2tleXMpOwog
CiAvKgotICogc3J0cF9zdHJlYW1faW5pdChzLCBwKSBpbml0aWFsaXplcyB0aGUgc3J0cF9zdHJl
YW1fdCBzIHRvIAorICogc3J0cF9zdHJlYW1faW5pdChzLCBwKSBpbml0aWFsaXplcyB0aGUgc3J0
cF9zdHJlYW1fdCBzIHRvCiAgKiB1c2UgdGhlIHBvbGljeSBhdCB0aGUgbG9jYXRpb24gcAogICov
CiBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3N0cmVhbV9pbml0KHNydHBfc3RyZWFtX3Qgc3J0cCwg
Y29uc3Qgc3J0cF9wb2xpY3lfdCAqcCk7CiAKLQogLyoKLSAqIGxpYnNydHAgaW50ZXJuYWwgZGF0
YXR5cGVzIAorICogbGlic3J0cCBpbnRlcm5hbCBkYXRhdHlwZXMKICAqLwotCi10eXBlZGVmIGVu
dW0gZGlyZWN0aW9uX3QgeyAKLSAgZGlyX3Vua25vd24gICAgICAgPSAwLAotICBkaXJfc3J0cF9z
ZW5kZXIgICA9IDEsIAotICBkaXJfc3J0cF9yZWNlaXZlciA9IDIKK3R5cGVkZWYgZW51bSBkaXJl
Y3Rpb25fdCB7CisgICAgZGlyX3Vua25vd24gPSAwLAorICAgIGRpcl9zcnRwX3NlbmRlciA9IDEs
CisgICAgZGlyX3NydHBfcmVjZWl2ZXIgPSAyCiB9IGRpcmVjdGlvbl90OwogCiAvKgpAQCAtMTE5
LDU2ICsxMTgsNTIgQEAgdHlwZWRlZiBlbnVtIGRpcmVjdGlvbl90IHsKICAqIE1LSSBJRCB3aGlj
aCBpcyB1c2VkIHRvIGlkZW50aWZ5IHRoZSBzZXNzaW9uIGtleXMuCiAgKi8KIHR5cGVkZWYgc3Ry
dWN0IHNydHBfc2Vzc2lvbl9rZXlzX3QgewotICBzcnRwX2NpcGhlcl90ICpydHBfY2lwaGVyOwot
ICBzcnRwX2NpcGhlcl90ICpydHBfeHRuX2hkcl9jaXBoZXI7Ci0gIHNydHBfYXV0aF90ICAgKnJ0
cF9hdXRoOwotICBzcnRwX2NpcGhlcl90ICpydGNwX2NpcGhlcjsKLSAgc3J0cF9hdXRoX3QgICAq
cnRjcF9hdXRoOwotICB1aW50OF90ICAgICAgICBzYWx0W1NSVFBfQUVBRF9TQUxUX0xFTl07Ci0g
IHVpbnQ4X3QgICAgICAgIGNfc2FsdFtTUlRQX0FFQURfU0FMVF9MRU5dOwotICB1aW50OF90ICAg
ICAgICpta2lfaWQ7Ci0gIHVuc2lnbmVkIGludCAgIG1raV9zaXplOwotICBzcnRwX2tleV9saW1p
dF9jdHhfdCAqbGltaXQ7CisgICAgc3J0cF9jaXBoZXJfdCAqcnRwX2NpcGhlcjsKKyAgICBzcnRw
X2NpcGhlcl90ICpydHBfeHRuX2hkcl9jaXBoZXI7CisgICAgc3J0cF9hdXRoX3QgKnJ0cF9hdXRo
OworICAgIHNydHBfY2lwaGVyX3QgKnJ0Y3BfY2lwaGVyOworICAgIHNydHBfYXV0aF90ICpydGNw
X2F1dGg7CisgICAgdWludDhfdCBzYWx0W1NSVFBfQUVBRF9TQUxUX0xFTl07CisgICAgdWludDhf
dCBjX3NhbHRbU1JUUF9BRUFEX1NBTFRfTEVOXTsKKyAgICB1aW50OF90ICpta2lfaWQ7CisgICAg
dW5zaWduZWQgaW50IG1raV9zaXplOworICAgIHNydHBfa2V5X2xpbWl0X2N0eF90ICpsaW1pdDsK
IH0gc3J0cF9zZXNzaW9uX2tleXNfdDsKIAotCi0vKiAKKy8qCiAgKiBhbiBzcnRwX3N0cmVhbV90
IGhhcyBpdHMgb3duIFNTUkMsIGVuY3J5cHRpb24ga2V5LCBhdXRoZW50aWNhdGlvbgogICoga2V5
LCBzZXF1ZW5jZSBudW1iZXIsIGFuZCByZXBsYXkgZGF0YWJhc2UKLSAqIAorICoKICAqIG5vdGUg
dGhhdCB0aGUga2V5cyBtaWdodCBub3QgYWN0dWFsbHkgYmUgdW5pcXVlLCBpbiB3aGljaCBjYXNl
IHRoZQogICogc3J0cF9jaXBoZXJfdCBhbmQgc3J0cF9hdXRoX3QgcG9pbnRlcnMgd2lsbCBwb2lu
dCB0byB0aGUgc2FtZSBzdHJ1Y3R1cmVzCiAgKi8KLQogdHlwZWRlZiBzdHJ1Y3Qgc3J0cF9zdHJl
YW1fY3R4X3RfIHsKLSAgdWludDMyX3QgICBzc3JjOwotICBzcnRwX3Nlc3Npb25fa2V5c190ICpz
ZXNzaW9uX2tleXM7Ci0gIHVuc2lnbmVkIGludCBudW1fbWFzdGVyX2tleXM7Ci0gIHNydHBfcmRi
eF90ICAgICBydHBfcmRieDsKLSAgc3J0cF9zZWNfc2Vydl90IHJ0cF9zZXJ2aWNlczsKLSAgc3J0
cF9yZGJfdCAgICAgIHJ0Y3BfcmRiOwotICBzcnRwX3NlY19zZXJ2X3QgcnRjcF9zZXJ2aWNlczsK
LSAgZGlyZWN0aW9uX3QgZGlyZWN0aW9uOwotICBpbnQgICAgICAgIGFsbG93X3JlcGVhdF90eDsK
LSAgc3J0cF9la3Rfc3RyZWFtX3QgZWt0OyAKLSAgaW50ICAgICAgICplbmNfeHRuX2hkcjsKLSAg
aW50ICAgICAgICBlbmNfeHRuX2hkcl9jb3VudDsKLSAgdWludDMyX3QgcGVuZGluZ19yb2M7Ci0g
IHN0cnVjdCBzcnRwX3N0cmVhbV9jdHhfdF8gKm5leHQ7ICAgLyogbGlua2VkIGxpc3Qgb2Ygc3Ry
ZWFtcyAqLworICAgIHVpbnQzMl90IHNzcmM7CisgICAgc3J0cF9zZXNzaW9uX2tleXNfdCAqc2Vz
c2lvbl9rZXlzOworICAgIHVuc2lnbmVkIGludCBudW1fbWFzdGVyX2tleXM7CisgICAgc3J0cF9y
ZGJ4X3QgcnRwX3JkYng7CisgICAgc3J0cF9zZWNfc2Vydl90IHJ0cF9zZXJ2aWNlczsKKyAgICBz
cnRwX3JkYl90IHJ0Y3BfcmRiOworICAgIHNydHBfc2VjX3NlcnZfdCBydGNwX3NlcnZpY2VzOwor
ICAgIGRpcmVjdGlvbl90IGRpcmVjdGlvbjsKKyAgICBpbnQgYWxsb3dfcmVwZWF0X3R4OworICAg
IHNydHBfZWt0X3N0cmVhbV90IGVrdDsKKyAgICBpbnQgKmVuY194dG5faGRyOworICAgIGludCBl
bmNfeHRuX2hkcl9jb3VudDsKKyAgICB1aW50MzJfdCBwZW5kaW5nX3JvYzsKKyAgICBzdHJ1Y3Qg
c3J0cF9zdHJlYW1fY3R4X3RfICpuZXh0OyAvKiBsaW5rZWQgbGlzdCBvZiBzdHJlYW1zICovCiB9
IHN0cnBfc3RyZWFtX2N0eF90XzsKIAotCiAvKgogICogYW4gc3J0cF9jdHhfdCBob2xkcyBhIHN0
cmVhbSBsaXN0IGFuZCBhIHNlcnZpY2UgZGVzY3JpcHRpb24KICAqLwotCiB0eXBlZGVmIHN0cnVj
dCBzcnRwX2N0eF90XyB7Ci0gIHN0cnVjdCBzcnRwX3N0cmVhbV9jdHhfdF8gKnN0cmVhbV9saXN0
OyAgICAgLyogbGlua2VkIGxpc3Qgb2Ygc3RyZWFtcyAgICAgICAgICAgICovCi0gIHN0cnVjdCBz
cnRwX3N0cmVhbV9jdHhfdF8gKnN0cmVhbV90ZW1wbGF0ZTsgLyogYWN0IGFzIHRlbXBsYXRlIGZv
ciBvdGhlciBzdHJlYW1zICovCi0gIHZvaWQgKnVzZXJfZGF0YTsgICAgICAgICAgICAgICAgICAg
IC8qIHVzZXIgY3VzdG9tIGRhdGEgKi8KKyAgICBzdHJ1Y3Qgc3J0cF9zdHJlYW1fY3R4X3RfICpz
dHJlYW1fbGlzdDsgICAgIC8qIGxpbmtlZCBsaXN0IG9mIHN0cmVhbXMgICAgICovCisgICAgc3Ry
dWN0IHNydHBfc3RyZWFtX2N0eF90XyAqc3RyZWFtX3RlbXBsYXRlOyAvKiBhY3QgYXMgdGVtcGxh
dGUgZm9yIG90aGVyICAqLworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgLyogc3RyZWFtcyAgICAgICAgICAgICAgICAgICAgKi8KKyAgICB2b2lkICp1c2Vy
X2RhdGE7ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHVzZXIgY3VzdG9tIGRhdGEgICAg
ICAgICAgICovCiB9IHNydHBfY3R4X3RfOwogCi0KIC8qCiAgKiBzcnRwX2hkcl90IHJlcHJlc2Vu
dHMgYW4gUlRQIG9yIFNSVFAgaGVhZGVyLiAgVGhlIGJpdC1maWVsZHMgaW4KICAqIHRoaXMgc3Ry
dWN0dXJlIHNob3VsZCBiZSBkZWNsYXJlZCAidW5zaWduZWQgaW50IiBpbnN0ZWFkIG9mCkBAIC0y
MTEsMTMgKzIwNiwxMSBAQCB0eXBlZGVmIHN0cnVjdCB7CiAKICNlbmRpZgogCi0KIHR5cGVkZWYg
c3RydWN0IHsKLSAgdWludDE2X3QgcHJvZmlsZV9zcGVjaWZpYzsgICAvKiBwcm9maWxlLXNwZWNp
ZmljIGluZm8gICAgICAgICAgICAgICAqLwotICB1aW50MTZfdCBsZW5ndGg7ICAgICAgICAgICAg
IC8qIG51bWJlciBvZiAzMi1iaXQgd29yZHMgaW4gZXh0ZW5zaW9uICovCisgICAgdWludDE2X3Qg
cHJvZmlsZV9zcGVjaWZpYzsgLyogcHJvZmlsZS1zcGVjaWZpYyBpbmZvICAgICAgICAgICAgICAg
Ki8KKyAgICB1aW50MTZfdCBsZW5ndGg7ICAgICAgICAgICAvKiBudW1iZXIgb2YgMzItYml0IHdv
cmRzIGluIGV4dGVuc2lvbiAqLwogfSBzcnRwX2hkcl94dG5kX3Q7CiAKLQogLyoKICAqIHNydGNw
X2hkcl90IHJlcHJlc2VudHMgYSBzZWN1cmUgcnRjcCBoZWFkZXIKICAqCkBAIC0yMzcsMTAgKzIz
MCwxMCBAQCB0eXBlZGVmIHN0cnVjdCB7CiB9IHNydGNwX2hkcl90OwogCiB0eXBlZGVmIHN0cnVj
dCB7Ci0gICAgdW5zaWduZWQgaW50IGluZGV4IDogMzE7ICAgLyogc3J0Y3AgcGFja2V0IGluZGV4
IGluIG5ldHdvcmsgb3JkZXIhICAqLwotICAgIHVuc2lnbmVkIGludCBlIDogMTsgICAgICAgIC8q
IGVuY3J5cHRlZD8gMT15ZXMgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAvKiBvcHRpb25hbCBtaWtleS9ldGMgZ28gaGVyZSAgICAgICAgICAg
ICovCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogYW5kIHRoZW4gdGhlIHZhcmlh
YmxlLWxlbmd0aCBhdXRoIHRhZyAqLworICAgIHVuc2lnbmVkIGludCBpbmRleCA6IDMxOyAvKiBz
cnRjcCBwYWNrZXQgaW5kZXggaW4gbmV0d29yayBvcmRlciEgICovCisgICAgdW5zaWduZWQgaW50
IGUgOiAxOyAgICAgIC8qIGVuY3J5cHRlZD8gMT15ZXMgICAgICAgICAgICAgICAgICAgICAgKi8K
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogb3B0aW9uYWwgbWlrZXkvZXRjIGdvIGhl
cmUgICAgICAgICAgICAqLworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBhbmQgdGhl
biB0aGUgdmFyaWFibGUtbGVuZ3RoIGF1dGggdGFnICovCiB9IHNydGNwX3RyYWlsZXJfdDsKIAog
I2Vsc2UgLyogIEJJR19FTkRJQU4gKi8KQEAgLTI1NSwzMSArMjQ4LDMwIEBAIHR5cGVkZWYgc3Ry
dWN0IHsKIH0gc3J0Y3BfaGRyX3Q7CiAKIHR5cGVkZWYgc3RydWN0IHsKLSAgICB1bnNpZ25lZCBp
bnQgZSA6IDE7ICAgICAgICAvKiBlbmNyeXB0ZWQ/IDE9eWVzICAgICAgICAgICAgICAgICAgICAg
ICovCi0gICAgdW5zaWduZWQgaW50IGluZGV4IDogMzE7ICAgLyogc3J0Y3AgcGFja2V0IGluZGV4
ICAgICAgICAgICAgICAgICAgICAqLwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8q
IG9wdGlvbmFsIG1pa2V5L2V0YyBnbyBoZXJlICAgICAgICAgICAgKi8KLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAvKiBhbmQgdGhlbiB0aGUgdmFyaWFibGUtbGVuZ3RoIGF1dGggdGFn
ICovCisgICAgdW5zaWduZWQgaW50IGUgOiAxOyAgICAgIC8qIGVuY3J5cHRlZD8gMT15ZXMgICAg
ICAgICAgICAgICAgICAgICAgKi8KKyAgICB1bnNpZ25lZCBpbnQgaW5kZXggOiAzMTsgLyogc3J0
Y3AgcGFja2V0IGluZGV4ICAgICAgICAgICAgICAgICAgICAqLworICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAvKiBvcHRpb25hbCBtaWtleS9ldGMgZ28gaGVyZSAgICAgICAgICAgICovCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIGFuZCB0aGVuIHRoZSB2YXJpYWJsZS1sZW5n
dGggYXV0aCB0YWcgKi8KIH0gc3J0Y3BfdHJhaWxlcl90OwogCiAjZW5kaWYKIAotCiAvKgogICog
c3J0cF9oYW5kbGVfZXZlbnQoc3J0cCwgc3J0bSwgZXZudCkgY2FsbHMgdGhlIGV2ZW50IGhhbmRs
aW5nCiAgKiBmdW5jdGlvbiwgaWYgdGhlcmUgaXMgb25lLgogICoKLSAqIFRoaXMgbWFjcm8gaXMg
bm90IGluY2x1ZGVkIGluIHRoZSBkb2N1bWVudGF0aW9uIGFzIGl0IGlzIAorICogVGhpcyBtYWNy
byBpcyBub3QgaW5jbHVkZWQgaW4gdGhlIGRvY3VtZW50YXRpb24gYXMgaXQgaXMKICAqIGFuIGlu
dGVybmFsLW9ubHkgZnVuY3Rpb24uCiAgKi8KIAotI2RlZmluZSBzcnRwX2hhbmRsZV9ldmVudChz
cnRwLCBzdHJtLCBldm50KSAgICAgICAgIFwKLSAgIGlmKHNydHBfZXZlbnRfaGFuZGxlcikgeyAg
ICAgICAgICAgICAgICAgICAgICAgICBcCi0gICAgICBzcnRwX2V2ZW50X2RhdGFfdCBkYXRhOyAg
ICAgICAgICAgICAgICAgICAgICAgXAotICAgICAgZGF0YS5zZXNzaW9uID0gc3J0cDsgICAgICAg
ICAgICAgICAgICAgICAgICAgIFwKLSAgICAgIGRhdGEuc3NyYyAgICA9IG50b2hsKHN0cm0tPnNz
cmMpOyAgICAgICAgICAgICBcCi0gICAgICBkYXRhLmV2ZW50ICAgPSBldm50OyAgICAgICAgICAg
ICAgICAgICAgICAgICAgXAotICAgICAgc3J0cF9ldmVudF9oYW5kbGVyKCZkYXRhKTsgICAgICAg
ICAgICAgICAgICAgIFwKLX0gICAKKyNkZWZpbmUgc3J0cF9oYW5kbGVfZXZlbnQoc3J0cCwgc3Ry
bSwgZXZudCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgaWYgKHNy
dHBfZXZlbnRfaGFuZGxlcikgeyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgXAorICAgICAgICBzcnRwX2V2ZW50X2RhdGFfdCBkYXRhOyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgZGF0YS5zZXNz
aW9uID0gc3J0cDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBcCisgICAgICAgIGRhdGEuc3NyYyA9IG50b2hsKHN0cm0tPnNzcmMpOyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICBkYXRhLmV2ZW50ID0gZXZu
dDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwK
KyAgICAgICAgc3J0cF9ldmVudF9oYW5kbGVyKCZkYXRhKTsgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgfQogCiAjaWZkZWYgX19jcGx1c3BsdXMKIH0K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvbGlic3J0cC9pbmNsdWRlL3V0X3NpbS5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2luY2x1ZGUvdXRfc2ltLmgKaW5kZXggZDVjMDRi
YWVlNzJlMDg5ZjFhNmYyMzNlMjM2N2ViYjRiMDkwZTA3ZS4uZTY3OGI1ZmRmN2U0ZGY3OTQ4Yjdk
NTYwNjEwMzIyODFlZTRiODNhYiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2luY2x1ZGUvdXRfc2ltLmgKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2luY2x1
ZGUvdXRfc2ltLmgKQEAgLTksMjYgKzksMjYgQEAKICAqLwogCiAvKgotICoJCisgKgogICogQ29w
eXJpZ2h0IChjKSAyMDAxLTIwMTcsIENpc2NvIFN5c3RlbXMsIEluYy4KICAqIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCi0gKiAKKyAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwogICogYXJlIG1l
dDoKLSAqIAorICoKICAqICAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKICAqICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogCisgKgogICogICBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCiAgKiAgIGNv
cHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
CiAgKiAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVy
aWFscyBwcm92aWRlZAogICogICB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKiAKKyAqCiAgKiAg
IE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIENpc2NvIFN5c3RlbXMsIEluYy4gbm9yIHRoZSBuYW1l
cyBvZiBpdHMKICAqICAgY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJv
bW90ZSBwcm9kdWN0cyBkZXJpdmVkCiAgKiAgIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNw
ZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLSAqIAorICoKICAqIFRISVMgU09GVFdB
UkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMK
ICAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVE
SU5HLCBCVVQgTk9UCiAgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1F
UkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUwpAQCAtNDQsNDEgKzQ0LDM3IEBACiAgKgogICovCiAK
LQotCiAjaWZuZGVmIFVUX1NJTV9ICiAjZGVmaW5lIFVUX1NJTV9ICiAKLSNpbmNsdWRlICJpbnRl
Z2Vycy5oIiAgLyogZm9yIHVpbnQzMl90ICovCisjaW5jbHVkZSAiaW50ZWdlcnMuaCIgLyogZm9y
IHVpbnQzMl90ICovCiAKICNpZmRlZiBfX2NwbHVzcGx1cwogZXh0ZXJuICJDIiB7CiAjZW5kaWYK
IAotI2RlZmluZSBVVF9CVUYgMTYwICAgICAgLyogbWF4aW11bSBhbW91bnQgb2YgcGFja2V0IHJl
b3JkZXIgKi8KKyNkZWZpbmUgVVRfQlVGIDE2MCAvKiBtYXhpbXVtIGFtb3VudCBvZiBwYWNrZXQg
cmVvcmRlciAqLwogCiB0eXBlZGVmIHN0cnVjdCB7Ci0gIHVpbnQzMl90IGluZGV4OwotICB1aW50
MzJfdCBidWZmZXJbVVRfQlVGXTsKKyAgICB1aW50MzJfdCBpbmRleDsKKyAgICB1aW50MzJfdCBi
dWZmZXJbVVRfQlVGXTsKIH0gdXRfY29ubmVjdGlvbjsKIAogLyoKLSAqIHV0X2luaXQoJnUpIGlu
aXRpYWxpemVzIHRoZSB1dF9jb25uZWN0aW9uIAorICogdXRfaW5pdCgmdSkgaW5pdGlhbGl6ZXMg
dGhlIHV0X2Nvbm5lY3Rpb24KICAqCiAgKiB0aGlzIGZ1bmN0aW9uIHNob3VsZCBhbHdheXMgYmUg
dGhlIGZpcnN0IG9uZSBjYWxsZWQgb24gYSBuZXcKICAqIHV0X2Nvbm5lY3Rpb24KICAqLwogCi12
b2lkCi11dF9pbml0KHV0X2Nvbm5lY3Rpb24gKnV0Yyk7Cit2b2lkIHV0X2luaXQodXRfY29ubmVj
dGlvbiAqdXRjKTsKIAogLyoKICAqIHV0X25leHRfaW5kZXgoJnUpIHJldHVybnMgdGhlIG5leHQg
aW5kZXggZnJvbSB0aGUgc2ltdWxhdGVkCiAgKiB1bnJlbGlhYmxlIGNvbm5lY3Rpb24KICAqLwog
Ci11aW50MzJfdAotdXRfbmV4dF9pbmRleCh1dF9jb25uZWN0aW9uICp1dGMpOwordWludDMyX3Qg
dXRfbmV4dF9pbmRleCh1dF9jb25uZWN0aW9uICp1dGMpOwogCiAjaWZkZWYgX19jcGx1c3BsdXMK
IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlic3J0cC9zcnRwL2VrdC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL3NydHAvZWt0LmMKaW5kZXggY2QyYzA1ZDljN2I3MGIw
MDVkNDI3ZGJmZmUyNmYwNjI5NTEyNzY1NS4uYjU0ZWNmNjRlYjQ0NWVlNTk0MTQyNWEyMmY0NmEx
NmNmZGU3ZjRjOSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJzcnRwL3NydHAvZWt0LmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL3NydHAvZWt0LmMKQEAgLTIsMzEg
KzIsMzEgQEAKICAqIGVrdC5jCiAgKgogICogRW5jcnlwdGVkIEtleSBUcmFuc3BvcnQgZm9yIFNS
VFAKLSAqIAorICoKICAqIERhdmlkIE1jR3JldwogICogQ2lzY28gU3lzdGVtcywgSW5jLgogICov
CiAvKgotICoJCisgKgogICogQ29weXJpZ2h0IChjKSAyMDAxLTIwMTcgQ2lzY28gU3lzdGVtcywg
SW5jLgogICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqIAorICoKICAqIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICog
bW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zCiAgKiBhcmUgbWV0OgotICogCisgKgogICogICBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAogICogICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0g
KiAKKyAqCiAgKiAgIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUKICAqICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcKICAqICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlv
biBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkCiAgKiAgIHdpdGggdGhlIGRpc3RyaWJ1
dGlvbi4KLSAqIAorICoKICAqICAgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgQ2lzY28gU3lzdGVt
cywgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwogICogICBjb250cmlidXRvcnMgbWF5IGJlIHVz
ZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQKICAqICAgZnJvbSB0aGlz
IHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotICog
CisgKgogICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERF
UlMgQU5EIENPTlRSSUJVVE9SUwogICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKICAqIExJTUlURUQgVE8sIFRIRSBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCkBAIC00Miw3ICs0
Miw2IEBACiAgKgogICovCiAKLQogI2luY2x1ZGUgInNydHBfcHJpdi5oIgogI2luY2x1ZGUgImVy
ci5oIgogI2luY2x1ZGUgImVrdC5oIgpAQCAtNjQsMTk1ICs2MywyMTkgQEAgZXh0ZXJuIHNydHBf
ZGVidWdfbW9kdWxlX3QgbW9kX3NydHA7CiAgKiAgIHwgICAgSW5pdGlhbCBTZXF1ZW5jZSBOdW1i
ZXIgICAgfCAgIFNlY3VyaXR5IFBhcmFtZXRlciBJbmRleCAgICB8CiAgKiAgICstKy0rLSstKy0r
LSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rCiAg
KgotICovCQkJIAorICovCiAKICNkZWZpbmUgRUtUX09DVEVUU19BRlRFUl9CQVNFX1RBRyAyNAot
I2RlZmluZSBFS1RfT0NURVRTX0FGVEVSX0VNSyAgICAgICA4Ci0jZGVmaW5lIEVLVF9PQ1RFVFNf
QUZURVJfUk9DICAgICAgIDQKLSNkZWZpbmUgRUtUX1NQSV9MRU4gICAgICAgICAgICAgICAgMgot
Ci11bnNpZ25lZCBzcnRwX2VrdF9vY3RldHNfYWZ0ZXJfYmFzZV90YWcoc3J0cF9la3Rfc3RyZWFt
X3QgZWt0KSB7Ci0gIC8qCi0gICAqIGlmIHRoZSBwb2ludGVyIGVrdCBpcyBOVUxMLCB0aGVuIEVL
VCBpcyBub3QgaW4gZWZmZWN0LCBzbyB3ZQotICAgKiBpbmRpY2F0ZSB0aGlzIGJ5IHJldHVybmlu
ZyB6ZXJvCi0gICAqLwotICBpZiAoIWVrdCkKKyNkZWZpbmUgRUtUX09DVEVUU19BRlRFUl9FTUsg
OAorI2RlZmluZSBFS1RfT0NURVRTX0FGVEVSX1JPQyA0CisjZGVmaW5lIEVLVF9TUElfTEVOIDIK
KwordW5zaWduZWQgc3J0cF9la3Rfb2N0ZXRzX2FmdGVyX2Jhc2VfdGFnKHNydHBfZWt0X3N0cmVh
bV90IGVrdCkKK3sKKyAgICAvKgorICAgICAqIGlmIHRoZSBwb2ludGVyIGVrdCBpcyBOVUxMLCB0
aGVuIEVLVCBpcyBub3QgaW4gZWZmZWN0LCBzbyB3ZQorICAgICAqIGluZGljYXRlIHRoaXMgYnkg
cmV0dXJuaW5nIHplcm8KKyAgICAgKi8KKyAgICBpZiAoIWVrdCkKKyAgICAgICAgcmV0dXJuIDA7
CisKKyAgICBzd2l0Y2ggKGVrdC0+ZGF0YS0+ZWt0X2NpcGhlcl90eXBlKSB7CisgICAgY2FzZSBT
UlRQX0VLVF9DSVBIRVJfQUVTXzEyOF9FQ0I6CisgICAgICAgIHJldHVybiAxNiArIEVLVF9PQ1RF
VFNfQUZURVJfRU1LOworICAgICAgICBicmVhazsKKyAgICBkZWZhdWx0OgorICAgICAgICBicmVh
azsKKyAgICB9CiAgICAgcmV0dXJuIDA7Ci0KLSAgc3dpdGNoKGVrdC0+ZGF0YS0+ZWt0X2NpcGhl
cl90eXBlKSB7Ci0gIGNhc2UgU1JUUF9FS1RfQ0lQSEVSX0FFU18xMjhfRUNCOgotICAgIHJldHVy
biAxNiArIEVLVF9PQ1RFVFNfQUZURVJfRU1LOwotICAgIGJyZWFrOwotICBkZWZhdWx0OgotICAg
IGJyZWFrOwotICB9Ci0gIHJldHVybiAwOwogfQogCi1zdGF0aWMgaW5saW5lIHNydHBfZWt0X3Nw
aV90IHNydGNwX3BhY2tldF9nZXRfZWt0X3NwaShjb25zdCB1aW50OF90ICpwYWNrZXRfc3RhcnQs
IHVuc2lnbmVkIHBrdF9vY3RldF9sZW4pIHsKLSAgY29uc3QgdWludDhfdCAqc3BpX2xvY2F0aW9u
OwotICAKLSAgc3BpX2xvY2F0aW9uID0gcGFja2V0X3N0YXJ0ICsgKHBrdF9vY3RldF9sZW4gLSBF
S1RfU1BJX0xFTik7Ci0gIAotICByZXR1cm4gKigoY29uc3Qgc3J0cF9la3Rfc3BpX3QgKilzcGlf
bG9jYXRpb24pOwotfQorc3RhdGljIGlubGluZSBzcnRwX2VrdF9zcGlfdCBzcnRjcF9wYWNrZXRf
Z2V0X2VrdF9zcGkoCisgICAgY29uc3QgdWludDhfdCAqcGFja2V0X3N0YXJ0LAorICAgIHVuc2ln
bmVkIHBrdF9vY3RldF9sZW4pCit7CisgICAgY29uc3QgdWludDhfdCAqc3BpX2xvY2F0aW9uOwor
CisgICAgc3BpX2xvY2F0aW9uID0gcGFja2V0X3N0YXJ0ICsgKHBrdF9vY3RldF9sZW4gLSBFS1Rf
U1BJX0xFTik7CiAKLXN0YXRpYyBpbmxpbmUgdWludDMyX3Qgc3J0Y3BfcGFja2V0X2dldF9la3Rf
cm9jKGNvbnN0IHVpbnQ4X3QgKnBhY2tldF9zdGFydCwgdW5zaWduZWQgcGt0X29jdGV0X2xlbikg
ewotICBjb25zdCB1aW50OF90ICpyb2NfbG9jYXRpb247Ci0gIAotICByb2NfbG9jYXRpb24gPSBw
YWNrZXRfc3RhcnQgKyAocGt0X29jdGV0X2xlbiAtIEVLVF9PQ1RFVFNfQUZURVJfUk9DKTsKLSAg
Ci0gIHJldHVybiAqKChjb25zdCB1aW50MzJfdCAqKXJvY19sb2NhdGlvbik7CisgICAgcmV0dXJu
ICooKGNvbnN0IHNydHBfZWt0X3NwaV90ICopc3BpX2xvY2F0aW9uKTsKIH0KIAotc3RhdGljIGlu
bGluZSBjb25zdCB1aW50OF90ICogc3J0Y3BfcGFja2V0X2dldF9lbWtfbG9jYXRpb24oY29uc3Qg
dWludDhfdCAqcGFja2V0X3N0YXJ0LCB1bnNpZ25lZCBwa3Rfb2N0ZXRfbGVuKSB7Ci0gIGNvbnN0
IHVpbnQ4X3QgKmxvY2F0aW9uOwotICAKLSAgbG9jYXRpb24gPSBwYWNrZXRfc3RhcnQgKyAocGt0
X29jdGV0X2xlbiAtIEVLVF9PQ1RFVFNfQUZURVJfQkFTRV9UQUcpOworc3RhdGljIGlubGluZSB1
aW50MzJfdCBzcnRjcF9wYWNrZXRfZ2V0X2VrdF9yb2MoY29uc3QgdWludDhfdCAqcGFja2V0X3N0
YXJ0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5z
aWduZWQgcGt0X29jdGV0X2xlbikKK3sKKyAgICBjb25zdCB1aW50OF90ICpyb2NfbG9jYXRpb247
CisKKyAgICByb2NfbG9jYXRpb24gPSBwYWNrZXRfc3RhcnQgKyAocGt0X29jdGV0X2xlbiAtIEVL
VF9PQ1RFVFNfQUZURVJfUk9DKTsKIAotICByZXR1cm4gbG9jYXRpb247CisgICAgcmV0dXJuICoo
KGNvbnN0IHVpbnQzMl90ICopcm9jX2xvY2F0aW9uKTsKIH0KIAorc3RhdGljIGlubGluZSBjb25z
dCB1aW50OF90ICpzcnRjcF9wYWNrZXRfZ2V0X2Vta19sb2NhdGlvbigKKyAgICBjb25zdCB1aW50
OF90ICpwYWNrZXRfc3RhcnQsCisgICAgdW5zaWduZWQgcGt0X29jdGV0X2xlbikKK3sKKyAgICBj
b25zdCB1aW50OF90ICpsb2NhdGlvbjsKIAotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9la3RfYWxs
b2Moc3J0cF9la3Rfc3RyZWFtX3QgKnN0cmVhbV9kYXRhLCBzcnRwX2VrdF9wb2xpY3lfdCBwb2xp
Y3kpIHsKKyAgICBsb2NhdGlvbiA9IHBhY2tldF9zdGFydCArIChwa3Rfb2N0ZXRfbGVuIC0gRUtU
X09DVEVUU19BRlRFUl9CQVNFX1RBRyk7CiAKLSAgLyoKLSAgICogaWYgdGhlIHBvbGljeSBwb2lu
dGVyIGlzIE5VTEwsIHRoZW4gRUtUIGlzIG5vdCBpbiB1c2UKLSAgICogc28gd2UganVzdCBzZXQg
dGhlIEVLVCBzdHJlYW0gZGF0YSBwb2ludGVyIHRvIE5VTEwKLSAgICovCi0gIGlmICghcG9saWN5
KSB7Ci0gICAgKnN0cmVhbV9kYXRhID0gTlVMTDsKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVz
X29rOwotICB9CisgICAgcmV0dXJuIGxvY2F0aW9uOworfQogCi0gIC8qIFRPRE8gKi8KLSAgKnN0
cmVhbV9kYXRhID0gTlVMTDsKK3NydHBfZXJyX3N0YXR1c190IHNydHBfZWt0X2FsbG9jKHNydHBf
ZWt0X3N0cmVhbV90ICpzdHJlYW1fZGF0YSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHNydHBfZWt0X3BvbGljeV90IHBvbGljeSkKK3sKKyAgICAvKgorICAgICAqIGlmIHRoZSBw
b2xpY3kgcG9pbnRlciBpcyBOVUxMLCB0aGVuIEVLVCBpcyBub3QgaW4gdXNlCisgICAgICogc28g
d2UganVzdCBzZXQgdGhlIEVLVCBzdHJlYW0gZGF0YSBwb2ludGVyIHRvIE5VTEwKKyAgICAgKi8K
KyAgICBpZiAoIXBvbGljeSkgeworICAgICAgICAqc3RyZWFtX2RhdGEgPSBOVUxMOworICAgICAg
ICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOworICAgIH0KKworICAgIC8qIFRPRE8gKi8KKyAg
ICAqc3RyZWFtX2RhdGEgPSBOVUxMOwogCi0gIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7Cisg
ICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0KIAotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0
cF9la3Rfc3RyZWFtX2luaXRfZnJvbV9wb2xpY3koc3J0cF9la3Rfc3RyZWFtX3Qgc3RyZWFtX2Rh
dGEsIHNydHBfZWt0X3BvbGljeV90IHBvbGljeSkgewotICBpZiAoIXN0cmVhbV9kYXRhKQotICAg
IHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2VrdF9z
dHJlYW1faW5pdF9mcm9tX3BvbGljeSgKKyAgICBzcnRwX2VrdF9zdHJlYW1fdCBzdHJlYW1fZGF0
YSwKKyAgICBzcnRwX2VrdF9wb2xpY3lfdCBwb2xpY3kpCit7CisgICAgaWYgKCFzdHJlYW1fZGF0
YSkKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIAotICByZXR1cm4gc3J0cF9l
cnJfc3RhdHVzX29rOworICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAKLQotdm9p
ZCBhZXNfZGVjcnlwdF93aXRoX3Jhd19rZXkodm9pZCAqY2lwaGVydGV4dCwgY29uc3Qgdm9pZCAq
a2V5LCBpbnQga2V5X2xlbikgewordm9pZCBhZXNfZGVjcnlwdF93aXRoX3Jhd19rZXkodm9pZCAq
Y2lwaGVydGV4dCwgY29uc3Qgdm9pZCAqa2V5LCBpbnQga2V5X2xlbikKK3sKICNpZm5kZWYgT1BF
TlNTTAotLy9GSVhNRTogbmVlZCB0byBnZXQgdGhpcyB3b3JraW5nIHRocm91Z2ggdGhlIGNyeXB0
byBtb2R1bGUgaW50ZXJmYWNlCi0gIHNydHBfYWVzX2V4cGFuZGVkX2tleV90IGV4cGFuZGVkX2tl
eTsKKyAgICAvLyBGSVhNRTogbmVlZCB0byBnZXQgdGhpcyB3b3JraW5nIHRocm91Z2ggdGhlIGNy
eXB0byBtb2R1bGUgaW50ZXJmYWNlCisgICAgc3J0cF9hZXNfZXhwYW5kZWRfa2V5X3QgZXhwYW5k
ZWRfa2V5OwogCi0gIHNydHBfYWVzX2V4cGFuZF9kZWNyeXB0aW9uX2tleShrZXksIGtleV9sZW4s
ICZleHBhbmRlZF9rZXkpOwotICBzcnRwX2Flc19kZWNyeXB0KGNpcGhlcnRleHQsICZleHBhbmRl
ZF9rZXkpOworICAgIHNydHBfYWVzX2V4cGFuZF9kZWNyeXB0aW9uX2tleShrZXksIGtleV9sZW4s
ICZleHBhbmRlZF9rZXkpOworICAgIHNydHBfYWVzX2RlY3J5cHQoY2lwaGVydGV4dCwgJmV4cGFu
ZGVkX2tleSk7CiAjZW5kaWYKIH0KIAogLyoKICAqIFRoZSBmdW5jdGlvbiBzcnRwX3N0cmVhbV9p
bml0X2Zyb21fZWt0KCkgaW5pdGlhbGl6ZXMgYSBzdHJlYW0gdXNpbmcKLSAqIHRoZSBFS1QgZGF0
YSBmcm9tIGFuIFNSVENQIHRyYWlsZXIuICAKKyAqIHRoZSBFS1QgZGF0YSBmcm9tIGFuIFNSVENQ
IHRyYWlsZXIuCiAgKi8KIAotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9zdHJlYW1faW5pdF9mcm9t
X2VrdChzcnRwX3N0cmVhbV90IHN0cmVhbSwgY29uc3Qgdm9pZCAqc3J0Y3BfaGRyLCB1bnNpZ25l
ZCBwa3Rfb2N0ZXRfbGVuKSB7Ci0gIHNydHBfZXJyX3N0YXR1c190IGVycjsKLSAgY29uc3QgdWlu
dDhfdCAqbWFzdGVyX2tleTsKLSAgc3J0cF9wb2xpY3lfdCBzcnRwX3BvbGljeTsKLSAgdWludDMy
X3Qgcm9jOwotCi0gIC8qCi0gICAqIE5PVEU6IGF0IHByZXNlbnQsIHdlIG9ubHkgc3VwcG9ydCBh
IHNpbmdsZSBla3RfcG9saWN5IGF0IGEgdGltZS4gIAotICAgKi8KLSAgaWYgKHN0cmVhbS0+ZWt0
LT5kYXRhLT5zcGkgIT0gCi0gICAgICBzcnRjcF9wYWNrZXRfZ2V0X2VrdF9zcGkoc3J0Y3BfaGRy
LCBwa3Rfb2N0ZXRfbGVuKSkKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX25vX2N0eDsKLQot
ICBpZiAoc3RyZWFtLT5la3QtPmRhdGEtPmVrdF9jaXBoZXJfdHlwZSAhPSBTUlRQX0VLVF9DSVBI
RVJfQUVTXzEyOF9FQ0IpCi0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW07Ci0K
LSAgLyogZGVjcnlwdCB0aGUgRW5jcnlwdGVkIE1hc3RlciBLZXkgZmllbGQgKi8KLSAgbWFzdGVy
X2tleSA9IHNydGNwX3BhY2tldF9nZXRfZW1rX2xvY2F0aW9uKHNydGNwX2hkciwgcGt0X29jdGV0
X2xlbik7Ci0gIC8qIEZJWCE/IFRoaXMgZGVjcnlwdHMgdGhlIG1hc3RlciBrZXkgaW4tcGxhY2Us
IGFuZCBuZXZlciB1c2VzIGl0ICovCi0gIC8qIEZJWCE/IEl0J3MgYWxzbyBwYXNzaW5nIHRvIGVr
dF9kZWNfa2V5ICh3aGljaCBpcyBhbiBhZXNfZXhwYW5kZWRfa2V5X3QpCi0gICAqIHRvIGEgZnVu
Y3Rpb24gd2hpY2ggZXhwZWN0cyBhIHJhdyAodW5leHBhbmRlZCkga2V5ICovCi0gIGFlc19kZWNy
eXB0X3dpdGhfcmF3X2tleSgodm9pZCopbWFzdGVyX2tleSwgJnN0cmVhbS0+ZWt0LT5kYXRhLT5l
a3RfZGVjX2tleSwgMTYpOwotCi0gIC8qIHNldCB0aGUgU1JUUCBST0MgKi8KLSAgcm9jID0gc3J0
Y3BfcGFja2V0X2dldF9la3Rfcm9jKHNydGNwX2hkciwgcGt0X29jdGV0X2xlbik7Ci0gIGVyciA9
IHNydHBfcmRieF9zZXRfcm9jKCZzdHJlYW0tPnJ0cF9yZGJ4LCByb2MpOwotICBpZiAoZXJyKSBy
ZXR1cm4gZXJyOwotCi0gIGVyciA9IHNydHBfc3RyZWFtX2luaXQoc3RyZWFtLCAmc3J0cF9wb2xp
Y3kpOwotICBpZiAoZXJyKSByZXR1cm4gZXJyOwotCi0gIHJldHVybiBzcnRwX2Vycl9zdGF0dXNf
b2s7Ci19CitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3N0cmVhbV9pbml0X2Zyb21fZWt0KHNydHBf
c3RyZWFtX3Qgc3RyZWFtLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBjb25zdCB2b2lkICpzcnRjcF9oZHIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHVuc2lnbmVkIHBrdF9vY3RldF9sZW4pCit7CisgICAgc3J0cF9lcnJf
c3RhdHVzX3QgZXJyOworICAgIGNvbnN0IHVpbnQ4X3QgKm1hc3Rlcl9rZXk7CisgICAgc3J0cF9w
b2xpY3lfdCBzcnRwX3BvbGljeTsKKyAgICB1aW50MzJfdCByb2M7CisKKyAgICAvKgorICAgICAq
IE5PVEU6IGF0IHByZXNlbnQsIHdlIG9ubHkgc3VwcG9ydCBhIHNpbmdsZSBla3RfcG9saWN5IGF0
IGEgdGltZS4KKyAgICAgKi8KKyAgICBpZiAoc3RyZWFtLT5la3QtPmRhdGEtPnNwaSAhPQorICAg
ICAgICBzcnRjcF9wYWNrZXRfZ2V0X2VrdF9zcGkoc3J0Y3BfaGRyLCBwa3Rfb2N0ZXRfbGVuKSkK
KyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19ub19jdHg7CisKKyAgICBpZiAoc3RyZWFt
LT5la3QtPmRhdGEtPmVrdF9jaXBoZXJfdHlwZSAhPSBTUlRQX0VLVF9DSVBIRVJfQUVTXzEyOF9F
Q0IpCisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtOworCisgICAgLyog
ZGVjcnlwdCB0aGUgRW5jcnlwdGVkIE1hc3RlciBLZXkgZmllbGQgKi8KKyAgICBtYXN0ZXJfa2V5
ID0gc3J0Y3BfcGFja2V0X2dldF9lbWtfbG9jYXRpb24oc3J0Y3BfaGRyLCBwa3Rfb2N0ZXRfbGVu
KTsKKyAgICAvKiBGSVghPyBUaGlzIGRlY3J5cHRzIHRoZSBtYXN0ZXIga2V5IGluLXBsYWNlLCBh
bmQgbmV2ZXIgdXNlcyBpdCAqLworICAgIC8qIEZJWCE/IEl0J3MgYWxzbyBwYXNzaW5nIHRvIGVr
dF9kZWNfa2V5ICh3aGljaCBpcyBhbiBhZXNfZXhwYW5kZWRfa2V5X3QpCisgICAgICogdG8gYSBm
dW5jdGlvbiB3aGljaCBleHBlY3RzIGEgcmF3ICh1bmV4cGFuZGVkKSBrZXkgKi8KKyAgICBhZXNf
ZGVjcnlwdF93aXRoX3Jhd19rZXkoKHZvaWQgKiltYXN0ZXJfa2V5LAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAmc3RyZWFtLT5la3QtPmRhdGEtPmVrdF9kZWNfa2V5LCAxNik7CisKKyAg
ICAvKiBzZXQgdGhlIFNSVFAgUk9DICovCisgICAgcm9jID0gc3J0Y3BfcGFja2V0X2dldF9la3Rf
cm9jKHNydGNwX2hkciwgcGt0X29jdGV0X2xlbik7CisgICAgZXJyID0gc3J0cF9yZGJ4X3NldF9y
b2MoJnN0cmVhbS0+cnRwX3JkYngsIHJvYyk7CisgICAgaWYgKGVycikKKyAgICAgICAgcmV0dXJu
IGVycjsKKworICAgIGVyciA9IHNydHBfc3RyZWFtX2luaXQoc3RyZWFtLCAmc3J0cF9wb2xpY3kp
OworICAgIGlmIChlcnIpCisgICAgICAgIHJldHVybiBlcnI7CiAKLXZvaWQgc3J0cF9la3Rfd3Jp
dGVfZGF0YShzcnRwX2VrdF9zdHJlYW1fdCBla3QsIHVpbnQ4X3QgKmJhc2VfdGFnLCB1bnNpZ25l
ZCBiYXNlX3RhZ19sZW4sIGludCAqcGFja2V0X2xlbiwgc3J0cF94dGRfc2VxX251bV90IHBrdF9p
bmRleCkgewotICB1aW50MzJfdCByb2M7Ci0gIHVpbnQxNl90IGlzbjsKLSAgdW5zaWduZWQgZW1r
X2xlbjsKLSAgdWludDhfdCAqcGFja2V0OwotCi0gIC8qIGlmIHRoZSBwb2ludGVyIGVrdCBpcyBO
VUxMLCB0aGVuIEVLVCBpcyBub3QgaW4gZWZmZWN0ICovCi0gIGlmICghZWt0KSB7Ci0gICAgZGVi
dWdfcHJpbnQobW9kX3NydHAsICJFS1Qgbm90IGluIHVzZSIsIE5VTEwpOwotICAgIHJldHVybjsK
LSAgfQotCi0gIC8qIHdyaXRlIHplcm9zIGludG8gdGhlIGxvY2F0aW9uIG9mIHRoZSBiYXNlIHRh
ZyAqLwotICBvY3RldF9zdHJpbmdfc2V0X3RvX3plcm8oYmFzZV90YWcsIGJhc2VfdGFnX2xlbik7
Ci0gIHBhY2tldCA9IGJhc2VfdGFnICsgYmFzZV90YWdfbGVuOwotCi0gIC8qIGNvcHkgZW5jcnlw
dGVkIG1hc3RlciBrZXkgaW50byBwYWNrZXQgKi8KLSAgZW1rX2xlbiA9IHNydHBfZWt0X29jdGV0
c19hZnRlcl9iYXNlX3RhZyhla3QpOwotICBtZW1jcHkocGFja2V0LCBla3QtPmVuY3J5cHRlZF9t
YXN0ZXJfa2V5LCBlbWtfbGVuKTsKLSAgZGVidWdfcHJpbnQobW9kX3NydHAsICJ3cml0aW5nIEVL
VCBFTUs6ICVzLCIsIAotCSAgICAgIHNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcocGFja2V0
LCBlbWtfbGVuKSk7Ci0gIHBhY2tldCArPSBlbWtfbGVuOwotCi0gIC8qIGNvcHkgUk9DIGludG8g
cGFja2V0ICovCi0gIHJvYyA9ICh1aW50MzJfdCkocGt0X2luZGV4ID4+IDE2KTsKLSAgKigodWlu
dDMyX3QgKilwYWNrZXQpID0gYmUzMl90b19jcHUocm9jKTsKLSAgZGVidWdfcHJpbnQobW9kX3Ny
dHAsICJ3cml0aW5nIEVLVCBST0M6ICVzLCIsIAotCSAgICAgIHNydHBfb2N0ZXRfc3RyaW5nX2hl
eF9zdHJpbmcocGFja2V0LCBzaXplb2Yocm9jKSkpOwotICBwYWNrZXQgKz0gc2l6ZW9mKHJvYyk7
Ci0KLSAgLyogY29weSBJU04gaW50byBwYWNrZXQgKi8KLSAgaXNuID0gKHVpbnQxNl90KXBrdF9p
bmRleDsKLSAgKigodWludDE2X3QgKilwYWNrZXQpID0gaHRvbnMoaXNuKTsKLSAgZGVidWdfcHJp
bnQobW9kX3NydHAsICJ3cml0aW5nIEVLVCBJU046ICVzLCIsIAotCSAgICAgIHNydHBfb2N0ZXRf
c3RyaW5nX2hleF9zdHJpbmcocGFja2V0LCBzaXplb2YoaXNuKSkpOwotICBwYWNrZXQgKz0gc2l6
ZW9mKGlzbik7Ci0KLSAgLyogY29weSBTUEkgaW50byBwYWNrZXQgKi8KLSAgKigodWludDE2X3Qg
KilwYWNrZXQpID0gaHRvbnMoZWt0LT5kYXRhLT5zcGkpOwotICBkZWJ1Z19wcmludChtb2Rfc3J0
cCwgIndyaXRpbmcgRUtUIFNQSTogJXMsIiwgCi0JICAgICAgc3J0cF9vY3RldF9zdHJpbmdfaGV4
X3N0cmluZyhwYWNrZXQsIHNpemVvZihla3QtPmRhdGEtPnNwaSkpKTsKLQotICAvKiBpbmNyZWFz
ZSBwYWNrZXQgbGVuZ3RoIGFwcHJvcHJpYXRlbHkgKi8KLSAgKnBhY2tldF9sZW4gKz0gRUtUX09D
VEVUU19BRlRFUl9FTUsgKyBlbWtfbGVuOworICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7
CiB9CiAKK3ZvaWQgc3J0cF9la3Rfd3JpdGVfZGF0YShzcnRwX2VrdF9zdHJlYW1fdCBla3QsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgdWludDhfdCAqYmFzZV90YWcsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgdW5zaWduZWQgYmFzZV90YWdfbGVuLAorICAgICAgICAgICAgICAgICAgICAg
ICAgIGludCAqcGFja2V0X2xlbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICBzcnRwX3h0ZF9z
ZXFfbnVtX3QgcGt0X2luZGV4KQoreworICAgIHVpbnQzMl90IHJvYzsKKyAgICB1aW50MTZfdCBp
c247CisgICAgdW5zaWduZWQgZW1rX2xlbjsKKyAgICB1aW50OF90ICpwYWNrZXQ7CisKKyAgICAv
KiBpZiB0aGUgcG9pbnRlciBla3QgaXMgTlVMTCwgdGhlbiBFS1QgaXMgbm90IGluIGVmZmVjdCAq
LworICAgIGlmICghZWt0KSB7CisgICAgICAgIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAiRUtUIG5v
dCBpbiB1c2UiLCBOVUxMKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIC8qIHdyaXRl
IHplcm9zIGludG8gdGhlIGxvY2F0aW9uIG9mIHRoZSBiYXNlIHRhZyAqLworICAgIG9jdGV0X3N0
cmluZ19zZXRfdG9femVybyhiYXNlX3RhZywgYmFzZV90YWdfbGVuKTsKKyAgICBwYWNrZXQgPSBi
YXNlX3RhZyArIGJhc2VfdGFnX2xlbjsKKworICAgIC8qIGNvcHkgZW5jcnlwdGVkIG1hc3RlciBr
ZXkgaW50byBwYWNrZXQgKi8KKyAgICBlbWtfbGVuID0gc3J0cF9la3Rfb2N0ZXRzX2FmdGVyX2Jh
c2VfdGFnKGVrdCk7CisgICAgbWVtY3B5KHBhY2tldCwgZWt0LT5lbmNyeXB0ZWRfbWFzdGVyX2tl
eSwgZW1rX2xlbik7CisgICAgZGVidWdfcHJpbnQobW9kX3NydHAsICJ3cml0aW5nIEVLVCBFTUs6
ICVzLCIsCisgICAgICAgICAgICAgICAgc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZyhwYWNr
ZXQsIGVta19sZW4pKTsKKyAgICBwYWNrZXQgKz0gZW1rX2xlbjsKKworICAgIC8qIGNvcHkgUk9D
IGludG8gcGFja2V0ICovCisgICAgcm9jID0gKHVpbnQzMl90KShwa3RfaW5kZXggPj4gMTYpOwor
ICAgICooKHVpbnQzMl90ICopcGFja2V0KSA9IGJlMzJfdG9fY3B1KHJvYyk7CisgICAgZGVidWdf
cHJpbnQobW9kX3NydHAsICJ3cml0aW5nIEVLVCBST0M6ICVzLCIsCisgICAgICAgICAgICAgICAg
c3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZyhwYWNrZXQsIHNpemVvZihyb2MpKSk7CisgICAg
cGFja2V0ICs9IHNpemVvZihyb2MpOworCisgICAgLyogY29weSBJU04gaW50byBwYWNrZXQgKi8K
KyAgICBpc24gPSAodWludDE2X3QpcGt0X2luZGV4OworICAgICooKHVpbnQxNl90ICopcGFja2V0
KSA9IGh0b25zKGlzbik7CisgICAgZGVidWdfcHJpbnQobW9kX3NydHAsICJ3cml0aW5nIEVLVCBJ
U046ICVzLCIsCisgICAgICAgICAgICAgICAgc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZyhw
YWNrZXQsIHNpemVvZihpc24pKSk7CisgICAgcGFja2V0ICs9IHNpemVvZihpc24pOworCisgICAg
LyogY29weSBTUEkgaW50byBwYWNrZXQgKi8KKyAgICAqKCh1aW50MTZfdCAqKXBhY2tldCkgPSBo
dG9ucyhla3QtPmRhdGEtPnNwaSk7CisgICAgZGVidWdfcHJpbnQobW9kX3NydHAsICJ3cml0aW5n
IEVLVCBTUEk6ICVzLCIsCisgICAgICAgICAgICAgICAgc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0
cmluZyhwYWNrZXQsIHNpemVvZihla3QtPmRhdGEtPnNwaSkpKTsKKworICAgIC8qIGluY3JlYXNl
IHBhY2tldCBsZW5ndGggYXBwcm9wcmlhdGVseSAqLworICAgICpwYWNrZXRfbGVuICs9IEVLVF9P
Q1RFVFNfQUZURVJfRU1LICsgZW1rX2xlbjsKK30KIAogLyoKICAqIFRoZSBmdW5jdGlvbiBjYWxs
IHNydGNwX2VrdF90cmFpbGVyKGVrdCwgYXV0aF9sZW4sIGF1dGhfdGFnICAgKQotICogCisgKgog
ICogSWYgdGhlIHBvaW50ZXIgZWt0IGlzIE5VTEwsIHRoZW4gdGhlIG90aGVyIGlucHV0cyBhcmUg
dW5hZmZlY3RlZC4KICAqCiAgKiBhdXRoX3RhZyBpcyBhIHBvaW50ZXIgdG8gdGhlIHBvaW50ZXIg
dG8gdGhlIGxvY2F0aW9uIG9mIHRoZQogICogYXV0aGVudGljYXRpb24gdGFnIGluIHRoZSBwYWNr
ZXQuICBJZiBFS1QgaXMgaW4gZWZmZWN0LCB0aGVuIHRoZQotICogYXV0aF90YWcgcG9pbnRlciBp
cyBzZXQgdG8gdGhlIGxvY2F0aW9uIAorICogYXV0aF90YWcgcG9pbnRlciBpcyBzZXQgdG8gdGhl
IGxvY2F0aW9uCiAgKi8KIAotdm9pZCBzcnRjcF9la3RfdHJhaWxlcihzcnRwX2VrdF9zdHJlYW1f
dCBla3QsIHVuc2lnbmVkICphdXRoX2xlbiwgdm9pZCAqKmF1dGhfdGFnLCB2b2lkICp0YWdfY29w
eSkgeyAKLSAgLyogCi0gICAqIGlmIHRoZXJlIGlzIG5vIEVLVCBwb2xpY3ksIHRoZW4gdGhlIG90
aGVyIGlucHV0cyBhcmUgdW5hZmZlY3RlZAotICAgKi8KLSAgaWYgKCFla3QpIAotICAgIHJldHVy
bjsKLSAgICAgIAotICAvKiBjb3B5IGF1dGhfdGFnIGludG8gdGVtcG9yYXJ5IGxvY2F0aW9uICov
Ci0gIAordm9pZCBzcnRjcF9la3RfdHJhaWxlcihzcnRwX2VrdF9zdHJlYW1fdCBla3QsCisgICAg
ICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkICphdXRoX2xlbiwKKyAgICAgICAgICAgICAgICAg
ICAgICAgdm9pZCAqKmF1dGhfdGFnLAorICAgICAgICAgICAgICAgICAgICAgICB2b2lkICp0YWdf
Y29weSkKK3sKKyAgICAvKgorICAgICAqIGlmIHRoZXJlIGlzIG5vIEVLVCBwb2xpY3ksIHRoZW4g
dGhlIG90aGVyIGlucHV0cyBhcmUgdW5hZmZlY3RlZAorICAgICAqLworICAgIGlmICghZWt0KQor
ICAgICAgICByZXR1cm47CisKKyAgICAvKiBjb3B5IGF1dGhfdGFnIGludG8gdGVtcG9yYXJ5IGxv
Y2F0aW9uICovCiB9Ci0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9zcnRwL3NydHAuYyBiL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9zcnRwL3NydHAuYwppbmRleCBl
ZGU4MDRmMWQwYTJkMThjMjQzYmZmZjFjMTI5Y2U0NDBjYzA4YjEyLi40NDYyNTAxNWU3YjY4NWIw
N2Y5NTlhNWE2ZWI1OWFiMDg1ZmMzNDYzIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvc3J0cC9zcnRwLmMKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL3NydHAv
c3J0cC5jCkBAIC03LDI2ICs3LDI2IEBACiAgKiBDaXNjbyBTeXN0ZW1zLCBJbmMuCiAgKi8KIC8q
Ci0gKgkKKyAqCiAgKiBDb3B5cmlnaHQgKGMpIDIwMDEtMjAxNywgQ2lzY28gU3lzdGVtcywgSW5j
LgogICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqIAorICoKICAqIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9k
aWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zCiAgKiBhcmUgbWV0OgotICogCisgKgogICogICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291
cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAogICogICBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAK
KyAqCiAgKiAgIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUKICAqICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcKICAqICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkCiAgKiAgIHdpdGggdGhlIGRpc3RyaWJ1dGlv
bi4KLSAqIAorICoKICAqICAgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgQ2lzY28gU3lzdGVtcywg
SW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwogICogICBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQg
dG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQKICAqICAgZnJvbSB0aGlzIHNv
ZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotICogCisg
KgogICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMg
QU5EIENPTlRSSUJVVE9SUwogICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKICAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVE
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCkBAIC00OCw2NiArNDgs
NjcgQEAKICNpbmNsdWRlICJzcnRwX3ByaXYuaCIKICNpbmNsdWRlICJjcnlwdG9fdHlwZXMuaCIK
ICNpbmNsdWRlICJlcnIuaCIKLSNpbmNsdWRlICJla3QuaCIgICAgICAgICAgICAgLyogZm9yIFNS
VFAgRW5jcnlwdGVkIEtleSBUcmFuc3BvcnQgKi8KLSNpbmNsdWRlICJhbGxvYy5oIiAgICAgICAg
ICAgLyogZm9yIHNydHBfY3J5cHRvX2FsbG9jKCkgICAgICAgICAgKi8KKyNpbmNsdWRlICJla3Qu
aCIgICAvKiBmb3IgU1JUUCBFbmNyeXB0ZWQgS2V5IFRyYW5zcG9ydCAqLworI2luY2x1ZGUgImFs
bG9jLmgiIC8qIGZvciBzcnRwX2NyeXB0b19hbGxvYygpICovCisKICNpZmRlZiBPUEVOU1NMCi0j
aW5jbHVkZSAiYWVzX2djbV9vc3NsLmgiICAgIC8qIGZvciBBRVMgR0NNIG1vZGUgICovCi0jIGlm
ZGVmIE9QRU5TU0xfS0RGCi0jIGluY2x1ZGUgPG9wZW5zc2wva2RmLmg+Ci0jIGluY2x1ZGUgImFl
c19pY21fb3NzbC5oIiAgICAvKiBmb3IgQUVTIEdDTSBtb2RlICAqLwotIyBlbmRpZgorI2luY2x1
ZGUgImFlc19nY21fb3NzbC5oIiAvKiBmb3IgQUVTIEdDTSBtb2RlICovCisjaWZkZWYgT1BFTlNT
TF9LREYKKyNpbmNsdWRlIDxvcGVuc3NsL2tkZi5oPgorI2luY2x1ZGUgImFlc19pY21fb3NzbC5o
IiAvKiBmb3IgQUVTIEdDTSBtb2RlICovCisjZW5kaWYKICNlbmRpZgogCiAjaW5jbHVkZSA8bGlt
aXRzLmg+CiAjaWZkZWYgSEFWRV9ORVRJTkVUX0lOX0gKLSMgaW5jbHVkZSA8bmV0aW5ldC9pbi5o
PgorI2luY2x1ZGUgPG5ldGluZXQvaW4uaD4KICNlbGlmIGRlZmluZWQoSEFWRV9XSU5TT0NLMl9I
KQotIyBpbmNsdWRlIDx3aW5zb2NrMi5oPgorI2luY2x1ZGUgPHdpbnNvY2syLmg+CiAjZW5kaWYK
IAotCiAvKiB0aGUgZGVidWcgbW9kdWxlIGZvciBzcnRwICovCi0KIHNydHBfZGVidWdfbW9kdWxl
X3QgbW9kX3NydHAgPSB7Ci0gIDAsICAgICAgICAgICAgICAgICAgLyogZGVidWdnaW5nIGlzIG9m
ZiBieSBkZWZhdWx0ICovCi0gICJzcnRwIiAgICAgICAgICAgICAgLyogcHJpbnRhYmxlIG5hbWUg
Zm9yIG1vZHVsZSAgICovCisgICAgMCwgICAgIC8qIGRlYnVnZ2luZyBpcyBvZmYgYnkgZGVmYXVs
dCAqLworICAgICJzcnRwIiAvKiBwcmludGFibGUgbmFtZSBmb3IgbW9kdWxlICovCiB9OwogCi0j
ZGVmaW5lIG9jdGV0c19pbl9ydHBfaGVhZGVyICAgMTIKLSNkZWZpbmUgdWludDMyc19pbl9ydHBf
aGVhZGVyICAzCi0jZGVmaW5lIG9jdGV0c19pbl9ydGNwX2hlYWRlciAgOAorI2RlZmluZSBvY3Rl
dHNfaW5fcnRwX2hlYWRlciAxMgorI2RlZmluZSB1aW50MzJzX2luX3J0cF9oZWFkZXIgMworI2Rl
ZmluZSBvY3RldHNfaW5fcnRjcF9oZWFkZXIgOAogI2RlZmluZSB1aW50MzJzX2luX3J0Y3BfaGVh
ZGVyIDIKICNkZWZpbmUgb2N0ZXRzX2luX3J0cF9leHRuX2hkciA0CiAKLXN0YXRpYyBzcnRwX2Vy
cl9zdGF0dXNfdAotc3J0cF92YWxpZGF0ZV9ydHBfaGVhZGVyKHZvaWQgKnJ0cF9oZHIsIGludCAq
cGt0X29jdGV0X2xlbikgewotICBpZiAoKnBrdF9vY3RldF9sZW4gPCBvY3RldHNfaW5fcnRwX2hl
YWRlcikKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJhbTsKLQotICBzcnRwX2hk
cl90ICpoZHIgPSAoc3J0cF9oZHJfdCAqKXJ0cF9oZHI7CitzdGF0aWMgc3J0cF9lcnJfc3RhdHVz
X3Qgc3J0cF92YWxpZGF0ZV9ydHBfaGVhZGVyKHZvaWQgKnJ0cF9oZHIsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCAqcGt0X29jdGV0X2xlbikK
K3sKKyAgICBpZiAoKnBrdF9vY3RldF9sZW4gPCBvY3RldHNfaW5fcnRwX2hlYWRlcikKKyAgICAg
ICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW07CiAKLSAgLyogQ2hlY2sgUlRQIGhl
YWRlciBsZW5ndGggKi8KLSAgaW50IHJ0cF9oZWFkZXJfbGVuID0gb2N0ZXRzX2luX3J0cF9oZWFk
ZXIgKyA0ICogaGRyLT5jYzsKLSAgaWYgKGhkci0+eCA9PSAxKQotICAgIHJ0cF9oZWFkZXJfbGVu
ICs9IG9jdGV0c19pbl9ydHBfZXh0bl9oZHI7CisgICAgc3J0cF9oZHJfdCAqaGRyID0gKHNydHBf
aGRyX3QgKilydHBfaGRyOwogCi0gIGlmICgqcGt0X29jdGV0X2xlbiA8IHJ0cF9oZWFkZXJfbGVu
KQotICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtOworICAgIC8qIENoZWNrIFJU
UCBoZWFkZXIgbGVuZ3RoICovCisgICAgaW50IHJ0cF9oZWFkZXJfbGVuID0gb2N0ZXRzX2luX3J0
cF9oZWFkZXIgKyA0ICogaGRyLT5jYzsKKyAgICBpZiAoaGRyLT54ID09IDEpCisgICAgICAgIHJ0
cF9oZWFkZXJfbGVuICs9IG9jdGV0c19pbl9ydHBfZXh0bl9oZHI7CiAKLSAgLyogVmVyaWZpbmcg
cHJvZmlsZSBsZW5ndGguICovCi0gIGlmIChoZHItPnggPT0gMSkgewotICAgIHNydHBfaGRyX3h0
bmRfdCAqeHRuX2hkciA9Ci0gICAgICAoc3J0cF9oZHJfeHRuZF90ICopKCh1aW50MzJfdCAqKWhk
ciArIHVpbnQzMnNfaW5fcnRwX2hlYWRlciArIGhkci0+Y2MpOwotICAgIGludCBwcm9maWxlX2xl
biA9IG50b2hzKHh0bl9oZHItPmxlbmd0aCk7Ci0gICAgcnRwX2hlYWRlcl9sZW4gKz0gcHJvZmls
ZV9sZW4gKiA0OwotICAgIC8qIHByb2ZpbGUgbGVuZ3RoIGNvdW50cyB0aGUgbnVtYmVyIG9mIDMy
LWJpdCB3b3JkcyAqLwogICAgIGlmICgqcGt0X29jdGV0X2xlbiA8IHJ0cF9oZWFkZXJfbGVuKQot
ICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW07Ci0gIH0KLSAgcmV0dXJuIHNy
dHBfZXJyX3N0YXR1c19vazsKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfcGFy
YW07CisKKyAgICAvKiBWZXJpZmluZyBwcm9maWxlIGxlbmd0aC4gKi8KKyAgICBpZiAoaGRyLT54
ID09IDEpIHsKKyAgICAgICAgc3J0cF9oZHJfeHRuZF90ICp4dG5faGRyID0KKyAgICAgICAgICAg
IChzcnRwX2hkcl94dG5kX3QgKikoKHVpbnQzMl90ICopaGRyICsgdWludDMyc19pbl9ydHBfaGVh
ZGVyICsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGRyLT5jYyk7CisgICAgICAg
IGludCBwcm9maWxlX2xlbiA9IG50b2hzKHh0bl9oZHItPmxlbmd0aCk7CisgICAgICAgIHJ0cF9o
ZWFkZXJfbGVuICs9IHByb2ZpbGVfbGVuICogNDsKKyAgICAgICAgLyogcHJvZmlsZSBsZW5ndGgg
Y291bnRzIHRoZSBudW1iZXIgb2YgMzItYml0IHdvcmRzICovCisgICAgICAgIGlmICgqcGt0X29j
dGV0X2xlbiA8IHJ0cF9oZWFkZXJfbGVuKQorICAgICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0
YXR1c19iYWRfcGFyYW07CisgICAgfQorICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9
CiAKLWNvbnN0IGNoYXIgKnNydHBfZ2V0X3ZlcnNpb25fc3RyaW5nICgpCitjb25zdCBjaGFyICpz
cnRwX2dldF92ZXJzaW9uX3N0cmluZygpCiB7CiAgICAgLyoKICAgICAgKiBTaW1wbHkgcmV0dXJu
IHRoZSBhdXRvdG9vbHMgZ2VuZXJhdGVkIHN0cmluZwpAQCAtMTE1LDI5ICsxMTYsMjkgQEAgY29u
c3QgY2hhciAqc3J0cF9nZXRfdmVyc2lvbl9zdHJpbmcgKCkKICAgICByZXR1cm4gU1JUUF9WRVJf
U1RSSU5HOwogfQogCi11bnNpZ25lZCBpbnQgc3J0cF9nZXRfdmVyc2lvbiAoKQordW5zaWduZWQg
aW50IHNydHBfZ2V0X3ZlcnNpb24oKQogewogICAgIHVuc2lnbmVkIGludCBtYWpvciA9IDAsIG1p
bm9yID0gMCwgbWljcm8gPSAwOwogICAgIHVuc2lnbmVkIGludCBydiA9IDA7CiAgICAgaW50IHBh
cnNlX3J2OwogCiAgICAgLyoKLSAgICAgKiBQYXJzZSB0aGUgYXV0b3Rvb2xzIGdlbmVyYXRlZCB2
ZXJzaW9uIAorICAgICAqIFBhcnNlIHRoZSBhdXRvdG9vbHMgZ2VuZXJhdGVkIHZlcnNpb24KICAg
ICAgKi8KICAgICBwYXJzZV9ydiA9IHNzY2FuZihTUlRQX1ZFUlNJT04sICIldS4ldS4ldSIsICZt
YWpvciwgJm1pbm9yLCAmbWljcm8pOwogICAgIGlmIChwYXJzZV9ydiAhPSAzKSB7Ci0JLyoKLQkg
KiBXZSdyZSBleHBlY3RlZCB0byBwYXJzZSBhbGwgMyB2ZXJzaW9uIGxldmVscy4KLQkgKiBJZiBu
b3QsIHRoZW4gdGhpcyBtdXN0IG5vdCBiZSBhbiBvZmZpY2lhbCByZWxlYXNlLgotCSAqIFJldHVy
biBhbGwgemVyb3Mgb24gdGhlIHZlcnNpb24KLQkgKi8KLQlyZXR1cm4gKDApOworICAgICAgICAv
KgorICAgICAgICAgKiBXZSdyZSBleHBlY3RlZCB0byBwYXJzZSBhbGwgMyB2ZXJzaW9uIGxldmVs
cy4KKyAgICAgICAgICogSWYgbm90LCB0aGVuIHRoaXMgbXVzdCBub3QgYmUgYW4gb2ZmaWNpYWwg
cmVsZWFzZS4KKyAgICAgICAgICogUmV0dXJuIGFsbCB6ZXJvcyBvbiB0aGUgdmVyc2lvbgorICAg
ICAgICAgKi8KKyAgICAgICAgcmV0dXJuICgwKTsKICAgICB9CiAKLSAgICAvKiAKKyAgICAvKgog
ICAgICAqIFdlIGFsbG93IDggYml0cyBmb3IgdGhlIG1ham9yIGFuZCBtaW5vciwgd2hpbGUKICAg
ICAgKiBhbGxvd2luZyAxNiBiaXRzIGZvciB0aGUgbWljcm8uICAxNiBiaXRzIGZvciB0aGUgbWlj
cm8KLSAgICAgKiBtYXkgYmUgYmVuZWZpY2lhbCBmb3IgYSBjb250aW51b3VzIGRlbGl2ZXJ5IG1v
ZGVsIAorICAgICAqIG1heSBiZSBiZW5lZmljaWFsIGZvciBhIGNvbnRpbnVvdXMgZGVsaXZlcnkg
bW9kZWwKICAgICAgKiBpbiB0aGUgZnV0dXJlLgogICAgICAqLwogICAgIHJ2IHw9IChtYWpvciAm
IDB4RkYpIDw8IDI0OwpAQCAtMTQ2LDQ0NSArMTQ3LDQwOSBAQCB1bnNpZ25lZCBpbnQgc3J0cF9n
ZXRfdmVyc2lvbiAoKQogICAgIHJldHVybiBydjsKIH0KIAotLyogUmVsZWFzZSAobWF5YmUgcGFy
dGlhbGx5IGFsbG9jYXRlZCkgc3RyZWFtLiAqLwotc3RhdGljIHZvaWQKLXNydHBfc3RyZWFtX2Zy
ZWUoc3J0cF9zdHJlYW1fY3R4X3QgKnN0cikgewotICB1bnNpZ25lZCBpbnQgaSA9IDA7Ci0gIHNy
dHBfc2Vzc2lvbl9rZXlzX3QgKnNlc3Npb25fa2V5cyA9IE5VTEw7CitzcnRwX2Vycl9zdGF0dXNf
dCBzcnRwX3N0cmVhbV9kZWFsbG9jKHNydHBfc3RyZWFtX2N0eF90ICpzdHJlYW0sCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHNydHBfc3RyZWFtX2N0eF90ICpz
dHJlYW1fdGVtcGxhdGUpCit7CisgICAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVzOworICAgIHVu
c2lnbmVkIGludCBpID0gMDsKKyAgICBzcnRwX3Nlc3Npb25fa2V5c190ICpzZXNzaW9uX2tleXMg
PSBOVUxMOworICAgIHNydHBfc2Vzc2lvbl9rZXlzX3QgKnRlbXBsYXRlX3Nlc3Npb25fa2V5cyA9
IE5VTEw7CiAKLSAgZm9yIChpID0gMDsgaSA8IHN0ci0+bnVtX21hc3Rlcl9rZXlzOyBpKyspIHsK
LSAgICBzZXNzaW9uX2tleXMgPSAmc3RyLT5zZXNzaW9uX2tleXNbaV07CisgICAgLyoKKyAgICAg
KiB3ZSB1c2UgYSBjb25zZXJ2YXRpdmUgZGVhbGxvY2F0aW9uIHN0cmF0ZWd5IC0gaWYgYW55IGRl
YWxsb2NhdGlvbgorICAgICAqIGZhaWxzLCB0aGVuIHdlIHJlcG9ydCB0aGF0IGZhY3Qgd2l0aG91
dCB0cnlpbmcgdG8gZGVhbGxvY2F0ZQorICAgICAqIGFueXRoaW5nIGVsc2UKKyAgICAgKi8KKyAg
ICBpZiAoc3RyZWFtLT5zZXNzaW9uX2tleXMpIHsKKyAgICAgICAgZm9yIChpID0gMDsgaSA8IHN0
cmVhbS0+bnVtX21hc3Rlcl9rZXlzOyBpKyspIHsKKyAgICAgICAgICAgIHNlc3Npb25fa2V5cyA9
ICZzdHJlYW0tPnNlc3Npb25fa2V5c1tpXTsKKworICAgICAgICAgICAgaWYgKHN0cmVhbV90ZW1w
bGF0ZSAmJgorICAgICAgICAgICAgICAgIHN0cmVhbS0+bnVtX21hc3Rlcl9rZXlzID09IHN0cmVh
bV90ZW1wbGF0ZS0+bnVtX21hc3Rlcl9rZXlzKSB7CisgICAgICAgICAgICAgICAgdGVtcGxhdGVf
c2Vzc2lvbl9rZXlzID0gJnN0cmVhbV90ZW1wbGF0ZS0+c2Vzc2lvbl9rZXlzW2ldOworICAgICAg
ICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICB0ZW1wbGF0ZV9zZXNzaW9uX2tleXMgPSBO
VUxMOworICAgICAgICAgICAgfQogCi0gICAgaWYgKHNlc3Npb25fa2V5cy0+cnRwX3h0bl9oZHJf
Y2lwaGVyKSB7Ci0gICAgICBzcnRwX2NpcGhlcl9kZWFsbG9jKHNlc3Npb25fa2V5cy0+cnRwX3h0
bl9oZHJfY2lwaGVyKTsKLSAgICB9CisgICAgICAgICAgICAvKgorICAgICAgICAgICAgKiBkZWFs
bG9jYXRlIGNpcGhlciwgaWYgaXQgaXMgbm90IHRoZSBzYW1lIGFzIHRoYXQgaW4gdGVtcGxhdGUK
KyAgICAgICAgICAgICovCisgICAgICAgICAgICBpZiAodGVtcGxhdGVfc2Vzc2lvbl9rZXlzICYm
CisgICAgICAgICAgICAgICAgc2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVyID09IHRlbXBsYXRlX3Nl
c3Npb25fa2V5cy0+cnRwX2NpcGhlcikgeworICAgICAgICAgICAgICAgIC8qIGRvIG5vdGhpbmcg
Ki8KKyAgICAgICAgICAgIH0gZWxzZSBpZiAoc2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVyKSB7Cisg
ICAgICAgICAgICAgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfZGVhbGxvYyhzZXNzaW9uX2tleXMt
PnJ0cF9jaXBoZXIpOworICAgICAgICAgICAgICAgIGlmIChzdGF0dXMpCisgICAgICAgICAgICAg
ICAgICAgIHJldHVybiBzdGF0dXM7CisgICAgICAgICAgICB9CiAKLSAgICBpZiAoc2Vzc2lvbl9r
ZXlzLT5ydGNwX2NpcGhlcikgewotICAgICAgc3J0cF9jaXBoZXJfZGVhbGxvYyhzZXNzaW9uX2tl
eXMtPnJ0Y3BfY2lwaGVyKTsKLSAgICB9CisgICAgICAgICAgICAvKgorICAgICAgICAgICAgICog
ZGVhbGxvY2F0ZSBhdXRoIGZ1bmN0aW9uLCBpZiBpdCBpcyBub3QgdGhlIHNhbWUgYXMgdGhhdCBp
bgorICAgICAgICAgICAgICogdGVtcGxhdGUKKyAgICAgICAgICAgICAqLworICAgICAgICAgICAg
aWYgKHRlbXBsYXRlX3Nlc3Npb25fa2V5cyAmJgorICAgICAgICAgICAgICAgIHNlc3Npb25fa2V5
cy0+cnRwX2F1dGggPT0gdGVtcGxhdGVfc2Vzc2lvbl9rZXlzLT5ydHBfYXV0aCkgeworICAgICAg
ICAgICAgICAgIC8qIGRvIG5vdGhpbmcgKi8KKyAgICAgICAgICAgIH0gZWxzZSBpZiAoc2Vzc2lv
bl9rZXlzLT5ydHBfYXV0aCkgeworICAgICAgICAgICAgICAgIHN0YXR1cyA9IHNydHBfYXV0aF9k
ZWFsbG9jKHNlc3Npb25fa2V5cy0+cnRwX2F1dGgpOworICAgICAgICAgICAgICAgIGlmIChzdGF0
dXMpCisgICAgICAgICAgICAgICAgICAgIHJldHVybiBzdGF0dXM7CisgICAgICAgICAgICB9CiAK
LSAgICBpZiAoc2Vzc2lvbl9rZXlzLT5ydGNwX2F1dGgpIHsKLSAgICAgIHNydHBfYXV0aF9kZWFs
bG9jKHNlc3Npb25fa2V5cy0+cnRjcF9hdXRoKTsKLSAgICB9CisgICAgICAgICAgICBpZiAodGVt
cGxhdGVfc2Vzc2lvbl9rZXlzICYmCisgICAgICAgICAgICAgICAgc2Vzc2lvbl9rZXlzLT5ydHBf
eHRuX2hkcl9jaXBoZXIgPT0KKyAgICAgICAgICAgICAgICAgICAgdGVtcGxhdGVfc2Vzc2lvbl9r
ZXlzLT5ydHBfeHRuX2hkcl9jaXBoZXIpIHsKKyAgICAgICAgICAgICAgICAvKiBkbyBub3RoaW5n
ICovCisgICAgICAgICAgICB9IGVsc2UgaWYgKHNlc3Npb25fa2V5cy0+cnRwX3h0bl9oZHJfY2lw
aGVyKSB7CisgICAgICAgICAgICAgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfZGVhbGxvYyhzZXNz
aW9uX2tleXMtPnJ0cF94dG5faGRyX2NpcGhlcik7CisgICAgICAgICAgICAgICAgaWYgKHN0YXR1
cykKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHN0YXR1czsKKyAgICAgICAgICAgIH0KIAot
ICAgIGlmIChzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXIpIHsKLSAgICAgIHNydHBfY2lwaGVyX2Rl
YWxsb2Moc2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVyKTsKLSAgICB9CisgICAgICAgICAgICAvKgor
ICAgICAgICAgICAgICogZGVhbGxvY2F0ZSBydGNwIGNpcGhlciwgaWYgaXQgaXMgbm90IHRoZSBz
YW1lIGFzIHRoYXQgaW4KKyAgICAgICAgICAgICAqIHRlbXBsYXRlCisgICAgICAgICAgICAgKi8K
KyAgICAgICAgICAgIGlmICh0ZW1wbGF0ZV9zZXNzaW9uX2tleXMgJiYKKyAgICAgICAgICAgICAg
ICBzZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyID09CisgICAgICAgICAgICAgICAgICAgIHRlbXBs
YXRlX3Nlc3Npb25fa2V5cy0+cnRjcF9jaXBoZXIpIHsKKyAgICAgICAgICAgICAgICAvKiBkbyBu
b3RoaW5nICovCisgICAgICAgICAgICB9IGVsc2UgaWYgKHNlc3Npb25fa2V5cy0+cnRjcF9jaXBo
ZXIpIHsKKyAgICAgICAgICAgICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9kZWFsbG9jKHNlc3Np
b25fa2V5cy0+cnRjcF9jaXBoZXIpOworICAgICAgICAgICAgICAgIGlmIChzdGF0dXMpCisgICAg
ICAgICAgICAgICAgICAgIHJldHVybiBzdGF0dXM7CisgICAgICAgICAgICB9CiAKLSAgICBpZiAo
c2Vzc2lvbl9rZXlzLT5ydHBfYXV0aCkgewotICAgICAgc3J0cF9hdXRoX2RlYWxsb2Moc2Vzc2lv
bl9rZXlzLT5ydHBfYXV0aCk7Ci0gICAgfQorICAgICAgICAgICAgLyoKKyAgICAgICAgICAgICAq
IGRlYWxsb2NhdGUgcnRjcCBhdXRoIGZ1bmN0aW9uLCBpZiBpdCBpcyBub3QgdGhlIHNhbWUgYXMg
dGhhdCBpbgorICAgICAgICAgICAgICogdGVtcGxhdGUKKyAgICAgICAgICAgICAqLworICAgICAg
ICAgICAgaWYgKHRlbXBsYXRlX3Nlc3Npb25fa2V5cyAmJgorICAgICAgICAgICAgICAgIHNlc3Np
b25fa2V5cy0+cnRjcF9hdXRoID09IHRlbXBsYXRlX3Nlc3Npb25fa2V5cy0+cnRjcF9hdXRoKSB7
CisgICAgICAgICAgICAgICAgLyogZG8gbm90aGluZyAqLworICAgICAgICAgICAgfSBlbHNlIGlm
IChzZXNzaW9uX2tleXMtPnJ0Y3BfYXV0aCkgeworICAgICAgICAgICAgICAgIHN0YXR1cyA9IHNy
dHBfYXV0aF9kZWFsbG9jKHNlc3Npb25fa2V5cy0+cnRjcF9hdXRoKTsKKyAgICAgICAgICAgICAg
ICBpZiAoc3RhdHVzKQorICAgICAgICAgICAgICAgICAgICByZXR1cm4gc3RhdHVzOworICAgICAg
ICAgICAgfQogCi0gICAgaWYgKHNlc3Npb25fa2V5cy0+bWtpX2lkKSB7Ci0gICAgICBzcnRwX2Ny
eXB0b19mcmVlKHNlc3Npb25fa2V5cy0+bWtpX2lkKTsKLSAgICB9CisgICAgICAgICAgICAvKgor
ICAgICAgICAgICAgICogemVyb2l6ZSB0aGUgc2FsdCB2YWx1ZQorICAgICAgICAgICAgICovCisg
ICAgICAgICAgICBvY3RldF9zdHJpbmdfc2V0X3RvX3plcm8oc2Vzc2lvbl9rZXlzLT5zYWx0LCBT
UlRQX0FFQURfU0FMVF9MRU4pOworICAgICAgICAgICAgb2N0ZXRfc3RyaW5nX3NldF90b196ZXJv
KHNlc3Npb25fa2V5cy0+Y19zYWx0LCBTUlRQX0FFQURfU0FMVF9MRU4pOworCisgICAgICAgICAg
ICBpZiAoc2Vzc2lvbl9rZXlzLT5ta2lfaWQpIHsKKyAgICAgICAgICAgICAgICBvY3RldF9zdHJp
bmdfc2V0X3RvX3plcm8oc2Vzc2lvbl9rZXlzLT5ta2lfaWQsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHNlc3Npb25fa2V5cy0+bWtpX3NpemUpOworICAgICAgICAg
ICAgICAgIHNydHBfY3J5cHRvX2ZyZWUoc2Vzc2lvbl9rZXlzLT5ta2lfaWQpOworICAgICAgICAg
ICAgICAgIHNlc3Npb25fa2V5cy0+bWtpX2lkID0gTlVMTDsKKyAgICAgICAgICAgIH0KIAotICAg
IGlmIChzZXNzaW9uX2tleXMtPmxpbWl0KSB7Ci0gICAgICBzcnRwX2NyeXB0b19mcmVlKHNlc3Np
b25fa2V5cy0+bGltaXQpOworICAgICAgICAgICAgLyoKKyAgICAgICAgICAgICAqIGRlYWxsb2Nh
dGUga2V5IHVzYWdlIGxpbWl0LCBpZiBpdCBpcyBub3QgdGhlIHNhbWUgYXMgdGhhdCBpbgorICAg
ICAgICAgICAgICogdGVtcGxhdGUKKyAgICAgICAgICAgICAqLworICAgICAgICAgICAgaWYgKHRl
bXBsYXRlX3Nlc3Npb25fa2V5cyAmJgorICAgICAgICAgICAgICAgIHNlc3Npb25fa2V5cy0+bGlt
aXQgPT0gdGVtcGxhdGVfc2Vzc2lvbl9rZXlzLT5saW1pdCkgeworICAgICAgICAgICAgICAgIC8q
IGRvIG5vdGhpbmcgKi8KKyAgICAgICAgICAgIH0gZWxzZSBpZiAoc2Vzc2lvbl9rZXlzLT5saW1p
dCkgeworICAgICAgICAgICAgICAgIHNydHBfY3J5cHRvX2ZyZWUoc2Vzc2lvbl9rZXlzLT5saW1p
dCk7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICAgICAgc3J0cF9jcnlwdG9fZnJlZShz
dHJlYW0tPnNlc3Npb25fa2V5cyk7CiAgICAgfQotICB9Ci0KLSAgc3J0cF9jcnlwdG9fZnJlZShz
dHItPnNlc3Npb25fa2V5cyk7CiAKLSAgaWYgKHN0ci0+ZW5jX3h0bl9oZHIpIHsKLSAgICBzcnRw
X2NyeXB0b19mcmVlKHN0ci0+ZW5jX3h0bl9oZHIpOwotICB9CisgICAgc3RhdHVzID0gc3J0cF9y
ZGJ4X2RlYWxsb2MoJnN0cmVhbS0+cnRwX3JkYngpOworICAgIGlmIChzdGF0dXMpCisgICAgICAg
IHJldHVybiBzdGF0dXM7CiAKLSAgc3J0cF9jcnlwdG9fZnJlZShzdHIpOwotfQorICAgIC8qIERB
TSAtIG5lZWQgdG8gZGVhbGxvY2F0ZSBFS1QgaGVyZSAqLwogCi1zcnRwX2Vycl9zdGF0dXNfdAot
c3J0cF9zdHJlYW1fYWxsb2Moc3J0cF9zdHJlYW1fY3R4X3QgKipzdHJfcHRyLAotCQkgIGNvbnN0
IHNydHBfcG9saWN5X3QgKnApIHsKLSAgc3J0cF9zdHJlYW1fY3R4X3QgKnN0cjsKLSAgc3J0cF9l
cnJfc3RhdHVzX3Qgc3RhdDsKLSAgdW5zaWduZWQgaW50IGkgPSAwOwotICBzcnRwX3Nlc3Npb25f
a2V5c190ICpzZXNzaW9uX2tleXMgPSBOVUxMOwotCi0gIC8qCi0gICAqIFRoaXMgZnVuY3Rpb24g
YWxsb2NhdGVzIHRoZSBzdHJlYW0gY29udGV4dCwgcnRwIGFuZCBydGNwIGNpcGhlcnMKLSAgICog
YW5kIGF1dGggZnVuY3Rpb25zLCBhbmQga2V5IGxpbWl0IHN0cnVjdHVyZS4gIElmIHRoZXJlIGlz
IGEKLSAgICogZmFpbHVyZSBkdXJpbmcgYWxsb2NhdGlvbiwgd2UgZnJlZSBhbGwgcHJldmlvdXNs
eSBhbGxvY2F0ZWQKLSAgICogbWVtb3J5IGFuZCByZXR1cm4gYSBmYWlsdXJlIGNvZGUuICBUaGUg
Y29kZSBjb3VsZCBwcm9iYWJseSAKLSAgICogYmUgaW1wcm92ZWQsIGJ1dCBpdCB3b3JrcyBhbmQg
c2hvdWxkIGJlIGNsZWFyLgotICAgKi8KLQotICAvKiBhbGxvY2F0ZSBzcnRwIHN0cmVhbSBhbmQg
c2V0IHN0cl9wdHIgKi8KLSAgc3RyID0gKHNydHBfc3RyZWFtX2N0eF90ICopIHNydHBfY3J5cHRv
X2FsbG9jKHNpemVvZihzcnRwX3N0cmVhbV9jdHhfdCkpOwotICBpZiAoc3RyID09IE5VTEwpCi0g
ICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19hbGxvY19mYWlsOwotCi0gIG1lbXNldChzdHIsIDAs
IHNpemVvZihzcnRwX3N0cmVhbV9jdHhfdCkpOwotICAqc3RyX3B0ciA9IHN0cjsKLQotICAvKiBU
byBrZWVwIGJhY2t3YXJkcyBBUEkgY29tcGF0aWJsZSBpZiBzb21lb25lIGlzIHVzaW5nIG11bHRp
cGxlIG1hc3RlcgotICAgKiBrZXlzIHRoZW4ga2V5IHNob3VsZCBiZSBzZXQgdG8gTlVMTAotICAg
Ki8KLSAgaWYgKHAtPmtleSAhPSBOVUxMKSB7Ci0gICAgICBzdHItPm51bV9tYXN0ZXJfa2V5cyA9
IDE7Ci0gIH0gZWxzZSB7Ci0gICAgICBzdHItPm51bV9tYXN0ZXJfa2V5cyA9IHAtPm51bV9tYXN0
ZXJfa2V5czsKLSAgfQotCi0gIHN0ci0+c2Vzc2lvbl9rZXlzID0gKHNydHBfc2Vzc2lvbl9rZXlz
X3QgKilzcnRwX2NyeXB0b19hbGxvYygKLSAgICAgIHNpemVvZihzcnRwX3Nlc3Npb25fa2V5c190
KSAqIHN0ci0+bnVtX21hc3Rlcl9rZXlzKTsKLQotICBpZiAoc3RyLT5zZXNzaW9uX2tleXMgPT0g
TlVMTCkgewotICAgICAgc3J0cF9zdHJlYW1fZnJlZShzdHIpOwotICAgICAgcmV0dXJuIHNydHBf
ZXJyX3N0YXR1c19hbGxvY19mYWlsOwotICB9Ci0KLSAgbWVtc2V0KHN0ci0+c2Vzc2lvbl9rZXlz
LCAwLCBzaXplb2Yoc3J0cF9zZXNzaW9uX2tleXNfdCkgKiBzdHItPm51bV9tYXN0ZXJfa2V5cyk7
Ci0KLSAgZm9yIChpID0gMDsgaSA8IHN0ci0+bnVtX21hc3Rlcl9rZXlzOyBpKyspIHsKLSAgICBz
ZXNzaW9uX2tleXMgPSAmc3RyLT5zZXNzaW9uX2tleXNbaV07Ci0KLSAgICAvKiBhbGxvY2F0ZSBj
aXBoZXIgKi8gCi0gICAgc3RhdCA9IHNydHBfY3J5cHRvX2tlcm5lbF9hbGxvY19jaXBoZXIocC0+
cnRwLmNpcGhlcl90eXBlLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICZzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXIsCi0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgcC0+cnRwLmNpcGhlcl9rZXlfbGVuLAotCQkJCSAgICAgICAgICAg
cC0+cnRwLmF1dGhfdGFnX2xlbik7Ci0gICAgaWYgKHN0YXQpIHsKLSAgICAgIHNydHBfc3RyZWFt
X2ZyZWUoc3RyKTsKLSAgICAgIHJldHVybiBzdGF0OworICAgIGlmIChzdHJlYW1fdGVtcGxhdGUg
JiYKKyAgICAgICAgc3RyZWFtLT5lbmNfeHRuX2hkciA9PSBzdHJlYW1fdGVtcGxhdGUtPmVuY194
dG5faGRyKSB7CisgICAgICAgIC8qIGRvIG5vdGhpbmcgKi8KKyAgICB9IGVsc2UgaWYgKHN0cmVh
bS0+ZW5jX3h0bl9oZHIpIHsKKyAgICAgICAgc3J0cF9jcnlwdG9fZnJlZShzdHJlYW0tPmVuY194
dG5faGRyKTsKICAgICB9CiAKLSAgICAvKiBhbGxvY2F0ZSBhdXRoIGZ1bmN0aW9uICovCi0gICAg
c3RhdCA9IHNydHBfY3J5cHRvX2tlcm5lbF9hbGxvY19hdXRoKHAtPnJ0cC5hdXRoX3R5cGUsCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZzZXNzaW9uX2tleXMtPnJ0
cF9hdXRoLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwLT5ydHAu
YXV0aF9rZXlfbGVuLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBw
LT5ydHAuYXV0aF90YWdfbGVuKTsKLSAgICBpZiAoc3RhdCkgewotICAgICAgc3J0cF9zdHJlYW1f
ZnJlZShzdHIpOwotICAgICAgcmV0dXJuIHN0YXQ7Ci0gICAgfQorICAgIC8qIGRlYWxsb2NhdGUg
c3J0cCBzdHJlYW0gY29udGV4dCAqLworICAgIHNydHBfY3J5cHRvX2ZyZWUoc3RyZWFtKTsKKwor
ICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7Cit9CisKK3NydHBfZXJyX3N0YXR1c190IHNy
dHBfc3RyZWFtX2FsbG9jKHNydHBfc3RyZWFtX2N0eF90ICoqc3RyX3B0ciwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHNydHBfcG9saWN5X3QgKnApCit7CisgICAg
c3J0cF9zdHJlYW1fY3R4X3QgKnN0cjsKKyAgICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0OworICAg
IHVuc2lnbmVkIGludCBpID0gMDsKKyAgICBzcnRwX3Nlc3Npb25fa2V5c190ICpzZXNzaW9uX2tl
eXMgPSBOVUxMOwogCiAgICAgLyoKLSAgICAgKiAuLi5hbmQgbm93IHRoZSBSVENQLXNwZWNpZmlj
IGluaXRpYWxpemF0aW9uIC0gZmlyc3QsIGFsbG9jYXRlCi0gICAgICogdGhlIGNpcGhlciAKKyAg
ICAgKiBUaGlzIGZ1bmN0aW9uIGFsbG9jYXRlcyB0aGUgc3RyZWFtIGNvbnRleHQsIHJ0cCBhbmQg
cnRjcCBjaXBoZXJzCisgICAgICogYW5kIGF1dGggZnVuY3Rpb25zLCBhbmQga2V5IGxpbWl0IHN0
cnVjdHVyZS4gIElmIHRoZXJlIGlzIGEKKyAgICAgKiBmYWlsdXJlIGR1cmluZyBhbGxvY2F0aW9u
LCB3ZSBmcmVlIGFsbCBwcmV2aW91c2x5IGFsbG9jYXRlZAorICAgICAqIG1lbW9yeSBhbmQgcmV0
dXJuIGEgZmFpbHVyZSBjb2RlLiAgVGhlIGNvZGUgY291bGQgcHJvYmFibHkKKyAgICAgKiBiZSBp
bXByb3ZlZCwgYnV0IGl0IHdvcmtzIGFuZCBzaG91bGQgYmUgY2xlYXIuCiAgICAgICovCi0gICAg
c3RhdCA9IHNydHBfY3J5cHRvX2tlcm5lbF9hbGxvY19jaXBoZXIocC0+cnRjcC5jaXBoZXJfdHlw
ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmc2Vzc2lvbl9r
ZXlzLT5ydGNwX2NpcGhlciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBwLT5ydGNwLmNpcGhlcl9rZXlfbGVuLAotICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHAtPnJ0Y3AuYXV0aF90YWdfbGVuKTsKLSAgICBpZiAoc3RhdCkgewot
ICAgICAgc3J0cF9zdHJlYW1fZnJlZShzdHIpOwotICAgICAgcmV0dXJuIHN0YXQ7Ci0gICAgfQot
Ci0gICAgLyogYWxsb2NhdGUgYXV0aCBmdW5jdGlvbiAqLwotICAgIHN0YXQgPSBzcnRwX2NyeXB0
b19rZXJuZWxfYWxsb2NfYXV0aChwLT5ydGNwLmF1dGhfdHlwZSwKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgJnNlc3Npb25fa2V5cy0+cnRjcF9hdXRoLAotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwLT5ydGNwLmF1dGhfa2V5X2xlbiwK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcC0+cnRjcC5hdXRoX3Rh
Z19sZW4pOwotICAgIGlmIChzdGF0KSB7Ci0gICAgICBzcnRwX3N0cmVhbV9mcmVlKHN0cik7Ci0g
ICAgICByZXR1cm4gc3RhdDsKLSAgICB9Ci0gICAKLSAgICBzZXNzaW9uX2tleXMtPm1raV9pZCA9
IE5VTEw7CiAKLSAgICAvKiBhbGxvY2F0ZSBrZXkgbGltaXQgc3RydWN0dXJlICovCi0gICAgc2Vz
c2lvbl9rZXlzLT5saW1pdCA9IChzcnRwX2tleV9saW1pdF9jdHhfdCopIHNydHBfY3J5cHRvX2Fs
bG9jKHNpemVvZihzcnRwX2tleV9saW1pdF9jdHhfdCkpOwotICAgIGlmIChzZXNzaW9uX2tleXMt
PmxpbWl0ID09IE5VTEwpIHsKLSAgICAgICAgc3J0cF9zdHJlYW1fZnJlZShzdHIpOworICAgIC8q
IGFsbG9jYXRlIHNydHAgc3RyZWFtIGFuZCBzZXQgc3RyX3B0ciAqLworICAgIHN0ciA9IChzcnRw
X3N0cmVhbV9jdHhfdCAqKXNydHBfY3J5cHRvX2FsbG9jKHNpemVvZihzcnRwX3N0cmVhbV9jdHhf
dCkpOworICAgIGlmIChzdHIgPT0gTlVMTCkKICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1
c19hbGxvY19mYWlsOwotICAgIH0KLSAgfQotCi0gIC8qIGFsbG9jYXRlIGVrdCBkYXRhIGFzc29j
aWF0ZWQgd2l0aCBzdHJlYW0gKi8KLSAgc3RhdCA9IHNydHBfZWt0X2FsbG9jKCZzdHItPmVrdCwg
cC0+ZWt0KTsKLSAgaWYgKHN0YXQpIHsKLSAgICBzcnRwX3N0cmVhbV9mcmVlKHN0cik7Ci0gICAg
cmV0dXJuIHN0YXQ7Ci0gIH0KIAotICBpZiAocC0+ZW5jX3h0bl9oZHIgJiYgcC0+ZW5jX3h0bl9o
ZHJfY291bnQgPiAwKSB7Ci0gICAgc3J0cF9jaXBoZXJfdHlwZV9pZF90IGVuY194dG5faGRyX2Np
cGhlcl90eXBlOwotICAgIGludCBlbmNfeHRuX2hkcl9jaXBoZXJfa2V5X2xlbjsKKyAgICAqc3Ry
X3B0ciA9IHN0cjsKIAotICAgIHN0ci0+ZW5jX3h0bl9oZHIgPSAoaW50Kikgc3J0cF9jcnlwdG9f
YWxsb2MocC0+ZW5jX3h0bl9oZHJfY291bnQgKiBzaXplb2YocC0+ZW5jX3h0bl9oZHJbMF0pKTsK
LSAgICBpZiAoIXN0ci0+ZW5jX3h0bl9oZHIpIHsKLSAgICAgIHNydHBfc3RyZWFtX2ZyZWUoc3Ry
KTsKLSAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYWxsb2NfZmFpbDsKKyAgICAvKgorICAg
ICAqVG8ga2VlcCBiYWNrd2FyZHMgQVBJIGNvbXBhdGlibGUgaWYgc29tZW9uZSBpcyB1c2luZyBt
dWx0aXBsZSBtYXN0ZXIKKyAgICAgKiBrZXlzIHRoZW4ga2V5IHNob3VsZCBiZSBzZXQgdG8gTlVM
TAorICAgICAqLworICAgIGlmIChwLT5rZXkgIT0gTlVMTCkgeworICAgICAgICBzdHItPm51bV9t
YXN0ZXJfa2V5cyA9IDE7CisgICAgfSBlbHNlIHsKKyAgICAgICAgc3RyLT5udW1fbWFzdGVyX2tl
eXMgPSBwLT5udW1fbWFzdGVyX2tleXM7CiAgICAgfQotICAgIG1lbWNweShzdHItPmVuY194dG5f
aGRyLCBwLT5lbmNfeHRuX2hkciwgcC0+ZW5jX3h0bl9oZHJfY291bnQgKiBzaXplb2YocC0+ZW5j
X3h0bl9oZHJbMF0pKTsKLSAgICBzdHItPmVuY194dG5faGRyX2NvdW50ID0gcC0+ZW5jX3h0bl9o
ZHJfY291bnQ7CiAKLSAgICAvKiBGb3IgR0NNIGNpcGhlcnMsIHRoZSBjb3JyZXNwb25kaW5nIElD
TSBjaXBoZXIgaXMgdXNlZCBmb3IgaGVhZGVyIGV4dGVuc2lvbnMgZW5jcnlwdGlvbi4gKi8KLSAg
ICBzd2l0Y2ggKHAtPnJ0cC5jaXBoZXJfdHlwZSkgewotICAgIGNhc2UgU1JUUF9BRVNfR0NNXzEy
ODoKLSAgICAgIGVuY194dG5faGRyX2NpcGhlcl90eXBlID0gU1JUUF9BRVNfSUNNXzEyODsKLSAg
ICAgIGVuY194dG5faGRyX2NpcGhlcl9rZXlfbGVuID0gU1JUUF9BRVNfSUNNXzEyOF9LRVlfTEVO
X1dTQUxUOwotICAgICAgYnJlYWs7Ci0gICAgY2FzZSBTUlRQX0FFU19HQ01fMjU2OgotICAgICAg
ZW5jX3h0bl9oZHJfY2lwaGVyX3R5cGUgPSBTUlRQX0FFU19JQ01fMjU2OwotICAgICAgZW5jX3h0
bl9oZHJfY2lwaGVyX2tleV9sZW4gPSBTUlRQX0FFU19JQ01fMjU2X0tFWV9MRU5fV1NBTFQ7Ci0g
ICAgICBicmVhazsKLSAgICBkZWZhdWx0OgotICAgICAgZW5jX3h0bl9oZHJfY2lwaGVyX3R5cGUg
PSBwLT5ydHAuY2lwaGVyX3R5cGU7Ci0gICAgICBlbmNfeHRuX2hkcl9jaXBoZXJfa2V5X2xlbiA9
IHAtPnJ0cC5jaXBoZXJfa2V5X2xlbjsKLSAgICAgIGJyZWFrOwotICAgIH0KKyAgICBzdHItPnNl
c3Npb25fa2V5cyA9IChzcnRwX3Nlc3Npb25fa2V5c190ICopc3J0cF9jcnlwdG9fYWxsb2MoCisg
ICAgICAgIHNpemVvZihzcnRwX3Nlc3Npb25fa2V5c190KSAqIHN0ci0+bnVtX21hc3Rlcl9rZXlz
KTsKIAotICAgIGZvciAoaSA9IDA7IGkgPCBzdHItPm51bV9tYXN0ZXJfa2V5czsgaSsrKSB7Ci0g
ICAgICBzZXNzaW9uX2tleXMgPSAmc3RyLT5zZXNzaW9uX2tleXNbaV07Ci0KLSAgICAgIC8qIGFs
bG9jYXRlIGNpcGhlciBmb3IgZXh0ZW5zaW9ucyBoZWFkZXIgZW5jcnlwdGlvbiAqLwotICAgICAg
c3RhdCA9IHNydHBfY3J5cHRvX2tlcm5lbF9hbGxvY19jaXBoZXIoZW5jX3h0bl9oZHJfY2lwaGVy
X3R5cGUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmc2Vz
c2lvbl9rZXlzLT5ydHBfeHRuX2hkcl9jaXBoZXIsCi0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBlbmNfeHRuX2hkcl9jaXBoZXJfa2V5X2xlbiwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDApOwotICAgICAgaWYgKHN0YXQp
IHsKLSAgICAgICAgc3J0cF9zdHJlYW1fZnJlZShzdHIpOwotICAgICAgICByZXR1cm4gc3RhdDsK
LSAgICAgIH0KKyAgICBpZiAoc3RyLT5zZXNzaW9uX2tleXMgPT0gTlVMTCkgeworICAgICAgICBz
cnRwX3N0cmVhbV9kZWFsbG9jKHN0ciwgTlVMTCk7CisgICAgICAgIHJldHVybiBzcnRwX2Vycl9z
dGF0dXNfYWxsb2NfZmFpbDsKICAgICB9Ci0gIH0gZWxzZSB7CisKICAgICBmb3IgKGkgPSAwOyBp
IDwgc3RyLT5udW1fbWFzdGVyX2tleXM7IGkrKykgewotICAgICAgc2Vzc2lvbl9rZXlzID0gJnN0
ci0+c2Vzc2lvbl9rZXlzW2ldOwotICAgICAgc2Vzc2lvbl9rZXlzLT5ydHBfeHRuX2hkcl9jaXBo
ZXIgPSBOVUxMOwotICAgIH0KKyAgICAgICAgc2Vzc2lvbl9rZXlzID0gJnN0ci0+c2Vzc2lvbl9r
ZXlzW2ldOworCisgICAgICAgIC8qIGFsbG9jYXRlIGNpcGhlciAqLworICAgICAgICBzdGF0ID0g
c3J0cF9jcnlwdG9fa2VybmVsX2FsbG9jX2NpcGhlcigKKyAgICAgICAgICAgIHAtPnJ0cC5jaXBo
ZXJfdHlwZSwgJnNlc3Npb25fa2V5cy0+cnRwX2NpcGhlciwKKyAgICAgICAgICAgIHAtPnJ0cC5j
aXBoZXJfa2V5X2xlbiwgcC0+cnRwLmF1dGhfdGFnX2xlbik7CisgICAgICAgIGlmIChzdGF0KSB7
CisgICAgICAgICAgICBzcnRwX3N0cmVhbV9kZWFsbG9jKHN0ciwgTlVMTCk7CisgICAgICAgICAg
ICByZXR1cm4gc3RhdDsKKyAgICAgICAgfQogCi0gICAgc3RyLT5lbmNfeHRuX2hkciA9IE5VTEw7
Ci0gICAgc3RyLT5lbmNfeHRuX2hkcl9jb3VudCA9IDA7Ci0gIH0KKyAgICAgICAgLyogYWxsb2Nh
dGUgYXV0aCBmdW5jdGlvbiAqLworICAgICAgICBzdGF0ID0gc3J0cF9jcnlwdG9fa2VybmVsX2Fs
bG9jX2F1dGgoCisgICAgICAgICAgICBwLT5ydHAuYXV0aF90eXBlLCAmc2Vzc2lvbl9rZXlzLT5y
dHBfYXV0aCwgcC0+cnRwLmF1dGhfa2V5X2xlbiwKKyAgICAgICAgICAgIHAtPnJ0cC5hdXRoX3Rh
Z19sZW4pOworICAgICAgICBpZiAoc3RhdCkgeworICAgICAgICAgICAgc3J0cF9zdHJlYW1fZGVh
bGxvYyhzdHIsIE5VTEwpOworICAgICAgICAgICAgcmV0dXJuIHN0YXQ7CisgICAgICAgIH0KIAot
ICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwotfQorICAgICAgICAvKgorICAgICAgICAgKiAu
Li5hbmQgbm93IHRoZSBSVENQLXNwZWNpZmljIGluaXRpYWxpemF0aW9uIC0gZmlyc3QsIGFsbG9j
YXRlCisgICAgICAgICAqIHRoZSBjaXBoZXIKKyAgICAgICAgICovCisgICAgICAgIHN0YXQgPSBz
cnRwX2NyeXB0b19rZXJuZWxfYWxsb2NfY2lwaGVyKAorICAgICAgICAgICAgcC0+cnRjcC5jaXBo
ZXJfdHlwZSwgJnNlc3Npb25fa2V5cy0+cnRjcF9jaXBoZXIsCisgICAgICAgICAgICBwLT5ydGNw
LmNpcGhlcl9rZXlfbGVuLCBwLT5ydGNwLmF1dGhfdGFnX2xlbik7CisgICAgICAgIGlmIChzdGF0
KSB7CisgICAgICAgICAgICBzcnRwX3N0cmVhbV9kZWFsbG9jKHN0ciwgTlVMTCk7CisgICAgICAg
ICAgICByZXR1cm4gc3RhdDsKKyAgICAgICAgfQogCi1zcnRwX2Vycl9zdGF0dXNfdAotc3J0cF9z
dHJlYW1fZGVhbGxvYyhzcnRwX3N0cmVhbV9jdHhfdCAqc3RyZWFtLCBzcnRwX3N0cmVhbV9jdHhf
dCAqc3RyZWFtX3RlbXBsYXRlKSB7Ci0gIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKLSAgdW5z
aWduZWQgaW50IGkgPSAwOwotICBzcnRwX3Nlc3Npb25fa2V5c190ICpzZXNzaW9uX2tleXMgPSBO
VUxMOwotICBzcnRwX3Nlc3Npb25fa2V5c190ICp0ZW1wbGF0ZV9zZXNzaW9uX2tleXMgPSBOVUxM
OwotCi0gIC8qCi0gICAqIHdlIHVzZSBhIGNvbnNlcnZhdGl2ZSBkZWFsbG9jYXRpb24gc3RyYXRl
Z3kgLSBpZiBhbnkgZGVhbGxvY2F0aW9uCi0gICAqIGZhaWxzLCB0aGVuIHdlIHJlcG9ydCB0aGF0
IGZhY3Qgd2l0aG91dCB0cnlpbmcgdG8gZGVhbGxvY2F0ZQotICAgKiBhbnl0aGluZyBlbHNlCi0g
ICAqLwotICBmb3IgKCBpID0gMDsgaSA8IHN0cmVhbS0+bnVtX21hc3Rlcl9rZXlzOyBpKyspIHsK
LSAgICBzZXNzaW9uX2tleXMgPSAmc3RyZWFtLT5zZXNzaW9uX2tleXNbaV07Ci0KLSAgICBpZiAo
c3RyZWFtX3RlbXBsYXRlKSB7Ci0gICAgICB0ZW1wbGF0ZV9zZXNzaW9uX2tleXMgPSAmc3RyZWFt
X3RlbXBsYXRlLT5zZXNzaW9uX2tleXNbaV07Ci0gICAgfSBlbHNlIHsKLSAgICAgIHRlbXBsYXRl
X3Nlc3Npb25fa2V5cyA9IE5VTEw7Ci0gICAgfQorICAgICAgICAvKiBhbGxvY2F0ZSBhdXRoIGZ1
bmN0aW9uICovCisgICAgICAgIHN0YXQgPSBzcnRwX2NyeXB0b19rZXJuZWxfYWxsb2NfYXV0aCgK
KyAgICAgICAgICAgIHAtPnJ0Y3AuYXV0aF90eXBlLCAmc2Vzc2lvbl9rZXlzLT5ydGNwX2F1dGgs
IHAtPnJ0Y3AuYXV0aF9rZXlfbGVuLAorICAgICAgICAgICAgcC0+cnRjcC5hdXRoX3RhZ19sZW4p
OworICAgICAgICBpZiAoc3RhdCkgeworICAgICAgICAgICAgc3J0cF9zdHJlYW1fZGVhbGxvYyhz
dHIsIE5VTEwpOworICAgICAgICAgICAgcmV0dXJuIHN0YXQ7CisgICAgICAgIH0KIAotICAgIC8q
IGRlYWxsb2NhdGUgY2lwaGVyLCBpZiBpdCBpcyBub3QgdGhlIHNhbWUgYXMgdGhhdCBpbiB0ZW1w
bGF0ZSAqLwotICAgIGlmICh0ZW1wbGF0ZV9zZXNzaW9uX2tleXMKLSAgICAgICAgJiYgc2Vzc2lv
bl9rZXlzLT5ydHBfY2lwaGVyID09IHRlbXBsYXRlX3Nlc3Npb25fa2V5cy0+cnRwX2NpcGhlcikg
ewotICAgICAgIC8qIGRvIG5vdGhpbmcgKi8KLSAgICB9IGVsc2UgewotICAgICAgIHN0YXR1cyA9
IHNydHBfY2lwaGVyX2RlYWxsb2Moc2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVyKTsKLSAgICAgICBp
ZiAoc3RhdHVzKQotICAgICAgICAgcmV0dXJuIHN0YXR1czsKLSAgICB9CisgICAgICAgIHNlc3Np
b25fa2V5cy0+bWtpX2lkID0gTlVMTDsKIAotICAgIC8qIGRlYWxsb2NhdGUgYXV0aCBmdW5jdGlv
biwgaWYgaXQgaXMgbm90IHRoZSBzYW1lIGFzIHRoYXQgaW4gdGVtcGxhdGUgKi8KLSAgICBpZiAo
dGVtcGxhdGVfc2Vzc2lvbl9rZXlzCi0gICAgICAgICYmIHNlc3Npb25fa2V5cy0+cnRwX2F1dGgg
PT0gdGVtcGxhdGVfc2Vzc2lvbl9rZXlzLT5ydHBfYXV0aCkgewotICAgICAgIC8qIGRvIG5vdGhp
bmcgKi8KLSAgICB9IGVsc2UgewotICAgICAgc3RhdHVzID0gc3J0cF9hdXRoX2RlYWxsb2Moc2Vz
c2lvbl9rZXlzLT5ydHBfYXV0aCk7Ci0gICAgICBpZiAoc3RhdHVzKQotICAgICAgICByZXR1cm4g
c3RhdHVzOworICAgICAgICAvKiBhbGxvY2F0ZSBrZXkgbGltaXQgc3RydWN0dXJlICovCisgICAg
ICAgIHNlc3Npb25fa2V5cy0+bGltaXQgPSAoc3J0cF9rZXlfbGltaXRfY3R4X3QgKilzcnRwX2Ny
eXB0b19hbGxvYygKKyAgICAgICAgICAgIHNpemVvZihzcnRwX2tleV9saW1pdF9jdHhfdCkpOwor
ICAgICAgICBpZiAoc2Vzc2lvbl9rZXlzLT5saW1pdCA9PSBOVUxMKSB7CisgICAgICAgICAgICBz
cnRwX3N0cmVhbV9kZWFsbG9jKHN0ciwgTlVMTCk7CisgICAgICAgICAgICByZXR1cm4gc3J0cF9l
cnJfc3RhdHVzX2FsbG9jX2ZhaWw7CisgICAgICAgIH0KICAgICB9CiAKLSAgICBpZiAodGVtcGxh
dGVfc2Vzc2lvbl9rZXlzCi0gICAgICAgICYmIHNlc3Npb25fa2V5cy0+cnRwX3h0bl9oZHJfY2lw
aGVyID09IHRlbXBsYXRlX3Nlc3Npb25fa2V5cy0+cnRwX3h0bl9oZHJfY2lwaGVyKSB7Ci0gICAg
ICAgLyogZG8gbm90aGluZyAqLwotICAgIH0gZWxzZSBpZiAoc2Vzc2lvbl9rZXlzLT5ydHBfeHRu
X2hkcl9jaXBoZXIpIHsKLSAgICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX2RlYWxsb2Moc2Vzc2lv
bl9rZXlzLT5ydHBfeHRuX2hkcl9jaXBoZXIpOwotICAgICAgaWYgKHN0YXR1cykKLSAgICAgICAg
cmV0dXJuIHN0YXR1czsKKyAgICAvKiBhbGxvY2F0ZSBla3QgZGF0YSBhc3NvY2lhdGVkIHdpdGgg
c3RyZWFtICovCisgICAgc3RhdCA9IHNydHBfZWt0X2FsbG9jKCZzdHItPmVrdCwgcC0+ZWt0KTsK
KyAgICBpZiAoc3RhdCkgeworICAgICAgICBzcnRwX3N0cmVhbV9kZWFsbG9jKHN0ciwgTlVMTCk7
CisgICAgICAgIHJldHVybiBzdGF0OwogICAgIH0KIAotICAgIC8qCi0gICAgICogZGVhbGxvY2F0
ZSBydGNwIGNpcGhlciwgaWYgaXQgaXMgbm90IHRoZSBzYW1lIGFzIHRoYXQgaW4KLSAgICAgKiB0
ZW1wbGF0ZQotICAgICAqLwotICAgIGlmICh0ZW1wbGF0ZV9zZXNzaW9uX2tleXMKLSAgICAgICAg
JiYgc2Vzc2lvbl9rZXlzLT5ydGNwX2NpcGhlciA9PSB0ZW1wbGF0ZV9zZXNzaW9uX2tleXMtPnJ0
Y3BfY2lwaGVyKSB7Ci0gICAgICAvKiBkbyBub3RoaW5nICovCi0gICAgfSBlbHNlIHsKLSAgICAg
IHN0YXR1cyA9IHNydHBfY2lwaGVyX2RlYWxsb2Moc2Vzc2lvbl9rZXlzLT5ydGNwX2NpcGhlcik7
Ci0gICAgICBpZiAoc3RhdHVzKQotICAgICAgICByZXR1cm4gc3RhdHVzOwotICAgIH0KKyAgICBp
ZiAocC0+ZW5jX3h0bl9oZHIgJiYgcC0+ZW5jX3h0bl9oZHJfY291bnQgPiAwKSB7CisgICAgICAg
IHNydHBfY2lwaGVyX3R5cGVfaWRfdCBlbmNfeHRuX2hkcl9jaXBoZXJfdHlwZTsKKyAgICAgICAg
aW50IGVuY194dG5faGRyX2NpcGhlcl9rZXlfbGVuOwogCi0gICAgLyoKLSAgICAgKiBkZWFsbG9j
YXRlIHJ0Y3AgYXV0aCBmdW5jdGlvbiwgaWYgaXQgaXMgbm90IHRoZSBzYW1lIGFzIHRoYXQgaW4K
LSAgICAgKiB0ZW1wbGF0ZQotICAgICAqLwotICAgIGlmICh0ZW1wbGF0ZV9zZXNzaW9uX2tleXMK
LSAgICAgICAgJiYgc2Vzc2lvbl9rZXlzLT5ydGNwX2F1dGggPT0gdGVtcGxhdGVfc2Vzc2lvbl9r
ZXlzLT5ydGNwX2F1dGgpIHsKLSAgICAgIC8qIGRvIG5vdGhpbmcgKi8KLSAgICB9IGVsc2Ugewot
ICAgICAgc3RhdHVzID0gc3J0cF9hdXRoX2RlYWxsb2Moc2Vzc2lvbl9rZXlzLT5ydGNwX2F1dGgp
OwotICAgICAgaWYgKHN0YXR1cykKLSAgICAgICAgcmV0dXJuIHN0YXR1czsKLSAgICB9CisgICAg
ICAgIHN0ci0+ZW5jX3h0bl9oZHIgPSAoaW50ICopc3J0cF9jcnlwdG9fYWxsb2MocC0+ZW5jX3h0
bl9oZHJfY291bnQgKgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHNpemVvZihwLT5lbmNfeHRuX2hkclswXSkpOworICAgICAgICBpZiAoIXN0ci0+
ZW5jX3h0bl9oZHIpIHsKKyAgICAgICAgICAgIHNydHBfc3RyZWFtX2RlYWxsb2Moc3RyLCBOVUxM
KTsKKyAgICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYWxsb2NfZmFpbDsKKyAgICAg
ICAgfQorICAgICAgICBtZW1jcHkoc3RyLT5lbmNfeHRuX2hkciwgcC0+ZW5jX3h0bl9oZHIsCisg
ICAgICAgICAgICAgICBwLT5lbmNfeHRuX2hkcl9jb3VudCAqIHNpemVvZihwLT5lbmNfeHRuX2hk
clswXSkpOworICAgICAgICBzdHItPmVuY194dG5faGRyX2NvdW50ID0gcC0+ZW5jX3h0bl9oZHJf
Y291bnQ7CiAKLSAgICAvKgotICAgICAqIHplcm9pemUgdGhlIHNhbHQgdmFsdWUKLSAgICAgKi8K
LSAgICBvY3RldF9zdHJpbmdfc2V0X3RvX3plcm8oc2Vzc2lvbl9rZXlzLT5zYWx0LCBTUlRQX0FF
QURfU0FMVF9MRU4pOwotICAgIG9jdGV0X3N0cmluZ19zZXRfdG9femVybyhzZXNzaW9uX2tleXMt
PmNfc2FsdCwgU1JUUF9BRUFEX1NBTFRfTEVOKTsKKyAgICAgICAgLyoKKyAgICAgICAgICogRm9y
IEdDTSBjaXBoZXJzLCB0aGUgY29ycmVzcG9uZGluZyBJQ00gY2lwaGVyIGlzIHVzZWQgZm9yIGhl
YWRlcgorICAgICAgICAgKiBleHRlbnNpb25zIGVuY3J5cHRpb24uCisgICAgICAgICAqLworICAg
ICAgICBzd2l0Y2ggKHAtPnJ0cC5jaXBoZXJfdHlwZSkgeworICAgICAgICBjYXNlIFNSVFBfQUVT
X0dDTV8xMjg6CisgICAgICAgICAgICBlbmNfeHRuX2hkcl9jaXBoZXJfdHlwZSA9IFNSVFBfQUVT
X0lDTV8xMjg7CisgICAgICAgICAgICBlbmNfeHRuX2hkcl9jaXBoZXJfa2V5X2xlbiA9IFNSVFBf
QUVTX0lDTV8xMjhfS0VZX0xFTl9XU0FMVDsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBj
YXNlIFNSVFBfQUVTX0dDTV8yNTY6CisgICAgICAgICAgICBlbmNfeHRuX2hkcl9jaXBoZXJfdHlw
ZSA9IFNSVFBfQUVTX0lDTV8yNTY7CisgICAgICAgICAgICBlbmNfeHRuX2hkcl9jaXBoZXJfa2V5
X2xlbiA9IFNSVFBfQUVTX0lDTV8yNTZfS0VZX0xFTl9XU0FMVDsKKyAgICAgICAgICAgIGJyZWFr
OworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgZW5jX3h0bl9oZHJfY2lwaGVyX3R5cGUg
PSBwLT5ydHAuY2lwaGVyX3R5cGU7CisgICAgICAgICAgICBlbmNfeHRuX2hkcl9jaXBoZXJfa2V5
X2xlbiA9IHAtPnJ0cC5jaXBoZXJfa2V5X2xlbjsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAg
ICB9CiAKLSAgICBpZiAoc2Vzc2lvbl9rZXlzLT5ta2lfaWQpIHsKLSAgICAgIG9jdGV0X3N0cmlu
Z19zZXRfdG9femVybyhzZXNzaW9uX2tleXMtPm1raV9pZCwgc2Vzc2lvbl9rZXlzLT5ta2lfc2l6
ZSk7Ci0gICAgICBzcnRwX2NyeXB0b19mcmVlKHNlc3Npb25fa2V5cy0+bWtpX2lkKTsKLSAgICAg
IHNlc3Npb25fa2V5cy0+bWtpX2lkID0gTlVMTDsKLSAgICB9CisgICAgICAgIGZvciAoaSA9IDA7
IGkgPCBzdHItPm51bV9tYXN0ZXJfa2V5czsgaSsrKSB7CisgICAgICAgICAgICBzZXNzaW9uX2tl
eXMgPSAmc3RyLT5zZXNzaW9uX2tleXNbaV07CiAKLSAgICAvKiBkZWFsbG9jYXRlIGtleSB1c2Fn
ZSBsaW1pdCwgaWYgaXQgaXMgbm90IHRoZSBzYW1lIGFzIHRoYXQgaW4gdGVtcGxhdGUgKi8KLSAg
ICBpZiAodGVtcGxhdGVfc2Vzc2lvbl9rZXlzCi0gICAgICAgICYmIHNlc3Npb25fa2V5cy0+bGlt
aXQgPT0gdGVtcGxhdGVfc2Vzc2lvbl9rZXlzLT5saW1pdCkgewotICAgICAgICAvKiBkbyBub3Ro
aW5nICovCisgICAgICAgICAgICAvKiBhbGxvY2F0ZSBjaXBoZXIgZm9yIGV4dGVuc2lvbnMgaGVh
ZGVyIGVuY3J5cHRpb24gKi8KKyAgICAgICAgICAgIHN0YXQgPSBzcnRwX2NyeXB0b19rZXJuZWxf
YWxsb2NfY2lwaGVyKAorICAgICAgICAgICAgICAgIGVuY194dG5faGRyX2NpcGhlcl90eXBlLCAm
c2Vzc2lvbl9rZXlzLT5ydHBfeHRuX2hkcl9jaXBoZXIsCisgICAgICAgICAgICAgICAgZW5jX3h0
bl9oZHJfY2lwaGVyX2tleV9sZW4sIDApOworICAgICAgICAgICAgaWYgKHN0YXQpIHsKKyAgICAg
ICAgICAgICAgICBzcnRwX3N0cmVhbV9kZWFsbG9jKHN0ciwgTlVMTCk7CisgICAgICAgICAgICAg
ICAgcmV0dXJuIHN0YXQ7CisgICAgICAgICAgICB9CisgICAgICAgIH0KICAgICB9IGVsc2Ugewot
ICAgICAgc3J0cF9jcnlwdG9fZnJlZShzZXNzaW9uX2tleXMtPmxpbWl0KTsKLSAgICB9Ci0KLSAg
fQotCi0gIGlmIChzdHJlYW1fdGVtcGxhdGUKLSAgICAgICYmIHN0cmVhbS0+c2Vzc2lvbl9rZXlz
ID09IHN0cmVhbV90ZW1wbGF0ZS0+c2Vzc2lvbl9rZXlzKSB7Ci0gICAgICAvKiBkbyBub3RoaW5n
ICovCi0gIH0gZWxzZSB7Ci0gICAgc3J0cF9jcnlwdG9fZnJlZShzdHJlYW0tPnNlc3Npb25fa2V5
cyk7Ci0gIH0KLQotICBzdGF0dXMgPSBzcnRwX3JkYnhfZGVhbGxvYygmc3RyZWFtLT5ydHBfcmRi
eCk7Ci0gIGlmIChzdGF0dXMpCi0gICAgcmV0dXJuIHN0YXR1czsKLQotICAvKiBEQU0gLSBuZWVk
IHRvIGRlYWxsb2NhdGUgRUtUIGhlcmUgKi8KLQotICBpZiAoc3RyZWFtX3RlbXBsYXRlCi0gICAg
ICAmJiBzdHJlYW0tPmVuY194dG5faGRyID09IHN0cmVhbV90ZW1wbGF0ZS0+ZW5jX3h0bl9oZHIp
IHsKLSAgICAvKiBkbyBub3RoaW5nICovCi0gIH0gZWxzZSBpZiAoc3RyZWFtLT5lbmNfeHRuX2hk
cikgewotICAgIHNydHBfY3J5cHRvX2ZyZWUoc3RyZWFtLT5lbmNfeHRuX2hkcik7Ci0gIH0KKyAg
ICAgICAgZm9yIChpID0gMDsgaSA8IHN0ci0+bnVtX21hc3Rlcl9rZXlzOyBpKyspIHsKKyAgICAg
ICAgICAgIHNlc3Npb25fa2V5cyA9ICZzdHItPnNlc3Npb25fa2V5c1tpXTsKKyAgICAgICAgICAg
IHNlc3Npb25fa2V5cy0+cnRwX3h0bl9oZHJfY2lwaGVyID0gTlVMTDsKKyAgICAgICAgfQogCi0g
IC8qIGRlYWxsb2NhdGUgc3J0cCBzdHJlYW0gY29udGV4dCAqLwotICBzcnRwX2NyeXB0b19mcmVl
KHN0cmVhbSk7CisgICAgICAgIHN0ci0+ZW5jX3h0bl9oZHIgPSBOVUxMOworICAgICAgICBzdHIt
PmVuY194dG5faGRyX2NvdW50ID0gMDsKKyAgICB9CiAKLSAgcmV0dXJuIHNydHBfZXJyX3N0YXR1
c19vazsKKyAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQogCi0KIC8qCiAgKiBzcnRw
X3N0cmVhbV9jbG9uZShzdHJlYW1fdGVtcGxhdGUsIG5ldykgYWxsb2NhdGVzIGEgbmV3IHN0cmVh
bSBhbmQKICAqIGluaXRpYWxpemVzIGl0IHVzaW5nIHRoZSBjaXBoZXIgYW5kIGF1dGggb2YgdGhl
IHN0cmVhbV90ZW1wbGF0ZQotICogCisgKgogICogdGhlIG9ubHkgdW5pcXVlIGRhdGEgaW4gYSBj
bG9uZWQgc3RyZWFtIGlzIHRoZSByZXBsYXkgZGF0YWJhc2UgYW5kCiAgKiB0aGUgU1NSQwogICov
CiAKLXNydHBfZXJyX3N0YXR1c190Ci1zcnRwX3N0cmVhbV9jbG9uZShjb25zdCBzcnRwX3N0cmVh
bV9jdHhfdCAqc3RyZWFtX3RlbXBsYXRlLCAKLQkJICB1aW50MzJfdCBzc3JjLCAKLQkJICBzcnRw
X3N0cmVhbV9jdHhfdCAqKnN0cl9wdHIpIHsKLSAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVzOwot
ICBzcnRwX3N0cmVhbV9jdHhfdCAqc3RyOwotICB1bnNpZ25lZCBpbnQgaSA9IDA7Ci0gIHNydHBf
c2Vzc2lvbl9rZXlzX3QgKnNlc3Npb25fa2V5cyA9IE5VTEw7Ci0gIGNvbnN0IHNydHBfc2Vzc2lv
bl9rZXlzX3QgKnRlbXBsYXRlX3Nlc3Npb25fa2V5cyA9IE5VTEw7Ci0KLSAgZGVidWdfcHJpbnQo
bW9kX3NydHAsICJjbG9uaW5nIHN0cmVhbSAoU1NSQzogMHglMDh4KSIsIG50b2hsKHNzcmMpKTsK
LQotICAvKiBhbGxvY2F0ZSBzcnRwIHN0cmVhbSBhbmQgc2V0IHN0cl9wdHIgKi8KLSAgc3RyID0g
KHNydHBfc3RyZWFtX2N0eF90ICopIHNydHBfY3J5cHRvX2FsbG9jKHNpemVvZihzcnRwX3N0cmVh
bV9jdHhfdCkpOwotICBpZiAoc3RyID09IE5VTEwpCi0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1
c19hbGxvY19mYWlsOwotICAqc3RyX3B0ciA9IHN0cjsgIAotCi0gIHN0ci0+bnVtX21hc3Rlcl9r
ZXlzID0gc3RyZWFtX3RlbXBsYXRlLT5udW1fbWFzdGVyX2tleXM7Ci0gIHN0ci0+c2Vzc2lvbl9r
ZXlzID0gKHNydHBfc2Vzc2lvbl9rZXlzX3QgKilzcnRwX2NyeXB0b19hbGxvYygKLSAgICAgIHNp
emVvZihzcnRwX3Nlc3Npb25fa2V5c190KSAqIHN0ci0+bnVtX21hc3Rlcl9rZXlzKTsKLQotICBp
ZiAoc3RyLT5zZXNzaW9uX2tleXMgPT0gTlVMTCkgewotICAgIHNydHBfY3J5cHRvX2ZyZWUoKnN0
cl9wdHIpOwotICAgICpzdHJfcHRyID0gTlVMTDsKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVz
X2FsbG9jX2ZhaWw7Ci0gIH0KLQotICBmb3IgKGkgPSAwOyBpIDwgc3RyZWFtX3RlbXBsYXRlLT5u
dW1fbWFzdGVyX2tleXM7IGkrKyl7Ci0gICAgc2Vzc2lvbl9rZXlzID0gJnN0ci0+c2Vzc2lvbl9r
ZXlzW2ldOwotICAgIHRlbXBsYXRlX3Nlc3Npb25fa2V5cyA9ICZzdHJlYW1fdGVtcGxhdGUtPnNl
c3Npb25fa2V5c1tpXTsKLQotICAgIC8qIHNldCBjaXBoZXIgYW5kIGF1dGggcG9pbnRlcnMgdG8g
dGhvc2Ugb2YgdGhlIHRlbXBsYXRlICovCi0gICAgc2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVyICA9
IHRlbXBsYXRlX3Nlc3Npb25fa2V5cy0+cnRwX2NpcGhlcjsKLSAgICBzZXNzaW9uX2tleXMtPnJ0
cF9hdXRoICAgID0gdGVtcGxhdGVfc2Vzc2lvbl9rZXlzLT5ydHBfYXV0aDsKLSAgICBzZXNzaW9u
X2tleXMtPnJ0cF94dG5faGRyX2NpcGhlciA9IHRlbXBsYXRlX3Nlc3Npb25fa2V5cy0+cnRwX3h0
bl9oZHJfY2lwaGVyOwotICAgIHNlc3Npb25fa2V5cy0+cnRjcF9jaXBoZXIgPSB0ZW1wbGF0ZV9z
ZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyOwotICAgIHNlc3Npb25fa2V5cy0+cnRjcF9hdXRoICAg
PSB0ZW1wbGF0ZV9zZXNzaW9uX2tleXMtPnJ0Y3BfYXV0aDsKLSAgICBzZXNzaW9uX2tleXMtPm1r
aV9zaXplID0gdGVtcGxhdGVfc2Vzc2lvbl9rZXlzLT5ta2lfc2l6ZTsKLQotICAgIGlmICh0ZW1w
bGF0ZV9zZXNzaW9uX2tleXMtPm1raV9zaXplID09IDApIHsKLSAgICAgIHNlc3Npb25fa2V5cy0+
bWtpX2lkID0gTlVMTDsKLSAgICB9IGVsc2UgewotICAgICAgc2Vzc2lvbl9rZXlzLT5ta2lfaWQg
PSBzcnRwX2NyeXB0b19hbGxvYyh0ZW1wbGF0ZV9zZXNzaW9uX2tleXMtPm1raV9zaXplKTsKK3Ny
dHBfZXJyX3N0YXR1c190IHNydHBfc3RyZWFtX2Nsb25lKGNvbnN0IHNydHBfc3RyZWFtX2N0eF90
ICpzdHJlYW1fdGVtcGxhdGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1
aW50MzJfdCBzc3JjLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF9z
dHJlYW1fY3R4X3QgKipzdHJfcHRyKQoreworICAgIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsK
KyAgICBzcnRwX3N0cmVhbV9jdHhfdCAqc3RyOworICAgIHVuc2lnbmVkIGludCBpID0gMDsKKyAg
ICBzcnRwX3Nlc3Npb25fa2V5c190ICpzZXNzaW9uX2tleXMgPSBOVUxMOworICAgIGNvbnN0IHNy
dHBfc2Vzc2lvbl9rZXlzX3QgKnRlbXBsYXRlX3Nlc3Npb25fa2V5cyA9IE5VTEw7CiAKLSAgICAg
IGlmIChzZXNzaW9uX2tleXMtPm1raV9pZCA9PSBOVUxMKSB7Ci0gICAgICAgIHJldHVybiBzcnRw
X2Vycl9zdGF0dXNfaW5pdF9mYWlsOwotICAgICAgfQotICAgICAgbWVtc2V0KHNlc3Npb25fa2V5
cy0+bWtpX2lkLCAweDAsIHNlc3Npb25fa2V5cy0+bWtpX3NpemUpOwotICAgICAgbWVtY3B5KHNl
c3Npb25fa2V5cy0+bWtpX2lkLCB0ZW1wbGF0ZV9zZXNzaW9uX2tleXMtPm1raV9pZCwgc2Vzc2lv
bl9rZXlzLT5ta2lfc2l6ZSk7Ci0gICAgfQotICAgIC8qIENvcHkgdGhlIHNhbHQgdmFsdWVzICov
Ci0gICAgbWVtY3B5KHNlc3Npb25fa2V5cy0+c2FsdCwgdGVtcGxhdGVfc2Vzc2lvbl9rZXlzLT5z
YWx0LCBTUlRQX0FFQURfU0FMVF9MRU4pOwotICAgIG1lbWNweShzZXNzaW9uX2tleXMtPmNfc2Fs
dCwgdGVtcGxhdGVfc2Vzc2lvbl9rZXlzLT5jX3NhbHQsIFNSVFBfQUVBRF9TQUxUX0xFTik7Ci0K
LSAgICAvKiBzZXQga2V5IGxpbWl0IHRvIHBvaW50IHRvIHRoYXQgb2YgdGhlIHRlbXBsYXRlICov
Ci0gICAgc3RhdHVzID0gc3J0cF9rZXlfbGltaXRfY2xvbmUodGVtcGxhdGVfc2Vzc2lvbl9rZXlz
LT5saW1pdCwgJnNlc3Npb25fa2V5cy0+bGltaXQpOwotICAgIGlmIChzdGF0dXMpIHsgCi0gICAg
ICBzcnRwX2NyeXB0b19mcmVlKCpzdHJfcHRyKTsKLSAgICAgICpzdHJfcHRyID0gTlVMTDsKLSAg
ICAgIHJldHVybiBzdGF0dXM7Ci0gICAgfQotICB9Ci0KLQotICAvKiBpbml0aWFsaXplIHJlcGxh
eSBkYXRhYmFzZXMgKi8KLSAgc3RhdHVzID0gc3J0cF9yZGJ4X2luaXQoJnN0ci0+cnRwX3JkYngs
Ci0JCSAgICAgc3J0cF9yZGJ4X2dldF93aW5kb3dfc2l6ZSgmc3RyZWFtX3RlbXBsYXRlLT5ydHBf
cmRieCkpOwotICBpZiAoc3RhdHVzKSB7Ci0gICAgc3J0cF9jcnlwdG9fZnJlZSgqc3RyX3B0cik7
Ci0gICAgKnN0cl9wdHIgPSBOVUxMOwotICAgIHJldHVybiBzdGF0dXM7Ci0gIH0KLSAgc3J0cF9y
ZGJfaW5pdCgmc3RyLT5ydGNwX3JkYik7Ci0gIHN0ci0+YWxsb3dfcmVwZWF0X3R4ID0gc3RyZWFt
X3RlbXBsYXRlLT5hbGxvd19yZXBlYXRfdHg7CisgICAgZGVidWdfcHJpbnQobW9kX3NydHAsICJj
bG9uaW5nIHN0cmVhbSAoU1NSQzogMHglMDh4KSIsIG50b2hsKHNzcmMpKTsKIAotICAvKiBzZXQg
c3NyYyB0byB0aGF0IHByb3ZpZGVkICovCi0gIHN0ci0+c3NyYyA9IHNzcmM7CisgICAgLyogYWxs
b2NhdGUgc3J0cCBzdHJlYW0gYW5kIHNldCBzdHJfcHRyICovCisgICAgc3RyID0gKHNydHBfc3Ry
ZWFtX2N0eF90ICopc3J0cF9jcnlwdG9fYWxsb2Moc2l6ZW9mKHNydHBfc3RyZWFtX2N0eF90KSk7
CisgICAgaWYgKHN0ciA9PSBOVUxMKQorICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2Fs
bG9jX2ZhaWw7CisgICAgKnN0cl9wdHIgPSBzdHI7CiAKLSAgLyogcmVzZXQgcGVuZGluZyBST0Mg
Ki8KLSAgc3RyLT5wZW5kaW5nX3JvYyA9IDA7CisgICAgc3RyLT5udW1fbWFzdGVyX2tleXMgPSBz
dHJlYW1fdGVtcGxhdGUtPm51bV9tYXN0ZXJfa2V5czsKKyAgICBzdHItPnNlc3Npb25fa2V5cyA9
IChzcnRwX3Nlc3Npb25fa2V5c190ICopc3J0cF9jcnlwdG9fYWxsb2MoCisgICAgICAgIHNpemVv
ZihzcnRwX3Nlc3Npb25fa2V5c190KSAqIHN0ci0+bnVtX21hc3Rlcl9rZXlzKTsKIAotICAvKiBz
ZXQgZGlyZWN0aW9uIGFuZCBzZWN1cml0eSBzZXJ2aWNlcyAqLwotICBzdHItPmRpcmVjdGlvbiAg
ICAgPSBzdHJlYW1fdGVtcGxhdGUtPmRpcmVjdGlvbjsKLSAgc3RyLT5ydHBfc2VydmljZXMgID0g
c3RyZWFtX3RlbXBsYXRlLT5ydHBfc2VydmljZXM7Ci0gIHN0ci0+cnRjcF9zZXJ2aWNlcyA9IHN0
cmVhbV90ZW1wbGF0ZS0+cnRjcF9zZXJ2aWNlczsKKyAgICBpZiAoc3RyLT5zZXNzaW9uX2tleXMg
PT0gTlVMTCkgeworICAgICAgICBzcnRwX3N0cmVhbV9kZWFsbG9jKCpzdHJfcHRyLCBzdHJlYW1f
dGVtcGxhdGUpOworICAgICAgICAqc3RyX3B0ciA9IE5VTEw7CisgICAgICAgIHJldHVybiBzcnRw
X2Vycl9zdGF0dXNfYWxsb2NfZmFpbDsKKyAgICB9CiAKLSAgLyogc2V0IHBvaW50ZXIgdG8gRUtU
IGRhdGEgYXNzb2NpYXRlZCB3aXRoIHN0cmVhbSAqLwotICBzdHItPmVrdCA9IHN0cmVhbV90ZW1w
bGF0ZS0+ZWt0OworICAgIGZvciAoaSA9IDA7IGkgPCBzdHJlYW1fdGVtcGxhdGUtPm51bV9tYXN0
ZXJfa2V5czsgaSsrKSB7CisgICAgICAgIHNlc3Npb25fa2V5cyA9ICZzdHItPnNlc3Npb25fa2V5
c1tpXTsKKyAgICAgICAgdGVtcGxhdGVfc2Vzc2lvbl9rZXlzID0gJnN0cmVhbV90ZW1wbGF0ZS0+
c2Vzc2lvbl9rZXlzW2ldOworCisgICAgICAgIC8qIHNldCBjaXBoZXIgYW5kIGF1dGggcG9pbnRl
cnMgdG8gdGhvc2Ugb2YgdGhlIHRlbXBsYXRlICovCisgICAgICAgIHNlc3Npb25fa2V5cy0+cnRw
X2NpcGhlciA9IHRlbXBsYXRlX3Nlc3Npb25fa2V5cy0+cnRwX2NpcGhlcjsKKyAgICAgICAgc2Vz
c2lvbl9rZXlzLT5ydHBfYXV0aCA9IHRlbXBsYXRlX3Nlc3Npb25fa2V5cy0+cnRwX2F1dGg7Cisg
ICAgICAgIHNlc3Npb25fa2V5cy0+cnRwX3h0bl9oZHJfY2lwaGVyID0KKyAgICAgICAgICAgIHRl
bXBsYXRlX3Nlc3Npb25fa2V5cy0+cnRwX3h0bl9oZHJfY2lwaGVyOworICAgICAgICBzZXNzaW9u
X2tleXMtPnJ0Y3BfY2lwaGVyID0gdGVtcGxhdGVfc2Vzc2lvbl9rZXlzLT5ydGNwX2NpcGhlcjsK
KyAgICAgICAgc2Vzc2lvbl9rZXlzLT5ydGNwX2F1dGggPSB0ZW1wbGF0ZV9zZXNzaW9uX2tleXMt
PnJ0Y3BfYXV0aDsKKyAgICAgICAgc2Vzc2lvbl9rZXlzLT5ta2lfc2l6ZSA9IHRlbXBsYXRlX3Nl
c3Npb25fa2V5cy0+bWtpX3NpemU7CisKKyAgICAgICAgaWYgKHRlbXBsYXRlX3Nlc3Npb25fa2V5
cy0+bWtpX3NpemUgPT0gMCkgeworICAgICAgICAgICAgc2Vzc2lvbl9rZXlzLT5ta2lfaWQgPSBO
VUxMOworICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgc2Vzc2lvbl9rZXlzLT5ta2lfaWQg
PQorICAgICAgICAgICAgICAgIHNydHBfY3J5cHRvX2FsbG9jKHRlbXBsYXRlX3Nlc3Npb25fa2V5
cy0+bWtpX3NpemUpOwogCi0gIC8qIGNvcHkgaW5mb3JtYXRpb24gYWJvdXQgZXh0ZW5zaW9ucyBo
ZWFkZXIgZW5jcnlwdGlvbiAqLwotICBzdHItPmVuY194dG5faGRyID0gc3RyZWFtX3RlbXBsYXRl
LT5lbmNfeHRuX2hkcjsKLSAgc3RyLT5lbmNfeHRuX2hkcl9jb3VudCA9IHN0cmVhbV90ZW1wbGF0
ZS0+ZW5jX3h0bl9oZHJfY291bnQ7CisgICAgICAgICAgICBpZiAoc2Vzc2lvbl9rZXlzLT5ta2lf
aWQgPT0gTlVMTCkgeworICAgICAgICAgICAgICAgIHNydHBfc3RyZWFtX2RlYWxsb2MoKnN0cl9w
dHIsIHN0cmVhbV90ZW1wbGF0ZSk7CisgICAgICAgICAgICAgICAgKnN0cl9wdHIgPSBOVUxMOwor
ICAgICAgICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfaW5pdF9mYWlsOworICAgICAg
ICAgICAgfQorICAgICAgICAgICAgbWVtY3B5KHNlc3Npb25fa2V5cy0+bWtpX2lkLCB0ZW1wbGF0
ZV9zZXNzaW9uX2tleXMtPm1raV9pZCwKKyAgICAgICAgICAgICAgICAgICBzZXNzaW9uX2tleXMt
Pm1raV9zaXplKTsKKyAgICAgICAgfQorICAgICAgICAvKiBDb3B5IHRoZSBzYWx0IHZhbHVlcyAq
LworICAgICAgICBtZW1jcHkoc2Vzc2lvbl9rZXlzLT5zYWx0LCB0ZW1wbGF0ZV9zZXNzaW9uX2tl
eXMtPnNhbHQsCisgICAgICAgICAgICAgICBTUlRQX0FFQURfU0FMVF9MRU4pOworICAgICAgICBt
ZW1jcHkoc2Vzc2lvbl9rZXlzLT5jX3NhbHQsIHRlbXBsYXRlX3Nlc3Npb25fa2V5cy0+Y19zYWx0
LAorICAgICAgICAgICAgICAgU1JUUF9BRUFEX1NBTFRfTEVOKTsKKworICAgICAgICAvKiBzZXQg
a2V5IGxpbWl0IHRvIHBvaW50IHRvIHRoYXQgb2YgdGhlIHRlbXBsYXRlICovCisgICAgICAgIHN0
YXR1cyA9IHNydHBfa2V5X2xpbWl0X2Nsb25lKHRlbXBsYXRlX3Nlc3Npb25fa2V5cy0+bGltaXQs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZzZXNzaW9uX2tleXMtPmxp
bWl0KTsKKyAgICAgICAgaWYgKHN0YXR1cykgeworICAgICAgICAgICAgc3J0cF9zdHJlYW1fZGVh
bGxvYygqc3RyX3B0ciwgc3RyZWFtX3RlbXBsYXRlKTsKKyAgICAgICAgICAgICpzdHJfcHRyID0g
TlVMTDsKKyAgICAgICAgICAgIHJldHVybiBzdGF0dXM7CisgICAgICAgIH0KKyAgICB9CiAKLSAg
LyogZGVmZW5zaXZlIGNvZGluZyAqLwotICBzdHItPm5leHQgPSBOVUxMOwotICByZXR1cm4gc3J0
cF9lcnJfc3RhdHVzX29rOwotfQorICAgIC8qIGluaXRpYWxpemUgcmVwbGF5IGRhdGFiYXNlcyAq
LworICAgIHN0YXR1cyA9IHNydHBfcmRieF9pbml0KAorICAgICAgICAmc3RyLT5ydHBfcmRieCwg
c3J0cF9yZGJ4X2dldF93aW5kb3dfc2l6ZSgmc3RyZWFtX3RlbXBsYXRlLT5ydHBfcmRieCkpOwor
ICAgIGlmIChzdGF0dXMpIHsKKyAgICAgICAgc3J0cF9zdHJlYW1fZGVhbGxvYygqc3RyX3B0ciwg
c3RyZWFtX3RlbXBsYXRlKTsKKyAgICAgICAgKnN0cl9wdHIgPSBOVUxMOworICAgICAgICByZXR1
cm4gc3RhdHVzOworICAgIH0KKyAgICBzcnRwX3JkYl9pbml0KCZzdHItPnJ0Y3BfcmRiKTsKKyAg
ICBzdHItPmFsbG93X3JlcGVhdF90eCA9IHN0cmVhbV90ZW1wbGF0ZS0+YWxsb3dfcmVwZWF0X3R4
OworCisgICAgLyogc2V0IHNzcmMgdG8gdGhhdCBwcm92aWRlZCAqLworICAgIHN0ci0+c3NyYyA9
IHNzcmM7CisKKyAgICAvKiByZXNldCBwZW5kaW5nIFJPQyAqLworICAgIHN0ci0+cGVuZGluZ19y
b2MgPSAwOworCisgICAgLyogc2V0IGRpcmVjdGlvbiBhbmQgc2VjdXJpdHkgc2VydmljZXMgKi8K
KyAgICBzdHItPmRpcmVjdGlvbiA9IHN0cmVhbV90ZW1wbGF0ZS0+ZGlyZWN0aW9uOworICAgIHN0
ci0+cnRwX3NlcnZpY2VzID0gc3RyZWFtX3RlbXBsYXRlLT5ydHBfc2VydmljZXM7CisgICAgc3Ry
LT5ydGNwX3NlcnZpY2VzID0gc3RyZWFtX3RlbXBsYXRlLT5ydGNwX3NlcnZpY2VzOwogCisgICAg
Lyogc2V0IHBvaW50ZXIgdG8gRUtUIGRhdGEgYXNzb2NpYXRlZCB3aXRoIHN0cmVhbSAqLworICAg
IHN0ci0+ZWt0ID0gc3RyZWFtX3RlbXBsYXRlLT5la3Q7CisKKyAgICAvKiBjb3B5IGluZm9ybWF0
aW9uIGFib3V0IGV4dGVuc2lvbnMgaGVhZGVyIGVuY3J5cHRpb24gKi8KKyAgICBzdHItPmVuY194
dG5faGRyID0gc3RyZWFtX3RlbXBsYXRlLT5lbmNfeHRuX2hkcjsKKyAgICBzdHItPmVuY194dG5f
aGRyX2NvdW50ID0gc3RyZWFtX3RlbXBsYXRlLT5lbmNfeHRuX2hkcl9jb3VudDsKKworICAgIC8q
IGRlZmVuc2l2ZSBjb2RpbmcgKi8KKyAgICBzdHItPm5leHQgPSBOVUxMOworICAgIHJldHVybiBz
cnRwX2Vycl9zdGF0dXNfb2s7Cit9CiAKIC8qCiAgKiBrZXkgZGVyaXZhdGlvbiBmdW5jdGlvbnMs
IGludGVybmFsIHRvIGxpYlNSVFAKQEAgLTU5Myw3ICs1NTgsNyBAQCBzcnRwX3N0cmVhbV9jbG9u
ZShjb25zdCBzcnRwX3N0cmVhbV9jdHhfdCAqc3RyZWFtX3RlbXBsYXRlLAogICoKICAqIHNydHBf
a2RmX2luaXQoJmtkZiwgY2lwaGVyX2lkLCBrLCBrZXlsZW4pIGluaXRpYWxpemVzIGtkZiB0byB1
c2UgY2lwaGVyCiAgKiBkZXNjcmliZWQgYnkgY2lwaGVyX2lkLCB3aXRoIHRoZSBtYXN0ZXIga2V5
IGsgd2l0aCBsZW5ndGggaW4gb2N0ZXRzIGtleWxlbi4KLSAqIAorICoKICAqIHNydHBfa2RmX2dl
bmVyYXRlKCZrZGYsIGwsIGtsLCBrZXlsZW4pIGRlcml2ZXMgdGhlIGtleQogICogY29ycmVzcG9u
ZGluZyB0byBsYWJlbCBsIGFuZCBwdXRzIGl0IGludG8ga2w7IHRoZSBsZW5ndGgKICAqIG9mIHRo
ZSBrZXkgaW4gb2N0ZXRzIGlzIHByb3ZpZGVkIGFzIGtleWxlbi4gIHRoaXMgZnVuY3Rpb24KQEAg
LTYwMywzOSArNTY4LDQyIEBAIHNydHBfc3RyZWFtX2Nsb25lKGNvbnN0IHNydHBfc3RyZWFtX2N0
eF90ICpzdHJlYW1fdGVtcGxhdGUsCiAgKi8KIAogdHlwZWRlZiBlbnVtIHsKLSAgbGFiZWxfcnRw
X2VuY3J5cHRpb24gID0gMHgwMCwKLSAgbGFiZWxfcnRwX21zZ19hdXRoICAgID0gMHgwMSwKLSAg
bGFiZWxfcnRwX3NhbHQgICAgICAgID0gMHgwMiwKLSAgbGFiZWxfcnRjcF9lbmNyeXB0aW9uID0g
MHgwMywKLSAgbGFiZWxfcnRjcF9tc2dfYXV0aCAgID0gMHgwNCwKLSAgbGFiZWxfcnRjcF9zYWx0
ICAgICAgID0gMHgwNSwKLSAgbGFiZWxfcnRwX2hlYWRlcl9lbmNyeXB0aW9uID0gMHgwNiwKLSAg
bGFiZWxfcnRwX2hlYWRlcl9zYWx0ID0gMHgwNworICAgIGxhYmVsX3J0cF9lbmNyeXB0aW9uID0g
MHgwMCwKKyAgICBsYWJlbF9ydHBfbXNnX2F1dGggPSAweDAxLAorICAgIGxhYmVsX3J0cF9zYWx0
ID0gMHgwMiwKKyAgICBsYWJlbF9ydGNwX2VuY3J5cHRpb24gPSAweDAzLAorICAgIGxhYmVsX3J0
Y3BfbXNnX2F1dGggPSAweDA0LAorICAgIGxhYmVsX3J0Y3Bfc2FsdCA9IDB4MDUsCisgICAgbGFi
ZWxfcnRwX2hlYWRlcl9lbmNyeXB0aW9uID0gMHgwNiwKKyAgICBsYWJlbF9ydHBfaGVhZGVyX3Nh
bHQgPSAweDA3CiB9IHNydHBfcHJmX2xhYmVsOwogCiAjZGVmaW5lIE1BWF9TUlRQX0tFWV9MRU4g
MjU2CiAKICNpZiBkZWZpbmVkKE9QRU5TU0wpICYmIGRlZmluZWQoT1BFTlNTTF9LREYpCiAjZGVm
aW5lIE1BWF9TUlRQX0FFU0tFWV9MRU4gMzIKLSNkZWZpbmUgTUFYX1NSVFBfU0FMVF9MRU4gMTQg
CisjZGVmaW5lIE1BWF9TUlRQX1NBTFRfTEVOIDE0CiAKIC8qCiAgKiBzcnRwX2tkZl90IHJlcHJl
c2VudHMgYSBrZXkgZGVyaXZhdGlvbiBmdW5jdGlvbi4gIFRoZSBTUlRQCiAgKiBkZWZhdWx0IEtE
RiBpcyB0aGUgb25seSBvbmUgaW1wbGVtZW50ZWQgYXQgcHJlc2VudC4KICAqLwotdHlwZWRlZiBz
dHJ1Y3QgeyAKK3R5cGVkZWYgc3RydWN0IHsKICAgICB1aW50OF90IG1hc3Rlcl9rZXlbTUFYX1NS
VFBfQUVTS0VZX0xFTl07CiAgICAgdWludDhfdCBtYXN0ZXJfc2FsdFtNQVhfU1JUUF9TQUxUX0xF
Tl07CiAgICAgY29uc3QgRVZQX0NJUEhFUiAqZXZwOwogfSBzcnRwX2tkZl90OwogCi0KLXN0YXRp
YyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2tkZl9pbml0KHNydHBfa2RmX3QgKmtkZiwgY29uc3Qg
dWludDhfdCAqa2V5LCBpbnQga2V5X2xlbiwgaW50IHNhbHRfbGVuKSAKK3N0YXRpYyBzcnRwX2Vy
cl9zdGF0dXNfdCBzcnRwX2tkZl9pbml0KHNydHBfa2RmX3QgKmtkZiwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVpbnQ4X3QgKmtleSwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBrZXlfbGVuLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgaW50IHNhbHRfbGVuKQogewogICAgIG1lbXNldChrZGYs
IDB4MCwgc2l6ZW9mKHNydHBfa2RmX3QpKTsKIAogICAgIC8qIFRoZSBOVUxMIGNpcGhlciBoYXMg
emVybyBrZXkgbGVuZ3RoICovCi0gICAgaWYgKGtleV9sZW4gPT0gMCkgcmV0dXJuIHNydHBfZXJy
X3N0YXR1c19vazsKKyAgICBpZiAoa2V5X2xlbiA9PSAwKQorICAgICAgICByZXR1cm4gc3J0cF9l
cnJfc3RhdHVzX29rOwogCiAgICAgaWYgKChrZXlfbGVuID4gTUFYX1NSVFBfQUVTS0VZX0xFTikg
fHwgKHNhbHRfbGVuID4gTUFYX1NSVFBfU0FMVF9MRU4pKSB7CiAgICAgICAgIHJldHVybiBzcnRw
X2Vycl9zdGF0dXNfYmFkX3BhcmFtOwpAQCAtNjU0LDE3ICs2MjIsMjEgQEAgc3RhdGljIHNydHBf
ZXJyX3N0YXR1c190IHNydHBfa2RmX2luaXQoc3J0cF9rZGZfdCAqa2RmLCBjb25zdCB1aW50OF90
ICprZXksIGludAogICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJhbTsKICAg
ICAgICAgYnJlYWs7CiAgICAgfQotICAgIG1lbWNweShrZGYtPm1hc3Rlcl9rZXksIGtleSwga2V5
X2xlbik7IAotICAgIG1lbWNweShrZGYtPm1hc3Rlcl9zYWx0LCBrZXkra2V5X2xlbiwgc2FsdF9s
ZW4pOyAKKyAgICBtZW1jcHkoa2RmLT5tYXN0ZXJfa2V5LCBrZXksIGtleV9sZW4pOworICAgIG1l
bWNweShrZGYtPm1hc3Rlcl9zYWx0LCBrZXkgKyBrZXlfbGVuLCBzYWx0X2xlbik7CiAgICAgcmV0
dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0KIAotc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNy
dHBfa2RmX2dlbmVyYXRlKHNydHBfa2RmX3QgKmtkZiwgc3J0cF9wcmZfbGFiZWwgbGFiZWwsIHVp
bnQ4X3QgKmtleSwgdW5zaWduZWQgaW50IGxlbmd0aCkgCitzdGF0aWMgc3J0cF9lcnJfc3RhdHVz
X3Qgc3J0cF9rZGZfZ2VuZXJhdGUoc3J0cF9rZGZfdCAqa2RmLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfcHJmX2xhYmVsIGxhYmVsLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQ4X3QgKmtleSwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgbGVuZ3RoKQog
ewogICAgIGludCByZXQ7CiAKICAgICAvKiBUaGUgTlVMTCBjaXBoZXIgd2lsbCBub3QgaGF2ZSBh
biBFVlAgKi8KLSAgICBpZiAoIWtkZi0+ZXZwKSByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwor
ICAgIGlmICgha2RmLT5ldnApCisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiAg
ICAgb2N0ZXRfc3RyaW5nX3NldF90b196ZXJvKGtleSwgbGVuZ3RoKTsKIAogICAgIC8qCkBAIC02
NzIsNyArNjQ0LDggQEAgc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfa2RmX2dlbmVyYXRl
KHNydHBfa2RmX3QgKmtkZiwgc3J0cF9wcmZfbGFiZWwgbGFiZWwKICAgICAgKiBUaGlzIGlzIHVz
ZWZ1bCBpZiBPcGVuU1NMIGlzIGluIEZJUFMgbW9kZSBhbmQgRklQCiAgICAgICogY29tcGxpYW5j
ZSBpcyByZXF1aXJlZCBmb3IgU1JUUC4KICAgICAgKi8KLSAgICByZXQgPSBrZGZfc3J0cChrZGYt
PmV2cCwgKGNoYXIgKikma2RmLT5tYXN0ZXJfa2V5LCAoY2hhciAqKSZrZGYtPm1hc3Rlcl9zYWx0
LCBOVUxMLCBOVUxMLCBsYWJlbCwgKGNoYXIgKilrZXkpOworICAgIHJldCA9IGtkZl9zcnRwKGtk
Zi0+ZXZwLCAoY2hhciAqKSZrZGYtPm1hc3Rlcl9rZXksCisgICAgICAgICAgICAgICAgICAgKGNo
YXIgKikma2RmLT5tYXN0ZXJfc2FsdCwgTlVMTCwgTlVMTCwgbGFiZWwsIChjaGFyICopa2V5KTsK
ICAgICBpZiAocmV0ID09IC0xKSB7CiAgICAgICAgIHJldHVybiAoc3J0cF9lcnJfc3RhdHVzX2Fs
Z29fZmFpbCk7CiAgICAgfQpAQCAtNjgwLDI1ICs2NTMsMjggQEAgc3RhdGljIHNydHBfZXJyX3N0
YXR1c190IHNydHBfa2RmX2dlbmVyYXRlKHNydHBfa2RmX3QgKmtkZiwgc3J0cF9wcmZfbGFiZWwg
bGFiZWwKICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQogCi1zdGF0aWMgc3J0cF9l
cnJfc3RhdHVzX3Qgc3J0cF9rZGZfY2xlYXIoc3J0cF9rZGZfdCAqa2RmKSB7CitzdGF0aWMgc3J0
cF9lcnJfc3RhdHVzX3Qgc3J0cF9rZGZfY2xlYXIoc3J0cF9rZGZfdCAqa2RmKQorewogICAgIG9j
dGV0X3N0cmluZ19zZXRfdG9femVybyhrZGYtPm1hc3Rlcl9rZXksIE1BWF9TUlRQX0FFU0tFWV9M
RU4pOwogICAgIG9jdGV0X3N0cmluZ19zZXRfdG9femVybyhrZGYtPm1hc3Rlcl9zYWx0LCBNQVhf
U1JUUF9TQUxUX0xFTik7CiAgICAga2RmLT5ldnAgPSBOVUxMOwogCi0gICAgcmV0dXJuIHNydHBf
ZXJyX3N0YXR1c19vazsgIAorICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAKLSNl
bHNlIC8qIGlmIE9QRU5TU0xfS0RGICovCisjZWxzZSAgLyogaWYgT1BFTlNTTF9LREYgKi8KIAog
LyoKICAqIHNydHBfa2RmX3QgcmVwcmVzZW50cyBhIGtleSBkZXJpdmF0aW9uIGZ1bmN0aW9uLiAg
VGhlIFNSVFAKICAqIGRlZmF1bHQgS0RGIGlzIHRoZSBvbmx5IG9uZSBpbXBsZW1lbnRlZCBhdCBw
cmVzZW50LgogICovCi10eXBlZGVmIHN0cnVjdCB7IAotICAgIHNydHBfY2lwaGVyX3QgKmNpcGhl
cjsgICAgLyogY2lwaGVyIHVzZWQgZm9yIGtleSBkZXJpdmF0aW9uICAqLyAgCit0eXBlZGVmIHN0
cnVjdCB7CisgICAgc3J0cF9jaXBoZXJfdCAqY2lwaGVyOyAvKiBjaXBoZXIgdXNlZCBmb3Iga2V5
IGRlcml2YXRpb24gICovCiB9IHNydHBfa2RmX3Q7CiAKLXN0YXRpYyBzcnRwX2Vycl9zdGF0dXNf
dCBzcnRwX2tkZl9pbml0KHNydHBfa2RmX3QgKmtkZiwgY29uc3QgdWludDhfdCAqa2V5LCBpbnQg
a2V5X2xlbikKK3N0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2tkZl9pbml0KHNydHBfa2Rm
X3QgKmtkZiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVp
bnQ4X3QgKmtleSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBr
ZXlfbGVuKQogewogICAgIHNydHBfY2lwaGVyX3R5cGVfaWRfdCBjaXBoZXJfaWQ7CiAgICAgc3dp
dGNoIChrZXlfbGVuKSB7CkBAIC03MTgsNyArNjk0LDggQEAgc3RhdGljIHNydHBfZXJyX3N0YXR1
c190IHNydHBfa2RmX2luaXQoc3J0cF9rZGZfdCAqa2RmLCBjb25zdCB1aW50OF90ICprZXksIGlu
dAogCiAgICAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdDsKICAgICBzdGF0ID0gc3J0cF9jcnlwdG9f
a2VybmVsX2FsbG9jX2NpcGhlcihjaXBoZXJfaWQsICZrZGYtPmNpcGhlciwga2V5X2xlbiwgMCk7
Ci0gICAgaWYgKHN0YXQpIHJldHVybiBzdGF0OworICAgIGlmIChzdGF0KQorICAgICAgICByZXR1
cm4gc3RhdDsKIAogICAgIHN0YXQgPSBzcnRwX2NpcGhlcl9pbml0KGtkZi0+Y2lwaGVyLCBrZXkp
OwogICAgIGlmIChzdGF0KSB7CkBAIC03MjgsMTA1ICs3MDUsMTEzIEBAIHN0YXRpYyBzcnRwX2Vy
cl9zdGF0dXNfdCBzcnRwX2tkZl9pbml0KHNydHBfa2RmX3QgKmtkZiwgY29uc3QgdWludDhfdCAq
a2V5LCBpbnQKICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQogCi1zdGF0aWMgc3J0
cF9lcnJfc3RhdHVzX3Qgc3J0cF9rZGZfZ2VuZXJhdGUoc3J0cF9rZGZfdCAqa2RmLCBzcnRwX3By
Zl9sYWJlbCBsYWJlbCwgdWludDhfdCAqa2V5LCB1bnNpZ25lZCBpbnQgbGVuZ3RoKSAKK3N0YXRp
YyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2tkZl9nZW5lcmF0ZShzcnRwX2tkZl90ICprZGYsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF9wcmZfbGFiZWwg
bGFiZWwsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDhf
dCAqa2V5LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2ln
bmVkIGludCBsZW5ndGgpCiB7CiAgICAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVzOwogICAgIHYx
MjhfdCBub25jZTsKLSAgCisKICAgICAvKiBzZXQgZWlndGggb2N0ZXQgb2Ygbm9uY2UgdG8gPGxh
YmVsPiwgc2V0IHRoZSByZXN0IG9mIGl0IHRvIHplcm8gKi8KICAgICB2MTI4X3NldF90b196ZXJv
KCZub25jZSk7CiAgICAgbm9uY2UudjhbN10gPSBsYWJlbDsKLSAKLSAgICBzdGF0dXMgPSBzcnRw
X2NpcGhlcl9zZXRfaXYoa2RmLT5jaXBoZXIsICh1aW50OF90Kikmbm9uY2UsIHNydHBfZGlyZWN0
aW9uX2VuY3J5cHQpOwotICAgIGlmIChzdGF0dXMpIHJldHVybiBzdGF0dXM7Ci0gIAorCisgICAg
c3RhdHVzID0gc3J0cF9jaXBoZXJfc2V0X2l2KGtkZi0+Y2lwaGVyLCAodWludDhfdCAqKSZub25j
ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF9kaXJlY3Rpb25fZW5jcnlw
dCk7CisgICAgaWYgKHN0YXR1cykKKyAgICAgICAgcmV0dXJuIHN0YXR1czsKKwogICAgIC8qIGdl
bmVyYXRlIGtleXN0cmVhbSBvdXRwdXQgKi8KICAgICBvY3RldF9zdHJpbmdfc2V0X3RvX3plcm8o
a2V5LCBsZW5ndGgpOwogICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX2VuY3J5cHQoa2RmLT5jaXBo
ZXIsIGtleSwgJmxlbmd0aCk7Ci0gICAgaWYgKHN0YXR1cykgcmV0dXJuIHN0YXR1czsKKyAgICBp
ZiAoc3RhdHVzKQorICAgICAgICByZXR1cm4gc3RhdHVzOwogCiAgICAgcmV0dXJuIHNydHBfZXJy
X3N0YXR1c19vazsKIH0KIAotc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfa2RmX2NsZWFy
KHNydHBfa2RmX3QgKmtkZikgeworc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfa2RmX2Ns
ZWFyKHNydHBfa2RmX3QgKmtkZikKK3sKICAgICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7CiAg
ICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfZGVhbGxvYyhrZGYtPmNpcGhlcik7Ci0gICAgaWYgKHN0
YXR1cykgcmV0dXJuIHN0YXR1czsKKyAgICBpZiAoc3RhdHVzKQorICAgICAgICByZXR1cm4gc3Rh
dHVzOwogICAgIGtkZi0+Y2lwaGVyID0gTlVMTDsKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVz
X29rOyAgCisgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0KICNlbmRpZiAvKiBlbHNl
IE9QRU5TU0xfS0RGICovCiAKIC8qCi0gKiAgZW5kIG9mIGtleSBkZXJpdmF0aW9uIGZ1bmN0aW9u
cyAKKyAqICBlbmQgb2Yga2V5IGRlcml2YXRpb24gZnVuY3Rpb25zCiAgKi8KIAotCi0KIC8qIEdl
dCB0aGUgYmFzZSBrZXkgbGVuZ3RoIGNvcnJlc3BvbmRpbmcgdG8gYSBnaXZlbiBjb21iaW5lZCBr
ZXkrc2FsdAogICogbGVuZ3RoIGZvciB0aGUgZ2l2ZW4gY2lwaGVyLgogICogVE9ETzoga2V5IGFu
ZCBzYWx0IGxlbmd0aHMgc2hvdWxkIGJlIHNlcGFyYXRlIGZpZWxkcyBpbiB0aGUgcG9saWN5LiAg
Ki8KLXN0YXRpYyBpbmxpbmUgaW50IGJhc2Vfa2V5X2xlbmd0aChjb25zdCBzcnRwX2NpcGhlcl90
eXBlX3QgKmNpcGhlciwgaW50IGtleV9sZW5ndGgpCitzdGF0aWMgaW5saW5lIGludCBiYXNlX2tl
eV9sZW5ndGgoY29uc3Qgc3J0cF9jaXBoZXJfdHlwZV90ICpjaXBoZXIsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgaW50IGtleV9sZW5ndGgpCiB7Ci0gIHN3aXRjaCAoY2lwaGVy
LT5pZCkgewotICBjYXNlIFNSVFBfQUVTX0lDTV8xMjg6Ci0gIGNhc2UgU1JUUF9BRVNfSUNNXzE5
MjoKLSAgY2FzZSBTUlRQX0FFU19JQ01fMjU2OgotICAgIC8qIFRoZSBsZWdhY3kgbW9kZXMgYXJl
IGRlcml2ZWQgZnJvbQotICAgICAqIHRoZSBjb25maWd1cmVkIGtleSBsZW5ndGggb24gdGhlIHBv
bGljeSAqLwotICAgIHJldHVybiBrZXlfbGVuZ3RoIC0gU1JUUF9TQUxUX0xFTjsKLSAgICBicmVh
azsKLSAgY2FzZSBTUlRQX0FFU19HQ01fMTI4OgotICAgIHJldHVybiBrZXlfbGVuZ3RoIC0gU1JU
UF9BRUFEX1NBTFRfTEVOOwotICAgIGJyZWFrOwotICBjYXNlIFNSVFBfQUVTX0dDTV8yNTY6Ci0g
ICAgICByZXR1cm4ga2V5X2xlbmd0aCAtIFNSVFBfQUVBRF9TQUxUX0xFTjsKLSAgICBicmVhazsK
LSAgZGVmYXVsdDoKLSAgICByZXR1cm4ga2V5X2xlbmd0aDsKLSAgICBicmVhazsKLSAgfQorICAg
IHN3aXRjaCAoY2lwaGVyLT5pZCkgeworICAgIGNhc2UgU1JUUF9BRVNfSUNNXzEyODoKKyAgICBj
YXNlIFNSVFBfQUVTX0lDTV8xOTI6CisgICAgY2FzZSBTUlRQX0FFU19JQ01fMjU2OgorICAgICAg
ICAvKiBUaGUgbGVnYWN5IG1vZGVzIGFyZSBkZXJpdmVkIGZyb20KKyAgICAgICAgICogdGhlIGNv
bmZpZ3VyZWQga2V5IGxlbmd0aCBvbiB0aGUgcG9saWN5ICovCisgICAgICAgIHJldHVybiBrZXlf
bGVuZ3RoIC0gU1JUUF9TQUxUX0xFTjsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBTUlRQX0FF
U19HQ01fMTI4OgorICAgICAgICByZXR1cm4ga2V5X2xlbmd0aCAtIFNSVFBfQUVBRF9TQUxUX0xF
TjsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBTUlRQX0FFU19HQ01fMjU2OgorICAgICAgICBy
ZXR1cm4ga2V5X2xlbmd0aCAtIFNSVFBfQUVBRF9TQUxUX0xFTjsKKyAgICAgICAgYnJlYWs7Cisg
ICAgZGVmYXVsdDoKKyAgICAgICAgcmV0dXJuIGtleV9sZW5ndGg7CisgICAgICAgIGJyZWFrOwor
ICAgIH0KIH0KIAotdW5zaWduZWQgaW50Ci1zcnRwX3ZhbGlkYXRlX3BvbGljeV9tYXN0ZXJfa2V5
cyhjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3kpCit1bnNpZ25lZCBpbnQgc3J0cF92YWxpZGF0
ZV9wb2xpY3lfbWFzdGVyX2tleXMoY29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5KQogewotICAg
IGludCBpID0gMDsKKyAgICB1bnNpZ25lZCBsb25nIGkgPSAwOwogCiAgICAgaWYgKHBvbGljeS0+
a2V5ID09IE5VTEwpIHsKICAgICAgICAgaWYgKHBvbGljeS0+bnVtX21hc3Rlcl9rZXlzIDw9IDAp
CiAgICAgICAgICAgICByZXR1cm4gMDsKIAogICAgICAgICBpZiAocG9saWN5LT5udW1fbWFzdGVy
X2tleXMgPiBTUlRQX01BWF9OVU1fTUFTVEVSX0tFWVMpCi0JICAgIHJldHVybiAwOwotCQorICAg
ICAgICAgICAgcmV0dXJuIDA7CisKICAgICAgICAgZm9yIChpID0gMDsgaSA8IHBvbGljeS0+bnVt
X21hc3Rlcl9rZXlzOyBpKyspIHsKICAgICAgICAgICAgIGlmIChwb2xpY3ktPmtleXNbaV0tPmtl
eSA9PSBOVUxMKQogICAgICAgICAgICAgICAgIHJldHVybiAwOwotCSAgICBpZiAocG9saWN5LT5r
ZXlzW2ldLT5ta2lfc2l6ZSA+IFNSVFBfTUFYX01LSV9MRU4pCi0JCXJldHVybiAwOworICAgICAg
ICAgICAgaWYgKHBvbGljeS0+a2V5c1tpXS0+bWtpX3NpemUgPiBTUlRQX01BWF9NS0lfTEVOKQor
ICAgICAgICAgICAgICAgIHJldHVybiAwOwogICAgICAgICB9CiAgICAgfQogCiAgICAgcmV0dXJu
IDE7CiB9CiAKLXNydHBfc2Vzc2lvbl9rZXlzX3QqCi1zcnRwX2dldF9zZXNzaW9uX2tleXNfd2l0
aF9ta2lfaW5kZXgoc3J0cF9zdHJlYW1fY3R4X3QgKnN0cmVhbSwKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgdXNlX21raSwKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgbWtpX2luZGV4KSB7CitzcnRwX3Nl
c3Npb25fa2V5c190ICpzcnRwX2dldF9zZXNzaW9uX2tleXNfd2l0aF9ta2lfaW5kZXgoCisgICAg
c3J0cF9zdHJlYW1fY3R4X3QgKnN0cmVhbSwKKyAgICB1bnNpZ25lZCBpbnQgdXNlX21raSwKKyAg
ICB1bnNpZ25lZCBpbnQgbWtpX2luZGV4KQorewogICAgIGlmICh1c2VfbWtpKSB7Ci0gICAgICAg
IGlmIChta2lfaW5kZXggPCBzdHJlYW0tPm51bV9tYXN0ZXJfa2V5cykgewotICAgICAgICAgICAg
cmV0dXJuICZzdHJlYW0tPnNlc3Npb25fa2V5c1tta2lfaW5kZXhdOworICAgICAgICBpZiAobWtp
X2luZGV4ID49IHN0cmVhbS0+bnVtX21hc3Rlcl9rZXlzKSB7CisgICAgICAgICAgICByZXR1cm4g
TlVMTDsKICAgICAgICAgfQorICAgICAgICByZXR1cm4gJnN0cmVhbS0+c2Vzc2lvbl9rZXlzW21r
aV9pbmRleF07CiAgICAgfQogCiAgICAgcmV0dXJuICZzdHJlYW0tPnNlc3Npb25fa2V5c1swXTsK
IH0KIAotdW5zaWduZWQgaW50Ci1zcnRwX2luamVjdF9ta2kodWludDhfdCAqbWtpX3RhZ19sb2Nh
dGlvbiwgc3J0cF9zZXNzaW9uX2tleXNfdCogc2Vzc2lvbl9rZXlzLAotICAgICAgICAgICAgICAg
IHVuc2lnbmVkIGludCB1c2VfbWtpKQordW5zaWduZWQgaW50IHNydHBfaW5qZWN0X21raSh1aW50
OF90ICpta2lfdGFnX2xvY2F0aW9uLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcnRw
X3Nlc3Npb25fa2V5c190ICpzZXNzaW9uX2tleXMsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHVuc2lnbmVkIGludCB1c2VfbWtpKQogewogICAgIHVuc2lnbmVkIGludCBta2lfc2l6ZSA9
IDA7CiAKQEAgLTg0MiwxNiArODI3LDE3IEBAIHNydHBfaW5qZWN0X21raSh1aW50OF90ICpta2lf
dGFnX2xvY2F0aW9uLCBzcnRwX3Nlc3Npb25fa2V5c190KiBzZXNzaW9uX2tleXMsCiAgICAgcmV0
dXJuIG1raV9zaXplOwogfQogCi1zcnRwX2Vycl9zdGF0dXNfdAotc3J0cF9zdHJlYW1faW5pdF9h
bGxfbWFzdGVyX2tleXMoc3J0cF9zdHJlYW1fY3R4X3QgKnNydHAsCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICB1bnNpZ25lZCBjaGFyICprZXksCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBzcnRwX21hc3Rlcl9rZXlfdCAqKmtleXMsCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBjb25zdCB1bnNpZ25lZCBpbnQgbWF4X21hc3Rlcl9rZXlzKSB7Ci0g
ICAgaW50IGkgPSAwOworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9zdHJlYW1faW5pdF9hbGxfbWFz
dGVyX2tleXMoCisgICAgc3J0cF9zdHJlYW1fY3R4X3QgKnNydHAsCisgICAgdW5zaWduZWQgY2hh
ciAqa2V5LAorICAgIHNydHBfbWFzdGVyX2tleV90ICoqa2V5cywKKyAgICBjb25zdCB1bnNpZ25l
ZCBpbnQgbWF4X21hc3Rlcl9rZXlzKQoreworICAgIHVuc2lnbmVkIGludCBpID0gMDsKICAgICBz
cnRwX2Vycl9zdGF0dXNfdCBzdGF0dXMgPSBzcnRwX2Vycl9zdGF0dXNfb2s7CiAgICAgc3J0cF9t
YXN0ZXJfa2V5X3Qgc2luZ2xlX21hc3Rlcl9rZXk7CiAKLSAgICBpZiAoIGtleSAhPSBOVUxMICkg
eworICAgIGlmIChrZXkgIT0gTlVMTCkgewogICAgICAgICBzcnRwLT5udW1fbWFzdGVyX2tleXMg
PSAxOwogICAgICAgICBzaW5nbGVfbWFzdGVyX2tleS5rZXkgPSBrZXk7CiAgICAgICAgIHNpbmds
ZV9tYXN0ZXJfa2V5Lm1raV9pZCA9IE5VTEw7CkBAIC04NjAsNyArODQ2LDggQEAgc3J0cF9zdHJl
YW1faW5pdF9hbGxfbWFzdGVyX2tleXMoc3J0cF9zdHJlYW1fY3R4X3QgKnNydHAsCiAgICAgfSBl
bHNlIHsKICAgICAgICAgc3J0cC0+bnVtX21hc3Rlcl9rZXlzID0gbWF4X21hc3Rlcl9rZXlzOwog
Ci0gICAgICAgIGZvciAoaSA9IDA7IGkgPCBzcnRwLT5udW1fbWFzdGVyX2tleXMgJiYgaSA8IFNS
VFBfTUFYX05VTV9NQVNURVJfS0VZUzsgaSsrKSB7CisgICAgICAgIGZvciAoaSA9IDA7IGkgPCBz
cnRwLT5udW1fbWFzdGVyX2tleXMgJiYgaSA8IFNSVFBfTUFYX05VTV9NQVNURVJfS0VZUzsKKyAg
ICAgICAgICAgICBpKyspIHsKICAgICAgICAgICAgIHN0YXR1cyA9IHNydHBfc3RyZWFtX2luaXRf
a2V5cyhzcnRwLCBrZXlzW2ldLCBpKTsKIAogICAgICAgICAgICAgaWYgKHN0YXR1cykgewpAQCAt
ODcyLDU3NyArODU5LDYwOSBAQCBzcnRwX3N0cmVhbV9pbml0X2FsbF9tYXN0ZXJfa2V5cyhzcnRw
X3N0cmVhbV9jdHhfdCAqc3J0cCwKICAgICByZXR1cm4gc3RhdHVzOwogfQogCi1zcnRwX2Vycl9z
dGF0dXNfdAotc3J0cF9zdHJlYW1faW5pdF9rZXlzKHNydHBfc3RyZWFtX2N0eF90ICpzcnRwLCBz
cnRwX21hc3Rlcl9rZXlfdCAqbWFzdGVyX2tleSwKLSAgICAgICAgICAgICAgICAgICAgICBjb25z
dCB1bnNpZ25lZCBpbnQgY3VycmVudF9ta2lfaW5kZXgpIHsKLSAgc3J0cF9lcnJfc3RhdHVzX3Qg
c3RhdDsKLSAgc3J0cF9rZGZfdCBrZGY7Ci0gIHVpbnQ4X3QgdG1wX2tleVtNQVhfU1JUUF9LRVlf
TEVOXTsKLSAgaW50IGtkZl9rZXlsZW4gPSAzMCwgcnRwX2tleWxlbiwgcnRjcF9rZXlsZW47Ci0g
IGludCBydHBfYmFzZV9rZXlfbGVuLCBydHBfc2FsdF9sZW47Ci0gIGludCBydGNwX2Jhc2Vfa2V5
X2xlbiwgcnRjcF9zYWx0X2xlbjsKLSAgc3J0cF9zZXNzaW9uX2tleXNfdCAqc2Vzc2lvbl9rZXlz
ID0gTlVMTDsKLSAgdW5zaWduZWQgY2hhciAqa2V5ID0gbWFzdGVyX2tleS0+a2V5OwotCi0gIC8q
IElmIFJUUCBvciBSVENQIGhhdmUgYSBrZXkgbGVuZ3RoID4gQUVTLTEyOCwgYXNzdW1lIG1hdGNo
aW5nIGtkZi4gKi8KLSAgLyogVE9ETzoga2RmIGFsZ29yaXRobSwgbWFzdGVyIGtleSBsZW5ndGgs
IGFuZCBtYXN0ZXIgc2FsdCBsZW5ndGggc2hvdWxkCi0gICAqIGJlIHBhcnQgb2Ygc3J0cF9wb2xp
Y3lfdC4gKi8KLSAgc2Vzc2lvbl9rZXlzID0gJnNydHAtPnNlc3Npb25fa2V5c1tjdXJyZW50X21r
aV9pbmRleF07Ci0KLSAgIC8qIGluaXRpYWxpemUga2V5IGxpbWl0IHRvIG1heGltdW0gdmFsdWUg
Ki8KLSNpZmRlZiBOT182NEJJVF9NQVRICitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3N0cmVhbV9p
bml0X2tleXMoc3J0cF9zdHJlYW1fY3R4X3QgKnNydHAsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgc3J0cF9tYXN0ZXJfa2V5X3QgKm1hc3Rlcl9rZXksCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdW5zaWduZWQgaW50IGN1cnJl
bnRfbWtpX2luZGV4KQogewotICAgdWludDY0X3QgdGVtcDsKLSAgIHRlbXAgPSBtYWtlNjQoVUlO
VF9NQVgsVUlOVF9NQVgpOwotICAgc3J0cF9rZXlfbGltaXRfc2V0KHNlc3Npb25fa2V5cy0+bGlt
aXQsIHRlbXApOwotfQorICAgIHNydHBfZXJyX3N0YXR1c190IHN0YXQ7CisgICAgc3J0cF9rZGZf
dCBrZGY7CisgICAgdWludDhfdCB0bXBfa2V5W01BWF9TUlRQX0tFWV9MRU5dOworICAgIGludCBr
ZGZfa2V5bGVuID0gMzAsIHJ0cF9rZXlsZW4sIHJ0Y3Bfa2V5bGVuOworICAgIGludCBydHBfYmFz
ZV9rZXlfbGVuLCBydHBfc2FsdF9sZW47CisgICAgaW50IHJ0Y3BfYmFzZV9rZXlfbGVuLCBydGNw
X3NhbHRfbGVuOworICAgIHNydHBfc2Vzc2lvbl9rZXlzX3QgKnNlc3Npb25fa2V5cyA9IE5VTEw7
CisgICAgdW5zaWduZWQgY2hhciAqa2V5ID0gbWFzdGVyX2tleS0+a2V5OworCisgICAgLyogSWYg
UlRQIG9yIFJUQ1AgaGF2ZSBhIGtleSBsZW5ndGggPiBBRVMtMTI4LCBhc3N1bWUgbWF0Y2hpbmcg
a2RmLiAqLworICAgIC8qIFRPRE86IGtkZiBhbGdvcml0aG0sIG1hc3RlciBrZXkgbGVuZ3RoLCBh
bmQgbWFzdGVyIHNhbHQgbGVuZ3RoIHNob3VsZAorICAgICAqIGJlIHBhcnQgb2Ygc3J0cF9wb2xp
Y3lfdC4KKyAgICAqLworICAgIHNlc3Npb25fa2V5cyA9ICZzcnRwLT5zZXNzaW9uX2tleXNbY3Vy
cmVudF9ta2lfaW5kZXhdOworCisvKiBpbml0aWFsaXplIGtleSBsaW1pdCB0byBtYXhpbXVtIHZh
bHVlICovCisjaWZkZWYgTk9fNjRCSVRfTUFUSAorICAgIHsKKyAgICAgICAgdWludDY0X3QgdGVt
cDsKKyAgICAgICAgdGVtcCA9IG1ha2U2NChVSU5UX01BWCwgVUlOVF9NQVgpOworICAgICAgICBz
cnRwX2tleV9saW1pdF9zZXQoc2Vzc2lvbl9rZXlzLT5saW1pdCwgdGVtcCk7CisgICAgfQogI2Vs
c2UKLSAgIHNydHBfa2V5X2xpbWl0X3NldChzZXNzaW9uX2tleXMtPmxpbWl0LCAweGZmZmZmZmZm
ZmZmZkxMKTsKKyAgICBzcnRwX2tleV9saW1pdF9zZXQoc2Vzc2lvbl9rZXlzLT5saW1pdCwgMHhm
ZmZmZmZmZmZmZmZMTCk7CiAjZW5kaWYKIAorICAgIGlmIChtYXN0ZXJfa2V5LT5ta2lfc2l6ZSAh
PSAwKSB7CisgICAgICAgIHNlc3Npb25fa2V5cy0+bWtpX2lkID0gc3J0cF9jcnlwdG9fYWxsb2Mo
bWFzdGVyX2tleS0+bWtpX3NpemUpOwogCi0gIGlmICggbWFzdGVyX2tleS0+bWtpX3NpemUgIT0g
MCApIHsKLSAgICAgIHNlc3Npb25fa2V5cy0+bWtpX2lkID0gc3J0cF9jcnlwdG9fYWxsb2MobWFz
dGVyX2tleS0+bWtpX3NpemUpOwotCi0gICAgICBpZiAoc2Vzc2lvbl9rZXlzLT5ta2lfaWQgPT0g
TlVMTCkgewotICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2luaXRfZmFpbDsKLSAgICAg
IH0KLSAgICAgIG1lbXNldChzZXNzaW9uX2tleXMtPm1raV9pZCwgMHgwLCBtYXN0ZXJfa2V5LT5t
a2lfc2l6ZSk7Ci0gICAgICBtZW1jcHkoc2Vzc2lvbl9rZXlzLT5ta2lfaWQsIG1hc3Rlcl9rZXkt
Pm1raV9pZCwgbWFzdGVyX2tleS0+bWtpX3NpemUpOwotICB9IGVsc2UgewotICAgICAgc2Vzc2lv
bl9rZXlzLT5ta2lfaWQgPSBOVUxMOwotICB9Ci0KLSAgc2Vzc2lvbl9rZXlzLT5ta2lfc2l6ZSA9
IG1hc3Rlcl9rZXktPm1raV9zaXplOwotCi0gIHJ0cF9rZXlsZW4gPSBzcnRwX2NpcGhlcl9nZXRf
a2V5X2xlbmd0aChzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXIpOwotICBydGNwX2tleWxlbiA9IHNy
dHBfY2lwaGVyX2dldF9rZXlfbGVuZ3RoKHNlc3Npb25fa2V5cy0+cnRjcF9jaXBoZXIpOwotICBy
dHBfYmFzZV9rZXlfbGVuID0gYmFzZV9rZXlfbGVuZ3RoKHNlc3Npb25fa2V5cy0+cnRwX2NpcGhl
ci0+dHlwZSwgcnRwX2tleWxlbik7Ci0gIHJ0cF9zYWx0X2xlbiA9IHJ0cF9rZXlsZW4gLSBydHBf
YmFzZV9rZXlfbGVuOwotCi0gIGlmIChydHBfa2V5bGVuID4ga2RmX2tleWxlbikgewotICAgIGtk
Zl9rZXlsZW4gPSA0NjsgIC8qIEFFUy1DVFIgbW9kZSBpcyBhbHdheXMgdXNlZCBmb3IgS0RGICov
Ci0gIH0KLQotICBpZiAocnRjcF9rZXlsZW4gPiBrZGZfa2V5bGVuKSB7Ci0gICAga2RmX2tleWxl
biA9IDQ2OyAgLyogQUVTLUNUUiBtb2RlIGlzIGFsd2F5cyB1c2VkIGZvciBLREYgKi8KLSAgfQot
Ci0gIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAic3J0cCBrZXkgbGVuOiAlZCIsIHJ0cF9rZXlsZW4p
OwotICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgInNydGNwIGtleSBsZW46ICVkIiwgcnRjcF9rZXls
ZW4pOwotICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgImJhc2Uga2V5IGxlbjogJWQiLCBydHBfYmFz
ZV9rZXlfbGVuKTsKLSAgZGVidWdfcHJpbnQobW9kX3NydHAsICJrZGYga2V5IGxlbjogJWQiLCBr
ZGZfa2V5bGVuKTsKLSAgZGVidWdfcHJpbnQobW9kX3NydHAsICJydHAgc2FsdCBsZW46ICVkIiwg
cnRwX3NhbHRfbGVuKTsKLQotICAvKiAKLSAgICogTWFrZSBzdXJlIHRoZSBrZXkgZ2l2ZW4gdG8g
dXMgaXMgJ3plcm8nIGFwcGVuZGVkLiAgR0NNCi0gICAqIG1vZGUgdXNlcyBhIHNob3J0ZXIgbWFz
dGVyIFNBTFQgKDk2IGJpdHMpLCBidXQgc3RpbGwgcmVsaWVzIG9uIAotICAgKiB0aGUgbGVnYWN5
IENUUiBtb2RlIEtERiwgd2hpY2ggdXNlcyBhIDExMiBiaXQgbWFzdGVyIFNBTFQuCi0gICAqLwot
ICBtZW1zZXQodG1wX2tleSwgMHgwLCBNQVhfU1JUUF9LRVlfTEVOKTsKLSAgbWVtY3B5KHRtcF9r
ZXksIGtleSwgKHJ0cF9iYXNlX2tleV9sZW4gKyBydHBfc2FsdF9sZW4pKTsKLQotICAvKiBpbml0
aWFsaXplIEtERiBzdGF0ZSAgICAgKi8KLSNpZiBkZWZpbmVkKE9QRU5TU0wpICYmIGRlZmluZWQo
T1BFTlNTTF9LREYpCi0gIHN0YXQgPSBzcnRwX2tkZl9pbml0KCZrZGYsIChjb25zdCB1aW50OF90
ICopdG1wX2tleSwgcnRwX2Jhc2Vfa2V5X2xlbiwgcnRwX3NhbHRfbGVuKTsgCi0jZWxzZQotICBz
dGF0ID0gc3J0cF9rZGZfaW5pdCgma2RmLCAoY29uc3QgdWludDhfdCAqKXRtcF9rZXksIGtkZl9r
ZXlsZW4pOwotI2VuZGlmCi0gIGlmIChzdGF0KSB7Ci0gICAgLyogemVyb2l6ZSB0ZW1wIGJ1ZmZl
ciAqLwotICAgIG9jdGV0X3N0cmluZ19zZXRfdG9femVybyh0bXBfa2V5LCBNQVhfU1JUUF9LRVlf
TEVOKTsKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2luaXRfZmFpbDsKLSAgfQotICAKLSAg
LyogZ2VuZXJhdGUgZW5jcnlwdGlvbiBrZXkgICovCi0gIHN0YXQgPSBzcnRwX2tkZl9nZW5lcmF0
ZSgma2RmLCBsYWJlbF9ydHBfZW5jcnlwdGlvbiwgCi0JCQkgICB0bXBfa2V5LCBydHBfYmFzZV9r
ZXlfbGVuKTsKLSAgaWYgKHN0YXQpIHsKLSAgICAvKiB6ZXJvaXplIHRlbXAgYnVmZmVyICovCi0g
ICAgb2N0ZXRfc3RyaW5nX3NldF90b196ZXJvKHRtcF9rZXksIE1BWF9TUlRQX0tFWV9MRU4pOwot
ICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfaW5pdF9mYWlsOwotICB9Ci0gIGRlYnVnX3ByaW50
KG1vZF9zcnRwLCAiY2lwaGVyIGtleTogJXMiLCAKLQkgICAgICBzcnRwX29jdGV0X3N0cmluZ19o
ZXhfc3RyaW5nKHRtcF9rZXksIHJ0cF9iYXNlX2tleV9sZW4pKTsKLQotICAvKiAKLSAgICogaWYg
dGhlIGNpcGhlciBpbiB0aGUgc3J0cCBjb250ZXh0IHVzZXMgYSBzYWx0LCB0aGVuIHdlIG5lZWQK
LSAgICogdG8gZ2VuZXJhdGUgdGhlIHNhbHQgdmFsdWUKLSAgICovCi0gIGlmIChydHBfc2FsdF9s
ZW4gPiAwKSB7Ci0gICAgZGVidWdfcHJpbnQobW9kX3NydHAsICJmb3VuZCBydHBfc2FsdF9sZW4g
PiAwLCBnZW5lcmF0aW5nIHNhbHQiLCBOVUxMKTsKLQotICAgIC8qIGdlbmVyYXRlIGVuY3J5cHRp
b24gc2FsdCwgcHV0IGFmdGVyIGVuY3J5cHRpb24ga2V5ICovCi0gICAgc3RhdCA9IHNydHBfa2Rm
X2dlbmVyYXRlKCZrZGYsIGxhYmVsX3J0cF9zYWx0LCAKLQkJCSAgICAgdG1wX2tleSArIHJ0cF9i
YXNlX2tleV9sZW4sIHJ0cF9zYWx0X2xlbik7Ci0gICAgaWYgKHN0YXQpIHsKLSAgICAgIC8qIHpl
cm9pemUgdGVtcCBidWZmZXIgKi8KLSAgICAgIG9jdGV0X3N0cmluZ19zZXRfdG9femVybyh0bXBf
a2V5LCBNQVhfU1JUUF9LRVlfTEVOKTsKLSAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfaW5p
dF9mYWlsOwotICAgIH0KLSAgICBtZW1jcHkoc2Vzc2lvbl9rZXlzLT5zYWx0LCB0bXBfa2V5ICsg
cnRwX2Jhc2Vfa2V5X2xlbiwgU1JUUF9BRUFEX1NBTFRfTEVOKTsKLSAgfQotICBpZiAocnRwX3Nh
bHRfbGVuID4gMCkgewotICAgIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAiY2lwaGVyIHNhbHQ6ICVz
IiwKLQkJc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZyh0bXBfa2V5ICsgcnRwX2Jhc2Vfa2V5
X2xlbiwgcnRwX3NhbHRfbGVuKSk7Ci0gIH0KLQotICAvKiBpbml0aWFsaXplIGNpcGhlciAqLwot
ICBzdGF0ID0gc3J0cF9jaXBoZXJfaW5pdChzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXIsIHRtcF9r
ZXkpOwotICBpZiAoc3RhdCkgewotICAgIC8qIHplcm9pemUgdGVtcCBidWZmZXIgKi8KLSAgICBv
Y3RldF9zdHJpbmdfc2V0X3RvX3plcm8odG1wX2tleSwgTUFYX1NSVFBfS0VZX0xFTik7Ci0gICAg
cmV0dXJuIHNydHBfZXJyX3N0YXR1c19pbml0X2ZhaWw7Ci0gIH0KLQotICBpZiAoc2Vzc2lvbl9r
ZXlzLT5ydHBfeHRuX2hkcl9jaXBoZXIpIHsKLSAgICAvKiBnZW5lcmF0ZSBleHRlbnNpb25zIGhl
YWRlciBlbmNyeXB0aW9uIGtleSAgKi8KLSAgICBpbnQgcnRwX3h0bl9oZHJfa2V5bGVuOwotICAg
IGludCBydHBfeHRuX2hkcl9iYXNlX2tleV9sZW47Ci0gICAgaW50IHJ0cF94dG5faGRyX3NhbHRf
bGVuOwotICAgIHNydHBfa2RmX3QgdG1wX2tkZjsKLSAgICBzcnRwX2tkZl90ICp4dG5faGRyX2tk
ZjsKLQotICAgIGlmIChzZXNzaW9uX2tleXMtPnJ0cF94dG5faGRyX2NpcGhlci0+dHlwZSAhPSBz
ZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXItPnR5cGUpIHsKLSAgICAgIC8qIFdpdGggR0NNIGNpcGhl
cnMsIHRoZSBoZWFkZXIgZXh0ZW5zaW9ucyBhcmUgc3RpbGwgZW5jcnlwdGVkIHVzaW5nIHRoZSBj
b3JyZXNwb25kaW5nIElDTSBjaXBoZXIuICovCi0gICAgICAvKiBTZWUgaHR0cHM6Ly90b29scy5p
ZXRmLm9yZy9odG1sL3JmYzc3MTQjc2VjdGlvbi04LjMgKi8KLSAgICAgIHVpbnQ4X3QgdG1wX3h0
bl9oZHJfa2V5W01BWF9TUlRQX0tFWV9MRU5dOwotICAgICAgcnRwX3h0bl9oZHJfa2V5bGVuID0g
c3J0cF9jaXBoZXJfZ2V0X2tleV9sZW5ndGgoc2Vzc2lvbl9rZXlzLT5ydHBfeHRuX2hkcl9jaXBo
ZXIpOwotICAgICAgcnRwX3h0bl9oZHJfYmFzZV9rZXlfbGVuID0gYmFzZV9rZXlfbGVuZ3RoKHNl
c3Npb25fa2V5cy0+cnRwX3h0bl9oZHJfY2lwaGVyLT50eXBlLAotICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJ0cF94dG5faGRyX2tleWxlbik7Ci0gICAg
ICBydHBfeHRuX2hkcl9zYWx0X2xlbiA9IHJ0cF94dG5faGRyX2tleWxlbiAtIHJ0cF94dG5faGRy
X2Jhc2Vfa2V5X2xlbjsKLSAgICAgIGlmIChydHBfeHRuX2hkcl9zYWx0X2xlbiA+IHJ0cF9zYWx0
X2xlbikgewotICAgICAgICBzd2l0Y2ggKHNlc3Npb25fa2V5cy0+cnRwX2NpcGhlci0+dHlwZS0+
aWQpIHsKLSAgICAgICAgY2FzZSBTUlRQX0FFU19HQ01fMTI4OgotICAgICAgICBjYXNlIFNSVFBf
QUVTX0dDTV8yNTY6Ci0gICAgICAgICAgLyogVGhlIHNob3J0ZXIgR0NNIHNhbHQgaXMgcGFkZGVk
IHRvIHRoZSByZXF1aXJlZCBJQ00gc2FsdCBsZW5ndGguICovCi0gICAgICAgICAgcnRwX3h0bl9o
ZHJfc2FsdF9sZW4gPSBydHBfc2FsdF9sZW47Ci0gICAgICAgICAgYnJlYWs7Ci0gICAgICAgIGRl
ZmF1bHQ6Ci0gICAgICAgICAgLyogemVyb2l6ZSB0ZW1wIGJ1ZmZlciAqLwotICAgICAgICAgIG9j
dGV0X3N0cmluZ19zZXRfdG9femVybyh0bXBfa2V5LCBNQVhfU1JUUF9LRVlfTEVOKTsKLSAgICAg
ICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJhbTsKKyAgICAgICAgaWYgKHNlc3Np
b25fa2V5cy0+bWtpX2lkID09IE5VTEwpIHsKKyAgICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9z
dGF0dXNfaW5pdF9mYWlsOwogICAgICAgICB9Ci0gICAgICB9Ci0gICAgICBtZW1zZXQodG1wX3h0
bl9oZHJfa2V5LCAweDAsIE1BWF9TUlRQX0tFWV9MRU4pOwotICAgICAgbWVtY3B5KHRtcF94dG5f
aGRyX2tleSwga2V5LCAocnRwX3h0bl9oZHJfYmFzZV9rZXlfbGVuICsgcnRwX3h0bl9oZHJfc2Fs
dF9sZW4pKTsKLSAgICAgIHh0bl9oZHJfa2RmID0gJnRtcF9rZGY7CisgICAgICAgIG1lbWNweShz
ZXNzaW9uX2tleXMtPm1raV9pZCwgbWFzdGVyX2tleS0+bWtpX2lkLCBtYXN0ZXJfa2V5LT5ta2lf
c2l6ZSk7CisgICAgfSBlbHNlIHsKKyAgICAgICAgc2Vzc2lvbl9rZXlzLT5ta2lfaWQgPSBOVUxM
OworICAgIH0KKworICAgIHNlc3Npb25fa2V5cy0+bWtpX3NpemUgPSBtYXN0ZXJfa2V5LT5ta2lf
c2l6ZTsKKworICAgIHJ0cF9rZXlsZW4gPSBzcnRwX2NpcGhlcl9nZXRfa2V5X2xlbmd0aChzZXNz
aW9uX2tleXMtPnJ0cF9jaXBoZXIpOworICAgIHJ0Y3Bfa2V5bGVuID0gc3J0cF9jaXBoZXJfZ2V0
X2tleV9sZW5ndGgoc2Vzc2lvbl9rZXlzLT5ydGNwX2NpcGhlcik7CisgICAgcnRwX2Jhc2Vfa2V5
X2xlbiA9CisgICAgICAgIGJhc2Vfa2V5X2xlbmd0aChzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXIt
PnR5cGUsIHJ0cF9rZXlsZW4pOworICAgIHJ0cF9zYWx0X2xlbiA9IHJ0cF9rZXlsZW4gLSBydHBf
YmFzZV9rZXlfbGVuOworCisgICAgaWYgKHJ0cF9rZXlsZW4gPiBrZGZfa2V5bGVuKSB7CisgICAg
ICAgIGtkZl9rZXlsZW4gPSA0NjsgLyogQUVTLUNUUiBtb2RlIGlzIGFsd2F5cyB1c2VkIGZvciBL
REYgKi8KKyAgICB9CisKKyAgICBpZiAocnRjcF9rZXlsZW4gPiBrZGZfa2V5bGVuKSB7CisgICAg
ICAgIGtkZl9rZXlsZW4gPSA0NjsgLyogQUVTLUNUUiBtb2RlIGlzIGFsd2F5cyB1c2VkIGZvciBL
REYgKi8KKyAgICB9CisKKyAgICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgInNydHAga2V5IGxlbjog
JWQiLCBydHBfa2V5bGVuKTsKKyAgICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgInNydGNwIGtleSBs
ZW46ICVkIiwgcnRjcF9rZXlsZW4pOworICAgIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAiYmFzZSBr
ZXkgbGVuOiAlZCIsIHJ0cF9iYXNlX2tleV9sZW4pOworICAgIGRlYnVnX3ByaW50KG1vZF9zcnRw
LCAia2RmIGtleSBsZW46ICVkIiwga2RmX2tleWxlbik7CisgICAgZGVidWdfcHJpbnQobW9kX3Ny
dHAsICJydHAgc2FsdCBsZW46ICVkIiwgcnRwX3NhbHRfbGVuKTsKIAotICAgICAgLyogaW5pdGlh
bGl6ZSBLREYgc3RhdGUgICAgICovCisgICAgLyoKKyAgICAgKiBNYWtlIHN1cmUgdGhlIGtleSBn
aXZlbiB0byB1cyBpcyAnemVybycgYXBwZW5kZWQuICBHQ00KKyAgICAgKiBtb2RlIHVzZXMgYSBz
aG9ydGVyIG1hc3RlciBTQUxUICg5NiBiaXRzKSwgYnV0IHN0aWxsIHJlbGllcyBvbgorICAgICAq
IHRoZSBsZWdhY3kgQ1RSIG1vZGUgS0RGLCB3aGljaCB1c2VzIGEgMTEyIGJpdCBtYXN0ZXIgU0FM
VC4KKyAgICAgKi8KKyAgICBtZW1zZXQodG1wX2tleSwgMHgwLCBNQVhfU1JUUF9LRVlfTEVOKTsK
KyAgICBtZW1jcHkodG1wX2tleSwga2V5LCAocnRwX2Jhc2Vfa2V5X2xlbiArIHJ0cF9zYWx0X2xl
bikpOworCisvKiBpbml0aWFsaXplIEtERiBzdGF0ZSAgICAgKi8KICNpZiBkZWZpbmVkKE9QRU5T
U0wpICYmIGRlZmluZWQoT1BFTlNTTF9LREYpCi0gICAgICBzdGF0ID0gc3J0cF9rZGZfaW5pdCh4
dG5faGRyX2tkZiwgKGNvbnN0IHVpbnQ4X3QgKil0bXBfeHRuX2hkcl9rZXksIHJ0cF94dG5faGRy
X2Jhc2Vfa2V5X2xlbiwgcnRwX3h0bl9oZHJfc2FsdF9sZW4pOworICAgIHN0YXQgPSBzcnRwX2tk
Zl9pbml0KCZrZGYsIChjb25zdCB1aW50OF90ICopdG1wX2tleSwgcnRwX2Jhc2Vfa2V5X2xlbiwK
KyAgICAgICAgICAgICAgICAgICAgICAgICBydHBfc2FsdF9sZW4pOwogI2Vsc2UKLSAgICAgIHN0
YXQgPSBzcnRwX2tkZl9pbml0KHh0bl9oZHJfa2RmLCAoY29uc3QgdWludDhfdCAqKXRtcF94dG5f
aGRyX2tleSwga2RmX2tleWxlbik7CisgICAgc3RhdCA9IHNydHBfa2RmX2luaXQoJmtkZiwgKGNv
bnN0IHVpbnQ4X3QgKil0bXBfa2V5LCBrZGZfa2V5bGVuKTsKICNlbmRpZgotICAgICAgb2N0ZXRf
c3RyaW5nX3NldF90b196ZXJvKHRtcF94dG5faGRyX2tleSwgTUFYX1NSVFBfS0VZX0xFTik7Ci0g
ICAgICBpZiAoc3RhdCkgeworICAgIGlmIChzdGF0KSB7CiAgICAgICAgIC8qIHplcm9pemUgdGVt
cCBidWZmZXIgKi8KICAgICAgICAgb2N0ZXRfc3RyaW5nX3NldF90b196ZXJvKHRtcF9rZXksIE1B
WF9TUlRQX0tFWV9MRU4pOwogICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2luaXRfZmFp
bDsKLSAgICAgIH0KLSAgICB9IGVsc2UgewotICAgICAgLyogUmV1c2UgbWFpbiBLREYuICovCi0g
ICAgICBydHBfeHRuX2hkcl9rZXlsZW4gPSBydHBfa2V5bGVuOwotICAgICAgcnRwX3h0bl9oZHJf
YmFzZV9rZXlfbGVuID0gcnRwX2Jhc2Vfa2V5X2xlbjsKLSAgICAgIHJ0cF94dG5faGRyX3NhbHRf
bGVuID0gcnRwX3NhbHRfbGVuOwotICAgICAgeHRuX2hkcl9rZGYgPSAma2RmOwogICAgIH0KIAot
ICAgIHN0YXQgPSBzcnRwX2tkZl9nZW5lcmF0ZSh4dG5faGRyX2tkZiwgbGFiZWxfcnRwX2hlYWRl
cl9lbmNyeXB0aW9uLAotICAgICAgICAgICB0bXBfa2V5LCBydHBfeHRuX2hkcl9iYXNlX2tleV9s
ZW4pOworICAgIC8qIGdlbmVyYXRlIGVuY3J5cHRpb24ga2V5ICAqLworICAgIHN0YXQgPSBzcnRw
X2tkZl9nZW5lcmF0ZSgma2RmLCBsYWJlbF9ydHBfZW5jcnlwdGlvbiwgdG1wX2tleSwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgcnRwX2Jhc2Vfa2V5X2xlbik7CiAgICAgaWYgKHN0YXQp
IHsKLSAgICAgIC8qIHplcm9pemUgdGVtcCBidWZmZXIgKi8KLSAgICAgIG9jdGV0X3N0cmluZ19z
ZXRfdG9femVybyh0bXBfa2V5LCBNQVhfU1JUUF9LRVlfTEVOKTsKLSAgICAgIHJldHVybiBzcnRw
X2Vycl9zdGF0dXNfaW5pdF9mYWlsOworICAgICAgICAvKiB6ZXJvaXplIHRlbXAgYnVmZmVyICov
CisgICAgICAgIG9jdGV0X3N0cmluZ19zZXRfdG9femVybyh0bXBfa2V5LCBNQVhfU1JUUF9LRVlf
TEVOKTsKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19pbml0X2ZhaWw7CiAgICAgfQot
ICAgIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAiZXh0ZW5zaW9ucyBjaXBoZXIga2V5OiAlcyIsCi0g
ICAgICAgICAgc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZyh0bXBfa2V5LCBydHBfeHRuX2hk
cl9iYXNlX2tleV9sZW4pKTsKKyAgICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgImNpcGhlciBrZXk6
ICVzIiwKKyAgICAgICAgICAgICAgICBzcnRwX29jdGV0X3N0cmluZ19oZXhfc3RyaW5nKHRtcF9r
ZXksIHJ0cF9iYXNlX2tleV9sZW4pKTsKIAogICAgIC8qCiAgICAgICogaWYgdGhlIGNpcGhlciBp
biB0aGUgc3J0cCBjb250ZXh0IHVzZXMgYSBzYWx0LCB0aGVuIHdlIG5lZWQKICAgICAgKiB0byBn
ZW5lcmF0ZSB0aGUgc2FsdCB2YWx1ZQogICAgICAqLwotICAgIGlmIChydHBfeHRuX2hkcl9zYWx0
X2xlbiA+IDApIHsKLSAgICAgIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAiZm91bmQgcnRwX3h0bl9o
ZHJfc2FsdF9sZW4gPiAwLCBnZW5lcmF0aW5nIHNhbHQiLCBOVUxMKTsKLQotICAgICAgLyogZ2Vu
ZXJhdGUgZW5jcnlwdGlvbiBzYWx0LCBwdXQgYWZ0ZXIgZW5jcnlwdGlvbiBrZXkgKi8KLSAgICAg
IHN0YXQgPSBzcnRwX2tkZl9nZW5lcmF0ZSh4dG5faGRyX2tkZiwgbGFiZWxfcnRwX2hlYWRlcl9z
YWx0LAotICAgICAgICAgICAgIHRtcF9rZXkgKyBydHBfeHRuX2hkcl9iYXNlX2tleV9sZW4sIHJ0
cF94dG5faGRyX3NhbHRfbGVuKTsKLSAgICAgIGlmIChzdGF0KSB7Ci0gICAgICAgIC8qIHplcm9p
emUgdGVtcCBidWZmZXIgKi8KLSAgICAgICAgb2N0ZXRfc3RyaW5nX3NldF90b196ZXJvKHRtcF9r
ZXksIE1BWF9TUlRQX0tFWV9MRU4pOwotICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2lu
aXRfZmFpbDsKLSAgICAgIH0KKyAgICBpZiAocnRwX3NhbHRfbGVuID4gMCkgeworICAgICAgICBk
ZWJ1Z19wcmludChtb2Rfc3J0cCwgImZvdW5kIHJ0cF9zYWx0X2xlbiA+IDAsIGdlbmVyYXRpbmcg
c2FsdCIsIE5VTEwpOworCisgICAgICAgIC8qIGdlbmVyYXRlIGVuY3J5cHRpb24gc2FsdCwgcHV0
IGFmdGVyIGVuY3J5cHRpb24ga2V5ICovCisgICAgICAgIHN0YXQgPSBzcnRwX2tkZl9nZW5lcmF0
ZSgma2RmLCBsYWJlbF9ydHBfc2FsdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHRtcF9rZXkgKyBydHBfYmFzZV9rZXlfbGVuLCBydHBfc2FsdF9sZW4pOworICAgICAgICBpZiAo
c3RhdCkgeworICAgICAgICAgICAgLyogemVyb2l6ZSB0ZW1wIGJ1ZmZlciAqLworICAgICAgICAg
ICAgb2N0ZXRfc3RyaW5nX3NldF90b196ZXJvKHRtcF9rZXksIE1BWF9TUlRQX0tFWV9MRU4pOwor
ICAgICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19pbml0X2ZhaWw7CisgICAgICAgIH0K
KyAgICAgICAgbWVtY3B5KHNlc3Npb25fa2V5cy0+c2FsdCwgdG1wX2tleSArIHJ0cF9iYXNlX2tl
eV9sZW4sCisgICAgICAgICAgICAgICBTUlRQX0FFQURfU0FMVF9MRU4pOwogICAgIH0KLSAgICBp
ZiAocnRwX3h0bl9oZHJfc2FsdF9sZW4gPiAwKSB7Ci0gICAgICBkZWJ1Z19wcmludChtb2Rfc3J0
cCwgImV4dGVuc2lvbnMgY2lwaGVyIHNhbHQ6ICVzIiwKLSAgICAgIHNydHBfb2N0ZXRfc3RyaW5n
X2hleF9zdHJpbmcodG1wX2tleSArIHJ0cF94dG5faGRyX2Jhc2Vfa2V5X2xlbiwgcnRwX3h0bl9o
ZHJfc2FsdF9sZW4pKTsKKyAgICBpZiAocnRwX3NhbHRfbGVuID4gMCkgeworICAgICAgICBkZWJ1
Z19wcmludChtb2Rfc3J0cCwgImNpcGhlciBzYWx0OiAlcyIsCisgICAgICAgICAgICAgICAgICAg
IHNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcodG1wX2tleSArIHJ0cF9iYXNlX2tleV9sZW4s
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcnRwX3Nh
bHRfbGVuKSk7CiAgICAgfQogCi0gICAgLyogaW5pdGlhbGl6ZSBleHRlbnNpb25zIGhlYWRlciBj
aXBoZXIgKi8KLSAgICBzdGF0ID0gc3J0cF9jaXBoZXJfaW5pdChzZXNzaW9uX2tleXMtPnJ0cF94
dG5faGRyX2NpcGhlciwgdG1wX2tleSk7CisgICAgLyogaW5pdGlhbGl6ZSBjaXBoZXIgKi8KKyAg
ICBzdGF0ID0gc3J0cF9jaXBoZXJfaW5pdChzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXIsIHRtcF9r
ZXkpOwogICAgIGlmIChzdGF0KSB7Ci0gICAgICAvKiB6ZXJvaXplIHRlbXAgYnVmZmVyICovCi0g
ICAgICBvY3RldF9zdHJpbmdfc2V0X3RvX3plcm8odG1wX2tleSwgTUFYX1NSVFBfS0VZX0xFTik7
Ci0gICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2luaXRfZmFpbDsKLSAgICB9Ci0KLSAgICBp
ZiAoeHRuX2hkcl9rZGYgIT0gJmtkZikgewotICAgICAgLyogcmVsZWFzZSBtZW1vcnkgZm9yIGN1
c3RvbSBoZWFkZXIgZXh0ZW5zaW9uIGVuY3J5cHRpb24ga2RmICovCi0gICAgICBzdGF0ID0gc3J0
cF9rZGZfY2xlYXIoeHRuX2hkcl9rZGYpOwotICAgICAgaWYgKHN0YXQpIHsKICAgICAgICAgLyog
emVyb2l6ZSB0ZW1wIGJ1ZmZlciAqLwogICAgICAgICBvY3RldF9zdHJpbmdfc2V0X3RvX3plcm8o
dG1wX2tleSwgTUFYX1NSVFBfS0VZX0xFTik7CiAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0
dXNfaW5pdF9mYWlsOwotICAgICAgfQogICAgIH0KLSAgfQotCi0gIC8qIGdlbmVyYXRlIGF1dGhl
bnRpY2F0aW9uIGtleSAqLwotICBzdGF0ID0gc3J0cF9rZGZfZ2VuZXJhdGUoJmtkZiwgbGFiZWxf
cnRwX21zZ19hdXRoLAotCQkJICAgdG1wX2tleSwgc3J0cF9hdXRoX2dldF9rZXlfbGVuZ3RoKHNl
c3Npb25fa2V5cy0+cnRwX2F1dGgpKTsKLSAgaWYgKHN0YXQpIHsKLSAgICAvKiB6ZXJvaXplIHRl
bXAgYnVmZmVyICovCi0gICAgb2N0ZXRfc3RyaW5nX3NldF90b196ZXJvKHRtcF9rZXksIE1BWF9T
UlRQX0tFWV9MRU4pOwotICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfaW5pdF9mYWlsOwotICB9
Ci0gIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAiYXV0aCBrZXk6ICAgJXMiLAotCSAgICAgIHNydHBf
b2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcodG1wX2tleSwgCi0JCQkJICAgICAgc3J0cF9hdXRoX2dl
dF9rZXlfbGVuZ3RoKHNlc3Npb25fa2V5cy0+cnRwX2F1dGgpKSk7IAotCi0gIC8qIGluaXRpYWxp
emUgYXV0aCBmdW5jdGlvbiAqLwotICBzdGF0ID0gc3J0cF9hdXRoX2luaXQoc2Vzc2lvbl9rZXlz
LT5ydHBfYXV0aCwgdG1wX2tleSk7Ci0gIGlmIChzdGF0KSB7Ci0gICAgLyogemVyb2l6ZSB0ZW1w
IGJ1ZmZlciAqLwotICAgIG9jdGV0X3N0cmluZ19zZXRfdG9femVybyh0bXBfa2V5LCBNQVhfU1JU
UF9LRVlfTEVOKTsKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2luaXRfZmFpbDsKLSAgfQot
Ci0gIC8qCi0gICAqIC4uLm5vdyBpbml0aWFsaXplIFNSVENQIGtleXMKLSAgICovCi0KLSAgcnRj
cF9iYXNlX2tleV9sZW4gPSBiYXNlX2tleV9sZW5ndGgoc2Vzc2lvbl9rZXlzLT5ydGNwX2NpcGhl
ci0+dHlwZSwgcnRjcF9rZXlsZW4pOwotICBydGNwX3NhbHRfbGVuID0gcnRjcF9rZXlsZW4gLSBy
dGNwX2Jhc2Vfa2V5X2xlbjsKLSAgZGVidWdfcHJpbnQobW9kX3NydHAsICJydGNwIHNhbHQgbGVu
OiAlZCIsIHJ0Y3Bfc2FsdF9sZW4pOwotICAKLSAgLyogZ2VuZXJhdGUgZW5jcnlwdGlvbiBrZXkg
ICovCi0gIHN0YXQgPSBzcnRwX2tkZl9nZW5lcmF0ZSgma2RmLCBsYWJlbF9ydGNwX2VuY3J5cHRp
b24sIAotCQkJICAgdG1wX2tleSwgcnRjcF9iYXNlX2tleV9sZW4pOwotICBpZiAoc3RhdCkgewot
ICAgIC8qIHplcm9pemUgdGVtcCBidWZmZXIgKi8KLSAgICBvY3RldF9zdHJpbmdfc2V0X3RvX3pl
cm8odG1wX2tleSwgTUFYX1NSVFBfS0VZX0xFTik7Ci0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1
c19pbml0X2ZhaWw7Ci0gIH0KLQotICAvKiAKLSAgICogaWYgdGhlIGNpcGhlciBpbiB0aGUgc3J0
cCBjb250ZXh0IHVzZXMgYSBzYWx0LCB0aGVuIHdlIG5lZWQKLSAgICogdG8gZ2VuZXJhdGUgdGhl
IHNhbHQgdmFsdWUKLSAgICovCi0gIGlmIChydGNwX3NhbHRfbGVuID4gMCkgewotICAgIGRlYnVn
X3ByaW50KG1vZF9zcnRwLCAiZm91bmQgcnRjcF9zYWx0X2xlbiA+IDAsIGdlbmVyYXRpbmcgcnRj
cCBzYWx0IiwKLQkJTlVMTCk7Ci0KLSAgICAvKiBnZW5lcmF0ZSBlbmNyeXB0aW9uIHNhbHQsIHB1
dCBhZnRlciBlbmNyeXB0aW9uIGtleSAqLwotICAgIHN0YXQgPSBzcnRwX2tkZl9nZW5lcmF0ZSgm
a2RmLCBsYWJlbF9ydGNwX3NhbHQsIAotCQkJICAgICB0bXBfa2V5ICsgcnRjcF9iYXNlX2tleV9s
ZW4sIHJ0Y3Bfc2FsdF9sZW4pOwotICAgIGlmIChzdGF0KSB7Ci0gICAgICAvKiB6ZXJvaXplIHRl
bXAgYnVmZmVyICovCi0gICAgICBvY3RldF9zdHJpbmdfc2V0X3RvX3plcm8odG1wX2tleSwgTUFY
X1NSVFBfS0VZX0xFTik7Ci0gICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2luaXRfZmFpbDsK
LSAgICB9Ci0gICAgbWVtY3B5KHNlc3Npb25fa2V5cy0+Y19zYWx0LCB0bXBfa2V5ICsgcnRjcF9i
YXNlX2tleV9sZW4sIFNSVFBfQUVBRF9TQUxUX0xFTik7Ci0gIH0KLSAgZGVidWdfcHJpbnQobW9k
X3NydHAsICJydGNwIGNpcGhlciBrZXk6ICVzIiwgCi0JICAgICAgc3J0cF9vY3RldF9zdHJpbmdf
aGV4X3N0cmluZyh0bXBfa2V5LCBydGNwX2Jhc2Vfa2V5X2xlbikpOyAgCi0gIGlmIChydGNwX3Nh
bHRfbGVuID4gMCkgewotICAgIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAicnRjcCBjaXBoZXIgc2Fs
dDogJXMiLAotCQlzcnRwX29jdGV0X3N0cmluZ19oZXhfc3RyaW5nKHRtcF9rZXkgKyBydGNwX2Jh
c2Vfa2V5X2xlbiwgcnRjcF9zYWx0X2xlbikpOwotICB9Ci0KLSAgLyogaW5pdGlhbGl6ZSBjaXBo
ZXIgKi8KLSAgc3RhdCA9IHNydHBfY2lwaGVyX2luaXQoc2Vzc2lvbl9rZXlzLT5ydGNwX2NpcGhl
ciwgdG1wX2tleSk7Ci0gIGlmIChzdGF0KSB7Ci0gICAgLyogemVyb2l6ZSB0ZW1wIGJ1ZmZlciAq
LwotICAgIG9jdGV0X3N0cmluZ19zZXRfdG9femVybyh0bXBfa2V5LCBNQVhfU1JUUF9LRVlfTEVO
KTsKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2luaXRfZmFpbDsKLSAgfQotCi0gIC8qIGdl
bmVyYXRlIGF1dGhlbnRpY2F0aW9uIGtleSAqLwotICBzdGF0ID0gc3J0cF9rZGZfZ2VuZXJhdGUo
JmtkZiwgbGFiZWxfcnRjcF9tc2dfYXV0aCwKLQkJCSAgIHRtcF9rZXksIHNydHBfYXV0aF9nZXRf
a2V5X2xlbmd0aChzZXNzaW9uX2tleXMtPnJ0Y3BfYXV0aCkpOwotICBpZiAoc3RhdCkgewotICAg
IC8qIHplcm9pemUgdGVtcCBidWZmZXIgKi8KLSAgICBvY3RldF9zdHJpbmdfc2V0X3RvX3plcm8o
dG1wX2tleSwgTUFYX1NSVFBfS0VZX0xFTik7Ci0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19p
bml0X2ZhaWw7Ci0gIH0KLQotICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgInJ0Y3AgYXV0aCBrZXk6
ICAgJXMiLAotCSAgICAgIHNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcodG1wX2tleSwgCi0J
CSAgICAgc3J0cF9hdXRoX2dldF9rZXlfbGVuZ3RoKHNlc3Npb25fa2V5cy0+cnRjcF9hdXRoKSkp
OyAKLQotICAvKiBpbml0aWFsaXplIGF1dGggZnVuY3Rpb24gKi8KLSAgc3RhdCA9IHNydHBfYXV0
aF9pbml0KHNlc3Npb25fa2V5cy0+cnRjcF9hdXRoLCB0bXBfa2V5KTsKLSAgaWYgKHN0YXQpIHsK
LSAgICAvKiB6ZXJvaXplIHRlbXAgYnVmZmVyICovCi0gICAgb2N0ZXRfc3RyaW5nX3NldF90b196
ZXJvKHRtcF9rZXksIE1BWF9TUlRQX0tFWV9MRU4pOwotICAgIHJldHVybiBzcnRwX2Vycl9zdGF0
dXNfaW5pdF9mYWlsOwotICB9CiAKLSAgLyogY2xlYXIgbWVtb3J5IHRoZW4gcmV0dXJuICovCi0g
IHN0YXQgPSBzcnRwX2tkZl9jbGVhcigma2RmKTsKLSAgb2N0ZXRfc3RyaW5nX3NldF90b196ZXJv
KHRtcF9rZXksIE1BWF9TUlRQX0tFWV9MRU4pOwotICBpZiAoc3RhdCkKLSAgICByZXR1cm4gc3J0
cF9lcnJfc3RhdHVzX2luaXRfZmFpbDsKKyAgICBpZiAoc2Vzc2lvbl9rZXlzLT5ydHBfeHRuX2hk
cl9jaXBoZXIpIHsKKyAgICAgICAgLyogZ2VuZXJhdGUgZXh0ZW5zaW9ucyBoZWFkZXIgZW5jcnlw
dGlvbiBrZXkgICovCisgICAgICAgIGludCBydHBfeHRuX2hkcl9rZXlsZW47CisgICAgICAgIGlu
dCBydHBfeHRuX2hkcl9iYXNlX2tleV9sZW47CisgICAgICAgIGludCBydHBfeHRuX2hkcl9zYWx0
X2xlbjsKKyAgICAgICAgc3J0cF9rZGZfdCB0bXBfa2RmOworICAgICAgICBzcnRwX2tkZl90ICp4
dG5faGRyX2tkZjsKKworICAgICAgICBpZiAoc2Vzc2lvbl9rZXlzLT5ydHBfeHRuX2hkcl9jaXBo
ZXItPnR5cGUgIT0KKyAgICAgICAgICAgIHNlc3Npb25fa2V5cy0+cnRwX2NpcGhlci0+dHlwZSkg
eworICAgICAgICAgICAgLyoKKyAgICAgICAgICAgICAqIFdpdGggR0NNIGNpcGhlcnMsIHRoZSBo
ZWFkZXIgZXh0ZW5zaW9ucyBhcmUgc3RpbGwgZW5jcnlwdGVkIHVzaW5nCisgICAgICAgICAgICAg
KiB0aGUgY29ycmVzcG9uZGluZyBJQ00gY2lwaGVyLgorICAgICAgICAgICAgICogU2VlIGh0dHBz
Oi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmM3NzE0I3NlY3Rpb24tOC4zCisgICAgICAgICAgICAg
Ki8KKyAgICAgICAgICAgIHVpbnQ4X3QgdG1wX3h0bl9oZHJfa2V5W01BWF9TUlRQX0tFWV9MRU5d
OworICAgICAgICAgICAgcnRwX3h0bl9oZHJfa2V5bGVuID0KKyAgICAgICAgICAgICAgICBzcnRw
X2NpcGhlcl9nZXRfa2V5X2xlbmd0aChzZXNzaW9uX2tleXMtPnJ0cF94dG5faGRyX2NpcGhlcik7
CisgICAgICAgICAgICBydHBfeHRuX2hkcl9iYXNlX2tleV9sZW4gPSBiYXNlX2tleV9sZW5ndGgo
CisgICAgICAgICAgICAgICAgc2Vzc2lvbl9rZXlzLT5ydHBfeHRuX2hkcl9jaXBoZXItPnR5cGUs
IHJ0cF94dG5faGRyX2tleWxlbik7CisgICAgICAgICAgICBydHBfeHRuX2hkcl9zYWx0X2xlbiA9
CisgICAgICAgICAgICAgICAgcnRwX3h0bl9oZHJfa2V5bGVuIC0gcnRwX3h0bl9oZHJfYmFzZV9r
ZXlfbGVuOworICAgICAgICAgICAgaWYgKHJ0cF94dG5faGRyX3NhbHRfbGVuID4gcnRwX3NhbHRf
bGVuKSB7CisgICAgICAgICAgICAgICAgc3dpdGNoIChzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXIt
PnR5cGUtPmlkKSB7CisgICAgICAgICAgICAgICAgY2FzZSBTUlRQX0FFU19HQ01fMTI4OgorICAg
ICAgICAgICAgICAgIGNhc2UgU1JUUF9BRVNfR0NNXzI1NjoKKyAgICAgICAgICAgICAgICAgICAg
LyoKKyAgICAgICAgICAgICAgICAgICAgICogVGhlIHNob3J0ZXIgR0NNIHNhbHQgaXMgcGFkZGVk
IHRvIHRoZSByZXF1aXJlZCBJQ00gc2FsdAorICAgICAgICAgICAgICAgICAgICAgKiBsZW5ndGgu
CisgICAgICAgICAgICAgICAgICAgICAqLworICAgICAgICAgICAgICAgICAgICBydHBfeHRuX2hk
cl9zYWx0X2xlbiA9IHJ0cF9zYWx0X2xlbjsKKyAgICAgICAgICAgICAgICAgICAgYnJlYWs7Cisg
ICAgICAgICAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgICAgICAgICAgLyogemVyb2l6ZSB0
ZW1wIGJ1ZmZlciAqLworICAgICAgICAgICAgICAgICAgICBvY3RldF9zdHJpbmdfc2V0X3RvX3pl
cm8odG1wX2tleSwgTUFYX1NSVFBfS0VZX0xFTik7CisgICAgICAgICAgICAgICAgICAgIHJldHVy
biBzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAg
ICAgIH0KKyAgICAgICAgICAgIG1lbXNldCh0bXBfeHRuX2hkcl9rZXksIDB4MCwgTUFYX1NSVFBf
S0VZX0xFTik7CisgICAgICAgICAgICBtZW1jcHkodG1wX3h0bl9oZHJfa2V5LCBrZXksCisgICAg
ICAgICAgICAgICAgICAgKHJ0cF94dG5faGRyX2Jhc2Vfa2V5X2xlbiArIHJ0cF94dG5faGRyX3Nh
bHRfbGVuKSk7CisgICAgICAgICAgICB4dG5faGRyX2tkZiA9ICZ0bXBfa2RmOwogCi0gIHJldHVy
biBzcnRwX2Vycl9zdGF0dXNfb2s7Ci19CisvKiBpbml0aWFsaXplIEtERiBzdGF0ZSAqLworI2lm
IGRlZmluZWQoT1BFTlNTTCkgJiYgZGVmaW5lZChPUEVOU1NMX0tERikKKyAgICAgICAgICAgIHN0
YXQgPQorICAgICAgICAgICAgICAgIHNydHBfa2RmX2luaXQoeHRuX2hkcl9rZGYsIChjb25zdCB1
aW50OF90ICopdG1wX3h0bl9oZHJfa2V5LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
cnRwX3h0bl9oZHJfYmFzZV9rZXlfbGVuLCBydHBfeHRuX2hkcl9zYWx0X2xlbik7CisjZWxzZQor
ICAgICAgICAgICAgc3RhdCA9IHNydHBfa2RmX2luaXQoeHRuX2hkcl9rZGYsIChjb25zdCB1aW50
OF90ICopdG1wX3h0bl9oZHJfa2V5LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
a2RmX2tleWxlbik7CisjZW5kaWYKKyAgICAgICAgICAgIG9jdGV0X3N0cmluZ19zZXRfdG9femVy
byh0bXBfeHRuX2hkcl9rZXksIE1BWF9TUlRQX0tFWV9MRU4pOworICAgICAgICAgICAgaWYgKHN0
YXQpIHsKKyAgICAgICAgICAgICAgICAvKiB6ZXJvaXplIHRlbXAgYnVmZmVyICovCisgICAgICAg
ICAgICAgICAgb2N0ZXRfc3RyaW5nX3NldF90b196ZXJvKHRtcF9rZXksIE1BWF9TUlRQX0tFWV9M
RU4pOworICAgICAgICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfaW5pdF9mYWlsOwor
ICAgICAgICAgICAgfQorICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgLyogUmV1c2UgbWFp
biBLREYuICovCisgICAgICAgICAgICBydHBfeHRuX2hkcl9rZXlsZW4gPSBydHBfa2V5bGVuOwor
ICAgICAgICAgICAgcnRwX3h0bl9oZHJfYmFzZV9rZXlfbGVuID0gcnRwX2Jhc2Vfa2V5X2xlbjsK
KyAgICAgICAgICAgIHJ0cF94dG5faGRyX3NhbHRfbGVuID0gcnRwX3NhbHRfbGVuOworICAgICAg
ICAgICAgeHRuX2hkcl9rZGYgPSAma2RmOworICAgICAgICB9CiAKLXNydHBfZXJyX3N0YXR1c190
Ci1zcnRwX3N0cmVhbV9pbml0KHNydHBfc3RyZWFtX2N0eF90ICpzcnRwLCAKLQkJICBjb25zdCBz
cnRwX3BvbGljeV90ICpwKSB7Ci0gIHNydHBfZXJyX3N0YXR1c190IGVycjsKKyAgICAgICAgc3Rh
dCA9IHNydHBfa2RmX2dlbmVyYXRlKHh0bl9oZHJfa2RmLCBsYWJlbF9ydHBfaGVhZGVyX2VuY3J5
cHRpb24sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0bXBfa2V5LCBydHBfeHRu
X2hkcl9iYXNlX2tleV9sZW4pOworICAgICAgICBpZiAoc3RhdCkgeworICAgICAgICAgICAgLyog
emVyb2l6ZSB0ZW1wIGJ1ZmZlciAqLworICAgICAgICAgICAgb2N0ZXRfc3RyaW5nX3NldF90b196
ZXJvKHRtcF9rZXksIE1BWF9TUlRQX0tFWV9MRU4pOworICAgICAgICAgICAgcmV0dXJuIHNydHBf
ZXJyX3N0YXR1c19pbml0X2ZhaWw7CisgICAgICAgIH0KKyAgICAgICAgZGVidWdfcHJpbnQoCisg
ICAgICAgICAgICBtb2Rfc3J0cCwgImV4dGVuc2lvbnMgY2lwaGVyIGtleTogJXMiLAorICAgICAg
ICAgICAgc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZyh0bXBfa2V5LCBydHBfeHRuX2hkcl9i
YXNlX2tleV9sZW4pKTsKIAotICAgZGVidWdfcHJpbnQobW9kX3NydHAsICJpbml0aWFsaXppbmcg
c3RyZWFtIChTU1JDOiAweCUwOHgpIiwgCi0JICAgICAgIHAtPnNzcmMudmFsdWUpOworICAgICAg
ICAvKgorICAgICAgICAgKiBpZiB0aGUgY2lwaGVyIGluIHRoZSBzcnRwIGNvbnRleHQgdXNlcyBh
IHNhbHQsIHRoZW4gd2UgbmVlZAorICAgICAgICAgKiB0byBnZW5lcmF0ZSB0aGUgc2FsdCB2YWx1
ZQorICAgICAgICAgKi8KKyAgICAgICAgaWYgKHJ0cF94dG5faGRyX3NhbHRfbGVuID4gMCkgewor
ICAgICAgICAgICAgZGVidWdfcHJpbnQobW9kX3NydHAsCisgICAgICAgICAgICAgICAgICAgICAg
ICAiZm91bmQgcnRwX3h0bl9oZHJfc2FsdF9sZW4gPiAwLCBnZW5lcmF0aW5nIHNhbHQiLAorICAg
ICAgICAgICAgICAgICAgICAgICAgTlVMTCk7CisKKyAgICAgICAgICAgIC8qIGdlbmVyYXRlIGVu
Y3J5cHRpb24gc2FsdCwgcHV0IGFmdGVyIGVuY3J5cHRpb24ga2V5ICovCisgICAgICAgICAgICBz
dGF0ID0gc3J0cF9rZGZfZ2VuZXJhdGUoeHRuX2hkcl9rZGYsIGxhYmVsX3J0cF9oZWFkZXJfc2Fs
dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0bXBfa2V5ICsgcnRwX3h0
bl9oZHJfYmFzZV9rZXlfbGVuLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHJ0cF94dG5faGRyX3NhbHRfbGVuKTsKKyAgICAgICAgICAgIGlmIChzdGF0KSB7CisgICAgICAg
ICAgICAgICAgLyogemVyb2l6ZSB0ZW1wIGJ1ZmZlciAqLworICAgICAgICAgICAgICAgIG9jdGV0
X3N0cmluZ19zZXRfdG9femVybyh0bXBfa2V5LCBNQVhfU1JUUF9LRVlfTEVOKTsKKyAgICAgICAg
ICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2luaXRfZmFpbDsKKyAgICAgICAgICAgIH0K
KyAgICAgICAgfQorICAgICAgICBpZiAocnRwX3h0bl9oZHJfc2FsdF9sZW4gPiAwKSB7CisgICAg
ICAgICAgICBkZWJ1Z19wcmludCgKKyAgICAgICAgICAgICAgICBtb2Rfc3J0cCwgImV4dGVuc2lv
bnMgY2lwaGVyIHNhbHQ6ICVzIiwKKyAgICAgICAgICAgICAgICBzcnRwX29jdGV0X3N0cmluZ19o
ZXhfc3RyaW5nKHRtcF9rZXkgKyBydHBfeHRuX2hkcl9iYXNlX2tleV9sZW4sCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBydHBfeHRuX2hkcl9zYWx0X2xlbikp
OworICAgICAgICB9CiAKLSAgIC8qIGluaXRpYWxpemUgcmVwbGF5IGRhdGFiYXNlICovCi0gICAv
KiB3aW5kb3cgc2l6ZSBNVVNUIGJlIGF0IGxlYXN0IDY0LiAgTUFZIGJlIGxhcmdlci4gIFZhbHVl
cyBtb3JlIHRoYW4KLSAgICAqIDJeMTUgYXJlbid0IG1lYW5pbmdmdWwgZHVlIHRvIGhvdyBleHRl
bmRlZCBzZXF1ZW5jZSBudW1iZXJzIGFyZQotICAgICogY2FsY3VsYXRlZC4gICBMZXQgYSB3aW5k
b3cgc2l6ZSBvZiAwIGltcGx5IHRoZSBkZWZhdWx0IHZhbHVlLiAqLworICAgICAgICAvKiBpbml0
aWFsaXplIGV4dGVuc2lvbnMgaGVhZGVyIGNpcGhlciAqLworICAgICAgICBzdGF0ID0gc3J0cF9j
aXBoZXJfaW5pdChzZXNzaW9uX2tleXMtPnJ0cF94dG5faGRyX2NpcGhlciwgdG1wX2tleSk7Cisg
ICAgICAgIGlmIChzdGF0KSB7CisgICAgICAgICAgICAvKiB6ZXJvaXplIHRlbXAgYnVmZmVyICov
CisgICAgICAgICAgICBvY3RldF9zdHJpbmdfc2V0X3RvX3plcm8odG1wX2tleSwgTUFYX1NSVFBf
S0VZX0xFTik7CisgICAgICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2luaXRfZmFpbDsK
KyAgICAgICAgfQogCi0gICBpZiAocC0+d2luZG93X3NpemUgIT0gMCAmJiAocC0+d2luZG93X3Np
emUgPCA2NCB8fCBwLT53aW5kb3dfc2l6ZSA+PSAweDgwMDApKQotICAgICByZXR1cm4gc3J0cF9l
cnJfc3RhdHVzX2JhZF9wYXJhbTsKKyAgICAgICAgaWYgKHh0bl9oZHJfa2RmICE9ICZrZGYpIHsK
KyAgICAgICAgICAgIC8qIHJlbGVhc2UgbWVtb3J5IGZvciBjdXN0b20gaGVhZGVyIGV4dGVuc2lv
biBlbmNyeXB0aW9uIGtkZiAqLworICAgICAgICAgICAgc3RhdCA9IHNydHBfa2RmX2NsZWFyKHh0
bl9oZHJfa2RmKTsKKyAgICAgICAgICAgIGlmIChzdGF0KSB7CisgICAgICAgICAgICAgICAgLyog
emVyb2l6ZSB0ZW1wIGJ1ZmZlciAqLworICAgICAgICAgICAgICAgIG9jdGV0X3N0cmluZ19zZXRf
dG9femVybyh0bXBfa2V5LCBNQVhfU1JUUF9LRVlfTEVOKTsKKyAgICAgICAgICAgICAgICByZXR1
cm4gc3J0cF9lcnJfc3RhdHVzX2luaXRfZmFpbDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQor
ICAgIH0KIAotICAgaWYgKHAtPndpbmRvd19zaXplICE9IDApCi0gICAgIGVyciA9IHNydHBfcmRi
eF9pbml0KCZzcnRwLT5ydHBfcmRieCwgcC0+d2luZG93X3NpemUpOwotICAgZWxzZQotICAgICBl
cnIgPSBzcnRwX3JkYnhfaW5pdCgmc3J0cC0+cnRwX3JkYngsIDEyOCk7Ci0gICBpZiAoZXJyKSBy
ZXR1cm4gZXJyOworICAgIC8qIGdlbmVyYXRlIGF1dGhlbnRpY2F0aW9uIGtleSAqLworICAgIHN0
YXQgPSBzcnRwX2tkZl9nZW5lcmF0ZSgma2RmLCBsYWJlbF9ydHBfbXNnX2F1dGgsIHRtcF9rZXks
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfYXV0aF9nZXRfa2V5X2xlbmd0aChz
ZXNzaW9uX2tleXMtPnJ0cF9hdXRoKSk7CisgICAgaWYgKHN0YXQpIHsKKyAgICAgICAgLyogemVy
b2l6ZSB0ZW1wIGJ1ZmZlciAqLworICAgICAgICBvY3RldF9zdHJpbmdfc2V0X3RvX3plcm8odG1w
X2tleSwgTUFYX1NSVFBfS0VZX0xFTik7CisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNf
aW5pdF9mYWlsOworICAgIH0KKyAgICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgImF1dGgga2V5OiAg
ICVzIiwKKyAgICAgICAgICAgICAgICBzcnRwX29jdGV0X3N0cmluZ19oZXhfc3RyaW5nKAorICAg
ICAgICAgICAgICAgICAgICB0bXBfa2V5LCBzcnRwX2F1dGhfZ2V0X2tleV9sZW5ndGgoc2Vzc2lv
bl9rZXlzLT5ydHBfYXV0aCkpKTsKIAotICAgLyogc2V0IHRoZSBTU1JDIHZhbHVlICovCi0gICBz
cnRwLT5zc3JjID0gaHRvbmwocC0+c3NyYy52YWx1ZSk7CisgICAgLyogaW5pdGlhbGl6ZSBhdXRo
IGZ1bmN0aW9uICovCisgICAgc3RhdCA9IHNydHBfYXV0aF9pbml0KHNlc3Npb25fa2V5cy0+cnRw
X2F1dGgsIHRtcF9rZXkpOworICAgIGlmIChzdGF0KSB7CisgICAgICAgIC8qIHplcm9pemUgdGVt
cCBidWZmZXIgKi8KKyAgICAgICAgb2N0ZXRfc3RyaW5nX3NldF90b196ZXJvKHRtcF9rZXksIE1B
WF9TUlRQX0tFWV9MRU4pOworICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2luaXRfZmFp
bDsKKyAgICB9CiAKLSAgIC8qIHJlc2V0IHBlbmRpbmcgUk9DICovCi0gICBzcnRwLT5wZW5kaW5n
X3JvYyA9IDA7CisgICAgLyoKKyAgICAgKiAuLi5ub3cgaW5pdGlhbGl6ZSBTUlRDUCBrZXlzCisg
ICAgICovCiAKLSAgIC8qIHNldCB0aGUgc2VjdXJpdHkgc2VydmljZSBmbGFncyAqLwotICAgc3J0
cC0+cnRwX3NlcnZpY2VzICA9IHAtPnJ0cC5zZWNfc2VydjsKLSAgIHNydHAtPnJ0Y3Bfc2Vydmlj
ZXMgPSBwLT5ydGNwLnNlY19zZXJ2OworICAgIHJ0Y3BfYmFzZV9rZXlfbGVuID0KKyAgICAgICAg
YmFzZV9rZXlfbGVuZ3RoKHNlc3Npb25fa2V5cy0+cnRjcF9jaXBoZXItPnR5cGUsIHJ0Y3Bfa2V5
bGVuKTsKKyAgICBydGNwX3NhbHRfbGVuID0gcnRjcF9rZXlsZW4gLSBydGNwX2Jhc2Vfa2V5X2xl
bjsKKyAgICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgInJ0Y3Agc2FsdCBsZW46ICVkIiwgcnRjcF9z
YWx0X2xlbik7CiAKLSAgIC8qCi0gICAgKiBzZXQgZGlyZWN0aW9uIHRvIHVua25vd24gLSB0aGlz
IGZsYWcgZ2V0cyBjaGVja2VkIGluIHNydHBfcHJvdGVjdCgpLAotICAgICogc3J0cF91bnByb3Rl
Y3QoKSwgc3J0cF9wcm90ZWN0X3J0Y3AoKSwgYW5kIHNydHBfdW5wcm90ZWN0X3J0Y3AoKSwgYW5k
IAotICAgICogZ2V0cyBzZXQgYXBwcm9wcmlhdGVseSBpZiBpdCBpcyBzZXQgdG8gdW5rbm93bi4K
LSAgICAqLwotICAgc3J0cC0+ZGlyZWN0aW9uID0gZGlyX3Vua25vd247Ci0KLSAgIC8qIGluaXRp
YWxpemUgU1JUQ1AgcmVwbGF5IGRhdGFiYXNlICovCi0gICBzcnRwX3JkYl9pbml0KCZzcnRwLT5y
dGNwX3JkYik7Ci0KLSAgIC8qIGluaXRpYWxpemUgYWxsb3dfcmVwZWF0X3R4ICovCi0gICAvKiBn
dWFyZCBhZ2FpbnN0IHVuaW5pdGlhbGl6ZWQgbWVtb3J5OiBhbGxvdyBvbmx5IDAgb3IgMSBoZXJl
ICovCi0gICBpZiAocC0+YWxsb3dfcmVwZWF0X3R4ICE9IDAgJiYgcC0+YWxsb3dfcmVwZWF0X3R4
ICE9IDEpIHsKLSAgICAgc3J0cF9yZGJ4X2RlYWxsb2MoJnNydHAtPnJ0cF9yZGJ4KTsKLSAgICAg
cmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW07Ci0gICB9Ci0gICBzcnRwLT5hbGxvd19y
ZXBlYXRfdHggPSBwLT5hbGxvd19yZXBlYXRfdHg7Ci0KLSAgIC8qIERBTSAtIG5vIFJUQ1Aga2V5
IGxpbWl0IGF0IHByZXNlbnQgKi8KLQotICAgLyogaW5pdGlhbGl6ZSBrZXlzICovCi0gICBlcnIg
PSBzcnRwX3N0cmVhbV9pbml0X2FsbF9tYXN0ZXJfa2V5cyhzcnRwLCBwLT5rZXksIHAtPmtleXMs
IHAtPm51bV9tYXN0ZXJfa2V5cyk7Ci0gICBpZiAoZXJyKSB7Ci0gICAgIHNydHBfcmRieF9kZWFs
bG9jKCZzcnRwLT5ydHBfcmRieCk7Ci0gICAgIHJldHVybiBlcnI7Ci0gICB9Ci0KLSAgIC8qIAot
ICAgICogaWYgRUtUIGlzIGluIHVzZSwgdGhlbiBpbml0aWFsaXplIHRoZSBFS1QgZGF0YSBhc3Nv
Y2lhdGVkIHdpdGgKLSAgICAqIHRoZSBzdHJlYW0KLSAgICAqLwotICAgZXJyID0gc3J0cF9la3Rf
c3RyZWFtX2luaXRfZnJvbV9wb2xpY3koc3J0cC0+ZWt0LCBwLT5la3QpOwotICAgaWYgKGVycikg
ewotICAgICBzcnRwX3JkYnhfZGVhbGxvYygmc3J0cC0+cnRwX3JkYngpOwotICAgICByZXR1cm4g
ZXJyOwotICAgfQotCi0gICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOyAgCi0gfQotCi0KLSAv
KgotICAqIHNydHBfZXZlbnRfcmVwb3J0ZXIgaXMgYW4gZXZlbnQgaGFuZGxlciBmdW5jdGlvbiB0
aGF0IG1lcmVseQotICAqIHJlcG9ydHMgdGhlIGV2ZW50cyB0aGF0IGFyZSByZXBvcnRlZCBieSB0
aGUgY2FsbGJhY2tzCi0gICovCi0KLSB2b2lkCi0gc3J0cF9ldmVudF9yZXBvcnRlcihzcnRwX2V2
ZW50X2RhdGFfdCAqZGF0YSkgewotCi0gICBzcnRwX2Vycl9yZXBvcnQoc3J0cF9lcnJfbGV2ZWxf
d2FybmluZywgInNydHA6IGluIHN0cmVhbSAweCV4OiAiLCAKLSAgICAgICAgICAgICAgICAgICBk
YXRhLT5zc3JjKTsKLQotICAgc3dpdGNoKGRhdGEtPmV2ZW50KSB7Ci0gICBjYXNlIGV2ZW50X3Nz
cmNfY29sbGlzaW9uOgotICAgICBzcnRwX2Vycl9yZXBvcnQoc3J0cF9lcnJfbGV2ZWxfd2Fybmlu
ZywgIlx0U1NSQyBjb2xsaXNpb25cbiIpOwotICAgICBicmVhazsKLSAgIGNhc2UgZXZlbnRfa2V5
X3NvZnRfbGltaXQ6Ci0gICAgIHNydHBfZXJyX3JlcG9ydChzcnRwX2Vycl9sZXZlbF93YXJuaW5n
LCAiXHRrZXkgdXNhZ2Ugc29mdCBsaW1pdCByZWFjaGVkXG4iKTsKLSAgICAgYnJlYWs7Ci0gICBj
YXNlIGV2ZW50X2tleV9oYXJkX2xpbWl0OgotICAgICBzcnRwX2Vycl9yZXBvcnQoc3J0cF9lcnJf
bGV2ZWxfd2FybmluZywgIlx0a2V5IHVzYWdlIGhhcmQgbGltaXQgcmVhY2hlZFxuIik7Ci0gICAg
IGJyZWFrOwotICAgY2FzZSBldmVudF9wYWNrZXRfaW5kZXhfbGltaXQ6Ci0gICAgIHNydHBfZXJy
X3JlcG9ydChzcnRwX2Vycl9sZXZlbF93YXJuaW5nLCAiXHRwYWNrZXQgaW5kZXggbGltaXQgcmVh
Y2hlZFxuIik7Ci0gICAgIGJyZWFrOwotICAgZGVmYXVsdDoKLSAgICAgc3J0cF9lcnJfcmVwb3J0
KHNydHBfZXJyX2xldmVsX3dhcm5pbmcsICJcdHVua25vd24gZXZlbnQgcmVwb3J0ZWQgdG8gaGFu
ZGxlclxuIik7Ci0gICB9Ci0gfQotCi0gLyoKLSAgKiBzcnRwX2V2ZW50X2hhbmRsZXIgaXMgYSBn
bG9iYWwgdmFyaWFibGUgaG9sZGluZyBhIHBvaW50ZXIgdG8gdGhlCi0gICogZXZlbnQgaGFuZGxl
ciBmdW5jdGlvbjsgdGhpcyBmdW5jdGlvbiBpcyBjYWxsZWQgZm9yIGFueSB1bmV4cGVjdGVkCi0g
ICogZXZlbnQgdGhhdCBuZWVkcyB0byBiZSBoYW5kbGVkIG91dCBvZiB0aGUgU1JUUCBkYXRhIHBh
dGguICBzZWUKLSAgKiBzcnRwX2V2ZW50X3QgaW4gc3J0cC5oIGZvciBtb3JlIGluZm8KLSAgKgot
ICAqIGl0IGlzIG9rYXkgdG8gc2V0IHNydHBfZXZlbnRfaGFuZGxlciB0byBOVUxMLCBidXQgd2Ug
c2V0IAotICAqIGl0IHRvIHRoZSBzcnRwX2V2ZW50X3JlcG9ydGVyLgotICAqLwotCi0gc3RhdGlj
IHNydHBfZXZlbnRfaGFuZGxlcl9mdW5jX3QgKnNydHBfZXZlbnRfaGFuZGxlciA9IHNydHBfZXZl
bnRfcmVwb3J0ZXI7Ci0KLSBzcnRwX2Vycl9zdGF0dXNfdAotIHNydHBfaW5zdGFsbF9ldmVudF9o
YW5kbGVyKHNydHBfZXZlbnRfaGFuZGxlcl9mdW5jX3QgZnVuYykgewotCi0gICAvKiAKLSAgICAq
IG5vdGUgdGhhdCB3ZSBhY2NlcHQgTlVMTCBhcmd1bWVudHMgaW50ZW50aW9uYWxseSAtIGNhbGxp
bmcgdGhpcwotICAgICogZnVuY3Rpb24gd2l0aCBhIE5VTEwgYXJndW1lbnRzIHJlbW92ZXMgYW4g
ZXZlbnQgaGFuZGxlciB0aGF0J3MKLSAgICAqIGJlZW4gcHJldmlvdXNseSBpbnN0YWxsZWQKLSAg
ICAqLworICAgIC8qIGdlbmVyYXRlIGVuY3J5cHRpb24ga2V5ICAqLworICAgIHN0YXQgPSBzcnRw
X2tkZl9nZW5lcmF0ZSgma2RmLCBsYWJlbF9ydGNwX2VuY3J5cHRpb24sIHRtcF9rZXksCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHJ0Y3BfYmFzZV9rZXlfbGVuKTsKKyAgICBpZiAoc3Rh
dCkgeworICAgICAgICAvKiB6ZXJvaXplIHRlbXAgYnVmZmVyICovCisgICAgICAgIG9jdGV0X3N0
cmluZ19zZXRfdG9femVybyh0bXBfa2V5LCBNQVhfU1JUUF9LRVlfTEVOKTsKKyAgICAgICAgcmV0
dXJuIHNydHBfZXJyX3N0YXR1c19pbml0X2ZhaWw7CisgICAgfQogCi0gICAvKiBzZXQgZ2xvYmFs
IGV2ZW50IGhhbmRsaW5nIGZ1bmN0aW9uICovCi0gICBzcnRwX2V2ZW50X2hhbmRsZXIgPSBmdW5j
OwotICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKLSB9CisgICAgLyoKKyAgICAgKiBpZiB0
aGUgY2lwaGVyIGluIHRoZSBzcnRwIGNvbnRleHQgdXNlcyBhIHNhbHQsIHRoZW4gd2UgbmVlZAor
ICAgICAqIHRvIGdlbmVyYXRlIHRoZSBzYWx0IHZhbHVlCisgICAgICovCisgICAgaWYgKHJ0Y3Bf
c2FsdF9sZW4gPiAwKSB7CisgICAgICAgIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAiZm91bmQgcnRj
cF9zYWx0X2xlbiA+IDAsIGdlbmVyYXRpbmcgcnRjcCBzYWx0IiwKKyAgICAgICAgICAgICAgICAg
ICAgTlVMTCk7CisKKyAgICAgICAgLyogZ2VuZXJhdGUgZW5jcnlwdGlvbiBzYWx0LCBwdXQgYWZ0
ZXIgZW5jcnlwdGlvbiBrZXkgKi8KKyAgICAgICAgc3RhdCA9IHNydHBfa2RmX2dlbmVyYXRlKCZr
ZGYsIGxhYmVsX3J0Y3Bfc2FsdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRt
cF9rZXkgKyBydGNwX2Jhc2Vfa2V5X2xlbiwgcnRjcF9zYWx0X2xlbik7CisgICAgICAgIGlmIChz
dGF0KSB7CisgICAgICAgICAgICAvKiB6ZXJvaXplIHRlbXAgYnVmZmVyICovCisgICAgICAgICAg
ICBvY3RldF9zdHJpbmdfc2V0X3RvX3plcm8odG1wX2tleSwgTUFYX1NSVFBfS0VZX0xFTik7Cisg
ICAgICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2luaXRfZmFpbDsKKyAgICAgICAgfQor
ICAgICAgICBtZW1jcHkoc2Vzc2lvbl9rZXlzLT5jX3NhbHQsIHRtcF9rZXkgKyBydGNwX2Jhc2Vf
a2V5X2xlbiwKKyAgICAgICAgICAgICAgIFNSVFBfQUVBRF9TQUxUX0xFTik7CisgICAgfQorICAg
IGRlYnVnX3ByaW50KG1vZF9zcnRwLCAicnRjcCBjaXBoZXIga2V5OiAlcyIsCisgICAgICAgICAg
ICAgICAgc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZyh0bXBfa2V5LCBydGNwX2Jhc2Vfa2V5
X2xlbikpOworICAgIGlmIChydGNwX3NhbHRfbGVuID4gMCkgeworICAgICAgICBkZWJ1Z19wcmlu
dChtb2Rfc3J0cCwgInJ0Y3AgY2lwaGVyIHNhbHQ6ICVzIiwKKyAgICAgICAgICAgICAgICAgICAg
c3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZyh0bXBfa2V5ICsgcnRjcF9iYXNlX2tleV9sZW4s
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcnRjcF9z
YWx0X2xlbikpOworICAgIH0KIAorICAgIC8qIGluaXRpYWxpemUgY2lwaGVyICovCisgICAgc3Rh
dCA9IHNydHBfY2lwaGVyX2luaXQoc2Vzc2lvbl9rZXlzLT5ydGNwX2NpcGhlciwgdG1wX2tleSk7
CisgICAgaWYgKHN0YXQpIHsKKyAgICAgICAgLyogemVyb2l6ZSB0ZW1wIGJ1ZmZlciAqLworICAg
ICAgICBvY3RldF9zdHJpbmdfc2V0X3RvX3plcm8odG1wX2tleSwgTUFYX1NSVFBfS0VZX0xFTik7
CisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfaW5pdF9mYWlsOworICAgIH0KIAotLyoK
LSAqIENoZWNrIGlmIHRoZSBnaXZlbiBleHRlbnNpb24gaGVhZGVyIGlkIGlzIC8gc2hvdWxkIGJl
IGVuY3J5cHRlZC4KLSAqIFJldHVybnMgMSBpZiB5ZXMsIG90aGVyd2lzZSAwLgotICovCi1zdGF0
aWMgaW50Ci1zcnRwX3Byb3RlY3RfZXh0ZW5zaW9uX2hlYWRlcihzcnRwX3N0cmVhbV9jdHhfdCAq
c3RyZWFtLCBpbnQgaWQpIHsKLSAgaW50KiBlbmNfeHRuX2hkciA9IHN0cmVhbS0+ZW5jX3h0bl9o
ZHI7Ci0gIGludCBjb3VudCA9IHN0cmVhbS0+ZW5jX3h0bl9oZHJfY291bnQ7CisgICAgLyogZ2Vu
ZXJhdGUgYXV0aGVudGljYXRpb24ga2V5ICovCisgICAgc3RhdCA9IHNydHBfa2RmX2dlbmVyYXRl
KCZrZGYsIGxhYmVsX3J0Y3BfbXNnX2F1dGgsIHRtcF9rZXksCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHNydHBfYXV0aF9nZXRfa2V5X2xlbmd0aChzZXNzaW9uX2tleXMtPnJ0Y3BfYXV0
aCkpOworICAgIGlmIChzdGF0KSB7CisgICAgICAgIC8qIHplcm9pemUgdGVtcCBidWZmZXIgKi8K
KyAgICAgICAgb2N0ZXRfc3RyaW5nX3NldF90b196ZXJvKHRtcF9rZXksIE1BWF9TUlRQX0tFWV9M
RU4pOworICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2luaXRfZmFpbDsKKyAgICB9CiAK
LSAgaWYgKCFlbmNfeHRuX2hkciB8fCBjb3VudCA8PSAwKSB7Ci0gICAgcmV0dXJuIDA7Ci0gIH0K
KyAgICBkZWJ1Z19wcmludCgKKyAgICAgICAgbW9kX3NydHAsICJydGNwIGF1dGgga2V5OiAgICVz
IiwKKyAgICAgICAgc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZygKKyAgICAgICAgICAgIHRt
cF9rZXksIHNydHBfYXV0aF9nZXRfa2V5X2xlbmd0aChzZXNzaW9uX2tleXMtPnJ0Y3BfYXV0aCkp
KTsKIAotICB3aGlsZSAoY291bnQgPiAwKSB7Ci0gICAgaWYgKCplbmNfeHRuX2hkciA9PSBpZCkg
ewotICAgICAgcmV0dXJuIDE7CisgICAgLyogaW5pdGlhbGl6ZSBhdXRoIGZ1bmN0aW9uICovCisg
ICAgc3RhdCA9IHNydHBfYXV0aF9pbml0KHNlc3Npb25fa2V5cy0+cnRjcF9hdXRoLCB0bXBfa2V5
KTsKKyAgICBpZiAoc3RhdCkgeworICAgICAgICAvKiB6ZXJvaXplIHRlbXAgYnVmZmVyICovCisg
ICAgICAgIG9jdGV0X3N0cmluZ19zZXRfdG9femVybyh0bXBfa2V5LCBNQVhfU1JUUF9LRVlfTEVO
KTsKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19pbml0X2ZhaWw7CiAgICAgfQogCi0g
ICAgZW5jX3h0bl9oZHIrKzsKLSAgICBjb3VudC0tOwotICB9Ci0gIHJldHVybiAwOworICAgIC8q
IGNsZWFyIG1lbW9yeSB0aGVuIHJldHVybiAqLworICAgIHN0YXQgPSBzcnRwX2tkZl9jbGVhcigm
a2RmKTsKKyAgICBvY3RldF9zdHJpbmdfc2V0X3RvX3plcm8odG1wX2tleSwgTUFYX1NSVFBfS0VZ
X0xFTik7CisgICAgaWYgKHN0YXQpCisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfaW5p
dF9mYWlsOworCisgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0KIAorc3J0cF9lcnJf
c3RhdHVzX3Qgc3J0cF9zdHJlYW1faW5pdChzcnRwX3N0cmVhbV9jdHhfdCAqc3J0cCwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3J0cF9wb2xpY3lfdCAqcCkKK3sK
KyAgICBzcnRwX2Vycl9zdGF0dXNfdCBlcnI7CisKKyAgICBkZWJ1Z19wcmludChtb2Rfc3J0cCwg
ImluaXRpYWxpemluZyBzdHJlYW0gKFNTUkM6IDB4JTA4eCkiLCBwLT5zc3JjLnZhbHVlKTsKKwor
ICAgIC8qIGluaXRpYWxpemUgcmVwbGF5IGRhdGFiYXNlICovCisgICAgLyoKKyAgICAgKiB3aW5k
b3cgc2l6ZSBNVVNUIGJlIGF0IGxlYXN0IDY0LiAgTUFZIGJlIGxhcmdlci4gIFZhbHVlcyBtb3Jl
IHRoYW4KKyAgICAgKiAyXjE1IGFyZW4ndCBtZWFuaW5nZnVsIGR1ZSB0byBob3cgZXh0ZW5kZWQg
c2VxdWVuY2UgbnVtYmVycyBhcmUKKyAgICAgKiBjYWxjdWxhdGVkLgorICAgICAqIExldCBhIHdp
bmRvdyBzaXplIG9mIDAgaW1wbHkgdGhlIGRlZmF1bHQgdmFsdWUuCisgICAgICovCisKKyAgICBp
ZiAocC0+d2luZG93X3NpemUgIT0gMCAmJgorICAgICAgICAocC0+d2luZG93X3NpemUgPCA2NCB8
fCBwLT53aW5kb3dfc2l6ZSA+PSAweDgwMDApKQorICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3Rh
dHVzX2JhZF9wYXJhbTsKKworICAgIGlmIChwLT53aW5kb3dfc2l6ZSAhPSAwKQorICAgICAgICBl
cnIgPSBzcnRwX3JkYnhfaW5pdCgmc3J0cC0+cnRwX3JkYngsIHAtPndpbmRvd19zaXplKTsKKyAg
ICBlbHNlCisgICAgICAgIGVyciA9IHNydHBfcmRieF9pbml0KCZzcnRwLT5ydHBfcmRieCwgMTI4
KTsKKyAgICBpZiAoZXJyKQorICAgICAgICByZXR1cm4gZXJyOworCisgICAgLyogc2V0IHRoZSBT
U1JDIHZhbHVlICovCisgICAgc3J0cC0+c3NyYyA9IGh0b25sKHAtPnNzcmMudmFsdWUpOworCisg
ICAgLyogcmVzZXQgcGVuZGluZyBST0MgKi8KKyAgICBzcnRwLT5wZW5kaW5nX3JvYyA9IDA7CisK
KyAgICAvKiBzZXQgdGhlIHNlY3VyaXR5IHNlcnZpY2UgZmxhZ3MgKi8KKyAgICBzcnRwLT5ydHBf
c2VydmljZXMgPSBwLT5ydHAuc2VjX3NlcnY7CisgICAgc3J0cC0+cnRjcF9zZXJ2aWNlcyA9IHAt
PnJ0Y3Auc2VjX3NlcnY7CisKKyAgICAvKgorICAgICAqIHNldCBkaXJlY3Rpb24gdG8gdW5rbm93
biAtIHRoaXMgZmxhZyBnZXRzIGNoZWNrZWQgaW4gc3J0cF9wcm90ZWN0KCksCisgICAgICogc3J0
cF91bnByb3RlY3QoKSwgc3J0cF9wcm90ZWN0X3J0Y3AoKSwgYW5kIHNydHBfdW5wcm90ZWN0X3J0
Y3AoKSwgYW5kCisgICAgICogZ2V0cyBzZXQgYXBwcm9wcmlhdGVseSBpZiBpdCBpcyBzZXQgdG8g
dW5rbm93bi4KKyAgICAgKi8KKyAgICBzcnRwLT5kaXJlY3Rpb24gPSBkaXJfdW5rbm93bjsKKwor
ICAgIC8qIGluaXRpYWxpemUgU1JUQ1AgcmVwbGF5IGRhdGFiYXNlICovCisgICAgc3J0cF9yZGJf
aW5pdCgmc3J0cC0+cnRjcF9yZGIpOworCisgICAgLyogaW5pdGlhbGl6ZSBhbGxvd19yZXBlYXRf
dHggKi8KKyAgICAvKiBndWFyZCBhZ2FpbnN0IHVuaW5pdGlhbGl6ZWQgbWVtb3J5OiBhbGxvdyBv
bmx5IDAgb3IgMSBoZXJlICovCisgICAgaWYgKHAtPmFsbG93X3JlcGVhdF90eCAhPSAwICYmIHAt
PmFsbG93X3JlcGVhdF90eCAhPSAxKSB7CisgICAgICAgIHNydHBfcmRieF9kZWFsbG9jKCZzcnRw
LT5ydHBfcmRieCk7CisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtOwor
ICAgIH0KKyAgICBzcnRwLT5hbGxvd19yZXBlYXRfdHggPSBwLT5hbGxvd19yZXBlYXRfdHg7CisK
KyAgICAvKiBEQU0gLSBubyBSVENQIGtleSBsaW1pdCBhdCBwcmVzZW50ICovCisKKyAgICAvKiBp
bml0aWFsaXplIGtleXMgKi8KKyAgICBlcnIgPSBzcnRwX3N0cmVhbV9pbml0X2FsbF9tYXN0ZXJf
a2V5cyhzcnRwLCBwLT5rZXksIHAtPmtleXMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgcC0+bnVtX21hc3Rlcl9rZXlzKTsKKyAgICBpZiAoZXJyKSB7CisgICAg
ICAgIHNydHBfcmRieF9kZWFsbG9jKCZzcnRwLT5ydHBfcmRieCk7CisgICAgICAgIHJldHVybiBl
cnI7CisgICAgfQorCisgICAgLyoKKyAgICAgKiBpZiBFS1QgaXMgaW4gdXNlLCB0aGVuIGluaXRp
YWxpemUgdGhlIEVLVCBkYXRhIGFzc29jaWF0ZWQgd2l0aAorICAgICAqIHRoZSBzdHJlYW0KKyAg
ICAgKi8KKyAgICBlcnIgPSBzcnRwX2VrdF9zdHJlYW1faW5pdF9mcm9tX3BvbGljeShzcnRwLT5l
a3QsIHAtPmVrdCk7CisgICAgaWYgKGVycikgeworICAgICAgICBzcnRwX3JkYnhfZGVhbGxvYygm
c3J0cC0+cnRwX3JkYngpOworICAgICAgICByZXR1cm4gZXJyOworICAgIH0KKworICAgIHJldHVy
biBzcnRwX2Vycl9zdGF0dXNfb2s7Cit9CiAKIC8qCi0gKiBleHRlbnNpb25zIGhlYWRlciBlbmNy
eXB0aW9uIFJGQyA2OTA0CisgKiBzcnRwX2V2ZW50X3JlcG9ydGVyIGlzIGFuIGV2ZW50IGhhbmRs
ZXIgZnVuY3Rpb24gdGhhdCBtZXJlbHkKKyAqIHJlcG9ydHMgdGhlIGV2ZW50cyB0aGF0IGFyZSBy
ZXBvcnRlZCBieSB0aGUgY2FsbGJhY2tzCiAgKi8KLXN0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdAot
c3J0cF9wcm9jZXNzX2hlYWRlcl9lbmNyeXB0aW9uKHNydHBfc3RyZWFtX2N0eF90ICpzdHJlYW0s
Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF9oZHJfeHRuZF90ICp4dG5faGRy
LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfc2Vzc2lvbl9rZXlzX3QgKnNl
c3Npb25fa2V5cykgewotICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7Ci0gIHVpbnQ4X3Qga2V5
c3RyZWFtWzI1N107ICAvKiBNYXhpbXVtIDIgYnl0ZXMgaGVhZGVyICsgMjU1IGJ5dGVzIGRhdGEu
ICovCi0gIGludCBrZXlzdHJlYW1fcG9zOwotICB1aW50OF90KiB4dG5faGRyX2RhdGEgPSAoKHVp
bnQ4X3QgKil4dG5faGRyKSArIG9jdGV0c19pbl9ydHBfZXh0bl9oZHI7Ci0gIHVpbnQ4X3QqIHh0
bl9oZHJfZW5kID0geHRuX2hkcl9kYXRhICsgKG50b2hzKHh0bl9oZHItPmxlbmd0aCkgKiBzaXpl
b2YodWludDMyX3QpKTsKLQotICBpZiAobnRvaHMoeHRuX2hkci0+cHJvZmlsZV9zcGVjaWZpYykg
PT0gMHhiZWRlKSB7Ci0gICAgLyogUkZDIDUyODUsIHNlY3Rpb24gNC4yLiBPbmUtQnl0ZSBIZWFk
ZXIgKi8KLSAgICB3aGlsZSAoeHRuX2hkcl9kYXRhIDwgeHRuX2hkcl9lbmQpIHsKLSAgICAgIHVp
bnQ4X3QgeGlkID0gKCp4dG5faGRyX2RhdGEgJiAweGYwKSA+PiA0OwotICAgICAgdW5zaWduZWQg
aW50IHhsZW4gPSAoKnh0bl9oZHJfZGF0YSAmIDB4MGYpICsgMTsKLSAgICAgIHVpbnQzMl90IHhs
ZW5fd2l0aF9oZWFkZXIgPSAxK3hsZW47Ci0gICAgICB4dG5faGRyX2RhdGErKzsKLQotICAgICAg
aWYgKHh0bl9oZHJfZGF0YSArIHhsZW4gPiB4dG5faGRyX2VuZCkKLSAgICAgICAgcmV0dXJuIHNy
dHBfZXJyX3N0YXR1c19wYXJzZV9lcnI7CiAKLSAgICAgIGlmICh4aWQgPT0gMTUpIHsKLSAgICAg
ICAgLyogZm91bmQgaGVhZGVyIDE1LCBzdG9wIGZ1cnRoZXIgcHJvY2Vzc2luZy4gKi8KK3ZvaWQg
c3J0cF9ldmVudF9yZXBvcnRlcihzcnRwX2V2ZW50X2RhdGFfdCAqZGF0YSkKK3sKKyAgICBzcnRw
X2Vycl9yZXBvcnQoc3J0cF9lcnJfbGV2ZWxfd2FybmluZywgInNydHA6IGluIHN0cmVhbSAweCV4
OiAiLAorICAgICAgICAgICAgICAgICAgICBkYXRhLT5zc3JjKTsKKworICAgIHN3aXRjaCAoZGF0
YS0+ZXZlbnQpIHsKKyAgICBjYXNlIGV2ZW50X3NzcmNfY29sbGlzaW9uOgorICAgICAgICBzcnRw
X2Vycl9yZXBvcnQoc3J0cF9lcnJfbGV2ZWxfd2FybmluZywgIlx0U1NSQyBjb2xsaXNpb25cbiIp
OworICAgICAgICBicmVhazsKKyAgICBjYXNlIGV2ZW50X2tleV9zb2Z0X2xpbWl0OgorICAgICAg
ICBzcnRwX2Vycl9yZXBvcnQoc3J0cF9lcnJfbGV2ZWxfd2FybmluZywKKyAgICAgICAgICAgICAg
ICAgICAgICAgICJcdGtleSB1c2FnZSBzb2Z0IGxpbWl0IHJlYWNoZWRcbiIpOworICAgICAgICBi
cmVhazsKKyAgICBjYXNlIGV2ZW50X2tleV9oYXJkX2xpbWl0OgorICAgICAgICBzcnRwX2Vycl9y
ZXBvcnQoc3J0cF9lcnJfbGV2ZWxfd2FybmluZywKKyAgICAgICAgICAgICAgICAgICAgICAgICJc
dGtleSB1c2FnZSBoYXJkIGxpbWl0IHJlYWNoZWRcbiIpOwogICAgICAgICBicmVhazsKLSAgICAg
IH0KKyAgICBjYXNlIGV2ZW50X3BhY2tldF9pbmRleF9saW1pdDoKKyAgICAgICAgc3J0cF9lcnJf
cmVwb3J0KHNydHBfZXJyX2xldmVsX3dhcm5pbmcsCisgICAgICAgICAgICAgICAgICAgICAgICAi
XHRwYWNrZXQgaW5kZXggbGltaXQgcmVhY2hlZFxuIik7CisgICAgICAgIGJyZWFrOworICAgIGRl
ZmF1bHQ6CisgICAgICAgIHNydHBfZXJyX3JlcG9ydChzcnRwX2Vycl9sZXZlbF93YXJuaW5nLAor
ICAgICAgICAgICAgICAgICAgICAgICAgIlx0dW5rbm93biBldmVudCByZXBvcnRlZCB0byBoYW5k
bGVyXG4iKTsKKyAgICB9Cit9CiAKLSAgICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX291dHB1dChz
ZXNzaW9uX2tleXMtPnJ0cF94dG5faGRyX2NpcGhlciwKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBrZXlzdHJlYW0sICZ4bGVuX3dpdGhfaGVhZGVyKTsKLSAgICAgIGlmIChzdGF0
dXMpCi0gICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfY2lwaGVyX2ZhaWw7CisvKgorICog
c3J0cF9ldmVudF9oYW5kbGVyIGlzIGEgZ2xvYmFsIHZhcmlhYmxlIGhvbGRpbmcgYSBwb2ludGVy
IHRvIHRoZQorICogZXZlbnQgaGFuZGxlciBmdW5jdGlvbjsgdGhpcyBmdW5jdGlvbiBpcyBjYWxs
ZWQgZm9yIGFueSB1bmV4cGVjdGVkCisgKiBldmVudCB0aGF0IG5lZWRzIHRvIGJlIGhhbmRsZWQg
b3V0IG9mIHRoZSBTUlRQIGRhdGEgcGF0aC4gIHNlZQorICogc3J0cF9ldmVudF90IGluIHNydHAu
aCBmb3IgbW9yZSBpbmZvCisgKgorICogaXQgaXMgb2theSB0byBzZXQgc3J0cF9ldmVudF9oYW5k
bGVyIHRvIE5VTEwsIGJ1dCB3ZSBzZXQKKyAqIGl0IHRvIHRoZSBzcnRwX2V2ZW50X3JlcG9ydGVy
LgorICovCisKK3N0YXRpYyBzcnRwX2V2ZW50X2hhbmRsZXJfZnVuY190ICpzcnRwX2V2ZW50X2hh
bmRsZXIgPSBzcnRwX2V2ZW50X3JlcG9ydGVyOworCitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2lu
c3RhbGxfZXZlbnRfaGFuZGxlcihzcnRwX2V2ZW50X2hhbmRsZXJfZnVuY190IGZ1bmMpCit7Cisg
ICAgLyoKKyAgICAgKiBub3RlIHRoYXQgd2UgYWNjZXB0IE5VTEwgYXJndW1lbnRzIGludGVudGlv
bmFsbHkgLSBjYWxsaW5nIHRoaXMKKyAgICAgKiBmdW5jdGlvbiB3aXRoIGEgTlVMTCBhcmd1bWVu
dHMgcmVtb3ZlcyBhbiBldmVudCBoYW5kbGVyIHRoYXQncworICAgICAqIGJlZW4gcHJldmlvdXNs
eSBpbnN0YWxsZWQKKyAgICAgKi8KKworICAgIC8qIHNldCBnbG9iYWwgZXZlbnQgaGFuZGxpbmcg
ZnVuY3Rpb24gKi8KKyAgICBzcnRwX2V2ZW50X2hhbmRsZXIgPSBmdW5jOworICAgIHJldHVybiBz
cnRwX2Vycl9zdGF0dXNfb2s7Cit9CisKKy8qCisgKiBDaGVjayBpZiB0aGUgZ2l2ZW4gZXh0ZW5z
aW9uIGhlYWRlciBpZCBpcyAvIHNob3VsZCBiZSBlbmNyeXB0ZWQuCisgKiBSZXR1cm5zIDEgaWYg
eWVzLCBvdGhlcndpc2UgMC4KKyAqLworc3RhdGljIGludCBzcnRwX3Byb3RlY3RfZXh0ZW5zaW9u
X2hlYWRlcihzcnRwX3N0cmVhbV9jdHhfdCAqc3RyZWFtLCBpbnQgaWQpCit7CisgICAgaW50ICpl
bmNfeHRuX2hkciA9IHN0cmVhbS0+ZW5jX3h0bl9oZHI7CisgICAgaW50IGNvdW50ID0gc3RyZWFt
LT5lbmNfeHRuX2hkcl9jb3VudDsKIAotICAgICAgaWYgKHNydHBfcHJvdGVjdF9leHRlbnNpb25f
aGVhZGVyKHN0cmVhbSwgeGlkKSkgewotICAgICAgICBrZXlzdHJlYW1fcG9zID0gMTsKLSAgICAg
ICAgd2hpbGUgKHhsZW4gPiAwKSB7Ci0gICAgICAgICAgKnh0bl9oZHJfZGF0YSBePSBrZXlzdHJl
YW1ba2V5c3RyZWFtX3BvcysrXTsKLSAgICAgICAgICB4dG5faGRyX2RhdGErKzsKLSAgICAgICAg
ICB4bGVuLS07CisgICAgaWYgKCFlbmNfeHRuX2hkciB8fCBjb3VudCA8PSAwKSB7CisgICAgICAg
IHJldHVybiAwOworICAgIH0KKworICAgIHdoaWxlIChjb3VudCA+IDApIHsKKyAgICAgICAgaWYg
KCplbmNfeHRuX2hkciA9PSBpZCkgeworICAgICAgICAgICAgcmV0dXJuIDE7CiAgICAgICAgIH0K
LSAgICAgIH0gZWxzZSB7Ci0gICAgICAgIHh0bl9oZHJfZGF0YSArPSB4bGVuOwotICAgICAgfQot
Ci0gICAgICAvKiBza2lwIHBhZGRpbmcgYnl0ZXMuICovCi0gICAgICB3aGlsZSAoeHRuX2hkcl9k
YXRhIDwgeHRuX2hkcl9lbmQgJiYgKnh0bl9oZHJfZGF0YSA9PSAwKSB7Ci0gICAgICAgIHh0bl9o
ZHJfZGF0YSsrOwotICAgICAgfQotICAgIH0KLSAgfSBlbHNlIGlmICgobnRvaHMoeHRuX2hkci0+
cHJvZmlsZV9zcGVjaWZpYykgJiAweDFmZmYpID09IDB4MTAwKSB7Ci0gICAgLyogUkZDIDUyODUs
IHNlY3Rpb24gNC4zLiBUd28tQnl0ZSBIZWFkZXIgKi8KLSAgICB3aGlsZSAoeHRuX2hkcl9kYXRh
ICsgMSA8IHh0bl9oZHJfZW5kKSB7Ci0gICAgICB1aW50OF90IHhpZCA9ICp4dG5faGRyX2RhdGE7
Ci0gICAgICB1bnNpZ25lZCBpbnQgeGxlbiA9ICooeHRuX2hkcl9kYXRhKzEpOwotICAgICAgdWlu
dDMyX3QgeGxlbl93aXRoX2hlYWRlciA9IDIreGxlbjsKLSAgICAgIHh0bl9oZHJfZGF0YSArPSAy
OwotCi0gICAgICBpZiAoeHRuX2hkcl9kYXRhICsgeGxlbiA+IHh0bl9oZHJfZW5kKQotICAgICAg
ICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX3BhcnNlX2VycjsKIAotICAgICAgc3RhdHVzID0gc3J0
cF9jaXBoZXJfb3V0cHV0KHNlc3Npb25fa2V5cy0+cnRwX3h0bl9oZHJfY2lwaGVyLAotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGtleXN0cmVhbSwgJnhsZW5fd2l0aF9oZWFkZXIp
OwotICAgICAgaWYgKHN0YXR1cykKLSAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19jaXBo
ZXJfZmFpbDsKKyAgICAgICAgZW5jX3h0bl9oZHIrKzsKKyAgICAgICAgY291bnQtLTsKKyAgICB9
CisgICAgcmV0dXJuIDA7Cit9CisKKy8qCisgKiBleHRlbnNpb25zIGhlYWRlciBlbmNyeXB0aW9u
IFJGQyA2OTA0CisgKi8KK3N0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3Byb2Nlc3NfaGVh
ZGVyX2VuY3J5cHRpb24oCisgICAgc3J0cF9zdHJlYW1fY3R4X3QgKnN0cmVhbSwKKyAgICBzcnRw
X2hkcl94dG5kX3QgKnh0bl9oZHIsCisgICAgc3J0cF9zZXNzaW9uX2tleXNfdCAqc2Vzc2lvbl9r
ZXlzKQoreworICAgIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKKyAgICB1aW50OF90IGtleXN0
cmVhbVsyNTddOyAvKiBNYXhpbXVtIDIgYnl0ZXMgaGVhZGVyICsgMjU1IGJ5dGVzIGRhdGEuICov
CisgICAgaW50IGtleXN0cmVhbV9wb3M7CisgICAgdWludDhfdCAqeHRuX2hkcl9kYXRhID0gKCh1
aW50OF90ICopeHRuX2hkcikgKyBvY3RldHNfaW5fcnRwX2V4dG5faGRyOworICAgIHVpbnQ4X3Qg
Knh0bl9oZHJfZW5kID0KKyAgICAgICAgeHRuX2hkcl9kYXRhICsgKG50b2hzKHh0bl9oZHItPmxl
bmd0aCkgKiBzaXplb2YodWludDMyX3QpKTsKKworICAgIGlmIChudG9ocyh4dG5faGRyLT5wcm9m
aWxlX3NwZWNpZmljKSA9PSAweGJlZGUpIHsKKyAgICAgICAgLyogUkZDIDUyODUsIHNlY3Rpb24g
NC4yLiBPbmUtQnl0ZSBIZWFkZXIgKi8KKyAgICAgICAgd2hpbGUgKHh0bl9oZHJfZGF0YSA8IHh0
bl9oZHJfZW5kKSB7CisgICAgICAgICAgICB1aW50OF90IHhpZCA9ICgqeHRuX2hkcl9kYXRhICYg
MHhmMCkgPj4gNDsKKyAgICAgICAgICAgIHVuc2lnbmVkIGludCB4bGVuID0gKCp4dG5faGRyX2Rh
dGEgJiAweDBmKSArIDE7CisgICAgICAgICAgICB1aW50MzJfdCB4bGVuX3dpdGhfaGVhZGVyID0g
MSArIHhsZW47CisgICAgICAgICAgICB4dG5faGRyX2RhdGErKzsKKworICAgICAgICAgICAgaWYg
KHh0bl9oZHJfZGF0YSArIHhsZW4gPiB4dG5faGRyX2VuZCkKKyAgICAgICAgICAgICAgICByZXR1
cm4gc3J0cF9lcnJfc3RhdHVzX3BhcnNlX2VycjsKKworICAgICAgICAgICAgaWYgKHhpZCA9PSAx
NSkgeworICAgICAgICAgICAgICAgIC8qIGZvdW5kIGhlYWRlciAxNSwgc3RvcCBmdXJ0aGVyIHBy
b2Nlc3NpbmcuICovCisgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICB9CisKKyAg
ICAgICAgICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX291dHB1dChzZXNzaW9uX2tleXMtPnJ0cF94
dG5faGRyX2NpcGhlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBr
ZXlzdHJlYW0sICZ4bGVuX3dpdGhfaGVhZGVyKTsKKyAgICAgICAgICAgIGlmIChzdGF0dXMpCisg
ICAgICAgICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19jaXBoZXJfZmFpbDsKKworICAg
ICAgICAgICAgaWYgKHNydHBfcHJvdGVjdF9leHRlbnNpb25faGVhZGVyKHN0cmVhbSwgeGlkKSkg
eworICAgICAgICAgICAgICAgIGtleXN0cmVhbV9wb3MgPSAxOworICAgICAgICAgICAgICAgIHdo
aWxlICh4bGVuID4gMCkgeworICAgICAgICAgICAgICAgICAgICAqeHRuX2hkcl9kYXRhIF49IGtl
eXN0cmVhbVtrZXlzdHJlYW1fcG9zKytdOworICAgICAgICAgICAgICAgICAgICB4dG5faGRyX2Rh
dGErKzsKKyAgICAgICAgICAgICAgICAgICAgeGxlbi0tOworICAgICAgICAgICAgICAgIH0KKyAg
ICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgeHRuX2hkcl9kYXRhICs9IHhsZW47
CisgICAgICAgICAgICB9CiAKLSAgICAgIGlmICh4bGVuID4gMCAmJiBzcnRwX3Byb3RlY3RfZXh0
ZW5zaW9uX2hlYWRlcihzdHJlYW0sIHhpZCkpIHsKLSAgICAgICAga2V5c3RyZWFtX3BvcyA9IDI7
Ci0gICAgICAgIHdoaWxlICh4bGVuID4gMCkgewotICAgICAgICAgICp4dG5faGRyX2RhdGEgXj0g
a2V5c3RyZWFtW2tleXN0cmVhbV9wb3MrK107Ci0gICAgICAgICAgeHRuX2hkcl9kYXRhKys7Ci0g
ICAgICAgICAgeGxlbi0tOworICAgICAgICAgICAgLyogc2tpcCBwYWRkaW5nIGJ5dGVzLiAqLwor
ICAgICAgICAgICAgd2hpbGUgKHh0bl9oZHJfZGF0YSA8IHh0bl9oZHJfZW5kICYmICp4dG5faGRy
X2RhdGEgPT0gMCkgeworICAgICAgICAgICAgICAgIHh0bl9oZHJfZGF0YSsrOworICAgICAgICAg
ICAgfQogICAgICAgICB9Ci0gICAgICB9IGVsc2UgewotICAgICAgICB4dG5faGRyX2RhdGEgKz0g
eGxlbjsKLSAgICAgIH0KKyAgICB9IGVsc2UgaWYgKChudG9ocyh4dG5faGRyLT5wcm9maWxlX3Nw
ZWNpZmljKSAmIDB4MWZmZikgPT0gMHgxMDApIHsKKyAgICAgICAgLyogUkZDIDUyODUsIHNlY3Rp
b24gNC4zLiBUd28tQnl0ZSBIZWFkZXIgKi8KKyAgICAgICAgd2hpbGUgKHh0bl9oZHJfZGF0YSAr
IDEgPCB4dG5faGRyX2VuZCkgeworICAgICAgICAgICAgdWludDhfdCB4aWQgPSAqeHRuX2hkcl9k
YXRhOworICAgICAgICAgICAgdW5zaWduZWQgaW50IHhsZW4gPSAqKHh0bl9oZHJfZGF0YSArIDEp
OworICAgICAgICAgICAgdWludDMyX3QgeGxlbl93aXRoX2hlYWRlciA9IDIgKyB4bGVuOworICAg
ICAgICAgICAgeHRuX2hkcl9kYXRhICs9IDI7CisKKyAgICAgICAgICAgIGlmICh4dG5faGRyX2Rh
dGEgKyB4bGVuID4geHRuX2hkcl9lbmQpCisgICAgICAgICAgICAgICAgcmV0dXJuIHNydHBfZXJy
X3N0YXR1c19wYXJzZV9lcnI7CisKKyAgICAgICAgICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX291
dHB1dChzZXNzaW9uX2tleXMtPnJ0cF94dG5faGRyX2NpcGhlciwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBrZXlzdHJlYW0sICZ4bGVuX3dpdGhfaGVhZGVyKTsKKyAg
ICAgICAgICAgIGlmIChzdGF0dXMpCisgICAgICAgICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0
YXR1c19jaXBoZXJfZmFpbDsKKworICAgICAgICAgICAgaWYgKHhsZW4gPiAwICYmIHNydHBfcHJv
dGVjdF9leHRlbnNpb25faGVhZGVyKHN0cmVhbSwgeGlkKSkgeworICAgICAgICAgICAgICAgIGtl
eXN0cmVhbV9wb3MgPSAyOworICAgICAgICAgICAgICAgIHdoaWxlICh4bGVuID4gMCkgeworICAg
ICAgICAgICAgICAgICAgICAqeHRuX2hkcl9kYXRhIF49IGtleXN0cmVhbVtrZXlzdHJlYW1fcG9z
KytdOworICAgICAgICAgICAgICAgICAgICB4dG5faGRyX2RhdGErKzsKKyAgICAgICAgICAgICAg
ICAgICAgeGxlbi0tOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0gZWxzZSB7Cisg
ICAgICAgICAgICAgICAgeHRuX2hkcl9kYXRhICs9IHhsZW47CisgICAgICAgICAgICB9CiAKLSAg
ICAgIC8qIHNraXAgcGFkZGluZyBieXRlcy4gKi8KLSAgICAgIHdoaWxlICh4dG5faGRyX2RhdGEg
PCB4dG5faGRyX2VuZCAmJiAqeHRuX2hkcl9kYXRhID09IDApIHsKLSAgICAgICAgeHRuX2hkcl9k
YXRhKys7Ci0gICAgICB9CisgICAgICAgICAgICAvKiBza2lwIHBhZGRpbmcgYnl0ZXMuICovCisg
ICAgICAgICAgICB3aGlsZSAoeHRuX2hkcl9kYXRhIDwgeHRuX2hkcl9lbmQgJiYgKnh0bl9oZHJf
ZGF0YSA9PSAwKSB7CisgICAgICAgICAgICAgICAgeHRuX2hkcl9kYXRhKys7CisgICAgICAgICAg
ICB9CisgICAgICAgIH0KKyAgICB9IGVsc2UgeworICAgICAgICAvKiB1bnN1cHBvcnRlZCBleHRl
bnNpb24gaGVhZGVyIGZvcm1hdC4gKi8KKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19w
YXJzZV9lcnI7CiAgICAgfQotICB9IGVsc2UgewotICAgIC8qIHVuc3VwcG9ydGVkIGV4dGVuc2lv
biBoZWFkZXIgZm9ybWF0LiAqLwotICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfcGFyc2VfZXJy
OwotICB9CiAKLSAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKKyAgICByZXR1cm4gc3J0cF9l
cnJfc3RhdHVzX29rOwogfQogCi0KIC8qCiAgKiBBRUFEIHVzZXMgYSBuZXcgSVYgZm9ybWF0aW9u
IG1ldGhvZC4gIFRoaXMgZnVuY3Rpb24gaW1wbGVtZW50cwogICogc2VjdGlvbiA4LjEuIChTUlRQ
IElWIEZvcm1hdGlvbiBmb3IgQUVTLUdDTSkgb2YgUkZDNzcxNC4KQEAgLTE0NjQsNyArMTQ4Myw3
IEBAIHNydHBfcHJvY2Vzc19oZWFkZXJfZW5jcnlwdGlvbihzcnRwX3N0cmVhbV9jdHhfdCAqc3Ry
ZWFtLAogICogICAgICAgICAgICArLS0rLS0rLS0rLS0rLS0rLS0rLS0rLS0rLS0rLS0rLS0rLS0r
KgogICoKICAqIElucHV0OiAgKnNlc3Npb25fa2V5cyAtIHBvaW50ZXIgdG8gU1JUUCBzdHJlYW0g
Y29udGV4dCBzZXNzaW9uIGtleXMsCi0gKiAgICAgICAgICAgICAgICAgICAgICAgICB1c2VkIHRv
IHJldHJpZXZlIHRoZSBTQUxUIAorICogICAgICAgICAgICAgICAgICAgICAgICAgdXNlZCB0byBy
ZXRyaWV2ZSB0aGUgU0FMVAogICogICAgICAgICAqaXYgICAgIC0gUG9pbnRlciB0byByZWNlaXZl
IHRoZSBjYWxjdWxhdGVkIElWCiAgKiAgICAgICAgICpzZXEgICAgLSBUaGUgUk9DIGFuZCBTRVEg
dmFsdWUgdG8gdXNlIGZvciB0aGUKICAqICAgICAgICAgICAgICAgICAgIElWIGNhbGN1bGF0aW9u
LgpAQCAtMTQ3MiwxOSArMTQ5MSwyMCBAQCBzcnRwX3Byb2Nlc3NfaGVhZGVyX2VuY3J5cHRpb24o
c3J0cF9zdHJlYW1fY3R4X3QgKnN0cmVhbSwKICAqCiAgKi8KIAotc3RhdGljIHZvaWQgc3J0cF9j
YWxjX2FlYWRfaXYoc3J0cF9zZXNzaW9uX2tleXNfdCAqc2Vzc2lvbl9rZXlzLCB2MTI4X3QgKml2
LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF94dGRfc2VxX251bV90ICpzZXEs
IHNydHBfaGRyX3QgKmhkcikKK3N0YXRpYyB2b2lkIHNydHBfY2FsY19hZWFkX2l2KHNydHBfc2Vz
c2lvbl9rZXlzX3QgKnNlc3Npb25fa2V5cywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHYxMjhfdCAqaXYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcnRwX3h0ZF9zZXFf
bnVtX3QgKnNlcSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfaGRyX3QgKmhk
cikKIHsKLSAgICB2MTI4X3QJaW47Ci0gICAgdjEyOF90CXNhbHQ7CisgICAgdjEyOF90IGluOwor
ICAgIHYxMjhfdCBzYWx0OwogCiAjaWZkZWYgTk9fNjRCSVRfTUFUSAotICAgIHVpbnQzMl90IGxv
Y2FsX3JvYyA9ICgoaGlnaDMyKCpzZXEpIDw8IDE2KSB8Ci0gICAgICAgICAgICAgICAgICAgICAg
ICAgKGxvdzMyKCpzZXEpID4+IDE2KSk7Ci0gICAgdWludDE2X3QgbG9jYWxfc2VxID0gKHVpbnQx
Nl90KSAobG93MzIoKnNlcSkpOworICAgIHVpbnQzMl90IGxvY2FsX3JvYyA9ICgoaGlnaDMyKCpz
ZXEpIDw8IDE2KSB8IChsb3czMigqc2VxKSA+PiAxNikpOworICAgIHVpbnQxNl90IGxvY2FsX3Nl
cSA9ICh1aW50MTZfdCkobG93MzIoKnNlcSkpOwogI2Vsc2UKICAgICB1aW50MzJfdCBsb2NhbF9y
b2MgPSAodWludDMyX3QpKCpzZXEgPj4gMTYpOwotICAgIHVpbnQxNl90IGxvY2FsX3NlcSA9ICh1
aW50MTZfdCkgKnNlcTsKKyAgICB1aW50MTZfdCBsb2NhbF9zZXEgPSAodWludDE2X3QpKnNlcTsK
ICNlbmRpZgogCiAgICAgbWVtc2V0KCZpbiwgMCwgc2l6ZW9mKHYxMjhfdCkpOwpAQCAtMTUxMiwx
NDkgKzE1MzIsMTQ1IEBAIHN0YXRpYyB2b2lkIHNydHBfY2FsY19hZWFkX2l2KHNydHBfc2Vzc2lv
bl9rZXlzX3QgKnNlc3Npb25fa2V5cywgdjEyOF90ICppdiwKICAgICB2MTI4X3hvcihpdiwgJmlu
LCAmc2FsdCk7CiB9CiAKK3NydHBfc2Vzc2lvbl9rZXlzX3QgKnNydHBfZ2V0X3Nlc3Npb25fa2V5
cyhzcnRwX3N0cmVhbV9jdHhfdCAqc3RyZWFtLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHVpbnQ4X3QgKmhkciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBjb25zdCB1bnNpZ25lZCBpbnQgKnBrdF9vY3RldF9sZW4sCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50ICpta2lf
c2l6ZSkKK3sKKyAgICB1bnNpZ25lZCBpbnQgYmFzZV9ta2lfc3RhcnRfbG9jYXRpb24gPSAqcGt0
X29jdGV0X2xlbjsKKyAgICB1bnNpZ25lZCBpbnQgbWtpX3N0YXJ0X2xvY2F0aW9uID0gMDsKKyAg
ICB1bnNpZ25lZCBpbnQgdGFnX2xlbiA9IDA7CisgICAgdW5zaWduZWQgaW50IGkgPSAwOworCisg
ICAgLy8gRGV0ZXJtaW5lIHRoZSBhdXRoZW50aWNhdGlvbiB0YWcgc2l6ZQorICAgIGlmIChzdHJl
YW0tPnNlc3Npb25fa2V5c1swXS5ydHBfY2lwaGVyLT5hbGdvcml0aG0gPT0gU1JUUF9BRVNfR0NN
XzEyOCB8fAorICAgICAgICBzdHJlYW0tPnNlc3Npb25fa2V5c1swXS5ydHBfY2lwaGVyLT5hbGdv
cml0aG0gPT0gU1JUUF9BRVNfR0NNXzI1NikgeworICAgICAgICB0YWdfbGVuID0gMDsKKyAgICB9
IGVsc2UgeworICAgICAgICB0YWdfbGVuID0gc3J0cF9hdXRoX2dldF90YWdfbGVuZ3RoKHN0cmVh
bS0+c2Vzc2lvbl9rZXlzWzBdLnJ0cF9hdXRoKTsKKyAgICB9CisKKyAgICBpZiAodGFnX2xlbiA+
IGJhc2VfbWtpX3N0YXJ0X2xvY2F0aW9uKSB7CisgICAgICAgICpta2lfc2l6ZSA9IDA7CisgICAg
ICAgIHJldHVybiBOVUxMOworICAgIH0KKworICAgIGJhc2VfbWtpX3N0YXJ0X2xvY2F0aW9uIC09
IHRhZ19sZW47CisKKyAgICBmb3IgKGkgPSAwOyBpIDwgc3RyZWFtLT5udW1fbWFzdGVyX2tleXM7
IGkrKykgeworICAgICAgICBpZiAoc3RyZWFtLT5zZXNzaW9uX2tleXNbaV0ubWtpX3NpemUgIT0g
MCAmJgorICAgICAgICAgICAgc3RyZWFtLT5zZXNzaW9uX2tleXNbaV0ubWtpX3NpemUgPD0gYmFz
ZV9ta2lfc3RhcnRfbG9jYXRpb24pIHsKKyAgICAgICAgICAgICpta2lfc2l6ZSA9IHN0cmVhbS0+
c2Vzc2lvbl9rZXlzW2ldLm1raV9zaXplOworICAgICAgICAgICAgbWtpX3N0YXJ0X2xvY2F0aW9u
ID0gYmFzZV9ta2lfc3RhcnRfbG9jYXRpb24gLSAqbWtpX3NpemU7CisKKyAgICAgICAgICAgIGlm
IChtZW1jbXAoaGRyICsgbWtpX3N0YXJ0X2xvY2F0aW9uLCBzdHJlYW0tPnNlc3Npb25fa2V5c1tp
XS5ta2lfaWQsCisgICAgICAgICAgICAgICAgICAgICAgICpta2lfc2l6ZSkgPT0gMCkgeworICAg
ICAgICAgICAgICAgIHJldHVybiAmc3RyZWFtLT5zZXNzaW9uX2tleXNbaV07CisgICAgICAgICAg
ICB9CisgICAgICAgIH0KKyAgICB9CiAKLXNydHBfc2Vzc2lvbl9rZXlzX3QqIAotc3J0cF9nZXRf
c2Vzc2lvbl9rZXlzKHNydHBfc3RyZWFtX2N0eF90ICpzdHJlYW0sIHVpbnQ4X3QqIGhkciwKLSAg
ICAgICAgICAgICAgICAgICAgICBjb25zdCB1bnNpZ25lZCBpbnQqIHBrdF9vY3RldF9sZW4sCi0g
ICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50KiBta2lfc2l6ZSkgewotICB1bnNpZ25l
ZCBpbnQgYmFzZV9ta2lfc3RhcnRfbG9jYXRpb24gPSAqcGt0X29jdGV0X2xlbjsKLSAgdW5zaWdu
ZWQgaW50IG1raV9zdGFydF9sb2NhdGlvbiA9IDA7Ci0gIHVuc2lnbmVkIGludCB0YWdfbGVuID0g
MDsKLSAgdW5zaWduZWQgaW50IGkgPSAwOwotCi0gIC8vIERldGVybWluZSB0aGUgYXV0aGVudGlj
YXRpb24gdGFnIHNpemUKLSAgaWYgKHN0cmVhbS0+c2Vzc2lvbl9rZXlzWzBdLnJ0cF9jaXBoZXIt
PmFsZ29yaXRobSA9PSBTUlRQX0FFU19HQ01fMTI4IHx8Ci0gICAgICBzdHJlYW0tPnNlc3Npb25f
a2V5c1swXS5ydHBfY2lwaGVyLT5hbGdvcml0aG0gPT0gU1JUUF9BRVNfR0NNXzI1NikgewotICAg
ICAgdGFnX2xlbiA9IDA7Ci0gIH0gZWxzZSB7Ci0gICAgICB0YWdfbGVuID0gc3J0cF9hdXRoX2dl
dF90YWdfbGVuZ3RoKHN0cmVhbS0+c2Vzc2lvbl9rZXlzWzBdLnJ0cF9hdXRoKTsKLSAgfQotCi0g
IGlmICh0YWdfbGVuID4gYmFzZV9ta2lfc3RhcnRfbG9jYXRpb24pIHsKLSAgICAgKm1raV9zaXpl
ID0gMDsKLSAgICAgcmV0dXJuIE5VTEw7Ci0gIH0KLQotICBiYXNlX21raV9zdGFydF9sb2NhdGlv
biAtPSB0YWdfbGVuOwotCi0gIGZvciAoaSA9IDA7IGkgPCBzdHJlYW0tPm51bV9tYXN0ZXJfa2V5
czsgaSsrKSB7Ci0gICAgICBpZiAoc3RyZWFtLT5zZXNzaW9uX2tleXNbaV0ubWtpX3NpemUgIT0g
MCkgewotICAgICAgICAgICpta2lfc2l6ZSA9IHN0cmVhbS0+c2Vzc2lvbl9rZXlzW2ldLm1raV9z
aXplOwotICAgICAgICAgIG1raV9zdGFydF9sb2NhdGlvbiA9IGJhc2VfbWtpX3N0YXJ0X2xvY2F0
aW9uIC0gKm1raV9zaXplOwotCi0gICAgICAgICAgaWYgKCBta2lfc3RhcnRfbG9jYXRpb24gPj0g
Km1raV9zaXplICYmCi0gICAgICAgICAgICAgIG1lbWNtcChoZHIgKyBta2lfc3RhcnRfbG9jYXRp
b24sIHN0cmVhbS0+c2Vzc2lvbl9rZXlzW2ldLm1raV9pZCwgKm1raV9zaXplKSA9PSAwICkgewot
ICAgICAgICAgICAgICByZXR1cm4gJnN0cmVhbS0+c2Vzc2lvbl9rZXlzW2ldOwotCSAgfQotICAg
ICAgfQotICB9Ci0KLSAgKm1raV9zaXplID0gMDsKLSAgcmV0dXJuIE5VTEw7CisgICAgKm1raV9z
aXplID0gMDsKKyAgICByZXR1cm4gTlVMTDsKIH0KIAotc3RhdGljIHNydHBfZXJyX3N0YXR1c190
Ci1zcnRwX2VzdGltYXRlX2luZGV4KHNydHBfcmRieF90ICpyZGJ4LAotICAgICAgICAgICAgICAg
ICAgICB1aW50MzJfdCByb2MsCi0gICAgICAgICAgICAgICAgICAgIHNydHBfeHRkX3NlcV9udW1f
dCAqZXN0LAotICAgICAgICAgICAgICAgICAgICBzcnRwX3NlcXVlbmNlX251bWJlcl90IHNlcSwK
LSAgICAgICAgICAgICAgICAgICAgaW50ICpkZWx0YSkKK3N0YXRpYyBzcnRwX2Vycl9zdGF0dXNf
dCBzcnRwX2VzdGltYXRlX2luZGV4KHNydHBfcmRieF90ICpyZGJ4LAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3Qgcm9jLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF94dGRfc2VxX251bV90ICplc3Qs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcnRwX3NlcXVl
bmNlX251bWJlcl90IHNlcSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGludCAqZGVsdGEpCiB7CiAjaWZkZWYgTk9fNjRCSVRfTUFUSAotICB1aW50MzJfdCBp
bnRlcm5hbF9wa3RfaWR4X3JlZHVjZWQ7Ci0gIHVpbnQzMl90IGV4dGVybmFsX3BrdF9pZHhfcmVk
dWNlZDsKLSAgdWludDMyX3QgaW50ZXJuYWxfcm9jOwotICB1aW50MzJfdCByb2NfZGlmZmVyZW5j
ZTsKKyAgICB1aW50MzJfdCBpbnRlcm5hbF9wa3RfaWR4X3JlZHVjZWQ7CisgICAgdWludDMyX3Qg
ZXh0ZXJuYWxfcGt0X2lkeF9yZWR1Y2VkOworICAgIHVpbnQzMl90IGludGVybmFsX3JvYzsKKyAg
ICB1aW50MzJfdCByb2NfZGlmZmVyZW5jZTsKICNlbmRpZgogCiAjaWZkZWYgTk9fNjRCSVRfTUFU
SAotICAqZXN0ID0gKHNydHBfeHRkX3NlcV9udW1fdCltYWtlNjQocm9jID4+IDE2LCAocm9jIDw8
IDE2KSB8IHNlcSk7Ci0gICpkZWx0YSA9IGxvdzMyKGVzdCkgLSByZGJ4LT5pbmRleDsKKyAgICAq
ZXN0ID0gKHNydHBfeHRkX3NlcV9udW1fdCltYWtlNjQocm9jID4+IDE2LCAocm9jIDw8IDE2KSB8
IHNlcSk7CisgICAgKmRlbHRhID0gbG93MzIoZXN0KSAtIHJkYngtPmluZGV4OwogI2Vsc2UKLSAg
KmVzdCA9IChzcnRwX3h0ZF9zZXFfbnVtX3QpKCgodWludDY0X3Qpcm9jKSA8PCAxNikgfCBzZXE7
Ci0gICpkZWx0YSA9IChpbnQpKCplc3QgLSByZGJ4LT5pbmRleCk7CisgICAgKmVzdCA9IChzcnRw
X3h0ZF9zZXFfbnVtX3QpKCgodWludDY0X3Qpcm9jKSA8PCAxNikgfCBzZXE7CisgICAgKmRlbHRh
ID0gKGludCkoKmVzdCAtIHJkYngtPmluZGV4KTsKICNlbmRpZgogCi0gIGlmICgqZXN0ID4gcmRi
eC0+aW5kZXgpIHsKKyAgICBpZiAoKmVzdCA+IHJkYngtPmluZGV4KSB7CiAjaWZkZWYgTk9fNjRC
SVRfTUFUSAotICAgIGludGVybmFsX3JvYyA9ICh1aW50MzJfdCkocmRieC0+aW5kZXggPj4gMTYp
OwotICAgIHJvY19kaWZmZXJlbmNlID0gcm9jIC0gaW50ZXJuYWxfcm9jOwotICAgIGlmIChyb2Nf
ZGlmZmVyZW5jZSA+IDEpIHsKLSAgICAgICpkZWx0YSA9IDA7Ci0gICAgICByZXR1cm4gc3J0cF9l
cnJfc3RhdHVzX3BrdF9pZHhfYWR2OwotICAgIH0KKyAgICAgICAgaW50ZXJuYWxfcm9jID0gKHVp
bnQzMl90KShyZGJ4LT5pbmRleCA+PiAxNik7CisgICAgICAgIHJvY19kaWZmZXJlbmNlID0gcm9j
IC0gaW50ZXJuYWxfcm9jOworICAgICAgICBpZiAocm9jX2RpZmZlcmVuY2UgPiAxKSB7CisgICAg
ICAgICAgICAqZGVsdGEgPSAwOworICAgICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19w
a3RfaWR4X2FkdjsKKyAgICAgICAgfQogCi0gICAgaW50ZXJuYWxfcGt0X2lkeF9yZWR1Y2VkID0g
KHVpbnQzMl90KShyZGJ4LT5pbmRleCAmIDB4RkZGRik7Ci0gICAgZXh0ZXJuYWxfcGt0X2lkeF9y
ZWR1Y2VkID0gKHVpbnQzMl90KSgocm9jX2RpZmZlcmVuY2UgPDwgMTYpIHwgc2VxKTsKKyAgICAg
ICAgaW50ZXJuYWxfcGt0X2lkeF9yZWR1Y2VkID0gKHVpbnQzMl90KShyZGJ4LT5pbmRleCAmIDB4
RkZGRik7CisgICAgICAgIGV4dGVybmFsX3BrdF9pZHhfcmVkdWNlZCA9ICh1aW50MzJfdCkoKHJv
Y19kaWZmZXJlbmNlIDw8IDE2KSB8IHNlcSk7CiAKLSAgICBpZiAoZXh0ZXJuYWxfcGt0X2lkeF9y
ZWR1Y2VkIC0gaW50ZXJuYWxfcGt0X2lkeF9yZWR1Y2VkID4KLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXFfbnVtX21lZGlhbikgewotICAgICAg
KmRlbHRhID0gMDsKLSAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfcGt0X2lkeF9hZHY7Ci0g
ICAgfQorICAgICAgICBpZiAoZXh0ZXJuYWxfcGt0X2lkeF9yZWR1Y2VkIC0gaW50ZXJuYWxfcGt0
X2lkeF9yZWR1Y2VkID4KKyAgICAgICAgICAgIHNlcV9udW1fbWVkaWFuKSB7CisgICAgICAgICAg
ICAqZGVsdGEgPSAwOworICAgICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19wa3RfaWR4
X2FkdjsKKyAgICAgICAgfQogI2Vsc2UKLSAgICBpZiAoKmVzdCAtIHJkYngtPmluZGV4ID4gc2Vx
X251bV9tZWRpYW4pIHsKLSAgICAgICpkZWx0YSA9IDA7Ci0gICAgICByZXR1cm4gc3J0cF9lcnJf
c3RhdHVzX3BrdF9pZHhfYWR2OwotICAgIH0KKyAgICAgICAgaWYgKCplc3QgLSByZGJ4LT5pbmRl
eCA+IHNlcV9udW1fbWVkaWFuKSB7CisgICAgICAgICAgICAqZGVsdGEgPSAwOworICAgICAgICAg
ICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19wa3RfaWR4X2FkdjsKKyAgICAgICAgfQogI2VuZGlm
Ci0gIH0gZWxzZSBpZiAoKmVzdCA8IHJkYngtPmluZGV4KSB7CisgICAgfSBlbHNlIGlmICgqZXN0
IDwgcmRieC0+aW5kZXgpIHsKICNpZmRlZiBOT182NEJJVF9NQVRICiAKLSAgICBpbnRlcm5hbF9y
b2MgPSAodWludDMyX3QpKHJkYngtPmluZGV4ID4+IDE2KTsKLSAgICByb2NfZGlmZmVyZW5jZSA9
IGludGVybmFsX3JvYyAtIHJvYzsKLSAgICBpZiAocm9jX2RpZmZlcmVuY2UgPiAxKSB7Ci0gICAg
ICAqZGVsdGEgPSAwOwotICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19wa3RfaWR4X2FkdjsK
LSAgICB9CisgICAgICAgIGludGVybmFsX3JvYyA9ICh1aW50MzJfdCkocmRieC0+aW5kZXggPj4g
MTYpOworICAgICAgICByb2NfZGlmZmVyZW5jZSA9IGludGVybmFsX3JvYyAtIHJvYzsKKyAgICAg
ICAgaWYgKHJvY19kaWZmZXJlbmNlID4gMSkgeworICAgICAgICAgICAgKmRlbHRhID0gMDsKKyAg
ICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfcGt0X2lkeF9hZHY7CisgICAgICAgIH0K
IAotICAgIGludGVybmFsX3BrdF9pZHhfcmVkdWNlZCA9Ci0gICAgICAgICAgICAgICAgKHVpbnQz
Ml90KSgocm9jX2RpZmZlcmVuY2UgPDwgMTYpIHwgcmRieC0+aW5kZXggJiAweEZGRkYpOwotICAg
IGV4dGVybmFsX3BrdF9pZHhfcmVkdWNlZCA9ICh1aW50MzJfdCkoc2VxKTsKKyAgICAgICAgaW50
ZXJuYWxfcGt0X2lkeF9yZWR1Y2VkID0KKyAgICAgICAgICAgICh1aW50MzJfdCkoKHJvY19kaWZm
ZXJlbmNlIDw8IDE2KSB8IHJkYngtPmluZGV4ICYgMHhGRkZGKTsKKyAgICAgICAgZXh0ZXJuYWxf
cGt0X2lkeF9yZWR1Y2VkID0gKHVpbnQzMl90KShzZXEpOwogCi0gICAgaWYgKGludGVybmFsX3Br
dF9pZHhfcmVkdWNlZCAtIGV4dGVybmFsX3BrdF9pZHhfcmVkdWNlZCA+Ci0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VxX251bV9tZWRpYW4pIHsK
LSAgICAgICpkZWx0YSA9IDA7Ci0gICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX3BrdF9pZHhf
b2xkOwotICAgIH0KKyAgICAgICAgaWYgKGludGVybmFsX3BrdF9pZHhfcmVkdWNlZCAtIGV4dGVy
bmFsX3BrdF9pZHhfcmVkdWNlZCA+CisgICAgICAgICAgICBzZXFfbnVtX21lZGlhbikgeworICAg
ICAgICAgICAgKmRlbHRhID0gMDsKKyAgICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNf
cGt0X2lkeF9vbGQ7CisgICAgICAgIH0KICNlbHNlCi0gICAgaWYgKHJkYngtPmluZGV4IC0gKmVz
dCA+IHNlcV9udW1fbWVkaWFuKSB7Ci0gICAgICAqZGVsdGEgPSAwOwotICAgICAgcmV0dXJuIHNy
dHBfZXJyX3N0YXR1c19wa3RfaWR4X29sZDsKLSAgICB9CisgICAgICAgIGlmIChyZGJ4LT5pbmRl
eCAtICplc3QgPiBzZXFfbnVtX21lZGlhbikgeworICAgICAgICAgICAgKmRlbHRhID0gMDsKKyAg
ICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfcGt0X2lkeF9vbGQ7CisgICAgICAgIH0K
ICNlbmRpZgotICB9CisgICAgfQogCi0gIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CisgICAg
cmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0KIAotc3RhdGljIHNydHBfZXJyX3N0YXR1c190
Ci1zcnRwX2dldF9lc3RfcGt0X2luZGV4KHNydHBfaGRyX3QgKmhkciwKLSAgICAgICAgICAgICAg
ICAgICAgICAgc3J0cF9zdHJlYW1fY3R4X3QgKnN0cmVhbSwKLSAgICAgICAgICAgICAgICAgICAg
ICAgc3J0cF94dGRfc2VxX251bV90ICplc3QsCi0gICAgICAgICAgICAgICAgICAgICAgIGludCAq
ZGVsdGEpCitzdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9nZXRfZXN0X3BrdF9pbmRleChz
cnRwX2hkcl90ICpoZHIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBzcnRwX3N0cmVhbV9jdHhfdCAqc3RyZWFtLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF94dGRfc2VxX251bV90ICplc3QsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgKmRlbHRhKQog
ewotICBzcnRwX2Vycl9zdGF0dXNfdCByZXN1bHQgPSBzcnRwX2Vycl9zdGF0dXNfb2s7Ci0KLSAg
aWYgKHN0cmVhbS0+cGVuZGluZ19yb2MpIHsKLSAgICByZXN1bHQgPSBzcnRwX2VzdGltYXRlX2lu
ZGV4KCZzdHJlYW0tPnJ0cF9yZGJ4LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
c3RyZWFtLT5wZW5kaW5nX3JvYywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVz
dCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG50b2hzKGhkci0+c2VxKSwKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlbHRhKTsKLSAgfSBlbHNlIHsKLSAgICAv
KiBlc3RpbWF0ZSBwYWNrZXQgaW5kZXggZnJvbSBzZXEuIG51bS4gaW4gaGVhZGVyICovCi0gICAg
KmRlbHRhID0gc3J0cF9yZGJ4X2VzdGltYXRlX2luZGV4KCZzdHJlYW0tPnJ0cF9yZGJ4LAotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlc3QsCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIG50b2hzKGhkci0+c2VxKSk7Ci0gIH0KKyAgICBzcnRwX2Vy
cl9zdGF0dXNfdCByZXN1bHQgPSBzcnRwX2Vycl9zdGF0dXNfb2s7CisKKyAgICBpZiAoc3RyZWFt
LT5wZW5kaW5nX3JvYykgeworICAgICAgICByZXN1bHQgPSBzcnRwX2VzdGltYXRlX2luZGV4KCZz
dHJlYW0tPnJ0cF9yZGJ4LCBzdHJlYW0tPnBlbmRpbmdfcm9jLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGVzdCwgbnRvaHMoaGRyLT5zZXEpLCBkZWx0YSk7CisgICAgfSBl
bHNlIHsKKyAgICAgICAgLyogZXN0aW1hdGUgcGFja2V0IGluZGV4IGZyb20gc2VxLiBudW0uIGlu
IGhlYWRlciAqLworICAgICAgICAqZGVsdGEgPQorICAgICAgICAgICAgc3J0cF9yZGJ4X2VzdGlt
YXRlX2luZGV4KCZzdHJlYW0tPnJ0cF9yZGJ4LCBlc3QsIG50b2hzKGhkci0+c2VxKSk7CisgICAg
fQogCiAjaWZkZWYgTk9fNjRCSVRfTUFUSAotICBkZWJ1Z19wcmludDIobW9kX3NydHAsICJlc3Rp
bWF0ZWQgdV9wYWNrZXQgaW5kZXg6ICUwOHglMDh4IiwgaGlnaDMyKCplc3QpLCBsb3czMigqZXN0
KSk7CisgICAgZGVidWdfcHJpbnQyKG1vZF9zcnRwLCAiZXN0aW1hdGVkIHVfcGFja2V0IGluZGV4
OiAlMDh4JTA4eCIsIGhpZ2gzMigqZXN0KSwKKyAgICAgICAgICAgICAgICAgbG93MzIoKmVzdCkp
OwogI2Vsc2UKLSAgZGVidWdfcHJpbnQobW9kX3NydHAsICJlc3RpbWF0ZWQgdV9wYWNrZXQgaW5k
ZXg6ICUwMTZsbHgiLCAqZXN0KTsKKyAgICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgImVzdGltYXRl
ZCB1X3BhY2tldCBpbmRleDogJTAxNmxseCIsICplc3QpOwogI2VuZGlmCi0gIHJldHVybiByZXN1
bHQ7CisgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAogLyoKQEAgLTE2NjIsMTYgKzE2NzgsMTggQEAg
c3J0cF9nZXRfZXN0X3BrdF9pbmRleChzcnRwX2hkcl90ICpoZHIsCiAgKiB3aGljaCBjdXJyZW50
bHkgc3VwcG9ydHMgQUVTLUdDTSBlbmNyeXB0aW9uLiAgQWxsIHBhY2tldHMgYXJlCiAgKiBlbmNy
eXB0ZWQgYW5kIGF1dGhlbnRpY2F0ZWQuCiAgKi8KLXN0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdAot
c3J0cF9wcm90ZWN0X2FlYWQgKHNydHBfY3R4X3QgKmN0eCwgc3J0cF9zdHJlYW1fY3R4X3QgKnN0
cmVhbSwKLSAgICAgICAgICAgICAgICAgICB2b2lkICpydHBfaGRyLCB1bnNpZ25lZCBpbnQgKnBr
dF9vY3RldF9sZW4sCi0gICAgICAgICAgICAgICAgICAgc3J0cF9zZXNzaW9uX2tleXNfdCAqc2Vz
c2lvbl9rZXlzLCB1bnNpZ25lZCBpbnQgdXNlX21raSkKK3N0YXRpYyBzcnRwX2Vycl9zdGF0dXNf
dCBzcnRwX3Byb3RlY3RfYWVhZChzcnRwX2N0eF90ICpjdHgsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF9zdHJlYW1fY3R4X3QgKnN0cmVhbSwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2b2lkICpydHBfaGRyLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCAqcGt0
X29jdGV0X2xlbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBz
cnRwX3Nlc3Npb25fa2V5c190ICpzZXNzaW9uX2tleXMsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IHVzZV9ta2kpCiB7Ci0gICAgc3J0cF9o
ZHJfdCAqaGRyID0gKHNydHBfaGRyX3QqKXJ0cF9oZHI7Ci0gICAgdWludDMyX3QgKmVuY19zdGFy
dDsgICAgICAgIC8qIHBvaW50ZXIgdG8gc3RhcnQgb2YgZW5jcnlwdGVkIHBvcnRpb24gICovCi0g
ICAgaW50IGVuY19vY3RldF9sZW4gPSAwOyAvKiBudW1iZXIgb2Ygb2N0ZXRzIGluIGVuY3J5cHRl
ZCBwb3J0aW9uICAqLwotICAgIHNydHBfeHRkX3NlcV9udW1fdCBlc3Q7ICAgICAgICAgIC8qIGVz
dGltYXRlZCB4dGRfc2VxX251bV90IG9mICpoZHIgICAgICAgICovCi0gICAgaW50IGRlbHRhOyAg
ICAgICAgICAgICAgICAgIC8qIGRlbHRhIG9mIGxvY2FsIHBrdCBpZHggYW5kIHRoYXQgaW4gaGRy
ICovCisgICAgc3J0cF9oZHJfdCAqaGRyID0gKHNydHBfaGRyX3QgKilydHBfaGRyOworICAgIHVp
bnQzMl90ICplbmNfc3RhcnQ7ICAgIC8qIHBvaW50ZXIgdG8gc3RhcnQgb2YgZW5jcnlwdGVkIHBv
cnRpb24gICovCisgICAgaW50IGVuY19vY3RldF9sZW4gPSAwOyAgLyogbnVtYmVyIG9mIG9jdGV0
cyBpbiBlbmNyeXB0ZWQgcG9ydGlvbiAgKi8KKyAgICBzcnRwX3h0ZF9zZXFfbnVtX3QgZXN0OyAv
KiBlc3RpbWF0ZWQgeHRkX3NlcV9udW1fdCBvZiAqaGRyICAgICAgICAqLworICAgIGludCBkZWx0
YTsgICAgICAgICAgICAgIC8qIGRlbHRhIG9mIGxvY2FsIHBrdCBpZHggYW5kIHRoYXQgaW4gaGRy
ICovCiAgICAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVzOwogICAgIHVpbnQzMl90IHRhZ19sZW47
CiAgICAgdjEyOF90IGl2OwpAQCAtMTcwOCwxNyArMTcyNiwxOCBAQCBzcnRwX3Byb3RlY3RfYWVh
ZCAoc3J0cF9jdHhfdCAqY3R4LCBzcnRwX3N0cmVhbV9jdHhfdCAqc3RyZWFtLAogICAgICAqIGV4
dGVuc2lvbiwgaWYgcHJlc2VudDsgb3RoZXJ3aXNlLCBpdCBzdGFydHMgYWZ0ZXIgdGhlIGxhc3Qg
Y3NyYywKICAgICAgKiBpZiBhbnkgYXJlIHByZXNlbnQKICAgICAgKi8KLSAgICAgZW5jX3N0YXJ0
ID0gKHVpbnQzMl90KiloZHIgKyB1aW50MzJzX2luX3J0cF9oZWFkZXIgKyBoZHItPmNjOwotICAg
ICBpZiAoaGRyLT54ID09IDEpIHsKLSAgICAgICAgIHh0bl9oZHIgPSAoc3J0cF9oZHJfeHRuZF90
KillbmNfc3RhcnQ7Ci0gICAgICAgICBlbmNfc3RhcnQgKz0gKG50b2hzKHh0bl9oZHItPmxlbmd0
aCkgKyAxKTsKLSAgICAgfQotICAgICAvKiBub3RlOiB0aGUgcGFzc2VkIHNpemUgaXMgd2l0aG91
dCB0aGUgYXV0aCB0YWcgKi8KLSAgICAgaWYgKCEoKHVpbnQ4X3QqKWVuY19zdGFydCA8PSAodWlu
dDhfdCopaGRyICsgKnBrdF9vY3RldF9sZW4pKQotICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0
YXR1c19wYXJzZV9lcnI7Ci0gICAgIGVuY19vY3RldF9sZW4gPSAoaW50KSgqcGt0X29jdGV0X2xl
biAtCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKHVpbnQ4X3QqKWVuY19z
dGFydCAtICh1aW50OF90KiloZHIpKTsKLSAgICAgaWYgKGVuY19vY3RldF9sZW4gPCAwKSByZXR1
cm4gc3J0cF9lcnJfc3RhdHVzX3BhcnNlX2VycjsKKyAgICBlbmNfc3RhcnQgPSAodWludDMyX3Qg
KiloZHIgKyB1aW50MzJzX2luX3J0cF9oZWFkZXIgKyBoZHItPmNjOworICAgIGlmIChoZHItPngg
PT0gMSkgeworICAgICAgICB4dG5faGRyID0gKHNydHBfaGRyX3h0bmRfdCAqKWVuY19zdGFydDsK
KyAgICAgICAgZW5jX3N0YXJ0ICs9IChudG9ocyh4dG5faGRyLT5sZW5ndGgpICsgMSk7CisgICAg
fQorICAgIC8qIG5vdGU6IHRoZSBwYXNzZWQgc2l6ZSBpcyB3aXRob3V0IHRoZSBhdXRoIHRhZyAq
LworICAgIGlmICghKCh1aW50OF90ICopZW5jX3N0YXJ0IDw9ICh1aW50OF90ICopaGRyICsgKnBr
dF9vY3RldF9sZW4pKQorICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX3BhcnNlX2VycjsK
KyAgICBlbmNfb2N0ZXRfbGVuID0KKyAgICAgICAgKGludCkoKnBrdF9vY3RldF9sZW4gLSAoKHVp
bnQ4X3QgKillbmNfc3RhcnQgLSAodWludDhfdCAqKWhkcikpOworICAgIGlmIChlbmNfb2N0ZXRf
bGVuIDwgMCkKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19wYXJzZV9lcnI7CiAKICAg
ICAvKgogICAgICAqIGVzdGltYXRlIHRoZSBwYWNrZXQgaW5kZXggdXNpbmcgdGhlIHN0YXJ0IG9m
IHRoZSByZXBsYXkgd2luZG93CkBAIC0xNzI3LDE2ICsxNzQ2LDE2IEBAIHNydHBfcHJvdGVjdF9h
ZWFkIChzcnRwX2N0eF90ICpjdHgsIHNydHBfc3RyZWFtX2N0eF90ICpzdHJlYW0sCiAgICAgZGVs
dGEgPSBzcnRwX3JkYnhfZXN0aW1hdGVfaW5kZXgoJnN0cmVhbS0+cnRwX3JkYngsICZlc3QsIG50
b2hzKGhkci0+c2VxKSk7CiAgICAgc3RhdHVzID0gc3J0cF9yZGJ4X2NoZWNrKCZzdHJlYW0tPnJ0
cF9yZGJ4LCBkZWx0YSk7CiAgICAgaWYgKHN0YXR1cykgewotCWlmIChzdGF0dXMgIT0gc3J0cF9l
cnJfc3RhdHVzX3JlcGxheV9mYWlsIHx8ICFzdHJlYW0tPmFsbG93X3JlcGVhdF90eCkgewotCSAg
ICByZXR1cm4gc3RhdHVzOyAgLyogd2UndmUgYmVlbiBhc2tlZCB0byByZXVzZSBhbiBpbmRleCAq
LwotCX0KKyAgICAgICAgaWYgKHN0YXR1cyAhPSBzcnRwX2Vycl9zdGF0dXNfcmVwbGF5X2ZhaWwg
fHwgIXN0cmVhbS0+YWxsb3dfcmVwZWF0X3R4KSB7CisgICAgICAgICAgICByZXR1cm4gc3RhdHVz
OyAvKiB3ZSd2ZSBiZWVuIGFza2VkIHRvIHJldXNlIGFuIGluZGV4ICovCisgICAgICAgIH0KICAg
ICB9IGVsc2UgewotCXNydHBfcmRieF9hZGRfaW5kZXgoJnN0cmVhbS0+cnRwX3JkYngsIGRlbHRh
KTsKKyAgICAgICAgc3J0cF9yZGJ4X2FkZF9pbmRleCgmc3RyZWFtLT5ydHBfcmRieCwgZGVsdGEp
OwogICAgIH0KIAogI2lmZGVmIE5PXzY0QklUX01BVEgKLSAgICBkZWJ1Z19wcmludDIobW9kX3Ny
dHAsICJlc3RpbWF0ZWQgcGFja2V0IGluZGV4OiAlMDh4JTA4eCIsCi0gICAgICAgICAgICAgICAg
IGhpZ2gzMihlc3QpLCBsb3czMihlc3QpKTsKKyAgICBkZWJ1Z19wcmludDIobW9kX3NydHAsICJl
c3RpbWF0ZWQgcGFja2V0IGluZGV4OiAlMDh4JTA4eCIsIGhpZ2gzMihlc3QpLAorICAgICAgICAg
ICAgICAgICBsb3czMihlc3QpKTsKICNlbHNlCiAgICAgZGVidWdfcHJpbnQobW9kX3NydHAsICJl
c3RpbWF0ZWQgcGFja2V0IGluZGV4OiAlMDE2bGx4IiwgZXN0KTsKICNlbmRpZgpAQCAtMTc0NSw1
MCArMTc2NCw1MCBAQCBzcnRwX3Byb3RlY3RfYWVhZCAoc3J0cF9jdHhfdCAqY3R4LCBzcnRwX3N0
cmVhbV9jdHhfdCAqc3RyZWFtLAogICAgICAqIEFFQUQgdXNlcyBhIG5ldyBJViBmb3JtYXRpb24g
bWV0aG9kCiAgICAgICovCiAgICAgc3J0cF9jYWxjX2FlYWRfaXYoc2Vzc2lvbl9rZXlzLCAmaXYs
ICZlc3QsIGhkcik7Ci0gICAgLyogc2hpZnQgZXN0LCBwdXQgaW50byBuZXR3b3JrIGJ5dGUgb3Jk
ZXIgKi8KKy8qIHNoaWZ0IGVzdCwgcHV0IGludG8gbmV0d29yayBieXRlIG9yZGVyICovCiAjaWZk
ZWYgTk9fNjRCSVRfTUFUSAotICAgIGVzdCA9IGJlNjRfdG9fY3B1KG1ha2U2NCgoaGlnaDMyKGVz
dCkgPDwgMTYpIHwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGxvdzMyKGVzdCkgPj4g
MTYpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsb3czMihlc3QpIDw8IDE2KSk7Cisg
ICAgZXN0ID0gYmU2NF90b19jcHUoCisgICAgICAgIG1ha2U2NCgoaGlnaDMyKGVzdCkgPDwgMTYp
IHwgKGxvdzMyKGVzdCkgPj4gMTYpLCBsb3czMihlc3QpIDw8IDE2KSk7CiAjZWxzZQogICAgIGVz
dCA9IGJlNjRfdG9fY3B1KGVzdCA8PCAxNik7CiAjZW5kaWYKIAotICAgIHN0YXR1cyA9IHNydHBf
Y2lwaGVyX3NldF9pdihzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXIsCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICh1aW50OF90KikmaXYsIHNydHBfZGlyZWN0aW9uX2VuY3J5cHQpOwor
ICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3NldF9pdihzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXIs
ICh1aW50OF90ICopJml2LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcnRwX2Rp
cmVjdGlvbl9lbmNyeXB0KTsKICAgICBpZiAoIXN0YXR1cyAmJiBzZXNzaW9uX2tleXMtPnJ0cF94
dG5faGRyX2NpcGhlcikgewotICAgICAgaXYudjMyWzBdID0gMDsKLSAgICAgIGl2LnYzMlsxXSA9
IGhkci0+c3NyYzsKLSAgICAgIGl2LnY2NFsxXSA9IGVzdDsKLSAgICAgIHN0YXR1cyA9IHNydHBf
Y2lwaGVyX3NldF9pdihzZXNzaW9uX2tleXMtPnJ0cF94dG5faGRyX2NpcGhlciwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAodWludDhfdCopJml2LCBzcnRwX2RpcmVjdGlvbl9l
bmNyeXB0KTsKKyAgICAgICAgaXYudjMyWzBdID0gMDsKKyAgICAgICAgaXYudjMyWzFdID0gaGRy
LT5zc3JjOworICAgICAgICBpdi52NjRbMV0gPSBlc3Q7CisgICAgICAgIHN0YXR1cyA9IHNydHBf
Y2lwaGVyX3NldF9pdihzZXNzaW9uX2tleXMtPnJ0cF94dG5faGRyX2NpcGhlciwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICh1aW50OF90ICopJml2LCBzcnRwX2RpcmVjdGlv
bl9lbmNyeXB0KTsKICAgICB9CiAgICAgaWYgKHN0YXR1cykgewogICAgICAgICByZXR1cm4gc3J0
cF9lcnJfc3RhdHVzX2NpcGhlcl9mYWlsOwogICAgIH0KIAogICAgIGlmICh4dG5faGRyICYmIHNl
c3Npb25fa2V5cy0+cnRwX3h0bl9oZHJfY2lwaGVyKSB7Ci0gICAgICAvKgotICAgICAgICogZXh0
ZW5zaW9ucyBoZWFkZXIgZW5jcnlwdGlvbiBSRkMgNjkwNAotICAgICAgICovCi0Jc3RhdHVzID0g
c3J0cF9wcm9jZXNzX2hlYWRlcl9lbmNyeXB0aW9uKHN0cmVhbSwgeHRuX2hkciwgc2Vzc2lvbl9r
ZXlzKTsKLSAgICAgIGlmIChzdGF0dXMpIHsKLSAgICAgICAgcmV0dXJuIHN0YXR1czsKLSAgICAg
IH0KKyAgICAgICAgLyoKKyAgICAgICAgICogZXh0ZW5zaW9ucyBoZWFkZXIgZW5jcnlwdGlvbiBS
RkMgNjkwNAorICAgICAgICAgKi8KKyAgICAgICAgc3RhdHVzID0gc3J0cF9wcm9jZXNzX2hlYWRl
cl9lbmNyeXB0aW9uKHN0cmVhbSwgeHRuX2hkciwgc2Vzc2lvbl9rZXlzKTsKKyAgICAgICAgaWYg
KHN0YXR1cykgeworICAgICAgICAgICAgcmV0dXJuIHN0YXR1czsKKyAgICAgICAgfQogICAgIH0K
IAogICAgIC8qCi0gICAgICogU2V0IHRoZSBBQUQgb3ZlciB0aGUgUlRQIGhlYWRlciAKKyAgICAg
KiBTZXQgdGhlIEFBRCBvdmVyIHRoZSBSVFAgaGVhZGVyCiAgICAgICovCiAgICAgYWFkX2xlbiA9
ICh1aW50OF90ICopZW5jX3N0YXJ0IC0gKHVpbnQ4X3QgKiloZHI7Ci0gICAgc3RhdHVzID0gc3J0
cF9jaXBoZXJfc2V0X2FhZChzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXIsICh1aW50OF90KiloZHIs
IGFhZF9sZW4pOworICAgIHN0YXR1cyA9CisgICAgICAgIHNydHBfY2lwaGVyX3NldF9hYWQoc2Vz
c2lvbl9rZXlzLT5ydHBfY2lwaGVyLCAodWludDhfdCAqKWhkciwgYWFkX2xlbik7CiAgICAgaWYg
KHN0YXR1cykgewotICAgICAgICByZXR1cm4gKCBzcnRwX2Vycl9zdGF0dXNfY2lwaGVyX2ZhaWwp
OworICAgICAgICByZXR1cm4gKHNydHBfZXJyX3N0YXR1c19jaXBoZXJfZmFpbCk7CiAgICAgfQog
CiAgICAgLyogRW5jcnlwdCB0aGUgcGF5bG9hZCAgKi8KLSAgICBzdGF0dXMgPSBzcnRwX2NpcGhl
cl9lbmNyeXB0KHNlc3Npb25fa2V5cy0+cnRwX2NpcGhlciwKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAodWludDhfdCopZW5jX3N0YXJ0LCAodW5zaWduZWQgaW50ICopJmVuY19vY3RldF9s
ZW4pOworICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX2VuY3J5cHQoc2Vzc2lvbl9rZXlzLT5ydHBf
Y2lwaGVyLCAodWludDhfdCAqKWVuY19zdGFydCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICh1bnNpZ25lZCBpbnQgKikmZW5jX29jdGV0X2xlbik7CiAgICAgaWYgKHN0YXR1cykg
ewogICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2NpcGhlcl9mYWlsOwogICAgIH0KQEAg
LTE3OTYsMTAgKzE4MTUsMTEgQEAgc3J0cF9wcm90ZWN0X2FlYWQgKHNydHBfY3R4X3QgKmN0eCwg
c3J0cF9zdHJlYW1fY3R4X3QgKnN0cmVhbSwKICAgICAgKiBJZiB3ZSdyZSBkb2luZyBHQ00sIHdl
IG5lZWQgdG8gZ2V0IHRoZSB0YWcKICAgICAgKiBhbmQgYXBwZW5kIHRoYXQgdG8gdGhlIG91dHB1
dAogICAgICAqLwotICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX2dldF90YWcoc2Vzc2lvbl9rZXlz
LT5ydHBfY2lwaGVyLCAKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAodWludDhfdCopZW5j
X3N0YXJ0K2VuY19vY3RldF9sZW4sICZ0YWdfbGVuKTsKKyAgICBzdGF0dXMgPQorICAgICAgICBz
cnRwX2NpcGhlcl9nZXRfdGFnKHNlc3Npb25fa2V5cy0+cnRwX2NpcGhlciwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAodWludDhfdCAqKWVuY19zdGFydCArIGVuY19vY3RldF9sZW4sICZ0
YWdfbGVuKTsKICAgICBpZiAoc3RhdHVzKSB7Ci0JcmV0dXJuICggc3J0cF9lcnJfc3RhdHVzX2Np
cGhlcl9mYWlsKTsKKyAgICAgICAgcmV0dXJuIChzcnRwX2Vycl9zdGF0dXNfY2lwaGVyX2ZhaWwp
OwogICAgIH0KIAogICAgIG1raV9sb2NhdGlvbiA9ICh1aW50OF90ICopaGRyICsgKnBrdF9vY3Rl
dF9sZW4gKyB0YWdfbGVuOwpAQCAtMTgxNCw3ICsxODM0LDYgQEAgc3J0cF9wcm90ZWN0X2FlYWQg
KHNydHBfY3R4X3QgKmN0eCwgc3J0cF9zdHJlYW1fY3R4X3QgKnN0cmVhbSwKICAgICByZXR1cm4g
c3J0cF9lcnJfc3RhdHVzX29rOwogfQogCi0KIC8qCiAgKiBUaGlzIGZ1bmN0aW9uIGhhbmRsZXMg
aW5jb21pbmcgU1JUUCBwYWNrZXRzIHdoaWxlIGluIEFFQUQgbW9kZSwKICAqIHdoaWNoIGN1cnJl
bnRseSBzdXBwb3J0cyBBRVMtR0NNIGVuY3J5cHRpb24uICBBbGwgcGFja2V0cyBhcmUKQEAgLTE4
MjIsMTMgKzE4NDEsMTcgQEAgc3J0cF9wcm90ZWN0X2FlYWQgKHNydHBfY3R4X3QgKmN0eCwgc3J0
cF9zdHJlYW1fY3R4X3QgKnN0cmVhbSwKICAqIG9mIHRoZSBwYWNrZXQgc3RyZWFtIGFuZCBpcyBh
dXRvbWF0aWNhbGx5IGNoZWNrZWQgYnkgR0NNCiAgKiB3aGVuIGRlY3J5cHRpbmcgdGhlIHBheWxv
YWQuCiAgKi8KLXN0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdAotc3J0cF91bnByb3RlY3RfYWVhZCAo
c3J0cF9jdHhfdCAqY3R4LCBzcnRwX3N0cmVhbV9jdHhfdCAqc3RyZWFtLCBpbnQgZGVsdGEsIAot
ICAgICAgICAgICAgICAgICAgICAgc3J0cF94dGRfc2VxX251bV90IGVzdCwgdm9pZCAqc3J0cF9o
ZHIsIHVuc2lnbmVkIGludCAqcGt0X29jdGV0X2xlbiwKLSAgICAgICAgICAgICAgICAgICAgIHNy
dHBfc2Vzc2lvbl9rZXlzX3QgKnNlc3Npb25fa2V5cywgdW5zaWduZWQgaW50IG1raV9zaXplKQor
c3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfdW5wcm90ZWN0X2FlYWQoc3J0cF9jdHhfdCAq
Y3R4LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF9z
dHJlYW1fY3R4X3QgKnN0cmVhbSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGludCBkZWx0YSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHNydHBfeHRkX3NlcV9udW1fdCBlc3QsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB2b2lkICpzcnRwX2hkciwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCAqcGt0X29jdGV0X2xlbiwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfc2Vzc2lv
bl9rZXlzX3QgKnNlc3Npb25fa2V5cywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHVuc2lnbmVkIGludCBta2lfc2l6ZSkKIHsKLSAgICBzcnRwX2hkcl90ICpo
ZHIgPSAoc3J0cF9oZHJfdCopc3J0cF9oZHI7Ci0gICAgdWludDMyX3QgKmVuY19zdGFydDsgICAg
ICAgIC8qIHBvaW50ZXIgdG8gc3RhcnQgb2YgZW5jcnlwdGVkIHBvcnRpb24gICovCisgICAgc3J0
cF9oZHJfdCAqaGRyID0gKHNydHBfaGRyX3QgKilzcnRwX2hkcjsKKyAgICB1aW50MzJfdCAqZW5j
X3N0YXJ0OyAgICAgICAgICAgIC8qIHBvaW50ZXIgdG8gc3RhcnQgb2YgZW5jcnlwdGVkIHBvcnRp
b24gICovCiAgICAgdW5zaWduZWQgaW50IGVuY19vY3RldF9sZW4gPSAwOyAvKiBudW1iZXIgb2Yg
b2N0ZXRzIGluIGVuY3J5cHRlZCBwb3J0aW9uICovCiAgICAgdjEyOF90IGl2OwogICAgIHNydHBf
ZXJyX3N0YXR1c190IHN0YXR1czsKQEAgLTE4MzksNyArMTg2Miw4IEBAIHNydHBfdW5wcm90ZWN0
X2FlYWQgKHNydHBfY3R4X3QgKmN0eCwgc3J0cF9zdHJlYW1fY3R4X3QgKnN0cmVhbSwgaW50IGRl
bHRhLAogICAgIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAiZnVuY3Rpb24gc3J0cF91bnByb3RlY3Rf
YWVhZCIsIE5VTEwpOwogCiAjaWZkZWYgTk9fNjRCSVRfTUFUSAotICAgIGRlYnVnX3ByaW50Miht
b2Rfc3J0cCwgImVzdGltYXRlZCB1X3BhY2tldCBpbmRleDogJTA4eCUwOHgiLCBoaWdoMzIoZXN0
KSwgbG93MzIoZXN0KSk7CisgICAgZGVidWdfcHJpbnQyKG1vZF9zcnRwLCAiZXN0aW1hdGVkIHVf
cGFja2V0IGluZGV4OiAlMDh4JTA4eCIsIGhpZ2gzMihlc3QpLAorICAgICAgICAgICAgICAgICBs
b3czMihlc3QpKTsKICNlbHNlCiAgICAgZGVidWdfcHJpbnQobW9kX3NydHAsICJlc3RpbWF0ZWQg
dV9wYWNrZXQgaW5kZXg6ICUwMTZsbHgiLCBlc3QpOwogI2VuZGlmCkBAIC0xODQ4LDIxICsxODcy
LDIyIEBAIHNydHBfdW5wcm90ZWN0X2FlYWQgKHNydHBfY3R4X3QgKmN0eCwgc3J0cF9zdHJlYW1f
Y3R4X3QgKnN0cmVhbSwgaW50IGRlbHRhLAogICAgIHRhZ19sZW4gPSBzcnRwX2F1dGhfZ2V0X3Rh
Z19sZW5ndGgoc2Vzc2lvbl9rZXlzLT5ydHBfYXV0aCk7CiAKICAgICAvKgotICAgICAqIEFFQUQg
dXNlcyBhIG5ldyBJViBmb3JtYXRpb24gbWV0aG9kIAorICAgICAqIEFFQUQgdXNlcyBhIG5ldyBJ
ViBmb3JtYXRpb24gbWV0aG9kCiAgICAgICovCiAgICAgc3J0cF9jYWxjX2FlYWRfaXYoc2Vzc2lv
bl9rZXlzLCAmaXYsICZlc3QsIGhkcik7Ci0gICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfc2V0X2l2
KHNlc3Npb25fa2V5cy0+cnRwX2NpcGhlciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgKHVpbnQ4X3QqKSZpdiwgc3J0cF9kaXJlY3Rpb25fZGVjcnlwdCk7CisgICAgc3RhdHVzID0g
c3J0cF9jaXBoZXJfc2V0X2l2KHNlc3Npb25fa2V5cy0+cnRwX2NpcGhlciwgKHVpbnQ4X3QgKikm
aXYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfZGlyZWN0aW9uX2RlY3J5
cHQpOwogICAgIGlmICghc3RhdHVzICYmIHNlc3Npb25fa2V5cy0+cnRwX3h0bl9oZHJfY2lwaGVy
KSB7Ci0gICAgICBpdi52MzJbMF0gPSAwOwotICAgICAgaXYudjMyWzFdID0gaGRyLT5zc3JjOwor
ICAgICAgICBpdi52MzJbMF0gPSAwOworICAgICAgICBpdi52MzJbMV0gPSBoZHItPnNzcmM7CiAj
aWZkZWYgTk9fNjRCSVRfTUFUSAotICAgICAgaXYudjY0WzFdID0gYmU2NF90b19jcHUobWFrZTY0
KChoaWdoMzIoZXN0KSA8PCAxNikgfCAobG93MzIoZXN0KSA+PiAxNiksCi0gICAgICAgICAgICAg
ICAgICBsb3czMihlc3QpIDw8IDE2KSk7CisgICAgICAgIGl2LnY2NFsxXSA9IGJlNjRfdG9fY3B1
KAorICAgICAgICAgICAgbWFrZTY0KChoaWdoMzIoZXN0KSA8PCAxNikgfCAobG93MzIoZXN0KSA+
PiAxNiksIGxvdzMyKGVzdCkgPDwgMTYpKTsKICNlbHNlCi0gICAgICBpdi52NjRbMV0gPSBiZTY0
X3RvX2NwdShlc3QgPDwgMTYpOworICAgICAgICBpdi52NjRbMV0gPSBiZTY0X3RvX2NwdShlc3Qg
PDwgMTYpOwogI2VuZGlmCi0gICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9zZXRfaXYoc2Vzc2lv
bl9rZXlzLT5ydHBfeHRuX2hkcl9jaXBoZXIsICh1aW50OF90KikmaXYsIHNydHBfZGlyZWN0aW9u
X2VuY3J5cHQpOworICAgICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9zZXRfaXYoc2Vzc2lvbl9r
ZXlzLT5ydHBfeHRuX2hkcl9jaXBoZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAodWludDhfdCAqKSZpdiwgc3J0cF9kaXJlY3Rpb25fZW5jcnlwdCk7CiAgICAgfQogICAg
IGlmIChzdGF0dXMpIHsKICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19jaXBoZXJfZmFp
bDsKQEAgLTE4NzQsMjUgKzE4OTksMjYgQEAgc3J0cF91bnByb3RlY3RfYWVhZCAoc3J0cF9jdHhf
dCAqY3R4LCBzcnRwX3N0cmVhbV9jdHhfdCAqc3RyZWFtLCBpbnQgZGVsdGEsCiAgICAgICogZXh0
ZW5zaW9uLCBpZiBwcmVzZW50OyBvdGhlcndpc2UsIGl0IHN0YXJ0cyBhZnRlciB0aGUgbGFzdCBj
c3JjLAogICAgICAqIGlmIGFueSBhcmUgcHJlc2VudAogICAgICAqLwotICAgIGVuY19zdGFydCA9
ICh1aW50MzJfdCopaGRyICsgdWludDMyc19pbl9ydHBfaGVhZGVyICsgaGRyLT5jYzsKKyAgICBl
bmNfc3RhcnQgPSAodWludDMyX3QgKiloZHIgKyB1aW50MzJzX2luX3J0cF9oZWFkZXIgKyBoZHIt
PmNjOwogICAgIGlmIChoZHItPnggPT0gMSkgewotICAgICAgICB4dG5faGRyID0gKHNydHBfaGRy
X3h0bmRfdCopZW5jX3N0YXJ0OworICAgICAgICB4dG5faGRyID0gKHNydHBfaGRyX3h0bmRfdCAq
KWVuY19zdGFydDsKICAgICAgICAgZW5jX3N0YXJ0ICs9IChudG9ocyh4dG5faGRyLT5sZW5ndGgp
ICsgMSk7CiAgICAgfQotICAgIGlmICghKCh1aW50OF90KillbmNfc3RhcnQgPD0gKHVpbnQ4X3Qq
KWhkciArICgqcGt0X29jdGV0X2xlbiAtIHRhZ19sZW4gLSBta2lfc2l6ZSkpKQorICAgIGlmICgh
KCh1aW50OF90ICopZW5jX3N0YXJ0IDw9CisgICAgICAgICAgKHVpbnQ4X3QgKiloZHIgKyAoKnBr
dF9vY3RldF9sZW4gLSB0YWdfbGVuIC0gbWtpX3NpemUpKSkKICAgICAgICAgcmV0dXJuIHNydHBf
ZXJyX3N0YXR1c19wYXJzZV9lcnI7CiAgICAgLyoKLSAgICAgKiBXZSBwYXNzIHRoZSB0YWcgZG93
biB0byB0aGUgY2lwaGVyIHdoZW4gZG9pbmcgR0NNIG1vZGUgCisgICAgICogV2UgcGFzcyB0aGUg
dGFnIGRvd24gdG8gdGhlIGNpcGhlciB3aGVuIGRvaW5nIEdDTSBtb2RlCiAgICAgICovCiAgICAg
ZW5jX29jdGV0X2xlbiA9ICh1bnNpZ25lZCBpbnQpKCpwa3Rfb2N0ZXRfbGVuIC0gbWtpX3NpemUg
LQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKHVpbnQ4X3QqKWVuY19zdGFy
dCAtICh1aW50OF90KiloZHIpKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
KCh1aW50OF90ICopZW5jX3N0YXJ0IC0gKHVpbnQ4X3QgKiloZHIpKTsKIAogICAgIC8qCiAgICAg
ICogU2FuaXR5IGNoZWNrIHRoZSBlbmNyeXB0ZWQgcGF5bG9hZCBsZW5ndGggYWdhaW5zdAogICAg
ICAqIHRoZSB0YWcgc2l6ZS4gIEl0IG11c3QgYWx3YXlzIGJlIGF0IGxlYXN0IGFzIGxhcmdlCiAg
ICAgICogYXMgdGhlIHRhZyBsZW5ndGguCiAgICAgICovCi0gICAgaWYgKGVuY19vY3RldF9sZW4g
PCAodW5zaWduZWQgaW50KSB0YWdfbGVuKSB7CisgICAgaWYgKGVuY19vY3RldF9sZW4gPCAodW5z
aWduZWQgaW50KXRhZ19sZW4pIHsKICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19jaXBo
ZXJfZmFpbDsKICAgICB9CiAKQEAgLTE5MTgsMjcgKzE5NDQsMjggQEAgc3J0cF91bnByb3RlY3Rf
YWVhZCAoc3J0cF9jdHhfdCAqY3R4LCBzcnRwX3N0cmVhbV9jdHhfdCAqc3RyZWFtLCBpbnQgZGVs
dGEsCiAgICAgICogU2V0IHRoZSBBQUQgZm9yIEFFUy1HQ00sIHdoaWNoIGlzIHRoZSBSVFAgaGVh
ZGVyCiAgICAgICovCiAgICAgYWFkX2xlbiA9ICh1aW50OF90ICopZW5jX3N0YXJ0IC0gKHVpbnQ4
X3QgKiloZHI7Ci0gICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfc2V0X2FhZChzZXNzaW9uX2tleXMt
PnJ0cF9jaXBoZXIsICh1aW50OF90KiloZHIsIGFhZF9sZW4pOworICAgIHN0YXR1cyA9CisgICAg
ICAgIHNydHBfY2lwaGVyX3NldF9hYWQoc2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVyLCAodWludDhf
dCAqKWhkciwgYWFkX2xlbik7CiAgICAgaWYgKHN0YXR1cykgewotICAgICAgICByZXR1cm4gKCBz
cnRwX2Vycl9zdGF0dXNfY2lwaGVyX2ZhaWwpOworICAgICAgICByZXR1cm4gKHNydHBfZXJyX3N0
YXR1c19jaXBoZXJfZmFpbCk7CiAgICAgfQogCiAgICAgLyogRGVjcnlwdCB0aGUgY2lwaGVydGV4
dC4gIFRoaXMgYWxzbyBjaGVja3MgdGhlIGF1dGggdGFnIGJhc2VkCiAgICAgICogb24gdGhlIEFB
RCB3ZSBqdXN0IHNwZWNpZmllZCBhYm92ZSAqLwotICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX2Rl
Y3J5cHQoc2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVyLAotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKHVpbnQ4X3QqKWVuY19zdGFydCwgJmVuY19vY3RldF9sZW4pOworICAgIHN0YXR1
cyA9IHNydHBfY2lwaGVyX2RlY3J5cHQoc2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVyLCAodWludDhf
dCAqKWVuY19zdGFydCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZlbmNfb2N0
ZXRfbGVuKTsKICAgICBpZiAoc3RhdHVzKSB7CiAgICAgICAgIHJldHVybiBzdGF0dXM7CiAgICAg
fQogCiAgICAgaWYgKHh0bl9oZHIgJiYgc2Vzc2lvbl9rZXlzLT5ydHBfeHRuX2hkcl9jaXBoZXIp
IHsKLSAgICAgIC8qCi0gICAgICAgKiBleHRlbnNpb25zIGhlYWRlciBlbmNyeXB0aW9uIFJGQyA2
OTA0Ci0gICAgICAgKi8KLSAgICAgIHN0YXR1cyA9IHNydHBfcHJvY2Vzc19oZWFkZXJfZW5jcnlw
dGlvbihzdHJlYW0sIHh0bl9oZHIsIHNlc3Npb25fa2V5cyk7Ci0gICAgICBpZiAoc3RhdHVzKSB7
Ci0gICAgICAgIHJldHVybiBzdGF0dXM7Ci0gICAgICB9CisgICAgICAgIC8qCisgICAgICAgICAq
IGV4dGVuc2lvbnMgaGVhZGVyIGVuY3J5cHRpb24gUkZDIDY5MDQKKyAgICAgICAgICovCisgICAg
ICAgIHN0YXR1cyA9IHNydHBfcHJvY2Vzc19oZWFkZXJfZW5jcnlwdGlvbihzdHJlYW0sIHh0bl9o
ZHIsIHNlc3Npb25fa2V5cyk7CisgICAgICAgIGlmIChzdGF0dXMpIHsKKyAgICAgICAgICAgIHJl
dHVybiBzdGF0dXM7CisgICAgICAgIH0KICAgICB9CiAKICAgICAvKgpAQCAtMTk3NCw3ICsyMDAx
LDggQEAgc3J0cF91bnByb3RlY3RfYWVhZCAoc3J0cF9jdHhfdCAqY3R4LCBzcnRwX3N0cmVhbV9j
dHhfdCAqc3RyZWFtLCBpbnQgZGVsdGEsCiAgICAgICAgICAqIHN0cmVhbSwgYW5kIHNvbWUgaW1w
bGVtZW50YXRpb25zIHdpbGwgd2FudCB0byBub3QgcmV0dXJuCiAgICAgICAgICAqIGZhaWx1cmUg
aGVyZQogICAgICAgICAgKi8KLSAgICAgICAgc3RhdHVzID0gc3J0cF9zdHJlYW1fY2xvbmUoY3R4
LT5zdHJlYW1fdGVtcGxhdGUsIGhkci0+c3NyYywgJm5ld19zdHJlYW0pOworICAgICAgICBzdGF0
dXMgPQorICAgICAgICAgICAgc3J0cF9zdHJlYW1fY2xvbmUoY3R4LT5zdHJlYW1fdGVtcGxhdGUs
IGhkci0+c3NyYywgJm5ld19zdHJlYW0pOwogICAgICAgICBpZiAoc3RhdHVzKSB7CiAgICAgICAg
ICAgICByZXR1cm4gc3RhdHVzOwogICAgICAgICB9CkBAIC0yMDAyLDcyNCArMjAzMCw3MzAgQEAg
c3J0cF91bnByb3RlY3RfYWVhZCAoc3J0cF9jdHhfdCAqY3R4LCBzcnRwX3N0cmVhbV9jdHhfdCAq
c3RyZWFtLCBpbnQgZGVsdGEsCiAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0KIAor
c3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9wcm90ZWN0KHNydHBfY3R4X3QgKmN0eCwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB2b2lkICpydHBfaGRyLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGludCAqcGt0X29jdGV0X2xlbikKK3sKKyAgICByZXR1cm4gc3J0cF9wcm90
ZWN0X21raShjdHgsIHJ0cF9oZHIsIHBrdF9vY3RldF9sZW4sIDAsIDApOworfQogCi0gc3J0cF9l
cnJfc3RhdHVzX3QKLSBzcnRwX3Byb3RlY3Qoc3J0cF9jdHhfdCAqY3R4LCB2b2lkICpydHBfaGRy
LCBpbnQgKnBrdF9vY3RldF9sZW4pIHsKLSAgIHJldHVybiBzcnRwX3Byb3RlY3RfbWtpKGN0eCwg
cnRwX2hkciwgcGt0X29jdGV0X2xlbiwgMCwgMCk7Ci0gfQotCi1zcnRwX2Vycl9zdGF0dXNfdAot
c3J0cF9wcm90ZWN0X21raShzcnRwX2N0eF90ICpjdHgsIHZvaWQgKnJ0cF9oZHIsIGludCAqcGt0
X29jdGV0X2xlbiwKLSAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IHVzZV9ta2ksIHVuc2ln
bmVkIGludCBta2lfaW5kZXggKSB7Ci0gICBzcnRwX2hkcl90ICpoZHIgPSAoc3J0cF9oZHJfdCAq
KXJ0cF9oZHI7Ci0gICB1aW50MzJfdCAqZW5jX3N0YXJ0OyAgICAgICAgLyogcG9pbnRlciB0byBz
dGFydCBvZiBlbmNyeXB0ZWQgcG9ydGlvbiAgKi8KLSAgIHVpbnQzMl90ICphdXRoX3N0YXJ0OyAg
ICAgICAvKiBwb2ludGVyIHRvIHN0YXJ0IG9mIGF1dGguIHBvcnRpb24gICAgICAqLwotICAgaW50
IGVuY19vY3RldF9sZW4gPSAwOyAvKiBudW1iZXIgb2Ygb2N0ZXRzIGluIGVuY3J5cHRlZCBwb3J0
aW9uICAqLwotICAgc3J0cF94dGRfc2VxX251bV90IGVzdDsgICAgICAgICAgLyogZXN0aW1hdGVk
IHh0ZF9zZXFfbnVtX3Qgb2YgKmhkciAgICAgICAgKi8KLSAgIGludCBkZWx0YTsgICAgICAgICAg
ICAgICAgICAvKiBkZWx0YSBvZiBsb2NhbCBwa3QgaWR4IGFuZCB0aGF0IGluIGhkciAqLwotICAg
dWludDhfdCAqYXV0aF90YWcgPSBOVUxMOyAgIC8qIGxvY2F0aW9uIG9mIGF1dGhfdGFnIHdpdGhp
biBwYWNrZXQgICAgICovCi0gICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7ICAgCi0gICBpbnQg
dGFnX2xlbjsKLSAgIHNydHBfc3RyZWFtX2N0eF90ICpzdHJlYW07Ci0gICB1aW50MzJfdCBwcmVm
aXhfbGVuOwotICAgc3J0cF9oZHJfeHRuZF90ICp4dG5faGRyID0gTlVMTDsKLSAgIHVuc2lnbmVk
IGludCBta2lfc2l6ZSA9IDA7Ci0gICBzcnRwX3Nlc3Npb25fa2V5c190ICpzZXNzaW9uX2tleXMg
PSBOVUxMOwotICAgdWludDhfdCogbWtpX2xvY2F0aW9uID0gTlVMTDsKLSAgIGludCBhZHZhbmNl
X3BhY2tldF9pbmRleCA9IDA7Ci0KLSAgIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAiZnVuY3Rpb24g
c3J0cF9wcm90ZWN0IiwgTlVMTCk7Ci0KLSAgLyogd2UgYXNzdW1lIHRoZSBoZHIgaXMgMzItYml0
IGFsaWduZWQgdG8gc3RhcnQgKi8KLQotICAvKiBWZXJpZnkgUlRQIGhlYWRlciAqLwotICBzdGF0
dXMgPSBzcnRwX3ZhbGlkYXRlX3J0cF9oZWFkZXIocnRwX2hkciwgcGt0X29jdGV0X2xlbik7Ci0g
IGlmIChzdGF0dXMpCi0gICAgcmV0dXJuIHN0YXR1czsKLQotICAgLyogY2hlY2sgdGhlIHBhY2tl
dCBsZW5ndGggLSBpdCBtdXN0IGF0IGxlYXN0IGNvbnRhaW4gYSBmdWxsIGhlYWRlciAqLwotICAg
aWYgKCpwa3Rfb2N0ZXRfbGVuIDwgb2N0ZXRzX2luX3J0cF9oZWFkZXIpCi0gICAgIHJldHVybiBz
cnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtOworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9wcm90ZWN0
X21raShzcnRwX2N0eF90ICpjdHgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHZvaWQgKnJ0cF9oZHIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCAq
cGt0X29jdGV0X2xlbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWdu
ZWQgaW50IHVzZV9ta2ksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2ln
bmVkIGludCBta2lfaW5kZXgpCit7CisgICAgc3J0cF9oZHJfdCAqaGRyID0gKHNydHBfaGRyX3Qg
KilydHBfaGRyOworICAgIHVpbnQzMl90ICplbmNfc3RhcnQ7ICAgICAgLyogcG9pbnRlciB0byBz
dGFydCBvZiBlbmNyeXB0ZWQgcG9ydGlvbiAgKi8KKyAgICB1aW50MzJfdCAqYXV0aF9zdGFydDsg
ICAgIC8qIHBvaW50ZXIgdG8gc3RhcnQgb2YgYXV0aC4gcG9ydGlvbiAgICAgICovCisgICAgaW50
IGVuY19vY3RldF9sZW4gPSAwOyAgICAvKiBudW1iZXIgb2Ygb2N0ZXRzIGluIGVuY3J5cHRlZCBw
b3J0aW9uICAqLworICAgIHNydHBfeHRkX3NlcV9udW1fdCBlc3Q7ICAgLyogZXN0aW1hdGVkIHh0
ZF9zZXFfbnVtX3Qgb2YgKmhkciAgICAgICAgKi8KKyAgICBpbnQgZGVsdGE7ICAgICAgICAgICAg
ICAgIC8qIGRlbHRhIG9mIGxvY2FsIHBrdCBpZHggYW5kIHRoYXQgaW4gaGRyICovCisgICAgdWlu
dDhfdCAqYXV0aF90YWcgPSBOVUxMOyAvKiBsb2NhdGlvbiBvZiBhdXRoX3RhZyB3aXRoaW4gcGFj
a2V0ICAgICAqLworICAgIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKKyAgICBpbnQgdGFnX2xl
bjsKKyAgICBzcnRwX3N0cmVhbV9jdHhfdCAqc3RyZWFtOworICAgIHVpbnQzMl90IHByZWZpeF9s
ZW47CisgICAgc3J0cF9oZHJfeHRuZF90ICp4dG5faGRyID0gTlVMTDsKKyAgICB1bnNpZ25lZCBp
bnQgbWtpX3NpemUgPSAwOworICAgIHNydHBfc2Vzc2lvbl9rZXlzX3QgKnNlc3Npb25fa2V5cyA9
IE5VTEw7CisgICAgdWludDhfdCAqbWtpX2xvY2F0aW9uID0gTlVMTDsKKyAgICBpbnQgYWR2YW5j
ZV9wYWNrZXRfaW5kZXggPSAwOwogCi0gICAvKgotICAgICogbG9vayB1cCBzc3JjIGluIHNydHBf
c3RyZWFtIGxpc3QsIGFuZCBwcm9jZXNzIHRoZSBwYWNrZXQgd2l0aAotICAgICogdGhlIGFwcHJv
cHJpYXRlIHN0cmVhbS4gIGlmIHdlIGhhdmVuJ3Qgc2VlbiB0aGlzIHN0cmVhbSBiZWZvcmUsCi0g
ICAgKiB0aGVyZSdzIGEgdGVtcGxhdGUga2V5IGZvciB0aGlzIHNydHBfc2Vzc2lvbiwgYW5kIHRo
ZSBjaXBoZXIKLSAgICAqIHN1cHBvcnRzIGtleS1zaGFyaW5nLCB0aGVuIHdlIGFzc3VtZSB0aGF0
IGEgbmV3IHN0cmVhbSB1c2luZwotICAgICogdGhhdCBrZXkgaGFzIGp1c3Qgc3RhcnRlZCB1cAot
ICAgICovCi0gICBzdHJlYW0gPSBzcnRwX2dldF9zdHJlYW0oY3R4LCBoZHItPnNzcmMpOwotICAg
aWYgKHN0cmVhbSA9PSBOVUxMKSB7Ci0gICAgIGlmIChjdHgtPnN0cmVhbV90ZW1wbGF0ZSAhPSBO
VUxMKSB7Ci0gICAgICAgc3J0cF9zdHJlYW1fY3R4X3QgKm5ld19zdHJlYW07Ci0KLSAgICAgICAv
KiBhbGxvY2F0ZSBhbmQgaW5pdGlhbGl6ZSBhIG5ldyBzdHJlYW0gKi8KLSAgICAgICBzdGF0dXMg
PSBzcnRwX3N0cmVhbV9jbG9uZShjdHgtPnN0cmVhbV90ZW1wbGF0ZSwgCi0JCQkJICBoZHItPnNz
cmMsICZuZXdfc3RyZWFtKTsgCi0gICAgICAgaWYgKHN0YXR1cykKLQkgcmV0dXJuIHN0YXR1czsK
LQotICAgICAgIC8qIGFkZCBuZXcgc3RyZWFtIHRvIHRoZSBoZWFkIG9mIHRoZSBzdHJlYW1fbGlz
dCAqLwotICAgICAgIG5ld19zdHJlYW0tPm5leHQgPSBjdHgtPnN0cmVhbV9saXN0OwotICAgICAg
IGN0eC0+c3RyZWFtX2xpc3QgPSBuZXdfc3RyZWFtOwotCi0gICAgICAgLyogc2V0IGRpcmVjdGlv
biB0byBvdXRib3VuZCAqLwotICAgICAgIG5ld19zdHJlYW0tPmRpcmVjdGlvbiA9IGRpcl9zcnRw
X3NlbmRlcjsKLQotICAgICAgIC8qIHNldCBzdHJlYW0gKHRoZSBwb2ludGVyIHVzZWQgaW4gdGhp
cyBmdW5jdGlvbikgKi8KLSAgICAgICBzdHJlYW0gPSBuZXdfc3RyZWFtOwotICAgICB9IGVsc2Ug
ewotICAgICAgIC8qIG5vIHRlbXBsYXRlIHN0cmVhbSwgc28gd2UgcmV0dXJuIGFuIGVycm9yICov
Ci0gICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19ub19jdHg7Ci0gICAgIH0gCi0gICB9Ci0K
LSAgIC8qIAotICAgICogdmVyaWZ5IHRoYXQgc3RyZWFtIGlzIGZvciBzZW5kaW5nIHRyYWZmaWMg
LSB0aGlzIGNoZWNrIHdpbGwKLSAgICAqIGRldGVjdCBTU1JDIGNvbGxpc2lvbnMsIHNpbmNlIGEg
c3RyZWFtIHRoYXQgYXBwZWFycyBpbiBib3RoCi0gICAgKiBzcnRwX3Byb3RlY3QoKSBhbmQgc3J0
cF91bnByb3RlY3QoKSB3aWxsIGZhaWwgdGhpcyB0ZXN0IGluIG9uZSBvZgotICAgICogdGhvc2Ug
ZnVuY3Rpb25zLgotICAgICovCisgICAgZGVidWdfcHJpbnQobW9kX3NydHAsICJmdW5jdGlvbiBz
cnRwX3Byb3RlY3QiLCBOVUxMKTsKIAotICBpZiAoc3RyZWFtLT5kaXJlY3Rpb24gIT0gZGlyX3Ny
dHBfc2VuZGVyKSB7Ci0gICAgIGlmIChzdHJlYW0tPmRpcmVjdGlvbiA9PSBkaXJfdW5rbm93bikg
ewotICAgICAgIHN0cmVhbS0+ZGlyZWN0aW9uID0gZGlyX3NydHBfc2VuZGVyOwotICAgICB9IGVs
c2UgewotICAgICAgIHNydHBfaGFuZGxlX2V2ZW50KGN0eCwgc3RyZWFtLCBldmVudF9zc3JjX2Nv
bGxpc2lvbik7Ci0gICAgIH0KLSAgfQorICAgIC8qIHdlIGFzc3VtZSB0aGUgaGRyIGlzIDMyLWJp
dCBhbGlnbmVkIHRvIHN0YXJ0ICovCiAKLSAgc2Vzc2lvbl9rZXlzID0gc3J0cF9nZXRfc2Vzc2lv
bl9rZXlzX3dpdGhfbWtpX2luZGV4KHN0cmVhbSwgdXNlX21raSwgbWtpX2luZGV4KTsKKyAgICAv
KiBWZXJpZnkgUlRQIGhlYWRlciAqLworICAgIHN0YXR1cyA9IHNydHBfdmFsaWRhdGVfcnRwX2hl
YWRlcihydHBfaGRyLCBwa3Rfb2N0ZXRfbGVuKTsKKyAgICBpZiAoc3RhdHVzKQorICAgICAgICBy
ZXR1cm4gc3RhdHVzOwogCi0gICAvKgotICAgICogQ2hlY2sgaWYgdGhpcyBpcyBhbiBBRUFEIHN0
cmVhbSAoR0NNIG1vZGUpLiAgSWYgc28sIHRoZW4gZGlzcGF0Y2gKLSAgICAqIHRoZSByZXF1ZXN0
IHRvIG91ciBBRUFEIGhhbmRsZXIuCi0gICAgKi8KLSAgaWYgKHNlc3Npb25fa2V5cy0+cnRwX2Np
cGhlci0+YWxnb3JpdGhtID09IFNSVFBfQUVTX0dDTV8xMjggfHwKLSAgICAgIHNlc3Npb25fa2V5
cy0+cnRwX2NpcGhlci0+YWxnb3JpdGhtID09IFNSVFBfQUVTX0dDTV8yNTYpIHsKLSAgICAgIHJl
dHVybiBzcnRwX3Byb3RlY3RfYWVhZChjdHgsIHN0cmVhbSwgcnRwX2hkciwKLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAodW5zaWduZWQgaW50Kilwa3Rfb2N0ZXRfbGVuLCBzZXNzaW9u
X2tleXMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlX21raSk7Ci0gIH0KLQot
ICAvKiAKLSAgICogdXBkYXRlIHRoZSBrZXkgdXNhZ2UgbGltaXQsIGFuZCBjaGVjayBpdCB0byBt
YWtlIHN1cmUgdGhhdCB3ZQotICAgKiBkaWRuJ3QganVzdCBoaXQgZWl0aGVyIHRoZSBzb2Z0IGxp
bWl0IG9yIHRoZSBoYXJkIGxpbWl0LCBhbmQgY2FsbAotICAgKiB0aGUgZXZlbnQgaGFuZGxlciBp
ZiB3ZSBoaXQgZWl0aGVyLgotICAgKi8KLSAgc3dpdGNoKHNydHBfa2V5X2xpbWl0X3VwZGF0ZShz
ZXNzaW9uX2tleXMtPmxpbWl0KSkgewotICBjYXNlIHNydHBfa2V5X2V2ZW50X25vcm1hbDoKLSAg
ICBicmVhazsKLSAgY2FzZSBzcnRwX2tleV9ldmVudF9zb2Z0X2xpbWl0OiAKLSAgICBzcnRwX2hh
bmRsZV9ldmVudChjdHgsIHN0cmVhbSwgZXZlbnRfa2V5X3NvZnRfbGltaXQpOwotICAgIGJyZWFr
OyAKLSAgY2FzZSBzcnRwX2tleV9ldmVudF9oYXJkX2xpbWl0OgotICAgIHNydHBfaGFuZGxlX2V2
ZW50KGN0eCwgc3RyZWFtLCBldmVudF9rZXlfaGFyZF9saW1pdCk7Ci0JcmV0dXJuIHNydHBfZXJy
X3N0YXR1c19rZXlfZXhwaXJlZDsKLSAgZGVmYXVsdDoKLSAgICBicmVhazsKLSAgfQotCi0gICAv
KiBnZXQgdGFnIGxlbmd0aCBmcm9tIHN0cmVhbSAqLwotICAgdGFnX2xlbiA9IHNydHBfYXV0aF9n
ZXRfdGFnX2xlbmd0aChzZXNzaW9uX2tleXMtPnJ0cF9hdXRoKTsgCi0KLSAgIC8qCi0gICAgKiBm
aW5kIHN0YXJ0aW5nIHBvaW50IGZvciBlbmNyeXB0aW9uIGFuZCBsZW5ndGggb2YgZGF0YSB0byBi
ZQotICAgICogZW5jcnlwdGVkIC0gdGhlIGVuY3J5cHRlZCBwb3J0aW9uIHN0YXJ0cyBhZnRlciB0
aGUgcnRwIGhlYWRlcgotICAgICogZXh0ZW5zaW9uLCBpZiBwcmVzZW50OyBvdGhlcndpc2UsIGl0
IHN0YXJ0cyBhZnRlciB0aGUgbGFzdCBjc3JjLAotICAgICogaWYgYW55IGFyZSBwcmVzZW50Ci0g
ICAgKgotICAgICogaWYgd2UncmUgbm90IHByb3ZpZGluZyBjb25maWRlbnRpYWxpdHksIHNldCBl
bmNfc3RhcnQgdG8gTlVMTAotICAgICovCi0gICBpZiAoc3RyZWFtLT5ydHBfc2VydmljZXMgJiBz
ZWNfc2Vydl9jb25mKSB7Ci0gICAgIGVuY19zdGFydCA9ICh1aW50MzJfdCAqKWhkciArIHVpbnQz
MnNfaW5fcnRwX2hlYWRlciArIGhkci0+Y2M7ICAKLSAgICAgaWYgKGhkci0+eCA9PSAxKSB7Ci0g
ICAgICAgeHRuX2hkciA9IChzcnRwX2hkcl94dG5kX3QgKillbmNfc3RhcnQ7Ci0gICAgICAgZW5j
X3N0YXJ0ICs9IChudG9ocyh4dG5faGRyLT5sZW5ndGgpICsgMSk7Ci0gICAgIH0KLSAgICAgLyog
bm90ZTogdGhlIHBhc3NlZCBzaXplIGlzIHdpdGhvdXQgdGhlIGF1dGggdGFnICovCi0gICAgIGlm
ICghKCh1aW50OF90KillbmNfc3RhcnQgPD0gKHVpbnQ4X3QqKWhkciArICpwa3Rfb2N0ZXRfbGVu
KSkKLSAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX3BhcnNlX2VycjsKLSAgICAgZW5jX29j
dGV0X2xlbiA9IChpbnQpKCpwa3Rfb2N0ZXRfbGVuIC0KLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICgodWludDhfdCopZW5jX3N0YXJ0IC0gKHVpbnQ4X3QqKWhkcikpOwotICAg
ICBpZiAoZW5jX29jdGV0X2xlbiA8IDApIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfcGFyc2VfZXJy
OwotICAgfSBlbHNlIHsKLSAgICAgZW5jX3N0YXJ0ID0gTlVMTDsKLSAgIH0KLQotICAgbWtpX2xv
Y2F0aW9uID0gKHVpbnQ4X3QgKiloZHIgKyAqcGt0X29jdGV0X2xlbjsKLSAgIG1raV9zaXplID0g
c3J0cF9pbmplY3RfbWtpKG1raV9sb2NhdGlvbiwgc2Vzc2lvbl9rZXlzLCB1c2VfbWtpKTsKLQot
ICAgLyogCi0gICAgKiBpZiB3ZSdyZSBwcm92aWRpbmcgYXV0aGVudGljYXRpb24sIHNldCB0aGUg
YXV0aF9zdGFydCBhbmQgYXV0aF90YWcKLSAgICAqIHBvaW50ZXJzIHRvIHRoZSBwcm9wZXIgbG9j
YXRpb25zOyBvdGhlcndpc2UsIHNldCBhdXRoX3N0YXJ0IHRvIE5VTEwKLSAgICAqIHRvIGluZGlj
YXRlIHRoYXQgbm8gYXV0aGVudGljYXRpb24gaXMgbmVlZGVkCi0gICAgKi8KLSAgIGlmIChzdHJl
YW0tPnJ0cF9zZXJ2aWNlcyAmIHNlY19zZXJ2X2F1dGgpIHsKLSAgICAgYXV0aF9zdGFydCA9ICh1
aW50MzJfdCAqKWhkcjsKLSAgICAgYXV0aF90YWcgPSAodWludDhfdCAqKWhkciArICpwa3Rfb2N0
ZXRfbGVuICsgbWtpX3NpemU7Ci0gICB9IGVsc2UgewotICAgICBhdXRoX3N0YXJ0ID0gTlVMTDsK
LSAgICAgYXV0aF90YWcgPSBOVUxMOwotICAgfQotCi0gIC8qCi0gICAqIGVzdGltYXRlIHRoZSBw
YWNrZXQgaW5kZXggdXNpbmcgdGhlIHN0YXJ0IG9mIHRoZSByZXBsYXkgd2luZG93Ci0gICAqIGFu
ZCB0aGUgc2VxdWVuY2UgbnVtYmVyIGZyb20gdGhlIGhlYWRlcgotICAgKi8KLSAgc3RhdHVzID0g
c3J0cF9nZXRfZXN0X3BrdF9pbmRleChoZHIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgc3RyZWFtLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZlc3QsCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmRlbHRhKTsKLQotICBpZiAoc3RhdHVz
ICYmIChzdGF0dXMgIT0gc3J0cF9lcnJfc3RhdHVzX3BrdF9pZHhfYWR2KSkKLSAgICByZXR1cm4g
c3RhdHVzOworICAgIC8qIGNoZWNrIHRoZSBwYWNrZXQgbGVuZ3RoIC0gaXQgbXVzdCBhdCBsZWFz
dCBjb250YWluIGEgZnVsbCBoZWFkZXIgKi8KKyAgICBpZiAoKnBrdF9vY3RldF9sZW4gPCBvY3Rl
dHNfaW5fcnRwX2hlYWRlcikKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfcGFy
YW07CiAKLSAgaWYgKHN0YXR1cyA9PSBzcnRwX2Vycl9zdGF0dXNfcGt0X2lkeF9hZHYpCi0gICAg
YWR2YW5jZV9wYWNrZXRfaW5kZXggPSAxOworICAgIC8qCisgICAgICogbG9vayB1cCBzc3JjIGlu
IHNydHBfc3RyZWFtIGxpc3QsIGFuZCBwcm9jZXNzIHRoZSBwYWNrZXQgd2l0aAorICAgICAqIHRo
ZSBhcHByb3ByaWF0ZSBzdHJlYW0uICBpZiB3ZSBoYXZlbid0IHNlZW4gdGhpcyBzdHJlYW0gYmVm
b3JlLAorICAgICAqIHRoZXJlJ3MgYSB0ZW1wbGF0ZSBrZXkgZm9yIHRoaXMgc3J0cF9zZXNzaW9u
LCBhbmQgdGhlIGNpcGhlcgorICAgICAqIHN1cHBvcnRzIGtleS1zaGFyaW5nLCB0aGVuIHdlIGFz
c3VtZSB0aGF0IGEgbmV3IHN0cmVhbSB1c2luZworICAgICAqIHRoYXQga2V5IGhhcyBqdXN0IHN0
YXJ0ZWQgdXAKKyAgICAgKi8KKyAgICBzdHJlYW0gPSBzcnRwX2dldF9zdHJlYW0oY3R4LCBoZHIt
PnNzcmMpOworICAgIGlmIChzdHJlYW0gPT0gTlVMTCkgeworICAgICAgICBpZiAoY3R4LT5zdHJl
YW1fdGVtcGxhdGUgIT0gTlVMTCkgeworICAgICAgICAgICAgc3J0cF9zdHJlYW1fY3R4X3QgKm5l
d19zdHJlYW07CiAKLSAgaWYgKGFkdmFuY2VfcGFja2V0X2luZGV4KSB7Ci0gICAgc3J0cF9yZGJ4
X3NldF9yb2Nfc2VxKCZzdHJlYW0tPnJ0cF9yZGJ4LAotICAgICAgICAgICAgICAgICAgICAgICAg
ICAodWludDMyX3QpKGVzdCA+PiAxNiksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICh1aW50
MTZfdCkoZXN0ICYgMHhGRkZGKSk7Ci0gICAgc3RyZWFtLT5wZW5kaW5nX3JvYyA9IDA7Ci0gICAg
c3J0cF9yZGJ4X2FkZF9pbmRleCgmc3RyZWFtLT5ydHBfcmRieCwgMCk7Ci0gIH0gZWxzZSB7Ci0g
ICAgc3RhdHVzID0gc3J0cF9yZGJ4X2NoZWNrKCZzdHJlYW0tPnJ0cF9yZGJ4LCBkZWx0YSk7Ci0g
ICAgaWYgKHN0YXR1cykgewotICAgICAgaWYgKHN0YXR1cyAhPSBzcnRwX2Vycl9zdGF0dXNfcmVw
bGF5X2ZhaWwgfHwgIXN0cmVhbS0+YWxsb3dfcmVwZWF0X3R4KQotICAgICAgICByZXR1cm4gc3Rh
dHVzOyAvKiB3ZSd2ZSBiZWVuIGFza2VkIHRvIHJldXNlIGFuIGluZGV4ICovCi0gICAgfQotICAg
IHNydHBfcmRieF9hZGRfaW5kZXgoJnN0cmVhbS0+cnRwX3JkYngsIGRlbHRhKTsKLSAgfQorICAg
ICAgICAgICAgLyogYWxsb2NhdGUgYW5kIGluaXRpYWxpemUgYSBuZXcgc3RyZWFtICovCisgICAg
ICAgICAgICBzdGF0dXMgPQorICAgICAgICAgICAgICAgIHNydHBfc3RyZWFtX2Nsb25lKGN0eC0+
c3RyZWFtX3RlbXBsYXRlLCBoZHItPnNzcmMsICZuZXdfc3RyZWFtKTsKKyAgICAgICAgICAgIGlm
IChzdGF0dXMpCisgICAgICAgICAgICAgICAgcmV0dXJuIHN0YXR1czsKIAotI2lmZGVmIE5PXzY0
QklUX01BVEgKLSAgIGRlYnVnX3ByaW50Mihtb2Rfc3J0cCwgImVzdGltYXRlZCBwYWNrZXQgaW5k
ZXg6ICUwOHglMDh4IiwgCi0JCWhpZ2gzMihlc3QpLGxvdzMyKGVzdCkpOwotI2Vsc2UKLSAgIGRl
YnVnX3ByaW50KG1vZF9zcnRwLCAiZXN0aW1hdGVkIHBhY2tldCBpbmRleDogJTAxNmxseCIsIGVz
dCk7Ci0jZW5kaWYKKyAgICAgICAgICAgIC8qIGFkZCBuZXcgc3RyZWFtIHRvIHRoZSBoZWFkIG9m
IHRoZSBzdHJlYW1fbGlzdCAqLworICAgICAgICAgICAgbmV3X3N0cmVhbS0+bmV4dCA9IGN0eC0+
c3RyZWFtX2xpc3Q7CisgICAgICAgICAgICBjdHgtPnN0cmVhbV9saXN0ID0gbmV3X3N0cmVhbTsK
IAotICAgLyogCi0gICAgKiBpZiB3ZSdyZSB1c2luZyByaW5kYWVsIGNvdW50ZXIgbW9kZSwgc2V0
IG5vbmNlIGFuZCBzZXEgCi0gICAgKi8KLSAgIGlmIChzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXIt
PnR5cGUtPmlkID09IFNSVFBfQUVTX0lDTV8xMjggfHwKLSAgICAgICBzZXNzaW9uX2tleXMtPnJ0
cF9jaXBoZXItPnR5cGUtPmlkID09IFNSVFBfQUVTX0lDTV8xOTIgfHwKLSAgICAgICBzZXNzaW9u
X2tleXMtPnJ0cF9jaXBoZXItPnR5cGUtPmlkID09IFNSVFBfQUVTX0lDTV8yNTYpIHsKLSAgICAg
djEyOF90IGl2OworICAgICAgICAgICAgLyogc2V0IGRpcmVjdGlvbiB0byBvdXRib3VuZCAqLwor
ICAgICAgICAgICAgbmV3X3N0cmVhbS0+ZGlyZWN0aW9uID0gZGlyX3NydHBfc2VuZGVyOwogCi0g
ICAgIGl2LnYzMlswXSA9IDA7Ci0gICAgIGl2LnYzMlsxXSA9IGhkci0+c3NyYzsKLSNpZmRlZiBO
T182NEJJVF9NQVRICi0gICAgIGl2LnY2NFsxXSA9IGJlNjRfdG9fY3B1KG1ha2U2NCgoaGlnaDMy
KGVzdCkgPDwgMTYpIHwgKGxvdzMyKGVzdCkgPj4gMTYpLAotCQkJCQkJCQkgbG93MzIoZXN0KSA8
PCAxNikpOwotI2Vsc2UKLSAgICAgaXYudjY0WzFdID0gYmU2NF90b19jcHUoZXN0IDw8IDE2KTsK
LSNlbmRpZgotICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9zZXRfaXYoc2Vzc2lvbl9rZXlzLT5y
dHBfY2lwaGVyLCAodWludDhfdCopJml2LCBzcnRwX2RpcmVjdGlvbl9lbmNyeXB0KTsKLSAgICAg
aWYgKCFzdGF0dXMgJiYgc2Vzc2lvbl9rZXlzLT5ydHBfeHRuX2hkcl9jaXBoZXIpIHsKLSAgICAg
ICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9zZXRfaXYoc2Vzc2lvbl9rZXlzLT5ydHBfeHRuX2hkcl9j
aXBoZXIsICh1aW50OF90KikmaXYsIHNydHBfZGlyZWN0aW9uX2VuY3J5cHQpOwotICAgICB9Ci0g
ICB9IGVsc2UgeyAgCi0gICAgIHYxMjhfdCBpdjsKLQotICAgICAvKiBvdGhlcndpc2UsIHNldCB0
aGUgaW5kZXggdG8gZXN0ICovICAKLSNpZmRlZiBOT182NEJJVF9NQVRICi0gICAgIGl2LnYzMlsw
XSA9IDA7Ci0gICAgIGl2LnYzMlsxXSA9IDA7Ci0jZWxzZQotICAgICBpdi52NjRbMF0gPSAwOwot
I2VuZGlmCi0gICAgIGl2LnY2NFsxXSA9IGJlNjRfdG9fY3B1KGVzdCk7Ci0gICAgIHN0YXR1cyA9
IHNydHBfY2lwaGVyX3NldF9pdihzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXIsICh1aW50OF90Kikm
aXYsIHNydHBfZGlyZWN0aW9uX2VuY3J5cHQpOwotICAgICBpZiAoIXN0YXR1cyAmJiBzZXNzaW9u
X2tleXMtPnJ0cF94dG5faGRyX2NpcGhlcikgewotICAgICAgIHN0YXR1cyA9IHNydHBfY2lwaGVy
X3NldF9pdihzZXNzaW9uX2tleXMtPnJ0cF94dG5faGRyX2NpcGhlciwgKHVpbnQ4X3QqKSZpdiwg
c3J0cF9kaXJlY3Rpb25fZW5jcnlwdCk7Ci0gICAgIH0KLSAgIH0KLSAgIGlmIChzdGF0dXMpCi0g
ICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfY2lwaGVyX2ZhaWw7Ci0KLSAgIC8qIHNoaWZ0IGVz
dCwgcHV0IGludG8gbmV0d29yayBieXRlIG9yZGVyICovCi0jaWZkZWYgTk9fNjRCSVRfTUFUSAot
ICAgZXN0ID0gYmU2NF90b19jcHUobWFrZTY0KChoaWdoMzIoZXN0KSA8PCAxNikgfAotCQkJCQkJ
IChsb3czMihlc3QpID4+IDE2KSwKLQkJCQkJCSBsb3czMihlc3QpIDw8IDE2KSk7Ci0jZWxzZQot
ICAgZXN0ID0gYmU2NF90b19jcHUoZXN0IDw8IDE2KTsKLSNlbmRpZgotICAgCi0gICAvKiAKLSAg
ICAqIGlmIHdlJ3JlIGF1dGhlbnRpY2F0aW5nIHVzaW5nIGEgdW5pdmVyc2FsIGhhc2gsIHB1dCB0
aGUga2V5c3RyZWFtCi0gICAgKiBwcmVmaXggaW50byB0aGUgYXV0aGVudGljYXRpb24gdGFnCi0g
ICAgKi8KLSAgIGlmIChhdXRoX3N0YXJ0KSB7Ci0gICAgIAotICAgIHByZWZpeF9sZW4gPSBzcnRw
X2F1dGhfZ2V0X3ByZWZpeF9sZW5ndGgoc2Vzc2lvbl9rZXlzLT5ydHBfYXV0aCk7ICAgIAotICAg
IGlmIChwcmVmaXhfbGVuKSB7Ci0gICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9vdXRwdXQoc2Vz
c2lvbl9rZXlzLT5ydHBfY2lwaGVyLCBhdXRoX3RhZywgJnByZWZpeF9sZW4pOwotICAgICAgaWYg
KHN0YXR1cykKLQlyZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2NpcGhlcl9mYWlsOwotICAgICAgZGVi
dWdfcHJpbnQobW9kX3NydHAsICJrZXlzdHJlYW0gcHJlZml4OiAlcyIsIAotCQkgIHNydHBfb2N0
ZXRfc3RyaW5nX2hleF9zdHJpbmcoYXV0aF90YWcsIHByZWZpeF9sZW4pKTsKKyAgICAgICAgICAg
IC8qIHNldCBzdHJlYW0gKHRoZSBwb2ludGVyIHVzZWQgaW4gdGhpcyBmdW5jdGlvbikgKi8KKyAg
ICAgICAgICAgIHN0cmVhbSA9IG5ld19zdHJlYW07CisgICAgICAgIH0gZWxzZSB7CisgICAgICAg
ICAgICAvKiBubyB0ZW1wbGF0ZSBzdHJlYW0sIHNvIHdlIHJldHVybiBhbiBlcnJvciAqLworICAg
ICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19ub19jdHg7CisgICAgICAgIH0KICAgICB9
Ci0gIH0KIAotICBpZiAoeHRuX2hkciAmJiBzZXNzaW9uX2tleXMtPnJ0cF94dG5faGRyX2NpcGhl
cikgewogICAgIC8qCi0gICAgICogZXh0ZW5zaW9ucyBoZWFkZXIgZW5jcnlwdGlvbiBSRkMgNjkw
NAorICAgICAqIHZlcmlmeSB0aGF0IHN0cmVhbSBpcyBmb3Igc2VuZGluZyB0cmFmZmljIC0gdGhp
cyBjaGVjayB3aWxsCisgICAgICogZGV0ZWN0IFNTUkMgY29sbGlzaW9ucywgc2luY2UgYSBzdHJl
YW0gdGhhdCBhcHBlYXJzIGluIGJvdGgKKyAgICAgKiBzcnRwX3Byb3RlY3QoKSBhbmQgc3J0cF91
bnByb3RlY3QoKSB3aWxsIGZhaWwgdGhpcyB0ZXN0IGluIG9uZSBvZgorICAgICAqIHRob3NlIGZ1
bmN0aW9ucy4KICAgICAgKi8KLSAgICAgIHN0YXR1cyA9IHNydHBfcHJvY2Vzc19oZWFkZXJfZW5j
cnlwdGlvbihzdHJlYW0sIHh0bl9oZHIsIHNlc3Npb25fa2V5cyk7Ci0gICAgaWYgKHN0YXR1cykg
ewotICAgICAgcmV0dXJuIHN0YXR1czsKLSAgICB9Ci0gIH0KLQotICAvKiBpZiB3ZSdyZSBlbmNy
eXB0aW5nLCBleG9yIGtleXN0cmVhbSBpbnRvIHRoZSBtZXNzYWdlICovCi0gIGlmIChlbmNfc3Rh
cnQpIHsKLSAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9lbmNyeXB0KHNlc3Npb25fa2V5cy0+cnRw
X2NpcGhlciwgCi0JCQkgICAgICAgICh1aW50OF90ICopZW5jX3N0YXJ0LCAodW5zaWduZWQgaW50
ICopJmVuY19vY3RldF9sZW4pOwotICAgIGlmIChzdGF0dXMpCi0gICAgICByZXR1cm4gc3J0cF9l
cnJfc3RhdHVzX2NpcGhlcl9mYWlsOwotICB9Ci0KLSAgLyoKLSAgICogIGlmIHdlJ3JlIGF1dGhl
bnRpY2F0aW5nLCBydW4gYXV0aGVudGljYXRpb24gZnVuY3Rpb24gYW5kIHB1dCByZXN1bHQKLSAg
ICogIGludG8gdGhlIGF1dGhfdGFnIAotICAgKi8KLSAgaWYgKGF1dGhfc3RhcnQpIHsgICAgICAg
IAotCi0gICAgLyogaW5pdGlhbGl6ZSBhdXRoIGZ1bmMgY29udGV4dCAqLwotICAgIHN0YXR1cyA9
IHNydHBfYXV0aF9zdGFydChzZXNzaW9uX2tleXMtPnJ0cF9hdXRoKTsKLSAgICBpZiAoc3RhdHVz
KSByZXR1cm4gc3RhdHVzOwotCi0gICAgLyogcnVuIGF1dGggZnVuYyBvdmVyIHBhY2tldCAqLwot
ICAgIHN0YXR1cyA9IHNydHBfYXV0aF91cGRhdGUoc2Vzc2lvbl9rZXlzLT5ydHBfYXV0aCwKLQkJ
CSAodWludDhfdCAqKWF1dGhfc3RhcnQsICpwa3Rfb2N0ZXRfbGVuKTsKLSAgICBpZiAoc3RhdHVz
KSByZXR1cm4gc3RhdHVzOwotICAgIAotICAgIC8qIHJ1biBhdXRoIGZ1bmMgb3ZlciBST0MsIHB1
dCByZXN1bHQgaW50byBhdXRoX3RhZyAqLwotICAgIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAiZXN0
aW1hdGVkIHBhY2tldCBpbmRleDogJTAxNmxseCIsIGVzdCk7Ci0gICAgc3RhdHVzID0gc3J0cF9h
dXRoX2NvbXB1dGUoc2Vzc2lvbl9rZXlzLT5ydHBfYXV0aCwgKHVpbnQ4X3QgKikmZXN0LCA0LCBh
dXRoX3RhZyk7Ci0gICAgZGVidWdfcHJpbnQobW9kX3NydHAsICJzcnRwIGF1dGggdGFnOiAgICAl
cyIsIAotCQlzcnRwX29jdGV0X3N0cmluZ19oZXhfc3RyaW5nKGF1dGhfdGFnLCB0YWdfbGVuKSk7
Ci0gICAgaWYgKHN0YXR1cykKLSAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYXV0aF9mYWls
OyAgIAotCi0gIH0KIAotICBpZiAoYXV0aF90YWcpIHsKLQotICAgIC8qIGluY3JlYXNlIHRoZSBw
YWNrZXQgbGVuZ3RoIGJ5IHRoZSBsZW5ndGggb2YgdGhlIGF1dGggdGFnICovCi0gICAgKnBrdF9v
Y3RldF9sZW4gKz0gdGFnX2xlbjsKLSAgfQotCi0gIGlmICh1c2VfbWtpKSB7Ci0gICAgLyogaW5j
cmVhdGUgdGhlIHBhY2tldCBsZW5ndGggYnkgdGhlIG1raSBzaXplICovCi0gICAgKnBrdF9vY3Rl
dF9sZW4gKz0gbWtpX3NpemU7Ci0gIH0KKyAgICBpZiAoc3RyZWFtLT5kaXJlY3Rpb24gIT0gZGly
X3NydHBfc2VuZGVyKSB7CisgICAgICAgIGlmIChzdHJlYW0tPmRpcmVjdGlvbiA9PSBkaXJfdW5r
bm93bikgeworICAgICAgICAgICAgc3RyZWFtLT5kaXJlY3Rpb24gPSBkaXJfc3J0cF9zZW5kZXI7
CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICBzcnRwX2hhbmRsZV9ldmVudChjdHgsIHN0
cmVhbSwgZXZlbnRfc3NyY19jb2xsaXNpb24pOworICAgICAgICB9CisgICAgfQogCi0gIHJldHVy
biBzcnRwX2Vycl9zdGF0dXNfb2s7ICAKLX0KKyAgICBzZXNzaW9uX2tleXMgPQorICAgICAgICBz
cnRwX2dldF9zZXNzaW9uX2tleXNfd2l0aF9ta2lfaW5kZXgoc3RyZWFtLCB1c2VfbWtpLCBta2lf
aW5kZXgpOwogCisgICAgaWYgKHNlc3Npb25fa2V5cyA9PSBOVUxMKQorICAgICAgICByZXR1cm4g
c3J0cF9lcnJfc3RhdHVzX2JhZF9ta2k7CiAKLXNydHBfZXJyX3N0YXR1c190Ci1zcnRwX3VucHJv
dGVjdChzcnRwX2N0eF90ICpjdHgsIHZvaWQgKnNydHBfaGRyLCBpbnQgKnBrdF9vY3RldF9sZW4p
IHsKLSAgICByZXR1cm4gc3J0cF91bnByb3RlY3RfbWtpKGN0eCwgc3J0cF9oZHIsIHBrdF9vY3Rl
dF9sZW4sIDApOwotfQorICAgIC8qCisgICAgICogQ2hlY2sgaWYgdGhpcyBpcyBhbiBBRUFEIHN0
cmVhbSAoR0NNIG1vZGUpLiAgSWYgc28sIHRoZW4gZGlzcGF0Y2gKKyAgICAgKiB0aGUgcmVxdWVz
dCB0byBvdXIgQUVBRCBoYW5kbGVyLgorICAgICAqLworICAgIGlmIChzZXNzaW9uX2tleXMtPnJ0
cF9jaXBoZXItPmFsZ29yaXRobSA9PSBTUlRQX0FFU19HQ01fMTI4IHx8CisgICAgICAgIHNlc3Np
b25fa2V5cy0+cnRwX2NpcGhlci0+YWxnb3JpdGhtID09IFNSVFBfQUVTX0dDTV8yNTYpIHsKKyAg
ICAgICAgcmV0dXJuIHNydHBfcHJvdGVjdF9hZWFkKGN0eCwgc3RyZWFtLCBydHBfaGRyLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHVuc2lnbmVkIGludCAqKXBrdF9vY3RldF9s
ZW4sIHNlc3Npb25fa2V5cywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZV9t
a2kpOworICAgIH0KIAotc3J0cF9lcnJfc3RhdHVzX3QKLXNydHBfdW5wcm90ZWN0X21raShzcnRw
X2N0eF90ICpjdHgsIHZvaWQgKnNydHBfaGRyLCBpbnQgKnBrdF9vY3RldF9sZW4sCi0gICAgICAg
ICAgICAgICAgICAgdW5zaWduZWQgaW50IHVzZV9ta2kpIHsKLSAgc3J0cF9oZHJfdCAqaGRyID0g
KHNydHBfaGRyX3QgKilzcnRwX2hkcjsKLSAgdWludDMyX3QgKmVuY19zdGFydDsgICAgICAvKiBw
b2ludGVyIHRvIHN0YXJ0IG9mIGVuY3J5cHRlZCBwb3J0aW9uICAqLwotICB1aW50MzJfdCAqYXV0
aF9zdGFydDsgICAgIC8qIHBvaW50ZXIgdG8gc3RhcnQgb2YgYXV0aC4gcG9ydGlvbiAgICAgICov
Ci0gIHVuc2lnbmVkIGludCBlbmNfb2N0ZXRfbGVuID0gMDsvKiBudW1iZXIgb2Ygb2N0ZXRzIGlu
IGVuY3J5cHRlZCBwb3J0aW9uICovCi0gIHVpbnQ4X3QgKmF1dGhfdGFnID0gTlVMTDsgLyogbG9j
YXRpb24gb2YgYXV0aF90YWcgd2l0aGluIHBhY2tldCAgICAgKi8KLSAgc3J0cF94dGRfc2VxX251
bV90IGVzdDsgICAgICAgIC8qIGVzdGltYXRlZCB4dGRfc2VxX251bV90IG9mICpoZHIgICAgICAg
ICovCi0gIGludCBkZWx0YTsgICAgICAgICAgICAgICAgLyogZGVsdGEgb2YgbG9jYWwgcGt0IGlk
eCBhbmQgdGhhdCBpbiBoZHIgKi8KLSAgdjEyOF90IGl2OwotICBzcnRwX2Vycl9zdGF0dXNfdCBz
dGF0dXM7Ci0gIHNydHBfc3RyZWFtX2N0eF90ICpzdHJlYW07Ci0gIHVpbnQ4X3QgdG1wX3RhZ1tT
UlRQX01BWF9UQUdfTEVOXTsKLSAgdWludDMyX3QgdGFnX2xlbiwgcHJlZml4X2xlbjsKLSAgc3J0
cF9oZHJfeHRuZF90ICp4dG5faGRyID0gTlVMTDsKLSAgdW5zaWduZWQgaW50IG1raV9zaXplID0g
MDsKLSAgc3J0cF9zZXNzaW9uX2tleXNfdCAqc2Vzc2lvbl9rZXlzID0gTlVMTDsKLSAgaW50IGFk
dmFuY2VfcGFja2V0X2luZGV4ID0gMDsKLSAgdWludDMyX3Qgcm9jX3RvX3NldCA9IDA7Ci0gIHVp
bnQxNl90IHNlcV90b19zZXQgPSAwOwotCi0gIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAiZnVuY3Rp
b24gc3J0cF91bnByb3RlY3QiLCBOVUxMKTsKLQotICAvKiB3ZSBhc3N1bWUgdGhlIGhkciBpcyAz
Mi1iaXQgYWxpZ25lZCB0byBzdGFydCAqLwotCi0gIC8qIFZlcmlmeSBSVFAgaGVhZGVyICovCi0g
IHN0YXR1cyA9IHNydHBfdmFsaWRhdGVfcnRwX2hlYWRlcihzcnRwX2hkciwgcGt0X29jdGV0X2xl
bik7Ci0gIGlmIChzdGF0dXMpCi0gICAgcmV0dXJuIHN0YXR1czsKKyAgICAvKgorICAgICAqIHVw
ZGF0ZSB0aGUga2V5IHVzYWdlIGxpbWl0LCBhbmQgY2hlY2sgaXQgdG8gbWFrZSBzdXJlIHRoYXQg
d2UKKyAgICAgKiBkaWRuJ3QganVzdCBoaXQgZWl0aGVyIHRoZSBzb2Z0IGxpbWl0IG9yIHRoZSBo
YXJkIGxpbWl0LCBhbmQgY2FsbAorICAgICAqIHRoZSBldmVudCBoYW5kbGVyIGlmIHdlIGhpdCBl
aXRoZXIuCisgICAgICovCisgICAgc3dpdGNoIChzcnRwX2tleV9saW1pdF91cGRhdGUoc2Vzc2lv
bl9rZXlzLT5saW1pdCkpIHsKKyAgICBjYXNlIHNydHBfa2V5X2V2ZW50X25vcm1hbDoKKyAgICAg
ICAgYnJlYWs7CisgICAgY2FzZSBzcnRwX2tleV9ldmVudF9zb2Z0X2xpbWl0OgorICAgICAgICBz
cnRwX2hhbmRsZV9ldmVudChjdHgsIHN0cmVhbSwgZXZlbnRfa2V5X3NvZnRfbGltaXQpOworICAg
ICAgICBicmVhazsKKyAgICBjYXNlIHNydHBfa2V5X2V2ZW50X2hhcmRfbGltaXQ6CisgICAgICAg
IHNydHBfaGFuZGxlX2V2ZW50KGN0eCwgc3RyZWFtLCBldmVudF9rZXlfaGFyZF9saW1pdCk7Cisg
ICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfa2V5X2V4cGlyZWQ7CisgICAgZGVmYXVsdDoK
KyAgICAgICAgYnJlYWs7CisgICAgfQorCisgICAgLyogZ2V0IHRhZyBsZW5ndGggZnJvbSBzdHJl
YW0gKi8KKyAgICB0YWdfbGVuID0gc3J0cF9hdXRoX2dldF90YWdfbGVuZ3RoKHNlc3Npb25fa2V5
cy0+cnRwX2F1dGgpOworCisgICAgLyoKKyAgICAgKiBmaW5kIHN0YXJ0aW5nIHBvaW50IGZvciBl
bmNyeXB0aW9uIGFuZCBsZW5ndGggb2YgZGF0YSB0byBiZQorICAgICAqIGVuY3J5cHRlZCAtIHRo
ZSBlbmNyeXB0ZWQgcG9ydGlvbiBzdGFydHMgYWZ0ZXIgdGhlIHJ0cCBoZWFkZXIKKyAgICAgKiBl
eHRlbnNpb24sIGlmIHByZXNlbnQ7IG90aGVyd2lzZSwgaXQgc3RhcnRzIGFmdGVyIHRoZSBsYXN0
IGNzcmMsCisgICAgICogaWYgYW55IGFyZSBwcmVzZW50CisgICAgICoKKyAgICAgKiBpZiB3ZSdy
ZSBub3QgcHJvdmlkaW5nIGNvbmZpZGVudGlhbGl0eSwgc2V0IGVuY19zdGFydCB0byBOVUxMCisg
ICAgICovCisgICAgaWYgKHN0cmVhbS0+cnRwX3NlcnZpY2VzICYgc2VjX3NlcnZfY29uZikgewor
ICAgICAgICBlbmNfc3RhcnQgPSAodWludDMyX3QgKiloZHIgKyB1aW50MzJzX2luX3J0cF9oZWFk
ZXIgKyBoZHItPmNjOworICAgICAgICBpZiAoaGRyLT54ID09IDEpIHsKKyAgICAgICAgICAgIHh0
bl9oZHIgPSAoc3J0cF9oZHJfeHRuZF90ICopZW5jX3N0YXJ0OworICAgICAgICAgICAgZW5jX3N0
YXJ0ICs9IChudG9ocyh4dG5faGRyLT5sZW5ndGgpICsgMSk7CisgICAgICAgIH0KKyAgICAgICAg
Lyogbm90ZTogdGhlIHBhc3NlZCBzaXplIGlzIHdpdGhvdXQgdGhlIGF1dGggdGFnICovCisgICAg
ICAgIGlmICghKCh1aW50OF90ICopZW5jX3N0YXJ0IDw9ICh1aW50OF90ICopaGRyICsgKnBrdF9v
Y3RldF9sZW4pKQorICAgICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19wYXJzZV9lcnI7
CisgICAgICAgIGVuY19vY3RldF9sZW4gPQorICAgICAgICAgICAgKGludCkoKnBrdF9vY3RldF9s
ZW4gLSAoKHVpbnQ4X3QgKillbmNfc3RhcnQgLSAodWludDhfdCAqKWhkcikpOworICAgICAgICBp
ZiAoZW5jX29jdGV0X2xlbiA8IDApCisgICAgICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVz
X3BhcnNlX2VycjsKKyAgICB9IGVsc2UgeworICAgICAgICBlbmNfc3RhcnQgPSBOVUxMOworICAg
IH0KKworICAgIG1raV9sb2NhdGlvbiA9ICh1aW50OF90ICopaGRyICsgKnBrdF9vY3RldF9sZW47
CisgICAgbWtpX3NpemUgPSBzcnRwX2luamVjdF9ta2kobWtpX2xvY2F0aW9uLCBzZXNzaW9uX2tl
eXMsIHVzZV9ta2kpOworCisgICAgLyoKKyAgICAgKiBpZiB3ZSdyZSBwcm92aWRpbmcgYXV0aGVu
dGljYXRpb24sIHNldCB0aGUgYXV0aF9zdGFydCBhbmQgYXV0aF90YWcKKyAgICAgKiBwb2ludGVy
cyB0byB0aGUgcHJvcGVyIGxvY2F0aW9uczsgb3RoZXJ3aXNlLCBzZXQgYXV0aF9zdGFydCB0byBO
VUxMCisgICAgICogdG8gaW5kaWNhdGUgdGhhdCBubyBhdXRoZW50aWNhdGlvbiBpcyBuZWVkZWQK
KyAgICAgKi8KKyAgICBpZiAoc3RyZWFtLT5ydHBfc2VydmljZXMgJiBzZWNfc2Vydl9hdXRoKSB7
CisgICAgICAgIGF1dGhfc3RhcnQgPSAodWludDMyX3QgKiloZHI7CisgICAgICAgIGF1dGhfdGFn
ID0gKHVpbnQ4X3QgKiloZHIgKyAqcGt0X29jdGV0X2xlbiArIG1raV9zaXplOworICAgIH0gZWxz
ZSB7CisgICAgICAgIGF1dGhfc3RhcnQgPSBOVUxMOworICAgICAgICBhdXRoX3RhZyA9IE5VTEw7
CisgICAgfQorCisgICAgLyoKKyAgICAgKiBlc3RpbWF0ZSB0aGUgcGFja2V0IGluZGV4IHVzaW5n
IHRoZSBzdGFydCBvZiB0aGUgcmVwbGF5IHdpbmRvdworICAgICAqIGFuZCB0aGUgc2VxdWVuY2Ug
bnVtYmVyIGZyb20gdGhlIGhlYWRlcgorICAgICAqLworICAgIHN0YXR1cyA9IHNydHBfZ2V0X2Vz
dF9wa3RfaW5kZXgoaGRyLCBzdHJlYW0sICZlc3QsICZkZWx0YSk7CisKKyAgICBpZiAoc3RhdHVz
ICYmIChzdGF0dXMgIT0gc3J0cF9lcnJfc3RhdHVzX3BrdF9pZHhfYWR2KSkKKyAgICAgICAgcmV0
dXJuIHN0YXR1czsKKworICAgIGlmIChzdGF0dXMgPT0gc3J0cF9lcnJfc3RhdHVzX3BrdF9pZHhf
YWR2KQorICAgICAgICBhZHZhbmNlX3BhY2tldF9pbmRleCA9IDE7CisKKyAgICBpZiAoYWR2YW5j
ZV9wYWNrZXRfaW5kZXgpIHsKKyAgICAgICAgc3J0cF9yZGJ4X3NldF9yb2Nfc2VxKCZzdHJlYW0t
PnJ0cF9yZGJ4LCAodWludDMyX3QpKGVzdCA+PiAxNiksCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAodWludDE2X3QpKGVzdCAmIDB4RkZGRikpOworICAgICAgICBzdHJlYW0tPnBlbmRp
bmdfcm9jID0gMDsKKyAgICAgICAgc3J0cF9yZGJ4X2FkZF9pbmRleCgmc3RyZWFtLT5ydHBfcmRi
eCwgMCk7CisgICAgfSBlbHNlIHsKKyAgICAgICAgc3RhdHVzID0gc3J0cF9yZGJ4X2NoZWNrKCZz
dHJlYW0tPnJ0cF9yZGJ4LCBkZWx0YSk7CisgICAgICAgIGlmIChzdGF0dXMpIHsKKyAgICAgICAg
ICAgIGlmIChzdGF0dXMgIT0gc3J0cF9lcnJfc3RhdHVzX3JlcGxheV9mYWlsIHx8CisgICAgICAg
ICAgICAgICAgIXN0cmVhbS0+YWxsb3dfcmVwZWF0X3R4KQorICAgICAgICAgICAgICAgIHJldHVy
biBzdGF0dXM7IC8qIHdlJ3ZlIGJlZW4gYXNrZWQgdG8gcmV1c2UgYW4gaW5kZXggKi8KKyAgICAg
ICAgfQorICAgICAgICBzcnRwX3JkYnhfYWRkX2luZGV4KCZzdHJlYW0tPnJ0cF9yZGJ4LCBkZWx0
YSk7CisgICAgfQogCi0gIC8qIGNoZWNrIHRoZSBwYWNrZXQgbGVuZ3RoIC0gaXQgbXVzdCBhdCBs
ZWFzdCBjb250YWluIGEgZnVsbCBoZWFkZXIgKi8KLSAgaWYgKCpwa3Rfb2N0ZXRfbGVuIDwgb2N0
ZXRzX2luX3J0cF9oZWFkZXIpCi0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW07
Ci0KLSAgLyoKLSAgICogbG9vayB1cCBzc3JjIGluIHNydHBfc3RyZWFtIGxpc3QsIGFuZCBwcm9j
ZXNzIHRoZSBwYWNrZXQgd2l0aCAKLSAgICogdGhlIGFwcHJvcHJpYXRlIHN0cmVhbS4gIGlmIHdl
IGhhdmVuJ3Qgc2VlbiB0aGlzIHN0cmVhbSBiZWZvcmUsCi0gICAqIHRoZXJlJ3Mgb25seSBvbmUg
a2V5IGZvciB0aGlzIHNydHBfc2Vzc2lvbiwgYW5kIHRoZSBjaXBoZXIKLSAgICogc3VwcG9ydHMg
a2V5LXNoYXJpbmcsIHRoZW4gd2UgYXNzdW1lIHRoYXQgYSBuZXcgc3RyZWFtIHVzaW5nCi0gICAq
IHRoYXQga2V5IGhhcyBqdXN0IHN0YXJ0ZWQgdXAKLSAgICovCi0gIHN0cmVhbSA9IHNydHBfZ2V0
X3N0cmVhbShjdHgsIGhkci0+c3NyYyk7Ci0gIGlmIChzdHJlYW0gPT0gTlVMTCkgewotICAgIGlm
IChjdHgtPnN0cmVhbV90ZW1wbGF0ZSAhPSBOVUxMKSB7Ci0gICAgICBzdHJlYW0gPSBjdHgtPnN0
cmVhbV90ZW1wbGF0ZTsKLSAgICAgIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAidXNpbmcgcHJvdmlz
aW9uYWwgc3RyZWFtIChTU1JDOiAweCUwOHgpIiwKLQkJICBudG9obChoZHItPnNzcmMpKTsKLSAg
ICAgIAotICAgICAgLyogCi0gICAgICAgKiBzZXQgZXN0aW1hdGVkIHBhY2tldCBpbmRleCB0byBz
ZXF1ZW5jZSBudW1iZXIgZnJvbSBoZWFkZXIsCi0gICAgICAgKiBhbmQgc2V0IGRlbHRhIGVxdWFs
IHRvIHRoZSBzYW1lIHZhbHVlCi0gICAgICAgKi8KICNpZmRlZiBOT182NEJJVF9NQVRICi0gICAg
ICBlc3QgPSAoc3J0cF94dGRfc2VxX251bV90KSBtYWtlNjQoMCxudG9ocyhoZHItPnNlcSkpOwot
ICAgICAgZGVsdGEgPSBsb3czMihlc3QpOworICAgIGRlYnVnX3ByaW50Mihtb2Rfc3J0cCwgImVz
dGltYXRlZCBwYWNrZXQgaW5kZXg6ICUwOHglMDh4IiwgaGlnaDMyKGVzdCksCisgICAgICAgICAg
ICAgICAgIGxvdzMyKGVzdCkpOwogI2Vsc2UKLSAgICAgIGVzdCA9IChzcnRwX3h0ZF9zZXFfbnVt
X3QpIG50b2hzKGhkci0+c2VxKTsKLSAgICAgIGRlbHRhID0gKGludCllc3Q7CisgICAgZGVidWdf
cHJpbnQobW9kX3NydHAsICJlc3RpbWF0ZWQgcGFja2V0IGluZGV4OiAlMDE2bGx4IiwgZXN0KTsK
ICNlbmRpZgorCisgICAgLyoKKyAgICAgKiBpZiB3ZSdyZSB1c2luZyByaW5kYWVsIGNvdW50ZXIg
bW9kZSwgc2V0IG5vbmNlIGFuZCBzZXEKKyAgICAgKi8KKyAgICBpZiAoc2Vzc2lvbl9rZXlzLT5y
dHBfY2lwaGVyLT50eXBlLT5pZCA9PSBTUlRQX0FFU19JQ01fMTI4IHx8CisgICAgICAgIHNlc3Np
b25fa2V5cy0+cnRwX2NpcGhlci0+dHlwZS0+aWQgPT0gU1JUUF9BRVNfSUNNXzE5MiB8fAorICAg
ICAgICBzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXItPnR5cGUtPmlkID09IFNSVFBfQUVTX0lDTV8y
NTYpIHsKKyAgICAgICAgdjEyOF90IGl2OworCisgICAgICAgIGl2LnYzMlswXSA9IDA7CisgICAg
ICAgIGl2LnYzMlsxXSA9IGhkci0+c3NyYzsKKyNpZmRlZiBOT182NEJJVF9NQVRICisgICAgICAg
IGl2LnY2NFsxXSA9IGJlNjRfdG9fY3B1KAorICAgICAgICAgICAgbWFrZTY0KChoaWdoMzIoZXN0
KSA8PCAxNikgfCAobG93MzIoZXN0KSA+PiAxNiksIGxvdzMyKGVzdCkgPDwgMTYpKTsKKyNlbHNl
CisgICAgICAgIGl2LnY2NFsxXSA9IGJlNjRfdG9fY3B1KGVzdCA8PCAxNik7CisjZW5kaWYKKyAg
ICAgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfc2V0X2l2KHNlc3Npb25fa2V5cy0+cnRwX2NpcGhl
ciwgKHVpbnQ4X3QgKikmaXYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBz
cnRwX2RpcmVjdGlvbl9lbmNyeXB0KTsKKyAgICAgICAgaWYgKCFzdGF0dXMgJiYgc2Vzc2lvbl9r
ZXlzLT5ydHBfeHRuX2hkcl9jaXBoZXIpIHsKKyAgICAgICAgICAgIHN0YXR1cyA9IHNydHBfY2lw
aGVyX3NldF9pdihzZXNzaW9uX2tleXMtPnJ0cF94dG5faGRyX2NpcGhlciwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAodWludDhfdCAqKSZpdiwgc3J0cF9kaXJlY3Rp
b25fZW5jcnlwdCk7CisgICAgICAgIH0KICAgICB9IGVsc2UgewotICAgICAgCi0gICAgICAvKgot
ICAgICAgICogbm8gc3RyZWFtIGNvcnJlc3BvbmRpbmcgdG8gU1NSQyBmb3VuZCwgYW5kIHdlIGRv
bid0IGRvCi0gICAgICAgKiBrZXktc2hhcmluZywgc28gcmV0dXJuIGFuIGVycm9yCi0gICAgICAg
Ki8KLSAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfbm9fY3R4OwotICAgIH0KLSAgfSBlbHNl
IHsKLSAgICBzdGF0dXMgPSBzcnRwX2dldF9lc3RfcGt0X2luZGV4KGhkciwKLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHN0cmVhbSwKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICZlc3QsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAm
ZGVsdGEpOworICAgICAgICB2MTI4X3QgaXY7CiAKLSAgICBpZiAoc3RhdHVzICYmIChzdGF0dXMg
IT0gc3J0cF9lcnJfc3RhdHVzX3BrdF9pZHhfYWR2KSkKLSAgICAgIHJldHVybiBzdGF0dXM7Cisv
KiBvdGhlcndpc2UsIHNldCB0aGUgaW5kZXggdG8gZXN0ICovCisjaWZkZWYgTk9fNjRCSVRfTUFU
SAorICAgICAgICBpdi52MzJbMF0gPSAwOworICAgICAgICBpdi52MzJbMV0gPSAwOworI2Vsc2UK
KyAgICAgICAgaXYudjY0WzBdID0gMDsKKyNlbmRpZgorICAgICAgICBpdi52NjRbMV0gPSBiZTY0
X3RvX2NwdShlc3QpOworICAgICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9zZXRfaXYoc2Vzc2lv
bl9rZXlzLT5ydHBfY2lwaGVyLCAodWludDhfdCAqKSZpdiwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHNydHBfZGlyZWN0aW9uX2VuY3J5cHQpOworICAgICAgICBpZiAoIXN0
YXR1cyAmJiBzZXNzaW9uX2tleXMtPnJ0cF94dG5faGRyX2NpcGhlcikgeworICAgICAgICAgICAg
c3RhdHVzID0gc3J0cF9jaXBoZXJfc2V0X2l2KHNlc3Npb25fa2V5cy0+cnRwX3h0bl9oZHJfY2lw
aGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICh1aW50OF90ICop
Jml2LCBzcnRwX2RpcmVjdGlvbl9lbmNyeXB0KTsKKyAgICAgICAgfQorICAgIH0KKyAgICBpZiAo
c3RhdHVzKQorICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2NpcGhlcl9mYWlsOworCisv
KiBzaGlmdCBlc3QsIHB1dCBpbnRvIG5ldHdvcmsgYnl0ZSBvcmRlciAqLworI2lmZGVmIE5PXzY0
QklUX01BVEgKKyAgICBlc3QgPSBiZTY0X3RvX2NwdSgKKyAgICAgICAgbWFrZTY0KChoaWdoMzIo
ZXN0KSA8PCAxNikgfCAobG93MzIoZXN0KSA+PiAxNiksIGxvdzMyKGVzdCkgPDwgMTYpKTsKKyNl
bHNlCisgICAgZXN0ID0gYmU2NF90b19jcHUoZXN0IDw8IDE2KTsKKyNlbmRpZgogCi0gICAgaWYg
KHN0YXR1cyA9PSBzcnRwX2Vycl9zdGF0dXNfcGt0X2lkeF9hZHYpIHsKLSAgICAgIGFkdmFuY2Vf
cGFja2V0X2luZGV4ID0gMTsKLSAgICAgIHJvY190b19zZXQgPSAodWludDMyX3QpKGVzdCA+PiAx
Nik7Ci0gICAgICBzZXFfdG9fc2V0ID0gKHVpbnQxNl90KShlc3QgJiAweEZGRkYpOworICAgIC8q
CisgICAgICogaWYgd2UncmUgYXV0aGVudGljYXRpbmcgdXNpbmcgYSB1bml2ZXJzYWwgaGFzaCwg
cHV0IHRoZSBrZXlzdHJlYW0KKyAgICAgKiBwcmVmaXggaW50byB0aGUgYXV0aGVudGljYXRpb24g
dGFnCisgICAgICovCisgICAgaWYgKGF1dGhfc3RhcnQpIHsKKyAgICAgICAgcHJlZml4X2xlbiA9
IHNydHBfYXV0aF9nZXRfcHJlZml4X2xlbmd0aChzZXNzaW9uX2tleXMtPnJ0cF9hdXRoKTsKKyAg
ICAgICAgaWYgKHByZWZpeF9sZW4pIHsKKyAgICAgICAgICAgIHN0YXR1cyA9IHNydHBfY2lwaGVy
X291dHB1dChzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXIsIGF1dGhfdGFnLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICZwcmVmaXhfbGVuKTsKKyAgICAgICAgICAgIGlm
IChzdGF0dXMpCisgICAgICAgICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19jaXBoZXJf
ZmFpbDsKKyAgICAgICAgICAgIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAia2V5c3RyZWFtIHByZWZp
eDogJXMiLAorICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0
cmluZyhhdXRoX3RhZywgcHJlZml4X2xlbikpOworICAgICAgICB9CiAgICAgfQogCi0gICAgLyog
Y2hlY2sgcmVwbGF5IGRhdGFiYXNlICovCi0gICAgaWYgKCFhZHZhbmNlX3BhY2tldF9pbmRleCkg
ewotICAgICAgc3RhdHVzID0gc3J0cF9yZGJ4X2NoZWNrKCZzdHJlYW0tPnJ0cF9yZGJ4LCBkZWx0
YSk7Ci0gICAgICBpZiAoc3RhdHVzKQotICAgICAgICByZXR1cm4gc3RhdHVzOworICAgIGlmICh4
dG5faGRyICYmIHNlc3Npb25fa2V5cy0+cnRwX3h0bl9oZHJfY2lwaGVyKSB7CisgICAgICAgIC8q
CisgICAgICAgICAqIGV4dGVuc2lvbnMgaGVhZGVyIGVuY3J5cHRpb24gUkZDIDY5MDQKKyAgICAg
ICAgICovCisgICAgICAgIHN0YXR1cyA9IHNydHBfcHJvY2Vzc19oZWFkZXJfZW5jcnlwdGlvbihz
dHJlYW0sIHh0bl9oZHIsIHNlc3Npb25fa2V5cyk7CisgICAgICAgIGlmIChzdGF0dXMpIHsKKyAg
ICAgICAgICAgIHJldHVybiBzdGF0dXM7CisgICAgICAgIH0KKyAgICB9CisKKyAgICAvKiBpZiB3
ZSdyZSBlbmNyeXB0aW5nLCBleG9yIGtleXN0cmVhbSBpbnRvIHRoZSBtZXNzYWdlICovCisgICAg
aWYgKGVuY19zdGFydCkgeworICAgICAgICBzdGF0dXMgPQorICAgICAgICAgICAgc3J0cF9jaXBo
ZXJfZW5jcnlwdChzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXIsICh1aW50OF90ICopZW5jX3N0YXJ0
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAodW5zaWduZWQgaW50ICopJmVuY19v
Y3RldF9sZW4pOworICAgICAgICBpZiAoc3RhdHVzKQorICAgICAgICAgICAgcmV0dXJuIHNydHBf
ZXJyX3N0YXR1c19jaXBoZXJfZmFpbDsKKyAgICB9CisKKyAgICAvKgorICAgICAqICBpZiB3ZSdy
ZSBhdXRoZW50aWNhdGluZywgcnVuIGF1dGhlbnRpY2F0aW9uIGZ1bmN0aW9uIGFuZCBwdXQgcmVz
dWx0CisgICAgICogIGludG8gdGhlIGF1dGhfdGFnCisgICAgICovCisgICAgaWYgKGF1dGhfc3Rh
cnQpIHsKKyAgICAgICAgLyogaW5pdGlhbGl6ZSBhdXRoIGZ1bmMgY29udGV4dCAqLworICAgICAg
ICBzdGF0dXMgPSBzcnRwX2F1dGhfc3RhcnQoc2Vzc2lvbl9rZXlzLT5ydHBfYXV0aCk7CisgICAg
ICAgIGlmIChzdGF0dXMpCisgICAgICAgICAgICByZXR1cm4gc3RhdHVzOworCisgICAgICAgIC8q
IHJ1biBhdXRoIGZ1bmMgb3ZlciBwYWNrZXQgKi8KKyAgICAgICAgc3RhdHVzID0gc3J0cF9hdXRo
X3VwZGF0ZShzZXNzaW9uX2tleXMtPnJ0cF9hdXRoLCAodWludDhfdCAqKWF1dGhfc3RhcnQsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKnBrdF9vY3RldF9sZW4pOworICAgICAg
ICBpZiAoc3RhdHVzKQorICAgICAgICAgICAgcmV0dXJuIHN0YXR1czsKKworICAgICAgICAvKiBy
dW4gYXV0aCBmdW5jIG92ZXIgUk9DLCBwdXQgcmVzdWx0IGludG8gYXV0aF90YWcgKi8KKyAgICAg
ICAgZGVidWdfcHJpbnQobW9kX3NydHAsICJlc3RpbWF0ZWQgcGFja2V0IGluZGV4OiAlMDE2bGx4
IiwgZXN0KTsKKyAgICAgICAgc3RhdHVzID0gc3J0cF9hdXRoX2NvbXB1dGUoc2Vzc2lvbl9rZXlz
LT5ydHBfYXV0aCwgKHVpbnQ4X3QgKikmZXN0LCA0LAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBhdXRoX3RhZyk7CisgICAgICAgIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAic3J0
cCBhdXRoIHRhZzogICAgJXMiLAorICAgICAgICAgICAgICAgICAgICBzcnRwX29jdGV0X3N0cmlu
Z19oZXhfc3RyaW5nKGF1dGhfdGFnLCB0YWdfbGVuKSk7CisgICAgICAgIGlmIChzdGF0dXMpCisg
ICAgICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2F1dGhfZmFpbDsKICAgICB9Ci0gIH0K
IAorICAgIGlmIChhdXRoX3RhZykgeworICAgICAgICAvKiBpbmNyZWFzZSB0aGUgcGFja2V0IGxl
bmd0aCBieSB0aGUgbGVuZ3RoIG9mIHRoZSBhdXRoIHRhZyAqLworICAgICAgICAqcGt0X29jdGV0
X2xlbiArPSB0YWdfbGVuOworICAgIH0KKworICAgIGlmICh1c2VfbWtpKSB7CisgICAgICAgIC8q
IGluY3JlYXRlIHRoZSBwYWNrZXQgbGVuZ3RoIGJ5IHRoZSBta2kgc2l6ZSAqLworICAgICAgICAq
cGt0X29jdGV0X2xlbiArPSBta2lfc2l6ZTsKKyAgICB9CisKKyAgICByZXR1cm4gc3J0cF9lcnJf
c3RhdHVzX29rOworfQorCitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3VucHJvdGVjdChzcnRwX2N0
eF90ICpjdHgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2b2lkICpzcnRwX2hk
ciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCAqcGt0X29jdGV0X2xlbikK
K3sKKyAgICByZXR1cm4gc3J0cF91bnByb3RlY3RfbWtpKGN0eCwgc3J0cF9oZHIsIHBrdF9vY3Rl
dF9sZW4sIDApOworfQorCitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3VucHJvdGVjdF9ta2koc3J0
cF9jdHhfdCAqY3R4LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZvaWQg
KnNydHBfaGRyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCAqcGt0
X29jdGV0X2xlbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25l
ZCBpbnQgdXNlX21raSkKK3sKKyAgICBzcnRwX2hkcl90ICpoZHIgPSAoc3J0cF9oZHJfdCAqKXNy
dHBfaGRyOworICAgIHVpbnQzMl90ICplbmNfc3RhcnQ7ICAgICAgICAgICAgLyogcG9pbnRlciB0
byBzdGFydCBvZiBlbmNyeXB0ZWQgcG9ydGlvbiAgKi8KKyAgICB1aW50MzJfdCAqYXV0aF9zdGFy
dDsgICAgICAgICAgIC8qIHBvaW50ZXIgdG8gc3RhcnQgb2YgYXV0aC4gcG9ydGlvbiAgICAgICov
CisgICAgdW5zaWduZWQgaW50IGVuY19vY3RldF9sZW4gPSAwOyAvKiBudW1iZXIgb2Ygb2N0ZXRz
IGluIGVuY3J5cHRlZCBwb3J0aW9uICovCisgICAgdWludDhfdCAqYXV0aF90YWcgPSBOVUxMOyAg
ICAgICAvKiBsb2NhdGlvbiBvZiBhdXRoX3RhZyB3aXRoaW4gcGFja2V0ICAgICAqLworICAgIHNy
dHBfeHRkX3NlcV9udW1fdCBlc3Q7ICAgICAgICAgLyogZXN0aW1hdGVkIHh0ZF9zZXFfbnVtX3Qg
b2YgKmhkciAgICAgICAgKi8KKyAgICBpbnQgZGVsdGE7ICAgICAgICAgICAgICAgICAgICAgIC8q
IGRlbHRhIG9mIGxvY2FsIHBrdCBpZHggYW5kIHRoYXQgaW4gaGRyICovCisgICAgdjEyOF90IGl2
OworICAgIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKKyAgICBzcnRwX3N0cmVhbV9jdHhfdCAq
c3RyZWFtOworICAgIHVpbnQ4X3QgdG1wX3RhZ1tTUlRQX01BWF9UQUdfTEVOXTsKKyAgICB1aW50
MzJfdCB0YWdfbGVuLCBwcmVmaXhfbGVuOworICAgIHNydHBfaGRyX3h0bmRfdCAqeHRuX2hkciA9
IE5VTEw7CisgICAgdW5zaWduZWQgaW50IG1raV9zaXplID0gMDsKKyAgICBzcnRwX3Nlc3Npb25f
a2V5c190ICpzZXNzaW9uX2tleXMgPSBOVUxMOworICAgIGludCBhZHZhbmNlX3BhY2tldF9pbmRl
eCA9IDA7CisgICAgdWludDMyX3Qgcm9jX3RvX3NldCA9IDA7CisgICAgdWludDE2X3Qgc2VxX3Rv
X3NldCA9IDA7CisKKyAgICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgImZ1bmN0aW9uIHNydHBfdW5w
cm90ZWN0IiwgTlVMTCk7CisKKyAgICAvKiB3ZSBhc3N1bWUgdGhlIGhkciBpcyAzMi1iaXQgYWxp
Z25lZCB0byBzdGFydCAqLworCisgICAgLyogVmVyaWZ5IFJUUCBoZWFkZXIgKi8KKyAgICBzdGF0
dXMgPSBzcnRwX3ZhbGlkYXRlX3J0cF9oZWFkZXIoc3J0cF9oZHIsIHBrdF9vY3RldF9sZW4pOwor
ICAgIGlmIChzdGF0dXMpCisgICAgICAgIHJldHVybiBzdGF0dXM7CisKKyAgICAvKiBjaGVjayB0
aGUgcGFja2V0IGxlbmd0aCAtIGl0IG11c3QgYXQgbGVhc3QgY29udGFpbiBhIGZ1bGwgaGVhZGVy
ICovCisgICAgaWYgKCpwa3Rfb2N0ZXRfbGVuIDwgb2N0ZXRzX2luX3J0cF9oZWFkZXIpCisgICAg
ICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtOworCisgICAgLyoKKyAgICAgKiBs
b29rIHVwIHNzcmMgaW4gc3J0cF9zdHJlYW0gbGlzdCwgYW5kIHByb2Nlc3MgdGhlIHBhY2tldCB3
aXRoCisgICAgICogdGhlIGFwcHJvcHJpYXRlIHN0cmVhbS4gIGlmIHdlIGhhdmVuJ3Qgc2VlbiB0
aGlzIHN0cmVhbSBiZWZvcmUsCisgICAgICogdGhlcmUncyBvbmx5IG9uZSBrZXkgZm9yIHRoaXMg
c3J0cF9zZXNzaW9uLCBhbmQgdGhlIGNpcGhlcgorICAgICAqIHN1cHBvcnRzIGtleS1zaGFyaW5n
LCB0aGVuIHdlIGFzc3VtZSB0aGF0IGEgbmV3IHN0cmVhbSB1c2luZworICAgICAqIHRoYXQga2V5
IGhhcyBqdXN0IHN0YXJ0ZWQgdXAKKyAgICAgKi8KKyAgICBzdHJlYW0gPSBzcnRwX2dldF9zdHJl
YW0oY3R4LCBoZHItPnNzcmMpOworICAgIGlmIChzdHJlYW0gPT0gTlVMTCkgeworICAgICAgICBp
ZiAoY3R4LT5zdHJlYW1fdGVtcGxhdGUgIT0gTlVMTCkgeworICAgICAgICAgICAgc3RyZWFtID0g
Y3R4LT5zdHJlYW1fdGVtcGxhdGU7CisgICAgICAgICAgICBkZWJ1Z19wcmludChtb2Rfc3J0cCwg
InVzaW5nIHByb3Zpc2lvbmFsIHN0cmVhbSAoU1NSQzogMHglMDh4KSIsCisgICAgICAgICAgICAg
ICAgICAgICAgICBudG9obChoZHItPnNzcmMpKTsKKworLyoKKyAqIHNldCBlc3RpbWF0ZWQgcGFj
a2V0IGluZGV4IHRvIHNlcXVlbmNlIG51bWJlciBmcm9tIGhlYWRlciwKKyAqIGFuZCBzZXQgZGVs
dGEgZXF1YWwgdG8gdGhlIHNhbWUgdmFsdWUKKyAqLwogI2lmZGVmIE5PXzY0QklUX01BVEgKLSAg
ZGVidWdfcHJpbnQyKG1vZF9zcnRwLCAiZXN0aW1hdGVkIHVfcGFja2V0IGluZGV4OiAlMDh4JTA4
eCIsIGhpZ2gzMihlc3QpLGxvdzMyKGVzdCkpOworICAgICAgICAgICAgZXN0ID0gKHNydHBfeHRk
X3NlcV9udW1fdCltYWtlNjQoMCwgbnRvaHMoaGRyLT5zZXEpKTsKKyAgICAgICAgICAgIGRlbHRh
ID0gbG93MzIoZXN0KTsKICNlbHNlCi0gIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAiZXN0aW1hdGVk
IHVfcGFja2V0IGluZGV4OiAlMDE2bGx4IiwgZXN0KTsKKyAgICAgICAgICAgIGVzdCA9IChzcnRw
X3h0ZF9zZXFfbnVtX3QpbnRvaHMoaGRyLT5zZXEpOworICAgICAgICAgICAgZGVsdGEgPSAoaW50
KWVzdDsKICNlbmRpZgorICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgLyoKKyAgICAgICAg
ICAgICAqIG5vIHN0cmVhbSBjb3JyZXNwb25kaW5nIHRvIFNTUkMgZm91bmQsIGFuZCB3ZSBkb24n
dCBkbworICAgICAgICAgICAgICoga2V5LXNoYXJpbmcsIHNvIHJldHVybiBhbiBlcnJvcgorICAg
ICAgICAgICAgICovCisgICAgICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX25vX2N0eDsK
KyAgICAgICAgfQorICAgIH0gZWxzZSB7CisgICAgICAgIHN0YXR1cyA9IHNydHBfZ2V0X2VzdF9w
a3RfaW5kZXgoaGRyLCBzdHJlYW0sICZlc3QsICZkZWx0YSk7CisKKyAgICAgICAgaWYgKHN0YXR1
cyAmJiAoc3RhdHVzICE9IHNydHBfZXJyX3N0YXR1c19wa3RfaWR4X2FkdikpCisgICAgICAgICAg
ICByZXR1cm4gc3RhdHVzOworCisgICAgICAgIGlmIChzdGF0dXMgPT0gc3J0cF9lcnJfc3RhdHVz
X3BrdF9pZHhfYWR2KSB7CisgICAgICAgICAgICBhZHZhbmNlX3BhY2tldF9pbmRleCA9IDE7Cisg
ICAgICAgICAgICByb2NfdG9fc2V0ID0gKHVpbnQzMl90KShlc3QgPj4gMTYpOworICAgICAgICAg
ICAgc2VxX3RvX3NldCA9ICh1aW50MTZfdCkoZXN0ICYgMHhGRkZGKTsKKyAgICAgICAgfQorCisg
ICAgICAgIC8qIGNoZWNrIHJlcGxheSBkYXRhYmFzZSAqLworICAgICAgICBpZiAoIWFkdmFuY2Vf
cGFja2V0X2luZGV4KSB7CisgICAgICAgICAgICBzdGF0dXMgPSBzcnRwX3JkYnhfY2hlY2soJnN0
cmVhbS0+cnRwX3JkYngsIGRlbHRhKTsKKyAgICAgICAgICAgIGlmIChzdGF0dXMpCisgICAgICAg
ICAgICAgICAgcmV0dXJuIHN0YXR1czsKKyAgICAgICAgfQorICAgIH0KIAotICAvKgotICAgKiBE
ZXRlcm1pbmUgaWYgTUtJIGlzIGJlaW5nIHVzZWQgYW5kIHdoYXQgc2Vzc2lvbiBrZXlzIHNob3Vs
ZCBiZSB1c2VkCi0gICAqLwotICBpZiAodXNlX21raSkgewotICAgICAgc2Vzc2lvbl9rZXlzID0g
c3J0cF9nZXRfc2Vzc2lvbl9rZXlzKHN0cmVhbSwgKHVpbnQ4X3QgKiloZHIsCi0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNvbnN0IHVuc2lnbmVkIGludCopcGt0
X29jdGV0X2xlbiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAm
bWtpX3NpemUpOwotCi0gICAgICBpZiAoc2Vzc2lvbl9rZXlzID09IE5VTEwpIAotICAgICAgICAg
cmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfbWtpOwotICB9IGVsc2UgewotICAgICAgc2Vzc2lv
bl9rZXlzID0gJnN0cmVhbS0+c2Vzc2lvbl9rZXlzWzBdOwotICB9Ci0KLSAgLyoKLSAgICogQ2hl
Y2sgaWYgdGhpcyBpcyBhbiBBRUFEIHN0cmVhbSAoR0NNIG1vZGUpLiAgSWYgc28sIHRoZW4gZGlz
cGF0Y2gKLSAgICogdGhlIHJlcXVlc3QgdG8gb3VyIEFFQUQgaGFuZGxlci4KLSAgICovCi0gIGlm
IChzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXItPmFsZ29yaXRobSA9PSBTUlRQX0FFU19HQ01fMTI4
IHx8Ci0gICAgICBzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXItPmFsZ29yaXRobSA9PSBTUlRQX0FF
U19HQ01fMjU2KSB7Ci0gICAgICByZXR1cm4gc3J0cF91bnByb3RlY3RfYWVhZChjdHgsIHN0cmVh
bSwgZGVsdGEsIGVzdCwgc3J0cF9oZHIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAodW5zaWduZWQgaW50Kilwa3Rfb2N0ZXRfbGVuLCBzZXNzaW9uX2tleXMsCi0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBta2lfc2l6ZSk7Ci0gIH0KLQotICAvKiBnZXQgdGFnIGxl
bmd0aCBmcm9tIHN0cmVhbSAqLwotICB0YWdfbGVuID0gc3J0cF9hdXRoX2dldF90YWdfbGVuZ3Ro
KHNlc3Npb25fa2V5cy0+cnRwX2F1dGgpOyAKLQotICAvKiAKLSAgICogc2V0IHRoZSBjaXBoZXIn
cyBJViBwcm9wZXJseSwgZGVwZW5kaW5nIG9uIHdoYXRldmVyIGNpcGhlciB3ZQotICAgKiBoYXBw
ZW4gdG8gYmUgdXNpbmcKLSAgICovCi0gIGlmIChzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXItPnR5
cGUtPmlkID09IFNSVFBfQUVTX0lDTV8xMjggfHwKLSAgICAgIHNlc3Npb25fa2V5cy0+cnRwX2Np
cGhlci0+dHlwZS0+aWQgPT0gU1JUUF9BRVNfSUNNXzE5MiB8fAotICAgICAgc2Vzc2lvbl9rZXlz
LT5ydHBfY2lwaGVyLT50eXBlLT5pZCA9PSBTUlRQX0FFU19JQ01fMjU2KSB7Ci0gICAgLyogYWVz
IGNvdW50ZXIgbW9kZSAqLwotICAgIGl2LnYzMlswXSA9IDA7Ci0gICAgaXYudjMyWzFdID0gaGRy
LT5zc3JjOyAgLyogc3RpbGwgaW4gbmV0d29yayBvcmRlciAqLwogI2lmZGVmIE5PXzY0QklUX01B
VEgKLSAgICBpdi52NjRbMV0gPSBiZTY0X3RvX2NwdShtYWtlNjQoKGhpZ2gzMihlc3QpIDw8IDE2
KSB8IChsb3czMihlc3QpID4+IDE2KSwKLQkJCSAgICAgICAgIGxvdzMyKGVzdCkgPDwgMTYpKTsK
KyAgICBkZWJ1Z19wcmludDIobW9kX3NydHAsICJlc3RpbWF0ZWQgdV9wYWNrZXQgaW5kZXg6ICUw
OHglMDh4IiwgaGlnaDMyKGVzdCksCisgICAgICAgICAgICAgICAgIGxvdzMyKGVzdCkpOwogI2Vs
c2UKLSAgICBpdi52NjRbMV0gPSBiZTY0X3RvX2NwdShlc3QgPDwgMTYpOworICAgIGRlYnVnX3By
aW50KG1vZF9zcnRwLCAiZXN0aW1hdGVkIHVfcGFja2V0IGluZGV4OiAlMDE2bGx4IiwgZXN0KTsK
ICNlbmRpZgotICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3NldF9pdihzZXNzaW9uX2tleXMtPnJ0
cF9jaXBoZXIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICh1aW50OF90KikmaXYs
IHNydHBfZGlyZWN0aW9uX2RlY3J5cHQpOwotICAgIGlmICghc3RhdHVzICYmIHNlc3Npb25fa2V5
cy0+cnRwX3h0bl9oZHJfY2lwaGVyKSB7Ci0gICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9zZXRf
aXYoc2Vzc2lvbl9rZXlzLT5ydHBfeHRuX2hkcl9jaXBoZXIsCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgKHVpbnQ4X3QqKSZpdiwgc3J0cF9kaXJlY3Rpb25fZGVjcnlwdCk7CisK
KyAgICAvKiBEZXRlcm1pbmUgaWYgTUtJIGlzIGJlaW5nIHVzZWQgYW5kIHdoYXQgc2Vzc2lvbiBr
ZXlzIHNob3VsZCBiZSB1c2VkICovCisgICAgaWYgKHVzZV9ta2kpIHsKKyAgICAgICAgc2Vzc2lv
bl9rZXlzID0gc3J0cF9nZXRfc2Vzc2lvbl9rZXlzKAorICAgICAgICAgICAgc3RyZWFtLCAodWlu
dDhfdCAqKWhkciwgKGNvbnN0IHVuc2lnbmVkIGludCAqKXBrdF9vY3RldF9sZW4sCisgICAgICAg
ICAgICAmbWtpX3NpemUpOworCisgICAgICAgIGlmIChzZXNzaW9uX2tleXMgPT0gTlVMTCkKKyAg
ICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYmFkX21raTsKKyAgICB9IGVsc2Ugewor
ICAgICAgICBzZXNzaW9uX2tleXMgPSAmc3RyZWFtLT5zZXNzaW9uX2tleXNbMF07CiAgICAgfQot
ICB9IGVsc2UgeyAgCi0gICAgCi0gICAgLyogbm8gcGFydGljdWxhciBmb3JtYXQgLSBzZXQgdGhl
IGl2IHRvIHRoZSBwYWtjZXQgaW5kZXggKi8gIAorCisgICAgLyoKKyAgICAgKiBDaGVjayBpZiB0
aGlzIGlzIGFuIEFFQUQgc3RyZWFtIChHQ00gbW9kZSkuICBJZiBzbywgdGhlbiBkaXNwYXRjaAor
ICAgICAqIHRoZSByZXF1ZXN0IHRvIG91ciBBRUFEIGhhbmRsZXIuCisgICAgICovCisgICAgaWYg
KHNlc3Npb25fa2V5cy0+cnRwX2NpcGhlci0+YWxnb3JpdGhtID09IFNSVFBfQUVTX0dDTV8xMjgg
fHwKKyAgICAgICAgc2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVyLT5hbGdvcml0aG0gPT0gU1JUUF9B
RVNfR0NNXzI1NikgeworICAgICAgICByZXR1cm4gc3J0cF91bnByb3RlY3RfYWVhZChjdHgsIHN0
cmVhbSwgZGVsdGEsIGVzdCwgc3J0cF9oZHIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICh1bnNpZ25lZCBpbnQgKilwa3Rfb2N0ZXRfbGVuLCBzZXNzaW9uX2tleXMsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1raV9zaXplKTsKKyAgICB9CisKKyAgICAv
KiBnZXQgdGFnIGxlbmd0aCBmcm9tIHN0cmVhbSAqLworICAgIHRhZ19sZW4gPSBzcnRwX2F1dGhf
Z2V0X3RhZ19sZW5ndGgoc2Vzc2lvbl9rZXlzLT5ydHBfYXV0aCk7CisKKyAgICAvKgorICAgICAq
IHNldCB0aGUgY2lwaGVyJ3MgSVYgcHJvcGVybHksIGRlcGVuZGluZyBvbiB3aGF0ZXZlciBjaXBo
ZXIgd2UKKyAgICAgKiBoYXBwZW4gdG8gYmUgdXNpbmcKKyAgICAgKi8KKyAgICBpZiAoc2Vzc2lv
bl9rZXlzLT5ydHBfY2lwaGVyLT50eXBlLT5pZCA9PSBTUlRQX0FFU19JQ01fMTI4IHx8CisgICAg
ICAgIHNlc3Npb25fa2V5cy0+cnRwX2NpcGhlci0+dHlwZS0+aWQgPT0gU1JUUF9BRVNfSUNNXzE5
MiB8fAorICAgICAgICBzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXItPnR5cGUtPmlkID09IFNSVFBf
QUVTX0lDTV8yNTYpIHsKKyAgICAgICAgLyogYWVzIGNvdW50ZXIgbW9kZSAqLworICAgICAgICBp
di52MzJbMF0gPSAwOworICAgICAgICBpdi52MzJbMV0gPSBoZHItPnNzcmM7IC8qIHN0aWxsIGlu
IG5ldHdvcmsgb3JkZXIgKi8KICNpZmRlZiBOT182NEJJVF9NQVRICi0gICAgaXYudjMyWzBdID0g
MDsKLSAgICBpdi52MzJbMV0gPSAwOworICAgICAgICBpdi52NjRbMV0gPSBiZTY0X3RvX2NwdSgK
KyAgICAgICAgICAgIG1ha2U2NCgoaGlnaDMyKGVzdCkgPDwgMTYpIHwgKGxvdzMyKGVzdCkgPj4g
MTYpLCBsb3czMihlc3QpIDw8IDE2KSk7CiAjZWxzZQotICAgIGl2LnY2NFswXSA9IDA7CisgICAg
ICAgIGl2LnY2NFsxXSA9IGJlNjRfdG9fY3B1KGVzdCA8PCAxNik7CiAjZW5kaWYKLSAgICBpdi52
NjRbMV0gPSBiZTY0X3RvX2NwdShlc3QpOwotICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3NldF9p
dihzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXIsICh1aW50OF90KikmaXYsIHNydHBfZGlyZWN0aW9u
X2RlY3J5cHQpOwotICAgIGlmICghc3RhdHVzICYmIHNlc3Npb25fa2V5cy0+cnRwX3h0bl9oZHJf
Y2lwaGVyKSB7Ci0gICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9zZXRfaXYoc2Vzc2lvbl9rZXlz
LT5ydHBfeHRuX2hkcl9jaXBoZXIsICh1aW50OF90KikmaXYsIHNydHBfZGlyZWN0aW9uX2RlY3J5
cHQpOworICAgICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9zZXRfaXYoc2Vzc2lvbl9rZXlzLT5y
dHBfY2lwaGVyLCAodWludDhfdCAqKSZpdiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHNydHBfZGlyZWN0aW9uX2RlY3J5cHQpOworICAgICAgICBpZiAoIXN0YXR1cyAmJiBz
ZXNzaW9uX2tleXMtPnJ0cF94dG5faGRyX2NpcGhlcikgeworICAgICAgICAgICAgc3RhdHVzID0g
c3J0cF9jaXBoZXJfc2V0X2l2KHNlc3Npb25fa2V5cy0+cnRwX3h0bl9oZHJfY2lwaGVyLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICh1aW50OF90ICopJml2LCBzcnRw
X2RpcmVjdGlvbl9kZWNyeXB0KTsKKyAgICAgICAgfQorICAgIH0gZWxzZSB7CisvKiBubyBwYXJ0
aWN1bGFyIGZvcm1hdCAtIHNldCB0aGUgaXYgdG8gdGhlIHBha2NldCBpbmRleCAqLworI2lmZGVm
IE5PXzY0QklUX01BVEgKKyAgICAgICAgaXYudjMyWzBdID0gMDsKKyAgICAgICAgaXYudjMyWzFd
ID0gMDsKKyNlbHNlCisgICAgICAgIGl2LnY2NFswXSA9IDA7CisjZW5kaWYKKyAgICAgICAgaXYu
djY0WzFdID0gYmU2NF90b19jcHUoZXN0KTsKKyAgICAgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJf
c2V0X2l2KHNlc3Npb25fa2V5cy0+cnRwX2NpcGhlciwgKHVpbnQ4X3QgKikmaXYsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcnRwX2RpcmVjdGlvbl9kZWNyeXB0KTsKKyAg
ICAgICAgaWYgKCFzdGF0dXMgJiYgc2Vzc2lvbl9rZXlzLT5ydHBfeHRuX2hkcl9jaXBoZXIpIHsK
KyAgICAgICAgICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3NldF9pdihzZXNzaW9uX2tleXMtPnJ0
cF94dG5faGRyX2NpcGhlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAodWludDhfdCAqKSZpdiwgc3J0cF9kaXJlY3Rpb25fZGVjcnlwdCk7CisgICAgICAgIH0KICAg
ICB9Ci0gIH0KLSAgaWYgKHN0YXR1cykKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2NpcGhl
cl9mYWlsOworICAgIGlmIChzdGF0dXMpCisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNf
Y2lwaGVyX2ZhaWw7CiAKLSAgLyogc2hpZnQgZXN0LCBwdXQgaW50byBuZXR3b3JrIGJ5dGUgb3Jk
ZXIgKi8KKy8qIHNoaWZ0IGVzdCwgcHV0IGludG8gbmV0d29yayBieXRlIG9yZGVyICovCiAjaWZk
ZWYgTk9fNjRCSVRfTUFUSAotICBlc3QgPSBiZTY0X3RvX2NwdShtYWtlNjQoKGhpZ2gzMihlc3Qp
IDw8IDE2KSB8Ci0JCQkJCSAgICAobG93MzIoZXN0KSA+PiAxNiksCi0JCQkJCSAgICBsb3czMihl
c3QpIDw8IDE2KSk7CisgICAgZXN0ID0gYmU2NF90b19jcHUoCisgICAgICAgIG1ha2U2NCgoaGln
aDMyKGVzdCkgPDwgMTYpIHwgKGxvdzMyKGVzdCkgPj4gMTYpLCBsb3czMihlc3QpIDw8IDE2KSk7
CiAjZWxzZQotICBlc3QgPSBiZTY0X3RvX2NwdShlc3QgPDwgMTYpOworICAgIGVzdCA9IGJlNjRf
dG9fY3B1KGVzdCA8PCAxNik7CiAjZW5kaWYKIAotICAvKgotICAgKiBmaW5kIHN0YXJ0aW5nIHBv
aW50IGZvciBkZWNyeXB0aW9uIGFuZCBsZW5ndGggb2YgZGF0YSB0byBiZQotICAgKiBkZWNyeXB0
ZWQgLSB0aGUgZW5jcnlwdGVkIHBvcnRpb24gc3RhcnRzIGFmdGVyIHRoZSBydHAgaGVhZGVyCi0g
ICAqIGV4dGVuc2lvbiwgaWYgcHJlc2VudDsgb3RoZXJ3aXNlLCBpdCBzdGFydHMgYWZ0ZXIgdGhl
IGxhc3QgY3NyYywKLSAgICogaWYgYW55IGFyZSBwcmVzZW50Ci0gICAqCi0gICAqIGlmIHdlJ3Jl
IG5vdCBwcm92aWRpbmcgY29uZmlkZW50aWFsaXR5LCBzZXQgZW5jX3N0YXJ0IHRvIE5VTEwKLSAg
ICovCi0gIGlmIChzdHJlYW0tPnJ0cF9zZXJ2aWNlcyAmIHNlY19zZXJ2X2NvbmYpIHsKLSAgICBl
bmNfc3RhcnQgPSAodWludDMyX3QgKiloZHIgKyB1aW50MzJzX2luX3J0cF9oZWFkZXIgKyBoZHIt
PmNjOyAgCi0gICAgaWYgKGhkci0+eCA9PSAxKSB7Ci0gICAgICB4dG5faGRyID0gKHNydHBfaGRy
X3h0bmRfdCAqKWVuY19zdGFydDsKLSAgICAgIGVuY19zdGFydCArPSAobnRvaHMoeHRuX2hkci0+
bGVuZ3RoKSArIDEpOwotICAgIH0gIAotICAgIGlmICghKCh1aW50OF90KillbmNfc3RhcnQgPD0g
KHVpbnQ4X3QqKWhkciArICgqcGt0X29jdGV0X2xlbiAtIHRhZ19sZW4gLSBta2lfc2l6ZSkpKQot
ICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19wYXJzZV9lcnI7Ci0gICAgZW5jX29jdGV0X2xl
biA9ICh1aW50MzJfdCkoKnBrdF9vY3RldF9sZW4gLSB0YWdfbGVuIC0gbWtpX3NpemUgLQotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICgodWludDhfdCopZW5jX3N0YXJ0IC0gKHVpbnQ4
X3QqKWhkcikpOwotICB9IGVsc2UgewotICAgIGVuY19zdGFydCA9IE5VTEw7Ci0gIH0KLQotICAv
KiAKLSAgICogaWYgd2UncmUgcHJvdmlkaW5nIGF1dGhlbnRpY2F0aW9uLCBzZXQgdGhlIGF1dGhf
c3RhcnQgYW5kIGF1dGhfdGFnCi0gICAqIHBvaW50ZXJzIHRvIHRoZSBwcm9wZXIgbG9jYXRpb25z
OyBvdGhlcndpc2UsIHNldCBhdXRoX3N0YXJ0IHRvIE5VTEwKLSAgICogdG8gaW5kaWNhdGUgdGhh
dCBubyBhdXRoZW50aWNhdGlvbiBpcyBuZWVkZWQKLSAgICovCi0gIGlmIChzdHJlYW0tPnJ0cF9z
ZXJ2aWNlcyAmIHNlY19zZXJ2X2F1dGgpIHsKLSAgICBhdXRoX3N0YXJ0ID0gKHVpbnQzMl90ICop
aGRyOwotICAgIGF1dGhfdGFnID0gKHVpbnQ4X3QgKiloZHIgKyAqcGt0X29jdGV0X2xlbiAtIHRh
Z19sZW47Ci0gIH0gZWxzZSB7Ci0gICAgYXV0aF9zdGFydCA9IE5VTEw7Ci0gICAgYXV0aF90YWcg
PSBOVUxMOwotICB9IAotCi0gIC8qCi0gICAqIGlmIHdlIGV4cGVjdCBtZXNzYWdlIGF1dGhlbnRp
Y2F0aW9uLCBydW4gdGhlIGF1dGhlbnRpY2F0aW9uCi0gICAqIGZ1bmN0aW9uIGFuZCBjb21wYXJl
IHRoZSByZXN1bHQgd2l0aCB0aGUgdmFsdWUgb2YgdGhlIGF1dGhfdGFnCi0gICAqLwotICBpZiAo
YXV0aF9zdGFydCkgeyAgICAgICAgCi0KLSAgICAvKiAKLSAgICAgKiBpZiB3ZSdyZSB1c2luZyBh
IHVuaXZlcnNhbCBoYXNoLCB0aGVuIHdlIG5lZWQgdG8gY29tcHV0ZSB0aGUKLSAgICAgKiBrZXlz
dHJlYW0gcHJlZml4IGZvciBlbmNyeXB0aW5nIHRoZSB1bml2ZXJzYWwgaGFzaCBvdXRwdXQKKyAg
ICAvKgorICAgICAqIGZpbmQgc3RhcnRpbmcgcG9pbnQgZm9yIGRlY3J5cHRpb24gYW5kIGxlbmd0
aCBvZiBkYXRhIHRvIGJlCisgICAgICogZGVjcnlwdGVkIC0gdGhlIGVuY3J5cHRlZCBwb3J0aW9u
IHN0YXJ0cyBhZnRlciB0aGUgcnRwIGhlYWRlcgorICAgICAqIGV4dGVuc2lvbiwgaWYgcHJlc2Vu
dDsgb3RoZXJ3aXNlLCBpdCBzdGFydHMgYWZ0ZXIgdGhlIGxhc3QgY3NyYywKKyAgICAgKiBpZiBh
bnkgYXJlIHByZXNlbnQKICAgICAgKgotICAgICAqIGlmIHRoZSBrZXlzdHJlYW0gcHJlZml4IGxl
bmd0aCBpcyB6ZXJvLCB0aGVuIHdlIGtub3cgdGhhdAotICAgICAqIHRoZSBhdXRoZW50aWNhdG9y
IGlzbid0IHVzaW5nIGEgdW5pdmVyc2FsIGhhc2ggZnVuY3Rpb24KLSAgICAgKi8gIAotICAgIGlm
IChzZXNzaW9uX2tleXMtPnJ0cF9hdXRoLT5wcmVmaXhfbGVuICE9IDApIHsKLSAgICAgIAotICAg
ICAgcHJlZml4X2xlbiA9IHNydHBfYXV0aF9nZXRfcHJlZml4X2xlbmd0aChzZXNzaW9uX2tleXMt
PnJ0cF9hdXRoKTsgICAgCi0gICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9vdXRwdXQoc2Vzc2lv
bl9rZXlzLT5ydHBfY2lwaGVyLCB0bXBfdGFnLCAmcHJlZml4X2xlbik7Ci0gICAgICBkZWJ1Z19w
cmludChtb2Rfc3J0cCwgImtleXN0cmVhbSBwcmVmaXg6ICVzIiwgCi0JCSAgc3J0cF9vY3RldF9z
dHJpbmdfaGV4X3N0cmluZyh0bXBfdGFnLCBwcmVmaXhfbGVuKSk7Ci0gICAgICBpZiAoc3RhdHVz
KQotCXJldHVybiBzcnRwX2Vycl9zdGF0dXNfY2lwaGVyX2ZhaWw7Ci0gICAgfSAKKyAgICAgKiBp
ZiB3ZSdyZSBub3QgcHJvdmlkaW5nIGNvbmZpZGVudGlhbGl0eSwgc2V0IGVuY19zdGFydCB0byBO
VUxMCisgICAgICovCisgICAgaWYgKHN0cmVhbS0+cnRwX3NlcnZpY2VzICYgc2VjX3NlcnZfY29u
ZikgeworICAgICAgICBlbmNfc3RhcnQgPSAodWludDMyX3QgKiloZHIgKyB1aW50MzJzX2luX3J0
cF9oZWFkZXIgKyBoZHItPmNjOworICAgICAgICBpZiAoaGRyLT54ID09IDEpIHsKKyAgICAgICAg
ICAgIHh0bl9oZHIgPSAoc3J0cF9oZHJfeHRuZF90ICopZW5jX3N0YXJ0OworICAgICAgICAgICAg
ZW5jX3N0YXJ0ICs9IChudG9ocyh4dG5faGRyLT5sZW5ndGgpICsgMSk7CisgICAgICAgIH0KKyAg
ICAgICAgaWYgKCEoKHVpbnQ4X3QgKillbmNfc3RhcnQgPD0KKyAgICAgICAgICAgICAgKHVpbnQ4
X3QgKiloZHIgKyAoKnBrdF9vY3RldF9sZW4gLSB0YWdfbGVuIC0gbWtpX3NpemUpKSkKKyAgICAg
ICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfcGFyc2VfZXJyOworICAgICAgICBlbmNfb2N0
ZXRfbGVuID0gKHVpbnQzMl90KSgqcGt0X29jdGV0X2xlbiAtIHRhZ19sZW4gLSBta2lfc2l6ZSAt
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgodWludDhfdCAqKWVuY19zdGFy
dCAtICh1aW50OF90ICopaGRyKSk7CisgICAgfSBlbHNlIHsKKyAgICAgICAgZW5jX3N0YXJ0ID0g
TlVMTDsKKyAgICB9CiAKLSAgICAvKiBpbml0aWFsaXplIGF1dGggZnVuYyBjb250ZXh0ICovCi0g
ICAgc3RhdHVzID0gc3J0cF9hdXRoX3N0YXJ0KHNlc3Npb25fa2V5cy0+cnRwX2F1dGgpOwotICAg
IGlmIChzdGF0dXMpIHJldHVybiBzdGF0dXM7Ci0gCi0gICAgLyogbm93IGNvbXB1dGUgYXV0aCBm
dW5jdGlvbiBvdmVyIHBhY2tldCAqLwotICAgIHN0YXR1cyA9IHNydHBfYXV0aF91cGRhdGUoc2Vz
c2lvbl9rZXlzLT5ydHBfYXV0aCwgKHVpbnQ4X3QgKilhdXRoX3N0YXJ0LAotCQkJICpwa3Rfb2N0
ZXRfbGVuIC0gdGFnX2xlbiAtIG1raV9zaXplKTsKLQotICAgIC8qIHJ1biBhdXRoIGZ1bmMgb3Zl
ciBST0MsIHRoZW4gd3JpdGUgdG1wIHRhZyAqLwotICAgIHN0YXR1cyA9IHNydHBfYXV0aF9jb21w
dXRlKHNlc3Npb25fa2V5cy0+cnRwX2F1dGgsICh1aW50OF90ICopJmVzdCwgNCwgdG1wX3RhZyk7
Ci0KLSAgICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgImNvbXB1dGVkIGF1dGggdGFnOiAgICAlcyIs
IAotCQlzcnRwX29jdGV0X3N0cmluZ19oZXhfc3RyaW5nKHRtcF90YWcsIHRhZ19sZW4pKTsKLSAg
ICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgInBhY2tldCBhdXRoIHRhZzogICAgICAlcyIsIAotCQlz
cnRwX29jdGV0X3N0cmluZ19oZXhfc3RyaW5nKGF1dGhfdGFnLCB0YWdfbGVuKSk7Ci0gICAgaWYg
KHN0YXR1cykKLSAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYXV0aF9mYWlsOyAgIAorICAg
IC8qCisgICAgICogaWYgd2UncmUgcHJvdmlkaW5nIGF1dGhlbnRpY2F0aW9uLCBzZXQgdGhlIGF1
dGhfc3RhcnQgYW5kIGF1dGhfdGFnCisgICAgICogcG9pbnRlcnMgdG8gdGhlIHByb3BlciBsb2Nh
dGlvbnM7IG90aGVyd2lzZSwgc2V0IGF1dGhfc3RhcnQgdG8gTlVMTAorICAgICAqIHRvIGluZGlj
YXRlIHRoYXQgbm8gYXV0aGVudGljYXRpb24gaXMgbmVlZGVkCisgICAgICovCisgICAgaWYgKHN0
cmVhbS0+cnRwX3NlcnZpY2VzICYgc2VjX3NlcnZfYXV0aCkgeworICAgICAgICBhdXRoX3N0YXJ0
ID0gKHVpbnQzMl90ICopaGRyOworICAgICAgICBhdXRoX3RhZyA9ICh1aW50OF90ICopaGRyICsg
KnBrdF9vY3RldF9sZW4gLSB0YWdfbGVuOworICAgIH0gZWxzZSB7CisgICAgICAgIGF1dGhfc3Rh
cnQgPSBOVUxMOworICAgICAgICBhdXRoX3RhZyA9IE5VTEw7CisgICAgfQogCi0gICAgaWYgKG9j
dGV0X3N0cmluZ19pc19lcSh0bXBfdGFnLCBhdXRoX3RhZywgdGFnX2xlbikpCi0gICAgICByZXR1
cm4gc3J0cF9lcnJfc3RhdHVzX2F1dGhfZmFpbDsKLSAgfQotCi0gIC8qIAotICAgKiB1cGRhdGUg
dGhlIGtleSB1c2FnZSBsaW1pdCwgYW5kIGNoZWNrIGl0IHRvIG1ha2Ugc3VyZSB0aGF0IHdlCi0g
ICAqIGRpZG4ndCBqdXN0IGhpdCBlaXRoZXIgdGhlIHNvZnQgbGltaXQgb3IgdGhlIGhhcmQgbGlt
aXQsIGFuZCBjYWxsCi0gICAqIHRoZSBldmVudCBoYW5kbGVyIGlmIHdlIGhpdCBlaXRoZXIuCi0g
ICAqLwotICBzd2l0Y2goc3J0cF9rZXlfbGltaXRfdXBkYXRlKHNlc3Npb25fa2V5cy0+bGltaXQp
KSB7Ci0gIGNhc2Ugc3J0cF9rZXlfZXZlbnRfbm9ybWFsOgotICAgIGJyZWFrOwotICBjYXNlIHNy
dHBfa2V5X2V2ZW50X3NvZnRfbGltaXQ6IAotICAgIHNydHBfaGFuZGxlX2V2ZW50KGN0eCwgc3Ry
ZWFtLCBldmVudF9rZXlfc29mdF9saW1pdCk7Ci0gICAgYnJlYWs7IAotICBjYXNlIHNydHBfa2V5
X2V2ZW50X2hhcmRfbGltaXQ6Ci0gICAgc3J0cF9oYW5kbGVfZXZlbnQoY3R4LCBzdHJlYW0sIGV2
ZW50X2tleV9oYXJkX2xpbWl0KTsKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2tleV9leHBp
cmVkOwotICBkZWZhdWx0OgotICAgIGJyZWFrOwotICB9Ci0KLSAgaWYgKHh0bl9oZHIgJiYgc2Vz
c2lvbl9rZXlzLT5ydHBfeHRuX2hkcl9jaXBoZXIpIHsKICAgICAvKgotICAgICAqIGV4dGVuc2lv
bnMgaGVhZGVyIGVuY3J5cHRpb24gUkZDIDY5MDQKKyAgICAgKiBpZiB3ZSBleHBlY3QgbWVzc2Fn
ZSBhdXRoZW50aWNhdGlvbiwgcnVuIHRoZSBhdXRoZW50aWNhdGlvbgorICAgICAqIGZ1bmN0aW9u
IGFuZCBjb21wYXJlIHRoZSByZXN1bHQgd2l0aCB0aGUgdmFsdWUgb2YgdGhlIGF1dGhfdGFnCiAg
ICAgICovCi0gICAgICBzdGF0dXMgPSBzcnRwX3Byb2Nlc3NfaGVhZGVyX2VuY3J5cHRpb24oc3Ry
ZWFtLCB4dG5faGRyLCBzZXNzaW9uX2tleXMpOwotICAgIGlmIChzdGF0dXMpIHsKLSAgICAgIHJl
dHVybiBzdGF0dXM7CisgICAgaWYgKGF1dGhfc3RhcnQpIHsKKyAgICAgICAgLyoKKyAgICAgICAg
ICogaWYgd2UncmUgdXNpbmcgYSB1bml2ZXJzYWwgaGFzaCwgdGhlbiB3ZSBuZWVkIHRvIGNvbXB1
dGUgdGhlCisgICAgICAgICAqIGtleXN0cmVhbSBwcmVmaXggZm9yIGVuY3J5cHRpbmcgdGhlIHVu
aXZlcnNhbCBoYXNoIG91dHB1dAorICAgICAgICAgKgorICAgICAgICAgKiBpZiB0aGUga2V5c3Ry
ZWFtIHByZWZpeCBsZW5ndGggaXMgemVybywgdGhlbiB3ZSBrbm93IHRoYXQKKyAgICAgICAgICog
dGhlIGF1dGhlbnRpY2F0b3IgaXNuJ3QgdXNpbmcgYSB1bml2ZXJzYWwgaGFzaCBmdW5jdGlvbgor
ICAgICAgICAgKi8KKyAgICAgICAgaWYgKHNlc3Npb25fa2V5cy0+cnRwX2F1dGgtPnByZWZpeF9s
ZW4gIT0gMCkgeworICAgICAgICAgICAgcHJlZml4X2xlbiA9IHNydHBfYXV0aF9nZXRfcHJlZml4
X2xlbmd0aChzZXNzaW9uX2tleXMtPnJ0cF9hdXRoKTsKKyAgICAgICAgICAgIHN0YXR1cyA9IHNy
dHBfY2lwaGVyX291dHB1dChzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXIsIHRtcF90YWcsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnByZWZpeF9sZW4pOworICAgICAg
ICAgICAgZGVidWdfcHJpbnQobW9kX3NydHAsICJrZXlzdHJlYW0gcHJlZml4OiAlcyIsCisgICAg
ICAgICAgICAgICAgICAgICAgICBzcnRwX29jdGV0X3N0cmluZ19oZXhfc3RyaW5nKHRtcF90YWcs
IHByZWZpeF9sZW4pKTsKKyAgICAgICAgICAgIGlmIChzdGF0dXMpCisgICAgICAgICAgICAgICAg
cmV0dXJuIHNydHBfZXJyX3N0YXR1c19jaXBoZXJfZmFpbDsKKyAgICAgICAgfQorCisgICAgICAg
IC8qIGluaXRpYWxpemUgYXV0aCBmdW5jIGNvbnRleHQgKi8KKyAgICAgICAgc3RhdHVzID0gc3J0
cF9hdXRoX3N0YXJ0KHNlc3Npb25fa2V5cy0+cnRwX2F1dGgpOworICAgICAgICBpZiAoc3RhdHVz
KQorICAgICAgICAgICAgcmV0dXJuIHN0YXR1czsKKworICAgICAgICAvKiBub3cgY29tcHV0ZSBh
dXRoIGZ1bmN0aW9uIG92ZXIgcGFja2V0ICovCisgICAgICAgIHN0YXR1cyA9IHNydHBfYXV0aF91
cGRhdGUoc2Vzc2lvbl9rZXlzLT5ydHBfYXV0aCwgKHVpbnQ4X3QgKilhdXRoX3N0YXJ0LAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpwa3Rfb2N0ZXRfbGVuIC0gdGFnX2xlbiAt
IG1raV9zaXplKTsKKworICAgICAgICAvKiBydW4gYXV0aCBmdW5jIG92ZXIgUk9DLCB0aGVuIHdy
aXRlIHRtcCB0YWcgKi8KKyAgICAgICAgc3RhdHVzID0gc3J0cF9hdXRoX2NvbXB1dGUoc2Vzc2lv
bl9rZXlzLT5ydHBfYXV0aCwgKHVpbnQ4X3QgKikmZXN0LCA0LAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICB0bXBfdGFnKTsKKworICAgICAgICBkZWJ1Z19wcmludChtb2Rfc3J0
cCwgImNvbXB1dGVkIGF1dGggdGFnOiAgICAlcyIsCisgICAgICAgICAgICAgICAgICAgIHNydHBf
b2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcodG1wX3RhZywgdGFnX2xlbikpOworICAgICAgICBkZWJ1
Z19wcmludChtb2Rfc3J0cCwgInBhY2tldCBhdXRoIHRhZzogICAgICAlcyIsCisgICAgICAgICAg
ICAgICAgICAgIHNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcoYXV0aF90YWcsIHRhZ19sZW4p
KTsKKyAgICAgICAgaWYgKHN0YXR1cykKKyAgICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0
dXNfYXV0aF9mYWlsOworCisgICAgICAgIGlmIChvY3RldF9zdHJpbmdfaXNfZXEodG1wX3RhZywg
YXV0aF90YWcsIHRhZ19sZW4pKQorICAgICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19h
dXRoX2ZhaWw7CiAgICAgfQotICB9CiAKLSAgLyogaWYgd2UncmUgZGVjcnlwdGluZywgYWRkIGtl
eXN0cmVhbSBpbnRvIGNpcGhlcnRleHQgKi8KLSAgaWYgKGVuY19zdGFydCkgewotICAgIHN0YXR1
cyA9IHNydHBfY2lwaGVyX2RlY3J5cHQoc2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVyLAotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgKHVpbnQ4X3QgKillbmNfc3RhcnQsICZlbmNfb2N0
ZXRfbGVuKTsKLSAgICBpZiAoc3RhdHVzKQotICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19j
aXBoZXJfZmFpbDsKLSAgfQotCi0gIC8qIAotICAgKiB2ZXJpZnkgdGhhdCBzdHJlYW0gaXMgZm9y
IHJlY2VpdmVkIHRyYWZmaWMgLSB0aGlzIGNoZWNrIHdpbGwKLSAgICogZGV0ZWN0IFNTUkMgY29s
bGlzaW9ucywgc2luY2UgYSBzdHJlYW0gdGhhdCBhcHBlYXJzIGluIGJvdGgKLSAgICogc3J0cF9w
cm90ZWN0KCkgYW5kIHNydHBfdW5wcm90ZWN0KCkgd2lsbCBmYWlsIHRoaXMgdGVzdCBpbiBvbmUg
b2YKLSAgICogdGhvc2UgZnVuY3Rpb25zLgotICAgKgotICAgKiB3ZSBkbyB0aGlzIGNoZWNrICph
ZnRlciogdGhlIGF1dGhlbnRpY2F0aW9uIGNoZWNrLCBzbyB0aGF0IHRoZQotICAgKiBsYXR0ZXIg
Y2hlY2sgd2lsbCBjYXRjaCBhbnkgYXR0ZW1wdHMgdG8gZm9vbCB1cyBpbnRvIHRoaW5raW5nCi0g
ICAqIHRoYXQgd2UndmUgZ290IGEgY29sbGlzaW9uCi0gICAqLwotICBpZiAoc3RyZWFtLT5kaXJl
Y3Rpb24gIT0gZGlyX3NydHBfcmVjZWl2ZXIpIHsKLSAgICBpZiAoc3RyZWFtLT5kaXJlY3Rpb24g
PT0gZGlyX3Vua25vd24pIHsKLSAgICAgIHN0cmVhbS0+ZGlyZWN0aW9uID0gZGlyX3NydHBfcmVj
ZWl2ZXI7Ci0gICAgfSBlbHNlIHsKLSAgICAgIHNydHBfaGFuZGxlX2V2ZW50KGN0eCwgc3RyZWFt
LCBldmVudF9zc3JjX2NvbGxpc2lvbik7Ci0gICAgfQotICB9Ci0KLSAgLyogCi0gICAqIGlmIHRo
ZSBzdHJlYW0gaXMgYSAncHJvdmlzaW9uYWwnIG9uZSwgaW4gd2hpY2ggdGhlIHRlbXBsYXRlIGNv
bnRleHQKLSAgICogaXMgdXNlZCwgdGhlbiB3ZSBuZWVkIHRvIGFsbG9jYXRlIGEgbmV3IHN0cmVh
bSBhdCB0aGlzIHBvaW50LCBzaW5jZQotICAgKiB0aGUgYXV0aGVudGljYXRpb24gcGFzc2VkCi0g
ICAqLwotICBpZiAoc3RyZWFtID09IGN0eC0+c3RyZWFtX3RlbXBsYXRlKSB7ICAKLSAgICBzcnRw
X3N0cmVhbV9jdHhfdCAqbmV3X3N0cmVhbTsKLQotICAgIC8qIAotICAgICAqIGFsbG9jYXRlIGFu
ZCBpbml0aWFsaXplIGEgbmV3IHN0cmVhbSAKLSAgICAgKiAKLSAgICAgKiBub3RlIHRoYXQgd2Ug
aW5kaWNhdGUgZmFpbHVyZSBpZiB3ZSBjYW4ndCBhbGxvY2F0ZSB0aGUgbmV3Ci0gICAgICogc3Ry
ZWFtLCBhbmQgc29tZSBpbXBsZW1lbnRhdGlvbnMgd2lsbCB3YW50IHRvIG5vdCByZXR1cm4KLSAg
ICAgKiBmYWlsdXJlIGhlcmUKKyAgICAvKgorICAgICAqIHVwZGF0ZSB0aGUga2V5IHVzYWdlIGxp
bWl0LCBhbmQgY2hlY2sgaXQgdG8gbWFrZSBzdXJlIHRoYXQgd2UKKyAgICAgKiBkaWRuJ3QganVz
dCBoaXQgZWl0aGVyIHRoZSBzb2Z0IGxpbWl0IG9yIHRoZSBoYXJkIGxpbWl0LCBhbmQgY2FsbAor
ICAgICAqIHRoZSBldmVudCBoYW5kbGVyIGlmIHdlIGhpdCBlaXRoZXIuCiAgICAgICovCi0gICAg
c3RhdHVzID0gc3J0cF9zdHJlYW1fY2xvbmUoY3R4LT5zdHJlYW1fdGVtcGxhdGUsIGhkci0+c3Ny
YywgJm5ld19zdHJlYW0pOyAKLSAgICBpZiAoc3RhdHVzKQotICAgICAgcmV0dXJuIHN0YXR1czsK
LSAgICAKLSAgICAvKiBhZGQgbmV3IHN0cmVhbSB0byB0aGUgaGVhZCBvZiB0aGUgc3RyZWFtX2xp
c3QgKi8KLSAgICBuZXdfc3RyZWFtLT5uZXh0ID0gY3R4LT5zdHJlYW1fbGlzdDsKLSAgICBjdHgt
PnN0cmVhbV9saXN0ID0gbmV3X3N0cmVhbTsKLSAgICAKLSAgICAvKiBzZXQgc3RyZWFtICh0aGUg
cG9pbnRlciB1c2VkIGluIHRoaXMgZnVuY3Rpb24pICovCi0gICAgc3RyZWFtID0gbmV3X3N0cmVh
bTsKLSAgfQotCi0gIC8qIAotICAgKiB0aGUgbWVzc2FnZSBhdXRoZW50aWNhdGlvbiBmdW5jdGlv
biBwYXNzZWQsIHNvIGFkZCB0aGUgcGFja2V0Ci0gICAqIGluZGV4IGludG8gdGhlIHJlcGxheSBk
YXRhYmFzZSAKLSAgICovCi0gIGlmIChhZHZhbmNlX3BhY2tldF9pbmRleCkgewotICAgIHNydHBf
cmRieF9zZXRfcm9jX3NlcSgmc3RyZWFtLT5ydHBfcmRieCwKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHJvY190b19zZXQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICBzZXFfdG9fc2V0
KTsKLSAgICBzdHJlYW0tPnBlbmRpbmdfcm9jID0gMDsKLSAgICBzcnRwX3JkYnhfYWRkX2luZGV4
KCZzdHJlYW0tPnJ0cF9yZGJ4LCAwKTsKLSAgfSBlbHNlIHsKLSAgICBzcnRwX3JkYnhfYWRkX2lu
ZGV4KCZzdHJlYW0tPnJ0cF9yZGJ4LCBkZWx0YSk7Ci0gIH0KKyAgICBzd2l0Y2ggKHNydHBfa2V5
X2xpbWl0X3VwZGF0ZShzZXNzaW9uX2tleXMtPmxpbWl0KSkgeworICAgIGNhc2Ugc3J0cF9rZXlf
ZXZlbnRfbm9ybWFsOgorICAgICAgICBicmVhazsKKyAgICBjYXNlIHNydHBfa2V5X2V2ZW50X3Nv
ZnRfbGltaXQ6CisgICAgICAgIHNydHBfaGFuZGxlX2V2ZW50KGN0eCwgc3RyZWFtLCBldmVudF9r
ZXlfc29mdF9saW1pdCk7CisgICAgICAgIGJyZWFrOworICAgIGNhc2Ugc3J0cF9rZXlfZXZlbnRf
aGFyZF9saW1pdDoKKyAgICAgICAgc3J0cF9oYW5kbGVfZXZlbnQoY3R4LCBzdHJlYW0sIGV2ZW50
X2tleV9oYXJkX2xpbWl0KTsKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19rZXlfZXhw
aXJlZDsKKyAgICBkZWZhdWx0OgorICAgICAgICBicmVhazsKKyAgICB9CiAKLSAgLyogZGVjcmVh
c2UgdGhlIHBhY2tldCBsZW5ndGggYnkgdGhlIGxlbmd0aCBvZiB0aGUgYXV0aCB0YWcgKi8KLSAg
KnBrdF9vY3RldF9sZW4gLT0gdGFnX2xlbjsKKyAgICBpZiAoeHRuX2hkciAmJiBzZXNzaW9uX2tl
eXMtPnJ0cF94dG5faGRyX2NpcGhlcikgeworICAgICAgICAvKiBleHRlbnNpb25zIGhlYWRlciBl
bmNyeXB0aW9uIFJGQyA2OTA0ICovCisgICAgICAgIHN0YXR1cyA9IHNydHBfcHJvY2Vzc19oZWFk
ZXJfZW5jcnlwdGlvbihzdHJlYW0sIHh0bl9oZHIsIHNlc3Npb25fa2V5cyk7CisgICAgICAgIGlm
IChzdGF0dXMpIHsKKyAgICAgICAgICAgIHJldHVybiBzdGF0dXM7CisgICAgICAgIH0KKyAgICB9
CiAKLSAgLyogZGVjcmVhc2UgdGhlIHBhY2tldCBsZW5ndGggYnkgdGhlIG1raSBzaXplICovCi0g
ICpwa3Rfb2N0ZXRfbGVuIC09IG1raV9zaXplOworICAgIC8qIGlmIHdlJ3JlIGRlY3J5cHRpbmcs
IGFkZCBrZXlzdHJlYW0gaW50byBjaXBoZXJ0ZXh0ICovCisgICAgaWYgKGVuY19zdGFydCkgewor
ICAgICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9kZWNyeXB0KHNlc3Npb25fa2V5cy0+cnRwX2Np
cGhlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAodWludDhfdCAqKWVu
Y19zdGFydCwgJmVuY19vY3RldF9sZW4pOworICAgICAgICBpZiAoc3RhdHVzKQorICAgICAgICAg
ICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19jaXBoZXJfZmFpbDsKKyAgICB9CiAKLSAgcmV0dXJu
IHNydHBfZXJyX3N0YXR1c19vazsgIAotfQorICAgIC8qCisgICAgICogdmVyaWZ5IHRoYXQgc3Ry
ZWFtIGlzIGZvciByZWNlaXZlZCB0cmFmZmljIC0gdGhpcyBjaGVjayB3aWxsCisgICAgICogZGV0
ZWN0IFNTUkMgY29sbGlzaW9ucywgc2luY2UgYSBzdHJlYW0gdGhhdCBhcHBlYXJzIGluIGJvdGgK
KyAgICAgKiBzcnRwX3Byb3RlY3QoKSBhbmQgc3J0cF91bnByb3RlY3QoKSB3aWxsIGZhaWwgdGhp
cyB0ZXN0IGluIG9uZSBvZgorICAgICAqIHRob3NlIGZ1bmN0aW9ucy4KKyAgICAgKgorICAgICAq
IHdlIGRvIHRoaXMgY2hlY2sgKmFmdGVyKiB0aGUgYXV0aGVudGljYXRpb24gY2hlY2ssIHNvIHRo
YXQgdGhlCisgICAgICogbGF0dGVyIGNoZWNrIHdpbGwgY2F0Y2ggYW55IGF0dGVtcHRzIHRvIGZv
b2wgdXMgaW50byB0aGlua2luZworICAgICAqIHRoYXQgd2UndmUgZ290IGEgY29sbGlzaW9uCisg
ICAgICovCisgICAgaWYgKHN0cmVhbS0+ZGlyZWN0aW9uICE9IGRpcl9zcnRwX3JlY2VpdmVyKSB7
CisgICAgICAgIGlmIChzdHJlYW0tPmRpcmVjdGlvbiA9PSBkaXJfdW5rbm93bikgeworICAgICAg
ICAgICAgc3RyZWFtLT5kaXJlY3Rpb24gPSBkaXJfc3J0cF9yZWNlaXZlcjsKKyAgICAgICAgfSBl
bHNlIHsKKyAgICAgICAgICAgIHNydHBfaGFuZGxlX2V2ZW50KGN0eCwgc3RyZWFtLCBldmVudF9z
c3JjX2NvbGxpc2lvbik7CisgICAgICAgIH0KKyAgICB9CiAKLXNydHBfZXJyX3N0YXR1c190Ci1z
cnRwX2luaXQoKSB7Ci0gIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKKyAgICAvKgorICAgICAq
IGlmIHRoZSBzdHJlYW0gaXMgYSAncHJvdmlzaW9uYWwnIG9uZSwgaW4gd2hpY2ggdGhlIHRlbXBs
YXRlIGNvbnRleHQKKyAgICAgKiBpcyB1c2VkLCB0aGVuIHdlIG5lZWQgdG8gYWxsb2NhdGUgYSBu
ZXcgc3RyZWFtIGF0IHRoaXMgcG9pbnQsIHNpbmNlCisgICAgICogdGhlIGF1dGhlbnRpY2F0aW9u
IHBhc3NlZAorICAgICAqLworICAgIGlmIChzdHJlYW0gPT0gY3R4LT5zdHJlYW1fdGVtcGxhdGUp
IHsKKyAgICAgICAgc3J0cF9zdHJlYW1fY3R4X3QgKm5ld19zdHJlYW07CiAKLSAgLyogaW5pdGlh
bGl6ZSBjcnlwdG8ga2VybmVsICovCi0gIHN0YXR1cyA9IHNydHBfY3J5cHRvX2tlcm5lbF9pbml0
KCk7Ci0gIGlmIChzdGF0dXMpIAotICAgIHJldHVybiBzdGF0dXM7CisgICAgICAgIC8qCisgICAg
ICAgICAqIGFsbG9jYXRlIGFuZCBpbml0aWFsaXplIGEgbmV3IHN0cmVhbQorICAgICAgICAgKgor
ICAgICAgICAgKiBub3RlIHRoYXQgd2UgaW5kaWNhdGUgZmFpbHVyZSBpZiB3ZSBjYW4ndCBhbGxv
Y2F0ZSB0aGUgbmV3CisgICAgICAgICAqIHN0cmVhbSwgYW5kIHNvbWUgaW1wbGVtZW50YXRpb25z
IHdpbGwgd2FudCB0byBub3QgcmV0dXJuCisgICAgICAgICAqIGZhaWx1cmUgaGVyZQorICAgICAg
ICAgKi8KKyAgICAgICAgc3RhdHVzID0KKyAgICAgICAgICAgIHNydHBfc3RyZWFtX2Nsb25lKGN0
eC0+c3RyZWFtX3RlbXBsYXRlLCBoZHItPnNzcmMsICZuZXdfc3RyZWFtKTsKKyAgICAgICAgaWYg
KHN0YXR1cykKKyAgICAgICAgICAgIHJldHVybiBzdGF0dXM7CiAKLSAgLyogbG9hZCBzcnRwIGRl
YnVnIG1vZHVsZSBpbnRvIHRoZSBrZXJuZWwgKi8KLSAgc3RhdHVzID0gc3J0cF9jcnlwdG9fa2Vy
bmVsX2xvYWRfZGVidWdfbW9kdWxlKCZtb2Rfc3J0cCk7Ci0gIGlmIChzdGF0dXMpCi0gICAgcmV0
dXJuIHN0YXR1czsKKyAgICAgICAgLyogYWRkIG5ldyBzdHJlYW0gdG8gdGhlIGhlYWQgb2YgdGhl
IHN0cmVhbV9saXN0ICovCisgICAgICAgIG5ld19zdHJlYW0tPm5leHQgPSBjdHgtPnN0cmVhbV9s
aXN0OworICAgICAgICBjdHgtPnN0cmVhbV9saXN0ID0gbmV3X3N0cmVhbTsKKworICAgICAgICAv
KiBzZXQgc3RyZWFtICh0aGUgcG9pbnRlciB1c2VkIGluIHRoaXMgZnVuY3Rpb24pICovCisgICAg
ICAgIHN0cmVhbSA9IG5ld19zdHJlYW07CisgICAgfQorCisgICAgLyoKKyAgICAgKiB0aGUgbWVz
c2FnZSBhdXRoZW50aWNhdGlvbiBmdW5jdGlvbiBwYXNzZWQsIHNvIGFkZCB0aGUgcGFja2V0Cisg
ICAgICogaW5kZXggaW50byB0aGUgcmVwbGF5IGRhdGFiYXNlCisgICAgICovCisgICAgaWYgKGFk
dmFuY2VfcGFja2V0X2luZGV4KSB7CisgICAgICAgIHNydHBfcmRieF9zZXRfcm9jX3NlcSgmc3Ry
ZWFtLT5ydHBfcmRieCwgcm9jX3RvX3NldCwgc2VxX3RvX3NldCk7CisgICAgICAgIHN0cmVhbS0+
cGVuZGluZ19yb2MgPSAwOworICAgICAgICBzcnRwX3JkYnhfYWRkX2luZGV4KCZzdHJlYW0tPnJ0
cF9yZGJ4LCAwKTsKKyAgICB9IGVsc2UgeworICAgICAgICBzcnRwX3JkYnhfYWRkX2luZGV4KCZz
dHJlYW0tPnJ0cF9yZGJ4LCBkZWx0YSk7CisgICAgfQorCisgICAgLyogZGVjcmVhc2UgdGhlIHBh
Y2tldCBsZW5ndGggYnkgdGhlIGxlbmd0aCBvZiB0aGUgYXV0aCB0YWcgKi8KKyAgICAqcGt0X29j
dGV0X2xlbiAtPSB0YWdfbGVuOwogCi0gIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CisgICAg
LyogZGVjcmVhc2UgdGhlIHBhY2tldCBsZW5ndGggYnkgdGhlIG1raSBzaXplICovCisgICAgKnBr
dF9vY3RldF9sZW4gLT0gbWtpX3NpemU7CisKKyAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29r
OwogfQogCi1zcnRwX2Vycl9zdGF0dXNfdAotc3J0cF9zaHV0ZG93bigpIHsKLSAgc3J0cF9lcnJf
c3RhdHVzX3Qgc3RhdHVzOworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9pbml0KCkKK3sKKyAgICBz
cnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7CiAKLSAgLyogc2h1dCBkb3duIGNyeXB0byBrZXJuZWwg
Ki8KLSAgc3RhdHVzID0gc3J0cF9jcnlwdG9fa2VybmVsX3NodXRkb3duKCk7Ci0gIGlmIChzdGF0
dXMpIAotICAgIHJldHVybiBzdGF0dXM7CisgICAgLyogaW5pdGlhbGl6ZSBjcnlwdG8ga2VybmVs
ICovCisgICAgc3RhdHVzID0gc3J0cF9jcnlwdG9fa2VybmVsX2luaXQoKTsKKyAgICBpZiAoc3Rh
dHVzKQorICAgICAgICByZXR1cm4gc3RhdHVzOwogCi0gIC8qIHNodXR0aW5nIGRvd24gY3J5cHRv
IGtlcm5lbCBmcmVlcyB0aGUgc3J0cCBkZWJ1ZyBtb2R1bGUgYXMgd2VsbCAqLworICAgIC8qIGxv
YWQgc3J0cCBkZWJ1ZyBtb2R1bGUgaW50byB0aGUga2VybmVsICovCisgICAgc3RhdHVzID0gc3J0
cF9jcnlwdG9fa2VybmVsX2xvYWRfZGVidWdfbW9kdWxlKCZtb2Rfc3J0cCk7CisgICAgaWYgKHN0
YXR1cykKKyAgICAgICAgcmV0dXJuIHN0YXR1czsKIAotICByZXR1cm4gc3J0cF9lcnJfc3RhdHVz
X29rOworICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAKK3NydHBfZXJyX3N0YXR1
c190IHNydHBfc2h1dGRvd24oKQoreworICAgIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKKwor
ICAgIC8qIHNodXQgZG93biBjcnlwdG8ga2VybmVsICovCisgICAgc3RhdHVzID0gc3J0cF9jcnlw
dG9fa2VybmVsX3NodXRkb3duKCk7CisgICAgaWYgKHN0YXR1cykKKyAgICAgICAgcmV0dXJuIHN0
YXR1czsKKworICAgIC8qIHNodXR0aW5nIGRvd24gY3J5cHRvIGtlcm5lbCBmcmVlcyB0aGUgc3J0
cCBkZWJ1ZyBtb2R1bGUgYXMgd2VsbCAqLwogCi0vKiAKKyAgICByZXR1cm4gc3J0cF9lcnJfc3Rh
dHVzX29rOworfQorCisvKgogICogVGhlIGZvbGxvd2luZyBjb2RlIGlzIHVuZGVyIGNvbnNpZGVy
YXRpb24gZm9yIHJlbW92YWwuICBTZWUKLSAqIFNSVFBfTUFYX1RSQUlMRVJfTEVOIAorICogU1JU
UF9NQVhfVFJBSUxFUl9MRU4KICAqLwogI2lmIDAKIApAQCAtMjc0MCwzNzggKzI3NzQsMzc2IEBA
IHNydHBfZ2V0X3RyYWlsZXJfbGVuZ3RoKGNvbnN0IHNydHBfc3RyZWFtX3QgcykgewogICogc3J0
cF9nZXRfc3RyZWFtKHNzcmMpIHJldHVybnMgYSBwb2ludGVyIHRvIHRoZSBzdHJlYW0gY29ycmVz
cG9uZGluZwogICogdG8gc3NyYywgb3IgTlVMTCBpZiBubyBzdHJlYW0gZXhpc3RzIGZvciB0aGF0
IHNzcmMKICAqCi0gKiB0aGlzIGlzIGFuIGludGVybmFsIGZ1bmN0aW9uIAorICogdGhpcyBpcyBh
biBpbnRlcm5hbCBmdW5jdGlvbgogICovCiAKLXNydHBfc3RyZWFtX2N0eF90ICoKLXNydHBfZ2V0
X3N0cmVhbShzcnRwX3Qgc3J0cCwgdWludDMyX3Qgc3NyYykgewotICBzcnRwX3N0cmVhbV9jdHhf
dCAqc3RyZWFtOwotCi0gIC8qIHdhbGsgZG93biBsaXN0IHVudGlsIHNzcmMgaXMgZm91bmQgKi8K
LSAgc3RyZWFtID0gc3J0cC0+c3RyZWFtX2xpc3Q7Ci0gIHdoaWxlIChzdHJlYW0gIT0gTlVMTCkg
ewotICAgIGlmIChzdHJlYW0tPnNzcmMgPT0gc3NyYykKLSAgICAgIHJldHVybiBzdHJlYW07Ci0g
ICAgc3RyZWFtID0gc3RyZWFtLT5uZXh0OwotICB9Ci0gIAotICAvKiB3ZSBoYXZlbid0IGZvdW5k
IG91ciBzc3JjLCBzbyByZXR1cm4gYSBudWxsICovCi0gIHJldHVybiBOVUxMOworc3J0cF9zdHJl
YW1fY3R4X3QgKnNydHBfZ2V0X3N0cmVhbShzcnRwX3Qgc3J0cCwgdWludDMyX3Qgc3NyYykKK3sK
KyAgICBzcnRwX3N0cmVhbV9jdHhfdCAqc3RyZWFtOworCisgICAgLyogd2FsayBkb3duIGxpc3Qg
dW50aWwgc3NyYyBpcyBmb3VuZCAqLworICAgIHN0cmVhbSA9IHNydHAtPnN0cmVhbV9saXN0Owor
ICAgIHdoaWxlIChzdHJlYW0gIT0gTlVMTCkgeworICAgICAgICBpZiAoc3RyZWFtLT5zc3JjID09
IHNzcmMpCisgICAgICAgICAgICByZXR1cm4gc3RyZWFtOworICAgICAgICBzdHJlYW0gPSBzdHJl
YW0tPm5leHQ7CisgICAgfQorCisgICAgLyogd2UgaGF2ZW4ndCBmb3VuZCBvdXIgc3NyYywgc28g
cmV0dXJuIGEgbnVsbCAqLworICAgIHJldHVybiBOVUxMOwogfQogCi1zcnRwX2Vycl9zdGF0dXNf
dAotc3J0cF9kZWFsbG9jKHNydHBfdCBzZXNzaW9uKSB7Ci0gIHNydHBfc3RyZWFtX2N0eF90ICpz
dHJlYW07Ci0gIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKLQotICAvKgotICAgKiB3ZSB0YWtl
IGEgY29uc2VydmF0aXZlIGRlYWxsb2NhdGlvbiBzdHJhdGVneSAtIGlmIHdlIGVuY291bnRlciBh
bgotICAgKiBlcnJvciBkZWFsbG9jYXRpbmcgYSBzdHJlYW0sIHRoZW4gd2Ugc3RvcCB0cnlpbmcg
dG8gZGVhbGxvY2F0ZQotICAgKiBtZW1vcnkgYW5kIGp1c3QgcmV0dXJuIGFuIGVycm9yCi0gICAq
LwotCi0gIC8qIHdhbGsgbGlzdCBvZiBzdHJlYW1zLCBkZWFsbG9jYXRpbmcgYXMgd2UgZ28gKi8K
LSAgc3RyZWFtID0gc2Vzc2lvbi0+c3RyZWFtX2xpc3Q7Ci0gIHdoaWxlIChzdHJlYW0gIT0gTlVM
TCkgewotICAgIHNydHBfc3RyZWFtX3QgbmV4dCA9IHN0cmVhbS0+bmV4dDsKLSAgICBzdGF0dXMg
PSBzcnRwX3N0cmVhbV9kZWFsbG9jKHN0cmVhbSwgc2Vzc2lvbi0+c3RyZWFtX3RlbXBsYXRlKTsK
LSAgICBpZiAoc3RhdHVzKQotICAgICAgcmV0dXJuIHN0YXR1czsKLSAgICBzdHJlYW0gPSBuZXh0
OwotICB9Ci0gIAotICAvKiBkZWFsbG9jYXRlIHN0cmVhbSB0ZW1wbGF0ZSwgaWYgdGhlcmUgaXMg
b25lICovCi0gIGlmIChzZXNzaW9uLT5zdHJlYW1fdGVtcGxhdGUgIT0gTlVMTCkgewotICAgIHN0
YXR1cyA9IHNydHBfc3RyZWFtX2RlYWxsb2Moc2Vzc2lvbi0+c3RyZWFtX3RlbXBsYXRlLCBOVUxM
KTsKLSAgICBpZiAoc3RhdHVzKQotICAgICAgcmV0dXJuIHN0YXR1czsKLSAgfQorc3J0cF9lcnJf
c3RhdHVzX3Qgc3J0cF9kZWFsbG9jKHNydHBfdCBzZXNzaW9uKQoreworICAgIHNydHBfc3RyZWFt
X2N0eF90ICpzdHJlYW07CisgICAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVzOworCisgICAgLyoK
KyAgICAgKiB3ZSB0YWtlIGEgY29uc2VydmF0aXZlIGRlYWxsb2NhdGlvbiBzdHJhdGVneSAtIGlm
IHdlIGVuY291bnRlciBhbgorICAgICAqIGVycm9yIGRlYWxsb2NhdGluZyBhIHN0cmVhbSwgdGhl
biB3ZSBzdG9wIHRyeWluZyB0byBkZWFsbG9jYXRlCisgICAgICogbWVtb3J5IGFuZCBqdXN0IHJl
dHVybiBhbiBlcnJvcgorICAgICAqLworCisgICAgLyogd2FsayBsaXN0IG9mIHN0cmVhbXMsIGRl
YWxsb2NhdGluZyBhcyB3ZSBnbyAqLworICAgIHN0cmVhbSA9IHNlc3Npb24tPnN0cmVhbV9saXN0
OworICAgIHdoaWxlIChzdHJlYW0gIT0gTlVMTCkgeworICAgICAgICBzcnRwX3N0cmVhbV90IG5l
eHQgPSBzdHJlYW0tPm5leHQ7CisgICAgICAgIHN0YXR1cyA9IHNydHBfc3RyZWFtX2RlYWxsb2Mo
c3RyZWFtLCBzZXNzaW9uLT5zdHJlYW1fdGVtcGxhdGUpOworICAgICAgICBpZiAoc3RhdHVzKQor
ICAgICAgICAgICAgcmV0dXJuIHN0YXR1czsKKyAgICAgICAgc3RyZWFtID0gbmV4dDsKKyAgICB9
CisKKyAgICAvKiBkZWFsbG9jYXRlIHN0cmVhbSB0ZW1wbGF0ZSwgaWYgdGhlcmUgaXMgb25lICov
CisgICAgaWYgKHNlc3Npb24tPnN0cmVhbV90ZW1wbGF0ZSAhPSBOVUxMKSB7CisgICAgICAgIHN0
YXR1cyA9IHNydHBfc3RyZWFtX2RlYWxsb2Moc2Vzc2lvbi0+c3RyZWFtX3RlbXBsYXRlLCBOVUxM
KTsKKyAgICAgICAgaWYgKHN0YXR1cykKKyAgICAgICAgICAgIHJldHVybiBzdGF0dXM7CisgICAg
fQorCisgICAgLyogZGVhbGxvY2F0ZSBzZXNzaW9uIGNvbnRleHQgKi8KKyAgICBzcnRwX2NyeXB0
b19mcmVlKHNlc3Npb24pOworCisgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKK30KIAot
ICAvKiBkZWFsbG9jYXRlIHNlc3Npb24gY29udGV4dCAqLwotICBzcnRwX2NyeXB0b19mcmVlKHNl
c3Npb24pOworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9hZGRfc3RyZWFtKHNydHBfdCBzZXNzaW9u
LCBjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3kpCit7CisgICAgc3J0cF9lcnJfc3RhdHVzX3Qg
c3RhdHVzOworICAgIHNydHBfc3RyZWFtX3QgdG1wOworCisgICAgLyogc2FuaXR5IGNoZWNrIGFy
Z3VtZW50cyAqLworICAgIGlmICgoc2Vzc2lvbiA9PSBOVUxMKSB8fCAocG9saWN5ID09IE5VTEwp
IHx8CisgICAgICAgICghc3J0cF92YWxpZGF0ZV9wb2xpY3lfbWFzdGVyX2tleXMocG9saWN5KSkp
CisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtOworCisgICAgLyogYWxs
b2NhdGUgc3RyZWFtICAqLworICAgIHN0YXR1cyA9IHNydHBfc3RyZWFtX2FsbG9jKCZ0bXAsIHBv
bGljeSk7CisgICAgaWYgKHN0YXR1cykgeworICAgICAgICByZXR1cm4gc3RhdHVzOworICAgIH0K
KworICAgIC8qIGluaXRpYWxpemUgc3RyZWFtICAqLworICAgIHN0YXR1cyA9IHNydHBfc3RyZWFt
X2luaXQodG1wLCBwb2xpY3kpOworICAgIGlmIChzdGF0dXMpIHsKKyAgICAgICAgc3J0cF9zdHJl
YW1fZGVhbGxvYyh0bXAsIE5VTEwpOworICAgICAgICByZXR1cm4gc3RhdHVzOworICAgIH0KKwor
ICAgIC8qCisgICAgICogc2V0IHRoZSBoZWFkIG9mIHRoZSBzdHJlYW0gbGlzdCBvciB0aGUgdGVt
cGxhdGUgdG8gcG9pbnQgdG8gdGhlCisgICAgICogc3RyZWFtIHRoYXQgd2UndmUganVzdCBhbGxv
Y2VkIGFuZCBpbml0J2VkLCBkZXBlbmRpbmcgb24gd2hldGhlcgorICAgICAqIG9yIG5vdCBpdCBo
YXMgYSB3aWxkY2FyZCBTU1JDIHZhbHVlIG9yIG5vdAorICAgICAqCisgICAgICogaWYgdGhlIHRl
bXBsYXRlIHN0cmVhbSBoYXMgYWxyZWFkeSBiZWVuIHNldCwgdGhlbiB0aGUgcG9saWN5IGlzCisg
ICAgICogaW5jb25zaXN0ZW50LCBzbyB3ZSByZXR1cm4gYSBiYWRfcGFyYW0gZXJyb3IgY29kZQor
ICAgICAqLworICAgIHN3aXRjaCAocG9saWN5LT5zc3JjLnR5cGUpIHsKKyAgICBjYXNlIChzc3Jj
X2FueV9vdXRib3VuZCk6CisgICAgICAgIGlmIChzZXNzaW9uLT5zdHJlYW1fdGVtcGxhdGUpIHsK
KyAgICAgICAgICAgIHNydHBfc3RyZWFtX2RlYWxsb2ModG1wLCBOVUxMKTsKKyAgICAgICAgICAg
IHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtOworICAgICAgICB9CisgICAgICAgIHNl
c3Npb24tPnN0cmVhbV90ZW1wbGF0ZSA9IHRtcDsKKyAgICAgICAgc2Vzc2lvbi0+c3RyZWFtX3Rl
bXBsYXRlLT5kaXJlY3Rpb24gPSBkaXJfc3J0cF9zZW5kZXI7CisgICAgICAgIGJyZWFrOworICAg
IGNhc2UgKHNzcmNfYW55X2luYm91bmQpOgorICAgICAgICBpZiAoc2Vzc2lvbi0+c3RyZWFtX3Rl
bXBsYXRlKSB7CisgICAgICAgICAgICBzcnRwX3N0cmVhbV9kZWFsbG9jKHRtcCwgTlVMTCk7Cisg
ICAgICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJhbTsKKyAgICAgICAgfQor
ICAgICAgICBzZXNzaW9uLT5zdHJlYW1fdGVtcGxhdGUgPSB0bXA7CisgICAgICAgIHNlc3Npb24t
PnN0cmVhbV90ZW1wbGF0ZS0+ZGlyZWN0aW9uID0gZGlyX3NydHBfcmVjZWl2ZXI7CisgICAgICAg
IGJyZWFrOworICAgIGNhc2UgKHNzcmNfc3BlY2lmaWMpOgorICAgICAgICB0bXAtPm5leHQgPSBz
ZXNzaW9uLT5zdHJlYW1fbGlzdDsKKyAgICAgICAgc2Vzc2lvbi0+c3RyZWFtX2xpc3QgPSB0bXA7
CisgICAgICAgIGJyZWFrOworICAgIGNhc2UgKHNzcmNfdW5kZWZpbmVkKToKKyAgICBkZWZhdWx0
OgorICAgICAgICBzcnRwX3N0cmVhbV9kZWFsbG9jKHRtcCwgTlVMTCk7CisgICAgICAgIHJldHVy
biBzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtOworICAgIH0KIAotICByZXR1cm4gc3J0cF9lcnJf
c3RhdHVzX29rOworICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAKK3NydHBfZXJy
X3N0YXR1c190IHNydHBfY3JlYXRlKHNydHBfdCAqc2Vzc2lvbiwgLyogaGFuZGxlIGZvciBzZXNz
aW9uICAgICAqLworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3J0cF9wb2xp
Y3lfdCAqcG9saWN5KQoreyAvKiBTUlRQIHBvbGljeSAobGlzdCkgICAgICovCisgICAgc3J0cF9l
cnJfc3RhdHVzX3Qgc3RhdDsKKyAgICBzcnRwX2N0eF90ICpjdHg7CisKKyAgICAvKiBzYW5pdHkg
Y2hlY2sgYXJndW1lbnRzICovCisgICAgaWYgKHNlc3Npb24gPT0gTlVMTCkKKyAgICAgICAgcmV0
dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW07CiAKLXNydHBfZXJyX3N0YXR1c190Ci1zcnRw
X2FkZF9zdHJlYW0oc3J0cF90IHNlc3Npb24sIAotCQljb25zdCBzcnRwX3BvbGljeV90ICpwb2xp
Y3kpICB7Ci0gIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKLSAgc3J0cF9zdHJlYW1fdCB0bXA7
CisgICAgLyogYWxsb2NhdGUgc3J0cCBjb250ZXh0IGFuZCBzZXQgY3R4X3B0ciAqLworICAgIGN0
eCA9IChzcnRwX2N0eF90ICopc3J0cF9jcnlwdG9fYWxsb2Moc2l6ZW9mKHNydHBfY3R4X3QpKTsK
KyAgICBpZiAoY3R4ID09IE5VTEwpCisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYWxs
b2NfZmFpbDsKKyAgICAqc2Vzc2lvbiA9IGN0eDsKIAotICAvKiBzYW5pdHkgY2hlY2sgYXJndW1l
bnRzICovCi0gIGlmICgoc2Vzc2lvbiA9PSBOVUxMKSB8fCAocG9saWN5ID09IE5VTEwpIHx8ICgh
c3J0cF92YWxpZGF0ZV9wb2xpY3lfbWFzdGVyX2tleXMocG9saWN5KSkpCi0gICAgcmV0dXJuIHNy
dHBfZXJyX3N0YXR1c19iYWRfcGFyYW07CisgICAgLyoKKyAgICAgKiBsb29wIG92ZXIgZWxlbWVu
dHMgaW4gdGhlIHBvbGljeSBsaXN0LCBhbGxvY2F0aW5nIGFuZAorICAgICAqIGluaXRpYWxpemlu
ZyBhIHN0cmVhbSBmb3IgZWFjaCBlbGVtZW50CisgICAgICovCisgICAgY3R4LT5zdHJlYW1fdGVt
cGxhdGUgPSBOVUxMOworICAgIGN0eC0+c3RyZWFtX2xpc3QgPSBOVUxMOworICAgIGN0eC0+dXNl
cl9kYXRhID0gTlVMTDsKKyAgICB3aGlsZSAocG9saWN5ICE9IE5VTEwpIHsKKyAgICAgICAgc3Rh
dCA9IHNydHBfYWRkX3N0cmVhbShjdHgsIHBvbGljeSk7CisgICAgICAgIGlmIChzdGF0KSB7Cisg
ICAgICAgICAgICAvKiBjbGVhbiB1cCBldmVyeXRoaW5nICovCisgICAgICAgICAgICBzcnRwX2Rl
YWxsb2MoKnNlc3Npb24pOworICAgICAgICAgICAgKnNlc3Npb24gPSBOVUxMOworICAgICAgICAg
ICAgcmV0dXJuIHN0YXQ7CisgICAgICAgIH0KIAotICAvKiBhbGxvY2F0ZSBzdHJlYW0gICovCi0g
IHN0YXR1cyA9IHNydHBfc3RyZWFtX2FsbG9jKCZ0bXAsIHBvbGljeSk7Ci0gIGlmIChzdGF0dXMp
IHsKLSAgICByZXR1cm4gc3RhdHVzOwotICB9Ci0gIAotICAvKiBpbml0aWFsaXplIHN0cmVhbSAg
Ki8KLSAgc3RhdHVzID0gc3J0cF9zdHJlYW1faW5pdCh0bXAsIHBvbGljeSk7Ci0gIGlmIChzdGF0
dXMpIHsKLSAgICBzcnRwX2NyeXB0b19mcmVlKHRtcCk7Ci0gICAgcmV0dXJuIHN0YXR1czsKLSAg
fQotICAKLSAgLyogCi0gICAqIHNldCB0aGUgaGVhZCBvZiB0aGUgc3RyZWFtIGxpc3Qgb3IgdGhl
IHRlbXBsYXRlIHRvIHBvaW50IHRvIHRoZQotICAgKiBzdHJlYW0gdGhhdCB3ZSd2ZSBqdXN0IGFs
bG9jZWQgYW5kIGluaXQnZWQsIGRlcGVuZGluZyBvbiB3aGV0aGVyCi0gICAqIG9yIG5vdCBpdCBo
YXMgYSB3aWxkY2FyZCBTU1JDIHZhbHVlIG9yIG5vdAotICAgKgotICAgKiBpZiB0aGUgdGVtcGxh
dGUgc3RyZWFtIGhhcyBhbHJlYWR5IGJlZW4gc2V0LCB0aGVuIHRoZSBwb2xpY3kgaXMKLSAgICog
aW5jb25zaXN0ZW50LCBzbyB3ZSByZXR1cm4gYSBiYWRfcGFyYW0gZXJyb3IgY29kZQotICAgKi8K
LSAgc3dpdGNoIChwb2xpY3ktPnNzcmMudHlwZSkgewotICBjYXNlIChzc3JjX2FueV9vdXRib3Vu
ZCk6Ci0gICAgaWYgKHNlc3Npb24tPnN0cmVhbV90ZW1wbGF0ZSkgewotICAgICAgcmV0dXJuIHNy
dHBfZXJyX3N0YXR1c19iYWRfcGFyYW07Ci0gICAgfQotICAgIHNlc3Npb24tPnN0cmVhbV90ZW1w
bGF0ZSA9IHRtcDsKLSAgICBzZXNzaW9uLT5zdHJlYW1fdGVtcGxhdGUtPmRpcmVjdGlvbiA9IGRp
cl9zcnRwX3NlbmRlcjsKLSAgICBicmVhazsKLSAgY2FzZSAoc3NyY19hbnlfaW5ib3VuZCk6Ci0g
ICAgaWYgKHNlc3Npb24tPnN0cmVhbV90ZW1wbGF0ZSkgewotICAgICAgcmV0dXJuIHNydHBfZXJy
X3N0YXR1c19iYWRfcGFyYW07Ci0gICAgfQotICAgIHNlc3Npb24tPnN0cmVhbV90ZW1wbGF0ZSA9
IHRtcDsKLSAgICBzZXNzaW9uLT5zdHJlYW1fdGVtcGxhdGUtPmRpcmVjdGlvbiA9IGRpcl9zcnRw
X3JlY2VpdmVyOwotICAgIGJyZWFrOwotICBjYXNlIChzc3JjX3NwZWNpZmljKToKLSAgICB0bXAt
Pm5leHQgPSBzZXNzaW9uLT5zdHJlYW1fbGlzdDsKLSAgICBzZXNzaW9uLT5zdHJlYW1fbGlzdCA9
IHRtcDsKLSAgICBicmVhazsKLSAgY2FzZSAoc3NyY191bmRlZmluZWQpOgotICBkZWZhdWx0Ogot
ICAgIHNydHBfY3J5cHRvX2ZyZWUodG1wKTsKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2Jh
ZF9wYXJhbTsKLSAgfQotICAgIAotICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOworICAgICAg
ICAvKiBzZXQgcG9saWN5IHRvIG5leHQgaXRlbSBpbiBsaXN0ICAqLworICAgICAgICBwb2xpY3kg
PSBwb2xpY3ktPm5leHQ7CisgICAgfQorCisgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsK
IH0KIAorc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9yZW1vdmVfc3RyZWFtKHNydHBfdCBzZXNzaW9u
LCB1aW50MzJfdCBzc3JjKQoreworICAgIHNydHBfc3RyZWFtX2N0eF90ICpzdHJlYW0sICpsYXN0
X3N0cmVhbTsKKyAgICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7CisKKyAgICAvKiBzYW5pdHkg
Y2hlY2sgYXJndW1lbnRzICovCisgICAgaWYgKHNlc3Npb24gPT0gTlVMTCkKKyAgICAgICAgcmV0
dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW07CisKKyAgICAvKiBmaW5kIHN0cmVhbSBpbiBs
aXN0OyBjb21wbGFpbiBpZiBub3QgZm91bmQgKi8KKyAgICBsYXN0X3N0cmVhbSA9IHN0cmVhbSA9
IHNlc3Npb24tPnN0cmVhbV9saXN0OworICAgIHdoaWxlICgoc3RyZWFtICE9IE5VTEwpICYmIChz
c3JjICE9IHN0cmVhbS0+c3NyYykpIHsKKyAgICAgICAgbGFzdF9zdHJlYW0gPSBzdHJlYW07Cisg
ICAgICAgIHN0cmVhbSA9IHN0cmVhbS0+bmV4dDsKKyAgICB9CisgICAgaWYgKHN0cmVhbSA9PSBO
VUxMKQorICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX25vX2N0eDsKIAotc3J0cF9lcnJf
c3RhdHVzX3QKLXNydHBfY3JlYXRlKHNydHBfdCAqc2Vzc2lvbiwgICAgICAgICAgICAgICAvKiBo
YW5kbGUgZm9yIHNlc3Npb24gICAgICovIAotCSAgICBjb25zdCBzcnRwX3BvbGljeV90ICpwb2xp
Y3kpIHsgLyogU1JUUCBwb2xpY3kgKGxpc3QpICAgICAqLwotICBzcnRwX2Vycl9zdGF0dXNfdCBz
dGF0OwotICBzcnRwX2N0eF90ICpjdHg7Ci0KLSAgLyogc2FuaXR5IGNoZWNrIGFyZ3VtZW50cyAq
LwotICBpZiAoc2Vzc2lvbiA9PSBOVUxMKQotICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYmFk
X3BhcmFtOwotCi0gIC8qIGFsbG9jYXRlIHNydHAgY29udGV4dCBhbmQgc2V0IGN0eF9wdHIgKi8K
LSAgY3R4ID0gKHNydHBfY3R4X3QgKikgc3J0cF9jcnlwdG9fYWxsb2Moc2l6ZW9mKHNydHBfY3R4
X3QpKTsKLSAgaWYgKGN0eCA9PSBOVUxMKQotICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYWxs
b2NfZmFpbDsKLSAgKnNlc3Npb24gPSBjdHg7Ci0KLSAgLyogCi0gICAqIGxvb3Agb3ZlciBlbGVt
ZW50cyBpbiB0aGUgcG9saWN5IGxpc3QsIGFsbG9jYXRpbmcgYW5kCi0gICAqIGluaXRpYWxpemlu
ZyBhIHN0cmVhbSBmb3IgZWFjaCBlbGVtZW50Ci0gICAqLwotICBjdHgtPnN0cmVhbV90ZW1wbGF0
ZSA9IE5VTEw7Ci0gIGN0eC0+c3RyZWFtX2xpc3QgPSBOVUxMOwotICBjdHgtPnVzZXJfZGF0YSA9
IE5VTEw7Ci0gIHdoaWxlIChwb2xpY3kgIT0gTlVMTCkgeyAgICAKLQotICAgIHN0YXQgPSBzcnRw
X2FkZF9zdHJlYW0oY3R4LCBwb2xpY3kpOwotICAgIGlmIChzdGF0KSB7Ci0gICAgICAvKiBjbGVh
biB1cCBldmVyeXRoaW5nICovCi0gICAgICBzcnRwX2RlYWxsb2MoKnNlc3Npb24pOwotICAgICAg
KnNlc3Npb24gPSBOVUxMOwotICAgICAgcmV0dXJuIHN0YXQ7Ci0gICAgfSAgICAKKyAgICAvKiBy
ZW1vdmUgc3RyZWFtIGZyb20gdGhlIGxpc3QgKi8KKyAgICBpZiAobGFzdF9zdHJlYW0gPT0gc3Ry
ZWFtKQorICAgICAgICAvKiBzdHJlYW0gd2FzIGZpcnN0IGluIGxpc3QgKi8KKyAgICAgICAgc2Vz
c2lvbi0+c3RyZWFtX2xpc3QgPSBzdHJlYW0tPm5leHQ7CisgICAgZWxzZQorICAgICAgICBsYXN0
X3N0cmVhbS0+bmV4dCA9IHN0cmVhbS0+bmV4dDsKIAotICAgIC8qIHNldCBwb2xpY3kgdG8gbmV4
dCBpdGVtIGluIGxpc3QgICovCi0gICAgcG9saWN5ID0gcG9saWN5LT5uZXh0OwotICB9CisgICAg
LyogZGVhbGxvY2F0ZSB0aGUgc3RyZWFtICovCisgICAgc3RhdHVzID0gc3J0cF9zdHJlYW1fZGVh
bGxvYyhzdHJlYW0sIHNlc3Npb24tPnN0cmVhbV90ZW1wbGF0ZSk7CisgICAgaWYgKHN0YXR1cykK
KyAgICAgICAgcmV0dXJuIHN0YXR1czsKIAotICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwor
ICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAKK3NydHBfZXJyX3N0YXR1c190IHNy
dHBfdXBkYXRlKHNydHBfdCBzZXNzaW9uLCBjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3kpCit7
CisgICAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdDsKIAotc3J0cF9lcnJfc3RhdHVzX3QKLXNydHBf
cmVtb3ZlX3N0cmVhbShzcnRwX3Qgc2Vzc2lvbiwgdWludDMyX3Qgc3NyYykgewotICBzcnRwX3N0
cmVhbV9jdHhfdCAqc3RyZWFtLCAqbGFzdF9zdHJlYW07Ci0gIHNydHBfZXJyX3N0YXR1c190IHN0
YXR1czsKLQotICAvKiBzYW5pdHkgY2hlY2sgYXJndW1lbnRzICovCi0gIGlmIChzZXNzaW9uID09
IE5VTEwpCi0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW07Ci0gIAotICAvKiBm
aW5kIHN0cmVhbSBpbiBsaXN0OyBjb21wbGFpbiBpZiBub3QgZm91bmQgKi8KLSAgbGFzdF9zdHJl
YW0gPSBzdHJlYW0gPSBzZXNzaW9uLT5zdHJlYW1fbGlzdDsKLSAgd2hpbGUgKChzdHJlYW0gIT0g
TlVMTCkgJiYgKHNzcmMgIT0gc3RyZWFtLT5zc3JjKSkgewotICAgIGxhc3Rfc3RyZWFtID0gc3Ry
ZWFtOwotICAgIHN0cmVhbSA9IHN0cmVhbS0+bmV4dDsKLSAgfQotICBpZiAoc3RyZWFtID09IE5V
TEwpCi0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19ub19jdHg7Ci0KLSAgLyogcmVtb3ZlIHN0
cmVhbSBmcm9tIHRoZSBsaXN0ICovCi0gIGlmIChsYXN0X3N0cmVhbSA9PSBzdHJlYW0pCi0gICAg
Lyogc3RyZWFtIHdhcyBmaXJzdCBpbiBsaXN0ICovCi0gICAgc2Vzc2lvbi0+c3RyZWFtX2xpc3Qg
PSBzdHJlYW0tPm5leHQ7Ci0gIGVsc2UKLSAgICBsYXN0X3N0cmVhbS0+bmV4dCA9IHN0cmVhbS0+
bmV4dDsKLQotICAvKiBkZWFsbG9jYXRlIHRoZSBzdHJlYW0gKi8KLSAgc3RhdHVzID0gc3J0cF9z
dHJlYW1fZGVhbGxvYyhzdHJlYW0sIHNlc3Npb24tPnN0cmVhbV90ZW1wbGF0ZSk7Ci0gIGlmIChz
dGF0dXMpCi0gICAgcmV0dXJuIHN0YXR1czsKKyAgICAvKiBzYW5pdHkgY2hlY2sgYXJndW1lbnRz
ICovCisgICAgaWYgKChzZXNzaW9uID09IE5VTEwpIHx8IChwb2xpY3kgPT0gTlVMTCkgfHwKKyAg
ICAgICAgKCFzcnRwX3ZhbGlkYXRlX3BvbGljeV9tYXN0ZXJfa2V5cyhwb2xpY3kpKSkgeworICAg
ICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJhbTsKKyAgICB9CisKKyAgICB3aGls
ZSAocG9saWN5ICE9IE5VTEwpIHsKKyAgICAgICAgc3RhdCA9IHNydHBfdXBkYXRlX3N0cmVhbShz
ZXNzaW9uLCBwb2xpY3kpOworICAgICAgICBpZiAoc3RhdCkgeworICAgICAgICAgICAgcmV0dXJu
IHN0YXQ7CisgICAgICAgIH0KIAotICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOworICAgICAg
ICAvKiBzZXQgcG9saWN5IHRvIG5leHQgaXRlbSBpbiBsaXN0ICAqLworICAgICAgICBwb2xpY3kg
PSBwb2xpY3ktPm5leHQ7CisgICAgfQorICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9
CiAKK3N0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCB1cGRhdGVfdGVtcGxhdGVfc3RyZWFtcyhzcnRw
X3Qgc2Vzc2lvbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3kpCit7CisgICAgc3J0cF9lcnJfc3RhdHVz
X3Qgc3RhdHVzOworICAgIHNydHBfc3RyZWFtX3QgbmV3X3N0cmVhbV90ZW1wbGF0ZTsKKyAgICBz
cnRwX3N0cmVhbV90IG5ld19zdHJlYW1fbGlzdCA9IE5VTEw7CiAKLXNydHBfZXJyX3N0YXR1c190
Ci1zcnRwX3VwZGF0ZShzcnRwX3Qgc2Vzc2lvbiwgY29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5
KSB7Ci0gIHNydHBfZXJyX3N0YXR1c190IHN0YXQ7CisgICAgaWYgKHNlc3Npb24tPnN0cmVhbV90
ZW1wbGF0ZSA9PSBOVUxMKSB7CisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYmFkX3Bh
cmFtOworICAgIH0KIAotICAvKiBzYW5pdHkgY2hlY2sgYXJndW1lbnRzICovCi0gIGlmICgoc2Vz
c2lvbiA9PSBOVUxMKSB8fCAocG9saWN5ID09IE5VTEwpIHx8ICghc3J0cF92YWxpZGF0ZV9wb2xp
Y3lfbWFzdGVyX2tleXMocG9saWN5KSkpIHsKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2Jh
ZF9wYXJhbTsKLSAgfQorICAgIC8qIGFsbG9jYXRlIG5ldyB0ZW1wbGF0ZSBzdHJlYW0gICovCisg
ICAgc3RhdHVzID0gc3J0cF9zdHJlYW1fYWxsb2MoJm5ld19zdHJlYW1fdGVtcGxhdGUsIHBvbGlj
eSk7CisgICAgaWYgKHN0YXR1cykgeworICAgICAgICByZXR1cm4gc3RhdHVzOworICAgIH0KIAot
ICB3aGlsZSAocG9saWN5ICE9IE5VTEwpIHsKLSAgICBzdGF0ID0gc3J0cF91cGRhdGVfc3RyZWFt
KHNlc3Npb24sIHBvbGljeSk7Ci0gICAgaWYgKHN0YXQpIHsKLSAgICAgIHJldHVybiBzdGF0Owor
ICAgIC8qIGluaXRpYWxpemUgbmV3IHRlbXBsYXRlIHN0cmVhbSAgKi8KKyAgICBzdGF0dXMgPSBz
cnRwX3N0cmVhbV9pbml0KG5ld19zdHJlYW1fdGVtcGxhdGUsIHBvbGljeSk7CisgICAgaWYgKHN0
YXR1cykgeworICAgICAgICBzcnRwX2NyeXB0b19mcmVlKG5ld19zdHJlYW1fdGVtcGxhdGUpOwor
ICAgICAgICByZXR1cm4gc3RhdHVzOwogICAgIH0KIAotICAgIC8qIHNldCBwb2xpY3kgdG8gbmV4
dCBpdGVtIGluIGxpc3QgICovCi0gICAgcG9saWN5ID0gcG9saWN5LT5uZXh0OwotICB9Ci0gIHJl
dHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7Ci19CisgICAgLyogZm9yIGFsbCBvbGQgdGVtcGxhdGVk
IHN0cmVhbXMgKi8KKyAgICBmb3IgKDs7KSB7CisgICAgICAgIHNydHBfc3RyZWFtX3Qgc3RyZWFt
OworICAgICAgICB1aW50MzJfdCBzc3JjOworICAgICAgICBzcnRwX3h0ZF9zZXFfbnVtX3Qgb2xk
X2luZGV4OworICAgICAgICBzcnRwX3JkYl90IG9sZF9ydGNwX3JkYjsKKworICAgICAgICBzdHJl
YW0gPSBzZXNzaW9uLT5zdHJlYW1fbGlzdDsKKyAgICAgICAgd2hpbGUgKChzdHJlYW0gIT0gTlVM
TCkgJiYKKyAgICAgICAgICAgICAgIChzdHJlYW0tPnNlc3Npb25fa2V5c1swXS5ydHBfYXV0aCAh
PQorICAgICAgICAgICAgICAgIHNlc3Npb24tPnN0cmVhbV90ZW1wbGF0ZS0+c2Vzc2lvbl9rZXlz
WzBdLnJ0cF9hdXRoKSkgeworICAgICAgICAgICAgc3RyZWFtID0gc3RyZWFtLT5uZXh0OworICAg
ICAgICB9CisgICAgICAgIGlmIChzdHJlYW0gPT0gTlVMTCkgeworICAgICAgICAgICAgLyogbm8g
bW9yZSB0ZW1wbGF0ZWQgc3RyZWFtcyAqLworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0K
IAorICAgICAgICAvKiBzYXZlIG9sZCBleHRlbmRhcmQgc2VxICovCisgICAgICAgIHNzcmMgPSBz
dHJlYW0tPnNzcmM7CisgICAgICAgIG9sZF9pbmRleCA9IHN0cmVhbS0+cnRwX3JkYnguaW5kZXg7
CisgICAgICAgIG9sZF9ydGNwX3JkYiA9IHN0cmVhbS0+cnRjcF9yZGI7CiAKLXN0YXRpYyBzcnRw
X2Vycl9zdGF0dXNfdAotdXBkYXRlX3RlbXBsYXRlX3N0cmVhbXMoc3J0cF90IHNlc3Npb24sIGNv
bnN0IHNydHBfcG9saWN5X3QgKnBvbGljeSkgewotICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7
Ci0gIHNydHBfc3RyZWFtX3QgbmV3X3N0cmVhbV90ZW1wbGF0ZTsKLSAgc3J0cF9zdHJlYW1fdCBu
ZXdfc3RyZWFtX2xpc3QgPSBOVUxMOworICAgICAgICAvKiByZW1vdmUgc3RyZWFtICovCisgICAg
ICAgIHN0YXR1cyA9IHNydHBfcmVtb3ZlX3N0cmVhbShzZXNzaW9uLCBzc3JjKTsKKyAgICAgICAg
aWYgKHN0YXR1cykgeworICAgICAgICAgICAgLyogZnJlZSBuZXcgYWxsb2NhdGlvbnMgKi8KKyAg
ICAgICAgICAgIHdoaWxlIChuZXdfc3RyZWFtX2xpc3QgIT0gTlVMTCkgeworICAgICAgICAgICAg
ICAgIHNydHBfc3RyZWFtX3QgbmV4dCA9IG5ld19zdHJlYW1fbGlzdC0+bmV4dDsKKyAgICAgICAg
ICAgICAgICBzcnRwX3N0cmVhbV9kZWFsbG9jKG5ld19zdHJlYW1fbGlzdCwgbmV3X3N0cmVhbV90
ZW1wbGF0ZSk7CisgICAgICAgICAgICAgICAgbmV3X3N0cmVhbV9saXN0ID0gbmV4dDsKKyAgICAg
ICAgICAgIH0KKyAgICAgICAgICAgIHNydHBfc3RyZWFtX2RlYWxsb2MobmV3X3N0cmVhbV90ZW1w
bGF0ZSwgTlVMTCk7CisgICAgICAgICAgICByZXR1cm4gc3RhdHVzOworICAgICAgICB9CiAKLSAg
aWYgKHNlc3Npb24tPnN0cmVhbV90ZW1wbGF0ZSA9PSBOVUxMKSB7Ci0gICAgcmV0dXJuIHNydHBf
ZXJyX3N0YXR1c19iYWRfcGFyYW07Ci0gIH0KKyAgICAgICAgLyogYWxsb2NhdGUgYW5kIGluaXRp
YWxpemUgYSBuZXcgc3RyZWFtICovCisgICAgICAgIHN0YXR1cyA9IHNydHBfc3RyZWFtX2Nsb25l
KG5ld19zdHJlYW1fdGVtcGxhdGUsIHNzcmMsICZzdHJlYW0pOworICAgICAgICBpZiAoc3RhdHVz
KSB7CisgICAgICAgICAgICAvKiBmcmVlIG5ldyBhbGxvY2F0aW9ucyAqLworICAgICAgICAgICAg
d2hpbGUgKG5ld19zdHJlYW1fbGlzdCAhPSBOVUxMKSB7CisgICAgICAgICAgICAgICAgc3J0cF9z
dHJlYW1fdCBuZXh0ID0gbmV3X3N0cmVhbV9saXN0LT5uZXh0OworICAgICAgICAgICAgICAgIHNy
dHBfc3RyZWFtX2RlYWxsb2MobmV3X3N0cmVhbV9saXN0LCBuZXdfc3RyZWFtX3RlbXBsYXRlKTsK
KyAgICAgICAgICAgICAgICBuZXdfc3RyZWFtX2xpc3QgPSBuZXh0OworICAgICAgICAgICAgfQor
ICAgICAgICAgICAgc3J0cF9zdHJlYW1fZGVhbGxvYyhuZXdfc3RyZWFtX3RlbXBsYXRlLCBOVUxM
KTsKKyAgICAgICAgICAgIHJldHVybiBzdGF0dXM7CisgICAgICAgIH0KIAotICAvKiBhbGxvY2F0
ZSBuZXcgdGVtcGxhdGUgc3RyZWFtICAqLwotICBzdGF0dXMgPSBzcnRwX3N0cmVhbV9hbGxvYygm
bmV3X3N0cmVhbV90ZW1wbGF0ZSwgcG9saWN5KTsKLSAgaWYgKHN0YXR1cykgewotICAgIHJldHVy
biBzdGF0dXM7Ci0gIH0KKyAgICAgICAgLyogYWRkIG5ldyBzdHJlYW0gdG8gdGhlIGhlYWQgb2Yg
dGhlIG5ld19zdHJlYW1fbGlzdCAqLworICAgICAgICBzdHJlYW0tPm5leHQgPSBuZXdfc3RyZWFt
X2xpc3Q7CisgICAgICAgIG5ld19zdHJlYW1fbGlzdCA9IHN0cmVhbTsKIAotICAvKiBpbml0aWFs
aXplIG5ldyB0ZW1wbGF0ZSBzdHJlYW0gICovCi0gIHN0YXR1cyA9IHNydHBfc3RyZWFtX2luaXQo
bmV3X3N0cmVhbV90ZW1wbGF0ZSwgcG9saWN5KTsKLSAgaWYgKHN0YXR1cykgewotICAgIHNydHBf
Y3J5cHRvX2ZyZWUobmV3X3N0cmVhbV90ZW1wbGF0ZSk7CisgICAgICAgIC8qIHJlc3RvcmUgb2xk
IGV4dGVuZGVkIHNlcSAqLworICAgICAgICBzdHJlYW0tPnJ0cF9yZGJ4LmluZGV4ID0gb2xkX2lu
ZGV4OworICAgICAgICBzdHJlYW0tPnJ0Y3BfcmRiID0gb2xkX3J0Y3BfcmRiOworICAgIH0KKyAg
ICAvKiBkZWFsbG9jIG9sZCB0ZW1wbGF0ZSAqLworICAgIHNydHBfc3RyZWFtX2RlYWxsb2Moc2Vz
c2lvbi0+c3RyZWFtX3RlbXBsYXRlLCBOVUxMKTsKKyAgICAvKiBzZXQgbmV3IHRlbXBsYXRlICov
CisgICAgc2Vzc2lvbi0+c3RyZWFtX3RlbXBsYXRlID0gbmV3X3N0cmVhbV90ZW1wbGF0ZTsKKyAg
ICAvKiBhZGQgbmV3IGxpc3QgKi8KKyAgICBpZiAobmV3X3N0cmVhbV9saXN0KSB7CisgICAgICAg
IHNydHBfc3RyZWFtX3QgdGFpbCA9IG5ld19zdHJlYW1fbGlzdDsKKyAgICAgICAgd2hpbGUgKHRh
aWwtPm5leHQpIHsKKyAgICAgICAgICAgIHRhaWwgPSB0YWlsLT5uZXh0OworICAgICAgICB9Cisg
ICAgICAgIHRhaWwtPm5leHQgPSBzZXNzaW9uLT5zdHJlYW1fbGlzdDsKKyAgICAgICAgc2Vzc2lv
bi0+c3RyZWFtX2xpc3QgPSBuZXdfc3RyZWFtX2xpc3Q7CisgICAgfQogICAgIHJldHVybiBzdGF0
dXM7Ci0gIH0KK30KIAotICAvKiBmb3IgYWxsIG9sZCB0ZW1wbGF0ZWQgc3RyZWFtcyAqLwotICBm
b3IgKDs7KSB7Ci0gICAgc3J0cF9zdHJlYW1fdCBzdHJlYW07Ci0gICAgdWludDMyX3Qgc3NyYzsK
K3N0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCB1cGRhdGVfc3RyZWFtKHNydHBfdCBzZXNzaW9uLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3J0cF9wb2xpY3lf
dCAqcG9saWN5KQoreworICAgIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKICAgICBzcnRwX3h0
ZF9zZXFfbnVtX3Qgb2xkX2luZGV4OwogICAgIHNydHBfcmRiX3Qgb2xkX3J0Y3BfcmRiOworICAg
IHNydHBfc3RyZWFtX3Qgc3RyZWFtOwogCi0gICAgc3RyZWFtID0gc2Vzc2lvbi0+c3RyZWFtX2xp
c3Q7Ci0gICAgd2hpbGUgKChzdHJlYW0gIT0gTlVMTCkgJiYKLSAgICAgICAgICAgKHN0cmVhbS0+
c2Vzc2lvbl9rZXlzWzBdLnJ0cF9hdXRoICE9Ci0gICAgICAgICAgICBzZXNzaW9uLT5zdHJlYW1f
dGVtcGxhdGUtPnNlc3Npb25fa2V5c1swXS5ydHBfYXV0aCkpIHsKLSAgICAgIHN0cmVhbSA9IHN0
cmVhbS0+bmV4dDsKLSAgICB9CisgICAgc3RyZWFtID0gc3J0cF9nZXRfc3RyZWFtKHNlc3Npb24s
IGh0b25sKHBvbGljeS0+c3NyYy52YWx1ZSkpOwogICAgIGlmIChzdHJlYW0gPT0gTlVMTCkgewot
ICAgICAgLyogbm8gbW9yZSB0ZW1wbGF0ZWQgc3RyZWFtcyAqLwotICAgICAgYnJlYWs7CisgICAg
ICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtOwogICAgIH0KIAogICAgIC8qIHNh
dmUgb2xkIGV4dGVuZGFyZCBzZXEgKi8KLSAgICBzc3JjID0gc3RyZWFtLT5zc3JjOwogICAgIG9s
ZF9pbmRleCA9IHN0cmVhbS0+cnRwX3JkYnguaW5kZXg7CiAgICAgb2xkX3J0Y3BfcmRiID0gc3Ry
ZWFtLT5ydGNwX3JkYjsKIAotICAgIC8qIHJlbW92ZSBzdHJlYW0gKi8KLSAgICBzdGF0dXMgPSBz
cnRwX3JlbW92ZV9zdHJlYW0oc2Vzc2lvbiwgc3NyYyk7CisgICAgc3RhdHVzID0gc3J0cF9yZW1v
dmVfc3RyZWFtKHNlc3Npb24sIGh0b25sKHBvbGljeS0+c3NyYy52YWx1ZSkpOwogICAgIGlmIChz
dGF0dXMpIHsKLSAgICAgIC8qIGZyZWUgbmV3IGFsbG9jYXRpb25zICovCi0gICAgICB3aGlsZSAo
bmV3X3N0cmVhbV9saXN0ICE9IE5VTEwpIHsKLSAgICAgICAgc3J0cF9zdHJlYW1fdCBuZXh0ID0g
bmV3X3N0cmVhbV9saXN0LT5uZXh0OwotICAgICAgICBzcnRwX3N0cmVhbV9kZWFsbG9jKG5ld19z
dHJlYW1fbGlzdCwgbmV3X3N0cmVhbV90ZW1wbGF0ZSk7Ci0gICAgICAgIG5ld19zdHJlYW1fbGlz
dCA9IG5leHQ7Ci0gICAgICB9Ci0gICAgICBzcnRwX3N0cmVhbV9kZWFsbG9jKG5ld19zdHJlYW1f
dGVtcGxhdGUsIE5VTEwpOwotICAgICAgcmV0dXJuIHN0YXR1czsKLSAgICB9Ci0KLSAgICAvKiBh
bGxvY2F0ZSBhbmQgaW5pdGlhbGl6ZSBhIG5ldyBzdHJlYW0gKi8KLSAgICBzdGF0dXMgPSBzcnRw
X3N0cmVhbV9jbG9uZShuZXdfc3RyZWFtX3RlbXBsYXRlLCBzc3JjLCAmc3RyZWFtKTsKKyAgICAg
ICAgcmV0dXJuIHN0YXR1czsKKyAgICB9CisKKyAgICBzdGF0dXMgPSBzcnRwX2FkZF9zdHJlYW0o
c2Vzc2lvbiwgcG9saWN5KTsKICAgICBpZiAoc3RhdHVzKSB7Ci0gICAgICAvKiBmcmVlIG5ldyBh
bGxvY2F0aW9ucyAqLwotICAgICAgd2hpbGUgKG5ld19zdHJlYW1fbGlzdCAhPSBOVUxMKSB7Ci0g
ICAgICAgIHNydHBfc3RyZWFtX3QgbmV4dCA9IG5ld19zdHJlYW1fbGlzdC0+bmV4dDsKLSAgICAg
ICAgc3J0cF9zdHJlYW1fZGVhbGxvYyhuZXdfc3RyZWFtX2xpc3QsIG5ld19zdHJlYW1fdGVtcGxh
dGUpOwotICAgICAgICBuZXdfc3RyZWFtX2xpc3QgPSBuZXh0OwotICAgICAgfQotICAgICAgc3J0
cF9zdHJlYW1fZGVhbGxvYyhuZXdfc3RyZWFtX3RlbXBsYXRlLCBOVUxMKTsKLSAgICAgIHJldHVy
biBzdGF0dXM7CisgICAgICAgIHJldHVybiBzdGF0dXM7CiAgICAgfQogCi0gICAgLyogYWRkIG5l
dyBzdHJlYW0gdG8gdGhlIGhlYWQgb2YgdGhlIG5ld19zdHJlYW1fbGlzdCAqLwotICAgIHN0cmVh
bS0+bmV4dCA9IG5ld19zdHJlYW1fbGlzdDsKLSAgICBuZXdfc3RyZWFtX2xpc3QgPSBzdHJlYW07
CisgICAgc3RyZWFtID0gc3J0cF9nZXRfc3RyZWFtKHNlc3Npb24sIGh0b25sKHBvbGljeS0+c3Ny
Yy52YWx1ZSkpOworICAgIGlmIChzdHJlYW0gPT0gTlVMTCkgeworICAgICAgICByZXR1cm4gc3J0
cF9lcnJfc3RhdHVzX2ZhaWw7CisgICAgfQogCiAgICAgLyogcmVzdG9yZSBvbGQgZXh0ZW5kZWQg
c2VxICovCiAgICAgc3RyZWFtLT5ydHBfcmRieC5pbmRleCA9IG9sZF9pbmRleDsKICAgICBzdHJl
YW0tPnJ0Y3BfcmRiID0gb2xkX3J0Y3BfcmRiOwotICB9Ci0gIC8qIGRlYWxsb2Mgb2xkIHRlbXBs
YXRlICovCi0gIHNydHBfc3RyZWFtX2RlYWxsb2Moc2Vzc2lvbi0+c3RyZWFtX3RlbXBsYXRlLCBO
VUxMKTsKLSAgLyogc2V0IG5ldyB0ZW1wbGF0ZSAqLwotICBzZXNzaW9uLT5zdHJlYW1fdGVtcGxh
dGUgPSBuZXdfc3RyZWFtX3RlbXBsYXRlOwotICAvKiBhZGQgbmV3IGxpc3QgKi8KLSAgaWYgKG5l
d19zdHJlYW1fbGlzdCkgewotICAgIHNydHBfc3RyZWFtX3QgdGFpbCA9IG5ld19zdHJlYW1fbGlz
dDsKLSAgICB3aGlsZSAodGFpbC0+bmV4dCkgewotICAgICAgdGFpbCA9IHRhaWwtPm5leHQ7Ci0g
ICAgfQotICAgIHRhaWwtPm5leHQgPSBzZXNzaW9uLT5zdHJlYW1fbGlzdDsKLSAgICBzZXNzaW9u
LT5zdHJlYW1fbGlzdCA9IG5ld19zdHJlYW1fbGlzdDsKLSAgfQotICByZXR1cm4gc3RhdHVzOwot
fQogCisgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKK30KIAotc3RhdGljIHNydHBfZXJy
X3N0YXR1c190Ci11cGRhdGVfc3RyZWFtKHNydHBfdCBzZXNzaW9uLCBjb25zdCBzcnRwX3BvbGlj
eV90ICpwb2xpY3kpIHsKLSAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVzOwotICBzcnRwX3h0ZF9z
ZXFfbnVtX3Qgb2xkX2luZGV4OwotICBzcnRwX3JkYl90IG9sZF9ydGNwX3JkYjsKLSAgc3J0cF9z
dHJlYW1fdCBzdHJlYW07Ci0KLSAgc3RyZWFtID0gc3J0cF9nZXRfc3RyZWFtKHNlc3Npb24sIGh0
b25sKHBvbGljeS0+c3NyYy52YWx1ZSkpOwotICBpZiAoc3RyZWFtID09IE5VTEwpIHsKLSAgICBy
ZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJhbTsKLSAgfQorc3J0cF9lcnJfc3RhdHVzX3Qg
c3J0cF91cGRhdGVfc3RyZWFtKHNydHBfdCBzZXNzaW9uLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGNvbnN0IHNydHBfcG9saWN5X3QgKnBvbGljeSkKK3sKKyAgICBzcnRw
X2Vycl9zdGF0dXNfdCBzdGF0dXM7CiAKLSAgLyogc2F2ZSBvbGQgZXh0ZW5kYXJkIHNlcSAqLwot
ICBvbGRfaW5kZXggPSBzdHJlYW0tPnJ0cF9yZGJ4LmluZGV4OwotICBvbGRfcnRjcF9yZGIgPSBz
dHJlYW0tPnJ0Y3BfcmRiOworICAgIC8qIHNhbml0eSBjaGVjayBhcmd1bWVudHMgKi8KKyAgICBp
ZiAoKHNlc3Npb24gPT0gTlVMTCkgfHwgKHBvbGljeSA9PSBOVUxMKSB8fAorICAgICAgICAoIXNy
dHBfdmFsaWRhdGVfcG9saWN5X21hc3Rlcl9rZXlzKHBvbGljeSkpKQorICAgICAgICByZXR1cm4g
c3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJhbTsKIAotICBzdGF0dXMgPSBzcnRwX3JlbW92ZV9zdHJl
YW0oc2Vzc2lvbiwgaHRvbmwocG9saWN5LT5zc3JjLnZhbHVlKSk7Ci0gIGlmIChzdGF0dXMpIHsK
LSAgICByZXR1cm4gc3RhdHVzOwotICB9CisgICAgc3dpdGNoIChwb2xpY3ktPnNzcmMudHlwZSkg
eworICAgIGNhc2UgKHNzcmNfYW55X291dGJvdW5kKToKKyAgICBjYXNlIChzc3JjX2FueV9pbmJv
dW5kKToKKyAgICAgICAgc3RhdHVzID0gdXBkYXRlX3RlbXBsYXRlX3N0cmVhbXMoc2Vzc2lvbiwg
cG9saWN5KTsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSAoc3NyY19zcGVjaWZpYyk6CisgICAg
ICAgIHN0YXR1cyA9IHVwZGF0ZV9zdHJlYW0oc2Vzc2lvbiwgcG9saWN5KTsKKyAgICAgICAgYnJl
YWs7CisgICAgY2FzZSAoc3NyY191bmRlZmluZWQpOgorICAgIGRlZmF1bHQ6CisgICAgICAgIHJl
dHVybiBzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtOworICAgIH0KIAotICBzdGF0dXMgPSBzcnRw
X2FkZF9zdHJlYW0oc2Vzc2lvbiwgcG9saWN5KTsKLSAgaWYgKHN0YXR1cykgewogICAgIHJldHVy
biBzdGF0dXM7Ci0gIH0KLQotICBzdHJlYW0gPSBzcnRwX2dldF9zdHJlYW0oc2Vzc2lvbiwgaHRv
bmwocG9saWN5LT5zc3JjLnZhbHVlKSk7Ci0gIGlmIChzdHJlYW0gPT0gTlVMTCkgewotICAgIHJl
dHVybiBzcnRwX2Vycl9zdGF0dXNfZmFpbDsKLSAgfQotCi0gIC8qIHJlc3RvcmUgb2xkIGV4dGVu
ZGVkIHNlcSAqLwotICBzdHJlYW0tPnJ0cF9yZGJ4LmluZGV4ID0gb2xkX2luZGV4OwotICBzdHJl
YW0tPnJ0Y3BfcmRiID0gb2xkX3J0Y3BfcmRiOwotCi0gIHJldHVybiBzcnRwX2Vycl9zdGF0dXNf
b2s7Ci19Ci0KLQotc3J0cF9lcnJfc3RhdHVzX3QKLXNydHBfdXBkYXRlX3N0cmVhbShzcnRwX3Qg
c2Vzc2lvbiwgY29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5KSB7Ci0gIHNydHBfZXJyX3N0YXR1
c190IHN0YXR1czsKLQotICAvKiBzYW5pdHkgY2hlY2sgYXJndW1lbnRzICovCi0gIGlmICgoc2Vz
c2lvbiA9PSBOVUxMKSB8fCAocG9saWN5ID09IE5VTEwpIHx8ICghc3J0cF92YWxpZGF0ZV9wb2xp
Y3lfbWFzdGVyX2tleXMocG9saWN5KSkpCi0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRf
cGFyYW07Ci0KLSAgc3dpdGNoIChwb2xpY3ktPnNzcmMudHlwZSkgewotICBjYXNlIChzc3JjX2Fu
eV9vdXRib3VuZCk6Ci0gIGNhc2UgKHNzcmNfYW55X2luYm91bmQpOgotICAgIHN0YXR1cyA9IHVw
ZGF0ZV90ZW1wbGF0ZV9zdHJlYW1zKHNlc3Npb24sIHBvbGljeSk7Ci0gICAgYnJlYWs7Ci0gIGNh
c2UgKHNzcmNfc3BlY2lmaWMpOgotICAgIHN0YXR1cyA9IHVwZGF0ZV9zdHJlYW0oc2Vzc2lvbiwg
cG9saWN5KTsKLSAgICBicmVhazsKLSAgY2FzZSAoc3NyY191bmRlZmluZWQpOgotICBkZWZhdWx0
OgotICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtOwotICB9Ci0KLSAgcmV0dXJu
IHN0YXR1czsKIH0KIAotCiAvKgogICogVGhlIGRlZmF1bHQgcG9saWN5IC0gcHJvdmlkZXMgYSBj
b252ZW5pZW50IHdheSBmb3IgY2FsbGVycyB0byB1c2UKICAqIHRoZSBkZWZhdWx0IHNlY3VyaXR5
IHBvbGljeQpAQCAtMzEyMSwyODMgKzMxNTMsMjY0IEBAIHNydHBfdXBkYXRlX3N0cmVhbShzcnRw
X3Qgc2Vzc2lvbiwgY29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5KSB7CiAgKgogICovCiAKLS8q
IAorLyoKICAqIE5PVEU6IGNpcGhlcl9rZXlfbGVuIGlzIHJlYWxseSBrZXkgbGVuICgxMjggYml0
cykgcGx1cyBzYWx0IGxlbgogICogICgxMTIgYml0cykKICAqLwogLyogVGhlcmUgYXJlIGhhcmQt
Y29kZWQgMTYncyBmb3IgYmFzZV9rZXlfbGVuIGluIHRoZSBrZXkgZ2VuZXJhdGlvbiBjb2RlICov
CiAKLXZvaWQKLXNydHBfY3J5cHRvX3BvbGljeV9zZXRfcnRwX2RlZmF1bHQoc3J0cF9jcnlwdG9f
cG9saWN5X3QgKnApIHsKLQotICBwLT5jaXBoZXJfdHlwZSAgICAgPSBTUlRQX0FFU19JQ01fMTI4
OwotICBwLT5jaXBoZXJfa2V5X2xlbiAgPSBTUlRQX0FFU19JQ01fMTI4X0tFWV9MRU5fV1NBTFQ7
IC8qIGRlZmF1bHQgMTI4IGJpdHMgcGVyIFJGQyAzNzExICovCi0gIHAtPmF1dGhfdHlwZSAgICAg
ICA9IFNSVFBfSE1BQ19TSEExOyAgICAgICAgICAgICAKLSAgcC0+YXV0aF9rZXlfbGVuICAgID0g
MjA7ICAgICAgICAgICAgICAgIC8qIGRlZmF1bHQgMTYwIGJpdHMgcGVyIFJGQyAzNzExICovCi0g
IHAtPmF1dGhfdGFnX2xlbiAgICA9IDEwOyAgICAgICAgICAgICAgICAvKiBkZWZhdWx0IDgwIGJp
dHMgcGVyIFJGQyAzNzExICovCi0gIHAtPnNlY19zZXJ2ICAgICAgICA9IHNlY19zZXJ2X2NvbmZf
YW5kX2F1dGg7Ci0gIAotfQotCi12b2lkCi1zcnRwX2NyeXB0b19wb2xpY3lfc2V0X3J0Y3BfZGVm
YXVsdChzcnRwX2NyeXB0b19wb2xpY3lfdCAqcCkgewotCi0gIHAtPmNpcGhlcl90eXBlICAgICA9
IFNSVFBfQUVTX0lDTV8xMjg7Ci0gIHAtPmNpcGhlcl9rZXlfbGVuICA9IFNSVFBfQUVTX0lDTV8x
MjhfS0VZX0xFTl9XU0FMVDsgLyogZGVmYXVsdCAxMjggYml0cyBwZXIgUkZDIDM3MTEgKi8KLSAg
cC0+YXV0aF90eXBlICAgICAgID0gU1JUUF9ITUFDX1NIQTE7ICAgICAgICAgICAgIAotICBwLT5h
dXRoX2tleV9sZW4gICAgPSAyMDsgICAgICAgICAgICAgICAgIC8qIGRlZmF1bHQgMTYwIGJpdHMg
cGVyIFJGQyAzNzExICovCi0gIHAtPmF1dGhfdGFnX2xlbiAgICA9IDEwOyAgICAgICAgICAgICAg
ICAgLyogZGVmYXVsdCA4MCBiaXRzIHBlciBSRkMgMzcxMSAqLwotICBwLT5zZWNfc2VydiAgICAg
ICAgPSBzZWNfc2Vydl9jb25mX2FuZF9hdXRoOwotICAKK3ZvaWQgc3J0cF9jcnlwdG9fcG9saWN5
X3NldF9ydHBfZGVmYXVsdChzcnRwX2NyeXB0b19wb2xpY3lfdCAqcCkKK3sKKyAgICBwLT5jaXBo
ZXJfdHlwZSA9IFNSVFBfQUVTX0lDTV8xMjg7CisgICAgcC0+Y2lwaGVyX2tleV9sZW4gPQorICAg
ICAgICBTUlRQX0FFU19JQ01fMTI4X0tFWV9MRU5fV1NBTFQ7IC8qIGRlZmF1bHQgMTI4IGJpdHMg
cGVyIFJGQyAzNzExICovCisgICAgcC0+YXV0aF90eXBlID0gU1JUUF9ITUFDX1NIQTE7CisgICAg
cC0+YXV0aF9rZXlfbGVuID0gMjA7IC8qIGRlZmF1bHQgMTYwIGJpdHMgcGVyIFJGQyAzNzExICov
CisgICAgcC0+YXV0aF90YWdfbGVuID0gMTA7IC8qIGRlZmF1bHQgODAgYml0cyBwZXIgUkZDIDM3
MTEgKi8KKyAgICBwLT5zZWNfc2VydiA9IHNlY19zZXJ2X2NvbmZfYW5kX2F1dGg7CiB9CiAKLXZv
aWQKLXNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2NtXzEyOF9obWFjX3NoYTFfMzIoc3J0cF9j
cnlwdG9fcG9saWN5X3QgKnApIHsKLQotICAvKgotICAgKiBjb3JyZXNwb25kcyB0byBSRkMgNDU2
OAotICAgKgotICAgKiBub3RlIHRoYXQgdGhpcyBjcnlwdG8gcG9saWN5IGlzIGludGVuZGVkIGZv
ciBTUlRQLCBidXQgbm90IFNSVENQCi0gICAqLwotCi0gIHAtPmNpcGhlcl90eXBlICAgICA9IFNS
VFBfQUVTX0lDTV8xMjg7Ci0gIHAtPmNpcGhlcl9rZXlfbGVuICA9IFNSVFBfQUVTX0lDTV8xMjhf
S0VZX0xFTl9XU0FMVDsgLyogMTI4IGJpdCBrZXksIDExMiBiaXQgc2FsdCAqLwotICBwLT5hdXRo
X3R5cGUgICAgICAgPSBTUlRQX0hNQUNfU0hBMTsgICAgICAgICAgICAgCi0gIHAtPmF1dGhfa2V5
X2xlbiAgICA9IDIwOyAgICAgICAgICAgICAgICAvKiAxNjAgYml0IGtleSAgICAgICAgICAgICAg
ICovCi0gIHAtPmF1dGhfdGFnX2xlbiAgICA9IDQ7ICAgICAgICAgICAgICAgICAvKiAzMiBiaXQg
dGFnICAgICAgICAgICAgICAgICovCi0gIHAtPnNlY19zZXJ2ICAgICAgICA9IHNlY19zZXJ2X2Nv
bmZfYW5kX2F1dGg7Ci0gIAordm9pZCBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X3J0Y3BfZGVmYXVs
dChzcnRwX2NyeXB0b19wb2xpY3lfdCAqcCkKK3sKKyAgICBwLT5jaXBoZXJfdHlwZSA9IFNSVFBf
QUVTX0lDTV8xMjg7CisgICAgcC0+Y2lwaGVyX2tleV9sZW4gPQorICAgICAgICBTUlRQX0FFU19J
Q01fMTI4X0tFWV9MRU5fV1NBTFQ7IC8qIGRlZmF1bHQgMTI4IGJpdHMgcGVyIFJGQyAzNzExICov
CisgICAgcC0+YXV0aF90eXBlID0gU1JUUF9ITUFDX1NIQTE7CisgICAgcC0+YXV0aF9rZXlfbGVu
ID0gMjA7IC8qIGRlZmF1bHQgMTYwIGJpdHMgcGVyIFJGQyAzNzExICovCisgICAgcC0+YXV0aF90
YWdfbGVuID0gMTA7IC8qIGRlZmF1bHQgODAgYml0cyBwZXIgUkZDIDM3MTEgKi8KKyAgICBwLT5z
ZWNfc2VydiA9IHNlY19zZXJ2X2NvbmZfYW5kX2F1dGg7CiB9CiAKK3ZvaWQgc3J0cF9jcnlwdG9f
cG9saWN5X3NldF9hZXNfY21fMTI4X2htYWNfc2hhMV8zMihzcnRwX2NyeXB0b19wb2xpY3lfdCAq
cCkKK3sKKyAgICAvKgorICAgICAqIGNvcnJlc3BvbmRzIHRvIFJGQyA0NTY4CisgICAgICoKKyAg
ICAgKiBub3RlIHRoYXQgdGhpcyBjcnlwdG8gcG9saWN5IGlzIGludGVuZGVkIGZvciBTUlRQLCBi
dXQgbm90IFNSVENQCisgICAgICovCiAKLXZvaWQKLXNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVz
X2NtXzEyOF9udWxsX2F1dGgoc3J0cF9jcnlwdG9fcG9saWN5X3QgKnApIHsKLQotICAvKgotICAg
KiBjb3JyZXNwb25kcyB0byBSRkMgNDU2OAotICAgKgotICAgKiBub3RlIHRoYXQgdGhpcyBjcnlw
dG8gcG9saWN5IGlzIGludGVuZGVkIGZvciBTUlRQLCBidXQgbm90IFNSVENQCi0gICAqLwotCi0g
IHAtPmNpcGhlcl90eXBlICAgICA9IFNSVFBfQUVTX0lDTV8xMjg7Ci0gIHAtPmNpcGhlcl9rZXlf
bGVuICA9IFNSVFBfQUVTX0lDTV8xMjhfS0VZX0xFTl9XU0FMVDsgLyogMTI4IGJpdCBrZXksIDEx
MiBiaXQgc2FsdCAqLwotICBwLT5hdXRoX3R5cGUgICAgICAgPSBTUlRQX05VTExfQVVUSDsgICAg
ICAgICAgICAgCi0gIHAtPmF1dGhfa2V5X2xlbiAgICA9IDA7IAotICBwLT5hdXRoX3RhZ19sZW4g
ICAgPSAwOyAKLSAgcC0+c2VjX3NlcnYgICAgICAgID0gc2VjX3NlcnZfY29uZjsKLSAgCisgICAg
cC0+Y2lwaGVyX3R5cGUgPSBTUlRQX0FFU19JQ01fMTI4OworICAgIHAtPmNpcGhlcl9rZXlfbGVu
ID0KKyAgICAgICAgU1JUUF9BRVNfSUNNXzEyOF9LRVlfTEVOX1dTQUxUOyAvKiAxMjggYml0IGtl
eSwgMTEyIGJpdCBzYWx0ICovCisgICAgcC0+YXV0aF90eXBlID0gU1JUUF9ITUFDX1NIQTE7Cisg
ICAgcC0+YXV0aF9rZXlfbGVuID0gMjA7IC8qIDE2MCBiaXQga2V5ICAgICAgICAgICAgICAgKi8K
KyAgICBwLT5hdXRoX3RhZ19sZW4gPSA0OyAgLyogMzIgYml0IHRhZyAgICAgICAgICAgICAgICAq
LworICAgIHAtPnNlY19zZXJ2ID0gc2VjX3NlcnZfY29uZl9hbmRfYXV0aDsKIH0KIAordm9pZCBz
cnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19jbV8xMjhfbnVsbF9hdXRoKHNydHBfY3J5cHRvX3Bv
bGljeV90ICpwKQoreworICAgIC8qCisgICAgICogY29ycmVzcG9uZHMgdG8gUkZDIDQ1NjgKKyAg
ICAgKgorICAgICAqIG5vdGUgdGhhdCB0aGlzIGNyeXB0byBwb2xpY3kgaXMgaW50ZW5kZWQgZm9y
IFNSVFAsIGJ1dCBub3QgU1JUQ1AKKyAgICAgKi8KIAotdm9pZAotc3J0cF9jcnlwdG9fcG9saWN5
X3NldF9udWxsX2NpcGhlcl9obWFjX3NoYTFfODAoc3J0cF9jcnlwdG9fcG9saWN5X3QgKnApIHsK
LQotICAvKgotICAgKiBjb3JyZXNwb25kcyB0byBSRkMgNDU2OAotICAgKi8KLQotICBwLT5jaXBo
ZXJfdHlwZSAgICAgPSBTUlRQX05VTExfQ0lQSEVSOyAgICAgICAgICAgCi0gIHAtPmNpcGhlcl9r
ZXlfbGVuICA9IDA7Ci0gIHAtPmF1dGhfdHlwZSAgICAgICA9IFNSVFBfSE1BQ19TSEExOyAgICAg
ICAgICAgICAKLSAgcC0+YXV0aF9rZXlfbGVuICAgID0gMjA7IAotICBwLT5hdXRoX3RhZ19sZW4g
ICAgPSAxMDsgCi0gIHAtPnNlY19zZXJ2ICAgICAgICA9IHNlY19zZXJ2X2F1dGg7Ci0gIAorICAg
IHAtPmNpcGhlcl90eXBlID0gU1JUUF9BRVNfSUNNXzEyODsKKyAgICBwLT5jaXBoZXJfa2V5X2xl
biA9CisgICAgICAgIFNSVFBfQUVTX0lDTV8xMjhfS0VZX0xFTl9XU0FMVDsgLyogMTI4IGJpdCBr
ZXksIDExMiBiaXQgc2FsdCAqLworICAgIHAtPmF1dGhfdHlwZSA9IFNSVFBfTlVMTF9BVVRIOwor
ICAgIHAtPmF1dGhfa2V5X2xlbiA9IDA7CisgICAgcC0+YXV0aF90YWdfbGVuID0gMDsKKyAgICBw
LT5zZWNfc2VydiA9IHNlY19zZXJ2X2NvbmY7CiB9CiAKLXZvaWQKLXNydHBfY3J5cHRvX3BvbGlj
eV9zZXRfbnVsbF9jaXBoZXJfaG1hY19udWxsKHNydHBfY3J5cHRvX3BvbGljeV90ICpwKSB7Ci0K
LSAgLyoKLSAgICogU2hvdWxkIG9ubHkgYmUgdXNlZCBmb3IgdGVzdGluZwotICAgKi8KK3ZvaWQg
c3J0cF9jcnlwdG9fcG9saWN5X3NldF9udWxsX2NpcGhlcl9obWFjX3NoYTFfODAoc3J0cF9jcnlw
dG9fcG9saWN5X3QgKnApCit7CisgICAgLyoKKyAgICAgKiBjb3JyZXNwb25kcyB0byBSRkMgNDU2
OAorICAgICAqLwogCi0gIHAtPmNpcGhlcl90eXBlICAgICA9IFNSVFBfTlVMTF9DSVBIRVI7ICAg
ICAgICAgICAKLSAgcC0+Y2lwaGVyX2tleV9sZW4gID0gMDsKLSAgcC0+YXV0aF90eXBlICAgICAg
ID0gU1JUUF9OVUxMX0FVVEg7ICAgICAgICAgICAgIAotICBwLT5hdXRoX2tleV9sZW4gICAgPSAw
OyAKLSAgcC0+YXV0aF90YWdfbGVuICAgID0gMDsgCi0gIHAtPnNlY19zZXJ2ICAgICAgICA9IHNl
Y19zZXJ2X25vbmU7Ci0gIAorICAgIHAtPmNpcGhlcl90eXBlID0gU1JUUF9OVUxMX0NJUEhFUjsK
KyAgICBwLT5jaXBoZXJfa2V5X2xlbiA9IDA7CisgICAgcC0+YXV0aF90eXBlID0gU1JUUF9ITUFD
X1NIQTE7CisgICAgcC0+YXV0aF9rZXlfbGVuID0gMjA7CisgICAgcC0+YXV0aF90YWdfbGVuID0g
MTA7CisgICAgcC0+c2VjX3NlcnYgPSBzZWNfc2Vydl9hdXRoOwogfQogCit2b2lkIHNydHBfY3J5
cHRvX3BvbGljeV9zZXRfbnVsbF9jaXBoZXJfaG1hY19udWxsKHNydHBfY3J5cHRvX3BvbGljeV90
ICpwKQoreworICAgIC8qCisgICAgICogU2hvdWxkIG9ubHkgYmUgdXNlZCBmb3IgdGVzdGluZwor
ICAgICAqLwogCi12b2lkCi1zcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19jbV8yNTZfaG1hY19z
aGExXzgwKHNydHBfY3J5cHRvX3BvbGljeV90ICpwKSB7Ci0KLSAgLyoKLSAgICogY29ycmVzcG9u
ZHMgdG8gUkZDIDYxODgKLSAgICovCi0KLSAgcC0+Y2lwaGVyX3R5cGUgICAgID0gU1JUUF9BRVNf
SUNNXzI1NjsKLSAgcC0+Y2lwaGVyX2tleV9sZW4gID0gU1JUUF9BRVNfSUNNXzI1Nl9LRVlfTEVO
X1dTQUxUOwotICBwLT5hdXRoX3R5cGUgICAgICAgPSBTUlRQX0hNQUNfU0hBMTsgICAgICAgICAg
ICAgCi0gIHAtPmF1dGhfa2V5X2xlbiAgICA9IDIwOyAgICAgICAgICAgICAgICAvKiBkZWZhdWx0
IDE2MCBiaXRzIHBlciBSRkMgMzcxMSAqLwotICBwLT5hdXRoX3RhZ19sZW4gICAgPSAxMDsgICAg
ICAgICAgICAgICAgLyogZGVmYXVsdCA4MCBiaXRzIHBlciBSRkMgMzcxMSAqLwotICBwLT5zZWNf
c2VydiAgICAgICAgPSBzZWNfc2Vydl9jb25mX2FuZF9hdXRoOworICAgIHAtPmNpcGhlcl90eXBl
ID0gU1JUUF9OVUxMX0NJUEhFUjsKKyAgICBwLT5jaXBoZXJfa2V5X2xlbiA9IDA7CisgICAgcC0+
YXV0aF90eXBlID0gU1JUUF9OVUxMX0FVVEg7CisgICAgcC0+YXV0aF9rZXlfbGVuID0gMDsKKyAg
ICBwLT5hdXRoX3RhZ19sZW4gPSAwOworICAgIHAtPnNlY19zZXJ2ID0gc2VjX3NlcnZfbm9uZTsK
IH0KIAordm9pZCBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19jbV8yNTZfaG1hY19zaGExXzgw
KHNydHBfY3J5cHRvX3BvbGljeV90ICpwKQoreworICAgIC8qCisgICAgICogY29ycmVzcG9uZHMg
dG8gUkZDIDYxODgKKyAgICAgKi8KIAotdm9pZAotc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNf
Y21fMjU2X2htYWNfc2hhMV8zMihzcnRwX2NyeXB0b19wb2xpY3lfdCAqcCkgeworICAgIHAtPmNp
cGhlcl90eXBlID0gU1JUUF9BRVNfSUNNXzI1NjsKKyAgICBwLT5jaXBoZXJfa2V5X2xlbiA9IFNS
VFBfQUVTX0lDTV8yNTZfS0VZX0xFTl9XU0FMVDsKKyAgICBwLT5hdXRoX3R5cGUgPSBTUlRQX0hN
QUNfU0hBMTsKKyAgICBwLT5hdXRoX2tleV9sZW4gPSAyMDsgLyogZGVmYXVsdCAxNjAgYml0cyBw
ZXIgUkZDIDM3MTEgKi8KKyAgICBwLT5hdXRoX3RhZ19sZW4gPSAxMDsgLyogZGVmYXVsdCA4MCBi
aXRzIHBlciBSRkMgMzcxMSAqLworICAgIHAtPnNlY19zZXJ2ID0gc2VjX3NlcnZfY29uZl9hbmRf
YXV0aDsKK30KIAotICAvKgotICAgKiBjb3JyZXNwb25kcyB0byBSRkMgNjE4OAotICAgKgotICAg
KiBub3RlIHRoYXQgdGhpcyBjcnlwdG8gcG9saWN5IGlzIGludGVuZGVkIGZvciBTUlRQLCBidXQg
bm90IFNSVENQCi0gICAqLwordm9pZCBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19jbV8yNTZf
aG1hY19zaGExXzMyKHNydHBfY3J5cHRvX3BvbGljeV90ICpwKQoreworICAgIC8qCisgICAgICog
Y29ycmVzcG9uZHMgdG8gUkZDIDYxODgKKyAgICAgKgorICAgICAqIG5vdGUgdGhhdCB0aGlzIGNy
eXB0byBwb2xpY3kgaXMgaW50ZW5kZWQgZm9yIFNSVFAsIGJ1dCBub3QgU1JUQ1AKKyAgICAgKi8K
IAotICBwLT5jaXBoZXJfdHlwZSAgICAgPSBTUlRQX0FFU19JQ01fMjU2OwotICBwLT5jaXBoZXJf
a2V5X2xlbiAgPSBTUlRQX0FFU19JQ01fMjU2X0tFWV9MRU5fV1NBTFQ7Ci0gIHAtPmF1dGhfdHlw
ZSAgICAgICA9IFNSVFBfSE1BQ19TSEExOyAgICAgICAgICAgICAKLSAgcC0+YXV0aF9rZXlfbGVu
ICAgID0gMjA7ICAgICAgICAgICAgICAgIC8qIGRlZmF1bHQgMTYwIGJpdHMgcGVyIFJGQyAzNzEx
ICovCi0gIHAtPmF1dGhfdGFnX2xlbiAgICA9IDQ7ICAgICAgICAgICAgICAgICAvKiBkZWZhdWx0
IDgwIGJpdHMgcGVyIFJGQyAzNzExICovCi0gIHAtPnNlY19zZXJ2ICAgICAgICA9IHNlY19zZXJ2
X2NvbmZfYW5kX2F1dGg7CisgICAgcC0+Y2lwaGVyX3R5cGUgPSBTUlRQX0FFU19JQ01fMjU2Owor
ICAgIHAtPmNpcGhlcl9rZXlfbGVuID0gU1JUUF9BRVNfSUNNXzI1Nl9LRVlfTEVOX1dTQUxUOwor
ICAgIHAtPmF1dGhfdHlwZSA9IFNSVFBfSE1BQ19TSEExOworICAgIHAtPmF1dGhfa2V5X2xlbiA9
IDIwOyAvKiBkZWZhdWx0IDE2MCBiaXRzIHBlciBSRkMgMzcxMSAqLworICAgIHAtPmF1dGhfdGFn
X2xlbiA9IDQ7ICAvKiBkZWZhdWx0IDgwIGJpdHMgcGVyIFJGQyAzNzExICovCisgICAgcC0+c2Vj
X3NlcnYgPSBzZWNfc2Vydl9jb25mX2FuZF9hdXRoOwogfQogCiAvKgogICogQUVTLTI1NiB3aXRo
IG5vIGF1dGhlbnRpY2F0aW9uLgogICovCi12b2lkCi1zcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Fl
c19jbV8yNTZfbnVsbF9hdXRoIChzcnRwX2NyeXB0b19wb2xpY3lfdCAqcCkKK3ZvaWQgc3J0cF9j
cnlwdG9fcG9saWN5X3NldF9hZXNfY21fMjU2X251bGxfYXV0aChzcnRwX2NyeXB0b19wb2xpY3lf
dCAqcCkKIHsKLSAgICBwLT5jaXBoZXJfdHlwZSAgICAgPSBTUlRQX0FFU19JQ01fMjU2OwotICAg
IHAtPmNpcGhlcl9rZXlfbGVuICA9IFNSVFBfQUVTX0lDTV8yNTZfS0VZX0xFTl9XU0FMVDsKLSAg
ICBwLT5hdXRoX3R5cGUgICAgICAgPSBTUlRQX05VTExfQVVUSDsKLSAgICBwLT5hdXRoX2tleV9s
ZW4gICAgPSAwOwotICAgIHAtPmF1dGhfdGFnX2xlbiAgICA9IDA7Ci0gICAgcC0+c2VjX3NlcnYg
ICAgICAgID0gc2VjX3NlcnZfY29uZjsKKyAgICBwLT5jaXBoZXJfdHlwZSA9IFNSVFBfQUVTX0lD
TV8yNTY7CisgICAgcC0+Y2lwaGVyX2tleV9sZW4gPSBTUlRQX0FFU19JQ01fMjU2X0tFWV9MRU5f
V1NBTFQ7CisgICAgcC0+YXV0aF90eXBlID0gU1JUUF9OVUxMX0FVVEg7CisgICAgcC0+YXV0aF9r
ZXlfbGVuID0gMDsKKyAgICBwLT5hdXRoX3RhZ19sZW4gPSAwOworICAgIHAtPnNlY19zZXJ2ID0g
c2VjX3NlcnZfY29uZjsKIH0KIAogI2lmZGVmIE9QRU5TU0wKLXZvaWQKLXNydHBfY3J5cHRvX3Bv
bGljeV9zZXRfYWVzX2NtXzE5Ml9obWFjX3NoYTFfODAoc3J0cF9jcnlwdG9fcG9saWN5X3QgKnAp
IHsKLQotICAvKgotICAgKiBjb3JyZXNwb25kcyB0byBSRkMgNjE4OAotICAgKi8KLQotICBwLT5j
aXBoZXJfdHlwZSAgICAgPSBTUlRQX0FFU19JQ01fMTkyOwotICBwLT5jaXBoZXJfa2V5X2xlbiAg
PSBTUlRQX0FFU19JQ01fMTkyX0tFWV9MRU5fV1NBTFQ7Ci0gIHAtPmF1dGhfdHlwZSAgICAgICA9
IFNSVFBfSE1BQ19TSEExOwotICBwLT5hdXRoX2tleV9sZW4gICAgPSAyMDsgICAgICAgICAgICAg
ICAgLyogZGVmYXVsdCAxNjAgYml0cyBwZXIgUkZDIDM3MTEgKi8KLSAgcC0+YXV0aF90YWdfbGVu
ICAgID0gMTA7ICAgICAgICAgICAgICAgIC8qIGRlZmF1bHQgODAgYml0cyBwZXIgUkZDIDM3MTEg
Ki8KLSAgcC0+c2VjX3NlcnYgICAgICAgID0gc2VjX3NlcnZfY29uZl9hbmRfYXV0aDsKLX0KLQor
dm9pZCBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19jbV8xOTJfaG1hY19zaGExXzgwKHNydHBf
Y3J5cHRvX3BvbGljeV90ICpwKQoreworICAgIC8qCisgICAgICogY29ycmVzcG9uZHMgdG8gUkZD
IDYxODgKKyAgICAgKi8KIAotdm9pZAotc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfY21fMTky
X2htYWNfc2hhMV8zMihzcnRwX2NyeXB0b19wb2xpY3lfdCAqcCkgeworICAgIHAtPmNpcGhlcl90
eXBlID0gU1JUUF9BRVNfSUNNXzE5MjsKKyAgICBwLT5jaXBoZXJfa2V5X2xlbiA9IFNSVFBfQUVT
X0lDTV8xOTJfS0VZX0xFTl9XU0FMVDsKKyAgICBwLT5hdXRoX3R5cGUgPSBTUlRQX0hNQUNfU0hB
MTsKKyAgICBwLT5hdXRoX2tleV9sZW4gPSAyMDsgLyogZGVmYXVsdCAxNjAgYml0cyBwZXIgUkZD
IDM3MTEgKi8KKyAgICBwLT5hdXRoX3RhZ19sZW4gPSAxMDsgLyogZGVmYXVsdCA4MCBiaXRzIHBl
ciBSRkMgMzcxMSAqLworICAgIHAtPnNlY19zZXJ2ID0gc2VjX3NlcnZfY29uZl9hbmRfYXV0aDsK
K30KIAotICAvKgotICAgKiBjb3JyZXNwb25kcyB0byBSRkMgNjE4OAotICAgKgotICAgKiBub3Rl
IHRoYXQgdGhpcyBjcnlwdG8gcG9saWN5IGlzIGludGVuZGVkIGZvciBTUlRQLCBidXQgbm90IFNS
VENQCi0gICAqLwordm9pZCBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19jbV8xOTJfaG1hY19z
aGExXzMyKHNydHBfY3J5cHRvX3BvbGljeV90ICpwKQoreworICAgIC8qCisgICAgICogY29ycmVz
cG9uZHMgdG8gUkZDIDYxODgKKyAgICAgKgorICAgICAqIG5vdGUgdGhhdCB0aGlzIGNyeXB0byBw
b2xpY3kgaXMgaW50ZW5kZWQgZm9yIFNSVFAsIGJ1dCBub3QgU1JUQ1AKKyAgICAgKi8KIAotICBw
LT5jaXBoZXJfdHlwZSAgICAgPSBTUlRQX0FFU19JQ01fMTkyOwotICBwLT5jaXBoZXJfa2V5X2xl
biAgPSBTUlRQX0FFU19JQ01fMTkyX0tFWV9MRU5fV1NBTFQ7Ci0gIHAtPmF1dGhfdHlwZSAgICAg
ICA9IFNSVFBfSE1BQ19TSEExOwotICBwLT5hdXRoX2tleV9sZW4gICAgPSAyMDsgICAgICAgICAg
ICAgICAgLyogZGVmYXVsdCAxNjAgYml0cyBwZXIgUkZDIDM3MTEgKi8KLSAgcC0+YXV0aF90YWdf
bGVuICAgID0gNDsgICAgICAgICAgICAgICAgIC8qIGRlZmF1bHQgODAgYml0cyBwZXIgUkZDIDM3
MTEgKi8KLSAgcC0+c2VjX3NlcnYgICAgICAgID0gc2VjX3NlcnZfY29uZl9hbmRfYXV0aDsKKyAg
ICBwLT5jaXBoZXJfdHlwZSA9IFNSVFBfQUVTX0lDTV8xOTI7CisgICAgcC0+Y2lwaGVyX2tleV9s
ZW4gPSBTUlRQX0FFU19JQ01fMTkyX0tFWV9MRU5fV1NBTFQ7CisgICAgcC0+YXV0aF90eXBlID0g
U1JUUF9ITUFDX1NIQTE7CisgICAgcC0+YXV0aF9rZXlfbGVuID0gMjA7IC8qIGRlZmF1bHQgMTYw
IGJpdHMgcGVyIFJGQyAzNzExICovCisgICAgcC0+YXV0aF90YWdfbGVuID0gNDsgIC8qIGRlZmF1
bHQgODAgYml0cyBwZXIgUkZDIDM3MTEgKi8KKyAgICBwLT5zZWNfc2VydiA9IHNlY19zZXJ2X2Nv
bmZfYW5kX2F1dGg7CiB9CiAKIC8qCiAgKiBBRVMtMTkyIHdpdGggbm8gYXV0aGVudGljYXRpb24u
CiAgKi8KLXZvaWQKLXNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2NtXzE5Ml9udWxsX2F1dGgg
KHNydHBfY3J5cHRvX3BvbGljeV90ICpwKQordm9pZCBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Fl
c19jbV8xOTJfbnVsbF9hdXRoKHNydHBfY3J5cHRvX3BvbGljeV90ICpwKQogewotICAgIHAtPmNp
cGhlcl90eXBlICAgICA9IFNSVFBfQUVTX0lDTV8xOTI7Ci0gICAgcC0+Y2lwaGVyX2tleV9sZW4g
ID0gU1JUUF9BRVNfSUNNXzE5Ml9LRVlfTEVOX1dTQUxUOwotICAgIHAtPmF1dGhfdHlwZSAgICAg
ICA9IFNSVFBfTlVMTF9BVVRIOwotICAgIHAtPmF1dGhfa2V5X2xlbiAgICA9IDA7Ci0gICAgcC0+
YXV0aF90YWdfbGVuICAgID0gMDsKLSAgICBwLT5zZWNfc2VydiAgICAgICAgPSBzZWNfc2Vydl9j
b25mOworICAgIHAtPmNpcGhlcl90eXBlID0gU1JUUF9BRVNfSUNNXzE5MjsKKyAgICBwLT5jaXBo
ZXJfa2V5X2xlbiA9IFNSVFBfQUVTX0lDTV8xOTJfS0VZX0xFTl9XU0FMVDsKKyAgICBwLT5hdXRo
X3R5cGUgPSBTUlRQX05VTExfQVVUSDsKKyAgICBwLT5hdXRoX2tleV9sZW4gPSAwOworICAgIHAt
PmF1dGhfdGFnX2xlbiA9IDA7CisgICAgcC0+c2VjX3NlcnYgPSBzZWNfc2Vydl9jb25mOwogfQog
CiAvKgotICogQUVTLTEyOCBHQ00gbW9kZSB3aXRoIDggb2N0ZXQgYXV0aCB0YWcuIAorICogQUVT
LTEyOCBHQ00gbW9kZSB3aXRoIDggb2N0ZXQgYXV0aCB0YWcuCiAgKi8KLXZvaWQKLXNydHBfY3J5
cHRvX3BvbGljeV9zZXRfYWVzX2djbV8xMjhfOF9hdXRoKHNydHBfY3J5cHRvX3BvbGljeV90ICpw
KSB7Ci0gIHAtPmNpcGhlcl90eXBlICAgICA9IFNSVFBfQUVTX0dDTV8xMjg7Ci0gIHAtPmNpcGhl
cl9rZXlfbGVuICA9IFNSVFBfQUVTX0dDTV8xMjhfS0VZX0xFTl9XU0FMVDsKLSAgcC0+YXV0aF90
eXBlICAgICAgID0gU1JUUF9OVUxMX0FVVEg7IC8qIEdDTSBoYW5kbGVzIHRoZSBhdXRoIGZvciB1
cyAqLyAgICAgICAgICAgIAotICBwLT5hdXRoX2tleV9sZW4gICAgPSAwOyAKLSAgcC0+YXV0aF90
YWdfbGVuICAgID0gODsgICAvKiA4IG9jdGV0IHRhZyBsZW5ndGggKi8KLSAgcC0+c2VjX3NlcnYg
ICAgICAgID0gc2VjX3NlcnZfY29uZl9hbmRfYXV0aDsKK3ZvaWQgc3J0cF9jcnlwdG9fcG9saWN5
X3NldF9hZXNfZ2NtXzEyOF84X2F1dGgoc3J0cF9jcnlwdG9fcG9saWN5X3QgKnApCit7CisgICAg
cC0+Y2lwaGVyX3R5cGUgPSBTUlRQX0FFU19HQ01fMTI4OworICAgIHAtPmNpcGhlcl9rZXlfbGVu
ID0gU1JUUF9BRVNfR0NNXzEyOF9LRVlfTEVOX1dTQUxUOworICAgIHAtPmF1dGhfdHlwZSA9IFNS
VFBfTlVMTF9BVVRIOyAvKiBHQ00gaGFuZGxlcyB0aGUgYXV0aCBmb3IgdXMgKi8KKyAgICBwLT5h
dXRoX2tleV9sZW4gPSAwOworICAgIHAtPmF1dGhfdGFnX2xlbiA9IDg7IC8qIDggb2N0ZXQgdGFn
IGxlbmd0aCAqLworICAgIHAtPnNlY19zZXJ2ID0gc2VjX3NlcnZfY29uZl9hbmRfYXV0aDsKIH0K
IAogLyoKLSAqIEFFUy0yNTYgR0NNIG1vZGUgd2l0aCA4IG9jdGV0IGF1dGggdGFnLiAKKyAqIEFF
Uy0yNTYgR0NNIG1vZGUgd2l0aCA4IG9jdGV0IGF1dGggdGFnLgogICovCi12b2lkCi1zcnRwX2Ny
eXB0b19wb2xpY3lfc2V0X2Flc19nY21fMjU2XzhfYXV0aChzcnRwX2NyeXB0b19wb2xpY3lfdCAq
cCkgewotICBwLT5jaXBoZXJfdHlwZSAgICAgPSBTUlRQX0FFU19HQ01fMjU2OwotICBwLT5jaXBo
ZXJfa2V5X2xlbiAgPSBTUlRQX0FFU19HQ01fMjU2X0tFWV9MRU5fV1NBTFQ7Ci0gIHAtPmF1dGhf
dHlwZSAgICAgICA9IFNSVFBfTlVMTF9BVVRIOyAvKiBHQ00gaGFuZGxlcyB0aGUgYXV0aCBmb3Ig
dXMgKi8gCi0gIHAtPmF1dGhfa2V5X2xlbiAgICA9IDA7IAotICBwLT5hdXRoX3RhZ19sZW4gICAg
PSA4OyAgIC8qIDggb2N0ZXQgdGFnIGxlbmd0aCAqLwotICBwLT5zZWNfc2VydiAgICAgICAgPSBz
ZWNfc2Vydl9jb25mX2FuZF9hdXRoOwordm9pZCBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19n
Y21fMjU2XzhfYXV0aChzcnRwX2NyeXB0b19wb2xpY3lfdCAqcCkKK3sKKyAgICBwLT5jaXBoZXJf
dHlwZSA9IFNSVFBfQUVTX0dDTV8yNTY7CisgICAgcC0+Y2lwaGVyX2tleV9sZW4gPSBTUlRQX0FF
U19HQ01fMjU2X0tFWV9MRU5fV1NBTFQ7CisgICAgcC0+YXV0aF90eXBlID0gU1JUUF9OVUxMX0FV
VEg7IC8qIEdDTSBoYW5kbGVzIHRoZSBhdXRoIGZvciB1cyAqLworICAgIHAtPmF1dGhfa2V5X2xl
biA9IDA7CisgICAgcC0+YXV0aF90YWdfbGVuID0gODsgLyogOCBvY3RldCB0YWcgbGVuZ3RoICov
CisgICAgcC0+c2VjX3NlcnYgPSBzZWNfc2Vydl9jb25mX2FuZF9hdXRoOwogfQogCiAvKgotICog
QUVTLTEyOCBHQ00gbW9kZSB3aXRoIDggb2N0ZXQgYXV0aCB0YWcsIG5vIFJUQ1AgZW5jcnlwdGlv
bi4gCisgKiBBRVMtMTI4IEdDTSBtb2RlIHdpdGggOCBvY3RldCBhdXRoIHRhZywgbm8gUlRDUCBl
bmNyeXB0aW9uLgogICovCi12b2lkCi1zcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21fMTI4
Xzhfb25seV9hdXRoKHNydHBfY3J5cHRvX3BvbGljeV90ICpwKSB7Ci0gIHAtPmNpcGhlcl90eXBl
ICAgICA9IFNSVFBfQUVTX0dDTV8xMjg7Ci0gIHAtPmNpcGhlcl9rZXlfbGVuICA9IFNSVFBfQUVT
X0dDTV8xMjhfS0VZX0xFTl9XU0FMVDsKLSAgcC0+YXV0aF90eXBlICAgICAgID0gU1JUUF9OVUxM
X0FVVEg7IC8qIEdDTSBoYW5kbGVzIHRoZSBhdXRoIGZvciB1cyAqLyAKLSAgcC0+YXV0aF9rZXlf
bGVuICAgID0gMDsgCi0gIHAtPmF1dGhfdGFnX2xlbiAgICA9IDg7ICAgLyogOCBvY3RldCB0YWcg
bGVuZ3RoICovCi0gIHAtPnNlY19zZXJ2ICAgICAgICA9IHNlY19zZXJ2X2F1dGg7ICAvKiBUaGlz
IG9ubHkgYXBwbGllcyB0byBSVENQICovCit2b2lkIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVz
X2djbV8xMjhfOF9vbmx5X2F1dGgoc3J0cF9jcnlwdG9fcG9saWN5X3QgKnApCit7CisgICAgcC0+
Y2lwaGVyX3R5cGUgPSBTUlRQX0FFU19HQ01fMTI4OworICAgIHAtPmNpcGhlcl9rZXlfbGVuID0g
U1JUUF9BRVNfR0NNXzEyOF9LRVlfTEVOX1dTQUxUOworICAgIHAtPmF1dGhfdHlwZSA9IFNSVFBf
TlVMTF9BVVRIOyAvKiBHQ00gaGFuZGxlcyB0aGUgYXV0aCBmb3IgdXMgKi8KKyAgICBwLT5hdXRo
X2tleV9sZW4gPSAwOworICAgIHAtPmF1dGhfdGFnX2xlbiA9IDg7ICAgICAgICAgLyogOCBvY3Rl
dCB0YWcgbGVuZ3RoICovCisgICAgcC0+c2VjX3NlcnYgPSBzZWNfc2Vydl9hdXRoOyAvKiBUaGlz
IG9ubHkgYXBwbGllcyB0byBSVENQICovCiB9CiAKIC8qCi0gKiBBRVMtMjU2IEdDTSBtb2RlIHdp
dGggOCBvY3RldCBhdXRoIHRhZywgbm8gUlRDUCBlbmNyeXB0aW9uLiAKKyAqIEFFUy0yNTYgR0NN
IG1vZGUgd2l0aCA4IG9jdGV0IGF1dGggdGFnLCBubyBSVENQIGVuY3J5cHRpb24uCiAgKi8KLXZv
aWQKLXNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2djbV8yNTZfOF9vbmx5X2F1dGgoc3J0cF9j
cnlwdG9fcG9saWN5X3QgKnApIHsKLSAgcC0+Y2lwaGVyX3R5cGUgICAgID0gU1JUUF9BRVNfR0NN
XzI1NjsKLSAgcC0+Y2lwaGVyX2tleV9sZW4gID0gU1JUUF9BRVNfR0NNXzI1Nl9LRVlfTEVOX1dT
QUxUOwotICBwLT5hdXRoX3R5cGUgICAgICAgPSBTUlRQX05VTExfQVVUSDsgLyogR0NNIGhhbmRs
ZXMgdGhlIGF1dGggZm9yIHVzICovIAotICBwLT5hdXRoX2tleV9sZW4gICAgPSAwOyAKLSAgcC0+
YXV0aF90YWdfbGVuICAgID0gODsgICAvKiA4IG9jdGV0IHRhZyBsZW5ndGggKi8KLSAgcC0+c2Vj
X3NlcnYgICAgICAgID0gc2VjX3NlcnZfYXV0aDsgIC8qIFRoaXMgb25seSBhcHBsaWVzIHRvIFJU
Q1AgKi8KK3ZvaWQgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfZ2NtXzI1Nl84X29ubHlfYXV0
aChzcnRwX2NyeXB0b19wb2xpY3lfdCAqcCkKK3sKKyAgICBwLT5jaXBoZXJfdHlwZSA9IFNSVFBf
QUVTX0dDTV8yNTY7CisgICAgcC0+Y2lwaGVyX2tleV9sZW4gPSBTUlRQX0FFU19HQ01fMjU2X0tF
WV9MRU5fV1NBTFQ7CisgICAgcC0+YXV0aF90eXBlID0gU1JUUF9OVUxMX0FVVEg7IC8qIEdDTSBo
YW5kbGVzIHRoZSBhdXRoIGZvciB1cyAqLworICAgIHAtPmF1dGhfa2V5X2xlbiA9IDA7CisgICAg
cC0+YXV0aF90YWdfbGVuID0gODsgICAgICAgICAvKiA4IG9jdGV0IHRhZyBsZW5ndGggKi8KKyAg
ICBwLT5zZWNfc2VydiA9IHNlY19zZXJ2X2F1dGg7IC8qIFRoaXMgb25seSBhcHBsaWVzIHRvIFJU
Q1AgKi8KIH0KIAogLyoKLSAqIEFFUy0xMjggR0NNIG1vZGUgd2l0aCAxNiBvY3RldCBhdXRoIHRh
Zy4gCisgKiBBRVMtMTI4IEdDTSBtb2RlIHdpdGggMTYgb2N0ZXQgYXV0aCB0YWcuCiAgKi8KLXZv
aWQKLXNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2djbV8xMjhfMTZfYXV0aChzcnRwX2NyeXB0
b19wb2xpY3lfdCAqcCkgewotICBwLT5jaXBoZXJfdHlwZSAgICAgPSBTUlRQX0FFU19HQ01fMTI4
OwotICBwLT5jaXBoZXJfa2V5X2xlbiAgPSBTUlRQX0FFU19HQ01fMTI4X0tFWV9MRU5fV1NBTFQ7
Ci0gIHAtPmF1dGhfdHlwZSAgICAgICA9IFNSVFBfTlVMTF9BVVRIOyAvKiBHQ00gaGFuZGxlcyB0
aGUgYXV0aCBmb3IgdXMgKi8gICAgICAgICAgICAKLSAgcC0+YXV0aF9rZXlfbGVuICAgID0gMDsg
Ci0gIHAtPmF1dGhfdGFnX2xlbiAgICA9IDE2OyAgIC8qIDE2IG9jdGV0IHRhZyBsZW5ndGggKi8K
LSAgcC0+c2VjX3NlcnYgICAgICAgID0gc2VjX3NlcnZfY29uZl9hbmRfYXV0aDsKK3ZvaWQgc3J0
cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfZ2NtXzEyOF8xNl9hdXRoKHNydHBfY3J5cHRvX3BvbGlj
eV90ICpwKQoreworICAgIHAtPmNpcGhlcl90eXBlID0gU1JUUF9BRVNfR0NNXzEyODsKKyAgICBw
LT5jaXBoZXJfa2V5X2xlbiA9IFNSVFBfQUVTX0dDTV8xMjhfS0VZX0xFTl9XU0FMVDsKKyAgICBw
LT5hdXRoX3R5cGUgPSBTUlRQX05VTExfQVVUSDsgLyogR0NNIGhhbmRsZXMgdGhlIGF1dGggZm9y
IHVzICovCisgICAgcC0+YXV0aF9rZXlfbGVuID0gMDsKKyAgICBwLT5hdXRoX3RhZ19sZW4gPSAx
NjsgLyogMTYgb2N0ZXQgdGFnIGxlbmd0aCAqLworICAgIHAtPnNlY19zZXJ2ID0gc2VjX3NlcnZf
Y29uZl9hbmRfYXV0aDsKIH0KIAogLyoKLSAqIEFFUy0yNTYgR0NNIG1vZGUgd2l0aCAxNiBvY3Rl
dCBhdXRoIHRhZy4gCisgKiBBRVMtMjU2IEdDTSBtb2RlIHdpdGggMTYgb2N0ZXQgYXV0aCB0YWcu
CiAgKi8KLXZvaWQKLXNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2djbV8yNTZfMTZfYXV0aChz
cnRwX2NyeXB0b19wb2xpY3lfdCAqcCkgewotICBwLT5jaXBoZXJfdHlwZSAgICAgPSBTUlRQX0FF
U19HQ01fMjU2OwotICBwLT5jaXBoZXJfa2V5X2xlbiAgPSBTUlRQX0FFU19HQ01fMjU2X0tFWV9M
RU5fV1NBTFQ7Ci0gIHAtPmF1dGhfdHlwZSAgICAgICA9IFNSVFBfTlVMTF9BVVRIOyAvKiBHQ00g
aGFuZGxlcyB0aGUgYXV0aCBmb3IgdXMgKi8gCi0gIHAtPmF1dGhfa2V5X2xlbiAgICA9IDA7IAot
ICBwLT5hdXRoX3RhZ19sZW4gICAgPSAxNjsgICAvKiAxNiBvY3RldCB0YWcgbGVuZ3RoICovCi0g
IHAtPnNlY19zZXJ2ICAgICAgICA9IHNlY19zZXJ2X2NvbmZfYW5kX2F1dGg7Cit2b2lkIHNydHBf
Y3J5cHRvX3BvbGljeV9zZXRfYWVzX2djbV8yNTZfMTZfYXV0aChzcnRwX2NyeXB0b19wb2xpY3lf
dCAqcCkKK3sKKyAgICBwLT5jaXBoZXJfdHlwZSA9IFNSVFBfQUVTX0dDTV8yNTY7CisgICAgcC0+
Y2lwaGVyX2tleV9sZW4gPSBTUlRQX0FFU19HQ01fMjU2X0tFWV9MRU5fV1NBTFQ7CisgICAgcC0+
YXV0aF90eXBlID0gU1JUUF9OVUxMX0FVVEg7IC8qIEdDTSBoYW5kbGVzIHRoZSBhdXRoIGZvciB1
cyAqLworICAgIHAtPmF1dGhfa2V5X2xlbiA9IDA7CisgICAgcC0+YXV0aF90YWdfbGVuID0gMTY7
IC8qIDE2IG9jdGV0IHRhZyBsZW5ndGggKi8KKyAgICBwLT5zZWNfc2VydiA9IHNlY19zZXJ2X2Nv
bmZfYW5kX2F1dGg7CiB9CiAKICNlbmRpZgogCi0vKiAKKy8qCiAgKiBzZWN1cmUgcnRjcCBmdW5j
dGlvbnMKICAqLwogCkBAIC0zNDIwLDcgKzM0MzMsNyBAQCBzcnRwX2NyeXB0b19wb2xpY3lfc2V0
X2Flc19nY21fMjU2XzE2X2F1dGgoc3J0cF9jcnlwdG9fcG9saWN5X3QgKnApIHsKICAqICAgICAg
ICAgICAgICAgKy0tKy0tKy0tKy0tKy0tKy0tKy0tKy0tKy0tKy0tKy0tKy0tKyoKICAqCiAgKiBJ
bnB1dDogICpzZXNzaW9uX2tleXMgLSBwb2ludGVyIHRvIFNSVFAgc3RyZWFtIGNvbnRleHQgc2Vz
c2lvbiBrZXlzLAotICogICAgICAgICAgICAgICAgICAgICAgICB1c2VkIHRvIHJldHJpZXZlIHRo
ZSBTQUxUIAorICogICAgICAgICAgICAgICAgICAgICAgICB1c2VkIHRvIHJldHJpZXZlIHRoZSBT
QUxUCiAgKiAgICAgICAgICppdiAgICAgICAgICAgLSBQb2ludGVyIHRvIHJlY2lldmUgdGhlIGNh
bGN1bGF0ZWQgSVYKICAqICAgICAgICAgc2VxX251bSAgICAgICAtIFRoZSBTRVEgdmFsdWUgdG8g
dXNlIGZvciB0aGUgSVYgY2FsY3VsYXRpb24uCiAgKiAgICAgICAgICpoZHIgICAgICAgICAgLSBU
aGUgUlRQIGhlYWRlciwgdXNlZCB0byBnZXQgdGhlIFNTUkMgdmFsdWUKQEAgLTM0MjksMTIgKzM0
NDIsMTQgQEAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfZ2NtXzI1Nl8xNl9hdXRoKHNydHBf
Y3J5cHRvX3BvbGljeV90ICpwKSB7CiAgKiAgICAgICAgICBpZiBzZXFfbnVtIGlzIGludmFsaWQK
ICAqCiAgKi8KLXN0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdAotc3J0cF9jYWxjX2FlYWRfaXZfc3J0
Y3Aoc3J0cF9zZXNzaW9uX2tleXNfdCAqc2Vzc2lvbl9rZXlzLCB2MTI4X3QgKml2LAotICAgICAg
ICAgICAgICAgICAgICAgICAgdWludDMyX3Qgc2VxX251bSwgc3J0Y3BfaGRyX3QgKmhkcikKK3N0
YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NhbGNfYWVhZF9pdl9zcnRjcCgKKyAgICBzcnRw
X3Nlc3Npb25fa2V5c190ICpzZXNzaW9uX2tleXMsCisgICAgdjEyOF90ICppdiwKKyAgICB1aW50
MzJfdCBzZXFfbnVtLAorICAgIHNydGNwX2hkcl90ICpoZHIpCiB7Ci0gICAgdjEyOF90CWluOwot
ICAgIHYxMjhfdAlzYWx0OworICAgIHYxMjhfdCBpbjsKKyAgICB2MTI4X3Qgc2FsdDsKIAogICAg
IG1lbXNldCgmaW4sIDAsIHNpemVvZih2MTI4X3QpKTsKICAgICBtZW1zZXQoJnNhbHQsIDAsIHNp
emVvZih2MTI4X3QpKTsKQEAgLTM0NTAsNDAgKzM0NjUsMjE1IEBAIHNydHBfY2FsY19hZWFkX2l2
X3NydGNwKHNydHBfc2Vzc2lvbl9rZXlzX3QgKnNlc3Npb25fa2V5cywgdjEyOF90ICppdiwKICAg
ICBpZiAoc2VxX251bSAmIDB4ODAwMDAwMDBVTCkgewogICAgICAgICByZXR1cm4gc3J0cF9lcnJf
c3RhdHVzX2JhZF9wYXJhbTsKICAgICB9Ci0gICAgaW4udjMyWzJdID0gaHRvbmwoc2VxX251bSk7
Ci0KLSAgICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgIlByZS1zYWx0ZWQgUlRDUCBJViA9ICVzXG4i
LCB2MTI4X2hleF9zdHJpbmcoJmluKSk7CisgICAgaW4udjMyWzJdID0gaHRvbmwoc2VxX251bSk7
CisKKyAgICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgIlByZS1zYWx0ZWQgUlRDUCBJViA9ICVzXG4i
LCB2MTI4X2hleF9zdHJpbmcoJmluKSk7CisKKyAgICAvKgorICAgICAqIEdldCB0aGUgU0FMVCB2
YWx1ZSBmcm9tIHRoZSBjb250ZXh0CisgICAgICovCisgICAgbWVtY3B5KHNhbHQudjgsIHNlc3Np
b25fa2V5cy0+Y19zYWx0LCAxMik7CisgICAgZGVidWdfcHJpbnQobW9kX3NydHAsICJSVENQIFNB
TFQgPSAlc1xuIiwgdjEyOF9oZXhfc3RyaW5nKCZzYWx0KSk7CisKKyAgICAvKgorICAgICAqIEZp
bmFsbHksIGFwcGx5IHRoZSBTQUxUIHRvIHRoZSBpbnB1dAorICAgICAqLworICAgIHYxMjhfeG9y
KGl2LCAmaW4sICZzYWx0KTsKKworICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7Cit9CisK
Ky8qCisgKiBUaGlzIGNvZGUgaGFuZGxlcyBBRUFEIGNpcGhlcnMgZm9yIG91dGdvaW5nIFJUQ1Au
ICBXZSBjdXJyZW50bHkgc3VwcG9ydAorICogQUVTLUdDTSBtb2RlIHdpdGggMTI4IG9yIDI1NiBi
aXQga2V5cy4KKyAqLworc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfcHJvdGVjdF9ydGNw
X2FlYWQoCisgICAgc3J0cF90IGN0eCwKKyAgICBzcnRwX3N0cmVhbV9jdHhfdCAqc3RyZWFtLAor
ICAgIHZvaWQgKnJ0Y3BfaGRyLAorICAgIHVuc2lnbmVkIGludCAqcGt0X29jdGV0X2xlbiwKKyAg
ICBzcnRwX3Nlc3Npb25fa2V5c190ICpzZXNzaW9uX2tleXMsCisgICAgdW5zaWduZWQgaW50IHVz
ZV9ta2kpCit7CisgICAgc3J0Y3BfaGRyX3QgKmhkciA9IChzcnRjcF9oZHJfdCAqKXJ0Y3BfaGRy
OworICAgIHVpbnQzMl90ICplbmNfc3RhcnQ7ICAgICAgICAgICAgLyogcG9pbnRlciB0byBzdGFy
dCBvZiBlbmNyeXB0ZWQgcG9ydGlvbiAgKi8KKyAgICB1aW50MzJfdCAqdHJhaWxlcjsgICAgICAg
ICAgICAgIC8qIHBvaW50ZXIgdG8gc3RhcnQgb2YgdHJhaWxlciAgICAgICAgICAgICovCisgICAg
dW5zaWduZWQgaW50IGVuY19vY3RldF9sZW4gPSAwOyAvKiBudW1iZXIgb2Ygb2N0ZXRzIGluIGVu
Y3J5cHRlZCBwb3J0aW9uICovCisgICAgdWludDhfdCAqYXV0aF90YWcgPSBOVUxMOyAgICAgICAv
KiBsb2NhdGlvbiBvZiBhdXRoX3RhZyB3aXRoaW4gcGFja2V0ICAgICAqLworICAgIHNydHBfZXJy
X3N0YXR1c190IHN0YXR1czsKKyAgICB1aW50MzJfdCB0YWdfbGVuOworICAgIHVpbnQzMl90IHNl
cV9udW07CisgICAgdjEyOF90IGl2OworICAgIHVpbnQzMl90IHRzZXE7CisgICAgdW5zaWduZWQg
aW50IG1raV9zaXplID0gMDsKKworICAgIC8qIGdldCB0YWcgbGVuZ3RoIGZyb20gc3RyZWFtIGNv
bnRleHQgKi8KKyAgICB0YWdfbGVuID0gc3J0cF9hdXRoX2dldF90YWdfbGVuZ3RoKHNlc3Npb25f
a2V5cy0+cnRjcF9hdXRoKTsKKworICAgIC8qCisgICAgICogc2V0IGVuY3J5cHRpb24gc3RhcnQg
YW5kIGVuY3J5cHRpb24gbGVuZ3RoIC0gaWYgd2UncmUgbm90CisgICAgICogcHJvdmlkaW5nIGNv
bmZpZGVudGlhbGl0eSwgc2V0IGVuY19zdGFydCB0byBOVUxMCisgICAgICovCisgICAgZW5jX3N0
YXJ0ID0gKHVpbnQzMl90ICopaGRyICsgdWludDMyc19pbl9ydGNwX2hlYWRlcjsKKyAgICBlbmNf
b2N0ZXRfbGVuID0gKnBrdF9vY3RldF9sZW4gLSBvY3RldHNfaW5fcnRjcF9oZWFkZXI7CisKKyAg
ICAvKiBOT1RFOiBoZHItPmxlbmd0aCBpcyBub3QgdXNhYmxlIC0gaXQgcmVmZXJzIHRvIG9ubHkg
dGhlIGZpcnN0CisgICAgICogUlRDUCByZXBvcnQgaW4gdGhlIGNvbXBvdW5kIHBhY2tldCEKKyAg
ICAgKi8KKyAgICAvKiBOT1RFOiB0cmFpbGVyIGlzIDMyLWJpdCBhbGlnbmVkIGJlY2F1c2UgUlRD
UCAncGFja2V0cycgYXJlIGFsd2F5cworICAgICAqIG11bHRpcGxlcyBvZiAzMi1iaXRzIChSRkMg
MzU1MCA2LjEpCisgICAgICovCisgICAgdHJhaWxlciA9ICh1aW50MzJfdCAqKSgoY2hhciAqKWVu
Y19zdGFydCArIGVuY19vY3RldF9sZW4gKyB0YWdfbGVuKTsKKworICAgIGlmIChzdHJlYW0tPnJ0
Y3Bfc2VydmljZXMgJiBzZWNfc2Vydl9jb25mKSB7CisgICAgICAgICp0cmFpbGVyID0gaHRvbmwo
U1JUQ1BfRV9CSVQpOyAvKiBzZXQgZW5jcnlwdCBiaXQgKi8KKyAgICB9IGVsc2UgeworICAgICAg
ICBlbmNfc3RhcnQgPSBOVUxMOworICAgICAgICBlbmNfb2N0ZXRfbGVuID0gMDsKKyAgICAgICAg
LyogMCBpcyBuZXR3b3JrLW9yZGVyIGluZGVwZW5kYW50ICovCisgICAgICAgICp0cmFpbGVyID0g
MHgwMDAwMDAwMDsgLyogc2V0IGVuY3J5cHQgYml0ICovCisgICAgfQorCisgICAgbWtpX3NpemUg
PSBzcnRwX2luamVjdF9ta2koKHVpbnQ4X3QgKiloZHIgKyAqcGt0X29jdGV0X2xlbiArIHRhZ19s
ZW4gKworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplb2Yoc3J0Y3BfdHJh
aWxlcl90KSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXNzaW9uX2tleXMsIHVz
ZV9ta2kpOworCisgICAgLyoKKyAgICAgKiBzZXQgdGhlIGF1dGhfdGFnIHBvaW50ZXIgdG8gdGhl
IHByb3BlciBsb2NhdGlvbiwgd2hpY2ggaXMgYWZ0ZXIKKyAgICAgKiB0aGUgcGF5bG9hZCwgYnV0
IGJlZm9yZSB0aGUgdHJhaWxlcgorICAgICAqIChub3RlIHRoYXQgc3J0cGMgKmFsd2F5cyogcHJv
dmlkZXMgYXV0aGVudGljYXRpb24sIHVubGlrZSBzcnRwKQorICAgICAqLworICAgIC8qIE5vdGU6
IFRoaXMgd291bGQgbmVlZCB0byBjaGFuZ2UgZm9yIG9wdGlvbmFsIG1pa2V5IGRhdGEgKi8KKyAg
ICBhdXRoX3RhZyA9ICh1aW50OF90ICopaGRyICsgKnBrdF9vY3RldF9sZW47CisKKyAgICAvKgor
ICAgICAqIGNoZWNrIHNlcXVlbmNlIG51bWJlciBmb3Igb3ZlcnJ1bnMsIGFuZCBjb3B5IGl0IGlu
dG8gdGhlIHBhY2tldAorICAgICAqIGlmIGl0cyB2YWx1ZSBpc24ndCB0b28gYmlnCisgICAgICov
CisgICAgc3RhdHVzID0gc3J0cF9yZGJfaW5jcmVtZW50KCZzdHJlYW0tPnJ0Y3BfcmRiKTsKKyAg
ICBpZiAoc3RhdHVzKSB7CisgICAgICAgIHJldHVybiBzdGF0dXM7CisgICAgfQorICAgIHNlcV9u
dW0gPSBzcnRwX3JkYl9nZXRfdmFsdWUoJnN0cmVhbS0+cnRjcF9yZGIpOworICAgICp0cmFpbGVy
IHw9IGh0b25sKHNlcV9udW0pOworICAgIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAic3J0Y3AgaW5k
ZXg6ICV4Iiwgc2VxX251bSk7CisKKyAgICAvKgorICAgICAqIENhbGN1bGF0ZSBhbmQgc2V0IHRo
ZSBJVgorICAgICAqLworICAgIHN0YXR1cyA9IHNydHBfY2FsY19hZWFkX2l2X3NydGNwKHNlc3Np
b25fa2V5cywgJml2LCBzZXFfbnVtLCBoZHIpOworICAgIGlmIChzdGF0dXMpIHsKKyAgICAgICAg
cmV0dXJuIHNydHBfZXJyX3N0YXR1c19jaXBoZXJfZmFpbDsKKyAgICB9CisgICAgc3RhdHVzID0g
c3J0cF9jaXBoZXJfc2V0X2l2KHNlc3Npb25fa2V5cy0+cnRjcF9jaXBoZXIsICh1aW50OF90ICop
Jml2LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcnRwX2RpcmVjdGlvbl9lbmNy
eXB0KTsKKyAgICBpZiAoc3RhdHVzKSB7CisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNf
Y2lwaGVyX2ZhaWw7CisgICAgfQorCisgICAgLyoKKyAgICAgKiBTZXQgdGhlIEFBRCBmb3IgR0NN
IG1vZGUKKyAgICAgKi8KKyAgICBpZiAoZW5jX3N0YXJ0KSB7CisgICAgICAgIC8qCisgICAgICAg
ICAqIElmIHBheWxvYWQgZW5jcnlwdGlvbiBpcyBlbmFibGVkLCB0aGVuIHRoZSBBQUQgY29uc2lz
dCBvZgorICAgICAgICAgKiB0aGUgUlRDUCBoZWFkZXIgYW5kIHRoZSBzZXEjIGF0IHRoZSBlbmQg
b2YgdGhlIHBhY2tldAorICAgICAgICAgKi8KKyAgICAgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJf
c2V0X2FhZChzZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyLCAodWludDhfdCAqKWhkciwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvY3RldHNfaW5fcnRjcF9oZWFkZXIpOwor
ICAgICAgICBpZiAoc3RhdHVzKSB7CisgICAgICAgICAgICByZXR1cm4gKHNydHBfZXJyX3N0YXR1
c19jaXBoZXJfZmFpbCk7CisgICAgICAgIH0KKyAgICB9IGVsc2UgeworICAgICAgICAvKgorICAg
ICAgICAgKiBTaW5jZSBwYXlsb2FkIGVuY3J5cHRpb24gaXMgbm90IGVuYWJsZWQsIHdlIG11c3Qg
YXV0aGVudGljYXRlCisgICAgICAgICAqIHRoZSBlbnRpcmUgcGFja2V0IGFzIGRlc2NyaWJlZCBp
biBSRkMgNzcxNCAoU2VjdGlvbiA5LjMuIERhdGEKKyAgICAgICAgICogVHlwZXMgaW4gVW5lbmNy
eXB0ZWQgU1JUQ1AgQ29tcG91bmQgUGFja2V0cykKKyAgICAgICAgICovCisgICAgICAgIHN0YXR1
cyA9IHNydHBfY2lwaGVyX3NldF9hYWQoc2Vzc2lvbl9rZXlzLT5ydGNwX2NpcGhlciwgKHVpbnQ4
X3QgKiloZHIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKnBrdF9vY3Rl
dF9sZW4pOworICAgICAgICBpZiAoc3RhdHVzKSB7CisgICAgICAgICAgICByZXR1cm4gKHNydHBf
ZXJyX3N0YXR1c19jaXBoZXJfZmFpbCk7CisgICAgICAgIH0KKyAgICB9CisgICAgLyoKKyAgICAg
KiBQcm9jZXNzIHRoZSBzZXF1ZW5jZSMgYXMgQUFECisgICAgICovCisgICAgdHNlcSA9ICp0cmFp
bGVyOworICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3NldF9hYWQoc2Vzc2lvbl9rZXlzLT5ydGNw
X2NpcGhlciwgKHVpbnQ4X3QgKikmdHNlcSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHNpemVvZihzcnRjcF90cmFpbGVyX3QpKTsKKyAgICBpZiAoc3RhdHVzKSB7CisgICAgICAg
IHJldHVybiAoc3J0cF9lcnJfc3RhdHVzX2NpcGhlcl9mYWlsKTsKKyAgICB9CisKKyAgICAvKiBp
ZiB3ZSdyZSBlbmNyeXB0aW5nLCBleG9yIGtleXN0cmVhbSBpbnRvIHRoZSBtZXNzYWdlICovCisg
ICAgaWYgKGVuY19zdGFydCkgeworICAgICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9lbmNyeXB0
KHNlc3Npb25fa2V5cy0+cnRjcF9jaXBoZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKHVpbnQ4X3QgKillbmNfc3RhcnQsICZlbmNfb2N0ZXRfbGVuKTsKKyAgICAgICAg
aWYgKHN0YXR1cykgeworICAgICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19jaXBoZXJf
ZmFpbDsKKyAgICAgICAgfQorICAgICAgICAvKgorICAgICAgICAgKiBHZXQgdGhlIHRhZyBhbmQg
YXBwZW5kIHRoYXQgdG8gdGhlIG91dHB1dAorICAgICAgICAgKi8KKyAgICAgICAgc3RhdHVzID0g
c3J0cF9jaXBoZXJfZ2V0X3RhZyhzZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICh1aW50OF90ICopYXV0aF90YWcsICZ0YWdfbGVu
KTsKKyAgICAgICAgaWYgKHN0YXR1cykgeworICAgICAgICAgICAgcmV0dXJuIChzcnRwX2Vycl9z
dGF0dXNfY2lwaGVyX2ZhaWwpOworICAgICAgICB9CisgICAgICAgIGVuY19vY3RldF9sZW4gKz0g
dGFnX2xlbjsKKyAgICB9IGVsc2UgeworICAgICAgICAvKgorICAgICAgICAgKiBFdmVuIHRob3Vn
aCB3ZSdyZSBub3QgZW5jcnlwdGluZyB0aGUgcGF5bG9hZCwgd2UgbmVlZAorICAgICAgICAgKiB0
byBydW4gdGhlIGNpcGhlciB0byBnZXQgdGhlIGF1dGggdGFnLgorICAgICAgICAgKi8KKyAgICAg
ICAgdW5zaWduZWQgaW50IG5vbGVuID0gMDsKKyAgICAgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJf
ZW5jcnlwdChzZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyLCBOVUxMLCAmbm9sZW4pOworICAgICAg
ICBpZiAoc3RhdHVzKSB7CisgICAgICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2NpcGhl
cl9mYWlsOworICAgICAgICB9CisgICAgICAgIC8qCisgICAgICAgICAqIEdldCB0aGUgdGFnIGFu
ZCBhcHBlbmQgdGhhdCB0byB0aGUgb3V0cHV0CisgICAgICAgICAqLworICAgICAgICBzdGF0dXMg
PSBzcnRwX2NpcGhlcl9nZXRfdGFnKHNlc3Npb25fa2V5cy0+cnRjcF9jaXBoZXIsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHVpbnQ4X3QgKilhdXRoX3RhZywgJnRhZ19s
ZW4pOworICAgICAgICBpZiAoc3RhdHVzKSB7CisgICAgICAgICAgICByZXR1cm4gKHNydHBfZXJy
X3N0YXR1c19jaXBoZXJfZmFpbCk7CisgICAgICAgIH0KKyAgICAgICAgZW5jX29jdGV0X2xlbiAr
PSB0YWdfbGVuOworICAgIH0KIAotICAgIC8qCi0gICAgICogR2V0IHRoZSBTQUxUIHZhbHVlIGZy
b20gdGhlIGNvbnRleHQKLSAgICAgKi8KLSAgICBtZW1jcHkoc2FsdC52OCwgc2Vzc2lvbl9rZXlz
LT5jX3NhbHQsIDEyKTsKLSAgICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgIlJUQ1AgU0FMVCA9ICVz
XG4iLCB2MTI4X2hleF9zdHJpbmcoJnNhbHQpKTsKKyAgICAvKiBpbmNyZWFzZSB0aGUgcGFja2V0
IGxlbmd0aCBieSB0aGUgbGVuZ3RoIG9mIHRoZSBhdXRoIHRhZyBhbmQgc2VxX251bSovCisgICAg
KnBrdF9vY3RldF9sZW4gKz0gKHRhZ19sZW4gKyBzaXplb2Yoc3J0Y3BfdHJhaWxlcl90KSk7CiAK
LSAgICAvKgotICAgICAqIEZpbmFsbHksIGFwcGx5IHRoZSBTQUxUIHRvIHRoZSBpbnB1dAotICAg
ICAqLwotICAgIHYxMjhfeG9yKGl2LCAmaW4sICZzYWx0KTsKKyAgICAvKiBpbmNyZWFzZSB0aGUg
cGFja2V0IGJ5IHRoZSBta2lfc2l6ZSAqLworICAgICpwa3Rfb2N0ZXRfbGVuICs9IG1raV9zaXpl
OwogCiAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0KIAogLyoKLSAqIFRoaXMgY29k
ZSBoYW5kbGVzIEFFQUQgY2lwaGVycyBmb3Igb3V0Z29pbmcgUlRDUC4gIFdlIGN1cnJlbnRseSBz
dXBwb3J0Ci0gKiBBRVMtR0NNIG1vZGUgd2l0aCAxMjggb3IgMjU2IGJpdCBrZXlzLiAKKyAqIFRo
aXMgZnVuY3Rpb24gaGFuZGxlcyBpbmNvbWluZyBTUlRDUCBwYWNrZXRzIHdoaWxlIGluIEFFQUQg
bW9kZSwKKyAqIHdoaWNoIGN1cnJlbnRseSBzdXBwb3J0cyBBRVMtR0NNIGVuY3J5cHRpb24uICBO
b3RlLCB0aGUgYXV0aCB0YWcgaXMKKyAqIGF0IHRoZSBlbmQgb2YgdGhlIHBhY2tldCBzdHJlYW0g
YW5kIGlzIGF1dG9tYXRpY2FsbHkgY2hlY2tlZCBieSBHQ00KKyAqIHdoZW4gZGVjcnlwdGluZyB0
aGUgcGF5bG9hZC4KICAqLwotc3RhdGljIHNydHBfZXJyX3N0YXR1c190Ci1zcnRwX3Byb3RlY3Rf
cnRjcF9hZWFkIChzcnRwX3QgY3R4LCBzcnRwX3N0cmVhbV9jdHhfdCAqc3RyZWFtLCAKLSAgICAg
ICAgICAgICAgICAgICAgICAgIHZvaWQgKnJ0Y3BfaGRyLCB1bnNpZ25lZCBpbnQgKnBrdF9vY3Rl
dF9sZW4sCi0gICAgICAgICAgICAgICAgICAgICAgICBzcnRwX3Nlc3Npb25fa2V5c190ICpzZXNz
aW9uX2tleXMsIHVuc2lnbmVkIGludCB1c2VfbWtpKQorc3RhdGljIHNydHBfZXJyX3N0YXR1c190
IHNydHBfdW5wcm90ZWN0X3J0Y3BfYWVhZCgKKyAgICBzcnRwX3QgY3R4LAorICAgIHNydHBfc3Ry
ZWFtX2N0eF90ICpzdHJlYW0sCisgICAgdm9pZCAqc3J0Y3BfaGRyLAorICAgIHVuc2lnbmVkIGlu
dCAqcGt0X29jdGV0X2xlbiwKKyAgICBzcnRwX3Nlc3Npb25fa2V5c190ICpzZXNzaW9uX2tleXMs
CisgICAgdW5zaWduZWQgaW50IHVzZV9ta2kpCiB7Ci0gICAgc3J0Y3BfaGRyX3QgKmhkciA9IChz
cnRjcF9oZHJfdCopcnRjcF9oZHI7Ci0gICAgdWludDMyX3QgKmVuY19zdGFydDsgICAgICAgIC8q
IHBvaW50ZXIgdG8gc3RhcnQgb2YgZW5jcnlwdGVkIHBvcnRpb24gICovCi0gICAgdWludDMyX3Qg
KnRyYWlsZXI7ICAgICAgICAgIC8qIHBvaW50ZXIgdG8gc3RhcnQgb2YgdHJhaWxlciAgICAgICAg
ICAgICovCisgICAgc3J0Y3BfaGRyX3QgKmhkciA9IChzcnRjcF9oZHJfdCAqKXNydGNwX2hkcjsK
KyAgICB1aW50MzJfdCAqZW5jX3N0YXJ0OyAgICAgICAgICAgIC8qIHBvaW50ZXIgdG8gc3RhcnQg
b2YgZW5jcnlwdGVkIHBvcnRpb24gICovCisgICAgdWludDMyX3QgKnRyYWlsZXI7ICAgICAgICAg
ICAgICAvKiBwb2ludGVyIHRvIHN0YXJ0IG9mIHRyYWlsZXIgICAgICAgICAgICAqLwogICAgIHVu
c2lnbmVkIGludCBlbmNfb2N0ZXRfbGVuID0gMDsgLyogbnVtYmVyIG9mIG9jdGV0cyBpbiBlbmNy
eXB0ZWQgcG9ydGlvbiAqLwotICAgIHVpbnQ4X3QgKmF1dGhfdGFnID0gTlVMTDsgICAvKiBsb2Nh
dGlvbiBvZiBhdXRoX3RhZyB3aXRoaW4gcGFja2V0ICAgICAqLworICAgIHVpbnQ4X3QgKmF1dGhf
dGFnID0gTlVMTDsgICAgICAgLyogbG9jYXRpb24gb2YgYXV0aF90YWcgd2l0aGluIHBhY2tldCAg
ICAgKi8KICAgICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7Ci0gICAgdWludDMyX3QgdGFnX2xl
bjsKKyAgICBpbnQgdGFnX2xlbjsKKyAgICB1bnNpZ25lZCBpbnQgdG1wX2xlbjsKICAgICB1aW50
MzJfdCBzZXFfbnVtOwogICAgIHYxMjhfdCBpdjsKICAgICB1aW50MzJfdCB0c2VxOwpAQCAtMzQ5
Miw1MCArMzY4Miw0OSBAQCBzcnRwX3Byb3RlY3RfcnRjcF9hZWFkIChzcnRwX3QgY3R4LCBzcnRw
X3N0cmVhbV9jdHhfdCAqc3RyZWFtLAogICAgIC8qIGdldCB0YWcgbGVuZ3RoIGZyb20gc3RyZWFt
IGNvbnRleHQgKi8KICAgICB0YWdfbGVuID0gc3J0cF9hdXRoX2dldF90YWdfbGVuZ3RoKHNlc3Np
b25fa2V5cy0+cnRjcF9hdXRoKTsKIAorICAgIGlmICh1c2VfbWtpKSB7CisgICAgICAgIG1raV9z
aXplID0gc2Vzc2lvbl9rZXlzLT5ta2lfc2l6ZTsKKyAgICB9CisKICAgICAvKgotICAgICAqIHNl
dCBlbmNyeXB0aW9uIHN0YXJ0IGFuZCBlbmNyeXB0aW9uIGxlbmd0aCAtIGlmIHdlJ3JlIG5vdAot
ICAgICAqIHByb3ZpZGluZyBjb25maWRlbnRpYWxpdHksIHNldCBlbmNfc3RhcnQgdG8gTlVMTAor
ICAgICAqIHNldCBlbmNyeXB0aW9uIHN0YXJ0LCBlbmNyeXB0aW9uIGxlbmd0aCwgYW5kIHRyYWls
ZXIKICAgICAgKi8KLSAgICBlbmNfc3RhcnQgPSAodWludDMyX3QqKWhkciArIHVpbnQzMnNfaW5f
cnRjcF9oZWFkZXI7Ci0gICAgZW5jX29jdGV0X2xlbiA9ICpwa3Rfb2N0ZXRfbGVuIC0gb2N0ZXRz
X2luX3J0Y3BfaGVhZGVyOwotCi0gICAgLyogTk9URTogaGRyLT5sZW5ndGggaXMgbm90IHVzYWJs
ZSAtIGl0IHJlZmVycyB0byBvbmx5IHRoZSBmaXJzdAotICAgICAgICAgICBSVENQIHJlcG9ydCBp
biB0aGUgY29tcG91bmQgcGFja2V0ISAqLwotICAgIC8qIE5PVEU6IHRyYWlsZXIgaXMgMzItYml0
IGFsaWduZWQgYmVjYXVzZSBSVENQICdwYWNrZXRzJyBhcmUgYWx3YXlzCi0gICAgICAgICAgIG11
bHRpcGxlcyBvZiAzMi1iaXRzIChSRkMgMzU1MCA2LjEpICovCi0gICAgdHJhaWxlciA9ICh1aW50
MzJfdCopKChjaGFyKillbmNfc3RhcnQgKyBlbmNfb2N0ZXRfbGVuICsgdGFnX2xlbik7CisgICAg
LyogaW5kZXggJiBFIChlbmNyeXB0aW9uKSBiaXQgZm9sbG93IG5vcm1hbCBkYXRhLiBoZHItPmxl
biBpcyB0aGUgbnVtYmVyIG9mCisgICAgICogd29yZHMgKDMyLWJpdCkgaW4gdGhlIG5vcm1hbCBw
YWNrZXQgbWludXMgMQorICAgICAqLworICAgIC8qIFRoaXMgc2hvdWxkIHBvaW50IHRyYWlsZXIg
dG8gdGhlIHdvcmQgcGFzdCB0aGUgZW5kIG9mIHRoZSBub3JtYWwgZGF0YS4gKi8KKyAgICAvKiBU
aGlzIHdvdWxkIG5lZWQgdG8gYmUgbW9kaWZpZWQgZm9yIG9wdGlvbmFsIG1pa2V5IGRhdGEgKi8K
KyAgICAvKgorICAgICAqIE5PVEU6IHRyYWlsZXIgaXMgMzItYml0IGFsaWduZWQgYmVjYXVzZSBS
VENQICdwYWNrZXRzJyBhcmUgYWx3YXlzCisgICAgICogICBtdWx0aXBsZXMgb2YgMzItYml0cyAo
UkZDIDM1NTAgNi4xKQorICAgICAqLworICAgIHRyYWlsZXIgPSAodWludDMyX3QgKikoKGNoYXIg
KiloZHIgKyAqcGt0X29jdGV0X2xlbiAtCisgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXpl
b2Yoc3J0Y3BfdHJhaWxlcl90KSAtIG1raV9zaXplKTsKKyAgICAvKgorICAgICAqIFdlIHBhc3Mg
dGhlIHRhZyBkb3duIHRvIHRoZSBjaXBoZXIgd2hlbiBkb2luZyBHQ00gbW9kZQorICAgICAqLwor
ICAgIGVuY19vY3RldF9sZW4gPSAqcGt0X29jdGV0X2xlbiAtIChvY3RldHNfaW5fcnRjcF9oZWFk
ZXIgKworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplb2Yoc3J0Y3Bf
dHJhaWxlcl90KSArIG1raV9zaXplKTsKKyAgICBhdXRoX3RhZyA9ICh1aW50OF90ICopaGRyICsg
KnBrdF9vY3RldF9sZW4gLSB0YWdfbGVuIC0gbWtpX3NpemUgLQorICAgICAgICAgICAgICAgc2l6
ZW9mKHNydGNwX3RyYWlsZXJfdCk7CiAKLSAgICBpZiAoc3RyZWFtLT5ydGNwX3NlcnZpY2VzICYg
c2VjX3NlcnZfY29uZikgewotICAgICAgICAqdHJhaWxlciA9IGh0b25sKFNSVENQX0VfQklUKTsg
Lyogc2V0IGVuY3J5cHQgYml0ICovCisgICAgaWYgKCooKHVuc2lnbmVkIGNoYXIgKil0cmFpbGVy
KSAmIFNSVENQX0VfQllURV9CSVQpIHsKKyAgICAgICAgZW5jX3N0YXJ0ID0gKHVpbnQzMl90ICop
aGRyICsgdWludDMyc19pbl9ydGNwX2hlYWRlcjsKICAgICB9IGVsc2UgewotICAgICAgICBlbmNf
c3RhcnQgPSBOVUxMOwogICAgICAgICBlbmNfb2N0ZXRfbGVuID0gMDsKLSAgICAgICAgLyogMCBp
cyBuZXR3b3JrLW9yZGVyIGluZGVwZW5kYW50ICovCi0gICAgICAgICp0cmFpbGVyID0gMHgwMDAw
MDAwMDsgLyogc2V0IGVuY3J5cHQgYml0ICovCisgICAgICAgIGVuY19zdGFydCA9IE5VTEw7IC8q
IHRoaXMgaW5kaWNhdGVzIHRoYXQgdGhlcmUncyBubyBlbmNyeXB0aW9uICovCiAgICAgfQogCi0g
ICAgbWtpX3NpemUgPSBzcnRwX2luamVjdF9ta2koKHVpbnQ4X3QgKiloZHIgKyAqcGt0X29jdGV0
X2xlbiArIHRhZ19sZW4gKyBzaXplb2Yoc3J0Y3BfdHJhaWxlcl90KSwKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBzZXNzaW9uX2tleXMsIHVzZV9ta2kpOwotCi0gICAgLyoKLSAgICAg
KiBzZXQgdGhlIGF1dGhfdGFnIHBvaW50ZXIgdG8gdGhlIHByb3BlciBsb2NhdGlvbiwgd2hpY2gg
aXMgYWZ0ZXIKLSAgICAgKiB0aGUgcGF5bG9hZCwgYnV0IGJlZm9yZSB0aGUgdHJhaWxlcgotICAg
ICAqIChub3RlIHRoYXQgc3J0cGMgKmFsd2F5cyogcHJvdmlkZXMgYXV0aGVudGljYXRpb24sIHVu
bGlrZSBzcnRwKQotICAgICAqLwotICAgIC8qIE5vdGU6IFRoaXMgd291bGQgbmVlZCB0byBjaGFu
Z2UgZm9yIG9wdGlvbmFsIG1pa2V5IGRhdGEgKi8KLSAgICBhdXRoX3RhZyA9ICh1aW50OF90Kilo
ZHIgKyAqcGt0X29jdGV0X2xlbjsKLQogICAgIC8qCi0gICAgICogY2hlY2sgc2VxdWVuY2UgbnVt
YmVyIGZvciBvdmVycnVucywgYW5kIGNvcHkgaXQgaW50byB0aGUgcGFja2V0Ci0gICAgICogaWYg
aXRzIHZhbHVlIGlzbid0IHRvbyBiaWcKKyAgICAgKiBjaGVjayB0aGUgc2VxdWVuY2UgbnVtYmVy
IGZvciByZXBsYXlzCiAgICAgICovCi0gICAgc3RhdHVzID0gc3J0cF9yZGJfaW5jcmVtZW50KCZz
dHJlYW0tPnJ0Y3BfcmRiKTsKKyAgICAvKiB0aGlzIGlzIGVhc2llciB0aGFuIGRlYWxpbmcgd2l0
aCBiaXRmaWVsZCBhY2Nlc3MgKi8KKyAgICBzZXFfbnVtID0gbnRvaGwoKnRyYWlsZXIpICYgU1JU
Q1BfSU5ERVhfTUFTSzsKKyAgICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgInNydGNwIGluZGV4OiAl
eCIsIHNlcV9udW0pOworICAgIHN0YXR1cyA9IHNydHBfcmRiX2NoZWNrKCZzdHJlYW0tPnJ0Y3Bf
cmRiLCBzZXFfbnVtKTsKICAgICBpZiAoc3RhdHVzKSB7CiAgICAgICAgIHJldHVybiBzdGF0dXM7
CiAgICAgfQotICAgIHNlcV9udW0gPSBzcnRwX3JkYl9nZXRfdmFsdWUoJnN0cmVhbS0+cnRjcF9y
ZGIpOwotICAgICp0cmFpbGVyIHw9IGh0b25sKHNlcV9udW0pOwotICAgIGRlYnVnX3ByaW50KG1v
ZF9zcnRwLCAic3J0Y3AgaW5kZXg6ICV4Iiwgc2VxX251bSk7CiAKICAgICAvKgogICAgICAqIENh
bGN1bGF0ZSBhbmQgc2V0IHRoZSBJVgpAQCAtMzU0NCw4ICszNzMzLDggQEAgc3J0cF9wcm90ZWN0
X3J0Y3BfYWVhZCAoc3J0cF90IGN0eCwgc3J0cF9zdHJlYW1fY3R4X3QgKnN0cmVhbSwKICAgICBp
ZiAoc3RhdHVzKSB7CiAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfY2lwaGVyX2ZhaWw7
CiAgICAgfQotICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3NldF9pdihzZXNzaW9uX2tleXMtPnJ0
Y3BfY2lwaGVyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAodWludDhfdCopJml2
LCBzcnRwX2RpcmVjdGlvbl9lbmNyeXB0KTsKKyAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9zZXRf
aXYoc2Vzc2lvbl9rZXlzLT5ydGNwX2NpcGhlciwgKHVpbnQ4X3QgKikmaXYsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHNydHBfZGlyZWN0aW9uX2RlY3J5cHQpOwogICAgIGlmIChz
dGF0dXMpIHsKICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19jaXBoZXJfZmFpbDsKICAg
ICB9CkBAIC0zNTU4LDEwICszNzQ3LDEwIEBAIHNydHBfcHJvdGVjdF9ydGNwX2FlYWQgKHNydHBf
dCBjdHgsIHNydHBfc3RyZWFtX2N0eF90ICpzdHJlYW0sCiAgICAgICAgICAqIElmIHBheWxvYWQg
ZW5jcnlwdGlvbiBpcyBlbmFibGVkLCB0aGVuIHRoZSBBQUQgY29uc2lzdCBvZgogICAgICAgICAg
KiB0aGUgUlRDUCBoZWFkZXIgYW5kIHRoZSBzZXEjIGF0IHRoZSBlbmQgb2YgdGhlIHBhY2tldAog
ICAgICAgICAgKi8KLSAgICAgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfc2V0X2FhZChzZXNzaW9u
X2tleXMtPnJ0Y3BfY2lwaGVyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHVp
bnQ4X3QqKWhkciwgb2N0ZXRzX2luX3J0Y3BfaGVhZGVyKTsKKyAgICAgICAgc3RhdHVzID0gc3J0
cF9jaXBoZXJfc2V0X2FhZChzZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyLCAodWludDhfdCAqKWhk
ciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvY3RldHNfaW5fcnRjcF9o
ZWFkZXIpOwogICAgICAgICBpZiAoc3RhdHVzKSB7Ci0gICAgICAgICAgICByZXR1cm4gKCBzcnRw
X2Vycl9zdGF0dXNfY2lwaGVyX2ZhaWwpOworICAgICAgICAgICAgcmV0dXJuIChzcnRwX2Vycl9z
dGF0dXNfY2lwaGVyX2ZhaWwpOwogICAgICAgICB9CiAgICAgfSBlbHNlIHsKICAgICAgICAgLyoK
QEAgLTM1NjksNTkgKzM3NTgsMzIyIEBAIHNydHBfcHJvdGVjdF9ydGNwX2FlYWQgKHNydHBfdCBj
dHgsIHNydHBfc3RyZWFtX2N0eF90ICpzdHJlYW0sCiAgICAgICAgICAqIHRoZSBlbnRpcmUgcGFj
a2V0IGFzIGRlc2NyaWJlZCBpbiBSRkMgNzcxNCAoU2VjdGlvbiA5LjMuIERhdGEKICAgICAgICAg
ICogVHlwZXMgaW4gVW5lbmNyeXB0ZWQgU1JUQ1AgQ29tcG91bmQgUGFja2V0cykKICAgICAgICAg
ICovCi0gICAgICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3NldF9hYWQoc2Vzc2lvbl9rZXlzLT5y
dGNwX2NpcGhlciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICh1aW50OF90Kilo
ZHIsICpwa3Rfb2N0ZXRfbGVuKTsKKyAgICAgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfc2V0X2Fh
ZCgKKyAgICAgICAgICAgIHNlc3Npb25fa2V5cy0+cnRjcF9jaXBoZXIsICh1aW50OF90ICopaGRy
LAorICAgICAgICAgICAgKCpwa3Rfb2N0ZXRfbGVuIC0gdGFnX2xlbiAtIHNpemVvZihzcnRjcF90
cmFpbGVyX3QpIC0gbWtpX3NpemUpKTsKICAgICAgICAgaWYgKHN0YXR1cykgewotICAgICAgICAg
ICAgcmV0dXJuICggc3J0cF9lcnJfc3RhdHVzX2NpcGhlcl9mYWlsKTsKKyAgICAgICAgICAgIHJl
dHVybiAoc3J0cF9lcnJfc3RhdHVzX2NpcGhlcl9mYWlsKTsKICAgICAgICAgfQogICAgIH0KKwog
ICAgIC8qCiAgICAgICogUHJvY2VzcyB0aGUgc2VxdWVuY2UjIGFzIEFBRAogICAgICAqLwogICAg
IHRzZXEgPSAqdHJhaWxlcjsKLSAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9zZXRfYWFkKHNlc3Np
b25fa2V5cy0+cnRjcF9jaXBoZXIsICh1aW50OF90KikmdHNlcSwKKyAgICBzdGF0dXMgPSBzcnRw
X2NpcGhlcl9zZXRfYWFkKHNlc3Npb25fa2V5cy0+cnRjcF9jaXBoZXIsICh1aW50OF90ICopJnRz
ZXEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplb2Yoc3J0Y3BfdHJhaWxl
cl90KSk7CiAgICAgaWYgKHN0YXR1cykgewotICAgICAgICByZXR1cm4gKCBzcnRwX2Vycl9zdGF0
dXNfY2lwaGVyX2ZhaWwpOworICAgICAgICByZXR1cm4gKHNydHBfZXJyX3N0YXR1c19jaXBoZXJf
ZmFpbCk7CiAgICAgfQogCi0gICAgLyogaWYgd2UncmUgZW5jcnlwdGluZywgZXhvciBrZXlzdHJl
YW0gaW50byB0aGUgbWVzc2FnZSAqLworICAgIC8qIGlmIHdlJ3JlIGRlY3J5cHRpbmcsIGV4b3Ig
a2V5c3RyZWFtIGludG8gdGhlIG1lc3NhZ2UgKi8KICAgICBpZiAoZW5jX3N0YXJ0KSB7Ci0gICAg
ICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX2VuY3J5cHQoc2Vzc2lvbl9rZXlzLT5ydGNwX2NpcGhl
ciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAodWludDhfdCopZW5jX3N0
YXJ0LCAmZW5jX29jdGV0X2xlbik7CisgICAgICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX2RlY3J5
cHQoc2Vzc2lvbl9rZXlzLT5ydGNwX2NpcGhlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAodWludDhfdCAqKWVuY19zdGFydCwgJmVuY19vY3RldF9sZW4pOwogICAgICAg
ICBpZiAoc3RhdHVzKSB7Ci0gICAgICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2NpcGhl
cl9mYWlsOworICAgICAgICAgICAgcmV0dXJuIHN0YXR1czsKICAgICAgICAgfQorICAgIH0gZWxz
ZSB7CiAgICAgICAgIC8qCi0gICAgICAgICAqIEdldCB0aGUgdGFnIGFuZCBhcHBlbmQgdGhhdCB0
byB0aGUgb3V0cHV0CisgICAgICAgICAqIFN0aWxsIG5lZWQgdG8gcnVuIHRoZSBjaXBoZXIgdG8g
Y2hlY2sgdGhlIHRhZwogICAgICAgICAgKi8KLSAgICAgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJf
Z2V0X3RhZyhzZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyLCAodWludDhfdCopYXV0aF90YWcsCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnRhZ19sZW4pOworICAgICAgICB0
bXBfbGVuID0gdGFnX2xlbjsKKyAgICAgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfZGVjcnlwdChz
ZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICh1aW50OF90ICopYXV0aF90YWcsICZ0bXBfbGVuKTsKICAgICAgICAgaWYgKHN0YXR1
cykgewotICAgICAgICAgICAgcmV0dXJuICggc3J0cF9lcnJfc3RhdHVzX2NpcGhlcl9mYWlsKTsK
KyAgICAgICAgICAgIHJldHVybiBzdGF0dXM7CiAgICAgICAgIH0KLSAgICAgICAgZW5jX29jdGV0
X2xlbiArPSB0YWdfbGVuOwotICAgIH0gZWxzZSB7CisgICAgfQorCisgICAgLyogZGVjcmVhc2Ug
dGhlIHBhY2tldCBsZW5ndGggYnkgdGhlIGxlbmd0aCBvZiB0aGUgYXV0aCB0YWcgYW5kIHNlcV9u
dW0qLworICAgICpwa3Rfb2N0ZXRfbGVuIC09ICh0YWdfbGVuICsgc2l6ZW9mKHNydGNwX3RyYWls
ZXJfdCkgKyBta2lfc2l6ZSk7CisKKyAgICAvKgorICAgICAqIHZlcmlmeSB0aGF0IHN0cmVhbSBp
cyBmb3IgcmVjZWl2ZWQgdHJhZmZpYyAtIHRoaXMgY2hlY2sgd2lsbAorICAgICAqIGRldGVjdCBT
U1JDIGNvbGxpc2lvbnMsIHNpbmNlIGEgc3RyZWFtIHRoYXQgYXBwZWFycyBpbiBib3RoCisgICAg
ICogc3J0cF9wcm90ZWN0KCkgYW5kIHNydHBfdW5wcm90ZWN0KCkgd2lsbCBmYWlsIHRoaXMgdGVz
dCBpbiBvbmUgb2YKKyAgICAgKiB0aG9zZSBmdW5jdGlvbnMuCisgICAgICoKKyAgICAgKiB3ZSBk
byB0aGlzIGNoZWNrICphZnRlciogdGhlIGF1dGhlbnRpY2F0aW9uIGNoZWNrLCBzbyB0aGF0IHRo
ZQorICAgICAqIGxhdHRlciBjaGVjayB3aWxsIGNhdGNoIGFueSBhdHRlbXB0cyB0byBmb29sIHVz
IGludG8gdGhpbmtpbmcKKyAgICAgKiB0aGF0IHdlJ3ZlIGdvdCBhIGNvbGxpc2lvbgorICAgICAq
LworICAgIGlmIChzdHJlYW0tPmRpcmVjdGlvbiAhPSBkaXJfc3J0cF9yZWNlaXZlcikgeworICAg
ICAgICBpZiAoc3RyZWFtLT5kaXJlY3Rpb24gPT0gZGlyX3Vua25vd24pIHsKKyAgICAgICAgICAg
IHN0cmVhbS0+ZGlyZWN0aW9uID0gZGlyX3NydHBfcmVjZWl2ZXI7CisgICAgICAgIH0gZWxzZSB7
CisgICAgICAgICAgICBzcnRwX2hhbmRsZV9ldmVudChjdHgsIHN0cmVhbSwgZXZlbnRfc3NyY19j
b2xsaXNpb24pOworICAgICAgICB9CisgICAgfQorCisgICAgLyoKKyAgICAgKiBpZiB0aGUgc3Ry
ZWFtIGlzIGEgJ3Byb3Zpc2lvbmFsJyBvbmUsIGluIHdoaWNoIHRoZSB0ZW1wbGF0ZSBjb250ZXh0
CisgICAgICogaXMgdXNlZCwgdGhlbiB3ZSBuZWVkIHRvIGFsbG9jYXRlIGEgbmV3IHN0cmVhbSBh
dCB0aGlzIHBvaW50LCBzaW5jZQorICAgICAqIHRoZSBhdXRoZW50aWNhdGlvbiBwYXNzZWQKKyAg
ICAgKi8KKyAgICBpZiAoc3RyZWFtID09IGN0eC0+c3RyZWFtX3RlbXBsYXRlKSB7CisgICAgICAg
IHNydHBfc3RyZWFtX2N0eF90ICpuZXdfc3RyZWFtOworCiAgICAgICAgIC8qCi0gICAgICAgICAq
IEV2ZW4gdGhvdWdoIHdlJ3JlIG5vdCBlbmNyeXB0aW5nIHRoZSBwYXlsb2FkLCB3ZSBuZWVkCi0g
ICAgICAgICAqIHRvIHJ1biB0aGUgY2lwaGVyIHRvIGdldCB0aGUgYXV0aCB0YWcuCisgICAgICAg
ICAqIGFsbG9jYXRlIGFuZCBpbml0aWFsaXplIGEgbmV3IHN0cmVhbQorICAgICAgICAgKgorICAg
ICAgICAgKiBub3RlIHRoYXQgd2UgaW5kaWNhdGUgZmFpbHVyZSBpZiB3ZSBjYW4ndCBhbGxvY2F0
ZSB0aGUgbmV3CisgICAgICAgICAqIHN0cmVhbSwgYW5kIHNvbWUgaW1wbGVtZW50YXRpb25zIHdp
bGwgd2FudCB0byBub3QgcmV0dXJuCisgICAgICAgICAqIGZhaWx1cmUgaGVyZQogICAgICAgICAg
Ki8KLSAgICAgICAgdW5zaWduZWQgaW50IG5vbGVuID0gMDsKLSAgICAgICAgc3RhdHVzID0gc3J0
cF9jaXBoZXJfZW5jcnlwdChzZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyLCBOVUxMLCAmbm9sZW4p
OworICAgICAgICBzdGF0dXMgPQorICAgICAgICAgICAgc3J0cF9zdHJlYW1fY2xvbmUoY3R4LT5z
dHJlYW1fdGVtcGxhdGUsIGhkci0+c3NyYywgJm5ld19zdHJlYW0pOwogICAgICAgICBpZiAoc3Rh
dHVzKSB7CisgICAgICAgICAgICByZXR1cm4gc3RhdHVzOworICAgICAgICB9CisKKyAgICAgICAg
LyogYWRkIG5ldyBzdHJlYW0gdG8gdGhlIGhlYWQgb2YgdGhlIHN0cmVhbV9saXN0ICovCisgICAg
ICAgIG5ld19zdHJlYW0tPm5leHQgPSBjdHgtPnN0cmVhbV9saXN0OworICAgICAgICBjdHgtPnN0
cmVhbV9saXN0ID0gbmV3X3N0cmVhbTsKKworICAgICAgICAvKiBzZXQgc3RyZWFtICh0aGUgcG9p
bnRlciB1c2VkIGluIHRoaXMgZnVuY3Rpb24pICovCisgICAgICAgIHN0cmVhbSA9IG5ld19zdHJl
YW07CisgICAgfQorCisgICAgLyogd2UndmUgcGFzc2VkIHRoZSBhdXRoZW50aWNhdGlvbiBjaGVj
aywgc28gYWRkIHNlcV9udW0gdG8gdGhlIHJkYiAqLworICAgIHNydHBfcmRiX2FkZF9pbmRleCgm
c3RyZWFtLT5ydGNwX3JkYiwgc2VxX251bSk7CisKKyAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVz
X29rOworfQorCitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3Byb3RlY3RfcnRjcChzcnRwX3QgY3R4
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdm9pZCAqcnRjcF9oZHIsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgKnBrdF9vY3RldF9sZW4pCit7
CisgICAgcmV0dXJuIHNydHBfcHJvdGVjdF9ydGNwX21raShjdHgsIHJ0Y3BfaGRyLCBwa3Rfb2N0
ZXRfbGVuLCAwLCAwKTsKK30KKworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9wcm90ZWN0X3J0Y3Bf
bWtpKHNydHBfdCBjdHgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
dm9pZCAqcnRjcF9oZHIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
aW50ICpwa3Rfb2N0ZXRfbGVuLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHVuc2lnbmVkIGludCB1c2VfbWtpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHVuc2lnbmVkIGludCBta2lfaW5kZXgpCit7CisgICAgc3J0Y3BfaGRyX3QgKmhk
ciA9IChzcnRjcF9oZHJfdCAqKXJ0Y3BfaGRyOworICAgIHVpbnQzMl90ICplbmNfc3RhcnQ7ICAg
ICAgICAgICAgLyogcG9pbnRlciB0byBzdGFydCBvZiBlbmNyeXB0ZWQgcG9ydGlvbiAgKi8KKyAg
ICB1aW50MzJfdCAqYXV0aF9zdGFydDsgICAgICAgICAgIC8qIHBvaW50ZXIgdG8gc3RhcnQgb2Yg
YXV0aC4gcG9ydGlvbiAgICAgICovCisgICAgdWludDMyX3QgKnRyYWlsZXI7ICAgICAgICAgICAg
ICAvKiBwb2ludGVyIHRvIHN0YXJ0IG9mIHRyYWlsZXIgICAgICAgICAgICAqLworICAgIHVuc2ln
bmVkIGludCBlbmNfb2N0ZXRfbGVuID0gMDsgLyogbnVtYmVyIG9mIG9jdGV0cyBpbiBlbmNyeXB0
ZWQgcG9ydGlvbiAqLworICAgIHVpbnQ4X3QgKmF1dGhfdGFnID0gTlVMTDsgICAgICAgLyogbG9j
YXRpb24gb2YgYXV0aF90YWcgd2l0aGluIHBhY2tldCAgICAgKi8KKyAgICBzcnRwX2Vycl9zdGF0
dXNfdCBzdGF0dXM7CisgICAgaW50IHRhZ19sZW47CisgICAgc3J0cF9zdHJlYW1fY3R4X3QgKnN0
cmVhbTsKKyAgICB1aW50MzJfdCBwcmVmaXhfbGVuOworICAgIHVpbnQzMl90IHNlcV9udW07Cisg
ICAgdW5zaWduZWQgaW50IG1raV9zaXplID0gMDsKKyAgICBzcnRwX3Nlc3Npb25fa2V5c190ICpz
ZXNzaW9uX2tleXMgPSBOVUxMOworCisgICAgLyogd2UgYXNzdW1lIHRoZSBoZHIgaXMgMzItYml0
IGFsaWduZWQgdG8gc3RhcnQgKi8KKworICAgIC8qIGNoZWNrIHRoZSBwYWNrZXQgbGVuZ3RoIC0g
aXQgbXVzdCBhdCBsZWFzdCBjb250YWluIGEgZnVsbCBoZWFkZXIgKi8KKyAgICBpZiAoKnBrdF9v
Y3RldF9sZW4gPCBvY3RldHNfaW5fcnRjcF9oZWFkZXIpCisgICAgICAgIHJldHVybiBzcnRwX2Vy
cl9zdGF0dXNfYmFkX3BhcmFtOworCisgICAgLyoKKyAgICAgKiBsb29rIHVwIHNzcmMgaW4gc3J0
cF9zdHJlYW0gbGlzdCwgYW5kIHByb2Nlc3MgdGhlIHBhY2tldCB3aXRoCisgICAgICogdGhlIGFw
cHJvcHJpYXRlIHN0cmVhbS4gIGlmIHdlIGhhdmVuJ3Qgc2VlbiB0aGlzIHN0cmVhbSBiZWZvcmUs
CisgICAgICogdGhlcmUncyBvbmx5IG9uZSBrZXkgZm9yIHRoaXMgc3J0cF9zZXNzaW9uLCBhbmQg
dGhlIGNpcGhlcgorICAgICAqIHN1cHBvcnRzIGtleS1zaGFyaW5nLCB0aGVuIHdlIGFzc3VtZSB0
aGF0IGEgbmV3IHN0cmVhbSB1c2luZworICAgICAqIHRoYXQga2V5IGhhcyBqdXN0IHN0YXJ0ZWQg
dXAKKyAgICAgKi8KKyAgICBzdHJlYW0gPSBzcnRwX2dldF9zdHJlYW0oY3R4LCBoZHItPnNzcmMp
OworICAgIGlmIChzdHJlYW0gPT0gTlVMTCkgeworICAgICAgICBpZiAoY3R4LT5zdHJlYW1fdGVt
cGxhdGUgIT0gTlVMTCkgeworICAgICAgICAgICAgc3J0cF9zdHJlYW1fY3R4X3QgKm5ld19zdHJl
YW07CisKKyAgICAgICAgICAgIC8qIGFsbG9jYXRlIGFuZCBpbml0aWFsaXplIGEgbmV3IHN0cmVh
bSAqLworICAgICAgICAgICAgc3RhdHVzID0KKyAgICAgICAgICAgICAgICBzcnRwX3N0cmVhbV9j
bG9uZShjdHgtPnN0cmVhbV90ZW1wbGF0ZSwgaGRyLT5zc3JjLCAmbmV3X3N0cmVhbSk7CisgICAg
ICAgICAgICBpZiAoc3RhdHVzKQorICAgICAgICAgICAgICAgIHJldHVybiBzdGF0dXM7CisKKyAg
ICAgICAgICAgIC8qIGFkZCBuZXcgc3RyZWFtIHRvIHRoZSBoZWFkIG9mIHRoZSBzdHJlYW1fbGlz
dCAqLworICAgICAgICAgICAgbmV3X3N0cmVhbS0+bmV4dCA9IGN0eC0+c3RyZWFtX2xpc3Q7Cisg
ICAgICAgICAgICBjdHgtPnN0cmVhbV9saXN0ID0gbmV3X3N0cmVhbTsKKworICAgICAgICAgICAg
Lyogc2V0IHN0cmVhbSAodGhlIHBvaW50ZXIgdXNlZCBpbiB0aGlzIGZ1bmN0aW9uKSAqLworICAg
ICAgICAgICAgc3RyZWFtID0gbmV3X3N0cmVhbTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAg
ICAgIC8qIG5vIHRlbXBsYXRlIHN0cmVhbSwgc28gd2UgcmV0dXJuIGFuIGVycm9yICovCisgICAg
ICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX25vX2N0eDsKKyAgICAgICAgfQorICAgIH0K
KworICAgIC8qCisgICAgICogdmVyaWZ5IHRoYXQgc3RyZWFtIGlzIGZvciBzZW5kaW5nIHRyYWZm
aWMgLSB0aGlzIGNoZWNrIHdpbGwKKyAgICAgKiBkZXRlY3QgU1NSQyBjb2xsaXNpb25zLCBzaW5j
ZSBhIHN0cmVhbSB0aGF0IGFwcGVhcnMgaW4gYm90aAorICAgICAqIHNydHBfcHJvdGVjdCgpIGFu
ZCBzcnRwX3VucHJvdGVjdCgpIHdpbGwgZmFpbCB0aGlzIHRlc3QgaW4gb25lIG9mCisgICAgICog
dGhvc2UgZnVuY3Rpb25zLgorICAgICAqLworICAgIGlmIChzdHJlYW0tPmRpcmVjdGlvbiAhPSBk
aXJfc3J0cF9zZW5kZXIpIHsKKyAgICAgICAgaWYgKHN0cmVhbS0+ZGlyZWN0aW9uID09IGRpcl91
bmtub3duKSB7CisgICAgICAgICAgICBzdHJlYW0tPmRpcmVjdGlvbiA9IGRpcl9zcnRwX3NlbmRl
cjsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIHNydHBfaGFuZGxlX2V2ZW50KGN0eCwg
c3RyZWFtLCBldmVudF9zc3JjX2NvbGxpc2lvbik7CisgICAgICAgIH0KKyAgICB9CisKKyAgICBz
ZXNzaW9uX2tleXMgPQorICAgICAgICBzcnRwX2dldF9zZXNzaW9uX2tleXNfd2l0aF9ta2lfaW5k
ZXgoc3RyZWFtLCB1c2VfbWtpLCBta2lfaW5kZXgpOworCisgICAgaWYgKHNlc3Npb25fa2V5cyA9
PSBOVUxMKQorICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2JhZF9ta2k7CisKKyAgICAv
KgorICAgICAqIENoZWNrIGlmIHRoaXMgaXMgYW4gQUVBRCBzdHJlYW0gKEdDTSBtb2RlKS4gIElm
IHNvLCB0aGVuIGRpc3BhdGNoCisgICAgICogdGhlIHJlcXVlc3QgdG8gb3VyIEFFQUQgaGFuZGxl
ci4KKyAgICAgKi8KKyAgICBpZiAoc2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVyLT5hbGdvcml0aG0g
PT0gU1JUUF9BRVNfR0NNXzEyOCB8fAorICAgICAgICBzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXIt
PmFsZ29yaXRobSA9PSBTUlRQX0FFU19HQ01fMjU2KSB7CisgICAgICAgIHJldHVybiBzcnRwX3By
b3RlY3RfcnRjcF9hZWFkKGN0eCwgc3RyZWFtLCBydGNwX2hkciwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgKHVuc2lnbmVkIGludCAqKXBrdF9vY3RldF9sZW4sCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlc3Npb25fa2V5cywgdXNlX21raSk7
CisgICAgfQorCisgICAgLyogZ2V0IHRhZyBsZW5ndGggZnJvbSBzdHJlYW0gY29udGV4dCAqLwor
ICAgIHRhZ19sZW4gPSBzcnRwX2F1dGhfZ2V0X3RhZ19sZW5ndGgoc2Vzc2lvbl9rZXlzLT5ydGNw
X2F1dGgpOworCisgICAgLyoKKyAgICAgKiBzZXQgZW5jcnlwdGlvbiBzdGFydCBhbmQgZW5jcnlw
dGlvbiBsZW5ndGggLSBpZiB3ZSdyZSBub3QKKyAgICAgKiBwcm92aWRpbmcgY29uZmlkZW50aWFs
aXR5LCBzZXQgZW5jX3N0YXJ0IHRvIE5VTEwKKyAgICAgKi8KKyAgICBlbmNfc3RhcnQgPSAodWlu
dDMyX3QgKiloZHIgKyB1aW50MzJzX2luX3J0Y3BfaGVhZGVyOworICAgIGVuY19vY3RldF9sZW4g
PSAqcGt0X29jdGV0X2xlbiAtIG9jdGV0c19pbl9ydGNwX2hlYWRlcjsKKworICAgIC8qIGFsbCBv
ZiB0aGUgcGFja2V0LCBleGNlcHQgdGhlIGhlYWRlciwgZ2V0cyBlbmNyeXB0ZWQgKi8KKyAgICAv
KgorICAgICAqIE5PVEU6IGhkci0+bGVuZ3RoIGlzIG5vdCB1c2FibGUgLSBpdCByZWZlcnMgdG8g
b25seSB0aGUgZmlyc3QgUlRDUCByZXBvcnQKKyAgICAgKiBpbiB0aGUgY29tcG91bmQgcGFja2V0
IQorICAgICAqLworICAgIC8qCisgICAgICogTk9URTogdHJhaWxlciBpcyAzMi1iaXQgYWxpZ25l
ZCBiZWNhdXNlIFJUQ1AgJ3BhY2tldHMnIGFyZSBhbHdheXMKKyAgICAgKiBtdWx0aXBsZXMgb2Yg
MzItYml0cyAoUkZDIDM1NTAgNi4xKQorICAgICAqLworICAgIHRyYWlsZXIgPSAodWludDMyX3Qg
KikoKGNoYXIgKillbmNfc3RhcnQgKyBlbmNfb2N0ZXRfbGVuKTsKKworICAgIGlmIChzdHJlYW0t
PnJ0Y3Bfc2VydmljZXMgJiBzZWNfc2Vydl9jb25mKSB7CisgICAgICAgICp0cmFpbGVyID0gaHRv
bmwoU1JUQ1BfRV9CSVQpOyAvKiBzZXQgZW5jcnlwdCBiaXQgKi8KKyAgICB9IGVsc2UgeworICAg
ICAgICBlbmNfc3RhcnQgPSBOVUxMOworICAgICAgICBlbmNfb2N0ZXRfbGVuID0gMDsKKyAgICAg
ICAgLyogMCBpcyBuZXR3b3JrLW9yZGVyIGluZGVwZW5kYW50ICovCisgICAgICAgICp0cmFpbGVy
ID0gMHgwMDAwMDAwMDsgLyogc2V0IGVuY3J5cHQgYml0ICovCisgICAgfQorCisgICAgbWtpX3Np
emUgPSBzcnRwX2luamVjdF9ta2koKHVpbnQ4X3QgKiloZHIgKyAqcGt0X29jdGV0X2xlbiArCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVvZihzcnRjcF90cmFpbGVyX3Qp
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlc3Npb25fa2V5cywgdXNlX21raSk7
CisKKyAgICAvKgorICAgICAqIHNldCB0aGUgYXV0aF9zdGFydCBhbmQgYXV0aF90YWcgcG9pbnRl
cnMgdG8gdGhlIHByb3BlciBsb2NhdGlvbnMKKyAgICAgKiAobm90ZSB0aGF0IHNydHBjICphbHdh
eXMqIHByb3ZpZGVzIGF1dGhlbnRpY2F0aW9uLCB1bmxpa2Ugc3J0cCkKKyAgICAgKi8KKyAgICAv
KiBOb3RlOiBUaGlzIHdvdWxkIG5lZWQgdG8gY2hhbmdlIGZvciBvcHRpb25hbCBtaWtleSBkYXRh
ICovCisgICAgYXV0aF9zdGFydCA9ICh1aW50MzJfdCAqKWhkcjsKKyAgICBhdXRoX3RhZyA9Cisg
ICAgICAgICh1aW50OF90ICopaGRyICsgKnBrdF9vY3RldF9sZW4gKyBzaXplb2Yoc3J0Y3BfdHJh
aWxlcl90KSArIG1raV9zaXplOworCisgICAgLyogcGVyZm9ybSBFS1QgcHJvY2Vzc2luZyBpZiBu
ZWVkZWQgKi8KKyAgICBzcnRwX2VrdF93cml0ZV9kYXRhKHN0cmVhbS0+ZWt0LCBhdXRoX3RhZywg
dGFnX2xlbiwgcGt0X29jdGV0X2xlbiwKKyAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfcmRi
eF9nZXRfcGFja2V0X2luZGV4KCZzdHJlYW0tPnJ0cF9yZGJ4KSk7CisKKyAgICAvKgorICAgICAq
IGNoZWNrIHNlcXVlbmNlIG51bWJlciBmb3Igb3ZlcnJ1bnMsIGFuZCBjb3B5IGl0IGludG8gdGhl
IHBhY2tldAorICAgICAqIGlmIGl0cyB2YWx1ZSBpc24ndCB0b28gYmlnCisgICAgICovCisgICAg
c3RhdHVzID0gc3J0cF9yZGJfaW5jcmVtZW50KCZzdHJlYW0tPnJ0Y3BfcmRiKTsKKyAgICBpZiAo
c3RhdHVzKQorICAgICAgICByZXR1cm4gc3RhdHVzOworICAgIHNlcV9udW0gPSBzcnRwX3JkYl9n
ZXRfdmFsdWUoJnN0cmVhbS0+cnRjcF9yZGIpOworICAgICp0cmFpbGVyIHw9IGh0b25sKHNlcV9u
dW0pOworICAgIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAic3J0Y3AgaW5kZXg6ICV4Iiwgc2VxX251
bSk7CisKKyAgICAvKgorICAgICAqIGlmIHdlJ3JlIHVzaW5nIHJpbmRhZWwgY291bnRlciBtb2Rl
LCBzZXQgbm9uY2UgYW5kIHNlcQorICAgICAqLworICAgIGlmIChzZXNzaW9uX2tleXMtPnJ0Y3Bf
Y2lwaGVyLT50eXBlLT5pZCA9PSBTUlRQX0FFU19JQ01fMTI4IHx8CisgICAgICAgIHNlc3Npb25f
a2V5cy0+cnRjcF9jaXBoZXItPnR5cGUtPmlkID09IFNSVFBfQUVTX0lDTV8xOTIgfHwKKyAgICAg
ICAgc2Vzc2lvbl9rZXlzLT5ydGNwX2NpcGhlci0+dHlwZS0+aWQgPT0gU1JUUF9BRVNfSUNNXzI1
NikgeworICAgICAgICB2MTI4X3QgaXY7CisKKyAgICAgICAgaXYudjMyWzBdID0gMDsKKyAgICAg
ICAgaXYudjMyWzFdID0gaGRyLT5zc3JjOyAvKiBzdGlsbCBpbiBuZXR3b3JrIG9yZGVyISAqLwor
ICAgICAgICBpdi52MzJbMl0gPSBodG9ubChzZXFfbnVtID4+IDE2KTsKKyAgICAgICAgaXYudjMy
WzNdID0gaHRvbmwoc2VxX251bSA8PCAxNik7CisgICAgICAgIHN0YXR1cyA9IHNydHBfY2lwaGVy
X3NldF9pdihzZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyLCAodWludDhfdCAqKSZpdiwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfZGlyZWN0aW9uX2VuY3J5cHQpOwor
CisgICAgfSBlbHNlIHsKKyAgICAgICAgdjEyOF90IGl2OworCisgICAgICAgIC8qIG90aGVyd2lz
ZSwganVzdCBzZXQgdGhlIGluZGV4IHRvIHNlcV9udW0gKi8KKyAgICAgICAgaXYudjMyWzBdID0g
MDsKKyAgICAgICAgaXYudjMyWzFdID0gMDsKKyAgICAgICAgaXYudjMyWzJdID0gMDsKKyAgICAg
ICAgaXYudjMyWzNdID0gaHRvbmwoc2VxX251bSk7CisgICAgICAgIHN0YXR1cyA9IHNydHBfY2lw
aGVyX3NldF9pdihzZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyLCAodWludDhfdCAqKSZpdiwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfZGlyZWN0aW9uX2VuY3J5cHQp
OworICAgIH0KKyAgICBpZiAoc3RhdHVzKQorICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVz
X2NpcGhlcl9mYWlsOworCisgICAgLyoKKyAgICAgKiBpZiB3ZSdyZSBhdXRoZW50aWNhdGluZyB1
c2luZyBhIHVuaXZlcnNhbCBoYXNoLCBwdXQgdGhlIGtleXN0cmVhbQorICAgICAqIHByZWZpeCBp
bnRvIHRoZSBhdXRoZW50aWNhdGlvbiB0YWcKKyAgICAgKi8KKworICAgIC8qIGlmIGF1dGhfc3Rh
cnQgaXMgbm9uLW51bGwsIHRoZW4gcHV0IGtleXN0cmVhbSBpbnRvIHRhZyAgKi8KKyAgICBpZiAo
YXV0aF9zdGFydCkgeworICAgICAgICAvKiBwdXQga2V5c3RyZWFtIHByZWZpeCBpbnRvIGF1dGhf
dGFnICovCisgICAgICAgIHByZWZpeF9sZW4gPSBzcnRwX2F1dGhfZ2V0X3ByZWZpeF9sZW5ndGgo
c2Vzc2lvbl9rZXlzLT5ydGNwX2F1dGgpOworICAgICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9v
dXRwdXQoc2Vzc2lvbl9rZXlzLT5ydGNwX2NpcGhlciwgYXV0aF90YWcsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAmcHJlZml4X2xlbik7CisKKyAgICAgICAgZGVidWdfcHJp
bnQobW9kX3NydHAsICJrZXlzdHJlYW0gcHJlZml4OiAlcyIsCisgICAgICAgICAgICAgICAgICAg
IHNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcoYXV0aF90YWcsIHByZWZpeF9sZW4pKTsKKwor
ICAgICAgICBpZiAoc3RhdHVzKQorICAgICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19j
aXBoZXJfZmFpbDsKKyAgICB9CisKKyAgICAvKiBpZiB3ZSdyZSBlbmNyeXB0aW5nLCBleG9yIGtl
eXN0cmVhbSBpbnRvIHRoZSBtZXNzYWdlICovCisgICAgaWYgKGVuY19zdGFydCkgeworICAgICAg
ICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9lbmNyeXB0KHNlc3Npb25fa2V5cy0+cnRjcF9jaXBoZXIs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHVpbnQ4X3QgKillbmNfc3Rh
cnQsICZlbmNfb2N0ZXRfbGVuKTsKKyAgICAgICAgaWYgKHN0YXR1cykKICAgICAgICAgICAgIHJl
dHVybiBzcnRwX2Vycl9zdGF0dXNfY2lwaGVyX2ZhaWw7Ci0gICAgICAgIH0KLSAgICAgICAgLyoK
LSAgICAgICAgICogR2V0IHRoZSB0YWcgYW5kIGFwcGVuZCB0aGF0IHRvIHRoZSBvdXRwdXQKLSAg
ICAgICAgICovCi0gICAgICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX2dldF90YWcoc2Vzc2lvbl9r
ZXlzLT5ydGNwX2NpcGhlciwgKHVpbnQ4X3QqKWF1dGhfdGFnLAotICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICZ0YWdfbGVuKTsKLSAgICAgICAgaWYgKHN0YXR1cykgewotICAg
ICAgICAgICAgcmV0dXJuICggc3J0cF9lcnJfc3RhdHVzX2NpcGhlcl9mYWlsKTsKLSAgICAgICAg
fQotICAgICAgICBlbmNfb2N0ZXRfbGVuICs9IHRhZ19sZW47CiAgICAgfQogCisgICAgLyogaW5p
dGlhbGl6ZSBhdXRoIGZ1bmMgY29udGV4dCAqLworICAgIHNydHBfYXV0aF9zdGFydChzZXNzaW9u
X2tleXMtPnJ0Y3BfYXV0aCk7CisKKyAgICAvKgorICAgICAqIHJ1biBhdXRoIGZ1bmMgb3ZlciBw
YWNrZXQgKGluY2x1ZGluZyB0cmFpbGVyKSwgYW5kIHdyaXRlIHRoZQorICAgICAqIHJlc3VsdCBh
dCBhdXRoX3RhZworICAgICAqLworICAgIHN0YXR1cyA9CisgICAgICAgIHNydHBfYXV0aF9jb21w
dXRlKHNlc3Npb25fa2V5cy0+cnRjcF9hdXRoLCAodWludDhfdCAqKWF1dGhfc3RhcnQsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICgqcGt0X29jdGV0X2xlbikgKyBzaXplb2Yoc3J0Y3BfdHJh
aWxlcl90KSwgYXV0aF90YWcpOworICAgIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAic3J0Y3AgYXV0
aCB0YWc6ICAgICVzIiwKKyAgICAgICAgICAgICAgICBzcnRwX29jdGV0X3N0cmluZ19oZXhfc3Ry
aW5nKGF1dGhfdGFnLCB0YWdfbGVuKSk7CisgICAgaWYgKHN0YXR1cykKKyAgICAgICAgcmV0dXJu
IHNydHBfZXJyX3N0YXR1c19hdXRoX2ZhaWw7CisKICAgICAvKiBpbmNyZWFzZSB0aGUgcGFja2V0
IGxlbmd0aCBieSB0aGUgbGVuZ3RoIG9mIHRoZSBhdXRoIHRhZyBhbmQgc2VxX251bSovCiAgICAg
KnBrdF9vY3RldF9sZW4gKz0gKHRhZ19sZW4gKyBzaXplb2Yoc3J0Y3BfdHJhaWxlcl90KSk7CiAK
QEAgLTM2MzEsNjQgKzQwODMsMTg2IEBAIHNydHBfcHJvdGVjdF9ydGNwX2FlYWQgKHNydHBfdCBj
dHgsIHNydHBfc3RyZWFtX2N0eF90ICpzdHJlYW0sCiAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1
c19vazsKIH0KIAotLyoKLSAqIFRoaXMgZnVuY3Rpb24gaGFuZGxlcyBpbmNvbWluZyBTUlRDUCBw
YWNrZXRzIHdoaWxlIGluIEFFQUQgbW9kZSwKLSAqIHdoaWNoIGN1cnJlbnRseSBzdXBwb3J0cyBB
RVMtR0NNIGVuY3J5cHRpb24uICBOb3RlLCB0aGUgYXV0aCB0YWcgaXMgCi0gKiBhdCB0aGUgZW5k
IG9mIHRoZSBwYWNrZXQgc3RyZWFtIGFuZCBpcyBhdXRvbWF0aWNhbGx5IGNoZWNrZWQgYnkgR0NN
Ci0gKiB3aGVuIGRlY3J5cHRpbmcgdGhlIHBheWxvYWQuCi0gKi8KLXN0YXRpYyBzcnRwX2Vycl9z
dGF0dXNfdAotc3J0cF91bnByb3RlY3RfcnRjcF9hZWFkIChzcnRwX3QgY3R4LCBzcnRwX3N0cmVh
bV9jdHhfdCAqc3RyZWFtLCAKLSAgICAgICAgICAgICAgICAgICAgICAgICAgdm9pZCAqc3J0Y3Bf
aGRyLCB1bnNpZ25lZCBpbnQgKnBrdF9vY3RldF9sZW4sCi0gICAgICAgICAgICAgICAgICAgICAg
ICAgIHNydHBfc2Vzc2lvbl9rZXlzX3QgKnNlc3Npb25fa2V5cywgdW5zaWduZWQgaW50IHVzZV9t
a2kpCitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3VucHJvdGVjdF9ydGNwKHNydHBfdCBjdHgsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZvaWQgKnNydGNwX2hkciwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50ICpwa3Rfb2N0ZXRfbGVuKQor
eworICAgIHJldHVybiBzcnRwX3VucHJvdGVjdF9ydGNwX21raShjdHgsIHNydGNwX2hkciwgcGt0
X29jdGV0X2xlbiwgMCk7Cit9CisKK3NydHBfZXJyX3N0YXR1c190IHNydHBfdW5wcm90ZWN0X3J0
Y3BfbWtpKHNydHBfdCBjdHgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB2b2lkICpzcnRjcF9oZHIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBpbnQgKnBrdF9vY3RldF9sZW4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgdXNlX21raSkKIHsKLSAgICBzcnRjcF9oZHJfdCAq
aGRyID0gKHNydGNwX2hkcl90KilzcnRjcF9oZHI7Ci0gICAgdWludDMyX3QgKmVuY19zdGFydDsg
ICAgICAgIC8qIHBvaW50ZXIgdG8gc3RhcnQgb2YgZW5jcnlwdGVkIHBvcnRpb24gICovCi0gICAg
dWludDMyX3QgKnRyYWlsZXI7ICAgICAgICAgIC8qIHBvaW50ZXIgdG8gc3RhcnQgb2YgdHJhaWxl
ciAgICAgICAgICAgICovCisgICAgc3J0Y3BfaGRyX3QgKmhkciA9IChzcnRjcF9oZHJfdCAqKXNy
dGNwX2hkcjsKKyAgICB1aW50MzJfdCAqZW5jX3N0YXJ0OyAgICAgICAgICAgIC8qIHBvaW50ZXIg
dG8gc3RhcnQgb2YgZW5jcnlwdGVkIHBvcnRpb24gICovCisgICAgdWludDMyX3QgKmF1dGhfc3Rh
cnQ7ICAgICAgICAgICAvKiBwb2ludGVyIHRvIHN0YXJ0IG9mIGF1dGguIHBvcnRpb24gICAgICAq
LworICAgIHVpbnQzMl90ICp0cmFpbGVyOyAgICAgICAgICAgICAgLyogcG9pbnRlciB0byBzdGFy
dCBvZiB0cmFpbGVyICAgICAgICAgICAgKi8KICAgICB1bnNpZ25lZCBpbnQgZW5jX29jdGV0X2xl
biA9IDA7IC8qIG51bWJlciBvZiBvY3RldHMgaW4gZW5jcnlwdGVkIHBvcnRpb24gKi8KLSAgICB1
aW50OF90ICphdXRoX3RhZyA9IE5VTEw7ICAgLyogbG9jYXRpb24gb2YgYXV0aF90YWcgd2l0aGlu
IHBhY2tldCAgICAgKi8KKyAgICB1aW50OF90ICphdXRoX3RhZyA9IE5VTEw7ICAgICAgIC8qIGxv
Y2F0aW9uIG9mIGF1dGhfdGFnIHdpdGhpbiBwYWNrZXQgICAgICovCisgICAgdWludDhfdCB0bXBf
dGFnW1NSVFBfTUFYX1RBR19MRU5dOworICAgIHVpbnQ4X3QgdGFnX2NvcHlbU1JUUF9NQVhfVEFH
X0xFTl07CiAgICAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVzOworICAgIHVuc2lnbmVkIGludCBh
dXRoX2xlbjsKICAgICBpbnQgdGFnX2xlbjsKLSAgICB1bnNpZ25lZCBpbnQgdG1wX2xlbjsKKyAg
ICBzcnRwX3N0cmVhbV9jdHhfdCAqc3RyZWFtOworICAgIHVpbnQzMl90IHByZWZpeF9sZW47CiAg
ICAgdWludDMyX3Qgc2VxX251bTsKLSAgICB2MTI4X3QgaXY7Ci0gICAgdWludDMyX3QgdHNlcTsK
KyAgICBpbnQgZV9iaXRfaW5fcGFja2V0OyAvKiB3aGV0aGVyIHRoZSBFLWJpdCB3YXMgZm91bmQg
aW4gdGhlIHBhY2tldCAqLworICAgIGludCBzZWNfc2Vydl9jb25maWRlbnRpYWxpdHk7IC8qIHdo
ZXRoZXIgY29uZmlkZW50aWFsaXR5IHdhcyByZXF1ZXN0ZWQgKi8KICAgICB1bnNpZ25lZCBpbnQg
bWtpX3NpemUgPSAwOworICAgIHNydHBfc2Vzc2lvbl9rZXlzX3QgKnNlc3Npb25fa2V5cyA9IE5V
TEw7CisKKyAgICAvKiB3ZSBhc3N1bWUgdGhlIGhkciBpcyAzMi1iaXQgYWxpZ25lZCB0byBzdGFy
dCAqLworCisgICAgaWYgKCpwa3Rfb2N0ZXRfbGVuIDwgMCkKKyAgICAgICAgcmV0dXJuIHNydHBf
ZXJyX3N0YXR1c19iYWRfcGFyYW07CisKKyAgICAvKgorICAgICAqIGNoZWNrIHRoYXQgdGhlIGxl
bmd0aCB2YWx1ZSBpcyBzYW5lOyB3ZSdsbCBjaGVjayBhZ2FpbiBvbmNlIHdlCisgICAgICoga25v
dyB0aGUgdGFnIGxlbmd0aCwgYnV0IHdlIGF0IGxlYXN0IHdhbnQgdG8ga25vdyB0aGF0IGl0IGlz
CisgICAgICogYSBwb3NpdGl2ZSB2YWx1ZQorICAgICAqLworICAgIGlmICgodW5zaWduZWQgaW50
KSgqcGt0X29jdGV0X2xlbikgPAorICAgICAgICBvY3RldHNfaW5fcnRjcF9oZWFkZXIgKyBzaXpl
b2Yoc3J0Y3BfdHJhaWxlcl90KSkKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRf
cGFyYW07CisKKyAgICAvKgorICAgICAqIGxvb2sgdXAgc3NyYyBpbiBzcnRwX3N0cmVhbSBsaXN0
LCBhbmQgcHJvY2VzcyB0aGUgcGFja2V0IHdpdGgKKyAgICAgKiB0aGUgYXBwcm9wcmlhdGUgc3Ry
ZWFtLiAgaWYgd2UgaGF2ZW4ndCBzZWVuIHRoaXMgc3RyZWFtIGJlZm9yZSwKKyAgICAgKiB0aGVy
ZSdzIG9ubHkgb25lIGtleSBmb3IgdGhpcyBzcnRwX3Nlc3Npb24sIGFuZCB0aGUgY2lwaGVyCisg
ICAgICogc3VwcG9ydHMga2V5LXNoYXJpbmcsIHRoZW4gd2UgYXNzdW1lIHRoYXQgYSBuZXcgc3Ry
ZWFtIHVzaW5nCisgICAgICogdGhhdCBrZXkgaGFzIGp1c3Qgc3RhcnRlZCB1cAorICAgICAqLwor
ICAgIHN0cmVhbSA9IHNydHBfZ2V0X3N0cmVhbShjdHgsIGhkci0+c3NyYyk7CisgICAgaWYgKHN0
cmVhbSA9PSBOVUxMKSB7CisgICAgICAgIGlmIChjdHgtPnN0cmVhbV90ZW1wbGF0ZSAhPSBOVUxM
KSB7CisgICAgICAgICAgICBzdHJlYW0gPSBjdHgtPnN0cmVhbV90ZW1wbGF0ZTsKKworICAgICAg
ICAgICAgLyoKKyAgICAgICAgICAgICAqIGNoZWNrIHRvIHNlZSBpZiBzdHJlYW1fdGVtcGxhdGUg
aGFzIGFuIEVLVCBkYXRhIHN0cnVjdHVyZSwgaW4KKyAgICAgICAgICAgICAqIHdoaWNoIGNhc2Ug
d2UgaW5pdGlhbGl6ZSB0aGUgdGVtcGxhdGUgdXNpbmcgdGhlIEVLVCBwb2xpY3kKKyAgICAgICAg
ICAgICAqIHJlZmVyZW5jZWQgYnkgdGhhdCBkYXRhICh3aGljaCBjb25zaXN0cyBvZiBkZWNyeXB0
aW5nIHRoZQorICAgICAgICAgICAgICogbWFzdGVyIGtleSBmcm9tIHRoZSBFS1QgZmllbGQpCisg
ICAgICAgICAgICAgKgorICAgICAgICAgICAgICogdGhpcyBmdW5jdGlvbiBpbml0aWFsaXplcyBh
ICpwcm92aXNpb25hbCogc3RyZWFtLCBhbmQgdGhpcworICAgICAgICAgICAgICogc3RyZWFtIHNo
b3VsZCBub3QgYmUgYWNjZXB0ZWQgdW50aWwgYW5kIHVubGVzcyB0aGUgcGFja2V0CisgICAgICAg
ICAgICAgKiBwYXNzZXMgaXRzIGF1dGhlbnRpY2F0aW9uIGNoZWNrCisgICAgICAgICAgICAgKi8K
KyAgICAgICAgICAgIGlmIChzdHJlYW0tPmVrdCAhPSBOVUxMKSB7CisgICAgICAgICAgICAgICAg
c3RhdHVzID0gc3J0cF9zdHJlYW1faW5pdF9mcm9tX2VrdChzdHJlYW0sIHNydGNwX2hkciwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpwa3Rfb2N0
ZXRfbGVuKTsKKyAgICAgICAgICAgICAgICBpZiAoc3RhdHVzKQorICAgICAgICAgICAgICAgICAg
ICByZXR1cm4gc3RhdHVzOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICBkZWJ1Z19wcmlu
dChtb2Rfc3J0cCwKKyAgICAgICAgICAgICAgICAgICAgICAgICJzcnRjcCB1c2luZyBwcm92aXNp
b25hbCBzdHJlYW0gKFNTUkM6IDB4JTA4eCkiLAorICAgICAgICAgICAgICAgICAgICAgICAgbnRv
aGwoaGRyLT5zc3JjKSk7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAvKiBubyB0ZW1w
bGF0ZSBzdHJlYW0sIHNvIHdlIHJldHVybiBhbiBlcnJvciAqLworICAgICAgICAgICAgcmV0dXJu
IHNydHBfZXJyX3N0YXR1c19ub19jdHg7CisgICAgICAgIH0KKyAgICB9CisKKyAgICAvKgorICAg
ICAqIERldGVybWluZSBpZiBNS0kgaXMgYmVpbmcgdXNlZCBhbmQgd2hhdCBzZXNzaW9uIGtleXMg
c2hvdWxkIGJlIHVzZWQKKyAgICAgKi8KKyAgICBpZiAodXNlX21raSkgeworICAgICAgICBzZXNz
aW9uX2tleXMgPSBzcnRwX2dldF9zZXNzaW9uX2tleXMoCisgICAgICAgICAgICBzdHJlYW0sICh1
aW50OF90ICopaGRyLCAoY29uc3QgdW5zaWduZWQgaW50ICopcGt0X29jdGV0X2xlbiwKKyAgICAg
ICAgICAgICZta2lfc2l6ZSk7CisKKyAgICAgICAgaWYgKHNlc3Npb25fa2V5cyA9PSBOVUxMKQor
ICAgICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfbWtpOworICAgIH0gZWxzZSB7
CisgICAgICAgIHNlc3Npb25fa2V5cyA9ICZzdHJlYW0tPnNlc3Npb25fa2V5c1swXTsKKyAgICB9
CiAKICAgICAvKiBnZXQgdGFnIGxlbmd0aCBmcm9tIHN0cmVhbSBjb250ZXh0ICovCiAgICAgdGFn
X2xlbiA9IHNydHBfYXV0aF9nZXRfdGFnX2xlbmd0aChzZXNzaW9uX2tleXMtPnJ0Y3BfYXV0aCk7
CiAKLSAgICBpZiAodXNlX21raSkgewotICAgICAgbWtpX3NpemUgPSBzZXNzaW9uX2tleXMtPm1r
aV9zaXplOworICAgIC8qIGNoZWNrIHRoZSBwYWNrZXQgbGVuZ3RoIC0gaXQgbXVzdCBjb250YWlu
IGF0IGxlYXN0IGEgZnVsbCBSVENQCisgICAgICAgaGVhZGVyLCBhbiBhdXRoIHRhZyAoaWYgYXBw
bGljYWJsZSksIGFuZCB0aGUgU1JUQ1AgZW5jcnlwdGVkIGZsYWcKKyAgICAgICBhbmQgMzEtYml0
IGluZGV4IHZhbHVlICovCisgICAgaWYgKCpwa3Rfb2N0ZXRfbGVuIDwgKGludCkob2N0ZXRzX2lu
X3J0Y3BfaGVhZGVyICsgdGFnX2xlbiArIG1raV9zaXplICsKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBzaXplb2Yoc3J0Y3BfdHJhaWxlcl90KSkpIHsKKyAgICAgICAgcmV0dXJuIHNy
dHBfZXJyX3N0YXR1c19iYWRfcGFyYW07CisgICAgfQorCisgICAgLyoKKyAgICAgKiBDaGVjayBp
ZiB0aGlzIGlzIGFuIEFFQUQgc3RyZWFtIChHQ00gbW9kZSkuICBJZiBzbywgdGhlbiBkaXNwYXRj
aAorICAgICAqIHRoZSByZXF1ZXN0IHRvIG91ciBBRUFEIGhhbmRsZXIuCisgICAgICovCisgICAg
aWYgKHNlc3Npb25fa2V5cy0+cnRwX2NpcGhlci0+YWxnb3JpdGhtID09IFNSVFBfQUVTX0dDTV8x
MjggfHwKKyAgICAgICAgc2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVyLT5hbGdvcml0aG0gPT0gU1JU
UF9BRVNfR0NNXzI1NikgeworICAgICAgICByZXR1cm4gc3J0cF91bnByb3RlY3RfcnRjcF9hZWFk
KGN0eCwgc3RyZWFtLCBzcnRjcF9oZHIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKHVuc2lnbmVkIGludCAqKXBrdF9vY3RldF9sZW4sCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgc2Vzc2lvbl9rZXlzLCBta2lfc2l6ZSk7CiAgICAgfQog
CisgICAgc2VjX3NlcnZfY29uZmlkZW50aWFsaXR5ID0gc3RyZWFtLT5ydGNwX3NlcnZpY2VzID09
IHNlY19zZXJ2X2NvbmYgfHwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJlYW0t
PnJ0Y3Bfc2VydmljZXMgPT0gc2VjX3NlcnZfY29uZl9hbmRfYXV0aDsKKwogICAgIC8qCiAgICAg
ICogc2V0IGVuY3J5cHRpb24gc3RhcnQsIGVuY3J5cHRpb24gbGVuZ3RoLCBhbmQgdHJhaWxlcgog
ICAgICAqLwotICAgIC8qIGluZGV4ICYgRSAoZW5jcnlwdGlvbikgYml0IGZvbGxvdyBub3JtYWwg
ZGF0YS4gIGhkci0+bGVuCi0gICAgICAgICAgIGlzIHRoZSBudW1iZXIgb2Ygd29yZHMgKDMyLWJp
dCkgaW4gdGhlIG5vcm1hbCBwYWNrZXQgbWludXMgMSAqLwotICAgIC8qIFRoaXMgc2hvdWxkIHBv
aW50IHRyYWlsZXIgdG8gdGhlIHdvcmQgcGFzdCB0aGUgZW5kIG9mIHRoZQotICAgICAgICAgICBu
b3JtYWwgZGF0YS4gKi8KLSAgICAvKiBUaGlzIHdvdWxkIG5lZWQgdG8gYmUgbW9kaWZpZWQgZm9y
IG9wdGlvbmFsIG1pa2V5IGRhdGEgKi8KKyAgICBlbmNfb2N0ZXRfbGVuID0gKnBrdF9vY3RldF9s
ZW4gLSAob2N0ZXRzX2luX3J0Y3BfaGVhZGVyICsgdGFnX2xlbiArCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIG1raV9zaXplICsgc2l6ZW9mKHNydGNwX3RyYWlsZXJfdCkp
OwogICAgIC8qCi0gICAgICogTk9URTogdHJhaWxlciBpcyAzMi1iaXQgYWxpZ25lZCBiZWNhdXNl
IFJUQ1AgJ3BhY2tldHMnIGFyZSBhbHdheXMKLSAgICAgKgkgbXVsdGlwbGVzIG9mIDMyLWJpdHMg
KFJGQyAzNTUwIDYuMSkKKyAgICAgKmluZGV4ICYgRSAoZW5jcnlwdGlvbikgYml0IGZvbGxvdyBu
b3JtYWwgZGF0YS4gaGRyLT5sZW4gaXMgdGhlIG51bWJlciBvZgorICAgICAqIHdvcmRzICgzMi1i
aXQpIGluIHRoZSBub3JtYWwgcGFja2V0IG1pbnVzIDEKICAgICAgKi8KLSAgICB0cmFpbGVyID0g
KHVpbnQzMl90KikoKGNoYXIqKWhkciArICpwa3Rfb2N0ZXRfbGVuIC0gc2l6ZW9mKHNydGNwX3Ry
YWlsZXJfdCkgLSBta2lfc2l6ZSk7CisgICAgLyogVGhpcyBzaG91bGQgcG9pbnQgdHJhaWxlciB0
byB0aGUgd29yZCBwYXN0IHRoZSBlbmQgb2YgdGhlIG5vcm1hbCBkYXRhLiAqLworICAgIC8qIFRo
aXMgd291bGQgbmVlZCB0byBiZSBtb2RpZmllZCBmb3Igb3B0aW9uYWwgbWlrZXkgZGF0YSAqLwog
ICAgIC8qCi0gICAgICogV2UgcGFzcyB0aGUgdGFnIGRvd24gdG8gdGhlIGNpcGhlciB3aGVuIGRv
aW5nIEdDTSBtb2RlIAorICAgICAqIE5PVEU6IHRyYWlsZXIgaXMgMzItYml0IGFsaWduZWQgYmVj
YXVzZSBSVENQICdwYWNrZXRzJyBhcmUgYWx3YXlzCisgICAgICogICBtdWx0aXBsZXMgb2YgMzIt
Yml0cyAoUkZDIDM1NTAgNi4xKQogICAgICAqLwotICAgIGVuY19vY3RldF9sZW4gPSAqcGt0X29j
dGV0X2xlbiAtIChvY3RldHNfaW5fcnRjcF9oZWFkZXIgKyAKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgc2l6ZW9mKHNydGNwX3RyYWlsZXJfdCkgKyBta2lfc2l6ZSk7Ci0g
ICAgYXV0aF90YWcgPSAodWludDhfdCopaGRyICsgKnBrdF9vY3RldF9sZW4gLSB0YWdfbGVuIC0g
bWtpX3NpemUgLSBzaXplb2Yoc3J0Y3BfdHJhaWxlcl90KTsKLQotICAgIGlmICgqKCh1bnNpZ25l
ZCBjaGFyKil0cmFpbGVyKSAmIFNSVENQX0VfQllURV9CSVQpIHsKLSAgICAgICAgZW5jX3N0YXJ0
ID0gKHVpbnQzMl90KiloZHIgKyB1aW50MzJzX2luX3J0Y3BfaGVhZGVyOworICAgIHRyYWlsZXIg
PSAodWludDMyX3QgKikoKGNoYXIgKiloZHIgKyAqcGt0X29jdGV0X2xlbiAtCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAodGFnX2xlbiArIG1raV9zaXplICsgc2l6ZW9mKHNydGNwX3RyYWls
ZXJfdCkpKTsKKyAgICBlX2JpdF9pbl9wYWNrZXQgPQorICAgICAgICAoKigodW5zaWduZWQgY2hh
ciAqKXRyYWlsZXIpICYgU1JUQ1BfRV9CWVRFX0JJVCkgPT0gU1JUQ1BfRV9CWVRFX0JJVDsKKyAg
ICBpZiAoZV9iaXRfaW5fcGFja2V0ICE9IHNlY19zZXJ2X2NvbmZpZGVudGlhbGl0eSkgeworICAg
ICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2NhbnRfY2hlY2s7CisgICAgfQorICAgIGlmIChz
ZWNfc2Vydl9jb25maWRlbnRpYWxpdHkpIHsKKyAgICAgICAgZW5jX3N0YXJ0ID0gKHVpbnQzMl90
ICopaGRyICsgdWludDMyc19pbl9ydGNwX2hlYWRlcjsKICAgICB9IGVsc2UgewogICAgICAgICBl
bmNfb2N0ZXRfbGVuID0gMDsKICAgICAgICAgZW5jX3N0YXJ0ID0gTlVMTDsgLyogdGhpcyBpbmRp
Y2F0ZXMgdGhhdCB0aGVyZSdzIG5vIGVuY3J5cHRpb24gKi8KICAgICB9CiAKKyAgICAvKgorICAg
ICAqIHNldCB0aGUgYXV0aF9zdGFydCBhbmQgYXV0aF90YWcgcG9pbnRlcnMgdG8gdGhlIHByb3Bl
ciBsb2NhdGlvbnMKKyAgICAgKiAobm90ZSB0aGF0IHNydGNwICphbHdheXMqIHVzZXMgYXV0aGVu
dGljYXRpb24sIHVubGlrZSBzcnRwKQorICAgICAqLworICAgIGF1dGhfc3RhcnQgPSAodWludDMy
X3QgKiloZHI7CisKKyAgICAvKgorICAgICAqIFRoZSBsb2NhdGlvbiBvZiB0aGUgYXV0aCB0YWcg
aW4gdGhlIHBhY2tldCBuZWVkcyB0byBrbm93IE1LSQorICAgICAqIGNvdWxkIGJlIHByZXNlbnQu
ICBUaGUgZGF0YSBuZWVkZWQgdG8gY2FsY3VsYXRlIHRoZSBBdXRoIHRhZworICAgICAqIG11c3Qg
bm90IGluY2x1ZGUgdGhlIE1LSQorICAgICAqLworICAgIGF1dGhfbGVuID0gKnBrdF9vY3RldF9s
ZW4gLSB0YWdfbGVuIC0gbWtpX3NpemU7CisgICAgYXV0aF90YWcgPSAodWludDhfdCAqKWhkciAr
IGF1dGhfbGVuICsgbWtpX3NpemU7CisKKyAgICAvKgorICAgICAqIGlmIEVLVCBpcyBpbiB1c2Us
IHRoZW4gd2UgbWFrZSBhIGNvcHkgb2YgdGhlIHRhZyBmcm9tIHRoZSBwYWNrZXQsCisgICAgICog
YW5kIHRoZW4gemVyb2l6ZSB0aGUgbG9jYXRpb24gb2YgdGhlIGJhc2UgdGFnCisgICAgICoKKyAg
ICAgKiB3ZSBmaXJzdCByZS1wb3NpdGlvbiB0aGUgYXV0aF90YWcgcG9pbnRlciBzbyB0aGF0IGl0
IHBvaW50cyB0bworICAgICAqIHRoZSBiYXNlIHRhZworICAgICAqLworICAgIGlmIChzdHJlYW0t
PmVrdCkgeworICAgICAgICBhdXRoX3RhZyAtPSBzcnRwX2VrdF9vY3RldHNfYWZ0ZXJfYmFzZV90
YWcoc3RyZWFtLT5la3QpOworICAgICAgICBtZW1jcHkodGFnX2NvcHksIGF1dGhfdGFnLCB0YWdf
bGVuKTsKKyAgICAgICAgb2N0ZXRfc3RyaW5nX3NldF90b196ZXJvKGF1dGhfdGFnLCB0YWdfbGVu
KTsKKyAgICAgICAgYXV0aF90YWcgPSB0YWdfY29weTsKKyAgICAgICAgYXV0aF9sZW4gKz0gdGFn
X2xlbjsKKyAgICB9CisKICAgICAvKgogICAgICAqIGNoZWNrIHRoZSBzZXF1ZW5jZSBudW1iZXIg
Zm9yIHJlcGxheXMKICAgICAgKi8KQEAgLTM2OTYsNzkgKzQyNzAsODggQEAgc3J0cF91bnByb3Rl
Y3RfcnRjcF9hZWFkIChzcnRwX3QgY3R4LCBzcnRwX3N0cmVhbV9jdHhfdCAqc3RyZWFtLAogICAg
IHNlcV9udW0gPSBudG9obCgqdHJhaWxlcikgJiBTUlRDUF9JTkRFWF9NQVNLOwogICAgIGRlYnVn
X3ByaW50KG1vZF9zcnRwLCAic3J0Y3AgaW5kZXg6ICV4Iiwgc2VxX251bSk7CiAgICAgc3RhdHVz
ID0gc3J0cF9yZGJfY2hlY2soJnN0cmVhbS0+cnRjcF9yZGIsIHNlcV9udW0pOwotICAgIGlmIChz
dGF0dXMpIHsKKyAgICBpZiAoc3RhdHVzKQogICAgICAgICByZXR1cm4gc3RhdHVzOwotICAgIH0K
IAogICAgIC8qCi0gICAgICogQ2FsY3VsYXRlIGFuZCBzZXQgdGhlIElWCisgICAgICogaWYgd2Un
cmUgdXNpbmcgYWVzIGNvdW50ZXIgbW9kZSwgc2V0IG5vbmNlIGFuZCBzZXEKICAgICAgKi8KLSAg
ICBzdGF0dXMgPSBzcnRwX2NhbGNfYWVhZF9pdl9zcnRjcChzZXNzaW9uX2tleXMsICZpdiwgc2Vx
X251bSwgaGRyKTsKLSAgICBpZiAoc3RhdHVzKSB7Ci0gICAgICAgIHJldHVybiBzcnRwX2Vycl9z
dGF0dXNfY2lwaGVyX2ZhaWw7Ci0gICAgfQotICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3NldF9p
dihzZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAodWludDhfdCopJml2LCBzcnRwX2RpcmVjdGlvbl9kZWNyeXB0KTsKLSAgICBpZiAoc3Rh
dHVzKSB7Ci0gICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfY2lwaGVyX2ZhaWw7Ci0gICAg
fQorICAgIGlmIChzZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyLT50eXBlLT5pZCA9PSBTUlRQX0FF
U19JQ01fMTI4IHx8CisgICAgICAgIHNlc3Npb25fa2V5cy0+cnRjcF9jaXBoZXItPnR5cGUtPmlk
ID09IFNSVFBfQUVTX0lDTV8xOTIgfHwKKyAgICAgICAgc2Vzc2lvbl9rZXlzLT5ydGNwX2NpcGhl
ci0+dHlwZS0+aWQgPT0gU1JUUF9BRVNfSUNNXzI1NikgeworICAgICAgICB2MTI4X3QgaXY7CisK
KyAgICAgICAgaXYudjMyWzBdID0gMDsKKyAgICAgICAgaXYudjMyWzFdID0gaGRyLT5zc3JjOyAv
KiBzdGlsbCBpbiBuZXR3b3JrIG9yZGVyISAqLworICAgICAgICBpdi52MzJbMl0gPSBodG9ubChz
ZXFfbnVtID4+IDE2KTsKKyAgICAgICAgaXYudjMyWzNdID0gaHRvbmwoc2VxX251bSA8PCAxNik7
CisgICAgICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3NldF9pdihzZXNzaW9uX2tleXMtPnJ0Y3Bf
Y2lwaGVyLCAodWludDhfdCAqKSZpdiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHNydHBfZGlyZWN0aW9uX2RlY3J5cHQpOwogCi0gICAgLyoKLSAgICAgKiBTZXQgdGhlIEFB
RCBmb3IgR0NNIG1vZGUKLSAgICAgKi8KLSAgICBpZiAoZW5jX3N0YXJ0KSB7Ci0gICAgICAgIC8q
Ci0gICAgICAgICAqIElmIHBheWxvYWQgZW5jcnlwdGlvbiBpcyBlbmFibGVkLCB0aGVuIHRoZSBB
QUQgY29uc2lzdCBvZgotICAgICAgICAgKiB0aGUgUlRDUCBoZWFkZXIgYW5kIHRoZSBzZXEjIGF0
IHRoZSBlbmQgb2YgdGhlIHBhY2tldAotICAgICAgICAgKi8KLSAgICAgICAgc3RhdHVzID0gc3J0
cF9jaXBoZXJfc2V0X2FhZChzZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyLAotICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAodWludDhfdCopaGRyLCBvY3RldHNfaW5fcnRjcF9oZWFk
ZXIpOwotICAgICAgICBpZiAoc3RhdHVzKSB7Ci0gICAgICAgICAgICByZXR1cm4gKCBzcnRwX2Vy
cl9zdGF0dXNfY2lwaGVyX2ZhaWwpOwotICAgICAgICB9CiAgICAgfSBlbHNlIHsKLSAgICAgICAg
LyoKLSAgICAgICAgICogU2luY2UgcGF5bG9hZCBlbmNyeXB0aW9uIGlzIG5vdCBlbmFibGVkLCB3
ZSBtdXN0IGF1dGhlbnRpY2F0ZQotICAgICAgICAgKiB0aGUgZW50aXJlIHBhY2tldCBhcyBkZXNj
cmliZWQgaW4gUkZDIDc3MTQgKFNlY3Rpb24gOS4zLiBEYXRhCi0gICAgICAgICAqIFR5cGVzIGlu
IFVuZW5jcnlwdGVkIFNSVENQIENvbXBvdW5kIFBhY2tldHMpCi0gICAgICAgICAqLwotICAgICAg
ICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9zZXRfYWFkKAotICAgICAgICAgIHNlc3Npb25fa2V5cy0+
cnRjcF9jaXBoZXIsICh1aW50OF90KiloZHIsCi0gICAgICAgICAgKCpwa3Rfb2N0ZXRfbGVuIC0g
dGFnX2xlbiAtIHNpemVvZihzcnRjcF90cmFpbGVyX3QpIC0gbWtpX3NpemUpKTsKLSAgICAgICAg
aWYgKHN0YXR1cykgewotICAgICAgICAgICAgcmV0dXJuICggc3J0cF9lcnJfc3RhdHVzX2NpcGhl
cl9mYWlsKTsKLSAgICAgICAgfQorICAgICAgICB2MTI4X3QgaXY7CisKKyAgICAgICAgLyogb3Ro
ZXJ3aXNlLCBqdXN0IHNldCB0aGUgaW5kZXggdG8gc2VxX251bSAqLworICAgICAgICBpdi52MzJb
MF0gPSAwOworICAgICAgICBpdi52MzJbMV0gPSAwOworICAgICAgICBpdi52MzJbMl0gPSAwOwor
ICAgICAgICBpdi52MzJbM10gPSBodG9ubChzZXFfbnVtKTsKKyAgICAgICAgc3RhdHVzID0gc3J0
cF9jaXBoZXJfc2V0X2l2KHNlc3Npb25fa2V5cy0+cnRjcF9jaXBoZXIsICh1aW50OF90ICopJml2
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF9kaXJlY3Rpb25fZGVj
cnlwdCk7CiAgICAgfQorICAgIGlmIChzdGF0dXMpCisgICAgICAgIHJldHVybiBzcnRwX2Vycl9z
dGF0dXNfY2lwaGVyX2ZhaWw7CisKKyAgICAvKiBpbml0aWFsaXplIGF1dGggZnVuYyBjb250ZXh0
ICovCisgICAgc3J0cF9hdXRoX3N0YXJ0KHNlc3Npb25fa2V5cy0+cnRjcF9hdXRoKTsKKworICAg
IC8qIHJ1biBhdXRoIGZ1bmMgb3ZlciBwYWNrZXQsIHB1dCByZXN1bHQgaW50byB0bXBfdGFnICov
CisgICAgc3RhdHVzID0gc3J0cF9hdXRoX2NvbXB1dGUoc2Vzc2lvbl9rZXlzLT5ydGNwX2F1dGgs
ICh1aW50OF90ICopYXV0aF9zdGFydCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBh
dXRoX2xlbiwgdG1wX3RhZyk7CisgICAgZGVidWdfcHJpbnQobW9kX3NydHAsICJzcnRjcCBjb21w
dXRlZCB0YWc6ICAgICAgICVzIiwKKyAgICAgICAgICAgICAgICBzcnRwX29jdGV0X3N0cmluZ19o
ZXhfc3RyaW5nKHRtcF90YWcsIHRhZ19sZW4pKTsKKyAgICBpZiAoc3RhdHVzKQorICAgICAgICBy
ZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2F1dGhfZmFpbDsKKworICAgIC8qIGNvbXBhcmUgdGhlIHRh
ZyBqdXN0IGNvbXB1dGVkIHdpdGggdGhlIG9uZSBpbiB0aGUgcGFja2V0ICovCisgICAgZGVidWdf
cHJpbnQobW9kX3NydHAsICJzcnRjcCB0YWcgZnJvbSBwYWNrZXQ6ICAgICVzIiwKKyAgICAgICAg
ICAgICAgICBzcnRwX29jdGV0X3N0cmluZ19oZXhfc3RyaW5nKGF1dGhfdGFnLCB0YWdfbGVuKSk7
CisgICAgaWYgKG9jdGV0X3N0cmluZ19pc19lcSh0bXBfdGFnLCBhdXRoX3RhZywgdGFnX2xlbikp
CisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYXV0aF9mYWlsOwogCiAgICAgLyoKLSAg
ICAgKiBQcm9jZXNzIHRoZSBzZXF1ZW5jZSMgYXMgQUFECisgICAgICogaWYgd2UncmUgYXV0aGVu
dGljYXRpbmcgdXNpbmcgYSB1bml2ZXJzYWwgaGFzaCwgcHV0IHRoZSBrZXlzdHJlYW0KKyAgICAg
KiBwcmVmaXggaW50byB0aGUgYXV0aGVudGljYXRpb24gdGFnCiAgICAgICovCi0gICAgdHNlcSA9
ICp0cmFpbGVyOwotICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3NldF9hYWQoc2Vzc2lvbl9rZXlz
LT5ydGNwX2NpcGhlciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICh1aW50OF90
KikmdHNlcSwgc2l6ZW9mKHNydGNwX3RyYWlsZXJfdCkpOwotICAgIGlmIChzdGF0dXMpIHsKLSAg
ICAgICAgcmV0dXJuICggc3J0cF9lcnJfc3RhdHVzX2NpcGhlcl9mYWlsKTsKKyAgICBwcmVmaXhf
bGVuID0gc3J0cF9hdXRoX2dldF9wcmVmaXhfbGVuZ3RoKHNlc3Npb25fa2V5cy0+cnRjcF9hdXRo
KTsKKyAgICBpZiAocHJlZml4X2xlbikgeworICAgICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9v
dXRwdXQoc2Vzc2lvbl9rZXlzLT5ydGNwX2NpcGhlciwgYXV0aF90YWcsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAmcHJlZml4X2xlbik7CisgICAgICAgIGRlYnVnX3ByaW50
KG1vZF9zcnRwLCAia2V5c3RyZWFtIHByZWZpeDogJXMiLAorICAgICAgICAgICAgICAgICAgICBz
cnRwX29jdGV0X3N0cmluZ19oZXhfc3RyaW5nKGF1dGhfdGFnLCBwcmVmaXhfbGVuKSk7CisgICAg
ICAgIGlmIChzdGF0dXMpCisgICAgICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2NpcGhl
cl9mYWlsOwogICAgIH0KIAogICAgIC8qIGlmIHdlJ3JlIGRlY3J5cHRpbmcsIGV4b3Iga2V5c3Ry
ZWFtIGludG8gdGhlIG1lc3NhZ2UgKi8KICAgICBpZiAoZW5jX3N0YXJ0KSB7Ci0gICAgICAgIHN0
YXR1cyA9IHNydHBfY2lwaGVyX2RlY3J5cHQoc2Vzc2lvbl9rZXlzLT5ydGNwX2NpcGhlciwgKHVp
bnQ4X3QqKWVuY19zdGFydCwgJmVuY19vY3RldF9sZW4pOwotICAgICAgICBpZiAoc3RhdHVzKSB7
Ci0gICAgICAgICAgICByZXR1cm4gc3RhdHVzOwotICAgICAgICB9Ci0gICAgfSBlbHNlIHsKLSAg
ICAgICAgLyoKLSAgICAgICAgICogU3RpbGwgbmVlZCB0byBydW4gdGhlIGNpcGhlciB0byBjaGVj
ayB0aGUgdGFnCi0gICAgICAgICAqLwotICAgICAgICB0bXBfbGVuID0gdGFnX2xlbjsKLSAgICAg
ICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfZGVjcnlwdChzZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVy
LCAodWludDhfdCopYXV0aF90YWcsICZ0bXBfbGVuKTsKLSAgICAgICAgaWYgKHN0YXR1cykgewot
ICAgICAgICAgICAgcmV0dXJuIHN0YXR1czsKLSAgICAgICAgfQorICAgICAgICBzdGF0dXMgPSBz
cnRwX2NpcGhlcl9kZWNyeXB0KHNlc3Npb25fa2V5cy0+cnRjcF9jaXBoZXIsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgKHVpbnQ4X3QgKillbmNfc3RhcnQsICZlbmNfb2N0
ZXRfbGVuKTsKKyAgICAgICAgaWYgKHN0YXR1cykKKyAgICAgICAgICAgIHJldHVybiBzcnRwX2Vy
cl9zdGF0dXNfY2lwaGVyX2ZhaWw7CiAgICAgfQogCi0gICAgLyogZGVjcmVhc2UgdGhlIHBhY2tl
dCBsZW5ndGggYnkgdGhlIGxlbmd0aCBvZiB0aGUgYXV0aCB0YWcgYW5kIHNlcV9udW0qLwotICAg
ICpwa3Rfb2N0ZXRfbGVuIC09ICh0YWdfbGVuICsgc2l6ZW9mKHNydGNwX3RyYWlsZXJfdCkgKyBt
a2lfc2l6ZSk7CisgICAgLyogZGVjcmVhc2UgdGhlIHBhY2tldCBsZW5ndGggYnkgdGhlIGxlbmd0
aCBvZiB0aGUgYXV0aCB0YWcgYW5kIHNlcV9udW0gKi8KKyAgICAqcGt0X29jdGV0X2xlbiAtPSAo
dGFnX2xlbiArIHNpemVvZihzcnRjcF90cmFpbGVyX3QpKTsKKworICAgIC8qIGRlY3JlYXNlIHRo
ZSBwYWNrZXQgbGVuZ3RoIGJ5IHRoZSBsZW5ndGggb2YgdGhlIG1raV9zaXplICovCisgICAgKnBr
dF9vY3RldF9sZW4gLT0gbWtpX3NpemU7CisKKyAgICAvKgorICAgICAqIGlmIEVLVCBpcyBpbiBl
ZmZlY3QsIHN1YnRyYWN0IHRoZSBFS1QgZGF0YSBvdXQgb2YgdGhlIHBhY2tldAorICAgICAqIGxl
bmd0aAorICAgICAqLworICAgICpwa3Rfb2N0ZXRfbGVuIC09IHNydHBfZWt0X29jdGV0c19hZnRl
cl9iYXNlX3RhZyhzdHJlYW0tPmVrdCk7CiAKICAgICAvKgogICAgICAqIHZlcmlmeSB0aGF0IHN0
cmVhbSBpcyBmb3IgcmVjZWl2ZWQgdHJhZmZpYyAtIHRoaXMgY2hlY2sgd2lsbApAQCAtMzgwMywx
MCArNDM4NiwxMCBAQCBzcnRwX3VucHJvdGVjdF9ydGNwX2FlYWQgKHNydHBfdCBjdHgsIHNydHBf
c3RyZWFtX2N0eF90ICpzdHJlYW0sCiAgICAgICAgICAqIHN0cmVhbSwgYW5kIHNvbWUgaW1wbGVt
ZW50YXRpb25zIHdpbGwgd2FudCB0byBub3QgcmV0dXJuCiAgICAgICAgICAqIGZhaWx1cmUgaGVy
ZQogICAgICAgICAgKi8KLSAgICAgICAgc3RhdHVzID0gc3J0cF9zdHJlYW1fY2xvbmUoY3R4LT5z
dHJlYW1fdGVtcGxhdGUsIGhkci0+c3NyYywgJm5ld19zdHJlYW0pOwotICAgICAgICBpZiAoc3Rh
dHVzKSB7CisgICAgICAgIHN0YXR1cyA9CisgICAgICAgICAgICBzcnRwX3N0cmVhbV9jbG9uZShj
dHgtPnN0cmVhbV90ZW1wbGF0ZSwgaGRyLT5zc3JjLCAmbmV3X3N0cmVhbSk7CisgICAgICAgIGlm
IChzdGF0dXMpCiAgICAgICAgICAgICByZXR1cm4gc3RhdHVzOwotICAgICAgICB9CiAKICAgICAg
ICAgLyogYWRkIG5ldyBzdHJlYW0gdG8gdGhlIGhlYWQgb2YgdGhlIHN0cmVhbV9saXN0ICovCiAg
ICAgICAgIG5ld19zdHJlYW0tPm5leHQgPSBjdHgtPnN0cmVhbV9saXN0OwpAQCAtMzgyMiw3NTQg
KzQ0MDUsMjM2IEBAIHNydHBfdW5wcm90ZWN0X3J0Y3BfYWVhZCAoc3J0cF90IGN0eCwgc3J0cF9z
dHJlYW1fY3R4X3QgKnN0cmVhbSwKICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQog
Ci1zcnRwX2Vycl9zdGF0dXNfdCAKLXNydHBfcHJvdGVjdF9ydGNwKHNydHBfdCBjdHgsIHZvaWQg
KnJ0Y3BfaGRyLCBpbnQgKnBrdF9vY3RldF9sZW4pIHsKLSAgcmV0dXJuIHNydHBfcHJvdGVjdF9y
dGNwX21raShjdHgsIHJ0Y3BfaGRyLCBwa3Rfb2N0ZXRfbGVuLCAwLCAwKTsKLX0KLQotc3J0cF9l
cnJfc3RhdHVzX3QgCi1zcnRwX3Byb3RlY3RfcnRjcF9ta2koc3J0cF90IGN0eCwgdm9pZCAqcnRj
cF9oZHIsIGludCAqcGt0X29jdGV0X2xlbiwKLSAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25l
ZCBpbnQgdXNlX21raSwgdW5zaWduZWQgaW50IG1raV9pbmRleCkgewotICBzcnRjcF9oZHJfdCAq
aGRyID0gKHNydGNwX2hkcl90ICopcnRjcF9oZHI7Ci0gIHVpbnQzMl90ICplbmNfc3RhcnQ7ICAg
ICAgLyogcG9pbnRlciB0byBzdGFydCBvZiBlbmNyeXB0ZWQgcG9ydGlvbiAgKi8KLSAgdWludDMy
X3QgKmF1dGhfc3RhcnQ7ICAgICAvKiBwb2ludGVyIHRvIHN0YXJ0IG9mIGF1dGguIHBvcnRpb24g
ICAgICAqLwotICB1aW50MzJfdCAqdHJhaWxlcjsgICAgICAgIC8qIHBvaW50ZXIgdG8gc3RhcnQg
b2YgdHJhaWxlciAgICAgICAgICAgICovCi0gIHVuc2lnbmVkIGludCBlbmNfb2N0ZXRfbGVuID0g
MDsvKiBudW1iZXIgb2Ygb2N0ZXRzIGluIGVuY3J5cHRlZCBwb3J0aW9uICovCi0gIHVpbnQ4X3Qg
KmF1dGhfdGFnID0gTlVMTDsgLyogbG9jYXRpb24gb2YgYXV0aF90YWcgd2l0aGluIHBhY2tldCAg
ICAgKi8KLSAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVzOyAgIAotICBpbnQgdGFnX2xlbjsKLSAg
c3J0cF9zdHJlYW1fY3R4X3QgKnN0cmVhbTsKLSAgdWludDMyX3QgcHJlZml4X2xlbjsKLSAgdWlu
dDMyX3Qgc2VxX251bTsKLSAgdW5zaWduZWQgaW50IG1raV9zaXplID0gMDsKLSAgc3J0cF9zZXNz
aW9uX2tleXNfdCAqc2Vzc2lvbl9rZXlzID0gTlVMTDsKLQotICAvKiB3ZSBhc3N1bWUgdGhlIGhk
ciBpcyAzMi1iaXQgYWxpZ25lZCB0byBzdGFydCAqLwotCi0gIC8qIGNoZWNrIHRoZSBwYWNrZXQg
bGVuZ3RoIC0gaXQgbXVzdCBhdCBsZWFzdCBjb250YWluIGEgZnVsbCBoZWFkZXIgKi8KLSAgaWYg
KCpwa3Rfb2N0ZXRfbGVuIDwgb2N0ZXRzX2luX3J0Y3BfaGVhZGVyKQotICAgIHJldHVybiBzcnRw
X2Vycl9zdGF0dXNfYmFkX3BhcmFtOwotCi0gIC8qCi0gICAqIGxvb2sgdXAgc3NyYyBpbiBzcnRw
X3N0cmVhbSBsaXN0LCBhbmQgcHJvY2VzcyB0aGUgcGFja2V0IHdpdGggCi0gICAqIHRoZSBhcHBy
b3ByaWF0ZSBzdHJlYW0uICBpZiB3ZSBoYXZlbid0IHNlZW4gdGhpcyBzdHJlYW0gYmVmb3JlLAot
ICAgKiB0aGVyZSdzIG9ubHkgb25lIGtleSBmb3IgdGhpcyBzcnRwX3Nlc3Npb24sIGFuZCB0aGUg
Y2lwaGVyCi0gICAqIHN1cHBvcnRzIGtleS1zaGFyaW5nLCB0aGVuIHdlIGFzc3VtZSB0aGF0IGEg
bmV3IHN0cmVhbSB1c2luZwotICAgKiB0aGF0IGtleSBoYXMganVzdCBzdGFydGVkIHVwCi0gICAq
LwotICBzdHJlYW0gPSBzcnRwX2dldF9zdHJlYW0oY3R4LCBoZHItPnNzcmMpOwotICBpZiAoc3Ry
ZWFtID09IE5VTEwpIHsKLSAgICBpZiAoY3R4LT5zdHJlYW1fdGVtcGxhdGUgIT0gTlVMTCkgewot
ICAgICAgc3J0cF9zdHJlYW1fY3R4X3QgKm5ld19zdHJlYW07Ci0gICAgICAKLSAgICAgIC8qIGFs
bG9jYXRlIGFuZCBpbml0aWFsaXplIGEgbmV3IHN0cmVhbSAqLwotICAgICAgc3RhdHVzID0gc3J0
cF9zdHJlYW1fY2xvbmUoY3R4LT5zdHJlYW1fdGVtcGxhdGUsCi0JCQkJIGhkci0+c3NyYywgJm5l
d19zdHJlYW0pOyAKLSAgICAgIGlmIChzdGF0dXMpCi0JcmV0dXJuIHN0YXR1czsKLSAgICAgIAot
ICAgICAgLyogYWRkIG5ldyBzdHJlYW0gdG8gdGhlIGhlYWQgb2YgdGhlIHN0cmVhbV9saXN0ICov
Ci0gICAgICBuZXdfc3RyZWFtLT5uZXh0ID0gY3R4LT5zdHJlYW1fbGlzdDsKLSAgICAgIGN0eC0+
c3RyZWFtX2xpc3QgPSBuZXdfc3RyZWFtOwotICAgICAgCi0gICAgICAvKiBzZXQgc3RyZWFtICh0
aGUgcG9pbnRlciB1c2VkIGluIHRoaXMgZnVuY3Rpb24pICovCi0gICAgICBzdHJlYW0gPSBuZXdf
c3RyZWFtOwotICAgIH0gZWxzZSB7Ci0gICAgICAvKiBubyB0ZW1wbGF0ZSBzdHJlYW0sIHNvIHdl
IHJldHVybiBhbiBlcnJvciAqLwotICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19ub19jdHg7
Ci0gICAgfSAKLSAgfQotICAKLSAgLyogCi0gICAqIHZlcmlmeSB0aGF0IHN0cmVhbSBpcyBmb3Ig
c2VuZGluZyB0cmFmZmljIC0gdGhpcyBjaGVjayB3aWxsCi0gICAqIGRldGVjdCBTU1JDIGNvbGxp
c2lvbnMsIHNpbmNlIGEgc3RyZWFtIHRoYXQgYXBwZWFycyBpbiBib3RoCi0gICAqIHNydHBfcHJv
dGVjdCgpIGFuZCBzcnRwX3VucHJvdGVjdCgpIHdpbGwgZmFpbCB0aGlzIHRlc3QgaW4gb25lIG9m
Ci0gICAqIHRob3NlIGZ1bmN0aW9ucy4KLSAgICovCi0gIGlmIChzdHJlYW0tPmRpcmVjdGlvbiAh
PSBkaXJfc3J0cF9zZW5kZXIpIHsKLSAgICBpZiAoc3RyZWFtLT5kaXJlY3Rpb24gPT0gZGlyX3Vu
a25vd24pIHsKLSAgICAgIHN0cmVhbS0+ZGlyZWN0aW9uID0gZGlyX3NydHBfc2VuZGVyOwotICAg
IH0gZWxzZSB7Ci0gICAgICBzcnRwX2hhbmRsZV9ldmVudChjdHgsIHN0cmVhbSwgZXZlbnRfc3Ny
Y19jb2xsaXNpb24pOwotICAgIH0KLSAgfSAgCi0KLSAgc2Vzc2lvbl9rZXlzID0gc3J0cF9nZXRf
c2Vzc2lvbl9rZXlzX3dpdGhfbWtpX2luZGV4KHN0cmVhbSwgdXNlX21raSwgbWtpX2luZGV4KTsK
LQotICAvKgotICAgKiBDaGVjayBpZiB0aGlzIGlzIGFuIEFFQUQgc3RyZWFtIChHQ00gbW9kZSku
ICBJZiBzbywgdGhlbiBkaXNwYXRjaAotICAgKiB0aGUgcmVxdWVzdCB0byBvdXIgQUVBRCBoYW5k
bGVyLgotICAgKi8KLSAgaWYgKHNlc3Npb25fa2V5cy0+cnRwX2NpcGhlci0+YWxnb3JpdGhtID09
IFNSVFBfQUVTX0dDTV8xMjggfHwKLSAgICAgIHNlc3Npb25fa2V5cy0+cnRwX2NpcGhlci0+YWxn
b3JpdGhtID09IFNSVFBfQUVTX0dDTV8yNTYpIHsKLSAgICAgIHJldHVybiBzcnRwX3Byb3RlY3Rf
cnRjcF9hZWFkKGN0eCwgc3RyZWFtLCBydGNwX2hkciwKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICh1bnNpZ25lZCBpbnQqKXBrdF9vY3RldF9sZW4sIHNlc3Npb25fa2V5cywK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZV9ta2kpOwotICB9Ci0KLSAg
LyogZ2V0IHRhZyBsZW5ndGggZnJvbSBzdHJlYW0gY29udGV4dCAqLwotICB0YWdfbGVuID0gc3J0
cF9hdXRoX2dldF90YWdfbGVuZ3RoKHNlc3Npb25fa2V5cy0+cnRjcF9hdXRoKTsgCi0KLSAgLyoK
LSAgICogc2V0IGVuY3J5cHRpb24gc3RhcnQgYW5kIGVuY3J5cHRpb24gbGVuZ3RoIC0gaWYgd2Un
cmUgbm90Ci0gICAqIHByb3ZpZGluZyBjb25maWRlbnRpYWxpdHksIHNldCBlbmNfc3RhcnQgdG8g
TlVMTAotICAgKi8KLSAgZW5jX3N0YXJ0ID0gKHVpbnQzMl90ICopaGRyICsgdWludDMyc19pbl9y
dGNwX2hlYWRlcjsgIAotICBlbmNfb2N0ZXRfbGVuID0gKnBrdF9vY3RldF9sZW4gLSBvY3RldHNf
aW5fcnRjcF9oZWFkZXI7Ci0KLSAgLyogYWxsIG9mIHRoZSBwYWNrZXQsIGV4Y2VwdCB0aGUgaGVh
ZGVyLCBnZXRzIGVuY3J5cHRlZCAqLwotICAvKiBOT1RFOiBoZHItPmxlbmd0aCBpcyBub3QgdXNh
YmxlIC0gaXQgcmVmZXJzIHRvIG9ubHkgdGhlIGZpcnN0Ci0JIFJUQ1AgcmVwb3J0IGluIHRoZSBj
b21wb3VuZCBwYWNrZXQhICovCi0gIC8qIE5PVEU6IHRyYWlsZXIgaXMgMzItYml0IGFsaWduZWQg
YmVjYXVzZSBSVENQICdwYWNrZXRzJyBhcmUgYWx3YXlzCi0JIG11bHRpcGxlcyBvZiAzMi1iaXRz
IChSRkMgMzU1MCA2LjEpICovCi0gIHRyYWlsZXIgPSAodWludDMyX3QgKikgKChjaGFyICopZW5j
X3N0YXJ0ICsgZW5jX29jdGV0X2xlbik7Ci0KLSAgaWYgKHN0cmVhbS0+cnRjcF9zZXJ2aWNlcyAm
IHNlY19zZXJ2X2NvbmYpIHsKLSAgICAqdHJhaWxlciA9IGh0b25sKFNSVENQX0VfQklUKTsgICAg
IC8qIHNldCBlbmNyeXB0IGJpdCAqLyAgICAKLSAgfSBlbHNlIHsKLSAgICBlbmNfc3RhcnQgPSBO
VUxMOwotICAgIGVuY19vY3RldF9sZW4gPSAwOwotCS8qIDAgaXMgbmV0d29yay1vcmRlciBpbmRl
cGVuZGFudCAqLwotICAgICp0cmFpbGVyID0gMHgwMDAwMDAwMDsgICAgIC8qIHNldCBlbmNyeXB0
IGJpdCAqLyAgICAKLSAgfQotCi0gIG1raV9zaXplID0gc3J0cF9pbmplY3RfbWtpKCh1aW50OF90
ICopaGRyICsgKnBrdF9vY3RldF9sZW4gKyBzaXplb2Yoc3J0Y3BfdHJhaWxlcl90KSwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgc2Vzc2lvbl9rZXlzLCB1c2VfbWtpKTsKLQotICAvKiAK
LSAgICogc2V0IHRoZSBhdXRoX3N0YXJ0IGFuZCBhdXRoX3RhZyBwb2ludGVycyB0byB0aGUgcHJv
cGVyIGxvY2F0aW9ucwotICAgKiAobm90ZSB0aGF0IHNydHBjICphbHdheXMqIHByb3ZpZGVzIGF1
dGhlbnRpY2F0aW9uLCB1bmxpa2Ugc3J0cCkKLSAgICovCi0gIC8qIE5vdGU6IFRoaXMgd291bGQg
bmVlZCB0byBjaGFuZ2UgZm9yIG9wdGlvbmFsIG1pa2V5IGRhdGEgKi8KLSAgYXV0aF9zdGFydCA9
ICh1aW50MzJfdCAqKWhkcjsKLSAgYXV0aF90YWcgPSAodWludDhfdCAqKWhkciArICpwa3Rfb2N0
ZXRfbGVuICsgc2l6ZW9mKHNydGNwX3RyYWlsZXJfdCkgKyBta2lfc2l6ZTsgCi0KLSAgLyogcGVy
Zm9ybSBFS1QgcHJvY2Vzc2luZyBpZiBuZWVkZWQgKi8KLSAgc3J0cF9la3Rfd3JpdGVfZGF0YShz
dHJlYW0tPmVrdCwgYXV0aF90YWcsIHRhZ19sZW4sIHBrdF9vY3RldF9sZW4sIAotCQkgICAgICBz
cnRwX3JkYnhfZ2V0X3BhY2tldF9pbmRleCgmc3RyZWFtLT5ydHBfcmRieCkpOwotCi0gIC8qIAot
ICAgKiBjaGVjayBzZXF1ZW5jZSBudW1iZXIgZm9yIG92ZXJydW5zLCBhbmQgY29weSBpdCBpbnRv
IHRoZSBwYWNrZXQKLSAgICogaWYgaXRzIHZhbHVlIGlzbid0IHRvbyBiaWcKLSAgICovCi0gIHN0
YXR1cyA9IHNydHBfcmRiX2luY3JlbWVudCgmc3RyZWFtLT5ydGNwX3JkYik7Ci0gIGlmIChzdGF0
dXMpCi0gICAgcmV0dXJuIHN0YXR1czsKLSAgc2VxX251bSA9IHNydHBfcmRiX2dldF92YWx1ZSgm
c3RyZWFtLT5ydGNwX3JkYik7Ci0gICp0cmFpbGVyIHw9IGh0b25sKHNlcV9udW0pOwotICBkZWJ1
Z19wcmludChtb2Rfc3J0cCwgInNydGNwIGluZGV4OiAleCIsIHNlcV9udW0pOwotCi0gIC8qIAot
ICAgKiBpZiB3ZSdyZSB1c2luZyByaW5kYWVsIGNvdW50ZXIgbW9kZSwgc2V0IG5vbmNlIGFuZCBz
ZXEgCi0gICAqLwotICBpZiAoc2Vzc2lvbl9rZXlzLT5ydGNwX2NpcGhlci0+dHlwZS0+aWQgPT0g
U1JUUF9BRVNfSUNNXzEyOCB8fAotICAgICAgc2Vzc2lvbl9rZXlzLT5ydGNwX2NpcGhlci0+dHlw
ZS0+aWQgPT0gU1JUUF9BRVNfSUNNXzE5MiB8fAotICAgICAgc2Vzc2lvbl9rZXlzLT5ydGNwX2Np
cGhlci0+dHlwZS0+aWQgPT0gU1JUUF9BRVNfSUNNXzI1NikgewotICAgIHYxMjhfdCBpdjsKLSAg
ICAKLSAgICBpdi52MzJbMF0gPSAwOwotICAgIGl2LnYzMlsxXSA9IGhkci0+c3NyYzsgIC8qIHN0
aWxsIGluIG5ldHdvcmsgb3JkZXIhICovCi0gICAgaXYudjMyWzJdID0gaHRvbmwoc2VxX251bSA+
PiAxNik7Ci0gICAgaXYudjMyWzNdID0gaHRvbmwoc2VxX251bSA8PCAxNik7Ci0gICAgc3RhdHVz
ID0gc3J0cF9jaXBoZXJfc2V0X2l2KHNlc3Npb25fa2V5cy0+cnRjcF9jaXBoZXIsICh1aW50OF90
KikmaXYsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfZGlyZWN0aW9uX2Vu
Y3J5cHQpOwotCi0gIH0gZWxzZSB7ICAKLSAgICB2MTI4X3QgaXY7Ci0gICAgCi0gICAgLyogb3Ro
ZXJ3aXNlLCBqdXN0IHNldCB0aGUgaW5kZXggdG8gc2VxX251bSAqLyAgCi0gICAgaXYudjMyWzBd
ID0gMDsKLSAgICBpdi52MzJbMV0gPSAwOwotICAgIGl2LnYzMlsyXSA9IDA7Ci0gICAgaXYudjMy
WzNdID0gaHRvbmwoc2VxX251bSk7Ci0gICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfc2V0X2l2KHNl
c3Npb25fa2V5cy0+cnRjcF9jaXBoZXIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICh1aW50OF90KikmaXYsIHNydHBfZGlyZWN0aW9uX2VuY3J5cHQpOwotICB9Ci0gIGlmIChzdGF0
dXMpCi0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19jaXBoZXJfZmFpbDsKLQotICAvKiAKLSAg
ICogaWYgd2UncmUgYXV0aGVudGljYXRpbmcgdXNpbmcgYSB1bml2ZXJzYWwgaGFzaCwgcHV0IHRo
ZSBrZXlzdHJlYW0KLSAgICogcHJlZml4IGludG8gdGhlIGF1dGhlbnRpY2F0aW9uIHRhZwotICAg
Ki8KLSAgCi0gIC8qIGlmIGF1dGhfc3RhcnQgaXMgbm9uLW51bGwsIHRoZW4gcHV0IGtleXN0cmVh
bSBpbnRvIHRhZyAgKi8KLSAgaWYgKGF1dGhfc3RhcnQpIHsKLQotICAgIC8qIHB1dCBrZXlzdHJl
YW0gcHJlZml4IGludG8gYXV0aF90YWcgKi8KLSAgICBwcmVmaXhfbGVuID0gc3J0cF9hdXRoX2dl
dF9wcmVmaXhfbGVuZ3RoKHNlc3Npb25fa2V5cy0+cnRjcF9hdXRoKTsgICAgCi0gICAgc3RhdHVz
ID0gc3J0cF9jaXBoZXJfb3V0cHV0KHNlc3Npb25fa2V5cy0+cnRjcF9jaXBoZXIsIGF1dGhfdGFn
LCAmcHJlZml4X2xlbik7Ci0KLSAgICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgImtleXN0cmVhbSBw
cmVmaXg6ICVzIiwgCi0JCXNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcoYXV0aF90YWcsIHBy
ZWZpeF9sZW4pKTsKLQotICAgIGlmIChzdGF0dXMpCi0gICAgICByZXR1cm4gc3J0cF9lcnJfc3Rh
dHVzX2NpcGhlcl9mYWlsOwotICB9Ci0KLSAgLyogaWYgd2UncmUgZW5jcnlwdGluZywgZXhvciBr
ZXlzdHJlYW0gaW50byB0aGUgbWVzc2FnZSAqLwotICBpZiAoZW5jX3N0YXJ0KSB7Ci0gICAgc3Rh
dHVzID0gc3J0cF9jaXBoZXJfZW5jcnlwdChzZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyLCAKLQkJ
ICAJICAgICAgICAodWludDhfdCAqKWVuY19zdGFydCwgJmVuY19vY3RldF9sZW4pOwotICAgIGlm
IChzdGF0dXMpCi0gICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2NpcGhlcl9mYWlsOwotICB9
Ci0KLSAgLyogaW5pdGlhbGl6ZSBhdXRoIGZ1bmMgY29udGV4dCAqLwotICBzcnRwX2F1dGhfc3Rh
cnQoc2Vzc2lvbl9rZXlzLT5ydGNwX2F1dGgpOwotCi0gIC8qIAotICAgKiBydW4gYXV0aCBmdW5j
IG92ZXIgcGFja2V0IChpbmNsdWRpbmcgdHJhaWxlciksIGFuZCB3cml0ZSB0aGUKLSAgICogcmVz
dWx0IGF0IGF1dGhfdGFnIAotICAgKi8KLSAgc3RhdHVzID0gc3J0cF9hdXRoX2NvbXB1dGUoc2Vz
c2lvbl9rZXlzLT5ydGNwX2F1dGgsCi0JCQkodWludDhfdCAqKWF1dGhfc3RhcnQsIAotCQkJKCpw
a3Rfb2N0ZXRfbGVuKSArIHNpemVvZihzcnRjcF90cmFpbGVyX3QpLCAKLQkJCWF1dGhfdGFnKTsK
LSAgZGVidWdfcHJpbnQobW9kX3NydHAsICJzcnRjcCBhdXRoIHRhZzogICAgJXMiLCAKLQkgICAg
ICBzcnRwX29jdGV0X3N0cmluZ19oZXhfc3RyaW5nKGF1dGhfdGFnLCB0YWdfbGVuKSk7Ci0gIGlm
IChzdGF0dXMpCi0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19hdXRoX2ZhaWw7ICAgCi0gICAg
Ci0gIC8qIGluY3JlYXNlIHRoZSBwYWNrZXQgbGVuZ3RoIGJ5IHRoZSBsZW5ndGggb2YgdGhlIGF1
dGggdGFnIGFuZCBzZXFfbnVtKi8KLSAgKnBrdF9vY3RldF9sZW4gKz0gKHRhZ19sZW4gKyBzaXpl
b2Yoc3J0Y3BfdHJhaWxlcl90KSk7Ci0KLSAgLyogaW5jcmVhc2UgdGhlIHBhY2tldCBieSB0aGUg
bWtpX3NpemUgKi8KLSAgKnBrdF9vY3RldF9sZW4gKz0gbWtpX3NpemU7Ci0gICAgCi0gIHJldHVy
biBzcnRwX2Vycl9zdGF0dXNfb2s7ICAKLX0KLQotCi1zcnRwX2Vycl9zdGF0dXNfdCAKLXNydHBf
dW5wcm90ZWN0X3J0Y3Aoc3J0cF90IGN0eCwgdm9pZCAqc3J0Y3BfaGRyLCBpbnQgKnBrdF9vY3Rl
dF9sZW4pIHsKLSAgICByZXR1cm4gc3J0cF91bnByb3RlY3RfcnRjcF9ta2koY3R4LCBzcnRjcF9o
ZHIsIHBrdF9vY3RldF9sZW4sIDApOwotfQotCi1zcnRwX2Vycl9zdGF0dXNfdAotc3J0cF91bnBy
b3RlY3RfcnRjcF9ta2koc3J0cF90IGN0eCwgdm9pZCAqc3J0Y3BfaGRyLCBpbnQgKnBrdF9vY3Rl
dF9sZW4sCi0gICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgdXNlX21raSkgewot
ICBzcnRjcF9oZHJfdCAqaGRyID0gKHNydGNwX2hkcl90ICopc3J0Y3BfaGRyOwotICB1aW50MzJf
dCAqZW5jX3N0YXJ0OyAgICAgIC8qIHBvaW50ZXIgdG8gc3RhcnQgb2YgZW5jcnlwdGVkIHBvcnRp
b24gICovCi0gIHVpbnQzMl90ICphdXRoX3N0YXJ0OyAgICAgLyogcG9pbnRlciB0byBzdGFydCBv
ZiBhdXRoLiBwb3J0aW9uICAgICAgKi8KLSAgdWludDMyX3QgKnRyYWlsZXI7ICAgICAgICAvKiBw
b2ludGVyIHRvIHN0YXJ0IG9mIHRyYWlsZXIgICAgICAgICAgICAqLwotICB1bnNpZ25lZCBpbnQg
ZW5jX29jdGV0X2xlbiA9IDA7LyogbnVtYmVyIG9mIG9jdGV0cyBpbiBlbmNyeXB0ZWQgcG9ydGlv
biAqLwotICB1aW50OF90ICphdXRoX3RhZyA9IE5VTEw7IC8qIGxvY2F0aW9uIG9mIGF1dGhfdGFn
IHdpdGhpbiBwYWNrZXQgICAgICovCi0gIHVpbnQ4X3QgdG1wX3RhZ1tTUlRQX01BWF9UQUdfTEVO
XTsKLSAgdWludDhfdCB0YWdfY29weVtTUlRQX01BWF9UQUdfTEVOXTsKLSAgc3J0cF9lcnJfc3Rh
dHVzX3Qgc3RhdHVzOyAgIAotICB1bnNpZ25lZCBpbnQgYXV0aF9sZW47Ci0gIGludCB0YWdfbGVu
OwotICBzcnRwX3N0cmVhbV9jdHhfdCAqc3RyZWFtOwotICB1aW50MzJfdCBwcmVmaXhfbGVuOwot
ICB1aW50MzJfdCBzZXFfbnVtOwotICBpbnQgZV9iaXRfaW5fcGFja2V0OyAgICAgLyogd2hldGhl
ciB0aGUgRS1iaXQgd2FzIGZvdW5kIGluIHRoZSBwYWNrZXQgKi8KLSAgaW50IHNlY19zZXJ2X2Nv
bmZpZGVudGlhbGl0eTsgLyogd2hldGhlciBjb25maWRlbnRpYWxpdHkgd2FzIHJlcXVlc3RlZCAq
LwotICB1bnNpZ25lZCBpbnQgbWtpX3NpemUgPSAwOwotICBzcnRwX3Nlc3Npb25fa2V5c190ICpz
ZXNzaW9uX2tleXMgPSBOVUxMOwotCi0gIC8qIHdlIGFzc3VtZSB0aGUgaGRyIGlzIDMyLWJpdCBh
bGlnbmVkIHRvIHN0YXJ0ICovCi0KLSAgLyogY2hlY2sgdGhhdCB0aGUgbGVuZ3RoIHZhbHVlIGlz
IHNhbmU7IHdlJ2xsIGNoZWNrIGFnYWluIG9uY2Ugd2UKLSAgICAga25vdyB0aGUgdGFnIGxlbmd0
aCwgYnV0IHdlIGF0IGxlYXN0IHdhbnQgdG8ga25vdyB0aGF0IGl0IGlzCi0gICAgIGEgcG9zaXRp
dmUgdmFsdWUgKi8KLSAgaWYgKCpwa3Rfb2N0ZXRfbGVuIDwgb2N0ZXRzX2luX3J0Y3BfaGVhZGVy
ICsgc2l6ZW9mKHNydGNwX3RyYWlsZXJfdCkpCi0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19i
YWRfcGFyYW07Ci0KLSAgLyoKLSAgICogbG9vayB1cCBzc3JjIGluIHNydHBfc3RyZWFtIGxpc3Qs
IGFuZCBwcm9jZXNzIHRoZSBwYWNrZXQgd2l0aCAKLSAgICogdGhlIGFwcHJvcHJpYXRlIHN0cmVh
bS4gIGlmIHdlIGhhdmVuJ3Qgc2VlbiB0aGlzIHN0cmVhbSBiZWZvcmUsCi0gICAqIHRoZXJlJ3Mg
b25seSBvbmUga2V5IGZvciB0aGlzIHNydHBfc2Vzc2lvbiwgYW5kIHRoZSBjaXBoZXIKLSAgICog
c3VwcG9ydHMga2V5LXNoYXJpbmcsIHRoZW4gd2UgYXNzdW1lIHRoYXQgYSBuZXcgc3RyZWFtIHVz
aW5nCi0gICAqIHRoYXQga2V5IGhhcyBqdXN0IHN0YXJ0ZWQgdXAKLSAgICovCi0gIHN0cmVhbSA9
IHNydHBfZ2V0X3N0cmVhbShjdHgsIGhkci0+c3NyYyk7Ci0gIGlmIChzdHJlYW0gPT0gTlVMTCkg
ewotICAgIGlmIChjdHgtPnN0cmVhbV90ZW1wbGF0ZSAhPSBOVUxMKSB7Ci0gICAgICBzdHJlYW0g
PSBjdHgtPnN0cmVhbV90ZW1wbGF0ZTsKLQotICAgICAgLyogCi0gICAgICAgKiBjaGVjayB0byBz
ZWUgaWYgc3RyZWFtX3RlbXBsYXRlIGhhcyBhbiBFS1QgZGF0YSBzdHJ1Y3R1cmUsIGluCi0gICAg
ICAgKiB3aGljaCBjYXNlIHdlIGluaXRpYWxpemUgdGhlIHRlbXBsYXRlIHVzaW5nIHRoZSBFS1Qg
cG9saWN5Ci0gICAgICAgKiByZWZlcmVuY2VkIGJ5IHRoYXQgZGF0YSAod2hpY2ggY29uc2lzdHMg
b2YgZGVjcnlwdGluZyB0aGUKLSAgICAgICAqIG1hc3RlciBrZXkgZnJvbSB0aGUgRUtUIGZpZWxk
KQotICAgICAgICoKLSAgICAgICAqIHRoaXMgZnVuY3Rpb24gaW5pdGlhbGl6ZXMgYSAqcHJvdmlz
aW9uYWwqIHN0cmVhbSwgYW5kIHRoaXMKLSAgICAgICAqIHN0cmVhbSBzaG91bGQgbm90IGJlIGFj
Y2VwdGVkIHVudGlsIGFuZCB1bmxlc3MgdGhlIHBhY2tldAotICAgICAgICogcGFzc2VzIGl0cyBh
dXRoZW50aWNhdGlvbiBjaGVjawotICAgICAgICovIAotICAgICAgaWYgKHN0cmVhbS0+ZWt0ICE9
IE5VTEwpIHsKLQlzdGF0dXMgPSBzcnRwX3N0cmVhbV9pbml0X2Zyb21fZWt0KHN0cmVhbSwgc3J0
Y3BfaGRyLCAqcGt0X29jdGV0X2xlbik7Ci0JaWYgKHN0YXR1cykKLQkgIHJldHVybiBzdGF0dXM7
Ci0gICAgICB9Ci0KLSAgICAgIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAic3J0Y3AgdXNpbmcgcHJv
dmlzaW9uYWwgc3RyZWFtIChTU1JDOiAweCUwOHgpIiwgCi0JCSAgbnRvaGwoaGRyLT5zc3JjKSk7
Ci0gICAgfSBlbHNlIHsKLSAgICAgIC8qIG5vIHRlbXBsYXRlIHN0cmVhbSwgc28gd2UgcmV0dXJu
IGFuIGVycm9yICovCi0gICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX25vX2N0eDsKLSAgICB9
IAotICB9Ci0KLSAgLyoKLSAgICogRGV0ZXJtaW5lIGlmIE1LSSBpcyBiZWluZyB1c2VkIGFuZCB3
aGF0IHNlc3Npb24ga2V5cyBzaG91bGQgYmUgdXNlZAotICAgKi8KLSAgaWYgKHVzZV9ta2kpIHsK
LSAgICAgIHNlc3Npb25fa2V5cyA9IHNydHBfZ2V0X3Nlc3Npb25fa2V5cyhzdHJlYW0sICh1aW50
OF90ICopaGRyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChj
b25zdCB1bnNpZ25lZCBpbnQqKXBrdF9vY3RldF9sZW4sCi0gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgJm1raV9zaXplKTsKLQotICAgICAgaWYgKHNlc3Npb25fa2V5
cyA9PSBOVUxMKSAKLSAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYmFkX21raTsKLSAg
fSBlbHNlIHsKLSAgICAgIHNlc3Npb25fa2V5cyA9ICZzdHJlYW0tPnNlc3Npb25fa2V5c1swXTsK
LSAgfSAgCi0KLQotICAvKiBnZXQgdGFnIGxlbmd0aCBmcm9tIHN0cmVhbSBjb250ZXh0ICovCi0g
IHRhZ19sZW4gPSBzcnRwX2F1dGhfZ2V0X3RhZ19sZW5ndGgoc2Vzc2lvbl9rZXlzLT5ydGNwX2F1
dGgpOwotCi0gIC8qIGNoZWNrIHRoZSBwYWNrZXQgbGVuZ3RoIC0gaXQgbXVzdCBjb250YWluIGF0
IGxlYXN0IGEgZnVsbCBSVENQCi0gICAgIGhlYWRlciwgYW4gYXV0aCB0YWcgKGlmIGFwcGxpY2Fi
bGUpLCBhbmQgdGhlIFNSVENQIGVuY3J5cHRlZCBmbGFnCi0gICAgIGFuZCAzMS1iaXQgaW5kZXgg
dmFsdWUgKi8KLSAgaWYgKCpwa3Rfb2N0ZXRfbGVuIDwgKGludCkgKG9jdGV0c19pbl9ydGNwX2hl
YWRlciArIHRhZ19sZW4gKyBta2lfc2l6ZSArIHNpemVvZihzcnRjcF90cmFpbGVyX3QpKSkgewot
ICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtOwotICB9Ci0KLSAgLyoKLSAgICog
Q2hlY2sgaWYgdGhpcyBpcyBhbiBBRUFEIHN0cmVhbSAoR0NNIG1vZGUpLiAgSWYgc28sIHRoZW4g
ZGlzcGF0Y2gKLSAgICogdGhlIHJlcXVlc3QgdG8gb3VyIEFFQUQgaGFuZGxlci4KLSAgICovCi0g
IGlmIChzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXItPmFsZ29yaXRobSA9PSBTUlRQX0FFU19HQ01f
MTI4IHx8Ci0gICAgICBzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXItPmFsZ29yaXRobSA9PSBTUlRQ
X0FFU19HQ01fMjU2KSB7Ci0gICAgICByZXR1cm4gc3J0cF91bnByb3RlY3RfcnRjcF9hZWFkKGN0
eCwgc3RyZWFtLCBzcnRjcF9oZHIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICh1bnNpZ25lZCBpbnQqKXBrdF9vY3RldF9sZW4sIHNlc3Npb25fa2V5cywKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWtpX3NpemUpOwotICB9Ci0KLSAgc2VjX3Nl
cnZfY29uZmlkZW50aWFsaXR5ID0gc3RyZWFtLT5ydGNwX3NlcnZpY2VzID09IHNlY19zZXJ2X2Nv
bmYgfHwKLSAgICAgIHN0cmVhbS0+cnRjcF9zZXJ2aWNlcyA9PSBzZWNfc2Vydl9jb25mX2FuZF9h
dXRoOwotCi0gIC8qCi0gICAqIHNldCBlbmNyeXB0aW9uIHN0YXJ0LCBlbmNyeXB0aW9uIGxlbmd0
aCwgYW5kIHRyYWlsZXIKLSAgICovCi0gIGVuY19vY3RldF9sZW4gPSAqcGt0X29jdGV0X2xlbiAt
IAotICAgICAgICAgICAgICAgICAgKG9jdGV0c19pbl9ydGNwX2hlYWRlciArIHRhZ19sZW4gKyBt
a2lfc2l6ZSArIHNpemVvZihzcnRjcF90cmFpbGVyX3QpKTsKLSAgLyogaW5kZXggJiBFIChlbmNy
eXB0aW9uKSBiaXQgZm9sbG93IG5vcm1hbCBkYXRhLiAgaGRyLT5sZW4KLQkgaXMgdGhlIG51bWJl
ciBvZiB3b3JkcyAoMzItYml0KSBpbiB0aGUgbm9ybWFsIHBhY2tldCBtaW51cyAxICovCi0gIC8q
IFRoaXMgc2hvdWxkIHBvaW50IHRyYWlsZXIgdG8gdGhlIHdvcmQgcGFzdCB0aGUgZW5kIG9mIHRo
ZQotCSBub3JtYWwgZGF0YS4gKi8KLSAgLyogVGhpcyB3b3VsZCBuZWVkIHRvIGJlIG1vZGlmaWVk
IGZvciBvcHRpb25hbCBtaWtleSBkYXRhICovCi0gIC8qCi0gICAqIE5PVEU6IHRyYWlsZXIgaXMg
MzItYml0IGFsaWduZWQgYmVjYXVzZSBSVENQICdwYWNrZXRzJyBhcmUgYWx3YXlzCi0gICAqCSBt
dWx0aXBsZXMgb2YgMzItYml0cyAoUkZDIDM1NTAgNi4xKQotICAgKi8KLSAgdHJhaWxlciA9ICh1
aW50MzJfdCAqKSAoKGNoYXIgKikgaGRyICsKLSAgICAgICpwa3Rfb2N0ZXRfbGVuIC0odGFnX2xl
biArIG1raV9zaXplICsgc2l6ZW9mKHNydGNwX3RyYWlsZXJfdCkpKTsKLSAgZV9iaXRfaW5fcGFj
a2V0ID0KLSAgICAgICgqKCh1bnNpZ25lZCBjaGFyICopIHRyYWlsZXIpICYgU1JUQ1BfRV9CWVRF
X0JJVCkgPT0gU1JUQ1BfRV9CWVRFX0JJVDsKLSAgaWYgKGVfYml0X2luX3BhY2tldCAhPSBzZWNf
c2Vydl9jb25maWRlbnRpYWxpdHkpIHsKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2NhbnRf
Y2hlY2s7Ci0gIH0KLSAgaWYgKHNlY19zZXJ2X2NvbmZpZGVudGlhbGl0eSkgewotICAgIGVuY19z
dGFydCA9ICh1aW50MzJfdCAqKWhkciArIHVpbnQzMnNfaW5fcnRjcF9oZWFkZXI7ICAKLSAgfSBl
bHNlIHsKLSAgICBlbmNfb2N0ZXRfbGVuID0gMDsKLSAgICBlbmNfc3RhcnQgPSBOVUxMOyAvKiB0
aGlzIGluZGljYXRlcyB0aGF0IHRoZXJlJ3Mgbm8gZW5jcnlwdGlvbiAqLwotICB9Ci0KLSAgLyog
Ci0gICAqIHNldCB0aGUgYXV0aF9zdGFydCBhbmQgYXV0aF90YWcgcG9pbnRlcnMgdG8gdGhlIHBy
b3BlciBsb2NhdGlvbnMKLSAgICogKG5vdGUgdGhhdCBzcnRjcCAqYWx3YXlzKiB1c2VzIGF1dGhl
bnRpY2F0aW9uLCB1bmxpa2Ugc3J0cCkKLSAgICovCi0gIGF1dGhfc3RhcnQgPSAodWludDMyX3Qg
KiloZHI7Ci0KLSAgLyoKLSAgICogVGhlIGxvY2F0aW9uIG9mIHRoZSBhdXRoIHRhZyBpbiB0aGUg
cGFja2V0IG5lZWRzIHRvIGtub3cgTUtJIAotICAgKiBjb3VsZCBiZSBwcmVzZW50LiAgVGhlIGRh
dGEgbmVlZGVkIHRvIGNhbGN1bGF0ZSB0aGUgQXV0aCB0YWcKLSAgICogbXVzdCBub3QgaW5jbHVk
ZSB0aGUgTUtJCi0gICAqLwotICBhdXRoX2xlbiA9ICpwa3Rfb2N0ZXRfbGVuIC0gdGFnX2xlbiAt
IG1raV9zaXplOwotICBhdXRoX3RhZyA9ICh1aW50OF90ICopaGRyICsgYXV0aF9sZW4gKyBta2lf
c2l6ZTsKLQotICAvKiAKLSAgICogaWYgRUtUIGlzIGluIHVzZSwgdGhlbiB3ZSBtYWtlIGEgY29w
eSBvZiB0aGUgdGFnIGZyb20gdGhlIHBhY2tldCwKLSAgICogYW5kIHRoZW4gemVyb2l6ZSB0aGUg
bG9jYXRpb24gb2YgdGhlIGJhc2UgdGFnCi0gICAqCi0gICAqIHdlIGZpcnN0IHJlLXBvc2l0aW9u
IHRoZSBhdXRoX3RhZyBwb2ludGVyIHNvIHRoYXQgaXQgcG9pbnRzIHRvCi0gICAqIHRoZSBiYXNl
IHRhZwotICAgKi8KLSAgaWYgKHN0cmVhbS0+ZWt0KSB7Ci0gICAgYXV0aF90YWcgLT0gc3J0cF9l
a3Rfb2N0ZXRzX2FmdGVyX2Jhc2VfdGFnKHN0cmVhbS0+ZWt0KTsKLSAgICBtZW1jcHkodGFnX2Nv
cHksIGF1dGhfdGFnLCB0YWdfbGVuKTsKLSAgICBvY3RldF9zdHJpbmdfc2V0X3RvX3plcm8oYXV0
aF90YWcsIHRhZ19sZW4pOwotICAgIGF1dGhfdGFnID0gdGFnX2NvcHk7Ci0gICAgYXV0aF9sZW4g
Kz0gdGFnX2xlbjsKLSAgfQotCi0gIC8qIAotICAgKiBjaGVjayB0aGUgc2VxdWVuY2UgbnVtYmVy
IGZvciByZXBsYXlzCi0gICAqLwotICAvKiB0aGlzIGlzIGVhc2llciB0aGFuIGRlYWxpbmcgd2l0
aCBiaXRmaWVsZCBhY2Nlc3MgKi8KLSAgc2VxX251bSA9IG50b2hsKCp0cmFpbGVyKSAmIFNSVENQ
X0lOREVYX01BU0s7Ci0gIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAic3J0Y3AgaW5kZXg6ICV4Iiwg
c2VxX251bSk7Ci0gIHN0YXR1cyA9IHNydHBfcmRiX2NoZWNrKCZzdHJlYW0tPnJ0Y3BfcmRiLCBz
ZXFfbnVtKTsKLSAgaWYgKHN0YXR1cykKLSAgICByZXR1cm4gc3RhdHVzOwotCi0gIC8qIAotICAg
KiBpZiB3ZSdyZSB1c2luZyBhZXMgY291bnRlciBtb2RlLCBzZXQgbm9uY2UgYW5kIHNlcSAKLSAg
ICovCi0gIGlmIChzZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyLT50eXBlLT5pZCA9PSBTUlRQX0FF
U19JQ01fMTI4IHx8Ci0gICAgICBzZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyLT50eXBlLT5pZCA9
PSBTUlRQX0FFU19JQ01fMTkyIHx8Ci0gICAgICBzZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyLT50
eXBlLT5pZCA9PSBTUlRQX0FFU19JQ01fMjU2KSB7Ci0gICAgdjEyOF90IGl2OwotCi0gICAgaXYu
djMyWzBdID0gMDsKLSAgICBpdi52MzJbMV0gPSBoZHItPnNzcmM7IC8qIHN0aWxsIGluIG5ldHdv
cmsgb3JkZXIhICovCi0gICAgaXYudjMyWzJdID0gaHRvbmwoc2VxX251bSA+PiAxNik7Ci0gICAg
aXYudjMyWzNdID0gaHRvbmwoc2VxX251bSA8PCAxNik7Ci0gICAgc3RhdHVzID0gc3J0cF9jaXBo
ZXJfc2V0X2l2KHNlc3Npb25fa2V5cy0+cnRjcF9jaXBoZXIsCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICh1aW50OF90KikmaXYsIHNydHBfZGlyZWN0aW9uX2RlY3J5cHQpOwotCi0g
IH0gZWxzZSB7ICAKLSAgICB2MTI4X3QgaXY7Ci0gICAgCi0gICAgLyogb3RoZXJ3aXNlLCBqdXN0
IHNldCB0aGUgaW5kZXggdG8gc2VxX251bSAqLyAgCi0gICAgaXYudjMyWzBdID0gMDsKLSAgICBp
di52MzJbMV0gPSAwOwotICAgIGl2LnYzMlsyXSA9IDA7Ci0gICAgaXYudjMyWzNdID0gaHRvbmwo
c2VxX251bSk7Ci0gICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfc2V0X2l2KHNlc3Npb25fa2V5cy0+
cnRjcF9jaXBoZXIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICh1aW50OF90Kikm
aXYsIHNydHBfZGlyZWN0aW9uX2RlY3J5cHQpOwotCi0gIH0KLSAgaWYgKHN0YXR1cykKLSAgICBy
ZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2NpcGhlcl9mYWlsOwotCi0gIC8qIGluaXRpYWxpemUgYXV0
aCBmdW5jIGNvbnRleHQgKi8KLSAgc3J0cF9hdXRoX3N0YXJ0KHNlc3Npb25fa2V5cy0+cnRjcF9h
dXRoKTsKLQotICAvKiBydW4gYXV0aCBmdW5jIG92ZXIgcGFja2V0LCBwdXQgcmVzdWx0IGludG8g
dG1wX3RhZyAqLwotICBzdGF0dXMgPSBzcnRwX2F1dGhfY29tcHV0ZShzZXNzaW9uX2tleXMtPnJ0
Y3BfYXV0aCwgKHVpbnQ4X3QgKilhdXRoX3N0YXJ0LAotCQkJYXV0aF9sZW4sIHRtcF90YWcpOwot
ICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgInNydGNwIGNvbXB1dGVkIHRhZzogICAgICAgJXMiLCAK
LQkgICAgICBzcnRwX29jdGV0X3N0cmluZ19oZXhfc3RyaW5nKHRtcF90YWcsIHRhZ19sZW4pKTsK
LSAgaWYgKHN0YXR1cykKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2F1dGhfZmFpbDsgICAK
LSAgCi0gIC8qIGNvbXBhcmUgdGhlIHRhZyBqdXN0IGNvbXB1dGVkIHdpdGggdGhlIG9uZSBpbiB0
aGUgcGFja2V0ICovCi0gIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAic3J0Y3AgdGFnIGZyb20gcGFj
a2V0OiAgICAlcyIsIAotCSAgICAgIHNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcoYXV0aF90
YWcsIHRhZ19sZW4pKTsgIAotICBpZiAob2N0ZXRfc3RyaW5nX2lzX2VxKHRtcF90YWcsIGF1dGhf
dGFnLCB0YWdfbGVuKSkKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2F1dGhfZmFpbDsKLQot
ICAvKiAKLSAgICogaWYgd2UncmUgYXV0aGVudGljYXRpbmcgdXNpbmcgYSB1bml2ZXJzYWwgaGFz
aCwgcHV0IHRoZSBrZXlzdHJlYW0KLSAgICogcHJlZml4IGludG8gdGhlIGF1dGhlbnRpY2F0aW9u
IHRhZwotICAgKi8KLSAgcHJlZml4X2xlbiA9IHNydHBfYXV0aF9nZXRfcHJlZml4X2xlbmd0aChz
ZXNzaW9uX2tleXMtPnJ0Y3BfYXV0aCk7ICAgIAotICBpZiAocHJlZml4X2xlbikgewotICAgIHN0
YXR1cyA9IHNydHBfY2lwaGVyX291dHB1dChzZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyLCBhdXRo
X3RhZywgJnByZWZpeF9sZW4pOwotICAgIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAia2V5c3RyZWFt
IHByZWZpeDogJXMiLCAKLQkJc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZyhhdXRoX3RhZywg
cHJlZml4X2xlbikpOwotICAgIGlmIChzdGF0dXMpCi0gICAgICByZXR1cm4gc3J0cF9lcnJfc3Rh
dHVzX2NpcGhlcl9mYWlsOwotICB9Ci0KLSAgLyogaWYgd2UncmUgZGVjcnlwdGluZywgZXhvciBr
ZXlzdHJlYW0gaW50byB0aGUgbWVzc2FnZSAqLwotICBpZiAoZW5jX3N0YXJ0KSB7Ci0gICAgc3Rh
dHVzID0gc3J0cF9jaXBoZXJfZGVjcnlwdChzZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyLCAodWlu
dDhfdCAqKWVuY19zdGFydCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZlbmNf
b2N0ZXRfbGVuKTsKLSAgICBpZiAoc3RhdHVzKQotICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1
c19jaXBoZXJfZmFpbDsKLSAgfQotCi0gIC8qIGRlY3JlYXNlIHRoZSBwYWNrZXQgbGVuZ3RoIGJ5
IHRoZSBsZW5ndGggb2YgdGhlIGF1dGggdGFnIGFuZCBzZXFfbnVtICovCi0gICpwa3Rfb2N0ZXRf
bGVuIC09ICh0YWdfbGVuICsgc2l6ZW9mKHNydGNwX3RyYWlsZXJfdCkpOwotCi0gIC8qIGRlY3Jl
YXNlIHRoZSBwYWNrZXQgbGVuZ3RoIGJ5IHRoZSBsZW5ndGggb2YgdGhlIG1raV9zaXplICovCi0g
ICpwa3Rfb2N0ZXRfbGVuIC09IG1raV9zaXplOwotCi0gIC8qCi0gICAqIGlmIEVLVCBpcyBpbiBl
ZmZlY3QsIHN1YnRyYWN0IHRoZSBFS1QgZGF0YSBvdXQgb2YgdGhlIHBhY2tldAotICAgKiBsZW5n
dGgKLSAgICovCi0gICpwa3Rfb2N0ZXRfbGVuIC09IHNydHBfZWt0X29jdGV0c19hZnRlcl9iYXNl
X3RhZyhzdHJlYW0tPmVrdCk7Ci0KLSAgLyogCi0gICAqIHZlcmlmeSB0aGF0IHN0cmVhbSBpcyBm
b3IgcmVjZWl2ZWQgdHJhZmZpYyAtIHRoaXMgY2hlY2sgd2lsbAotICAgKiBkZXRlY3QgU1NSQyBj
b2xsaXNpb25zLCBzaW5jZSBhIHN0cmVhbSB0aGF0IGFwcGVhcnMgaW4gYm90aAotICAgKiBzcnRw
X3Byb3RlY3QoKSBhbmQgc3J0cF91bnByb3RlY3QoKSB3aWxsIGZhaWwgdGhpcyB0ZXN0IGluIG9u
ZSBvZgotICAgKiB0aG9zZSBmdW5jdGlvbnMuCi0gICAqCi0gICAqIHdlIGRvIHRoaXMgY2hlY2sg
KmFmdGVyKiB0aGUgYXV0aGVudGljYXRpb24gY2hlY2ssIHNvIHRoYXQgdGhlCi0gICAqIGxhdHRl
ciBjaGVjayB3aWxsIGNhdGNoIGFueSBhdHRlbXB0cyB0byBmb29sIHVzIGludG8gdGhpbmtpbmcK
LSAgICogdGhhdCB3ZSd2ZSBnb3QgYSBjb2xsaXNpb24KLSAgICovCi0gIGlmIChzdHJlYW0tPmRp
cmVjdGlvbiAhPSBkaXJfc3J0cF9yZWNlaXZlcikgewotICAgIGlmIChzdHJlYW0tPmRpcmVjdGlv
biA9PSBkaXJfdW5rbm93bikgewotICAgICAgc3RyZWFtLT5kaXJlY3Rpb24gPSBkaXJfc3J0cF9y
ZWNlaXZlcjsKLSAgICB9IGVsc2UgewotICAgICAgc3J0cF9oYW5kbGVfZXZlbnQoY3R4LCBzdHJl
YW0sIGV2ZW50X3NzcmNfY29sbGlzaW9uKTsKLSAgICB9Ci0gIH0KLQotICAvKiAKLSAgICogaWYg
dGhlIHN0cmVhbSBpcyBhICdwcm92aXNpb25hbCcgb25lLCBpbiB3aGljaCB0aGUgdGVtcGxhdGUg
Y29udGV4dAotICAgKiBpcyB1c2VkLCB0aGVuIHdlIG5lZWQgdG8gYWxsb2NhdGUgYSBuZXcgc3Ry
ZWFtIGF0IHRoaXMgcG9pbnQsIHNpbmNlCi0gICAqIHRoZSBhdXRoZW50aWNhdGlvbiBwYXNzZWQK
LSAgICovCi0gIGlmIChzdHJlYW0gPT0gY3R4LT5zdHJlYW1fdGVtcGxhdGUpIHsgIAotICAgIHNy
dHBfc3RyZWFtX2N0eF90ICpuZXdfc3RyZWFtOwotCi0gICAgLyogCi0gICAgICogYWxsb2NhdGUg
YW5kIGluaXRpYWxpemUgYSBuZXcgc3RyZWFtIAotICAgICAqIAotICAgICAqIG5vdGUgdGhhdCB3
ZSBpbmRpY2F0ZSBmYWlsdXJlIGlmIHdlIGNhbid0IGFsbG9jYXRlIHRoZSBuZXcKLSAgICAgKiBz
dHJlYW0sIGFuZCBzb21lIGltcGxlbWVudGF0aW9ucyB3aWxsIHdhbnQgdG8gbm90IHJldHVybgot
ICAgICAqIGZhaWx1cmUgaGVyZQotICAgICAqLwotICAgIHN0YXR1cyA9IHNydHBfc3RyZWFtX2Ns
b25lKGN0eC0+c3RyZWFtX3RlbXBsYXRlLCBoZHItPnNzcmMsICZuZXdfc3RyZWFtKTsgCi0gICAg
aWYgKHN0YXR1cykKLSAgICAgIHJldHVybiBzdGF0dXM7Ci0gICAgCi0gICAgLyogYWRkIG5ldyBz
dHJlYW0gdG8gdGhlIGhlYWQgb2YgdGhlIHN0cmVhbV9saXN0ICovCi0gICAgbmV3X3N0cmVhbS0+
bmV4dCA9IGN0eC0+c3RyZWFtX2xpc3Q7Ci0gICAgY3R4LT5zdHJlYW1fbGlzdCA9IG5ld19zdHJl
YW07Ci0gICAgCi0gICAgLyogc2V0IHN0cmVhbSAodGhlIHBvaW50ZXIgdXNlZCBpbiB0aGlzIGZ1
bmN0aW9uKSAqLwotICAgIHN0cmVhbSA9IG5ld19zdHJlYW07Ci0gIH0KLQotICAvKiB3ZSd2ZSBw
YXNzZWQgdGhlIGF1dGhlbnRpY2F0aW9uIGNoZWNrLCBzbyBhZGQgc2VxX251bSB0byB0aGUgcmRi
ICovCi0gIHNydHBfcmRiX2FkZF9pbmRleCgmc3RyZWFtLT5ydGNwX3JkYiwgc2VxX251bSk7Ci0g
ICAgCi0gICAgCi0gIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7ICAKLX0KLQotCiAvKgogICog
dXNlciBkYXRhIHdpdGhpbiBzcnRwX3QgY29udGV4dAogICovCiAKLXZvaWQKLXNydHBfc2V0X3Vz
ZXJfZGF0YShzcnRwX3QgY3R4LCB2b2lkICpkYXRhKSB7Ci0gIGN0eC0+dXNlcl9kYXRhID0gZGF0
YTsKK3ZvaWQgc3J0cF9zZXRfdXNlcl9kYXRhKHNydHBfdCBjdHgsIHZvaWQgKmRhdGEpCit7Cisg
ICAgY3R4LT51c2VyX2RhdGEgPSBkYXRhOwogfQogCi12b2lkKgotc3J0cF9nZXRfdXNlcl9kYXRh
KHNydHBfdCBjdHgpIHsKLSAgcmV0dXJuIGN0eC0+dXNlcl9kYXRhOwordm9pZCAqc3J0cF9nZXRf
dXNlcl9kYXRhKHNydHBfdCBjdHgpCit7CisgICAgcmV0dXJuIGN0eC0+dXNlcl9kYXRhOwogfQog
Ci0KIC8qCi0gKiBkdGxzIGtleWluZyBmb3Igc3J0cCAKKyAqIGR0bHMga2V5aW5nIGZvciBzcnRw
CiAgKi8KIAotc3J0cF9lcnJfc3RhdHVzX3QKLXNydHBfY3J5cHRvX3BvbGljeV9zZXRfZnJvbV9w
cm9maWxlX2Zvcl9ydHAoc3J0cF9jcnlwdG9fcG9saWN5X3QgKnBvbGljeSwgCi0JCQkJICAgICAg
ICAgICAgc3J0cF9wcm9maWxlX3QgcHJvZmlsZSkgewotCi0gIC8qIHNldCBTUlRQIHBvbGljeSBm
cm9tIHRoZSBTUlRQIHByb2ZpbGUgaW4gdGhlIGtleSBzZXQgKi8KLSAgc3dpdGNoKHByb2ZpbGUp
IHsKLSAgY2FzZSBzcnRwX3Byb2ZpbGVfYWVzMTI4X2NtX3NoYTFfODA6Ci0gICAgc3J0cF9jcnlw
dG9fcG9saWN5X3NldF9hZXNfY21fMTI4X2htYWNfc2hhMV84MChwb2xpY3kpOwotICAgIGJyZWFr
OwotICBjYXNlIHNydHBfcHJvZmlsZV9hZXMxMjhfY21fc2hhMV8zMjoKLSAgICBzcnRwX2NyeXB0
b19wb2xpY3lfc2V0X2Flc19jbV8xMjhfaG1hY19zaGExXzMyKHBvbGljeSk7Ci0gICAgYnJlYWs7
Ci0gIGNhc2Ugc3J0cF9wcm9maWxlX251bGxfc2hhMV84MDoKLSAgICBzcnRwX2NyeXB0b19wb2xp
Y3lfc2V0X251bGxfY2lwaGVyX2htYWNfc2hhMV84MChwb2xpY3kpOwotICAgIGJyZWFrOworc3J0
cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9mcm9tX3Byb2ZpbGVfZm9yX3J0
cCgKKyAgICBzcnRwX2NyeXB0b19wb2xpY3lfdCAqcG9saWN5LAorICAgIHNydHBfcHJvZmlsZV90
IHByb2ZpbGUpCit7CisgICAgLyogc2V0IFNSVFAgcG9saWN5IGZyb20gdGhlIFNSVFAgcHJvZmls
ZSBpbiB0aGUga2V5IHNldCAqLworICAgIHN3aXRjaCAocHJvZmlsZSkgeworICAgIGNhc2Ugc3J0
cF9wcm9maWxlX2FlczEyOF9jbV9zaGExXzgwOgorICAgICAgICBzcnRwX2NyeXB0b19wb2xpY3lf
c2V0X2Flc19jbV8xMjhfaG1hY19zaGExXzgwKHBvbGljeSk7CisgICAgICAgIGJyZWFrOworICAg
IGNhc2Ugc3J0cF9wcm9maWxlX2FlczEyOF9jbV9zaGExXzMyOgorICAgICAgICBzcnRwX2NyeXB0
b19wb2xpY3lfc2V0X2Flc19jbV8xMjhfaG1hY19zaGExXzMyKHBvbGljeSk7CisgICAgICAgIGJy
ZWFrOworICAgIGNhc2Ugc3J0cF9wcm9maWxlX251bGxfc2hhMV84MDoKKyAgICAgICAgc3J0cF9j
cnlwdG9fcG9saWN5X3NldF9udWxsX2NpcGhlcl9obWFjX3NoYTFfODAocG9saWN5KTsKKyAgICAg
ICAgYnJlYWs7CiAjaWYgZGVmaW5lZChPUEVOU1NMKQotICBjYXNlIHNydHBfcHJvZmlsZV9hZWFk
X2Flc18xMjhfZ2NtOgotICAgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2djbV8xMjhfMTZf
YXV0aChwb2xpY3kpOwotICAgIGJyZWFrOwotICBjYXNlIHNydHBfcHJvZmlsZV9hZWFkX2Flc18y
NTZfZ2NtOgotICAgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2djbV8yNTZfMTZfYXV0aChw
b2xpY3kpOwotICAgIGJyZWFrOworICAgIGNhc2Ugc3J0cF9wcm9maWxlX2FlYWRfYWVzXzEyOF9n
Y206CisgICAgICAgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2djbV8xMjhfMTZfYXV0aChw
b2xpY3kpOworICAgICAgICBicmVhazsKKyAgICBjYXNlIHNydHBfcHJvZmlsZV9hZWFkX2Flc18y
NTZfZ2NtOgorICAgICAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21fMjU2XzE2X2F1
dGgocG9saWN5KTsKKyAgICAgICAgYnJlYWs7CiAjZW5kaWYKICAgICAvKiB0aGUgZm9sbG93aW5n
IHByb2ZpbGVzIGFyZSBub3QgKHlldCkgc3VwcG9ydGVkICovCi0gIGNhc2Ugc3J0cF9wcm9maWxl
X251bGxfc2hhMV8zMjoKLSAgZGVmYXVsdDoKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2Jh
ZF9wYXJhbTsKLSAgfQorICAgIGNhc2Ugc3J0cF9wcm9maWxlX251bGxfc2hhMV8zMjoKKyAgICBk
ZWZhdWx0OgorICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJhbTsKKyAgICB9
CiAKLSAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKKyAgICByZXR1cm4gc3J0cF9lcnJfc3Rh
dHVzX29rOwogfQogCi1zcnRwX2Vycl9zdGF0dXNfdAotc3J0cF9jcnlwdG9fcG9saWN5X3NldF9m
cm9tX3Byb2ZpbGVfZm9yX3J0Y3Aoc3J0cF9jcnlwdG9fcG9saWN5X3QgKnBvbGljeSwgCi0JCQkJ
CSAgICAgc3J0cF9wcm9maWxlX3QgcHJvZmlsZSkgewotCi0gIC8qIHNldCBTUlRQIHBvbGljeSBm
cm9tIHRoZSBTUlRQIHByb2ZpbGUgaW4gdGhlIGtleSBzZXQgKi8KLSAgc3dpdGNoKHByb2ZpbGUp
IHsKLSAgY2FzZSBzcnRwX3Byb2ZpbGVfYWVzMTI4X2NtX3NoYTFfODA6Ci0gICAgc3J0cF9jcnlw
dG9fcG9saWN5X3NldF9hZXNfY21fMTI4X2htYWNfc2hhMV84MChwb2xpY3kpOwotICAgIGJyZWFr
OwotICBjYXNlIHNydHBfcHJvZmlsZV9hZXMxMjhfY21fc2hhMV8zMjoKLSAgICAvKiBXZSBkbyBu
b3QgaG9ub3IgdGhlIDMyLWJpdCBhdXRoIHRhZyByZXF1ZXN0IHNpbmNlCi0gICAgICogdGhpcyBp
cyBub3QgY29tcGxpYW50IHdpdGggUkZDIDM3MTEgKi8KLSAgICBzcnRwX2NyeXB0b19wb2xpY3lf
c2V0X2Flc19jbV8xMjhfaG1hY19zaGExXzgwKHBvbGljeSk7Ci0gICAgYnJlYWs7Ci0gIGNhc2Ug
c3J0cF9wcm9maWxlX251bGxfc2hhMV84MDoKLSAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X251
bGxfY2lwaGVyX2htYWNfc2hhMV84MChwb2xpY3kpOwotICAgIGJyZWFrOworc3J0cF9lcnJfc3Rh
dHVzX3Qgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9mcm9tX3Byb2ZpbGVfZm9yX3J0Y3AoCisgICAg
c3J0cF9jcnlwdG9fcG9saWN5X3QgKnBvbGljeSwKKyAgICBzcnRwX3Byb2ZpbGVfdCBwcm9maWxl
KQoreworICAgIC8qIHNldCBTUlRQIHBvbGljeSBmcm9tIHRoZSBTUlRQIHByb2ZpbGUgaW4gdGhl
IGtleSBzZXQgKi8KKyAgICBzd2l0Y2ggKHByb2ZpbGUpIHsKKyAgICBjYXNlIHNydHBfcHJvZmls
ZV9hZXMxMjhfY21fc2hhMV84MDoKKyAgICAgICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNf
Y21fMTI4X2htYWNfc2hhMV84MChwb2xpY3kpOworICAgICAgICBicmVhazsKKyAgICBjYXNlIHNy
dHBfcHJvZmlsZV9hZXMxMjhfY21fc2hhMV8zMjoKKyAgICAgICAgLyogV2UgZG8gbm90IGhvbm9y
IHRoZSAzMi1iaXQgYXV0aCB0YWcgcmVxdWVzdCBzaW5jZQorICAgICAgICAgKiB0aGlzIGlzIG5v
dCBjb21wbGlhbnQgd2l0aCBSRkMgMzcxMSAqLworICAgICAgICBzcnRwX2NyeXB0b19wb2xpY3lf
c2V0X2Flc19jbV8xMjhfaG1hY19zaGExXzgwKHBvbGljeSk7CisgICAgICAgIGJyZWFrOworICAg
IGNhc2Ugc3J0cF9wcm9maWxlX251bGxfc2hhMV84MDoKKyAgICAgICAgc3J0cF9jcnlwdG9fcG9s
aWN5X3NldF9udWxsX2NpcGhlcl9obWFjX3NoYTFfODAocG9saWN5KTsKKyAgICAgICAgYnJlYWs7
CiAjaWYgZGVmaW5lZChPUEVOU1NMKQotICBjYXNlIHNydHBfcHJvZmlsZV9hZWFkX2Flc18xMjhf
Z2NtOgotICAgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2djbV8xMjhfMTZfYXV0aChwb2xp
Y3kpOwotICAgIGJyZWFrOwotICBjYXNlIHNydHBfcHJvZmlsZV9hZWFkX2Flc18yNTZfZ2NtOgot
ICAgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2djbV8yNTZfMTZfYXV0aChwb2xpY3kpOwot
ICAgIGJyZWFrOworICAgIGNhc2Ugc3J0cF9wcm9maWxlX2FlYWRfYWVzXzEyOF9nY206CisgICAg
ICAgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2djbV8xMjhfMTZfYXV0aChwb2xpY3kpOwor
ICAgICAgICBicmVhazsKKyAgICBjYXNlIHNydHBfcHJvZmlsZV9hZWFkX2Flc18yNTZfZ2NtOgor
ICAgICAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21fMjU2XzE2X2F1dGgocG9saWN5
KTsKKyAgICAgICAgYnJlYWs7CiAjZW5kaWYKICAgICAvKiB0aGUgZm9sbG93aW5nIHByb2ZpbGVz
IGFyZSBub3QgKHlldCkgc3VwcG9ydGVkICovCi0gIGNhc2Ugc3J0cF9wcm9maWxlX251bGxfc2hh
MV8zMjoKLSAgZGVmYXVsdDoKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJhbTsK
LSAgfQorICAgIGNhc2Ugc3J0cF9wcm9maWxlX251bGxfc2hhMV8zMjoKKyAgICBkZWZhdWx0Ogor
ICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJhbTsKKyAgICB9CiAKLSAgcmV0
dXJuIHNydHBfZXJyX3N0YXR1c19vazsKKyAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwog
fQogCi12b2lkIHNydHBfYXBwZW5kX3NhbHRfdG9fa2V5KHVpbnQ4X3QgKmtleSwgdW5zaWduZWQg
aW50IGJ5dGVzX2luX2tleSwgdWludDhfdCAqc2FsdCwgdW5zaWduZWQgaW50IGJ5dGVzX2luX3Nh
bHQpIHsKLSAgbWVtY3B5KGtleSArIGJ5dGVzX2luX2tleSwgc2FsdCwgYnl0ZXNfaW5fc2FsdCk7
Cit2b2lkIHNydHBfYXBwZW5kX3NhbHRfdG9fa2V5KHVpbnQ4X3QgKmtleSwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IGJ5dGVzX2luX2tleSwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgdWludDhfdCAqc2FsdCwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgdW5zaWduZWQgaW50IGJ5dGVzX2luX3NhbHQpCit7CisgICAgbWVtY3B5KGtleSArIGJ5
dGVzX2luX2tleSwgc2FsdCwgYnl0ZXNfaW5fc2FsdCk7CiB9CiAKLXVuc2lnbmVkIGludAotc3J0
cF9wcm9maWxlX2dldF9tYXN0ZXJfa2V5X2xlbmd0aChzcnRwX3Byb2ZpbGVfdCBwcm9maWxlKSB7
Ci0KLSAgc3dpdGNoKHByb2ZpbGUpIHsKLSAgY2FzZSBzcnRwX3Byb2ZpbGVfYWVzMTI4X2NtX3No
YTFfODA6Ci0gICAgcmV0dXJuIFNSVFBfQUVTXzEyOF9LRVlfTEVOOwotICAgIGJyZWFrOwotICBj
YXNlIHNydHBfcHJvZmlsZV9hZXMxMjhfY21fc2hhMV8zMjoKLSAgICByZXR1cm4gU1JUUF9BRVNf
MTI4X0tFWV9MRU47Ci0gICAgYnJlYWs7Ci0gIGNhc2Ugc3J0cF9wcm9maWxlX251bGxfc2hhMV84
MDoKLSAgICByZXR1cm4gU1JUUF9BRVNfMTI4X0tFWV9MRU47Ci0gICAgYnJlYWs7Ci0gIGNhc2Ug
c3J0cF9wcm9maWxlX2FlYWRfYWVzXzEyOF9nY206Ci0gICAgcmV0dXJuIFNSVFBfQUVTXzEyOF9L
RVlfTEVOOwotICAgIGJyZWFrOwotICBjYXNlIHNydHBfcHJvZmlsZV9hZWFkX2Flc18yNTZfZ2Nt
OgotICAgIHJldHVybiBTUlRQX0FFU18yNTZfS0VZX0xFTjsKLSAgICBicmVhazsKK3Vuc2lnbmVk
IGludCBzcnRwX3Byb2ZpbGVfZ2V0X21hc3Rlcl9rZXlfbGVuZ3RoKHNydHBfcHJvZmlsZV90IHBy
b2ZpbGUpCit7CisgICAgc3dpdGNoIChwcm9maWxlKSB7CisgICAgY2FzZSBzcnRwX3Byb2ZpbGVf
YWVzMTI4X2NtX3NoYTFfODA6CisgICAgICAgIHJldHVybiBTUlRQX0FFU18xMjhfS0VZX0xFTjsK
KyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBzcnRwX3Byb2ZpbGVfYWVzMTI4X2NtX3NoYTFfMzI6
CisgICAgICAgIHJldHVybiBTUlRQX0FFU18xMjhfS0VZX0xFTjsKKyAgICAgICAgYnJlYWs7Cisg
ICAgY2FzZSBzcnRwX3Byb2ZpbGVfbnVsbF9zaGExXzgwOgorICAgICAgICByZXR1cm4gU1JUUF9B
RVNfMTI4X0tFWV9MRU47CisgICAgICAgIGJyZWFrOworICAgIGNhc2Ugc3J0cF9wcm9maWxlX2Fl
YWRfYWVzXzEyOF9nY206CisgICAgICAgIHJldHVybiBTUlRQX0FFU18xMjhfS0VZX0xFTjsKKyAg
ICAgICAgYnJlYWs7CisgICAgY2FzZSBzcnRwX3Byb2ZpbGVfYWVhZF9hZXNfMjU2X2djbToKKyAg
ICAgICAgcmV0dXJuIFNSVFBfQUVTXzI1Nl9LRVlfTEVOOworICAgICAgICBicmVhazsKICAgICAv
KiB0aGUgZm9sbG93aW5nIHByb2ZpbGVzIGFyZSBub3QgKHlldCkgc3VwcG9ydGVkICovCi0gIGNh
c2Ugc3J0cF9wcm9maWxlX251bGxfc2hhMV8zMjoKLSAgZGVmYXVsdDoKLSAgICByZXR1cm4gMDsg
IC8qIGluZGljYXRlIGVycm9yIGJ5IHJldHVybmluZyBhIHplcm8gKi8KLSAgfQorICAgIGNhc2Ug
c3J0cF9wcm9maWxlX251bGxfc2hhMV8zMjoKKyAgICBkZWZhdWx0OgorICAgICAgICByZXR1cm4g
MDsgLyogaW5kaWNhdGUgZXJyb3IgYnkgcmV0dXJuaW5nIGEgemVybyAqLworICAgIH0KIH0KIAot
dW5zaWduZWQgaW50Ci1zcnRwX3Byb2ZpbGVfZ2V0X21hc3Rlcl9zYWx0X2xlbmd0aChzcnRwX3By
b2ZpbGVfdCBwcm9maWxlKSB7Ci0KLSAgc3dpdGNoKHByb2ZpbGUpIHsKLSAgY2FzZSBzcnRwX3By
b2ZpbGVfYWVzMTI4X2NtX3NoYTFfODA6Ci0gICAgcmV0dXJuIFNSVFBfU0FMVF9MRU47Ci0gICAg
YnJlYWs7Ci0gIGNhc2Ugc3J0cF9wcm9maWxlX2FlczEyOF9jbV9zaGExXzMyOgotICAgIHJldHVy
biBTUlRQX1NBTFRfTEVOOwotICAgIGJyZWFrOwotICBjYXNlIHNydHBfcHJvZmlsZV9udWxsX3No
YTFfODA6Ci0gICAgcmV0dXJuIFNSVFBfU0FMVF9MRU47Ci0gICAgYnJlYWs7Ci0gIGNhc2Ugc3J0
cF9wcm9maWxlX2FlYWRfYWVzXzEyOF9nY206Ci0gICAgcmV0dXJuIFNSVFBfQUVBRF9TQUxUX0xF
TjsKLSAgICBicmVhazsKLSAgY2FzZSBzcnRwX3Byb2ZpbGVfYWVhZF9hZXNfMjU2X2djbToKLSAg
ICByZXR1cm4gU1JUUF9BRUFEX1NBTFRfTEVOOwotICAgIGJyZWFrOwordW5zaWduZWQgaW50IHNy
dHBfcHJvZmlsZV9nZXRfbWFzdGVyX3NhbHRfbGVuZ3RoKHNydHBfcHJvZmlsZV90IHByb2ZpbGUp
Cit7CisgICAgc3dpdGNoIChwcm9maWxlKSB7CisgICAgY2FzZSBzcnRwX3Byb2ZpbGVfYWVzMTI4
X2NtX3NoYTFfODA6CisgICAgICAgIHJldHVybiBTUlRQX1NBTFRfTEVOOworICAgICAgICBicmVh
azsKKyAgICBjYXNlIHNydHBfcHJvZmlsZV9hZXMxMjhfY21fc2hhMV8zMjoKKyAgICAgICAgcmV0
dXJuIFNSVFBfU0FMVF9MRU47CisgICAgICAgIGJyZWFrOworICAgIGNhc2Ugc3J0cF9wcm9maWxl
X251bGxfc2hhMV84MDoKKyAgICAgICAgcmV0dXJuIFNSVFBfU0FMVF9MRU47CisgICAgICAgIGJy
ZWFrOworICAgIGNhc2Ugc3J0cF9wcm9maWxlX2FlYWRfYWVzXzEyOF9nY206CisgICAgICAgIHJl
dHVybiBTUlRQX0FFQURfU0FMVF9MRU47CisgICAgICAgIGJyZWFrOworICAgIGNhc2Ugc3J0cF9w
cm9maWxlX2FlYWRfYWVzXzI1Nl9nY206CisgICAgICAgIHJldHVybiBTUlRQX0FFQURfU0FMVF9M
RU47CisgICAgICAgIGJyZWFrOwogICAgIC8qIHRoZSBmb2xsb3dpbmcgcHJvZmlsZXMgYXJlIG5v
dCAoeWV0KSBzdXBwb3J0ZWQgKi8KLSAgY2FzZSBzcnRwX3Byb2ZpbGVfbnVsbF9zaGExXzMyOgot
ICBkZWZhdWx0OgotICAgIHJldHVybiAwOyAgLyogaW5kaWNhdGUgZXJyb3IgYnkgcmV0dXJuaW5n
IGEgemVybyAqLwotICB9CisgICAgY2FzZSBzcnRwX3Byb2ZpbGVfbnVsbF9zaGExXzMyOgorICAg
IGRlZmF1bHQ6CisgICAgICAgIHJldHVybiAwOyAvKiBpbmRpY2F0ZSBlcnJvciBieSByZXR1cm5p
bmcgYSB6ZXJvICovCisgICAgfQogfQogCi1zcnRwX2Vycl9zdGF0dXNfdAotc3J0cF9nZXRfcHJv
dGVjdF90cmFpbGVyX2xlbmd0aChzcnRwX3Qgc2Vzc2lvbiwKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgdWludDMyX3QgdXNlX21raSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgdWludDMyX3QgbWtpX2luZGV4LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB1aW50MzJfdCAqbGVuZ3RoKSAKK3NydHBfZXJyX3N0YXR1c190IHN0cmVhbV9nZXRfcHJvdGVj
dF90cmFpbGVyX2xlbmd0aChzcnRwX3N0cmVhbV9jdHhfdCAqc3RyZWFtLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IGlzX3J0cCwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50
MzJfdCB1c2VfbWtpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHVpbnQzMl90IG1raV9pbmRleCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCAqbGVuZ3RoKQogewotICAgIHNydHBf
c3RyZWFtX2N0eF90ICpzdHJlYW07Ci0KLSAgICBpZiAoc2Vzc2lvbiA9PSBOVUxMKQotICAgICAg
cmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW07Ci0KICAgICAqbGVuZ3RoID0gMDsKIAot
ICAgIC8qIFRyeSBvYnRhaW5pbmcgc3RyZWFtIGZyb20gc3RyZWFtX2xpc3QgKi8KLSAgICBzdHJl
YW0gPSBzZXNzaW9uLT5zdHJlYW1fbGlzdDsKLQotICAgIGlmIChzdHJlYW0gPT0gTlVMTCkgewot
ICAgICAgICAvKiBUcnkgb2J0YWluaW5nIHRoZSB0ZW1wbGF0ZSBzdHJlYW0gKi8KLSAgICAgICAg
c3RyZWFtID0gc2Vzc2lvbi0+c3RyZWFtX3RlbXBsYXRlOwotICAgIH0KLQotICAgIGlmIChzdHJl
YW0gPT0gTlVMTCkgewotICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJhbTsK
LSAgICB9CisgICAgc3J0cF9zZXNzaW9uX2tleXNfdCAqc2Vzc2lvbl9rZXk7CiAKICAgICBpZiAo
dXNlX21raSkgewotICAgICAgIGlmIChta2lfaW5kZXggPiBzdHJlYW0tPm51bV9tYXN0ZXJfa2V5
cykKLSAgICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfbWtpOworICAgICAgICBp
ZiAobWtpX2luZGV4ID49IHN0cmVhbS0+bnVtX21hc3Rlcl9rZXlzKSB7CisgICAgICAgICAgICBy
ZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2JhZF9ta2k7CisgICAgICAgIH0KKyAgICAgICAgc2Vzc2lv
bl9rZXkgPSAmc3RyZWFtLT5zZXNzaW9uX2tleXNbbWtpX2luZGV4XTsKIAotICAgICAgICpsZW5n
dGggKz0gc3RyZWFtLT5zZXNzaW9uX2tleXNbbWtpX2luZGV4XS5ta2lfc2l6ZTsKLSAgICAgICAq
bGVuZ3RoICs9IHNydHBfYXV0aF9nZXRfdGFnX2xlbmd0aChzdHJlYW0tPnNlc3Npb25fa2V5c1tt
a2lfaW5kZXhdLnJ0cF9hdXRoKTsKKyAgICAgICAgKmxlbmd0aCArPSBzZXNzaW9uX2tleS0+bWtp
X3NpemU7CisKKyAgICB9IGVsc2UgeworICAgICAgICBzZXNzaW9uX2tleSA9ICZzdHJlYW0tPnNl
c3Npb25fa2V5c1swXTsKKyAgICB9CisgICAgaWYgKGlzX3J0cCkgeworICAgICAgICAqbGVuZ3Ro
ICs9IHNydHBfYXV0aF9nZXRfdGFnX2xlbmd0aChzZXNzaW9uX2tleS0+cnRwX2F1dGgpOwogICAg
IH0gZWxzZSB7Ci0gICAgICAgKmxlbmd0aCArPSBzcnRwX2F1dGhfZ2V0X3RhZ19sZW5ndGgoc3Ry
ZWFtLT5zZXNzaW9uX2tleXNbMF0ucnRwX2F1dGgpOworICAgICAgICAqbGVuZ3RoICs9IHNydHBf
YXV0aF9nZXRfdGFnX2xlbmd0aChzZXNzaW9uX2tleS0+cnRjcF9hdXRoKTsKKyAgICAgICAgKmxl
bmd0aCArPSBzaXplb2Yoc3J0Y3BfdHJhaWxlcl90KTsKICAgICB9CiAKICAgICByZXR1cm4gc3J0
cF9lcnJfc3RhdHVzX29rOwogfQogCi1zcnRwX2Vycl9zdGF0dXNfdAotc3J0cF9nZXRfcHJvdGVj
dF9ydGNwX3RyYWlsZXJfbGVuZ3RoKHNydHBfdCBzZXNzaW9uLAotICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IHVzZV9ta2ksCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgdWludDMyX3QgbWtpX2luZGV4LAotICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHVpbnQzMl90ICpsZW5ndGgpIAorc3J0cF9lcnJfc3RhdHVzX3Qg
Z2V0X3Byb3RlY3RfdHJhaWxlcl9sZW5ndGgoc3J0cF90IHNlc3Npb24sCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBpc19ydHAsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCB1c2VfbWtpLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgbWtp
X2luZGV4LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWlu
dDMyX3QgKmxlbmd0aCkKIHsKICAgICBzcnRwX3N0cmVhbV9jdHhfdCAqc3RyZWFtOwogCi0gICAg
aWYgKHNlc3Npb24gPT0gTlVMTCkKLSAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYmFkX3Bh
cmFtOworICAgIGlmIChzZXNzaW9uID09IE5VTEwpIHsKKyAgICAgICAgcmV0dXJuIHNydHBfZXJy
X3N0YXR1c19iYWRfcGFyYW07CisgICAgfQogCi0gICAgKmxlbmd0aCA9IDA7CisgICAgaWYgKHNl
c3Npb24tPnN0cmVhbV90ZW1wbGF0ZSA9PSBOVUxMICYmIHNlc3Npb24tPnN0cmVhbV9saXN0ID09
IE5VTEwpIHsKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW07CisgICAg
fQogCi0gICAgLyogVHJ5IG9idGFpbmluZyBzdHJlYW0gZnJvbSBzdHJlYW1fbGlzdCAqLwotICAg
IHN0cmVhbSA9IHNlc3Npb24tPnN0cmVhbV9saXN0OworICAgICpsZW5ndGggPSAwOwogCi0gICAg
aWYgKHN0cmVhbSA9PSBOVUxMKSB7Ci0gICAgICAgIC8qIFRyeSBvYnRhaW5pbmcgdGhlIHRlbXBs
YXRlIHN0cmVhbSAqLwotICAgICAgICBzdHJlYW0gPSBzZXNzaW9uLT5zdHJlYW1fdGVtcGxhdGU7
Ci0gICAgfQorICAgIHN0cmVhbSA9IHNlc3Npb24tPnN0cmVhbV90ZW1wbGF0ZTsKIAotICAgIGlm
IChzdHJlYW0gPT0gTlVMTCkgewotICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2JhZF9w
YXJhbTsKKyAgICBpZiAoc3RyZWFtICE9IE5VTEwpIHsKKyAgICAgICAgc3RyZWFtX2dldF9wcm90
ZWN0X3RyYWlsZXJfbGVuZ3RoKHN0cmVhbSwgaXNfcnRwLCB1c2VfbWtpLCBta2lfaW5kZXgsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZW5ndGgpOwogICAgIH0K
IAotICAgIGlmICh1c2VfbWtpKSB7Ci0gICAgICAgaWYgKG1raV9pbmRleCA+IHN0cmVhbS0+bnVt
X21hc3Rlcl9rZXlzKQotICAgICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2JhZF9ta2k7
CisgICAgc3RyZWFtID0gc2Vzc2lvbi0+c3RyZWFtX2xpc3Q7CiAKLSAgICAgICAqbGVuZ3RoICs9
IHN0cmVhbS0+c2Vzc2lvbl9rZXlzW21raV9pbmRleF0ubWtpX3NpemU7Ci0gICAgICAgKmxlbmd0
aCArPSBzcnRwX2F1dGhfZ2V0X3RhZ19sZW5ndGgoc3RyZWFtLT5zZXNzaW9uX2tleXNbbWtpX2lu
ZGV4XS5ydGNwX2F1dGgpOwotICAgIH0gZWxzZSB7Ci0gICAgICAgKmxlbmd0aCArPSBzcnRwX2F1
dGhfZ2V0X3RhZ19sZW5ndGgoc3RyZWFtLT5zZXNzaW9uX2tleXNbMF0ucnRjcF9hdXRoKTsKKyAg
ICB3aGlsZSAoc3RyZWFtICE9IE5VTEwpIHsKKyAgICAgICAgdWludDMyX3QgdGVtcF9sZW5ndGg7
CisgICAgICAgIGlmIChzdHJlYW1fZ2V0X3Byb3RlY3RfdHJhaWxlcl9sZW5ndGgoc3RyZWFtLCBp
c19ydHAsIHVzZV9ta2ksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgbWtpX2luZGV4LCAmdGVtcF9sZW5ndGgpID09CisgICAgICAgICAgICBzcnRwX2Vycl9z
dGF0dXNfb2spIHsKKyAgICAgICAgICAgIGlmICh0ZW1wX2xlbmd0aCA+ICpsZW5ndGgpIHsKKyAg
ICAgICAgICAgICAgICAqbGVuZ3RoID0gdGVtcF9sZW5ndGg7CisgICAgICAgICAgICB9CisgICAg
ICAgIH0KKyAgICAgICAgc3RyZWFtID0gc3RyZWFtLT5uZXh0OwogICAgIH0KLSAKLSAgICAqbGVu
Z3RoICs9IHNpemVvZihzcnRjcF90cmFpbGVyX3QpOwogCiAgICAgcmV0dXJuIHNydHBfZXJyX3N0
YXR1c19vazsKIH0KIAorc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9nZXRfcHJvdGVjdF90cmFpbGVy
X2xlbmd0aChzcnRwX3Qgc2Vzc2lvbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgdWludDMyX3QgdXNlX21raSwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgbWtpX2luZGV4LAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCAqbGVu
Z3RoKQoreworICAgIHJldHVybiBnZXRfcHJvdGVjdF90cmFpbGVyX2xlbmd0aChzZXNzaW9uLCAx
LCB1c2VfbWtpLCBta2lfaW5kZXgsIGxlbmd0aCk7Cit9CisKK3NydHBfZXJyX3N0YXR1c190IHNy
dHBfZ2V0X3Byb3RlY3RfcnRjcF90cmFpbGVyX2xlbmd0aChzcnRwX3Qgc2Vzc2lvbiwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJf
dCB1c2VfbWtpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHVpbnQzMl90IG1raV9pbmRleCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCAqbGVuZ3RoKQoreworICAgIHJl
dHVybiBnZXRfcHJvdGVjdF90cmFpbGVyX2xlbmd0aChzZXNzaW9uLCAwLCB1c2VfbWtpLCBta2lf
aW5kZXgsIGxlbmd0aCk7Cit9CiAKIC8qCiAgKiBTUlRQIGRlYnVnIGludGVyZmFjZQpAQCAtNDU5
MSwyNiArNDY1NiwzNCBAQCBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2xpc3RfZGVidWdfbW9kdWxl
cyh2b2lkKQogICovCiAKIHN0YXRpYyBzcnRwX2xvZ19oYW5kbGVyX2Z1bmNfdCAqc3J0cF9sb2df
aGFuZGxlciA9IE5VTEw7Ci1zdGF0aWMgdm9pZCAqIHNydHBfbG9nX2hhbmRsZXJfZGF0YSA9IE5V
TEw7CitzdGF0aWMgdm9pZCAqc3J0cF9sb2dfaGFuZGxlcl9kYXRhID0gTlVMTDsKIAotdm9pZCBz
cnRwX2Vycl9oYW5kbGVyKHNydHBfZXJyX3JlcG9ydGluZ19sZXZlbF90IGxldmVsLCBjb25zdCBj
aGFyICogbXNnKQordm9pZCBzcnRwX2Vycl9oYW5kbGVyKHNydHBfZXJyX3JlcG9ydGluZ19sZXZl
bF90IGxldmVsLCBjb25zdCBjaGFyICptc2cpCiB7CiAgICAgaWYgKHNydHBfbG9nX2hhbmRsZXIp
IHsKICAgICAgICAgc3J0cF9sb2dfbGV2ZWxfdCBsb2dfbGV2ZWwgPSBzcnRwX2xvZ19sZXZlbF9l
cnJvcjsKLSAgICAgICAgc3dpdGNoKGxldmVsKSB7Ci0gICAgICAgICAgICBjYXNlIHNydHBfZXJy
X2xldmVsX2Vycm9yOiBsb2dfbGV2ZWwgPSBzcnRwX2xvZ19sZXZlbF9lcnJvcjsgYnJlYWs7Ci0g
ICAgICAgICAgICBjYXNlIHNydHBfZXJyX2xldmVsX3dhcm5pbmc6IGxvZ19sZXZlbCA9IHNydHBf
bG9nX2xldmVsX3dhcm5pbmc7IGJyZWFrOwotICAgICAgICAgICAgY2FzZSBzcnRwX2Vycl9sZXZl
bF9pbmZvOiBsb2dfbGV2ZWwgPSBzcnRwX2xvZ19sZXZlbF9pbmZvOyBicmVhazsKLSAgICAgICAg
ICAgIGNhc2Ugc3J0cF9lcnJfbGV2ZWxfZGVidWc6IGxvZ19sZXZlbCA9IHNydHBfbG9nX2xldmVs
X2RlYnVnOyBicmVhazsKKyAgICAgICAgc3dpdGNoIChsZXZlbCkgeworICAgICAgICBjYXNlIHNy
dHBfZXJyX2xldmVsX2Vycm9yOgorICAgICAgICAgICAgbG9nX2xldmVsID0gc3J0cF9sb2dfbGV2
ZWxfZXJyb3I7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSBzcnRwX2Vycl9sZXZl
bF93YXJuaW5nOgorICAgICAgICAgICAgbG9nX2xldmVsID0gc3J0cF9sb2dfbGV2ZWxfd2Fybmlu
ZzsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIHNydHBfZXJyX2xldmVsX2luZm86
CisgICAgICAgICAgICBsb2dfbGV2ZWwgPSBzcnRwX2xvZ19sZXZlbF9pbmZvOworICAgICAgICAg
ICAgYnJlYWs7CisgICAgICAgIGNhc2Ugc3J0cF9lcnJfbGV2ZWxfZGVidWc6CisgICAgICAgICAg
ICBsb2dfbGV2ZWwgPSBzcnRwX2xvZ19sZXZlbF9kZWJ1ZzsKKyAgICAgICAgICAgIGJyZWFrOwog
ICAgICAgICB9CiAKICAgICAgICAgc3J0cF9sb2dfaGFuZGxlcihsb2dfbGV2ZWwsIG1zZywgc3J0
cF9sb2dfaGFuZGxlcl9kYXRhKTsKICAgICB9CiB9CiAKLXNydHBfZXJyX3N0YXR1c190IHNydHBf
aW5zdGFsbF9sb2dfaGFuZGxlcihzcnRwX2xvZ19oYW5kbGVyX2Z1bmNfdCBmdW5jLCB2b2lkICog
ZGF0YSkKK3NydHBfZXJyX3N0YXR1c190IHNydHBfaW5zdGFsbF9sb2dfaGFuZGxlcihzcnRwX2xv
Z19oYW5kbGVyX2Z1bmNfdCBmdW5jLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHZvaWQgKmRhdGEpCiB7Ci0KICAgICAvKgogICAgICAqIG5vdGUgdGhhdCB3ZSBh
Y2NlcHQgTlVMTCBhcmd1bWVudHMgaW50ZW50aW9uYWxseSAtIGNhbGxpbmcgdGhpcwogICAgICAq
IGZ1bmN0aW9uIHdpdGggYSBOVUxMIGFyZ3VtZW50cyByZW1vdmVzIGEgbG9nIGhhbmRsZXIgdGhh
dCdzCkBAIC00NjI4LDggKzQ3MDEsMTAgQEAgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9pbnN0YWxs
X2xvZ19oYW5kbGVyKHNydHBfbG9nX2hhbmRsZXJfZnVuY190IGZ1bmMsIHZvaWQgKgogICAgIHJl
dHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAKLXNydHBfZXJyX3N0YXR1c190Ci1zcnRwX3Nl
dF9zdHJlYW1fcm9jKHNydHBfdCBzZXNzaW9uLCB1aW50MzJfdCBzc3JjLCB1aW50MzJfdCByb2Mp
IHsKK3NydHBfZXJyX3N0YXR1c190IHNydHBfc2V0X3N0cmVhbV9yb2Moc3J0cF90IHNlc3Npb24s
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IHNzcmMsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IHJvYykKK3sKICAg
ICBzcnRwX3N0cmVhbV90IHN0cmVhbTsKIAogICAgIHN0cmVhbSA9IHNydHBfZ2V0X3N0cmVhbShz
ZXNzaW9uLCBodG9ubChzc3JjKSk7CkBAIC00NjQxLDggKzQ3MTYsMTAgQEAgc3J0cF9zZXRfc3Ry
ZWFtX3JvYyhzcnRwX3Qgc2Vzc2lvbiwgdWludDMyX3Qgc3NyYywgdWludDMyX3Qgcm9jKSB7CiAg
ICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0KIAotc3J0cF9lcnJfc3RhdHVzX3QKLXNy
dHBfZ2V0X3N0cmVhbV9yb2Moc3J0cF90IHNlc3Npb24sIHVpbnQzMl90IHNzcmMsIHVpbnQzMl90
ICpyb2MpIHsKK3NydHBfZXJyX3N0YXR1c190IHNydHBfZ2V0X3N0cmVhbV9yb2Moc3J0cF90IHNl
c3Npb24sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IHNz
cmMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90ICpyb2Mp
Cit7CiAgICAgc3J0cF9zdHJlYW1fdCBzdHJlYW07CiAKICAgICBzdHJlYW0gPSBzcnRwX2dldF9z
dHJlYW0oc2Vzc2lvbiwgaHRvbmwoc3NyYykpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL3Rlc3QvLmdpdGF0dHJpYnV0
ZXMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNy
dHAvdGVzdC8uZ2l0YXR0cmlidXRlcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZjcz
N2E5NGM3NjgwYzcyNTczMTdjNGI1NTE4YzM4YTBhNjk5ZjUxMC4uMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvdGVzdC8uZ2l0YXR0cmlidXRlcworKysgL2Rldi9u
dWxsCkBAIC0xLDIgKzAsMCBAQAotc3J0cF9kcml2ZXIuYyBzdm4tcHJvcGVydGllcz1hbGxvdy10
YWJzPW9uCi1ydHAuaCBzdm4tcHJvcGVydGllcz1hbGxvdy10YWJzPW9uCmRpZmYgLS1naXQgYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvdGVz
dC9jdXRlc3QuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvbGlic3J0cC90ZXN0L2N1dGVzdC5oCmluZGV4IGE5NGUxNDRhYjVhNmI5N2FmNmI5ZDQ4Mjkx
YTE3ZDdjZWViNzY5NzcuLmY0NjYyNmQzOTU2YWY2NWY1OGYxYjE0MzRkYjM3ZGI0NTdkNTZhMjIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvbGlic3J0cC90ZXN0L2N1dGVzdC5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC90ZXN0L2N1dGVzdC5oCkBAIC0xMCwxMCArMTAs
MTAgQEAKICAqIHRoZSByaWdodHMgdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNo
LCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLAogICogYW5kL29yIHNlbGwgY29waWVzIG9mIHRoZSBT
b2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlCiAgKiBTb2Z0d2FyZSBp
cyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
OgotICogCisgKgogICogVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlz
c2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW4KICAqIGFsbCBjb3BpZXMgb3Igc3Vic3Rh
bnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLgotICogCisgKgogICogVEhFIFNPRlRXQVJF
IElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJF
U1MKICAqIE9SIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLAogICogRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBV
UlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCkBAIC0yNiw3
ICsyNiw2IEBACiAjaWZuZGVmIENVVEVTVF9IX18KICNkZWZpbmUgQ1VURVNUX0hfXwogCi0KIC8q
KioqKioqKioqKioqKioqKioqKioqKioKICAqKiogUHVibGljIGludGVyZmFjZSAqKioKICAqKioq
KioqKioqKioqKioqKioqKioqKiovCkBAIC01Niw4ICs1NSw3IEBACiAgKgogICogICB2b2lkIHRl
c3RfZnVuYyh2b2lkKTsKICAqLwotI2RlZmluZSBURVNUX0xJU1QgICAgICAgICAgICAgIGNvbnN0
IHN0cnVjdCB0ZXN0X18gdGVzdF9saXN0X19bXQotCisjZGVmaW5lIFRFU1RfTElTVCBjb25zdCBz
dHJ1Y3QgdGVzdF9fIHRlc3RfbGlzdF9fW10KIAogLyogTWFjcm9zIGZvciB0ZXN0aW5nIHdoZXRo
ZXIgYW4gdW5pdCB0ZXN0IHN1Y2NlZWRzIG9yIGZhaWxzLiBUaGVzZSBtYWNyb3MKICAqIGNhbiBi
ZSB1c2VkIGFyYml0cmFyaWx5IGluIGZ1bmN0aW9ucyBpbXBsZW1lbnRpbmcgdGhlIHVuaXQgdGVz
dHMuCkBAIC03OCw5ICs3Niw5IEBACiAgKiAgICAgICBURVNUX0NIRUNLKHB0ci0+bWVtYmVyMiA+
IDIwMCk7CiAgKiAgIH0KICAqLwotI2RlZmluZSBURVNUX0NIRUNLXyhjb25kLC4uLikgIHRlc3Rf
Y2hlY2tfXygoY29uZCksIF9fRklMRV9fLCBfX0xJTkVfXywgX19WQV9BUkdTX18pCi0jZGVmaW5l
IFRFU1RfQ0hFQ0soY29uZCkgICAgICAgdGVzdF9jaGVja19fKChjb25kKSwgX19GSUxFX18sIF9f
TElORV9fLCAiJXMiLCAjY29uZCkKLQorI2RlZmluZSBURVNUX0NIRUNLXyhjb25kLCAuLi4pICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICB0ZXN0
X2NoZWNrX18oKGNvbmQpLCBfX0ZJTEVfXywgX19MSU5FX18sIF9fVkFfQVJHU19fKQorI2RlZmlu
ZSBURVNUX0NIRUNLKGNvbmQpIHRlc3RfY2hlY2tfXygoY29uZCksIF9fRklMRV9fLCBfX0xJTkVf
XywgIiVzIiwgI2NvbmQpCiAKIC8qKioqKioqKioqKioqKioqKioqKioqCiAgKioqIEltcGxlbWVu
dGF0aW9uICoqKgpAQCAtOTQsNDcgKzkyLDQzIEBACiAjaW5jbHVkZSA8c3RyaW5nLmg+CiAKICNp
ZiBkZWZpbmVkKHVuaXgpIHx8IGRlZmluZWQoX191bml4X18pIHx8IGRlZmluZWQoX191bml4KSB8
fCBkZWZpbmVkKF9fQVBQTEVfXykKLSAgICAjZGVmaW5lIENVVEVTVF9VTklYX18gICAgMQotICAg
ICNpbmNsdWRlIDxlcnJuby5oPgotICAgICNpbmNsdWRlIDx1bmlzdGQuaD4KLSAgICAjaW5jbHVk
ZSA8c3lzL3R5cGVzLmg+Ci0gICAgI2luY2x1ZGUgPHN5cy93YWl0Lmg+Ci0gICAgI2luY2x1ZGUg
PHNpZ25hbC5oPgorI2RlZmluZSBDVVRFU1RfVU5JWF9fIDEKKyNpbmNsdWRlIDxlcnJuby5oPgor
I2luY2x1ZGUgPHVuaXN0ZC5oPgorI2luY2x1ZGUgPHN5cy90eXBlcy5oPgorI2luY2x1ZGUgPHN5
cy93YWl0Lmg+CisjaW5jbHVkZSA8c2lnbmFsLmg+CiAjZW5kaWYKIAogI2lmIGRlZmluZWQoX1dJ
TjMyKSB8fCBkZWZpbmVkKF9fV0lOMzJfXykgfHwgZGVmaW5lZChfX1dJTkRPV1NfXykKLSAgICAj
ZGVmaW5lIENVVEVTVF9XSU5fXyAgICAgMQotICAgICNpbmNsdWRlIDx3aW5kb3dzLmg+Ci0gICAg
I2luY2x1ZGUgPGlvLmg+CisjZGVmaW5lIENVVEVTVF9XSU5fXyAxCisjaW5jbHVkZSA8d2luZG93
cy5oPgorI2luY2x1ZGUgPGlvLmg+CiAjZW5kaWYKIAogI2lmZGVmIF9fY3BsdXNwbHVzCi0gICAg
I2luY2x1ZGUgPGV4Y2VwdGlvbj4KKyNpbmNsdWRlIDxleGNlcHRpb24+CiAjZW5kaWYKIAotCiAv
KiBOb3RlIG91ciBnbG9iYWwgcHJpdmF0ZSBpZGVudGlmaWVycyBlbmQgd2l0aCAnX18nIHRvIG1p
dGlnYXRlIHJpc2sgb2YgY2xhc2gKICAqIHdpdGggdGhlIHVuaXQgdGVzdHMgaW1wbGVtZW50YXRp
b24uICovCiAKLQogI2lmZGVmIF9fY3BsdXNwbHVzCi0gICAgZXh0ZXJuICJDIiB7CitleHRlcm4g
IkMiIHsKICNlbmRpZgogCi0KIHN0cnVjdCB0ZXN0X18gewotICAgIGNvbnN0IGNoYXIqIG5hbWU7
CisgICAgY29uc3QgY2hhciAqbmFtZTsKICAgICB2b2lkICgqZnVuYykodm9pZCk7CiB9OwogCiBl
eHRlcm4gY29uc3Qgc3RydWN0IHRlc3RfXyB0ZXN0X2xpc3RfX1tdOwogCi1pbnQgdGVzdF9jaGVj
a19fKGludCBjb25kLCBjb25zdCBjaGFyKiBmaWxlLCBpbnQgbGluZSwgY29uc3QgY2hhciogZm10
LCAuLi4pOwotCitpbnQgdGVzdF9jaGVja19fKGludCBjb25kLCBjb25zdCBjaGFyICpmaWxlLCBp
bnQgbGluZSwgY29uc3QgY2hhciAqZm10LCAuLi4pOwogCiAjaWZuZGVmIFRFU1RfTk9fTUFJTgog
Ci1zdGF0aWMgY2hhciogdGVzdF9hcmd2MF9fID0gTlVMTDsKK3N0YXRpYyBjaGFyICp0ZXN0X2Fy
Z3YwX18gPSBOVUxMOwogc3RhdGljIGludCB0ZXN0X2NvdW50X18gPSAwOwogc3RhdGljIGludCB0
ZXN0X25vX2V4ZWNfXyA9IDA7CiBzdGF0aWMgaW50IHRlc3Rfbm9fc3VtbWFyeV9fID0gMDsKQEAg
LTE0MywyMSArMTM3LDIwIEBAIHN0YXRpYyBpbnQgdGVzdF9za2lwX21vZGVfXyA9IDA7CiBzdGF0
aWMgaW50IHRlc3Rfc3RhdF9mYWlsZWRfdW5pdHNfXyA9IDA7CiBzdGF0aWMgaW50IHRlc3Rfc3Rh
dF9ydW5fdW5pdHNfXyA9IDA7CiAKLXN0YXRpYyBjb25zdCBzdHJ1Y3QgdGVzdF9fKiB0ZXN0X2N1
cnJlbnRfdW5pdF9fID0gTlVMTDsKK3N0YXRpYyBjb25zdCBzdHJ1Y3QgdGVzdF9fICp0ZXN0X2N1
cnJlbnRfdW5pdF9fID0gTlVMTDsKIHN0YXRpYyBpbnQgdGVzdF9jdXJyZW50X2FscmVhZHlfbG9n
Z2VkX18gPSAwOwogc3RhdGljIGludCB0ZXN0X3ZlcmJvc2VfbGV2ZWxfXyA9IDI7CiBzdGF0aWMg
aW50IHRlc3RfY3VycmVudF9mYWlsdXJlc19fID0gMDsKIHN0YXRpYyBpbnQgdGVzdF9jb2xvcml6
ZV9fID0gMDsKIAotI2RlZmluZSBDVVRFU1RfQ09MT1JfREVGQVVMVF9fICAgICAgICAgICAgICAg
MAotI2RlZmluZSBDVVRFU1RfQ09MT1JfR1JFRU5fXyAgICAgICAgICAgICAgICAgMQotI2RlZmlu
ZSBDVVRFU1RfQ09MT1JfUkVEX18gICAgICAgICAgICAgICAgICAgMgotI2RlZmluZSBDVVRFU1Rf
Q09MT1JfREVGQVVMVF9JTlRFTlNJVkVfXyAgICAgMwotI2RlZmluZSBDVVRFU1RfQ09MT1JfR1JF
RU5fSU5URU5TSVZFX18gICAgICAgNAotI2RlZmluZSBDVVRFU1RfQ09MT1JfUkVEX0lOVEVOU0lW
RV9fICAgICAgICAgNQorI2RlZmluZSBDVVRFU1RfQ09MT1JfREVGQVVMVF9fIDAKKyNkZWZpbmUg
Q1VURVNUX0NPTE9SX0dSRUVOX18gMQorI2RlZmluZSBDVVRFU1RfQ09MT1JfUkVEX18gMgorI2Rl
ZmluZSBDVVRFU1RfQ09MT1JfREVGQVVMVF9JTlRFTlNJVkVfXyAzCisjZGVmaW5lIENVVEVTVF9D
T0xPUl9HUkVFTl9JTlRFTlNJVkVfXyA0CisjZGVmaW5lIENVVEVTVF9DT0xPUl9SRURfSU5URU5T
SVZFX18gNQogCi1zdGF0aWMgc2l6ZV90Ci10ZXN0X3ByaW50X2luX2NvbG9yX18oaW50IGNvbG9y
LCBjb25zdCBjaGFyKiBmbXQsIC4uLikKK3N0YXRpYyBzaXplX3QgdGVzdF9wcmludF9pbl9jb2xv
cl9fKGludCBjb2xvciwgY29uc3QgY2hhciAqZm10LCAuLi4pCiB7CiAgICAgdmFfbGlzdCBhcmdz
OwogICAgIGNoYXIgYnVmZmVyWzI1Nl07CkBAIC0xNjYsMjIgKzE1OSwzNCBAQCB0ZXN0X3ByaW50
X2luX2NvbG9yX18oaW50IGNvbG9yLCBjb25zdCBjaGFyKiBmbXQsIC4uLikKICAgICB2YV9zdGFy
dChhcmdzLCBmbXQpOwogICAgIHZzbnByaW50ZihidWZmZXIsIHNpemVvZihidWZmZXIpLCBmbXQs
IGFyZ3MpOwogICAgIHZhX2VuZChhcmdzKTsKLSAgICBidWZmZXJbc2l6ZW9mKGJ1ZmZlciktMV0g
PSAnXDAnOworICAgIGJ1ZmZlcltzaXplb2YoYnVmZmVyKSAtIDFdID0gJ1wwJzsKIAotICAgIGlm
KCF0ZXN0X2NvbG9yaXplX18pIHsKKyAgICBpZiAoIXRlc3RfY29sb3JpemVfXykgewogICAgICAg
ICByZXR1cm4gcHJpbnRmKCIlcyIsIGJ1ZmZlcik7CiAgICAgfQogCiAjaWYgZGVmaW5lZCBDVVRF
U1RfVU5JWF9fCiAgICAgewotICAgICAgICBjb25zdCBjaGFyKiBjb2xfc3RyOwotICAgICAgICBz
d2l0Y2goY29sb3IpIHsKLSAgICAgICAgICAgIGNhc2UgQ1VURVNUX0NPTE9SX0dSRUVOX186ICAg
ICAgICAgICAgIGNvbF9zdHIgPSAiXDAzM1swOzMybSI7IGJyZWFrOwotICAgICAgICAgICAgY2Fz
ZSBDVVRFU1RfQ09MT1JfUkVEX186ICAgICAgICAgICAgICAgY29sX3N0ciA9ICJcMDMzWzA7MzFt
IjsgYnJlYWs7Ci0gICAgICAgICAgICBjYXNlIENVVEVTVF9DT0xPUl9HUkVFTl9JTlRFTlNJVkVf
XzogICBjb2xfc3RyID0gIlwwMzNbMTszMm0iOyBicmVhazsKLSAgICAgICAgICAgIGNhc2UgQ1VU
RVNUX0NPTE9SX1JFRF9JTlRFTlNJVkVfXzogICAgIGNvbF9zdHIgPSAiXDAzM1sxOzMwbSI7IGJy
ZWFrOwotICAgICAgICAgICAgY2FzZSBDVVRFU1RfQ09MT1JfREVGQVVMVF9JTlRFTlNJVkVfXzog
Y29sX3N0ciA9ICJcMDMzWzFtIjsgYnJlYWs7Ci0gICAgICAgICAgICBkZWZhdWx0OiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBjb2xfc3RyID0gIlwwMzNbMG0iOyBicmVhazsKKyAgICAg
ICAgY29uc3QgY2hhciAqY29sX3N0cjsKKyAgICAgICAgc3dpdGNoIChjb2xvcikgeworICAgICAg
ICBjYXNlIENVVEVTVF9DT0xPUl9HUkVFTl9fOgorICAgICAgICAgICAgY29sX3N0ciA9ICJcMDMz
WzA7MzJtIjsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIENVVEVTVF9DT0xPUl9S
RURfXzoKKyAgICAgICAgICAgIGNvbF9zdHIgPSAiXDAzM1swOzMxbSI7CisgICAgICAgICAgICBi
cmVhazsKKyAgICAgICAgY2FzZSBDVVRFU1RfQ09MT1JfR1JFRU5fSU5URU5TSVZFX186CisgICAg
ICAgICAgICBjb2xfc3RyID0gIlwwMzNbMTszMm0iOworICAgICAgICAgICAgYnJlYWs7CisgICAg
ICAgIGNhc2UgQ1VURVNUX0NPTE9SX1JFRF9JTlRFTlNJVkVfXzoKKyAgICAgICAgICAgIGNvbF9z
dHIgPSAiXDAzM1sxOzMwbSI7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSBDVVRF
U1RfQ09MT1JfREVGQVVMVF9JTlRFTlNJVkVfXzoKKyAgICAgICAgICAgIGNvbF9zdHIgPSAiXDAz
M1sxbSI7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAg
IGNvbF9zdHIgPSAiXDAzM1swbSI7CisgICAgICAgICAgICBicmVhazsKICAgICAgICAgfQogICAg
ICAgICBwcmludGYoIiVzIiwgY29sX3N0cik7CiAgICAgICAgIG4gPSBwcmludGYoIiVzIiwgYnVm
ZmVyKTsKQEAgLTE5NywxNSArMjAyLDI4IEBAIHRlc3RfcHJpbnRfaW5fY29sb3JfXyhpbnQgY29s
b3IsIGNvbnN0IGNoYXIqIGZtdCwgLi4uKQogICAgICAgICBoID0gR2V0U3RkSGFuZGxlKFNURF9P
VVRQVVRfSEFORExFKTsKICAgICAgICAgR2V0Q29uc29sZVNjcmVlbkJ1ZmZlckluZm8oaCwgJmlu
Zm8pOwogCi0gICAgICAgIHN3aXRjaChjb2xvcikgewotICAgICAgICAgICAgY2FzZSBDVVRFU1Rf
Q09MT1JfR1JFRU5fXzogICAgICAgICAgICAgYXR0ciA9IEZPUkVHUk9VTkRfR1JFRU47IGJyZWFr
OwotICAgICAgICAgICAgY2FzZSBDVVRFU1RfQ09MT1JfUkVEX186ICAgICAgICAgICAgICAgYXR0
ciA9IEZPUkVHUk9VTkRfUkVEOyBicmVhazsKLSAgICAgICAgICAgIGNhc2UgQ1VURVNUX0NPTE9S
X0dSRUVOX0lOVEVOU0lWRV9fOiAgIGF0dHIgPSBGT1JFR1JPVU5EX0dSRUVOIHwgRk9SRUdST1VO
RF9JTlRFTlNJVFk7IGJyZWFrOwotICAgICAgICAgICAgY2FzZSBDVVRFU1RfQ09MT1JfUkVEX0lO
VEVOU0lWRV9fOiAgICAgYXR0ciA9IEZPUkVHUk9VTkRfUkVEIHwgRk9SRUdST1VORF9JTlRFTlNJ
VFk7IGJyZWFrOwotICAgICAgICAgICAgY2FzZSBDVVRFU1RfQ09MT1JfREVGQVVMVF9JTlRFTlNJ
VkVfXzogYXR0ciA9IEZPUkVHUk9VTkRfQkxVRSB8IEZPUkVHUk9VTkRfR1JFRU4gfCBGT1JFR1JP
VU5EX1JFRCB8IEZPUkVHUk9VTkRfSU5URU5TSVRZOyBicmVhazsKLSAgICAgICAgICAgIGRlZmF1
bHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF0dHIgPSAwOyBicmVhazsKKyAgICAg
ICAgc3dpdGNoIChjb2xvcikgeworICAgICAgICBjYXNlIENVVEVTVF9DT0xPUl9HUkVFTl9fOgor
ICAgICAgICAgICAgYXR0ciA9IEZPUkVHUk9VTkRfR1JFRU47CisgICAgICAgICAgICBicmVhazsK
KyAgICAgICAgY2FzZSBDVVRFU1RfQ09MT1JfUkVEX186CisgICAgICAgICAgICBhdHRyID0gRk9S
RUdST1VORF9SRUQ7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSBDVVRFU1RfQ09M
T1JfR1JFRU5fSU5URU5TSVZFX186CisgICAgICAgICAgICBhdHRyID0gRk9SRUdST1VORF9HUkVF
TiB8IEZPUkVHUk9VTkRfSU5URU5TSVRZOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNh
c2UgQ1VURVNUX0NPTE9SX1JFRF9JTlRFTlNJVkVfXzoKKyAgICAgICAgICAgIGF0dHIgPSBGT1JF
R1JPVU5EX1JFRCB8IEZPUkVHUk9VTkRfSU5URU5TSVRZOworICAgICAgICAgICAgYnJlYWs7Cisg
ICAgICAgIGNhc2UgQ1VURVNUX0NPTE9SX0RFRkFVTFRfSU5URU5TSVZFX186CisgICAgICAgICAg
ICBhdHRyID0gRk9SRUdST1VORF9CTFVFIHwgRk9SRUdST1VORF9HUkVFTiB8IEZPUkVHUk9VTkRf
UkVEIHwKKyAgICAgICAgICAgICAgICAgICBGT1JFR1JPVU5EX0lOVEVOU0lUWTsKKyAgICAgICAg
ICAgIGJyZWFrOworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgYXR0ciA9IDA7CisgICAg
ICAgICAgICBicmVhazsKICAgICAgICAgfQotICAgICAgICBpZihhdHRyICE9IDApCisgICAgICAg
IGlmIChhdHRyICE9IDApCiAgICAgICAgICAgICBTZXRDb25zb2xlVGV4dEF0dHJpYnV0ZShoLCBh
dHRyKTsKICAgICAgICAgbiA9IHByaW50ZigiJXMiLCBidWZmZXIpOwogICAgICAgICBTZXRDb25z
b2xlVGV4dEF0dHJpYnV0ZShoLCBpbmZvLndBdHRyaWJ1dGVzKTsKQEAgLTIxNywxOSArMjM1LDE4
IEBAIHRlc3RfcHJpbnRfaW5fY29sb3JfXyhpbnQgY29sb3IsIGNvbnN0IGNoYXIqIGZtdCwgLi4u
KQogI2VuZGlmCiB9CiAKLWludAotdGVzdF9jaGVja19fKGludCBjb25kLCBjb25zdCBjaGFyKiBm
aWxlLCBpbnQgbGluZSwgY29uc3QgY2hhciogZm10LCAuLi4pCitpbnQgdGVzdF9jaGVja19fKGlu
dCBjb25kLCBjb25zdCBjaGFyICpmaWxlLCBpbnQgbGluZSwgY29uc3QgY2hhciAqZm10LCAuLi4p
CiB7CiAgICAgY29uc3QgY2hhciAqcmVzdWx0X3N0cjsKICAgICBpbnQgcmVzdWx0X2NvbG9yOwog
ICAgIGludCB2ZXJib3NlX2xldmVsOwogCi0gICAgaWYoY29uZCkgeworICAgIGlmIChjb25kKSB7
CiAgICAgICAgIHJlc3VsdF9zdHIgPSAib2siOwogICAgICAgICByZXN1bHRfY29sb3IgPSBDVVRF
U1RfQ09MT1JfR1JFRU5fXzsKICAgICAgICAgdmVyYm9zZV9sZXZlbCA9IDM7CiAgICAgfSBlbHNl
IHsKLSAgICAgICAgaWYoIXRlc3RfY3VycmVudF9hbHJlYWR5X2xvZ2dlZF9fICAmJiAgdGVzdF9j
dXJyZW50X3VuaXRfXyAhPSBOVUxMKSB7CisgICAgICAgIGlmICghdGVzdF9jdXJyZW50X2FscmVh
ZHlfbG9nZ2VkX18gJiYgdGVzdF9jdXJyZW50X3VuaXRfXyAhPSBOVUxMKSB7CiAgICAgICAgICAg
ICBwcmludGYoIlsgIik7CiAgICAgICAgICAgICB0ZXN0X3ByaW50X2luX2NvbG9yX18oQ1VURVNU
X0NPTE9SX1JFRF9JTlRFTlNJVkVfXywgIkZBSUxFRCIpOwogICAgICAgICAgICAgcHJpbnRmKCIg
XVxuIik7CkBAIC0yNDEsMTMgKzI1OCwxMyBAQCB0ZXN0X2NoZWNrX18oaW50IGNvbmQsIGNvbnN0
IGNoYXIqIGZpbGUsIGludCBsaW5lLCBjb25zdCBjaGFyKiBmbXQsIC4uLikKICAgICAgICAgdGVz
dF9jdXJyZW50X2FscmVhZHlfbG9nZ2VkX18rKzsKICAgICB9CiAKLSAgICBpZih0ZXN0X3ZlcmJv
c2VfbGV2ZWxfXyA+PSB2ZXJib3NlX2xldmVsKSB7CisgICAgaWYgKHRlc3RfdmVyYm9zZV9sZXZl
bF9fID49IHZlcmJvc2VfbGV2ZWwpIHsKICAgICAgICAgc2l6ZV90IG4gPSAwOwogICAgICAgICB2
YV9saXN0IGFyZ3M7CiAKICAgICAgICAgcHJpbnRmKCIgICIpOwogCi0gICAgICAgIGlmKGZpbGUg
IT0gTlVMTCkKKyAgICAgICAgaWYgKGZpbGUgIT0gTlVMTCkKICAgICAgICAgICAgIG4gKz0gcHJp
bnRmKCIlczolZDogQ2hlY2sgIiwgZmlsZSwgbGluZSk7CiAKICAgICAgICAgdmFfc3RhcnQoYXJn
cywgZm10KTsKQEAgLTI2MywyMyArMjgwLDIxIEBAIHRlc3RfY2hlY2tfXyhpbnQgY29uZCwgY29u
c3QgY2hhciogZmlsZSwgaW50IGxpbmUsIGNvbnN0IGNoYXIqIGZtdCwgLi4uKQogICAgIHJldHVy
biAoY29uZCAhPSAwKTsKIH0KIAotc3RhdGljIHZvaWQKLXRlc3RfbGlzdF9uYW1lc19fKHZvaWQp
CitzdGF0aWMgdm9pZCB0ZXN0X2xpc3RfbmFtZXNfXyh2b2lkKQogewotICAgIGNvbnN0IHN0cnVj
dCB0ZXN0X18qIHRlc3Q7CisgICAgY29uc3Qgc3RydWN0IHRlc3RfXyAqdGVzdDsKIAogICAgIHBy
aW50ZigiVW5pdCB0ZXN0czpcbiIpOwotICAgIGZvcih0ZXN0ID0gJnRlc3RfbGlzdF9fWzBdOyB0
ZXN0LT5mdW5jICE9IE5VTEw7IHRlc3QrKykKKyAgICBmb3IgKHRlc3QgPSAmdGVzdF9saXN0X19b
MF07IHRlc3QtPmZ1bmMgIT0gTlVMTDsgdGVzdCsrKQogICAgICAgICBwcmludGYoIiAgJXNcbiIs
IHRlc3QtPm5hbWUpOwogfQogCi1zdGF0aWMgY29uc3Qgc3RydWN0IHRlc3RfXyoKLXRlc3RfYnlf
bmFtZV9fKGNvbnN0IGNoYXIqIG5hbWUpCitzdGF0aWMgY29uc3Qgc3RydWN0IHRlc3RfXyAqdGVz
dF9ieV9uYW1lX18oY29uc3QgY2hhciAqbmFtZSkKIHsKLSAgICBjb25zdCBzdHJ1Y3QgdGVzdF9f
KiB0ZXN0OworICAgIGNvbnN0IHN0cnVjdCB0ZXN0X18gKnRlc3Q7CiAKLSAgICBmb3IodGVzdCA9
ICZ0ZXN0X2xpc3RfX1swXTsgdGVzdC0+ZnVuYyAhPSBOVUxMOyB0ZXN0KyspIHsKLSAgICAgICAg
aWYoc3RyY21wKHRlc3QtPm5hbWUsIG5hbWUpID09IDApCisgICAgZm9yICh0ZXN0ID0gJnRlc3Rf
bGlzdF9fWzBdOyB0ZXN0LT5mdW5jICE9IE5VTEw7IHRlc3QrKykgeworICAgICAgICBpZiAoc3Ry
Y21wKHRlc3QtPm5hbWUsIG5hbWUpID09IDApCiAgICAgICAgICAgICByZXR1cm4gdGVzdDsKICAg
ICB9CiAKQEAgLTI4NywyNCArMzAyLDI1IEBAIHRlc3RfYnlfbmFtZV9fKGNvbnN0IGNoYXIqIG5h
bWUpCiB9CiAKIC8qIENhbGwgZGlyZWN0bHkgdGhlIGdpdmVuIHRlc3QgdW5pdCBmdW5jdGlvbi4g
Ki8KLXN0YXRpYyBpbnQKLXRlc3RfZG9fcnVuX18oY29uc3Qgc3RydWN0IHRlc3RfXyogdGVzdCkK
K3N0YXRpYyBpbnQgdGVzdF9kb19ydW5fXyhjb25zdCBzdHJ1Y3QgdGVzdF9fICp0ZXN0KQogewog
ICAgIHRlc3RfY3VycmVudF91bml0X18gPSB0ZXN0OwogICAgIHRlc3RfY3VycmVudF9mYWlsdXJl
c19fID0gMDsKICAgICB0ZXN0X2N1cnJlbnRfYWxyZWFkeV9sb2dnZWRfXyA9IDA7CiAKLSAgICBp
Zih0ZXN0X3ZlcmJvc2VfbGV2ZWxfXyA+PSAzKSB7Ci0gICAgICAgIHRlc3RfcHJpbnRfaW5fY29s
b3JfXyhDVVRFU1RfQ09MT1JfREVGQVVMVF9JTlRFTlNJVkVfXywgIlRlc3QgJXM6XG4iLCB0ZXN0
LT5uYW1lKTsKKyAgICBpZiAodGVzdF92ZXJib3NlX2xldmVsX18gPj0gMykgeworICAgICAgICB0
ZXN0X3ByaW50X2luX2NvbG9yX18oQ1VURVNUX0NPTE9SX0RFRkFVTFRfSU5URU5TSVZFX18sICJU
ZXN0ICVzOlxuIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRlc3QtPm5hbWUpOwog
ICAgICAgICB0ZXN0X2N1cnJlbnRfYWxyZWFkeV9sb2dnZWRfXysrOwotICAgIH0gZWxzZSBpZih0
ZXN0X3ZlcmJvc2VfbGV2ZWxfXyA+PSAxKSB7CisgICAgfSBlbHNlIGlmICh0ZXN0X3ZlcmJvc2Vf
bGV2ZWxfXyA+PSAxKSB7CiAgICAgICAgIHNpemVfdCBuOwogICAgICAgICBjaGFyIHNwYWNlc1sz
Ml07CiAKLSAgICAgICAgbiA9IHRlc3RfcHJpbnRfaW5fY29sb3JfXyhDVVRFU1RfQ09MT1JfREVG
QVVMVF9JTlRFTlNJVkVfXywgIlRlc3QgJXMuLi4gIiwgdGVzdC0+bmFtZSk7CisgICAgICAgIG4g
PSB0ZXN0X3ByaW50X2luX2NvbG9yX18oQ1VURVNUX0NPTE9SX0RFRkFVTFRfSU5URU5TSVZFX18s
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlRlc3QgJXMuLi4gIiwgdGVzdC0+
bmFtZSk7CiAgICAgICAgIG1lbXNldChzcGFjZXMsICcgJywgc2l6ZW9mKHNwYWNlcykpOwotICAg
ICAgICBpZihuIDwgc2l6ZW9mKHNwYWNlcykpCi0gICAgICAgICAgICBwcmludGYoIiUuKnMiLCAo
aW50KSAoc2l6ZW9mKHNwYWNlcykgLSBuKSwgc3BhY2VzKTsKKyAgICAgICAgaWYgKG4gPCBzaXpl
b2Yoc3BhY2VzKSkKKyAgICAgICAgICAgIHByaW50ZigiJS4qcyIsIChpbnQpKHNpemVvZihzcGFj
ZXMpIC0gbiksIHNwYWNlcyk7CiAgICAgfSBlbHNlIHsKICAgICAgICAgdGVzdF9jdXJyZW50X2Fs
cmVhZHlfbG9nZ2VkX18gPSAxOwogICAgIH0KQEAgLTMyMCwyNCArMzM2LDM0IEBAIHRlc3RfZG9f
cnVuX18oY29uc3Qgc3RydWN0IHRlc3RfXyogdGVzdCkKICAgICAgICAgdGVzdC0+ZnVuYygpOwog
CiAjaWZkZWYgX19jcGx1c3BsdXMKLSAgICB9IGNhdGNoKHN0ZDo6ZXhjZXB0aW9uJiBlKSB7Ci0g
ICAgICAgIGNvbnN0IGNoYXIqIHdoYXQgPSBlLndoYXQoKTsKLSAgICAgICAgaWYod2hhdCAhPSBO
VUxMKQorICAgIH0gY2F0Y2ggKHN0ZDo6ZXhjZXB0aW9uICZlKSB7CisgICAgICAgIGNvbnN0IGNo
YXIgKndoYXQgPSBlLndoYXQoKTsKKyAgICAgICAgaWYgKHdoYXQgIT0gTlVMTCkKICAgICAgICAg
ICAgIHRlc3RfY2hlY2tfXygwLCBOVUxMLCAwLCAiVGhyZXcgc3RkOjpleGNlcHRpb246ICVzIiwg
d2hhdCk7CiAgICAgICAgIGVsc2UKICAgICAgICAgICAgIHRlc3RfY2hlY2tfXygwLCBOVUxMLCAw
LCAiVGhyZXcgc3RkOjpleGNlcHRpb24iKTsKLSAgICB9IGNhdGNoKC4uLikgeworICAgIH0gY2F0
Y2ggKC4uLikgewogICAgICAgICB0ZXN0X2NoZWNrX18oMCwgTlVMTCwgMCwgIlRocmV3IGFuIGV4
Y2VwdGlvbiIpOwogICAgIH0KICNlbmRpZgogCi0gICAgaWYodGVzdF92ZXJib3NlX2xldmVsX18g
Pj0gMykgewotICAgICAgICBzd2l0Y2godGVzdF9jdXJyZW50X2ZhaWx1cmVzX18pIHsKLSAgICAg
ICAgICAgIGNhc2UgMDogIHRlc3RfcHJpbnRfaW5fY29sb3JfXyhDVVRFU1RfQ09MT1JfR1JFRU5f
SU5URU5TSVZFX18sICIgIEFsbCBjb25kaXRpb25zIGhhdmUgcGFzc2VkLlxuXG4iKTsgYnJlYWs7
Ci0gICAgICAgICAgICBjYXNlIDE6ICB0ZXN0X3ByaW50X2luX2NvbG9yX18oQ1VURVNUX0NPTE9S
X1JFRF9JTlRFTlNJVkVfXywgIiAgT25lIGNvbmRpdGlvbiBoYXMgRkFJTEVELlxuXG4iKTsgYnJl
YWs7Ci0gICAgICAgICAgICBkZWZhdWx0OiB0ZXN0X3ByaW50X2luX2NvbG9yX18oQ1VURVNUX0NP
TE9SX1JFRF9JTlRFTlNJVkVfXywgIiAgJWQgY29uZGl0aW9ucyBoYXZlIEZBSUxFRC5cblxuIiwg
dGVzdF9jdXJyZW50X2ZhaWx1cmVzX18pOyBicmVhazsKKyAgICBpZiAodGVzdF92ZXJib3NlX2xl
dmVsX18gPj0gMykgeworICAgICAgICBzd2l0Y2ggKHRlc3RfY3VycmVudF9mYWlsdXJlc19fKSB7
CisgICAgICAgIGNhc2UgMDoKKyAgICAgICAgICAgIHRlc3RfcHJpbnRfaW5fY29sb3JfXyhDVVRF
U1RfQ09MT1JfR1JFRU5fSU5URU5TSVZFX18sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIiAgQWxsIGNvbmRpdGlvbnMgaGF2ZSBwYXNzZWQuXG5cbiIpOworICAgICAgICAgICAg
YnJlYWs7CisgICAgICAgIGNhc2UgMToKKyAgICAgICAgICAgIHRlc3RfcHJpbnRfaW5fY29sb3Jf
XyhDVVRFU1RfQ09MT1JfUkVEX0lOVEVOU0lWRV9fLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICIgIE9uZSBjb25kaXRpb24gaGFzIEZBSUxFRC5cblxuIik7CisgICAgICAgICAg
ICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHRlc3RfcHJpbnRfaW5fY29s
b3JfXyhDVVRFU1RfQ09MT1JfUkVEX0lOVEVOU0lWRV9fLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICIgICVkIGNvbmRpdGlvbnMgaGF2ZSBGQUlMRUQuXG5cbiIsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVzdF9jdXJyZW50X2ZhaWx1cmVzX18pOworICAg
ICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KLSAgICB9IGVsc2UgaWYodGVzdF92ZXJib3NlX2xl
dmVsX18gPj0gMSAmJiB0ZXN0X2N1cnJlbnRfZmFpbHVyZXNfXyA9PSAwKSB7CisgICAgfSBlbHNl
IGlmICh0ZXN0X3ZlcmJvc2VfbGV2ZWxfXyA+PSAxICYmIHRlc3RfY3VycmVudF9mYWlsdXJlc19f
ID09IDApIHsKICAgICAgICAgcHJpbnRmKCJbICAgIik7CiAgICAgICAgIHRlc3RfcHJpbnRfaW5f
Y29sb3JfXyhDVVRFU1RfQ09MT1JfR1JFRU5fSU5URU5TSVZFX18sICJPSyIpOwogICAgICAgICBw
cmludGYoIiAgIF1cbiIpOwpAQCAtMzUxLDIxICszNzcsMjEgQEAgdGVzdF9kb19ydW5fXyhjb25z
dCBzdHJ1Y3QgdGVzdF9fKiB0ZXN0KQogLyogQ2FsbGVkIGlmIGFueXRoaW5nIGdvZXMgYmFkIGlu
IGN1dGVzdCwgb3IgaWYgdGhlIHVuaXQgdGVzdCBlbmRzIGluIG90aGVyCiAgKiB3YXkgdGhlbiBi
eSBub3JtYWwgcmV0dXJuaW5nIGZyb20gaXRzIGZ1bmN0aW9uIChlLmcuIGV4Y2VwdGlvbiBvciBz
b21lCiAgKiBhYm5vcm1hbCBjaGlsZCBwcm9jZXNzIHRlcm1pbmF0aW9uKS4gKi8KLXN0YXRpYyB2
b2lkCi10ZXN0X2Vycm9yX18oY29uc3QgY2hhciogZm10LCAuLi4pCitzdGF0aWMgdm9pZCB0ZXN0
X2Vycm9yX18oY29uc3QgY2hhciAqZm10LCAuLi4pCiB7CiAgICAgdmFfbGlzdCBhcmdzOwogCi0g
ICAgaWYodGVzdF92ZXJib3NlX2xldmVsX18gPT0gMCkKKyAgICBpZiAodGVzdF92ZXJib3NlX2xl
dmVsX18gPT0gMCkKICAgICAgICAgcmV0dXJuOwogCi0gICAgaWYodGVzdF92ZXJib3NlX2xldmVs
X18gPD0gMiAgJiYgICF0ZXN0X2N1cnJlbnRfYWxyZWFkeV9sb2dnZWRfXyAgJiYgIHRlc3RfY3Vy
cmVudF91bml0X18gIT0gTlVMTCkgeworICAgIGlmICh0ZXN0X3ZlcmJvc2VfbGV2ZWxfXyA8PSAy
ICYmICF0ZXN0X2N1cnJlbnRfYWxyZWFkeV9sb2dnZWRfXyAmJgorICAgICAgICB0ZXN0X2N1cnJl
bnRfdW5pdF9fICE9IE5VTEwpIHsKICAgICAgICAgcHJpbnRmKCJbICIpOwogICAgICAgICB0ZXN0
X3ByaW50X2luX2NvbG9yX18oQ1VURVNUX0NPTE9SX1JFRF9JTlRFTlNJVkVfXywgIkZBSUxFRCIp
OwogICAgICAgICBwcmludGYoIiBdXG4iKTsKICAgICB9CiAKLSAgICBpZih0ZXN0X3ZlcmJvc2Vf
bGV2ZWxfXyA+PSAyKSB7CisgICAgaWYgKHRlc3RfdmVyYm9zZV9sZXZlbF9fID49IDIpIHsKICAg
ICAgICAgdGVzdF9wcmludF9pbl9jb2xvcl9fKENVVEVTVF9DT0xPUl9SRURfSU5URU5TSVZFX18s
ICIgIEVycm9yOiAiKTsKICAgICAgICAgdmFfc3RhcnQoYXJncywgZm10KTsKICAgICAgICAgdnBy
aW50ZihmbXQsIGFyZ3MpOwpAQCAtMzc4LDUxICs0MDQsNzMgQEAgdGVzdF9lcnJvcl9fKGNvbnN0
IGNoYXIqIGZtdCwgLi4uKQogLyogVHJpZ2dlciB0aGUgdW5pdCB0ZXN0LiBJZiBwb3NzaWJsZSAo
YW5kIG5vdCBzdXBwcmVzc2VkKSBpdCBzdGFydHMgYSBjaGlsZAogICogcHJvY2VzcyB3aG8gY2Fs
bHMgdGVzdF9kb19ydW5fXygpLCBvdGhlcndpc2UgaXQgY2FsbHMgdGVzdF9kb19ydW5fXygpCiAg
KiBkaXJlY3RseS4gKi8KLXN0YXRpYyB2b2lkCi10ZXN0X3J1bl9fKGNvbnN0IHN0cnVjdCB0ZXN0
X18qIHRlc3QpCitzdGF0aWMgdm9pZCB0ZXN0X3J1bl9fKGNvbnN0IHN0cnVjdCB0ZXN0X18gKnRl
c3QpCiB7CiAgICAgaW50IGZhaWxlZCA9IDE7CiAKICAgICB0ZXN0X2N1cnJlbnRfdW5pdF9fID0g
dGVzdDsKICAgICB0ZXN0X2N1cnJlbnRfYWxyZWFkeV9sb2dnZWRfXyA9IDA7CiAKLSAgICBpZigh
dGVzdF9ub19leGVjX18pIHsKLQorICAgIGlmICghdGVzdF9ub19leGVjX18pIHsKICNpZiBkZWZp
bmVkKENVVEVTVF9VTklYX18pCiAKICAgICAgICAgcGlkX3QgcGlkOwogICAgICAgICBpbnQgZXhp
dF9jb2RlOwogCiAgICAgICAgIHBpZCA9IGZvcmsoKTsKLSAgICAgICAgaWYocGlkID09IChwaWRf
dCktMSkgeworICAgICAgICBpZiAocGlkID09IChwaWRfdCktMSkgewogICAgICAgICAgICAgdGVz
dF9lcnJvcl9fKCJDYW5ub3QgZm9yay4gJXMgWyVkXSIsIHN0cmVycm9yKGVycm5vKSwgZXJybm8p
OwogICAgICAgICAgICAgZmFpbGVkID0gMTsKLSAgICAgICAgfSBlbHNlIGlmKHBpZCA9PSAwKSB7
CisgICAgICAgIH0gZWxzZSBpZiAocGlkID09IDApIHsKICAgICAgICAgICAgIC8qIENoaWxkOiBE
byB0aGUgdGVzdC4gKi8KICAgICAgICAgICAgIGZhaWxlZCA9ICh0ZXN0X2RvX3J1bl9fKHRlc3Qp
ICE9IDApOwogICAgICAgICAgICAgZXhpdChmYWlsZWQgPyAxIDogMCk7CiAgICAgICAgIH0gZWxz
ZSB7CiAgICAgICAgICAgICAvKiBQYXJlbnQ6IFdhaXQgdW50aWwgY2hpbGQgdGVybWluYXRlcyBh
bmQgYW5hbHl6ZSBpdHMgZXhpdCBjb2RlLiAqLwogICAgICAgICAgICAgd2FpdHBpZChwaWQsICZl
eGl0X2NvZGUsIDApOwotICAgICAgICAgICAgaWYoV0lGRVhJVEVEKGV4aXRfY29kZSkpIHsKLSAg
ICAgICAgICAgICAgICBzd2l0Y2goV0VYSVRTVEFUVVMoZXhpdF9jb2RlKSkgewotICAgICAgICAg
ICAgICAgICAgICBjYXNlIDA6ICAgZmFpbGVkID0gMDsgYnJlYWs7ICAgLyogdGVzdCBoYXMgcGFz
c2VkLiAqLwotICAgICAgICAgICAgICAgICAgICBjYXNlIDE6ICAgLyogbm9vcCAqLyBicmVhazsg
ICAgLyogIm5vcm1hbCIgZmFpbHVyZS4gKi8KLSAgICAgICAgICAgICAgICAgICAgZGVmYXVsdDog
IHRlc3RfZXJyb3JfXygiVW5leHBlY3RlZCBleGl0IGNvZGUgWyVkXSIsIFdFWElUU1RBVFVTKGV4
aXRfY29kZSkpOworICAgICAgICAgICAgaWYgKFdJRkVYSVRFRChleGl0X2NvZGUpKSB7CisgICAg
ICAgICAgICAgICAgc3dpdGNoIChXRVhJVFNUQVRVUyhleGl0X2NvZGUpKSB7CisgICAgICAgICAg
ICAgICAgY2FzZSAwOgorICAgICAgICAgICAgICAgICAgICBmYWlsZWQgPSAwOworICAgICAgICAg
ICAgICAgICAgICBicmVhazsgLyogdGVzdCBoYXMgcGFzc2VkLiAqLworICAgICAgICAgICAgICAg
IGNhc2UgMTogICAgLyogbm9vcCAqLworICAgICAgICAgICAgICAgICAgICBicmVhazsgLyogIm5v
cm1hbCIgZmFpbHVyZS4gKi8KKyAgICAgICAgICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAg
ICAgICAgICB0ZXN0X2Vycm9yX18oIlVuZXhwZWN0ZWQgZXhpdCBjb2RlIFslZF0iLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgV0VYSVRTVEFUVVMoZXhpdF9jb2RlKSk7CiAgICAg
ICAgICAgICAgICAgfQotICAgICAgICAgICAgfSBlbHNlIGlmKFdJRlNJR05BTEVEKGV4aXRfY29k
ZSkpIHsKKyAgICAgICAgICAgIH0gZWxzZSBpZiAoV0lGU0lHTkFMRUQoZXhpdF9jb2RlKSkgewog
ICAgICAgICAgICAgICAgIGNoYXIgdG1wWzMyXTsKLSAgICAgICAgICAgICAgICBjb25zdCBjaGFy
KiBzaWduYW1lOwotICAgICAgICAgICAgICAgIHN3aXRjaChXVEVSTVNJRyhleGl0X2NvZGUpKSB7
Ci0gICAgICAgICAgICAgICAgICAgIGNhc2UgU0lHSU5UOiAgc2lnbmFtZSA9ICJTSUdJTlQiOyBi
cmVhazsKLSAgICAgICAgICAgICAgICAgICAgY2FzZSBTSUdIVVA6ICBzaWduYW1lID0gIlNJR0hV
UCI7IGJyZWFrOwotICAgICAgICAgICAgICAgICAgICBjYXNlIFNJR1FVSVQ6IHNpZ25hbWUgPSAi
U0lHUVVJVCI7IGJyZWFrOwotICAgICAgICAgICAgICAgICAgICBjYXNlIFNJR0FCUlQ6IHNpZ25h
bWUgPSAiU0lHQUJSVCI7IGJyZWFrOwotICAgICAgICAgICAgICAgICAgICBjYXNlIFNJR0tJTEw6
IHNpZ25hbWUgPSAiU0lHS0lMTCI7IGJyZWFrOwotICAgICAgICAgICAgICAgICAgICBjYXNlIFNJ
R1NFR1Y6IHNpZ25hbWUgPSAiU0lHU0VHViI7IGJyZWFrOwotICAgICAgICAgICAgICAgICAgICBj
YXNlIFNJR0lMTDogIHNpZ25hbWUgPSAiU0lHSUxMIjsgYnJlYWs7Ci0gICAgICAgICAgICAgICAg
ICAgIGNhc2UgU0lHVEVSTTogc2lnbmFtZSA9ICJTSUdURVJNIjsgYnJlYWs7Ci0gICAgICAgICAg
ICAgICAgICAgIGRlZmF1bHQ6ICAgICAgc3ByaW50Zih0bXAsICJzaWduYWwgJWQiLCBXVEVSTVNJ
RyhleGl0X2NvZGUpKTsgc2lnbmFtZSA9IHRtcDsgYnJlYWs7CisgICAgICAgICAgICAgICAgY29u
c3QgY2hhciAqc2lnbmFtZTsKKyAgICAgICAgICAgICAgICBzd2l0Y2ggKFdURVJNU0lHKGV4aXRf
Y29kZSkpIHsKKyAgICAgICAgICAgICAgICBjYXNlIFNJR0lOVDoKKyAgICAgICAgICAgICAgICAg
ICAgc2lnbmFtZSA9ICJTSUdJTlQiOworICAgICAgICAgICAgICAgICAgICBicmVhazsKKyAgICAg
ICAgICAgICAgICBjYXNlIFNJR0hVUDoKKyAgICAgICAgICAgICAgICAgICAgc2lnbmFtZSA9ICJT
SUdIVVAiOworICAgICAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgICAgICBjYXNl
IFNJR1FVSVQ6CisgICAgICAgICAgICAgICAgICAgIHNpZ25hbWUgPSAiU0lHUVVJVCI7CisgICAg
ICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgICAgIGNhc2UgU0lHQUJSVDoKKyAg
ICAgICAgICAgICAgICAgICAgc2lnbmFtZSA9ICJTSUdBQlJUIjsKKyAgICAgICAgICAgICAgICAg
ICAgYnJlYWs7CisgICAgICAgICAgICAgICAgY2FzZSBTSUdLSUxMOgorICAgICAgICAgICAgICAg
ICAgICBzaWduYW1lID0gIlNJR0tJTEwiOworICAgICAgICAgICAgICAgICAgICBicmVhazsKKyAg
ICAgICAgICAgICAgICBjYXNlIFNJR1NFR1Y6CisgICAgICAgICAgICAgICAgICAgIHNpZ25hbWUg
PSAiU0lHU0VHViI7CisgICAgICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgICAg
IGNhc2UgU0lHSUxMOgorICAgICAgICAgICAgICAgICAgICBzaWduYW1lID0gIlNJR0lMTCI7Cisg
ICAgICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgICAgIGNhc2UgU0lHVEVSTToK
KyAgICAgICAgICAgICAgICAgICAgc2lnbmFtZSA9ICJTSUdURVJNIjsKKyAgICAgICAgICAgICAg
ICAgICAgYnJlYWs7CisgICAgICAgICAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgICAgICAg
ICAgc3ByaW50Zih0bXAsICJzaWduYWwgJWQiLCBXVEVSTVNJRyhleGl0X2NvZGUpKTsKKyAgICAg
ICAgICAgICAgICAgICAgc2lnbmFtZSA9IHRtcDsKKyAgICAgICAgICAgICAgICAgICAgYnJlYWs7
CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIHRlc3RfZXJyb3JfXygiVGVzdCBp
bnRlcnJ1cHRlZCBieSAlcyIsIHNpZ25hbWUpOwogICAgICAgICAgICAgfSBlbHNlIHsKQEAgLTQz
MiwyNiArNDgwLDI4IEBAIHRlc3RfcnVuX18oY29uc3Qgc3RydWN0IHRlc3RfXyogdGVzdCkKIAog
I2VsaWYgZGVmaW5lZChDVVRFU1RfV0lOX18pCiAKLSAgICAgICAgY2hhciBidWZmZXJbNTEyXSA9
IHswfTsKLSAgICAgICAgU1RBUlRVUElORk9BIHN0YXJ0dXBJbmZvID0gezB9OworICAgICAgICBj
aGFyIGJ1ZmZlcls1MTJdID0geyAwIH07CisgICAgICAgIFNUQVJUVVBJTkZPQSBzdGFydHVwSW5m
byA9IHsgMCB9OwogICAgICAgICBQUk9DRVNTX0lORk9STUFUSU9OIHByb2Nlc3NJbmZvOwogICAg
ICAgICBEV09SRCBleGl0Q29kZTsKIAogICAgICAgICAvKiBXaW5kb3dzIGhhcyBubyBmb3JrKCku
IFNvIHdlIHByb3BhZ2F0ZSBhbGwgaW5mbyBpbnRvIHRoZSBjaGlsZAogICAgICAgICAgKiB0aHJv
dWdoIGEgY29tbWFuZCBsaW5lIGFyZ3VtZW50cy4gKi8KLSAgICAgICAgX3NucHJpbnRmKGJ1ZmZl
ciwgc2l6ZW9mKGJ1ZmZlciktMSwKLSAgICAgICAgICAgICAgICAgIiVzIC0tbm8tZXhlYyAtLW5v
LXN1bW1hcnkgLS12ZXJib3NlPSVkIC0tY29sb3I9JXMgLS0gXCIlc1wiIiwKLSAgICAgICAgICAg
ICAgICAgdGVzdF9hcmd2MF9fLCB0ZXN0X3ZlcmJvc2VfbGV2ZWxfXywKLSAgICAgICAgICAgICAg
ICAgdGVzdF9jb2xvcml6ZV9fID8gImFsd2F5cyIgOiAibmV2ZXIiLCB0ZXN0LT5uYW1lKTsKKyAg
ICAgICAgX3NucHJpbnRmKGJ1ZmZlciwgc2l6ZW9mKGJ1ZmZlcikgLSAxLAorICAgICAgICAgICAg
ICAgICAgIiVzIC0tbm8tZXhlYyAtLW5vLXN1bW1hcnkgLS12ZXJib3NlPSVkIC0tY29sb3I9JXMg
LS0gXCIlc1wiIiwKKyAgICAgICAgICAgICAgICAgIHRlc3RfYXJndjBfXywgdGVzdF92ZXJib3Nl
X2xldmVsX18sCisgICAgICAgICAgICAgICAgICB0ZXN0X2NvbG9yaXplX18gPyAiYWx3YXlzIiA6
ICJuZXZlciIsIHRlc3QtPm5hbWUpOwogICAgICAgICBzdGFydHVwSW5mby5jYiA9IHNpemVvZihT
VEFSVFVQSU5GTyk7Ci0gICAgICAgIGlmKENyZWF0ZVByb2Nlc3NBKE5VTEwsIGJ1ZmZlciwgTlVM
TCwgTlVMTCwgRkFMU0UsIDAsIE5VTEwsIE5VTEwsICZzdGFydHVwSW5mbywgJnByb2Nlc3NJbmZv
KSkgeworICAgICAgICBpZiAoQ3JlYXRlUHJvY2Vzc0EoTlVMTCwgYnVmZmVyLCBOVUxMLCBOVUxM
LCBGQUxTRSwgMCwgTlVMTCwgTlVMTCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICZzdGFy
dHVwSW5mbywgJnByb2Nlc3NJbmZvKSkgewogICAgICAgICAgICAgV2FpdEZvclNpbmdsZU9iamVj
dChwcm9jZXNzSW5mby5oUHJvY2VzcywgSU5GSU5JVEUpOwogICAgICAgICAgICAgR2V0RXhpdENv
ZGVQcm9jZXNzKHByb2Nlc3NJbmZvLmhQcm9jZXNzLCAmZXhpdENvZGUpOwogICAgICAgICAgICAg
Q2xvc2VIYW5kbGUocHJvY2Vzc0luZm8uaFRocmVhZCk7CiAgICAgICAgICAgICBDbG9zZUhhbmRs
ZShwcm9jZXNzSW5mby5oUHJvY2Vzcyk7CiAgICAgICAgICAgICBmYWlsZWQgPSAoZXhpdENvZGUg
IT0gMCk7CiAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICB0ZXN0X2Vycm9yX18oIkNhbm5v
dCBjcmVhdGUgdW5pdCB0ZXN0IHN1YnByb2Nlc3MgWyVsZF0uIiwgR2V0TGFzdEVycm9yKCkpOwor
ICAgICAgICAgICAgdGVzdF9lcnJvcl9fKCJDYW5ub3QgY3JlYXRlIHVuaXQgdGVzdCBzdWJwcm9j
ZXNzIFslbGRdLiIsCisgICAgICAgICAgICAgICAgICAgICAgICAgR2V0TGFzdEVycm9yKCkpOwog
ICAgICAgICAgICAgZmFpbGVkID0gMTsKICAgICAgICAgfQogCkBAIC00NzAsMTQgKzUyMCwxMyBA
QCB0ZXN0X3J1bl9fKGNvbnN0IHN0cnVjdCB0ZXN0X18qIHRlc3QpCiAgICAgdGVzdF9jdXJyZW50
X3VuaXRfXyA9IE5VTEw7CiAKICAgICB0ZXN0X3N0YXRfcnVuX3VuaXRzX18rKzsKLSAgICBpZihm
YWlsZWQpCisgICAgaWYgKGZhaWxlZCkKICAgICAgICAgdGVzdF9zdGF0X2ZhaWxlZF91bml0c19f
Kys7CiB9CiAKICNpZiBkZWZpbmVkKENVVEVTVF9XSU5fXykKIC8qIENhbGxiYWNrIGZvciBTRUgg
ZXZlbnRzLiAqLwotc3RhdGljIExPTkcgQ0FMTEJBQ0sKLXRlc3RfZXhjZXB0aW9uX2ZpbHRlcl9f
KEVYQ0VQVElPTl9QT0lOVEVSUyAqcHRycykKK3N0YXRpYyBMT05HIENBTExCQUNLIHRlc3RfZXhj
ZXB0aW9uX2ZpbHRlcl9fKEVYQ0VQVElPTl9QT0lOVEVSUyAqcHRycykKIHsKICAgICB0ZXN0X2Vy
cm9yX18oIlVuaGFuZGxlZCBTRUggZXhjZXB0aW9uICUwOGx4IGF0ICVwLiIsCiAgICAgICAgICAg
ICAgICAgIHB0cnMtPkV4Y2VwdGlvblJlY29yZC0+RXhjZXB0aW9uQ29kZSwKQEAgLTQ4OCwzNSAr
NTM3LDQyIEBAIHRlc3RfZXhjZXB0aW9uX2ZpbHRlcl9fKEVYQ0VQVElPTl9QT0lOVEVSUyAqcHRy
cykKIH0KICNlbmRpZgogCi1zdGF0aWMgdm9pZAotdGVzdF9oZWxwX18odm9pZCkKK3N0YXRpYyB2
b2lkIHRlc3RfaGVscF9fKHZvaWQpCiB7CiAgICAgcHJpbnRmKCJVc2FnZTogJXMgW29wdGlvbnNd
IFt0ZXN0Li4uXVxuIiwgdGVzdF9hcmd2MF9fKTsKLSAgICBwcmludGYoIlJ1biB0aGUgc3BlY2lm
aWVkIHVuaXQgdGVzdHM7IG9yIGlmIHRoZSBvcHRpb24gJy0tc2tpcCcgaXMgdXNlZCwgcnVuIGFs
bFxuIik7Ci0gICAgcHJpbnRmKCJ0ZXN0cyBpbiB0aGUgc3VpdGUgYnV0IHRob3NlIGxpc3RlZC4g
IEJ5IGRlZmF1bHQsIGlmIG5vIHRlc3RzIGFyZSBzcGVjaWZpZWRcbiIpOworICAgIHByaW50Zigi
UnVuIHRoZSBzcGVjaWZpZWQgdW5pdCB0ZXN0czsgb3IgaWYgdGhlIG9wdGlvbiAnLS1za2lwJyBp
cyB1c2VkLCAiCisgICAgICAgICAgICJydW4gYWxsXG4iKTsKKyAgICBwcmludGYoInRlc3RzIGlu
IHRoZSBzdWl0ZSBidXQgdGhvc2UgbGlzdGVkLiAgQnkgZGVmYXVsdCwgaWYgbm8gdGVzdHMgYXJl
ICIKKyAgICAgICAgICAgInNwZWNpZmllZFxuIik7CiAgICAgcHJpbnRmKCJvbiB0aGUgY29tbWFu
ZCBsaW5lLCBhbGwgdW5pdCB0ZXN0cyBpbiB0aGUgc3VpdGUgYXJlIHJ1bi5cbiIpOwogICAgIHBy
aW50ZigiXG4iKTsKICAgICBwcmludGYoIk9wdGlvbnM6XG4iKTsKLSAgICBwcmludGYoIiAgLXMs
IC0tc2tpcCAgICAgICAgICAgIEV4ZWN1dGUgYWxsIHVuaXQgdGVzdHMgYnV0IHRoZSBsaXN0ZWQg
b25lc1xuIik7Ci0gICAgcHJpbnRmKCIgICAgICAtLW5vLWV4ZWMgICAgICAgICBEbyBub3QgZXhl
Y3V0ZSB1bml0IHRlc3RzIGFzIGNoaWxkIHByb2Nlc3Nlc1xuIik7Ci0gICAgcHJpbnRmKCIgICAg
ICAtLW5vLXN1bW1hcnkgICAgICBTdXBwcmVzcyBwcmludGluZyBvZiB0ZXN0IHJlc3VsdHMgc3Vt
bWFyeVxuIik7CisgICAgcHJpbnRmKAorICAgICAgICAiICAtcywgLS1za2lwICAgICAgICAgICAg
RXhlY3V0ZSBhbGwgdW5pdCB0ZXN0cyBidXQgdGhlIGxpc3RlZCBvbmVzXG4iKTsKKyAgICBwcmlu
dGYoIiAgICAgIC0tbm8tZXhlYyAgICAgICAgIERvIG5vdCBleGVjdXRlIHVuaXQgdGVzdHMgYXMg
Y2hpbGQgIgorICAgICAgICAgICAicHJvY2Vzc2VzXG4iKTsKKyAgICBwcmludGYoCisgICAgICAg
ICIgICAgICAtLW5vLXN1bW1hcnkgICAgICBTdXBwcmVzcyBwcmludGluZyBvZiB0ZXN0IHJlc3Vs
dHMgc3VtbWFyeVxuIik7CiAgICAgcHJpbnRmKCIgIC1sLCAtLWxpc3QgICAgICAgICAgICBMaXN0
IHVuaXQgdGVzdHMgaW4gdGhlIHN1aXRlIGFuZCBleGl0XG4iKTsKICAgICBwcmludGYoIiAgLXYs
IC0tdmVyYm9zZSAgICAgICAgIEVuYWJsZSBtb3JlIHZlcmJvc2Ugb3V0cHV0XG4iKTsKICAgICBw
cmludGYoIiAgICAgIC0tdmVyYm9zZT1MRVZFTCAgIFNldCB2ZXJib3NlIGxldmVsIHRvIExFVkVM
OlxuIik7CiAgICAgcHJpbnRmKCIgICAgICAgICAgICAgICAgICAgICAgICAgIDAgLi4uIEJlIHNp
bGVudFxuIik7Ci0gICAgcHJpbnRmKCIgICAgICAgICAgICAgICAgICAgICAgICAgIDEgLi4uIE91
dHB1dCBvbmUgbGluZSBwZXIgdGVzdCAoYW5kIHN1bW1hcnkpXG4iKTsKLSAgICBwcmludGYoIiAg
ICAgICAgICAgICAgICAgICAgICAgICAgMiAuLi4gQXMgMSBhbmQgZmFpbGVkIGNvbmRpdGlvbnMg
KHRoaXMgaXMgZGVmYXVsdClcbiIpOwotICAgIHByaW50ZigiICAgICAgICAgICAgICAgICAgICAg
ICAgICAzIC4uLiBBcyAxIGFuZCBhbGwgY29uZGl0aW9ucyAoYW5kIGV4dGVuZGVkIHN1bW1hcnkp
XG4iKTsKLSAgICBwcmludGYoIiAgICAgIC0tY29sb3I9V0hFTiAgICAgIEVuYWJsZSBjb2xvcml6
ZWQgb3V0cHV0IChXSEVOIGlzIG9uZSBvZiAnYXV0bycsICdhbHdheXMnLCAnbmV2ZXInKVxuIik7
CisgICAgcHJpbnRmKCIgICAgICAgICAgICAgICAgICAgICAgICAgIDEgLi4uIE91dHB1dCBvbmUg
bGluZSBwZXIgdGVzdCAoYW5kICIKKyAgICAgICAgICAgInN1bW1hcnkpXG4iKTsKKyAgICBwcmlu
dGYoIiAgICAgICAgICAgICAgICAgICAgICAgICAgMiAuLi4gQXMgMSBhbmQgZmFpbGVkIGNvbmRp
dGlvbnMgKHRoaXMgIgorICAgICAgICAgICAiaXMgZGVmYXVsdClcbiIpOworICAgIHByaW50Zigi
ICAgICAgICAgICAgICAgICAgICAgICAgICAzIC4uLiBBcyAxIGFuZCBhbGwgY29uZGl0aW9ucyAo
YW5kICIKKyAgICAgICAgICAgImV4dGVuZGVkIHN1bW1hcnkpXG4iKTsKKyAgICBwcmludGYoIiAg
ICAgIC0tY29sb3I9V0hFTiAgICAgIEVuYWJsZSBjb2xvcml6ZWQgb3V0cHV0IChXSEVOIGlzIG9u
ZSBvZiAiCisgICAgICAgICAgICInYXV0bycsICdhbHdheXMnLCAnbmV2ZXInKVxuIik7CiAgICAg
cHJpbnRmKCIgIC1oLCAtLWhlbHAgICAgICAgICAgICBEaXNwbGF5IHRoaXMgaGVscCBhbmQgZXhp
dFxuIik7CiAgICAgcHJpbnRmKCJcbiIpOwogICAgIHRlc3RfbGlzdF9uYW1lc19fKCk7CiB9CiAK
LWludAotbWFpbihpbnQgYXJnYywgY2hhcioqIGFyZ3YpCitpbnQgbWFpbihpbnQgYXJnYywgY2hh
ciAqKmFyZ3YpCiB7Ci0gICAgY29uc3Qgc3RydWN0IHRlc3RfXyoqIHRlc3RzID0gTlVMTDsKKyAg
ICBjb25zdCBzdHJ1Y3QgdGVzdF9fICoqdGVzdHMgPSBOVUxMOwogICAgIGludCBpLCBqLCBuID0g
MDsKICAgICBpbnQgc2Vlbl9kb3VibGVfZGFzaCA9IDA7CiAKQEAgLTUzMSw0MiArNTg3LDUwIEBA
IG1haW4oaW50IGFyZ2MsIGNoYXIqKiBhcmd2KQogI2VuZGlmCiAKICAgICAvKiBQYXJzZSBvcHRp
b25zICovCi0gICAgZm9yKGkgPSAxOyBpIDwgYXJnYzsgaSsrKSB7Ci0gICAgICAgIGlmKHNlZW5f
ZG91YmxlX2Rhc2ggfHwgYXJndltpXVswXSAhPSAnLScpIHsKLSAgICAgICAgICAgIHRlc3RzID0g
KGNvbnN0IHN0cnVjdCB0ZXN0X18qKikgcmVhbGxvYygodm9pZCopdGVzdHMsIChuKzEpICogc2l6
ZW9mKGNvbnN0IHN0cnVjdCB0ZXN0X18qKSk7Ci0gICAgICAgICAgICBpZih0ZXN0cyA9PSBOVUxM
KSB7CisgICAgZm9yIChpID0gMTsgaSA8IGFyZ2M7IGkrKykgeworICAgICAgICBpZiAoc2Vlbl9k
b3VibGVfZGFzaCB8fCBhcmd2W2ldWzBdICE9ICctJykgeworICAgICAgICAgICAgdGVzdHMgPSAo
Y29uc3Qgc3RydWN0IHRlc3RfXyAqKilyZWFsbG9jKAorICAgICAgICAgICAgICAgICh2b2lkICop
dGVzdHMsIChuICsgMSkgKiBzaXplb2YoY29uc3Qgc3RydWN0IHRlc3RfXyAqKSk7CisgICAgICAg
ICAgICBpZiAodGVzdHMgPT0gTlVMTCkgewogICAgICAgICAgICAgICAgIGZwcmludGYoc3RkZXJy
LCAiT3V0IG9mIG1lbW9yeS5cbiIpOwogICAgICAgICAgICAgICAgIGV4aXQoMik7CiAgICAgICAg
ICAgICB9CiAgICAgICAgICAgICB0ZXN0c1tuXSA9IHRlc3RfYnlfbmFtZV9fKGFyZ3ZbaV0pOwot
ICAgICAgICAgICAgaWYodGVzdHNbbl0gPT0gTlVMTCkgewotICAgICAgICAgICAgICAgIGZwcmlu
dGYoc3RkZXJyLCAiJXM6IFVucmVjb2duaXplZCB1bml0IHRlc3QgJyVzJ1xuIiwgYXJndlswXSwg
YXJndltpXSk7Ci0gICAgICAgICAgICAgICAgZnByaW50ZihzdGRlcnIsICJUcnkgJyVzIC0tbGlz
dCcgZm9yIGxpc3Qgb2YgdW5pdCB0ZXN0cy5cbiIsIGFyZ3ZbMF0pOworICAgICAgICAgICAgaWYg
KHRlc3RzW25dID09IE5VTEwpIHsKKyAgICAgICAgICAgICAgICBmcHJpbnRmKHN0ZGVyciwgIiVz
OiBVbnJlY29nbml6ZWQgdW5pdCB0ZXN0ICclcydcbiIsIGFyZ3ZbMF0sCisgICAgICAgICAgICAg
ICAgICAgICAgICBhcmd2W2ldKTsKKyAgICAgICAgICAgICAgICBmcHJpbnRmKHN0ZGVyciwgIlRy
eSAnJXMgLS1saXN0JyBmb3IgbGlzdCBvZiB1bml0IHRlc3RzLlxuIiwKKyAgICAgICAgICAgICAg
ICAgICAgICAgIGFyZ3ZbMF0pOwogICAgICAgICAgICAgICAgIGV4aXQoMik7CiAgICAgICAgICAg
ICB9CiAgICAgICAgICAgICBuKys7Ci0gICAgICAgIH0gZWxzZSBpZihzdHJjbXAoYXJndltpXSwg
Ii0tIikgPT0gMCkgeworICAgICAgICB9IGVsc2UgaWYgKHN0cmNtcChhcmd2W2ldLCAiLS0iKSA9
PSAwKSB7CiAgICAgICAgICAgICBzZWVuX2RvdWJsZV9kYXNoID0gMTsKLSAgICAgICAgfSBlbHNl
IGlmKHN0cmNtcChhcmd2W2ldLCAiLS1oZWxwIikgPT0gMCB8fCBzdHJjbXAoYXJndltpXSwgIi1o
IikgPT0gMCkgeworICAgICAgICB9IGVsc2UgaWYgKHN0cmNtcChhcmd2W2ldLCAiLS1oZWxwIikg
PT0gMCB8fAorICAgICAgICAgICAgICAgICAgIHN0cmNtcChhcmd2W2ldLCAiLWgiKSA9PSAwKSB7
CiAgICAgICAgICAgICB0ZXN0X2hlbHBfXygpOwogICAgICAgICAgICAgZXhpdCgwKTsKLSAgICAg
ICAgfSBlbHNlIGlmKHN0cmNtcChhcmd2W2ldLCAiLS12ZXJib3NlIikgPT0gMCB8fCBzdHJjbXAo
YXJndltpXSwgIi12IikgPT0gMCkgeworICAgICAgICB9IGVsc2UgaWYgKHN0cmNtcChhcmd2W2ld
LCAiLS12ZXJib3NlIikgPT0gMCB8fAorICAgICAgICAgICAgICAgICAgIHN0cmNtcChhcmd2W2ld
LCAiLXYiKSA9PSAwKSB7CiAgICAgICAgICAgICB0ZXN0X3ZlcmJvc2VfbGV2ZWxfXysrOwotICAg
ICAgICB9IGVsc2UgaWYoc3RybmNtcChhcmd2W2ldLCAiLS12ZXJib3NlPSIsIDEwKSA9PSAwKSB7
CisgICAgICAgIH0gZWxzZSBpZiAoc3RybmNtcChhcmd2W2ldLCAiLS12ZXJib3NlPSIsIDEwKSA9
PSAwKSB7CiAgICAgICAgICAgICB0ZXN0X3ZlcmJvc2VfbGV2ZWxfXyA9IGF0b2koYXJndltpXSAr
IDEwKTsKLSAgICAgICAgfSBlbHNlIGlmKHN0cmNtcChhcmd2W2ldLCAiLS1jb2xvcj1hdXRvIikg
PT0gMCkgeworICAgICAgICB9IGVsc2UgaWYgKHN0cmNtcChhcmd2W2ldLCAiLS1jb2xvcj1hdXRv
IikgPT0gMCkgewogICAgICAgICAgICAgLyogbm9vcCAoc2V0IGZyb20gYWJvdmUpICovCi0gICAg
ICAgIH0gZWxzZSBpZihzdHJjbXAoYXJndltpXSwgIi0tY29sb3I9YWx3YXlzIikgPT0gMCB8fCBz
dHJjbXAoYXJndltpXSwgIi0tY29sb3IiKSA9PSAwKSB7CisgICAgICAgIH0gZWxzZSBpZiAoc3Ry
Y21wKGFyZ3ZbaV0sICItLWNvbG9yPWFsd2F5cyIpID09IDAgfHwKKyAgICAgICAgICAgICAgICAg
ICBzdHJjbXAoYXJndltpXSwgIi0tY29sb3IiKSA9PSAwKSB7CiAgICAgICAgICAgICB0ZXN0X2Nv
bG9yaXplX18gPSAxOwotICAgICAgICB9IGVsc2UgaWYoc3RyY21wKGFyZ3ZbaV0sICItLWNvbG9y
PW5ldmVyIikgPT0gMCkgeworICAgICAgICB9IGVsc2UgaWYgKHN0cmNtcChhcmd2W2ldLCAiLS1j
b2xvcj1uZXZlciIpID09IDApIHsKICAgICAgICAgICAgIHRlc3RfY29sb3JpemVfXyA9IDA7Ci0g
ICAgICAgIH0gZWxzZSBpZihzdHJjbXAoYXJndltpXSwgIi0tc2tpcCIpID09IDAgfHwgc3RyY21w
KGFyZ3ZbaV0sICItcyIpID09IDApIHsKKyAgICAgICAgfSBlbHNlIGlmIChzdHJjbXAoYXJndltp
XSwgIi0tc2tpcCIpID09IDAgfHwKKyAgICAgICAgICAgICAgICAgICBzdHJjbXAoYXJndltpXSwg
Ii1zIikgPT0gMCkgewogICAgICAgICAgICAgdGVzdF9za2lwX21vZGVfXyA9IDE7Ci0gICAgICAg
IH0gZWxzZSBpZihzdHJjbXAoYXJndltpXSwgIi0tbm8tZXhlYyIpID09IDApIHsKKyAgICAgICAg
fSBlbHNlIGlmIChzdHJjbXAoYXJndltpXSwgIi0tbm8tZXhlYyIpID09IDApIHsKICAgICAgICAg
ICAgIHRlc3Rfbm9fZXhlY19fID0gMTsKLSAgICAgICAgfSBlbHNlIGlmKHN0cmNtcChhcmd2W2ld
LCAiLS1uby1zdW1tYXJ5IikgPT0gMCkgeworICAgICAgICB9IGVsc2UgaWYgKHN0cmNtcChhcmd2
W2ldLCAiLS1uby1zdW1tYXJ5IikgPT0gMCkgewogICAgICAgICAgICAgdGVzdF9ub19zdW1tYXJ5
X18gPSAxOwotICAgICAgICB9IGVsc2UgaWYoc3RyY21wKGFyZ3ZbaV0sICItLWxpc3QiKSA9PSAw
IHx8IHN0cmNtcChhcmd2W2ldLCAiLWwiKSA9PSAwKSB7CisgICAgICAgIH0gZWxzZSBpZiAoc3Ry
Y21wKGFyZ3ZbaV0sICItLWxpc3QiKSA9PSAwIHx8CisgICAgICAgICAgICAgICAgICAgc3RyY21w
KGFyZ3ZbaV0sICItbCIpID09IDApIHsKICAgICAgICAgICAgIHRlc3RfbGlzdF9uYW1lc19fKCk7
CiAgICAgICAgICAgICBleGl0KDApOwogICAgICAgICB9IGVsc2UgewpAQCAtNTgyLDY2ICs2NDYs
NjggQEAgbWFpbihpbnQgYXJnYywgY2hhcioqIGFyZ3YpCiAKICAgICAvKiBDb3VudCBhbGwgdGVz
dCB1bml0cyAqLwogICAgIHRlc3RfY291bnRfXyA9IDA7Ci0gICAgZm9yKGkgPSAwOyB0ZXN0X2xp
c3RfX1tpXS5mdW5jICE9IE5VTEw7IGkrKykKKyAgICBmb3IgKGkgPSAwOyB0ZXN0X2xpc3RfX1tp
XS5mdW5jICE9IE5VTEw7IGkrKykKICAgICAgICAgdGVzdF9jb3VudF9fKys7CiAKICAgICAvKiBS
dW4gdGhlIHRlc3RzICovCi0gICAgaWYobiA9PSAwKSB7CisgICAgaWYgKG4gPT0gMCkgewogICAg
ICAgICAvKiBSdW4gYWxsIHRlc3RzICovCi0gICAgICAgIGZvcihpID0gMDsgdGVzdF9saXN0X19b
aV0uZnVuYyAhPSBOVUxMOyBpKyspCisgICAgICAgIGZvciAoaSA9IDA7IHRlc3RfbGlzdF9fW2ld
LmZ1bmMgIT0gTlVMTDsgaSsrKQogICAgICAgICAgICAgdGVzdF9ydW5fXygmdGVzdF9saXN0X19b
aV0pOwotICAgIH0gZWxzZSBpZighdGVzdF9za2lwX21vZGVfXykgeworICAgIH0gZWxzZSBpZiAo
IXRlc3Rfc2tpcF9tb2RlX18pIHsKICAgICAgICAgLyogUnVuIHRoZSBsaXN0ZWQgdGVzdHMgKi8K
LSAgICAgICAgZm9yKGkgPSAwOyBpIDwgbjsgaSsrKQorICAgICAgICBmb3IgKGkgPSAwOyBpIDwg
bjsgaSsrKQogICAgICAgICAgICAgdGVzdF9ydW5fXyh0ZXN0c1tpXSk7CiAgICAgfSBlbHNlIHsK
ICAgICAgICAgLyogUnVuIGFsbCB0ZXN0cyBleGNlcHQgdGhvc2UgbGlzdGVkICovCi0gICAgICAg
IGZvcihpID0gMDsgdGVzdF9saXN0X19baV0uZnVuYyAhPSBOVUxMOyBpKyspIHsKKyAgICAgICAg
Zm9yIChpID0gMDsgdGVzdF9saXN0X19baV0uZnVuYyAhPSBOVUxMOyBpKyspIHsKICAgICAgICAg
ICAgIGludCB3YW50X3NraXAgPSAwOwotICAgICAgICAgICAgZm9yKGogPSAwOyBqIDwgbjsgaisr
KSB7Ci0gICAgICAgICAgICAgICAgaWYodGVzdHNbal0gPT0gJnRlc3RfbGlzdF9fW2ldKSB7Cisg
ICAgICAgICAgICBmb3IgKGogPSAwOyBqIDwgbjsgaisrKSB7CisgICAgICAgICAgICAgICAgaWYg
KHRlc3RzW2pdID09ICZ0ZXN0X2xpc3RfX1tpXSkgewogICAgICAgICAgICAgICAgICAgICB3YW50
X3NraXAgPSAxOwogICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICB9
CiAgICAgICAgICAgICB9Ci0gICAgICAgICAgICBpZighd2FudF9za2lwKQorICAgICAgICAgICAg
aWYgKCF3YW50X3NraXApCiAgICAgICAgICAgICAgICAgdGVzdF9ydW5fXygmdGVzdF9saXN0X19b
aV0pOwogICAgICAgICB9CiAgICAgfQogCiAgICAgLyogV3JpdGUgYSBzdW1tYXJ5ICovCi0gICAg
aWYoIXRlc3Rfbm9fc3VtbWFyeV9fICYmIHRlc3RfdmVyYm9zZV9sZXZlbF9fID49IDEpIHsKKyAg
ICBpZiAoIXRlc3Rfbm9fc3VtbWFyeV9fICYmIHRlc3RfdmVyYm9zZV9sZXZlbF9fID49IDEpIHsK
ICAgICAgICAgdGVzdF9wcmludF9pbl9jb2xvcl9fKENVVEVTVF9DT0xPUl9ERUZBVUxUX0lOVEVO
U0lWRV9fLCAiXG5TdW1tYXJ5OlxuIik7CiAKLSAgICAgICAgaWYodGVzdF92ZXJib3NlX2xldmVs
X18gPj0gMykgeworICAgICAgICBpZiAodGVzdF92ZXJib3NlX2xldmVsX18gPj0gMykgewogICAg
ICAgICAgICAgcHJpbnRmKCIgIENvdW50IG9mIGFsbCB1bml0IHRlc3RzOiAgICAgJTRkXG4iLCB0
ZXN0X2NvdW50X18pOwotICAgICAgICAgICAgcHJpbnRmKCIgIENvdW50IG9mIHJ1biB1bml0IHRl
c3RzOiAgICAgJTRkXG4iLCB0ZXN0X3N0YXRfcnVuX3VuaXRzX18pOwotICAgICAgICAgICAgcHJp
bnRmKCIgIENvdW50IG9mIGZhaWxlZCB1bml0IHRlc3RzOiAgJTRkXG4iLCB0ZXN0X3N0YXRfZmFp
bGVkX3VuaXRzX18pOwotICAgICAgICAgICAgcHJpbnRmKCIgIENvdW50IG9mIHNraXBwZWQgdW5p
dCB0ZXN0czogJTRkXG4iLCB0ZXN0X2NvdW50X18gLSB0ZXN0X3N0YXRfcnVuX3VuaXRzX18pOwor
ICAgICAgICAgICAgcHJpbnRmKCIgIENvdW50IG9mIHJ1biB1bml0IHRlc3RzOiAgICAgJTRkXG4i
LAorICAgICAgICAgICAgICAgICAgIHRlc3Rfc3RhdF9ydW5fdW5pdHNfXyk7CisgICAgICAgICAg
ICBwcmludGYoIiAgQ291bnQgb2YgZmFpbGVkIHVuaXQgdGVzdHM6ICAlNGRcbiIsCisgICAgICAg
ICAgICAgICAgICAgdGVzdF9zdGF0X2ZhaWxlZF91bml0c19fKTsKKyAgICAgICAgICAgIHByaW50
ZigiICBDb3VudCBvZiBza2lwcGVkIHVuaXQgdGVzdHM6ICU0ZFxuIiwKKyAgICAgICAgICAgICAg
ICAgICB0ZXN0X2NvdW50X18gLSB0ZXN0X3N0YXRfcnVuX3VuaXRzX18pOwogICAgICAgICB9CiAK
LSAgICAgICAgaWYodGVzdF9zdGF0X2ZhaWxlZF91bml0c19fID09IDApIHsKKyAgICAgICAgaWYg
KHRlc3Rfc3RhdF9mYWlsZWRfdW5pdHNfXyA9PSAwKSB7CiAgICAgICAgICAgICB0ZXN0X3ByaW50
X2luX2NvbG9yX18oQ1VURVNUX0NPTE9SX0dSRUVOX0lOVEVOU0lWRV9fLAotICAgICAgICAgICAg
ICAgICAgICAiICBTVUNDRVNTOiBBbGwgdW5pdCB0ZXN0cyBoYXZlIHBhc3NlZC5cbiIpOworICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICIgIFNVQ0NFU1M6IEFsbCB1bml0IHRlc3Rz
IGhhdmUgcGFzc2VkLlxuIik7CiAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICB0ZXN0X3By
aW50X2luX2NvbG9yX18oQ1VURVNUX0NPTE9SX1JFRF9JTlRFTlNJVkVfXywKLSAgICAgICAgICAg
ICAgICAgICAgIiAgRkFJTEVEOiAlZCBvZiAlZCB1bml0IHRlc3RzIGhhdmUgZmFpbGVkLlxuIiwK
LSAgICAgICAgICAgICAgICAgICAgdGVzdF9zdGF0X2ZhaWxlZF91bml0c19fLCB0ZXN0X3N0YXRf
cnVuX3VuaXRzX18pOworICAgICAgICAgICAgdGVzdF9wcmludF9pbl9jb2xvcl9fKAorICAgICAg
ICAgICAgICAgIENVVEVTVF9DT0xPUl9SRURfSU5URU5TSVZFX18sCisgICAgICAgICAgICAgICAg
IiAgRkFJTEVEOiAlZCBvZiAlZCB1bml0IHRlc3RzIGhhdmUgZmFpbGVkLlxuIiwKKyAgICAgICAg
ICAgICAgICB0ZXN0X3N0YXRfZmFpbGVkX3VuaXRzX18sIHRlc3Rfc3RhdF9ydW5fdW5pdHNfXyk7
CiAgICAgICAgIH0KICAgICB9CiAKLSAgICBpZih0ZXN0cyAhPSBOVUxMKQotICAgICAgICBmcmVl
KCh2b2lkKil0ZXN0cyk7CisgICAgaWYgKHRlc3RzICE9IE5VTEwpCisgICAgICAgIGZyZWUoKHZv
aWQgKil0ZXN0cyk7CiAKICAgICByZXR1cm4gKHRlc3Rfc3RhdF9mYWlsZWRfdW5pdHNfXyA9PSAw
KSA/IDAgOiAxOwogfQogCi0KLSNlbmRpZiAgLyogI2lmbmRlZiBURVNUX05PX01BSU4gKi8KKyNl
bmRpZiAvKiAjaWZuZGVmIFRFU1RfTk9fTUFJTiAqLwogCiAjaWZkZWYgX19jcGx1c3BsdXMKLSAg
ICB9ICAvKiBleHRlcm4gIkMiICovCit9IC8qIGV4dGVybiAiQyIgKi8KICNlbmRpZgogCi0KLSNl
bmRpZiAgLyogI2lmbmRlZiBDVVRFU1RfSF9fICovCisjZW5kaWYgLyogI2lmbmRlZiBDVVRFU1Rf
SF9fICovCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnNydHAvdGVzdC9kdGxzX3NydHBfZHJpdmVyLmMgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvdGVzdC9kdGxzX3NydHBf
ZHJpdmVyLmMKaW5kZXggZWJmNzNmOWZjNTFiNWU1MGU5ZjJlZDNkOTVlMTlmOGUwMjBiZGRmZC4u
NGY0ZDBhMzliMzhlZGM0YjQ4OGY2NGVkNTM3NjFkZmNkMDYzZWM2NSAxMDA2NDQKLS0tIGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL3Rlc3Qv
ZHRsc19zcnRwX2RyaXZlci5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlic3J0cC90ZXN0L2R0bHNfc3J0cF9kcml2ZXIuYwpAQCAtNywyNiAr
NywyNiBAQAogICogQ2lzY28gU3lzdGVtcywgSW5jLgogICovCiAvKgotICoJCisgKgogICogQ29w
eXJpZ2h0IChjKSAyMDAxLTIwMTcgQ2lzY28gU3lzdGVtcywgSW5jLgogICogQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KLSAqIAorICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCiAgKiBhcmUgbWV0
OgotICogCisgKgogICogICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRh
aW4gdGhlIGFib3ZlIGNvcHlyaWdodAogICogICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAKKyAqCiAgKiAgIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKICAqICAgY29w
eXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcK
ICAqICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzIHByb3ZpZGVkCiAgKiAgIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqIAorICoKICAqICAg
TmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgQ2lzY28gU3lzdGVtcywgSW5jLiBub3IgdGhlIG5hbWVz
IG9mIGl0cwogICogICBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9t
b3RlIHByb2R1Y3RzIGRlcml2ZWQKICAqICAgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3Bl
Y2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotICogCisgKgogICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwog
ICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QKICAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTCkBAIC00NiwxNzEgKzQ2LDE3MCBAQAogI2luY2x1ZGUg
ImdldG9wdF9zLmgiIC8qIGZvciBsb2NhbCBnZXRvcHQoKSAgICAqLwogI2luY2x1ZGUgInNydHBf
cHJpdi5oIgogCi1zcnRwX2Vycl9zdGF0dXNfdCAKLXRlc3RfZHRsc19zcnRwKHZvaWQpOworc3J0
cF9lcnJfc3RhdHVzX3QgdGVzdF9kdGxzX3NydHAodm9pZCk7CiAKLXNydHBfaGRyX3QgKgotc3J0
cF9jcmVhdGVfdGVzdF9wYWNrZXQoaW50IHBrdF9vY3RldF9sZW4sIHVpbnQzMl90IHNzcmMpOwor
c3J0cF9oZHJfdCAqc3J0cF9jcmVhdGVfdGVzdF9wYWNrZXQoaW50IHBrdF9vY3RldF9sZW4sIHVp
bnQzMl90IHNzcmMpOwogCi12b2lkCi11c2FnZShjaGFyICpwcm9nX25hbWUpIHsKLSAgcHJpbnRm
KCJ1c2FnZTogJXMgWyAtdCBdWyAtYyBdWyAtdiBdWy1kIDxkZWJ1Z19tb2R1bGU+IF0qIFsgLWwg
XVxuIgotICAgICAgICAgIiAgLWQgPG1vZD4gICB0dXJuIG9uIGRlYnVnZ2luZyBtb2R1bGUgPG1v
ZD5cbiIKLSAgICAgICAgICIgIC1sICAgICAgICAgbGlzdCBkZWJ1Z2dpbmcgbW9kdWxlc1xuIiwg
cHJvZ19uYW1lKTsKLSAgZXhpdCgxKTsKK3ZvaWQgdXNhZ2UoY2hhciAqcHJvZ19uYW1lKQorewor
ICAgIHByaW50ZigidXNhZ2U6ICVzIFsgLXQgXVsgLWMgXVsgLXYgXVstZCA8ZGVidWdfbW9kdWxl
PiBdKiBbIC1sIF1cbiIKKyAgICAgICAgICAgIiAgLWQgPG1vZD4gICB0dXJuIG9uIGRlYnVnZ2lu
ZyBtb2R1bGUgPG1vZD5cbiIKKyAgICAgICAgICAgIiAgLWwgICAgICAgICBsaXN0IGRlYnVnZ2lu
ZyBtb2R1bGVzXG4iLAorICAgICAgICAgICBwcm9nX25hbWUpOworICAgIGV4aXQoMSk7CiB9CiAK
LWludAotbWFpbihpbnQgYXJnYywgY2hhciAqYXJndltdKSB7Ci0gIHVuc2lnbmVkIGRvX2xpc3Rf
bW9kcyAgICAgID0gMDsKLSAgaW50IHE7Ci0gIHNydHBfZXJyX3N0YXR1c190IGVycjsKK2ludCBt
YWluKGludCBhcmdjLCBjaGFyICphcmd2W10pCit7CisgICAgdW5zaWduZWQgZG9fbGlzdF9tb2Rz
ID0gMDsKKyAgICBpbnQgcTsKKyAgICBzcnRwX2Vycl9zdGF0dXNfdCBlcnI7CiAKLSAgcHJpbnRm
KCJkdGxzX3NydHBfZHJpdmVyXG4iKTsKKyAgICBwcmludGYoImR0bHNfc3J0cF9kcml2ZXJcbiIp
OwogCi0gIC8qIGluaXRpYWxpemUgc3J0cCBsaWJyYXJ5ICovCi0gIGVyciA9IHNydHBfaW5pdCgp
OwotICBpZiAoZXJyKSB7Ci0gICAgcHJpbnRmKCJlcnJvcjogc3J0cCBpbml0IGZhaWxlZCB3aXRo
IGVycm9yIGNvZGUgJWRcbiIsIGVycik7Ci0gICAgZXhpdCgxKTsKLSAgfQotCi0gIC8qIHByb2Nl
c3MgaW5wdXQgYXJndW1lbnRzICovCi0gIHdoaWxlICgxKSB7Ci0gICAgcSA9IGdldG9wdF9zKGFy
Z2MsIGFyZ3YsICJsZDoiKTsKLSAgICBpZiAocSA9PSAtMSkgCi0gICAgICBicmVhazsKLSAgICBz
d2l0Y2ggKHEpIHsKLSAgICBjYXNlICdsJzoKLSAgICAgIGRvX2xpc3RfbW9kcyA9IDE7Ci0gICAg
ICBicmVhazsKLSAgICBjYXNlICdkJzoKLSAgICAgIGVyciA9IHNydHBfY3J5cHRvX2tlcm5lbF9z
ZXRfZGVidWdfbW9kdWxlKG9wdGFyZ19zLCAxKTsKLSAgICAgIGlmIChlcnIpIHsKLSAgICAgICAg
cHJpbnRmKCJlcnJvcjogc2V0IGRlYnVnIG1vZHVsZSAoJXMpIGZhaWxlZFxuIiwgb3B0YXJnX3Mp
OworICAgIC8qIGluaXRpYWxpemUgc3J0cCBsaWJyYXJ5ICovCisgICAgZXJyID0gc3J0cF9pbml0
KCk7CisgICAgaWYgKGVycikgeworICAgICAgICBwcmludGYoImVycm9yOiBzcnRwIGluaXQgZmFp
bGVkIHdpdGggZXJyb3IgY29kZSAlZFxuIiwgZXJyKTsKICAgICAgICAgZXhpdCgxKTsKLSAgICAg
IH0gIAotICAgICAgYnJlYWs7Ci0gICAgZGVmYXVsdDoKLSAgICAgIHVzYWdlKGFyZ3ZbMF0pOwot
ICAgIH0gICAgCi0gIH0KLQotICBpZiAoZG9fbGlzdF9tb2RzKSB7Ci0gICAgZXJyID0gc3J0cF9j
cnlwdG9fa2VybmVsX2xpc3RfZGVidWdfbW9kdWxlcygpOworICAgIH0KKworICAgIC8qIHByb2Nl
c3MgaW5wdXQgYXJndW1lbnRzICovCisgICAgd2hpbGUgKDEpIHsKKyAgICAgICAgcSA9IGdldG9w
dF9zKGFyZ2MsIGFyZ3YsICJsZDoiKTsKKyAgICAgICAgaWYgKHEgPT0gLTEpCisgICAgICAgICAg
ICBicmVhazsKKyAgICAgICAgc3dpdGNoIChxKSB7CisgICAgICAgIGNhc2UgJ2wnOgorICAgICAg
ICAgICAgZG9fbGlzdF9tb2RzID0gMTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNl
ICdkJzoKKyAgICAgICAgICAgIGVyciA9IHNydHBfY3J5cHRvX2tlcm5lbF9zZXRfZGVidWdfbW9k
dWxlKG9wdGFyZ19zLCAxKTsKKyAgICAgICAgICAgIGlmIChlcnIpIHsKKyAgICAgICAgICAgICAg
ICBwcmludGYoImVycm9yOiBzZXQgZGVidWcgbW9kdWxlICglcykgZmFpbGVkXG4iLCBvcHRhcmdf
cyk7CisgICAgICAgICAgICAgICAgZXhpdCgxKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAg
IGJyZWFrOworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgdXNhZ2UoYXJndlswXSk7Cisg
ICAgICAgIH0KKyAgICB9CisKKyAgICBpZiAoZG9fbGlzdF9tb2RzKSB7CisgICAgICAgIGVyciA9
IHNydHBfY3J5cHRvX2tlcm5lbF9saXN0X2RlYnVnX21vZHVsZXMoKTsKKyAgICAgICAgaWYgKGVy
cikgeworICAgICAgICAgICAgcHJpbnRmKCJlcnJvcjogbGlzdCBvZiBkZWJ1ZyBtb2R1bGVzIGZh
aWxlZFxuIik7CisgICAgICAgICAgICBleGl0KDEpOworICAgICAgICB9CisgICAgfQorCisgICAg
cHJpbnRmKCJ0ZXN0aW5nIGR0bHNfc3J0cC4uLiIpOworICAgIGVyciA9IHRlc3RfZHRsc19zcnRw
KCk7CiAgICAgaWYgKGVycikgewotICAgICAgcHJpbnRmKCJlcnJvcjogbGlzdCBvZiBkZWJ1ZyBt
b2R1bGVzIGZhaWxlZFxuIik7Ci0gICAgICBleGl0KDEpOworICAgICAgICBwcmludGYoIlxuZXJy
b3IgKGNvZGUgJWQpXG4iLCBlcnIpOworICAgICAgICBleGl0KDEpOwogICAgIH0KLSAgfQorICAg
IHByaW50ZigicGFzc2VkXG4iKTsKIAotICBwcmludGYoInRlc3RpbmcgZHRsc19zcnRwLi4uIik7
Ci0gIGVyciA9IHRlc3RfZHRsc19zcnRwKCk7Ci0gIGlmIChlcnIpIHsKLSAgICBwcmludGYoIlxu
ZXJyb3IgKGNvZGUgJWQpXG4iLCBlcnIpOwotICAgIGV4aXQoMSk7Ci0gIH0KLSAgcHJpbnRmKCJw
YXNzZWRcbiIpOwotICAKLSAgLyogc2h1dCBkb3duIHNydHAgbGlicmFyeSAqLwotICBlcnIgPSBz
cnRwX3NodXRkb3duKCk7Ci0gIGlmIChlcnIpIHsKLSAgICBwcmludGYoImVycm9yOiBzcnRwIHNo
dXRkb3duIGZhaWxlZCB3aXRoIGVycm9yIGNvZGUgJWRcbiIsIGVycik7Ci0gICAgZXhpdCgxKTsK
LSAgfQorICAgIC8qIHNodXQgZG93biBzcnRwIGxpYnJhcnkgKi8KKyAgICBlcnIgPSBzcnRwX3No
dXRkb3duKCk7CisgICAgaWYgKGVycikgeworICAgICAgICBwcmludGYoImVycm9yOiBzcnRwIHNo
dXRkb3duIGZhaWxlZCB3aXRoIGVycm9yIGNvZGUgJWRcbiIsIGVycik7CisgICAgICAgIGV4aXQo
MSk7CisgICAgfQogCi0gIHJldHVybiAwOworICAgIHJldHVybiAwOwogfQogCitzcnRwX2Vycl9z
dGF0dXNfdCB0ZXN0X2R0bHNfc3J0cCh2b2lkKQoreworICAgIHNydHBfaGRyX3QgKnRlc3RfcGFj
a2V0OworICAgIGludCB0ZXN0X3BhY2tldF9sZW4gPSA4MDsKKyAgICBzcnRwX3QgczsKKyAgICBz
cnRwX3BvbGljeV90IHBvbGljeTsKKyAgICB1aW50OF90IGtleVtTUlRQX01BWF9LRVlfTEVOXTsK
KyAgICB1aW50OF90IHNhbHRbU1JUUF9NQVhfS0VZX0xFTl07CisgICAgdW5zaWduZWQgaW50IGtl
eV9sZW4sIHNhbHRfbGVuOworICAgIHNydHBfcHJvZmlsZV90IHByb2ZpbGU7CisgICAgc3J0cF9l
cnJfc3RhdHVzX3QgZXJyOwogCi1zcnRwX2Vycl9zdGF0dXNfdAotdGVzdF9kdGxzX3NydHAodm9p
ZCkgewotICBzcnRwX2hkcl90ICp0ZXN0X3BhY2tldDsKLSAgaW50IHRlc3RfcGFja2V0X2xlbiA9
IDgwOwotICBzcnRwX3QgczsKLSAgc3J0cF9wb2xpY3lfdCBwb2xpY3k7Ci0gIHVpbnQ4X3Qga2V5
W1NSVFBfTUFYX0tFWV9MRU5dOwotICB1aW50OF90IHNhbHRbU1JUUF9NQVhfS0VZX0xFTl07Ci0g
IHVuc2lnbmVkIGludCBrZXlfbGVuLCBzYWx0X2xlbjsKLSAgc3J0cF9wcm9maWxlX3QgcHJvZmls
ZTsKLSAgc3J0cF9lcnJfc3RhdHVzX3QgZXJyOwotCi0gIG1lbXNldCgmcG9saWN5LCAweDAsIHNp
emVvZihzcnRwX3BvbGljeV90KSk7Ci0KLSAgLyogY3JlYXRlIGEgJ251bGwnIFNSVFAgc2Vzc2lv
biAqLwotICBlcnIgPSBzcnRwX2NyZWF0ZSgmcywgTlVMTCk7Ci0gIGlmIChlcnIpIAotICAgIHJl
dHVybiBlcnI7Ci0KLSAgLyogCi0gICAqIHZlcmlmeSB0aGF0IHBhY2tldC1wcm9jZXNzaW5nIGZ1
bmN0aW9ucyBiZWhhdmUgcHJvcGVybHkgLSB3ZQotICAgKiBleHBlY3QgdGhhdCB0aGVzZSBmdW5j
dGlvbnMgd2lsbCByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX25vX2N0eAotICAgKi8KLSAgdGVzdF9w
YWNrZXQgPSBzcnRwX2NyZWF0ZV90ZXN0X3BhY2tldCg4MCwgMHhhNWE1YTVhNSk7Ci0gIGlmICh0
ZXN0X3BhY2tldCA9PSBOVUxMKSAKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2FsbG9jX2Zh
aWw7Ci0gIGVyciA9IHNydHBfcHJvdGVjdChzLCB0ZXN0X3BhY2tldCwgJnRlc3RfcGFja2V0X2xl
bik7Ci0gIGlmIChlcnIgIT0gc3J0cF9lcnJfc3RhdHVzX25vX2N0eCkgewotICAgIHByaW50Zigi
d3JvbmcgcmV0dXJuIHZhbHVlIGZyb20gc3J0cF9wcm90ZWN0KCkgKGdvdCBjb2RlICVkKVxuIiwg
Ci0JICAgZXJyKTsKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7Ci0gIH0KLSAgZXJy
ID0gc3J0cF91bnByb3RlY3QocywgdGVzdF9wYWNrZXQsICZ0ZXN0X3BhY2tldF9sZW4pOwotICBp
ZiAoZXJyICE9IHNydHBfZXJyX3N0YXR1c19ub19jdHgpIHsKLSAgICBwcmludGYoIndyb25nIHJl
dHVybiB2YWx1ZSBmcm9tIHNydHBfdW5wcm90ZWN0KCkgKGdvdCBjb2RlICVkKVxuIiwgCi0JICAg
ZXJyKTsKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7Ci0gIH0KLSAgZXJyID0gc3J0
cF9wcm90ZWN0X3J0Y3AocywgdGVzdF9wYWNrZXQsICZ0ZXN0X3BhY2tldF9sZW4pOwotICBpZiAo
ZXJyICE9IHNydHBfZXJyX3N0YXR1c19ub19jdHgpIHsKLSAgICBwcmludGYoIndyb25nIHJldHVy
biB2YWx1ZSBmcm9tIHNydHBfcHJvdGVjdF9ydGNwKCkgKGdvdCBjb2RlICVkKVxuIiwgCi0JICAg
ZXJyKTsKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7Ci0gIH0KLSAgZXJyID0gc3J0
cF91bnByb3RlY3RfcnRjcChzLCB0ZXN0X3BhY2tldCwgJnRlc3RfcGFja2V0X2xlbik7Ci0gIGlm
IChlcnIgIT0gc3J0cF9lcnJfc3RhdHVzX25vX2N0eCkgewotICAgIHByaW50Zigid3JvbmcgcmV0
dXJuIHZhbHVlIGZyb20gc3J0cF91bnByb3RlY3RfcnRjcCgpIChnb3QgY29kZSAlZClcbiIsIAot
CSAgIGVycik7Ci0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19mYWlsOwotICB9Ci0KLQotICAv
KiAKLSAgICogc2V0IGtleXMgdG8ga25vd24gdmFsdWVzIGZvciB0ZXN0aW5nCi0gICAqLwotICBw
cm9maWxlID0gc3J0cF9wcm9maWxlX2FlczEyOF9jbV9zaGExXzgwOwotICBrZXlfbGVuID0gc3J0
cF9wcm9maWxlX2dldF9tYXN0ZXJfa2V5X2xlbmd0aChwcm9maWxlKTsKLSAgc2FsdF9sZW4gPSBz
cnRwX3Byb2ZpbGVfZ2V0X21hc3Rlcl9zYWx0X2xlbmd0aChwcm9maWxlKTsKLSAgbWVtc2V0KGtl
eSwgMHhmZiwga2V5X2xlbik7Ci0gIG1lbXNldChzYWx0LCAweGVlLCBzYWx0X2xlbik7Ci0gIHNy
dHBfYXBwZW5kX3NhbHRfdG9fa2V5KGtleSwga2V5X2xlbiwgc2FsdCwgc2FsdF9sZW4pOwotICBw
b2xpY3kua2V5ID0ga2V5OwotCi0gIC8qIGluaXRpYWxpemUgU1JUUCBwb2xpY3kgZnJvbSBwcm9m
aWxlICAqLwotICBlcnIgPSBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Zyb21fcHJvZmlsZV9mb3Jf
cnRwKCZwb2xpY3kucnRwLCBwcm9maWxlKTsKLSAgaWYgKGVycikgcmV0dXJuIGVycjsKLSAgZXJy
ID0gc3J0cF9jcnlwdG9fcG9saWN5X3NldF9mcm9tX3Byb2ZpbGVfZm9yX3J0Y3AoJnBvbGljeS5y
dGNwLCBwcm9maWxlKTsKLSAgaWYgKGVycikgcmV0dXJuIGVycjsKLSAgcG9saWN5LnNzcmMudHlw
ZSAgPSBzc3JjX2FueV9pbmJvdW5kOwotICBwb2xpY3kuZWt0ID0gTlVMTDsKLSAgcG9saWN5Lndp
bmRvd19zaXplID0gMTI4OwotICBwb2xpY3kuYWxsb3dfcmVwZWF0X3R4ID0gMDsKLSAgcG9saWN5
Lm5leHQgPSBOVUxMOwotICAgIAotICBlcnIgPSBzcnRwX2FkZF9zdHJlYW0ocywgJnBvbGljeSk7
Ci0gIGlmIChlcnIpCi0gICAgcmV0dXJuIGVycjsKLSAgCi0gIGVyciA9IHNydHBfZGVhbGxvYyhz
KTsKLSAgaWYgKGVycikKLSAgICByZXR1cm4gZXJyOwotCi0gIGZyZWUodGVzdF9wYWNrZXQpOwot
Ci0gIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7Ci19CisgICAgbWVtc2V0KCZwb2xpY3ksIDB4
MCwgc2l6ZW9mKHNydHBfcG9saWN5X3QpKTsKIAorICAgIC8qIGNyZWF0ZSBhICdudWxsJyBTUlRQ
IHNlc3Npb24gKi8KKyAgICBlcnIgPSBzcnRwX2NyZWF0ZSgmcywgTlVMTCk7CisgICAgaWYgKGVy
cikKKyAgICAgICAgcmV0dXJuIGVycjsKIAorICAgIC8qCisgICAgICogdmVyaWZ5IHRoYXQgcGFj
a2V0LXByb2Nlc3NpbmcgZnVuY3Rpb25zIGJlaGF2ZSBwcm9wZXJseSAtIHdlCisgICAgICogZXhw
ZWN0IHRoYXQgdGhlc2UgZnVuY3Rpb25zIHdpbGwgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19ub19j
dHgKKyAgICAgKi8KKyAgICB0ZXN0X3BhY2tldCA9IHNydHBfY3JlYXRlX3Rlc3RfcGFja2V0KDgw
LCAweGE1YTVhNWE1KTsKKyAgICBpZiAodGVzdF9wYWNrZXQgPT0gTlVMTCkKKyAgICAgICAgcmV0
dXJuIHNydHBfZXJyX3N0YXR1c19hbGxvY19mYWlsOworCisgICAgZXJyID0gc3J0cF9wcm90ZWN0
KHMsIHRlc3RfcGFja2V0LCAmdGVzdF9wYWNrZXRfbGVuKTsKKyAgICBpZiAoZXJyICE9IHNydHBf
ZXJyX3N0YXR1c19ub19jdHgpIHsKKyAgICAgICAgcHJpbnRmKCJ3cm9uZyByZXR1cm4gdmFsdWUg
ZnJvbSBzcnRwX3Byb3RlY3QoKSAoZ290IGNvZGUgJWQpXG4iLCBlcnIpOworICAgICAgICByZXR1
cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7CisgICAgfQorCisgICAgZXJyID0gc3J0cF91bnByb3Rl
Y3QocywgdGVzdF9wYWNrZXQsICZ0ZXN0X3BhY2tldF9sZW4pOworICAgIGlmIChlcnIgIT0gc3J0
cF9lcnJfc3RhdHVzX25vX2N0eCkgeworICAgICAgICBwcmludGYoIndyb25nIHJldHVybiB2YWx1
ZSBmcm9tIHNydHBfdW5wcm90ZWN0KCkgKGdvdCBjb2RlICVkKVxuIiwgZXJyKTsKKyAgICAgICAg
cmV0dXJuIHNydHBfZXJyX3N0YXR1c19mYWlsOworICAgIH0KKworICAgIGVyciA9IHNydHBfcHJv
dGVjdF9ydGNwKHMsIHRlc3RfcGFja2V0LCAmdGVzdF9wYWNrZXRfbGVuKTsKKyAgICBpZiAoZXJy
ICE9IHNydHBfZXJyX3N0YXR1c19ub19jdHgpIHsKKyAgICAgICAgcHJpbnRmKCJ3cm9uZyByZXR1
cm4gdmFsdWUgZnJvbSBzcnRwX3Byb3RlY3RfcnRjcCgpIChnb3QgY29kZSAlZClcbiIsCisgICAg
ICAgICAgICAgICBlcnIpOworICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7Cisg
ICAgfQorCisgICAgZXJyID0gc3J0cF91bnByb3RlY3RfcnRjcChzLCB0ZXN0X3BhY2tldCwgJnRl
c3RfcGFja2V0X2xlbik7CisgICAgaWYgKGVyciAhPSBzcnRwX2Vycl9zdGF0dXNfbm9fY3R4KSB7
CisgICAgICAgIHByaW50Zigid3JvbmcgcmV0dXJuIHZhbHVlIGZyb20gc3J0cF91bnByb3RlY3Rf
cnRjcCgpIChnb3QgY29kZSAlZClcbiIsCisgICAgICAgICAgICAgICBlcnIpOworICAgICAgICBy
ZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7CisgICAgfQorCisgICAgLyoKKyAgICAgKiBzZXQg
a2V5cyB0byBrbm93biB2YWx1ZXMgZm9yIHRlc3RpbmcKKyAgICAgKi8KKyAgICBwcm9maWxlID0g
c3J0cF9wcm9maWxlX2FlczEyOF9jbV9zaGExXzgwOworICAgIGtleV9sZW4gPSBzcnRwX3Byb2Zp
bGVfZ2V0X21hc3Rlcl9rZXlfbGVuZ3RoKHByb2ZpbGUpOworICAgIHNhbHRfbGVuID0gc3J0cF9w
cm9maWxlX2dldF9tYXN0ZXJfc2FsdF9sZW5ndGgocHJvZmlsZSk7CisgICAgbWVtc2V0KGtleSwg
MHhmZiwga2V5X2xlbik7CisgICAgbWVtc2V0KHNhbHQsIDB4ZWUsIHNhbHRfbGVuKTsKKyAgICBz
cnRwX2FwcGVuZF9zYWx0X3RvX2tleShrZXksIGtleV9sZW4sIHNhbHQsIHNhbHRfbGVuKTsKKyAg
ICBwb2xpY3kua2V5ID0ga2V5OworCisgICAgLyogaW5pdGlhbGl6ZSBTUlRQIHBvbGljeSBmcm9t
IHByb2ZpbGUgICovCisgICAgZXJyID0gc3J0cF9jcnlwdG9fcG9saWN5X3NldF9mcm9tX3Byb2Zp
bGVfZm9yX3J0cCgmcG9saWN5LnJ0cCwgcHJvZmlsZSk7CisgICAgaWYgKGVycikKKyAgICAgICAg
cmV0dXJuIGVycjsKKyAgICBlcnIgPSBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Zyb21fcHJvZmls
ZV9mb3JfcnRjcCgmcG9saWN5LnJ0Y3AsIHByb2ZpbGUpOworICAgIGlmIChlcnIpCisgICAgICAg
IHJldHVybiBlcnI7CisgICAgcG9saWN5LnNzcmMudHlwZSA9IHNzcmNfYW55X2luYm91bmQ7Cisg
ICAgcG9saWN5LmVrdCA9IE5VTEw7CisgICAgcG9saWN5LndpbmRvd19zaXplID0gMTI4OworICAg
IHBvbGljeS5hbGxvd19yZXBlYXRfdHggPSAwOworICAgIHBvbGljeS5uZXh0ID0gTlVMTDsKKwor
ICAgIGVyciA9IHNydHBfYWRkX3N0cmVhbShzLCAmcG9saWN5KTsKKyAgICBpZiAoZXJyKQorICAg
ICAgICByZXR1cm4gZXJyOworCisgICAgZXJyID0gc3J0cF9kZWFsbG9jKHMpOworICAgIGlmIChl
cnIpCisgICAgICAgIHJldHVybiBlcnI7CisKKyAgICBmcmVlKHRlc3RfcGFja2V0KTsKKworICAg
IHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7Cit9CiAKIC8qCiAgKiBzcnRwX2NyZWF0ZV90ZXN0
X3BhY2tldChsZW4sIHNzcmMpIHJldHVybnMgYSBwb2ludGVyIHRvIGEKQEAgLTIyNSwzOSArMjI0
LDM4IEBAIHRlc3RfZHRsc19zcnRwKHZvaWQpIHsKICAqIGRlYWxsb2NhdGVkIHdpdGggdGhlIGZy
ZWUoKSBjYWxsIG9uY2UgaXQgaXMgbm8gbG9uZ2VyIG5lZWRlZC4KICAqLwogCi1zcnRwX2hkcl90
ICoKLXNydHBfY3JlYXRlX3Rlc3RfcGFja2V0KGludCBwa3Rfb2N0ZXRfbGVuLCB1aW50MzJfdCBz
c3JjKSB7Ci0gIGludCBpOwotICB1aW50OF90ICpidWZmZXI7Ci0gIHNydHBfaGRyX3QgKmhkcjsK
LSAgaW50IGJ5dGVzX2luX2hkciA9IDEyOwotCi0gIC8qIGFsbG9jYXRlIG1lbW9yeSBmb3IgdGVz
dCBwYWNrZXQgKi8KLSAgaGRyID0gbWFsbG9jKHBrdF9vY3RldF9sZW4gKyBieXRlc19pbl9oZHIK
LQkgICAgICAgKyBTUlRQX01BWF9UUkFJTEVSX0xFTiArIDQpOwotICBpZiAoIWhkcikKLSAgICBy
ZXR1cm4gTlVMTDsKLSAgCi0gIGhkci0+dmVyc2lvbiA9IDI7ICAgICAgICAgICAgICAvKiBSVFAg
dmVyc2lvbiB0d28gICAgICovCi0gIGhkci0+cCAgICA9IDA7ICAgICAgICAgICAgICAgICAvKiBu
byBwYWRkaW5nIG5lZWRlZCAgICovCi0gIGhkci0+eCAgICA9IDA7ICAgICAgICAgICAgICAgICAv
KiBubyBoZWFkZXIgZXh0ZW5zaW9uICovCi0gIGhkci0+Y2MgICA9IDA7ICAgICAgICAgICAgICAg
ICAvKiBubyBDU1JDcyAgICAgICAgICAgICovCi0gIGhkci0+bSAgICA9IDA7ICAgICAgICAgICAg
ICAgICAvKiBtYXJrZXIgYml0ICAgICAgICAgICovCi0gIGhkci0+cHQgICA9IDB4ZjsgICAgICAg
ICAgICAgICAvKiBwYXlsb2FkIHR5cGUgICAgICAgICovCi0gIGhkci0+c2VxICA9IGh0b25zKDB4
MTIzNCk7ICAgICAvKiBzZXF1ZW5jZSBudW1iZXIgICAgICovCi0gIGhkci0+dHMgICA9IGh0b25s
KDB4ZGVjYWZiYWQpOyAvKiB0aW1lc3RhbXAgICAgICAgICAgICovCi0gIGhkci0+c3NyYyA9IGh0
b25sKHNzcmMpOyAgICAgICAvKiBzeW5jaC4gc291cmNlICAgICAgICovCi0KLSAgYnVmZmVyID0g
KHVpbnQ4X3QgKiloZHI7Ci0gIGJ1ZmZlciArPSBieXRlc19pbl9oZHI7Ci0KLSAgLyogc2V0IFJU
UCBkYXRhIHRvIDB4YWIgKi8KLSAgZm9yIChpPTA7IGkgPCBwa3Rfb2N0ZXRfbGVuOyBpKyspCi0g
ICAgKmJ1ZmZlcisrID0gMHhhYjsKLQotICAvKiBzZXQgcG9zdC1kYXRhIHZhbHVlIHRvIDB4ZmZm
ZiB0byBlbmFibGUgb3ZlcnJ1biBjaGVja2luZyAqLwotICBmb3IgKGk9MDsgaSA8IFNSVFBfTUFY
X1RSQUlMRVJfTEVOKzQ7IGkrKykKLSAgICAqYnVmZmVyKysgPSAweGZmOwotCi0gIHJldHVybiBo
ZHI7CitzcnRwX2hkcl90ICpzcnRwX2NyZWF0ZV90ZXN0X3BhY2tldChpbnQgcGt0X29jdGV0X2xl
biwgdWludDMyX3Qgc3NyYykKK3sKKyAgICBpbnQgaTsKKyAgICB1aW50OF90ICpidWZmZXI7Cisg
ICAgc3J0cF9oZHJfdCAqaGRyOworICAgIGludCBieXRlc19pbl9oZHIgPSAxMjsKKworICAgIC8q
IGFsbG9jYXRlIG1lbW9yeSBmb3IgdGVzdCBwYWNrZXQgKi8KKyAgICBoZHIgPSBtYWxsb2MocGt0
X29jdGV0X2xlbiArIGJ5dGVzX2luX2hkciArIFNSVFBfTUFYX1RSQUlMRVJfTEVOICsgNCk7Cisg
ICAgaWYgKCFoZHIpCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgaGRyLT52ZXJzaW9uID0g
MjsgICAgICAgICAgICAvKiBSVFAgdmVyc2lvbiB0d28gICAgICovCisgICAgaGRyLT5wID0gMDsg
ICAgICAgICAgICAgICAgICAvKiBubyBwYWRkaW5nIG5lZWRlZCAgICovCisgICAgaGRyLT54ID0g
MDsgICAgICAgICAgICAgICAgICAvKiBubyBoZWFkZXIgZXh0ZW5zaW9uICovCisgICAgaGRyLT5j
YyA9IDA7ICAgICAgICAgICAgICAgICAvKiBubyBDU1JDcyAgICAgICAgICAgICovCisgICAgaGRy
LT5tID0gMDsgICAgICAgICAgICAgICAgICAvKiBtYXJrZXIgYml0ICAgICAgICAgICovCisgICAg
aGRyLT5wdCA9IDB4ZjsgICAgICAgICAgICAgICAvKiBwYXlsb2FkIHR5cGUgICAgICAgICovCisg
ICAgaGRyLT5zZXEgPSBodG9ucygweDEyMzQpOyAgICAvKiBzZXF1ZW5jZSBudW1iZXIgICAgICov
CisgICAgaGRyLT50cyA9IGh0b25sKDB4ZGVjYWZiYWQpOyAvKiB0aW1lc3RhbXAgICAgICAgICAg
ICovCisgICAgaGRyLT5zc3JjID0gaHRvbmwoc3NyYyk7ICAgICAvKiBzeW5jaC4gc291cmNlICAg
ICAgICovCisKKyAgICBidWZmZXIgPSAodWludDhfdCAqKWhkcjsKKyAgICBidWZmZXIgKz0gYnl0
ZXNfaW5faGRyOworCisgICAgLyogc2V0IFJUUCBkYXRhIHRvIDB4YWIgKi8KKyAgICBmb3IgKGkg
PSAwOyBpIDwgcGt0X29jdGV0X2xlbjsgaSsrKQorICAgICAgICAqYnVmZmVyKysgPSAweGFiOwor
CisgICAgLyogc2V0IHBvc3QtZGF0YSB2YWx1ZSB0byAweGZmZmYgdG8gZW5hYmxlIG92ZXJydW4g
Y2hlY2tpbmcgKi8KKyAgICBmb3IgKGkgPSAwOyBpIDwgU1JUUF9NQVhfVFJBSUxFUl9MRU4gKyA0
OyBpKyspCisgICAgICAgICpidWZmZXIrKyA9IDB4ZmY7CisKKyAgICByZXR1cm4gaGRyOwogfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9saWJzcnRwL3Rlc3QvZ2V0b3B0X3MuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC90ZXN0L2dldG9wdF9zLmMKaW5kZXggMzVlODg3MWY5
ZjczNTAxNGFmMTViMjE2MWRkMDA3YjNmNTg4NWJhMy4uYWI2MzE4NzhhNDA1MGExNTY3MjMwYzYw
ZTA4NmFjYzlhOTkxNTY3OCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL3Rlc3QvZ2V0b3B0X3MuYworKysgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvdGVzdC9nZXRv
cHRfcy5jCkBAIC0zLDMwICszLDMwIEBACiAgKgogICogYSBtaW5pbWFsIGltcGxlbWVudGF0aW9u
IG9mIHRoZSBnZXRvcHQoKSBmdW5jdGlvbiwgd3JpdHRlbiBzbyB0aGF0CiAgKiB0ZXN0IGFwcGxp
Y2F0aW9ucyB0aGF0IHVzZSB0aGF0IGZ1bmN0aW9uIGNhbiBydW4gb24gbm9uLVBPU0lYCi0gKiBw
bGF0Zm9ybXMgCisgKiBwbGF0Zm9ybXMKICAqCiAgKi8KIC8qCi0gKgkKKyAqCiAgKiBDb3B5cmln
aHQgKGMpIDIwMDEtMjAxNyBDaXNjbyBTeXN0ZW1zLCBJbmMuCiAgKiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgotICogCisgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKICAqIGFyZSBtZXQ6Ci0g
KiAKKyAqCiAgKiAgIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0CiAgKiAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIAorICoKICAqICAgUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQogICogICBjb3B5cmln
aHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwogICog
ICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQKICAqICAgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICogCisgKgogICogICBOZWl0
aGVyIHRoZSBuYW1lIG9mIHRoZSBDaXNjbyBTeXN0ZW1zLCBJbmMuIG5vciB0aGUgbmFtZXMgb2Yg
aXRzCiAgKiAgIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUg
cHJvZHVjdHMgZGVyaXZlZAogICogICBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZp
YyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0gKiAKKyAqCiAgKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCiAgKiAi
QVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVAogICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MKQEAgLTQyLDcxICs0Miw2NyBAQAogICoKICAqLwogCi0jaW5j
bHVkZSA8c3RkbGliLmg+ICAvKiBmb3IgTlVMTCAqLworI2luY2x1ZGUgPHN0ZGxpYi5oPiAvKiBm
b3IgTlVMTCAqLwogCiBpbnQgb3B0aW5kX3MgPSAwOwogCiBjaGFyICpvcHRhcmdfczsKIAotI2Rl
ZmluZSBHRVRPUFRfRk9VTkRfV0lUSE9VVF9BUkdVTUVOVCAgICAyCi0jZGVmaW5lIEdFVE9QVF9G
T1VORF9XSVRIX0FSR1VNRU5UICAgICAgIDEKLSNkZWZpbmUgR0VUT1BUX05PVF9GT1VORCAgICAg
ICAgICAgICAgICAgMCAKKyNkZWZpbmUgR0VUT1BUX0ZPVU5EX1dJVEhPVVRfQVJHVU1FTlQgMgor
I2RlZmluZSBHRVRPUFRfRk9VTkRfV0lUSF9BUkdVTUVOVCAxCisjZGVmaW5lIEdFVE9QVF9OT1Rf
Rk9VTkQgMAogCi1zdGF0aWMgaW50IAotZ2V0b3B0X2NoZWNrX2NoYXJhY3RlcihjaGFyIGMsIGNv
bnN0IGNoYXIgKnN0cmluZykgewotICB1bnNpZ25lZCBpbnQgbWF4X3N0cmluZ19sZW4gPSAxMjg7
CitzdGF0aWMgaW50IGdldG9wdF9jaGVja19jaGFyYWN0ZXIoY2hhciBjLCBjb25zdCBjaGFyICpz
dHJpbmcpCit7CisgICAgdW5zaWduZWQgaW50IG1heF9zdHJpbmdfbGVuID0gMTI4OwogCi0gIHdo
aWxlICgqc3RyaW5nICE9IDApIHsKLSAgICBpZiAobWF4X3N0cmluZ19sZW4gPT0gMCkgewotICAg
ICAgcmV0dXJuICc/JzsKKyAgICB3aGlsZSAoKnN0cmluZyAhPSAwKSB7CisgICAgICAgIGlmICht
YXhfc3RyaW5nX2xlbiA9PSAwKSB7CisgICAgICAgICAgICByZXR1cm4gJz8nOworICAgICAgICB9
CisgICAgICAgIGlmICgqc3RyaW5nKysgPT0gYykgeworICAgICAgICAgICAgaWYgKCpzdHJpbmcg
PT0gJzonKSB7CisgICAgICAgICAgICAgICAgcmV0dXJuIEdFVE9QVF9GT1VORF9XSVRIX0FSR1VN
RU5UOworICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICByZXR1cm4gR0VUT1BU
X0ZPVU5EX1dJVEhPVVRfQVJHVU1FTlQ7CisgICAgICAgICAgICB9CisgICAgICAgIH0KICAgICB9
Ci0gICAgaWYgKCpzdHJpbmcrKyA9PSBjKSB7Ci0gICAgICBpZiAoKnN0cmluZyA9PSAnOicpIHsK
LQlyZXR1cm4gR0VUT1BUX0ZPVU5EX1dJVEhfQVJHVU1FTlQ7Ci0gICAgICB9IGVsc2UgewotCXJl
dHVybiBHRVRPUFRfRk9VTkRfV0lUSE9VVF9BUkdVTUVOVDsKLSAgICAgIH0KLSAgICB9Ci0gIH0K
LSAgcmV0dXJuIEdFVE9QVF9OT1RfRk9VTkQ7CisgICAgcmV0dXJuIEdFVE9QVF9OT1RfRk9VTkQ7
CiB9CiAKLWludAotZ2V0b3B0X3MoaW50IGFyZ2MsIAotICAgICAgIGNoYXIgKiBjb25zdCBhcmd2
W10sIAotICAgICAgIGNvbnN0IGNoYXIgKm9wdHN0cmluZykgewotCitpbnQgZ2V0b3B0X3MoaW50
IGFyZ2MsIGNoYXIgKmNvbnN0IGFyZ3ZbXSwgY29uc3QgY2hhciAqb3B0c3RyaW5nKQoreworICAg
IHdoaWxlIChvcHRpbmRfcyArIDEgPCBhcmdjKSB7CisgICAgICAgIGNoYXIgKnN0cmluZzsKIAot
ICB3aGlsZSAob3B0aW5kX3MgKyAxIDwgYXJnYykgewotICAgIGNoYXIgKnN0cmluZzsKLSAgICAK
LSAgICAvKiBtb3ZlICdzdHJpbmcnIG9uIHRvIG5leHQgYXJndW1lbnQgKi8KLSAgICBvcHRpbmRf
cysrOwotICAgIHN0cmluZyA9IGFyZ3Zbb3B0aW5kX3NdOworICAgICAgICAvKiBtb3ZlICdzdHJp
bmcnIG9uIHRvIG5leHQgYXJndW1lbnQgKi8KKyAgICAgICAgb3B0aW5kX3MrKzsKKyAgICAgICAg
c3RyaW5nID0gYXJndltvcHRpbmRfc107CiAKLSAgICBpZiAoc3RyaW5nID09IE5VTEwpCi0gICAg
ICByZXR1cm4gJz8nOyAvKiBOVUxMIGFyZ3VtZW50IHN0cmluZyAqLworICAgICAgICBpZiAoc3Ry
aW5nID09IE5VTEwpCisgICAgICAgICAgICByZXR1cm4gJz8nOyAvKiBOVUxMIGFyZ3VtZW50IHN0
cmluZyAqLwogCi0gICAgaWYgKHN0cmluZ1swXSAhPSAnLScpCi0gICAgICByZXR1cm4gLTE7IC8q
IGZvdW5kIGFuIHVuZXhwZWN0ZWQgY2hhcmFjdGVyICovCisgICAgICAgIGlmIChzdHJpbmdbMF0g
IT0gJy0nKQorICAgICAgICAgICAgcmV0dXJuIC0xOyAvKiBmb3VuZCBhbiB1bmV4cGVjdGVkIGNo
YXJhY3RlciAqLwogCi0gICAgc3dpdGNoKGdldG9wdF9jaGVja19jaGFyYWN0ZXIoc3RyaW5nWzFd
LCBvcHRzdHJpbmcpKSB7Ci0gICAgY2FzZSBHRVRPUFRfRk9VTkRfV0lUSF9BUkdVTUVOVDoKLSAg
ICAgIGlmIChvcHRpbmRfcyArIDEgPCBhcmdjKSB7Ci0Jb3B0aW5kX3MrKzsKLQlvcHRhcmdfcyA9
IGFyZ3Zbb3B0aW5kX3NdOwotCXJldHVybiBzdHJpbmdbMV07IAotICAgICAgfSBlbHNlIHsKLQly
ZXR1cm4gJz8nOyAgLyogYXJndW1lbnQgbWlzc2luZyAqLwotICAgICAgfQotICAgIGNhc2UgR0VU
T1BUX0ZPVU5EX1dJVEhPVVRfQVJHVU1FTlQ6Ci0gICAgICByZXR1cm4gc3RyaW5nWzFdOwotICAg
IGNhc2UgR0VUT1BUX05PVF9GT1VORDoKLSAgICBkZWZhdWx0OgotICAgICAgcmV0dXJuICc/Jzsg
LyogZGlkbid0IGZpbmQgZXhwZWN0ZWQgY2hhcmFjdGVyICovCi0gICAgICBicmVhazsKKyAgICAg
ICAgc3dpdGNoIChnZXRvcHRfY2hlY2tfY2hhcmFjdGVyKHN0cmluZ1sxXSwgb3B0c3RyaW5nKSkg
eworICAgICAgICBjYXNlIEdFVE9QVF9GT1VORF9XSVRIX0FSR1VNRU5UOgorICAgICAgICAgICAg
aWYgKG9wdGluZF9zICsgMSA8IGFyZ2MpIHsKKyAgICAgICAgICAgICAgICBvcHRpbmRfcysrOwor
ICAgICAgICAgICAgICAgIG9wdGFyZ19zID0gYXJndltvcHRpbmRfc107CisgICAgICAgICAgICAg
ICAgcmV0dXJuIHN0cmluZ1sxXTsKKyAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAg
ICAgcmV0dXJuICc/JzsgLyogYXJndW1lbnQgbWlzc2luZyAqLworICAgICAgICAgICAgfQorICAg
ICAgICBjYXNlIEdFVE9QVF9GT1VORF9XSVRIT1VUX0FSR1VNRU5UOgorICAgICAgICAgICAgcmV0
dXJuIHN0cmluZ1sxXTsKKyAgICAgICAgY2FzZSBHRVRPUFRfTk9UX0ZPVU5EOgorICAgICAgICBk
ZWZhdWx0OgorICAgICAgICAgICAgcmV0dXJuICc/JzsgLyogZGlkbid0IGZpbmQgZXhwZWN0ZWQg
Y2hhcmFjdGVyICovCisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgfQogICAgIH0KLSAgfQog
Ci0gIHJldHVybiAtMTsKKyAgICByZXR1cm4gLTE7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvdGVzdC9yZGJ4X2Ry
aXZlci5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9s
aWJzcnRwL3Rlc3QvcmRieF9kcml2ZXIuYwppbmRleCA4ZWNiZjlmNDliZmJmODI4YTEyYWFiZWZj
ZTZmZDczZGExYTc4ZmMzLi42MDljZTljOGU0OGEyNzVjYzE5OWIzYTFlOGRhYjRiODkwYTlhYjdk
IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L2xpYnNydHAvdGVzdC9yZGJ4X2RyaXZlci5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC90ZXN0L3JkYnhfZHJpdmVyLmMKQEAg
LTYsMjggKzYsMjcgQEAKICAqIERhdmlkIEEuIE1jR3JldwogICogQ2lzY28gU3lzdGVtcywgSW5j
LgogICovCi0KIC8qCi0gKgkKKyAqCiAgKiBDb3B5cmlnaHQgKGMpIDIwMDEtMjAxNywgQ2lzY28g
U3lzdGVtcywgSW5jLgogICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqIAorICoKICAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zCiAgKiBhcmUgbWV0OgotICogCisgKgogICogICBSZWRpc3RyaWJ1
dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAogICog
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIuCi0gKiAKKyAqCiAgKiAgIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0
IHJlcHJvZHVjZSB0aGUgYWJvdmUKICAqICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKICAqICAgZGlzY2xhaW1lciBpbiB0aGUgZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkCiAgKiAgIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KLSAqIAorICoKICAqICAgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgQ2lz
Y28gU3lzdGVtcywgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwogICogICBjb250cmlidXRvcnMg
bWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQKICAqICAg
ZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNz
aW9uLgotICogCisgKgogICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJ
R0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwogICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKICAqIExJTUlURUQgVE8s
IFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCkBA
IC00NCw3ICs0Myw3IEBACiAgKi8KIAogI2lmZGVmIEhBVkVfQ09ORklHX0gKLSAgICAjaW5jbHVk
ZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29uZmlnLmg+CiAjZW5kaWYKIAogI2luY2x1ZGUgPHN0
ZGlvLmg+ICAgIC8qIGZvciBwcmludGYoKSAgICAgICAgICAqLwpAQCAtNTgsODkgKzU3LDg0IEBA
CiAKICNpbmNsdWRlICJ1dF9zaW0uaCIKIAotc3J0cF9lcnJfc3RhdHVzX3QgCi10ZXN0X3JlcGxh
eV9kYngoaW50IG51bV90cmlhbHMsIHVuc2lnbmVkIGxvbmcgd3MpOworc3J0cF9lcnJfc3RhdHVz
X3QgdGVzdF9yZXBsYXlfZGJ4KGludCBudW1fdHJpYWxzLCB1bnNpZ25lZCBsb25nIHdzKTsKIAot
ZG91YmxlCi1yZGJ4X2NoZWNrX2FkZHNfcGVyX3NlY29uZChpbnQgbnVtX3RyaWFscywgdW5zaWdu
ZWQgbG9uZyB3cyk7Citkb3VibGUgcmRieF9jaGVja19hZGRzX3Blcl9zZWNvbmQoaW50IG51bV90
cmlhbHMsIHVuc2lnbmVkIGxvbmcgd3MpOwogCi12b2lkCi11c2FnZShjaGFyICpwcm9nX25hbWUp
IHsKLSAgcHJpbnRmKCJ1c2FnZTogJXMgWyAtdCB8IC12IF1cbiIsIHByb2dfbmFtZSk7Ci0gIGV4
aXQoMjU1KTsKK3ZvaWQgdXNhZ2UoY2hhciAqcHJvZ19uYW1lKQoreworICAgIHByaW50ZigidXNh
Z2U6ICVzIFsgLXQgfCAtdiBdXG4iLCBwcm9nX25hbWUpOworICAgIGV4aXQoMjU1KTsKIH0KIAot
aW50Ci1tYWluIChpbnQgYXJnYywgY2hhciAqYXJndltdKSB7Ci0gIGRvdWJsZSByYXRlOwotICBz
cnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7Ci0gIGludCBxOwotICB1bnNpZ25lZCBkb190aW1pbmdf
dGVzdCA9IDA7Ci0gIHVuc2lnbmVkIGRvX3ZhbGlkYXRpb24gPSAwOwotCi0gIC8qIHByb2Nlc3Mg
aW5wdXQgYXJndW1lbnRzICovCi0gIHdoaWxlICgxKSB7Ci0gICAgcSA9IGdldG9wdF9zKGFyZ2Ms
IGFyZ3YsICJ0diIpOwotICAgIGlmIChxID09IC0xKSAKLSAgICAgIGJyZWFrOwotICAgIHN3aXRj
aCAocSkgewotICAgIGNhc2UgJ3QnOgotICAgICAgZG9fdGltaW5nX3Rlc3QgPSAxOwotICAgICAg
YnJlYWs7Ci0gICAgY2FzZSAndic6Ci0gICAgICBkb192YWxpZGF0aW9uID0gMTsKLSAgICAgIGJy
ZWFrOwotICAgIGRlZmF1bHQ6Ci0gICAgICB1c2FnZShhcmd2WzBdKTsKLSAgICB9ICAgIAotICB9
Ci0KLSAgcHJpbnRmKCJyZGJ4IChyZXBsYXkgZGF0YWJhc2Ugdy8gZXh0ZW5kZWQgcmFuZ2UpIHRl
c3QgZHJpdmVyXG4iCi0JICJEYXZpZCBBLiBNY0dyZXdcbiIKLQkgIkNpc2NvIFN5c3RlbXMsIElu
Yy5cbiIpOwotCi0gIGlmICghZG9fdmFsaWRhdGlvbiAmJiAhZG9fdGltaW5nX3Rlc3QpCi0gICAg
dXNhZ2UoYXJndlswXSk7Ci0KLSAgaWYgKGRvX3ZhbGlkYXRpb24pIHsKLSAgICBwcmludGYoInRl
c3Rpbmcgc3J0cF9yZGJ4X3QgKHdzPTEyOCkuLi5cbiIpOwotCi0gICAgc3RhdHVzID0gdGVzdF9y
ZXBsYXlfZGJ4KDEgPDwgMTIsIDEyOCk7Ci0gICAgaWYgKHN0YXR1cykgewotICAgICAgcHJpbnRm
KCJmYWlsZWRcbiIpOwotICAgICAgZXhpdCgxKTsKK2ludCBtYWluKGludCBhcmdjLCBjaGFyICph
cmd2W10pCit7CisgICAgZG91YmxlIHJhdGU7CisgICAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVz
OworICAgIGludCBxOworICAgIHVuc2lnbmVkIGRvX3RpbWluZ190ZXN0ID0gMDsKKyAgICB1bnNp
Z25lZCBkb192YWxpZGF0aW9uID0gMDsKKworICAgIC8qIHByb2Nlc3MgaW5wdXQgYXJndW1lbnRz
ICovCisgICAgd2hpbGUgKDEpIHsKKyAgICAgICAgcSA9IGdldG9wdF9zKGFyZ2MsIGFyZ3YsICJ0
diIpOworICAgICAgICBpZiAocSA9PSAtMSkKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBz
d2l0Y2ggKHEpIHsKKyAgICAgICAgY2FzZSAndCc6CisgICAgICAgICAgICBkb190aW1pbmdfdGVz
dCA9IDE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAndic6CisgICAgICAgICAg
ICBkb192YWxpZGF0aW9uID0gMTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBkZWZhdWx0
OgorICAgICAgICAgICAgdXNhZ2UoYXJndlswXSk7CisgICAgICAgIH0KICAgICB9Ci0gICAgcHJp
bnRmKCJwYXNzZWRcbiIpOwogCi0gICAgcHJpbnRmKCJ0ZXN0aW5nIHNydHBfcmRieF90ICh3cz0x
MDI0KS4uLlxuIik7CisgICAgcHJpbnRmKCJyZGJ4IChyZXBsYXkgZGF0YWJhc2Ugdy8gZXh0ZW5k
ZWQgcmFuZ2UpIHRlc3QgZHJpdmVyXG4iCisgICAgICAgICAgICJEYXZpZCBBLiBNY0dyZXdcbiIK
KyAgICAgICAgICAgIkNpc2NvIFN5c3RlbXMsIEluYy5cbiIpOwogCi0gICAgc3RhdHVzID0gdGVz
dF9yZXBsYXlfZGJ4KDEgPDwgMTIsIDEwMjQpOwotICAgIGlmIChzdGF0dXMpIHsKLSAgICAgIHBy
aW50ZigiZmFpbGVkXG4iKTsKLSAgICAgIGV4aXQoMSk7CisgICAgaWYgKCFkb192YWxpZGF0aW9u
ICYmICFkb190aW1pbmdfdGVzdCkKKyAgICAgICAgdXNhZ2UoYXJndlswXSk7CisKKyAgICBpZiAo
ZG9fdmFsaWRhdGlvbikgeworICAgICAgICBwcmludGYoInRlc3Rpbmcgc3J0cF9yZGJ4X3QgKHdz
PTEyOCkuLi5cbiIpOworCisgICAgICAgIHN0YXR1cyA9IHRlc3RfcmVwbGF5X2RieCgxIDw8IDEy
LCAxMjgpOworICAgICAgICBpZiAoc3RhdHVzKSB7CisgICAgICAgICAgICBwcmludGYoImZhaWxl
ZFxuIik7CisgICAgICAgICAgICBleGl0KDEpOworICAgICAgICB9CisgICAgICAgIHByaW50Zigi
cGFzc2VkXG4iKTsKKworICAgICAgICBwcmludGYoInRlc3Rpbmcgc3J0cF9yZGJ4X3QgKHdzPTEw
MjQpLi4uXG4iKTsKKworICAgICAgICBzdGF0dXMgPSB0ZXN0X3JlcGxheV9kYngoMSA8PCAxMiwg
MTAyNCk7CisgICAgICAgIGlmIChzdGF0dXMpIHsKKyAgICAgICAgICAgIHByaW50ZigiZmFpbGVk
XG4iKTsKKyAgICAgICAgICAgIGV4aXQoMSk7CisgICAgICAgIH0KKyAgICAgICAgcHJpbnRmKCJw
YXNzZWRcbiIpOwogICAgIH0KLSAgICBwcmludGYoInBhc3NlZFxuIik7Ci0gIH0KLQotICBpZiAo
ZG9fdGltaW5nX3Rlc3QpIHsKLSAgICByYXRlID0gcmRieF9jaGVja19hZGRzX3Blcl9zZWNvbmQo
MSA8PCAxOCwgMTI4KTsKLSAgICBwcmludGYoInJkYnhfY2hlY2svcmVwbGF5X2FkZHMgcGVyIHNl
Y29uZCAod3M9MTI4KTogJWVcbiIsIHJhdGUpOwotICAgIHJhdGUgPSByZGJ4X2NoZWNrX2FkZHNf
cGVyX3NlY29uZCgxIDw8IDE4LCAxMDI0KTsKLSAgICBwcmludGYoInJkYnhfY2hlY2svcmVwbGF5
X2FkZHMgcGVyIHNlY29uZCAod3M9MTAyNCk6ICVlXG4iLCByYXRlKTsKLSAgfQotICAKLSAgcmV0
dXJuIDA7Ci19CiAKLXZvaWQKLXByaW50X3JkYngoc3J0cF9yZGJ4X3QgKnJkYngpIHsKLSAgY2hh
ciBidWZbMjA0OF07Ci0gIHByaW50ZigicmRieDogeyVsbHUsICVzfVxuIiwKLQkgKHVuc2lnbmVk
IGxvbmcgbG9uZykocmRieC0+aW5kZXgpLAotCSBiaXR2ZWN0b3JfYml0X3N0cmluZygmcmRieC0+
Yml0bWFzaywgYnVmLCBzaXplb2YoYnVmKSkKLSk7CisgICAgaWYgKGRvX3RpbWluZ190ZXN0KSB7
CisgICAgICAgIHJhdGUgPSByZGJ4X2NoZWNrX2FkZHNfcGVyX3NlY29uZCgxIDw8IDE4LCAxMjgp
OworICAgICAgICBwcmludGYoInJkYnhfY2hlY2svcmVwbGF5X2FkZHMgcGVyIHNlY29uZCAod3M9
MTI4KTogJWVcbiIsIHJhdGUpOworICAgICAgICByYXRlID0gcmRieF9jaGVja19hZGRzX3Blcl9z
ZWNvbmQoMSA8PCAxOCwgMTAyNCk7CisgICAgICAgIHByaW50ZigicmRieF9jaGVjay9yZXBsYXlf
YWRkcyBwZXIgc2Vjb25kICh3cz0xMDI0KTogJWVcbiIsIHJhdGUpOworICAgIH0KKworICAgIHJl
dHVybiAwOwogfQogCit2b2lkIHByaW50X3JkYngoc3J0cF9yZGJ4X3QgKnJkYngpCit7CisgICAg
Y2hhciBidWZbMjA0OF07CisgICAgcHJpbnRmKCJyZGJ4OiB7JWxsdSwgJXN9XG4iLCAodW5zaWdu
ZWQgbG9uZyBsb25nKShyZGJ4LT5pbmRleCksCisgICAgICAgICAgIGJpdHZlY3Rvcl9iaXRfc3Ry
aW5nKCZyZGJ4LT5iaXRtYXNrLCBidWYsIHNpemVvZihidWYpKSk7Cit9CiAKIC8qCiAgKiByZGJ4
X2NoZWNrX2FkZChyZGJ4LCBpZHgpIGNoZWNrcyBhIGtub3duLXRvLWJlLWdvb2QgaWR4IGFnYWlu
c3QKQEAgLTE1MCwyMTcgKzE0NCwyMTQgQEAgcHJpbnRfcmRieChzcnRwX3JkYnhfdCAqcmRieCkg
ewogICoKICAqLwogCi1zcnRwX2Vycl9zdGF0dXNfdAotcmRieF9jaGVja19hZGQoc3J0cF9yZGJ4
X3QgKnJkYngsIHVpbnQzMl90IGlkeCkgewotICBpbnQgZGVsdGE7Ci0gIHNydHBfeHRkX3NlcV9u
dW1fdCBlc3Q7Ci0gIAotICBkZWx0YSA9IHNydHBfaW5kZXhfZ3Vlc3MoJnJkYngtPmluZGV4LCAm
ZXN0LCBpZHgpOwotICAKLSAgaWYgKHNydHBfcmRieF9jaGVjayhyZGJ4LCBkZWx0YSkgIT0gc3J0
cF9lcnJfc3RhdHVzX29rKSB7Ci0gICAgcHJpbnRmKCJyZXBsYXlfY2hlY2sgZmFpbGVkIGF0IGlu
ZGV4ICV1XG4iLCBpZHgpOwotICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYWxnb19mYWlsOwot
ICB9Ci0KLSAgLyoKLSAgICogaW4gcHJhY3RpY2UsIHdlJ2QgYXV0aGVudGljYXRlIHRoZSBwYWNr
ZXQgY29udGFpbmluZyBpZHgsIHVzaW5nCi0gICAqIHRoZSBlc3RpbWF0ZWQgdmFsdWUgZXN0LCBh
dCB0aGlzIHBvaW50Ci0gICAqLwotICAKLSAgaWYgKHNydHBfcmRieF9hZGRfaW5kZXgocmRieCwg
ZGVsdGEpICE9IHNydHBfZXJyX3N0YXR1c19vaykgewotICAgIHByaW50ZigicmRieF9hZGRfaW5k
ZXggZmFpbGVkIGF0IGluZGV4ICV1XG4iLCBpZHgpOwotICAgIHJldHVybiBzcnRwX2Vycl9zdGF0
dXNfYWxnb19mYWlsOwotICB9ICAKLQotICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOworc3J0
cF9lcnJfc3RhdHVzX3QgcmRieF9jaGVja19hZGQoc3J0cF9yZGJ4X3QgKnJkYngsIHVpbnQzMl90
IGlkeCkKK3sKKyAgICBpbnQgZGVsdGE7CisgICAgc3J0cF94dGRfc2VxX251bV90IGVzdDsKKwor
ICAgIGRlbHRhID0gc3J0cF9pbmRleF9ndWVzcygmcmRieC0+aW5kZXgsICZlc3QsIGlkeCk7CisK
KyAgICBpZiAoc3J0cF9yZGJ4X2NoZWNrKHJkYngsIGRlbHRhKSAhPSBzcnRwX2Vycl9zdGF0dXNf
b2spIHsKKyAgICAgICAgcHJpbnRmKCJyZXBsYXlfY2hlY2sgZmFpbGVkIGF0IGluZGV4ICV1XG4i
LCBpZHgpOworICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2FsZ29fZmFpbDsKKyAgICB9
CisKKyAgICAvKgorICAgICAqIGluIHByYWN0aWNlLCB3ZSdkIGF1dGhlbnRpY2F0ZSB0aGUgcGFj
a2V0IGNvbnRhaW5pbmcgaWR4LCB1c2luZworICAgICAqIHRoZSBlc3RpbWF0ZWQgdmFsdWUgZXN0
LCBhdCB0aGlzIHBvaW50CisgICAgICovCisKKyAgICBpZiAoc3J0cF9yZGJ4X2FkZF9pbmRleChy
ZGJ4LCBkZWx0YSkgIT0gc3J0cF9lcnJfc3RhdHVzX29rKSB7CisgICAgICAgIHByaW50ZigicmRi
eF9hZGRfaW5kZXggZmFpbGVkIGF0IGluZGV4ICV1XG4iLCBpZHgpOworICAgICAgICByZXR1cm4g
c3J0cF9lcnJfc3RhdHVzX2FsZ29fZmFpbDsKKyAgICB9CisKKyAgICByZXR1cm4gc3J0cF9lcnJf
c3RhdHVzX29rOwogfQogCiAvKgogICogcmRieF9jaGVja19leHBlY3RfZmFpbHVyZShzcnRwX3Jk
YnhfdCAqcmRieCwgdWludDMyX3QgaWR4KQotICogCisgKgogICogY2hlY2tzIHRoYXQgYSBzZXF1
ZW5jZSBudW1iZXIgaWR4IGlzIGluIHRoZSByZXBsYXkgZGF0YWJhc2UKICAqIGFuZCB0aHVzIHdp
bGwgYmUgcmVqZWN0ZWQKICAqLwogCi1zcnRwX2Vycl9zdGF0dXNfdAotcmRieF9jaGVja19leHBl
Y3RfZmFpbHVyZShzcnRwX3JkYnhfdCAqcmRieCwgdWludDMyX3QgaWR4KSB7Ci0gIGludCBkZWx0
YTsKLSAgc3J0cF94dGRfc2VxX251bV90IGVzdDsKLSAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVz
Oworc3J0cF9lcnJfc3RhdHVzX3QgcmRieF9jaGVja19leHBlY3RfZmFpbHVyZShzcnRwX3JkYnhf
dCAqcmRieCwgdWludDMyX3QgaWR4KQoreworICAgIGludCBkZWx0YTsKKyAgICBzcnRwX3h0ZF9z
ZXFfbnVtX3QgZXN0OworICAgIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKIAotICBkZWx0YSA9
IHNydHBfaW5kZXhfZ3Vlc3MoJnJkYngtPmluZGV4LCAmZXN0LCBpZHgpOworICAgIGRlbHRhID0g
c3J0cF9pbmRleF9ndWVzcygmcmRieC0+aW5kZXgsICZlc3QsIGlkeCk7CiAKLSAgc3RhdHVzID0g
c3J0cF9yZGJ4X2NoZWNrKHJkYngsIGRlbHRhKTsKLSAgaWYgKHN0YXR1cyA9PSBzcnRwX2Vycl9z
dGF0dXNfb2spIHsKLSAgICBwcmludGYoImRlbHRhOiAlZCAiLCBkZWx0YSk7Ci0gICAgcHJpbnRm
KCJyZXBsYXlfY2hlY2sgZmFpbGVkIGF0IGluZGV4ICV1IChmYWxzZSBwb3NpdGl2ZSlcbiIsIGlk
eCk7Ci0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19hbGdvX2ZhaWw7IAotICB9CisgICAgc3Rh
dHVzID0gc3J0cF9yZGJ4X2NoZWNrKHJkYngsIGRlbHRhKTsKKyAgICBpZiAoc3RhdHVzID09IHNy
dHBfZXJyX3N0YXR1c19vaykgeworICAgICAgICBwcmludGYoImRlbHRhOiAlZCAiLCBkZWx0YSk7
CisgICAgICAgIHByaW50ZigicmVwbGF5X2NoZWNrIGZhaWxlZCBhdCBpbmRleCAldSAoZmFsc2Ug
cG9zaXRpdmUpXG4iLCBpZHgpOworICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2FsZ29f
ZmFpbDsKKyAgICB9CiAKLSAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKKyAgICByZXR1cm4g
c3J0cF9lcnJfc3RhdHVzX29rOwogfQogCi1zcnRwX2Vycl9zdGF0dXNfdAotcmRieF9jaGVja19h
ZGRfdW5vcmRlcmVkKHNydHBfcmRieF90ICpyZGJ4LCB1aW50MzJfdCBpZHgpIHsKLSAgaW50IGRl
bHRhOwotICBzcnRwX3h0ZF9zZXFfbnVtX3QgZXN0OwotICBzcnRwX2Vycl9zdGF0dXNfdCByc3Rh
dDsKLQotICBkZWx0YSA9IHNydHBfaW5kZXhfZ3Vlc3MoJnJkYngtPmluZGV4LCAmZXN0LCBpZHgp
OwotCi0gIHJzdGF0ID0gc3J0cF9yZGJ4X2NoZWNrKHJkYngsIGRlbHRhKTsKLSAgaWYgKChyc3Rh
dCAhPSBzcnRwX2Vycl9zdGF0dXNfb2spICYmIChyc3RhdCAhPSBzcnRwX2Vycl9zdGF0dXNfcmVw
bGF5X29sZCkpIHsKLSAgICBwcmludGYoInJlcGxheV9jaGVja19hZGRfdW5vcmRlcmVkIGZhaWxl
ZCBhdCBpbmRleCAldVxuIiwgaWR4KTsKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2FsZ29f
ZmFpbDsKLSAgfQotICBpZiAocnN0YXQgPT0gc3J0cF9lcnJfc3RhdHVzX3JlcGxheV9vbGQpIHsK
LQlyZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwotICB9Ci0gIGlmIChzcnRwX3JkYnhfYWRkX2lu
ZGV4KHJkYngsIGRlbHRhKSAhPSBzcnRwX2Vycl9zdGF0dXNfb2spIHsKLSAgICBwcmludGYoInJk
YnhfYWRkX2luZGV4IGZhaWxlZCBhdCBpbmRleCAldVxuIiwgaWR4KTsKLSAgICByZXR1cm4gc3J0
cF9lcnJfc3RhdHVzX2FsZ29fZmFpbDsKLSAgfSAgCi0KLSAgcmV0dXJuIHNydHBfZXJyX3N0YXR1
c19vazsKLX0KK3NydHBfZXJyX3N0YXR1c190IHJkYnhfY2hlY2tfYWRkX3Vub3JkZXJlZChzcnRw
X3JkYnhfdCAqcmRieCwgdWludDMyX3QgaWR4KQoreworICAgIGludCBkZWx0YTsKKyAgICBzcnRw
X3h0ZF9zZXFfbnVtX3QgZXN0OworICAgIHNydHBfZXJyX3N0YXR1c190IHJzdGF0OworCisgICAg
ZGVsdGEgPSBzcnRwX2luZGV4X2d1ZXNzKCZyZGJ4LT5pbmRleCwgJmVzdCwgaWR4KTsKKworICAg
IHJzdGF0ID0gc3J0cF9yZGJ4X2NoZWNrKHJkYngsIGRlbHRhKTsKKyAgICBpZiAoKHJzdGF0ICE9
IHNydHBfZXJyX3N0YXR1c19vaykgJiYKKyAgICAgICAgKHJzdGF0ICE9IHNydHBfZXJyX3N0YXR1
c19yZXBsYXlfb2xkKSkgeworICAgICAgICBwcmludGYoInJlcGxheV9jaGVja19hZGRfdW5vcmRl
cmVkIGZhaWxlZCBhdCBpbmRleCAldVxuIiwgaWR4KTsKKyAgICAgICAgcmV0dXJuIHNydHBfZXJy
X3N0YXR1c19hbGdvX2ZhaWw7CisgICAgfQorICAgIGlmIChyc3RhdCA9PSBzcnRwX2Vycl9zdGF0
dXNfcmVwbGF5X29sZCkgeworICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOworICAg
IH0KKyAgICBpZiAoc3J0cF9yZGJ4X2FkZF9pbmRleChyZGJ4LCBkZWx0YSkgIT0gc3J0cF9lcnJf
c3RhdHVzX29rKSB7CisgICAgICAgIHByaW50ZigicmRieF9hZGRfaW5kZXggZmFpbGVkIGF0IGlu
ZGV4ICV1XG4iLCBpZHgpOworICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2FsZ29fZmFp
bDsKKyAgICB9CiAKLXNydHBfZXJyX3N0YXR1c190Ci10ZXN0X3JlcGxheV9kYngoaW50IG51bV90
cmlhbHMsIHVuc2lnbmVkIGxvbmcgd3MpIHsKLSAgc3J0cF9yZGJ4X3QgcmRieDsKLSAgdWludDMy
X3QgaWR4LCBpcmN2ZDsKLSAgdXRfY29ubmVjdGlvbiB1dGM7Ci0gIHNydHBfZXJyX3N0YXR1c190
IHN0YXR1czsKLSAgaW50IG51bV9mcF90cmlhbHM7Ci0KLSAgc3RhdHVzID0gc3J0cF9yZGJ4X2lu
aXQoJnJkYngsIHdzKTsKLSAgaWYgKHN0YXR1cykgewotICAgIHByaW50ZigicmVwbGF5X2luaXQg
ZmFpbGVkIHdpdGggZXJyb3IgY29kZSAlZFxuIiwgc3RhdHVzKTsKLSAgICBleGl0KDEpOwotICB9
Ci0KLSAgLyoKLSAgICogIHRlc3Qgc2VxdWVudGlhbCBpbnNlcnRpb24gCi0gICAqLwotICBwcmlu
dGYoIlx0dGVzdGluZyBzZXF1ZW50aWFsIGluc2VydGlvbi4uLiIpOwotICBmb3IgKGlkeD0wOyAo
aW50KSBpZHggPCBudW1fdHJpYWxzOyBpZHgrKykgewotICAgIHN0YXR1cyA9IHJkYnhfY2hlY2tf
YWRkKCZyZGJ4LCBpZHgpOwotICAgIGlmIChzdGF0dXMpCi0gICAgICByZXR1cm4gc3RhdHVzOwot
ICB9Ci0gIHByaW50ZigicGFzc2VkXG4iKTsKLQotICAvKgotICAgKiAgdGVzdCBmb3IgZmFsc2Ug
cG9zaXRpdmVzIGJ5IGNoZWNraW5nIGFsbCBvZiB0aGUgaW5kZXgKLSAgICogIHZhbHVlcyB3aGlj
aCB3ZSd2ZSBqdXN0IGFkZGVkCi0gICAqCi0gICAqIG5vdGUgdGhhdCB3ZSBsaW1pdCB0aGUgbnVt
YmVyIG9mIHRyaWFscyBoZXJlLCBzaW5jZSBhbGxvd2luZyB0aGUKLSAgICogcm9sbG92ZXIgY291
bnRlciB0byByb2xsIG92ZXIgd291bGQgZGVmZWF0IHRoaXMgdGVzdAotICAgKi8KLSAgbnVtX2Zw
X3RyaWFscyA9IG51bV90cmlhbHMgJSAweDEwMDAwOwotICBpZiAobnVtX2ZwX3RyaWFscyA9PSAw
KSB7Ci0gICAgcHJpbnRmKCJ3YXJuaW5nOiBubyBmYWxzZSBwb3NpdGl2ZSB0ZXN0cyBwZXJmb3Jt
ZWRcbiIpOwotICB9Ci0gIHByaW50ZigiXHR0ZXN0aW5nIGZvciBmYWxzZSBwb3NpdGl2ZXMuLi4i
KTsKLSAgZm9yIChpZHg9MDsgKGludCkgaWR4IDwgbnVtX2ZwX3RyaWFsczsgaWR4KyspIHsKLSAg
ICBzdGF0dXMgPSByZGJ4X2NoZWNrX2V4cGVjdF9mYWlsdXJlKCZyZGJ4LCBpZHgpOwotICAgIGlm
IChzdGF0dXMpCi0gICAgICByZXR1cm4gc3RhdHVzOwotICB9Ci0gIHByaW50ZigicGFzc2VkXG4i
KTsKLQotICAvKiByZS1pbml0aWFsaXplICovCi0gIHNydHBfcmRieF9kZWFsbG9jKCZyZGJ4KTsK
LQotICBpZiAoc3J0cF9yZGJ4X2luaXQoJnJkYngsIHdzKSAhPSBzcnRwX2Vycl9zdGF0dXNfb2sp
IHsKLSAgICBwcmludGYoInJlcGxheV9pbml0IGZhaWxlZFxuIik7Ci0gICAgcmV0dXJuIHNydHBf
ZXJyX3N0YXR1c19pbml0X2ZhaWw7Ci0gIH0KLQotICAvKgotICAgKiB0ZXN0IG5vbi1zZXF1ZW50
aWFsIGluc2VydGlvbiAKLSAgICoKLSAgICogdGhpcyB0ZXN0IGNvdmVycyBvbmx5IGZhc2UgbmVn
YXRpdmVzLCBzaW5jZSB0aGUgdmFsdWVzIHJldHVybmVkCi0gICAqIGJ5IHV0X25leHRfaW5kZXgo
Li4uKSBhcmUgZGlzdGluY3QKLSAgICovCi0gIHV0X2luaXQoJnV0Yyk7Ci0KLSAgcHJpbnRmKCJc
dHRlc3Rpbmcgbm9uLXNlcXVlbnRpYWwgaW5zZXJ0aW9uLi4uIik7ICAKLSAgZm9yIChpZHg9MDsg
KGludCkgaWR4IDwgbnVtX3RyaWFsczsgaWR4KyspIHsKLSAgICBpcmN2ZCA9IHV0X25leHRfaW5k
ZXgoJnV0Yyk7Ci0gICAgc3RhdHVzID0gcmRieF9jaGVja19hZGRfdW5vcmRlcmVkKCZyZGJ4LCBp
cmN2ZCk7Ci0gICAgaWYgKHN0YXR1cykKLSAgICAgIHJldHVybiBzdGF0dXM7Ci0Jc3RhdHVzID0g
cmRieF9jaGVja19leHBlY3RfZmFpbHVyZSgmcmRieCwgaXJjdmQpOwotCWlmIChzdGF0dXMpCi0J
CXJldHVybiBzdGF0dXM7Ci0gIH0KLSAgcHJpbnRmKCJwYXNzZWRcbiIpOwotCi0gIC8qIHJlLWlu
aXRpYWxpemUgKi8KLSAgc3J0cF9yZGJ4X2RlYWxsb2MoJnJkYngpOwotCi0gIGlmIChzcnRwX3Jk
YnhfaW5pdCgmcmRieCwgd3MpICE9IHNydHBfZXJyX3N0YXR1c19vaykgewotICAgIHByaW50Zigi
cmVwbGF5X2luaXQgZmFpbGVkXG4iKTsKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2luaXRf
ZmFpbDsKLSAgfQotCi0gIC8qCi0gICAqIHRlc3QgaW5zZXJ0aW9uIHdpdGggbGFyZ2UgZ2Fwcy4K
LSAgICogY2hlY2sgZm9yIGZhbHNlIHBvc2l0aXZlcyBmb3IgZWFjaCBpbnNlcnRpb24uCi0gICAq
LwotICBwcmludGYoIlx0dGVzdGluZyBpbnNlcnRpb24gd2l0aCBsYXJnZSBnYXBzLi4uIik7ICAK
LSAgZm9yIChpZHg9MCwgaXJjdmQ9MDsgKGludCkgaWR4IDwgbnVtX3RyaWFsczsgaWR4KyssIGly
Y3ZkICs9ICgxIDw8IChyYW5kKCkgJSAxMikpKSB7Ci0gICAgc3RhdHVzID0gcmRieF9jaGVja19h
ZGQoJnJkYngsIGlyY3ZkKTsKLSAgICBpZiAoc3RhdHVzKQotICAgICAgcmV0dXJuIHN0YXR1czsK
LSAgICBzdGF0dXMgPSByZGJ4X2NoZWNrX2V4cGVjdF9mYWlsdXJlKCZyZGJ4LCBpcmN2ZCk7Ci0g
ICAgaWYgKHN0YXR1cykKLSAgICAgIHJldHVybiBzdGF0dXM7Ci0gIH0KLSAgcHJpbnRmKCJwYXNz
ZWRcbiIpOwotCi0gIHNydHBfcmRieF9kZWFsbG9jKCZyZGJ4KTsKLQotICByZXR1cm4gc3J0cF9l
cnJfc3RhdHVzX29rOworICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAKK3NydHBf
ZXJyX3N0YXR1c190IHRlc3RfcmVwbGF5X2RieChpbnQgbnVtX3RyaWFscywgdW5zaWduZWQgbG9u
ZyB3cykKK3sKKyAgICBzcnRwX3JkYnhfdCByZGJ4OworICAgIHVpbnQzMl90IGlkeCwgaXJjdmQ7
CisgICAgdXRfY29ubmVjdGlvbiB1dGM7CisgICAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVzOwor
ICAgIGludCBudW1fZnBfdHJpYWxzOworCisgICAgc3RhdHVzID0gc3J0cF9yZGJ4X2luaXQoJnJk
YngsIHdzKTsKKyAgICBpZiAoc3RhdHVzKSB7CisgICAgICAgIHByaW50ZigicmVwbGF5X2luaXQg
ZmFpbGVkIHdpdGggZXJyb3IgY29kZSAlZFxuIiwgc3RhdHVzKTsKKyAgICAgICAgZXhpdCgxKTsK
KyAgICB9CisKKyAgICAvKgorICAgICAqICB0ZXN0IHNlcXVlbnRpYWwgaW5zZXJ0aW9uCisgICAg
ICovCisgICAgcHJpbnRmKCJcdHRlc3Rpbmcgc2VxdWVudGlhbCBpbnNlcnRpb24uLi4iKTsKKyAg
ICBmb3IgKGlkeCA9IDA7IChpbnQpaWR4IDwgbnVtX3RyaWFsczsgaWR4KyspIHsKKyAgICAgICAg
c3RhdHVzID0gcmRieF9jaGVja19hZGQoJnJkYngsIGlkeCk7CisgICAgICAgIGlmIChzdGF0dXMp
CisgICAgICAgICAgICByZXR1cm4gc3RhdHVzOworICAgIH0KKyAgICBwcmludGYoInBhc3NlZFxu
Iik7CisKKyAgICAvKgorICAgICAqICB0ZXN0IGZvciBmYWxzZSBwb3NpdGl2ZXMgYnkgY2hlY2tp
bmcgYWxsIG9mIHRoZSBpbmRleAorICAgICAqICB2YWx1ZXMgd2hpY2ggd2UndmUganVzdCBhZGRl
ZAorICAgICAqCisgICAgICogbm90ZSB0aGF0IHdlIGxpbWl0IHRoZSBudW1iZXIgb2YgdHJpYWxz
IGhlcmUsIHNpbmNlIGFsbG93aW5nIHRoZQorICAgICAqIHJvbGxvdmVyIGNvdW50ZXIgdG8gcm9s
bCBvdmVyIHdvdWxkIGRlZmVhdCB0aGlzIHRlc3QKKyAgICAgKi8KKyAgICBudW1fZnBfdHJpYWxz
ID0gbnVtX3RyaWFscyAlIDB4MTAwMDA7CisgICAgaWYgKG51bV9mcF90cmlhbHMgPT0gMCkgewor
ICAgICAgICBwcmludGYoIndhcm5pbmc6IG5vIGZhbHNlIHBvc2l0aXZlIHRlc3RzIHBlcmZvcm1l
ZFxuIik7CisgICAgfQorICAgIHByaW50ZigiXHR0ZXN0aW5nIGZvciBmYWxzZSBwb3NpdGl2ZXMu
Li4iKTsKKyAgICBmb3IgKGlkeCA9IDA7IChpbnQpaWR4IDwgbnVtX2ZwX3RyaWFsczsgaWR4Kysp
IHsKKyAgICAgICAgc3RhdHVzID0gcmRieF9jaGVja19leHBlY3RfZmFpbHVyZSgmcmRieCwgaWR4
KTsKKyAgICAgICAgaWYgKHN0YXR1cykKKyAgICAgICAgICAgIHJldHVybiBzdGF0dXM7CisgICAg
fQorICAgIHByaW50ZigicGFzc2VkXG4iKTsKKworICAgIC8qIHJlLWluaXRpYWxpemUgKi8KKyAg
ICBzcnRwX3JkYnhfZGVhbGxvYygmcmRieCk7CisKKyAgICBpZiAoc3J0cF9yZGJ4X2luaXQoJnJk
YngsIHdzKSAhPSBzcnRwX2Vycl9zdGF0dXNfb2spIHsKKyAgICAgICAgcHJpbnRmKCJyZXBsYXlf
aW5pdCBmYWlsZWRcbiIpOworICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2luaXRfZmFp
bDsKKyAgICB9CisKKyAgICAvKgorICAgICAqIHRlc3Qgbm9uLXNlcXVlbnRpYWwgaW5zZXJ0aW9u
CisgICAgICoKKyAgICAgKiB0aGlzIHRlc3QgY292ZXJzIG9ubHkgZmFzZSBuZWdhdGl2ZXMsIHNp
bmNlIHRoZSB2YWx1ZXMgcmV0dXJuZWQKKyAgICAgKiBieSB1dF9uZXh0X2luZGV4KC4uLikgYXJl
IGRpc3RpbmN0CisgICAgICovCisgICAgdXRfaW5pdCgmdXRjKTsKKworICAgIHByaW50ZigiXHR0
ZXN0aW5nIG5vbi1zZXF1ZW50aWFsIGluc2VydGlvbi4uLiIpOworICAgIGZvciAoaWR4ID0gMDsg
KGludClpZHggPCBudW1fdHJpYWxzOyBpZHgrKykgeworICAgICAgICBpcmN2ZCA9IHV0X25leHRf
aW5kZXgoJnV0Yyk7CisgICAgICAgIHN0YXR1cyA9IHJkYnhfY2hlY2tfYWRkX3Vub3JkZXJlZCgm
cmRieCwgaXJjdmQpOworICAgICAgICBpZiAoc3RhdHVzKQorICAgICAgICAgICAgcmV0dXJuIHN0
YXR1czsKKyAgICAgICAgc3RhdHVzID0gcmRieF9jaGVja19leHBlY3RfZmFpbHVyZSgmcmRieCwg
aXJjdmQpOworICAgICAgICBpZiAoc3RhdHVzKQorICAgICAgICAgICAgcmV0dXJuIHN0YXR1czsK
KyAgICB9CisgICAgcHJpbnRmKCJwYXNzZWRcbiIpOworCisgICAgLyogcmUtaW5pdGlhbGl6ZSAq
LworICAgIHNydHBfcmRieF9kZWFsbG9jKCZyZGJ4KTsKKworICAgIGlmIChzcnRwX3JkYnhfaW5p
dCgmcmRieCwgd3MpICE9IHNydHBfZXJyX3N0YXR1c19vaykgeworICAgICAgICBwcmludGYoInJl
cGxheV9pbml0IGZhaWxlZFxuIik7CisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfaW5p
dF9mYWlsOworICAgIH0KKworICAgIC8qCisgICAgICogdGVzdCBpbnNlcnRpb24gd2l0aCBsYXJn
ZSBnYXBzLgorICAgICAqIGNoZWNrIGZvciBmYWxzZSBwb3NpdGl2ZXMgZm9yIGVhY2ggaW5zZXJ0
aW9uLgorICAgICAqLworICAgIHByaW50ZigiXHR0ZXN0aW5nIGluc2VydGlvbiB3aXRoIGxhcmdl
IGdhcHMuLi4iKTsKKyAgICBmb3IgKGlkeCA9IDAsIGlyY3ZkID0gMDsgKGludClpZHggPCBudW1f
dHJpYWxzOworICAgICAgICAgaWR4KyssIGlyY3ZkICs9ICgxIDw8IChyYW5kKCkgJSAxMikpKSB7
CisgICAgICAgIHN0YXR1cyA9IHJkYnhfY2hlY2tfYWRkKCZyZGJ4LCBpcmN2ZCk7CisgICAgICAg
IGlmIChzdGF0dXMpCisgICAgICAgICAgICByZXR1cm4gc3RhdHVzOworICAgICAgICBzdGF0dXMg
PSByZGJ4X2NoZWNrX2V4cGVjdF9mYWlsdXJlKCZyZGJ4LCBpcmN2ZCk7CisgICAgICAgIGlmIChz
dGF0dXMpCisgICAgICAgICAgICByZXR1cm4gc3RhdHVzOworICAgIH0KKyAgICBwcmludGYoInBh
c3NlZFxuIik7CiAKKyAgICBzcnRwX3JkYnhfZGVhbGxvYygmcmRieCk7CiAKLSNpbmNsdWRlIDx0
aW1lLmg+ICAgICAgIC8qIGZvciBjbG9jaygpICAqLwotI2luY2x1ZGUgPHN0ZGxpYi5oPiAgICAg
LyogZm9yIHJhbmRvbSgpICovCi0KLWRvdWJsZQotcmRieF9jaGVja19hZGRzX3Blcl9zZWNvbmQo
aW50IG51bV90cmlhbHMsIHVuc2lnbmVkIGxvbmcgd3MpIHsKLSAgdWludDMyX3QgaTsKLSAgaW50
IGRlbHRhOwotICBzcnRwX3JkYnhfdCByZGJ4OwotICBzcnRwX3h0ZF9zZXFfbnVtX3QgZXN0Owot
ICBjbG9ja190IHRpbWVyOwotICBpbnQgZmFpbHVyZXM7ICAgICAgICAgICAgICAgICAgICAvKiBj
b3VudCBudW1iZXIgb2YgZmFpbHVyZXMgICAgICAgICovCi0gIAotICBpZiAoc3J0cF9yZGJ4X2lu
aXQoJnJkYngsIHdzKSAhPSBzcnRwX2Vycl9zdGF0dXNfb2spIHsKLSAgICBwcmludGYoInJlcGxh
eV9pbml0IGZhaWxlZFxuIik7Ci0gICAgZXhpdCgxKTsKLSAgfSAgCi0KLSAgZmFpbHVyZXMgPSAw
OwotICB0aW1lciA9IGNsb2NrKCk7Ci0gIGZvcihpPTA7IChpbnQpIGkgPCBudW1fdHJpYWxzOyBp
KyspIHsKLSAgICAKLSAgICBkZWx0YSA9IHNydHBfaW5kZXhfZ3Vlc3MoJnJkYnguaW5kZXgsICZl
c3QsIGkpOwotICAgIAotICAgIGlmIChzcnRwX3JkYnhfY2hlY2soJnJkYngsIGRlbHRhKSAhPSBz
cnRwX2Vycl9zdGF0dXNfb2spIAotICAgICAgKytmYWlsdXJlczsKLSAgICBlbHNlCi0gICAgICBp
ZiAoc3J0cF9yZGJ4X2FkZF9pbmRleCgmcmRieCwgZGVsdGEpICE9IHNydHBfZXJyX3N0YXR1c19v
aykKLQkrK2ZhaWx1cmVzOwotICB9Ci0gIHRpbWVyID0gY2xvY2soKSAtIHRpbWVyOwotCi0gIHBy
aW50ZigibnVtYmVyIG9mIGZhaWx1cmVzOiAlZCBcbiIsIGZhaWx1cmVzKTsKLQotICBzcnRwX3Jk
YnhfZGVhbGxvYygmcmRieCk7Ci0KLSAgcmV0dXJuIChkb3VibGUpIENMT0NLU19QRVJfU0VDICog
bnVtX3RyaWFscyAvIHRpbWVyOworICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAK
KyNpbmNsdWRlIDx0aW1lLmg+ICAgLyogZm9yIGNsb2NrKCkgICovCisjaW5jbHVkZSA8c3RkbGli
Lmg+IC8qIGZvciByYW5kb20oKSAqLworCitkb3VibGUgcmRieF9jaGVja19hZGRzX3Blcl9zZWNv
bmQoaW50IG51bV90cmlhbHMsIHVuc2lnbmVkIGxvbmcgd3MpCit7CisgICAgdWludDMyX3QgaTsK
KyAgICBpbnQgZGVsdGE7CisgICAgc3J0cF9yZGJ4X3QgcmRieDsKKyAgICBzcnRwX3h0ZF9zZXFf
bnVtX3QgZXN0OworICAgIGNsb2NrX3QgdGltZXI7CisgICAgaW50IGZhaWx1cmVzOyAvKiBjb3Vu
dCBudW1iZXIgb2YgZmFpbHVyZXMgKi8KKworICAgIGlmIChzcnRwX3JkYnhfaW5pdCgmcmRieCwg
d3MpICE9IHNydHBfZXJyX3N0YXR1c19vaykgeworICAgICAgICBwcmludGYoInJlcGxheV9pbml0
IGZhaWxlZFxuIik7CisgICAgICAgIGV4aXQoMSk7CisgICAgfQorCisgICAgZmFpbHVyZXMgPSAw
OworICAgIHRpbWVyID0gY2xvY2soKTsKKyAgICBmb3IgKGkgPSAwOyAoaW50KWkgPCBudW1fdHJp
YWxzOyBpKyspIHsKKyAgICAgICAgZGVsdGEgPSBzcnRwX2luZGV4X2d1ZXNzKCZyZGJ4LmluZGV4
LCAmZXN0LCBpKTsKKworICAgICAgICBpZiAoc3J0cF9yZGJ4X2NoZWNrKCZyZGJ4LCBkZWx0YSkg
IT0gc3J0cF9lcnJfc3RhdHVzX29rKQorICAgICAgICAgICAgKytmYWlsdXJlczsKKyAgICAgICAg
ZWxzZSBpZiAoc3J0cF9yZGJ4X2FkZF9pbmRleCgmcmRieCwgZGVsdGEpICE9IHNydHBfZXJyX3N0
YXR1c19vaykKKyAgICAgICAgICAgICsrZmFpbHVyZXM7CisgICAgfQorICAgIHRpbWVyID0gY2xv
Y2soKSAtIHRpbWVyOworCisgICAgcHJpbnRmKCJudW1iZXIgb2YgZmFpbHVyZXM6ICVkIFxuIiwg
ZmFpbHVyZXMpOworCisgICAgc3J0cF9yZGJ4X2RlYWxsb2MoJnJkYngpOworCisgICAgcmV0dXJu
IChkb3VibGUpQ0xPQ0tTX1BFUl9TRUMgKiBudW1fdHJpYWxzIC8gdGltZXI7Cit9CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNy
dHAvdGVzdC9yZXBsYXlfZHJpdmVyLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvdGVzdC9yZXBsYXlfZHJpdmVyLmMKaW5kZXggYjk2NGE0
YTAzZWJiY2E1NDJkOGYyYzA0MDQ1Yjc1ZjdlOTE2ODc5MS4uYTg4MjI0Njg0ZjZhNDExY2UxNWFl
YjUzMGIzM2EwYzhjNThlNTVhMyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL3Rlc3QvcmVwbGF5X2RyaXZlci5jCisrKyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC90
ZXN0L3JlcGxheV9kcml2ZXIuYwpAQCAtOCwyNiArOCwyNiBAQAogICovCiAKIC8qCi0gKgkKKyAq
CiAgKiBDb3B5cmlnaHQgKGMpIDIwMDEtMjAxNywgQ2lzY28gU3lzdGVtcywgSW5jLgogICogQWxs
IHJpZ2h0cyByZXNlcnZlZC4KLSAqIAorICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCiAg
KiBhcmUgbWV0OgotICogCisgKgogICogICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUg
bXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAogICogICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAKKyAqCiAgKiAg
IFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUK
ICAqICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcKICAqICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3Ro
ZXIgbWF0ZXJpYWxzIHByb3ZpZGVkCiAgKiAgIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqIAor
ICoKICAqICAgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgQ2lzY28gU3lzdGVtcywgSW5jLiBub3Ig
dGhlIG5hbWVzIG9mIGl0cwogICogICBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3Jz
ZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQKICAqICAgZnJvbSB0aGlzIHNvZnR3YXJlIHdp
dGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotICogCisgKgogICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRS
SUJVVE9SUwogICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QKICAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCkBAIC00NCw3ICs0NCw3IEBACiAgKi8K
IAogI2lmZGVmIEhBVkVfQ09ORklHX0gKLSAgICAjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVk
ZSA8Y29uZmlnLmg+CiAjZW5kaWYKIAogI2luY2x1ZGUgPHN0ZGlvLmg+CkBAIC01OSwyMjYgKzU5
LDIyNSBAQAogCiB1bnNpZ25lZCBudW1fdHJpYWxzID0gMSA8PCAxNjsKIAotc3J0cF9lcnJfc3Rh
dHVzX3QKLXRlc3RfcmRiX2RiKHZvaWQpOwotCi1kb3VibGUKLXJkYl9jaGVja19hZGRzX3Blcl9z
ZWNvbmQodm9pZCk7Ci0KLWludAotbWFpbiAodm9pZCkgewotICBzcnRwX2Vycl9zdGF0dXNfdCBl
cnI7Ci0gIAotICBwcmludGYoInRlc3RpbmcgYW50aS1yZXBsYXkgZGF0YWJhc2UgKHNydHBfcmRi
X3QpLi4uXG4iKTsKLSAgZXJyID0gdGVzdF9yZGJfZGIoKTsKLSAgaWYgKGVycikgewotICAgIHBy
aW50ZigiZmFpbGVkXG4iKTsKLSAgICBleGl0KDEpOwotICB9Ci0gIHByaW50ZigiZG9uZVxuIik7
Ci0KLSAgcHJpbnRmKCJyZGJfY2hlY2svcmRiX2FkZHMgcGVyIHNlY29uZDogJWVcbiIsCi0JIHJk
Yl9jaGVja19hZGRzX3Blcl9zZWNvbmQoKSk7Ci0gIAotICByZXR1cm4gMDsKLX0KK3NydHBfZXJy
X3N0YXR1c190IHRlc3RfcmRiX2RiKHZvaWQpOwogCitkb3VibGUgcmRiX2NoZWNrX2FkZHNfcGVy
X3NlY29uZCh2b2lkKTsKIAotdm9pZAotcHJpbnRfcmRiKHNydHBfcmRiX3QgKnJkYikgewotICBw
cmludGYoInJkYjogeyV1LCAlc31cbiIsIHJkYi0+d2luZG93X3N0YXJ0LCB2MTI4X2JpdF9zdHJp
bmcoJnJkYi0+Yml0bWFzaykpOwotfQoraW50IG1haW4odm9pZCkKK3sKKyAgICBzcnRwX2Vycl9z
dGF0dXNfdCBlcnI7CisKKyAgICBwcmludGYoInRlc3RpbmcgYW50aS1yZXBsYXkgZGF0YWJhc2Ug
KHNydHBfcmRiX3QpLi4uXG4iKTsKKyAgICBlcnIgPSB0ZXN0X3JkYl9kYigpOworICAgIGlmIChl
cnIpIHsKKyAgICAgICAgcHJpbnRmKCJmYWlsZWRcbiIpOworICAgICAgICBleGl0KDEpOworICAg
IH0KKyAgICBwcmludGYoImRvbmVcbiIpOwogCi1zcnRwX2Vycl9zdGF0dXNfdAotcmRiX2NoZWNr
X2FkZChzcnRwX3JkYl90ICpyZGIsIHVpbnQzMl90IGlkeCkgeworICAgIHByaW50ZigicmRiX2No
ZWNrL3JkYl9hZGRzIHBlciBzZWNvbmQ6ICVlXG4iLCByZGJfY2hlY2tfYWRkc19wZXJfc2Vjb25k
KCkpOwogCi0gIGlmIChzcnRwX3JkYl9jaGVjayhyZGIsIGlkeCkgIT0gc3J0cF9lcnJfc3RhdHVz
X29rKSB7Ci0gICAgcHJpbnRmKCJyZGJfY2hlY2sgZmFpbGVkIGF0IGluZGV4ICV1XG4iLCBpZHgp
OwotICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfZmFpbDsKLSAgfQotICBpZiAoc3J0cF9yZGJf
YWRkX2luZGV4KHJkYiwgaWR4KSAhPSBzcnRwX2Vycl9zdGF0dXNfb2spIHsKLSAgICBwcmludGYo
InJkYl9hZGRfaW5kZXggZmFpbGVkIGF0IGluZGV4ICV1XG4iLCBpZHgpOwotICAgIHJldHVybiBz
cnRwX2Vycl9zdGF0dXNfZmFpbDsKLSAgfQorICAgIHJldHVybiAwOworfQogCi0gIHJldHVybiBz
cnRwX2Vycl9zdGF0dXNfb2s7Cit2b2lkIHByaW50X3JkYihzcnRwX3JkYl90ICpyZGIpCit7Cisg
ICAgcHJpbnRmKCJyZGI6IHsldSwgJXN9XG4iLCByZGItPndpbmRvd19zdGFydCwKKyAgICAgICAg
ICAgdjEyOF9iaXRfc3RyaW5nKCZyZGItPmJpdG1hc2spKTsKIH0KIAotc3J0cF9lcnJfc3RhdHVz
X3QKLXJkYl9jaGVja19leHBlY3RfZmFpbHVyZShzcnRwX3JkYl90ICpyZGIsIHVpbnQzMl90IGlk
eCkgewotICBzcnRwX2Vycl9zdGF0dXNfdCBlcnI7Ci0gIAotICBlcnIgPSBzcnRwX3JkYl9jaGVj
ayhyZGIsIGlkeCk7Ci0gIGlmICgoZXJyICE9IHNydHBfZXJyX3N0YXR1c19yZXBsYXlfb2xkKSAm
JiAoZXJyICE9IHNydHBfZXJyX3N0YXR1c19yZXBsYXlfZmFpbCkpIHsKLSAgICBwcmludGYoInJk
Yl9jaGVjayBmYWlsZWQgYXQgaW5kZXggJXUgKGZhbHNlIHBvc2l0aXZlKVxuIiwgaWR4KTsKLSAg
ICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7Ci0gIH0KLQotICByZXR1cm4gc3J0cF9lcnJf
c3RhdHVzX29rOworc3J0cF9lcnJfc3RhdHVzX3QgcmRiX2NoZWNrX2FkZChzcnRwX3JkYl90ICpy
ZGIsIHVpbnQzMl90IGlkeCkKK3sKKyAgICBpZiAoc3J0cF9yZGJfY2hlY2socmRiLCBpZHgpICE9
IHNydHBfZXJyX3N0YXR1c19vaykgeworICAgICAgICBwcmludGYoInJkYl9jaGVjayBmYWlsZWQg
YXQgaW5kZXggJXVcbiIsIGlkeCk7CisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfZmFp
bDsKKyAgICB9CisgICAgaWYgKHNydHBfcmRiX2FkZF9pbmRleChyZGIsIGlkeCkgIT0gc3J0cF9l
cnJfc3RhdHVzX29rKSB7CisgICAgICAgIHByaW50ZigicmRiX2FkZF9pbmRleCBmYWlsZWQgYXQg
aW5kZXggJXVcbiIsIGlkeCk7CisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfZmFpbDsK
KyAgICB9CisKKyAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOworfQorCitzcnRwX2Vycl9z
dGF0dXNfdCByZGJfY2hlY2tfZXhwZWN0X2ZhaWx1cmUoc3J0cF9yZGJfdCAqcmRiLCB1aW50MzJf
dCBpZHgpCit7CisgICAgc3J0cF9lcnJfc3RhdHVzX3QgZXJyOworCisgICAgZXJyID0gc3J0cF9y
ZGJfY2hlY2socmRiLCBpZHgpOworICAgIGlmICgoZXJyICE9IHNydHBfZXJyX3N0YXR1c19yZXBs
YXlfb2xkKSAmJgorICAgICAgICAoZXJyICE9IHNydHBfZXJyX3N0YXR1c19yZXBsYXlfZmFpbCkp
IHsKKyAgICAgICAgcHJpbnRmKCJyZGJfY2hlY2sgZmFpbGVkIGF0IGluZGV4ICV1IChmYWxzZSBw
b3NpdGl2ZSlcbiIsIGlkeCk7CisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfZmFpbDsK
KyAgICB9CisKKyAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQogCi1zcnRwX2Vycl9z
dGF0dXNfdAotcmRiX2NoZWNrX2FkZF91bm9yZGVyZWQoc3J0cF9yZGJfdCAqcmRiLCB1aW50MzJf
dCBpZHgpIHsKLSAgc3J0cF9lcnJfc3RhdHVzX3QgcnN0YXQ7Ci0KLSAvKiBwcmludGYoImluZGV4
OiAldVxuIiwgaWR4KTsgKi8KLSAgcnN0YXQgPSBzcnRwX3JkYl9jaGVjayhyZGIsIGlkeCk7Ci0g
IGlmICgocnN0YXQgIT0gc3J0cF9lcnJfc3RhdHVzX29rKSAmJiAocnN0YXQgIT0gc3J0cF9lcnJf
c3RhdHVzX3JlcGxheV9vbGQpKSB7Ci0gICAgcHJpbnRmKCJyZGJfY2hlY2tfYWRkX3Vub3JkZXJl
ZCBmYWlsZWQgYXQgaW5kZXggJXVcbiIsIGlkeCk7Ci0gICAgcmV0dXJuIHJzdGF0OwotICB9Ci0g
IGlmIChyc3RhdCA9PSBzcnRwX2Vycl9zdGF0dXNfcmVwbGF5X29sZCkgewotCXJldHVybiBzcnRw
X2Vycl9zdGF0dXNfb2s7Ci0gIH0KLSAgaWYgKHNydHBfcmRiX2FkZF9pbmRleChyZGIsIGlkeCkg
IT0gc3J0cF9lcnJfc3RhdHVzX29rKSB7Ci0gICAgcHJpbnRmKCJyZGJfYWRkX2luZGV4IGZhaWxl
ZCBhdCBpbmRleCAldVxuIiwgaWR4KTsKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7
Ci0gIH0gIAotCi0gIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CitzcnRwX2Vycl9zdGF0dXNf
dCByZGJfY2hlY2tfYWRkX3Vub3JkZXJlZChzcnRwX3JkYl90ICpyZGIsIHVpbnQzMl90IGlkeCkK
K3sKKyAgICBzcnRwX2Vycl9zdGF0dXNfdCByc3RhdDsKKworICAgIC8qIHByaW50ZigiaW5kZXg6
ICV1XG4iLCBpZHgpOyAqLworICAgIHJzdGF0ID0gc3J0cF9yZGJfY2hlY2socmRiLCBpZHgpOwor
ICAgIGlmICgocnN0YXQgIT0gc3J0cF9lcnJfc3RhdHVzX29rKSAmJgorICAgICAgICAocnN0YXQg
IT0gc3J0cF9lcnJfc3RhdHVzX3JlcGxheV9vbGQpKSB7CisgICAgICAgIHByaW50ZigicmRiX2No
ZWNrX2FkZF91bm9yZGVyZWQgZmFpbGVkIGF0IGluZGV4ICV1XG4iLCBpZHgpOworICAgICAgICBy
ZXR1cm4gcnN0YXQ7CisgICAgfQorICAgIGlmIChyc3RhdCA9PSBzcnRwX2Vycl9zdGF0dXNfcmVw
bGF5X29sZCkgeworICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOworICAgIH0KKyAg
ICBpZiAoc3J0cF9yZGJfYWRkX2luZGV4KHJkYiwgaWR4KSAhPSBzcnRwX2Vycl9zdGF0dXNfb2sp
IHsKKyAgICAgICAgcHJpbnRmKCJyZGJfYWRkX2luZGV4IGZhaWxlZCBhdCBpbmRleCAldVxuIiwg
aWR4KTsKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19mYWlsOworICAgIH0KKworICAg
IHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAKLXNydHBfZXJyX3N0YXR1c190Ci10ZXN0
X3JkYl9kYigpIHsKLSAgc3J0cF9yZGJfdCByZGI7Ci0gIHVpbnQzMl90IGlkeCwgaXJjdmQ7Ci0g
IHV0X2Nvbm5lY3Rpb24gdXRjOwotICBzcnRwX2Vycl9zdGF0dXNfdCBlcnI7Ci0KLSAgaWYgKHNy
dHBfcmRiX2luaXQoJnJkYikgIT0gc3J0cF9lcnJfc3RhdHVzX29rKSB7Ci0gICAgcHJpbnRmKCJy
ZGJfaW5pdCBmYWlsZWRcbiIpOwotICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfaW5pdF9mYWls
OwotICB9Ci0KLSAgLyogdGVzdCBzZXF1ZW50aWFsIGluc2VydGlvbiAqLwotICBmb3IgKGlkeD0w
OyBpZHggPCBudW1fdHJpYWxzOyBpZHgrKykgewotICAgIGVyciA9IHJkYl9jaGVja19hZGQoJnJk
YiwgaWR4KTsKLSAgICBpZiAoZXJyKSAKLSAgICAgIHJldHVybiBlcnI7Ci0gIH0KLQotICAvKiB0
ZXN0IGZvciBmYWxzZSBwb3NpdGl2ZXMgKi8KLSAgZm9yIChpZHg9MDsgaWR4IDwgbnVtX3RyaWFs
czsgaWR4KyspIHsKLSAgICBlcnIgPSByZGJfY2hlY2tfZXhwZWN0X2ZhaWx1cmUoJnJkYiwgaWR4
KTsKLSAgICBpZiAoZXJyKSAKLSAgICAgIHJldHVybiBlcnI7Ci0gIH0KLQotICAvKiByZS1pbml0
aWFsaXplICovCi0gIGlmIChzcnRwX3JkYl9pbml0KCZyZGIpICE9IHNydHBfZXJyX3N0YXR1c19v
aykgewotICAgIHByaW50ZigicmRiX2luaXQgZmFpbGVkXG4iKTsKLSAgICByZXR1cm4gc3J0cF9l
cnJfc3RhdHVzX2ZhaWw7Ci0gIH0KLQotICAvKiB0ZXN0IG5vbi1zZXF1ZW50aWFsIGluc2VydGlv
biAqLwotICB1dF9pbml0KCZ1dGMpOwotICAKLSAgZm9yIChpZHg9MDsgaWR4IDwgbnVtX3RyaWFs
czsgaWR4KyspIHsKLSAgICBpcmN2ZCA9IHV0X25leHRfaW5kZXgoJnV0Yyk7Ci0gICAgZXJyID0g
cmRiX2NoZWNrX2FkZF91bm9yZGVyZWQoJnJkYiwgaXJjdmQpOwotICAgIGlmIChlcnIpIAotICAg
ICAgcmV0dXJuIGVycjsKLSAgICBlcnIgPSByZGJfY2hlY2tfZXhwZWN0X2ZhaWx1cmUoJnJkYiwg
aXJjdmQpOwotICAgIGlmIChlcnIpIAotICAgICAgcmV0dXJuIGVycjsKLSAgfQotCi0gIC8qIHJl
LWluaXRpYWxpemUgKi8KLSAgaWYgKHNydHBfcmRiX2luaXQoJnJkYikgIT0gc3J0cF9lcnJfc3Rh
dHVzX29rKSB7Ci0gICAgcHJpbnRmKCJyZGJfaW5pdCBmYWlsZWRcbiIpOwotICAgIHJldHVybiBz
cnRwX2Vycl9zdGF0dXNfZmFpbDsKLSAgfQotCi0gIC8qIHRlc3QgaW5zZXJ0aW9uIHdpdGggbGFy
Z2UgZ2FwcyAqLwotICBmb3IgKGlkeD0wLCBpcmN2ZD0wOyBpZHggPCBudW1fdHJpYWxzOyBpZHgr
KywgaXJjdmQgKz0gKDEgPDwgKHJhbmQoKSAlIDEwKSkpIHsKLSAgICBlcnIgPSByZGJfY2hlY2tf
YWRkKCZyZGIsIGlyY3ZkKTsKLSAgICBpZiAoZXJyKQotICAgICAgcmV0dXJuIGVycjsKLSAgICBl
cnIgPSByZGJfY2hlY2tfZXhwZWN0X2ZhaWx1cmUoJnJkYiwgaXJjdmQpOwotICAgIGlmIChlcnIp
Ci0gICAgICByZXR1cm4gZXJyOwotICB9Ci0KLSAgLyogcmUtaW5pdGlhbGl6ZSAqLwotICBpZiAo
c3J0cF9yZGJfaW5pdCgmcmRiKSAhPSBzcnRwX2Vycl9zdGF0dXNfb2spIHsKLSAgICBwcmludGYo
InJkYl9pbml0IGZhaWxlZFxuIik7Ci0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19mYWlsOwot
ICB9Ci0KLSAgLyogdGVzdCBsb3NzIG9mIGZpcnN0IDUxMyBwYWNrZXRzICovCi0gIGZvciAoaWR4
PTA7IGlkeCA8IG51bV90cmlhbHM7IGlkeCsrKSB7Ci0gICAgZXJyID0gcmRiX2NoZWNrX2FkZCgm
cmRiLCBpZHggKyA1MTMpOwotICAgIGlmIChlcnIpIAotICAgICAgcmV0dXJuIGVycjsKLSAgfQot
Ci0gIC8qIHRlc3QgZm9yIGZhbHNlIHBvc2l0aXZlcyAqLwotICBmb3IgKGlkeD0wOyBpZHggPCBu
dW1fdHJpYWxzICsgNTEzOyBpZHgrKykgewotICAgIGVyciA9IHJkYl9jaGVja19leHBlY3RfZmFp
bHVyZSgmcmRiLCBpZHgpOwotICAgIGlmIChlcnIpIAotICAgICAgcmV0dXJuIGVycjsKLSAgfQot
Ci0gIC8qIHRlc3QgZm9yIGtleSBleHBpcmVkICovCi0gIGlmIChzcnRwX3JkYl9pbml0KCZyZGIp
ICE9IHNydHBfZXJyX3N0YXR1c19vaykgewotICAgIHByaW50ZigicmRiX2luaXQgZmFpbGVkXG4i
KTsKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7Ci0gIH0KLSAgcmRiLndpbmRvd19z
dGFydCA9IDB4N2ZmZmZmZmU7Ci0gIGlmIChzcnRwX3JkYl9pbmNyZW1lbnQoJnJkYikgIT0gc3J0
cF9lcnJfc3RhdHVzX29rKSB7Ci0gICAgcHJpbnRmKCJzcnRwX3JkYl9pbmNyZW1lbnQgb2YgMHg3
ZmZmZmZmZSBmYWlsZWRcbiIpOwotICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfZmFpbDsKLSAg
fQotICBpZiAoc3J0cF9yZGJfZ2V0X3ZhbHVlKCZyZGIpICE9IDB4N2ZmZmZmZmYpIHsKLSAgICBw
cmludGYoInJkYiB2YWxpdWUgd2FzIG5vdCAweDdmZmZmZmZmXG4iKTsKLSAgICByZXR1cm4gc3J0
cF9lcnJfc3RhdHVzX2ZhaWw7Ci0gIH0KLSAgaWYgKHNydHBfcmRiX2luY3JlbWVudCgmcmRiKSAh
PSBzcnRwX2Vycl9zdGF0dXNfa2V5X2V4cGlyZWQpIHsKLSAgICBwcmludGYoInNydHBfcmRiX2lu
Y3JlbWVudCBvZiAweDdmZmZmZmZmIGRpZCBub3QgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19rZXlf
ZXhwaXJlZFxuIik7Ci0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19mYWlsOwotICB9Ci0gIGlm
IChzcnRwX3JkYl9nZXRfdmFsdWUoJnJkYikgIT0gMHg3ZmZmZmZmZikgewotICAgIHByaW50Zigi
cmRiIHZhbGl1ZSB3YXMgbm90IDB4N2ZmZmZmZmZcbiIpOwotICAgIHJldHVybiBzcnRwX2Vycl9z
dGF0dXNfZmFpbDsKLSAgfQotCi0KLSAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKK3NydHBf
ZXJyX3N0YXR1c190IHRlc3RfcmRiX2RiKCkKK3sKKyAgICBzcnRwX3JkYl90IHJkYjsKKyAgICB1
aW50MzJfdCBpZHgsIGlyY3ZkOworICAgIHV0X2Nvbm5lY3Rpb24gdXRjOworICAgIHNydHBfZXJy
X3N0YXR1c190IGVycjsKKworICAgIGlmIChzcnRwX3JkYl9pbml0KCZyZGIpICE9IHNydHBfZXJy
X3N0YXR1c19vaykgeworICAgICAgICBwcmludGYoInJkYl9pbml0IGZhaWxlZFxuIik7CisgICAg
ICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfaW5pdF9mYWlsOworICAgIH0KKworICAgIC8qIHRl
c3Qgc2VxdWVudGlhbCBpbnNlcnRpb24gKi8KKyAgICBmb3IgKGlkeCA9IDA7IGlkeCA8IG51bV90
cmlhbHM7IGlkeCsrKSB7CisgICAgICAgIGVyciA9IHJkYl9jaGVja19hZGQoJnJkYiwgaWR4KTsK
KyAgICAgICAgaWYgKGVycikKKyAgICAgICAgICAgIHJldHVybiBlcnI7CisgICAgfQorCisgICAg
LyogdGVzdCBmb3IgZmFsc2UgcG9zaXRpdmVzICovCisgICAgZm9yIChpZHggPSAwOyBpZHggPCBu
dW1fdHJpYWxzOyBpZHgrKykgeworICAgICAgICBlcnIgPSByZGJfY2hlY2tfZXhwZWN0X2ZhaWx1
cmUoJnJkYiwgaWR4KTsKKyAgICAgICAgaWYgKGVycikKKyAgICAgICAgICAgIHJldHVybiBlcnI7
CisgICAgfQorCisgICAgLyogcmUtaW5pdGlhbGl6ZSAqLworICAgIGlmIChzcnRwX3JkYl9pbml0
KCZyZGIpICE9IHNydHBfZXJyX3N0YXR1c19vaykgeworICAgICAgICBwcmludGYoInJkYl9pbml0
IGZhaWxlZFxuIik7CisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfZmFpbDsKKyAgICB9
CisKKyAgICAvKiB0ZXN0IG5vbi1zZXF1ZW50aWFsIGluc2VydGlvbiAqLworICAgIHV0X2luaXQo
JnV0Yyk7CisKKyAgICBmb3IgKGlkeCA9IDA7IGlkeCA8IG51bV90cmlhbHM7IGlkeCsrKSB7Cisg
ICAgICAgIGlyY3ZkID0gdXRfbmV4dF9pbmRleCgmdXRjKTsKKyAgICAgICAgZXJyID0gcmRiX2No
ZWNrX2FkZF91bm9yZGVyZWQoJnJkYiwgaXJjdmQpOworICAgICAgICBpZiAoZXJyKQorICAgICAg
ICAgICAgcmV0dXJuIGVycjsKKyAgICAgICAgZXJyID0gcmRiX2NoZWNrX2V4cGVjdF9mYWlsdXJl
KCZyZGIsIGlyY3ZkKTsKKyAgICAgICAgaWYgKGVycikKKyAgICAgICAgICAgIHJldHVybiBlcnI7
CisgICAgfQorCisgICAgLyogcmUtaW5pdGlhbGl6ZSAqLworICAgIGlmIChzcnRwX3JkYl9pbml0
KCZyZGIpICE9IHNydHBfZXJyX3N0YXR1c19vaykgeworICAgICAgICBwcmludGYoInJkYl9pbml0
IGZhaWxlZFxuIik7CisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfZmFpbDsKKyAgICB9
CisKKyAgICAvKiB0ZXN0IGluc2VydGlvbiB3aXRoIGxhcmdlIGdhcHMgKi8KKyAgICBmb3IgKGlk
eCA9IDAsIGlyY3ZkID0gMDsgaWR4IDwgbnVtX3RyaWFsczsKKyAgICAgICAgIGlkeCsrLCBpcmN2
ZCArPSAoMSA8PCAocmFuZCgpICUgMTApKSkgeworICAgICAgICBlcnIgPSByZGJfY2hlY2tfYWRk
KCZyZGIsIGlyY3ZkKTsKKyAgICAgICAgaWYgKGVycikKKyAgICAgICAgICAgIHJldHVybiBlcnI7
CisgICAgICAgIGVyciA9IHJkYl9jaGVja19leHBlY3RfZmFpbHVyZSgmcmRiLCBpcmN2ZCk7Cisg
ICAgICAgIGlmIChlcnIpCisgICAgICAgICAgICByZXR1cm4gZXJyOworICAgIH0KKworICAgIC8q
IHJlLWluaXRpYWxpemUgKi8KKyAgICBpZiAoc3J0cF9yZGJfaW5pdCgmcmRiKSAhPSBzcnRwX2Vy
cl9zdGF0dXNfb2spIHsKKyAgICAgICAgcHJpbnRmKCJyZGJfaW5pdCBmYWlsZWRcbiIpOworICAg
ICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7CisgICAgfQorCisgICAgLyogdGVzdCBs
b3NzIG9mIGZpcnN0IDUxMyBwYWNrZXRzICovCisgICAgZm9yIChpZHggPSAwOyBpZHggPCBudW1f
dHJpYWxzOyBpZHgrKykgeworICAgICAgICBlcnIgPSByZGJfY2hlY2tfYWRkKCZyZGIsIGlkeCAr
IDUxMyk7CisgICAgICAgIGlmIChlcnIpCisgICAgICAgICAgICByZXR1cm4gZXJyOworICAgIH0K
KworICAgIC8qIHRlc3QgZm9yIGZhbHNlIHBvc2l0aXZlcyAqLworICAgIGZvciAoaWR4ID0gMDsg
aWR4IDwgbnVtX3RyaWFscyArIDUxMzsgaWR4KyspIHsKKyAgICAgICAgZXJyID0gcmRiX2NoZWNr
X2V4cGVjdF9mYWlsdXJlKCZyZGIsIGlkeCk7CisgICAgICAgIGlmIChlcnIpCisgICAgICAgICAg
ICByZXR1cm4gZXJyOworICAgIH0KKworICAgIC8qIHRlc3QgZm9yIGtleSBleHBpcmVkICovCisg
ICAgaWYgKHNydHBfcmRiX2luaXQoJnJkYikgIT0gc3J0cF9lcnJfc3RhdHVzX29rKSB7CisgICAg
ICAgIHByaW50ZigicmRiX2luaXQgZmFpbGVkXG4iKTsKKyAgICAgICAgcmV0dXJuIHNydHBfZXJy
X3N0YXR1c19mYWlsOworICAgIH0KKyAgICByZGIud2luZG93X3N0YXJ0ID0gMHg3ZmZmZmZmZTsK
KyAgICBpZiAoc3J0cF9yZGJfaW5jcmVtZW50KCZyZGIpICE9IHNydHBfZXJyX3N0YXR1c19vaykg
eworICAgICAgICBwcmludGYoInNydHBfcmRiX2luY3JlbWVudCBvZiAweDdmZmZmZmZlIGZhaWxl
ZFxuIik7CisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfZmFpbDsKKyAgICB9CisgICAg
aWYgKHNydHBfcmRiX2dldF92YWx1ZSgmcmRiKSAhPSAweDdmZmZmZmZmKSB7CisgICAgICAgIHBy
aW50ZigicmRiIHZhbGl1ZSB3YXMgbm90IDB4N2ZmZmZmZmZcbiIpOworICAgICAgICByZXR1cm4g
c3J0cF9lcnJfc3RhdHVzX2ZhaWw7CisgICAgfQorICAgIGlmIChzcnRwX3JkYl9pbmNyZW1lbnQo
JnJkYikgIT0gc3J0cF9lcnJfc3RhdHVzX2tleV9leHBpcmVkKSB7CisgICAgICAgIHByaW50Zigi
c3J0cF9yZGJfaW5jcmVtZW50IG9mIDB4N2ZmZmZmZmYgZGlkIG5vdCByZXR1cm4gIgorICAgICAg
ICAgICAgICAgInNydHBfZXJyX3N0YXR1c19rZXlfZXhwaXJlZFxuIik7CisgICAgICAgIHJldHVy
biBzcnRwX2Vycl9zdGF0dXNfZmFpbDsKKyAgICB9CisgICAgaWYgKHNydHBfcmRiX2dldF92YWx1
ZSgmcmRiKSAhPSAweDdmZmZmZmZmKSB7CisgICAgICAgIHByaW50ZigicmRiIHZhbGl1ZSB3YXMg
bm90IDB4N2ZmZmZmZmZcbiIpOworICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7
CisgICAgfQorCisgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0KIAotI2luY2x1ZGUg
PHRpbWUuaD4gICAgICAgLyogZm9yIGNsb2NrKCkgICovCi0jaW5jbHVkZSA8c3RkbGliLmg+ICAg
ICAvKiBmb3IgcmFuZG9tKCkgKi8KKyNpbmNsdWRlIDx0aW1lLmg+ICAgLyogZm9yIGNsb2NrKCkg
ICovCisjaW5jbHVkZSA8c3RkbGliLmg+IC8qIGZvciByYW5kb20oKSAqLwogCiAjZGVmaW5lIFJF
UExBWV9OVU1fVFJJQUxTIDEwMDAwMDAwCiAKLWRvdWJsZQotcmRiX2NoZWNrX2FkZHNfcGVyX3Nl
Y29uZCh2b2lkKSB7Ci0gIHVpbnQzMl90IGk7Ci0gIHNydHBfcmRiX3QgcmRiOwotICBjbG9ja190
IHRpbWVyOwotICBpbnQgZmFpbHVyZXMgPSAwOyAgICAgICAgICAgICAgICAgICAgLyogY291bnQg
bnVtYmVyIG9mIGZhaWx1cmVzICAgICAgICAqLwotICAKLSAgaWYgKHNydHBfcmRiX2luaXQoJnJk
YikgIT0gc3J0cF9lcnJfc3RhdHVzX29rKSB7Ci0gICAgcHJpbnRmKCJyZGJfaW5pdCBmYWlsZWRc
biIpOwotICAgIGV4aXQoMSk7Ci0gIH0gIAotCi0gIHRpbWVyID0gY2xvY2soKTsKLSAgZm9yKGk9
MDsgaSA8IFJFUExBWV9OVU1fVFJJQUxTOyBpKz0zKSB7Ci0gICAgaWYgKHNydHBfcmRiX2NoZWNr
KCZyZGIsIGkrMikgIT0gc3J0cF9lcnJfc3RhdHVzX29rKQotICAgICAgKytmYWlsdXJlczsKLSAg
ICBpZiAoc3J0cF9yZGJfYWRkX2luZGV4KCZyZGIsIGkrMikgIT0gc3J0cF9lcnJfc3RhdHVzX29r
KQotICAgICAgKytmYWlsdXJlczsKLSAgICBpZiAoc3J0cF9yZGJfY2hlY2soJnJkYiwgaSsxKSAh
PSBzcnRwX2Vycl9zdGF0dXNfb2spCi0gICAgICArK2ZhaWx1cmVzOwotICAgIGlmIChzcnRwX3Jk
Yl9hZGRfaW5kZXgoJnJkYiwgaSsxKSAhPSBzcnRwX2Vycl9zdGF0dXNfb2spCi0gICAgICArK2Zh
aWx1cmVzOwotICAgIGlmIChzcnRwX3JkYl9jaGVjaygmcmRiLCBpKSAhPSBzcnRwX2Vycl9zdGF0
dXNfb2spCi0gICAgICArK2ZhaWx1cmVzOwotICAgIGlmIChzcnRwX3JkYl9hZGRfaW5kZXgoJnJk
YiwgaSkgIT0gc3J0cF9lcnJfc3RhdHVzX29rKQotICAgICAgKytmYWlsdXJlczsKLSAgfQotICB0
aW1lciA9IGNsb2NrKCkgLSB0aW1lcjsKLQotICByZXR1cm4gKGRvdWJsZSkgQ0xPQ0tTX1BFUl9T
RUMgKiBSRVBMQVlfTlVNX1RSSUFMUyAvIHRpbWVyOworZG91YmxlIHJkYl9jaGVja19hZGRzX3Bl
cl9zZWNvbmQodm9pZCkKK3sKKyAgICB1aW50MzJfdCBpOworICAgIHNydHBfcmRiX3QgcmRiOwor
ICAgIGNsb2NrX3QgdGltZXI7CisgICAgaW50IGZhaWx1cmVzID0gMDsgLyogY291bnQgbnVtYmVy
IG9mIGZhaWx1cmVzICAgICAgICAqLworCisgICAgaWYgKHNydHBfcmRiX2luaXQoJnJkYikgIT0g
c3J0cF9lcnJfc3RhdHVzX29rKSB7CisgICAgICAgIHByaW50ZigicmRiX2luaXQgZmFpbGVkXG4i
KTsKKyAgICAgICAgZXhpdCgxKTsKKyAgICB9CisKKyAgICB0aW1lciA9IGNsb2NrKCk7CisgICAg
Zm9yIChpID0gMDsgaSA8IFJFUExBWV9OVU1fVFJJQUxTOyBpICs9IDMpIHsKKyAgICAgICAgaWYg
KHNydHBfcmRiX2NoZWNrKCZyZGIsIGkgKyAyKSAhPSBzcnRwX2Vycl9zdGF0dXNfb2spCisgICAg
ICAgICAgICArK2ZhaWx1cmVzOworICAgICAgICBpZiAoc3J0cF9yZGJfYWRkX2luZGV4KCZyZGIs
IGkgKyAyKSAhPSBzcnRwX2Vycl9zdGF0dXNfb2spCisgICAgICAgICAgICArK2ZhaWx1cmVzOwor
ICAgICAgICBpZiAoc3J0cF9yZGJfY2hlY2soJnJkYiwgaSArIDEpICE9IHNydHBfZXJyX3N0YXR1
c19vaykKKyAgICAgICAgICAgICsrZmFpbHVyZXM7CisgICAgICAgIGlmIChzcnRwX3JkYl9hZGRf
aW5kZXgoJnJkYiwgaSArIDEpICE9IHNydHBfZXJyX3N0YXR1c19vaykKKyAgICAgICAgICAgICsr
ZmFpbHVyZXM7CisgICAgICAgIGlmIChzcnRwX3JkYl9jaGVjaygmcmRiLCBpKSAhPSBzcnRwX2Vy
cl9zdGF0dXNfb2spCisgICAgICAgICAgICArK2ZhaWx1cmVzOworICAgICAgICBpZiAoc3J0cF9y
ZGJfYWRkX2luZGV4KCZyZGIsIGkpICE9IHNydHBfZXJyX3N0YXR1c19vaykKKyAgICAgICAgICAg
ICsrZmFpbHVyZXM7CisgICAgfQorICAgIHRpbWVyID0gY2xvY2soKSAtIHRpbWVyOworCisgICAg
cmV0dXJuIChkb3VibGUpQ0xPQ0tTX1BFUl9TRUMgKiBSRVBMQVlfTlVNX1RSSUFMUyAvIHRpbWVy
OwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJzcnRwL3Rlc3Qvcm9jX2RyaXZlci5jIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL3Rlc3Qvcm9jX2RyaXZlci5jCmluZGV4
IGMyMzExM2FkYzk4MzYyNmQxZmFjZWU2MGUxM2UzNGY2ZTk0NjE0ZjkuLmQ2MWJhOGVmMjRlYTIy
ZjY2YmI5ODM3NzNhYTY2NjJmNDdmNGZiMzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC90ZXN0L3JvY19kcml2ZXIuYwor
KysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNy
dHAvdGVzdC9yb2NfZHJpdmVyLmMKQEAgLTgsMjYgKzgsMjYgQEAKICAqLwogCiAvKgotICoJCisg
KgogICogQ29weXJpZ2h0IChjKSAyMDAxLTIwMTcsIENpc2NvIFN5c3RlbXMsIEluYy4KICAqIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCi0gKiAKKyAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlv
biwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwog
ICogYXJlIG1ldDoKLSAqIAorICoKICAqICAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2Rl
IG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKICAqICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogCisgKgogICog
ICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3Zl
CiAgKiAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nCiAgKiAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZAogICogICB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKiAK
KyAqCiAgKiAgIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIENpc2NvIFN5c3RlbXMsIEluYy4gbm9y
IHRoZSBuYW1lcyBvZiBpdHMKICAqICAgY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9y
c2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkCiAgKiAgIGZyb20gdGhpcyBzb2Z0d2FyZSB3
aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLSAqIAorICoKICAqIFRI
SVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05U
UklCVVRPUlMKICAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UCiAgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUwpAQCAtNDMsOSArNDMsOCBAQAogICoK
ICAqLwogCi0KICNpZmRlZiBIQVZFX0NPTkZJR19ICi0gICAgI2luY2x1ZGUgPGNvbmZpZy5oPgor
I2luY2x1ZGUgPGNvbmZpZy5oPgogI2VuZGlmCiAKICNpbmNsdWRlIDxzdGRpby5oPgpAQCAtNTUs
MTIxICs1NCwxMTcgQEAKICAqIHNydHBfeHRkX3NlcV9udW1fdCAtIHRoaXMgYWxsb3dzIHRoZSBm
dW5jdGlvbnMgdG8gYmUgZXhoYXVzdGl2ZWx5IHRlc3RlZC4KICAqLwogI2lmIFJPQ19ORUVEU19U
T19CRV9URVNURUQKLSNkZWZpbmUgUk9DX1RFU1QgICAgIAorI2RlZmluZSBST0NfVEVTVAogI2Vu
ZGlmCiAKICNpbmNsdWRlICJyZGJ4LmgiCiAjaW5jbHVkZSAidXRfc2ltLmgiCiAKLXNydHBfZXJy
X3N0YXR1c190Ci1yb2NfdGVzdChpbnQgbnVtX3RyaWFscyk7Ci0KLWludAotbWFpbiAodm9pZCkg
ewotICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7Ci0KLSAgcHJpbnRmKCJyb2xsb3ZlciBjb3Vu
dGVyIHRlc3QgZHJpdmVyXG4iCi0JICJEYXZpZCBBLiBNY0dyZXdcbiIKLQkgIkNpc2NvIFN5c3Rl
bXMsIEluYy5cbiIpOwotICAKLSAgcHJpbnRmKCJ0ZXN0aW5nIGluZGV4IGZ1bmN0aW9ucy4uLiIp
OwotICBzdGF0dXMgPSByb2NfdGVzdCgxIDw8IDE4KTsKLSAgaWYgKHN0YXR1cykgewotICAgIHBy
aW50ZigiZmFpbGVkXG4iKTsKLSAgICBleGl0KHN0YXR1cyk7Ci0gIH0KLSAgcHJpbnRmKCJwYXNz
ZWRcbiIpOwotICByZXR1cm4gMDsKLX0KK3NydHBfZXJyX3N0YXR1c190IHJvY190ZXN0KGludCBu
dW1fdHJpYWxzKTsKKworaW50IG1haW4odm9pZCkKK3sKKyAgICBzcnRwX2Vycl9zdGF0dXNfdCBz
dGF0dXM7CiAKKyAgICBwcmludGYoInJvbGxvdmVyIGNvdW50ZXIgdGVzdCBkcml2ZXJcbiIKKyAg
ICAgICAgICAgIkRhdmlkIEEuIE1jR3Jld1xuIgorICAgICAgICAgICAiQ2lzY28gU3lzdGVtcywg
SW5jLlxuIik7CisKKyAgICBwcmludGYoInRlc3RpbmcgaW5kZXggZnVuY3Rpb25zLi4uIik7Cisg
ICAgc3RhdHVzID0gcm9jX3Rlc3QoMSA8PCAxOCk7CisgICAgaWYgKHN0YXR1cykgeworICAgICAg
ICBwcmludGYoImZhaWxlZFxuIik7CisgICAgICAgIGV4aXQoc3RhdHVzKTsKKyAgICB9CisgICAg
cHJpbnRmKCJwYXNzZWRcbiIpOworICAgIHJldHVybiAwOworfQogCiAjZGVmaW5lIFJPQ19WRVJC
T1NFIDAKIAotc3J0cF9lcnJfc3RhdHVzX3QKLXJvY190ZXN0KGludCBudW1fdHJpYWxzKSB7Ci0g
IHNydHBfeHRkX3NlcV9udW1fdCBsb2NhbCwgZXN0LCByZWY7Ci0gIHV0X2Nvbm5lY3Rpb24gdXRj
OwotICBpbnQgaSwgbnVtX2JhZF9lc3QgPSAwOwotICBpbnQgZGVsdGE7Ci0gIHVpbnQzMl90IGly
Y3ZkOwotICBkb3VibGUgZmFpbHVyZV9yYXRlOwotCi0gIHNydHBfaW5kZXhfaW5pdCgmbG9jYWwp
OwotICBzcnRwX2luZGV4X2luaXQoJnJlZik7Ci0gIHNydHBfaW5kZXhfaW5pdCgmZXN0KTsKLQot
ICBwcmludGYoIlxuXHR0ZXN0aW5nIHNlcXVlbnRpYWwgaW5zZXJ0aW9uLi4uIik7Ci0gIGZvciAo
aT0wOyBpIDwgMjA0ODsgaSsrKSB7Ci0gICAgZGVsdGEgPSBzcnRwX2luZGV4X2d1ZXNzKCZsb2Nh
bCwgJmVzdCwgKHVpbnQxNl90KSByZWYpOworc3J0cF9lcnJfc3RhdHVzX3Qgcm9jX3Rlc3QoaW50
IG51bV90cmlhbHMpCit7CisgICAgc3J0cF94dGRfc2VxX251bV90IGxvY2FsLCBlc3QsIHJlZjsK
KyAgICB1dF9jb25uZWN0aW9uIHV0YzsKKyAgICBpbnQgaSwgbnVtX2JhZF9lc3QgPSAwOworICAg
IGludCBkZWx0YTsKKyAgICB1aW50MzJfdCBpcmN2ZDsKKyAgICBkb3VibGUgZmFpbHVyZV9yYXRl
OworCisgICAgc3J0cF9pbmRleF9pbml0KCZsb2NhbCk7CisgICAgc3J0cF9pbmRleF9pbml0KCZy
ZWYpOworICAgIHNydHBfaW5kZXhfaW5pdCgmZXN0KTsKKworICAgIHByaW50ZigiXG5cdHRlc3Rp
bmcgc2VxdWVudGlhbCBpbnNlcnRpb24uLi4iKTsKKyAgICBmb3IgKGkgPSAwOyBpIDwgMjA0ODsg
aSsrKSB7CisgICAgICAgIGRlbHRhID0gc3J0cF9pbmRleF9ndWVzcygmbG9jYWwsICZlc3QsICh1
aW50MTZfdClyZWYpOwogI2lmIFJPQ19WRVJCT1NFCi0gICAgcHJpbnRmKCIlbGxkLCAlbGxkLCAl
ZFxuIiwgcmVmLCBlc3QsICBpKTsKKyAgICAgICAgcHJpbnRmKCIlbGxkLCAlbGxkLCAlZFxuIiwg
cmVmLCBlc3QsIGkpOwogI2VuZGlmCi0gICAgaWYgKHJlZiAhPSBlc3QpIHsKKyAgICAgICAgaWYg
KHJlZiAhPSBlc3QpIHsKICNpZiBST0NfVkVSQk9TRQotICAgICAgcHJpbnRmKCIgKmJhZCBlc3Rp
bWF0ZSpcbiIpOworICAgICAgICAgICAgcHJpbnRmKCIgKmJhZCBlc3RpbWF0ZSpcbiIpOwogI2Vu
ZGlmCi0gICAgICArK251bV9iYWRfZXN0OworICAgICAgICAgICAgKytudW1fYmFkX2VzdDsKKyAg
ICAgICAgfQorICAgICAgICBzcnRwX2luZGV4X2FkdmFuY2UoJnJlZiwgMSk7CisgICAgfQorICAg
IGZhaWx1cmVfcmF0ZSA9IChkb3VibGUpbnVtX2JhZF9lc3QgLyBudW1fdHJpYWxzOworICAgIGlm
IChmYWlsdXJlX3JhdGUgPiAwLjAxKSB7CisgICAgICAgIHByaW50ZigiZXJyb3I6IGZhaWx1cmUg
cmF0ZSB0b28gaGlnaCAoJWQgYmFkIGVzdGltYXRlcyBpbiAlZCB0cmlhbHMpXG4iLAorICAgICAg
ICAgICAgICAgbnVtX2JhZF9lc3QsIG51bV90cmlhbHMpOworICAgICAgICByZXR1cm4gc3J0cF9l
cnJfc3RhdHVzX2FsZ29fZmFpbDsKICAgICB9Ci0gICAgc3J0cF9pbmRleF9hZHZhbmNlKCZyZWYs
IDEpOwotICB9Ci0gIGZhaWx1cmVfcmF0ZSA9IChkb3VibGUpIG51bV9iYWRfZXN0IC8gbnVtX3Ry
aWFsczsKLSAgaWYgKGZhaWx1cmVfcmF0ZSA+IDAuMDEpIHsKLSAgICBwcmludGYoImVycm9yOiBm
YWlsdXJlIHJhdGUgdG9vIGhpZ2ggKCVkIGJhZCBlc3RpbWF0ZXMgaW4gJWQgdHJpYWxzKVxuIiwg
Ci0JICAgbnVtX2JhZF9lc3QsIG51bV90cmlhbHMpOwotICAgIHJldHVybiBzcnRwX2Vycl9zdGF0
dXNfYWxnb19mYWlsOwotICB9Ci0gIHByaW50ZigiZG9uZVxuIik7Ci0KLQotICBwcmludGYoIlx0
dGVzdGluZyBub24tc2VxdWVudGlhbCBpbnNlcnRpb24uLi4iKTsKLSAgc3J0cF9pbmRleF9pbml0
KCZsb2NhbCk7Ci0gIHNydHBfaW5kZXhfaW5pdCgmcmVmKTsKLSAgc3J0cF9pbmRleF9pbml0KCZl
c3QpOwotICB1dF9pbml0KCZ1dGMpOwotICAKLSAgZm9yIChpPTA7IGkgPCBudW1fdHJpYWxzOyBp
KyspIHsKLSAgICAKLSAgICAvKiBnZXQgbmV4dCBzZXEgbnVtIGZyb20gdW5yZWxpYWJsZSB0cmFu
c3BvcnQgc2ltdWxhdG9yICovCi0gICAgaXJjdmQgPSB1dF9uZXh0X2luZGV4KCZ1dGMpOwotICAg
IAotICAgIC8qIHNldCByZWYgdG8gdmFsdWUgb2YgaXJjdmQgKi8KLSAgICByZWYgPSBpcmN2ZDsg
Ci0KLSAgICAvKiBlc3RpbWF0ZSBpbmRleCBiYXNlZCBvbiBsb3cgYml0cyBvZiBpcmN2ZCAqLwot
ICAgIGRlbHRhID0gc3J0cF9pbmRleF9ndWVzcygmbG9jYWwsICZlc3QsICh1aW50MTZfdCkgcmVm
KTsKKyAgICBwcmludGYoImRvbmVcbiIpOworCisgICAgcHJpbnRmKCJcdHRlc3Rpbmcgbm9uLXNl
cXVlbnRpYWwgaW5zZXJ0aW9uLi4uIik7CisgICAgc3J0cF9pbmRleF9pbml0KCZsb2NhbCk7Cisg
ICAgc3J0cF9pbmRleF9pbml0KCZyZWYpOworICAgIHNydHBfaW5kZXhfaW5pdCgmZXN0KTsKKyAg
ICB1dF9pbml0KCZ1dGMpOworCisgICAgZm9yIChpID0gMDsgaSA8IG51bV90cmlhbHM7IGkrKykg
eworICAgICAgICAvKiBnZXQgbmV4dCBzZXEgbnVtIGZyb20gdW5yZWxpYWJsZSB0cmFuc3BvcnQg
c2ltdWxhdG9yICovCisgICAgICAgIGlyY3ZkID0gdXRfbmV4dF9pbmRleCgmdXRjKTsKKworICAg
ICAgICAvKiBzZXQgcmVmIHRvIHZhbHVlIG9mIGlyY3ZkICovCisgICAgICAgIHJlZiA9IGlyY3Zk
OworCisgICAgICAgIC8qIGVzdGltYXRlIGluZGV4IGJhc2VkIG9uIGxvdyBiaXRzIG9mIGlyY3Zk
ICovCisgICAgICAgIGRlbHRhID0gc3J0cF9pbmRleF9ndWVzcygmbG9jYWwsICZlc3QsICh1aW50
MTZfdClyZWYpOwogI2lmIFJPQ19WRVJCT1NFCi0gICAgcHJpbnRmKCJyZWY6ICVsbGQsIGxvY2Fs
OiAlbGxkLCBlc3Q6ICVsbGQsIGlyY3ZkOiAlZCwgZGVsdGE6ICVkXG4iLCAKLQkgICByZWYsIGxv
Y2FsLCBlc3QsIGlyY3ZkLCBkZWx0YSk7CisgICAgICAgIHByaW50ZigicmVmOiAlbGxkLCBsb2Nh
bDogJWxsZCwgZXN0OiAlbGxkLCBpcmN2ZDogJWQsIGRlbHRhOiAlZFxuIiwgcmVmLAorICAgICAg
ICAgICAgICAgbG9jYWwsIGVzdCwgaXJjdmQsIGRlbHRhKTsKICNlbmRpZgotICAgIAotICAgIGlm
IChsb2NhbCArIGRlbHRhICE9IGVzdCkgewotICAgICAgcHJpbnRmKCIgKmJhZCBkZWx0YSo6IGxv
Y2FsICVsbHUgKyBkZWx0YSAlZCAhPSBlc3QgJWxsdVxuIiwKLQkgICAgICh1bnNpZ25lZCBsb25n
IGxvbmcpbG9jYWwsIGRlbHRhLCAodW5zaWduZWQgbG9uZyBsb25nKWVzdCk7Ci0gICAgICByZXR1
cm4gc3J0cF9lcnJfc3RhdHVzX2FsZ29fZmFpbDsKLSAgICB9CiAKLSAgICAvKiBub3cgdXBkYXRl
IGxvY2FsIHNydHBfeHRkX3NlcV9udW1fdCBhcyBuZWNlc3NhcnkgKi8KLSAgICBpZiAoZGVsdGEg
PiAwKSAKLSAgICAgIHNydHBfaW5kZXhfYWR2YW5jZSgmbG9jYWwsIGRlbHRhKTsKKyAgICAgICAg
aWYgKGxvY2FsICsgZGVsdGEgIT0gZXN0KSB7CisgICAgICAgICAgICBwcmludGYoIiAqYmFkIGRl
bHRhKjogbG9jYWwgJWxsdSArIGRlbHRhICVkICE9IGVzdCAlbGx1XG4iLAorICAgICAgICAgICAg
ICAgICAgICh1bnNpZ25lZCBsb25nIGxvbmcpbG9jYWwsIGRlbHRhLCAodW5zaWduZWQgbG9uZyBs
b25nKWVzdCk7CisgICAgICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2FsZ29fZmFpbDsK
KyAgICAgICAgfQorCisgICAgICAgIC8qIG5vdyB1cGRhdGUgbG9jYWwgc3J0cF94dGRfc2VxX251
bV90IGFzIG5lY2Vzc2FyeSAqLworICAgICAgICBpZiAoZGVsdGEgPiAwKQorICAgICAgICAgICAg
c3J0cF9pbmRleF9hZHZhbmNlKCZsb2NhbCwgZGVsdGEpOwogCi0gICAgaWYgKHJlZiAhPSBlc3Qp
IHsKKyAgICAgICAgaWYgKHJlZiAhPSBlc3QpIHsKICNpZiBST0NfVkVSQk9TRQotICAgICAgcHJp
bnRmKCIgKmJhZCBlc3RpbWF0ZSpcbiIpOworICAgICAgICAgICAgcHJpbnRmKCIgKmJhZCBlc3Rp
bWF0ZSpcbiIpOwogI2VuZGlmCi0gICAgICAvKiByZWNvcmQgZmFpbHVyZSBldmVudCAqLwotICAg
ICAgKytudW1fYmFkX2VzdDsKLSAgICAgIAotICAgICAgLyogcmVzZXQgbG9jYWwgdmFsdWUgdG8g
Y29ycmVjdCB2YWx1ZSAqLwotICAgICAgbG9jYWwgPSByZWY7CisgICAgICAgICAgICAvKiByZWNv
cmQgZmFpbHVyZSBldmVudCAqLworICAgICAgICAgICAgKytudW1fYmFkX2VzdDsKKworICAgICAg
ICAgICAgLyogcmVzZXQgbG9jYWwgdmFsdWUgdG8gY29ycmVjdCB2YWx1ZSAqLworICAgICAgICAg
ICAgbG9jYWwgPSByZWY7CisgICAgICAgIH0KICAgICB9Ci0gIH0KLSAgZmFpbHVyZV9yYXRlID0g
KGRvdWJsZSkgbnVtX2JhZF9lc3QgLyBudW1fdHJpYWxzOwotICBpZiAoZmFpbHVyZV9yYXRlID4g
MC4wMSkgewotICAgIHByaW50ZigiZXJyb3I6IGZhaWx1cmUgcmF0ZSB0b28gaGlnaCAoJWQgYmFk
IGVzdGltYXRlcyBpbiAlZCB0cmlhbHMpXG4iLCAKLQkgICBudW1fYmFkX2VzdCwgbnVtX3RyaWFs
cyk7Ci0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19hbGdvX2ZhaWw7Ci0gIH0KLSAgcHJpbnRm
KCJkb25lXG4iKTsKLQotICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOworICAgIGZhaWx1cmVf
cmF0ZSA9IChkb3VibGUpbnVtX2JhZF9lc3QgLyBudW1fdHJpYWxzOworICAgIGlmIChmYWlsdXJl
X3JhdGUgPiAwLjAxKSB7CisgICAgICAgIHByaW50ZigiZXJyb3I6IGZhaWx1cmUgcmF0ZSB0b28g
aGlnaCAoJWQgYmFkIGVzdGltYXRlcyBpbiAlZCB0cmlhbHMpXG4iLAorICAgICAgICAgICAgICAg
bnVtX2JhZF9lc3QsIG51bV90cmlhbHMpOworICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVz
X2FsZ29fZmFpbDsKKyAgICB9CisgICAgcHJpbnRmKCJkb25lXG4iKTsKKworICAgIHJldHVybiBz
cnRwX2Vycl9zdGF0dXNfb2s7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvdGVzdC9ydHAuYyBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC90ZXN0L3J0cC5jCmlu
ZGV4IDc0Y2I5MDIxNzk2ZDVjZjlmZmQ4ODc4MjRhN2MzOWYwYTMzMDZiOWUuLmY2MGE5YjExYjI4
ODUwZTYwMjU4MDBkYzk1ODNjYWFhNDEwODY0OGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC90ZXN0L3J0cC5jCisrKyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC90
ZXN0L3J0cC5jCkBAIC04LDI2ICs4LDI2IEBACiAgKi8KIAogLyoKLSAqCQorICoKICAqIENvcHly
aWdodCAoYykgMjAwMS0yMDE3LCBDaXNjbyBTeXN0ZW1zLCBJbmMuCiAgKiBBbGwgcmlnaHRzIHJl
c2VydmVkLgotICogCisgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5k
IGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJt
aXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKICAqIGFyZSBtZXQ6
Ci0gKiAKKyAqCiAgKiAgIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFp
biB0aGUgYWJvdmUgY29weXJpZ2h0CiAgKiAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIAorICoKICAqICAgUmVkaXN0cmli
dXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQogICogICBjb3B5
cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwog
ICogICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlh
bHMgcHJvdmlkZWQKICAqICAgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICogCisgKgogICogICBO
ZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBDaXNjbyBTeXN0ZW1zLCBJbmMuIG5vciB0aGUgbmFtZXMg
b2YgaXRzCiAgKiAgIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21v
dGUgcHJvZHVjdHMgZGVyaXZlZAogICogICBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVj
aWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0gKiAKKyAqCiAgKiBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCiAg
KiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElO
RywgQlVUIE5PVAogICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJD
SEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKQEAgLTUwLDE3OCArNTAsMTc4IEBACiAKICNpbmNsdWRl
IDxzeXMvdHlwZXMuaD4KICNpZmRlZiBIQVZFX1NZU19TT0NLRVRfSAotIyBpbmNsdWRlIDxzeXMv
c29ja2V0Lmg+CisjaW5jbHVkZSA8c3lzL3NvY2tldC5oPgogI2VuZGlmCiAKLSNkZWZpbmUgUFJJ
TlRfREVCVUcgICAgMCAgICAvKiBzZXQgdG8gMSB0byBwcmludCBvdXQgZGVidWdnaW5nIGRhdGEg
Ki8KLSNkZWZpbmUgVkVSQk9TRV9ERUJVRyAgMCAgICAvKiBzZXQgdG8gMSB0byBwcmludCBvdXQg
bW9yZSBkYXRhICAgICAgKi8KLQotaW50Ci1ydHBfc2VuZHRvKHJ0cF9zZW5kZXJfdCBzZW5kZXIs
IGNvbnN0IHZvaWQqIG1zZywgaW50IGxlbikgewotICBpbnQgb2N0ZXRzX3NlbnQ7Ci0gIHNydHBf
ZXJyX3N0YXR1c190IHN0YXQ7Ci0gIGludCBwa3RfbGVuID0gbGVuICsgUlRQX0hFQURFUl9MRU47
Ci0KLSAgLyogbWFyc2hhbCBkYXRhICovCi0gIHN0cm5jcHkoc2VuZGVyLT5tZXNzYWdlLmJvZHks
IG1zZywgbGVuKTsKLSAgCi0gIC8qIHVwZGF0ZSBoZWFkZXIgKi8KLSAgc2VuZGVyLT5tZXNzYWdl
LmhlYWRlci5zZXEgPSBudG9ocyhzZW5kZXItPm1lc3NhZ2UuaGVhZGVyLnNlcSkgKyAxOwotICBz
ZW5kZXItPm1lc3NhZ2UuaGVhZGVyLnNlcSA9IGh0b25zKHNlbmRlci0+bWVzc2FnZS5oZWFkZXIu
c2VxKTsKLSAgc2VuZGVyLT5tZXNzYWdlLmhlYWRlci50cyA9IG50b2hsKHNlbmRlci0+bWVzc2Fn
ZS5oZWFkZXIudHMpICsgMTsKLSAgc2VuZGVyLT5tZXNzYWdlLmhlYWRlci50cyA9IGh0b25sKHNl
bmRlci0+bWVzc2FnZS5oZWFkZXIudHMpOwotICAKLSAgLyogYXBwbHkgc3J0cCAqLwotICBzdGF0
ID0gc3J0cF9wcm90ZWN0KHNlbmRlci0+c3J0cF9jdHgsICZzZW5kZXItPm1lc3NhZ2UuaGVhZGVy
LCAmcGt0X2xlbik7Ci0gIGlmIChzdGF0KSB7CisjZGVmaW5lIFBSSU5UX0RFQlVHIDAgICAvKiBz
ZXQgdG8gMSB0byBwcmludCBvdXQgZGVidWdnaW5nIGRhdGEgKi8KKyNkZWZpbmUgVkVSQk9TRV9E
RUJVRyAwIC8qIHNldCB0byAxIHRvIHByaW50IG91dCBtb3JlIGRhdGEgICAgICAqLworCitpbnQg
cnRwX3NlbmR0byhydHBfc2VuZGVyX3Qgc2VuZGVyLCBjb25zdCB2b2lkICptc2csIGludCBsZW4p
Cit7CisgICAgaW50IG9jdGV0c19zZW50OworICAgIHNydHBfZXJyX3N0YXR1c190IHN0YXQ7Cisg
ICAgaW50IHBrdF9sZW4gPSBsZW4gKyBSVFBfSEVBREVSX0xFTjsKKworICAgIC8qIG1hcnNoYWwg
ZGF0YSAqLworICAgIHN0cm5jcHkoc2VuZGVyLT5tZXNzYWdlLmJvZHksIG1zZywgbGVuKTsKKwor
ICAgIC8qIHVwZGF0ZSBoZWFkZXIgKi8KKyAgICBzZW5kZXItPm1lc3NhZ2UuaGVhZGVyLnNlcSA9
IG50b2hzKHNlbmRlci0+bWVzc2FnZS5oZWFkZXIuc2VxKSArIDE7CisgICAgc2VuZGVyLT5tZXNz
YWdlLmhlYWRlci5zZXEgPSBodG9ucyhzZW5kZXItPm1lc3NhZ2UuaGVhZGVyLnNlcSk7CisgICAg
c2VuZGVyLT5tZXNzYWdlLmhlYWRlci50cyA9IG50b2hsKHNlbmRlci0+bWVzc2FnZS5oZWFkZXIu
dHMpICsgMTsKKyAgICBzZW5kZXItPm1lc3NhZ2UuaGVhZGVyLnRzID0gaHRvbmwoc2VuZGVyLT5t
ZXNzYWdlLmhlYWRlci50cyk7CisKKyAgICAvKiBhcHBseSBzcnRwICovCisgICAgc3RhdCA9IHNy
dHBfcHJvdGVjdChzZW5kZXItPnNydHBfY3R4LCAmc2VuZGVyLT5tZXNzYWdlLmhlYWRlciwgJnBr
dF9sZW4pOworICAgIGlmIChzdGF0KSB7CiAjaWYgUFJJTlRfREVCVUcKLSAgICBmcHJpbnRmKHN0
ZGVyciwgImVycm9yOiBzcnRwIHByb3RlY3Rpb24gZmFpbGVkIHdpdGggY29kZSAlZFxuIiwgc3Rh
dCk7CisgICAgICAgIGZwcmludGYoc3RkZXJyLCAiZXJyb3I6IHNydHAgcHJvdGVjdGlvbiBmYWls
ZWQgd2l0aCBjb2RlICVkXG4iLCBzdGF0KTsKICNlbmRpZgotICAgIHJldHVybiAtMTsKLSAgfQor
ICAgICAgICByZXR1cm4gLTE7CisgICAgfQogI2lmIFZFUkJPU0VfREVCVUcKLSAgc3J0cF9wcmlu
dF9wYWNrZXQoJnNlbmRlci0+bWVzc2FnZS5oZWFkZXIsIHBrdF9sZW4pOworICAgIHNydHBfcHJp
bnRfcGFja2V0KCZzZW5kZXItPm1lc3NhZ2UuaGVhZGVyLCBwa3RfbGVuKTsKICNlbmRpZgotICBv
Y3RldHNfc2VudCA9IHNlbmR0byhzZW5kZXItPnNvY2tldCwgKHZvaWQqKSZzZW5kZXItPm1lc3Nh
Z2UsCi0JCSAgICAgICBwa3RfbGVuLCAwLCAoc3RydWN0IHNvY2thZGRyICopJnNlbmRlci0+YWRk
ciwKLQkJICAgICAgIHNpemVvZiAoc3RydWN0IHNvY2thZGRyX2luKSk7CisgICAgb2N0ZXRzX3Nl
bnQgPQorICAgICAgICBzZW5kdG8oc2VuZGVyLT5zb2NrZXQsICh2b2lkICopJnNlbmRlci0+bWVz
c2FnZSwgcGt0X2xlbiwgMCwKKyAgICAgICAgICAgICAgIChzdHJ1Y3Qgc29ja2FkZHIgKikmc2Vu
ZGVyLT5hZGRyLCBzaXplb2Yoc3RydWN0IHNvY2thZGRyX2luKSk7CiAKLSAgaWYgKG9jdGV0c19z
ZW50ICE9IHBrdF9sZW4pIHsKKyAgICBpZiAob2N0ZXRzX3NlbnQgIT0gcGt0X2xlbikgewogI2lm
IFBSSU5UX0RFQlVHCi0gICAgZnByaW50ZihzdGRlcnIsICJlcnJvcjogY291bGRuJ3Qgc2VuZCBt
ZXNzYWdlICVzIiwgKGNoYXIgKiltc2cpOwotICAgIHBlcnJvcigiIik7CisgICAgICAgIGZwcmlu
dGYoc3RkZXJyLCAiZXJyb3I6IGNvdWxkbid0IHNlbmQgbWVzc2FnZSAlcyIsIChjaGFyICopbXNn
KTsKKyAgICAgICAgcGVycm9yKCIiKTsKICNlbmRpZgotICB9CisgICAgfQogCi0gIHJldHVybiBv
Y3RldHNfc2VudDsKKyAgICByZXR1cm4gb2N0ZXRzX3NlbnQ7CiB9CiAKLWludAotcnRwX3JlY3Zm
cm9tKHJ0cF9yZWNlaXZlcl90IHJlY2VpdmVyLCB2b2lkICptc2csIGludCAqbGVuKSB7Ci0gIGlu
dCBvY3RldHNfcmVjdmQ7Ci0gIHNydHBfZXJyX3N0YXR1c190IHN0YXQ7Ci0gIAotICBvY3RldHNf
cmVjdmQgPSByZWN2ZnJvbShyZWNlaXZlci0+c29ja2V0LCAodm9pZCAqKSZyZWNlaXZlci0+bWVz
c2FnZSwKLQkJCSAqbGVuLCAwLCAoc3RydWN0IHNvY2thZGRyICopIE5VTEwsIDApOwotCi0gIGlm
IChvY3RldHNfcmVjdmQgPT0gLTEpIHsKLSAgICAqbGVuID0gMDsKLSAgICByZXR1cm4gLTE7Ci0g
IH0KLQotICAvKiB2ZXJpZnkgcnRwIGhlYWRlciAqLwotICBpZiAocmVjZWl2ZXItPm1lc3NhZ2Uu
aGVhZGVyLnZlcnNpb24gIT0gMikgewotICAgICpsZW4gPSAwOwotICAgIHJldHVybiAtMTsKLSAg
fQoraW50IHJ0cF9yZWN2ZnJvbShydHBfcmVjZWl2ZXJfdCByZWNlaXZlciwgdm9pZCAqbXNnLCBp
bnQgKmxlbikKK3sKKyAgICBpbnQgb2N0ZXRzX3JlY3ZkOworICAgIHNydHBfZXJyX3N0YXR1c190
IHN0YXQ7CisKKyAgICBvY3RldHNfcmVjdmQgPSByZWN2ZnJvbShyZWNlaXZlci0+c29ja2V0LCAo
dm9pZCAqKSZyZWNlaXZlci0+bWVzc2FnZSwgKmxlbiwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAwLCAoc3RydWN0IHNvY2thZGRyICopTlVMTCwgMCk7CisKKyAgICBpZiAob2N0ZXRzX3Jl
Y3ZkID09IC0xKSB7CisgICAgICAgICpsZW4gPSAwOworICAgICAgICByZXR1cm4gLTE7CisgICAg
fQorCisgICAgLyogdmVyaWZ5IHJ0cCBoZWFkZXIgKi8KKyAgICBpZiAocmVjZWl2ZXItPm1lc3Nh
Z2UuaGVhZGVyLnZlcnNpb24gIT0gMikgeworICAgICAgICAqbGVuID0gMDsKKyAgICAgICAgcmV0
dXJuIC0xOworICAgIH0KIAogI2lmIFBSSU5UX0RFQlVHCi0gIGZwcmludGYoc3RkZXJyLCAiJWQg
b2N0ZXRzIHJlY2VpdmVkIGZyb20gU1NSQyAldVxuIiwKLQkgIG9jdGV0c19yZWN2ZCwgcmVjZWl2
ZXItPm1lc3NhZ2UuaGVhZGVyLnNzcmMpOworICAgIGZwcmludGYoc3RkZXJyLCAiJWQgb2N0ZXRz
IHJlY2VpdmVkIGZyb20gU1NSQyAldVxuIiwgb2N0ZXRzX3JlY3ZkLAorICAgICAgICAgICAgcmVj
ZWl2ZXItPm1lc3NhZ2UuaGVhZGVyLnNzcmMpOwogI2VuZGlmCiAjaWYgVkVSQk9TRV9ERUJVRwot
ICBzcnRwX3ByaW50X3BhY2tldCgmcmVjZWl2ZXItPm1lc3NhZ2UuaGVhZGVyLCBvY3RldHNfcmVj
dmQpOworICAgIHNydHBfcHJpbnRfcGFja2V0KCZyZWNlaXZlci0+bWVzc2FnZS5oZWFkZXIsIG9j
dGV0c19yZWN2ZCk7CiAjZW5kaWYKIAotICAvKiBhcHBseSBzcnRwICovCi0gIHN0YXQgPSBzcnRw
X3VucHJvdGVjdChyZWNlaXZlci0+c3J0cF9jdHgsCi0JCQkmcmVjZWl2ZXItPm1lc3NhZ2UuaGVh
ZGVyLCAmb2N0ZXRzX3JlY3ZkKTsKLSAgaWYgKHN0YXQpIHsKLSAgICBmcHJpbnRmKHN0ZGVyciwK
LQkgICAgImVycm9yOiBzcnRwIHVucHJvdGVjdGlvbiBmYWlsZWQgd2l0aCBjb2RlICVkJXNcbiIs
IHN0YXQsCi0JICAgIHN0YXQgPT0gc3J0cF9lcnJfc3RhdHVzX3JlcGxheV9mYWlsID8gIiAocmVw
bGF5IGNoZWNrIGZhaWxlZCkiIDoKLQkgICAgc3RhdCA9PSBzcnRwX2Vycl9zdGF0dXNfYXV0aF9m
YWlsID8gIiAoYXV0aCBjaGVjayBmYWlsZWQpIiA6ICIiKTsKLSAgICByZXR1cm4gLTE7Ci0gIH0K
LSAgc3RybmNweShtc2csIHJlY2VpdmVyLT5tZXNzYWdlLmJvZHksIG9jdGV0c19yZWN2ZCk7Ci0g
IAotICByZXR1cm4gb2N0ZXRzX3JlY3ZkOworICAgIC8qIGFwcGx5IHNydHAgKi8KKyAgICBzdGF0
ID0gc3J0cF91bnByb3RlY3QocmVjZWl2ZXItPnNydHBfY3R4LCAmcmVjZWl2ZXItPm1lc3NhZ2Uu
aGVhZGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAmb2N0ZXRzX3JlY3ZkKTsKKyAgICBp
ZiAoc3RhdCkgeworICAgICAgICBmcHJpbnRmKHN0ZGVyciwgImVycm9yOiBzcnRwIHVucHJvdGVj
dGlvbiBmYWlsZWQgd2l0aCBjb2RlICVkJXNcbiIsCisgICAgICAgICAgICAgICAgc3RhdCwKKyAg
ICAgICAgICAgICAgICBzdGF0ID09IHNydHBfZXJyX3N0YXR1c19yZXBsYXlfZmFpbAorICAgICAg
ICAgICAgICAgICAgICA/ICIgKHJlcGxheSBjaGVjayBmYWlsZWQpIgorICAgICAgICAgICAgICAg
ICAgICA6IHN0YXQgPT0gc3J0cF9lcnJfc3RhdHVzX2F1dGhfZmFpbCA/ICIgKGF1dGggY2hlY2sg
ZmFpbGVkKSIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgOiAiIik7CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisgICAgc3RybmNweSht
c2csIHJlY2VpdmVyLT5tZXNzYWdlLmJvZHksIG9jdGV0c19yZWN2ZCk7CisKKyAgICByZXR1cm4g
b2N0ZXRzX3JlY3ZkOwogfQogCi1pbnQKLXJ0cF9zZW5kZXJfaW5pdChydHBfc2VuZGVyX3Qgc2Vu
ZGVyLCAKLQkJaW50IHNvY2ssIAotCQlzdHJ1Y3Qgc29ja2FkZHJfaW4gYWRkciwKLQkJdW5zaWdu
ZWQgaW50IHNzcmMpIHsKLQotICAvKiBzZXQgaGVhZGVyIHZhbHVlcyAqLwotICBzZW5kZXItPm1l
c3NhZ2UuaGVhZGVyLnNzcmMgICAgPSBodG9ubChzc3JjKTsKLSAgc2VuZGVyLT5tZXNzYWdlLmhl
YWRlci50cyAgICAgID0gMDsKLSAgc2VuZGVyLT5tZXNzYWdlLmhlYWRlci5zZXEgICAgID0gKHVp
bnQxNl90KSByYW5kKCk7Ci0gIHNlbmRlci0+bWVzc2FnZS5oZWFkZXIubSAgICAgICA9IDA7Ci0g
IHNlbmRlci0+bWVzc2FnZS5oZWFkZXIucHQgICAgICA9IDB4MTsKLSAgc2VuZGVyLT5tZXNzYWdl
LmhlYWRlci52ZXJzaW9uID0gMjsKLSAgc2VuZGVyLT5tZXNzYWdlLmhlYWRlci5wICAgICAgID0g
MDsKLSAgc2VuZGVyLT5tZXNzYWdlLmhlYWRlci54ICAgICAgID0gMDsKLSAgc2VuZGVyLT5tZXNz
YWdlLmhlYWRlci5jYyAgICAgID0gMDsKLQotICAvKiBzZXQgb3RoZXIgc3R1ZmYgKi8KLSAgc2Vu
ZGVyLT5zb2NrZXQgPSBzb2NrOwotICBzZW5kZXItPmFkZHIgPSBhZGRyOwotCi0gIHJldHVybiAw
OworaW50IHJ0cF9zZW5kZXJfaW5pdChydHBfc2VuZGVyX3Qgc2VuZGVyLAorICAgICAgICAgICAg
ICAgICAgICBpbnQgc29jaywKKyAgICAgICAgICAgICAgICAgICAgc3RydWN0IHNvY2thZGRyX2lu
IGFkZHIsCisgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBzc3JjKQoreworICAgIC8q
IHNldCBoZWFkZXIgdmFsdWVzICovCisgICAgc2VuZGVyLT5tZXNzYWdlLmhlYWRlci5zc3JjID0g
aHRvbmwoc3NyYyk7CisgICAgc2VuZGVyLT5tZXNzYWdlLmhlYWRlci50cyA9IDA7CisgICAgc2Vu
ZGVyLT5tZXNzYWdlLmhlYWRlci5zZXEgPSAodWludDE2X3QpcmFuZCgpOworICAgIHNlbmRlci0+
bWVzc2FnZS5oZWFkZXIubSA9IDA7CisgICAgc2VuZGVyLT5tZXNzYWdlLmhlYWRlci5wdCA9IDB4
MTsKKyAgICBzZW5kZXItPm1lc3NhZ2UuaGVhZGVyLnZlcnNpb24gPSAyOworICAgIHNlbmRlci0+
bWVzc2FnZS5oZWFkZXIucCA9IDA7CisgICAgc2VuZGVyLT5tZXNzYWdlLmhlYWRlci54ID0gMDsK
KyAgICBzZW5kZXItPm1lc3NhZ2UuaGVhZGVyLmNjID0gMDsKKworICAgIC8qIHNldCBvdGhlciBz
dHVmZiAqLworICAgIHNlbmRlci0+c29ja2V0ID0gc29jazsKKyAgICBzZW5kZXItPmFkZHIgPSBh
ZGRyOworCisgICAgcmV0dXJuIDA7CiB9CiAKLWludAotcnRwX3JlY2VpdmVyX2luaXQocnRwX3Jl
Y2VpdmVyX3QgcmN2ciwgCi0JCSAgaW50IHNvY2ssIAotCQkgIHN0cnVjdCBzb2NrYWRkcl9pbiBh
ZGRyLAotCQkgIHVuc2lnbmVkIGludCBzc3JjKSB7Ci0gIAotICAvKiBzZXQgaGVhZGVyIHZhbHVl
cyAqLwotICByY3ZyLT5tZXNzYWdlLmhlYWRlci5zc3JjICAgID0gaHRvbmwoc3NyYyk7Ci0gIHJj
dnItPm1lc3NhZ2UuaGVhZGVyLnRzICAgICAgPSAwOwotICByY3ZyLT5tZXNzYWdlLmhlYWRlci5z
ZXEgICAgID0gMDsKLSAgcmN2ci0+bWVzc2FnZS5oZWFkZXIubSAgICAgICA9IDA7Ci0gIHJjdnIt
Pm1lc3NhZ2UuaGVhZGVyLnB0ICAgICAgPSAweDE7Ci0gIHJjdnItPm1lc3NhZ2UuaGVhZGVyLnZl
cnNpb24gPSAyOwotICByY3ZyLT5tZXNzYWdlLmhlYWRlci5wICAgICAgID0gMDsKLSAgcmN2ci0+
bWVzc2FnZS5oZWFkZXIueCAgICAgICA9IDA7Ci0gIHJjdnItPm1lc3NhZ2UuaGVhZGVyLmNjICAg
ICAgPSAwOwotCi0gIC8qIHNldCBvdGhlciBzdHVmZiAqLwotICByY3ZyLT5zb2NrZXQgPSBzb2Nr
OwotICByY3ZyLT5hZGRyID0gYWRkcjsKLQotICByZXR1cm4gMDsKK2ludCBydHBfcmVjZWl2ZXJf
aW5pdChydHBfcmVjZWl2ZXJfdCByY3ZyLAorICAgICAgICAgICAgICAgICAgICAgIGludCBzb2Nr
LAorICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdCBzb2NrYWRkcl9pbiBhZGRyLAorICAgICAg
ICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBzc3JjKQoreworICAgIC8qIHNldCBoZWFkZXIg
dmFsdWVzICovCisgICAgcmN2ci0+bWVzc2FnZS5oZWFkZXIuc3NyYyA9IGh0b25sKHNzcmMpOwor
ICAgIHJjdnItPm1lc3NhZ2UuaGVhZGVyLnRzID0gMDsKKyAgICByY3ZyLT5tZXNzYWdlLmhlYWRl
ci5zZXEgPSAwOworICAgIHJjdnItPm1lc3NhZ2UuaGVhZGVyLm0gPSAwOworICAgIHJjdnItPm1l
c3NhZ2UuaGVhZGVyLnB0ID0gMHgxOworICAgIHJjdnItPm1lc3NhZ2UuaGVhZGVyLnZlcnNpb24g
PSAyOworICAgIHJjdnItPm1lc3NhZ2UuaGVhZGVyLnAgPSAwOworICAgIHJjdnItPm1lc3NhZ2Uu
aGVhZGVyLnggPSAwOworICAgIHJjdnItPm1lc3NhZ2UuaGVhZGVyLmNjID0gMDsKKworICAgIC8q
IHNldCBvdGhlciBzdHVmZiAqLworICAgIHJjdnItPnNvY2tldCA9IHNvY2s7CisgICAgcmN2ci0+
YWRkciA9IGFkZHI7CisKKyAgICByZXR1cm4gMDsKIH0KIAotaW50Ci1ydHBfc2VuZGVyX2luaXRf
c3J0cChydHBfc2VuZGVyX3Qgc2VuZGVyLCBjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3kpIHsK
LSAgcmV0dXJuIHNydHBfY3JlYXRlKCZzZW5kZXItPnNydHBfY3R4LCBwb2xpY3kpOworaW50IHJ0
cF9zZW5kZXJfaW5pdF9zcnRwKHJ0cF9zZW5kZXJfdCBzZW5kZXIsIGNvbnN0IHNydHBfcG9saWN5
X3QgKnBvbGljeSkKK3sKKyAgICByZXR1cm4gc3J0cF9jcmVhdGUoJnNlbmRlci0+c3J0cF9jdHgs
IHBvbGljeSk7CiB9CiAKLWludAotcnRwX3NlbmRlcl9kZWluaXRfc3J0cChydHBfc2VuZGVyX3Qg
c2VuZGVyKSB7Ci0gIHJldHVybiBzcnRwX2RlYWxsb2Moc2VuZGVyLT5zcnRwX2N0eCk7CitpbnQg
cnRwX3NlbmRlcl9kZWluaXRfc3J0cChydHBfc2VuZGVyX3Qgc2VuZGVyKQoreworICAgIHJldHVy
biBzcnRwX2RlYWxsb2Moc2VuZGVyLT5zcnRwX2N0eCk7CiB9CiAKLWludAotcnRwX3JlY2VpdmVy
X2luaXRfc3J0cChydHBfcmVjZWl2ZXJfdCBzZW5kZXIsIGNvbnN0IHNydHBfcG9saWN5X3QgKnBv
bGljeSkgewotICByZXR1cm4gc3J0cF9jcmVhdGUoJnNlbmRlci0+c3J0cF9jdHgsIHBvbGljeSk7
CitpbnQgcnRwX3JlY2VpdmVyX2luaXRfc3J0cChydHBfcmVjZWl2ZXJfdCBzZW5kZXIsIGNvbnN0
IHNydHBfcG9saWN5X3QgKnBvbGljeSkKK3sKKyAgICByZXR1cm4gc3J0cF9jcmVhdGUoJnNlbmRl
ci0+c3J0cF9jdHgsIHBvbGljeSk7CiB9CiAKLWludAotcnRwX3JlY2VpdmVyX2RlaW5pdF9zcnRw
KHJ0cF9yZWNlaXZlcl90IHNlbmRlcikgewotICByZXR1cm4gc3J0cF9kZWFsbG9jKHNlbmRlci0+
c3J0cF9jdHgpOworaW50IHJ0cF9yZWNlaXZlcl9kZWluaXRfc3J0cChydHBfcmVjZWl2ZXJfdCBz
ZW5kZXIpCit7CisgICAgcmV0dXJuIHNydHBfZGVhbGxvYyhzZW5kZXItPnNydHBfY3R4KTsKIH0K
IAotcnRwX3NlbmRlcl90IAotcnRwX3NlbmRlcl9hbGxvYyh2b2lkKSB7Ci0gIHJldHVybiAocnRw
X3NlbmRlcl90KW1hbGxvYyhzaXplb2YocnRwX3NlbmRlcl9jdHhfdCkpOworcnRwX3NlbmRlcl90
IHJ0cF9zZW5kZXJfYWxsb2Modm9pZCkKK3sKKyAgICByZXR1cm4gKHJ0cF9zZW5kZXJfdCltYWxs
b2Moc2l6ZW9mKHJ0cF9zZW5kZXJfY3R4X3QpKTsKIH0KIAotdm9pZAotcnRwX3NlbmRlcl9kZWFs
bG9jKHJ0cF9zZW5kZXJfdCBydHBfY3R4KSB7Ci0gIGZyZWUocnRwX2N0eCk7Cit2b2lkIHJ0cF9z
ZW5kZXJfZGVhbGxvYyhydHBfc2VuZGVyX3QgcnRwX2N0eCkKK3sKKyAgICBmcmVlKHJ0cF9jdHgp
OwogfQogCi1ydHBfcmVjZWl2ZXJfdCAKLXJ0cF9yZWNlaXZlcl9hbGxvYyh2b2lkKSB7Ci0gIHJl
dHVybiAocnRwX3JlY2VpdmVyX3QpbWFsbG9jKHNpemVvZihydHBfcmVjZWl2ZXJfY3R4X3QpKTsK
K3J0cF9yZWNlaXZlcl90IHJ0cF9yZWNlaXZlcl9hbGxvYyh2b2lkKQoreworICAgIHJldHVybiAo
cnRwX3JlY2VpdmVyX3QpbWFsbG9jKHNpemVvZihydHBfcmVjZWl2ZXJfY3R4X3QpKTsKIH0KIAot
dm9pZAotcnRwX3JlY2VpdmVyX2RlYWxsb2MocnRwX3JlY2VpdmVyX3QgcnRwX2N0eCkgewotICBm
cmVlKHJ0cF9jdHgpOwordm9pZCBydHBfcmVjZWl2ZXJfZGVhbGxvYyhydHBfcmVjZWl2ZXJfdCBy
dHBfY3R4KQoreworICAgIGZyZWUocnRwX2N0eCk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvdGVzdC9ydHAuaCBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC90
ZXN0L3J0cC5oCmluZGV4IGQwMTA1MDhkZTMyZmRkOGFjYWVmMDFmOGNhN2ZhNTY5ZDI2NDMwZDIu
LjM3OTIxYTY2NWMwYTMxNjVkOThiNWVlOWZkZTU3ZGIyNDc4MjZkMmEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC90ZXN0
L3J0cC5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvbGlic3J0cC90ZXN0L3J0cC5oCkBAIC0xLDYgKzEsNiBAQAogLyoKICAqIHJ0cC5oCi0gKiAK
KyAqCiAgKiBydHAgaW50ZXJmYWNlIGZvciBzcnRwIHJlZmVyZW5jZSBpbXBsZW1lbnRhdGlvbgog
ICoKICAqIERhdmlkIEEuIE1jR3JldwpAQCAtMTUsMjYgKzE1LDI2IEBACiAgKi8KIAogLyoKLSAq
CQorICoKICAqIENvcHlyaWdodCAoYykgMjAwMS0yMDE3LCBDaXNjbyBTeXN0ZW1zLCBJbmMuCiAg
KiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICogCisgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMKICAqIGFyZSBtZXQ6Ci0gKiAKKyAqCiAgKiAgIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CiAgKiAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIAorICoK
ICAqICAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZQogICogICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZwogICogICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQKICAqICAgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgot
ICogCisgKgogICogICBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBDaXNjbyBTeXN0ZW1zLCBJbmMu
IG5vciB0aGUgbmFtZXMgb2YgaXRzCiAgKiAgIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBl
bmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZAogICogICBmcm9tIHRoaXMgc29mdHdh
cmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0gKiAKKyAqCiAg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQg
Q09OVFJJQlVUT1JTCiAgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAogICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKQEAgLTUwLDE0ICs1MCwxMyBA
QAogICoKICAqLwogCi0KICNpZm5kZWYgU1JUUF9SVFBfSAogI2RlZmluZSBTUlRQX1JUUF9ICiAK
ICNpZmRlZiBIQVZFX05FVElORVRfSU5fSAotIyBpbmNsdWRlIDxuZXRpbmV0L2luLmg+CisjaW5j
bHVkZSA8bmV0aW5ldC9pbi5oPgogI2VsaWYgZGVmaW5lZCBIQVZFX1dJTlNPQ0syX0gKLSMgaW5j
bHVkZSA8d2luc29jazIuaD4KKyNpbmNsdWRlIDx3aW5zb2NrMi5oPgogI2VuZGlmCiAKICNpbmNs
dWRlICJzcnRwX3ByaXYuaCIKQEAgLTY5LDk4ICs2OCw4NSBAQCBleHRlcm4gIkMiIHsKIC8qCiAg
KiBSVFBfSEVBREVSX0xFTiBpbmRpY2F0ZXMgdGhlIHNpemUgb2YgYW4gUlRQIGhlYWRlcgogICov
Ci0jZGVmaW5lIFJUUF9IRUFERVJfTEVOICAgMTIKKyNkZWZpbmUgUlRQX0hFQURFUl9MRU4gMTIK
IAotLyogCisvKgogICogUlRQX01BWF9CVUZfTEVOIGRlZmluZXMgdGhlIGxhcmdlc3QgUlRQIHBh
Y2tldCBpbiB0aGUgcnRwLmMgaW1wbGVtZW50YXRpb24KICAqLwotI2RlZmluZSBSVFBfTUFYX0JV
Rl9MRU4gIDE2Mzg0Ci0KKyNkZWZpbmUgUlRQX01BWF9CVUZfTEVOIDE2Mzg0CiAKIHR5cGVkZWYg
c3J0cF9oZHJfdCBydHBfaGRyX3Q7CiAKIHR5cGVkZWYgc3RydWN0IHsKLSAgc3J0cF9oZHJfdCBo
ZWFkZXI7ICAgICAgICAKLSAgY2hhciBib2R5W1JUUF9NQVhfQlVGX0xFTl07ICAKKyAgICBzcnRw
X2hkcl90IGhlYWRlcjsKKyAgICBjaGFyIGJvZHlbUlRQX01BWF9CVUZfTEVOXTsKIH0gcnRwX21z
Z190OwogCiB0eXBlZGVmIHN0cnVjdCBydHBfc2VuZGVyX2N0eF90IHsKLSAgcnRwX21zZ190IG1l
c3NhZ2U7ICAgICAgICAgCi0gIGludCBzb2NrZXQ7Ci0gIHNydHBfY3R4X3QgKnNydHBfY3R4Owot
ICBzdHJ1Y3Qgc29ja2FkZHJfaW4gYWRkcjsgICAvKiByZWNpZXZlcidzIGFkZHJlc3MgKi8KKyAg
ICBydHBfbXNnX3QgbWVzc2FnZTsKKyAgICBpbnQgc29ja2V0OworICAgIHNydHBfY3R4X3QgKnNy
dHBfY3R4OworICAgIHN0cnVjdCBzb2NrYWRkcl9pbiBhZGRyOyAvKiByZWNpZXZlcidzIGFkZHJl
c3MgKi8KIH0gcnRwX3NlbmRlcl9jdHhfdDsKIAogdHlwZWRlZiBzdHJ1Y3QgcnRwX3JlY2VpdmVy
X2N0eF90IHsKLSAgcnRwX21zZ190IG1lc3NhZ2U7Ci0gIGludCBzb2NrZXQ7Ci0gIHNydHBfY3R4
X3QgKnNydHBfY3R4OwotICBzdHJ1Y3Qgc29ja2FkZHJfaW4gYWRkcjsgICAvKiByZWNlaXZlcidz
IGFkZHJlc3MgKi8KKyAgICBydHBfbXNnX3QgbWVzc2FnZTsKKyAgICBpbnQgc29ja2V0OworICAg
IHNydHBfY3R4X3QgKnNydHBfY3R4OworICAgIHN0cnVjdCBzb2NrYWRkcl9pbiBhZGRyOyAvKiBy
ZWNlaXZlcidzIGFkZHJlc3MgKi8KIH0gcnRwX3JlY2VpdmVyX2N0eF90OwogCi0KIHR5cGVkZWYg
c3RydWN0IHJ0cF9zZW5kZXJfY3R4X3QgKnJ0cF9zZW5kZXJfdDsKIAogdHlwZWRlZiBzdHJ1Y3Qg
cnRwX3JlY2VpdmVyX2N0eF90ICpydHBfcmVjZWl2ZXJfdDsKIAotaW50Ci1ydHBfc2VuZHRvKHJ0
cF9zZW5kZXJfdCBzZW5kZXIsIGNvbnN0IHZvaWQqIG1zZywgaW50IGxlbik7CitpbnQgcnRwX3Nl
bmR0byhydHBfc2VuZGVyX3Qgc2VuZGVyLCBjb25zdCB2b2lkICptc2csIGludCBsZW4pOwogCi1p
bnQKLXJ0cF9yZWN2ZnJvbShydHBfcmVjZWl2ZXJfdCByZWNlaXZlciwgdm9pZCAqbXNnLCBpbnQg
Kmxlbik7CitpbnQgcnRwX3JlY3Zmcm9tKHJ0cF9yZWNlaXZlcl90IHJlY2VpdmVyLCB2b2lkICpt
c2csIGludCAqbGVuKTsKIAotaW50Ci1ydHBfcmVjZWl2ZXJfaW5pdChydHBfcmVjZWl2ZXJfdCBy
Y3ZyLCBpbnQgc29jaywgCi0JCSAgc3RydWN0IHNvY2thZGRyX2luIGFkZHIsIHVuc2lnbmVkIGlu
dCBzc3JjKTsKK2ludCBydHBfcmVjZWl2ZXJfaW5pdChydHBfcmVjZWl2ZXJfdCByY3ZyLAorICAg
ICAgICAgICAgICAgICAgICAgIGludCBzb2NrLAorICAgICAgICAgICAgICAgICAgICAgIHN0cnVj
dCBzb2NrYWRkcl9pbiBhZGRyLAorICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBz
c3JjKTsKIAotaW50Ci1ydHBfc2VuZGVyX2luaXQocnRwX3NlbmRlcl90IHNlbmRlciwgaW50IHNv
Y2ssIAotCQlzdHJ1Y3Qgc29ja2FkZHJfaW4gYWRkciwgdW5zaWduZWQgaW50IHNzcmMpOworaW50
IHJ0cF9zZW5kZXJfaW5pdChydHBfc2VuZGVyX3Qgc2VuZGVyLAorICAgICAgICAgICAgICAgICAg
ICBpbnQgc29jaywKKyAgICAgICAgICAgICAgICAgICAgc3RydWN0IHNvY2thZGRyX2luIGFkZHIs
CisgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBzc3JjKTsKIAogLyoKICAqIHNydHBf
c2VuZGVyX2luaXQoLi4uKSBpbml0aWFsaXplcyBhbiBydHBfc2VuZGVyX3QKICAqLwogCi1pbnQK
LXNydHBfc2VuZGVyX2luaXQocnRwX3NlbmRlcl90IHJ0cF9jdHgsICAgICAgICAgIC8qIHN0cnVj
dHVyZSB0byBiZSBpbml0J2VkICovCi0JCSBzdHJ1Y3Qgc29ja2FkZHJfaW4gbmFtZSwgICAgICAg
Lyogc29ja2V0IG5hbWUgICAgICAgICAgICAgKi8KLQkJIHNydHBfc2VjX3NlcnZfdCBzZWN1cml0
eV9zZXJ2aWNlcywgIC8qIHNlYy4gc2VydnMuIHRvIGJlIHVzZWQgICovCi0JCSB1bnNpZ25lZCBj
aGFyICppbnB1dF9rZXkgICAgICAgLyogbWFzdGVyIGtleS9zYWx0IGluIGhleCAgKi8KLQkJICk7
Ci0KLWludAotc3J0cF9yZWNlaXZlcl9pbml0KHJ0cF9yZWNlaXZlcl90IHJ0cF9jdHgsICAgICAg
IC8qIHN0cnVjdHVyZSB0byBiZSBpbml0J2VkICovCi0JCSAgIHN0cnVjdCBzb2NrYWRkcl9pbiBu
YW1lLCAJIC8qIHNvY2tldCBuYW1lICAgICAgICAgICAgICovCi0JCSAgIHNydHBfc2VjX3NlcnZf
dCBzZWN1cml0eV9zZXJ2aWNlcywgLyogc2VjLiBzZXJ2cy4gdG8gYmUgdXNlZCAgKi8KLQkJICAg
dW5zaWduZWQgY2hhciAqaW5wdXRfa2V5CSAvKiBtYXN0ZXIga2V5L3NhbHQgaW4gaGV4ICAqLwot
CQkgICApOwotCi0KLWludAotcnRwX3NlbmRlcl9pbml0X3NydHAocnRwX3NlbmRlcl90IHNlbmRl
ciwgY29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5KTsKK2ludCBzcnRwX3NlbmRlcl9pbml0KAor
ICAgIHJ0cF9zZW5kZXJfdCBydHBfY3R4LCAgICAgICAgICAgICAgLyogc3RydWN0dXJlIHRvIGJl
IGluaXQnZWQgKi8KKyAgICBzdHJ1Y3Qgc29ja2FkZHJfaW4gbmFtZSwgICAgICAgICAgIC8qIHNv
Y2tldCBuYW1lICAgICAgICAgICAgICovCisgICAgc3J0cF9zZWNfc2Vydl90IHNlY3VyaXR5X3Nl
cnZpY2VzLCAvKiBzZWMuIHNlcnZzLiB0byBiZSB1c2VkICAqLworICAgIHVuc2lnbmVkIGNoYXIg
KmlucHV0X2tleSAgICAgICAgICAgLyogbWFzdGVyIGtleS9zYWx0IGluIGhleCAgKi8KKyAgICAp
OwogCi1pbnQKLXJ0cF9zZW5kZXJfZGVpbml0X3NydHAocnRwX3NlbmRlcl90IHNlbmRlcik7Citp
bnQgc3J0cF9yZWNlaXZlcl9pbml0KAorICAgIHJ0cF9yZWNlaXZlcl90IHJ0cF9jdHgsICAgICAg
ICAgICAgLyogc3RydWN0dXJlIHRvIGJlIGluaXQnZWQgKi8KKyAgICBzdHJ1Y3Qgc29ja2FkZHJf
aW4gbmFtZSwgICAgICAgICAgIC8qIHNvY2tldCBuYW1lICAgICAgICAgICAgICovCisgICAgc3J0
cF9zZWNfc2Vydl90IHNlY3VyaXR5X3NlcnZpY2VzLCAvKiBzZWMuIHNlcnZzLiB0byBiZSB1c2Vk
ICAqLworICAgIHVuc2lnbmVkIGNoYXIgKmlucHV0X2tleSAgICAgICAgICAgLyogbWFzdGVyIGtl
eS9zYWx0IGluIGhleCAgKi8KKyAgICApOwogCi1pbnQKLXJ0cF9yZWNlaXZlcl9pbml0X3NydHAo
cnRwX3JlY2VpdmVyX3Qgc2VuZGVyLCBjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3kpOworaW50
IHJ0cF9zZW5kZXJfaW5pdF9zcnRwKHJ0cF9zZW5kZXJfdCBzZW5kZXIsIGNvbnN0IHNydHBfcG9s
aWN5X3QgKnBvbGljeSk7CiAKLWludAotcnRwX3JlY2VpdmVyX2RlaW5pdF9zcnRwKHJ0cF9yZWNl
aXZlcl90IHNlbmRlcik7CitpbnQgcnRwX3NlbmRlcl9kZWluaXRfc3J0cChydHBfc2VuZGVyX3Qg
c2VuZGVyKTsKIAoraW50IHJ0cF9yZWNlaXZlcl9pbml0X3NydHAocnRwX3JlY2VpdmVyX3Qgc2Vu
ZGVyLCBjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3kpOwogCi1ydHBfc2VuZGVyX3QgCi1ydHBf
c2VuZGVyX2FsbG9jKHZvaWQpOworaW50IHJ0cF9yZWNlaXZlcl9kZWluaXRfc3J0cChydHBfcmVj
ZWl2ZXJfdCBzZW5kZXIpOwogCi12b2lkCi1ydHBfc2VuZGVyX2RlYWxsb2MocnRwX3NlbmRlcl90
IHJ0cF9jdHgpOworcnRwX3NlbmRlcl90IHJ0cF9zZW5kZXJfYWxsb2Modm9pZCk7CiAKLXJ0cF9y
ZWNlaXZlcl90IAotcnRwX3JlY2VpdmVyX2FsbG9jKHZvaWQpOwordm9pZCBydHBfc2VuZGVyX2Rl
YWxsb2MocnRwX3NlbmRlcl90IHJ0cF9jdHgpOwogCi12b2lkCi1ydHBfcmVjZWl2ZXJfZGVhbGxv
YyhydHBfcmVjZWl2ZXJfdCBydHBfY3R4KTsKK3J0cF9yZWNlaXZlcl90IHJ0cF9yZWNlaXZlcl9h
bGxvYyh2b2lkKTsKIAordm9pZCBydHBfcmVjZWl2ZXJfZGVhbGxvYyhydHBfcmVjZWl2ZXJfdCBy
dHBfY3R4KTsKIAogI2lmZGVmIF9fY3BsdXNwbHVzCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvdGVzdC9ydHB3LmMg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAv
dGVzdC9ydHB3LmMKaW5kZXggM2I3YWM2NzAwYjIwZWJhZDEwMGQ4MThlMTgwNTAyNDRiYmZjOTFi
NC4uNmU3NDE2YzdmNTI0ZDg2ZTY4OWE0ZmM4MGYyMTBkODZjOGUyMzdjZSAxMDA2NDQKLS0tIGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL3Rl
c3QvcnRwdy5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlic3J0cC90ZXN0L3J0cHcuYwpAQCAtOCwzMyArOCwzMyBAQAogICoKICAqIFRoaXMg
YXBwIGlzIGEgc2ltcGxlIFJUUCBhcHBsaWNhdGlvbiBpbnRlbmRlZCBvbmx5IGZvciB0ZXN0aW5n
CiAgKiBsaWJzcnRwLiAgSXQgcmVhZHMgb25lIHdvcmQgYXQgYSB0aW1lIGZyb20gd29yZHMudHh0
IChvcgotICogd2hhdGV2ZXIgZmlsZSBpcyBzcGVjaWZpZWQgYXMgRElDVF9GSUxFKSwgYW5kIHNl
bmRzIG9uZSB3b3JkIG91dAorICogd2hhdGV2ZXIgZmlsZSBpcyBzcGVjaWZpZWQgYXMgRElDVF9G
SUxFIG9yIHdpdGggLXcpLCBhbmQgc2VuZHMgb25lIHdvcmQgb3V0CiAgKiBlYWNoIFVTRUNfUkFU
RSBtaWNyb3NlY29uZHMuICBTZWN1cmUgUlRQIHByb3RlY3Rpb25zIGNhbiBiZQogICogYXBwbGll
ZC4gIFNlZSB0aGUgdXNhZ2UoKSBmdW5jdGlvbiBmb3IgbW9yZSBkZXRhaWxzLgogICoKICAqLwog
CiAvKgotICoJCisgKgogICogQ29weXJpZ2h0IChjKSAyMDAxLTIwMTcsIENpc2NvIFN5c3RlbXMs
IEluYy4KICAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKiAKKyAqCiAgKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAq
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucwogICogYXJlIG1ldDoKLSAqIAorICoKICAqICAgUmVkaXN0cmlidXRpb25zIG9m
IHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKICAqICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgot
ICogCisgKgogICogICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1
Y2UgdGhlIGFib3ZlCiAgKiAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nCiAgKiAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRp
b24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZAogICogICB3aXRoIHRoZSBkaXN0cmli
dXRpb24uCi0gKiAKKyAqCiAgKiAgIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIENpc2NvIFN5c3Rl
bXMsIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKICAqICAgY29udHJpYnV0b3JzIG1heSBiZSB1
c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkCiAgKiAgIGZyb20gdGhp
cyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLSAq
IAorICoKICAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xE
RVJTIEFORCBDT05UUklCVVRPUlMKICAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJ
RUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCiAgKiBMSU1JVEVEIFRPLCBUSEUgSU1Q
TElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUwpAQCAtNTAsODIg
KzUwLDc2IEBACiAgKgogICovCiAKLQogI2lmZGVmIEhBVkVfQ09ORklHX0gKLSAgICAjaW5jbHVk
ZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29uZmlnLmg+CiAjZW5kaWYKIAotI2luY2x1ZGUgImdl
dG9wdF9zLmgiICAgICAgIC8qIGZvciBsb2NhbCBnZXRvcHQoKSAgKi8KKyNpbmNsdWRlICJnZXRv
cHRfcy5oIiAvKiBmb3IgbG9jYWwgZ2V0b3B0KCkgICovCiAKLSNpbmNsdWRlIDxzdGRpby5oPiAg
ICAgICAgICAvKiBmb3IgcHJpbnRmLCBmcHJpbnRmICovCi0jaW5jbHVkZSA8c3RkbGliLmg+ICAg
ICAgICAgLyogZm9yIGF0b2koKSAgICAgICAgICAqLworI2luY2x1ZGUgPHN0ZGlvLmg+ICAvKiBm
b3IgcHJpbnRmLCBmcHJpbnRmICovCisjaW5jbHVkZSA8c3RkbGliLmg+IC8qIGZvciBhdG9pKCkg
ICAgICAgICAgKi8KICNpbmNsdWRlIDxlcnJuby5oPgotI2luY2x1ZGUgPHNpZ25hbC5oPiAgICAg
ICAgIC8qIGZvciBzaWduYWwoKSAgICAgICAgKi8KKyNpbmNsdWRlIDxzaWduYWwuaD4gLyogZm9y
IHNpZ25hbCgpICAgICAgICAqLwogCi0jaW5jbHVkZSA8c3RyaW5nLmg+ICAgICAgICAgLyogZm9y
IHN0cm5jcHkoKSAgICAgICAqLwotI2luY2x1ZGUgPHRpbWUuaD4JICAgIC8qIGZvciB1c2xlZXAo
KSAgICAgICAgKi8KKyNpbmNsdWRlIDxzdHJpbmcuaD4gLyogZm9yIHN0cm5jcHkoKSAgICAgICAq
LworI2luY2x1ZGUgPHRpbWUuaD4gICAvKiBmb3IgdXNsZWVwKCkgICAgICAgICovCiAKICNpZmRl
ZiBIQVZFX1VOSVNURF9ICi0jaW5jbHVkZSA8dW5pc3RkLmg+ICAgICAgICAgLyogZm9yIGNsb3Nl
KCkgICAgICAgICAqLworI2luY2x1ZGUgPHVuaXN0ZC5oPiAvKiBmb3IgY2xvc2UoKSAgICAgICAg
ICovCiAjZWxpZiBkZWZpbmVkKF9NU0NfVkVSKQotI2luY2x1ZGUgPGlvLmg+ICAgICAgICAgICAg
IC8qIGZvciBfY2xvc2UoKSAgICAgICAgKi8KKyNpbmNsdWRlIDxpby5oPiAvKiBmb3IgX2Nsb3Nl
KCkgICAgICAgICovCiAjZGVmaW5lIGNsb3NlIF9jbG9zZQogI2VuZGlmCiAjaWZkZWYgSEFWRV9T
WVNfU09DS0VUX0gKLSMgaW5jbHVkZSA8c3lzL3NvY2tldC5oPgorI2luY2x1ZGUgPHN5cy9zb2Nr
ZXQuaD4KICNlbmRpZgogI2lmZGVmIEhBVkVfTkVUSU5FVF9JTl9ICi0jIGluY2x1ZGUgPG5ldGlu
ZXQvaW4uaD4KKyNpbmNsdWRlIDxuZXRpbmV0L2luLmg+CiAjZWxpZiBkZWZpbmVkIEhBVkVfV0lO
U09DSzJfSAotIyBpbmNsdWRlIDx3aW5zb2NrMi5oPgotIyBpbmNsdWRlIDx3czJ0Y3BpcC5oPgot
IyBkZWZpbmUgUlRQV19VU0VfV0lOU09DSzIJMQorI2luY2x1ZGUgPHdpbnNvY2syLmg+CisjaW5j
bHVkZSA8d3MydGNwaXAuaD4KKyNkZWZpbmUgUlRQV19VU0VfV0lOU09DSzIgMQogI2VuZGlmCiAj
aWZkZWYgSEFWRV9BUlBBX0lORVRfSAotIyBpbmNsdWRlIDxhcnBhL2luZXQuaD4KKyNpbmNsdWRl
IDxhcnBhL2luZXQuaD4KICNlbmRpZgogCi0jaW5jbHVkZSAic3J0cC5oIiAgICAgICAgICAgCisj
aW5jbHVkZSAic3J0cC5oIgogI2luY2x1ZGUgInJ0cC5oIgogI2luY2x1ZGUgInV0aWwuaCIKIAot
I2RlZmluZSBESUNUX0ZJTEUgICAgICAgICJ3b3Jkcy50eHQiCi0jZGVmaW5lIFVTRUNfUkFURSAg
ICAgICAgKDVlNSkKLSNkZWZpbmUgTUFYX1dPUkRfTEVOICAgICAxMjggIAorI2RlZmluZSBESUNU
X0ZJTEUgIndvcmRzLnR4dCIKKyNkZWZpbmUgVVNFQ19SQVRFICg1ZTUpCisjZGVmaW5lIE1BWF9X
T1JEX0xFTiAxMjgKICNkZWZpbmUgQUREUl9JU19NVUxUSUNBU1QoYSkgSU5fTVVMVElDQVNUKGh0
b25sKGEpKQotI2RlZmluZSBNQVhfS0VZX0xFTiAgICAgIDk2Ci0KKyNkZWZpbmUgTUFYX0tFWV9M
RU4gOTYKIAogI2lmbmRlZiBIQVZFX1VTTEVFUAotIyBpZmRlZiBIQVZFX1dJTkRPV1NfSAotIyAg
ZGVmaW5lIHVzbGVlcCh1cykJU2xlZXAoKHVzKS8xMDAwKQotIyBlbHNlCi0jICBkZWZpbmUgdXNs
ZWVwKHVzKQlzbGVlcCgodXMpLzEwMDAwMDApCi0jIGVuZGlmCisjaWZkZWYgSEFWRV9XSU5ET1dT
X0gKKyNkZWZpbmUgdXNsZWVwKHVzKSBTbGVlcCgodXMpIC8gMTAwMCkKKyNlbHNlCisjZGVmaW5l
IHVzbGVlcCh1cykgc2xlZXAoKHVzKSAvIDEwMDAwMDApCisjZW5kaWYKICNlbmRpZgotCiAKIC8q
CiAgKiB0aGUgZnVuY3Rpb24gdXNhZ2UoKSBwcmludHMgYW4gZXJyb3IgbWVzc2FnZSBkZXNjcmli
aW5nIGhvdyB0aGlzCiAgKiBwcm9ncmFtIHNob3VsZCBiZSBjYWxsZWQsIHRoZW4gY2FsbHMgZXhp
dCgpCiAgKi8KIAotdm9pZAotdXNhZ2UoY2hhciAqcHJvZ19uYW1lKTsKK3ZvaWQgdXNhZ2UoY2hh
ciAqcHJvZ19uYW1lKTsKIAogLyoKICAqIGxlYXZlX2dyb3VwKC4uLikgZGUtcmVnaXN0ZXJzIGZy
b20gYSBtdWx0aWNhc3QgZ3JvdXAKICAqLwogCi12b2lkCi1sZWF2ZV9ncm91cChpbnQgc29jaywg
c3RydWN0IGlwX21yZXEgbXJlcSwgY2hhciAqbmFtZSk7Ci0KK3ZvaWQgbGVhdmVfZ3JvdXAoaW50
IHNvY2ssIHN0cnVjdCBpcF9tcmVxIG1yZXEsIGNoYXIgKm5hbWUpOwogCiAvKgogICogc2V0dXBf
c2lnbmFsX2hhbmRsZXIoKSBzZXRzIHVwIGEgc2lnbmFsIGhhbmRsZXIgdG8gdHJpZ2dlcgogICog
Y2xlYW51cHMgYWZ0ZXIgYW4gaW50ZXJydXB0CiAgKi8KLWludCBzZXR1cF9zaWduYWxfaGFuZGxl
cihjaGFyKiBuYW1lKTsKK2ludCBzZXR1cF9zaWduYWxfaGFuZGxlcihjaGFyICpuYW1lKTsKIAog
LyoKICAqIGhhbmRsZV9zaWduYWwoLi4uKSBoYW5kbGVzIGludGVycnVwdCBzaWduYWwgdG8gdHJp
Z2dlciBjbGVhbnVwcwpAQCAtMTM5LDU2MSArMTMzLDU2OCBAQCB2b2xhdGlsZSBpbnQgaW50ZXJy
dXB0ZWQgPSAwOwogCiB0eXBlZGVmIGVudW0geyBzZW5kZXIsIHJlY2VpdmVyLCB1bmtub3duIH0g
cHJvZ3JhbV90eXBlOwogCi1pbnQKLW1haW4gKGludCBhcmdjLCBjaGFyICphcmd2W10pIHsKLSAg
Y2hhciAqZGljdGZpbGUgPSBESUNUX0ZJTEU7Ci0gIEZJTEUgKmRpY3Q7Ci0gIGNoYXIgd29yZFtN
QVhfV09SRF9MRU5dOwotICBpbnQgc29jaywgcmV0OwotICBzdHJ1Y3QgaW5fYWRkciByY3ZyX2Fk
ZHI7Ci0gIHN0cnVjdCBzb2NrYWRkcl9pbiBuYW1lOwotICBzdHJ1Y3QgaXBfbXJlcSBtcmVxOwor
aW50IG1haW4oaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKK3sKKyAgICBjaGFyICpkaWN0ZmlsZSA9
IERJQ1RfRklMRTsKKyAgICBGSUxFICpkaWN0OworICAgIGNoYXIgd29yZFtNQVhfV09SRF9MRU5d
OworICAgIGludCBzb2NrLCByZXQ7CisgICAgc3RydWN0IGluX2FkZHIgcmN2cl9hZGRyOworICAg
IHN0cnVjdCBzb2NrYWRkcl9pbiBuYW1lOworICAgIHN0cnVjdCBpcF9tcmVxIG1yZXE7CiAjaWYg
QkVXCi0gIHN0cnVjdCBzb2NrYWRkcl9pbiBsb2NhbDsKLSNlbmRpZiAKLSAgcHJvZ3JhbV90eXBl
IHByb2dfdHlwZSA9IHVua25vd247Ci0gIHNydHBfc2VjX3NlcnZfdCBzZWNfc2VydnMgPSBzZWNf
c2Vydl9ub25lOwotICB1bnNpZ25lZCBjaGFyIHR0bCA9IDU7Ci0gIGludCBjOwotICBpbnQga2V5
X3NpemUgPSAxMjg7Ci0gIGludCB0YWdfc2l6ZSA9IDg7Ci0gIGludCBnY21fb24gPSAwOwotICBj
aGFyICppbnB1dF9rZXkgPSBOVUxMOwotICBpbnQgYjY0X2lucHV0ID0gMDsKLSAgY2hhciAqYWRk
cmVzcyA9IE5VTEw7Ci0gIGNoYXIga2V5W01BWF9LRVlfTEVOXTsKLSAgdW5zaWduZWQgc2hvcnQg
cG9ydCA9IDA7Ci0gIHJ0cF9zZW5kZXJfdCBzbmQ7Ci0gIHNydHBfcG9saWN5X3QgcG9saWN5Owot
ICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7Ci0gIGludCBsZW47Ci0gIGludCBleHBlY3RlZF9s
ZW47Ci0gIGludCBkb19saXN0X21vZHMgPSAwOwotICB1aW50MzJfdCBzc3JjID0gMHhkZWFkYmVl
ZjsgLyogc3NyYyB2YWx1ZSBoYXJkY29kZWQgZm9yIG5vdyAqLworICAgIHN0cnVjdCBzb2NrYWRk
cl9pbiBsb2NhbDsKKyNlbmRpZgorICAgIHByb2dyYW1fdHlwZSBwcm9nX3R5cGUgPSB1bmtub3du
OworICAgIHNydHBfc2VjX3NlcnZfdCBzZWNfc2VydnMgPSBzZWNfc2Vydl9ub25lOworICAgIHVu
c2lnbmVkIGNoYXIgdHRsID0gNTsKKyAgICBpbnQgYzsKKyAgICBpbnQga2V5X3NpemUgPSAxMjg7
CisgICAgaW50IHRhZ19zaXplID0gODsKKyAgICBpbnQgZ2NtX29uID0gMDsKKyAgICBjaGFyICpp
bnB1dF9rZXkgPSBOVUxMOworICAgIGludCBiNjRfaW5wdXQgPSAwOworICAgIGNoYXIgKmFkZHJl
c3MgPSBOVUxMOworICAgIGNoYXIga2V5W01BWF9LRVlfTEVOXTsKKyAgICB1bnNpZ25lZCBzaG9y
dCBwb3J0ID0gMDsKKyAgICBydHBfc2VuZGVyX3Qgc25kOworICAgIHNydHBfcG9saWN5X3QgcG9s
aWN5OworICAgIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKKyAgICBpbnQgbGVuOworICAgIGlu
dCBleHBlY3RlZF9sZW47CisgICAgaW50IGRvX2xpc3RfbW9kcyA9IDA7CisgICAgdWludDMyX3Qg
c3NyYyA9IDB4ZGVhZGJlZWY7IC8qIHNzcmMgdmFsdWUgaGFyZGNvZGVkIGZvciBub3cgKi8KICNp
ZmRlZiBSVFBXX1VTRV9XSU5TT0NLMgotICBXT1JEIHdWZXJzaW9uUmVxdWVzdGVkID0gTUFLRVdP
UkQoMiwgMCk7Ci0gIFdTQURBVEEgd3NhRGF0YTsKKyAgICBXT1JEIHdWZXJzaW9uUmVxdWVzdGVk
ID0gTUFLRVdPUkQoMiwgMCk7CisgICAgV1NBREFUQSB3c2FEYXRhOwogCi0gIHJldCA9IFdTQVN0
YXJ0dXAod1ZlcnNpb25SZXF1ZXN0ZWQsICZ3c2FEYXRhKTsKLSAgaWYgKHJldCAhPSAwKSB7Ci0g
ICAgZnByaW50ZihzdGRlcnIsICJlcnJvcjogV1NBU3RhcnR1cCgpIGZhaWxlZDogJWRcbiIsIHJl
dCk7Ci0gICAgZXhpdCgxKTsKLSAgfQorICAgIHJldCA9IFdTQVN0YXJ0dXAod1ZlcnNpb25SZXF1
ZXN0ZWQsICZ3c2FEYXRhKTsKKyAgICBpZiAocmV0ICE9IDApIHsKKyAgICAgICAgZnByaW50Zihz
dGRlcnIsICJlcnJvcjogV1NBU3RhcnR1cCgpIGZhaWxlZDogJWRcbiIsIHJldCk7CisgICAgICAg
IGV4aXQoMSk7CisgICAgfQogI2VuZGlmCiAKLSAgbWVtc2V0KCZwb2xpY3ksIDB4MCwgc2l6ZW9m
KHNydHBfcG9saWN5X3QpKTsKKyAgICBtZW1zZXQoJnBvbGljeSwgMHgwLCBzaXplb2Yoc3J0cF9w
b2xpY3lfdCkpOwogCi0gIHByaW50ZigiVXNpbmcgJXMgWzB4JXhdXG4iLCBzcnRwX2dldF92ZXJz
aW9uX3N0cmluZygpLCBzcnRwX2dldF92ZXJzaW9uKCkpOworICAgIHByaW50ZigiVXNpbmcgJXMg
WzB4JXhdXG4iLCBzcnRwX2dldF92ZXJzaW9uX3N0cmluZygpLCBzcnRwX2dldF92ZXJzaW9uKCkp
OwogCi0gIGlmIChzZXR1cF9zaWduYWxfaGFuZGxlcihhcmd2WzBdKSAhPSAwKSB7Ci0gICAgZXhp
dCgxKTsKLSAgfQorICAgIGlmIChzZXR1cF9zaWduYWxfaGFuZGxlcihhcmd2WzBdKSAhPSAwKSB7
CisgICAgICAgIGV4aXQoMSk7CisgICAgfQogCi0gIC8qIGluaXRpYWxpemUgc3J0cCBsaWJyYXJ5
ICovCi0gIHN0YXR1cyA9IHNydHBfaW5pdCgpOwotICBpZiAoc3RhdHVzKSB7Ci0gICAgcHJpbnRm
KCJlcnJvcjogc3J0cCBpbml0aWFsaXphdGlvbiBmYWlsZWQgd2l0aCBlcnJvciBjb2RlICVkXG4i
LCBzdGF0dXMpOwotICAgIGV4aXQoMSk7Ci0gIH0KKyAgICAvKiBpbml0aWFsaXplIHNydHAgbGli
cmFyeSAqLworICAgIHN0YXR1cyA9IHNydHBfaW5pdCgpOworICAgIGlmIChzdGF0dXMpIHsKKyAg
ICAgICAgcHJpbnRmKCJlcnJvcjogc3J0cCBpbml0aWFsaXphdGlvbiBmYWlsZWQgd2l0aCBlcnJv
ciBjb2RlICVkXG4iLAorICAgICAgICAgICAgICAgc3RhdHVzKTsKKyAgICAgICAgZXhpdCgxKTsK
KyAgICB9CisKKyAgICAvKiBjaGVjayBhcmdzICovCisgICAgd2hpbGUgKDEpIHsKKyAgICAgICAg
YyA9IGdldG9wdF9zKGFyZ2MsIGFyZ3YsICJiOms6cnNndDphZTpsZDp3OiIpOworICAgICAgICBp
ZiAoYyA9PSAtMSkgeworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KKyAgICAgICAgc3dp
dGNoIChjKSB7CisgICAgICAgIGNhc2UgJ2InOgorICAgICAgICAgICAgYjY0X2lucHV0ID0gMTsK
KyAgICAgICAgLyogZmFsbCB0aHJ1ICovCisgICAgICAgIGNhc2UgJ2snOgorICAgICAgICAgICAg
aW5wdXRfa2V5ID0gb3B0YXJnX3M7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAn
ZSc6CisgICAgICAgICAgICBrZXlfc2l6ZSA9IGF0b2kob3B0YXJnX3MpOworICAgICAgICAgICAg
aWYgKGtleV9zaXplICE9IDEyOCAmJiBrZXlfc2l6ZSAhPSAyNTYpIHsKKyAgICAgICAgICAgICAg
ICBwcmludGYoImVycm9yOiBlbmNyeXB0aW9uIGtleSBzaXplIG11c3QgYmUgMTI4IG9yIDI1NiAo
JWQpXG4iLAorICAgICAgICAgICAgICAgICAgICAgICBrZXlfc2l6ZSk7CisgICAgICAgICAgICAg
ICAgZXhpdCgxKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIHNlY19zZXJ2cyB8PSBzZWNf
c2Vydl9jb25mOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgJ3QnOgorICAgICAg
ICAgICAgdGFnX3NpemUgPSBhdG9pKG9wdGFyZ19zKTsKKyAgICAgICAgICAgIGlmICh0YWdfc2l6
ZSAhPSA4ICYmIHRhZ19zaXplICE9IDE2KSB7CisgICAgICAgICAgICAgICAgcHJpbnRmKCJlcnJv
cjogR0NNIHRhZyBzaXplIG11c3QgYmUgOCBvciAxNiAoJWQpXG4iLCB0YWdfc2l6ZSk7CisgICAg
ICAgICAgICAgICAgZXhpdCgxKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGJyZWFrOwor
ICAgICAgICBjYXNlICdhJzoKKyAgICAgICAgICAgIHNlY19zZXJ2cyB8PSBzZWNfc2Vydl9hdXRo
OworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgJ2cnOgorICAgICAgICAgICAgZ2Nt
X29uID0gMTsKKyAgICAgICAgICAgIHNlY19zZXJ2cyB8PSBzZWNfc2Vydl9hdXRoOworICAgICAg
ICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgJ3InOgorICAgICAgICAgICAgcHJvZ190eXBlID0g
cmVjZWl2ZXI7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAncyc6CisgICAgICAg
ICAgICBwcm9nX3R5cGUgPSBzZW5kZXI7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2Fz
ZSAnZCc6CisgICAgICAgICAgICBzdGF0dXMgPSBzcnRwX3NldF9kZWJ1Z19tb2R1bGUob3B0YXJn
X3MsIDEpOworICAgICAgICAgICAgaWYgKHN0YXR1cykgeworICAgICAgICAgICAgICAgIHByaW50
ZigiZXJyb3I6IHNldCBkZWJ1ZyBtb2R1bGUgKCVzKSBmYWlsZWRcbiIsIG9wdGFyZ19zKTsKKyAg
ICAgICAgICAgICAgICBleGl0KDEpOworICAgICAgICAgICAgfQorICAgICAgICAgICAgYnJlYWs7
CisgICAgICAgIGNhc2UgJ2wnOgorICAgICAgICAgICAgZG9fbGlzdF9tb2RzID0gMTsKKyAgICAg
ICAgICAgIGJyZWFrOworICAgICAgICBjYXNlICd3JzoKKyAgICAgICAgICAgIGRpY3RmaWxlID0g
b3B0YXJnX3M7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAg
ICAgIHVzYWdlKGFyZ3ZbMF0pOworICAgICAgICB9CisgICAgfQogCi0gIC8qIGNoZWNrIGFyZ3Mg
Ki8KLSAgd2hpbGUgKDEpIHsKLSAgICBjID0gZ2V0b3B0X3MoYXJnYywgYXJndiwgImI6azpyc2d0
OmFlOmxkOiIpOwotICAgIGlmIChjID09IC0xKSB7Ci0gICAgICBicmVhazsKKyAgICBpZiAocHJv
Z190eXBlID09IHVua25vd24pIHsKKyAgICAgICAgaWYgKGRvX2xpc3RfbW9kcykgeworICAgICAg
ICAgICAgc3RhdHVzID0gc3J0cF9saXN0X2RlYnVnX21vZHVsZXMoKTsKKyAgICAgICAgICAgIGlm
IChzdGF0dXMpIHsKKyAgICAgICAgICAgICAgICBwcmludGYoImVycm9yOiBsaXN0IG9mIGRlYnVn
IG1vZHVsZXMgZmFpbGVkXG4iKTsKKyAgICAgICAgICAgICAgICBleGl0KDEpOworICAgICAgICAg
ICAgfQorICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAg
ICBwcmludGYoImVycm9yOiBuZWl0aGVyIHNlbmRlciBbLXNdIG5vciByZWNlaXZlciBbLXJdIHNw
ZWNpZmllZFxuIik7CisgICAgICAgICAgICB1c2FnZShhcmd2WzBdKTsKKyAgICAgICAgfQogICAg
IH0KLSAgICBzd2l0Y2ggKGMpIHsKLQljYXNlICdiJzoKLSAgICAgIGI2NF9pbnB1dCA9IDE7Ci0g
ICAgICAvKiBmYWxsIHRocnUgKi8KLSAgICBjYXNlICdrJzoKLSAgICAgIGlucHV0X2tleSA9IG9w
dGFyZ19zOwotICAgICAgYnJlYWs7Ci0gICAgY2FzZSAnZSc6Ci0gICAgICBrZXlfc2l6ZSA9IGF0
b2kob3B0YXJnX3MpOwotICAgICAgaWYgKGtleV9zaXplICE9IDEyOCAmJiBrZXlfc2l6ZSAhPSAy
NTYpIHsKLSAgICAgICAgcHJpbnRmKCJlcnJvcjogZW5jcnlwdGlvbiBrZXkgc2l6ZSBtdXN0IGJl
IDEyOCBvciAyNTYgKCVkKVxuIiwga2V5X3NpemUpOwotICAgICAgICBleGl0KDEpOwotICAgICAg
fQotICAgICAgc2VjX3NlcnZzIHw9IHNlY19zZXJ2X2NvbmY7Ci0gICAgICBicmVhazsKLSAgICBj
YXNlICd0JzoKLSAgICAgIHRhZ19zaXplID0gYXRvaShvcHRhcmdfcyk7Ci0gICAgICBpZiAodGFn
X3NpemUgIT0gOCAmJiB0YWdfc2l6ZSAhPSAxNikgewotICAgICAgICBwcmludGYoImVycm9yOiBH
Q00gdGFnIHNpemUgbXVzdCBiZSA4IG9yIDE2ICglZClcbiIsIHRhZ19zaXplKTsKLSAgICAgICAg
ZXhpdCgxKTsKLSAgICAgIH0KLSAgICAgIGJyZWFrOwotICAgIGNhc2UgJ2EnOgotICAgICAgc2Vj
X3NlcnZzIHw9IHNlY19zZXJ2X2F1dGg7Ci0gICAgICBicmVhazsKLSAgICBjYXNlICdnJzoKLSAg
ICAgIGdjbV9vbiA9IDE7Ci0gICAgICBzZWNfc2VydnMgfD0gc2VjX3NlcnZfYXV0aDsKLSAgICAg
IGJyZWFrOwotICAgIGNhc2UgJ3InOgotICAgICAgcHJvZ190eXBlID0gcmVjZWl2ZXI7Ci0gICAg
ICBicmVhazsKLSAgICBjYXNlICdzJzoKLSAgICAgIHByb2dfdHlwZSA9IHNlbmRlcjsKLSAgICAg
IGJyZWFrOwotICAgIGNhc2UgJ2QnOgotICAgICAgc3RhdHVzID0gc3J0cF9zZXRfZGVidWdfbW9k
dWxlKG9wdGFyZ19zLCAxKTsKLSAgICAgIGlmIChzdGF0dXMpIHsKLSAgICAgICAgcHJpbnRmKCJl
cnJvcjogc2V0IGRlYnVnIG1vZHVsZSAoJXMpIGZhaWxlZFxuIiwgb3B0YXJnX3MpOwotICAgICAg
ICBleGl0KDEpOwotICAgICAgfQotICAgICAgYnJlYWs7Ci0gICAgY2FzZSAnbCc6Ci0gICAgICBk
b19saXN0X21vZHMgPSAxOwotICAgICAgYnJlYWs7Ci0gICAgZGVmYXVsdDoKLSAgICAgIHVzYWdl
KGFyZ3ZbMF0pOworCisgICAgaWYgKChzZWNfc2VydnMgJiYgIWlucHV0X2tleSkgfHwgKCFzZWNf
c2VydnMgJiYgaW5wdXRfa2V5KSkgeworICAgICAgICAvKgorICAgICAgICAgKiBhIGtleSBtdXN0
IGJlIHByb3ZpZGVkIGlmIGFuZCBvbmx5IGlmIHNlY3VyaXR5IHNlcnZpY2VzIGhhdmUKKyAgICAg
ICAgICogYmVlbiByZXF1ZXN0ZWQKKyAgICAgICAgICovCisgICAgICAgIHVzYWdlKGFyZ3ZbMF0p
OwogICAgIH0KLSAgfQotCi0gIGlmIChwcm9nX3R5cGUgPT0gdW5rbm93bikgewotICAgIGlmIChk
b19saXN0X21vZHMpIHsKLSAgICAgIHN0YXR1cyA9IHNydHBfbGlzdF9kZWJ1Z19tb2R1bGVzKCk7
Ci0gICAgICBpZiAoc3RhdHVzKSB7Ci0JcHJpbnRmKCJlcnJvcjogbGlzdCBvZiBkZWJ1ZyBtb2R1
bGVzIGZhaWxlZFxuIik7Ci0JZXhpdCgxKTsKLSAgICAgIH0KLSAgICAgIHJldHVybiAwOwotICAg
IH0gZWxzZSB7Ci0gICAgICBwcmludGYoImVycm9yOiBuZWl0aGVyIHNlbmRlciBbLXNdIG5vciBy
ZWNlaXZlciBbLXJdIHNwZWNpZmllZFxuIik7Ci0gICAgICB1c2FnZShhcmd2WzBdKTsKKworICAg
IGlmIChhcmdjICE9IG9wdGluZF9zICsgMikgeworICAgICAgICAvKiB3cm9uZyBudW1iZXIgb2Yg
YXJndW1lbnRzICovCisgICAgICAgIHVzYWdlKGFyZ3ZbMF0pOwogICAgIH0KLSAgfQotICAgCi0g
IGlmICgoc2VjX3NlcnZzICYmICFpbnB1dF9rZXkpIHx8ICghc2VjX3NlcnZzICYmIGlucHV0X2tl
eSkpIHsKLSAgICAvKiAKLSAgICAgKiBhIGtleSBtdXN0IGJlIHByb3ZpZGVkIGlmIGFuZCBvbmx5
IGlmIHNlY3VyaXR5IHNlcnZpY2VzIGhhdmUKLSAgICAgKiBiZWVuIHJlcXVlc3RlZCAKLSAgICAg
Ki8KLSAgICB1c2FnZShhcmd2WzBdKTsKLSAgfQotICAgIAotICBpZiAoYXJnYyAhPSBvcHRpbmRf
cyArIDIpIHsKLSAgICAvKiB3cm9uZyBudW1iZXIgb2YgYXJndW1lbnRzICovCi0gICAgdXNhZ2Uo
YXJndlswXSk7Ci0gIH0KLQotICAvKiBnZXQgYWRkcmVzcyBmcm9tIGFyZyAqLwotICBhZGRyZXNz
ID0gYXJndltvcHRpbmRfcysrXTsKLQotICAvKiBnZXQgcG9ydCBmcm9tIGFyZyAqLwotICBwb3J0
ID0gYXRvaShhcmd2W29wdGluZF9zKytdKTsKLQotICAvKiBzZXQgYWRkcmVzcyAqLworCisgICAg
LyogZ2V0IGFkZHJlc3MgZnJvbSBhcmcgKi8KKyAgICBhZGRyZXNzID0gYXJndltvcHRpbmRfcysr
XTsKKworICAgIC8qIGdldCBwb3J0IGZyb20gYXJnICovCisgICAgcG9ydCA9IGF0b2koYXJndltv
cHRpbmRfcysrXSk7CisKKy8qIHNldCBhZGRyZXNzICovCiAjaWZkZWYgSEFWRV9JTkVUX0FUT04K
LSAgaWYgKDAgPT0gaW5ldF9hdG9uKGFkZHJlc3MsICZyY3ZyX2FkZHIpKSB7Ci0gICAgZnByaW50
ZihzdGRlcnIsICIlczogY2Fubm90IHBhcnNlIElQIHY0IGFkZHJlc3MgJXNcbiIsIGFyZ3ZbMF0s
IGFkZHJlc3MpOwotICAgIGV4aXQoMSk7Ci0gIH0KLSAgaWYgKHJjdnJfYWRkci5zX2FkZHIgPT0g
SU5BRERSX05PTkUpIHsKLSAgICBmcHJpbnRmKHN0ZGVyciwgIiVzOiBhZGRyZXNzIGVycm9yIiwg
YXJndlswXSk7Ci0gICAgZXhpdCgxKTsKLSAgfQorICAgIGlmICgwID09IGluZXRfYXRvbihhZGRy
ZXNzLCAmcmN2cl9hZGRyKSkgeworICAgICAgICBmcHJpbnRmKHN0ZGVyciwgIiVzOiBjYW5ub3Qg
cGFyc2UgSVAgdjQgYWRkcmVzcyAlc1xuIiwgYXJndlswXSwKKyAgICAgICAgICAgICAgICBhZGRy
ZXNzKTsKKyAgICAgICAgZXhpdCgxKTsKKyAgICB9CisgICAgaWYgKHJjdnJfYWRkci5zX2FkZHIg
PT0gSU5BRERSX05PTkUpIHsKKyAgICAgICAgZnByaW50ZihzdGRlcnIsICIlczogYWRkcmVzcyBl
cnJvciIsIGFyZ3ZbMF0pOworICAgICAgICBleGl0KDEpOworICAgIH0KICNlbHNlCi0gIHJjdnJf
YWRkci5zX2FkZHIgPSBpbmV0X2FkZHIoYWRkcmVzcyk7Ci0gIGlmICgweGZmZmZmZmZmID09IHJj
dnJfYWRkci5zX2FkZHIpIHsKLSAgICBmcHJpbnRmKHN0ZGVyciwgIiVzOiBjYW5ub3QgcGFyc2Ug
SVAgdjQgYWRkcmVzcyAlc1xuIiwgYXJndlswXSwgYWRkcmVzcyk7Ci0gICAgZXhpdCgxKTsKLSAg
fQorICAgIHJjdnJfYWRkci5zX2FkZHIgPSBpbmV0X2FkZHIoYWRkcmVzcyk7CisgICAgaWYgKDB4
ZmZmZmZmZmYgPT0gcmN2cl9hZGRyLnNfYWRkcikgeworICAgICAgICBmcHJpbnRmKHN0ZGVyciwg
IiVzOiBjYW5ub3QgcGFyc2UgSVAgdjQgYWRkcmVzcyAlc1xuIiwgYXJndlswXSwKKyAgICAgICAg
ICAgICAgICBhZGRyZXNzKTsKKyAgICAgICAgZXhpdCgxKTsKKyAgICB9CiAjZW5kaWYKIAotICAv
KiBvcGVuIHNvY2tldCAqLwotICBzb2NrID0gc29ja2V0KFBGX0lORVQsIFNPQ0tfREdSQU0sIElQ
UFJPVE9fVURQKTsKLSAgaWYgKHNvY2sgPCAwKSB7Ci0gICAgaW50IGVycjsKKyAgICAvKiBvcGVu
IHNvY2tldCAqLworICAgIHNvY2sgPSBzb2NrZXQoUEZfSU5FVCwgU09DS19ER1JBTSwgSVBQUk9U
T19VRFApOworICAgIGlmIChzb2NrIDwgMCkgeworICAgICAgICBpbnQgZXJyOwogI2lmZGVmIFJU
UFdfVVNFX1dJTlNPQ0syCi0gICAgZXJyID0gV1NBR2V0TGFzdEVycm9yKCk7CisgICAgICAgIGVy
ciA9IFdTQUdldExhc3RFcnJvcigpOwogI2Vsc2UKLSAgICBlcnIgPSBlcnJubzsKKyAgICAgICAg
ZXJyID0gZXJybm87CiAjZW5kaWYKLSAgICBmcHJpbnRmKHN0ZGVyciwgIiVzOiBjb3VsZG4ndCBv
cGVuIHNvY2tldDogJWRcbiIsIGFyZ3ZbMF0sIGVycik7Ci0gICBleGl0KDEpOwotICB9Ci0KLSAg
bmFtZS5zaW5fYWRkciAgID0gcmN2cl9hZGRyOyAgICAKLSAgbmFtZS5zaW5fZmFtaWx5ID0gUEZf
SU5FVDsKLSAgbmFtZS5zaW5fcG9ydCAgID0gaHRvbnMocG9ydCk7Ci0gCi0gIGlmIChBRERSX0lT
X01VTFRJQ0FTVChyY3ZyX2FkZHIuc19hZGRyKSkgewotICAgIGlmIChwcm9nX3R5cGUgPT0gc2Vu
ZGVyKSB7Ci0gICAgICByZXQgPSBzZXRzb2Nrb3B0KHNvY2ssIElQUFJPVE9fSVAsIElQX01VTFRJ
Q0FTVF9UVEwsICZ0dGwsIAotICAJICAgICAgICAgICAgICAgc2l6ZW9mKHR0bCkpOwotICAgICAg
aWYgKHJldCA8IDApIHsKLQlmcHJpbnRmKHN0ZGVyciwgIiVzOiBGYWlsZWQgdG8gc2V0IFRUTCBm
b3IgbXVsdGljYXN0IGdyb3VwIiwgYXJndlswXSk7Ci0JcGVycm9yKCIiKTsKLQlleGl0KDEpOwot
ICAgICAgfQorICAgICAgICBmcHJpbnRmKHN0ZGVyciwgIiVzOiBjb3VsZG4ndCBvcGVuIHNvY2tl
dDogJWRcbiIsIGFyZ3ZbMF0sIGVycik7CisgICAgICAgIGV4aXQoMSk7CiAgICAgfQogCi0gICAg
bXJlcS5pbXJfbXVsdGlhZGRyLnNfYWRkciA9IHJjdnJfYWRkci5zX2FkZHI7Ci0gICAgbXJlcS5p
bXJfaW50ZXJmYWNlLnNfYWRkciA9IGh0b25sKElOQUREUl9BTlkpOwotICAgIHJldCA9IHNldHNv
Y2tvcHQoc29jaywgSVBQUk9UT19JUCwgSVBfQUREX01FTUJFUlNISVAsICh2b2lkKikmbXJlcSwK
LQkJICAgICBzaXplb2YobXJlcSkpOwotICAgIGlmIChyZXQgPCAwKSB7Ci0gICAgICBmcHJpbnRm
KHN0ZGVyciwgIiVzOiBGYWlsZWQgdG8gam9pbiBtdWx0aWNhc3QgZ3JvdXAiLCBhcmd2WzBdKTsK
LSAgICAgIHBlcnJvcigiIik7Ci0gICAgICBleGl0KDEpOworICAgIG5hbWUuc2luX2FkZHIgPSBy
Y3ZyX2FkZHI7CisgICAgbmFtZS5zaW5fZmFtaWx5ID0gUEZfSU5FVDsKKyAgICBuYW1lLnNpbl9w
b3J0ID0gaHRvbnMocG9ydCk7CisKKyAgICBpZiAoQUREUl9JU19NVUxUSUNBU1QocmN2cl9hZGRy
LnNfYWRkcikpIHsKKyAgICAgICAgaWYgKHByb2dfdHlwZSA9PSBzZW5kZXIpIHsKKyAgICAgICAg
ICAgIHJldCA9IHNldHNvY2tvcHQoc29jaywgSVBQUk9UT19JUCwgSVBfTVVMVElDQVNUX1RUTCwg
JnR0bCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZW9mKHR0bCkpOworICAgICAg
ICAgICAgaWYgKHJldCA8IDApIHsKKyAgICAgICAgICAgICAgICBmcHJpbnRmKHN0ZGVyciwgIiVz
OiBGYWlsZWQgdG8gc2V0IFRUTCBmb3IgbXVsdGljYXN0IGdyb3VwIiwKKyAgICAgICAgICAgICAg
ICAgICAgICAgIGFyZ3ZbMF0pOworICAgICAgICAgICAgICAgIHBlcnJvcigiIik7CisgICAgICAg
ICAgICAgICAgZXhpdCgxKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorCisgICAgICAgIG1y
ZXEuaW1yX211bHRpYWRkci5zX2FkZHIgPSByY3ZyX2FkZHIuc19hZGRyOworICAgICAgICBtcmVx
Lmltcl9pbnRlcmZhY2Uuc19hZGRyID0gaHRvbmwoSU5BRERSX0FOWSk7CisgICAgICAgIHJldCA9
IHNldHNvY2tvcHQoc29jaywgSVBQUk9UT19JUCwgSVBfQUREX01FTUJFUlNISVAsICh2b2lkICop
Jm1yZXEsCisgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZW9mKG1yZXEpKTsKKyAgICAgICAg
aWYgKHJldCA8IDApIHsKKyAgICAgICAgICAgIGZwcmludGYoc3RkZXJyLCAiJXM6IEZhaWxlZCB0
byBqb2luIG11bHRpY2FzdCBncm91cCIsIGFyZ3ZbMF0pOworICAgICAgICAgICAgcGVycm9yKCIi
KTsKKyAgICAgICAgICAgIGV4aXQoMSk7CisgICAgICAgIH0KICAgICB9Ci0gIH0KLQotICAvKiBy
ZXBvcnQgc2VjdXJpdHkgc2VydmljZXMgc2VsZWN0ZWQgb24gdGhlIGNvbW1hbmQgbGluZSAqLwot
ICBwcmludGYoInNlY3VyaXR5IHNlcnZpY2VzOiAiKTsKLSAgaWYgKHNlY19zZXJ2cyAmIHNlY19z
ZXJ2X2NvbmYpCi0gICAgcHJpbnRmKCJjb25maWRlbnRpYWxpdHkgIik7Ci0gIGlmIChzZWNfc2Vy
dnMgJiBzZWNfc2Vydl9hdXRoKQotICAgIHByaW50ZigibWVzc2FnZSBhdXRoZW50aWNhdGlvbiIp
OwotICBpZiAoc2VjX3NlcnZzID09IHNlY19zZXJ2X25vbmUpCi0gICAgcHJpbnRmKCJub25lIik7
Ci0gIHByaW50ZigiXG4iKTsKLSAgCi0gIC8qIHNldCB1cCB0aGUgc3J0cCBwb2xpY3kgYW5kIG1h
c3RlciBrZXkgKi8gICAgCi0gIGlmIChzZWNfc2VydnMpIHsKLSAgICAvKiAKLSAgICAgKiBjcmVh
dGUgcG9saWN5IHN0cnVjdHVyZSwgdXNpbmcgdGhlIGRlZmF1bHQgbWVjaGFuaXNtcyBidXQgCi0g
ICAgICogd2l0aCBvbmx5IHRoZSBzZWN1cml0eSBzZXJ2aWNlcyByZXF1ZXN0ZWQgb24gdGhlIGNv
bW1hbmQgbGluZSwKLSAgICAgKiB1c2luZyB0aGUgcmlnaHQgU1NSQyB2YWx1ZQotICAgICAqLwot
ICAgIHN3aXRjaCAoc2VjX3NlcnZzKSB7Ci0gICAgY2FzZSBzZWNfc2Vydl9jb25mX2FuZF9hdXRo
OgotICAgICAgaWYgKGdjbV9vbikgeworCisgICAgLyogcmVwb3J0IHNlY3VyaXR5IHNlcnZpY2Vz
IHNlbGVjdGVkIG9uIHRoZSBjb21tYW5kIGxpbmUgKi8KKyAgICBwcmludGYoInNlY3VyaXR5IHNl
cnZpY2VzOiAiKTsKKyAgICBpZiAoc2VjX3NlcnZzICYgc2VjX3NlcnZfY29uZikKKyAgICAgICAg
cHJpbnRmKCJjb25maWRlbnRpYWxpdHkgIik7CisgICAgaWYgKHNlY19zZXJ2cyAmIHNlY19zZXJ2
X2F1dGgpCisgICAgICAgIHByaW50ZigibWVzc2FnZSBhdXRoZW50aWNhdGlvbiIpOworICAgIGlm
IChzZWNfc2VydnMgPT0gc2VjX3NlcnZfbm9uZSkKKyAgICAgICAgcHJpbnRmKCJub25lIik7Cisg
ICAgcHJpbnRmKCJcbiIpOworCisgICAgLyogc2V0IHVwIHRoZSBzcnRwIHBvbGljeSBhbmQgbWFz
dGVyIGtleSAqLworICAgIGlmIChzZWNfc2VydnMpIHsKKyAgICAgICAgLyoKKyAgICAgICAgICog
Y3JlYXRlIHBvbGljeSBzdHJ1Y3R1cmUsIHVzaW5nIHRoZSBkZWZhdWx0IG1lY2hhbmlzbXMgYnV0
CisgICAgICAgICAqIHdpdGggb25seSB0aGUgc2VjdXJpdHkgc2VydmljZXMgcmVxdWVzdGVkIG9u
IHRoZSBjb21tYW5kIGxpbmUsCisgICAgICAgICAqIHVzaW5nIHRoZSByaWdodCBTU1JDIHZhbHVl
CisgICAgICAgICAqLworICAgICAgICBzd2l0Y2ggKHNlY19zZXJ2cykgeworICAgICAgICBjYXNl
IHNlY19zZXJ2X2NvbmZfYW5kX2F1dGg6CisgICAgICAgICAgICBpZiAoZ2NtX29uKSB7CiAjaWZk
ZWYgT1BFTlNTTAotCXN3aXRjaCAoa2V5X3NpemUpIHsKLQljYXNlIDEyODoKLQkgIHNydHBfY3J5
cHRvX3BvbGljeV9zZXRfYWVzX2djbV8xMjhfOF9hdXRoKCZwb2xpY3kucnRwKTsKLQkgIHNydHBf
Y3J5cHRvX3BvbGljeV9zZXRfYWVzX2djbV8xMjhfOF9hdXRoKCZwb2xpY3kucnRjcCk7Ci0JICBi
cmVhazsKLQljYXNlIDI1NjoKLQkgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2djbV8yNTZf
OF9hdXRoKCZwb2xpY3kucnRwKTsKLQkgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2djbV8y
NTZfOF9hdXRoKCZwb2xpY3kucnRjcCk7Ci0JICBicmVhazsKLQl9CisgICAgICAgICAgICAgICAg
c3dpdGNoIChrZXlfc2l6ZSkgeworICAgICAgICAgICAgICAgIGNhc2UgMTI4OgorICAgICAgICAg
ICAgICAgICAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21fMTI4XzhfYXV0aCgmcG9s
aWN5LnJ0cCk7CisgICAgICAgICAgICAgICAgICAgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVz
X2djbV8xMjhfOF9hdXRoKCZwb2xpY3kucnRjcCk7CisgICAgICAgICAgICAgICAgICAgIGJyZWFr
OworICAgICAgICAgICAgICAgIGNhc2UgMjU2OgorICAgICAgICAgICAgICAgICAgICBzcnRwX2Ny
eXB0b19wb2xpY3lfc2V0X2Flc19nY21fMjU2XzhfYXV0aCgmcG9saWN5LnJ0cCk7CisgICAgICAg
ICAgICAgICAgICAgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2djbV8yNTZfOF9hdXRoKCZw
b2xpY3kucnRjcCk7CisgICAgICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgICAg
IH0KICNlbHNlCi0JcHJpbnRmKCJlcnJvcjogR0NNIG1vZGUgb25seSBzdXBwb3J0ZWQgd2hlbiB1
c2luZyB0aGUgT3BlblNTTCBjcnlwdG8gZW5naW5lLlxuIik7Ci0JcmV0dXJuIDA7CisgICAgICAg
ICAgICAgICAgcHJpbnRmKCJlcnJvcjogR0NNIG1vZGUgb25seSBzdXBwb3J0ZWQgd2hlbiB1c2lu
ZyB0aGUgT3BlblNTTCAiCisgICAgICAgICAgICAgICAgICAgICAgICJjcnlwdG8gZW5naW5lLlxu
Iik7CisgICAgICAgICAgICAgICAgcmV0dXJuIDA7CiAjZW5kaWYKLSAgICAgIH0gZWxzZSB7Ci0J
c3dpdGNoIChrZXlfc2l6ZSkgewotCWNhc2UgMTI4OgotICAgICAgICAgIHNydHBfY3J5cHRvX3Bv
bGljeV9zZXRfcnRwX2RlZmF1bHQoJnBvbGljeS5ydHApOwotICAgICAgICAgIHNydHBfY3J5cHRv
X3BvbGljeV9zZXRfcnRjcF9kZWZhdWx0KCZwb2xpY3kucnRjcCk7Ci0JICBicmVhazsKLQljYXNl
IDI1NjoKLSAgICAgICAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19jbV8yNTZfaG1hY19z
aGExXzgwKCZwb2xpY3kucnRwKTsKLSAgICAgICAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X3J0
Y3BfZGVmYXVsdCgmcG9saWN5LnJ0Y3ApOwotCSAgYnJlYWs7Ci0JfQotICAgICAgfQotICAgICAg
YnJlYWs7Ci0gICAgY2FzZSBzZWNfc2Vydl9jb25mOgotICAgICAgaWYgKGdjbV9vbikgewotCSAg
cHJpbnRmKCJlcnJvcjogR0NNIG1vZGUgbXVzdCBhbHdheXMgYmUgdXNlZCB3aXRoIGF1dGggZW5h
YmxlZFxuIik7Ci0JICByZXR1cm4gLTE7Ci0gICAgICB9IGVsc2UgewotCXN3aXRjaCAoa2V5X3Np
emUpIHsKLQljYXNlIDEyODoKLSAgICAgICAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19j
bV8xMjhfbnVsbF9hdXRoKCZwb2xpY3kucnRwKTsKLSAgICAgICAgICBzcnRwX2NyeXB0b19wb2xp
Y3lfc2V0X3J0Y3BfZGVmYXVsdCgmcG9saWN5LnJ0Y3ApOyAgICAgIAotCSAgYnJlYWs7Ci0JY2Fz
ZSAyNTY6Ci0gICAgICAgICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfY21fMjU2X251bGxf
YXV0aCgmcG9saWN5LnJ0cCk7Ci0gICAgICAgICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9ydGNw
X2RlZmF1bHQoJnBvbGljeS5ydGNwKTsgICAgICAKLQkgIGJyZWFrOwotCX0KLSAgICAgIH0KLSAg
ICAgIGJyZWFrOwotICAgIGNhc2Ugc2VjX3NlcnZfYXV0aDoKLSAgICAgIGlmIChnY21fb24pIHsK
KyAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgc3dpdGNoIChrZXlfc2l6ZSkg
eworICAgICAgICAgICAgICAgIGNhc2UgMTI4OgorICAgICAgICAgICAgICAgICAgICBzcnRwX2Ny
eXB0b19wb2xpY3lfc2V0X3J0cF9kZWZhdWx0KCZwb2xpY3kucnRwKTsKKyAgICAgICAgICAgICAg
ICAgICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9ydGNwX2RlZmF1bHQoJnBvbGljeS5ydGNwKTsK
KyAgICAgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICAgICAgY2FzZSAyNTY6Cisg
ICAgICAgICAgICAgICAgICAgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2NtXzI1Nl9obWFj
X3NoYTFfODAoJnBvbGljeS5ydHApOworICAgICAgICAgICAgICAgICAgICBzcnRwX2NyeXB0b19w
b2xpY3lfc2V0X3J0Y3BfZGVmYXVsdCgmcG9saWN5LnJ0Y3ApOworICAgICAgICAgICAgICAgICAg
ICBicmVhazsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgICAgICBi
cmVhazsKKyAgICAgICAgY2FzZSBzZWNfc2Vydl9jb25mOgorICAgICAgICAgICAgaWYgKGdjbV9v
bikgeworICAgICAgICAgICAgICAgIHByaW50ZigKKyAgICAgICAgICAgICAgICAgICAgImVycm9y
OiBHQ00gbW9kZSBtdXN0IGFsd2F5cyBiZSB1c2VkIHdpdGggYXV0aCBlbmFibGVkXG4iKTsKKyAg
ICAgICAgICAgICAgICByZXR1cm4gLTE7CisgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAg
ICAgICAgIHN3aXRjaCAoa2V5X3NpemUpIHsKKyAgICAgICAgICAgICAgICBjYXNlIDEyODoKKyAg
ICAgICAgICAgICAgICAgICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfY21fMTI4X251bGxf
YXV0aCgmcG9saWN5LnJ0cCk7CisgICAgICAgICAgICAgICAgICAgIHNydHBfY3J5cHRvX3BvbGlj
eV9zZXRfcnRjcF9kZWZhdWx0KCZwb2xpY3kucnRjcCk7CisgICAgICAgICAgICAgICAgICAgIGJy
ZWFrOworICAgICAgICAgICAgICAgIGNhc2UgMjU2OgorICAgICAgICAgICAgICAgICAgICBzcnRw
X2NyeXB0b19wb2xpY3lfc2V0X2Flc19jbV8yNTZfbnVsbF9hdXRoKCZwb2xpY3kucnRwKTsKKyAg
ICAgICAgICAgICAgICAgICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9ydGNwX2RlZmF1bHQoJnBv
bGljeS5ydGNwKTsKKyAgICAgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICAgICAg
fQorICAgICAgICAgICAgfQorICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2Ugc2VjX3Nl
cnZfYXV0aDoKKyAgICAgICAgICAgIGlmIChnY21fb24pIHsKICNpZmRlZiBPUEVOU1NMCi0Jc3dp
dGNoIChrZXlfc2l6ZSkgewotCWNhc2UgMTI4OgotCSAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9h
ZXNfZ2NtXzEyOF84X29ubHlfYXV0aCgmcG9saWN5LnJ0cCk7Ci0JICBzcnRwX2NyeXB0b19wb2xp
Y3lfc2V0X2Flc19nY21fMTI4Xzhfb25seV9hdXRoKCZwb2xpY3kucnRjcCk7Ci0JICBicmVhazsK
LQljYXNlIDI1NjoKLQkgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2djbV8yNTZfOF9vbmx5
X2F1dGgoJnBvbGljeS5ydHApOwotCSAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfZ2NtXzI1
Nl84X29ubHlfYXV0aCgmcG9saWN5LnJ0Y3ApOwotCSAgYnJlYWs7Ci0JfQorICAgICAgICAgICAg
ICAgIHN3aXRjaCAoa2V5X3NpemUpIHsKKyAgICAgICAgICAgICAgICBjYXNlIDEyODoKKyAgICAg
ICAgICAgICAgICAgICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfZ2NtXzEyOF84X29ubHlf
YXV0aCgmcG9saWN5LnJ0cCk7CisgICAgICAgICAgICAgICAgICAgIHNydHBfY3J5cHRvX3BvbGlj
eV9zZXRfYWVzX2djbV8xMjhfOF9vbmx5X2F1dGgoCisgICAgICAgICAgICAgICAgICAgICAgICAm
cG9saWN5LnJ0Y3ApOworICAgICAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgICAg
ICBjYXNlIDI1NjoKKyAgICAgICAgICAgICAgICAgICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9h
ZXNfZ2NtXzI1Nl84X29ubHlfYXV0aCgmcG9saWN5LnJ0cCk7CisgICAgICAgICAgICAgICAgICAg
IHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2djbV8yNTZfOF9vbmx5X2F1dGgoCisgICAgICAg
ICAgICAgICAgICAgICAgICAmcG9saWN5LnJ0Y3ApOworICAgICAgICAgICAgICAgICAgICBicmVh
azsKKyAgICAgICAgICAgICAgICB9CiAjZWxzZQotCXByaW50ZigiZXJyb3I6IEdDTSBtb2RlIG9u
bHkgc3VwcG9ydGVkIHdoZW4gdXNpbmcgdGhlIE9wZW5TU0wgY3J5cHRvIGVuZ2luZS5cbiIpOwot
CXJldHVybiAwOworICAgICAgICAgICAgICAgIHByaW50ZigiZXJyb3I6IEdDTSBtb2RlIG9ubHkg
c3VwcG9ydGVkIHdoZW4gdXNpbmcgdGhlIE9wZW5TU0wgIgorICAgICAgICAgICAgICAgICAgICAg
ICAiY3J5cHRvIGVuZ2luZS5cbiIpOworICAgICAgICAgICAgICAgIHJldHVybiAwOwogI2VuZGlm
Ci0gICAgICB9IGVsc2UgewotICAgICAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X251bGxfY2lw
aGVyX2htYWNfc2hhMV84MCgmcG9saWN5LnJ0cCk7Ci0gICAgICAgIHNydHBfY3J5cHRvX3BvbGlj
eV9zZXRfcnRjcF9kZWZhdWx0KCZwb2xpY3kucnRjcCk7Ci0gICAgICB9Ci0gICAgICBicmVhazsK
LSAgICBkZWZhdWx0OgotICAgICAgcHJpbnRmKCJlcnJvcjogdW5rbm93biBzZWN1cml0eSBzZXJ2
aWNlIHJlcXVlc3RlZFxuIik7Ci0gICAgICByZXR1cm4gLTE7Ci0gICAgfSAKLSAgICBwb2xpY3ku
c3NyYy50eXBlICA9IHNzcmNfc3BlY2lmaWM7Ci0gICAgcG9saWN5LnNzcmMudmFsdWUgPSBzc3Jj
OwotICAgIHBvbGljeS5rZXkgPSAodWludDhfdCAqKWtleTsKLSAgICBwb2xpY3kuZWt0ICA9IE5V
TEw7Ci0gICAgcG9saWN5Lm5leHQgPSBOVUxMOwotICAgIHBvbGljeS53aW5kb3dfc2l6ZSA9IDEy
ODsKLSAgICBwb2xpY3kuYWxsb3dfcmVwZWF0X3R4ID0gMDsKLSAgICBwb2xpY3kucnRwLnNlY19z
ZXJ2ID0gc2VjX3NlcnZzOwotICAgIHBvbGljeS5ydGNwLnNlY19zZXJ2ID0gc2VjX3NlcnZfbm9u
ZTsgIC8qIHdlIGRvbid0IGRvIFJUQ1AgYW55d2F5ICovCi0KLSAgICBpZiAoZ2NtX29uICYmIHRh
Z19zaXplICE9IDgpIHsKLQlwb2xpY3kucnRwLmF1dGhfdGFnX2xlbiA9IHRhZ19zaXplOwotICAg
IH0KKyAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgc3J0cF9jcnlwdG9fcG9s
aWN5X3NldF9udWxsX2NpcGhlcl9obWFjX3NoYTFfODAoJnBvbGljeS5ydHApOworICAgICAgICAg
ICAgICAgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfcnRjcF9kZWZhdWx0KCZwb2xpY3kucnRjcCk7
CisgICAgICAgICAgICB9CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAg
ICAgICAgICAgIHByaW50ZigiZXJyb3I6IHVua25vd24gc2VjdXJpdHkgc2VydmljZSByZXF1ZXN0
ZWRcbiIpOworICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICB9CisgICAgICAgIHBvbGlj
eS5zc3JjLnR5cGUgPSBzc3JjX3NwZWNpZmljOworICAgICAgICBwb2xpY3kuc3NyYy52YWx1ZSA9
IHNzcmM7CisgICAgICAgIHBvbGljeS5rZXkgPSAodWludDhfdCAqKWtleTsKKyAgICAgICAgcG9s
aWN5LmVrdCA9IE5VTEw7CisgICAgICAgIHBvbGljeS5uZXh0ID0gTlVMTDsKKyAgICAgICAgcG9s
aWN5LndpbmRvd19zaXplID0gMTI4OworICAgICAgICBwb2xpY3kuYWxsb3dfcmVwZWF0X3R4ID0g
MDsKKyAgICAgICAgcG9saWN5LnJ0cC5zZWNfc2VydiA9IHNlY19zZXJ2czsKKyAgICAgICAgcG9s
aWN5LnJ0Y3Auc2VjX3NlcnYgPSBzZWNfc2Vydl9ub25lOyAvKiB3ZSBkb24ndCBkbyBSVENQIGFu
eXdheSAqLworCisgICAgICAgIGlmIChnY21fb24gJiYgdGFnX3NpemUgIT0gOCkgeworICAgICAg
ICAgICAgcG9saWN5LnJ0cC5hdXRoX3RhZ19sZW4gPSB0YWdfc2l6ZTsKKyAgICAgICAgfQogCi0g
ICAgLyoKLSAgICAgKiByZWFkIGtleSBmcm9tIGhleGFkZWNpbWFsIG9yIGJhc2U2NCBvbiBjb21t
YW5kIGxpbmUgaW50byBhbiBvY3RldCBzdHJpbmcKLSAgICAgKi8KLSAgICBpZiAoYjY0X2lucHV0
KSB7Ci0gICAgICAgIGludCBwYWQ7Ci0gICAgICAgIGV4cGVjdGVkX2xlbiA9IChwb2xpY3kucnRw
LmNpcGhlcl9rZXlfbGVuKjQpLzM7Ci0gICAgICAgIGxlbiA9IGJhc2U2NF9zdHJpbmdfdG9fb2N0
ZXRfc3RyaW5nKGtleSwgJnBhZCwgaW5wdXRfa2V5LCBleHBlY3RlZF9sZW4pOwotICAgICAgICBp
ZiAocGFkICE9IDApIHsKLSAgICAgICAgICBmcHJpbnRmKHN0ZGVyciwgImVycm9yOiBwYWRkaW5n
IGluIGJhc2U2NCB1bmV4cGVjdGVkXG4iKTsKLSAgICAgICAgICBleGl0KDEpOworICAgICAgICAv
KgorICAgICAgICAgKiByZWFkIGtleSBmcm9tIGhleGFkZWNpbWFsIG9yIGJhc2U2NCBvbiBjb21t
YW5kIGxpbmUgaW50byBhbiBvY3RldAorICAgICAgICAgKiBzdHJpbmcKKyAgICAgICAgICovCisg
ICAgICAgIGlmIChiNjRfaW5wdXQpIHsKKyAgICAgICAgICAgIGludCBwYWQ7CisgICAgICAgICAg
ICBleHBlY3RlZF9sZW4gPSAocG9saWN5LnJ0cC5jaXBoZXJfa2V5X2xlbiAqIDQpIC8gMzsKKyAg
ICAgICAgICAgIGxlbiA9IGJhc2U2NF9zdHJpbmdfdG9fb2N0ZXRfc3RyaW5nKGtleSwgJnBhZCwg
aW5wdXRfa2V5LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgZXhwZWN0ZWRfbGVuKTsKKyAgICAgICAgICAgIGlmIChwYWQgIT0gMCkgeworICAgICAgICAg
ICAgICAgIGZwcmludGYoc3RkZXJyLCAiZXJyb3I6IHBhZGRpbmcgaW4gYmFzZTY0IHVuZXhwZWN0
ZWRcbiIpOworICAgICAgICAgICAgICAgIGV4aXQoMSk7CisgICAgICAgICAgICB9CisgICAgICAg
IH0gZWxzZSB7CisgICAgICAgICAgICBleHBlY3RlZF9sZW4gPSBwb2xpY3kucnRwLmNpcGhlcl9r
ZXlfbGVuICogMjsKKyAgICAgICAgICAgIGxlbiA9IGhleF9zdHJpbmdfdG9fb2N0ZXRfc3RyaW5n
KGtleSwgaW5wdXRfa2V5LCBleHBlY3RlZF9sZW4pOworICAgICAgICB9CisgICAgICAgIC8qIGNo
ZWNrIHRoYXQgaGV4IHN0cmluZyBpcyB0aGUgcmlnaHQgbGVuZ3RoICovCisgICAgICAgIGlmIChs
ZW4gPCBleHBlY3RlZF9sZW4pIHsKKyAgICAgICAgICAgIGZwcmludGYoc3RkZXJyLCAiZXJyb3I6
IHRvbyBmZXcgZGlnaXRzIGluIGtleS9zYWx0ICIKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAiKHNob3VsZCBiZSAlZCBkaWdpdHMsIGZvdW5kICVkKVxuIiwKKyAgICAgICAgICAgICAgICAg
ICAgZXhwZWN0ZWRfbGVuLCBsZW4pOworICAgICAgICAgICAgZXhpdCgxKTsKKyAgICAgICAgfQor
ICAgICAgICBpZiAoKGludClzdHJsZW4oaW5wdXRfa2V5KSA+IHBvbGljeS5ydHAuY2lwaGVyX2tl
eV9sZW4gKiAyKSB7CisgICAgICAgICAgICBmcHJpbnRmKHN0ZGVyciwgImVycm9yOiB0b28gbWFu
eSBkaWdpdHMgaW4ga2V5L3NhbHQgIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICIoc2hv
dWxkIGJlICVkIGhleGFkZWNpbWFsIGRpZ2l0cywgZm91bmQgJXUpXG4iLAorICAgICAgICAgICAg
ICAgICAgICBwb2xpY3kucnRwLmNpcGhlcl9rZXlfbGVuICogMiwgKHVuc2lnbmVkKXN0cmxlbihp
bnB1dF9rZXkpKTsKKyAgICAgICAgICAgIGV4aXQoMSk7CiAgICAgICAgIH0KKworICAgICAgICBw
cmludGYoInNldCBtYXN0ZXIga2V5L3NhbHQgdG8gJXMvIiwgb2N0ZXRfc3RyaW5nX2hleF9zdHJp
bmcoa2V5LCAxNikpOworICAgICAgICBwcmludGYoIiVzXG4iLCBvY3RldF9zdHJpbmdfaGV4X3N0
cmluZyhrZXkgKyAxNiwgMTQpKTsKKwogICAgIH0gZWxzZSB7Ci0gICAgICAgIGV4cGVjdGVkX2xl
biA9IHBvbGljeS5ydHAuY2lwaGVyX2tleV9sZW4qMjsKLSAgICAgICAgbGVuID0gaGV4X3N0cmlu
Z190b19vY3RldF9zdHJpbmcoa2V5LCBpbnB1dF9rZXksIGV4cGVjdGVkX2xlbik7Ci0gICAgfQot
ICAgIC8qIGNoZWNrIHRoYXQgaGV4IHN0cmluZyBpcyB0aGUgcmlnaHQgbGVuZ3RoICovCi0gICAg
aWYgKGxlbiA8IGV4cGVjdGVkX2xlbikgewotICAgICAgZnByaW50ZihzdGRlcnIsIAotCSAgICAg
ICJlcnJvcjogdG9vIGZldyBkaWdpdHMgaW4ga2V5L3NhbHQgIgotCSAgICAgICIoc2hvdWxkIGJl
ICVkIGRpZ2l0cywgZm91bmQgJWQpXG4iLAotCSAgICAgIGV4cGVjdGVkX2xlbiwgbGVuKTsKLSAg
ICAgIGV4aXQoMSk7ICAgIAotICAgIH0gCi0gICAgaWYgKChpbnQpIHN0cmxlbihpbnB1dF9rZXkp
ID4gcG9saWN5LnJ0cC5jaXBoZXJfa2V5X2xlbioyKSB7Ci0gICAgICBmcHJpbnRmKHN0ZGVyciwg
Ci0JICAgICAgImVycm9yOiB0b28gbWFueSBkaWdpdHMgaW4ga2V5L3NhbHQgIgotCSAgICAgICIo
c2hvdWxkIGJlICVkIGhleGFkZWNpbWFsIGRpZ2l0cywgZm91bmQgJXUpXG4iLAotCSAgICAgIHBv
bGljeS5ydHAuY2lwaGVyX2tleV9sZW4qMiwgKHVuc2lnbmVkKXN0cmxlbihpbnB1dF9rZXkpKTsK
LSAgICAgIGV4aXQoMSk7ICAgIAorICAgICAgICAvKgorICAgICAgICAgKiB3ZSdyZSBub3QgcHJv
dmlkaW5nIHNlY3VyaXR5IHNlcnZpY2VzLCBzbyBzZXQgdGhlIHBvbGljeSB0byB0aGUKKyAgICAg
ICAgICogbnVsbCBwb2xpY3kKKyAgICAgICAgICoKKyAgICAgICAgICogTm90ZSB0aGF0IHRoaXMg
cG9saWN5IGRvZXMgbm90IGNvbmZvcm0gdG8gdGhlIFNSVFAKKyAgICAgICAgICogc3BlY2lmaWNh
dGlvbiwgc2luY2UgUlRDUCBhdXRoZW50aWNhdGlvbiBpcyByZXF1aXJlZC4gIEhvd2V2ZXIsCisg
ICAgICAgICAqIHRoZSBlZmZlY3Qgb2YgdGhpcyBwb2xpY3kgaXMgdG8gdHVybiBvZmYgU1JUUCwg
c28gdGhhdCB0aGlzCisgICAgICAgICAqIGFwcGxpY2F0aW9uIGlzIG5vdyBhIHZhbmlsbGEtZmxh
dm9yZWQgUlRQIGFwcGxpY2F0aW9uLgorICAgICAgICAgKi8KKyAgICAgICAgc3J0cF9jcnlwdG9f
cG9saWN5X3NldF9udWxsX2NpcGhlcl9obWFjX251bGwoJnBvbGljeS5ydHApOworICAgICAgICBz
cnRwX2NyeXB0b19wb2xpY3lfc2V0X251bGxfY2lwaGVyX2htYWNfbnVsbCgmcG9saWN5LnJ0Y3Ap
OworICAgICAgICBwb2xpY3kua2V5ID0gKHVpbnQ4X3QgKilrZXk7CisgICAgICAgIHBvbGljeS5z
c3JjLnR5cGUgPSBzc3JjX3NwZWNpZmljOworICAgICAgICBwb2xpY3kuc3NyYy52YWx1ZSA9IHNz
cmM7CisgICAgICAgIHBvbGljeS53aW5kb3dfc2l6ZSA9IDA7CisgICAgICAgIHBvbGljeS5hbGxv
d19yZXBlYXRfdHggPSAwOworICAgICAgICBwb2xpY3kuZWt0ID0gTlVMTDsKKyAgICAgICAgcG9s
aWN5Lm5leHQgPSBOVUxMOwogICAgIH0KLSAgICAKLSAgICBwcmludGYoInNldCBtYXN0ZXIga2V5
L3NhbHQgdG8gJXMvIiwgb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcoa2V5LCAxNikpOwotICAgIHBy
aW50ZigiJXNcbiIsIG9jdGV0X3N0cmluZ19oZXhfc3RyaW5nKGtleSsxNiwgMTQpKTsKLSAgCi0g
IH0gZWxzZSB7Ci0gICAgLyoKLSAgICAgKiB3ZSdyZSBub3QgcHJvdmlkaW5nIHNlY3VyaXR5IHNl
cnZpY2VzLCBzbyBzZXQgdGhlIHBvbGljeSB0byB0aGUKLSAgICAgKiBudWxsIHBvbGljeQotICAg
ICAqCi0gICAgICogTm90ZSB0aGF0IHRoaXMgcG9saWN5IGRvZXMgbm90IGNvbmZvcm0gdG8gdGhl
IFNSVFAKLSAgICAgKiBzcGVjaWZpY2F0aW9uLCBzaW5jZSBSVENQIGF1dGhlbnRpY2F0aW9uIGlz
IHJlcXVpcmVkLiAgSG93ZXZlciwKLSAgICAgKiB0aGUgZWZmZWN0IG9mIHRoaXMgcG9saWN5IGlz
IHRvIHR1cm4gb2ZmIFNSVFAsIHNvIHRoYXQgdGhpcwotICAgICAqIGFwcGxpY2F0aW9uIGlzIG5v
dyBhIHZhbmlsbGEtZmxhdm9yZWQgUlRQIGFwcGxpY2F0aW9uLgotICAgICAqLwotICAgIHNydHBf
Y3J5cHRvX3BvbGljeV9zZXRfbnVsbF9jaXBoZXJfaG1hY19udWxsKCZwb2xpY3kucnRwKTsKLSAg
ICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X251bGxfY2lwaGVyX2htYWNfbnVsbCgmcG9saWN5LnJ0
Y3ApOwotICAgIHBvbGljeS5rZXkgPSAodWludDhfdCAqKWtleTsKLSAgICBwb2xpY3kuc3NyYy50
eXBlICAgICAgICAgICA9IHNzcmNfc3BlY2lmaWM7Ci0gICAgcG9saWN5LnNzcmMudmFsdWUgICAg
ICAgICAgPSBzc3JjOwotICAgIHBvbGljeS53aW5kb3dfc2l6ZSAgICAgICAgID0gMDsKLSAgICBw
b2xpY3kuYWxsb3dfcmVwZWF0X3R4ICAgICA9IDA7Ci0gICAgcG9saWN5LmVrdCAgICAgICAgICAg
ICAgICAgPSBOVUxMOwotICAgIHBvbGljeS5uZXh0ICAgICAgICAgICAgICAgID0gTlVMTDsKLSAg
fQotCi0gIGlmIChwcm9nX3R5cGUgPT0gc2VuZGVyKSB7CiAKKyAgICBpZiAocHJvZ190eXBlID09
IHNlbmRlcikgewogI2lmIEJFVwotICAgIC8qIGJpbmQgdG8gbG9jYWwgc29ja2V0ICh0byBtYXRj
aCBjcnlwdG8gcG9saWN5LCBpZiBuZWVkIGJlKSAqLwotICAgIG1lbXNldCgmbG9jYWwsIDAsIHNp
emVvZihzdHJ1Y3Qgc29ja2FkZHJfaW4pKTsKLSAgICBsb2NhbC5zaW5fYWRkci5zX2FkZHIgPSBo
dG9ubChJTkFERFJfQU5ZKTsKLSAgICBsb2NhbC5zaW5fcG9ydCA9IGh0b25zKHBvcnQpOwotICAg
IHJldCA9IGJpbmQoc29jaywgKHN0cnVjdCBzb2NrYWRkciAqKSAmbG9jYWwsIHNpemVvZihzdHJ1
Y3Qgc29ja2FkZHJfaW4pKTsKLSAgICBpZiAocmV0IDwgMCkgewotICAgICAgZnByaW50ZihzdGRl
cnIsICIlczogYmluZCBmYWlsZWRcbiIsIGFyZ3ZbMF0pOwotICAgICAgcGVycm9yKCIiKTsKLSAg
ICAgIGV4aXQoMSk7IAotICAgIH0KKyAgICAgICAgLyogYmluZCB0byBsb2NhbCBzb2NrZXQgKHRv
IG1hdGNoIGNyeXB0byBwb2xpY3ksIGlmIG5lZWQgYmUpICovCisgICAgICAgIG1lbXNldCgmbG9j
YWwsIDAsIHNpemVvZihzdHJ1Y3Qgc29ja2FkZHJfaW4pKTsKKyAgICAgICAgbG9jYWwuc2luX2Fk
ZHIuc19hZGRyID0gaHRvbmwoSU5BRERSX0FOWSk7CisgICAgICAgIGxvY2FsLnNpbl9wb3J0ID0g
aHRvbnMocG9ydCk7CisgICAgICAgIHJldCA9IGJpbmQoc29jaywgKHN0cnVjdCBzb2NrYWRkciAq
KSZsb2NhbCwgc2l6ZW9mKHN0cnVjdCBzb2NrYWRkcl9pbikpOworICAgICAgICBpZiAocmV0IDwg
MCkgeworICAgICAgICAgICAgZnByaW50ZihzdGRlcnIsICIlczogYmluZCBmYWlsZWRcbiIsIGFy
Z3ZbMF0pOworICAgICAgICAgICAgcGVycm9yKCIiKTsKKyAgICAgICAgICAgIGV4aXQoMSk7Cisg
ICAgICAgIH0KICNlbmRpZiAvKiBCRVcgKi8KIAotICAgIC8qIGluaXRpYWxpemUgc2VuZGVyJ3Mg
cnRwIGFuZCBzcnRwIGNvbnRleHRzICovCi0gICAgc25kID0gcnRwX3NlbmRlcl9hbGxvYygpOwot
ICAgIGlmIChzbmQgPT0gTlVMTCkgewotICAgICAgZnByaW50ZihzdGRlcnIsICJlcnJvcjogbWFs
bG9jKCkgZmFpbGVkXG4iKTsKLSAgICAgIGV4aXQoMSk7Ci0gICAgfQotICAgIHJ0cF9zZW5kZXJf
aW5pdChzbmQsIHNvY2ssIG5hbWUsIHNzcmMpOyAKLSAgICBzdGF0dXMgPSBydHBfc2VuZGVyX2lu
aXRfc3J0cChzbmQsICZwb2xpY3kpOwotICAgIGlmIChzdGF0dXMpIHsKLSAgICAgIGZwcmludGYo
c3RkZXJyLCAKLQkgICAgICAiZXJyb3I6IHNydHBfY3JlYXRlKCkgZmFpbGVkIHdpdGggY29kZSAl
ZFxuIiwgCi0JICAgICAgc3RhdHVzKTsKLSAgICAgIGV4aXQoMSk7Ci0gICAgfQotIAotICAgIC8q
IG9wZW4gZGljdGlvbmFyeSAqLwotICAgIGRpY3QgPSBmb3BlbiAoZGljdGZpbGUsICJyIik7Ci0g
ICAgaWYgKGRpY3QgPT0gTlVMTCkgewotICAgICAgZnByaW50ZihzdGRlcnIsICIlczogY291bGRu
J3Qgb3BlbiBmaWxlICVzXG4iLCBhcmd2WzBdLCBkaWN0ZmlsZSk7Ci0gICAgICBpZiAoQUREUl9J
U19NVUxUSUNBU1QocmN2cl9hZGRyLnNfYWRkcikpIHsKLSAgCWxlYXZlX2dyb3VwKHNvY2ssIG1y
ZXEsIGFyZ3ZbMF0pOwotICAgICAgfQotICAgICAgZXhpdCgxKTsKLSAgICB9Ci0gICAgICAgICAg
Ci0gICAgLyogcmVhZCB3b3JkcyBmcm9tIGRpY3Rpb25hcnksIHRoZW4gc2VuZCB0aGVtIG9mZiAq
LwotICAgIHdoaWxlICghaW50ZXJydXB0ZWQgJiYgZmdldHMod29yZCwgTUFYX1dPUkRfTEVOLCBk
aWN0KSAhPSBOVUxMKSB7IAotICAgICAgbGVuID0gc3RybGVuKHdvcmQpICsgMTsgIC8qIHBsdXMg
b25lIGZvciBudWxsICovCi0gICAgICAKLSAgICAgIGlmIChsZW4gPiBNQVhfV09SRF9MRU4pIAot
CXByaW50ZigiZXJyb3I6IHdvcmQgJXMgdG9vIGxhcmdlIHRvIHNlbmRcbiIsIHdvcmQpOwotICAg
ICAgZWxzZSB7Ci0JcnRwX3NlbmR0byhzbmQsIHdvcmQsIGxlbik7Ci0gICAgICAgIHByaW50Zigi
c2VuZGluZyB3b3JkOiAlcyIsIHdvcmQpOwotICAgICAgfQotICAgICAgdXNsZWVwKFVTRUNfUkFU
RSk7Ci0gICAgfQorICAgICAgICAvKiBpbml0aWFsaXplIHNlbmRlcidzIHJ0cCBhbmQgc3J0cCBj
b250ZXh0cyAqLworICAgICAgICBzbmQgPSBydHBfc2VuZGVyX2FsbG9jKCk7CisgICAgICAgIGlm
IChzbmQgPT0gTlVMTCkgeworICAgICAgICAgICAgZnByaW50ZihzdGRlcnIsICJlcnJvcjogbWFs
bG9jKCkgZmFpbGVkXG4iKTsKKyAgICAgICAgICAgIGV4aXQoMSk7CisgICAgICAgIH0KKyAgICAg
ICAgcnRwX3NlbmRlcl9pbml0KHNuZCwgc29jaywgbmFtZSwgc3NyYyk7CisgICAgICAgIHN0YXR1
cyA9IHJ0cF9zZW5kZXJfaW5pdF9zcnRwKHNuZCwgJnBvbGljeSk7CisgICAgICAgIGlmIChzdGF0
dXMpIHsKKyAgICAgICAgICAgIGZwcmludGYoc3RkZXJyLCAiZXJyb3I6IHNydHBfY3JlYXRlKCkg
ZmFpbGVkIHdpdGggY29kZSAlZFxuIiwKKyAgICAgICAgICAgICAgICAgICAgc3RhdHVzKTsKKyAg
ICAgICAgICAgIGV4aXQoMSk7CisgICAgICAgIH0KIAotICAgIHJ0cF9zZW5kZXJfZGVpbml0X3Ny
dHAoc25kKTsKLSAgICBydHBfc2VuZGVyX2RlYWxsb2Moc25kKTsKLQotICAgIGZjbG9zZShkaWN0
KTsKLSAgfSBlbHNlICB7IC8qIHByb2dfdHlwZSA9PSByZWNlaXZlciAqLwotICAgIHJ0cF9yZWNl
aXZlcl90IHJjdnI7Ci0gICAgICAgIAotICAgIGlmIChiaW5kKHNvY2ssIChzdHJ1Y3Qgc29ja2Fk
ZHIgKikmbmFtZSwgc2l6ZW9mKG5hbWUpKSA8IDApIHsKLSAgICAgIGNsb3NlKHNvY2spOwotICAg
ICAgZnByaW50ZihzdGRlcnIsICIlczogc29ja2V0IGJpbmQgZXJyb3JcbiIsIGFyZ3ZbMF0pOwot
ICAgICAgcGVycm9yKE5VTEwpOwotICAgICAgaWYgKEFERFJfSVNfTVVMVElDQVNUKHJjdnJfYWRk
ci5zX2FkZHIpKSB7Ci0gICAgCWxlYXZlX2dyb3VwKHNvY2ssIG1yZXEsIGFyZ3ZbMF0pOwotICAg
ICAgfQotICAgICAgZXhpdCgxKTsKLSAgICB9CisgICAgICAgIC8qIG9wZW4gZGljdGlvbmFyeSAq
LworICAgICAgICBkaWN0ID0gZm9wZW4oZGljdGZpbGUsICJyIik7CisgICAgICAgIGlmIChkaWN0
ID09IE5VTEwpIHsKKyAgICAgICAgICAgIGZwcmludGYoc3RkZXJyLCAiJXM6IGNvdWxkbid0IG9w
ZW4gZmlsZSAlc1xuIiwgYXJndlswXSwgZGljdGZpbGUpOworICAgICAgICAgICAgaWYgKEFERFJf
SVNfTVVMVElDQVNUKHJjdnJfYWRkci5zX2FkZHIpKSB7CisgICAgICAgICAgICAgICAgbGVhdmVf
Z3JvdXAoc29jaywgbXJlcSwgYXJndlswXSk7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBl
eGl0KDEpOworICAgICAgICB9CiAKLSAgICByY3ZyID0gcnRwX3JlY2VpdmVyX2FsbG9jKCk7Ci0g
ICAgaWYgKHJjdnIgPT0gTlVMTCkgewotICAgICAgZnByaW50ZihzdGRlcnIsICJlcnJvcjogbWFs
bG9jKCkgZmFpbGVkXG4iKTsKLSAgICAgIGV4aXQoMSk7Ci0gICAgfQotICAgIHJ0cF9yZWNlaXZl
cl9pbml0KHJjdnIsIHNvY2ssIG5hbWUsIHNzcmMpOwotICAgIHN0YXR1cyA9IHJ0cF9yZWNlaXZl
cl9pbml0X3NydHAocmN2ciwgJnBvbGljeSk7Ci0gICAgaWYgKHN0YXR1cykgewotICAgICAgZnBy
aW50ZihzdGRlcnIsIAotCSAgICAgICJlcnJvcjogc3J0cF9jcmVhdGUoKSBmYWlsZWQgd2l0aCBj
b2RlICVkXG4iLCAKLQkgICAgICBzdGF0dXMpOwotICAgICAgZXhpdCgxKTsKLSAgICB9CisgICAg
ICAgIC8qIHJlYWQgd29yZHMgZnJvbSBkaWN0aW9uYXJ5LCB0aGVuIHNlbmQgdGhlbSBvZmYgKi8K
KyAgICAgICAgd2hpbGUgKCFpbnRlcnJ1cHRlZCAmJiBmZ2V0cyh3b3JkLCBNQVhfV09SRF9MRU4s
IGRpY3QpICE9IE5VTEwpIHsKKyAgICAgICAgICAgIGxlbiA9IHN0cmxlbih3b3JkKSArIDE7IC8q
IHBsdXMgb25lIGZvciBudWxsICovCisKKyAgICAgICAgICAgIGlmIChsZW4gPiBNQVhfV09SRF9M
RU4pCisgICAgICAgICAgICAgICAgcHJpbnRmKCJlcnJvcjogd29yZCAlcyB0b28gbGFyZ2UgdG8g
c2VuZFxuIiwgd29yZCk7CisgICAgICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgICAgICBydHBf
c2VuZHRvKHNuZCwgd29yZCwgbGVuKTsKKyAgICAgICAgICAgICAgICBwcmludGYoInNlbmRpbmcg
d29yZDogJXMiLCB3b3JkKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIHVzbGVlcChVU0VD
X1JBVEUpOworICAgICAgICB9CisKKyAgICAgICAgcnRwX3NlbmRlcl9kZWluaXRfc3J0cChzbmQp
OworICAgICAgICBydHBfc2VuZGVyX2RlYWxsb2Moc25kKTsKKworICAgICAgICBmY2xvc2UoZGlj
dCk7CisgICAgfSBlbHNlIHsgLyogcHJvZ190eXBlID09IHJlY2VpdmVyICovCisgICAgICAgIHJ0
cF9yZWNlaXZlcl90IHJjdnI7CisKKyAgICAgICAgaWYgKGJpbmQoc29jaywgKHN0cnVjdCBzb2Nr
YWRkciAqKSZuYW1lLCBzaXplb2YobmFtZSkpIDwgMCkgeworICAgICAgICAgICAgY2xvc2Uoc29j
ayk7CisgICAgICAgICAgICBmcHJpbnRmKHN0ZGVyciwgIiVzOiBzb2NrZXQgYmluZCBlcnJvclxu
IiwgYXJndlswXSk7CisgICAgICAgICAgICBwZXJyb3IoTlVMTCk7CisgICAgICAgICAgICBpZiAo
QUREUl9JU19NVUxUSUNBU1QocmN2cl9hZGRyLnNfYWRkcikpIHsKKyAgICAgICAgICAgICAgICBs
ZWF2ZV9ncm91cChzb2NrLCBtcmVxLCBhcmd2WzBdKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAg
ICAgIGV4aXQoMSk7CisgICAgICAgIH0KIAotICAgIC8qIGdldCBuZXh0IHdvcmQgYW5kIGxvb3Ag
Ki8KLSAgICB3aGlsZSAoIWludGVycnVwdGVkKSB7Ci0gICAgICBsZW4gPSBNQVhfV09SRF9MRU47
Ci0gICAgICBpZiAocnRwX3JlY3Zmcm9tKHJjdnIsIHdvcmQsICZsZW4pID4gLTEpCi0JcHJpbnRm
KCJcdHdvcmQ6ICVzXG4iLCB3b3JkKTsKKyAgICAgICAgcmN2ciA9IHJ0cF9yZWNlaXZlcl9hbGxv
YygpOworICAgICAgICBpZiAocmN2ciA9PSBOVUxMKSB7CisgICAgICAgICAgICBmcHJpbnRmKHN0
ZGVyciwgImVycm9yOiBtYWxsb2MoKSBmYWlsZWRcbiIpOworICAgICAgICAgICAgZXhpdCgxKTsK
KyAgICAgICAgfQorICAgICAgICBydHBfcmVjZWl2ZXJfaW5pdChyY3ZyLCBzb2NrLCBuYW1lLCBz
c3JjKTsKKyAgICAgICAgc3RhdHVzID0gcnRwX3JlY2VpdmVyX2luaXRfc3J0cChyY3ZyLCAmcG9s
aWN5KTsKKyAgICAgICAgaWYgKHN0YXR1cykgeworICAgICAgICAgICAgZnByaW50ZihzdGRlcnIs
ICJlcnJvcjogc3J0cF9jcmVhdGUoKSBmYWlsZWQgd2l0aCBjb2RlICVkXG4iLAorICAgICAgICAg
ICAgICAgICAgICBzdGF0dXMpOworICAgICAgICAgICAgZXhpdCgxKTsKKyAgICAgICAgfQorCisg
ICAgICAgIC8qIGdldCBuZXh0IHdvcmQgYW5kIGxvb3AgKi8KKyAgICAgICAgd2hpbGUgKCFpbnRl
cnJ1cHRlZCkgeworICAgICAgICAgICAgbGVuID0gTUFYX1dPUkRfTEVOOworICAgICAgICAgICAg
aWYgKHJ0cF9yZWN2ZnJvbShyY3ZyLCB3b3JkLCAmbGVuKSA+IC0xKQorICAgICAgICAgICAgICAg
IHByaW50ZigiXHR3b3JkOiAlc1xuIiwgd29yZCk7CisgICAgICAgIH0KKworICAgICAgICBydHBf
cmVjZWl2ZXJfZGVpbml0X3NydHAocmN2cik7CisgICAgICAgIHJ0cF9yZWNlaXZlcl9kZWFsbG9j
KHJjdnIpOwogICAgIH0KLSAgICAgIAotICAgIHJ0cF9yZWNlaXZlcl9kZWluaXRfc3J0cChyY3Zy
KTsKLSAgICBydHBfcmVjZWl2ZXJfZGVhbGxvYyhyY3ZyKTsKLSAgfSAKIAotICBpZiAoQUREUl9J
U19NVUxUSUNBU1QocmN2cl9hZGRyLnNfYWRkcikpIHsKLSAgICBsZWF2ZV9ncm91cChzb2NrLCBt
cmVxLCBhcmd2WzBdKTsKLSAgfQorICAgIGlmIChBRERSX0lTX01VTFRJQ0FTVChyY3ZyX2FkZHIu
c19hZGRyKSkgeworICAgICAgICBsZWF2ZV9ncm91cChzb2NrLCBtcmVxLCBhcmd2WzBdKTsKKyAg
ICB9CiAKICNpZmRlZiBSVFBXX1VTRV9XSU5TT0NLMgotICByZXQgPSBjbG9zZXNvY2tldChzb2Nr
KTsKKyAgICByZXQgPSBjbG9zZXNvY2tldChzb2NrKTsKICNlbHNlCi0gIHJldCA9IGNsb3NlKHNv
Y2spOworICAgIHJldCA9IGNsb3NlKHNvY2spOwogI2VuZGlmCi0gIGlmIChyZXQgPCAwKSB7Ci0g
ICAgZnByaW50ZihzdGRlcnIsICIlczogRmFpbGVkIHRvIGNsb3NlIHNvY2tldCIsIGFyZ3ZbMF0p
OwotICAgIHBlcnJvcigiIik7Ci0gIH0KLQotICBzdGF0dXMgPSBzcnRwX3NodXRkb3duKCk7Ci0g
IGlmIChzdGF0dXMpIHsKLSAgICBwcmludGYoImVycm9yOiBzcnRwIHNodXRkb3duIGZhaWxlZCB3
aXRoIGVycm9yIGNvZGUgJWRcbiIsIHN0YXR1cyk7Ci0gICAgZXhpdCgxKTsKLSAgfQorICAgIGlm
IChyZXQgPCAwKSB7CisgICAgICAgIGZwcmludGYoc3RkZXJyLCAiJXM6IEZhaWxlZCB0byBjbG9z
ZSBzb2NrZXQiLCBhcmd2WzBdKTsKKyAgICAgICAgcGVycm9yKCIiKTsKKyAgICB9CisKKyAgICBz
dGF0dXMgPSBzcnRwX3NodXRkb3duKCk7CisgICAgaWYgKHN0YXR1cykgeworICAgICAgICBwcmlu
dGYoImVycm9yOiBzcnRwIHNodXRkb3duIGZhaWxlZCB3aXRoIGVycm9yIGNvZGUgJWRcbiIsIHN0
YXR1cyk7CisgICAgICAgIGV4aXQoMSk7CisgICAgfQogCiAjaWZkZWYgUlRQV19VU0VfV0lOU09D
SzIKLSAgV1NBQ2xlYW51cCgpOworICAgIFdTQUNsZWFudXAoKTsKICNlbmRpZgogCi0gIHJldHVy
biAwOworICAgIHJldHVybiAwOwogfQogCi0KLXZvaWQKLXVzYWdlKGNoYXIgKnN0cmluZykgewot
Ci0gIHByaW50ZigidXNhZ2U6ICVzIFstZCA8ZGVidWc+XSogWy1rIDxrZXk+IFstYV1bLWVdXSAi
Ci0JICJbLXMgfCAtcl0gZGVzdF9pcCBkZXN0X3BvcnRcbiIKLQkgIm9yICAgICAlcyAtbFxuIgot
CSAid2hlcmUgIC1hIHVzZSBtZXNzYWdlIGF1dGhlbnRpY2F0aW9uXG4iCi0JICIgICAgICAgLWUg
PGtleSBzaXplPiB1c2UgZW5jcnlwdGlvbiAodXNlIDEyOCBvciAyNTYgZm9yIGtleSBzaXplKVxu
IgotCSAiICAgICAgIC1nIFVzZSBBRVMtR0NNIG1vZGUgKG11c3QgYmUgdXNlZCB3aXRoIC1lKVxu
IgotCSAiICAgICAgIC10IDx0YWcgc2l6ZT4gVGFnIHNpemUgdG8gdXNlIGluIEdDTSBtb2RlICh1
c2UgOCBvciAxNilcbiIKLQkgIiAgICAgICAtayA8a2V5PiAgc2V0cyB0aGUgc3J0cCBtYXN0ZXIg
a2V5IGdpdmVuIGluIGhleGFkZWNpbWFsXG4iCi0JICIgICAgICAgLWIgPGtleT4gIHNldHMgdGhl
IHNydHAgbWFzdGVyIGtleSBnaXZlbiBpbiBiYXNlNjRcbiIKLQkgIiAgICAgICAtcyBhY3QgYXMg
cnRwIHNlbmRlclxuIgotCSAiICAgICAgIC1yIGFjdCBhcyBydHAgcmVjZWl2ZXJcbiIKLQkgIiAg
ICAgICAtbCBsaXN0IGRlYnVnIG1vZHVsZXNcbiIKLQkgIiAgICAgICAtZCA8ZGVidWc+IHR1cm4g
b24gZGVidWdnaW5nIGZvciBtb2R1bGUgPGRlYnVnPlxuIiwKLQkgc3RyaW5nLCBzdHJpbmcpOwot
ICBleGl0KDEpOwotICAKK3ZvaWQgdXNhZ2UoY2hhciAqc3RyaW5nKQoreworICAgIHByaW50Zigi
dXNhZ2U6ICVzIFstZCA8ZGVidWc+XSogWy1rIDxrZXk+IFstYV1bLWVdXSAiCisgICAgICAgICAg
ICJbLXMgfCAtcl0gZGVzdF9pcCBkZXN0X3BvcnRcbiIKKyAgICAgICAgICAgIm9yICAgICAlcyAt
bFxuIgorICAgICAgICAgICAid2hlcmUgIC1hIHVzZSBtZXNzYWdlIGF1dGhlbnRpY2F0aW9uXG4i
CisgICAgICAgICAgICIgICAgICAgLWUgPGtleSBzaXplPiB1c2UgZW5jcnlwdGlvbiAodXNlIDEy
OCBvciAyNTYgZm9yIGtleSBzaXplKVxuIgorICAgICAgICAgICAiICAgICAgIC1nIFVzZSBBRVMt
R0NNIG1vZGUgKG11c3QgYmUgdXNlZCB3aXRoIC1lKVxuIgorICAgICAgICAgICAiICAgICAgIC10
IDx0YWcgc2l6ZT4gVGFnIHNpemUgdG8gdXNlIGluIEdDTSBtb2RlICh1c2UgOCBvciAxNilcbiIK
KyAgICAgICAgICAgIiAgICAgICAtayA8a2V5PiAgc2V0cyB0aGUgc3J0cCBtYXN0ZXIga2V5IGdp
dmVuIGluIGhleGFkZWNpbWFsXG4iCisgICAgICAgICAgICIgICAgICAgLWIgPGtleT4gIHNldHMg
dGhlIHNydHAgbWFzdGVyIGtleSBnaXZlbiBpbiBiYXNlNjRcbiIKKyAgICAgICAgICAgIiAgICAg
ICAtcyBhY3QgYXMgcnRwIHNlbmRlclxuIgorICAgICAgICAgICAiICAgICAgIC1yIGFjdCBhcyBy
dHAgcmVjZWl2ZXJcbiIKKyAgICAgICAgICAgIiAgICAgICAtbCBsaXN0IGRlYnVnIG1vZHVsZXNc
biIKKyAgICAgICAgICAgIiAgICAgICAtZCA8ZGVidWc+IHR1cm4gb24gZGVidWdnaW5nIGZvciBt
b2R1bGUgPGRlYnVnPlxuIgorICAgICAgICAgICAiICAgICAgIC13IDx3b3Jkc2ZpbGU+IHVzZSA8
d29yZHNmaWxlPiBmb3IgaW5wdXQsIHJhdGhlciB0aGFuICVzXG4iLAorICAgICAgICAgICBzdHJp
bmcsIHN0cmluZywgRElDVF9GSUxFKTsKKyAgICBleGl0KDEpOwogfQogCit2b2lkIGxlYXZlX2dy
b3VwKGludCBzb2NrLCBzdHJ1Y3QgaXBfbXJlcSBtcmVxLCBjaGFyICpuYW1lKQoreworICAgIGlu
dCByZXQ7CiAKLXZvaWQKLWxlYXZlX2dyb3VwKGludCBzb2NrLCBzdHJ1Y3QgaXBfbXJlcSBtcmVx
LCBjaGFyICpuYW1lKSB7Ci0gIGludCByZXQ7Ci0KLSAgcmV0ID0gc2V0c29ja29wdChzb2NrLCBJ
UFBST1RPX0lQLCBJUF9EUk9QX01FTUJFUlNISVAsICh2b2lkKikmbXJlcSwKLQkJICAgc2l6ZW9m
KG1yZXEpKTsKLSAgaWYgKHJldCA8IDApIHsKLQlmcHJpbnRmKHN0ZGVyciwgIiVzOiBGYWlsZWQg
dG8gbGVhdmUgbXVsdGljYXN0IGdyb3VwIiwgbmFtZSk7Ci0JcGVycm9yKCIiKTsKLSAgfQorICAg
IHJldCA9IHNldHNvY2tvcHQoc29jaywgSVBQUk9UT19JUCwgSVBfRFJPUF9NRU1CRVJTSElQLCAo
dm9pZCAqKSZtcmVxLAorICAgICAgICAgICAgICAgICAgICAgc2l6ZW9mKG1yZXEpKTsKKyAgICBp
ZiAocmV0IDwgMCkgeworICAgICAgICBmcHJpbnRmKHN0ZGVyciwgIiVzOiBGYWlsZWQgdG8gbGVh
dmUgbXVsdGljYXN0IGdyb3VwIiwgbmFtZSk7CisgICAgICAgIHBlcnJvcigiIik7CisgICAgfQog
fQogCiB2b2lkIGhhbmRsZV9zaWduYWwoaW50IHNpZ251bSkKIHsKLSAgaW50ZXJydXB0ZWQgPSAx
OwotICAvKiBSZXNldCBoYW5kbGVyIGV4cGxpY2l0bHksIGluIGNhc2Ugd2UgZG9uJ3QgaGF2ZSBz
aWdhY3Rpb24oKSAoYW5kIHNpZ25hbCgpCi0gICAgIGhhcyBCU0Qgc2VtYW50aWNzKSwgb3Igd2Ug
ZG9uJ3QgaGF2ZSBTQV9SRVNFVEhBTkQgKi8KLSAgc2lnbmFsKHNpZ251bSwgU0lHX0RGTCk7Cisg
ICAgaW50ZXJydXB0ZWQgPSAxOworICAgIC8qIFJlc2V0IGhhbmRsZXIgZXhwbGljaXRseSwgaW4g
Y2FzZSB3ZSBkb24ndCBoYXZlIHNpZ2FjdGlvbigpIChhbmQgc2lnbmFsKCkKKyAgICAgICBoYXMg
QlNEIHNlbWFudGljcyksIG9yIHdlIGRvbid0IGhhdmUgU0FfUkVTRVRIQU5EICovCisgICAgc2ln
bmFsKHNpZ251bSwgU0lHX0RGTCk7CiB9CiAKLWludCBzZXR1cF9zaWduYWxfaGFuZGxlcihjaGFy
KiBuYW1lKQoraW50IHNldHVwX3NpZ25hbF9oYW5kbGVyKGNoYXIgKm5hbWUpCiB7CiAjaWYgSEFW
RV9TSUdBQ1RJT04KLSAgc3RydWN0IHNpZ2FjdGlvbiBhY3Q7Ci0gIG1lbXNldCgmYWN0LCAwLCBz
aXplb2YoYWN0KSk7CisgICAgc3RydWN0IHNpZ2FjdGlvbiBhY3Q7CisgICAgbWVtc2V0KCZhY3Qs
IDAsIHNpemVvZihhY3QpKTsKIAotICBhY3Quc2FfaGFuZGxlciA9IGhhbmRsZV9zaWduYWw7Ci0g
IHNpZ2VtcHR5c2V0KCZhY3Quc2FfbWFzayk7CisgICAgYWN0LnNhX2hhbmRsZXIgPSBoYW5kbGVf
c2lnbmFsOworICAgIHNpZ2VtcHR5c2V0KCZhY3Quc2FfbWFzayk7CiAjaWYgZGVmaW5lZChTQV9S
RVNFVEhBTkQpCi0gIGFjdC5zYV9mbGFncyA9IFNBX1JFU0VUSEFORDsKKyAgICBhY3Quc2FfZmxh
Z3MgPSBTQV9SRVNFVEhBTkQ7CiAjZWxzZQotICBhY3Quc2FfZmxhZ3MgPSAwOworICAgIGFjdC5z
YV9mbGFncyA9IDA7CiAjZW5kaWYKLSAgLyogTm90ZSB0aGF0IHdlJ3JlIG5vdCBzZXR0aW5nIFNB
X1JFU1RBUlQ7IHdlIHdhbnQgcmVjdmZyb20gdG8gcmV0dXJuCi0gICAqIEVJTlRSIHdoZW4gd2Ug
c2lnbmFsIHRoZSByZWNlaXZlci4gKi8KLSAgCi0gIGlmIChzaWdhY3Rpb24oU0lHVEVSTSwgJmFj
dCwgTlVMTCkgIT0gMCkgewotICAgIGZwcmludGYoc3RkZXJyLCAiJXM6IGVycm9yIHNldHRpbmcg
dXAgc2lnbmFsIGhhbmRsZXIiLCBuYW1lKTsKLSAgICBwZXJyb3IoIiIpOwotICAgIHJldHVybiAt
MTsKLSAgfQorICAgIC8qIE5vdGUgdGhhdCB3ZSdyZSBub3Qgc2V0dGluZyBTQV9SRVNUQVJUOyB3
ZSB3YW50IHJlY3Zmcm9tIHRvIHJldHVybgorICAgICAqIEVJTlRSIHdoZW4gd2Ugc2lnbmFsIHRo
ZSByZWNlaXZlci4gKi8KKworICAgIGlmIChzaWdhY3Rpb24oU0lHVEVSTSwgJmFjdCwgTlVMTCkg
IT0gMCkgeworICAgICAgICBmcHJpbnRmKHN0ZGVyciwgIiVzOiBlcnJvciBzZXR0aW5nIHVwIHNp
Z25hbCBoYW5kbGVyIiwgbmFtZSk7CisgICAgICAgIHBlcnJvcigiIik7CisgICAgICAgIHJldHVy
biAtMTsKKyAgICB9CiAjZWxzZQotICBpZiAoc2lnbmFsKFNJR1RFUk0sIGhhbmRsZV9zaWduYWwp
ID09IFNJR19FUlIpIHsKLSAgICBmcHJpbnRmKHN0ZGVyciwgIiVzOiBlcnJvciBzZXR0aW5nIHVw
IHNpZ25hbCBoYW5kbGVyIiwgbmFtZSk7Ci0gICAgcGVycm9yKCIiKTsKLSAgICByZXR1cm4gLTE7
Ci0gIH0KKyAgICBpZiAoc2lnbmFsKFNJR1RFUk0sIGhhbmRsZV9zaWduYWwpID09IFNJR19FUlIp
IHsKKyAgICAgICAgZnByaW50ZihzdGRlcnIsICIlczogZXJyb3Igc2V0dGluZyB1cCBzaWduYWwg
aGFuZGxlciIsIG5hbWUpOworICAgICAgICBwZXJyb3IoIiIpOworICAgICAgICByZXR1cm4gLTE7
CisgICAgfQogI2VuZGlmCi0gIHJldHVybiAwOworICAgIHJldHVybiAwOwogfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRw
L3Rlc3Qvc3J0cF9kcml2ZXIuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlic3J0cC90ZXN0L3NydHBfZHJpdmVyLmMKaW5kZXggNTYwNTJhNjMyMWQ1
MTdmMTVkYzI2MTJlYzQzNmJlZDI4NzNmYmJmMS4uNGVhOGZlNTMwMmMxYmUzNDkyOWY5YjBkOWYy
NzcxMGJiMTNjY2JjZSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL3Rlc3Qvc3J0cF9kcml2ZXIuYworKysgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvdGVzdC9zcnRw
X2RyaXZlci5jCkBAIC0xLDUgKzEsMyBAQAotCi0KIC8qCiAgKiBzcnRwX2RyaXZlci5jCiAgKgpA
QCAtNDQsNyArNDIsNiBAQAogICoKICAqLwogCi0KICNpbmNsdWRlIDxzdHJpbmcuaD4gICAvKiBm
b3IgbWVtY3B5KCkgICAgICAgICAgKi8KICNpbmNsdWRlIDx0aW1lLmg+ICAgICAvKiBmb3IgY2xv
Y2soKSAgICAgICAgICAgKi8KICNpbmNsdWRlIDxzdGRsaWIuaD4gICAvKiBmb3IgbWFsbG9jKCks
IGZyZWUoKSAgKi8KQEAgLTU1LDk2ICs1Miw3MyBAQAogI2luY2x1ZGUgInV0aWwuaCIKIAogI2lm
ZGVmIEhBVkVfTkVUSU5FVF9JTl9ICi0jIGluY2x1ZGUgPG5ldGluZXQvaW4uaD4KKyNpbmNsdWRl
IDxuZXRpbmV0L2luLmg+CiAjZWxpZiBkZWZpbmVkIEhBVkVfV0lOU09DSzJfSAotIyBpbmNsdWRl
IDx3aW5zb2NrMi5oPgorI2luY2x1ZGUgPHdpbnNvY2syLmg+CiAjZW5kaWYKIAogI2RlZmluZSBQ
UklOVF9SRUZFUkVOQ0VfUEFDS0VUIDEKIAotc3J0cF9lcnJfc3RhdHVzX3QKLXNydHBfdmFsaWRh
dGUodm9pZCk7CitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3ZhbGlkYXRlKHZvaWQpOwogCiAjaWZk
ZWYgT1BFTlNTTAotc3J0cF9lcnJfc3RhdHVzX3QKLXNydHBfdmFsaWRhdGVfZ2NtKHZvaWQpOwor
c3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF92YWxpZGF0ZV9nY20odm9pZCk7CiAjZW5kaWYKIAotc3J0
cF9lcnJfc3RhdHVzX3QKLXNydHBfdmFsaWRhdGVfZW5jcnlwdGVkX2V4dGVuc2lvbnNfaGVhZGVy
cyh2b2lkKTsKK3NydHBfZXJyX3N0YXR1c190IHNydHBfdmFsaWRhdGVfZW5jcnlwdGVkX2V4dGVu
c2lvbnNfaGVhZGVycyh2b2lkKTsKIAogI2lmZGVmIE9QRU5TU0wKLXNydHBfZXJyX3N0YXR1c190
Ci1zcnRwX3ZhbGlkYXRlX2VuY3J5cHRlZF9leHRlbnNpb25zX2hlYWRlcnNfZ2NtKHZvaWQpOwor
c3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF92YWxpZGF0ZV9lbmNyeXB0ZWRfZXh0ZW5zaW9uc19oZWFk
ZXJzX2djbSh2b2lkKTsKICNlbmRpZgogCi1zcnRwX2Vycl9zdGF0dXNfdAotc3J0cF92YWxpZGF0
ZV9hZXNfMjU2KHZvaWQpOworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF92YWxpZGF0ZV9hZXNfMjU2
KHZvaWQpOwogCi1zcnRwX2Vycl9zdGF0dXNfdAotc3J0cF9jcmVhdGVfYmlnX3BvbGljeShzcnRw
X3BvbGljeV90ICoqbGlzdCk7CitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NyZWF0ZV9iaWdfcG9s
aWN5KHNydHBfcG9saWN5X3QgKipsaXN0KTsKIAotc3J0cF9lcnJfc3RhdHVzX3QKLXNydHBfZGVh
bGxvY19iaWdfcG9saWN5KHNydHBfcG9saWN5X3QgKmxpc3QpOworc3J0cF9lcnJfc3RhdHVzX3Qg
c3J0cF9kZWFsbG9jX2JpZ19wb2xpY3koc3J0cF9wb2xpY3lfdCAqbGlzdCk7CiAKLXNydHBfZXJy
X3N0YXR1c190Ci1zcnRwX3Rlc3RfZW1wdHlfcGF5bG9hZCh2b2lkKTsKK3NydHBfZXJyX3N0YXR1
c190IHNydHBfdGVzdF9lbXB0eV9wYXlsb2FkKHZvaWQpOwogCiAjaWZkZWYgT1BFTlNTTAotc3J0
cF9lcnJfc3RhdHVzX3QKLXNydHBfdGVzdF9lbXB0eV9wYXlsb2FkX2djbSh2b2lkKTsKK3NydHBf
ZXJyX3N0YXR1c190IHNydHBfdGVzdF9lbXB0eV9wYXlsb2FkX2djbSh2b2lkKTsKICNlbmRpZgog
Ci1zcnRwX2Vycl9zdGF0dXNfdAotc3J0cF90ZXN0X3JlbW92ZV9zdHJlYW0odm9pZCk7CitzcnRw
X2Vycl9zdGF0dXNfdCBzcnRwX3Rlc3RfcmVtb3ZlX3N0cmVhbSh2b2lkKTsKIAotc3J0cF9lcnJf
c3RhdHVzX3QKLXNydHBfdGVzdF91cGRhdGUodm9pZCk7CitzcnRwX2Vycl9zdGF0dXNfdCBzcnRw
X3Rlc3RfdXBkYXRlKHZvaWQpOwogCi1zcnRwX2Vycl9zdGF0dXNfdAotc3J0cF90ZXN0X3Byb3Rl
Y3RfdHJhaWxlcl9sZW5ndGgodm9pZCk7CitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3Rlc3RfcHJv
dGVjdF90cmFpbGVyX2xlbmd0aCh2b2lkKTsKIAotc3J0cF9lcnJfc3RhdHVzX3QKLXNydHBfdGVz
dF9wcm90ZWN0X3J0Y3BfdHJhaWxlcl9sZW5ndGgodm9pZCk7CitzcnRwX2Vycl9zdGF0dXNfdCBz
cnRwX3Rlc3RfcHJvdGVjdF9ydGNwX3RyYWlsZXJfbGVuZ3RoKHZvaWQpOwogCi1zcnRwX2Vycl9z
dGF0dXNfdAotc3J0cF90ZXN0X2dldF9yb2Modm9pZCk7CitzcnRwX2Vycl9zdGF0dXNfdCBzcnRw
X3Rlc3RfZ2V0X3JvYyh2b2lkKTsKIAotc3J0cF9lcnJfc3RhdHVzX3QKLXNydHBfdGVzdF9zZXRf
cmVjZWl2ZXJfcm9jKHZvaWQpOworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF90ZXN0X3NldF9yZWNl
aXZlcl9yb2Modm9pZCk7CiAKLXNydHBfZXJyX3N0YXR1c190Ci1zcnRwX3Rlc3Rfc2V0X3NlbmRl
cl9yb2Modm9pZCk7CitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3Rlc3Rfc2V0X3NlbmRlcl9yb2Mo
dm9pZCk7CiAKLWRvdWJsZQotc3J0cF9iaXRzX3Blcl9zZWNvbmQoaW50IG1zZ19sZW5fb2N0ZXRz
LCBjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3kpOworZG91YmxlIHNydHBfYml0c19wZXJfc2Vj
b25kKGludCBtc2dfbGVuX29jdGV0cywgY29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5KTsKIAot
ZG91YmxlCi1zcnRwX3JlamVjdGlvbnNfcGVyX3NlY29uZChpbnQgbXNnX2xlbl9vY3RldHMsIGNv
bnN0IHNydHBfcG9saWN5X3QgKnBvbGljeSk7Citkb3VibGUgc3J0cF9yZWplY3Rpb25zX3Blcl9z
ZWNvbmQoaW50IG1zZ19sZW5fb2N0ZXRzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGNvbnN0IHNydHBfcG9saWN5X3QgKnBvbGljeSk7CiAKLXZvaWQKLXNydHBfZG9fdGltaW5n
KGNvbnN0IHNydHBfcG9saWN5X3QgKnBvbGljeSk7Cit2b2lkIHNydHBfZG9fdGltaW5nKGNvbnN0
IHNydHBfcG9saWN5X3QgKnBvbGljeSk7CiAKLXZvaWQKLXNydHBfZG9fcmVqZWN0aW9uX3RpbWlu
Zyhjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3kpOwordm9pZCBzcnRwX2RvX3JlamVjdGlvbl90
aW1pbmcoY29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5KTsKIAotc3J0cF9lcnJfc3RhdHVzX3QK
LXNydHBfdGVzdChjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3ksIGludCBleHRlbnNpb25faGVh
ZGVyLCBpbnQgbWtpX2luZGV4KTsKK3NydHBfZXJyX3N0YXR1c190IHNydHBfdGVzdChjb25zdCBz
cnRwX3BvbGljeV90ICpwb2xpY3ksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IGV4
dGVuc2lvbl9oZWFkZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IG1raV9pbmRl
eCk7CiAKLXNydHBfZXJyX3N0YXR1c190Ci1zcnRjcF90ZXN0KGNvbnN0IHNydHBfcG9saWN5X3Qg
KnBvbGljeSwgaW50IG1raV9pbmRleCk7CitzcnRwX2Vycl9zdGF0dXNfdCBzcnRjcF90ZXN0KGNv
bnN0IHNydHBfcG9saWN5X3QgKnBvbGljeSwgaW50IG1raV9pbmRleCk7CiAKLXNydHBfZXJyX3N0
YXR1c190Ci1zcnRwX3Nlc3Npb25fcHJpbnRfcG9saWN5KHNydHBfdCBzcnRwKTsKK3NydHBfZXJy
X3N0YXR1c190IHNydHBfc2Vzc2lvbl9wcmludF9wb2xpY3koc3J0cF90IHNydHApOwogCi1zcnRw
X2Vycl9zdGF0dXNfdAotc3J0cF9wcmludF9wb2xpY3koY29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9s
aWN5KTsKK3NydHBfZXJyX3N0YXR1c190IHNydHBfcHJpbnRfcG9saWN5KGNvbnN0IHNydHBfcG9s
aWN5X3QgKnBvbGljeSk7CiAKLWNoYXIgKgotc3J0cF9wYWNrZXRfdG9fc3RyaW5nKHNydHBfaGRy
X3QgKmhkciwgaW50IHBhY2tldF9sZW4pOworY2hhciAqc3J0cF9wYWNrZXRfdG9fc3RyaW5nKHNy
dHBfaGRyX3QgKmhkciwgaW50IHBhY2tldF9sZW4pOwogCi1kb3VibGUKLW1pcHNfZXN0aW1hdGUo
aW50IG51bV90cmlhbHMsIGludCAqaWdub3JlKTsKK2RvdWJsZSBtaXBzX2VzdGltYXRlKGludCBu
dW1fdHJpYWxzLCBpbnQgKmlnbm9yZSk7CiAKICNkZWZpbmUgVEVTVF9NS0lfSURfU0laRSA0CiAK
QEAgLTE1Myw2ICsxMjcsNyBAQCBleHRlcm4gdWludDhfdCB0ZXN0X2tleV8yWzQ2XTsKIGV4dGVy
biB1aW50OF90IHRlc3RfbWtpX2lkW1RFU1RfTUtJX0lEX1NJWkVdOwogZXh0ZXJuIHVpbnQ4X3Qg
dGVzdF9ta2lfaWRfMltURVNUX01LSV9JRF9TSVpFXTsKIAorLy8gY2xhbmctZm9ybWF0IG9mZgog
c3J0cF9tYXN0ZXJfa2V5X3QgbWFzdGVyX2tleV8xID0gewogICAgIHRlc3Rfa2V5LAogICAgIHRl
c3RfbWtpX2lkLApAQCAtMTY5LDkgKzE0NCw5IEBAIHNydHBfbWFzdGVyX2tleV90ICp0ZXN0X2tl
eXNbMl0gPSB7CiAgICAgJm1hc3Rlcl9rZXlfMSwKICAgICAmbWFzdGVyX2tleV8yCiB9OworLy8g
Y2xhbmctZm9ybWF0IG9uCiAKLXZvaWQKLXVzYWdlIChjaGFyICpwcm9nX25hbWUpCit2b2lkIHVz
YWdlKGNoYXIgKnByb2dfbmFtZSkKIHsKICAgICBwcmludGYoInVzYWdlOiAlcyBbIC10IF1bIC1j
IF1bIC12IF1bIC1vIF1bLWQgPGRlYnVnX21vZHVsZT4gXSogWyAtbCBdXG4iCiAgICAgICAgICAg
ICIgIC10ICAgICAgICAgcnVuIHRpbWluZyB0ZXN0XG4iCkBAIC0xODAsMTkgKzE1NSwyNyBAQCB1
c2FnZSAoY2hhciAqcHJvZ19uYW1lKQogICAgICAgICAgICAiICAtdiAgICAgICAgIHJ1biB2YWxp
ZGF0aW9uIHRlc3RzXG4iCiAgICAgICAgICAgICIgIC1vICAgICAgICAgb3V0cHV0IGxvZ2dpbmcg
dG8gc3Rkb3V0XG4iCiAgICAgICAgICAgICIgIC1kIDxtb2Q+ICAgdHVybiBvbiBkZWJ1Z2dpbmcg
bW9kdWxlIDxtb2Q+XG4iCi0gICAgICAgICAgICIgIC1sICAgICAgICAgbGlzdCBkZWJ1Z2dpbmcg
bW9kdWxlc1xuIiwgcHJvZ19uYW1lKTsKKyAgICAgICAgICAgIiAgLWwgICAgICAgICBsaXN0IGRl
YnVnZ2luZyBtb2R1bGVzXG4iLAorICAgICAgICAgICBwcm9nX25hbWUpOwogICAgIGV4aXQoMSk7
CiB9CiAKLXZvaWQKLWxvZ19oYW5kbGVyIChzcnRwX2xvZ19sZXZlbF90IGxldmVsLCBjb25zdCBj
aGFyICogbXNnLCB2b2lkICogZGF0YSkKK3ZvaWQgbG9nX2hhbmRsZXIoc3J0cF9sb2dfbGV2ZWxf
dCBsZXZlbCwgY29uc3QgY2hhciAqbXNnLCB2b2lkICpkYXRhKQogewogICAgIGNoYXIgbGV2ZWxf
Y2hhciA9ICc/JzsKLSAgICBzd2l0Y2gobGV2ZWwpIHsKLSAgICAgICAgY2FzZSBzcnRwX2xvZ19s
ZXZlbF9lcnJvcjogbGV2ZWxfY2hhciA9ICdlJzsgYnJlYWs7Ci0gICAgICAgIGNhc2Ugc3J0cF9s
b2dfbGV2ZWxfd2FybmluZzogbGV2ZWxfY2hhciA9ICd3JzsgYnJlYWs7Ci0gICAgICAgIGNhc2Ug
c3J0cF9sb2dfbGV2ZWxfaW5mbzogbGV2ZWxfY2hhciA9ICdpJzsgYnJlYWs7Ci0gICAgICAgIGNh
c2Ugc3J0cF9sb2dfbGV2ZWxfZGVidWc6IGxldmVsX2NoYXIgPSAnZCc7IGJyZWFrOworICAgIHN3
aXRjaCAobGV2ZWwpIHsKKyAgICBjYXNlIHNydHBfbG9nX2xldmVsX2Vycm9yOgorICAgICAgICBs
ZXZlbF9jaGFyID0gJ2UnOworICAgICAgICBicmVhazsKKyAgICBjYXNlIHNydHBfbG9nX2xldmVs
X3dhcm5pbmc6CisgICAgICAgIGxldmVsX2NoYXIgPSAndyc7CisgICAgICAgIGJyZWFrOworICAg
IGNhc2Ugc3J0cF9sb2dfbGV2ZWxfaW5mbzoKKyAgICAgICAgbGV2ZWxfY2hhciA9ICdpJzsKKyAg
ICAgICAgYnJlYWs7CisgICAgY2FzZSBzcnRwX2xvZ19sZXZlbF9kZWJ1ZzoKKyAgICAgICAgbGV2
ZWxfY2hhciA9ICdkJzsKKyAgICAgICAgYnJlYWs7CiAgICAgfQogICAgIHByaW50ZigiU1JUUC1M
T0cgWyVjXTogJXNcbiIsIGxldmVsX2NoYXIsIG1zZyk7CiB9CkBAIC0yMDQsNyArMTg3LDYgQEAg
bG9nX2hhbmRsZXIgKHNydHBfbG9nX2xldmVsX3QgbGV2ZWwsIGNvbnN0IGNoYXIgKiBtc2csIHZv
aWQgKiBkYXRhKQogCiBleHRlcm4gY29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5X2FycmF5W107
CiAKLQogLyogdGhlIHdpbGRjYXJkX3BvbGljeSBpcyBkZWNsYXJlZCBiZWxvdzsgaXQgaGFzIGEg
d2lsZGNhcmQgc3NyYyAqLwogCiBleHRlcm4gY29uc3Qgc3J0cF9wb2xpY3lfdCB3aWxkY2FyZF9w
b2xpY3k7CkBAIC0yMTcsMjAgKzE5OSwxOSBAQCBleHRlcm4gY29uc3Qgc3J0cF9wb2xpY3lfdCB3
aWxkY2FyZF9wb2xpY3k7CiAgKi8KIAogc3J0cF9kZWJ1Z19tb2R1bGVfdCBtb2RfZHJpdmVyID0g
ewotICAgIDAsICAgICAgICAgICAgICAgIC8qIGRlYnVnZ2luZyBpcyBvZmYgYnkgZGVmYXVsdCAq
LwotICAgICJkcml2ZXIiICAgICAgICAgIC8qIHByaW50YWJsZSBuYW1lIGZvciBtb2R1bGUgICAq
LworICAgIDAsICAgICAgIC8qIGRlYnVnZ2luZyBpcyBvZmYgYnkgZGVmYXVsdCAqLworICAgICJk
cml2ZXIiIC8qIHByaW50YWJsZSBuYW1lIGZvciBtb2R1bGUgICAqLwogfTsKIAotaW50Ci1tYWlu
IChpbnQgYXJnYywgY2hhciAqYXJndltdKQoraW50IG1haW4oaW50IGFyZ2MsIGNoYXIgKmFyZ3Zb
XSkKIHsKICAgICBpbnQgcTsKLSAgICB1bnNpZ25lZCBkb190aW1pbmdfdGVzdCAgICA9IDA7Cisg
ICAgdW5zaWduZWQgZG9fdGltaW5nX3Rlc3QgPSAwOwogICAgIHVuc2lnbmVkIGRvX3JlamVjdGlv
bl90ZXN0ID0gMDsKLSAgICB1bnNpZ25lZCBkb19jb2RlY190aW1pbmcgICA9IDA7Ci0gICAgdW5z
aWduZWQgZG9fdmFsaWRhdGlvbiAgICAgPSAwOwotICAgIHVuc2lnbmVkIGRvX2xpc3RfbW9kcyAg
ICAgID0gMDsKLSAgICB1bnNpZ25lZCBkb19sb2dfc3Rkb3V0ICAgICA9IDA7CisgICAgdW5zaWdu
ZWQgZG9fY29kZWNfdGltaW5nID0gMDsKKyAgICB1bnNpZ25lZCBkb192YWxpZGF0aW9uID0gMDsK
KyAgICB1bnNpZ25lZCBkb19saXN0X21vZHMgPSAwOworICAgIHVuc2lnbmVkIGRvX2xvZ19zdGRv
dXQgPSAwOwogICAgIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKIAogICAgIC8qCkBAIC0yNTUs
NyArMjM2LDggQEAgbWFpbiAoaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKICAgICBzdGF0dXMgPSBz
cnRwX2NyeXB0b19rZXJuZWxfbG9hZF9kZWJ1Z19tb2R1bGUoJm1vZF9kcml2ZXIpOwogICAgIGlm
IChzdGF0dXMpIHsKICAgICAgICAgcHJpbnRmKCJlcnJvcjogbG9hZCBvZiBzcnRwX2RyaXZlciBk
ZWJ1ZyBtb2R1bGUgZmFpbGVkICIKLSAgICAgICAgICAgICAgICJ3aXRoIGVycm9yIGNvZGUgJWRc
biIsIHN0YXR1cyk7CisgICAgICAgICAgICAgICAid2l0aCBlcnJvciBjb2RlICVkXG4iLAorICAg
ICAgICAgICAgICAgc3RhdHVzKTsKICAgICAgICAgZXhpdCgxKTsKICAgICB9CiAKQEAgLTI5Niw4
ICsyNzgsOCBAQCBtYWluIChpbnQgYXJnYywgY2hhciAqYXJndltdKQogICAgICAgICB9CiAgICAg
fQogCi0gICAgaWYgKCFkb192YWxpZGF0aW9uICYmICFkb190aW1pbmdfdGVzdCAmJiAhZG9fY29k
ZWNfdGltaW5nCi0gICAgICAgICYmICFkb19saXN0X21vZHMgJiYgIWRvX3JlamVjdGlvbl90ZXN0
KSB7CisgICAgaWYgKCFkb192YWxpZGF0aW9uICYmICFkb190aW1pbmdfdGVzdCAmJiAhZG9fY29k
ZWNfdGltaW5nICYmCisgICAgICAgICFkb19saXN0X21vZHMgJiYgIWRvX3JlamVjdGlvbl90ZXN0
KSB7CiAgICAgICAgIHVzYWdlKGFyZ3ZbMF0pOwogICAgIH0KIApAQCAtMzI2LDUxICszMDgsNTYg
QEAgbWFpbiAoaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKICAgICAgICAgICAgIHByaW50ZigidGVz
dGluZyBzcnRwX3Byb3RlY3QgYW5kIHNydHBfdW5wcm90ZWN0XG4iKTsKICAgICAgICAgICAgIGlm
IChzcnRwX3Rlc3QoKnBvbGljeSwgMCwgLTEpID09IHNydHBfZXJyX3N0YXR1c19vaykgewogICAg
ICAgICAgICAgICAgIHByaW50ZigicGFzc2VkXG5cbiIpOwotICAgICAgICAgICAgfSBlbHNlewor
ICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICBwcmludGYoImZhaWxlZFxuIik7
CiAgICAgICAgICAgICAgICAgZXhpdCgxKTsKICAgICAgICAgICAgIH0KIAotICAgICAgICAgICAg
cHJpbnRmKCJ0ZXN0aW5nIHNydHBfcHJvdGVjdCBhbmQgc3J0cF91bnByb3RlY3Qgd2l0aCBlbmNy
eXB0ZWQgZXh0ZW5zaW9ucyBoZWFkZXJzXG4iKTsKKyAgICAgICAgICAgIHByaW50ZigidGVzdGlu
ZyBzcnRwX3Byb3RlY3QgYW5kIHNydHBfdW5wcm90ZWN0IHdpdGggZW5jcnlwdGVkICIKKyAgICAg
ICAgICAgICAgICAgICAiZXh0ZW5zaW9ucyBoZWFkZXJzXG4iKTsKICAgICAgICAgICAgIGlmIChz
cnRwX3Rlc3QoKnBvbGljeSwgMSwgLTEpID09IHNydHBfZXJyX3N0YXR1c19vaykgewogICAgICAg
ICAgICAgICAgIHByaW50ZigicGFzc2VkXG5cbiIpOwotICAgICAgICAgICAgfSBlbHNleworICAg
ICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICBwcmludGYoImZhaWxlZFxuIik7CiAg
ICAgICAgICAgICAgICAgZXhpdCgxKTsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIHByaW50
ZigidGVzdGluZyBzcnRwX3Byb3RlY3RfcnRjcCBhbmQgc3J0cF91bnByb3RlY3RfcnRjcFxuIik7
CiAgICAgICAgICAgICBpZiAoc3J0Y3BfdGVzdCgqcG9saWN5LCAtMSkgPT0gc3J0cF9lcnJfc3Rh
dHVzX29rKSB7CiAgICAgICAgICAgICAgICAgcHJpbnRmKCJwYXNzZWRcblxuIik7Ci0gICAgICAg
ICAgICB9IGVsc2V7CisgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgIHByaW50
ZigiZmFpbGVkXG4iKTsKICAgICAgICAgICAgICAgICBleGl0KDEpOwogICAgICAgICAgICAgfQot
ICAgICAgICAgICAgcHJpbnRmKCJ0ZXN0aW5nIHNydHBfcHJvdGVjdF9ydHAgYW5kIHNydHBfdW5w
cm90ZWN0X3J0cCB3aXRoIE1LSSBpbmRleCBzZXQgdG8gMFxuIik7CisgICAgICAgICAgICBwcmlu
dGYoInRlc3Rpbmcgc3J0cF9wcm90ZWN0X3J0cCBhbmQgc3J0cF91bnByb3RlY3RfcnRwIHdpdGgg
TUtJICIKKyAgICAgICAgICAgICAgICAgICAiaW5kZXggc2V0IHRvIDBcbiIpOwogICAgICAgICAg
ICAgaWYgKHNydHBfdGVzdCgqcG9saWN5LCAwLCAwKSA9PSBzcnRwX2Vycl9zdGF0dXNfb2spIHsK
ICAgICAgICAgICAgICAgICBwcmludGYoInBhc3NlZFxuXG4iKTsKLSAgICAgICAgICAgIH0gZWxz
ZXsKKyAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgcHJpbnRmKCJmYWlsZWRc
biIpOwogICAgICAgICAgICAgICAgIGV4aXQoMSk7CiAgICAgICAgICAgICB9Ci0gICAgICAgICAg
ICBwcmludGYoInRlc3Rpbmcgc3J0cF9wcm90ZWN0X3J0cCBhbmQgc3J0cF91bnByb3RlY3RfcnRw
IHdpdGggTUtJIGluZGV4IHNldCB0byAxXG4iKTsKKyAgICAgICAgICAgIHByaW50ZigidGVzdGlu
ZyBzcnRwX3Byb3RlY3RfcnRwIGFuZCBzcnRwX3VucHJvdGVjdF9ydHAgd2l0aCBNS0kgIgorICAg
ICAgICAgICAgICAgICAgICJpbmRleCBzZXQgdG8gMVxuIik7CiAgICAgICAgICAgICBpZiAoc3J0
cF90ZXN0KCpwb2xpY3ksIDAsIDEpID09IHNydHBfZXJyX3N0YXR1c19vaykgewogICAgICAgICAg
ICAgICAgIHByaW50ZigicGFzc2VkXG5cbiIpOwotICAgICAgICAgICAgfSBlbHNleworICAgICAg
ICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICBwcmludGYoImZhaWxlZFxuIik7CiAgICAg
ICAgICAgICAgICAgZXhpdCgxKTsKICAgICAgICAgICAgIH0KIAotICAgICAgICAgICAgcHJpbnRm
KCJ0ZXN0aW5nIHNydHBfcHJvdGVjdF9ydGNwIGFuZCBzcnRwX3VucHJvdGVjdF9ydGNwIHdpdGgg
TUtJIGluZGV4IHNldCB0byAwXG4iKTsKKyAgICAgICAgICAgIHByaW50ZigidGVzdGluZyBzcnRw
X3Byb3RlY3RfcnRjcCBhbmQgc3J0cF91bnByb3RlY3RfcnRjcCB3aXRoIE1LSSAiCisgICAgICAg
ICAgICAgICAgICAgImluZGV4IHNldCB0byAwXG4iKTsKICAgICAgICAgICAgIGlmIChzcnRjcF90
ZXN0KCpwb2xpY3ksIDApID09IHNydHBfZXJyX3N0YXR1c19vaykgewogICAgICAgICAgICAgICAg
IHByaW50ZigicGFzc2VkXG5cbiIpOwotICAgICAgICAgICAgfSBlbHNleworICAgICAgICAgICAg
fSBlbHNlIHsKICAgICAgICAgICAgICAgICBwcmludGYoImZhaWxlZFxuIik7CiAgICAgICAgICAg
ICAgICAgZXhpdCgxKTsKICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIHByaW50ZigidGVzdGlu
ZyBzcnRwX3Byb3RlY3RfcnRjcCBhbmQgc3J0cF91bnByb3RlY3RfcnRjcCB3aXRoIE1LSSBpbmRl
eCBzZXQgdG8gMVxuIik7CisgICAgICAgICAgICBwcmludGYoInRlc3Rpbmcgc3J0cF9wcm90ZWN0
X3J0Y3AgYW5kIHNydHBfdW5wcm90ZWN0X3J0Y3Agd2l0aCBNS0kgIgorICAgICAgICAgICAgICAg
ICAgICJpbmRleCBzZXQgdG8gMVxuIik7CiAgICAgICAgICAgICBpZiAoc3J0Y3BfdGVzdCgqcG9s
aWN5LCAxKSA9PSBzcnRwX2Vycl9zdGF0dXNfb2spIHsKICAgICAgICAgICAgICAgICBwcmludGYo
InBhc3NlZFxuXG4iKTsKLSAgICAgICAgICAgIH0gZWxzZXsKKyAgICAgICAgICAgIH0gZWxzZSB7
CiAgICAgICAgICAgICAgICAgcHJpbnRmKCJmYWlsZWRcbiIpOwogICAgICAgICAgICAgICAgIGV4
aXQoMSk7CiAgICAgICAgICAgICB9CkBAIC0zODYsMTQgKzM3MywxNSBAQCBtYWluIChpbnQgYXJn
YywgY2hhciAqYXJndltdKQogICAgICAgICBwcmludGYoInRlc3Rpbmcgc3J0cF9wcm90ZWN0IGFu
ZCBzcnRwX3VucHJvdGVjdCB3aXRoIGJpZyBwb2xpY3lcbiIpOwogICAgICAgICBpZiAoc3J0cF90
ZXN0KGJpZ19wb2xpY3ksIDAsIC0xKSA9PSBzcnRwX2Vycl9zdGF0dXNfb2spIHsKICAgICAgICAg
ICAgIHByaW50ZigicGFzc2VkXG5cbiIpOwotICAgICAgICB9IGVsc2V7CisgICAgICAgIH0gZWxz
ZSB7CiAgICAgICAgICAgICBwcmludGYoImZhaWxlZFxuIik7CiAgICAgICAgICAgICBleGl0KDEp
OwogICAgICAgICB9Ci0gICAgICAgIHByaW50ZigidGVzdGluZyBzcnRwX3Byb3RlY3QgYW5kIHNy
dHBfdW5wcm90ZWN0IHdpdGggYmlnIHBvbGljeSBhbmQgZW5jcnlwdGVkIGV4dGVuc2lvbnMgaGVh
ZGVyc1xuIik7CisgICAgICAgIHByaW50ZigidGVzdGluZyBzcnRwX3Byb3RlY3QgYW5kIHNydHBf
dW5wcm90ZWN0IHdpdGggYmlnIHBvbGljeSBhbmQgIgorICAgICAgICAgICAgICAgImVuY3J5cHRl
ZCBleHRlbnNpb25zIGhlYWRlcnNcbiIpOwogICAgICAgICBpZiAoc3J0cF90ZXN0KGJpZ19wb2xp
Y3ksIDEsIC0xKSA9PSBzcnRwX2Vycl9zdGF0dXNfb2spIHsKICAgICAgICAgICAgIHByaW50Zigi
cGFzc2VkXG5cbiIpOwotICAgICAgICB9IGVsc2V7CisgICAgICAgIH0gZWxzZSB7CiAgICAgICAg
ICAgICBwcmludGYoImZhaWxlZFxuIik7CiAgICAgICAgICAgICBleGl0KDEpOwogICAgICAgICB9
CkBAIC00MDgsNyArMzk2LDcgQEAgbWFpbiAoaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKICAgICAg
ICAgICAgICAgICJ3aWxkY2FyZCBzc3JjIHBvbGljeVxuIik7CiAgICAgICAgIGlmIChzcnRwX3Rl
c3QoJndpbGRjYXJkX3BvbGljeSwgMCwgLTEpID09IHNydHBfZXJyX3N0YXR1c19vaykgewogICAg
ICAgICAgICAgcHJpbnRmKCJwYXNzZWRcblxuIik7Ci0gICAgICAgIH0gZWxzZXsKKyAgICAgICAg
fSBlbHNlIHsKICAgICAgICAgICAgIHByaW50ZigiZmFpbGVkXG4iKTsKICAgICAgICAgICAgIGV4
aXQoMSk7CiAgICAgICAgIH0KQEAgLTQxNiw3ICs0MDQsNyBAQCBtYWluIChpbnQgYXJnYywgY2hh
ciAqYXJndltdKQogICAgICAgICAgICAgICAgIndpbGRjYXJkIHNzcmMgcG9saWN5IGFuZCBlbmNy
eXB0ZWQgZXh0ZW5zaW9ucyBoZWFkZXJzXG4iKTsKICAgICAgICAgaWYgKHNydHBfdGVzdCgmd2ls
ZGNhcmRfcG9saWN5LCAxLCAtMSkgPT0gc3J0cF9lcnJfc3RhdHVzX29rKSB7CiAgICAgICAgICAg
ICBwcmludGYoInBhc3NlZFxuXG4iKTsKLSAgICAgICAgfSBlbHNleworICAgICAgICB9IGVsc2Ug
ewogICAgICAgICAgICAgcHJpbnRmKCJmYWlsZWRcbiIpOwogICAgICAgICAgICAgZXhpdCgxKTsK
ICAgICAgICAgfQpAQCAtNDI5LDcgKzQxNyw3IEBAIG1haW4gKGludCBhcmdjLCBjaGFyICphcmd2
W10pCiAgICAgICAgICAgICAgICAicmVmZXJlbmNlIHBhY2tldFxuIik7CiAgICAgICAgIGlmIChz
cnRwX3ZhbGlkYXRlKCkgPT0gc3J0cF9lcnJfc3RhdHVzX29rKSB7CiAgICAgICAgICAgICBwcmlu
dGYoInBhc3NlZFxuXG4iKTsKLSAgICAgICAgfSBlbHNleworICAgICAgICB9IGVsc2UgewogICAg
ICAgICAgICAgcHJpbnRmKCJmYWlsZWRcbiIpOwogICAgICAgICAgICAgZXhpdCgxKTsKICAgICAg
ICAgfQpAQCAtNDM5LDcgKzQyNyw3IEBAIG1haW4gKGludCBhcmdjLCBjaGFyICphcmd2W10pCiAg
ICAgICAgICAgICAgICAicmVmZXJlbmNlIHBhY2tldCB1c2luZyBHQ01cbiIpOwogICAgICAgICBp
ZiAoc3J0cF92YWxpZGF0ZV9nY20oKSA9PSBzcnRwX2Vycl9zdGF0dXNfb2spIHsKICAgICAgICAg
ICAgIHByaW50ZigicGFzc2VkXG5cbiIpOwotICAgICAgICB9IGVsc2V7CisgICAgICAgIH0gZWxz
ZSB7CiAgICAgICAgICAgICBwcmludGYoImZhaWxlZFxuIik7CiAgICAgICAgICAgICBleGl0KDEp
OwogICAgICAgICB9CkBAIC00NTcsOSArNDQ1LDEwIEBAIG1haW4gKGludCBhcmdjLCBjaGFyICph
cmd2W10pCiAjaWZkZWYgT1BFTlNTTAogICAgICAgICBwcmludGYoInRlc3Rpbmcgc3J0cF9wcm90
ZWN0IGFuZCBzcnRwX3VucHJvdGVjdCBhZ2FpbnN0ICIKICAgICAgICAgICAgICAgICJyZWZlcmVu
Y2UgcGFja2V0IHdpdGggZW5jcnlwdGVkIGV4dGVuc2lvbiBoZWFkZXJzIChHQ00pXG4iKTsKLSAg
ICAgICAgaWYgKHNydHBfdmFsaWRhdGVfZW5jcnlwdGVkX2V4dGVuc2lvbnNfaGVhZGVyc19nY20o
KSA9PSBzcnRwX2Vycl9zdGF0dXNfb2spIHsKKyAgICAgICAgaWYgKHNydHBfdmFsaWRhdGVfZW5j
cnlwdGVkX2V4dGVuc2lvbnNfaGVhZGVyc19nY20oKSA9PQorICAgICAgICAgICAgc3J0cF9lcnJf
c3RhdHVzX29rKSB7CiAgICAgICAgICAgICBwcmludGYoInBhc3NlZFxuXG4iKTsKLSAgICAgICAg
fSBlbHNleworICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgcHJpbnRmKCJmYWlsZWRcbiIp
OwogICAgICAgICAgICAgZXhpdCgxKTsKICAgICAgICAgfQpAQCAtNDczLDcgKzQ2Miw3IEBAIG1h
aW4gKGludCBhcmdjLCBjaGFyICphcmd2W10pCiAgICAgICAgICAgICAgICAicmVmZXJlbmNlIHBh
Y2tldCAoQUVTLTI1NilcbiIpOwogICAgICAgICBpZiAoc3J0cF92YWxpZGF0ZV9hZXNfMjU2KCkg
PT0gc3J0cF9lcnJfc3RhdHVzX29rKSB7CiAgICAgICAgICAgICBwcmludGYoInBhc3NlZFxuXG4i
KTsKLSAgICAgICAgfSBlbHNleworICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgcHJpbnRm
KCJmYWlsZWRcbiIpOwogICAgICAgICAgICAgZXhpdCgxKTsKICAgICAgICAgfQpAQCAtNDg1LDcg
KzQ3NCw3IEBAIG1haW4gKGludCBhcmdjLCBjaGFyICphcmd2W10pCiAgICAgICAgICAgICAgICAi
cGFja2V0IHdpdGggZW1wdHkgcGF5bG9hZFxuIik7CiAgICAgICAgIGlmIChzcnRwX3Rlc3RfZW1w
dHlfcGF5bG9hZCgpID09IHNydHBfZXJyX3N0YXR1c19vaykgewogICAgICAgICAgICAgcHJpbnRm
KCJwYXNzZWRcbiIpOwotICAgICAgICB9IGVsc2V7CisgICAgICAgIH0gZWxzZSB7CiAgICAgICAg
ICAgICBwcmludGYoImZhaWxlZFxuIik7CiAgICAgICAgICAgICBleGl0KDEpOwogICAgICAgICB9
CkBAIC00OTQsNyArNDgzLDcgQEAgbWFpbiAoaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKICAgICAg
ICAgICAgICAgICJwYWNrZXQgd2l0aCBlbXB0eSBwYXlsb2FkIChHQ00pXG4iKTsKICAgICAgICAg
aWYgKHNydHBfdGVzdF9lbXB0eV9wYXlsb2FkX2djbSgpID09IHNydHBfZXJyX3N0YXR1c19vaykg
ewogICAgICAgICAgICAgcHJpbnRmKCJwYXNzZWRcbiIpOwotICAgICAgICB9IGVsc2V7CisgICAg
ICAgIH0gZWxzZSB7CiAgICAgICAgICAgICBwcmludGYoImZhaWxlZFxuIik7CiAgICAgICAgICAg
ICBleGl0KDEpOwogICAgICAgICB9CkBAIC01MDYsNyArNDk1LDcgQEAgbWFpbiAoaW50IGFyZ2Ms
IGNoYXIgKmFyZ3ZbXSkKICAgICAgICAgcHJpbnRmKCJ0ZXN0aW5nIHNydHBfcmVtb3ZlX3N0cmVh
bSgpLi4uIik7CiAgICAgICAgIGlmIChzcnRwX3Rlc3RfcmVtb3ZlX3N0cmVhbSgpID09IHNydHBf
ZXJyX3N0YXR1c19vaykgewogICAgICAgICAgICAgcHJpbnRmKCJwYXNzZWRcbiIpOwotICAgICAg
ICB9IGVsc2V7CisgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICBwcmludGYoImZhaWxlZFxu
Iik7CiAgICAgICAgICAgICBleGl0KDEpOwogICAgICAgICB9CkBAIC01NjUsNyArNTU0LDYgQEAg
bWFpbiAoaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKICAgICAgICAgICAgIHByaW50ZigiZmFpbGVk
XG4iKTsKICAgICAgICAgICAgIGV4aXQoMSk7CiAgICAgICAgIH0KLQogICAgIH0KIAogICAgIGlm
IChkb190aW1pbmdfdGVzdCkgewpAQCAtNTk4LDcgKzU4Niw3IEBAIG1haW4gKGludCBhcmdjLCBj
aGFyICphcmd2W10pCiAgICAgICAgIG1lbXNldCgmcG9saWN5LCAwLCBzaXplb2YocG9saWN5KSk7
CiAgICAgICAgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfcnRwX2RlZmF1bHQoJnBvbGljeS5ydHAp
OwogICAgICAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X3J0Y3BfZGVmYXVsdCgmcG9saWN5LnJ0
Y3ApOwotICAgICAgICBwb2xpY3kuc3NyYy50eXBlICA9IHNzcmNfc3BlY2lmaWM7CisgICAgICAg
IHBvbGljeS5zc3JjLnR5cGUgPSBzc3JjX3NwZWNpZmljOwogICAgICAgICBwb2xpY3kuc3NyYy52
YWx1ZSA9IDB4ZGVjYWZiYWQ7CiAgICAgICAgIHBvbGljeS5rZXkgPSB0ZXN0X2tleTsKICAgICAg
ICAgcG9saWN5LmVrdCA9IE5VTEw7CkBAIC02MTIsMjggKzYwMCwyOCBAQCBtYWluIChpbnQgYXJn
YywgY2hhciAqYXJndltdKQogICAgICAgICBwcmludGYoImNvZGVjXHRcdGxlbmd0aCAob2N0ZXRz
KVx0XHRzcnRwIGluc3RydWN0aW9ucy9zZWNvbmRcbiIpOwogICAgICAgICBwcmludGYoIkcuNzEx
XHRcdCVkXHRcdFx0JWVcbiIsIDgwLAogICAgICAgICAgICAgICAgKGRvdWJsZSltaXBzX3ZhbHVl
ICogKDgwICogOCkgLwotICAgICAgICAgICAgICAgc3J0cF9iaXRzX3Blcl9zZWNvbmQoODAsICZw
b2xpY3kpIC8gLjAxICk7CisgICAgICAgICAgICAgICAgICAgc3J0cF9iaXRzX3Blcl9zZWNvbmQo
ODAsICZwb2xpY3kpIC8gLjAxKTsKICAgICAgICAgcHJpbnRmKCJHLjcxMVx0XHQlZFx0XHRcdCVl
XG4iLCAxNjAsCiAgICAgICAgICAgICAgICAoZG91YmxlKW1pcHNfdmFsdWUgKiAoMTYwICogOCkg
LwotICAgICAgICAgICAgICAgc3J0cF9iaXRzX3Blcl9zZWNvbmQoMTYwLCAmcG9saWN5KSAvIC4w
Mik7CisgICAgICAgICAgICAgICAgICAgc3J0cF9iaXRzX3Blcl9zZWNvbmQoMTYwLCAmcG9saWN5
KSAvIC4wMik7CiAgICAgICAgIHByaW50ZigiRy43MjYtMzJcdCVkXHRcdFx0JWVcbiIsIDQwLAog
ICAgICAgICAgICAgICAgKGRvdWJsZSltaXBzX3ZhbHVlICogKDQwICogOCkgLwotICAgICAgICAg
ICAgICAgc3J0cF9iaXRzX3Blcl9zZWNvbmQoNDAsICZwb2xpY3kpIC8gLjAxICk7CisgICAgICAg
ICAgICAgICAgICAgc3J0cF9iaXRzX3Blcl9zZWNvbmQoNDAsICZwb2xpY3kpIC8gLjAxKTsKICAg
ICAgICAgcHJpbnRmKCJHLjcyNi0zMlx0JWRcdFx0XHQlZVxuIiwgODAsCiAgICAgICAgICAgICAg
ICAoZG91YmxlKW1pcHNfdmFsdWUgKiAoODAgKiA4KSAvCi0gICAgICAgICAgICAgICBzcnRwX2Jp
dHNfcGVyX3NlY29uZCg4MCwgJnBvbGljeSkgLyAuMDIpOworICAgICAgICAgICAgICAgICAgIHNy
dHBfYml0c19wZXJfc2Vjb25kKDgwLCAmcG9saWN5KSAvIC4wMik7CiAgICAgICAgIHByaW50Zigi
Ry43MjlcdFx0JWRcdFx0XHQlZVxuIiwgMTAsCiAgICAgICAgICAgICAgICAoZG91YmxlKW1pcHNf
dmFsdWUgKiAoMTAgKiA4KSAvCi0gICAgICAgICAgICAgICBzcnRwX2JpdHNfcGVyX3NlY29uZCgx
MCwgJnBvbGljeSkgLyAuMDEgKTsKKyAgICAgICAgICAgICAgICAgICBzcnRwX2JpdHNfcGVyX3Nl
Y29uZCgxMCwgJnBvbGljeSkgLyAuMDEpOwogICAgICAgICBwcmludGYoIkcuNzI5XHRcdCVkXHRc
dFx0JWVcbiIsIDIwLAogICAgICAgICAgICAgICAgKGRvdWJsZSltaXBzX3ZhbHVlICogKDIwICog
OCkgLwotICAgICAgICAgICAgICAgc3J0cF9iaXRzX3Blcl9zZWNvbmQoMjAsICZwb2xpY3kpIC8g
LjAyICk7CisgICAgICAgICAgICAgICAgICAgc3J0cF9iaXRzX3Blcl9zZWNvbmQoMjAsICZwb2xp
Y3kpIC8gLjAyKTsKICAgICAgICAgcHJpbnRmKCJXaWRlYmFuZFx0JWRcdFx0XHQlZVxuIiwgMzIw
LAogICAgICAgICAgICAgICAgKGRvdWJsZSltaXBzX3ZhbHVlICogKDMyMCAqIDgpIC8KLSAgICAg
ICAgICAgICAgIHNydHBfYml0c19wZXJfc2Vjb25kKDMyMCwgJnBvbGljeSkgLyAuMDEgKTsKKyAg
ICAgICAgICAgICAgICAgICBzcnRwX2JpdHNfcGVyX3NlY29uZCgzMjAsICZwb2xpY3kpIC8gLjAx
KTsKICAgICAgICAgcHJpbnRmKCJXaWRlYmFuZFx0JWRcdFx0XHQlZVxuIiwgNjQwLAogICAgICAg
ICAgICAgICAgKGRvdWJsZSltaXBzX3ZhbHVlICogKDY0MCAqIDgpIC8KLSAgICAgICAgICAgICAg
IHNydHBfYml0c19wZXJfc2Vjb25kKDY0MCwgJnBvbGljeSkgLyAuMDIgKTsKKyAgICAgICAgICAg
ICAgICAgICBzcnRwX2JpdHNfcGVyX3NlY29uZCg2NDAsICZwb2xpY3kpIC8gLjAyKTsKICAgICB9
CiAKICAgICBzdGF0dXMgPSBzcnRwX3NodXRkb3duKCk7CkBAIC02NDUsOCArNjMzLDYgQEAgbWFp
biAoaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKICAgICByZXR1cm4gMDsKIH0KIAotCi0KIC8qCiAg
KiBzcnRwX2NyZWF0ZV90ZXN0X3BhY2tldChsZW4sIHNzcmMpIHJldHVybnMgYSBwb2ludGVyIHRv
IGEKICAqIChtYWxsb2NlZCkgZXhhbXBsZSBSVFAgcGFja2V0IHdob3NlIGRhdGEgZmllbGQgaGFz
IHRoZSBsZW5ndGggZ2l2ZW4KQEAgLTY2MCw4ICs2NDYsOSBAQCBtYWluIChpbnQgYXJnYywgY2hh
ciAqYXJndltdKQogICogZGVhbGxvY2F0ZWQgd2l0aCB0aGUgZnJlZSgpIGNhbGwgb25jZSBpdCBp
cyBubyBsb25nZXIgbmVlZGVkLgogICovCiAKLXNydHBfaGRyX3QgKgotc3J0cF9jcmVhdGVfdGVz
dF9wYWNrZXQgKGludCBwa3Rfb2N0ZXRfbGVuLCB1aW50MzJfdCBzc3JjKQorc3J0cF9oZHJfdCAq
c3J0cF9jcmVhdGVfdGVzdF9wYWNrZXQoaW50IHBrdF9vY3RldF9sZW4sCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBzc3JjLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgaW50ICpwa3RfbGVuKQogewogICAgIGludCBpOwogICAgIHVpbnQ4
X3QgKmJ1ZmZlcjsKQEAgLTY2OSwyMyArNjU2LDIzIEBAIHNydHBfY3JlYXRlX3Rlc3RfcGFja2V0
IChpbnQgcGt0X29jdGV0X2xlbiwgdWludDMyX3Qgc3NyYykKICAgICBpbnQgYnl0ZXNfaW5faGRy
ID0gMTI7CiAKICAgICAvKiBhbGxvY2F0ZSBtZW1vcnkgZm9yIHRlc3QgcGFja2V0ICovCi0gICAg
aGRyID0gKHNydHBfaGRyX3QqKW1hbGxvYyhwa3Rfb2N0ZXRfbGVuICsgYnl0ZXNfaW5faGRyCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICArIFNSVFBfTUFYX1RSQUlMRVJfTEVOICsgNCk7
CisgICAgaGRyID0gKHNydHBfaGRyX3QgKiltYWxsb2MocGt0X29jdGV0X2xlbiArIGJ5dGVzX2lu
X2hkciArCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU1JUUF9NQVhfVFJBSUxFUl9M
RU4gKyA0KTsKICAgICBpZiAoIWhkcikgewogICAgICAgICByZXR1cm4gTlVMTDsKICAgICB9CiAK
LSAgICBoZHItPnZlcnNpb24gPSAyOyAgICAgICAgICAgICAgLyogUlRQIHZlcnNpb24gdHdvICAg
ICAqLwotICAgIGhkci0+cCAgICA9IDA7ICAgICAgICAgICAgICAgICAvKiBubyBwYWRkaW5nIG5l
ZWRlZCAgICovCi0gICAgaGRyLT54ICAgID0gMDsgICAgICAgICAgICAgICAgIC8qIG5vIGhlYWRl
ciBleHRlbnNpb24gKi8KLSAgICBoZHItPmNjICAgPSAwOyAgICAgICAgICAgICAgICAgLyogbm8g
Q1NSQ3MgICAgICAgICAgICAqLwotICAgIGhkci0+bSAgICA9IDA7ICAgICAgICAgICAgICAgICAv
KiBtYXJrZXIgYml0ICAgICAgICAgICovCi0gICAgaGRyLT5wdCAgID0gMHhmOyAgICAgICAgICAg
ICAgIC8qIHBheWxvYWQgdHlwZSAgICAgICAgKi8KLSAgICBoZHItPnNlcSAgPSBodG9ucygweDEy
MzQpOyAgICAgLyogc2VxdWVuY2UgbnVtYmVyICAgICAqLwotICAgIGhkci0+dHMgICA9IGh0b25s
KDB4ZGVjYWZiYWQpOyAvKiB0aW1lc3RhbXAgICAgICAgICAgICovCi0gICAgaGRyLT5zc3JjID0g
aHRvbmwoc3NyYyk7ICAgICAgIC8qIHN5bmNoLiBzb3VyY2UgICAgICAgKi8KKyAgICBoZHItPnZl
cnNpb24gPSAyOyAgICAgICAgICAgIC8qIFJUUCB2ZXJzaW9uIHR3byAgICAgKi8KKyAgICBoZHIt
PnAgPSAwOyAgICAgICAgICAgICAgICAgIC8qIG5vIHBhZGRpbmcgbmVlZGVkICAgKi8KKyAgICBo
ZHItPnggPSAwOyAgICAgICAgICAgICAgICAgIC8qIG5vIGhlYWRlciBleHRlbnNpb24gKi8KKyAg
ICBoZHItPmNjID0gMDsgICAgICAgICAgICAgICAgIC8qIG5vIENTUkNzICAgICAgICAgICAgKi8K
KyAgICBoZHItPm0gPSAwOyAgICAgICAgICAgICAgICAgIC8qIG1hcmtlciBiaXQgICAgICAgICAg
Ki8KKyAgICBoZHItPnB0ID0gMHhmOyAgICAgICAgICAgICAgIC8qIHBheWxvYWQgdHlwZSAgICAg
ICAgKi8KKyAgICBoZHItPnNlcSA9IGh0b25zKDB4MTIzNCk7ICAgIC8qIHNlcXVlbmNlIG51bWJl
ciAgICAgKi8KKyAgICBoZHItPnRzID0gaHRvbmwoMHhkZWNhZmJhZCk7IC8qIHRpbWVzdGFtcCAg
ICAgICAgICAgKi8KKyAgICBoZHItPnNzcmMgPSBodG9ubChzc3JjKTsgICAgIC8qIHN5bmNoLiBz
b3VyY2UgICAgICAgKi8KIAotICAgIGJ1ZmZlciA9ICh1aW50OF90KiloZHI7CisgICAgYnVmZmVy
ID0gKHVpbnQ4X3QgKiloZHI7CiAgICAgYnVmZmVyICs9IGJ5dGVzX2luX2hkcjsKIAogICAgIC8q
IHNldCBSVFAgZGF0YSB0byAweGFiICovCkBAIC02OTgsODUgKzY4NSw5MSBAQCBzcnRwX2NyZWF0
ZV90ZXN0X3BhY2tldCAoaW50IHBrdF9vY3RldF9sZW4sIHVpbnQzMl90IHNzcmMpCiAgICAgICAg
ICpidWZmZXIrKyA9IDB4ZmY7CiAgICAgfQogCisgICAgKnBrdF9sZW4gPSBieXRlc19pbl9oZHIg
KyBwa3Rfb2N0ZXRfbGVuOworCiAgICAgcmV0dXJuIGhkcjsKIH0KIAotc3RhdGljIHNydHBfaGRy
X3QgKgotc3J0cF9jcmVhdGVfdGVzdF9wYWNrZXRfZXh0ZW5kZWQgKGludCBwa3Rfb2N0ZXRfbGVu
LCB1aW50MzJfdCBzc3JjLCB1aW50MTZfdCBzZXEsIHVpbnQzMl90IHRzKQorc3RhdGljIHNydHBf
aGRyX3QgKnNydHBfY3JlYXRlX3Rlc3RfcGFja2V0X2V4dGVuZGVkKGludCBwa3Rfb2N0ZXRfbGVu
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVp
bnQzMl90IHNzcmMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgdWludDE2X3Qgc2VxLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IHRzLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCAqcGt0X2xlbikKIHsKLSAgc3J0cF9oZHJf
dCAqaGRyOworICAgIHNydHBfaGRyX3QgKmhkcjsKIAotICBoZHIgPSBzcnRwX2NyZWF0ZV90ZXN0
X3BhY2tldChwa3Rfb2N0ZXRfbGVuLCBzc3JjKTsKLSAgaWYgKGhkciA9PSBOVUxMKQotICAgIHJl
dHVybiBoZHI7CisgICAgaGRyID0gc3J0cF9jcmVhdGVfdGVzdF9wYWNrZXQocGt0X29jdGV0X2xl
biwgc3NyYywgcGt0X2xlbik7CisgICAgaWYgKGhkciA9PSBOVUxMKQorICAgICAgICByZXR1cm4g
aGRyOwogCi0gIGhkci0+c2VxICA9IGh0b25zKHNlcSk7Ci0gIGhkci0+dHMgICA9IGh0b25sKHRz
KTsKLSAgcmV0dXJuIGhkcjsKKyAgICBoZHItPnNlcSA9IGh0b25zKHNlcSk7CisgICAgaGRyLT50
cyA9IGh0b25sKHRzKTsKKyAgICByZXR1cm4gaGRyOwogfQogCi1zcnRwX2hkcl90ICoKLXNydHBf
Y3JlYXRlX3Rlc3RfcGFja2V0X2V4dF9oZHIoaW50IHBrdF9vY3RldF9sZW4sIHVpbnQzMl90IHNz
cmMpIHsKLSAgaW50IGk7Ci0gIHVpbnQ4X3QgKmJ1ZmZlcjsKLSAgc3J0cF9oZHJfdCAqaGRyOwot
ICBpbnQgYnl0ZXNfaW5faGRyID0gMTI7Ci0gIHVpbnQ4X3QgZXh0ZW5zaW9uX2hlYWRlclsxMl0g
PSB7Ci0gICAgLyogb25lLWJ5dGUgaGVhZGVyICovCi0gICAgMHhiZSwgMHhkZSwKLSAgICAvKiBz
aXplICovCi0gICAgMHgwMCwgMHgwMiwKLSAgICAvKiBpZCAxLCBsZW5ndGggMSAoaS5lLiAyIGJ5
dGVzKSAqLwotICAgIDB4MTEsCi0gICAgLyogcGF5bG9hZCAqLwotICAgIDB4Y2EsCi0gICAgMHhm
ZSwKLSAgICAvKiBwYWRkaW5nICovCi0gICAgMHgwMCwKLSAgICAvKiBpZCAyLCBsZW5ndGggMCAo
aS5lLiAxIGJ5dGUpICovCi0gICAgMHgyMCwKLSAgICAvKiBwYXlsb2FkICovCi0gICAgMHhiYSwK
LSAgICAvKiBwYWRkaW5nICovCi0gICAgMHgwMCwKLSAgICAweDAwCi0gIH07Ci0KLSAgLyogYWxs
b2NhdGUgbWVtb3J5IGZvciB0ZXN0IHBhY2tldCAqLwotICBoZHIgPSAoc3J0cF9oZHJfdCopIG1h
bGxvYyhwa3Rfb2N0ZXRfbGVuICsgYnl0ZXNfaW5faGRyCi0gICAgICAgICAgICsgc2l6ZW9mKGV4
dGVuc2lvbl9oZWFkZXIpICsgU1JUUF9NQVhfVFJBSUxFUl9MRU4gKyA0KTsKLSAgaWYgKCFoZHIp
Ci0gICAgcmV0dXJuIE5VTEw7Ci0KLSAgaGRyLT52ZXJzaW9uID0gMjsgICAgICAgICAgICAgIC8q
IFJUUCB2ZXJzaW9uIHR3byAgICAgKi8KLSAgaGRyLT5wICAgID0gMDsgICAgICAgICAgICAgICAg
IC8qIG5vIHBhZGRpbmcgbmVlZGVkICAgKi8KLSAgaGRyLT54ICAgID0gMTsgICAgICAgICAgICAg
ICAgIC8qIG5vIGhlYWRlciBleHRlbnNpb24gKi8KLSAgaGRyLT5jYyAgID0gMDsgICAgICAgICAg
ICAgICAgIC8qIG5vIENTUkNzICAgICAgICAgICAgKi8KLSAgaGRyLT5tICAgID0gMDsgICAgICAg
ICAgICAgICAgIC8qIG1hcmtlciBiaXQgICAgICAgICAgKi8KLSAgaGRyLT5wdCAgID0gMHhmOyAg
ICAgICAgICAgICAgIC8qIHBheWxvYWQgdHlwZSAgICAgICAgKi8KLSAgaGRyLT5zZXEgID0gaHRv
bnMoMHgxMjM0KTsgICAgIC8qIHNlcXVlbmNlIG51bWJlciAgICAgKi8KLSAgaGRyLT50cyAgID0g
aHRvbmwoMHhkZWNhZmJhZCk7IC8qIHRpbWVzdGFtcCAgICAgICAgICAgKi8KLSAgaGRyLT5zc3Jj
ID0gaHRvbmwoc3NyYyk7ICAgICAgIC8qIHN5bmNoLiBzb3VyY2UgICAgICAgKi8KLQotICBidWZm
ZXIgPSAodWludDhfdCAqKWhkcjsKLSAgYnVmZmVyICs9IGJ5dGVzX2luX2hkcjsKLQotICBtZW1j
cHkoYnVmZmVyLCBleHRlbnNpb25faGVhZGVyLCBzaXplb2YoZXh0ZW5zaW9uX2hlYWRlcikpOwot
ICBidWZmZXIgKz0gc2l6ZW9mKGV4dGVuc2lvbl9oZWFkZXIpOwotCi0gIC8qIHNldCBSVFAgZGF0
YSB0byAweGFiICovCi0gIGZvciAoaT0wOyBpIDwgcGt0X29jdGV0X2xlbjsgaSsrKQotICAgICpi
dWZmZXIrKyA9IDB4YWI7Ci0KLSAgLyogc2V0IHBvc3QtZGF0YSB2YWx1ZSB0byAweGZmZmYgdG8g
ZW5hYmxlIG92ZXJydW4gY2hlY2tpbmcgKi8KLSAgZm9yIChpPTA7IGkgPCBTUlRQX01BWF9UUkFJ
TEVSX0xFTis0OyBpKyspCi0gICAgKmJ1ZmZlcisrID0gMHhmZjsKLQotICByZXR1cm4gaGRyOwor
c3J0cF9oZHJfdCAqc3J0cF9jcmVhdGVfdGVzdF9wYWNrZXRfZXh0X2hkcihpbnQgcGt0X29jdGV0
X2xlbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMy
X3Qgc3NyYywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50
ICpwa3RfbGVuKQoreworICAgIGludCBpOworICAgIHVpbnQ4X3QgKmJ1ZmZlcjsKKyAgICBzcnRw
X2hkcl90ICpoZHI7CisgICAgaW50IGJ5dGVzX2luX2hkciA9IDEyOworICAgIHVpbnQ4X3QgZXh0
ZW5zaW9uX2hlYWRlclsxMl0gPSB7IC8qIG9uZS1ieXRlIGhlYWRlciAqLworICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIDB4YmUsIDB4ZGUsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgLyogc2l6ZSAqLworICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIDB4MDAsIDB4MDIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgLyogaWQgMSwgbGVuZ3RoIDEgKGkuZS4gMiBieXRlcykgKi8KKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAweDExLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIC8qIHBheWxvYWQgKi8KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAweGNhLCAweGZlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHBh
ZGRpbmcgKi8KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAwLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIGlkIDIsIGxlbmd0aCAwIChpLmUu
IDEgYnl0ZSkgKi8KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDIwLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHBheWxvYWQgKi8KKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweGJhLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIC8qIHBhZGRpbmcgKi8KKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAweDAwLCAweDAwCisgICAgfTsKKworICAgIC8qIGFsbG9jYXRlIG1lbW9y
eSBmb3IgdGVzdCBwYWNrZXQgKi8KKyAgICBoZHIgPSAoc3J0cF9oZHJfdCAqKW1hbGxvYyhwa3Rf
b2N0ZXRfbGVuICsgYnl0ZXNfaW5faGRyICsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBzaXplb2YoZXh0ZW5zaW9uX2hlYWRlcikgKyBTUlRQX01BWF9UUkFJTEVSX0xFTiArCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgNCk7CisgICAgaWYgKCFoZHIpCisgICAgICAgIHJl
dHVybiBOVUxMOworCisgICAgaGRyLT52ZXJzaW9uID0gMjsgICAgICAgICAgICAvKiBSVFAgdmVy
c2lvbiB0d28gICAgICovCisgICAgaGRyLT5wID0gMDsgICAgICAgICAgICAgICAgICAvKiBubyBw
YWRkaW5nIG5lZWRlZCAgICovCisgICAgaGRyLT54ID0gMTsgICAgICAgICAgICAgICAgICAvKiBu
byBoZWFkZXIgZXh0ZW5zaW9uICovCisgICAgaGRyLT5jYyA9IDA7ICAgICAgICAgICAgICAgICAv
KiBubyBDU1JDcyAgICAgICAgICAgICovCisgICAgaGRyLT5tID0gMDsgICAgICAgICAgICAgICAg
ICAvKiBtYXJrZXIgYml0ICAgICAgICAgICovCisgICAgaGRyLT5wdCA9IDB4ZjsgICAgICAgICAg
ICAgICAvKiBwYXlsb2FkIHR5cGUgICAgICAgICovCisgICAgaGRyLT5zZXEgPSBodG9ucygweDEy
MzQpOyAgICAvKiBzZXF1ZW5jZSBudW1iZXIgICAgICovCisgICAgaGRyLT50cyA9IGh0b25sKDB4
ZGVjYWZiYWQpOyAvKiB0aW1lc3RhbXAgICAgICAgICAgICovCisgICAgaGRyLT5zc3JjID0gaHRv
bmwoc3NyYyk7ICAgICAvKiBzeW5jaC4gc291cmNlICAgICAgICovCisKKyAgICBidWZmZXIgPSAo
dWludDhfdCAqKWhkcjsKKyAgICBidWZmZXIgKz0gYnl0ZXNfaW5faGRyOworCisgICAgbWVtY3B5
KGJ1ZmZlciwgZXh0ZW5zaW9uX2hlYWRlciwgc2l6ZW9mKGV4dGVuc2lvbl9oZWFkZXIpKTsKKyAg
ICBidWZmZXIgKz0gc2l6ZW9mKGV4dGVuc2lvbl9oZWFkZXIpOworCisgICAgLyogc2V0IFJUUCBk
YXRhIHRvIDB4YWIgKi8KKyAgICBmb3IgKGkgPSAwOyBpIDwgcGt0X29jdGV0X2xlbjsgaSsrKQor
ICAgICAgICAqYnVmZmVyKysgPSAweGFiOworCisgICAgLyogc2V0IHBvc3QtZGF0YSB2YWx1ZSB0
byAweGZmZmYgdG8gZW5hYmxlIG92ZXJydW4gY2hlY2tpbmcgKi8KKyAgICBmb3IgKGkgPSAwOyBp
IDwgU1JUUF9NQVhfVFJBSUxFUl9MRU4gKyA0OyBpKyspCisgICAgICAgICpidWZmZXIrKyA9IDB4
ZmY7CisKKyAgICAqcGt0X2xlbiA9IGJ5dGVzX2luX2hkciArIHNpemVvZihleHRlbnNpb25faGVh
ZGVyKSArIHBrdF9vY3RldF9sZW47CisKKyAgICByZXR1cm4gaGRyOwogfQogCi12b2lkCi1zcnRw
X2RvX3RpbWluZyAoY29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5KQordm9pZCBzcnRwX2RvX3Rp
bWluZyhjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3kpCiB7CiAgICAgaW50IGxlbjsKIApAQCAt
Nzk2LDExICs3ODksOSBAQCBzcnRwX2RvX3RpbWluZyAoY29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9s
aWN5KQogCiAgICAgLyogdGhlc2UgZXh0cmEgbGluZWZlZWRzIGxldCBnbnVwbG90IGtub3cgdGhh
dCBhIGRhdGFzZXQgaXMgZG9uZSAqLwogICAgIHByaW50ZigiXHJcblxyXG4iKTsKLQogfQogCi12
b2lkCi1zcnRwX2RvX3JlamVjdGlvbl90aW1pbmcgKGNvbnN0IHNydHBfcG9saWN5X3QgKnBvbGlj
eSkKK3ZvaWQgc3J0cF9kb19yZWplY3Rpb25fdGltaW5nKGNvbnN0IHNydHBfcG9saWN5X3QgKnBv
bGljeSkKIHsKICAgICBpbnQgbGVuOwogCkBAIC04MTksMjEgKzgxMCwxOCBAQCBzcnRwX2RvX3Jl
amVjdGlvbl90aW1pbmcgKGNvbnN0IHNydHBfcG9saWN5X3QgKnBvbGljeSkKIAogICAgIC8qIHRo
ZXNlIGV4dHJhIGxpbmVmZWVkcyBsZXQgZ251cGxvdCBrbm93IHRoYXQgYSBkYXRhc2V0IGlzIGRv
bmUgKi8KICAgICBwcmludGYoIlxyXG5cclxuIik7Ci0KIH0KIAotCiAjZGVmaW5lIE1BWF9NU0df
TEVOIDEwMjQKIAotZG91YmxlCi1zcnRwX2JpdHNfcGVyX3NlY29uZCAoaW50IG1zZ19sZW5fb2N0
ZXRzLCBjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3kpCitkb3VibGUgc3J0cF9iaXRzX3Blcl9z
ZWNvbmQoaW50IG1zZ19sZW5fb2N0ZXRzLCBjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3kpCiB7
CiAgICAgc3J0cF90IHNydHA7CiAgICAgc3J0cF9oZHJfdCAqbWVzZzsKICAgICBpbnQgaTsKICAg
ICBjbG9ja190IHRpbWVyOwogICAgIGludCBudW1fdHJpYWxzID0gMTAwMDAwOwotICAgIGludCBs
ZW47CisgICAgaW50IGlucHV0X2xlbiwgbGVuOwogICAgIHVpbnQzMl90IHNzcmM7CiAgICAgc3J0
cF9lcnJfc3RhdHVzX3Qgc3RhdHVzOwogCkBAIC04NTgsMTUgKzg0NiwxMyBAQCBzcnRwX2JpdHNf
cGVyX3NlY29uZCAoaW50IG1zZ19sZW5fb2N0ZXRzLCBjb25zdCBzcnRwX3BvbGljeV90ICpwb2xp
Y3kpCiAgICAgLyoKICAgICAgKiBjcmVhdGUgYSB0ZXN0IHBhY2tldAogICAgICAqLwotICAgIG1l
c2cgPSBzcnRwX2NyZWF0ZV90ZXN0X3BhY2tldChtc2dfbGVuX29jdGV0cywgc3NyYyk7CisgICAg
bWVzZyA9IHNydHBfY3JlYXRlX3Rlc3RfcGFja2V0KG1zZ19sZW5fb2N0ZXRzLCBzc3JjLCAmaW5w
dXRfbGVuKTsKICAgICBpZiAobWVzZyA9PSBOVUxMKSB7CiAgICAgICAgIHJldHVybiAwLjA7IC8q
IGluZGljYXRlIGZhaWx1cmUgYnkgcmV0dXJuaW5nIHplcm8gKi8KLQogICAgIH0KICAgICB0aW1l
ciA9IGNsb2NrKCk7CiAgICAgZm9yIChpID0gMDsgaSA8IG51bV90cmlhbHM7IGkrKykgewotICAg
ICAgICBsZW4gPSBtc2dfbGVuX29jdGV0cyArIDEyOyAvKiBhZGQgaW4gcnRwIGhlYWRlciBsZW5n
dGggKi8KLQorICAgICAgICBsZW4gPSBpbnB1dF9sZW47CiAgICAgICAgIC8qIHNydHAgcHJvdGVj
dCBtZXNzYWdlICovCiAgICAgICAgIHN0YXR1cyA9IHNydHBfcHJvdGVjdChzcnRwLCBtZXNnLCAm
bGVuKTsKICAgICAgICAgaWYgKHN0YXR1cykgewpAQCAtODc2LDcgKzg2Miw4IEBAIHNydHBfYml0
c19wZXJfc2Vjb25kIChpbnQgbXNnX2xlbl9vY3RldHMsIGNvbnN0IHNydHBfcG9saWN5X3QgKnBv
bGljeSkKIAogICAgICAgICAvKiBpbmNyZW1lbnQgbWVzc2FnZSBudW1iZXIgKi8KICAgICAgICAg
ewotICAgICAgICAgICAgLyogaGFjayBzZXF1ZW5jZSB0byBhdm9pZCBwcm9ibGVtcyB3aXRoIG1h
Y3JvcyBmb3IgaHRvbnMvbnRvaHMgb24gc29tZSBzeXN0ZW1zICovCisgICAgICAgICAgICAvKiBo
YWNrIHNlcXVlbmNlIHRvIGF2b2lkIHByb2JsZW1zIHdpdGggbWFjcm9zIGZvciBodG9ucy9udG9o
cyBvbgorICAgICAgICAgICAgICogc29tZSBzeXN0ZW1zICovCiAgICAgICAgICAgICBzaG9ydCBu
ZXdfc2VxID0gbnRvaHMobWVzZy0+c2VxKSArIDE7CiAgICAgICAgICAgICBtZXNnLT5zZXEgPSBo
dG9ucyhuZXdfc2VxKTsKICAgICAgICAgfQpAQCAtODkxLDEyICs4NzgsMTEgQEAgc3J0cF9iaXRz
X3Blcl9zZWNvbmQgKGludCBtc2dfbGVuX29jdGV0cywgY29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9s
aWN5KQogICAgICAgICBleGl0KDEpOwogICAgIH0KIAotICAgIHJldHVybiAoZG91YmxlKShtc2df
bGVuX29jdGV0cykgKiA4ICoKLSAgICAgICAgICAgbnVtX3RyaWFscyAqIENMT0NLU19QRVJfU0VD
IC8gdGltZXI7CisgICAgcmV0dXJuIChkb3VibGUpKG1zZ19sZW5fb2N0ZXRzKSo4ICogbnVtX3Ry
aWFscyAqIENMT0NLU19QRVJfU0VDIC8gdGltZXI7CiB9CiAKLWRvdWJsZQotc3J0cF9yZWplY3Rp
b25zX3Blcl9zZWNvbmQgKGludCBtc2dfbGVuX29jdGV0cywgY29uc3Qgc3J0cF9wb2xpY3lfdCAq
cG9saWN5KQorZG91YmxlIHNydHBfcmVqZWN0aW9uc19wZXJfc2Vjb25kKGludCBtc2dfbGVuX29j
dGV0cywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzcnRwX3BvbGlj
eV90ICpwb2xpY3kpCiB7CiAgICAgc3J0cF9jdHhfdCAqc3J0cDsKICAgICBzcnRwX2hkcl90ICpt
ZXNnOwpAQCAtOTE2LDE4ICs5MDIsMTYgQEAgc3J0cF9yZWplY3Rpb25zX3Blcl9zZWNvbmQgKGlu
dCBtc2dfbGVuX29jdGV0cywgY29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5KQogICAgICAgICBl
eGl0KDEpOwogICAgIH0KIAotICAgIG1lc2cgPSBzcnRwX2NyZWF0ZV90ZXN0X3BhY2tldChtc2df
bGVuX29jdGV0cywgc3NyYyk7CisgICAgbWVzZyA9IHNydHBfY3JlYXRlX3Rlc3RfcGFja2V0KG1z
Z19sZW5fb2N0ZXRzLCBzc3JjLCAmbGVuKTsKICAgICBpZiAobWVzZyA9PSBOVUxMKSB7CiAgICAg
ICAgIHJldHVybiAwLjA7IC8qIGluZGljYXRlIGZhaWx1cmUgYnkgcmV0dXJuaW5nIHplcm8gKi8K
LQogICAgIH0KLSAgICBsZW4gPSBtc2dfbGVuX29jdGV0czsKLSAgICBzcnRwX3Byb3RlY3Qoc3J0
cCwgKHNydHBfaGRyX3QqKW1lc2csICZsZW4pOworICAgIHNydHBfcHJvdGVjdChzcnRwLCAoc3J0
cF9oZHJfdCAqKW1lc2csICZsZW4pOwogCiAgICAgdGltZXIgPSBjbG9jaygpOwogICAgIGZvciAo
aSA9IDA7IGkgPCBudW1fdHJpYWxzOyBpKyspIHsKICAgICAgICAgbGVuID0gbXNnX2xlbl9vY3Rl
dHM7Ci0gICAgICAgIHNydHBfdW5wcm90ZWN0KHNydHAsIChzcnRwX2hkcl90KiltZXNnLCAmbGVu
KTsKKyAgICAgICAgc3J0cF91bnByb3RlY3Qoc3J0cCwgKHNydHBfaGRyX3QgKiltZXNnLCAmbGVu
KTsKICAgICB9CiAgICAgdGltZXIgPSBjbG9jaygpIC0gdGltZXI7CiAKQEAgLTk0Miw1NiArOTI2
LDY3IEBAIHNydHBfcmVqZWN0aW9uc19wZXJfc2Vjb25kIChpbnQgbXNnX2xlbl9vY3RldHMsIGNv
bnN0IHNydHBfcG9saWN5X3QgKnBvbGljeSkKICAgICByZXR1cm4gKGRvdWJsZSludW1fdHJpYWxz
ICogQ0xPQ0tTX1BFUl9TRUMgLyB0aW1lcjsKIH0KIAotCi12b2lkCi1lcnJfY2hlY2sgKHNydHBf
ZXJyX3N0YXR1c190IHMpCit2b2lkIGVycl9jaGVjayhzcnRwX2Vycl9zdGF0dXNfdCBzKQogewog
ICAgIGlmIChzID09IHNydHBfZXJyX3N0YXR1c19vaykgewogICAgICAgICByZXR1cm47Ci0gICAg
fSBlbHNleworICAgIH0gZWxzZSB7CiAgICAgICAgIGZwcmludGYoc3RkZXJyLCAiZXJyb3I6IHVu
ZXhwZWN0ZWQgc3J0cCBmYWlsdXJlIChjb2RlICVkKVxuIiwgcyk7CiAgICAgfQogICAgIGV4aXQo
MSk7CiB9CiAKLXNydHBfZXJyX3N0YXR1c190Ci1zcnRwX3Rlc3RfY2FsbF9wcm90ZWN0KHNydHBf
dCBzcnRwX3NlbmRlciwgc3J0cF9oZHJfdCAqaGRyLCBpbnQgKmxlbiwgaW50IG1raV9pbmRleCkg
eworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF90ZXN0X2NhbGxfcHJvdGVjdChzcnRwX3Qgc3J0cF9z
ZW5kZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfaGRy
X3QgKmhkciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50ICps
ZW4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBta2lfaW5k
ZXgpCit7CiAgICAgaWYgKG1raV9pbmRleCA9PSAtMSkgewotCXJldHVybiBzcnRwX3Byb3RlY3Qo
c3J0cF9zZW5kZXIsIGhkciwgbGVuKTsKKyAgICAgICAgcmV0dXJuIHNydHBfcHJvdGVjdChzcnRw
X3NlbmRlciwgaGRyLCBsZW4pOwogICAgIH0gZWxzZSB7Ci0JcmV0dXJuIHNydHBfcHJvdGVjdF9t
a2koc3J0cF9zZW5kZXIsIGhkciwgbGVuLCAxLCBta2lfaW5kZXgpOworICAgICAgICByZXR1cm4g
c3J0cF9wcm90ZWN0X21raShzcnRwX3NlbmRlciwgaGRyLCBsZW4sIDEsIG1raV9pbmRleCk7CiAg
ICAgfQogfQogCi1zcnRwX2Vycl9zdGF0dXNfdAotc3J0cF90ZXN0X2NhbGxfcHJvdGVjdF9ydGNw
KHNydHBfdCBzcnRwX3NlbmRlciwgc3J0cF9oZHJfdCAqaGRyLCBpbnQgKmxlbiwgaW50IG1raV9p
bmRleCkgeworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF90ZXN0X2NhbGxfcHJvdGVjdF9ydGNwKHNy
dHBfdCBzcnRwX3NlbmRlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBzcnRwX2hkcl90ICpoZHIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgaW50ICpsZW4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgaW50IG1raV9pbmRleCkKK3sKICAgICBpZiAobWtpX2luZGV4ID09IC0x
KSB7Ci0JcmV0dXJuIHNydHBfcHJvdGVjdF9ydGNwKHNydHBfc2VuZGVyLCBoZHIsIGxlbik7Cisg
ICAgICAgIHJldHVybiBzcnRwX3Byb3RlY3RfcnRjcChzcnRwX3NlbmRlciwgaGRyLCBsZW4pOwog
ICAgIH0gZWxzZSB7Ci0JcmV0dXJuIHNydHBfcHJvdGVjdF9ydGNwX21raShzcnRwX3NlbmRlciwg
aGRyLCBsZW4sIDEsIG1raV9pbmRleCk7CisgICAgICAgIHJldHVybiBzcnRwX3Byb3RlY3RfcnRj
cF9ta2koc3J0cF9zZW5kZXIsIGhkciwgbGVuLCAxLCBta2lfaW5kZXgpOwogICAgIH0KIH0KIAot
c3J0cF9lcnJfc3RhdHVzX3QKLXNydHBfdGVzdF9jYWxsX3VucHJvdGVjdChzcnRwX3Qgc3J0cF9z
ZW5kZXIsIHNydHBfaGRyX3QgKmhkciwgaW50ICpsZW4sIGludCB1c2VfbWtpKSB7CitzcnRwX2Vy
cl9zdGF0dXNfdCBzcnRwX3Rlc3RfY2FsbF91bnByb3RlY3Qoc3J0cF90IHNydHBfc2VuZGVyLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfaGRyX3QgKmhk
ciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgKmxlbiwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgdXNlX21raSkK
K3sKICAgICBpZiAodXNlX21raSA9PSAtMSkgewotCXJldHVybiBzcnRwX3VucHJvdGVjdChzcnRw
X3NlbmRlciwgaGRyLCBsZW4pOworICAgICAgICByZXR1cm4gc3J0cF91bnByb3RlY3Qoc3J0cF9z
ZW5kZXIsIGhkciwgbGVuKTsKICAgICB9IGVsc2UgewotCXJldHVybiBzcnRwX3VucHJvdGVjdF9t
a2koc3J0cF9zZW5kZXIsIGhkciwgbGVuLCB1c2VfbWtpKTsKKyAgICAgICAgcmV0dXJuIHNydHBf
dW5wcm90ZWN0X21raShzcnRwX3NlbmRlciwgaGRyLCBsZW4sIHVzZV9ta2kpOwogICAgIH0KIH0K
IAotc3J0cF9lcnJfc3RhdHVzX3QKLXNydHBfdGVzdF9jYWxsX3VucHJvdGVjdF9ydGNwKHNydHBf
dCBzcnRwX3NlbmRlciwgc3J0cF9oZHJfdCAqaGRyLCBpbnQgKmxlbiwgaW50IHVzZV9ta2kpIHsK
K3NydHBfZXJyX3N0YXR1c190IHNydHBfdGVzdF9jYWxsX3VucHJvdGVjdF9ydGNwKHNydHBfdCBz
cnRwX3NlbmRlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHNydHBfaGRyX3QgKmhkciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGludCAqbGVuLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgaW50IHVzZV9ta2kpCit7CiAgICAgaWYgKHVzZV9ta2kgPT0gLTEpIHsK
LQlyZXR1cm4gc3J0cF91bnByb3RlY3RfcnRjcChzcnRwX3NlbmRlciwgaGRyLCBsZW4pOworICAg
ICAgICByZXR1cm4gc3J0cF91bnByb3RlY3RfcnRjcChzcnRwX3NlbmRlciwgaGRyLCBsZW4pOwog
ICAgIH0gZWxzZSB7Ci0JcmV0dXJuIHNydHBfdW5wcm90ZWN0X3J0Y3BfbWtpKHNydHBfc2VuZGVy
LCBoZHIsIGxlbiwgdXNlX21raSk7CisgICAgICAgIHJldHVybiBzcnRwX3VucHJvdGVjdF9ydGNw
X21raShzcnRwX3NlbmRlciwgaGRyLCBsZW4sIHVzZV9ta2kpOwogICAgIH0KIH0KIAotc3J0cF9l
cnJfc3RhdHVzX3QKLXNydHBfdGVzdCAoY29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5LCBpbnQg
ZXh0ZW5zaW9uX2hlYWRlciwgaW50IG1raV9pbmRleCkKK3NydHBfZXJyX3N0YXR1c190IHNydHBf
dGVzdChjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3ksCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgaW50IGV4dGVuc2lvbl9oZWFkZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
aW50IG1raV9pbmRleCkKIHsKICAgICBpbnQgaTsKICAgICBzcnRwX3Qgc3J0cF9zZW5kZXI7CkBA
IC0xMDAwLDkgKzk5NSw5IEBAIHNydHBfdGVzdCAoY29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5
LCBpbnQgZXh0ZW5zaW9uX2hlYWRlciwgaW50IG1raV9pbmRleCkKICAgICBzcnRwX2hkcl90ICpo
ZHIsICpoZHIyOwogICAgIHVpbnQ4X3QgaGRyX2VuY1s2NF07CiAgICAgdWludDhfdCAqcGt0X2Vu
ZDsKLSAgICBpbnQgbXNnX2xlbl9vY3RldHMsIG1zZ19sZW5fZW5jOwotICAgIGludCBsZW47Ci0g
ICAgaW50IHRhZ19sZW5ndGggPSBwb2xpY3ktPnJ0cC5hdXRoX3RhZ19sZW47CisgICAgaW50IG1z
Z19sZW5fb2N0ZXRzLCBtc2dfbGVuX2VuYywgbXNnX2xlbjsKKyAgICBpbnQgbGVuLCBsZW4yOwor
ICAgIHVpbnQzMl90IHRhZ19sZW5ndGg7CiAgICAgdWludDMyX3Qgc3NyYzsKICAgICBzcnRwX3Bv
bGljeV90ICpyY3ZyX3BvbGljeTsKICAgICBzcnRwX3BvbGljeV90IHRtcF9wb2xpY3k7CkBAIC0x
MDEwLDcgKzEwMDUsNyBAQCBzcnRwX3Rlc3QgKGNvbnN0IHNydHBfcG9saWN5X3QgKnBvbGljeSwg
aW50IGV4dGVuc2lvbl9oZWFkZXIsIGludCBta2lfaW5kZXgpCiAgICAgaW50IHVzZV9ta2kgPSAw
OwogCiAgICAgaWYgKG1raV9pbmRleCA+PSAwKQotCXVzZV9ta2kgPSAxOworICAgICAgICB1c2Vf
bWtpID0gMTsKIAogICAgIGlmIChleHRlbnNpb25faGVhZGVyKSB7CiAgICAgICAgIG1lbWNweSgm
dG1wX3BvbGljeSwgcG9saWN5LCBzaXplb2Yoc3J0cF9wb2xpY3lfdCkpOwpAQCAtMTAzMSwxOCAr
MTAyNiwyMSBAQCBzcnRwX3Rlc3QgKGNvbnN0IHNydHBfcG9saWN5X3QgKnBvbGljeSwgaW50IGV4
dGVuc2lvbl9oZWFkZXIsIGludCBta2lfaW5kZXgpCiAgICAgICovCiAgICAgaWYgKHBvbGljeS0+
c3NyYy50eXBlICE9IHNzcmNfc3BlY2lmaWMpIHsKICAgICAgICAgc3NyYyA9IDB4ZGVjYWZiYWQ7
Ci0gICAgfSBlbHNleworICAgIH0gZWxzZSB7CiAgICAgICAgIHNzcmMgPSBwb2xpY3ktPnNzcmMu
dmFsdWU7CiAgICAgfQogICAgIG1zZ19sZW5fb2N0ZXRzID0gMjg7CiAgICAgaWYgKGV4dGVuc2lv
bl9oZWFkZXIpIHsKLSAgICAgICAgaGRyID0gc3J0cF9jcmVhdGVfdGVzdF9wYWNrZXRfZXh0X2hk
cihtc2dfbGVuX29jdGV0cywgc3NyYyk7Ci0gICAgICAgIGhkcjIgPSBzcnRwX2NyZWF0ZV90ZXN0
X3BhY2tldF9leHRfaGRyKG1zZ19sZW5fb2N0ZXRzLCBzc3JjKTsKKyAgICAgICAgaGRyID0gc3J0
cF9jcmVhdGVfdGVzdF9wYWNrZXRfZXh0X2hkcihtc2dfbGVuX29jdGV0cywgc3NyYywgJmxlbik7
CisgICAgICAgIGhkcjIgPSBzcnRwX2NyZWF0ZV90ZXN0X3BhY2tldF9leHRfaGRyKG1zZ19sZW5f
b2N0ZXRzLCBzc3JjLCAmbGVuMik7CiAgICAgfSBlbHNlIHsKLSAgICAgICAgaGRyID0gc3J0cF9j
cmVhdGVfdGVzdF9wYWNrZXQobXNnX2xlbl9vY3RldHMsIHNzcmMpOwotICAgICAgICBoZHIyID0g
c3J0cF9jcmVhdGVfdGVzdF9wYWNrZXQobXNnX2xlbl9vY3RldHMsIHNzcmMpOworICAgICAgICBo
ZHIgPSBzcnRwX2NyZWF0ZV90ZXN0X3BhY2tldChtc2dfbGVuX29jdGV0cywgc3NyYywgJmxlbik7
CisgICAgICAgIGhkcjIgPSBzcnRwX2NyZWF0ZV90ZXN0X3BhY2tldChtc2dfbGVuX29jdGV0cywg
c3NyYywgJmxlbjIpOwogICAgIH0KIAorICAgIC8qIHNhdmUgb3JpZ2luYWwgbXNnIGxlbiAqLwor
ICAgIG1zZ19sZW4gPSBsZW47CisKICAgICBpZiAoaGRyID09IE5VTEwpIHsKICAgICAgICAgZnJl
ZShoZHIyKTsKICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19hbGxvY19mYWlsOwpAQCAt
MTA1MiwxOCArMTA1MCwxMiBAQCBzcnRwX3Rlc3QgKGNvbnN0IHNydHBfcG9saWN5X3QgKnBvbGlj
eSwgaW50IGV4dGVuc2lvbl9oZWFkZXIsIGludCBta2lfaW5kZXgpCiAgICAgICAgIHJldHVybiBz
cnRwX2Vycl9zdGF0dXNfYWxsb2NfZmFpbDsKICAgICB9CiAKLSAgICAvKiBzZXQgbWVzc2FnZSBs
ZW5ndGggKi8KLSAgICBsZW4gPSBtc2dfbGVuX29jdGV0czsKLSAgICBpZiAoZXh0ZW5zaW9uX2hl
YWRlcikgewotICAgICAgICBsZW4gKz0gMTI7Ci0gICAgfQotCiAgICAgZGVidWdfcHJpbnQobW9k
X2RyaXZlciwgImJlZm9yZSBwcm90ZWN0aW9uOlxuJXMiLAogICAgICAgICAgICAgICAgIHNydHBf
cGFja2V0X3RvX3N0cmluZyhoZHIsIGxlbikpOwogCiAjaWYgUFJJTlRfUkVGRVJFTkNFX1BBQ0tF
VAogICAgIGRlYnVnX3ByaW50KG1vZF9kcml2ZXIsICJyZWZlcmVuY2UgcGFja2V0IGJlZm9yZSBw
cm90ZWN0aW9uOlxuJXMiLAotICAgICAgICAgICAgICAgIG9jdGV0X3N0cmluZ19oZXhfc3RyaW5n
KCh1aW50OF90KiloZHIsIGxlbikpOworICAgICAgICAgICAgICAgIG9jdGV0X3N0cmluZ19oZXhf
c3RyaW5nKCh1aW50OF90ICopaGRyLCBsZW4pKTsKICNlbmRpZgogICAgIGVycl9jaGVjayhzcnRw
X3Rlc3RfY2FsbF9wcm90ZWN0KHNydHBfc2VuZGVyLCBoZHIsICZsZW4sIG1raV9pbmRleCkpOwog
CkBAIC0xMDcxLDcgKzEwNjMsNyBAQCBzcnRwX3Rlc3QgKGNvbnN0IHNydHBfcG9saWN5X3QgKnBv
bGljeSwgaW50IGV4dGVuc2lvbl9oZWFkZXIsIGludCBta2lfaW5kZXgpCiAgICAgICAgICAgICAg
ICAgc3J0cF9wYWNrZXRfdG9fc3RyaW5nKGhkciwgbGVuKSk7CiAjaWYgUFJJTlRfUkVGRVJFTkNF
X1BBQ0tFVAogICAgIGRlYnVnX3ByaW50KG1vZF9kcml2ZXIsICJhZnRlciBwcm90ZWN0aW9uOlxu
JXMiLAotICAgICAgICAgICAgICAgIG9jdGV0X3N0cmluZ19oZXhfc3RyaW5nKCh1aW50OF90Kilo
ZHIsIGxlbikpOworICAgICAgICAgICAgICAgIG9jdGV0X3N0cmluZ19oZXhfc3RyaW5nKCh1aW50
OF90ICopaGRyLCBsZW4pKTsKICNlbmRpZgogCiAgICAgLyogc2F2ZSBwcm90ZWN0ZWQgbWVzc2Fn
ZSBhbmQgbGVuZ3RoICovCkBAIC0xMDg1LDE2ICsxMDc3LDE0IEBAIHNydHBfdGVzdCAoY29uc3Qg
c3J0cF9wb2xpY3lfdCAqcG9saWN5LCBpbnQgZXh0ZW5zaW9uX2hlYWRlciwgaW50IG1raV9pbmRl
eCkKICAgICAgKiBkYXRhIGZvbGxvd2luZyB0aGUgcGFja2V0IGlzIGRpZmZlcmVudCwgdGhlbiB3
ZSBrbm93IHRoYXQgdGhlCiAgICAgICogcHJvdGVjdCBmdW5jdGlvbiBpcyBvdmVyd3JpdGluZyB0
aGUgZW5kIG9mIHRoZSBwYWNrZXQuCiAgICAgICovCi0gICAgcGt0X2VuZCA9ICh1aW50OF90Kilo
ZHIgKyBzaXplb2Yoc3J0cF9oZHJfdCkKLSAgICAgICAgICAgICAgKyBtc2dfbGVuX29jdGV0cyAr
IHRhZ19sZW5ndGg7Ci0gICAgaWYgKGV4dGVuc2lvbl9oZWFkZXIpIHsKLSAgICAgICAgcGt0X2Vu
ZCArPSAxMjsKLSAgICB9CisgICAgZXJyX2NoZWNrKHNydHBfZ2V0X3Byb3RlY3RfdHJhaWxlcl9s
ZW5ndGgoc3J0cF9zZW5kZXIsIHVzZV9ta2ksIG1raV9pbmRleCwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmdGFnX2xlbmd0aCkpOworICAgIHBrdF9lbmQg
PSAodWludDhfdCAqKWhkciArIG1zZ19sZW4gKyB0YWdfbGVuZ3RoOwogICAgIGZvciAoaSA9IDA7
IGkgPCA0OyBpKyspIHsKICAgICAgICAgaWYgKHBrdF9lbmRbaV0gIT0gMHhmZikgewogICAgICAg
ICAgICAgZnByaW50ZihzdGRvdXQsICJvdmVyd3JpdGUgaW4gc3J0cF9wcm90ZWN0KCkgZnVuY3Rp
b24gIgotICAgICAgICAgICAgICAgICAgICAiKGV4cGVjdGVkICV4LCBmb3VuZCAleCBpbiB0cmFp
bGluZyBvY3RldCAlZClcbiIsCi0gICAgICAgICAgICAgICAgICAgIDB4ZmYsICgodWludDhfdCop
aGRyKVtpXSwgaSk7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIihleHBlY3RlZCAleCwg
Zm91bmQgJXggaW4gdHJhaWxpbmcgb2N0ZXQgJWQpXG4iLAorICAgICAgICAgICAgICAgICAgICAw
eGZmLCAoKHVpbnQ4X3QgKiloZHIpW2ldLCBpKTsKICAgICAgICAgICAgIGZyZWUoaGRyKTsKICAg
ICAgICAgICAgIGZyZWUoaGRyMik7CiAgICAgICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVz
X2FsZ29fZmFpbDsKQEAgLTExMTQsNyArMTEwNCw3IEBAIHNydHBfdGVzdCAoY29uc3Qgc3J0cF9w
b2xpY3lfdCAqcG9saWN5LCBpbnQgZXh0ZW5zaW9uX2hlYWRlciwgaW50IG1raV9pbmRleCkKICAg
ICAgICAgcHJpbnRmKCJ0ZXN0aW5nIHRoYXQgY2lwaGVydGV4dCBpcyBkaXN0aW5jdCBmcm9tIHBs
YWludGV4dC4uLiIpOwogICAgICAgICBzdGF0dXMgPSBzcnRwX2Vycl9zdGF0dXNfYWxnb19mYWls
OwogICAgICAgICBmb3IgKGkgPSAxMjsgaSA8IG1zZ19sZW5fb2N0ZXRzICsgMTI7IGkrKykgewot
ICAgICAgICAgICAgaWYgKCgodWludDhfdCopaGRyKVtpXSAhPSAoKHVpbnQ4X3QqKWhkcjIpW2ld
KSB7CisgICAgICAgICAgICBpZiAoKCh1aW50OF90ICopaGRyKVtpXSAhPSAoKHVpbnQ4X3QgKilo
ZHIyKVtpXSkgewogICAgICAgICAgICAgICAgIHN0YXR1cyA9IHNydHBfZXJyX3N0YXR1c19vazsK
ICAgICAgICAgICAgIH0KICAgICAgICAgfQpAQCAtMTEzNCw3ICsxMTI0LDcgQEAgc3J0cF90ZXN0
IChjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3ksIGludCBleHRlbnNpb25faGVhZGVyLCBpbnQg
bWtpX2luZGV4KQogICAgICAqIHdlIGFsd2F5cyBjb3B5IHRoZSBwb2xpY3kgaW50byB0aGUgcmN2
cl9wb2xpY3ksIHNpbmNlIG90aGVyd2lzZQogICAgICAqIHRoZSBjb21waWxlciB3b3VsZCBmcmV0
IGFib3V0IHRoZSBjb25zdG5lc3Mgb2YgdGhlIHBvbGljeQogICAgICAqLwotICAgIHJjdnJfcG9s
aWN5ID0gKHNydHBfcG9saWN5X3QqKW1hbGxvYyhzaXplb2Yoc3J0cF9wb2xpY3lfdCkpOworICAg
IHJjdnJfcG9saWN5ID0gKHNydHBfcG9saWN5X3QgKiltYWxsb2Moc2l6ZW9mKHNydHBfcG9saWN5
X3QpKTsKICAgICBpZiAocmN2cl9wb2xpY3kgPT0gTlVMTCkgewogICAgICAgICBmcmVlKGhkcik7
CiAgICAgICAgIGZyZWUoaGRyMik7CkBAIC0xMTYwLDggKzExNTAsOCBAQCBzcnRwX3Rlc3QgKGNv
bnN0IHNydHBfcG9saWN5X3QgKnBvbGljeSwgaW50IGV4dGVuc2lvbl9oZWFkZXIsIGludCBta2lf
aW5kZXgpCiAgICAgICAgICAgICAgICAgc3J0cF9wYWNrZXRfdG9fc3RyaW5nKGhkciwgbGVuKSk7
CiAKICAgICAvKiB2ZXJpZnkgdGhhdCB0aGUgdW5wcm90ZWN0ZWQgcGFja2V0IG1hdGNoZXMgdGhl
IG9yaWdpYWwgb25lICovCi0gICAgZm9yIChpID0gMDsgaSA8IG1zZ19sZW5fb2N0ZXRzOyBpKysp
IHsKLSAgICAgICAgaWYgKCgodWludDhfdCopaGRyKVtpXSAhPSAoKHVpbnQ4X3QqKWhkcjIpW2ld
KSB7CisgICAgZm9yIChpID0gMDsgaSA8IGxlbjsgaSsrKSB7CisgICAgICAgIGlmICgoKHVpbnQ4
X3QgKiloZHIpW2ldICE9ICgodWludDhfdCAqKWhkcjIpW2ldKSB7CiAgICAgICAgICAgICBmcHJp
bnRmKHN0ZG91dCwgIm1pc21hdGNoIGF0IG9jdGV0ICVkXG4iLCBpKTsKICAgICAgICAgICAgIHN0
YXR1cyA9IHNydHBfZXJyX3N0YXR1c19hbGdvX2ZhaWw7CiAgICAgICAgIH0KQEAgLTExNzcsMTUg
KzExNjcsMTMgQEAgc3J0cF90ZXN0IChjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3ksIGludCBl
eHRlbnNpb25faGVhZGVyLCBpbnQgbWtpX2luZGV4KQogICAgICAqIGlmIHRoZSBwb2xpY3kgaW5j
bHVkZXMgYXV0aGVudGljYXRpb24sIHRoZW4gdGVzdCBmb3IgZmFsc2UgcG9zaXRpdmVzCiAgICAg
ICovCiAgICAgaWYgKHBvbGljeS0+cnRwLnNlY19zZXJ2ICYgc2VjX3NlcnZfYXV0aCkgewotICAg
ICAgICBjaGFyICpkYXRhID0gKChjaGFyKiloZHIpICsgMTI7CisgICAgICAgIGNoYXIgKmRhdGEg
PSAoKGNoYXIgKiloZHIpICsgKGV4dGVuc2lvbl9oZWFkZXIgPyAyNCA6IDEyKTsKIAogICAgICAg
ICBwcmludGYoInRlc3RpbmcgZm9yIGZhbHNlIHBvc2l0aXZlcyBpbiByZXBsYXkgY2hlY2suLi4i
KTsKIAotICAgICAgICAvKiBzZXQgbWVzc2FnZSBsZW5ndGggKi8KLSAgICAgICAgbGVuID0gbXNn
X2xlbl9lbmM7Ci0KICAgICAgICAgLyogdW5wcm90ZWN0IGEgc2Vjb25kIHRpbWUgLSBzaG91bGQg
ZmFpbCB3aXRoIGEgcmVwbGF5IGVycm9yICovCi0gICAgICAgIHN0YXR1cyA9IHNydHBfdGVzdF9j
YWxsX3VucHJvdGVjdChzcnRwX3JjdnIsIGhkciwgJmxlbiwgdXNlX21raSk7CisgICAgICAgIHN0
YXR1cyA9CisgICAgICAgICAgICBzcnRwX3Rlc3RfY2FsbF91bnByb3RlY3Qoc3J0cF9yY3ZyLCBo
ZHIsICZtc2dfbGVuX2VuYywgdXNlX21raSk7CiAgICAgICAgIGlmIChzdGF0dXMgIT0gc3J0cF9l
cnJfc3RhdHVzX3JlcGxheV9mYWlsKSB7CiAgICAgICAgICAgICBwcmludGYoImZhaWxlZCB3aXRo
IGVycm9yIGNvZGUgJWRcbiIsIHN0YXR1cyk7CiAgICAgICAgICAgICBmcmVlKGhkcik7CkBAIC0x
MjAxLDE3ICsxMTg5LDExIEBAIHNydHBfdGVzdCAoY29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5
LCBpbnQgZXh0ZW5zaW9uX2hlYWRlciwgaW50IG1raV9pbmRleCkKICAgICAgICAgLyogaW5jcmVt
ZW50IHNlcXVlbmNlIG51bWJlciBpbiBoZWFkZXIgKi8KICAgICAgICAgaGRyLT5zZXErKzsKIAot
ICAgICAgICAvKiBzZXQgbWVzc2FnZSBsZW5ndGggKi8KLSAgICAgICAgbGVuID0gbXNnX2xlbl9v
Y3RldHM7Ci0gICAgICAgIGlmIChleHRlbnNpb25faGVhZGVyKSB7Ci0gICAgICAgICAgICBsZW4g
Kz0gMTI7Ci0gICAgICAgIH0KLQogICAgICAgICAvKiBhcHBseSBwcm90ZWN0aW9uICovCiAgICAg
ICAgIGVycl9jaGVjayhzcnRwX3Rlc3RfY2FsbF9wcm90ZWN0KHNydHBfc2VuZGVyLCBoZHIsICZs
ZW4sIG1raV9pbmRleCkpOwogCiAgICAgICAgIC8qIGZsaXAgYml0cyBpbiBwYWNrZXQgKi8KLSAg
ICAgICAgZGF0YVtleHRlbnNpb25faGVhZGVyID8gMTIgOiAwXSBePSAweGZmOworICAgICAgICBk
YXRhWzBdIF49IDB4ZmY7CiAKICAgICAgICAgLyogdW5wcm90ZWN0LCBhbmQgY2hlY2sgZm9yIGF1
dGhlbnRpY2F0aW9uIGZhaWx1cmUgKi8KICAgICAgICAgc3RhdHVzID0gc3J0cF90ZXN0X2NhbGxf
dW5wcm90ZWN0KHNydHBfcmN2ciwgaGRyLCAmbGVuLCB1c2VfbWtpKTsKQEAgLTEyMjQsNyArMTIw
Niw2IEBAIHNydHBfdGVzdCAoY29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5LCBpbnQgZXh0ZW5z
aW9uX2hlYWRlciwgaW50IG1raV9pbmRleCkKICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAg
IHByaW50ZigicGFzc2VkXG4iKTsKICAgICAgICAgfQotCiAgICAgfQogCiAgICAgZXJyX2NoZWNr
KHNydHBfZGVhbGxvYyhzcnRwX3NlbmRlcikpOwpAQCAtMTIzNiw5ICsxMjE3LDcgQEAgc3J0cF90
ZXN0IChjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3ksIGludCBleHRlbnNpb25faGVhZGVyLCBp
bnQgbWtpX2luZGV4KQogICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAKLQotc3J0
cF9lcnJfc3RhdHVzX3QKLXNydGNwX3Rlc3QgKGNvbnN0IHNydHBfcG9saWN5X3QgKnBvbGljeSwg
aW50IG1raV9pbmRleCkKK3NydHBfZXJyX3N0YXR1c190IHNydGNwX3Rlc3QoY29uc3Qgc3J0cF9w
b2xpY3lfdCAqcG9saWN5LCBpbnQgbWtpX2luZGV4KQogewogICAgIGludCBpOwogICAgIHNydHBf
dCBzcnRjcF9zZW5kZXI7CkBAIC0xMjQ3LDkgKzEyMjYsOSBAQCBzcnRjcF90ZXN0IChjb25zdCBz
cnRwX3BvbGljeV90ICpwb2xpY3ksIGludCBta2lfaW5kZXgpCiAgICAgc3J0cF9oZHJfdCAqaGRy
LCAqaGRyMjsKICAgICB1aW50OF90IGhkcl9lbmNbNjRdOwogICAgIHVpbnQ4X3QgKnBrdF9lbmQ7
Ci0gICAgaW50IG1zZ19sZW5fb2N0ZXRzLCBtc2dfbGVuX2VuYzsKLSAgICBpbnQgbGVuOwotICAg
IGludCB0YWdfbGVuZ3RoID0gcG9saWN5LT5ydHAuYXV0aF90YWdfbGVuOworICAgIGludCBtc2df
bGVuX29jdGV0cywgbXNnX2xlbl9lbmMsIG1zZ19sZW47CisgICAgaW50IGxlbiwgbGVuMjsKKyAg
ICB1aW50MzJfdCB0YWdfbGVuZ3RoOwogICAgIHVpbnQzMl90IHNzcmM7CiAgICAgc3J0cF9wb2xp
Y3lfdCAqcmN2cl9wb2xpY3k7CiAgICAgaW50IHVzZV9ta2kgPSAwOwpAQCAtMTI2OSwzMCArMTI0
OCwyOSBAQCBzcnRjcF90ZXN0IChjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3ksIGludCBta2lf
aW5kZXgpCiAgICAgICovCiAgICAgaWYgKHBvbGljeS0+c3NyYy50eXBlICE9IHNzcmNfc3BlY2lm
aWMpIHsKICAgICAgICAgc3NyYyA9IDB4ZGVjYWZiYWQ7Ci0gICAgfSBlbHNleworICAgIH0gZWxz
ZSB7CiAgICAgICAgIHNzcmMgPSBwb2xpY3ktPnNzcmMudmFsdWU7CiAgICAgfQogICAgIG1zZ19s
ZW5fb2N0ZXRzID0gMjg7Ci0gICAgaGRyID0gc3J0cF9jcmVhdGVfdGVzdF9wYWNrZXQobXNnX2xl
bl9vY3RldHMsIHNzcmMpOworICAgIGhkciA9IHNydHBfY3JlYXRlX3Rlc3RfcGFja2V0KG1zZ19s
ZW5fb2N0ZXRzLCBzc3JjLCAmbGVuKTsKKyAgICAvKiBzYXZlIG1lc3NhZ2UgbGVuICovCisgICAg
bXNnX2xlbiA9IGxlbjsKIAogICAgIGlmIChoZHIgPT0gTlVMTCkgewogICAgICAgICByZXR1cm4g
c3J0cF9lcnJfc3RhdHVzX2FsbG9jX2ZhaWw7CiAgICAgfQotICAgIGhkcjIgPSBzcnRwX2NyZWF0
ZV90ZXN0X3BhY2tldChtc2dfbGVuX29jdGV0cywgc3NyYyk7CisgICAgaGRyMiA9IHNydHBfY3Jl
YXRlX3Rlc3RfcGFja2V0KG1zZ19sZW5fb2N0ZXRzLCBzc3JjLCAmbGVuMik7CiAgICAgaWYgKGhk
cjIgPT0gTlVMTCkgewogICAgICAgICBmcmVlKGhkcik7CiAgICAgICAgIHJldHVybiBzcnRwX2Vy
cl9zdGF0dXNfYWxsb2NfZmFpbDsKICAgICB9CiAKLSAgICAvKiBzZXQgbWVzc2FnZSBsZW5ndGgg
Ki8KLSAgICBsZW4gPSBtc2dfbGVuX29jdGV0czsKLQogICAgIGRlYnVnX3ByaW50KG1vZF9kcml2
ZXIsICJiZWZvcmUgcHJvdGVjdGlvbjpcbiVzIiwKICAgICAgICAgICAgICAgICBzcnRwX3BhY2tl
dF90b19zdHJpbmcoaGRyLCBsZW4pKTsKIAogI2lmIFBSSU5UX1JFRkVSRU5DRV9QQUNLRVQKICAg
ICBkZWJ1Z19wcmludChtb2RfZHJpdmVyLCAicmVmZXJlbmNlIHBhY2tldCBiZWZvcmUgcHJvdGVj
dGlvbjpcbiVzIiwKLSAgICAgICAgICAgICAgICBvY3RldF9zdHJpbmdfaGV4X3N0cmluZygodWlu
dDhfdCopaGRyLCBsZW4pKTsKKyAgICAgICAgICAgICAgICBvY3RldF9zdHJpbmdfaGV4X3N0cmlu
ZygodWludDhfdCAqKWhkciwgbGVuKSk7CiAjZW5kaWYKICAgICBlcnJfY2hlY2soc3J0cF90ZXN0
X2NhbGxfcHJvdGVjdF9ydGNwKHNydGNwX3NlbmRlciwgaGRyLCAmbGVuLCBta2lfaW5kZXgpKTsK
IApAQCAtMTMwMCw3ICsxMjc4LDcgQEAgc3J0Y3BfdGVzdCAoY29uc3Qgc3J0cF9wb2xpY3lfdCAq
cG9saWN5LCBpbnQgbWtpX2luZGV4KQogICAgICAgICAgICAgICAgIHNydHBfcGFja2V0X3RvX3N0
cmluZyhoZHIsIGxlbikpOwogI2lmIFBSSU5UX1JFRkVSRU5DRV9QQUNLRVQKICAgICBkZWJ1Z19w
cmludChtb2RfZHJpdmVyLCAiYWZ0ZXIgcHJvdGVjdGlvbjpcbiVzIiwKLSAgICAgICAgICAgICAg
ICBvY3RldF9zdHJpbmdfaGV4X3N0cmluZygodWludDhfdCopaGRyLCBsZW4pKTsKKyAgICAgICAg
ICAgICAgICBvY3RldF9zdHJpbmdfaGV4X3N0cmluZygodWludDhfdCAqKWhkciwgbGVuKSk7CiAj
ZW5kaWYKIAogICAgIC8qIHNhdmUgcHJvdGVjdGVkIG1lc3NhZ2UgYW5kIGxlbmd0aCAqLwpAQCAt
MTMxNCwxMyArMTI5MiwxNCBAQCBzcnRjcF90ZXN0IChjb25zdCBzcnRwX3BvbGljeV90ICpwb2xp
Y3ksIGludCBta2lfaW5kZXgpCiAgICAgICogZGF0YSBmb2xsb3dpbmcgdGhlIHBhY2tldCBpcyBk
aWZmZXJlbnQsIHRoZW4gd2Uga25vdyB0aGF0IHRoZQogICAgICAqIHByb3RlY3QgZnVuY3Rpb24g
aXMgb3ZlcndyaXRpbmcgdGhlIGVuZCBvZiB0aGUgcGFja2V0LgogICAgICAqLwotICAgIHBrdF9l
bmQgPSAodWludDhfdCopaGRyICsgc2l6ZW9mKHNydHBfaGRyX3QpCi0gICAgICAgICAgICAgICsg
bXNnX2xlbl9vY3RldHMgKyB0YWdfbGVuZ3RoOworICAgIHNydHBfZ2V0X3Byb3RlY3RfcnRjcF90
cmFpbGVyX2xlbmd0aChzcnRjcF9zZW5kZXIsIHVzZV9ta2ksIG1raV9pbmRleCwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnRhZ19sZW5ndGgpOworICAgIHBrdF9l
bmQgPSAodWludDhfdCAqKWhkciArIG1zZ19sZW4gKyB0YWdfbGVuZ3RoOwogICAgIGZvciAoaSA9
IDA7IGkgPCA0OyBpKyspIHsKICAgICAgICAgaWYgKHBrdF9lbmRbaV0gIT0gMHhmZikgewogICAg
ICAgICAgICAgZnByaW50ZihzdGRvdXQsICJvdmVyd3JpdGUgaW4gc3J0cF9wcm90ZWN0X3J0Y3Ao
KSBmdW5jdGlvbiAiCi0gICAgICAgICAgICAgICAgICAgICIoZXhwZWN0ZWQgJXgsIGZvdW5kICV4
IGluIHRyYWlsaW5nIG9jdGV0ICVkKVxuIiwKLSAgICAgICAgICAgICAgICAgICAgMHhmZiwgKCh1
aW50OF90KiloZHIpW2ldLCBpKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAiKGV4cGVj
dGVkICV4LCBmb3VuZCAleCBpbiB0cmFpbGluZyBvY3RldCAlZClcbiIsCisgICAgICAgICAgICAg
ICAgICAgIDB4ZmYsICgodWludDhfdCAqKWhkcilbaV0sIGkpOwogICAgICAgICAgICAgZnJlZSho
ZHIpOwogICAgICAgICAgICAgZnJlZShoZHIyKTsKICAgICAgICAgICAgIHJldHVybiBzcnRwX2Vy
cl9zdGF0dXNfYWxnb19mYWlsOwpAQCAtMTMzNiwxMSArMTMxNSwxMSBAQCBzcnRjcF90ZXN0IChj
b25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3ksIGludCBta2lfaW5kZXgpCiAgICAgICogcmVhc29u
LCB3ZSBza2lwIHRoaXMgY2hlY2sgaWYgdGhlIHBsYWludGV4dCBpcyBsZXNzIHRoYW4gZm91cgog
ICAgICAqIG9jdGV0cyBsb25nLgogICAgICAqLwotICAgIGlmICgocG9saWN5LT5ydHAuc2VjX3Nl
cnYgJiBzZWNfc2Vydl9jb25mKSAmJiAobXNnX2xlbl9vY3RldHMgPj0gNCkpIHsKKyAgICBpZiAo
KHBvbGljeS0+cnRjcC5zZWNfc2VydiAmIHNlY19zZXJ2X2NvbmYpICYmIChtc2dfbGVuX29jdGV0
cyA+PSA0KSkgewogICAgICAgICBwcmludGYoInRlc3RpbmcgdGhhdCBjaXBoZXJ0ZXh0IGlzIGRp
c3RpbmN0IGZyb20gcGxhaW50ZXh0Li4uIik7CiAgICAgICAgIHN0YXR1cyA9IHNydHBfZXJyX3N0
YXR1c19hbGdvX2ZhaWw7CiAgICAgICAgIGZvciAoaSA9IDEyOyBpIDwgbXNnX2xlbl9vY3RldHMg
KyAxMjsgaSsrKSB7Ci0gICAgICAgICAgICBpZiAoKCh1aW50OF90KiloZHIpW2ldICE9ICgodWlu
dDhfdCopaGRyMilbaV0pIHsKKyAgICAgICAgICAgIGlmICgoKHVpbnQ4X3QgKiloZHIpW2ldICE9
ICgodWludDhfdCAqKWhkcjIpW2ldKSB7CiAgICAgICAgICAgICAgICAgc3RhdHVzID0gc3J0cF9l
cnJfc3RhdHVzX29rOwogICAgICAgICAgICAgfQogICAgICAgICB9CkBAIC0xMzYwLDcgKzEzMzks
NyBAQCBzcnRjcF90ZXN0IChjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3ksIGludCBta2lfaW5k
ZXgpCiAgICAgICogd2UgYWx3YXlzIGNvcHkgdGhlIHBvbGljeSBpbnRvIHRoZSByY3ZyX3BvbGlj
eSwgc2luY2Ugb3RoZXJ3aXNlCiAgICAgICogdGhlIGNvbXBpbGVyIHdvdWxkIGZyZXQgYWJvdXQg
dGhlIGNvbnN0bmVzcyBvZiB0aGUgcG9saWN5CiAgICAgICovCi0gICAgcmN2cl9wb2xpY3kgPSAo
c3J0cF9wb2xpY3lfdCopbWFsbG9jKHNpemVvZihzcnRwX3BvbGljeV90KSk7CisgICAgcmN2cl9w
b2xpY3kgPSAoc3J0cF9wb2xpY3lfdCAqKW1hbGxvYyhzaXplb2Yoc3J0cF9wb2xpY3lfdCkpOwog
ICAgIGlmIChyY3ZyX3BvbGljeSA9PSBOVUxMKSB7CiAgICAgICAgIHJldHVybiBzcnRwX2Vycl9z
dGF0dXNfYWxsb2NfZmFpbDsKICAgICB9CkBAIC0xMzc3LDggKzEzNTYsOCBAQCBzcnRjcF90ZXN0
IChjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3ksIGludCBta2lfaW5kZXgpCiAgICAgICAgICAg
ICAgICAgc3J0cF9wYWNrZXRfdG9fc3RyaW5nKGhkciwgbGVuKSk7CiAKICAgICAvKiB2ZXJpZnkg
dGhhdCB0aGUgdW5wcm90ZWN0ZWQgcGFja2V0IG1hdGNoZXMgdGhlIG9yaWdpYWwgb25lICovCi0g
ICAgZm9yIChpID0gMDsgaSA8IG1zZ19sZW5fb2N0ZXRzOyBpKyspIHsKLSAgICAgICAgaWYgKCgo
dWludDhfdCopaGRyKVtpXSAhPSAoKHVpbnQ4X3QqKWhkcjIpW2ldKSB7CisgICAgZm9yIChpID0g
MDsgaSA8IGxlbjsgaSsrKSB7CisgICAgICAgIGlmICgoKHVpbnQ4X3QgKiloZHIpW2ldICE9ICgo
dWludDhfdCAqKWhkcjIpW2ldKSB7CiAgICAgICAgICAgICBmcHJpbnRmKHN0ZG91dCwgIm1pc21h
dGNoIGF0IG9jdGV0ICVkXG4iLCBpKTsKICAgICAgICAgICAgIHN0YXR1cyA9IHNydHBfZXJyX3N0
YXR1c19hbGdvX2ZhaWw7CiAgICAgICAgIH0KQEAgLTEzOTQsMTUgKzEzNzMsMTMgQEAgc3J0Y3Bf
dGVzdCAoY29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5LCBpbnQgbWtpX2luZGV4KQogICAgICAq
IGlmIHRoZSBwb2xpY3kgaW5jbHVkZXMgYXV0aGVudGljYXRpb24sIHRoZW4gdGVzdCBmb3IgZmFs
c2UgcG9zaXRpdmVzCiAgICAgICovCiAgICAgaWYgKHBvbGljeS0+cnRwLnNlY19zZXJ2ICYgc2Vj
X3NlcnZfYXV0aCkgewotICAgICAgICBjaGFyICpkYXRhID0gKChjaGFyKiloZHIpICsgMTI7Cisg
ICAgICAgIGNoYXIgKmRhdGEgPSAoKGNoYXIgKiloZHIpICsgMTI7CiAKICAgICAgICAgcHJpbnRm
KCJ0ZXN0aW5nIGZvciBmYWxzZSBwb3NpdGl2ZXMgaW4gcmVwbGF5IGNoZWNrLi4uIik7CiAKLSAg
ICAgICAgLyogc2V0IG1lc3NhZ2UgbGVuZ3RoICovCi0gICAgICAgIGxlbiA9IG1zZ19sZW5fZW5j
OwotCiAgICAgICAgIC8qIHVucHJvdGVjdCBhIHNlY29uZCB0aW1lIC0gc2hvdWxkIGZhaWwgd2l0
aCBhIHJlcGxheSBlcnJvciAqLwotICAgICAgICBzdGF0dXMgPSBzcnRwX3Rlc3RfY2FsbF91bnBy
b3RlY3RfcnRjcChzcnRjcF9yY3ZyLCBoZHIsICZsZW4sIHVzZV9ta2kpOworICAgICAgICBzdGF0
dXMgPSBzcnRwX3Rlc3RfY2FsbF91bnByb3RlY3RfcnRjcChzcnRjcF9yY3ZyLCBoZHIsICZtc2df
bGVuX2VuYywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
dXNlX21raSk7CiAgICAgICAgIGlmIChzdGF0dXMgIT0gc3J0cF9lcnJfc3RhdHVzX3JlcGxheV9m
YWlsKSB7CiAgICAgICAgICAgICBwcmludGYoImZhaWxlZCB3aXRoIGVycm9yIGNvZGUgJWRcbiIs
IHN0YXR1cyk7CiAgICAgICAgICAgICBmcmVlKGhkcik7CkBAIC0xNDE4LDExICsxMzk1LDkgQEAg
c3J0Y3BfdGVzdCAoY29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5LCBpbnQgbWtpX2luZGV4KQog
ICAgICAgICAvKiBpbmNyZW1lbnQgc2VxdWVuY2UgbnVtYmVyIGluIGhlYWRlciAqLwogICAgICAg
ICBoZHItPnNlcSsrOwogCi0gICAgICAgIC8qIHNldCBtZXNzYWdlIGxlbmd0aCAqLwotICAgICAg
ICBsZW4gPSBtc2dfbGVuX29jdGV0czsKLQogICAgICAgICAvKiBhcHBseSBwcm90ZWN0aW9uICov
Ci0gICAgICAgIGVycl9jaGVjayhzcnRwX3Rlc3RfY2FsbF9wcm90ZWN0X3J0Y3Aoc3J0Y3Bfc2Vu
ZGVyLCBoZHIsICZsZW4sIG1raV9pbmRleCkpOworICAgICAgICBlcnJfY2hlY2soCisgICAgICAg
ICAgICBzcnRwX3Rlc3RfY2FsbF9wcm90ZWN0X3J0Y3Aoc3J0Y3Bfc2VuZGVyLCBoZHIsICZsZW4s
IG1raV9pbmRleCkpOwogCiAgICAgICAgIC8qIGZsaXAgYml0cyBpbiBwYWNrZXQgKi8KICAgICAg
ICAgZGF0YVswXSBePSAweGZmOwpAQCAtMTQzOCw3ICsxNDEzLDYgQEAgc3J0Y3BfdGVzdCAoY29u
c3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5LCBpbnQgbWtpX2luZGV4KQogICAgICAgICB9IGVsc2Ug
ewogICAgICAgICAgICAgcHJpbnRmKCJwYXNzZWRcbiIpOwogICAgICAgICB9Ci0KICAgICB9CiAK
ICAgICBlcnJfY2hlY2soc3J0cF9kZWFsbG9jKHNydGNwX3NlbmRlcikpOwpAQCAtMTQ1MCwyMSAr
MTQyNCwxMSBAQCBzcnRjcF90ZXN0IChjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3ksIGludCBt
a2lfaW5kZXgpCiAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0KIAotCi1zcnRwX2Vy
cl9zdGF0dXNfdAotc3J0cF9zZXNzaW9uX3ByaW50X3BvbGljeSAoc3J0cF90IHNydHApCitzcnRw
X2Vycl9zdGF0dXNfdCBzcnRwX3Nlc3Npb25fcHJpbnRfcG9saWN5KHNydHBfdCBzcnRwKQogewot
ICAgIGNoYXIgKnNlcnZfZGVzY3JbNF0gPSB7Ci0gICAgICAgICJub25lIiwKLSAgICAgICAgImNv
bmZpZGVudGlhbGl0eSIsCi0gICAgICAgICJhdXRoZW50aWNhdGlvbiIsCi0gICAgICAgICJjb25m
aWRlbnRpYWxpdHkgYW5kIGF1dGhlbnRpY2F0aW9uIgotICAgIH07Ci0gICAgY2hhciAqZGlyZWN0
aW9uWzNdID0gewotICAgICAgICAidW5rbm93biIsCi0gICAgICAgICJvdXRib3VuZCIsCi0gICAg
ICAgICJpbmJvdW5kIgotICAgIH07CisgICAgY2hhciAqc2Vydl9kZXNjcls0XSA9IHsgIm5vbmUi
LCAiY29uZmlkZW50aWFsaXR5IiwgImF1dGhlbnRpY2F0aW9uIiwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAiY29uZmlkZW50aWFsaXR5IGFuZCBhdXRoZW50aWNhdGlvbiIgfTsKKyAgICBj
aGFyICpkaXJlY3Rpb25bM10gPSB7ICJ1bmtub3duIiwgIm91dGJvdW5kIiwgImluYm91bmQiIH07
CiAgICAgc3J0cF9zdHJlYW1fdCBzdHJlYW07CiAgICAgc3J0cF9zZXNzaW9uX2tleXNfdCAqc2Vz
c2lvbl9rZXlzID0gTlVMTDsKIApAQCAtMTQ5OCw3ICsxNDYyLDcgQEAgc3J0cF9zZXNzaW9uX3By
aW50X3BvbGljeSAoc3J0cF90IHNydHApCiAKICAgICAgICAgcHJpbnRmKCIjIEVuY3J5cHRlZCBl
eHRlbnNpb24gaGVhZGVyczogIik7CiAgICAgICAgIGlmIChzdHJlYW0tPmVuY194dG5faGRyICYm
IHN0cmVhbS0+ZW5jX3h0bl9oZHJfY291bnQgPiAwKSB7Ci0gICAgICAgICAgICBpbnQqIGVuY194
dG5faGRyID0gc3RyZWFtLT5lbmNfeHRuX2hkcjsKKyAgICAgICAgICAgIGludCAqZW5jX3h0bl9o
ZHIgPSBzdHJlYW0tPmVuY194dG5faGRyOwogICAgICAgICAgICAgaW50IGNvdW50ID0gc3RyZWFt
LT5lbmNfeHRuX2hkcl9jb3VudDsKICAgICAgICAgICAgIHdoaWxlIChjb3VudCA+IDApIHsKICAg
ICAgICAgICAgICAgICBwcmludGYoIiVkICIsICplbmNfeHRuX2hkcik7CkBAIC0xNTI4LDggKzE0
OTIsNyBAQCBzcnRwX3Nlc3Npb25fcHJpbnRfcG9saWN5IChzcnRwX3Qgc3J0cCkKICAgICAgICAg
ICAgICAgICIjIHJ0Y3Agc2VydmljZXM6ICVzXHJcbiIKICAgICAgICAgICAgICAgICIjIHdpbmRv
dyBzaXplOiAgICVsdVxyXG4iCiAgICAgICAgICAgICAgICAiIyB0eCBydHggYWxsb3dlZDolc1xy
XG4iLAotICAgICAgICAgICAgICAgc3RyZWFtLT5zc3JjLAotICAgICAgICAgICAgICAgc2Vzc2lv
bl9rZXlzLT5ydHBfY2lwaGVyLT50eXBlLT5kZXNjcmlwdGlvbiwKKyAgICAgICAgICAgICAgIHN0
cmVhbS0+c3NyYywgc2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVyLT50eXBlLT5kZXNjcmlwdGlvbiwK
ICAgICAgICAgICAgICAgIHNlc3Npb25fa2V5cy0+cnRwX2F1dGgtPnR5cGUtPmRlc2NyaXB0aW9u
LAogICAgICAgICAgICAgICAgc2Vydl9kZXNjcltzdHJlYW0tPnJ0cF9zZXJ2aWNlc10sCiAgICAg
ICAgICAgICAgICBzZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyLT50eXBlLT5kZXNjcmlwdGlvbiwK
QEAgLTE1NDAsNyArMTUwMyw3IEBAIHNydHBfc2Vzc2lvbl9wcmludF9wb2xpY3kgKHNydHBfdCBz
cnRwKQogCiAgICAgICAgIHByaW50ZigiIyBFbmNyeXB0ZWQgZXh0ZW5zaW9uIGhlYWRlcnM6ICIp
OwogICAgICAgICBpZiAoc3RyZWFtLT5lbmNfeHRuX2hkciAmJiBzdHJlYW0tPmVuY194dG5faGRy
X2NvdW50ID4gMCkgewotICAgICAgICAgICAgaW50KiBlbmNfeHRuX2hkciA9IHN0cmVhbS0+ZW5j
X3h0bl9oZHI7CisgICAgICAgICAgICBpbnQgKmVuY194dG5faGRyID0gc3RyZWFtLT5lbmNfeHRu
X2hkcjsKICAgICAgICAgICAgIGludCBjb3VudCA9IHN0cmVhbS0+ZW5jX3h0bl9oZHJfY291bnQ7
CiAgICAgICAgICAgICB3aGlsZSAoY291bnQgPiAwKSB7CiAgICAgICAgICAgICAgICAgcHJpbnRm
KCIlZCAiLCAqZW5jX3h0bl9oZHIpOwpAQCAtMTU1OCw4ICsxNTIxLDcgQEAgc3J0cF9zZXNzaW9u
X3ByaW50X3BvbGljeSAoc3J0cF90IHNydHApCiAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19v
azsKIH0KIAotc3J0cF9lcnJfc3RhdHVzX3QKLXNydHBfcHJpbnRfcG9saWN5IChjb25zdCBzcnRw
X3BvbGljeV90ICpwb2xpY3kpCitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3ByaW50X3BvbGljeShj
b25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3kpCiB7CiAgICAgc3J0cF9lcnJfc3RhdHVzX3Qgc3Rh
dHVzOwogICAgIHNydHBfdCBzZXNzaW9uOwpAQCAtMTU5MiwxMSArMTU1NCwxMCBAQCBzcnRwX3By
aW50X3BvbGljeSAoY29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5KQogCiBjaGFyIHBhY2tldF9z
dHJpbmdbTVRVXTsKIAotY2hhciAqCi1zcnRwX3BhY2tldF90b19zdHJpbmcgKHNydHBfaGRyX3Qg
KmhkciwgaW50IHBrdF9vY3RldF9sZW4pCitjaGFyICpzcnRwX3BhY2tldF90b19zdHJpbmcoc3J0
cF9oZHJfdCAqaGRyLCBpbnQgcGt0X29jdGV0X2xlbikKIHsKICAgICBpbnQgb2N0ZXRzX2luX3J0
cF9oZWFkZXIgPSAxMjsKLSAgICB1aW50OF90ICpkYXRhID0gKCh1aW50OF90KiloZHIpICsgb2N0
ZXRzX2luX3J0cF9oZWFkZXI7CisgICAgdWludDhfdCAqZGF0YSA9ICgodWludDhfdCAqKWhkcikg
KyBvY3RldHNfaW5fcnRwX2hlYWRlcjsKICAgICBpbnQgaGV4X2xlbiA9IHBrdF9vY3RldF9sZW4g
LSBvY3RldHNfaW5fcnRwX2hlYWRlcjsKIAogICAgIC8qIHNhbml0eSBjaGVja2luZyAqLwpAQCAt
MTYwNSwyOSArMTU2NiwyMCBAQCBzcnRwX3BhY2tldF90b19zdHJpbmcgKHNydHBfaGRyX3QgKmhk
ciwgaW50IHBrdF9vY3RldF9sZW4pCiAgICAgfQogCiAgICAgLyogd3JpdGUgcGFja2V0IGludG8g
c3RyaW5nICovCi0gICAgc3ByaW50ZihwYWNrZXRfc3RyaW5nLAotICAgICAgICAgICAgIihzKXJ0
cCBwYWNrZXQ6IHtcbiIKLSAgICAgICAgICAgICIgICB2ZXJzaW9uOlx0JWRcbiIKLSAgICAgICAg
ICAgICIgICBwOlx0XHQlZFxuIgotICAgICAgICAgICAgIiAgIHg6XHRcdCVkXG4iCi0gICAgICAg
ICAgICAiICAgY2M6XHRcdCVkXG4iCi0gICAgICAgICAgICAiICAgbTpcdFx0JWRcbiIKLSAgICAg
ICAgICAgICIgICBwdDpcdFx0JXhcbiIKLSAgICAgICAgICAgICIgICBzZXE6XHRcdCV4XG4iCi0g
ICAgICAgICAgICAiICAgdHM6XHRcdCV4XG4iCi0gICAgICAgICAgICAiICAgc3NyYzpcdCV4XG4i
Ci0gICAgICAgICAgICAiICAgZGF0YTpcdCVzXG4iCi0gICAgICAgICAgICAifSAoJWQgb2N0ZXRz
IGluIHRvdGFsKVxuIiwKLSAgICAgICAgICAgIGhkci0+dmVyc2lvbiwKLSAgICAgICAgICAgIGhk
ci0+cCwKLSAgICAgICAgICAgIGhkci0+eCwKLSAgICAgICAgICAgIGhkci0+Y2MsCi0gICAgICAg
ICAgICBoZHItPm0sCi0gICAgICAgICAgICBoZHItPnB0LAotICAgICAgICAgICAgaGRyLT5zZXEs
Ci0gICAgICAgICAgICBoZHItPnRzLAotICAgICAgICAgICAgaGRyLT5zc3JjLAotICAgICAgICAg
ICAgb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcoZGF0YSwgaGV4X2xlbiksCisgICAgc3ByaW50Zihw
YWNrZXRfc3RyaW5nLCAiKHMpcnRwIHBhY2tldDoge1xuIgorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIiAgIHZlcnNpb246XHQlZFxuIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIiAg
IHA6XHRcdCVkXG4iCisgICAgICAgICAgICAgICAgICAgICAgICAgICAiICAgeDpcdFx0JWRcbiIK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICIgICBjYzpcdFx0JWRcbiIKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICIgICBtOlx0XHQlZFxuIgorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIiAgIHB0Olx0XHQleFxuIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIiAgIHNlcTpc
dFx0JXhcbiIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICIgICB0czpcdFx0JXhcbiIKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICIgICBzc3JjOlx0JXhcbiIKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICIgICBkYXRhOlx0JXNcbiIKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICJ9ICglZCBvY3RldHMgaW4gdG90YWwpXG4iLAorICAgICAgICAgICAgaGRyLT52ZXJzaW9uLCBo
ZHItPnAsIGhkci0+eCwgaGRyLT5jYywgaGRyLT5tLCBoZHItPnB0LCBoZHItPnNlcSwKKyAgICAg
ICAgICAgIGhkci0+dHMsIGhkci0+c3NyYywgb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcoZGF0YSwg
aGV4X2xlbiksCiAgICAgICAgICAgICBwa3Rfb2N0ZXRfbGVuKTsKIAogICAgIHJldHVybiBwYWNr
ZXRfc3RyaW5nOwpAQCAtMTY0Myw4ICsxNTk1LDcgQEAgc3J0cF9wYWNrZXRfdG9fc3RyaW5nIChz
cnRwX2hkcl90ICpoZHIsIGludCBwa3Rfb2N0ZXRfbGVuKQogICogb3B0aW1pemUgYXdheSB0aGUg
ZnVuY3Rpb24KICAqLwogCi1kb3VibGUKLW1pcHNfZXN0aW1hdGUgKGludCBudW1fdHJpYWxzLCBp
bnQgKmlnbm9yZSkKK2RvdWJsZSBtaXBzX2VzdGltYXRlKGludCBudW1fdHJpYWxzLCBpbnQgKmln
bm9yZSkKIHsKICAgICBjbG9ja190IHQ7CiAgICAgdm9sYXRpbGUgaW50IGksIHN1bTsKQEAgLTE2
NTYsMjMgKzE2MDcsMjEgQEAgbWlwc19lc3RpbWF0ZSAoaW50IG51bV90cmlhbHMsIGludCAqaWdu
b3JlKQogICAgIH0KICAgICB0ID0gY2xvY2soKSAtIHQ7CiAKLS8qICAgcHJpbnRmKCIlZFxuIiwg
c3VtKTsgKi8KKyAgICAvKiAgIHByaW50ZigiJWRcbiIsIHN1bSk7ICovCiAgICAgKmlnbm9yZSA9
IHN1bTsKIAogICAgIHJldHVybiAoZG91YmxlKW51bV90cmlhbHMgKiBDTE9DS1NfUEVSX1NFQyAv
IHQ7CiB9CiAKLQogLyoKICAqIHNydHBfdmFsaWRhdGUoKSB2ZXJpZmllcyB0aGUgY29ycmVjdG5l
c3Mgb2YgbGlic3J0cCBieSBjb21wYXJpbmcKICAqIHNvbWUgY29tcHV0ZWQgcGFja2V0cyBhZ2Fp
bnN0IHNvbWUgcHJlLWNvbXB1dGVkIHJlZmVyZW5jZSB2YWx1ZXMuCiAgKiBUaGVzZSBwYWNrZXRz
IHdlcmUgbWFkZSB3aXRoIHRoZSBkZWZhdWx0IFNSVFAgcG9saWN5LgogICovCiAKLQotc3J0cF9l
cnJfc3RhdHVzX3QKLXNydHBfdmFsaWRhdGUgKCkKK3NydHBfZXJyX3N0YXR1c190IHNydHBfdmFs
aWRhdGUoKQogeworICAgIC8vIGNsYW5nLWZvcm1hdCBvZmYKICAgICB1aW50OF90IHNydHBfcGxh
aW50ZXh0X3JlZlsyOF0gPSB7CiAgICAgICAgIDB4ODAsIDB4MGYsIDB4MTIsIDB4MzQsIDB4ZGUs
IDB4Y2EsIDB4ZmIsIDB4YWQsCiAgICAgICAgIDB4Y2EsIDB4ZmUsIDB4YmEsIDB4YmUsIDB4YWIs
IDB4YWIsIDB4YWIsIDB4YWIsCkBAIC0xNzEyLDYgKzE2NjEsOCBAQCBzcnRwX3ZhbGlkYXRlICgp
CiAgICAgICAgIDB4ODAsIDB4MDAsIDB4MDAsIDB4MDEsIDB4OTksIDB4M2UsIDB4MDgsIDB4Y2Qs
CiAgICAgICAgIDB4NTQsIDB4ZDYsIDB4YzEsIDB4MjMsIDB4MDcsIDB4OTgKICAgICB9OworICAg
IC8vIGNsYW5nLWZvcm1hdCBvbgorCiAgICAgc3J0cF90IHNydHBfc25kLCBzcnRwX3JlY3Y7CiAg
ICAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVzOwogICAgIGludCBsZW47CkBAIC0xNzI0LDcgKzE2
NzUsNyBAQCBzcnRwX3ZhbGlkYXRlICgpCiAgICAgbWVtc2V0KCZwb2xpY3ksIDAsIHNpemVvZihw
b2xpY3kpKTsKICAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X3J0cF9kZWZhdWx0KCZwb2xpY3ku
cnRwKTsKICAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X3J0Y3BfZGVmYXVsdCgmcG9saWN5LnJ0
Y3ApOwotICAgIHBvbGljeS5zc3JjLnR5cGUgID0gc3NyY19zcGVjaWZpYzsKKyAgICBwb2xpY3ku
c3NyYy50eXBlID0gc3NyY19zcGVjaWZpYzsKICAgICBwb2xpY3kuc3NyYy52YWx1ZSA9IDB4Y2Fm
ZWJhYmU7CiAgICAgcG9saWN5LmtleSA9IHRlc3Rfa2V5OwogICAgIHBvbGljeS5la3QgPSBOVUxM
OwpAQCAtMTgyNiw5ICsxNzc3LDkgQEAgc3J0cF92YWxpZGF0ZSAoKQogICogc3J0cF92YWxpZGF0
ZV9nY20oKSB2ZXJpZmllcyB0aGUgY29ycmVjdG5lc3Mgb2YgbGlic3J0cCBieSBjb21wYXJpbmcK
ICAqIGFuIGNvbXB1dGVkIHBhY2tldCBhZ2FpbnN0IHRoZSBrbm93biBjaXBoZXJ0ZXh0IGZvciB0
aGUgcGxhaW50ZXh0LgogICovCi1zcnRwX2Vycl9zdGF0dXNfdAotc3J0cF92YWxpZGF0ZV9nY20g
KCkKK3NydHBfZXJyX3N0YXR1c190IHNydHBfdmFsaWRhdGVfZ2NtKCkKIHsKKyAgICAvLyBjbGFu
Zy1mb3JtYXQgb2ZmCiAgICAgdW5zaWduZWQgY2hhciB0ZXN0X2tleV9nY21bMjhdID0gewogICAg
ICAgICAweDAwLCAweDAxLCAweDAyLCAweDAzLCAweDA0LCAweDA1LCAweDA2LCAweDA3LAogICAg
ICAgICAweDA4LCAweDA5LCAweDBhLCAweDBiLCAweDBjLCAweDBkLCAweDBlLCAweDBmLApAQCAt
MTg3OCw2ICsxODI5LDcgQEAgc3J0cF92YWxpZGF0ZV9nY20gKCkKICAgICAgICAgMHhlYSwgMHgz
MSwgMHgxMiwgMHgzYiwgMHhhOCwgMHg4YywgMHhlNiwgMHgxZSwKICAgICAgICAgMHg4MCwgMHgw
MCwgMHgwMCwgMHgwMQogICAgIH07CisgICAgLy8gY2xhbmctZm9ybWF0IG9uCiAKICAgICBzcnRw
X3Qgc3J0cF9zbmQsIHNydHBfcmVjdjsKICAgICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7CkBA
IC0xODkxLDkgKzE4NDMsOSBAQCBzcnRwX3ZhbGlkYXRlX2djbSAoKQogICAgIG1lbXNldCgmcG9s
aWN5LCAwLCBzaXplb2YocG9saWN5KSk7CiAgICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNf
Z2NtXzEyOF8xNl9hdXRoKCZwb2xpY3kucnRwKTsKICAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0
X2Flc19nY21fMTI4XzE2X2F1dGgoJnBvbGljeS5ydGNwKTsKLSAgICBwb2xpY3kuc3NyYy50eXBl
ICA9IHNzcmNfc3BlY2lmaWM7CisgICAgcG9saWN5LnNzcmMudHlwZSA9IHNzcmNfc3BlY2lmaWM7
CiAgICAgcG9saWN5LnNzcmMudmFsdWUgPSAweGNhZmViYWJlOwotICAgIHBvbGljeS5rZXkgID0g
dGVzdF9rZXlfZ2NtOworICAgIHBvbGljeS5rZXkgPSB0ZXN0X2tleV9nY207CiAgICAgcG9saWN5
LmVrdCA9IE5VTEw7CiAgICAgcG9saWN5LndpbmRvd19zaXplID0gMTI4OwogICAgIHBvbGljeS5h
bGxvd19yZXBlYXRfdHggPSAwOwpAQCAtMTk5Myw4ICsxOTQ1LDkgQEAgc3J0cF92YWxpZGF0ZV9n
Y20gKCkKIC8qCiAgKiBUZXN0IHZlY3RvcnMgdGFrZW4gZnJvbSBSRkMgNjkwNCwgQXBwZW5kaXgg
QQogICovCi1zcnRwX2Vycl9zdGF0dXNfdAotc3J0cF92YWxpZGF0ZV9lbmNyeXB0ZWRfZXh0ZW5z
aW9uc19oZWFkZXJzKCkgeworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF92YWxpZGF0ZV9lbmNyeXB0
ZWRfZXh0ZW5zaW9uc19oZWFkZXJzKCkKK3sKKyAgICAvLyBjbGFuZy1mb3JtYXQgb2ZmCiAgICAg
dW5zaWduZWQgY2hhciB0ZXN0X2tleV9leHRfaGVhZGVyc1szMF0gPSB7CiAgICAgICAgIDB4ZTEs
IDB4ZjksIDB4N2EsIDB4MGQsIDB4M2UsIDB4MDEsIDB4OGIsIDB4ZTAsCiAgICAgICAgIDB4ZDYs
IDB4NGYsIDB4YTMsIDB4MmMsIDB4MDYsIDB4ZGUsIDB4NDEsIDB4MzksCkBAIC0yMDMyLDExICsx
OTg1LDEzIEBAIHNydHBfdmFsaWRhdGVfZW5jcnlwdGVkX2V4dGVuc2lvbnNfaGVhZGVycygpIHsK
ICAgICAgICAgMHg1YSwgMHg0NiwgMHhiMywgMHhjYSwgMHgzNSwgMHhjNSwgMHgzNSwgMHhhOCwK
ICAgICAgICAgMHg5MSwgMHhjNwogICAgIH07CisgICAgLy8gY2xhbmctZm9ybWF0IG9uCisKICAg
ICBzcnRwX3Qgc3J0cF9zbmQsIHNydHBfcmVjdjsKICAgICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0
dXM7CiAgICAgaW50IGxlbjsKICAgICBzcnRwX3BvbGljeV90IHBvbGljeTsKLSAgICBpbnQgaGVh
ZGVyc1szXSA9IHsxLCAzLCA0fTsKKyAgICBpbnQgaGVhZGVyc1szXSA9IHsgMSwgMywgNCB9Owog
CiAgICAgLyoKICAgICAgKiBjcmVhdGUgYSBzZXNzaW9uIHdpdGggYSBzaW5nbGUgc3RyZWFtIHVz
aW5nIHRoZSBkZWZhdWx0IHNydHAKQEAgLTIwNDUsNyArMjAwMCw3IEBAIHNydHBfdmFsaWRhdGVf
ZW5jcnlwdGVkX2V4dGVuc2lvbnNfaGVhZGVycygpIHsKICAgICBtZW1zZXQoJnBvbGljeSwgMCwg
c2l6ZW9mKHBvbGljeSkpOwogICAgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfcnRwX2RlZmF1bHQo
JnBvbGljeS5ydHApOwogICAgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfcnRjcF9kZWZhdWx0KCZw
b2xpY3kucnRjcCk7Ci0gICAgcG9saWN5LnNzcmMudHlwZSAgPSBzc3JjX3NwZWNpZmljOworICAg
IHBvbGljeS5zc3JjLnR5cGUgPSBzc3JjX3NwZWNpZmljOwogICAgIHBvbGljeS5zc3JjLnZhbHVl
ID0gMHhjYWZlYmFiZTsKICAgICBwb2xpY3kua2V5ID0gdGVzdF9rZXlfZXh0X2hlYWRlcnM7CiAg
ICAgcG9saWN5LmVrdCA9IE5VTEw7CkBAIC0yMTA4LDE0ICsyMDYzLDE0IEBAIHNydHBfdmFsaWRh
dGVfZW5jcnlwdGVkX2V4dGVuc2lvbnNfaGVhZGVycygpIHsKICAgICByZXR1cm4gc3J0cF9lcnJf
c3RhdHVzX29rOwogfQogCi0KICNpZmRlZiBPUEVOU1NMCiAKIC8qCiAgKiBIZWFkZXJzIG9mIHRl
c3QgdmVjdG9ycyB0YWtlbiBmcm9tIFJGQyA2OTA0LCBBcHBlbmRpeCBBCiAgKi8KLXNydHBfZXJy
X3N0YXR1c190Ci1zcnRwX3ZhbGlkYXRlX2VuY3J5cHRlZF9leHRlbnNpb25zX2hlYWRlcnNfZ2Nt
KCkgeworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF92YWxpZGF0ZV9lbmNyeXB0ZWRfZXh0ZW5zaW9u
c19oZWFkZXJzX2djbSgpCit7CisgICAgLy8gY2xhbmctZm9ybWF0IG9mZgogICAgIHVuc2lnbmVk
IGNoYXIgdGVzdF9rZXlfZXh0X2hlYWRlcnNbMzBdID0gewogICAgICAgICAweGUxLCAweGY5LCAw
eDdhLCAweDBkLCAweDNlLCAweDAxLCAweDhiLCAweGUwLAogICAgICAgICAweGQ2LCAweDRmLCAw
eGEzLCAweDJjLCAweDA2LCAweGRlLCAweDQxLCAweDM5LApAQCAtMjE1MSwxMSArMjEwNiwxMyBA
QCBzcnRwX3ZhbGlkYXRlX2VuY3J5cHRlZF9leHRlbnNpb25zX2hlYWRlcnNfZ2NtKCkgewogICAg
ICAgICAweDZjLCAweGQzLCAweGQyLCAweDg4LCAweGI0LCAweDlmLCAweDZjLCAweGE5LAogICAg
ICAgICAweGY0LCAweGIxLCAweGI3LCAweDU5LCAweDcxLCAweDllLCAweGI1LCAweGJjCiAgICAg
fTsKKyAgICAvLyBjbGFuZy1mb3JtYXQgb24KKwogICAgIHNydHBfdCBzcnRwX3NuZCwgc3J0cF9y
ZWN2OwogICAgIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKICAgICBpbnQgbGVuOwogICAgIHNy
dHBfcG9saWN5X3QgcG9saWN5OwotICAgIGludCBoZWFkZXJzWzNdID0gezEsIDMsIDR9OworICAg
IGludCBoZWFkZXJzWzNdID0geyAxLCAzLCA0IH07CiAKICAgICAvKgogICAgICAqIGNyZWF0ZSBh
IHNlc3Npb24gd2l0aCBhIHNpbmdsZSBzdHJlYW0gdXNpbmcgdGhlIGRlZmF1bHQgc3J0cApAQCAt
MjE2NCw3ICsyMTIxLDcgQEAgc3J0cF92YWxpZGF0ZV9lbmNyeXB0ZWRfZXh0ZW5zaW9uc19oZWFk
ZXJzX2djbSgpIHsKICAgICBtZW1zZXQoJnBvbGljeSwgMCwgc2l6ZW9mKHBvbGljeSkpOwogICAg
IHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2djbV8xMjhfOF9hdXRoKCZwb2xpY3kucnRwKTsK
ICAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21fMTI4XzhfYXV0aCgmcG9saWN5LnJ0
Y3ApOwotICAgIHBvbGljeS5zc3JjLnR5cGUgID0gc3NyY19zcGVjaWZpYzsKKyAgICBwb2xpY3ku
c3NyYy50eXBlID0gc3NyY19zcGVjaWZpYzsKICAgICBwb2xpY3kuc3NyYy52YWx1ZSA9IDB4Y2Fm
ZWJhYmU7CiAgICAgcG9saWN5LmtleSA9IHRlc3Rfa2V5X2V4dF9oZWFkZXJzOwogICAgIHBvbGlj
eS5la3QgPSBOVUxMOwpAQCAtMjIzNCwxMCArMjE5MSw5IEBAIHNydHBfdmFsaWRhdGVfZW5jcnlw
dGVkX2V4dGVuc2lvbnNfaGVhZGVyc19nY20oKSB7CiAgKiBUaGVzZSBwYWNrZXRzIHdlcmUgbWFk
ZSB3aXRoIHRoZSBBRVMtQ00tMjU2L0hNQUMtU0hBLTEtODAgcG9saWN5LgogICovCiAKLQotc3J0
cF9lcnJfc3RhdHVzX3QKLXNydHBfdmFsaWRhdGVfYWVzXzI1NiAoKQorc3J0cF9lcnJfc3RhdHVz
X3Qgc3J0cF92YWxpZGF0ZV9hZXNfMjU2KCkKIHsKKyAgICAvLyBjbGFuZy1mb3JtYXQgb2ZmCiAg
ICAgdW5zaWduZWQgY2hhciBhZXNfMjU2X3Rlc3Rfa2V5WzQ2XSA9IHsKICAgICAgICAgMHhmMCwg
MHhmMCwgMHg0OSwgMHgxNCwgMHhiNSwgMHgxMywgMHhmMiwgMHg3NiwKICAgICAgICAgMHgzYSwg
MHgxYiwgMHgxZiwgMHhhMSwgMHgzMCwgMHhmMSwgMHgwZSwgMHgyOSwKQEAgLTIyNjcsNiArMjIy
Myw4IEBAIHNydHBfdmFsaWRhdGVfYWVzXzI1NiAoKQogICAgICAgICAweGIwLCAweGI0LCAweGI0
LCAweDBkLCAweGEwLCAweDhkLCAweDlkLCAweDlhLAogICAgICAgICAweDViLCAweDNhLCAweDU1
LCAweGQ4LCAweDg3LCAweDNiCiAgICAgfTsKKyAgICAvLyBjbGFuZy1mb3JtYXQgb24KKwogICAg
IHNydHBfdCBzcnRwX3NuZCwgc3J0cF9yZWN2OwogICAgIHNydHBfZXJyX3N0YXR1c190IHN0YXR1
czsKICAgICBpbnQgbGVuOwpAQCAtMjI3OSw3ICsyMjM3LDcgQEAgc3J0cF92YWxpZGF0ZV9hZXNf
MjU2ICgpCiAgICAgbWVtc2V0KCZwb2xpY3ksIDAsIHNpemVvZihwb2xpY3kpKTsKICAgICBzcnRw
X2NyeXB0b19wb2xpY3lfc2V0X2Flc19jbV8yNTZfaG1hY19zaGExXzgwKCZwb2xpY3kucnRwKTsK
ICAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19jbV8yNTZfaG1hY19zaGExXzgwKCZwb2xp
Y3kucnRjcCk7Ci0gICAgcG9saWN5LnNzcmMudHlwZSAgPSBzc3JjX3NwZWNpZmljOworICAgIHBv
bGljeS5zc3JjLnR5cGUgPSBzc3JjX3NwZWNpZmljOwogICAgIHBvbGljeS5zc3JjLnZhbHVlID0g
MHhjYWZlYmFiZTsKICAgICBwb2xpY3kua2V5ID0gYWVzXzI1Nl90ZXN0X2tleTsKICAgICBwb2xp
Y3kuZWt0ID0gTlVMTDsKQEAgLTIzNDUsOSArMjMwMyw3IEBAIHNydHBfdmFsaWRhdGVfYWVzXzI1
NiAoKQogICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAKLQotc3J0cF9lcnJfc3Rh
dHVzX3QKLXNydHBfY3JlYXRlX2JpZ19wb2xpY3kgKHNydHBfcG9saWN5X3QgKipsaXN0KQorc3J0
cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcmVhdGVfYmlnX3BvbGljeShzcnRwX3BvbGljeV90ICoqbGlz
dCkKIHsKICAgICBleHRlcm4gY29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5X2FycmF5W107CiAg
ICAgc3J0cF9wb2xpY3lfdCAqcCwgKnRtcDsKQEAgLTIzNjUsNyArMjMyMSw3IEBAIHNydHBfY3Jl
YXRlX2JpZ19wb2xpY3kgKHNydHBfcG9saWN5X3QgKipsaXN0KQogICAgICAqLwogICAgIHRtcCA9
IE5VTEw7CiAgICAgd2hpbGUgKHBvbGljeV9hcnJheVtpXSAhPSBOVUxMKSB7Ci0gICAgICAgIHAg
ID0gKHNydHBfcG9saWN5X3QqKW1hbGxvYyhzaXplb2Yoc3J0cF9wb2xpY3lfdCkpOworICAgICAg
ICBwID0gKHNydHBfcG9saWN5X3QgKiltYWxsb2Moc2l6ZW9mKHNydHBfcG9saWN5X3QpKTsKICAg
ICAgICAgaWYgKHAgPT0gTlVMTCkgewogICAgICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1
c19iYWRfcGFyYW07CiAgICAgICAgIH0KQEAgLTIzODEsOCArMjMzNyw3IEBAIHNydHBfY3JlYXRl
X2JpZ19wb2xpY3kgKHNydHBfcG9saWN5X3QgKipsaXN0KQogICAgIHJldHVybiBzcnRwX2Vycl9z
dGF0dXNfb2s7CiB9CiAKLXNydHBfZXJyX3N0YXR1c190Ci1zcnRwX2RlYWxsb2NfYmlnX3BvbGlj
eSAoc3J0cF9wb2xpY3lfdCAqbGlzdCkKK3NydHBfZXJyX3N0YXR1c190IHNydHBfZGVhbGxvY19i
aWdfcG9saWN5KHNydHBfcG9saWN5X3QgKmxpc3QpCiB7CiAgICAgc3J0cF9wb2xpY3lfdCAqcCwg
Km5leHQ7CiAKQEAgLTIzOTQsOCArMjM0OSw3IEBAIHNydHBfZGVhbGxvY19iaWdfcG9saWN5IChz
cnRwX3BvbGljeV90ICpsaXN0KQogICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAK
LXNydHBfZXJyX3N0YXR1c190Ci1zcnRwX3Rlc3RfZW1wdHlfcGF5bG9hZCgpCitzcnRwX2Vycl9z
dGF0dXNfdCBzcnRwX3Rlc3RfZW1wdHlfcGF5bG9hZCgpCiB7CiAgICAgc3J0cF90IHNydHBfc25k
LCBzcnRwX3JlY3Y7CiAgICAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVzOwpAQCAtMjQxMCw3ICsy
MzY0LDcgQEAgc3J0cF90ZXN0X2VtcHR5X3BheWxvYWQoKQogICAgIG1lbXNldCgmcG9saWN5LCAw
LCBzaXplb2YocG9saWN5KSk7CiAgICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9ydHBfZGVmYXVs
dCgmcG9saWN5LnJ0cCk7CiAgICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9ydGNwX2RlZmF1bHQo
JnBvbGljeS5ydGNwKTsKLSAgICBwb2xpY3kuc3NyYy50eXBlICA9IHNzcmNfc3BlY2lmaWM7Cisg
ICAgcG9saWN5LnNzcmMudHlwZSA9IHNzcmNfc3BlY2lmaWM7CiAgICAgcG9saWN5LnNzcmMudmFs
dWUgPSAweGNhZmViYWJlOwogICAgIHBvbGljeS5rZXkgPSB0ZXN0X2tleTsKICAgICBwb2xpY3ku
ZWt0ID0gTlVMTDsKQEAgLTI0MjMsMTIgKzIzNzcsMTEgQEAgc3J0cF90ZXN0X2VtcHR5X3BheWxv
YWQoKQogICAgICAgICByZXR1cm4gc3RhdHVzOwogICAgIH0KIAotICAgIG1lc2cgPSBzcnRwX2Ny
ZWF0ZV90ZXN0X3BhY2tldCgwLCBwb2xpY3kuc3NyYy52YWx1ZSk7CisgICAgbWVzZyA9IHNydHBf
Y3JlYXRlX3Rlc3RfcGFja2V0KDAsIHBvbGljeS5zc3JjLnZhbHVlLCAmbGVuKTsKICAgICBpZiAo
bWVzZyA9PSBOVUxMKSB7CiAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfZmFpbDsKICAg
ICB9CiAKLSAgICBsZW4gPSAxMjsgIC8qIG9ubHkgdGhlIGhlYWRlciAqLwogICAgIHN0YXR1cyA9
IHNydHBfcHJvdGVjdChzcnRwX3NuZCwgbWVzZywgJmxlbik7CiAgICAgaWYgKHN0YXR1cykgewog
ICAgICAgICByZXR1cm4gc3RhdHVzOwpAQCAtMjQ3Miw4ICsyNDI1LDcgQEAgc3J0cF90ZXN0X2Vt
cHR5X3BheWxvYWQoKQogfQogCiAjaWZkZWYgT1BFTlNTTAotc3J0cF9lcnJfc3RhdHVzX3QKLXNy
dHBfdGVzdF9lbXB0eV9wYXlsb2FkX2djbSgpCitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3Rlc3Rf
ZW1wdHlfcGF5bG9hZF9nY20oKQogewogICAgIHNydHBfdCBzcnRwX3NuZCwgc3J0cF9yZWN2Owog
ICAgIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKQEAgLTI0ODgsNyArMjQ0MCw3IEBAIHNydHBf
dGVzdF9lbXB0eV9wYXlsb2FkX2djbSgpCiAgICAgbWVtc2V0KCZwb2xpY3ksIDAsIHNpemVvZihw
b2xpY3kpKTsKICAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21fMTI4XzhfYXV0aCgm
cG9saWN5LnJ0cCk7CiAgICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfZ2NtXzEyOF84X2F1
dGgoJnBvbGljeS5ydGNwKTsKLSAgICBwb2xpY3kuc3NyYy50eXBlICA9IHNzcmNfc3BlY2lmaWM7
CisgICAgcG9saWN5LnNzcmMudHlwZSA9IHNzcmNfc3BlY2lmaWM7CiAgICAgcG9saWN5LnNzcmMu
dmFsdWUgPSAweGNhZmViYWJlOwogICAgIHBvbGljeS5rZXkgPSB0ZXN0X2tleTsKICAgICBwb2xp
Y3kuZWt0ID0gTlVMTDsKQEAgLTI1MDEsMTIgKzI0NTMsMTEgQEAgc3J0cF90ZXN0X2VtcHR5X3Bh
eWxvYWRfZ2NtKCkKICAgICAgICAgcmV0dXJuIHN0YXR1czsKICAgICB9CiAKLSAgICBtZXNnID0g
c3J0cF9jcmVhdGVfdGVzdF9wYWNrZXQoMCwgcG9saWN5LnNzcmMudmFsdWUpOworICAgIG1lc2cg
PSBzcnRwX2NyZWF0ZV90ZXN0X3BhY2tldCgwLCBwb2xpY3kuc3NyYy52YWx1ZSwgJmxlbik7CiAg
ICAgaWYgKG1lc2cgPT0gTlVMTCkgewogICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2Zh
aWw7CiAgICAgfQogCi0gICAgbGVuID0gMTI7ICAvKiBvbmx5IHRoZSBoZWFkZXIgKi8KICAgICBz
dGF0dXMgPSBzcnRwX3Byb3RlY3Qoc3J0cF9zbmQsIG1lc2csICZsZW4pOwogICAgIGlmIChzdGF0
dXMpIHsKICAgICAgICAgcmV0dXJuIHN0YXR1czsKQEAgLTI1NDgsMTAgKzI0OTksOSBAQCBzcnRw
X3Rlc3RfZW1wdHlfcGF5bG9hZF9nY20oKQogCiAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19v
azsKIH0KLSNlbmRpZiAgLy8gT1BFTlNTTAorI2VuZGlmIC8vIE9QRU5TU0wKIAotc3J0cF9lcnJf
c3RhdHVzX3QKLXNydHBfdGVzdF9yZW1vdmVfc3RyZWFtICgpCitzcnRwX2Vycl9zdGF0dXNfdCBz
cnRwX3Rlc3RfcmVtb3ZlX3N0cmVhbSgpCiB7CiAgICAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVz
OwogICAgIHNydHBfcG9saWN5X3QgKnBvbGljeV9saXN0LCBwb2xpY3k7CkBAIC0yNTY1LDcgKzI1
MTUsNiBAQCBzcnRwX3Rlc3RfcmVtb3ZlX3N0cmVhbSAoKQogICAgICAqLwogICAgIGV4dGVybiBz
cnRwX3N0cmVhbV90IHNydHBfZ2V0X3N0cmVhbShzcnRwX3Qgc3J0cCwgdWludDMyX3Qgc3NyYyk7
CiAKLQogICAgIHN0YXR1cyA9IHNydHBfY3JlYXRlX2JpZ19wb2xpY3koJnBvbGljeV9saXN0KTsK
ICAgICBpZiAoc3RhdHVzKSB7CiAgICAgICAgIHJldHVybiBzdGF0dXM7CkBAIC0yNjE2LDcgKzI1
NjUsNyBAQCBzcnRwX3Rlc3RfcmVtb3ZlX3N0cmVhbSAoKQogICAgIG1lbXNldCgmcG9saWN5LCAw
LCBzaXplb2YocG9saWN5KSk7CiAgICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9ydHBfZGVmYXVs
dCgmcG9saWN5LnJ0cCk7CiAgICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9ydGNwX2RlZmF1bHQo
JnBvbGljeS5ydGNwKTsKLSAgICBwb2xpY3kuc3NyYy50eXBlICA9IHNzcmNfc3BlY2lmaWM7Cisg
ICAgcG9saWN5LnNzcmMudHlwZSA9IHNzcmNfc3BlY2lmaWM7CiAgICAgcG9saWN5LnNzcmMudmFs
dWUgPSAweGNhZmViYWJlOwogICAgIHBvbGljeS5rZXkgPSB0ZXN0X2tleTsKICAgICBwb2xpY3ku
ZWt0ID0gTlVMTDsKQEAgLTI2NDcsNyArMjU5Niw3IEBAIHNydHBfdGVzdF9yZW1vdmVfc3RyZWFt
ICgpCiAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0KIAotCisvLyBjbGFuZy1mb3Jt
YXQgb2ZmCiB1bnNpZ25lZCBjaGFyIHRlc3RfYWx0X2tleVs0Nl0gPSB7CiAgIDB4ZTUsIDB4MTks
IDB4NmYsIDB4MDEsIDB4NWUsIDB4ZjEsIDB4OWIsIDB4ZTEsCiAgIDB4ZDcsIDB4NDcsIDB4YTcs
IDB4MjcsIDB4MDcsIDB4ZDcsIDB4NDcsIDB4MzMsCkBAIC0yNjU2LDYgKzI2MDUsNyBAQCB1bnNp
Z25lZCBjaGFyIHRlc3RfYWx0X2tleVs0Nl0gPSB7CiAgIDB4YzcsIDB4MTUsIDB4ZTIsIDB4ZWEs
IDB4ZmUsIDB4NTUsIDB4NjcsIDB4OTYsCiAgIDB4YjYsIDB4OTYsIDB4MGIsIDB4M2EsIDB4YWIs
IDB4ZTYKIH07CisvLyBjbGFuZy1mb3JtYXQgb24KIAogLyoKICAqIHNydHBfdGVzdF91cGRhdGUo
KSB2ZXJpZmllcyB1cGRhdGluZy9yZWtleWluZyBleHNpc3Rpbmcgc3RyZWFtcy4KQEAgLTI2NjQs
NzQ4ICsyNjE0LDc3NiBAQCB1bnNpZ25lZCBjaGFyIHRlc3RfYWx0X2tleVs0Nl0gPSB7CiAgKiBh
dGVtcHRzIHRvIHByb3ZlIHRoYXQgc3J0cF91cGRhdGUgZG9lcyBub3QgcmVzZXQgdGhlIFJPQy4K
ICAqLwogCi1zcnRwX2Vycl9zdGF0dXNfdAotc3J0cF90ZXN0X3VwZGF0ZSgpIHsKLQotICBzcnRw
X2Vycl9zdGF0dXNfdCBzdGF0dXM7Ci0gIHVpbnQzMl90IHNzcmMgPSAweDEyMTIxMjEyOwotICBp
bnQgbXNnX2xlbl9vY3RldHMgPSAzMjsKLSAgaW50IHByb3RlY3RlZF9tc2dfbGVuX29jdGV0czsK
LSAgc3J0cF9oZHJfdCAqIG1zZzsKLSAgc3J0cF90IHNydHBfc25kLCBzcnRwX3JlY3Y7Ci0gIHNy
dHBfcG9saWN5X3QgcG9saWN5OwotCi0gIG1lbXNldCgmcG9saWN5LCAwLCBzaXplb2YocG9saWN5
KSk7Ci0gIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfcnRwX2RlZmF1bHQoJnBvbGljeS5ydHApOwot
ICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X3J0Y3BfZGVmYXVsdCgmcG9saWN5LnJ0Y3ApOwotICBw
b2xpY3kuZWt0ID0gTlVMTDsKLSAgcG9saWN5LndpbmRvd19zaXplID0gMTI4OwotICBwb2xpY3ku
YWxsb3dfcmVwZWF0X3R4ID0gMDsKLSAgcG9saWN5Lm5leHQgPSBOVUxMOwotICBwb2xpY3kuc3Ny
Yy50eXBlICA9IHNzcmNfYW55X291dGJvdW5kOwotICBwb2xpY3kua2V5ID0gdGVzdF9rZXk7Ci0K
LSAgLyogY3JlYXRlIGEgc2VuZCBhbmQgcmVjaXZlIGN0eCB3aXRoIGRlZnVhbHQgcHJvZmlsZSBh
bmQgdGVzdF9rZXkgKi8KLSAgc3RhdHVzID0gc3J0cF9jcmVhdGUoJnNydHBfcmVjdiwgJnBvbGlj
eSk7Ci0gIGlmIChzdGF0dXMpCi0gICAgcmV0dXJuIHN0YXR1czsKLQotICBwb2xpY3kuc3NyYy50
eXBlICA9IHNzcmNfYW55X2luYm91bmQ7Ci0gIHN0YXR1cyA9IHNydHBfY3JlYXRlKCZzcnRwX3Nu
ZCwgJnBvbGljeSk7Ci0gIGlmIChzdGF0dXMpCi0gICAgcmV0dXJuIHN0YXR1czsKLQotICAvKiBw
cm90ZWN0IGFuZCB1bnByb3RlY3QgdHdvIG1zZydzIHRoYXQgd2lsbCBjYXVzZSB0aGUgUk9DIHRv
IGJlIGVxdWFsIHRvIDEgKi8KLSAgbXNnID0gc3J0cF9jcmVhdGVfdGVzdF9wYWNrZXQobXNnX2xl
bl9vY3RldHMsIHNzcmMpOwotICBpZiAobXNnID09IE5VTEwpCi0gICAgcmV0dXJuIHNydHBfZXJy
X3N0YXR1c19hbGxvY19mYWlsOwotICBtc2ctPnNlcSA9IGh0b25zKDY1NTM1KTsKLQotICBwcm90
ZWN0ZWRfbXNnX2xlbl9vY3RldHMgPSBtc2dfbGVuX29jdGV0czsKLSAgc3RhdHVzID0gc3J0cF9w
cm90ZWN0KHNydHBfc25kLCBtc2csICZwcm90ZWN0ZWRfbXNnX2xlbl9vY3RldHMpOwotICBpZiAo
c3RhdHVzKQotICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfZmFpbDsKLQotICBzdGF0dXMgPSBz
cnRwX3VucHJvdGVjdChzcnRwX3JlY3YsIG1zZywgJnByb3RlY3RlZF9tc2dfbGVuX29jdGV0cyk7
Ci0gIGlmIChzdGF0dXMpCi0gICAgcmV0dXJuIHN0YXR1czsKLQotICBmcmVlKG1zZyk7Ci0KLSAg
bXNnID0gc3J0cF9jcmVhdGVfdGVzdF9wYWNrZXQobXNnX2xlbl9vY3RldHMsIHNzcmMpOwotICBp
ZiAobXNnID09IE5VTEwpCi0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19hbGxvY19mYWlsOwot
ICBtc2ctPnNlcSA9IGh0b25zKDEpOwotCi0gIHByb3RlY3RlZF9tc2dfbGVuX29jdGV0cyA9IG1z
Z19sZW5fb2N0ZXRzOwotICBzdGF0dXMgPSBzcnRwX3Byb3RlY3Qoc3J0cF9zbmQsIG1zZywgJnBy
b3RlY3RlZF9tc2dfbGVuX29jdGV0cyk7Ci0gIGlmIChzdGF0dXMpCi0gICAgcmV0dXJuIHNydHBf
ZXJyX3N0YXR1c19mYWlsOwotCi0gIHN0YXR1cyA9IHNydHBfdW5wcm90ZWN0KHNydHBfcmVjdiwg
bXNnLCAmcHJvdGVjdGVkX21zZ19sZW5fb2N0ZXRzKTsKLSAgaWYgKHN0YXR1cykKLSAgICByZXR1
cm4gc3RhdHVzOwotCi0gIGZyZWUobXNnKTsKLQotICAvKiB1cGRhdGUgc2VuZCBjdHggd2l0aCBz
YW1lIHRlc3Rfa2V5IHQgdmVyaWZ5IHVwZGF0ZSB3b3JrcyovCi0gIHBvbGljeS5zc3JjLnR5cGUg
PSBzc3JjX2FueV9vdXRib3VuZDsKLSAgcG9saWN5LmtleSA9IHRlc3Rfa2V5OwotICBzdGF0dXMg
PSBzcnRwX3VwZGF0ZShzcnRwX3NuZCwgJnBvbGljeSk7Ci0gIGlmIChzdGF0dXMpCi0gICAgcmV0
dXJuIHN0YXR1czsKLQotICBtc2cgPSBzcnRwX2NyZWF0ZV90ZXN0X3BhY2tldChtc2dfbGVuX29j
dGV0cywgc3NyYyk7Ci0gIGlmIChtc2cgPT0gTlVMTCkKLSAgICByZXR1cm4gc3J0cF9lcnJfc3Rh
dHVzX2FsbG9jX2ZhaWw7Ci0gIG1zZy0+c2VxID0gaHRvbnMoMik7Ci0KLSAgcHJvdGVjdGVkX21z
Z19sZW5fb2N0ZXRzID0gbXNnX2xlbl9vY3RldHM7Ci0gIHN0YXR1cyA9IHNydHBfcHJvdGVjdChz
cnRwX3NuZCwgbXNnLCAmcHJvdGVjdGVkX21zZ19sZW5fb2N0ZXRzKTsKLSAgaWYgKHN0YXR1cykK
LSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7Ci0KLSAgc3RhdHVzID0gc3J0cF91bnBy
b3RlY3Qoc3J0cF9yZWN2LCBtc2csICZwcm90ZWN0ZWRfbXNnX2xlbl9vY3RldHMpOwotICBpZiAo
c3RhdHVzKQotICAgIHJldHVybiBzdGF0dXM7Ci0KLSAgZnJlZShtc2cpOwotCi0KLSAgLyogdXBk
YXRlIHNlbmQgY3R4IHRvIHVzZSB0ZXN0X2FsdF9rZXkgKi8KLSAgcG9saWN5LnNzcmMudHlwZSA9
IHNzcmNfYW55X291dGJvdW5kOwotICBwb2xpY3kua2V5ID0gdGVzdF9hbHRfa2V5OwotICBzdGF0
dXMgPSBzcnRwX3VwZGF0ZShzcnRwX3NuZCwgJnBvbGljeSk7Ci0gIGlmIChzdGF0dXMpCi0gICAg
cmV0dXJuIHN0YXR1czsKLQotICAvKiBjcmVhdGUgYW5kIHByb3RlY3QgbXNnIHdpdGggbmV3IGtl
eSBhbmQgUk9DIHN0aWxsIGVxdWFsIHRvIDEgKi8KLSAgbXNnID0gc3J0cF9jcmVhdGVfdGVzdF9w
YWNrZXQobXNnX2xlbl9vY3RldHMsIHNzcmMpOwotICBpZiAobXNnID09IE5VTEwpCi0gICAgcmV0
dXJuIHNydHBfZXJyX3N0YXR1c19hbGxvY19mYWlsOwotICBtc2ctPnNlcSA9IGh0b25zKDMpOwot
Ci0gIHByb3RlY3RlZF9tc2dfbGVuX29jdGV0cyA9IG1zZ19sZW5fb2N0ZXRzOwotICBzdGF0dXMg
PSBzcnRwX3Byb3RlY3Qoc3J0cF9zbmQsIG1zZywgJnByb3RlY3RlZF9tc2dfbGVuX29jdGV0cyk7
Ci0gIGlmIChzdGF0dXMpCi0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19mYWlsOwotCi0gIC8q
IHZlcmlmeSB0aGF0IHJlY2l2ZSBjdHggd2lsbCBmYWlsIHRvIHVucHJvdGVjdCBhcyBpdCBzdGls
bCB1c2VzIHRlc3Rfa2V5ICovCi0gIHN0YXR1cyA9IHNydHBfdW5wcm90ZWN0KHNydHBfcmVjdiwg
bXNnLCAmcHJvdGVjdGVkX21zZ19sZW5fb2N0ZXRzKTsKLSAgaWYgKHN0YXR1cyA9PSBzcnRwX2Vy
cl9zdGF0dXNfb2spCi0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19mYWlsOwotCi0gIC8qIGNy
ZWF0ZSBhIG5ldyByZWN2aWV2ZSBjdHggd2l0aCB0ZXN0X2FsdF9rZXkgYnV0IHNpbmNlIGl0IGlz
IG5ldyBpdCB3aWxsIGhhdmUgUk9DIGVxdWFsIHRvIDEKLSAgICogYW5kIHRoZXJlZm9yZSBzaG91
bGQgZmFpbCB0byB1bnByb3RlY3RlZCAqLwotICB7Ci0gICAgc3J0cF90IHNydHBfcmVjdl9yb2Nf
MDsKLQotICAgIHBvbGljeS5zc3JjLnR5cGUgID0gc3NyY19hbnlfaW5ib3VuZDsKK3NydHBfZXJy
X3N0YXR1c190IHNydHBfdGVzdF91cGRhdGUoKQoreworICAgIHNydHBfZXJyX3N0YXR1c190IHN0
YXR1czsKKyAgICB1aW50MzJfdCBzc3JjID0gMHgxMjEyMTIxMjsKKyAgICBpbnQgbXNnX2xlbl9v
Y3RldHMgPSAzMjsKKyAgICBpbnQgcHJvdGVjdGVkX21zZ19sZW5fb2N0ZXRzOworICAgIHNydHBf
aGRyX3QgKm1zZzsKKyAgICBzcnRwX3Qgc3J0cF9zbmQsIHNydHBfcmVjdjsKKyAgICBzcnRwX3Bv
bGljeV90IHBvbGljeTsKKworICAgIG1lbXNldCgmcG9saWN5LCAwLCBzaXplb2YocG9saWN5KSk7
CisgICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9ydHBfZGVmYXVsdCgmcG9saWN5LnJ0cCk7Cisg
ICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9ydGNwX2RlZmF1bHQoJnBvbGljeS5ydGNwKTsKKyAg
ICBwb2xpY3kuZWt0ID0gTlVMTDsKKyAgICBwb2xpY3kud2luZG93X3NpemUgPSAxMjg7CisgICAg
cG9saWN5LmFsbG93X3JlcGVhdF90eCA9IDA7CisgICAgcG9saWN5Lm5leHQgPSBOVUxMOworICAg
IHBvbGljeS5zc3JjLnR5cGUgPSBzc3JjX2FueV9vdXRib3VuZDsKKyAgICBwb2xpY3kua2V5ID0g
dGVzdF9rZXk7CisKKyAgICAvKiBjcmVhdGUgYSBzZW5kIGFuZCByZWNpdmUgY3R4IHdpdGggZGVm
dWFsdCBwcm9maWxlIGFuZCB0ZXN0X2tleSAqLworICAgIHN0YXR1cyA9IHNydHBfY3JlYXRlKCZz
cnRwX3JlY3YsICZwb2xpY3kpOworICAgIGlmIChzdGF0dXMpCisgICAgICAgIHJldHVybiBzdGF0
dXM7CisKKyAgICBwb2xpY3kuc3NyYy50eXBlID0gc3NyY19hbnlfaW5ib3VuZDsKKyAgICBzdGF0
dXMgPSBzcnRwX2NyZWF0ZSgmc3J0cF9zbmQsICZwb2xpY3kpOworICAgIGlmIChzdGF0dXMpCisg
ICAgICAgIHJldHVybiBzdGF0dXM7CisKKyAgICAvKiBwcm90ZWN0IGFuZCB1bnByb3RlY3QgdHdv
IG1zZydzIHRoYXQgd2lsbCBjYXVzZSB0aGUgUk9DIHRvIGJlIGVxdWFsIHRvIDEKKyAgICAgKi8K
KyAgICBtc2cgPSBzcnRwX2NyZWF0ZV90ZXN0X3BhY2tldChtc2dfbGVuX29jdGV0cywgc3NyYywK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmcHJvdGVjdGVkX21zZ19sZW5fb2N0
ZXRzKTsKKyAgICBpZiAobXNnID09IE5VTEwpCisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0
dXNfYWxsb2NfZmFpbDsKKyAgICBtc2ctPnNlcSA9IGh0b25zKDY1NTM1KTsKKworICAgIHN0YXR1
cyA9IHNydHBfcHJvdGVjdChzcnRwX3NuZCwgbXNnLCAmcHJvdGVjdGVkX21zZ19sZW5fb2N0ZXRz
KTsKKyAgICBpZiAoc3RhdHVzKQorICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7
CisKKyAgICBzdGF0dXMgPSBzcnRwX3VucHJvdGVjdChzcnRwX3JlY3YsIG1zZywgJnByb3RlY3Rl
ZF9tc2dfbGVuX29jdGV0cyk7CisgICAgaWYgKHN0YXR1cykKKyAgICAgICAgcmV0dXJuIHN0YXR1
czsKKworICAgIGZyZWUobXNnKTsKKworICAgIG1zZyA9IHNydHBfY3JlYXRlX3Rlc3RfcGFja2V0
KG1zZ19sZW5fb2N0ZXRzLCBzc3JjLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICZwcm90ZWN0ZWRfbXNnX2xlbl9vY3RldHMpOworICAgIGlmIChtc2cgPT0gTlVMTCkKKyAgICAg
ICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19hbGxvY19mYWlsOworICAgIG1zZy0+c2VxID0gaHRv
bnMoMSk7CisKKyAgICBzdGF0dXMgPSBzcnRwX3Byb3RlY3Qoc3J0cF9zbmQsIG1zZywgJnByb3Rl
Y3RlZF9tc2dfbGVuX29jdGV0cyk7CisgICAgaWYgKHN0YXR1cykKKyAgICAgICAgcmV0dXJuIHNy
dHBfZXJyX3N0YXR1c19mYWlsOworCisgICAgc3RhdHVzID0gc3J0cF91bnByb3RlY3Qoc3J0cF9y
ZWN2LCBtc2csICZwcm90ZWN0ZWRfbXNnX2xlbl9vY3RldHMpOworICAgIGlmIChzdGF0dXMpCisg
ICAgICAgIHJldHVybiBzdGF0dXM7CisKKyAgICBmcmVlKG1zZyk7CisKKyAgICAvKiB1cGRhdGUg
c2VuZCBjdHggd2l0aCBzYW1lIHRlc3Rfa2V5IHQgdmVyaWZ5IHVwZGF0ZSB3b3JrcyovCisgICAg
cG9saWN5LnNzcmMudHlwZSA9IHNzcmNfYW55X291dGJvdW5kOworICAgIHBvbGljeS5rZXkgPSB0
ZXN0X2tleTsKKyAgICBzdGF0dXMgPSBzcnRwX3VwZGF0ZShzcnRwX3NuZCwgJnBvbGljeSk7Cisg
ICAgaWYgKHN0YXR1cykKKyAgICAgICAgcmV0dXJuIHN0YXR1czsKKworICAgIG1zZyA9IHNydHBf
Y3JlYXRlX3Rlc3RfcGFja2V0KG1zZ19sZW5fb2N0ZXRzLCBzc3JjLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICZwcm90ZWN0ZWRfbXNnX2xlbl9vY3RldHMpOworICAgIGlmICht
c2cgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19hbGxvY19mYWlsOwor
ICAgIG1zZy0+c2VxID0gaHRvbnMoMik7CisKKyAgICBzdGF0dXMgPSBzcnRwX3Byb3RlY3Qoc3J0
cF9zbmQsIG1zZywgJnByb3RlY3RlZF9tc2dfbGVuX29jdGV0cyk7CisgICAgaWYgKHN0YXR1cykK
KyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19mYWlsOworCisgICAgc3RhdHVzID0gc3J0
cF91bnByb3RlY3Qoc3J0cF9yZWN2LCBtc2csICZwcm90ZWN0ZWRfbXNnX2xlbl9vY3RldHMpOwor
ICAgIGlmIChzdGF0dXMpCisgICAgICAgIHJldHVybiBzdGF0dXM7CisKKyAgICBmcmVlKG1zZyk7
CisKKyAgICAvKiB1cGRhdGUgc2VuZCBjdHggdG8gdXNlIHRlc3RfYWx0X2tleSAqLworICAgIHBv
bGljeS5zc3JjLnR5cGUgPSBzc3JjX2FueV9vdXRib3VuZDsKICAgICBwb2xpY3kua2V5ID0gdGVz
dF9hbHRfa2V5OwotICAgIHN0YXR1cyA9IHNydHBfY3JlYXRlKCZzcnRwX3JlY3Zfcm9jXzAsICZw
b2xpY3kpOworICAgIHN0YXR1cyA9IHNydHBfdXBkYXRlKHNydHBfc25kLCAmcG9saWN5KTsKICAg
ICBpZiAoc3RhdHVzKQotICAgICAgcmV0dXJuIHN0YXR1czsKKyAgICAgICAgcmV0dXJuIHN0YXR1
czsKIAotICAgIHN0YXR1cyA9IHNydHBfdW5wcm90ZWN0KHNydHBfcmVjdl9yb2NfMCwgbXNnLCAm
cHJvdGVjdGVkX21zZ19sZW5fb2N0ZXRzKTsKLSAgICBpZiAoc3RhdHVzID09IHNydHBfZXJyX3N0
YXR1c19vaykKLSAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfZmFpbDsKKyAgICAvKiBjcmVh
dGUgYW5kIHByb3RlY3QgbXNnIHdpdGggbmV3IGtleSBhbmQgUk9DIHN0aWxsIGVxdWFsIHRvIDEg
Ki8KKyAgICBtc2cgPSBzcnRwX2NyZWF0ZV90ZXN0X3BhY2tldChtc2dfbGVuX29jdGV0cywgc3Ny
YywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmcHJvdGVjdGVkX21zZ19sZW5f
b2N0ZXRzKTsKKyAgICBpZiAobXNnID09IE5VTEwpCisgICAgICAgIHJldHVybiBzcnRwX2Vycl9z
dGF0dXNfYWxsb2NfZmFpbDsKKyAgICBtc2ctPnNlcSA9IGh0b25zKDMpOwogCi0gICAgc3RhdHVz
ID0gc3J0cF9kZWFsbG9jKHNydHBfcmVjdl9yb2NfMCk7CisgICAgc3RhdHVzID0gc3J0cF9wcm90
ZWN0KHNydHBfc25kLCBtc2csICZwcm90ZWN0ZWRfbXNnX2xlbl9vY3RldHMpOwogICAgIGlmIChz
dGF0dXMpCi0gICAgICByZXR1cm4gc3RhdHVzOwotICB9CisgICAgICAgIHJldHVybiBzcnRwX2Vy
cl9zdGF0dXNfZmFpbDsKIAotICAvKiB1cGRhdGUgcmVjaXZlIGN0eCB0byB1c2UgdGVzdF9hbHRf
a2V5ICovCi0gIHBvbGljeS5zc3JjLnR5cGUgPSBzc3JjX2FueV9pbmJvdW5kOwotICBwb2xpY3ku
a2V5ID0gdGVzdF9hbHRfa2V5OwotICBzdGF0dXMgPSBzcnRwX3VwZGF0ZShzcnRwX3JlY3YsICZw
b2xpY3kpOwotICBpZiAoc3RhdHVzKQotICAgIHJldHVybiBzdGF0dXM7CisgICAgLyogdmVyaWZ5
IHRoYXQgcmVjaXZlIGN0eCB3aWxsIGZhaWwgdG8gdW5wcm90ZWN0IGFzIGl0IHN0aWxsIHVzZXMg
dGVzdF9rZXkKKyAgICAgKi8KKyAgICBzdGF0dXMgPSBzcnRwX3VucHJvdGVjdChzcnRwX3JlY3Ys
IG1zZywgJnByb3RlY3RlZF9tc2dfbGVuX29jdGV0cyk7CisgICAgaWYgKHN0YXR1cyA9PSBzcnRw
X2Vycl9zdGF0dXNfb2spCisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfZmFpbDsKKwor
ICAgIC8qIGNyZWF0ZSBhIG5ldyByZWN2aWV2ZSBjdHggd2l0aCB0ZXN0X2FsdF9rZXkgYnV0IHNp
bmNlIGl0IGlzIG5ldyBpdCB3aWxsCisgICAgICogaGF2ZSBST0MgZXF1YWwgdG8gMQorICAgICAq
IGFuZCB0aGVyZWZvcmUgc2hvdWxkIGZhaWwgdG8gdW5wcm90ZWN0ZWQgKi8KKyAgICB7CisgICAg
ICAgIHNydHBfdCBzcnRwX3JlY3Zfcm9jXzA7CisKKyAgICAgICAgcG9saWN5LnNzcmMudHlwZSA9
IHNzcmNfYW55X2luYm91bmQ7CisgICAgICAgIHBvbGljeS5rZXkgPSB0ZXN0X2FsdF9rZXk7Cisg
ICAgICAgIHN0YXR1cyA9IHNydHBfY3JlYXRlKCZzcnRwX3JlY3Zfcm9jXzAsICZwb2xpY3kpOwor
ICAgICAgICBpZiAoc3RhdHVzKQorICAgICAgICAgICAgcmV0dXJuIHN0YXR1czsKKworICAgICAg
ICBzdGF0dXMgPQorICAgICAgICAgICAgc3J0cF91bnByb3RlY3Qoc3J0cF9yZWN2X3JvY18wLCBt
c2csICZwcm90ZWN0ZWRfbXNnX2xlbl9vY3RldHMpOworICAgICAgICBpZiAoc3RhdHVzID09IHNy
dHBfZXJyX3N0YXR1c19vaykKKyAgICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfZmFp
bDsKKworICAgICAgICBzdGF0dXMgPSBzcnRwX2RlYWxsb2Moc3J0cF9yZWN2X3JvY18wKTsKKyAg
ICAgICAgaWYgKHN0YXR1cykKKyAgICAgICAgICAgIHJldHVybiBzdGF0dXM7CisgICAgfQorCisg
ICAgLyogdXBkYXRlIHJlY2l2ZSBjdHggdG8gdXNlIHRlc3RfYWx0X2tleSAqLworICAgIHBvbGlj
eS5zc3JjLnR5cGUgPSBzc3JjX2FueV9pbmJvdW5kOworICAgIHBvbGljeS5rZXkgPSB0ZXN0X2Fs
dF9rZXk7CisgICAgc3RhdHVzID0gc3J0cF91cGRhdGUoc3J0cF9yZWN2LCAmcG9saWN5KTsKKyAg
ICBpZiAoc3RhdHVzKQorICAgICAgICByZXR1cm4gc3RhdHVzOwogCi0gIC8qIHZlcmlmeSB0aGF0
IGNhbiBzdGlsbCB1bnByb3RlY3QsIHRoZXJmb3JlIGtleSBpcyB1cGRhdGVkIGFuZCBST0MgdmFs
dWUgaXMgcHJlc2VydmVkICovCi0gIHN0YXR1cyA9IHNydHBfdW5wcm90ZWN0KHNydHBfcmVjdiwg
bXNnLCAmcHJvdGVjdGVkX21zZ19sZW5fb2N0ZXRzKTsKLSAgaWYgKHN0YXR1cykKLSAgICByZXR1
cm4gc3RhdHVzOworICAgIC8qIHZlcmlmeSB0aGF0IGNhbiBzdGlsbCB1bnByb3RlY3QsIHRoZXJm
b3JlIGtleSBpcyB1cGRhdGVkIGFuZCBST0MgdmFsdWUgaXMKKyAgICAgKiBwcmVzZXJ2ZWQgKi8K
KyAgICBzdGF0dXMgPSBzcnRwX3VucHJvdGVjdChzcnRwX3JlY3YsIG1zZywgJnByb3RlY3RlZF9t
c2dfbGVuX29jdGV0cyk7CisgICAgaWYgKHN0YXR1cykKKyAgICAgICAgcmV0dXJuIHN0YXR1czsK
IAotICBmcmVlKG1zZyk7CisgICAgZnJlZShtc2cpOwogCi0gIHN0YXR1cyA9IHNydHBfZGVhbGxv
YyhzcnRwX3NuZCk7Ci0gIGlmIChzdGF0dXMpCi0gICAgcmV0dXJuIHN0YXR1czsKKyAgICBzdGF0
dXMgPSBzcnRwX2RlYWxsb2Moc3J0cF9zbmQpOworICAgIGlmIChzdGF0dXMpCisgICAgICAgIHJl
dHVybiBzdGF0dXM7CiAKLSAgc3RhdHVzID0gc3J0cF9kZWFsbG9jKHNydHBfcmVjdik7Ci0gIGlm
IChzdGF0dXMpCi0gICAgcmV0dXJuIHN0YXR1czsKKyAgICBzdGF0dXMgPSBzcnRwX2RlYWxsb2Mo
c3J0cF9yZWN2KTsKKyAgICBpZiAoc3RhdHVzKQorICAgICAgICByZXR1cm4gc3RhdHVzOwogCi0g
IHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CisgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19v
azsKIH0KIAotc3J0cF9lcnJfc3RhdHVzX3QKLXNydHBfdGVzdF9zZXR1cF9wcm90ZWN0X3RyYWls
ZXJfc3RyZWFtcyhzcnRwX3QgKnNydHBfc2VuZCwgc3J0cF90ICpzcnRwX3NlbmRfbWtpLAotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfdCAqc3J0cF9zZW5kX2Fl
c19nY20sIHNydHBfdCAqc3J0cF9zZW5kX2Flc19nY21fbWtpKSB7CitzcnRwX2Vycl9zdGF0dXNf
dCBzcnRwX3Rlc3Rfc2V0dXBfcHJvdGVjdF90cmFpbGVyX3N0cmVhbXMoCisgICAgc3J0cF90ICpz
cnRwX3NlbmQsCisgICAgc3J0cF90ICpzcnRwX3NlbmRfbWtpLAorICAgIHNydHBfdCAqc3J0cF9z
ZW5kX2Flc19nY20sCisgICAgc3J0cF90ICpzcnRwX3NlbmRfYWVzX2djbV9ta2kpCit7CisgICAg
c3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVzOworICAgIHNydHBfcG9saWN5X3QgcG9saWN5OworICAg
IHNydHBfcG9saWN5X3QgcG9saWN5X21raTsKIAotICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7
Ci0gIHNydHBfcG9saWN5X3QgcG9saWN5OwotICBzcnRwX3BvbGljeV90IHBvbGljeV9ta2k7CiAj
aWZkZWYgT1BFTlNTTAotICBzcnRwX3BvbGljeV90IHBvbGljeV9hZXNfZ2NtOwotICBzcnRwX3Bv
bGljeV90IHBvbGljeV9hZXNfZ2NtX21raTsKKyAgICBzcnRwX3BvbGljeV90IHBvbGljeV9hZXNf
Z2NtOworICAgIHNydHBfcG9saWN5X3QgcG9saWN5X2Flc19nY21fbWtpOwogI2VuZGlmIC8vIE9Q
RU5TU0wKIAotICBtZW1zZXQoJnBvbGljeSwgMCwgc2l6ZW9mKHBvbGljeSkpOwotICBzcnRwX2Ny
eXB0b19wb2xpY3lfc2V0X3J0cF9kZWZhdWx0KCZwb2xpY3kucnRwKTsKLSAgc3J0cF9jcnlwdG9f
cG9saWN5X3NldF9ydGNwX2RlZmF1bHQoJnBvbGljeS5ydGNwKTsKLSAgcG9saWN5LmVrdCA9IE5V
TEw7Ci0gIHBvbGljeS53aW5kb3dfc2l6ZSA9IDEyODsKLSAgcG9saWN5LmFsbG93X3JlcGVhdF90
eCA9IDA7Ci0gIHBvbGljeS5uZXh0ID0gTlVMTDsKLSAgcG9saWN5LnNzcmMudHlwZSAgPSBzc3Jj
X2FueV9vdXRib3VuZDsKLSAgcG9saWN5LmtleSA9IHRlc3Rfa2V5OwotCi0gIG1lbXNldCgmcG9s
aWN5X21raSwgMCwgc2l6ZW9mKHBvbGljeV9ta2kpKTsKLSAgc3J0cF9jcnlwdG9fcG9saWN5X3Nl
dF9ydHBfZGVmYXVsdCgmcG9saWN5X21raS5ydHApOwotICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0
X3J0Y3BfZGVmYXVsdCgmcG9saWN5X21raS5ydGNwKTsKLSAgcG9saWN5X21raS5la3QgPSBOVUxM
OwotICBwb2xpY3lfbWtpLndpbmRvd19zaXplID0gMTI4OwotICBwb2xpY3lfbWtpLmFsbG93X3Jl
cGVhdF90eCA9IDA7Ci0gIHBvbGljeV9ta2kubmV4dCA9IE5VTEw7Ci0gIHBvbGljeV9ta2kuc3Ny
Yy50eXBlICA9IHNzcmNfYW55X291dGJvdW5kOwotICBwb2xpY3lfbWtpLmtleSA9IE5VTEw7Ci0g
IHBvbGljeV9ta2kua2V5cyA9IHRlc3Rfa2V5czsKLSAgcG9saWN5X21raS5udW1fbWFzdGVyX2tl
eXMgPSAyOworICAgIG1lbXNldCgmcG9saWN5LCAwLCBzaXplb2YocG9saWN5KSk7CisgICAgc3J0
cF9jcnlwdG9fcG9saWN5X3NldF9ydHBfZGVmYXVsdCgmcG9saWN5LnJ0cCk7CisgICAgc3J0cF9j
cnlwdG9fcG9saWN5X3NldF9ydGNwX2RlZmF1bHQoJnBvbGljeS5ydGNwKTsKKyAgICBwb2xpY3ku
ZWt0ID0gTlVMTDsKKyAgICBwb2xpY3kud2luZG93X3NpemUgPSAxMjg7CisgICAgcG9saWN5LmFs
bG93X3JlcGVhdF90eCA9IDA7CisgICAgcG9saWN5Lm5leHQgPSBOVUxMOworICAgIHBvbGljeS5z
c3JjLnR5cGUgPSBzc3JjX2FueV9vdXRib3VuZDsKKyAgICBwb2xpY3kua2V5ID0gdGVzdF9rZXk7
CiAKLSNpZmRlZiBPUEVOU1NMCi0gIG1lbXNldCgmcG9saWN5X2Flc19nY20sIDAsIHNpemVvZihw
b2xpY3lfYWVzX2djbSkpOwotICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21fMTI4XzE2
X2F1dGgoJnBvbGljeV9hZXNfZ2NtLnJ0cCk7Ci0gIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVz
X2djbV8xMjhfMTZfYXV0aCgmcG9saWN5X2Flc19nY20ucnRjcCk7Ci0gIHBvbGljeV9hZXNfZ2Nt
LmVrdCA9IE5VTEw7Ci0gIHBvbGljeV9hZXNfZ2NtLndpbmRvd19zaXplID0gMTI4OwotICBwb2xp
Y3lfYWVzX2djbS5hbGxvd19yZXBlYXRfdHggPSAwOwotICBwb2xpY3lfYWVzX2djbS5uZXh0ID0g
TlVMTDsKLSAgcG9saWN5X2Flc19nY20uc3NyYy50eXBlICA9IHNzcmNfYW55X291dGJvdW5kOwot
ICBwb2xpY3lfYWVzX2djbS5rZXkgPSB0ZXN0X2tleTsKLQotICBtZW1zZXQoJnBvbGljeV9hZXNf
Z2NtX21raSwgMCwgc2l6ZW9mKHBvbGljeV9hZXNfZ2NtX21raSkpOwotICBzcnRwX2NyeXB0b19w
b2xpY3lfc2V0X2Flc19nY21fMTI4XzE2X2F1dGgoJnBvbGljeV9hZXNfZ2NtX21raS5ydHApOwot
ICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21fMTI4XzE2X2F1dGgoJnBvbGljeV9hZXNf
Z2NtX21raS5ydGNwKTsKLSAgcG9saWN5X2Flc19nY21fbWtpLmVrdCA9IE5VTEw7Ci0gIHBvbGlj
eV9hZXNfZ2NtX21raS53aW5kb3dfc2l6ZSA9IDEyODsKLSAgcG9saWN5X2Flc19nY21fbWtpLmFs
bG93X3JlcGVhdF90eCA9IDA7Ci0gIHBvbGljeV9hZXNfZ2NtX21raS5uZXh0ID0gTlVMTDsKLSAg
cG9saWN5X2Flc19nY21fbWtpLnNzcmMudHlwZSAgPSBzc3JjX2FueV9vdXRib3VuZDsKLSAgcG9s
aWN5X2Flc19nY21fbWtpLmtleSA9IE5VTEw7Ci0gIHBvbGljeV9hZXNfZ2NtX21raS5rZXlzID0g
dGVzdF9rZXlzOwotICBwb2xpY3lfYWVzX2djbV9ta2kubnVtX21hc3Rlcl9rZXlzID0gMjsKKyAg
ICBtZW1zZXQoJnBvbGljeV9ta2ksIDAsIHNpemVvZihwb2xpY3lfbWtpKSk7CisgICAgc3J0cF9j
cnlwdG9fcG9saWN5X3NldF9ydHBfZGVmYXVsdCgmcG9saWN5X21raS5ydHApOworICAgIHNydHBf
Y3J5cHRvX3BvbGljeV9zZXRfcnRjcF9kZWZhdWx0KCZwb2xpY3lfbWtpLnJ0Y3ApOworICAgIHBv
bGljeV9ta2kuZWt0ID0gTlVMTDsKKyAgICBwb2xpY3lfbWtpLndpbmRvd19zaXplID0gMTI4Owor
ICAgIHBvbGljeV9ta2kuYWxsb3dfcmVwZWF0X3R4ID0gMDsKKyAgICBwb2xpY3lfbWtpLm5leHQg
PSBOVUxMOworICAgIHBvbGljeV9ta2kuc3NyYy50eXBlID0gc3NyY19hbnlfb3V0Ym91bmQ7Cisg
ICAgcG9saWN5X21raS5rZXkgPSBOVUxMOworICAgIHBvbGljeV9ta2kua2V5cyA9IHRlc3Rfa2V5
czsKKyAgICBwb2xpY3lfbWtpLm51bV9tYXN0ZXJfa2V5cyA9IDI7CiAKKyNpZmRlZiBPUEVOU1NM
CisgICAgbWVtc2V0KCZwb2xpY3lfYWVzX2djbSwgMCwgc2l6ZW9mKHBvbGljeV9hZXNfZ2NtKSk7
CisgICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfZ2NtXzEyOF8xNl9hdXRoKCZwb2xpY3lf
YWVzX2djbS5ydHApOworICAgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2djbV8xMjhfMTZf
YXV0aCgmcG9saWN5X2Flc19nY20ucnRjcCk7CisgICAgcG9saWN5X2Flc19nY20uZWt0ID0gTlVM
TDsKKyAgICBwb2xpY3lfYWVzX2djbS53aW5kb3dfc2l6ZSA9IDEyODsKKyAgICBwb2xpY3lfYWVz
X2djbS5hbGxvd19yZXBlYXRfdHggPSAwOworICAgIHBvbGljeV9hZXNfZ2NtLm5leHQgPSBOVUxM
OworICAgIHBvbGljeV9hZXNfZ2NtLnNzcmMudHlwZSA9IHNzcmNfYW55X291dGJvdW5kOworICAg
IHBvbGljeV9hZXNfZ2NtLmtleSA9IHRlc3Rfa2V5OworCisgICAgbWVtc2V0KCZwb2xpY3lfYWVz
X2djbV9ta2ksIDAsIHNpemVvZihwb2xpY3lfYWVzX2djbV9ta2kpKTsKKyAgICBzcnRwX2NyeXB0
b19wb2xpY3lfc2V0X2Flc19nY21fMTI4XzE2X2F1dGgoJnBvbGljeV9hZXNfZ2NtX21raS5ydHAp
OworICAgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2djbV8xMjhfMTZfYXV0aCgmcG9saWN5
X2Flc19nY21fbWtpLnJ0Y3ApOworICAgIHBvbGljeV9hZXNfZ2NtX21raS5la3QgPSBOVUxMOwor
ICAgIHBvbGljeV9hZXNfZ2NtX21raS53aW5kb3dfc2l6ZSA9IDEyODsKKyAgICBwb2xpY3lfYWVz
X2djbV9ta2kuYWxsb3dfcmVwZWF0X3R4ID0gMDsKKyAgICBwb2xpY3lfYWVzX2djbV9ta2kubmV4
dCA9IE5VTEw7CisgICAgcG9saWN5X2Flc19nY21fbWtpLnNzcmMudHlwZSA9IHNzcmNfYW55X291
dGJvdW5kOworICAgIHBvbGljeV9hZXNfZ2NtX21raS5rZXkgPSBOVUxMOworICAgIHBvbGljeV9h
ZXNfZ2NtX21raS5rZXlzID0gdGVzdF9rZXlzOworICAgIHBvbGljeV9hZXNfZ2NtX21raS5udW1f
bWFzdGVyX2tleXMgPSAyOwogI2VuZGlmCiAKLSAgLyogY3JlYXRlIGEgc2VuZCBjdHggd2l0aCBk
ZWZ1YWx0IHByb2ZpbGUgYW5kIHRlc3Rfa2V5ICovCi0gIHN0YXR1cyA9IHNydHBfY3JlYXRlKHNy
dHBfc2VuZCwgJnBvbGljeSk7Ci0gIGlmIChzdGF0dXMpCi0gICAgcmV0dXJuIHN0YXR1czsKKyAg
ICAvKiBjcmVhdGUgYSBzZW5kIGN0eCB3aXRoIGRlZnVhbHQgcHJvZmlsZSBhbmQgdGVzdF9rZXkg
Ki8KKyAgICBzdGF0dXMgPSBzcnRwX2NyZWF0ZShzcnRwX3NlbmQsICZwb2xpY3kpOworICAgIGlm
IChzdGF0dXMpCisgICAgICAgIHJldHVybiBzdGF0dXM7CiAKLSAgc3RhdHVzID0gc3J0cF9jcmVh
dGUoc3J0cF9zZW5kX21raSwgJnBvbGljeV9ta2kpOwotICBpZiAoc3RhdHVzKQotICAgIHJldHVy
biBzdGF0dXM7CisgICAgc3RhdHVzID0gc3J0cF9jcmVhdGUoc3J0cF9zZW5kX21raSwgJnBvbGlj
eV9ta2kpOworICAgIGlmIChzdGF0dXMpCisgICAgICAgIHJldHVybiBzdGF0dXM7CiAKICNpZmRl
ZiBPUEVOU1NMCi0gIHN0YXR1cyA9IHNydHBfY3JlYXRlKHNydHBfc2VuZF9hZXNfZ2NtLCAmcG9s
aWN5X2Flc19nY20pOwotICBpZiAoc3RhdHVzKQotICAgIHJldHVybiBzdGF0dXM7CisgICAgc3Rh
dHVzID0gc3J0cF9jcmVhdGUoc3J0cF9zZW5kX2Flc19nY20sICZwb2xpY3lfYWVzX2djbSk7Cisg
ICAgaWYgKHN0YXR1cykKKyAgICAgICAgcmV0dXJuIHN0YXR1czsKIAotICBzdGF0dXMgPSBzcnRw
X2NyZWF0ZShzcnRwX3NlbmRfYWVzX2djbV9ta2ksICZwb2xpY3lfYWVzX2djbV9ta2kpOwotICBp
ZiAoc3RhdHVzKQotICAgIHJldHVybiBzdGF0dXM7Ci0jZW5kaWYgLy9PUEVOU1NMCisgICAgc3Rh
dHVzID0gc3J0cF9jcmVhdGUoc3J0cF9zZW5kX2Flc19nY21fbWtpLCAmcG9saWN5X2Flc19nY21f
bWtpKTsKKyAgICBpZiAoc3RhdHVzKQorICAgICAgICByZXR1cm4gc3RhdHVzOworI2VuZGlmIC8v
IE9QRU5TU0wKIAotICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOworICAgIHJldHVybiBzcnRw
X2Vycl9zdGF0dXNfb2s7CiB9CiAKLXNydHBfZXJyX3N0YXR1c190Ci1zcnRwX3Rlc3RfcHJvdGVj
dF90cmFpbGVyX2xlbmd0aCgpIHsKLQotICBzcnRwX3Qgc3J0cF9zZW5kOwotICBzcnRwX3Qgc3J0
cF9zZW5kX21raTsKLSAgc3J0cF90IHNydHBfc2VuZF9hZXNfZ2NtOwotICBzcnRwX3Qgc3J0cF9z
ZW5kX2Flc19nY21fbWtpOwotICB1aW50MzJfdCBsZW5ndGggPSAwOwotICBzcnRwX2Vycl9zdGF0
dXNfdCBzdGF0dXM7CitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3Rlc3RfcHJvdGVjdF90cmFpbGVy
X2xlbmd0aCgpCit7CisgICAgc3J0cF90IHNydHBfc2VuZDsKKyAgICBzcnRwX3Qgc3J0cF9zZW5k
X21raTsKKyAgICBzcnRwX3Qgc3J0cF9zZW5kX2Flc19nY207CisgICAgc3J0cF90IHNydHBfc2Vu
ZF9hZXNfZ2NtX21raTsKKyAgICB1aW50MzJfdCBsZW5ndGggPSAwOworICAgIHNydHBfZXJyX3N0
YXR1c190IHN0YXR1czsKIAotICBzcnRwX3Rlc3Rfc2V0dXBfcHJvdGVjdF90cmFpbGVyX3N0cmVh
bXMoJnNydHBfc2VuZCwgJnNydHBfc2VuZF9ta2ksCi0JCQkJCSAgJnNydHBfc2VuZF9hZXNfZ2Nt
LCAmc3J0cF9zZW5kX2Flc19nY21fbWtpKTsKKyAgICBzcnRwX3Rlc3Rfc2V0dXBfcHJvdGVjdF90
cmFpbGVyX3N0cmVhbXMoCisgICAgICAgICZzcnRwX3NlbmQsICZzcnRwX3NlbmRfbWtpLCAmc3J0
cF9zZW5kX2Flc19nY20sICZzcnRwX3NlbmRfYWVzX2djbV9ta2kpOwogCi0gIHN0YXR1cyA9IHNy
dHBfZ2V0X3Byb3RlY3RfdHJhaWxlcl9sZW5ndGgoc3J0cF9zZW5kLCAwLCAwLCAmbGVuZ3RoKTsK
LSAgaWYgKHN0YXR1cykKLSAgICByZXR1cm4gc3RhdHVzOworICAgIHN0YXR1cyA9IHNydHBfZ2V0
X3Byb3RlY3RfdHJhaWxlcl9sZW5ndGgoc3J0cF9zZW5kLCAwLCAwLCAmbGVuZ3RoKTsKKyAgICBp
ZiAoc3RhdHVzKQorICAgICAgICByZXR1cm4gc3RhdHVzOwogCi0gIC8qICBUQUcgTGVuZ3RoOiAx
MCBieXRlcyAqLwotICBpZiAobGVuZ3RoICE9IDEwKQotICAgIHJldHVybiBzcnRwX2Vycl9zdGF0
dXNfZmFpbDsKKyAgICAvKiAgVEFHIExlbmd0aDogMTAgYnl0ZXMgKi8KKyAgICBpZiAobGVuZ3Ro
ICE9IDEwKQorICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7CiAKLSAgc3RhdHVz
ID0gc3J0cF9nZXRfcHJvdGVjdF90cmFpbGVyX2xlbmd0aChzcnRwX3NlbmRfbWtpLCAxLCAxLCAm
bGVuZ3RoKTsKLSAgaWYgKHN0YXR1cykKLSAgICByZXR1cm4gc3RhdHVzOworICAgIHN0YXR1cyA9
IHNydHBfZ2V0X3Byb3RlY3RfdHJhaWxlcl9sZW5ndGgoc3J0cF9zZW5kX21raSwgMSwgMSwgJmxl
bmd0aCk7CisgICAgaWYgKHN0YXR1cykKKyAgICAgICAgcmV0dXJuIHN0YXR1czsKIAotICAvKiAg
VEFHIExlbmd0aDogMTAgYnl0ZXMgKyBNS0kgbGVuZ3RoOiA0IGJ5dGVzKi8KLSAgaWYgKGxlbmd0
aCAhPSAxNCkKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7CisgICAgLyogIFRBRyBM
ZW5ndGg6IDEwIGJ5dGVzICsgTUtJIGxlbmd0aDogNCBieXRlcyovCisgICAgaWYgKGxlbmd0aCAh
PSAxNCkKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19mYWlsOwogCiAjaWZkZWYgT1BF
TlNTTAotICBzdGF0dXMgPSBzcnRwX2dldF9wcm90ZWN0X3RyYWlsZXJfbGVuZ3RoKHNydHBfc2Vu
ZF9hZXNfZ2NtLCAwLCAwLCAmbGVuZ3RoKTsKLSAgaWYgKHN0YXR1cykKLSAgICByZXR1cm4gc3Rh
dHVzOworICAgIHN0YXR1cyA9IHNydHBfZ2V0X3Byb3RlY3RfdHJhaWxlcl9sZW5ndGgoc3J0cF9z
ZW5kX2Flc19nY20sIDAsIDAsICZsZW5ndGgpOworICAgIGlmIChzdGF0dXMpCisgICAgICAgIHJl
dHVybiBzdGF0dXM7CiAKLSAgLyogIFRBRyBMZW5ndGg6IDE2IGJ5dGVzICovCi0gIGlmIChsZW5n
dGggIT0gMTYpCi0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19mYWlsOworICAgIC8qICBUQUcg
TGVuZ3RoOiAxNiBieXRlcyAqLworICAgIGlmIChsZW5ndGggIT0gMTYpCisgICAgICAgIHJldHVy
biBzcnRwX2Vycl9zdGF0dXNfZmFpbDsKIAorICAgIHN0YXR1cyA9CisgICAgICAgIHNydHBfZ2V0
X3Byb3RlY3RfdHJhaWxlcl9sZW5ndGgoc3J0cF9zZW5kX2Flc19nY21fbWtpLCAxLCAxLCAmbGVu
Z3RoKTsKKyAgICBpZiAoc3RhdHVzKQorICAgICAgICByZXR1cm4gc3RhdHVzOwogCi0gIHN0YXR1
cyA9IHNydHBfZ2V0X3Byb3RlY3RfdHJhaWxlcl9sZW5ndGgoc3J0cF9zZW5kX2Flc19nY21fbWtp
LCAxLCAxLCAmbGVuZ3RoKTsKLSAgaWYgKHN0YXR1cykKLSAgICByZXR1cm4gc3RhdHVzOworICAg
IC8qICBUQUcgTGVuZ3RoOiAxNiBieXRlcyArIE1LSSBsZW5ndGg6IDQgYnl0ZXMqLworICAgIGlm
IChsZW5ndGggIT0gMjApCisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfZmFpbDsKKyNl
bmRpZiAvLyBPUEVOU1NMCiAKLSAgLyogIFRBRyBMZW5ndGg6IDE2IGJ5dGVzICsgTUtJIGxlbmd0
aDogNCBieXRlcyovCi0gIGlmIChsZW5ndGggIT0gMjApCi0gICAgcmV0dXJuIHNydHBfZXJyX3N0
YXR1c19mYWlsOworICAgIHNydHBfZGVhbGxvYyhzcnRwX3NlbmQpOworICAgIHNydHBfZGVhbGxv
YyhzcnRwX3NlbmRfbWtpKTsKKyNpZmRlZiBPUEVOU1NMCisgICAgc3J0cF9kZWFsbG9jKHNydHBf
c2VuZF9hZXNfZ2NtKTsKKyAgICBzcnRwX2RlYWxsb2Moc3J0cF9zZW5kX2Flc19nY21fbWtpKTsK
KyNlbmRpZgogCi0jZW5kaWYgLy9PUEVOU1NMCi0gIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7
CisgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0KIAotc3J0cF9lcnJfc3RhdHVzX3QK
LXNydHBfdGVzdF9wcm90ZWN0X3J0Y3BfdHJhaWxlcl9sZW5ndGgoKSB7Ci0KLSAgc3J0cF90IHNy
dHBfc2VuZDsKLSAgc3J0cF90IHNydHBfc2VuZF9ta2k7Ci0gIHNydHBfdCBzcnRwX3NlbmRfYWVz
X2djbTsKLSAgc3J0cF90IHNydHBfc2VuZF9hZXNfZ2NtX21raTsKLSAgdWludDMyX3QgbGVuZ3Ro
ID0gMDsKLSAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVzOworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0
cF90ZXN0X3Byb3RlY3RfcnRjcF90cmFpbGVyX2xlbmd0aCgpCit7CisgICAgc3J0cF90IHNydHBf
c2VuZDsKKyAgICBzcnRwX3Qgc3J0cF9zZW5kX21raTsKKyAgICBzcnRwX3Qgc3J0cF9zZW5kX2Fl
c19nY207CisgICAgc3J0cF90IHNydHBfc2VuZF9hZXNfZ2NtX21raTsKKyAgICB1aW50MzJfdCBs
ZW5ndGggPSAwOworICAgIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKIAotICBzcnRwX3Rlc3Rf
c2V0dXBfcHJvdGVjdF90cmFpbGVyX3N0cmVhbXMoJnNydHBfc2VuZCwgJnNydHBfc2VuZF9ta2ks
Ci0JCQkJCSAgJnNydHBfc2VuZF9hZXNfZ2NtLCAmc3J0cF9zZW5kX2Flc19nY21fbWtpKTsKKyAg
ICBzcnRwX3Rlc3Rfc2V0dXBfcHJvdGVjdF90cmFpbGVyX3N0cmVhbXMoCisgICAgICAgICZzcnRw
X3NlbmQsICZzcnRwX3NlbmRfbWtpLCAmc3J0cF9zZW5kX2Flc19nY20sICZzcnRwX3NlbmRfYWVz
X2djbV9ta2kpOwogCi0gIHN0YXR1cyA9IHNydHBfZ2V0X3Byb3RlY3RfcnRjcF90cmFpbGVyX2xl
bmd0aChzcnRwX3NlbmQsIDAsIDAsICZsZW5ndGgpOwotICBpZiAoc3RhdHVzKQotICAgIHJldHVy
biBzdGF0dXM7CisgICAgc3RhdHVzID0gc3J0cF9nZXRfcHJvdGVjdF9ydGNwX3RyYWlsZXJfbGVu
Z3RoKHNydHBfc2VuZCwgMCwgMCwgJmxlbmd0aCk7CisgICAgaWYgKHN0YXR1cykKKyAgICAgICAg
cmV0dXJuIHN0YXR1czsKIAotICAvKiAgVEFHIExlbmd0aDogMTAgYnl0ZXMgKyBTUlRDUCBUcmFp
bGVyIDQgYnl0ZXMqLwotICBpZiAobGVuZ3RoICE9IDE0KQotICAgIHJldHVybiBzcnRwX2Vycl9z
dGF0dXNfZmFpbDsKKyAgICAvKiAgVEFHIExlbmd0aDogMTAgYnl0ZXMgKyBTUlRDUCBUcmFpbGVy
IDQgYnl0ZXMqLworICAgIGlmIChsZW5ndGggIT0gMTQpCisgICAgICAgIHJldHVybiBzcnRwX2Vy
cl9zdGF0dXNfZmFpbDsKIAotICBzdGF0dXMgPSBzcnRwX2dldF9wcm90ZWN0X3J0Y3BfdHJhaWxl
cl9sZW5ndGgoc3J0cF9zZW5kX21raSwgMSwgMSwgJmxlbmd0aCk7Ci0gIGlmIChzdGF0dXMpCi0g
ICAgcmV0dXJuIHN0YXR1czsKKyAgICBzdGF0dXMgPSBzcnRwX2dldF9wcm90ZWN0X3J0Y3BfdHJh
aWxlcl9sZW5ndGgoc3J0cF9zZW5kX21raSwgMSwgMSwgJmxlbmd0aCk7CisgICAgaWYgKHN0YXR1
cykKKyAgICAgICAgcmV0dXJuIHN0YXR1czsKIAotICAvKiAgVEFHIExlbmd0aDogMTAgYnl0ZXMg
KyBTUlRDUCBUcmFpbGVyIDQgYnl0ZXMgKyBNS0kgNCBieXRlcyovCi0gIGlmIChsZW5ndGggIT0g
MTgpCi0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19mYWlsOworICAgIC8qICBUQUcgTGVuZ3Ro
OiAxMCBieXRlcyArIFNSVENQIFRyYWlsZXIgNCBieXRlcyArIE1LSSA0IGJ5dGVzKi8KKyAgICBp
ZiAobGVuZ3RoICE9IDE4KQorICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7CiAK
ICNpZmRlZiBPUEVOU1NMCi0gIHN0YXR1cyA9IHNydHBfZ2V0X3Byb3RlY3RfcnRjcF90cmFpbGVy
X2xlbmd0aChzcnRwX3NlbmRfYWVzX2djbSwgMCwgMCwgJmxlbmd0aCk7Ci0gIGlmIChzdGF0dXMp
Ci0gICAgcmV0dXJuIHN0YXR1czsKKyAgICBzdGF0dXMgPQorICAgICAgICBzcnRwX2dldF9wcm90
ZWN0X3J0Y3BfdHJhaWxlcl9sZW5ndGgoc3J0cF9zZW5kX2Flc19nY20sIDAsIDAsICZsZW5ndGgp
OworICAgIGlmIChzdGF0dXMpCisgICAgICAgIHJldHVybiBzdGF0dXM7CiAKLSAgLyogIFRBRyBM
ZW5ndGg6IDE2IGJ5dGVzICsgU1JUQ1AgVHJhaWxlciA0IGJ5dGVzKi8KLSAgaWYgKGxlbmd0aCAh
PSAyMCkKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7CisgICAgLyogIFRBRyBMZW5n
dGg6IDE2IGJ5dGVzICsgU1JUQ1AgVHJhaWxlciA0IGJ5dGVzKi8KKyAgICBpZiAobGVuZ3RoICE9
IDIwKQorICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7CiAKKyAgICBzdGF0dXMg
PSBzcnRwX2dldF9wcm90ZWN0X3J0Y3BfdHJhaWxlcl9sZW5ndGgoc3J0cF9zZW5kX2Flc19nY21f
bWtpLCAxLCAxLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAmbGVuZ3RoKTsKKyAgICBpZiAoc3RhdHVzKQorICAgICAgICByZXR1cm4gc3RhdHVzOwog
Ci0gIHN0YXR1cyA9IHNydHBfZ2V0X3Byb3RlY3RfcnRjcF90cmFpbGVyX2xlbmd0aChzcnRwX3Nl
bmRfYWVzX2djbV9ta2ksIDEsIDEsICZsZW5ndGgpOwotICBpZiAoc3RhdHVzKQotICAgIHJldHVy
biBzdGF0dXM7CisgICAgLyogIFRBRyBMZW5ndGg6IDE2IGJ5dGVzICsgU1JUQ1AgVHJhaWxlciA0
IGJ5dGVzICsgTUtJIDQgYnl0ZXMqLworICAgIGlmIChsZW5ndGggIT0gMjQpCisgICAgICAgIHJl
dHVybiBzcnRwX2Vycl9zdGF0dXNfZmFpbDsKKyNlbmRpZiAvLyBPUEVOU1NMCiAKLSAgLyogIFRB
RyBMZW5ndGg6IDE2IGJ5dGVzICsgU1JUQ1AgVHJhaWxlciA0IGJ5dGVzICsgTUtJIDQgYnl0ZXMq
LwotICBpZiAobGVuZ3RoICE9IDI0KQotICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfZmFpbDsK
KyAgICBzcnRwX2RlYWxsb2Moc3J0cF9zZW5kKTsKKyAgICBzcnRwX2RlYWxsb2Moc3J0cF9zZW5k
X21raSk7CisjaWZkZWYgT1BFTlNTTAorICAgIHNydHBfZGVhbGxvYyhzcnRwX3NlbmRfYWVzX2dj
bSk7CisgICAgc3J0cF9kZWFsbG9jKHNydHBfc2VuZF9hZXNfZ2NtX21raSk7CisjZW5kaWYKIAot
I2VuZGlmIC8vT1BFTlNTTAotICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOworICAgIHJldHVy
biBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAKLXNydHBfZXJyX3N0YXR1c190Ci1zcnRwX3Rlc3Rf
Z2V0X3JvYygpIHsKLSAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVzOwotICBzcnRwX3BvbGljeV90
IHBvbGljeTsKLSAgc3J0cF90IHNlc3Npb247Ci0gIHNydHBfaGRyX3QgKnBrdDsKLSAgdWludDMy
X3QgaTsKLSAgdWludDMyX3Qgcm9jOwotICB1aW50MzJfdCB0czsKLSAgdWludDE2X3Qgc2VxOwot
Ci0gIGludCBtc2dfbGVuX29jdGV0cyA9IDMyOwotICBpbnQgcHJvdGVjdGVkX21zZ19sZW5fb2N0
ZXRzOwotCi0gIG1lbXNldCgmcG9saWN5LCAwLCBzaXplb2YocG9saWN5KSk7Ci0gIHNydHBfY3J5
cHRvX3BvbGljeV9zZXRfcnRwX2RlZmF1bHQoJnBvbGljeS5ydHApOwotICBzcnRwX2NyeXB0b19w
b2xpY3lfc2V0X3J0Y3BfZGVmYXVsdCgmcG9saWN5LnJ0Y3ApOwotICBwb2xpY3kuc3NyYy50eXBl
ICA9IHNzcmNfc3BlY2lmaWM7Ci0gIHBvbGljeS5zc3JjLnZhbHVlID0gMHhjYWZlYmFiZTsKLSAg
cG9saWN5LmtleSA9IHRlc3Rfa2V5OwotICBwb2xpY3kud2luZG93X3NpemUgPSAxMjg7Ci0KLSAg
LyogQ3JlYXRlIGEgc2VuZGVyIHNlc3Npb24gKi8KLSAgc3RhdHVzID0gc3J0cF9jcmVhdGUoJnNl
c3Npb24sICZwb2xpY3kpOwotICBpZiAoc3RhdHVzKSB7Ci0gICAgcmV0dXJuIHN0YXR1czsKLSAg
fQotCi0gIC8qIFNldCBzdGFydCBzZXF1ZW5jZSBzbyB3ZSByb2xsIG92ZXIgKi8KLSAgc2VxID0g
NjU1MzU7Ci0gIHRzID0gMDsKLQotICBmb3IgKGkgPSAwOyBpIDwgMjsgaSsrKSB7Ci0gICAgcGt0
ID0gc3J0cF9jcmVhdGVfdGVzdF9wYWNrZXRfZXh0ZW5kZWQobXNnX2xlbl9vY3RldHMsIHBvbGlj
eS5zc3JjLnZhbHVlLCBzZXEsIHRzKTsKLSAgICBwcm90ZWN0ZWRfbXNnX2xlbl9vY3RldHMgPSBt
c2dfbGVuX29jdGV0czsKLSAgICBzdGF0dXMgPSBzcnRwX3Byb3RlY3Qoc2Vzc2lvbiwgcGt0LCAm
cHJvdGVjdGVkX21zZ19sZW5fb2N0ZXRzKTsKLSAgICBmcmVlKHBrdCk7CitzcnRwX2Vycl9zdGF0
dXNfdCBzcnRwX3Rlc3RfZ2V0X3JvYygpCit7CisgICAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVz
OworICAgIHNydHBfcG9saWN5X3QgcG9saWN5OworICAgIHNydHBfdCBzZXNzaW9uOworICAgIHNy
dHBfaGRyX3QgKnBrdDsKKyAgICB1aW50MzJfdCBpOworICAgIHVpbnQzMl90IHJvYzsKKyAgICB1
aW50MzJfdCB0czsKKyAgICB1aW50MTZfdCBzZXE7CisKKyAgICBpbnQgbXNnX2xlbl9vY3RldHMg
PSAzMjsKKyAgICBpbnQgcHJvdGVjdGVkX21zZ19sZW5fb2N0ZXRzOworCisgICAgbWVtc2V0KCZw
b2xpY3ksIDAsIHNpemVvZihwb2xpY3kpKTsKKyAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X3J0
cF9kZWZhdWx0KCZwb2xpY3kucnRwKTsKKyAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X3J0Y3Bf
ZGVmYXVsdCgmcG9saWN5LnJ0Y3ApOworICAgIHBvbGljeS5zc3JjLnR5cGUgPSBzc3JjX3NwZWNp
ZmljOworICAgIHBvbGljeS5zc3JjLnZhbHVlID0gMHhjYWZlYmFiZTsKKyAgICBwb2xpY3kua2V5
ID0gdGVzdF9rZXk7CisgICAgcG9saWN5LndpbmRvd19zaXplID0gMTI4OworCisgICAgLyogQ3Jl
YXRlIGEgc2VuZGVyIHNlc3Npb24gKi8KKyAgICBzdGF0dXMgPSBzcnRwX2NyZWF0ZSgmc2Vzc2lv
biwgJnBvbGljeSk7CiAgICAgaWYgKHN0YXR1cykgewotICAgICAgcmV0dXJuIHN0YXR1czsKKyAg
ICAgICAgcmV0dXJuIHN0YXR1czsKICAgICB9CiAKLSAgICBzdGF0dXMgPSBzcnRwX2dldF9zdHJl
YW1fcm9jKHNlc3Npb24sIHBvbGljeS5zc3JjLnZhbHVlLCAmcm9jKTsKKyAgICAvKiBTZXQgc3Rh
cnQgc2VxdWVuY2Ugc28gd2Ugcm9sbCBvdmVyICovCisgICAgc2VxID0gNjU1MzU7CisgICAgdHMg
PSAwOworCisgICAgZm9yIChpID0gMDsgaSA8IDI7IGkrKykgeworICAgICAgICBwa3QgPSBzcnRw
X2NyZWF0ZV90ZXN0X3BhY2tldF9leHRlbmRlZChtc2dfbGVuX29jdGV0cywKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9saWN5LnNzcmMudmFsdWUsIHNl
cSwgdHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZw
cm90ZWN0ZWRfbXNnX2xlbl9vY3RldHMpOworICAgICAgICBzdGF0dXMgPSBzcnRwX3Byb3RlY3Qo
c2Vzc2lvbiwgcGt0LCAmcHJvdGVjdGVkX21zZ19sZW5fb2N0ZXRzKTsKKyAgICAgICAgZnJlZShw
a3QpOworICAgICAgICBpZiAoc3RhdHVzKSB7CisgICAgICAgICAgICByZXR1cm4gc3RhdHVzOwor
ICAgICAgICB9CisKKyAgICAgICAgc3RhdHVzID0gc3J0cF9nZXRfc3RyZWFtX3JvYyhzZXNzaW9u
LCBwb2xpY3kuc3NyYy52YWx1ZSwgJnJvYyk7CisgICAgICAgIGlmIChzdGF0dXMpIHsKKyAgICAg
ICAgICAgIHJldHVybiBzdGF0dXM7CisgICAgICAgIH0KKworICAgICAgICBpZiAocm9jICE9IGkp
IHsKKyAgICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfZmFpbDsKKyAgICAgICAgfQor
CisgICAgICAgIHNlcSsrOworICAgICAgICB0cysrOworICAgIH0KKworICAgIC8qIENsZWFudXAg
Ki8KKyAgICBzdGF0dXMgPSBzcnRwX2RlYWxsb2Moc2Vzc2lvbik7CisgICAgaWYgKHN0YXR1cykg
eworICAgICAgICByZXR1cm4gc3RhdHVzOworICAgIH0KKworICAgIHJldHVybiBzcnRwX2Vycl9z
dGF0dXNfb2s7Cit9CisKK3N0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCB0ZXN0X3NldF9yZWNlaXZl
cl9yb2ModWludDMyX3QgcGFja2V0cywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgdWludDMyX3Qgcm9jX3RvX3NldCkKK3sKKyAgICBzcnRwX2Vycl9zdGF0
dXNfdCBzdGF0dXM7CisKKyAgICBzcnRwX3BvbGljeV90IHNlbmRlcl9wb2xpY3k7CisgICAgc3J0
cF90IHNlbmRlcl9zZXNzaW9uOworCisgICAgc3J0cF9wb2xpY3lfdCByZWNlaXZlcl9wb2xpY3k7
CisgICAgc3J0cF90IHJlY2VpdmVyX3Nlc3Npb247CisKKyAgICBzcnRwX2hkcl90ICpwa3RfMTsK
KyAgICB1bnNpZ25lZCBjaGFyICpyZWN2X3BrdF8xOworCisgICAgc3J0cF9oZHJfdCAqcGt0XzI7
CisgICAgdW5zaWduZWQgY2hhciAqcmVjdl9wa3RfMjsKKworICAgIHVpbnQzMl90IGk7CisgICAg
dWludDMyX3QgdHM7CisgICAgdWludDE2X3Qgc2VxOworCisgICAgaW50IG1zZ19sZW5fb2N0ZXRz
ID0gMzI7CisgICAgaW50IHByb3RlY3RlZF9tc2dfbGVuX29jdGV0c18xOworICAgIGludCBwcm90
ZWN0ZWRfbXNnX2xlbl9vY3RldHNfMjsKKworICAgIC8qIENyZWF0ZSBzZW5kZXIgKi8KKyAgICBt
ZW1zZXQoJnNlbmRlcl9wb2xpY3ksIDAsIHNpemVvZihzZW5kZXJfcG9saWN5KSk7CisgICAgc3J0
cF9jcnlwdG9fcG9saWN5X3NldF9ydHBfZGVmYXVsdCgmc2VuZGVyX3BvbGljeS5ydHApOworICAg
IHNydHBfY3J5cHRvX3BvbGljeV9zZXRfcnRjcF9kZWZhdWx0KCZzZW5kZXJfcG9saWN5LnJ0Y3Ap
OworICAgIHNlbmRlcl9wb2xpY3kuc3NyYy50eXBlID0gc3NyY19zcGVjaWZpYzsKKyAgICBzZW5k
ZXJfcG9saWN5LnNzcmMudmFsdWUgPSAweGNhZmViYWJlOworICAgIHNlbmRlcl9wb2xpY3kua2V5
ID0gdGVzdF9rZXk7CisgICAgc2VuZGVyX3BvbGljeS53aW5kb3dfc2l6ZSA9IDEyODsKKworICAg
IHN0YXR1cyA9IHNydHBfY3JlYXRlKCZzZW5kZXJfc2Vzc2lvbiwgJnNlbmRlcl9wb2xpY3kpOwog
ICAgIGlmIChzdGF0dXMpIHsKLSAgICAgIHJldHVybiBzdGF0dXM7CisgICAgICAgIHJldHVybiBz
dGF0dXM7CiAgICAgfQogCi0gICAgaWYgKHJvYyAhPSBpKSB7Ci0gICAgICByZXR1cm4gc3J0cF9l
cnJfc3RhdHVzX2ZhaWw7CisgICAgLyogQ3JlYXRlIGFuZCBwcm90ZWN0IHBhY2tldHMgKi8KKyAg
ICBzZXEgPSAwOworICAgIHRzID0gMDsKKyAgICBmb3IgKGkgPSAwOyBpIDwgcGFja2V0czsgaSsr
KSB7CisgICAgICAgIHNydHBfaGRyX3QgKnRtcF9wa3Q7CisgICAgICAgIGludCB0bXBfbGVuOwor
CisgICAgICAgIHRtcF9wa3QgPSBzcnRwX2NyZWF0ZV90ZXN0X3BhY2tldF9leHRlbmRlZCgKKyAg
ICAgICAgICAgIG1zZ19sZW5fb2N0ZXRzLCBzZW5kZXJfcG9saWN5LnNzcmMudmFsdWUsIHNlcSwg
dHMsICZ0bXBfbGVuKTsKKyAgICAgICAgc3RhdHVzID0gc3J0cF9wcm90ZWN0KHNlbmRlcl9zZXNz
aW9uLCB0bXBfcGt0LCAmdG1wX2xlbik7CisgICAgICAgIGZyZWUodG1wX3BrdCk7CisgICAgICAg
IGlmIChzdGF0dXMpIHsKKyAgICAgICAgICAgIHJldHVybiBzdGF0dXM7CisgICAgICAgIH0KKyAg
ICAgICAgc2VxKys7CisgICAgICAgIHRzKys7CiAgICAgfQogCisgICAgLyogQ3JlYXRlIHRoZSBm
aXJzdCBwYWNrZXQgdG8gZGVjcnlwdCBhbmQgdGVzdCBmb3IgUk9DIGNoYW5nZSAqLworICAgIHBr
dF8xID0gc3J0cF9jcmVhdGVfdGVzdF9wYWNrZXRfZXh0ZW5kZWQobXNnX2xlbl9vY3RldHMsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZW5kZXJfcG9saWN5
LnNzcmMudmFsdWUsIHNlcSwgdHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAmcHJvdGVjdGVkX21zZ19sZW5fb2N0ZXRzXzEpOworICAgIHN0YXR1cyA9IHNy
dHBfcHJvdGVjdChzZW5kZXJfc2Vzc2lvbiwgcGt0XzEsICZwcm90ZWN0ZWRfbXNnX2xlbl9vY3Rl
dHNfMSk7CisgICAgaWYgKHN0YXR1cykgeworICAgICAgICByZXR1cm4gc3RhdHVzOworICAgIH0K
KworICAgIC8qIENyZWF0ZSB0aGUgc2Vjb25kIHBhY2tldCB0byBkZWNyeXB0IGFuZCB0ZXN0IGZv
ciBST0MgY2hhbmdlICovCiAgICAgc2VxKys7CiAgICAgdHMrKzsKLSAgfQorICAgIHBrdF8yID0g
c3J0cF9jcmVhdGVfdGVzdF9wYWNrZXRfZXh0ZW5kZWQobXNnX2xlbl9vY3RldHMsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZW5kZXJfcG9saWN5LnNzcmMu
dmFsdWUsIHNlcSwgdHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAmcHJvdGVjdGVkX21zZ19sZW5fb2N0ZXRzXzIpOworICAgIHN0YXR1cyA9IHNydHBfcHJv
dGVjdChzZW5kZXJfc2Vzc2lvbiwgcGt0XzIsICZwcm90ZWN0ZWRfbXNnX2xlbl9vY3RldHNfMik7
CisgICAgaWYgKHN0YXR1cykgeworICAgICAgICByZXR1cm4gc3RhdHVzOworICAgIH0KIAotICAv
KiBDbGVhbnVwICovCi0gIHN0YXR1cyA9IHNydHBfZGVhbGxvYyhzZXNzaW9uKTsKLSAgaWYgKHN0
YXR1cykgewotICAgIHJldHVybiBzdGF0dXM7Ci0gIH0KKyAgICAvKiBDcmVhdGUgdGhlIHJlY2Vp
dmVyICovCisgICAgbWVtc2V0KCZyZWNlaXZlcl9wb2xpY3ksIDAsIHNpemVvZihyZWNlaXZlcl9w
b2xpY3kpKTsKKyAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X3J0cF9kZWZhdWx0KCZyZWNlaXZl
cl9wb2xpY3kucnRwKTsKKyAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X3J0Y3BfZGVmYXVsdCgm
cmVjZWl2ZXJfcG9saWN5LnJ0Y3ApOworICAgIHJlY2VpdmVyX3BvbGljeS5zc3JjLnR5cGUgPSBz
c3JjX3NwZWNpZmljOworICAgIHJlY2VpdmVyX3BvbGljeS5zc3JjLnZhbHVlID0gc2VuZGVyX3Bv
bGljeS5zc3JjLnZhbHVlOworICAgIHJlY2VpdmVyX3BvbGljeS5rZXkgPSB0ZXN0X2tleTsKKyAg
ICByZWNlaXZlcl9wb2xpY3kud2luZG93X3NpemUgPSAxMjg7CisKKyAgICBzdGF0dXMgPSBzcnRw
X2NyZWF0ZSgmcmVjZWl2ZXJfc2Vzc2lvbiwgJnJlY2VpdmVyX3BvbGljeSk7CisgICAgaWYgKHN0
YXR1cykgeworICAgICAgICByZXR1cm4gc3RhdHVzOworICAgIH0KKworICAgIC8qIE1ha2UgYSBj
b3B5IG9mIHRoZSBmaXJzdCBzZW50IHByb3RlY3RlZCBwYWNrZXQgKi8KKyAgICByZWN2X3BrdF8x
ID0gbWFsbG9jKHByb3RlY3RlZF9tc2dfbGVuX29jdGV0c18xKTsKKyAgICBpZiAocmVjdl9wa3Rf
MSA9PSBOVUxMKSB7CisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfZmFpbDsKKyAgICB9
CisgICAgbWVtY3B5KHJlY3ZfcGt0XzEsIHBrdF8xLCBwcm90ZWN0ZWRfbXNnX2xlbl9vY3RldHNf
MSk7CisKKyAgICAvKiBNYWtlIGEgY29weSBvZiB0aGUgc2Vjb25kIHNlbnQgcHJvdGVjdGVkIHBh
Y2tldCAqLworICAgIHJlY3ZfcGt0XzIgPSBtYWxsb2MocHJvdGVjdGVkX21zZ19sZW5fb2N0ZXRz
XzIpOworICAgIGlmIChyZWN2X3BrdF8yID09IE5VTEwpIHsKKyAgICAgICAgcmV0dXJuIHNydHBf
ZXJyX3N0YXR1c19mYWlsOworICAgIH0KKyAgICBtZW1jcHkocmVjdl9wa3RfMiwgcGt0XzIsIHBy
b3RlY3RlZF9tc2dfbGVuX29jdGV0c18yKTsKKworICAgIC8qIFNldCB0aGUgUk9DIHRvIHRoZSB3
YW50ZWQgdmFsdWUgKi8KKyAgICBzdGF0dXMgPSBzcnRwX3NldF9zdHJlYW1fcm9jKHJlY2VpdmVy
X3Nlc3Npb24sIHJlY2VpdmVyX3BvbGljeS5zc3JjLnZhbHVlLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgcm9jX3RvX3NldCk7CisgICAgaWYgKHN0YXR1cykgeworICAgICAgICBy
ZXR1cm4gc3RhdHVzOworICAgIH0KIAotICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOworICAg
IC8qIFVucHJvdGVjdCB0aGUgZmlyc3QgcGFja2V0ICovCisgICAgc3RhdHVzID0gc3J0cF91bnBy
b3RlY3QocmVjZWl2ZXJfc2Vzc2lvbiwgcmVjdl9wa3RfMSwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAmcHJvdGVjdGVkX21zZ19sZW5fb2N0ZXRzXzEpOworICAgIGlmIChzdGF0dXMpIHsK
KyAgICAgICAgcmV0dXJuIHN0YXR1czsKKyAgICB9CisKKyAgICAvKiBVbnByb3RlY3QgdGhlIHNl
Y29uZCBwYWNrZXQgKi8KKyAgICBzdGF0dXMgPSBzcnRwX3VucHJvdGVjdChyZWNlaXZlcl9zZXNz
aW9uLCByZWN2X3BrdF8yLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICZwcm90ZWN0ZWRf
bXNnX2xlbl9vY3RldHNfMik7CisgICAgaWYgKHN0YXR1cykgeworICAgICAgICByZXR1cm4gc3Rh
dHVzOworICAgIH0KKworICAgIC8qIENsZWFudXAgKi8KKyAgICBzdGF0dXMgPSBzcnRwX2RlYWxs
b2Moc2VuZGVyX3Nlc3Npb24pOworICAgIGlmIChzdGF0dXMpIHsKKyAgICAgICAgcmV0dXJuIHN0
YXR1czsKKyAgICB9CisKKyAgICBzdGF0dXMgPSBzcnRwX2RlYWxsb2MocmVjZWl2ZXJfc2Vzc2lv
bik7CisgICAgaWYgKHN0YXR1cykgeworICAgICAgICByZXR1cm4gc3RhdHVzOworICAgIH0KKwor
ICAgIGZyZWUocGt0XzEpOworICAgIGZyZWUocmVjdl9wa3RfMSk7CisgICAgZnJlZShwa3RfMik7
CisgICAgZnJlZShyZWN2X3BrdF8yKTsKKworICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7
CiB9CiAKLXN0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdAotdGVzdF9zZXRfcmVjZWl2ZXJfcm9jKHVp
bnQzMl90IHBhY2tldHMsIHVpbnQzMl90IHJvY190b19zZXQpCitzdGF0aWMgc3J0cF9lcnJfc3Rh
dHVzX3QgdGVzdF9zZXRfc2VuZGVyX3JvYyh1aW50MTZfdCBzZXEsIHVpbnQzMl90IHJvY190b19z
ZXQpCiB7Ci0gIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKKyAgICBzcnRwX2Vycl9zdGF0dXNf
dCBzdGF0dXM7CisKKyAgICBzcnRwX3BvbGljeV90IHNlbmRlcl9wb2xpY3k7CisgICAgc3J0cF90
IHNlbmRlcl9zZXNzaW9uOworCisgICAgc3J0cF9wb2xpY3lfdCByZWNlaXZlcl9wb2xpY3k7Cisg
ICAgc3J0cF90IHJlY2VpdmVyX3Nlc3Npb247CiAKLSAgc3J0cF9wb2xpY3lfdCBzZW5kZXJfcG9s
aWN5OwotICBzcnRwX3Qgc2VuZGVyX3Nlc3Npb247CisgICAgc3J0cF9oZHJfdCAqcGt0OworICAg
IHVuc2lnbmVkIGNoYXIgKnJlY3ZfcGt0OworCisgICAgdWludDMyX3QgdHM7CisKKyAgICBpbnQg
bXNnX2xlbl9vY3RldHMgPSAzMjsKKyAgICBpbnQgcHJvdGVjdGVkX21zZ19sZW5fb2N0ZXRzOwor
CisgICAgLyogQ3JlYXRlIHNlbmRlciAqLworICAgIG1lbXNldCgmc2VuZGVyX3BvbGljeSwgMCwg
c2l6ZW9mKHNlbmRlcl9wb2xpY3kpKTsKKyAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X3J0cF9k
ZWZhdWx0KCZzZW5kZXJfcG9saWN5LnJ0cCk7CisgICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9y
dGNwX2RlZmF1bHQoJnNlbmRlcl9wb2xpY3kucnRjcCk7CisgICAgc2VuZGVyX3BvbGljeS5zc3Jj
LnR5cGUgPSBzc3JjX3NwZWNpZmljOworICAgIHNlbmRlcl9wb2xpY3kuc3NyYy52YWx1ZSA9IDB4
Y2FmZWJhYmU7CisgICAgc2VuZGVyX3BvbGljeS5rZXkgPSB0ZXN0X2tleTsKKyAgICBzZW5kZXJf
cG9saWN5LndpbmRvd19zaXplID0gMTI4OworCisgICAgc3RhdHVzID0gc3J0cF9jcmVhdGUoJnNl
bmRlcl9zZXNzaW9uLCAmc2VuZGVyX3BvbGljeSk7CisgICAgaWYgKHN0YXR1cykgeworICAgICAg
ICByZXR1cm4gc3RhdHVzOworICAgIH0KIAotICBzcnRwX3BvbGljeV90IHJlY2VpdmVyX3BvbGlj
eTsKLSAgc3J0cF90IHJlY2VpdmVyX3Nlc3Npb247CisgICAgLyogU2V0IHRoZSBST0MgYmVmb3Jl
IGVuY3J5cHRpbmcgdGhlIGZpcnN0IHBhY2tldCAqLworICAgIHN0YXR1cyA9IHNydHBfc2V0X3N0
cmVhbV9yb2Moc2VuZGVyX3Nlc3Npb24sIHNlbmRlcl9wb2xpY3kuc3NyYy52YWx1ZSwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvY190b19zZXQpOworICAgIGlmIChzdGF0dXMg
IT0gc3J0cF9lcnJfc3RhdHVzX29rKSB7CisgICAgICAgIHJldHVybiBzdGF0dXM7CisgICAgfQog
Ci0gIHNydHBfaGRyX3QgKnBrdF8xOwotICB1bnNpZ25lZCBjaGFyICpyZWN2X3BrdF8xOworICAg
IC8qIENyZWF0ZSB0aGUgcGFja2V0IHRvIGRlY3J5cHQgKi8KKyAgICB0cyA9IDA7CisgICAgcGt0
ID0gc3J0cF9jcmVhdGVfdGVzdF9wYWNrZXRfZXh0ZW5kZWQobXNnX2xlbl9vY3RldHMsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VuZGVyX3BvbGljeS5zc3Jj
LnZhbHVlLCBzZXEsIHRzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICZwcm90ZWN0ZWRfbXNnX2xlbl9vY3RldHMpOworICAgIHN0YXR1cyA9IHNydHBfcHJvdGVj
dChzZW5kZXJfc2Vzc2lvbiwgcGt0LCAmcHJvdGVjdGVkX21zZ19sZW5fb2N0ZXRzKTsKKyAgICBp
ZiAoc3RhdHVzKSB7CisgICAgICAgIHJldHVybiBzdGF0dXM7CisgICAgfQogCi0gIHNydHBfaGRy
X3QgKnBrdF8yOwotICB1bnNpZ25lZCBjaGFyICpyZWN2X3BrdF8yOworICAgIC8qIENyZWF0ZSB0
aGUgcmVjZWl2ZXIgKi8KKyAgICBtZW1zZXQoJnJlY2VpdmVyX3BvbGljeSwgMCwgc2l6ZW9mKHJl
Y2VpdmVyX3BvbGljeSkpOworICAgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfcnRwX2RlZmF1bHQo
JnJlY2VpdmVyX3BvbGljeS5ydHApOworICAgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfcnRjcF9k
ZWZhdWx0KCZyZWNlaXZlcl9wb2xpY3kucnRjcCk7CisgICAgcmVjZWl2ZXJfcG9saWN5LnNzcmMu
dHlwZSA9IHNzcmNfc3BlY2lmaWM7CisgICAgcmVjZWl2ZXJfcG9saWN5LnNzcmMudmFsdWUgPSBz
ZW5kZXJfcG9saWN5LnNzcmMudmFsdWU7CisgICAgcmVjZWl2ZXJfcG9saWN5LmtleSA9IHRlc3Rf
a2V5OworICAgIHJlY2VpdmVyX3BvbGljeS53aW5kb3dfc2l6ZSA9IDEyODsKIAotICB1aW50MzJf
dCBpOwotICB1aW50MzJfdCB0czsKLSAgdWludDE2X3Qgc2VxOworICAgIHN0YXR1cyA9IHNydHBf
Y3JlYXRlKCZyZWNlaXZlcl9zZXNzaW9uLCAmcmVjZWl2ZXJfcG9saWN5KTsKKyAgICBpZiAoc3Rh
dHVzKSB7CisgICAgICAgIHJldHVybiBzdGF0dXM7CisgICAgfQogCi0gIGludCBtc2dfbGVuX29j
dGV0cyA9IDMyOwotICBpbnQgcHJvdGVjdGVkX21zZ19sZW5fb2N0ZXRzXzE7Ci0gIGludCBwcm90
ZWN0ZWRfbXNnX2xlbl9vY3RldHNfMjsKKyAgICAvKiBNYWtlIGEgY29weSBvZiB0aGUgc2VudCBw
cm90ZWN0ZWQgcGFja2V0ICovCisgICAgcmVjdl9wa3QgPSBtYWxsb2MocHJvdGVjdGVkX21zZ19s
ZW5fb2N0ZXRzKTsKKyAgICBpZiAocmVjdl9wa3QgPT0gTlVMTCkgeworICAgICAgICByZXR1cm4g
c3J0cF9lcnJfc3RhdHVzX2ZhaWw7CisgICAgfQorICAgIG1lbWNweShyZWN2X3BrdCwgcGt0LCBw
cm90ZWN0ZWRfbXNnX2xlbl9vY3RldHMpOwogCi0gIC8qIENyZWF0ZSBzZW5kZXIgKi8KLSAgbWVt
c2V0KCZzZW5kZXJfcG9saWN5LCAwLCBzaXplb2Yoc2VuZGVyX3BvbGljeSkpOwotICBzcnRwX2Ny
eXB0b19wb2xpY3lfc2V0X3J0cF9kZWZhdWx0KCZzZW5kZXJfcG9saWN5LnJ0cCk7Ci0gIHNydHBf
Y3J5cHRvX3BvbGljeV9zZXRfcnRjcF9kZWZhdWx0KCZzZW5kZXJfcG9saWN5LnJ0Y3ApOwotICBz
ZW5kZXJfcG9saWN5LnNzcmMudHlwZSAgPSBzc3JjX3NwZWNpZmljOwotICBzZW5kZXJfcG9saWN5
LnNzcmMudmFsdWUgPSAweGNhZmViYWJlOwotICBzZW5kZXJfcG9saWN5LmtleSA9IHRlc3Rfa2V5
OwotICBzZW5kZXJfcG9saWN5LndpbmRvd19zaXplID0gMTI4OworICAgIC8qIFNldCB0aGUgUk9D
IHRvIHRoZSB3YW50ZWQgdmFsdWUgKi8KKyAgICBzdGF0dXMgPSBzcnRwX3NldF9zdHJlYW1fcm9j
KHJlY2VpdmVyX3Nlc3Npb24sIHJlY2VpdmVyX3BvbGljeS5zc3JjLnZhbHVlLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgcm9jX3RvX3NldCk7CisgICAgaWYgKHN0YXR1cykgewor
ICAgICAgICByZXR1cm4gc3RhdHVzOworICAgIH0KIAotICBzdGF0dXMgPSBzcnRwX2NyZWF0ZSgm
c2VuZGVyX3Nlc3Npb24sICZzZW5kZXJfcG9saWN5KTsKLSAgaWYgKHN0YXR1cykgewotICAgIHJl
dHVybiBzdGF0dXM7Ci0gIH0KKyAgICBzdGF0dXMgPQorICAgICAgICBzcnRwX3VucHJvdGVjdChy
ZWNlaXZlcl9zZXNzaW9uLCByZWN2X3BrdCwgJnByb3RlY3RlZF9tc2dfbGVuX29jdGV0cyk7Cisg
ICAgaWYgKHN0YXR1cykgeworICAgICAgICByZXR1cm4gc3RhdHVzOworICAgIH0KIAotICAvKiBD
cmVhdGUgYW5kIHByb3RlY3QgcGFja2V0cyAqLwotICBzZXEgPSAwOwotICB0cyA9IDA7Ci0gIGZv
ciAoaSA9IDA7IGkgPCBwYWNrZXRzOyBpKyspIHsKLSAgICBzcnRwX2hkcl90ICp0bXBfcGt0Owot
ICAgIGludCB0bXBfbGVuOworICAgIC8qIENsZWFudXAgKi8KKyAgICBzdGF0dXMgPSBzcnRwX2Rl
YWxsb2Moc2VuZGVyX3Nlc3Npb24pOworICAgIGlmIChzdGF0dXMpIHsKKyAgICAgICAgcmV0dXJu
IHN0YXR1czsKKyAgICB9CiAKLSAgICB0bXBfcGt0ID0gc3J0cF9jcmVhdGVfdGVzdF9wYWNrZXRf
ZXh0ZW5kZWQobXNnX2xlbl9vY3RldHMsIHNlbmRlcl9wb2xpY3kuc3NyYy52YWx1ZSwgc2VxLCB0
cyk7Ci0gICAgdG1wX2xlbiA9IG1zZ19sZW5fb2N0ZXRzOwotICAgIHN0YXR1cyA9IHNydHBfcHJv
dGVjdChzZW5kZXJfc2Vzc2lvbiwgdG1wX3BrdCwgJnRtcF9sZW4pOwotICAgIGZyZWUodG1wX3Br
dCk7CisgICAgc3RhdHVzID0gc3J0cF9kZWFsbG9jKHJlY2VpdmVyX3Nlc3Npb24pOwogICAgIGlm
IChzdGF0dXMpIHsKLSAgICAgIHJldHVybiBzdGF0dXM7CisgICAgICAgIHJldHVybiBzdGF0dXM7
CiAgICAgfQotICAgIHNlcSsrOwotICAgIHRzKys7Ci0gIH0KLQotICAvKiBDcmVhdGUgdGhlIGZp
cnN0IHBhY2tldCB0byBkZWNyeXB0IGFuZCB0ZXN0IGZvciBST0MgY2hhbmdlICovCi0gIHBrdF8x
ID0gc3J0cF9jcmVhdGVfdGVzdF9wYWNrZXRfZXh0ZW5kZWQobXNnX2xlbl9vY3RldHMsIHNlbmRl
cl9wb2xpY3kuc3NyYy52YWx1ZSwgc2VxLCB0cyk7Ci0gIHByb3RlY3RlZF9tc2dfbGVuX29jdGV0
c18xID0gbXNnX2xlbl9vY3RldHM7Ci0gIHN0YXR1cyA9IHNydHBfcHJvdGVjdChzZW5kZXJfc2Vz
c2lvbiwgcGt0XzEsICZwcm90ZWN0ZWRfbXNnX2xlbl9vY3RldHNfMSk7Ci0gIGlmIChzdGF0dXMp
IHsKLSAgICByZXR1cm4gc3RhdHVzOwotICB9Ci0KLSAgLyogQ3JlYXRlIHRoZSBzZWNvbmQgcGFj
a2V0IHRvIGRlY3J5cHQgYW5kIHRlc3QgZm9yIFJPQyBjaGFuZ2UgKi8KLSAgc2VxKys7Ci0gIHRz
Kys7Ci0gIHBrdF8yID0gc3J0cF9jcmVhdGVfdGVzdF9wYWNrZXRfZXh0ZW5kZWQobXNnX2xlbl9v
Y3RldHMsIHNlbmRlcl9wb2xpY3kuc3NyYy52YWx1ZSwgc2VxLCB0cyk7Ci0gIHByb3RlY3RlZF9t
c2dfbGVuX29jdGV0c18yID0gbXNnX2xlbl9vY3RldHM7Ci0gIHN0YXR1cyA9IHNydHBfcHJvdGVj
dChzZW5kZXJfc2Vzc2lvbiwgcGt0XzIsICZwcm90ZWN0ZWRfbXNnX2xlbl9vY3RldHNfMik7Ci0g
IGlmIChzdGF0dXMpIHsKLSAgICByZXR1cm4gc3RhdHVzOwotICB9Ci0KLSAgLyogQ3JlYXRlIHRo
ZSByZWNlaXZlciAqLwotICBtZW1zZXQoJnJlY2VpdmVyX3BvbGljeSwgMCwgc2l6ZW9mKHJlY2Vp
dmVyX3BvbGljeSkpOwotICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X3J0cF9kZWZhdWx0KCZyZWNl
aXZlcl9wb2xpY3kucnRwKTsKLSAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9ydGNwX2RlZmF1bHQo
JnJlY2VpdmVyX3BvbGljeS5ydGNwKTsKLSAgcmVjZWl2ZXJfcG9saWN5LnNzcmMudHlwZSAgPSBz
c3JjX3NwZWNpZmljOwotICByZWNlaXZlcl9wb2xpY3kuc3NyYy52YWx1ZSA9IHNlbmRlcl9wb2xp
Y3kuc3NyYy52YWx1ZTsKLSAgcmVjZWl2ZXJfcG9saWN5LmtleSA9IHRlc3Rfa2V5OwotICByZWNl
aXZlcl9wb2xpY3kud2luZG93X3NpemUgPSAxMjg7Ci0KLSAgc3RhdHVzID0gc3J0cF9jcmVhdGUo
JnJlY2VpdmVyX3Nlc3Npb24sICZyZWNlaXZlcl9wb2xpY3kpOwotICBpZiAoc3RhdHVzKSB7Ci0g
ICAgcmV0dXJuIHN0YXR1czsKLSAgfQotCi0gIC8qIE1ha2UgYSBjb3B5IG9mIHRoZSBmaXJzdCBz
ZW50IHByb3RlY3RlZCBwYWNrZXQgKi8KLSAgcmVjdl9wa3RfMSA9IG1hbGxvYyhwcm90ZWN0ZWRf
bXNnX2xlbl9vY3RldHNfMSk7Ci0gIGlmIChyZWN2X3BrdF8xID09IE5VTEwpIHsKLSAgICByZXR1
cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7Ci0gIH0KLSAgbWVtY3B5KHJlY3ZfcGt0XzEsIHBrdF8x
LCBwcm90ZWN0ZWRfbXNnX2xlbl9vY3RldHNfMSk7Ci0KLSAgLyogTWFrZSBhIGNvcHkgb2YgdGhl
IHNlY29uZCBzZW50IHByb3RlY3RlZCBwYWNrZXQgKi8KLSAgcmVjdl9wa3RfMiA9IG1hbGxvYyhw
cm90ZWN0ZWRfbXNnX2xlbl9vY3RldHNfMik7Ci0gIGlmIChyZWN2X3BrdF8yID09IE5VTEwpIHsK
LSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7Ci0gIH0KLSAgbWVtY3B5KHJlY3ZfcGt0
XzIsIHBrdF8yLCBwcm90ZWN0ZWRfbXNnX2xlbl9vY3RldHNfMik7Ci0KLSAgLyogU2V0IHRoZSBS
T0MgdG8gdGhlIHdhbnRlZCB2YWx1ZSAqLwotICBzdGF0dXMgPSBzcnRwX3NldF9zdHJlYW1fcm9j
KHJlY2VpdmVyX3Nlc3Npb24sIHJlY2VpdmVyX3BvbGljeS5zc3JjLnZhbHVlLCByb2NfdG9fc2V0
KTsKLSAgaWYgKHN0YXR1cykgewotICAgIHJldHVybiBzdGF0dXM7Ci0gIH0KLQotICAvKiBVbnBy
b3RlY3QgdGhlIGZpcnN0IHBhY2tldCAqLwotICBzdGF0dXMgPSBzcnRwX3VucHJvdGVjdChyZWNl
aXZlcl9zZXNzaW9uLCByZWN2X3BrdF8xLCAmcHJvdGVjdGVkX21zZ19sZW5fb2N0ZXRzXzEpOwot
ICBpZiAoc3RhdHVzKSB7Ci0gICAgcmV0dXJuIHN0YXR1czsKLSAgfQotCi0gIC8qIFVucHJvdGVj
dCB0aGUgc2Vjb25kIHBhY2tldCAqLwotICBzdGF0dXMgPSBzcnRwX3VucHJvdGVjdChyZWNlaXZl
cl9zZXNzaW9uLCByZWN2X3BrdF8yLCAmcHJvdGVjdGVkX21zZ19sZW5fb2N0ZXRzXzIpOwotICBp
ZiAoc3RhdHVzKSB7Ci0gICAgcmV0dXJuIHN0YXR1czsKLSAgfQotCi0gIC8qIENsZWFudXAgKi8K
LSAgc3RhdHVzID0gc3J0cF9kZWFsbG9jKHNlbmRlcl9zZXNzaW9uKTsKLSAgaWYgKHN0YXR1cykg
ewotICAgIHJldHVybiBzdGF0dXM7Ci0gIH0KLQotICBzdGF0dXMgPSBzcnRwX2RlYWxsb2MocmVj
ZWl2ZXJfc2Vzc2lvbik7Ci0gIGlmIChzdGF0dXMpIHsKLSAgICByZXR1cm4gc3RhdHVzOwotICB9
Ci0KLSAgZnJlZShwa3RfMSk7Ci0gIGZyZWUocmVjdl9wa3RfMSk7Ci0gIGZyZWUocGt0XzIpOwot
ICBmcmVlKHJlY3ZfcGt0XzIpOwotCi0gIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CisKKyAg
ICBmcmVlKHBrdCk7CisgICAgZnJlZShyZWN2X3BrdCk7CisKKyAgICByZXR1cm4gc3J0cF9lcnJf
c3RhdHVzX29rOwogfQogCi1zdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3QKLXRlc3Rfc2V0X3NlbmRl
cl9yb2ModWludDE2X3Qgc2VxLCB1aW50MzJfdCByb2NfdG9fc2V0KQorc3J0cF9lcnJfc3RhdHVz
X3Qgc3J0cF90ZXN0X3NldF9yZWNlaXZlcl9yb2MoKQogewotICBzcnRwX2Vycl9zdGF0dXNfdCBz
dGF0dXM7Ci0KLSAgc3J0cF9wb2xpY3lfdCBzZW5kZXJfcG9saWN5OwotICBzcnRwX3Qgc2VuZGVy
X3Nlc3Npb247Ci0KLSAgc3J0cF9wb2xpY3lfdCByZWNlaXZlcl9wb2xpY3k7Ci0gIHNydHBfdCBy
ZWNlaXZlcl9zZXNzaW9uOwotCi0gIHNydHBfaGRyX3QgKnBrdDsKLSAgdW5zaWduZWQgY2hhciAq
cmVjdl9wa3Q7Ci0KLSAgdWludDMyX3QgdHM7Ci0KLSAgaW50IG1zZ19sZW5fb2N0ZXRzID0gMzI7
Ci0gIGludCBwcm90ZWN0ZWRfbXNnX2xlbl9vY3RldHM7Ci0KLSAgLyogQ3JlYXRlIHNlbmRlciAq
LwotICBtZW1zZXQoJnNlbmRlcl9wb2xpY3ksIDAsIHNpemVvZihzZW5kZXJfcG9saWN5KSk7Ci0g
IHNydHBfY3J5cHRvX3BvbGljeV9zZXRfcnRwX2RlZmF1bHQoJnNlbmRlcl9wb2xpY3kucnRwKTsK
LSAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9ydGNwX2RlZmF1bHQoJnNlbmRlcl9wb2xpY3kucnRj
cCk7Ci0gIHNlbmRlcl9wb2xpY3kuc3NyYy50eXBlICA9IHNzcmNfc3BlY2lmaWM7Ci0gIHNlbmRl
cl9wb2xpY3kuc3NyYy52YWx1ZSA9IDB4Y2FmZWJhYmU7Ci0gIHNlbmRlcl9wb2xpY3kua2V5ID0g
dGVzdF9rZXk7Ci0gIHNlbmRlcl9wb2xpY3kud2luZG93X3NpemUgPSAxMjg7Ci0KLSAgc3RhdHVz
ID0gc3J0cF9jcmVhdGUoJnNlbmRlcl9zZXNzaW9uLCAmc2VuZGVyX3BvbGljeSk7Ci0gIGlmIChz
dGF0dXMpIHsKLSAgICByZXR1cm4gc3RhdHVzOwotICB9Ci0KLSAgLyogU2V0IHRoZSBST0MgYmVm
b3JlIGVuY3J5cHRpbmcgdGhlIGZpcnN0IHBhY2tldCAqLwotICBzdGF0dXMgPSBzcnRwX3NldF9z
dHJlYW1fcm9jKHNlbmRlcl9zZXNzaW9uLCBzZW5kZXJfcG9saWN5LnNzcmMudmFsdWUsIHJvY190
b19zZXQpOwotICBpZiAoc3RhdHVzICE9IHNydHBfZXJyX3N0YXR1c19vaykgewotICAgIHJldHVy
biBzdGF0dXM7Ci0gIH0KLQotICAvKiBDcmVhdGUgdGhlIHBhY2tldCB0byBkZWNyeXB0ICovCi0g
IHRzID0gMDsKLSAgcGt0ID0gc3J0cF9jcmVhdGVfdGVzdF9wYWNrZXRfZXh0ZW5kZWQobXNnX2xl
bl9vY3RldHMsIHNlbmRlcl9wb2xpY3kuc3NyYy52YWx1ZSwgc2VxLCB0cyk7Ci0gIHByb3RlY3Rl
ZF9tc2dfbGVuX29jdGV0cyA9IG1zZ19sZW5fb2N0ZXRzOwotICBzdGF0dXMgPSBzcnRwX3Byb3Rl
Y3Qoc2VuZGVyX3Nlc3Npb24sIHBrdCwgJnByb3RlY3RlZF9tc2dfbGVuX29jdGV0cyk7Ci0gIGlm
IChzdGF0dXMpIHsKLSAgICByZXR1cm4gc3RhdHVzOwotICB9Ci0KLSAgLyogQ3JlYXRlIHRoZSBy
ZWNlaXZlciAqLwotICBtZW1zZXQoJnJlY2VpdmVyX3BvbGljeSwgMCwgc2l6ZW9mKHJlY2VpdmVy
X3BvbGljeSkpOwotICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X3J0cF9kZWZhdWx0KCZyZWNlaXZl
cl9wb2xpY3kucnRwKTsKLSAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9ydGNwX2RlZmF1bHQoJnJl
Y2VpdmVyX3BvbGljeS5ydGNwKTsKLSAgcmVjZWl2ZXJfcG9saWN5LnNzcmMudHlwZSAgPSBzc3Jj
X3NwZWNpZmljOwotICByZWNlaXZlcl9wb2xpY3kuc3NyYy52YWx1ZSA9IHNlbmRlcl9wb2xpY3ku
c3NyYy52YWx1ZTsKLSAgcmVjZWl2ZXJfcG9saWN5LmtleSA9IHRlc3Rfa2V5OwotICByZWNlaXZl
cl9wb2xpY3kud2luZG93X3NpemUgPSAxMjg7Ci0KLSAgc3RhdHVzID0gc3J0cF9jcmVhdGUoJnJl
Y2VpdmVyX3Nlc3Npb24sICZyZWNlaXZlcl9wb2xpY3kpOwotICBpZiAoc3RhdHVzKSB7Ci0gICAg
cmV0dXJuIHN0YXR1czsKLSAgfQotCi0gIC8qIE1ha2UgYSBjb3B5IG9mIHRoZSBzZW50IHByb3Rl
Y3RlZCBwYWNrZXQgKi8KLSAgcmVjdl9wa3QgPSBtYWxsb2MocHJvdGVjdGVkX21zZ19sZW5fb2N0
ZXRzKTsKLSAgaWYgKHJlY3ZfcGt0ID09IE5VTEwpIHsKLSAgICByZXR1cm4gc3J0cF9lcnJfc3Rh
dHVzX2ZhaWw7Ci0gIH0KLSAgbWVtY3B5KHJlY3ZfcGt0LCBwa3QsIHByb3RlY3RlZF9tc2dfbGVu
X29jdGV0cyk7Ci0KLSAgLyogU2V0IHRoZSBST0MgdG8gdGhlIHdhbnRlZCB2YWx1ZSAqLwotICBz
dGF0dXMgPSBzcnRwX3NldF9zdHJlYW1fcm9jKHJlY2VpdmVyX3Nlc3Npb24sIHJlY2VpdmVyX3Bv
bGljeS5zc3JjLnZhbHVlLCByb2NfdG9fc2V0KTsKLSAgaWYgKHN0YXR1cykgewotICAgIHJldHVy
biBzdGF0dXM7Ci0gIH0KLQotICBzdGF0dXMgPSBzcnRwX3VucHJvdGVjdChyZWNlaXZlcl9zZXNz
aW9uLCByZWN2X3BrdCwgJnByb3RlY3RlZF9tc2dfbGVuX29jdGV0cyk7Ci0gIGlmIChzdGF0dXMp
IHsKLSAgICByZXR1cm4gc3RhdHVzOwotICB9Ci0KLSAgLyogQ2xlYW51cCAqLwotICBzdGF0dXMg
PSBzcnRwX2RlYWxsb2Moc2VuZGVyX3Nlc3Npb24pOwotICBpZiAoc3RhdHVzKSB7Ci0gICAgcmV0
dXJuIHN0YXR1czsKLSAgfQotCi0gIHN0YXR1cyA9IHNydHBfZGVhbGxvYyhyZWNlaXZlcl9zZXNz
aW9uKTsKLSAgaWYgKHN0YXR1cykgewotICAgIHJldHVybiBzdGF0dXM7Ci0gIH0KLQotICBmcmVl
KHBrdCk7Ci0gIGZyZWUocmVjdl9wa3QpOwotCi0gIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7
Ci19CisgICAgaW50IHBhY2tldHM7CisgICAgdWludDMyX3Qgcm9jOworICAgIHNydHBfZXJyX3N0
YXR1c190IHN0YXR1czsKKworICAgIC8qIEZpcnN0IHRlc3QgZG9lcyBub3Qgcm9sbG92ZXIgKi8K
KyAgICBwYWNrZXRzID0gMTsKKyAgICByb2MgPSAwOworCisgICAgc3RhdHVzID0gdGVzdF9zZXRf
cmVjZWl2ZXJfcm9jKHBhY2tldHMgLSAxLCByb2MpOworICAgIGlmIChzdGF0dXMpIHsKKyAgICAg
ICAgcmV0dXJuIHN0YXR1czsKKyAgICB9CisKKyAgICBzdGF0dXMgPSB0ZXN0X3NldF9yZWNlaXZl
cl9yb2MocGFja2V0cywgcm9jKTsKKyAgICBpZiAoc3RhdHVzKSB7CisgICAgICAgIHJldHVybiBz
dGF0dXM7CisgICAgfQorCisgICAgc3RhdHVzID0gdGVzdF9zZXRfcmVjZWl2ZXJfcm9jKHBhY2tl
dHMgKyAxLCByb2MpOworICAgIGlmIChzdGF0dXMpIHsKKyAgICAgICAgcmV0dXJuIHN0YXR1czsK
KyAgICB9CisKKyAgICBzdGF0dXMgPSB0ZXN0X3NldF9yZWNlaXZlcl9yb2MocGFja2V0cyArIDYw
MDAwLCByb2MpOworICAgIGlmIChzdGF0dXMpIHsKKyAgICAgICAgcmV0dXJuIHN0YXR1czsKKyAg
ICB9CisKKyAgICAvKiBTZWNvbmQgdGVzdCBzaG91bGQgcm9sbG92ZXIgKi8KKyAgICBwYWNrZXRz
ID0gNjU1MzU7CisgICAgcm9jID0gMDsKKworICAgIHN0YXR1cyA9IHRlc3Rfc2V0X3JlY2VpdmVy
X3JvYyhwYWNrZXRzIC0gMSwgcm9jKTsKKyAgICBpZiAoc3RhdHVzKSB7CisgICAgICAgIHJldHVy
biBzdGF0dXM7CisgICAgfQorCisgICAgc3RhdHVzID0gdGVzdF9zZXRfcmVjZWl2ZXJfcm9jKHBh
Y2tldHMsIHJvYyk7CisgICAgaWYgKHN0YXR1cykgeworICAgICAgICByZXR1cm4gc3RhdHVzOwor
ICAgIH0KKworICAgIC8qIE5vdyB0aGUgcm9sbG92ZXIgY291bnRlciBzaG91bGQgYmUgMSAqLwor
ICAgIHJvYyA9IDE7CisgICAgc3RhdHVzID0gdGVzdF9zZXRfcmVjZWl2ZXJfcm9jKHBhY2tldHMg
KyAxLCByb2MpOworICAgIGlmIChzdGF0dXMpIHsKKyAgICAgICAgcmV0dXJuIHN0YXR1czsKKyAg
ICB9CisKKyAgICBzdGF0dXMgPSB0ZXN0X3NldF9yZWNlaXZlcl9yb2MocGFja2V0cyArIDYwMDAw
LCByb2MpOworICAgIGlmIChzdGF0dXMpIHsKKyAgICAgICAgcmV0dXJuIHN0YXR1czsKKyAgICB9
CiAKLXNydHBfZXJyX3N0YXR1c190Ci1zcnRwX3Rlc3Rfc2V0X3JlY2VpdmVyX3JvYygpIHsKLSAg
aW50IHBhY2tldHM7Ci0gIHVpbnQzMl90IHJvYzsKLSAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVz
OwotCi0gIC8qIEZpcnN0IHRlc3QgZG9lcyBub3Qgcm9sbG92ZXIgKi8KLSAgcGFja2V0cyA9IDE7
Ci0gIHJvYyA9IDA7Ci0KLSAgc3RhdHVzID0gdGVzdF9zZXRfcmVjZWl2ZXJfcm9jKHBhY2tldHMg
LSAxLCByb2MpOwotICBpZiAoc3RhdHVzKSB7Ci0gICAgcmV0dXJuIHN0YXR1czsKLSAgfQotCi0g
IHN0YXR1cyA9IHRlc3Rfc2V0X3JlY2VpdmVyX3JvYyhwYWNrZXRzLCByb2MpOwotICBpZiAoc3Rh
dHVzKSB7Ci0gICAgcmV0dXJuIHN0YXR1czsKLSAgfQotCi0gIHN0YXR1cyA9IHRlc3Rfc2V0X3Jl
Y2VpdmVyX3JvYyhwYWNrZXRzICsgMSwgcm9jKTsKLSAgaWYgKHN0YXR1cykgewotICAgIHJldHVy
biBzdGF0dXM7Ci0gIH0KLQotICBzdGF0dXMgPSB0ZXN0X3NldF9yZWNlaXZlcl9yb2MocGFja2V0
cyArIDYwMDAwLCByb2MpOwotICBpZiAoc3RhdHVzKSB7Ci0gICAgcmV0dXJuIHN0YXR1czsKLSAg
fQotCi0gIC8qIFNlY29uZCB0ZXN0IHNob3VsZCByb2xsb3ZlciAqLwotICBwYWNrZXRzID0gNjU1
MzU7Ci0gIHJvYyA9IDA7Ci0KLSAgc3RhdHVzID0gdGVzdF9zZXRfcmVjZWl2ZXJfcm9jKHBhY2tl
dHMgLSAxLCByb2MpOwotICBpZiAoc3RhdHVzKSB7Ci0gICAgcmV0dXJuIHN0YXR1czsKLSAgfQot
Ci0gIHN0YXR1cyA9IHRlc3Rfc2V0X3JlY2VpdmVyX3JvYyhwYWNrZXRzLCByb2MpOwotICBpZiAo
c3RhdHVzKSB7Ci0gICAgcmV0dXJuIHN0YXR1czsKLSAgfQotCi0gIC8qIE5vdyB0aGUgcm9sbG92
ZXIgY291bnRlciBzaG91bGQgYmUgMSAqLwotICByb2MgPSAxOwotICBzdGF0dXMgPSB0ZXN0X3Nl
dF9yZWNlaXZlcl9yb2MocGFja2V0cyArIDEsIHJvYyk7Ci0gIGlmIChzdGF0dXMpIHsKLSAgICBy
ZXR1cm4gc3RhdHVzOwotICB9Ci0KLSAgc3RhdHVzID0gdGVzdF9zZXRfcmVjZWl2ZXJfcm9jKHBh
Y2tldHMgKyA2MDAwMCwgcm9jKTsKLSAgaWYgKHN0YXR1cykgewotICAgIHJldHVybiBzdGF0dXM7
Ci0gIH0KLQotICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOworICAgIHJldHVybiBzcnRwX2Vy
cl9zdGF0dXNfb2s7CiB9CiAKLXNydHBfZXJyX3N0YXR1c190Ci1zcnRwX3Rlc3Rfc2V0X3NlbmRl
cl9yb2MoKSB7Ci0gIHVpbnQzMl90IHJvYzsKLSAgdWludDE2X3Qgc2VxOwotICBzcnRwX2Vycl9z
dGF0dXNfdCBzdGF0dXM7Ci0KLSAgc2VxID0gNDMyMTA7Ci0gIHJvYyA9IDA7Ci0gIHN0YXR1cyA9
IHRlc3Rfc2V0X3NlbmRlcl9yb2Moc2VxLCByb2MpOwotICBpZiAoc3RhdHVzKSB7Ci0gICAgcmV0
dXJuIHN0YXR1czsKLSAgfQotCi0gIHJvYyA9IDY1NTM1OwotICBzdGF0dXMgPSB0ZXN0X3NldF9z
ZW5kZXJfcm9jKHNlcSwgcm9jKTsKLSAgaWYgKHN0YXR1cykgewotICAgIHJldHVybiBzdGF0dXM7
Ci0gIH0KLQotICByb2MgPSAweGZmZmY7Ci0gIHN0YXR1cyA9IHRlc3Rfc2V0X3NlbmRlcl9yb2Mo
c2VxLCByb2MpOwotICBpZiAoc3RhdHVzKSB7Ci0gICAgcmV0dXJuIHN0YXR1czsKLSAgfQotCi0g
IHJvYyA9IDB4ZmZmZjAwOwotICBzdGF0dXMgPSB0ZXN0X3NldF9zZW5kZXJfcm9jKHNlcSwgcm9j
KTsKLSAgaWYgKHN0YXR1cykgewotICAgIHJldHVybiBzdGF0dXM7Ci0gIH0KLQotICByb2MgPSAw
eGZmZmZmZmYwOwotICBzdGF0dXMgPSB0ZXN0X3NldF9zZW5kZXJfcm9jKHNlcSwgcm9jKTsKLSAg
aWYgKHN0YXR1cykgewotICAgIHJldHVybiBzdGF0dXM7Ci0gIH0KLQotICByZXR1cm4gc3J0cF9l
cnJfc3RhdHVzX29rOworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF90ZXN0X3NldF9zZW5kZXJfcm9j
KCkKK3sKKyAgICB1aW50MzJfdCByb2M7CisgICAgdWludDE2X3Qgc2VxOworICAgIHNydHBfZXJy
X3N0YXR1c190IHN0YXR1czsKKworICAgIHNlcSA9IDQzMjEwOworICAgIHJvYyA9IDA7CisgICAg
c3RhdHVzID0gdGVzdF9zZXRfc2VuZGVyX3JvYyhzZXEsIHJvYyk7CisgICAgaWYgKHN0YXR1cykg
eworICAgICAgICByZXR1cm4gc3RhdHVzOworICAgIH0KKworICAgIHJvYyA9IDY1NTM1OworICAg
IHN0YXR1cyA9IHRlc3Rfc2V0X3NlbmRlcl9yb2Moc2VxLCByb2MpOworICAgIGlmIChzdGF0dXMp
IHsKKyAgICAgICAgcmV0dXJuIHN0YXR1czsKKyAgICB9CisKKyAgICByb2MgPSAweGZmZmY7Cisg
ICAgc3RhdHVzID0gdGVzdF9zZXRfc2VuZGVyX3JvYyhzZXEsIHJvYyk7CisgICAgaWYgKHN0YXR1
cykgeworICAgICAgICByZXR1cm4gc3RhdHVzOworICAgIH0KKworICAgIHJvYyA9IDB4ZmZmZjAw
OworICAgIHN0YXR1cyA9IHRlc3Rfc2V0X3NlbmRlcl9yb2Moc2VxLCByb2MpOworICAgIGlmIChz
dGF0dXMpIHsKKyAgICAgICAgcmV0dXJuIHN0YXR1czsKKyAgICB9CisKKyAgICByb2MgPSAweGZm
ZmZmZmYwOworICAgIHN0YXR1cyA9IHRlc3Rfc2V0X3NlbmRlcl9yb2Moc2VxLCByb2MpOworICAg
IGlmIChzdGF0dXMpIHsKKyAgICAgICAgcmV0dXJuIHN0YXR1czsKKyAgICB9CisKKyAgICByZXR1
cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQogCiAvKgogICogc3J0cCBwb2xpY3kgZGVmaW5pdGlv
bnMgLSB0aGVzZSBkZWZpbml0aW9ucyBhcmUgdXNlZCBhYm92ZQogICovCiAKKy8vIGNsYW5nLWZv
cm1hdCBvZmYKIHVuc2lnbmVkIGNoYXIgdGVzdF9rZXlbNDZdID0gewogICAgIDB4ZTEsIDB4Zjks
IDB4N2EsIDB4MGQsIDB4M2UsIDB4MDEsIDB4OGIsIDB4ZTAsCiAgICAgMHhkNiwgMHg0ZiwgMHhh
MywgMHgyYywgMHgwNiwgMHhkZSwgMHg0MSwgMHgzOSwKQEAgLTM0MzEsMjQxICszNDA5LDI1MyBA
QCB1bnNpZ25lZCBjaGFyIHRlc3RfbWtpX2lkW1RFU1RfTUtJX0lEX1NJWkVdID0gewogdW5zaWdu
ZWQgY2hhciB0ZXN0X21raV9pZF8yW1RFU1RfTUtJX0lEX1NJWkVdID0gewogICAgIDB4ZjMsIDB4
YTEsIDB4NDYsIDB4NzEKIH07CisvLyBjbGFuZy1mb3JtYXQgb24KIAogY29uc3Qgc3J0cF9wb2xp
Y3lfdCBkZWZhdWx0X3BvbGljeSA9IHsKLSAgICB7IHNzcmNfYW55X291dGJvdW5kLCAwIH0sICAv
KiBTU1JDICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICB7ICAgICAgICAgICAgICAg
ICAgICAgICAgICAvKiBTUlRQIHBvbGljeSAgICAgICAgICAgICAgICAgICAgKi8KLSAgICAgICAg
U1JUUF9BRVNfSUNNXzEyOCwgICAgICAgICAgIC8qIGNpcGhlciB0eXBlICAgICAgICAgICAgICAg
ICAqLworICAgIHsgc3NyY19hbnlfb3V0Ym91bmQsIDAgfSwgLyogU1NSQyAqLworICAgIHsKKyAg
ICAgICAgLyogU1JUUCBwb2xpY3kgKi8KKyAgICAgICAgU1JUUF9BRVNfSUNNXzEyOCwgICAgICAg
ICAgICAgICAvKiBjaXBoZXIgdHlwZSAgICAgICAgICAgICAgICAgKi8KICAgICAgICAgU1JUUF9B
RVNfSUNNXzEyOF9LRVlfTEVOX1dTQUxULCAvKiBjaXBoZXIga2V5IGxlbmd0aCBpbiBvY3RldHMg
Ki8KLSAgICAgICAgU1JUUF9ITUFDX1NIQTEsICAgICAgICAgICAgIC8qIGF1dGhlbnRpY2F0aW9u
IGZ1bmMgdHlwZSAgICAqLwotICAgICAgICAxNiwgICAgICAgICAgICAgICAgICAgIC8qIGF1dGgg
a2V5IGxlbmd0aCBpbiBvY3RldHMgICAqLwotICAgICAgICAxMCwgICAgICAgICAgICAgICAgICAg
IC8qIGF1dGggdGFnIGxlbmd0aCBpbiBvY3RldHMgICAqLwotICAgICAgICBzZWNfc2Vydl9jb25m
X2FuZF9hdXRoIC8qIHNlY3VyaXR5IHNlcnZpY2VzIGZsYWcgICAgICAqLworICAgICAgICBTUlRQ
X0hNQUNfU0hBMSwgICAgICAgICAgICAgICAgIC8qIGF1dGhlbnRpY2F0aW9uIGZ1bmMgdHlwZSAg
ICAqLworICAgICAgICAxNiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIGF1dGgga2V5
IGxlbmd0aCBpbiBvY3RldHMgICAqLworICAgICAgICAxMCwgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIC8qIGF1dGggdGFnIGxlbmd0aCBpbiBvY3RldHMgICAqLworICAgICAgICBzZWNfc2Vy
dl9jb25mX2FuZF9hdXRoICAgICAgICAgIC8qIHNlY3VyaXR5IHNlcnZpY2VzIGZsYWcgICAgICAq
LwogICAgIH0sCi0gICAgeyAgICAgICAgICAgICAgICAgICAgICAgICAgLyogU1JUQ1AgcG9saWN5
ICAgICAgICAgICAgICAgICAgICovCi0gICAgICAgIFNSVFBfQUVTX0lDTV8xMjgsICAgICAgICAg
ICAvKiBjaXBoZXIgdHlwZSAgICAgICAgICAgICAgICAgKi8KKyAgICB7CisgICAgICAgIC8qIFNS
VENQIHBvbGljeSAqLworICAgICAgICBTUlRQX0FFU19JQ01fMTI4LCAgICAgICAgICAgICAgIC8q
IGNpcGhlciB0eXBlICAgICAgICAgICAgICAgICAqLwogICAgICAgICBTUlRQX0FFU19JQ01fMTI4
X0tFWV9MRU5fV1NBTFQsIC8qIGNpcGhlciBrZXkgbGVuZ3RoIGluIG9jdGV0cyAqLwotICAgICAg
ICBTUlRQX0hNQUNfU0hBMSwgICAgICAgICAgICAgLyogYXV0aGVudGljYXRpb24gZnVuYyB0eXBl
ICAgICovCi0gICAgICAgIDE2LCAgICAgICAgICAgICAgICAgICAgLyogYXV0aCBrZXkgbGVuZ3Ro
IGluIG9jdGV0cyAgICovCi0gICAgICAgIDEwLCAgICAgICAgICAgICAgICAgICAgLyogYXV0aCB0
YWcgbGVuZ3RoIGluIG9jdGV0cyAgICovCi0gICAgICAgIHNlY19zZXJ2X2NvbmZfYW5kX2F1dGgg
Lyogc2VjdXJpdHkgc2VydmljZXMgZmxhZyAgICAgICovCisgICAgICAgIFNSVFBfSE1BQ19TSEEx
LCAgICAgICAgICAgICAgICAgLyogYXV0aGVudGljYXRpb24gZnVuYyB0eXBlICAgICovCisgICAg
ICAgIDE2LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogYXV0aCBrZXkgbGVuZ3RoIGlu
IG9jdGV0cyAgICovCisgICAgICAgIDEwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyog
YXV0aCB0YWcgbGVuZ3RoIGluIG9jdGV0cyAgICovCisgICAgICAgIHNlY19zZXJ2X2NvbmZfYW5k
X2F1dGggICAgICAgICAgLyogc2VjdXJpdHkgc2VydmljZXMgZmxhZyAgICAgICovCiAgICAgfSwK
ICAgICBOVUxMLAogICAgIChzcnRwX21hc3Rlcl9rZXlfdCAqKil0ZXN0X2tleXMsCi0gICAgMiwg
ICAgICAgICAvKiBpbmRpY2F0ZXMgdGhlIG51bWJlciBvZiBNYXN0ZXIga2V5cyAqLwotICAgIE5V
TEwsICAgICAgLyogaW5kaWNhdGVzIHRoYXQgRUtUIGlzIG5vdCBpbiB1c2UgKi8KLSAgICAxMjgs
ICAgICAgIC8qIHJlcGxheSB3aW5kb3cgc2l6ZSAqLwotICAgIDAsICAgICAgICAgLyogcmV0cmFu
c21pc3Npb24gbm90IGFsbG93ZWQgKi8KLSAgICBOVUxMLCAgICAgIC8qIG5vIGVuY3J5cHRlZCBl
eHRlbnNpb24gaGVhZGVycyAqLwotICAgIDAsICAgICAgICAgLyogbGlzdCBvZiBlbmNyeXB0ZWQg
ZXh0ZW5zaW9uIGhlYWRlcnMgaXMgZW1wdHkgKi8KKyAgICAyLCAgICAvKiBpbmRpY2F0ZXMgdGhl
IG51bWJlciBvZiBNYXN0ZXIga2V5cyAgICAgICAgICAqLworICAgIE5VTEwsIC8qIGluZGljYXRl
cyB0aGF0IEVLVCBpcyBub3QgaW4gdXNlICAgICAgICAgICAgICovCisgICAgMTI4LCAgLyogcmVw
bGF5IHdpbmRvdyBzaXplICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICAwLCAgICAv
KiByZXRyYW5zbWlzc2lvbiBub3QgYWxsb3dlZCAgICAgICAgICAgICAgICAgICAqLworICAgIE5V
TEwsIC8qIG5vIGVuY3J5cHRlZCBleHRlbnNpb24gaGVhZGVycyAgICAgICAgICAgICAgICovCisg
ICAgMCwgICAgLyogbGlzdCBvZiBlbmNyeXB0ZWQgZXh0ZW5zaW9uIGhlYWRlcnMgaXMgZW1wdHkg
Ki8KICAgICBOVUxMCiB9OwogCiBjb25zdCBzcnRwX3BvbGljeV90IGFlc19vbmx5X3BvbGljeSA9
IHsKICAgICB7IHNzcmNfYW55X291dGJvdW5kLCAwIH0sIC8qIFNTUkMgICAgICAgICAgICAgICAg
ICAgICAgICAqLwogICAgIHsKLSAgICAgICAgU1JUUF9BRVNfSUNNXzEyOCwgICAgICAgICAgLyog
Y2lwaGVyIHR5cGUgICAgICAgICAgICAgICAgICovCisgICAgICAgIFNSVFBfQUVTX0lDTV8xMjgs
ICAgICAgICAgICAgICAgLyogY2lwaGVyIHR5cGUgICAgICAgICAgICAgICAgICovCiAgICAgICAg
IFNSVFBfQUVTX0lDTV8xMjhfS0VZX0xFTl9XU0FMVCwgLyogY2lwaGVyIGtleSBsZW5ndGggaW4g
b2N0ZXRzICovCi0gICAgICAgIFNSVFBfTlVMTF9BVVRILCAgICAgICAgICAgIC8qIGF1dGhlbnRp
Y2F0aW9uIGZ1bmMgdHlwZSAgICAqLwotICAgICAgICAwLCAgICAgICAgICAgICAgICAgICAgLyog
YXV0aCBrZXkgbGVuZ3RoIGluIG9jdGV0cyAgICovCi0gICAgICAgIDAsICAgICAgICAgICAgICAg
ICAgICAvKiBhdXRoIHRhZyBsZW5ndGggaW4gb2N0ZXRzICAgKi8KLSAgICAgICAgc2VjX3NlcnZf
Y29uZiAgICAgICAgIC8qIHNlY3VyaXR5IHNlcnZpY2VzIGZsYWcgICAgICAqLworICAgICAgICBT
UlRQX05VTExfQVVUSCwgICAgICAgICAgICAgICAgIC8qIGF1dGhlbnRpY2F0aW9uIGZ1bmMgdHlw
ZSAgICAqLworICAgICAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIGF1dGgg
a2V5IGxlbmd0aCBpbiBvY3RldHMgICAqLworICAgICAgICAwLCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIGF1dGggdGFnIGxlbmd0aCBpbiBvY3RldHMgICAqLworICAgICAgICBzZWNf
c2Vydl9jb25mICAgICAgICAgICAgICAgICAgIC8qIHNlY3VyaXR5IHNlcnZpY2VzIGZsYWcgICAg
ICAqLwogICAgIH0sCiAgICAgewotICAgICAgICBTUlRQX0FFU19JQ01fMTI4LCAgICAgICAgLyog
Y2lwaGVyIHR5cGUgICAgICAgICAgICAgICAgICovCisgICAgICAgIFNSVFBfQUVTX0lDTV8xMjgs
ICAgICAgICAgICAgICAgLyogY2lwaGVyIHR5cGUgICAgICAgICAgICAgICAgICovCiAgICAgICAg
IFNSVFBfQUVTX0lDTV8xMjhfS0VZX0xFTl9XU0FMVCwgLyogY2lwaGVyIGtleSBsZW5ndGggaW4g
b2N0ZXRzICovCi0gICAgICAgIFNSVFBfTlVMTF9BVVRILCAgICAgICAgICAvKiBhdXRoZW50aWNh
dGlvbiBmdW5jIHR5cGUgICAgKi8KLSAgICAgICAgMCwgICAgICAgICAgICAgICAgICAvKiBhdXRo
IGtleSBsZW5ndGggaW4gb2N0ZXRzICAgKi8KLSAgICAgICAgMCwgICAgICAgICAgICAgICAgICAv
KiBhdXRoIHRhZyBsZW5ndGggaW4gb2N0ZXRzICAgKi8KLSAgICAgICAgc2VjX3NlcnZfY29uZiAg
ICAgICAvKiBzZWN1cml0eSBzZXJ2aWNlcyBmbGFnICAgICAgKi8KKyAgICAgICAgU1JUUF9OVUxM
X0FVVEgsICAgICAgICAgICAgICAgICAvKiBhdXRoZW50aWNhdGlvbiBmdW5jIHR5cGUgICAgKi8K
KyAgICAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBhdXRoIGtleSBsZW5n
dGggaW4gb2N0ZXRzICAgKi8KKyAgICAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAvKiBhdXRoIHRhZyBsZW5ndGggaW4gb2N0ZXRzICAgKi8KKyAgICAgICAgc2VjX3NlcnZfY29u
ZiAgICAgICAgICAgICAgICAgICAvKiBzZWN1cml0eSBzZXJ2aWNlcyBmbGFnICAgICAgKi8KICAg
ICB9LAogICAgIE5VTEwsCiAgICAgKHNydHBfbWFzdGVyX2tleV90ICoqKXRlc3Rfa2V5cywKLSAg
ICAyLCAgICAgICAgIC8qIGluZGljYXRlcyB0aGUgbnVtYmVyIG9mIE1hc3RlciBrZXlzICovCi0g
ICAgTlVMTCwgICAgICAvKiBpbmRpY2F0ZXMgdGhhdCBFS1QgaXMgbm90IGluIHVzZSAqLwotICAg
IDEyOCwgICAgICAgLyogcmVwbGF5IHdpbmRvdyBzaXplICovCi0gICAgMCwgICAgICAgICAvKiBy
ZXRyYW5zbWlzc2lvbiBub3QgYWxsb3dlZCAqLwotICAgIE5VTEwsICAgICAgLyogbm8gZW5jcnlw
dGVkIGV4dGVuc2lvbiBoZWFkZXJzICovCi0gICAgMCwgICAgICAgICAvKiBsaXN0IG9mIGVuY3J5
cHRlZCBleHRlbnNpb24gaGVhZGVycyBpcyBlbXB0eSAqLworICAgIDIsICAgIC8qIGluZGljYXRl
cyB0aGUgbnVtYmVyIG9mIE1hc3RlciBrZXlzICAgICAgICAgICovCisgICAgTlVMTCwgLyogaW5k
aWNhdGVzIHRoYXQgRUtUIGlzIG5vdCBpbiB1c2UgICAgICAgICAgICAgKi8KKyAgICAxMjgsICAv
KiByZXBsYXkgd2luZG93IHNpemUgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIDAs
ICAgIC8qIHJldHJhbnNtaXNzaW9uIG5vdCBhbGxvd2VkICAgICAgICAgICAgICAgICAgICovCisg
ICAgTlVMTCwgLyogbm8gZW5jcnlwdGVkIGV4dGVuc2lvbiBoZWFkZXJzICAgICAgICAgICAgICAg
Ki8KKyAgICAwLCAgICAvKiBsaXN0IG9mIGVuY3J5cHRlZCBleHRlbnNpb24gaGVhZGVycyBpcyBl
bXB0eSAqLwogICAgIE5VTEwKIH07CiAKIGNvbnN0IHNydHBfcG9saWN5X3QgaG1hY19vbmx5X3Bv
bGljeSA9IHsKLSAgICB7IHNzcmNfYW55X291dGJvdW5kLCAwIH0sIC8qIFNTUkMgICAgICAgICAg
ICAgICAgICAgICAgICAqLworICAgIHsgc3NyY19hbnlfb3V0Ym91bmQsIDAgfSwgLyogU1NSQyAq
LwogICAgIHsKLSAgICAgICAgU1JUUF9OVUxMX0NJUEhFUiwgICAgICAgICAgLyogY2lwaGVyIHR5
cGUgICAgICAgICAgICAgICAgICovCi0gICAgICAgIDAsICAgICAgICAgICAgICAgICAgICAvKiBj
aXBoZXIga2V5IGxlbmd0aCBpbiBvY3RldHMgKi8KLSAgICAgICAgU1JUUF9ITUFDX1NIQTEsICAg
ICAgICAgICAgLyogYXV0aGVudGljYXRpb24gZnVuYyB0eXBlICAgICovCi0gICAgICAgIDIwLCAg
ICAgICAgICAgICAgICAgICAvKiBhdXRoIGtleSBsZW5ndGggaW4gb2N0ZXRzICAgKi8KLSAgICAg
ICAgNCwgICAgICAgICAgICAgICAgICAgIC8qIGF1dGggdGFnIGxlbmd0aCBpbiBvY3RldHMgICAq
LwotICAgICAgICBzZWNfc2Vydl9hdXRoICAgICAgICAgLyogc2VjdXJpdHkgc2VydmljZXMgZmxh
ZyAgICAgICovCisgICAgICAgIFNSVFBfTlVMTF9DSVBIRVIsIC8qIGNpcGhlciB0eXBlICAgICAg
ICAgICAgICAgICAqLworICAgICAgICAwLCAgICAgICAgICAgICAgICAvKiBjaXBoZXIga2V5IGxl
bmd0aCBpbiBvY3RldHMgKi8KKyAgICAgICAgU1JUUF9ITUFDX1NIQTEsICAgLyogYXV0aGVudGlj
YXRpb24gZnVuYyB0eXBlICAgICovCisgICAgICAgIDIwLCAgICAgICAgICAgICAgIC8qIGF1dGgg
a2V5IGxlbmd0aCBpbiBvY3RldHMgICAqLworICAgICAgICA0LCAgICAgICAgICAgICAgICAvKiBh
dXRoIHRhZyBsZW5ndGggaW4gb2N0ZXRzICAgKi8KKyAgICAgICAgc2VjX3NlcnZfYXV0aCAgICAg
Lyogc2VjdXJpdHkgc2VydmljZXMgZmxhZyAgICAgICovCiAgICAgfSwKICAgICB7Ci0gICAgICAg
IFNSVFBfTlVMTF9DSVBIRVIsICAgICAgICAvKiBjaXBoZXIgdHlwZSAgICAgICAgICAgICAgICAg
Ki8KLSAgICAgICAgMCwgICAgICAgICAgICAgICAgICAvKiBjaXBoZXIga2V5IGxlbmd0aCBpbiBv
Y3RldHMgKi8KLSAgICAgICAgU1JUUF9ITUFDX1NIQTEsICAgICAgICAgIC8qIGF1dGhlbnRpY2F0
aW9uIGZ1bmMgdHlwZSAgICAqLwotICAgICAgICAyMCwgICAgICAgICAgICAgICAgIC8qIGF1dGgg
a2V5IGxlbmd0aCBpbiBvY3RldHMgICAqLwotICAgICAgICA0LCAgICAgICAgICAgICAgICAgIC8q
IGF1dGggdGFnIGxlbmd0aCBpbiBvY3RldHMgICAqLwotICAgICAgICBzZWNfc2Vydl9hdXRoICAg
ICAgIC8qIHNlY3VyaXR5IHNlcnZpY2VzIGZsYWcgICAgICAqLworICAgICAgICBTUlRQX05VTExf
Q0lQSEVSLCAvKiBjaXBoZXIgdHlwZSAgICAgICAgICAgICAgICAgKi8KKyAgICAgICAgMCwgICAg
ICAgICAgICAgICAgLyogY2lwaGVyIGtleSBsZW5ndGggaW4gb2N0ZXRzICovCisgICAgICAgIFNS
VFBfSE1BQ19TSEExLCAgIC8qIGF1dGhlbnRpY2F0aW9uIGZ1bmMgdHlwZSAgICAqLworICAgICAg
ICAyMCwgICAgICAgICAgICAgICAvKiBhdXRoIGtleSBsZW5ndGggaW4gb2N0ZXRzICAgKi8KKyAg
ICAgICAgNCwgICAgICAgICAgICAgICAgLyogYXV0aCB0YWcgbGVuZ3RoIGluIG9jdGV0cyAgICov
CisgICAgICAgIHNlY19zZXJ2X2F1dGggICAgIC8qIHNlY3VyaXR5IHNlcnZpY2VzIGZsYWcgICAg
ICAqLwogICAgIH0sCiAgICAgTlVMTCwKICAgICAoc3J0cF9tYXN0ZXJfa2V5X3QgKiopdGVzdF9r
ZXlzLAotICAgIDIsICAgICAgICAgLyogTnVtYmVyIG9mIE1hc3RlciBrZXlzIGFzc29jaWF0ZWQg
d2l0aCB0aGUgcG9saWN5ICovCi0gICAgTlVMTCwgICAgICAvKiBpbmRpY2F0ZXMgdGhhdCBFS1Qg
aXMgbm90IGluIHVzZSAqLwotICAgIDEyOCwgICAgICAgLyogcmVwbGF5IHdpbmRvdyBzaXplICov
Ci0gICAgMCwgICAgICAgICAvKiByZXRyYW5zbWlzc2lvbiBub3QgYWxsb3dlZCAqLwotICAgIE5V
TEwsICAgICAgLyogbm8gZW5jcnlwdGVkIGV4dGVuc2lvbiBoZWFkZXJzICovCi0gICAgMCwgICAg
ICAgICAvKiBsaXN0IG9mIGVuY3J5cHRlZCBleHRlbnNpb24gaGVhZGVycyBpcyBlbXB0eSAqLwor
ICAgIDIsICAgIC8qIE51bWJlciBvZiBNYXN0ZXIga2V5cyBhc3NvY2lhdGVkIHdpdGggdGhlIHBv
bGljeSAqLworICAgIE5VTEwsIC8qIGluZGljYXRlcyB0aGF0IEVLVCBpcyBub3QgaW4gdXNlICAg
ICAgICAgICAgICAgICAqLworICAgIDEyOCwgIC8qIHJlcGxheSB3aW5kb3cgc2l6ZSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIDAsICAgIC8qIHJldHJhbnNtaXNzaW9uIG5v
dCBhbGxvd2VkICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIE5VTEwsIC8qIG5vIGVuY3J5
cHRlZCBleHRlbnNpb24gaGVhZGVycyAgICAgICAgICAgICAgICAgICAqLworICAgIDAsICAgIC8q
IGxpc3Qgb2YgZW5jcnlwdGVkIGV4dGVuc2lvbiBoZWFkZXJzIGlzIGVtcHR5ICAgICAqLwogICAg
IE5VTEwKIH07CiAKICNpZmRlZiBPUEVOU1NMCiBjb25zdCBzcnRwX3BvbGljeV90IGFlczEyOF9n
Y21fOF9wb2xpY3kgPSB7Ci0gICAgeyBzc3JjX2FueV9vdXRib3VuZCwgMCB9LCAgICAgICAgICAg
LyogU1NSQyAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgeyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgLyogU1JUUCBwb2xpY3kgICAgICAgICAgICAgICAgICAgICov
Ci0gICAgICAgIFNSVFBfQUVTX0dDTV8xMjgsICAgICAgICAgICAgICAgICAgICAvKiBjaXBoZXIg
dHlwZSAgICAgICAgICAgICAgICAgKi8KKyAgICB7IHNzcmNfYW55X291dGJvdW5kLCAwIH0sIC8q
IFNTUkMgKi8KKyAgICB7CisgICAgICAgIC8qIFNSVFAgcG9saWN5ICovCisgICAgICAgIFNSVFBf
QUVTX0dDTV8xMjgsICAgICAgICAgICAgICAgLyogY2lwaGVyIHR5cGUgICAgICAgICAgICAgICAg
ICovCiAgICAgICAgIFNSVFBfQUVTX0dDTV8xMjhfS0VZX0xFTl9XU0FMVCwgLyogY2lwaGVyIGtl
eSBsZW5ndGggaW4gb2N0ZXRzICovCi0gICAgICAgIFNSVFBfTlVMTF9BVVRILCAgICAgICAgICAg
ICAgICAgICAgICAvKiBhdXRoZW50aWNhdGlvbiBmdW5jIHR5cGUgICAgKi8KKyAgICAgICAgU1JU
UF9OVUxMX0FVVEgsICAgICAgICAgICAgICAgICAvKiBhdXRoZW50aWNhdGlvbiBmdW5jIHR5cGUg
ICAgKi8KICAgICAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBhdXRoIGtl
eSBsZW5ndGggaW4gb2N0ZXRzICAgKi8KICAgICAgICAgOCwgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiBhdXRoIHRhZyBsZW5ndGggaW4gb2N0ZXRzICAgKi8KICAgICAgICAgc2VjX3Nl
cnZfY29uZl9hbmRfYXV0aCAgICAgICAgICAvKiBzZWN1cml0eSBzZXJ2aWNlcyBmbGFnICAgICAg
Ki8KICAgICB9LAotICAgIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIFNS
VENQIHBvbGljeSAgICAgICAgICAgICAgICAgICAqLwotICAgICAgICBTUlRQX0FFU19HQ01fMTI4
LCAgICAgICAgICAgICAgICAgICAgLyogY2lwaGVyIHR5cGUgICAgICAgICAgICAgICAgICovCisg
ICAgeworICAgICAgICAvKiBTUlRDUCBwb2xpY3kgKi8KKyAgICAgICAgU1JUUF9BRVNfR0NNXzEy
OCwgICAgICAgICAgICAgICAvKiBjaXBoZXIgdHlwZSAgICAgICAgICAgICAgICAgKi8KICAgICAg
ICAgU1JUUF9BRVNfR0NNXzEyOF9LRVlfTEVOX1dTQUxULCAvKiBjaXBoZXIga2V5IGxlbmd0aCBp
biBvY3RldHMgKi8KLSAgICAgICAgU1JUUF9OVUxMX0FVVEgsICAgICAgICAgICAgICAgICAgICAg
IC8qIGF1dGhlbnRpY2F0aW9uIGZ1bmMgdHlwZSAgICAqLworICAgICAgICBTUlRQX05VTExfQVVU
SCwgICAgICAgICAgICAgICAgIC8qIGF1dGhlbnRpY2F0aW9uIGZ1bmMgdHlwZSAgICAqLwogICAg
ICAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIGF1dGgga2V5IGxlbmd0aCBp
biBvY3RldHMgICAqLwogICAgICAgICA4LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8q
IGF1dGggdGFnIGxlbmd0aCBpbiBvY3RldHMgICAqLwogICAgICAgICBzZWNfc2Vydl9jb25mX2Fu
ZF9hdXRoICAgICAgICAgIC8qIHNlY3VyaXR5IHNlcnZpY2VzIGZsYWcgICAgICAqLwogICAgIH0s
CiAgICAgTlVMTCwKICAgICAoc3J0cF9tYXN0ZXJfa2V5X3QgKiopdGVzdF9rZXlzLAotICAgIDIs
ICAgICAgICAgICAvKiBpbmRpY2F0ZXMgdGhlIG51bWJlciBvZiBNYXN0ZXIga2V5cyAqLwotICAg
IE5VTEwsICAgICAgICAvKiBpbmRpY2F0ZXMgdGhhdCBFS1QgaXMgbm90IGluIHVzZSAqLwotICAg
IDEyOCwgICAgICAgICAvKiByZXBsYXkgd2luZG93IHNpemUgKi8KLSAgICAwLCAgICAgICAgICAg
LyogcmV0cmFuc21pc3Npb24gbm90IGFsbG93ZWQgKi8KLSAgICBOVUxMLCAgICAgICAgLyogbm8g
ZW5jcnlwdGVkIGV4dGVuc2lvbiBoZWFkZXJzICovCi0gICAgMCwgICAgICAgICAgIC8qIGxpc3Qg
b2YgZW5jcnlwdGVkIGV4dGVuc2lvbiBoZWFkZXJzIGlzIGVtcHR5ICovCisgICAgMiwgICAgLyog
aW5kaWNhdGVzIHRoZSBudW1iZXIgb2YgTWFzdGVyIGtleXMgICAgICAgICAgKi8KKyAgICBOVUxM
LCAvKiBpbmRpY2F0ZXMgdGhhdCBFS1QgaXMgbm90IGluIHVzZSAgICAgICAgICAgICAqLworICAg
IDEyOCwgIC8qIHJlcGxheSB3aW5kb3cgc2l6ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICov
CisgICAgMCwgICAgLyogcmV0cmFuc21pc3Npb24gbm90IGFsbG93ZWQgICAgICAgICAgICAgICAg
ICAgKi8KKyAgICBOVUxMLCAvKiBubyBlbmNyeXB0ZWQgZXh0ZW5zaW9uIGhlYWRlcnMgICAgICAg
ICAgICAgICAqLworICAgIDAsICAgIC8qIGxpc3Qgb2YgZW5jcnlwdGVkIGV4dGVuc2lvbiBoZWFk
ZXJzIGlzIGVtcHR5ICovCiAgICAgTlVMTAogfTsKIAogY29uc3Qgc3J0cF9wb2xpY3lfdCBhZXMx
MjhfZ2NtXzhfY2F1dGhfcG9saWN5ID0gewotICAgIHsgc3NyY19hbnlfb3V0Ym91bmQsIDAgfSwg
ICAgICAgICAgIC8qIFNTUkMgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIHsgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIFNSVFAgcG9saWN5ICAgICAgICAgICAg
ICAgICAgICAqLwotICAgICAgICBTUlRQX0FFU19HQ01fMTI4LCAgICAgICAgICAgICAgICAgICAg
LyogY2lwaGVyIHR5cGUgICAgICAgICAgICAgICAgICovCisgICAgeyBzc3JjX2FueV9vdXRib3Vu
ZCwgMCB9LCAvKiBTU1JDICovCisgICAgeworICAgICAgICAvKiBTUlRQIHBvbGljeSAqLworICAg
ICAgICBTUlRQX0FFU19HQ01fMTI4LCAgICAgICAgICAgICAgIC8qIGNpcGhlciB0eXBlICAgICAg
ICAgICAgICAgICAqLwogICAgICAgICBTUlRQX0FFU19HQ01fMTI4X0tFWV9MRU5fV1NBTFQsIC8q
IGNpcGhlciBrZXkgbGVuZ3RoIGluIG9jdGV0cyAqLwotICAgICAgICBTUlRQX05VTExfQVVUSCwg
ICAgICAgICAgICAgICAgICAgICAgLyogYXV0aGVudGljYXRpb24gZnVuYyB0eXBlICAgICovCisg
ICAgICAgIFNSVFBfTlVMTF9BVVRILCAgICAgICAgICAgICAgICAgLyogYXV0aGVudGljYXRpb24g
ZnVuYyB0eXBlICAgICovCiAgICAgICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
LyogYXV0aCBrZXkgbGVuZ3RoIGluIG9jdGV0cyAgICovCiAgICAgICAgIDgsICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgLyogYXV0aCB0YWcgbGVuZ3RoIGluIG9jdGV0cyAgICovCiAgICAg
ICAgIHNlY19zZXJ2X2NvbmZfYW5kX2F1dGggICAgICAgICAgLyogc2VjdXJpdHkgc2VydmljZXMg
ZmxhZyAgICAgICovCiAgICAgfSwKLSAgICB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAvKiBTUlRDUCBwb2xpY3kgICAgICAgICAgICAgICAgICAgKi8KLSAgICAgICAgU1JUUF9B
RVNfR0NNXzEyOCwgICAgICAgICAgICAgICAgICAgIC8qIGNpcGhlciB0eXBlICAgICAgICAgICAg
ICAgICAqLworICAgIHsKKyAgICAgICAgLyogU1JUQ1AgcG9saWN5ICovCisgICAgICAgIFNSVFBf
QUVTX0dDTV8xMjgsICAgICAgICAgICAgICAgLyogY2lwaGVyIHR5cGUgICAgICAgICAgICAgICAg
ICovCiAgICAgICAgIFNSVFBfQUVTX0dDTV8xMjhfS0VZX0xFTl9XU0FMVCwgLyogY2lwaGVyIGtl
eSBsZW5ndGggaW4gb2N0ZXRzICovCi0gICAgICAgIFNSVFBfTlVMTF9BVVRILCAgICAgICAgICAg
ICAgICAgICAgICAvKiBhdXRoZW50aWNhdGlvbiBmdW5jIHR5cGUgICAgKi8KKyAgICAgICAgU1JU
UF9OVUxMX0FVVEgsICAgICAgICAgICAgICAgICAvKiBhdXRoZW50aWNhdGlvbiBmdW5jIHR5cGUg
ICAgKi8KICAgICAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBhdXRoIGtl
eSBsZW5ndGggaW4gb2N0ZXRzICAgKi8KICAgICAgICAgOCwgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiBhdXRoIHRhZyBsZW5ndGggaW4gb2N0ZXRzICAgKi8KICAgICAgICAgc2VjX3Nl
cnZfYXV0aCAgICAgICAgICAgICAgICAgICAvKiBzZWN1cml0eSBzZXJ2aWNlcyBmbGFnICAgICAg
Ki8KICAgICB9LAogICAgIE5VTEwsCiAgICAgKHNydHBfbWFzdGVyX2tleV90ICoqKXRlc3Rfa2V5
cywKLSAgICAyLCAgICAgICAgICAgLyogaW5kaWNhdGVzIHRoZSBudW1iZXIgb2YgTWFzdGVyIGtl
eXMgKi8KLSAgICBOVUxMLCAgICAgICAgLyogaW5kaWNhdGVzIHRoYXQgRUtUIGlzIG5vdCBpbiB1
c2UgKi8KLSAgICAxMjgsICAgICAgICAgLyogcmVwbGF5IHdpbmRvdyBzaXplICovCi0gICAgMCwg
ICAgICAgICAgIC8qIHJldHJhbnNtaXNzaW9uIG5vdCBhbGxvd2VkICovCi0gICAgTlVMTCwgICAg
ICAgIC8qIG5vIGVuY3J5cHRlZCBleHRlbnNpb24gaGVhZGVycyAqLwotICAgIDAsICAgICAgICAg
ICAvKiBsaXN0IG9mIGVuY3J5cHRlZCBleHRlbnNpb24gaGVhZGVycyBpcyBlbXB0eSAqLworICAg
IDIsICAgIC8qIGluZGljYXRlcyB0aGUgbnVtYmVyIG9mIE1hc3RlciBrZXlzICAgICAgICAgICov
CisgICAgTlVMTCwgLyogaW5kaWNhdGVzIHRoYXQgRUtUIGlzIG5vdCBpbiB1c2UgICAgICAgICAg
ICAgKi8KKyAgICAxMjgsICAvKiByZXBsYXkgd2luZG93IHNpemUgICAgICAgICAgICAgICAgICAg
ICAgICAgICAqLworICAgIDAsICAgIC8qIHJldHJhbnNtaXNzaW9uIG5vdCBhbGxvd2VkICAgICAg
ICAgICAgICAgICAgICovCisgICAgTlVMTCwgLyogbm8gZW5jcnlwdGVkIGV4dGVuc2lvbiBoZWFk
ZXJzICAgICAgICAgICAgICAgKi8KKyAgICAwLCAgICAvKiBsaXN0IG9mIGVuY3J5cHRlZCBleHRl
bnNpb24gaGVhZGVycyBpcyBlbXB0eSAqLwogICAgIE5VTEwKIH07CiAKIGNvbnN0IHNydHBfcG9s
aWN5X3QgYWVzMjU2X2djbV84X3BvbGljeSA9IHsKLSAgICB7IHNzcmNfYW55X291dGJvdW5kLCAw
IH0sICAgICAgICAgICAvKiBTU1JDICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICB7
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBTUlRQIHBvbGljeSAgICAgICAg
ICAgICAgICAgICAgKi8KLSAgICAgICAgU1JUUF9BRVNfR0NNXzI1NiwgICAgICAgICAgICAgICAg
ICAgIC8qIGNpcGhlciB0eXBlICAgICAgICAgICAgICAgICAqLworICAgIHsgc3NyY19hbnlfb3V0
Ym91bmQsIDAgfSwgLyogU1NSQyAqLworICAgIHsKKyAgICAgICAgLyogU1JUUCBwb2xpY3kgKi8K
KyAgICAgICAgU1JUUF9BRVNfR0NNXzI1NiwgICAgICAgICAgICAgICAvKiBjaXBoZXIgdHlwZSAg
ICAgICAgICAgICAgICAgKi8KICAgICAgICAgU1JUUF9BRVNfR0NNXzI1Nl9LRVlfTEVOX1dTQUxU
LCAvKiBjaXBoZXIga2V5IGxlbmd0aCBpbiBvY3RldHMgKi8KLSAgICAgICAgU1JUUF9OVUxMX0FV
VEgsICAgICAgICAgICAgICAgICAgICAgIC8qIGF1dGhlbnRpY2F0aW9uIGZ1bmMgdHlwZSAgICAq
LworICAgICAgICBTUlRQX05VTExfQVVUSCwgICAgICAgICAgICAgICAgIC8qIGF1dGhlbnRpY2F0
aW9uIGZ1bmMgdHlwZSAgICAqLwogICAgICAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIGF1dGgga2V5IGxlbmd0aCBpbiBvY3RldHMgICAqLwogICAgICAgICA4LCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIGF1dGggdGFnIGxlbmd0aCBpbiBvY3RldHMgICAqLwog
ICAgICAgICBzZWNfc2Vydl9jb25mX2FuZF9hdXRoICAgICAgICAgIC8qIHNlY3VyaXR5IHNlcnZp
Y2VzIGZsYWcgICAgICAqLwogICAgIH0sCi0gICAgeyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgLyogU1JUQ1AgcG9saWN5ICAgICAgICAgICAgICAgICAgICovCi0gICAgICAgIFNS
VFBfQUVTX0dDTV8yNTYsICAgICAgICAgICAgICAgICAgICAvKiBjaXBoZXIgdHlwZSAgICAgICAg
ICAgICAgICAgKi8KKyAgICB7CisgICAgICAgIC8qIFNSVENQIHBvbGljeSAqLworICAgICAgICBT
UlRQX0FFU19HQ01fMjU2LCAgICAgICAgICAgICAgIC8qIGNpcGhlciB0eXBlICAgICAgICAgICAg
ICAgICAqLwogICAgICAgICBTUlRQX0FFU19HQ01fMjU2X0tFWV9MRU5fV1NBTFQsIC8qIGNpcGhl
ciBrZXkgbGVuZ3RoIGluIG9jdGV0cyAqLwotICAgICAgICBTUlRQX05VTExfQVVUSCwgICAgICAg
ICAgICAgICAgICAgICAgLyogYXV0aGVudGljYXRpb24gZnVuYyB0eXBlICAgICovCisgICAgICAg
IFNSVFBfTlVMTF9BVVRILCAgICAgICAgICAgICAgICAgLyogYXV0aGVudGljYXRpb24gZnVuYyB0
eXBlICAgICovCiAgICAgICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogYXV0
aCBrZXkgbGVuZ3RoIGluIG9jdGV0cyAgICovCiAgICAgICAgIDgsICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgLyogYXV0aCB0YWcgbGVuZ3RoIGluIG9jdGV0cyAgICovCiAgICAgICAgIHNl
Y19zZXJ2X2NvbmZfYW5kX2F1dGggICAgICAgICAgLyogc2VjdXJpdHkgc2VydmljZXMgZmxhZyAg
ICAgICovCiAgICAgfSwKICAgICBOVUxMLAogICAgIChzcnRwX21hc3Rlcl9rZXlfdCAqKil0ZXN0
X2tleXMsCi0gICAgMiwgICAgICAgICAgIC8qIGluZGljYXRlcyB0aGUgbnVtYmVyIG9mIE1hc3Rl
ciBrZXlzICovCi0gICAgTlVMTCwgICAgICAgIC8qIGluZGljYXRlcyB0aGF0IEVLVCBpcyBub3Qg
aW4gdXNlICovCi0gICAgMTI4LCAgICAgICAgIC8qIHJlcGxheSB3aW5kb3cgc2l6ZSAqLwotICAg
IDAsICAgICAgICAgICAvKiByZXRyYW5zbWlzc2lvbiBub3QgYWxsb3dlZCAqLwotICAgIE5VTEws
ICAgICAgICAvKiBubyBlbmNyeXB0ZWQgZXh0ZW5zaW9uIGhlYWRlcnMgKi8KLSAgICAwLCAgICAg
ICAgICAgLyogbGlzdCBvZiBlbmNyeXB0ZWQgZXh0ZW5zaW9uIGhlYWRlcnMgaXMgZW1wdHkgKi8K
KyAgICAyLCAgICAvKiBpbmRpY2F0ZXMgdGhlIG51bWJlciBvZiBNYXN0ZXIga2V5cyAgICAgICAg
ICAqLworICAgIE5VTEwsIC8qIGluZGljYXRlcyB0aGF0IEVLVCBpcyBub3QgaW4gdXNlICAgICAg
ICAgICAgICovCisgICAgMTI4LCAgLyogcmVwbGF5IHdpbmRvdyBzaXplICAgICAgICAgICAgICAg
ICAgICAgICAgICAgKi8KKyAgICAwLCAgICAvKiByZXRyYW5zbWlzc2lvbiBub3QgYWxsb3dlZCAg
ICAgICAgICAgICAgICAgICAqLworICAgIE5VTEwsIC8qIG5vIGVuY3J5cHRlZCBleHRlbnNpb24g
aGVhZGVycyAgICAgICAgICAgICAgICovCisgICAgMCwgICAgLyogbGlzdCBvZiBlbmNyeXB0ZWQg
ZXh0ZW5zaW9uIGhlYWRlcnMgaXMgZW1wdHkgKi8KICAgICBOVUxMCiB9OwogCiBjb25zdCBzcnRw
X3BvbGljeV90IGFlczI1Nl9nY21fOF9jYXV0aF9wb2xpY3kgPSB7Ci0gICAgeyBzc3JjX2FueV9v
dXRib3VuZCwgMCB9LCAgICAgICAgICAgLyogU1NSQyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICovCi0gICAgeyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogU1JUUCBwb2xp
Y3kgICAgICAgICAgICAgICAgICAgICovCi0gICAgICAgIFNSVFBfQUVTX0dDTV8yNTYsICAgICAg
ICAgICAgICAgICAgICAvKiBjaXBoZXIgdHlwZSAgICAgICAgICAgICAgICAgKi8KKyAgICB7IHNz
cmNfYW55X291dGJvdW5kLCAwIH0sIC8qIFNTUkMgKi8KKyAgICB7CisgICAgICAgIC8qIFNSVFAg
cG9saWN5ICovCisgICAgICAgIFNSVFBfQUVTX0dDTV8yNTYsICAgICAgICAgICAgICAgLyogY2lw
aGVyIHR5cGUgICAgICAgICAgICAgICAgICovCiAgICAgICAgIFNSVFBfQUVTX0dDTV8yNTZfS0VZ
X0xFTl9XU0FMVCwgLyogY2lwaGVyIGtleSBsZW5ndGggaW4gb2N0ZXRzICovCi0gICAgICAgIFNS
VFBfTlVMTF9BVVRILCAgICAgICAgICAgICAgICAgICAgICAvKiBhdXRoZW50aWNhdGlvbiBmdW5j
IHR5cGUgICAgKi8KKyAgICAgICAgU1JUUF9OVUxMX0FVVEgsICAgICAgICAgICAgICAgICAvKiBh
dXRoZW50aWNhdGlvbiBmdW5jIHR5cGUgICAgKi8KICAgICAgICAgMCwgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAvKiBhdXRoIGtleSBsZW5ndGggaW4gb2N0ZXRzICAgKi8KICAgICAgICAg
OCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBhdXRoIHRhZyBsZW5ndGggaW4gb2N0
ZXRzICAgKi8KICAgICAgICAgc2VjX3NlcnZfY29uZl9hbmRfYXV0aCAgICAgICAgICAvKiBzZWN1
cml0eSBzZXJ2aWNlcyBmbGFnICAgICAgKi8KICAgICB9LAotICAgIHsgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIC8qIFNSVENQIHBvbGljeSAgICAgICAgICAgICAgICAgICAqLwot
ICAgICAgICBTUlRQX0FFU19HQ01fMjU2LCAgICAgICAgICAgICAgICAgICAgLyogY2lwaGVyIHR5
cGUgICAgICAgICAgICAgICAgICovCisgICAgeworICAgICAgICAvKiBTUlRDUCBwb2xpY3kgKi8K
KyAgICAgICAgU1JUUF9BRVNfR0NNXzI1NiwgICAgICAgICAgICAgICAvKiBjaXBoZXIgdHlwZSAg
ICAgICAgICAgICAgICAgKi8KICAgICAgICAgU1JUUF9BRVNfR0NNXzI1Nl9LRVlfTEVOX1dTQUxU
LCAvKiBjaXBoZXIga2V5IGxlbmd0aCBpbiBvY3RldHMgKi8KLSAgICAgICAgU1JUUF9OVUxMX0FV
VEgsICAgICAgICAgICAgICAgICAgICAgIC8qIGF1dGhlbnRpY2F0aW9uIGZ1bmMgdHlwZSAgICAq
LworICAgICAgICBTUlRQX05VTExfQVVUSCwgICAgICAgICAgICAgICAgIC8qIGF1dGhlbnRpY2F0
aW9uIGZ1bmMgdHlwZSAgICAqLwogICAgICAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIGF1dGgga2V5IGxlbmd0aCBpbiBvY3RldHMgICAqLwogICAgICAgICA4LCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qIGF1dGggdGFnIGxlbmd0aCBpbiBvY3RldHMgICAqLwog
ICAgICAgICBzZWNfc2Vydl9hdXRoICAgICAgICAgICAgICAgICAgIC8qIHNlY3VyaXR5IHNlcnZp
Y2VzIGZsYWcgICAgICAqLwogICAgIH0sCiAgICAgTlVMTCwKICAgICAoc3J0cF9tYXN0ZXJfa2V5
X3QgKiopdGVzdF9rZXlzLAotICAgIDIsICAgICAgICAgICAvKiBpbmRpY2F0ZXMgdGhlIG51bWJl
ciBvZiBNYXN0ZXIga2V5cyAqLwotICAgIE5VTEwsICAgICAgICAvKiBpbmRpY2F0ZXMgdGhhdCBF
S1QgaXMgbm90IGluIHVzZSAqLwotICAgIDEyOCwgICAgICAgICAvKiByZXBsYXkgd2luZG93IHNp
emUgKi8KLSAgICAwLCAgICAgICAgICAgLyogcmV0cmFuc21pc3Npb24gbm90IGFsbG93ZWQgKi8K
LSAgICBOVUxMLCAgICAgICAgLyogbm8gZW5jcnlwdGVkIGV4dGVuc2lvbiBoZWFkZXJzICovCi0g
ICAgMCwgICAgICAgICAgIC8qIGxpc3Qgb2YgZW5jcnlwdGVkIGV4dGVuc2lvbiBoZWFkZXJzIGlz
IGVtcHR5ICovCisgICAgMiwgICAgLyogaW5kaWNhdGVzIHRoZSBudW1iZXIgb2YgTWFzdGVyIGtl
eXMgICAgICAgICAgKi8KKyAgICBOVUxMLCAvKiBpbmRpY2F0ZXMgdGhhdCBFS1QgaXMgbm90IGlu
IHVzZSAgICAgICAgICAgICAqLworICAgIDEyOCwgIC8qIHJlcGxheSB3aW5kb3cgc2l6ZSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICovCisgICAgMCwgICAgLyogcmV0cmFuc21pc3Npb24gbm90
IGFsbG93ZWQgICAgICAgICAgICAgICAgICAgKi8KKyAgICBOVUxMLCAvKiBubyBlbmNyeXB0ZWQg
ZXh0ZW5zaW9uIGhlYWRlcnMgICAgICAgICAgICAgICAqLworICAgIDAsICAgIC8qIGxpc3Qgb2Yg
ZW5jcnlwdGVkIGV4dGVuc2lvbiBoZWFkZXJzIGlzIGVtcHR5ICovCiAgICAgTlVMTAogfTsKICNl
bmRpZgogCiBjb25zdCBzcnRwX3BvbGljeV90IG51bGxfcG9saWN5ID0gewotICAgIHsgc3NyY19h
bnlfb3V0Ym91bmQsIDAgfSwgLyogU1NSQyAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAg
eyBzc3JjX2FueV9vdXRib3VuZCwgMCB9LCAvKiBTU1JDICovCiAgICAgewotICAgICAgICBTUlRQ
X05VTExfQ0lQSEVSLCAgICAgICAgICAvKiBjaXBoZXIgdHlwZSAgICAgICAgICAgICAgICAgKi8K
LSAgICAgICAgMCwgICAgICAgICAgICAgICAgICAgIC8qIGNpcGhlciBrZXkgbGVuZ3RoIGluIG9j
dGV0cyAqLwotICAgICAgICBTUlRQX05VTExfQVVUSCwgICAgICAgICAgICAvKiBhdXRoZW50aWNh
dGlvbiBmdW5jIHR5cGUgICAgKi8KLSAgICAgICAgMCwgICAgICAgICAgICAgICAgICAgIC8qIGF1
dGgga2V5IGxlbmd0aCBpbiBvY3RldHMgICAqLwotICAgICAgICAwLCAgICAgICAgICAgICAgICAg
ICAgLyogYXV0aCB0YWcgbGVuZ3RoIGluIG9jdGV0cyAgICovCi0gICAgICAgIHNlY19zZXJ2X25v
bmUgICAgICAgICAvKiBzZWN1cml0eSBzZXJ2aWNlcyBmbGFnICAgICAgKi8KKyAgICAgICAgU1JU
UF9OVUxMX0NJUEhFUiwgLyogY2lwaGVyIHR5cGUgICAgICAgICAgICAgICAgICovCisgICAgICAg
IDAsICAgICAgICAgICAgICAgIC8qIGNpcGhlciBrZXkgbGVuZ3RoIGluIG9jdGV0cyAqLworICAg
ICAgICBTUlRQX05VTExfQVVUSCwgICAvKiBhdXRoZW50aWNhdGlvbiBmdW5jIHR5cGUgICAgKi8K
KyAgICAgICAgMCwgICAgICAgICAgICAgICAgLyogYXV0aCBrZXkgbGVuZ3RoIGluIG9jdGV0cyAg
ICovCisgICAgICAgIDAsICAgICAgICAgICAgICAgIC8qIGF1dGggdGFnIGxlbmd0aCBpbiBvY3Rl
dHMgICAqLworICAgICAgICBzZWNfc2Vydl9ub25lICAgICAvKiBzZWN1cml0eSBzZXJ2aWNlcyBm
bGFnICAgICAgKi8KICAgICB9LAogICAgIHsKLSAgICAgICAgU1JUUF9OVUxMX0NJUEhFUiwgICAg
ICAgIC8qIGNpcGhlciB0eXBlICAgICAgICAgICAgICAgICAqLwotICAgICAgICAwLCAgICAgICAg
ICAgICAgICAgIC8qIGNpcGhlciBrZXkgbGVuZ3RoIGluIG9jdGV0cyAqLwotICAgICAgICBTUlRQ
X05VTExfQVVUSCwgICAgICAgICAgLyogYXV0aGVudGljYXRpb24gZnVuYyB0eXBlICAgICovCi0g
ICAgICAgIDAsICAgICAgICAgICAgICAgICAgLyogYXV0aCBrZXkgbGVuZ3RoIGluIG9jdGV0cyAg
ICovCi0gICAgICAgIDAsICAgICAgICAgICAgICAgICAgLyogYXV0aCB0YWcgbGVuZ3RoIGluIG9j
dGV0cyAgICovCi0gICAgICAgIHNlY19zZXJ2X25vbmUgICAgICAgLyogc2VjdXJpdHkgc2Vydmlj
ZXMgZmxhZyAgICAgICovCisgICAgICAgIFNSVFBfTlVMTF9DSVBIRVIsIC8qIGNpcGhlciB0eXBl
ICAgICAgICAgICAgICAgICAqLworICAgICAgICAwLCAgICAgICAgICAgICAgICAvKiBjaXBoZXIg
a2V5IGxlbmd0aCBpbiBvY3RldHMgKi8KKyAgICAgICAgU1JUUF9OVUxMX0FVVEgsICAgLyogYXV0
aGVudGljYXRpb24gZnVuYyB0eXBlICAgICovCisgICAgICAgIDAsICAgICAgICAgICAgICAgIC8q
IGF1dGgga2V5IGxlbmd0aCBpbiBvY3RldHMgICAqLworICAgICAgICAwLCAgICAgICAgICAgICAg
ICAvKiBhdXRoIHRhZyBsZW5ndGggaW4gb2N0ZXRzICAgKi8KKyAgICAgICAgc2VjX3NlcnZfbm9u
ZSAgICAgLyogc2VjdXJpdHkgc2VydmljZXMgZmxhZyAgICAgICovCiAgICAgfSwKICAgICBOVUxM
LAogICAgIChzcnRwX21hc3Rlcl9rZXlfdCAqKil0ZXN0X2tleXMsCi0gICAgMiwgICAgICAgICAv
KiBpbmRpY2F0ZXMgdGhlIG51bWJlciBvZiBNYXN0ZXIga2V5cyAqLwotICAgIE5VTEwsICAgICAg
LyogaW5kaWNhdGVzIHRoYXQgRUtUIGlzIG5vdCBpbiB1c2UgKi8KLSAgICAxMjgsICAgICAgIC8q
IHJlcGxheSB3aW5kb3cgc2l6ZSAqLwotICAgIDAsICAgICAgICAgLyogcmV0cmFuc21pc3Npb24g
bm90IGFsbG93ZWQgKi8KLSAgICBOVUxMLCAgICAgIC8qIG5vIGVuY3J5cHRlZCBleHRlbnNpb24g
aGVhZGVycyAqLwotICAgIDAsICAgICAgICAgLyogbGlzdCBvZiBlbmNyeXB0ZWQgZXh0ZW5zaW9u
IGhlYWRlcnMgaXMgZW1wdHkgKi8KKyAgICAyLCAgICAvKiBpbmRpY2F0ZXMgdGhlIG51bWJlciBv
ZiBNYXN0ZXIga2V5cyAgICAgICAgICAqLworICAgIE5VTEwsIC8qIGluZGljYXRlcyB0aGF0IEVL
VCBpcyBub3QgaW4gdXNlICAgICAgICAgICAgICovCisgICAgMTI4LCAgLyogcmVwbGF5IHdpbmRv
dyBzaXplICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICAwLCAgICAvKiByZXRyYW5z
bWlzc2lvbiBub3QgYWxsb3dlZCAgICAgICAgICAgICAgICAgICAqLworICAgIE5VTEwsIC8qIG5v
IGVuY3J5cHRlZCBleHRlbnNpb24gaGVhZGVycyAgICAgICAgICAgICAgICovCisgICAgMCwgICAg
LyogbGlzdCBvZiBlbmNyeXB0ZWQgZXh0ZW5zaW9uIGhlYWRlcnMgaXMgZW1wdHkgKi8KICAgICBO
VUxMCiB9OwogCisvLyBjbGFuZy1mb3JtYXQgb2ZmCiB1bnNpZ25lZCBjaGFyIHRlc3RfMjU2X2tl
eVs0Nl0gPSB7CiAgICAgMHhmMCwgMHhmMCwgMHg0OSwgMHgxNCwgMHhiNSwgMHgxMywgMHhmMiwg
MHg3NiwKICAgICAweDNhLCAweDFiLCAweDFmLCAweGExLCAweDMwLCAweGYxLCAweDBlLCAweDI5
LApAQCAtMzcwMSw4MCArMzY5MSw4NiBAQCBzcnRwX21hc3Rlcl9rZXlfdCAqdGVzdF8yNTZfa2V5
c1syXSA9IHsKICAgICAmbWFzdGVyX2tleV8xLAogICAgICZtYXN0ZXJfa2V5XzIKIH07CisvLyBj
bGFuZy1mb3JtYXQgb24KIAogY29uc3Qgc3J0cF9wb2xpY3lfdCBhZXNfMjU2X2htYWNfcG9saWN5
ID0gewotICAgIHsgc3NyY19hbnlfb3V0Ym91bmQsIDAgfSwgIC8qIFNTUkMgICAgICAgICAgICAg
ICAgICAgICAgICAgICAqLwotICAgIHsgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIFNSVFAg
cG9saWN5ICAgICAgICAgICAgICAgICAgICAqLworICAgIHsgc3NyY19hbnlfb3V0Ym91bmQsIDAg
fSwgLyogU1NSQyAqLworICAgIHsKKyAgICAgICAgLyogU1JUUCBwb2xpY3kgKi8KICAgICAgICAg
U1JUUF9BRVNfSUNNXzI1NiwgICAgICAgICAgICAgICAvKiBjaXBoZXIgdHlwZSAgICAgICAgICAg
ICAgICAgKi8KICAgICAgICAgU1JUUF9BRVNfSUNNXzI1Nl9LRVlfTEVOX1dTQUxULCAvKiBjaXBo
ZXIga2V5IGxlbmd0aCBpbiBvY3RldHMgKi8KLSAgICAgICAgU1JUUF9ITUFDX1NIQTEsICAgICAg
ICAgICAgIC8qIGF1dGhlbnRpY2F0aW9uIGZ1bmMgdHlwZSAgICAqLwotICAgICAgICAyMCwgICAg
ICAgICAgICAgICAgICAgIC8qIGF1dGgga2V5IGxlbmd0aCBpbiBvY3RldHMgICAqLwotICAgICAg
ICAxMCwgICAgICAgICAgICAgICAgICAgIC8qIGF1dGggdGFnIGxlbmd0aCBpbiBvY3RldHMgICAq
LwotICAgICAgICBzZWNfc2Vydl9jb25mX2FuZF9hdXRoIC8qIHNlY3VyaXR5IHNlcnZpY2VzIGZs
YWcgICAgICAqLworICAgICAgICBTUlRQX0hNQUNfU0hBMSwgICAgICAgICAgICAgICAgIC8qIGF1
dGhlbnRpY2F0aW9uIGZ1bmMgdHlwZSAgICAqLworICAgICAgICAyMCwgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIC8qIGF1dGgga2V5IGxlbmd0aCBpbiBvY3RldHMgICAqLworICAgICAgICAx
MCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIGF1dGggdGFnIGxlbmd0aCBpbiBvY3Rl
dHMgICAqLworICAgICAgICBzZWNfc2Vydl9jb25mX2FuZF9hdXRoICAgICAgICAgIC8qIHNlY3Vy
aXR5IHNlcnZpY2VzIGZsYWcgICAgICAqLwogICAgIH0sCi0gICAgeyAgICAgICAgICAgICAgICAg
ICAgICAgICAgLyogU1JUQ1AgcG9saWN5ICAgICAgICAgICAgICAgICAgICovCisgICAgeworICAg
ICAgICAvKiBTUlRDUCBwb2xpY3kgKi8KICAgICAgICAgU1JUUF9BRVNfSUNNXzI1NiwgICAgICAg
ICAgICAgICAvKiBjaXBoZXIgdHlwZSAgICAgICAgICAgICAgICAgKi8KICAgICAgICAgU1JUUF9B
RVNfSUNNXzI1Nl9LRVlfTEVOX1dTQUxULCAvKiBjaXBoZXIga2V5IGxlbmd0aCBpbiBvY3RldHMg
Ki8KLSAgICAgICAgU1JUUF9ITUFDX1NIQTEsICAgICAgICAgICAgIC8qIGF1dGhlbnRpY2F0aW9u
IGZ1bmMgdHlwZSAgICAqLwotICAgICAgICAyMCwgICAgICAgICAgICAgICAgICAgIC8qIGF1dGgg
a2V5IGxlbmd0aCBpbiBvY3RldHMgICAqLwotICAgICAgICAxMCwgICAgICAgICAgICAgICAgICAg
IC8qIGF1dGggdGFnIGxlbmd0aCBpbiBvY3RldHMgICAqLwotICAgICAgICBzZWNfc2Vydl9jb25m
X2FuZF9hdXRoIC8qIHNlY3VyaXR5IHNlcnZpY2VzIGZsYWcgICAgICAqLworICAgICAgICBTUlRQ
X0hNQUNfU0hBMSwgICAgICAgICAgICAgICAgIC8qIGF1dGhlbnRpY2F0aW9uIGZ1bmMgdHlwZSAg
ICAqLworICAgICAgICAyMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIGF1dGgga2V5
IGxlbmd0aCBpbiBvY3RldHMgICAqLworICAgICAgICAxMCwgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIC8qIGF1dGggdGFnIGxlbmd0aCBpbiBvY3RldHMgICAqLworICAgICAgICBzZWNfc2Vy
dl9jb25mX2FuZF9hdXRoICAgICAgICAgIC8qIHNlY3VyaXR5IHNlcnZpY2VzIGZsYWcgICAgICAq
LwogICAgIH0sCiAgICAgTlVMTCwKICAgICAoc3J0cF9tYXN0ZXJfa2V5X3QgKiopdGVzdF8yNTZf
a2V5cywKLSAgICAyLCAgICAgICAgIC8qIGluZGljYXRlcyB0aGUgbnVtYmVyIG9mIE1hc3RlciBr
ZXlzICovCi0gICAgTlVMTCwgICAgICAvKiBpbmRpY2F0ZXMgdGhhdCBFS1QgaXMgbm90IGluIHVz
ZSAqLwotICAgIDEyOCwgICAgICAgLyogcmVwbGF5IHdpbmRvdyBzaXplICovCi0gICAgMCwgICAg
ICAgICAvKiByZXRyYW5zbWlzc2lvbiBub3QgYWxsb3dlZCAqLwotICAgIE5VTEwsICAgICAgLyog
bm8gZW5jcnlwdGVkIGV4dGVuc2lvbiBoZWFkZXJzICovCi0gICAgMCwgICAgICAgICAvKiBsaXN0
IG9mIGVuY3J5cHRlZCBleHRlbnNpb24gaGVhZGVycyBpcyBlbXB0eSAqLworICAgIDIsICAgIC8q
IGluZGljYXRlcyB0aGUgbnVtYmVyIG9mIE1hc3RlciBrZXlzICAgICAgICAgICovCisgICAgTlVM
TCwgLyogaW5kaWNhdGVzIHRoYXQgRUtUIGlzIG5vdCBpbiB1c2UgICAgICAgICAgICAgKi8KKyAg
ICAxMjgsICAvKiByZXBsYXkgd2luZG93IHNpemUgICAgICAgICAgICAgICAgICAgICAgICAgICAq
LworICAgIDAsICAgIC8qIHJldHJhbnNtaXNzaW9uIG5vdCBhbGxvd2VkICAgICAgICAgICAgICAg
ICAgICovCisgICAgTlVMTCwgLyogbm8gZW5jcnlwdGVkIGV4dGVuc2lvbiBoZWFkZXJzICAgICAg
ICAgICAgICAgKi8KKyAgICAwLCAgICAvKiBsaXN0IG9mIGVuY3J5cHRlZCBleHRlbnNpb24gaGVh
ZGVycyBpcyBlbXB0eSAqLwogICAgIE5VTEwKIH07CiAKKy8vIGNsYW5nLWZvcm1hdCBvZmYKIHVp
bnQ4X3QgZWt0X3Rlc3Rfa2V5WzE2XSA9IHsKICAgICAweDc3LCAweDI2LCAweDlkLCAweGFjLCAw
eDE2LCAweGEzLCAweDI4LCAweGNhLAogICAgIDB4OGUsIDB4YzksIDB4NjgsIDB4NGIsIDB4Y2Ms
IDB4YzQsIDB4ZDIsIDB4MWIKIH07CisvLyBjbGFuZy1mb3JtYXQgb24KIAogI2luY2x1ZGUgImVr
dC5oIgogCisvLyBjbGFuZy1mb3JtYXQgb2ZmCiBzcnRwX2VrdF9wb2xpY3lfY3R4X3QgZWt0X3Rl
c3RfcG9saWN5ID0gewogICAgIDB4YTVhNSwgICAgICAgICAgICAgICAgICAgICAvKiBTUEkgKi8K
ICAgICBTUlRQX0VLVF9DSVBIRVJfQUVTXzEyOF9FQ0IsCiAgICAgZWt0X3Rlc3Rfa2V5LAogICAg
IE5VTEwKIH07CisvLyBjbGFuZy1mb3JtYXQgb24KIAogY29uc3Qgc3J0cF9wb2xpY3lfdCBobWFj
X29ubHlfd2l0aF9la3RfcG9saWN5ID0gewotICAgIHsgc3NyY19hbnlfb3V0Ym91bmQsIDAgfSwg
LyogU1NSQyAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgeyBzc3JjX2FueV9vdXRib3Vu
ZCwgMCB9LCAvKiBTU1JDICovCiAgICAgewotICAgICAgICBTUlRQX05VTExfQ0lQSEVSLCAgICAg
ICAgICAvKiBjaXBoZXIgdHlwZSAgICAgICAgICAgICAgICAgKi8KLSAgICAgICAgMCwgICAgICAg
ICAgICAgICAgICAgIC8qIGNpcGhlciBrZXkgbGVuZ3RoIGluIG9jdGV0cyAqLwotICAgICAgICBT
UlRQX0hNQUNfU0hBMSwgICAgICAgICAgICAvKiBhdXRoZW50aWNhdGlvbiBmdW5jIHR5cGUgICAg
Ki8KLSAgICAgICAgMjAsICAgICAgICAgICAgICAgICAgIC8qIGF1dGgga2V5IGxlbmd0aCBpbiBv
Y3RldHMgICAqLwotICAgICAgICA0LCAgICAgICAgICAgICAgICAgICAgLyogYXV0aCB0YWcgbGVu
Z3RoIGluIG9jdGV0cyAgICovCi0gICAgICAgIHNlY19zZXJ2X2F1dGggICAgICAgICAvKiBzZWN1
cml0eSBzZXJ2aWNlcyBmbGFnICAgICAgKi8KKyAgICAgICAgU1JUUF9OVUxMX0NJUEhFUiwgLyog
Y2lwaGVyIHR5cGUgICAgICAgICAgICAgICAgICovCisgICAgICAgIDAsICAgICAgICAgICAgICAg
IC8qIGNpcGhlciBrZXkgbGVuZ3RoIGluIG9jdGV0cyAqLworICAgICAgICBTUlRQX0hNQUNfU0hB
MSwgICAvKiBhdXRoZW50aWNhdGlvbiBmdW5jIHR5cGUgICAgKi8KKyAgICAgICAgMjAsICAgICAg
ICAgICAgICAgLyogYXV0aCBrZXkgbGVuZ3RoIGluIG9jdGV0cyAgICovCisgICAgICAgIDQsICAg
ICAgICAgICAgICAgIC8qIGF1dGggdGFnIGxlbmd0aCBpbiBvY3RldHMgICAqLworICAgICAgICBz
ZWNfc2Vydl9hdXRoICAgICAvKiBzZWN1cml0eSBzZXJ2aWNlcyBmbGFnICAgICAgKi8KICAgICB9
LAogICAgIHsKLSAgICAgICAgU1JUUF9OVUxMX0NJUEhFUiwgICAgICAgIC8qIGNpcGhlciB0eXBl
ICAgICAgICAgICAgICAgICAqLwotICAgICAgICAwLCAgICAgICAgICAgICAgICAgIC8qIGNpcGhl
ciBrZXkgbGVuZ3RoIGluIG9jdGV0cyAqLwotICAgICAgICBTUlRQX0hNQUNfU0hBMSwgICAgICAg
ICAgLyogYXV0aGVudGljYXRpb24gZnVuYyB0eXBlICAgICovCi0gICAgICAgIDIwLCAgICAgICAg
ICAgICAgICAgLyogYXV0aCBrZXkgbGVuZ3RoIGluIG9jdGV0cyAgICovCi0gICAgICAgIDQsICAg
ICAgICAgICAgICAgICAgLyogYXV0aCB0YWcgbGVuZ3RoIGluIG9jdGV0cyAgICovCi0gICAgICAg
IHNlY19zZXJ2X2F1dGggICAgICAgLyogc2VjdXJpdHkgc2VydmljZXMgZmxhZyAgICAgICovCisg
ICAgICAgIFNSVFBfTlVMTF9DSVBIRVIsIC8qIGNpcGhlciB0eXBlICAgICAgICAgICAgICAgICAq
LworICAgICAgICAwLCAgICAgICAgICAgICAgICAvKiBjaXBoZXIga2V5IGxlbmd0aCBpbiBvY3Rl
dHMgKi8KKyAgICAgICAgU1JUUF9ITUFDX1NIQTEsICAgLyogYXV0aGVudGljYXRpb24gZnVuYyB0
eXBlICAgICovCisgICAgICAgIDIwLCAgICAgICAgICAgICAgIC8qIGF1dGgga2V5IGxlbmd0aCBp
biBvY3RldHMgICAqLworICAgICAgICA0LCAgICAgICAgICAgICAgICAvKiBhdXRoIHRhZyBsZW5n
dGggaW4gb2N0ZXRzICAgKi8KKyAgICAgICAgc2VjX3NlcnZfYXV0aCAgICAgLyogc2VjdXJpdHkg
c2VydmljZXMgZmxhZyAgICAgICovCiAgICAgfSwKICAgICBOVUxMLAogICAgIChzcnRwX21hc3Rl
cl9rZXlfdCAqKil0ZXN0X2tleXMsCi0gICAgMiwgICAgICAgICAgICAgICAgICAgICAvKiBpbmRp
Y2F0ZXMgdGhlIG51bWJlciBvZiBNYXN0ZXIga2V5cyAqLwotICAgICZla3RfdGVzdF9wb2xpY3ks
ICAgICAgLyogaW5kaWNhdGVzIHRoYXQgRUtUIGlzIG5vdCBpbiB1c2UgKi8KLSAgICAxMjgsICAg
ICAgICAgICAgICAgICAgIC8qIHJlcGxheSB3aW5kb3cgc2l6ZSAqLwotICAgIDAsICAgICAgICAg
ICAgICAgICAgICAgLyogcmV0cmFuc21pc3Npb24gbm90IGFsbG93ZWQgKi8KLSAgICBOVUxMLCAg
ICAgICAgICAgICAgICAgIC8qIG5vIGVuY3J5cHRlZCBleHRlbnNpb24gaGVhZGVycyAqLwotICAg
IDAsICAgICAgICAgICAgICAgICAgICAgLyogbGlzdCBvZiBlbmNyeXB0ZWQgZXh0ZW5zaW9uIGhl
YWRlcnMgaXMgZW1wdHkgKi8KKyAgICAyLCAgICAgICAgICAgICAgICAvKiBpbmRpY2F0ZXMgdGhl
IG51bWJlciBvZiBNYXN0ZXIga2V5cyAgICAgICAgICAqLworICAgICZla3RfdGVzdF9wb2xpY3ks
IC8qIGluZGljYXRlcyB0aGF0IEVLVCBpcyBub3QgaW4gdXNlICAgICAgICAgICAgICovCisgICAg
MTI4LCAgICAgICAgICAgICAgLyogcmVwbGF5IHdpbmRvdyBzaXplICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKi8KKyAgICAwLCAgICAgICAgICAgICAgICAvKiByZXRyYW5zbWlzc2lvbiBub3Qg
YWxsb3dlZCAgICAgICAgICAgICAgICAgICAqLworICAgIE5VTEwsICAgICAgICAgICAgIC8qIG5v
IGVuY3J5cHRlZCBleHRlbnNpb24gaGVhZGVycyAgICAgICAgICAgICAgICovCisgICAgMCwgICAg
ICAgICAgICAgICAgLyogbGlzdCBvZiBlbmNyeXB0ZWQgZXh0ZW5zaW9uIGhlYWRlcnMgaXMgZW1w
dHkgKi8KICAgICBOVUxMCiB9OwogCi0KIC8qCiAgKiBhbiBhcnJheSBvZiBwb2ludGVycyB0byB0
aGUgcG9saWNpZXMgbGlzdGVkIGFib3ZlCiAgKgpAQCAtMzc4NSw4ICszNzgxLDggQEAgY29uc3Qg
c3J0cF9wb2xpY3lfdCBobWFjX29ubHlfd2l0aF9la3RfcG9saWN5ID0gewogICogYWRkIHRvIHRo
aXMgbGlzdCwgeW91IHNob3VsZCBkbyBpdCBhdCB0aGUgZW5kLgogICovCiAKLWNvbnN0IHNydHBf
cG9saWN5X3QgKgotcG9saWN5X2FycmF5W10gPSB7CisvLyBjbGFuZy1mb3JtYXQgb2ZmCitjb25z
dCBzcnRwX3BvbGljeV90ICpwb2xpY3lfYXJyYXlbXSA9IHsKICAgICAmaG1hY19vbmx5X3BvbGlj
eSwKICAgICAmYWVzX29ubHlfcG9saWN5LAogICAgICZkZWZhdWx0X3BvbGljeSwKQEAgLTM4MDEs
MzIgKzM3OTcsMzUgQEAgcG9saWN5X2FycmF5W10gPSB7CiAgICAgJmhtYWNfb25seV93aXRoX2Vr
dF9wb2xpY3ksCiAgICAgTlVMTAogfTsKKy8vIGNsYW5nLWZvcm1hdCBvbgogCiBjb25zdCBzcnRw
X3BvbGljeV90IHdpbGRjYXJkX3BvbGljeSA9IHsKLSAgICB7IHNzcmNfYW55X291dGJvdW5kLCAw
IH0sICAvKiBTU1JDICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICB7ICAgICAgICAgICAg
ICAgICAgICAgICAgICAvKiBTUlRQIHBvbGljeSAgICAgICAgICAgICAgICAgICAgKi8KLSAgICAg
ICAgU1JUUF9BRVNfSUNNXzEyOCwgICAgICAgICAgIC8qIGNpcGhlciB0eXBlICAgICAgICAgICAg
ICAgICAqLworICAgIHsgc3NyY19hbnlfb3V0Ym91bmQsIDAgfSwgLyogU1NSQyAqLworICAgIHsK
KyAgICAgICAgLyogU1JUUCBwb2xpY3kgKi8KKyAgICAgICAgU1JUUF9BRVNfSUNNXzEyOCwgICAg
ICAgICAgICAgICAvKiBjaXBoZXIgdHlwZSAgICAgICAgICAgICAgICAgKi8KICAgICAgICAgU1JU
UF9BRVNfSUNNXzEyOF9LRVlfTEVOX1dTQUxULCAvKiBjaXBoZXIga2V5IGxlbmd0aCBpbiBvY3Rl
dHMgKi8KLSAgICAgICAgU1JUUF9ITUFDX1NIQTEsICAgICAgICAgICAgIC8qIGF1dGhlbnRpY2F0
aW9uIGZ1bmMgdHlwZSAgICAqLwotICAgICAgICAxNiwgICAgICAgICAgICAgICAgICAgIC8qIGF1
dGgga2V5IGxlbmd0aCBpbiBvY3RldHMgICAqLwotICAgICAgICAxMCwgICAgICAgICAgICAgICAg
ICAgIC8qIGF1dGggdGFnIGxlbmd0aCBpbiBvY3RldHMgICAqLwotICAgICAgICBzZWNfc2Vydl9j
b25mX2FuZF9hdXRoIC8qIHNlY3VyaXR5IHNlcnZpY2VzIGZsYWcgICAgICAqLworICAgICAgICBT
UlRQX0hNQUNfU0hBMSwgICAgICAgICAgICAgICAgIC8qIGF1dGhlbnRpY2F0aW9uIGZ1bmMgdHlw
ZSAgICAqLworICAgICAgICAxNiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIGF1dGgg
a2V5IGxlbmd0aCBpbiBvY3RldHMgICAqLworICAgICAgICAxMCwgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIGF1dGggdGFnIGxlbmd0aCBpbiBvY3RldHMgICAqLworICAgICAgICBzZWNf
c2Vydl9jb25mX2FuZF9hdXRoICAgICAgICAgIC8qIHNlY3VyaXR5IHNlcnZpY2VzIGZsYWcgICAg
ICAqLwogICAgIH0sCi0gICAgeyAgICAgICAgICAgICAgICAgICAgICAgICAgLyogU1JUQ1AgcG9s
aWN5ICAgICAgICAgICAgICAgICAgICovCi0gICAgICAgIFNSVFBfQUVTX0lDTV8xMjgsICAgICAg
ICAgICAvKiBjaXBoZXIgdHlwZSAgICAgICAgICAgICAgICAgKi8KKyAgICB7CisgICAgICAgIC8q
IFNSVENQIHBvbGljeSAqLworICAgICAgICBTUlRQX0FFU19JQ01fMTI4LCAgICAgICAgICAgICAg
IC8qIGNpcGhlciB0eXBlICAgICAgICAgICAgICAgICAqLwogICAgICAgICBTUlRQX0FFU19JQ01f
MTI4X0tFWV9MRU5fV1NBTFQsIC8qIGNpcGhlciBrZXkgbGVuZ3RoIGluIG9jdGV0cyAqLwotICAg
ICAgICBTUlRQX0hNQUNfU0hBMSwgICAgICAgICAgICAgLyogYXV0aGVudGljYXRpb24gZnVuYyB0
eXBlICAgICovCi0gICAgICAgIDE2LCAgICAgICAgICAgICAgICAgICAgLyogYXV0aCBrZXkgbGVu
Z3RoIGluIG9jdGV0cyAgICovCi0gICAgICAgIDEwLCAgICAgICAgICAgICAgICAgICAgLyogYXV0
aCB0YWcgbGVuZ3RoIGluIG9jdGV0cyAgICovCi0gICAgICAgIHNlY19zZXJ2X2NvbmZfYW5kX2F1
dGggLyogc2VjdXJpdHkgc2VydmljZXMgZmxhZyAgICAgICovCisgICAgICAgIFNSVFBfSE1BQ19T
SEExLCAgICAgICAgICAgICAgICAgLyogYXV0aGVudGljYXRpb24gZnVuYyB0eXBlICAgICovCisg
ICAgICAgIDE2LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogYXV0aCBrZXkgbGVuZ3Ro
IGluIG9jdGV0cyAgICovCisgICAgICAgIDEwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
LyogYXV0aCB0YWcgbGVuZ3RoIGluIG9jdGV0cyAgICovCisgICAgICAgIHNlY19zZXJ2X2NvbmZf
YW5kX2F1dGggICAgICAgICAgLyogc2VjdXJpdHkgc2VydmljZXMgZmxhZyAgICAgICovCiAgICAg
fSwKICAgICB0ZXN0X2tleSwKICAgICBOVUxMLAogICAgIDAsCiAgICAgTlVMTCwKLSAgICAxMjgs
ICAgICAgICAgICAgICAgICAvKiByZXBsYXkgd2luZG93IHNpemUgKi8KLSAgICAwLCAgICAgICAg
ICAgICAgICAgICAvKiByZXRyYW5zbWlzc2lvbiBub3QgYWxsb3dlZCAqLwotICAgIE5VTEwsICAg
ICAgICAgICAgICAgIC8qIG5vIGVuY3J5cHRlZCBleHRlbnNpb24gaGVhZGVycyAqLwotICAgIDAs
ICAgICAgICAgICAgICAgICAgIC8qIGxpc3Qgb2YgZW5jcnlwdGVkIGV4dGVuc2lvbiBoZWFkZXJz
IGlzIGVtcHR5ICovCisgICAgMTI4LCAgLyogcmVwbGF5IHdpbmRvdyBzaXplICAgICAgICAgICAg
ICAgICAgICAgICAgICAgKi8KKyAgICAwLCAgICAvKiByZXRyYW5zbWlzc2lvbiBub3QgYWxsb3dl
ZCAgICAgICAgICAgICAgICAgICAqLworICAgIE5VTEwsIC8qIG5vIGVuY3J5cHRlZCBleHRlbnNp
b24gaGVhZGVycyAgICAgICAgICAgICAgICovCisgICAgMCwgICAgLyogbGlzdCBvZiBlbmNyeXB0
ZWQgZXh0ZW5zaW9uIGhlYWRlcnMgaXMgZW1wdHkgKi8KICAgICBOVUxMCiB9OwpkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRw
L3Rlc3QvdGVzdF9zcnRwLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnNydHAvdGVzdC90ZXN0X3NydHAuYwppbmRleCAyMjU2NTU3M2RjYjA2Y2Qx
MjdkYTdmZWE4Yjc4ZGIyY2JiOGE4MzQ2Li5jZGM5YjVkNWI3NjI4Nzg2MDgyMjIyZDM4MjRkY2E1
YTEyZDNmMGRkIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnNydHAvdGVzdC90ZXN0X3NydHAuYworKysgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvdGVzdC90ZXN0X3NydHAu
YwpAQCAtNzIsMTMgKzcyLDEzIEBAIHZvaWQgc3J0cF9jYWxjX2FlYWRfaXZfc3J0Y3BfZGlzdGlu
Y3RfaXZfcGVyX3NlcXVlbmNlX251bWJlcih2b2lkKTsKICAqIGl0ZW0gaXMgdGhlIHRlc3QgZnVu
Y3Rpb24uCiAgKi8KIAotVEVTVF9MSVNUID0ge3sic3J0cF9jYWxjX2FlYWRfaXZfc3J0Y3BfYWxs
X3plcm9faW5wdXRfeWllbGRfemVyb19vdXRwdXQoKSIsCi0gICAgICAgICAgICAgIHNydHBfY2Fs
Y19hZWFkX2l2X3NydGNwX2FsbF96ZXJvX2lucHV0X3lpZWxkX3plcm9fb3V0cHV0fSwKLSAgICAg
ICAgICAgICB7InNydHBfY2FsY19hZWFkX2l2X3NydGNwX3NlcV9udW1fb3Zlcl8weDdGRkZGRkZG
X2JhZF9wYXJhbSgpIiwKLSAgICAgICAgICAgICAgc3J0cF9jYWxjX2FlYWRfaXZfc3J0Y3Bfc2Vx
X251bV9vdmVyXzB4N0ZGRkZGRkZfYmFkX3BhcmFtfSwKLSAgICAgICAgICAgICB7InNydHBfY2Fs
Y19hZWFkX2l2X3NydGNwX2Rpc3RpbmN0X2l2X3Blcl9zZXF1ZW5jZV9udW1iZXIoKSIsCi0gICAg
ICAgICAgICAgIHNydHBfY2FsY19hZWFkX2l2X3NydGNwX2Rpc3RpbmN0X2l2X3Blcl9zZXF1ZW5j
ZV9udW1iZXJ9LAotICAgICAgICAgICAgIHtOVUxMfSAvKiBFbmQgb2YgdGVzdHMgKi99OworVEVT
VF9MSVNUID0geyB7ICJzcnRwX2NhbGNfYWVhZF9pdl9zcnRjcF9hbGxfemVyb19pbnB1dF95aWVs
ZF96ZXJvX291dHB1dCgpIiwKKyAgICAgICAgICAgICAgICBzcnRwX2NhbGNfYWVhZF9pdl9zcnRj
cF9hbGxfemVyb19pbnB1dF95aWVsZF96ZXJvX291dHB1dCB9LAorICAgICAgICAgICAgICB7ICJz
cnRwX2NhbGNfYWVhZF9pdl9zcnRjcF9zZXFfbnVtX292ZXJfMHg3RkZGRkZGRl9iYWRfcGFyYW0o
KSIsCisgICAgICAgICAgICAgICAgc3J0cF9jYWxjX2FlYWRfaXZfc3J0Y3Bfc2VxX251bV9vdmVy
XzB4N0ZGRkZGRkZfYmFkX3BhcmFtIH0sCisgICAgICAgICAgICAgIHsgInNydHBfY2FsY19hZWFk
X2l2X3NydGNwX2Rpc3RpbmN0X2l2X3Blcl9zZXF1ZW5jZV9udW1iZXIoKSIsCisgICAgICAgICAg
ICAgICAgc3J0cF9jYWxjX2FlYWRfaXZfc3J0Y3BfZGlzdGluY3RfaXZfcGVyX3NlcXVlbmNlX251
bWJlciB9LAorICAgICAgICAgICAgICB7IE5VTEwgfSAvKiBFbmQgb2YgdGVzdHMgKi8gfTsKIAog
LyoKICAqIEltcGxlbWVudGF0aW9uLgpAQCAtMTQ2LDkgKzE0Niw5IEBAIHZvaWQgc3J0cF9jYWxj
X2FlYWRfaXZfc3J0Y3Bfc2VxX251bV9vdmVyXzB4N0ZGRkZGRkZfYmFkX3BhcmFtKCkKICAqLwog
dm9pZCBzcnRwX2NhbGNfYWVhZF9pdl9zcnRjcF9kaXN0aW5jdF9pdl9wZXJfc2VxdWVuY2VfbnVt
YmVyKCkKIHsKKyNkZWZpbmUgU0FNUExFX0NPVU5UICgzKQogICAgIC8vIFByZWNvbmRpdGlvbnMK
ICAgICAvLyBUZXN0IGVhY2ggc2lnbmlmaWNhbnQgYml0IGhpZ2ggaW4gZWFjaCBmdWxsIGJ5dGUu
Ci0gICAgI2RlZmluZSBTQU1QTEVfQ09VTlQgKDMpCiAgICAgc3J0cF9zZXNzaW9uX2tleXNfdCBz
ZXNzaW9uX2tleXM7CiAgICAgc3J0Y3BfaGRyX3QgaGVhZGVyOwogICAgIHYxMjhfdCBvdXRwdXRf
aXZbU0FNUExFX0NPVU5UXTsKQEAgLTE3MywxMyArMTczLDEzIEBAIHZvaWQgc3J0cF9jYWxjX2Fl
YWRfaXZfc3J0Y3BfZGlzdGluY3RfaXZfcGVyX3NlcXVlbmNlX251bWJlcigpCiAgICAgc2l6ZV90
IGkgPSAwOwogICAgIGZvciAoaSA9IDA7IGkgPCBTQU1QTEVfQ09VTlQ7IGkrKykgewogICAgICAg
ICBURVNUX0NIRUNLKHNydHBfY2FsY19hZWFkX2l2X3NydGNwKCZzZXNzaW9uX2tleXMsICZvdXRw
dXRfaXZbaV0sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2Vx
dWVuY2VfbnVtW2ldLCAmaGVhZGVyKQotICAgICAgICAgICAgICAgICAgID09IHNydHBfZXJyX3N0
YXR1c19vayk7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2Vx
dWVuY2VfbnVtW2ldLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICZoZWFkZXIpID09IHNydHBfZXJyX3N0YXR1c19vayk7CiAgICAgfQogCiAgICAgLy8gVGhlbiBh
bGwgSVZzIGFyZSBhcyBleHBlY3RlZAogICAgIGZvciAoaSA9IDA7IGkgPCBTQU1QTEVfQ09VTlQ7
IGkrKykgewogICAgICAgICBURVNUX0NIRUNLKG1lbWNtcCgmZmluYWxfaXZbaV0sICZvdXRwdXRf
aXZbaV0sIHNpemVvZih2MTI4X3QpKSA9PSAwKTsKICAgICB9Ci0gICAgI3VuZGVmIFNBTVBMRV9D
T1VOVAorI3VuZGVmIFNBTVBMRV9DT1VOVAogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL3Rlc3QvdXRpbC5jIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL3Rlc3Qv
dXRpbC5jCmluZGV4IDc1MmE2YTRjN2E4NGZlM2EwYzFhMDk4N2NmZWRmYmJkZWIyMTZlNjYuLmVi
MjAzZjRjNGFmZWU5ODJiYjI0OTM4MGFlNjYxZTE0MTc3MDFhMzYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC90ZXN0L3V0
aWwuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L2xpYnNydHAvdGVzdC91dGlsLmMKQEAgLTQ5LDM4ICs0OSw2MSBAQAogCiBjaGFyIGJpdF9zdHJp
bmdbTUFYX1BSSU5UX1NUUklOR19MRU5dOwogCi1zdGF0aWMgaW5saW5lIGludCBoZXhfY2hhcl90
b19uaWJibGUgKHVpbnQ4X3QgYykKK3N0YXRpYyBpbmxpbmUgaW50IGhleF9jaGFyX3RvX25pYmJs
ZSh1aW50OF90IGMpCiB7CiAgICAgc3dpdGNoIChjKSB7Ci0gICAgY2FzZSAoJzAnKTogcmV0dXJu
IDB4MDsKLSAgICBjYXNlICgnMScpOiByZXR1cm4gMHgxOwotICAgIGNhc2UgKCcyJyk6IHJldHVy
biAweDI7Ci0gICAgY2FzZSAoJzMnKTogcmV0dXJuIDB4MzsKLSAgICBjYXNlICgnNCcpOiByZXR1
cm4gMHg0OwotICAgIGNhc2UgKCc1Jyk6IHJldHVybiAweDU7Ci0gICAgY2FzZSAoJzYnKTogcmV0
dXJuIDB4NjsKLSAgICBjYXNlICgnNycpOiByZXR1cm4gMHg3OwotICAgIGNhc2UgKCc4Jyk6IHJl
dHVybiAweDg7Ci0gICAgY2FzZSAoJzknKTogcmV0dXJuIDB4OTsKLSAgICBjYXNlICgnYScpOiBy
ZXR1cm4gMHhhOwotICAgIGNhc2UgKCdBJyk6IHJldHVybiAweGE7Ci0gICAgY2FzZSAoJ2InKTog
cmV0dXJuIDB4YjsKLSAgICBjYXNlICgnQicpOiByZXR1cm4gMHhiOwotICAgIGNhc2UgKCdjJyk6
IHJldHVybiAweGM7Ci0gICAgY2FzZSAoJ0MnKTogcmV0dXJuIDB4YzsKLSAgICBjYXNlICgnZCcp
OiByZXR1cm4gMHhkOwotICAgIGNhc2UgKCdEJyk6IHJldHVybiAweGQ7Ci0gICAgY2FzZSAoJ2Un
KTogcmV0dXJuIDB4ZTsKLSAgICBjYXNlICgnRScpOiByZXR1cm4gMHhlOwotICAgIGNhc2UgKCdm
Jyk6IHJldHVybiAweGY7Ci0gICAgY2FzZSAoJ0YnKTogcmV0dXJuIDB4ZjsKLSAgICBkZWZhdWx0
OiByZXR1cm4gLTE7IC8qIHRoaXMgZmxhZ3MgYW4gZXJyb3IgKi8KKyAgICBjYXNlICgnMCcpOgor
ICAgICAgICByZXR1cm4gMHgwOworICAgIGNhc2UgKCcxJyk6CisgICAgICAgIHJldHVybiAweDE7
CisgICAgY2FzZSAoJzInKToKKyAgICAgICAgcmV0dXJuIDB4MjsKKyAgICBjYXNlICgnMycpOgor
ICAgICAgICByZXR1cm4gMHgzOworICAgIGNhc2UgKCc0Jyk6CisgICAgICAgIHJldHVybiAweDQ7
CisgICAgY2FzZSAoJzUnKToKKyAgICAgICAgcmV0dXJuIDB4NTsKKyAgICBjYXNlICgnNicpOgor
ICAgICAgICByZXR1cm4gMHg2OworICAgIGNhc2UgKCc3Jyk6CisgICAgICAgIHJldHVybiAweDc7
CisgICAgY2FzZSAoJzgnKToKKyAgICAgICAgcmV0dXJuIDB4ODsKKyAgICBjYXNlICgnOScpOgor
ICAgICAgICByZXR1cm4gMHg5OworICAgIGNhc2UgKCdhJyk6CisgICAgICAgIHJldHVybiAweGE7
CisgICAgY2FzZSAoJ0EnKToKKyAgICAgICAgcmV0dXJuIDB4YTsKKyAgICBjYXNlICgnYicpOgor
ICAgICAgICByZXR1cm4gMHhiOworICAgIGNhc2UgKCdCJyk6CisgICAgICAgIHJldHVybiAweGI7
CisgICAgY2FzZSAoJ2MnKToKKyAgICAgICAgcmV0dXJuIDB4YzsKKyAgICBjYXNlICgnQycpOgor
ICAgICAgICByZXR1cm4gMHhjOworICAgIGNhc2UgKCdkJyk6CisgICAgICAgIHJldHVybiAweGQ7
CisgICAgY2FzZSAoJ0QnKToKKyAgICAgICAgcmV0dXJuIDB4ZDsKKyAgICBjYXNlICgnZScpOgor
ICAgICAgICByZXR1cm4gMHhlOworICAgIGNhc2UgKCdFJyk6CisgICAgICAgIHJldHVybiAweGU7
CisgICAgY2FzZSAoJ2YnKToKKyAgICAgICAgcmV0dXJuIDB4ZjsKKyAgICBjYXNlICgnRicpOgor
ICAgICAgICByZXR1cm4gMHhmOworICAgIGRlZmF1bHQ6CisgICAgICAgIHJldHVybiAtMTsgLyog
dGhpcyBmbGFncyBhbiBlcnJvciAqLwogICAgIH0KICAgICAvKiBOT1RSRUFDSEVEICovCiAgICAg
cmV0dXJuIC0xOyAvKiB0aGlzIGtlZXBzIGNvbXBpbGVycyBmcm9tIGNvbXBsYWluaW5nICovCiB9
CiAKLXVpbnQ4X3QgbmliYmxlX3RvX2hleF9jaGFyICh1aW50OF90IG5pYmJsZSkKK3VpbnQ4X3Qg
bmliYmxlX3RvX2hleF9jaGFyKHVpbnQ4X3QgbmliYmxlKQogewogICAgIGNoYXIgYnVmWzE2XSA9
IHsgJzAnLCAnMScsICcyJywgJzMnLCAnNCcsICc1JywgJzYnLCAnNycsCiAgICAgICAgICAgICAg
ICAgICAgICAnOCcsICc5JywgJ2EnLCAnYicsICdjJywgJ2QnLCAnZScsICdmJyB9OwpAQCAtOTIs
NyArMTE1LDcgQEAgdWludDhfdCBuaWJibGVfdG9faGV4X2NoYXIgKHVpbnQ4X3QgbmliYmxlKQog
ICogaGV4X3N0cmluZ190b19vY3RldF9zdHJpbmcgY29udmVydHMgYSBoZXhhZGVjaW1hbCBzdHJp
bmcKICAqIG9mIGxlbmd0aCAyICogbGVuIHRvIGEgcmF3IG9jdGV0IHN0cmluZyBvZiBsZW5ndGgg
bGVuCiAgKi8KLWludCBoZXhfc3RyaW5nX3RvX29jdGV0X3N0cmluZyAoY2hhciAqcmF3LCBjaGFy
ICpoZXgsIGludCBsZW4pCitpbnQgaGV4X3N0cmluZ190b19vY3RldF9zdHJpbmcoY2hhciAqcmF3
LCBjaGFyICpoZXgsIGludCBsZW4pCiB7CiAgICAgdWludDhfdCB4OwogICAgIGludCB0bXA7CkBA
IC0xMTgsOSArMTQxLDkgQEAgaW50IGhleF9zdHJpbmdfdG9fb2N0ZXRfc3RyaW5nIChjaGFyICpy
YXcsIGNoYXIgKmhleCwgaW50IGxlbikKICAgICByZXR1cm4gaGV4X2xlbjsKIH0KIAotY2hhciAq
IG9jdGV0X3N0cmluZ19oZXhfc3RyaW5nIChjb25zdCB2b2lkICpzLCBpbnQgbGVuZ3RoKQorY2hh
ciAqb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcoY29uc3Qgdm9pZCAqcywgaW50IGxlbmd0aCkKIHsK
LSAgICBjb25zdCB1aW50OF90ICpzdHIgPSAoY29uc3QgdWludDhfdCopczsKKyAgICBjb25zdCB1
aW50OF90ICpzdHIgPSAoY29uc3QgdWludDhfdCAqKXM7CiAgICAgaW50IGk7CiAKICAgICAvKiBk
b3VibGUgbGVuZ3RoLCBzaW5jZSBvbmUgb2N0ZXQgdGFrZXMgdHdvIGhleCBjaGFyYWN0ZXJzICov
CkBAIC0xMzIsNyArMTU1LDcgQEAgY2hhciAqIG9jdGV0X3N0cmluZ19oZXhfc3RyaW5nIChjb25z
dCB2b2lkICpzLCBpbnQgbGVuZ3RoKQogICAgIH0KIAogICAgIGZvciAoaSA9IDA7IGkgPCBsZW5n
dGg7IGkgKz0gMikgewotICAgICAgICBiaXRfc3RyaW5nW2ldICAgPSBuaWJibGVfdG9faGV4X2No
YXIoKnN0ciA+PiA0KTsKKyAgICAgICAgYml0X3N0cmluZ1tpXSA9IG5pYmJsZV90b19oZXhfY2hh
cigqc3RyID4+IDQpOwogICAgICAgICBiaXRfc3RyaW5nW2kgKyAxXSA9IG5pYmJsZV90b19oZXhf
Y2hhcigqc3RyKysgJiAweEYpOwogICAgIH0KICAgICBiaXRfc3RyaW5nW2ldID0gMDsgLyogbnVs
bCB0ZXJtaW5hdGUgc3RyaW5nICovCkBAIC0xNDIsOSArMTY1LDkgQEAgY2hhciAqIG9jdGV0X3N0
cmluZ19oZXhfc3RyaW5nIChjb25zdCB2b2lkICpzLCBpbnQgbGVuZ3RoKQogc3RhdGljIGNvbnN0
IGNoYXIgYjY0Y2hhcnNbXSA9ICJBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWiIKICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAiYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2
Nzg5Ky8iOwogCi1zdGF0aWMgaW50IGJhc2U2NF9ibG9ja190b19vY3RldF90cmlwbGUgKGNoYXIg
Km91dCwgY2hhciAqaW4pCitzdGF0aWMgaW50IGJhc2U2NF9ibG9ja190b19vY3RldF90cmlwbGUo
Y2hhciAqb3V0LCBjaGFyICppbikKIHsKLSAgICB1bnNpZ25lZCBjaGFyIHNleHRldHNbNF0gPSB7
MH07CisgICAgdW5zaWduZWQgY2hhciBzZXh0ZXRzWzRdID0geyAwIH07CiAgICAgaW50IGogPSAw
OwogICAgIGludCBpOwogCkBAIC0xNTIsNyArMTc1LDkgQEAgc3RhdGljIGludCBiYXNlNjRfYmxv
Y2tfdG9fb2N0ZXRfdHJpcGxlIChjaGFyICpvdXQsIGNoYXIgKmluKQogICAgICAgICBjaGFyICpw
ID0gc3RyY2hyKGI2NGNoYXJzLCBpbltpXSk7CiAgICAgICAgIGlmIChwICE9IE5VTEwpIHsKICAg
ICAgICAgICAgIHNleHRldHNbaV0gPSBwIC0gYjY0Y2hhcnM7Ci0gICAgICAgIH0gZWxzZXsgIGor
KzsgfQorICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgaisrOworICAgICAgICB9CiAgICAg
fQogCiAgICAgb3V0WzBdID0gKHNleHRldHNbMF0gPDwgMikgfCAoc2V4dGV0c1sxXSA+PiA0KTsK
QEAgLTE2NSw3ICsxOTAsNyBAQCBzdGF0aWMgaW50IGJhc2U2NF9ibG9ja190b19vY3RldF90cmlw
bGUgKGNoYXIgKm91dCwgY2hhciAqaW4pCiAgICAgcmV0dXJuIGo7CiB9CiAKLWludCBiYXNlNjRf
c3RyaW5nX3RvX29jdGV0X3N0cmluZyAoY2hhciAqb3V0LCBpbnQgKnBhZCwgY2hhciAqaW4sIGlu
dCBsZW4pCitpbnQgYmFzZTY0X3N0cmluZ190b19vY3RldF9zdHJpbmcoY2hhciAqb3V0LCBpbnQg
KnBhZCwgY2hhciAqaW4sIGludCBsZW4pCiB7CiAgICAgaW50IGsgPSAwOwogICAgIGludCBpID0g
MDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlic3J0cC90ZXN0L3V0aWwuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC90ZXN0L3V0aWwuaAppbmRleCBkYjU4YzI0NjYxY2Rj
NDU1ZGM4NzRkOWJiMTRmMDhlYTA4MWJkNTY3Li5kMDRiMjc5YjNhM2EzOWUyMmJhOWZmMmVmNWEy
OTQ1NTI1NWY2NWEzIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvdGVzdC91dGlsLmgKKysrIGIvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL3Rlc3QvdXRpbC5oCkBAIC00
Nyw3ICs0Nyw3IEBACiAjZGVmaW5lIE1BWF9QUklOVF9TVFJJTkdfTEVOIDEwMjQKIAogaW50IGhl
eF9zdHJpbmdfdG9fb2N0ZXRfc3RyaW5nKGNoYXIgKnJhdywgY2hhciAqaGV4LCBpbnQgbGVuKTsK
LWNoYXIgKiBvY3RldF9zdHJpbmdfaGV4X3N0cmluZyhjb25zdCB2b2lkICpzLCBpbnQgbGVuZ3Ro
KTsKK2NoYXIgKm9jdGV0X3N0cmluZ19oZXhfc3RyaW5nKGNvbnN0IHZvaWQgKnMsIGludCBsZW5n
dGgpOwogaW50IGJhc2U2NF9zdHJpbmdfdG9fb2N0ZXRfc3RyaW5nKGNoYXIgKnJhdywgaW50ICpw
YWQsIGNoYXIgKmJhc2U2NCwgaW50IGxlbik7CiAKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL2xpYndlYnJ0Yy54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL2xpYndlYnJ0Yy54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qCmluZGV4IDIyOTQ2NzAxN2ZlYTZiYzVlMzFhYjU4YzBmYjM1MzE1YzgyODk4NWQu
LjdkNTZlNzRkNGEzMTkzYzY2ZmE5ZjM0Y2E4Y2UzNGY0MGY3NTE0ZTEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9saWJ3ZWJydGMueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvagorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvbGlid2VicnRjLnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2oKQEAgLTIxLDYgKzIxLDcgQEAKIC8qIEVuZCBQQlhBZ2dyZWdhdGVU
YXJnZXQgc2VjdGlvbiAqLwogCiAvKiBCZWdpbiBQQlhCdWlsZEZpbGUgc2VjdGlvbiAqLworCQk0
MTAwQ0RGOTIxQ0FFMzM0MDBGOUI4N0QgLyogc3J0cHNlc3Npb24uY2MgaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MTlDODJEMDFGRTIwRTU2MDA0MEMzMEYg
Lyogc3J0cHNlc3Npb24uY2MgKi87IH07CiAJCTQxMDJGNjhEMjEyNzMyMDYwMDZBRThENyAvKiBy
dGNzdGF0c3RyYXZlcnNhbC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNDEwMkY2ODQyMTI3MzIwNDAwNkFFOEQ3IC8qIHJ0Y3N0YXRzdHJhdmVyc2FsLmgg
Ki87IH07CiAJCTQxMDJGNjhFMjEyNzMyMDYwMDZBRThENyAvKiBqc2VwdHJhbnNwb3J0Y29udHJv
bGxlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDEw
MkY2ODUyMTI3MzIwNDAwNkFFOEQ3IC8qIGpzZXB0cmFuc3BvcnRjb250cm9sbGVyLmggKi87IH07
CiAJCTQxMDJGNjhGMjEyNzMyMDYwMDZBRThENyAvKiB0cmFuc3BvcnRzdGF0cy5jYyBpbiBTb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxMDJGNjg2MjEyNzMyMDUw
MDZBRThENyAvKiB0cmFuc3BvcnRzdGF0cy5jYyAqLzsgfTsKQEAgLTgzMSw3ICs4MzIsNiBAQAog
CQk0MTlDODJEQjFGRTIwRTU5MDA0MEMzMEYgLyogcnRwdHJhbnNwb3J0aW50ZXJuYWxhZGFwdGVy
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MTlDODJD
RDFGRTIwRTU1MDA0MEMzMEYgLyogcnRwdHJhbnNwb3J0aW50ZXJuYWxhZGFwdGVyLmggKi87IH07
CiAJCTQxOUM4MkRDMUZFMjBFNTkwMDQwQzMwRiAvKiBzZHB1dGlscy5jYyBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxOUM4MkNFMUZFMjBFNTUwMDQwQzMw
RiAvKiBzZHB1dGlscy5jYyAqLzsgfTsKIAkJNDE5QzgyREQxRkUyMEU1OTAwNDBDMzBGIC8qIHNk
cHV0aWxzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0
MTlDODJDRjFGRTIwRTU2MDA0MEMzMEYgLyogc2RwdXRpbHMuaCAqLzsgfTsKLQkJNDE5QzgyREUx
RkUyMEU1OTAwNDBDMzBGIC8qIHNydHBzZXNzaW9uLmNjIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDE5QzgyRDAxRkUyMEU1NjAwNDBDMzBGIC8qIHNydHBz
ZXNzaW9uLmNjICovOyB9OwogCQk0MTlDODJERjFGRTIwRTU5MDA0MEMzMEYgLyogc3J0cHRyYW5z
cG9ydC5jYyBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQx
OUM4MkQxMUZFMjBFNTYwMDQwQzMwRiAvKiBzcnRwdHJhbnNwb3J0LmNjICovOyB9OwogCQk0MTlD
ODJFMDFGRTIwRTU5MDA0MEMzMEYgLyogZHRsc3NydHB0cmFuc3BvcnQuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxOUM4MkQyMUZFMjBFNTcwMDQwQzMw
RiAvKiBkdGxzc3J0cHRyYW5zcG9ydC5oICovOyB9OwogCQk0MTlDODJFMTFGRTIwRTU5MDA0MEMz
MEYgLyogc3J0cHNlc3Npb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDQxOUM4MkQzMUZFMjBFNTcwMDQwQzMwRiAvKiBzcnRwc2Vzc2lvbi5oICovOyB9
OwpAQCAtMTU3MTIsNiArMTU3MTIsNyBAQAogCQkJCTVDMDg4QzFFMUU0QUE0NDQwMDQwMzk5NSAv
KiBydGNwbXV4ZmlsdGVyLmNjIGluIFNvdXJjZXMgKi8sCiAJCQkJNUMwODhDMjAxRTRBQTQ0NDAw
NDAzOTk1IC8qIHNydHBmaWx0ZXIuY2MgaW4gU291cmNlcyAqLywKIAkJCQk0MTIzOUI0RDIxNDc3
NDNBMDAzOTZGODEgLyogdmlkZW9fc3RyZWFtX2VuY29kZXJfY3JlYXRlLmNjIGluIFNvdXJjZXMg
Ki8sCisJCQkJNDEwMENERjkyMUNBRTMzNDAwRjlCODdEIC8qIHNydHBzZXNzaW9uLmNjIGluIFNv
dXJjZXMgKi8sCiAJCQkpOwogCQkJcnVuT25seUZvckRlcGxveW1lbnRQb3N0cHJvY2Vzc2luZyA9
IDA7CiAJCX07CkBAIC0xNzA3Myw3ICsxNzA3NCw2IEBACiAJCQkJNUNERDgzNUYxRTQzMjU3MjAw
NjIxRTkyIC8qIHNwc19wYXJzZXIuY2MgaW4gU291cmNlcyAqLywKIAkJCQk1Q0REODM2MjFFNDMy
NTcyMDA2MjFFOTIgLyogc3BzX3Z1aV9yZXdyaXRlci5jYyBpbiBTb3VyY2VzICovLAogCQkJCTVD
REQ4NjcyMUU0M0I4QjUwMDYyMUU5MiAvKiBzcXJ0X29mX29uZV9taW51c194X3NxdWFyZWQuYyBp
biBTb3VyY2VzICovLAotCQkJCTQxOUM4MkRFMUZFMjBFNTkwMDQwQzMwRiAvKiBzcnRwc2Vzc2lv
bi5jYyBpbiBTb3VyY2VzICovLAogCQkJCTQxOUM4MkRGMUZFMjBFNTkwMDQwQzMwRiAvKiBzcnRw
dHJhbnNwb3J0LmNjIGluIFNvdXJjZXMgKi8sCiAJCQkJNDE5Qzg0NUUxRkUyNTVGQTAwNDBDMzBG
IC8qIHNzbF9hZWFkX2N0eC5jYyBpbiBTb3VyY2VzICovLAogCQkJCTQxOUM4NDc0MUZFMjU1RkEw
MDQwQzMwRiAvKiBzc2xfYXNuMS5jYyBpbiBTb3VyY2VzICovLAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>357725</attachid>
            <date>2018-12-19 14:18:25 -0800</date>
            <delta_ts>2018-12-19 14:18:25 -0800</delta_ts>
            <desc>Archive of layout-test-results from ews123 for ios-simulator-wk2</desc>
            <filename>layout-test-results.zip</filename>
            <type>application/zip</type>
            <size>2865041</size>
            <attacher name="EWS Watchlist">ews-watchlist</attacher>
            
              <data encoding="base64">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
Krc5hcfAfzbsrmBv2NikaFZmyPz0ofktwj53zeXt89PqAflzLs/LOaLNzPCpwLQtREoPinGgHG5A
EIR5XpQoPqc/bupAH8X/G0Lx0nBxgTO8nZFX29Xm7lRA6+Pz4yPs5nsAPjYPD/vFIyhji9uvi+3h
fr1bfNlt27ID+8WhJaPEtIHD/WZ/6vi+vWGHZv/LDVz8zZfN6vsF7druwUJf3Szh72E9aNyvDzfw
1J3a6wP/P+8evvSuChBoj/fYLO9BOZg6nqJC/i+HlBcXP18tPqw/V/Aisdn7p4evi7bkKfRs7xbd
LQS1+fvF9RaE0A/C6kt9tdit95sVzIAf6E/f0T/9ebH/DabhenWzfT7cwFk9w01sa3GtV8cR3zEK
v7v4+25zaG7hAdi1Bz/vlit+ya8Wv0E3TKzTXr9xlFNT/0jdTo5HWpye01e3n998uP7k38KnD/nH
N+/fLS6O/6//+df82qCPb/7V9sX3n95dL7572j6R5baBZ2W5Xv15cfHDyzY5/Nx3+nDhl4fNr5vD
18X1rlni3B1vXOmfzp8XF214N2jZi/e3/wY1e/Em7QcDJEBwHiG6Eef4lOmNa9o/RtrsvzSH5f0C
XdCbp+dO4vQHaCZlf0QvgOv1rRrxEzzr64eFx/u3eP+0XE+NsP0RV/7t2/fxG/vn3OLsPH6x5xGf
n9F//gV1tvHGXtBVi4uPf3u7Oay73y4xFW88wOjzWTEKI659/Gnx4yf/Ib1yWkpf0qvzaBhxaJa/
fHNuwstB9Ufc3CR/7b81QrJLdhwhND+NuEkwyf/56lFerlziiPL+3fV/OVB1B29u3r5591NOb65f
OwBz5/vBbTviOv/j+lt3UJvzdXDLcMSnd2/i+5RfH6PqufvYCokFvsFex+p8PxiM2N83OxjxuH7c
7r6+dmKyj9X//pxfv79uZc2rmwFLzV4d7z7oFBcX/wFQSwMEFAACAAgALmCTTazQ2FdTPQAA2UwB
ADsAHABjb20uYXBwbGUuV2ViS2l0LldlYkNvbnRlbnQuRGV2ZWxvcG1lbnQtMzA5ODMtY3Jhc2gt
bG9nLnR4dFVUCQADl6MaXJejGlx1eAsAAQT1AQAABBQAAADknOlv48aSwD+v/gp+WtgzabnvQwgC
8MzzZsY2bE+SRRAIvDTmiyQqJDUzfn/9VlMXKTHz4iDAQn5KYMs8qqt+XV1HU5q7qkzzup44/Vda
LsbxajXPxz/lyQ9FY3/55bLJl804yD/l83K1gPfOLwwbzX4d3cXN07EMeF39WM7Xi7y++vH23Yf3
4dWbq624WRUv8s9l9dvVz3f+Q159KkCLq6+N+mWVXv1JrUbXGfwsZkVeTf6CUaMf86ouyuWxPRKr
t84F/ByTMdFvL0d+meXO4/Mq71/5s5ZIcufiJm6KT/klsKksqrsj0vN4vUyfsmldLJxfqCEYMN7n
9apc1kUy78l86Wx8qPPKuQ6ODRCYjEZB3ORXj8XiSGmKiUaEImIcQiYcTzAZc0EchDXGo9sHZwjK
+zh14NTPDsFjwsbSuSDqeykuwY5VWTUn9xA6cpfl8nlRrmvnw4eOhgJHzJWRi3w/4EiH2EWSsQhx
JjRWklMeuKPRyOrtuJ/j33LnoVimueOVZTNxqMLYqfO0XGb1aPTwXDf5wrkGPh+ronm25Js8bVpN
sqKOgW42GvlVXD/lmfP4VOVxttcEO05Q1Ku4SZ+c39f5Gjgd8C/iYoma9obRKPyS5isrte8D4c/+
1LsP3R/ubq9vHp2Lh+vvH+/du8vO9dZx9o6Av+D+i35zegx37r4Ba3qj+bf3dw/h9Ob28Tr6X4CU
V4tiGbfXPhQfl/G8vfqxitP8yrt7dJoqXk0c0bvwPo/r7UzdwNIEAEAXVL9x333T6gs6de5Yfuz6
c/4ldZ7iZTYHt/sF/zoauUCrSLcqrPIU1mIKEzIrq0V7cDLy792Hf1zffO88hg+PE+eqyutyXaX5
uzLOHhq4qG6KtIbDi/JTjpJ5mf4GgyLAX+VZUcF0jp+axRzWYJU/FIv1PG7KyhGKjqmDHFgUEFAm
4KDL+CPMMYNj92uICdbtC3BZQscYvFW6TMrL/Q2beSzunsolGB8CynaqwSe2zjKZ/EnnwAOr9jGv
G1BimVfj6+U/wYI889YW2n/tp5uwhGCjZpnz0+P9ZNK/bDIp181qDXK+NBc/PUaTyUNT2ZkAv6+b
/7503sIqNs6F/5Snv+WZC77/tMgB4/hpAlIvR+SvK0WxhmDQKnW4YzL5HIOEMlgvVj9ZJln50a7Q
KoIJyi6sQoSCQuummMM6nGgjL0e0p4SdvqiEATe+0r46I+PYmIxx7kynfnT/4ebd7e3d9Pph6rvv
3oHzTG8/PE4fb6fu9PH6fXjfHvZc/4dp9OHGf7y+vZlOWygj9tJB0xmnm0HXy3dluQrK1jBrEaZy
xF8sT8XxgLzaqiflSLxUnsxp2pUHv6woKuhIvlgWpcTpStqv2LeOpGKkegKPhR0L1LFQgsIi/OXm
YSvyYv/u0qnWy/cQTSZJDsEgt8lo8qvVXKmRfvE40nxtHCtXyZGxubZIoH4YZ8/w5rRK6YpNpUg0
gbmH66dl8s90apc1SOISjwh+oagsTTLHStoKIZyNCPlqQj82E3yHcu1srptMDuXSexB5USybb5z0
Ka42QeDNG7voOGbOxe3DbWLX811TwfqXdvnTlw7McuNsNYdl3B96vFhMiM31hLVQAEj2B1R6UBjL
BISSuomhQAAi+yBLJm3UBAF1m8Cnv+XVMp/3Zfb55pJqu6xsIfl7e32VN+uqJY3bcHeQttpE5p64
njRF4bdxdhdOP/++edMKY6INXC8RR2YJ4Gvt7Mlie4vpf5zFDBLo/8Sf4oe0KlaNjU1OsojnkN2d
Oo0/5cuPefVyJiImEpis6mcoqKfpJ5uV/iIQInQHiC0op1tpitEdkPTtW2gBBn29F1q1jBXMVt1A
3TCdksnEyitsSJt+iqvC1qGbFHpxuGS9LKCwmNp659vD0cW6yb9816Z4ottsdkTxK2rMaCwSCJSf
yiL7qi7TePm80efbYX22UzWZvG/Vcb67+FPXtWpr6lxMp60d0ySu8wmV+rLNoy+yxMxo4uzlP+x8
ZjLZzNguEbSgGMQsqAoXRToxFOKfePFg0pivDBYum+r5roQQfHF6URuITZuMXzRmgmeqnao3nbma
TrcOuarKL8+d2WnWEMpPZ2vVVN8O3F031TqFfHE4leWzeD1vplk+z5v8j++Buf5m40AXby4Hrf1m
ANQb6yKtLRYGM20l8bL4JCU5LMekzJ6tII7bWuFlkgTODpJ22YdB2WFeHuVmxjkS1IlxHGKc+6O7
zoryAfqjbcdWzJ63neaL41uWUhxDHobYtqg/Tm33NhTd/oSgRFG+F2SrO/zycjwVKe9WnvuSIH26
K1sWFNr8Fxfc0kI9KWiJ1Oblxfa/K2j71XZsZ2rs/hi1U3YikOVMZ1xK5/scWp4i3Urd7hpM2iBw
cHLIH0cF+L8XH8OiB33du77M/YFWMDjqf8TqEZO/sj5E7tT5Il49gXNMbZef2TR2ulSybfM+kLx7
Mmmqk1w50931UyudHyRvOgv6UqGGWYw9oRuVW23refkZBItNgn+J4EzRjHQE2+owr6b7Cowx1a6i
v8d7xN/nPfJv9h7spNtdvc9F82R3YrdB17F7SrlzITlKiuZyMnKcKv4ycToLMc41hzdwItmfULNZ
nisqCTWwZqq0e8f2NQMbqmzohLKDZMXJGTAETtRFb/SM69kssSeS1eno2qpVD5wQGAZxKn06vO1V
ncocbkmoTCUmmbSWENwdHRsBk5TaQQixJ2bdVxrbQSpC+7IE5nDGnmBDetkT/Hh0kaj2hDhVq7UE
iqQeld1umFPN5icmUg7o04r27qCCgGZW1uhd+bFI47nj333YbJcSOQqrqqza/czJ8e7r6NFGi5v1
Itk9NgC/GnnFMq6enetF/DGvrdts72ob5MT6C3L6B1NA9vVG+6J9koCcw6ME51slhKCEBIhh30cs
DDzkEu4jGuJQ+UQp15jv/r+ep/QMjPWp1WkyO7K6k6Iv5NjA9UQICYYKX3vwv0BuJEPEPM9Fngo9
FKooMiQKmYg4GNrZQa6vfk5hwqzgq6129dVWvby6upvHjd1Yrq82G7e3D+PV9lDnqndFUsFEXvX2
i6/uqnJWzIHUdnMYZMDtdbGoNn8fxrvf7k/vL70vy+Zq86hhLzzazUJ9dbC/MzeHgz2ks4ydIDWw
uAYdadB7qFbCi6iLiGTgPa6PkSahQFz6XEAANpSRP+U9mwNd7aDjMifaxRI6sXzmvIVAbTfJxu42
aF8ogUEfV2qBZeAjz6UR6MM1csPIRa4fKW048SUJz2aS13V1BbZdHdnahQSt/ukUxjohM+jm3h5t
GVxAmhmbMQdOWmL4T2IUcOECJxcjlzKGXPjTM55W0pXnyKljbg+TgVLgBJPBcodps57G3o4UJBI6
poBLACyPK00CD/zJJwAr4hx5keFIKsI1jyLmRu45wuobfcRrdsorhbXXjwxHPVE/4EY6cAWJNBJS
M2AXKqS5ipCNCZTKgIY+ewUBt8+gE9L6J3p4c01O8eZGWLzbVRsnRXfZEgVEQypDD0Ic4gpTSNga
ApsmDHFiAuwawhijZ7pq9+b2OSVDnDbRreOG78sENGnV21YgzoVhmyey7W+bqZSWylY3REiCGPM5
AmJQ9ijJuctYYGT4CrzxFEXHI09PHtGOB2jnbDZjrVfGVfpUfMrHdOeYgrcxkgHewOeuayKJIqwk
YloFSAvwT+1yA9gh3wh2jq55ZHOf14yf8EqIIDteRbpOQa9DjSIpgdoJt/5IggD73IQIalCBGA01
BEbioyDERHIRuF54lsCOjO4CS6g4LVYSxuQO2JfFnB68CxauTSOYcU9IDEEv1BaUlMj4lCOjSaSk
52NPe+cIqmtsjxIbSA4JM2xXq/zrUNAp3C5AW9ERTU3AOdRx3Ma3iBGkGfgTI97G06DLO0dM/xqq
5wBHespICX1cn0Q3eWNDH+QDBcFqTGxG2LwDZoZQ6Ua2XTHKA1IuRa6H4V0gfEgVgI++igplR6Fb
nOyO9bAmND/Fmuj8KN9uhgJ9ZsXHdbWt/aAlVLb425QqjGrmhQoj5QUYum1BkYmUjXYhNGIQ4lxl
XgHaARIdyANn+7jT0y2NJN3Eww7uvcDx9W3biFObQyxrrtmmS9GAnBsf0oiyMZJwxASzpbZrEPUD
HRoeEqPVK0DeMuhA3n7Ws75yN6d6hFNNBwgn+1jq30cP66LJ96U2uK9o46nrhoSFOkJSEnBg4tt4
6lFEOdGuMT5X/Czjad/iPqx0IKimabbrSubx8mORHVpk63SeSyImtEQ6CEJIOxGF3piGyPOZ9iEC
CD84yzKma2sfUjbgUTmOBzrjP25GPOpSEUQB8imJoAWhBKgFDEnsBiH8cKXRr6Q1HmhD/qgBSWYD
uzTJjEFbnJy2e9fLuonn8232sR+rtcnHbgLyCIchoQYJ4jJYutJHrh9CUeRBwRhRyUmEz5XuXVV8
ipv8pOPr0jjp+Lon+8AlHgCuZruCfHP797m9vdl3MVy0SUdtNnmI/QS9hyg1QNiHPO8xo1CkFQsD
jj2izzJMDljeJ5cOVEqzLN/FyqReQJLedTKmBUZswJQi0CQQ0MQEXCGGSYhcST0E+QRipYBoSs9y
57VjcB9UfvqwKsX5SUmZp+v2OxMXBLdLWWiqJWCj7faCYYFWNAzBr7hBjDGDXM0wEgpjFRmXBuw1
1DY7Ct0acnuoCzW1Ty1PoJLM2EDZ7h/G6dO+ptG21QkIUa4b+IgoAgD9iEEDLSH3CK4Dj4fSROLs
3G7z+P6qb3AfVD4Eyq7S7eORcrEol371vGrKfXzDhOh2wbYBTjKpMfGQ0GEABQ6GUkcoFzwvUlHo
K65ocM7gTgD0+c1OnwOk9PDcBG5fgULVtDqkB9aWOEbyCApmg0IagMMZHECJ40OrHUGRKJmHA/fM
ufUN72GjhAxgI/Eur6bl6tkqtK+ludzvpIZhKDgWDEFYg+qFG4y07epMKDV4ohuKM0wQXXBd0/vU
6BC1+PBUBFRLj5bq9ikdbovqiPtY+MiPbP8bYghxLIB33O4UCuqyiJw1uL71fXTp6VZ0yjDeoTv6
RBckWbwJcardOQhCHvncR4Z4Gnj50L/hSCIZEV+HLvR4mJ4xub7xPW6MpQPcpNol0s6XSy4kFWNC
2ifCAIb4ghCoej27OQA/DJYMgQeGnDKtQs3PGdje6j4snQ3A0tkuGWy+WLx3McY2Qc1YFwvdiLs0
FIgIz25OEYbcCMpeKSUPwOsg1p1zOuia3mdmhhamMbuFaT8UvQ9nBuoO0u5MR5IY6J98RANgxjTx
kWe4BGbKhTe+G5zRBsEpro7VfVoxG6AV813e3Hwrt5s5t71oW3EErjS+HyHi6hAqDg/afmo8FDHf
i6QQNPTPOXEe234EbiiOpXTnZtsPusb1fN+TCrl/dhQpSI8KilovwLYnDQTSmrpQd3ieVIGWkqoz
JndsfJ9cpgbIZeqIXPtF8Hr/3M0WahwbHemAIoJtZxBgF7m2sQ89aOMlN4FQ/PypdQ3vg8sH1iq3
qVN1waWH/WK1KdaobasogRQZ2M8MCgUlh3ENlBySoihyifEiHPk4PH946QA3buIBbiY75tZ7prRL
EHLzvIfaR2waG0JCEaIosJ91JNBmGQ1/+sSPXBeb0JjgFSA85dDHGQ/hjPdbmAcxTVws82rR/ssM
1aFK2XZeNoMwSBxGGGOXsAd1cARxkJkAYUWAMXalFOGrIDqAog81Gaj0eJLvyuK9pCqvd/v7uypZ
tM0/MTiUATI+p4j5dgdecmxXd8CgClSGyNcA8tj8PsShnoyn5ghiFlefi+VwlFQRJdRmF0khzzAX
EHqBL5CnvMj3tMaYvQKH7BLoE8zMAMFsdhQqs2Vd77s0rTaNLbN+SEMifPu9Bpcz1xY2oS1sOHKh
+ol8oQQz5hXwO9jfx5effrwgFdQc4SuWs30HIoja9Gy2ZROh8bSw/zoTNlDf2M9cGft8V2GCiYkE
pvT84R2s77ETfGDxCm2O0spiX04Tsd1QaYubyLeeh3yPg9v5miEThS6KtPSgr1MKs1cQ/hZD2MyQ
yyXJkcttvrG9j3lyk4Ol3cUT3ItIJKCW8cDhGIlgyTLGUOS7Uvsyop58BV7XBdAHmOEBgJk8akeW
7Re79wB3OcNuHQiMtTTcfpjAk5AzKIOc4XlI2M9chRAC6WuorLsA+gDzIYA5PfLAOl5mSfllnzUE
2TyibXeSI0Z8Qz2DAut5kCv+j7wz643b2BLw+/0VfjRwUY3al6egVsMzTuIbxZn7FrC72bYAxfJo
SSb59fccsptikaXMsygEsaSiJZOfimers2TivS5EGp5TlkKKtAGEFYIFw0OL4XFhucA91FXSb0G4
TepDOustBTtaZ0yzjwLMFmY04V4bGjxNMakNQFwwqDmeGrEFdepOvVhyvDxJi2Q23klpAykhwhtN
TSQhBEq8K7b4ogw1fBskawoVS00bmgUWG3uyLueuUArtnKM+EhkjvNnWJ2KzF0R5Dq910oVKsRGU
cwg1SdYI3GhuFxLyAds2ToEHOqpoi16JLwKcO+0IlRbMmwR+noeXnASvuQQH2uq4gcDD7PlrfK0j
Iy2nUOvjV3Bm5lmSQ0BfZykT+B6ERwGeHPeZOG6BGQP/RKoSbHnJG2/+0DUt2QjPaDNttqeWdosD
I26DKQrMZ+1tJEJ4cH291BhCUNzYQCV7yTp4eu6aVtdQGLC4NF6e3u9fv9zeP7QkXSpaWovH30la
rOvnmL8MLhxoDhYKSrq0KUk3I1Ez3fMG0z1vMT0/z7NQNTeCwZtMKIuYt4tKmKlApBWR6Wycinlb
mvh5qqcW1VOD6mgePc/UJiqCS6CDPVg3LBviM7dERwPaRLAQk92Snfgs0UMj2KXHVLXn2hK9lWD8
7Qwbzj8L58EmA46fS/DG62QIvOeaYH5kNDRSG9FMfPYWnzVjDW2kcBrGF3e2MmE12yk6aj+hVM4c
fsdSwe84eks853B/TmdbWOa+2L+7tb+xCw1rhKoNHyvBnmvx81bQ6d5oVizG4IljBTSzREMGO1qU
nEsSSXB44f/23p41tEzLUjDitCjvGVONx6TQp5IBNia0IzxnWBBakuwoiHPLKbFJc5Dk8MaAEyV5
SFtLZ69prBLa68s1dNnarGoKeu7/4js2S822U+Id6EVwDeDVSZidInikg3VGrHRGWsz0dPJFZmbP
n7hmpfWaVacOF1P267lscLJluRsystkQHabgd9JCKMcDXOHAvU/SgbnmuYpMmFJeZB579cwVrVZx
5GEvxTw98eFmOghjSk1JxFYYqoRhxFJliAjRgzGWI7FccRfAtZfiRXYQqR65hqUaYbj9U238+Tt/
PZy+9Ddwr01sxXjrOFfEBrAKROJYRJoKvKCGg80QEoB7wdiWD78A2DAH9no61x50x69fP395ePg2
lcyDISCHt1Npq6L2iqRIwUUPsNccT5nkGK2NUbiQX2SnkMZT19Qa9Z6HIxNTlOh/b64fenHhxbEU
HCO+WB+vMJDBE9gmAnxP4vH4X4aUrWDMhJf5glbPW5E6yoZxctRyKvb867dup57yhSc1CTaH9wne
QqpkxrP9TLwNlijQkyoHk7J5kVtr/sA1Kd1wdU7cLcy4sYPZh/5zd/iz2SuNMhVDsZFoarF7D2w0
MNc1Af8cU0usG/PTn+mVNv7gVce0cXl+v0dm10GEI2d0UaE69odFnGOD2LdyJwabc/iIsVIqwAhy
lCiOYWeZQIZ4nwmVOBcHc5yD3kiR6kBgUaE6rFVguVzrtKPdi0bp77u77tuX68P9VJjKpdoNedAZ
3hLmOAjmwIhwOQPUYuDLlMH/iNrptBGoFwYLrpflCm1HG2j3ozRaoMUpNJi+ys9lgiDBMYd1aDWo
aSbWg7ITOnLiPQuERZzjFE3htGwELBJYQMWlCuhBrN2gnq2ADu1F3//49NOA7FkMMOP0UOyQkgJD
q2RSmMfay1yILzISQ7UUOmsb4hZaeaxQXFbmXHvu1i5Tz7vu4l76A86mut4Pg4cmM0OC06R3DNUn
U7mAIyWItRQLprXDbKREkggYmlUuMvUS1WfjwWtwjTzrno9nyrMN6e/v+zt86lYkxEdtYyrgNyUG
GknrQgJmDvssbYJPrNUbKuxfoZhtzdW1irVga9+hFyfWkKYfU3nzVo16nw2dQTGOnUFw0lgoESqC
1teFEwnCNQbOeHi5PZHWjM8IFtIUViqesmFR9fJ4WNSwD9+KU+IOl45Il40raZEFHFZCC4OXHoQm
sSA8MZWOM+ONUC5vDOrEYcl2ulAhVmztuPWKq8WWvRgPK+kwWKw+a5nQF0k5YENrOzR7jqC4rGNF
UslM2Q7mJYsZ6OWlGrVcn//3QxxrVGF/9Pu7h+lUduBqM9dcORIZZoJa7J1JJZgBSmiQEFZxk1ue
y+KHVXdxavTR6YcGGpU+AMBfP98Mv2jsnCjkYJkMn6GwckwVLhkB884QYcAqsdQKrPty8OMTT3wL
TT1/BAjvPuSr2W/4slQzbeRtneiBLpiCeBvaiI2vjhFm8OulSUwUaolOmKHA4OUJ2EUwuiSpx4aC
im2A5fjwM5LjwpzjiTWaap9Yt5T3V92pu7vGD324u/3jHkdiguOvB78fzL2d0LsxZhJdUd4UbB2h
MZkhwLujTSSUiiRczNKLsB3BNHKZY5n3M1ldrNE3UuZwcaEHPr2f7WCNbQPwoCwxGrAPvbEBxFTG
9rPcGaJNzrSEEkQMG9jBw7PPiA5fVxB5w5s+DV07aog/fSjDYNxhrO5bhb27lTtL1pwy9daQZAs2
xKQBTO3ISPI2SamyGk9sN7JjKxJztPP1GnHDXjkd5SBq/7kYvDbo0Ey1K8JmkilXYFdnTizD4igu
vZE0F+ebOrT+WbN7qy/Mbo7Rhv3PqDyJhfz612N39/DXeItsx7A3qnZix1B0yaE9qtYBzSmPekCU
YkjIiZIspQMvwHrD4gbepycMM7pPixVZte4nxDjOqljFgkesjTCwSEYrhY3IiyigC2APWCMVoQLc
gMJzKMw/EwZe3ON5ZX6Dkq47uuHisjHu+x+vHu9OOGr7LVdqaIs7fMSjoxS8igmUE/wokKJwayF6
iULVRA02Fo18E21EzwTmAZ/LWo3UHBpIzXLcDgZAbvq7YdrT+W2aLeEKilV82UXiBIxw7CYlFMbU
JYlK8phKykxuQUU9Pfg8ZjEt1njXzjWTzsnToRJWvw/RuDdv7bBZv/vuO4xM2sQ5eCIkxgQ0HQcl
JZQFf08leMtcMC5ulebs+ohmdm1cqCh3Yi24cPHZTbz7vT98GDJkxr18/lKM+9iD9uMJPK0IOxcc
LyxJKKDSgs80qKBL1vo1kB+gzMkPCwvypwZ5pU/H09RC7W6c1zlVYY7lXEO8GKwGY5O1hErtcE5A
AXEcNPGYg89tSdqpl5kDsXjsGlpLje338tSPMYrfv7++n0IU2ozFW3yY8xFLMB7cWC6x7xzF42kG
vLLSrNAcwHQJr3Fn1tAq2Pv1GDAmj5pfdujv6epjk7WOOEaNKiDsPJgKjBPHDCNBGWPBmClS0tfK
emJWoT6ahrIDZ+JSERY++KundDspphY9QeSSwESDfRwGp0ESrP8nyguBIwxgn/NXivqJWYX6JNdy
Vwk6dd764D/6+N9N2IV67FdmiOYRtJtzloDvC66by2CqU+Z1tq8U9pzaPyqyyjRw68Ml8+rD9de+
u/M3n3u4jyZ1HRx1PmliWNHgIRdGnCmFaEazSQHnNr1Wyd2AV8M3ugHfTlVWV9+6u/v+WeFCI6XR
ZlCSDsOTOBrTMipI4TJ4lyl3Wb5S8ktyNXbXwu72lxzNfz12R/jnHu+mOkoxdasTNHhvJSNWF5xC
pgJxFFtwCmGjykU6418p8yW2mnmnGsx7exHr4YcfrhbJ/ZjEUphUyXpDqMFyOEYZjiaLJBcTjDZO
ysxeq/6ciNWgTw2BLjW9CPTxzZg64rkJtVVSOokzQAqO/sG22Q6sb5IcGClURE01e9XSpAFb2rW/
o5TZL+KKn97Pp22Opx9KnQ9DjfHcWRDgihdDhLaYGMMYwSiJDgr0qecbCtm/bw7dnC9XhPW6eoPh
YNLF2eiPP1/98u6CdowygQ0SjQZZISWa3kwZ8HKSJR78cBz/aoLYUNbRAGB+0Ixf1yRPXYPkqVuQ
LHAjrSQumcEpF0USybHMKmVLQhKU4NzDrJJzMW4owWhOoRrI/bRcwTV07Ysry6ZG3viNH1GITB0M
ObdjsQwPJrHgSDFYY8kpGBTFFwK7s/DIWIJdvHmuDUIVXntia7xuTxuZXJ/eX3atdHYnx2JR7zGs
kSMxEdCKoBMOkYc/RObYEk2GYLaVyPXp/SKB69P7iuh+PaUdFk/LmU2YoAwG3fsf0QYGnPAN+HFg
iq3UZQJ3w2I7EanxTAQsBy40kyU6rV5Qo6D/l+kEYoZ1WqvIHnjD0j3slync3/cP3Q3WzZmdEsP0
bfxkiNHLoCL3RBccyStAKngqQHmJCB6epyGaLfjTw/PPK4Tx6wrkcd0Bgqm+O54Oo0ztnub/sR0T
Q52Gi6xo8IvBao0MjFgH3JTJOFZRC26Kf0lJ7/MCusbkP6b5YR0r04K5Dgi9wWkAb94qNSYFgA/F
U3aReCYwSkNhV3nKiQyeB8sTyEUxK5fHb579U4LSdW4KLEqzP5o3/8S/ja0SqmELrLgcs87gq1EF
8oGDYhMyEwVKTfuoeaQvr3XO5UlrNs6s2QisL1rlbZ9PQxmOAh2y+DCUs+NySDXxgWoNqsmImIjw
HjtqgLrSUvCYgKTcxCDQCcNCQS0PPwVVa0kKi3o5gwyB9P/1Mb+rui/YkiX3lDCc+iRA5RPnAqoo
6piP3nq/odS9CcH83P6yVjM1xwZTyy+xL7zxchXng8gYdi8fzui0KjwlQ4pwOHdZZeK0jQQsq5CZ
EDImt8203RaYGqu1DaxjfdFCBPxyfexvcata+Ot0nHxpjbAc+wwIgX0GsiEW/CoSwWw1xYEja+NG
3vzh6Rdv/rBW4zzoNU6t1/b+ze3d1Z9fD1gFy8b6N9iGiJSbKKKDveo0swQEKmofsAYoL9RLq0Wy
aUsW/xlERfa8VpHV68E2uDgNC35X/n31pbvrnzrhTVn7gQbKdXLgOkUcN1I8AR8CFHpSXpfoTeZq
s6//gkvNtGvt1n7qXfPuw6jv1kRBRzGDWilhabmS4PZz7UC+YktGh/+F7RKdU6l5nhp6X5+m2S7x
l++vPt48fr7+evX47dvt0wzDJ7JOUQvmgwbnlGF3KI+9V8H/V1Ill3PJNm9YVbX5LBj3a8aGTg2r
B7n8fby5hvtaGQLZZQ67lRMbtMfCIg/7NhaSrclgwUbDN5Fh/LwhUJP5R81w5ZMJJo770/6cv/AB
vvkyyqMaiLiTGA9M3oGV5TRR2mAilHTEZe+ILsmaEAIrVG+WbQPOHC4zugHXmGUrB//5813/GVRk
GksW4d+e+wY2a7AKWCRZoy9s0UoQ2LA+lxidtbY4vSHfYA1j7iWsr9bE11nUgjkxNYwst/c3vx7/
/Nr9dv3UEdbuxmGyPBX4lWE3B4WNoIRlxBtHSUrFFBOz5fxFJkGuH7pi5tw6VsI6wRrOwPf98bq7
7E3OLWaPwv8oCJiXThssiyoOz2MFCFkBtgLVHhwC5YoWW3EKBgoLp2BYq7B2x8bLf9wvwwGDN/Hz
7e3N/vb/2mSl1FE4ittyaIUUsKkzA7c2xQgilofsttBzZA5iBne+XPHt163LYFHbBd+hSPmX6/vH
7ub6r/5uOs9Gq8sIFopRxEaJoWufwLIF6SojGArJcQFv/8YKuZ9ALOu4n67UlM3auOV8nCw6r5u4
HlKsS3fox5IkgZVIfDh/wU/wgJsNqQOO0IS0gTxxMktSOOxihuOA+YZq/S4k5qex56U5Xy47vuYr
cRp1lZJx/Q2f8P5y/7vpSUbDbm4uOKNsNtYSbrALBI5GG+ajmRgLyyCiwf3dUBVwDWJeAlxfWVDf
N6jvp5ak767wfLcOK3I9HNkkkBBcKkEow3mcPgRiTaTESM8ZAAZTrbyGA/AVogqwMesAIywu+/DA
7d0/dPBjbrr7+zqBo/hiRaGYXYRWb8SwA8ehdF56JRNPrugtRcQqEJVxUV2pKdsW5VWewfDnffd4
6BcpR9LRoosnSUqG07ILCSx5ollM1AdpzMtNDn3m0OEKKSxPHYbFGux6MiUsHpalzV3Vjcr/e0hc
eMCvruvNbFkWJoLGK4VRzJrBQds8EaMiXIosZLWlllI1iDnu+krNfN26CxZ7tkpEAEO7agM2gWby
fHbs0UShoPbGicmMhCzBXrYpZWeLzypvIiNhCaJKT1herFmfGlaHFcukD0B0DskNjEffZBj7wX1g
hiaSo8K23MUQF0B8aKFssiZFa/mmJMclMllJjvNiRdaabk32aI7NtqgPZ29naAI68wHt0GvKDjUT
GXxqZon1gFc4k0hQoAUN/LKUFl4ktomCrBmAOePZckX51LE15VPnWq3n8Cl/ePxt39/V9gXPYF8o
2MLKYt9ZnPyjtSSx6BwpTlXfUrOcJYllu7TZpRr0viEoTk+G8vAbunoAPvcP2IT1MsjLqJ0eK1Ay
T9aGGMfYMIgKcEey4URqVWLwplD5MjtRtp68ZrcetQKL/bLJENzTw+3h9iY8nk5DfAKFrMbUOhEp
9hii4+m6yFgCa5IlKjpfopYibSllseYwb51VXZgjxlymFWLYZ8elnfbH8fLqO4yqjSaZkZwXsBJG
yaqHBHFNAsV0L+WF39KJ+/9c3/Xw8+/Tdff56+24Y2ctXtZXa8yWNTD3y3SRcgd3GW67u+NTRr60
eifFzmCC8/lTVGtGFkGZIjIxkAweuDsJnnQovCiwlKlhG4q8rblUtTzLixV6ZtbBeVh0C/Q//Rx/
6tEYGXps/Ye8M1mOI0fS8H2eYo5j0wYK+3LE2iMb1WJNVfVYX8Yyg0GJXdyMS3Vpnn7ckQsDCFRZ
Xxl9KJUESMmML5EOd8D9d3ch1AXH7Ofj72ppmsEUaE+YxjzdiCKGGa+YXbaFlhTfcTrEGvmSxwL2
crjFPIikBZt69Z3Lxyf4l90SX2qDOpONs9GRxJUgwiRs7MMCkTmxlGKKPm1oYQ9wLA/g1rMNc87X
h3CCC94t7c8xNseb3OqAetauSAl+W4hgOiy6ccVJk2q+5Iby+GNcZvDH2BIU66wIIeS5D7r/azrG
KOeXPLei1jXpOToRJHi9qQiUs/eJeBXgj7nQAP+V99iC+o8evMEnR1966c7aDY/oeOxfrwl2N2nB
+RxUUFhI7UsmIvBCLAVnIjKmklEQBr4jGdMFuMEjt8j2coDs+tzm8jP4EXhV8Q3PeFJ7zy40rSEt
LdbKDDt+NJhFhmm51QGwqP2XbMn5XdY8/P6jNwTV6DuLjeO6RdeuNxWs00wHorxOBB1fTL1DdRbF
tMsFHCf9ntfbAJSm69BTaMO7LTnsnue6x9QFdsGOVV/H36LjU1BKVKOoKDasxCw7Z2kmYN2s1Nyr
XDakin7Gsdg2zmMt32ux5mv4VXfzGHbTL3/g8GQ8ieKME5/AnRewaRDLYRuRPuqiwSQ6GbZEt4PR
UO7mGtpmcI8uzDR3qzk9TK938A6/293vvrxlK2h7wbAxFsZOjnLmZDbEeIWFSih8oLAMJyia4Etj
tGfbId4BWfDuZhralg/OBezUJ94VeOvwBL/eXFXUWAzGXe2jVH9Xq0ZdirEUwoTHxFyB0u8atZ8L
KmWlbDahFrQEsYxNF8MNX7du64auwTzSzz4p/y41tF3wMQqvCKPY9CsZrHsETz6BZRaaY+tKsyUR
iSOGXk67zwZR+4FNhsHeJt/V9rQ3E2BZ9lQ6MAYbXi1zUklY5mC3Yx5C0Yg9wGhihEoURtBYUba5
hr4fWyTL0YbztO41DYOuD/e/P3RpXYafIVllgjWoegDhJwT1BJYyA2eWxpKjxAY2GzAIxydfoDyO
NBivBi6aumKqi+A7S90YhMXGRl1WKflIsqQQjGZcuiKBjYBoKpRYpFNxsxtbZx4Gsy35tc4MDKo+
8+OxllX8shTyXy5mo3JKElzjmBLsbklrYqXJRFGnlEXkekNmGGtMPt53bTlOYy1dPTAPV6tK3quX
i/+Jnz/vnr7MLwHewvPL0+6xMRYxFau5Pug6CglRh3Mp4zU5zbzIROmGTPCaxQL0erIlvlYshcFd
r/bz0/P89P3Dy831CVeX0KSDzNY5wkMqEOoxTUJKjiiewTgzMCZiE605egpLv6KfazGvGwvA4HXv
tx22Tez+9nImLIU5KDm62rNBWcUFJ9JxXNhRQUxtMJGMQvhBY9Zcbs23qDhWvkUdbRjPbO0bq9n0
uTU/fv32fDM9LxrMVItsTE4mwbqVWEWBGpmeZoo6a95pCW6b3FDW4xuDpUk+D7ZYd+uQTl3b3ibD
e364/su8qxEdr2dBUhxCDiOjKZRIhp1RMvhsIUROlHCMiei4pXFTl+knDO1N+mm0YXs9r9lqStUo
U+Hl2+OMKTlNMg2WWgejM5ZKoZSxVsQnU4iSIVOhAo8ybixT4cyhz1Q4T/xbQ5OPELv+RAI1mj7e
P76+dC0Ho5dJWgnuA4dYLmePVZaGKCat10I7H+W2xKsqhE68qo41VGt7pJ4q4yu3AYPtkUqggpVq
XLYkigIhRwSkgWpHqOKOq6x44WFj5xCDk8tmvOW77u8Mg2bXnUdcvjzNu7ub+y9/u2n8X6YKs6ok
wr3CTpkJFVgKVl9LZcApo1FsKL5YUlhegy+GW7huBPeqP4T4NP+GJz1kfdAjLpiC8BlLBMEOUBk0
0QZb1NDMALQwhFKjnCiUer2hfNwjkQXj40iLd17XX2o+y85h+LS7//IKMfZ3QOO2Zs8c169yFS/e
vlGNPd81xWZVGXMYLfGozmKz8xYTnwvbkJhoT2TJuZtqgAu2vk6HwdV6hn/3WpMm0+7lrZhYWMRd
D90hZi4GIgvCotZEeGyMwGs/eBWMoqEUsaFKwZbHEnYz0aLmYoBa6EH+c757+PvN+bitrmlkbGLG
UNCQYozCox/wKDBviXOdqGc+gb+xrfTnCqLLe65jLVnFBmQ1O+mRT3ePX88yGNVAVPPrfcweojae
A6q3cWJd5mAuDBXCRxvtu7ydf3vYltHgeExLNZ2SQNAU/3rBz32mDr189LHrX3JGkBSUgVWXYJ8K
Bbt6KWaThr3KvMvcj+aJG1ZyIAGCgycBu+krigi/XLABLUOpKNwGwotnGFUJ4gQTRDqRhJXeu/ep
Dto9c8vLyAGvKzUQo/j+04/nzRqzutWxXRQPsMIC+PRBojod5cRTSwkPEbZq8I+co9uybACis2sw
0lBVfH0mpdV8Tjq6m6fd/n/nu3OfBVM3Co5VCIFJlAeFTSJGir4l1i5GQbhiyYVkTUn2Pa7C9pkb
XHrkyYBrftoEvsxPd7v7l4dfFkpeiAs1ZHKyQlFLMhh+FK5NQMsLkhN1yTOecxTvkVb3yC2ukTei
uTytrs9fdzefH36Z76vuxElQvuLSIjCedICIWxbYEBwjlilOlA4qJlVoDO8yAXXwyB2y3QBZFeE9
6Jl9vbmfn+c1teol49eSUW88N44EhSWYCWsEHay7ohxn3jJm/bskN37yFp4c+Gh61wsW+Wl6gJ+B
Bz6sSpbXTpeemmKZU4RyA9xcScDNZ2Kt55ZJpV1W2+gbUx++7YxbhxqWZiCUrS3rG5bUOvnjC7RH
k8nGQjkmoTlMiPDgrgSUgYItwkubDPgvdmMiAkcOvYzAcbjBa+3g2Hei1Z35E773Qwx8SPItkrIU
GOwYUggC4TQszQieH2ywItLAgaXbiIRWF+qehhp2sxhsK9cY5LbJUDVF4go88OubL69PTdeiwxKN
sJXYoCXRyUQIzyLEuolKAgYAPMLMsnFbuq088IhLHstry8H0EjtErGvnx1ClO4twOb+8Pvrn55uq
TtJkPeTsNC5jxZPExLNIvHYCzGyK2RpOfdnQYWTLYXnu20y0iAciATA4dyu7WpWP6fLyB//68hXe
5BFXoyySDAsuZ9RwAe88MkdsgN0tZh6jtYxrxzZmfgdEelM8+CvtB2BHa3y3Fs5p8ivlIRHikPce
JTcqgxsRI4RGBf18qqt2TtacB/ae2kX8c9x/fH3+erwl6nkvplrO09q7MGztXcAn1SVCBGoEy7gD
Sg1uGvWcBM0oMYViYxnq/ZZUzI4AGumLOtLQZHoa0Jz7a/oJ3vvtw8lUcC7VhbxgFGthEhXBlRAg
SsCkEnB4UWfak1KMDbALgo+xFQ/j08PKNCyHG7CcreWejDzICPzp8gXf9dvlsQSe9MLWiwpNjdIo
xSs9LFIdDAk5Cezhw30SxStXtnS/uQDRXHAuxhuu2g64atcv2Cvw/O5uvoxcN4fi/UkV8IaZh1+w
aj1FSSK4FcayCJA3dJiHLvB3JxDLbODleEt4JweEp76XDzwT+iHw3sBNvp+nNWidUiw2gONgMfGM
uQCgXSHF0ZiVSk6KLWXwnHnEM49lHs9gusV+PVjY5mo/OKU+l4WejiG00BqbTh1a/UkJIWLGpthR
ZCJcNOAsQ2xii3ZesVh4tBuxyGcSnUk+jzeI7aDS2Nhpt9rs7u4e7l/fRPfsQeallhnpoKnjRhJj
NFZvgR0J+IvysNazVFFtq48iohjJ7nUzLed5XcNhHJNdLLJ/uMO972AxHJZrSC1syVYRadE+C+pI
gIgD1rCyLLEUyqYqP4HEotbzoWmpZtwguw8Gz7Lz0+vjA1D4dr45bmxA1AUrCz2JRTgiTA7EoSKn
9d4JJ4wSxbzLe77mqVtgo0MGJ64GCQyf4ZXBjVVVfNfwFGFlEW5RCl0GiwUVhSRjaCwKLCYv27rb
w6fv7SUMtTDluqGP2TnTfYVP0ptgJFUVZFKGXhhaT2yKgxXoiY0BvCyPuTZJUsIMSzSh2K6JG+s3
ixz6lrM41oDdD7pPweD1WiYTjxwwZFvKZZ7bd4gkeREEYlbM3Y2cWO4U8Swyq1yUzNnNndAsWKzP
ZhaTLe7dPMC9m1eVE2NFR22kyjyBK5VFgODWAGObElFJU8FLsVSILdVODNUcf0/J0ez369N0M9Hd
9eQaIbEfYj2JqephVTjMWW59YBawos2FnYkEYymxLupoVKHKb2j9Hp5/KRlWBxqUkxycak2GDjav
cPs6v8AP/rpcqBl2qoTp+zYrMLcZIlswNIaAISjFZBGN5xvx+c/P39na83gL1g0OuK6E7cVzT3eb
pxvNtJvvakC7uOe11otMUyTZMbAGoVDiUaaJcWolF6jStqWD8YbE4NL3MNHQvhr0ATZXE+0OZ/98
eXk6+j4ICyiVWVIRnFSKdtZKsLPSRWyXzILSUhu1hZAVnnvZI+XysoU3swG8ua/nqZcQ6L0iPbzj
1ZF5sKGWKIe96BxVxFLspmh8EjQoCPc3JBBYH39Bsf6547gfcLymp8jp63xzd7W7Jbvn+7cUSU5r
jiTDMNRbI3XOnHBUIReWoTQDnmMV6krKQrt3JK2/CJ7WD95yux4EULPuL8f/6/Aq7RfYOZaZpJqw
wgEZbEckoCAbleDq11q1sCFFrCOCxSo8jjQ8ZzfwPee9PuXpPsEPv/31wp0jeFWXYM1hc9QnrrCb
A6bpFhpIsJwSVYzgYA5l8PE9rsD2kVta0+DQaJ7k6vwTz50OJnC5AEVgScqYiOQaXUohST2mC0oG
U6R2XNmtnct1lvBtsAO7zgyw9nrqm5rND6tyRqHlhYAVeaEuNF5OcSo1D8USWH8MDz8lsRr2HKNh
x7ZCc7elmtwFkeWu/Ta6xOyoWwdDjs68Jvgurwl/POoT4hZ+QS9qMZiQkvtgSSrMwYbjGPEqW3B/
lDfSZxhm2zos6WH8zpXqabohXQvJe9JM9VeAtY9Umm/nl7kpIBWGGYcrlwtsi64CsTIHEgXzUdqA
nbw3xPoNwhLx22hLdlBZ4tbyyfXMpbaDGRVAA9eSNaaxMPTlGYPFXHumFwiWrMJT1a0dTjUs+sOp
ZrLBzed1tOTEqt1kfaJvd/uH27dkrUPjHA1Rp7oQ9cS/2IKd4yTxJaN8cMT+OSYTHYNiSccMc9uy
IQ2TzoA0cw10sZ8G0Cc6gP7DI7yhm/9bJchhpblm1BHKo0AdFVjh3muipDBJYPbylloV9SQ60sup
FvQ0Wt3XfaE/ZmpcgSGa4GGep6rjZg7tVB09tBkA3Exn4QlmfxGRMtgSbQSxLDsOIS8EG2lbCRvp
xKOXcOvnGuCSr5WYnFx14ELGL+d78/g57p6ebuany8fd1GyUwhmbmIVVnouHVR4j8TFEElDZRigr
zZYykVoOyzXeTCyB7+bdGjgM9iXTf5338Paxb9qnh6qes/tt/3p/dTu36TJKu5KF88S7yPDy25DA
XSLBBIbp+on5d7vMm7ZxoT7884ff5bKaaanv9wPqkz7VOR1EtP48P7/sbl/yb/Aun6ug2SnKlocw
29QO45wFBzE2RNd4EcFsgeVNKUlcGqq98tS9y05Sf8hgSXPPBsU6e2wq1Vpp+ET+++blM7wg/MR7
+Kw+3v8dzNB8FdqVjEwdGAadOXaFAbvBYyEeLyUKd8pImr2oXVZRVe75w0+X+S9nHG+AWjAwjr7T
h+hoVEYXIq1RRNbzYlMcMSKgum9mvtgPuJ9UUrube/wJhze4/Ag/aJVYkHhw71MiMlKPKauSgKcb
PFg96Uz80D8xvED90A/yjs+r+RbIxdtK/oO/1X4Sg75oe67VqUIUXuqQ2vT8croGPS7pKtfijU7B
WfC1bcLzD0tsEgIWtvWAxvsYkfrPD7evuLJ+/uHTT9/lD//54Q9euHl3wq5t3V7szbkg8+l1/vzt
cb6cdreL2kJua9l5FqG4DH6Szh4CXO0U7N4sEqfgM5XScrBv/wodjkeUWsyDjqU4OEhvPTtNR0lW
+D+SWLlPyWVjZAEf1aHeeAyJOMoTYYE6QJ/gy5D/Ndyn01e3uec+wPvdS+69mEefyLU63SbcH0SM
55ORPde766O4JX47eWERvkCF8CzxM+CUeKbxy5qjF7D6+TuSRlnsM+OHb/jt9gN+u71dndZAHPHr
fJSEfst5EW/lG4Ll6DQjXOLBjQx4uCsUCUXznLA2mW8p87Lh0ZzdLCc61NcD1Fd9APCPeT8d3h08
wstSzRGzuLBX5EGCJvuiA3YmEIVCmCurlLNwhMUskncyKL4hw1F3wfoS/n53++35pulmuJpswE92
fcS+n3Z97vbz4zxPXy8+7fCFLmcUP7iZvoO5m/sv5e0z4BeMX4h6s4G/qV07s9CBKeIYVoaJDJs7
jxZCA8ZcTq5YlrYkFjbg0yiGDeaXn8ek5/XnAYN9MeRHeJ9P95XX7rZPs6vqL1Uyh1tLk4qw7k3C
GCFjo3VNovAQHiTnCttQHDxismA/mm7Q20E8MbnJdhkgR/N1Dk2WAQQPUidjLEm1/F9gmk1kYO29
DcUXxqVm2+mHcEawboxwnloSvlIDwleO9Z1T67HzogF4vSrlFpY1ChvhwqbegjkJmdgMPqHQWQBn
RwnLwudkSqFUbqWp/boR+HJ4yXcWA76zuKbDduv+51K7Nrei8cXnoCH8JdqgOkDM4Hxb44gS1EQJ
jEPchCDIz+UB4tj+VLj9GxXP8k7kONQwl3Z9pjPLvRzdhBwDq6Mluv33/xAKM8/hVyQfkhZZGGK1
yijXj9W+MpMiYJ/U4G5vqgXziMf/d3ctvY3CQPjOr/BlpVZaIgfMI5V6IOBW2TTJqqXd7V6QC6ZB
zaMKpFX+/Y5NIEAgqx72Eh8Sx8547M+fxwbDuLkR0siuwh6bL8c7qbEZWs2TgPlynfFjP9LyOApK
sWkQcWu4D3hTotoecVQydF3NIRTb53R0agOI6iO99ZwaymGLQYmjyG6sRqRBysup71cb8jk+1ZIv
BN/ggTrwYBXYhytKahr9oXFWnkYOIDRtdZ5aQzZuceAfx2HUNhW2bVWDtPDf76qEavI8K7gitzUK
AFuuMBXUsIZnhm3LfamuDWqCGTuyDwSHg+bbE+wjLucBcfmS+zomsMzYOxYzqYdNaokzgT3hI8Bx
1aFJDNU1sIWH4pU0TTvf+bCaXIM3PnY1D4nG0RtrHGqbJWKqa1vG0SGxPNMyVA3mOCDxzQ0YY/EI
gA1R18MUn5Nr4xKM6jxXpCmKWDLLVcFkHZUH1qCH7XIJxV0B+i5bLFK0ZBFHLzu0zuZ8g97zvSaw
DZk8T0i47M7mSVpkXMley1j6FgAIwXsSXSGcp803nEVBCJ8ZbySmPAvSrEyvK/7PxcOPSqsAAalv
yULhCa9Nn26aX1JJFOVpgu75aw1ecQ7IbLXYIXFZKHLWMcq7MuHpFfLXGVtc60a/Z0zQhqdJBEy4
xuML/O0SpZ9ARx4F620WQK220InS4wiP9hIXfQz/U35tkoy9LDgUIJSXxZJBT79Fn5AL/CoKPaGk
SKoqkmXs9aBiqHaGp9G9/+jcQeye3o5mU6Tsv/3nn7RL6GH0R+a5s8epjy5W65UarhnwN+TRJVKu
D6FVvMwrIooTZslHku2Qv2GhYO5x0AxzXMaR4iXpO8vCORJ3AZPVdn/sVVWA9PCkIvHjAf0Y+eiV
r/hGAIWE+ajrAMt0W8QJUsYwCvkCOQJaNFuFvK0xdrVWE+fubuaegFuDCYVMyiaVEq9bcVLzO3tt
06FrpQ4LKQ++447R7aNz73UoMcxKy4VExsK3kyzoY8Hmg0S+44cmklWtErrW0wqsNK0pcQGchblY
sKEMxOoNSnT1Mrn4J4KhyKIIfqYozR/jqLD6UgkCz/GdU42AKvX3jdAG0H25ROABw587G34glZS4
mU39fygi1Q4PgrvRdEw9IFaHAqBh0eGaLnX49Ld/iiKadWiHrguJx+nInXm0W8YwcbVWS2kgkJjE
urHSSxpCrdI524DEEpanm10nd6tYfX2Q+zNfGpruYPd79p4iton3Et/REsZ3WiNKThDRDr0klZRQ
/gJQSwMEFAACAAgA42mTTbA2gcrwbQAAs8sCADsAHABjb20uYXBwbGUuV2ViS2l0LldlYkNvbnRl
bnQuRGV2ZWxvcG1lbnQtNDY3NjUtY3Jhc2gtbG9nLnR4dFVUCQAD2rQaXNq0Glx1eAsAAQT1AQAA
BBQAAADsXW9v2zjSf/34U/DFYc9pm0Sk/gt9CrhO0mY3iXOxk/awWAiURMW6ypIryW5yL+6z35CS
bVl2Yivn3XbXSoDElqiZ4XDmxxmSIq+T2GVpaqHlHzceHdHxOGRHn5jzS5Dxf904yliUHZ2wKQvj
8Qg+o18VTdfU31rXNBtWacDP8V0cTkYsPb7rXdxenh6/Oi7I+QkdsW9x8uX483W3z5JpAFIcP8f1
YewebylV69yDv4EfsMR6QaVadyxJgziq1keT9NeoDX+P8BE2Xh+0urHH0OBxzJZLfja0Q01B7Sua
BVN2ALpJuKquK5oO6SRyh56dBiNQo6LL5LfWDUvHcZQGTrhEs25r3KYsQecn1QqoEm61TmjGjgfB
qCI0kbBxiMkhNhGWLUm1VHKkGAQdSoYktXp9tE4pl9RFcOszwtIRlo801Mb6B009gHqM4yRbeQaT
VieKo8dRPEnR7W1JQlU6kzvaWeew2z1RDo1TqXOoyfLZoSKrhqRrClFOOq1Wi8uNOt/oF4b6QeQy
9D6OMwvppiShlLlx5KWtVv8xzdgInYN+7pMge+Saz5ibCUm8IKWgXa/V6iY0HTIPDYYJo95cEgmh
kyAd08wdoq8TNgE9LdQ/okF0mIkHWq3TB5eNOdVlGzj93LXfd07sTrd72u+jdv/8Q//0w91BqTw3
nLkh/HJ6c2WfX911Ls7hoZOTG/4UzZD0IC39YKlE4QpqtMSx27u57p/aV73B+dk/QVEsGQURFWX7
wX1EQ1G6z+65oeTXfToJQXkYL5W+YTQtmuwKfBQ0AWqGOlx1Lt4IwUEwZ/FEdF82bPbgoiGNvBDs
71fpt1br7hII3gPdFF0xmsCzWLJah4fvUItzsO3B6efBCmzMa+xjh8CHw/IFBT6gX3kx45ffUHL4
cJx8e0D9y//v9j59N8RpdaBQ4BYKHzMX0McFE/TjZCQuWq3uTaf/8fzqAxqc9gcWOn4YhcMsGycM
rCzNjv/NkvgwZNF9NjxMchhgR8NsFALMJKwfjCYhzeIEqTo5ArdEwB1qYIEPRvQezFiGazcTgD3u
2QF4JSZHEjik1pE17WD+QG6qwfUwjqBZT8FShDWD2Rf+YFlb2r+0BExcyLN4Enm5CsTP/81NGGNM
TBMrwOXsPU0D9yPwumGjeMruaDhh6DXiMIPrkcQaUXwDSJ4Ewrtp8rhME6ukRZZo3gUeiwdxHDrx
w8zaFjRlzVQk6jMd3Q2ugwcWDhIapT5L+mDfwGD29XwEKgf6qmrgllyTgS4bWJkxeD/xgR5YFDcU
/mH8OPvilQoALyJpRkupdgZcR0uuU+YlK9RkxEdFOctay/LOsgA4pyzJ2rbdvctvvzrg6sMYtdc/
c+SOxxao96Cl1hKJEMUEU1iIBHATcpvtTbL7GNBE6K8fTxKXdWM3pnPhBvE/b++qEhJZRu1NJI5G
I0sxD1paPeWpWMKqVEfSlI6Aci7e7RjMlnnt+eOXzAtoPwPXGYEZuV+uk2AKJX56gypFBJGfeO1k
zUDtSRaE0IlZhqkdtPSa7e9LWNHRJhksC5r1lLrDngOBAyi7/WlwZllnEJ9wt3o7jQMPtTdTmT3+
08E7kDJKM6iF+A910YmO2p0sHgVuejS0iKIftIzatTEcbYvaTEXLCD12pjQIeYffflLLGKKc9ghw
I3m0CDEgejHryqVIWF81lJyRMJCaGl5Loa52sVS3FkRzNtSinmZVs6JYwJM6WEEpM9VSg3dpNKVp
l46zScKqrW9ZMyHdvEBeus0FMbSKH2FSSzey52FcAq28z+TBaJKC2w8hwM+/nQXwiQeeCURc7dy6
VNQul8+Rk0gghFyvgcCXy2CezRlyVDyDvv8ijseCyas3iFuUgEgZMPwSuu1chv5C1u6ZEEXn7aLU
63cpSKMgwfX26qLXu7bP+3a3c3EB4Y3dux3Yg57dsQfnl6c34vL7TvcX++z2qjs4713ZtujNWlit
yVQFC0Wlqp7Eoh5cyRLRWlirS0+ndA29lIunAT29Hj3TZ8Qt04N/nBSBIAQbdWkRglGZ0jymfI00
orbAGksEq8QqBCUfPFslEDX+etUvSLbnnw5QMokuIbC3HAYoxXiCaP3GJdf1FpHq8tHM5/hwurrW
gsqhMHAgwj7yHuHD6shBWR+EGb4BLmtDeTt2/uXaPA4FSoomtaBatUiZ2HU8xCkVRLAit4j8bJJd
rSZ2ZKIYKC9nWYuEgjtaO4iyN8gFR8vh+ZVwQ0WCSKXX7zn/gkz0OksApTWISYhSl7HMTFRIDvC6
zJpHOpjn30QVSgGFeE9oZUkpjspUFaM0ownvTfA8K8CQDfxMp7TvJsE4E/jkjGgYxi5KXTqFbIUl
IhEAFqlIu+0vgH0sXOa6xMyXXAq+atvj9DFyh7Y7/UYDwTZPABakxnmmsURrmZSiq4aJZgVtPgBg
F9R0OY/94VH39esjvF4PS24n6aZBuBogCbJtLEJPL+Dmbk9pEvDOjt/wYptjb86pvSg9iQJImGxQ
zpe3i6ujScYe3kGYVyI7TOIozhHcHkMsmb1dvVnowOXk1j3sTRLhiW/DGHJw/qdcStx7i8M3oNXZ
T/gOwS83RlMWWUulZZ9UjaxJHvMURS2LMbXBXLJJukFdXEc2T0vDdXXMoNUed1/H369RfieB5wEd
T7oglLNtIaHt0JRZCgagUGq3lyz5tdvLptHjE21WVmSBARDxCT2u08Qf3LQViX7IljUhElzjIoRo
eRZdq3kd35xjMYS+MzCGWgoonPW+IklWFdSmIjmwTFIkwvWYaab5DLPTKEser7li26uFRO9nisy1
nv1Kvp5HsSU923aB9OMkfngsNWM2gf5z1VrHWfJ2zdNplkzcrNyAHhOjobbHQpaxp5+BFs1ja9R+
dbC2tm/WKOoVN9xFRG6KzLdWP6dpGl70c07sPXJCiiRy1XqUVMlbUJp1+TLEejxhrEVKBSNEFUJY
ngcPBIKHzl1n4gVxMX7Gh60D/7EYcq8fOMhEohD8QNAwSu/tLKHjdWHDFoSIDoHXjBAPqaXKOOE2
6YPqKuVwfx6HucPrWOiCYFIZHdwm8udKXckisGaYldG/HWQRy2N3lLfUUefuTDTZilPqGgRIYIjo
A4tYErizhDOfPrEECCyMHKtGZcBtM3miOBLI27lepjm/IAiDoeo78x5jd95T2xE3eI8M3pPnA/D3
ZtC9Yhmfvfjxo+1vzEmy9cnYEsRjlfA+DMpCQwNOQiL1iQfU0I0IAzIl1Gb8+pHrWliWDoQv1WHA
iAOpnmBwNQnDPnTtLOuLQbQFL8DrOA4FR8jQIiiXinL5YBvnTXAeftVh7aqGIeesLwH76D37h5hL
sT6wrF2+/OoNWhZC4YPuo/ymmH/hIsi8+mo9GWTV8CQjl2HmUMVUXcE7nekaSqN20fzATZXVPEio
x82RvCo3BiBRwgRdLrPR9IP9cGWl4sr5hGwQ3f+1nNl1nnRmIqtLzmw2ztw485/TmdWKM4to5jL2
JiF7gTt7Bh/STtlI5NypAIZ1/ryu0ZZouYbOiIEiGsVpyJgIjE2zrhtDwxumttzwfU7ucm5e+pJ1
ESwfVGLcjdM62HVdzUVRHB1OgySbQI2z4ST6grJ4MbtxETgr+rWsXlRY+7LbiRSToPa6h8Qkh2G8
xOuZ76/z+tnyiFUZCJFX3V3F6kvc3XXcrdydGMqSu2uNt+/Q2zXLWklhznuDQhFhwNf+/MBpbC4w
96hF0lWmIZse9X2CPnYu3tuzzBVcnkVeYWefgmx4w8bhY3sScXhiXt7Fbf9tXtEh6IwldvYq7yCX
ywkjI0oFS7aQ38Gyvk7+fsDnoUu1yC9srsvsz09PiamolUx8s5TMpK7Cpeza13zk6rwnJngeQNbz
3idI6+aDdaZhrE3Ln6WuaYw8RX2wGKIruTNZn50/bymapOWanlFdyfp1sh+woFv1vd4jBp9u5kn8
V1E+YdkkiV4YvWtEYou6fvuafxADL+o8eq9TX2bm839LtBY1Nvauxube1Zgvzd23KuP9qzLZvyrL
z65qdqHXG/HlZEdifVseuUd8qqJY0V3Rl8MnCdNn9OVKqotBX+95Qb5ihbmZ7QH/OBXLkisLnenU
X1lYUx4ZVz2iEk9Gh7927ro0DB3qfil6eL64PoUuGLnL18/iZBB/YZFYyCMrZjUu3IIjww4CfpdX
JUXMdMiSmRxrw7bNUxO67zv5YinxxsJ5t8OXhnVPrwanN+sWk13Zvff905s7uGsLlrUnQ3RfkX0E
DD8XOhMlr2OxflJR9ErUtQ1BbEDgwuvwuawjTjI3ETuIptAI+SKwSry1eb28pjsKX0pVpT8TP0F+
EHlWbl3wLx/jslg0GbGEvyog2h4bRKssG96iaoxSBa2rGI9QNaWycncLgp5uEASNXSLXZXydJCda
viocV6osweUMxHrPJ1JYkzgS1nW0bKxPM+AL6JYWtgniT6/a11VDIz7h83LTr3ZKfRY+VulWm1zV
xHJXvgqrcJpNQziUOSqGAHZW3uY+XZClkWcnLGQ0BxAiVrDWou2qhl6mLXJXwSKe8GY1xHrUOiR9
WVKNEsmQRswGKwxoaHtJvkRN5ws9lbp0HdOp0p3rVZGwWDpai6JrulqJIu/GQsi4xAeeks76DA1y
O76OtF7343tkbW9mGpJYRbrjzkzZv/5b3b8qa/tX5f3LqvFL0moZYjOUshEdD6FfzNeiiumDlZHE
Gr2Dw8q9A6euLCgXi7brEvVkyasQzUXOJzvC+BvvJ43ZVOD2cO4QD1fgvIzisqzPRvt3MAyl7m4Y
StvxMBQ2G/NpzOflC/T2b7yH7N94D9m/8R4i71+VV7KCrah67ipVaUF0/+Jusn9xN9m/uJvs33QW
2b/5LHn/4hsZ/w7dgLx/EYT8A0QQkmSur7Ikq79Hlfky5Z/PB4ivRwmDNEMfWThmyYvf1vlD1yrX
ebeMai6hSOzAkdetO3srL39J0BPLicV98Toh36OFf/lEw5BvEZCvoCGzfR2C6P46lyzf3EFVijWR
dWQyHL7bi2BzTZMvQPMizixrDJ/n0gH7x/PROBTrbYqXywvR+m48Zt4FHTkefcuXLaH2fJuQdUXy
V9iqRXjl+FKpk8eIjgK3y6ce+IZRpZcYiaxrqL0QUdRYk+T6b6iqriypYolVzrzUCLxtb8X7p+LO
BYjxrj3/WENarKlLwg4tQ6r/sqXqapKD1u3YcvCO70oSin1QPiV0DO6Si9yZZDHf+MudLZQSnpfX
oePw6Ts343VhyUxay/qbLb3ju5eEs51D+J4uy3SEtgnG9d/hpIrOvLLNWxZbvLa5dP2KfZu7BZ9L
LnZa0hebuahmsf6zntcprplL8C3zB9U3R+dryMyn/IpwK9uLNydlvsj8I6PjBoIbCG4guIHgBoL/
cAjWGghuILiB4AaCGwj+XhCsNxDcQHADwQ0ENxD8vSDYaCC4geAGghsIbiD4e0Gw2UBwA8ENBDcQ
3EDwd4JgRWoguIHgBoIbCG4g+HtBMG4guIHgBoIbCG4g+HtBMN/P/+Tsw2J98Cfx4mQDxQ0UN1Dc
QHEDxX8cFPP9zPJ9Ok+YG3s//CFs9ezAYf7/iL6avKcAW2MbbsUnjvH9ALbOObAMS0b5MLPS6U7z
DcM73JCFTxQuYVniAzAe0PTLM4c9bUuCn+aVm11pO/Dtn861ehYnxeNnQZixBMwZNMg1GU+ytzsk
34Ye4++hMLa/t7elMmu5orHLknCvu2Ep6G3W/D+AnD+tc34iQVdUFg6sThxVrtU0O8+XpdK5zmtk
SkrHrBnlDtCQX9AB7rwLNr5LF2zurAuu3W8+0wXjHXfBSrP1TrP1zsvNh7/h1bm9AW/N2HlvsVH7
j3+aQJZvk3kkkLDYM7MMI5RgjxJtbe0si58qIcDKXL/X/2bqRFZM8wnqle3oFbx2p/6NPFRHwbK6
xUl06s5sVdudreq7tlX+Kgw/UoF3Nkkchiz5Uwz5/Ehn0RENencT5cXnZ7nkauQZxfxSfgiEyk9b
SajL7JwrhM2KXvsIGwgCmKPntboOaebHyWh+qg9v5/zLwl94CDMuCtqL016wsTjB5i9u6vyVg/zc
oKUmaiy9sfS/mKUbDag3pr4fpm42oN5Y+j5YuipZ6881CUaLEwnhIo2CkTi0AL6NRivnm/xonlDn
IAhmOh5G3Pp70XxAm48Mig35153HvomeYhJ0Ftz3Z2Mg+UAomFkwFWcxqEolydx4mIQO/1yGxsFX
l9r9IU2Ydw09MB/bnA2EKKq85kCSDaJSSVeRHxRULvMTGMhLRi+eNH59d8Zv7Nr4sfXMoT7iIxjX
lCXZS6bL/rhRln9MoGr/Xh6sLTc09g1ZNiTU7VjWDQRwfBz6NCoGpFO4YBcnkD5zyqFAS2JUvGEz
Z5OaVAfO56PZ2HoXACSA/uY/qxdFXyCbFe/YhokPzZmIY25YYjsT32dJ2y4zePVmqfoD9pBNkuIM
Vl2reM4WHB1+cmuZwU3B/b1gzrVVPcBnGy9nil94OYsE+goGokdWqqfybD6ChlDXp+DfX10/rhI0
Va1yKM9GeqqBdVVD05EbfKV2PMnGk2xGTpG0yhE8m8mZmIESgRw5F2e19ATF2TlRdm+JAZaMukfw
AAPqe4JBTussoSNBS5FlMb5fq/JMlkTlST6ZI2Y7Pwb3w08Umv2SZeJoXdUQB+3UIKxBh2YqiLrQ
PQTZY98dMh54Jr1oju2Yw4a8K2wvTtfZxWyLurvZFm3H2E6a2ZZmtuXl5iM3sy3NbMufJIdTnghj
f74bAM2XWKyioQqm/E8ISFYRcJb+vQj8ZGMj+GEJV+z3jgf1T3fEmqkS6mlKsTiZee859X5Ip6zo
O7FE9gT81MagGoPapUFpjUE1BrVLg9Ibg2oMapcGZTQG1RjULg3KbAyqMagdGpQmNQbVGNQODUpC
bkLTIfPQtyAbos+GVigF9TOaMdTWlEMnyA6sFkIJfbBQTl33marKuoF9BiaXOPMbpR9o7MRddwOs
KvHWPsGZeMHyHR0rmqLDjTRY84jgPl6I5TMmUYVicSNdvSFRCZigxFiticOdJzFLTGRNZ45raAZc
x9KaGyq/gUs3MMaKT4nJmSSYPCHwf7k7tx63jSWPv/tT+NG7QWv6fjlYLNDXIFifk8DeBOctICnK
1mJG45U0TpxPf6pJkWKTHOO8SkmQ0ZAixfqpuupffRvCXjvBV06wfEJMT1SirqptrfOH7L+UH0+N
ITzfa/c4uxf4NLR1+L5XHovkB37z/vnTvqke3/pffv1b50vQZOPx+Hx865+3bX/oeil/8785UPzj
5aluj5f38zdv3rj9oTp+e9sN2Zyy31wuI3hHapoNRW/Lg2y3282W2PzP/tyvtDmc28MZ3BCrH+A6
+LEhG6J/+I+3/6WEEJSQgBj2HrEYHLKEe0QjjsoTpawx//324bfnx5en9vTw28/vf/17fPjPh8vd
d3kYKHdtP/zzF/+xPX7dN/Cu7zzE5s8vzXfPh/Zr+/j85Qlez6xullbz7dzq9Pxy2HbTK8DcjYH3
EyEkGCq8dvCfQDbJiJhzFjkVHYoqJUNSZCJxMNTCXeDryzc4PfwzD07lGz9cnu70cHm89vgwzIo5
Pex/+fx8aH/+uBnmv0ze9X5fH+GLfMijTB/3Ty/wjme49vi82z8CqQ8vhzyAAfeAy0/7p2P/+/Xz
PrSn55djc33rh+fn88PHLnKNN0/Dt3B6uNo/+W6uBwukqpVLpM223e3U0pFWvccErbxlHGmuEniP
i8gE5ZDWySStuQ5E/lve0x+YPB3BitXzpyO4retdu3v7A0Tq5/r/mo29RO13SmB4Hiu1wDJ45CyF
57FcIxuTRdYnpQ0nXpJ4M1/yy+n4ALY9zGydQgJKi1gABxucv8IMqfnhB/iyLow4xhuz4cBJSwz/
SowCFxY4WYwsZQxZ+NUZp5W08hY5TcwtMAGTJSb4Z8DUt6eNG0gRKugGyG4EwHIcEltw4E+eAKzE
OXLJcCQhqWqeErPJ3iKs0ugZL73kxWs6C7b50V4NuEkHK0jSSEjNgF1UfZQwlBFKZaDRszsIuCWD
SUgrTxR4peZLvNLojPfSaqt6P222RAHRSGV0EOIQV5hCwtYQ2DRhiBMTsDWEMUZvtNWO5pac6jVO
NZ8lqL8/1/Ak3eNdFMjbd4ZBA4Yru5/AjiotVVY3REiCGPMcATGQPUpybhkLRsY78MYliolHLk/O
aNcrtFugzTqvrI7N5/3XdkMHxxS8i5EM8AbPrTVJooSVREyrgLQA/9SWG8AO+UawW3TNmc0lrx1b
8jICD7z2zUvuWrhqFEkhX29w548kBOy5iQg0qECMRg2BkXgUIiaSi2BdvElgM6MLYJVYySo1qwdg
fz490qt3QcPNaQQz7oTEEPSizqCkRMZTjowmSUnnsdPuFkFNjS0o1WvJoTZy0Cp/XQWdwl0DzIqO
aGoC56DjeI5viRGkGfgTI673NKjybhHTX6t6rq5W9NxONHN9kv7RnnPog3ygIFhtSM4I/atcvRAq
bYoCQYxyQMpSZB2GV0F4SBWAj96FQhkoTMXJcGyKFSqAZTVBmaGzfNt/FDzPbv/p5XjRflASqiz+
eqnCqGYuKoyUCxiqbUGRSSpHuwiFGIQ4q8wdoF0hMYG8crbE3WyXuHkfDye4xxtufvq5K8RpziGZ
Ndesr1I0IOfGQxpROUYSjphgWWpbg6gPOhoeidHqDpB3DCaQf2uPp84W258qCHOtVgjXeoil/kP6
+LI/t6PUBvcVXTy1NhIWdUJSEnBg4nM8dRRRTrQ1xnPFbzKelhaXsLZsBdaWD1XJY3X4tN9eS+Ts
dM6SxISWSIcQIe0kCrUxjch5pj1EAOHDTcqYqa0zSO0SkgQtuKyMXy9GHLVUhBSQpyRBCUIJUAsM
SWxDhP9ZqAXvpDReKUNeK0CoImLJVnGx29XLcu+nw+mcN3fssw+ExC755E5AnnCMhBokiGXQdKVH
1kcQRQ4EY6KSk4Rvle4vx/3X6twuKr4pjUXFNz1ZAld4BXjuhugFeX/5j22+/DxWMVx0SUf1nTwE
J2YdotQAYQ953jGjUNKKxcCxI/omw+SK5SW57UrqVu12iJX16QmS9FDJmA4YyQFTiqBJEFDEBK4Q
wyQiK6lDkE8gVgqIpvQme14nBpegdmYJSu+auaRsm5fj/vwN8grumrLQVEvARrvuBcOCVjRG8Ctu
EGPMIKsZRnmdl0rG0sDuQdsMFKYa8nKogGqWAzf5YJUDZdd/WDWfR02jc6kTCFHWBo+IIgDQJwYF
tITcI7gOjkdpkrg5t+vH7x9Kg0tQuxX9V+Gx379fge2P376cn8f4hgnRXYPtApxkUmPikNAxgMDB
IHWEsuB5SaXoFVc03DK4BYCCX0VWJGFFqgm/L/BAx9+P1/TAOoljJE8gmA2KNIDDGRxA4ngotROI
RMkcDvbGuZWGl9hovYKNjT2pzfOXb/mBRi3N5diTGmMUHAuGIKyBeuEGI52rOhOlBk+0UdxggpiC
m5peUuMraqRqxvoj9ys2s6Z6GaXDnahO3GPhkU+5/o0YQhwL8IrnnkJBLUvkpsGV1pfo2mXPKq3p
iG42VwySLO5DnOp6DkLkyXOPDHEaeHmo33CSSCbidbRQ42F6w+RK4wtutViRcbXWQyKFK7bX3nux
IaQbEQYwxAtCQPW63DkA/zNYMgQeGDllWkXNbxnYaHUJqyYrsOoxmT5WL4eJizHWBzWTXSzaxC2N
AhHhcucUYcgmkL1SSh7A6yDW3XI6mJo+Y7ZbYXaNaXkN6hjODOgO0vVMJ0kM1E8e0QDMmCYeOcMl
MFMWXngbbqiDYIlrYnVJa7vmYVs65M1j+/T8tZ1mzkst2imOYKXxPiFidQTF4aDsp8ahxLxLUgga
/S0nzrntM3BrbrYTg5tdZrpWp8exJhVyHDtKCtKjAlHrAs41aRBIa2pBdzgnVdBSUnXD5ObGF+Qa
vNLnBAdn5Oq8vf5pHHfLQo1jo5MOFBGcK4OALbK5sI8OynjJTRCK3z61qeEzcM0KODPOPLtc31z7
i1Uv1mguqyiBFBmYh1SgQHIYa0BySIpSssS4hJPH8fbhNWvc6hXJ0TQLbsWY0pAgZD/eQ/MQm8aG
kCgiSiHPdSRQZhkNv3rik7XYRGPCHSBccihxNmtuuCVDyrje5lztD+3xqTpUn9rjVaVcKq+cQRgk
DiOMyU3YgQ5OEAeZCQgrAoyxlVLEuyC6gqKE2q5UYk1LBlk83unYnob+/UEli674JwZHGZDxnCLm
cw+85Di37sBABSpD5D2AnJs/g2jWILYziNvq+Mf+sB4lVaKE5uwiKeQZZgGhC14gp1zyTkPNx+7A
IacECoJbvCIHt3kZShEqt4fTaazStOoLW5b9kEYifF7XYDmzWdjELGw4sqB+khdKMGPugN/V/hLf
2nDaVsgZvv1hN1Yggqi+Zsslm4jGaaERuKABfZPnXJk8vqvgayEmCUzp7cO7Wl+yU2uuV8tZWnka
5TQRlw6VTtwknz0PecfB7bxmyKRoUdLSQV2nFGZ3EP6e1rA1ay7X6pnLPVWPICvHmCf7HCxzL57g
LpEkQMs4cDhGEjRZxhhK3krtZaJO3oHXTQGUAHfVEiBk41k5cng+73ffRoBDzshdB/AFaGl4nkzg
JOQMyiBnOIdEnnMVIQTSe1DWUwBvSlZmDWA988BTddjmfbGGrCFIP0Tb9SQnRryhzqCQPQ9yRUTW
yoS4ojFEzjgLd4CwQFAyJGsMSTVTLvAM5eLodxDcxvTBjbYag46WMU+z9wxkC1ESUSsVdhYHH8Qd
QJwxKDnSlV75lta7ls05DpaskYzKGs61Q8l5aNFYeeScw8iapJNNQmFF74NkSaFkyVZGcuHgik+W
67kLlEwaY7D1iHsPLVvbgHS0DAlLoVkHmTBnd4JyCqEkyVekTbuQhd0W8mPHA+5TtM5ViU0Mijtp
EOYa5E2AOs9CI0fOSsqhgNbS30HHw8T+Ep9c6XBoFR0y9MsBipnpLMmuQ19GzgPUHoh6BpUctREZ
qoEZgfqEi+R0umXHmxpd0lIr0yXbqhmc7c8vzfqAEdVOJQHyWVrtEWMWSl/LZe5CEFRphzm55Rw8
2l3S2q751raZi5dr+/798/PpvBbpQpJc6zz8HbjO6/ppnr8MJRxkDuJSjnThriLdhETJtF0Ldy1Z
Yzr8+YrXoEqqGIGWjDDxed5uTsJEOMQ180RGZYSP95WJX6e6Vqe01QrVXh69zlQHzJwJkIMtqBsS
FbKRaiS9gmzCiPNB35NOfJXobqXPdUe6tPzabkTvOIi/jSLd+Gei1OmgoPAzAVq8DApBO5coz4/0
CnusfZaJrz7iqzJ2x1Za0I7p2ZMtJKwkG4H77MeEiJHCd8wFfMfeamQpheczMupEIrVJf+/RvqML
d3xlhtqOt918/Nf2+HnH8PhsOArivbPIkASZmWchk6hFKcYUWGAUGvx3n+1VobUTK7lvJ8lseU8/
1bifFHpdMkD6Ce0ZnlHEMclRNBjCuaYY6SApRHJoMVBEcerCvU1nL2ksJrSXp0voa/Jsp8bAVP9F
N2QyNVuPE+8gL0JpAE0n5NkpjHrcqTOkuVFc55meht/kzOypxSWrlZWmjGZWvZQ9XJYNjlqWmm5G
Nul6hzHUnTghTPMALjNQ3gduQK5ZKjxhKqWbnMde2DylxZhYBmiQrGI6PfH8OA6EESHGScQailfB
FEEaC4WY8xbEWPRIU0GNg9Kes5vcQaQwuYSlVlyLKXGdAdtd+Xuz+9w+wrOuYkvKakOpQNqBKmCB
5kWkIUEDVRQ0gwsA7oaxzY0vAWq6AjBvEXLZjCHnjt8Pnz6fz1/GJfMgBHjXOoXUwksrUPAYSnQH
vmZoiCh6r7X3zLh4kzuFrFhdUquWspSJvKL20kv0/4/7c8sGXjQvBc89vnl9vMgdGTSANmFQeyKb
h/+5C1EzQpS7zQZa2FuQEmsNVOhmXOz511O1Edf5wmOaBM1hbYBWiAWPeWw/IqudRgLypIhOhahu
0rWmBpekzHJMC8Lbbibj+h3M3refqubb6l5p3glmKQi3YERATCSHrLQg1633wkJ7tzi8vldaf+PF
jmn94eJ5TbWcC8gqpmcrVPu/D5Jxdn8bBGqJDes0Z/cz95ViBiLIYCRo7nbmAWKItRFhriSneY6z
k3eySLUjMFuh2h0rwFZyCZbjdm1TrB+P1ZfP++Y0LkylXGy6edARWgkx4ATeEcRMjAA1Kfg1RKg/
vDQy3AnUgcGM63B4ipZTulTtnBm8gjb/ubk8fZVelglCBM9zWHHeVkziiLSFZMekp8ha4hDxGivp
VaI43QnYTGAGNR8qgHK5lA/c6HoGtNte9Kefr3cDspcwQJSR3WKHEAQIrRRRIjavvYwJ2cQ9Ulhy
JqPUzt/DVh4LFMORgmtVrzhqtR1nb9om/yHePRSpeRnnIDM4FE1yQ3L6JCImKKQY0hrnBdPS5NlI
AQXmctesMJ6IW0yfK4aX4HYrwbMm87X99nRqj9nqtZ4Q66X2IUHdFAhkJCkTcnnmsI1cB3ihtbyj
hf0LFBPXXJwrWNds2fHEm9U9Kn4J6e070ed90u0MmvuxIwRO7BMGleIh68tEEYfg6h0l1N3unkhL
xhcEs2gKRwqezYqi4ls834awu/TYbvfNsCPS4LgcJ56gYEU4EWj0EDSRhuCZp9JRoqwCjRnvDOrI
Yc52PFEg3jKxgpjPResgHhbRoVOsNkoeci0SossbWutus2cPiUsbkjjmRKX7wTxnMQE9P1Wg3lXL
2T15ZXLVAOq89A8CgiD9NsFW0RCNR5YwCLgCSxBVGIKBs9RpGrztRq2HNJAvvn4Uk8OW7JOPyge5
qreQLfO787hIsbKSJBN9hJoyJiyg6KAOGQZ1pvCEQKEkqce3N04+WFqyMWrJRho1bG/9R1sfz+Pg
eDc1UgSlNVSMeTVzXp6AkQ1M56pMMs98sFitFZCzmxVPUVO6fIqatrO0DJAOnx679pY3sGS8E4jd
q+wmhohEOUGgshWC2hgyNNYsL78zcPtAA72HvVV/Bgg/vo8fJw1tOFQyZc2SaUPwjClkmW43tz6C
Kaa67hWuAmEJayRDnihCIIa5vJmjN4Fjm/d1FOQOWPbGT0j2BwqOy7SbD+70fOuYalcd9/lH647P
f5z2h0+5/0V23S+gujdMbvquK2+SsCrlHTxknlPioJKRyiOMWWDGR26Zu5/80HOZYpluK7M4WaDf
8pXADQdn6fjXnyYeLPMocR6vDAQ7CEhIaQf1Ysy7AFOjkFQx4uSSY97dgQd3tk+Idr/PIPI1iNUc
4of3CUypzufOc0XeQl2YS2SNIWKrFQo65X1JsYOKxxMUrA6ciyj6gfM78diCxBTt9HiJWPyLvHNp
jttI8vhX2eNcilHvx8lRT4dmJVljyh7HXibQ3Wiq1xTJaJLa0Xz6zazuBlEANHMmGA5JZMEkgR8L
WZlVmf+cI2bW8rrf/9fuW3e9PR4envA5TmtohiW2CAv+BeXgX6jMiWVYo8alN5Lm4nxeWkPb7zW6
t/bC+OZYr/Ts5jgVdGK//vbcHZ/+dbpFBn4QvkpOXDE0XbKq1God0Kv1uA6IUgwJOVGSpXQQjIGP
xuIK3qcXDCO6L4NjslgUNyMrtlLOO+CcsC7sxgcPDiyNivCialYFvFlZJhIVZUpZY7QKP9iNn9zj
eWR8g2rj7OwG1aab2s93v1w/H/fdFm6RK1XVieu/6Oyl4FVMsDjBJAIrKsEPiF6iUTVR4/Fq5KtQ
cz0TGO+7XcZapBu+gHTWkgL3oW77Y+26dX6bRkM4gmYVX3aROFHwN4plK3SiJfzyJY+ppMzkGpao
lwcfbx0NgxO8c2Ol5Vbst42x+lY3Rf/rL7ZO1p9++gk3iG3i3FPAFxPQdPgqCWUh7FYpGe2CcXGt
NEfXT2hG104DY8pazfSGToM/nMRX3/rt+5qodJrL50/FaR57eCV4gkgrRjRiBitDCixpwWcaVNAl
a/0WyFcoY/J1oCWv2QJ5Y/e7/aBkd8Qd7Be1hXMLoLptD16DsclaQqV22K6hgDkOmngsheC2JO3U
60xFmTx2C80uQNM7te9Ppx3fPhwehy0KbU41dLy2W4klGA9hLJco/0cxS4ABrwy/h0JzANclvMWZ
2UJrYM/bicAg+rLnGfotXX9aZK0jdrOjCgg7D64C48Qxw0hQxlihSoE45K2yHpg1qO0spQMGO7G/
FOaF9/76JetRikEpKYhcErhoMI9DDRokQRkGorwQ2EkC5jl/o6hfmDWoOz3f5tQ9Z5c8o/f+k4//
vQi7UI+ycYZoHmF1c84SiH0hdHPZgv/LvM72jcIeU2twz6vTcNAOyi3vD3d9d/S3Nz3cxyJ1HRx1
PmliWME9/8KIM6UQWD+zSQHbZ71Vy70Ar4VvNwvw3W7oMvjQHR/7HxoXGimNNsMi6XB7EjuUwvor
SOEyeJcpd1m+UfJTci32biF06buhrdTfnrsd/Ljn41DOKgbRQEGD91YyYnXBZnAqEEdRCVUIG1Uu
0hn/RplPsbXMN3SB+V5czHr4+PF6UmOBx3uFSZWsN4QarEpklGGHuEhyMcFo46TM7K2unwOxFvS+
n4Pe66Hu/fRmDMKEbkBtlZROYiuWgh2YUL3cgfdNkgMnhYqoqWZv2poswN7b+aw21EwbMv32btz0
9HT6odT5MNQYz50FA654MUSAr0l8ZozgLokOCtZTz1e0Zf9usffpeHhM2DDu5oSZmZ43//L5+vef
L2hPu0zgg0SjwVZIia43UwainGSJhzgcu/CaIFaU/FUBjA+a8fOW5EK4iIMTkgVuZCmXTmYIykWR
RHKsdkvZkpAEJdh+MqvkXIwryvMaU2j6or8MT+DO9++NeFGFxS/8hEZkEJLk3J5qlngwiQWHSRrg
PnMKDkXxhcDsLDwylmAWr57rAqEGr+jne/lGdmwhoe63d5dZK529kqeaXe9xWyNHYiKgFUEnEgws
cBCec1SmkyGYdeXT/fZukkf327uGqGbdnChEgxNrgHni4NC9+wV9YMAJX4D/VqaoaC8ThBsWVV2k
xjMR8By40EyW6LR6RXpN/5HpAGKEdRhryBq24BMYt59s2X/on7pbLF80V0rUJuj4Qd2jl0FF7oku
2BlZgFXwVMDiJSJEeJ6GaNYQT9fnHxdq4+cNSOvmZx/GOewFdapofGnDyK6YqOUyLrKiIS4GrzUy
cGIdcFMmY3dLLbgp/jXVHozrGJ8W3E/juvn+gdkqsZC3fT6GY9gKtKaP4R7CFZc1x8EHqjXYRCMi
xLTeo6IG2EktBY8p6yxX0Qh0wDCxjLNTN9OLBaezt9O2tgik/+un/HOjvmBLltxTwrDrk4C1hjgX
0DZSx3z01vsV5YwNCMYHxpexlqljC0zdIJCKN16u47gRGUP18no4pFXhKRlShMO+yyoTp20ksKSH
zISQMbl15osugZlg3S5g3fQLntHvh11/j1PVwv9OT50vrRGWo86AEKgzkA2x4NCTCP6SKQ4iKBtX
8ubXp5+8+XWsxblbcIv2Zl65cXt/vP5+t8UqWHaqf4NpiEi5iSI6mKtOM0vAoGJCOixDlBfqpdUC
4vo1uZpnEA3Z81hDdt8tREj7zXCu83P54/pLd+xflPCGdPFAA+U6OfDZI7YbKZ6Afc4EHEyvS/Qm
c7Xa13/CpWW6WZqt++H84Of3p/VuThTWKGZwVUqWY09HiDe5hhhUoCSjw//CeomOqYx5wgSdr/sw
uLnM0fj7h+tPt883h7vr54eH+5cehi9knaJWcfDZi2VYc+FRexUCTyVVcjmXbPOKl6plPi1jxhcY
s0FDqNrlD/H2APc1cwSyyxxmKyc2aHCubPQwb2Mh2ZoMHmw0fBWprT92BFoyLVg+39+zW9woPR+c
v4cvvrTyaBoiXknciEregZflNFEQWICVlY647B2EocmaEAIrVK+W7QKcMVxH7RwuDJppHt7NzbG/
gSUynUoW4WePYwObNXgFLJKssTzOopcgULA+lxidtbY4vaLYYA5jHCXMr7bE3XwbxXGMbc15R/Xx
9h+773fd18OLIqy9OjWT5akwo1HNQaEQlLCMeOMoSamYYmK2nL/K7Lv5QzfMTh1RJ8yEVAvBwId+
d+guc5Nzi2mL8AcNAfPSaYP1OMXhQaAAIyvAV6DaQ0CgXNFiLUFBpTAJCupYg1UsnJw4vZtuB9Ro
4vP9/e3m/p/LZKXUUTiK07JKIQUUdWYQ1qYYwcTykN0aNEfGIEZwx8MNX6PnG33OmGnL91qk/Pvh
8bm7PfyrPw4Hqeh1GcFCMYrYKHHP1CfwbMG6ygiOQnJcwNu/skLuFxDTOu6XKy1lO3du3aabppJ/
O9Tc3tJt+1MtjMASGF43/vEDPFll9czaEZqQNpAnTmZJCodZzLAdMF9RkdmFxPgY8DzU8N0tFETA
oJvkAhwe8AkfL/d/NTzJybEbuwvOKJuNtYQbVIHA1mi1P5qJsbAMJhrC3xWVn7YgxrWn7ZUJ9f0C
9d3Q/+bnazxYbLcVua5nBQksBJdKEMqwH6cPgVgTKTHScwaAwVUrb+HkdYZoDLijdr7B2FHHJgeF
cHuPTx18m9vu8bHNHCi+WFEoprWg1xtx24FjUzovvZKJJ1f0mnbEGhCNc9FcaSm7Jcrb6b5j/fux
e972k1wX6WjRxZMkJcNu2YUEljzRLCbqgzTm9WYl/uDQ4RopTE8d6mALdscWwO7MFGyjRuX/qCfm
T/jZoZ3MlmVhIqx4pTCK6RrYaJsnYlSES5GFrNYkKdWCGONur7TM+80C81Nz6eYEHBztRgZsAM3k
WU7GC84hCHHx1DGZYc0t+Ms2pexs8VnlVRyFT0E05+LTiw1rRudeR8dmOkiA6LwlVxmfYpPa9oP7
wAxNJEeFstzFEBfAfGihbLImRWv5qizHZWeysRznwZasnSfSdtqxRVnUp3O0U0VARzGgrVpTtibr
Z4ipmSXWA17hTCJBwSpoLAToWniR2CoqgUYAxoxHww1lu5lXVsHgbkl6Dp/y4/PXTX9s/Quewb9Q
MIWVRd1Z7PyjtSSx6BwpdlVfk0rLlMRULm10qQW9XTAU9sVRrr+h6yfg8/iEIqyXRl5GXelT6UPm
ydoQ42lvGEwFhCPZcCK1KjF4U6h8nUqUS0/estvtFtjtp+KocE9P99v72/C839f9CTSyGnO6RKQo
bkNPp+siY+2lSZao6HyJWoq0ply5lsNYs6m50CB2bAGx09MMz+7/dpdX3+Gu2sklM5LzAl7CybLq
mpmsSaCoAKe88Gs6cf/74djD939Mh+7m7v40Y0faIvOrLeaFQtbO7afpIuUIdxnuu+PuJRVcWn0l
xZXBzNrzh7isGVkEZYrIxMAyeODuJETSofCiwFOmhq1o523OpSkimV5s0Hd2vjkPg7sJ+l8/x197
dEaquJO7EuqKY9rt+aNaE2Uw99YTpjFBNKJ6XsYjZpdtoSXFV5wOMUc+5jGCPR5uMS9F0l0/VdK5
fjjCV06m+Fgb1JlsnI2OJK4EESZhYx8WiMyJpRRT9GlFE3sBx3gDbn61Yb4R8024biP1ZGp/jrHZ
3uRWB9SzdkVK8NtCBNNh0Y0rTppU8yVXlEAe4zh1PMaWoJpnRXRbjJjPMuF/T+cYZfiWQytqXXVQ
oxNBgtebikA5e5+IVwE+zYUG+FNeYwvqf/fgDb7d0ku/O51tIL4HdDw2z3uC3U1acD4HFRRW8PqS
iQi8EEvBmYiMqWQUt+YV6WeOwC08cotsO8/HAzM5dPX9DH4EHlV8xz2e1J6zC01rSEuLtTLDih8N
ZpFhWm51ACyKziVbcn6VyfY/fvSGYL/0zvYbMZ107XxTwYJbqwNRXieIoijF1DuUBVFMu1zAcdKv
eb4tgNqzhdBzb6fy8qF77OsaUyfYFTuXG50/RMenoIalRjVLbFiJWXbO0kzAulmpuVe5rEgVfcAx
WjaGsTHfDaVzyZQNldO+kaHb/vlvHJ6MO1GcceITuPMCFg1iOSwj0kddNJhEJ8Oa6E5gNJQn11ra
C+fom3lXn3S/ff4Kd/ihu+tuXrIVtL1i2BgLYydHOXMyG2K8Qu1yrLhXWIYTFE2acqM9Ww/xCZAR
78mVhjYT832BDdtNE+8K3Do8wbfDrqJGfXjuah+l+lEtV3QpxlIIEx4TcwVqjmsUHS4o0ZSyWYVM
zRjEODYdDTd8uZ6n2W3BmC4JN18kZ8fizS74GIVXhFFs+pUMFtyBJ5/AMgvNsXWlWZN6wRnDVMd5
mg2yUws2eafY1CZ/re1pD1vAMu6pdGIsDK+WOakkLHOw2jEPoWjEHmA0MUIlVuRrrChbXUPfdy2S
8WjLme0XOG+m4f7HU5fWcfgZklUmWIPl9hB+QlBPYCozcGZpLDlKbGCzAoNwfvIRyvNIg1EvuGg7
zd0kgp9Y6sYgjBY26rJKyUeSJYVgNOPUFQlsBERTocQinYqrXdgm5mHhakte8gXyepr58VDLKv4c
K8iPJ7NROSUJrnFMCVa3pDWx0mSiqFPKInK9IjOMNSbv7ib9IC5jLV2zYB70rJJ393T1R/z8uTve
9E8BbuHx6dg9NMYipmI11ydBQSEh6nAuZTwmp5kXmShdkQmesxiBnl9siS9o2u30ZirY89tjf/x4
/3TYX3BNEpp0kNk6R3hIBUI9pklIyRHFMxhnBsZErKInxJTC2K+YXmsx7+dRyM6wqd92Wjax+9vT
QFgKc5IQdLVZgLKKC06k4zixo4KY2mAiGYXwg8asuVybb1FxzHyLOtowNoIuMLbT3JpPX74/HraP
o84m1SIbk5NJMG8lVlGgOKOnmaLAl3dagtsmV5T1+MJgbJKHwRbrZh7S7Ww3tclwz/f7X/uuRnS8
7gVJcQo5jIymUCIZtuTI4LOFEDlRwjEmouOWxlUdpl8wtCfpl9GGrd0vsHXMLWUqPH1/6DElp0mm
wVLrYHTGUinU0NWK+GQKUTJkKlTgUcaVZSoMHKaZCsOFBrETS4i76Y4EigO9u3t4fpq0HIxeJmkl
uA8cYrmcPVZZGqKYtF4L7XyU61JNqhAmqkl1rKHaifnpOAzO3AYMtpfk6RTMVOOyJVEUCDkiIA1U
O0IVd1xlxQsPK9uHWNi5bMZbvnLBEe5sP9mPuH469t3Xw93N/xwa/5epwqwqiXCPvehpQgWWgtXX
UhlwymgUK4ovxhTGx+Cj4RZutwR3P92EeN//E3d6yHyjR1wxBeEzlgiCHaAyaKIN9kahmQFoYQil
RjlRKPV6Rfm4ZyIjxueRBu+Gzusvd5tZX7/33d3NM8TYH4DGbc2eOc9f5SpePH2juNGRNcUuSRlz
GC3xqM5is/MWE58LW5GK5ZTImPPkUgN8y+fH6butmM1n+LrnmjSZuqeXYmJhEXfddIeYuRiILAiL
WhPhUZGf137wKhhFQyliRZWCLY8x7OZCi1os7BNvZz3/8Eny1/v/PQzbbXVOI2MTM+b0GVKMUbj1
Ax4F5i1xrhP1zCfwN9aV/lxBTPKe61hLVqsFskZdhLC3Xx++DDIY1UBU8+t9zB6iNp4DqrdxYl3m
YC4MFcJHG+2rPJ1/ediW0dL22M7QSxIImuJvV3xocHRqIqPP7eaSM4KkoAzMugTrVCjYTkoxmzSs
VeZV5n40T9yw2i1IgODgRcBu+wXVa5+u2AIteMdF4TYQXjzDqEoQJ5gg0okkrPTevU5ZyskzT3jZ
BV69WxCj+Pj+07BYY1a3Ovcp4gFmWACfPkhUp6OceGop4SHCUg3+kXN0XZYNQEzsGow0VPuFRru7
PR2Sjr72227zj/7rIPBv6kLBsQohMCnAisEiESNF3xJrF6MgXLHkQrKmJPsaZ2H7zA2u/ZInsxdD
e5ub/vi1u3u6/3Ok5IW4UEMmJysUtSSD4cde9gloeUFyoi55xnOO4jXSmjxyi2vJG9kLe5ldn790
h8/3f/Z3VXfiomRecWkRGE86QMQtCywIjhHLFCdKBxWTKjSGV5mAuvDIE2T9AjJpBj2zL4e7/rGf
U6teMr6WjHrjuXEkKCzBTFgj6GDeFeU485Yx618lueUnb+GpBR9tv5kKFvnt9h5+Bm74sKqVXVss
emqKZU4Ryg1wcyUBN5+JtZ5bJpV2Wa2jYUl9+LYlax0as+wpm++g9YybyQ5arZM/f4N2azLZWCjH
JDSHCRH/T96ZdEdyG3n87o8yfmBjX45Ybb2RnjRmS55rVlVWNy2S1cPFlvzpJyKzlgQSbZ87rUM3
G6CKlb8CAxFAxD88uCsBZaBgi/DSJgP+i92YiMCZQysjcB6u8LKOGvmo2OTO/BHf+xwDz0m+RVKW
AoMdQwpBBHjExEbw/GCDFZEGDizdRiS0mlD3MlSxM3K9rYwWg9w6GWpKkTiAB358+PT+UrXLmZdo
hK3EBi2JTiZCeBYh1k1UEjAA4BFmlo3b0m3lzCMueSyvLTvTFXYn187P6PTQWIT78e39i399fZjU
Saqsh5ydxmWseJKYeBaJ106AmU0xW8OpLxs6jKw5LM99q4kacUckYHSONyt7sirfpfv7H/3722d4
k2dclbJIMiy4nFHDBbzzyByxAXa3mHmM1jKuHduY+e0QaU1x51vqD8D11vhuLZxT5VfKORFiznuP
khuVwY2IEUKjgn4+1ZN2TtacBxap2Bj3n95fP59viVrei6ma86HjXQxr7wI+qSYRIlAjWMYdUGpw
06jnJGhGiSkUO5pQ77ekYnYGUElfTCMVzaHTN24cju01/R7e++PpYio4l+pO3jGKtTCJiuBKCBAl
YFIJOLyoM+1JKcYG2AXBx9iKh/H9aWUalsMV2J1Yyz2Nh1lG4I/3b/iub5fHEnjSOztdVGhqlEYp
XulhkepgSMhJYPMY7pMoXrmypfvNBYjqgnMxXnE9Dh2ux6FdsAfw/J4ePvVcN4fi/UkV8IaZhz+w
aj1FSSK4FcayCJA3dJiHLvAPFxDLbODleE14ZzuEx7aXDzwT+iHw3sBNfh73a9A6pVhsAMfBYuIZ
cwFAu0KKozErlZwUW8rgufKIVx7LPJ7O9BL7kbL1wj7S8dg5pb6WhV6OIbTQ+o6hnNZ0dSStBfdN
kxxFJsJFA84yxCa2aOcVi4VHuxGLfCXRmOTreIWYdSqNj+wwrja7p6fT8/tNdM/OMi9TmZEOmjpu
JDFGY/UW2JGAfygPaz1LFdW2Gvghip7sXjNTcz6uaziOnNsmFtmdnnDvmy2Gw3INqYUt2SoiLdpn
QR0JEHHAGlaWJZZC2VTlJ5BY1HqeniqIvJPdd+TyKju/f/9yAgq/X2+OKxsQdcHKQk9iEY4IkwNx
qMhpvXfCCaNEMd/kPV/11DWwziHDkSvWSWD4CK8MbqyaxHcNTxFWFuEWpdBlsFhQUUgyhsaiwGLy
sq27PXz61l7CUA1TrRv6HMXQ9pO+SG+CkVSTIJMy9M7Q6cSmOFiBntgYwMvymGuTJCXMsEQTiu2a
uLFGp8ih7XWKYxVY2ek+dZQ7sZbJxCMHDNmWcpnX9h0iSV4EgZgVc3cjJ5Y7RTyLzCoXJXN2cyc0
Cxbrs5nFZI17zzu493xVOdFXdNRGqswTuFJZBAhuDTC2KRGVNBW8FEuF2FLtRFfN8WtKjsBxfZp+
VGw87l0lJPZjnE5iJvWwSTjMWW59YBawos2FnYkEYymxLupoVKHKb2j9zs+/lAybBiqUSskOSis7
m1d4fB/f4Ad/Xi7UDDtVwvR9mxWY2wyRrZPUEDAEpZgsovF8Iz7/9fkbW3sdr8Hu1gdcRy33rXju
5W7zcqOZhvFpCmgX97zWepFpiiQ7BtYgFEo8yjQxTq3kAlXatnQwXpHoXPrOExVt3ekDfNQH2RzO
/un+/nL0PQsLKJVZUhGcVIp21kqws9JFAi4EC0pLbdQWQlZ47mWPlPv7Gt5RdeAd23qe6RICvVek
h3e8OjIPNtQS5bAXnaOKWIrdFI1PggYF4f6GBAKnx19QnP7dcFznkh4NlZfI6fP48HQYHsnw+nxL
keR0ypFkGIZ6a6TOmROOKuTCMpRmwHOsQl1JWWj3DUnrL4Kn9YP/oUbUCaCMaS/H/zy/Sv0L7BzL
TFJNWOGADLYjElCQjUpw9ZnQlIcNKWKdESxW4Xmk5rnr+J5mP1zydF/ghz/+/c5dI3g1LcEph81R
n7jCbg6YpltoIMFySlQxgoM5lMHHb3EF1o9c0zp0Do3Mwa7OP/HcaTaBywUoAktSxkQk1+hSCkmm
Y7qgZDBFYsc+u7VzucYS3gYbsKvMAEM5o21Ts/G0KmcUWt4JWJF36k7j5RSnUvNQLIH1x/DwUxKr
Yc8xGnZsKzR3W6rJXRBZ7tq30T8sibrBrDE73Ix2c1rW5Zrwp7M+IW7hd/RuKgYTUnIfLEmFOdhw
HCNeZQvuj/JG+gzDbFuHJS2Mr1ypXqYr0oMc1qQH3V4BTn2k0vg4vo1VAakwzDhcuVxgW3QViJU5
kCiYj9IG7OS9IdY3CEvEt9Ga7LqyxNC1fPJ05jK1g+kVQAPXkjWmsTD05RmDxTz1TC8QLFmFp6pb
O5yqWLSHU9VkhXt33K1x71ftJqcn+v1pd3q8JWvNjXM0RJ3qTkwn/sUW7BwniS8Z5YMj9s8xmegY
FEs6Zpjblg2pmDQGpJqroO8PtAP9IDvQf/wCb+jhn6sEOaw014w6QnkUqKMCK9x7TZQUJgnMXt5S
q6KWREN6OdWA7qzuA20L/TFT4wCGaA8P87qfdNzM3E7V0bnNAOBmOgtPwHRTIlIGW6KNIJZlxyHk
hWAjbSthI114tBJu7VwF/CBcB/iqAxcyfrvem8ePcXh5eRhf7r8M+2qjFM7YxCys8lw8rPIYiY8h
koDKNkJZabaUiVRzWK7xamIJnJvdGjgMtiXTfx138Paxb9r3p0k9Z/ht9/58eBzrdBmlXcnCeeJd
ZHj5bUjgLpFgAsN0/cT8N7vMq7ZxYXr41w9f5bKaqanvDx3qh2tp2Cyi9afx9W14fMu/wbt8nQTN
LlG2nMNsM3UY5yw4iLEhusaLCGYLLG9KSeLSUO2Vp+6b7CT1LxlUNKfm9i1NJ9q8cfhE/vvh7SO8
IPzEZ/isvnv+G5ih8RDqlYxMHRgGnTl2hQG7wWMhHi8lCnfKSJq9mLqsoqrc64ef7/NfrjhugGow
MI6+0wdRCrxdL0jU0RGZsL8agzDJRp+jMkInKz/gfjKRGh6e8SfMb3D5EX6AWAs7tAni4D8iXcRP
HSybKkYymqwLQn1onxheYPrQZ3nH19V8DeTutpL/xXfVn8T6uMjwQV9lAuCl5tSm17fLNeh5SU9y
Ld7oFJwFX9smPP8ALEkIWNjWe5O9jxGp/3J6fMeV9cuP3//8Q/7wXx/+xQtX727n9Prd7fa3gsyX
9/Hj71/G+/3wuKgt5HYqO88iFJfBT9LZQ4CrnYLdm0XiVHRUSsvBvv0ndDjuUaoxj7aDebSd9Nar
03SWZIW/kcTKfUouGyML+KgO9cZjSMRRnggL1AH6pBLL/xnu0+VXt7rnnuF97ZIb4B97n8hxfdoA
fvDfx7Ok8S1nQ9zKDwTL0WlGuMSDBxnwcFIoiIs1zwlra/mWMgcrHtXZw3JiiVqI3foITYi9ulzc
PM//z3jZz67SAvqsI4qGkBcWraKF8CxxuXNKPNNoF3P0AgwN/4ZUaBZbev/ha36d0BYGZbOXfwc/
8uV5evThsc0umkQvJqUQbi1NKhIWTULXKGN/aU2i8OAVJefKlprS95gsFm1vukKv7PpMUig0EpWV
+Me428/vFB7nbSmkiQl02KZzVv/JvuiATSFEoQJsxaSiLRx8Flkk72RQfEM2e3JAppfwgPf314eq
keRqsga/GzvgD23a/OuXcdx/vvt+wBe6H1F34mH/A8w9PH8qt8+A3zF+J6ZLJfxiapiahQ5MEcew
KE+gu8mjhaiMMZeTK5alLem0dfhUYm2d+eXnMYnCtJ+HZOgn7jptEK6hyTKA4EHqZIwlaSr/F5hm
Exnslt6G4gvjUrPt9EO4Ilg3RrhOLQkrztZxAgxehXfixz+9jOPzx3H4/vTp080XrxPEs1SWGpeJ
hKAHzDt2rc1yOnwI2jF4yeK/Sa2P7tM3AIcewF0rxX/tXPt4+rQ/PT5ea5zoeas8F4QU+ESiIcDX
Y7V0hIUqBWEF/kLHm6otuddXKIA3XqEszyj731F/Apx1PgHRCm//ZXw6vY1r/eKpDULOVCuJR5KM
CPD1INyF5StDjNzLTO2WWnY2IJappPVMTVn21rluWyx/9SLPUYrq5pHIzKduP+BEW56JSyZCHG+z
MhuqxvnaHd5Xr+8UH3SH79zrcxkZji9vP3/XaBhnmbDDDy0AVjFMo3CcaK+ECC4mH7ZUGzE9/zIC
nAZqlEfTQYlBduU1/IQif/v7993r/uXhC4I5fzBNFOPMVE1mUOE8SpIzRjCBW1SGlMSh7CFEL4nS
Dd2I/js2y3OQf/Ot1UcjaMdWCyo6menpfXxL4+79E269S91j9DcCNbDQDVEWtcW4V8RGQYkVSUKU
mRnsodu6M21ptNpEzXQNnasOdN5GNcn7nxqRCxqjjVligxpaiKAQwAeWDXGGuZK5t05tKBn4DGDp
fswjNc11V3AYxFLKXVv3+/58oTIH6K23l4I1HJvmJljCRFj0QLBLjTRZhZB8SY5tK83wRqQ0Rxbd
6Rq8PPTAH5plfHwb/nGoy6xd5pEmBW50dGAuYMckDqUEAgvepxDlpnyP8tH/NS2bZOK/a5JKdEg6
uvI14G2+PWB29lkDnVuI91DKdrqGCdIkbRThAiI/gU1IPTZxFBa+jIlmuiUV9CuMyvc4j1V0VefQ
Qjk29Dxl7MOyO/3WB0y9ZVGFTGwO4HLoLACwo4Rl4XMypXzDLkfrK59BtK7yebjiu+/xPRzbW63h
78fT+/PhojJ07pkgge1ZoFTnRHU2kiRw3tCJgM1NS0UiNjkNWNrOt1Dl5n8pVw7LbMLF8BKvpmYd
6Gmm2zyU4f3wcLqDV/H4Rd3mrvgc4H8xRBvUMwR/DPc18CIENVHCEg5RbZds/R0Tnpr7NFQx53Tt
oWnOx17u5jl4PF8igG0WCmvl4U8kH5IWWRgIAVXGBoOoTyYzKWCik/YYaKeN5W02PNrUzWa6xq72
Hey6vWf5v/eH/a+Pp9Ovd/+DX30PX3XK6IuaurQViEkipoIHSrxLqDPLqMQeLCFs6BCpJbHA3k7V
yG0P+UoK4voaHz+/P+2eh4fHNgKkUfvMKKEs4rF+giUfpSeUBmNgz1TJxQ3SXuLoIV/O19z3xw73
Q3u8BL8mjz+9jMfxZXxeHOBxPunH2+kKS6bEYyAhOga+tLfES1T5NkaGoGQWOm7qJnfJo77EXc7U
sMce7Ll6p+pKNry1/TUpM8ZmZkhImNcRZCGhME2M1N5441z0YkuKfTOBSqxvHloCNXq3Phw12C22
qQQfn8eXy706PMDwabx4ftxiJ7LJTkdaMvYe09hsE9w+QxwLQDhbGQXsn3xLbec7SKrys9Vszf3I
OtyPqrHWD8/wNVic/fD42D/p4I5y6sA+R4e6nhack6BKJjwpKzEPU4u0Jasx84jAY3XOsZ5cIrd0
LekDg7tWY6bWDl5cuPClZiJLsOaDJCUphi4Jdo8UFGxL5B6CJpal2IIf3mXRaNWuv6HGvlcd7IfW
FbwfjsPLQ1kElotbxOJVLNKSaCfaWUPgnjNh1sSCPVDDpmTFGxJLE95MVaB70bvdz0p0dYr44ppr
Ws1WcHCwUyaRFU1EARPuhOFERc4sLyY7FzaVxlTdc03/rkl2ssTsfrdvjPMPw8uv719uMLngd+KO
Y7QI4Ip3yhIqwIMTQmviCxNET1da2pVA7Zb6Dswgql4D81DNtbPpwWBrgZ+Gl/2p3eecyOChRU58
zngZGx2xSkWiNdPWwb4HYeGmiO5PNc79qWHpeiz3VM5JuKfd3/bkDV4AhRifx2tdjVFTXwzrZdIx
kVzwN57lRCwF2yqZ4thsvhjDv8W0ov5TL8G53iGyU6tepfAUb6fXAu9/eKvSLZL02bqkSM5OYNob
bEZGUmK5ZNIBSiXpprTmbhhqsbnbeM1X2w5f12YWYmnEMJWbLb4cf/vygiOrhsfzPsV8Uhnl0pKP
EcUqFcTKwaOwl/MusaiS2FaJxFyQl1ss67n6I+iU3jk1rtrxniCs6PcXkRyr7/iUgmiFZzRlSbJK
ngiKqUUB4mjJUWPRFBus2YCv26GxzKhdz9bI11rKONiWn9x/Hl7GA+ZKw1/4UsPjZFwsrnE7q4yk
lLxlXpBQYIELarGJDuCfFBm4YibaDZ0D9YgsPd7OdAV+ZOsTITfqVgsjfn5//hViw/MbAeZOTnrW
cormCvVhUg6zaNKFIt5bTaTVOkXhXfBb6htao1ge69czNeddx6yP+zYX9PXh5eFuqp347e0uzn83
B3GqBIiQMydSYb8BiN6IYwyiOW0D9z6KJPyWblIuDKr7k8tgzfggOoxXdht7FJyehxZrFpmicVbF
4rk92A5Hk0PtYfDovHUx2W21cZgZNM0b5sEaayfsgMFrJr7/X4irxwg/4NPp5Vz2fq2MlbAL6rtJ
VzQnrgudzAQWPCS8fOVOEs09L1QZGtw3qfb29edfYpwaurQYBybbi44/n55GtNrttVKiJqgcSMoF
uzqlQILEQlfhObdCiSI2lJG1gLBUH7yN1mQH3iG71815w8+vw6fx48uw/3XBVqLgmzXGSUU5Xms4
7MSJ4vhgBcCiorqoznpLWk4VhwXearwG3NHWG9jYJg6d7UeTBY5aBhlFblEcXyhniHcKFy7EG+CO
cRfD5uxqdZZzHauY6p45QBmE2hzMlQ9z68mncdlCdnK9UmFKZ8+IS5jq5nIiXuRMsvYiFuG10npr
BSI3GKsKkdtUzbpTcT1ovGNuW/WeMwNuS3jOG1IaG5IJiOEEitZg9ZOXNJEEe1exVmofzabE3q4c
apm363CF1/aWspWtwBuqHE6qIPHx/7k7t+U4chwNv8pczg01PB8uedx1hNXRO+52zG1WVsqtaFly
SLJn+u0XyCyVkkz6AYbREW2JaUuqTywQAIEfT9/P12vQXaEKlaYomwhWrBBRtEF5bENKyMFR1NSg
I6WGejj2ZqP3vObuRIe7c53irCYw38LCy0iTY8rCJMoNTvy10sAvwgdOLHWFxFC4dCnrIPnwKYvL
Xv/HjtUhsG4HnwD+TrfUNJlWDm6tId1sVq3aqVY1c2LWsYiFOjDsURHGos1asaCGmrf8DqEtr91W
K7KzPGYqpvlkjzJk4enpz68TfIc6/VlylF4zQErRy3M0khAsmBcNm1oal20RQ13TXTnUt3XX5T3e
k+gY8dOm7XC8Z15tyt/+rqlGeU4KAd6N0Dd0rV5OjgtNUUoghHXwJCM2FUE4fKgFjRBmm9FumxsF
nvfFGvEsO4jP86FB5/F1ml9fbs5Pj0dRTiNh9xZKLI5BEcWiY+09gb3LJTgiSSs5VvYHUaQLiSYH
tH9Uke55JCere3NmPn17en24//LH6/s1NLuRes0IMc7hiCXJg6kQzGjiRPHE4Jw5i41Q/72VnG2t
8huEtkj5bb2mez536C6thj0qcD4vM/5Q1QVgADNsRCSx8FUkTYCbAR9x4VEBpoikB1Pw/ecGoWF7
Wd2TnXuXq7PC4X6VhdiUAo9BIac3BhF7nPVnvSI6J5zgYzwKCAjCpMWyKxaHElpvaezv+ZpHNewz
78Beftryu84BWqXa56eHWsnFyqIduBM2A25FYUcnvFwNpYBF9lmaEZt+Kx69tt/qL9TojzOAcFF3
NHxPz2h/HpeXyogUcIadhwCRGTwGqZTEWTgVUwgQu8QM4YoYC3m4cmgHgl0f7BGve7tFfOYHf+7t
GL1+8PuHzbe7SAw4dwP/ra2qEtvXIyncFiIyKlNz8D5CygWsOZNlKDWHikbH7dge1MRn1yG+uCb0
e7metV+X1wmLN252Q5gvW5w5cELwNptF5VxBHzrEBP6ewYlDDoW5DONZMqCvRooINyK9UcyHZxX8
3sl5PpYlXX3rH3F6PtdJPpMLw24GoqXEHW4Z9mFbVOWiqbgoghhIU2AFsMO7fl4jNaqDdLoq9b7e
n/+68W83fUxfJP2MjlJ6ogJjRBirsDU4E5qjZjxwkdV/pdT0/sXWlE6nDqXD6NUP2zfqF2hzq6kM
sN84L+BASKnh7Z41STHr6Jy2cqQ7kgOKRoGyelaz7vSKndXSXvTlxy/wBfeAI3WK0yQIZRnHNGO9
IWOUeAU+RMomxZEmsW6vf0d1W9ijXAQ75ikXweervN7/rI2pd9P8XvuqMNGDvgBYyaKZANMo8E0e
FSfWgcNrAzM0Ru5UHiEyxgrBB2xDWvpN1D8+fK1T9tvXgKPpH12C1S9AdqQuFmlsO3p8eXiAF/oM
hB63OOb5bWPXSofecIPaysRQKYhINJGgNLb62gzuMM4cdkOJXrRYavmL9mnNvlOMtcj51N4Hvrws
ry/vJW/vSbjgmeSYvVgPORUV7v9MIKxOzmSfJB+ifWn/+vcXgfv1GuzSsSpyaWtc/vVrbKqvfGac
CgihU8KGD87Aw9WJE2oSd1YJk0Zq+Nhe/47otlCh7KUwF6vaPXr/dS8mUvd8eOVi4cnhxAfMS2Bv
o3eKJJ2KyLQknQdKA3247XsUt31nYrGd1t3FHtI/5fvrH9PznwReSXVT53XIpTBSZIooXY1jgwx8
WmwOnEsjRho3cIGwPwa3lZrocu4QvWuzl/cvrzcfzg/Lb/Dtn3uKnCoZCMQiJt5RXshpScCqSsw8
0KiDsVSP1JPbothv3vbZjrflnYpCWDy1khVXlZB67JWXWoExALIKXDgZiFOqgKngyjDsTYh6gCPs
qj/R06SoYHLrjjDF3XQopnjL/6w0t9IJI9YOu5g0i46YiN01OOHdppSIEwETZGCIrR3iuugNQDcr
VjHtjAuAxWnupHnP35fXS917Jc4bqfFgDIhiak1/4U0nkyTZAsEGeFvesvFS65f69k5O/fKkpnyc
QAiLS5tMv36xm/l13oqV9xlH2MtrwpHm4DL24vOIUx+piMQVA59yC7gFTYaPRPwKoprd8ra45yyX
jrlVnKuG81q/Ai/6r/dIbas/ESIILTEhpnA6lEtY/w6fUmqZKVkYkewoqnnb62+rerbVPVSlpT5C
taKt6oFX8/j65/3r9/uaqRRcamsDiTJJIjxsWR9KItb4mEUR3sQyANOMLx8ihMrovi9WRCd6NLrq
xNsk2Vsm/Hp3LClHg2sL5cUUCG3Teorh+DhOidI48VUycBf0QKdY5wyrYM5mPsI8H64V/OddPCvX
0Ys3a2dBMonRAGEC9xFHnmMzIve4SR1lLEtf7BCZss91PLt+XoE8L+wI8m451AivfdF7D8BEF7Gw
iYDzD7uSUUM8GFCSshZOKJOkGaEWdXvhhw7xPUPNjoNYrdYn3mVYd2FErgSOq4TdV3DqarFwqnNw
/At3xTMeilPDUKy7Ly5LFcnT+fi21vO5JXn/2/fH5WWtv66k0EROq1IULZLCQY6CzXCEE6CYk5Uu
qjJQ7L+DsMO6W63Inu+Op49eHOtpDL+97GqjmqitNpmkgGnszD0qllgik/WJJYiqTBmsAvrtJ+x4
S+t6xffuqDVuDTe254Revu++noNt7dohUmcIDSjFKhLOGIeQ1QalaAhZa0MHQ7wj0VLePdqDNp07
AmuUZA1ocEmx9OZ1Y4x0tYmZA1ivKA4UTAk2MPimXmcbwf0XkunRjAM2pywH47CuVkw7U+ysMae2
YeX2+8v9vL922bYuinyiJ+BF9MQ6a4gwONNYeswUepMonGRJD1Rcvgex37e75YqvOw6cgsVDi4Q/
n1HzBPsAPi5fpvl6tyVWNTPlbaQeC+oUhFTcOhJ8RhWuVArPKTs50FXMgcXei22fVbAnYY6wp4n9
HPY1ebivArG7CiQXTHYCgGutwTeTCRX2SyYsBGl18kyPJCR3pNGJxrqXN9acOmkDc3atbMmlW2Vr
1vpJv4riWrnkFfESwgoB0RuxWPDvU3HOM/CSYx6tX2UDcuhY2ZYr0HfmUHJjLVsOJnv6tr/RXXMz
tJjEqYCjz2Uc8So0CRSsdmQxeCRLsx8h37W+9Eps7lsT/VrJ5JGiPJm2NBTVX76tY6vWsvNtgtU1
Q8ME7Nt1+rMJSRfrwXsDt5gIGwAyTZ5IHZShnKqg7Fhp8Q1FkxHfFivS6tgTa+3a6l2R/rRMz/Mf
x2q8HWNumaCaCojtEhhjA25yiJaCXZBB05iYG+kWsgWytw3No4q3Y0eXw7oTa3f203w/PZxvPq1/
wqmHkyEsSn06V7hw2pNIU4GtbBIBA8NJTJSB4XAy2zCAldhe+J7qulCxnNTRPbYn25aSzhh0/wkm
Z42+V7Nr4DRj3ME/vXyE5lf6xIPVpHAD+zdLA1s3KkJtzhqC6eTkCPOF3yDsTcNlqYI7n463N/bO
8aY44VKAWknvlBCcU4FQCLQBpPMkmKiJ8oJJiO0czyNMO7q88mMx7h6j4+6Yg8RJk40/8Mv04/7L
oc5ZsUCZE4ywVGBLroNtRWIkU1Uyj9o4MVBs/M5gP/P6ulhhlU4dsZ7A/arf+p+XGX70vaclNHix
9IbfqBuFAbL23GFvFNGMomfgBPi1xROqY6Ylap1Hmih35bEjfF2rAN91LsknOrUZ39+Wh+UbvMy/
fj+05Kw+rdeWxgj+QPB4PWaiwMacArYgR5RuBZdhoObVI40d5+PDPfCJmaPLOwmpOuIkWNhQ5YAZ
zjhLAas8UF2ZAW5lIuFKgbvrRWayjFf00an2qIDK6ejZTvLcTpn853QdAIXBLgP7oPFiVxsqMxgA
QoVYa/Yzgd0qiRGsCL5WhA5U13GhsBeImtqZT+Bv8WMKZ9KHAe3355e2tLaUkrXXCfV84SQLWCVj
0EWIsHUzKyqpgbboh/Rp7xakTxVFPR1DgMm4tugbKP68VNnx5COnmvgg4S0veSA2MvBdmc5ZWZFF
HItnv1Z5v14xtsfZvrB4KPX8fH9eni4Tr0/Ls59n+HKvP1kurUo4vBtu0FQEikWg8CsIORSsDYWQ
THtJrCiSBR84TyOEZD+BtfMkun+h+r04yY+/F7e0Idvp+8PD8nr/eHradZ2u4uBWQHChLUlwNGL9
koMgzUZsJ4nKF6VZHuguLlwwhKe697Rar/hOtmNbpnNb2/gbvNJOn44B18EplsCqUIliORzPPEac
T8LzyCAYGYjuDsLeTXtfrcieOndF00maVmokfrjt1ehbq7n2URLtsPBOFgoHYExE++CKdoYLOtIA
9h2FvbzIbrmGa45R8olO3Wqny3etIO+HC/FoBXOGZL9WjQpU+AyKJMwBJxdDFmWweRkNkbaYp3m8
B39S7OjRnZRsE+1VB1t3e7OcrWaeGKtQARH+Z7NGgWDBsrTSCTdQ8reL42cNf33u9pi6PFneXoZ+
/mUdewgRCbobN5fQRGRPtWOcSOYxU8kk8YoXUqyljCdNo1ZD+Bsvtbu3LVQc3d2xvOc0ze285dvb
+Am3q8ByU2G3rmxqUog6eYCHPZQpWnAjwHAkzcFrK8FxNpAmDiLYX7rBpxXJ0+lYiHY6n01H3en2
Y9XZF23gQQYCITHH5t6I4sqWFJwjm5LOxtJBZN9uPzZJh9uPFcM7dmQ4MyOb3fhj29j5ZR2l83SI
Kxhf79Oo40XCG1xRZsBjcJxgwRlRKoYoCwtUDaRk8wZjX69/WdojnnmnXnIWpm0q+b/v05cvU1WE
WrzKKQBEhteTBVwxhzMIGdNMBy1sYmWkOdP4+qsmPlyoUIpOB98sZZsgu4Uf5XmZHt6Fj98mSMMO
DBJ2IZxDqLWULBz6lmIHHzNKBBlpGEl998Jhb0QvSxVWqVkHq2tH7UZ+OJCs8bA5rSKGxUKEoRDc
+pAhwlVUZ2tyoSPlcfnemPKa4XGiGCwuXcGJOM1/LO8+qRUrVPwD7x9cZtp4T0KkGvxSjxrdRRGn
S1Twe4Jgtwzml1Y8Wqe0elghV72zS2Fi5lQPBVmeO9MV1tEKQnnDAgnGYpm008TZZIhmlnEfaIS4
bKShIHsO1VSQ/YMasVw6iHVbG/YVy6xf0LDUCgomeRVTIK7ICIEtatwZg7fsCWJbRUW0arAy9E8r
hLYCfVutyXbCqdkcvIKvTyf8oa+CgveP5+U/a2rdNDKC4LRaHlkhKQhz0TI2eLlGfUqc2WTlSHXT
K5erePEHxFIdc8fHFX4rju1Bs1OtJ/HLx1/fXdzVi1gd3ZiAarCORE/BM2MWTEiU4KgVGZxSzAs3
kI0GCPvyho+/ViTd3PHJJm5702L31Xhiq0fH6WHuhm/1eHD2UazO9RlOPZE4hLcegggeqclR5GhG
EjVuiLQ5sP410Vbj1OKeTavMvRZI7XNp1waADTgza/2udSxRsBlSZrAZnhZiGaCPhnKsdDDOj+S+
tUzagrL9swr6eeoY6/Pcjjt//yJtwrGirrIRjOsMcXFgsM1R6h/v6aURQXOuJZN6ROodD+/4sOa+
dKz0HW+nOq15jfdzdk1Awj9SfNPNs0VynpknNGgsNqGB+OLwjshq7n0xKaexik36rkjzZE/6TDtF
vmeqDkNip9fpAX6Ct32t1nm8LvDIbY6EcoV22xni8D6DmhBYDiYknocSFFkZ1HIi61KNdDpa6jM7
zUe5obv7L9+fVy758cv943ILaB5axX8N4aBzEGVnmmAXK8NgF3tBchbA1xgw2WMNhe1SqfuHun+l
+iWITgBzBnitBNz09f7hr3j/PD9UjbQ0hJIy+NMhaLF5JA7iRBK102A4aFZyoHzRnsJeCG63XMPV
UweuaWewfHt+mubX+x/Lzcs2cAvnxG0rq8DJOpByJ6XD9Y3YppRB7JgdSpgZi4l6gf1FRQgiNVVJ
cA9RDhtqXNyRSj0u7vi8/oXYY0XmWbKlPS+nhwV8y+cEZus0vSy1SLoUjirnE0mWYwJKAXTJE7Eq
QlhjrWBhpMELDYvKqtePKtTSnTqoD0qIb1/j2A+q3Fpl6HWSMkqSOU5MzmDag4uBaBEohJJYt6nH
g93vBz08rIArdewHPQPE9rbv8lV+/7Croed67fIAxJp6RYLIOHySCpxTC8435S4UHoovbDzWK4gO
5nW9Jjx3rIc+6WZLvwl1tWUsRqiUY4DDMcgEW7lwAA2bOuaSwHNxMpY0kFBXR6arornWB7U0cQRO
UzP79vv429+3jB5fe+aojCzKZIlWCNNYTbyWnmQfPMSHBt4NA2XzrhD2ChNvazXVu44/Z3lbz71r
ya+qBa2QRYqMmVELR1u2xBZriOLBMpl0yHQEpam9IEFX66BCauXcQTrTnoTn9GN717M1p4Eb1TrF
IpxWxASgKbhyEFdHbEmEA0zTGH0Mg3Vy+M9tI4f/XBF14igsc3aO/eSo2qZoNeOovTBMyUySRKxO
eeJ9Ap9MpcILU4lzPqIThiS6Lhg+qCEvx7zzeWKnw8T6L9PL993YJXaj16SFcEw47wBuRglqg26u
c5lEkxgLLkgT9EhT61cM1cz6daViOh0H8NrzybZ9Hv7x8el1RbL3sSBmEzccbYLHGoucC8ko8wUb
GbWRYAcjVYo1LdYPlKqoaOzt7X69wjzzTtx8nu4OW/dxvn9oxigk8KtKYGvhnyKC4ghv6vAcK7Eo
bwqTI4XEbwiqjXtZq5gu52Pv3Plutp1iwP+dHs//fr5/vX/8gkOt2OrBrg10wiWRCpxl8BGahEJc
ChFn4IAjmz2LXo91lv1/d9fS3DaOhO/+FbxsVaZqocGLeKRqDiABej2x4ylbzmT2oqIlytaOLbkk
eWby77ebepggqaRm9xTykMggQRAfmw000P11A4rWmNY4E+E8n3dnCxVlrJP9fFtGosvQt0UwJg0v
PFEcHQS147hQnBOfW6lc0CFldhD8yLvOt1LbtWW2ovy+B8uyvX52d4FpijabxT1G4X5p210eswIp
rwilihIhnCOgGhhhhfFBSKFzOyAvixYYTTeW+EyENGNds2EOWrjjODirni6uo0RAabBBwlhW5I7h
XMFhNu6CUClAhh0G2w+C0nvX88iFoi5pwjgXs+78YK521hemFHuupiXc+pBNTGtbu0zUOeOpKITm
njiDrAUCEHUUpBTmAkZmeZHR/LvMGhh1OQJL9YGlRTuwrYzE2X2ud+i63AS1O5XwNdFkJmBkEhKj
3jA+y1JuUm4z5oeUhLiNRHNm1ToVwa6t6YG95Ie0d+7z7UtVTR8POcX2sork6GAZ1MOUlYExjp7W
wnMijIP5Kzpj5kWuqWNKOO6/R1nt7XoM3j3vAW/adqlsyWzzr7uLXtk1Ic8tNYZYFUCNOkaJcSwj
qUwp97TIUjagZYJTQ9SpSxqgNcX8xCXxG5v3vDHD2wlYbqfrqlreVOWsWu/YgpFKKlV8JOU+BFEZ
MCM4+r8KakGrcOWIz5zwGePUuwHt+bTBaHJ2tU5FWBvVna/NbdohX43eW/Q1NLkTlQTbIjcky4VB
kolAMp1SYg0Mhk4bJTM60C/i28LeK+plDzH2vLQd+D/vn6yBOOLNjbaeZoQ5D3gbyYgtREYCMinq
VMOMRA1p9NxfHg2b+7IY1R6i/Hk5bycTwZxE29WmHj/aomxpnhcCpFhqj0tpPMctNkqcllbkgCsf
UtzXGJAYr3YjaUSW9FYcAXzf41o1nwrR8ZKo5tW6WsLzkHkjvu5tf01J40XQJIPJCQyhAi2RQhJm
lc1l7kMIQwoTf4MjcoE4lkYYz9Iuudp8hnEKkRBn5aaqGSgwdQbyqjEzkriVsf9ZE9gpGaSUhMK0
Guw9TXFDHtMTZi5Ns8ALOqC1ywYgTbKOt9IYZSN6UJ621y0xH3L9tG9OsBETUK68Sh1AzFgOc0Ga
FcQUuAbPdc69tmDdDMgfsxj3+L2+FcYAz7vcBiDC7WUK3Ip7Xu2cSTiX6UiOGEXhDbJIpRMW9zfR
XU1IYqgKhFukWXVaiKIYSmDzqkMnfiiMIIXxrQfSDmF+9vRabaHVx1YGbpw5cOE0zbgkuZdgdysW
CEwkFEzcGM2cKnKQ3gGphBYSTb3QOhUDPe2xu0ExtxeG68ic451i7sVMFegyzJDLUhKRq4LY4HEp
3nvLBEzcCjm0GKYjFJ3wpeOZGOdumi1LaYeH448VapcTjDPOSOcpZnygYIMLj+nK8iInwQcGczVn
3JDoFz8hFD1KOCo/i+BUtotxStsL8zWZ+3a7Gd3Cj/H4FrQx0zXFeO3CwymAKTwxHtPESMFI5nMY
6zKhdeqE8fmAtvD3EDRN6V1JBKzSaRdYNS3ba6Kvs8Vq9LyYLXaxHRe+TnXGsKapk8QoxzMDJkbG
OBhzHvNzpUUG2IYMRjlhtJNDGeig8+1hDooiWDVVXVgNnXU5kRabbbnc9qbkxqTmOuREMY0L9AbA
RX4ErgTTPGPG6TCouPMYijjsPD4XYW2F6GJtbdvv5NZd3/+nmsY8456CrlXWk9xg/k1nJXEsFAh0
JouALBQDmkkcIWgqhUNZhOnU6C6m07K9VXLxDLOOvHzZvq6rLgVNyu0I9a5kOB5aSqi2AaZrwRBr
MkoYNdJohomPBqR3m5g0eUYbxTHUsx7xnbFZb4ZJvMti+fCNsF1VUCMCTNiorOPrsgwZa2DqBtYz
0g6H4fHXdZHp5KPsXBG9hpmZ9byGss2dvajvdbV42EU53b7umZ/3AY5iFyQjlMfQ3aJwGuRdWpJl
BSfBFTx31slgBmRO9yPS9BvuvSAG/37aA/60/Q34RfmwXG22i2n4C54ZGbAibS51YLk2nvgc5h/C
S0eMMjCAZlZYkzKvhuSj3YdGkyiz53QMetXxhweTTvTyBGzuLpopLQ/R02m9DIrZV63lRMoUk/YI
Q5wHU4b5LA+GwejqhkYSsIejJ+Vta4vKshkzXZRn0rRmgueXTd8sWu/QZtQYkWqS5TB2CglTvyxQ
RWihTGCgYfLvN+yrAWjd8waS9d8xhN1VTiic8s4iXP0EO0aWUWPFnu+8suAmPsWk1lRLIsDew9xS
mBYchNTpAgC1w0r0B/XbNCzN4hjj6r6LcaWrvllImC22x4Gv4Q1jM23yAtOgCDSvtSCmCCkphPeZ
8GnmsnRgeqCBRFsXNE5FQFcV7wG6Q0sGz79dbb+8VOPV6qmVWJwWhkllMZCLScwRGtCJw2D2W+ME
VSzP8kEF4UZIxPG30akY6C6tq2XzDpFmh5KlsSonrPZegmHoqUJ2V1xizooUDXKPDBZZUGaYPNAn
+J+bAIMYd6IToTC9b80fLlcPOO1uKQxL1QjuMDIK523cSBckWuEuw+QHBXLtFUQXEppAFkg2IIGO
AWkgHZ9oYi1F2V1PkmrejgO5Kf/M4W7rcnQPRg4yJ5jRcauvtk2s8wUzBRIMIbV5RjlMkTNBmONF
Kgr0ZvxuTcP65vsVoh/bULwVNIAtKe+yN5VUqZ0DrcNVzxw6PwUzI6V2z/kspWacU8JVAPWrMNG4
EBpjFAwL6Jtlh7CnV3ceFev9qjmDaGASAaml7gJpp3JeAZCf8l/+FT7loz8wuwdCMU3eSTlSdTLK
EFyac1CyXOfIUayJMfBnkAEZH5XIxXf78dfZTHZg/djF4OwMLbP1snxKrlazxXzfveT29fkZar8H
fPPy6WmTPJezKrn/kqy2j9U6eVmv0DOr2iTbcv1Q1VEz28fF5nDiff1etuXm9wn0efKymL1PdtSo
28d1Vc4mU/h3W71PaLNwU20nm+2xPG74W7en/9/t4Y9GrwCBur3ncvq4WFZ97THOqP47bcqzs09X
yU31EOGLXoXXy6cvCepbPLOaJ7tXt6g275Pxals+/ZQqM5JXybrawItbbn+iH97Rf/yQbP4E8atm
k9XrdgKP9Qpv8WkFL7Ca7Wu8YxSuO/t1vdiW96CK13Xjx9sqGP/OEwzoAXk63PQrjRyKmg3V99i3
kxy+xpPHp4ub8Z27hF834fzi+mNytv9//Nsv4VSl24t/1+fy67uP4+TdcrUk01UJX8i0mv2QnP30
dvRWP547/DhzSJiCQTNIl4Ki2z14qj4cfydn+IW65eJ593H0HVyytxrprsZxR6X/4Io22/CLzUu5
nT4maEQulq87PdO8noMVebX/g0GNxhLs6UM22/j5Nvn5Ypw8VEsYhOD1JagE4uthbnR+rJucfQDl
UD0lDl94cr2cVn1tmGYbV+7y8jr/yhPBQDVSh36YtxoPr5gl6aV86GtD8GMb+lBjculuzkPybl3v
aaMwvB2KjvTVscFj8eHSBD7Fchf7ngDs0K13Dan+4ex27PIPyfmdu/EnepGC4B8aUNCJ2205/f2r
wi/pKG3W+HQ1qbvhxqdEn6cjdtUQqmaN3l5jZ5uC+3e7/Wt1j2tAV3VR/8vjI3WQDwuPFNfoeygl
RuYoUX//TUwm3o3d13BN9UjsUYKRO9nXmHjQNb+dqtP4WCXWKK4/jr/RUPQhTSaXFx8/BA8f04lX
R8XxYxUI1GQyDp/HX/ssVIpKfl+jfqq7jxf5tQ9f6XqsQp5rVZ3g9OFUI+nIHD8LlpxtHss11Hiu
nldge/b35A0rRv8XdTu+Htcq//Rhzcie79+LZfsa/0yeQQtuIkHZCciuH7RZ4+y/UEsDBBQAAgAI
AONpk000nLlfdEsAAIzSAQA7ABwAY29tLmFwcGxlLldlYktpdC5XZWJDb250ZW50LkRldmVsb3Bt
ZW50LTQ3ODAyLWNyYXNoLWxvZy50eHRVVAkAA9q0GlzatBpcdXgLAAEE9QEAAAQUAAAA7D1rc9pI
tp8vv6I/3MriJIC61XpWbqowhox3bOM12MnW1JSqJTVGGyERSTj2/bC/fU+3BIiHH/IyM5kBJ2WD
1DqvPuf0Oacfukxij6epjVZ/vHjSZNNpyJufuftzkIk/nTjKeJQ1T/gdD+PpBD6jX6hhKuTX2iXL
xusw4Kd1E4ezCU9bN/2z6/Nu622rADdK2IR/j5OvrS+XnQFP7gKgovUU1vup13ohVbVTH34Ho4An
9iuYqt3wJA3iaJ0fXTHeoTr8buImNt8d1Tqxz9HwYcpXW34x9YZOUf2CZcEdPwLZJEJUl2uSDtks
8sa+kwYTECPViPVr7Yqn0zhKAzdcgVm1N65TnqDTk3UGNAXXaics461hMFkjmijYbGDSwBbCqq1Y
NtWapmqihmIqSq0/QNuEcs48BLe+IKw0sdrUUR0bn3TtCPiYxkm28QwmtXYURw+TeJai6+sShZrS
U9t6r93odE5ow+wq7Yauqr0GVTVTMXRK6Em7VqsJulH7O/vK0SCIPI6O4zizkYkVBaXciyM/rdUG
D2nGJ+gU5HObBNmDkHzGvUxS4gcpA+n6tVonYemY+2g4TjjzF5QoCJ0E6ZRl3hh9m/EZyGkp/gkL
okYmH6jVuvcenwqoqzrQ/dJxjtsnTrvT6Q4GqD44/TTofro5KrUXirNQhJ+7VxfO6cVN++wUHjo5
uRJPsQwp98rKD1ZKEC6AoxWMnf7V5aDrXPSHp71/gqB4MgkiJtsOgtuIhbL1gN8KRcmvj9gsBOFh
vNL6irO06LILsFGQBIgZeLhon72XhANh7vKJ6Las2PzeQ2MW+SHo3y/Kr7XazTkAvAW4KbrgLIFn
sWLXGo2PqCYwOM6w+2W44TYWHGND1eBDo3zBgA/oF9HM/PlXlDTuW8n3ezQ4/79O//Mf5nFqbWgU
eIXAp9wD7+OBCo7iZCIv2uAtEj4IJrOQZXGCNIM0CWogAAKE2GBKEbsFbVTg2tUMvJcw0ACMC5Om
Analt1VdP1o8kGtccDmOI+idLnS4VEp4vFBr236hGisr/kUQ2YtnkZ9zIn/+Z6GJBrVcqmEKWHrH
LA28nwDXFZ/Ed/yGhTOO3iHhLXA1kEzhdGQCyJNAGilLHlZhYo3UyArMm8Dn8TCOQze+nytNCaam
mwYecQPdDC+Dex4OExalI54MQE0Bwfzr6QREDvA1zcQ1tSICn5mYzhEcz0YADxRD9Lf4MH2Yf/FL
DQAXUXSzRtd9upDRigWUcSkWVjgZoaKdbW9FeWPb4P/ueJLVHadzk99+eyTEhzGqb3+m6U2nNoj3
qKZVIYmOdFfBxFqSBF4jFDrbn2W3MTgFKb9BPEs83om9mC2IG8b/vL5Zp5CoKqo/B6I5mdjUOqrp
FYVnGFhTqlCasglAzsm7noLacr++ePyc+wEbZGA6E1Aj7+tlEtxBizfv0VoTCeSN4E7VTVSfZUEI
Y5FtWvpRzajIgmZgaqDnaLBt6NYu88Z9F8Z/EHb987Bn2z0IM4RZfbiLAx/Vn4cyf/zN0UegMkoz
4EL+BV4MYqB6O4sngZc2xzahxlHNrMyN6eov4OZO9oyUY/uOBaEYt+uPShmbBNUn4DeSB5sQE4IQ
qypdoNPGpqLkiKSCVJTwVghVpYuVqlwQ3X2Gi2qS1aw1wYI/qeIrRliztFKHd1h0x9IOm2azhK/3
vm3PifTyBnnruiDE1NfsCJNKsjEpxbjktPIxU8SUSQpmP4Y4Pf/WC+CTiB8TCJzquXZpqF5un3tO
ogARajUidJOWnXm2QCi8Yg/G/rM4nkokb98joVHSRargw89h2M5pGCxp7fQkKYboF1pt3NWISimS
WK8vzvr9S+d04HTaZ2enF5+c/vXQGfadtjM8Pe9eycvH7c7PTu/6ojM87V84jhzNaliriBSPKEEl
Vk9iyYcQskL0GtarwjMY2wIvFeTpAM+oBo+6nHhlePBHgCIQhGCzKixCMCpDWoSG75BOtBpoYwng
OrBVgCL4BVMiEDX+cjEoQNYXn45QMovOIT63XQ5eios8z/5VUG4YNaJUxaNbT+ERcA29BsyhMHAh
UG76D/BhswBQloerG5YJJutAeyd2/+U5Ig4FSFRXasBWNVCu5/pIQCqAYKrWiPpkrrzBpqoTaqK8
nW0v8wJhaPUgyt4jDwwtd89vpRlSBSKV/qDv/gsSysssAS+tQ0xCaFXEKrdQQTm411XUItLBIo0m
mhQKCMR/RCorQlEZ1zSM0owlYjTBi6wA2zLMBwCpzI2dr+DZeLgKc1W+nBNTmJXImL7J9gkHdywl
nUf4S2jTPJVYAbcCzSCUKBzNGzrfv+UfZGxfBPeVwKkuiE/yuQJLXXBM9o5j9Y/nWFGs7RwrqvYb
cEwhx/07u2MDLwmmmRx13QkLw9hDqcfueHTLk+oy8RmMQI4zTR8ib+x4d99ZkL1SIJBXlgQiqlNO
Ac1QFyrgvXvXxNute2UwsYhhEmHckNo7DpYJlR8IJ+7csSQQIZy44ceOiChyTPVl61kUfJtxB4Tz
9cPy6mSW8fuPkLyUwI6TOIrzuMSZQoaUfdi8WcjAE+C2PezPEjm+fAjj6BaJX+VW8t4HHL4Hqc5/
wo8I/gkXa6kyF1/r2SdEw4lGKdXKZNw5oDjZLH1GXEJGjii2hNt4zKDXHnbP42/XKb8RwYs0RZQS
IEFxHEmh47KU2xTD8Ecr95eqjCr3l8Oih0f6rCzIwgdAHiPluE0Sv3PXrlH0Q/asBfnNFhMhRM9r
Q5W6l4yshS+GhG7ujIFL6QrnMaUs/WgU1ZlMeW2LFOWdash0y3oCWTfKkodLIdj6ZiMZ01myHlNN
f5WRkedmJTk7TuHpp0l8/1DqxmwGUeGmtk6z5MOWp9MsmXlZuQN9Lkv1js9DnvHHn4EezTNGVH97
tJXb91sE9VYo7jLPtGQ9p9rAr+t4Oc65sf8gAFFFVmCqQdIUfwlpHsiqkMGIMkjF8GFkoTVApeBB
g+ChfdOe+UFcVIXFnEoweijmg6oHDhDwMQjpIWiYpLdOlrDptrDhBYBUkMMCkEgUlbXq90uSYs2j
5SR2kV1448tYyoJgslbzfkk+K4S6kRtj3bTWato7yI1XK9JM9FSzfdOTXbYBUMe+ooIeok884kng
zcso+dyeLZ3AUsmxZq6VkZ8HTxRXAXrbl6swFxckYFBUY2fWY+7Oeiy0W+vR7dfYh8ZRyidsOgbl
yKNUOZhvmIpfTFxtiYpX812Vu9xAzry9I6DTJeSiSFEV6EgVYlwBmpMsqU3D+LsoiprSeqoApj7x
cQmwSLt44ixSG1U1pBXtRnu03WmPvmPtMUTidjpEn0EAYZBm6CceTnnyas/7u6ZsVeIExfcIQ3KO
IOetM4+w8oDP/yySNHlfhoZiFkl8+QxjtChiSl9FyLzyHES3lzllefkZwuijqrkSHhExHyXRXLLk
K8A8izPbnsLnBXWA/uF0Mg2lxyzKXwVpAy+ecv+MTVyffXDjOET1xUTGtiZ5OLLeRDD3OcjGJw8R
g8ivIwJbMaVdCkiJauioviRRcqwrauVsA3uqqmhI0iqRlzpB9O21zCXknTMg42N98bECtVjXVogd
26ZSOXAGSnXFRdvmlI4+inmTUM7UfAZ/CeaSk9yeQewMg6w3H5akveU8tF2IC5mXCV54MqfWtv/X
UT6K+ZVwPrchZp1W4UhpE4yrx+OKa3C/rPO2zZch+Mr1C/59YRag/VkxF2wsp5s0yziqHJ0rPvWs
nILv2Wi4ngUsogDrMbsiQsv2Igo2RRQsI54T7sX+D18vq6YGLh/9l85XV/fUv1aY3rU0yzX/OP9a
ZSKamopZrjuVEvHFfGxbKLK0icIkbFt+AMRDln59Ii9/KQhReMnVDhJPdsv/IZZnvfzpXKq9OCke
7wVhxhNQZ5CgkGQ8yz7sEHwdBoy/hVLZ/lZ/KZR5zxWdXaZEWN0VT0Fu8+7/Aeh8s834iQIjUZk4
0Dq5Vkqvqna6qpQWlmyhKSlVxMzy+Geqrxj/dj4Cm3/ICGztbASuPGw+MQLj3Y7A1iGTPmTSr9Ye
sZh6z+a5MQy8G4W70/48bQkDsRz7By7e5gQLH7osNZZheNjkoxFBP7XPjp15vRaCPh75xVgkBvor
Pg0f6rMoDW4jcPZyrcrLvy0YHYPMhOFA9Cnit9V2efWBrlWJX0D/CMMIsoX+QSDWFJa4yC88z8v8
15vHyKTaWtT6PJWWzzwqqOw4l2K+5rRfjIG2fdoXlanFgGyZ5tZi9JPQmc7JY9BLA2KpJk2216Sf
1hRd0XNJz6Fu1LoNsh8laUxELnstdg5k/LS/lPOP7wyyfJ9BU3ZzsemgvGbU0E3KiL6VO9u+mkX5
TKq13VRfAJ1Ry3oE+po2UbzV0J7FwbCLVe0F0yfaznRV352uGrvWVRV0NV8lCL+vhp0Lnonh+Mdf
rfSdu0m2fYlmGZyvuZZYAwBtoafvYEgWqVWQ1efDiqWgOhfXm55nY1U5mseAL0WgU8t1/RzBxSwM
B6LGmQ3k0volrny8kBhVVI+gXSrb5UvwBW6Cj+ah4otRE8801Rx1OT207U88q5cvvy2GrgURVGzF
meQ35a4sQYKqFqWMCjQY7shXzJyGuUUV+/AK3Olc1qoOsi66H7BpqnY0t40K2FzFX8fGhedZjl+G
WkajF4Xbv/64Q9dsOd9uCRntX8uaPfdRaybg2cvWbB2s+WDNf1Jr1tasWUY057E/C/kr7Nk3xVaX
lE/ygof0DNsM2nuu5EFdC9J2FLEoTkPOZUBqWVXtGHretPTVnh8IcOcL/TJW1IvgYoa5ytZQVfV0
D0Vx1LgLkmwGHGfjWfQVZfGyBnoWuBvyte1+NC/mrtidTMIIqm97SJYLTfM1Zg9p9jazn2+b3qSB
EHXT3jWsvcbePdd7kb0Tk67Yu34w912auw7mLkoTIjtP4jDkyZ9iEcoPFYn7mBoWypsv9DgXo5jk
XFzKiyma0LSEedzJsY5tU2xzrWq+nsJdI+fqMmSZ2NC+8Giin/MvSw0XsyrToqGz1HRsLq33L55z
ilVXuc9c6aKDph80/S+m6eb+TYpY+7fDc/+mvsge7uPdv428RN0/lunebV4m2v71sr5/LBv7x/L+
RV9k/6Ivdf+iLxUfakWHDHovMmiVHGpFB03fC03fv2RLpfvH8v4lW+r+JVvq/iVb6v4lW6q1sv7f
ixM+EWfINoPJcloeLrIoyE9eh2+TSRz94LHL6tEp8lTcR06Q1Q1NcX2MRLzSjxabLcWuNV8ulNhy
rMtz8KhFUC+4Hcw36OSb9EL5AgvZlXRt2a8E+Pj56Dqm8MfjaBp885iTH1d7CTmT2Hc371SqqWvr
6l9AKoY/aBQUUM7zEzTJa7bWPBquGLsLV8wdhytUeUT55YnO8mNxzvprtnL/fuve/zED1v5/dR3R
yiIilTPVVFCnLU6wjuQeyW5UbJZM4YJTLMN5YtuIjG+JuWYNz2KmCraYAZjl2wHkmqAOOBBxQOy/
Ny/WizOzaGUkI+jOhN8GINPEceVh83WnjODt+xX2h/xeHIedL0Qy9DXLeQFGIpYvlRFcFdgX7yYw
tbUdKC+xck5HhZXzSHrf+VsVsEX1tZPun4WnEeaNGNj3N28UrwO0NH3trPln4RETg9dAdxMv+Mac
eJZNZ9kcHFX0tSPinwdnYQ5CBHDkNLqLv4qXCABEcTCHy7yvTn8FAVbMtdPbX4KAjXyJIIfVE28t
yU83VtfOXX8B81xVJPMk32gsd+L/FNyOPzPo9nMujwEzNXPtHPVnAasjSG0pYh4MD0H2MPDGXJQK
kn608O1YuA11V75dHGy+o53A2u52Aus79u34sBX4sBX49eqzfzPlVD1s+Tts+ftzFBopPXj3g3d/
vfpoB/U5qM/r1Ud/pG7w95shwHyNalEdrfXTf6VVZFOr5vW2VymUaj6rUFip/NY/y8K+TouDSrl/
LKAPQnbHi2QFK2RPFMo4KNRBoXapUOZBoQ4KtUuFsg4KdVCoXb4xQjko1EGhdqlQ+KBQB4XapUKR
g0IdFGqXCrV/qyMV5CUsHXMffQ+yMfpi6oUeoEHGMo7qOm24QXZk1xBK2L2NcvjGyPeJpSmGqYPA
Endxo/QDxCbethsglMTf+oRA4gerdwxMdWrAjTTY8ojEPl2SNeKcU8/A8ka6eUNhCiBBibnJiSq6
PrFKSAxNU4lq6iZcx8qWG5q4gcs3qOUznVgCSYLJIwRj9bEbdMsNVdzQyjeY5jLmu6ZAEkxX0btU
w1TAGoVrsMCMqXjZdLKFLCwIrp3Ft4HHQtS5vLalNhGl1k2SOEEd8aLlXMMWj9LaUPjGi9nE5Ul+
E9NarXYcRCx5QHJZQCr0pnhMvghYE4w20OpFfTQaPf1C4bquGO/gOfjTxE1svjtCH6ATNILxSUNV
Op2G2j05brQx7TRIV+kaHWwYbcv6iFo3cTib8LR10z+7Pu+23rYK6COx1EBYbWv5NuK09QQRzfup
9+T9E37Hw3g6ESfyrjAIRr3BNdOsNa5L7w+r600L2oPN68Co1jGP4b/WaPf0bkM9Pm43jo3ucaNr
9HoW7nVVrUeB0TZAge4TANLWF7EAQgBuFdSlrYI8nrTma+XTVnA5jiPeHzTnq+JLrc4CN4GObImV
DINgMoMWMTybxKMgBEldiZdSCsEG8HgaTJL8+xLfFU/lq+0XTa/iOGsNpO9aAO/NeyFtLfkv9c3y
YlmkhLpsQ6REUyjzQKTi/dGormm4SUF6ZtsgJ12rA8qh6g1QQL3RbiukQY/b5NgkJ512TwXpzdKk
BW60JR5eojKoWRhnCZW4SA3XN9A70doB5qHHiNbEuKkBRtyzup0udFW3p2gNlZLjhqXSbkPrYKy3
OzrpKOqfpr/KchGcrsrGMjZlo5mg2MamPW81YuvENDptlf6HvHPpceRG8vh9PoWPDRisZfDNk8Gn
4YUH9o4xezVSqVS3MNXVvarq9tiffoOZyqxkJsuYq2Q0UA8KpSZ/Ckb8I/hIYoTOOIl9IjZqT4zJ
NhsjTAT1H03iqaHq3Wmwu95ZrexpOH3zLY6pPJP9wV3D5zstKfbHKYMWEgNB68D+OGGIS9kRF7I2
VkBQkG7us9uMdQ3JWrY3b2vVUD7CbzfPa34nKH2w06xSFP8pSqKQDjk5ShzjnDj81VtvtHLqFjmt
hltjOvQNTIfjjGlyaw9+JgVMsgdEOzoEL7SB6NGeAiCsLATx2QqiUNsYkTN32d0irHrQNa9e7Hkd
5bCJeZvnZtZxL5voJGRDpDIc2SU9eQnLODCmIkuB30HcqxmsXFr9QoX3xBuz9iREwXudtd3hvJ62
oJFoYip5dHFEaIyAnBp0bAY4EWAjdRY45+xGZ+0y3JqTHBqc5LAJUH//dMCejN27CsFv3lmOExj/
cvyO7BjmOrqITJAKCOdBECSG6lMrIRzn0ap0B9a4R7GyyP2LNW3FGrTN4XTio1V2l/7D+evwwGbD
lGL0kRzxxiCcs1mRTDXKNKMjQSXhiHEYs1PEeCP5LZrmZsw1L2t2vDo4yZnXuf9SilqvGkUxQO1E
R3uEGGkQNhFMBVBlsmTQMUIgMVFQQkbn000C2wx6DaxjJ7UHxo92Bvbvj4/s1bpw4pYwQrnwUlF0
eskUUEoRG5gg1kDWygfqjb9FUOvBVpQEHPeUBDvNWuWPV0Gn6TgBi6IDw2wUAnWcKP4tcyCGoz1x
8JOlYbJ9i5j+aOm5TuwqEdioT7DVJ/n6qAKMBxqd1QOUiDD9VLIXYMrlJAn6KI+kHCPOU/wpyoCh
AvGxu1AoM4W1OJnbKqyHnu+x9oxv4u30X2F/Tuf3Xy5X7YcpoS7ib5IqnBnuk6ZE+0gJ95IRm3Xx
dgkTMXRxTts7QNsgsYLceLXC3ctDA3c/+sMV7uUNH374aUzEWYkhhbUwfMpSDCIXNmAY0cVHgiBc
8iK1nSUsRJOsSGCNvgPkI4MV5P8dLs/jWNz0UkX4SPcCsjvyxZeGf+RfvpxfhkVqo/nK0Z86l4An
k4lSgAYMofhTzwgTYJy1QWhxk/60HnENSzbC81HqOSt57J7en4+vKXIxOu8gc2kUMTEmDDuZYW7M
EvGBm4AeQIZ4kzJmPdYNpH0loRusaGTGbycjnjkmY44kMMiYgjBAapETRV1M+MUpa+4kNW6kIW8l
IN3JnPZsT5h/nA77dO+Hp+eX8ojxKfqgSxyDTykCikxTAmaJBMdx6qpAXEgoijwKxsyUgExvle7P
l/PX7mXYZXxrGruMb/1iDXzYZzCHcbltEuTTn38/lD9/WbIYIcego6ciD9DMnSeMWSQcMM57bjXJ
RvMUBfVgbtJNNkb+twqSZA1yis2+8vD8EYP0nMnYERgUh6lkNBAlJjFRaMIpJOIU8wTjCfpKid6U
3WTldTXgGpTaZzMH0HQrKYf+y+X88jvGFTpOZWmYUYiNjeUFy6PRLCW0K2EJ59wSZzglUqO1ZutY
5PegbWYKaw15baqgMrkvz2KjKY5yrB92/YdF05iS6kQA7VwMBDQgwJA5JtAKY48UJnqRlM3y5sxu
2kjxX/WAN6CGBihlluWR8bKVcPn988unxb9RADNO2NHBKa4MBU+kSREFDkWpI7VDy8s6p6CFZvGW
we0A1Py0bvDTw4rfZ+zQ5dfLa3jgo8SxSmQUzJYkFtHgLI0ocQKm2hlFouKeRnfj3OqB19hMI65i
gJzjav/p8++lQ4uWFmqppKaUcHZLTtCtoXoRlhJTsjqblEFLdEneYIBYg1sPvabWqKceOPTLqgh2
rd9M1esqHR1FdRaBykBCLvlvoujieMSfRKkUSuZ4hpsGV4++Qsd510Cn1Yxus0sRgyydXJweKwcx
iRxEIBa8QV4B8zeaFVEZgkkOczzKbphcPfiaW9dQJ/y4BNKybeK1er9sEUEwECQAql5figP4xVLF
CVpgEowbnYy4ZWDLqGtYp5aRnbo5GDx2X55WJsb55NRsMbHksnAsSQLSl+IUcOIyyl6llIhodejr
bjkcrIdeMRMU9swEXSZmuXthcWcWdQeMlemswGL+FAiLyIwbCMRboZCZdvhDcPGGCgR7XKtRb2gd
W7SGOW5eho+fvg7ryHnNRUfFEZ2yIWQCziRUHB7TfmY9yTz4rKRkKdxy4NyOvQYHjYRAsG42s+uW
4+75cclJpVrWjrLG8KhR1PpIS04aJTGGOdQd3isdjVJM3zC57eBrctw2yHG7IXd4/NT/63lZdytC
TVBrsomMAC2ZQaSOuJLYJ49pvBI2Si1un9p64BtwjdRK9GyOBptnhb4DpiexxkpaxQBDZOQBQ4FG
yWGdRcmhGMnZgfWZ5kDT7cPrW9yGFreydFlzq9aU5gChpvUeVpbYDLUASSaSY9nrCJhmWYO/BgjZ
OWqTtfEOEO451DhPpoXzOIeM17d56c5Pw+Vj99S9Hy6vKuWaeZUIwjFwWGltmcIedXBGP8htJFQD
MqZOKZnugmgDRQVV0v3yOjaqWRYv73QZnuf6/qyS5Zj8g6VJRWKDYISHUoFXgpbZHTmqQG1B3QPI
7fA3EPsGRIANxGN3+e381PaSOjNgJboohnGGO0ToY5DEa5+DL0UGfgcGuSZQE2zshDnIaTvCmuDT
8/OSpRk9Jba82CFLIEM5XuIEd0XYpCJsBHGofnKQWnJr74Df6/hrfKyRr0l12OA7P52WDESCnnK2
krLJZL2RhqAJWtQ3Zc+VLeu7GnMasFlSxm4f3uvoa3aGNtj1chNWPi5yGuS1oDKKmxyK5ZHgBZpd
MJzYnBzJRnnM67Sm/A7c38cWtmMj3ZUnsTG5j90jysrF56kpBqtSxZPCZ8gStYxHg+OQccpyzkkO
TpmgMvPqDqxuDaACWM5l7AAq2m/SkadPL+fT7wvAOWaU0gFGbqOsKJsJvMKYwTjGDO+JLHuuErpA
dg/Keg2gBgi8ARDkxgKfu6djuQ9yjhoSpiXasZKcOQTLvCWxWB7GikScU5kIzVJMggse7wBhhWDD
sG8xPG6UC/ahPmH9Dp3bEj6ENc5Q1NEqlW32gaNsAa0Ic0pT72gMUd4BxA2DmiNrVGUU06eBbznO
I2mRTNpZIYwn2Qec0VQH4r2nxNlssstSU83ug2RNYcNyaLEcGjZZH6yvUHJlraUuEBECzmzjIjHJ
cSIdw2kdVaaC3wnKNYSaJG9ZpbAbDzk+32spPNApRJuSlbjMMblTllBhUN5EzPMcTnLiHRo8JtBG
hTsoPKzGX+NrbNo9KAVzhP7yhMnMepfkWNBXSYiIuQdhgWMmx1wilhlkBpifCJm9ybdseOtB17RU
ozyjrJqN7d+f+/aCETNeZ4nyWTkTCOcOU18nVCkhSKaNpwJuOQYv465p9Y2sAxu34uV1fv/64dPz
S8vTxayEMWX5OwpTrldgZf8ypnAYOcDn4uniXXm6FYkNU9liKltM52cLvgUVYzcHnMmEQij7dksQ
BumJMDyAStrKkO4rEr9NteUF+0OD6iSP3mZqIuXeRozBDtUNJE1cYoaooDGacPAhmnvSiW8SbaXO
6qTHjZJvXGn0TqD4e9Awrn9mxryJGhM/G3HGq6gJznNFyv7IoGmgJrDVTRm7Lr4pYzU0eqbBbHq2
k7AKHiSdoh+XMiWGn7GQ+BkHZ4hjDPtnVTIZEnPZ/FnX/kQXatbqHBsT5jcvW3rH6dI3miSE4B2x
kDEyiyJkMnMkp5Qjj5zhhP/Tvr0ptHRraVHzfnO8Z9pqPG0KfT0yANOG9gLPavBcCZIsRXduGCUm
KoaeHGcMJlGC+Xhv29lrGrsN7fXLNXTRULdaLsuShz/YA6y2Zptl4x3GRUwNcOrEsjuFs0BHdUaM
sFqYstPTipvcmb0ecc1KNsRZJ4ZZyj5djw0uWpbZcUc2jNVhinknzYSysoDLLab3UViUa47JAFzn
fJP72KsxV7QOrdWIA2fr7Ykvj8tCGEi5bCI2XFPJNRBDpSbcB4diLAVimGTWY2ov+E3eIFINuYbF
Tw1Ygr7ugB3/8tf+9GF4xL42sWXtjGVMEuNRFfDIyiHSmHGCaoaawUcEd8PYtoOvAYrGzuuDXNa1
x9jx69P7Dy8vn5cj8ygExDg7pTIyKCdJDBRTdI+2ZllMJIVgTAjc+nSTN4U0Rl1TU40lr74cIbtW
if7v8fwy8JkXK0fBS8W3nI+XpZDBImoTjrkncWX5X/iYDAfQ/jYnaDXeitSRNbzZUcjlsOcfH7sH
+bpfeAmTqDmcizgLqRSprO0n4ow3RGKclMnrmPRNmtZ6wDUp0SB1mg7J7W5J+3F43/W/N+9KC15y
x1C4RSsj4TJ74pRDue5CkA51naPx7bvSpjfe3Zg2Na/724Par4D0MPSbE6rTc7EKzvGZWJhLPPBR
c47fS62UchRBlhLJStlZRPQhziVChVaClT3OXt3JIdWRwOaE6thWgWWNZZHelOvydkd/v790nz+c
++flYCoT8mHcB51wloBFIwgeCLcpIdSs8deYMP8Iyqp4J1BnBhuuc3OF1h73qVJ/4McG2vJk2bJ9
lV2PCaIHL3tYablWTNFEjMNgx1VgxDnwBIKhWgWdGc13ArYQ2EAtTRXQvnHxwRFV+QboeMvrDz+9
vhuSvboB0FaNhx1ilCi0ciIZXDl7mTJxWQSiqRJcJWV8uIerPHYo5pY11yNT+/X5I9PLGQjX4//4
fMYktRzjnGWGwKRJPUAJnyBTxkSKE2NoOTCtbNmNFEnkvpRmpQ0gbzF8NgZeg+t4A9zBbs72u+fn
4VJG3aqEuKBMiBnzpggYkZTKxJedwy4JE/EHY9QdHezfoViZ5u61mvWwr4kd+cE2vOnPMX/zTk5x
H8abQUsdO6HjpCFTVCkBo77KjAh0rsEzYP5270TaM74i2HhTbKl4CrEvdh9Ftz3DPv7pZTie+/lG
pNlwBc0iY8JKaAac9Og0iUHnWbbSMdBOc2nTnUFdOGzZLi/UiI+0gXjgG5OdxcPOO4yK1SUlYslF
YvLlXnEz3rkdMHAZC1lQATrfD+YtixXo7Us16lNDGnSnYb5X+bfhcHlZVmXHPXkyamMwVSnHaMu+
eEpc5KakA4oHHqKjupW5bN6s6sXJ7BXf8WTlJh4g4Kf3j+MHXW5O5GJUJuNPxVlZkJkJICjvNOEa
VYmhhpdzX+Vi5Mgiu4dLPX9CCN//mH5ZfcJzU820EWMHqvWGKbq38Rqxaeporse8XugIPFNDVCw7
FAAnjy+3CAYbBXXlQkEJd8ByGvyK5NSw5jgA7EXeULYQbu4s6U7d5Vy+Df7y6bfn89P7kvirMe9H
uffA1cNUMwk2S6dzuTpClc0MHiW00oFQyiO3IQnH/f04ponLGsv6PpPdizX6TjfQd9u85Z8/rCxY
FbVTFsoiUI8OiWjjMVFJ5fpZZjVROiWaffY8+Duw4HHsK6Lj7xuIhwbEw/Z2zH/+48eMQ+leXkbL
leXubmmvnjXFRJ3RJJpcLsSkHqV2ABKdiULIJKcV2zux2IrEGu26vUZ8aCDuhzGd+fa/u6/dL/3l
/PmljGOKoYkqm7lJJFEmUVcnRgyUw1FMOC1oytalVgyt32vVt/qFdedO7LCvWJ6E1Rv/9T9fusvL
H1MX4QHK3ajK8gcorkuM16Mq5YucciUO8Jw18SlSkoSwmAUYpyHcwXx6xbCi+9pYkZVm554k0O6w
fwLOhLVRBvbOG0aDJCzLcTkfZ1YSkQRJQeL7ayX9G2XgTR+vLasOlmXu3bqb5OONbnXd56dfvlxO
XY9dZFKO1+KO34vYi97JEDE4YRBELypQBwQnilPVQaHGooHdxTWiVwLrgs/c9reKHtgGUthm06UA
8jhcxqduXWfTqqm0FLdaJjuPjEj8Wm5plkVEC/zwBQsxxwTiHkLU68DXNYulcYP3uMdrWXfqK2f1
dazGffPOjMb63XfflcqkiYw5ivhCRJq2TCUuDeZ7MkatrNc23CvN1esTmtVrU0NFufFAj7HxTSN+
+Dr0P447ZCZbvv7KJzt2mF2xiJlWCMWJ6XIkIWNI8y5RL73KSam/AvkRypr82LAhbxrkj6fT8bRc
oXYppdPXY/7XZ8+M9WJUDdpEYwgVypbnBGR0x14RV/bgM5OjsvI290Bshl1DGxrQDrw/DVOZ/evf
z89LiULp6fAWG5/zEbLXDtNYJsq9c7QsTwPySlJBpsmjdPF/RcusoVWwD7Lbwy5a9mqhX+MvPzdZ
q1CeZkclErYOpQIwYkED8VJrw2XOQtC/KuuFWYW6P/X/T96ZNcdxI3n83V9lAgzcxyNOh3YlWWvK
Hse+TFR3V1O95hU8vOP59JtZfbCAgmefWQqH5CZKTVb9iE5kApn/XKIeB32uCAsf/fVbup0UF4me
IHJJ4KLBPA5T0CAJ1v8T5YXAFgYwz/l3ivqNWYUaorEFasmn4/oJ9Uf/xcf/7MIu1KNemSGaR1jd
nLMEYl8I3Vy24P8yr7P9TmHPqf1Qkd2JDu7xoqT38XA/Dk/+9maE++hS18FR55MmhhXs9FgYcaYU
ohnNJgXs2/S9Wu4OvBr+ni/hC3opu79+HJ6ex780LjRSGm2GRdLh9iR2KLWMClK4DN5lyl2W3yn5
ltwPNeFdBzvj5xzN/3oddvDjXp8udZTiolYnaPDeSkasLtiFTAXiKEpwCmGjykU6479T5i22mjkz
HebqonQXPn++bpL7MYmlMKmS9YZQg+VwjDJsTRZJLiYYbZyUmX2v6+eFWA1aqw7o7aXg+vjJuCji
uQtqq6R0EnuAFGz9g7LZDrxvkhw4KVRETTX7rq1JD/bYmdVy5E2O6S8f5t02j6cfSp0OQ43x3Fkw
4IoXQ4S2mBjDGMFdEh0UrKeer2jL/kO36eZ8uCKsHF0SVmN73vzT1+tffzyjPe4ygQ8SjQZbISW6
3kwZiHKSJR7icGz/aoJYUdbRBGB+0IxfVyR1J1zEwYZkgRvpJXHJDEG5KJJIjmVWKVsSkqAE+x5m
lZyLcUUJRnMKVV/0t+EG7nL/Xhp90f/BN35BI3JRMOTcHotleDCJBYdJGuA+cwoORfGFwOwsPDKW
YBavnmuHUIXXyuVePgzZTibXLx/Os1Y6eyWPxaLe47ZGjsREQCuCTiQYWOAgPOcoiSZDMOtK5Prl
Q5PA9cuHiuhg2ZLoRu4aa4AJyuDQffgJfWDACW/A/09MUUpdJgg3LMqJwEeAQBhICReayRKdVu9I
KOj/ZXoBMcN6GavIbkzHJ9gepcPn5cPjy3CLdXPmSomp+za+mPboZVCRe6ILtuQVYBU8FbB4iQgR
nqchmjXE09PzzyuE8esK5I4uzz5wgu63R5s6vPX/Y1dMTHUaLrKiIS4GrzUycGIdcFMmY1tFLbgp
/j0lvc8L6F567ufIlvsHim6GTsLw6RiOYQ/KKX0M9xCuuJxyHHygWoNNNCJCTOs9SjmAndRS8Jiy
znIVHSgvGBrLuDh1Owpwtlz56JrlBoGM//El/1iV/duSJfeUMGw3JGCtIc4FtI3UMR+99X5FOWMX
BPMD4/NYzXQp+IyDl8JYvPFyHecdsBjKZk+HQ1oVnpIhRThs+KsycdpGAkt6yEwIGZNbZ75oD0yF
VdDl/q0SXHU8o18Pu/EBp6qFf06PLRetEZZjgbsQWOCeDbHg0JMI/pIpDiIoG1fyyZ+evvnkT2M1
Tsk6OHebBc7bh6frP++3WH7JjoVXMA0RKTdRRAdz1WlmCRhU8OexsyLlhXpptYC4fk2u5glERfY0
VpGVdBkhKcku5zo/lt+uvw1P45sE2yVdPNBAuU4OfPaIfS6KJxAOZAIOptclepO5Wu3Hv+FSM+Wd
2Sr15fzgx4/H9W5JFNYoZnBVSpZjM0GIN7mGGFSgFqDD/8J6ic6p1DxNZ92X5iIVEn/9dP3l9vXm
cH/9+vj48NY8742sU9QqDj57sQxrLjyKfkLgqaRKLueSbV7xUtXn0zB2Hcb2osM42eVP8fYA97Vw
BLLLHGYrJzZocK5s9DBvYyHZmgwebDR8Famtf+0I1GRqsHa5v6eZ0vvN6eD8I7z53EOi6sR3JXEj
KnkHXpbTRGmDGTjSEZe9gzA0WRNCYIXq1bLtwJnD1XLswJXj2Obh3dw8jTewRKZjrRz87HlsYLMG
r4BFkrWA0N6ilyBQKT2XGJ21tji9othgCWMeJSyv1sT3y20UrTeXiu3y8Hz7j92f98Pd4U2K1F4d
u5jyVJjRKCOgUIFIWEY82B2SUjHFxGw5f5fZd8uHrpgZulkyM8O2Ewx8GneH4Tw3ObeYtgh/0BAw
L502WI9THB4ECjCyAnwFqj0EBMoVLdYSFEwUmqBgGquw2s7Jid6Idjtgiia+Pjzcbh7+2ScrpY7C
UZyWkwZPQDVhBmFtihFMLA/ZrUHsYg5iBnc+XPHd7GSH7ygavlN17K+H59fh9vCv8elykIpelxEs
FKOIjRL3TH0Czxasq4zgKCTHBXz6V1ZB/AaiLSB+u1JT3i+dW0NZm0r+x2HK7S3DdjzWwggsgeHT
xj++wJNVNp1ZO0IT0gbyxMksSeEwixn2oeUrKjI7k5gfA56G5nzB9VxmFRnOaZMLcHjEJ3w+3//V
5UmOjt3cXXBG2WysJdyg/AD25Joac5kYC8tgoiH8XVH5aQ1iXntaX6mpc92hfhTMmULgazxYrLcV
uZ7OChJYCC6VIJRhI0gfArEmUmKk5wwAg6tWvoeT1wWiCrDcLzcYYdA2B4Vwe88vA3yb2+H5uc4c
KL5YUSimtaDXG3HbgWM3NC+9koknV/SadsQqEJVzUV2pKKvONq5RvN13nP5+Hl63Y5PrIh0tuniS
pGTYprmQwJInmsVEfZDGvN+sxL84dLhGCu2pwzRYgxW2A1aMLdhKBsn/Np2Yv+BXh3oyW5aFibDi
lcIopmtgh2eeiFERLkUWslqTllENYo67vlIzV7zDXG0XJ+DgaFf6UxfQTE4JztZ7wTkEIS4eW/Uy
rLkFf9mmlJ0tPqu8iqPwFkR1Lt5erFnrjtcxpdXum6PK05bcxPgYm0z9JrgPzNBEclSoB10McQHM
hxbKJmtStJavynKcdyYry3EarMnul4m0Ztjbrh7nyynamdQnZzGgnUSO7JSsnyGmZpZYD3iFM4kE
BaugsUIqLbxIbBWVQDMAc8az4YrybinOCYNc9jTP8Ck/v95txqfav+AZ/AsFU1hZFDzFljNaSxKL
zpFiO+81qbS0JFqdrtmlGjTvGIrdm6M8/YauX4DP8wuqf547SBl1pY+lD5kna0OMx71hMBUQjmTD
idSqxOBNofJ9SiD2nrxmt2xOAIOaN5MU7unlYftwG173+2l/Ao2sxpwuESmK29Dj6brIWHtpkiUq
Ol+iliKtKVeu5jDXbKou1IhtD/G2zfAc/nd3/ug73FU7umRGcl7ASzhaVj1lJmsSKNMeJZr9mk7c
/354GuH7P6fDcHP/cJyxM22R5dUac6eQ1Yy6TRcpT3CX4WF42r2lgkurr6S4MphZe3qJy5qRRVCm
iEwMLIMH7k5CJB0KLwo8ZWrYinbellyqIpL2YoV+HDcd9MceuzP0P3+NP4/ojEziTu5KqCuOaben
V1NNlMHcW0+YxgTRiOp5GY+YXbaFlhTfcTrEEvmcxwz2fLjCvO9F0nvZKulcPz7BO5spPheldCYb
Z6MjiStBhEnYUYYFInNiKcUUfVrRxO7gmG/ALa/WzIfOJtx+2DVT+2uM1fYmtzqgkLIrUoLfFiKY
DotuXHHSpClfckUJ5DHOU8djrAlullkRlm4v/Rb939MpRrl8y0sPZI0nICw6ESR4vakI1FH3iXgV
4MtcaIA/5T32Pv53Dz7HZ3nnQ2/58WwD8T2i47F53RNsq1GD8zmooLCC15dMROCFWArORGRMJaO4
Ne9IP3MGrvPINTK+7yDTu/OM+wp+BB5V/Il7PKk+ZxeaTiEtLdbKDCt+NJhFhmm5kwNgUXQu2ZLz
u0y2/+tHrwn2PrOCDe2kq+ebCtZppgNRXieIoijF1DuUBVFMu1zAcdLveb51QAmz64Aa2y4RYXge
pzVmmmBX7FRudHqJjk9BDUuNapbYKRGz7JylmYB1s1Jzr3JZkRz3Bcds2biMVXylXkqmWDnY5uQx
DNvf/43Dk3EnijNOfAJ3XsCiQSyHZUT6qIsGk+hkWBPdBkZFublW0+6co1slW13B9LB9vYM7/DTc
Dzdv2QraXjHsyISxk6OcOZkNMV4pbGGZiFNYhhMUTZpyoz1bD/EGyIx3c6WirYblvoDVok28K3Dr
8AR/HHYTaq6uGHdTA5/p1VSu6FKMpRAmPCbmCtQc1yg6XFCiKWWzCpmaOYh5bDobrvjq7TLNztmt
6wk3nyVn5+LNLvgYhVeEUew2lQwW3IEnn8AyC82xZ6JZk3rBCUOr49xmgwyuY5MHZ1qbfDf1RT1s
Acu8mc+RsTB8ssxJJWGZg9WOeQhFIzafookRKrEiX2NF2eo6yX6okcxHa852GXoOA2vD/c/H9qDz
8DMkq0ywBsvtIfyEoJ7AVGbgzNJYcpTYOWUFBuH05DOUp5EK49Bx0YbBta1SGktdGYTZwkZdVin5
SLKkEIxmnLoigY2AaCqUWKRTcbULW2MeOldr8oPrkN+2mR+PU1nF73MF+flkNiqnJME1jinB6pa0
JlaaTBR1SllErldkhrHG5MN90w/iPFbTHXvmYVHJu3u5+i1+/To83YwvAW7h+eVpeKyMRUzFaq6P
goJCQtThXMp4TE4zLzJRuiITvGQxA728WBPvaNoNG94K9vzyPD59fng57M+4moQmHWS2zhEeUoFQ
j2kSUnJE8QzGmYExEavoCdFSmPsV7bUK80bTDmbT+m3HZRPbjr1cCEthjhKCbmoWAD42F5xIx3Fi
RwUxtcFEMgrhB41Zc7k232LCsfAtptGasTMdxmObW/Pl25/Ph+3zrLPJZJGNyckkmLcSqyhQnNHT
TFHgyzstwW2TK8p6fGMwN8mXwQrrli9DumFHW5sM9/yw/3kcpoiOT3tBUhxDDiOjKZRIhi05Mvhs
IUROlHCMiei4pXFVh+lnDPVJ+nm0YrvTPbaW9jIVXv58HDElp0qmwVLrYHTGUinU0NWK+GQKUTJk
KlTgUcaVZSpcOLSZCpcLNeLOjsQw0nZHAsWBPtw/vr40ve6il0laCe4Dh1guZ49VloYoJq3XQjsf
5bpUkyYIjWrSNFZRHd2mQ3VYuA0YbPfk6RTMVOOyJVEUCDkiIA1UO0IVd1xlxQsPK9uH6OxcVuM1
303HER73qtmPuH55Goe7w/3Nfx8q/5epwqwqiXCPTdBpQgWWgtXXEvPUM41iRfHFnML8GHw2XMHd
sw7cvWo3IT6O/8SdHrLc6BFXTEH4jCWCYAeoDJpog71RaGYAWhhCqVFOFEq9XlE+7onIjPFppMar
l/WXG7ro6/dxuL95hRj7E9C4nbJnTvNXuQkvnr5Rjc3GNcUuSRlzGC3xqM5is/MWE58LW5GKZUtk
zrm59EPF1okOcLeYz/C+1ylpMg0vb8XEwiLuadMdYuZiILIgLGpNhEdFfj41IlfBKBpKESuqFKx5
zGFXFxrUYwf1oucfPkm+e/ifw2W7bZrTyNjEjInqhhRjFG79gEeBeUuc60Q98wn8jXWlP08gmrzn
aawmu912yO62ZyHs7d3jt4sMxmQgJvPrfcweojaeA6q3cWJd5mAuDBXCRxvtuzydf3vYmlFne2zD
duacBIKm+I8rfmlwdGwio0/t5pIzgqSgDMy6BOtUKNhOSjGbNKxV5l3mflRPXLFiHQkQHDwL2G2/
oXrtyxXr0DKUisJtILx4hlGVIE4wQaQTSVjpvXufspTNMze8lglGG6563dc/f/xyWawxq1ud+hTx
ADMsgE8fJKrTUU48tZTwEGGpBv/IObouywYgGrsGIxVVvmy0qzZCX5KO7sbtsPnHeHcR+DfTQsGx
CiEwKcCKwSIRI0XfEmsXoyBcseRCsqYk+x5nYf3MFS7R82SEu7S3uRmf7ob7l4ffZ0peiAs1ZHKy
QlFLMhh+Aq8S0PKC5ERd8ozn/I4Ez2e0mkducI09XPvz7Pr6bTh8ffh9vJ90J85K5hMuLQLjSQeI
uGWBBcExYpniROmgYlKFxvAuE1A7j1wjG1QH2TBe9My+He7H53FJbfKS8WPJqDeeG0eCwhLMhDWC
DuZdUY4zbxmz/l2S6z95DW/T8dEkawWL/Hb7AD8DN3zYpJU9tVj01BTLnCKUG+DmSgJuPhNrPbdM
Ku2yWkfDkunh65as01DFUprlDtpG2bHZQZvq5E/foN6aTDYWyjEJzWFChAd3JaAMFCwRXtpkwH+x
KxMROHFoZQROwxVe3VEj3zg7uTN/w3s/xsDHJN8iKUuBwYohhSACPGJiI3h+sMCKSAMHlm4lElpN
qHseqthths6yssUgt06GmlIkduCB7w83r09Vu5zjFI2wlNigJdHJRAjPIsS6iUoCBgA8wsyycWs6
rTzyiHMe82PLzuUK+27TcX52O9ZYhOvx5fXRPz8fJnWSKushZ6dxGiueJCaeReK1E2BmU8zWcOrL
ijYjaw7zfd/qQo24IxIAg66Z2ZNV+ZCur3/yry/f4CZPuCplkWRYcDmjhgt455E5YgOsbjHzGK1l
XDu2MvPbIdKa4s4/qX4BY6fyZzOypXBOlV8pj4kQx7z3KLlRGdyIGCE0KujnUz1p52TNeWCRipVx
//L6/O10StTynl2qOYuOdzEuvQv4TTWJEIEawTKugFKDm0Y9J0EzSkyh2NGEer8mFbMTgEr6Yhqp
aXb6xm32uj2m38K93z6cTQXnUl3JK0axFiZREVwJAaIETCoBhxd1pj0pxdgAqyD4GGvxMD4+LEzD
fLgCu3dLuactO8oI/O36Be/67fBYAk96ZaeDCk2N0ijFKz1MUh0MCTkJbB7DfRLFK1fWdL45A1Ed
cM7G51y3kna4StZO2B14fneHm57r5lC8P6kC3jDz8BdWracoSQS3wlgWAfKKNvPQBf50BjHPBp6P
14TZvkNYtr184JnQD4F7Azf5/7q7tt62kSX97l+hlwPMLLaVvl8GmIe+MZOTZDyInZxz9sXQhU60
Y0uBJWcm++u3irQkNknnYBbYh1ABHLnbvPTHYnVVdfVX23o1BFqnFCsbwHCwmHjGXACgXUUqR2NW
KjkpppTBc8IjnvDo5vGMdJewmxHBVkqPRKlP20KPYQgttJ4zpNNqlo6ktWC+aZKjyES4aMBYBt/E
Vtp5xWLFo52IRj4h0VPJp/YCYj2y03ilpRpMdvf3u+3jmXTPtjQvzTYjHTR13EhijMbdW6BHAv5Q
HmQ9SxXVtAr4IRRjtHu9nhJntR7BGfnKCl9kubvHua/VGA63a0gtbJWtItKifhbUkQAeB8iwsiyx
FKpJ7fwEJDp7PXf3JYgj2X3QeKKdXz1+3gEKX08rx4UOiLrCnYWexEo4IkwOxCEjp/XeCSeMEpX5
Ltf5ilGXgI0EGaDRjiQwXMOZwYxVDfmu4SmCZBFukQpdBosbKiqSjKGxUqAxeTWttT0cfV9fQlMJ
5mpY0GdlWb+e9JF6E5SkagiZlKFzQ5uITeVAAj2xMYCV5THXJklKmGGJJiTbNXFihU4Rh36tU2wr
gHUj1adWji2GNJkYckCXrUuXeSrfIZLklSDgs2LubuTEcqeIZ5FZ5aJkzk4uQtPBYhib6XSWcHM3
Ajd3g50T44yO2kiVeQJTKosAzq0BjG1KRCVNBa8qS4WY0t6JUTbH55gcAcd6BFyrbleuIBK7jE0k
pmEPa4jDnOXWB2YBVtS5MDORAOYvsS7qaFRFlZ+Q/Lbj71KGNQ0llMvlCJT1cmTyCneP9QEu/Kkr
qBlmqoTp+zYrULcZPFsnqSGgCKrKZBGN5xOx+U/j7+naU3sB7IINA1yrxVL0yXOPa5vHFc20qO8b
h7azzmutF5mmSLJjoA1CRYlHmibGqZVcIEvblALjBRIji75tR4H2cqQO8Goplr3g7Murq2PouyUW
UCqzpCIYqRT1rJWgZ6WLBEwIFpSW2qgpuKww7m6NlKurEjy1GgFP9ffzNIsQaL0ierjGqyPzoEMt
UQ5r0TmqiKVYTdH4JGhQ4O5PiCCwGX4Hxeb3EketR3DUy6Pn9Kne3K8Xd2Sx355TJDltciQZuqHe
Gqlz5oQjC7mwDKkZMI5VUVelLLT7jqj1O87TcOAlbmbEgVrW/cXxX9qzlC+wcywzSTVhFQfIYDoi
AQnZqARTnwlNeZgQI9YTBB0pfGop8FyxEdtzJdgxT/cBLn73Ze5OHrxqRLDJYXPUJ66wmgOm6VY0
kGA5JaoygoM6lMHH71ECyyGXaIn1GFq3g/gnxp1aFdgVQBFYkjImIrlGk1JI0oTpgpLBVFI7ruzU
4nI9TXhuLIGVw8yAtTamX9Ss3g22Mwot5wIkcq7mGhenOJWah8oSkD+GwU9JrIY5x2iYsa3Q3E1p
T24Hke6sfW7twryu6dAZWtdq3ST4dpcJf3viJ8QpfE7nzWYwISX3wZJUMQcTjmPEq2zB/FHeSJ+h
mU0rWNIH45kl1WN3ifSSjSC97i8BNnWkUn1XH+piA6kwzDiUXC6wLLoKxMocSBTMR2kDVvKeENZn
ELoQn1tLZEd2lqyH9MlNzKUpBzO2ARpwrbLGNBaGtjxjIMxNzfQKnCWrMKo6teBUgUU/OFV0duGu
qR56S6BGxMiS39XX++Xu7pys1RbO0eB1qrloIv6VrbBynCS+ykgfHLF+jslEx6BY0jFD37R0SIFJ
T4EUfQXo8P4PQWdiOQL65We4oc3/DBLkcKe5ZtQRyqNAHhWQcO81UVKYJDB7eUqlivpI9JDudpVA
yxHpZqa/0R8zNdagiFYwmP2q4XEzbTlVR9syAwA301l4go+OiJRBl2gjiGXZcXB5wdlI00rYSEc8
+hRu/b4S8AUdAXxQgQsxPpzWzeN1XDw8bOqHq8+LVTFRCmdsYhakPFcepDxG4mOIJCCzjVBWmill
IpU4dGW86OgCfrviQ8Chsb9l+h/1Em4f66a92TXsOYs/l4/b9V1dpsso7aosnCfeRYaL34YE7hIJ
JjBM10/Mf7diXpSNC83g9y+exWXQU6Iu6hHUTb+8LZzj9eZwXe8PcF9bOPur7X/Di1OvQ4k9moQO
RFlnjnVMQNJ5rIjHMHrFnTKSZi+auqDIg7Z/8f4qvzuN6wxjCR+042z/IjufOUzzpHKVJNInSpxq
FuSjSlUK0Vv2AjVgg+dis8UrtDfYfdAvXNTKR1qRigVKpMhwHhcD0cwpm8EHizK+6I8YTtCIRktI
uB/0l4DMz9h/4686T6Lhfes/CWjE2Hq7pxFO1Sbj7A/HhbunUEdDMOKNTsFZsA5tQo/dEpuEIMFa
7032PkZE/cPu7hHl78Plm/dv84v/ePGNExd3x4ZEM9C4Ysf9cC3Z2ks4x+LukP8Ead43xHfHaIxs
wzGmqUTPWXAGRCI0SQLMVqAGKSWJS0O1V56677Li2DcxKNDkazVEk6/7+wtewZUftg0Ci7v+ynWz
obrZhc6tpUlFwqJJCGfG2qUafDAPSCbnqikVPB7DpDPBjHWX0NfrEejreuDvgiX2pX4i1T1jL84J
8ILl6DQjXKLrKwOGx4QCz0zznHB3J59S7lqBR+H9dju6UDM6zC6GxkGGYMTSZocNBsGfqGa4BeFG
xgAU7xykSdoowoUDbYFc7x65sgV4BlVMNNMpkc2cwOhCfGwr0R1maEEjauR2YWbbPpH6qIdO1AH6
iScUpw1esWgVTIU8Sw7gcko80ziL5OgFT5Z/RywzHVU8PvgSv9ViBL9138D/o16u2svCvR26bI2Y
pYW1IFuKmewrHbDygKgouLGyoWoG44TFLJJ3Mig+oTWbxmZoTuFBz37db4pqhYPOAng+YugwzRa9
mEET6enU3B1qBgr2XlQhE5sDTHzg1YJmcJQwcG9zMlVFqZxKHelh7d1uc4GvGRaDBMv2tl97d/Hl
dgdW6HEX0hOnmsTqmy2Bgc6J6myw9ljCvUgevFWw40hU1NCAqa98EqWNP1QnHLrRxk5zAe/KDC1h
ttZ6tIA0nKWpQ1vSYFc+BxB5Q7TB/c4xM+KtcUSBmwq+h6MhqukiW/5FA0+Je9NUYF5TNsS85oux
2O5TbPjJEASjQijMpYWfiHxIWmRhiNUqIwE57l8EJ6QC2yJpmPUmVVR2DI9+aLfXXcKuRgy42vQp
nfef63r1af5mgTd7VSMNzWb1Fvo224/Vebbkc8bnolljxi9N/eQsdGCKOIZ7dEUGp5VHS4JhDJ6H
qyxLU6JtHMGn4G4c6S+fx8qNPI91/zV4V9/vDvWQqbgpeJAz1Upi8JGB/GdJbJKeyBAj9zJTO6Xi
nD0gukmjZU+J8rDUATaKE/XP9cuHut5e14s3u48fz9Q/5Z6RLOHlMeCxyMpgHRosZJ1lE48M2jFh
VOW/S/qf0dF3AeQrNfRMeLN5fzlSvOcUKOnKKQ9SJ2MsSQ1pjcDk0MjAw/Y2VL5iXGo2nSo+JwiG
5XxOXQXCt3IYxOC35kzo9fBYX3/9XF+tFncdbipum4BRFqFy2TIC050jmIBHLGOROAWmh5Tg89kJ
5eFXu+0Yp/YzKJUwu9sRmFdizFMZW7wHbY0VDSKRmTcVvsCxtjwTl0xEUyMrM6EdeM+t2z+3ZK+F
XQ5Wj6GxDWF0y1N5/1uPfYLGaGOWWDmGVkRQBb4Jy4Y4w1yVubdOTShL9wmA7tpl21KiuWYjaA4C
GmDp3f32UN/WD/W2I6+cNxSJtjHLZEo8BhKiAyOBeRBbiUR2xsgQlASjLU4qoNzFo4wld3sKsOuR
IIbkvB/bbGQfhv/1XCq0XZ8UIggtrSJeoQ52CVxADr9SsMBMBR6KSHYqsYt2/H2N0LZ2QZXwbwiq
EX3ewM3147bex7vd47rQCSInYcGtoxUyLbmgSMBscx6qnKx0UU2pjnAHhA6yndYCWTssIAONt8ux
mew47C62ESYsq00mKUjcI8nBkM0wnclkfWLIWmOqic1kxzsckdumvcDXjcxkclXzMXXwdN1ulcVm
dySrQqTOEBowNCES5uTESGxQioaQtTZ0YhB3kOij3OkqgL7lQ+dM3i76W/s2B3wP9ocWY0RXm5g5
AOuR8bctC5qTxIUOG+FVEJLpqSmHhvdnoBya1i6mivJhmEdxPjBzH/eb1dM1G8FtRRctBmml9kiQ
YJ01mI+BPB6eEjBTTKKVZ2lKdSq7QHTlttNc4At27hBfpUVvtb+R+zYwUaZYq2brGTENh1VFHfgP
URHw2GzWigU1KXLMMwh9ldC2FsgaMZzWlLH9nLFfdvf11afFQ7d6DPrBiRrQtYGkXCGFXQootRx0
rwdXWShRiQltFOiA0N1qdW4tkV0PTTFl9brPrLBeP4CeDbvd72/qj4vV11PtIzRyrfI2Ui+Js0oi
mx34ED47nNyqiueUnZxS8nofi+6qRr+vANvWwxU75diqFzDD1LZFk/vX+Vr/+RnPPFI/uPEzmE8q
49715MGWED6DUYwcIoxT58HriCqJaaX7ttmRuQ/LsK94BE6xkUewXD4v7/MmyXB12FedZVTbWeXD
DQNOgMxrrRURMuFCdZUJCwHs8eSZdmFKa019NIqVpn5nAf5iWPUWGs1YceGWHRkrb3c1eapwbxdD
ZnOLtjNWJrfJEM0s4z5gtGhCUl7i0KstfO7oQty4f32IwaPjTbZQs+AaAY4VUg9RN2e4P5FKaRiY
24TrDNpbo7UshCEYVWI5oAapprBKjYMfpld0MOkCaRcjQNqVWd/WAOSH+Nsv+UOcf9ms6x1CsZr9
IOVc49Kzy9mryCuSOC76SyxPZ+HXLDNKqBbx+yVw/IDjbcF6McTg4gJXMZrF+Le79any9ezq8f4e
jv4J8I2Lu7v97H6xrmfLr7Pd4VP9MPvcJq3X+9mhKUyO1tvh02Z/7PipeS6Hxf73GxjzzefN+qcZ
bds+PdSL9c0Kfh7qXuO+PtzsD6f28sL/z6eHXzqjAgSa690vVlhSY+x6jDNq/so15cXFh7ezd/XH
Al+sKHy5vfs6wyRW7NndztpHt6n3P82ud4fF3c/C8jl7O4PpDR7c9vAzff0D/duPs/0fIH71+mb3
eLiB23qEp9hwF9frpyN+gInzbz9e/ONhc1gs72o4AV78dFrp5url7A/oBXk6nvQbFzk2dS/UnOPp
OrPj2/js58Ord9fv/Rv49i6/fHX56+zi6f/rf/2Wnzvo6tV/NX3x8v2v17MftrstWe0W8Ias6vWP
s4ufz5/Rw099xy8XfnXYfNkcvs6uHxYrFN3hhyv9+vR9doFvqN9u7tuXY+zDJTsfoWYXabP/vDis
Ps0wQ3GzfWy1RvcIAU76284Rf7+a/f3V9exjva0fENoZvqDlRWBWfXn8LmcXr+HFre9mHh/G7HK7
qsduzHbH8da/eXMZv/GAuFXnu9LsdMTHx8XDevYZpq+RgwQ/XcMdj7h549+9zLMfQJzqhy/4oM4f
rc/XEPbUfPzTGbwmi9aYm+3bzVodifvx4urax9ezl+/9u/TMKJSe8+MFFEB7BRbO798UTKHnrnvE
h7c3zTD89XNiyRW+kscRlUeMjrq5Sudh/NVht/tVZm+bpvFB8Ll4eXqQs94RYzclzdyeJEr85Vu6
uUn+2n8TVzlXTygJBii1R9wk0AP/eu6Yzosk8Yjq8tfrf3Mh2RXym5s3r359nRO8TM9cQJyFnEuH
R1znf15/67UAoNjpCItHvP/1VbxM+fljlKbdu7pv1OgMp/bnsGJzcZQoDq/eHnx/OOK+vt89fH3m
vs5YMfp/UYXXl9eNOn7+AxPJk9JhjKqnI/5zdg86bV8ISisg7TPn3SMu/hdQSwMECgAAAAAAYVyT
TQAAAAAAAAAAAAAAAAcAHABjcnlwdG8vVVQJAANlnRpc3rQaXHV4CwABBPUBAAAEFAAAAFBLAwQK
AAAAAABhXJNNAAAAAAAAAAAAAAAADgAcAGNyeXB0by9zdWJ0bGUvVVQJAANlnRpc3rQaXHV4CwAB
BPUBAAAEFAAAAFBLAwQKAAIAAAAIZpNNJeDTCCwAAAAsAAAAPgAcAGNyeXB0by9zdWJ0bGUvcnNh
LWdlbmVyYXRlLWtleS1tYWxmb3JtZWQtcGFyYW1ldGVycy1zdGRlcnIudHh0VVQJAAOPrhpcZZ0a
XHV4CwABBPUBAAAEFAAAAENvdWxkIG5vdCBnZW5lcmF0ZSBhIGtleSBwYWlyLCBzdGF0dXMgLTQz
MDQKUEsDBBQAAgAIAAhmk00wO7ixSwAAAGgAAAA8ABwAY3J5cHRvL3N1YnRsZS9yc2EtaW1wb3J0
LWtleS1tYWxmb3JtZWQtcGFyYW1ldGVycy1zdGRlcnIudHh0VVQJAAOQrhpcZZ0aXHV4CwABBPUB
AAAEFAAAAG3LsQ2AMAxE0Z4pbh8aVrBkS7GAOHIuRGwPDR31f39Lv4SG3e6O6SwxCFF1elQ5oEKB
pKEG0UdrkTRd1o/jjDeySAVnoKWf1n+GB1BLAwQKAAAAAABaXJNNAAAAAAAAAAAAAAAADwAcAGNy
eXB0by93b3JrZXJzL1VUCQADXJ0aXN60Glx1eAsAAQT1AQAABBQAAABQSwMECgAAAAAAWlyTTQAA
AAAAAAAAAAAAABYAHABjcnlwdG8vd29ya2Vycy9zdWJ0bGUvVVQJAANcnRpc3rQaXHV4CwABBPUB
AAAEFAAAAFBLAwQKAAIAAAAFZpNNJeDTCCwAAAAsAAAAMQAcAGNyeXB0by93b3JrZXJzL3N1YnRs
ZS9yc2EtZ2VuZXJhdGUta2V5LXN0ZGVyci50eHRVVAkAA4muGlxcnRpcdXgLAAEE9QEAAAQUAAAA
Q291bGQgbm90IGdlbmVyYXRlIGEga2V5IHBhaXIsIHN0YXR1cyAtNDMwNApQSwMECgAAAAAAJWaT
TQAAAAAAAAAAAAAAAAgAHABlZGl0aW5nL1VUCQADxa4aXN60Glx1eAsAAQT1AQAABBQAAABQSwME
CgAAAAAAJWaTTQAAAAAAAAAAAAAAAA4AHABlZGl0aW5nL2lucHV0L1VUCQADxa4aXN60Glx1eAsA
AQT1AQAABBQAAABQSwMECgAAAAAAJWaTTQAAAAAAAAAAAAAAABIAHABlZGl0aW5nL2lucHV0L2lv
cy9VVAkAA8WuGlzetBpcdXgLAAEE9QEAAAQUAAAAUEsDBBQAAgAIACVmk03ElWOZxwAAAKwBAAA4
ABwAZWRpdGluZy9pbnB1dC9pb3MvcnRsLWtleWJvYXJkLWlucHV0LW9uLWZvY3VzLXN0ZGVyci50
eHRVVAkAA8WuGlzFrhpcdXgLAAEE9QEAAAQUAAAA1U/BSsNAFLz7Fe+oYOXtJttkt7WQ9rRURcS2
h1Jk27zqQrMJLxuqf+/m7g84h2FmYBhGoignQk6EBiFNrg0WD6rUsKPj2sd36uPbEAJx1XX7XJVl
YTKd5So7QPVqgZhbNjD/2Nj1ctU2nYs2dEPceroawO/i7Egfa8Rc4QzO7BqCR7hFSC7R3Qwu7oc4
ZfNV9TTKsTXFBDkVpBwuFsAUBw5Up8bV1/HrHlzfD40Pn7Cx49JLa0NkH3p/eqYkTjfyr1ca//mr
X1BLAwQKAAAAAACiXJNNAAAAAAAAAAAAAAAAEwAcAGVkaXRpbmcvcGFzdGVib2FyZC9VVAkAA9+d
GlzetBpcdXgLAAEE9QEAAAQUAAAAUEsDBBQAAgAIACZmk019McMeZAAAAGwAAAAlABwAZWRpdGlu
Zy9wYXN0ZWJvYXJkLzE5NjQ0LTItc3RkZXJyLnR4dFVUCQADyK4aXJudGlx1eAsAAQT1AQAABBQA
AAAzMjC00DU00jW0VDA0sjKxtDI00jMwNlYIT03yziwJSS0uCSrNy0stciwoiDYxtbAwtzK2NDa1
MI1VCHDyLEnNdc7PyUlNLsnMzwtOLSrLTE4tUkjOB2oACymkZBZDeakpelwAUEsDBBQAAgAIACZm
k00aLIuBZAAAAGwAAAAlABwAZWRpdGluZy9wYXN0ZWJvYXJkLzM5NzY4NzItc3RkZXJyLnR4dFVU
CQADyK4aXJudGlx1eAsAAQT1AQAABBQAAAAzMjC00DU00jW0VDA0sjKxtDI00jM2M1AIT03yziwJ
SS0uCSrNy0stciwoiDYxtbAwtzK2NDc1tIhVCHDyLEnNdc7PyUlNLsnMzwtOLSrLTE4tUkjOB2oA
CymkZBZDeakpelwAUEsDBBQAAgAIACZmk01YzXVyZAAAAGwAAAAnABwAZWRpdGluZy9wYXN0ZWJv
YXJkLzQwNzYyNjctMi1zdGRlcnIudHh0VVQJAAPIrhpcm50aXHV4CwABBPUBAAAEFAAAADMyMLTQ
NTTSNbRUMDSyMrG0MjTSMzc2UAhPTfLOLAlJLS4JKs3LSy1yLCiINjG1sDC3MrY0NzW0iFUIcPIs
Sc11zs/JSU0uyczPC04tKstMTi1SSM4HagALKaRkFkN5qSl6XABQSwMEFAACAAgAKWaTTdV0oVWf
AAAAOAQAACcAHABlZGl0aW5nL3Bhc3RlYm9hcmQvNDA3NjI2Ny0zLXN0ZGVyci50eHRVVAkAA82u
GlyfnRpcdXgLAAEE9QEAAAQUAAAAvdCxCsIwEAbg3afICzT0krv00q06iYuo4CAutjcEalva6PMr
4ii61Iz3w8/HfyYHzsBk4BWYEn0JVoN36iiXTYgHmeLu1nUyVsNwQmIuSustkzur7XId5brq21bq
GPpuL+M91DKqun8WXpFqwvS+pNEL88Eia5NZXKTahRoonYU+1Q9JGwdfrYLAz2U55F8Wz2M5nZNN
ZiGmsxjyv1gPUEsDBBQAAgAIAClmk02VSAEZZAAAAGwAAAAlABwAZWRpdGluZy9wYXN0ZWJvYXJk
LzQwNzYyNjctc3RkZXJyLnR4dFVUCQADza4aXKCdGlx1eAsAAQT1AQAABBQAAAAzMjC00DU00jW0
VDA0sjKxtDI01zO0NFQIT03yziwJSS0uCSrNy0stciwoiDYxtbAwtzK2NDY1MYtVCHDyLEnNdc7P
yUlNLsnMzwtOLSrLTE4tUkjOB2oACymkZBZDeakpelwAUEsDBBQAAgAIAClmk00p6Fd9ZAAAAGwA
AAAlABwAZWRpdGluZy9wYXN0ZWJvYXJkLzQyNDIyOTMtc3RkZXJyLnR4dFVUCQADza4aXKCdGlx1
eAsAAQT1AQAABBQAAAAzMjC00DU00jW0VDA0sjKxtDI01zM1MVQIT03yziwJSS0uCSrNy0stciwo
iDYxtbAwtzK2NLW0MIlVCHDyLEnNdc7PyUlNLsnMzwtOLSrLTE4tUkjOB2oACymkZBZDeakpelwA
UEsDBBQAAgAIAClmk03U53/1ZAAAAGwAAAAlABwAZWRpdGluZy9wYXN0ZWJvYXJkLzQ2NDEwMzMt
c3RkZXJyLnR4dFVUCQADzq4aXKGdGlx1eAsAAQT1AQAABBQAAAAzMjC00DU00jW0VDA0sjKxtDI0
17O0MFQIT03yziwJSS0uCSrNy0stciwoiDYxtbAwtzK2NDc1tIxVCHDyLEnNdc7PyUlNLsnMzwtO
LSrLTE4tUkjOB2oACymkZBZDeakpelwAUEsDBBQAAgAIAClmk00WccFOZAAAAGwAAAAlABwAZWRp
dGluZy9wYXN0ZWJvYXJkLzQ5MjI3MDktc3RkZXJyLnR4dFVUCQADzq4aXKGdGlx1eAsAAQT1AQAA
BBQAAAAzMjC00DU00jW0VDA0sjKxtDK00DM1M1AIT03yziwJSS0uCSrNy0stciwoiDYxtbAwtzK2
NLYwNYtVCHDyLEnNdc7PyUlNLsnMzwtOLSrLTE4tUkjOB2oACymkZBZDeakpelwAUEsDBBQAAgAI
AClmk019MZrwZAAAAGwAAAA6ABwAZWRpdGluZy9wYXN0ZWJvYXJkLzQ5MzA5ODYtMS1wYXN0ZS1h
cy1xdW90YXRpb24tc3RkZXJyLnR4dFVUCQADzq4aXKGdGlx1eAsAAQT1AQAABBQAAAAzMjC00DU0
0jW0VDA0sjKxtDK00DM3M1UIT03yziwJSS0uCSrNy0stciwoiDYxtbAwtzK2NDc1tIhVCHDyLEnN
dc7PyUlNLsnMzwtOLSrLTE4tUkjOB2oACymkZBZDeakpelwAUEsDBBQAAgAIACpmk03/rMJrZAAA
AGwAAAA6ABwAZWRpdGluZy9wYXN0ZWJvYXJkLzQ5MzA5ODYtMi1wYXN0ZS1hcy1xdW90YXRpb24t
c3RkZXJyLnR4dFVUCQADz64aXKKdGlx1eAsAAQT1AQAABBQAAAAzMjC00DU00jW0VDA0sjKxtDK0
1DMwNlIIT03yziwJSS0uCSrNy0stciwoiDYxtbAwtzK2NDc1tIhVCHDyLEnNdc7PyUlNLsnMzwtO
LSrLTE4tUkjOB2oACymkZBZDeakpelwAUEsDBBQAAgAIACpmk01jJCFtZAAAAGwAAAA6ABwAZWRp
dGluZy9wYXN0ZWJvYXJkLzQ5MzA5ODYtMy1wYXN0ZS1hcy1xdW90YXRpb24tc3RkZXJyLnR4dFVU
CQADz64aXKKdGlx1eAsAAQT1AQAABBQAAAAzMjC00DU00jW0VDA0sjKxtDK01DOyMFMIT03yziwJ
SS0uCSrNy0stciwoiDYxtbAwtzK2NDY1MYtVCHDyLEnNdc7PyUlNLsnMzwtOLSrLTE4tUkjOB2oA
CymkZBZDeakpelwAUEsDBBQAAgAIACpmk00k8S7uZAAAAGwAAAAnABwAZWRpdGluZy9wYXN0ZWJv
YXJkLzQ5NDQ3NzAtMS1zdGRlcnIudHh0VVQJAAPPrhpcop0aXHV4CwABBPUBAAAEFAAAADMyMLTQ
NTTSNbRUMDSyMrG0MrTUMzc2VwhPTfLOLAlJLS4JKs3LSy1yLCiINjG1sDC3MrY0NrUwjVUIcPIs
Sc11zs/JSU0uyczPC04tKstMTi1SSM4HagALKaRkFkN5qSl6XABQSwMEFAACAAgAKmaTTQo/sBBk
AAAAbAAAACUAHABlZGl0aW5nL3Bhc3RlYm9hcmQvNDk4OTc3NC1zdGRlcnIudHh0VVQJAAPQrhpc
o50aXHV4CwABBPUBAAAEFAAAADMyMLTQNTTSNbRUMDSyMrG0MjLQMzYzVwhPTfLOLAlJLS4JKs3L
Sy1yLCiINjG1sDC3MrY0NrUwjVUIcPIsSc11zs/JSU0uyczPC04tKstMTi1SSM4HagALKaRkFkN5
qSl6XABQSwMEFAACAAgAK2aTTRtCPVRkAAAAbAAAACUAHABlZGl0aW5nL3Bhc3RlYm9hcmQvNTAw
Njc3OS1zdGRlcnIudHh0VVQJAAPRrhpcpJ0aXHV4CwABBPUBAAAEFAAAADMyMLTQNTTSNbRUMDSy
MrG0MjLQM7ewUAhPTfLOLAlJLS4JKs3LSy1yLCiINjG1sDC3MrY0NjUxi1UIcPIsSc11zs/JSU0u
yczPC04tKstMTi1SSM4HagALKaRkFkN5qSl6XABQSwMEFAACAAgAK2aTTUZpysFkAAAAbAAAACUA
HABlZGl0aW5nL3Bhc3RlYm9hcmQvNTAyODQ0Ny1zdGRlcnIudHh0VVQJAAPRrhpcpJ0aXHV4CwAB
BPUBAAAEFAAAADMyMLTQNTTSNbRUMDSyMrG0MjLUMzQzUghPTfLOLAlJLS4JKs3LSy1yLCiINjG1
sDC3MrY0NrUwjVUIcPIsSc11zs/JSU0uyczPC04tKstMTi1SSM4HagALKaRkFkN5qSl6XABQSwME
FAACAAgAK2aTTQBtXJZkAAAAbAAAACUAHABlZGl0aW5nL3Bhc3RlYm9hcmQvNTA2NTYwNS1zdGRl
cnIudHh0VVQJAAPRrhpcpJ0aXHV4CwABBPUBAAAEFAAAADMyMLTQNTTSNbRUMDSyMrG0MjLUMzU1
VghPTfLOLAlJLS4JKs3LSy1yLCiINjG1sDC3MrY0NzW0iFUIcPIsSc11zs/JSU0uyczPC04tKstM
Ti1SSM4HagALKaRkFkN5qSl6XABQSwMEFAACAAgAK2aTTcpL+rtkAAAAbAAAACUAHABlZGl0aW5n
L3Bhc3RlYm9hcmQvNTA3MTA3NC1zdGRlcnIudHh0VVQJAAPSrhpcpZ0aXHV4CwABBPUBAAAEFAAA
ADMyMLTQNTTSNbRUMDSyMrG0MjLUszQyVQhPTfLOLAlJLS4JKs3LSy1yLCiINjG1sDC3MrY0NrUw
jVUIcPIsSc11zs/JSU0uyczPC04tKstMTi1SSM4HagALKaRkFkN5qSl6XABQSwMEFAACAAgAK2aT
TcXSLN9kAAAAbAAAACUAHABlZGl0aW5nL3Bhc3RlYm9hcmQvNTA3NTk0NC1zdGRlcnIudHh0VVQJ
AAPSrhpcpZ0aXHV4CwABBPUBAAAEFAAAADMyMLTQNTTSNbRUMDSyMrG0MjLSMzSzUAhPTfLOLAlJ
LS4JKs3LSy1yLCiINjG1sDC3MrY0NrUwjVUIcPIsSc11zs/JSU0uyczPC04tKstMTi1SSM4HagAL
KaRkFkN5qSl6XABQSwMEFAACAAgAK2aTTY3LTCtkAAAAbAAAACUAHABlZGl0aW5nL3Bhc3RlYm9h
cmQvNTQ3ODI1MC1zdGRlcnIudHh0VVQJAAPSrhpcpp0aXHV4CwABBPUBAAAEFAAAADMyMLTQNTTS
NbRUMDSyMrG0MjLSMzc1VghPTfLOLAlJLS4JKs3LSy1yLCiINjG1sDC3MrY0NjUxi1UIcPIsSc11
zs/JSU0uyczPC04tKstMTi1SSM4HagALKaRkFkN5qSl6XABQSwMEFAACAAgALGaTTcgy27dkAAAA
bAAAACcAHABlZGl0aW5nL3Bhc3RlYm9hcmQvNTYwMTU4My0xLXN0ZGVyci50eHRVVAkAA9OuGlym
nRpcdXgLAAEE9QEAAAQUAAAAMzIwtNA1NNI1tFQwNLIysbQyMtYzMjRSCE9N8s4sCUktLgkqzctL
LXIsKIg2MbWwMLcytjQ3NbSIVQhw8ixJzXXOz8lJTS7JzM8LTi0qy0xOLVJIzgdqAAsppGQWQ3mp
KXpcAFBLAwQUAAIACAAsZpNNl6RaX2QAAABsAAAAJQAcAGVkaXRpbmcvcGFzdGVib2FyZC81NjY1
Mjk5LXN0ZGVyci50eHRVVAkAA9OuGlymnRpcdXgLAAEE9QEAAAQUAAAAMzIwtNA1NNI1tFQwNLIy
sbQyMtYzMTJQCE9N8s4sCUktLgkqzctLLXIsKIg2MbWwMLcytjQ3NbSIVQhw8ixJzXXOz8lJTS7J
zM8LTi0qy0xOLVJIzgdqAAsppGQWQ3mpKXpcAFBLAwQUAAIACAAsZpNNFSLwbmQAAABsAAAAJwAc
AGVkaXRpbmcvcGFzdGVib2FyZC81NzYxNTMwLTEtc3RkZXJyLnR4dFVUCQAD064aXKadGlx1eAsA
AQT1AQAABBQAAAAzMjC00DU00jW0VDA0sjKxtDIy1jOzMFUIT03yziwJSS0uCSrNy0stciwoiDYx
tbAwtzK2NDY1MYtVCHDyLEnNdc7PyUlNLsnMzwtOLSrLTE4tUkjOB2oACymkZBZDeakpelwAUEsD
BBQAAgAIACxmk01Rd4GqZAAAAGwAAAAnABwAZWRpdGluZy9wYXN0ZWJvYXJkLzU3ODA2OTctMS1z
dGRlcnIudHh0VVQJAAPUrhpcp50aXHV4CwABBPUBAAAEFAAAADMyMLTQNTTSNbRUMDSyMrG0MjLR
MzA0VghPTfLOLAlJLS4JKs3LSy1yLCiINjG1sDC3MrY0NjUxi1UIcPIsSc11zs/JSU0uyczPC04t
KstMTi1SSM4HagALKaRkFkN5qSl6XABQSwMEFAACAAgALGaTTRYKb3xkAAAAbAAAAEAAHABlZGl0
aW5nL3Bhc3RlYm9hcmQvYXZvaWQtY29weWluZy1ib2R5LXdpdGgtYmFja2dyb3VuZC1zdGRlcnIu
dHh0VVQJAAPUrhpcp50aXHV4CwABBPUBAAAEFAAAADMyMLTQNTTSNbRUMDSyMrG0MjLRM7YwVghP
TfLOLAlJLS4JKs3LSy1yLCiINjG1sDC3MrY0NzW0iFUIcPIsSc11zs/JSU0uyczPC04tKstMTi1S
SM4HagALKaRkFkN5qSl6XABQSwMEFAACAAgALGaTTa0sKU9kAAAAbAAAADYAHABlZGl0aW5nL3Bh
c3RlYm9hcmQvYmxvY2std3JhcHBlcnMtbmVjZXNzYXJ5LXN0ZGVyci50eHRVVAkAA9SuGlynnRpc
dXgLAAEE9QEAAAQUAAAAMzIwtNA1NNI1tFQwNLIysbQyMtEzNzFUCE9N8s4sCUktLgkqzctLLXIs
KIg2MbWwMLcytjQ2NTGLVQhw8ixJzXXOz8lJTS7JzM8LTi0qy0xOLVJIzgdqAAsppGQWQ3mpKXpc
AFBLAwQUAAIACAAtZpNNQzS+s2QAAABsAAAALQAcAGVkaXRpbmcvcGFzdGVib2FyZC9jamstbGlu
ZS1oZWlnaHQtc3RkZXJyLnR4dFVUCQAD1a4aXKidGlx1eAsAAQT1AQAABBQAAAAzMjC00DU00jW0
VDA0sjKxtDIy1TM0MFYIT03yziwJSS0uCSrNy0stciwoiDYxtbAwtzK2NDY1MYtVCHDyLEnNdc7P
yUlNLsnMzwtOLSrLTE4tUkjOB2oACymkZBZDeakpelwAUEsDBBQAAgAIAC1mk01Y4/AEZAAAAGwA
AAAtABwAZWRpdGluZy9wYXN0ZWJvYXJkL2NsaXBib2FyZC1ldmVudC1zdGRlcnIudHh0VVQJAAPV
rhpcqJ0aXHV4CwABBPUBAAAEFAAAADMyMLTQNTTSNbRUMDSyMrG0MjLVMzYyUAhPTfLOLAlJLS4J
Ks3LSy1yLCiINjG1sDC3MrY0NzW0iFUIcPIsSc11zs/JSU0uyczPC04tKstMTi1SSM4HagALKaRk
FkN5qSl6XABQSwMEFAACAAgALWaTTT6nrlNkAAAAbAAAADMAHABlZGl0aW5nL3Bhc3RlYm9hcmQv
Y29udGVudGVkaXRhYmxlLXByZS0yLXN0ZGVyci50eHRVVAkAA9WuGlyonRpcdXgLAAEE9QEAAAQU
AAAAMzIwtNA1NNI1tFQwNLIysbQyMtUzMzVXCE9N8s4sCUktLgkqzctLLXIsKIg2MbWwMLcytjQ3
NbSIVQhw8ixJzXXOz8lJTS7JzM8LTi0qy0xOLVJIzgdqAAsppGQWQ3mpKXpcAFBLAwQUAAIACAAt
ZpNNQSDBKWQAAABsAAAAMQAcAGVkaXRpbmcvcGFzdGVib2FyZC9jb250ZW50ZWRpdGFibGUtcHJl
LXN0ZGVyci50eHRVVAkAA9auGlypnRpcdXgLAAEE9QEAAAQUAAAAMzIwtNA1NNI1tFQwNLIysbQy
MtWzNDNRCE9N8s4sCUktLgkqzctLLXIsKIg2MbWwMLcytjS2MDWLVQhw8ixJzXXOz8lJTS7JzM8L
Ti0qy0xOLVJIzgdqAAsppGQWQ3mpKXpcAFBLAwQUAAIACAAtZpNNIg5AuGQAAABsAAAAQgAcAGVk
aXRpbmcvcGFzdGVib2FyZC9jb3B5LWNyYXNoLXdpdGgtZXh0cmFuZW91cy1hdHRyaWJ1dGUtc3Rk
ZXJyLnR4dFVUCQAD1q4aXKmdGlx1eAsAAQT1AQAABBQAAAAzMjC00DU00jW0VDA0sjKxtDIy0zO2
NFAIT03yziwJSS0uCSrNy0stciwoiDYxtbAwtzK2NDc1tIhVCHDyLEnNdc7PyUlNLsnMzwtOLSrL
TE4tUkjOB2oACymkZBZDeakpelwAUEsDBBQAAgAIAC1mk03nasESZAAAAGwAAABHABwAZWRpdGlu
Zy9wYXN0ZWJvYXJkL2NvcHktY3V0LXBhc3RlLWV2ZW50cy1maXJlZC13aGVuLWRpc2FibGVkLXN0
ZGVyci50eHRVVAkAA9auGlypnRpcdXgLAAEE9QEAAAQUAAAAMzIwtNA1NNI1tFQwNLIysbQyMtMz
MTVRCE9N8s4sCUktLgkqzctLLXIsKIg2MbWwMLcytjQ2tTCNVQhw8ixJzXXOz8lJTS7JzM8LTi0q
y0xOLVJIzgdqAAsppGQWQ3mpKXpcAFBLAwQUAAIACAAuZpNN+R5XW2QAAABsAAAAVgAcAGVkaXRp
bmcvcGFzdGVib2FyZC9jb3B5LWVsZW1lbnQtd2l0aC1jb25mbGljdGluZy1iYWNrZ3JvdW5kLWNv
bG9yLWZyb20tcnVsZS1zdGRlcnIudHh0VVQJAAPXrhpcqp0aXHV4CwABBPUBAAAEFAAAADMyMLTQ
NTTSNbRUMDSyMrG0MjLTszAyUghPTfLOLAlJLS4JKs3LSy1yLCiINjG1sDC3MrY0NrUwjVUIcPIs
Sc11zs/JSU0uyczPC04tKstMTi1SSM4HagALKaRkFkN5qSl6XABQSwMEFAACAAgALmaTTfxULW1k
AAAAbAAAADYAHABlZGl0aW5nL3Bhc3RlYm9hcmQvY29weS1pbWFnZS13aXRoLWFsdC10ZXh0LXN0
ZGVyci50eHRVVAkAA9iuGlyqnRpcdXgLAAEE9QEAAAQUAAAAMzIwtNA1NNI1tFQwNLIysbQyMtez
MDFTCE9N8s4sCUktLgkqzctLLXIsKIg2MbWwMLcytjQ2NTGLVQhw8ixJzXXOz8lJTS7JzM8LTi0q
y0xOLVJIzgdqAAsppGQWQ3mpKXpcAFBLAwQUAAIACAAuZpNNDSiItWQAAABsAAAAQwAcAGVkaXRp
bmcvcGFzdGVib2FyZC9jb3B5LXBhc3RlLWFjcm9zcy1zaGFkb3ctYm91bmRhcmllcy0xLXN0ZGVy
ci50eHRVVAkAA9iuGlyrnRpcdXgLAAEE9QEAAAQUAAAAMzIwtNA1NNI1tFQwNLIysbQystAzNjBV
CE9N8s4sCUktLgkqzctLLXIsKIg2MbWwMLcytjQ3NbSIVQhw8ixJzXXOz8lJTS7JzM8LTi0qy0xO
LVJIzgdqAAsppGQWQ3mpKXpcAFBLAwQUAAIACAAuZpNNSJiwd2QAAABsAAAAQwAcAGVkaXRpbmcv
cGFzdGVib2FyZC9jb3B5LXBhc3RlLWFjcm9zcy1zaGFkb3ctYm91bmRhcmllcy0yLXN0ZGVyci50
eHRVVAkAA9iuGlysnRpcdXgLAAEE9QEAAAQUAAAAMzIwtNA1NNI1tFQwNLIysbQystAzNzRUCE9N
8s4sCUktLgkqzctLLXIsKIg2MbWwMLcytjQ2NTGLVQhw8ixJzXXOz8lJTS7JzM8LTi0qy0xOLVJI
zgdqAAsppGQWQ3mpKXpcAFBLAwQUAAIACAAvZpNN5WS5a2QAAABsAAAAQwAcAGVkaXRpbmcvcGFz
dGVib2FyZC9jb3B5LXBhc3RlLWFjcm9zcy1zaGFkb3ctYm91bmRhcmllcy0zLXN0ZGVyci50eHRV
VAkAA9muGlysnRpcdXgLAAEE9QEAAAQUAAAAMzIwtNA1NNI1tFQwNLIysbQystQzNLVUCE9N8s4s
CUktLgkqzctLLXIsKIg2MbWwMLcytjQ2NTGLVQhw8ixJzXXOz8lJTS7JzM8LTi0qy0xOLVJIzgdq
AAsppGQWQ3mpKXpcAFBLAwQUAAIACAAvZpNNTrGysmQAAABsAAAAQwAcAGVkaXRpbmcvcGFzdGVi
b2FyZC9jb3B5LXBhc3RlLWFjcm9zcy1zaGFkb3ctYm91bmRhcmllcy00LXN0ZGVyci50eHRVVAkA
A9quGlysnRpcdXgLAAEE9QEAAAQUAAAAMzIwtNA1NNI1tFQwNLIysbQystQzNzBTCE9N8s4sCUkt
LgkqzctLLXIsKIg2MbWwMLcytjS1tDCJVQhw8ixJzXXOz8lJTS7JzM8LTi0qy0xOLVJIzgdqAAsp
pGQWQ3mpKXpcAFBLAwQUAAIACAAvZpNNwnQEt2QAAABsAAAAQwAcAGVkaXRpbmcvcGFzdGVib2Fy
ZC9jb3B5LXBhc3RlLWFjcm9zcy1zaGFkb3ctYm91bmRhcmllcy01LXN0ZGVyci50eHRVVAkAA9qu
GlytnRpcdXgLAAEE9QEAAAQUAAAAMzIwtNA1NNI1tFQwNLIysbQyNtAztLBUCE9N8s4sCUktLgkq
zctLLXIsKIg2MbWwMLcytjQ3NbSMVQhw8ixJzXXOz8lJTS7JzM8LTi0qy0xOLVJIzgdqAAsppGQW
Q3mpKXpcAFBLAwQUAAIACAAvZpNNPN0gtmQAAABsAAAATgAcAGVkaXRpbmcvcGFzdGVib2FyZC9j
b3B5LXBhc3RlLWFjcm9zcy1zaGFkb3ctYm91bmRhcmllcy13aXRoLXN0eWxlLTEtc3RkZXJyLnR4
dFVUCQAD2q4aXK2dGlx1eAsAAQT1AQAABBQAAAAzMjC00DU00jW0VDA0sjKxtDI20DMzslQIT03y
ziwJSS0uCSrNy0stciwoiDYxtbAwtzK2NDY1MYtVCHDyLEnNdc7PyUlNLsnMzwtOLSrLTE4tUkjO
B2oACymkZBZDeakpelwAUEsDBBQAAgAIADBmk02ZVyPbZAAAAGwAAABOABwAZWRpdGluZy9wYXN0
ZWJvYXJkL2NvcHktcGFzdGUtYWNyb3NzLXNoYWRvdy1ib3VuZGFyaWVzLXdpdGgtc3R5bGUtMi1z
dGRlcnIudHh0VVQJAAPbrhpcrp0aXHV4CwABBPUBAAAEFAAAADMyMLTQNTTSNbRUMDSyMrG0MjbU
MzQwVghPTfLOLAlJLS4JKs3LSy1yLCiINjG1sDC3MrY0NzW0jFUIcPIsSc11zs/JSU0uyczPC04t
KstMTi1SSM4HagALKaRkFkN5qSl6XABQSwMEFAACAAgAMWaTTVblIIJkAAAAbAAAADMAHABlZGl0
aW5nL3Bhc3RlYm9hcmQvY29weS1wYXN0ZS1hdHRhY2htZW50LXN0ZGVyci50eHRVVAkAA92uGlyw
nRpcdXgLAAEE9QEAAAQUAAAAMzIwtNA1NNI1tFQwNLIysbQyNtYzNjdUCE9N8s4sCUktLgkqzctL
LXIsKIg2MbWwMLcytjS2MDWLVQhw8ixJzXXOz8lJTS7JzM8LTi0qy0xOLVJIzgdqAAsppGQWQ3mp
KXpcAFBLAwQUAAIACAAyZpNNykYei3QAAADYAAAALQAcAGVkaXRpbmcvcGFzdGVib2FyZC9jb3B5
LXBhc3RlLWJpZGktc3RkZXJyLnR4dFVUCQAD364aXLGdGlx1eAsAAQT1AQAABBQAAAAzMjC00DU0
0jW0VDA0sjKxtDI20TM3NFIIT03yziwJSS0uCSrNy0stciwoiDYxtbAwtzK2NDc1tIxVCHDyLEnN
dc7PyUlNLsnMzwtOLSrLTE4tUkjOB2oACymkZBZDeakpelxGWOyyNDPFa5exqYUpOXYBAFBLAwQU
AAIACAAyZpNNs6DLUGQAAABsAAAASwAcAGVkaXRpbmcvcGFzdGVib2FyZC9jb3B5LXBhc3RlLWNv
bnRlbnQtc3RhcnRpbmctYW5kLWVuZGluZy1jYW52YXMtc3RkZXJyLnR4dFVUCQAD364aXLKdGlx1
eAsAAQT1AQAABBQAAAAzMjC00DU00jW0VDA0sjKxtDI21TM2NVEIT03yziwJSS0uCSrNy0stciwo
iDYxtbAwtzK2NDa1MI1VCHDyLEnNdc7PyUlNLsnMzwtOLSrLTE4tUkjOB2oACymkZBZDeakpelwA
UEsDBBQAAgAIADJmk02z0vjtZAAAAGwAAAA3ABwAZWRpdGluZy9wYXN0ZWJvYXJkL2NvcHktcGFz
dGUtY29udmVydHMtZml4ZWQtc3RkZXJyLnR4dFVUCQAD364aXLKdGlx1eAsAAQT1AQAABBQAAAAz
MjC00DU00jW0VDA0sjKxtDI21TMzN1MIT03yziwJSS0uCSrNy0stciwoiDYxtbAwtzK2NDa1MI1V
CHDyLEnNdc7PyUlNLsnMzwtOLSrLTE4tUkjOB2oACymkZBZDeakpelwAUEsDBBQAAgAIADJmk014
p6hhZAAAAGwAAAA4ABwAZWRpdGluZy9wYXN0ZWJvYXJkL2NvcHktcGFzdGUtY29udmVydHMtc3Rp
Y2t5LXN0ZGVyci50eHRVVAkAA+CuGlyynRpcdXgLAAEE9QEAAAQUAAAAMzIwtNA1NNI1tFQwNLIy
sbQyNtMzMDRUCE9N8s4sCUktLgkqzctLLXIsKIg2MbWwMLcytjS1tDCJVQhw8ixJzXXOz8lJTS7J
zM8LTi0qy0xOLVJIzgdqAAsppGQWQ3mpKXpcAFBLAwQUAAIACAAyZpNNLIfrF2QAAABsAAAAXAAc
AGVkaXRpbmcvcGFzdGVib2FyZC9jb3B5LXBhc3RlLWRvZXNudC1jb252ZXJ0LXN0aWNreS1hbmQt
Zml4ZWQtZHVyaW5nLXBhcnRpYWwtY29weS1zdGRlcnIudHh0VVQJAAPgrhpcsp0aXHV4CwABBPUB
AAAEFAAAADMyMLTQNTTSNbRUMDSyMrG0MjbTMza2VAhPTfLOLAlJLS4JKs3LSy1yLCiINjG1sDC3
MrY0tbQwiVUIcPIsSc11zs/JSU0uyczPC04tKstMTi1SSM4HagALKaRkFkN5qSl6XABQSwMEFAAC
AAgAMmaTTQiVWLNkAAAAbAAAAD8AHABlZGl0aW5nL3Bhc3RlYm9hcmQvY29weS1wYXN0ZS1maXJz
dC1saW5lLWluLXRleHRhcmVhLXN0ZGVyci50eHRVVAkAA+CuGlyznRpcdXgLAAEE9QEAAAQUAAAA
MzIwtNA1NNI1tFQwNLIysbQyNtMzNTFWCE9N8s4sCUktLgkqzctLLXIsKIg2MbWwMLcytjS2MDWL
VQhw8ixJzXXOz8lJTS7JzM8LTi0qy0xOLVJIzgdqAAsppGQWQ3mpKXpcAFBLAwQUAAIACAAyZpNN
E5u/imQAAABsAAAALgAcAGVkaXRpbmcvcGFzdGVib2FyZC9jb3B5LXBhc3RlLWZsb2F0LXN0ZGVy
ci50eHRVVAkAA+CuGlyznRpcdXgLAAEE9QEAAAQUAAAAMzIwtNA1NNI1tFQwNLIysbQyNtOzsDBW
CE9N8s4sCUktLgkqzctLLXIsKIg2MbWwMLcytjQ3NbSIVQhw8ixJzXXOz8lJTS7JzM8LTi0qy0xO
LVJIzgdqAAsppGQWQ3mpKXpcAFBLAwQUAAIACAAzZpNNUX4VQWQAAABsAAAAPQAcAGVkaXRpbmcv
cGFzdGVib2FyZC9jb3B5LXBhc3RlLWluc2VydHMtY2xlYXJpbmctZGl2LXN0ZGVyci50eHRVVAkA
A+GuGlyznRpcdXgLAAEE9QEAAAQUAAAAMzIwtNA1NNI1tFQwNLIysbQyNtczNDZUCE9N8s4sCUkt
LgkqzctLLXIsKIg2MbWwMLcytjQ3NbSIVQhw8ixJzXXOz8lJTS7JzM8LTi0qy0xOLVJIzgdqAAsp
pGQWQ3mpKXpcAFBLAwQUAAIACAAzZpNNXwMmhGQAAABsAAAAOQAcAGVkaXRpbmcvcGFzdGVib2Fy
ZC9jb3B5LXBhc3RlLXByZS1saW5lLWNvbnRlbnQtc3RkZXJyLnR4dFVUCQAD4a4aXLSdGlx1eAsA
AQT1AQAABBQAAAAzMjC00DU00jW0VDA0sjKxtDI21zMxNlAIT03yziwJSS0uCSrNy0stciwoiDYx
tbAwtzK2NLYwNYtVCHDyLEnNdc7PyUlNLsnMzwtOLSrLTE4tUkjOB2oACymkZBZDeakpelwAUEsD
BBQAAgAIADNmk03z/X0uZAAAAGwAAAAyABwAZWRpdGluZy9wYXN0ZWJvYXJkL2NvcHktcGFzdGUt
cnVieS10ZXh0LXN0ZGVyci50eHRVVAkAA+KuGly0nRpcdXgLAAEE9QEAAAQUAAAAMzIwtNA1NNI1
tFQwNLIysbQyttAzNDJTCE9N8s4sCUktLgkqzctLLXIsKIg2MbWwMLcytjQ3NbSIVQhw8ixJzXXO
z8lJTS7JzM8LTi0qy0xOLVJIzgdqAAsppGQWQ3mpKXpcAFBLAwQUAAIACAAzZpNNiaDhYmQAAABs
AAAAPQAcAGVkaXRpbmcvcGFzdGVib2FyZC9jb3B5LXBhc3RlLXJ1YnktdGV4dC13aXRoLWJsb2Nr
LXN0ZGVyci50eHRVVAkAA+GuGly0nRpcdXgLAAEE9QEAAAQUAAAAMzIwtNA1NNI1tFQwNLIysbQy
NtezMDJSCE9N8s4sCUktLgkqzctLLXIsKIg2MbWwMLcytjQ3NbSMVQhw8ixJzXXOz8lJTS7JzM8L
Ti0qy0xOLVJIzgdqAAsppGQWQ3mpKXpcAFBLAwQUAAIACAAzZpNNBpv5RWQAAABsAAAAPQAcAGVk
aXRpbmcvcGFzdGVib2FyZC9jb3B5LXBhc3RlLXdpdGgtaW1wb3J0YW50LXJ1bGVzLXN0ZGVyci50
eHRVVAkAA+KuGly1nRpcdXgLAAEE9QEAAAQUAAAAMzIwtNA1NNI1tFQwNLIysbQyttAzsTRRCE9N
8s4sCUktLgkqzctLLXIsKIg2MbWwMLcytjS1tDCJVQhw8ixJzXXOz8lJTS7JzM8LTi0qy0xOLVJI
zgdqAAsppGQWQ3mpKXpcAFBLAwQUAAIACAA0ZpNNoan2M2QAAABsAAAAPAAcAGVkaXRpbmcvcGFz
dGVib2FyZC9jb3B5LXBhc3RlLXdpdGgtc2hhZG93LWNvbnRlbnQtc3RkZXJyLnR4dFVUCQAD464a
XLWdGlx1eAsAAQT1AQAABBQAAAAzMjC00DU00jW0VDA0sjKxtDK20DO3NFUIT03yziwJSS0uCSrN
y0stciwoiDYxtbAwtzK2NDc1tIhVCHDyLEnNdc7PyUlNLsnMzwtOLSrLTE4tUkjOB2oACymkZBZD
eakpelwAUEsDBBQAAgAIADRmk00x08gfYwAAAGwAAABAABwAZWRpdGluZy9wYXN0ZWJvYXJkL2Nv
cHktcGFzdGUtd3JhcHMtcG9zaXRpb24tYWJzb2x1dGUtc3RkZXJyLnR4dFVUCQAD464aXLWdGlx1
eAsAAQT1AQAABBQAAAAzMjC00DU00jW0VDA0sjKxtDK21DM2NVEIT03yziwJSS0uCSrNy0stciwo
iDYxtbAwByowNrUwjVUIcPIsSc11zs/JSU0uyczPC04tKstMTi1SSM4HagALKaRkFkN5qSl6XABQ
SwMEFAACAAgANWaTTRI0GFpkAAAAbAAAADMAHABlZGl0aW5nL3Bhc3RlYm9hcmQvY29weS1zdGFu
ZGFsb25lLWltYWdlLXN0ZGVyci50eHRVVAkAA+WuGly3nRpcdXgLAAEE9QEAAAQUAAAAMzIwtNA1
NNI1tFQwNLIysbQyMdQzNjdXCE9N8s4sCUktLgkqzctLLXIsKIg2MbWwMLcytjS2MDWLVQhw8ixJ
zXXOz8lJTS7JzM8LTi0qy0xOLVJIzgdqAAsppGQWQ3mpKXpcAFBLAwQUAAIACAA1ZpNNkpHp6WQA
AABsAAAAPQAcAGVkaXRpbmcvcGFzdGVib2FyZC9jb3B5LXdpdGhvdXQtY29tbW9uLWJsb2NrLWNy
YXNoLXN0ZGVyci50eHRVVAkAA+WuGly4nRpcdXgLAAEE9QEAAAQUAAAAMzIwtNA1NNI1tFQwNLIy
sbQyMdSzNDNVCE9N8s4sCUktLgkqzctLLXIsKIg2MbWwMLcytjQ3NbSIVQhw8ixJzXXOz8lJTS7J
zM8LTi0qy0xOLVJIzgdqAAsppGQWQ3mpKXpcAFBLAwQUAAIACAA1ZpNNsZNAn2QAAABsAAAANAAc
AGVkaXRpbmcvcGFzdGVib2FyZC9jb3B5LXdpdGhvdXQtc2VsZWN0aW9uLXN0ZGVyci50eHRVVAkA
A+auGly4nRpcdXgLAAEE9QEAAAQUAAAAMzIwtNA1NNI1tFQwNLIysbQyMdIzMDFVCE9N8s4sCUkt
LgkqzctLLXIsKIg2MbWwMLcytjS2MDWLVQhw8ixJzXXOz8lJTS7JzM8LTi0qy0xOLVJIzgdqAAsp
pGQWQ3mpKXpcAFBLAwQUAAIACAA1ZpNNEDi3nmQAAABsAAAAUgAcAGVkaXRpbmcvcGFzdGVib2Fy
ZC9jb3B5aW5nLWh0bWwtc3RyaXBzLWphdmFzY3JpcHQtdXJsLWFuZC1ldmVudC1oYW5kbGVyLXN0
ZGVyci50eHRVVAkAA+auGly4nRpcdXgLAAEE9QEAAAQUAAAAMzIwtNA1NNI1tFQwNLIysbQyMdIz
sjBWCE9N8s4sCUktLgkqzctLLXIsKIg2MbWwMLcytjQ3NbSMVQhw8ixJzXXOz8lJTS7JzM8LTi0q
y0xOLVJIzgdqAAsppGQWQ3mpKXpcAFBLAwQUAAIACAA1ZpNNQU8ps2QAAABsAAAAQQAcAGVkaXRp
bmcvcGFzdGVib2FyZC9jcmFzaC1hY2Nlc3NpbmctY2xpcGJvYXJkRGF0YS10eXBlcy1zdGRlcnIu
dHh0VVQJAAPmrhpcuZ0aXHV4CwABBPUBAAAEFAAAADMyMLTQNTTSNbRUMDSyMrG0MjHSMzUxUghP
TfLOLAlJLS4JKs3LSy1yLCiINjG1sDC3MrY0NzW0iFUIcPIsSc11zs/JSU0uyczPC04tKstMTi1S
SM4HagALKaRkFkN5qSl6XABQSwMEFAACAAgANWaTTV4K1FBkAAAAbAAAADEAHABlZGl0aW5nL3Bh
c3RlYm9hcmQvY3JlYXRlTWFya3VwLWFzc2VydC1zdGRlcnIudHh0VVQJAAPmrhpcuZ0aXHV4CwAB
BPUBAAAEFAAAADMyMLTQNTTSNbRUMDSyMrG0MjHSszA2UghPTfLOLAlJLS4JKs3LSy1yLCiINjG1
sDC3MrY0tbQwiVUIcPIsSc11zs/JSU0uyczPC04tKstMTi1SSM4HagALKaRkFkN5qSl6XABQSwME
FAACAAgANmaTTbBy0g1kAAAAbAAAACoAHABlZGl0aW5nL3Bhc3RlYm9hcmQvY3V0LXRleHQtMDAx
LXN0ZGVyci50eHRVVAkAA+euGly5nRpcdXgLAAEE9QEAAAQUAAAAMzIwtNA1NNI1tFQwNLIysbQy
MdYzMDRXCE9N8s4sCUktLgkqzctLLXIsKIg2MbWwMLcytjQ2tTCNVQhw8ixJzXXOz8lJTS7JzM8L
Ti0qy0xOLVJIzgdqAAsppGQWQ3mpKXpcAFBLAwQUAAIACAA2ZpNNvmsrr3QAAADYAAAASQAcAGVk
aXRpbmcvcGFzdGVib2FyZC9kYXRhLXRyYW5zZmVyLWdldC1kYXRhLW5vbi1ub3JtYWxpemVkLXR5
cGVzLXN0ZGVyci50eHRVVAkAA+euGly6nRpcdXgLAAEE9QEAAAQUAAAAMzIwtNA1NNI1tFQwNLIy
sbQyMdYzNDRRCE9N8s4sCUktLgkqzctLLXIsKIg2MbWwMLcytjS1tDCJVQhw8ixJzXXOz8lJTS7J
zM8LTi0qy0xOLVJIzgdqAAsppGQWQ3mpKXpcRljsMjYwxmuXuamhJTl2AQBQSwMEFAACAAgANmaT
TRJS0WlkAAAAbAAAAGYAHABlZGl0aW5nL3Bhc3RlYm9hcmQvZGF0YS10cmFuc2Zlci1nZXQtZGF0
YS1vbi1jb3B5aW5nLXBhc3RpbmctbWFsZm9ybWVkLXVybC1pbi1zYW1lLWRvY3VtZW50LXN0ZGVy
ci50eHRVVAkAA+euGly6nRpcdXgLAAEE9QEAAAQUAAAAMzIwtNA1NNI1tFQwNLIysbQyMdYztTBS
CE9N8s4sCUktLgkqzctLLXIsKIg2MbWwMLcytjS2MDWLVQhw8ixJzXXOz8lJTS7JzM8LTi0qy0xO
LVJIzgdqAAsppGQWQ3mpKXpcAFBLAwQUAAIACAA2ZpNN1RMXxmQAAABsAAAASwAcAGVkaXRpbmcv
cGFzdGVib2FyZC9kYXRhLXRyYW5zZmVyLWdldC1kYXRhLW9uLXBhc3RlLWFzLXBsYWluLXRleHQt
c3RkZXJyLnR4dFVUCQAD6K4aXLqdGlx1eAsAAQT1AQAABBQAAAAzMjC00DU00jW0VDA0sjKxtDIx
0TM2NlYIT03yziwJSS0uCSrNy0stciwoiDYxtbAwtzK2NLW0MIlVCHDyLEnNdc7PyUlNLsnMzwtO
LSrLTE4tUkjOB2oACymkZBZDeakpelwAUEsDBBQAAgAIADZmk01jrh79ZAAAAGwAAABwABwAZWRp
dGluZy9wYXN0ZWJvYXJkL2RhdGEtdHJhbnNmZXItZ2V0LWRhdGEtb24tcGFzdGUtYXMtcGxhaW4t
dGV4dC13aGVuLWN1c3RvbS1wYXN0ZWJvYXJkLWRhdGEtZGlzYWJsZWQtc3RkZXJyLnR4dFVUCQAD
6K4aXLqdGlx1eAsAAQT1AQAABBQAAAAzMjC00DU00jW0VDA0sjKxtDIx1rM0MVAIT03yziwJSS0u
CSrNy0stciwoiDYxtbAwtzK2NLW0MIlVCHDyLEnNdc7PyUlNLsnMzwtOLSrLTE4tUkjOB2oACymk
ZBZDeakpelwAUEsDBBQAAgAIADZmk03kktYnZAAAAGwAAABEABwAZWRpdGluZy9wYXN0ZWJvYXJk
L2RhdGEtdHJhbnNmZXItZ2V0LWRhdGEtb24tcGFzdGUtY3VzdG9tLXN0ZGVyci50eHRVVAkAA+iu
Gly7nRpcdXgLAAEE9QEAAAQUAAAAMzIwtNA1NNI1tFQwNLIysbQyMdEzMTNSCE9N8s4sCUktLgkq
zctLLXIsKIg2MbWwMLcytjQ2tTCNVQhw8ixJzXXOz8lJTS7JzM8LTi0qy0xOLVJIzgdqAAsppGQW
Q3mpKXpcAFBLAwQUAAIACAA2ZpNN8bWYw2QAAABsAAAASAAcAGVkaXRpbmcvcGFzdGVib2FyZC9k
YXRhLXRyYW5zZmVyLWdldC1kYXRhLW9uLXBhc3RlLXBsYWluLXRleHQtc3RkZXJyLnR4dFVUCQAD
6K4aXLudGlx1eAsAAQT1AQAABBQAAAAzMjC00DU00jW0VDA0sjKxtDIx0TO3tFAIT03yziwJSS0u
CSrNy0stciwoiDYxtbAwtzK2NDc1tIhVCHDyLEnNdc7PyUlNLsnMzwtOLSrLTE4tUkjOB2oACymk
ZBZDeakpelwAUEsDBBQAAgAIADdmk008yIfIZAAAAGwAAABHABwAZWRpdGluZy9wYXN0ZWJvYXJk
L2RhdGEtdHJhbnNmZXItZ2V0LWRhdGEtb24tcGFzdGUtcmljaC10ZXh0LXN0ZGVyci50eHRVVAkA
A+muGly7nRpcdXgLAAEE9QEAAAQUAAAAMzIwtNA1NNI1tFQwNLIysbQyMdUzsDRUCE9N8s4sCUkt
LgkqzctLLXIsKIg2MbWwMLcytjQ3NbSIVQhw8ixJzXXOz8lJTS7JzM8LTi0qy0xOLVJIzgdqAAsp
pGQWQ3mpKXpcAFBLAwQUAAIACAA3ZpNNtpaTGmQAAABsAAAATQAcAGVkaXRpbmcvcGFzdGVib2Fy
ZC9kYXRhLXRyYW5zZmVyLWl0ZW0tbGlzdC1hZGQtZmlsZS1tdWx0aXBsZS10aW1lcy1zdGRlcnIu
dHh0VVQJAAPprhpcu50aXHV4CwABBPUBAAAEFAAAADMyMLTQNTTSNbRUMDSyMrG0MjHVMzGwUAhP
TfLOLAlJLS4JKs3LSy1yLCiINjG1sDC3MrY0NzW0iFUIcPIsSc11zs/JSU0uyczPC04tKstMTi1S
SM4HagALKaRkFkN5qSl6XABQSwMEFAACAAgAN2aTTUfLNohkAAAAbAAAAEYAHABlZGl0aW5nL3Bh
c3RlYm9hcmQvZGF0YS10cmFuc2Zlci1pdGVtLWxpc3QtYWRkLWZpbGUtb24tY29weS1zdGRlcnIu
dHh0VVQJAAPprhpcu50aXHV4CwABBPUBAAAEFAAAADMyMLTQNTTSNbRUMDSyMrG0MjHVMzUwVwhP
TfLOLAlJLS4JKs3LSy1yLCiINjG1sDC3Mra0NDUxjVUIcPIsSc11zs/JSU0uyczPC04tKstMTi1S
SM4HagALKaRkFkN5qSl6XABQSwMEFAACAAgAN2aTTf2izfFkAAAAbAAAAEEAHABlZGl0aW5nL3Bh
c3RlYm9hcmQvZGF0YS10cmFuc2Zlci1pdGVtcy1hZGQtY3VzdG9tLWRhdGEtc3RkZXJyLnR4dFVU
CQAD6q4aXLydGlx1eAsAAQT1AQAABBQAAAAzMjC00DU00jW0VDA0sjKxtDIx1TO1tFAIT03yziwJ
SS0uCSrNy0stciwoiDYxtbAwtzK2NDc1tIxVCHDyLEnNdc7PyUlNLsnMzwtOLSrLTE4tUkjOB2oA
CymkZBZDeakpelwAUEsDBBQAAgAIADdmk01k7T7FZAAAAGwAAABfABwAZWRpdGluZy9wYXN0ZWJv
YXJkL2RhdGEtdHJhbnNmZXItc2V0LWRhdGEtaWdub3JlLWNvcGllZC1tYWxmb3JtZWQtdXJsLWlu
LW51bGwtb3JpZ2luLXN0ZGVyci50eHRVVAkAA+quGly9nRpcdXgLAAEE9QEAAAQUAAAAMzIwtNA1
NNI1tFQwNLIysbQyMdMzNjRUCE9N8s4sCUktLgkqzctLLXIsKIg2MbWwMLcytjQ2tTCNVQhw8ixJ
zXXOz8lJTS7JzM8LTi0qy0xOLVJIzgdqAAsppGQWQ3mpKXpcAFBLAwQUAAIACAA4ZpNNC44Cw2QA
AABsAAAAXQAcAGVkaXRpbmcvcGFzdGVib2FyZC9kYXRhLXRyYW5zZmVyLXNldC1kYXRhLXNhbml0
aXplLXVybC13aGVuLWNvcHlpbmctaW4tbnVsbC1vcmlnaW4tc3RkZXJyLnR4dFVUCQAD664aXL2d
Glx1eAsAAQT1AQAABBQAAAAzMjC00DU00jW0VDA0sjKxtDIx0zOzMFMIT03yziwJSS0uCSrNy0st
ciwoiDYxtbAwtzK2NDc1tIhVCHDyLEnNdc7PyUlNLsnMzwtOLSrLTE4tUkjOB2oACymkZBZDeakp
elwAUEsDBBQAAgAIADhmk02gwsQ2ZAAAAGwAAABQABwAZWRpdGluZy9wYXN0ZWJvYXJkL2RhdGEt
dHJhbnNmZXItc2V0LWRhdGEtc2FuaXRpemVzLWh0bWwtd2hlbi1jb3B5aW5nLXN0ZGVyci50eHRV
VAkAA+uuGly+nRpcdXgLAAEE9QEAAAQUAAAAMzIwtNA1NNI1tFQwNLIysbQyMdcztrBUCE9N8s4s
CUktLgkqzctLLXIsKIg2MbWwMLcytrQ0NTGNVQhw8ixJzXXOz8lJTS7JzM8LTi0qy0xOLVJIzgdq
AAsppGQWQ3mpKXpcAFBLAwQUAAIACAA4ZpNNN3syZWQAAABsAAAASwAcAGVkaXRpbmcvcGFzdGVi
b2FyZC9kYXRhVHJhbnNmZXItdHlwZXMtaXMtaW5pdGlhbGx5LWVtcHR5LW9uLWNvcHktc3RkZXJy
LnR4dFVUCQAD664aXL6dGlx1eAsAAQT1AQAABBQAAAAzMjC00DU00jW0VDA0sjKxtDIx17OwNFUI
T03yziwJSS0uCSrNy0stciwoiDYxtbAwtzK2NDa1MI1VCHDyLEnNdc7PyUlNLsnMzwtOLSrLTE4t
UkjOB2oACymkZBZDeakpelwAUEsDBBQAAgAIADhmk015NZIuZAAAAGwAAABCABwAZWRpdGluZy9w
YXN0ZWJvYXJkL2RhdGFUcmFuc2Zlci10eXBlcy1wYXN0aW5nLXBsYWludGV4dC1zdGRlcnIudHh0
VVQJAAPsrhpcv50aXHV4CwABBPUBAAAEFAAAADMyMLTQNTTSNbRUMDSyMrG0MrHQMzA1UwhPTfLO
LAlJLS4JKs3LSy1yLCiINjG1sDC3MrY0tjA1i1UIcPIsSc11zs/JSU0uyczPC04tKstMTi1SSM4H
agALKaRkFkN5qSl6XABQSwMEFAACAAgAOGaTTS1KTs5kAAAAbAAAADwAHABlZGl0aW5nL3Bhc3Rl
Ym9hcmQvZGF0YXRyYW5zZmVyLWdldGRhdGEtcGxhaW50ZXh0LXN0ZGVyci50eHRVVAkAA+yuGly/
nRpcdXgLAAEE9QEAAAQUAAAAMzIwtNA1NNI1tFQwNLIysbQysdAzNjBWCE9N8s4sCUktLgkqzctL
LXIsKIg2MbWwMLcytjQ3NbSMVQhw8ixJzXXOz8lJTS7JzM8LTi0qy0xOLVJIzgdqAAsppGQWQ3mp
KXpcAFBLAwQUAAIACAA4ZpNNFZukpWQAAABsAAAAOgAcAGVkaXRpbmcvcGFzdGVib2FyZC9kYXRh
dHJhbnNmZXItaXRlbXMtY29weS1odG1sLXN0ZGVyci50eHRVVAkAA+yuGly/nRpcdXgLAAEE9QEA
AAQUAAAAMzIwtNA1NNI1tFQwNLIysbQysdAzNTNWCE9N8s4sCUktLgkqzctLLXIsKIg2MbWwMLcy
tjQ2tTCNVQhw8ixJzXXOz8lJTS7JzM8LTi0qy0xOLVJIzgdqAAsppGQWQ3mpKXpcAFBLAwQUAAIA
CAA4ZpNNMh74fGQAAABsAAAAPwAcAGVkaXRpbmcvcGFzdGVib2FyZC9kYXRhdHJhbnNmZXItaXRl
bXMtY29weS1wbGFpbnRleHQtc3RkZXJyLnR4dFVUCQAD7K4aXL+dGlx1eAsAAQT1AQAABBQAAAAz
MjC00DU00jW0VDA0sjKxtDKx0DM3NlUIT03yziwJSS0uCSrNy0stciwoiDYxtbAwtzK2NLYwNYtV
CHDyLEnNdc7PyUlNLsnMzwtOLSrLTE4tUkjOB2oACymkZBZDeakpelwAUEsDBBQAAgAIADhmk01q
qPd+ZAAAAGwAAAA5ABwAZWRpdGluZy9wYXN0ZWJvYXJkL2RhdGF0cmFuc2Zlci1pdGVtcy1jb3B5
LXVybC1zdGRlcnIudHh0VVQJAAPsrhpcv50aXHV4CwABBPUBAAAEFAAAADMyMLTQNTTSNbRUMDSy
MrG0MrHQs7AwVAhPTfLOLAlJLS4JKs3LSy1yLCiINjG1sDC3MrY0NrUwjVUIcPIsSc11zs/JSU0u
yczPC04tKstMTi1SSM4HagALKaRkFkN5qSl6XABQSwMEFAACAAgAOWaTTa9kl4FkAAAAbAAAAEAA
HABlZGl0aW5nL3Bhc3RlYm9hcmQvZGF0YXRyYW5zZmVyLWl0ZW1zLXBhc3RlLXBsYWludGV4dC1z
dGRlcnIudHh0VVQJAAPtrhpcwJ0aXHV4CwABBPUBAAAEFAAAADMyMLTQNTTSNbRUMDSyMrG0MrHQ
szQzUQhPTfLOLAlJLS4JKs3LSy1yLCiINjG1sDC3MrY0NrUwjVUIcPIsSc11zs/JSU0uyczPC04t
KstMTi1SSM4HagALKaRkFkN5qSl6XABQSwMEFAACAAgAOWaTTdrykPNjAAAAbAAAADwAHABlZGl0
aW5nL3Bhc3RlYm9hcmQvZG8tbm90LWNvcHktdW5uZWNlc3Nhcnktc3R5bGVzLXN0ZGVyci50eHRV
VAkAA+2uGlzAnRpcdXgLAAEE9QEAAAQUAAAAMzIwtNA1NNI1tFQwNLIysQQiPWMzQ4Xw1CTvzJKQ
1OKSoNK8vNQix4KCaBNTCwtzK2NLU0sLk1iFACfPktRc5/ycnNTkksz8vODUorLM5NQiheR8oAaw
kEJKZjGUl5qixwUAUEsDBBQAAgAIADlmk03fyT+tZAAAAGwAAAA3ABwAZWRpdGluZy9wYXN0ZWJv
YXJkL2dldC1kYXRhLXRleHQtcGxhaW4tcGFzdGUtc3RkZXJyLnR4dFVUCQAD7q4aXMGdGlx1eAsA
AQT1AQAABBQAAAAzMjC00DU00jW0VDA0sjKxtDI10DMyMFEIT03yziwJSS0uCSrNy0stciwoiDYx
tbAwtzK2NLYwNYtVCHDyLEnNdc7PyUlNLsnMzwtOLSrLTE4tUkjOB2oACymkZBZDeakpelwAUEsD
BBQAAgAIADlmk030unhNZAAAAGwAAAArABwAZWRpdGluZy9wYXN0ZWJvYXJkL2hlYWRpbmctY3Jh
c2gtc3RkZXJyLnR4dFVUCQAD7q4aXMGdGlx1eAsAAQT1AQAABBQAAAAzMjC00DU00jW0VDA0sjKx
tDI10DM1MlMIT03yziwJSS0uCSrNy0stciwoiDYxtbAwtzK2NDc1tIxVCHDyLEnNdc7PyUlNLsnM
zwtOLSrLTE4tUkjOB2oACymkZBZDeakpelwAUEsDBBQAAgAIADlmk01N9yIQZAAAAGwAAAAtABwA
ZWRpdGluZy9wYXN0ZWJvYXJkL2ltYWdlLWluLWlmcmFtZS1zdGRlcnIudHh0VVQJAAPurhpcwZ0a
XHV4CwABBPUBAAAEFAAAADMyMLTQNTTSNbRUMDSyMrG0MjXQM7O0UAhPTfLOLAlJLS4JKs3LSy1y
LCiINjG1sDC3MrY0NzW0jFUIcPIsSc11zs/JSU0uyczPC04tKstMTi1SSM4HagALKaRkFkN5qSl6
XABQSwMEFAACAAgAOmaTTUVaiXFkAAAAbAAAAEQAHABlZGl0aW5nL3Bhc3RlYm9hcmQvaW1nLXNy
Y3NldC1jb3B5LXBhc3RlLWNhbm9uaWNhbGl6YXRpb24tc3RkZXJyLnR4dFVUCQAD764aXMGdGlx1
eAsAAQT1AQAABBQAAAAzMjC00DU00jW0VDA0sjKxtDI10LM0NlMIT03yziwJSS0uCSrNy0stciwo
iDYxtbAwtzK2tDQ1MY1VCHDyLEnNdc7PyUlNLsnMzwtOLSrLTE4tUkjOB2oACymkZBZDeakpelwA
UEsDBBQAAgAIADpmk00ewML1ZAAAAGwAAAArABwAZWRpdGluZy9wYXN0ZWJvYXJkL2lucHV0LWZp
ZWxkLTEtc3RkZXJyLnR4dFVUCQAD764aXMKdGlx1eAsAAQT1AQAABBQAAAAzMjC00DU00jW0VDA0
sjKxtDI11DM0NVEIT03yziwJSS0uCSrNy0stciwoiDYxtbAwtzK2tDQ1MY1VCHDyLEnNdc7PyUlN
LsnMzwtOLSrLTE4tUkjOB2oACymkZBZDeakpelwAUEsDBBQAAgAIADpmk00nHUWdZAAAAGwAAABa
ABwAZWRpdGluZy9wYXN0ZWJvYXJkL2xpbmUtZmVlZC1iZXR3ZWVuLWJyLWFuZC1iLXNob3VsZC1u
b3QtcmVvcmRlci1wYXN0ZWQtY29udGVudC1zdGRlcnIudHh0VVQJAAPwrhpcwp0aXHV4CwABBPUB
AAAEFAAAADMyMLTQNTTSNbRUMDSyMrG0MjXUszQwVwhPTfLOLAlJLS4JKs3LSy1yLCiINjG1sDC3
MrY0NzW0iFUIcPIsSc11zs/JSU0uyczPC04tKstMTi1SSM4HagALKaRkFkN5qSl6XABQSwMEFAAC
AAgAO2aTTXAYjaVkAAAAbAAAAC8AHABlZGl0aW5nL3Bhc3RlYm9hcmQvb25wYXN0ZS10ZXh0LWh0
bWwtc3RkZXJyLnR4dFVUCQAD8a4aXMSdGlx1eAsAAQT1AQAABBQAAAAzMjC00DU00jW0VDA0sjKx
tDI11jMxMVAIT03yziwJSS0uCSrNy0stciwoiDYxtbAwtzK2NLYwNYtVCHDyLEnNdc7PyUlNLsnM
zwtOLSrLTE4tUkjOB2oACymkZBZDeakpelwAUEsDBBQAAgAIADtmk03nWV3iZAAAAGwAAAA1ABwA
ZWRpdGluZy9wYXN0ZWJvYXJkL29ucGFzdGUtdGV4dC1odG1sLXR5cGVzLXN0ZGVyci50eHRVVAkA
A/GuGlzEnRpcdXgLAAEE9QEAAAQUAAAAMzIwtNA1NNI1tFQwNLIysbQyNdYzMjRTCE9N8s4sCUkt
LgkqzctLLXIsKIg2MbWwMLcytjQ3NbSMVQhw8ixJzXXOz8lJTS7JzM8LTi0qy0xOLVJIzgdqAAsp
pGQWQ3mpKXpcAFBLAwQUAAIACAA7ZpNNHRZqIWQAAABsAAAAJQAcAGVkaXRpbmcvcGFzdGVib2Fy
ZC9wYXN0ZS0yLXN0ZGVyci50eHRVVAkAA/KuGlzEnRpcdXgLAAEE9QEAAAQUAAAAMzIwtNA1NNI1
tFQwNLIysbQyNdazNDZXCE9N8s4sCUktLgkqzctLLXIsKIg2MbWwMLcytjS2MDWLVQhw8ixJzXXO
z8lJTS7JzM8LTi0qy0xOLVJIzgdqAAsppGQWQ3mpKXpcAFBLAwQUAAIACAA7ZpNN6TiuVGQAAABs
AAAALwAcAGVkaXRpbmcvcGFzdGVib2FyZC9wYXN0ZS00MDM4MjY3LWZpeC1zdGRlcnIudHh0VVQJ
AAPyrhpcxJ0aXHV4CwABBPUBAAAEFAAAADMyMLTQNTTSNbRUMDSyMrG0MjXRMzI2UwhPTfLOLAlJ
LS4JKs3LSy1yLCiINjG1sDC3MrY0tjA1i1UIcPIsSc11zs/JSU0uyczPC04tKstMTi1SSM4HagAL
KaRkFkN5qSl6XABQSwMEFAACAAgAO2aTTS1ytgFjAAAAbAAAAC8AHABlZGl0aW5nL3Bhc3RlYm9h
cmQvcGFzdGUtNDAzOTc3Ny1maXgtc3RkZXJyLnR4dFVUCQAD8q4aXMWdGlx1eAsAAQT1AQAABBQA
AAAzMjC00DU00jW0VDA0sjKxtDI10TO1sFAIT03yziwJSS0uCSrNy0stciwoiDYBSphbGVuamxpa
xCoEOHmWpOY65+fkpCaXZObnBacWlWUmpxYpJOcDNYCFFFIyi6G81BQ9LgBQSwMEFAACAAgAPGaT
TZSlDMynAAAApAQAADAAHABlZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtYW5kLXNhbml0aXplLXN0
ZGVyci50eHRVVAkAA/SuGlzHnRpcdXgLAAEE9QEAAAQUAAAAvZK7CsJAEEV7v2J/IGFnd2cf6dRK
bEQFC7ExmWIhbkKy+v0GsRNSxSnnwnA43Ksk+AJUAUGAqkyo0JTBgbjQfR/zmcZ8fKZEw7rvrwa9
d5UOGj3exGGzy/TYdm1LdY5dOtHwijUNou6mh08kmjh+L2rKlfphYQnazrM82qVYWhs2L5R8XhYd
m5eXks0rWK6+7LRDYGNpOd+XQwhLsUyQbF7WqL9s4w1QSwMEFAACAAgAPWaTTZ5UkJNkAAAAbAAA
AEIAHABlZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtYmxvY2txdW90ZS1hbmQtcGFyYWdyYXBoLWJy
ZWFrLXN0ZGVyci50eHRVVAkAA/WuGlzInRpcdXgLAAEE9QEAAAQUAAAAMzIwtNA1NNI1tFQwNLIy
sbQyNdczNDBVCE9N8s4sCUktLgkqzctLLXIsKIg2MbWwMLcytjS1tDCJVQhw8ixJzXXOz8lJTS7J
zM8LTi0qy0xOLVJIzgdqAAsppGQWQ3mpKXpcAFBLAwQUAAIACAA9ZpNNlVVBDWQAAABsAAAAQAAc
AGVkaXRpbmcvcGFzdGVib2FyZC9wYXN0ZS1ibG9ja3F1b3RlLWJlZm9yZS1ibG9ja3F1b3RlLXN0
ZGVyci50eHRVVAkAA/WuGlzInRpcdXgLAAEE9QEAAAQUAAAAMzIwtNA1NNI1tFQwNLIysbQyNdcz
NjFSCE9N8s4sCUktLgkqzctLLXIsKIg2MbWwMLcytjS2MDWLVQhw8ixJzXXOz8lJTS7JzM8LTi0q
y0xOLVJIzgdqAAsppGQWQ3mpKXpcAFBLAwQUAAIACAA9ZpNNW2ekgGQAAABsAAAALwAcAGVkaXRp
bmcvcGFzdGVib2FyZC9wYXN0ZS1jb2RlLWluLXByZS1zdGRlcnIudHh0VVQJAAP1rhpcyJ0aXHV4
CwABBPUBAAAEFAAAADMyMLTQNTTSNbRUMDSyMrG0MjXXszA3UwhPTfLOLAlJLS4JKs3LSy1yLCiI
NjG1sDC3MrY0NzW0iFUIcPIsSc11zs/JSU0uyczPC04tKstMTi1SSM4HagALKaRkFkN5qSl6XABQ
SwMEFAACAAgAPWaTTVomvTVkAAAAbAAAAE4AHABlZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtZG91
YmxlLW5lc3RlZC1ibG9ja3F1b3RlLWJlZm9yZS1ibG9ja3F1b3RlLXN0ZGVyci50eHRVVAkAA/au
GlzJnRpcdXgLAAEE9QEAAAQUAAAAMzIwtNA1NNI1tFQwNLIysbQytdAzMjRXCE9N8s4sCUktLgkq
zctLLXIsKIg2MbWwMLcytrQ0NTGNVQhw8ixJzXXOz8lJTS7JzM8LTi0qy0xOLVJIzgdqAAsppGQW
Q3mpKXpcAFBLAwQUAAIACAA9ZpNNFcTyO2QAAABsAAAAMwAcAGVkaXRpbmcvcGFzdGVib2FyZC9w
YXN0ZS1ldmVudC1vbmx5LW9uY2Utc3RkZXJyLnR4dFVUCQAD9q4aXMmdGlx1eAsAAQT1AQAABBQA
AAAzMjC00DU00jW0VDA0sjKxtDK10DM2M1MIT03yziwJSS0uCSrNy0stciwoiDYxtbAwtzK2NLYw
NYtVCHDyLEnNdc7PyUlNLsnMzwtOLSrLTE4tUkjOB2oACymkZBZDeakpelwAUEsDBBQAAgAIAD1m
k03wUzMkZAAAAGwAAAA1ABwAZWRpdGluZy9wYXN0ZWJvYXJkL3Bhc3RlLWltYWdlLWFzLWJsb2It
dXJsLXN0ZGVyci50eHRVVAkAA/auGlzJnRpcdXgLAAEE9QEAAAQUAAAAMzIwtNA1NNI1tFQwNLIy
sbQytdAzNTNTCE9N8s4sCUktLgkqzctLLXIsKIg2MbWwMLcytrQ0NTGNVQhw8ixJzXXOz8lJTS7J
zM8LTi0qy0xOLVJIzgdqAAsppGQWQ3mpKXpcAFBLAwQUAAIACAA9ZpNN5juOJ2QAAABsAAAAQgAc
AGVkaXRpbmcvcGFzdGVib2FyZC9wYXN0ZS1pbWFnZS1kb2VzLW5vdC1yZXZlYWwtZmlsZS11cmwt
c3RkZXJyLnR4dFVUCQAD9q4aXMmdGlx1eAsAAQT1AQAABBQAAAAzMjC00DU00jW0VDA0sjKxtDK1
0DM3NFYIT03yziwJSS0uCSrNy0stciwoiDYxtbAwtzK2NDc1tIxVCHDyLEnNdc7PyUlNLsnMzwtO
LSrLTE4tUkjOB2oACymkZBZDeakpelwAUEsDBBQAAgAIAEBmk03yFxnUZAAAAGwAAAA6ABwAZWRp
dGluZy9wYXN0ZWJvYXJkL3Bhc3RlLWltYWdlLXVzaW5nLWltYWdlLWRhdGEtc3RkZXJyLnR4dFVU
CQAD964aXMqdGlx1eAsAAQT1AQAABBQAAAAzMjC00DU00jW0VDA0sjKxtDK10LOwsFQIT03yziwJ
SS0uCSrNy0stciwoiDYxtbAwtzK2NDc1tIhVCHDyLEnNdc7PyUlNLsnMzwtOLSrLTE4tUkjOB2oA
CymkZBZDeakpelwAUEsDBBQAAgAIAEBmk01pe+jwZAAAAGwAAAAzABwAZWRpdGluZy9wYXN0ZWJv
YXJkL3Bhc3RlLWludG8tdGFibGUtY2VsbC1zdGRlcnIudHh0VVQJAAP3rhpcyp0aXHV4CwABBPUB
AAAEFAAAADMyMLTQNTTSNbRUMDSyMrG0MrXUMzM2UwhPTfLOLAlJLS4JKs3LSy1yLCiINjG1sDC3
MrY0NzW0iFUIcPIsSc11zs/JSU0uyczPC04tKstMTi1SSM4HagALKaRkFkN5qSl6XABQSwMEFAAC
AAgAQGaTTZ5q+cZkAAAAbAAAADQAHABlZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtbGluZS1lbmRp
bmdzLTAwMS1zdGRlcnIudHh0VVQJAAP4rhpcyp0aXHV4CwABBPUBAAAEFAAAADMyMLTQNTTSNbRU
MDSyMrG0MrXUszQzUQhPTfLOLAlJLS4JKs3LSy1yLCiINjG1sDC3MrY0NzW0iFUIcPIsSc11zs/J
SU0uyczPC04tKstMTi1SSM4HagALKaRkFkN5qSl6XABQSwMEFAACAAgAQGaTTXYMa8JkAAAAbAAA
ADQAHABlZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtbGluZS1lbmRpbmdzLTAwMi1zdGRlcnIudHh0
VVQJAAP4rhpcy50aXHV4CwABBPUBAAAEFAAAADMyMLTQNTTSNbRUMDSyMjWwMjDQMzQ2UghPTfLO
LAlJLS4JKs3LSy1yLCiINjG1sDC3MrY0NzW0jFUIcPIsSc11zs/JSU0uyczPC04tKstMTi1SSM4H
agALKaRkFkN5qSl6XABQSwMEFAACAAgAQGaTTfeJuopkAAAAbAAAADQAHABlZGl0aW5nL3Bhc3Rl
Ym9hcmQvcGFzdGUtbGluZS1lbmRpbmdzLTAwMy1zdGRlcnIudHh0VVQJAAP4rhpcy50aXHV4CwAB
BPUBAAAEFAAAADMyMLTQNTTSNbRUMDSyMjWwMjDQMzYzUAhPTfLOLAlJLS4JKs3LSy1yLCiINjG1
sDC3MrY0NzW0iFUIcPIsSc11zs/JSU0uyczPC04tKstMTi1SSM4HagALKaRkFkN5qSl6XABQSwME
FAACAAgAQGaTTapLffxkAAAAbAAAADQAHABlZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtbGluZS1l
bmRpbmdzLTAwNC1zdGRlcnIudHh0VVQJAAP4rhpcy50aXHV4CwABBPUBAAAEFAAAADMyMLTQNTTS
NbRUMDSyMjWwMjDQMzW1UAhPTfLOLAlJLS4JKs3LSy1yLCiINjG1sDC3MrY0NzW0jFUIcPIsSc11
zs/JSU0uyczPC04tKstMTi1SSM4HagALKaRkFkN5qSl6XABQSwMEFAACAAgAQGaTTT57d1RkAAAA
bAAAADQAHABlZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtbGluZS1lbmRpbmdzLTAwNS1zdGRlcnIu
dHh0VVQJAAP4rhpcy50aXHV4CwABBPUBAAAEFAAAADMyMLTQNTTSNbRUMDSyMjWwMjDQszC2UAhP
TfLOLAlJLS4JKs3LSy1yLCiINjG1sDC3MrY0tjA1i1UIcPIsSc11zs/JSU0uyczPC04tKstMTi1S
SM4HagALKaRkFkN5qSl6XABQSwMEFAACAAgAQWaTTcod4CtkAAAAbAAAADQAHABlZGl0aW5nL3Bh
c3RlYm9hcmQvcGFzdGUtbGluZS1lbmRpbmdzLTAwNi1zdGRlcnIudHh0VVQJAAP5rhpczJ0aXHV4
CwABBPUBAAAEFAAAADMyMLTQNTTSNbRUMDSyMjWwMjDUM7A0VAhPTfLOLAlJLS4JKs3LSy1yLCiI
NjG1sDC3Mra0NDUxjVUIcPIsSc11zs/JSU0uyczPC04tKstMTi1SSM4HagALKaRkFkN5qSl6XABQ
SwMEFAACAAgAQWaTTSK+tNFkAAAAbAAAADQAHABlZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtbGlu
ZS1lbmRpbmdzLTAwNy1zdGRlcnIudHh0VVQJAAP5rhpczJ0aXHV4CwABBPUBAAAEFAAAADMyMLTQ
NTTSNbRUMDSyMjWwMjDUMzYzUAhPTfLOLAlJLS4JKs3LSy1yLCiINjG1sDC3Mra0NDUxjVUIcPIs
Sc11zs/JSU0uyczPC04tKstMTi1SSM4HagALKaRkFkN5qSl6XABQSwMEFAACAAgAQWaTTbHEg4Nk
AAAAbAAAADQAHABlZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtbGluZS1lbmRpbmdzLTAwOC1zdGRl
cnIudHh0VVQJAAP5rhpczJ0aXHV4CwABBPUBAAAEFAAAADMyMLTQNTTSNbRUMDSyMjWwMjDUMzMw
UQhPTfLOLAlJLS4JKs3LSy1yLCiINjG1sDC3MrY0NrUwjVUIcPIsSc11zs/JSU0uyczPC04tKstM
Ti1SSM4HagALKaRkFkN5qSl6XABQSwMEFAACAAgAQWaTTTWv43hkAAAAbAAAADQAHABlZGl0aW5n
L3Bhc3RlYm9hcmQvcGFzdGUtbGluZS1lbmRpbmdzLTAwOS1zdGRlcnIudHh0VVQJAAP5rhpczJ0a
XHV4CwABBPUBAAAEFAAAADMyMLTQNTTSNbRUMDSyMjWwMjDUszA1VwhPTfLOLAlJLS4JKs3LSy1y
LCiINjG1sDC3MrY0NrUwjVUIcPIsSc11zs/JSU0uyczPC04tKstMTi1SSM4HagALKaRkFkN5qSl6
XABQSwMEFAACAAgAQWaTTSdbBNhkAAAAbAAAADQAHABlZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUt
bGluZS1lbmRpbmdzLTAxMC1zdGRlcnIudHh0VVQJAAP6rhpczZ0aXHV4CwABBPUBAAAEFAAAADMy
MLTQNTTSNbRUMDSyMjWwMjDSMzC3UAhPTfLOLAlJLS4JKs3LSy1yLCiINjG1sDC3MrY0tbQwiVUI
cPIsSc11zs/JSU0uyczPC04tKstMTi1SSM4HagALKaRkFkN5qSl6XABQSwMEFAACAAgAQWaTTYhX
1BhkAAAAbAAAACwAHABlZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtbGlzdC0wMDEtc3RkZXJyLnR4
dFVUCQAD+q4aXM2dGlx1eAsAAQT1AQAABBQAAAAzMjC00DU00jW0VDA0sjI1sDIw0jM2NlYIT03y
ziwJSS0uCSrNy0stciwoiDYxtbAwtzK2NLYwNYtVCHDyLEnNdc7PyUlNLsnMzwtOLSrLTE4tUkjO
B2oACymkZBZDeakpelwAUEsDBBQAAgAIAEJmk02a8xywbQAAANgAAAAsABwAZWRpdGluZy9wYXN0
ZWJvYXJkL3Bhc3RlLWxpc3QtMDAyLXN0ZGVyci50eHRVVAkAA/uuGlzOnRpcdXgLAAEE9QEAAAQU
AAAAMzIwtNA1NNI1tFQwNLIyNbAyMNIzMzBXCE9N8s4sCUktLgkqzctLLXIsKIg2MbWwMLcytjQ3
NbSMVQhw8ixJzXXOz8lJTS7JzM8LTi0qy0xOLVJIzgdqAAsppGQWQ3mpKXpcRljssrAwo4ldAFBL
AwQUAAIACABCZpNN+EKjMWQAAABsAAAALAAcAGVkaXRpbmcvcGFzdGVib2FyZC9wYXN0ZS1saXN0
LTAwMy1zdGRlcnIudHh0VVQJAAP7rhpczp0aXHV4CwABBPUBAAAEFAAAADMyMLTQNTTSNbRUMDSy
MjWwMjDWMzSzVAhPTfLOLAlJLS4JKs3LSy1yLCiINjG1sDC3MrY0NzW0jFUIcPIsSc11zs/JSU0u
yczPC04tKstMTi1SSM4HagALKaRkFkN5qSl6XABQSwMEFAACAAgAQmaTTcUGxkRkAAAAbAAAADMA
HABlZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtbWF0Y2gtc3R5bGUtMDAxLXN0ZGVyci50eHRVVAkA
A/uuGlzOnRpcdXgLAAEE9QEAAAQUAAAAMzIwtNA1NNI1tFQwNLIyNbAyMNYzMTFWCE9N8s4sCUkt
LgkqzctLLXIsKIg2MbWwMLcytrQ0NTGNVQhw8ixJzXXOz8lJTS7JzM8LTi0qy0xOLVJIzgdqAAsp
pGQWQ3mpKXpcAFBLAwQUAAIACABCZpNNjgIIo2QAAABsAAAAMwAcAGVkaXRpbmcvcGFzdGVib2Fy
ZC9wYXN0ZS1tYXRjaC1zdHlsZS0wMDItc3RkZXJyLnR4dFVUCQAD+64aXM6dGlx1eAsAAQT1AQAA
BBQAAAAzMjC00DU00jW0VDA0sjI1sDIw1jM3NVAIT03yziwJSS0uCSrNy0stciwoiDYxtbAwtzK2
NDc1tIxVCHDyLEnNdc7PyUlNLsnMzwtOLSrLTE4tUkjOB2oACymkZBZDeakpelwAUEsDBBQAAgAI
AEJmk02ZOq54ZAAAAGwAAAA0ABwAZWRpdGluZy9wYXN0ZWJvYXJkL3Bhc3RlLXBsYWludGV4dC1u
b3dyYXAtc3RkZXJyLnR4dFVUCQAD/K4aXM+dGlx1eAsAAQT1AQAABBQAAAAzMjC00DU00jW0VDA0
sjI1sDIw1rM0s1AIT03yziwJSS0uCSrNy0stciwoiDYxtbAwtzK2NDc1tIxVCHDyLEnNdc7PyUlN
LsnMzwtOLSrLTE4tUkjOB2oACymkZBZDeakpelwAUEsDBBQAAgAIAEJmk00PAaazZAAAAGwAAAAr
ABwAZWRpdGluZy9wYXN0ZWJvYXJkL3Bhc3RlLXByZS0wMDEtc3RkZXJyLnR4dFVUCQAD/K4aXM+d
Glx1eAsAAQT1AQAABBQAAAAzMjC00DU00jW0VDA0sjI1sDIw0TMyMlQIT03yziwJSS0uCSrNy0st
ciwoiDYxtbAwtzK2NLW0MIlVCHDyLEnNdc7PyUlNLsnMzwtOLSrLTE4tUkjOB2oACymkZBZDeakp
elwAUEsDBBQAAgAIAEJmk01qPM7IZAAAAGwAAAArABwAZWRpdGluZy9wYXN0ZWJvYXJkL3Bhc3Rl
LXByZS0wMDItc3RkZXJyLnR4dFVUCQAD/K4aXM+dGlx1eAsAAQT1AQAABBQAAAAzMjC00DU00jW0
VDA0sjI1sDIw0TM1MlUIT03yziwJSS0uCSrNy0stciwoiDYxtbAwtzK2NLW0MIlVCHDyLEnNdc7P
yUlNLsnMzwtOLSrLTE4tUkjOB2oACymkZBZDeakpelwAUEsDBBQAAgAIAEJmk02PqijoZAAAAGwA
AAAzABwAZWRpdGluZy9wYXN0ZWJvYXJkL3Bhc3RlLXJlbW92aW5nLWlmcmFtZS1zdGRlcnIudHh0
VVQJAAP8rhpcz50aXHV4CwABBPUBAAAEFAAAADMyMLTQNTTSNbRUMDSyMjWwMjDRM7cwUwhPTfLO
LAlJLS4JKs3LSy1yLCiINjG1sDC3MrY0NzW0iFUIcPIsSc11zs/JSU0uyczPC04tKstMTi1SSM4H
agALKaRkFkN5qSl6XABQSwMEFAACAAgAQ2aTTZuYYxBkAAAAbAAAAC0AHABlZGl0aW5nL3Bhc3Rl
Ym9hcmQvcGFzdGUtdGFibGUtMDAxLXN0ZGVyci50eHRVVAkAA/2uGlzQnRpcdXgLAAEE9QEAAAQU
AAAAMzIwtNA1NNI1tFQwNLIyNbAyMNUzMDdUCE9N8s4sCUktLgkqzctLLXIsKIg2MbWwMLcytjS2
MDWLVQhw8ixJzXXOz8lJTS7JzM8LTi0qy0xOLVJIzgdqAAsppGQWQ3mpKXpcAFBLAwQUAAIACABD
ZpNNQuWvcWQAAABsAAAALQAcAGVkaXRpbmcvcGFzdGVib2FyZC9wYXN0ZS10YWJsZS0wMDItc3Rk
ZXJyLnR4dFVUCQAD/a4aXNCdGlx1eAsAAQT1AQAABBQAAAAzMjC00DU00jW0VDA0sjI1sDIw1TM2
MlYIT03yziwJSS0uCSrNy0stciwoiDYxtbAwtzK2NLYwNYtVCHDyLEnNdc7PyUlNLsnMzwtOLSrL
TE4tUkjOB2oACymkZBZDeakpelwAUEsDBBQAAgAIAENmk00rBSXfZAAAAGwAAAAtABwAZWRpdGlu
Zy9wYXN0ZWJvYXJkL3Bhc3RlLXRhYmxlLTAwMy1zdGRlcnIudHh0VVQJAAP9rhpc0J0aXHV4CwAB
BPUBAAAEFAAAADMyMLTQNTTSNbRUMDSyMjWwMjDVMzU3VghPTfLOLAlJLS4JKs3LSy1yLCiINjG1
sDC3MrY0NzW0jFUIcPIsSc11zs/JSU0uyczPC04tKstMTi1SSM4HagALKaRkFkN5qSl6XABQSwME
FAACAAgAQ2aTTVn0fPFkAAAAbAAAAC8AHABlZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtdGFibGUt
Y2VsbHMtc3RkZXJyLnR4dFVUCQAD/a4aXNCdGlx1eAsAAQT1AQAABBQAAAAzMjC00DU00jW0VDA0
sjI1sDIw1bMwNFAIT03yziwJSS0uCSrNy0stciwoiDYxtbAwtzK2NDc1tIxVCHDyLEnNdc7PyUlN
LsnMzwtOLSrLTE4tUkjOB2oACymkZBZDeakpelwAUEsDBBQAAgAIAENmk003HUsfYwAAAGwAAAAs
ABwAZWRpdGluZy9wYXN0ZWJvYXJkL3Bhc3RlLXRleHQtMDAxLXN0ZGVyci50eHRVVAkAA/6uGlzR
nRpcdXgLAAEE9QEAAAQUAAAAMzIwtNA1NNI1tFQwNLIyNbAyMNMzBHLCU5O8M0tCUotLgkrz8lKL
HAsKok1MLSzMrYwtzU0NLWMVApw8S1JznfNzclKTSzLz84JTi8oyk1OLFJLzgRrAQgopmcVQXmqK
HhcAUEsDBBQAAgAIAENmk0250X6yZAAAAGwAAAAsABwAZWRpdGluZy9wYXN0ZWJvYXJkL3Bhc3Rl
LXRleHQtMDAyLXN0ZGVyci50eHRVVAkAA/6uGlzRnRpcdXgLAAEE9QEAAAQUAAAAMzIwtNA1NNI1
tFQwNLIyNbAyMNMzMTZQCE9N8s4sCUktLgkqzctLLXIsKIg2MbWwMLcytjS1tDCJVQhw8ixJzXXO
z8lJTS7JzM8LTi0qy0xOLVJIzgdqAAsppGQWQ3mpKXpcAFBLAwQUAAIACABEZpNNWPVFj2QAAABs
AAAALAAcAGVkaXRpbmcvcGFzdGVib2FyZC9wYXN0ZS10ZXh0LTAwMy1zdGRlcnIudHh0VVQJAAP/
rhpc0p0aXHV4CwABBPUBAAAEFAAAADMyMLTQNTTSNbRUMDSyMjWwMjDTszAxVQhPTfLOLAlJLS4J
Ks3LSy1yLCiINjG1sDC3MrY0tbQwiVUIcPIsSc11zs/JSU0uyczPC04tKstMTi1SSM4HagALKaRk
FkN5qSl6XABQSwMEFAACAAgARGaTTRuVuE9kAAAAbAAAACwAHABlZGl0aW5nL3Bhc3RlYm9hcmQv
cGFzdGUtdGV4dC0wMDQtc3RkZXJyLnR4dFVUCQAD/64aXNKdGlx1eAsAAQT1AQAABBQAAAAzMjC0
0DU00jW0VDA0sjI1sDIw1zMyMlAIT03yziwJSS0uCSrNy0stciwoiDYxtbAwtzK2NLYwNYtVCHDy
LEnNdc7PyUlNLsnMzwtOLSrLTE4tUkjOB2oACymkZBZDeakpelwAUEsDBBQAAgAIAERmk01fgLnP
ZAAAAGwAAAAsABwAZWRpdGluZy9wYXN0ZWJvYXJkL3Bhc3RlLXRleHQtMDA1LXN0ZGVyci50eHRV
VAkAA/+uGlzSnRpcdXgLAAEE9QEAAAQUAAAAMzIwtNA1NNI1tFQwNLIyNbAyMNczMTNTCE9N8s4s
CUktLgkqzctLLXIsKIg2MbWwMLcytjS1tDCJVQhw8ixJzXXOz8lJTS7JzM8LTi0qy0xOLVJIzgdq
AAsppGQWQ3mpKXpcAFBLAwQUAAIACABEZpNNASgLWmQAAABsAAAALAAcAGVkaXRpbmcvcGFzdGVi
b2FyZC9wYXN0ZS10ZXh0LTAwNi1zdGRlcnIudHh0VVQJAAMArxpc050aXHV4CwABBPUBAAAEFAAA
ADMyMLTQNTTSNbRUMDSyMjWwMjDXszAxUQhPTfLOLAlJLS4JKs3LSy1yLCiINjG1sDC3Mra0NDUx
jVUIcPIsSc11zs/JSU0uyczPC04tKstMTi1SSM4HagALKaRkFkN5qSl6XABQSwMEFAACAAgARGaT
TR1CGy9kAAAAbAAAACwAHABlZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtdGV4dC0wMDctc3RkZXJy
LnR4dFVUCQADAK8aXNOdGlx1eAsAAQT1AQAABBQAAAAzMjC00DU00jW0VDA0sjI1sDKw0DMytlQI
T03yziwJSS0uCSrNy0stciwoiDYxtbAwtzK2NDa1MI1VCHDyLEnNdc7PyUlNLsnMzwtOLSrLTE4t
UkjOB2oACymkZBZDeakpelwAUEsDBBQAAgAIAERmk01TDPJYZAAAAGwAAAAsABwAZWRpdGluZy9w
YXN0ZWJvYXJkL3Bhc3RlLXRleHQtMDA4LXN0ZGVyci50eHRVVAkAAwCvGlzTnRpcdXgLAAEE9QEA
AAQUAAAAMzIwtNA1NNI1tFQwNLIyNbAysNAztTRQCE9N8s4sCUktLgkqzctLLXIsKIg2MbWwMLcy
tjS1tDCJVQhw8ixJzXXOz8lJTS7JzM8LTi0qy0xOLVJIzgdqAAsppGQWQ3mpKXpcAFBLAwQUAAIA
CABFZpNN8b1LmWQAAABsAAAALAAcAGVkaXRpbmcvcGFzdGVib2FyZC9wYXN0ZS10ZXh0LTAwOS1z
dGRlcnIudHh0VVQJAAMBrxpc1J0aXHV4CwABBPUBAAAEFAAAADMyMLTQNTTSNbRUMDSyMjWwMrDQ
szQxVAhPTfLOLAlJLS4JKs3LSy1yLCiINjG1sDC3MrY0NzW0iFUIcPIsSc11zs/JSU0uyczPC04t
KstMTi1SSM4HagALKaRkFkN5qSl6XABQSwMEFAACAAgARWaTTYUtA1lkAAAAbAAAACwAHABlZGl0
aW5nL3Bhc3RlYm9hcmQvcGFzdGUtdGV4dC0wMTAtc3RkZXJyLnR4dFVUCQADAa8aXNSdGlx1eAsA
AQT1AQAABBQAAAAzMjC00DU00jW0VDA0sjI1sDKw1DOyNFIIT03yziwJSS0uCSrNy0stciwoiDYx
tbAwtzK2NDa1MI1VCHDyLEnNdc7PyUlNLsnMzwtOLSrLTE4tUkjOB2oACymkZBZDeakpelwAUEsD
BBQAAgAIAEVmk03Z9ZCFZAAAAGwAAAAsABwAZWRpdGluZy9wYXN0ZWJvYXJkL3Bhc3RlLXRleHQt
MDExLXN0ZGVyci50eHRVVAkAAwGvGlzUnRpcdXgLAAEE9QEAAAQUAAAAMzIwtNA1NNI1tFQwNLIy
NbAysNQzMzBWCE9N8s4sCUktLgkqzctLLXIsKIg2MbWwMLcytjQ2tTCNVQhw8ixJzXXOz8lJTS7J
zM8LTi0qy0xOLVJIzgdqAAsppGQWQ3mpKXpcAFBLAwQUAAIACABFZpNNVgHDkmQAAABsAAAALAAc
AGVkaXRpbmcvcGFzdGVib2FyZC9wYXN0ZS10ZXh0LTAxMi1zdGRlcnIudHh0VVQJAAMBrxpc1Z0a
XHV4CwABBPUBAAAEFAAAADMyMLTQNTTSNbRUMDSyMjWwMrDUszAxVQhPTfLOLAlJLS4JKs3LSy1y
LCiINjG1sDC3Mra0NDUxjVUIcPIsSc11zs/JSU0uyczPC04tKstMTi1SSM4HagALKaRkFkN5qSl6
XABQSwMEFAACAAgARWaTTY0Rhk9kAAAAbAAAACwAHABlZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUt
dGV4dC0wMTMtc3RkZXJyLnR4dFVUCQADAq8aXNWdGlx1eAsAAQT1AQAABBQAAAAzMjC00DU00jW0
VDA0sjI1sDI00DM0sFQIT03yziwJSS0uCSrNy0stciwoiDYxtbAwtzK2NDa1MI1VCHDyLEnNdc7P
yUlNLsnMzwtOLSrLTE4tUkjOB2oACymkZBZDeakpelwAUEsDBBQAAgAIAEVmk03TApZAZAAAAGwA
AAAsABwAZWRpdGluZy9wYXN0ZWJvYXJkL3Bhc3RlLXRleHQtMDE0LXN0ZGVyci50eHRVVAkAAwKv
GlzVnRpcdXgLAAEE9QEAAAQUAAAAMzIwtNA1NNI1tFQwNLIyNbAyNNAzNjNWCE9N8s4sCUktLgkq
zctLLXIsKIg2MbWwMLcytjQ3NbSMVQhw8ixJzXXOz8lJTS7JzM8LTi0qy0xOLVJIzgdqAAsppGQW
Q3mpKXpcAFBLAwQUAAIACABFZpNNGNzK4GQAAABsAAAALAAcAGVkaXRpbmcvcGFzdGVib2FyZC9w
YXN0ZS10ZXh0LTAxNS1zdGRlcnIudHh0VVQJAAMCrxpc1Z0aXHV4CwABBPUBAAAEFAAAADMyMLTQ
NTTSNbRUMDSyMjWwMjTQMzW3VAhPTfLOLAlJLS4JKs3LSy1yLCiINjG1sDC3Mra0NDUxjVUIcPIs
Sc11zs/JSU0uyczPC04tKstMTi1SSM4HagALKaRkFkN5qSl6XABQSwMEFAACAAgARmaTTQbznmZk
AAAAbAAAACwAHABlZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtdGV4dC0wMTYtc3RkZXJyLnR4dFVU
CQADA68aXNadGlx1eAsAAQT1AQAABBQAAAAzMjC00DU00jW0VDA0sjI1sDI00LM0MlIIT03yziwJ
SS0uCSrNy0stciwoiDYxtbAwtzK2NDa1MI1VCHDyLEnNdc7PyUlNLsnMzwtOLSrLTE4tUkjOB2oA
CymkZBZDeakpelwAUEsDBBQAAgAIAEZmk01bh2ROZAAAAGwAAAAsABwAZWRpdGluZy9wYXN0ZWJv
YXJkL3Bhc3RlLXRleHQtMDE3LXN0ZGVyci50eHRVVAkAAwOvGlzWnRpcdXgLAAEE9QEAAAQUAAAA
MzIwtNA1NNI1tFQwNLIyNbAyNNQzNDVTCE9N8s4sCUktLgkqzctLLXIsKIg2MbWwMLcytjS2MDWL
VQhw8ixJzXXOz8lJTS7JzM8LTi0qy0xOLVJIzgdqAAsppGQWQ3mpKXpcAFBLAwQUAAIACABGZpNN
3bNHpWQAAABsAAAALAAcAGVkaXRpbmcvcGFzdGVib2FyZC9wYXN0ZS10ZXh0LTAxOC1zdGRlcnIu
dHh0VVQJAAMDrxpc1p0aXHV4CwABBPUBAAAEFAAAADMyMLTQNTTSNbRUMDSyMjWwMjTUMzGxVAhP
TfLOLAlJLS4JKs3LSy1yLCiINjG1sDC3MrY0NrUwjVUIcPIsSc11zs/JSU0uyczPC04tKstMTi1S
SM4HagALKaRkFkN5qSl6XABQSwMEFAACAAgARmaTTaaes4NkAAAAbAAAACwAHABlZGl0aW5nL3Bh
c3RlYm9hcmQvcGFzdGUtdGV4dC0wMTktc3RkZXJyLnR4dFVUCQADA68aXNadGlx1eAsAAQT1AQAA
BBQAAAAzMjC00DU00jW0VDA0sjI1sDI01DOzMFYIT03yziwJSS0uCSrNy0stciwoiDYxtbAwtzK2
tDQ1MY1VCHDyLEnNdc7PyUlNLsnMzwtOLSrLTE4tUkjOB2oACymkZBZDeakpelwAUEsDBBQAAgAI
AEZmk032KIjnZAAAAGwAAAA3ABwAZWRpdGluZy9wYXN0ZWJvYXJkL3Bhc3RlLXRleHQtYXQtdGFi
c3Bhbi0wMDEtc3RkZXJyLnR4dFVUCQADBK8aXNedGlx1eAsAAQT1AQAABBQAAAAzMjC00DU00jW0
VDA0sjI1sDI00jMwNFEIT03yziwJSS0uCSrNy0stciwoiDYxtbAwtzK2tDQ1MY1VCHDyLEnNdc7P
yUlNLsnMzwtOLSrLTE4tUkjOB2oACymkZBZDeakpelwAUEsDBBQAAgAIAEZmk008xJBMZAAAAGwA
AAA3ABwAZWRpdGluZy9wYXN0ZWJvYXJkL3Bhc3RlLXRleHQtYXQtdGFic3Bhbi0wMDItc3RkZXJy
LnR4dFVUCQADBK8aXNedGlx1eAsAAQT1AQAABBQAAAAzMjC00DU00jW0VDA0sjI1sDI00jOyMFEI
T03yziwJSS0uCSrNy0stciwoiDYxtbAwtzK2NDc1tIxVCHDyLEnNdc7PyUlNLsnMzwtOLSrLTE4t
UkjOB2oACymkZBZDeakpelwAUEsDBBQAAgAIAEZmk01Gbv0TZAAAAGwAAAA3ABwAZWRpdGluZy9w
YXN0ZWJvYXJkL3Bhc3RlLXRleHQtYXQtdGFic3Bhbi0wMDMtc3RkZXJyLnR4dFVUCQADBK8aXNed
Glx1eAsAAQT1AQAABBQAAAAzMjC00DU00jW0VDA0sjI1sDI00jM1tlQIT03yziwJSS0uCSrNy0st
ciwoiDYxtbAwtzK2NLYwNYtVCHDyLEnNdc7PyUlNLsnMzwtOLSrLTE4tUkjOB2oACymkZBZDeakp
elwAUEsDBBQAAgAIAEZmk03dgPw8YwAAAGwAAAA1ABwAZWRpdGluZy9wYXN0ZWJvYXJkL3Bhc3Rl
LXRleHQtd2l0aC1zdHlsZS0yLXN0ZGVyci50eHRVVAkAAwSvGlzXnRpcdXgLAAEE9QEAAAQUAAAA
MzIwtNA1NNI1tFQwNLIyNbAyNNIzB3LCU5O8M0tCUotLgkrz8lKLHAsKok1MLSzMrYwtjS1MzWIV
Apw8S1JznfNzclKTSzLz84JTi8oyk1OLFJLzgRrAQgopmcVQXmqKHhcAUEsDBBQAAgAIAEdmk03S
h8weZAAAAGwAAAA1ABwAZWRpdGluZy9wYXN0ZWJvYXJkL3Bhc3RlLXRleHQtd2l0aC1zdHlsZS0z
LXN0ZGVyci50eHRVVAkAAwWvGlzYnRpcdXgLAAEE9QEAAAQUAAAAMzIwtNA1NNI1tFQwNLIyNbAy
NNKzNLVUCE9N8s4sCUktLgkqzctLLXIsKIg2MbWwMLcytjS2MDWLVQhw8ixJzXXOz8lJTS7JzM8L
Ti0qy0xOLVJIzgdqAAsppGQWQ3mpKXpcAFBLAwQUAAIACABHZpNN3MwzcWQAAABsAAAANQAcAGVk
aXRpbmcvcGFzdGVib2FyZC9wYXN0ZS10ZXh0LXdpdGgtc3R5bGUtNC1zdGRlcnIudHh0VVQJAAMF
rxpc2J0aXHV4CwABBPUBAAAEFAAAADMyMLTQNTTSNbRUMDSyMjWwMjTWMzI0UwhPTfLOLAlJLS4J
Ks3LSy1yLCiINjG1sDC3MrY0tjA1i1UIcPIsSc11zs/JSU0uyczPC04tKstMTi1SSM4HagALKaRk
FkN5qSl6XABQSwMEFAACAAgAR2aTTZ3QVwNkAAAAbAAAADUAHABlZGl0aW5nL3Bhc3RlYm9hcmQv
cGFzdGUtdGV4dC13aXRoLXN0eWxlLTUtc3RkZXJyLnR4dFVUCQADBa8aXNidGlx1eAsAAQT1AQAA
BBQAAAAzMjC00DU00jW0VDA0sjI1sDI01jMxM1cIT03yziwJSS0uCSrNy0stciwoiDYxtbAwtzK2
tDQ1MY1VCHDyLEnNdc7PyUlNLsnMzwtOLSrLTE4tUkjOB2oACymkZBZDeakpelwAUEsDBBQAAgAI
AEdmk03eQmHrZAAAAGwAAAAzABwAZWRpdGluZy9wYXN0ZWJvYXJkL3Bhc3RlLXRleHQtd2l0aC1z
dHlsZS1zdGRlcnIudHh0VVQJAAMFrxpc2J0aXHV4CwABBPUBAAAEFAAAADMyMLTQNTTSNbRUMDSy
MjWwMjTWM7M0UAhPTfLOLAlJLS4JKs3LSy1yLCiINjG1sDC3MrY0tbQwiVUIcPIsSc11zs/JSU0u
yczPC04tKstMTi1SSM4HagALKaRkFkN5qSl6XABQSwMEFAACAAgAR2aTTSDtROpkAAAAbAAAADUA
HABlZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtdW5yZW5kZXJlZC1zZWxlY3Qtc3RkZXJyLnR4dFVU
CQADBq8aXNmdGlx1eAsAAQT1AQAABBQAAAAzMjC00DU00jW0VDA0sjI1sDI01rM0MlYIT03yziwJ
SS0uCSrNy0stciwoiDYxtbAwtzK2NLYwNYtVCHDyLEnNdc7PyUlNLsnMzwtOLSrLTE4tUkjOB2oA
CymkZBZDeakpelwAUEsDBBQAAgAIAEhmk00GbzSYkQAAAIgCAAAzABwAZWRpdGluZy9wYXN0ZWJv
YXJkL3Bhc3RlLXdpdGhvdXQtbmVzdGluZy1zdGRlcnIudHh0VVQJAAMHrxpc2p0aXHV4CwABBPUB
AAAEFAAAAL3PsQrCMBQF0N2vyA805CV5zUu36iQuooKDuJi+IVDT0ka/XxFH0aV2vBcuh6sVUAG6
AC9AV6gqsFJ7L4582cR84DHvbinxUPf9ySKRq4w3SHgW2+U683XVtS2HHLu05+EeAw8idM/BqxJN
HN+JG7nQHyxLajartD9+EZZTWWTwq+UQ/DQWSqXcTL9QglN/sR5QSwMEFAACAAgASGaTTe++34Zk
AAAAbAAAACcAHABlZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUteG1sLXN0ZGVyci50eHRVVAkAAwev
GlzanRpcdXgLAAEE9QEAAAQUAAAAMzIwtNA1NNI1tFQwNLIyNbAyNNUztjRTCE9N8s4sCUktLgkq
zctLLXIsKIg2MbWwMLcytjQ2tTCNVQhw8ixJzXXOz8lJTS7JzM8LTi0qy0xOLVJIzgdqAAsppGQW
Q3mpKXpcAFBLAwQUAAIACABIZpNNLCsd1WQAAABsAAAAQwAcAGVkaXRpbmcvcGFzdGVib2FyZC9w
YXN0aW5nLWVtcHR5LWh0bWwtZmFsbHMtYmFjay10by10ZXh0LXN0ZGVyci50eHRVVAkAAwevGlza
nRpcdXgLAAEE9QEAAAQUAAAAMzIwtNA1NNI1tFQwNLIyNbAyNNUzNbZQCE9N8s4sCUktLgkqzctL
LXIsKIg2MbWwMLcytjS1tDCJVQhw8ixJzXXOz8lJTS7JzM8LTi0qy0xOLVJIzgdqAAsppGQWQ3mp
KXpcAFBLAwQUAAIACABIZpNNeOs+9mQAAABsAAAAPgAcAGVkaXRpbmcvcGFzdGVib2FyZC9wYXN0
aW5nLWludG8tcC1zaG91bGQtbm90LW5lc3QtcC1zdGRlcnIudHh0VVQJAAMIrxpc250aXHV4CwAB
BPUBAAAEFAAAADMyMLTQNTTSNbRUMDSyMjWwMjTVszA3VQhPTfLOLAlJLS4JKs3LSy1yLCiINjG1
sDC3MrY0NzW0jFUIcPIsSc11zs/JSU0uyczPC04tKstMTi1SSM4HagALKaRkFkN5qSl6XABQSwME
FAACAAgASGaTTb7S6pNkAAAAbAAAACoAHABlZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGluZy10YWJz
LXN0ZGVyci50eHRVVAkAAwivGlzbnRpcdXgLAAEE9QEAAAQUAAAAMzIwtNA1NNI1tFQwNLIyNbAy
NNMzNDJRCE9N8s4sCUktLgkqzctLLXIsKIg2MbWwMLcytjS2MDWLVQhw8ixJzXXOz8lJTS7JzM8L
Ti0qy0xOLVJIzgdqAAsppGQWQ3mpKXpcAFBLAwQUAAIACABIZpNN6OZEVGQAAABsAAAAXQAcAGVk
aXRpbmcvcGFzdGVib2FyZC9wYXN0aW5nLXdpdGgtaW1hZ2VzLWRpc2FibGVkLXNob3VsZC1ub3Qt
ZW5hYmxlLWRlZmVycmVkLWxvYWRpbmctc3RkZXJyLnR4dFVUCQADCK8aXNudGlx1eAsAAQT1AQAA
BBQAAAAzMjC00DU00jW0VDA0sjI1sDI00zOxsFAIT03yziwJSS0uCSrNy0stciwoiDYxtbAwtzK2
NDc1tIxVCHDyLEnNdc7PyUlNLsnMzwtOLSrLTE4tUkjOB2oACymkZBZDeakpelwAUEsDBBQAAgAI
AElmk01QTTHuZAAAAGwAAAAyABwAZWRpdGluZy9wYXN0ZWJvYXJkL3ByZXNlcnZlLWNhcmV0LWNv
bG9yLXN0ZGVyci50eHRVVAkAAwmvGlzbnRpcdXgLAAEE9QEAAAQUAAAAMzIwtNA1NNI1tFQwNLIy
NbAyNNOzsDBVCE9N8s4sCUktLgkqzctLLXIsKIg2MbWwMLcytjQ3NbSIVQhw8ixJzXXOz8lJTS7J
zM8LTi0qy0xOLVJIzgdqAAsppGQWQ3mpKXpcAFBLAwQUAAIACABJZpNNyn6DxWQAAABsAAAASgAc
AGVkaXRpbmcvcGFzdGVib2FyZC9wcmVzZXJ2ZS1saW5lLWJyZWFrLWF0LWVuZC1vZi1wYXN0ZWQt
Y29udGVudC1zdGRlcnIudHh0VVQJAAMJrxpc3J0aXHV4CwABBPUBAAAEFAAAADMyMLTQNTTSNbRU
MDSyMjWwMjTXMzQzVAhPTfLOLAlJLS4JKs3LSy1yLCiINjG1sDC3MrY0NzW0jFUIcPIsSc11zs/J
SU0uyczPC04tKstMTi1SSM4HagALKaRkFkN5qSl6XABQSwMEFAACAAgASWaTTRuRLB5kAAAAbAAA
ADYAHABlZGl0aW5nL3Bhc3RlYm9hcmQvcHJlc2VydmUtdW5kZXJsaW5lLWNvbG9yLXN0ZGVyci50
eHRVVAkAAwmvGlzcnRpcdXgLAAEE9QEAAAQUAAAAMzIwtNA1NNI1tFQwNLIyNbAyNNczMbBQCE9N
8s4sCUktLgkqzctLLXIsKIg2MbWwMLcytrQ0NTGNVQhw8ixJzXXOz8lJTS7JzM8LTi0qy0xOLVJI
zgdqAAsppGQWQ3mpKXpcAFBLAwQUAAIACABJZpNNmcwnP2QAAABsAAAALgAcAGVkaXRpbmcvcGFz
dGVib2FyZC9zZWxlY3QtZWxlbWVudC0xLXN0ZGVyci50eHRVVAkAAwmvGlzdnRpcdXgLAAEE9QEA
AAQUAAAAMzIwtNA1NNI1tFQwNLIyNbAyNNezMDNUCE9N8s4sCUktLgkqzctLLXIsKIg2MbWwMLcy
tjQ3NbSIVQhw8ixJzXXOz8lJTS7JzM8LTi0qy0xOLVJIzgdqAAsppGQWQ3mpKXpcAFBLAwQUAAIA
CABJZpNNYyUBkWQAAABsAAAASQAcAGVkaXRpbmcvcGFzdGVib2FyZC9zaW1wbGZpeWluZy1tYXJr
dXAtc2hvdWxkLW5vdC1zdHJpcC1jb250ZW50LXN0ZGVyci50eHRVVAkAAwqvGlzdnRpcdXgLAAEE
9QEAAAQUAAAAMzIwtNA1NNI1tFQwNLIyNbAytNAzMjZUCE9N8s4sCUktLgkqzctLLXIsKIg2MbWw
MLcytjS1tDCJVQhw8ixJzXXOz8lJTS7JzM8LTi0qy0xOLVJIzgdqAAsppGQWQ3mpKXpcAFBLAwQU
AAIACABJZpNN1pgVMmQAAABsAAAAQQAcAGVkaXRpbmcvcGFzdGVib2FyZC9zbWFydC1wYXN0ZS0w
MDMtdHJhaWxpbmctd2hpdGVzcGFjZS1zdGRlcnIudHh0VVQJAAMKrxpc3Z0aXHV4CwABBPUBAAAE
FAAAADMyMLTQNTTSNbRUMDSyMjWwMrTQM7UwUQhPTfLOLAlJLS4JKs3LSy1yLCiINjG1sDC3MrY0
tbQwiVUIcPIsSc11zs/JSU0uyczPC04tKstMTi1SSM4HagALKaRkFkN5qSl6XABQSwMEFAACAAgA
SWaTTc5s3J5kAAAAbAAAAC0AHABlZGl0aW5nL3Bhc3RlYm9hcmQvc21hcnQtcGFzdGUtMDA2LXN0
ZGVyci50eHRVVAkAAwqvGlzenRpcdXgLAAEE9QEAAAQUAAAAMzIwtNA1NNI1tFQwNLIyNbAytNCz
MDZTCE9N8s4sCUktLgkqzctLLXIsKIg2MbWwMLcytjS1tDCJVQhw8ixJzXXOz8lJTS7JzM8LTi0q
y0xOLVJIzgdqAAsppGQWQ3mpKXpcAFBLAwQUAAIACABKZpNN8repXmQAAABsAAAALgAcAGVkaXRp
bmcvcGFzdGVib2FyZC9zdHlsZS1mcm9tLXJ1bGVzLXN0ZGVyci50eHRVVAkAAwuvGlzenRpcdXgL
AAEE9QEAAAQUAAAAMzIwtNA1NNI1tFQwNLIyNbAytNQzNLdUCE9N8s4sCUktLgkqzctLLXIsKIg2
MbWwMLcytjS1tDCJVQhw8ixJzXXOz8lJTS7JzM8LTi0qy0xOLVJIzgdqAAsppGQWQ3mpKXpcAFBL
AwQUAAIACABKZpNNfQqammQAAABsAAAAMwAcAGVkaXRpbmcvcGFzdGVib2FyZC9zdHlsZWQtZWxl
bWVudC1tYXJrdXAtc3RkZXJyLnR4dFVUCQADC68aXN6dGlx1eAsAAQT1AQAABBQAAAAzMjC00DU0
0jW0VDA0sjI1sDK01DMxNVcIT03yziwJSS0uCSrNy0stciwoiDYxtbAwtzK2NDa1MI1VCHDyLEnN
dc7PyUlNLsnMzwtOLSrLTE4tUkjOB2oACymkZBZDeakpelwAUEsDBBQAAgAIAEpmk00d1/pWZAAA
AGwAAAArABwAZWRpdGluZy9wYXN0ZWJvYXJkL3Rlc3RjYXNlLTk1MDctc3RkZXJyLnR4dFVUCQAD
C68aXN6dGlx1eAsAAQT1AQAABBQAAAAzMjC00DU00jW0VDA0sjI1sDK01DM3s1AIT03yziwJSS0u
CSrNy0stciwoiDYxtbAwtzK2NDc1tIhVCHDyLEnNdc7PyUlNLsnMzwtOLSrLTE4tUkjOB2oACymk
ZBZDeakpelwAUEsDBBQAAgAIAEpmk000p4h9ZAAAAGwAAAA3ABwAZWRpdGluZy9wYXN0ZWJvYXJk
L3VuZG9hYmxlLWZyYWdtZW50LXJlbW92ZXMtc3RkZXJyLnR4dFVUCQADDK8aXN+dGlx1eAsAAQT1
AQAABBQAAAAzMjC00DU00jW0VDA0sjI1sDK01LM0t1AIT03yziwJSS0uCSrNy0stciwoiDYxtbAw
tzK2NDc1tIxVCHDyLEnNdc7PyUlNLsnMzwtOLSrLTE4tUkjOB2oACymkZBZDeakpelwAUEsDBAoA
AAAAAJNck00AAAAAAAAAAAAAAAASABwAZWRpdGluZy9zZWxlY3Rpb24vVVQJAAPFnRpc3rQaXHV4
CwABBPUBAAAEFAAAAFBLAwQUAAIACAA7ZpNNr5EikGQAAABsAAAALQAcAGVkaXRpbmcvc2VsZWN0
aW9uL3NlbGVjdC1jcmFzaC0wMDItc3RkZXJyLnR4dFVUCQAD8q4aXMWdGlx1eAsAAQT1AQAABBQA
AAAzMjC00DU00jW0VDA0sjKxtDI10TOwMFIIT03yziwJSS0uCSrNy0stciwoiDYxtTCztDK2tDQ1
MopVCHDyLEnNdc7PyUlNLsnMzwtOLSrLTE4tUkjOB2oACymkZBZDeakpelwAUEsDBBQAAgAIAM1p
k01xjWtyvA0AAJR9AAANABwAZXJyb3JfbG9nLnR4dFVUCQADsbQaXKScGlx1eAsAAQT1AQAABBQA
AADtXW1T20gS/n6/QkfdbqBqJc+7ZlSV2soZ34bbbMIB2XxIpVKyPLYVZMkryYTs1f3365GNEUYS
2ATwgooqv0rTPf309Mvokfn4QQ+sfR1YWFkYexR7TDrExZIRiyAsP1kfsyzyvvppDC+n4cAiUiL6
yXr1GmGFhGdh4joI/uBMRj1kZTo906kV6DQPh2Hg59oKM8u3uq+ufLb7Tz8Lg24SZ3nqh3GeeeaI
ly+tk6P3PevvP+/97WO1agS77DaqqVupNkh0Zr19d2KFcRDNBtryY+tg3/o6DoOxNfHzYAzf52N9
cW7sT3S1ZlRKjmSDZmyumXSpZx3EYe5ZxzrLwiS2uj6IMVaKk9wKkngYjmYpiPg4BsPAYcdvFkcW
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
ZXJ0LXVzZXItaW50ZXJhY3Rpb24yLXN0ZGVyci50eHRVVAkAAx2vGlwdrxpcdXgLAAEE9QEAAAQU
AAAA3U/NisIwGLzvU3zHFXRJ0m3TxB+onoLrsiyrHkQkrZ8asGn5mqL79pu+xs5hmBkYhhGM5xMu
JlwBFzplOpFvQnLYY7l24Qe78N17j1S07eE9zbNMJ0qoLD1C8WUAiRrSMDttzXq5aurWBuPbPuwc
PjSwp7woVdqKyZKzKVzI1ghzeGUQXaTRFO72Fylms1XxMcihlbGIJJV5jmyxAMLQk8dzbDzcOdzG
YLuur52/wtYMS5+N8YGc71y1wSiqF/EvX/0BUEsDBAoAAAAAAGlmk00AAAAAAAAAAAAAAAALABwA
ZmFzdC9mb3Jtcy9VVAkAA0avGlzetBpcdXgLAAEE9QEAAAQUAAAAUEsDBBQAAgAIAK9ck03Rccwn
wAAAAKoBAABEABwAZmFzdC9mb3Jtcy9jYWxsLXRleHQtZGlkLWNoYW5nZS1pbi10ZXh0LWZpZWxk
LXdoZW4tdHlwaW5nLXN0ZGVyci50eHRVVAkAA/qdGlz6nRpcdXgLAAEE9QEAAAQUAAAA3U9Na8JA
FLz3V7xjC1p2X4hZVytET4taSvHjIFK2yYsumE142aD++27+RucwzAwMw6CQaixxLKcgpU4yjdN3
lSEc6Xftwo668N17T5y37SkRmKZaqUThGfIvA8TcsIb5z96sl6umbm0wvu3DwdFdg3hkVVGVshSp
VGIGFdua4ANeBUQX6W0GN/skjtl8lW8GObQmYgDKBK1YLIAp9OypjI27K8N1BLbr+tr5C+zNsPTZ
GB/Y+c4VW4qieMH/eOoPUEsDBAoAAAAAAMVhk00AAAAAAAAAAAAAAAAUABwAZmFzdC9mb3Jtcy9k
YXRhbGlzdC9VVAkAA5KmGlzetBpcdXgLAAEE9QEAAAQUAAAAUEsDBBQAAgAIAFVmk00ISr7iwwAA
AKwBAAAxABwAZmFzdC9mb3Jtcy9kYXRhbGlzdC9kYXRhbGlzdC1zaG93LWhpZGUtc3RkZXJyLnR4
dFVUCQADIa8aXJKmGlx1eAsAAQT1AQAABBQAAADdT8tqwzAQvPcr9thAU1ayksrKA9ycRJpQStMe
QgiKvUkFtWzWMmn+PvJvdA7DzMAwjEShx0KORQ5CmgkaJZ5RSfim09rHT+riRx8CcdG2ezXRWpks
zzI9PUDxboGYGzYwP+7s+nXV1K2LNrR9/PJ0NYB/L2eXn6oSpdY4gzO7mmABjwjJJRrN4NfdiFM2
XxVvgxxaU0yQolJC4nIJTLHnQFVqXH0Vf57AdV1f+3CBnR2Wto0NkX3ofLmhJMoH+S9f3QFQSwME
FAACAAgAaWaTTTLfPDRkAAAAbAAAACYAHABmYXN0L2Zvcm1zL3BsYWludGV4dC1tb2RlLTItc3Rk
ZXJyLnR4dFVUCQADRq8aXEavGlx1eAsAAQT1AQAABBQAAAAzMjC00DU00jW0VDA0sjI1tDK00DM2
MFAIT03yziwJSS0uCSrNy0stciwoiDYxtbAwtzK2NDc1tIhVCHDyLEnNdc7PyUlNLsnMzwtOLSrL
TE4tUkjOB2oACymkZBZDeakpelwAUEsDBBQAAgAIAHFmk01BleadoQAAAM0AAAAvABwAZmFzdC9m
b3Jtcy92YWxpZGF0aW9uLWN1c3RvbS1tZXNzYWdlLXN0ZGVyci50eHRVVAkAA1avGlwonhpcdXgL
AAEE9QEAAAQUAAAAdY29CsIwFEZ3n+L6AJWkaWkbilCcxEXEn0EcUr2tgTQJyZX6+MbB0fE7HL6T
M15nPM94AzyXJZeiWLE0LtjvNB0x0uFlLYbO+2tR1nUlRSOKUtzgooLVdpTQEeHkCciBDxjRErSn
7VnjvHGWgjMGgwT2rgaFzaBYX9VsDc5CuzeKBhemFPuj98ge968+P7VBUL+CIp0OdARtE3JjonG5
+ABQSwMEFAACAAgAcWaTTRdR3mqyAAAAmgEAACkAHABmYXN0L2Zvcm1zL3ZhbGlkYXRpb24tbWVz
c2FnZXMtc3RkZXJyLnR4dFVUCQADVq8aXCmeGlx1eAsAAQT1AQAABBQAAAC1j70KwjAURnef4voA
yk3a2DSIUJzERcSfQRxSvdVAm5T0ij6+Wdx0dP04fIcjUeiJkBNRgpBGCZPl0xwRjlSvHe9o4O3D
e4pV359ypXVhsjLLVXaGo43e+ZuBipm6noED9JEG8gzz/erg6LkMnmNoW4oG8FU0lspSYXFBXEDw
MN+0lpsQuyT7gdeE14tO+PPuWgL7MVh26cAN4Hyawi2tw3gkv8Qorf4VY4sZNkr+KeYNUEsDBAoA
AAAAALdck00AAAAAAAAAAAAAAAAMABwAZmFzdC9mcmFtZXMvVVQJAAMKnhpc3rQaXHV4CwABBPUB
AAAEFAAAAFBLAwQUAAIACABiZpNN2wjTQjsAAAA/AAAALwAcAGZhc3QvZnJhbWVzL2ZyYW1lLWRp
c3BsYXktbm9uZS1mb2N1cy1zdGRlcnIudHh0VVQJAAM3rxpcCp4aXHV4CwABBPUBAAAEFAAAAHMs
KUnNLShRKMlXSM0rLE0tTVVIVCjPL8pWyARKKJRnZOakKkDEM4sVklIz89IVCoryk1OLi1NT9LgA
UEsDBAoAAAAAAMNck00AAAAAAAAAAAAAAAAMABwAZmFzdC9pbWFnZXMvVVQJAAMdnhpc3rQaXHV4
CwABBPUBAAAEFAAAAFBLAwQUAAIACABrZpNNIhihq1cAAABeAAAALAAcAGZhc3QvaW1hZ2VzL3Bk
Zi1hcy1pbWFnZS1jcm9wLWJveC1zdGRlcnIudHh0VVQJAANKrxpcHZ4aXHV4CwABBPUBAAAEFAAA
AA3MQQ5AMBAF0L1T/DhAD6HKkpDYNoMJTXRGRuP8HOA9r8a90X2m7cHYdjjpwaXHwTtIwGZqDjMX
sLzJVDJLwUuWaGXUvo8/ikuYmmEONYriYjJB/l9XfVBLAwQKAAAAAADBXJNNAAAAAAAAAAAAAAAA
DAAcAGZhc3QvbG9hZGVyL1VUCQADGp4aXN60Glx1eAsAAQT1AQAABBQAAABQSwMEFAACAAgAZGaT
TdsI00I7AAAAPwAAAFIAHABmYXN0L2xvYWRlci9kaXNwbGF5LWltYWdlLXVuc2V0LWNhbi1ibG9j
ay1pbWFnZS1hbmQtY2FuLXJlbG9hZC1pbi1wbGFjZS1zdGRlcnIudHh0VVQJAAM7rxpcD54aXHV4
CwABBPUBAAAEFAAAAHMsKUnNLShRKMlXSM0rLE0tTVVIVCjPL8pWyARKKJRnZOakKkDEM4sVklIz
89IVCoryk1OLi1NT9LgAUEsDBBQAAgAIAGZmk03bCNNCOwAAAD8AAABTABwAZmFzdC9sb2FkZXIv
aW1hZ2VzLWVuYWJsZWQtdW5zZXQtY2FuLWJsb2NrLWltYWdlLWFuZC1jYW4tcmVsb2FkLWluLXBs
YWNlLXN0ZGVyci50eHRVVAkAAz+vGlwSnhpcdXgLAAEE9QEAAAQUAAAAcywpSc0tKFEoyVdIzSss
TS1NVUhUKM8vylbIBEoolGdk5qQqQMQzixWSUjPz0hUKivKTU4uLU1P0uABQSwMEFAACAAgAaWaT
TdsI00I7AAAAPwAAAC0AHABmYXN0L2xvYWRlci9yZWxvYWQtcG9saWN5LWRlbGVnYXRlLXN0ZGVy
ci50eHRVVAkAA0avGlwanhpcdXgLAAEE9QEAAAQUAAAAcywpSc0tKFEoyVdIzSssTS1NVUhUKM8v
ylbIBEoolGdk5qQqQMQzixWSUjPz0hUKivKTU4uLU1P0uABQSwMECgAAAAAAzVyTTQAAAAAAAAAA
AAAAABAAHABmYXN0L3NoYWRvdy1kb20vVVQJAAMxnhpc3rQaXHV4CwABBPUBAAAEFAAAAFBLAwQU
AAIACAB1ZpNN3NpmuGQAAABsAAAAOQAcAGZhc3Qvc2hhZG93LWRvbS9zZWxlY3Rpb24tYXQtc2hh
ZG93LXJvb3QtY3Jhc2gtc3RkZXJyLnR4dFVUCQADXa8aXDGeGlx1eAsAAQT1AQAABBQAAAAzMjC0
0DU00jW0VDA0sjI1tDIx1DM3MVMIT03yziwJSS0uCSrNy0stciwoiDYxtTAzsTK2NDawtIhVCHDy
LEnNdc7PyUlNLsnMzwtOLSrLTE4tUkjOB2oACymkZBZDeakpelwAUEsDBAoAAAAAAOZck00AAAAA
AAAAAAAAAAAKABwAZmFzdC90ZXh0L1VUCQADYJ4aXN60Glx1eAsAAQT1AQAABBQAAABQSwMEFAAC
AAgA5lyTTdOvm5LAAAAAqgEAADIAHABmYXN0L3RleHQvc2Nyb2xsLXRleHQtb3ZlcmZsb3ctZWxs
aXBzaXMtc3RkZXJyLnR4dFVUCQADYJ4aXGCeGlx1eAsAAQT1AQAABBQAAADdT8FKw0AUvPsV72jB
ynupbXa3tRB7WtqKiG0PImVNXnTBbMLLhta/d/MbzmGYGRiGyZDUlLIpaSAyM20I7/OFghN/bn18
4z6+DiGwFF33PsPsgYzKNaoPKF4ssEgrBlbng90+bdqmc9GGbohHzxcDeM1rVSMyUqlxCbW4huER
bhGSSzRZwo/7ZUnZalPsRjm2FphA2s0rxPUahOMggavUuPgqft+B6/uh8eELDnZcem5tiOJD78s9
J1HeZP/x1B9QSwMECgAAAAAA1lyTTQAAAAAAAAAAAAAAABUAHABmYXN0L3Zpc3VhbC12aWV3cG9y
dC9VVAkAA0SeGlzetBpcdXgLAAEE9QEAAAQUAAAAUEsDBAoAAAAAANZck00AAAAAAAAAAAAAAAAZ
ABwAZmFzdC92aXN1YWwtdmlld3BvcnQvaW9zL1VUCQADRJ4aXN60Glx1eAsAAQT1AQAABBQAAABQ
SwMEFAACAAgAgWaTTavXRWHGAAAArAEAAD8AHABmYXN0L3Zpc3VhbC12aWV3cG9ydC9pb3Mvc3Rh
YmxlLXVwZGF0ZS13aXRoLWtleWJvYXJkLXN0ZGVyci50eHRVVAkAA3GvGlxEnhpcdXgLAAEE9QEA
AAQUAAAA1U9Na8JAFLz3V7xjhVre29Ro1g9IPS1aKVLrQUQ25tkuNJvwskH7793c+wc6h2FmYBhG
IU2GpIaUASk9UhrpGZFgz8XKhQ9uw7bzniVvmsPLaJJmOskSTLMj5O8GWKQWDbPTzqxel3XV2GB8
04VPx1cNeBtfbEFEmHCBU7iIrRjm8IgQXaTBFH7sL0vMZst83cu+lWKPIhmXKS4WIBw68VzGxtWV
4fsJbNt2lfNfsDP90qY2PojzrTu/cRTnB/XnK/XPX90BUEsDBAoAAAAAANpck00AAAAAAAAAAAAA
AAAJABwAZmFzdC94c2wvVVQJAANMnhpc3rQaXHV4CwABBPUBAAAEFAAAAFBLAwQUAAIACACDZpNN
Tvsg+IgAAADnAAAAJQAcAGZhc3QveHNsL3RyYW5zZm9ybS14aHItZG9jLXN0ZGVyci50eHRVVAkA
A3WvGlxKnhpcdXgLAAEE9QEAAAQUAAAApY6xDsIwDET3foV/oHhgywwTbCA6u60rIjlx5ThS+XsC
5Q9YTiffye8mTWsU8qgZ2EwtwBKFvxIQ8aFSExc8kROehxsOPF6i45VeWv3OxQsuVBy3ImhctNrU
6tvT+lmnQ7uCxMxwBBZOnB1iWtW8a0nYLQSomcYGdQVRmn/w/9D9/pznz4buDVBLAwQUAAIACACD
ZpNN/aIuZI8AAADuAAAAJwAcAGZhc3QveHNsL3hzbHQtYmFkLWltcG9ydC11cmktc3RkZXJyLnR4
dFVUCQADdq8aXEqeGlx1eAsAAQT1AQAABBQAAACdjjEOwjAMRfeewhcoHtgywwQbiM5u64pITlw5
jlRuT6CcgOXL/3/bepOmNQp51AxsphZgicJfCYj4UKmJC57ICc/DDQceL9HxSi+tfufiBRcqjlsR
NC5abWrrzXk/0tzHtKp5Xy0eWgYSM8MRWDhxdtjbrjVhHyFAzTQ2AFcQpfkH8idG1lKn5+dFuxPp
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
AAgAjGaTTV3she6UAAAAjgEAAEkAHABodHRwL3Rlc3RzL2FwcGNhY2hlL2RlZmVycmVkLWV2ZW50
cy1kZWxldGUtd2hpbGUtcmFpc2luZy10aW1lci1zdGRlcnIudHh0VVQJAAOIrxpcWZ4aXHV4CwAB
BPUBAAAEFAAAANWPQQrCMBBF957iH0CKQlfdlVLcqBWycD0mvzRYk5Cknt+ImyJewMXAMP/zHtMN
ZzUce5x6pdpD32C2jtg3aEOYrZZsvetET4RNMAyR5UZT4TJTErGUUYxPq3n18c6YYF3KFFNtum/2
iokP9CHOjkwZ2i+zgfMZN2JkLqHZll3L25DX1UkMBPWuRmQK3iX+UP3nGy9QSwMEFAACAAgAjWaT
TeRsr4GZAAAARgIAAC8AHABodHRwL3Rlc3RzL2FwcGNhY2hlL2ZhaWwtb24tdXBkYXRlLTItc3Rk
ZXJyLnR4dFVUCQADia8aXFqeGlx1eAsAAQT1AQAABBQAAADtj7EKwjAYhHef4h5AikKnbqUUF7VC
BueYXGkwJiFJfX4jLkUEF0eHH47/ju+4bjiKYd/j0AvR7voG1jhi26ANwRols/Guk2oiTIJmiCw/
6gonS5mIuZxgvBvFs49XxgTjUqbU1ap7Zy+YeEFv0pmRKUP52Wo4n3EhRuZi6nXRSj4b8jI6SQ2J
elMjMgXvEj9U/Wd8nfFD9gNQSwMEFAACAAgAjWaTTXhj/f+UAAAAIwEAAC0AHABodHRwL3Rlc3Rz
L2FwcGNhY2hlL2ZhaWwtb24tdXBkYXRlLXN0ZGVyci50eHRVVAkAA4mvGlxanhpcdXgLAAEE9QEA
AAQUAAAArY/BCsIwEETvfsV8gBSFnnorpXhRK+TgeU2mNFiTkKR+vxEvRTx6WFh2hvfYbjir4djj
1CvVHvoGs3XEvkEbwmy1ZOtdJ3oibIJhiCw3mgqXmZKIpYxifFrNq493xgTrUqaYatN9s1dMfKAP
cXZkytB+mQ2cz7gRI3MJzbbsWt6GvK5OYiCodzUiU/Au8Yfqj2+8AFBLAwQKAAAAAADiXJNNAAAA
AAAAAAAAAAAAEQAcAGh0dHAvdGVzdHMvY2FjaGUvVVQJAANYnhpc3rQaXHV4CwABBPUBAAAEFAAA
AFBLAwQKAAAAAADiXJNNAAAAAAAAAAAAAAAAHAAcAGh0dHAvdGVzdHMvY2FjaGUvZGlzay1jYWNo
ZS9VVAkAA1ieGlzetBpcdXgLAAEE9QEAAAQUAAAAUEsDBBQAAgAIAItmk0111HV0xwAAAP4AAAA8
ABwAaHR0cC90ZXN0cy9jYWNoZS9kaXNrLWNhY2hlL3JlZGlyZWN0LWNoYWluLWxpbWl0cy1zdGRl
cnIudHh0VVQJAAOFrxpcWJ4aXHV4CwABBPUBAAAEFAAAAF2OwWrDMBBE7/mKPeUWS5btOjaYEIJp
C04D9SVXIamViLLrSjL9/aqUXMpehoF5b0+Xt/kyjXAe5/n4PPYwkdSgJCIl+CDv6RvuFAwkKxEE
h2C0C0YlRxg3p//r63l6SWl5N1+rienB8b9Mm/uesVK0Bc9X9nvOOVNSWcO0i7fdXwwm0hqUiexh
2ikrHRaLXQ7e4Geyg+DbFV1WvOqh7vZN1VWiKetqGyRqug9l23V104qnBvSaXyeQKhMjKMIUyEMW
qVssNj9QSwMECgAAAAAA4FyTTQAAAAAAAAAAAAAAABMAHABodHRwL3Rlc3RzL2Nvb2tpZXMvVVQJ
AANUnhpc3rQaXHV4CwABBPUBAAAEFAAAAFBLAwQKAAAAAADlXJNNAAAAAAAAAAAAAAAAHQAcAGh0
dHAvdGVzdHMvY29va2llcy9zYW1lLXNpdGUvVVQJAANdnhpc3rQaXHV4CwABBPUBAAAEFAAAAFBL
AwQUAAIACACIZpNNwjbPpiYBAABoBQAAWgAcAGh0dHAvdGVzdHMvY29va2llcy9zYW1lLXNpdGUv
ZmV0Y2gtYWZ0ZXItbmF2aWdhdGluZy1pZnJhbWUtaW4tY3Jvc3Mtb3JpZ2luLXBhZ2Utc3RkZXJy
LnR4dFVUCQADf68aXFSeGlx1eAsAAQT1AQAABBQAAADtkj1PwzAQhnd+hX8AjuPP2NnyuYBYKsSA
GJzUDVYTO3JcUP89iQpMrJ3Kcqc73em999GRFEuICcQKYJJzkmOeMC5A76dEz/NokhfTPdiYPJn4
6cPRuiGpzYcZ/TwZF18Zl5LnVFGG2Ruo7XKsvD9as4s+6MGA/l27YV0Csx9tfwaH4CdAQPQgvV9F
tlFwsKPJLxEh9LyYsKDuZMd95yN6tF3Q4Yy+RU1AlQ9mZ6fTqFeNrW97s6BWZVyJtoQiKzlklShh
UWQ1pKpVUjUqzWiF9jrqdd9Fbd2mUm91sdq0vY7WO5Qq3haYYkikqCFjVMCCswYWNGuUKFmpePN7
0sXp8pOTzrq1fTG13JE/yHIqr0s23ciSGyQrZPb/s1chm12b7E387BdQSwMEFAACAAgAiGaTTUHo
YIQpAQAAaAUAAFMAHABodHRwL3Rlc3RzL2Nvb2tpZXMvc2FtZS1zaXRlL2ZldGNoLWFmdGVyLXRv
cC1sZXZlbC1jcm9zcy1vcmlnaW4tcmVkaXJlY3Qtc3RkZXJyLnR4dFVUCQADgK8aXFWeGlx1eAsA
AQT1AQAABBQAAADtkrtOw0AQRXu+Yj+AfT/sdednA6KJEAWiWDubsIrttdYbUP4eWwEqOpQqaWY0
oxnduUfDCE0hZZBqQFkmWUYlSkUCOj8gM029RS+2fXARPdn46cPBjXtU2Q/b+2mwY3wVMk1lxjUX
VLyBys2H0vuDs5vog9lb0L2bcb8sgcn3rjuBXfADYCB6QO4XkXUU7Fxvs3PEGD/PNsy4Pbp+2/qI
H10bTDjhb1EbcOmD3bjh2JtFY+27zs640YnUqimgSgoJRakKmOdJBbludKprTRJe4q2JZtkfo3Hj
qlKtdb7YdJ2Jzo+YaNnklFPIUlVBIbiCuRQ1zHlSa1WIQsv696Sz0/kno9aNS/tsar5jf5DVnF6W
LFnJsqsjqxCR5PazFyFLeXr72X+T/QJQSwMEFAACAAgAiGaTTRcvZQMnAQAAaAUAAF8AHABodHRw
L3Rlc3RzL2Nvb2tpZXMvc2FtZS1zaXRlL2ZldGNoLWFmdGVyLXRvcC1sZXZlbC1uYXZpZ2F0aW9u
LWZyb20tY3Jvc3Mtb3JpZ2luLXBhZ2Utc3RkZXJyLnR4dFVUCQADgK8aXFaeGlx1eAsAAQT1AQAA
BBQAAADtkj1PwzAQhnd+hX8AjuPvOFs+FxBLhRgQg5O6xWpiR44L6r8nUYGJDXVqlzvd6U7vvY+O
pDiDmECsACY5JzkWCVYC9H5M9DQNJnkx3YONyZOJnz4crNsntfkwg59G4+Ir41nGc6oow+wN1HY+
VN4frNlEH/TegP5du/2yBCY/2P4EdsGPgIDoQXq/iKyjYGcHk58jQuh5NmFG3dEO285H9Gi7oMMJ
fYuagCofzMaOx0EvGmvf9mZGrZJcibaEQpYcskqUsChkDalqVaYalUpaoa2Oetl3UVu3qtRrXSw2
ba+j9Q6lircFphiSTNSQMSpgwVkDCyobJUpWKt78nnR2Ov/kpLNuaZ9NzXfkD7JEysuSTVey5ArJ
slTdfvYyZDN2+9l/k/0CUEsDBBQAAgAIAIhmk03BwDanKAEAAGgFAABzABwAaHR0cC90ZXN0cy9j
b29raWVzL3NhbWUtc2l0ZS9mZXRjaC1hZnRlci10b3AtbGV2ZWwtbmF2aWdhdGlvbi1pbml0aWF0
ZWQtZnJvbS1pZnJhbWUtaW4tY3Jvc3Mtb3JpZ2luLXBhZ2Utc3RkZXJyLnR4dFVUCQADgK8aXFee
Glx1eAsAAQT1AQAABBQAAADtkj1PwzAQhnd+hX8AjuPP2NnyuYBYKsSAGJzULVYTO3JcUP89iQpM
bKhTu9zpTnd67310JMUSYgKxApjknORYJJxJ0Psx0dM0mOTFdA82Jk8mfvpwsG6f1ObDDH4ajYuv
jEvJc6oow+wN1HY+VN4frNlEH/TegP5du/2yBCY/2P4EdsGPgIDoQXq/iKyjYGcHk58jQuh5NmFG
3dEO285H9Gi7oMMJfYuagCofzMaOx0EvGmvf9mZGrcq4Em0JRVZyyCpRwqLIakhVq6RqVJrRCm11
1Mu+i9q6VaVe62KxaXsdrXcoVbwtMMWQSFFDxqiABWcNLGjWKFGyUvHm96Sz0/knJ511S/tsar4j
f5AVhF2WbLqSJVdINsvw7WcvQlby9Paz/yb7BVBLAwQUAAIACACJZpNNQJ4LZSkBAABoBQAAUgAc
AGh0dHAvdGVzdHMvY29va2llcy9zYW1lLXNpdGUvZmV0Y2gtYWZ0ZXItdG9wLWxldmVsLXNhbWUt
b3JpZ2luLXJlZGlyZWN0LXN0ZGVyci50eHRVVAkAA4GvGlxXnhpcdXgLAAEE9QEAAAQUAAAA7ZI9
T8MwEIZ3foV/AI4/4o84Wz4XEEuFGBCDk7rFamJHjgvqvydRgYkNdWqXO93pTu+9j45ikkFCIVGA
0JzTnIhEYQZ6PyZ6mgaTvJjuwcbkycRPHw7W7ZPafJjBT6Nx8ZXxLON5qlJG2Buo7XyovD9Ys4k+
6L0B/bt2+2UJTH6w/Qnsgh8BBdEDfL+IrKNgZweTnyNC6Hk2YUbd0Q7bzkf0aLugwwl9i5qAKh/M
xo7HQS8aa9/2ZkatklyJtoRClhyySpSwKGQNU9WqTDUKy7RCWx31su+itm5Vqde6WGzaXkfrHcKK
twVJCaSZqCFjqYAFZw0sUtkoUbJS8eb3pLPT+ScnnXVL+2xqvqN/kZXqsmTxSpZeHVmZ4Cy7/exF
yFJMbz/7b7JfUEsDBBQAAgAIAIlmk03gyIY+JwEAAGgFAABPABwAaHR0cC90ZXN0cy9jb29raWVz
L3NhbWUtc2l0ZS9mZXRjaC1jb29raWVzLXNldC1pbi1hYm91dC1ibGFuay1pZnJhbWUtc3RkZXJy
LnR4dFVUCQADga8aXFeeGlx1eAsAAQT1AQAABBQAAADtkj1PwzAQhnd+hX8AjuPvOFs+FxBLhRgQ
g5O6xWpiR44L6r8nUYGJDXVqlzvd6U7vvY+OpDiDmECsACY5JzmWCclS0Psx0dM0mOTFdA82Jk8m
fvpwsG6f1ObDDH4ajYuvjGcZz6miDLM3UNv5UHl/sGYTfdB7A/p37fbLEpj8YPsT2AU/AgKiB+n9
IrKOgp0dTH6OCKHn2YQZdUc7bDsf0aPtgg4n9C1qAqp8MBs7Hge9aKx925sZtUpyJdoSCllyyCpR
wqKQNaSqVZlqVCpphbY66mXfRW3dqlKvdbHYtL2O1juUKt4WmGJIMlFDxqiABWcNLKhslChZqXjz
e9LZ6fyTk866pX02Nd+RP8hSLi9LNl3JkiskywS9/exFyHJGbz/7b7JfUEsDBBQAAgAIAIlmk03b
Gq7DKQEAAGgFAABBABwAaHR0cC90ZXN0cy9jb29raWVzL3NhbWUtc2l0ZS9mZXRjaC1pbi1hYm91
dC1ibGFuay1wYWdlLXN0ZGVyci50eHRVVAkAA4KvGlxYnhpcdXgLAAEE9QEAAAQUAAAA7ZI9T8Mw
EIZ3foV/AI6/4zhbPhcQS4UYEIOTusVqYkeOC+q/J1GBhRF1apc73elO772PjmKSQUIhUYDQXNCc
yERxDno/JnqaBpO8mO7BxuTJxE8fDtbtk9p8mMFPo3HxlYssEzlTjBP+Bmo7HyrvD9Zsog96b0D/
rt1+WQKTH2x/ArvgR0BB9ADfLyLrKNjZweTniBB6nk2YUXe0w7bzET3aLuhwQt+iJqDKB7Ox43HQ
i8bat72ZUaukUGlbwlSWAvIqLWFRyBoy1apMNQpLVqGtjnrZd1Fbt6rUa10sNm2vo/UOYSXagjAC
aZbWkHOWwkLwBhZMNiotealE83vS2en8k5POuqV9NjXf0T9kswRTcVmyeCVLr5Asoez2sxchS7G8
/ey/yX4BUEsDBBQAAgAIAIlmk014LDPxJwEAAGgFAABCABwAaHR0cC90ZXN0cy9jb29raWVzL3Nh
bWUtc2l0ZS9mZXRjaC1pbi1hYm91dC1ibGFuay1wb3B1cC1zdGRlcnIudHh0VVQJAAOCrxpcWJ4a
XHV4CwABBPUBAAAEFAAAAO2SPU/DMBCGd36FfwCO48/Y2fK5gFgqxIAYnNQtVhM7clxQ/z2JCkxs
qFO73OlOd3rvfXQkxRJiArECmOSc5FgmJBOg92Oip2kwyYvpHmxMnkz89OFg3T6pzYcZ/DQaF18Z
l5LnVFGG2Ruo7XyovD9Ys4k+6L0B/bt2+2UJTH6w/Qnsgh8BAdGD9H4RWUfBzg4mP0eE0PNswoy6
ox22nY/o0XZBhxP6FjUBVT6YjR2Pg1401r7tzYxalXEl2hKKrOSQVaKERZHVkKpWSdWoNKMV2uqo
l30XtXWrSr3WxWLT9jpa71CqeFtgiiGRooaMUQELzhpY0KxRomSl4s3vSWen809OOuuW9tnUfEf+
IEuFvCzZdCVLrpAsT+XtZy9DVvHbz/6b7BdQSwMEFAACAAgAimaTTTDOC+IpAQAAaAUAAEQAHABo
dHRwL3Rlc3RzL2Nvb2tpZXMvc2FtZS1zaXRlL2ZldGNoLWluLWNyb3NzLW9yaWdpbi1pZnJhbWUt
c3RkZXJyLnR4dFVUCQADhK8aXFieGlx1eAsAAQT1AQAABBQAAADtkrtOw0AQRXu+Yj+AfT/sdedn
A6KJEAWiWDubsIrttdYbUP4eWwEqOpQqaWY0oxnduUfDCE0hZZBqQFkmWUZTpBIKOj8gM029RS+2
fXARPdn46cPBjXtU2Q/b+2mwY3wVMk1lxjUXVLyBys2H0vuDs5vog9lb0L2bcb8sgcn3rjuBXfAD
YCB6QO4XkXUU7Fxvs3PEGD/PNsy4Pbp+2/qIH10bTDjhb1EbcOmD3bjh2JtFY+27zs640YnUqimg
SgoJRakKmOdJBbludKprTRJe4q2JZtkfo3HjqlKtdb7YdJ2Jzo+YaNnklFPIUlVBIbiCuRQ1zHlS
a1WIQsv696Sz0/kno9aNS/tsar5jf5BN5IXJkpUsuzayjCAi1O1nL0KWcnn72X+T/QJQSwMEFAAC
AAgAimaTTTXY4mEnAQAAaAUAAEIAHABodHRwL3Rlc3RzL2Nvb2tpZXMvc2FtZS1zaXRlL2ZldGNo
LWluLWNyb3NzLW9yaWdpbi1wYWdlLXN0ZGVyci50eHRVVAkAA4SvGlxZnhpcdXgLAAEE9QEAAAQU
AAAA7ZI9T8NADIZ3fsX9AC73neSy5XMBsVSIATFc0muxmuSiyxXUf0+iAhMb6tQutmzZev0+Mqcs
xYxjphHjmeIZpxGnFHVuiMw09TZ6se0DhOjJhk/nDzDuo8p+2N5Ngx3Dq1RpqjKhhWTyDVUwH0rn
DmA3wXmzt6h7N+N+WUKT66E7oZ13A+IoOETvF5F1FO2gt9k5EkKeZ+tn0h6h37YukEdovfEn8i1q
PSmdtxsYjr1ZNNY+dHYmjU6UjpsCx0mhsCzjAud5UmGhG53qWtNElGRrgln2x2BgXFWqtc4Xm9CZ
AG4kVKsmZ4JhnsYVllLEOFeyxrlIah0XstCq/j3p7HT+yVEL49I+m5rv+F9kk/SyZOlKll8hWcnF
7WcvQlZxevvZf5P9AlBLAwQUAAIACACLZpNNk11/xCkBAABoBQAATAAcAGh0dHAvdGVzdHMvY29v
a2llcy9zYW1lLXNpdGUvZmV0Y2gtaW4tY3Jvc3Mtb3JpZ2luLXNlcnZpY2Utd29ya2VyLXN0ZGVy
ci50eHRVVAkAA4WvGlxanhpcdXgLAAEE9QEAAAQUAAAA7ZI9T8MwEIZ3foV/AI7jz9jZ8rmAWCrE
gBic1C1WEztyXFD/PYkKTGyoU7vc6U53eu99dCTFEmICsQKY5JzkJE24ykDvx0RP02CSF9M92Jg8
mfjpw8G6fVKbDzP4aTQuvjIuJc+pogyzN1Db+VB5f7BmE33QewP6d+32yxKY/GD7E9gFPwICogfp
/SKyjoKdHUx+jgih59mEGXVHO2w7H9Gj7YIOJ/QtagKqfDAbOx4HvWisfdubGbUq40q0JRRZySGr
RAmLIqshVa2SqlFpRiu01VEv+y5q61aVeq2LxabtdbTeoVTxtsAUQyJFDRmjAhacNbCgWaNEyUrF
m9+Tzk7nn5x01i3ts6n5jvxBVkh5WbLpSpZcHVmccKZuP3sRsoKy28/+m+wXUEsDBBQAAgAIAItm
k00JDNIaKQEAAGgFAABEABwAaHR0cC90ZXN0cy9jb29raWVzL3NhbWUtc2l0ZS9mZXRjaC1pbi1j
cm9zcy1vcmlnaW4td29ya2VyLXN0ZGVyci50eHRVVAkAA4avGlxbnhpcdXgLAAEE9QEAAAQUAAAA
7ZI9T8MwEIZ3foV/AI6/EztbPhcQS4UYEIOTusVqYkeOC+q/J1GBiQ11apc73elO772PjmIiIaGQ
KEBoLmhOSZJRBno/JnqaBpO8mO7BxuTJxE8fDtbtk9p8mMFPo3HxlQspRc4U44S/gdrOh8r7gzWb
6IPeG9C/a7dflsDkB9ufwC74EVAQPcD3i8g6CnZ2MPk5IoSeZxNm1B3tsO18RI+2Czqc0LeoCajy
wWzseBz0orH2bW9m1KpMqLQtYZqVAvIqLWFRZDVkqlVSNQpnrEJbHfWy76K2blWp17pYbNpeR+sd
wkq0BWEEUpnWkHOWwkLwBhYsa1Ra8lKJ5veks9P5JyeddUv7bGq+o3+QlQRflixeydIrJKuEvP3s
BcjSBDN6+9l/k/0CUEsDBBQAAgAIAItmk02X9ofkJwEAAGgFAABBABwAaHR0cC90ZXN0cy9jb29r
aWVzL3NhbWUtc2l0ZS9mZXRjaC1pbi1zYW1lLW9yaWdpbi1wYWdlLXN0ZGVyci50eHRVVAkAA4av
GlxbnhpcdXgLAAEE9QEAAAQUAAAA7ZI9T8MwEIZ3foV/AI6/nThbPhcQS4UYEIOTusVqYkeOC+q/
J1GBiQ11apc73elO772PjmKSQUIhUYDQXNCc0gRnCvR+TPQ0DSZ5Md2DjcmTiZ8+HKzbJ7X5MIOf
RuPiKxdZJnKmGCf8DdR2PlTeH6zZRB/03oD+Xbv9sgQmP9j+BHbBj4CC6AG+X0TWUbCzg8nPESH0
PJswo+5oh23nI3q0XdDhhL5FTUCVD2Zjx+OgF421b3szo1alQsm2hDItBeSVLGFRpDVkqlWZahRO
WYW2Oupl30Vt3apSr3Wx2LS9jtY7hJVoC8IIpJmsIedMwkLwBhYsbZQsealE83vS2en8k5POuqV9
NjXf0T/IkhRflixeydIrJEuluP3sRcgyJm8/+2+yX1BLAwQUAAIACACMZpNN9gPquSkBAABoBQAA
SwAcAGh0dHAvdGVzdHMvY29va2llcy9zYW1lLXNpdGUvZmV0Y2gtaW4tc2FtZS1vcmlnaW4tc2Vy
dmljZS13b3JrZXItc3RkZXJyLnR4dFVUCQADh68aXFyeGlx1eAsAAQT1AQAABBQAAADtkj1PwzAQ
hnd+hX8AjuPvOFs+FxBLhRgQg5O6xWpiR44L6r8nUYGJDXVqlzvd6U7vvY+OpDiDmECsACY5Jzkh
CVUK9H5M9DQNJnkx3YONyZOJnz4crNsntfkwg59G4+Ir41nGc6oow+wN1HY+VN4frNlEH/TegP5d
u/2yBCY/2P4EdsGPgIDoQXq/iKyjYGcHk58jQuh5NmFG3dEO285H9Gi7oMMJfYuagCofzMaOx0Ev
Gmvf9mZGrZJcibaEQpYcskqUsChkDalqVaYalUpaoa2Oetl3UVu3qtRrXSw2ba+j9Q6lircFphiS
TNSQMSpgwVkDCyobJUpWKt78nnR2Ov/kpLNuaZ9NzXfkD7JMZJclm65kyRWSVVLefvYCZGmSCnb7
2X+T/QJQSwMEFAACAAgAjGaTTVndwEEnAQAAaAUAAEoAHABodHRwL3Rlc3RzL2Nvb2tpZXMvc2Ft
ZS1zaXRlL2ZldGNoLWluLXNhbWUtb3JpZ2luLXNyY2RvYy1pZnJhbWUtc3RkZXJyLnR4dFVUCQAD
h68aXF2eGlx1eAsAAQT1AQAABBQAAADtkj1PwzAQhnd+hX8AjuOvJM6WzwXEUiEGxOCkbjk1sSPH
BfXfk6jAxIY6tcud7nSn995Hx2KaYcowVYiyXLKc8YhKiXo3RnqaBhO9mO4BQvRkwqfzB7D7qDYf
ZnDTaGx4FTLLZM4VF1S8oRrmQ+XcAcwmOK/3BvXv2u6XJTS5AfoT2nk3IoaCQ/H9IrKOoh0MJj9H
QsjzbPxMuiMM284F8gid1/5EvkWNJ5XzZgPjcdCLxtqH3sykValUSVviJC0lFlVS4qJIa8xVqzLV
qDjlFdnqoJd9GzTYVaVe62KxCb0O4CyJlWwLyilmWVJjIXiCCykaXPC0UUkpSiWb35POTuefHHVg
l/bZ1HzH/iDLpLgs2Xgly66QrOC3n70MWcmy28/+m+wXUEsDBBQAAgAIAIxmk026hwseJwEAAGgF
AABDABwAaHR0cC90ZXN0cy9jb29raWVzL3NhbWUtc2l0ZS9mZXRjaC1pbi1zYW1lLW9yaWdpbi13
b3JrZXItc3RkZXJyLnR4dFVUCQADh68aXF2eGlx1eAsAAQT1AQAABBQAAADtkj1PwzAQhnd+hX8A
juPP2NnyuYBYKsSAGJzULVYTO3JcUP89iQpMbKhTu9zpTnd67310JMUSYgKxApjknOSEJlxx0Psx
0dM0mOTFdA82Jk8mfvpwsG6f1ObDDH4ajYuvjEvJc6oow+wN1HY+VN4frNlEH/TegP5du/2yBCY/
2P4EdsGPgIDoQXq/iKyjYGcHk58jQuh5NmFG3dEO285H9Gi7oMMJfYuagCofzMaOx0EvGmvf9mZG
rcq4Em0JRVZyyCpRwqLIakhVq6RqVJrRCm111Mu+i9q6VaVe62KxaXsdrXcoVbwtMMWQSFFDxqiA
BWcNLGjWKFGyUvHm96Sz0/knJ511S/tsar4jf5AVUl6WbLqSJVdIVqbs9rOXISvJ7Wf/TfYLUEsD
BBQAAgAIAIhmk01Q64A7YwEAAKAVAAA5ABwAaHR0cC90ZXN0cy9jb29raWVzL3RoaXJkLXBhcnR5
LWNvb2tpZS1yZWxheGluZy1zdGRlcnIudHh0VVQJAAOArxpcVJ4aXHV4CwABBPUBAAAEFAAAAO2W
T0/DIBiH734KPoCU/23pDdvtovGyGA/GA+3YJGvLQplm3942U0/eDAczLhDeQH68T54QKCYlJBQS
CQitBK1InhWiAJ0bMn089iZ7Nu29DdmjCR/OH+y4zxrzbnp3HMwYXriQDFdMCo7xK2jsdKidO1iz
Cc7rvQHdmx738yFwdL3tzmDn3QAoCA7g2zlk2Qp2tjfVZUQIPU3GT6g92X7buoAebOu1P6OvUONR
7bzZ2OHU6zljqdvOTGgl1YrinMK1XHPIVYOhFExCVtSiWTd3tSoJ2uqg5/Nj0HZcUpplreY2baeD
dSMqiOJCcQYJESXkUjEo+UpC0YiCMllypdTPlS6dTt9z1tpxLl+amm7ob2RzGpcsXsjSayRbsuRs
JLJFcjYOWYmTs1HIlgQnZyORzZOzccjS9DeIRJaldzYSWU6Ss5HIyuRsHLI5S85GIpucjUS2SM7+
U7JX7GyZnP0z2U9QSwMECgAAAAAA6FyTTQAAAAAAAAAAAAAAABIAHABodHRwL3Rlc3RzL2ltYWdl
cy9VVAkAA2OeGlzetBpcdXgLAAEE9QEAAAQUAAAAUEsDBBQAAgAIAJBmk00YpNbeewAAAEQBAAAu
ABwAaHR0cC90ZXN0cy9pbWFnZXMvaGlkcGktc3Jjc2V0LWNvcHktc3RkZXJyLnR4dFVUCQADj68a
XGOeGlx1eAsAAQT1AQAABBQAAAAzMjC00DU00jW0VDA0sjI1sjI21DMyNlYIT03yziwJSS0uCSrN
y0stciwoiDYxtTAztjIxMDM2N4tVCHDyLEnNdc7PyUlNLsnMzwtOLSrLTE4tUkjOB2oACymkZBZD
eakpelxGWOwysTTHY5expbGBpRG17DIzMaSJvwBQSwMECgAAAAAAAF2TTQAAAAAAAAAAAAAAABAA
HABodHRwL3Rlc3RzL21pc2MvVVQJAAOQnhpc3rQaXHV4CwABBPUBAAAEFAAAAFBLAwQUAAIACACo
ZpNNFTU1knoAAAC8AAAAKgAcAGh0dHAvdGVzdHMvbWlzYy94c2x0LWJhZC1pbXBvcnQtc3RkZXJy
LnR4dFVUCQADvK8aXJCeGlx1eAsAAQT1AQAABBQAAACNjkEOwyAMBO95hT9AIO2hFb8hxFUsGYyM
kfr8EuUD1V5WO4fZLKURJyOpgKqiET7ECKdZi95vj9caZrb4DiH4Qj17xS5DM3b/7WxuT4ej0kTN
DaV1bsBUEZ6AjAWrwU2XSeJdIcKoaZ8aE2BJx3+6Kn3k87qXLDEvP1BLAwQKAAAAAADpXJNNAAAA
AAAAAAAAAAAAFgAcAGh0dHAvdGVzdHMvbmF2aWdhdGlvbi9VVAkAA2aeGlzetBpcdXgLAAEE9QEA
AAQUAAAAUEsDBBQAAgAIAJFmk03bCNNCOwAAAD8AAAA3ABwAaHR0cC90ZXN0cy9uYXZpZ2F0aW9u
L2ZhbGxiYWNrLWFuY2hvci1yZWxvYWQtc3RkZXJyLnR4dFVUCQADkq8aXGaeGlx1eAsAAQT1AQAA
BBQAAABzLClJzS0oUSjJV0jNKyxNLU1VSFQozy/KVsgESiiUZ2TmpCpAxDOLFZJSM/PSFQqK8pNT
i4tTU/S4AFBLAwQKAAAAAADsXJNNAAAAAAAAAAAAAAAAFQAcAGh0dHAvdGVzdHMvcXVpY2tsb29r
L1VUCQADbJ4aXN60Glx1eAsAAQT1AQAABBQAAABQSwMEFAACAAgAlGaTTffUUr8kBAAAlmAAAEEA
HABodHRwL3Rlc3RzL3F1aWNrbG9vay9zZWN1cmUtZG9jdW1lbnQtd2l0aC1zdWJyZXNvdXJjZXMt
c3RkZXJyLnR4dFVUCQADmK8aXGyeGlx1eAsAAQT1AQAABBQAAADtnE2T4jYQhu/5FT5mL2CGL5Mb
C7MJFbagMCxbSeXQllpYwZZckjyz/PvImZ2MGcglJV8inQCVjNWup7r1drcssz/J76PJ4GH0x0/R
ogCto316+PXLZi/PKCKuI15WBZYoDNKIiyiTJo/686oqOAHDpdD9r0RS7EFV9RfSThNG95f4hIWs
UPW3BRgmVan7fJtLgZu0V30fas1a80yButg/UJjysrYzpL1WScYL1P1dLQwv7RduL9e8VC+/3+63
Qy1rRd6m7qQ0/fSiDZb//PlW8Scw+ElBic9SnXV/wxgnuCorqUyPvY5fDUc/xt8mLBsyHGXxhwgE
/d9Yz4/248b41uiL7TQZTDOMP/SijcBIssjkGJlnGT3zoogyjGqNtBcdc07yyNrYQFMLiowLO/6D
vEvYEgu47O1SVWDsjTE2SLxlbDbNHDP2G69WgllDcYdAFzkIgUXA7RW3URxPiL+4AXWM2x6bO9h1
LSWpG7oWQHL8DAJOwcu1sRsMksRb7LJR4ha7tAKlca4UXAJkLd82mvnr2zLiPpTOFcn5EwbGWo4s
9jh+koFjxpq1QzMhwHbfoaHHsE0cw3bYrfcKyDnszK4Ymw78ZYyOO2Psk7Vxq1A3hAXgroAb+isF
6NSxFDgcVssUTQCsBRh6LAMa250C9rk2kBUYOLvDWeavI2tsd1sd4LoCQ/IlGAiUtShLwF9vxobu
kxrNxixozdvExoPPnCXdcLZETRSvrLlHZR9hEALXxBF/4ycDx/GzwW21CRXP2wA68zeJBvGDY8f2
sWYMFdJQXr8P25h6DBvpHrZfsAhh9B1yLPEXOXRdWgeGKTzhXGuuDYiQ8Wjv2IYjf71bY7trjfAo
jAotHFebtYG/zmzoOqf2XYUeFQ81qHfSc+yxI3Pd2P3S70jfmiG5QmKtDp6t7dmov/k1GE87a7x9
ZS003d5BjnmMXAf9kCGQ3vZ1+3tCCiaDrhALuuCGM+qvLpgMndfa4SSkNpzoAFn7bNTMY8ioY8ge
v9mlU6RzYxTPahOq7Vd5Do8zadM47hi1hSwKKwvsIw3QtaGbeQyd61bvRW0MF6cAWAuw5qSjr4Al
A8cB9Gcl6yoQ9o4wj7doycR9fSD0cfyL3vT3VBQkrs8QNIcHtmBRCoS1PJm/B4lh5rqvu+XGVqKq
TWoUQjmnUIWE7TV2MPQYu8Q5dqU0aE209pvLmuvQLtRmjXhcHJjRTlhbIoO6MCFve1XnjP3lDFx3
eD+K5rHRj4Uk55VgctUcYBcQ5MGVZ/NYHgDpmLgjN/kS/x5boziZPCB4D8GJvwhmrivvq83B8CJE
1XYKZDT2N9WWJd28pyO1hoZC6NXbYDzWCCTuINGW1plGs1DYmBtQa79JwWOZQFyXP1NDuVzLU8rF
OVDWfiuMx50dhP1nyv4CUEsDBAoAAAAAAJZmk00AAAAAAAAAAAAAAAAiABwAaHR0cC90ZXN0cy9y
ZXNvdXJjZUxvYWRTdGF0aXN0aWNzL1VUCQADm68aXN60Glx1eAsAAQT1AQAABBQAAABQSwMEFAAC
AAgAlmaTTeXRQ6IFAQAAywEAAGgAHABodHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3Mv
Y2xhc3NpZnktYXMtcHJldmFsZW50LWJhc2VkLW9uLXRvcC1mcmFtZS1yZWRpcmVjdC1jb2xsdXNp
b24tc3RkZXJyLnR4dFVUCQADm68aXJuvGlx1eAsAAQT1AQAABBQAAAC9kEFLw0AQhe/9FY+eFOyS
pKnU3CRSELWEJtCDeNik03Rxs7MmE6v/3m3xoP4ATzMD871585IoXs7iZBbfIE6yRZKlczVfRmi4
U9p7S2pL9YORU8nZCTlRd/ROln0X+uf0epGmWRoto3n8gpx7quhD4Knfc99p1xAcC2XIrQn7aLS1
tENerYJY3pMW2ho5rHVHF5cYB+NauDBgWpmOBqzpiA0HoSm026FlwT6QOAYIBQ9SNr3x8pMJyJko
yqdqqrDiHjUNvzxdgZ39DOfor8aA44Hc2ebJihzMgNviXk2S/wqqJIFGHaJ59WzCq+y+43rkthxr
9mI6bTf0Np6+EsaO6rFVky9QSwMECgAAAAAAD12TTQAAAAAAAAAAAAAAAEgAHABodHRwL3Rlc3Rz
L3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvcmVtb3ZlLWJsb2NraW5nLWluLXJlZGlyZWN0LWFjdHVh
bC50eHRVVAkAA66eGlyunhpcdXgLAAEE9QEAAAQUAAAAUEsDBBQAAgAIAA9dk00k74LiYQEAALsE
AABKABwAaHR0cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL3JlbW92ZS1ibG9ja2luZy1p
bi1yZWRpcmVjdC1leHBlY3RlZC50eHRVVAkAA66eGlyunhpcdXgLAAEE9QEAAAQUAAAA3ZLRSsMw
FIbv8xTH3vRmLXYqwlBB5rxSVta+QJacboeliSTpRt/edJuVCtYrQWygNCf/+Zsv+Ut03oHfcg9r
ZcSO9AbIgcXa7FFCTTKpFG22HkiHqiSLwruUsaUG1wiBzk2gNQ0cSClwiMDD2xI6MBVE+WNRRFAH
Fd9gUFZGKXMIxusWonJRlDBfvuYvi3IRBU/WyT9sq0apNufWBXXYkbcNMjZoYQCMJeeHPVte4wzi
u4skqbrvLEke4s/1YmsaJQODQNojVGSdT9649S0IY3aEKVud1uS5ADq4SIiP0rxTzo/1OGVPJEEb
37sNGzpX8mQ0yr5jrgi1TxxJBGlEU4dZemqbwdc/3O+56nC/h5sO4VbnmwHBHUI2AfcTbbgKC9n0
Nr0MI/tL7P2mxvivhvylbcGbkDwfskxWDlFDdI/h7gJtJHZJ+975ejQ22vRpGT+HXz+4MYabsXRM
/0k63gFQSwMECgAAAAAAG12TTQAAAAAAAAAAAAAAABQAHABodHRwL3Rlc3RzL3NlY3VyaXR5L1VU
CQADxp4aXN60Glx1eAsAAQT1AQAABBQAAABQSwMECgAAAAAA8VyTTQAAAAAAAAAAAAAAAB4AHABo
dHRwL3Rlc3RzL3NlY3VyaXR5L2NsaXBib2FyZC9VVAkAA3aeGlzetBpcdXgLAAEE9QEAAAQUAAAA
UEsDBBQAAgAIAO9ck03+sX7gYgAAAGsAAABVABwAaHR0cC90ZXN0cy9zZWN1cml0eS9jbGlwYm9h
cmQvY29weS1wYXN0ZS1odG1sLWFjcm9zcy1vcmlnaW4tc2FuaXRpemVzLWh0bWwtc3RkZXJyLnR4
dFVUCQADcp4aXHKeGlx1eAsAAQT1AQAABBQAAAAzMjC00DU00jW0VDA0tDK2tDKy1DMzM1cIT03y
ziwJSS0uCSrNy0stciwoiDY2MAIqsDQ0M7SIVQhw8ixJzXXOz8lJTS7JzM8LTi0qy0xOLVJIzgeq
BwsppGQWQ3mpKXpcAFBLAwQUAAIACACXZpNNVFaizWQAAABsAAAAVgAcAGh0dHAvdGVzdHMvc2Vj
dXJpdHkvY2xpcGJvYXJkL2NvcHktcGFzdGUtaHRtbC1hY3Jvc3Mtb3JpZ2luLXN0cmlwcy1tc28t
bGlzdC1zdGRlcnIudHh0VVQJAAOdrxpccp4aXHV4CwABBPUBAAAEFAAAADMyMLTQNTTSNbRUMDSy
MjWyMjHVMzO2VAhPTfLOLAlJLS4JKs3LSy1yLCiINjG1MDO0MrY0NjAzjFUIcPIsSc11zs/JSU0u
yczPC04tKstMTi1SSM4HagALKaRkFkN5qSl6XABQSwMEFAACAAgAl2aTTRLR2A9kAAAAbAAAAFoA
HABodHRwL3Rlc3RzL3NlY3VyaXR5L2NsaXBib2FyZC9jb3B5LXBhc3RlLWh0bWwtY3Jvc3Mtb3Jp
Z2luLWlmcmFtZS1hY3Jvc3Mtb3JpZ2luLXN0ZGVyci50eHRVVAkAA56vGlx1nhpcdXgLAAEE9QEA
AAQUAAAAMzIwtNA1NNI1tFQwNLIyNbIyMdMzMjBQCE9N8s4sCUktLgkqzctLLXIsKIg2MbUwM7Qy
MTA1MjaOVQhw8ixJzXXOz8lJTS7JzM8LTi0qy0xOLVJIzgdqAAsppGQWQ3mpKXpcAFBLAwQUAAIA
CACYZpNNyCBUFWQAAABsAAAAWwAcAGh0dHAvdGVzdHMvc2VjdXJpdHkvY2xpcGJvYXJkL2NvcHkt
cGFzdGUtaHRtbC1jcm9zcy1vcmlnaW4taWZyYW1lLWluLXNhbWUtb3JpZ2luLXN0ZGVyci50eHRV
VAkAA5+vGlx1nhpcdXgLAAEE9QEAAAQUAAAAMzIwtNA1NNI1tFQwNLIyNbIyMdOzNDJSCE9N8s4s
CUktLgkqzctLLXIsKIg2MbUwM7QytjQ2MDOJVQhw8ixJzXXOz8lJTS7JzM8LTi0qy0xOLVJIzgdq
AAsppGQWQ3mpKXpcAFBLAwQUAAIACACYZpNNLbIlZGQAAABsAAAAUwAcAGh0dHAvdGVzdHMvc2Vj
dXJpdHkvY2xpcGJvYXJkL2NvcHktcGFzdGUtdXJsLWFjcm9zcy1vcmlnaW4tc2FuaXRpemVzLXVy
bC1zdGRlcnIudHh0VVQJAAOfrxpcdp4aXHV4CwABBPUBAAAEFAAAADMyMLTQNTTSNbRUMDSyMjWy
MjHXMzQ1UAhPTfLOLAlJLS4JKs3LSy1yLCiINjG1MDO0MrY0MTExj1UIcPIsSc11zs/JSU0uyczP
C04tKstMTi1SSM4HagALKaRkFkN5qSl6XABQSwMECgAAAAAAAl2TTQAAAAAAAAAAAAAAACoAHABo
dHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9VVAkAA5SeGlzetBpcdXgL
AAEE9QEAAAQUAAAAUEsDBAoAAAAAAPFck00AAAAAAAAAAAAAAABCABwAaHR0cC90ZXN0cy9zZWN1
cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvYmxvY2stYWxsLW1peGVkLWNvbnRlbnQvVVQJAAN1
nhpc3rQaXHV4CwABBPUBAAAEFAAAAFBLAwQUAAIACACYZpNNrLwbfIwAAACxAAAAZwAcAGh0dHAv
dGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L2Jsb2NrLWFsbC1taXhlZC1jb250
ZW50L2luc2VjdXJlLWNzcy1pbi1tYWluLWZyYW1lLXN0ZGVyci50eHRVVAkAA6CvGlx1nhpcdXgL
AAEE9QEAAAQUAAAALY3BDoIwEETvfsXeOEGLFw03JcSLikm/oKyb0Fjbprsk8vcikknmNPNe299N
f+3g1hlzunQNnH3EFz3h7T5LYwxCQWAUSY1S9f5Q6SV1c9RaKyacspNZreP2v1WZOE4ZiRXL7KlC
ZhgI7cQExfDDl9b7cv2Um6AAmxLZzOACyEiwwcBsCnhE73Cudl9QSwMECgAAAAAA81yTTQAAAAAA
AAAAAAAAAEQAHABodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS91cGdy
YWRlLWluc2VjdXJlLXJlcXVlc3RzL1VUCQADep4aXN60Glx1eAsAAQT1AQAABBQAAABQSwMEFAAC
AAgAmmaTTfyq4XWNAAAAnQAAAH4AHABodHRwL3Rlc3RzL3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0
eVBvbGljeS91cGdyYWRlLWluc2VjdXJlLXJlcXVlc3RzL3VwZ3JhZGUtcmVkaXJlY3QtaHR0cHMt
dG8taHR0cC1zY3JpcHQtaW4taWZyYW1lLXN0ZGVyci50eHRVVAkAA6SvGlx6nhpcdXgLAAEE9QEA
AAQUAAAAHcfBCoIwGADge0+xY0EuN2xMr1oEiUQzOkSHpX8x3PbLHPX6WfBdPp4ymTCesJwwXmx/
aCok6dBRPY4W6BUeRxNpA/GDYTD+RSt4g8XRgY+3TDDBiyyVsztp1OVcK5gmg37zT4neQxfnk0Pb
nohF3ZOnNhZ6shzKvYoBtNuFgKFCp41Xql6TJJdMrBZfUEsDBBQAAgAIAKtmk01jqqxsggAAAKgA
AABAABwAaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kveHNsLWFsbG93
ZWQtc3RkZXJyLnR4dFVUCQADwq8aXJSeGlx1eAsAAQT1AQAABBQAAAAtjUEKwzAMBO95hV4QO72k
+BWFviC4G2JQLCMppf59TSl7WobZzXK2wpsXqQRV0UR7YdDh3lIIy22d48iS7jHGYMiXFu8hS3VU
f/77Q7jkHhQml2ZYMO+M+WNMXCpoJTDOIdAP2AH4NGh6Q21cJ5LKnZY50o7NrzFEm4Lsak3U8Zq+
UEsDBBQAAgAIAKxmk01jqqxsggAAAKgAAABSABwAaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50
U2VjdXJpdHlQb2xpY3kveHNsLXVuYWZmZWN0ZWQtYnktc3R5bGUtc3JjLTItc3RkZXJyLnR4dFVU
CQADw68aXJSeGlx1eAsAAQT1AQAABBQAAAAtjUEKwzAMBO95hV4QO72k+BWFviC4G2JQLCMppf59
TSl7WobZzXK2wpsXqQRV0UR7YdDh3lIIy22d48iS7jHGYMiXFu8hS3VUf/77Q7jkHhQml2ZYMO+M
+WNMXCpoJTDOIdAP2AH4NGh6Q21cJ5LKnZY50o7NrzFEm4Lsak3U8Zq+UEsDBBQAAgAIAKBmk01e
6/HazQAAACoCAABCABwAaHR0cC90ZXN0cy9zZWN1cml0eS9jcm9zcy1vcmlnaW4tY2FjaGVkLWlt
YWdlcy1wYXJhbGxlbC1zdGRlcnIudHh0VVQJAAOsrxpcgJ4aXHV4CwABBPUBAAAEFAAAAMWQsY7C
MBBE+/uKbaAzXkJxUSSEIivQwKXIF/gcQyxMNrIdofw9TiIoED3arWa1b0Yjyr+qPBZwKqoqPxQZ
lM5cTAtNCF3GuSUlbUM+ZCmmCMZDSwGktXTXNfwPkCulvWeC2uDIsny8sJmx+hHvcCHb8d+SrMHc
5EU/fdbJ7wrjrCcf7rXqnQkDd9pT76IFnzyZOTOa4V3T7SZNSNXo5axuR9xiky+SfdxX+KikiLis
tZXDNkGEutcQCOSUHtScHiJIXf2H3N8vBb9eygNQSwMECgACAAAAp2aTTXZvmFJFAAAARQAAAE8A
HABodHRwL3Rlc3RzL3NlY3VyaXR5L2ZyYW1lLWxvYWRpbmctdmlhLWRvY3VtZW50LXdyaXRlLWFz
eW5jLWRlbGVnYXRlcy1zdGRlcnIudHh0VVQJAAO5rxpcip4aXHV4CwABBPUBAAAEFAAAAENPTlNP
TEUgTUVTU0FHRTogbGluZSAxOiBOb3QgYWxsb3dlZCB0byBsb2FkIGxvY2FsIHJlc291cmNlOiBh
YmUucG5nClBLAwQKAAIAAACnZpNNbrPyc0YAAABGAAAAPwAcAGh0dHAvdGVzdHMvc2VjdXJpdHkv
ZnJhbWUtbG9hZGluZy12aWEtZG9jdW1lbnQtd3JpdGUtc3RkZXJyLnR4dFVUCQADua8aXIqeGlx1
eAsAAQT1AQAABBQAAABDT05TT0xFIE1FU1NBR0U6IGxpbmUgNTU6IE5vdCBhbGxvd2VkIHRvIGxv
YWQgbG9jYWwgcmVzb3VyY2U6IGFiZS5wbmcKUEsDBBQAAgAIALZmk03KtAlcIgAAADoAAABPABwA
aHR0cC90ZXN0cy9zZWN1cml0eS93ZWJhdWRpby1yZW5kZXItcmVtb3RlLWF1ZGlvLWFsbG93ZWQt
Y3Jvc3NvcmlnaW4tc3RkZXJyLnR4dFVUCQAD168aXLmeGlx1eAsAAQT1AQAABBQAAACzs7OzU0gr
SsxNDc6sSnXOSMxLT01RsFUwMbA047LDJwkAUEsDBBQAAgAIALdmk03KtAlcIgAAADoAAABSABwA
aHR0cC90ZXN0cy9zZWN1cml0eS93ZWJhdWRpby1yZW5kZXItcmVtb3RlLWF1ZGlvLWJsb2NrZWQt
bm8tY3Jvc3NvcmlnaW4tc3RkZXJyLnR4dFVUCQAD2a8aXLueGlx1eAsAAQT1AQAABBQAAACzs7Oz
U0grSsxNDc6sSnXOSMxLT01RsFUwMbA047LDJwkAUEsDBBQAAgAIAL1mk01gS2YQkQAAAPsBAABF
ABwAaHR0cC90ZXN0cy9zZWN1cml0eS94c3MtREVOSUVELXhzbC1kb2N1bWVudC1zZWN1cml0eU9y
aWdpbi1zdGRlcnIudHh0VVQJAAPmrxpcxp4aXHV4CwABBPUBAAAEFAAAAO2OMQ6DMAxFd07hC4QE
llaZYejSngEFUyKZJLKdCm5fOvQGHau/vq/3Qt5KpEljToDMmT0skRBW1eKt7fpL6851/uqcs4Kh
ctTD7iJmGO+3cTC7kJlzqBsmNV/gwfEZU7tvBBQTQg9I+CFA9CCUFVGb8+lfyHK6PeREB3StgwUn
rYwCEyNILSWz4tyEf+iPQ99QSwMECgAAAAAAMV2TTQAAAAAAAAAAAAAAABoAHABodHRwL3Rlc3Rz
L3htbGh0dHByZXF1ZXN0L1VUCQAD7p4aXN60Glx1eAsAAQT1AQAABBQAAABQSwMEFAACAAgAq2aT
TZHj+aUXAQAAtAIAAE4AHABodHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L2FjY2Vzcy1jb250cm9s
LXByZWZsaWdodC1jcmVkZW50aWFsLWFzeW5jLXN0ZGVyci50eHRVVAkAA8GvGlyUnhpcdXgLAAEE
9QEAAAQUAAAA3ZC/TsMwEMZ3nsIPgOO/SexsqZ0uIJYKMSAGJ3XbU5M4clxQ355EBSZWFpY73ac7
/e77OGUKM46ZRoxXuag4y6gUqAtD5qap99mLbx8gZU8+fYR4hvGYWf/u+zANfkyvMldlXgktuJJv
yMJ8NiGcwe9SiO7oUXdy43E5QlPoobuiQwwD4igFRO8XyLqKDtD76lYJIc+zjzNpL9Dv25DII7TR
xSv5gvpITIh+B8Oldwtj1aHzMxHbraa0FtgURmNpa4o3rFFYmboxeSkKqyTZu+SW+zE5GFeKXed6
sQmdSxBGopUqrdwwXGpVYGlKgXWtGryljVbM1htZmJ+Xbk7n7561MC7yzdR8x39LtmB/myxdk+X/
PNlPUEsDBBQAAgAIAKtmk03r6Vn4JwEAAGgFAABNABwAaHR0cC90ZXN0cy94bWxodHRwcmVxdWVz
dC9hY2Nlc3MtY29udHJvbC1wcmVmbGlnaHQtY3JlZGVudGlhbC1zeW5jLXN0ZGVyci50eHRVVAkA
A8GvGlyUnhpcdXgLAAEE9QEAAAQUAAAA7ZK/TsMwEMZ3nsIPgOO/SexsqZ0uIJYKMSAGJ3WL1cSO
HBfUtydRgYkNdWqXO93pTt99Px3FREBCIZGA0CpnFSUZYQR0YcjMOPY2e7Htg0vZk02fIR6c32fa
ftg+jIP16ZXnoswrJhkV/A1oNx1UCAdnNylEs7egezd+Py+BMfSuO4FdDAOgIAWA72eRZRTsXG+r
c0QIPU82Tqg9un7bhoQeXRtNPKFvURuRCtFu3HDszayx9F1nJ8TWa4lxzaAqlIRc1xiuSCOgUHWj
8pIVWnC0NcnM+z4Z5xcVvdT1bNN1JrngkRSi1HxFYClFAbkqGZS1aOAaN1IQXa94oX5POjudfnLW
Oj+3z6amO/oXWS4uSxYvZOkVkqVM3H72MmR5efvZf5P9AlBLAwQUAAIACACrZpNNXy3hJBcBAAC0
AgAASwAcAGh0dHAvdGVzdHMveG1saHR0cHJlcXVlc3QvYWNjZXNzLWNvbnRyb2wtcHJlZmxpZ2h0
LWhlYWRlcnMtYXN5bmMtc3RkZXJyLnR4dFVUCQADwa8aXJSeGlx1eAsAAQT1AQAABBQAAADdkL9O
wzAQxneewg+A479J7GypnS4glgoxIAYnddtTkzhyXFDfnkQFJlYWljvdpzv97vs4ZQozjplGjFe5
qDjLBKOoC0Pmpqn32YtvHyBlTz59hHiG8ZhZ/+77MA1+TK8yV2VeCS24km/Iwnw2IZzB71KI7uhR
d3LjcTlCU+ihu6JDDAPiKAVE7xfIuooO0PvqVgkhz7OPM2kv0O/bkMgjtNHFK/mC+khMiH4Hw6V3
C2PVofMzEdutprQW2BRGY2lrijesUViZujF5KQqrJNm75Jb7MTkYV4pd53qxCZ1LEEailSqt3DBc
alVgaUqBda0avKWNVszWG1mYn5duTufvnrUwLvLN1HzHf0tWsL9Nlq7J8n+e7CdQSwMEFAACAAgA
rmaTTQ5r2PYGAQAAWgEAAEAAHABodHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L2Nyb3NzLW9yaWdp
bi1jb29raWUtc3RvcmFnZS1zdGRlcnIudHh0VVQJAAPHrxpcmJ4aXHV4CwABBPUBAAAEFAAAAD2P
zW6DMBCE730KP0CN8Q9gcyM2XFr1ElU9VD0Y4qQrwEbGaZW3LyhtL7va0Y6+GZZTiSnDVCHK6oLX
rMoKxtAQ5swuy+SyN9c/QcpeXPoOcQR/yYz7clNYZufTuyhkVdRccSbFBzKwjjqEEdwxhWgvDg2f
1l82E1rCBMMNnWOYEUMpoPxxg+yv6AyTq++TEPK6uriS/grTqQ+JPEMfbbyRX6iLRIfojjBfJ7sx
dh0GtxLedSrPG451qRUWpsnxgbYSS920uqh4aaQgJ5vs5vfJgt8pZr+brSYMNkHwRElZGXGguFKy
xEJXHKtGtrjLWyWpaQ6i1P+R7k3Xv5314Df5Xmp9+AFQSwMEFAACAAgArmaTTUnVPq8GAQAAWgEA
AEYAHABodHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L2Nyb3NzLW9yaWdpbi1uby1jcmVkZW50aWFs
LXByb21wdC1zdGRlcnIudHh0VVQJAAPHrxpcmJ4aXHV4CwABBPUBAAAEFAAAAD2PzU7DMBCE7zyF
HwDH8U9iO7fUTi8gLhXigDg4qVtWTezIcUF9exIVuOxqRzv6ZlhJFaYMU40oayreMFlIxtAQp8LN
8+iLN98/QS5efP6O6QLhXFj/5cc4Tz7kd1EpWTVcc6bEB7KwXEyMF/CHHJM7ezR8unBeTWiOIww3
dEpxQiXKEbHHFbK9ohOMvrlPQsjr4tNC+iuMxz5m8gx9culGfqE+EROTP8B0Hd3K2HQY/EL4fq/L
suXY1EZjYdsS72insDJtZyrJa6sEObrsVn/IDsJGsdvdrjVhcBliIFopacWOYqlVjYWRHOtWdXhf
dlpR2+5Ebf4j3Zsuf7voIazyvdTy8ANQSwMEFAACAAgA1GaTTcdmDm7kAAAAkwEAAEYAHABodHRw
L3Rlc3RzL3htbGh0dHByZXF1ZXN0L3JlZGlyZWN0LWNyb3NzLW9yaWdpbi1zeW5jLWRvdWJsZS1z
dGRlcnIudHh0VVQJAAMQsBpc7p4aXHV4CwABBPUBAAAEFAAAAI2QwWrDMBBE7/mK/QHLTg5tEZRi
jGkPSQ3xpVdVXiLRrdaVZFr/feVIh14CRRfBLPNmphtex+HYw6kfx/a5l0DWIRzuJHSeQ6jY24t1
4HGyHnW07CAymBhnWdfEWpHhEOVD0zT1zydtgsevBUOsPQZevMaQfjOtIskwobM4wfta7Idsfy6n
MBrlrbvAzGT1KqHohbc/3Ismvf2VBzaA4wiKiL+zaasTLlQdu+iZqnZTCkPsuptV307Hl0Q45+Cg
ldt8idV0o+nfankYMZv5afH0+K8VFtxWVNe0oHNa0Ab1RxC7X1BLAwQKAAAAAAAMXZNNAAAAAAAA
AAAAAAAACQAcAGh0dHAvd3B0L1VUCQADp54aXN60Glx1eAsAAQT1AQAABBQAAABQSwMECgAAAAAA
BV2TTQAAAAAAAAAAAAAAABAAHABodHRwL3dwdC9iZWFjb24vVVQJAAOZnhpc3rQaXHV4CwABBPUB
AAAEFAAAAFBLAwQKAAAAAAAKXZNNAAAAAAAAAAAAAAAAFQAcAGh0dHAvd3B0L2JlYWNvbi9jb3Jz
L1VUCQADpJ4aXN60Glx1eAsAAQT1AQAABBQAAABQSwMEFAACAAgArWaTTar2K48FAQAAWgEAADUA
HABodHRwL3dwdC9iZWFjb24vY29ycy9jb3JzLXByZWZsaWdodC1jb29raWUtc3RkZXJyLnR4dFVU
CQADxa8aXJmeGlx1eAsAAQT1AQAABBQAAAA9j8lOxDAQRO98hT8Ax/GS9RZnuYC4jBAHxMHJ9IRW
EjtyPKD5exINcOlWl7r0qkTMc8oF5QXhokxkKWQkU0UGt0RmXWeI3qB/whC9QPh2fkI7Rg18wezW
BWx4V1mseKk4L0T+QRrcptq5CeEUnDcjkOHT2HE3kdXNONzIxbuFCBIciR93yPFKLjhDeZ+MsdcN
/Mb6K87n3gX2jL03/sZ+oeBZ7TyccLnOZmccOg6wMV3VaZF2Ka27WFHV1S3NpY5pwdukEY2WWSfZ
2QSz+20waA9Kc9zVXhMHE9BZFtdpqquM0yzRkqq2yGjRtpp2VZW3XEnRCf0f6d50+9tRj3aX76W2
hx9QSwMEFAACAAgArmaTTTZOORcGAQAAWgEAAD8AHABodHRwL3dwdC9iZWFjb24vY29ycy9jb3Jz
LXByZWZsaWdodC1yZWRpcmVjdC1mYWlsdXJlLXN0ZGVyci50eHRVVAkAA8evGlycnhpcdXgLAAEE
9QEAAAQUAAAAPY/NboMwEITvfQo/QI1/cABzw/xcWvUSVT1UPRiyoauAjYzTKm9fUNpedrWjHX0z
kouCCkmFJkKWh7SUWcK5JoOfE7ssEyRv0D9hTF4gfvtwQTcmDXzB5JcZXHxXOVeiVEJoWXyQBtdL
7f0F4Rh9sCOQ4dO6cTORxU843Mg5+JlwEj2RjxtkfyVnnKC8T8bY6wphZf0Vp1PvI3vGPthwY79Q
CKz2AY44Xye7MXYdB1iZqepMZ11G644rqrq6pUVqONWiPTSyMWnepexko938Llp0O6XZ72qriYON
6B3jdZaZKhc0P5iUqlbnVLetoV1VFa1Qqeyk+Y90b7r+7aRHt8n3UuvDD1BLAwQUAAIACACwZpNN
Uopu8FoBAAA2AwAANQAcAGh0dHAvd3B0L2JlYWNvbi9jb3JzL2NvcnMtcmVkaXJlY3QtZmFpbHVy
ZS1zdGRlcnIudHh0VVQJAAPLrxpcpJ4aXHV4CwABBPUBAAAEFAAAANWSPW+DMBCG9/4KL7DxDSEg
oYjSpKrahigMHStjnGCJ+pBtVOXf1wTC1KHtVtnDqzv53ufuXJT7qnzZotdtVeWP2xTdU0yAo/zw
hAjmHBTqADeoVapPHcfzY9vVx0vXa9d13mj9zJRTX984gkoYBKFSq4YJSpTdXzY3/S4VVoPMAjc2
GyZx18FnAUKW/EhlD1zSPaiDoKeOnVtldkCwYsCz0dkIcsPf6bv468hIoEMTgxYThRYLxxK0+ltd
TWQEu8XcCB48w1+Rj0arftBlVmyU/ikOkySqrYgErhVGq8hKaOxb9ERJmFAchEFko0KAlBYIdmYc
3frUzEjBLwf2DeZmgcw8UwNmGs9kTfYTNPNvQ8/+wdRNAgNXmYcayhltUH2Z11BOazjOGKhqsWD8
jHroGLmkaM7Pexkb7VqQ6roXxCQav/qVcCqaE92KtArgSkBn5WNm9rDvvgBQSwMECgAAAAAADl2T
TQAAAAAAAAAAAAAAABcAHABodHRwL3dwdC9tZWRpYXJlY29yZGVyL1VUCQADrJ4aXN60Glx1eAsA
AQT1AQAABBQAAABQSwMEFAACAAgAr2aTTcq0CVwiAAAAOgAAAEwAHABodHRwL3dwdC9tZWRpYXJl
Y29yZGVyL01lZGlhUmVjb3JkZXItQVYtYXVkaW8tdmlkZW8tZGF0YWF2YWlsYWJsZS1zdGRlcnIu
dHh0VVQJAAPJrxpcp54aXHV4CwABBPUBAAAEFAAAALOzs7NTSCtKzE0NzqxKdc5IzEtPTVGwVTAx
sDTjssMnCQBQSwMEFAACAAgAr2aTTSQuyJkiAAAAdAAAAD0AHABodHRwL3dwdC9tZWRpYXJlY29y
ZGVyL01lZGlhUmVjb3JkZXItZGF0YWF2YWlsYWJsZS1zdGRlcnIudHh0VVQJAAPKrxpcqZ4aXHV4
CwABBPUBAAAEFAAAALOzs7NTSCtKzE0NzqxKdc5IzEtPTVGwVTAxsDTjsqONJABQSwMEFAACAAgA
sGaTTSQuyJkiAAAAdAAAAEIAHABodHRwL3dwdC9tZWRpYXJlY29yZGVyL01lZGlhUmVjb3JkZXIt
bW9jay1kYXRhYXZhaWxhYmxlLXN0ZGVyci50eHRVVAkAA8uvGlyqnhpcdXgLAAEE9QEAAAQUAAAA
s7Ozs1NIK0rMTQ3OrEp1zkjMS09NUbBVMDGwNOOyo40kAFBLAwQUAAIACACwZpNNyrQJXCIAAAA6
AAAAPQAcAGh0dHAvd3B0L21lZGlhcmVjb3JkZXIvTWVkaWFSZWNvcmRlci1vbnJlbW92ZXRyYWNr
LXN0ZGVyci50eHRVVAkAA8yvGlysnhpcdXgLAAEE9QEAAAQUAAAAs7Ozs1NIK0rMTQ3OrEp1zkjM
S09NUbBVMDGwNOOywycJAFBLAwQUAAIACAChZZNN8PXVtaIFAABNEAAACgAcAGh0dHBkLmNvbmZV
VAkAA86tGlyxtBpcdXgLAAEE9QEAAAQUAAAArVdtb9s2EP6uX0G4MLAVk5y4SesVgQHPcZYsSZ1Z
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
dGVLZXkvVVQJAAMjnxpc3rQaXHV4CwABBPUBAAAEFAAAAFBLAwQUAAIACADsZpNNjzQacEQAAACg
CQAAXwAcAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvV2ViQ3J5cHRvQVBJL2dlbmVy
YXRlS2V5L2ZhaWx1cmVzX1JTQS1PQUVQLmh0dHBzLmFueS1zdGRlcnIudHh0VVQJAAM7sBpcFp8a
XHV4CwABBPUBAAAEFAAAAHPOL81JUcjLL1FIT81LLUosSVVIVMhOrVQoSMws0lEoLkksKS1W0DUx
NjDhch5VO6p2VO2o2lG1o2pH1Y6qHVVLc7UAUEsDBBQAAgAIAO1mk02PNBpwRAAAAKAJAABmABwA
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9XZWJDcnlwdG9BUEkvZ2VuZXJhdGVLZXkv
ZmFpbHVyZXNfUlNBLU9BRVAuaHR0cHMuYW55Lndvcmtlci1zdGRlcnIudHh0VVQJAAM9sBpcGZ8a
XHV4CwABBPUBAAAEFAAAAHPOL81JUcjLL1FIT81LLUosSVVIVMhOrVQoSMws0lEoLkksKS1W0DUx
NjDhch5VO6p2VO2o2lG1o2pH1Y6qHVVLc7UAUEsDBBQAAgAIAO5mk01UAsmyNgAAAMACAABeABwA
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9XZWJDcnlwdG9BUEkvZ2VuZXJhdGVLZXkv
ZmFpbHVyZXNfUlNBLVBTUy5odHRwcy5hbnktc3RkZXJyLnR4dFVUCQADP7AaXBufGlx1eAsAAQT1
AQAABBQAAABzzi/NSVHIyy9RSE/NSy1KLElVSFTITq1UKEjMLNJRKC5JLCktVtA1MTYw4XIeVTuq
dpCpBQBQSwMEFAACAAgA72aTTVQCybI2AAAAwAIAAGUAHABpbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL1dlYkNyeXB0b0FQSS9nZW5lcmF0ZUtleS9mYWlsdXJlc19SU0EtUFNTLmh0dHBz
LmFueS53b3JrZXItc3RkZXJyLnR4dFVUCQADQbAaXB6fGlx1eAsAAQT1AQAABBQAAABzzi/NSVHI
yy9RSE/NSy1KLElVSFTITq1UKEjMLNJRKC5JLCktVtA1MTYw4XIeVTuqdpCpBQBQSwMEFAACAAgA
8GaTTVQCybI2AAAAwAIAAGgAHABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL1dlYkNy
eXB0b0FQSS9nZW5lcmF0ZUtleS9mYWlsdXJlc19SU0FTU0EtUEtDUzEtdjFfNS5odHRwcy5hbnkt
c3RkZXJyLnR4dFVUCQADQ7AaXCCfGlx1eAsAAQT1AQAABBQAAABzzi/NSVHIyy9RSE/NSy1KLElV
SFTITq1UKEjMLNJRKC5JLCktVtA1MTYw4XIeVTuqdpCpBQBQSwMEFAACAAgA8WaTTVQCybI2AAAA
wAIAAG8AHABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL1dlYkNyeXB0b0FQSS9nZW5l
cmF0ZUtleS9mYWlsdXJlc19SU0FTU0EtUEtDUzEtdjFfNS5odHRwcy5hbnkud29ya2VyLXN0ZGVy
ci50eHRVVAkAA0WwGlwjnxpcdXgLAAEE9QEAAAQUAAAAc84vzUlRyMsvUUhPzUstSixJVUhUyE6t
VChIzCzSUSguSSwpLVbQNTE2MOFyHlU7qnaQqQUAUEsDBAoAAAAAAJ1dk00AAAAAAAAAAAAAAAAm
ABwAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9mZXRjaC9VVAkAA7mfGlzetBpcdXgL
AAEE9QEAAAQUAAAAUEsDBAoAAAAAAJldk00AAAAAAAAAAAAAAAAqABwAaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9mZXRjaC9hcGkvVVQJAAOxnxpc3rQaXHV4CwABBPUBAAAEFAAAAFBL
AwQKAAAAAACaXZNNAAAAAAAAAAAAAAAAMAAcAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvZmV0Y2gvYXBpL2Jhc2ljL1VUCQADs58aXN60Glx1eAsAAQT1AQAABBQAAABQSwMEFAACAAgA
N2eTTfVKaB0wAQAAGg8AAE8AHABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZldGNo
L2FwaS9iYXNpYy9ibG9jay1taW1lLWFzLXNjcmlwdC1zdGRlcnIudHh0VVQJAAPJsBpcpp8aXHV4
CwABBPUBAAAEFAAAAN2WwWrDMAyG73sKnXZL3d1KoIxRwhgsKyxP4DlKopLEJlbS5u2XNawdJSk7
bXbP/2/8ycj6tdm+JdvXCOIoSZ6eoxDeMWstpsAa8ICqZYSC2YRClFrJstCWw9VquRQZsiqENCQa
tLptFFphVUOGgz1xERQoU2wWpn9UumaseV3rOsDKcH9fUYVrxgMLZTuQFsaD8IFKDrfDSSILtWaQ
34b4JY6Ae4OLu83/kcs2JS0kZdkE+w/RZfp9IRk7bGYrOBlcrqKilGYrOIpu0neU4tAk3RT8WXOZ
PSvn2b80l9mv9P6Fwc0qqJI5ipymxs9Zc5l9ZzCfhT+KjtD7mVc3k1VjQ1z5rxcGV9/fm5zyf0/w
NWX9Tylfd4SbSCevdoI/mvAl1QgPISSjtdQDR/pb2ydQSwMEFAACAAgAPGeTTb0Xy/EZAQAAWwQA
AE8AHABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZldGNoL2FwaS9iYXNpYy9tb2Rl
LXNhbWUtb3JpZ2luLmFueS1zdGRlcnIudHh0VVQJAAPTsBpcr58aXHV4CwABBPUBAAAEFAAAANWS
0UrDMBSG7/cU52ZeSbN2A2dhSJmdCNOJZQ8Q0tQG05yQnIKPbzK1IsKgQxFJSMJJ8v35+bPe3Ve7
bQl3ZVUVN2UOWhkJaZbDRpJooXi4BcGNQQKNvIaWyPqcMY2C6xY95ZeLxZw18TDjVjEnPfZOSM8I
bUIvlEzWJ2gEiTS7SGahpflyOZuNlNgbzxsJnEh2loDwDb1/3J5g4SoeJYVmdbg7nRfTbBP6QAiV
yAilAyXMgRPGgRTW76wzgb2hVQqNww7QqSdlPhx/vig6TuAaO66MPwfrkFCg9sBNDRYdeeh6T9Dx
IJdMvvv/qfR+xXrdy5gIF2Hbg0BDDjWIVopnPz7LUV/lq5/BzgAIlYj4F0n+ufHjOb4CUEsDBBQA
AgAIAEBnk036/AdnqgAAAPMDAABLABwAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9m
ZXRjaC9hcGkvYmFzaWMvc2NoZW1lLWFib3V0LmFueS1zdGRlcnIudHh0VVQJAAPXsBpcs58aXHV4
CwABBPUBAAAEFAAAAO3OuQ3CQBBG4Zwq/goQkCA5Q5Y5JA5LdgPr8WCvWGZgDyS6xxQAJAQENPDe
lx/21WFbYFdU1WJVZHBWGNNJhtxrCFBvOyvwfE0cYoDxDBV3R0iXi/rILY7qsa7rcjzKX8aWHKnH
otyAjIhGODUtTKMpZo0zckKbGFFhiHjYkkr06kA90ym8K/+Z32LO5l9kPmPvmFZuxtl2THr+fexA
Otru951JLKmXD9AHUEsDBAoAAAAAAJ1dk00AAAAAAAAAAAAAAAAvABwAaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9mZXRjaC9hcGkvY29ycy9VVAkAA7qfGlzetBpcdXgLAAEE9QEAAAQU
AAAAUEsDBBQAAgAIADtnk00LAykSEgIAAHMLAABJABwAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9mZXRjaC9hcGkvY29ycy9jb3JzLW9yaWdpbi5hbnktc3RkZXJyLnR4dFVUCQAD0rAa
XLGfGlx1eAsAAQT1AQAABBQAAADd1l1r2zAUBuD7/QrdtHcn1vdHIYzQpd1gWwrZrot0JMWhbhxi
l63/fnLCunUUmq6MkWBf2Uav9fCa4/PZ5/ns45R8ms7nk8vpGZltlovlitR9vz6rqqZF39Rt159Z
SylZdmTV9sQ3TfstRRLuyQQxdR2ct6t+0zYwGe7Abo3Rm/M/F79IPdZkcvWBoF8NKzWtjz+zGDcj
Wg62zary8Gzl18tqk7r2blNyqvUm5Wa5qPvR+v5t396k1TgyjpzHABGDA0kzAxukgJS0UuWS4j6c
3vrv136RxvS03b7aeIg8EZMTflHOh+ByZYg+3e7v+jb1dRu78eX0C4l3ifQt8dvdEtztlmCd8KZ7
Yp//D/FRFtsXUTpqNWMSkuYFkVkE67kESy0NgSmtMT+D+BC8Q2SHjPioiXsjZqaTkpKB50aB1JKD
R4mQrYrBsSCEjS9r4uEido8UnZRiX0WqqMxcO/BRWZDC01JFJcEpR5XnOVurn1bsnmQcsg+a8VfY
Sxi1MUZwH4Eln0sZdWEMEQtost4lL2RwzzH+/kkfNONfD5eEGJIUZZqopIudCxAclgmjVGEMYejo
64bL1Wx+9IoqZGFkSuA8UpBx6CJmB1nmYFmUVmf6OsX308m7Y1c0gpksRABkvIwXhxpsSgaMdS6g
YQGjeGUXvx59FSWNNmJUQL3jUAaNBW+EAl+ayZ2zhdj867/FH1BLAwQUAAIACABAZ5NNU+Oo8/sC
AAAwFgAAUwAcAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvYXBpL2NvcnMv
Y29ycy1wcmVmbGlnaHQtc3RhdHVzLmFueS1zdGRlcnIudHh0VVQJAAPYsBpctp8aXHV4CwABBPUB
AAAEFAAAANWXT4vcRhDF7/kUOu2tdvp/Vy8swZhNCCSxYT/AUlVd7Vk8GQ0jDXG+fWoN8SE55KCL
xRw0CKlF/3j93qv3H35//vDr0/Tb0/Pzu5+fHqaPVx2n10/HdbrqcpnPi06vy3Se12m5ieiyjNvp
h/f/fusnXeU4vfv4yyR0fnv4NFOfjut6eTgcfKj3zn7+AdG5w3h79kCX14N9Yb5dbdHD5Z+v3l/+
+nGdP+v5EV1F0ZLBjRIghaTANSD04HsYhCl3vvuDvrzQJ310d3Q6zX++HJW6XpfHLzBmWxi+rXv3
7d/LstJ6Wx6jc1O/6bTOE33d2CTzeb3Op0mOKp+X+//u8rth0+KQ7JqCVsmQoiQgHxNUEldbiFIi
bWPjd8vG15Zw0AAq3nSjtUAroUBOyFWENSbZxibslk3FmrlLgCIpQnI1AjoV4JRHT3avObeNTdyv
brxD8s0DuWZsKCEQswf1rSfsZFe/jU3ar264VnWoELs4SCkG4OHf2PRUquaoPLaxybtlEwUrsR0i
8dggZSVouQlEYU++kiJvzKmy3zPlIpnJKPj2lU1sYAmVLafY4qqWISNsY1N3y4Zj11zJQrvygDR8
AdQhEFzUTKWXrBv9BnfLRkvJzVntMwamG0EPDStCHV0biyU8b9JN2nH3SxoaejtEGCpb97OGjGY0
0DuLYfPRj7qNzX67X9fKJVi1KcIIqdpOkbopCNtAloxMG3Wz3+6XSXNWC6ZGyTJ8uGDdjwhEEbFj
okC4jc1+u19IXHMtDHGUBKmEapQsyLskK4Pc1bu2jc1+u18sFHpIA4o5jPlNjNCiySiV5rhkFM8b
dbPf7pdrV87ZgxObvu1M2axpMwSE2lvrgwLWTRmed+zFZrWCPSM47jZPdddtsrIq2HA4n72Feg7b
2OzXixN35xjNfP1bOtkpAi46DBX2Ia2VorqNzX69mNOowqOD5Gy6CZyAdRSIRMVbSnn2vI3Nfr24
cWmxyoA8cofUzJXb6DZwVrGCEyO6mLax+T8v/htQSwMEFAACAAgAQWeTTe2WTeKxAQAAIAcAAEwA
HABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZldGNoL2FwaS9jb3JzL2NvcnMtcHJl
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
AwQUAAIACAA7Z5NNRsWu5ZkAAAAWAwAAUgAcAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvZmV0Y2gvYXBpL3JlZGlyZWN0L3JlZGlyZWN0LW1vZGUtd29ya2VyLXN0ZGVyci50eHRVVAkA
A9GwGlywnxpcdXgLAAEE9QEAAAQUAAAAzc6xDoIwFIXh3ae4kyNFGSRNiDGEuCgMfQDTlItt0nCb
9hL07Q0Dky/Q7Uz/+dqhV8Ojg2en1O3eSeiJQXtPK47ABBNtGzREHF1Ew45mWK3zCJ706OY3WOYg
hfBktLeUWNZ1WYoJ2VihgxMREy3RYBJ7owjf675fiTUvqanK03FLbAcNUyj4w4c2H905a12Vte6S
ta7+1/0AUEsDBBQAAgAIAD1nk038lYMndQEAAA0FAABRABwAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9mZXRjaC9hcGkvcmVkaXJlY3QvcmVkaXJlY3QtdG8tZGF0YXVybC1zdGRlcnIu
dHh0VVQJAAPWsBpctJ8aXHV4CwABBPUBAAAEFAAAAO2SzU8CMRDF7/wVc8FoIru4+LnGGET8SFQI
K96H2eI27nY27RDFv94W8aBykHgzpsd23rz36+sN7rLBTR9u+1nWveyn0LPsXIutftQGrMq1VSSa
DQhDjoKpqBeJ6xK1OZ6gU/u721Q9vNLl0YySsaH5mZ4koz3IldEqh8l8qTh4VxwpxzNLCrICrTaP
UHOpaZ7CeHQD2oHSUigLCIZN6+r+fri4YAvERvxOB+RNKSMaSxc1el/tXyihArrDayA0hgVKxhwK
kTqN45IJy4KdpIeH7XY8DW9jrHVsl65c/JE4quenxNZthJmQ/ySEb3a6IX4zuVgAaHbO3hE0k95q
CDMVuCF5abeIYLkEKhQ9rTI/+ow7JH/2PDwN52cqr1WgBEohWICzmW39mMFan7ee77FxOFWAIqqq
JUwuNgb/62ydWq5g2byVPxbBOVehBNtQWxYmLh2gyX2JrDioZk6gQh8+anw3+ZeLvZMcRG1/dv6L
/ZtivwFQSwMECgAAAAAAnV2TTQAAAAAAAAAAAAAAAC4AHABpbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2ZldGNoL25vc25pZmYvVVQJAAO5nxpc3rQaXHV4CwABBPUBAAAEFAAAAFBLAwQU
AAIACABCZ5NNE0yuu6cAAACaAQAASAAcAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
ZmV0Y2gvbm9zbmlmZi9wYXJzaW5nLW5vc25pZmYtc3RkZXJyLnR4dFVUCQAD27AaXLmfGlx1eAsA
AQT1AQAABBQAAAC9j7sKwjAUhnef4se9jWPpJqWIYC1YB9eYnthASULOqZe3t4MFX0DX//LBV7XH
rj3UaOqu2+7qEieyE1MPCaAnmUkIg0gslRqD0eMQWMqi2GyUJTGD8oG9s1Yl4jAlQ7wkmXWJJdfs
GJrBJrkouJLRMx7rS1YFL+QlO78ilfi81njM45u7k4f2PZwwvoeYaT4I9AJs9k0NmZt8Vf1MZYqR
ktFM/9R5A1BLAwQUAAIACABCZ5NNNBeDSL4AAACuBAAAPwAcAGltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvZmV0Y2gvbm9zbmlmZi9zY3JpcHQtc3RkZXJyLnR4dFVUCQAD27AaXLmfGlx1
eAsAAQT1AQAABBQAAADdj0GKwkAQRfee4iPMUjvMSgIiEqIMTBSMC7dtWzEtsTukKhpvbwsKXkAX
Wderx3/JepWv/1NkaZ7Pl2mMDRUt0wHiQR2ZVgilSB0rVXmjq9KzxJNJFKmCxJTKeXa2KFRD7NvG
EKsTj+sbNINNY2vBnowORgx3o8Q7ISej7a2mGM/XIa4BPtoLOWh3gBXGOwjLARXolzD7y1JIuIwH
yWfWzx72aR8aul5E/PwuehEi1EloKeVc9SjnxN59KecOUEsDBBQAAgAIAEJnk03oTRSl0wAAABQJ
AABDABwAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9mZXRjaC9ub3NuaWZmL3N0eWxl
c2hlZXQtc3RkZXJyLnR4dFVUCQAD27AaXLmfGlx1eAsAAQT1AQAABBQAAADtkzFvwkAMhXd+hReU
CQ4xoUhVVaUBITVluA5dr4fTCzrsKDYl+fdNq45lJsPt1nvfJz0Xh1d7eCmhKq192pU5PDdHIFZo
XScIokNECYgKTiELqm1uTGTvYmDRfLNZrUyN6oMhFmrq2nQofOk8ivEiy3bI4AO9u4xhxASFtVDt
qxJ0aFHAdfjb5mLkKx7hGpAge18UTIqki7fxKoe/6Awagc/mC2k5KxL3De7HH8IHxV7n623Qc0wi
kxBJ9Pej78cF9UlhGq98EqYkMo1RJfx/8L8BUEsDBAoAAAAAANldk00AAAAAAAAAAAAAAAAlABwA
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL1VUCQADKqAaXN60Glx1eAsAAQT1
AQAABBQAAABQSwMECgAAAAAArl2TTQAAAAAAAAAAAAAAAC4AHABpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL2h0bWwvYnJvd3NlcnMvVVQJAAPXnxpc3rQaXHV4CwABBPUBAAAEFAAAAFBL
AwQKAAAAAACuXZNNAAAAAAAAAAAAAAAANgAcAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvaHRtbC9icm93c2Vycy9oaXN0b3J5L1VUCQAD158aXN60Glx1eAsAAQT1AQAABBQAAABQSwME
CgAAAAAArl2TTQAAAAAAAAAAAAAAAE0AHABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2h0bWwvYnJvd3NlcnMvaGlzdG9yeS90aGUtbG9jYXRpb24taW50ZXJmYWNlL1VUCQAD2J8aXN60
Glx1eAsAAQT1AQAABBQAAABQSwMEFAACAAgAUmeTTTn+SM9OAAAAfwAAAHsAHABpbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvYnJvd3NlcnMvaGlzdG9yeS90aGUtbG9jYXRpb24t
aW50ZXJmYWNlL2xvY2F0aW9uLXByb3RvY29sLXNldHRlci1ub24tYnJva2VuLXN0ZGVyci50eHRV
VAkAA/uwGlzYnxpcdXgLAAEE9QEAAAQUAAAAc/b3C/b3cVXwdQ0OdnR3tVLwyy9RSMzJyS9PTVEo
yVfIyU9MARLJiTkKRanF+aVFyalWCsXJRZkFJarGrlzO5GhPyknMy9bLKMnN4QIAUEsDBAoAAgAA
AFJnk00gwGwcQAAAAEAAAACBABwAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1s
L2Jyb3dzZXJzL2hpc3RvcnkvdGhlLWxvY2F0aW9uLWludGVyZmFjZS9sb2NhdGlvbi1wcm90b2Nv
bC1zZXR0ZXItbm9uLWJyb2tlbi13ZWlyZC1zdGRlcnIudHh0VVQJAAP7sBpc158aXHV4CwABBPUB
AAAEFAAAAENPTlNPTEUgTUVTU0FHRTogTm90IGFsbG93ZWQgdG8gbG9hZCBsb2NhbCByZXNvdXJj
ZTogYmxhbmsuaHRtbApQSwMECgAAAAAAbWeTTQAAAAAAAAAAAAAAAC8AHABpbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL1VUCQADLbEaXN60Glx1eAsAAQT1AQAA
BBQAAABQSwMECgAAAAAA2V2TTQAAAAAAAAAAAAAAAEAAHABpbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2VtYmVkZGVkLWNvbnRlbnQvVVQJAAMqoBpc3rQaXHV4
CwABBPUBAAAEFAAAAFBLAwQKAAAAAADZXZNNAAAAAAAAAAAAAAAAUwAcAGltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvZW1iZWRkZWQtY29udGVudC90aGUtaWZy
YW1lLWVsZW1lbnQvVVQJAAMqoBpc3rQaXHV4CwABBPUBAAAEFAAAAFBLAwQUAAIACAB8Z5NNdbyp
ok4BAADCAgAAfAAcAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRp
Y3MvZW1iZWRkZWQtY29udGVudC90aGUtaWZyYW1lLWVsZW1lbnQvc2FuZGJveC1hc2NpaS1jYXNl
LWluc2Vuc2l0aXZlLXN0ZGVyci50eHRVVAkAA0uxGlwqoBpcdXgLAAEE9QEAAAQUAAAAnZGxTsMw
EIb3PsUpS6YkLWIo2aCKWIAOYa8c+9pYdezId2n7WLwBC7wXjpsOiCIkJkv2/f6//7/V+qVeP1Xw
XNX1/WNVgtEWYbEoofLeeTi22iD0wpO2O+AWISVhVeNOKQhmr5uBsYRUGOOOGYkOM+c/3nbapqAJ
hAVtD8JoBZMMtkbs8tnqqu/N3f98P9+l1z3TfzwXt8vgWk+TQkokgoN2RrB2toQH4+QeFQjY+hAv
uEPSMvdlUYQXYVpHXC6X83kSBlw3/TBS/63IAV5DtPNYg1EU5cEvJJnwR3OrwAi5p1hF8q1tHcpO
fot4oadYEOAJ5TDmChVBehWqaLkzBWEnLGtJBXYNKoUqk84yWi4CQaYjcoYGu/GKhr53Ppxn4E3k
25w98/G/NKSTYiCM/MrJYdSlNEX/kTUufEp5WW2PvtOh2RGewDoGQs5nX1BLAwQKAAAAAABtZ5NN
AAAAAAAAAAAAAAAANQAcAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1h
bnRpY3MvZm9ybXMvVVQJAAMtsRpc3rQaXHV4CwABBPUBAAAEFAAAAFBLAwQKAAAAAABtZ5NNAAAA
AAAAAAAAAAAAQQAcAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRp
Y3MvZm9ybXMvY29uc3RyYWludHMvVVQJAAMtsRpc3rQaXHV4CwABBPUBAAAEFAAAAFBLAwQUAAIA
CABtZ5NNTmgu1ycBAAA4EwAAZAAcAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRt
bC9zZW1hbnRpY3MvZm9ybXMvY29uc3RyYWludHMvZm9ybS12YWxpZGF0aW9uLXZhbGlkYXRlLXN0
ZGVyci50eHRVVAkAAy2xGlwtsRpcdXgLAAEE9QEAAAQUAAAA3da/TgQhEAbw3qfABzgDs7DA5mJy
sTI2xvinMBbsMZwke+yGxZyP7zZ2WkIx7eQLk1/DN8CF2QnYCcsEDMoOoG5kp9kbjg+xPONanr5S
wnxYlnepzBboLOjOfLA3l1NMp4EdSsHzUliZ2ZJxxVTY/uX+NeLlbk4lz9OEeWD8W4cRwToBaPkt
mxPbP06uhDmft2X/xHvgJvAtfvmMEzL3u8GVuD0QVxbTNppP23S9voI/MaYmRvaGDkahpoPRPTbF
2JoYy4EOxhlBB3PkvCVG8poYrwMdDAYkgvFHLn3T0pSiJqZXjg5GjyMdDIi2vxnUxDjwdDCj7+lg
vFJ0MEE1vc1kVxEjuBd0MKA4HYwUbS8AWROjrKGD0VrTwZjQtmdUTYzTtXrmB1BLAwQKAAAAAADw
XZNNAAAAAAAAAAAAAAAANAAcAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbWVkaWFj
YXB0dXJlLXJlY29yZC9VVAkAA1SgGlzetBpcdXgLAAEE9QEAAAQUAAAAUEsDBBQAAgAIABNok03K
tAlcIgAAADoAAABSABwAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9tZWRpYWNhcHR1
cmUtcmVjb3JkL01lZGlhUmVjb3JkZXItZXJyb3Itc3RkZXJyLnR4dFVUCQADdrEaXFSgGlx1eAsA
AQT1AQAABBQAAACzs7OzU0grSsxNDc6sSnXOSMxLT01RsFUwMbA047LDJwkAUEsDBAoAAAAAAPZd
k00AAAAAAAAAAAAAAAA1ABwAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9tZWRpYWNh
cHR1cmUtc3RyZWFtcy9VVAkAA1+gGlzetBpcdXgLAAEE9QEAAAQUAAAAUEsDBBQAAgAIABlok03K
tAlcIgAAADoAAAB9ABwAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9tZWRpYWNhcHR1
cmUtc3RyZWFtcy9NZWRpYVN0cmVhbVRyYWNrLU1lZGlhRWxlbWVudC1kaXNhYmxlZC1hdWRpby1p
cy1zaWxlbmNlLmh0dHBzLXN0ZGVyci50eHRVVAkAA4KxGlxfoBpcdXgLAAEE9QEAAAQUAAAAs7Oz
s1NIK0rMTQ3OrEp1zkjMS09NUbBVMDGwNOOywycJAFBLAwQKAAAAAADxXZNNAAAAAAAAAAAAAAAA
MQAcAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbXN0LWNvbnRlbnQtaGludC9VVAkA
A1WgGlzetBpcdXgLAAEE9QEAAAQUAAAAUEsDBBQAAgAIABNok03QmBFjIgAAAOgAAABYABwAaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9tc3QtY29udGVudC1oaW50L01lZGlhU3RyZWFt
VHJhY2stY29udGVudEhpbnQtc3RkZXJyLnR4dFVUCQADdrEaXFWgGlx1eAsAAQT1AQAABBQAAACz
s7OzU0grSsxNDc6sSnXOSMxLT01RsFUwMbA047IbPpIAUEsDBAoAAAAAABpek00AAAAAAAAAAAAA
AAAwABwAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvVVQJ
AAOkoBpc3rQaXHV4CwABBPUBAAAEFAAAAFBLAwQKAAAAAABQY5NNAAAAAAAAAAAAAAAAPwAcAGlt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29y
a2VyL1VUCQADeKkaXN60Glx1eAsAAQT1AQAABBQAAABQSwMEFAACAAgAG2OTTT8MiUGWAQAAzwUA
AGYAHABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2
aWNlLXdvcmtlci9jbGllbnRzLW1hdGNoYWxsLW9yZGVyLmh0dHBzLWFjdHVhbC50eHRVVAkAAxap
GlwWqRpcdXgLAAEE9QEAAAQUAAAAzVRNTxtBDL3nV1g5oHLYXQhQiZWiKkKqVCmHilXP1WTGYbed
nQm2p4F/jycJoSoUgkARt7E19nt+/hh8nzQNXPgOg3DZG7HtxPtPh0AoiQJDiKGYR5sYHdgYhKL3
+lx2wcUlQxfAEhrpYoBIDqmEwdfJt+lzKZ9OswK5zwEXhhGOSzDMSPITr5PxXAPeLNCKBv64nGqQ
wxs4enAOW5EF11XlozW+jSz1+enpSaUp/nQWi2Wk30j8j10RckxkkSvsF3JbttL7L8H0OF5xKh74
Fhu+xfHB9Xg0hFkSuIqyZ+Cj4eClru0s8WiHfv09AinsNgSbvqWgftuiqyE/rzoWJDDBwdbgNibv
FERgbjpfQ2OpW8iqw2+V1a6LKlZFGe83P8pfDHNUl7Lg5PPoaAlIFKmGSYCmma4taI3qZW0i0j+Z
tgFGNTErHHTqcskSQVqEzELrsSbkWmYIvXFYwuVaANhIYWY+Bzt8Ufb/Sf26Rfm8HdKz90QcvQ/i
E3hZ5TnpEjyG/mDHIKAO8HY1930RHqHrWRjcAVBLAwQUAAIACAAbY5NN8QRoUxECAADXBwAAZAAc
AGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Ut
d29ya2VyL2NsaWVudHMtbWF0Y2hhbGwtb3JkZXIuaHR0cHMtZGlmZi50eHRVVAkAAxapGlwWqRpc
dXgLAAEE9QEAAAQUAAAA1VVRb9MwEH7vrzjtAYGK460bICJNtAyQEH1AjWCPyHWui8GxM/tMu3/P
JenWiW50iDHBS5Kz7u67+z7fRQgB8rO3qcYo3yhS8u1pIU9x/sHQ+vU6GVvKGVpUEYVpKu8wmjpZ
RT5Iqy58IkEYSQSMyVKUpm58ICzl8lDLJc5Fw74LH+rOLcqI4bvRKJY+fMPwsy21NegoilqRrpS1
wocSQ1YRNVHgqkHNuTNa0WA4HP5f1StNSdmu9vEYxOjpCxi2j/F4AB8nRQEnfXTWRU+sffwEAlIK
LoLzTiy8ThFL0N5R8Nby59K40i8jGAc6oCLjHfSQMIB3k/fTX+W8OU+HcpkETpg4OMhARe6UvuA5
dxBzuBQCPs2mHFTiCvY3h3tdv7mU1mtlKx8pf3l0dLiLPNbAp6BZTawbumDWavvKqRqPu5rEpl6x
rlccPDo/Hu3BPBGceXpg4P293brdmeMRKyZ2KXb9FiR3t3twm3LPr1h7Nhj+ReDk+FxXWObQfp6Z
SBhAuRKujFj5ZEsGIVgoY3ModDANdZfrTxXdmsjeI/saYYF8BP3kcyvcAobgQw4TB0Ux7S2oFCul
dQqBfdqyFURkE1ttHXPZtkweqEJoq+B+tHJtL3OEWpWYwawnANZUqLltg0vcPaK3cf17Q3pd6vuE
HN0T5A2ALdGLwCO4jf2PrSL+o9BmMTz0PtpC56X0A1BLAwQUAAIACAAbY5NNNB0S6RgBAADQBAAA
aAAcAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL2NsaWVudHMtbWF0Y2hhbGwtb3JkZXIuaHR0cHMtZXhwZWN0ZWQudHh0VVQJAAMW
qRpcFqkaXHV4CwABBPUBAAAEFAAAAM2TQUvDQBCF7/kVQw+ihyRtrIKBIqEgCD2IxbOsm6kJbnbT
mYmp/96lqBHb2ghavO0szPuGeW+Cm2w+h6kp0QpHlRJdZMYcnwChNGQZrLPhwumGMQftrJAzxj/b
0uauZSgtaEIlpbPgKEeKILjKrmffSW6XWUPeNWCqGGEUgWJGkntcNspwCriqUYtvvLud+aYcVzDs
PgeFSM1pHBunlSkcS3oxHp/GXuK51Bi2jp6Q+EsdE7JrSCPHWNXyEhVSmUurKpysZwq7ecO3ecPR
0XKSDOChEXh0cmDwcBDsc633ipMefn2OQGP7hWCXb+cfOzvby93F+llS/oiY/A5xC0/ZHBbkU7CJ
/mfXYJGly+ahT2KD7u8ieAVQSwMEFAACAAgAHGOTTSDqAiZwCQAA/CIAAGwAHABpbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9jbGll
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
EFRwLijMNHCUiEeaEH2WuwfbO+MoYVRXV1BgleSAjsCAPzQhD0A2VZiFaq3AweO2X96Xp6PtJ+aL
wNB9/aUAyRyke9qZoo9JqPWFyXyJhfZdzzDfFjbK5WhxAlmA54vWLKCQl+eAHjha/Pzu7g5d2SCE
JgjvGPvhj3AOUpUAYQulHBgWBMWkqUhwxuASlG0K3AP0ixJQHeb7m40ccnsBJsCx/9q98R7ujYfd
u3335w+73Ot3ydK+8wddARTRcYhgWWDC38gDYELOEFmvrJD8+8cPyAhkIKjm5uuHiqt5XbmQdcxy
IO/Z+WQyfgmTAG1eiQSKxDBPqD/X/1RC67g0hgUbowNndHD8Gher+cPlid1XtzW05Op7mTGy+35b
KEz2gMLk65G+NxROtjFufnz3PKY/WrjH20HYjynsZ5MXmcKbtzOM0z3C+LqM5Wr+9WXls0ZV7scb
rrwuUsIW5AGiBb9mUHnXmHkD6V3PvGvkXUNB+qPEDnSFmhun/mvxwKbKn7S0A6gtM566Zy8Bop1S
UDQv59NN2pnMHYnie2T9f55MkOeLqhQXkb4wI4KTnKQz5N2CCWRJpT5lwTkVNQOZ84qlsL9CGaZs
hu6sLtGE61Gat5JmN28olTf4Qs7bEgZ2Bmggb02U+Z7BRNRyFRSKHRq86Qta+m8TIbRGfFeiu7sP
doRyDHST+E5VAoSCiQyG80FSCXMoKIk/R8feX9mdIbR3EMgEl+6phq3+jQmo/5SE6KPNB9I5gCts
jxwpcYv9njz3rRTR6R7lcPr15TBUAl8mGk6bFj39tl3y7R7ev/1dvD/5Dt6f7eH92TeVi7ouzbl+
Owz/j4IRjlNqI9i+r2rstWVAOn4J83R+zJkUDnDmH738B1BLAwQUAAIACAAbY5NNq9x4/ZAAAACd
AAAAZgAcAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3Nl
cnZpY2Utd29ya2VyL2NsaWVudHMtbWF0Y2hhbGwtb3JkZXIuaHR0cHMtc3RkZXJyLnR4dFVUCQAD
FqkaXBapGlx1eAsAAQT1AQAABBQAAAAdx8EKgjAYAOB7T/EfC3JtU9N51SJIJJrRITos/Yvh3GSO
ev2i7/ZxyvKI8YgJYLzgSZEyIpIMOjcSNU0GyRUfRx1Ig+Hj/KDti1T4RuOmEW24xXnG0oILQWN6
h0ZezrXEedbObv4pnbXYhd/h0LYnME718FTaYA/LodzL4FGNO++dr9yotJWyXkMk8i1dLb5QSwME
FAACAAgAPWiTTT+JjgWPAAAAnQAAAH0AHABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1ldmVudC1yZXNwb25kLXdpdGgt
Ym9keS1sb2FkZWQtaW4tY2h1bmsuaHR0cHMtc3RkZXJyLnR4dFVUCQADxbEaXKSgGlx1eAsAAQT1
AQAABBQAAAAdx8EKgjAYAOB7T7FjQS6nU6ZXLYJEohkdosPSvxhu+2WOev2k08eXxExELIlYQVha
xqzMMpoyRnq0VE2TAXqD50kH2kL4oh+1e9MaPmBwsuDCneeCi5LzYvFBWnm9NBLmWaPb/VOhc9CH
5eTYdWdiUA3kpbSBgazH6iCDB2X33qOv0SrtpGy2JCpEHm9WP1BLAwQUAAIACABOaJNN7Cibdu0A
AAC/AgAAZAAcAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJz
L3NlcnZpY2Utd29ya2VyL2ZldGNoLWZyYW1lLXJlc291cmNlLmh0dHBzLXN0ZGVyci50eHRVVAkA
A+SxGlzDoBpcdXgLAAEE9QEAAAQUAAAA3ZBNasMwEIX3PYU26c5W8wOlhlCCUbJpk4ULXQtpgk0V
jTMa2+T2ndSkC+cAhSKB5j1G+p6mPOyrw5tR76aqNjtTqC2wq00PkXOC1GL0nw3XisBB04NXNiog
QirUx6UFM5Z7ZGVDwEEaGKX53EFiORN25OChnFJKG6PcCWi9qpnbVGgd0NlQY+LiZbVa6gTUNw6y
AekLKE20vr2d9PGaODuSPUF2c/UosbWS5PWEHtYRM4eUHjsK6x/kbLmZLbay54vn/EnWXJwrWqwJ
/M4R4zeA1GME60QloUQmDHl7ye8//k/GOzTR4/D38/0GUEsDBBQAAgAIAFFok02FHP5AtgAAAGIE
AABoABwAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vy
dmljZS13b3JrZXIvZmV0Y2gtcmVxdWVzdC1jc3MtaW1hZ2VzLmh0dHBzLXN0ZGVyci50eHRVVAkA
A+mxGlzHoBpcdXgLAAEE9QEAAAQUAAAA1dCxDoIwEAbg3afoC0ihpSGyGEPQRWVgcCbtmRKhJdcD
49tL4oarMSE3/cv9X/6iutbVuWSXsq4PpzJnRyBtywkcRQhh8M7cWrIMQUM7gWGNY4DoMWejM3Bv
HZhNsXxSNM55Yp1vDLNEQ8g577xuOusD5bs0lTwATq2G7dPjAzAsMp+7/YgaAjdj37/2BIESlSqh
pFRCyCz6bl0FPV0vPVPJP+mJyKJ4vmR99B+uLmOx1tU/9DdQSwMEFAACAAgAUmiTTbqbDwtvAQAA
fSoAAGcAHABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9z
ZXJ2aWNlLXdvcmtlci9mZXRjaC1yZXF1ZXN0LXJlc291cmNlcy5odHRwcy1zdGRlcnIudHh0VVQJ
AAPssRpcyqAaXHV4CwABBPUBAAAEFAAAANXZvWrDMBSG4b1XoRtobEmW/5YSglsK/YMMnY2tYtNE
CpKS0rtv6JhubdPy4smL9HAQfJxzVo8P68e7Ttx36/XypmvFtU3D1B2sS4tg48678XlOkwh2sPPB
jqJ3wobgQyv2brQvs7Pjxer0kFXvnE9i4/tRTCntYptlGz/0m8nH1DZFobNow2Ee7OWbD682xJP/
7Hi334fBxmzcb7fvV8nGJBdfbzobV6pqkR8/+W2u+kvuz6urWdUtWNU1LG7JegwVi1uzuA3r7coc
5pUwr2I9XwlLNlnAvLBskyXMW8G8sHiTDayvyGFeWL4pWL4pDasvrHVTsHxTsHxTsHxTNcwL6980
rH/TsHzTtMEkLN80LN/02fLt8xCxfLoVw3nkJVZeYeU1Vt5Q5UWOlUusXGHlGisv/kf+C9tIg5WX
WHmFlddYeUOVG1hXaWBdpYF1lQa2FTSwraAxMC9sampgU1MDm5oa2FawhG0Fy2O+fQBQSwMEFAAC
AAgAVGiTTU1Oi5AgAgAAmzIAAGQAHABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1yZXNwb25zZS10YWludC5odHRwcy1z
dGRlcnIudHh0VVQJAAPvsRpczqAaXHV4CwABBPUBAAAEFAAAAO2a0WrbMBSG7/cU5ya5KDhuk7Ix
QyjGc8ZgW0Yz6LUmn8aiiuRJckLefrJVvLRrVjICzdxDciEfydL/f4mOEFI2/7qYf87hS75YpB/z
BKRQCOPzBGboeAnpt0/AmVLagdSsgNK5yiZxfDF+Nzr3n4vk/eXlJLZo1oJjtNHmDo199BwbtLo2
HG182/QaMe7LNuJaOaPlqNpejd5kpOR5Ja2AfI3Kjfz7lVbFjXAlGOQo1lgAU4DGaJPA922FeSjO
jVgK1cmUmjNZautamSAsNE6YlHrje/ixhTQoyYKSKG1qotDJPknEhJj0kkkWtNYWYSNkwZkpwDP6
i3XYlKiAGyz8SIJJC7eSLRt8ztT44mDSLA06p2dHy3RXtZHTtm4wSQfjmf92fx4fadr40CPpf0R8
oJPvy3sMDCaz4UoXOLVshZFurQx3aE/1SrghWSNrp2JtN04Oe+nw35YWo62F0Klv+rNG6ywwgw/W
2XY1qa1QS9gRAa0RaDQfvKI8XNef4tz9EieTBggwASbABJgAE2ACTIAJMAF+jYCPtpUia2Tt1c14
AkyACTABJsAEmACfEODrlqpFaEYNh8v340MYvzk+1RXzEF/6/BSKGsFpCDVwXwO8RH5nyRpZI2tk
7fjW/qMtpNI+amzfdsZki1IHWaOsePA8627cDSYfzsKk61ciIYN9Mvjclau3vnH227h/o7nXuoeK
UFzWBRIYAnMwmF9QSwMEFAACAAgAUGOTTf03BwpYAAAArAAAAGYAHABpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWdpc3Rlci1j
bG9zZWQtd2luZG93Lmh0dHBzLWFjdHVhbC50eHRVVAkAA3epGlx3qRpcdXgLAAEE9QEAAAQUAAAA
y0msTC1SSCxR0DDQMdBUKM6sSlWwMDCoMDMw4FJQCErNS0ktCstMLcehJAeHdgu4Zqec/ORshWqP
EF+fWhwK4UrzUyoVqp38XSIhKi10LKAqzS1MKgy4AFBLAwQUAAIACABQY5NN/q4yPiQBAACIAgAA
ZAAcAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZp
Y2Utd29ya2VyL3JlZ2lzdGVyLWNsb3NlZC13aW5kb3cuaHR0cHMtZGlmZi50eHRVVAkAA3epGlx3
qRpcdXgLAAEE9QEAAAQUAAAA1Y/dSsNAEEbv8xRzaUm2u6X+5DK2FQQVpZEWL7fZ0S7d7IbdiZta
fHdDWxWEPoBXw8CZ833DGAO+cKatMfCZJMlvliVf4upO03FMWm0Un6NBGZDpZu0sBl23RpLz3Mit
a4kRBmIeQ2socF03zhMqHscVj7hiTc++Ol/vscAD+nddIYvOb9D/3bnHNx0IPauMC6hY1Fa5OFwT
NYFh12DVu4fUUZKm6f9qLytqpdl3Lwpgo2wM6Si7gKJIWMKerssSptIY+JacDcBZKA8Jy33A1FmS
2qIHFy0qWG3hkATHJOhVaf9YT0iCM5GJAQT9gZAL0V0KkaQAc7QK/UJjPMWcEuS/5xPjqg3sbp8f
7j9PkT+sU1vYTR5nLwc0z/IjepWfdyL5AlBLAwQKAAIAAABQY5NNJ2M/6EoAAABKAAAAaAAcAGlt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29y
a2VyL3JlZ2lzdGVyLWNsb3NlZC13aW5kb3cuaHR0cHMtZXhwZWN0ZWQudHh0VVQJAAN3qRpcd6ka
XHV4CwABBPUBAAAEFAAAAApQQVNTIENhbGwgcmVnaXN0ZXIoKSBvbiBTZXJ2aWNlV29ya2VyQ29u
dGFpbmVyIG93bmVkIGJ5IGNsb3NlZCB3aW5kb3cuIAoKUEsDBBQAAgAIAFBjk01PWDbHAAgAAKQb
AABsABwAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2Vy
dmljZS13b3JrZXIvcmVnaXN0ZXItY2xvc2VkLXdpbmRvdy5odHRwcy1wcmV0dHktZGlmZi5odG1s
VVQJAAN4qRpceKkaXHV4CwABBPUBAAAEFAAAAM1Za2/jNhb9nl9BJNimLaJHYjt1nJkUnTxQoO1u
0Qw62E8LSqIsTijRJanYnmn/ey9fsiRLzhSYYjvBRA9ekufee+6DyqtClezm6FVBcAaXkiiM0gIL
SdTr01rlwfwUXku1ZeTmaMFo9XSGFs9UUkUy9PEIwT9FNirISMoFVpRXC1TxilyboYSLjIgg4Urx
coHOVxuUwT3Jro/+OLLLuUVSzrhYoJN4cmXGwgfKyB3Nczee4PRpKXhdZYEXzef6p72R3UFyRjN0
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
buIXQ7dV83Wgm+G27O5iaicUGvPHuT8BUEsDBBQAAgAIAGdok02ZZ8/1ewAAAIsAAABmABwAaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3Jr
ZXIvcmVnaXN0ZXItY2xvc2VkLXdpbmRvdy5odHRwcy1zdGRlcnIudHh0VVQJAAMRshpc8qAaXHV4
CwABBPUBAAAEFAAAABXMsQ6CMBQF0N2vuKMuJqzdjGlcUAhInGu5kaelJa8V498bzwecY3Ppm9ri
bPv+cLIGQSJRVQZDnFwcA0e0mmbJRMcnfZEUDa7fhVY1qUGmruJ5S/qi7pUPyYW63WF+54I74V34
Lx8pExxWF2SEMrgiK5G9ylIwdPXmB1BLAwQUAAIACABvaJNN5uQxzq8AAAB0AQAAawAcAGltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L3JlZ2lzdHJhdGlvbi1zZWN1cml0eS1lcnJvci5odHRwcy1zdGRlcnIudHh0VVQJAAMhshpcAKEa
XHV4CwABBPUBAAAEFAAAAMWQTQoCMQxG93OKbFw6BXXjgIgMoxt/wDlBaeO0TmkkqQ7eXivqwgu4
e4GPLy+pD/v2sG1g17TtatNUsKcEOgQa0EIiOFFm0MBoPaNJniIMzgeEQNr62IFL6SKVUoGMDo4k
VfPZbKoE+eYNjgfiHll+ZsUodGWDoj7N5eW+PL55MZqsv4kXd14S67z+3VCepah/7Wsd4/OArPZH
L7BXzM/T5pkSMBQTUwDj0PRSFg9QSwMEFAACAAgAamOTTdz8dUmRAAAAnQAAAGQAHABpbXBvcnRl
ZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci91
cGRhdGUtb24tbmF2aWdhdGlvbi5odHRwcy1zdGRlcnIudHh0VVQJAAOnqRpcIaEaXHV4CwABBPUB
AAAEFAAAAB3HTQuCMBgA4Hu/YseCXM6PNr1qESQSzegQHZa+xXDbK3PU3y96bk8SMxGxJGIFYUmZ
8JJxyrOM9GipmiYD9AqPow60hfBBP2r3ojW8weBkwYVbKjjLy5TlnIs7aeXl3EiYZ41u80+FzkEf
fieHrjsRg2ogT6UNDGQ5VnsZPCi78x59jVZpJ2WzJlEhtvFq8QVQSwMEFAACAAgAhGiTTfWhsnly
AAAAdAAAAGsAHABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vy
cy9zZXJ2aWNlLXdvcmtlci93ZWJzb2NrZXQtaW4tc2VydmljZS13b3JrZXIuaHR0cHMtc3RkZXJy
LnR4dFVUCQADSLIaXC2hGlx1eAsAAQT1AQAABBQAAAAzMjC00DU00jW0VDA0tjIwsTKw0DMzNFFI
zs/VSywoyEnVC09N8s4sAVHO+XklqXklei6pZak5+QW5QHa0ibmxubmViamBgYl5rIKzm19qSXl+
UbZCcLCPR2JeSnFGYnaqQlpiZk5qioKGrqWFgbkmFwBQSwMECgAAAAAADl6TTQAAAAAAAAAAAAAA
ACgAHABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3N0cmVhbXMvVVQJAAOMoBpc3rQa
XHV4CwABBPUBAAAEFAAAAFBLAwQKAAAAAAAOXpNNAAAAAAAAAAAAAAAAOQAcAGltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvc3RyZWFtcy9yZWFkYWJsZS1zdHJlYW1zL1VUCQADjKAaXN60
Glx1eAsAAQT1AQAABBQAAABQSwMEFAACAAgADl6TTYRay/Q+AAAA+AAAAEcAHABpbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3N0cmVhbXMvcmVhZGFibGUtc3RyZWFtcy90ZWUtc3RkZXJy
LnR4dFVUCQADjKAaXIygGlx1eAsAAQT1AQAABBQAAABz9vcL9vdxVfB1DQ52dHe1UgjNy0jMS8lJ
TVEIKMrPzSxOVQhKzUpNLsnMz7NSiM5PArEV/MFULJfzkNUNAFBLAwQKAAAAAAANXpNNAAAAAAAA
AAAAAAAAKQAcAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vVVQJAAOK
oBpc3rQaXHV4CwABBPUBAAAEFAAAAFBLAwQKAAAAAAATXpNNAAAAAAAAAAAAAAAANwAcAGltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS9VVAkAA5ag
GlzetBpcdXgLAAEE9QEAAAQUAAAAUEsDBAoAAAAAABtek00AAAAAAAAAAAAAAABSABwAaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1hbmFs
eXNlcm5vZGUtaW50ZXJmYWNlL1VUCQADpaAaXN60Glx1eAsAAQT1AQAABBQAAABQSwMEFAACAAgA
MGiTTcq0CVwiAAAAOgAAAHIAHABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1
ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWFuYWx5c2Vybm9kZS1pbnRlcmZhY2UvdGVzdC1hbmFseXNl
ci1taW5pbXVtLXN0ZGVyci50eHRVVAkAA6yxGlyKoBpcdXgLAAEE9QEAAAQUAAAAs7Ozs1NIK0rM
TQ3OrEp1zkjMS09NUbBVMDGwNOOywycJAFBLAwQUAAIACABAaJNNyrQJXCIAAAA6AAAAcQAcAGlt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUt
YW5hbHlzZXJub2RlLWludGVyZmFjZS90ZXN0LWFuYWx5c2VyLW91dHB1dC1zdGRlcnIudHh0VVQJ
AAPHsRpcpaAaXHV4CwABBPUBAAAEFAAAALOzs7NTSCtKzE0NzqxKdc5IzEtPTVGwVTAxsDTjssMn
CQBQSwMEFAACAAgAQGiTTcq0CVwiAAAAOgAAAHAAHABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWFuYWx5c2Vybm9kZS1pbnRlcmZhY2Uv
dGVzdC1hbmFseXNlci1zY2FsZS1zdGRlcnIudHh0VVQJAAPIsRpcpaAaXHV4CwABBPUBAAAEFAAA
ALOzs7NTSCtKzE0NzqxKdc5IzEtPTVGwVTAxsDTjssMnCQBQSwMEFAACAAgAQGiTTcq0CVwiAAAA
OgAAAG4AHABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRp
by1hcGkvdGhlLWFuYWx5c2Vybm9kZS1pbnRlcmZhY2UvdGVzdC1hbmFseXNlcm5vZGUtc3RkZXJy
LnR4dFVUCQADyLEaXKWgGlx1eAsAAQT1AQAABBQAAACzs7OzU0grSsxNDc6sSnXOSMxLT01RsFUw
MbA047LDJwkAUEsDBAoAAAAAAA5ek00AAAAAAAAAAAAAAABQABwAaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1hdWRpb3BhcmFtLWludGVy
ZmFjZS9VVAkAA4ygGlzetBpcdXgLAAEE9QEAAAQUAAAAUEsDBBQAAgAIADFok03KtAlcIgAAADoA
AABjABwAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8t
YXBpL3RoZS1hdWRpb3BhcmFtLWludGVyZmFjZS9pZGwtdGVzdC1zdGRlcnIudHh0VVQJAAOusRpc
jKAaXHV4CwABBPUBAAAEFAAAALOzs7NTSCtKzE0NzqxKdc5IzEtPTVGwVTAxsDTjssMnCQBQSwME
CgAAAAAAEV6TTQAAAAAAAAAAAAAAAFcAHABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWNoYW5uZWxtZXJnZXJub2RlLWludGVyZmFjZS9V
VAkAA5GgGlzetBpcdXgLAAEE9QEAAAQUAAAAUEsDBBQAAgAIADRok00zDyrEbwAAAHoAAAB/ABwA
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3Ro
ZS1jaGFubmVsbWVyZ2Vybm9kZS1pbnRlcmZhY2UvYXVkaW9jaGFubmVsbWVyZ2VyLWRpc2Nvbm5l
Y3Qtc3RkZXJyLnR4dFVUCQADtLEaXJGgGlx1eAsAAQT1AQAABBQAAABz9vcL9vdxVfB1DQ52dHe1
UsjJzEtVMDWyUgipLEh1LSrKL7JSKM1LSU0DiqcoZBYr5OWXKCTmKeQnZaUmlyhopJYl5pQmlmTm
pSuoJ+fnlaRWlOgVlyQWlQSlAnUVAcU1NLkUkIBeSUZqnromFwBQSwMECgAAAAAAEl6TTQAAAAAA
AAAAAAAAAFMAHABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1h
dWRpby1hcGkvdGhlLWNvbnZvbHZlcm5vZGUtaW50ZXJmYWNlL1VUCQADk6AaXN60Glx1eAsAAQT1
AQAABBQAAABQSwMEFAACAAgANWiTTcq0CVwiAAAAOgAAAHYAHABpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWNvbnZvbHZlcm5vZGUtaW50
ZXJmYWNlL2NvbnZvbHZlci1zZXRCdWZmZXItbnVsbC1zdGRlcnIudHh0VVQJAAO1sRpck6AaXHV4
CwABBPUBAAAEFAAAALOzs7NTSCtKzE0NzqxKdc5IzEtPTVGwVTAxsDTjssMnCQBQSwMECgAAAAAA
El6TTQAAAAAAAAAAAAAAAE8AHABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1
ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWRlbGF5bm9kZS1pbnRlcmZhY2UvVVQJAAOToBpc3rQaXHV4
CwABBPUBAAAEFAAAAFBLAwQUAAIACAA1aJNNyrQJXCIAAAA6AAAAYgAcAGltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtZGVsYXlub2RlLWlu
dGVyZmFjZS9pZGwtdGVzdC1zdGRlcnIudHh0VVQJAAO2sRpck6AaXHV4CwABBPUBAAAEFAAAALOz
s7NTSCtKzE0NzqxKdc5IzEtPTVGwVTAxsDTjssMnCQBQSwMECgAAAAAAEl6TTQAAAAAAAAAAAAAA
AFwAHABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1h
cGkvdGhlLWR5bmFtaWNzY29tcHJlc3Nvcm5vZGUtaW50ZXJmYWNlL1VUCQADk6AaXN60Glx1eAsA
AQT1AQAABBQAAABQSwMEFAACAAgANWiTTcq0CVwiAAAAOgAAAH8AHABpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWR5bmFtaWNzY29tcHJl
c3Nvcm5vZGUtaW50ZXJmYWNlL2R5bmFtaWNzY29tcHJlc3Nvci1iYXNpYy1zdGRlcnIudHh0VVQJ
AAO1sRpck6AaXHV4CwABBPUBAAAEFAAAALOzs7NTSCtKzE0NzqxKdc5IzEtPTVGwVTAxsDTjssMn
CQBQSwMECgAAAAAAEl6TTQAAAAAAAAAAAAAAAE4AHABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWdhaW5ub2RlLWludGVyZmFjZS9VVAkA
A5SgGlzetBpcdXgLAAEE9QEAAAQUAAAAUEsDBBQAAgAIADVok03KtAlcIgAAADoAAABjABwAaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1n
YWlubm9kZS1pbnRlcmZhY2UvZ2Fpbi1iYXNpYy1zdGRlcnIudHh0VVQJAAO2sRpck6AaXHV4CwAB
BPUBAAAEFAAAALOzs7NTSCtKzE0NzqxKdc5IzEtPTVGwVTAxsDTjssMnCQBQSwMEFAACAAgANWiT
Tcq0CVwiAAAAOgAAAGEAHABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlv
L3RoZS1hdWRpby1hcGkvdGhlLWdhaW5ub2RlLWludGVyZmFjZS9pZGwtdGVzdC1zdGRlcnIudHh0
VVQJAAO2sRpclKAaXHV4CwABBPUBAAAEFAAAALOzs7NTSCtKzE0NzqxKdc5IzEtPTVGwVTAxsDTj
ssMnCQBQSwMECgAAAAAAE16TTQAAAAAAAAAAAAAAAGEAHABpbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLW1lZGlhZWxlbWVudGF1ZGlvc291
cmNlbm9kZS1pbnRlcmZhY2UvVVQJAAOWoBpc3rQaXHV4CwABBPUBAAAEFAAAAFBLAwQUAAIACAA2
aJNNyrQJXCIAAAA6AAAAmAAcAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVk
aW8vdGhlLWF1ZGlvLWFwaS90aGUtbWVkaWFlbGVtZW50YXVkaW9zb3VyY2Vub2RlLWludGVyZmFj
ZS9tZWRpYUVsZW1lbnRBdWRpb1NvdXJjZVRvU2NyaXB0UHJvY2Vzc29yVGVzdC1zdGRlcnIudHh0
VVQJAAO4sRpclqAaXHV4CwABBPUBAAAEFAAAALOzs7NTSCtKzE0NzqxKdc5IzEtPTVGwVTAxsDTj
ssMnCQBQSwMECgAAAAAAE16TTQAAAAAAAAAAAAAAAFAAHABpbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLXBhbm5lcm5vZGUtaW50ZXJmYWNl
L1VUCQADlqAaXN60Glx1eAsAAQT1AQAABBQAAABQSwMEFAACAAgANmiTTcq0CVwiAAAAOgAAAGsA
HABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkv
dGhlLXBhbm5lcm5vZGUtaW50ZXJmYWNlL3Bhbm5lcm5vZGUtYmFzaWMtc3RkZXJyLnR4dFVUCQAD
uLEaXJagGlx1eAsAAQT1AQAABBQAAACzs7OzU0grSsxNDc6sSnXOSMxLT01RsFUwMbA047LDJwkA
UEsDBAoAAAAAANVok00AAAAAAAAAAAAAAAAnABwAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy93ZWJydGMvVVQJAAPishpc3rQaXHV4CwABBPUBAAAEFAAAAFBLAwQUAAIACAA4aJNNyrQJ
XCIAAAA6AAAAUAAcAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2VicnRjL1JUQ0RU
TUZTZW5kZXItaW5zZXJ0RFRNRi5odHRwcy1zdGRlcnIudHh0VVQJAAO8sRpcmqAaXHV4CwABBPUB
AAAEFAAAALOzs7NTSCtKzE0NzqxKdc5IzEtPTVGwVTAxsDTjssMnCQBQSwMEFAACAAgAOGiTTcq0
CVwiAAAAOgAAAFcAHABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYnJ0Yy9SVENE
VE1GU2VuZGVyLW9udG9uZWNoYW5nZS1sb25nLmh0dHBzLXN0ZGVyci50eHRVVAkAA7yxGlyaoBpc
dXgLAAEE9QEAAAQUAAAAs7Ozs1NIK0rMTQ3OrEp1zkjMS09NUbBVMDGwNOOywycJAFBLAwQUAAIA
CAA5aJNNyrQJXCIAAAA6AAAAUgAcAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2Vi
cnRjL1JUQ0RUTUZTZW5kZXItb250b25lY2hhbmdlLmh0dHBzLXN0ZGVyci50eHRVVAkAA72xGlyb
oBpcdXgLAAEE9QEAAAQUAAAAs7Ozs1NIK0rMTQ3OrEp1zkjMS09NUbBVMDGwNOOywycJAFBLAwQU
AAIACAA6aJNNyrQJXCIAAAA6AAAAUgAcAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
d2VicnRjL1JUQ1BlZXJDb25uZWN0aW9uLWFkZFRyYWNrLmh0dHBzLXN0ZGVyci50eHRVVAkAA8Cx
GlydoBpcdXgLAAEE9QEAAAQUAAAAs7Ozs1NIK0rMTQ3OrEp1zkjMS09NUbBVMDGwNOOywycJAFBL
AwQUAAIACAA8aJNNyrQJXCIAAAA6AAAAUgAcAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvd2VicnRjL1JUQ1BlZXJDb25uZWN0aW9uLWdldFN0YXRzLmh0dHBzLXN0ZGVyci50eHRVVAkA
A8OxGlygoBpcdXgLAAEE9QEAAAQUAAAAs7Ozs1NIK0rMTQ3OrEp1zkjMS09NUbBVMDGwNOOywycJ
AFBLAwQUAAIACABMaJNNyrQJXCIAAAA6AAAAUQAcAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvd2VicnRjL1JUQ1BlZXJDb25uZWN0aW9uLW9udHJhY2suaHR0cHMtc3RkZXJyLnR4dFVU
CQAD37EaXLygGlx1eAsAAQT1AQAABBQAAACzs7OzU0grSsxNDc6sSnXOSMxLT01RsFUwMbA047LD
JwkAUEsDBBQAAgAIAFpok03KtAlcIgAAADoAAABVABwAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy93ZWJydGMvUlRDUGVlckNvbm5lY3Rpb24tcmVtb3ZlVHJhY2suaHR0cHMtc3RkZXJy
LnR4dFVUCQAD+7EaXNmgGlx1eAsAAQT1AQAABBQAAACzs7OzU0grSsxNDc6sSnXOSMxLT01RsFUw
MbA047LDJwkAUEsDBBQAAgAIAFtok03KtAlcIgAAADoAAABrABwAaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy93ZWJydGMvUlRDUGVlckNvbm5lY3Rpb24tc2V0UmVtb3RlRGVzY3JpcHRp
b24tcmVwbGFjZVRyYWNrLmh0dHBzLXN0ZGVyci50eHRVVAkAA/2xGlzboBpcdXgLAAEE9QEAAAQU
AAAAs7Ozs1NIK0rMTQ3OrEp1zkjMS09NUbBVMDGwNOOywycJAFBLAwQUAAIACAClaJNNyrQJXCIA
AAA6AAAAVQAcAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2VicnRjL1JUQ1BlZXJD
b25uZWN0aW9uLXRyYWNrLXN0YXRzLmh0dHBzLXN0ZGVyci50eHRVVAkAA4WyGlxioRpcdXgLAAEE
9QEAAAQUAAAAs7Ozs1NIK0rMTQ3OrEp1zkjMS09NUbBVMDGwNOOywycJAFBLAwQUAAIACACnaJNN
yrQJXCIAAAA6AAAAXQAcAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2VicnRjL1JU
Q1J0cFJlY2VpdmVyLWdldENvbnRyaWJ1dGluZ1NvdXJjZXMuaHR0cHMtc3RkZXJyLnR4dFVUCQAD
irIaXGmhGlx1eAsAAQT1AQAABBQAAACzs7OzU0grSsxNDc6sSnXOSMxLT01RsFUwMbA047LDJwkA
UEsDBBQAAgAIAKhok03KtAlcIgAAADoAAABPABwAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy93ZWJydGMvUlRDUnRwUmVjZWl2ZXItZ2V0U3RhdHMuaHR0cHMtc3RkZXJyLnR4dFVUCQAD
jLIaXGqhGlx1eAsAAQT1AQAABBQAAACzs7OzU0grSsxNDc6sSnXOSMxLT01RsFUwMbA047LDJwkA
UEsDBBQAAgAIAKlok03KtAlcIgAAADoAAABgABwAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy93ZWJydGMvUlRDUnRwUmVjZWl2ZXItZ2V0U3luY2hyb25pemF0aW9uU291cmNlcy5odHRw
cy1zdGRlcnIudHh0VVQJAAONshpcbKEaXHV4CwABBPUBAAAEFAAAALOzs7NTSCtKzE0NzqxKdc5I
zEtPTVGwVTAxsDTjssMnCQBQSwMEFAACAAgAqmiTTcq0CVwiAAAAOgAAAE0AHABpbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYnJ0Yy9SVENSdHBTZW5kZXItZ2V0U3RhdHMuaHR0cHMt
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
+tvOEX+/mv391fXsY72tHxDaGb6g5UVgVn15/C5nF6/hxa3vZh4fxuxyu6rHbsx2x/HWv3lzGb/x
gLhV57vS7HTEx8fFw3r2GaavkYMEP13DHY+4eePfvcyzH0Cc6ocv+KDOH63P1xD21Hz80xm8JovW
mJvt281aHYn78eLq2sfXs5fv/bv0zCiUnvPjBRRAewUWzu/fFEyh5657xIe3N80w/PVzYskVvpLH
EZVHjI66uUrnYfzVYbf7VWZvm6bxQfC5eHl6kLPeEWM3Jc3cniRK/OVburlJ/tp/E1c5V08oCQYo
tUfcJNAD/3rumM6LJPGI6vLX639zIdkV8pubN69+fZ0TvEzPXECchZxLh0dc539ef+u1AKDY6QiL
R7z/9VW8TPn5Y5Sm3bu6b9ToDKf257Bic3GUKA6v3h58fzjivr7fPXx95r7OWDH6f1GF15fXjTp+
/gMTyZPSYYyqpyP+c3YPOm1fCEorIO0z590jLv4XUEsDBBQAAgAIANVok03KtAlcIgAAADoAAABL
ABwAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJydGMvc2ltcGxlY2FsbC1uby1z
c3Jjcy5odHRwcy1zdGRlcnIudHh0VVQJAAPishpcj6EaXHV4CwABBPUBAAAEFAAAALOzs7NTSCtK
zE0NzqxKdc5IzEtPTVGwVTAxsDTjssMnCQBQSwMEFAACAAgA2WiTTcq0CVwiAAAAOgAAAEIAHABp
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYnJ0Yy9zaW1wbGVjYWxsLmh0dHBzLXN0
ZGVyci50eHRVVAkAA+qyGlyRoRpcdXgLAAEE9QEAAAQUAAAAs7Ozs1NIK0rMTQ3OrEp1zkjMS09N
UbBVMDGwNOOywycJAFBLAwQKAAAAAAAtXpNNAAAAAAAAAAAAAAAAJAAcAGltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMveGhyL1VUCQADxqAaXN60Glx1eAsAAQT1AQAABBQAAABQSwMEFAAC
AAgASWiTTWBI9aqrAAAA7gAAAGMAHABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3ho
ci9hY2Nlc3MtY29udHJvbC1iYXNpYy1jb3JzLXNhZmVsaXN0ZWQtcmVxdWVzdC1oZWFkZXJzLXN0
ZGVyci50eHRVVAkAA9mxGly3oBpcdXgLAAEE9QEAAAQUAAAAdY2xDoIwFEV3v+L9QCmwSNgMITqA
GFlca3nYxqbFvjbRv7eKq7nTvck5txmO49C10LfjuNu3NRhtEcqyhpPH2eibCuCRFmcJQRNYF4Ci
lEg0R7Np/uKXvjuEsJzxEZECSGE/qHFiApX2mvOi3GZ5SlFXVZ7zp/I8Pbnok5yL7wWTzgbvDLsK
0jI1T4zEjEZTwIn5Vc4Uigk9ZcsLpogQHKw4/HCQCuWdss0bUEsDBBQAAgAIAElok017JdGLqAAA
AOQAAABXABwAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy94aHIvYWNjZXNzLWNvbnRy
b2wtYmFzaWMtZ2V0LWZhaWwtbm9uLXNpbXBsZS1zdGRlcnIudHh0VVQJAAPZsRpcuKAaXHV4CwAB
BPUBAAAEFAAAAHWOOw7CMBBEe06xF3Cc0BClQ1EEBT+RhjY4C7GwvMa7luD2mE+LphvpvZl2v+v3
mw62Xd8vV10DznqEedXAIeLF2eskEJEDeUawDJ4EOBmDzJfkZu1f/LTdrEXCEe8JWcAM/o06GkaY
ct9oXc0XRZlTNXVdlvoxRZ2XKMUs18NnQhnyEsmp88DWKApi8xGVTYpTCBQFxyI8YUwIQvCF4AeB
mdDcuJi9AFBLAwQUAAIACABJaJNNRQ9YtagAAADkAAAAbgAcAGltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMveGhyL2FjY2Vzcy1jb250cm9sLWJhc2ljLXBvc3Qtd2l0aC1ub24tY29ycy1z
YWZlbGlzdGVkLWNvbnRlbnQtdHlwZS1zdGRlcnIudHh0VVQJAAPZsRpcuKAaXHV4CwABBPUBAAAE
FAAAAHWOOw7CMBBEe06xF3AcoAClQyiCghBEGtrgLMTC8hrvWoLbYz4tmm6k92bW7b5rdzU0ddet
NnUFznqE+ayCQ8SLs9dRICIH8oxgGTwJcDIGmS/JTdZ/8VOz24qEI94TsoDp/Rt11A8w5r7Sejpb
FGXOtFouy1I/xqjzEqWY5br/TChDXiI5de7ZGkVBbD6isklxCoGi4FCEJwwJQQi+EPwgMCOaGxeT
F1BLAwQUAAIACABLaJNN7b785G4AAAB2AAAARAAcAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMveGhyL2V2ZW50LWVycm9yLW9yZGVyLnN1Yi1zdGRlcnIudHh0VVQJAAPesRpcvKAaXHV4
CwABBPUBAAAEFAAAAA3IsQrCMBAG4N2n+J+gqbiUbCJBh9aCWVzD9SDFcFe9K/j4+o3fZb7neUyY
Us7na4poqzBOx4jnNN7ctwe/dzYHFRF1NC0L6v9jCKLC39WcxbumVFpV8zgMfR+w7AxXFCI2A6n4
RxuoMr2sO/wAUEsDBBQAAgAIAC1ek02qmE9KrAAAAO4BAABQABwAaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy94aHIvZXZlbnQtdXBsb2FkLXByb2dyZXNzLWNyb3Nzb3JpZ2luLWFjdHVh
bC50eHRVVAkAA8WgGlzFoBpcdXgLAAEE9QEAAAQUAAAAtZCxCsJADIb3e4pMokuv1aGlINJFEBzE
4iznXbCFeim5VPTtbVFwk1KQLOEn+RI+dSjKEk5tQ8YB3tFLAMZrHQQZHZAHqW8I80qkzbVOlmkU
95XkWRbH+lGxZgzUscWgLXFAby4Nuqh9LkBti91+BPtL6OOa0Uq/vrHkcL2K01lD1khNfj3lBxMC
spw7z2hshS6H47uBTzSMwnBL/TYhRNAYmapiLPyfLpR6AVBLAwQUAAIACAAtXpNNYn6O8zUBAADX
AwAATgAcAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMveGhyL2V2ZW50LXVwbG9hZC1w
cm9ncmVzcy1jcm9zc29yaWdpbi1kaWZmLnR4dFVUCQADxaAaXMWgGlx1eAsAAQT1AQAABBQAAADN
UsFKAzEQve9XzEmUNc3Wgi2F4lZUED1Ii/YoaXbsBrI7IZnY9u9N10KPloIogSQM7715mRchBMg3
srHBIO8UK3m/mMsFLp8M74/baGwlZ2hRBRTG1dRiME20islLq7YUWTAGFh5DtBykaRx5xkquB1qu
cSlcwn6QbzpYkJvaS/zElkV0llQlnKdVIgehPYVA3qxMK3DjUCeVHm84y/P8v/pUmqOyncuyBNG/
vIZ8t5VlBhm8TOdzeO3o0GkF8LgygdFjBdQCmwbhvGZ2Yyn7V8NekVZ/PBoVRWcg9aPodXq2Jh+w
VUubZuK2F5CJI8UPEqlsfJpq4t9oqnAyKIZnlrRiQ+3kJBP5w/Tx+Y9NqBDQ83tsPSpdYzWG2fcF
9qUdFHa9fgqEiSB9glMTOVr9VyOB7AtQSwMEFAACAAgALV6TTYlaDziKAAAAxAEAAFIAHABpbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3hoci9ldmVudC11cGxvYWQtcHJvZ3Jlc3MtY3Jv
c3NvcmlnaW4tZXhwZWN0ZWQudHh0VVQJAAPFoBpcxaAaXHV4CwABBPUBAAAEFAAAALWPQQrCMBBF
9znFrEQ3TaqLlkIRbyAUDxCTwQZiJkxG0dubXbduwt99+I//1PWyLHDLkawHfGOSAoyPUAQZPVAC
CU+E/SqSJ63749CZmn4aR2P0Z2XNWOjFDot2xAWTvUf0Xf4eQP3J3gi1DoxO6vzsyON8MsMukrMS
KM0NPggRRCttBDd4U0P1A1BLAwQUAAIACAAtXpNNEJxcAVUIAABTHQAAVgAcAGltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMveGhyL2V2ZW50LXVwbG9hZC1wcm9ncmVzcy1jcm9zc29yaWdp
bi1wcmV0dHktZGlmZi5odG1sVVQJAAPGoBpcxqAaXHV4CwABBPUBAAAEFAAAAM1Za3PjthX97l/B
sadxkzFJyZK8smQrs+vHtJO0sxOnzccMSIIi1iDBAKAlb5P/3osXRVKkrHbTTNezJonnfZx77gV8
k8mcrk5uMowSeORYIi/OEBdY3p5XMvXn59As5CvFq5MFJcXzhbd4IYJInHj/OvHgn8Rb6Sc4ZhxJ
woqFV7ACL3VXxHiCuR8xKVm+8Mbl1kvgHSfLk99OzHJ2kZhRxhfe2WhyrfuCR0LxPUlT2x+h+HnN
WVUkvhuaztVPcyOzg2CUJN5ZkiSmL2WF9FOUE/q68HJWMFGi2AqYI74mIPIY597INJUMlNN6cExB
oxesBcrGHUknk0nP+gIVwheYk7TRKchnrPdobupTnMqFNwpmrj0hoqQIFiEFWMZKuCGJzGDyaPQn
Kx9KElKs65lGNusa9db2jhWXFBkIJevhGXvBvKPRbDZbDhkbY2OGQPnke9hL2MkpZQjU4GSdybbn
1Kg7UB+BLm4rBqYnElQcdVSWKKLYjzGlLS19vW7LSpsMtPO1DxXUNhyVO8mecKx8NwgaPbkNmS5c
LGad3QFQo3JrdnjYluBeWB9UwxdeoB5dDQfFEyTB0av67WlRP1AWP39EXAag6iIlXEg/zghNBg2r
tnuC+ReHFuM4B9devLGf3cOZ3wDOj9SQFuxmDnWAFkliRH1EyRpiQ7IetThWSP8LKhKKnTnsOsqE
6jvDxqE7PMcVF8o1SuxuBKIIvFM5j8GeNXBM8GjxDknRwvk+HNYcvy47wAxmb/nLmNgLJHvTzEHK
Wd4xtuVHtYey+t+rPMIc0ISb6DKtTvB9GrWovb5uEaALlz4adJE8nU576abp/Zpj1EIzEwImDGrC
tziw8OyDiBG3BaeJJayG4lrFXsIxSWLQLAdIquQqOpWY1oCOTSxqnCKtWIVJvolW3QX21J+gB8fo
2VcNRiCSozVueWbhXdYGjyhSVlQDY6AGkAFEsW9eV++dV+bT60HuTXG6IwAFK1ixTo+NaO6ZmqRJ
eyo4WwwPv8bXy0M5vV7JskxTDhsVw+k6SfYW8BJMh2fg6zelCb/xnqqyZFxCpuUWyWDUPMeFFN43
IeyHKpkxY2+TjVUxA6iXgNPYeUpP0GMG8n89RgmDABJ6sKOzKwdsRTeI0jsnQe/oS5PLcrT1O+k9
h7rANl2O6rzT3RrsfnCfOrLrkG5t0ydnwEps0qa/wdEzkb7kKuyMJYzgXnAplg01pk5pIZGsxIcq
ghweqKDplQJGnknGaIR4u9/tmFKsA3PXkbPPdWvNSRMTvrZ8Uq+uSFDvw5XgEGEcrOB2aEjJFpt1
LA2P2ioFSJceJrr2k/eGAAXwDsLqNT/7pEjwFrjpgGq7/NcQoU8vy0GtrDa35FUoMW2c9mYk2C9i
2zcFvdoJOjbYdbnHfGlh7XuduOxnLXBdkLW2JilHuZGwEx7t6qERGncDBLtvm1coMdnG4hZTqBeh
VD4iH11dP+7gZVPxQKc2RLuvrh6T/aq4XRPbNYz59jE8WAkkjl7NNu8dF7gTzqjZ+6NLjZ2jyNU7
F9L7Yh4IksYhR+TIlPBNqi0Yh+blALlY/VXlJfo2N3q4uB71DaEownSBUoiwi73ppl0vovNwAaqe
er96p8uTOv82snZ3NkVQmLPUl68l7l3qdFAiO7Bzss0w1QRZ16BI1aADqeksx0K4emPQzn1uaUTH
k+bnYzIgZBaog14Iq8Rd3QI17Gdc3DVyZF96d5VGN7M0c4rickCtRoLjdvttkWhJZOJS31HSWGhA
aYOliolWurDV3kCt10yvUQVRVTR5x6X1hLwsUhZbG7JKKr5ohl9EK51JbBfgJQVZIIONnSLNHOmt
mhwHNcyPGTZbhjbTrkERpYxknoS+yEyzmBPeC0GKnOXfLDhA6oizDXgeKoEMwVxbFBEZqCKoVmh6
Zav4uhSx344mVCGr/o/a2dRd6XRr/JwkcMoyGipPCXf47kktUIcxgV7ACWAK3EkwzZPeXs7zx8HE
lEy7yw9XBvQ44+z+/r4R22fzx/vH2WMvUUFx2Q/nh4eHPqkXOC+BqloosGVaZ2QAryBpiwIeruej
uSWwmGLEf9Z1gjsKqBZ9bMrUkJvQ3rrdiJiTEnzK49vTTMpSLMLQBFTA+DpEn9A2pCQS4adfKsxf
7QOMNg0uA6gog0/idAXL6WVWXnvBTyI00PQNyNqD22NjlmBfuRlvYNi3AAbl79vpvDUjtHeJEUte
4QGxA6ohIW7P3WFBXSlm41X4T3A58Ft4jyQKH356Cn/C0XdE2seHitAk/AFyNBLYJ2UGSBIkr6Ao
ZzwEcIEHfImBneHEX1EpQpIr0OMk3ExiZSEfICjhXJDrYSLcZjzELxBBflWC4RO/5GwNk4UfcyYE
A+ABBUGBVCEayK0EVcZtDRp3TOf7PfrsP9Su7gQ8kUGRnnSGqAOR17pL0neukKjdCH2LsKtRzldj
sDf0r1qjgCzeHgOZ/3xle8BXIMYXC3N5hDCXw8J8fP/05P1DO8TT3hFw8loTAZkWSjPgE0mAKf+s
kA/AH1++C0bwM17M56ORdil4kFU8BiDBCVHgQl0lJkH5+rXX1VM/mto2olBZRXfv2+Q435oj7Zu+
bYw7aNXJEVb9qohEuTzgZzhfrz6CRvDQ72Bq83WEwXdmhWbCAfVg028VB9xORu++Qnm5BN31ifz2
f+KctnmB+d+2rR100LAHjMaO8IAxLNQaq8ebUD30+/u/fm++/h8Mq+QAYSFX/1wVcBCIMwxHrR/M
i2ebkKkoEmy1+CND5feiwekRXpz+t8wDB3so4+XvRD1fpujsCEVnX67oHx3yX2aUqyOMcnV8EvxP
EN956FIHqgX9t9R/A1BLAwQKAAAAAABGY5NNAAAAAAAAAAAAAAAAGAAcAGxlZ2FjeS1hbmltYXRp
b24tZW5naW5lL1VUCQADY6kaXN60Glx1eAsAAQT1AQAABBQAAABQSwMECgAAAAAARmOTTQAAAAAA
AAAAAAAAAB0AHABsZWdhY3ktYW5pbWF0aW9uLWVuZ2luZS9mYXN0L1VUCQADY6kaXN60Glx1eAsA
AQT1AQAABBQAAABQSwMECgAAAAAARmOTTQAAAAAAAAAAAAAAACQAHABsZWdhY3ktYW5pbWF0aW9u
LWVuZ2luZS9mYXN0L2ltYWdlcy9VVAkAA2OpGlzetBpcdXgLAAEE9QEAAAQUAAAAUEsDBBQAAgAI
AEZjk02xXyhUZAAAAGwAAABGABwAbGVnYWN5LWFuaW1hdGlvbi1lbmdpbmUvZmFzdC9pbWFnZXMv
aW1hZ2UtY29weS1tZW1vcnktdXNhZ2Utc3RkZXJyLnR4dFVUCQADY6kaXGOpGlx1eAsAAQT1AQAA
BBQAAAAzMjC00DU00jW0VDA0sjIyszI01DMyNVcIT03yziwJSS0uCSrNy0stciwoiDa2MDMztzI2
NLIwMY9VCHDyLEnNdc7PyUlNLsnMzwtOLSrLTE4tUkjOB2oACymkZBZDeakpelwAUEsDBAoAAAAA
AExek00AAAAAAAAAAAAAAAAGABwAbWVkaWEvVVQJAAMAoRpc3rQaXHV4CwABBPUBAAAEFAAAAFBL
AwQUAAIACABuaJNNieO7a18AAABmAAAAIgAcAG1lZGlhL2V2ZW50LXF1ZXVlLWNyYXNoLXN0ZGVy
ci50eHRVVAkAAx+yGlwAoRpcdXgLAAEE9QEAAAQUAAAAc/b3C/b3cVXwdQ0OdnR3tVLIycxLVTA2
slIIrswrSaxwLSrKL7JSCM1LrShITS5JTVEoyc9OzVNQr1XXU3CFialrqAPFFYpLEotKFBKBsplp
6grJ+XkpmSWZ+Xl6XABQSwMEFAACAAgAr2aTTaL0h0tjAgAAohUAABoAHABweXdlYnNvY2tldC53
cy5sb2ctZXJyLnR4dFVUCQADyq8aXM+tGlx1eAsAAQT1AQAABBQAAADtlFtvmzAUgN/zK4760kSj
mEtCGt52SbdpUzclVfsQRZaBQ2PFYGY7zdivn0PalWrZXtZWq4RAQsaX8/mco28ReP7piR+c+BPw
g3gUxn7oBGNvCYur17Pzj+fvl0BpwXhJqXuFyVymazQz/LZBbT6wMhOoYvBd758eXkUuUxWDE0hl
hjD0QgcK1JpdI5xJlfAsw7K3OAw7tLDT2ezL7BDqHNXNDnH6PcXKcFkCL6FSMrWn8/Ia1P4qkCtZ
xNA/jmP/2IEoGA7HDnj2HfQuFEsxYeka+oW0SxWmWBpImRAgmDaDuAdwxgXCEZnX2mBBPvNEMVWT
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
0omZ9/RGlTjQepLdYkd+Dh32guDCl53Xr4/va/QRrwOaiBcObOZT0CmvLfubzeMSPJPplziU/q2a
bYB+GMleKZpjJXZfPJ7M3ZPGCeh9Z+764+WT7GnBONWjd2YnD5ZDIPL5fHpZVD1TKVRxeQ1daDZf
lr2zXzRE9mQ/e7+ffUBIlmkGeh5s2PrSqthW/xvBL2SWwGLGZrCP/7pCDBWlBFHWStdkYbsCvgmg
BffUJo3/oO4FBo9H02lgF+j3zkyT0ykgg69P2PApkDafuhFXovaXsdgY2Sb0u9wLtUKhGV0rbMEM
nr/S7Qh6S9wbPqxHKUZP6BkSCKzslm8g5nsZPBspvkBxVgqxIqtVaMUynoIBz7QvRNgmdF4C/+g7
5ppxmPXESwt/JBIKQNqMNR8lzXFFv+rUoA28UPT0aQ+murlVKNVGrdJiDC4G9aIYlTjd9c2gNMo8
eRD1AmF7V5Mt+qJ4eampQFcYa7Z9yF0U9cxbYPrPHTuZ/M20d2Y/H9IO879QSwMECgAAAAAASWmT
TQAAAAAAAAAAAAAAAAgAHAByZXRyaWVzL1VUCQADurMaXN60Glx1eAsAAQT1AQAABBQAAABQSwME
CgAAAAAASWmTTQAAAAAAAAAAAAAAABEAHAByZXRyaWVzL2ltcG9ydGVkL1VUCQADurMaXN60Glx1
eAsAAQT1AQAABBQAAABQSwMECgAAAAAASWmTTQAAAAAAAAAAAAAAABUAHAByZXRyaWVzL2ltcG9y
dGVkL3czYy9VVAkAA7qzGlzetBpcdXgLAAEE9QEAAAQUAAAAUEsDBAoAAAAAAElpk00AAAAAAAAA
AAAAAAAoABwAcmV0cmllcy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL1VUCQADurMa
XN60Glx1eAsAAQT1AQAABBQAAABQSwMECgAAAAAASWmTTQAAAAAAAAAAAAAAAC8AHAByZXRyaWVz
L2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2VicnRjL1VUCQADurMaXN60Glx1eAsA
AQT1AQAABBQAAABQSwMEFAACAAgASWmTTTScuV90SwAAjNIBAFYAHAByZXRyaWVzL2ltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2VicnRjL3NpbXBsZWNhbGwtbm8tc3NyY3MuaHR0cHMt
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
dWmGq1AsXEnn1+rm6JDvlKDyNSF16DRXQG3apVZ+HbX4MNYi4T9//fGvv+4eT4df4oSBP8Xb2Iof
OPRkxTzPdl7n58vntEYziGt0PdukdHZ+jWmLlJMengkiOpbN9fkFfnr8x/gV08+Louj6fEkJb8Kv
8OdxR1df37r8+qQKMDzv279MCxhxAfoC3dyv2y+QnlVavIvWGKYZErJFN0+Wr5mNoZnTRH7ZirJk
yMmTClj61vKpWSLYxLEKpxY8+dsfL6dTlMFGfIVeaS7Oy1do5Y3rVjdOaVnq8seH5FtdZjpZZjTf
vHZ+/oe33cssM+LJubbY/fwCfxijl+l5WRO4hh9AvnPfnZ9eL9dpA2UNboaabVtevEG+eMSomTko
XqygRO3jBiW9Q0WLKXE3B3KFCfiw2I0GKHrL9aCpKwFZHHvDlEA/lLLcihtpiAIN3kFbPmvEYzRE
Egn5NUiib2y0Lola17787vdfiTpPNbblArhQPbJbNZNENGu8KhkvLRsvzcVnqXjl77atYxtnFX+J
Px5Op2kVUQ9Og/FiG212cuUirbwItR+5FU/QBZf911XRm/uEaJaRKJWZrMzJ88GAmnIbe9l4Nj0X
+/zbf/i43+dDBG/ft9LNi1t4mY9BNiQD0WXhJk+9v/0KupOluM9qlIBA9ObJt5YqHVMzoJ2obuZK
Ms1INUxyW1lyic/WM8nlmtvKmttyse2EUwP2p/j4Nu+30fJ+k4MiQWzN3ZRdVhIqEKdnFxS9/M2q
IZ4miZvInstemiFemvZpFN3mp//zsPOt49Z3vVH8nme1990YUEzPi7vXEZVLZnlRb092s8mJE2IY
85ZkaW3yqakm/EEu6RiUk9dHJoN6q/1sMoLMtA2wNJYr6mZxz2Qn1xI3K1Okwk92Doip5gFyDkp+
vOxXJdQRq0AoHeVBy66ZJT8/zBIeNwpcLjtwTTpU7YCW7UDLLohZujCySacAR+EQEzdEdkcdWaB+
O5WW39y0TCXYwgzPK4g6RbV8x01165S8dQ0PRuzi7eWrSWMpO1Nm/bO/HE7EjRb3ru+c5EZTB0J2
fp2S/Cjm/MoeBNEuva45v6qVHTHy9qREhAWisttNoCyCfTNDKp9a20i/XOh0eYmBKKeh9vLyhTUE
phI+XMuggyk8T0s0G9ARNGZzzGFlgaus21THgz5dl1YZLukJfkmGb12C6yL/8Gh4en7Uy4hD1k9W
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
zqxKdc5IzEtPTVGwVTAxsDTjssMnCQBQSwMEFAACAAgADWmTTcq0CVwiAAAAOgAAADAAHAB3ZWJy
dGMvYXVkaW8tcGVlci1jb25uZWN0aW9uLXdlYmF1ZGlvLXN0ZGVyci50eHRVVAkAA0qzGlwnohpc
dXgLAAEE9QEAAAQUAAAAs7Ozs1NIK0rMTQ3OrEp1zkjMS09NUbBVMDGwNOOywycJAFBLAwQUAAIA
CAAOaZNNJC7ImSIAAAB0AAAAJQAcAHdlYnJ0Yy9hdWRpby1yZXBsYWNlLXRyYWNrLXN0ZGVyci50
eHRVVAkAA0yzGlwoohpcdXgLAAEE9QEAAAQUAAAAs7Ozs1NIK0rMTQ3OrEp1zkjMS09NUbBVMDGw
NOOyo40kAFBLAwQUAAIACAAPaZNNyrQJXCIAAAA6AAAAIwAcAHdlYnJ0Yy9jbG9uZS1hdWRpby10
cmFjay1zdGRlcnIudHh0VVQJAANOsxpcK6IaXHV4CwABBPUBAAAEFAAAALOzs7NTSCtKzE0NzqxK
dc5IzEtPTVGwVTAxsDTjssMnCQBQSwMEFAACAAgAEGmTTdCYEWMiAAAA6AAAADAAHAB3ZWJydGMv
Z2V0VXNlck1lZGlhLXdlYmF1ZGlvLWF1dG9wbGF5LXN0ZGVyci50eHRVVAkAA1CzGlwsohpcdXgL
AAEE9QEAAAQUAAAAs7Ozs1NIK0rMTQ3OrEp1zkjMS09NUbBVMDGwNOOyGz6SAFBLAwQUAAIACAAU
aZNNyrQJXCIAAAA6AAAALAAcAHdlYnJ0Yy9wZWVyLWNvbm5lY3Rpb24tYXVkaW8tbXV0ZS1zdGRl
cnIudHh0VVQJAANYsxpcNKIaXHV4CwABBPUBAAAEFAAAALOzs7NTSCtKzE0NzqxKdc5IzEtPTVGw
VTAxsDTjssMnCQBQSwMEFAACAAgAE2mTTdCYEWMiAAAA6AAAAC0AHAB3ZWJydGMvcGVlci1jb25u
ZWN0aW9uLWF1ZGlvLW11dGUyLXN0ZGVyci50eHRVVAkAA1azGlwxohpcdXgLAAEE9QEAAAQUAAAA
s7Ozs1NIK0rMTQ3OrEp1zkjMS09NUbBVMDGwNOOyGz6SAFBLAwQUAAIACAAVaZNNJC7ImSIAAAB0
AAAALgAcAHdlYnJ0Yy9wZWVyLWNvbm5lY3Rpb24tYXVkaW8tdW5tdXRlLXN0ZGVyci50eHRVVAkA
A1mzGlw1ohpcdXgLAAEE9QEAAAQUAAAAs7Ozs1NIK0rMTQ3OrEp1zkjMS09NUbBVMDGwNOOyo40k
AFBLAwQUAAIACAAVaZNNJC7ImSIAAAB0AAAAPgAcAHdlYnJ0Yy9wZWVyLWNvbm5lY3Rpb24tY3Jl
YXRlTWVkaWFTdHJlYW1EZXN0aW5hdGlvbi1zdGRlcnIudHh0VVQJAANZsxpcNqIaXHV4CwABBPUB
AAAEFAAAALOzs7NTSCtKzE0NzqxKdc5IzEtPTVGwVTAxsDTjsqONJABQSwMEFAACAAgAF2mTTcq0
CVwiAAAAOgAAADMAHAB3ZWJydGMvcGVlci1jb25uZWN0aW9uLXJlbW90ZS1hdWRpby1tdXRlLXN0
ZGVyci50eHRVVAkAA12zGlw6ohpcdXgLAAEE9QEAAAQUAAAAs7Ozs1NIK0rMTQ3OrEp1zkjMS09N
UbBVMDGwNOOywycJAFBLAwQUAAIACAAWaZNN0JgRYyIAAADoAAAANAAcAHdlYnJ0Yy9wZWVyLWNv
bm5lY3Rpb24tcmVtb3RlLWF1ZGlvLW11dGUyLXN0ZGVyci50eHRVVAkAA1uzGlw4ohpcdXgLAAEE
9QEAAAQUAAAAs7Ozs1NIK0rMTQ3OrEp1zkjMS09NUbBVMDGwNOOyGz6SAFBLAwQUAAIACADjaZNN
ZFOQThMcGAAeLiYBGQAcAHdwdHdrX3Byb2Nlc3NfbG9nLm91dC50eHRVVAkAA9q0GlynnBpcdXgL
AAEE9QEAAAQUAAAA7D3bdttGku/5Cj6sFXvWLeIO0DuaHMcZZ7y7iX1iz+ZhnPFpAk0KIxBgAFCy
dnf+fRqAKJESAHY3+gKAPI4diiLRda/qqurqX1//8vO7n398dYPmYB3BfJGkK5CjLM9ezcM4+HKZ
ZHkMV2gSxhM/iRfhchJmkwCtU+TDHAX/MdlkaFJ+FAZBirIMfzLLEQy++VXco3/48/d/rX1wnOSv
FzlKL/4TxhPdm+izV6b+yjYmhqbPJj/+9Ombb979/PZ93Vf/moXxcoK+hllevCigm/gozWUs9ub1
gaWqz6+TFL/GJFrATZQHoZ8//2N+u0aTbyP8oG//9HLyf99e5vn621eTv3mepr2c4H/1315Ovr3J
suJNe2a5TvVz8aM106pfF18q35lZlvnbP180A/JLssnRZA1zjHf8avL36fPzP7z4N7rPfz5f39J/
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
HBwau5pt5zrZ0JpILgRQTSdpH+RMPi1W1+tPeYqc7RchpWxZ14qK9nZy+A82u4huKiPMShJ4BYBy
yftGwSpHevWYkJ3HKuKaTpJv5kt9muxutdht277D+pnZX7Pf51Y+Oed0c4W8E7aSu/Et9FL9V1kT
9EC9FSJX1KQ4nx3FQdfNtzw9POcphn2WwouegRlubuarB2dR6jfCyhp9dRUsPXMIhxdet2/in96O
l9hTtQaW66IcrLA4KGQcbuc3s5Xy1bc2eYqPgbJK/ttVilmnm/AY6VZ5MAVAK0dw+3WYqQZ/3C02
H7bFj2CXnO7zzTKLhFrWQKlOLHZKqfXuUaeUXcjrsTHv6jaQfEq6ChgkLXZlO+HjW5VnatW3LxBM
LxI06XNUjWj8gxzURgy3+MQnYzMdF/iG7Rb4+jbXNPhV7qRqJajQlT9fZ1W+c9GRpnUavaov8Cwy
kLyacw9ep7kH79XnHrzGojdfVrvZZ6tCN3uIqhdkuRedaFX3ouG4UyU1F5SucrDGmrQ7DranYLuC
YEXhqkZgxeT1X+er3eLu5qdMiDZfnPV0trpNpqCFSOP9fuYLM3YVxnsCYuvUXNMSmomu1ojjBkKL
5THMhnfXVTnORTvH5j0bo6VeUxVJXhcNyU5A8aq9hLInUw5ZsJ02+abpm45KBTZHpYI6kh176jFj
g+Vs9a6Fq2kKAPHKTcbmr+o7pSivF1v1iy+DldqGHKTxGj3Fgn7ZSZqv3MT64J61V9ZebYGlDBrf
IuPKr9mm8juNtPptxK1ea6LyIKO2nrUsDsXZ2st+dTO5m16XrtfzaU2HXp9FbrPnW8tNW8ymdm0w
7N1WygpiC/22uOfRtixptzVVWg2IM3Ze4+q6tJueTK5fVw3p9v3s+v6GOqebKDfNX6NPYkWc12+l
R6FvYwS/UmHamdns1UrRjshv3wZzye8PLLVlNPg2GA1+wz3EYpszG3EVsXZ2BlSNyTu/26Jy16+U
bX/uSKt+v1jt1tnHA8WCrSywODilLa/sszf3I29kqM1o8DOz155wDGxQtEH9Vn/HRS7PAdKUpRxY
ZCAHZ9bnIw9f9jGlsuZhZew21cPleZVi1e1ONRStV2lq0lcdtEZZzTtAgUU9U6qwX6lYS1uubtBI
P542wz5B2fvMQCSPJPybxX1nnDaN65NwNG8OlPRM/Qv7Qgf+RTOuSWiDaxLW6jTfrNe794Pb9Xax
W6xX24YuWDq7/sr+RQXFlGcPajjcGHQT3Tk3Z6sAU57bJau1Lj1PbMLtODbivp6GoAelTnME3OEd
uzZfy1t8Fxp2BMtRRWF73cY0etCn0Z9BRY0mdGSDCR31tXdtWQeRDVGkqGkX2OI0un9RRaydlctW
Ywo96DiFHtTe4nJvAze4tGJiOu7aGyiM5OKqKO4rutpSRbENqihuyKIOLTKkw1dvP4d1m82JDWZz
0sZhHd+x0IZ65dfB+05fUtKkUkha7gZXDZSjtmkH5nDtFrDXsd3pNVqYF9oYewub7WLTYlPhk0C8
aruo+R42vcND9Natw5MHiGqmmc2xN6ePvR1ERI2S3Yb+ZI5Tvw1iy3EBr9pxgSexyy7jpqVW0qug
CtLfsUEFNdVoLLLIgI5evW0Z1a1ZbGiQ47TSIMd3LbSd3D5J37xodK2JPDnFGuSck3Hs1lhB6Xds
LlZpl7NYfZwtF9ezrPLs69nqSybmPwxut/O763V7svgUEOcjkerl7FN4q/t8UV3CsRLc5Ww1Wyos
HJta5UbNV1s4fm8lVwzEPOSWm9nu6v18241ofjh578o3aiT69hiJDTdE8l2bo8lujQGsvEc2WmEZ
q2yXh4KllcBVqcnzG+S2BJL9PhdykI1rjFjZ0DrJCeryAPW1cIOb9fV8sN19Wc637+fz3eD6y2p2
s7gazK6v272epiRsTdVxxBbZ7n0VcwtmWGCPGRb09YBNmB4FpErrlkldsJ2tZx3Xrc1t6DbihK3k
nzwLvS2vLjsGw79mk4FfOrNcjkJTZwVL0LG/ETTqZljtHLfs0HgN945o3rQKO8hQ1GeNhWdTTNuE
4XJU4Nm95fUso5xHZ+MpgbjZUwKuDbWkrtN8juqkjXBv2r9bLxRAs0+zL81YK7bb8wXCdLkMr+eQ
2odNmteRrg2FqG5/jLIZ1fgcZ7UeJCkHSX6XxpZcTlDDHQJFHAybs7Jew0aJDWXIrvvKc3ZejWUz
B4SE21Es6DlIepOkBZPEhmtJXbch/zGxyG1MXn3VX1KjERJ2bHuEzahZG+53LHHZbHFl5lzY12HH
adwV7k/7GPKyoYLA9V/paR+npEN40m5r3zUsCFJuqXa33a1vBmqam3m2H+P796l++/P83WK723xp
cpG552+qsiuxMfaenOvp+abuZzomJXOTWN35qaZPFJ28dKRVq7eA096Bn1gPERQ3Muu/2zS0JS4Z
Wiykmjfvgld7CY0bNHouyLmwuMuUU/pGXxJAj99nEvleBH19PX+rhGuLFlcOQMqucaLExv1Dr5Sq
2M1F2ra4tiMAvNbo+hMCbsz/zy1OwoYOZp9rAKI4AzcahGgKnIL0cybmR34JVrsrHJ7q2/oK6h5q
Qn9Zxz+8qKRw94umTwbv50ulApqj8zKQtMIDfXVPBUM/tCFpWu56Bznb/fDi8KZu2m0+e/mMTjyw
xhySo8WgUHjRxkWXr6JrwoG9boMvi057QhnMb253XwbZUwbXItVbdAdPw9G+WVbAcXMtjIa4Ndkr
PWEU8XiiPIZ6XsdM7ebg3XJ9OVtaceqguP8XFW9hVg41PZnXQubnF1JzK5mo29v51eLt4mqx+9Ja
Rue5uc8zipKTv3tvslFv0obbid3o/NJ2TRH71frmZr36en35u0LhYLbdrq8W9/VHzUWRjszY/vKL
+roWFhKFF23l6F+bnHtOgbbplBeau0CC9IdfOs/RCgiv+BhBeNFWnlYL3UulID9YloltAb62nVpe
TJtqreGspPBsm8nmGgDpdEeKBTpiG07NxBUKGm8W221Ws75ZvHuvnOn1h/mqPY/3mbmbPv/j2lzM
5va3tLXoe8b2nAiK+ythq5vhz0iU9ja4FATnGoMt3DSA9Pk3v37/nRgQg6v1SunyuwzLLbpCxyBo
6PhT6FgUrOg7NNVnoh+jpTYt9NJwFLNKExtM41ff+iAsd9x2/Xaw+3I73yP0q89t7eYzU5fN9Ga/
fUDlX6/mn3azzbt5m1ne4zD0EeAWrOvEhkxXUtIOml2vb5UVNVCzLi9nVx9aJN2DU59nSvo4l55z
frLqyl9H0Xsj9NGIdcyQ38422/lG/uxtvu2AAqaLlak9GnzaLHZNHnqsyq0HBVO5WrNq6GnlGrrO
Oax7IVXjhtcpFYqDVciD8S4scKO8izNW+9W4/5zNgqYxU9iVtbGcx+nLedp25rwLC5w576KewMqe
fLqLsBAMrzpcVjVncX4nC8paOCW1yfbL6ur9Zr1a322Xbfa5Kw9ffwilLWPYhgtqvL5Va1eG5lPW
a6e4riH4eqHQM05DFrIN1/14Ts8C9ZpQPWJKRg7chqronyJmdpUdjtp+PdztNrmOhD9ipu3VWvll
WVfP9Z1SJ+rdYvXOvjPgxVFf6Ch4TpRUOV5+YKN6K74bh093sR0stvb5eo9Bsy0sUsxrccs0qGiZ
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
/dFvflff/RO7rGWXtaxOooRClFBIDgrJQScwDYSBNOAqVhbJQSfgX7GQbAvJtpDIFgrZQiFb6AQe
LctPfdvdbF/YpQ+dgKtYWba9i/ShEDZ0AmZqZdkWEvlEIZ8opA+F9KGQPhTSh0L60Am4rJVF+lBI
HzoB87BuSB86AX/YPuLChkLYUGwbEelDJ+DF+cxvG5HtS5l8opBPFPKJQthQCBuK/ejJ5v0pZQud
wDAwDYSBNLAI8HaUsoVOwFWaH9oefajX0r2W7od2U++uMsx0mOnwQ4cfOh59aBnwWqbLTq9lmsd0
lekq01XCVcLUww8NPzT8UB71EzD19I6ly6ar5KNV/GGX11IuWy5bXly5bLlsuezyx7BcZZvY9gbt
R3/F+7HNdJuYD3LjjeIEmoFuYBiYBsLAMmAePupuX053K6e7lU+An4vbl9Pdyunm5HQvcroXOZuP
evPJbj7ZzSfbzckn4LLDZaf3Y7qKT3bzyXYv8gl4P8Jr8VF3c3K29EN9kFu6is+te5HTvcjpXuQT
8EN9bpvPrRuLT8BMfUybj6k7jdOdxulO43Sn8Qm47HZZn2w3Fqcbi0+APNxYnG4sTjcWpxuL023D
J8DFuW34BPwr6m33qXQf8QmEgTTghw4/Y3i1KnL3Me0+pt3HtPuYdh/TriK70zjdaXwCLutj6j7i
dB9xuo843Uec7iNOtw2fgNfik+3G4nSXcLpLON0lnO4STncJn4DX8u0b+DtyPrvDrjvsusOuO+y6
w6477LrDrjvsusOuO+y6w6477LrDrjvsusOuO+y6w6477LrDrjvsusOuO+y6w6477LrDrjvs+vnD
rnd9qu33X/7xveefPvunpy/e+99e/s+TP37z9acvT5a9+PYDfp1Z3A8s+mPPrz1/+uLLb55/dj7l
ZfC/ffr83J0Xv/3vL36dpP+91f69n+CPP6/3E6/0+dOvvnz+9V/3et+s+de46h8Ekp5nyCfVJlas
VIqVSrFSJ2AZUi77sgwtl1U/u/opmuoELBB2xl397I/U0UZYvNUJTANpoAz4oXa1g/FeCsBKAVgp
ACsFYKUArBSAlQKwUgBWCsBKAVgnYKaq9OgmZjM9VOlh7zwUZZlZKTMrZWalzKyUmXUCXtw0D0VZ
qlZK1UqpWilV6wTMQ9kWopXDRlh4VcqqSllVKavqBLzJvsBKojoBP8MnW/DUCXjH7HvFSqVYqZQi
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
dKt5udX8BEzMSufe83KrebnV/AS8OJu8aelz7/kJuKzvldPSNy1909LnhvZy//oJuIp1zP3rJ+Aq
1rFp2XLL+wl4T+3Y3ANfbmg/AT/DF033r5f710+gGegGpoEwkAZc1hdNd7iXG9rL/esnUAa4Qe5f
PwGvxdbJ/esn4IdaDMJn3/3r5f71E3CV8WgV75jPfviou1293K5+Ai5rH/RqQ/s7Moq8w687/LrD
rzv8usOvO/y6w687/LrDrzv8usOvO/y6w687/LrDrzv8usOvO/y6w687/LrDrzv8usOvO/y6w687
/Prlh1/v+mDmZy9evPy/E/rT1+993tazl/82vv3XJ198/uzpk398/vTTf37y5VefffHsxZOW7Vf0
k/xpufxYm8k/fPns6xfv/fGrL745f/erJ8+f/tM3X3z6/Lf/8uUf/vCLXs7pCv7uhxb8937qP+0O
/Dh70Gfnl+TFe//x0+dPn339Dy9/Yf7Pb54+/9f/9PSLp599/eXzJx988cWvbBX6IxP4sT/PHyTt
VqiuobqG7xES1U7AJ125lahWEtUq1N9Qf0O5FbF2AhYYv9cNxTR8SwjVVYBaCVAreWkn4IeuRx9q
Yjb0AtRKgNoJeC2qa6iuAtROoBkIA2XAD1U709477b1FrJVEtZKoVhLVTsA87L1FrJ2AifmdbPpd
RirIaf+etuvi2ko6W0lnK+lsJYythLGVMLYSxlbC2EoYWwljOwETs12XznYCZqqoy28r+W0lv63k
t5X8tpLfdgJmalFKi1JalCS8lYS3kvBWEt5KoNsJeIN8BxDoVvLbSn7bCbiKdUygWwl0K4Fulb4l
pKVP5NsJeJMtfSLfTsA8/LYj/bYjLY5pcZQjdwLeIN9F0mopaa4kzZWkuSrLZ/lyUtbT8l2kLLDl
tx3S6krS3An4oZZPWXQn4IdaPoXTlXC6ExgGpgEz9X1GOF0JpyvhdCWcrmTRlei5Ej1XkuZKjlyJ
jSuxcSU2rso6VtaxsmyVVUqw3AmYh2VLjlyVNajslMqiVH5TIU+u5MlV+dVFWbbK72TlyZW0uBPw
Q/0+VXzcCTz6UK/FglIWFHlyJS3uBB59KPdj2VyJjzuBMJAGygA/BgFzJ9ANDAPmYf2QOFcS50ri
XC3LhcS5kjh3AuZhLyWT7gS8yVaHZXVYtj3LLkcEXQmYOwEv32d/+WRLnCuJcyfgXfdRF0FXIuhK
4twJeHE++/LkSnxciY8r8XElLa6Ew5VwuFo+yMLhTsBMfbLFx5VwuBMwUx/kZSOwbAQEzJWAuRPw
an32Jc6VxLmSOFcS50ri3AmEgTRQBkzMlzMhdSWk7gRMzPqxrQ7b6iDXrrblQtBdCborQXcl6K4E
3Z2AeVgutr2DXLsSY3cCXu14tIpXaw2Sa3cCLuubltS6klpX23bDzfrlZv1ys365N7/ceV9utC83
2p+AqdtMuNH+iKmpW4O2bzhuxT8BU/eVZ9ejZb04+w9375e798vd+ydgptaxbR3bdihu+D8BM7X0
bXsYzwicgHlY2B6dEdgUttPTvG+gGegGwkAZWASaH0oNWp4RWJ4ROIFHH+q1dFfppt5dpbtKd5Xu
KsM7Nlx2uOzwanmhOQHv6TDTYWLTZafLTpedrjK9/PloFS8/vPxw2XCV8FrCVdJrST80vZb0FqbL
psumV5uP8vBqy6stMy0zLTMtMy0zLRMrE1vmscxjuexy2eX9WC67vPztsttlt8tul91e7XbZ7dVa
pTyasDyJsDyJcAJpwA9tfiid0gn4oVYpDx4sDx6ctzc/lD5oec5gec5geaxgeaxgeazgBJoBl7Xk
eKzgvFb6GRYUDw2cgIm9S5vJO/y6w687/LrDrzv8usOvO/y6w687/LrDrzv8usOvO/y6w687/LrD
rzv8usOvO/y6w687/LrDrzv8usOvO/y6w69ffvj1rk83/u2bMv7IQ3G/gNnfkje25I2dgL/E6a+X
BVsi2Qn4u2LBbtZniWRLItmSSLYkki2JZCfg1VpbZZadgHlYW5u1VSLZalbOZl0UL7akiZ3AMsDP
RXjYCTQDfqidlzSxJU1siQZbksCW4K8T8EOtaaLBliSwJQlsSQI7AfOw8+pWPVlhS1bYEg22RIMt
0WBLNNgJuKyFUlbYEg22JIGtbuclCWxJAjsBL85nXxLYkgS2JIEtSWAn4OX7qMsKW7LCTsA8bMUk
gS1JYEvw1xL8dQJefrmKxUA02BINtkSDLdFgSzTYEvy15HydgKvYaPVHBcVGq28v386r23l1Oy/R
YEs02BL8dQJpoAwsAy5rHZMEtiSBnYB52JsNvqNagr9OwFWsY3K+lpyvJefrBLw4y5YksCUJbEkC
W4K/luCvJedryflacr6WFK8T8J5apcR6LSleS2jXEtp1Aq4Sjz7Ua7EoDWuQ0K4ltGsJ7ToBl/Xt
TyTXEsm1RHItkVxLJNcSybVEci2BW0vg1hK4dQLm4cueSK4lkmuJ5FoiuZZIriWSa4nkWiK5TsDE
LEoiuZZIriWSa0ngWhK4lnytNe2lBG4tgVtL4NaSr7WkZy3pWSfgKtagaQ2Sr3UCZcBbaA0SuLUE
bi35WktY1hKWtYRlLWFZJ+AqdkrSs5b0rCU96wS8fFsncVon4LK2TgK3lsCtJXBrCdxa8rWWfK0T
MA9bJ/laJ/BoFa/WsiWBa0ngWhK4TsDLt7DJ6FoSuJYErhNwWeuYBK4TeLSKl2/Zmpatadmali2x
XidgYpatt5yv859+8OH3/sQMbaoEfi2BXycwDISBNOAqFrSwfoX1SwLYCbisX8uHFS6scCLBlkiw
EzAPS15Yv8L6FTZVYQ8lNGwJDVsywpZIsBUWtLCgyQhbEsBWWJ3cor3ckb3ckb3ckX0C/jpYndyR
vdyRfQJei9XJLdrLLdrLLdrLLdonYB6Wq7Bcha9+Yf1y3/cJmJj1K+zD3Ai+3Ah+Ai5r/XKr+HJn
+HJn+Al4P6xf7h1f7h1fbhVfbhU/AZe1KLl3/AS6gWFgGggDaYD74Wby5WbyE/BD7bLcTL7cTL7c
TL7cTL7cTL7cTL7cTL7cTL7cTL7cTH4CZmodS+uYm8mXm8mXm8mXm8mXm8mXO8OXO8OXG8GXG8GX
G8GXG8GXG8GXG8GX27xPwFVsqtyzfQJ+hlUqrVJpU5X5aBVTtyi5iXu5Z/sEXPZNDTr9xofvf/dP
7J3ciX0Cfrqlxq3Zy53Yy43Xy43Xy43Xy33Wy33Wy23VqywkZZlw0/Ry0/Ry0/Ry0/Ry0/Qq60bZ
zLitermLermLermLerlperlHerlHerlH+gS8WqtC+f7mLurlLurlLurlLuoTMFP7H7dVL7dVn4CJ
2SGV74D1bcv0jsz97rDrDrvusOsOu+6w6w677rDrDrvusOsOu+6w6w677rDrDrvusOsOu+6w6w67
7rDrDrvusOsOu+6w6w677rDrDrt+/rDrb/K42/OnX335/Ou/7qG3N2v+VY6+vf2wFw9/+c+f8ftL
HOl+rdv2b+f8a9+uv4KF3zs+7vgGgHoeSUuD6l9+CyMr7ASsFbYDssKWrLAlK+wETMwXH+FhS3jY
Eh62hIedgIn5PU35JlT2GPLGlryxJW9syRtb8saWvLFVvhrJGzsBE7MLkUi2JJKdgIn5aiSzbMks
OwETsz2RWbZklp3Ao2W9HzYwUs2WVLMT8H7YwJSvRmLOlpizE2gGuoFhYBpIA2WAxAShLUFoSxDa
knu25J4tuWcn4OX7riT37ATMw65IENoShHYC5mETJBltSUZbktFOwMRsgpZvU8uuaNkVLbuiZVe0
7IoktJ2AmVqT5a+dgB9qPV2WTwltS0LbktC2xK2dgJlaHJfFUSDbCTxaxXtqcZThdgJevsVRqNsJ
mJjFUcrbCZiHtXBZC8W+nYA3yO+N5MAtOXBLDtwJmJjVUlLcCZiYb3eS4pZguCUYbgmGW4LhlmC4
JRhuCYZbguGWYLglGG4JhluC4U5gGTBTvyGXFLckxS3BcCdgYhZY0XFLdNwSHbdEx52AeVhgRcct
SXEnYB4W2G2BlSV3At4g6+m2nm7rqbS5JVxuCZdbwuVOwDwsn8LlTsA87GC3Haz4uSV+bomfW+Ln
TsBl7U+3/ak8uvNQuqwleFuCBdSdgHlYcSXWnYB5WHFF2J2AiVmChdytt5C70+2t7/+JGVqLhdst
4XZLuN2SZbdk2S1ZdkuW3ZJlt0TXLdF1S3TdEl13AiZmcRZudwImRrXesuy26LoTGAbCwKMPXQY2
geayFNYTMI/mstTRLe1uS7vb0u62tLsT8GopmydgHt3LH37o8DOGnzEefYapT+/Y9Fqmy06vZZrH
NI/pPZ0mNr3J00zDTMNMw0zDxMLEwsTCxMLEwsTSPNI80juW5pEumy6bLlvej3LZctnyfpR5lMuW
yy6XXS67XHa57HLZ5Y9hmccyj20e2x/DNrFtYtvEtok9KmzbxGhDT2/XDHQDw8A0kAbKwDJgHtbC
Zi0UsncC5mFxlLp3AiZmcWzdPCyOUve21L0TcFmLo9S9LXXvBFx2+GOwfIrhOwEvzuIohu8E/FBr
YbMWSu47AZe1FrbwWix9zdLXLH0ettkettkettketjkBr8U61qxjzTrWymUtbB7H2R7H2R7H2Z6+
Oe9CrmKValapZpVqy6tdj1bxaq1SzSrVrFKe4DkBE9smZpVqVqlulfIU0AkMA9NAGEgDZWAZMDHL
lieJtieJtieJtieJTsDELFvdJs/DR+dN2MTs+rqFzeNJ29NIJ2Ae1jHPGm2PFm2PFm2PFm2PFm2P
Fm2PFm1PAW1PAZ2Af8X2y3NC21NA21NA2zM+2zM+J+CHpj99m6v+bVF6R65/d+h1h1536HWHXnfo
dYded+h1h1536HWHXnfodYded+h1h1536HWHXnfodYded+h1h1536HWHXnfodYded+h1h16/3NDr
XR9//Ptnv3/6p6e//+h37339/NNnLz797OvPv3z25IvP//D068//+PTJ0z9+9fW/fvtRv8507kcv
/3f/4R++fPb0LznX+OcOzD357MtnX58//RWv7Cck8rfhebglLm6Ji7srjl1x7GqhxMUTcBVbePGJ
W3ziFp94Aq6i9HUbdAGLW8DiFrC4BSxuAYtbwOIWsLjlKW55ilue4gkMA9NAGigD3A95ilta4gn4
oaqUPMUtT3HLUzwBL05RErB4AiZm+y1xcUtc3BIXt8TFLXFxS1w8AfNQ2CQunoB5KH0iGLcIxhMw
Mb/wkMm4ZTJumYwnYB7qqZDGLaTxBPxB2dMPBVaM45baeAKuop6KcdxSG7fUxi218QS8yfb0wy8r
5DpuuY5bruMe9vRSG7fUxi21cUtt3FIbt9TGLbVxC2ncMhm3CMYTcFnrmEzGLZPxBLqBaSAMpAGW
FcG4RTBuEYwn4LJWOiGNJ+DF2X5P65iQxi2k8QRc1jomtXFLbdxSG7fUxi2k8QRc1qIktXFLbdxS
G7fUxi21cUtt3FIbt9TGLbXxBMzUsjXt+uU6brmOW67jluu45TpuuY5bruMJmJiFTfLjlut4AuaR
5mEdm5YtMY5bjOMW43gCXovfsYpx3EIaT8APtSjJZNwyGbdMxi2CcU+L0rQozUdFyW4rrFKSF09g
GggDaYA8BC2egKtYtiQvbsmLW/LiCZiHDZrkxS15cUte3JIXt+TFEzAP61hYtoQ1bmGNW1jjCZiY
/Zj0xi298QRMzAYtrIVh6ZPvuOU7bvmOJ2AeFraYj5b1BtmPiYTcIiG3BMgtAfIEXNaiJM5xi3Pc
4hxPwIvLR6t4cdYx+Y5bnOMW57ilN27pjTssW+IctzjHLc5xi3Pc4hxPwDxs0OQ7bvmOW5zjFud4
Aibmq2jYwgl8PAETs1pKgNwSIE+gGegGhoFpIAykgTJApmmBTQusFMktRfIETMwCK1Zyi5XcQiO3
0MgtNHILjdxCI7fQyC008gS8H9ZToZFbaOQJuIrVUmjkFhp5Av7CWAvTNlBG5JYRuWVE7rT0pU2e
0MgT8OKshWlPJ1byBMzDni4tn4Int5zJEzAPq2VaHOVMbjmTJ+CyNnlptUybPHmTW97kCbiKxVHe
5Al4ky19Aii3AMotgPIEzMPSl5Y+iZQnwF0XUblFVG6JlFsi5ZZIuSVS7rJslWWrLFtCLLcQyy3E
8gTM1LIl1XJLtdxlYRNzeQJmamGTe7nlXm65l1vu5ZZ7ueVebjGXW8zllmq5pVpumZVbZuUu20DP
Cm3PCm3PCm3P+WzP+ZyAHxqPPsPUrWOe89ll2fJYz/ZYz/ZYz/ZYz/ZYz/ZYz/ZYz/ZYz/ZYzwl4
g6x0nvPZnvPZnvPZnvPZnvPZnvM5ATO1OHrO5wRMzOLoKZ7tGZ0TMLFHVcoGzSM52wM32wM3JxAG
0oCrWLY8cLM9cLM9cLM9cLM9cHMC6915IN7h1x1+3eHXHX7d4dcdft3h1x1+3eHXHX7d4dcdft3h
1x1+3eHXHX7d4dcdft3h1x1+3eHXHX7d4dcdft3h1x1+/fLDr79JT8S/rhvin/HE+9FnBv9HMn/8
BS/67Ue9+OarX+NSX41aX7x4+X8n9Kev3/u8rWcv/218+68n7WdPn/zj86ef/vOTL7/67ItnL560
bE+e/umrp599/fT3f5Xjpm8v/de9429Hzz/vfvzY868/iLvdAi23QMst0HLLr9zyK0/AUmdXI79y
y6/c8iu3/Motv3KLq9zSKbd0yi2dckun3NIpt3TKLZ3yBLxBNkLLRmj5zf/ypVDk5RZ5uUVenoCZ
2l3JwDwB87CZWr4DCsXcQjG3UMwtA3PLwNwyMLcMzC0Dc8vA3DIwtwzMLQNzy8A8AROzdxKKuYVi
noCJ2TtJydxSMreUzC0lcwvF3EIxt1DMEzAxXz2lZG4pmSdgYn4Nt3wXlaO55WhusZlbbOYWm7nF
Zm4pmVtK5paSuaVkbqGYWyjmFoq5hWKewDBgYjaGQjG3UMwtFHNvi7TIyxNwFUuwQMst0PIEvDi/
QhNoucVVbnGVW1zlFka5hVFuYZQn4LVYHKVTbumUWzrlCXgLfY8URrmFUZ6Aq1gLpVNu2ZNb9uQW
NbklS25Bkntbx+RHbnGRWzrkFga5hUFuYZAnYOoWFMmOW7LjfsRt3N9/Bxzvv//9R/1lIAykgU3g
+4/py4Af2vzQ5od+/7l9GTDT5rLff25fBsyjm8f3H9OXgW7g0V8x9WGmw0yHmU6XnV7+9EOnnxFe
bfgZ6SrpxaXXko8+w2XLe1reoPJDyw8tL668Y8vUl1e7zGOZxzKP5Srb+7H90G3qj56XzQ0CB/gy
0A0MA9NAGCgD5AH972XAPJp5+Jg2H9PmU9nao2W9/G4ePpXgAF8GXLZ7+d08uvejm5gPcvNBbj7I
bTz6DC9uesemHzr90OmHhjcozDRcJfxQH/UWj1YxdYsBsL+XAZe1GAD7O4HyQ8trsVw0q0OzOjSr
Q7MYNItBWy5rdWhWB9h+LwOPlvWeLu/pNrFtYhaUtl3FgtIsKP399w00A8NAGGCVbrnolotuueiW
i2656Kp6t35060e3XHSrQ1fEu+WiWy665aJbLnp/lId33c4ALt/LgJkOM7XkdEsO5L6XATO1KHVr
UH9Tcs5v3/kV/e6fPPq7XqXFqNtVdKtTtzr18CotV2AAXwZMzHLVrU7d3qVbruACvgyYhwWNIykv
A+ZhheNIysuAiVnyuiWvW/K6Ja9b4boVrlvhuu1Ot8L19WgVL98K1y1o3ZapW+E4tPIy4LKWvG7J
G1a4YQ81LHnDHmrYMg1r4PC9ZVgUhwVt+FYyLGjDhmjY/wwL2rCgDQvasH4Ny9WwsgwLCSc/Xgb8
K76EDOvHsH4My8WwOgyrw7B3GVaHYTEY9i7DJ3vYmQyf7OGTPXyyh0/28MkePtnDJ3v4ZA+f7OGr
zigTs90ZFoPhsz989ofP/vDZHz7qw2Zm+CAPX4aGT/bwyZ72LtMne/rcTnuX6YM8fW6nvcu0d5m2
KtMne9qqTB/16ZM97V2mj/r0yZ4+2dNWZfpkT9uMaVfx6sTFO/J4vEOvO/S6Q6879LpDrzv0ukOv
O/S6Q6879LpDrzv0ukOvO/S6Q6879LpDrzv0ukOvO/S6Q6879LpDrzv0ukOvO/T65YZe7/o45x++
fPb1i/f++NUX37x40r568vzpP33zxafPf/svX/7hD7/oPO78wvzdDy34792Ln3k87uf7Hp4fll/9
TOvytMGbvmROK/f026Jp5Z5W7mnlnlbuaeWe9nXTyj3t66aVe9rXTdu4aRs37dqmxX5a26e1ffol
1bQuT+vytC5P6/K0Lk+btGmhnr6GTiv3tHJPK/e0a5uW8mkpn3Zt065tWsrno1Jukxa2YGEpD78p
Dkt52JOFtT3sycJiHxb78EU1rP5h9Q+rf1j9w0YvLPZhXxcW+7DYh31dWP3D19DwNTTUh/A1NHzJ
DHvD8CUz/OYrLFth2YLW9jJgHtaxsI6FHWhY2MLCFha28JU2rHThK21Y+sIeNax0YaULm9aw9IVv
sGGlCwtbWNjCwhb2qGGPGpa+sGkNm9awOIbFMSyOYXEMi2NYHMPiGBbHsBaGtTCshWEtDEtfWPoA
vL0MeINsfMNqGVbLsFqmnXDaCafvuGk9TVvjtJ6m9TQtn2n5TMtnWj7T8pmWz7R8puUz26PEvEF2
02mBTQtsWmDTApsW2PSLv7TApgU2LbBpgU078vRtPMejZb1862laT9PymZbPtFqm1TItjmmTl5a+
tPRlPPpQr8XSl3Z9aS1Ma2H6ip+2gWm1TN/502qZvuKn5TMtn2n5TMtnWj7T8pmWz7RaptUy7QvT
WpjWwlyPVvHnYi1MS19a6dLClha2srCVZassW2VfWJatsg0s61hZx8o6Vtaxso6VdawsW2XZKstW
WbbKslWWrfJbgbKOlXWsrGNlHSs7x7KwlYWtrGNlHSvrWNlKlq1kWdjKOlb2hWVhKwtb2ReWla6s
dGVfWJa+si8sa2H5wlsWx7LSlZWurHTlC29Z+srSV/loWS/f0ld2jmXpKytdWenKSldWurLSlX1h
WenKSlf2hWUbWNbCshaWtbCsheUrcTnZKItj2SiW1bJsFMvyWTaKZflcls9lX7jsC5cv3suKu6y4
y4q77ByXJXhZgpcleFmClyV4WXGXFXfZOS5L8LIEL0vwsuIuZ8jLErwswcsSvCzBywK7LLDLRnFZ
YJf1dFk+l43isp4u38SXneOywC7r6bKeLuvpsp4uy+eyfC5fq5ev1cvyuewtVzxa1su3fC7L57Ja
Lovjsi9ctoHL4rishctauKyFqx4t67VYHJfFcVkcl8VxWRyXxXFZC5elb1n6lqVvWfqWlW5Z6dZ+
tCyXvy1920q3rXTbSretdNvCtq1j27K1LVvbsrUtW9uytS1K275wW6W2NWhbg7Y1aNsGbmvQtsnb
1qBtk7ctStsmb49Hy3q1FqVtUdq2gdsqtW0Dt2VrW7a2ZWtbtrZt4LaObavUtg3ctoHbsrUtW9u+
cNsXbvvCbWHbtoHbwrZtA3c+ysPL/7b0vRvfwzv8usOvO/y6w687/LrDrzv8usOvO/y6w687/LrD
rzv8usOvO/y6w687/LrDrzv8usOvO/y6w687/LrDrzv8usOvX2H49a4Pyv0QR/Jlnt4vS/S2Xd2W
6G2J3lbkbUXeVuRtRd5W5G1F3lbkbUXetqvbEr19dd/W7G3N3jaj2xK9LdGPyFebEt3ep0SfQDcw
DEwDYSANlIFlwMSaiVHVT8BMm5k2E2sm1kysu0p3le4q3VW6q/RHq3j53csfXv4wsWFiw8SGiQ3z
GC47/dDph05/+tNVppcfXkt4LeGy4bLhsuGy4cWFNznNI/3Q9EPTD00/tMy0/IzyftSjz/DHsLxB
yxu0XHZ5Lctll9eyzGOZx/aObRPbJrZNbJvYNrFtYlapZpUSQNYEkJ1AGmAVaWJNmliTJtakiZ1A
GHDZ7ipWGFlhJ+AqVhhZYU1WWJMVdgLeUyuMNLEmTaxJEzsB87DCyBtr8sZam+YxvUGWHAFkJ+Cy
02Wny76pQecX9sjkd//E5cKrtNSIJmuiyZposiaJ7ARctvwr5Y0pf2IWo1aPPtRbZ3VqVifRZE00
WRNN1kSTNdFkTRJZk0TWBI81wWNN8NgJuMr2aq09ssqarLImmuwEuoEw4GdYaiSRNcFjTfBYEzx2
AmXg0bL8FkoiOwHzsBiJJmuiyZposiaarEkia5LImiSyJomsCR5rgsea4LEmeKwJHmuCx07AxCxG
3Q6pW526xUhEWRNR1kSUNRFlTSJZk0jWxIs18WJNvFgTHtaEh52A12L/I02sSRNr0sSaNLEmTewE
vDjLlnixJl7sBEzMOiZe7ARcdrmsTZV4sSZe7Oiuy1pyhhVGNFiTBNYkgZ1AGni0CpkOS86w5IgG
OwFXsQbJCjtNhRdnyRmWHOFhTXhYEx52AiZmQzSsQcN2Z1hhhhVGANkJuKwFZdjdiCg7AfPwlUuI
WRNidgJerRVGiNkJuKwvVELMTsCLs6kZVhghZifgh1phhJg1IWZNiFkTYtaEmJ2AP0oLilSzJtWs
ySxrEsmaRLImkewEvIWWCxFlJ+DF2fYM2x6pZk2qWRuPapBtz/AdTMzZCQwD00AY8ENtjMScNTFn
J+CyVikxZ03MWRNz1sScNTFnJ2AeFiW5Z03uWZt2OdOSM8ejv8LPxeMFzcMDJ+BnWB08PNA8K9A8
GtDc59/cxX8CXr6tgpv2T8DL9zGdPqbTx9R9/s1t/c09+s09+s09+s09+s0t+c0t+ef90lvoYzp9
Kt2S38JHLGwEwncPt+Q3t+Q3t+Q3t+Q3t+Q3t+Q3t+Q3N9w399c399efgKv4iIWPmBvuT8BllXn3
1zf31zf31ze305+Aq6j7brhvbrhvbrhv7q9v7p5v7p5vbpZvbpZvbpZvbpZvbpZvbpZvbpZvbpY/
AROzVXA7fXOzfHNv/An4V1R1N7o397U397U397U397W3V/va34152h163aHXHXrdodcdet2h1x16
3aHXHXrdodcdet2h1x163aHXHXrdodcdet2h1x163aHXHXrdodcdet2h1x163aHXLzj0+ls9E/YG
ndhkTDWRUk2kVBMpdQLeL8uajKkmY6qF7YiMqSZjqsmYajKmWjwqfDYb8qFOYBhIA2VgGXAVy5p8
qCYfqsmHavKhmnyoJh+qyYdq8qGafKgmH+oEzMPuQz5UEwfVxEE16U9N+lMT9tSEPbW0rMllanKZ
TsCLsySlJUmU0wmYmCVJtlMT5dREOTXJTSdgHnZBkpua5KYTcFnbIslNTVBTE9TUBDU1QU1NUFMT
1HQCJmbJSUuO5KYml6ml9SMtF3KZmlymEzD1/WgVUhfUdALNQDcwDEwDYSANlAEyle3UZDs1UU5N
lFMT5dQENTVBTSfg1dpaCWpqcpmaXKYml6nJZWpymU7APKwwUpea1KUTcFm/tC17rfJLF0FNTVBT
k8vU5DI1uUxNLlOTy9TkMp2AeVjpBDU1QU1NUNMJmIeVTpRTE8PUxDA1qUtN6lIr65gYphPwat8U
ttNVxIff+xPXt1xJW2rSlpq0pSZtqUlbarKUTsCrtKAJV2rClZpwpSZcqQlXasKVmnClEyBTWUpN
llKTpdRkKTU5SE0OUhN7dAJ+qOVKDlKTg9TkIDU5SE0OUhN71IQaNaFGJ+Aqlqvlq6FQoxPw4myI
lvVL7FETe9SEGp2AF2d1EmrUhBo1oUYn4NVajKQcNaFGJ+DlW4zEHjWxR03sUVsWo2XbJQepyUE6
AfOwfi37MElJJ+ANsn6JTmqCkZpgpCYYqQlGaoKRmhykJgepiT06AZe1bMlBanKQmtijJuWoSTlq
Qo1OoBnoBqYBVtmWnG2FEVnUJBQ1CUVNQlETSNQEEjWBRE0g0Ql4P2x3JBSdgPfD+iF/qMkfavKH
mrihJm6oiRtq4oaadKEmXahJF2rbcrFtZsQNNelCJ+BNtlxsexfpQk26UJMu1KQLNVFBzd3Izd3I
J+CH+g7mbuQT8FosBm5Pbm5Pbm5Pbm5Pbm5Pbm5Pbu5Gbm4+bm4+PgGv1obEvcbNrcX9fYpBdydx
d1twd1twd1twd9PvCUwDYcBVmqs0V+mu0v0veNS7+3O7u29PIA2Y2DCx4bLTZafLTlOf5jH90PCv
hPc0/IzwWsIPTTNNM02XTZdNly0/o/yVKj+jvMnLz1jmsfzQ5YcuE1uPVvFHubxB2xu0XXa7Cg9h
d19sd1/sCQwDYeDRh5aBZYBrcedsd+dsd1/sCfgZ3WvxIXRf7AlMA67SvZbutfhkuy/2BLy4YWLD
xIaJWQzcOdvdKNvdKNvdKNvdKHsCJjbNw2LQpnlM87BctDCPMA8Lihtmuxtme7M6uB32BEw9TT1d
JR+t4rWU11L+F1aH5rPvztXetn/FJ9uNqt2Nqr09etS3F0c33t2oegLNwDQQBvLd+YXdodcdet2h
1x163aHXHXrdodcdet2h1x163aHXHXrdodcdet2h1x163aHXHXrdodcdet2h1x163aHXHXrdodcd
ev1yQ6+/eZ+wLlamS5E5gW7Aa7UvkBHTBb50cS4n4GdYTsS5dHEuXXpLl97ShbV0YS29WxuEtZyA
12Ip6JYC6S1dekuX3tKlt5yAP4YwD5uNbrPRbTa61UPgS5fvcgIua30R59LFuXRxLl2cSxfn0sW5
dOktXXpLl95yAiZmjRLncgImZhWT79Llu3RxLuc328+wrHWrWLeKCXw5AVaRANMlwHQJMF0CTBf4
0gW+nGfQVSwX8l1OgLsuzqVLb+nCWrqwlv6WzfLx+NfvxV3MnkMiS5fI0iWynP/nbbHFkLdyAq5i
TRjWBPEq/S1eZX3yP38v7mf74ItdOQFXf/OWsT78P78X97NtFoStdGErXdhKF7bSha10YStd2EoX
ttKFrZyAN9Rnd/jsSl/pslW6bJUuW+UEvDgfZkEpR3OagTDw6K8sAyQmBqULOTmBacBlfXalnpyA
efh0i0HpYlC6GJQTMFOff7koXS7KCZipLyzT0iBK5QTM1OIhbOUEzNRqIo7lBMzUpmRaXgS2nICZ
+gYzrUgyXk7ATO1jhL50oS8nYKb2MWJhTsBMbWwEx5yAmVrfpvVt2ulMOx1pNCdgpvZC015IgE0X
YHMCZmr5FHFzAmZqPZ3W02k9lYrTpeJ0qThdKk6XinMCZmo/Ne2npv3UtCZL1umSdbpknS5Z5wTM
1DIuauf032ZqGZ92bcJ4TsBMrfzTNm4+kgLbuOm3wQJ9ukCfLtDnBIaBaSAMpIEysAyYqQok8ucE
zFSNEgp0AmaqRkkJOgEzVaNCjZIj1OUIdTlCXY7QCZipGiVp6ATMVI0SPdRFD52AmapRsoi6LKIu
i6jLIuqyiE7ATNWoUKNCjRJf1MUXnYCZqlHyjLo8oy7PqMsz6vKMujyjLs+oyzPq8oy6PKMTMFM1
SuLReX83UzVKJtIJmKkaFWpUKEmhAslVOgGXVXBCwZG81CUvdclLXfJSDwXH3d7d3d7dzd3dzd3d
zd3dzd091AZ3and3ap+AqVvX0zLu1u3u1u0TmAbCQBpwWYu0e7m7e7m7e7m7e7m72667265PwM+w
WqbF0W3X3W3XJ2AeFra0sKWFzX3YJ+Ads7ClhS0tW2nJcad2d2N2dx92dx92dx/2CZi69SMtF27M
7m7M7m7MPgETs1ykHaz7sE/AZa0O7rLu7rLu7rLu7rLu7rI+AVfx2Xfb9Qm4is9+2he6MfsEXMVi
4Lbr7rbr7i7r7i7r7i7r7qbq7qbq7qbq7h7qE3BZn333UJ+Aq7RHq3i1louyXLjLurupurupurup
urupurup+gRc1l7KXdYn4F235LjLurvLurvLurvLurup+gRc1j7IPdTdPdTdPdQn4LIWJfdQd7dM
n4A/hm+L0jtyBLvjrTveuuOtO96646073rrjrTveuuOtO96646073rrjrTveuuOtO96646073rrj
rTveuuOtO96646073rrjrTve+injrb95768uuahLLjoBfxmshKKMTsC74at72QWJIzqBR5/hT9aX
anFEJ+AP0sJX9jjyibo4oi5bqMsW6qKEuiihE+CuLwufbKEuW6jLFjqBMJAGyoB52BYtS6N8oi6f
qMsn6vKJunyiLp+oyyfqy1q5rJXLWrl8M5Vg1CUYnYDLWiuXpVGCUZdg1CUYdQlGXYLRCfhzsVaK
NOoSjE7APHyJlHHUZRx1GUddxlEXaXQC3iCrqUijLsHoBFzForTs6AQWdXFEXRxRF0fUl1VKPtEJ
eC02cMvCJsGoSzDqEoz6srAty9aySi2rlDiiLo7oBEzMsiWO6AS4Y8KGTiAN+FesMNsKs60w8om6
fKIun+gEyoB5WD8EFnX5RF0+UZdP1MURdXFEJ+AqVodtdZBP1MURdelDXdhQly3Ut12QsKEubKgL
G+rChrqwoS5s6AS8Yz7q20ddHFEXR9SlD52Ay/rsyyfq22dfYFGXT3QCLuujLp+oyyfq8om6fKIu
n+gEzMPXu211kD50At5Cm5ptU7P3ow/9furjfXqYIZ/oBLqBYWAaCANpYBFo5tHMo7lsc9nmshSU
IeNoyDgaMo5OwGW7y3aX7S7bXXb4V4Y3aPgZ49FnmPr0Fk5v4fTiphc3vbhpptNMp5lOM51mGuYR
5hHmEeYR5hHmEeaR3qD0BqWJpYmliaV5pHnkozy8H2ViZR7lsuWy5bLlsuWyy2WXyy4vf5nH8uey
zONNYft4fvzd+Hb17U9jm842ne3q29uyTYeSOKRFDWlRQ1rUEA41mtVL9NMQ/XQCfqjlrFnOpEWd
QBnw4rqJdROz4MmTGvKkhvioIT5qiI8a4qOGtKghLWoIhxqyoIYsqCH6aYh+OgFXsXpJehqSnoak
pxPwQ61Nkp6GpKeXZg8ErE3NUiQLasiCGrKghuinIfppiH56iS834LLlstamZm2SJzXkSb3kARtw
leUqyw+1wjQrjMSpIXFqSJwaEqdGe1RQ7LEkTr0EJxqYBtJAGXAVS46b4Yd734d7319usTfgh1od
3B0/3B3/clMxAYuBu+NfboU14A2yYXK7/HC7/Mu9jAQsBt3ux+3yw+3yw83ww83ww83ww73vL0fD
BvxQOxe3ug+3ug+3ur+csBnwWiwG7n0f7n0f7n0f7n0f7mwfbmQfbmR/+U2aAa/FZ7/7ZLsrfbgJ
/eW70PcDbkIfbkJ/2VIaSAN+qA/hUPeHuj/UfXelv6yfBpYB8/DJdlf6GD63w+fW/ekvL9eAV+tD
6O7zMXxrGYr4UMTdsH4CXouPqTvYhzvYT8DEfJCHD/JQ993cPtzcPtzcPtzcfgImZjEYFoNhqzCs
DsPq4Fb5EzBTq8OrvfPvyPnrjrzuyOuOvO7I64687sjrjrzuyOuOvO7I64687sjrjrzuyOuOvO7I
64687sjrjrzuyOuOvO7I64687sjrjrzuyOuXGnn9zft+DRlVQ0bVEEk1JFCdgD8Vi9ZYrmLREkk1
RFINkVTn2TBTq9iwHRFJNURSnUA3MAxMA2Hg0SrLANcixeoETMzSKOdqyLkacq6GnKsh52rIuRpi
rYYUqyHFakixGlKshtCqIbRqCK0aQquG0KohtGrIqBoyqoaMqiGSakigGhKohgSqIYFqSKAa8qWG
fKkhX2rIlxrCooZsqCEKakh+GpKfhuSnIflpyHUaYpyG1KYhtWlIbRpSm4bUpiG1aUhtGkKahpCm
IaRpCGkaQpqGkKYhpGkIaRpCmoaQpiGkaQhYGgKWhjylIT5pCEcaoo+GpKMh2GhIKRpSioaUoiGU
aAglGkKJhlCiIZRoyCAaEoaGhKEhYWhIGBrigoa4oCEuaIgLGuKChiCfIchnyO0ZcnuG3J4ht2eI
6RlieoaYniGmZ4jpGWJ6hpieIXNnyNwZMneGiJ0TcJV8tIqX72tVWFCE8AwhPEMIzxDCM2TuDJk7
Q8TOCXg/LBcyd4ZEnSFRZ0jUGRJ1TsBbuB99qKn7riZzZ8jcGTJ3xlvmzvrw6+/Fy/+Q1QXrDME6
Q7DOEKxzAq5i1RC9M0TvnIDL2qjI4jmBNGAe1pW0UZHWcwImZilKS5E8nyHPZ8jzGfJ8hjyfIc9n
yPM5AROzvkn8OQEzteClBS8teFKDzsuVmVrw0vomNWhIDRpSg4aQoCEkaMgEGjKBTsBlrW9Cgs57
oRdnOUuLVdrsSA0aQoJGWr3S6iVGaEgNGlKDTsBlbWXECA0xQkOM0BAjdAKuYjmTGnQCzUA3MAyE
gWXAZX1HEyM0xAidwDTgsnZQYoSGGKEhRmiIEToB87D0le9ogoaGoKEhaGjIFRpyhYZcoSFG6ARc
1sImRmhIDRpSg4bUoBPwrlulxAgNMUJDatCQGjSkBp2Ay1qUyqJUFiW3Jp+Ay1ql3Lw83Lw83Lx8
AuZhlSqrVNl0lU1XWZTczXwC/hVLTvk65ebl4eblE3AVS05ZctzvPNzePNzePNzNfAKvlz1/95TB
7/5J+Z8++jDulHuUh1uSh1uSh1uSh1uSh1uSh1uSh1uST8DErD3uUT4BM7X2uEf5BMzDUrPssty0
fALmYe1xj/JwS/IJuKy1xz3KJ+AqFiP3KA+3JA+3JA93II9lQ+SW5BNwFWvPskNyS/IJePl+l+4e
5eEe5RPw8q09bloebloebloe7lE+Ae+6xchNy8NNy8NNy8NNy8NNy2PZVLmL+QRMzArnPucTMA+7
LHdCD/c5n4CX71ukO6GHG5+H+5yH+5xPoAz4GZYt9zmfQBhwFYvSbo9W4fdjW5Tc+HwCw4B52P+4
E3q4E/oEzMOi5NboEzAPGyL3Sp+AeVil3Dw9th2Su6lPwDysUtsq5X7r4X7r4X7r4fbqE5jvzgPs
jrruqOuOuu6o64667qjrjrruqOuOuu6o64667qjrjrruqOuOuu6o64667qjrjrruqOuOuu6o6466
7qjrjrruqOvnjrre+fmvFy9e/t8J/enr9z5v69nLfxvf/uuTLz5/9vTJPz5/+uk/P/nyq8++ePbi
Scv+7ef+SgO6n5TL3/2Hf/jy2dNfwPlsiHIaopyGKKchymmIchqinIYopyHK6QT8hbSr3QqJsKch
7GkIexqynYZspxNwWXVDlNMQ1HQCXpwisK3525q/fZEW5TREOZ2AH/qoxPMiPeUyTblMUy7TlMt0
AmVgEeA1eYphmmKYphimE0gDLtseLevVIhMnYGLd+9HNtJtpN9Nupt1Mu4kN8xjmMcxjmMcwj+Gy
wxs0zGN6g6aJTRObJjbNY3o/psuGy4bLhsuGy4bLhsuG9yO8H2FiaWJpYmliaWLpDypNrFyl/Izy
4urRZ3hx5cUtV3lTpdYnv/lofO9PTHm5/nK59Wg57+V2/e293C67XXZ72ds8tnlY8kQ1nUA3MAxM
A2EgDZQBEhP3NMU9TWFOU3bTlN00ZTedgJdv/WrWL8lMUzLTlMw0JTNNyUwn4LLWnmbtEcQ0BTFN
QUwn4CoWo2YxEtU0RTVNUU0nYGKWGslMUzLTbFYWUU0n4NVaWWQ3TdlNU3bTlN00ZTdN2U0nYGJl
YpYrYU5TdtMJmEeZx3LZ5bIWpWZRahYl6U5TutOU7jSlO03pTlOY0xTmNLslR3bTCYSBNFAGHq3C
xXUrjHSnExgGzMMOqfdH/4WZWj9kN52AmVo/hDlNYU4nYB7DPOx/hDlNYU6zW4O6JUfc0xT3NMU9
TXFPJ2Bi1iD5Tyfg/bAhEgg1BUKdwKNVvHyLkoSoKSFqSoiaEqKmhKgTMDFLjoSoKSFqSog6AfOw
BnVLjgypKUNqypCaMqROwFWWV2tR6halblHqFiXBVCfg/dhmatnqtk6SqqakqhMYBqaBMFAGlgGu
VrjVFG41RVdN0VVTdNUUXTVFV52AV+ur37BTknY1hVtN4VZzWMeEW52AV2unNKx0w0o3rHQCsqaA
rCkgawrImgKyTsDErHQSs6bErCkxawrImvKwpjysKQ9rysOa8rCmPKwpD2vKw5rysKY8rCkPa8rD
mvKwpjysEzAx+7FhcXS//nS//gmYmMVxWBzd0T/d0X8CZmr5HJZPt/hPt/ifgMtaLYe1cFgLPQRw
Ai5rx+YhgDmthZ4KmJ4KmJ4KmJ4KmJ4KOIE0sAxwTz0VMD0EMD0EMD0EMD0EMD0EMN3zfwLmYfmc
lk9PBUxPBUxPBZyAeVhPPQQwPQQwPQQwPQRwAuZhgfVUwPRUwAn4C2MrOa24nhuYnhs4AZe1fHpM
YHpMYHpMYHpM4AS8H9bTaT31IMEJmIf1dFpPPWowPWowPWowPWpwAmZqPfUwwgmYh+XTwwjTwwjT
kwUn4OVbCz1IMD1IMD1IMD1IMD1IMD03MD03cAJerdVyWi2n1dKzB9OzBydgYraS81E99Q14+i3c
q+MK78j77A697tDrDr3u0OsOve7Q6w697tDrDr3u0OsOve7Q6w697tDrDr3u0OsOve7Q6w697tDr
Dr3u0OsOve7Q6w697tDrlxt6vevTb3/48tnXL97741dffPPiSfvqyfOn//TNF58+/+2/fPmHP/yi
87ijDX/3Qwv+e/fip52K+wWc36bYtCk2bYpNm+E3DHLUphy1KUftBMJAGXi0rL9e6pUctRNwWbt7
sWkn4CqqUahGgtWmYLUpWG0KVjsB81BrJK2dgB+qtIhem6LXpui1IxNerV9KSFqbgtWmYLUTcBV1
IlQBwWpTjtqRKz/DGi8UbQpFOwFTt98VijaFok2haCfgr4NFX0raCbisNV6O2gm4rDVe0tqUtDYl
rU3BalOw2lH89w10A8PANBAG0kAZWAZMzCZaKtsUwjaFsJ2AeViU0qIklW1KZZtS2U7AZS1KUtmm
VLYplW1KZZtS2aZUtimV7QRMzI5YxNoUsTZFrE0Ra1Oi2hSgNuWlTfFoJ+AqNsDpNwwC1Ka8tCkv
7fSdLmvZSrtZeWlTPNoUj3YC3lMLm7y0E3BZK51EtSlAbQpQm/LSpry0E3BZ21sBaifgz9b2VoDa
FKA2BahNAWonYB5WurTSyVw7AROz9AlhmzLXpsy1E5gGwkAaKAPLgIlZ+sS0TTFtJ2Cm1kK5bVNu
2wmYqcVRbtuU2zbFtE0xbSdgHhZHuW1TbtsJeMcsjnLbTsDELI6C3KYgtxMwD6ulZLcTMA+/oBX1
NkW9Tclusyyfkt2mZLcp2W1KdpuS3c4LtatYLSW7TUFuU5DbFOQ2BbmdgD9by6cgtynIbQpyOwHz
sFEs62n5dYEwuFm2ktLhTsBMrbji4qa4uBMwMStuWXEFyk2BclOg3BQoNwXKncDrTM+nfzy/9ydm
aOkVNTeX39QuK+2y0i4rrQy6KXJuipybIuemhLkpYW5KmJsS5qaEuSlhbgqUOwEvzqK4LIoS5qaE
uSku7gRcxbfWZckTFzfFxZ2APzkrnPy4KT/uBMzjTce413/5XtxrtC1cFjoxclNq3JQaN6XGTalx
U2rclBp3AiZmJ7msjXLlply5KVduypWbcuWmXLkpRm5KjZtS46bUuBNwWQvdsq4JiZsy4aZMuBNw
FcvYsowti5TUuCk17gTIY1ubtrVp2xYKmpuC5qZcubnt4OTKTTFyU4zcFCM3xchNqXEn4CpWHjFy
U4zcFCM3pcbN7Zuo1LgpJO4EXMVmS0jcFBI3t7VJBNyU+HYCfqjfl4mAOwEvzpKzLTkexpievZie
vZievZievZgetZgetTgBf5TWj+1cxZMVJ+BPzt7KkxUn4NVaULb1w7MX07MXJ+CyvppuK4ynM07A
y7fCeDrjBFzFguLpjHif+nECzUA3MAxMA2EgDZhH8zOan9H8DCpMeBgjPIwRHsYID2OEhzHCsxfh
2Yvw7EV49iLeHy47XHa4ynCV4cVNP3Sa+vQHNV1lusr0WqbXMr2nYR7hxYWJhYmFiYWJhYmFiaWr
pKukn/Fty/KOnN/uqOuOuu6o64667qjrjrruqOuOuu6o64667qjrjrruqOuOuu6o64667qjrjrru
qOuOuu6o64667qjrjrruqOuOun7uqOudO7/9EBoy3i/vaHmt5bWWN7C8X+Uv1PIHuVx2ucpyleUt
Xi67/P3ZXst2le1vx3bZ7bLbZR8VPr5PC2FjIWwshI2FsLEQNhbCxkLYWAgbO4FuwMSshNLHQvpY
SB+LZiVsVsJmJWzdPCyNEsxCglkILAuBZSGw7ARc1lrZrJVteIMsniLNQqRZiDQLkWYh0ixEmp2A
l2+tlGB2AuZhrWzWymatlIJ2Ao/y8MeQJpYmZnmVghZS0EIKWsg4CxlnIeMsRJqFSLMT8GqtdCLN
olnpRJqdgNdipZNxFiLNQqTZCbiKlU7GWcg4OwGv1kon4yxknJ3ANBAGuJZuURJYdgJ+qFWqW6W6
VapblISehdCzkHEWMs5CxlnIOAsZZyHj7AS8OEuO0LMQehYizUKCWQgsC4FlIZ/sBLw460e3fsgn
OwGXtX5IMAuBZSGwLASWhTiyEEcW4shOwKu1fggsC4FlIbAsBJaFwLIQWHYCZmqFEWkWIs1CpNkJ
mKnNlYyzkHEWMs5CxlnIOAsZZyHSLASWnYDLWoP6oxpktyXjLGSchUizEGl2AmmgDDxalqsdtl/D
9ksKWkhBOwEz9VVVLFqIRQuxaCEFLaSgnYB52H6JRTsB75jVUk5aiEULsWghFi3EooUUtJCCFkLP
QsZZiDQLgWUn4Ida6QSWhXyyEEcW0sdC+lhIHwthYyFb7AS8H/loWa/FOiZbLESJhSixECUWksNi
WIOGJUdQ2AmYqV2OXLCQC3YCrmKFGVYYQWEnQB6CwkJQWAgKC0FhISgsBIWdAHlM64fUr5D6FVK/
TuDRh/KDkvoVUr9CyNcJuGx/9KHeQvsgEV4hsSukbcX0LUm4VgjXCuFaIVwrZGmdgJn67AvXCuFa
IVwrhGuFLK2QlBWCsUIO1gn4obYscrBCDtYJuIpPthysEzB1H3U5WCEHK+RghRyskHIV8qdC/lTI
n4rwMQ0f0/CpDB9Ct4SfgKuo+24aDzeNh3vEwz3i4R7xcAf4CbiKj6k7wE8gDXhxPrduCQ83fIf7
u0/A1H2Qw9eVULNDzXZLeLglPNzfHeFT6WbtCBXZzdon4E/Op9LN2ifgPfWpdPf2CXi1vgS4WTvc
rB1u1g73ZodbscOt2OFW7HDndbjzOtx5He68PgGX9TFN5dWN1uFG63Bfdbhr+vwk/QyfufSZc8fz
CZipD6FboE/ATH0I3fEc7mcO9zOH+5nD/cwn4LI+pulj6o7nE/DyfW7dAh3ueD4B8/C5TZ/bVKLd
Ex3uiQ73RId7osM90eGe6BMwDzXbTdIn4P2wXKTVwU3SJ+Aqlgs3SYebpMM90eGO5xPwQy0XboEO
t0CHW6DDLdDhFugTMI/1KA8v7tuS84580e7w6w6/7vDrDr/u8OsOv+7w6w6/7vDrDr/u8OsOv+7w
6w6/7vDrDr/u8OsOv+7w6w6/7vDrDr/u8OsOv+7w6w6/fvnh19/qGbE34MSQQhRSiEKC0Cn7zUA3
MA2EgTRQBrjF8oFC+k9I/wlhPyHsJ4T9nIBXa2mU/hPSf0LYT8j2CVE+IbknJPecgB9q4SvLmqCe
ENQTgnpCUE8I6glBPSdgHhY+UT4nYKZWQtk+J2CmVkJhPyHs5wTM1MapLI1laZQPFPKBQj7QCZip
1VRgUAgMCoFBJ2CmlteyPRMpFCKFQqRQiBQKkUIhUihECoVIoRApFCKFQqRQiBQKkUInYKYWcRlD
IWMoZAyFjKGQMRQyhkLGUMgYChlDUXaW5Tc5soZC1tAJkKnwoRA+dALdwDAwDYSBNFAGlgEzta4v
XzMlGoVEoxMwU3tgEUch4ihEHIWIoxBxdAJm6hfQS20QghRCkEIIUghBCiFIJ2CmdtrLTltu0gmY
qZ22IKUQpHQCZmrrLWopRC2FqKUQtRSilkLUUohaiqVGLTVK6NIJmKkatdQoOU0hpynkNJ2AmapR
gptCcFMIbgrBTSG4KQQ3heCmENx0AmaqRklyCklOIcnpvLmbqRol2ukEzFSNWmqU8KcQ/hTCn0L4
Uyw1ShrUCZipGrXUKHlRJ2CmapQAqRAgFQKkQoDUCZipGiViKiRKhUSpEyAPEVMhYipETIWIqRAx
dQJlYBkwD+Vkqx5bsRBCFTKnQuZUyJw6AVex8sucCplTJ+DFWeiFUIUQqhMwD+v6tq6LqQohVCGE
6gTMw6q9rdpyq07APCzBYqpCTNUJuKwlWG7VCbisJXhbgiVbhWSrkFsVYqpOwFUsn4KsTsBVrJaC
rE7Aq7U4CrIKuVUhlSqkUoVUqpBKdQJenGVrW7bEVJ2AeVil5FadgHlQpVIqVUqlSqlUKZUqJUql
eKgU/pTCn1LW0wn4ofRS+f50lem1TK9l+qHTDw3z4IlKKUwphSmlMKUUppTClO+n15Kukn5o+qMs
P6NMvfzQ8kPLTMsbVC67XHa57HLZ5bLLZZc3aJnHMo/tj2G7ynaV7SrbVXxeGpqdbvBOt2+n27fT
zdnpXux063W69Trdep1uvU63Xqdbr9Ot1yeQBkyse3HdTH2Q2zDTYabDTIeZDjMdZmq5cPv2CZjp
NFMLihu80w3e6QbvdIN3usE73eB9AmY6zdSi5BbwdAt4ugU83QKebgFPt4CnW8BPwEzDTNNMLWzu
CU/3hKd7wtM94SdgpmmmaaZWS7eRp9vIT8BMLZ+tzNR66kbzdKP5CZipBdad5ydgplbcZsV1b3q6
N/0EzNQS3CzB7l5Pd6+fgJluM91mahl3O3u6ez3dvX4CzUA3MA2kAVexjLudPd29nu5eT3evn8B+
d65hd/h1h193+HWHX3f4dYdfd/h1h193+HWHX3f4dYdfd/h1h193+HWHX3f4dYdfd/h1h193+HWH
X3f4dYdfd/h1h1+//PDrb95HLEVMpYipE/AWqz9d/enKjVSqlEqVQqhSCFUKoToB81BMhFClEKoT
eJQHv/piqk7AxBQTQVYn4A1STCRbnYCZKiZd7ehqh+yrlH2Vsq9S9lXKvkrZVydgYkpFVyqEYZ2A
iakM0rFSOlZKx0rpWCkdK6VjpXSslI6V0rFSGFYKw0phWCkMK4VhpTCsFIaVwrBSGFbKvkrZVyn7
KmVfnYD3w6ouHSulY6V0rOyPyrzNuTCsE+gGpoEwkAbKwKNluR/CsFIYVgrDOgGXVRmGFVeyVQqy
SkFWKcgqBVmlIKsUZJWCrFKQ1Qm4iuVzWD6H1XJYHCVbnYDLWhyHxXFYHGVf5bA4DmuhdKyUjnUC
5mEtHNZC+VknYGJWOnFZJ+Cylj7pWDksbOKyUlzWCZiHhU1+VsrPOgEv30o3rHTDSidhKyVsnYDL
WtiGhU0oVwrlSqFcKZTrBLxBFjahXCmU6wRMzG8dpHSllK6U0pUyuFIG1wksAy5ryyu26wTMw0on
2CsFe6VgrxTsdQImZvc5LY7TSie2K6etpByvE/BaLH3TVnJaC6elT/RXTmvhtBZOa6G0sJQWltLC
TsBlLX2ywFIWWMoCS1lgKQvsBLx8K920DZy2geLDTsBMLY7T4ihP7ATMw1ooT+wEXNZaOK2F09In
cSwljuW09E1f7kWQnYA/BivdtNJN69i0QZvWsWkdE1KWYZUSUpZCyk5gGkgDZeDRslyc1LKUWpZS
y1JqWUotOwETs0qFLVxYtgSdpaCzlGuWcs1SatkJ+Bm2cGEdE3R2Ai47Hi3r1VrYRKGlKLQUhZZv
UWjrd7/5+Pt/YkIWtLC5C998wxfdsMKF1UlqWkpNOwE/w9oT1p6wMZOrlnLVTsB7aesmaC0FrZ2A
idmYiWJLyWspee0EXNZiFHZqYacWlquwXElvS+ltJ2BiFjRxbinOLcW5nYCJ2anFo5JnpybwLQW+
nUAZWAb8UAuaBLiUAJcS4E4gDbiKxShtqiTAnYDLWr8EvqXAtxT4lvLdUnpbCms7AT/UHkp6W0pv
S+ltKb0tpbelsLYU1pbC2lJYW8pmOwGXtUqlVUpY2wmYh2VLWFsKa0thbZmWHGFtJ+AttLsR1pay
2VI2W0peS8lrKXkt03KRlou0XHgOJD0HcgLeMatDWh08OpIeHUmPjqRHR07Az7AYlN1NWR08KZKe
FDmBMJAGysAyYKa2Ox4dOQEztcKUFcbDJSdgpr76lVMEj5+cX2QztUp5QCU9oHICZmpT5YmVEzBT
K51nWtIzLemZlvRMS3qmJT3Tkp5pSc+0pGda0jMt6ZmW9ExLeqYlPdOSnmnJV2da3pF/2B163aHX
HXrdodcdet2h1x163aHXHXrdodcdet2h1x163aHXHXrdodcdet2h1x163aHXHXrdodcdet2h1x16
3aHXLzf0+pv3DUv5cilfLuXLpXy5lC+X8uVSvlzKl0vpcSkbLmXDpWy4FAWXouBSFFwKektBbyno
LQW9pQi2FMGWIthSBFtKXEuJayk+LcWnpbS0lJaWwtFS9FmKPkvRZyn6LEWfpeizFH2Wos9S0llK
OkvBZinYLOWYpRyzlGOWcsxSjlmKLUuxZSm2LMWWpdiyFFuWYstSSllKKUsZZCmDLAWKpfywlA6W
0sFSOlgKA0thYCnIKwV5pdyulNuVUrlSCFeK2EoRWyliK0VspUStFH6VcqpSClVKoUqBUSkwKgVG
pcCoEwgDaaAMLAP8GCRInYB5+BBuH0IJUikwKgVGnYAf6hMlHyrFQaU4qJT+lMKeUrZTCllKEUop
QiklJqWApNNXm5hfqQhIOp23ifmbLP4ohRudgImpUVuNEm6UsoxSdNEJPPovvv+Dqvf5XS85RCWH
qOQQlRyiE3CV5ir8Jp9AN2AezTyaeTTz4K3hBB4ltgl0M+1m2s20m2k3026m3Uy7iXUTG+YxXHa4
ynCV4f0YLju9/OnVTpedXu102emy04sLlw2vNswjzCPMI7wfYWLh5YeJpYmliaWJpYmliaWJpTco
TSxNrMyjzKPMo8yjzKO8QWViZWJlYss7tsx0mekysWViyzyWeWxX2V7+dpXtKttVHlVLvlKpZvkU
S3UCw8A0EAbSQBkgMdFWJ2Ae1tNmPW3W02Y9be3Rst4Py6d4rJKGVdKwShpWScMqaVglDaukYZU0
rJKGVdKwShpWScMqaVglDaukYZXwqxJ+VbKuStZVyboq0VYl2qpEW5VoqxJtVaKtSrRVibYq0VYl
2qpEW5VoqxJtVZKsSpJVSbIqSVYlyaoEV5XgqpJTVWKpSixViaUqsVQllqrEUpVYqhJLVWKpSixV
iaUqsVQllqrEUpVYqhJLVWKpSixViaUqsVQllqrEUp0AnyFjqmRMncAwEAbKgKtYT7sNa7fASqE6
gWnAPCywcqrKne/lRvdyo3u50b3c134CXq3F0X3t5b72cl97uY293LVe7kkv96SXe9LLPenlnvRy
T3q5J73ck34CXr6Vzj3p5Z70ck96uQW93HFe7jgvN5iXG8zLDeblfvJyP3m5n7zcT15uHy+3j5fb
x0/APKxSbh8vt4+X28fL7ePl9vFyt/gJeJOtQW4fr7fbx9cnv/noo+/+iQ2iu8Tr7abw8ycffPy9
P3EZy5SbwU9gGAgDZWAZcBXLlJvBT2AacFmL0LAIufe7hvViWC/cyF1u5C63aZdbrMsd1eX26HJ7
dLk9utweXW6PLjc/1/A5HfYbwwfX/dLlfukT8Gp9cN0vXe6XLvdLl9ujy+3R5W7ocjd0uRu63A1d
7oY+gfbufMLusOsOu+6w6w677rDrDrvusOsOu+6w6w677rDrDrvusOsOu+6w6w677rDrDrvusOsO
u+6w6w677rDrDrvusOsOu37+sOudnwH75sXXX56/98XTPz599vUL/v3J86f/9PmLr5//63vffPVP
zz/9/dNvP/VXGtD9hEz+7j/8w5fPnv6Iq3zx4uX/ndCfvn7v87aevfy38e2/Pvni82dPn/zj86ef
/vOTL7/67ItnL56cRvjJ0z999fSzr5/+/te84J+X1I++9h+CYJ7fRB8A21ipVCWEqoRQlYipE/BD
/eJAXlTJi6pp1ypAqgRIlQCpE5gGwkAZWAZMTAWRKFUSpUqiVEmUKolSJVHqBEzMbxIkSpVEqRMw
Dzvf6TcJ028SpFKVVKqSSnUC5uG3AFNpkzlV01ZYxFSJmCoBUifgKr7BT/VSolQJkCrxUCUeqsRD
lXioEg9V0qBOwFUUP+FPJfyphD+VrKeS9VSSnE7AVXxRFu10Al6LFUb40wk8ysPL9714WoPEQ52A
iVmlpt9mioc6Ae56WKUESJW8qBMIA2mAZaVBlTSoE3AVK4w0qJIGVdKgShpUSYMqaVAn0A2Yh/Uj
rB+ynkrWU8l6KllPJeupZD2VrKeS9VSynk7Ai7MBl/lUMp9K5lPJfKqwKAmBOgHzsEqFXX1YtsKu
PvxaUbJUSZY6AfOwq5csVZKlSrJUSZYqyVIlWaokS52Ad8xaKGqqRE2dgJn6ZiB76gTM1DcD6VQl
naqkU5XsqRI1VZKlSpBUyY0quVElN6rkRpXcqJIbVXKjSm7UCQwDYSANsGxa+gRJlSCpEiRVgqRO
gKtNC5tkqZIsVZKlTsAbZGMkN+oE/AwrXVrp0kqXFjZRUyVqqkRNlaipEjVVoqZOwMT80jAtbLKn
SvZUyZ4q2VMnYB62X6KmSpBUyY2qtH6IiToB87AYiIk6AT/UTintlNLGSJBUCZIqQVIlJqrERJWY
qBPwnlod5EaV3KiSG1Vyo0pu1AkMA2EgDbCsZKmSLFWSpUqyVEmWKslSJUiqxESVmKgSE1VCoEoI
VAmBKplPJfOpZD6VzKeS+VQyn0rmU8l8KplPJfOpZD6ViKeS6FQCnEqAUwlwKgFOJa+p5DWVvKaS
11RlhXGveLk1vNwJXu4EL3eClzvBT8A8bJ3cK34C3iBbJ3eTl7vJy93kJ2Cmlj53k5+Aidkpud+8
3G9e7jc//4F5WBzLxsgd6eWO9HJHerkj/QRc1vLpFvUTMDHLp5vYy03s5Sb2chP7CXQDw0AZ4Grd
s17uWS/3rJd71k9gGggDacCr9TVyWT7d1V7uai93tZe72std7SdgYu6BcVd7uYm93LN+Ai5r+XQT
+wn4g7J8us39/O57+ZZP972fgHnYj7nvvdz3fgIuay1cvkYu3xrdGV9uhC83wp+Aq1jplpXOrfIn
4LJWOjfTl5vpy8305Wb6EzBTS9+y9C1L37L0LUufO/RPwMQsjsviuGwll9XSbf8nYGJWS88BnICJ
WRyXreSyOK5HxdFW0tMG5WmD8rTBCQwDYSANuKzl08MF5VmC8izBCZSBZcBlLY4ePyiPH5zANGBi
1kIPKJQHFE7AxOw+PbFwAiY23qED3B1+3eHXHX7d4dcdft3h1x1+3eHXHX7d4dcdft3h1x1+3eHX
HX7d4dcdft3h1x1+3eHXHX7d4dcdft3h1x1+3eHXLz/8etenAJ8/ffHlN88/e/rivZfB//bp87PC
i9/+9xe/zlDu31vt37sLP+Vk4A9f8++//ON7z84te/Hef3z+5UnmxbnPf//sfNA3n339+ZfPnjx9
8dmnXz198aT99k+/+BnAbxP4w5cvL+aPX33xzVnkq5eX8c0Xnz7/7b98+Yc//JQf1/OnX335/Os/
+0N78xP4C6/9Rxw1/Ak34Sf8lfn+/Lsfunf/7m/Rzztu+Wev/s//ar/5yfx1f8H//tnvn/7p6e8/
+t17Xz//9NmLT1/9aL/4/A9Pv/78j99+yK/zeP/wuj/36OobZu8pn5Zxe8ttK7ltJQUknoBF2s5x
++K9ffHe9pbb3lIM4wkoFr54y2U8AZe1t9y+ZwtqPAGv1vfsbfcpyvEEvB92n6IcT8BlbSW3raT0
x5L+WMIeT8DLt1EUB1niIE/Aa7ENFBh5Ai5rX7jtC7fvyNu+UAplPaJQbvrCU1uagW5gGJgG0sAy
4LL0hUtO5ZIxuURKLpGSS6TkEim5REoukZJLpOQSKblESp5AGTDTbqbDTIeZDjMdZjrMdJjpMNNh
psNMh5lOM51mOs10muk002mm00ynmU4znWYaZhpmGmYaZhpmGmYaZhpmGmYaZppmmmaaZppmmmaa
ZppmmmaaZppmWmZaZlpmWmZaZlpmWmZaZlpmWma6zHSZ6TLTZabLTJeZLjNdZrrMdJnpNtNtpttM
t5luM91mus10m+k2U7VB5uYJNAPdwDAwDYSBNFAGlgEzVU6aciKmc4npXGI6l5jOJabzBMxUjZLb
ueR2LrmdJ2CmapQgzyXIcwnyXII8lyDPJchzCfJcgjyXIM8lyHMJ8lyCPJcgzyXI8wTMVI2S7HkC
ZqpGifpcoj5PwEzVKNmfS/bnkv25ZH8u2Z9L9ueS/blkfy7Zn0v255L9uWR/noCZqlHCQJcw0CUM
dAkDPQEzVaOkg56AmapRTY2SH7rkhy75oUt+6JIfuuSHLvmhS37okh+65Icu+aFLfuiSH7rkhy75
oUt+6JIfuuSHLvmhS37okh+65IeegJmqUU2NampUU6OaGiWldEkpXVJKT6AbGAamgTCQBsrAMmCm
apSk0yXpdEk6XZJOl6TTJel0STo9ATNVo2ShnoCZqlHCUZdw1BMwUzVKfOoJmKkaJU91yVNd8lSX
PNUTMFM1SuLqCZipGtXVqK5GCWldQlqXkNYlpHUJaV1CWpeQ1iWkdQlpXV2Nktq6pLYuqa1LausJ
mKka1dUoua4nYKZqVFejJL+egIkpSV1JEgW7RMEuUbBLFOwJmJgK1NUXya9L8usS9HoCXpzaINd1
iXFdwlpPwM/Yj/4Klz+sycOaLLR1CW1dQluXBNYT8K9YHCWwLgmsJ7AMeC3WwmEtHJa+Yekblr5h
6RuWvmHpkwS75LyegKtYtiTBnoCrWKWGVWpYpaTJnoB5WIOGFWZYYQTQLgG0SwDtEkC75M0u8bJL
vOwSL3sCfqjVQd7skje7pMmegMvafQ67T/GyS7zsEi+7xMsu8bJr2H0Ou09PPi5PPi5PPp6Amdp9
ehTyBMzU7tPDkidgppYtj1Muj1OegJnafXrgcnngcnngcnngcr06cPmODCvv8OsOv+7w6w6/7vDr
Dr/u8OsOv+7w6w6/7vDrDr/u8OsOv+7w6w6/7vDrDr/u8OsOv+7w6w6/7vDrDr/u8OsOv3754de7
Prr69ijji2++ennO7r0XX//rF09/+9mLF7/O0cM/s+C/dy/+wuOWv4Cn45L8uiS/LsmvJ5AGysAy
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
8fmXnz198eKs+ffPXnz9/JvPvv78y2dPvvj866fPP/3iSfvtn15+4K8zo/sLk/i7//APXz57+vM9
8F7+DPzlUNJDBQ8VPNTnt5TL9eFvfte/9yd+ukIdftcTCnUo1KFQh0IdCnWoy6Euh6obqm6ouqHq
hhIaKmYqkKlApgKZCmQqkKke5vuPluXiUvlL5S+Vv1TcUnFLpSuVrlSpUqVKlSpVqlSp3iIi10cv
/99Lf9L8rj/p+U9UplSZUhFJJSKViFQiUolIFSFVhJyPlvVHpyKkipAqQlqa00qcdvppWUirQNqD
p19upM96+uVG1qMP9Wp9+NNnPX3W02c9bcrThz99+NMePK0GaTVIq0HacqfVIK0G5bNePuvls142
w+XDXzbD9f6jZbm4shqUrW7Z6pbVoKwGZatbloeyPJSdbVkvyvJQVoOyby371rJvLatDWR3KvrXs
W8u+texby6607ErLklOWnLLklCWn7ErLGlTWoLIGlSWnLDllySmb0LIJLZvQsgktm9CyCS2b0LLS
lU1oWfrK0lc2QOV3GmUDVH6FUX6FUbZIZfksv8Io62lZT8t6WtbT8luPsncq62lZLctqWevRh3q1
FseyOJatUlktyy8oyi8oynpafkFRFthl+VyWz/X+o7/CxS07o2VxXBbHZXFcFsdlcVwWx2VxXBbH
ZS1ctkrL4rgsjsviuCyOy+K4LI7L4rgsjsviuCyOy5f6ZT+2LJ/L8rksn8vyuSyfy/K5LJ/Larms
lsuObVk+l+VzWT6X5XNZLZfVclktl9VyWS2X1XJZC5dt4LIWLvvCZXFcFsdlcVwWx2VxXBbHZXFc
FsdlcVwWx2VxXHafy+5zWT6X5XPZji7b0WWBXRbYZTu6rLjL/nS9KcEf528++OTVy89/+fZ/Pv7N
R/PhDz7c30Y+ePn/Xv7D737zyXr4h4/j2//mg9/sj773D+vD//r6v3j/2zepD/7bt/8zfvPRx9/+
w/lvv13u43b+7NtI/Wa9+rD4w+t/z9f/UN/+Qf3md9+mtE9u+/UfffjtH73/m/X+wz983F//0cev
/+HVSvurb/99/eaD1wseeXn4h/Hwlz8YryP56no+ff3vrz91z9f/8CrbfPVhH32b9Mfzs1dr/JdX
//O/vPqf//XV//znV//zfzyk8dHrj3zIeP/mg3rzs+nxVqf2qyt5mV5/uGe/W6/+4P/16o7948Mn
vQ7/T6/+5+9f/c9HDy+1H//u4W8/3Pr+v738n09+9/C2+womOASIV74pqiePD169GK//+uqn+vrH
u/7vrz7xNx++uj3rf3/1P//pYcVPHi7k//b6R/K7h7//0YcPH/xhPvxoP/7g7U1Ybzf37vW/Pfzd
j179qo3f1Kvbsn6zf/fwDx+Nh3sbr38d3/xAf/fRwz98+O3P7TwJv3v1ufE/vf6DNw/Cq2v46Dfx
u+//urWHX/zd/x/f/s/8nx9+qet3D5/xQT58+MPfyH9+eyPff8uxPL87H+XDP+wPX/3Di1cf+fBI
ndUfHruPfvNJPPx+vPqNOZEPv/1FOb/XH77Kp75+u0y8na+sj189Av3VEv03v/v41d/7+OGmf/z6
Afjg9fP05tn43at/2K9+0PtfX9+k91//w+uH81UuL/9hvf6HD17/Pj/8snz4kO1+9Z9++Pev13j1
XL//317/Xq6Hn+N69Tzu178n5xl5+IF+/XqNt7+yPdmU1OvtFOYUjVeVYc9/ePirnzxk8ZtPXl3C
/F9f/8HrC/hkv3owvnh7V9vbTbEv/4M3//Cq/NTzh9+7+fA4fPCd5+ftq/XLv/D6jn/SH35TPnld
UD55/av6yfxFvy1+9ZXuixcv/++E/vT1e5+39ezlv41v//XJF58/e/rkH58//fSfn3z51WdfPHvx
pOX47Z//1vqvx8H7WWdYftJV/4ivyX8ynO8v/Mb+xyVxv6+/39ff7+vv9/X3+/r7ff39vv5+X3+/
r7/f19/v6+/39ff7+vt9/f2+/n5ff7+vv9/X3+/r7/f19/v6X+n7+ne9Gf0vNz35db5v/8vz+Fuy
cfnuo/jyx/rqMZ4PteM/fvf3Nb/7K/LBQ7X/6PXv40efPFTLB6l8qDvnqXj9u/NQNOpl+Xr1lz95
/6FKPjxkR3lfP6gfv37YP35dNz98vfaHH77+o/aqoP+Xh4foVek5/+mrLuE8PR+8LgC/e/1xv3v9
Ka/KzJ5vaskn36ujJ7v9+u98+OpJn28fvg/ffNzrMvzJ67X36yU/+M7Dnm+PnZ0//+TNf/L6Sj54
Xfg/eN0PPFzCWeHV0xpvlOXVf7H+368WfvMJr+/yh6/+4u9eq9wnb2/cR2/WjYf781C+3xS7N/dr
v77SNzfh1Y/1pWq8/jHu15/7oA7j9UXsN//w+ufw8RvteV2aP3hT1V93GA8qOF6r4Pi/P1ToN783
r5Tz1R3db99FPo7XDdCb3563v5Wv0//o9XpvOpo31/GqoznlsF7n/bv2nYXGm+b64/e/ft1hvGpD
P/k/HjTrlRasj181kG+eivGn15LcHq7t4VYdGfn49dXOh9+KeCjTr9b46MWDjL5qII48ffDQ4b7q
PPf/8TbFtt+8U52i/7vXP8NXTcpR74cms/3x9bzgtay/ul9Hvz58eBh+89EHr9voV3en/68P//5K
287feXiA8tmrz/yXh9+2Vz+906p/8nA3/9PDhe4HeX/9uxX/58MnvhKwo7gP+jlfX+oHr6X4oSn8
4OHZfNmAffKdH0x/84b/8g7P163Jev1q8P7DPzz8cB4e8HpI7LNXi/z3h7Rf/dcnzVcV8Cz90E2P
18/P+69L3Gtp/Xh887Dmh68vZb9e86EL+uR/+U7TyvH77wbOWq+euJd3/nW3uR6O2f/rww/p4cmP
Lx8u+YO3v6Uj334vdR7Rhx/WeGiiz999uPj46tUv0z+++Zttrv72SP8HD78A5+f80ETt/+vVav/p
7Y3/DpriXPJD/7kf2vvXXdtH+3u/SA+/qG+NpU85id9991f4zYvhuRcfvm5AX9XF8+NZr34Y+f95
9ev2X97+zQEnpE8wOifw5k32ZVv66gI/fPFaIl7dmff/8+vi/MH3fnEfPuKt1e7b3+T2uoR89DLD
b//h+Xfejd5Ob172yf3hd+ihnK9/eP3Uf/RwHx9KxCdPv9sUv5aIhzeN8eal/WUNev97T8fL19b+
+DEZ35n/vfyxfPT6VzZf/97ld4vq978R7N9x0D2X+HF+52PfgqiODL+6/vXwy/L+g56/bOY//M5f
eXu49GXJjO++dWB+3OabRN48dw9/8vZLmI/H//N7z+Or/6C/ncO/fQ5f/WBePuZviRVjvh24HYl5
KCDxIEhvnr+XF9FfP97z9fV98p1H8+0rVz301m8f1o9edyvtjeJ98NCtfPCdF9rq+IcXh87HensO
+c1z/fK39Tt3cb39XujNE//wJ2/dph9KwIOJ7tsx3ZtvRR6qQhvf/6bm28j7349MaDotQGu1BApy
Ao/+CjDHFpNvWVuOR6eQH80Y+PKyDZBMLwPDwDQQBh59aBlYBjaB73+5/TLQDJhpN9Nupt1Mu5l2
M+1m2s10mOkw02Gmw0yHmQ4zHWY6zHSY6TDTaabTTKeZTjOdZjrN9NGv1DTTaabTTMNMw0zDTMNM
w0zDTMNMw0zDTMNM00zTTNNM00zTTNNM00zTTNNM00zLTMtMy0zLTMtMy0zLTMtMy0zLTJeZLjNd
ZrrMdJnpMtNlpstMl5kuM91mus10m+k2022m20y3mW4z3Wa6yRSqVbOtfhnoBoaBaSAMpIEysAyY
aTPTZqZq1FSjpho11aipRk01aqpRU42aatRUo6YaNdWoqUZNNWqqUVONmmrUVKOmGjXVqKlGvUJm
vRte/P127X67dr9du9+u3W/X7rdr99u1++3a/Xbtfrt2v127367db9fut2v327X77dr9du1+u/Y/
wrdr73ov4B++fPb1i/f++NUX37x40r568vzpP33zxafPf/svX/7hD7/oF3/nV/vvfmjBf+9e/LRz
+X/ZPsi3J/P/+PTFi0//6elvv/rXH3sD/uO/fv3fvnz2nz57/vlXX/+03Y//1up/zb2O/yaX4PnT
r758/vUvDWj48yyEN2v+NYgIP4qG8PJBtYLYO057x2nvOO0dp73jtHf0jeQErCD2jtPecdo7TnvH
ae847R2nveO0d5z2jtPecdo7TnvHae847R2nveO0d5z2jtPecdo7TnvHae847R2nveO0d5z2jtPe
cdo7TnvHae847R2nveO0d5z2jtPecdo7TnvHae847R2nveO0d5z2jtPecdo7TnvHae847R2nveO0
d5z2jtPecdo7TnvHae847R2nveO0d5z2jmHvGPaOYe8Y9o5h7xj2jmHvGPaOYe8Y9o5h7xj2jmHv
GPaOYe8Y9o5h7xj2jmHvGPaOYe8Y9o5h7xj2jmHvGPaOYe8Y9o5h7xj2jmHvGPaOYe8Yfr8RalSo
UaFGhRoValSoUaFGhRoValSoUaFGhRoValSoUaFGhRoValSoUaFGhRoValSoUaFGhRoValSoUaFG
hRoValSoUaFGhRoValSoUaFGhRoValSoUaFGhRoValSoUaFGhRoValSoUaFGhRoValSoUaFGhRoV
alSoUaFGhRoValSoUaFGhRoValSoUaFGhRoValSoUalGpRqValSqUalGpRqValSqUalGpRqValSq
UalGpRqValSqUalGpRqValSqUalGpRqValSqUalGpRqValSqUalGpRqValSqUalGpRqValSqUalG
pRqValSqUalGpRqValSqUalGpRqValSqUalGpRqValSqUalGpRqValSqUalGpRqValSqUalGpRqV
alSqUalGpRqValSqUalGpRqValSqUalGpRqValSqUalGpRqValSqUalGpRqValSqUalGpRqValSq
UalGpRqValSqUalGpRqValSqUalGpRqValSqUaVGlRpValSpUaVGlRpValSpUaVGlRpValSpUaVG
lRpValSpUaVGlRpValSpUaVGlRpValSpUaVGlRpValSpUaVGlRpValSpUaVGlRpValSpUaVGlRpV
alSpUaVGlRpValSpUaVGlRpValSpUaVGlRpValSpUaVGlRpValSpUaVGlRpValSpUaVGlRpValSp
UaVGlRpValSpUaVGlRpValSpUaVGlRpValSpUaVGlRpValSpUaVGlRpValSpUaVGlRpValSpUaVG
lRpValSpUaVGlRpValSpUaVGlRpValSpUUuNWmrUUqOWGrXUqKVGLTVqqVFLjVpq1FKjlhq11Kil
Ri01aqlRS41aatRSo5YatdSopUYtNWqpUUuNWmrUUqOWGrXUqKVGLTVqqVFuMhvrB05h/IUolS8f
hmVfPn/yzfMvnvzjl//0zYs/j3j5doG/f/b7p396+vuPfvfe188/ffbi01fTtudP/89vzn9z/r9v
fnlOzF+Z/v7zb+FfQoL/cffzL/nEO8i8g8w7yLyDzDvIvIPMO8i8g8w7yLyDzDvIvIPMO8i8g8w7
yLyDzDvIvIPMO8i8g8w7yLyDzDvIvIPMO8i8g8x3MMh81wdef+wBwv7qAOGvM2v8C5P4EWPAv57D
9k82s/75A9b/kQ6yvrO78Tfz+/DjRuA/36jlZeWxJNoML5vhZTO8bIaXzfCyGV42w8tmeNkML5vh
ZTP8CCi0bIaXzfCyGV42w8tmeNkML5vhZTO8bIaXzfCyGV42w8tmeNkML5vhZTO8bIaXzfCyGV42
w8tmeNkML5vhZTO8bIaXzfCyGV42w8tmeNkML5vhZTO8bIaXzfCyGV42w8tmeNkML5vhZTO8bIaX
zfCyGV42w8tmeNkML5vhZTO8bIaXzfCyGV42w8tmeNsMb5vhbTO8bYa3zfC2Gd42w9tmeNsMb5vh
bTO8bYa3zfC2Gd42w9tmeNsMb5vhbTO8bYa3zfC2Gd42w9tmeNsMb5vhbTO8bYa3zfC2Gd42w9tm
eNsMb7+w2WrUVqO2GrXVqK1GbTVqq1Fbjdpq1Fajthq11aitRm01aqtRW43aatRWo7YatdWorUZt
NWqrUVuN2mrUVqO2GrXVqK1GbTVqq1Fbjdpq1Fajthq11aitRm01aqtRW43aatRWo7YatdWorUZt
NWqrUVuN2mrUVqO2GrXVqK1GbTVqq1Fbjdpq1Fajthq11aitRm01aqtRW43aatRGo+b7aNQJNAPd
wDAwDYSBNFAGlgEzbWbazLSZaTPTZqbNTJuZNjNtZtrMtJtpN9Nupt1Mu5l2M+1m2s20m2k302Gm
w0yHmQ4zHWY6zHSY6TDTYabDTKeZTjOdZjrNdJrpNNNpptNMp5lOMw0zDTMNMw0zDTMNMw0zDTMN
Mw0zTTNNM00zTTNNM00zTTNNM00zTTMtMy0zLTMtMy0zLTMtMy0zLTMtM5U7/P4y02Wmy0yXmS4z
lXf8/jLTZabLTLeZbjPdZrrNdJvpNtNtpttMt5mqUU2NampUU6OaGtXUqKZGNTWqqVFNjWpqVFOj
mhrV1KimRjU1qqlRTY1qalRTo5oa1dSopkY1NaqpUU2NampUU6OaGtXUqKZGNTWqqVFNjWpqVFOj
mhrVxiOCeD1CihswUzWqqVFNjWpqVFOjmhrV1KimRjU1qqlRTY1qalRTo5oa1dSopkY1NaqpUU2N
ampUU6OaGtXUqKZGNTWqqVFNjWpqVFOjmhrV1KimRjU1qqlRTY1qalRTo5oa1dSopkY1NaqpUU2N
ampUU6OaGtUeMfnVqKZGNTWqqVFNjWpqVFOjmhrV1KimRjU1qqlRTY3qalRXo7oa1dWorkZ1Naqr
UV2N6mpUV6O6GtXVqK5GdTWqq1FdjepqVFejuhrV1aiuRnU1qqtRXY3qalRXo7oa1dWorkZ1Naqr
UV2N6mpUf4c+anf4dYdfd/h1h193+HWHX3f4dYdfd/h1h193+HWHX3f4dYdfd/h1h193+HWHX3f4
dYdfd/h1h193+HWHX3f4dYdfv8Lw62/n1OeLb756eTLvvRdf/+sXT3/72YsXv/gZOviuDwv+0sfu
fsJf+WufkHzj+fpn7v7P9fnsP8Ln8695qPGXzPtnnjD9Bc5X/hu44re/zu/qXOcboPGpLRY9291u
u9ttd7vtbrfd7ba73Xa32+52291uu9ttd7vtbrfd7ba73Xa32+52291uu9ttd7vtbrfd7ba73Xa3
2+52291uu9ttd7vtbrfd7ba73Xa32+52291uu9ttd7vtbrfd7ba73Xa32+52291uu9ttd7vtbrfd
7ba73Xa32+52291uu9ttd7vtbrfd7ba73Xa32+52291uu9ttd7vtbrfd7ba73Xa32+52291huzts
d4ft7rDdHba7w3Z32O4O291huztsd4ft7rDdHba7w3Z32O4O291huztsd4ft7rDdHba7w3Z32O4O
291huztsd4ft7rDdHba7w3Z32O4O291huzv8SmaoUUONGmrUUKOGGjXUqKFGDTVqqFFDjRpq1FCj
hho11KihRg01aqhRQ40aatRQo4YaNdSooUYNNWqoUUONGmrUUKOGGjXUqKFGDTVqqFFDjRpq1FCj
hho11KihRg01aqhRQ40aatRQo4YaNdSooUYNNWqoUUONGmrUUKOGGjXUqKFGDTVqqFFDjRpq1FCj
hho11KihRg01aqhRQ42aatRUo6YaNdWoqUZNNWqqUVONmmrUVKOmGjXVqKlGTTVqqlFTjZpq1FSj
pho11aipRk01aqpRU42aatRUo6YaNdWoqUZNNWqqUVONmmrUVKM0hpkaw0yNYabGMFNjmKkxzNQY
ZmoMMzWGmRrDTI1hpsYwU2OYqTHM1BhmagwzNYaZGsNMjWGmxjBTY5ipMczUGGZqDDM1hpkaw0yN
YabGMFNjmKkxzNQYZmoMMzWGmRrDTI1hpsYwU2OYqTHM1BhmagwzNYaZGsNMjWGmxjBTY5ipMczU
GGZqDDM1hpkaw0yNYabGMFNjmKkxzNQYZmoMMzWGmRrDTI1hpsYwU2OYqTHM1BhmagwzNYaZGsNM
jWGmxjBTY5ipMczUGGZqDDM1hpkaw0yNYabGMFNjmKkxzNQYZmoMMzWGmRrDTI1hpsYwU2OYqTHM
1BhmagwzNYaZGsNMjWGmxjBTY5ipMczUGGZqDDM1hpkaw0yNYabGMFNjmKkxzNQYZmoMMzWGmRrD
TI1hpsYwU2OYqTHM1BhmagwzNYaZGsNMjWGmxjBTY5ipMczUGGZqDDM1hpkaw0yNYabGMFNjmKkx
zNQYZmoMMzWGmRrDTI1hpsYwU2OYqTHM1BhmagwzNYaZGsNMjWGmxjBTY5ipMczUGGZqDDM1hpka
w0yNYabGMFNjmKkxzNQYZmoMMzWGmRrDTI1hpsYwU2OYqTHM1BhmagwzNYaZGsNMjWGmxjBTY5ip
MczUGGZqDDM1hpkaw0yNYabGMFNjmKkxzNQYZmoMMzWGmRrDTI1hpsYwU2OYqTHM1BhmagwzNYaZ
GsNMjWGmxjBTY5ipMczUGGZqDDM1hpkaw0yNYabGMFNjmKkxzNQYZuY7ONd5h193+HWHX3f4dYdf
d/h1h193+HWHX3f4dYdfd/h1h193+HWHX3f4dYdfd/h1h193+HWHX3f4dYdfd/h1h193+PUrDr/e
9bnOn++i+OuM735+XtdF88eccfwlj1u+mru+ePHy/07oT1+/93lbz17+2/j2X8+HPXv65B+fP/30
n598+dVnXzx78aTlePL0T189/ez8DH7769nF/sykfqx97A+yhM9DbzWyD0370LQPTfvQtA9N+9C0
D0370LQPTfvQtA9N+9C0D0370LQPTfvQtA9N+9C0D0370LQPTfvQtA9N+9C0D0370LQPTfvQtA9N
+9C0D0370LQPTfvQtA9N+9C0D0370LQPTfvQtA9N+9C0D0370LQPTfvQtA9N+9C0D0370LQPTfvQ
tA9N+9C0D0370LQPTfvQtA9N+9C0D0370LQPTfvQtA8t+9CyDy370LIPLfvQsg8t+9CyDy370LIP
LfvQsg8t+9CyDy370LIPLfvQsg8t+9CyDy370LIPLfvQsg8t+9CyDy370LIPLfvQsg8t+9CyDy37
0PK7klKjSo0qNarUqFKjSo0qNarUqFKjSo0qNarUqFKjSo0qNarUqFKjSo0qNarUqFKjSo0qNarU
qFKjSo0qNarUqFKjSo0qNarUqFKjSo0qNarUqFKjSo0qNarUqFKjSo0qNarUqFKjSo0qNarUqFKj
So0qNarUqFKjSo0qNarUqFKjSo0qNarUqFKjSo0qNarUqFKjSo1aatRSo5YatdSopUYtNWqpUUuN
WmrUUqOWGrXUqKVGLTVqqVFLjVpq1FKjlhq11KilRi01aqlRS41aatRSo5YatdSopUYtNWqpUUuN
WmrUUqP0ZJl6skw9WaaeLFNPlqkny9STZerJMvVkmXqyTD1Zpp4sU0+WqSfL1JNl6sky9WSZerJM
PVmmnixTT5apJ8vUk2XqyTL1ZJl6skw9WaaeLFNPlqkny9STZerJMvVkmXqyTD1Zpp4sU0+WqSfL
1JNl6sky9WSZerJMPVmmnixTT5apJ8vUk2XqyTL1ZJl6skw9WaaeLFNPlqkny9STZerJMvVkmXqy
TD1Zpp4sU0+WqSfL1JNl6sky9WSZerJMPVmmnixTT5apJ8vUk2XqyTL1ZJl6skw9WaaeLFNPlqkn
y9STZerJMvVkmXqyTD1Zpp4sU0+WqSfL1JNl6sky9WSZerJMPVmmnixTT5apJ8vUk2XqyTL1ZJl6
skw9WaaeLFNPlqkny9STZerJMvVkmXqyTD1Zpp4sU0+WqSfL1JNl6sky9WSZerJMPVmmnixTT5ap
J8vUk2XqyTL1ZJl6skw9WaaeLFNPlqkny9STZerJMvVkmXqyTD1Zpp4sU0+WqSfL1JNl6sky9WSZ
erJMPVmmnixTT5apJ8vUk2XqyTL1ZJl6skw9WaaeLFNPlqkny9STZerJMvVkmXqyTD1Zpp4sU0+W
qSfL1JNl6sky9WSZerJMPVmmnixTT5apJ0voyRJ6soSeLKEnS+jJEnqyhJ4soSdL6MkSerKEniyh
J0voyRJ6soSeLKEnS+jJEnqyhJ4soSdL6MkSerKEniyhJ0voyRJ6soSeLKEnS+jJEnqyhJ4soSdL
6MkS779LI807/LrDrzv8usOvO/y6w687/LrDrzv8usOvO/y6w687/LrDrzv8usOvO/y6w687/LrD
rzv8usOvO/y6w687/LrDr19++PWuD1z+4ctnX794749fffHNiyftqyfPn/7TN198+vy3//LlH/7w
63hH/pkF/7178TOPy/0CzoTnh+Vv0fC3aPhbNPwtGv4WDX+Lpr9F09+i6W/R9Pd9muk002mm00yn
mU4zDTMNMw0zDTMNMw0zDTMNMw0zDTNNM00zTTNNM00zTTNNM00zTTNNMy0zLTMtMy0zLTMtMy0z
LTMtMy0zXWa6zHSZ6TLTZabLTJeZLjNdZrrMdJvpNtNtpttMt5luM91mus10m6n9Q7N/aPYPzf6h
2T80+4dm/9DsH5r9Q7N/aPYPzf6h2T80+4dm/9DsH5r9Q7N/aPYPzf6h2T80+4dm/9DsH5r9Q7N/
aPYPzf6h2T80+4dm/9DsH5r9Q7N/aMNM1aimRjU1qqlRTY1qalRTo5oa1dSopkY1NaqpUU2NampU
U6OaGtXUqKZGNTWqqVFNjWpqVFOjmhrV1KimRjU1qqlRTY1qalRTo5oa1dSopkY1NaqpUU2NampU
U6OaGtXUqKZGNTWqqVFNjWpqVFOjmhrV1KimRjU1qqlRTY1qalRTo5oa1dSopkY1NaqpUU2NampU
U6OaGtXUqKZGdTWqq1FdjepqVFejuhrV1aiuRnU1qqtRXY3qalRXo7oa1dWorkZ1NaqrUV2N6mpU
V6O6GtXVqK5GdTWqq1FdjepqVFejuhrV1aiuRnU1qqtRmlyEJhehyUVochGaXIQmF6HJRWhyEZpc
hCYXoclFaHIRmlyEJhehyUVochGaXIQmF6HJRWhyEZpchCYXoclFaHIRmlyEJhehyUVochGaXIQm
F6HJRWhyEZpchCYXoclFaHIRmlyEJhehyUVochGaXIQmF6HJRWhyEZpchCYXoclFaHIRmlyEJheh
yUVochGaXIQmF6HJRWhyEZpchCYXoclFaHIRmlyEJhehyUVochGaXIQmF6HJRWhyEZpchCYXoclF
aHIRmlyEJhehyUVochGaXIQmF6HJRWhyEZpchCYXoclFaHIRmlyEJhehyUVochGaXIQmF6HJRWhy
EZpchCYXoclFaHIRmlyEJhehyUVochGaXIQmF6HJRWhyEZpchCYXoclFaHIRmlyEJhehyUVochGa
XIQmF6HJRWhyEZpchCYXoclFaHIRmlyEJhehyUVochGaXIQmF6HJRWhyEZpchCYXoclFaHIRmlyE
JhehyUVochGaXIQmF6HJRWhyEZpchCYXoclFaHIRmlyEJhehyUVochGaXIQmF6HJRWhyEZpchCYX
oclFaHIRmlyEJhehyUVochGaXIQmF6HJRWhyEZpchCYXoclFaHIRmlyEJhehyUVochGaXIQmF6HJ
RWhyEZpchCYXoclFaHIRmlyEJhehyUVochGaXIQmF6HJRWhyEZpchCYXoclFaHIRmlyEJhehyUVo
chGaXIQmF6HJRcx36Ux4h193+HWHX3f4dYdfd/h1h193+HWHX3f4dYdfd/h1h193+HWHX3f4dYdf
d/h1h193+HWHX3f4dYdfd/h1h193+PXLD7/e9UG5t850//nlubPvuPH9gFHcX+Yf+O0/f/3p8396
+vVvX/3xL+9D9/2/8r9/u8qLHz8w/IE78SPc6f5yW8V/57b8WCe8f9OM8K9rffhnTA9/7l34BZwA
z0Pm02/fN+37pn3ftO+b9n3Tvm/a9037vmnfN+37pn3ftO+b9n3Tvm/a9037vmnfN+37pn3ftO+b
9n3Tvm/a9037vmnfN+37pn3ftO+b9n3Tvm/a9037vmnfN+37pn3ftO+b9n3Tvm/a9037vmnfN+37
pn3ftO+b9n3Tvm/a9037vmnfN+37pn3ftO+b9n3Tvm/a9037vmnfN+37pn3ftO+b9n3Tvm/a9037
vmnfF/Z9Yd8X9n1h3xf2fWHfF/Z9Yd8X9n1h3xf2fWHfF/Z9Yd8X9n1h3xf2fWHfF/Z9Yd8X9n1h
3xf2fWHfF/Z9Yd8X9n1h3xf2fWHfF/Z9Yd8X9n3hdxOhRoUaFWpUqFGhRoUaFWpUqFGhRoUaFWpU
qFGhRoUaFWpUqFGhRoUaFWpUqFGhRoUaFWpUqFGhRoUaFWpUqFGhRoUaFWpUqFGhRoUaFWpUqFGh
RoUaFWpUqFGhRoUaFWpUqFGhRoUaFWpUqFGhRoUaFWpUqFGhRoUaFWpUqFGhRoUaFWpUqFGhRoUa
FWpUqFGhRoUalWpUqlGpRqUalWpUqlGpRqUalWpUqlGpRqUalWpUqlGpRqUalWpUqlGpRqUalWpU
qlGpRqUalWpUqlGpRqUalWpUqlGpRqUalWpUqlGaSoSmEqGpRGgqEZpKhKYSoalEaCoRmkqEphKh
qURoKhGaSoSmEqGpRGgqEZpKhKYSoalEaCoRmkqEphKhqURoKhGaSoSmEqGpRGgqEZpKhKYSoalE
aCoRmkqEphKhqURoKhGaSoSmEqGpRGgqEZpKhKYSoalEaCoRmkqEphKhqURoKhGaSoSmEqGpRGgq
EZpKhKYSoalEaCoRmkqEphKhqURoKhGaSoSmEqGpRGgqEZpKhKYSoalEaCoRmkqEphKhqURoKhGa
SoSmEqGpRGgqEZpKhKYSoalEaCoRmkqEphKhqURoKhGaSoSmEqGpRGgqEZpKhKYSoalEaCoRmkqE
phKhqURoKhGaSoSmEqGpRGgqEZpKhKYSoalEaCoRmkqEphKhqURoKhGaSoSmEqGpRGgqEZpKhKYS
oalEaCoRmkqEphKhqURoKhGaSoSmEqGpRGgqEZpKhKYSoalEaCoRmkqEphKhqURoKhGaSoSmEqGp
RGgqEZpKhKYSoalEaCoRmkqEphKhqURoKhGaSoSmEqGpRGgqEZpKhKYSoalEaCoRmkqEphKhqURo
KhGaSoSmEqGpRGgqEZpKhKYSoalEaCoRmkqEphKhqURoKhGaSoSmEqGpRGgqEZpKhKYSoalEaCoR
mkqEphKhqURoKhGaSoSmEqGpRGgqEZpKhKYSoalEaCoRmkqEphKhqURoKhGaSoSmEqGpRGgqEZpK
hKYSoalErHfpBHiHX3f4dYdfd/h1h193+HWHX3f4dYdfd/h1h193+HWHX3f4dYdfd/h1h193+HWH
X3f4dYdfd/h1h193+HWHX3f49csPv971Acd/89Ta86dfffn867/uSbk3a/7tnZd7y0TV9D40vQ9N
70PT+9D0PjS9D03vQ9P70PQ+NL0PTe9D0/vQ9D40vQ9N70PT+9D0PjS9D03vQ9P70PQ+NL0PTe9D
0/vQ9D40vQ9N70PT+9D0PjS9D03vQ9P70PQ+NL0PTe9D0/vQ9D40vQ9N70PT+9D0PjS9D03vQ9P7
0PQ+NL0PTe9D0/vQ9D40vQ9N70PT+9D0PjS9D03vQ9P70PQ+NL0PTe9D0/vQ9D40vQ9N70PT+9D0
PjS9D03vQ9P70PQ+NL0PTe9D0/vQ9D40vQ9N70PT+9D0PjS9D03vQ9P70PQ+NL0PTe9D0/vQ9D40
vQ9N70PT+9D0PjS9D03vQ9P70PQ+NL0PTe9D0/vQ9D40vQ9N70PT+9D0PjS9D03vQ9P70PQ+NL0P
Te9D0/vQ9D40vQ9N70PT+9D0PjS9D03vQ9P70PQ+NL0PTe9D0/vQ9D40vQ9N70PT+9D0PjS9D03v
Q9P70PQ+NL0PTe9D0/vQ9D40vQ9N70PT+9D0PjS9D03vQ9P70PQ+NL0PTe9D0/vQ9D40vQ9N70PT
+9D0PjS9D03vQ9P70PQ+NL0PTe9D0/vQ9D40vQ9N70PT+9D0PjS9D03vQ9P70PQ+NL1PTe9T0/vU
9D41vU9N71PT+9T0PjW9T03vU9P71PQ+Nb1PTe9T0/vU9D41vU9N71PT+9T0PjW9T03vU9P71PQ+
Nb1PTe9T0/vU9D41vU9N71PT+9T0PjW9T03v8/1hpsNMh5kOMx1mOsx0mOk002mm00ynmU4znWY6
zXSa6TTTaaZhpmGmYaZhpmGmYaZhpmGmYaZhpmmmaaZppmmmaaZppmmmaaZppmmmZaZlpmWmZaZl
pmWmZaZlpmWmZabLTJeZLjNdZrrMdJnpMtNlpstMl5luM91mus10m+k2022m20y3mW4zVaP0lki9
JVJvidRbIvWWSL0lUm+J1Fsi9ZZIvSVSb4nUWyL1lki9JVJvidRbIvWWSL0lUm+J1Fsi9ZZIvSVS
b4nUWyL1lki9JVJvidRbIvWWSL0lUm+J1Fsi9ZZIvSVSb4nUWyL1lki9JVJvidRbIvWWSL0lUm+J
1Fsi9ZZIvSVSb4nUWyL1lki9JVJvidRbIvWWSL0lUm+J1Fsi9ZZIvSVSb4nUWyL1lki9JVJvidRb
IvWWSL0lUm+J1Fsi9ZZIvSVSb4nUWyL1lki9JVJvidRbIvWWSL0lUm+J1Fsi9ZZIvSVSb4nUWyL1
lki9JVJvidRbIvWWSL0lUm+J1Fsi9ZZIvSVSb4nUWyL1lki9JVJvidRbIvWWSL0lUm+J1Fsi9ZZI
vSVSb4nUWyL1lki9JVJvidRbIvWWSL0lUm+J1Fsi9ZZIvSVSb4nUWyL1lki9JVJvidRbIvWWSL0l
Um+J1Fsi9ZZIvSVSb4nUWyL1lsj+y5+X+9lAzj83JPwL3AbvZO1O1u5k7U7W7mTtTtbuZO1O1u5k
7U7W7mTtTtbuZO1O1u5k7U7W7mTtTtbuZO1O1u5k7U7W7mTtTtbuZO1O1n7xydo7PIz3c87T/bzx
3bs7b/e37c/3A4aHv97RSuwWP/zyj388N/jJoyx+4Rv11z/R+XPu8L/hS/lnbtSv9jP+QcrsqSyW
PJvdbrPbbXa7zW632e02u91mt9vsdpvdbrPbbXa7zW632e02u91mt9vsdpvdbrPbbXa7zW632e02
u91mt9vsdpvdbrPbbXa7zW632e02u91mt9vsdpvdbrPbbXa7zW632e02u91mt9vsdpvdbrPbbXa7
zW632e02u91mt9vsdpvdbrPbbXa7zW632e02u91mt9vsdpvdbrPbbXa7zW632e02u91mt9vsdpvd
YbM7bHaHze6w2R02u8Nmd9jsDpvdYbM7bHaHze6w2R02u8Nmd9jsDpvdYbM7bHaHze6w2R02u8Nm
d9jsDpvdYbM7bHaHze6w2R02u8Nmd9jsDpvdYbM7/EJmqFFDjRpq1FCjhho11KihRg01aqhRQ40a
atRQo4YaNdSooUYNNWqoUUONGmrUUKOGGjXUqKFGDTVqqFFDjRpq1FCjhho11KihRg01aqhRQ40a
atRQo4YaNdSooUYNNWqoUUONGmrUUKOGGjXUqKFGDTVqqFFDjRpq1FCjhho11KihRg01aqhRQ40a
atRQo4YaNdSooUYNNWqoUUONmmrUVKOmGjXVqKlGTTVqqlFTjZpq1FSjpho11aipRk01aqpRU42a
atRUo6YaNdWoqUZNNWqqUVONmmrUVKOmGjXVqKlGTTVqqlFTjZpq1FSjdOtI3TpSt47UrSN160jd
OlK3jtStI3XrSN06UreO1K0jdetI3TpSt47UrSN160jdOlK3jtStI3XrSN06UreO1K0jdetI3TpS
t47UrSN160jdOlK3jtStI3XrSN06UreO1K0jdetI3TpSt47UrSN160jdOlK3jtStI3XrSN06UreO
1K0jdetI3TpSt47UrSN160jdOlK3jtStI3XrSN06UreO1K0jdetI3TpSt47UrSN160jdOlK3jtSt
I3XrSN06UreO1K0jdetI3TpSt47UrSN160jdOlK3jtStI3XrSN06UreO1K0jdetI3TpSt47UrSN1
60jdOlK3jtStI3XrSN06UreO1K0jdetI3TpSt47UrSN160jdOlK3jtStI3XrSN06UreO1K0jdetI
3TpSt47UrSN160jdOlK3jtStI3XrSN06UreO1K0jdetI3TpSt47UrSN160jdOlK3jtStI3XrSN06
UreO1K0jdetI3TpSt47UrSN160jdOlK3jtStI3XrSN06UreO1K0jdetI3TpSt47UrSN160jdOlK3
jtStI3XrSN06UreO1K0jdetI3TpSt47UrSN160jdOlK3jtStI3XrSN06UreO1K0jdetI3TpSt47U
rSN160jdOlK3jtStI3XrSN06UreO1K0jdetI3TpSt47UrSN160jdOlK3jtStI3XrSN06UreO1K0j
detI3TpSt47UrSN160jdOlK3jsx3abF4h193+HWHX3f4dYdfd/h1h193+HWHX3f4dYdfd/h1h193
+HWHX3f4dYdfd/h1h193+HWHX3f4dYdfd/h1h193+PXLD7/etcXiv7HOP3/5/Omnz957+s1nT/75
+cv/+efnT37/9Ns1Xv3Rtx/9t3B88medS/2pF/53/+Efvnz29Med//tLj3X+vMOyP/zT/vtnv3/6
p6e//+h37339/NNnLz797OvPv3z2X//xm3/8xy+ePjm37slnn3719TfPn7680F/ntv8lGfyIO/3j
AL7nWbMI2P6l7V/a/qXtX9r+pe1f2v6l7V/a/qXtX9r+pe1f2v6l7V/a/qXtX9r+pe1f2v6l7V/a
/qXtX9r+pe1f2v6l7V/a/qXtX9r+pe1f2v6l7V/a/qXtX9r+pe1f2v6l7V/a/qXtX9r+pe1f2v6l
7V/a/qXtX9r+pe1f2v6l7V/a/qXtX9r+pe1f2v6l7V/a/qXtX9r+pe1f2v6l7V/a/qXtX9r+le1f
2f6V7V/Z/pXtX9n+le1f2f6V7V/Z/pXtX9n+le1f2f6V7V/Z/pXtX9n+le1f2f6V7V/Z/pXtX9n+
le1f2f6V7V/Z/pXtX9n+le1f2f6V7V/5FUWpUaVGlRpValSpUaVGlRpValSpUaVGlRpValSpUaVG
lRpValSpUaVGlRpValSpUaVGlRpValSpUaVGlRpValSpUaVGlRpValSpUaVGlRpValSpUaVGlRpV
alSpUaVGlRpValSpUaVGlRpValSpUaVGlRpValSpUaVGlRpValSpUaVGlRpValSpUaVGlRpValSp
UaVGLTVqqVFLjVpq1FKjlhq11KilRi01aqlRS41aatRSo5YatdSopUYtNWqpUUuNWmrUUqOWGrXU
qKVGLTVqqVFLjVpq1FKjlhq11KilRi01aqlRGqGkRiipEUpqhJIaoaRGKKkRSmqEkhqhpEYoqRFK
aoSSGqGkRiipEUpqhJIaoaRGKKkRSmqEkhqhpEYoqRFKaoSSGqGkRiipEUpqhJIaoaRGKKkRSmqE
khqhpEYoqRFKaoSSGqGkRiipEUpqhJIaoaRGKKkRSmqEkhqhpEYoqRFKaoSSGqGkRiipEUpqhJIa
oaRGKKkRSmqEkhqhpEYoqRFKaoSSGqGkRiipEUpqhJIaoaRGKKkRSmqEkhqhpEYoqRFKaoSSGqGk
RiipEUpqhJIaoaRGKKkRSmqEkhqhpEYoqRFKaoSSGqGkRiipEUpqhJIaoaRGKKkRSmqEkhqhpEYo
qRFKaoSSGqGkRiipEUpqhJIaoaRGKKkRSmqEkhqhpEYoqRFKaoSSGqGkRiipEUpqhJIaoaRGKKkR
SmqEkhqhpEYoqRFKaoSSGqGkRiipEUpqhJIaoaRGKKkRSmqEkhqhpEYoqRFKaoSSGqGkRiipEUpq
hJIaoaRGKKkRSmqEkhqhpEYoqRFKaoSSGqGkRiipEUpqhJIaoaRGKKkRSmqEkhqhpEYoqRFKaoSS
GqGkRiipEUpqhJIaoaRGKKkRSmqEkhqhpEYopRFKaYRSGqGURiilEUpphFIaoZRGKKURSmmEUhqh
lEYopRFKaYRSGqGURiilEUpphFIaoZRGKKURSmmEUhqhlEYopRFKaYRSGqGURiilEUpphFIaoZRG
KKURSr3/Ds453uHXHX7d4dcdft3h1x1+3eHXHX7d4dcdft3h1x1+3eHXHX7d4dcdft3h1x1+3eHX
HX7d4dcdft3h1x1+3eHXHX79isOvd37O8Tsn696eyvvj0xcvPv2np7/96l9/7HDuP/7r1//ty2f/
6bPnn3/19U8zwfy3Vn9X5wE/e/Hi5f+d0J++fu/ztp69/Lfx7b8++eLzZ0+f/OPzp5/+85Mvv/rs
i2cvnrScP3D082cNMn9SLj/2jODftp3nX3Iq8oev9Q9fnt+L9/741RffnPv01ZPnT//pmy8+fX5+
L/7wh1/0cuf78+9+aMF/74p/2k/7V/Y1fftjePHNVz/4V/7KB5b/reR+9d+nn2mi+sv+Xv8g0vlo
jSI4FMGhCA5FcCiCQxGciuBUBKciOJXraabTTKeZTjOdZjrNNMw0zDTMNMw0zDTMNMw0zDTMNMw0
zTTNNM00zTTNNM00zTTNNM00zbTMtMy0zLTMtMy0zLTMtMy0zLTMdJnpMtNlpstMl5kuM11musx0
meky022m20y3mW4z3Wa6zXSb6TbTbaa+/jRff5qvP83Xn+brT/P1p/n603z9ab7+NF9/mq8/zdef
5utP8/Wn+frTfP1pvv40X3+arz/N15/m60/z9af5+tN8/Wm+/jRff5qvP83Xn+brT/P1p/n603z9
ab7+NF9/2jBTNaqpUU2NampUU6OaGtXUqKZGNTWqqVFNjWpqVFOjmhrV1KimRjU1qqlRTY1qalRT
o5oa1dSopkY1NaqpUU2NampUU6OaGtXUqKZGNTWqqVFNjWpqVFOjmhrV1KimRjU1qqlRTY1qalRT
o5oa1dSopkY1NaqpUU2NampUU6OaGtXUqKZGNTWqqVFNjWpqVFOjmhrV1KimRjU1qqlRXY3qalRX
o7oa1dWorkZ1NaqrUV2N6mpUV6O6GtXVqK5GdTWqq1FdjepqVFejuhrV1aiuRnU1qqtRXY3qalRX
o7oa1dWorkZ1NaqrUV2N6mqU1jilNU5pjVNa45TWOKU1TmmNU1rjlNY4pTVOaY1TWuOU1jilNU5p
jVNa45TWOKU1TmmNU1rjlNY4pTVOaY1TWuOU1jilNU5pjVNa45TWOKU1TmmNU1rjlNY4pTVOaY1T
WuOU1jilNU5pjVNa45TWOKU1TmmNU1rjlNY4pTVOaY1TWuOU1jilNU5pjVNa45TWOKU1TmmNU1rj
lNY4pTVOaY1TWuOU1jilNU5pjVNa45TWOKU1TmmNU1rjlNY4pTVOaY1TWuOU1jilNU5pjVNa45TW
OKU1TmmNU1rjlNY4pTVOaY1TWuOU1jilNU5pjVNa45TWOKU1TmmNU1rjlNY4pTVOaY1TWuOU1jil
NU5pjVNa45TWOKU1TmmNU1rjlNY4pTVOaY1TWuOU1jilNU5pjVNa45TWOKU1TmmNU1rjlNY4pTVO
aY1TWuOU1jilNU5pjVNa45TWOKU1TmmNU1rjlNY4pTVOaY1TWuOU1jilNU5pjVNa45TWOKU1TmmN
U1rjlNY4pTVOaY1TWuOU1jilNU5pjVNa45TWOKU1TmmNU1rjlNY4pTVOaY1TWuOU1jilNU5pjVNa
45TWOKU1TmmNU1rjlNY4pTVOaY1TWuOU1jilNU5pjVNa45TWOKU1TmmNU1rjlNY4pTVOaY1TWuOU
1jilNU5pjVNa45TWOKU1TmmNU1rjlNY4pTVOaY1TWuOU1jilNU5pjVNa45TWOKU1TmmNU/Nd+pne
4dcdft3h1x1+3eHXHX7d4dcdft3h1x1+3eHXHX7d4dcdft3h1x1+3eHXHX7d4dcdft3h1x1+3eHX
HX7d4dcdfv3yw693fc73b/uc5082Hf3LDjj/2aPCXz7749Nvjx3/ah6fPymVH3uQ9/df/vG9Z+fu
vHjvP788K/riqy8+//rlP/2KJ5P/7JI/6wDyjz2Y+hf93jz/pT7vv37+8vjmL/3w/Dhq9Skn1jk7
3GmHO+1wpx3utMOddrjTDnfa4U473GmHO+1wpx3utMOddrjTDnfa4U473GmHO+1wpx3utMOddrjT
Dnfa4U473GmHO+1wpx3utMOddrjTDnfa4U473GmHO+1wpx3utMOddrjTDnfa4U473GmHO+1wpx3u
tMOddrjTDnfa4U473GmHO+1wpx3utMOddrjTDnfa4U473GmHO+1wpx3utMOddrjTDnfa4U473LDD
DTvcsMMNO9ywww073LDDDTvcsMMNO9ywww073LDDDTvcsMMNO9ywww073LDDDTvcsMMNO9ywww07
3LDDDTvcsMMNO9ywww073LDDDTvcsMMNv4UJNSrUqFCjQo0KNSrUqFCjQo0KNSrUqFCjQo0KNSrU
qFCjQo0KNSrUqFCjQo0KNSrUqFCjQo0KNSrUqFCjQo0KNSrUqFCjQo0KNSrUqFCjQo0KNSrUqFCj
Qo0KNSrUqFCjQo0KNSrUqFCjQo0KNSrUqFCjQo0KNSrUqFCjQo0KNSrUqFCjQo0KNSrUqFCjQo0K
NSrUqFSjUo1KNSrVqFSjUo1KNSrVqFSjUo1KNSrVqFSjUo1KNSrVqFSjUo1KNSrVqFSjUo1KNSrV
qFSjUo1KNSrVqFSjUo1KNSrVqFSjUo3S/ad0/yndf0r3n9L9p3T/Kd1/Svef0v2ndP8p3X9K95/S
/ad0/yndf0r3n9L9p3T/Kd1/Svef0v2ndP8p3X9K95/S/ad0/yndf0r3n9L9p3T/Kd1/Svef0v2n
dP8p3X9K95/S/ad0/yndf0r3n9L9p3T/Kd1/Svef0v2ndP8p3X9K95/S/ad0/yndf0r3n9L9p3T/
Kd1/Svef0v2ndP8p3X9K95/S/ad0/yndf0r3n9L9p3T/Kd1/Svef0v2ndP8p3X9K95/S/ad0/ynd
f0r3n9L9p3T/Kd1/Svef0v2ndP8p3X9K95/S/ad0/yndf0r3n9L9p3T/Kd1/Svef0v2ndP8p3X9K
95/S/ad0/yndf0r3n9L9p3T/Kd1/Svef0v2ndP8p3X9K95/S/ad0/yndf0r3n9L9p3T/Kd1/Svef
0v2ndP8p3X9K95/S/ad0/yndf0r3n9L9p3T/Kd1/Svef0v2ndP8p3X9K95/S/ad0/yndf0r3n9L9
p3T/Kd1/Svef0v2ndP8p3X9K95/S/ad0/yndf0r3n9L9p3T/Kd1/Svef0v2ndP8p3X9K95/S/ad0
/yndf0r3n9L9p3T/Kd1/Svef0v2ndP8p3X9K95/S/ad0/yndf0r3n9L9p3T/Kd1/Svef0v2ndP8p
3X9K95/S/ad0/yndf0r3n9L9p3T/Kd1/Svef0v2ndP8p3X9K95/S/ad0/yndf0r3n9L9p3T/Kd1/
av3yRzn/yrzYn0Zs/XUm1G9Hw3/pIPNvOs83A9J3lOWdot4p6p2i3inqnaLeKeqdot4p6p2i3inq
naLeKeqdot4p6p2i3inqnaLeKeqdot4p6p2i3inqnaLeKeqdot4p6juYov7/xZngn3XI8696Bvmn
nM79NU1Cf/mE/n/gJPifPVP8S1ihLrvBZTe47AaX3eCyG1x2g8tucNkNLrvBZTe47AaX3eCyG1x2
g8tucNkNLrvBZTe47AaX3eCyG1x2g8tucNkNLrvBZTe47AaX3eCyG1x2g8tucNkNLrvBZTe47AaX
3eCyG1x2g8tucNkNLrvBZTe47AaX3eCyG1x2g8tucNkNLrvBZTe47AaX3eCyG1x2g8tucNkNLrvB
ZTe47AaX3eCyG1x2g8tucNkNLrvBZTe47Qa33eC2G9x2g9tucNsNbrvBbTe47Qa33eC2G9x2g9tu
cNsNbrvBbTe47Qa33eC2G9x2g9tucNsNbrvBbTe47Qa33eC2G9x2g9tucNsNbrvBbTe47Qa331hs
NWqrUVuN2mrUVqO2GrXVqK1GbTVqq1Fbjdpq1Fajthq11aitRm01aqtRW43aatRWo7YatdWorUZt
NWqrUVuN2mrUVqO2GrXVqK1GbTVqq1Fbjdpq1Fajthq11aitRm01aqtRW43aatRWo7YatdWorUZt
NWqrUVuN2mrUVqO2GrXVqK1GbTVqq1Fbjdpq1Fajthq11aitRm01aqNRp9N+30Az0A0MA9NAGEgD
ZWAZMNNmps1Mm5k2M21m2sy0mWkz02amzUy7mXYz7WbazbSbaTfTbqbdTLuZdjMdZjrMdJjpMNNh
psNMh5kOMx1mOsx0muk002mm00ynmU4znWY6zXSa6TTTMNMw0zDTMNMw0zDTMNMw0zDTMNM00zTT
NNM00zTTNNM00zTTNNM00zLTMtMy0zLTMtMy0zLTMtMy0zLTZabLTJeZLjNdZrrMdJnpMtNlpstM
t5luM91mus10m+k2022m20y3mapRuuosXXWWrjpLV52lq87SVWfpqrN01Vm66ixddZauOktXnaWr
ztJVZ+mqs3TVWbrqLF11lq46S1edpavO0lVn6aqzdNVZuuosXXWWrjpLV52lq87SVWfpqrN01Vm6
6ixddZauOktXnaWrztJVZ+mqs3TVWbrqLF11lq46S1edpavO0lVn6aqzdNVZuuosXXWWrjpLV52l
q87SVWfpqrN01Vm66ixddZauOktXnaWrztJVZ+mqs3TVWbrqLF11lq46S1edpavO0lVn6aqzdNVZ
uuosXXWWrjpLV52lq87SVWfpqrN01Vm66ixddZauOktXnaWrztJVZ+mqs3TVWbrqLF11lq46S1ed
pavO0lVn6aqzdNVZuuosXXWWrjpLV52lq87SVWfpqrN01Vm66ixddZauOktXnaWrztJVZ+mqs3TV
WbrqLF11lq46S1edpavO0lVn6aqzdNVZuuosXXWWrjpLV52lq87SVWfpqrN01Vm66ixddZauOktX
naWrzurv1Ar1Dr/u8OsOv+7w6w6/7vDrDr/u8OsOv+7w6w6/7vDrDr/u8OsOv+7w6w6/7vDrDr/u
8OsOv+7w6w6/7vDrDr/u8OsXH379TR57fBeHEX/wBODPPAz3I2Gtn510XnwXsvoruZ/+xGyuZ+xP
8Iz9q54o/UHc7nnwrUj2ot1etNuLdnvRbi/a7UW7vWi3F+32ot1etNuLdnvRbi/a7UW7vWi3F+32
ot1etNuLdnvRbi/a7UW7vWi3F+32ot1etNuLdnvRbi/a7UW7vWi3F+32ot1etNuLdnvRbi/a7UW7
vWi3F+32ot1etNuLdnvRbi/a7UW7vWi3F+32ot1etNuLdnvRbi/a7UW7vWi3F+32ot1etNuLdnvR
bi/a7UW7vWi3F+32osNedNiLDnvRYS867EWHveiwFx32osNedNiLDnvRYS867EWHveiwFx32osNe
dNiLDnvRYS867EWHveiwFx32osNedNiLDnvRYS867EWHveiwFx32osNedPh9yVCjhho11KihRg01
aqhRQ40aatRQo4YaNdSooUYNNWqoUUONGmrUUKOGGjXUqKFGDTVqqFFDjRpq1FCjhho11KihRg01
aqhRQ40aatRQo4YaNdSooUYNNWqoUUONGmrUUKOGGjXUqKFGDTVqqFFDjRpq1FCjhho11KihRg01
aqhRQ40aatRQo4YaNdSooUYNNWqoUUONGmrUUKOGGjXVqKlGTTVqqlFTjZpq1FSjpho11aipRk01
aqpRU42aatRUo6YaNdWoqUZNNWqqUVONmmrUVKOmGjXVqKlGTTVqqlFTjZpq1FSjpho11aipRmlb
srQtWdqWLG1LlrYlS9uSpW3J0rZkaVuytC1Z2pYsbUuWtiVL25KlbcnStmRpW7K0LVnalixtS5a2
JUvbkqVtydK2ZGlbsrQtWdqWLG1LlrYlS9uSpW3J0rZkaVuytC1Z2pYsbUuWtiVL25KlbcnStmRp
W7K0LVnalixtS5a2JUvbkqVtydK2ZGlbsrQtWdqWLG1LlrYlS9uSpW3J0rZkaVuytC1Z2pYsbUuW
tiVL25KlbcnStmRpW7K0LVnalixtS/6/7P1bk53Xkad5fpW8qbGasYaIdXL3dSEry6qath6bsZyy
rhnryzQIDElIUQAHADMls/7wA5KZpN6feMAhAhEgl1VJqQiJsX2f/O/79b2ep9SWlNqSUltSaktK
bUmpLSm1JaW2pNSWlNqSUltSaktKbUmpLSm1JaW2pNSWlNqSUltSaktKbUmpLSm1JaW2pNSWlNqS
UltSaktKbUmpLSm1JaW2pNSWlNqSUltSaktKbUmpLSm1JaW2pNSWlNqSUltSaktKbUmpLSm1JaW2
pNSWlNqSUltSaktKbUmpLSm1JaW2pNSWlNqSUltSaktKbUmpLSm1JaW2pNSWlNqSUltSaktKbUmp
LSm1JaW2pNSWlNqSUltSaktKbUmpLSm1JaW2pNSWlNqSUltSaktKbUmpLSm1JaW2pNSWlNqSUltS
aktKbUmpLSm1JaW2pNSWlNqSUltSaktKbUmpLSm1JaW2pNSWlNqSUltSaktKbUmpLSm1JaW2pNSW
lNqSUltSaktKbUmpLSm1JaW2pNSWlNqSUltSaktKbUmpLSm1JaW2pNSWlNqSUltScQ+HLs/y6yy/
zvLrLL/O8ussv87y6yy/zvLrLL/O8ussv87y6yy/zvLrLL/O8ussv87y6yy/zvLrLL/O8ussv87y
6yy/7nD5dd+HLv8fzz+/+cvN5//9v3721Zd/ePnkzd95/fLJ81dPnr5+9uL5o89vvv4P//rkmx9e
P/vzm4Lu8CTi+9XyD//5n148v3m3w4PfH/v8882rbw7UffnXt71P/+Ovr//44vn/fPry2Zev3++8
4A/d+gM5GvgdkvbNy9P3jRNTODGFE1M4MYUTUzgxhRNTODGFE1M4MYUTUzgxhRNTODGFE1M4MYUT
UzgxhRNTODGFE1M4MYUTUzgxhRNTODGFE1M4MYUTUzgxhRNTODGFE1M4MYUTUzgxhRNTODGFE1M4
MYUTUzgxhRNTODGFE1M4MYUTUzgxhRNTODGFE1M4MYUTUzgxhRNTODGFE1M4MYUTUzgxhRNTODGF
E1M4MYUTUzoxpRNTOjGlE1M6MaUTUzoxpRNTOjGlE1M6MaUTUzoxpRNTOjGlE1M6MaUTUzoxpRNT
OjGlE1M6MaUTUzoxpRNTOjGlE1M6MaUTUzoxpRNTOjGln+rTjEozKs2oNKPSjEozKs2oNKPSjEoz
Ks2oNKPSjEozKs2oNKPSjEozKs2oNKPSjEozKs2oNKPSjEozKs2oNKPSjEozKs2oNKPSjEozKs2o
NKPSjEozKs2oNKPSjEozKs2oNKPSjEozKs2oNKPSjEozKs2oNKPSjEozKs2oNKPSjEozKs2oNKPS
jEozKs2oNKPSjEozqsyoMqPKjCozqsyoMqPKjCozqsyoMqPKjCozqsyoMqPKjCozqsyoMqPKjCoz
qsyoMqPKjCozqsyoMqPKjCozqsyoMqPKjCozqsyoMqNUe5Rqj1LtUao9SrVHqfYo1R6l2qNUe5Rq
j1LtUao9SrVHqfYo1R6l2qNUe5Rqj1LtUao9SrVHqfYo1R6l2qNUe5Rqj1LtUao9SrVHqfYo1R6l
2qNUe5Rqj1LtUao9SrVHqfYo1R6l2qNUe5Rqj1LtUao9SrVHqfYo1R6l2qNUe5Rqj1LtUao9SrVH
qfYo1R6l2qNUe5Rqj1LtUao9SrVHqfYo1R6l2qNUe5Rqj1LtUao9SrVHqfYo1R6l2qNUe5Rqj1Lt
Uao9SrVHqfYo1R6l2qNUe5Rqj1LtUao9SrVHqfYo1R6l2qNUe5Rqj1LtUao9SrVHqfYo1R6l2qNU
e5Rqj1LtUao9SrVHqfYo1R6l2qNUe5Rqj1LtUao9SrVHqfYo1R6l2qNUe5Rqj1LtUao9SrVHqfYo
1R6l2qNUe5Rqj1LtUao9SrVHqfYo1R6l2qNUe5Rqj1LtUao9SrVHqfYo1R6l2qNUe5Rqj1LtUao9
SrVHqfYo1R6l2qNUe5Rqj1LtUao9SrVHqfYo1R6l2qNUe5Rqj1LtUao9SrVHqfYo1R6l2qNUe5Rq
j1LtUao9SrVHqfbYqj22ao+t2mOr9tiqPbZqj63aY6v22Ko9tmqPrdpjq/bYqj22ao+t2mOr9tiq
PbZqj63aY6v22Ko9tmqPrdpjq/bYqj22ao+t2mOr9tiqPbZqj63aY6v22Ko99uP79DGe5ddZfp3l
11l+neXXWX6d5ddZfp3l11l+neXXWX6d5ddZfp3l11l+neXXWX6d5ddZfp3l11l+neXXWX6d5ddZ
ft3+8uu+jwY+ffXq63+9+dVfXn/2rNXzr38a3/z46Itnz28e/e7lzZM/PXrx5dMvnr961GI+uvnL
lzdPX998fodnBD+wqLc9LPi94fHJl1/ePP/80Yvnj/77i6df/fnm+es7vHc/e7NvW//vXzx//eqz
P3/5xVdvHoQvH728+cNXXzx5+Zt/e/H7399q5fPx/Iefu8Efex1/4FP5nkLR21aJvqsN8sWb5/Xu
tJQ/dpd/7Dl4vyO3t6CefNPjbL7D5jtsvsPmO2y+w+Y7bb7T5jttvtOYmFY6rXRa6bTSaaXTSpeV
LitdVrqsdFnpstJlpctKl5UuKw0rDSsNKw0rDSsNKw0rDSsNKw0rTStNK00rTStNK00rTStNK00r
TSstKy0rLSstKy0rLSstKy0rLSstK91Wuq10W+m20m2l20q3lW4r3Vbq2N0cu5tjd3Psbo7dzbG7
OXY3x+7m2N0cu5tjd3Psbo7dzbG7OXY3x+7m2N0cu5tjd3Psbo7dzbG7OXY3x+7m2N0cu5tjd3Ps
bo7dzbG7OXY3x+7m2N0cu9uwUjOqmVHNjGpmVDOjmhnVzKhmRjUzqplRzYxqZlQzo5oZ1cyoZkY1
M6qZUc2MamZUM6OaGdXMqGZGNTOqmVHNjGpmVDOjmhnVzKhmRjUzqplRzYxqZlQzo5oZ1cyoZkY1
M6qZUc2MamZUM6OaGdXMqGZGNTOqmVHNjGpmVDOjmhnVzKhmRjUzqplRzYxqZlQzo5oZ1cyoZkY1
M6qZUd2M6mZUN6O6GdXNqG5GdTOqm1HdjOpmVDejuhnVzahuRnUzqptR3YzqZlQ3o7oZ1c2obkZ1
M6qbUd2M6mZUN6O6GdXNqG5GdTOqm1HdjOpmlBaTrcVkazHZWky2FpOtxWRrMdlaTLYWk63FZGsx
2VpMthaTrcVkazHZWky2FpOtxWRrMdlaTLYWk63FZGsx2VpMthaTrcVkazHZWky2FpOtxWRrMdla
TLYWk63FZGsx2VpMthaTrcVkazHZWky2FpOtxWRrMdlaTLYWk63FZGsx2VpMthaTrcVkazHZWky2
FpOtxWRrMdlaTLYWk63FZGsx2VpMthaTrcVkazHZWky2FpOtxWRrMdlaTLYWk63FZGsx2VpMthaT
rcVkazHZWky2FpOtxWRrMdlaTLYWk63FZGsx2VpMthaTrcVkazHZWky2FpOtxWRrMdlaTLYWk63F
ZGsx2VpMthaTrcVkazHZWky2FpOtxWRrMdlaTLYWk63FZGsx2VpMthaTrcVkazHZWky2FpOtxWRr
MdlaTLYWk63FZGsx2VpMthaTrcVkazHZWky2FpOtxWRrMdlaTLYWk63FZGsx2VpMthaTrcVkazHZ
Wky2FpOtxWRrMdlaTLYWk63FZGsx2VpMthaTrcVkazHZWky2FpOtxWRrMdlaTLYWk63FZGsx2VpM
thaTrcVkazHZWky2FpOtxWRrMdlaTLYWk63FZGsx2VpMthaTrcVkazHZWky2FpOtxWRrMdlaTLYW
k63FZGsx2VpMthaTrcVkazHZWky2FpOtxWRrMdlaTLYWk63FZGsx2VpMthaTrcVkazHZWky2FpOt
xWRrMdnzZ86X/iC49S1Xe2+xpL1Ts+XZrZ3d2tmtnd3a2a2d3drZrZ3d2tmtnd3a2a2d3drZrZ3d
2tmtnd3a2a2d3drZrZ3d2tmtnd3a2a2d3drZrZ3d2u3v1u77+OoPHoV7efPli5ev7+QM4PdH6V59
9eXP3spPn9j7rsyPeG7vdsyd39/3j33k8OOd9vyIr6z3Ptj5syeJf/IB/cBX54fd+Ed+Nn+WBv2m
n9loHbGnI/Z0xJ6O2NMRezpiT0fs6Yg9HbGnI/Z0xJ6O2NMRezpiT0fs6Yg9HbGnI/Z0xJ6O2NMR
ezpiT0fs6Yg9HbGnI/Z0xJ6O2NMRezpiT0fs6Yg9HbGnI/Z0xJ6O2NMRezpiT0fs6Yg9HbGnI/Z0
xJ6O2NMRezpiT0fs6Yg9HbGnI/Z0xJ6O2NMRezpiT0fs6Yg9HbGnI/Z0xJ6O2NMRezpiT0fs6Yg9
HbGXI/ZyxF6O2MsRezliL0fs5Yi9HLGXI/ZyxF6O2MsRezliL0fs5Yi9HLGXI/ZyxF6O2MsRezli
L0fs5Yi9HLGXI/ZyxF6O2MsRezliL0fs5Yi9HLGXI/byMtAyo5YZtcyoZUYtM2qZUcuMWmbUMqOW
GbXMqGVGLTNqmVHLjFpm1DKjlhm1zKhlRi0zaplRy4xaZtQyo5YZtcyoZUYtM2qZUcuMWmbUMqOW
GbXMqGVGLTNqmVHLjFpm1DKjlhm1zKhlRi0zaplRy4xaZtQyo5YZtcyoZUYtM2qZUcuMWmbUMqOW
GbXMqGVGLTNqmVHLjFpm1DKjlhkVZlSYUWFGhRkVZlSYUWFGhRkVZlSYUWFGhRkVZlSYUWFGhRkV
ZlSYUWFGhRkVZlSYUWFGhRkVZlSYUWFGhRkVZlSYUWFGhRkVZlSYUVp1tladrVVna9XZWnW2Vp2t
VWdr1dladbZWna1VZ2vV2Vp1tladrVVna9XZWnW2Vp2tVWdr1dladbZWna1VZ2vV2Vp1tladrVVn
a9XZWnW2Vp2tVWdr1dladbZWna1VZ2vV2Vp1tladrVVna9XZWnW2Vp2tVWdr1dladbZWna1VZ2vV
2Vp1tladrVVna9XZWnW2Vp2tVWdr1dladbZWna1VZ2vV2Vp1tladrVVna9XZWnW2Vp2tVWdr1dla
dbZWna1VZ2vV2Vp1tladrVVna9XZWnW2Vp2tVWdr1dladbZWna1VZ2vV2Vp1tladrVVna9XZWnW2
Vp2tVWdr1dladbZWna1VZ2vV2Vp1tladrVVna9XZWnW2Vp2tVWdr1dladbZWna1VZ2vV2Vp1tlad
rVVna9XZWnW2Vp2tVWdr1dladbZWna1VZ2vV2Vp1tladrVVna9XZWnW2Vp2tVWdr1dladbZWna1V
Z2vV2Vp1tladrVVna9XZWnW2Vp2tVWdr1dladbZWna1VZ2vV2Vp1tladrVVna9XZWnW2Vp2tVWdr
1dladbZWna1VZ2vV2Vp1tladrVVna9XZWnW2Vp2tVWdr1dladbZWna1VZ2vV2Vp1tladrVVna9XZ
WnW2Vp2tVWdr1dladbZWna1VZ2vV2Vp1tladrVVna9XZWnW2Vp2tVWdr1dladbZWna1VZ2vV2Vp1
tladrVVna9XZWnW2Vp2tVWfXHapQ33Wt+B6nYR/Upv4DF5u3ffffXkl7lpBnCXmWkGcJeZaQZwl5
lpBnCXmWkGcJeZaQZwl5lpBnCXmWkGcJeZaQZwl5lpBnCXmWkGcJeZaQZwl5lpBnCXn7S8h7V9L+
LPq2jM4yOsvoLKOzjM4yOsvoLKOzjM4yOsvoLKOzjM4yOsvoLKOzjM4yOsvoLKOzjM4yOsvoLKOz
jM4yOsvoLKOzjM4yOsvoLKOzjM4yOsvoLKOzjM4yOsvoLKOzjM4yOsvoLKOzjM4yOsvoLKOzjM4y
OsvoLKOzjM4yOsvoLKOzjM4yOsvoLKOzjM4yOsvoLKOzjM4yOrfRuY3O/U103hf8+3TA0wFPBzwd
8P474H1Piw/Gyv5eDomP+AW8v/2j338x7s83r149+cPNb77869s+Kv/jr6//+OL5/3z68tmXr9/v
0fmhW/+oD8XfoEtev3757Hdfvfnvvnm53c0r40dv7i0cIt/OA69eff2vN7/6y+vPnrV6/vVP45sf
H33x7PnNo9+9vHnyp0cvvnz6xfNXj1qsO7wz71fL297Tt366v3z54vWL13/98uYBvKEvtbztPf39
izf//Gd//vKLr948Sl8+ennzh6++ePLyN//24ve/v9W7Mx/Pf/i5G/yxN9/7PdcPhPtzG1Sl69v1
7r7kTJt484L6/KtvUFl3Q0P6wXt4yzf08b+3/X7P2w906evDf+c3d3kOPtaL8sG8296vy/4qzxu8
4yPwS8jSB/qIffXyiwfwWP17FW87cXzfQp4+eXXzUebd727ozibdRzd/+fLm6ZsH6CGNvNei3va+
/zQz84tnv795+tenX7y5tSdP//Q1b/HJ7970lTu94x9S0Z3OwR8v1x76xH19qX1CsXgbgfjvDfAu
Kae3WssnMI59yFv+lxuwD/e18UOB+7P/+4/YBD6xT47fDSwf0FPu4ob+7hm+rVv4YbL314Pzn5+9
unn1qb+Wfhxe/rd38aM3wzsFw99mk371pqQf7mlPv3jx6iN9YHyLIt522jz8+B8LsLd4kD/WnPWh
pbzXh7Z4QB8g4+4/QT3wzzXxlr3q+7j7w83r//sXN1/LB17917/+ty+evHr1T0/+fPPocbu7HvWW
N/4+u6+feAu8eP7q9cuvnr5+8fLR8zfd/tXXN/Ti5bM/PHt+7934p0s7PfrDRsaffJF9HNPH+5dw
ntn3jbyfflM9gEz+gALfso32++zh/W57+Fcvv3j0uxd/+OrVQ+rel6Lu6tp9PMRr9/F+1+5/hZ3t
FmKjf2AHu+Mb/+VO17eyNTjB/X799GFF9tuX9k4rwa+PMDx7/TDWk9da3n1d/mMdZNznWDJufyz5
5j+/fvLyzU3e9zBCKZ9IDJ8PqT/9cr2bqH+/NnC/H5jHg/sS24csgj7+bHmXz/mdroreoaAP/0bx
Q/2GzEcZcoiQu+k9t1/KtyH594enXj/947NvDk/97tkf1jf/9ujzm2/OTT199fVPdzhnvW81Dyq1
3/8pfs97f8fv7bcq65+ffd2WbumP/ft9fPmr/IrInbwK3u0d9t2T+YBr/JvXyMd/P73rZZB8QNcd
892Oyb3V6+Xpmxf3qwcSD39fzMd/fbxdWL94/uebbw6l/uRH4Lf8lD5v/YP03V5VmG/5afsdP87/
7WP6a/5aQ/7ijmy93XP+Sz2udaf3/hfz3cvbv5o07/8rD/Pdj5T91Kvl47Ep3qaK27tGvu7zGvm6
22vHn/x78NZ63bt5sO4qb94eAPLOuX2HX1W4h8D/wLv/LvPh7ff+9UsbKG7tLv8iJ+Z3/arC2zWL
j3zk/S0Lub3YjfuM3Tjf9v0Ysfv2cIM7Tt7bIHN8Qqvs+PUFUNzNWFUP6AJs3Qmr4atXNy8fEKjh
78q53S8QfbRT2z9bwu0lad5nkuav/YJp/YoumP7KCBJ/14vO16Hu/OtQt/WYP6jLYh90ex/nW1/v
9rj/gi4Nfjih54Pm1rz/PUHe1iG4us9BpO7yIFg9xINgdQ6CfYx3aN3/O7R+vVdX612vrv7+5vXT
P3725Mtnn32TZp89ffL0j19f9nn95V0C1H/uVm/v096+zya7z3XTu36v7/ucRvan9/Hu1eV+7jnH
z74Zb38+2A9oLNi323Da49/85e4xvD9547/my0v7U6Om0gLv5O35ie9nvn1V/6r2M297l3/+D7X7
bEftXdrRp/4qbb++V+lb3uV3buIP8fLBfr/LB7/IkH3XD5k//0q6TyBU6w/uY9odtqn+q/uyw9ve
ZQetP9w8v3n55ItH314M//Za+Ee8JvKjN//uX2n41ydffHWHX4z7gRu6vc9T98lkaeOX0xne+uV1
63mejx9OjP97LR/0lD7ILniLT++nnnB3jGL5qGPdw54E//3d9Em8pG5hjvgoyKPvIvSOX8F/9/WI
T/9w07s+iD/+VZHbfqa+786/e/Lq2dPPnjx9evPl60d/vHnyNVrhyfO/vlNC/uPzv/5vb/7n7zNa
/tTN/9LmnJ+6r7cxmc77nEznB0+mD3yM+bBn7/u/830dX71+9sVbfNHt50t4QI3yp+7nHT7G79BZ
7v65/tTn1XknZzHy8QO8impRd93AfvQ98uz5q6/L+PcX26vffPnX//Lv//G3//jNy/AO3+H/46+v
//ji+f98+vLZl6/vf6h9B/LCez2Qd97pf3kX2H2XvF/c3dpL/P1erw/zxfI+RT36fz15/oevnvzh
5gE+YN/Vdh65h//I/djfeY/Vwv/xzT/y6l1PvXzzkfWfX948/erlq2f/eocrgXe60++Cn/jJ+/Jr
+QT7Tpdzf34EuE+kT1u/1g+yv6Br8j/5przFDvn29/cfn//12xZ5By3roz3p73aJ9pOW997Ji+t2
Lye/66v6Ns9ZHgP47X/wXfd4cuAub/wd+tjtX3RqD+haU3u3L+q91xXjh3ft9h2e3F/ipZN2a5/K
7v5pv4tL5u/y9P/qLxq9w4P18y39Pglt7Z0IbeeJv+t3yS/8wtd5+D7Ww3c44u82V8e90wdavN9F
j9+9uaE/Pfrzszd/4smrR6++eSl/lG+b/8zNH9r27V0E/NEH+eN8Eny/m3/LCeQ+sXotDxf+rtta
3uflknzXnvp9Cd++zB/927PXf/yPDH6T6U/ffBJ9cyu/ff7i+aObP3/5+q//l6/fFr/95lPm01f/
+vHnjvcq8yO88T+41idfff7sxWdPnv3UNYXbvKV/++OT1zf/+rM70Q++tX999vnNm/v1r88+zt36
87PPn93Jq/KT+0dv7230/UvzIwX4Lb/EP5Wqv3urfFoP89dvuU+hw3778P7+i2cP/O32XZ2fzoP6
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
YUYNM2qYUcOMGmbUMKOGGTXMqGFGDTNqmFHDjBpm1DCjhhk1zKhhRg0zaphRw4waZtQwo4YZNcyo
YUYNM2qYUcOMGmbUMKOGGTXMqGFGDTNqmFHDjBpm1DCjhhk1zKhhRg0zaphRw4waZtQwo4YZNcyo
YUYNM2qYUcOMGmbUMKOGGTXMqGFGDTNqmFHDjBpm1DCjhhk1zKhhRg0zaphRw4waZtQwo4YZNcyo
YUYNM2qYUcOMGmbUMKOGGTXMqGFGDTNqmFHDjBpm1DCjhhk1zKhhRg0zaphRw4waZtQwo4YZNcyo
YUYNM2qYUdOMmmbUNKOmGTXNqGlGTTNqmlHTjJpm1DSjphk1zahpRk0zappR04yaZtQ0o6YZNc2o
aUZNM2qaUdOMmmbUNKOmGTXNqGlGTTNqfpNRd+a0+rvFV/vt97fsQ2IYTsNwGobTMJyG4TQMp2E4
DcNpGE7DcBqG0zCchuE0DKdhOA3DaRhOw3AahtMwnIbhNAynYTgNw2kYTsNwGobTMJyG4TQMp2E4
DcNpGE7DcBqG0zCchuE0DKdhOA3DaRhOw3AahtMwnIbhNAynYTgNw2kYTsNwGobTMJyG4TQMp2E4
DcNpGE7DcBqG0zCchuE0DKdhOA3DaRhOw3AahsswXIbhMgyXYbgMw2UYLsNwGYbLMFyG4TIMl2G4
DMNlGC7DcBmGyzBchuEyDJdhuAzDZRguw3AZhsswXIbhMgyXYbgMw2UYLsNw+YFtmVHLjFpm1DKj
lhm1zKhlRi0zaplRy4xaZtQyo5YZtcyoZUYtM2qZUcuMWmbUMqOWGbXMqGVGLTNqmVHLjFpm1DKj
lhm1zKhlRi0zaplRy4xaZtQyo5YZtcyoZUYtM2qZUcuMWmbUMqOWGbXMqGVGLTNqmVHLjFpm1DKj
lhm1zKhlRi0zaplRy4xaZtQyo5YZtcyoZUYtM2qZUcuMWmbUMqPCjAozKsyoMKPCjAozKsyoMKPC
jAozKsyoMKPCjAozKsyoMKPCjAozKsyoMKPCjAozKsyoMKPCjAozKsyoMKPCjAozKsyoMKPCjAoz
KsyoMKPCjAozKsyoMKPCjAozKsyoMKPCjAozKsyoMKPCjAozKsyoMKPCjAozKsyoMKPCjAozKsyo
MKPCjAozKsyoMKPCjAozKsyoMKPCjAozKsyoMKPCjAozKsyoMKPCjAozKsyoMKPCjAozKsyoMKPC
jAozKsyoMKPCjAozKsyoMKPCjAozKsyoMKPCjAozKsyoMKPSjEozKs2oNKPSjEozKs2oNKPSjEoz
Ks2oNKPSjEozKs2oNKPSjEozKs2oNKPSjEozKs2oNKPSjEozKs2oNKPSjEozKs2oNKPSjEozKs2o
NKPSjEozKs2oNKPSjEozKs2oNKPSjEozKs2oNKPSjEozKs2oNKPSjEozKs2oNKPSjEozKs2oNKPS
jEozKs2oNKPSjEozKs2oNKPSjEozKs2oNKPSjEozKs2oNKPSjEozKs2oNKPSjEozKs2oNKPSjEoz
Ks2oNKPSjEozKs2oNKPSjEozKs2oNKPSjEozKs2oNKPKjCozqsyoMqPKjCozqsyoMqPKjCozqsyo
MqPKjCozqsyoMqPKjCozqsyoMqPKjCozqsyoMqPKjCozqsyoMqPKjCozqsyouv3F1/dnPM+pr3Pq
65z6Oqe+zqmvc+rrnPo6p77Oqa9z6uuc+jqnvs6pr3Pq65z6Oqe+zqmvc+rrnPo6p77Oqa9z6uuc
+jqnvs6pr3Pq6+Of+nogtNtzVOwcFTtHxc5RsXNU7BwVO0fFzlGxc1TsHBU7R8XOUbFzVOwcFTtH
xc5RsXNU7BwVO0fFzlGxc1TsHBU7R8XOUbFzVOwcFbuHo2IPQGj4vY3sy5c3X948//zRi+eP/vuL
p1/9+WM57X7sdt/Wa/euyr/5gEyM893u6c+eASwnnXLSKSedctIpJ51y0iknnXLSKSedctIpJ51y
0iknnXLSKSedctIpJ51y0iknnXLSKSedctIpJ51y0iknnXLSKSedctIpJ51y0iknnXLSKSedctIp
J51y0iknnXLSKSedctIpJ51y0iknnXLSKSedctIpJ51y0iknnXLSKSedctIpJ51y0iknnXLSKSed
ctIpJ51y0iknnXLSKSedctIpJ51y0iknnXLS2U4620lnO+lsJ53tpLOddLaTznbS2U4620lnO+ls
J53tpLOddLaTznbS2U4620lnO+lsJ53tpLOddLaTznbS2U4620lnO+lsJ53tpLOddLaTzvbT+Daj
thm1zahtRm0zaptR24zaZtQ2o7YZtc2obUZtM2qbUduM2mbUNqO2GbXNqG1GbTNqm1HbjNpm1Daj
thm1zahtRm0zaptR24zaZtQ2o7YZtc2obUZtM2qbUduM2mbUNqO2GbXNqG1GbTNqm1HbjNpm1Daj
thm1zahtRm0zaptR24zaZtQ2o7YZtc2obUZtM2qbUduM2mbUNqO2GbXNqE1Grcdk1JtfNH/R/cXw
F9NfLH8R/iL9RfkLK21W2qy0WWmz0malzUqblTYrbVbarLRbabfSbqXdSruVdivtVtqttFtpt9Jh
pcNKh5UOKx1WOqx0WOmw0mGlw0qnlU4rnVY6rXRa6bTSaaXTSqeVTitdVrqsdFnpstJlpctKl5Uu
K11Wuqw0rDSsNKw0rDSsNKw0rDSsNKw0rDStNK00rTStNK00rTStNK00rTSttKy0rLSstKy0rLSs
tKy0rLSstKx0W+m20m2l20q3lW4r3Va6rXRbqRklS2XJUlmyVJYslSVLZclSWbJUliyVJUtlyVJZ
slSWLJUlS2XJUlmyVJYslSVLZclSWbJUliyVJUtlyVJZslSWLJUlS2XJUlmyVJYslSVLZclSWbJU
liyVJUtlyVJZslSWLJUlS2XJUlmyVJYslSVLZclSWbJUliyVJUtlyVJZslSWLJUlS2XJUlmyVJYs
lSVLZclSWbJUliyVJUtlyVJZslSWLJUlS2XJUlmyVJYslSVLZclSWbJUliyVJUtlyVJZslSWLJUl
S2XJUlmyVJYslSVLZclSWbJUliyVJUtlyVJZslSWLJUlS2XJUlmyVJYslSVLZclSWbJUliyVJUtl
yVJZslSWLJUlS2XJUlmyVJYslSVLZclSWbJUliyVJUtlyVJZslSWLJUlS2XJUlmyVJYslSVLZclS
WbJUliyVJUtlyVJZslSWLJUlS2XJUlmyVJYslSVLZclSWbJUliyVJUtlyVJZslRW/xkA5jdbrN+/
eP761Wd//vKLr149al8+ennzh6++ePLyN//24ve/v9Wl3Ptq5r7eTL588vwPN68++9+//j+PXt18
cfP09T+9+PzmZzaH8/H8h5+7iz+28n2/zeFP7gzf9wF4efPqxVcvn765/1//8o9PXj6/efXqN//y
6n3+sZc3X754+fon/+GP89ReFs8/9fS+xTL2u7/103f5x57qn199f8Ct393tvt3B2iU+aYlPWuKT
lvikJT5piU9a4pOW+KQlPmmJT1rik5b4pCU+aYlPWuKTlvikJT5piU9a4pOW+KQlPmmJT1rik5b4
pCU+aYlPWuKTlvikJT5piU9a4pOW+KQlPmmJT1rik5b4pCU+aYlPWuKTlvikJT5piU9a4pOW+KQl
PmmJT1rik5b4pCU+aYlPWuKTlvikJT5piU9a4pOW+KQlPmmJT1rik5b4pCU+aYlPWuKTlvikJT5p
iU9a4pOW+KQlPmmJT1rik5b4pCU+aYlPWuKTlvikJT5piU9a4pOW+KQlPmmJT1rik5b4pCU+aYlP
WuKTlvikJT5piU9a4pOW+KQlPmmJT1rik5b4pCU+aYlPWuKTlvikJT5piU9a4pOW+KQlPmmJT1ri
k5b4pCU+aYlPWuKTlvikJT5piU9a4pOW+KQlPmmJT1rik5b4pCU+aYlPWuKTlvikJT5piU9a4pOW
+KQlPmmJT1rik5b4pCU+aYlPWuKTlvikJT5piU9a4pOW+KQlPmmJT1rik5b4pCU+aYlPWuKTlvik
JT5piU9a4pOW+KQlPmmJT1rik5b4pCU+aYlPWuKTlvikJT5piU9a4pOW+KQlPmmJT1rik5b4pCU+
aYlPWuKTlvikJT5piU9a4pOW+KQlPmmJT1rik5b4pCU+aYlPWuKTlvikJT5piU9a4pOW+KQlPmmJ
T1rik5b4pCU+aYlPWuKTlvikJT5piU9a4pPWNKMEFC0BRUtA0RJQtAQULQFFS0DRElC0BBQtAUVL
QNESULQEFC0BRUtA0RJQtAQULQFFS0DRElC0BBQtAUVLQNESULQEFC0BRUtA0RJQtAQULQFFS0DR
ElC0BBQtAUVLQNESULQEFC0BRUtA0RJQtAQULQFFS0DRElC0BBQtAUVLQNESULQEFC0BRUtA0RJQ
tAQULQFFS0DRElC0BBQtAUVLQNESULQEFC0BRUtA0RJQtAQULQFFS0DRElC0BBQtAUVLQNESULQE
FC0BRUtA0RJQtAQULQFFS0DRElC0BBQtAUVLQNESULQEFC0BRUtA0RJQtAQULQFFS0DRElC0BBQt
AUVLQNESULQEFC0BRUtA0RJQtAQULQFFS0DRElC0BBQtAUVLQNESULQEFC0BRUtA0RJQtAQULQFF
S0DRElC0BBQtAUVLQNESULQEFC0BRUtA0RJQtAQULQFFS0DRElC0BBQtAUVLQNESULQEFC0BRUtA
0RJQtAQULQFFS0DRElC0BBQtAUVLQNESULQEFC0BRUtA0RJQtAQULQFFS0DRElC0BBQtAUVLQNES
ULQEFC0BRUtA0RJQtAQULQFFS0DRElC0BBQtAUVLQNESULQEFC0BRUtA0RJQtAQULQFFS0DRElC0
BBQtAUVLQNESULQEFC0BRUtA0RJQtAQULQFFS0DRElC0BBQtAUVLQNESULQEFC0BRUtA0RJQtAQU
LQFFS0DRint1MJ7zl+f85Tl/ec5fnvOX5/zlOX95zl+e85fn/OU5f3nOX57zl+f85Tl/ec5fnvOX
5/zlOX95zl+e85fn/OU5f3nOX57zl+f85a2fv/xUHIznqNg5KnaOip2jYueo2Dkqdo6KnaNi56jY
OSp2joqdo2LnqNg5KnaOip2jYueo2Dkqdo6KnaNi56jYOSp2joqdo2LnqNg5Knb7R8UegIPx3YGb
74v2/PmdXJjTYU6HOR3mdJjTYU6HOR3mdJjTYU6HOR3mdJjTYU6HOR3mdJjTYU6HOR3mdJjTYU6H
OR3mdJjTYU6HOR3mdJjTYU6HOR3mdJjTYU6HOR3mdJjTYU6HOR3mdJjTYU6HOR3mdJjTYU6HOR3m
dJjTYU6HOR3mdJjTYU6HOR3mdJjTYU6HOR3mdJjTYU6HOR3mdJjTYU6HOR3mdJrTaU6nOZ3mdJrT
aU6nOZ3mdJrTaU6nOZ3mdJrTaU6nOZ3mdJrTaU6nOZ3mdJrTaU6nOZ3mdJrTaU6nOZ3mdJrTaU6n
OZ1+lkwzKs2oNKPSjEozKs2oNKPSjEozKs2oNKPSjEozKs2oNKPSjEozKs2oNKPSjEozKs2oNKPS
jEozKs2oNKPSjEozKs2oNKPSjEozKs2oNKPSjEozKs2oNKPSjEozKs2oNKPSjEozKs2oNKPSjEoz
Ks2oNKPSjEozKs2oNKPSjEozKs2oNKPSjEozKs2oNKPSjEozKs2oNKPSjCozqsyoMqPKjCozqsyo
MqPKjCozqsyoMqPKjCozqsyoMqPKjCozqsyoMqPKjCozqsyoMqPKjCozqsyoMqPKjCozqsyoMqPK
jJIEsiSBLEkgSxLIkgSyJIEsSSBLEsiSBLIkgSxJIEsSyJIEsiSBLEkgSxLIkgSyJIEsSSBLEsiS
BLIkgSxJIEsSyJIEsiSBLEkgSxLIkgSyJIEsSSBLEsiSBLIkgSxJIEsSyJIEsiSBLEkgSxLIkgSy
JIEsSSBLEsiSBLIkgSxJIEsSyJIEsiSBLEkgSxLIkgSyJIEsSSBLEsiSBLIkgSxJIEsSyJIEsiSB
LEkgSxLIkgSyJIEsSSBLEsiSBLIkgSxJIEsSyJIEsiSBLEkgSxLIkgSyJIEsSSBLEsiSBLIkgSxJ
IEsSyJIEsiSBLEkgSxLIkgSyJIEsSSBLEsiSBLIkgSxJIEsSyJIEsiSBLEkgSxLIkgSyJIEsSSBL
EsiSBLIkgSxJIEsSyJIEsiSBLEkgSxLIkgSyJIEsSSBLEsiSBLIkgSxJIEsSyJIEsiSBLEkgSxLI
kgSyJIEsSSBLEsiSBLIkgSxJIEsSyJIEsiSBLEkgSxLIkgSyJIEsSSBLEsiSBLIkgSxJIEsSyJIE
siSBLEkgSxLIkgSyJIEsSSBLEsiSBLIkgSxJIEsSyJIEsiSBLEkgSxLIkgSyJIEsSSBLEsiSBLIk
gSxJIEsSSEgCCUkgIQkkJIGEJJCQBBKSQEISSEgCCUkgIQkkJIGEJJCQBBKSQEISSEgCCUkgIQkk
JIGEJJCQBBKSQEISSEgCCUkgIQkkJIGEJJCQBBKSQOLx2xgE39c0953/7ds12AOw0n0IjfJ99G8/
Jb57u1N9l4fvbm/q/e16733bb4f5DPE0IZ4mxNOEeJoQTxPiaUI8TYinCfE0IZ4mxNOEeJoQTxPi
aUI8TYinCfE0IZ4mxNOEeJoQTxPiaUI8TYinCfE0IZ4mxNOEeJoQTxPiaUI8TYinCfE0IZ4mxNOE
eJoQTxPiaUI8TYinCfE0IZ4mxNOEeJoQTxPiaUI8TYinCfE0IZ4mxNOEeJoQTxPiaUI8TYinCfE0
IZ4mxNOEeJoQTxPiaUI8TYinCfE0IZ4mxNOEeJoQTxPiaUI8TYinCfE0IZ4mxNOEeJoQTxPiaUI8
TYinCfE0IZ4mxNOEeJoQTxPiaUI8TYinCfE0IZ4mxNOEeJoQTxPiaUI8TYinCfE0IZ4mxNOEeJoQ
TxPiaUI8TYinCfE0IZ4mxNOEeJoQTxPiaUI8TYinCfE0IZ4mxNOEeJoQTxPiaUI8TYinCfE0IZ4m
xNOEeJoQTxPiaUI8TYinCfE0IZ4mxNOEeJoQTxPiaUI8TYinCfE0IZ4mxNOEeJoQTxPiaUI8TYin
CfE0IZ4mxNOEeJoQTxPiaUI8TYinCfE0IZ4mxNOEeJoQTxPiaUI8TYinCfE0IZ4mxNOEeJoQTxPi
aUI8TYinCfE0IZ4mxNOEeJoQTxPiaUI8TYinCfE0IZ4mxNOEeJoQTxPiaUI8TYinCfE0IZ4mxNOE
eJoQTxPiaUI8TYinCfE0IZ4mxNOEeJoQTxPiaUI8TXQzSgBMCIAJATAhACYEwIQAmBAAEwJgQgBM
CIAJATAhACYEwIQAmBAAEwJgQgBMCIAJATAhACYEwIQAmBAAEwJgQgBMCIAJATAhACYEwIQAmBAA
EwJgQgBMCIAJATAhACYEwIQAmBAAEwJgQgBMCIAJATAhACYEwIQAmBAAEwJgQgBMCIAJATAhACYE
wIQAmBAAEwJgQgBMCIAJATAhACYEwIQAmBAAEwJgQgBMCIAJATAhACYEwIQAmBAAEwJgQgBMCIAJ
ATAhACYEwIQAmBAAEwJgQgBMCIAJATAhACYEwIQAmBAAEwJgQgBMCIAJATAhACYEwIQAmBAAEwJg
QgBMCIAJATAhACYEwIQAmBAAEwJgQgBMCIAJATAhACYEwIQAmBAAEwJgQgBMCIAJATAhACYEwIQA
mBAAEwJgQgBMCIAJATAhACYEwIQAmBAAEwJgQgBMCIAJATAhACYEwIQAmBAAEwJgQgBMCIAJATAh
ACYEwIQAmBAAEwJgQgBMCIAJATAhACYEwIQAmBAAEwJgQgBMCIAJATAhACYEwIQAmBAAEwJgQgBM
CIAJATAhACYEwIQAmBAAEwJgQgBMCIAJATAhACYEwIQAmBAAEwJgQgBMCIAJATAhACYEwIQAmBAA
EwJgQgBMCIAJATAhACYEwIQAmBAAEwJgQgBMCIAJATAhACYEwIQAmBAAE/MeHHfnhOA5IXhOCJ4T
gueE4DkheE4InhOC54TgOSF4TgieE4LnhOA5IXhOCJ4TgueE4DkheE4InhOC54TgOSF4TgieE4Ln
hOA5IXiHJwQfuOPuHBU7R8XOUbFzVOwcFTtHxc5RsXNU7BwVO0fFzlGxc1TsHBU7R8XOUbFzVOwc
FTtHxc5RsXNU7BwVO0fFzlGxc1TsHBU7R8Xu8KjYA3DcfY1lfP7mL7z67OXNn1/8682jr56/evri
yye/++JbLOPdnGb7uVv9h//8Ty+e37w/EvK7U3Ghgz10sIcO9tDBHjrYQwd76GAPHeyhgz10sIcO
9tDBHjrYQwd76GAPHeyhgz10sIcO9tDBHjrYQwd76GAPHeyhgz10sIcO9tDBHjrYQwd76GAPHeyh
gz10sIcO9tDBHjrYQwd76GAPHeyhgz10sIcO9tDBHjrYQwd76GAPHeyhgz10sIcO9tDBHjrYQwd7
6GAPHeyhgz10sIcO9tDBHjrYQwd76GAPHeyhgz10sIcO9tDBHjrYQwd76GAPHeyhgz10sIcO9tDB
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
Uxp/SuNPafwpjT+l8ac0/pTGn9L4Uxp/SuNPafwpjT+l8ac0/pTGn9L4Uxp/SuNPafwpjT+l8ac0
/pTGn9L4Uxp/SuNPafwpjT+l8ac0/pTGn9L4Uxp/SuNPafwpjT+l8ac0/pTGn9L4Uxp/SuNPafwp
jT+l8ac0/pTGn9L4Uxp/SuNPafwpjT+l8ac0/uy3f7rsx/dlL2++fPHy9U9uzd7j9j7kANyPrfV+
bOP4c9TJt3PL/fSDc7e3fTaSZyN5NpJnI3k2kmcjeTaSZyN5NpJnI3k2kmcjeTaSZyN5NpJnI3k2
kmcjeTaSZyN5NpJnI3k2kmcjeTaSZyN5DxvJB3Dk72fhmKm5PDWXp+by1FyemstTc3lqLk/N5am5
PDWXp+by1FyemstTc3lqLk/N5am5PDWXp+by1FyemstTc3lqLk/N5am5PDWXp+by1FyemstTc3lq
Lk/N5am5PDWXp+by1FyemstTc3lqLk/N5am5PDWXp+by1FyemstTc3lqLk/N5am5PDWXp+by1Fye
mstTc3lqLk/N5am5PDWXp+by1FyemstTc3lqLk/N5am5PDWXp+by1FyemstTc3lqLk/N5am5PDWX
p+by1FyemstTc3lqLk/N5am5PDWXp+by1FyemstTc3lqLk/N5am5PDWXp+by1FyemstTc3lqLk/N
5am5PDWXp+by1FyemstTc3lqLk/N5am5PDWXp+by1FyemstTc3lqLk/N5am5PDWXp+by1FyemstT
c3lqLk/N5am5PDWXp+by1FyemstTc3lqLk/N5am5PDWXp+by1FyemstTc3lqLk/N5am5PDWXp+by
1FyemstTc3lqLk/N5am5PDWXp+by1FyemstTc3lqLk/N5am5PDWXp+by1FyemstTc3lqLk/N5am5
PDWXp+by1FyemstTc3lqLk/N5am5PDWXp+by1FyemstTc3lqLk/N5am5PDWXp+by1FyemstTc3lq
Lk/N5am5PDWXp+by1FyemstTc3lqLk/N5am5PDWXp+by1FyemstTc3lqLs9pRikZSCUDqWQglQyk
koFUMpBKBlLJQCoZSCUDqWQglQykkoFUMpBKBlLJQCoZSCUDqWQglQykkoFUMpBKBlLJQCoZSCUD
qWQglQykkoFUMpBKBlLJQCoZSCUDqWQglQykkoFUMpBKBlLJQCoZSCUDqWQglQykkoFUMpBKBlLJ
QCoZSCUDqWQglQykkoFUMpBKBlLJQCoZSCUDqWQglQykkoFUMpBKBlLJQCoZSCUDqWQglQykkoFU
MpBKBlLJQCoZSCUDqWQglQykkoFUMpBKBlLJQCoZSCUDqWQglQykkoFUMpBKBlLJQCoZSCUDqWQg
lQykkoFUMpBKBlLJQCoZSCUDqWQglQykkoFUMpBKBlLJQCoZSCUDqWQglQykkoFUMpBKBlLJQCoZ
SCUDqWQglQykkoFUMpBKBlLJQCoZSCUDqWQglQykkoFUMpBKBlLJQCoZSCUDqWQglQykkoFUMpBK
BlLJQCoZSCUDqWQglQykkoFUMpBKBlLJQCoZSCUDqWQglQykkoFUMpBKBlLJQCoZSCUDqWQglQyk
koFUMpBKBlLJQCoZSCUDqWQglQykkoFUMpBKBlLJQCoZSCUDqWQglQykkoFUMpBKBlLJQCoZSCUD
qWQglQykkoFUMpBKBlLJQCoZSCUDqWQglQykkoFUMpBKBlLJQCoZSCUDqWQglQykkoFUMpBKBjLu
0wx3ll9n+XWWX2f5dZZfZ/l1ll9n+XWWX2f5dZZfZ/l1ll9n+XWWX2f5dZZfZ/l1ll9n+XWWX2f5
dZZfZ/l1ll9n+XX7y6+HcEzs1auv//XmV395/dmzVs+//ml88+OjL549v3n0u5c3T/706MWXT794
/upRfzwf3fzly5unr28+/+YG7mh992FF/cN//qcXz2/e/4jcdzDJ1Huees9T73nqPU+956n3PPWe
p97z1Huees9T73nqPU+956n3PPWep97z1Huees9T73nqPU+956n3PPWep97z1Huees9T73nqPU+9
56n3PPWep97z1Huees9T73nqPU+956n3PPWep97z1Huees9T73nqPU+956n3PPWep97z1Huees9T
73nqPU+956n3PPWep97z1Huees9T73nqPU+956n3PPWep97z1Huees9T73nqPU+956n3PPWep97z
1Huees9T73nqPU+956n3PPWep97z1Huees9T73nqPU+956n3PPWep97z1Huees9T73nqPU+956n3
PPWep97z1Huees9T73nqPU+956n3PPWep97z1Huees9T73nqPU+956n3PPWep97z1Huees9T73nq
PU+956n3PPWep97z1Huees9T73nqPU+956n3PPWep97z1Huees9T73nqPU+956n3PPWep97z1Hue
es9T73nqPU+956n3PPWep97z1Huees9T73nqPU+956n3PPWep97z1Huees9T73nqPU+956n3PPWe
p97z1Huees9T73nqPU+956n3PPWep97z1Huees9T73nqPU+956n3PPWep97z1Huees9T73nqPU+9
56n3PPWep97z1Huees9T73nqPU+956n3PPWep97z1Huees9T73nqPU+956n3PPWeZ5lRQvlTKH8K
5U+h/CmUP4Xyp1D+FMqfQvlTKH8K5U+h/CmUP4Xyp1D+FMqfQvlTKH8K5U+h/CmUP4Xyp1D+FMqf
QvlTKH8K5U+h/CmUP4Xyp1D+FMqfQvlTKH8K5U+h/CmUP4Xyp1D+FMqfQvlTKH8K5U+h/CmUP4Xy
p1D+FMqfQvlTKH8K5U+h/CmUP4Xyp1D+FMqfQvlTKH8K5U+h/CmUP4Xyp1D+FMqfQvlTKH8K5U+h
/CmUP4Xyp1D+FMqfQvlTKH8K5U+h/CmUP4Xyp1D+FMqfQvlTKH8K5U+h/CmUP4Xyp1D+FMqfQvlT
KH8K5U+h/CmUP4Xyp1D+FMqfQvlTKH8K5U+h/CmUP4Xyp1D+FMqfQvlTKH8K5U+h/CmUP4Xyp1D+
FMqfQvlTKH8K5U+h/CmUP4Xyp1D+FMqfQvlTKH8K5U+h/CmUP4Xyp1D+FMqfQvlTKH8K5U+h/CmU
P4Xyp1D+FMqfQvlTKH8K5U+h/CmUP4Xyp1D+FMqfQvlTKH8K5U+h/CmUP4Xyp1D+FMqfQvlTKH8K
5U+h/CmUP4Xyp1D+FMqfQvlTKH8K5U+h/CmUP4Xyp1D+FMpfQvlLKH8J5S+h/CWUv4Tyl1D+Espf
QvlLKH8J5S+h/CWUv4Tyl1D+EspfQvlLKH8J5S+h/CWUv4Tyl1D+EspfQvlLKH8J5S+h/CWUv4Ty
l1D+enwPR+TO8ussv87y6yy/zvLrLL/O8ussv87y6yy/zvLrLL/O8ussv87y6yy/zvLrLL/O8uss
v87y6yy/zvLrLL/O8ussv+5w+fUAjsj9/sXz168++/OXX3z16lH78tHLmzf/6JOXv/m3F7///a2u
5ubj+Q8/d4M/9nB84Im5W9DJlcLwUhheCsNLYXgpDC+F4aUwvBSGl8LwUhheCsNLYXgpDC+F4aUw
vBSGl8LwUhheCsNLYXgpDC+F4aUwvBSGl8LwUhheCsNLYXgpDC+F4aUwvBSGl8LwUhheCsNLYXgp
DC+F4aUwvBSGl8LwUhheCsNLYXgpDC+F4aUwvBSGl8LwUhheCsNLYXgpDC+F4aUwvBSGl8LwUhhe
CsNLYXgpDC+F4aUwvBSGl8LwUhheCsNLYXgpDC+F4aUwvBSGl8LwUhheCsNLYXgpDC+F4aUwvBSG
l8LwUhheCsNLYXgpDC+F4aUwvBSGl8LwUhheCsNLYXgpDC+F4aUwvBSGl8LwUhheCsNLYXgpDC+F
4aUwvBSGl8LwUhheCsNLYXgpDC+F4aUwvBSGl8LwUhheCsNLYXgpDC+F4aUwvBSGl8LwUhheCsNL
YXgpDC+F4aUwvBSGl8LwUhheCsNLYXgpDC+F4aUwvBSGl8LwUhheCsNLYXgpDC+F4aUwvBSGl8Lw
UhheCsNLYXgpDC+F4aUwvBSGl8LwUhheCsNLYXgpDC+F4aUwvBSGl8LwUhheCsNLYXgpDC+F4aUw
vBSGl8LwUhheCsNLYXgpDC+F4aUwvBSGl8LwUhheCsNLYXgpDC+F4aUwvBSGl8LwUhheCsNLYXgp
DC+F4aUwvBSGl8LwUhheCsNLYXgpDC+F4aUwvLoZpZmgNBOUZoLSTFCaCUozQWkmKM0EpZmgNBOU
ZoLSTFCaCUozQWkmKM0EpZmgNBOUZoLSTFCaCUozQWkmKM0EpZmgNBOUZoLSTFCaCUozQWkmKM0E
pZmgNBOUZoLSTFCaCUozQWkmKM0EpZmgNBOUZoLSTFCaCUozQWkmKM0EpZmgNBOUZoLSTFCaCUoz
QWkmKM0EpZmgNBOUZoLSTFCaCUozQWkmKM0EpZmgNBOUZoLSTFCaCUozQWkmKM0EpZmgNBOUZoLS
TFCaCUozQWkmKM0EpZmgNBOUZoLSTFCaCUozQWkmKM0EpZmgNBOUZoLSTFCaCUozQWkmKM0EpZmg
NBOUZoLSTFCaCUozQWkmKM0EpZmgNBOUZoLSTFCaCUozQWkmKM0EpZmgNBOUZoLSTFCaCUozQWkm
KM0EpZmgNBOUZoLSTFCaCUozQWkmKM0EpZmgNBOUZoLSTFCaCUozQWkmKM0EpZmgNBOUZoLSTFCa
CUozQWkmKM0EpZmgNBOUZoLSTFCaCUozQWkmKM0EpZmgNBOUZoLSTFCaCUozQWkmKM0EpZmgNBOU
ZoLSTFCaCUozQWkmKM0EpZmgNBOUZoLSTFCaCUozQWkmKM0EpZmgNBOUZoLSTFCaCUozQWkmKM0E
pZmgNBOUZoLSTFCaCUozQWkmKM0EpZmgNBOUZoLSTFCaCUozQWkmqHn7Z+W+WXx9/uLPn7188vwP
N68++9+//j+PXt28/hn05dtr6M7S7CzNztLsLM3O0uwszc7S7CzNztLsLM3O0uwszc7S7CzNztLs
LM3O0uwszc7S7CzNztLsLM3O0uwszc7S7CzNbn9pdr9n7D4EYvmjy7m3VcB9/Qeev6n81WcvX7x4
/U9v/tMdau1+5MZuTVdXythLGXspYy9l7KWMvZSxlzL2UsZeythLGXspYy9l7KWMvZSxlzL2UsZe
ythLGXspYy9l7KWMvZSxlzL2UsZeythLGXspYy9l7KWMvZSxlzL2UsZeythLGXspYy9l7KWMvZSx
lzL2UsZeythLGXspYy9l7KWMvZSxlzL2UsZeythLGXspYy9l7KWMvZSxlzL2UsZeythLGXspYy9l
7KWMvZSxlzL2UsZeythLGXspYy9l7KWMvZSxlzL2UsZeythLGXspYy9l7KWMvZSxlzL2UsZeythL
GXspYy9l7KWMvZSxlzL2UsZeythLGXspYy9l7KWMvZSxlzL2UsZeythLGXspYy9l7KWMvZSxlzL2
UsZeythLGXspYy9l7KWMvZSxlzL2UsZeythLGXspYy9l7KWMvZSxlzL2UsZeythLGXspYy9l7KWM
vZSxlzL2UsZeythLGXspYy9l7KWMvZSxlzL2UsZeythLGXspYy9l7KWMvZSxlzL2UsZeythLGXsp
Yy9l7KWMvZSxlzL2UsZeythLGXspYy9l7KWMvZSxlzL2UsZeythLGXspYy9l7KWMvZSxlzL2UsZe
ythLGXspYy9l7KWMvZSxlzL2UsZeythLGXspYy9l7KWMvZSxlzL2UsZeythLGXspYy9l7KWMvZSx
lzL2UsZeythLGXspYy9l7KWMvZSxlzL2CjNK80FpPijNB6X5oDQflOaD0nxQmg9K80FpPijNB6X5
oDQflOaD0nxQmg9K80FpPijNB6X5oDQflOaD0nxQmg9K80FpPijNB6X5oDQflOaD0nxQmg9K80Fp
PijNB6X5oDQflOaD0nxQmg9K80FpPijNB6X5oDQflOaD0nxQmg9K80FpPijNB6X5oDQflOaD0nxQ
mg9K80FpPijNB6X5oDQflOaD0nxQmg9K80FpPijNB6X5oDQflOaD0nxQmg9K80FpPijNB6X5oDQf
lOaD0nxQmg9K80FpPijNB6X5oDQflOaD0nxQmg9K80FpPijNB6X5oDQflOaD0nxQmg9K80FpPijN
B6X5oDQflOaD0nxQmg9K80FpPijNB6X5oDQflOaD0nxQmg9K80FpPijNB6X5oDQflOaD0nxQmg9K
80FpPijNB6X5oDQflOaD0nxQmg9K80FpPijNB6X5oDQflOaD0nxQmg9K80FpPijNB6X5oDQflOaD
0nxQmg9K80FpPijNB6X5oDQflOaD0nxQmg9K80FpPijNB6X5oDQflOaD0nxQmg9K80FpPijNB6X5
oDQflOaD0nxQmg9K80FpPijNB6X5oDQflOaD0nxQmg9K80FpPijNB6X5oDQflOaD0nxQmg9K80Fp
PijNB6X5oDQflOaD0nxQmg9K80FpPijNB6X5oDQflOaD0nxQdZ+6urP8Osuvs/w6y6+z/DrLr7P8
Osuvs/w6y6+z/DrLr7P8Osuvs/w6y6+z/DrLr7P8Osuvs/w6y6+z/DrLr7P8Osuv219+PQBd3cub
Vy++evn05tVnX//yj09evrmRV7/5l1e3j8b8wVt6efPli5evf/L2vlvq/VipP/Yo/sgButs+Xvjx
HsaffiS+eyhv8/H4oAf/B89a3oY8sBzoyoGuHOjKga4c6MqBrhzoyoGuHOjKga4c6MqBrhzoyoGu
HOjKga4c6MqBrhzoyoGuHOjKga4c6MqBrhzoyoGuHOjKga4c6MqBrhzoyoGuHOjKga4c6MqBrhzo
yoGuHOjKga4c6MqBrhzoyoGuHOjKga4c6MqBrhzoyoGuHOjKga4c6MqBrhzoyoGuHOjKga4c6MqB
rhzoyoGuHOjKga4c6MqBrhzoyoFuO9BtB7rtQLcd6LYD3Xag2w5024FuO9BtB7rtQLcd6LYD3Xag
2w5024FuO9BtB7rtQLcd6LYD3Xag2w5024FuO9BtB7rtQLcd6LYD3Xag2w5024sO24zaZtQ2o7YZ
tc2obUZtM2qbUduM2mbUNqO2GbXNqG1GbTNqm1HbjNpm1Dajthm1zahtRm0zaptR24zaZtQ2o7YZ
tc2obUZtM2qbUduM2mbUNqO2GbXNqG1GbTNqm1HbjNpm1Dajthm1zahtRm0zaptR24zaZtQ2o7YZ
tc2obUZtM2qbUduM2mbUNqO2GbXNqG1GbTNqm1HbjNpm1DajNhn1JqIe+4vmL7q/GP5i+ovlL8Jf
pL8of2GlzUqblTYrbVbarLRZabPSZqXNSpuVdivtVtqttFtpt9Jupd1Ku5V2K+1WOqx0WOmw0mGl
w0qHlQ4rHVY6rHRY6bTSaaXTSqeVTiudVjqtdFrptNJppctKl5UuK11Wuqx0Wemy0mWly0qXlYaV
hpWGlYaVhpWGlYaVhpWGlYaVppWmlaaVppWmlaaVppWmlaaVppWWlZaVlpWWlZaVlpWWlZaVlpWW
lW4r3Va6rXRb6bbSbaXbSreVbis1o/RJbH0SW5/E1iex9UlsfRJbn8TWJ7H1SWx9ElufxNYnsfVJ
bH0SW5/E1iex9UlsfRJbn8TWJ7H1SWx9ElufxNYnsfVJbH0SW5/E1iex9UlsfRJbn8TWJ7H1SWx9
ElufxNYnsfVJbH0SW5/E1iex9UlsfRJbn8TWJ7H1SWx9ElufxNYnsfVJbH0SW5/E1iex9UlsfRJb
n8TWJ7H1SWx9ElufxNYnsfVJbH0SW5/E1iex9UlsfRJbn8TWJ7H1SWx9ElufxNYnsfVJbH0SW5/E
1iex9UlsfRJbn8TWJ7H1SWx9ElufxNYnsfVJbH0SW5/E1iex9UlsfRJbn8TWJ7H1SWx9ElufxNYn
sfVJbH0SW5/E1iex9UlsfRJbn8TWJ7H1SWx9ElufxNYnsfVJbH0SW5/E1iex9UlsfRJbn8TWJ7H1
SWx9ElufxNYnsfVJbH0SW5/E1iex9UlsfRJbn8TWJ7H1SWx9ElufxO53JA983w3ph8gKv122PcBN
5bsvDy/k1O/u1x3dxllSniXlWVKeJeVZUp4l5VlSniXlWVKeJeVZUp4l5VlSniXlWVKeJeVZUp4l
5VlSniXlWVKeJeVZUp4l5VlSniXlPSwpH8AJ0x+4qddP//jsm5v63bM/rG/+7dHnN9/cyrc3cIdW
xfet5ta0i2+eGF8xzgrdWaE7K3Rnhe6s0J0VurNCd1bozgrdWaE7K3Rnhe6s0J0VurNCd1bozgrd
WaE7K3Rnhe6s0J0VurNCd1bozgrdWaE7K3Rnhe6s0J0VurNCd1bozgrdWaE7K3Rnhe6s0J0VurNC
d1bozgrdWaE7K3Rnhe6s0J0VurNCd1bozgrdWaE7K3Rnhe6s0J0VurNCd1bozgrdWaE7K3Rnhe6s
0J0VurNCd1bozgrdWaE7KwxnheGsMJwVhrPCcFYYzgrDWWE4KwxnheGsMJwVhrPCcFYYzgrDWWE4
KwxnheGsMJwVhrPCcFYYzgrDWWE4KwxnheGsMJwVhrPCcFYYzgrDWWH4eXaYUcOMGmbUMKOGGTXM
qGFGDTNqmFHDjBpm1DCjhhk1zKhhRg0zaphRw4waZtQwo4YZNcyoYUYNM2qYUcOMGmbUMKOGGTXM
qGFGDTNqmFHDjBpm1DCjhhk1zKhhRg0zaphRw4waZtQwo4YZNcyoYUYNM2qYUcOMGmbUMKOGGTXM
qGFGDTNqmFHDjBpm1DCjhhk1zKhhRg0zaphRw4waZtQwo6YZNc2oaUZNM2qaUdOMmmbUNKOmGTXN
qGlGTTNqmlHTjJpm1DSjphk1zahpRk0zappR04yaZtQ0o6YZNc2oaUZNM2qaUdOMmmbUNKM0eGwN
HluDx9bgsTV4bA0eW4PH1uCxNXhsDR5bg8fW4LE1eGwNHluDx9bgsTV4bA0eW4PH1uCxNXhsDR5b
g8fW4LE1eGwNHluDx9bgsTV4bA0eW4PH1uCxNXhsDR5bg8fW4LE1eGwNHluDx9bgsTV4bA0eW4PH
1uCxNXhsDR5bg8fW4LE1eGwNHluDx9bgsTV4bA0eW4PH1uCxNXhsDR5bg8fW4LE1eGwNHluDx9bg
sTV4bA0eW4PH1uCxNXhsDR5bg8fW4LE1eGwNHluDx9bgsTV4bA0eW4PH1uCxNXhsDR5bg8fW4LE1
eGwNHluDx9bgsTV4bA0eW4PH1uCxNXhsDR5bg8fW4LE1eGwNHluDx9bgsTV4bA0eW4PH1uCxNXhs
DR5bg8fW4LE1eGwNHluDx9bgsTV4bA0eW4PH1uCxNXhsDR5bg8fW4LE1eGwNHluDx9bgsTV4bA0e
W4PH1uCxNXhsDR5bg8fW4LE1eGwNHluDx9bgsTV4bA0eW4PH1uCxNXhsDR5bg8fW4LE1eGwNHluD
x9bgsTV4bA0eW4PH1uCxNXhsDR5bg8fW4LE1eGwNHluDx9bgsTV4bA0eW4PH1uCxNXhsDR5bg8fW
4LE1eGwNHluDx9bgsTV4bA0eW4PH1uCxNXhsDR5bg8fW4LE1eGwNHluDx9bgsTV4bA0eW4PH1uCx
NXhsDR5bg8fW4LE1eGwNHluDx9bgsTV4bA0eW4PHjvvULp7l11l+neXXWX6d5ddZfp3l11l+neXX
WX6d5ddZfp3l11l+neXXWX6d5ddZfp3l11l+neXXWX6d5ddZfp3l11l+3f7y65PULn5sQuitUz9/
gsX5vofyPkBd+LMM0jup6e3QoW9epr5/nJzCySmcnMLJKZycwskpnJzCySmcnMLJKZycwskpnJzC
ySmcnMLJKZycwskpnJzCySmcnMLJKZycwskpnJzCySmcnMLJKZycwskpnJzCySmcnMLJKZycwskp
nJzCySmcnMLJKZycwskpnJzCySmcnMLJKZycwskpnJzCySmcnMLJKZycwskpnJzCySmcnMLJKZyc
wskpnJzCySmcnMLJKZycwskpnJzSySmdnNLJKZ2c0skpnZzSySmdnNLJKZ2c0skpnZzSySmdnNLJ
KZ2c0skpnZzSySmdnNLJKZ2c0skpnZzSySmdnNLJKZ2c0skpnZzSySn9dJ9mVJpRaUalGZVmVJpR
aUalGZVmVJpRaUalGZVmVJpRaUalGZVmVJpRaUalGZVmVJpRaUalGZVmVJpRaUalGZVmVJpRaUal
GZVmVJpRaUalGZVmVJpRaUalGZVmVJpRaUalGZVmVJpRaUalGZVmVJpRaUalGZVmVJpRaUalGZVm
VJpRaUalGZVmVJpRaUalGZVmVJpRaUalGVVmVJlRZUaVGVVmVJlRZUaVGVVmVJlRZUaVGVVmVJlR
ZUaVGVVmVJlRZUaVGVVmVJlRZUaVGVVmVJlRZUaVGVVmVJlRZUaVGaWCYatg2CoYtgqGrYJhq2DY
Khi2CoatgmGrYNgqGLYKhq2CYatg2CoYtgqGrYJhq2DYKhi2CoatgmGrYNgqGLYKhq2CYatg2CoY
tgqGrYJhq2DYKhi2CoatgmGrYNgqGLYKhq2CYatg2CoYtgqGrYJhq2DYKhi2CoatgmGrYNgqGLYK
hq2CYatg2CoYtgqGrYJhq2DYKhi2CoatgmGrYNgqGLYKhq2CYatg2CoYtgqGrYJhq2DYKhi2Coat
gmGrYNgqGLYKhq2CYatg2CoYtgqGrYJhq2DYKhi2CoatgmGrYNgqGLYKhq2CYatg2CoYtgqGrYJh
q2DYKhi2CoatgmGrYNgqGLYKhq2CYatg2CoYtgqGrYJhq2DYKhi2CoatgmGrYNgqGLYKhq2CYatg
2CoYtgqGrYJhq2DYKhi2CoatgmGrYNgqGLYKhq2CYatg2CoYtgqGrYJhq2DYKhi2CoatgmGrYNgq
GLYKhq2CYatg2CoYtgqGrYJhq2DYKhi2CoatgmGrYNgqGLYKhq2CYatg2CoYtgqGrYJhq2DYKhi2
CoatgmGrYNgqGLYKhq2CYatg2CoYtgqGrYJhq2DYKhi2CoatgmGrYNgqGDYKhvUYBcPXv2j+ovuL
4S+mv1j+IvxF+ovyF1barLRZabPSZqXNSpuVNittVtqstFlpt9Jupd1Ku5V2K+1W2q20W2m30m6l
w0rv4YjgWX6d5ddZfp3l11l+neXXWX6d5ddZfp3l11l+neXXWX6d5ddZfp3l11l+neXXWX6d5ddZ
fp3l11l+neXXWX6d5dcdLr8ewBHBn4Npfl2qj+HwMRw+hsPHcPgYDh/D4WM4fAynj+H02Z5WOq10
Wum00mml00qnlU4rXVa6rHRZ6bLSZaXLSpeVLitdVrqsNKw0rDSsNKw0rDSsNKw0rDSsNKw0rTSt
NK00rTStNK00rTStNK00rbSstKy0rLSstKy0rLSstKy0rLSsdFvpttJtpdtKt5VuK91Wuq10W6np
2UzPZno207OZns30bKZnMz2b6dlMz2Z6NtOzmZ7N9GymZzM9m+nZTM9mejbTs5mezfRspmczPZvp
2UzPZno207OZns30bKZnMz0xo3/9Cys1o5oZ1cyoZkY1M6qZUc2MamZUM6OaGdXMqGZGNTOqmVHN
jGpmVDOjmhnVzKhmRjUzqplRzYxqZlQzo5oZ1cyoZkY1M6qZUc2MamZUM6OaGdXMqGZGNTOqmVHN
jGpmVDOjmhnVzKhmRjUzqplRzYxqZlQzo5oZ1cyoZkY1M6qZUc2MamZUM6OaGdXMqGZGNTOqmVHN
jGpmVDOjmhnVzKhuRnUzqptR3YzqZlQ3o7oZ1c2obkZ1M6qbUd2M6mZUN6O6GdXNqG5GdTOqm1Hd
jOpmVDejuhnVzahuRnUzqptR3YzqZlQ3o7oZ1c2obkZ1M6qbUd2M6mZUN6O6GdXNqG5GdTOqm1Hd
jOpmVDejuhnVzahuRnUzqptR3YzqZlQ3o7oZ1c2obkZ1M6qbUd2M6mZUN6O6GdXNqG5GdTOqm1Hd
jOpmVDejuhnVzahuRnUzqptR3YzqZlQ3o7oZ1c2obkZ1M6qbUd2M6mZUN6O6GdXNqG5GdTOqm1Hd
jOpmVDejuhnVzahuRnUzqptR3YwaZtQwo4YZNcyoYUYNM2qYUcOMGmbUMKOGGTXMqGFGDTNqmFHD
jBpm1DCjhhk1zKhhRg0zaphRw4waZtQwo4YZNcyoYUYNM2qYUcOMGmbUMKOGGTXMqGFGDTNqmFHD
jBpm1DCjhhk1zKhhRg0zaphRw4waZtQwo4YZNcyoYUYNM2qYUcOMGmbUMKOGGTXMqGFGDTNqmFHD
jBpm1DCjhhk1zKhhRg0zaphRw4waZtQwo4YZNcyoYUYNM2qYUcOMGmbUMKOGGTXMqGFGDTNqmFHD
jBpm1DCjhhk1zKhhRg0zaphRw4waZtQwo4YZNcyoaUZNM2qaUdOMmmbUNKOmGTXNqGlGTTNqmlHT
jJpm1DSjphk1zahpRk0zappR04yaZtQ0o6YZNc2oaUZNM2qaUdOMmmbUNKOmGTXv0SR3ll9n+XWW
X2f5dZZfZ/l1ll9n+XWWX2f5dZZfZ/l1ll9n+XWWX2f5dZZfZ/l1ll9n+XWWX2f5dZZfZ/l1ll9n
+XUHy68HcEzsrTxl//w3grJbXdi9FdPx60fLp9EAnwb4NMCnAT4N8GmATwN8GuDTAJ8G+DTApwE+
DfBpgE8DfBrg0wCfBvg0wKcBPg3waYBPA3wa4NMAnwb4NMCnAT4N8GmATwN8GuDTAJ8G+DTApwE+
DfBpgE8DfBrg0wCfBvg0wKcBPg3waYBPA3wa4NMAnwb4NMCnAT4N8GmATwN8GuDTAJ8G+DTApwE+
DfBpgE8DfBrg0wCfBvg0wJcBvgzwZYAvA3wZ4MsAXwb4MsCXAb4M8GWALwN8GeDLAF8G+DLAlwG+
DPBlgC8DfBngywBfBvgywJcBvgzwZYAvA3wZ4MsAXwb48kPmMqOWGbXMqGVGLTNqmVHLjFpm1DKj
lhm1zKhlRi0zaplRy4xaZtQyo5YZtcyoZUYtM2qZUcuMWmbUMqOWGbXMqGVGLTNqmVHLjFpm1DKj
lhm1zKhlRi0zaplRy4xaZtQyo5YZtcyoZUYtM2qZUcuMWmbUMqOWGbXMqGVGLTNqmVHLjFpm1DKj
lhm1zKhlRi0zaplRy4xaZtQyo5YZtcyoZUaFGRVmVJhRYUaFGRVmVJhRYUaFGRVmVJhRYUaFGRVm
VJhRYUaFGRVmVJhRYUaFGRVmVJhRYUaFGRVmVJhRYUaFGRVmVJhRYUaFGRVmVJhRYUaFGRVmVJhR
YUaFGRVmVJhRYUaFGRVmVJhRYUaFGRVmVJhRYUaFGRVmVJhRYUaFGRVmVJhRYUaFGRVmVJhRYUaF
GRVmVJhRYUaFGRVmVJhRYUaFGRVmVJhRYUaFGRVmVJhRYUaFGRVmVJhRYUaFGRVmVJhRYUaFGRVm
VJhRYUaFGRVmVJhRYUaFGRVmVJhRYUalGZVmVJpRaUalGZVmVJpRaUalGZVmVJpRaUalGZVmVJpR
aUalGZVmVJpRaUalGZVmVJpRaUalGZVmVJpRaUalGZVmVJpRaUalGZVmVJpRaUalGZVmVJpRaUal
GZVmVJpRaUalGZVmVJpRaUalGZVmVJpRaUalGZVmVJpRaUalGZVmVJpRaUalGZVmVJpRaUalGZVm
VJpRaUalGZVmVJpRaUalGZVmVJpRaUalGZVmVJpRaUalGZVmVJpRaUalGZVmVJpRaUalGZVmVJpR
aUalGZVmVJpRaUalGZVmVJpRaUaVGVVmVJlRZUaVGVVmVJlRZUaVGVVmVJlRZUaVGVVmVJlRZUaV
GVVmVJlRZUaVGVVmVJlRZUaVGVVmVJlRZUaVGVVmVJlRdY9Cs7P8Osuvs/w6y6+z/DrLr7P8Osuv
s/w6y6+z/DrLr7P8Osuvs/w6y6+z/DrLr7P8Osuvs/w6y6+z/DrLr7P8OsuvO1h+fRJCszI9y/Qs
07NMzzI9y/Qs07NMzzI9y/Qs07NMzzI9y/Qs07NMzzI9y/Qs07NMzzI9y/Qs07NMzzI9y/Qs07NM
zzI9y/Qs07NMzzI9y/Qs07NMzzI9y/Qs07NMzzI9y/Qs07NMzzI9y/Qs07NMzzI9y/Qs07NMzzI9
y/Qs07NMzzI9y/Qs07NMzzI9y/Qs07NMzzI9y/Qs07NMz216btNzm57b9Nym5zY9t+m5Tc9tem7T
c5ue2/Tcpuc2PbfpuU3PbXpu03Obntv03KbnNj236blNz216btNzm57b9Nym5zY9t+m5/YS3zaht
Rm0zaptR24zaZtQ2o7YZtc2obUZtM2qbUduM2mbUNqO2GbXNqG1GbTNqm1HbjNpm1Dajthm1zaht
Rm0zaptR24zaZtQ2o7YZtc2obUZtM2qbUduM2mbUNqO2GbXNqG1GbTNqm1HbjNpm1Dajthm1zaht
Rm0zaptR24zaZtQ2o7YZtc2obUZtM2qbUduM2mbUNqO2GbXNqG1GbTNKZXVTWd1UVjeV1U1ldVNZ
3VRWN5XVTWV1U1ndVFY3ldVNZXVTWd1UVjeV1U1ldVNZ3VRWN5XVTWV1U1ndVFY3ldVNZXVTWd1U
VjeV1U1ldVNZ3VRWN5XV7fGw0mGlw0qHlQ4rHVY6rHRY6bDSaaXTSqeVTiudVjqtdFrptNJppdNK
l5UuK11Wuqx0Wemy0mWly0qXlS4rDSsNKw0rDSsNKw0rDSsNKw0rDStNK00rTStNK00rTStNK00r
TStNKy0rLSstKy0rLSstKy0rLSstKy0r3Va6rXRb6bbSbaXbSreVbivdVmpGycZvsvGbbPwmG7/J
xm+y8Zts/CYbv8nGb7Lxm2z8Jhu/ycZvsvGbbPwmG7/Jxm+y8Zts/CYbv8nGb7Lxm2z8Jhu/ycZv
svGbbPwmG7/Jxm+y8Zts/CYbv8nGb7Lxm2z8Jhu/ycZvsvGbbPwmG7/Jxm+y8Zts/CYbv8nGb7Lx
m2z8Jhu/ycZvsvGbbPwmG7/Jxm+y8Zts/CYbv8nGb7Lxm2z8Jhu/ycZvsvGbbPwmG7/Jxm+y8Zts
/CYbv8nGb7Lxm2z8Jhu/ycZvsvGbbPwmG7/Jxm+y8Zts/CYbv8nGb7Lxm2z8Jhu/ycZvsvGbbPwm
G7/Jxm+y8Zts/CYbv8nGb7Lxm2z8Jhu/ycZvsvGbbPwmG7/Jxm+y8Zts/CYbv8nGb7Lxm2z8Jhu/
ycZvsvGbbPwmG7/Jxm+y8Zts/CYbv8nGb7Lxm2z8Jhu/ycZvsvGbbPwmG7/Jxm+y8Zts/CYbv8nG
b7Lxm2z81u9VaHaWX2f5dZZfZ/l1ll9n+XWWX2f5dZZfZ/l1ll9n+XWWX2f5dZZfZ/l1ll9n+XWW
X2f5dZZfZ/l1ll9n+XWWX2f5devLrwd8TOw7oGJTWd1UVjeV1U1ldVNZ3VRWN5XVTWV1U1ndVFY3
ldVNZXVTWd1UVjeV1U1ldVNZ3VRWN5XVTWV1U1ndVFY3ldVNZXVTWd1UVjeV1U1ldVNZ3VRWN5XV
TWV1U1ndVFY3ldVNZXVTWd1UVjeV1U1ldVNZ3VRWN5XVTWV1U1ndVFY3ldVNZXVTWd1UVjeV1U1l
dVNZ3VRWN5XVTWV1U1ndVFY3ldVNZXVTWd1UVjeV1U1ldVNZ3VRWN5XVTWV1U1ndVFY3ldVNZXVT
Wd1UVjeV1U1ldVNZ3VRWN5XVTWV1U1ndVFY3ldVNZXVTWd1UVjeV1U1ldVNZ3VRWN5XVTWV1U1nd
VFY3ldVNZXVTWd1UVjeV1U1ldVNZ3VRWN5XVTWV1U1ndVFY3ldVNZXVTWd1UVjeV1U1ldVNZ3VRW
N5XVTWV1U1ndVFY3ldVNZXVTWd1UVjeV1U1ldVNZ3VRWN5XVTWV1U1ndVFY3ldVNZXVTWd1UVjeV
1U1ldVNZ3VRWN5XVTWV1U1ndVFY3ldVNZXVTWd1UVjeV1U1ldVNZ3VRWN5XVTWV1U1ndVFY3ldVN
ZXVTWd1UVjeV1U1ldVNZ3VRWN5XVTWV1U1ndVFY3ldVNZXVTWd1UVjeV1U1ldVNZ3VRWN5XVTWV1
U1ndVFY3ldVNZXVTWd1UVjeV1U1ldVNZ3VRWN5XVTWV1U1ndVFY3ldVNZXVTWd1UVjeV1U1ldVNZ
3VRWN5XVbZpRgumbYPommL4Jpm+C6Ztg+iaYvgmmb4Lpm2D6Jpi+CaZvgumbYPommL4Jpm+C6Ztg
+iaYvgmmb4Lpm2D6Jpi+CaZvgumbYPommL4Jpm+C6Ztg+iaYvgmmb4Lpm2D6Jpi+CaZvgumbYPom
mL4Jpm+C6Ztg+iaYvgmmb4Lpm2D6Jpi+CaZvgumbYPommL4Jpm+C6Ztg+iaYvgmmb4Lpm2D6Jpi+
CaZvgumbYPommL4Jpm+C6Ztg+iaYvgmmb4Lpm2D6Jpi+CaZvgumbYPommL4Jpm+C6Ztg+iaYvgmm
b4Lpm2D6Jpi+CaZvgumbYPommL4Jpm+C6Ztg+iaYvgmmb4Lpm2D6Jpi+CaZvgumbYPommL4Jpm+C
6Ztg+iaYvgmmb4Lpm2D6Jpi+CaZvgumbYPommL4Jpm+C6Ztg+iaYvgmmb4Lpm2D6Jpi+CaZvgumb
YPommL4Jpm+C6Ztg+iaYvgmmb4Lpm2D6Jpi+CaZvgumbYPommL4Jpm+C6Ztg+iaYvgmmb4Lpm2D6
Jpi+CaZvgumbYPommL4Jpm+C6Ztg+iaYvgmmb4Lpm2D6Jpi+CaZvgumbYPommL4Jpm+C6Ztg+iaY
vgmmb4Lpm2D6Jpi+CaZvgumbYPommL4Jpm+C6Ztg+iaYvgmmb4Lpm2D6Jpi+CaZvgumbYPommL4J
pm+C6Ztg+iaYvgmmb4Lpm2D6Jpi+CaZvgumbYPommL4Jpm+C6Ztg+iaYvsV92sTO8ussv87y6yy/
zvLrLL/O8ussv87y6yy/zvLrLL/O8ussv87y6yy/zvLrLL/O8ussv87y6yy/zvLrLL/O8ussv25/
+fUp2MSavuimL7rpi276opu+6KYvuumLbvqim77opi+66Ytu+qKbvuimL7rpi276opu+6KYvuumL
bvqim77opi+66Ytu+qKbvuimL7rpi276opu+6KYvuumLbvqim77opi+66Ytu+qKbvuimL7rpi276
opu+6KYvuumLbvqim77opi+66Ytu+qKbvuimL7rpi276opu+6KYvuumLbvqim77opi+66Ytu+qKb
vuimL7rpi276opu+6KYvuumLbvqim77opi+66Ytu+qKbvuimL7rpi276opu+6KYvuumLbvqim77o
pi+66Ytu+qKbvuimL7rpi276opu+6KYvuumLbvqim77opi+66Ytu+qKbvuimL7rpi276opu+6KYv
uumLbvqim77opi+66Ytu+qKbvuimL7rpi276opu+6KYvuumLbvqim77opi+66Ytu+qKbvuimL7rp
i276opu+6KYvuumLbvqim77opi+66Ytu+qKbvuimL7rpi276opu+6KYvuumLbvqim77opi+66Ytu
+qKbvuimL7rpi276opu+6KYvuumLbvqim77opi+66Ytu+qKbvuimL7rpi276opu+6KYvuumLbvqi
m77opi+66Ytu+qKbvuimL7rpi276opu+6KYvuumLbvqim77opi+66Ytu+qKbvuimL7rpi276opu+
6KYvuumLbvqim77opi+66Ytu+qKbvuimL7rpi276opu+6KYvuumLbmVGCaZvgumbYPommL4Jpm+C
6Ztg+iaYvgmmb4Lpm2D6Jpi+CaZvgumbYPommL4Jpm+C6Ztg+iaYvgmmb4Lpm2D6Jpi+CaZvgumb
YPommL4Jpm+C6Ztg+iaYvgmmb4Lpm2D6Jpi+CaZvgumbYPommL4Jpm+C6Ztg+iaYvgmmb4Lpm2D6
Jpi+CaZvgumbYPommL4Jpm+C6Ztg+iaYvgmmb4Lpm2D6Jpi+CaZvgumbYPommL4Jpm+C6Ztg+iaY
vgmmb4Lpm2D6Jpi+CaZvgumbYPommL4Jpm+C6Ztg+iaYvgmmb4Lpm2D6Jpi+CaZvgumbYPommL4J
pm+C6Ztg+iaYvgmmb4Lpm2D6Jpi+CaZvgumbYPommL4Jpm+C6Ztg+iaYvgmmb4Lpm2D6Jpi+CaZv
gumbYPommL4Jpm+C6Ztg+iaYvgmmb4Lpm2D6Jpi+CaZvgumbYPommL4Jpm+C6Ztg+iaYvgmmb4Lp
m2D6Jpi+CaZvgumbYPommL4Jpm+C6Ztg+iaYvgmmb4Lpm2D6Jpi+CaZvgumbYPommL4Jpm+C6Ztg
+iaYvgmmb4Lpm2D6Jpi+CaZvgumbYPommL4Jpm+C6Ztg+iaYvgmmb4Lpm2D6Jpi+C6bvgum7YPou
mL4Lpu+C6btg+i6Yvgum74Lpu2D6Lpi+C6bvgum7YPoumL4Lpu+C6btg+i6Yvgum74Lpu2D6Lpi+
C6bvgum7YPoumL4Lpu+C6btg+v74Pm1iZ/l1ll9n+XWWX2f5dZZfZ/l1ll9n+XWWX2f5dZZfZ/l1
ll9n+XWWX2f5dZZfZ/l1ll9n+XWWX2f5dZZfZ/l1ll+3v/z6FGxiXV901xfd9UV3fdFdX3TXF931
RXd90V1fdNcX3fVFd33RXV901xfd9UV3fdFdX3TXF931RXd90V1fdNcX3fVFd33RXV901xfd9UV3
fdFdX3TXF931RXd90V1fdNcX3fVFd33RXV901xfd9UV3fdFdX3TXF931RXd90V1fdNcX3fVFd33R
XV901xfd9UV3fdFdX3TXF931RXd90V1fdNcX3fVFd33RXV901xfd9UV3fdFdX3TXF931RXd90V1f
dNcX3fVFd33RXV901xfd9UV3fdFdX3TXF931RXd90V1fdNcX3fVFd33RXV901xfd9UV3fdFdX3TX
F931RXd90V1fdNcX3fVFd33RXV901xfd9UV3fdFdX3TXF931RXd90V1fdNcX3fVFd33RXV901xfd
9UV3fdFdX3TXF931RXd90V1fdNcX3fVFd33RXV901xfd9UV3fdFdX3TXF931RXd90V1fdNcX3fVF
d33RXV901xfd9UV3fdFdX3TXF931RXd90V1fdNcX3fVFd33RXV901xfd9UV3fdFdX3TXF931RXd9
0V1fdNcX3fVFd33RXV901xfd9UV3fdFdX3TXF931RXd90V1fdNcX3fVFd33RXV901xfd9UV3fdFd
X3TXF931RXd90V1fdNcX3fVFd33RXV901xfd9UV3fdFdX3TXF931RXd90V1fdNcX3fVFd33RXV90
1xfd9UV3fdFdX3TXF931RfduRgmm74Lpu2D6Lpi+C6bvgum7YPoumL4Lpu+C6btg+i6Yvgum74Lp
u2D6Lpi+C6bvgum7YPoumL4Lpu+C6btg+i6Yvgum74Lpu2D6Lpi+C6bvgum7YPoumL4Lpu+C6btg
+i6Yvgum74Lpu2D6Lpi+C6bvgum7YPoumL4Lpu+C6btg+i6Yvgum74Lpu2D6Lpi+C6bvgum7YPou
mL4Lpu+C6btg+i6Yvgum74Lpu2D6Lpi+C6bvgum7YPoumL4Lpu+C6btg+i6Yvgum74Lpu2D6Lpi+
C6bvgum7YPoumL4Lpu+C6btg+i6Yvgum74Lpu2D6Lpi+C6bvgum7YPoumL4Lpu+C6btg+i6Yvgum
74Lpu2D6Lpi+C6bvgum7YPoumL4Lpu+C6btg+i6Yvgum74Lpu2D6Lpi+C6bvgum7YPoumL4Lpu+C
6btg+i6Yvgum74Lpu2D6Lpi+C6bvgum7YPoumL4Lpu+C6btg+i6Yvgum74Lpu2D6Lpi+C6bvgum7
YPoumL4Lpu+C6btg+i6Yvgum74Lpu2D6Lpi+C6bvgum7YPoumL4Lpu+C6btg+i6Yvgum74Lpu2D6
Lpi+C6bvgum7YPoumL4Lpu+C6btg+i6Yvgum74Lpu2D6Lpi+C6bvgum7YPoumL4Lpu+C6btg+i6Y
vgum74Lpu2D6Lpi+C6bvgum7YPoumL4Lpu+C6btg+i6Yvgum74Lpu2D6Lpi+C6bvgum7YPo+79Mm
dpZfZ/l1ll9n+XWWX2f5dZZfZ/l1ll9n+XWWX2f5dZZfZ/l1ll9n+XWWX2f5dZZfZ/l1ll9n+XWW
X2f5dZZfZ/l1+8uvT8Em1vVFd33RXV901xfd9UV3fdFdX3TXF931RXd90V1fdNcX3fVFd33RXV90
1xfd9UV3fdFdX3TXF931RXd90V1fdNcX3fVFd33RXV901xfd9UV3fdFdX3TXF931RXd90V1fdNcX
3fVFd33RXV901xfd9UV3fdFdX3TXF931RXd90V1fdNcX3fVFd33RXV901xfd9UV3fdFdX3TXF931
RXd90V1fdNcX3fVFd33RXV901xfd9UV3fdFdX3TXF931RXd90V1fdNcX3fVFd33RXV901xfd9UV3
fdFdX3TXF931RXd90V1fdNcX3fVFd33RXV901xfd9UV3fdFdX3TXF931RXd90V1fdNcX3fVFd33R
XV901xfd9UV3fdFdX3TXF931RXd90V1fdNcX3fVFd33RXV901xfd9UV3fdFdX3TXF931RXd90V1f
dNcX3fVFd33RXV901xfd9UV3fdFdX3TXF931RXd90V1fdNcX3fVFd33RXV901xfd9UV3fdFdX3TX
F931RXd90V1fdNcX3fVFd33RXV901xfd9UV3fdFdX3TXF931RXd90V1fdNcX3fVFd33RXV901xfd
9UV3fdFdX3TXF931RXd90V1fdNcX3fVFd33RXV901xfd9UV3fdFdX3TXF931RXd90V1fdNcX3fVF
d33RXV901xfd9UV3fdFdX3TXF931RXd90V1fdNcX3fVFd33RXV901xfd9UV3fdFdX3QPM0owfRdM
3wXTd8H0XTB9F0zfBdN3wfRdMH0XTN8F03fB9F0wfRdM3wXTd8H0XTB9F0zfBdN3wfRdMH0XTN8F
03fB9F0wfRdM3wXTd8H0XTB9F0zfBdN3wfRdMH0XTN8F03fB9F0wfRdM3wXTd8H0XTB9F0zfBdN3
wfRdMH0XTN8F03fB9F0wfRdM3wXTd8H0XTB9F0zfBdN3wfRdMH0XTN8F03fB9F0wfRdM3wXTd8H0
XTB9F0zfBdN3wfRdMH0XTN8F03fB9F0wfRdM3wXTd8H0XTB9F0zfBdN3wfRdMH0XTN8F03fB9F0w
fRdM3wXTd8H0XTB9F0zfBdN3wfRdMH0XTN8F03fB9F0wfRdM3wXTd8H0XTB9F0zfBdN3wfRdMH0X
TN8F03fB9F0wfRdM3wXTd8H0XTB9F0zfBdN3wfRdMH0XTN8F03fB9F0wfRdM3wXTd8H0XTB9F0zf
BdN3wfRdMH0XTN8F03fB9F0wfRdM3wXTd8H0XTB9F0zfBdN3wfRdMH0XTN8F03fB9F0wfRdM3wXT
d8H0XTB9F0zfBdN3wfRdMH0XTN8F03fB9F0wfRdM3wXTd8H0XTB9F0zfBdN3wfRdMH0XTN8F03fB
9F0wfRdM3wXTd8H0XTB9F0zfBdN3wfRdMH0XTN8F03fB9F0wfRdM3wXTd8H0XTB9F0zfBdN3wfRd
MH0XTN8F03fB9F0wfRdM3wXTd8H0XTB9F0zfBdP3uk+b2Fl+neXXWX6d5ddZfp3l11l+neXXWX6d
5ddZfp3l11l+neXXWX6d5ddZfp3l11l+neXXWX6d5ddZfp3l11l+neXX7S+/PgmbmL7ori+664vu
+qK7vuiuL7rri+76oru+6K4vuuuL7vqiu77ori+664vu+qK7vuiuL7rri+76oru+6K4vuuuL7vqi
u77ori+664vu+qK7vuiuL7rri+76oru+6K4vuuuL7vqiu77ori+664vu+qK7vuiuL7rri+76oru+
6K4vuuuL7vqiu77ori+664vu+qK7vuiuL7rri+76oru+6K4vuuuL7vqiu77ori+664vu+qK7vuiu
L7rri+76oru+6K4vuuuL7vqiu77ori+664vu+qK7vuiuL7rri+76oru+6K4vuuuL7vqiu77ori+6
64vu+qK7vuiuL7rri+76oru+6K4vuuuL7vqiu77ori+664vu+qK7vuiuL7rri+76oru+6K4vuuuL
7vqiu77ori+664vu+qK7vuiuL7rri+76oru+6K4vuuuL7vqiu77ori+664vu+qK7vuiuL7rri+76
oru+6K4vuuuL7vqiu77ori+664vu+qK7vuiuL7rri+76oru+6K4vuuuL7vqiu77ori+664vu+qK7
vuiuL7rri+76oru+6K4vuuuL7vqiu77ori+664vu+qK7vuiuL7rri+76oru+6K4vuuuL7vqih77o
oS966Ise+qKHvuihL3roix76ooe+6KEveuiLHvqih77ooS966Ise+qKHvuihL3roix76ooe+6KEv
euiLHvqih77ooS966Ise+qKHvuihL3roix6Ph5UOKx1WOqx0WOmw0mGlw0qHlU4rnVY6rXRa6bTS
aaXTSqeVTiudVrqsdFnpstJlpctKl5UuK11Wuqx0WWlYaVhpWGlYaVhpWGlYaVhpWGlYaVppWmla
aVppWmlaaVppWmlaaVppWWlZaVlpWWlZaVlpWWlZaVlpWem20m2l20q3lW4r3Va6rXRb6bZSM0ow
/RBMPwTTD8H0QzD9EEw/BNMPwfRDMP0QTD8E0w/B9EMw/RBMPwTTD8H0QzD9EEw/BNMPwfRDMP0Q
TD8E0w/B9EMw/RBMPwTTD8H0QzD9EEw/BNMPwfRDMP0QTD8E0w/B9EMw/RBMPwTTD8H0QzD9EEw/
BNMPwfRDMP0QTD8E0w/B9EMw/RBMPwTTD8H0QzD9EEw/BNMPwfRDMP0QTD8E0w/B9EMw/RBMPwTT
D8H0QzD9EEw/BNMPwfRDMP0QTD8E0w/B9EMw/RBMPwTTD8H0QzD9EEw/BNMPwfRDMP0QTD8E0w/B
9EMw/RBMPwTTD8H0QzD9EEw/BNMPwfRDMP0QTD8E0w/B9EMw/RBMPwTTD8H0QzD9EEw/BNMPwfRD
MP0QTD8E0w/B9EMw/RBMPwTTD8H0QzD9EEw/BNMPwfRDMP0QTD8E0w/B9EMw/RBMPwTTD8H0QzD9
EEw/BNMPwfRDMP0QTD8E049+rzaxs/w6y6+z/DrLr7P8Osuvs/w6y6+z/DrLr7P8Osuvs/w6y6+z
/DrLr7P8Osuvs/w6y6+z/DrLr7P8Osuvs/w6y69bX359CjaxoS966Ise+qKHvuihL3roix76ooe+
6KEveuiLHvqih77ooS966Ise+qKHvuihL3roix76ooe+6KEveuiLHvqih77ooS966Ise+qKHvuih
L3roix76ooe+6KEveuiLHvqih77ooS966Ise+qKHvuihL3roix76ooe+6KEveuiLHvqih77ooS96
6Ise+qKHvuihL3roix76ooe+6KEveuiLHvqih77ooS966Ise+qKHvuihL3roix76ooe+6KEveuiL
Hvqih77ooS966Ise+qKHvuihL3roix76ooe+6KEveuiLHvqih77ooS966Ise+qKHvuihL3roix76
ooe+6KEveuiLHvqih77ooS966Ise+qKHvuihL3roix76ooe+6KEveuiLHvqih77ooS966Ise+qKH
vuihL3roix76ooe+6KEveuiLHvqih77ooS966Ise+qKHvuihL3roix76ooe+6KEveuiLHvqih77o
oS966Ise+qKHvuihL3roix76ooe+6KEveuiLHvqih77ooS966Ise+qKHvuihL3roix76ooe+6KEv
euiLHvqih77ooS966Ise+qKHvuihL3roix76ooe+6KEveuiLHvqih77ooS966Ise+qKHvuihL3ro
ix76ooe+6KEveuiLHvqih77ooS966Ise+qKHvuihL3roix76ooe+6KEveuiLHvqih77ooS966Ise
+qKHvuihL3roix76osc0owTTD8H0QzD9EEw/BNMPwfRDMP0QTD8E0w/B9EMw/RBMPwTTD8H0QzD9
EEw/BNMPwfRDMP0QTD8E0w/B9EMw/RBMPwTTD8H0QzD9EEw/BNMPwfRDMP0QTD8E0w/B9EMw/RBM
PwTTD8H0QzD9EEw/BNMPwfRDMP0QTD8E0w/B9EMw/RBMPwTTD8H0QzD9EEw/BNMPwfRDMP0QTD8E
0w/B9EMw/RBMPwTTD8H0QzD9EEw/BNMPwfRDMP0QTD8E0w/B9EMw/RBMPwTTD8H0QzD9EEw/BNMP
wfRDMP0QTD8E0w/B9EMw/RBMPwTTD8H0QzD9EEw/BNMPwfRDMP0QTD8E0w/B9EMw/RBMPwTTD8H0
QzD9EEw/BNMPwfRDMP0QTD8E0w/B9EMw/RBMPwTTD8H0QzD9EEw/BNMPwfRDMP0QTD8E0w/B9EMw
/RBMPwTTD8H0QzD9EEw/BNMPwfRDMP0QTD8E0w/B9EMw/RBMPwTTD8H0QzD9EEw/BNMPwfRDMP0Q
TD8E0w/B9EMw/RBMPwTTD8H0QzD9EEw/BNMPwfRDMP0QTD8E0w/B9EMw/RBMPwTTD8H0QzD9EEw/
BNMPwfRDMP0QTD8E0w/B9EMw/RBMPwTTD8H0QzD9EEw/BNMPwfRDMP0QTD8E0w/B9EMw/RBMPwTT
D8H0QzD9EEw/BNMPwfRDMP0QTD8E0w/B9EMw/RBMPwTTD8H0QzD9EEw/BNMPwfRDMP2I+7SJneXX
WX6d5ddZfp3l11l+neXXWX6d5ddZfp3l11l+neXXWX6d5ddZfp3l11l+neXXWX6d5ddZfp3l11l+
neXXWX7d/vLrU7CJDX3RQ1/00Bc99EUPfdFDX/TQFz30RQ990UNf9NAXPfRFD33RQ1/00Bc99EUP
fdFDX/TQFz30RQ990UNf9NAXPfRFD33RQ1/00Bc99EUPfdFDX/TQFz30RQ990UNf9NAXPfRFD33R
Q1/00Bc99EUPfdFDX/TQFz30RQ990UNf9NAXPfRFD33RQ1/00Bc99EUPfdFDX/TQFz30RQ990UNf
9NAXPfRFD33RQ1/00Bc99EUPfdFDX/TQFz30RQ990UNf9NAXPfRFD33RQ1/00Bc99EUPfdFDX/TQ
Fz30RQ990UNf9NAXPfRFD33RQ1/00Bc99EUPfdFDX/TQFz30RQ990UNf9NAXPfRFD33RQ1/00Bc9
9EUPfdFDX/TQFz30RQ990UNf9NAXPfRFD33RQ1/00Bc99EUPfdFDX/TQFz30RQ990UNf9NAXPfRF
D33RQ1/00Bc99EUPfdFDX/TQFz30RQ990UNf9NAXPfRFD33RQ1/00Bc99EUPfdFDX/TQFz30RQ99
0UNf9NAXPfRFD33RQ1/00Bc99EUPfdFDX/TQFz30RQ990UNf9NAXPfRFD33RQ1/00Bc99EUPfdFD
X/TQFz30RQ990UNf9NAXPfRFD33RQ1/00Bc99EUPfdFDX/TQFz30RQ990UNf9NAXPfRFD33RQ1/0
0Bc99EUPfdFDX/TQFz30RQ990UNf9NAXPfRFD33RQ1/00Bc99EUPfdFDX/TQFz3KjBJMPwTTD8H0
QzD9EEw/BNMPwfRDMP0QTD8E0w/B9EMw/RBMPwTTD8H0QzD9EEw/BNMPwfRDMP0QTD8E0w/B9EMw
/RBMPwTTD8H0QzD9EEw/BNMPwfRDMP0QTD8E0w/B9EMw/RBMPwTTD8H0QzD9EEw/BNMPwfRDMP0Q
TD8E0w/B9EMw/RBMPwTTD8H0QzD9EEw/BNMPwfRDMP0QTD8E0w/B9EMw/RBMPwTTD8H0QzD9EEw/
BNMPwfRDMP0QTD8E0w/B9EMw/RBMPwTTD8H0QzD9EEw/BNMPwfRDMP0QTD8E0w/B9EMw/RBMPwTT
D8H0QzD9EEw/BNMPwfRDMP0QTD8E0w/B9EMw/RBMPwTTD8H0QzD9EEw/BNMPwfRDMP0QTD8E0w/B
9EMw/RBMPwTTD8H0QzD9EEw/BNMPwfRDMP0QTD8E0w/B9EMw/RBMPwTTD8H0QzD9EEw/BNMPwfRD
MP0QTD8E0w/B9EMw/RBMPwTTD8H0QzD9EEw/BNMPwfRDMP0QTD8E0w/B9EMw/RBMPwTTD8H0QzD9
EEw/BNMPwfRDMP0QTD8E0w/B9EMw/RBMPwTTD8H0QzD9EEw/BNMPwfRDMP0QTD8E0w/B9EMw/RRM
PwXTT8H0UzD9FEw/BdNPwfRTMP0UTD8F00/B9FMw/RRMPwXTT8H0UzD9FEw/BdNPwfRTMP0UTD8F
00/B9FMw/RRMPwXTT8H0UzD9FEw/BdNPwfTz8X3axM7y6yy/zvLrLL/O8ussv87y6yy/zvLrLL/O
8ussv87y6yy/zvLrLL/O8ussv87y6yy/zvLrLL/O8ussv87y6yy/bn/59SnYxKa+6KkveuqLnvqi
p77oqS966oue+qKnvuipL3rqi576oqe+6KkveuqLnvqip77oqS966oue+qKnvuipL3rqi576oqe+
6KkveuqLnvqip77oqS966oue+qKnvuipL3rqi576oqe+6KkveuqLnvqip77oqS966oue+qKnvuip
L3rqi576oqe+6KkveuqLnvqip77oqS966oue+qKnvuipL3rqi576oqe+6KkveuqLnvqip77oqS96
6oue+qKnvuipL3rqi576oqe+6KkveuqLnvqip77oqS966oue+qKnvuipL3rqi576oqe+6KkveuqL
nvqip77oqS966oue+qKnvuipL3rqi576oqe+6KkveuqLnvqip77oqS966oue+qKnvuipL3rqi576
oqe+6KkveuqLnvqip77oqS966oue+qKnvuipL3rqi576oqe+6KkveuqLnvqip77oqS966oue+qKn
vuipL3rqi576oqe+6KkveuqLnvqip77oqS966oue+qKnvuipL3rqi576oqe+6KkveuqLnvqip77o
qS966oue+qKnvuipL3rqi576oqe+6KkveuqLnvqip77oqS966oue+qKnvuipL3rqi576oqe+6Kkv
euqLnvqip77oqS966oue+qKnvuipL3rqi576oqe+6KkveuqLnvqip77oqS966oue+qKnvuipL3rq
i576oqe+6KkveuqLnvqip77oqS966oue3YwSTD8F00/B9FMw/RRMPwXTT8H0UzD9FEw/BdNPwfRT
MP0UTD8F00/B9FMw/RRMPwXTT8H0UzD9FEw/BdNPwfRTMP0UTD8F00/B9FMw/RRMPwXTT8H0UzD9
FEw/BdNPwfRTMP0UTD8F00/B9FMw/RRMPwXTT8H0UzD9FEw/BdNPwfRTMP0UTD8F00/B9FMw/RRM
PwXTT8H0UzD9FEw/BdNPwfRTMP0UTD8F00/B9FMw/RRMPwXTT8H0UzD9FEw/BdNPwfRTMP0UTD8F
00/B9FMw/RRMPwXTT8H0UzD9FEw/BdNPwfRTMP0UTD8F00/B9FMw/RRMPwXTT8H0UzD9FEw/BdNP
wfRTMP0UTD8F00/B9FMw/RRMPwXTT8H0UzD9FEw/BdNPwfRTMP0UTD8F00/B9FMw/RRMPwXTT8H0
UzD9FEw/BdNPwfRTMP0UTD8F00/B9FMw/RRMPwXTT8H0UzD9FEw/BdNPwfRTMP0UTD8F00/B9FMw
/RRMPwXTT8H0UzD9FEw/BdNPwfRTMP0UTD8F00/B9FMw/RRMPwXTT8H0UzD9FEw/BdNPwfRTMP0U
TD8F00/B9FMw/RRMPwXTT8H0UzD9FEw/BdNPwfRTMP0UTD8F00/B9FMw/RRMPwXTT8H0UzD9FEw/
BdNPwfRTMP0UTD8F00/B9FMw/RRMPwXTT8H0UzD9FEw/BdNPwfRTMP0UTD8F00/B9FMw/RRMPwXT
T8H0c96nTewsv87y6yy/zvLrLL/O8ussv87y6yy/zvLrLL/O8ussv87y6yy/zvLrLL/O8ussv87y
6yy/zvLrLL/O8ussv87y6/aXX5+CTWzqi576oqe+6KkveuqLnvqip77oqS966oue+qKnvuipL3rq
i576oqe+6KkveuqLnvqip77oqS966oue+qKnvuipL3rqi576oqe+6KkveuqLnvqip77oqS966oue
+qKnvuipL3rqi576oqe+6KkveuqLnvqip77oqS966oue+qKnvuipL3rqi576oqe+6KkveuqLnvqi
p77oqS966oue+qKnvuipL3rqi576oqe+6KkveuqLnvqip77oqS966oue+qKnvuipL3rqi576oqe+
6KkveuqLnvqip77oqS966oue+qKnvuipL3rqi576oqe+6KkveuqLnvqip77oqS966oue+qKnvuip
L3rqi576oqe+6KkveuqLnvqip77oqS966oue+qKnvuipL3rqi576oqe+6KkveuqLnvqip77oqS96
6oue+qKnvuipL3rqi576oqe+6KkveuqLnvqip77oqS966oue+qKnvuipL3rqi576oqe+6KkveuqL
nvqip77oqS966oue+qKnvuipL3rqi576oqe+6KkveuqLnvqip77oqS966oue+qKnvuipL3rqi576
oqe+6KkveuqLnvqip77oqS966oue+qKnvuipL3rqi576oqe+6KkveuqLnvqip77oqS966oue+qKn
vuipL3rqi576oqe+6KkveuqLnvqip77oqS966oue+qKnvuipL3rqi576oqe+6KkveuqLnvqip77o
GWaUYPopmH4Kpp+C6adg+imYfgqmn4Lpp2D6KZh+CqafgumnYPopmH4Kpp+C6adg+imYfgqmn4Lp
p2D6KZh+CqafgumnYPopmH4Kpp+C6adg+imYfgqmn4Lpp2D6KZh+CqafgumnYPopmH4Kpp+C6adg
+imYfgqmn4Lpp2D6KZh+CqafgumnYPopmH4Kpp+C6adg+imYfgqmn4Lpp2D6KZh+CqafgumnYPop
mH4Kpp+C6adg+imYfgqmn4Lpp2D6KZh+CqafgumnYPopmH4Kpp+C6adg+imYfgqmn4Lpp2D6KZh+
CqafgumnYPopmH4Kpp+C6adg+imYfgqmn4Lpp2D6KZh+CqafgumnYPopmH4Kpp+C6adg+imYfgqm
n4Lpp2D6KZh+CqafgumnYPopmH4Kpp+C6adg+imYfgqmn4Lpp2D6KZh+CqafgumnYPopmH4Kpp+C
6adg+imYfgqmn4Lpp2D6KZh+CqafgumnYPopmH4Kpp+C6adg+imYfgqmn4Lpp2D6KZh+Cqafgumn
YPopmH4Kpp+C6adg+imYfgqmn4Lpp2D6KZh+CqafgumnYPopmH4Kpp+C6adg+imYfgqmn4Lpp2D6
KZh+CqafgumnYPopmH4Kpp+C6adg+imYfgqmn4Lpp2D6KZh+CqafgumnYPopmH4Kpp+C6adg+imY
fgqmn4Lpp2D6KZh+CqafgumnYPopmH4Kpp+C6adg+imYfgqmn3WfNrGz/DrLr7P8Osuvs/w6y6+z
/DrLr7P8Osuvs/w6y6+z/DrLr7P8Osuvs/w6y6+z/DrLr7P8Osuvs/w6y6+z/DrLr9tffn0SNjF9
0VNf9NQXPfVFT33RU1/01Bc99UVPfdFTX/TUFz31RU990VNf9NQXPfVFT33RU1/01Bc99UVPfdFT
X/TUFz31RU990VNf9NQXPfVFT33RU1/01Bc99UVPfdFTX/TUFz31RU990VNf9NQXPfVFT33RU1/0
1Bc99UVPfdFTX/TUFz31RU990VNf9NQXPfVFT33RU1/01Bc99UVPfdFTX/TUFz31RU990VNf9NQX
PfVFT33RU1/01Bc99UVPfdFTX/TUFz31RU990VNf9NQXPfVFT33RU1/01Bc99UVPfdFTX/TUFz31
RU990VNf9NQXPfVFT33RU1/01Bc99UVPfdFTX/TUFz31RU990VNf9NQXPfVFT33RU1/01Bc99UVP
fdFTX/TUFz31RU990VNf9NQXPfVFT33RU1/01Bc99UVPfdFTX/TUFz31RU990VNf9NQXPfVFT33R
U1/01Bc99UVPfdFTX/TUFz31RU990VNf9NQXPfVFT33RU1/01Bc99UVPfdFTX/TUFz31RU990VNf
9NQXPfVFT33RU1/01Bc99UVPfdFTX/TUFz31RU990VNf9NQXPfVFT33RU1/01Bc99UVPfdFTX/TU
Fz31RS990Utf9NIXvfRFL33RS1/00he99EUvfdFLX/TSF730RS990Utf9NIXvfRFL33RS1/00he9
9EUvfdFLX/TSF730RS990Utf9NIXvfRFL33RS1/00he9Hg8rHVY6rHRY6bDSYaXDSoeVDiudVjqt
dFrptNJppdNKp5VOK51WOq10Wemy0mWly0qXlS4rXVa6rHRZ6bLSsNKw0rDSsNKw0rDSsNKw0rDS
sNK00rTStNK00rTStNK00rTStNK00rLSstKy0rLSstKy0rLSstKy0rLSbaXbSreVbivdVrqtdFvp
ttJtpWaUYPolmH4Jpl+C6Zdg+iWYfgmmX4Lpl2D6JZh+CaZfgumXYPolmH4Jpl+C6Zdg+iWYfgmm
X4Lpl2D6JZh+CaZfgumXYPolmH4Jpl+C6Zdg+iWYfgmmX4Lpl2D6JZh+CaZfgumXYPolmH4Jpl+C
6Zdg+iWYfgmmX4Lpl2D6JZh+CaZfgumXYPolmH4Jpl+C6Zdg+iWYfgmmX4Lpl2D6JZh+CaZfgumX
YPolmH4Jpl+C6Zdg+iWYfgmmX4Lpl2D6JZh+CaZfgumXYPolmH4Jpl+C6Zdg+iWYfgmmX4Lpl2D6
JZh+CaZfgumXYPolmH4Jpl+C6Zdg+iWYfgmmX4Lpl2D6JZh+CaZfgumXYPolmH4Jpl+C6Zdg+iWY
fgmmX4Lpl2D6JZh+CaZfgumXYPolmH4Jpl+C6Zdg+iWYfn0Lpr8vWdbZ7ZzdztntnN3O2e2c3c7Z
7ZzdztntnN3O2e2c3c7Z7ZzdztntnN3O2e2c3c7Z7ZzdztntnN3O2e2c3c7Z7bz7bud+D/l8twz6
gZt7/fSPz765ud89+8P65t/++du//s2ffYe6//4PPfr85puS/+bvvcVZpFevvv7Xm1/95fVnz1o9
//qn8c2Pj754cwOPfvfy5smfHr348ukXz189evO0f/N372h39l61/MN//qcXz29+/p7+/sXz168+
+/OXX3z16lH78tHLmzfP5ZOXv/m3F7///a3enfl4/sPP3eCPPc/v9wi8xX2/efNy+ezJl88+e/rm
pfHNvz363ZNXz57+5snzv77TM/qPz//6v735n7/9k/rzN/22T+DLm1cvvnr59ObVZ1//8o9PXr55
+b/6zb+8upsX44/d2o89dT9/P3/+Hr7b2/wvr18+ucN343sW80HP5subL1+8fP1xn9PvbvMun9nv
/8b3NXz1+tkXP/36fYs30C0/VH/7HYY/3Lx+9PWj8OjZ89+/+M2rr3532zf2IU/lTz2gd/REvmVL
u/vb/4nn5y5fww+7/75nu7q7RvUOE+Cz55/f/OW9/tifXrwZCJ5/dvPV00d/evn1//nTy/+4j396
9c9P/3nF4/bozWeEvP2g+Mhv+Pfr3XfxqviphHy35+MtsvIdP0v8xyvpo79Lfqgfv37x5W9e/+X1
f/ny2Zc3v/3jzZPPb17+5398+ua/efXov72ZjV+++OLRP37xxYt/e/T/fvnsD8+e/y//t//rx8uK
d6/toQx+L++s5b5rFQ/pRfbRXzl3+XJ454+Bbx7FL2+evr75/CF9Or8W9dYf079//F7efH7z/PWz
J1+8+uzJV6//+PV/fvrk9bMXz+/hs+vb1vLud/P0yzvql//89M2U8Oqf3+Zz8sebb+/pksTbvnxv
cxbx4f/4cfFLvOJ37aq/wE9t7zZC/5IuND3gB+MdPu/cyafZlw+gD9/rlcc7b+A/9Uzezwv2/T5n
v7zfN9j7Xeh93yu17/gCuat294EXY2/3tf3Oj8nHqvBd3nnfzE53fgnvXfvBj1b1wN5w1+foN1/+
9b+8uc0v/vzbr/+xt30A/8dfX//xxfP/+fTlsy9ff9g74aeq+aivvfNQfdBDdT6enxfaHb7Q3uqP
/tuLl396M+K8SxL8H9/8I6/u7KrX35T0i/smxzve/9u/shsP6IJu/PK/33Hrz/cv8RJU3Glre/vX
xj8+/+u3ve1dPyu9w/LoA5viR3/RfYLLrl9iGPzLqwd0peBjfkx/r/v/QK5dfNzLBR/4SvnVjdPn
8TqP1wN+vM7FgXNp5eM+en/7qn764sWfnt28uq9vxHjzt/AlmDPi3vOI63N63tinLT7cR++dr2E8
xG9Mxvt9Y/JTv9J2q53mF5Ubn/Ilgg95Vn/s73zcawDXW77ze/9LvFL8rl9WPCH4MUaI/3nz+k15
X79A/5cnv23/y//n5Vc39/yY/VBF9xEiz56/+vr1+ujbsl59faHh3//jb7+9gY9/6eNnS3ooY/31
OfyGyvH4z0/+8ujJH25++/jhvch+sMAH+Fj+7rf929r+z7//757+djywB/atqj3v7E/rnX3S9vbe
yz/Ydn74zfKwW+gt3JcH2G0//+18YI/zdxWdrvnJzkNvnsOH/Wb+sQIf4GN589v1wB687yo679BP
9h365jl82O/QHyvwXGq9t2nu97+NB/Yi+a6i04k+2U705jl82J3oxwp8mNehztXN8w49VzfP1c1f
9tXNc9Xu9MWH8F4+Vzc/Xrd912V8PqBvOuUtIOH+9hG7v2OxP1LFL/kk7I/c5Q+l0H/k5/CnK/g1
SwXyl/at5p9+qn9dX7D85d/xD3223/oxvIuTyu+eNvf7Yvj0ouodj6b++KvpYz39P1XBfTW/T6vL
/9JPY3/4q/wX9X3rX/Kzfvsv8l/jJfR3eMg+lgvn7uQut5Z7H6Eb3KJO5wPfFr+ua4J33kN+bQuT
u31Az9bknR/qn7wDv3vy+aOnf/zq+Z8e/Qew9Os319M3D9Pr37afr+ybpvPZN9rNR09+//rm5aM3
f/rLF89f3ZyVzgetdE4Pv6Oh5l2vCL7taen3e4fdIaX9nZ65+/nC2wc+Ge/iELv179a9w2vuw9TL
f3726unt76/OpvOeN53vmN239Bq6bUfTL/38yIe9y3/c5fOXN//v658fisT4Us8ReX282e2XuES9
DfTBGWB/KVKr94mpcxTtU7gW84s8j3brc/2bfz3uj+sD3GA//Q56+fN/8yN+meHDVWsP1UX5kbVp
7/fius++/DF95Zd59SNXdTeBdnse7Pdwpn+cSeA2ns67f0vRWu/zhXGb13U+YKC+X0v6+7423m/w
f7f3zX31sl/UjvRXeAD9bh/QX+Tp7AOp/5jXpd5Bc36H1zIf6tWh9350Tl4cTMADW3DXAzobV3e9
o/q1f6Xzl7huqLNluLPv/v7uiyfP//TN4/tfnj3/8qvXjx7/9j/1+E99tL6/aXH/7d9/HI+vP7br
j/3647j+OK8/ruuPcf0xrz/W9cdrVfNa1bxWNa9VzWtV81rVvFY1r1XNa1XzWtW8VrWuVa1rVeta
1bpWta5VrWtV61rVula1rlWta1VxrSquVcW1qrhWFf9R1f/6j//fv/nt9QbyegN5vYH87ga++831
rub1rub1zuT1tur6x+tabl3/cl3/cl0fxLo+iHW93bre7r7ex30tY18fxH2tal+r2teq9rWqfa1q
X6val6retJvrj+36Y7/+OK4/zuuP6/pjXH/M6491/fFaVbtW1a5VtWtV7VpVu1bVrmW0axntWka7
ltGvZfRrGf1aRr+W0a9l9OuD069V9WtV/VrVtZ/2az/t137ar/20X/tpv/bTfu2n/dpP+7Wf9ms/
7dd+2q/9tF/7ab/2037tp/3aT/u1n/ZrP+3XBtqvDbRfG2i/NtB+baD92kD7tYH2awPt1wbarw20
XxtovzbQfm2g/dpA+7WB9msD7XGtKq5VxbWquFYV16quXbdfu26/dt2e16ryWtW1A/drB+55rSqv
VV37c7/2517Xqq7tute1qmv37tfu3a/du1+7d792737t3v3avfu1e/dr9+7X7t2v3btfu3e/du9+
7d792r37tXv3a/ce1+49rt17XLv3uHbvce3e49q9x7V7j2v3HtfuPa7de1y797h273Ht3uPavce1
e7+ZRK4/Xqu6NvNxbebj2szHtZmPazMf12Y+rs18XJv5uDbzcW3m49rMx7WZj2szH9dmPq7NfFyb
+bg283Ft5uPazMe1mY9rMx/XZj6uzXxcm/m4NvNxbebj2szHtZmPazMf12Y+rsPxuPb2ce3t49rb
x7W3j2tvH9fePq69fVx7+7j29nHt7ePa28e1t49rbx/X3j6uvX1ce/u49vZx7e3j2tvHtbePa28f
194+rr19XHv7uPb2ce3t49rbx7W3j2tvH9fePq69fVx7+7j29nHt7ePa28e1t49rbx/X3j6uvX1c
e/u49vZx7e3j2tvHtbePa28f194+rr19XHv7uPb2ce3t49rbx7W3z2tvn9fePq+9fV57+7z29nnt
7fPa2+e1t89rb5/X3j6vvX1ee/u89vZ57e3z2tvntbfPa2+f194+r719Xnv7vPb2ee3t89rb57W3
z2tvn9fePq+9fV57+7z29nnt7fPa2+e1t89rb5/X3j6vvX1ee/u89vZ57e3z2tvntbfPa2+f194+
r719Xnv7vPb2ee3t89rb57W3z2tvn9fePq+9fV57+7z29nnt7fPa2+e1t89rb5/X3j6vvX1ee/u8
9vZ57e3z2tvntbfPa2+f194+r719Xnv7vPb2ee3t89rb57W3z2tvn9fePq+9fV57+7z29nnt7fPa
2+e1t89rb5/X3j6vvX1ee/u89vZ57e3z2tvntbfPa2+f194+r719Xnv7vPb2ee3t89rb57W3z2tv
n9fePq+9fV57+7r29nXt7eva29e1t69rb1/X3r6uvX1de/u69vZ17e3r2tvXtbeva29f196+rr19
XXv7uvb2de3t69rb17W3r2tvX9fevq69fV17+7r29nXt7eva29e1t69rb1/X3r6uvX1de/u69vZ1
7e3r2tvXtbeva29f3/T229+c/9hF/Pbb/7jd692/hsi6hsi6hsi6hsi6hsi6hsi6hsi6hsi6hsi6
hsi6hsi6hsi6hsi6hsi6hsi6hsi6hsi6hsi6hsi6hsi6hsi6hsi6hsi6hsi6hsi6hsi6hsi6hsi6
hsi6hsi6hsi6hsi6hsi6hsi6hsi6hsi6hsi6hsi6hsi6hsi6hsi6hsi6hsi6hsi6hsi6hsi6hsi6
hsi6hsi6hsi6hsi6hsi6hsi6hsi6hsi6hsi6hsi6hsi6hsi6hsi6hkhcQySuIRLXEIlriMQ1ROIa
InENkbiGSFxDJK4hEtcQiWuIxDVE4hoicQ2RuIZIXEMkriES1xCJa4jENUTiGiJxDZG4hkhcQySu
IRLXEIlriMQ1ROIaInENkbiGSFxDJK4hEtcQiWuIxDVE4voBIa69Pa69Pa69Pa69Pa69Pa69Pa69
Pa69Pa69Pa69Pa69Pa69Pa69Pa69Pa69Pa69Pa69Pa69Pa69Pa69Pa69Pa69Pa69Pa69Pa69Pa69
Pa69Pa69Pa69Pa69Pa69Pa69Pa69Pa69Pa69Pa69Pa69Pa69Pa69Pa69Pa69Pa69Pa69Pa69Pa69
Pa69Pa69Pa69Pa69Pa69Pa69Pa69Pa69Pa69Pa69Pa69Pa69Pa69Pa69Pa69Pa69Pa69Pa+9Pa+9
Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9
Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9
Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9
Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9
Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9Pa+9
Pa+9Pa+9Pa+9va69va69va69va69va69va69va69va69va69va69va69va69va69va69va69va69
va69va69va69va69va69va69va69va69va69va69va69va69va69va69va69vejtP/n+LXo7r+d/
fw/+4D94rfDa5+va5+va5+va5+va5+va5+va5+va5+v7Pv/db66VXHt7XXt7XXt7XXt7XXt7XXt7
XXt7XXt7XXt7XXt7XXt7XXt7XXt7XXt7XXt7XXt7XXt7XXt7XXt7XV8bxVN87e117e117e117e11
7e117e117e117e117e117e117e117e117e3F3H5tjHXt7XXt7VX8j69VXXt7XXt7XXt7XXt7fdfb
L7+8FnNt6UXl15Ze15a+ry19X1v6vrZ0vnG6ry19X1v6vrb0fW3p+9rS97Wl72tL39eWvq8tfV97
2r62l31tL/vaXva1vexre9nX9rKv7WVf32v7+hbY17fATv7H1798fQvs61tgX98C+/oW2Ne3wL6+
Bfb1LbCvb4F9fQtsnt/reLO/eQs8BJiwaO3zff7zff7zff7zff7zff7zff7zff7zff7zff7zff7z
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
uRZdybXoSq5FV3ItupJr0ZVci67kWnQl16IruRZdybXoSq5FV3ItupJr0ZVci67kWnQl16IruRZd
ybXoSq5FV3ItupJr0ZVci67k2va8dueNO2/deefOgzt39Dl93Dn960q2RVeybXvu6HH615Vwi66E
W3Ql3KIr4bY9d/xy+teVeIuuxFt0Jd6iK/EWXYm36Eq8RVfiLXZO/7qSb9GVfNueu+87/etKwkVX
Ei66knDRlYTbnrvvO/3bOf3bOf3bOf3bOf3bOf3bOf3rStDFzvnnriRddCXpoitJF11JuuhK0m3P
HX1OP7uSddGVrIuuZF10JeuiK1kXXcm66ErWbc8dfU5/uxJ20ZWwi66EXXQl7KIrYRddCbvoSthF
V8IuuhJ20ZWwi66EXXQl7KIrYRddCbvoSthFV8IuuhJ20ZWwi66E3fbc0efsgStpF11Ju+hK2kVX
0i66EnbRlayLrmRddCXroitZF13Juhicvg9O37uSdtGVtIuupF10Je22560779x5cOeOPqfvg/O/
pSTe29msJk+25MmWPNmSJ1vyZEuebMmTLXmyJU+25MmWPNmSJ1vyZEuebMmTLXmyJU+25MmWPNmS
J1vyZEuebMmTLXmy5W8y2fLW03uO904OHxzf2Dv57/LHO7vH20+cvP/LyfnMAv3V1/6KDS+X+PMy
yUxPUXJ49P7po9P/Pdo/2vtAXv8//Y3tlZOd8fDg9Pjw3k5/797hbztfHu/f3j947z//77yTnF6H
tudz8sZWQs7+2bm+e7J/4/3dg8fv/3Z4fHfveNsRrygwx3tHh8enFys29s2LEp4bJyfL/9s/PTr9
734RDpaz6ux0597+wd7O9eO93bs7h0c37h2c7JSbsLP36GjvxunezTefGvdCBRKj29Msuj3NotvT
LLo9zaLb0yy6Pc2i29Msuj3NotvTLLo9zaLb0yy6Pc2i29Msuj3NotvTLLo9zaLb0yy6Pc2i29Ms
uj3NotvTbHvu6HE+ZnA+pdvjLLo9zqLb4yy6Pc5icD6kK3gZXcHL6ApeRlfwMrqCl9EVvIyu4GV0
BS+jK3gZXcHL6ApeRlfwMrqCl9EVvIyu4GV0BS+jK3gZXcHL6ApeRlfwMrqCl9EVvIyu4GV0BS+3
544+50O6ApjRFcCMrgBmdAUwoyuAGV0BzOgKYEZXADO6ApjRFcCMrgBmdAUwoyuAGV0BzOgKYEZX
ADO6ApjRFcCMrgBmdAUwoyuAGV0BzOgKYEZXAHN77uhzPqYriBldQczoCmJGVxAzuoKY0RXEjK4g
ZnQFMaMriBldQczoCmJGVxAzuoKY0RXEjK4gZnQFMaMriBldQczoCmJGVxAzuoKY0RXEjK4gZnQF
MaMriBldQczoCmJGVxAzuoKY0RXEjK4gZnQFMaMriBldQczoCmJGVxAzuoKY0RXEjK4gZnQFMaMr
iBldQczoCmJGVxAzuoKY0RXEjK4gZnQFMaMriBldQczoCmJGVxAzuoKY0RXEjK4gZnQFMaMriBld
QczoCmJGVxAzuoKY0RXEjK4gZnQFMaMriBldQczoCmJGVxAzuoKY0RXEjK4gZnQFMaMriBldQczo
CmJGVxAzuoKY0RXEjK4gZnQFMaMriLk9d/Q5++EKZEZXIDO6AplFWUb3h+r3Gmr5Q+H/8IdHKv+H
2v+hsbqTV7Zd/PSV4G4t/fdL//3Sf7/03y/993+vhpY/tP4Pnf/DHwiL7g+Vp7TylFae0spTWnlK
K09p5SmtPKWVp7TylNae0tpTWntKa09p7SmtPaW1p7T2lNae0tpT2nhKG09p4yitPYNqz6DaM6j2
DKo9g2rPoNozqPaNq33jGt+Vjae08ZQ2ntLGd0Pju6Hx3dD4bmg8pc0fKPXd0PhuaHw3NL4b3GqS
5Q+e0sZT2nhKG09p4yltPKWtp7T1lLae0tZT2npKW09p6yltPaWtp7T1lHae0s5T2nlKO09p5ynt
PKWdp7TzlHae0s5TGjylwVPqzYhba7L8wVMaPKXBUxo8pcFTGjyl0VMaPaXevrlVJ8sfPKXRUxo9
pdFTGj2l0VHqFp8sfyj8H0r/h8r/ofZ/aPwfWv+Hzv8h+D94Sr0D0HoHoPUOQOsdgNY7AG4tyvIH
T2nhKfWegVuPsv2DdxVa7yq03lVovavQeleh9a5C612F1rsKrXcVWu8qtN5VaL2r0HpXofWuQutd
hdbbl9bbl9bbl9bbl9ZbwtZbwtZbwtZbwqfWsTz1N0+bt0qtt0qtt0qtt0qtt0qtt0qtt0qtt0qt
t0qtt0qtt0qtt0qtt0qtt0qtt0qtt0qtt0qtt0qtt0qtt0qtt0qtt0qtt0qtt0qtt0qtt0qtt0qt
t0qtt0qtt0qtt0qtt0qtt0qtt0qtt0qtt0qtt0qtt0qtt0qtt0qtt0qtt0qtt0qtt0qtt0qtt0qt
t0qtt0qtt0qtt0qtt0qtt0qtt0qtt0qdt0qdt0qdt0qdt0qdt0qdt0qdt0qdt0qdt0qdt0qdt0qd
t0qdt0qdt0qdt0qdt0qdt0qdt0qdt0qdt0qyTOcdntZ8zVmzFyjm+PeedH3h7dDybF+e7cuzfXm2
L8/25dm+PNuXZ/vybF+e7cuzfXm2L8/25dm+PNuXZ/vybF+e7cuzfXm2L8/25dm+PNuXZ/vybN9l
ne27RHu+/WFW7MKn4c49ofF5lUmXXvHi4l2DzrsGnXcNOu8adN416Lxr0HnXoPOuQeddg867Bp13
DTrvGnTeNei8a9B516DzrkHnXYPOuwaddw067xp03jXofPja+fC1845C5x2FzjsKnXcUOu8odN5R
6Lyj0HlHofOOQucdhc47Cp13FDrvKHTeUei8o9B5R6HzjkLnHYXOOwqddxQ67yh03lHovKPQeUeh
845C5x2FzjsKnXcUOu8odN5R6Lyj0HlHofOOQucdhc47Cp13FDrvKHTeUei8o9B5R6HzjkLnHYXO
OwqddxQ67yh03lHovKPQeUeh845C5x2FzjsKnXcUOu8odN5R6LyjELyjELyjELyjELyjELyjELyj
ELyjELyjELyjELyjELyjELyjELyjELyjELyjELyjELyjELyjELyjELyjEHz4GryNCt5GBW+jgrdR
wduo4G1U8DYqeBsVvI0K3kYFb6OCt1HB26jgbVTwNip4GxW8jQreRgVvo4K3UcHbqOBtVPA2Kngb
FbyNCt5GBW+jgrdRwVug4C1Q8BYoeAsUvAUK3gKF5g+f9QzyBid4gxO8wQne4ARvcII3OMEbnOAN
TvAGJ3iDE7zBCd7gBG9wgjc4wRuc4A1O8AYneIMTvMEJ3uAEb3CCNzjBG5zgDU7wBid4gxO8wQne
4ARvcII3OMEbnOANTvAGJ3iDE7zBCd7gBG9wgjc4wRuc4A1O9AYneoMTvcGJ3uBEb3CiNzjRG5zo
DU70Bid6gxO9wYne4ERvcKI3ONEbnOgNTvQGJ3qDE73Bid7gRG9wojc40Ruc6A1O9AYneoMTvcGJ
3uBEb3CiNzjRG5zoDU70Bid6gxO9wYne4ERvcKI3ONEbnOgNTvQGJ3qDE73Bid7gRG9wojc40Ruc
6A1O9AYn+qAo+qAoepMUvUmK3iRFb5KiN0nRm6Tog6LobVT0Nip6GxW9jYreRkVvo6I3J9Gbk+jN
SfTmJHpzEr05id6cRG9Oojcn0ZuT6M1J9OYkenPyh1Uc0ZuT6M1J9OYkenMSvTmJ3pxEb06iNyfR
m5PozUn05iR6cxK9OYnenERvTqI3J9GZk2rjzMn2D4X/Q+n/UPk/1P4Pjf9D6//Q+T8E/wdPaeEp
LTylhae08JQWntLCU1p4SgtPaeEpLTylpae09JSWntLSU1p6SktPaekpLT2lpae09JRWntLKU1p5
SitPaeUprTyllae08pRWntLKU1p7SmtPae0prT2ltae09pTWntLaU1p7SmtPaeMpbTyljae08ZQ2
ntLGU9p4ShtPaeMpbT1hrSes9YS1nrDWE9Z6wlpPWOsJaz1hnSes84R1nrDOE9Z5wjpPWOfp6P5A
h+/K4OkIno7g6QiejuDpCJ5BwRMWPGHBExY9HdHTEf1Xov+Ksw1V4U1B4U1B4U1B4U1B4U1B4U1B
4U1B4U1BsfkDYa75hdf8hdf8hdf8hdf8hVf0hVf0hVf0hVf0hVf0hVf0hVf0hVf0hVf0hVf0hVf0
hVf0hVf0hVfjhVfjhdfahdfahdfaRfWHr3h+eCVdeCVdeCVdnOnkN18+8tbhwenJf+8f3XtwslMc
7Rzv3X5wb/f4/d8Ob9169/IN6039r+e16q+mEl8zRfHckhPzzGSemcwzk3lmMs9M5pnJPDOZZybz
zGSemcwzk3lmMs9M5pnJPDOZZybzzGSemcwzk3lmMs9M5pnJPDOZZybzzGSemXwLM5NvM13xXds9
MW9AeW75mtRBXcTSjwbvGRTeMyi8Z1B4z6DwnkHhPYPCewaF9wwK7xkU3jMovGdQeM+g8J5B0XhK
vatQeFeh8K5C4V2FwrsKhXcVCu8qFN5VKLyrULSeUu87FN53KLzvUHjfofC+Q+F9h6LzlHpnovDO
ROE9g8J7BoX3DArvGRTeMyjCH77i+RE9P6Lnh/cdCu87FNFTGj2l3rsovHdRemei9M5E6Z2J0jsT
pXcmSu9MlN6ZKDd/oCP4PziOlT6uLL13UfogsfS+Q+ldhdK7CqV3FUrvKpTeVSi9q1B6V6H0rkLp
XYXSuwqldxVKHxOWPiYsvTNRemei9DFh6b2L0nsXpfcuSh8Tlt7dKL27UXp3o/TuRundjdLHhKWP
CUuv+Uuv+Uuv+Uuv+Uuv+Uuv+Uuv+Uuv6Euv6Euv6Euv6Euv6Euv6Euv6Euv6Euv10uv10uv10uv
10uv10uv10uv10uv10uv10uv10uv10uv10uv10uv10uv10uv10uv10sfJJbBU+qjxtJHjaW3DaW3
DaW3DaW3DaW3DaW3DaW3DaW3DaW3Db4c5/YPnlJvG0pvG0pvG8o/2AYfeZYelay89ai89ai89ai8
9ai89ai89ai89ai89ai89ai89XD1StvGiUPbVL8XuuUPrStY1Tau4OPyh9L/ofJ/qP0fGv+H1v+h
838I/g/R/aHZ+D94ShtPaeMpbTyljae08ZQ2ntLGU9p4SltPaespbT2lrae09ZS2ntLWU9p6SltP
aesp7Tylnae085R2ntLOU+rFrO48pZ2ntPOUdp5SL8x18JQGT2nwlAZPafCUBk9p8JQGT2nwlEZP
afSURk9p9JRGT2n0lEZPafSURk9pdJQ2m43/Q+H/UPo/OEobr3Wawr+j8O8o/vCO2v+h8X9o/R86
/4dwPuvKL7p6VEYEMiKQEYGMCGREICMCGRHIiEBGBDIikBGBjAhkRCAjAhkReGlE4LKv5zjPFQZX
v/zmLz6+f3Cy5HzvyCKIk/ePHv+vHn7wcPde8X/bf8rln+pFMY6rj0/vHB58c+N4/+j0hbCON0Db
81mnz+nvzvahB3snOwdbSnbv7T/Ze/0C4nmZy9sVwnf35a8xfC4rXW/n0XdHmWRK/8mUZj2YlVnW
g5nSrAezV3Vp6Mpi889Ru/+IRmYxudQc/EeMlszBzMG/NQf/hjFb1s/Zm8lRXY7qsj+Y9c0/xebl
ns02L8+T5FGc/cGsqi5s4czbHWd5Pc9rr+d5JqlZBF+vqzP/Mv8y/56uj/WSuxnFs/deTBpw7scX
dlpeoy//9T9fHB7s5ZGWNVXmX+Zf5t8b3QDxku9NGLPs5LGX+Zf5l/mX+Zf5l/mX+Zf5l/l3kRnO
Fz7N8VZ2LcjCkgdb5l/mX+Zf5l/mX+Zf5l/mX+Zf5l/mX+bfPyjYz8sfXxZC+NMuefNrkP6EQX/9
5RddMfMUi7d/vLN7fLDl6bb9b3711J9+6Xjv6PD49E1/zzj17G++4mB7idVOf8Xdc/vy2VdvHt7/
7/Huwe3tZ79efnZOTo/3D27v39rfivb5ieVzP/uiMvnSKwR29h4t6nXv5jm27jWJevkVbKt6unF4
eHd/q+SP927uH29feaapXqal/cHjj7a3v8Y4PbcR+lLtfQEmvvLQe670ntPqm9fSjRfXYRfzyIWu
K/r9AD2XfLTN//3evVv+qZd/muWfdvmnW/4Jyz/x7GZ55OyZ4uyh4uyp4uyx4uy54uzB4uzJ4uzR
4uzZ8uzZUr539mx59mx59mx59mx59mx59mx59mx59mx19mx19mwlxJ49W509W509W509W509W509
W509W589W589W589W0tLz56tz56tz56tz56tz56tz55tzp5tzp5tzp5tzp5thE1nzzZnzzZnzzZn
zzZnz7Znz7Znz7Znz7Znz7Znz7bC47Nn27Nn27Nn27Nnu7Nnu7Nnu7Nnu7Nnu7Nnu7NnO+mgs2e7
s2e7s2fD2bPh7Nlw9mw4ezacPRvOng1nzwbp3bNnw9mz8ezZePZsPHs2nj0bz56NZ8/Gs2fj2bNR
RENlQ4RjI9KxEfHYiHxsREA2IiEbEZGNyMhGhGQjb0HE5C0qZCplKmYqZypoKmkqaiJrhQhbUaqk
yltE3goRuEIkrhCRK0TmChG6QqSuELErRO6KSgVe3iKiV4jsFSJ8hUhfIeJXiPwVIoCFSGAhIljU
Om7kLSKFhYhhIXJYiCAWIomFiGIhsliIMBYijUWjw0/eIgJZiEQWIpKFyGQhQlmIVBYiloXIZSGC
WbQ6iuUtIpuFCGch0lmIeBYin4UIaCESWoiIFiKjRafKQN4iYlqInBYiqIVIaiGiWoisFiKshUhr
IeJaBNUp8haR2EJEthCZLURoC5HaQsS2ELktRHALkdwiqmpS3STKSWS3FNktRXZLkd1SZLcU2S1F
dkuR3VJktyxUxclbRHZLkd1SZLcU2S1FdkuR3VJkt1Q9qYoSTSlvUV2pylK1papL1ZeqMEV2S5Hd
UmS3rFThyltEdkuR3VJktxTZLUV2S5HdUmS3FNktRXbLWvW2vEVktxTZLUV2S5HdUmS3FNktRXbL
reyeW3D0en7S66Ztvqqj9AYishfwT18gtJGN/R6c7t87nyj7z3yU53/tdXKKs4+TfZzs42QfJ/s4
2ce5WB/n3FDUiwE73hhK/bqeid92GH/hAr/8LLflglyz7Plkzyd7PtnzyZ5P9nzeXXTn7axgyZYw
W8JsCbMlzJYwW8K/CQbwdEB8e29r+Lav3tk/uHX4/smD6+cC3f9xZuXB8fHyrmWF497B6fOWFL7c
epq3vz7kGQvH/qzhL7P45xn99lZAjef2xVvEOF52ae2fEvr//u9ZT45bUrf9uL977+S90+MHe3b3
N9sOGs+a897uB8UlXk98jo2+oK5/xb3O75/EqjzHZZWvTdbrlAa8NFJQ/hNFv7wo0b/YFa2vv/D0
z6zfK7byfNbXm9UWO3vJlu+/AYb+zjWxRp53D/7ZaDVxP3r8v6eHd/cOPog3q+tl3Kt22r0m7tR1
tbsTrm/anettfetGF+sbYffGv+/vPrq2e3vvg82/ecG1k9Pd0wcnH1Sb4t8L/af7hwcfLO25UvVX
ynn7n7Vq+5dtu4rtn84o2v5uadr+u4zD7c/772//MQq3x3/Ehq5UenOrf7tSTTKA/727aIhrYEe7
/+ZI1ML5rRx6yeXBxeby5BIoLS9g6bad+68sSiJKF+5S/z7QJKvs4tPAnv7yGy6cvDDL2Ky9sMqH
748/k5ff99G/X0IO36ak3dh20+kHxaWA3f/hfZB9xmegW08P/XPKV/ry6rcff/nFNy9qYm50Vdfe
2Lu1U7fb2K0utkehq3d3qt3rTdvt7rZle/1v7628AoL2UirkAtOm1BfJicUvN2BfG+Z4jaTH5wZM
509cVhoX7pdeNBzw0kJ0/BoJG6+cwv/CBvJ82bD9f1NuwrX9g5t7j56f4ZtHzd55QMnHb00nXqx7
8JIc8sL5dlj0klBGNhmvZTKeaaAvLgh9oV78OwMBuR8uIxjwB4B/ubazf+t49/7eRRbU8Z99GxMS
WQj/SahgVgTv0PqZK9Vwpdxse33nrNf/kctpPA+yYOx+UGbB+CMPLtB1OOdVEq+2RsH7Eq8z03lj
92QbB76Vqc6nPv2ic53Zm3uOZGsR1JdhxQ9nj5ycQ92/p4i5VDVNz2Hu7ilZ/vs08sW79x+lTN/9
arhvQl4veYPfpOy+9DzrJSxq64l640Vtrfz2S1S2FdNzfpbnogXl76XYX6iS+t9v12o/Ul7Luz68
f337hbfjXj/17Rcu332ONe7OrVTNS4jr37JY83m4s0/JznkuX3kDFDwtUtfv7R7cPXvkf/cPjh6c
7mw+uFK2V8qqKMMZiDBeacbl31BciUEOvtDzMOhBN8nBZ3o+d1xI3Lo5O6iuxFkPev7SFxyUHFQc
1Bw0HLQcdBwEDiIHPQcDByMHEweJA+gZoGeAngF6BugZoGeAngF6Bt4z8p6R94y8Z+Q9I+8Zec/I
e0baNdKukXaNtGukXSPtGmnXSLtG6JmgZ4KeCXom6JmgZ4KeSeip5S31lVreUgsJtRBQy+dr+Xgt
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
H77ZeDti5YANubcTw02z81Fdf78xO48znxTTdFK4cjHJpmu55X2ynMyjWTJdW57LbJZfMGbzxJWx
W+MjdZHPsvQ/i7UI/OSn5aI3WWN/0WR1r3/+Ny//N8/VZN33qNfh4+rwwjgHwKduNIB0OybZ3bMW
3j99NyluPvj4+wcld66xcnbLQ/ZbMzybPltOTk6PHh0dj/r2TWD11nZvff86uFm7OY2yUbsbtbs3
r4oruMk39wNuQkV3zWd9ELO9x77jTWhmP5b+fku+G1QlDlgfuHlV4G7xjk2FxPb09Tc0hrvQG3N7
NpcvXe4X2WpSRi6fZGW0mEz9PJ2USVmsjcrlfO4XFzScKE28y936f2ka+yIuNXMlKX3s1hZonBaR
K6LYlJkHL5b/Vmb8dd16P71GxdkHKMU2E2A79Eu8m1D/5/99fXK83Hq61X5R7SiHN6Vb8cLNT0/O
ziajZL4Mnvap/ukwZcaNh4JGpnSnZOy/1+AB1jDvMxpvnKUdynYa71ah7ngy0C6MqXe6jbdlT/3L
hbOJPNgqKX7wuUQ7VJLeFB89PunF5vpPPW09PeqTAq2j+6azVh2/ure+/Vr5iG+j8q0bY1ci+dvO
eL3szG2AtTubNbFhWOSNou90+fzk9HyPWnbc6fyWQanafI2/e9puXm+5vH52WZPMZa7Ms9RNXLos
JlkcLScujlaTJI7zvIxnSTKbXSzLy11S+MwVeVykLr9a+HZb1uuhphqcnx6tn76cd+em1ZsPNOvj
4lTsJNZ5dRvoslJ56y7l/WcVo0dnOythdONcH3dX72D3gUjva0mcbOReW+Veb1dUN7dO1oa5RJ3v
bObtxXV+mUDdNfwFm5DtXnbJubzpcqnQ+Q1bX3dFp91tmHTb+/puZ3nsnq9e1dtz0+0Yb3TjzOv6
SrZq39xaK+Ar74l9h1Xiq8SJr7WOdrvt8W59tNvoxPweVTlJ/DzP5/NJuZqtJlk+m01mUVZOloso
X/nEzbPlRVXZ52lSxGXuXRHHSZxrlkYUJS5NiyJyLsv7jl1xufWSshsNLV/LpXMJxnc9ln3Hzenb
SY7YrnvjPTLhVilkS23gbsThuG98aD/ci++XYRc7xW94996aObctO2/K0bn5ursZv/8/yGPHYOy/
eX3jiTJX2sHj7mpyt7Q0r7WfxvYt1oPT4XYeKBpVhrtoCuwq3/kA1ZxrOEc3WQxjMsneaQb/EDAX
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
vVwclVm1KJviJFk262az+TDZvncSEq6WoOXdo2HfqfLvQHC4w8f6eBW3KxEG9qVIX+fb7WGeujRZ
6Q497aOOZd3XC35cw+/Cknol4+8yMakfVSc7qInlXb/bngyTh/DRP9p172TzycnJJ/nmk2XzSVl9
UiSfZMtP8qP+b7n6pDj6pLg6e1/SVGm2bBZZucwX+XF6tKiPy+ViXZ001Ul9vDwukr//4Llc2+/f
ln9FH+5wTJXrh5v14x/ONi/bB9tW/vzt+Lzx7BtO+ffu73S1s//1w3z7m/Xfa9a4ft7Wj6XzfHzm
iUt2in1ZI97Jo/dqYM93AxAvh7scAM3fbkLWoc69V4IU7e2bvZtE8s5O5Vf4HvsTjU766WQ7kWyn
k+1Esp1ObCLZ/i22/z/6wMRG80qxz497Lb6dV7bwfaDOejkpvu77YX28WlR10mxV32a5qFfparE8
OsqTTXZUZcfNBxMdPkiPuFa3p12a/9D8PXep857difYHiZefLJefxLr/G4r+77Lt/3Zl3+Vc0//t
6v7v2/0fIeZ/uRfcE9Kw3y53eAErIj9dDHqQiz54Sp5dKvnhJcc9rF0HCaFc2fzzcS5FV9Np/zwW
7G9pbzmIWf3qvt6BTjjrZXFSVdVmcVL1ettJvVnUZbFcHJ2cNE2+rJKj6uRQ/Ol3qOrHtE7+e7Ve
Pf/0/7me6fx3XdKyHch99ux6dYmGurYRtHvYXHYZSp9Le/zv0N//GFJpv+8+P3j3kP294sezrO9z
GrjaJey6x+HbD/x3HS7XupIcgkl26rsJi9Belp9D6Tr7nobm1XmH3nWZsPYrD5PILsEVt7MoXBXH
5ebopFksk3yr2ObZ0bbD1vWiyo+P602VLdPi+IBnrWte9q6oQa/ZFPWRLdaXFf12afE9Q+7vIrFe
rtrXKIX2D1qsV+uHm/9m20Xs1Yvj1flmTxQuapE/erJ69vjtI/7v6bMXr7az3aeftMknLvkk7baF
r+Tnky59W0jv6bbPpPAN2wmF/sTn/UZafpJmWZZ8krnRZjPeLJr04mY53iyX2YXNpL6wmV64VZlf
PLlYjjerhM02+8QFCh0FTyHyvgV79Co9Qy+V07LP5Odz+bkhP1/Iz5fyIw2YfS0/N+XnlvxI42Xf
ys9t+flOfr6Xnx/k54783JUf+QjZj/JzX2ta8H4Fr1XwWoVW+yfdLpdSWMnPkfys5edYfjbycyI/
D+Tnofycys8j+XksP0/k56n8PJOf5/LzQn5+lp+X8nNmnyfZjrjx50qW+XKynUy208l2NtnOJ9vT
+5eT7WqyXU+2m4vbxaR+xaR+xaR+xaR+xaR+xaR+xaR+xaR+xaR+xaR+5aR+5aR+5aR+5aR+5aR+
5aR+5aR+5aR+5aR+5aR+1aR+1aR+1aR+1aR+1aR+1aR+1aR+1aR+1aR+1aR+9aR+9aR+9aR+9aR+
9aR+9aR+9aR+9aR+9aR+9aR+zaR+zaR+zaR+zaR+zaR+zaR+zaR+zaR+zaR+zcX6JcvlZDuZbKeT
7WyyTX3aROa+hJWnLSiUFCoK9YVFS2bgJHC0o6A3/sTpNPhJkNUr/YLZX7e/tBrV+cUeW+fWI9q0
t2RooaVghzoKnkKgELXQLSkkFNLhScXFsbzdTibb6WQ7m2znk+1isl1OtqvJdj3ZbuzbfBL5CDGn
wNeIfKhYU2go2OXtcN8yu/geZXbxPUobo23aIm3wVM8dAw8LVg9PgQ4QuCpQxWCHODkgCQT6j+cc
b0/nZM9Dvb1hSiHjPrRUaOydmjS50Pbb7WqyXU+2m4vb6XKynUy208l2NtnOJ9vFZHtSv3RSv3RS
v3RSv2xSv2xSv2xSv2xSv2xSv2xSv2xSv2xSv2xSv2xSv3xSv3xSv3xSv3xSv3xSv3xSv3xSv3xS
v4tyRZMl6WQ7m2znk+1isl1OtqvJdj3Znjx/0p+ySX/KJt8rm3yvbPK9ssn3yibfK5t8r2zyvSb6
QpNNvleWD7Pwr/LzWn5+05m0YiKumIgrnYhfyc+5/JzJj4im6VtBdTtdyYzVF2otyDDuC1ELMgv0
ezgnJhziHJlf+kMFezIKgUMVe+wce3rKniUFx6GcPXYO94mc7HlEoKrR3sIubzlkFWMxqliwWva0
GYWUAq3bssy1Om+KepKKjpGKjpGKjpGKjpGKjpGKjpGKjpGKjpGK5pCKHpGKVpGKjpGKxpGK/pGK
NpL+Ij9vWOOZox3Tt2Midsz+pvU55npnIgJzvWMed6wrLudNawqIAS2drrXLWRicLYZLCslIjpoq
KkmzzKc76smOZDndkUx3pNMd05tenDf6HdVkRzqtWDa9aTaR4Zp8Wo/8f86YPjafvlwxfbliekY5
fZdyetNqekY1vUc9fUo9rXo9rXozvaSZXjKRkdPlRMhNB61h2w1y7Q+6bb01HV2QTsT47Y58umMQ
nEXbTmRKS2TMJDKCEpn8EhksiQ4WmTMTGXmJjicdEjJUkxNkaPpzi8TbMSd0jAvFUNLe3UcLFQWG
TMeQ6ew+49fJJnrzdkc+3VFMd5TTHdV0Rz3d0Ux2TNTnHnya7kinO6Y1Lac1Lac1Lac1Lac1Lac1
Lac1raY1raY1raY1raY1raY1raY1raY1raY1raY1raY1rac1rac1rac1rac1rac1rac1rac1rac1
rac1rac1baY1baY1baY1nQ7MbDows2Za02Za02Za0+kEkk207K30upzuSKY70umObLojn+4opjvK
6Y5quqOe7pjWNJnWNJnWNJnWNJnWNJnWNJnWNJnWNJnWNJnWNJnWNJ3WNJ3WNJ3WNJ3WNJ3WNJ3W
NJ3WNJ3WNJ3WNJ3WNJvWNJvWNJvWNJvWNJvWNJvWNJ9ekk8vyf/nkunL5dOqF9OqF9OqF9Oqv10K
Docm8k+NKMmnQ7WnrTVdsPLpgpVPF6x8umDl0wUrny5Y+XTByqcLVj5dsPLpgpVPF6x8umDl0wUr
ny5Y+XTByqcLVj5dsPLpgpVPF6x8umDl0wUrny5Y+XTByqcLVj5dsPLpgpVPF6x8umDl0wUrny5Y
+XTByqcLVj5dsPLpgpVPF6x8umDl0wUrny5Y+XTByqcLVj5dsPLpgpVPF6x8umDl0wWrmC5YxXTB
KqYLVjFdsIrpglVMF6xiumAV0wWrmC5YxXTBKqYLVjFdsIrpglVMF6xiumAV0wWrmC5YxXTBKqYL
VjFdsIrpglVMF6xiumAV0wWrmC5YxXTBKqYLVjFdsIrpglVMF6xiumAV0wWrmC5YxXTBKqYLVpFP
b5pPb2ogXpsJ2pOJ+pOJ+pMJcpQJcpSJMpT9praBCrNqhVm1wqxaYUhWYCQDD8lASLaFnAIWZbVb
ZNgtMgCEDK0qQ6vKQBIyAJYMgCUDYNkWIrZq7BmO+jjq46iPoz7OLNzUx1EfR30c9XHtqD0rW6u3
VTC8HSOGWKxTsdqkYuJOxcSdiok7Fdt2Ktbs9DtwcYPwVRW8NTwzm8opW93pYgfdqjkXe9tWNZju
mMzfW8H/YhfeitPJZMdksG3F6ekZEw01n5p286ktL58a47aS7+SMZDJQtpJvPt0xqXo2vcdUvcqn
ak0+ndDz6VDaSgTpZMdkYdmub5MGqifL+XahKSY7JrJfMW3kYmodLqZvW0zsBtsdk+6wnXsutsd2
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
jAYU0JIC2ta4l48CWPtTYDMYrkYhC6hWQwFVJqC9SZttu6E0Vd8xVYs4lZ/H8vNIfp5wkom/gULk
Rgirqvh2g7CqOmM3CJAqWJc8vtT7hESW8cQkKCvIAYmE385xOlhVnhaZ13UIOCIr9gWR5ETw7Uc0
06kbrWhJYiFHkfDAfkXPKKQs5jpmlAKIhbIwEholBWKUVbKCVDJFV7KsVHel7z+Xnxfjelx02+53
VEPni9arIRCJ8IFoKKJ7wrZ2x8fje5kPdOvE/d89ojeM1pY+hmE0Xck3zJ+xrbrn2/HriK50wBQO
Db/vEMx0Mjb6QspXT8fPM4fe/khBARXDo6rIbYJETYTEPrVc0SGlqqgdUBNQf7rlm/1gnjMwNAND
MzA0A0MzMDQDQzMwNANDMzA0A0MzMDQDQzMwNANDMzA0A0MzMHTwwNDB88HOAR97jKZZrcsqa46q
xdG6jxzdbPJFszxZL4rV8fq4Lo/TJisPJXR8h6oeXOj4DnXec7jhrh6kw3s83Dx58rx/h20zvfj0
bPV0s++KjXzjh+Jlsme+85sdtl/xfrvbtXmx/vlH3l/YxHul+X3nLvV2FV/2Jb36UHLzXufKsM88
semlXdOv7lt+kPniisIe3zHgcYdQrGsPznnPHNwfibRxSJmxfy+G5Uq4Pf5o+H3Xfh0Wt27f+OzG
zcvKEKNbDguNfdnjoyov62W9yKrl9ss29fbLpifloqyOq9VRnZVNs/53H2jx6d3s7HT99M5v68+a
V+v0zsnqszsP73925836zY3ybnJ2evvew19X9754st0+u/Hk+Mn97tcHX3//+MHtz+48uuFv/Pr1
9w/67fLr374tb/obD24vkx9uPFme3X3zxdc/3ru5/OqH5Jf7nz15urp75/GN019P76R3Hn/Vta9v
fefC/btfP/j60bbctW++9s9/vbX99/Wp+/z7O9+e3vvu9dGNJ7efrLNvz7/TOvXXf/vdF8f37i3P
Nm++eHP/3s1fj9Lit/t3muf378bH9+998duNRy+Ots+Om8/di/69Lv3Mx68f9s/8/m7zeHX3/ov7
d789/ar74t729+yGD8WNcPvJj2/6a0Pev/+tR22+/ffmRji+eaf74vireHZ657M7vx13yQ2p043+
+u7Gk+R4+7vt3u7Jj9ntJ/djs9zcc09uPHp+evRZcnL8NJ6t7t5+ePyZtNP9bbvfv3tzef/u7ZM/
+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
0515+tEvvBrJ8gGL5DMOMGUHYqqfrTC74CMO1FwjryJe8i4xoy4vC07gxS7sEoO1rQc8HL9YnZkl
8DU3UH/Mn7mBNto5x3MOyItIkgFnX0BdfOkqjvZ3dHdf6KMEYZOgAG+ASTJIGR2PUtdj8Sz3xYAx
47muM4wzo7L5U+JB6dXZ2LqnxB34QvFtlWQU2hRAX6IQvAQUOHEb9o3ikOIrKgEF3vOZdXg1euUz
dneKzqo7aqOwLDZxxbkbBU3f0GkyCvJ5JabBN5hr9VuJd6eX+AcvLp/9UU9BMVOZORpFf9dUyU7L
KaQMKmm6RkFGRpuknnA4ifRXaIYQq3hJQa8QuFMcT71/rY9Wc3MzuOu2+sQVB8YrXdGkgyeFCsSV
orgWbapdoS+UWgA5fcIBxWAVfP2NO+juI/l5zNXqKCHfsnrO7oK7pRQ0wYtCxMecmHF/MrtoMhqv
k0JfaDgHJ3yd/z0fzzPjer5rtUFZ0JQuCnSfcD73dHgztzSRTj3td2yrJeAp2yPrUVEWltXA64e1
IwOeLXNqtdY6BXsP3r5lj+G2AYjag9sGnKGDAsjf8rFBoDUBQCsQf/ul7raIJg/CHADCvV0qs317
i20dFbjiWAyUBrK1t1UH0zkdG3l/KhFZGkbdkuSlBWHVqIRiCNWydDRkoVHxot/Dk0lpQ+RGe5Pb
6QcTk0b7Axfy2sFuBV7MFV9whxwIFbzY2akAxQpWoJH1VxUfOMHljM7O6OzvobP7pXX4qMi2diGj
mPHMGc+c8cwZz5zxzBnPnPHMGc+c8cwZz5zxzBnPnPHMGc+c8cwZz/zn4JkfgPLiLwGaOe53jvud
437nuN857neO+53jfue43znud477neN+57jfOe53jvud437nuN857ncU9/sBAJzL+QSldXGyTLNm
kTSb5SLf5OWiPqmKRZau8mxVlvlyVR5MWrLZs272rLtU3PP70q/uO9fs5X34dhmv1+bDdy3ZL/eU
FG2eS+a55Bq8dC+bRnGX8T1wMx9M9sfLVXvfE9R7Mi/vMjXsWyY6ZNHtCsitd2niA/GaP4QV93I1
LrM6Xa3T1aIuspNFb19aNFWWLvKmOT6pVvnJatVcYzL7963qvhv3snPdLnV+F/r8g5nM9/WC1zJK
1G3hweZ80T9h0Ytw/zl7dbQ31vo/eeB1ysGXSQDx0fXgQ3i56+y9v+d04zrLuoOzG17uobD0dtit
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
Cg8DZ+3AMTyw2w/sjwM75iBqFoOcFYOs6KHQxn/IO/lY9fAlKhqDnFQDri8GXCENxIsdiAA7YF8/
IGYbcro0aNN4Qsz9dx+uTxQ4USlwRVHoljkmShIViZpEQ6IloZ/xvvzQIJnfA6LGAfnhkMv3yZG5
e97ToECDAg0KNCjQoECDAg0KNCjQIJHtjYmexEDCkfAkAgk6KNCeSHsi7WF09cgaE7Qn0p5IeyLt
idpBx3pd6dCcMHRWB+2NtDfS3kh7I+2NtDfS3kR7E+1NtDfR3sS7Eu1NtDfR3kT/JdqTaE+iPYn2
JNqjEwz/ZIM40Rp0iyp1WW3lR7ycSNzjIbfu1C9537a5pq4z4nEPqA/ZnY47os5Efn4qYHde5kWe
LXPaZpFT1sUipy7yZU7XLXLaqngtp1rkdHm5yOnzZc1907yWs3hXkS3bU2TVMmf3YYuc3Z9FTlWU
y5x+0ebitT4s6tfqqavXyrT1IqdZ1lxWy28vq2YxOlW2fNfuoWqZUy2+otp10DKnWZYp60ULq6pe
vr1q29dyFmNR1flivHYPLd/VLeupd3mLnLbKljl1v8jpl6Nc98tebbL6tZxlm5ti2YfNa6ugKZe9
2tT9sp52OX+adjl7m27Zq023XDtN1y/6p+nz13LK+rWc5bv6Zc83/bLNbdYWr+UsnmrzcvlU3i2+
oi2Ws3eXs6y5qJvXchbf1ZbL72rLdjE6bbVcBW3VLeZGWy/XTttk5Ws5y+9q+mXN7Wtf2i3r6bLl
DtlV2eIrurZ6LWdZ846QbZc5yx2y65frq39tB+jLclFP/9qq7Otm0ea+WfT8qI2VLXKqLF/mLPbV
XU5ZLnLqYllz3bxWpi8WOU3RLXK613L6rFrmLMaiyovFutjlNIuv2D3XLnO6RZvzOnstZ7EjVXnT
L95VtIt9tSq65duLfrE/V7sNulvmLEdnt2Uu3lUuZ9SYs3hX2eXLp7rlWOxyqtdylm/vi/y1nEU9
u8mSLXMWNEBVlYs1uMupX8vplk9V/aI9VVe9lrMci91Dr+UsR7nO69dyFrtxtTutFvU0u+WzyCma
ZZl6+a6mKYvXchZ92HR/nkRX63E8ux7CcEXOjw8fvYFs4CratRvQg4fbe2dp3mW5Tt+3ULrnJn1+
d9NRE0Jell3i/kve/0YKd3VC+Zng7Foonv1vEfNFBRz+J2PS6cxZnHg7viF/LWdxdrX58rxtyyUV
s6Pus2VO93pOucxZnsDta9TQLmf59mpJvbZ1Xr6WU72Ws3xXveAtdjmvfWmzpIvbtq1fy1k+9Rq9
1ravfWnbd6/lLNuz5Bt2Oa+967UxbfvXvrRf8HlVl3XtaznLMvmSnu3KJSW4y6mXOctv7+ol7dPV
7bJMs8B+diTdkvLql5zWLmfBC445+TJnwQdXM3tFyymq13KaZU77Ws6yD/uuX7anX86fXU65zHnt
7X2x/Pa+eu2pxWqqs2zxXbucslrmVP0yZ4FbjDmv1bPgvcac12pe0NdjTrPIyRf86y7n9TLd8l15
v/zS5VqusyXvvlv/ixHcPZMtvn1X8eKpIluslF3OYk+oi3zB69SjEezpnPK1by+z5VfsmPllTrXg
kOqyWcyxesc+L8ar3m0cp3OafLEq66ZZrIu67RY8St0uEdkxZ1FzVyzHvauW87Crs2WZerFyx5zF
d+1Y02U93YIbG3MW7dktr/K1nPa1nEWv9vniTBlzlk/lC5y77pdIWN2X2Ws5rz215CnrvnqtTLPs
sb5Z9s8uZ/nty5O6yZazdzcRFvNnl7N8ave/W+YsnyqWp/CODV70c1MtMdpmN32XOctx3zHPy/bs
uux0rzZNsVhxY86izU2ZL8uUixm+y2mXOVW1fFdVL+up2mVOvdjrdsurKF7LKZc5C3pjl9Mvc9p6
+V3ta2WW2GHzGtK8qzhftPA12qbZHZ7FMmfZG12+2KOarligZU1XLmbvLmcxOm1WLnbatij/PPEv
QHEw/092QbqDfwVAXDlb9Dfow/m27TxY0FWzcdVsXDUbV83GVbNx1WxcNRtXzcZVs3HVbFw1G1fN
xlWzcdVsXDUbV83GVbNx1WxcNRtXzcZVs/HaazZeuXuxt4gwuS+umy5Kg+iSwxK8s/TmgoQrq6bU
qim1akqtmlKrptSqKbVqSq2aUqum1KoptfeaUlfAT12kv+UrNj27aHfS2f56UH1jT4zX3u7q0hws
Z7fcwXS2Opi+URvbNbEpvVQ3sbdkjV97FHI98S7Ysjy/aRTctfOFfx0iId8c0cs1i55h0pEXrx4e
P793fCwSksvwLb545b/+32dPHh9f64jNa+Ci9dzdK05zDWV0TTbjqQvGzHvbZ4+Pnz/fzcm3eezZ
8dMnz1787cPvrALxZovuf33dGQX3p8+J2xwX6u971Ab+/Pv1loeTupVhedbQOpfHMudF+59s9y+/
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
1a9Y/YrVr1j9itWvWP1Np+r3S4P2wqj6m6tFW64WMlfZD9eXqr/ZK//2rvjbvtLXFb6/FjIXQtXf
vpW+nuu33EKm3XcLmfZfV/5l12B9t7fVQqZdLWT+53zfZ6nbOS7r2yJ1a1ep21X2w7XdAW74yr+9
K/62r/R1he+v1O0cV/ltPtvXc/2WS93aa2UhczlUfbZS9TcPnWtXC5l3IHuzm03VZ7eaqs9uOVWf
rVT9zVvlt/lsX8/1W24hs2L1K1a/YvUrX79i9StWv2L1K1a/YvUrVr9i9Tedqt8vDdoLo+pvrhZt
u1rIXGU/XF+q/mav/Nu74m/7Sl9X+P5ayFwIVX/7Vvp6rt9yC5lu3y1kun9d+Zddg/Xd3VYLmW61
kPmf832fpW7nuKxvi9StW6VuV9kP13YHuOEr//au+Nu+0tcVvr9St3Nc5bf5bF/P9VsudeuulYXM
5VD12UrV3zx0rlstZN6B7M1uNlWf3WqqPrvlVH22UvU3b5Xf5rN9PddvuYXMitWvWP2K1a98/YrV
r1j9itWvWP2K1a9Y/YrV33Sqfr80aC+Mqr+5WrTdaiFzlf1wfan6m73yb++Kv+0rfV3h+2shcyFU
/e1b6eu5fqMsZI4fHz45uv/47nsPj+9uD19tHh1sHjx5drx9/N7xr4ebB8/GnwfPNkfHu2LHmwfP
D+/UTZb/596LRw/POlzp/sPjsw/TOzToX//vsyePj99kNfxFX06DMvbkm3zn8PjVB7vibzMjz9SO
s37eNL3HzHvbZ4+Pnz/fTYaLGa//9ba3msivf/R1/9x3mM5v+enPjp8+efbicjvA3nkl3TCWeu/g
2ZPfd0TYc0nsXrV5ce94s3vkvXv3n7948uzV5sWz7W+7AtuH72VZvinOfw97g/3rzv3HR8cv/3aQ
LnuE33z3fXbeTXiXefkOk+B/Tdq3qfKfp+wbnnQ2Uy57ab3difzsKlv6dnvTuZ9Ih08ePXry+L1f
X9x/+PxCVulfkbL//LZ52+4ev9iMPbC5//jkyX+e/3pwYefFojMuYxDOobl/1T+X0fS/5VYusw/f
lEC9qOnzRk24tI4549Z9uNuCnu8P0/RX7bkSgu2vJvfhw13lmx3r/fzeyIy/ePLg+PF/Dw6Os6OT
bbWpjovtpurqftN3+XbTlcVx0XYHVVMdXT5q8NZNvYKF+9cg19mb/H+Pti/vbO8e/zf7v9fxkfz/
tg8fPvn9zr3j7e7kf/7fl5vfy8P/gZmcC0ry7zKdeuO/y/DnOy8IMsz/dSt78zKm6edffPPh5599
fQZY7q865a86b+raNxiPK+jdvxzli0ZA1+7+q+6+0v14neRXA/OvE/ySJvhfkkn9wWHWdwfZ5vgg
P9xUR1m22R5X5eagPDnY9eZB2x4e7glFd5am7hlFd5Ym/wMNcoEzeB+otP3uof2ivJY74Jn67pJ7
bI8op+vUXft3MHRVfdTsemVT9G2xO2OzdnPQnOSbw7aqTpqT46o9qffkYDhLU698Jb++9Z2l2efG
oJ6LAeOlsvv/uNhvco/uGR2zTtXzpHnWabpfyNSZxuMKeveGIlPXsbuvPzK1TvJLQ6bWCX4ussZq
2+84snJzktUHm2pbHGy2bdlvdrll3eT1QX/Q74us8QxN3UMG5CzNfivs5Vxm8b4wFfvdS/u3bpuT
su2Pdx3UdCcjLr/tNv02O9q0/VGxbdqsKk4O9mTdnqWpe7huz9Lsi+If8hsJHNycHt0z4GCdqm+l
471r9P3Hx8+P3zu4f7f+88/mz1LHmz8fPnw+Zp2//tob4hjrqnkrVdJ3Gu8zGB1dPAd/poG/gmG8
oYDJdezu6w+YrJP80gCTdYKfB+N1uM2Lum6yTXGQnWyqw2rXi4fl4aZsj/ttnfddcVDsCeN1lqbu
IeN1lmafBxSQX2vAZL97af/WbX50VHbH2+2mPszLTdWf9Jv+YFvv+qsrjvPiKDvq98Wo4ixN3TMO
9CxN/tvZWNxwo4riX7eyN6+j6Lp4jXI603isRhW3ubuvGyd20yf5uThJeaO1ccX+Vc4Obr29Kfa6
uvdHbn+UHXbZ8XZTNAfFpip39XXHTbXpijY/qI+yrjzI90Vuf4amXq3fpAt0LXNG6fcZuugfCL4r
sWA5f/9I57SNXR6tvt9Dt9+mNWfqu0vusQuln88umTqrq6w3WUL74rnqZk6YvZVuPrtaQvLNpvvl
N/TNiJmy7U/qpi43237UU+ubfrNtm2JzuC3L4mjbHPQH+wIjnqWpewj/n6XZ5wZ+3QqDrZvTo3uG
eq9T9Twp6XWa7hfqfabxWA22bnN3X3/Ue53klwb8rhP8PBiQrDzKiu5wu6nyrN9UzcnBpj8p2k11
dNgfHRzX5UF5vCcMyFmauocMyFma/VaI3o0y2NrvXtpD/aOsOdlu+2bTZ4e73S87PNwcdE21Oey7
/Liuj9r8oNkX/aMzNHUP1+1Zmn1R/MPNNNi6OT26b+py61Q9T3W5dZrul7rcWcZjNVy6zd19A9Tl
1kl+aRpj6wQ/Dx/EXbfNmuOTTVl35aYqi37TNQfZZltWBydl0eVtvy+uJs/S1D1kQM7S7PNgia+3
4dJ+99I+anoeHudH22azPT452lRNd7Lb/Q7KTXFQ1P1B0dRldrI3mp7/3NR9iwZzhib/7Wwsb7jh
UvmvW9mb15ETK1+P3nCW8VgNl25zd183Tmyd5JfGia0T/IKc/h90fZY1R5vDwzzbVLu+23R9dbA5
bvq6afptU/TbfXH6f4am7psX9TM0+R9okOsXDeaNqLT97qH9Nlk5U99dco/tcTSYfe6uPXTq2jb9
4cG23R2vZbWp6pN8c3DUnGyKanvQ13XdNlW1L05dz9DUfXTqeoZmnxuDeiuMC25Oj+6bU9d1qp4j
zbNO0/1Cps40HqtxwW3u7uuPTK2T/NKQqXWCnwcDUh9uD9uuKzbFYVVsqsOm3Rzkhyebg6w5PDgu
+/6o3Bfnpmdp6h4yIGdp9lthLzfKuGC/e2n/1u1JfnhcH2Tl5uBw12nVyXG/OWgPt5u66qqmrtrm
4HBfdHvO0tQ9XLdnafZF8Q8307jg5vTongEH61Q9T+Bgnab7BRycaTxW44Lb3N3XHzhYJ/mlAQfr
BD8X4ODg5HDbbrPNtjv400Sj2nTNcb6pT+oi74uuPqz2xSvBWZq6j8DBGZp9Hizx9TYu2O9e2kPg
4Lhpqm3bbfqDbrupyvxgM+Irmzo/6Q8OD7rjrNgXjYOzNHXfOLEzNPlvZ2N7w40L2n/dyt68jpxY
+zrldJbxWI0LbnN3XzdObJ3kl8aJrRP8Yii67Y7U3R7k9WZH6Wab6riqd/15km366qA8OjrqjqrD
bk8ourM0dc8ourM0+R9okOtnXPBGVNp+99B+Gxecqe8uucf22Lhgn7trDwMX53WbHfbd5rA4zne9
dXSy6bOi2ORH2+qorU92PbkvrP5ZmrqPgYvP0OxzY1BvhXHBzenRPaNj1ql6njTPOk33C5k603is
xgW3ubuvPzK1TvJLQ6bWCX4ukQuKts2L+mjTH5+M8R+6ctOVx/2mOzoqq7Ktmqxr9yVywRmauo+R
C87Q7LfCXm5W5IK97qX9W7fHfd+Xu01usy3r3e53kh9sumy3BTZF1x8fdN3R4eG+uKs5S1MvrYMP
nzx69OTxewcPt48f/PnI/3f/8dNfX2yy//57yP/t8n8Xfpf4RH7+7Ys/E8UPeh1KSXzBdU5iLPhk
vCiafxdlWeb/Lt3ssp9f1n1x+rKZXzZZeeoy705dFqeqaqrThetsftnmXA7lv10k4UkEEonvrcnR
p7SEPirFyvfl5wP5+VB+PpKfj+VHOrD8VH4+k5/P5Uc6r/xSfr6Sn6/l5xv5+VZ+vpOf7+VHBqH8
UX5+0pbWfF/NZ9V8Vq3NvqPXTSaJrfwcyM+h/BzJz7H8nMjPXfm5Jz/35edn+XkgPw/l55H8PJaf
J/LzVH5+kZ9n8vPchifPino+XHlWZYvrfHFdLK7LxXW1uF7W3yyu28V1t7juT1/Xi/bVi/bVi/bV
i/bVi/bVi/bVi/bVi/bVi/bVi/Y1i/Y1i/Y1i/Y1i/Y1i/Y1i/Y1i/Y1i/Y1i/Y1i/a1i/a1i/a1
i/a1i/a1i/a1i/a1i/a1i/a1i/a1i/Z1i/Z1i/Z1i/Z1i/Z1i/Z1i/Z1i/Z1i/Z1i/Z1i/b1i/b1
i/b1i/b1i/b1i/b1i/b1i/b1i/b1i/b1p9uXZ9niOl9cF4vrcnFNe4Zc9r6ck2eoSTQkWhLdqUNL
duA8cteT0Ir/7XQb/HeU06v4iN1frz+2FnXV6RnbVTYjhuLfricxkLBbnkQgEUkkTfiMRE6imN5U
n17Lu+t8cV0srsvFdbW4rhfXzeK6XVx3i+vexubfiUFIFQlGIzFQqSPRk7DHh6nepjz9HU15+jsa
W6NDMUBt8NZAjZGXRWtHIMEEiDwVaWK0WxSOUAKR+RMoE+ztFA68NNgXFiRK6qGnYm/f1Bf5qb7f
XbeL625x3Z++LrLFdb64LhbX5eK6WlzXi+tF+4pF+4pF+4pF+8pF+8pF+8pF+8pF+8pF+8pF+8pF
+8pF+8pF+8pF+6pF+6pF+6pF+6pF+6pF+6pF+6pF+6pF+07TFX2ZF4vrcnFdLa7rxXWzuG4X193i
evH+xXwqF/OpXIxXuRivcjFe5WK8ysV4lYvxKhfjteAX+nIxXmU17cK/y89L+flDd9KWjbhlI251
I/5Vfl7Iz3P5EdK0+JNQ3W1XsmONiU4TsozHRNKE7AJjDmVSzi3KyP4y3qrJKUlEbrXkWBl7e0FO
RsJxqyLHylBPonDgFZGmJvsKe3zgljWMw6jlwBrIGUoSBQl6d+CYG3TfFPakEB6jEB6jEB6jEB6j
EB6jEB6jEB6jEB6jEM6hED6iEK6iEB6jEI6jEP6jEG6k+E1+XnHGs0c7tm/HRuzY/Y3rc+z1zkgE
9nrHPu44V1zFl3YkIAMGJt1gj3MwODsMMxL5jI5aMip5n1XLjG6RkWfLjHyZUSwzlpWe3jfGjHaR
USwbVi4rLRc0XF8t21G9VmL52mr5cfXy4+pliWb5Lc2y0nZZol3W0S3f0i2b3i2b3i8f6ZePLGjk
IlsQucXENeymQaXzQa9tthazB4oFGb/LqJYZE+Es3HYuW1ouayaXFZTL5pfLYsl1sciemcvKy3U9
6ZKQpZqfQEMznwcoXs+e4FkXiqHsEg2JlgRLxrNkvNUz/5xywTfvMqplRr3MaJYZ7TKjW2b0i4wF
+zyCT8uMYpmxbGmzbGmzbGmzbGmzbGmzbGmzbGm7bGm7bGm7bGm7bGm7bGm7bGm7bGm7bGm7bGm7
bGm3bGm3bGm3bGm3bGm3bGm3bGm3bGm3bGm3bGm3bGm/bGm/bGm/bOlyYZbLhVn2y5b2y5b2y5Yu
N5BywWXvqNdsmZEvM4plRrnMqJYZ9TKjWWa0y4xumbFsab5sab5sab5sab5sab5sab5sab5sab5s
ab5sab5sabFsabFsabFsabFsabFsabFsabFsabFsabFsabFsablsablsablsablsablsablsabV8
pFo+Ur32yPLjqmXT62XT62XT62XT/zwK3lKokf93qmbZ+uUBUi0PkGp5gFTLA6RaHiDV8gCplgdI
tTxAquUBUi0PkGp5gFTLA6RaHiDV8gCplgdItTxAquUBUi0PkGp5gFTLA6RaHiDV8gCplgdItTxA
quUBUi0PkGp5gFTLA6RaHiDV8gCplgdItTxAquUBUi0PkGp5gFTLA6RaHiDV8gCplgdItTxAquUB
Ui0PkGp5gFTLA6RaHiD18gCplwdIvTxA6uUBUi8PkHp5gNTLA6ReHiD18gCplwdIvTxA6uUBUi8P
kHp5gNTLA6ReHiD18gCplwdIvTxA6uUBUi8PkHp5gNTLA6ReHiD18gCplwdIvTxA6uUBUi8PkHp5
gNTLA6ReHiD18gCplwdIvTxA6mpZabWs1EC1oRT0pRR2pBR2pBQkpxQkpxTmpPxDsfoWMWeLmLNF
zNki2FWgogSfKEEsdomKBBJelSOUyBFKGPoSLqeEyynh7EsAjxLAowTw2CUSsmPkC472ONrjaI+j
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
IDUMv0qVKn1/ypMI6XWuClQ0DM/Jls8OKk3/Ve7ONKDbrp50JEQWHbTjP6UO2dSCTBi4pkGQJg/z
NAhWttt81F26LHtverZJX/6SYto0ITRUijiwxw1CIQlkNQhcOAj+52GbBoAyHz7jBlYL5qA7oQ+R
2FVb5J0M4QtK6Ku35wqJXGqk1TNq7Zwh/OpZQk2sKjyrCs+qwrOq8KwqPKsKz6rCs6rwrCo8qwrP
qsKzqvCsKjyrCs+qwrOq8KwqPJejwnP5Frtn8Qm36vqsuj6rrs+q67Pq+qy6Pquuz6rrs+r6rLo+
q67Pquuz6vqsuj6rrs+q67Mfuj5XiJ28nW+pbbY9qdrjo822Psk21bY42HTd9nDTHxZ9k5VNe9Bk
l+cL7PDh8fbx5vmL7fN7Y4NfPHlw/Pi/2cHRQV03o9OrttxU5WGz6Yqu2mR5Vm0Pj462Vd+eVWHq
i1cv7j15/PXhs/tPX7ybE7G3bupV+bGamk6tb9bu/3u0fXlne/f4v9n/UcGd3ee/+PX5f8ss/7/t
w4dPfr9z73h7dPzs+X9fbn4vD/9v/MIX9588/u/4xf8ud+t1t7ZSXrT/yXb/drvHMH75LuvPVu5+
d+3c/R0/fffzn//s/lird+mpE56++neZTr3x32X4850XMhF23/evW9mblztXLyXC7+dffPPh5599
/ddjOe+T/++vxuCvxmoayTcY/isYzL+cVIe7Hnzx3/xSglC/0Zrb6/jVZ1SM/ceDe52MfzUZL98v
5yVF+z6PafM/z6F17zrP7ecfldW9qth4BfoSbElSkGJMCNuefue6JTGQ0GdeCJf1m6rTqgv4QpV8
iUKUVFljTJDTqpKtRHERLHqsIVJQeaiX8vMHNVKR8lxeEz495cGOhALI9qjeeMS18KD+Jdf2apUV
POGGfhUgU/iAV6tasfbTb/LzmMc8iYqKUTseehLas6+41iH4heuChDDU6RlVCT/oX9EdgiqKqGhA
FXxIcyHepEdjGY2hlN/yjXr9vfx8JD+fyo9guaLLMqhmuzk1F2FYEF2PIQGQK+eKPngQCdqQ9D2f
y8+PU7O6zMDTAYz0nvx8QJ3A8AoCiAJ5KLQTTuTnJ/m5Kz9b+flafg74XEVfj+XnUKr7UK5wKZ9Q
7VU34YpeiCJ6QFFmSNo9XwpeqDXfl58v5OdjapLuSXbdzjugNp02ERAGFIucNhS9lYCWihMRopP3
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
G5WL5VpZRrTt39/Mcr45DTGnIeY0xJyGmNMQcxpiTkPMaYg5DTGnIeY0xJyGmNMQcxpiTkPMaQhM
Q1zQQra5MOitHTU4FwVd1oGU8ri9P4Kybh7jsW/08f5hc9dVNl77sRvv/Vbu7EIOpDwn1Es9kPKc
2F/HYanlO32k7GX30oV+grXU7TEO2TzZ4/2x054eN7ciT5toD37s0CeVh0s5UvacUN99L/O6PCfu
r70u6zdYiF0k/s/2+L/yJpRxb+442a87NqH92zLMW+Zj209z2LcOr3Or8LIx+NU3cmy+7ls95Kzq
Te5BOqzD7dxUuluH5OsgPWsjN7n9Y93WuV9/ODeerhO3y9A+JUO7r5iNXj3IbYf7nKO7yW16N7kF
btlbeLUcb/Dp+GpMWF6NCcqrMS959Z85AL3KB5EPdvkgN+2NPPz5wfrDWSpbbA+5A+i5JTfJ3eTQ
dnTO82hVs6XmA88Hmj8j+cDyQc1RZssH6/i150g08sH6M2sNLy0814f8mRQMXedgd92VuE9Tz3UO
PQ+5E+ywDmZ7Pkg3zyFrV4f1t5aR6X/n11nUWmoHS61mlGRuUqVyk/KTm1WOUnOQnRW5m9wodZPF
upu1jleX8dtNbou6yS1Yz68ohTr7lOPs15HrUgEb4+7dz/OqHK9vN0qUu//MvzFewpiRvdkNl89u
1Mp2Y9+f/36ZZrRlbvJn+fXoxN1QCu1+Pf4Zl+vYNbpP79PzA8sH1/nA84HmgzFGHLPJz1/nprVl
82TPzZSL8Wetd+gwu+lQpeioiunH+UPjo6nDeaejKqZDw6JDJqdD96ajLNd+NW4oY26qjAF1G13Z
RlmrjT19u3GyxH4M1dvYMNlG7y4zGPtlKvOX+U5kZeaQ9ZybnOu+yf2Qu9yctszClVGHLaM4W36c
E1k3+SCn5va5w3mZx8uK6GGdql/kXfG03G/GHNlV2jafP0BX+WCZIR+TIGNC+CblPze6fj6WLbo5
+3HIwvkhP4lLcaymayPLbjdZZLvZjfrp7javrWXKOysD/ml+Y5ni/vLduxmbP6/7uOj66Pf+H3nV
5MqB5UgCHWYc/Tyvi6x/7nJ2epez00uJTRcd0qi2ttulMLlUONs4a2a/zFxnIbRlGbVldXg/prH3
/y+bl2mNf833PeeQb7I+f5NTxzc5F33Iot8rYK0PctvwLsm1z4MWVqXKuud2twIrT1zYZR1v3Z29
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
Q+DTeI5d9j971V1OPnHPLScxey2nP1NPrvBjS5y2qJ7+LbXT59E4bbGTe93x4yWClnracpJvHFv6
aUvY6esK/MzpDKBjvvj4xOUkQuQ2foSnnLac9kYrJ/cob3Iy5+Wtnly9x5aTdye29eROG1K/JP6b
OZZ3psIzFZ6p8EyFZyo8U+GZCs9UeKbCMxW++FT4ggp6s0Dy1k5Tm8WRyzpzb/ugj3b/0Dd38eAb
PQJ8c/vY+kbs7t5ajdtyeymnZp4T6qWeuXdO7K/jPMjynT4187J76UI/wff39dGsPmz8LmSj9X67
aff9aRP60JvdNn+0pwv5BJ8T6rvvZV6X58T9tddlfIMFKUXi/2yP/ytvwmf1hpb3xD99L3vzO7u8
J5BSnfWmvIMufi+W97wf3f3u78zzSr/kcdq8yt9glncn3ettf9hst+3YlU/lbnN3G7oR8f7gFtv7
p7sLyfLOCfUSs7xz4v47eckbvJYvIXO77B66wGzs9IZ4Vge+5W67oGzqu9RdF8qJW90eeyduN/bk
jxvt90+bu4f7u82tPN6Wbbs39UvhxDmhXup83jmxv7Yx7Bs1XF/K3N/706OXmNvM6/V15kHzWr3A
Gayz3pR30MXv6QzWd7G735MZrHmlv7UZrHmVv7aRSd/e3rl53XSX42DurummPWrZ9Ad9vNPmt317
KSOTc0K91JHJObF/qzmay/Zz/s03+OVnH97//qPHL6cXnl9efkq2Z/gZ725ffHj/gxcvP3u8/fj4
Jr74w6efvHj8hucUv1dv34XeWp7641Mtj21z7CDb6P3d7ea2Ptrm/uHhvtltfz475mLUv38/1MtV
//792N/UsKe8l5Me70+PXuKkx7xeX+ekx7xWL3DS46w3ZZ7K833u7vdk0mNe6W9t0mNe5X9nTPdv
P/2Pvz/aXAL738dR53GwecZo87PH//78+Cfy383vHx//cPvRh3983Pz355++vF32N7lZ9dc1cHqw
bZe4f9jcR4uNPk909Si3m6e7u4fto94/PT5cypzMOaFe6sDpnNhfx6D+u73747J76UKnPpo/3ttj
kc1Dv/PjvVoeN7ft0TdP5e7ObvW2eruUqY9zQr3EYeQ5cX/tddne890f7Z++l7351q7Vb5pubN/I
+/y6R1cNeedZl8bcg/J97u6LTvPfeY4/P4WXPNCen8A3mAfHYykPTWxjdne70a62udP+sJHjyMH6
XQkXuZA8+JxQLzEPPifuv5O5fff2x3yj3Paye+g7sD/mrA58y912wftjLrm7LvW8m+1Tkyd92siD
1WOX3R2RW+vdZvu49cd4Pkzwbnsp592cEerFjkGPL/fN9OO3mXt/fcf4nPGWvLbJi+/eNoq3fFrQ
e/NmXGK2Ny/115kZzmv1nS+e4fD7rDdl7hj6Pnf3d3LxzLzS3+Gc3rzKX9tYzR/U62Mrm/tqDxu9
bfebZsU2z2b18vSk0vX2QsZq54R6qatTzon9W81aXfaOofeqly70E2xWxHrpx06Lu42qtk3326dN
u316vPde5fFiThc+J9RL/QSfE/ubGl28nxtz3p8evcS5hXm9vs65hXmtXuDcwllvytyY833u7vdk
bmFe6W9tbmFe5a9vZHK7fVB7ut/cbkvdaD0+6qJ1cxzm3d8+axz99lLmFs4J9WJHJmfE/jpGzd/t
nS+X3Uvv4hP8/Bc397f3Hzx+peNeNX5lWkbj8fFJZSOPd8eue1Dd9Gp1s93qg+lWH8s2/veHnzx9
+n9/UV98+PDPP395/89//uDhn//rw59++KOP7z/++V9udz988cNPrj94+OVPPvqlHD4+/swXP/zd
H7b3n/z8o3/d/eiLX//yJ3+6E/vLr3/eP/31Lw6///Uvf/SX4/fvfvHFjw6P/3L9h+fn+OGHf/rw
Z5/86A//urv64sf/cb3/9S9+/Nsf/+7qzz/dXf3pxzefbn9y/P+Pv7j+l//8+b9/+Mv/+PPdD3//
5w/u67+//M9f9N/f/uLXf/j1L/79w+Pf+uXx3xc/vNnbD/c/++hXXxyf62avP7z54Z9++rv/0p/+
7uovP9w//OTnux89/PKX2xePXzzHdijH+La/lA8++tUvfvbR/Sc//vCnH708Pv9PPvjVse1f/+sn
f7z75Gdf3Mmfnp//5a9++duXv/rFw0f/9p9XH/7y59sXP/z453r/zz//3fE1//6X9Wd2P/rl87v6
s6dfyeF3t8f2H35SHt7GnXC+5Rf1ln/9p/4rb9b9/WZZzf6NDHxnvN3HJ/3si+d73OP/Pv+dv5BL
9VvFfgF9PoKtT3d2/1TL5phdxka38bi5a88LC/u2PG7F76rdz48YP2L77+5ddb7lb+Mtf3Of8Oef
+sHdZ5/+6cVxCDYefPjJbzcvP3jcHH/lBx98+OLlp599sXn52e0fjz9w+9EPPjgOMu6Pl9hvH3/z
+MfHT8bfOfeSPHz40eP5l+Lrie2f/n8/+fSTx7/fE39FIPu72z/cfimQffHBh08vf/O7D1/84MXx
P2mR/eCYrG4eP/vsOYP9+MMX92+wK15TcOf2xdfl6F9m5t/klV598sW/HH/82wxxv+avn/tSvrLQ
99j4we1nxz57cRxSvJn36W/9tW8zGFpf6oW8yL/9lz57/MOnn718u526/s2/1bWv5+7xd3d7fqu3
/S3E9h24+F/TTe0MyH22efnhx4/jYNavzix8k9vYL778lRffAF9f91cv6vb1Hftk/+M3zW//wf26
9/Tvv5v3n3788aef/ODzlx9+9OY+hid/5A2j569NVb7Z1/d1f/FdcPbNfEa+Xdr32deG8Q2e8/j/
rWzbbz785OHxz6/7tb3/t6i3gbZvODg4fUe/Q6GfXODvPJ9Y7rC/fXy5ef7rm+f5jf/z4vO7r70I
/9F09luT5zWw5K+90jd8q/3GKfIfPv3DlxOnlzct8VciOzf9+5vv+vm3u+Pwe6SuryFzfWOJ0d+9
aN58MvE3//D7MHZ//Qnv69VPRtR+L7ebe3l42Oi2PG26P/TNtj3d395puTW5vxT95Bmhztmet3mF
vobb8be5Eb9J1r+Vl3SmtPCM6/1rF5mUSzi+51sMS77dfeSvXSev+9567NN/em/ewXcwPfG1h+Oc
1VtvuY8uZP3pd6mr3sFl9ddP47GnXp96bKRK2Wjtd5u2rbLpT3cPj9LL3d3FbGU7J9R30K1/5VSM
MwL9Vje0y10d+g1v+ZfdQ5d2yz+rt95yH13oLf+Su+pSbvmP2p7kfrvdFH+QIxZvHza3x0A25fbh
qXm7b7JtF3LLPyfUi7jlnxPo5Y9C3uQt/7J76NJu+Wf11szyL72rLuWWXyL6tm312DOx3eixYzYt
7p8Xxfbbx2N7edBLyfLPCfUibvnnBPo6ctjv7i3/snvo0m75Z/XWW+6jC73lX3JXXcwtv9zdPpWu
G3v6Eot3D8eRkGw3rnL7ULb38iCXshP4nFAvrZr/+ScvHl/+5v7TT14+/vnlbz65/fhxUy6ppv83
4/vmS+y/9hZ/xlv3tbd4+Q6Oe+Sf3pseujgIntNbb7mPLhWCF9xVlwLB/lTunkLuNt3q/TFRiNtN
s9vt5v7pabu9q1pLeboQCJ4T6kWMe84J9Fvd0C65uvGNbvmX3UOXdss/q7fech9d6C3/krtqrim7
5DVlf3M48A9sQ3r9y8S+XZTf8Ejr28fyaA+xebwV3WgR29xJ803Y9v5h609dny5lKec5oV5ESnBO
oN/vUeBl99ClpQRn9dYcBV56V13KKLCWuJe4324e7LmP7F437TEeNk/SpPe7h2P6dCmjwHNCvYhb
/jmBvo4xznf3ln/ZPXRpt/yzeust99GF3vIvuasu5ZYf9x7l1h42UeVpo6K26fW2b/Q23EVr1X53
Kd7sM0K9iFv+OYF+7Q2tfgez/PpP700PXdot/6zeest9dKG3/EvuqotZ1nzvRZvqxpvebvRJHzZd
/XFz9yTaHspD14hLWdZ8RqiXsaz5jEC/1Q3tkms93+iWf9k9dHHLms/prbfcR5e6rPmCu+piNi9u
7/1W4mnTH29lo4+tbdr9Y908PLS7e72Vbeibmdj5dmuy/vThJw+f/mnzZV3j9unl42eb+88+ffFi
8+lnH/72w082t5//efP02fM3P7n944e//fJN/PIsmze3rOy19vRbOA7vrXb5610pd04Pfr9HT5fd
Q+9Nffub76k85315L8dpb7ws/4/cns67Y75X7/b7c3rm215Z8cYutG94ONXj8Xp4vNXNQ/S7jd63
Yz57e9s3d/rg8nDbHu4uZvHFOaFexBj9nEBfxwj0u5tYXHYPXdwBQ+f01lvuo0s9YOiCu+pSxuit
3T89eZONP0bfaJNjZvHwEJuwZlt9eip2/3Aht/xzQr2IW/45gX7tDS2+g2PJ+Kf3pocu7ZZ/Vm+9
5T660Fv+JXfVxay3u7X7rR2xWB+OA0e9ffRNe/Tn3npwe3jUp+19vZT1dmeEehnr7c4I9Fvd0C65
EveNbvmX3UMXt97unN56y310qevtLrirLibLL/fy+OB3m16ibfSh+uY4OIqN9hY1nguX1S4lyz8j
1MvI8s8I9Hue5V90D11cln9Ob80s/9K76tJOwnnx+R+eqxX/o8TwV6oI/99zpM/f/L9/+tOfyv9Z
g//fLz749POPHj44Pt2X33352eeP//vF4ycPHz++ePH8njw3vJ0q6F9fnt3d9Lbo5uHhcXu8ALZP
m7sQ3ZiVe/X62Hu84c1DF/mOfMdLoN/6rb6MlfhnBPo6hjrf3czgsnvo4lbin9Nbb7mPLnUl/gV3
1aUMBs3Fn6KWTfTnQ9ibPGzanT5tbuPB/a7e39nFzP+dE+pF3PLPCfRrb2jtOzgYbP/03vTQpd3y
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
A+MaGNfAuAbGNTCugXENRGsgWgPRGojWQLQGojUQrYFoDURrIFoD0RqI1kC0BqI1EK2BaA1EayBa
A9EaiNZAtAaiNRCtgWgNRGsgWgPRGojWMLJrYFzDyK6Beg3Ua6BeA/UaqNdAvQbqNVCvgXoN1Gug
XgP1GqjXQL0G6jVQr4F6DdRroF4D9Rqo10C9Buo1UK+Beg3Ua6BeA/UaqNdAvQbqNVCvgXoN1Gtf
Uu9iNsTO+uWsX8765axfzvrlrF/O+uWsX8765axfzvrlrF/O+uWsX8765axfzvrlrF/O+uWsX876
5axfzvrlrF/O+uWsX8765fe+fvnOD56dp7nO01znaa7zNNd5mus8zXWe5jpPc52nuc7TXOdprvM0
13ma6zzNdZ7mOk9znae5ztNc52mu8zTXeZrrPM11nuY6T3Odp7nO01znaa7f+9NcL9JA+ZW9lg0E
bSBoA0EbCNpA0AaCNhC0gaANBG0gaANBGwjaQNAGgjYQtIGgDQRtIGgDQRsI2kHQDoJ2ELSDoB0E
7SBoB0E7CNpB0A6CdhC0g5cdvOzgZQcvO3jZwcsOXnbwsoOXHbzs4GUHLzt42cHLDl528LKDlx28
7OBlBy87eNnByw5edvCyg5cdvOzgZQcvO3jZwcsOXnbwsoOXHbzs4GUHLzt42cHLDl528LKDlx28
7OBlBy87eNnByw5edvCyg5cdvOzgZQcvO3jZwcsOOnawsIOFHSzsYGEHCzvGhB1jwo4xYceYsGNM
2DEm7CBaB9E6iNZBtA6idRCtg2gdROsgWgfROojWQbQOonUQrYNoHUTrIFoH0TqI1k+JJttToh1b
CloELRUtihZDi6Ml0NLQgpgLYi6IuSDmgpgLYi6IuSDmgpgLYi6IWRCzIEJBhIIIBREKIhREKIhQ
EGFFhBW9WhFzRcwVMVfEXBFzRcwVMVfErIhZEaEiQkWEiggVESoiVESoiNAQoaFXDTEbYjbEbIjZ
ELMhZkPMhpgdMTtidsTsiNkRsyNmR8yOmB0xO2IOxByIORBzIOZAzIGYAzEHYg7EHIi5IeaGmBti
boi5IeaGmBtiboi5IeaGmDti7oi5I+aOmDti7oi5I+aOmDtiBuOwslOwslOwslOwslOwslOwslOw
slOwslOwslOwslOwslOwslOwslOwslOwslOwslOwslOwslOwslOwslOwslOwslOwslOwslOwslOw
slOwslOwjlOwjlOwjlOwjlOwjlOwjlOwjlOwjlOwjlOwjlOwjlOwjlOwjlOwjlOwjlOwjlOwjlOw
jlOwjlOwjlOwjlOwjlOwjlOwjlOwjlOwjlOwjlOwjlOwjlOwjlOwjlOwjlOwjlOwjlOwjlOwjlOw
jlOwjlOwjlOwjlOwjlOwjlOwjlOwjlOwjlOwjlOwjlOwjlOwjlOwjlOwjlOwjlOwjlOwjlOwjlOw
jlOwjlOwjlOwjlOwjlOwjlOwjlOwjlOwjlOwjlOwjlOwjlOwjlOwjlOwjlOwjlOwjlOwjlOwjlOw
jlOwjlOwjlOwjlOwjlOwjlOwjlOwjlME1MPKTsHKTsHKTsHKTsHKTsHKTsHKTsHKTsHKTsHKTsHK
TsHKTsHKTsHKTsHKTsHKTsHKTsHKTsHKTsHKTsE6TsE6TsE6TsE6TsE6TsE6TsE6TsE6TsE6TsE6
TsE6TsE6TsE6TsE6TsE6TsE6TsE6TsE6TsE6TsE6TsE6TsE6TsE6TsE6TsE6TsE6TsE6TsE6TsE6
TsE6TsE6TsE6TsE6TsE6TsE6TsE6TsE6TsE6TsE6TsE6TsE6TsE6TsE6TsE6zmMLYgb1sLJTsLJT
sLJTsLJTsLJTsLJTsLJTsLJTxsrOd3bw6yxGzmLkLEbOYuQsRs5i5CxGzmLkLEbOYuQsRs5i5CxG
zmLkLEbOYuQsRs5i5CxGzmLkLEbOYuQsRs5i5CxGzmLkLEa+38XIi9xA+erQV8HRN4KjbwRH3wiO
vhEcfSM4+kZw9I3g6BvB0TeCo28ER98Ijr4RHH0jOPpGcPSN4OgbwdE3gqNvBEffCI6+ERx9Izj6
RnD0jeDoG8HRN4KjbwRH3wiOvhEcfSM4+kZw9I3g6BvB0TeCo28ER98Ijr4RHH0jOPpGcPSN4Ogb
wdE3gqNvBEffCI6+ERx9Izj6RnD0jeDoG8HRN4KjbwRH3wiOvhEcfSM4+kZw9I3g6BvB0TeCo28E
R98Ijr4RHH0jOPpGcPSN4OgbwdE3xxbEDDbjMBzBYTiCw3AEh+EIDsMRHIYjOAxHcBiO4DAcwWE4
gsNwBIfhCA7DERyGIzgMR3AYjuAwHMFhOILDcASH4QgOwxEchiM4DEdwGI7gMBzBYTiCw3AEh+EI
DsMRHIYjOAxHcBiO4DAcwWE4gsNwBIfhCA7DERyGIzgMR3AYjuAwHMFhOILDcASH4QgOwxEchiM4
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
pyLbqch2KrKdimynItupyHYqsp2KbKci26nIdiqynYpspyLbqch2KrKdimynItupyHYqsp2KbKci
26nIdiqynYpspyLbUYzoFdRTUE9BPQX1FNRTUE9BPQX1FNRTUE9BPQX1FNRTUE9BPQX1FNRTUE9B
PQX1FNRTUE9BPQX1FNRTUE9BPQX1FNRTUE9BPQX1FNRTUE9BPQX1FNRTUE9BPQX1FNRTUE9BPQX1
FNRTUE9BPQX1FNRTME7BOAXjFIxTjOgV1FNQT0E9BfUU1FNQT0E9BfUU1FNQT0E9BfUU1FNQT0E9
BfUU1FNQT0E9BfUU1FMQTUE0BdEURFMQTUE0BdEURFMQTUE0BdEURFMQTUE0BdEURFMQDRoThcZE
oTFRaEwUGhOFxkShMVFoTBQaE4XGRKExUWhMFBoThcZEoTFRaEwUGhOFxkShMVFoTBTSEoW0RCEt
UUhLFNIShbREIS1RSEsU0hKFtEQhLVFISxTSEoW0RCEtUUhLFNIShbREIS1RSEsU0hKFtEQhLVFI
SxTSEoW0RCEtUUhLFNIShbREIS1RSEsU0hKFtEQhLVFISxTSEoW0RCEtUUhLFNIShbREIS1RSEsU
0hKFtEQhLVFISxTSEoW0RCEtUUhLFNIShbREIS1RSEsU0hKFtEQhLVFISxTSEoW0RCEtUUhLFNIS
hbREIS1RSEsU0hKFtEQhLVFISxTSEoW0RCEtUUhLFNIShbREIS1RSEsU0hKFtEQhLVFISxTSEoW0
RCEtUUhLFNIShbREIS1RSEsU0hKFtEQhLVFISxTSEoW0RCEtUUhLFNIShbREIS1RSEsU0hKFtEQh
LVFISxTSEoW0RCEtUUhLFNIShbREIS1RSEsU0hKFtEQhLVFISxTSEoW0RCEtUUhLFNIShbREIS1R
SEsU0hKFtEQhLVFISxTSEoW0RCEtUUhLFNIShbREIS1RSEsU0hKFtEQhLVFISxTSEoW0RCEtUUhL
FNIShbREIS1RSEsU0hKFtEQhLVFISxTSEoW0RCEtUUhLFNIShbREIS1RSEsU0hKFtEQhLVFISxTS
EoW0RCEtUUhLFNIShbREIS1RSEsU0hKFtEQhLVFISxTSEoW0RCEtUUhLFNIShbREIS1RSEt0SEve
leVzFiNnMXIWI2cxchYjZzFyFiNnMXIWI2cxchYjZzFyFiNnMXIWI2cxchYjZzFyFiNnMXIWI2cx
chYjZzFyFiNnMXIWI9/zYuQ73aT62eOLTz//7P7xxQ+eGz+4/ez49C/+z+9efJtf++zxD59+9vJr
f/lblFfPPP/32JmO7g20NLTg7UYKEUghAilEIIUIpBCBFCKQQgRSiEAKEUghAilEIIUIpBCBFCKQ
QgRSiEAKEUghAilEIIUIpBCBFCKQQgRSiEAKEUghAilEIIUIpBCBFCKQQgRSiEAKEUghAilEIIUI
pBCBFCKQQgRSiEAKEUghAilEIIUIpBCBFCKQQgRSiEAKEUghAilEIIUIpBCBFCKQQgRSiEAKEUgh
AilEIIUIpBCBFCKQQgQShkDCEEgYAglDIGEIJAyBhCGQMAQShkDCEEgYAglDIGEIJAyBhCGQMAQS
hkDCEEgYAglDIGEIJAyBhCGQMAQShkDC0JAwNCQMDQlDQ8LQkDA0DJwbqNdAvQbqNVCvgXoN1Gug
XgP1GqjXQL0G6jVQr4F6DdRroF4D9Rqo10C9Buo1UK+Beg3Ua6BeA/UaqNdAvQbqNVCvgXoN1Gug
XgP1GqjXQL0G6jVQr4F6DdRroF4D9Rqo10C9Buo1UK+Beg3Ua6BeA/UaqNdAvQbqNVCvgXoN1Gug
XgP1GqjXQL0G6jVQr4F6DdRroF4D9Rqo10C9Buo1DJwbONjAwQYONlCvgXoN1GugXgP1GqjXQL0G
6jVQr4F6DdRroF4D9Rqo10C9Buo1UK+BevCmKLwpCm+Kwpui8KYovCkKb4rCm6Lwpii8KQpvisKb
ovCmKLwpCm+Kwpui8KYovCkKb4rCm6Lwpii8KQpvisKbovCmKLwpCm+Kwpui8KYovCkKb4rCm6Lw
pii8KQpvisKbovCmKLwpCm+Kwpui8KYovCkKb4rCm6Lwpii8KQpvisKbovCmKLwpCm+Kwpui8KYo
vCkKb4rCm6Lwpii8KQpvisKbovCmKLwpCm+Kwpui8KYovCkKb4rCm6Lwpii8KQpvisKbovCmKLwp
Cm+Kwpui8KYovCkKb4rCm6Lwpii8KQpvisKbovCmKLwpCm+Kwpui8KYovCkKb4rCm6Lwpii8KQpv
isKbovCmKLwpCm+Kwpui8KYovCkKb4rCm2Lwphi8KQZvisGbYvCmGLwpBm+KwZti8KYYvCkGb4rB
m2Lwphi8KQZvisGbYvCmGLwpBm+KwZti8KYYvCkGb4rBm2Lwphi8KQZvisGbYvCmGLwpBm/KsQUx
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
FYdJxWFScZhUHCYVh0nFYVJxmFQcJhWHScVhUnGYVBwmFYdJxWFScZhUHCYVh0nFYVJxmFQcJhWH
ScVhUnGYVBwmFYdJxWFScZhUHCYVh0nFYVJxmFQcJhWHScVhUnGYVBwmFYdJxWFScZhUHCYVh0nF
YVJxmFQcJhWHScVhUnGYVBwmFYdJxWFScZhUHCYVh0nFYVJxmFQcJhWHScVhUnGYVBwmFYdJxWFS
cZhUHCYVh0nFYVJxmFQcJhUfJpV3pR6dxchZjJzFyFmMnMXIWYycxchZjJzFyFmMnMXIWYycxchZ
jJzFyFmMnMXIWYycxchZjJzFyFmMnMXIWYycxchZjJzFyPe8GHnh6tFjlOhHsDnA5gCbAyQOkDhA
4gCJAyQOkDhA4gCJAyQOkDhA4gCJAyQOkDhA4gCJAyQOkDhA4gCJAyQOkDhA4gCJAyQOkDhA4gCJ
AyQOkDhA4gCJAyQOkDhA4gCJAyQOkDhA4gCJAyQOkDjA3QB3A9wNcDfA3QB3A9wNcDfA3QB3A9wN
cDfA3QB3A9wNcDfA3QB3A9wNcDfA3QB3A9wNcDfA3QB3A9wNcDfA3QB3A9wNcDfA3QbuNnC3gbsN
3G3gbgN3G7jbwN0G7jZwt4G7Ddxt4G4Ddxu428DdBu42cLdh/NnAuAbGNTCugXEN488G6jVQr4F6
DdRroF4D9Rqo10C9Buo1UK+Beg3Ua6BeA/UaqNdAvQbqNVCvgXoN1GugXgP1GqjXQL0G6jVQr4Fx
DYxrYFwD4xoY18C4BsY1MK6BcQ2Ma2BcA+MaGNfAuAbGNYw2G6jXQL0G6jVQr4F6DdRroF4D9Rqo
10C9Buo1UK+Beg3Ua6BeA/UaqNdAvQbqNVCvgXoNjGtgXAPjGhjXwLgGxjUwroFxDURrIFoH0TqI
1kG0DqJ1EK2DaB1E6yBaB9E6iNZBNDhRHE4UhxPF4URxOFEcThSHAcVhQHEYUBwGFIcBxWFAcRhQ
HAYUhwHFYUBxGFAcBhSHAcVhQHEYUBwGFIcBxWE3cdhNHHYTh93k2IJ4wCb4Thy+E4fvxOE7cfhO
HL4Th+/E4Ttx+E4cvhOH78ThO3H4Thy+E4fvxOE7cfhOHL4Th+/E4Ttx+E4cvhOH78ThO3H4Thy+
E4fvxOE7cfhOHL4Th93EYTdx2E0cdhOH3cRhN3HYTRx2E4fdxGE3cdhNHHYTh93EYTdx2E0cdhOH
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
gxUcrOBgBQcrODjkHe/MQDmLkbMYOYuRsxg5i5GzGDmLkbMYOYuRsxg5i5GzGDmLkbMYOYuRsxg5
i5GzGDmLkbMYOYuRsxg5i5GzGDmLkbMYOYuR73cx8rINlMcoweYKNlewuYLNFWyuYHMFmyvYXMHm
CjZXsLmCzRVsrmBzBZsr2FzB5go2V7C5gs0VbK5gcwWbK9hcweYKNlewuYLNFWyuYHMFmyvYXMHm
CjZXsLmCzRVsrmBzBZsr2Kxgs4LEChIrSKwgsYLEChIrSKwgsYLEChIrSKwgsYLEChIrSKwgsYLE
ChIrSKwgsYLEChIrSKwgsYLECu4quKvgroK7Cu4qKKugrIKyCsoqKKugrIKyCsoqKKugrIKyCsoq
KKugrIKyCsoqKKugrIKyCsoqKKugrIKyCsoqKKsYbSqIpiCagmgKoimIpiCagmgKoimIpiCagmgK
oimIpiCagmgKoimIpiCagmgKoimIpiCagmgKoimIpiCagmgKoimIpiCagmgKoimIpiCagmgKoimI
piCagmgKohmIZhhtGhhnYJyBcQbGGRhnYJyBcQbGGRhnYJyBcQbGGRhnYJyBcQbGGRhnYJyBcQbG
GRhnYJyBcQaiGcaWBsYZGGdgnIFxBsYZxpYG6hmoZ6CegXoG6hmoZ6CegXoG6hmoZ6CegXoG6hmo
Z6CegXoG6hmoZ6CegXoG6hmoZ6CegXoG6hmoZ6CegXoG6hkYZ2CcgXEGxhkYZ2CcgXEGxhkYZ2Cc
gXEGxhkYZ2CcgXEGxhkYZ2CcgXEGxhkYZ2CcgXEGxhkYZ2CcgXEGxhmIZiCagWgGohmIZiCagWgO
ojmI5iCag2gOojmI5iCag2gOojmI5iCag2gOojmI5iCag2gOojmI5iCag2gOojmI5iCag2gOojlG
bQ7GORjnIJqDaA6iOYjmIJqDaA6iOYjmIJqDaA6iOYjmIJqDaA6iOYjmIJqDaA6iOYjmIJqDaA6i
OYjmIJqDaA6iOYjmIJqDaA6iOYjmIJqDaI5xnINxDsY5GOdgnINxDsY5GOdgnINxDsY5GOdgnINx
DsY5GOdgnINxDsY5GOdgnINxDsY5GOdgnINxDsY5GOdgnGMc56Ceg3oO6jmo56Ceg3oO6gWoF6Be
gHoB6gWoF6BegHoB6gWoF6BegHoB6gWoF6BegHoB6gWoF6BegHoB6gWoF6BegHoB6gWoF6BegHoB
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
8h0j3zHyHSPfMfIdI98x8h0j3zHyHSPfMfIdI98x8h0j3zHyHSPfMfKfzDHyWy5QfpiS15E2B20O
2hy0OWhz0OagzUGbgzYHbQ7aHLQ5aHPQ5qDNQZuDNgdtDtoctDloc9DmpM1Jm5M2J21O2py0OWlz
0uakzUmbkzYnbU7anLQ5aXPS5qTNSZuTNidtTtqctDlpc9LmpM1Jm5M2J21O2py0OWlz0uakzUmb
kzYnbU7anLQ5aXPS5qTNSZuTNidtTtqctDlpc9LmpM1Jm5M2J21O2py0OWlz0uakzUmbkzYnbU7a
nLQ5aXPS5qTNSZuTNidtTtqctDlpc9LmpM1Jm5M2J21OfkZNOph0MOlg0sGkg0kHkw4mHUw6mHQw
6WDSwaSDSQeTDiYdTDqYdDDpYNLBpINJB5MOFh0sOlh0sOhg0cGig0UHiw4WHSw6WHSw6GDRwaKD
RQeLDhYdLDpYdLDoYNHBooNFB4sOFh0sOlh0sOhg0cGig0UHiw4WHSw6WHSw6GDRwaKDRQeLDhYd
LDpYdLDoYNHBooNFB4sOFh0sOlh0sOhg0cGig0UHiw4WHSw6WHSw6GDRwaKDRQeLDhYdLDpYdLDo
YNHBooNFB4sOFh0sOlh0sOgg5MeG/NiQHxvyY0N+bMiPDfmxIT825MeG/NiQHxvyY0N+bMiPDfmx
IT825MeG/NiQHxvyY0N+bMiPDfmxIT825MeG/NiQHxvyY0N+bMiPDfmxIT825MeG/NiQHxvyY0N+
bMiPDfmxIT825MeG/NiQHxvyY0N+bMiPDfmxIT825MeG/NiQHxvyY0N+bMiPDfmxIT825MeG/NiQ
HxvyY0N+bMiPDfmxIT825MeG/NiQHxvyY0N+bMiPDfmxIT825MeG/NiQHxvyY0N+bMiPDfmxIT82
5MeG/NiQHxvyY0N+bMiPDfmxIT825MeG/NiQHxvyY0N+bMiPDfmxIT825MeG/NiQHxvyY0N+bMiP
DfmxIT825MeG/NiQHxvyY0N+bMiPDfmxIT825MeG/NiQHxvyY0N+bMiPDfmxIT8+PGFmOggCskFA
NgjIBgHZICAbBGSDgGwQkA0CskFANgjIBgHZICAbBGSDgGwQkA0CskFANgjIBgHZICAbBGSDgGwQ
kA0CskFANgjIBgHZICAbBGSDgGwQkA0CskFANgjIBgHZICAbBGSDgGwQkA0CskFANgjIBgHZICAb
BGSDgGwQkA0CskFANgjIBgHZICAbBGSDgGwQkA0CsiE/NuTHhvzYkB8b8mNDfmzIjw35sSE/NuTH
hvzYkB8b8mNDfmzIjw35sSE/NuTHhvzYkB8b8mN/RX58UwLlO0a+Y+Q7Rr5j5DtGvmPkO0a+Y+Q7
Rr5j5DtGvmPkO0a+Y+Q7Rr5j5DtGvmPkO0a+Y+Q7Rr5j5DtGvmPkO0a+Y+Q7Rn7Hj5HfcoHyw5S8
jpR4KPFQ4qHEQ4mHEg8lHko8lHgo8VDiocRDiYcSDyUeSjyUeCjxUOKhxEOJDyU+lPhQ4kOJDyU+
lPhQ4kOJDyU+lPhQ4kOJDyU+lPhQ4kOJDyU+lPhQ4kOJDyU+lPhQ4kOJDyU+lPhQ4kOJDyU+lPhQ
4kOJDyU+lPhQ4kOJDyU+lPhQ4kOJDyU+lPhQ4kOJDyU+lPhQ4kOJDyU+lPhQ4kOJDyU+lPhQ4sNP
pIc2H9p8aPOhzYc2H0p8KPGhxIcSH0p8KPGhxIcSH0p8KPGhxIcSH0p8KPGhxIefPw/VO1TvUL1D
9Q7VO1TvUL1D9Q7VO1TvUL1D9Q7VO1TvUL1D9Q7VO1TvUL1D9Q7VO1TvUr1L9S6NuzTu0rhL4y6N
uzTu0rhL4y6NuzTu0rhL4y6NuzTu0rhL4y6NuzTu0rhL4y6NuzTu0rhL4y6NuzTu0rhL4y6NuzTu
0rhL4y6NuzTu0rhL4y6NuzTu0rhL4y6NuzTu0rhL4y6NuzTu0rhL4y6NuzTu0rhL4y6NuzTu0rhL
4y6NuzTu8vPnpXqX6l2qd6nepXqX6l2qd6nepXqX6l2qd6nepXqX6l2qB+ex4Tw2nMeG89hwHhvO
Y8N5bDiPDeex4Tw2nMeG89hwHhvOY8N5bDiPDeex4Tw2nMeG89hwHhvOY8N5BJxHwHkEnEfAeQSc
R8B5BJxHwHkEnEfAeQScR8B5BJxHwHkEnEfAeQScR8B5BJxHwHkEnEfAeQScR8B5BJxHwHkEnEfA
eQScR8B5BJxHwHkEnEfAeQScR8B5BJxHwHkEnEfAeQScR8B5BJxHwHkEnEfAeQScR8B5BJxHwHkE
nEfAeQScR8B5BJxHwHkEnEfAeQScR8B5BJxHwHkEnEfAeQScR8B5BJxHwHkEnEfAeQScR8B5BJxH
wHkEnEfAeQScR8B5BJxHwHkEnEfAeQScR8B5BJxHwHkEnEfAeQScR8B5BJxHwHkEnEfAeQScR8B5
BJxHwHkEnEfAeQScR8B5BJxHwHkEnEfAeQScR8B5BJxHwHkEnEfAeQScR8B5BJxHwHkEnEfAeQSc
R8B5BJxHwHkEnEfAeQScR8B5BJxHwHkEnEfAeQScR8B5BJxHwHkEnEfAeQScR8B5BJxHwHkEnEfA
eQScR8B5BJxHwHkEnEfAeQScR8B5BJxHwHkEnEfAeQScR8B5BJxHwHkEnEfAeQScR8B5BJxHwHkE
nEfAeQScR8B5BJxHwHkEnEfAeQScR8B5BJxHwHkEnEfAeQScR3zFeXxTAuU7Rr5j5DtGvmPkO0a+
Y+Q7Rr5j5DtGvmPkO0a+Y+Q7Rr5j5DtGvmPkO0a+Y+Q7Rr5j5DtGvmPkO0a+Y+Q7Rr5j5DtGfseP
kd9ygTIWbV60edHmRZsXbV60edHmRZsXbV60edHmRZsXbV60edHmRZsXbV60edHmRZs3bd60edPm
TZs3bd60edPmTZs3bd60edPmTZs3bd60edPmTZs3bd60edPmTZs3bd60edPmTZs3bd60edPmTZs3
bd60edPmTZs3bd60edPmTZs3bd60edPmTZs3bd60edPmTZs3bd60edPmTZs3bd60edPmTZs3bd60
edPmTZs3bd60edPmTZs3bd60edPmTZs3bd60edPmTZs3bd60edPmTZs3bd60edPmTZs3bd60edPm
zc+omw5uOrjp4KaDmw5uOrjp4KaDmw5uOrjp4KaDmw5uOrjp4KaDmw5uOrjp4KaDQQeDDgYdDDoY
dDDoYNDBoINBB4MOBh0MOhh0MOhg0MGgg0EHgw4GHQw6GHQw6GDQwaCDQQeDDgYdDDoYdDDoYNDB
oINBB4MOBh0MOhh0MOhg0MGgg0EHgw4GHQw6GHQw6GDQwaCDQQeDDgYdDDoYdDDoYNDBoINBB4MO
Bh0MOhh0MOhg0MGgg0EHgw4GHQw6GHQw6GDQwaCDQQeDDgYdDDoYdBDOI+A8As4j4DwCziPgPALO
I+A8As4j4DwCziPgPALOI+A8As4j4DwCziPgPALOI+A8As4j4DwCziPgPALOI+A8As4j4DwCziPg
PALOI+A8As4j4DwCziPgPALOI+A8As4j4DwCziPgPALOI+A8As4j4DwCziPgPALOI+A8As4jwDsC
vCPAOwK8I8A7ArwjoDoCqiOgOgKqI6A6AqojoDoCqiOgOgKqI6A6AqojoDoCqiOgOgKqI6A6Aqoj
oDoCqiOgOgKqI6A6AqojoDoCqiOgOgKqI6A6AqojoDoCqiOgOgKqI6A6AqojoDoCqiOgOgKqI6A6
AqojoDoCqiOgOgKqI6A6AqojoDoCqiOAOQKYI4A5ApgjgDkCmCOAOQKYI4A5ApgjgDkCmCOAOQKY
I4A5ApgjgDkCmCOAOQKYI4A5ApgjgDkCmCOAOQKYI4A5ApgjgDkCmCOAOQKYI4A5ApgjgDkCmCOA
OQKYI4A5ApgjgDkCmCOAOQKYI4A5ApgjgDkCmCOAOQKYI4A5ApgjgDkCmCOAOQKYI4A5ApgjgDkC
mCOAOQKYI4A5ApgjgDkCmCOAOQKYI4A5ApgjgDkCmCOAOQKYI4A5ApgjgDkCmCOAOQKYI4A5Apgj
gDkCmCOAOQKYI4A5ApgjgDkCmCOAOQKYI4A5ApgjgDniK5jjmxIo3zHyHSPfMfIdI98x8h0j3zHy
HSPfMfIdI98x8h0j3zHyHSPfMfIdI98x8h0j3zHyHSPfMfIdI98x8h0j3zHyHSPfMfI7foz8lguU
H6bkdaTERYmLnzaLNhdtLtpctLloc9Hmos1Fm4s2F20u2ly0uWhz0+amzU2bmzY3bW7a3LS5aXPT
5qbNTZubNjdtbtrctLlpc9Pmps1Nm5s2N21u2ty0uWlz0+amzU2bmzY3bW7a3LS5aXPT5qbNTZub
NjdtbtrctLlpc9Pmps1Nm5s2N21u2ty0uWlz0+amzU2bmzY3bW7a3LS5aXPT5qbNTZubNjdtbtrc
tLlpc9Pmps1Nm5s2N21u2ty0uWlz0+amzU2bmzY3bW7a3LS5aXPT5qbNzU+kTQebDjYdbDrYdLDp
YNPBpoNNB5sONh1sOth0sOlg08Gmg00Hhw4OHRw6OHRw6ODQwaGDQweHDg4dHDo4dHDo4NDBoYND
B4cODh0cOjh0cOjg0MGhg0MHhw4OHRw6OHRw6ODQwaGDQweHDg4dHDo4dHDo4NDBoYNDB4cODh0c
Ojh0cOjg0MGhg0MHhw4OHRw6OHRw6ODQwaGDQweHDg4dHDo4dHDo4NDBoYNDB4cODh0cOjh0cOjg
0MGhg0MHhw4OHRw6OHRw6ODQQaiOgOoIGI6A4QgYjoDhCBiOgOEIGI6A4QgYjoDhCBiOgOEIGI6A
4QgYjoDhCBiOgOEIGI6A4QgYjoDhCBiOgOEIGI6A4QgYjoDhCBiOgOEIGI6A4QgYjoDhCNCNAN0I
0I0A3QjQjQDdCNCNAN0I0I0A3QjQjQDdCNCNAN0I0I0A3QjQjQDdCNCNAN0I0I0A3QjQjQDdCNCN
AN0I0I0A3QjQjQDdCNCNAN0I0I0A3QjQjQDdCNCNAN0I0I0A3QjQjQDdCNCNAN348ISZKRqgRgBq
BKBGAGoEoEYAagSgRgBqBKBGAGoEoEYAagSgRgBqBKBGAGoEoEYAagSgRgBqBKBGAGoEoEYAagSg
RgBqBKBGAGoEoEYAagSgRgBqBKBGAGoEoEYAanx4snkSPEmeFE+aJ8OTwxNmpl8QGwGxERAbAbER
EBsBsREQGwGxERAbAbERgBoBnxHwGQGfEfAZAZ8R8BkBnxHwGQGfEfAZAZ8R8BkBnxHwGQGfEfAZ
AZ8R8BkBnxHwGQGfEfAZAZ8R8BkBnxHwGQGfEfAZAZ8R8BkBnxHwGQGfEfAZAZ8R8BkBnxHwGQGf
EfAZAZ8R8BkBnxHwGQGfEfAZAZ8R8BkBnxHwGQGfEfAZAZ8R8BkBnxHwGQGfEfAZAZ8R8BkBnxHw
GQGfEfAZAZ8R8BnxFZ/xTQmU7xj5jpHvGPmOke8Y+Y6R7xj5jpHvGPmOke8Y+Y6R7xj5jpHvGPmO
ke8Y+Y6R7xj5jpHvGPmOke8Y+Y6R7xj5jpHvGPkdP0Z+2wXKS3cv3b1099LdS3cv3b1099Ld+/Pd
ze//fHc/PFk82TwJniRPiifNk+HJ4QkzLyZcTLiYcDHhYsLFhIsJFxMuJty8qpuZNzNvZt7MvJl5
M/Nm5s3Mm5mDmYOZg5mDmYOZg5mDmYOZg5mDmZOZk5mTmZOZkwmTCZMJkwmTCYsJiwmLCYsJi1e1
mLmYuZi5mLmYuZm5mbmZuZm5mbmZuZm5mbmZuZl5mHmYeZh5mHmYeZh5mHmYeZh5mPkw82Hmw8yH
mQ8zH2Y+zHyY+TDzYebLzJeZLzNfZr7MfJn5MvNl5svMNG7RuEXjFo1bNG7RuEXjFo1bNG7RuEXj
1mJmqreo3qJ6i+otqreo3qJ6i+otqreo3qJ6i+otqreo3qJ6i+otqreo3qJ6i+otqreo3qJ6i+ot
qreo3qJ6i+otqreo3qJ6i+otqreSmengooOLDi46uOjgooOLDi46uOjgooOLDi46uOjgooOLDi46
uOjgooOLDi46uOjgooOLDi46uOjgooOLDi46uOjgooOLDi46uOjgooOLDkJjJDRGQmMkNEZCYyQ0
RkJjJDRGQmMkNEZCYyQ0RkJjJDRGQmMkNEZCYyQ0RkJjJDRGQmMkNEZCYyQ0RkJjJDRGQmMkNEZC
YyQ0RkJjJDRGQmMkNEZCYyQ0RkJjJDRGQmMkNEZCYyQ0RkJjJDRGQmMkNEZCYyQ0RkJjJDRGQmMk
NEZCYyQ0RkJjJDRGQmMkNEZCYyQ0RkJjJDRGQmMkNEZCYyQ0RkJjJDRGQmMkNEZCYyQ0RkJjJDRG
QmMkNEZCYyQ0RkJjJDRGQmMkNEZCYyQ0RkJjJDRGQmMkNEZCYyQ0RkJjJDRGQmMkNEZCYyQ0RkJj
JDRGQmMkNEZCYyQ0RkJjJDRGQmMkNEZCYyQ0RkJjJDRGQmMkNEZCYyQ0RkJjJDRGQmMkNEZCYyQ0
RkJjJDRGQmMkNEZCYyQ0RkJjJDRGAmEkEEYCYSQQRgJhJBBGAmEkEEYCYSQQRgJhJBBGAmEkEEYC
YSQQRgJhJBBGAmEkEEYCYSQQRgJhJBBGAmEkEEYCYSQQRgJhJBBGAmEkEEYCYSQQRgJhJBBGAmEk
EEYCYSQQRgJhJBBGAmEkEEYCYSQQRgJhJBBGAmEk7EXCXiTsRcJeJOxFwl4k7EXCXiTsRcJeJOxF
wl4k7EXCXiTsRcJeJOxFwl4k7EXCXiTsRcJeJOxFwl4k7EWCXCTIRYJcJMhFglwkyEWCXCTIRYJc
JMhFfoVcfGMC5TtGvmPkO0a+Y+Q7Rr5j5DtGvmPkO0a+Y+Q7Rr5j5DtGvmPkO0a+Y+Q7Rr5j5DtG
vmPkO0a+Y+Q7Rr5j5DtGvmPkO0Z+t4+R33KB8qe/YcvcvI5UNqhsUtmkskllk8omlU0qm1Q2qWzy
02bS3aS7SXeT7ibdTbqbdDfpbtLdpLtJd5PuJt1Nupt0N+lu0t2ku0l3k+4m3U26m3Q36W7S3aS7
SXeT7ibdTbqbdDfpbtLdpLtJd5PuJt1Nupt0N+lu0t2ku0l3k+4m3U26m3Q36W7S3eSnzaTESYmT
EiclTkqclDgpcVLipMRJiZMSJyVOSpyUOClxUuKkxEmJkxInJU5KnJQ4KXFS4qTEyU+bSZuTNidt
TtqctDlpc9LmpM1Jm5M2J9VLqpdUL6leUb2iekX1iuoV1SuqV1SvqF5RvaJ6RfWK6hXVK6pXVK+o
XlG9onpF9YrqFdUrqldUr6heUb2iekX1iuoV1SuqV1SvqF5RvaJ6RfWK6hXVK6pXVK+oXlG9onpF
9YrqFdUrqldUr6heUb2iekX1iuoV1SuqV1SvqF5RvaJ6RfWK6hXVK6pXVK+oXlG9onpF9YrqFdUr
qldUr6heUb2iekX1iuoV1SuqV1SvqF5RvaJ6RfWAMBIII4EwEggjgTASCCOBMBIII4EwEggjgTAS
CCOBMBIII4EwEggjgTASCCOBMBIII4EwEggjgTASCCOBMBIII4EwEggjgTASCCOBMBIII4EwEggj
gTASCCOBMBIII4EwEggjgTASCCOBMBIII4EwEggjgTASCCOBMBIII4EwEggjgTASCCOBMBIII4Ew
EggjgTASCCOBMBIII4EwEggjgTASCCOBMBIII4EwEggjgTASCCOBMBIII4EwEggjgTASCCOBMBII
I4EwEggjgTASCCOBMBIII4EwEggjgTASCCOBMBIII4EwEggjgTASCCOBMBIII4EwEggjgTASCCOB
MBIII4EwEggjgTASCCOBMBIII4EwEggjgTASCCOBMBIII4EwEggjgTASCCOBMBIII4EwEggjgTAS
CCOBMBIII4EwEggjgTASCCOBMBIII4EwEggjgTASCCOBMBIII4EwEggjgTASCCOBMBIII4EwEggj
gTASCCOBMBIII4EwEggjgTASCCOBMBIII4EwEggjgTASCCOBMBIII4EwEggjgTASCCOBMBIII4Ew
EggjgTASCCOBMBIII4EwEggjgTASCCOBMBIII4EwEggjgTASCCOBMBIII4EwEggjgTASCCOBMBII
I4EwEggjgTBy6ODQQbCMBMtIsIwEy0iwjATLSLCMBMtIsIwEy0iwjATLSLCMBMvIr7CMb0qgfMfI
d4x8x8h3jHzHyHeMfMfId4x8x8h3jHzHyHeMfMfId4x8x8h3jHzHyHeMfMfId4x8x8h3jHzHyHeM
fMfId4x8x8jv+DHyG/0Fyk/+yyc/+vKLz/7i848/+dn//L2/+s9ffvT5f/rky5++pa/nYPpLvvN/
9i9+57MfffLr0DQ/vOJ8TbBnDHvGYc847BmHPeOwZxz2jMOecdgzDnvGYc847BmHPeOwZxz2jMOe
cdgzDnvGYc847BmHPeOwZxz2jMOecdgzDnvGYc847BmHPeOwZxz2jMOecdgzDnvGYc847BmHPeOw
Zxz2jMOecdgzDnvGYc847BmHPeOwZxz2jMNWcdgqDlvFYas4bBWHreKwVRy2isNWcdgqDlvFYas4
bBWHreKwVRy2isNWcdgqDlvFYas4bBWHreKwVRy2isNWcdgqDlvFYas4bBWHreKwVRy2isNWcdgq
DlvFYas4bBWHreKwVRy2isNWcdgqDlvFYas4bBWHreKwVRy2isNWcdgqDo07NO7QuEvjLo27NO7S
uEvjLo27NO7SuEvjLo27NO7SuEvjLo27NO7SuEvjLo27NO7SuEvjLo27NO7SuEvjLo27NO7SuEvj
Lo27NO7SuEvjLo27NO7SuEvjLo27NO7SuEvjLo27NO7SuEvjLj9LX6p3qd6lepfqXap3qd6lepfq
Xap3qd6lcZfGXRp3adylcZfGXRp3adylcZfGXRp3adylcZfGXRp3adylcZfGXRp3adylcZfGXRp3
adylcZfGXRp3adylaJeiXYp2KdqlaOAgCQ6S4CAJDpLgIAkOkuAgCQ6S4CAFDlLgIAUOUuAgBQ5S
4CAFDlLgIAUOUuAg9f3FzIuZFzMvZl7MvJh5MfNi5sXMi5k3M29m3sy8mXkz82bmzcybmTczb2YO
Zg5mDmYOZg5mDmYOZg5mDmYOZk5mTmZOZk5mTmZOZk5mTmZOZk5mLmYuZi5mLmYuZi5mLmYuZi5m
LmZuZm5mbmZuZm5mbmZuZm5mbmZuZh5mHmYeZh5mHmYeZh5mHmYeZh5mPsx8mPkw82Hmw8yHmQ8z
H2Y+zHyY+TLzZebLzJeZLzNfZr7MfJn5MjMdBBApAJECECkAkQIQKQCRAhApAJECECkAkQIQKQCR
AhApAJECECkAkQIQKQCRAhApAJECECkAkQIQKQCRAhApAJECECkAkQIQKQCRAhApAJECECkAkQIQ
KQCRAhApAJECECkAkQIQKQCRAhApAJECECkAkQIQKQCRAhApAJECECkAkQIQKQCRAhApuJCCCym4
kIILKbiQggspuJCCCym4kIILKbiQggspuJCCCym4kIILKbiQggspuJCCCym4kIILKbiQggspuJCC
Cym4kIILKbiQggspuJCCCym4kIILKbiQggspuJCCCym4kIILKbiQAgcpcJACBylwkPoKB/mmNM13
jHzHyHeMfMfId4x8x8h3jHzHyHeMfMfId4x8x8h3jHzHyHeMfMfId4x8x8h3jHzHyHeMfMfId4x8
x8h3jHzHyHeM/I4fI7/RXwb9/JOvfgHzi9/86cMffvT5hzf/xW/85y++ngvp3/be/taX4Jf7bdG/
54f5+Sc//uzzL/9xP9j/931+7R/y3/2vJv7w9Rd8RSZPiifNk+HJ4QnfIWxUm41qs1FtNqrNRrXZ
qDYb1Waj2mxUm41qs1FtNqrNRrXZqDYb1Waj2mxUm41qs1FtNqrNRrXZqDYb1Waj2mxUm41qs1Ft
NqrNRrXZqDYb1Waj2mxUm41qs1FtNqrNRrXZqDYb1Waj2mxUm41qs1FtNqrNRrX5JwubHWuzY212
rM2OtdmxNjvWZsfa7FibHWuzY212rM2OtdmxNjvWZsfa7FibHWuzY212rM2OtdmxNjvWZsfa7Fib
HWuzY212rM2OtdmxNjvWZsfa7FibHWuzY212rM2OtdmxNjvWZsfa7FibHWvzTxY2W9dm6wq2rmDr
Cv7JQtDBoINBB4MOBh0MOhh0MOhg0MGgg0EHgw4GHQw6GHQw6GDQwaCDQQeDDgYdDDoYdDDoYNDB
oINBB4MOBh0MOhh0MOhg0MGgg0EHgw4GHQw6GHQw6GDQwaCDQQeD6gXVC6oXVC+oXlC9oHpB9YLq
BdULqhdUL6heUL2gekH1guoF1QuqF1QvqF5QvaB6QfWC6gXVC6oXVC+oXlC9oHpB9YLqBdULqhdU
L6heUL2gekH1guoF1QuqF1QvqF5QvaB6QfWC6kHDFDRMQcMUNExBwxQ0TEHDFDRMQcMUNExBwxQ0
TEHDFDRMQcMUNExBwxQ0TEHDFDRMQcMUNExBwxQ0TEHDFDRMQcMUNExBwxQ0TEHDFDRMQcMUNExB
wxQ0TEHDFDRMQcMUNExBwxQ0TEHDFDRMQcMUNExBwxQ0TEHDFDRMQcMUNExBwxQ0TEHDFDRMQcMU
NExBwxQ0TEHDFDRMQcMUNExBwxQ0TEHDFDRMQcMUNExBwxQ0TEHDFDRMQcMUNExBwxQ0TEHDFDRM
QcMUNExBwxQ0TEHDFDRMQcMUNExBwxQ0TEHDFDRMQcMUNExBwxQ0TEHDFDRMQcN8eMLMdBAspsBi
CiymwGIKLKbAYgospsBiCiymwGIKLKbAYgospsBiCiymwGIKLKbAYgospsBiCiymwGIKLKbAYgos
psBiCiymwGIKLKbAYgospsBiCiymwGIKLKbAYgospsBiCiymwGIKLKbAYgospsBiCiymwGIKLKbA
YgospsBiCiymwGIKLKbAYgospsBiCiymwGIKLKbAYgospsBiCiymwGIKLKbAYgospsBiCiymwGIK
LKbAYgospsBiCiymwGIKLKbAYgospsBiCiymwGIKLKbAYgospsBiCiymwGIKLKbAYgospsBiCiym
wGIKLKbAYgospsBiCiymwGIKLKbAYgospsBiCiymwGLqKyzmm3JS3zHyHSPfMfIdI98x8h0j3zHy
HSPfMfIdI98x8h0j3zHyHSPfMfIdI98x8h0j3zHyHSPfMfIdI98x8h0j3zHyHSPfMfI7foz8Rn81
9u/+1/l+mDKZu3jSPBmeHJ7wOtLmps1Nm5s2N21u2ty0uWlz0+amzU2bmzY3bW7a3LS5aXPT5qbN
TZubNjdtbtrctLlpc9Pmps1Nm5s2N21u2ty0uWlz0+amzU2bmzY3bW7a3LS5aXPT5qbNTZubNjdt
btrctLlpc9Pmps1Nm5s2N21u2ty0uWlz0+amzU2bmzY3bW7a3LS5aXPT5qbNTZubNjdtbtrctLlp
c9Pmps1Nm5s2N21u2ty0uWlz0+amzU2bmzY3bW7a3LS5aXPT5qbNQ5uHNg9tHn5GHTo4dHDo4NDB
oYNDB4cODh0cOjh0cOjg0MGhg0MHhw4OHRw6OHRw6ODQwaGDQweHDg4dHDo4dHDo4NDBoYNDB4cO
Dh0cOjh0cOjg0MGhg0MHhw4OHRw6OHRw6ODQwaGDQweHDg4dHDo4dHDo4NDBoYNDB4cODh0cOjh0
cOjg0MGhg0MHhw4OHRw6OHRw6ODQwaGDQweHDg4dHDo4dHDo4NDBoYNDB4cODh0cOjh0cOjg0MGh
g0MHhw4OHRw6OHRw6ODQwaGDACsFsFIAKwWwUgArBbBSACsFsFIAKwWwUgArBbBSACsFsFIAKwWw
UgArBbBSACsFsFIAKwWwUgArBbBSACsFsFIAKwWwUgArBbBSACsFsFIAKwWwUgArBbBSACsFsFIA
KwWwUgArBbBSACsFsFIAKwWwUgArBbDy4Qkz00HIlYJcKciVglwpyJWCXCnIlYJcKciVglwpyJWC
XCnIlYJcKciVglwpyJWCXCnIlYJcKciVglwpyJWCXCnIlYJcKciVglwpyJWCXCnIlYJcKciVglwp
yJWCXCnIlYJcKciVglwpyJWCXCnIlYJcKciVglwpyJWCXCnIlQ9PmJkOgrAUCEuBsBQIS4GwFAhL
gbAUCEuBsBQIS4GwFAhLgbAUCEuBsBQIS4GwFAhLgbAUCEuBsBQIS4GwFAhLgbAUCEuBsBQIS4Gw
FAhLgbAUCEuBsBQIS4GwFAhLgbAUCEuBsBQIS4GwFAhLgbAUCEuBsBQIS4GwFAhLgbAUCEuBsBQI
S4GwFAhLgbAUCEuBsBQIy4cnzEwHYVkKlqVgWQqWpWBZCpalYFkKlqVgWQqWpWBZCpalYFkKlqVg
WQqWpWBZCpalYFkKlqVgWQqWpWBZCpalYFkKlqVgWT48YWY6CNRSQC0F1FJALQXUUkAtBdRSQC0F
1FJALQXUUkAtBdTSQC0N1NJALf39b+AXKN8x8h0j3zHyHSPfMfIdI98x8h0j3zHyHSPfMfIdI98x
8h0j3zHyHSPfMfIdI98x8h0j3zHyHSPfMfIdI98x8h0j3zHyn8wx8hv9BcqfpSz/O4b555988cVH
/+mT3/jxT37ZS+nv/uTLH372o9/7+PNPf/zlL38x/bve+7cA4PzwSUo+bcWT5snw5PCEL6PFl9Hi
y2jxZfTzq8mHJ8y8mHkx82LmxcyLmTczb2bezLyZeTPzZubNzJuZNzNvZg5mDmYOZg5mDmYOZg5m
DmYOZg5mTmZOZk5mTmZOZk5mTmZOZk5mTmYuZi5mLmYuZi5mLmYuZi5mLmYuZm5mbmZuZm5mbmZu
Zm5mbmZuZm5mHmYeZh5mHmYeZh5mHmYeZh5mHmY+zHyY+TDzYebDzIeZDzMfZj7MfJj5MvNl5svM
l5kvM19mvsx8mfkyM6vJYjVZrCaL1WT9/I/oH54kT4onzZPhyeEJM9PBRQcXHVx0cNHBRQcXHVx0
cNHBRQcXHVx0cNHBRQcXHVx0cNHBRQcXHVx0cNHBRQcXHVx0cNHBRQcXHVx0cNHBRfUW1VtUb1G9
RfUW1VtUb1G9lU7Iq0r1FtVbVG9RvUX1FtVbVG9RvUX1FtVbVG9RvUX1FtVbVG9RvUX1FtVbVG9R
vUX1FtVbVG9RvUX1FtVbVG9RvUX1FtVbVG9RvUX1FtVbVG9RvUX1FtVbVG9RvUX1FtVbVG9RvUX1
FtVbVG9RvUX1FtXbVG9TvU318E0a36TxTRrfpPFNGt+k8U0a36TxTRrfpPFNGt+k8U0a36TxTRrf
pPFNGt+k8U0a36TxTRrfpPFNGt+k8U0a36TxTRrfpPFNGt+k8U0a36TxTRrfpPFNGt+k8U0a36Tx
TRrfpPFNGt+k8U0a36TxTRrfpPFNGt+k8U0a36TxTRrfpPFNGt+k8U0a36TxTRrfpPFNGt+k8U0a
36TxTRrNpNFMGs2k0UwazaTRTBrNpNFMGs2k0UwazaTRTBrNpNFMGs2k0UwazaTRTBrNpNFMGs2k
0UwazaTRTBrNpNFMGs2k0UwazaTRTBrNpNFMGs2k0UwazaTRTBrNpNFMGs2k0UwazaTRTBrNpNFM
Gs2k0UwazaTRTBrNpNFMGs2k0UwazaTRTBrNpNFMGs2k0UwazaTRTBrNpNFMGs2k0UwazaTRTBrN
pNFMGs2k0UwazaTRTBrNpNFMGs2k0UwazaTRTBrN5MMTZqZ6+CaNb9L4Jo1v0vgmjW/S+CaNb9L4
Jo1v0vgmjW/S+CaNb9L4Jo1v0vgmjW/S+CaNb9L4Jo1v0vgmjW/S+CaNb9L4Jo1v0vgmjW/S+CaN
b9L4Jo1v0vgmjW/S+CaNb9L4Jo1v0vgmjW/S+CaNb9L4Jo1v0vgmjW/S+CaNb9L4Jo1v0vgmjW/S
+CaNb9L4Jv2Vb/JNAZzvGPmOke8Y+Y6R7xj5jpHvGPmOke8Y+Y6R7xj5jpHvGPmOke8Y+Y6R7xj5
jpHvGPmOke8Y+Y6R7xj5jpHvGPmOke8Y+R0/Rn7LAc4PUzZzD08OT3gdaXPS5qTNSZuTNidtTtqc
tDlpc9LmpM1Jm5M2J21O2py0OWlz0uakzUmbkzYnbU7anLQ5aXPS5qTNSZuTNidtTtqctDlpc9Lm
pM1Jm5M2J21O2py0OWlz0uakzUmbkzYnbU7anLQ5aXPS5qTNSZuTNidtTtqctDlpc9LmpM1Jm5M2
J21O2py0OWlz0uakzUmbkzYnbU7anLQ5aXPS5qTNSZuTNidtTtqctDlpc9LmpM1Jm5M2J21O2py0
OWlz0uaizUWbizYXbS7aXPyMWnSw6GDRwaKDRQeLDhYdLDpYdLDoYNHBooNFB4sOFh0sOlh0sOhg
0cGig0UHiw4WHSw6WHSw6GDRwaKDRQeLDhYdLDpYdLDoYNHBooNFB4sOFh0sOlh0sOhg0cGig0UH
iw4WHSw6WHSw6GDRwaKDRQeLDhYdLDpYdLDoYNHBooNFB4sOFh0sOlh0sOhg0cGig0UHiw4WHSw6
WHSw6GDRwaKDRQeLDhYdLKpXVK+oXlG9onpF9YrqFdUrqldUr6heUb2iekX1muo11Wuq11QPzaTR
TBrNpNFMGs2k0UwazaTRTBrNpNFMGs2k0UwazaTRTBrNpNFMGs2k0UwazaTRTBrNpNFMGs2k0Uwa
zaTRTBrNpNFMGqmkkUoaqaSRShqppJFKGqmkkUoaqaSRShqppJFKGqmkkUoaqaSRShqppJFKGqmk
kUoaqaSRShqppJFKGqmkkUoaqaSRShqppJFKGqmkkUoaqaSRShqppJFKGqmkkUoaqaSRShqppJFK
GqmkkUoaqaSRShqppJFKGqmkkUoaqaSRShqppJFKGqmkkUoaqaSRShqppJFKGqmkkUoaqaSRShqp
pJFKGqmkkUoaqaSRShqppJFKGqmkkUoaqaSRShqppJFKGqmkkUoaqaSRShqppJFKGqmkkUoaqaSR
ShqppJFKGqmkkUoaqaSRShqppJFKGqmkkUoaqaSRShqppJFKGqmkkUoaqaSRShqppJFKGqmkkUoa
qaSRShqppJFKGqmkkUoaqaSRShqppJFKGqmkkUoaqaSRShqppJFKGqmkkUoaqaSRShqppJFKGqmk
kUoaqaSRShqppJFKGqmkkUoaqaSRShqppJFKGqmkkUoaqaSRShqppJFKGqmkkUoaqaSRShqppJFK
GqmkkUoaqaSRShqppJFKGqmkkUoaqaSRShqppJFKGqmkkUoaqaSRShqppJFK+iup5JsCON8x8h0j
3zHyHSPfMfIdI98x8h0j3zHyHSPfMfIdI98x8h0j3zHyHSPfMfIdI98x8h0j3zHyHSPfMfIdI98x
8h0j3zHyO36M/NYAnD9LWX72o//GYH7v808++rM//+lb+3qOpr/CAP/sX/zOZz/65Neiah72jcO+
cdg3DvvGYd847BuHfeOwbxz2jcO+cdg3DvvGYd847BuHfeOwbxz2jcO+cdg3DvvGYd847BuHfeOw
bxz2jcO+cdg3DvvGYd847BuHfeOwbxz2jcO+cdg3DvvGYd847BuHfeOwbxz2jcO+cdg3DvvGYd84
7BuHfeOwbxz2jcO+cdg3DvvGYd847BuHfeOwbxz2jcO+cdg3DvvGYd847BuHfeOwbxz2jcO+cdg3
DrvEYZc47BKHXeKwSxx2icMucdglDrvEYZc47BKHXeKwSxx2icMucdglDrvEYZc47BKHXeKwSxx2
icsucdklLrvEZZe47BKXXeKyS1x2icvP1JfGXRp3adylcZfGXRp3adylcZfGXRp3adylcZfGXRp3
adylcZfGXRp3adylcZfGXRp3adylcZfGXRp3adylcZfGXRp3adylcZfGXRp3adylcZfGXRp3adyl
cZfGXRp3adylcZfGXRp3adylcZfGXRp3adylcZfGXRp3adylcZfGXRp3adylcZfGXRp3adylcZfG
XRp3adzlZ+rLz9SXDl46eOngpYOXDl46eOngpYOXDl46eOngpYOXDl4ad2ncpXGXxl0ad2nc/fnG
zfd/vnEfniyebJ4ET5InxZPmyfDk8ISZFzMvZl7MvJh5MfNi5sXMi5kXMy9m3sy8mXkz82bmzcyb
mTczb2bezLyZOZg5mDmYOZg5mDmYOZg5mDmYOZg5mTmZOZk5mTmZOZk5mTmZOZk5mbmYuZi5mLmY
uZi5mLmYuZi5mLmYuZm5mbmZuZm5mbmZuZm5mbmZuZl5mHmYeZh5mHmYeZh5mHmYeZh5mPkw82Hm
w8yHmQ8zH2Y+zHyY+TDzYebLzJeZLzNfZr7MfJn5MvNl5svMdBA2ZGBDBjZkYEMGNmRgQwY2ZGBD
BjZkYEMGNmRgQwY2ZGBDBjZkYEMGNmRgQwY2ZGBDBjZkYEMGNmRgQwY2ZGBDBjZkYEMGNmRgQwY2
ZGBDBjZkYEMGNmRgQwY2ZGBDBjbkwxNmpoNAIgMkMkAiAyQyQCIDJDJAIgMkMkAiAyQyQCIDJDJA
IgMkMkAiAyQyQCIDJDJAIgMkMkAiAyQyQCIDJDJAIgMkMkAiAyQyQCIDJDJAIgMkMkAiAyQyQCID
JDJAIgMkMkAiAyQyQCIDJDJAIgMkMkAiAyQyQCIDJDJAIgMkMkAiAyQyQCIDJDJAIgMbMrAhAxsy
sCEDGzKwIQMbMrAhAxsysCEDGzKwIQMbMrAhAxsysCHzFRvyjama7xj5jpHvGPmOke8Y+Y6R7xj5
jpHvGPmOke8Y+Y6R7xj5jpHvGPmOke8Y+Y6R7xj5jpHvGPmOke8Y+Y6R7xj5jpHvGPndPkZ+o78U
+vknX/0S5he/+dOHP/zo8w9v/ovf+M9f/FovpH/7e/r8kx9/9vmXv+739/9eZP+2j+5vfcl/+d9Q
/YUv7S8e4P/9oL/uMX7Jf1Xxh69DvlPYtTa71mbX2uxam11rs2ttdq3NrrXZtTa71mbX2uxam11r
s2ttdq3NrrXZtTa71mbX2uxam11rs2ttdq3NrrXZtTa71mbX2uxam11rs2ttdq3NrrXZtTa71mbX
2uxam11rs2ttdq3NrrXZtTa71mbX2uxam11rs2ttdq3NrrXZtTa71mbX2uxam11rs2ttdq3NrrXZ
tTa71mbX2uxam11rs2ttdq3NrrXZtTa71mbX2uxam11rs2ttdq3NrrXZtTa71mbX2uxam11rs2tt
dq3NrrXZtTb/zGGzfW22r832FWxfwfYVbF/B9hVsX8H2FWxfwfYVbF/B9hVsX8H2FWxfwT9zCDoY
dDDoYNDBoINBB4MOBh0MOhh0MOhg0MGgg0EHg+oFjQsaFzQuaFzQuKBxQeOCxgWNCxoXNC5oXNC4
oHFB44LGBY0LGhc0Lmhc0LigcUHjgsYFjQsaFzQuaFzQuKBxQeOCxgWNCxoXNC5oXNC4oHFB44LG
BY0LGhc0Lmhc0LigcUHjgsYFjQuKFhQt6FfQr6BfQb+CfgX9CvoV9CvoV9CvoF9Bv4J+BbUKapXU
KqlVUqukVkmtkloBugygywC6DKDLALoMoMsAugygywC6DKDLALoMoMsAugygywC6DKDLALoMoMsA
ugygywC6DKDLALoMoMsAugygywC6DKDLALoMWMuAtQxYy0CzDDTLQLMMNMtAsww0y0CzDDTLQLMM
NMtAsww0y0CzDDTLQLMMNMtAsww0y0CzDDTLQLMMNMtAsww0y0CzDDTLQLMMNMtAsww0y0CzDDTL
QLMMNMtAsww0y0CzDDTLQLMMNMtAsww0y0CzDDTLQLMMNMtAsww0y0CzDDTLQLMMNMtAsww0y0Cz
DDTLQLMMNMtAsww0y0CzDDTLQLMMNMtAsww0y0CzDDTLQLMMNMtAsww0y8CuDOzKgKwMyMqArAzI
yoCsDMjKgKwMyMqArAzIyoCsDMjKgKwMyMqArAzIyoCsDMjKgKwMyMqArAzIyoCsDMjKgKwMyMqA
rAzIyoCsDMjKgKwMyMqArAzIyoCsDMjKgKwMyMqArAzIyoCsDMjKgKwMyMqArAzIyoCsDMjKgKwM
yMqArAzIyoCsDMjKgKwMyMqArAzIyoCsDMjKgKwMyMqArAzIyoCsDMjKgKx8eMLMFA12ZWBXBmRl
QFYGZGVAVgZkZUBWBlJlIFUGUmUgVQZAZQBUBkBlAFQGQGUAVAZAZQBUBkBlAFQGQGUAVAZAZQBU
BkBlAFQGQGUAVAZAZQBUBkBlAFQGQGUAVAZAZb4CVL4pN/UdI98x8h0j3zHyHSPfMfIdI98x8h0j
3zHyHSPfMfIdI98x8h0j3zHyHSPfMfIdI98x8h0j3zHyHSPfMfIdI98x8h0jv+PHyG/0V2T/7n+t
74cpeR2pbFPZprJNZZvKNpVtKttUtqlsU9mmsk1lm8o2lW0q21S2qWxT2aayTWWbyjaVbSrbVLap
bFPZprJNZZvKNpVtKttUtqlsU9mmsk1lm8o2lW0q21S2qWxT2aayTWWbyjaVbSrbVLapbFPZprJN
ZZvKNpVtKttUtqlsU9mmsk1lm58bm+423W2623S36W7T3ebnxqbETYmbEg8lHn5uHNo8tHlo89Dm
oc1Dm4c2D20e2jy0eWjz0OahzUObhzYPbR7aPLR5aPPQ5qHNQ5uHNg9tHto8/LQ5dHDo4NDBoYND
B4cODh0cOjh0cOjg0MGhg0MHhw4OHRw6OHRw6ODQwaGDQweHDg4dHDo4dHDo4NDBoYNDB4cODh0c
Ojh0cOjg0MGhg0MHhw4OHRw6OHRw6ODQwaGDQweHDg4dHBo3NG5o3FC0oWhD0YaiDUUbijYUbSja
ULShaEPRhqINRRuKNhRtKNqhTYc2Hdp0aNOhTYc2ne/73g9Pfv71gQQZSJCBBBlIkIEEGUiQgQQZ
SJCBBBlIkIEEGUiQgQQZSJCBBBlIkIEEGUiQgQQZSJCBBBlIkIEEGUiQgQQZSJCBBBlIkIEEGUiQ
gQQZSJCBBBlIkIEEGUiQgQQZSJCBBBlIkIEEGUiQgQQZSJCBBBlIkIEEGUiQgQQZSJCBBBlIkIEE
GUiQgQQZSJCBBBlIkIEEGUiQgQQZSJCBBBlIkIEEGUiQgQQZSJCBBBlIkIEEGUiQgQQZSJCBBBlI
kIEEGUiQgQQZSJCBBBlIkIEEGUiQObaJn7YgQQYSZCBBBhJkIEEGEmQgQQYSZCBBBhJkIEEGEmQg
QQYSZCBBBhJkIEEGEmQgQQYAZABABgBkAEAGAGQAQAYAZABABgBkAEAGAGQAQAYAZABABgBkAEAG
AGQAQAYAZABABu5j4D4G7mPgPgbuY+A+Bu5j4D4G7mPgPgbuY+A+Bu5j4D4G7mPgPgbuY+A+Bu5j
4D4G7mPgPgbuY+A+Bu5j4D4G7mPgPgbuY+A+Bu5j4D4G7mPgPgbuY+A+Bu5j4D4G7mPgPgbuY+A+
Bu5j4D4G7mPgPgbuY+A+Bu5j4D4G7mPgPj48YWYaBwkykCADCTKQIAMJMpAgAwlyIEEOJMiBBDmQ
IAcS5ECCHEiQAwlyIEEOJMiBBDmQIAcS5ECCHEiQAwlyIEEOJMiBBDmQIAcS5ECCHEiQAwlyIEEO
JMiBBDmQIAcS5ECCHEiQAwlyIEEOJMiBBDmQIAcS5ECCnK9IkG/KGH3HyHeMfMfId4x8x8h3jHzH
yHeMfMfId4x8x8h3jHzHyHeMfMfId4x8x8h3jHzHyHeMfMfId4x8x8h3jHzHyHeMfMfI7/gx8hv9
BcpfkrP83hd/8eO/gjE/vNWv53j69xjkW0J0fvg08oWWfKElX2jJF1ryhZZ8oSVfaMkXWvKFlnxz
JDMXMxczFzMXMxczFzMXMxczFzMXMzczNzM3MzczNzM3MzczNzM3MzczDzMPMw8zDzMPMw8zDzMP
Mw8zDzMfZj7MfJj5MPNh5sPMh5kP81zmucxzmecyz2WeyzyXeS6v4eU1ZDFZLCaLxWSxmCwWk8Vi
slhMFovJYjFZLCaLxWSxmCwWk8VislhMFovJYjFZLCaLxWSxmCwWk8VislhMFovJYjFZLCaLxWSx
mCwWk8VislhMFovJYjFZLCaLxWSxmCwWk8VislhMVjAzjVs0btG4ReMWjVs0btG4ReMWjVs0btG4
ReMWjVs0btG4ReMWjVs0btG4ReMWjVs0blG0RdEWRVsUbVG0RdEWRVsUbVG0RdEWRVsUbVG0RdEW
RVsUbVG0RdEWRVsUbVG0RdEWRVsUbVG0dZj5MDPVW1RvUb1F9RbVW1RvUb1F9RbVW1RvUb1N9TbV
21RvU71N9TbV21RvU71N9TbV21RvU71N9TbVQ8s4aBkHLeOgZRy0jIOWcdAyDlrGQcs4aBkHLeOg
ZRy0jIOWcdAyDlrGQcs4aBkHLeOgZRy0jIOWcdAyDlrGQcs4aBkHLeOgZRy0jIOWcdAyDlrGQcs4
aBkHLeOgZRy0jIOWcdAyDlrGQcs4aBkHLeOgZRy0jIOWcdAyDlrGQcs4aBkHLeOgZRy0jIOWcdAy
DlrGQcs4aBkHLeOgZRy0jIOWcdAyDlrGQcs4aBkHLeOgZRy0jIOWcdAyDlrGQcs4aBkHLeOgZRy0
jIOWcdAyDlrGQcs4aBkHLeOgZRy0jIOWcdAyDlrGQcs4aBkHLeOgZRy0jIOWcdAyDlrGQcs4aBkH
LeOgZRy0jIOWcdAyDlrGQcs4aBkHLeOgZRy0jIONcZAwDhLGhyfMQ+OCxqFlHLSMg5Zx0DIOWsZB
yzhoGQct46BlHLSMg5Zx0DIOWsZByzhoGQct46BlHLSMg5Zx0DIOWsZByzhoGQct46BlHLSMg5Zx
0DIOWsZByzhoGQct46BlHLSMg5Zx0DIOWsZByzhoGQct46BlHLSMg5Zx0DIOWsZByzhoGQct46Bl
HLSMg5bx4QkTUjT8jIOfcfAzDn7Gwc84+BkHP+PgZxz8jIOfcfAzDn7GhyfMTNEQNQ6ixkHUOIga
B1HjIGocRI2DqHEQNQ6ixkHUOIgaB1HjIGocRI2DqHEQNQ6ixkHUOIgaB1HjIGocRI2DqHEQNQ6i
xkHUOIgaB1HjIGocRI2DqHEQNQ6ixkHUOIgaH54wM9VD3TioGwd14yTVw+E4OBwHh+N85XB8U0Tn
O0a+Y+Q7Rr5j5DtGvmPkO0a+Y+Q7Rr5j5DtGvmPkO0a+Y+Q7Rr5j5DtGvmPkO0a+Y+Q7Rr5j5DtG
vmPkO0a+Y+Q7Rn7Hj5Hfmt8w/fyTr/7DF7/5334T8zd+/JNf9lL6uz/58oef/ej3Pv780x9/+ff7
tdK/6b3/A3+H9Gd/HfXXoZV++ITxJcVSkiwlyVKSLCXJUpIsJclSkiwlyVKSLCXJUpIsJclSkiwl
yVKSLCXJUpIsJclSkiwlyVKSLCXJUpIsJclSkiwlyVKSLCXJUpIsJclSkiwlyVKSLCXJD97JmpKs
KcmakqwpyZqSrCnJmpKsKcmakqwpyZqSrCnJmpKsKcmakqwpyZqSrCnJmlKsKcWaUqwpxZpSrCnF
mlKsKcWaUqwpxZpSrCnFmlKsKcWaUqwpxZpSrCnFmlKsKcWaUqwpxZpSrCnFmlKsKcWaUqwpxZpS
rCnFmlKsKcWaUqwpxVJSLCXFUlIsJcVSUiwlxVJSLCXFUlIsJcWP4kX1iuoV1SuqV1SvqF5RvaJ6
RfWK6hXVK6pXVK+oXlG9onpF9YrqFdUrqldUr6heUb2iekX1isYVjSsaVzSuaFzRuKJxReOKxhWN
KxpXNK5oXNG4onFF44rGFY0rGlc0rmhc0biicUXjisYVjSsaVzSuaFzTuKZxTeOaxjWNaxrXNK5p
XNO4pnFN45rGNY1rGtc0rmlc07imcU3jmsY1jWsa1zSuaVzTuKZxTeOaxkGbHGiTA21yoE0OtMmB
NjnQJgfa5ECbHGiTA21yoE0OtMmBNjnQJgfa5ECbHGiTA21yoE0OtMmBNjnQJgfa5ECbHGiTA21y
oE0OtMmBNjnQJgfa5ECbHGiTA21yoE0OtMmBNjnQJgfa5ACZHCCTA2RygEwOkMkBMjlAJgfI5ACZ
HCCTA2RygEwOkMkBMjlAJgfI5ACZHCCTA2RygEwOkMkBMjlAJgfI5ACZHCCTA2RygEwOkMkBMjlA
JgfI5ACZHCCTA2RygEwOkMkBMjlAJgfI5ACZHCCTA2RygEwOkMkBMjlAJgfI5ACZHCCTA2RygEwO
kMkBMjlAJgfI5ACZHCCTA2RygEwOkMkBMjlAJgfI5ACZHCCTA2RygEwOkMkBMjlAJgfI5ACZHCCT
A2RygEwOkMkBMjlAJgfI5ACZHCCTA2RygEwOkMkBMjlAJgfI5ACZHCCTA2RygEwOkMkBMjlAJgfI
5ACZHCCTA2RygEwOkMkBMjlAJgfI5ACZHCCTD0+YmQ6CnRywkwN2coYOwp8c+JMDf3LgTw78yYE/
OfAnB/7kwJ8c+JMDf3LgTw78yYE/OfAnB/7kwxNmpoNDB0FTDmjKAU05oCkHNOWAphzQlA9PhieH
J8xMB2FUDozKgVE5MCoHRuXAqBwYlQOjcmBUDozKgVE5MCoHRuXAqBwYlQOjcmBUDozKgVE5MCoH
RuXAqBwYlQOjcmBUDozKgVE5MCoHRuXAqBwYlQOjcmBUDozKgVE5MCrnK0blm9JK3zHyHSPfMfId
I98x8h0j3zHyHSPfMfIdI98x8h0j3zHyHSPfMfIdI98x8h0j3zHyHSPfMfIdI98x8h0j3zHyHSPf
MfI7foz8Rn+X9Jf4998e2nxo86HNhzYf2nxo86HNhzYf2nxo86HNhzYf2nxo86HNhzYf2nxo86HN
hzYf2nxo86HNhzYf2nxo86HNhzYf2nxo86HNhzYf2nxo86HNhzYf2nxo86HNhzYf2nxo86HNhzYf
2nxo86HNhzYf2nxo86HNhzZf2nxp86XNlzZf2nxp86XNlzZf2nxp86XNlzZf2nxp86XNlzZf2nxp
86XNlzZf2nxp86XNlzZf2nxp86XNlzZf2nxp86XNlzZf2nxp86XNlzZf2nxp86XNlzZf2nxp86XN
lzZf2nxp86XNl59RLx28dPDSwUsHLx28dPDSwUsHLx28dPDSwUsHLx28dPDSwUsHLx28dPDSwUsH
Lx28dPDSwUsHLx28dPDSwUsHLx28dPDSwUsHLx28dPDSwUsHLx28dPDSwUsHLx28dPDSwUsHLx28
dPDSwUsHLx28dPDSwfvzHfyQwe/zZPFk8yR4kjwpnjRPhieHJ8y8mHkx82LmxcyLmRczL2ZezLyY
eTHzZubNzJuZNzNvZt7MvJl5M/Nm5s3MwczBzMHMwczBzMHMwczBzMHMwczJzMnMyczJzMnMyczJ
zMnMyczJzMXMxczFzMXMxczFzMXMxczFzMXMzczNzM3MzczNzM3MzczNzM3MzczDzMPMw8zDzMPM
w8zDzMPMw8zDzIeZDzMfZj7MfJj5MPNh5sPMh5kPM19mvsx8mfky82Xmy8yXmS8zX2amg4gkF5Hk
IpJcRJKLSHIRSS4iyUUkuYgkF5HkIpJcRJKLSHIRSS4iyUUkuYgkF5HkIpJcRJKLSHIRSS4iyUUk
uYgkF5HkIpJcRJKLSHIRSS4iyUUkuYgkF5HkIpJcRJKLSHIRSS4iyUUkuYgkF5HkIpJcRJKLSHIR
SS4iyUUkuYgkF5HkIpJcRJKLSHIRSS4iyUUkuYgkF5HkIpJcRJKLSPLhCTPTQYySi1FyMUouRsnF
KLkYJRej5GKUXIySi1FyMUouRsnFKLkYJRej5GKUXIySi1FyMUouRsnFKLkYJRej5GKUXIySi1Fy
MUouRsnFKLkYJRej5GKUXIySi1FyMUouRsnFKLkYJRej5GKUXIySi1FyMUouRsnFKLkYJRej5GKU
XIySi1FyMUouRsnFKLkYJRej5GKUXIySi1FyMUouRsnFKLkYJRej5GKUXIySi1FyMUouRsnFKLkY
JRej5GKUXIySi1FyMUouRsnFKLkYJRej5GKUXIySi1FyMUouRsnd38AvUL5j5DtGvmPkO0a+Y+Q7
Rr5j5DtGvmPkO0a+Y+Q7Rr5j5DtGvmPkO0a+Y+Q7Rr5j5DtGvmPkO0a+Y+Q7Rr5j5DtGvmPkP5lj
5LcG4/ybWcsvP/+LL7785Ac/fXtfz9n0Vxrhn/2L3/nsR5/8OmTND68+Xx/sHJudY7NzbHaOzc6x
2Tk2O8dm59jsHJudY7NzbHaOzc6x2Tk2O8dm59jsHJudY7NzbHaOzc6x2Tk2O8dm59jsHJudY7Nz
bHaOzc6x2Tk2O8dm59jsHJudY7NzbHaOzc6x2Tk2O8dm59jsHJudY7NzbHaOzc6x2Tk2O8dm59js
HJudY7NzBDtHsHMEO0ewcwQ7R7BzBDtHsHMEO0ewcwQ7R7BzBDtHsHMEO0ewcwQ7R7BzBDtHsHME
O0ewcwQ7R7BzBDtHsHMEO0ewcwQ7R7BzBDtHsHMEO0ewcwQ7R7BzBDtHsHMEO0ewcwQ7R7BzBDtH
sHMEO0ewcwQ7R/Czd9DBoINBB4MOBh0MOhh0MOhg0MGgg0EHgw4GHQw6GHQw6GDQwaCDQQeDDgYd
DDoYdDDoYNDBoINBB4MOBh0MOhh0MOhg0MGgg0EHgw4GHQw6GHQw6GDQwaCDQQeDDgYdDDoYdDDo
YNDBoINBB4MOJh1MOph0MOlg0sGkg0kHkw4mHUw6mHQw6WDSwaSDSQeTDiYdTDqYdDDpYNLBpINJ
B5MOJh1MOph0MOlg0sGkg0kHkw4mHUw6mHQw6WDSwaSDSQeTDiYdTDqYdDDpYNJBmJILU3JhSi5M
yYUpuTAlF6bkwpRcmJILU3JhSi5MyYUpuTAlF6bkwpRcmJILU3JhSi5MyYUpuTAlF6bkwpRcmJIL
U3JhSi5MyYUpuTAlF6bkwpRcmJILU3JhSi5MyYUpuTAlF6bkwpRcmJILU3JhSi5MyYUpuTAlF6bk
wpRcmJILU3JhSi5MyYUpuTAlF6bkwpRcmJILU3JhSi5MyYUpuTAlF6bkwpRcmJILU3JhSi5MyYUp
uTAlF6bkwpRcmJILU3JhSi5MyYUpuTAlF6bkwpRcmJILU3JhSi5MyYUpuTAlF6bkwpR8eMLMdBC4
5AKXXOCSC1xyYUouTMmFKbkwJRem5MKUXJiSC1NyYUouTMmFKbkwJRem5MKUXJiSC1NyYUouTMmF
KbkwJRem5MKUXJiSC1NyYUouTMmFKbkwJRem5MKU3KJ6wCUXuOQCl1zgkgtccoFLLnDJBS65wCUX
uOQCl1zgkgtccoFLLnDJBS65wCUXuOQCl1zgkgtccoFLLnDJBS65wCUXuOQCl1zgkgtccoFLLnDJ
BS65wCUXuOQCl1zgkgtccoFLLnDJBS65wCUXuOQCl1zgkgtccoFLLnDJBS65wCUXuOQCl1zgkgtc
coFLLnDJBS65wCUXuOQCl1zgkgtccoFLLnDJBS65wCUXuOQCl1zgkgtccoFLLnDJBS65wCUXuOQC
l1zgkgtccr+CS74pWfMdI98x8h0j3zHyHSPfMfIdI98x8h0j3zHyHSPfMfIdI98x8h0j3zHyHSPf
MfIdI98x8h0j3zHyHSPfMfIdI98x8h0jv+PHyG+5rPlhSl5H2ty0uWlz0+amzU2bmzY3bW7a3LS5
aXPT5qbNTZubNjdtbtrctLlpc9Pmps1Nm5s2N21u2ty0uWlz0+amzU2bmzY3bW7a3LS5aXPT5qbN
TZubNjdtbtrctLlpc9Pmps1Nm5s2N21u2ty0eWjz0OahzUObhzYPbR7aPLR5aPPQ5qHNQ5uHNg9t
Hto8tHlo89Dmoc1Dm4c2D20e2jy0eWjz0OahzUObhzYPbR7aPLR5aPPQ5qHNQ5uHNg9tHto8tHlo
89Dmoc1Dm4c2DyUeSjz8RDpUb6jeUL2hekP1huoN1RuqN1RvqN5QvaFoQ9GGog1FG4o2FG0o2lC0
oWhD0YZ+Df0a+jX0a+jX0K+hX0O/hn4N/Rr6NfRr6NfQr6FfQ7+Gfg39Gvo19Gvo19CvoV9Dv4Z+
Df0a+nXo16Ffh34d+nXo16Ffh34d+nXo16Ffh34danWo1aFWh1odanWo1aFWh1odanWo1aFWh1od
2nQo0aFEhxIdSnQo0aFEhxIdSnQo0aFEhxIdSnQo0aFEhxIdSnQo0aFEh58SD206tAlM5IKJXDCR
CyZywUQumMgFE7lgIhdM5IKJXDCRCyZywUQumMgFE7lgIhdM5IKJXDCRCyZywUQumMgFE7lgIhdM
5IKJXDCRCyZyoUMudMiFDrnQIRc65EKHXOiQCx1yoUMudMgFCrlAIRcW5MKCXFiQCwtyYUEuLMiF
BbmwIBcW5MKCXBCQC/lxIT8u5MeF/LiQHxfy40J+XMiPC/lxIT8u5MeF/LiQHxfy40J+XMiPC/lx
IT8u5MeF/LgAHxfg4wJ8XICPC+dx4TwunMeF87hwHhfO48J5XDiPC+dx4TwunMeF87hwHhe844J3
XPCOC95xwTsueMcF77jgHRe844J3XPCOC95xwTsueMcF77jgHRe844J3XPCOC95xwTsueMcF77jg
HRe844J3XPCOC95xwTsueMcF77jgHRe844J3XPCOC95xwTsueMcF77hQHReq40J1XKiOC9VxoTou
VMeF6rhQHReq40J1XKiOC9VxoTouVMf9eaqjvv/zVMdPnyyebJ4ET5InxZPmyfDk8ISZFzMvJlxM
uJhwMeFiwsWEiwkXE24m3Lyqm5k3M29m3sy8mXkz82bmzczBzMHMwczBzMGEwYTBhMGEwYTJhMmE
yYTJhMmrmsyczJzMnMxcvK/iT5V/io+0+Uibj7T5SJv33nykzUfafKTNzM3MzczDzMPMw8x/1ZRv
StZ8x8h3jHzHyHeMfMfId4x8x8h3jHzHyHeMfMfId4x8x8h3jHzHyHeMfMfId4x8x8h3jHzHyHeM
fMfId4x8x8h3jHzHyO/4MfIb/QXKzz/5yrH84jd/+vCHH33+4c1/8Rv/+Yu/zx/7/JMff/b5l7/w
D/89zqv/kIvsLx7zb33hfxXq8xe+xL94kH+UEX65f7XvT78W+W4ZvluG75bhu2X4bhm+Ww7fLYfv
lsN3y+E7/DDzYebDzIeZDzMfZr7MfJn5MvNl5svMl5kvM19mvszMfrPYbxb7zWK/Wew3i/1msd8s
9pvFfrPYbxb7zWK/WYuZ2XgWG89i41lsPIuNZ7HxLDaexcaz2HgWG89i41lsPIuNZ7HxLDaexcaz
2HgWG89i41lsPIuNZ7HxrGBmdqDFDrTYeBYbz2LjWWw8i41nsfEsNp7FxrPYeBYbz2LjWcnMxczF
zMXMbE6rmLmYme1qsV0ttqvFdrXYrhbb1WK7WmxXi+1qsV0ttqvFdrXYrhbb1WK7WmxXa5iZxi0a
t2jconGLxi0at2jconGLoi2KtijaomiLoi2KtijaomiLoi2KtujXol+Lfi36tejXol+bfm36tenX
pl+bfm36tenXpl+bfm36tenXpl+bfm36tenXpl+bfm36tenXpl+bfm36tenXpl+bfm36tenXpl+b
fm36tenXpl+bfm36tenXpl+bfm1+ht8UbVO0TdE2RdsUbVO0TdE2RdsUbVO0TdE2RdsUbVO0TdE2
RdsUbVO0n+c8fvqEmWncpnGbxm0at2ncpnGbxm0at2ncpnGbxm0at2ncpnGbxm0at2ncpnGbxm0a
t2ncpnGbxm0at/k5blO9TfU21dtUb1O9TfU21dtUb1O9TfU2P8dtOrjp4KaDmw5uOrjpYNDBoINB
B4MOBh0MOhh0MOhg0MGgg0EHgw4GHQw6GHQw6GDQwaCDQQeDDgYdDDoYdDDoYNDBoINBB4MOBh0M
Ohh0MOhg0MGgg0EHgw4GHQw6GHQw6GDQwaCDQQeDDgYdDDoYdDDoYNDBoINBB4MOBh0MOhh0MOhg
0MGgg0EHgw4GHQw6GHQw6GDQwaCDQQeDDgYdDDoYdDDoYNDBoINBB4MOBh0MOhh0MOhg0MGgg0EH
gw4GHQw6GHQw6GDQwaCDQQeDDgYdDDoYdDDoYNDBoINBB4MOJh1MOph0MOlg0sGkg0kHkw4mHUw6
mHQw6WDSwaSDSQeTDiYdTDqYdDDpYNLBpINJB5MOJh1MOph0MOlg0sGkg0kHkw4mHUw6mHQw6WDS
waSDSQeTDiYdTDqYdDDpYNLBpINJB5MOJh1MOph0MOlg0sGkg0kHkw4mHUw6mHQw6WDSwaSDSQeT
DiYdTDqYdDDpYNLBpINJB5MOJh1MOph0MOlg0sGvOI9vyBl9x8h3jHzHyHeMfMfId4x8x8h3jHzH
yHeMfMfId4x8x8h3jHzHyHeMfMfId4x8x8h3jHzHyHeMfMfId4x8x8h3jHzHyO/6MfIb/TXZn/19
zP/+u5z/7Xcxf+PHP/llL6W/+5Mvf/jZj37v488//fGXv/zF9O9679/wb5Gu3/qZTxVfTCwoyYKS
LCjJgpIsKMmCkiwoyYKSLCjJgpIsKMmCkiwoyYKSLCjJgpIsKMmCkiwoyYKSLCjFglIsKMWCUiwo
xYJSLCjFglIsKMWCUiwoxYJSLCjFglIsKMWCUiwoxYJSrCPFOlKsI8U6UqwjxTpSrCPFOlKsI8U6
UqwjxTpSrCPFOlKsI8U6UqwjxTpSrCPFOlKsI8U6UqwjxTpSrCPFOlKsI8U6UqwjxTpSrCPFOlKs
I8U6UqwjxTpSrCPFOlKsI8U6UqwjxTpSrCPFOlKsI8U6UqwjxTpSrCPFOlKsI8U6UqwjxTpSrCPF
OlKsI8U6UqwjxY/lRfWK6hXVK6pXVK+oXlG9onpF9YrqFdUrqldUr6heUb2iekX1iuoV1SuqV1Sv
qF5TvaZ6TfWa6jXVa6rXVK+pXlO9pnpN9ZrqNdVrqtdUr6leU73mx/Kmg00Hmw42HWw62HSw6WDT
waaDTQebDjYdbDrYdLDpYNPBpoNNB5sONh1sOth0sOlg08Gmg00Hmw42HWw62HSw6WDTwaaDTQeb
DjYdbDrYdLDpYNPBpoNNB5sONh1sOth0sOlg08Gmg00Hmw42HWw62HSw6WDTwaaDTQebDjYdbDrY
dLDpYNPBpoNNB5sONh1sOth0sOlg08Gmg00Hmw42HWw62HSw6WDTwaaDTQeHDg4dHDo4dHDo4NDB
oYNDB4cODh0cOjh0cOjg0MGhg0MHhw4OHRw6OHRw6ODQwaGDQweHDg4dHDo4dHDo4NDBoYNDB4cO
Dh0cOjh0cOjg0MGhg0MHhw4OHRw6OHRw6ODQwaGDQweHDg4dHDo4dHDo4NDBoYNDB4cODh0cOjh0
cOjg0MGhg0MHhw4OHRw6OHRw6ODQwaGDQweHDg4dHDo4dHDo4NDBoYNDB4cODh0cOjh0cOjg0MGh
g0MHhw4OHRw6OHRw6ODQwaGDQweHDg4dHDo4dPDQwUMHDx08VO9QvUP1DtU7VO9QvUP1DtU7VO9Q
vUP1DtU7VO9QvUP1DtU7VO9QvUP1DtU7VO9QvUP1DtU7VO9QvUP1DtU7VO9QvUP1DtU7VO9QvUP1
DtU7VO9QvUP1DtU7VO9QvUP1DtU7VO9QvUP1DtU7VO9QvUP1DtU7VO9QvUP1DtU7VO9QvUP1DtU7
VO9QvUP1DtU7VO9QvUP1DtU7VO9QvUP1DtU7VO9QvUP1vhJVviFs9R0j3zHyHSPfMfIdI98x8h0j
3zHyHSPfMfIdI98x8h0j3zHyHSPfMfIdI98x8h0j3zHyHSPfMfIdI98x8h0j3zHyHSO/68fIb/S3
SH+Jf/PtocSHEh9KfCjxocSHEh9KfCjxocSHEh9KfCjxocSHEh9KfCjxocSHEh9KfCjxpcSXEl9K
fPmJ9NLmS5svbb60+dLmS5svbb60+dLmS5svbb60+dLmS5svbb60+dLmS5svbb60+dLmS5svbb60
+dLmS5svbb60+dLmS5svbb60+dLmS5svbb60+dLmS5svbb60+dLmS5svbb60+dLmS5svbb60+dLm
S5svbb60+dLmS5svbb60+dLmS5svbb60+dLmS5svbb60+dLmS5svbb60+dLmS5svbb60+dLmS5sv
bb78RHrp4KWDlw5eOnjp4KWDlw5eOnjp4KWDlw5eOnjp4KWDlw5eOnjp4KWDlw7en+/g+v7Pd/DD
k8WTzZPgSfKkeNI8GZ4cnjDzYubFzIuZFzMvZl7MvJh5MfNi5sXMm5k3M29m3sy8mXkz82bmzcyb
mTczBzMHMwczBzMHMwczBzMHMwczBzMnMyczJzMnMyczJzMnMyczJzMnMxczFzMXMxczFzMXMxcz
FzMXMxczNzM3MzczNzM3MzczNzM3MzczNzMPMw8zDzMPMw8zDzMPMw8zDzMPMx9mPsx8mPkw82Hm
w8yHmQ8zH2Y+zHyZ+TLzZebLzJeZLzNfZr7MfJmZDqKTLHSShU6y0EkWOslCJ1noJAudZKGTLHSS
hU6y0EkWOslCJ1noJAudZKGTLHSShU6y0EkWOslCJ1noJAudZKGTLHSShU6y0EkWOslCJ1noJAud
ZKGTLHSShU6y0EkWOsmHJ8xMB/FKFl7JwitZeCULr2ThlSy8koVXsvBKFl7JwitZeCULr2ThlSy8
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
bWqxTS22qcU2tdimFtvUYptabFOLbWqxTa1gZvarxX612K8W+9Viv1psU4ttarFNLbapxTa12KYW
29Rim1psU4ttarFNLbapxTa12KYW29Rim1psU4ttarFNLbapxTa12KYW29Rim1psU4ttarFNLbap
xTa12KYW29Rim1psU4ttarFNLbapxTa12KbWYWYat2jconGLxi0at2jconGLxi0at2jconGLxq3L
zFRvUb1F9TbV21RvU71N9TbV21RvU71N9TbV21RvU71N9TbV21RvU71N9TbV21RvU71N9TbV21Rv
U71N9TbV21RvU71N9TbV21RvU71N9TbV21RvU71N9TbV21RvU71N9TbV21RvU71N9Tb/VGHTwU0H
Nx3cdHDTwU0HNx3cdHDTwU0HNx3cdHDTwU0HNx3cdHDTwU0HNx3cdHDTwU0HNx3cdHDTwU0HNx3c
dHDTwU0HNx3cdHDTwU0HNx2EW9lwKxtuZcOtbLiVDbey4VY23MqGW9lwKxtuZcOtbLiVDbey4VY2
3MqGW9lwKxtuZcOtbLiVDbey4VY23MqGW9lwKxtuZcOtbLiVDbey4VY23MqGW9lwKxtuZcOtbLiV
Dbey4VY23MqGW9lwKxtuZcOtbLiVDbey4VY23MqGW9lwKxtuZcOtbLiVDbey4VY23MqGW9lwKxtu
ZYOrbHCVDa6ywVU2uMoGV9ngKhtcZYOrbHCVDa6ywVU2uMoGV9ngKhtcZYOrbHCVDa6ywVU2uMoG
V9ngKhtcZYOrbHCVDa6ywVU2uMoGV9ngKhtcZYOrbHCVDa6ywVU2uMoGV9ngKhtcZYOrbHCVDa6y
wVU2uMoGV9ngKhtcZYOrbHCVDa6ywVU2uMoGV9ngKhtcZYOrbHCVDa6ywVU2uMoGV9ngKhtcZYOr
bHCVDa6ywVU2uMoGV9ngKhtcZYOrbHCVDa6ywVU2uMoGV9ngKhtcZYOrbHCVDa6ywVU2uMoGV/nw
pL9BH/AdFd5R4R0V3lHhHRXeUeEdFd5R4R0V3lHhHRXeUeEdFd5R4R0V3lHhHRXeUeEdFd5R4R0V
3lHhHRX+JzsqfKO/pvKzvxfx33+n4q9/J+LHP/llLx6/+5Mvf/jZj37v488//fGXv/zl4+9671/z
b3P87W/msx9/8qOfvo2v5+Dzd7/ff/YvfuezH33yfsvo1/tbRn/96v5j/4rRL/V+v5Pfjn+/j/xn
38aPP//sy8++/MmPP/nH/3b8H9711/cd+Wv/Dvl7fI3+Dx/q3/OD/CX+/virP/zDz7/35ad//qFh
H33x6cd/lalvzV84jvZLfNq/pr+ufh2fkl/3190/djz+3l/nfiK/zk/hr/jefuFfOp9/8vFnP/rR
Jx9/+Y//993/8K6/23/f/Q8f6tf39923Z/n5FT/gv3kT+OLLj778iy9+5m39+Cf/y1fPfuvD2N/E
bvKLJ/oWvkj//LM//Y9/8unnX3z5zz/9wW/tb99L9j/O977K3lfZd+qr7H98M//3X3z4b33v449+
9PEnf/bhD3762Y++iej+zVN81/v7N3/U/zRS/Pf92H+6Wf7mH3/+2V9+8cnnX3z1Hz790X/63pc/
/OR7H/7Ib/7w0y++/Ozzn3zvy88/+i8f/gsf/dlv/vjD//nw8JMffO8vPvyR7/30G/Cn7/+n/7W/
erc/85H9+MPc//FHH/35J//xsx/9xz/77KMffPW/RP7pk9/6k88++5p+3vrmPqC/dZf/Okb6iz//
5K9+Qvj8e5/96Ht//Sb++KOP//SX/GHhm3qd/vijz79bn/gPH9D/LJ/4n75Wv/vvfu/Di/Unn3z5
8Q9/86Mff/qzfxF9/unHf/pnP/2Hcv/Lxx8+D1/+1vrnf/7Fb63v/+3ryM++lb/6C+iv/+/3/vST
T3780Z99+l8++d7//RefffnXl4P1t4/2q4719S1tv/Ik/wivzl99gX/19n76vj78Pf/xD392Nfrv
D3863Jef/eknP/qtP/mT2P3Hn/T3Ps6P/vh7Ofn9790/OZ9876P86KMfZHz0J5988sk///RHf/LZ
b/1BfPHpx3/++//14391/+Lj/ft/8tG/+v0f/tG/+v2ffPyT3+4/WF98+n/sf/mfP/pX/9eX/8e+
f/GD//1f/5c//l9/+4vf/vP1w0/+1/XDP9r/1/23//U//OW//V//9Q/+zb/88N/9gx/82W9/+pef
/tv/8z/91bM//MPvf/HJT/71T/7oD//l+qM//J3v/+H+4Z/9hz/493/28Y/+7af/7s++/OPf/tPf
+eF/+PDs3/xfv/Nf/vhH//4nf7z/8tN/87/+6y//wx/+py//w4e39bv/51dv+w9/7y8//aM//OFf
/tEf/M73/+gP/v2f/OB//7O//KPf++3+7T+v//KDf3n/83/4g9/57I/+4P/49E9+//u/9fUup+/T
8Et+Gn7x98XPvIAff/zXC8wv2a5f8VOwfrA/OX/y/fu9+1H+yfcyvt8f/tMnH3/voz/JTz7Zn8z3
8/vr1/Qp+L2vXqKP/9W/XD/98//hD/7o+3/0h7/96b/78JL+4A9+//6b//2v3v7/8+E//9cPL9eH
l+pf/ukf/eG//q+//Z9//Md/8JN//b/91cv3e+t/++Nd3//4z+8XP/0U/vEf/Mv8Nx8+Zf/hD/6f
D5+G/99f/tv/7f/76R/+/vc/vN/fz4//1e//5x/8q9//0z+Mf18f/6v/69N/9+m//vZ+J/zT/TR8
fd8Jf8NB/08/+/yTj370m5/8xcff+9PPf/p//vTz7/3gk7+66P/lpz/6wYcd5Hs376//SPLffyz9
B830Hfkh9R/0GnynfmT9ml+JX+7t/8cPb/eT/+druV39Sh/g51/bZ+dXfB2+gU/X3+8viM+//V9b
H3/4XvjiW/WX698y0jf1Ov76fw7+4uPPP/uzP/vZR9/7mm7/X+M/X/iFH8S3qoP/8xzp/3E/SV/r
/wLgW/Sh/ON9A/zoo//y6X/66j9++P/84ovvffb5p//p0x/9z/59/Ys+rO/GxvuNv4zfpaX5f4IX
8+v8x+1/9a+tWf9Tfc//jcN/dz+9f/3GPzz66Ku3/oPPPv6LP//pRfI3v//9b/BT98sM9k/iL9xf
5oX4J/RX5q/n5fiHvZPvfXu/L773D/oL61vx4u5v74u7/yd/cb+1L+1+f5//7Avx/j7/FV+Of9g7
+W9/af4vP/70x5/81n/7Hwf8ix+s/8+38Rvlb5v1m335/9svOXz6gz/76++Pr/Evmr/5nX1H/vL4
mz+4r+8vhH//yV9+/ulPP///7L8dLP/Zjz/68oc/+/b+4JM//u3/7d/87keff/HVP8P/8rOf/f/9
8CY/zLp/888+/eO//s9f8z+0/Ed4j7+m3/n5VT6Jf8O7/Js/0F/7V86nP/ryk8//5KOfvscffPbn
v/Hhz389r6Xv5+v8UH76B37xx8Kf+Oq9/tpfgF/Ta/bXH9DX8kX3N78Mv/bPz1//wT//7EefffnZ
jz79+Hsff3jTf/obH/3oJ79SMP6/P/rJ//7hv/6rN+Nve8ffrXj8bR/ld2qt/Ad/rL/oLXxdH+sv
fp9f48f6D9s5v70/N36dP5LvX8MX0l9+9vmfflibfpWX7w/+6o988ev5ovqZ9//L/h33D3rN4tv6
lRL/RP6e/5lP+D+Vv+7/4R/yd+OfHcX7Z0d/n5fjl/jS+uVflQ+b6Vd/f/9a//p+3xe/zGv0daft
6zj7fHOb6K/jpfimvm+/xn36V/lq+lvezNf/jz7/pvf43fnfGf7a/5b4O7+evj37zK+WrJ8++o9/
9R30H//k85/+VusXX370+Zf/CF+Av+Ad/+P8mPHt/ZE0vs4fSf/6L973bf6Lvwi/pd/tf9+J/+Ff
lflt/XbJd/n/2Rfi/fT2K74c/7B38u39X3Ll17li59//96Z++X/N9B//4/721K862Hf291N/1Rfi
a/5Xuv4qE37+a3pzX89vif4j335/1Rfum/oS+fX/XvHXM96v9pXzjX7D/W3q7/d/62d8AAQDDJzE
wEkMnMTASQycxMBJDJzEwEkMnMTASQycxIJLVJxExUlUnETFSVScRMVJVJxExUlUnETFSVScRMVJ
VJxExUlUnETFSVScRMVJVJxExUlUnETFSVScRMVJVJxExUlUnETFSVScRMVJVJxExUlUnETFSVSc
RMVJVJxExUlUnETFSVScRMVJVJxExUlUnETFSVScRMVJVJxExUlUnETFSVScRMVJVJxExUlUnETF
SVScRMUpVJxCxSlUnELFKVScQsUpVJxCxSlUnELFKVScQsUpVJxCxSlUnELFKVScQsUpVJxCxSlU
nELFKVScQsUpVJxCxSksuKKDRQeLDhYdLDpYdLDoYNHBooNFB4sOFh0sOlh0sOhg0cGig0UHiw4W
HSw6WHSw6GDRwaKDRQeLDhYdLDpYdLDoYNHBooNFB4sOFh0sOlh0sOhg0cGig0UHiw4WHSw6WHSw
6GDRwaKDRQeLDhYdLDpYdLDoYNHBooNFB4sOFh0sOlh0sOhg0cGig0UHiw4WHSw6WHSw6GDRwaKD
TQebDjYdbDrYdLDpYNPBpoNNB5sONh1sOth0sOlg08Gmg00Hmw42HWw62HSw6WDTwaaDTQebDjYd
bDrYdLDpYNPBpoNNB5sONh1sOth0sOlg08Gmg00Hmw42HWw62HSw6WDTwaaDTQebDjYdbDrYdLDp
YNPBpoNNB5sONh1sOth0sOlg08Gmg00Hmw42HWw62HSw6WDTwaaDTQebDjYdbDrYdLDpYNPBpoNN
B5sONh1sOth0sOlg08Gmg00Hmw42HWw62HSw6WDTwaaDTQebDjYdbDo4dHDo4NDBoYNDB4cODh0c
Ojh0cOjg0MGhg0MHhw4OHRw6OHRw6ODQwaGDQweHDg4dHDo4dHDo4NDBoYNDB4cODh0cOjh0cOjg
0MGhg0MHhw4OHRw6OHRw6ODQwaGDQweHDg4dHDo4dHDo4NDBoYNDB4cODh0cOjh0cOjg0MGhg0MH
hw4OHRw6OHRw6ODQwaGDQweHDg4dHDo4dHDo4NDBoYNDB4cODh0cOjh0cOjg0MGhg0MHhw4OHRw6
OHRw6ODQwaGDQweHDg4dHDo4dHDo4NDBoYOHDh46eOjgoYOHDh46eOjgoYOHDh46eOjgoYOHDh46
eOjgoYOHDh46eOjgoYOHDh46eOjgoYOHDh46eP6qg1/PHfodI98x8h0j3zHyHSPfMfIdI98x8h0j
3zHyHSPfMfIdI98x8h0j3zHyHSPfMfIdI98x8h0j3zHyHSPfMfIdI98x8h0j/8kfI7+Vv0C5futn
puR1pM2HNh/afGjzoc2HNh/afGjzoc2HNh/afGjzoc2HNh/afGjzoc2HNh/afGjzoc2HNh/afGjz
oc2HNh/afGjzoc2HNh/afGjzoc2HNh/afGjzoc2HNh/afGjzoc2HNh/afGjzoc2HNh/afGjzoc2H
Nh/afGjzoc2HNh/afGjzoc2HNh/afGjzoc2HNh/afGjzoc2HNh/afGjzoc2HNh/afGjzpc2XNl/a
fGnzpc2XNl/afGnzpc2XNl/afGnzpc2XNl/afGnzpc2XNl/afGnzpc2XNl/afGnzpc2XNl9+Rr10
8NLBSwcvHbx08NLBSwcvHbx08NLBSwcvHbx08NLBSwcvHbx08NLBSwcvHbx08NLBSwcvHbx08NLB
SwcvHbx08NLBSwcvHbx08NLBSwcvHbx08NLBSwcvHbx08NLBSwcvHbx08NLBSwcvHbx08NLBSwcv
Hbx08NLBSwcvHbx08NLBSwcvHbx08NLBSwcvHbx08NLBSwcvHbx08NLBSwcvHbw/38H4/s938MOT
xZPNk+BJ8qR40jwZnhyeMPNi5sXMi5kXMy9mXsy8mHkx82LmxcybmTczb2bezLyZeTPzZubNzJuZ
NzMHMwczBzMHMwczBzMHMwczBzMHMyczJzMnMyczJzMnMyczJzMnMyczFzMXMxczFzMXMxczFxMW
ExYTNhM2EzYTNhM2EzYTNq9qM3MzczPzMPMw8zDzMPMw8zDzMPMw8zDzMPNh5sPMh5kPMx9mPsx8
mPkw82Hmw8yXmS8zX2a+THiZ8DLhZcLLhDRu0bhF4xaNWzRu0bhF4xaNWzRu0bhF4xaNWzRu0bhF
4xaNWzRu0bhF4xaNWzRu0bhF4xaNWzRu0bhF4xaNWzRu0bhF4xaNWzRu0bhF4xaNWzRu0bhF4xaN
WzRu0bhF4xaNWzRu0bhF4xaNWzRu0bhF4xaNWzRu0bhF4xaNWzRuFTNTvUX1FtVbVG9RvUX1FtVb
VG9RvUX1FtVbVG9RvUX1FtVbVG9RvUX1FtVbVG9RvUX1FtVbVG9RvUX1FtVbVG9RvUX1FtVbVG9R
vUX1FtVbVG9dZqaDiw4uOrjo4KKDiw5uOrjp4KaDmw5uOrjp4KaDmw5uOrjp4KaDmw5uOrjp4KaD
mw5uOrjp4KaDmw5uOrjp4KaDmw5uOrjp4KaDmw7uv+rgP+4vUL5j5DtGvmPkO0a+Y+Q7Rr5j5DtG
vmPkO0a+Y+Q7Rr5j5DtGvmPkO0a+Y+Q7Rr5j5DtGvmPkO0a+Y+Q7Rr5j5DtGvmPkP5lj5LdcoPww
Ja8jbd60edPmTZs3bd60edPmTZs3bd60edPmTZs3bd60edPmTZs3bd60edPmTZs3bd60edPmTZs3
bd60edPmTZs3bd60edPmTZs3bd60edPmTZs3bd60edPmTZs3bd60edPmTZs3bd60edPmTZs3bd60
edPmTZs3bd60edPmTZs3bd60edPmTZs3bd60edPmTZs3bd60edPmTZs3bd60OWhz0OagzUGbgzYH
bQ7aHLQ5aHPQ5qDNQZuDNgdtDtoctDloc9DmoM1Bm4M2B20O2hy0OWhz0OagzUGbg59Rgw4GHQw6
GHQw6GDQwaCDQQeDDgYdDDoYdDDoYNDBoINBB4MOBh0MOhh0MOhg0MGgg0EHgw4GHQw6GHQw6GDQ
waCDQQeDDgYdDDoYdDDoYNDBoINBB4MOBh0MOhh0MKheUL2gekH1guoF1QuqF1QvqF5QvaB6QfWC
6gXVC6oXVC+oXlC9oHpB9YLqBdULqhdUL6heUL2kekn1kuol1Uuql1QvqV5SvaR6SfWS6iXVS6qX
VC+pXlK9pHpJ9ZLqJdVLqpdUL6leUr2kekn1kurBeQScR8B5BJxHwHkEnEfAeQScR8B5BJxHwHkE
nEfAeQScR8B5BJxHwHkEnEfAeQScR8B5BJxHwHkEnEfAeQScR8B5BJxHwHkEnEfAeQR4R4B3BHhH
gHcEeEeAdwR4R4B3BHhHgHcEeEeAdwR4R4B3BHhHgHcEeEeAdwR4R4B3BHhHgHcEeEeAdwR4R4B3
BHhHgHcEeEeAdwR4R4B3BHhHgHcEeEeAdwR4R4B3BHhHgHcEeEeAdwR4R4B3BHhHgHcEeEeAdwR4
R4B3BHhHgHcEeEeAdwR4R4B3BHhHgHcEeEeAdwR4R4B3BHhHgHcEeEeAdwR4R4B3BHhHgHcEeEeA
dwR4R4B3BHhHgHcEeEeAdwR4R4B3BHhHgHcEeEeAdwR4R4B3BHhHgHcEeEeAdwR4R4B3BHhHgHcE
eEeAdwR4R4B3BHhHgHcEeEeAdwR4R4B3BHhHgHcEeEeAdwR4R4B3BHhHgHcEeEeAdwR4R4B3BHhH
gHcEeEeAdwR4R4B3BHhHgHcEeEeAdwR4R4B3BHhHgHcEeEeAdwR4R4B3BHhHgHcEeEeAdwR4R4B3
BHhHgHcEeEeAdwR4R4B3BHhHgHcEeEeAdwR4R4B3BHhHgHcEeEeAdwR4R4B3BHhHgHcEeEeAdwR4
R4B3BHhHgHcEeEeAdwR4R4B3BHhHfIV3fFMC5TtGvmPkO0a+Y+Q7Rr5j5DtGvmPkO0a+Y+Q7Rr5j
5DtGvmPkO0a+Y+Q7Rr5j5DtGvmPkO0a+Y+Q7Rr5j5DtGvmPkO0Z+x4+R33KB8sOUvI60uWlz0+am
zU2bmzY3bW7a3LS5aXPT5qbNTZubNjdtbtrctLlpc9Pmps1Nm5s2N21u2ty0uWlz0+amzU2bmzY3
bW7a3LS5aXPT5qbNTZubNjdtbtrctLlpc9Pmps1Nm5s2N21u2ty0uWlz0+amzU2bmzY3bW5K3JS4
KXFT4qbETYmbEjclbkrclLgpcVPiocRDiYcSDyUeSjyUeCjxUOKhxEOJhxIPJR5KPJR4KPFQ4qHE
Q4mHEg8lHko8lHgo8VDiocRDiYcSDyUeSjyUePiJdKjeUL2hekP1huoN1RuqN1RvqN5QvaF6Q/WG
6g3VG6o3VG+o3lC9oXpD9YbqDdUbqjdUb6jeUL2hekP1huoN1RuqN1RvqN5QvaF6Q/WG6g3VG6o3
VG+o3lC9oXpD9YbqDdUbqjdUb6jeUL2hekP1huoN1RuqN1Rv+Il06ODQwaGDQweHDg4dHDo4dHDo
4NDBoYNDBw8dPHTw0MFDBw8dPHTw0MFDBw8dPHTw0MFDBw8dPHTw0MFDBw8dPHTw0MFDBw8dPHTw
0MFDBw8dPHTw0EGojoDqCKiOgOoIqI6A6giojoDqCKiOgOoIqI6A6giojoDqCKiOgOoIqI6A6gio
joDqCKiOgOoIqI6A6giojoDqCKiOgOoIqI6A6giojoDqCKiOgOoIqI6A6giojoDqCKiOgOoIqI6A
6giojoDqCKiOgOoIqI6A6giojoDqCKiOgOoIqI6A6giojoDqCKiOgOoIqI6A6giojoDqCKiOgOoI
qI6A6giojoDqCKiOgOoIqI6A6giojoDqCKiOgOoIqI6A6giojoDqCKiOgOoIqI6A6giojoDqCKiO
gOoIqI6A6giojoDqCKiOgOoIqI6A6giojoDqCKiOgOoIqI6A6giojoDqCKiOgOoIqI6A6giojoDq
CKiOgOoIqI6A6giojoDqCKiOgOoIqI6A6giojoDqCKiOgOoIqI6A6giojoDqCKiOgOoIqI6A6gio
joDqCKiOgOoIqI6A6giojoDqCKiOgOoIqI6A6giojoDqCKiOgOoIqI6A6giojoDqCKiOgOoIqI6A
6giojoDqCKiOgOoIqI6A6giojoDqCKiOgOoIqI6A6giojoDqCKiOgOoIqI6E6kiojoTqSKiOhOpI
qI6E6kiojoTqSKiOhOpIqI6E6kiojoTqSKiOhOpIqI6E6kiojoTqSKiOhOpIqI6E6kiojoTqSKiO
hOpIqI6E6sivqI5vSqB8x8h3jHzHyHeMfMfId4x8x8h3jHzHyHeMfMfId4x8x8h3jHzHyHeMfMfI
d4x8x8h3jHzHyHeMfMfId4x8x8h3jHzHyO/4MfJbLlB+mJLXMXgdg9cxeB2D1zF4HYPXMXgdk9cx
+dwnMyczJzMnMyczJzMnMyczFzMXMxczFzMXMxczFzMXMxczFzM3EzYTNhM2EzYTNhM2EzYTNhMO
r+ow8zDzMPMw8zDzMPMw8zDzMPNh5sPMh5kPMx9mPsx8mPkw82Hmw8yXmS8zX2a+zHyZ+TLzZebL
zJeZKfGixIsSL0q8KPGixIsSL0q8KPGixIsSL0q8KPGixIsSL0q8KPGixIsSL0q8KPGixIsSL0q8
KPGixIsSL0q8KPGixIsSL0q8gpmp3qJ6i+otqreo3qJ6i+otqreo3qJ6i+otqreo3qJ6i+otqreo
3qJ6i+otqreo3qJ6i+otqreo3qJ6i+otqreamengooOLDi46uOjgooOLDi46uOjgooOLDi46uOjg
ooOLDi46uOjgooOLDi46uOjgooOLDi46uOjgooOLDi46uOjgooOLDi46uOjgooOLDi46uOjgooOL
Dm46uOngpoObDm46uOngpoObDm46uOngpoObDm46uOngpoObDm46uOngpoObDm46uOngpoObDm46
uOngpoObDm46CN6R4B0J3pHgHQnekeAdCd6R4B0J3pHgHQnekeAdCd6R4B0J3pHgHQnekeAdCd6R
4B0J3pHgHQnekeAdCd6R4B0J3pHgHQnekeAdCd6R4B0J3pHgHQnekeAdCd6R4B0J3pHgHQnekeAd
Cd6R4B0J3pHgHQnekeAdCd6R4B0J3pHgHQnekeAdCd6R4B0J3pHgHQnekeAdCd6R4B0J3pHgHQne
keAdCd6R4B0J3pHgHQnekeAdCd6R4B0J3pHgHQnekeAdCd6R4B0J3pHgHQnekeAdCd6R4B0J3pHg
HQnekeAdCd6R4B0J3pHgHQnekeAdCd6R4B0J3pHgHQnekeAdCd6R4B0J3pHgHQnekeAdCd6R4B0J
3pHgHQnekeAdCd6R4B0J3pHgHQnekeAdCd6R4B0J3pHgHQnekeAdCd6R4B0J3pHgHQnekeAdCd6R
4B0J3pHgHQnekeAdCd6R4B0J3pHgHQnekeAdH54wMx2E80g4j4TzSDiPhPNIOI+E80g4j4TzSDiP
hPNIOI+E80g4j4TzSDiPhPNIOI+E80g4j4TzSDiPhPNIOI+E80g4j4TzSDiPhPNIOI+E80g4j4Tz
SDiPhPNIOI+E80g4j4TzSDiPhPNIOI+E80g4j4TzSDiPhPNIOI+E80g4j4TzSDiPhPNIOI+E80g4
j4TzyK84j29KoHzHyHeMfMfId4x8x8h3jHzHyHeMfMfId4x8x8h3jHzHyHeMfMfId4x8x8h3jHzH
yHeMfMfId4x8x8h3jHzHyHeMfMfI7/gx8lsuUH6YkteRNidtTtqctDlpc9LmpM1Jm5M2J21O2py0
OWlz0uakzUmbkzYnbU7anLQ5aXPS5qTNSZuTNidtTtqctDlpc9LmpM1Jm5M2J21O2py0OWlz0uak
zUmbkzYnbU7anLQ5aXPS5qTNSZuTNidtTtqctDlpc9LmpM1Jm5M2J21O2py0OWlz0uakzUmbkzYn
bS7aXLS5aHPR5qLNRZuLNhdtLtpctLloc9Hmos1Fm4s2F20u2ly0uWhz0eaizUWbizYXbS7aXLS5
aHPR5qLNRZuLNhdtLn5GLTpYdLDoYNHBooNFB4sOFh0sOlh0sOhg0cGig0UHiw4WHSw6WHSw6GDR
waKDRQeLDhYdLDpYdLDoYNHBooNFB4sOFh0sOlh0sOhg0cGig0UHiw4WHSw6WHSw6GDRwaKDRQeL
DhYdLDpYdLDoYNHBooNFB4sOFh0sOlh0sOhg0cGig0UHiw4WHSw6WHSw6GDTwaaDTQebDjYdbDrY
dLDpYNPBpoNNB5sONh1sOth0sOlg08Gmg00Hmw42HWw62HSw6WDTwaaDTQebDjYdbDrYdBDgIwE+
EuAjAT4S4CMBPhLgIwE+EuAjAT4S4CMBPhLgIwE+EuAjAT4S4CMBPhLgIwE+EuAjAT4S4CMBPhLg
IwE+EuAjAT4S4CMBPhLgIwE+EuAjAT4S4CMBPhLgIwE+EuAjAT4S4CMBPhLgIwE+EuAjAT4S4CMB
PhLgIwE+EuAjAT4S4CMBPhLgIwE+PjxhZjoI+ZGQHwn5kZAfCfmRkB8J+ZGQHwn5kZAfCfmRkB8J
+ZGQHwn5kZAfCfmRkB8J+ZGQHwn5kZAfCfmRkB8J+ZGQHwn5kZAfCfmRkB8J+ZGQHwn5kZAfCfmR
kB8J+ZGQHwn5kZAfCfmRkB8J+ZGQHwn5kZAfCfmRkB8J+ZGQHwn5kZAfCfmRkB8J+ZGQHwn5kZAf
CfmRkB8J+ZGQHwn5kZAfCfmRkB8J+ZGQHwn5kZAfCfmRkB8J+ZGQHwn5kZAfCfmRkB8J+ZGQHwn5
kZAfCfmRkB8J+ZGQHwn5kZAfCfmRkB8J+ZGQHwn5kZAfCfmRkB8J+ZGQHwn5kZAfCfmRkB8J+ZGQ
Hwn5kZAfCfmRkB8J+ZGQHwn5kZAfCfmRkB8J+ZGQHwn5kZAfCfmRkB8J+ZGQHwn5kZAfCfmRkB8J
+ZGQHwn5kZAfCfmRkB8J+ZGQHwn5kZAfCfmRkB8J+ZGQHwn5kZAfCfmR5xv4Bcp3jHzHyHeMfMfI
d4x8x8h3jHzHyHeMfMfId4x8x8h3jHzHyHeMfMfId4x8x8h3jHzHyHeMfMfId4x8x8h3jHzHyHeM
/CdzjPy2C5SHNh/afGjzoc2HNh/afGjzoc2HNh/afGjzoc2HNh/afGjzoc2HNh/afGjzoc2HNh/a
fGjzoc2HNh/afGjzoc2HNh/afGjzoc2HNh/afGjzoc2HNh/afGjzoc2HNh/afGjzoc2HNh/afGjz
oc2HNh/afGjzoc2HNh/afGjzoc2HNh/afGjzoc2HNh/afGjzoc2HNh/afGjzpc2XNl/afGnzpc2X
Nl/afGnzpc2XNl/afGnzpc2XNl/afGnzpc2XNl/afGnzpc2XNl/afGnzpc2XNl/afGnzpc2XNl/a
fGnz5WfUSwcvHbx08NLBSwcvHbx08NLBSwcvHbx08NLBSwcvHbx08NLBSwcvHbx08NLBSwcvHbx0
8NLBSwcvHbx08NLBSwcvHbx08NLBSwcvHbx08NLBSwcvHbx08NLBSwcvHbx08NLBSwcvHbx08NLB
SwcvHbx08NLBSwcvHbx08NLBSwcvHbx08NLBSwcvHbx08NLBSwcvHbw/38H6/s938MOTxZPNk+BJ
8qR40jwZnhyeMPNi5sXMi5kXMy9mXsy8mHkx82LmxcybmTczb2bezLyZeTPzZubNzJuZNzMHMwcz
BzMHMwczBzMHMwczBzMHMyczJzMnMyczJzMnMyczJzMnMyczFzMXMxczFzMXMxczFzMXMxczFzM3
MzczNzM3MzczNzM3MzczNzM3Mw8zDzMPMw8zDzMPMw8zDzMPMw8zH2Y+zHyY+TDzYebDzIeZDzMf
Zj7MfJn5MvNl5svMl5kvM19mvsx8mZkOgoAUCEiBgBQISIGAFAhIgYAUCEiBgBQISIGAFAhIgYAU
CEiBgBQISIGAFAhIgYAUCEiBgBQISIGAFAhIgYAUCEiBgBQISIGAFAhIgYAUCEiBgBQISIGAFAhI
gYAUCEiBgBQISIGAFAhIgYAUCEiBgBQISIGAFAhIgYAUCEiBgBQISIGAFAhIgYAUCEiBgBQISIGA
FAhIgYAUCEiBgBQISIGAFAhIgYAUCEiBgBQISIGAFAhIgYAUCEiBgBQISIGAFAhIgYAUCEiBgBQI
SIGAFAhIgYAUCEiBgBQISIGAFAhIgYAUCEiBgBQISIGAFAhIgYAUCEiBgBQISIGAFAhIgYAUCEiB
gBQISIGAFAhIgYAUCEiBgBQISIGAFAhIgYAUCEiBgBQISIGAFAhIgYAUCEiBgBQISIGAFAhIgYAU
CEiBgBQISIGAFAhI7W9WoHzHyHeMfMfId4x8x8h3jHzHyHeMfMfId4x8x8h3jHzHyHeMfMfId4x8
x8h3jHzHyHeMfMfId4x8x8h3jHzHyHeMfMfI7/Yx8lsuUH6YkteRNm/avGnzps2bNm/avGnzps2b
Nm/avGnzps2bNm/avGnzps2bNm/avGnzps2bNm/avGnzps2bNm/avGnzps2bNm/avGnzps2bNm/a
vGnzps2bNm/avGnzps2bNm/avGnzps2bNm/avGnzps2bNm/avGnzps2bNm/avGnzps2bNm/avGnz
ps2bNm/avGnzps2bNm/aHLQ5aHPQ5qDNQZuDNgdtDtoctDloc9DmoM1Bm4M2B20O2hy0OWhz0Oag
zUGbgzYHbQ7aHLQ5aHPQ5qDNQZuDNgdtDtoc/IwadDDoYNDBoINBB4MOBh0MOhh0MOhg0MGgg0EH
gw4GHQw6GHQw6GDQwaCDQQeDDgYdDDoYdDDoYNDBoINBB4MOBh0MOhh0MOhg0MGgg0EHgw4GHQw6
GHQw6GDQwaCDQQeDDgYdDDoYdDDoYNDBoINBB4MOBh0MOhh0MOhg0MGgg0EHgw4GHQw6GHQw6GDQ
waSDSQeTDiYdTDqYdDDpYNLBpINJB5MOJh1MOph0MOlg0sGkg0kHkw4mHUw6mHQw6WDSwaSDSQeT
DiYdTDqYdDDpYNLBpIMgIAUCUiAgBQJSICAFAlIgIAUCUiAgBQJSICAFAlIgIAUCUiAgBQJSICAF
AlIgIAUCUiAgBQJSICAFAlIgIAUCUiAgBQJSICAFAlIgIAUCUiAgBQJSICAFAlIgIAUCUiAgBQJS
ICAFAlIgIAUCUiAgBQJSICAFAlIgIAUCUiAgBQJSICAFAlIgIAUCUiAgBQJSICAFAlIgIAUCUiAg
BQJSICAFAlIgIAUCUiAgBQJSICAFAlIgIAUCUiAgBQJSICAFAlIgIAUCUiAgBQJSICAFAlIgIAUC
UiAgBQJSICAFAlIgIAUCUiAgBQJSICAFAlIgIAUCUiAgBQJSICAFAlIgIAUCUiAgBQJSICAFAlIg
IAUCUiAgBQJSICAFAlIgIAUCUiAgBQJSICAFAlIgIAUCUiAgBQJSICAFAlIgIAUCUiAgBQJSICAF
AlIgIAUCUiAgBQJSICAFAlIgIAUCUiAgBQJSICAFAlIgIAUCUiAgBQJSICAFAlIgIAUCUiAgBQJS
ICAFAlIgIAUCUiAgBQJSICAFAlIgIAUCUiAgBQJSICAFAlIgIAUCUiAgBQJSICAFAlIgIAUCUiAg
BQJSICAFAlIgIAUCUiAgBQJSICAFAlIgIAUCUiAgBQJSICAFAlIgIAUCUiAgBQJSICAFAlIgINXf
qED5jpHvGPmOke8Y+Y6R7xj5jpHvGPmOke8Y+Y6R7xj5jpHvGPmOke8Y+Y6R7xj5jpHvGPmOke8Y
+Y6R7xj5jpHvGPmOkd/xY+S3XKD8MCWvI21u2ty0uWlz0+amzU2bmzY3bW7a3LS5aXPT5qbNTZub
NjdtbtrctLlpc9Pmps1Nm5s2N21u2ty0uWlz0+amzU2bmzY3bW7a3LS5aXPT5qbNTZubNjdtbtrc
tLlpc9Pmps1Nm5s2N21u2ty0uWlz0+amzU2bmzY3bW7a3LS5aXPT5qbNTZubNjdtbto8tHlo89Dm
oc1Dm4c2D20e2jy0eWjz0OahzUObhzYPbR7aPLR5aPPQ5qHNQ5uHNg9tHto8tHlo89Dmoc1Dm4c2
D20e2jz8jDp0cOjg0MGhg0MHhw4OHRw6OHRw6ODQwaGDQweHDg4dHDo4dHDo4NDBoYNDB4cODh0c
Ojh0cOjg0MGhg0MHhw4OHRw6OHRw6ODQwaGDQweHDg4dHDo4dHDo4NDBoYNDB4cODtUbqjdUb6je
UL2hekP1hurNcUJeVao3VG+o3lC9oXpD9YbqDdUbqjdU71C9Q/UO1TtU71C9Q/UO1TtU71C9Q/UO
1TtU71C9Q/UO1TtU71C9Q/UO1TtU71C9Q/UO1TtU71C9Q/UO1TtU71C9Q/UO1TtU71A9yI+C/CjI
j4L8KMiPgvwoyI+C/CjIj4L8KMiPgvwoyI+C/CjIj4L8KMiPgvwoyI+C/CjIj4L8KMiPgvwoyI+C
/CjIj4L8KMiPgvwoyI+C/CjIj4L8KMiPgvwoyI+C/CjIj4L8KMiPgvwoyI+C/CjIj4L8KMiPgvwo
yI+C/CjIj4L8KMiPgvwoyI+C/CjIj4L8KMiPgvwoyI+C/CjIj4L8KMiPgvwoyI+C/CjIj4L8KMiP
gvwoyI+C/CjIj4L8KMiPgvwoyI+C/CjIj4L8KMiPgvwoyI+C/CjIj4L8KMiPgvwoyI+C/CjIj4L8
KMiPgvwoyI+C/CjIj4L8KMiPgvwoyI+C/CjIj4L8KMiPgvwoyI+C/CjIj4L8KMiPgvwoyI+C/CjI
j4L8KMiPgvwoyI+C/CjIj4L8KMiPgvwoyI+C/CjIj4L8KMiPgvwoyI+C/CjIj4L8KMiPgvwoyI+C
/CjIj4L8KMiPgvwoyI+C/CjIj4L8KMiPgvwoyI+C/CjIj4L8KMiPgvwoyI+C/CjIj4L8KMiPgvwo
yI+C/CjIj4L8KMiPhvxoyI+G/GjIj4b8aMiPhvxoyI+G/GjIj4b8aMiPhvxoyI+G/GjIj4b8aMiP
hvxoyI+G/GjIj4b8aMiPhvxoyI+G/GjIj4b8aMiPhvxoyI+G/OivyI9vSqB8x8h3jHzHyHeMfMfI
d4x8x8h3jHzHyHeMfMfId4x8x8h3jHzHyHeMfMfId4x8x8h3jHzHyHeMfMfId4x8x8h3jHzHyO/4
MfJbLlB+mJLXMXgdg9cxeB2D1zF4HZPXMXkdk9cx+dwnMyczJzMnMyczJzMXMxczFzMXMxczFzMX
MxczFzMXMzczNzM3MzczNzM3MzczNzM3MzczDzMPMw8zDzMPMw8zDzMPMw8zDzMfZj7MfJj5MPNh
5sPMh5kPMx9mPsx8mfky82Xmy8yXmS8zX2a+zHyZmTYv2rxo86LNizYv2rxo86LNizYv2rxo86LN
izYv2rxo86LNizYv2rxo86LNizYv2rxo86LNizYv2rwo8aLEixIvSrwo8aLEixKvYEKqt6jeonqL
6i2qt6jeonqL6i2qt6jeonqL6i2qt6jeonqL6i2qt6jeonqL6i2qt6jeonqL6i2qt6jeonqL6i2q
t6jeonqL6i2qt6jeonqL6i2qt6jeonqL6i2qt6jeonqL6i2qt6jeonqL6i2qt6jeonqL6i2qt6je
onqL6i2qt6jeonqL6i2qt6jeonqL6i2qt6jepnqb6m2qt6nepnqb6m2qt6nepnqb6m2qt6nepnqb
6m2qt6nepnqb6m2qt6nepnqb6m2qt6nepnqbn0g3Hdx0cNPBTQc3Hdx0cNNBgI8G+GiAjwb4aICP
BvhogI8G+GiAjwb4aICPBvhogI8G+GiAjwb4aICPBvhogI8G+GiAjwb4aICPBvhogI8G+GiAjwb4
aICPBvhogI8G+GiAjwb4aICPBvhogI8G+GiAjwb4aICPBvhogI8G+GiAjwb4aICPBvhogI8G+GiA
jwb4aICPBvhogI8G+GiAjwb4aICPBvhogI8G+GiAjwb4aICPBvhogI8G+GiAjwb4aICPBvhogI8G
+GiAjwb4aICPBvhogI8G+GiAjwb4aICPBvhogI8G+GiAjwb4aICPBvhogI8G+GiAjwb4aICPBvho
gI8G+GiAjwb4aICPBvhogI8G+GiAjwb4aICPBvhogI8G+GiAjwb4aICPBvhogI8G+GiAjwb4aICP
BvhogI8G+GiAjwb4aICPBvhogI8G+GiAjwb4aICPBvhogI8G+GiAjwb4aICPBvhogI8G+GiAjwb4
aICPBvhogI8G+GiAjwb4aICPBvhogI8G+GiAjwb4aICPBvhogI8G+GiAjwb4aICPBvhogI8G+GiA
jwb4aICPBvhogI8G+GiAjwb4aICPBvhogI8G+GiAjwb4aICPBvhogI8G+GiAjwb4aICPBvhogI8G
+GiAjwb4aICPBvhogI8G+GiAjwb4aICPBvhogI8G+GiAj/4K+PimBMp3jHzHyHeMfMfId4x8x8h3
jHzHyHeMfMfId4x8x8h3jHzHyHeMfMfId4x8x8h3jHzHyHeMfMfId4x8x8h3jHzHyHeM/I4fI7+p
X6D86d3yd//d7/2f/+w3/+STD2/4Nz/68ae/+fknX3z2F59//MkXv/nl559+/Kd/9slv/Pgn/8vH
n/3Fj778rfXP//yL3/rwZ77/t837s2/l//6LD+/ir//v9/70k09+/NGfffpfPvne//0Xn3350X8b
rX9qSv+DgcwPLyKfZlaHZHVIVodkdUhWh2R1SFaHZHVIVodkdUhWh2R1SFaHZHVIVodkdUhWh2R1
SFaHZHVIVodkdUhWh2R1SFaHZHVIVodkdUhWh2R1SFaHZHVIVodkdUhWh2R1SFaHZHVIVodkdUhW
h2R1SFaHZHVIVodkdUhWh2R1SFaHZHVIVodkdUhWh2R1SFaHZHVIVodkdUhWh2R1SFaHZHVIVodk
dShWh2J1KFaHYnUoVodidShWh2J1KFaHYnUoVodidShWh2J1KFaHYnUoVodidShWh2J1KFaHYnUo
VodidShWh2J1KFaHYnUoVodidShWh2J1KFaHYnUofoQuOlh0sOhg0cGig0UHiw4WHSw6WHSw6GDR
waKDRQeLDhYdLDpYdLDoYNHBooNFB4sOFh0sOlh0sOhg0cGig0UHiw4WHSw6WHSw6GDRwaKDRQeL
DhYdLDpYdLDoYNHBooNFB4sOFh0sOlh0sOhg0cGig0UHiw4WHSw6WHSw6GDRwaKDRQeLDhYdLDrY
dLDpYNPBpoNNB5sONh1sOth0sOlg08Gmg00Hmw42HWw62HSw6WDTwaaDTQebDjYdbDrYdLDpYNPB
poNNB5sONh1sOth0EH+k8Ucaf6TxRxp/pPFHGn+k8Ucaf6TxRxp/pPFHGn+k8Ucaf6TxRxp/pPFH
Gn+k8Ucaf6TxRxp/pPFHGn+k8Ucaf6TxRxptpNFGGm2k0UYabaTRRhptpNFGGm2k0UYabaTRRhpt
pNFGGm2k0UYabaTRRhptpNFGGm2k0UYabaTRRhptpNFGGm2k0UYabaTRRhptpNFGGm2k0UYabaTR
RhptpNFGGm2k0UYabaTRRhptpNFGGm2k0UYabaTRRhptpNFGGm2k0UYabaTRRhptpNFGGm2k0UYa
baTRRhptpNFGGm2k0UYabaTRRhptpNFGGm2k0UYabaTRRhptpNFGGm2k0UYabaTRRhptpNFGGm2k
0UYabaTRRhptpNFGGm2k0UYabaTRRhptpNFGGm2k0UYabaTRRhptpNFGGm2k0UYabaTRRhptpNFG
Gm2k0UYabaTRRhptpNFGGm2k0UYabaTRRhptpNFGGm3kwxNmpoP4I40/0vgjjT/S+CONP9L4I40/
0vgjjT/S+CONP9L4I40/0vgjjT/S+CONP9L4I40/0vgjjT/S+CONP9L4I40/0vgjjT/S+CONP9L4
I40/0vgjjT/S+CONP9L4I40/0vgjjT/S+CONP9L4I40/0vgjjT/S+CONP9L4I40/0vgjjT/S+CON
P9Jf+SPfFJD5jpHvGPmOke8Y+Y6R7xj5jpHvGPmOke8Y+Y6R7xj5jpHvGPmOke8Y+Y6R7xj5jpHv
GPmOke8Y+Y6R7xj5jpHvGPmOkd/xY+Q39fudv+rvdq7vf//7v+zh9Hd/8uUPP/vR7338+ac//vLv
PKD+sv9y3MOScFgSDkvCYUk4LAmHJeGwJByWhMOScFgSDkvCYUk4LAmHJeGwJByWhMOScFgSDkvC
YUk4LAmHJeGwJByWhMOScFgSDkvCYUk4LAmHJeGwJByWhMOScFgSDkvCYUk4LAmHJeGwJByWhMOS
cFgSDkvCYUk4LAmHJeGwJByWhMOScFgSDkvCYUk4LAmHJeGwJByWhMOScFgSDkvCYUk4LAmHJeGw
JByWhMuScFkSLkvCZUm4LAmXJeGyJFyWhMuScFkSLkvCZUm4LAmXJeGyJFyWhMuScFkSLkvCZUm4
LAmXJeGyJFyWhMuScFkSLkvCZUm4LAmXJeGyJFyWhMuScFkSLkvC5YflSwcvHbx08NLBSwcvHbx0
8NLBSwcvHbx08NLBSwcvHbx08NLBSwcvHbx08NLBSwcvHbx08NLBSwcvHbx08NLBSwcvHbx08NLB
SwcvHbx08NLBSwcvHbx08NLBSwcvHbx08NLBSwcvHbx08NLBSwcvHbx08NLBSwcvHbx08NLBSwcv
Hbx08NLBSwcvHbx08P58B+f7P9/BD08WTzZPgifJk+JJ82R4cnjCzIuZFzMvZl7MvJh5MfNi5sXM
i5kXM29m3sy8mXkz82bmzcybmTczb2bezBzMHMwczBzMHMwczBzMHMwczBzMnMyczJzMnMyczJzM
nMyczJzMnMxczFzMXMxczFzMXMxczFzMXMxczNzM3MzczNzM3MzczNzM3MzczNzMPMw8zDzMPMw8
zDzMPMw8zDzMPMx8mPkw82Hmw8yHmQ8zH2Y+zHyY+TDzZebLzJeZLzNfZr7MfJn5MvNlZjoIhDJA
KAOEMkAoA4QyQCgDhDJAKAOEMkAoA4QyQCgDhDJAKAOEMkAoA4QyQCgDhDJAKAOEMkAoA4QyQCgD
hPLhCTPTQWiUgUYZaJSBRhlolIFGGWiUgUYZaJSBRhlolIFGGWiUgUYZaJSBRhlolIFGGWiUgUYZ
aJSBRhlolIFGGWiUgUYZaJSBRhlolIFGGWiUgUYZaJSBRhlolIFGGWiUgUYZaJSBRhlolIFGGWiU
gUYZaJSBRhlolIFGGWiUgUYZaJSBRhlolIFGGWiUgUYZaJSBRhlolIFGGWiUgUYZaJSBRhlolIFG
GWiUgUYZaJSBRhlolIFGGWiUgUYZaJSBRhlolIFGGWiUgUYZaJSBRhlolIFGGWiUgUYZaJSBRhlo
lIFGGWiUgUYZaJSBRhlolIFGGWiUgUYZaJSBRhlolIFGGWiUgUYZaJSBRhlolPn/s3dHzXpdx52f
v83cIYPutfbq7gtXaqxEMlWWMqYlkuIdAAISZVrySLIV6dMHGk4lKT+ZCjORizC1rmb82kV2HRzw
2Wf/Cf5Io1R+C3+S846Rd4y8Y+QdI+8YecfIO0beMfKOkXeMvGPkHSPvGHnHyDtG3jHyjpF3jLxj
5B0j7xh5x8g7Rt4x8o6Rd4y8Y+RfzBj5bf1Jzm/4X599fyVfR2xObE5sTmxObE5sTmxObE5sTmxO
bE5sTmxObE5sTmxObE5sTmxObE5sTmxObE5sTmxObE5sTmxObE5sTmxObE5sTmxObE5sTmxObE5s
TmxObE5sTmxObE5sTmxObE5sTmxObE5sTmxObE5sTmxObE5sTmxObE5sTmxObE5sXti8sHlh88Lm
hc0Lmxc2L2xe2LyweWHzwuaFzQubFzYvbF7YvLB5YfPC5oXNC5sXNi9sXti8sHlh88Lmhc0Lmxc2
L2xe2LyweWHz4mfUhYMLBxcOLhxcOLhwcOHgwsGFgwsHFw4uHFw4uHBw4eDCwYWDCwcXDi4cXDi4
cHDh4MLBhYMLBxcOLhxcOLhwcOHgwsGFgwsHFw4uHFw4uHBw4eDCwYWDCwcXDi4cXDi4cHDh4MLB
hYMLBxcOLhxcOLhwcOHgwsGFgwsHFw4uHFw4uHBw4eDCwY2DGwc3Dm4c3Di4cXDj4MbBjYMbBzcO
bhzcOLhxcOPgxsGNgxsHNw5uHNw4uHFw4+DGwY2DGwc3Dm4c3Di4cXDj4MbBjYMbBzcO0h4p2iNF
e6RojxTtkaI9UrRHivZI0R4p2iNFe6RojxTtkaI9UrRHivZI0R4p2iNFe6RojxTtkaI9UrRHivZI
0R4p2iNFe6RojxTtkaI9UrRHivZI0R4p2iNFe6RojxTtkaI9UrRHivZI0R4p2iNFe6RojxTtkaI9
UrRHivZI0R4p2iNFe6RojxTtkaI9UrRHivZI0R4p2iNFe6RojxTtkaI9UrRHivZI0R4p2iNFe6Ro
jxTtkaI9UrRHivZI0R4p2iNFe6RojxTtkaI9UrRHivZI0R4p2iNFe6RojxTtkaI9UrRHivZI0R4p
2iNFe6RojxTtkaI9UrRHivZI0R4p2iNFe6RojxTtkaI9UrRHivZI0R4p2iNFe6RojxTtkaI9UrRH
ivZI0R4p2iNFe6RojxTtkaI9UrRHivZI0R4p2iNFe6RojxTtkaI9UrRHivZI0R4p2iNFe6RojxTt
kaI9UrRHivZI0R4p2iNFe6RojxTtkaI9UrRHivZI0R4p2iNFe6RojxTtkaI9UrRHivZI0R4p2iNF
e6RojxTtkaI9UrRHivZI0R4p2iNFe6RojxTtkaI9UrRHivZI0R4p2iNFe6RojxTtkaI9UrRHivZI
0R4p2iNFe6RojxTtkaI9UrRHivZI0R4p2iNFe6RojxTtkaI9UrRHivZI0R4p2iNFe6RojxTtkaI9
UrRHivZInW81hXnHyDtG3jHyjpF3jLxj5B0j7xh5x8g7Rt4x8o6Rd4y8Y+QdI+8YecfIO0beMfKO
kXeMvGPkHSPvGHnHyDtG3jHyOz5GfpB/gPL/+o++vr+SryM2H2w+2Hyw+WDzweaDzQebDzYfbD7Y
fLD5YPPB5oPNB5sPNh9sPth8sPlg88Hmg80Hmw82H2w+2Hyw+WDzweaDzQebDzYfbD7YfLD5YPPB
5oPNB5sPNh9sPth8sPlg88Hmg80Hmw82H2w+2Hyw+WDzweaDzQebDzYfbD7YfLD5YPPB5oPNhc2F
zYXNhc2FzYXNhc2FzYXNhc2FzYXNhc2FzYXNhc2FzYXNhc2FzYXNhc2FzYXNhc2FzYXNhc2FzYXN
hc2FzYXNhc2FzcXPqIWDhYOFg4WDhYOFg4WDhYOFg4WDhYOFg4WDhYOFg4WDhYOFg4WDhYOFg4WD
hYOFg4WDhYOFg4WDhYOFg4WDhYOFg4WDhYOFg4WDhYOFg4WDhYOFg4WDhYOFg4WDhYOFg4WDhYOF
g4WDhYOFg4WDhYOFg4WDhYOFg4WDhYOFg4WDjYONg42DjYONg42DjYONg42DjYONg42DjYONg42D
jYONg42DjYONg42DjYONg42DjYONg42DjYONg42DjYONg416jXqNeiQ/iuRHkfwokh9F8qNIfhTJ
jyL5USQ/iuRHkfwokh9F8qNIfhTJjyL5USQ/iuRHkfwokh9F8qNIfhTJjyL5USQ/iuRHkfwokh9F
8qNIfhTJjyL5USQ/iuRHkfwokh9F8qNIfhTJjyL5USQ/iuRHkfwokh9F8qNIfhTJjyL5USQ/iuRH
kfwokh9F8qNIfhTJjyL5USQ/iuRHkfwokh9F8qNIfhTJjyL5USQ/iuRHkfwokh9F8qNIfhTJjyL5
USQ/iuRHkfwokh9F8qNIfhTJjyL5USQ/iuRHkfwokh9F8qNIfhTJjyL5USQ/iuRHkfwokh9F8qNI
fhTJjyL5USQ/iuRHkfwokh9F8qNIfhTJjyL5USQ/iuRHkfwokh9F8qNIfhTJjyL5USQ/iuRHkfwo
kh9F8qNIfhTJjyL5USQ/iuRHkfwokh9F8qNIfhTJjyL5USQ/iuRHEfgoAh9FzqPIeRQ5jyLnUeQ8
ipxHkfMoch5FzqPIeRQ5jyLnUeQ8ipxHkfMoch5FzqPIeRQ5jyLnUeQ8ipxHkfMoch5FzqPIeRQ5
jyLnUeQ8ipxHk/Noch5NzqPJeTQ5jybn0eQ8mpxHk/Noch5NzqPJeTQ5jybn0eQ8mpxHk/Noch5N
zqPJeTQ5jybn0eQ8mpxHk/Noch5NzqPJeTQ5jybn0eQ8mpxHk/Noch5NzqPJeTQ5jybn0V/nPL6t
AuUdI+8YecfIO0beMfKOkXeMvGPkHSPvGHnHyDtG3jHyjpF3jLxj5B0j7xh5x8g7Rt4x8o6Rd4y8
Y+QdI+8YecfI7/gY+YEXKN9fyddx83XcfB03X8fN13Hzddx8HTdfx83XcfNrv7n54eaHmx9ufrj5
4eaHmx9ufrj54eaHmw83H24+3Hy4+XDz4ebDzYebDzcfbi5uLm4ubi5uLm4ubi5uLm4ubi5ubm5u
bm5ubm5ubm5ubm5ubm5ubm4ebh5uHm4ebh5uHm4ebh5uHm7G5sDmwObA5sDmwObA5sDmwObA5sDm
wObA5sDmwObA5sDmwObA5sDmwObA5sDmwObA5sDmwObA5sDmwObA5sDmwObA5sDmwObA5sDmwOZY
3IyDgYOBg4GDgYOBg4GDgYOBg4GDgYOBg4GDgYOBg4GDgYOBg4GDgYOBg4GDgYOBg4GDgYOBg4GD
gYOBg4GDgYOBg4GDgYOBg4GDgYOBg4GDgYOBg4GDgYOBg4GDgYOBg4GDgYOBg4GDgYOBg4GDgYOB
g4GDgYOBg4GDiYOJg4mDiYOJg4mDiYOJg4mDiYOJg4mDiYOJg4mDiYOJg4mDiYOJg4mDiYOJg4mD
iYOJg4mDiYOJg4mDiYOJg4mDiYOJg4mD5DyanEeT82hyHk3Oo8l5NDmPJufR5DyanEeT82hyHk3O
o8l5NDmPJufR5DyanEcT72jiHU28o4l3NPGOJt7RxDuaeEcT72jiHU28o4l3NPGOJt7RxDuaeEcT
72jiHU28o4l3NPGOJt7RxDuaeEcT72jiHU28o4l3NPGOJt7RxDuaeEcT72jiHU28o4l3NPGOJt7R
xDuaeEcT72jiHU28o4l3NPGOJt7RxDuaeEcT72jiHU28o4l3NPGOJt7RxDuaeEcT72jiHU28o4l3
NPGOJt7RxDuaeEcT72jiHU28o4l3NPGOJt7RxDuaeEcT72jiHU28o4l3NPGOJt7RxDuaeEcT72ji
HU28o4l3NPGOJt7RxDuaeEcT72jiHU28o4l3NPGOJt7RxDuaeEcT72jiHU28o4l3NPGOJt7RxDua
eEcT72jiHU28o4l3NPGOJt7RxDuaeEcT72jiHU28o4l3NPGOJt7RxDuaeEcT72jiHU28o4l3NPGO
Jt7RxDuaeEcT72jiHU28o4l3NPGOJt7RxDuaeEcT72jiHU28o4l3NPGOJt7RxDuaeEcT72jiHU28
o4l3NPGOJt7RxDuaeEcT72jiHU28o4l3NPGOJt7RxDuaeEcT72jiHU28o4l3NPGOJt7RxDuaeEcT
72jiHU28o4l3NPGOJt7RxDuaeEcT72jiHU28o4l3NPGOJt7RxDuaeEd/He/4tgqUd4y8Y+QdI+8Y
ecfIO0beMfKOkXeMvGPkHSPvGHnHyDtG3jHyjpF3jLxj5B0j7xh5x8g7Rt4x8o6Rd4y8Y+QdI7/j
Y+QHXqDsjc0bmzc2b2ze2LyxeWPzxuaNzRubNzZvbN7YvLF5Y/PG5o3NG5s3Nm9s3ti8sXlj88bm
jc0bmzc2b2ze2LyxeWPzxuaNzRubNzZvbN7YvLF5Y/PG5o3NG5s3Nm8k3ki8kXgj8UbijcQbiTcS
byTeSLyReCPxRuKNxBuJNxI/SPwg8YPEDxI/uPvg7oO7D+4+uPvg7oO7D+4+uPvg7oO7D+4+uPvg
7oO7D+4+uPvg7oO7D+4+uPvg7oO7D+4+uPvg7oO7D+4+uPvg7oO7D+4+uPvg7sPPnw/GPRj3YNyD
cQ/GPYj24NeDXw9+Pfj14NeDXw9+Pfj14NeDXw9+Pfj14NeDXw9+Pfj14NeDXw9+Pfj14NeDXw9+
Pfj14NeDXw9+Pfj14NeDXw9+Pfj14NeDXw9+Pfxs+SDag2gPoj2I9iDag2gPoj2I9iDag2gPoj2I
9iDag2gPoj2IdhDtINpBtINoh58tD8YdjDsYdzDuYNzBuINxB+MOxh2MOxh3MO5g3MG4g3EH4w7G
HYw7GHcw7mDcwbiDcQfjDsYdjDsYdzDuYNzBuINxRDea6EYT3WiiG010o4luNNGNJrHRJDaaxEaT
2GgSG01io0lsNImNJrHRJDaaxEaT2GgSG01io0lsNImNJrHRJDaaxEaT2GgSG01io0lsNImNJrHR
JDaaxEaT2GgSG01io0lsNImNJrHRJDaaxEaT2GgSG01io0lsNImNJrHRJDaaxEaT2GgSG01io0ls
NImNJrHRJDaaxEaT2GgSG01io0lsNImNJrHRJDaaxEaT2GgSG01io0lsNImNJrHRJDaaxEaT2GgS
G01io0lsNImNJrHRJDaaxEaT2GgSG01io0lsNImNJrHRJDaaxEaT2GgSG01io0lsNImNJrHRJDaa
xEaT2GgSG01io0lsNImNJrHRJDaaxEaT2GgSG01io0lsNImNJrHRJDaaxEaT2GgSG01io0lsNImN
JrHRJDaaxEaT2GgSG01io0lsNImNJrHRJDaaxEaT2GgSG01io0lsNImNJrHRJDaaxEaT2GgSG01i
o0lsNImNJrHRJDaaxEaT2GgSG01io0lsNImNJrHRJDaaxEaT2GgSG01io0lsNImNJrHRJDaaxEaT
2GgSG01io0lsNImNJrHRJDaaxEaT2GgSG01io0lsNImNJrHRJDaaxEaT2GgSG01io0lsNImNJrHR
JDaaxEaT2GgSG01io0lsNImNJrHRJDaaxEaT2Hj/CTfjINGNJrrRRDea6EYT3WiiG010o4luNNGN
JrrRX0c3vq0C5R0j7xh5x8g7Rt4x8o6Rd4y8Y+QdI+8YecfIO0beMfKOkXeMvGPkHSPvGHnHyDtG
3jHyjpF3jLxj5B0j7xh5x8jv+Bj5oRcoG5sbiRuJG3cbdxt3G3cbdxt3G3cbd/vxQn5dcbdxt3G3
cbdxt3G3cbdxt3G3cbdxt3G3cbdxt3G3cbdxt3G3cbdxt3G3cbdxt3G3cbdxt3G3cbdxt3G3cbdx
t3G3cbdxt3G3cbdxt3G3cXdwd3B3cHdwd3B3cHdwd3B3cHdwd3B3cHdwd3B3cHdwd3B3cHdwd3B3
cHdwd3B3cHdwd3B3cHdwd3B3cHdwd3B3cHdwd3B3cHdwd3B3cHdwd3B3cHdwd3B3+PlzMG74+XNQ
b1Bv+PlzcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBw
cHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHD+tYPvGXzJJ8En
ySeLTzafPHxy+KT4pPmEm4Obg5uDm4MLgwuDC4O/e/J3T/7uyd89+Yol9yT3JPckX7HkK5bcvLh5
cfPi5sXNi5sXNy9uXty8uHlx8+bmzc2bmzc3b27e3Ly5eXPz5ubNzQ83P9z8cPPDzQ83P9z8cPPD
zQ83P9x8uPlw8+Hmw82Hmw83H24+3Hy4+XBzcXNxc3FzcXNxc3FzcXNxc3FzcXNzc3Nzc3Nzc3Nz
c3Nzc3Nzc3Nz83DzcPNw83DzcPNw83DzcPNwM6KRzxjyGUM+Y8hnDPmMIZ8x5DOGfMaQzxjyGUM+
Y8hnDPmMIZ8x5DOGfMaQzxjyGUM+Y8hnDPmMIZ8x5DOGfMaQzxjyGUM+Y8hnDPmMIZ8x5DOGfMaQ
zxjyGUM+Y8hnDGmMIY0xpDGGNMYQwhhCGEMIYwhhDCGMIYQxhDCGEMYQwhhCGEMIYwhhDCGMIYQx
hDCGEMYQwhhCGEMIYwhhDCGMIYQxhDCGEMYQwhhCGEMIYwhhDCGMIYQxhDCGEMYQwhhCGEMIYwhh
DCGMIYQxhDCGEMYQwhhCGEMIYwhhDCGMIYQxhDCGEMYQwhhCGEMIYwhhDCGMIYQxhDCGEMYQwhhC
GEMIYwhhDCGMIYQxhDCGEMYQwhhCGEMIYwhhDNmLIXsxZC+G7MWQvRiyF0P2YsheDNmLIXsxZC+G
7MWQvRiyF0P2YsheDNmLIXsxZC+G7MWQvRiyF0P2YsheDNmLIXsxZC+G7MWQvRiyF0P2YsheDNmL
IXsxZC+G7MWQvRiyF0P2YsheDNmL+Tp78a0VKO8YecfIO0beMfKOkXeMvGPkHSPvGHnHyDtG3jHy
jpF3jLxj5B0j7xh5x8g7Rt4x8o6Rd4y8Y+QdI+8YecfIO0Z+t8fID7xA+f5Kvo5InEicSJxInEic
SJxInEicSJxInEicSJxInEicSJxInEicSJxInEicSJxInEicSJxInEicSJxInEicSJxInEicSJxI
nEicSJxInEicSJxInEicSJxInEicSLyQeOHuwt2Fuwt3F+4u3F24u3B34e7iJ8mFxAuJFxIvJF5I
vJB4IfFC4oXEC4kXEi8kXki8kHgh8ULihcQLiRcSLyReSLyQeCHxQuKFxAuJFxIvJF5IvJB44e7C
3YW7C2UXyi6UXSi7UHah7OJny4VoC9EWoi1EW4i2EG0h2kK0hWgL0RaiLURbiLYQbSHaQrSFaAvR
FqItRFuIthBtIdpCtIVoC9EWoi1EW4i2EG0h2kK0hWgL0RaiLURbiLYQbSHaQrSFaAvRFqItRFuI
thBtI9rmZ8uNcRvjNsZtjNsYtzFuY9zGuI1xG+M2xm2M2xi3MW5j3Ma4jXEb4zbGbYzbGLcxbmPc
xriNcRvjNsZtjNsYtzFuY9zGuI1xG+M2xm2M2xi3MY6kxZC0GAIWQ8BiCFgMAYshYDEELIaAxRCw
GAIWQ8BiCFgMAYshYDEELIaAxRCwGAIWQ8BiCFgMAYshYDEELIaAxRCwGAIWQ8BiCFgMAYshYDEE
LIaAxRCwGAIWQ8BiCFgMAYshYDEELIaAxRCweP8JN6MeSYshaTEkLYakxZC0GJIWQ9JiSFoMSYsh
aTEkLYakxZC0GJIWQ9JiSFoMSYshaTEkLd5/svnk4ZPDJ8UnzSfcjHpELobIxRC5GCIXQ+RiiFwM
kYshcjFELobIxRC5GCIXQ+RiiFwMkYshcjFELobIxRC5GCIXQ+RiiFwMkYshcjFELobIxRC5GCIX
Q+RiiFwMkYshcjFELobIxftPuBkHHxwkhDGEMIYQxhDCGEIYQwhjCGEMIYwhhDGEMIYQxhDCGEIY
QwhjCGEMIYwhhDGEMIYQxhDCGEIYQwhjCGEMIYwhhDGEMIYQxhDCGEIYQwhjCGEMIYwhhDGEMIYQ
xhDCGEIYQwhjCGEMIYwhhDGEMIYQxhDCGEIYQwhjCGEMIYwhhDGEMIYQxhDCGEIYQwhjCGEMIYwh
ezFkL4bsxZC9GLIXQ/ZiyF4M2YshezFkL4bsxZC9GLIXQ/ZiyF4M2YshezFkL4bsxZC9GLIXQ/Zi
yF4M2YshezFkL4bsxZC9GLIXQ/ZiyF4M2YshezFkL4bsxZC9GLIXQ/bi/SfcjHqEMIYQxpC9GCIX
Q+RiiFwMkYshcjFELobIxRC5GCIXQ+Rivo5cfFsFyjtG3jHyjpF3jLxj5B0j7xh5x8g7Rt4x8o6R
d4y8Y+QdI+8YecfIO0beMfKOkXeMvGPkHSPvGHnHyDtG3jHyjpHf8THyAy9Qvr+SryPKHpQ9KHtQ
9qDsQdmDsgdlD8oelD0oe1D2oOxB2YOyB2UPyh6UPSh7UPag7EHZg7IHZQ/KHpQ9KHtQ9qDsQdmD
sgdlD8oelD0oe1D2oOxB2ULZQtlC2ULZ4qfNwt3C3cLdwt3C3cLdwt3C3cLdwt3C3cLdwt3C3cLd
wt3C3cLdwt3C3cLdwt3C3cLdwt3C3cLdwt3C3cLdwt3C3cLdwt3C3cLdwt3C3cLdwt3C3cLd4qfN
QuLip83C5sLmwubC5sLmwubC5sLmwubC5uKnzcLBwsHCwcLBwsHCwcLBwsHCwcLBwsHCwcLBwsHC
wcLBwsHCwcLBwsHCwcLBwsHCwcLBwsHCwcLBwsHCwcLBwsHCwcLBwsHCwcLBwsHCwcbBxsHGwcbB
xsHGwcbBxsHGwcbBxsHGwcbBxsHGwcbBxsHGwcbBxsHGwcbBxsHGwcbBxsHGwcbBxsHGwcbBxsHG
wcbBxsHGwcbBxsHGwcbBxsHGwcbBxsHGQSIX7z/hZhwke/H+E27GQUIYQwhjCGEMIYwhhDGEMIYQ
xhDCGEIYQwhjCGEMIYwhhDGEMIYQxhDCGEIYQwhjCGEMIYwhhDGEMIYQxhDCGEIYQwhjCGEMIYwh
hDGEMIYQxhDCGEIYQwhjCGEMIYwhhDGEMIYQxhDCGEIYQwhjCGEMIYwhhDGEMIYQxhDCGEIYQwhj
CGEMIYwhhDGEMIYQxhDCGEIYQwhjCGEMIYwhhDGEMIYQxhDCGEIYQwhjCGEMIYwhhDGEMIYQxhDC
GEIYQwhjCGEMIYwhhDGEMIYQxhDCGEIYQwhjCGEMIYwhhDGEMIYQxhDCGEIYQwhjCGEMIYwhhDGE
MIYQxhDCGEIYQwhjCGEMIYwhhDGEMIYQxhDCGEIYQwhjCGEMIYwhhDGEMIYQxhDCGEIYQwhjCGEM
IYwhhDGEMIYQxhDCGEIYQwhjCGEMIYwhhDGEMIYQxhDCGEIYQwhjCGEMIYwhhDGEMIYQxhDCGEIY
QwhjCGEMIYwhhDFkL4bsxZC9GLIXQ/ZiyF7Mv85enJf/Onvxp0+CT5JPFp9sPnn45PBJ8UnzCTcH
Nwc3BzcHNwc3BzcHNwc3BzcHNyc3JzcnNyc3JzcnNyc3JzcnNyc3L25e3Ly4eXHz4ubFzYubFzcv
LtxcuLlwc+Hmws2Fmws3F24u3HxVNzc/3Pxw88PNDzc/3Pxw88PNDzc/3Pxw8+Hmw83/1bhvq0B5
x8g7Rt4x8o6Rd4y8Y+QdI+8YecfIO0beMfKOkXeMvGPkHSPvGHnHyDtG3jHyjpF3jLxj5B0j7xh5
x8g7Rt4x8js+Rn7YBco/XcnX8fB1PHwdD1/Hw9fx8HU8fB2Lr2PxdSx+7Yubi5uLm4ubi5uLm4ub
m5ubm5ubm5ubm5ubm5ubm5ubm5uHm4ebh5uHm4ebh5uHm4ebh5uROJA4kDiQOJA4kDiQOJA4kDiQ
OJA4kDiQOJA4kDiQOJA4kDiQOJA4kDiQOJA4kDiQOJA4kDiQOJA4kDiQOJA4kDiQOJA4kDiQOJA4
kDgWN2NzYHNgc2BzYHNgc2BzYHNgc2BzYHNgc2BzYHNgc2BzYHNgc2BzYHNgc2BzYHMcbsbBwMHA
wcDBwMHAwcDBwMHAwcDBwMHAwcDBwMHAwcDBwMHAwcDBwMHAwcDBwMHAwcDBwMHAwcDBwMHAwcDB
wMHAwcDBwMHAwcDBxMHEwcTBxMHEwcTBxMHEwcTBxMHEwcTBxMHEwcTBxMHEwcTBxMHEwcTBxMHE
wcTBxMHEwcTBxMHEwcTBxMHEwcTBxMHEwcTBxMHEwcTBxMHEwcTBxMHEwcTBxMHEwcTBxMHEwcTB
xMHEwcTBxMHEwcTBxMHEwcTBxMHEwcTBxMHEwcTBxMHEwcTBxMHEwcTBxMHEwcTBxMHEwcTBxMHE
wcTBxMHEwcTBxMHEwcTBxMHEwcTBxMHEwcTBxMHEwcTBxMHEwcTBxMGFgwsHFw4uHFw4uHBw4eDC
wYWDCwcXDi4cXDi4cHDh4MLBhYMLBxcOLhxcOLhwcOHgwsGFgwsHFw4uHFw4uHBw4eDCwYWDCwcX
Di4cXDi4cHDh4MLBhYMLBxcOLhxcOLhwcOHgwsGFgwsHFw4uHFw4uHBw4eDCwYWDCwcXDi4cXDi4
cHDh4MLBhYMLBxcOLhxcOLhwcOHgwsGFgwsHFw4uHFw4uHBw4eDCwYWDCwcXDi4cXDi4cHDh4MLB
hYMLBxcOLhxcOLhwcOHgwsGFgwsHFw4uHNw4uHFw4+DGwY2DGwc3Dm4c3Di4cXDj4MbBjYMbBzcO
bhzcOLhxcOPgxsGNgxsHNw5uHNw4uHFw4+DGwY2DGwc3Dm4c3Di4cXDj4MbBjYMbBzcObhzcOLhx
cOPgxsGNgxsHNw5uHNw4uHFw4+DGwY2DGwc3Dm4c3Di4cXDj4MbBjYMbB/e38Aco7xh5x8g7Rt4x
8o6Rd4y8Y+QdI+8YecfIO0beMfKOkXeMvGPkHSPvGHnHyDtG3jHyjpF3jLxj5B0j7xh5x8g7Rv7F
jJEfdoHyT1fydcTmjc0bmzc2b2ze2LyxeWPzxuaNzRubNzZvbN7YvLF5Y/PG5o3NG5s3Nm9s3ti8
sXlj88bmjc0bmzc2b2ze2LyxeWPzxuaNzRubNzY/2Pxg84PNDzY/2Pxg84PNDzY/2Pxg84PNDzY/
2Pxg84PNDzY/2Pxg84PNDzY/2Pxg84PNDzY/2Pxg84PNDzY/2Pxg84PNDzY/2Pxg84PNDzY/2Pxg
84PNDzY/2Pxg84PNDzY/2Pxg84PNDzY/2Pxg84PNDzY/2Pxg84PNDzY/2Pxg84PNDzY/2Pxg88PP
qA8OPjj44OCDgw8OPjj44OCDgw8OPjj44OCDgw8OPjj44OCDgw8OPjj44OCDgw8OPjj44OCDgw8O
Pjj44OCDgw8OPjj44OCDgw8OPjj44OCDgw8OHhw8OHhw8ODgwcGDgwcHDw4eHDw4eHDw4ODBwYOD
BwcPDh4cPDh4cPDg4MHBg4MHBw8OHhw8OHhw8ODgwcGDgwcHDw4eHDw4eHDw4ODBwYODBwcPDh4c
PDh4cPDg4MHBg4MHBw8OHhw8OHhw8ODgwcGDgwcHDw4eHDw4eHDw4ODBwYODBwcPDh4cPDh4cPDg
4MHBg4MHBw8OHhw8OHhw8ODgwcGDgwcHDw4eHDw4eHDw4ODBwYODBwcPDh4cPDh4cPDg4MHBg4MH
Bw8OHhw8OHhw8OBg4WDhYOFg4WDhYOFg4WDhYOFg4WDhYOFg4WDhYOFg4WDhYOFg4WDhYOFg4WDh
YOFg4WDhYOFg4WDhYOFg4WDhYOFg4WDhYOFg4WDhYOFg4WDhYOFg4WDhYOFg4WDhYOFg4WDhYOFg
4WDhYOFg4WDhYOFg4WDhYOFg4WDhYOFg4WDhYOFg4WDhYOFg4WDhYOFg4WDhYOFg4WDhYOFg4WDh
YOFg4WDhYOFg4WDhYOFg4WDhYOFg4WDhYOFg4WDhYOFg4WDhYOFg4WDjYONg42DjYONg42DjYONg
42DjYONg42DjYONg42DjYONg42DjYONg42DjYONg42DjYONg42DjYONg42DjYONg42DjYONg42Dj
YONg42DjYONg42DjYONg42DjYONg42DjYONg42DjYONg42DjYONg42DjYONg42DjYONgf5sFyjtG
3jHyjpF3jLxj5B0j7xh5x8g7Rt4x8o6Rd4y8Y+QdI+8YecfIO0beMfKOkXeMvGPkHSPvGHnHyDtG
3jHyjpHf9THyQy9QNjY3Njc2NzY3Njc2NzY3Njc2NzY3Njc2NzY3Njc2NzY3Njc2NzY3Njc2NzY3
Njc2NzY3Njc2NzY3Njc2NzY3Njc2NzY3Njc2NzYPNg82DzYPNg82DzYPNg82DzYPNg82DzYPNg82
DzYPNg82DzYPNg82DzYPNg82DzYPNg82DzYPNg82DzYPNg82DzYPNg82DzYPNg82DzYPNg82DzYP
Ng82DzYPNg82DzYPNg82DzYPNg82DzYPNg82DzYPNg82DzYPNg82Dz+jDg4ODg4ODg4ODg4ODg4O
Dg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4O
zr92MF7+awfffxJ8knyy+GTzycMnh0+KT5pPuDm4Obg5uDm4Obg5uDm4Obg5uDm4Obk5uTm5Obk5
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
7/7cX/Ovj+1db+fl23ox5/XbF/uL/NOd9ebF63z1xXodMa/P+Q9f/urdr//q0/XbL9/84yd/fPOD
+ec3+cm7Vz/45Bef/+CTP7z5w0fn0/jtl3+X3//lqx/89Hd/l/PPX/zND//l9fc++u1H/xi/ePu9
+MXn+dP50U9++vsffe+HX/zt99//3376xVcfffn7L3/0y//0Xz/77LOXv337hx/+4fPPvh+ff/bj
l5/lL7762acff/XmVz/68n/76nevP/qHH//iZ+8/+9uf/vhfXv/q4z+8zt9/+bff++HvfvbZz3/3
Zn38i9c/+NNf/7/9tf7+919+/tkvfv/5pz9++fmnH7/74m+++v3nf//R+egfv/5rfP69H85nf/dX
f/WBfPv8pf8yfAC/E/gd/E1+NT7Uf/p8k9s/mH/6rBX73bs9L+q8efliv3y9Xkx2v3jzer38It51
vXr38s/7bf8/+i3+6tP9u89/9cOv3uTP5//87fLf/RZ//uWL788vf/bpj3/9+ad/9+W7T15+WP+0
+cv5sv/bfaf/v/8H7d8/gfGMyHuHw3uHw3uHw3uHw3uHw3uHw3uHw3uHw3uHw3uHw3uHw3uHw3uH
w3uHw3uHw3uHw3uHw3uHw3uHw3uHw3uHw3uHw3uHw3uHw3uHw3uHw3uHw3uHw3uHw3uHw3uHw3uH
w3uHw3uH4r1D8d6heO9QvHco3jsU7x2K9w7Fe4fivUPx3qF471C8dyjeOxTvHYr3DsV7h+K9Q/He
oXjvULx3KN47FO8divcOxXuH4r1D8d6heO9QvHco3jsU7x2K9w7Fe4fivUPx3qF471C8dyjeOxTv
HYr3DsV7h+K9Q/HeoXjvULx3KN47FO8divcOxXuH4r1D8d6heO9QvHco3jsU7x2K9w7Fe4fivUPx
3qF471C8dyjeOxTvHYr3DsV7h+L9e+Fg4WDhYOFg4WDhYOFg4WDhYOFg4WDhYOFg4WDhYOFg4WDh
YOFg4WDhYOFg4WDhYOFg4WDhYOFg4WDhYOFg4WDhYOFg4WDjYONg42DjYONg42DjYONg42DjYONg
42DjYONg42DjYONg42DjYONg42DjYONg42DjYONg42DjYONg42DjYONg42DjYONg42DjYONg42Dj
YONg42DjYONg42DjYONg42DjYONg42DjYONg42DjYONg42DjYONg42DjYONg4yDxsiBeFsTLgnhZ
EC8L4mVBvCyIlwXxsiBeFsTLgnhZEC8L4mVBvCyIlwXxsiBeFsTLgnhZEC8L4mVBvCyIlwXxsiBe
FsTLgnhZEC8L4mVBvCyIlwXxsiBeFsTLgnhZEC8L4mVBvCyIlwXxsiBeFsTLgnhZEC8L4mVBvCyI
lwXxsiBeFsTLgnhZEC8L4mVBvCyIlwXxsiBeFsTLgnhZEC8L4mVBvCyIlwXxsiBeFsTLgnhZEC8L
4mVBvCyIlwXxsiBeFsTLgnhZEC8L4mVBvCyIlwXxsiBeFsTLgnhZEC8L4mVBvCyIlwXxsiBeFsTL
gnhZEC8L4mVBvCyIlwXxsiBeFsTLgnhZEC8L4mVBvCyIlwXxsiBeFsTLgnhZEC8L4mVBvCyIlwXx
siBeFsTLgnhZEC8L4mVBvCyIlwXxsiBeFsTLgnhZEC8L4mVBvCyIlwXxsiBeFsTLgnhZEC8L4mVB
vCyIlwXxsiRelsTLknhZEi9L4mVJvCyJlyXxsiRelsTLknhZEi9L4mVJvCyJlyXxsiRelsTLknhZ
Ei9L4mVJvCyJlyXxsiRelsTLknhZEi9L4mVJvCyJlyXxsiRelsTLknhZEi9L4mVJvCyJlyXxsiRe
lsTLknhZEi9L4mVJvCyJlyXxsiRelsTLknhZEi9L4mVJvCyJlyXxsiRelsTLknhZEi9L4mVJvCyJ
lyXxsnz5LfzHIe4YecfIO0beMfKOkXeMvGPkHSPvGHnHyDtG3jHyjpF3jLxj5B0j7xh5x8g7Rt4x
8o6Rd4y8Y+QdI+8YecfIO0b+xYyR/z7+4xBf/5nV15mvXr1+Ey/evXv19sV+vfrFq3eR7//H9frl
u1fvVr+bf8M/If+T//Tn+3OsP/lA/vjwN+wKvP9m4dv58O18+HY+fDsfvp2Lb+fi27n4di6+nYvf
gsXNxc3FzcXNxc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3NzcPNw83DzcPNw83DzcPNw83DzTwiBY9IwSNS
8IgUPCIFj0jBI1LwiBQ8IgWPSMEjUvCIFDwiBY9IwSNS8IgUPCIFj0jBI1LwiBQ8IgWPSMEjUvCI
FDwiBY9IwSNS8IgUPCIFj0jBI1LwiBQ8IgWPSMEjUvCIFDwiBY9IwSNS8IgUPCIFj0jBI1LwiBQ8
IgWPSMEjUvCIFDwiBY9IwSNS8IgUPCIFj0jBI1LwiBQ8IgWPSMEjUvCIFDwiBY9IwSNS8IgUPCLF
4WYcDBwMHAwcDBwMHAwcDBwMHAwcDBwMHAwcDBwMHAwcDBwMHAwcDBwMHAwcDBwMHAwcDBwMHAwc
DBwMHAwcDBwMHAwcDBxMHEwcTBxMHEwcTBxMHEwcTBxMHEwcTBxMHEwcTBxMHEwcTBxMHEwcTBxM
HEwcTBxMHEwcTBxMHEwcTBxMHEwcTBxMHEwcTBxMHEwcTBxMHEwcTBxMHEwcTBxMHEwcTBxMHEwc
TBxMHEwcTBxMHEwcTBxMHEwcTBxMHEwcTBykIZc05JKGXNKQSxpySUMuacglDbmkIZc05JKGXNKQ
SxpySUMuacglDbmkIZc05JKGXNKQSxpySUMuacglDbn3n3AzDlKVS6pySVXu/SfcjIN05pLOXNKZ
SzpzSWcu6cwlnbmkM5d05pLOXNKZSzpzSWcu6cwlnbmkM5d05pLOXNKZSzpzSWcu6cwlnbmkM5dU
5ZKqXFKVS6pySVUuqcolVbmkKpdU5ZKqXFKVS6pySVUuqcolVbmkKpdU5ZKqXFKVS6pySVUuqcol
VbmkKpdU5ZKqXFKVS6pySVUuqcolVbmkKpdU5ZKqXFKVS6pySVUuqcolVbmkKpdU5ZKqXFKVS6py
SVUuqcolVbmkKpdU5ZKqXFKVS6pySVUuqcolVbmkKpdU5ZKqXFKVS6pySVUuqcolVbmkKpdU5ZKq
XFKVS6pySUMuacglDbmkIZc05JKGXNKQSxpySUMuacglDbmkIZc05JKGXNKQSxpySUMuacglDbmk
IZc05JKGXNKQSxpySUMuacglDbmkIZc05JKGXNKQSxpySUMuacglDbmkIZc05JKGXNKQSxpySUMu
acglDbmkIZc05JKGXNKQSxpySTEuKcYlxbikGJcU45JiXFKMS4pxSTEuKcYlxbikGJcU45JiXFKM
S4pxSTEuKcYlxbikGJcU45JiXFKMS4pxSTEuKcYlxbikGJcU45JiXH5djPu3+XOsdxP+tv/bxv8f
evN3F7678N2F7y58d+G7C99d+O7Cdxe+u/Ddhe8ufHfhuwvfXfjuwncXvrvw3YXvLnx34bsL3134
7sJ3F7678N2Fv+O78L+nP1L86uX7X693r16+OC/zvNivv3j94vX7n3Nf1Ms373/sef1u4nnzZ5qP
//iz/z9T8T+//kN8Pf3+/b/j6vB3/8v9wXS173f2/c7+rn1nU7r/Jl/1D+Tb5H/o9g/nnybz+t2r
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
YKMHNnpgowc2emCjBzZ6YKMHNnpgowc2emCjBzZ6YKMHNnpgowc2emCjBzZ6YKMHNnpgowc2emCj
BzZ6YKMHNnpgowc2emCjBzZ6YKMHNnpgowc2emCjBzZ6YKMHNnpgowc2emCjBzZ6YKMHNnpgowc2
emCjBzZ6YKMHNnpgowc2emCjx8Pmzc2bmzc3b27e3Lx5ePPw5uHNw5uHNw9vHt48vHl48/DmzZs3
b968efPmzZs3b968efPmzZs3b755882bb9588+abN9+8+ebNN2++eTM5yKHz4NB5cOg8OHQeHDoP
Dp0Hh86DQ+fBofPg0Hlw6Dw4dB4cOg8OnQeHzoND58Gh8+DQeXDoPDh0Hhw6Dw6dB4fOg0PnwaHz
4NB5cOg8OHQeHDoPDp0Hh86DQ+fBofPg0Hlw6Dw4dB4cOg8OnQeHzoND58Gh8+DQeXDoPDh0Hhw6
Dw6dB4fOg0PnwaHz4NB5cOg8OHQeHDoPDp0Hh86DQ+fBofPg0Hlw6Dw4dB4cOg8OnQeHzoND58Gh
8+DQeXDoPDh0Hhw6Dw6dB4fOg0PnwaHz4NB5cOg8OHQeHDoPDp0Hh86DQ+fBofPg0Hlw6Dw4dB4c
Og8OnQeHzoND58Gh8+DQeXDoPDh0Hhw6Dw6dB4fOg0PnwaHz4NB5cOg8OHQeHDoPDp0Hh86DQ+fB
ofPg0Hlw6Dw4dB4cOg8OnQeHzoND58Gh8+DQeXDoPDh0Hhw6Dw6dB4fOg0PnwaHz4NB5cOg8OHQe
HDoPDp0Hh86DQ+fBofPg0Hlw6Dw4dB4cOg8OnQeHzoND58Gh8+DQeXDoPDh0Hhw6Dw6dB4fOg0Pn
waHz4NB5cOg8OHQeHDoPDp0Hh86DQ+fBofPg0Hlw6Dw4dB4cOg8OnQeHzoND58Gh8+DQeXDoPDh0
Hhw6Dw6dB4fOg0PnsV7jrvh8uHo+XD0frp4PV8+Hq+fD1fPh6vlw9Xy4ej5cPR+ung9Xz4er58PV
8+Hq+XD1fLh6Plw9H66eD1fPh6vnw9Xz4er5cPV8uHo+XD0frv7df7j6bWldf3RveT6iPB9Rno8o
z0eU5yPK8xHl+YjyfER5PqI8H1GejyjPR5TnI8rzEeX5iPJ8RHk+ojwfUZ6PKM9HlOcjyvMR5fmI
8nxEeT6iPB9Rno8o/24+ovy29pZ/pt78Kid631R5+lXe/sa4ufvhWs/284cP8vHOB9mPnj949GjW
g8ePf/v5z7OnOU/XX/YW8p9x2/hfnr51/+bfv21c//z0B/fXN5Df//Gbp0h/93+5//pnpH/35fbL
f+fxb2Wa/qLpL5r+oukvmv6i6S+a/qLpL5r+oukvmv6i6S+a/qLpL5r+oukvmv6i6S+a/qLpL5r+
oukvmv6i6S+a/qLpL5r+oukvmv6i6QdNP2j6QdMPmn7Q9IOmHzT9oOkHTT9o+kHTD5p+0PSDph80
/aDpB00/aPpB0w+aftD0g6YfNP2g6QdNP2j6QdMPmn7Q9IOmHzT9oOkHTT9o+kHTD5p+0PSDph80
/aDpB00/aPpB0w+aftD0g6YfNP2g6QdNP2j6QdMPmn7Q9IOmHzT9oOkHTT9o+kHTD5p+0PSDph80
/aDpB00/aPpB0w+afvA3XkEOBjkY5GCQg0EOBjkY5GCQg0EOBjkY5GCQg0EOBjkY5GCQg0EOBjkY
5GCQg0EOBjkY5GCQg0EOBjkY5GCQg0EOBjkY5GCSg0kOJjmY5GCSg0kOJjmY5GCSg0kOJjmY5GCS
g0kOJjmY5GCSg0kOJjmY5GCSg0kOJjmY5GCSg0kOJjmY5GCSg0kOJjmY5GCSg0kOJjmY5GCSg0kO
JjmY5GCSg0kOJjmY5GCSg0kOJjmY5GCSg0kOJjmY5GCSg0kOJjmY5GCSg0kOJjmY5GCSg0kOJjmY
5GCSg0kOJjmY5CB3u4K7XcHdruBuV3C3K7jbFdztCu52BXe7grtdwd2u4G5XcLcruNsV3O0K7nYF
d7uCu13B3a7gbldwtyu42xXc7QrudgV3u4K7XcHdruBuV3C3K7jbFdztCu52BXe7grtdwd2u4G5X
cLcruNsV3O0K7nYFd7uCu13B3a7gbldwtyu42xXc7QrudgV3u4K7XcHdruBuV3C3K7jbFdztCu52
BXe7grtdwd2u4G5XcLcruNsV3O0K7nYFd7uCu13B3a7gbldwtyu42xXc7QrudgV3u4K7XcHdruBu
V3C3K7jbFdztCu52BXe7grtdwd2u4G5XcLcruNsV3O0K7nYFd7uCu13B3a7gbldwtyu42xXc7Qru
dgV3u4K7XcHdruBuV3C3K7jbFdztCu52BXe7grtdwd2u4G5XcLcruNsV3O0K7nYFd7uCu13B3a7g
bldwtyu42xXc7QrudgV3u4K7XcHdruBuV3C3K7jbFdztCu52BXe7grtdwd2u4G5XcLcruNsV3O0K
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
ObjIwUUOLnJwkYOLHFzk4CIHFzm4yMFFDi5ycJGDixxc5OAiBxc5uMjBRQ4ucnCRg4scXOTgIgcX
ObjIwUUOLnJwkYOLHFzk4CIHFzm4yMFFDi5ycJGDixxc5OAiBxc5uMjBRQ4ucnCRg4scXOTgIgcX
ObjIQcyWxGxJzJbEbEnMlsRsScyWxGxJzJbEbEnMlsRsScyWxGxJzJbEbEnMlsRsScyWxGxJzJbE
bEnMlsRsScyWxGxJzJbEbEnMlsRsScyWxGxJzJbEbEnMlsRsScyWxGxJzJbEbEnMlsRsScyWxGxJ
zJbEbEnMlsRsScyWxGxJzJbEbEnMlsRsScyWxGxJzJbEbEnMlsRsScyWxGxJzJbEbEnMlsRsScyW
xGxJzJbEbEnMlsRsScyWxGxJzJbEbEnMlsRsScyWxGxJzJbEbEnMlsRsScyWxGxJzJbEbEnMlsRs
ScyWxGxJzJbEbEnMlsRsScyWxGxJzJbEbEnMlsRsScyWxGxJzJbEbEnMlsRsScyWxGxJzJbEbEnM
lsRsScyWxGxJzJbEbEnMlsRsScyWxGxJzJbEbEnMlsRsScyWxGxJzJbEbEnMlsRsScyWxGxJzJbE
bEnMlsRsScyWxGxJzJbEbEnMlsRsScyWxGxJzJbEbEnMlsRsScyWxGxJzJbEbEnMlsRsScyWxGxJ
zJbEbEnMlsRsScyWxGxJzJbEbEnMlsRsScyWxGxJzJbEbEnMlsRsScyWxGxJzJbEbEnMlsRsScyW
xGxJzJbEbEnMlsRsScyWxGxJzJbEbEnMlsRsScyWxGxJzJbEbEnMlsRsScyWzG8VDD3LyLOMPMvI
s4w8y8izjDzLyLOMPMvIs4w8y8izjDzLyLOMPMvIs4w8y8izjDzLyLOMPMvIs4w8y8izjDzLyLOM
PMvI7/gy8g0HQ1++kl9HsjnJ5iSbk2xOsjnJ5iSbk2xOsjnJ5iSbk2xOsjnJ5iSbk2xOsjnJ5iSb
k2xOsjnJ5iSbk2xOsjnJ5iSbk2xOsjnJ5iKbi2wusrnI5iKbi2wusrnI5iKbi2wusrnI5iKbi2wu
srnI5iKbi2wusrnI5iKbi2wusrnI5iKbi2wusrnI5iKbi2wusrnI5iKbi2wusrnI5iKbi2wusrnI
5iKbi2wusrnI5iKbi2wusrnI5iKbi2wusrnI5iKbi2wusrnI5iKbi2wusrnI5iKbi2wusrnI5iKb
i2wusrnI5mJGLXKwyMEiB4scLHKwyMEiB4scLHKwyMEiB4scLHKwyMEiB4scLHKwyMEiB4scLHKw
yMEiB4scLHKwyMEiB4scLHKwyMEiB5scbHKwycEmB5scbHKwycEmB5scbHKwycEmB5scbHKwycEm
B5scbHKwycEmB5scbHKwycEmB5scbHKwycEmB5scbHKwycEmB5scbHKwycEmB5scbHKwycEmB5sc
bHKwycEmB5scbHKwycEmB5scbHKwycEmB5scbHKwycEmB5scbHKwycEmB5scbHKwycEmB5scbHKw
ycEmB5scxGxJzJbEbEnMlsRsScyWxGxJzJbEbEnMlsRsScyWxGxJzJbEbEnMlsRsScyWxGxJzJbE
bEnMlsRsScyWxGxJzJbEbEnMlsRsScyWxGxJzJbEbEnMlsRsScyWxGxJzJbEbEnMlsRsScyWxGxJ
zJbEbEnMlsRsScyWxGxJzJbEbEnMlsRsScyWxGxJzJbEbEnMlsRsScyWxGxJzJbEbEnMlsRsScyW
xGxJzJbEbEnMlsRsScyWxGxJzJbEbEnMlsRsScyWxGxJzJbEbEnMlsRsScyWxGxJzJbEbEnMlsRs
ScyWxGxJzJbEbEnMlsRsScyWxGxJzJbEbEnMlsRsScyWxGxJzJbEbEnMlsRsScyWxGxJzJbEbEnM
lsRsScyWxGxJzJbEbEnMlsRsScyWxGxJzJbEbEnMlsRsScyWxGxJzJbEbEnMlsRsScyWxGxJzJbE
bEnMlsRsScyWxGxJzJbEbEnMlsRsScyWxGxJzJbEbEnMlsRsScyWxGxJzJbEbEnMlsRsScyWxGxJ
zJbEbEnMlsRsScyWxGxJzJbEbEnMlsRsScyWxGxJzJbEbEnMlsRsScyWxGxJzJbEbEnMlsRsScyW
xGxJzJbEbEnMlsRsScyWxGxJzJbEbEnMlsRsScyWxGxJzJbEbEnMlsRsScyWxGzJ/a2CoWcZeZaR
Zxl5lpFnGXmWkWcZeZaRZxl5lpFnGXmWkWcZeZaRZxl5lpFnGXmWkWcZeZaRZxl5lpFnGXmWkWcZ
eZaRZxn5HV9GfqsfUP6O7PztDz9+9MW/GpaffPl6NqR/6J/2h34J/giz+RcBNjfVY1M9NtVjUz02
1WNTPTbVY1M9NtVjUz021WNTPTbVY1M9NtVjUz021WNTPTbVY1M9NtVjUz021WNTPTbVY1M9NtVj
Uz021WNTPTbV46Z63FSPm+pxUz1uqsdN9bipHjfV46Z63FSPm+pxUz1uqsdN9bipHjfV46Z63FSP
m+pxUz1uqsdN9bipHjfV46Z63FSPm+pxUz1uqsdN9bipHjfV46Z63FSPm+pxUz1uqsdN9bipHjfV
46Z63FSPm+pxUz1uqsdN9bipHjfV46Z63FSPm+pxUz1uqsdN9bipHjfV46Z63FSPm+pxUz1uqsdN
9bipHjfV46Z63FSPm+pxUz1uRvCbHLzJwZscvMnBmxy8ycGbHLzJwZscvMnBmxy8ycGbHLzJwZsc
vMnBmxy8ycGbHLzJwZscvMnBmxy8ycGbHLxJvZvUu0m9m9S7fz/16uHvp97Ln1z8ZPGT4CfJT4qf
ND8ZfrL5CW++ePPFmy/efPHmizdfvPnizRdvvnjzxZsXb168efHmxZsXb168efHmxZsXb168OXhz
8ObgzcGbgzcHbw7eHLw5eHPw5uTNyZuTNydvTt6cvDl5c/Lm5M3Jm4s3F28u3ly8uXhz8ebizcWb
izcXb27e3Ly5eXPz5ubNzZubNzdvbt7cvHl48/Dm4c3Dm4c3D28e3jy8eXjz8ObNmzdv3rx58+bN
mzdv3rx58+bNmzdvvnnzzZtv3nzz5ps337z55s03b755MzmIaFKIJoVoUogmhWhSiCaFaFKIJoVo
UogmhWhSiCaFaFKIJoVoUogmhWhSiCaFaFKIJoVoUogmhWhSiCaFaFKIJoVoUogmhWhSiCaFaFKI
JoVoUogmhWhSiCaFaFKIJoVoUogmhWhSiCaFaFKIJoVoUogmhWhSiCaFaFKIJoVoUogmhWhSiCaF
aFKIJoVoUogmhWhSiCaFaFKIJoVoUogmhWhSiCaFaFKIJoVoUogmhWhSiCaFaFKIJoVoUogmhWhS
iCaFaFKIJoVoUogmhWhSiCaFaFKIJoVoUogmhWhSiCaFaFKIJoVoUogmhWhSiCaFaFKIJoVoUogm
hWhSiCaFaFKIJoVoUogmhWhSiCaFaFKIJoVoUogmhWhSiCaFaFKIJoVoUogmhWhSiCaFaFKIJoVo
UogmhWhSiCaFaFKIJoVoUogmhWhSiCaFaFKIJoVoUogmhWhSiCaFaFKIJoVoUogmhWhSiCaFaFKI
JoVoUogmhWhSiCaFaFKIJoVoUogmhWhSiCaFaFKIJoVoUogmhWhSiCaFaFKIJoVoUogmhWhSiCaF
aFJfiybfGrB5lpFnGXmWkWcZeZaRZxl5lpFnGXmWkWcZeZaRZxl5lpFnGXmWkWcZeZaRZxl5lpFn
GXmWkWcZeZaRZxl5lpFnGXmWkd/tZeS3+n3ox188+OrFZ8/+75f/x8t/1INHX3316MnXy8vXsyP9
w/+8//CffvT5L599wy9av3j2T59/8dVf+rvWf7vV/dVXLz798nX+A/6ds8K1qEeLerSoR4t6tKhH
i3q0qEeLerSoR4t6tKhHi3q0qEeLerSoR4t6tKhHi3q0qEeLerSoR4t6tKhHi3q0qEeLerSoR4t6
tKhHi3oU1KOgHgX1KKhHQT0K6lFQj4J6FNSjoB4F9SioR0E9CupRUI+CehTUo6AeBfUoqEdBPQrq
UVCPgnoU1KOgHgX1KKhHQT0K6lFQj4J6FNSjoB4F9SioR0E9CupRUI+CehTUo6AeBfUoqEdBPQrq
UVCPgnoU1KOgHgX1KKhHQT0K6lFQj4J6FNSjoB4F9SioR0E9CupRUI+CehSUoaAMBWUoKEPBXwoE
qRekXpB6QeoFqRekXpB6QeoFqRekXpB6QeoFqRekXpB6QeoFqRekXpB6QeoFqRekXpB6QeoFqRek
XpB6QeoFqRekXpJ6SeolqZekXpJ6SeolqZekXpJ6SeolqZekXpJ6SeolqZekXpJ6SeolqZekXpJ6
SeolqZekXpJ6SeolqZekXpJ6SeolqZekXpJ6SeolqZekXpJ6SeolqZekXpJ6SeolqZekXpJ6Seol
qZekXpJ6SeolqZekXpJ6SeolqZekXpJ6SeolqZekXpJ6SeolqZekXvKXAkkOJjmY5GCSgxAyBSFT
EDIFIVMQMgUhUxAyBSFTEDIFIVMQMgUhUxAyBSFTEDIFIVMQMgUhUxAyBSFTEDIFIVMQMgUhUxAy
BSFTEDIFIVMQMgUhUxAyBSFTEDIFIVMQMgUhUxAyBSFTEDIFIVMQMgUhUxAyBSFTEDIFIVMQMgUh
UxAyBSFTEDIFIVMQMgUhUxAyBSFTEDIFIVMQMgUhUxAyBSFTEDIFIVMQMgUhUxAyBSFTEDIFIVMQ
MgUhUxAyBSFTEDIFIVMQMgUhU4AxBRhTgDEFGFOAMQUYU4AxBRhTgDEFGFOAMQUYU4AxBRhTgDEF
GFOAMQUYU4AxBRhTgDEFGFOAMQUYU4AxBRhTgDEFGFOAMQUYU4AxBRhTgDEFGFOAMQUYU4AxBRhT
gDEFGFOAMQUYU4AxBRhTgDEFGFOAMQUYU4AxBRhTgDEFGFOAMQUYU4AxBRhTgDEFGFOAMQUYU4Ax
BRhTgDEFGFOAMQUYU4AxBRhTgDEFGFOAMQUYU4AxBRhTgDEFGFOAMQUYU4AxBRhTgDEFGFOAMQUY
U4AxBRhTgDEFGFOAMQUYU4AxBRhTgDEFGFOAMQUYU4AxBRhTgDEFGFOAMQUYU4AxBRhTgDEFGFOA
MQUYU4AxBRhTgDEFGFOAMQUYU4AxBRhTgDEFGFOAMQUYU4AxBRhTgDH1NRjzalvFj5599eC3K+UH
L375/PP/68tfPf7r3v7933vZ13EB+C/wre7/2uq+juf9/j/r//T/Fa/tMPJf9+7zWWGfFfZZYZ8V
9llhnxX2WWGfFfZZYZ8V9llhnxX2WWGfFfZZYZ8V9llhnxX2WWGfFfZZYZ8V9llhnxX2WWGfFfZZ
Yf/dr7DfPBn39XxH/I193D/8tfSrbZ6/2U7+G/5T//WfyOL6d//X1/ar+u//M79Fe/jlb3P+IFLu
mnLXlLum3DXlril3Tblryl1T7ppy15S7ptw15a4pd025a8pdU+6acteUu6bcNeWuKXdNuWvKXVPu
mnLXlLuh3A3lbih3Q7kbyt1Q7oZyN5S7odwN5W4od0O5G8rdUO6GcjeUu6HcDeVuKHdDuRvK3VDu
hnI3lLuh3A3lbih3Q7kbyt1Q7oZyN5S7odwN5W4od0O5G8rdUO6GcjeUu6HcDeVuKHdDuRvK3VDu
hnI3lLuh3A3lbih3Q7kbyt1Q7oZyN5S7odwN5W4od0O5G8rdUO6GcjeUu6HcDeVuKHdDuRvK3VDu
hnI3/CXHkINDDg45OOTgkINDDg45OOTgkINDDg45OOTgkINDDg45OOTgkINDDg45OOTgkINDDg45
OOTgkINDDg45OOTgJgc3ObjJwU0ObnJwk4ObHNzk4CYHNzm4ycFNDm5ycJODmxzc5OAmBzc5uMnB
TQ5ucnCTg5sc3OTgJgc3ObjJwU0ObnJwk4ObHNzk4CYHNzm4ycFNDm5ycJODmxzc5OAmBzc5uMnB
TQ5ucnCTg5sc3OTgJgc3ObjJwU0ObnJwk4ObHNzk4CYHNzm4ycFNDm5ycJODmxzc5OAmBzc5uMnB
TQ5uchDIqYCcCsipgJwKyKmAnArIqYCcCsipgJwKyKmAnArIqYCcCsipgJwKyKmAnArIqYCcCsip
gJwKyKlgmwq2qWCbCrapYJsKtqlgmwq2qWCbCrapYJsKtqlgmwq2qWCbCrapYJsKtqlgmwq2qWCb
CrapYJsKtqlgmwq2qWCbCrapYJsKtqlgmwq2qWCbCrapYJsKtqlgmwq2qUCaCqSpQJoKpKlAmgqk
qUCaCqSpQJoKpKlAmgqkqUCaCqSpQJoKpKlAmgqkqUCaCqSpQJoKpKlAmgqkqUCaCqSpQJoKpKlA
mgqkqUCaCqSpQJoKpKlAmgqkqUCaCqSpQJoKpKlAmgqkqUCaCqSpQJoKpKlAmgqkqUCaCqSpQJoK
pKlAmgqkqUCaCqSpQJoKpKlAmgqkqUCaCqTp5U94M6kH21SwTQXbVLBNDdvUsE0N29SwTQ3b1LBN
DdvUsE0N29SwTQ3b1LBNDdvUsE0N29SwTQ3b1LBNDdvUsE0N29SwTQ3b1LBNDdvUsE0N29SwTQ3b
1LBNDdvUsE0N29SwTQ3b1LBNDdvUsE0N29SwTQ3b1LBNDdvUsE0N29SwTQ3b1LBNDdvUsE0N29Sw
TQ3b1LBNDdvUsE0N29SwTQ3b1LBNDdvUsE0N29SwTQ3b1LBNDdvUsE0N29SwTQ3b1LBNDdvUX7NN
35Y9fJaRZxl5lpFnGXmWkWcZeZaRZxl5lpFnGXmWkWcZeZaRZxl5lpFnGXmWkWcZeZaRZxl5lpFn
GXmWkWcZeZaRZxl5lpHf8WXkt/oFLl9g/u5z1X/zBec//eb/+erzXzz75feeXvd69uiuB/F4P36Q
6/k8uPfz9eDazx49f1kUM55f//G3t5W/9358+eLJZ+/9y5O37l89We89f/TWex9/+NZ7v3nym7f7
/evLF+9+8PGvH33ww09f/ucv3/7Fh7959JNff/TOTz/66Cef/eBXb//Xt3/9zk9/8dE7n/zn/tFP
P+p3fvr2R+8+vH729qfX0+c/+Z/z9mfv5ZO33vvk6Vvv/eKDeLeevPWzF//9xQ8/+fn7P/r8w/d/
/OL5ew+/96or3v/xm68+/vyXP3nyxYt/+urP+Nz1u/LL9lf/Uvd356lf/nHgD+zwB3b4Azv8gR3+
wA5/YDd/YDd/YDd/YDf/ktm8efPmzZs3b968efPmmzffvPnmzTdvvnnzzZtv3nzz5ps3UwIvSuBF
CbwogRcl8KIEXpTAixJ4UQIvSuBFCbwogRcl8KIEXpTAixJ4UQIvSuBFCbwogRcl8KIEXpTAixJ4
UQIvSuBFCbwogRcl8KIEXpTAixJ4UQIvSuBFCbwogRcl8KIEXpTAixJ4UQIvSuBFCbwogRcl8KIE
XpTAixJ4UQIvSuBFCbwogRcl8KIEXpTAixJ4UQIvSuBFCbwogRcl8KIEXpTAixJ4UQIvSuBFCbwo
gRcl8KIEXpTAixJ4UQIvSuA1vJkcvMjBixy8yMGLHLzIwYscvMjBixy8yMGLHLzIwYscvMjBixy8
yMGLHLzIwYscvMjBixy8yMGLHLzIwYscvMjBRQ4ucnCRg4scXOTgIgcXObjIwUUOLnJwkYOLHFzk
4CIHFzm4yMFFDi5ycJGDixxc5OAiBxc5uMjBRQ4ucnCRg4scXOTgIgcXObjIwUUOLnJwkYOLHFzk
4CIHFzm4yMFFDi5ycJGDixxcpN4i9Rapt8i4RcYtMm6RcYuMW2TcIuMWGbfIuEXGLTJukXGLjFtk
3CLjFhm3yLhFxi0ybpFxi4yDEGoIoYYQagihhhBqCKGGEGoIoYYQagihhhBqCKGGEGoIoYYQagih
hhBqCKGGEGoIoYYQagihhhBqCKGGEGoIoYYQagihhhBqCKGGEGoIoYYQagihhhBqCKGGEGoIoYYQ
agihhhBqCKGGEGoIoQYMasCgBgxqwKAGDGrAoAYMasCgBgxqwKAGDGrAoAYMasCgBgxqwKAGDGp4
oIYHanighgdqeKCGB2p4oIYHanighgdqeKCGB2p4oIYHanighgdqeKCGB2p4oIYHanighgdqeKCG
B2p4oIYHanighgdqeKCGB2p4oJc/4c1kHGBQAwY1YFADBjVgUAMGNTxQwwM1PFDDAzU8UMMDNTxQ
wwM1PFDDAzU8UMMDNTxQwwM1PFDDAzU8UMMDNTxQwwM1PFDDAzU8UMMDNTxQwwM1PFDDAzU8UMMD
NTxQwwM1PFDDAzU8UMMDNTxQwwM1PFDDAzU8UMMDNTxQwwM1PFDDAzU8UMMDNTxQwwM1PFDDAzU8
UMMDNTxQwwM1PFDDAzU8UMMDNTxQwwM1PFDDAzU8UMMDNTxQwwM1GFCDATUYUIMBNRhQgwE1GFCD
ATUYUIMBNRhQgwE19E9D/zT0T0P/NPRPQ/809E9D/zT0T0P/NPRPQ/809E9D/zT0T0P/NPRPQ/80
9E8D/TTQTwP9NNBPA/000E9/Df18W1buWUaeZeRZRp5l5FlGnmXkWUaeZeRZRp5l5FlGnmXkWUae
ZeRZRp5l5FlGnmXkWUaeZeRZRp5l5FlGnmXkWUaeZeRZRn7Hl5F/G1/q/n+/evbFb7786tFXz/7j
q399+oZ8LvuN3v7avln9E7/y3fvxinz89EE9r3yQjyse7Ke5Hzy8nz59uK79+OU0902+8r3++fGL
337l+4uPfvrZvb7+yvejP/Ur3189jnef/3z94JOX/6xfvP3L6+kb9YH039Yv3fkNd37D/Z39huNf
zK/yC/hn490vc5cewNyYzI3J3JjMjcncmMyNydyYzI3J3JjMjcncmMyNydyYzI3J3JjMjcncWMyN
xdxYzI3F3FjMjcXcWMyNxdxYzI3F3FjMjcXcWMyNxdxYzI3F3FjMjcXcWMyNxdxYzI3F3FjMjcXc
WMyNxdxYzI3F3FjMjcXcWMyNxdxYzI3F3FjMjcXcWMyNxdxYzI3F3FjMjcXflhaTZDFJFpNkMUkW
k2QxSRaTZDFJFpNkMUkWk2QxSRZ/W1pMksUkWUySxSRZTJLFJFlMksUkWUySxSRZTJLFJFlMksUk
WUySxSRZTJLFJFn8bWkxWxazZTFbFrNlMVsWs2Xxt6VF6hWpV6RekXpF6hWpV6RekXpF6hWpV6Re
kXpF6hWpV6RekXpF6hWp16Rek3pN6jWp16Rek3pN6jWp16Rek3pN6jWp16Rek3pN6jWp16Rek3pN
6jWp16Rek3pNojWJ1iRak2hNojWJ1iRak2hNojWJ1iRak2hNojWJ1iRak2hNojWJ1iRak2hNojWJ
1iRak2hNojWJ1iRak2hNojWJ1iRa87elTcY1GddkXJNxTcY1GddkXJNxTcY1GddkXJNxTcY1Gddk
XJNxqGKNKtaoYo0q1qhijSrWqGKNKtaoYo0q1qhijSrWqGKNKtaoYo0q1qhijSHWGGKNIdYYYo0h
1hhijSHWGGKNIdaIYY0Y1ohhjRjWiGGNGNaIYY0Y1ohhjRjWiGGNGNaIYY0Y1ohhjRjWiGGNGNaI
YY0Y1ohhjRjWiGGNGNaIYY0Y1ohhjRjWiGGNGNaIYY0Y1ohhjRjWiGGNGNaIYY0Y1ohhjRjWiGGN
GNaIYY0Y1ohhjRjWiGGNGNaIYY0Y1ohhjRjWiGGNGNaIYY0Y1ohhjRjW+GCND9b4YI0P1vhgjQ/W
+GCND9b4YI0P1vhgjQ/W+GCND9b4YI0P1vhgjQ/W+GCND9b4YI0P1vhgjQ/W+GCND9b4YI0P1vhg
jQ/W+GCND9b4YI0P1vhgjQ/W+GCND9b4YI0P1mhgjQbWaGCNBtZoYI0G1mhgjQbWaGCNBtZoYI0G
1mhgjf3V2F+N/dXYX4391dhfjf3V2F+N/dXYX4391dhfjf3V2F+N/dXYX4391dhfjf3V2F+N/dXY
X4391dhfjf3V2F+N/dXYX4391dhfjf3V2F+N/dXYX4391dhfjf3V2F+N/dXYX4391dhfjf3V2F+N
/dXYX4391dhfjf3V2F+N/dXYX4391dhfjf3V2F+N/dXYX4391dhfjf3V2F+N/dXYX4391dhfjf3V
2F+N/dXYX4391dhfjf3V2F+N9NVfS1+vZY/851wTeL1L1Nex+/0TyPKzgj0r2LOCPSvYs4I9K9iz
gj0r2LOCPSvYs4I9K9izgj0r2LOCPSvYs4I9K9izgj0r2LOCPSvYs4I9K9izgj0r2LOC/Y6vYP+W
yPLH13r28Nl6/ODxfd0P8kk/eXBfz+JBPI969jJYr6f96Bt86fvp008//P7XX/q++9Z7n3wnP5L+
2/qle1O+yj+/4c5vuG/rq/xX+QV8U0+9vMrbX9sv+SuIIJvRbTO6bUa3zei2Gd02o9tmdNuObizc
boa5m2HuZpi7GeZuhrmbYe5mmLsZ5m6GuZth7maYuxnmboa5m7+wvBnvboa5m2HuZpi7GeZuhrmb
Ye5mmLsZ5m6GuZth7maYuxnmboa5m2HuZpi7GeZuhrmbYe5mmLsZ5m6GuZth7maYuxnmboa5m2Hu
Zpi7GeZuhrmbYe5mmLsZ5m6GuZth7maYuxnmboa5m2HuZpi7GeZuhrmbYe5mmLsZ5m6GuZth7maY
uxnmboa5m2HuZpi7GeZuhrmbYe5mmLsZ5m6GuZth7maYuxnmboa5m2HuZpi7GeZuhrmbYe5mmLsZ
5m6GuZth7maYuxnmbv7C8ma8u/kLy5vUu0m9m9S7Sb2b1LtJvZvUu0m9+/dTbx7+fuq9/MnFTxY/
CX6S/KT4SfOT4Sebn/DmizdfvPnizRdvvnjzxZsv3nzx5os3X7x58ebFmxdvXrx58ebFmxdvXrx5
8ebFm4M3B28O3hy8OXhz8ObgzcGbgzcHb07enLw5eXPy5uTNyZuTNydvTt6cvLl4c/Hm4s3Fm4s3
F28u3ly8uXhz8ebmzc2bmzc3b27e3Ly5eXPz5ubNzZuHNw9vHt48vHl48/Dm4c3Dm4c3D2/evHnz
5s2bN2/evHnz5s2bN2/evHnz5ps337z55s03b755882bb9588+abN5OD6IaDbjjohoNuOOiGg244
6IaDbjjohoNuOOiGg2446IaDbjjohoNuOOiGg2446IaDbjjohoNuOOiGg2446IaDbjjohoNuOOiG
g2446IaDbjjohoNuOOiGg2446IaDbjjohoNuOOiGg2446IaDbjjohoNuOOiGg2446IaDbjjohoNu
OOiGg2446IaDbjjohoNuOOiGg2446IaDbjjohoNuOOiGg2446IaDbjjohoNuOOiGg2446IaDbjjo
hoNuOOiGg2446IaDbjjohoNuOOiGg2446IaDbjjohoNuOOiGg2446IaDbjjohoNuOOiGg2446IaD
bjjohoNuOOiGg2446IaDbjjohoNuOOiGg2446IaDbjjohoNuOOiGg2446IaDbjjohoNuOOiGg244
6IaDbjjohoNuOOiGg2446IaDbjjohoNuOOiGg2446IaDbjjohoNuOOiGg2446IaDbjjohoNuOOiG
g2748ie8mRzEOxy8w5c/4c3kIALiICAOAuIgIA4C4iAgDgLiICAOAuIgIA4C4iAgDgLiICAOAuIg
IA4C4iAgDgLiICAOAuIgIA4C4iAgDgLiICAOAuIgIA4C4iAgDgLiICAOAuIgIA4C4iAgDgLiICAO
AuIgIA4C4nwtIL6egwJnGXmWkWcZeZaRZxl5lpFnGXmWkWcZeZaRZxl5lpFnGXmWkWcZeZaRZxl5
lpFnGXmWkWcZeZaRZxl5lpFnGXmWkWcZ+Xe/jPxb+ir/up89fDz98MF6/Px+kLMePXg08fI/Pol8
/OxRPrwf5zf40veT//zig/eu+7/9w5cvPnz58w/f/9HDD99/9/nTf/j01x/+5O1++7P656c/uD/5
+fs/+vzD93/84vl7D7/3Rn0A/eb8srwpX9Of3yjnN8qf+iX5q/zivKlfwb/K29+UP5uP4q6nz+96
sO5n6+Vbr+cPHr2sFw/65ez2cO6Hjx/f96v9Jvzxv55V+NlXP173r57+ww//+fH3X/5m/Oz6+Nn3
r48/XD+73/mXn//6ne//8OkHHzz88tlvfvjps3/4L5/+PN799MMf3A+fffBfPn37k89fvNpVi1dk
L15GKqHPILkYJBeD5GKQXAySi0FyMUgGg2QwSAaDZDBIBoNkMEgGg2QwSAaDZDBIBoNkMEgGg2Qw
SAaDZDBIBoNkMEgGg2QwSAaDZDBIBoNkMEgGg2QwSAaDZDBIBoNkMEgGg2QwSAaDZDBIBoNkMEgG
g2QwSAaDZDBIBoNkMEgGg2QwSAaDZDBIBoNkMEgGg2QwSAaDZDBIBoNkMEgGg2QwSAaDZDBIBoNk
MEgGg2QwSAaDZDBIBoNkMEgGg2QwSAaDZDBIBoNkMEgGg2QwSAaDZDBIBoNkMEgGg2QwSAaDZDBI
BoNkMEgGg2QwSAaDZDBIBoNkMEgGg2TwF6pBDgY5GORgkINBDgY5GORgkINJDiY5mORgkoNJDiY5
mORgkoNJDiY5mORgkoNJDiY5mORgkoNJDiY5mORgkoNJDiY5mORgkoNJDiY5mORgkoNJDiY5mORg
koNJDiY5mORgkoNJDiY5mORgkoNJDiY5mORgkoNJDiY5mORgkoNJDiY5mORgkoNJDiY5mORgkoNJ
DiY5mORgkoNJDiY5mORgkoNJDiY5mORgkoNJDiY5mORgkoNJDiY5mORgkoNJDiY5mORgkoNJDiY5
CCk4kIIDKTiQggMpOJCCAyk4kIIDKTiQggMpOJCCAyk4kIIDKTiQggMpOJCCAyk4kIIDKTiQggMp
OJCCAyk4kIIDKTiQggMpOJCCAyk4kIIDKTiQggMpOJCCAyk4kIIDKTiQggMpOJCCAyk4kIIDKTiQ
ggMpOJCCAyk4kIIDKTiQggMpOJCCAyk4kIIDKTiQggMpOJCCAyk4kIIDKTiQggMpOJCCAyk4kIID
KTiQggMpOJCCAyn48ie8mRwEGRyQwQEZHJDBARkckMEBGRyQwQEZHJDBARkckMEBGRyQwQEZHJDB
ARkckMEBGRyQwQEZHJDBARkckMEBGRyQwQEZHJDBARkckMEBGRyQwQEZHJDBARkckMEBGRyQwQEZ
HEjBgRQcSMGBFBxIwQEQHADBARAcAMEBEBwAwQEQHADBARAcAMEBEBwAwQEQHADBARAcAMEBEBwA
wQEQfPkT3kzGgQwOyOCADA7I4IAMDsjggAwOyOCADA7I4IAMDsjggAwOyOCADA7I4IAMDqTgQAoO
pOBACg6k4EAKDqTgQAoOpOBACg6k4EAKDqTgQAoOpOBACg6k4EAKDqTgQAoOpOBACg6k4EAKDqTg
QAoOpOBACg6k4EAKDqTgQAoOpOBACg6k4EAKDqTgQAoOpOBACg6k4EAKDqTgQAoOpOBACg6k4Muf
8GYSDWRwQAYHZHC+RgZfy874dRwKOHvMs8c8e8yzxzx7zLPHPHvMs8c8e8yzxzx7zLPHPHvMs8c8
e8yzxzx7zLPHPHvMs8c8e8yzxzx7zLPHPHvMs8c8e8y/mz3mt3Uo4Jt+7Pzmfmf6Bn78/Cq/WG/q
x8+v8vY35ePn6We568mTByvr8YPcMw8eTT17cNX16HE/e9zP7+sv9Jvyj/yGfPzZ/fCD9aOPf74+
/vTD7//w/uDH33uzjhW82b9U5zfUn/cb6hXJipfZQzryd4jNNNVMU800NUxTwzQ1/B3iMF8N89Uw
Xw3z1TBfDfPVMF8N89UwXw3z1TBfDfPVMF8N89UwXw3z1TBfDfPVMF8N89UwXw3z1TBfDfPVMF8N
89UwXw3z1TBfDfPVMF8N89UwXw3z1TBfDfPVMF8N89Xwd4jDxDVMXMPENUxcw8Q1TFzDxDVMXMPE
NUxcw8Q1TFzDxDVMXMPENUxcw8Q1TFzDxDVMXMPENUxcw8Q1TFzDxDVMXMPENUxcw8Q1TFzDxDVM
XMPENUxcw8Q1TFzDxDVMXMPENUxcw8Q1TFzDxDVMXMPENUxcw8Q1TFzDxDVMXMPENUxcw98hDjk4
5OCQg0MODjm4ycFNDm5ycJODmxzc5OAmBzc5uMnBTQ5ucnCTg5sc3OTgJgc3ObjJwU0ObnJwk4Ob
HNzk4CYHNzm4ycFNDm5ycJODmxzc5OAmBzc5uMnBTQ5ucnCTg5sc3OTgJgc3ObjJwU0ObnJwk4Ob
HNzk4CYHNzm4ycFNDm5ycJODmxzc5OAmBzc5uMnBTQ5ucnCTg5sc3OTgJgc3ObjJwU0ObnJwk4Ob
HNzk4CYHNzm4ycFNDm5ycJODmxzc5OAmBzc5uMnBTQ5ucnCTg5sc3OTgJgc3ObjJwU0ObnIQenCg
Bwd6cKAHB3pwoAcHenCgBwd6cKAHB3pwoAcHenCgBwd6cKAHB3pwoAcHenCgBwd6cKAHB3pwoAdf
/oQ3k4NghANGOGCEA0Y4YIQDRjhghANGOGCEA0Y4YIQDRjhghANGOGCEA0Y4YIQDRjhghANGOGCE
A0Y4YIQDRjhghANGOGCEA0Y4YIQDRjhghANGOGCEA0Y4YIQDRjhghANGOGCEA0Y4YIQDRjhghANG
OGCEA0Y4YIQDRjhghANGOGCEA0Y4YIQDRjhghANGOGCEA0Y4YIQDRjhghANGOGCEA0Y4YIQDRjhg
hANGOGCEA0Y4YIQDRjhghANGOGCEA0Y4YIQDRjhghANGOGCEA0Y4YIQbjHCDEW4wwg1GuMEINxjh
BiPcYIQbjHCDEW4wwg1GuMEINxjhBiPcYIQbjHCDEW4wwg1GuMEINxjhBiPcYIQbjHCDEW4wwg1G
uMEINxjhBiPcYIQbjHCDEW4wwg1GuMEINxjhBiPcYIQbjHCDEW4wwg1GuMEINxjhBiPcYIQbjHCD
EW4wwg1GuMEINxjhBiPcYIQbjHCDEW4wwg1GuMEINxjhBiPcYIQbjHCDEW4wwg1GuMEINxjhBiPc
YIQbjHCDEW4wwg1GuMEINxjhBiPcYIQbjHCDEW4wwg1GuMEINxjhBiPcYIQbjHCDEW4wwg1GuMEI
Nxjhfvi39UX92WOePebZY5495tljnj3m2WOePebZY5495tljnj3m2WOePebZY5495tljnj3m2WOe
PebZY5495tljnj3m2WOePebZY/7d7DH/1r6oP1/k/olfpr/KL9ib+lX9q7z9TfkI+kk/fPSknz55
0I/3/SDvR9eDRw/jyYOH63Fd8bzzec5f9tTDf/vBly/e/eDjXz/64Iefvvzvfvn2p09f/kb89Ufv
/PQXH7371nufvP1f3/71Oz/96OV//qjf+en/2+/8y9sfvfvw+tnbn15Pn//kf87bn72XT17+v3v6
1nu/+CDerSdv/ezFf3/xw09+/v6PPv/w/R+/eP7ewzfra/zv5i/xG/jvjFf5hX5T/53xKm9/bb/k
f5y1eBm7FIObYnBTDG6KAcPmxbB5MWxeDJsXw+bFsHkxbF4MmxfD5sWweTFsXgybF8PmxbB5MWxe
DJsXw+bFsHkxbF4MmxfD5sWweTFsXgybF8PmxbB5MWxeDJsXw+bFsHkxbF4MmxfD5sWweTFsXgyb
F8PmxbB5MWxeDJsXw+bFsHkxbF4MmxfD5sWweTFsXgybF8PmxbB5MWxeDJsXw+bFsHkxbF4MmxfD
5sWweTFsXgybF8PmxbB5MWxeDJsXw+bFsHkxbF4MmxfD5sWweTFsXgybF8PmxbB5MVpejJYXo+XF
aHkxWl6Mlhej5cVoeTFaXoyWF6PlxWh5MVpejJYXo+XFaHkxWl6Mlhej5cVoed28mdS7SL2L1LtI
vYvUW6TeIvUWqbdIvUXqLTJukXGLjFtk3CLjFhm3yLhFxi0ybpFxi4xbZNwi4xYZt8i4RcYtMm6R
cYuMW2TcIuMWGbfIuEXGLTJukXGLjFtk3CLjFhm3yLhFxi0ybpFxi4xbZNwi4xYZt8i4RcYtMm6R
cYuMW2TcIuMWGbfIuEXGLTJukXGLjFtk3CLjFhm3yLhFxi0ybpFxi4xbZNwi4xYZt8i4RcYtMm6R
cYuMW/yF6iL1Fqm3SL1F6i1Sb5F6i9RbpN4i9Rapt0i9ReotUm+ReovUW6TeIvUWqQdGuMEINxjh
BiPcYIQbjHCDEW4wwg1GuMEINxjhBiPc0IMbenBDD27owQ09uKEHN/Tghh7c0IMbenBDD27owQ09
uKEHN/Tghh7c0IMbenBDD27owQ09uKEHN/Tghh7c0IMbenBDD27owQ09uKEHN/Tghh7c0IMbenBD
D27owQ09uKEHN/Tghh7c0IMbenBDD26gwQ00uIEGN9DgBhrcQIMbaHADDf7/7N1LdxNZsrj9r9KT
96x3kl2KiH2JGPQ6q6vKdsEqm8L4hidn6QrGNtDYFJhP/09RV3gaEMbGCexJd5e6wGEpM3/a2pIe
R2jQERp0hAYdoUFHaNARGnSEBh2hQUdo0BEadIQGHaFBR2jQERp0hAYdoUFHaNARGnSEBh2hQUdo
0BEadIQGHaFBR2jQERp0hAYdoUFHaNARGnSEBh2hQUdo0BEadIQGHaFBR2jQERp0hAYdoUFHaNAR
GnSEBh2hQUdo0BEadIQGHaFBR2jQERp0hAYdoUFHaNARGnSEBh2hQUdo0BEadIQGHaFBR2jQERp0
hAYdoUFHaNARGnSEBh2hQUdo0BEadIQGHaFBR2jQERp0hAYdoUFHaNARGnSEBh2hQUdo0BEadIQG
HaFBR2jQERp0hAYdoUFHaNARGnSEBh2hQUdo0BEadIQGHaFBR2jQERp0hAYdoUFHaNARGnSEBh2h
QUdo0BEadIQGHaFBR2jQERp0hAYdoUFHaNARGnSEBh2hQUdo0BEadIQGHaFBR2jQERp0hAYdoUFH
aNARGnSEBh2hQUdo0BEadIQGHaFBR2jQERp0hAYdoUFHaNARGnSEBh2hQUdo0H8LDX7ebwRom5Ft
M7JtRrbNyLYZ2TYj22Zk24xsm5FtM7JtRrbNyLYZ2TYj22Zk24xsm5FtM7JtRrbNyLYZ2TYj22Zk
24xsm5FtM7JtRn4zm5E39Y0Al/lEsIwmE61j7cZpKl2ajyZd1HnuZiKlTEf9glL1mj8R/OjfRwd7
Ej//dHZ02N9+uL81OtzfXsx+OnlxeO9WuXU64Lz5l3f3DfDD0qvciUP9sPQqsw/lCxZiMrPRZBRd
v2QedWmWx52XlLtxnk7rbCbzRUlX980fK3/y/9Fm2frxbtnaWemT/88ntr24//rn7x3feiyzQV0P
vs67+LN/2v+v5EZP6tvoZywkMxaSGQvJjIVkxkIyYyGZsZDMWEhmLCQzFpIZC8mMhWTGQjJjIZmx
kMxYSGYsJDMWkhkLyYyFZMZCMmMhmbGQzFhIZiwkMxaSGQvJjIVkxkIyYyGZsZDMWEhmLCQzFpIZ
C8mMhWTGQjJjIZmxkMxYSGYsJDMWkhkLyYyFZMZCMmMhmbGQzFhIZiwkMxaSGQvJjIVkxkIyYyGZ
sZDMWEhmLCQzFpIZC8mMhWTGQjJjIZmxkMxYSGYsJDMWkhkLyYyFZMZCMmMhmbGQzFhIZiwkMxaS
GQvJjIVkxkIyYyGZsZDMWEhmLCQzFpIZC8mMhWTGQjJjIZmxkMxYSGYsJDMWkhkLyYyFZMZCMmMh
mbGQzFhIZiwkMxaSGS+oZjhY4GCBgwUOFjhY4GCBgwUOFjhY4GCBgwUOFjhY4GCBgwUOFjhY4GCB
gwUOFjhY4GCBgwUOFjhY4GCBgwUOFjhY4GCBgwUOFjhY4GCBgwUOFjhY4GCBgwUOFjhY4GCBgwUO
FjhY4GCBgwUOFjhY4GCBgwUOFjhY4GCBgwUOFjhY4GCBgwUOFjhY4GCBgwUOFjhY4GCBgwUOFjhY
4GCBgwUOFjhY4GCBgwUOFjhY4GCBgwUOFjhY4GCBgwUOFjhY4GCBgwUOFjhY4GCBgwUOFjhY4GCB
gwUOIp3oSCc60omOdKIjnehIJzrSiY50oiOd6EgnOtKJjnSiI53oSCc60omOdKIjnehIJzrSiY50
oiOd6EgnOtKJjnSiI53oSCc60omOdKIjnehIJzrSiY50oiOd6EgnOtKJjnSiI53oSCc60omOdKIj
nehIJzrSiY50oiOd6EgnOtKJjnSiI53oSCc60omOdKIjnehIJzrSiY50oiOd6EgnOtKJjnSiI53o
SCc60omOdKIjnehIJzrSiY50oiOd6EgnOtKJjnSiI53oSCc60omOdKIjnehIJzrSiY50oiOd6Egn
OtKJjnSiI53oSCc60omOdKIjnehIJzrSiY50oiOd6EgnOtKJjnSiI53oSCc60omOdKIjnehIJzrS
iY50oiOd6EgnOtKJjnSiI53oSCc60omOdKIjnehIJzrSiY50oiOd6EgnOtKJjnSiI53oSCc60omO
dKIjnehIJzrSiY50oiOd6EgnOtKJjnSiI53oSCc60omOdKIjnehIJzrSiY50oiOd6EgnOtKJjnSi
I53oSCc60omOdKIjnehIJzrSiY50oiOd6EgnOtKJjnSiI53oSCc60omOdKIjnehIJzrSiY50oiOd
6EgnOtKJjnSiI53oSCc60omOdKIjnehIJzrSiY50oiOd6EgnOtKJjnSiI53oSCc60omOdKIjnehI
JzrSiY50oiOd6EgnOtKJjnSiI53oSCc60omOdKIjnehIJzrSiY50oiOd6EgnOtKJ7h/4tH/bs/3Y
bfGVvhHhKnbS215v2+tte71tr7ft9ba93rbX2/Z6215v2+tte71tr7ft9ba93rbX2/Z6215v2+tt
e71tr7ft9ba93rbX2/Z6215v2+tte73f/F7vTX2ZQvsE8Gf5BPDlP3m/yh091G8NWGX2oXxrwKhM
FtNZLt1iNJt2aRSTzsfTcSe+6J9zTmZlnqdXdEDfe/FgeiHn9w8evvGVFwf3XhxNN9Zl+Xfe3z8c
HR7cOrrzePtitr/3nq+9yL/O1uPR/f2tJ4f7d48We6NhfXPI13O3fvZvB/hbfsOxMgqsjAIro8DK
KLAyCqyMAiujwMoosDIKrIwCK6PAyiiwMgqsjAIro8DKKLAyCqyMAiujwMoosDIKrIwCK6PAyiiw
MgqsjAIro8DKKLAyCqyMAiujwMoosDIKrIwCK6PAyiiwMgqsjAIro8DKKLAyCqyMAiujwMoosDIK
rIwCK6PAyiiwMgqsjAIro8DKKLAyCqyMAiujwMoosDIKrIwCK6PAyiiwMgqsjAIro8DKKLAyCqyM
AiujwMoosDIKrIwCK6PAyiiwMgqsjAIro8DKKLAyCqyMAiujwMoosDIKrIwCK6PAyiiwMgqsjAIr
o8DKKLAyCqyMAiujwMoosDIKrIwCK6PAyiiwMgqsjAIro8ArhPG2gz2DI9wiuEVxi+GWhFsybim4
peIWxy2YWTCzYGbBzIKZBTMLZhbMLJhZMLNgZsXMipkVMytmVsysmFkxs2JmxcyKmQ0zG2Y2zGyY
2TCzYWbDzIaZDTMbZk6YOWHmhJkTZk6YOWHmhJkTZk6YOWHmjJkzZs6YOWPmjJkzZs6YOWPmjJkz
Zi6YuWDmgpkLZi6YuWDmgpkLZi6YuWDmipkrZq6YuWLmipkrZq6YuWLmipkrZnbM7JjZMbNjZsfM
jpkdMztmdszsmDkwc2DmwMyBmQMzB2YOzByYOTAzHERGMZBRDGQUAxnFQEYxkFEMZBQDGcVARjGQ
UQxkFAMZxUBGMZBRDGQUAxnFQEYxkFEMZBQDGcVARjGQUQxkFAMZxUBGMZBRDGQUAxnFQEYxkFEM
ZBQDGcVARjGQUQxkFAMZxUBGMZBRDGQUAxnFQEYxkFEMZBQDGcVARjGQUQxkFAMZxUBGMZBRDGQU
AxnFQEYxkFEMZBQDGcVARjGQUQxkFAMZxUBGMZBRDGQUAxnFQEYxkFEMZBQDGcVARjGQUQxkFAMZ
xUBGsb8FM8NBhBUDYcVAWDEQVgyEFQNhxUBYMRBWDIQVA2HFQFgxEFYMhBUDYcVAWDEQVgyEFQNh
xUBYMRBWDIQVA2HFQFgxEFYMhBUDYcVAWDEQVgyEFQNhxf6WjFsKbqm4xXELZoaDSC0GUouB1GIg
tRhILQZSi4HUYiC1GEgtBlKLgdRiILUYSC0GUouB1GIgtRhILQZSi4HUYiC1GEgtBlKLgdRiILUY
SC0GUouB1GIgtRhILQZSi4HUYiC1GEgtBlKLgdRiILUYSC0GUouB1GIgtRhILQZSi4HUYiC1GEgt
BlKLgdRiILUYSC0GUouB1GIgtRhILQZSi4HUYiC1GEgtBlKLgdRiILUYSC0GUouB1GIgtRhILQZS
i4HUYiC1GEgtBlKLgdRiILUYSC0GUouB1GIgtRhILQZSi4HUYiC1GEgtBlKLgdRiILUYSC0GUouB
1GLoB74d4BKffP/gx9fbZmTbjGybkW0zsm1Gts3IthnZNiPbZmTbjGybkW0zsm1Gts3IthnZNiPb
ZmTbjGybkW0zsm1Gts3IthnZNiPbZmTbjGybkd/MZuRNfXx9xa/c7qd8+3402Gyw2WCzwWaDzQab
DTYbbDbYbLDZYLPBZoPNBpsNNhtsNthssNlgs8Fmg80Gmw02G2w22Gyw2WCzwWaDzQabDTYbbDbY
bLDZYLPBZoPNBpsNNhtsNthssNlgs8Fmg80Gmw02G2w22Gyw2WCzwWaDzQabDTYbbDbYbLDZYLPB
ZoPNBpsNNhtsNthssNlgs8Fmg80Gmw02G2w22Gyw2WCzwWaDzQabDTYbbDbYbLDZYLPBZoPNBpsN
NhtsNthssNlgs8Fmg80Gmw02G2w22Gyw2bBGNTiY4GCCgwkOJjiY4GCCgwkOJjiY4GCCgwkOJjiY
4GCCgwkOJjiY4GCCgwkOJjiY4GCCgwkOJjiY4GCCgwkOJjiY4GCCgwkOJjiY4GCCgwkOJjiY4GCC
gwkOJjiY4GCCgwkOJjiY4GCCgwkOJjiY4GCCgwkOJjiY4GCCgwkOJjiY4GCCgwkOJjiY4GCCgwkO
JjiY4GCCgwkOJjiY4GCCgwkOJjiY4GCCgwkOJjiY4GCCgwkOJjiY4GCCgwkOJjiY4GCCgwkOJjiY
4GCCgwkOJjiY4GCCgwkOJjiY4GCCgwkOIsEUSDAFEkyBBFMgwRRIMAUSTIEEUyDBFEgwBRJMgQRT
IMEUSDAFEkyBBFMgwRRIMAUSTIEEUyDBFEgwBRJMgQRTIMEUSDAFEkyBBFMgwRRIMAUSTIEEUyDB
FEgwBRJMgQRTIMEUSDAFEkyBBFMgwRRIMAUSTIEEUyDBFEgwBRJMgQRTIMEUSDAFEkyBBFMgwRRI
MAUSTIEEUyDBFEgwBRJMgQRTIMEUSDAFEkyBBFMgwRRIMAUSTIEEUyDBFEgwBRJMgQRTIMEUSDAF
EkyBBFMgwRRIMAUSTIEEUyDBFEgwBRJMgQRTIMEUSDAFEkyBBFMgwRRIMAUSTIEEUyDBFEgwBRJM
gQRTIMEUSDAFEkyBBFMgwRRIMAUSTIEEUyDBFEgwBRJMgQRTIMEUSDAFEkyBBFMgwRRIMAUSTIEE
UyDBFEgwBRJMgQRTIMEUSDAFEkyBBFMgwRRIMAUSTIEEUyDBFEgwBRJMgQRTIMEUSDAFEkyBBFMg
wRRIMAUSTIEEUyDBFEgwBRJMgQRTIMEUSDAFEkyBBFMgwRRIMAUSTIEEUyDBFEgwBRJMgQRTIMEU
SDAFEkyBBFMgwRRIMAUSTIEEUyDBFEgwBRJMgQRTIMEUSDAFEkyBBFMgwRRIMAUSTIEEUyDBFEgw
BRJMgQRTIMEUSDAFEkyBBFMgwRRIMAUSTIEEUyDBFEgwBRJMgQRTIMEUSDAFEkyBBFMgwRRIMAUS
TFFu4AOUbTOybUa2zci2Gdk2I9tmZNuMbJuRbTOybUa2zci2Gdk2I9tmZNuMbJuRbTOybUa2zci2
Gdk2I9tmZNuMbJuRbTOybUa2zchvZjNykB+g/OtLX/sp374fK2yusLnC5gqbK2yusLnC5gqbK2yu
sLnC5gqbK2yusLnC5gqbK2yusLnC5gqbK2yusLnC5gqbK2yusLnC5gqbK2yusLnC5gqbK2yusLnC
5gqbK2yusLnC5gqbK2yusLnC5gqbK2yusLnC5gqbK2yusLnC5gqbK2yusLnC5gqbK2yusLnC5gqb
K2yusLnC5gqbK2yusLnC5gqbK2yusLnC5gqbK2yusLnC5gqbK2yusLnC5gqbK2yusLnC5gqbK2yu
sLnC5gqbK2yusLnC5gqbK2yusLnC5gqbK2yusLlijVrhoMNBh4MOBx0OOhx0OOhw0OGgw0GHgw4H
HQ46HHQ46HDQ4aDDQYeDDgcdDjocdDjocNDhoMNBh4MOBx0OOhx0OOhw0OGgw0GHgw4HHQ46HHQ4
6HDQ4aDDQYeDDgcdDjocdDjocNDhoMNBh4MOBx0OOhx0OOhw0OGgw0GHgw4HHQ46HHQ46HDQ4aDD
QYeDDgcdDjocdDjocNDhoMNBh4MOBx0OOhx0OOhw0OGgw0GHgw4HHQ46HHQ46HDQ4aDDQYeDDgcd
DjocdDjocNDhoMNBh4MOBxEBCURAAhGQQAQkEAEJREACEZBABCQQAQlEQAIRkEAEJBABCURAAhGQ
QAQkEAEJREACEZBABCQQAQlEQAIRkEAEJBABCURAAhGQQAQkEAEJREACEZBABCQQAQlEQAIRkEAE
JBABCURAAhGQQAQkEAEJREACEZBABCQQAQlEQAIRkEAEJBABCURAAhGQQAQkEAEJREACEZBABCQQ
AQlEQAIRkEAEJBABCURAAhGQQAQkEAEJREACEZBABCQQAQlEQAIRkEAEJBABCURAAhGQQAQkEAEJ
REACEZBABCQQAQlEQAIRkEAEJBABCURAAhGQQAQkEAEJREACEZBABCQQAQlEQAIRkEAEJBABCURA
AhGQQAQk3o6A1NHbEZDlLYJbFLcYbkm4JeOWglsqbnHcgpkFMwtmFswsmFkws2BmwcyCmQUzC2ZW
zKyYWTGzYmbFzIqZFTMrZlbMrJjZMLNhZsPMhpkNMxtmNsxsmNkws2HmhJkTZk6YOWHmhJkTZk6Y
OWHmhJkTZs6YOWPmjJkzZs6YOWPmjJkzZs6YOWPmgpkLZi6YuWDmgpkLZi6YuWDmgpkLZq6YuWLm
ipkrZq6YuWLmipkrZq6YuWJmx8yOmR0zO2Z2zOyY2TGzY2bHzI6ZAzMHZg7MHJg5MHNg5sDMgZlv
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
IIIIiCACIoiACCIgggiIIAIiiIAIIiCCCIggAiKIgAgiIIIIiCACIoiACCIgggiIIAIiiIAIIiCC
CIggAiKIgAgiIIIIiCACIoiACCIgggiIIAIiiIAIIiCCCIggAiKIgAgiIIIIiCACIoiACCIgggiI
IAIiiIAIIiCCCIggAiKIgAgiIIIIiCACIoiACCIgggiIIAIiiIAIIiCCCIggAiKIgAgiIIIIiCAC
IoiACCIgggiIIAIiiIAIIiCCCIggAiKIgAgiIIIIiCACIoiACCIgggiIIAIiiIAIIiCCCIggAiKI
gAgiIIIIiCACIoiACCIgggiIIAIiiIAIIiCCCIggAiKIgAgiIIIIiCACIoiACCIgggiIIAIiiIAI
IiCCCIggAiKIgAgiIIIIiCACIoiACCIgggiIIAIiiIAIIiCCCIggAiKIgAgiIIIIiCACIoiACCIg
ggiIIAIiiIAIIiCCCIggAiKIgAgiIIIIiCACIoiACCIgggiIIAIiiIAIIiCCCIggAiKIgAgiIIII
iCACIuVGC5RtM7JtRrbNyLYZ2TYj22Zk24xsm5FtM7JtRrbNyLYZ2TYj22Zk24xsm5FtM7JtRrbN
yLYZ2TYj22Zk24xsm5FtM7JtRrbNyK98M3LgBUqpsLnC5gqbK2yusLnC5gqbK2yusLnC5gqbK2yu
sLnC5gqbK2yusLnC5gqbK2yusLnC5gqbK2yusLnC5gqbK2yusLnC5gqbK2yusLnC5gqbK2yusLnC
5gqbK2yusLnC5gqbK2yusLnC5gqbK2yusLnC5gqbK2yusLnC5gqbK2yusLnC5gqbK2yusLnC5gqb
K2yusLnC5gqbK2yusLnC5gqbK2yusLnC5gqbK2yusLnC5gqbK2yusLnC5gqbK2yusLnC5gqbK2yu
sLnC5gqbK2yusLnC5gqbK2yusLnC5gqbK9aoDgcdDjocdDjocNDhoMNBh4MOBx0OOhx0OOhw0OGg
w0GHgw4HHQ46HHQ46HDQ4aDDQYeDDgcdDjocdDjocNDhoMNBh4MOBx0OOhx0OOhw0OGgw0GHgw4H
HQ46HHQ46HDQ4aDDQYeDDgcdDjocdDjocNDhoMNBh4MOBx0OOhx0OOhw0OGgw0GHgw4HHQ46HHQ4
6HDQ4aDDQYeDDgcdDjocdDjocNDhoMNBh4MOBx0OOhx0OOhw0OGgw0GHgw4HHQ46HHQ46HDQ4aDD
QYeDDgcdDjocdDiICIggAiKIgAgiIIIIiCACIoiACCIgggiIIAIiiIAIIiCCCIggAiKIgAgiIIII
iCACIoiACCIgggiIIAIiiIAIIiCCCIggAiKIgAgiIIIIiCACIoiACCIgggiIIAIiiIAIIiCCCIgg
AiKIgAgiIIIIiCACIoiACCIgggiIIAIiiIAIIiCCCIggAiKIgAgiIIIIiCACIoiACCIgggiIIAIi
iIAIIiCCCIggAiKIgAgiIIIIiCACIoiACCIgggiIIAIiiIAIIiCCCIggAiKIgAgiIIIIiCACIoiA
CCIgggiIIAIiiIAIIiCCCIggAiKIgAgiIIIIiCACIoiACCIgggiIIAIiiIAIIiCCCIggAiKIgAgi
IIoIiCICooiAKCIgigiIIgKiiIAoIiCKCIgiAqKIgCgiIIoIiCICooiAKCIgigiIIgKiiIAoIiCK
CIgiAqKIgCgiIIoIiCICooiAKCIgigiIIgKiiIAoIiCKCIgiAqKIgCgiIIoIiCICooiAKCIgigiI
IgKiiIAoIiCKCIgiAqKIgCgiIIoIiCICooiAKCIgigiIIgKiiIAoIiCKCIgiAqKIgCgiIIoIiCIC
ooiAKCIgigiIIgKiiIAoIiCKCIgiAqKIgCgiIIoIiCICooiAKCIgigiIIgKiiIAoIiCKCIgiAqKI
gCgiIIoIiCICooiAKCIgigiIIgKiiIAoIiCKCIgiAqKIgCgiIIoIiCICooiA6OhGC5RtM7JtRrbN
yLYZ2TYj22Zk24xsm5FtM7JtRrbNyLYZ2TYj22Zk24xsm5FtM7JtRrbNyLYZ2TYj22Zk24xsm5Ft
M7JtRrbNyK98M3LgBUoV2CywWWCzwGaBzQKbBTYLbBbYLLBZYLPAZoHNApsFNgtsFtgssFlgs8Bm
gc0CmwU2C2wW2CywWWCzwGaBzQKbBTYLbBbYLLBZYLPAZoHNApsFNgtsFtgssFlgs8Bmgc0CmwU2
C2wW2CywWWCzwGaBzQKbBTYLbBbYLLBZYLPAZoHNApsFNgtsFtgssFlgs8Bmgc0CmwU2C2wW2Cyw
WWCzwGaBzQKbBTYLbBbYLLBZYLPAZoHNApsFNgtsFtgssFlgs8Bmgc0CmwU2C2wW2CywWWCzYI2q
cFDhoMJBhYMKBxUOKhxUOKhwUOGgwkGFgwoHFQ4qHFQ4qHBQ4aDCQYWDCgcVDiocVDiocFDhoMJB
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
/DAkPwzJD0Pyw5D8MCQ/DMkPQ/LDkPwwJD8MyQ9D8sOQ/DAkPwzJD0Pyw5D8MCQ/DMkPQ/LDkPww
JD8MyQ9D8sOQ/DAkPwzJD0Pyw5D8MCQ/DMkPQ/LDkPwwJD8MyQ9D8sOQ/DAkPwzJD0Pyw5D8MCQ/
zG62QNk2I9tmZNuMbJuRbTOybUa2zci2Gdk2I9tmZNuMbJuRbTOybUa2zci2Gdk2I9tmZNuMbJuR
bTOybUa2zci2Gdk2I9tmZNuM/Lo3IwdeoOynFMytuMVwS8ItGbcU3FJxi+MW3I+w2WCzwWaDzQab
DTYbbDbYbLDZYLPBZoPNBpsNNhtsNthssNlgs8Fmg80Gmw02G2w22Gyw2WCzwWaDzQabDTYbbDbY
bLDZYLPBZoPNBpsNNhtsNthssNlgs8Fmg80Gmw02G2w22Gyw2WCzwWaDzQabDTYbbDbYbLDZYLPB
ZoPNBpsNNhtsNthssNlgs8Fmg80Gmw02G2w22Gyw2WCzwWaDzQabDTYbbDbYbLDZYLPBZoPNBpsN
NhtsNthssNlgc8IaNcHBBAcTHExwMMHBBAcTHExwMMHBBAcTHExwMMHBBAcTHExwMMHBBAcTHExw
MMHBBAcTHExwMMHBBAcTHExwMMHBBAcTHExwMMHBBAcTHExwMMHBBAcTHExwMMHBBAcTHExwMMHB
BAcTHExwMMHBBAcTHExwMMHBBAcTHExwMMHBBAcTHExwMMHBBAcTHExwMMHBBAcTHExwMMHBBAcT
HExwMMHBBAcTHExwMMHBBAcTHExwMMHBBAcTHExwMMHBBAcTHExwMMHBBAcTHExwMMHBBAcTHExw
MMHBBAcTHMxwEBEQQwTEEAExREAMERBDBMQQATFEQAwREEMExBABMURADBEQQwTEEAExREAMERBD
BMQQATFEQAwREEMExBABMURADBEQQwTEEAExREAMERBDBMQQATFEQAwREEMExBABMURADBEQQwTE
EAExREAMERBDBMQQATFEQAwREEMExBABMURADBEQQwTEEAExREAMERBDBMQQATFEQAwREEMExBAB
MURADBEQQwTEEAExREAMERBDBMQQATFEQAwREEMExBABMURADBEQQwTEEAExREAMERBDBMQQATFE
QAwREEMExBABMURADBEQQwTEEAExREAMERBDBMQQATFEQAwREEMExBABMURADBEQQwTEEAExREAM
ERBDBMQQATFEQAwREEMExBABMURADBEQQwTEEAExREAMERBDBMQQATFEQAwREEMExBABMURADBEQ
QwTEEAExREAMERBDBMQQATFEQAwREEMExBABMURADBEQQwTEEAExREAMERBDBMQQATFEQAwREEME
xBABMURADBEQQwTEEAExREAMERBDBMQQATFEQAwREEMExBABMURADBEQQwTEEAExREAMERBDBMQQ
ATFEQAwREEMExBABMURADBEQQwTEEAExREAMERBDBMQQATFEQAwREEMExBABMURADBEQQwTEEAEx
REAMERBDBMQQATFEQAwREEMExBABMURADBEQQwTEEAExREAMERBDBMQQAbF6owXKthnZNiPbZmTb
jGybkW0zsm1Gts3IthnZNiPbZmTbjGybkW0zsm1Gts3IthnZNiPbZmTbjGybkW0zsm1Gts3IthnZ
NiPbZuRXvhk58AJlP6VgbsUthlsSbsm4peCWilsct+B+hM0VNlfYXGFzhc0VNlfYXGFzhc0VNlfY
XGFzhc0VNlfYXGFzhc0VNlfYXGFzhc0VNlfYXGFzhc0VNlfYXGFzhc0VNlfYXGFzhc0VNlfYXGFz
hc0VNlfYXGFzhc0VNlfYXGFzhc0VNlfYXGFzhc0VNlfYXGFzhc0VNlfYXGFzhc0VNlfYXGFzhc0V
NlfYXGFzhc0VNlfYXGFzhc0VNlfYXGFzhc0VNlfYXGFzhc0VNlfYXGFzhc31tc039T3mjbRGWiOt
kdZIa6RdMWk3uphb/lvfTZ49eXE2f3b22//of2R3/nDe9X/ku8fjX48ejM+XN42nz56cnXWzJ9Pn
p/PH52ffnT15/mw6/+NfmXf9bCezbvH88fT86Mnj7un4Wf+vvR7jetD+LKP/4//fevJ4/uH78dn8
t7/z7LvljQ/Hz/qH6eyfj86u9Fd/9096Nn/65Nn5Vf+8P+/qd/127zp0P8tD894H5f2j/3l3DfcX
uKJD/Oz50+Wv+t3s+enpxaBPRk761T847xrj7Nn0i7xu/jH3oC6aA7yI/XE/XfIeuomL/Q1eMVe/
t67uInQ2P//9YjD4k/E9I38bj1WjbWiPzDtm+BJNa56teB81y67unrq6K87yF/vt9J+ffxGXSAz8
9T9Gza+VDoQbgKs3sxtPnjw/7/7aGfpC/PpvozfGVr6rmmZXfod9YIxn8/GsO53PjsbfPR0/mJ88
6f/x6LT/Xzd31r1/pOs7mz738TW4Q/L9d/wnvO57IyO9Huf1v9v/vSfP5/98+vjB9TwYb/2QG/pV
L/HX/3o0mz8Z1on+10jfBJvvvwuuj8O/v/3m9Y//Ji9uK97Tb79f6Y877IYe89/+6L/TP0+fput5
AP7+E76+X7Ks/kv+/d9pMw9l5lUOvfP5y+Vi9vf/tfxrjh7fsHTvHKk9pb3eq/477/ibe0p7uZH+
jtDf/tz5y/NrfX/umz/qhn7tD/z1Z/0a+uSkO3/SLZ6NHxzNvhuN5ObO93dO8/W8r+m6To933nXv
vdMGd+G53K9xyWNLB3Wk67ezfHvnb/8NvZD5CffBx//NNqgj3b7pI93akb7yffDxf3Ma1JGe2ruy
P+OZlW76jdaXm+mSx1Ye1JGev+lrem7X9JXvg4//m8ugjvTSrumf8cwqA7yml2s70uugjvTajvTP
eKTXAR7p9ZqO9P7Pvxg/m3Xnz44ePOj/SPdwfPZw2j8yN/kGmo+e8tt8tvOhe+Wad98/dtw/3w32
cH7ytP8jX/3ezdU+YJc+ef7L/T6cI/C/fFj9+Mmz+fjxd/Pn0+742fK/jp91s/ny0+rXeEX6+DlW
vebgO2I+01fRDPwqM5ir7sc/8td8XV1toP87ejybv/zyr6FXfPd/5An95734OY+Oj/o7n13bifLR
Y3zO++hjr1L9cXYyns6Xbz/v5o/Hk5P5bEDPX9813aqGrHgw91flnvebRvJvY9z4NfeLfW7/riPm
W35l8/L3ydCWKkN8Ln/5e/dLf4Z7bcfV88fLt4otb/nro1E3+rau9w3UXl28huv6++7wG3yB8dJj
XfYg++PTuf0P6QZ2/HO0L/BOnQz2Pp1c9V3Kx+u679zxYO/c8Rd6597oOz7fN9A3sZHwvjvgG1pf
fNrd8Eknlw4XQb0OBD/PnTpYBPUaEdRuxWeTv9y51/8ei/n59OF346dHfz+nnh1Nj0/m/3x68b/T
/i46/5f8z+nZv2TU/6F3TPz3v+U/z/sf8cd/d8fz+dPxydGv8+4/z5+cj38freRs5QOP/Qp/5zU+
vqv+9FWB+LTHdLDPOHR8w0fyF6DvqofS5/lw/PPzo5OvYKv9Su7Ut19K+uO+uf5H8vcf+GB+3i3/
+u7o8eLJP8+eT67toH3PD7z+3/ZSzxFsaCsCay+Lfd4ViA3zZbFVPyLz7vPn7PzZ8+n582c38wTm
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
5AfTP/cnuD/jpxPbATvo6/6lv9/g01+xuc6P1V/zdOt37rQT4eu6ci8PuPawfpnXN2vPsb6xM7U9
rF/dM5FPXMWt8ugOdQW6yuyDWYHOfbGoi/7vWoxs0iWZLrqo89LpbJRVI0Tn5Z2n0dmkP5RmGye/
To6Wp9JyW/12PtD1i8OL5bb5y1/v6/povB/PD2z74fR0djL7qt/g/uZbDiYbW2cH9tfv+naUhd+8
GI/6P/t0omn5u/91357E6P7B7ceHr7+98WV/H231f1//sx7fPX/rzzyaaB4d7uf+FP9v9/3t2cHB
60tD/+/Ii8nG+ui3N9D/9e8uZ1zxe8OXl56L+V70f/f0zWPhb/N+IKSz3l+ini7vk+XP3X58++nP
y2DOmwGdF5s/Phlt/fhE/gzovL4PPvq71dMb361+ILP/OR8/ezA//9fyDDw/evL4/37752G91NrO
znZ2trPzr7NzOJ8RbqdmOzW/zVNzWN9f1c7Ddh5+m+fhcF5hKz5duM87i/AuLcb9Wnc2m3eRko10
Ma/j6ehbOgVXOo3+eOnm/PBg+8lE7y7vi7s7srX73pd23h/2fNH/vreXp9b0ND+c/PD963bV4cGt
B9sHty8mdmuFb/8f8in89wLAF36c7I3+9SWsP9uZ3c7sdmZf0Zk9nLVrO63bad1O6489rYf1fWTt
HG7ncDuHP/YcHsCamfvFK5zJg93rXmH269vrnj+ePlm+7++7k/mD8fSiO510/V959Hh+Nv9ucvQg
v/6P7vW/Ne9e/+H5s2dPnp11/d119R9/vcwCazJKc5HFrJuPfdYlnXgXi5F2ozqe1FTHi3nM2lV8
lav43t7dtz7d/2fg7+H9080PvZK3+cZ9efrfr6LL3/OuxvP+cXje/65v/Zk/rs7bi8mfV+e8mG30
j4cuA4Tv+h3fuJKvGEBsL39c6kL3yReMFT6XftnXWtqloF0K2qXg2l8v2W1nZjsz25l5gy95XPb7
+9pp2E7Db/M0HMxOv4bM+p+cuiLzeZemNusmPh11Jct4NPc0WtT2ouMqp+Da9u7L9b213XYatiXr
la4i2xnaztB2hn6OleQlv++qnaDtBG0LyqF8+1w7G9vZ2NaVN76u9Nmkyni26GIyql2ajaXzOsmd
LkaT6jK2WcntNFzhNNzYGXk7Bdua8krXlO3sbGdnOzuvez15ma+ramdmOzPbQvLGvzWunYbtNGwr
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
0WW71w+BsxQfUL0kcNrqtM1Zmpc0nwfwmk0jyqYRZZOEsilAefHdLsFLgtNGp+WEMgRFgWMkNfVV
Lr7KxTdnMV+2mC9bu5et3csmCWWThIbAMZqKNfXo3lz3Ibsqg68y+OYkgs7yPuewOIbv1uylLO/z
EBQFTgs2ZBOehiArcNCoYtFZNJjgZmAG1BB4c0lNNZiQHSOrmGtfMulsWlU2rSpbZTgEjlG8/aLq
xVmqs7gHmas1BN5L9e1r/EHjt/xxCNS0qqk7nTzYQ+CgzUH59sgWSGZTxHJ0NURhLWralj9m07uy
xY3Z9K4sufYQOIumHbXkqOFGrdBqx2y1Y45aYRS0LH/M0m8PgXpohVGji5pU1KRMIhsCB9U+TDMb
AmdxC46XDKarh2hqkWW2pjInLcg0s2yBZDbvLMvHneXSzuadZdPMsklkWVLrLJl0lgg6SwSd5X3O
ZoRlCZizBMzZnLEseXI2ZyxbdZktocyWUGZLKLMVk1kG4iw3cJb5N1sxmWX+zTL/Zol+s7y+WV7f
bHZb1oGYZcvNstRmSWmzHLRZytmsry9bMZn15GXZULMFklny0yxPadaTNwT+ovtM+X4ZamQFjGFx
Y9YLl3WpZasMsyWD2WK+XDwqFI8KxR23+Agl+xwC7MNSvSwdaNaTNwTerVufxXxZx13WcZerq0HH
XbYgMOu4y5b7ZWv3sp68rCcv67jLOu6yjrtc/Ripbo5VvLXcbwgcwwVk/d8QqJiHzerXSdWkqial
zzFbZTgEauo2Xl3ZUqxmHZm5aslVS5aVdQjU1N1B72jWO5r1jma9o0OgpgJO9UBSRSA9rFkP6xCo
qaAlw2zWKTsEauopuLrUq0vd+tAhUNPXSPj7Ngaawa8Z/JrBrxn8msGvGfyawa8Z/JrBrxn8msGv
Gfyawa8Z/JrBrxn8msGvGfyawa8Z/JrBrxn8msGvGfyawa8Z/PqIwa8/Q2OgWXk4i1tnces0sU+q
uPXfNK2Tg3Faj4fHGycxDNM6CnmjtXq0sSrppNWTpS9HB7+mKci9F7evvXj01f282t+79cOD+y++
vhd2X75+fJu7L4+e9l96jHe3t7bizrK9e3u1bN7bO7u7e+P5q/EYvzvZzJv7r1a+rvEKt56MeV7d
fPzt4f2Xt7ZOPr/67dqM1804dsPuky+uXfnp7ldXN/fv316byE931/+98+zVnevPljuPrn6+s/vl
MP2fhpn+9PAofvn9zv3+5OD+/rcXpnHv+P69daORRKORePfx5k93H99+a657e6vnJy9vnY35zx7E
7bP9rb462bt6dvPxs0eHT/tqL9x5+GAsjX2X5b9x7x9tl8of2F9mmtKf2ZTmbjRN6FPcjcLcjeZu
9JEbf7wlRRwfn34V692rhnGqvqqqo7YaOpUQJJvulGUIGQK/33UqyiGSTZkaAjQ1hyqbQzUEQUFU
kBRkBUVBVdAUqKmBr6aPWYKUbHLXEKipzjwZU7KMKVnGlCFQU6MlUqhkKVSySWZZCpUshUqWQmUI
1FSnoiQr2VS2bCpblmRlCNRUL3TTU9l0Szdjhy2qqc5NM+iGQE3NomkGzpv+0KY/1Cy8IVBT/aFN
f2jTH9r0hzb9oU1/qMQ12WzAIVBT/aFNf2jTH9r0h5piOARqqj9UAp0hUFP9oU1/qImMQ6Cm+kNl
5RkCNdUfanZklshnCNRUf2jTH9r0h8r9MwRqqj+06Q+VLiibtplN28ymbQ6BmopRTYxqYpQsRUOg
pmKUuaBZYqNs6mc29TNLSjQEQUFUcGkM7tY8ziFQD3cp8zhzd0Mxj3MIHMPl0culX/DmZBjKEgpl
0zazaZvZLM1sDmY2w3II3h2jrMDsYnZkMTuySAZUVuzrZcWuXUx1LGY2FjMbh8BB2U+HQMWyY2Tv
tqpHVY/qJc1pm7M0n0d30H7pF8yycFIqpjqWhYNRkda7SOtdluAlLLFiuuQQZAVFgZoGNQ3eXFQP
lmmRK7zIFT4EahrVNKppVFPt1MTOItNRMdNzCNRU0zb1cwjUVFuX97zIe17MFi1miw6BmrpeZEYf
AjXNauqKMgV1CNTUNScV1BCoaVHToqZFTYuaFjUtalrUtKhpVdOqplVN3VBkeS+m5BZTcodATaua
uiktTU2bmrptLU1Nm5o2NXWnW9zpZKwvZhOXpatpV9Oupl1Nu5q6wZqRXAKfs8V842I2cTE1uJga
XOT9GgLHcLcM7pbBvTC4F5peXCQTK8HtwlzhIplYMRN4CJICx3Ddyi5WTA0uJu0Wk3aL6bRDcOkX
DqqNSUhWJCQbAh8Q59Niwu0Q+AvNwXTaYvZsMRV2CIKCS5ckBc7iyzadtpgsOwSXfuEs7payehVT
UIfg0iUq5qFGkvsh4BI57YtJqkPgoC5CE0yLnF3FjNMiI1cxfbTIt1WSxm+CaTHBdAgcQziR9b5I
wFUk4CpmnBZJ7ospqCW5W5r6WUz9LKZ+FivDhwA9sssjuxdKUF8sJi8Wk5fsuzV9tFhuXswnLdaf
FxNMh0DFPBdmDcYa9mINe7FkvVihXqxQHwKndRvPHvKyh7zsNp7dHbJ2mt0MsoabPRhlzTJrlhbG
D4GzeFTI7kHZPShryUVLLjiHSxHEi5htDXuRbb7INl/Mry0yxRcTbofAWdxypI4vMsUXmeKLTPHF
WvpiBm4xA7dY5V4sai/VTbq6SVefuum0RS75Yn5tkUu+yCVf5JIvpuQWq+2LObpFcvkiuXyRXL6Y
1lss0C/m+RbzfIt5vuM9rX73xh8z+DWDXzP4NYNfM/g1g18z+DWDXzP4NYNfM/g1g18z+DWDXzP4
NYNfM/g1g18z+DWDXzP4NYNfM/g1g18z+DWDXx8x+PVnaPzx9x9Ovnu5rjw7+V/vX2z4iVRHfpDu
n0Rx8NFpbydxdbpxcnCaN1I/PtroJ0sdKh/EVTw6PTgK/dd0wfh0Kjq3v7n17RfXrry8/W5F54vb
15+t3rOic2/8ua7ozO9WdN58cffxvXT38eZ7VXQ+CFuPD27sPlnr9I/dQI7i9sPjz3df635n58qL
Md+tw2+2z46e5oeH167ujPtadxH5envv1svD+EvdRPJ4Vsd/292692rn3vb2yb187+DVndsHT79P
O0+2v/nbV7f63pd//bTaHEwz/G81w7kLTvObu+A0w7kL/uG7YDlZrZkCDjeO+snpRor9YOPg5Khv
9HZ8XE/7UT89jL+yu8d4zF8+3XoyXs26K1p8sPfkl7qi3dvZufq3YWYvd55+u3u8yuXLnat37736
8tXaDE+++re6ov0Tc9nMdx/ffs+uaNvL/lfrrmhfv9sVbeeo3N7ZLLdfvVdXtB8O4/bpPzO797/3
j7h7vR+j2fiy9JNXl1nV4VF1mdmCdQj85NVlVo2t2rW1VH1otnEdAjXVqWaj12Kj12Kj12Kj12Kj
12Kj12Kj12Kj12Kj12Kj12Kj12Kj12Kj12Kj12Kj12Kj12Kj12Kj12Kj12Ib12Ib12LX1mLX1mLX
1mKT1mKT1mJP1mIL1mIL1mIL1mIL1mLObjEjt5iRW0zALSbgFhNwiwm4xQTcYgJuMd+2mG9bTK8t
5soWc2WLqbHFTNhinmsxz7WYcFpMOC0mnBYTTosJp8WE02LCaTHhtJj5WUz0LKZxFpM0izmZxZzM
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
RVdUzJcEqq4FmWo6BF6ifZg3OgSXfuEz1RyiR4WofUSPCtGjQtSCokcFE1qHQE09KpjyOgRq6lHB
pNghUFOPClFbl+WsmVjbpD1r0p4NgZp6VDA5dwgWBUFBVJAUZAVFQVXQFKipi1A+tiFQU48KyWWa
PCqYNdzMGm5mDTezhptZw0Ogpm4G5hUPgZp6VEgeFZJHBXOTm3R0Q+AlbihJzDaduZm93JI7TBIa
U750iXcrNMqC1yS9ayY8N/ObWxLFTHgeAgcV1sxvHgKndf9I7h8mPLfkdpFc2dlVmV2V2VWZXZWm
RLfsisraqQnPQ+AsGp08eS17HJWwrslPNwSqLorlfOkX6iGsmTQ9BE7rh3fWPrLmkMU52edaFqOy
kCT7XJN9rpmJ3YrbZ3H7LG6fxQ2lvD5d/KbdMP5lS4MZ/JrBrxn8msGvGfyawa8Z/JrBrxn8msGv
Gfyawa8Z/JrBrxn8msGvGfyawa8Z/JrBrxn8msGvGfyawa8Z/JrBr48Y/PrztDSYFYiz2HUWu05T
+0SLXf9dEzs+Pcr9YLVxcBJPNtLBad04PC1t42DVw9FR6fk4Lr+yw8bLF4/uhd2Xx0/PHu9/dXX3
8OlWeHD/7PmD+7fGteP1vvvYH41XnG8+fvZomNg3t58s5SCe3d3e3Co7u9vbt+/99Pcvd+7c2d5c
dTtVHNzYfbh/Y/fl63mX54+29x6+ONgber38BVPZeVJuv/pymMsbU1k9v//y1u0He3dWX9xbfty/
cfb04P55V4zdz3fPvrh25ae7165u7t+/vTaz8fcrP9159eyn2zvPXt15dPXznd0vH+3tLv2Lz58/
2h/z79+/s9q/v316/PnZi/31Enqafzze6v/M5N7/3r9Zjj/SThX/Z5rRf5MZzV1oms+ntgt9aLuo
aUZzF/pt2ka9jyV9FNN/PxqqVnRmFF1q9swdgqLAj3edbkWHSNEhUnSplXzpF86iQ6To7iimFdiI
dwgcVB+9jXiHwHvRu2GL3CHICqoCNK26sqrOYdvsDgE3V3XbVt1hduZtVXOQlazJStbs3dtkJWs2
82028202822SkDVJyJrdfZsUY02+sCY9WJPrq8n11Wz322z326pON4m7mt19mzxdTRauJulWkzCr
yY/VZL9qcls1ua2GICiICrICZ9Es5bZqNvNtNvNtsk4NgYppdE2ja9pY08aaJtUMxUtlNQQOalxd
KqtmD+Eh8BLtwx7CzYbAzYbArRk4lMpqCBxDp2zTiy/ZVbPLcLPL8BD45owCNoN+zaBfM6TXNVxJ
t5ocW01+rGaX4WZT4WZD4CGoChzULadrH91EjO4eJJXVEDiGBiO31RCoh/kO9iFucls1+xAPgYNq
hV0rtFNxszFxs+3wEPiA3LZ6v/SLdwcd5hEUdARERYegIMA+ujUj3WqObjVHt5qjW83RreboVnN0
qzm61Rzdao5uNUe3mqNbzdGt5uhWc3SrObrVHN1qjm41R7eao1vN0a3m6FZzdKs5utUc3WqObjVH
t5qjW83RreboVnN0qzm61Rzdao5uNUe3mqNbzdGt5uhWc3SrObrVHN1qjm41R7eao1vN0a3m6FZz
dKs5utUc3WqObjVHt5qjW6vRrdXo1ll0iya6RRPdGoluSUS38qBbaNCtK+jWFXTLCLpFAt0igW6R
QLdIoFsk0C0S6BYJdIsEukUC3SKBbpFAt0igWyTQLRLo1gR0awK6NQHdEoBuCUA3wb+bz99N3+/m
4ndT77uZ9t1M+25ifTePvps2302b7ybFdzPcuwnt3XT1bnZ6N7O8m0jeTSTvJpJ387W72djdbOxu
rnU3tbqbWt1NnO7mFndTibupxN1U4m4qcTdzuJv1203y7eb0dlN4u/m43WzbbnJtN2W1m5DazT8d
AvXQPqTk61LydVNWuymrXUq+bg7rEKiY+7pZrt0s1yFQU+00NDXVcE2MHQI1bWra1LSpaVNT0UMC
wh66mnY1FXBM4e2m8HZTeIdATS+tOc+4gbTGHl2VZv12yRSHICpICrKCoqAqaArUdFFT0TSKpnFR
U+E1LmrqiT4KwOYnd/OTh+DSJd6cwGfCcjdhuZuf3M1PHgIV83wa86VBfcgiUHTLMaW5yyU5BM7i
DmPmcDcNuJv128367WbsdhN0u+m33VzabqZsN1O2mxjbTTcd3+5BATeXPH9I6tjNDO1yOA6Bd+vp
Inm6MO+zS/vYzeocAgd1+0xun5IpDgEmZTZlzy7T7JrLrjnzLbvplT37GnK89IukQMV8c9lVmV2V
2W9kczaHQNV9+2Z1drM6h0BN/UbOGkzWYCSX7KaKdsklu+SSXXLJbnbpEKipe5D5p0Ogpm5KJqQO
gZpq6+cpqx+nYcnHDdr95oHGf9loZQbtZtBuBu1m0G4G7WbQbgbtZtBuBu1m0G4G7WbQbgbtZtBu
Bu1m0G4G7WbQbgbtZtBuBu1m0G4G7WbQbgbtZtDuIwbt/jyNVnLJBz0eHm+045PTjXTUTzb6UV82
TnNYtbFxtZ6Pf2X3i0+hmvPJ/suDr158ffvx5rvVnNevlDvX37OaM+w+eV3N+dU71Zwvb19/tty9
/uyn96vmvPPwQXh43lnjj3hmn1pLg2l+/23m90m0QphmN3e9uetN8/vv2vV6WJbjchQ3DlbLMLt+
crxxcHRytHF43HrvByGeluNf17njzrUXj7bD1mp/7/jhyVdX7x3cX84O4+7ql7t47cadZXv/eNXv
fbl3fOfk6e3VznJ7dbKZ/767s2nHi2f797ee7O/denXz8beHw2y2Tj6/+u3aJH/BXH66u+62MUzm
rbl89dPhzSc/PTyKX36/c78/Obi//+1Fd417x/fvPb+57pL2Tse0zXj38eZPdx/fftsxbW9v9fzk
5a2zMf/Zg7h9tr/VVyd7V8/WJnH4tK/2wj8xu3/j3j9as7z3Yy0bXzN+ZumEsY3mEPiZpVcm6wjO
umlsxTkEfmbpCM46gm3WOQRqqiPYdp5DoKY6gm34OQRqqicj68nIOoLtEToEaqoj2C6i3S6iQ6Cm
Orayft+smzfr+iq6aIs+l6IDtuj6Knq6inHFYvCl6JWx3+kQqIeu0aJr1MTRIVAPPSpFj4ppoUOg
HjpQiv6SonvETNIhcBZ9HaaWDoGzuLJNLR0Cb99FaGppLy4Pc02HQMU03KJfr+jXq/pbTT7tJp8O
gWNodNXodtXbXrUxc02HwDH0DZpa2s0k7WaSdvNEh8AxdJ9V7aPqxzLHs5vS2asv25TOIVAPt8+q
fVR3y+rWV936qgZTNRgzSYdAxTQpM0m7maRDUBUwbdOZ3PQdN02qubE1N7bmxta0QpNPh8BZ3MfM
Ru1mo3azUbvJp93k0yHwXtz6mp7hpiO4ubGZazoEjuE+1vTZNm29aeumpw6Bs7gXNk8oZrQOgWOI
+yawDoFmqfGb0drNaO1mtHYzWoeAQU0+7SafDgHTdnfLvlz6RVOAYiawDkFQ4CzuuN0dt5sL1M30
6a6G7mrorobuJt2N13SXh6m23VTbIVAx4zXm3g6BY7jRdxdQd+fvLiCTcXt3vZidOwTO4ooyO3cI
nNYVZf5uNzu3m53bTcbt3dOF2blD4KCul268t7+LHmlFdu5aEBVkBRXB4i+WS7/oCN417bXAS97d
+dcCx4hqGh00Oui7x421wNtPDpp8YunSoGr67hl3LXCM7L0ULylqWtS0qGlxluJ7KT6g4r0U76Wo
aVXTqqZVTauaVjWtalrVtKppVdOqpk1Nm5o2NW1q2tS0qWlT06amTU2bmnY17Wra1bSr6aWV3dW0
q2lX066mHU2hDF4LFgVBQVSQFGQFRUFV0BSo6aKmi5ouarqo6aKm7nRQBq8FarqoqXshicVrgZoG
NQ1qGtQ0qKk77uKOu7jjLu64JBavBWoa1dRNmkzjtUBN3cYXt3Eog9cCNU1q6s6/uPMv7vyLOz+U
wWuBmooNi9gAZfAQCBZQBq8FaprVVHwhSXotUNOspllNxahFjFrEqEWMWsSoRYxaBJxFOFmEk0X0
WESPRfRY3MYXd9zF/XRxPw1ubMGNLawuXZIVFAVVAU89uG0FN6XgDhPcUIKbQXCpBxdycJkGl2lw
mQZXVHC9BI0/aPxBWw8aXSiXfuFr0MaC56DgoSZ4qAkaXfD8EcT9oEkFQTwI4kGjCxpdFF6jVhjF
uah9RDEqajBROInxksBBNYfoJh3dk6NbcHQPir7K6IE1ul1Ez3TRpR49fkVfVPQ1JBdy8hEmn1gS
XpOPMAkn5zyAv2kHjLxK/zNjp/8tsdPfvxHJjJ3O2OmMnc7Y6YydztjpjJ3O2OmMnc7Y6Yydztjp
jJ3O2OmMnc7Y6YydztjpjJ3O2OmMnc7Y6YydztjpjJ3O2OlHjJ3+eRqRzADrLE79YJaKaUIzRv+B
u88lgpP3saJPxOw/SPdPohXBUT/oMR4ebQyoO9lIp/1g4zDV441a4slBODk4PQxHv64Dxh+9VLe/
ufXtF+tOFe8u1Re3rz9bvedS3Rt/rpdqfnep3nxx9/G9NJbrey3VB2Hr8cGN824a/9i54yhuPzz+
fPe17nd2rqzGfJ+P53d2HLbyza3tcUO7Px7vrfV797oHT/uTk3VXjSfLve2947/tbp2tn9nV4/Gx
9eDV9t/uvdpOO0+/3b391a2+9+Vf//qRGq98WBbXNLv/FrP7OLvcv6KfWh+7+R5IfmImPzGTn4ep
XvqFx3+90UlvdPLLJemNTnqjk982SW908qs06Y1Ofg4lvdHJ76Pkh2zyQzZd+oLyQzbpjU56o5Pe
6KQ3OumNznqjs5/L2c/lrNMm+62XddpknTZZp03WG5314mS/0rNunaw3OuuNzn7YZ73R2c/UrDc6
++mf9UZnnUdZb3TWG539GM56o7MOqOznctYbnXVRZb3RWW901omV9UZnP8qzfo2sXyPr5so6OrLe
6KznI+uNzrpCsr6zrDc66z7Ietey3uisNzrrjc465LIOuaw3Ouuhy3qjs97orDc6643OeoKym3TW
G53dtbPe6Ow2nnUvZT2FWX9TNkCadUBl/dVZ93TWdZiFgiwU5H5J4L24W2Z3y+LmWNzHiptScVMq
bjlluTSG07qhFDeU4nZR3B2Ku0Nxdyiu7OLKLq7sEi+NoaauyuKaK6654porrrniEisuseISKxp/
0XCLHu1iiL1ohcUgSdHoiueP4nGjeFQogngVb+vq0i+qgqaAWarQWAW+qllWga+KYlWMqtpY1aSq
2FA1qeo2Xt3Gq7tUdZeqbkrVPah6+qy+/eqbqx4Uq+fC6omt+SqbL6r5oppHluZm0ET1Jqo3Qby5
1JvvpbnUmy+qCeLNN9cE8ebu0ATx5nbRfPvNt9/cUJr7R3P/aO4OTXhtwmvLl8bw5kTTplk2zbK5
BzX3oKadNsNsze+oJng2Tbtp2s2NrbmxNb/FmgDczB1qfq0198Lmt1hziTWXWPNbrLnmmt9iPye8
Xl3tr/+4Uj/biq//0j67svn6H9pnm+e/qJ9dK6//qXy2eeX1X/LL9R/XVt//wx9Xrn52Nb3+y5XP
turrC+Nnm+G1pH82DlHrn8ZHr/9In21unv/3Z1f767/kz66/Hvrasr5sffHV7978w7k61z67fq7F
ev7Xf9m6e/7H/71Qd6i+/kvfOdfq+PV/lfUkr29w/83U5c1frlz8Zev1eOMm6/XX16S/nY/w2fXX
/30trNU4/+nV1cUNXU9vbmDzzShXzi9+8PoXmxe/GH/ZOtd767VeV66vn+P5g75+odmdi6d1/fXT
GgNev3o++PkjSGevxVtHFy/h+nIx45UrF3d+tV38Zetcq/zVxUD12vmd3T3/9y/O/zj/1/GaXg90
/eqL8/E/27p+oci113d59fpn1+u5IocXNnLt6sVLuRLe/OX8LtvR+RX33pjO1vm7+Pb8AZ7P2D/b
Wr15l+cvOXyWr10oc67qkJy/5mEI5/+0fmDnFrD67Fp98wjOb/jqZ1ubF785t7Sr7f6bezufaZhP
v7ip81HWKp+/9zdv6K1ljSdw/dyy0sU7Ghpv1gvj3rzQ+McLNa+c/0N+bX2b1y+s78rV/3NuBf/3
zUDn7/jK0cVUF0tpa32D5zd1/jqHoZ4vt2HfFyq39X2d3+aV898sb+63vTHE9vn5NeeXXn9w8bPz
f11ref56rt64uOz8Mb3eBcLq53zrccn5jQ5bv/pmH7hYDdc/u3b+asrfz5fFy3NjOD2/wyfnFnJ6
YezX2vkwz85t9LsLQ8znhlNenYu3L8QX6qW7F/+9mS7+cr6YturJxQuvbzaB8xcz3uK1KxeSq1sX
r/z8jYzt6nwdjXV+/vDPU5KX5e1mfPX603MT+/biBrcuxOuH/9pYnl+Y4Oa5PZRzSyyfX9jCua1e
2frbhY2dbyA/v6d642KXuFhIy2fX+pst5c2+cWGO4fxp5tdPYLzG8zX51vDGFedGcO3am1f++iWd
3/rW2zXz5i8Xy6AfnP/x/DetmP6XJa/T+Tmdn9P5OZ2f0/k5nZ/T+Tmdn9P5OZ2f0/k5nZ/T+Tmd
n9P5OZ2f0/k5nZ/T+Tmdn7+T8/PPU/I0s5FnEvxMgp9m9ydLgv83ze00nvaySqcb44ukbaQlHW30
mOrG+D49LkeHh6ex/rqqvHz3q3Vl3MNxzW7Y37v5C4+tb361s313e+vJizVJ6517y+bO3re3D57c
W60f29+cJzw8e3B/++zom9uP7p59P0xlNx3dOBtmePsXTGQz3318ezXM5K2JfLH1/NHOja1Xx9eW
O4dh+9v9p2fnVXNn28v+miB35+t3CXJ3jsrtnc1y+9Ubgtzl+PSrn+rNp+v5dx+P+3yyF7fz0fkz
+uEwbp/+M1N7/3v/mDtV7/8zTec/3XQ+zm6z/tVfDr979uL5yXfPz/8yDnEb3z882RiX/OWHb86e
HayPdRvHz45+eHryzffPL2R/Wa3CRng9y28aD09vYPe30OyfPbNfM3ac+/hcjJ9UYf40nbmPf3hR
+/tYz4cznV8rWxeejAvPbbtwplx74/Ba+0C3LrwjF26PdO6YTBcuv7W747V74vjCaXj++7VvqOBv
275wcWy9dhpt1uM3jshzD+fq+bk35cUbn9f5DBdOyGsXXsAr1x6e//Hyjbe6XbjYzp1OV7aOL5wj
V9/8w7lLePzvhTstre/4wr+0eeEuvPC2XL9wxo6bOh/uavi/b7xG1y7cQdfP9ap7bzy/W//oKixr
R9DrJ/HluRfp3Nl17dGFj+jCPVzfPM7xXM9/f+VC71fnXqavLx7O+WjjN9ffeH3P/XPrB/TGX33h
gF+tvZwXDyVdzHJxF1u3z/944xU/H/XcVdZ+TmC4lj/bvPbmL+fv8cq5FzncvbCCev6U89vbfuPa
DBderytXLvxq67/kiyd/7vW88tajvvXmrt+EHcY/nY+zfsD1jdf9+sVDOPdNXik/XrjELnyV1y6m
HL/YfOMrPvf3jxf5xmV64RZcu6Pb25su635x/xgkWQveBFrWztmtd/7lreM0XVjV23/pDPI2K2Gz
Xdziufe1/5yGd2Xr7//gp/y5tep4KFeuvrHdqxdezou107+/+O+Lp1U+u776x2lpTpziu8lU61/E
t+7Qi7fx9l+yPy1vH8TDN970+M4PvOt3Y5hrwfLzs7x65eL5n7+1sQHk87/kw581rnT7HFb5NjR2
5eruxQgXhlX/z7n48cUMF7GX9mZNxTce0n6xEK5uXkSezl9G+DnvZe2VPr/ofF+51v/PxbK+cA6n
b95sFeeu7vj1xbK9COdcu/XGMN5sHBcrfPOtv3b/TczjfHXmO/9gFuFtesDVfP67dvdi8Vx74wC+
sO3XNnVhJ/XNX668+cubwMr54ln/JV+87YvAyrU3QZJ2EZ678ItffTPcteU8atG+faPAhd/7wk9/
/l7WDfzeeVH/IFjHX97Y2HkMbe0tb2+iLeViu7oIxFy9MPf19vDzoorl58b8F/a33rnPH36+CPbd
//kJpvJukugyFhrcITG+TcYcL/Fa/MeYyNulPazgHB4G3lw9f4P5bdziYus/38PPAfBnI1u9iVnG
NyG2axfhzbcbydVr52Bx7qi/0g/PTeX1jzb76zDO5rI2sou/XJjS6/dz/frxhWFdRKnq+Wqo994x
zIun0d9mQlxY6rCic9O/3s8ttz6+MNgLk1neoMabve1tMHMdJnqLVlcudumLG3obmzrH4fPZW3wb
8B6jnf/grd1f/OTnVJ6LhTC2/bS60PQCc/JF6O/S1jmOKf+w74VLXclXq7epZkPzq+fRkfO3c7Hr
rvfW5cK+z/FzvKqrW/8wxM8ZoptvosmbV9aG/I9r52Lz/jk34Wo7+4c1NcbcunZpFW2+WSPn55+r
r9/r5uYPb5bF6t0Vc/3nJXwRNLz+5jdbxjDXf+nvLK91KP3aO8trjZJv4PJ8K9h8E8DbTD+9Vrvd
eGe9XcDOxYb8c0bExTq8kP/cf/9iYW7lh/+QKXCxKpf47gb/WrJ6V5JoZLjk8G4CyTKgpSG4dAlN
bZecyPVZSvw5l3brTeTz/506s4y3HBREBUlBVnBp0KqgKegI3k14XAsWBWoa1DSoaVDToKZBTYOa
BjWNahrVNKppVNOoplFNo5pGNY1qGtU0qWlS06SmSU2TmiY1vWRSSU2TmiY1zWqa1TSraVbTrKZZ
TbOaZjXNaprVtKhpUdOipkVNi5oWNS1qWtS0qGlR06qmVU2rmlY1rWpa1bSqaVXTqqZVTZuaNjVt
atrUtKlpU9Ompk1Nm5o2Ne1q2tW0q2lX066mXU27mnY17Wra0TStVgoWBUFBVJAUZAVFQVXQFKjp
oqaLmopRSYxKYlQSo5IYlcSoJEYlMSq9xqiP4n/9GNV70wU2XWDTBTZdYNMFNl1g0wU2XWDTBTZd
YNMFNl1g0wU2XWDTBTZdYNMFNl1gH+YC+2MKsX4DFpX3STj7JEorQg3Hx0f5ZKOVw9VGiqvjjX4Q
08ZJPD4NS12d9MP+qyp5/qi8yhtHT588v3n95k/v5lVeeXH38ZfvmVd5PP5c51U+eTev8vGVcmfn
63J7573yKh8/uH/n2UVF0D9WH61zUlfHe2vdny93d56s53v2uoLn6e7LX6hy+tv25pPVzpPt/dub
y717O7t3tjeXsnPj2607r6ucVh+PU+tDSzCmif0nmtjcvaZpzd1rmtjcvX6bQrP025eZvT3H/nq9
/uf/d+fZNye/nt1qfbD3i0NfU9LXlPQ1JX1NSV9T0teU9DUlfU1JX1PS15T0NSV9TUnXUtK1lHQt
JV1LSddS0rWko3IIVEzXUtK1lHQtJV1LSddS0rWUdC0lXUtJ11LStZR0LSVdS0nXUtK1lHQtJV1L
SddS0rWUdC0lXUtJ11LStZR0LSVdS0nXUtK1lHQtJV1LSddS0rWUdC0lXUtJ11LStZR0LSVdS0nX
UtK1lHQtJV1LSddS0rWUdC0lXUtJ11LStZR0LSVdS0nXUtK1lHQtJV1LSddS0rWUdC0lXUtJ11LW
tZR1LWVdS1nXUta1lHUtZV1LWddS1rWUdS1lXUtZ11LWtZR1LWVdS1nXUta1lHUtZV1LWddSNvyR
haQsJGUhKQtJWUjKQlIWkrKQlIWkLCRlISkLSVlIyoY/shiVxagsRmUxKotRWYzKYlQWo7IYlcWo
LEZlMSqLUVmMymJUFqOyGJXFqCxGZTEqi1FZjMpiVBajshiVxagsRmUxKotRWYzKYlQWo7IYlcWo
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
3fey+15238vue9kduqhpUdOipkVNi5oWNS1qWtS0qGlR06piVcWqilUVqypWVayqWFWxqmLNR9jU
tKlpU9Ompk1Nm5o2NW1q2tS0q2lX066mXU27mnY17Wra1bSrqefZxfPs4nl28Ty7eJ5dPM8unmcX
z7OL59nF8+zieXbxPLt4nl08zy6eZxfPs4vn2cXz7OJ5dvE8uyxq6gF38YC7eMBdPOAuHnAXD7iL
B9zFA+7iAXfxgLt4wF084C4ecBcPuIsH3MUD7uIBd/GAu3jAXTzgLh5wFw+4iwfcxQPu4gF38YC7
eMBdPM8uScVEoEUEWkSgRQRaRKBFBFpEoEUEWkSgRQRaRKBFBFpEoEUEWkSgRQRaRKBFBFpEoEUE
WqqaCkmLkLQISYuQtAhJi5C0CEmLkLQISYuQtAhJi5C0CEmLkLQISYuQtAhJi5C0CEmLkLQISYuQ
tAhJi5C0CEmLkLQISYuQtAhJQUgKQlIQkoKQFISkICQFISkISUFICkJSEJKCkBSEpCAkBSEpCElB
SApCUhCSgpAUhKQgJAUhKQhJQUgKQlIQkoKQFISkICQFISkISUEECiJQEIGCCBREIJlLsswlWeaS
LHNJlrkky1ySZS7JMpdkmUuyzCVZ5pIsc0mWuSTLXJJlLskyl2SZS7LMJVnmkixzSZa5JMtckmUu
yTKXZJlLsswlWeaSLFFJlqgkS1SSJSrJEpVkiUqyRCVZopIsUUmWqCRLVJIlKskSlWSJSrJEJVmi
kixRSZaoJEtUkiUqyRKVZIlKskQlWaKSLFFJlqgkS1SSJSrJEpVkiUqyRCVZopIsL0mWlyTLS5Ll
JcnykmR5SbK8JFlekiwvSZaXJMtLkuUlyfKSZHlJsrwkWV6SLC9Jlpcky0uS5SXJ8pJkeUmyvCRZ
XpIsL0mWlyTLS5LlJcnykgyBmgo4EpVkiUqyRCVZopIsUUmWqCRLVJIlKskSlWSJSrJEJVmikixR
SZaoJEtUkiUqyRKVZHlJsrwkWV6SLC9Jlpcky0uS5SXJ8pJkeUmyvCRZXpIsL0mWlyTLS5LlJcny
kmR5SbK8JFlekiwvSZaXJMtLkuUlyfKSZHlJsjQkWRqSLA1JloYkS0OSpSHJ0pAMgYoJOPKSZHlJ
srwkWV6SLC9Jlpcky0uSo4AjUUmWqCRLVJIlKskSlWSJSrJEJVmikixRSZaoJEtUkiUqyRKVZIlK
skQlWaKSLFFJlqgkS1SSJSrJEpVkiUqyRCVZopIsUUmWqCRLVJIlKskSlWSJSrJEJVmikixRSZao
JEtUkiUqyRKVZIlKskQlWaKSLFFJlqgkS1SSJSrJEpVkiUqyRCVZopIsUUmWqCRLVJIlKskSlWSJ
SrJEJVmikixRSZaoJEtUkiUqyRKVZIlKskQlWaKSLFFJPicq+YPYNmfwawa/ZvBrBr9m8GsGv2bw
awa/ZvBrBr9m8GsGv2bwawa/ZvBrBr9m8GsGv2bwawa/ZvBrBr9m8GsGv2bwawa/fvvg15+htPPv
P5x89/L59wffn/yv9y8B/ERqFj9I99+FTfKXqyzL6fHhwer0YGM5DScb6fT4YKPXk7XWy2rJxweH
5SDNKsvzKsubv1Rl+cNh3D59ELYeHwz5zW+W40+qmHa+5o/1mucanmt4ruG5hn+7U8/7vOdP9dTz
Prr/IezS4xjs+VxHTNIRk3TEJB0xSUdM0hGTdMQkHTFJR0zSEZN0xCQdMUlHTNIRk3TEJEMBSc9M
0jOT9MwkPTNJz0zSM5P0zCQ9M0nPTNIzk/TMJD0zSc9M0jOT9MwkPTNJz0zSM5P0zCQ9M0nPTNIz
k/TMJD0zSc9M0jOT9cxkPTNZz0zWM5P1zGQ9M1nPTNYzk/XMZD0zWc9M1jOT9cxkPTNZz0zWM5P1
zGQ9M1nPTNYzk/XMZD0zWc9M1jOT9cxkPTNZz0zWM5P1zGQ9M1nPTNYzk/XMZD0zWc9M1jOT9cxk
PTNZz0zWM5P1zGQ9M1nPTNYzk/XMZD0zWc9M1jOT9cxkPTNZz0zWM5P1zGQ9M1nPTNYzkw0WZDEq
i1FZjMpiVBajshiVxagsRmUxKotRWYzKYlQWo7IYlcWoLEZlMSqLUVmMymJUFqOyGJXFqCwkZSEp
C0lZSMpCUhaSspCUhaQsJGUhKQtJWUjKQlIWkrIIlEWgLAJlEaiIQEUEKiJQEYGKCFREoCICFRGo
iEBFBCoiUBGBighURKAiAhURqIhARQQqIlARgYoIVESgIgIVEaiIQEUEKiJQEYGKCFREoCICFRGo
iEBFBCoiUBGBighURKAiAhURqIhARQQqIlARgWTqyjJ1ZZm6skxdWaauLFNXlqkry9SVZerKMnVl
mbqyTF1Zpq4sU1eWqSvL1JVl6soydWWZurJMXVmmrixTV5aYK0vMlSXmyhJzZYm5ssRcWWKuLDFX
locry8OV5eHK8nBlebiyPFxZHq4sD1eWhyvLw5Xl4crycGV5uLI8XFkeriFQUwFHYq4sD1eWhyvL
w5Xl4crycGV5uLI8XFkeriwPV5aHK8vDleXhyvJwZXm4sjxcWR6uLO1WlnYrS7uVpd3K0m5labey
tFtZ2q0s7VaWditLu5Wl3crSbmVpt7K0W1narSztVpZ2K0u7laXdytJuZWm3srRbWdqtLO1WlnYr
S7uVpd3K0m5labeytFtZ2q0s7VaWditLu5Wl3crSbmVZtrIsW1mWrSzLVpZlK8uylWXZyrJsZVm2
sixbWZatLMtWlmUry7KVZdnKsmxlWbayLFtZlq0sy1aWZSvLspVl2cqybGVZtrIsW1mWrSzLVpZl
K8uylWXZyrJsZVm2sixbWZatLMtWlmUry7KVZdnKsmxlWbayLFtZlq0sy1aWZSvLspUl1cqSamVJ
tbKkWllSrSypVpZUK0uqlSXVypJqZUm1sqRaWVKtLKlWllQrS6qVJdXKkmplObSyHFpZDq0sh1aW
QyvLoZXl0MpyaGU5tLIcWlkOrSyHVpZDK8uhleXQynJoZTm0shxaWQ6tLIdWlkMry6GV5dDKcmhl
ObSyHFpZDq0sh1aWQyvLoZXl0MpyaA2Bigk4cmhlObSyHFpZDq0sh1aWQyvLoZXl0MpyaGU5tLIc
WlkOrSyHVpZDK8uhlc85tP4gdukZ/JrBrxn8msGvGfyawa8Z/JrBrxn8msGvGfyawa8Z/JrBrxn8
msGvGfyawa8Z/JrBrxn8msGvGfyawa8Z/JrBr98++PXnYZcu5ej4OC5HG/moHG+k09A22slx3+ir
k3i6tJOTw5OT/4pKy7Oh09mDuH22vzXufe/q2c3Hzx4dPu2rvXDn4YPw8Gz/2q2+9+VfPy3m6Pn6
/t3X9ykUsc+XNtfcXHN/WNH5e7y/T7bo/D10/wR2uJNYTvtJPt7oB0d9I8XTo41+eJw3xpdiL/Ug
r45OD/7Dl8hXL9b39eroRv/hKOyePnjan4x/LzefLPe+2tm+e/JkK+4s27dOnvTNB6+27pzsbOed
+9/eufPVrf7F5+/1TF7+GZ/J/t7DF/v376z272+fHn9+9mJ//Uye5h/HfT5+cP/Os4t5/vGeHh2G
7bzeWnaebF+9vZnLzt7Z3e0bz3/a+ebbrePVT38fz/POydlmv/nN+/bM2DzvmfHNrbOjePXHw2/u
nO2FWz/uf/5k3TPjzu7mk9UY++rxqt/7au/bv23fuP3Tzt6T1cm95e87O/fW+v0/t76P3k7lPVl4
mj6upo+r6eNq+riaPq6mj6vp42r6uJo+rqaPq+njavq4mj6upo+r6eNq+riaPq6mj6vp42r6uJo+
rqaPq+njavq4mj6upo+r6eNq+riaPq5mlKXp9Go6vZpOr67Tq+v06jq9uk6vrtOr6/TqOr26Tq+u
06vr9Oo6vbpOr67Tq+v06jq9umGXrhes6wXresG6XrCuF6zrBet6wbpesK4XrOsF63rBul6wrhes
6wXresG6XrCuF6zrBet6wbpesK7Tq+v06jq9uk6vrtOr6/TqOr26Tq+u06vr9Oo6vbpRlq4XrOsF
63rBul6wrhes6wXresG6XrCu06vr9Oo6vbpOr67Tq+v06jq9uk6vbpSli0BdBOoiUBeBugjURaAu
AnURqItAXQTqIlAXgboI1EWgLgJ1EaiLQF0E6iJQF4G6CNRFoC4CdRGoi0BdBOoiUBeBugjURaAu
AnURqINAZQUCDcGiICiICpKCrKAoqAqaAjVd1HRR00VNFzVd1HRR00VNFzVd1HRR06CmQU2DmgY1
DWoa1DSoaVDToKZBTaOaRjWNahrVNKppVNOoplFNo5pGNU0qltQjqUdSj6QeST2SeiT1yD6xrGLZ
J5bVNKtpVtOspllNs5pmNS1qWtS0qGlR06KmRU2LmhY1LWpa1LSqaVXTqqZVTauaVjWtalrVtKpp
VdOmpk1Nm5o2NW1q2tS0qWlTsaZiXcW6inUV6yrWVayrWFex7iPsairgSLRZJNosEm0WiTaLRJtF
os0i0WaRaLNItFkk2iwSbRaJNotEm0WizSLRZpFos0i0WSTaLBJtFok2i0SbRaLNItFmkWizSLRZ
JNosEm0WiTaLRJtFos0i0WaRaLPIq1nk1SzyahZ5NYu8mkVezSKvZpFXs8irWeTVLPJqFnk1i7ya
RV7NIVBTEUiizSLRZpFos0i0WSTaLBJtFok2i0SbRaLNItFmkWizSLRZJNosEm0WiTaLRJtFos0i
0WaRaLNItFkk2iwSbRaJNotEm0WizSLRZpFos0i0WSTaLBJtFok2i0SbRaLNItFmkWizSLRZJNos
Em0WiTaLRJtFos0i0WaRaLNItFkk2iwSbRaJNotEm0WizSLRZpFos0i0WSTaLBJtFok2i0SbRaLN
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
2FXEriJ2FbGriF1F7CpiVxG7ithVxK4idhWxq4hdRewqYlcRu4rYVcSuInYVsauIXUXsKmJXEbuK
2FXEriJ2FbGriF1F7CpiVxG7ithVxK4idhWxq4hdRewqYlcRu/oRWYXwKoRXIbwK4VUIr0J4FcKr
EF6F8CqEVyG8CuFVCK9CeBXCqxBehfAqhFchvArhVQivQngVwqsQXoXwKoRXIbwK4VUIr0J4FcKr
H5FVjKpiVBWjqhhVxagqRlUxqopRVYyqYlQVo6oYVcWoKkZVMaqKUVWMqmJUFaOqGFXFqCpGVTGq
iVFNjGpiVBOjmhjVxKgmRjUxqolRTYxqYlQTo5oY1cSoJkY1MaqJUU2MamJUE6OaGNXEqCZGNTGq
iVFNjGpiVBOjmhjVxKgmRjUxqolRTYxqYlQTo5oY1cSoJkY1MaqJUU2MamJUE6OaGNXEqCZGNTGq
iVFNjGpiVBOjmhjVxKgmRjUxqolRTYxqYlQTo5oY1cSoJkY1MaqJUU2MamKUjdWLjdWLjdWLjdWL
jdWLjdWLjdWLjdWLjdWLjdWLjdWLjdWLjdWLjdWLjdWLjdWLjdWLjdWLjdWLjdWLjdWLjdWLjdWL
jdWLjdWLjdWLjdWLjdWLjdWLjdWLjdWLjdWLjdWLjdWLjdWLjdWLjdWLjdWLjdWLjdWLjdWLjdWL
jdWLjdWLjdWLjdWLjdWLjdWLjdWLjdWLjdWLjdWLjdWLjdWLjdWLjdWLjdWLjdWLjdWLjdWLjdWL
jdWLjdWLjdWLjdWLjdWLjdWLjdWLjdWHQE3FKDutFzutFzutFzutFzutFzutFzutFzutFzutFzut
FzutFzutFzutFzutFzutFzutFzutFzutFzutD4GailG2Xi+2Xi+2Xi+2Xi+2Xi+2Xi+2Xi+2Xi+2
Xi+2Xi+2Xi+2Xi+2Xi+2Xi+2Xi+2Xi+2Xi+2Xi+2Xi+2Xi+2Xi+2Xi+2Xi+2Xi+2Xi+2Xi+2Xi+2
Xi+2Xi+2Xi+2Xi+2Xi+2Xi+2Xi+2Xi+2Xi+2Xi+2Xi+2Xi+2Xi+2Xq+2Xq+2Xq+2Xq+2Xq+2Xq+2
Xq+2Xq+2Xq+2Xq+2Xq+2Xq+2Xq+2Xq+2Xq+2Xq+2Xq+2Xq+2Xq+2Xq+2Xq+2Xq+2Xq+2Xq+2Xq+2
Xq+2Xq+2Xq+2Xq+2Xq+2Xq+2Xq+2Xq+2Xq+2Xq+2Xq+2Xq+2Xq+2Xq+2Xq+2Xq+rpKZJTZOaJjVN
aprUNKlpUtOkpklNs5pmNc1qmtU0q2lW06ymWU2zmmY1LWpa1LSoaVHToqZFTYuaFjUtalrUtKpp
VdOqplVNq5pWNf2I4bpZqzZr1Wat2qxVm7Vqs1Zt1qrNWrVZqzZr1Wat2qxVm7Vqs1Zt1qrNWrVZ
qzZr1Wat2qxVm7Vqs1Zt1qrNWrVZqzZr1f6AWrU/D2/XMo4yoedl47S+bqCbw0ZfTurG6elxO10t
h+n4MM1WpP+64f6/1Yr0h8O4ffr79QWfFYOzYnBWDM6KwVkxOCsGZ8XgrBicFYOzYnBWDM6KwVkx
OCsGZ8XgrBicFYOzYnBWDM6KwVkxOCsGZ8XgrBicFYOzYvAPqBj8Y4KmH8rhOAOnn0Lg9BPgdp2G
8J8fQZ8mMfeGX9ku+n1s4lNl2X4f3T+BnTilcNJ6qBuxt4ONdFpWG4fLQd84qUfpoBwexdNV+XeX
3WtC97GE7rw4DPnV/u6l326dfH712zHWq7Wp74bdJ19cu/LT3a+ubu7fv71eGj/dvTaW2uNnL2/v
PHt15+XVz3d2v3y099VPY3n+9PAofvn9zv3+5OD+/rdrauJfWKYv7j6+ku4+3nxnme4+3Xp58tVY
mk/2fzx8+eLrL8d/vyWx/zPunPMVfsgrnGtvrr259v4L194lpH6fd/ipnjLeR/dPYKc7WMWjo9PD
w42Qj9pGOjxOGz31k43TdnQYT9PRQT6Mv8Hh/rWJ33p48miY5+OjdPerW8d7X71Yj/fq6Eb/4Sjs
ng4TfLh/Y/fl0cub5f7y/NH23sMXB3vjg+DlLx3Wb5bbjzfL7VfvHNZvP9i7s/ri3vLj/o2zpwf3
h2n/0nK8/uzF3evPfnpnOZ7tPzz65sla//V9Pb+5eevh0aPXS6q8XVLrj5W93fHBsn1Z9/GRsJ7z
9lfnS/P1Uhz//eD+rcc/P59n6+cV715/8ksfAo8f3L/zbL0dnO6u/vpJ7bDTdP5MpvNp7ezvYzuf
6s7+Prp/Ajt7TgfHJ+NLdyMdH5ehZukbhweHpxtH+aAdr2qsR3U1l+cHL89Hv3p5ftrn52k+fzbz
mXvONJpPY895v+amdVUN2FYDts2AbTNg2wzYNgO2zYBtM2DbDC03Q8tNTZuadjXtatrVtKtpV9Ou
pl1Nu5p2NTVVZzFVZzFVZzFVZzFVZzFVZzFVZzFVZzFVZzFVZzFVZzFVZzFVZzFVZzFVZzFVZzFV
ZzFVZzFVZzFVZzFVZzFVZzFVZzFVZzFVZzFVZzFVZzFVZzFVZzFVZzFVZzFVZzFVZzFVZzFVZzFV
ZzFVZzFVZzFVZzFVZzFVZzFVZzFVZzFVZzFVZzFVZzFVZzFVZzFVZzEzZzEzZzEzZzEzZzEzZzEz
ZzEzZzEzZzEzZzEzZzEzZzEzZzEzZzEzZzEzZzEzZzEzZzEzZzEzZzEzZzEzZzEzZzEzZzEzZzEz
ZzEzZzEzZ6lqWtVUSFqEpEVIWoSkRUhahKRFSFqEpEVIWoSkRUhahKRFSFqEpEVIWoSkRUhahKRF
SFqEpEVIWoSkICQFISkISUFICkJSEJKCkBSEpCAkBSEpCElBSApCUhCSgpAUhKQgJAUhKQhJQUgK
QlIQkoKQFISkICQFISkISUFICkJSEJKCkBSEpCAkBSEpCElBSApCUhCSgpAUhKQgJAUhKQhJQUgK
QlIQkoKQFISkYPZoEKOCGBXEqCBGBTEqiFFBjApiVBCjghgVxKggRgUxKohRQYwKYlQQo4IYFcSo
IEYFMSqIUUGMCmJUEKPkc6jyOVT5HKp8DlU+hyqfQ5XPocrnUOVzqPI5VPkcqnwOVT6HKp9Dlc+h
yudQ5XOo8jlU+RyqfA5VPocqn0OVz6HK51Dlc6jyOVT5HKp8DlU+hyqfQ5XPocrnUOVzqPI5VPkc
qnwOVT6HKp9Dlc+hyudQ5XOo8jlU+RyqfA5VPocqn0OVz6HK51Dlc6jyOVT5HKp8DlU+hyqfQ5XP
ocrnUOVzqPI5VPkcqnwOVT6HKp9Dlc+hyudQ5XOo8jlU+RyqfA5VPocqn0OVz6HK51Dlc6jyOVT5
HKp8DlU+hyqfQ5XPocrnUOVzqPI5VPkcqnwOVT6HKp9Dlc+hyudQ5XOo8jlU+RyqfA5VPocqn0OV
z6HK51Dlc6jyOVT5HKp8DlU+hyqfQ5XPocrnUOVzqPI5VPkcqnwOVT6HKp9Dlc+hyudQ5XOo8jkM
gZqKURI8VAkeqgQPVYKHKsFDleChSvBQJXioEjxUCR6qBA9VgocqwUOV4KFK8FAleKgSPFQJHqoE
D1WChyrBQ5XgoUrwUCV4qBI8VAkeqgQPVYKHKsFDleChSvBQJXioEjxUCR6qBA9VgocqwUOV4KFK
8FAleKgSPFQJHqoED1WChyrBQ5XgoUrwUCV4qBI8VAkeqgQPVYKHKsFDleChSvBQJXioEjxUCR6q
BA9VgocqwUOV4KFK8FAleKgSPFQJHqoED1WChyrBQ5XgoUrwUCV4qBI8VAkeqgQPVYKHKsFDleCh
SvBQJXioEjxUCR6qBA9VgocqwUOV4KFK8FAleKjnBA8fGMV6222ySgtRpYWo0kJUaSGqtBBVWogq
LUSVFqJKC1GlhajSQlRpIaq0EFVaiCotRJUWokoLUaWFqNJCVGkhqrQQVVqIKi1ElRaiSgtRpYWo
0kJUaSGqtBBVWogqLUSVFqJKC1GlhajSQlRpIaq0EFVaiCotRJUWokoLUaWFqNJCVGkhqrQQVVqI
Ki1ElRaiSgtRpYWo0kJUaSGqtBBVWogqLUSVFqJKC1GlhajSQlRpIaq0EFVaiCotRJUWokoLUaWF
qNJCVGkhqrQQVVqIKi1ElRaiSgtRpYWoskBUWSCqLBBVFogqC0SVBaLKAlFlgaiyQFRZIKosEFUW
iCoLRJUFosoCUWWBqJI+VEkfqqQPVdKHKulDlfShSvpQJX2okj5USR+qpA9V0ocq6UOV9KFK+lAl
faiSPlRJH6qkD1XShyrpQ5X0oUr6UCV9qJI+VEkfqqQPVdKHKulDLSKQLBBVFogqC0SVBaJK+lAl
faiSPlRJH6qkD1XShyrpQ5X0oUr6UCV9qJI+VEkfqqQPVdKHKulDlfShSvpQJX2okj5USR+qpA9V
0ocq6UOV9KFK+lAlfaiSPlRJH6qkD1XShyrpQ5X0oUr6UCV9qJI+VDkeqhwPQ6Bi4oukD1XShyrp
Q5X0oUr6UCV9qJI+VEkfqqQPVdKHKulDlfShSvpQJX2okj5USR+qpA9V0ocq6UOV9KFK+lAlfaiS
PlRJH6qkD1XShyrpQ5X0oUr6UCV9qEUEsp9+tZ9+tZ9+tZ9+tZ9+tZ9+tZ9+tZ9+tZ9+tZ9+tZ9+
tZ9+tZ9+tZ9+tZ9+tZ9+tZ9+tZ9+tZ9+tZ9+tZ9+tZ9+tZ9+tZ9+tZ9+tZ9+tZ9+tZ9+tZ9+tZ9+
tZ9+tZ9+tZ9+tZ9+tZ9+tZ9+tZ9+tZ9+tZ9+tZ9+tZ9+tZ9+tZ9+tZ9+tZ9+tZ9+tZ9+tZ9+tZ9+
tZ9+tZ9+tZ9+tZ9+tZ9+tZ9+tZ9+tZ9+tZ9+tZ9+tZ9+tZ9+tZ9+tZ9+tZ9+tZ9+tZ9+tZ9+tZ9+
tZ9+tX1+tX1+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+
tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+
tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+
tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+
tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+
tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+
tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+tVt+
tVt+tVt+tVt+tVt+Pe+W/75lXFuPzk7+ZfnWB1wyq0xnlekHVZn+S1q/WS44ywVnueAsF5zlgrNc
cJYLznLBWS44ywVnueAsF5zlgrNccJYLznLBWS44ywVnueAsF5zlgrNccJYLznLBWS44ywU/Yrng
H0zrN8sRZzniLEec5YizHHGWI85yxFmOOMsRZzniLEec5YizHHGWI85yxFmOOMsRZzniLEec5Yiz
HHGWI85yxFmOOMsRZzniH1CO+MdEyX4lr+v71CJ+qpy076P7J8APebgK7bQcLBsHB+lgIx2UsNGO
27Kx9OPDfhiPeztqv7rcc/VPSxzXJZPx6o+H39w52wsPzx7c3z47+ub2o7tn3x/efLIufzx7ub93
ez3O3v79L5/fvL6Zb25unz14uS7T3Ew3r998effxzZ/uPr4db24e39m9dl5euXNj69XxteXOYdj+
dv/p2dn+tV8qGb1Sbl//utzeeadk9P6DvVt5XaK5Lt384trV9f28Lvs8eXTreG9v9fzk5a2h29ay
v3dndVn3/R8P12WqjzfflroerUtdn249evDybQloWY9/59XXeV1COu7x7OTzq2cP4vbZ/lZfnexd
Pbv5+Nmjw6d9jH/n4YMxx/61W33vy79+Wqzj04T+jCY0955pOHPvmSb0X7f3XDqpvY8NfaqnzPfR
/RPY6Vf14PCoL3UjH+ZlHIbj8cZBjHHjtIV+lNo4EaeDD12m/71L0uYp+3sPX+zfv7Pav799evz5
2Yv9r26Wm08/4d17msWnYhaf1o78Pnbxqe7I76P7x3ja/7pbTzM20YxNNGMTzdhEMzbRjE00YxPN
2EQzNtGMTTRjE83YRDM20YxNNGMT3dhENzbRjU10YxPd2EQ3NtGNTXRjE93YRDc20Y1NdGMT3dhE
NzbRjU10YxPd2EQ3NtGNTXRjE93YRDc20Y1NdGMT3dhENzbRjU10YxPd2EQ3NtGNTXRjE93YRDc2
0Y1NdGMT3dhENzbRjU10YxPd2EQ3NtGNTXRjE93YRDc20Y1NdGMT3dhENzbRjU10YxPd2EQ3NtGN
TXRjE93YRDc20Y1NdGMT3dhENzbRjU10YxPd2EQ3NtGNTXRjE93YRDc20Y1NdGMT3dhENzbRjU10
YxPd2EQ3NtGNTXRjE93YRDc20Y1NdGMT3fh5F6O6GNXFqC5GdTGqi1FdjOpiVBejuhjVxaguRnUx
qotRHYwaZ4CVgkVBUBAVJAVZQVFQFTQFarqo6aKmi5ouarqo6aKmi5ouarqo6aKmQU2DmgY1DWoa
1DSoaVDToKZBTYOaRjWNahrVNKppVNOoplFNo5pGNY1qmtQ0qWlS06SmSU2TmiY1TWqa1DSpaVbT
rKZZTbOaZjXNaprVNKtpVtOspkVNi5oWNS1qWtS0qGlR06KmRU2LmlY1rWpa1bSqaVXTqqZVTaua
VjWtatrUtKlpU9Ompk1Nm5o2NW1q2tS0qWlX066mXU27mnY17Wra1bSraVdTMcr2o832o832o832
o832o832o832o832o832o832o832o832o832o832o832o832o832o832o832o832o832o832o832
o832o832o832o832o832o832o832o832o832o832o832o832o832o832o832o832o832o832o832
o832o832o832o832o832o832o0OgpmKU/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib
/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib
/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib
/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib
/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib
/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib
/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib
/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uib/Uhb+O1pUf4NqooZ/JrBrxn8msGvGfyawa8Z/JrBrxn8
msGvGfyawa8Z/JrBrxn8msGvGfyawa8Z/JrBrxn8msGvGfyawa8Z/JrBr988+PVnaMJzXsU2Vk0/
Gt96Gyft6HgjpfE/vRyGjaPxhPNxOEp9Ofrvqcz8P+9Tifno2S/f59P1vew+Pr6x+2QvbuejG/ce
3X1064fDuH36IGw9Phjym98sx59Uge40gz/KDD6Bov358uceMM3gv3UPuFTY/j528KkW5b+P7h/j
aa9/9ZfD7569eH7y3fPzv4xj3sb3D082xiV/+eGbs2cH64PfxvGzox+ennzz/fML2V9Wq2UjvJ7l
42RM/Raa/bMn9mvGTr+y3cFb2rUm3XWT7rpJd92ku27SXTfprpt010266ybddZPuukl33aS7btJd
N+mum3TXTbrrJt11k+66SXfdpLtu0l036a6bdNdNuusm3XWT7rpJd92ku27SXTfprpt010266ybd
dZPuukl33aS7btJdN+mum3TXTbrrJt11k+66SXfdpLtu0l036a6bdNdNuusm3XWT7rpJd92ku27S
XTfprpt010266ybddZPduslu3WS3brJbN9mtm+zWTXbrJrt1k926yW7dZLdusls32a2b7NZNdusm
u3WT3brJbt1kt26yWzfZrZvs1k126ya7dZPduslu3WS3brJbN9mtm+zWTXbrJrt1k926yW7dZLdu
sls32a2b7NZNdusmu3WT3brJbt1kt26yWzfZrZvs1k126ya7dZPduslu3WS3brJbN9mtm+zWTXbr
Jrt1k926yW7dZLdusls32a2b7NZNdusmu3WT3brJbt1kt26yWzfZrZvs1k126ya7dZPduslu3WS3
brJbN9mtm+zWTXbrJrt1k926yW7dZLdusls32a2b7NZNdusmu3WT3brJbt1kt26yWzfZrZvs1k12
6ya7dZPduslu3WS3brJbN9mtm+zWTXbrJrt1k926yW7dZLdusls32a2b7NZNdusmu3WT3brJbt1k
t26yWzfZrZvs1k126ya7dZPduslu3WS3brJbN9mtm+zWTXbrJrt1k926yW7dZLdusls32a2b7NZN
duuWxCh5pJs80k0e6SaPdJNHuskj3eSRbvJIN3mkmzzSTR7pJo90k0e6ySPd5JFu8kg3eaSbPNJN
Hukmj3STR7rJI93kkW7ySDd5pJs80k0e6SaPdJNHuskj3eSRbvJIN3mkmzzSTR7pJo90k0e6ySPd
5JFu8kg3eaSbPNJNHukmj3STR7rJI92kjW7SRjdpo5u00U3a6CZtdJM2ukkb3aSNbtJGN2mjm7TR
TdroJm10kza6SRvdpI1u0kY3aaObtNFN2ugmbXSTNrpJG92kjW7SRjdpo4dATYUkeaSbPNJNHukm
j3STR7rJI93kkW7ySDd5pJs80k0e6SaPdJNHuskj3eSRbllIkli6SSzdJJZuEks3iaWbxNJNYukm
sXSTWLpJLN0klm4SSzeJpZvE0k1i6SaxdJNYukks3SSWbhJLN4mlm8TSTWLpJrF0k1i6SSzdJJZu
Eks3iaWbxNJNYukmsXSTWLpJLD0EWUFV0BSomAgksXSTWLpJLN0klm4SSzeJpZvE0k1i6SaxdJNY
ukks3SSWbhJLN4mlm8TSTWLpJrF0k1i6SSzdJJZuEks3iaWbxNJNYukmsXSTWLpJLN0klm4SSzeJ
pYdATYUkmaabTNNNpukm03STabrJNN1kmm4yTTeZpptM001i6SaxdJNYukks3SSWbhJLN4mlm8TS
TWLpJrF0k1i6SSzdJJZuEks3iaWbPNJNHukmj3STR7rJI93kkW7ySDd5pJs80k0e6SaPdJNHuskj
3eSRbvJIN3mkmzzSTR7pJo90O+eR/n3bHczg1wx+zeDXDH7N4NcMfs3g1wx+zeDXDH7N4NcMfs3g
1wx+zeDXDH7N4NcMfs3g1wx+zeDXDH7N4NcMfs3g1wx+fcTg1x/Y7uBfNgRvRQgsQmARAosQWITA
IgQWIbAIgUUILEJgFQKrEFiFwCoEViGwCoHVr7IqJlYxsYqJVUysYmIVE6uYWMXEKiZWMbGKiVVM
rGJiFROrmFjFxComVjGxiolVTKxiYhUTq5hYxcQqJlYxsYqJVUysYmIVE6uYWMXEKiZWMbGKiVVM
rGJiFROrmFjFxComVjGxiolVTKxiYhUT///s/UuTLMlxp31+ld60SG/AOubuZqa64CKuMouRnlmM
yLtsAcHTDfBSRTkFsF9++8lAunoWf/ICxKUKB93tGyIZlSdSw8PcH41Q8/8z/Zg2heQUklNITiE5
heQUklNITiE5heQUklNITiE5heQUklNITj+mTak5heQUklNITiE5heQUklNITiE5heQUklNITiE5
heQUklNITiE5heT0U9kUSVMkTZE0RdIUSVMkTZE0RdIUSVMkhUgKkRQiKURSiKQQSSGSQiSFSAqR
FCIpRFKIpBBJIZJCJIVICpEUIilEUoikEEkhkkIkhUgKkRQiKURSiKQQSSGSQiSFSAqRFCIpRFKI
pBBJIZJCJIVICpEUIilEUoikEEkhkkIkhUgKkRQiKURSiKQQSSGSQiSFSAqRFCIpRFKIpBBJIZJC
JIVICpEUIilEUoikEEkhksIPciGjQkaFjAoZFTIqZFTIqJBRIaNCRoWMChkVMkrlUag8CpVHofIo
VB6FyqNQeRQqj0LlUag8CpVHofIoVB6FyqNQeRQqj0LlUag8CpVHofIoVB6FyqNQeRQqj0LlUag8
CpVHofIoVB6FyqNQeRQqj0LlUag8CpVHofIoVB6FyqNQeRQqj0LlUag8CpVHofIoVB6FyqNQeRQq
j0LlUag8CpVHofIoVB6FyqNQeRQqj0LlUag8CpVHofIoVB6FyqNQeRQqj0LlUag8CpVHofIoVB6F
yqNQeRQqj0LlUag8CpVHofIoVB6FyqNQeRQqj0LlUag8CpVHofIoVB6FyqNQeRQqj0LlUag8CpVH
ofIoVB6FyqNQeRQqj0LlUag8CpVHofIoVB6FyqNQeRQqj0LlUag8CpVHofIoVB6FyqNQeRQqj0Ll
Uag8CpVHqfIoVR6lyqNUeZQqj1LlUao8SpVHqfIoVR6lyqNUeZQqj1LlUao8SpVHqfIoVR6lyqNU
eZQqj1LlUao8SpVHqfIoVR6lyqNUeZQqj1LlUao8SpVHqfIoVR6lyqNUeZQqj1LlUao8SpVHqfIo
VR6lyqNUeZQqj1LlUao8SpVHqfIoVR6lyqNUeZQqj1LlUao8SpVHqfIoVR6lyqNUeZQqj1LlUao8
SpVHqfIoVR6lyqNUeZQqj1LlUao8SpVHqfIoVR6lyqNUeZQqj1LlUao8SpVHqfIoVR6lyqNUeZQq
j1LlUao8SpVHqfIoVR7lu/LoK9lwz+HXOfw6h1/n8Oscfp3Dr3P4dQ6/zuHXOfw6h1/n8Oscfp3D
r3P4dQ6/zuHXOfw6h1/n8Oscfp3Dr3P4dQ6/zuHXOfz68YdfX/H2sH9vKPvlr77/9Xdf/u2bl6Bs
//lnv/r215+//Pef/+Lz4ST7S3jY/rBK/tN/+a/fffv5R3Ckvb0RrpB0haQrJF0h6QpJV0i6QtIV
Ym/Q7A2avUGzN2j2Bs3eoNkbNHuDZm/Q7A2avUGzN2j2Bs3eoNkbNHuDZm/Q7A2avUGzN2j2Bs3e
oNkbNHuDZm/Q7A2avUGzN2j2Bs3eoNkbNHuDZm/Q7A2avUGzN2j2Bs3eoNkbNHuDZm/Q7A2avUGz
N2j2Bs3eoNkbNHuDZm/Q7A2avUGzN2j2Bs3eoNkbNHuDZm/Q7A2avUGzN2j2Bs3eoNkbNHuDZm/Q
7A2avUGzN2j2Bs3eoNkbNHuDZm/Q7A2avUGzN2j2Bs3eoNkbNHuDZm/Q7A2avUGzN2j2Bs3eoNkb
NHuDZm/Q7A2avUFLK5VRTUY1GdVkVJNRTUY1GdVkVJNRi4xaZNQioxYZtcioRUYtMmqRUYuMWmTU
IqMWGbXIqEVGLTJqkVGLjFpk1CKjFhm1yKhFRi0yapFRi4xaZNQioxYZtcioRUYtMmqRUYuMWmTU
IqMWGbXIqEVGLTJqkVGLjFpk1CKjFhm1yKhFRi0yapFRi4xaZNQioxYZtcioRUYtMmoRSYtIWkTS
IpIWkbSIpEUkLSJpEUmLSFpE0iKSFpG0iKRFJC0iaRFJi0haRNIikhaRtIikRSQtImkRSYtIWkTS
IpIWkWTufZp7n+bep7n3ae59mnuf5t6nufdp7n2ae5/m3qe592nufZp7n+bep7n3ae59mnuf5t6n
ufdp7n2ae5/m3qe592nufZp7n+bep7n3ae59mnuf5t6nufdp7n2ae5/m3qe592nufZp7n+bep7n3
ae59mnuf5t6nufdp7n2ae5/m3qe592nufZp7n+bep7n3ae59mnuf5t6nufdp7v3bA1YqkgzCT4Pw
0yD8NAg/DcJPg/DTIPw0CD8Nwk+D8NMg/DQIPw3CT4Pw0yD8NAg/DcJPg/DTIPw0CD8Nwk+D8NMg
/DQIPw3CT4Pw0yD8NAg/DcJPg/DTIPw0CD8Nwk+D8NMg/DQIPw3CT4Pw0yD8NAg/DcJPg/DTIPw0
CD8Nwk+D8NMg/DQIPw3CT4Pw0yD8NAg/DcJPg/DTIPw0CD8Nwk+D8NMg/DQIPw3CT4Pw0yD8NAg/
DcJPg/DTIPw0CD8Nwk+D8NMg/DQIPw3CT4Pw0yD8NAg/DcJPg/DTIPw0CD8Nwk+D8NMg/DQIPw3C
T4Pw0yD8NAg/DcJPg/DTIPw0CD8Nwk+D8NMg/DQIPw3CT4Pw0yD8NAg/DcJPg/DTIPw0CD8Nwk+D
8NMg/DQIPw3CT4Pw0yD8NAg/DcJPg/DTIPw0CD8Nwk+D8NMg/DQIPw3CT4Pw0yD8NAg/DcJPg/DT
IPw0CD8Nwk+D8NMg/DQIPw3CT4Pw0yD8NAg/DcJPg/DTIPw0CD8Nwk+D8NMg/DQIPw3CT4Pw0yD8
fA/C/0qOtHP4dQ6/zuHXOfw6h1/n8Oscfp3Dr3P4dQ6/zuHXOfw6h1/n8Oscfp3Dr3P4dQ6/zuHX
Ofw6h1/n8Oscfp3Dr3P4dQ6/fvzh11+zIy31Uqde6tRLnXqpUy916qVOvdSplzr1Uqde6tRLnXqp
Uy916qVOvdSplzr1Uqde6tRLnXqpUy916qVOvdSplzr1Uqde6tRLnXqpUy916qVOvdSplzr1Ur89
YKVSU1F1KqpORdWpqDoVVaei6lRUnYqqU1F1KqpORdWpqDoVVaei6lRUnYqqU1F1KqpORdWpqDoV
Vaei6lRUnYqqU1F1KqpORdWpqDoVVaei6lRUnYqqU1F1KqpORdWpqDoVVaei6lRUnYqqU1F1KqpO
RdWpqDoVVaei6lRUnYqqU1F1KqpORdWpqDoVVaei6lRUnYqqU1F1KqpORdWpqDoVVaei6lRUnYqq
U1F1KqpORdWpqDoVVaei6lRUnYqqU1F1KqpORdWpqDoVVaei6lRU/fbA8IHpA+EDViqjNFen5urU
XJ2aq1NzdWquTs3Vqbk6NVen5urUXJ2aq1NzdWquTs3Vqbk6NVen5urUXJ2aq1NzdWquTs3Vqbk6
NVen5urUXJ2aq1NzdWquTs3Vqbk6NVen5urUXJ2aq1NzdWquTs3Vqbk6NVen5uq3B6xURqmyTlXW
qco6VVmnKutUZZ2qrFOVdaqyTlXWqco6VVmnKutUZf32gJXKKN3Wqds6dVunbuvUbZ26rVO3deq2
Tt3Wqds6dVunbuvUbZ26rVO3deq2Tt3Wqds6h4wyTD8N00/D9NPs/DQ7P83OT7Pz0+z8NDs/zc5P
s/PT7Pw0Oz/Nzk+z89Ps/DQ7P83OT7Pz0+z8NDs/zc5Ps/PT7Pw0Oz/Nzk+z89Ps/DQ7P83OT7Pz
0+z8NDs/zc5Ps/PT7Pw0Oz+Nyk+j8tOo/DQqP43KT6Py06j8NCo/jcpPo/LTqPw0Kj+Nyk+j8tOo
/DQqP43KT6Py06j8NCo/jcpPo/LTqPw0Kj+Nyk+j8tOo/DQqP43KT6Py06j8NCo/jcpPo/LTqPw0
Kj+Nyk+j8tOo/DQqP43KT6Py3x6wUglkdn6anZ9m56fZ+Wl2fpqdn2bnp9n5aXZ+mp2fZuen2flp
dn6anZ9m56fZ+Wl2fpqdn2bnp9n5aXZ+mp2fZuen2flpdn6anZ9m56fZ+Wl2fpqdn2bnp9n5aXZ+
mp2fZuen2flpdn6anZ9m56fZ+Wl2fpqdn2bnp9n5aXZ+mp2fZuen2flpdn6anZ9m56fZ+Wl2fpqd
n2bnp9n5aXZ+mp2fZuen2flpdn6anZ9m56fZ+Wl2fpqdn2bnp9n5aXZ+mp2fZuen2flpdn6anZ9m
56fZ+Wl2fpqdn2bnp9n5aXZ+mp2fZuen2flpdn6anZ9m56fZ+Wl2fpqdn2bnp9n5aXZ+mp2fZuen
2flpdn6anZ9m56fZ+Wl2fpqdn2bnp9n5aXZ+mp2fZuen2flpdn6anZ9m56fZ+Wl2fpqdn2bnp9n5
aXZ+mp2fZuen2fn5np3/lRxp5/DrHH6dw69z+HUOv87h1zn8Oodf5/DrHH6dw69z+HUOv87h1zn8
Oodf5/DrHH6dw69z+HUOv87h1zn8Oodf5/DrHH79+MOvvxpH2m9/ePuDP3upyd7+yTe/+fafvvv5
q4Sf/f13v/jNP3/+9tff74998+nT+IsZ0/6Uuv5Qf9qXz99/95svv/j8/TevB3/58y9vh/f7v/mH
7/+Uf/bl87989+XXv/cf/wkH5c85jr+/zN+18P4UX93vPdK/v56/ZCV/YGyoAvdU4J4K3FOBeypw
TwXuqcA9Fbjnu8D9a4Wn/nUdha94mfzjLxJ/whvzl76u/KgXiT/lEv2XuGT86HX9+Xj6WXs/2z79
zVw/zVcDPPun13d586+Qpb+72P91j/9SL2mMvi35+rC0fFrb9td4+H9XrT/J0f/db/aPbdvtfzW2
3f4Td4v/y4PgR+vO+p970f+R+9b+B15s/v67f/7m87/+9lR5vP7n//32XJ+//fzl//Mvv/7Vd99+
/7Nf/Pxffv2bL59/whX9x1TwV7WS/+SV9ce84j/xtf5VNlU/7uv22f5/P//yPz7/+mc///u//3dP
/hdcub+vgv99rsE/2rL/fYfr9x6or79y/+TSf9+6+cXbOfDrL7/5xa9/9Xf/9Plvfv7tv/1RS/fy
7b/9v95+/c9evf/PVfzveeH9vS/5f+cr75/5wv/gp/upjsIfUcBf2yH5n999+cc/kkr/12//yfc/
weH5QTH/h53hP3jl/0ee6H/U6/9jn/UPPyZv1Hpf3T/d4v6rWCz/y54g//D9iYMf+bj8/a++/5ef
//oXv/ztYz/78vntM8+3//rzf/rN57/8R5XfX8r/1kj4/S/9/wAm/LkH4M+ZTP2P3/zTT7jYf4zK
/vdY+z/GkfhxrnNf+dr2R72nf9BR+2+/+vbvP//fP91eij96JX/5K9ia8Ze/uP3kK/xPuqp8+V+n
4mMdf91ryB833Rh/NRO28X9Yp/R/ZHf0R3Dw27ez4Ptv7vv8+We/+PL557/+/P4kP+Wnn9/7Z7/W
+/2/6Ch3/G+3xn+a1/87ls+Xz//83b9+/sozuN9VxLkV4kcEw+86yD/lLogfs5Q/aKPotn369ze1
vB5YfWDzge4DwwemD4QPJA/8+5taXg80H7DSzUo3K92sdLPSzUo3K92stFtpt9Jupd1Ku5V2K+1W
2q20W2m30mGlw0qHlQ4rHVY6rHRY6bDSYaXDSqeVTiudVjqtdFrptNJppdNKp5VOKw0rDSsNKw0r
DSsNKw0rDSsNKw0rTStNK00rTStNK00rTStNK00rTSptnz75QPOBxQdWH9h8oPvA8IHpA+EDVtqs
tFlps9Jmpc1Km5U2K21W2qy0WelipYuVLla6WOlipYuVLla6WOlipYuVrla6WqmMajKqyagmo5qM
ajKqyagmo5qMajKqyagmo5qMajKqyagmo5qMajKqyagmo5qMajKqyagmo5qMajKqyagmo5qMajKq
yagmo5qMajKqyagmo5qMajKqyagmo5qMajKqyagmo5qMajKqyagmo5qMajKqyagmo5qMajKqyagm
o5qMajKqyagmo5qMajKqyagmo5qMajKqyagmoxYZtcioRUYtMmqRUYuMWmTUIqMWGbXIqEVGLTJq
kVGLjFpk1CKjFhm1yKhFRi0yapFRi4xaZNQioxYZtcioRUYtMmqRUYuMWmTUIqMWGbXIqEVGLTJq
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
ShmVMiplVMqolFEpo1JGpYxKGZUyKmVUyqiUUSmjUkaljEoZlTIqZVTKqJRRKaNSRqWMShmVMipl
VMqolFEpo1JGpYxKGZUwqn+CUW8PNB9YfGD1gc0Hug8MH5g+ED5gpc1Km5U2K21W2qy0WWmz0mal
zUqblS5WuljpYqWLlS5WuljpYqWLlS5WuljpaqWrla5WulrpaqWrla5WulrpaqWrlW5WulnpZqWb
lW5WulnpZqWblW5Wullpt9Jupd1Ku5V2K+1W2q20W2m30m6lw0qHlQ4rHVY6rHRY6bDSYaXDSoeV
TiudVjqtdFrptNJppdNKp5VOK51WGlYaVhpWGlYaVhpWGlYaVhpWGlaaVppWmlaaVppWmlaaVppW
mlYqo4yj78bRd+Pou3H03Tj6bhx9N46+G0ffjaPvxtF34+i7cfTdOPpuHH03jr4bR9+No+/G0Xfj
6Ltx9N04+m4cfTeOvhtH342j78bRd+Pou3H03Tj6bhx9N46+G0ffjaPvxtF34+i7cfTdOPpuHH03
jr4bR9+No+/G0Xfj6Ltx9N04+m4cfTeOvhtH342j78bRd+Pou3H03Tj6bhx9N46+G0ffjaPvxtF3
4+i7cfTdOPpuHH03jr4bR9+No+/G0Xfj6Ltx9N04+m4cfTeOvhtH342j78bRd+Pou3H03Tj6bhx9
N46+G0ffjaPvxtF34+i7cfTdOPpuHH03jr4bR9+No+/G0Xfj6Ltx9N04+m4cfTeOvhtH342j78bR
d+Pou3H03Tj6bhx9N46+G0ffjaPvxtF34+i7cfTdOPpuHH03jr4bR9+No+/G0Xfj6Ltx9N04+m4c
fTeOvhtH342j78bRd+Pou3H03Tj6bhx9N46+G0ffjaPvxtF34+j78lUdYufw6xx+ncOvc/h1Dr/O
4dc5/DqHX+fw6xx+ncOvc/h1Dr/O4dc5/DqHX+fw6xx+ncOvc/h1Dr/O4dc5/DqHX+fw6xx+/ejD
r697h9jff/fP33z+18/f/vr7b/6/X777H18+f//94/X//vaf/zRzud/7J//Tf/mv3337+Udwn3XF
1l2xdVds3RVbd8XWXbF1V2zdFVt3xdZdsXVXbN0VW3fF1l2xdVds3RVbd8XWXbF1V2zdFVt3xdZd
sXVXbN0VW3fF1l2xdVds3RVbd8XWXbF1V2zdFVt3xdZdsXVXbN0VW3fF1l2xdVds3RVbd8XWXbF1
V2zdFVt3xdZdsXVXbN0VW3fF1l2xdVds3RVbd8XWXbF1V2zdFVt3xdZdsXVXbN0VW3fF1l2xdVds
3RVbd8XWXbF1V2zdFVt3xdZdsXVXbN0VW3fF1l2xdVds3RVbd8XWXbF1V2zdFVt3xdZdsXVXbN0V
W3fF1l2xdVds3RVbd8XWXbF1V2zdFVt3xdZdsXVXbN0VW3fF1l2xdVds3RVbd8XWXbF1V2zdFVt3
xdZdsXVXbN0VW3fF1l2xdVds3RVbd8XWXbF1V2zdFVt3xdZdsXVXbN0VW3fF1l2xdVds3RVbd8XW
XbF1V2zdFVt3xdZdsXVXbN0VW3fF1l2xdVds3RVbd8XWXbF1V2zdFVt3xdZdsXVXbN0VW3fF1l2x
dVds3RVbd8XWXbF1V2zdFVt3xdZdsXVXbN0VW3fF1l2xdVds3RVbd8XWXbF1V2zdFVt3xdZdsXVX
bN0VW3fF1l2xdVds3RVbd8XWXbF1V2zdFVt3xdZdsXVXbN0VW3fF1l2xdVds3RVbd8XWXbF1V2zd
FVt3xdZdsXVXbN0VW3fF1l2xdVds3RVbd8XWXbF1V2zdNxlljH43Rr8bo9+N0e/G6Hdj9Lsx+t0Y
/W6MfjdGvxuj343R78bod2P0uzH63Rj9box+N0a/G6PfjdHvxuh3Y/S7MfrdGP1ujH43Rr8bo9+N
0e/G6Hdj9Lsx+t0Y/W6MfjdGvxuj343R78bod2P0uzH63Rj9box+N0a/G6PfjdHvxuh3Y/S7Mfrd
GP1ujH43Rr8bo9+N0e/G6Hdj9Lsx+t0Y/W6MfjdGvxuj343R78bod2P0uzH63Rj9box+N0a/G6Pf
jdHvxuh3Y/S7MfrdGP1ujH43Rr8bo9+N0e/G6Hdj9Lsx+t0Y/W6MfjdGvxuj343R78bod2P0uzH6
3Rj9box+N0a/G6PfjdHvxuh3Y/S7MfrdGP1ujH43Rr8bo9+N0e/G6Hdj9Lsx+t0Y/W6MfjdGvxuj
343R78bod2P0uzH63Rj9box+N0a/G6PfjdHvxuh3Y/S7MfrdGP1ujH43Rr8bo9+N0e/G6Hdj9Lsx
+t0Y/W6MfjdGvxuj343R78bod2P0uzH63Rj9box+N0a/G6PfjdHvxuh3Y/S7MfrdGP1ujH43Rr8b
o9+N0e/G6Hdj9Lsx+t0Y/W6MfjdGvxuj343R78bod2P0uzH63Rj9box+N0a/G6PfjdHvxuh3Y/S7
MfrdGP1ujH43Rr8bo9+N0e/G6Hdj9Lsx+t0Y/W6MfjdGvxuj343R78bod2P0uzH63Rj9box+N0a/
G6PfjdHvxuh3Y/S7MfrdGP1ujH43Rr8bo9+N0e/G6Hdj9Lsx+n18TffZOfw6h1/n8Oscfp3Dr3P4
dQ6/zuHXOfw6h1/n8Oscfp3Dr3P4dQ6/zuHXOfw6h1/n8Oscfp3Dr3P4dQ6/zuHXOfw6h18//vDr
697Z9vqtb/7uy3f/8/vPX77/5pe/+v7X3335t29+/cvPP9t//tmvvv315y///ee/+PzNp0/zJ7zh
7U+p5A+9D+7L5++/+82XX3z+/pvXg7/8+Ze3o/j93/zD9z/NK/ldf+13vdO/91a///jF/T8slH/8
7svnn3/7zeff/OJn//jl9T//+OXfrZRffP/bx378d/N3v/4vn//luy+//r3H/DiAf+Yr+gNWxY/+
9h4v7yd6k//DmNaugL4roO8K6LsC+q6Aviug7wrouwL6roC+K6DvCui7AvqugL4roO8K6LsC+q6A
viug7wrouwL6roC+K6DvCui7AvqugL4roO8K6LsC+q6Aviug7wrouwL6roC+K6DvCui7AvqugL4r
oO8K6LsC+q6Aviug7wrouwL6roC+K6DvCui7AvqugL4roO8K6LsC+q6Aviug7wrouwL6roC+K6Dv
Cui7AvqugL4roO8K6LsC+q6Aviug7wrouwL6roC+K6DvCui7AvqugL4roO8K6LsC+q6Aviug7wro
uwL6roC+K6DvCui7AvqugL4roO8K6LsC+q6Aviug7wrouwL6roC+K6DvCui7AvqugL4roO8K6LsC
+q6Aviug7wrouwL6roC+K6DvCui7AvqugL4roO8K6LsC+q6Aviug7wrouwL6roC+K6DvCui7Avqu
gL4roO8K6LsC+q6Aviug7wrouwL6roC+K6DvCui7AvqugL4roO8K6LsC+q6Aviug7wrouwL6roC+
K6DvCui7AvqugL4roO8K6LsC+q6Aviug7wrouwL6roC+K6DvCui7AvqugL4roO8K6LsC+q6Aviug
7wrouwL6roC+K6DvCui7AvqugL4roO8K6LsC+q6Aviug7wrouwL6roC+K6DvCui7AvqugL4roO8K
6LsC+q6Aviug7wrouwL6roC+K6DvCui7AvqugL4roO8K6LsC+q6Aviug7wroe8godRdd3UVXd9HV
XXR1F13dRVd30dVddHUXXd1FV3fR1V10dRdd3UVXd9HVXXR1F13dRVd30dVddHUXXd1FV3fR1V10
dRdd3UVXd9HVXXR1F13dRVd30dVddHUXXd1FV3fR1V10dRdd3UVXd9HVXXR1F13dRVd30dVddHUX
Xd1FV3fR1V10dRdd3UVXd9HVXXR1F13dRVd30dVddHUXXd1FV3fR1V10dRdd3UVXd9HVXXR1F13d
RVd30dVddHUXXd1FV3fR1V10dRdd3UVXd9HVXXR1F13dRVd30dVddHUXXd1FV3fR1V10dRdd3UVX
d9HVXXR1F13dRVd30dVddHUXXd1FV3fR1V10dRdd3UVXd9HVXXR1F13dRVd30dVddHUXXd1FV3fR
1V10dRdd3UVXd9HVXXR1F13dRVd30dVddHUXXd1FV3fR1V10dRdd3UVXd9HVXXR1F13dRVd30dVd
dHUXXd1FV3fR1V10dRdd3UVXd9HVXXR1F13dRVd30dVddHUXXd1FV3fR1V10dRdd3UVXd9HVXXR1
F13dRVd30dVddHUXXd1FV3fR1V10dRdd3UVXd9HVXXR1F13dRVd30dVddHUXXd1FV3fR1V0MdRdD
3cVQdzHUXQx1F0PdxVB3MdRdDHUXQ93FUHcx1F0MdRdD3cVQdzHUXQx1F0PdxVB3MdRdDHUXQ93F
UHcx1F0MdRdD3cVQdzHUXQx1F0PdxVB3MT59TUfhOfw6h1/n8Oscfp3Dr3P4dQ6/zuHXOfw6h1/n
8Oscfp3Dr3P4dQ6/zuHXOfw6h1/n8Oscfp3Dr3P4dQ6/zuHXOfw6h18//vDr697J+dd9j+Ofcnfn
n/ia/4A7Df/yt//9NK//P4y4fVuZnjKrp8zqKbN6yqyeMqunzOops3rKbJ4ymyf3ZqWblW5Wulnp
ZqWblW5Wullpt9Jupd1Ku5V2K+1W2q20W2m30m6lw0qHlQ4rHVY6rHRY6bDSYaXDSoeVTiudVjqt
dFrptNJppdNKp5VOK51WGlYaVhpWGlYaVhpWGlYaVhpWGlaaVppWmlaaVppWmlaaVppWmlZqs9Rs
lprNUrNZajZLzWap2Sw1m6Vms9RslprNUrNZajZLzWap2Sw1m6Vms9RslprNUrNZajZLzWap2Sw1
m6Vms9RslprNUrNZajZLzWap2Sw1m6W2WqmMajKqyagmo5qMajKqyagmo5qMajKqyagmo5qMajKq
yagmo5qMajKqyagmo5qMajKqyagmo5qMajKqyagmo5qMajKqyagmo5qMajKqyagmo5qMajKqyagm
o5qMajKqyagmo5qMajKqyagmo5qMajKqyagmo5qMajKqyagmo5qMajKqyagmo5qMajKqyagmo5qM
ajKqyagmoxYZtcioRUYtMmqRUYuMWmTUIqMWGbXIqEVGLTJqkVGLjFpk1CKjFhm1yKhFRi0yapFR
i4xaZNQioxYZtcioRUYtMmqRUYuMWmTUIqNUhQxVIUNVyFAVMlSFDFUhQ1XIUBUyVIUMVSFDVchQ
FTJUhQxVIUNVyFAVMlSFDFUhQ1XIUBUyVIUMVSFDVchQFTJUhQxVIUNVyFAVMlSFDFUhQ1XIUBUy
VIUMVSFDVchQFTJUhQxVIUNVyFAVMlSFDFUhQ1XIUBUyVIUMVSFDVchQFTJUhQxVIUNVyFAVMlSF
DFUhQ1XIUBUyVIUMVSFDVchQFTJUhQxVIUNVyFAVMlSFDFUhQ1XIUBUyVIUMVSFDVchQFTJUhQxV
IUNVyFAVMlSFDFUhQ1XIUBUyVIUMVSFDVchQFTJUhQxVIUNVyFAVMlSFDFUhQ1XIUBUyVIUMVSFD
VchQFTJUhQxVIUNVyFAVMlSFDFUhQ1XIUBUyVIUMVSFDVchQFTJUhQxVIUNVyFAVMlSFDFUhQ1XI
UBUyVIUMVSFDVchQFTJUhQxVIUNVyFAVMlSFDFUhQ1XIUBUyVIUMVSFDVchQFTJUhQxVIUNVyFAV
MlSFDFUhQ1XIUBUyVIUMVSFDVchQFTJUhQxVIUNVyFAVMlSFDFUhQ1XIUBUyVIUMVSFDVchQFTJU
hQxVIUNVyFAVMlSFDFUhQ1XIUBUyVIUMVSFDVchQFTJUhQxVIUNVyFAVMlSFDFUhQ1XIUBUyVIUM
VSFDVchQFTJUhQxVIUNVyFAVMlSFDFUhQ1XIUBUyVIUMVSFDVchQFTJUhQxVIUNVyFAVMlSFDFUh
Q1XI2L6m3/Ecfp3Dr3P4dQ6/zuHXOfw6h1/n8Oscfp3Dr3P4dQ6/zuHXOfw6h1/n8Oscfp3Dr3P4
dQ6/zuHXOfw6h1/n8Oscfp3Drx9/+PV17wr8D6Mz36r08AnOTXBugnMTnJvg3ATnJjg3wbkJzk1w
boJzE5yb4NwE5yY4N8G5Cc5NcG6CcxOcm+DcBOcmODfBuQnOTXBugnMTnJvg3ATnJjg3wbkJzk1w
boJzE5yb4NwE5yY4N8G5Cc5NcG6CcxOcm+DcBOcmODfBuQnOTXBugnMTnJvg3ATnJjg3wbkJzk1w
boJzE5yb4NwE5yY4N8G5Cc5NcG6CswvOLji74OyCswvOLji74OyCswvOLji74OyCswvOLji74OyC
swvOLji74OyCswvOLji74OyCswvOLji74OyCswvOLji74Ox+uOsyqsuoLqO6jOoyqsuoLqO6jOoy
qsuoLqO6jOoyqsuoLqO6jOoyqsuoLqO6jOoyqsuoLqO6jOoyqsuoLqO6jOoyqsuoLqO6jOoyqsuo
LqO6jOoyqsuoLqO6jOoyqsuoLqO6jOoyqsuoLqO6jOoyqsuoLqO6jOoyqsuoLqO6jOoyqsuoLqO6
jOoyqsuoLqO6jOoyqsuoLqO6jBoyasioIaOGjBoyasioIaOGjBoyasioIaOGjBoyasioIaOGjBoy
asioIaOGjBoyasioIaOGjBoyasioIaOGjBoyasioIaOGjFJBMFQQDBUEQwXBUEEwVBAMFQRDBcFQ
QTBUEAwVBEMFwVBBMFQQDBUEQwXBUEEwVBAMFQRDBcFQQTBUEAwVBEMFwVBBMFQQDBUEQwXBUEEw
VBAMFQRDBcFQQTBUEAwVBEMFwVBBMFQQDBUEQwXBUEEwVBAMFQRDBcFQQTBUEAwVBEMFwVBBMFQQ
DBUEQwXBUEEwVBAMFQRDBcFQQTBUEAwVBEMFwVBBMFQQDBUEQwXBUEEwVBAMFQRDBcFQQTBUEAwV
BEMFwVBBMFQQDBUEQwXBUEEwVBAMFQRDBcFQQTBUEAwVBEMFwVBBMFQQDBUEQwXBUEEwVBAMFQRD
BcFQQTBUEAwVBEMFwVBBMFQQDBUEQwXBUEEwVBAMFQRDBcFQQTBUEAwVBEMFwVBBMFQQDBUEQwXB
UEEwVBAMFQRDBcFQQTBUEAwVBEMFwVBBMFQQDBUEQwXBUEEwVBAMFQRDBcFQQTBUEAwVBEMFwVBB
MFQQDBUEQwXBUEEwVBAMFQRDBcFQQTBUEAwVBEMFwVBBMFQQDBUEQwXBUEEwVBAMFQRDBcFQQTBU
EAwVBEMFwVBBMFQQDBUEQwXBUEEwVBAMFQRDBcFQQTBUEAwVBEMFwVBBMFQQDBUEQwXBUEEwVBAM
FQRDBcFQQTBUEAwVBEMFwVBBMFQQDBUEQwXBUEEwVBAMFQRDBcFQQTBUEAwVBEMFwVBBMFQQDBUE
QwXBUEEwVBAMFQQjvqY37hx+ncOvc/h1Dr/O4dc5/DqHX+fw6xx+ncOvc/h1Dr/O4dc5/DqHX+fw
6xx+ncOvc/h1Dr/O4dc5/DqHX+fw6xx+ncOvH3/4dXrjfrc37f/hGPzjd18+//zbbz7/5hc/+8cv
r//5xy//7iD84vvfPvYHvvy//+6fv/n8r5+//fX37//zs7//1fc//7t/+vz3P/v7f/v25//8q1/8
9nl+moPxh/3t//Rf/ut3337+6WR4v/3Hf9hx/m+/+vbvP//fP/bi+Mvb+H7KVXWU9kce0q92BvzH
Oaph5xx2zmHnHHbOYeccds5h5xx2zmHnHHbOYeccds5h5xx2zmHnHHbOYeccds5h5xx2zmHnHHbO
Yeccds5h5xx2zmHnHHbOYeccds5h5xx2zmHnHHbOYeccds5h5xx2zmHnHHbOYeccds5h5xx2zmHn
HHbOYeccds5h5xx2zmHnHHbOYeccds5h5xx2zmHnHHbOYeccds5h5xx2zmHnHHbOYeccds5h5xx2
zmnnnHbOaeecds5p55x2zmnnnHbOaeecds5p55x2zmnnnHbOaeecds5p55x2zmnnnHbOaeecds5p
55x2zmnnnHbOaeecds5p55x2zmnnnH67kzIqZVTKqJRRKaNSRqWMShmVMiplVMqolFEpo1JGpYxK
GZUyKmVUyqiUUSmjUkaljEoZlTIqZVTKqJRRKaNSRqWMShmVMiplVMqolFEpo1JGpYxKGZUyKmVU
yqiUUSmjUkaljEoZlTIqZVTKqJRRKaNSRqWMShmVMiplVMqolFEpo1JGpYxKGZUyKmVUyqiEUfMT
jHp7oPnA4gOrD2w+0H1g+MD0gfABK21W2qy0WWmz0malzUqblTYrbVbarHSx0sVKFytdrHSx0sVK
FytdrHSx0sVKVytdrXS10tVKVytdrXS10tVKVytdrXSz0s1KNyvdrHSz0s1KNyvdrHSz0s1Ku5V2
K+1W2q20W2m30m6l3Uq7lXYrHVY6rHRY6bDSYaXDSoeVDisdVjqsdFrptNJppdNKp5VOK51WOq10
Wum00rDSsNKw0rDSsNKw0rDSsNKw0rDStNK00rTStNK00rTStNK00rRSGaWPYuqjmPoopj6KqY9i
6qOY+iimPoqpj2Lqo5j6KKY+iqmPYuqjmPoopj6KqY9i6qOY+iimPoqpj2Lqo5j6KKY+iqmPYuqj
mPoopj6KqY9i6qOY+iimPoqpj2Lqo5j6KKY+iqmPYuqjmPoopj6KqY9i6qOY+iimPoqpj2Lqo5j6
KKY+iqmPYuqjmPoopj6KqY9i6qOY+iimPoqpj2Lqo5j6KKY+iqmPYuqjmPoopj6KqY9i6qOY+iim
Poqpj2Lqo5j6KKY+iqmPYuqjmPoopj6KqY9i6qOY+iimPoqpj2Lqo5j6KKY+iqmPYuqjmPoopj6K
qY9i6qOY+iimPoqpj2Lqo5j6KKY+iqmPYuqjmPoopj6KqY9i6qOY+iimPoqpj2Lqo5j6KKY+iqmP
YuqjmPoopj6KqY9i6qOY+iimPoqpj2Lqo5j6KKY+iqmPYuqjmPoopj6KqY9i6qOY+iimPoqpj2Lq
o5j6KObyVSWC5/DrHH6dw69z+HUOv87h1zn8Oodf5/DrHH6dw69z+HUOv87h1zn8Oodf5/DrHH6d
w69z+HUOv87h1zn8Oodf5/DrHH796MOvr3uL6B91C9qXn+ze0T+6jL+6W+qO4Nm3t9X1Zqex2Gks
dhqLncZip7HYaSx2GoudxmKnsdhpLHYai53GYqex2GksdhqLncZip7HYaSx2GoudxmKnsdhpLHYa
i53GYqex2GksdhqLncZip7HYaSx2GoudxmKnsdhpLHYai53GYqex2GksdhqLncZip7HYaSx2Goud
xmKnsdhpLHYai53GYqex2GksdhqLncZip7HYaSx2GoudxmKnsdhpLHYai53GYqex2GksdhqLncZi
p7HYaSx2GqudxmqnsdpprHYaq53Gaqex2mmsdhqrncZqp7Haaax2GqudxmqnsdpprHYaq53Gaqex
2mmsdhqrncZqp7Haaax2GqudxmqnsdpprHYaq53Gaqex2mmsfhpeZdQqo1YZtcqoVUatMmqVUauM
WmXUKqNWGbXKqFVGrTJqlVGrjFpl1CqjVhm1yqhVRq0yapVRq4xaZdQqo1YZtcqoVUatMmqVUauM
WmXUKqNWGbXKqFVGrTJqlVGrjFpl1CqjVhm1yqhVRq0yapVRq4xaZdQqo1YZtcqoVUatMmqVUauM
WmXUKqNWGbXKqFVGrTJqlVGrjFpl1CqjVhm1yqhNRm0yapNRm4zaZNQmozYZtcmoTUZtMmqTUZuM
2mTUJqM2GbXJqE1GbTJqk1GbjNpk1CajNhm1yahNRm0yapNRm4zaZNQmozYZtckoBR5TgcdU4DEV
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
TemhKT00pYem9NCUHprSQ1N6aEoPTemhKT00pYem9NCUHprSQ1N6aEoPTemhKT00pYem9NCUHprS
Q1N6aEoPTemhKT00pYem9NCUHprSQ1N6aEoPTemhKT00pYem9NCUHprSQ1N6aEoPTemhKT00pYem
9NCUHprSQ1N6aEoPTemhKT00pYem9NCUHprSQ1N6aEoPTemhKT00pYem9NCUHprSQ1N6aEoPTemh
KT00pYem9NCUHprSQ1N6aEoPTemhKT00pYem9NCUHprSQ1N6aEoPTemhKT00pYem9NCUHprSQ1N6
aEoPTemhKT00pYem9NCUHprSQ1N6aEoPTemhKT00pYem9NCUHprSQ1N6aEoPTemhKT00pYem9NCU
HprSQ1N6aEoPTemhKT00pYem9NCUHprSQ1N6aEoPTemhKT00pYem9NCUHprSQ1N6aEoPTemhKT00
pYem9NCUHprSQ1N6aEoPTemhKT00pYem9NCUHprSQ1N6aEoPTemhKT00pYem9NCUHprSQ1N6aEoP
TemhKT00pYem9NCUHprSQ1N6aEoPTemhKT00pYem9NCUHprSQ1N6aEoPTemhKT00pYem9NCUHprS
Q1N6aEqPRUYZxh+G8Ydh/GEYfxjGH4bxh2H8YRh/GMYfhvGHYfxhGH8Yxh+G8Ydh/GEYfxjGH4bx
h2H8YRh/GMYfhvGHYfxhGH8Yxh+G8Ydh/GEYfxjGH4bxh2H8YRh/GMYfhvGHYfxhGH8Yxh+G8Ydh
/GEYfxjGH4bxh2H8YRh/GMYfhvGHYfxhGH8Yxh+G8Ydh/GEYfxjGH4bxh2H8YRh/GMYfhvGHYfxh
GH8Yxh+G8Ydh/GEYfxjGH4bxh2H8YRh/GMYfhvGHYfxhGH8Yxh+G8Ydh/GEYfxjGH4bxh2H8YRh/
GMYfhvGHYfxhGH8Yxh+G8Ydh/GEYfxjGH4bxh2H8YRh/GMYfhvGHYfxhGH8Yxh+G8Ydh/GEYfxjG
H4bxh2H8YRh/GMYfhvGHYfxhGH8Yxh+G8Ydh/GEYfxjGH4bxh2H8YRh/GMYfhvGHYfxhGH8Yxh+G
8Ydh/GEYfxjGH4bxh2H8YRh/GMYfhvGHYfxhGH8Yxh+G8Ydh/GEYfxjGH4bxh2H8YRh/GMYfhvGH
YfxhGH8Yxh+G8Ydh/GEYfxjGH4bxh2H8YRh/GMYfhvGHYfxhGH8Yxh+G8Ydh/GEYfxjGH4bxh2H8
YRh/GMYfhvGHYfxhGH8Yxh+G8Ydh/GEYfxjGH4bxh2H8YRh/GMYfhvGHYfxhGH8Yxh+G8Ydh/GEY
fxjGH4bxh2H8YRh/GMYfhvGHYfxhGH8Yxh+G8Ydh/GEYfxjGH4bxh2H8sX2FO8TO4dc5/DqHX+fw
6xx+ncOvc/h1Dr/O4dc5/DqHX+fw6xx+ncOvc/h1Dr/O4dc5/DqHX+fw6xx+ncOvc/h1Dr/O4dc5
/PoJh19/nXeIHTGKoR471GOHeuxQjx3qsUM9dqjHDvXYoR471GOHeuxQjx3qsUM9dqjHDvXYoR47
1GOHeuxQjx3qsUM9dqjHDvXYoR471GOHeuxQjx3qsUM9dqjHDvXYoR471GOHeuxQjx3qsUM9dqjH
DvXYoR471GOHeuxQjx3qsUM9dqjHDvXYoR471GOHeuxQjx3qsUM9dqjHDvXYoR471GOHeuxQjx3q
sUM9dqjHDvXYoR471GOHeuxQjx3qsUM9dqjHDvXYoR471GOHeuxQjx3qsUM9dqjHDvXYoR471GOH
euxQjx3qsUM9dqjHDvXYoR471GOHeuxQjx3qsUM9dqjHDvXYoR471GOHeuxQjx3qsUM9dqjHDvXY
oR471GOHeuxQjx3qsUM9dqjHDvXYoR471GOHeuxQjx3qsUM9dqjHDvXYoR471GOHeuxQjx3qsUM9
dqjHDvXYoR471GOHeuxQjx3qsUM9dqjHDvXYoR471GOHeuxQjx3qsUM9dqjHDvXYoR471GOHeuxQ
jx3qsUM9dqjHDvXYoR471GOHeuxQjx3qsUM9dqjHDvXYoR471GOHeuxQjx3qsUM9dqjHDvXYoR47
1GOHeuxQjx3qsUM9dqjHDvXYoR471GOHeuxQjx3qsUM9dqjHDvXYoR471GOHeuxQjx3qsUM9dqjH
DvXYoR471GOHeuxQjx3qsUM9dqjHjiGjjKMP4+jDOPowjj6Mow/j6MM4+jCOPoyjD+Powzj6MI4+
jKMP4+jDOPowjj6Mow/j6MM4+jCOPoyjD+Powzj6MI4+jKMP4+jDOPowjj6Mow/j6MM4+jCOPoyj
D+Powzj6MI4+jKMP4+jDOPowjj6Mow/j6MM4+jCOPoyjD+Powzj6MI4+jKMP4+jDOPowjj6Mow/j
6MM4+jCOPoyjD+Powzj6MI4+jKMP4+jDOPowjj6Mow/j6MM4+jCOPoyjD+Powzj6MI4+jKMP4+jD
OPowjj6Mow/j6MM4+jCOPoyjD+Powzj6MI4+jKMP4+jDOPowjj6Mow/j6MM4+jCOPoyjD+Powzj6
MI4+jKMP4+jDOPowjj6Mow/j6MM4+jCOPoyjD+Powzj6MI4+jKMP4+jDOPowjj6Mow/j6MM4+jCO
PoyjD+Powzj6MI4+jKMP4+jDOPowjj6Mow/j6MM4+jCOPoyjD+Powzj6MI4+jKMP4+jDOPowjj6M
ow/j6MM4+jCOPoyjD+Powzj6MI4+jKMP4+jDOPowjj6Mow/j6MM4+jCOPoyjD+Powzj6MI4+jKMP
4+jDOPowjj6Mow/j6MM4+jCOPoyjD+Powzj6MI4+jKMP4+jDOPowjj6Mow/j6MM4+jCOPoyjD+Po
wzj6MI4+jKMP4+jDOPowjj6Mow/j6MM4+jCOPoyjD+Powzj6MI4+jKMP4+jDOPowjj6Mow/j6MM4
+oiv6RA7h1/n8Oscfp3Dr3P4dQ6/zuHXOfw6h1/n8Oscfp3Dr3P4dQ6/zuHXOfw6h1/n8Oscfp3D
r3P4dQ6/zuHXOfw6h1/n8OvHH3593TvE/v67f/7m879+/vbX37//z8/+xz9993c/f//Xf7Z+TLd0
6JYO3dKhWzp0S4du6dAtHbqlQ7d06JYO3dKhWzp0S4du6dAtHbqlQ7d06JYO3dKhWzp0S4du6dAt
HbqlQ7d06JYO3dKhWzp0S4du6dAtHbqlQ7d06JYO3dKhWzp0S4du6dAtHbqlQ7d06JYO3dKhWzp0
S4du6dAtHbqlQ7d06JYO3dKhWzp0S4du6dAtHbqlQ7d06JYO3dKhWzp0S4du6dAtHbqlQ7d06JYO
3dKhWzp0S4du6dAtHbqlQ7d06JYO3dKhWzp0S4du6dAtHbqlQ7d06JYO3dKhWzp0S4du6dAtHbql
Q7d06JYO3dKhWzp0S4du6dAtHbqlQ7d06JYO3dKhWzp0S4du6dAtHbqlQ7d06JYO3dKhWzp0S4du
6dAtHbqlQ7d06JYO3dKhWzp0S4du6dAtHbqlQ7d06JYO3dKhWzp0S4du6dAtHbqlQ7d06JYO3dKh
Wzp0S4du6dAtHbqlQ7d06JYO3dKhWzp0S4du6dAtHbqlQ7d06JYO3dKhWzp0S4du6dAtHbqlQ7d0
6JYO3dKhWzp0S4du6dAtHbqlQ7d06JYO3dKhWzp0S4du6dAtHbqlU7d06pZO3dKpWzp1S6du6dQt
nbqlU7d06pZO3dKpWzp1S6du6dQtnbqlU7d06pZO3dKpWzp1S6du6dQtnbqlU7d06pZO3dKpWzp1
S6du6dQtnZ9WK12tdLXS1UpXK12tdLXS1UpXK92sdLPSzUo3K92sdLPSzUo3K92sdLPSbqXdSruV
divtVtqttFtpt9Jupd1Kh5UOKx1WOqx0WOmw0mGlw0qHlQ4rnVY6rXRa6bTSaaXTSqeVTiudVjqt
NKw0rDSsNKw0rDSsNKw0rDSsNKw0rTStNK00rTStNK00rTStNK1URplknybZp0n2aZJ9mmSfJtmn
SfZpkn2aZJ8m2adJ9mmSfZpknybZp0n2aZJ9mmSfJtmnSfZpkn2aZJ8m2adJ9mmSfZpknybZp0n2
aZJ9mmSfJtmnSfZpkn2aZJ8m2adJ9mmSfZpknybZp0n2aZJ9mmSfJtmnSfZpkn2aZJ8m2adJ9mmS
fZpknybZp0n2aZJ9mmSfJtmnSfZpkn2aZJ8m2adJ9mmSfZpknybZp0n2aZJ9mmSfJtmnSfZpkn2a
ZJ8m2adJ9mmSfZpknybZp0n2aZJ9mmSfJtmnSfZpkn2aZJ8m2adJ9mmSfZpknybZp0n2aZJ9mmSf
JtmnSfZpkn2aZJ8m2adJ9mmSfZpknybZp0n2aZJ9mmSfJtmnSfZpkn2aZJ8m2adJ9mmSfZpknybZ
p0n2aZJ9mmSfJtmnSfZpkn2aZJ8m2adJ9mmSfZpknybZp0n2aZJ9mmSfJtmnSfZpkn2aZJ8m2adJ
9rn8+DeX/Tn3o/2+Udt/+i//9btvP//ecd0fYT47527n3O2cu51zt3Puds7dzrnbOXc7527n3O2c
u51zt3Puds7dzrnbOXc7527n3O2cu51zt3Puds7dzrnbOXc7527n3O1Hn7v9lZvPUq11qrVOtdap
1jrVWqda61RrnWqtU611qrVOtdap1jrVWqda61RrnWqtU611qrVOtdap1jrVWqda61RrnWqtU611
qrVOtdap1jrVWqda61RrnWqtU611qrVOtdap1jrVWqda61RrnWqtU611qrVOtdap1jrVWqda61Rr
nWqtU611qrVOtdap1jrVWqda61RrnWqtU611qrVOtdap1jrVWqda61RrnWqtU611qrVOtdap1jrV
Wqda61RrnWqtU611qrVOtdap1jrVWqda61RrnWqtU611qrVOtdap1jrVWqda61RrnWqtU611qrVO
tdap1jrVWqda61RrnWqtU611qrVOtdap1jrVWqda61RrnWqtU611qrVOtdap1jrVWqda61RrnWqt
U611qrVOtdap1jrVWqda61RrnWqtU611qrVOtdap1jrVWqda61RrnWqtU611qrVOtdap1jrVWqda
61RrnWqtU611qrVOtdap1jrVWqda61RrnWqtU611qrVOtdap1jrVWqda61RrnWqtU611qrVOtdap
1jrVWqda61RrnWqtU611qrVOtdap1jrVWqda61RrnWqtU611qrVOtdap1jrVWqda61RrnWqtU611
qrVOtdap1jrVWqda61RrnWqtU611qrVOtdap1jrVWqda61RrnWqtU611qrVOtdap1jrVWqda61Rr
nZuMMkQ/DdFPQ/TTEP00RD8N0U9D9NMQ/TREPw3RT0P00xD9NEQ/DdFPQ/TTEP00RD8N0U9D9NMQ
/TREPw3RT0P00xD9NEQ/DdFPQ/TTEP00RD8N0U9D9NMQ/TREPw3RT0P00xD9NEQ/DdFPQ/TTEP00
RD8N0U9D9NMQ/TREPw3RT0P00xD9NEQ/DdFPQ/TTEP00RD8N0U9D9NMQ/TREPw3RT0P00xD9NEQ/
DdFPQ/TTEP00RD8N0U9D9NMQ/TREPw3RT0P00xD9NEQ/DdFPQ/TTEP00RD8N0U9D9NMQ/TREPw3R
T0P00xD9NEQ/DdFPQ/TTEP00RD8N0U9D9NMQ/TREPw3RT0P00xD9NEQ/DdFPQ/TTEP00RD8N0U9D
9NMQ/TREPw3RT0P00xD9NEQ/DdFPQ/TTEP00RD8N0U9D9NMQ/TREPw3RT0P00xD9NEQ/DdFPQ/TT
EP00RD8N0U9D9NMQ/TREPw3RT0P00xD9NEQ/DdFPQ/TTEP00RD8N0U9D9NMQ/TREPw3RT0P00xD9
NEQ/DdFPQ/TTEP00RD8N0U9D9NMQ/TREPw3RT0P00xD9NEQ/DdFPQ/TTEP00RD8N0U9D9NMQ/TRE
Pw3RT0P00xD9NEQ/DdFPQ/TTEP00RD8N0U9D9NMQ/TREPw3RT0P00xD9NEQ/DdFPQ/TTEP00RD8N
0U9D9NMQ/TREPw3RT0P00xD9NEQ/DdFPQ/TTEP00RD8N0U9D9HN8TfPZOfw6h1/n8Oscfp3Dr3P4
dQ6/zuHXOfw6h1/n8Oscfp3Dr3P4dQ6/zuHXOfw6h1/n8Oscfp3Dr3P4dQ6/zuHXOfw6h18//vDr
694h9uXz99/95ssvPn//zevBX/78y9vzf/83//D9jzqS+91/6cvnf/nuy69/79875nm/q9TfdQB/
X9Lk7z0wf87Q8fe/yh+91D8sCjNVk6dq8lRNnqrJUzV5qiZP1eSpmjxVk6dq8lRNnqrJUzV5qiZP
1eSpmjxVk6dq8lRNnqrJUzV5qiZP1eSpmjxVk6dq8lRNnqrJUzV5qiZP1eSpmjxVk6dq8lRNnqrJ
UzV5qiZP1eSpmjxVk6dq8lRNnqrJUzV5qiZP1eSpmjxVk6dq8lRNnqrJUzV5qiZP1eSpmjxVk6dq
8lRNnqrJUzV5qiZP1eSpmjxVk6dq8lRNnqrJUzV5qiZP1eSpmjxVk6dq8lRNnqrJUzV5qiZP1eSp
mjxVk6dq8lRNnqrJUzV5qiZP1eSpmjxVk6dq8lRNnqrJUzV5qiZP1eSpmjxVk6dq8lRNnqrJUzV5
qiZP1eSpmjxVk6dq8lRNnqrJUzV5qiZP1eSpmjxVk6dq8lRNnqrJUzV5qiZP1eSpmjxVk6dq8lRN
nqrJUzV5qiZP1eSpmjxVk6dq8lRNnqrJUzV5qiZP1eSpmjxVk6dq8lRNnqrJUzV5qiZP1eSpmjxV
k6dq8lRNnqrJUzV5qiZP1eSpmjxVk6dq8lRNnqrJUzV5qiZP1eSpmjxVk6dq8lRNnqrJUzV5qiZP
1eSpmjxVk6dq8lRNnqrJUzV5qiZP1eSpmjxVk6dq8lRNnqrJUzV5qiZP1eSpmjxVk6dq8lRNnqrJ
UzV5qiZP1eSpmjxVk6dq8lRNnqrJUzV5qiZP1eQZMkqlQKoUSJUCqVIgVQqkSoFUKZAqBVKlQKoU
SJUCqVIgVQqkSoFUKZAqBVKlQKoUSJUCqVIgVQqkSoFUKZAqBVKlQKoUSJUCqVIgVQqkSoFUKZAq
BVKlQKoUSJUCqVIgVQqkSoFUKZAqBVKlQKoUSJUCqVIgVQqkSoFUKZAqBVKlQKoUSJUCqVIgVQqk
SoFUKZAqBVKlQKoUSJUCqVIgVQqkSoFUKZAqBVKlQKoUSJUCqVIgVQqkSoFUKZAqBVKlQKoUSJUC
qVIgVQqkSoFUKZAqBVKlQKoUSJUCqVIgVQqkSoFUKZAqBVKlQKoUSJUCqVIgVQqkSoFUKZAqBVKl
QKoUSJUCqVIgVQqkSoFUKZAqBVKlQKoUSJUCqVIgVQqkSoFUKZAqBVKlQKoUSJUCqVIgVQqkSoFU
KZAqBVKlQKoUSJUCqVIgVQqkSoFUKZAqBVKlQKoUSJUCqVIgVQqkSoFUKZAqBVKlQKoUSJUCqVIg
VQqkSoFUKZAqBVKlQKoUSJUCqVIgVQqkSoFUKZAqBVKlQKoUSJUCqVIgVQqkSoFUKZAqBVKlQKoU
SJUCqVIgVQqkSoFUKZAoBfonlAKvB5oPLD6w+sDmA90Hhg9MHwgfsNJmpc1Km5U2K21W2qy0WWmz
0malzUoXK12sdLHSxUoXK12sdLHSxUoXK12sdLXSr3CX3zn8Oodf5/DrHH6dw69z+HUOv87h1zn8
Oodf5/DrHH6dw69z+HUOv87h1zn8Oodf5/DrHH6dw69z+HUOv87h1zn8OodfP+Hw66/bA/eq0sO3
evhWD9/q4Vs9fKuHb/XwrR6+zcO3+UZvVrpZ6Walm5VuVrpZ6Walm5V2K+1W2q20W2m30m6l3Uq7
lXYr7VY6rHRY6bDSYaXDSoeVDisdVjqsdFjptNJppdNKp5VOK51WOq10Wum00mmlYaVhpWGlYaVh
pWGlYaVhpWGlYaVppWmlaaVppWmlaaVppWmlaaWCswnOJjib4GyCswnOJjib4GyCswnOJjib4GyC
swnOJjib4GyCswnOJjib4GyCswnOJjib4GyCswnOJjib4GyCswnOJjib4ETy/XrASmVUk1FNRjUZ
1WRUk1FNRjUZ1WRUk1FNRjUZ1WRUk1FNRjUZ1WRUk1FNRjUZ1WRUk1FNRjUZ1WRUk1FNRjUZ1WRU
k1FNRjUZ1WRUk1FNRjUZ1WRUk1FNRjUZ1WRUk1FNRjUZ1WRUk1FNRjUZ1WRUk1FNRjUZ1WRUk1FN
RjUZ1WRUk1FNRjUZ1WRUk1FNRjUZ1WRUk1FNRi0yapFRi4xaZNQioxYZtcioRUYtMmqRUYuMWmTU
IqMWGbXIqEVGLTJqkVGLjFpk1CKjFhm1yKhFRi0yapFRi4xaZNQioxYZtcioRUYtMmqRUYuMWmTU
IqMWGbXIqEVGLTJqkVGLjFpk1CKjFhm1yKhFRi0yapFRi4xaZNQioxYZtcioRUYtMmqRUYuMWmTU
IqMWGbXIqEVGLTJqkVGLjFpk1CKjFhm1yKhFRi0yapFRi4xaZNQioxYZtcioRUYtMmqRUYuMWmTU
IqMWGbXIqEVGLTJqkVGLjFpk1CKjFhm1yKhFRi0yapFRi4xaZNQqo1YZtcqoVUatMmqVUauMWmXU
KqNWGbXKqFVGrTJqlVGrjFpl1CqjVhm1yqhVRq0yapVRq4xaZdQqo1YZtcqoVUatMmqVUauMWmXU
KqNWGbXKqFVGrTJqlVGrjFpl1CqjVhm1yqhVRq0yapVRq4xaZdQqo1YZtcqoVUatMmqVUauMWmXU
KqNWGbXKqFVGrTJqlVGrjFpl1CqjVhm1yqhVRq0yapVRq4xaZdQqo1YZtcqoVUatMmqVUauMWmXU
KqNWGbXKqFVGrTJqlVGrjFpl1CqjVhm1yqhVRq0yapVRq4xaZdQqo1YZtcqoVUZtMmqTUZuM2mTU
JqM2GbXJqE1GbTJqk1GbjNpk1CajNhm1yahNRm0yapNRm4zaZNQmozYZtcmoTUZtMmqTUZuM2mTU
JqM2GbXJqO0reuDO4dc5/DqHX+fw6xx+ncOvc/h1Dr/O4dc5/DqHX+fw6xx+ncOvc/h1Dr/O4dc5
/DqHX+fw6xx+ncOvc/h1Dr/O4dc5/PoJhl9/nXeIffrbjyo9fIJzE5yb4NwE5yY4N8G5Cc5NcG6C
cxOcm+DcBOcmODfBuQnOTXBugnMTnJvg3ATnJjg3wbkJzk1wboJzE5yb4NwE5yY4N8G5Cc5NcG6C
cxOcm+DcBOcmODfBuQnOTXBugnMTnJvg3ATnJjg3wbkJzk1wboJzE5yb4NwE5yY4N8G5Cc5NcG6C
cxOcm+DcBOcmODfBuQnOTXBugnMTnJvg7IKzC84uOLvg7IKzC84uOLvg7IKzC84uOLvg7IKzC84u
OLvg7IKzC84uOLvg7IKzC84uOLvg7IKzC84uOLvg7IKzC84uOLsf7rqM6jKqy6guo7qM6jKqy6gu
o7qM6jKqy6guo7qM6jKqy6guo7qM6jKqy6guo7qM6jKqy6guo7qM6jKqy6guo7qM6jKqy6guo7qM
6jKqy6guo7qM6jKqy6guo7qM6jKqy6guo7qM6jKqy6guo7qM6jKqy6guo7qM6jKqy6guo7qM6jKq
y6guo7qM6jKqy6guo7qM6jKqy6guo4aMGjJqyKgho4aMGjJqyKgho4aMGjJqyKgho4aMGjJqyKgh
o4aMGjJqyKgho4aMGjJqyKgho4aMGjJqyKgho4aMGjJqyKgho4aMGjJqyKgho4aMGjJqyKgho4aM
GjJqyKgho4aMGjJqyKgho4aMGjJqyKgho4aMGjJqyKgho4aMGjJqyKgho4aMGjJqyKgho4aMGjJq
yKgho4aMGjJqyKgho4aMGjJqyKgho4aMGjJqyKgho4aMGjJqyKgho4aMGjJqyKgho4aMGjJqyKgh
o4aMGjJqyKgho4aMGjJqyKgho6aMmjJqyqgpo6aMmjJqyqgpo6aMmjJqyqgpo6aMmjJqyqgpo6aM
mjJqyqgpo6aMmjJqyqgpo6aMmjJqyqgpo6aMmjJqyqgpo6aMmjJqyqgpo6aMmjJqyqgpo6aMmjJq
yqgpo6aMmjJqyqgpo6aMmjJqyqgpo6aMmjJqyqgpo6aMmjJqyqgpo6aMmjJqyqgpo6aMmjJqyqgp
o6aMmjJqyqgpo6aMmjJqyqgpo6aMmjJqyqgpo6aMmjJqyqgpo6aMmjJqyqgpo6aMmjJqyqgpo6aM
mjJqyqgpo6aMmjJqyqgpo0JGhYwKGRUyKmRUyKiQUSGjQkaFjAoZFTIqZFTIqJBRIaNCRoWMChkV
MipkVMiokFEho0JGhYwKGRUyKmRUyKiQUfEVHWLn8Oscfp3Dr3P4dQ6/zuHXOfw6h1/n8Oscfp3D
r3P4dQ6/zuHXOfw6h1/n8Oscfp3Dr3P4dQ6/zuHXOfw6h1/n8Oscfv0Ew6+/dodYCM4QnCE4Q3CG
4AzBGYIzBGcIzhCcIThDcIbgDMEZgjMEZwjOEJwhOENwhuAMwRmCMwRnCM4QnCE4Q3CG4AzBGYIz
BGcIzhCcIThDcIbgDMEZgjMEZwjOEJwhOENwhuAMwRmCMwRnCM4QnCE4Q3CG4AzBGYIzBGcIzhCc
IThDcIbgDMEZgjMEZwjOEJwhOENwpuBMwZmCMwVnCs4UnCk4U3Cm4EzBmYIzBWcKzhScKThTcKbg
TMGZgjMFZwrOFJwpOFNwpuBMwZmCMwVnCs4UnCk40w93KaNSRqWMShmVMiplVMqolFEpo1JGpYxK
GZUyKmVUyqiUUSmjUkaljEoZlTIqZVTKqJRRKaNSRqWMShmVMiplVMqolFEpo1JGpYxKGZUyKmVU
yqiUUSmjUkaljEoZlTIqZVTKqJRRKaNSRqWMShmVMiplVMqolFEpo1JGpYxKGZUyKmVUyqiUUSmj
UkaljFIQ3RRENwXRTUF0UxDdFEQ3BdFNQXRTEN0URDcF0U1BdFMQ3RRENwXRTUF0UxDdFEQ3BdFN
QXRTEN0URDcF0U1BdFMQ3RRENwXRTUF0UxDdFEQ3BdFNQXT7tFrpaqWrla5WulrpaqWrla5Wulrp
ZqWblW5WulnpZqWblW5WulnpZqWblXYr7VbarbRbabfSbqXdSruVdivtVjqsdFjpsNJhpcNKh5UO
Kx1WOqx0WOm00mml00qnlU4rnVY6rXRa6bTSaaVhpWGlYaVhpWGlYaVhpWGlYaVhpWmlaaVppWml
aaVppWmlaaVppTLKOPpmHH0zjr4ZR9+Mo2/G0Tfj6Jtx9M04+mYcfTOOvhlH34yjb8bRN+Pom3H0
zTj6Zhx9M46+GUffjKNvxtE34+ibcfTNOPpmHH0zjr4ZR9+Mo2/G0Tfj6Jtx9M04+mYcfTOOvhlH
34yjb8bRN+Pom3H0zTj6Zhx9M46+GUffjKNvxtE34+ibcfTNOPpmHH0zjr4ZR9+Mo2/G0Tfj6Jtx
9M04+mYcfTOOvhlH34yjb8bRN+Pom3H0zTj6Zhx9M46+GUffjKNvxtE34+ibcfTNOPpmHH0zjr4Z
R9+Mo2/G0Tfj6Jtx9M04+mYcfTOOvhlH34yjb8bRN+Pom3H0zTj6Zhx9M46+GUffjKNvxtE34+ib
cfTNOPpmHH0zjr4ZR9+Mo2/G0Tfj6Jtx9M04+mYcfTOOvhlH34yjb8bRN+Pom3H0zTj6Zhx9M46+
GUffjKNvxtE34+ibcfTNOPpmHH0zjr4ZR9+Mo2/G0Tfj6Jtx9M04+mYcfTOOvi1f1SF2Dr/O4dc5
/DqHX+fw6xx+ncOvc/h1Dr/O4dc5/DqHX+fw6xx+ncOvc/h1Dr/O4dc5/DqHX+fw6xx+ncOvc/h1
Dr/O4dePPvz6uneI/f13//zN53/9/O2vv3//n5/9j3/67u9+/k9/8z+/+/KPn7/89kn+0Onc//Xb
f/L9Hz6g+wP+9n/6L//1u28//wgqtKbnuum5bnqum57rpue66blueq6bnuum57rpuW56rpue66bn
uum5bnqum57rpue66blueq6bnuum57rpuW56rpue66bnuum5bnqum57rpue66blueq6bnuum57rp
uW56rpue66bnuum5bnqum57rpue66blueq6bnuum57rpuW56rpue66bnuum5bnqum57rpue66blu
eq6bnuum57rpuW56rpue66bnuum5bnqum57rpue66blueq6bnuum57rpuW56rpue66bnuum5bnqu
m57rpue66blueq6bnuum57rpuW56rpue66bnuum5bnqum57rpue66blueq6bnuum57rpuW56rpue
66bnuum5bnqum57rpue66blueq6bnuum57rpuW56rpue66bnuum5bnqum57rpue66blueq6bnuum
57rpuW56rpue66bnuum5bnqum57rpue66blueq6bnuum57rpuW56rpue66bnuum5bnqum57rpue6
6blueq6bnuum57rpuW56rpue66bnuum5bnqum57rpue66blueq6bnuum57rpuW56rpue66bnuum5
bnqum57rpue66blueq6bnuum57rpuW56rpue66bnuum5bnqum57rpue66blueq6bnuum57rpuW56
rpue66bnuum5bnqum57rpue66blueq6bnuum57rpuW56rpue66bnuum5bnqum57rpue66blueq7b
JqNM1W+m6jdT9Zup+s1U/WaqfjNVv5mq30zVb6bqN1P1m6n6zVT9Zqp+M1W/marfTNVvpuo3U/Wb
qfrNVP1mqn4zVb+Zqt9M1W+m6jdT9Zup+s1U/WaqfjNVv5mq30zVb6bqN1P1m6n6zVT9Zqp+M1W/
marfTNVvpuo3U/WbqfrNVP1mqn4zVb+Zqt9M1W+m6jdT9Zup+s1U/WaqfjNVv5mq30zVb6bqN1P1
m6n6zVT9Zqp+M1W/marfTNVvpuo3U/WbqfrNVP1mqn4zVb+Zqt9M1W+m6jdT9Zup+s1U/WaqfjNV
v5mq30zVb6bqN1P1m6n6zVT9Zqp+M1W/marfTNVvpuo3U/WbqfrNVP1mqn4zVb+Zqt9M1W+m6jdT
9Zup+s1U/WaqfjNVv5mq30zVb6bqN1P1m6n6zVT9Zqp+M1W/marfTNVvpuo3U/WbqfrNVP1mqn4z
Vb+Zqt9M1W+m6jdT9Zup+s1U/WaqfjNVv5mq30zVb6bqN1P1m6n6zVT9Zqp+M1W/marfTNVvpuo3
U/WbqfrNVP1mqn4zVb+Zqt9M1W+m6jdT9Zup+s1U/WaqfjNVv5mq30zVb6bqN1P1m6n6zVT9Zqp+
M1W/marfTNVvpuo3U/WbqfrNVP1mqn4zVb+Zqt9M1W+m6jdT9Zup+s1U/WaqfjNVv5mq30zVb6bq
N1P1m6n6zVT9Zqp+M1W/marfTNVvpuo3U/WbqfrNVP1mqn4zVb+Zqt9M1W+m6jdT9Zup+s1U/Waq
fjNVv42vqUI7h1/n8Oscfp3Dr3P4dQ6/zuHXOfw6h1/n8Oscfp3Dr3P4dQ6/zuHXOfw6h1/n8Osc
fp3Dr3P4dQ6/zuHXOfw6h1/n8OvHH3593Rvdvnz+/rvffPnF5++/eT34y59/eXv+7//mH77/aUZy
v+uv/a5j8AfcCvcj2N6aKu+myrup8m6qvJsq76bKu6nybqq8myrvpsq7qfJuqrybKu+myrup8m6q
vJsq76bKu6nybqq8myrvpsq7qfJuqrybKu+myrup8m6qvJsq76bKu6nybqq8myrvpsq7qfJuqryb
Ku+myrup8m6qvJsq76bKu6nybqq8myrvpsq7qfJuqrybKu+myrup8m6qvJsq76bKu6nybqq8myrv
psq7qfJuqrybKu+myrup8m6qvJsq76bKu6nybqq8myrvpsq7qfJuqrybKu+myrup8m6qvJsq76bK
u6nybqq8myrvpsq7qfJuqrybKu+myrup8m6qvJsq76bKu6nybqq8myrvpsq7qfJuqrybKu+myrup
8m6qvJsq76bKu6nybqq8myrvpsq7qfJuqrybKu+myrup8m6qvJsq76bKu6nybqq8myrvpsq7qfJu
qrybKu+myrup8m6qvJsq76bKu6nybqq8myrvpsq7qfJuqrybKu+myrup8m6qvJsq76bKu6nybqq8
myrvpsq7qfJuqrybKu+myrup8m6qvJsq76bKu6nybqq8myrvpsq7qfJuqrybKu+myrup8m6qvJsq
76bKu6nybqq8myrvpsq7qfJuqrybKu+myrup8m6qvJsq76bKu6nybqq8myrvpsq7qfJuqrybKu+m
yrup8m6qvJsq76bKu6nybqq8myrvpsq7qfJuqrybKu+myrup8m6qvJsq76bKu6nybiGjFAc0xQFN
cUBTHNAUBzTFAU1xQFMc0BQHNMUBTXFAUxzQFAc0xQFNcUBTHNAUBzTFAU1xQFMc0BQHNMUBTXFA
UxzQFAc0xQFNcUBTHNAUBzTFAU1xQFMc0BQHNMUBTXFAUxzQFAc0xQFNcUBTHNAUBzTFAU1xQFMc
0BQHNMUBTXFAUxzQFAc0xQFNcUBTHNAUBzTFAU1xQFMc0BQHNMUBTXFAUxzQFAc0xQFNcUBTHNAU
BzTFAU1xQFMc0BQHNMUBTXFAUxzQFAc0xQFNcUBTHNAUBzTFAU1xQFMc0BQHNMUBTXFAUxzQFAc0
xQFNcUBTHNAUBzTFAU1xQFMc0BQHNMUBTXFAUxzQFAc0xQFNcUBTHNAUBzTFAU1xQFMc0BQHNMUB
TXFAUxzQFAc0xQFNcUBTHNAUBzTFAU1xQFMc0BQHNMUBTXFAUxzQFAc0xQFNcUBTHNAUBzTFAU1x
QFMc0BQHNMUBTXFAUxzQFAc0xQFNcUBTHNAUBzTFAU1xQFMc0BQHNMUBTXFAUxzQFAc0xQFNcUBT
HNAUBzTFAU1xQFMc0BQHNMUBTXFAUxzQFAc0xQFNcUBTHNAUBzTFAU1xQFMc0BQHNMUBTXFAUxyw
KA5YFAcsigMWxQGL4oBFccCiOGBRHLAoDlgUByyKAxbFAYvigEVxwKI4YFEcsCgOWBQHLIoDFsUB
i+KARXHAojhgURywKA5YFAcsigMWxQGL4oBFccCiOGD59DVtb+fw6xx+ncOvc/h1Dr/O4dc5/DqH
X+fw6xx+ncOvc/h1Dr/O4dc5/DqHX+fw6xx+ncOvc/h1Dr/O4dc5/DqHX+fw6xx+/fjDr7/Cm+C+
fP6X7778+i97K9zxN7/KDXGf/vY/X5b/fHm83p23H67bb39o//k+9x8u7z/Ef76s9Ujuv/yo37mN
/Yfr+/Pkf37O+iH2X770/Yf7Us+z1X+61S+P+lu3/Ydn1g/1n56X+lfP+uVWP9QzX4//dKkf7vuf
OP7W/q/y43XdPtUjl/rh+FdLPc9Wjxw/9PpPox45fjgOXdQjUY9kPVI/XD/Vf3rWfzpexbUeudYj
dZyPN27/W0s9z1J/a6l/tdTrWup1LfXX+3++tfphqR/W+mGrH3r9MOqHWT9E/XA84aV+uNYPt/rh
Xj886ofn/sP9U/1Q9dyrnnvVc6967lXPveq5Vz33qudRz/Oo53nU8zzqeR71PI96nkc9z+N4nnpd
j3pdj3pdj3pdj3pdj3pdj3pdz3pdz6rnWfU8q55n1fOsep5Vz7Pq2c+mW73dt1rGt1qit1rPt1qi
t1qit1qZt1obt1oAt1obt1ottzpTbrVabrXYbrUyb7XY3n6oMq5VxrXKuFYZ1yrjWmVc61Vcq55r
1XOteq5Vz7XquVY916rnWvXcqp5b1XM/fqjC7lXYvQq7V2H3Kuxe9dyrnnvVc6967lXPveq5Vz33
qudR9TyqjEeV8agyHlXGo8p4VBmPOj6PqudR9TyqnkfV86h6HlXPo+p5VD3Pqud5HJbjOn+pHx71
w7Mup5/qh1bX8LV+KF7sa6zVGlvqXW51lWh1lWh1eLMu71lX9bcf6lr3PKBQF+FnXesexzMXifal
NT+Y8qjL4KO4c1wBfvvXCwzPukY/69L8rIvs84DQvX6oE/ta5/O1zudrPfu1zudrnc/XOp+vdT5f
63y+1vXlWteXSz3hpZ7wUk94qSe81BNe6gkv9YSXesLjyn68rwetH/U2HMdxX1WtVtVSp8RSb9VS
58ZSp8RSS2epmpeqeflg6rFQLkdjUT88jx/qb13rl68F8ketxWctwdvxPPXIfsFq9X61er9avZWt
llery26ry+5S72ArvLU6N1pd+FqdP60OQqvrS6sD1QqcrcDZ6oRsdUK2WmOt1n2rS3yrdbj84JmP
H6r5eNRafdRafVR79Kj1/KjV+6jV+6jVux/MqJcTdVSjXnLU8Yk6PlFvU9TblFVGVhlZZWSVkVVG
VhlZZWSVkVVGVhlZZWSVkVVGVhn5UcatnvBWT3irJ7zXE97rCe/1hPd6wns94b2e8F59271e4HGd
utcLvNcLvNcLvNcLvFc996rnXvU8qp5H1fOoeh5Vz6PqeRzHuVreW72Dt3oHb/UO3usdvNc7eKyW
e72D93oH79Wq3uuZ77Wi7rWi7rWi7rWi7rWi7rWi7lXPveq5Vz2PqudR9TyO1Vv1PKqeR9Wzv9JR
V5JRzceoS8qok3HUtWUUTkYBZhS6Rl1tRp2Vo06rUVQbdfEc1c6OugKMuiaMutKOuuyMOrtHIWDU
tXdUgzIKS6Oa4FEX/FHd8KhueNS1btQVe1RbM+p9H/W+j8LEqAUwagGMws0oBIxaEqOWxCjcjGqh
Ri2SUYtk1EV4FDhGLZtRy2ZUczaq8Rq1kEYtpFHUG3V9HrW0Ri2tUb3dqDU2ao2N6uRGLbZRi23U
Yhu12EYttlGLbdRiG7XYRsF3+fiw+qgL7NEr3AoKt+NqXPi71YeoWyHyaD5ux3X+uPIXB6/1y9eD
sMWLR3Uq1/oT1wL0/cBNdTwHXO5FtHsxZT9iSy3R5QNk96Legex92Sy1opZaP8sHbm7114/fudaf
uNbnxlv9q2sdluvxy8efqF++1+8cpd6P/3Q0nQdzj28Hjq8bCprHdxPXeoFHi3kcuuvxy3XAr/Un
rnXorvV+XQ++H//p+Abh/a9fqrBLFXapwi51kbnUVeJSl5RLXRMuVfylzu5LnVaXOi8uda17++H+
o37t9B/tBX/9xUf96ef+w35Zu9Q18FLH5PJxTK71wq/1wq/1wq/1wq/1wq/1wq/1wq/1wq/1wvc3
4lKr6FKr6FIr7VIX8EudC5c6Wy+18i+18i91jl/qRL7UiXyp0/ZSJ/KlTu1LnciXWrqXOgUudVJc
6ny51Plyqavrpa6ll7qWXurKeakr56Wuk5e6Tl7q3LzUuXCp8+VS58ulzpdLXRAudYm41LXrUlez
S118LnU5utSl5lIXn0sB91K93KV6uUv1cpfq5S51dlyql7tUL3epXu5SvdylerlL9XKX6uUu1ctd
65y61jl1rXPqWufUtc6pa51T1zqnrnVOXeucutY5da1z6lrn1LXahmst9Wst9Wst9Wst9Wst9Wst
9Wst9Wst9Wst9Wst9Wst9Wst9Wst9Wst9Wst9Wst9Wst9Wst9Wst9Wst9Wst9Wst9Wst9Wst9Wst
9Wst9Wst9Wst9Wst9Wst9Wst9Wst9Wst9Wst9Wst9Wst9Wst9Wst9Wst9Wst9Wst9Wst9Wst9Wst
9Wst9Wst9Wst9Wst9Wst9Wst9Wst9Wst9Wst9Wst9Wst9Wst9Wst9Wst9Wst9Wst9Wst9Wst9Wst
9Wst9Wst9Wst9Wst9Wst9Wst9evHUn9WPc+qZ//Et9VZsNVZsNVZsNVZsNVZsNVZsNVZsNVZsNVZ
sNVZsNVZsNVZsNVZsNVZsNVZsNVZsNVZsNVZsNVZsNVZsNVZsNVZsNVZsNVZsNVZsNVZsNVZsNVZ
sNVZsNVZsNVZsNVZsNVZsNVZsNVZsNVZsNVZsNVZsNVZsNVZsNVZsNVZsNVZsNVZsNVZsNVZsNVZ
sNVZsNVZsNVZsNVZsNVZsNVZsNVZsNVZsNVZsNVZsNVZsNVZsNVZsNVZsNVZsNVZsNVZsNVZsNVZ
sNVZsNVZsNVZsNVZsNVZsNVZsNVZsNVZsNVZsNVZsNVZsNVZsNVZsNVZsNVZsNVZsNVZsNVZsNVZ
sH2cBc+q51n1PKueZ9XzrHqeVc+z6nnWZ+1rfbK+1ifra32yvtYn62t9sr7WJ/1rfdK/1if96zGP
qU/61/qkf61P+tf6pH+Mu671Sf+YId2qnlvVc6t6blXP7fgqo+q5VT23qudW9dyqnlvVczva6fr0
fa0P3df60H2tD93X+tB9rQ/d1/oS4FpfAlzrS4BrfQlwrS8BrvUlwLW+BLjWlwDX+hLgmLrd6kuA
W9Vzq3puVc+t6rlVPbfj646q51b13Kqe42vbW9XzcRAe+1fA+y/P+uVZvzzrl2ed77Ne4KwXOOsc
nHUOzo9n3o/YrCM264jNugLMugLMugLMugLMugLMuvLPuvLPuvLPuuDPuobPuobPuobPuobPuobP
uobPWgCzFsCsBTBrAcwiyCyCzCLILILMenNnvbmzriSzriSzriSzriSzrkizrkizrkiz1sastTFr
bcxaG7PWxqy1MWttzFobs9bGrLUx64o964o964o964o964o964o969o7Pz6cHqU+jgN+vNJ6wkd9
tj1e6bV++XEcsar5Wkf1UX/rcayx43nqlX78cBzw3/7zR4183v70+zJ+1vc59zrN3/70+6t4e9r3
R14//PZ5nnX5elvV7xfhZw0+3y7O7y/wbZ2/v8BHDW/eDun71fheE763g/O+Np41LHg7g96vz88a
B74d2/eF/azv5B/1Ftxrxv965tx/5/0a/nZyva+NZ7XNz7oIv/3y+yt9/fX3J6wm8PU8v/3lt2Py
TpBHjUVu9VHoXnx/HI/U1O3t+LyfTbdq+d5O2/1VjB1Sj5q2vlX4vmgfNVt91JfPj/qk/6i9C8/q
+R/zB2/cb8t4W5bv587rCX9bz6M6tHtdx571Hfjrtb8flvqe4VFfFb498g7EZ31wfvu376fD62/d
95fzfiF6vSnLXvz9+KOzHln2FXWtP/r+zG+lvv/yrT6evK2xvYz7ft14vYr6549jHd5qsb0fw0/7
W3mvzupZPeRbYfuira8KHzWxflS78qyB1K0a8tv14714bzNeR7WWzbNe6ftKeL2KZ70Xl/rlOh32
lVmfAt5W4/421SeX+7Fs6svDt8Xz/oSv177WD9u+6t4X/9v5+17q68iv+yPvvHjW9/aP+jri9Z+i
Tpnbn76D59hW5X6v1f1eq/u9Vvd7re73Wt3vtbrfa3W/1+Z+r82daZuVbla6WelmpZuVbla6Welm
pd1Ku5V2K+1W2q20W2m30m6l3Uq7lQ4rHVY6rHRY6bDSYaXDSoeVDisdVjqtdFrptNJppdNKp5VO
K51WOq10WmlYaVhpWGlYaVhpWGlYaVhpWGlYaVppWmlaaVppWmlaaVppWmlaqTt9mzt9mzt9mzt9
mzt9mzt9mzt9mzt9mzt9mzt9mzt9mzt9mzt9mzt9mzt9mzt9mzt9mzt9mzt9mzt9mzt9mzt9mzt9
mzt9mzt9mzt9mzt9mzt9mzt9mzt9mzt9mzt922qlMqrJqCajmoxqMqrJqCajmoxqMqrJqCajmoxq
MqrJqCajmoxqMqrJqCajmoxqMqrJqCajmoxqMqrJqCajmoxqMqrJqCajmoxqMqrJqCajmoxqMqrJ
qCajmoxqMqrJqCajmoxqMqrJqCajmoxqMqrJqCajmoxqMqrJqCajmoxqMqrJqCajmoxqMqrJqCaj
moxqMqrJqCajmoxaZNQioxYZtcioRUYtMmqRUYuMWmTUIqMWGbXIqEVGLTJqkVGLjFpk1CKjFhm1
yKhFRi0yapFRi4xaZNQioxYZtcioRUYtMmqRUYuMWmTUIqMWGbXIqEVGLTJqkVGLjFpk1CKjFhm1
yKhFRi0yapFRi4xaZNQioxYZtcioRUYtMmqRUYuMWmTUIqMWGbXIqEVGLTJqkVGLjFpk1CKjFhm1
yKhFRi0yapFRi4xaZNQioxYZtcioRUYtMmqRUYuMWmTUIqMWGbXIqEVGLTJqkVGLjFpk1CKjFhm1
yKhFRi0yapFRi4xaZNQioxYZtcioVUatMmqVUauMWmXUKqNWGbXKqFVGrTJqlVGrjFpl1CqjVhm1
yqhVRq0yapVRq4xaZdQqo1YZtcqoVUatMmqVUauMWmXUKqNWGbXKqFVGrTJqlVGrjFpl1CqjVhm1
yqhVRq0yapVRq4xaZdQqo1YZtcqoVUatMmqVUauMWmXUKqNWGbXKqFVGrTJqlVGrjFpl1CqjVhm1
yqhVRq0yapVRq4xaZdQqo1YZtcqoVUatMmqVUauMWmXUKqNWGbXKqFVGrTJqlVGrjFpl1CqjVhm1
yqhVRq0yapVRq4xaZdQqo1YZtcqoVUatMmqVUauM2mTUJqM2GbXJqE1GbTJqk1GbjNpk1CajNhm1
yahNRm0yapNRm4zaZNQmozYZtcmoTUZtMmqTUZuM2mTUJqM2GbXJqE1GbTJqk1Hbjx9p/afuev4P
bpn/qe7v/w//7E91i/9/GP19DgnPIeE5JDyHhOeQ8BwSnkPCc0h4DgnPIeE5JDyHhOeQ8BwSnkPC
c0h4DgnPIeE5JDyHhOeQ8BwSnkPCc0h4DgnPIeFPOCT8atHff4gj98xFOnORzlykMxfpzEU6c5HO
XKQzF+nMRTpzkc5cpDMX6cxFOnORzlykMxfpzEX6y+Yi/RFfFv3jd18+//zbbz7/5hc/+8cvr//5
xy//7tuiX3z/28d+nA3Vpzft9Kad3rTTm3Z6005v2ulNO71ppzft9Kad3rTTm3Z6005v2ulNO71p
pzftL+ZN+xpfEf1H24iODU/uxHIP7uYe3M09uJt7cDf34G7uwd3cg7u5B3dzD+7mHtzNPbibe3A3
9+Bu7sHd3IO7uQd3cw/u5h7czT24m3twN/fgbu7B3dyDu7kHd3MP7uYe3M09uJt7cDf34G7uwd3c
g7u5B3dzD+7mHtzNPbibe3A39+Bu7sHd3IO7uQd3cw/u5h7czT24m3twN/fgbu7B3dyDu7kHd3MP
7uYe3M09uJt7cDf34G7uwd3cg7u5B3dzD+7mHtzNPbibe3A39+Bu7sHd3IO7uQd3cw/u5h7czT24
3T243T243T243T243T243T243T243T243T243T243T243T243T243T243T243T243T243T243T24
3T243T243T243T243T243T243T243T243T243T243T243T243ftEuozqMqrLqC6juozqMqrLqC6j
uozqMqrLqC6juozqMqrLqC6juozqMqrLqC6juozqMqrLqC6juozqMqrLqC6juozqMqrLqC6juozq
MqrLqC6juozqMqrLqC6juozqMqrLqC6juozqMqrLqC6juozqMqrLqC6juozqMqrLqC6juozqMqrL
qC6juozqMqrLqC6juozqMqrLqC6jhowaMmrIqCGjhowaMmrIqCGjhowaMmrIqCGjhowaMmrIqCGj
howaMmrIqCGjhowaMmrIqCGjhowaMmrIqCGjhowaMmrIqCGjhowaMmrIqCGjhowaMmrIqCGjhowa
MmrIqCGjhowaMmrIqCGjhowaMmrIqCGjhowaMmrIqCGjhowaMmrIqCGjhowaMmrIqCGjhowaMmrI
qCGjhowaMmrIqCGjhowaMmrIqCGjhowaMmrIqCGjhowaMmrIqCGjhowaMmrIqCGjhowaMmrIqCGj
howaMmrIqCGjhowaMmrIqCGjpoyaMmrKqCmjpoyaMmrKqCmjpoyaMmrKqCmjpoyaMmrKqCmjpoya
MmrKqCmjpoyaMmrKqCmjpoyaMmrKqCmjpoyaMmrKqCmjpoyaMmrKqCmjpoyaMmrKqCmjpoyaMmrK
qCmjpoyaMmrKqCmjpoyaMmrKqCmjpoyaMmrKqCmjpoyaMmrKqCmjpoyaMmrKqCmjpoyaMmrKqCmj
poyaMmrKqCmjpoyaMmrKqCmjpoyaMmrKqCmjpoyaMmrKqCmjpoyaMmrKqCmjpoyaMmrKqCmjpoya
MmrKqCmjpoyaMmrKqCmjQkaFjAoZFTIqZFTIqJBRIaNCRoWMChkVMipkVMiokFEho0JGhYwKGRUy
KmRUyKiQUSGjQkaFjAoZFTIqZFTIqJBR8eOHcv8h99Cfw69z+HUOv87h1zn8Oodf5/DrHH6dw69z
+HUOv87h1zn8Oodf5/DrHH6dw69z+HUOv87h1zn8Oodf5/DrHH6dw69z+PVTDb++Wtj0b4dkXz5/
/91vvvzi8/ffvB785c+/vD3/9z+ZgfZ3/bU/UTz7D9//6bfAfShnw84g7AzCziDsDMLOIOwMws4g
7AzCziDsDMLOIOwMws4g7AzCziDsDMLOIOwMws4g7AzCziDsDMLOIOwMws4g7AzCziDsDMLOIOwM
ws4g7AzCziDsDMLOIOwMws4g7AzCziDsDMLOIOwMws4g7AzCziDsDMLOIOwMws4g7AzCziDsDMLO
IOwMws4g7AzCziDsDMLOIOwMws4g7AzCziDsDMLOIOwMws4g7AzSziDtDNLOIO0M0s4g7QzSziDt
DNLOIO0M0s4g7QzSziDtDNLOIO0M0s4g7QzSziDtDNLOIO0M0s4g7QzSziDtDNLOIO0M0s4g7QzS
ziD99JoyKmVUyqiUUSmjUkaljEoZlTIqZVTKqJRRKaNSRqWMShmVMiplVMqolFEpo1JGpYxKGZUy
KmVUyqiUUSmjUkaljEoZlTIqZVTKqJRRKaNSRqWMShmVMiplVMqolFEpo1JGpYxKGZUyKmVUyqiU
USmjUkaljEoZlTIqZVTKqJRRKaNSRqWMShmVMiplVMqohFHrJxj19kDzgcUHVh/YfKD7wPCB6QPh
A1barLRZabPSZqXNSpuVNittVtqstFnpYqWLlS5WuljpYqWLlS5WuljpYqWLla5WulrpaqWrla5W
ulrpaqWrla5WulrpZqWblW5WulnpZqWblW5WulnpZqWblXYr7VbarbRbabfSbqXdSruVdivtVjqs
dFjpsNJhpcNKh5UOKx1WOqx0WOm00mml00qnlU4rnVY6rXRa6bTSaaVhpWGlYaVhpWGlYaVhpWGl
YaVhpWmlaaVppWmlaaVppWmlaaVppTKqyagmo5qMajKqyagmo5qMajKqyagmo5qMajKqyagmo5qM
ajKqyagmo5qMajKqyagmo5qMajKqyagmo5qMajKqyagmo5qMajKqyagmo5qMajKqyagmo5qMajKq
yagmo5qMajKqyagmo5qMajKqyagmo5qMajKqyagmo5qMajKqyagmo5qMajKqyagmo5qMajKqyagm
o5qMajKqyagmo5qMajKqyagmo5qMajKqyagmo5qMajKqyagmo5qMajKqyagmo5qMajKqyagmo5qM
ajKqyagmo5qMajKqyagmo5qMajJqkVGLjFpk1CKjFhm1yKhFRi0yapFRi4xaZNQioxYZtcioRUYt
MmqRUYuMWmTUIqMWGbXIqEVGLTJqkVGLjFpk1CKjFhm1yKhFRi1f4Ra4c/h1Dr/O4dc5/DqHX+fw
6xx+ncOvc/h1Dr/O4dc5/DqHX+fw6xx+ncOvc/h1Dr/O4dc5/DqHX+fw6xx+ncOvc/h1Dr9+wuHX
170F7vcMyZ5lQH6Uj/SZu2ju0Xfd66Oszff7rlJ83Hez3zPqn/ddWHe/7irFW6nn7m1X6j0eu0z1
Ufbn+2OX/j3WXWb49q/e/YTPZbez3su3/iwX4tv/+/7X76XQfPvn75K9Z8lv3wp+lxneZ5W67na7
t2LeX85bDe9O13vuAr3nfX85z7JH3svA/vZK3/V9t9uucn2WIfmx1R+d++t6ll/3+WnX9729luOf
7y/wsv/Oo9zCb6W+H957ecBfx2fsv/xunX0dqLb/q3fH7P22y3jfDsu7SfjtLXh3Kj5LkHsvW/ej
3O73Up/fS0P/9mzvVsPbtf76dRdL3stzfV/3I/b2/74bC19HbNTB/O0zP7f9kdttd06+jnzUn7ju
z/z+XjxLMXp77jLVtyP2LtF9K+O9nrejej/eynX/V+/q3UepXB/llH69wFnLb93LeP9bj2Npxb6Q
nqVAfJY9/O0lvC+2t7/+vlafZUx9/adnnSnvr3Tuf/3tn9yP92LWC4z9ed7lyffnrmR8O4ne38G3
9fN+fF5rY9T6udWZ8tiP2Psrffvn74LK221Xet4/7W/T2wF/Pz5vZ9B+Dj530eVbYe+n1b088s9a
/G9v+vuyeR2Wy34w38+4tzX2rnZ8vV91Vr5LI+/Hy3nUqXfdK3yWZfpRp8zttitGXwfhWmflWhW2
vYz9mlD247cXfq0Tf//l0nG/rkj1vr+f749aoo8SVL69p+9nwdvhfdaKer+gvb329xPtUWfl60qy
7gfz/dC9vX37MSyV9Nsj++Vr2xfJ25O8m07f/tX7Ynvcdnf320HeF9KjTrS+O2Zfr73OyvcL4+tC
dN0X9vub+3aU3s/K13+61Xm61N+61Wlel9P3o/E6zsfv3OtAzVo/taL2q3HujtB7KbJfy2/uz3yp
6+H+y8cFZKvFX8721+uqi/C7I/R14i+1Eo7fiXoL7nWJ+1TH8FOd1M+6gFxqidZVYj8HbzsmXpem
Wsb7BXbbVbePcom/3vd1B9n76fm6aj33t2k/T4tfb4+/v/bXRWYrAF3qonetFXWvV3rZ/+j7WfB2
kPfz/bafMq8XOOt8X/ajeq0y9jPl0342Pcq1/rr61fv1fna/vfD3o/pWzPs/f/uj+wW2vMpvr+5Z
l4L39fx2TPaX89jfuNebEnVpqivS/g5e9ud5Ox0ehfWd5o/9Iny/7T3As4Thr2vCreCy1NHI/W3a
V0udca/LRdYKb3UpuNVBqPd0P7x9X5CvxX+vy06vI39c9JZaUY/9jHtfWq/r/FZsOgB031/pO7+e
4+Ma/s6ve/nhb7c6qnW+v5Zo23/5qGdfmSVCf6v8/fR8XTNrkbxf9F4nWr3Ll3pT7nW12UF2r5Ox
7xeH10qIarGOS1MtpOdjfzk7T8uj/qzG7FlC9WcJ1e8/WPN7zcebct8vwq/2qe9/9F1x/LowbrVa
Dmyt+7v8/jtvT/LuJH/7Q+/r8FaMe9Sqe3tDd7Td9uJfB+pRsLvvxe8sOHq2qMNyr2vmp4/Fvy/s
S5Gx7e/gaz1Xb7M3VLfqCg56PmoBfNrl0m//914V7nS47Ofg69Sra/h7D/B6d3K/xD1q1e1PWNeE
tx8ex7Xu6JEKAe/L+Fn69Ld/u18Tcl/Gb2fis478e7P0OuNqHe5v7rpfHF4X/E/1n5Y6hu9AXIr4
5aJ/dYxb/c5WF72jlX3WO1hsuhyPrPsj1wL9vg4/7f/ptcKfhba1ztxRPL1WP3+pziGq5rUeyVrG
j7oI12HZ/1VpvV8n0VanZxHtUmfTfq2b+5v7YvfRrz72l7P32LN6iWv1Y7FT5n6rdrfOwdfV71mL
9lmQqk8Kl6NJrjbj/d15/fKjzu6+r8O9obrv18O3Cg9oXo8fqge41nt6qQV5qc87x7l8ravNzpRH
dTKxH97X+X6pt7LOi2etw3213Atty34Kv1rHOtH2tzJrsd3qlNmqTc39Xz2PTwG5XypfjcfRod3q
VdTFYS/suHzVZ5kX1qtXvx9d06jVUqXe6q2818eTvamot/LVdB2fbqqLuxcL9mvLKNg9q4/KHUm3
quftmd+P6uvKdrzAViAbdcKu1V7e6lVc9rX6rN5mP84HQbYd2c/jM/WtTrRqAm+XH+Dm+Hhbbcbt
aJILE/tVdC0g3ouez/0dfB26anv2q+inj08cl+M8PS5WUReQ+rh0rd7443zPWmO9Civ8XavtudY1
fF+r68cHsf2t/PSD8+te5+BWa2PuV8j9svzYmfusC/Wr721Fz60a8l5P+Khr3aiXc6yoW6HtUSu8
viu4F9av9cj+2qM+v1eX+6JDnWj7Z5nL/syvxf+oH+7VDbZ6m3pdrJ5/8V3S5xdA5xdA5xdA5xdA
5xdA5xdA5xdA5xdA5xdA5xdA5xdA5xdA5xdA5xdA5xdA5xdA5xdAf9kvgP6InUL/+N2Xzz//9pvP
v/nFz/7xy+t//vHLv9sq9Ivvf/vYn7lJ6JDJrou7axd31y7url3cXbu4u3Zxd+3i7trF3bWLu2sX
d9cu7q5d3F27uLt2cXft4u7axd21i7trF3fXLu6uXdxdu7i7dnF37eLu2sXdtYu7axd31y7url3c
Xbu4u3Zxd+3i7trF3bWLu2sXd9cu7q5d3F27uLt2cXft4u7axd21i7trF3fXLu6uXdxdu7i7dnF3
7eLu2sXdtYu7axd31y7url3cXbu4u3Zxd+3i7trF3bWLu2sXd9cu7q5d3F27uLt2cXft4u7axd21
i7trF3fXLu6uXdxdu7q7dnV37eru2tXdtau7a1d3167url3dXbu6u3Z1d+3q7trV3bWru2tXd9eu
7q5d3V27urt2dXft6u7a1d21q7trV3fXru6uXd1du7q7dnV37eru2tXdtau7a1d3167url29A2SV
UauMWmXUKqNWGbXKqFVGrTJqlVGrjFpl1CqjVhm1yqhVRq0yapVRq4xaZdQqo1YZtcqoVUatMmqV
UauMWmXUKqNWGbXKqFVGrTJqlVGrjFpl1CqjVhm1yqhVRq0yapVRq4xaZdQqo1YZtcqoVUatMmqV
UauMWmXUKqNWGbXKqFVGrTJqlVGrjFpl1CqjVhm1yqhVRq0yapVRq4xaZdQqozYZtcmoTUZtMmqT
UZuM2mTUJqM2GbXJqE1GbTJqk1GbjNpk1CajNhm1yahNRm0yapNRm4zaZNQmozYZtcmoTUZtMmqT
UZuM2mTUJqM2GbXJqE1GbTJqk1GbjNpk1CajNhm1yahNRm0yapNRm4zaZNQmozYZtcmoTUZtMmqT
UZuM2mTUJqM2GbXJqE1GbTJqk1GbjNpk1CajNhm1yahNRm0yapNRm4zaZNQmozYZtcmoTUZtMmqT
UZuM2mTUJqM2GbXJqE1GbTJqk1GbjNpk1CajNhm1yahNRm0yapNRm4zaZNQmozYZtcmoTUZtMqrL
qC6juozqMqrLqC6juozqMqrLqC6juozqMqrLqC6juozqMqrLqC6juozqMqrLqC6juozqMqrLqC6j
uozqMqrLqC6juozqMqrLqC6juozqMqrLqC6juozqMqrLqC6juozqMqrLqC6juozqMqrLqC6juozq
MqrLqC6juozqMqrLqC6juozqMqrLqC6juozqMqrLqC6juozqMqrLqC6juozqMqrLqC6juozqMqrL
qC6juozqMqrLqC6juozqMqrLqC6juozqMqrLqC6juozqMqrLqC6juozqMqrLqC6juozqMmrIqCGj
howaMmrIqCGjhowaMmrIqCGjhowaMmrIqCGjhowaMmrIqCGjhowaMmrIqCGjhowaMmrIqCGjhowa
MmrIqCGjhowaXyFG+hx+ncOvc/h1Dr/O4dc5/DqHX+fw6xx+ncOvc/h1Dr/O4dc5/DqHX+fw6xx+
ncOvc/h1Dr/O4dc5/DqHX+fw6xx+ncOvn3D49dcZI93+9rc3eW51S/BW95FWJsWz7jm81E2De4bI
p7rN+1r3M68VzHHZb318JbMcd1fWbXKP4968R92FWPeIvt82fK+7PW+3uuH2WXexjj0e4nX736xf
vtUt5XW38KXCTe7HbY3HLdx1v/fjiBKoe8LvlSnw/sOjsmxetywed95WjMKz7r2/1/F5VuzFcTPk
kafwrNvF30u91z3ht9vHjcT3I98h9uL3IKftI0LiXqkiR4zCpW6qvFXUy54hEnUHb98jCV7/qu4W
PpI1nhX18qwMkXvdW77ftHxEtLSPUq91h+qeYbTWzeq93sFn3a/7qPdr1p3/9wp7WvY7yZ/1z1+/
vNXd75X+836g7nVz5uv9qoCP95s8X3/0Xne2L3U/6qw7gaMCUOp2+vd7uV83pvYqbKnD8qzb1+ut
fFa2znvCwutuz1Gvou93Ar/f6vxaUcdN3ZUg8L6wb5WT9Tq8lYjxqLSd/ZcflVNzqyN2/7hhez+b
rpWa8aw3t1WUSdZ/+lT//NN+J/BrJSx1VOuu2mcFzey33B838691Vm4VETXrHvVKyXk9Ya3MR93Q
/qwknf3m8EudIL1uz/5U+QVLBU/c6r349BHkdK27ha91guzv4P0jS+t+nDLPOt+j1k+vg1kpFUcM
0Pvt649K13pUkNPrQF3rT8wKJVnrh2NJHG/Bca9y3eG8v4r4wTtYl9P3el5H7L4/cqQe7OkStRJe
V9HKMHrUbfD3I5pnrSvAvZIIWsWUVPbH+6t43ZVdeSX71bjOuMexNi4/KPWosJKzLnU9vByvvX75
coS7Xeuu7Lqdfn/mUaEkt7qK3uvIH4E1UQFMFefxWhIVobUfuiOOalTWz1phB9t+R/q9YqRed6T3
upJUCsxxV/ajAob29XOtA36vHyrc5HXALxXZUDXv8WHrfjrcKqnqdepl/U6rw1IkehxpF3WVOBb/
cS4/6xjuSRaVsvSKAKh71G91i/ulTvzbEdj3qMNbd9E/Ko7hcfynIxjoUTkstWgvdaf9HohwnGgF
jluFB92Oa13FBLwy7+51Sanlt7+V90rEyAomu9Rb0Ouvr3X5ysJNqyvtVrfct0o5if2sfF08rxUQ
U2/uXlhdM5+1wl9hWM+6pBzhHUs9YRH2WalGH8liFXOzx8FcKjKmkrwedR27VRzDq306js+lFu0B
zaWWTZ2ejyO361rHsEIunsXBe4W7HfFhzyPmJisu50jtqSvkpaLB9uiZCoV8HecKatyvG0td1eMj
LW6Pe7t/xIvcj7PyuEpUjuEeQrRUQEw1A6//VOmQ94qx20/YUblmra5svcKDbpUT0SsM61Gl3uo8
fdQ7WFlIrwv+kYL3rBV+vINHr/WsduWItDjena2uq0ew3agjdlyW62jsZ9O6d4wvlFSK2eU4U0YR
tt6mS0XLvZ/Ut7p0v1bdrU60I3iiCHupLL/rcVW/VPLRpV57hZddi907/uZHt3ytR+7VMOwdyFbR
PM+P/J0jF2+neSXu3YpNr/iVo/Go/vBS3eB+OmwfcXh7N1jxPa+z+8jjyIpl/FRPeKuas96LWU94
rIR6yY9qM+6V8LJHz7QKiLnU2bR8JJTdjhcY9RnkWevwWjlQn+p1VbrfrZrSHRP3H2CiAo+OqKDr
EcLY6pRZK5nlOGHr49L+Dm51IXp8XPT24nuderMQMD5iIo827Fa5iu///B4f2ab3yrI5Pubs+SlL
paXUFfJ20Lwiz171VMrbHqSSP3g5tzqYlTN7Oc7caroeFT/3PMJSj4DOOk+vFUh3nHF71Mu9PjLM
CprZqjtdCiX1Ee/1UeiIuamO+riq7zSvELR7xbC+1lg1wNdq7PdfflYe0FZJnfGRbHipxJkd0FEU
Hj8I0q3Lzv2geWWb7rFWUVe/5eMD5vVIwasAwVsB+lrN2+MAa8Xq7fSswLVXb3MEDNXZ9KhPZNd6
gbfqsfem9F7fAzwr+ag4+FoSdcrs7eWzDm81pa8/cfSQt2Jc9VF7IOazYomyYoBGfRzo+8F8nSCX
gngWOKqMj4TE45NLVu9XKWbv7+mt4ndfAV61fh5HV3l0BbXCH3Wc7/XxZE9aHBXvGPVZ7/jEulbP
9vzIk7odMVtH7PKslq/+0+VIUTzShOt3bu0vvkv6/ALo/ALo/ALo/ALo/ALo/ALo/ALo/ALo/ALo
/ALo/ALo/ALo/ALo/ALo/ALo/ALo/ALoL/sF0FeLkX791jd/9+W7//n95y/ff/PLX33/6+++/Ns3
v/7l55/tP//sV9/++vOX//7zX3z+5h++e/v5v33/+fvvf/Xdt/+tfvfTp/bbv/XTfIf149X3n/7L
f/3u289/+rapT3/7sbnLXWfuNx7uNx7uNx7uNx7uNx7uNx7uNx7uNx7uNx7uNx7uNx7uNx7uNx7u
Nx7uNx7uNx7uNx7uNx7uNx7uNx7uNx7uNx7uNx7uNx7uNx7uNx7uNx7uNx7uNx7uNx7uNx7uNx7u
Nx7uNx7uNx7uNx7uNx7uNx7uNx7uNx7uNx7uNx7uNx7uNx7uNx7uNx7uNx7uNx7uNx7uNx7uNx7u
Nx7uNx7uNx7uNx7uNx7uNx7uNx7uNx7uNx7uNx7uNx7uNx7uNx7uNx7uNx7uN57uN57uN57uN57u
N57uN57uN57uN57uN57uN57uN57uN57uN57uN57uN57uN57uN57uN57uN57uN57uN57uN57uN57u
N57uN57uN57uN57uN57uN57uN57uN57uN57eEzNl1JRRU0ZNGTVl1JRRU0ZNGTVl1JRRU0ZNGTVl
1JRRU0ZNGTVl1JRRU0ZNGTVl1JRRU0ZNGTVl1JRRU0ZNGTVl1JRRU0ZNGTVl1JRRU0ZNGTVl1JRR
U0ZNGTVl1JRRU0ZNGTVl1JRRU0ZNGTVl1JRRU0ZNGTVl1JRRU0ZNGTVl1JRRU0ZNGTVl1JRRU0ZN
GTVl1JRRU0ZNGRUyKmRUyKiQUSGjQkaFjAoZFTIqZFTIqJBRIaNCRoWMChkVMipkVMiokFEho0JG
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
uhQcwWOXSsKrvJ8jCW+/ilYD87rW3QvQdX2+FHMfde7ssZ3PD1IfZ8H9OFOW+uvXqqfCyY5O5nJc
E8Z+fG6VBnetrvJ2FF/ZrnvU1hEdd68PR5Um+AowO1Ll6iDcjw+GUaG89UnqWDYfmW2Fm0sFVd6O
FMkjcK5Y+Tg+gBfEr8cnzUt9XKqPyfsnxOMDeH3Kfh2fa8XU5d5CfCT8HQlbWY88Kv+1chMPFlwq
9eoIJ9s/ZedHJOd+2amEpMcP4i0PjN6ON/dIwz1SJI/ky/rcfa0GeM/qqybn7fl3kNVV9NWKVPu0
N12jrlqfKo3y/gGg/ZpQwWxvT7JnavZqOGP//PU4rr3tI2vtVh9Ld0Bn/ausA/66FPzFd0mfXwCd
XwCdXwCdXwCdXwCdXwCdXwCdXwCdXwCdXwCdXwCdXwCdXwCdXwCdXwCdXwCdXwD9Zb8A+mrB2r9H
vnZsZXKP1eoeq9U9Vqt7rFb3WK3usVrdY7W6x2pzj9XmbrDNSjcr3ax0s9LNSjcr3ax0s9Jupd1K
u5V2K+1W2q20W2m30m6l3UqHlQ4rHVY6rHRY6bDSYaXDSoeVDiudVjqtdFrptNJppdNKp5VOK51W
Oq00rDSsNKw0rDSsNKw0rDSsNKw0rDStNK00rTStNK00rTStNK00rdTdtc3dtc3dtc3dtc3dtc3d
tc3dtc3dtc3dtc3dtc3dtc3dtc3dtc3dtc3dtc3dtc3dtc3dtc3dtc3dtc3dtc3dtc3dtc3dtc3d
tc3dtc3dtc3dtc3dtc3dtc3dtc3dtW21UhnVZFSTUU1GNRnVZFSTUU1GNRnVZFSTUU1GNRnVZFST
UU1GNRnVZFSTUU1GNRnVZFSTUU1GNRnVZFSTUU1GNRnVZFSTUU1GNRnVZFSTUU1GNRnVZFSTUU1G
NRnVZFSTUU1GNRnVZFSTUU1GNRnVZFSTUU1GNRnVZFSTUU1GNRnVZFSTUU1GNRnVZFSTUU1GNRnV
ZFSTUU1GLTJqkVGLjFpk1CKjFhm1yKhFRi0yapFRi4xaZNQioxYZtcioRUYtMmqRUYuMWmTUIqMW
GbXIqEVGLTJqkVGLjFpk1CKjFhm1yKhFRi0yapFRi4xaZNQioxYZtcioRUYtMmqRUYuMWmTUIqMW
GbXIqEVGLTJqkVGLjFpk1CKjFhm1yKhFRi0yapFRi4xaZNQioxYZtcioRUYtMmqRUYuMWmTUIqMW
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
s3LWNfzIwnzWQmr7I7ej96vr6qtrKgRc6mq8n/iz6hn7af6sf3WrAKHXajkYN6tDq3ruR8pUxS4+
6nJxqfjG/ahWUNwreudWqaiP+k+X/Zn3Hy61VnO/krzgcqsWq/h1qwix/XqYHyFe+yNR3c6lmoFe
+HtU/N7yES18qV5iD7h91OfTrNjXynV7AehS3cW90H/0mfUJ8cgWOnqbWwUoXmo93yvB7lpL4l5v
0xFotC+tWr2v4ivM6VnxsfcjE/FRiXGVzvusy9d+/bl8JC09jsilashvBwdHsaAyffecwgotftR7
+qjPuW+V79fwrdbGUpnHlW74eskVBb23za2O4VKfTysr6/WZsYh/fH6/VV7vEXK2n5V1gjyeH58H
73WN2s/B+AhePcq4VfrarYIz73WaX4pf1+qE9yv2KHZfPlKrL7VW39+C263OlDryr8vXs56wcoiP
c/BWH472ALMfJM8967r6rHjdZ0UUPyqv91FRkTukxn4hel0BCgHPx198F/35BdD5BdD5BdD5BdD5
BdD5BdD5BdD5BdD5BdD5BdD5BdD5BdD5BdD5BdD5BdD5BdD5BdBf9gugv7qY8U9/+7HVzT147r7e
3H29uft6c/f15u7rzd3Xm7uvN3dfb+6+3tx9vbn7enP39ebu683d15u7rzd3X2/uvt7cfb25+3pz
9/Xm7uvN3debu683d19v7r7e3H29uft6c/f15u7rzd3Xm7uvN3dfb+6+3tx9vbn7enP39ebu683d
15u7rzd3X2/uvt7cfb25+3pz9/Xm7uvN3debu683d19v7r7e3H29uft6c/f15u7rzd3Xm7uvN3df
b+6+3tx9vbn7enP39ebu683d15u7rzd3X2/uvt7cfb25+7q7+7q7+7q7+7q7+7q7+7q7+7q7+7q7
+7q7+7q7+7q7+7q7+7q7+7q7+7q7+7q7+7q7+7q7+7q7+7q7+7q7+7q7+7q7+7q7+7q7+7q7+7q7
+7q7+7q7+7q7+7q7+7p7h1CXUV1GdRnVZVSXUV1GdRnVZVSXUV1GdRnVZVSXUV1GdRnVZVSXUV1G
dRnVZVSXUV1GdRnVZVSXUV1GdRnVZVSXUV1GdRnVZVSXUV1GdRnVZVSXUV1GdRnVZVSXUV1GdRnV
ZVSXUV1GdRnVZVSXUV1GdRnVZVSXUV1GdRnVZVSXUV1GdRnVZVSXUV1GdRnVZVSXUV1GdRnVZdSQ
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
vq7b7RE+s0ijE4ovJIGTqWSWKo9ROss1VmCcnr3Ek5jfbtYWGfTnUeVGjO0rQazE2EyFrrVFKm13
Z4UPP0mDN39g5F5rZmzMeGxSOiP56auSNXaOsVNYzulKI7AGWSOzPSaGzL/K+VrJcQTkiUwgD0Qu
KyDxUlkFo7LI0WtVIIh+hHzzy8kUltY6OWvkmliK6OoNbtwrO8fac691ylgSq7FWoM+yG6uxNNYX
6z4D8oyQz9pYta2y5k4nzBh3cH1NYXyZs+rESsxmzrDktSpztPFgBY/U+dFrBuRLKBZGFDmH02+u
z4DISI9ntSyk1XydO9xO9yUmVybg24iRrinMO/iUVcAqqfIKf41+ru+teuOTUNZw8fxPIb/afF1C
zHOwOamhyxj9pvDc0+fmJwsmdpZGMl/3ikHrC7+eTkCFH/UFX8ha++IyjbVBx1j1pfTya57SSIMb
M7LiD4ihreJrMjpl+9pG5HZ8ZZzOqjedac7JLRghX2FWUnkQ5mtancSrHgwsI/xuvnTd9l6qgUUe
my9KxRx2RO9kjao/4zDYaiPl1V4TMV+Fx5jadxxRx3kazqH7Q3aWr32tdZuhCU8IeCsIKhozcQ/5
jIn8CJ+4gxcPLnyHJNiIzOGLqzMbRM/CuJ0FHDs+vPkSnOTV/Wl7Z+FFD1Ob58c6Y94fzPnznYqZ
M3msTHMqIXrxhMBCcOIPLlmdqvq8kmWhfEHJSrBd6MxBx05b52ttx8ryiM2XsvKYlki4Mx8cg82w
uPLeQ4GDBvpTe7cCFiB+TcBxp4WJ/DCiRpTiK1TOkO/6eipkLIXW/cYRP5+8U2Ee4JF2LjzhfSV+
T2giM/iJUgoh3+mP4Uh5FbI9hbHhM9/hGPNrBdiTR72VJdVOHhhVIuExkN691jg+sVx/pH4SH3Yi
vcbE2cjcFhaDbiRaW/urviT0WfLnyvf83Y8/+fhPn374yad/94uPPv3Dx5/869/94Rcf/pex/18+
+u0fPvzkZz/6yYd/98uP3/b/+dMPP/30o49/+89899276b9Mn+WNPvd1zJ/01JOeetJTT3rqSU89
6aknPfWkp5701JOeetJTT3rqSU896aknPfWkp5701OebnvpbvMLkeaK/Zibrv9WQv8pv/FW0mwoz
gHGrebf6CpkLd4YXD8fUf6eSjAKOy4PCk8OnrszP/E3YjWj6/ekCK9572kPfubwjr992XtX0rEBn
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
Eu/n5n/yI7S0eUv9iA8t/xNN7jS5+g5N7r7Dbep0nd+4TpM7Te40udPkzv3q3K9Oc6pf0K9DuzpD
veKofSRAzrDySEoMO3YbqXjvSlePATNsxuiMMXyG4ZieZRjUPsaUKS1hInITkZuI3ETkJiK3b3Km
Ixk/KGq3b3HYAYxfFtmbyN5E9iayN5G9iexNZG8iexPZm8jelGkwcbyJ400cb+J4E8ebON6UYDAx
uukRhonITURuyhmY+NvE3yb+tk9GK0bQayJyE5GbpuYm/jbxt4m/TTNyE20btG3QtkHbBm0bM3KD
pI0ZucHNBjcbE3GDkg1KNijZoGSDkg1KNibZxiTbeJZh0K1BtwbdGnRr0K3xwOJt5/zcVUSeJMmT
JHmSJE+S5EmSPEmSJ0nyJEmeJMmTJHmSJE+S5EmSPEmSJ0nyJEm+iEmSL6JyyHXrILzmLaXHMoO4
edvpukzXeRzQ6JYTb9Lon5POPPmJkwuefham3nCyjc486d4Tq3ZP2ujekw4//QgD4KQ5JwPghLab
f4fmnIwED8UapxutMFphuLDGlY3mGG03wBvNMaAaUHFihCOId2UX73JJLhe8Qroqu3QV4lHZxaPQ
jMpoRmXXjEIBKbsCkusduagRqkTZVYlcesgrobyYyAt1KLnJXnLjBTZeReNlMF704rUu/ga/vy/v
b8H7C+/+bru5e2Uibu5Q3SdB5PYa4T6efdD6WH0NP67s47ABzEedjx8fJD4SXqcDrAGsA6wDrAOs
A6wDrAOs01EdPB08HTwdPB08HTzdxzzM88IjhAVmHvjGzS84gY6jGGgLVxygx4gY46GISovefizM
iTuh82hXEacWcWr5On9VY4vItYhci2bJRVRaNEsu3+YUnMPoliIqLf/IYXVSEacWcWoRpxZxahGn
FnFqEacWcWoRpxZxahGnFnFqEacWcWph3jzuRhG5FpFrEbkWkWsRuRaRa/kdZ46uF8sWzZKLyLWI
XIvItYhci8i1iFyLyLWIXAvkWiDXArkWyLVArgVyLZBrgVwL6e7KqCqwbIFlCyxbYNkCyxZYtpDT
rkRzBbot0G15TXMZnfBugXcLhRYNgikQcIGACwRcmN0W6K0wuy2D1a7rzOzQP9l/HfBjmlteP3qC
2c86gXoC9aRXB4e1974D1BOoJ1BPoJ5APemxE2AnwAxgBjADmAHM+FEDmAHM6DoDj4HHwGPgMfAY
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
M5gzmDOYM5gzPTYsczR4NHc0djR1NHR4mSSDTCKrJDtMssOEHTZCfaVUziSDTDLIJINMMsgkg0wy
yCT6SjK/JPNLMr8k80syvyTzSzK/JPNLMr8k80syvyTzSzK/JPNLMr8k80syvyTzSzK/JPNLMr8k
bkka7knDPWm4Jw33BLeMBFLSuE8a90njPolbkoZ70nBPGu6J4Z4Y7gluSQzuBKUkxnRiTCcoJTGU
E0M5MZQTQzkxlBNDOcEkiYGbGLgJJkmM10TebCY5lhi4iYGbGLgJSkmM18R4TYzXxHhNjNfEeE2M
18R4HSePU8eJ47Rx0jgla7xmjdes8Zo1XrOCq6zRmTU6s0Zn/iatGz+lYZo1TLOGadYwzRqmWcM0
a5hmDdOsYZo1TLOGadYwzRqmWcM0M1Eeeb+s8ZoJpUbCLxNBjTRe1gjOGsFZIzhrBGeN4KwRnDWC
s0Zw1gjOGsFZIzjLYWcN3KyBmzVwswZu1sDNGrhZAzczcDMDNzNwMwM3M3AzAzczcDMDNzNwMwM3
M3AzAzczcDMDN7/ng+GEkYXMDOX8mid0PwLUDFQf053mZDBnMGcwZzBnMDMsyWXNZCdnspOZUZ4Z
5fkVOHX/df9RWjHG/cgreeao42g7OZWRqBspJc8kjeIcTyiNXN1Jv41M3SlrOWUtp6zllLWcspZT
1nL+PWcyhx/ZuvMbfNZvLaToFrTGFupcTjHAKdM6ZVqnTOv8Dt9d2VGnnDK287sc1n05ZXWnrO78
Pn/VzTplfqfM75T5nTK/U+Z3iiXODzkzsTO67md8PtkxdkZni1JOGeQpgzxlkKcM8vw1p4zOkmWe
sszzY/6qcX3+js8aBufvx+dRknLKaE8Z7SmjPWW0p4z2lNGef+ZMjetT1nvKek+s9xzWe31x5sjC
zsrOxs7OzsFOYiezc7Jj7BR2KjuNndFOjPaEf05s9cRWT+KlExM9MdETEz0x0RMTPTHRE9o5McgT
gzyhnRPzOzG/kV8ceb5RzzHE2haKdxaKd0b2alRyLCRETTZmsjH7Cn8VeJOxmYzNZGwmajJRk8ls
7B8482BHrbVv8Tmzw5AFuWzMRF8mizLRl8mQ7HucUthR95gIzX7A4dFKmZbJtOzH/FU9aLIxk42Z
mM0UiZnMxmQ29tE4c+ToFnJ09ks+ayTYr/isAWHiOpNFmSzKxHUmrjPsZyT1TPZjsh/7A38d90mG
ZDIkkyGZ2M9kPyb7MezHYD/DbAyzMczGMBvDbAyzsWE2Fwb/zsmOsVPYqew0dkZvU2y4kMMzDMkw
JOPZzkLezLAow6IMizIsyrAow6IMizIsyrAow6IMizIsyrCokY4a6afCWBvlZqOkZeSORsqoyH6K
7KdgP4UxzrVkSOVrHBaoIosqsqjyDf46fkmmVcRIRYxUZC1F1lJkLQX+KdAc8P5pfB4ZrYIhjYxW
kf0UMVKR2RSZTREjlZ9wiu5VkdkUmU2BiEbSq8h+iuynfPS5ayU8KYAnBfCkAJ4UwJMCeFIATwrg
SQE8KYAnBfCkAJ4UwJMCeFIATwrgb5EC+CKqC1xoNbiK+LCID4uMtshoi4y2yGiLjLYoQC2y1SJb
LeK68ke6QgO2yFaLbLXIVotstchWC7ZasNWCrRZstWCrBVst2GrBVgsUVzDRgokWTLRgogUTLZho
geIKllmwzALFFQyyYJAFgywYZMEgCwZZMMiCQRYMsvDm9MKrRQXLLFhm4fXohVd5xns1Q3ukYqLj
VZ2RvRlCIiMTU2WiVSZaFUbWr3ImTo4rY6L8xNf5LNhVtlrFflUmWmWiVSZav80pA45stcpWq5it
itmqQsQqO6yywyo7rLLDKjusYq0q86syvyrWqj/nF0fLZX5VUV/VKK8a5VWjvGqUV43yqlFeNcqr
Rnn9hKsSNIwEVtW4r3DUyFlVcVTVuK9/4q8aSVUGUGUAVQZQMYCKAVQMoPIK20J5zkKeqpJSW0g9
1WEb15GdIwc7iZ3MzsmOscNIan5WZaexM8YT1lKxloq1VKylYi0Va6lYS8VaKtZSsZaKtVSspWIt
FfqqGEmlqmAhw1PhsZElGFP3MVUfM/ShudX8XP20lo49tWLs2eAxriT60tKxp5aOPbV07KmlY08t
HXtqxdhTK8aeWjH21Iqxp1aMPbVi7KkVY0+tGHtqxdhTK8aeWh/21Pqwp1aDPbXS66mVXk+t9Ho2
+IfGin+0ZuvZiN/oA1mCFmY9G/MfukYmoYVZTy3Memo91lPrsZ5aj/XUeqzXmfDtmOE3TGJM6xuc
MKbwWrP11AqtpxZmPbUe66n1WE/WY71OmjniOws72Eb3Ixs7OzuE4qP+iGVYT1ZfPVlr9WSt1ZO1
Vk/WWj1ZNfW6jv/EaC2WwNKoJ0ujXl8GRgZhBkbmOtm/c7DDRLc7eDBnMGeCq+5HAJ8B79zSaeAw
G1ZEPVkR9RzfGEmHofjW/Xzm1fzBO0Pd0zGkURCktQVPrSR4aiXBUwsInlpA8NQCgqdWCTy1SuCp
VQJPrRJ4apXAU2sCnloK8NQKgKdWADy1AuCpFQBPrQB4agXAU+v9nVrv79Qyf6eW+Tu1zN+p1f1O
re53anW/U6v7nVrd79TqfqdW9zu1lt+ptfxOrdz3NnUZ+ZSVqiet5XdqLb/rsO6+FvU7tajfdXhl
Z2NHY0Hr/Z1a3e/U6n6nFvU7tajfORb1W1npbaUWSqv7XZ81MLTM3/V53GLYhvX+Ttb7O1nv72S9
v5PV/a7TjZ3Cnw52En+qHMns+I/66Y0jfh0/y//Ux84wLVb3O1nd77pOHzvm31k44l+mg42WZto1
rI6F/04W/jtZ+O/0hf9W8ggreQQW/jt9vb+VXALr/Z2s93ey3t/1HX5UVmdSSzapJZvUkk1qySZt
ZHvn53Kfx5LMkkS+Pmd2HO643pe10UKeUks2qSWbtJFtaCOv5BTWkVMwiSSbtJFNksgmSWSTJLJJ
EtkkiWySRDZJIpuUkE1KyCYlZJMSskkA2SSAbBJANgkgmwSQbQggryzlLAFkkwCySQDZpHts0j02
6R6b5I5NcscmuWOT3LFJ7tgkd2ySOzbJHZvkjk1yxya5Y5PcsUnu2CR3bMgdG3LHhtyxIXdsyB0b
4saGuLGhaWxoGhuaxoaUsaFgbCgYGwrGV5cwIMaSyGgam2saryyJjJSxvXuZTfEdMGffAXwGfAZ8
BnwGfGbUFWys+FmMw4LvKIzd4qfT0kxLMy0d63gjZWxIGV+n+4+qx6axwbco0WBSIjUJkNpEz5Vx
WJeVEqlJidSkRGpSIjUpkZqUSK8zKzvCNmE2ZVzrG+OzMgwmtVKTWqlJrdSkVmpSKzWplV6n6BZJ
ttQkW2rT9z53lYEnIfAkBJ6EwJMQeBICT0LgSQg8CYEnIfAkBJ6EwJMQeBICT0LgSQj87RMCX0S1
gQuthryWUzEtp2JaTuX6q4aS1lUxratiWk7FtJyKaTkV0yoqplVUrjMZRcob2FhXZWUtj5X1ANcx
zTWttGJaacW00opppRXTSis2wc+a35qWXDEtsGJaV8W0nIppORXTciqm5VRMy6mYllMxLZ5iWjzF
tGaKsWaKsWaKsWaKsWaKsWaKsWaKsWaKsWaKsWaKsWaKsWaKsWaKsWaKsWaK+ZopK2uUrGPObiye
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
eueT5mnOY8qsj8u7+8fp/nG+f1zuH9f7x+3+cb9/PO4f0/3jHdV6R7XeUa13VOsd1XpHtd5RrXdU
6x3Veke13lFtd1TbHdV2R7XdUW13VNsd1XZHtd1RbXdU2x3V7qgUmKjA8FRd4fgKP36qKPGzJcmv
h2E/en3nuLfmGK35L2//rpT/FesshG8jqPn56+uJxp+f1eteSD5+76/39qR7e9K9Pfney3ngOv+d
f1dzWvj3lfDvavj1XOOb/41/3w3/rieL1yPJT0c3/bf+Xd34Yfj3Ufh3Hfvt6JL474/h3/W87g9j
qy6Y76Njvo+O+T465vvomPd394/T/eN8/7jcP673j9v94x3Vfke131Htd1THHdV97M3HHdVxR3Xc
UR13VMcd1XFHddxRHXdU6Y4q3VGlO6p0R5XuqNIdVbqjutvDfLeH+W4P890e5nxHle+o8h1VvqPK
d1T5jirfUeU7qnxDtbx7d/843T/O94/L/eN6/7jdP+73j8f9Y7p/vKOa7qimO6rpjmq6o5ruqKY7
qumOarqjmu6opjuq+Y5qvqOa76jmO6r5jmq+o5rvqOY7qvmO6s78y535lzvVL3eqX+5Uv9ypfrlT
/XKn+uVO9cud25c7ty93bl/u3L7cuX25c/ty5/blzu3LGmDce+PO7cud25c7ty93bl/u3L7cuX25
e+/l7r2Xu/de7t57uXvv5e69l7v3Xu7ee7l77+XuvZe7917u3nu5e+/l7r2Xu/de7t57uXvv5e69
l7v3Xu7ee7l77+XuvZe7917u3nu5e+/l7r2Xu/de7t57uXvv5e69l7v3Xu7ee7l77+XuvZe7917u
3nu5e+/l7r2Xu/de7t57uXvv5e69l7v3Xu7ee7177/Xuvde7917v3nu9e+/17r3Xu/de7957vXvv
9e6917v3Xu/ee7177/Xuvde7917v3nu9e+/17r3Xu/de7957vXvv9e6917v3Xu/ee7177/Xuvde7
917v3nu9e+/17r3Xu/de7/O29e7M17szX+/OfL078/XuzNe7M1/vzny9z9vWu29f7759vfv29e7b
17tvX+++fb379vXu29e7b1/vvn29+/b17tvXu29f7759vfv29e7b17tvX+++fb379vXu29e7b1/v
vn29+/b17tvXu29f7759vfv29e7b17tvX+++fb379vXu29e7b1/vvn29+/b17tvXu29f7759vfv2
9e7b17tvX+++fb379vXu29e7b1/vvn29+/b17tvXu29f7759vfv29e7b17tvX+++fb379vXu29e7
b1/vvn29+/b17tu3u2/f7r59u/v27e7bt7tv3+6+fbv79u3u27e7b9/uvn27+/bt7tu3u2/f7r59
u/v27e7bt7tv3+6+fbv79u3u27e7b9/uvn27+/bt7tu3u2/f7r59u/v27e7bt7tv3+6+fbv79u3u
27e7b9/uvn27+/bt7tu3u2/f7r59u/v27e7bt7tv3+6+fbv79u3u27e7b9/uvn27+/bt7tu3u2/f
7r59u/v27e7bt7tv3+6+fbv79u3u27e7b9/uvn27+/bt7tu3u2/f7r59u/v27e7bt7tv3+6+fbv7
9u3u27e7b9/uvn27+/bt7tu3u2/f7r59u/v27e7bt7tv3+6+fbv79u3u27e7b9/uvn27+/bt7tu3
u2/f7r59u/v27e7bt7tv3+6+fbv79u3u27e7M9/uzny7O/Pt7r23u/fe7t57v3vv/e6997v33u/u
er+76/3urve7u97v7nq/u+v97q73u7ve7+56v7vr/e6u97u73u/uer+76/3un/e7f97v/nm/++f9
7p/3u3/e7/55v/vn/e6f97t/3u8Oeb875P3ukPe7Q97vDnm/O+T97pD3u0PelwDj3jl3h7zfHfJ+
d8j7Zx74f109Z1zkDv7ut/e7397vfnu/++397qj3u6Pe7456vzvq/e6o97uj3u+Oer876v3uqPe7
o97vjnq/O+r97qj3u6Pe7456vzvq/e6o97uj3u+Oer876v3uqPe7o97vjnq/O+r97qj3u6Pe7456
vzvq/e6o97uj3u+Oer876v3uqPe7o97vjnq/O+r97qj3u6Pe7456vzvq/e6o93sQvt/99n732/vd
b+/3IHy/u/H97sb3uxs/7m78uLvx4+7Gj3sQfty9+nH36sfdqx93r37cvfpx9+rH3W8fd1d83EPl
4+6Kj7srPu6u+Li74uPuio+7Kz7urvi4u+Lj7oqPuys+7q74uLvi4+6Kj7srPu6u+Li74uPuio+7
Kz6WAOPeOXdXfNxd8XF3xcc9Nj7usfFx97HH3ccedx973H3scfexxz02Pu4u97i73OPuco+7yz3u
Lve4u9zj7nKPu8s97i73uLvc4+5yj7vLPe4u97i73OPuco+7yz3uLve4u9zj7nKPu8s97i73OF6P
t8c7xeP4Hc/d2R53Z3vcne1xd7bH3dked2d73J3tcXe2x93ZHndne9yd7XF3tsfd2R53Z3vcne1x
d7bH3dked2d73J3tcXe2x93ZHndne9yd7XF3tsfd2aa7s013Z5vuzjbdnW26O9t0d7bp7mzT3dmm
u7NNd2eb7iF0uofQ6e6K0z2ETvcQOt1D6HT32+keQqe7G093N57ubjzd3Xi6u/F0d+Pp7sbT3Y2n
uxtPdzee7m483TMe6e7VU/Dq/67lpuDVw3geNvj/eeId4d3Dp7uHT3cPn+4ePt09fLp7+HT38Onu
4dPLw/uRO5K7V093r57uXj3dvXq6e/V09+rp7tXT3aunu1dPd6+e7l493b16unv1dPfq6e7V092r
p7tXT3evnu5ePd3HRgq3+O7V092rp3sgne6BdLr79nT37enu29Pdt6e7b093357uvj3dfXu6+/YU
Aum7Y0x3357uvj2l8OU7qrtvT3ffnu6+Pd19e3Lffjt4B3N36Skgv7v0dHfp+e7S892l53cvOv6H
946u9y9t94/7/eNx/5juH+9o7q483115vrvyfPdl+e5W8t2t5LtbyXe3ku9uJd/dSr67lXy3sXwf
+vk+9PMRvny/8n3o5/vQz/ehn+9DP9+Hfr4P/Xwf+vk+9PN96Of70M/3sCbfh36+D/18H/r5PvTz
fejn+9DP96Gf70M/38OafA9r8t0G8t0G8t0G8t0G8t0Gpnd3I3j7PIXPc/i8hM9r+LyFz3v4fITP
KXwO+KaAbwr4poBvCvimgG8K+KaAbwr4poBvCvjmgG8O+OaAbw745oBvDnjmgGcOeMKr1u/Cu9bv
wsvW78Lb1u/C69bvwvvW78IL1+/CG9fvwivX78I71+/CS9dTGC9TGB9TGB9TGB9TGB9TGB9TGB9T
GB9TGB9TGB9TGB9TGB9TGB9TGB9TGB9TGB9TGB9TGB9TGB9TGB/THPCF8TKF8TKF8RJfzY/v5seX
8+Pb+fH1/Ph+fnxBP76hH1/Rj+/ox5f041v68TX9+J5+fFE/vqkfX9WP7+rHl/Xj2/rxdf34vn58
YT++sR9f2Y/v7MeX9uNb+/G1/fjefnxxf9oDvj3g2wO+PeDbA7494NsDvj3g2wO+PeA7Ar5QIjAd
Ad8R8B0B3xHwHQHfEfAdAd8R8KWALwV8KeBLAV8K+FLAlwK+UMYQ6xhiIUOsZJhywJcDvhzw5YAv
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
TZuiTdWmadO1+ZI2X9bmK9p8VZuvafN1bf5em29o801t/kGbb2nzbW2+o80/avNdbf5Jm+9p831t
fqDND7X5YDN2CjuVnQH7n8fnfbT0R9r8WJufaPNTbT7U5mfa/FybX2jzkTa/1OZX2vxam99o81tt
Ptbmd9r8XptPtPlUmz9o80dt/kWbP2nzZ23+VZt/G/APWnrQ0oOWHqOlV2Jj7MzsLOys7Gzs7Owc
7CR2MjsnO/w6Q+MDBscHp//6GCCXFMvYAY+Bx8Bj4DHwGHgMPAYeA4+Bx8Bj4DHwGHgMPAU8BTwF
PAU8BTwFPAU8BTwFPAU8BTwFPAU8BTwFPAU8FTwVPBU8FTwVPBU8FTwVPBU8FTwVPBU8FTwVPBU8
FTwNPA08DTwNPA08DTwNPA08DTwNPA08DTwNPA08DTwNPB08HTwdPB08HTwdPB08HTwdPB08HTwd
PB08HTwSrH37wnCNY8yNETfG2xhtY6yNkWZyjSbXaHKNJtdoco0m12hyjSbXaHKNJtdoco0m12hy
jSbXaHKNJtdoco0m12hyjfbDAX+4RsM1Gq7RcI32z+PzcI0m12hyjSbXaHKNJtdoco0m12hyjSbX
aHKNJtdoco0m12hyjSbXaHKNJtdoco0m12hyjSbXaHKNJtdoco0m12j/NuAftPSgpQctPbiZwzUa
rtFwjYZrNFyj4RoN12i4RsM1Gq7RcI2GazRco+EaDddouEbDNRqu0XCNhms0XKPhGg3XaLhGwzUa
rtFwjYZrNFyj4RoN12i4RsM1Gq7RcI2GazRco+EaDddouEbDNRqu0XCNhms0XKPhGg3XaLhGwzUa
rtFwjYZrNFyj4RoN12i4RsM1Gq7RcI2GazRco+EaDddouEbDNRqu0XCNhms0XKPhGg3XaLhGwzUa
rtFwjYZrNFyj4RoN12i4RsM1Gq7RcI2GazRco+EaDddouEbDNRqu0XCNhms0XKPhGguucdzjcYfH
/R13d9zbcWeLXGORayxyjUWuscg1FrnGItdY5BqLXGORayxyjUWuscg1FrnGItdY5BqLXGORayxy
jeWHA/5wjQXXWHCNBddY/nl8Hq6xyDUWucYi11jkGotcY5FrlEhcL3KNRa6xyDUWucYi11jkGotc
Y5FrLHKNRa6xyDUWucYi11jkGotcY5FrLHKNRa6x/NuAf9DSg5YetPTgZg7XWHCNBddYcI0F11hw
jQXXWHCNBddYcI0F11hwjQXXWHCNBddYcI0F11hwjQXXWHCNBddYcI0F11hwjQXXWHCNBddYcI0F
11hwjQXXWHCNBddYcI0F11hwjQXXWHCNBddYcI0F11hwjQXXWHCNBddYcI0F11hwjQXXWHCNBddY
cI0F11hwjQXXWHCNBddYcI0F11hwjQXXWHCNBddYcI0F11hwjQXXWHCNBddYcI0F11hwjQXXWHCN
BddYcI0F11hwjQXXWHCNBddYcI0F11hwjQXXWHCNBddYcI0F11hwjQXXWHCNBddYcI0V1zj6dPTo
6M/Rm6MvR09WucYq11jlGqtcY5VrrHKNVa6xyjVWucYq11jlGqtcY5VrrHKNVa6xyjVWucYq11jl
GusPB/zhGt92yudeV/OkI550xJOOeNIRTzriSUc86YgnHfGkI550xJOOeNIRTzriSUc86Yj/29MR
X8BXKKb/+hm0CsbRkf88Pg9nXeWsq5x1lbOuctZVzrrKWVc56ypnXeWsq5x1lbOuctZVzrrKWVc5
6ypnXeWsq5x1lbOuctZVzrrKWVc56ypnXeWs678N+Ad9P5x1xVlXnHXFWVecdcVZV5x1xVlXnHXF
WVecdcVZV5x1xVlXnHXFWVecdcVZV5x1xVlXnHXFWVecdcVZV5x1xVlXnHXFWVecdcVZV5x1xVlX
nHXFWVecdcVZV5x1xVlXnHXFWVecdcVZV5x1xVlXnHXFWVecdcVZV5x1xVlXnHXFWVecdcVZV5x1
xVlXnHXFWVecdcVZV5x1xVlXnHXFWVecdcVZV5x1xVlXnHXFWVecdcVZV5x1xVlXnHXFWVecdcVZ
V5x1xVlXnHXFWVecdcVZV5x1xVlXnHXFWVecdcVZV5x1xVlXnHXFWVecdcVZV5x1w1mPNowWDPwD
/cA+kDc56yZn3eSsm5x1k7NuctZNzrrJWTc56yZn3eSsm5x1k7NuctZNzrrJWTc56yZn3eSs2w8H
/OGsG3FswzU2XGP75/F5uMYm19jkGptcY5NrbHKNTa6xyTU2ucYm19jkGptcY5NrbHKNTa6xyTU2
ucYm19jkGptcY5NrbHKNTa6xyTU2ucYm19j+bcA/aOlBSw9aenAzh2tsuMaGa2y4xoZrbLjGhmts
uMaGa2y4xoZrbLjGhmtsuMaGa2y4xoZrbLjGhmtsuMaGa2y4xoZrbLjGhmtsuMaGa2y4xoZrbLjG
hmtsuMaGa2y4xoZrbLjGhmtsuEbW0Lp2wFPAU8BTwFPAU8BTwFPAU8FTwVPBU8FTwVPBU8FTwVPB
U8FTwVPBU8FTwVPBU8HTwNPA08DTwNPA08DTwNPA08DTwINbwTU2XGPDNTZcY8M1NlxjwzU2XGPD
NTZcY8M1NlxjwzU2XGPDNTZcY8M1NlxjwzW24RoTrjGpDUktSMKfhD618d2uzZe0+bI2X9Hmq9p8
TZuva/P32nxDm29q8w/afEubb2vzHW3+UZvvavNP2nxPm+9r8wNtfjjgb8ZOYaeyM2D/8/i8j5b+
SJsfa/MTbX6qzYfa/Eybn2vzC20+0uaX2vxKm19r8xttfqvNx9r8Tpvfa/OJNp9q8wdt/qjNv2jz
J23+rM2/avNvA/5BSw9aetDSg5sp15hwjQnXmHCNCdeYcI0J15hwjQnXmHCNCdeYcI0J15hwjQnX
mHCNCdeYcI0J15hwjQnXmHCNCdeYcI0J15hwjQnXmHCNCdeYcI0J15hwjQnXmHCNCdeYcI0J15hw
jQnXmHCNCdeYcI0J15hwjQnXmHCNCdeYcI0J15hwjQnXmHCNCdeYcI0J15hwjQnXmHCNCdeYcI0J
15hwjQnXmHCNCdeYcI0J15hwjQnXmHCNCdeYcI0J15hwjQnXmHCNCdeYcI0J15hwjQnXmHCNCdeY
cI0J15hwjQnXmHCNCdeYcI0J15hwjQnXmNw1dlzjOGecMb4/vs13hbzLNXa5xi7X2OUau1xjl2vs
co1drrHLNXa5xi7X2OUatQhn6nKNXa6xyzV2ucYu1/j/Z+/Nmi45imztX8Nl26mcIy76IgZ3xoZm
akA3MgYBYkZi1K//arPi8Xy1BWoEnOrq74RZWWW+uXNYMS338HD3cFGjvzPgD2p0qNGhRoca/d3x
96BGFzW6qNFFjS5qdFGjixpd1OiiRhc1uqjRRY0uanRRo4saXdTookYXNbqo0UWNLmp0UaOLGl3U
6KJG//ObdaGY5ohpjpjmiGmOmOaIaY6Y5ohpjpjmiGmOmOaIaY6Y5ohpjpjmiGmO+PP/oAvFX/nE
z3/9wXvf/9X/ee/3P/y3n3/wOPz8g49944cf/vzDHx7nq2XJ6XqzWX8+O7S/N/PPp4S/JP9odKyL
PnjRBy/64MUwG0LLEVqO0HKEliO0HKHlCC1HaDlCyxFajtByhJYjtByh5QgtR2g5QssRWo7QcoSW
I7QcoeUILUdoOULLEVqO0HKEliO0HKHlCC1HaDlCyxFajtByhJYjtByh5QgtR2g5QssRWo7QcoSW
I7QcoeUILUdoOULLEVqO0HKEliO0HKHlCC1HaDlCyxFajtByhJYjtByh5QgtR2g5QssRWo7QcoSW
I7QcoeUILUdoOULLEVqO0HKEliO0HKHlCC1HaDlCyxFajtByhJYjtByh5QgtR2g5QssRWo7QcoSW
I7R8CK38agit/KroUHVoOnQdxr2uw+d1+IIOX9ThSzp8WYev6PAfOnxVh6/p8J86fF2Hb+jwTR2+
pcO3dfgvHb6jw3d1+J4O7wz4R+WkcdI5GbDfHX+fo6Tf1+EHOvxQhx/p8J4OP9bhJzr8VIf3dfiZ
Dj/X4Rc6/FKHX+nwax1+o8NvdfhAhw91+J0Ov9fhDzr8UYc/6fBnHT4a8C9KelHSi5JeNKao8XGy
crJxsnNycHJycnGSOMmcFE74euHrha+X+ProIIMaHyfgqeCp4KngqeCp4KngqeCp4KngqeCp4Kng
qeCp4GngaeBp4GngaeBp4GngaeBp4GngaeBp4GngaeBp4Gng6eDp4Ong6eDp4Ong6eDp4Ong6eDp
4Ong6eDp4Ong6eAx8Bh4DDwGHgOPgcfAY+Ax8Bh4DDwGHgOPgcfAY+Bx8Dh4HDwOHgePg8fB4+Bx
8Dh4HDwOHgePg2dQ4wI1Lnpm0ROL7l909zLuFfJF1LiIGhdR4yJqXESNi6hxETUqYXZeRI2LqHER
NS6ixkXUuIgaF1HjImpcRI2LqHERNS7vDPiDGheocYEaF6hxeXf8PahxETUuosZF1LiIGhdR4yJq
XESNi6hxETUuosZF1LiIGhdR4yJqXESNi6hxETUuokalKM+LqHERNS6ixkXUuIgaF1Hj8tGAf1HS
i5JelPSiMQc1LlDjAjUuUCO50R8nJycXJ4mTzEnhhK8Xvl74eomvjw4CNS5Q4wI1LlDjAjUuUOMC
NS5Q4wI1LlDjAjUuUOMCNS5Q4wI1LlDjAjUuUOMCNS5Q4wI1LlDjAjUuUOMCNS5Q4wI1LlDjAjUu
UOMCNS5Q4wI1LlDjAjUuUOMCNS5Q4wI1LlDjAjUuUOMCNS5Q4wI1LlDjAjUuUOMCNS5Q4wI1LlDj
AjUuUOMCNS5Q4wI1LlDjAjUuUOMCNS5Q4wI1LlDjAjUuUOMCNS5Q4wI1LlDjAjUuUOMCNS5Q4wI1
LlDjAjUuUOMCNa5Q46pnVj2hhOB51d3ruFfIV1HjKmpcRY2rqHEVNa6ixlXUuIoaV1HjKmpcRY2r
qHEVNa6ixlXUuIoaV1HjKmpcRY3rOwP+oMYValyhxhVqXN8dfw9qXEWNq6hxFTWuosZV1LiKGldR
4ypqXEWNq6hxFTWuosZV1LiKGldR4ypqXEWNq6hxFTWuosZV1LiKGldR4ypqXEWN60cD/kVJL0p6
UdKLxhzUuEKNK9S4Qo0r1LhCjSvUuEKNK9S4Qo0r1LhCjSvUuEKNK9S4Qo0r1LhCjSvUuEKNK9S4
Qo0r1Pj6JL3x/B3TgDENGNOAMQ0Y04AxDRjTgDENGNOAMQ0Y04AxDRjTgDENGNOAMQ0Yn9WA8bbt
T/Q2b9D02T1W3vwmTX8F4/+P90j6F7fIZ3RX+kd2Hvq/0Yc+02c++L82wj4zjP/havuUEL8HNcLQ
FYauMHSFoSsMXWHoCkM3GLrB0A2GbjB0g6EbDN1g6AZDNyRGA08DTwNPA08DTwNPA08HTwdPB08H
TwdPB08HTwdPB08HTwdPB08HTwdPB08Hj4HHwGPgMfAYeAw8Bh4Dj4HHwGPgMfAYeAw8Bh4Dj4PH
wePgcfA4eBw8Dh4Hj4PHwePgcfA4eBw8Q1ncUBY3PaMdJfOm+zfdvY17hXyTsrhJWdykLG5SFjcp
i5uUxU3K4iZlcZOyuElZ3KQsblIWNymLm5TFTcriJmVxk7K4SVncpCxu7wz4Q1ncUBY3lMUNZXF7
d/w9lMVNyuImZXGTsrhJWdykLG5SFjcpi5uUxU3K4iZlcZOyuElZ3KQsblIWNymLm5TFTcriJmVx
k7K4SVncpCxuUhY3KYublMVNyuL20YB/UdKLkl6U9KIxh7K4oSxuKIsbyuKGsrihLG4oixvK4oay
uKEsbiiLG8rihrK4oSxuKIsbyuKGsrihLG4oixvK4oayuKEsbiiLG/PoDWrcoMYNatygxg1q3KDG
DWrcoMYNatygxg1q3KDGDWrcoMYNatygxg1q3KDGDWrcoMYNatygxg1q3KDGDWrcoMYNatygxg1q
3KDGDWrcoMYNatygxg1q3KDGDWrcoMYNatygxg1q3KDGDWrcoMYNatygxg1q3KDGDWrcoMYNatyg
xg1q3KDGDWrcoMYNatygxg1q3KDGDWrcoMYNatygxg1q3KDGDWrcoMYNatygxh1q3PXMrid23b/r
7n3cK+S7qHEXNe6ixl3UuIsad1HjLmrcRY27qHEXNe6ixl3UuIsad1HjLmrcRY27qHEXNe6ixv2d
AX9Q4w417lDjDjXu746/BzXuosZd1LiLGndR4y5q3EWNu6hxFzXuosZd1LiLGndR4y5q3EWNu6hx
FzXuosZd1LiLGndR4y5q3EWNu6hxFzXuosb9owH/oqQXJb0o6UVjDmrcocYdatyhxh1q3KHGHWrc
ocYdatyhxh1q3KHGHWrcocYdatyhxh1q3KHGHWrcocYdatyhxh1q3KHGHWrcocYdatyhxh1q3KHG
HWrcocYdatyhxh1q3KHGHWrcocYdatyhxh1q3KHGHWrcocYdatyhxh1q3KHGHWrcocYdatyhxh1q
3KHGHWrcocYdatyhxh1q3KHGHWrcocYdatyhxh1q3KHGHWrcocYdatyhxh1q3KHGHWrcocYdatyh
xh1q3KHGHWrcocYdatyhxh1q3KHGHWrcocYdatyhxh1q3KHGHWrcocYdatyhxgNqPPTMYJrBM4Nl
BsccQn6IGg9R4yFqPESNh6jxEDUeosZD1HiIGg9R4yFqPESNh6jxEDUeosZD1HiIGg9R4yFqPN4Z
8AEMNR5Q4wE1Hu+Ovwc1HqLGQ9R4iBoPUeMhajxEjYeo8RA1HqLGQ9R4iBoPUeMhajxEjYeo8RA1
HqLGQ9R4iBoPUeMhajxEjYeo8RA1HqLG46MB/6KkFyW9KOlFYw5qPKDGA2o8oMYDajygxgNqPKDG
A2o8oMYDajygxgNqPKDGA2o8oMYDajygxgNqPKDGA2o8oMYDajygxgNqPKDGA2o8oMYDajygxgNq
PKDGA2o8oMYDajygxgNqPKDGA2o8oMYDajygxgNqPKDGA2o8oMYDajygxgNqPKDGA2o8oMbXJ8cb
z1I0TRjThDFNGNOEMU0Y04QxTRjThDFNGNOEMU0Y04QxTRjThDFNGNOE8dlNGG/h5lCv/v0v0Kih
Tg11aqhTQ50a6tRQp4Y6NdSpoU4NGTVk1JBRQ0YNGTVktJiBx8Bj4DHwGHgMPAYeA4+Bx8Dj4HHw
OHgcPA4eB4+Dx8Hj4HHwOHgcPA4eB88g6xOyPvXMqSdO3X/q7nPcK+SnyPoUWZ8i61NkfYqsT5H1
KbI+RdanyPoUWZ8i61NkfYqsT5H1KbI+RdanyPoUWZ8i6/OdAX+Q9QlZn5D1CVmf746/B1mfIutT
ZH2KrE+R9SmyPkXWp8j6FFmfIutTZH2KrE+R9SmyPkXWp8j6FFmfIutTZH2KrE+R9SmyPkXWp8j6
FFmfIuvzowH/oqQXJb0o6UVjDrI+IesTsj4h6xOyPiHrE7I+IesTsj4h6xOyPiHrE7I+IesTsj4h
6xOyPiHrE7I+IesTsj4h6xOyPiHrE7I+IesTsj4h6xOyPiHrE7I+IesTsj4h6xOyPiHrE7I+IesT
sj4h6xOyPiHrE7I+IesTsj4h6xOyPiHrE7I+IesTsj4h6xM99oQaT6jxhBpPqPGEGk+o8YQaT6jx
hBpPqPGEGk+o8YQaT6jxhBpPqPGEGk+o8YQaT6jxhBpPqPGEGk+o8YQaT6jxhBpPqPGEGk+o8YQa
T6jxhBpPqPGEGk+o8YQaT6jxhBpPqPGEGi+o8dIzY/yN0TfG3hh5l5BfosZL1HiJGi9R4yVqvESN
l6jxEjVeosZL1HiJGi9R4yVqvESNl6jxEjVeosZL1HiJGq93BvxBjRfUeEGNF9R4vTv+HtR4iRov
UeMlarxEjZeo8RI1XqLGS9R4iRovUeMlarxEjZeo8RI1XqLGS9R4iRovUeMlarxEjZeo8RI1XqLG
S9R4iRqvjwZ8mgZqvKDGC2q8oMYLarygxgtqvKDGC2q8oMYLarygxgtqvKDGC2q8oMYLarygxgtq
vKDGC2q8oMYLarygxgtqvKDGC2q8oMYLarygxgtqvKDGC2q8oMYLarygxgtqvKDGC2q8oMYLaryg
xgtqvKDGC2q8oMYLarygxgtqvKDGC2q8oMYLarygxgtqvKDGC2q8oMYLarygxgtqvKDGC2q8oMYL
arygxgtqvKDGC2q8oMYLarygxgtqvKDGC2q8oMYLarygxgtqvKDGC2q8oMYLarygxgtqvKDGC2q8
oMYLarygxgtqvKDGC2q8oMYLarygxgtqTFBj0jNJTyTdn3R3GvcKeRI1JlFjEjUmUWMSNSZRYxI1
JlFjEjUmUWMSNSZRYxI1JlFjEjUmUWMSNSZRYxI1pncG/EGNCWpMUGOCGtO74+9BjUnUmESNSdSY
RI1J1JhEjUnUmESNSdSYRI1J1JhEjUnUmESNSdSYRI1J1JhEjUnUmESNSdSYRI1J1JhEjUnUmD4a
8C9KelHSi5JeNOagxgQ1JqgxQY0JakxQY4IaE9SYoMYENSaoMUGNCWpMUGOCGhPUmKDGBDUmqDFB
jQlqTFBjghoT1JigxgQ1JqgxQY0JakxQY4IaE9SYoMYENSaoMUGNCWpMUGOCGhPUmKDGBDUmqDFB
jQlqTFBjghoT1JigxgQ1JqgxQY0JakxQY4IaE9SYoMYENSaoMUGNCWpMUGOCGhPUmKDGBDUmqDFB
jQlqTFBjghoT1JigxgQ1JqgxQY0JakxQY4IaE9SYoMbXJ+sbz+kzTRjThDFNGNOEMU0Y04QxTRjT
hDFNGNOEMU0Y04QxTRjThDFNGNOE8dlNGG+nq0YhlVEhO1EhDVkhf1xhFBbyxxVCJQrJ1ArZ2V7f
IGZ/nKRxs4ZsITqkkLSukFrpcfPJt9o4kTx4nPCTBEMh61KBMAqEUcgNVxj6hYH++hPxrfFUvsul
Efa4UjiJp1bes3MlTg5+OrkSJ1F1iSuJK5krnIhvCgz0+ClKUblSuUI9R8ONb5GDqpDUqpDCqpDU
qpDCqpDvquD6VHB9Krg+FVyfCq5PBdengutTwfWp4PpUcH0quD4VXJ8Krk8F16eC61PB9ang+lRw
fSq4PhVcnx4n4Ong6eDp4DHeY7zHeI/xHuM9xnuM91i8h3IZ5TLKZZTLKJdRLqNcTrkcPA4eB4+D
x8Hj4HHwjNHUaO5GN2500UZ/bnTRRhdt9MxG32h0gEbfaPSWxkhp9JZGZ2v0zEZna0NIPk6AUYFR
gVGBUYFRKUUFTwVPBU8FTwVPBU8FTwVPA08DT48TgHWAdYB1gHWAdfB08HTwdPB08HTwdPB08Bh4
DBgGDAOGAcOAYcAw6sfAY+Ax8Bh4DDwGHgOPgcfB41EtwfOFE+PEodNXnCxw+MYJ8mL0MRKPFtLa
FTJsFjJsFlJbPggf9nMo1+E6D6EACTtcZ/FmJNHoWtctUwwaNOROMMBfvo5gcDjaoWaHZD2EUOeE
gV0Zz5XxXHl7ZTxXxnNlPFfGc2U8V/ilwi+FFxZeWHhh4YWFFxZeWHhh4YXB7NGuIa2NZoh6HL2K
jJ6FOM1CVGYhYLMQnlmI3CxkXyxkXyzrLVOjo5RQLDjxOOFblZsrgtzoi04XbPEergzCItlnIdln
IQ9oITNoIdVoIdVoIVVjITVsIS9pIQluIXdpIUtrIddsIYFrIelsIelsIRlqIRlqIWVpIWVpIa1p
Ia1pWV+8OU5QPoy+avRVQz0y+rPRe43ea/TeUZnoqAUdtaCjPk741qifRDMlmikDIwMjAyMDIwMj
AyMDIwMjAyMDIwMjAyMDIwMj3zAaL2y8sPHCzgs7L+y8sPPCzgs7L+zobZ0CBk91CtgpYKeAnQJ2
8HTwdPAYeAw8Bh4Dj4HHop5ReRst2GjBRgt2WrDTgtFbOi3YacGOqtp5c6dHdXpUp0d1elSnR3V6
VAdPB08Hj4HHwGPRe8Fj4DHwjJKyYlRY1yksHRUWeAprSIX1j8KKSGHtp7C8VFhZKay1FJaFCgtO
hZWVwlpLYaGosDpVWI8prNAUVpUK61WFtZ/CekxhPaawhlRYmCkszBTWogqrXIUVo8KaTWHNprDy
VFi8KSzeFFawCstmheWcwnJOYQWrsDpVWOApLPAUlsQKi22FJZ/Ckk9h3auwplVYBCosAhUW0gpr
dYVlocKyUGHZrLA+VFgfKiySFRaKCgtFhYWiwkJRYaGosFBUWCgqLBQV1vPKek9WDYINXaEhFFqw
MeKvMYlqiMhQPlrwfDA/crBycw0Ji7wwNJXKJyoCuoe4QeMJ4dKRaB2ZMmqMnA9lvQVZR+qFyB7d
hjQOhewNZb3FTePrcU/lE5V5Y+OpSrXUuDk+wc2dewJqj59C6QyZG9aBMDcgNMM2USlgqJhRdTVu
psIrn6hUXaW9asj3+CksCPp6AVgBWAFYgWQKLFGglAInFMAXRndhWBXGRYHrXp/0N+7jMm0/0/Yz
bT/T9jNtP9P2M20/0/YzbT/T9jNtP9P2M20/0/YzbT/T9jNtP2/M9vP2brvzgGfg9HEyOLBAmIUK
LHcFVmqpUkuVWqrUUqWWKrVUqaVKLVVqabRaocsVulyhWxbYvjBwCkO7MEwKw6RACIVRXxj1hTFe
GPUFHiiM+kI/L4yXwggqDK7C4CpQcYF4C8RboNkCzRZItUCqhYFcGDiFwVUYXIXBVWCPAp8UiK5A
fQWmKnBXgZcKTFWQzgXFr6D4FRS/guJXGEoFxa+g+BUUv4LiV1D8CopfQfErKH6VAVgZgJUBWBmA
lQFYGYCVAVgZgJUBWBmAlQFYGYAVHaPS1StdvdLVK1290tUrXb3S1StdvdLVK1290tUrXb3S1Std
vdLVK1290tUrXb3S1StdvdLVK1290tUrXb3S1StdvdLVK1290tUrXb3S1StdvdLVK1290tUrXb3S
1StdvdLVK1290tUrXb3S1StdvdLVK1290tUrXb3S1StdvdLVK1290tUrXb3S1StdvdLVK1290tUr
Xb3S1StdvdLVK1290tUrXb3S1StdvdLV693VHTwOnjE9JKNlIaNlIaNlIaNlIaNlIaNlIaNlIaNl
IaNlIaNlIaNlIaNlIaNlIaNlIaNlIaNlIaNlIaNlIaNlIaNlIaNlIaNlIaNlIaNlIaNlIaNlIaNl
IaNlIaNlIaNlIaNlIaNlIaNlIaNlIaNlIaNlIaNlIaNlIaNlIaNlIaNlIaNlIaNlIaNlIaNlIaNl
IaNlIaNlIaNlIaNlIaNlIaNlIaNlIaNlIaNlIaNlIaNlIaNlIaNlIaNlIaNlIaNlIaNlIaNlIaNl
IaNlIaNlIaNlIaNlIaNlIaNlIaNlIaNlIaNlIaNlIaNlIaNlIaNlIaNlIaNlIaNlIaNlIaNlIaNl
IaNl2e9R4OBx8Dh4HDwOHgePg8eZmFem4ZVpeGUaXpmGV6bhFbNAxSxQMQvUWLzBLFAxC1TMAhWz
QKyNVcwCseDUwNPA08DTwNPC7gGeBp4GngaeBp4Gnha6N1P1ygy9MkOvzNArM/TKDL1iMahYDCoW
g4rFoGIxqFgMKhaDisWgYjGIJbqGxaCBp4GngaeBp4GnhW0EPA08DTxh423guSvBhr143ExsWCE2
rBAbVogNK8SzFeLZCvFahXitct1vHjVGgFwhQK4QLVaIFitEixWixQrRYoUowUKUYCFKsBAcWIj3
K8T7FeL9CvF+hXi/QrxfId6vEO9XiPcrxPsVog0L0YaFaMNCtGEhlq8Qy1eIOitEnRWizgpRZ4Xo
tUL0WiF6rRAKWAgFLIQCFkIBC6GAhVDAQihgIRSwEApYCAUsRPcVovsK0X2F6L5CdF8huq8Qp1eu
eyYbUC0qPErKC42JcJS0crNFjYG5UqvGtyz6WLyHkt4nUeF/edxYH3r9aXVjx/jTGeavP61SvH6t
rjxO/vIeh75e92qRsLNK6uwg8Lqfq4DGSs/rKhUbd5YDja0EnJWF1yNI/OysHXb2L3AM+EYTdBwC
Hm/O4x5x+OvBpb7hqM0OCb++WSU19i8wlMDHe/5y8+s6kQQx1lAaU6GOfLe4whLd6/rRaGqofJ1E
tp1Yb2Np9jVCdVpjIdawVBtmAcPRwdH57XrRcH+B8bpbauw8XvgXPIaG1uExx2D+KLuqBaOEYVd8
fUUC0Zk4v35Ww+HxrT6KIyLq7CVhrJsaOqSxgOpYRx+1WgdU3dyYnrzuYwNGH7zxKAWPW/TDRmdT
Hb4aTdnRrBwdsrPHQceuaCxvG+qKs3rVUMhbvdtCasajVuk2TknVEx6lcNqicDPDYfRMZgGve+No
JmYuPboNlkZjz4VH2TdO9tHr1Plfj19B7Wze8fqK5IVj5DfMEY+fEkOmvfFNi6YBaBqApgFoGoCm
AWgagKYBaBqApgFoGoCmAWgagKYBaBqApgFoGoCmAejNGoDeXlehjPdwxns44z2cCeTKeN5nPO8z
wV6ZGK+ML37GFz/ji5/xxc+ZxG9Zz2Q9kXV/1t153Ku8TFmJ37ISv2UlfstK/JaV+C0r8VtW4res
xG9Zid+yEr9lJX7LSvyWlfgtK/FbVuK3rMRvWYnfshK/ZSV+y+8M+CPxWybxWybxWybxW353/D0S
v2UlfstK/JaV+C0r8VtW4resxG9Zid+yEr9lJX7LSvyWlfgtK/FbVuK3rMRvWYnfshK/ZSV+y0r8
lpX4LSvxW1bit6zEb1mJ37ISv2UlfssfDfgXJb0o6UVJLxpzJH4j4i4TnpeJuMtE3GUC7TKBdpn4
ukxYXSaWLxM7l4kAzET3ZYLoMhF3mWC8zEQhM1HITBQyE4XMRCEzUchMFDIThYyMykwUMpI2M1HI
TBQyE4XMRCEzUchMFDIThcxEITNRyEwUMhOFzEQhM1HITBQyE4XMRCEzUchIrYyDfcbBPuNgn3Gw
zzjYZxzsMw72GQf7jIN9xsE+42CfcbDPONhnHOwzDvYZB/uMg33GwT7jYJ9xsM842Gcc7DMO9hkH
+4yDfSaiIRPRkIloyEQ0ZCIaMhENmYiGTERDJqIhE9GQkc8ZaZOJaMhENGQiGjJKQSZ6NhM9mwmU
ygRKZQKlMoFSmUCpTKDUa0Ic1DjGwBgBo/+P3j/6/uj5RdRYRI1F1FhEjUXUWESNRdRYRI1F1FhE
jUXUWESNRdRYRI1F1FhEjUXUWESNRdRY3hnwBzUWqLFAjQVqLO+Ovwc1FlFjETUWUWMRNRZRYxE1
FlFjETUWUWMRNRZRYxE1FlFjETUWUWMRNRZRYxE1FlFjETUWUWMRNRZRYxE1FlFj+WjAvyjpRUkv
SnrRmIMa8UTOeCJndL6MJ3LGEzmjcWY8kTOeyBlP5IwncsYT+XHC10t8fXQQqJEln8yST2bJJ7Pk
k1nyySz5ZJZ8Mks+mSWfzJJPZskns+ST0VwzSz6ZJZ/Mkk9mySez5JNZ8sks+WSWfDJLPpkln4yO
lVnyySz5ZJZ8Mks+mSWfzJJPZskns+STWfLJLPlklnwySz6ZJZ/Mkk9mySez5JNZ8sks+WSWfDJL
Ppkln8yST2bJJ7Pkk1FPM0s+mSWfzJJPZskns+STWfLJLPlklnwySz6ZJZ/Mkk9mySez5JNZ8sks
+WSWfDJLPpkln8cJeBw8Dh4Hj4PHwePgcfA4eBw8gxor1Dj63Ohxo7+N3jb62uhpVdRYRY1V1FhF
jVXUWEWNVdRYRY1V1FhFjVXUWEWNVdRYRY1V1FhFjVXUWEWNVdRY3xnwBzVWqLFCjRVqrO+Ovwc1
VlFjFTVWUWMVNVZRYxU1VlFjFTVWUWMVNVZRYxU1VlFjFTVWUWMVNVZRYxU1VlFjFTVWUWMVNVZR
YxU1VlFj/WjAvyjpRUkvSnrRmIMaWSLMLBFmlggzS4SZJcLMEmFmiTCzRJhZIswsEWaWCDNLhJkl
wswSYWaJMLNEmFkizCwRZpYIM0uEmSXCzBJhZokws0SYsXVkzAWZJcLMEmFmiTAzB89MfjNLhJkl
wswSYWaJMLNEmFkizCwRZpYIM0uEmSXCzBJhZokws0SYWSLMLBFmlggzS4SZJcLMEmFmiTCzRJhZ
IsxMtDNLhJklwswSYWaJMLNEmFkizCwRZpYIM9ahzBJhZokws0SYWSLMLBFmlggzS4SZJcKMcSCz
RJixF2UsEpklwswSYWaJMLNEmFkizCwRZpYIM0uEmSXCzBJhxrT1OAGPg8fB4+Bx8Dh4BjU2qHG0
8Wjh0b6jdUfbjpZtosYmamyixiZqbKLGJmpsosYmamyixvafb9yZZZoopolimiimiWKaKKaJYpoo
polimiimiWKaKKaJYpoopolimiimieKTJoq3c9smJ/GiMQVyZmvG9stGssjX3Uwd9XX7DmccdlF7
fbPGb6frNpS41wNhuC/Z6BhG0smHP8sxXF2GpxW6yeteoZ7WSfPq+MU0XIE6mbtePy7OcXLuGSpA
x+Pv4YB2DVcyFcfon52p7+t+ouI4Sas6iV8dV9aGt5GTmNFweDd87py0fq97+/DPyvfjo4BoRkZK
w44XZyf96KN+znGzRtCjopbxlMZLb2N0PNypcCkS4zl5+TpJQo2Usp2Mq53st6/f1vF+ajgrDbcj
pmSvGUw15ui2jxo7qUwfLlfDra8NCn3UfOITdbxZbeFkNns9yoYT1qtBCA3GMxwqOz6bzna6RgY5
I5WlkXu3MXVo5Lq16Fo4IzuTCSdp6cOjzXAB6yB8xU/OSFFJ8dV9eM9FW1wUMOEwmPABXPB/XEb/
Uf0YVhXDG/QxUmzUmEr6cLF0ahWnOTWTEyLwcH8r4+aG36KGVQ/nOzp/Z3NhYxJgZIN8+D822otR
KR2j1xdeitdodyF0klsaQ6a1ITEbnGzl9ohsOLsNTsDg8nBSY+CPm8kCasfd7hrvRhc1pnqORuyk
P36MwTbKroFmjMoWjnVUneOj3THwOu7bRjhLJzzi4d+Hb+NwLyUT+qMFnfFF9zNGpYjxQUR1dOzb
KXXhJ3wbazgehk8rdKraeNRz3NOpqIv+Q48abIx1r2O4Nmx5r99c4MOCz6+Hc6sz0C7KBQlLpXRC
i5zk75082o8m6FDcK+rwFYPaIZBCF4UlxhhsQ0w0tLtHUx7jo8O3kRSmTkZsx4j2YC3HBXUbY1Dv
eX1dZTd86hvDoefb73U0LikNnfARZ/fZTrbrjgP+Y7yvo1YrMMZIeYXnKSleH+xHe2l0P/xe88BT
cWUdBEs6x/7Cf7biVjyKY6PhnMit3gbmBvd2ZvaGp7Ah/h6PrzyVqczghIZwWamNPJpp9BZGXEc9
68QKNLSyRyXQpo4TsTrko/N3aOeg5oP0VnqUjREXXsmqVccS0xruycyb/bw5XPKrs2rTGrXKeO/E
YFm+8Yyeie31NfIaPuN0kuHYi/Xc2ALBQky8QpB1BiNu8o+ekFCxgproSFJfO4YuJ32ro5g5eVyd
PK79RZ8fmKNROo7hG5pMH1OJFo7G9YXY2kYr6x5nLeH1h9QPGzLO6HVO6N6DIY2KMoRdxxV6wQM6
Qg0C8z6aOzr/6NhYWTr5nzsGqk5m9k7CegvpaXSAV2Ni1THZG08ZxrCGBa6Tr/vROsQTWPjC+yiy
xpcRvtYJwXnoSIiAQlDFaFOHE1gaeT0SnZqXsvQYcfTD0bjbIIcH4b/ip5U6lEBcb3f74ZJPxuyO
JDLihx6qrNOCyKYSV7ZxpSLoRz98hcs5qd6dTT4a1lkn1Omhzxc0hwTm8GrHKX4oVJg8ncWJTjbR
xyDaGZ5ItMJoGlzHFulOvI7Doq+LM3Rs9h03psZOcFhvqLuMQc8vXPsdIcVMoYSSjJqh1jHCazpb
RLx+dihUffChX7fQrHGCDlBp00KHLMx3YixX2GbIFEOTIYGzMzV+NCXjwumHo7d0RBvJ2B+qIwNt
NCVLUMY+B0aAprOo6TELYDHpoXiEhtYoBeQwgAV9MZfx/dbVe2hNEc4C1EZTdqYnQ6mgKQ0r72MQ
ocV1ZMHglhNh5+hRrDM18Lx+s2rVCGV21uEeguxkwG6ol41SlNFXHd2mED5iSM8RrhFzaqKgHCWw
lRfiJqa3qBktlGTExGDRDYHYkZ4+WtBJUGyMggeTMOMoMU6DrBIEwnSpohvf4z3Txw6AIf4qak+F
w0df3e6J2GjKVy/GV2cM7vSNi8gkwmIkcx2iNvZHMZ7q7Bv0eKHBdSfFiR7VEG1GD8dW0BHrlSuj
7KRDN7Tch3RgoI25TLljwobUY93poQ0uNNMBWfkb37tpGoCmAWgagKYBaBqApgFoGoCmAWgagKYB
aBqApgFoGoCmAWgagKYBaBqA3qwB6C3NyvLq3z+Xm/w6m/w6m/w6m/w6m/w6m/w6m/w6m/w6m/w6
2zvD92r4dTb8Oht+nQ2/zvbu+Hv4dTb5dTb5dTb5dTb5dTb5dTb5dTb5dTb5dTb5dTb5dTb5dTb5
dTb5dTb5dTb5dTb5dTb5dTb5dTb5dTb5dTb5dTb5dTb5dTb5dTb5dbaPBvyLkl6U9KKkF55ow6+T
/ZczWZ8y6mwmwVBGm8lYNDIbMWc2Ys5sxJzZiDkzM8lsxJzZiDmTSyvDOBmrUGbamdmIObMRc2Yj
5sxGzJmNmDMbMWc2Ys5sxJzZiDmzEXNmI+bMRsyZjZgzGzFnDGGZKe7jBDwNPA08DTwNPA08DTz4
/OHXiZEiM1vIzAQyul1u+HWSyCljT8mo1xn1MbMfdEZMZtgkszF0ZmPozMbQmY2hMxtDZ/TsDCtl
NobObAyd2Rg6szF0JulYxuSX2Rg6szF0ZmPozMbQmbxvGVNvxkSb2Rg6szF0ZmPozMbQmY2hMzPA
TMKs3PDrJCVcxn6aEa4ZZs/MUTPTzowqllFZcsOvE5tLZmqRO36do05HjY76HLU56nLUZJdfZ5df
Z5dfZ5dfZ5dfZ5dfZ5dfZ5dfZ5dfZ5fLexc1dlFjFzV2UWMXNXZRYxc1dlFjFzX2dwb8QY0dauxQ
Y4ca+7vj70GNXdTYRY1d1NhFjV3U2EWNXdTYRY1d1NhFjV3U2EWNXdTYRY1d1NhFjV3U2EWNXdTY
RY1d1NhFjV3U2EWNXdTYPxrwL0p6UdKLkl405qDGDjV2qJHscBl7RcYKnZlqZeYCGW08o3pl1KHH
CV8vfL3E10cHgRrR2DNqeUYTeJyAp4KngqeCp4KngqeCp4KngqeCp4KngqeBp4GngaeBp4GngaeB
p4GngaeBp4GngaeBp4GngaeBp4Ong6eDp4Ong6eDp4Ong6eDp4OHYQw1kvEvo5VlJoyPE/AYeAw8
Bh4Dj4HHwGPgMfAYeAw8Bh4Dj4HHwGPgMfA4eBw8Dh4Hj4PHwePgcfA4eBw8Dh4Hj4PHwTOo0aDG
UYZRgoF/oB/YB3ITNZqo0USNJmo0UaOJGk3UaKJGEzWaqNFEjSZqNFGjiRpN1GiiRhM1mqjRRI32
zoA/qNGgRoMaDWq0d8ffgxpN1GiiRhM1mqjRRI0majRRo4kaTdRookYTNZqo0USNJmo0UaOJGk3U
aKJGEzWaqNFEjSZqNFGjiRpN1GgfDfgXJb0o6UVJLxpzUCNG/cwk+3Gyc3JwcnJycZI4yZwUTvh6
4euFr5f4+uggUKNBjQY1GtRoUKNBjQY1kqgyk5Yys/KTsWE8TsBTwVPBU8FTwdPA08DTwNPA08DT
wNPA08DTwNPA08DTwNPA08DTwNPA08HTwdPB08HTwdPB08HTwdPB08HTwdPB08HTwdPB08Fj4DHw
GHgMPAYeA4+Bx8Bj4DHwQCtQI3lJM2v+mSXNzMpYZv0qs1iRWXZ4nIDHwePgcfA4eBw8Dh4Hj4PH
wePgGdToUON4Zjwx7h93c6+Qu6jRRY0uanRRo4saXdTookYXNbqo0UWNLmp0UaOLGl3U6KJGFzW6
qNFFjS5q9HcG/EGNDjU61OhQo787/h7U6KJGFzW6qNFFjS5qdFGjixpd1OiiRhc1uqjRRY3+yzfu
vDJNEtMkMU0S0yQxTRLTJDFNEtMkMU0S0yQxTRLTJDFNEtMkMU0S0yThv3wLs64s//4Xn6gdD7od
tytcuB0XnYKPzXC5f4VXJFmcHl5JOIapb/vywhkJrxILVxbDaQeXKrFTxzmqMat8uPGcOEfh4zdc
ncMBmFRjHm5ppCt6PB4ej7hHWnje4kLZccHViRH68fDwCUc1vI4dV9VO/The4uE7FO7HjndlZ3ek
scNUu/3uerhDpwF+xD3tt8d17DAVXscFH6RGZMRwuU84vB2Dizp2Aeu3I7oTGeG43HdcMYePX0Q0
LDfUikPXCPnZ8O08aEHHvQ2aenh2LfiM0cdahOGs3LzjLEqwzNipCl8mI59rJ6fp46MdR1D2CJOc
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
8HTwdPB08HTwdPB08HTwGHgMPAYeA4+Bx8Bj4DHwGHgMPAYeA4+Bx8Bj4DHwOHgcPA4eB4+Dx8Hj
4HHwOHgcPA4eB4+Dx8Ejei2vPre/0knRoerQdOg6jHtdh8/r8AUdvqjDl3T4sg5f0eE/dPiqDl/T
4T91+LoO39Dhmzp8S4dv6/BfOnxHh+/q8D0d3hnwj8pJ46RzMmC/O/4+R0m/r8MPdPihDj/S4T0d
fqzDT3T4qQ7v6/AzHX6uwy90+KUOv9Lh1zr8Roff6vCBDh/q8Dsdfq/DH3T4ow5/0uHPOnw04F+U
9KKkFyW9aExR4+Nk5WTjZOfk4OTk5OIkcZI5KZzw9cLXC18v8fXRQQY1FtzfC16wBWPj4wQ8FTwV
PBU8FTwVPBU8FTwVPBU8FTwVPA08DTwNPA08DTwNPA08DTwNPA08DTwNPA08DTwNPA08HTwdPB08
HTwdPB08HTwdPB08HTwdPB08HTwdPB08HTwGHgOPgcfAY+Ax8Bh4DDwGHgOPgcfAY+Ax8Bh4DDwO
HgePg8fB4+Bx8Dh4HDwOHgePg8fB4+Bx8Iga0zKoMS1Fh6pD06HrMO51HT6vwxd0+KIOX9Lhyzp8
RYf/0OGrOnxNh//U4es6fEOHb+rwLR2+rcN/6fAdHb6rw/d0eGfAPyonjZPOyYD97vj7HCX9vg4/
0OGHOvxIh/d0+LEOP9Hhpzq8r8PPdPi5Dr/Q4Zc6/EqHX+vwGx1+q8MHOnyow+90+L0Of9Dhjzr8
SYc/6/DRgH9R0ouSXpT0ojFFjYk48USEdSICNBElmoiGSwSCJSKDEmEXicCZxMJpwuqQmPsmpryJ
CVxivvU4AU8FTwVPBU8FTwVPBU8FTwVPBU8FTwVPBU8FTwVPA08DTwNPA08DTwNPA08DTwNPA08D
TwNPA08DTwNPA08HTwdPB08HTwdPB08HTwdPB08HTwdPB08HTwdPB08Hj4HHwGPgMfAYeAw8Bh4D
j4HHwGPgMfAYeAw8Bh4Dj4PHwePgcfA4eBw8Dh4Hj4PHwePgcfA4eBw8gxpXqHHVM6ueWHX/qrvX
ca+Qr6LGVdS4ihpXUeMqalxFjauocRU1rqLGVdS4ihpXUeMqalxFjauocRU1rqLGVdS4ihrXdwb8
QY0r1LhCjSvUuL47/h7UuIoaV1HjKmpcRY2rqHEVNa6ixlXUuIoaV1HjKmpcRY2rqHEVNa6ixlXU
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
yJkeOW+7R85bvcHQG8uTWkPjXCLp4suEqTW0zY9lTq3onhXds4bu+XcnVa3Li35mL9Ks1lBWlW+1
LpHI8e9NvFpDl/2HM7C+BdlUayjioX9/LL9qXSJ75ctEq3W5xxu5LP/E39dfzcGayEeZyEeZkG0x
LCP3pXSIutxJMFN8js4Q2TATySsTyStDvYhEmaFeGJ3SkMeRMTPR3yJ1ZiLTZYpv0Z0iq2bihZFe
M5GLM/PmzAszT4Xm4ZQ0cnHmuIIkc8ZPJOXMcTNlz3EPdZjjZsoeU4HI4Jmp3lA4IqdnjhPqMEdJ
4wolLa8+cxbdypSiri+eOrmycrJxsv/jKXdrqDLri9S9nz0Jb13vr89svG9/Nt6KelpRT+t6dxKL
Nq3/Tcbeut65m/+Z1L0VDbiud6+zuOLjZKjC6939/oE8v3W9O239G5l/63r33n91CuCXmX9r6Ocf
SwFcI6f/DhOQpPXvTQpcQ6v/a9mBa6j6fy1NcA39/5/NF/x9Xhelbf9dNuAaM4yPpQWuMd94S/ID
J3KlJnKlJnKlJnKlJnKlJnKlJnKlJoZfpXNH1txE9tQhd9c7j26iHiOhbmL8RGbdRGLVRKLXRKLX
zCcyL8y8JzM2hr13vRPz5rhCKTKDZJh5Y8a23ql6c9xMkTPpYTOM06KApIfNJIzNcYWEsZlyZcqV
o+oiSfKr/7uZmSuzzLreeYb/gVzNlblpXe/sxP9bsjfX9U6k/A+kca7rnX75b+VzruudmflvJXau
64ukzf9Ehuca0/r1v8/5XNcXP3325M91vV/4/1oW6Lq+qMO/kRe6rndlfiJBdLylfbYE0TWMKthS
athSlDu6hklFSaTreutJo1H++7TSNYwvnzW/dA1rzXOi6f+J7YmmAWQaQKYBZBpApgFkGkCmAWQa
QKYBZBpApgFkGkCmAWQaQKYBZBpA3qgB5C11FVn+/RP7f/29e3nV9VYdR1/+u3f3qrjs1Ngy+GP7
fdXw2/lrG3/VcOb5rDuA1fD+Caefj+0JVsMF6EAtOFALDtSCA7XgQC04UAuOoRbU8CA6CNU40AaO
WxswdtNKbL2V2Hor0c+djbZSvJCnMj9loGagZqCGyHeGgcc9gM+Az+zKlcGcwZzZJSwDNQM1U2OZ
IenxdaCWV/9PbKdWMTbWMDZ+YoO1GuZHdlqrYYdky7UaBkn2Xqthmfw7NmGr683UHh9tH9ufrYYZ
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
2bxINi+SzYtk8/JfoIkyD7QS0ouE9CIhvbyjg2Tz8gMeGSWTkF4kpJf3+FX1svxYBwnp5af8Oor/
vg4S0ouE9PILHSSbF8nm5dc8Sacb43X5zfh7DNvlt/yt0btIfi+S34vk9yL5vUh+L3/kEXrkGOeL
JPryZy6rOy0S7QuifUG0L4j2BdG+DNH+ODk5uThJnGROCieVk8ZJ58Q4YdR1PpFfcQKwDLAMsAyw
jOjqDP4OsAzUkM0dqDlOwJwZJJ2+1OMKpchxQnEyxckUJ0dxGCqdewo0NxhwjQ+oD6x6/aqXr3ps
HfeOWz4/HhFlllVjbNUYWzXGVo2xVWNs1RhbNcZWjbFVY2zVGFs1xlaNsVVjbNUYW/9LB42oVSNq
1Yha3wGNGmrV0Fql9q4aUatG1Cq1d9VAWn/Ck2rZVWrvqoG0aiCtGkirBtKqgbRqIK1SclcpuauU
3FWDZNUgWTVIVg2S9Q9vPGvJNGhMg8Y0aEyDxjRoTIPGNGhMg8Y0aEyDxjRoTIPGNGhMg8Y0aEyD
xj9r0Hh7XTmS2CCJC5KSLCYlWUxKspiUUjEppWJSSsWkTIpJmRSTMikmZVJMyqSYlEkxKW9iUt7E
pHSJSekSk9IlJqVLTEqXmJQu8fW4PSonjZPOyYD97vj7fKWT7+vwAx1+qMOPdHhPhx/r8BMdfqrD
+zr8TIef6/ALHX6pw690+LUOv9Hhtzp8oMOHOvxOh9/r8Acd/qjDn3T4sw4fDfgXJb0o6UVJr1HS
oWgn0gMm0gMm0gMm0gMm0gMm0gMmsgImsgImsgImsgImsgImsgImsgImsgImsgImsgImsgImsgIm
sgImsgImsgImsgImsgImsgImsgImsgImsgImsgImsgImsgImsgImsgImsgImcgAmcgAmUv8lUv8l
Uv8lMv4lMv4lMv4lMv4lMv4lMv4lMv4l8vsl8vsl8vsl0vol0vol0vol0vol0vol0volsvklsvkl
svklsvklsvklsvklsvklsvklsvklsvklsvklsvklsvklsvklsvklsvklsvklsvklsvklkvglkvgl
kvglkvglkvglkvglkvglcvclcvclcvclcvclcvclcvclcvclcvclcvclcvclcvclcvclcve9VgV2
wRh1Omp01OeozVGXoyaVxC8piV9SEr+kJH5JSfySkvglJfFLSuKXlLsvKXdfUu6+pJR9SSn7klL2
JaXsS0rZl5SyLyllX1LKvqSUfa/hD2rsUGOHGjvU2N8dfw9qVJq/pDR/SWn+ktL8JaX5S0rzl5Tm
LynNX1Kav6Q0f0lp/pLS/CWl+UtK85eU5i8pzV9Smr+kNH9Jaf6S0vwlpflLSvOXlOYvKc1fUpq/
pDR/r+FflPSipBclvWjMQY1kpktkpkskpEskpEskpEvkoUvkoUvkoUukn0ukn0ukn0ukn0ukn0uk
n0ukn0tknUtknUtknUtknUtknUtknUtknUtknUtknUtknUtknUvkmEvkmEuklkuklkuklktklEtk
lEtklEtklEtklEtklEtklEvkj0ukjUtki0tki0tki0tki0tki0tki0vkhkvkhkskgEtkeUtkeUtk
eUtkeUukckvka0tsXZkI9E2E9SaCeBNBvInY3UTsbiJ2NxGymwjZTYTsJkJ2EyG7iZDdRMhuIkA3
EYWbiMJNROEmonATUbiJKNxEzG0i5jYRapsItU2E2iYibBMRtonA2kRgbSKwNhFYmwijTUTPJoJm
E0GziaDZ160/TJYnPuMnFr0T+92J2e7E5njiGH6O0fQ4yZwUTionjZPOSXzdx8lw+j4xpZ1jND1O
wFPBU8FTwVPBU8FTwVPBU8FTwVPBU8FTwdPA08DTwNPA08DTwNPA08DTwNPA08DTwNPA08DTwNPA
08HTwdPB08HTwdPB08HTwdPB08HTwdPB08HTwdPB08Fj4DHwGHgMPAYeA4+Bx8Bj4DHwGHgMPAYe
A4+Bx8Dj4HHwOHgcPA4eB4+Dx8Hj4HHwOHgcPA4eB88YTddQNNqlZyTNmmRZkyRr17hXyC9NtK8v
6PBFHb6kgxajrq/ooKWnSytOlxaarv/U4es6fEOHb+rwLR2+rYNsWNd3dPiuDt/T4Z0B/6icNE46
JwP2u+Pvc5T0+zrIynX9UIcf6SDj1qUVqEtT8Us2rUsLT9fPdPi5Dlpvun6pw690kCnrkuHqkr3q
+kCHD3X4nQ6KX7r+oIPMVJfCli4Zpa6PBnya5nM0zudons/RQFDjBTVeUOMFNV5Q4wU1XlDjBTVe
UOMFNV5Q4wU1XlDjBTVeUOMFNV5Q4wU1XlDjBTVeUOMFNV5Q4wU1XlDjBTVeUOMFNV5Q4wU1XlDj
BTVeUOPrk/WNO3FMU8Y0ZUxTxjRlTFPGNGVMU8Y0ZUxTxjRlTFPGNGVMU8Y0ZUxTxjRl/OOmjM/g
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
Svh5JeYUCT+vxGQiQY0JakxQY4IaE9SYoMYENSaoMUGNCWpMUGOCGhPUmKDGBDUmqDFBjQlqTFBj
ghoT1JigxgQ1JqgxQY0JakxQY4IaE9SYoMYENSaoMUGNCWpMUGOCGhPUmKDGBDUmqDFBjQlqTFBj
ghoT1JigxgQ1JqgxQY0JakxQY4IaE9SYoMYENSaoMUGNCWpMUGMa1Li+ftt2bse5fE7m3biwPl/Y
ni/szxeO5wvn84Xr+UJ6vpCfLlyvni88I72ekV7PSK9npNcz0usZ6fWM9HpGej0jTc9I0zPS9Iw0
PSNNz0jTM9L0jDQ9I03PSNMz0vyMND8jzc9I8zPS/Iw0PyPNz0jzM9L8jDQ/IT1fvXq+sDxfWJ8v
bM8X9ucLx/OF8/nC9XwhPV94Rro8I12ekS7PSJdnpMsz0uUZ6fKMdHlGujwjXZ6Rrs9I12ek6zPS
9Rnp+ox0fUa6PiNdn5Guz0jXZ6TbM9LtGen2jHR7Rro9I92ekW7PSLdnpNsz0u0Z6f6MdH9Guj8j
3Z+R7s9I92ek+zPS/Rnp/ox0f0Z6PCM9npEez0iPZ6THM9LjGenxjPR4Rno8Iz2ekZ7PSJ9l1Pks
o85nGXU+y6jzWUadzzLqfJZR57OMOp9l1Pkso85nGXU+y6jzWUadzzLqfJZR57OMOp9l1Pkso85n
GXU+y6jzWUadzzLqfJZR57OMOp9l1Pkso85nGXU+y6jzWUadzzLqfJZR57OMOp9l1Pkso85nGXU+
y6jzWUadzzLqfJZR17OMup5l1PUso65nGXU9y6jrWUZdzzLqepZR17OMup5l1PUso65nGXU9y6jr
WUZdzzLqepZR17OMup5l1PUso65nGXU9y6jrWUZdzzLqepZR17OMup5l1PUso65nGXU9y6jrWUZd
zzLqepZR17OMup5l1PUso66QUdp/PC4/w3sWTNezYLqeBdP1LJiuvwimN+7gM81101w3zXXTXDfN
ddNcN81101w3zXXTXDfNddNcN81101w3zXXTXDfNddNcN811f8tc9xZm71n+/fWMXV6vyvxUlPmp
KPNTUeanosxPRZmfijI/lZH5aWVzL6WAKkoBVZQCqlx4vV54vV533EMP303np50T4mvGJl8XfrAX
frAXAYErW29dOMReOMReuIZf+MFe+MFe+MFe7L62MlNd2V/xwjP2wjP2YovUleDDCxfZCxfZCxfZ
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
BtOjUuoIojJNojJNUJkmqEwTVKYJKtMElWmCyjRBZZqgMk1QmSaoTBNUpgkq0wSVaYLKNAWVKcSl
KYhL4StN8JWm4CuFpjRBU5qgKU3QlCZoShM0pSloSoOUNLhIoSBNUJCm7hxSCkOxA0UiJU09qkCw
UXJ2UnGRpp5eJPQo9dGZVE+RkiYnJRUXaRIXaeqRjYJsCCFKPcNO8SogJPLRkvhKk/OViqY0iaY0
iaY09Yw/hf7vNI/iK03iKz126wVEXJpEXJp6hMRRHGcwFXFpEnFpEnFpEnFpEnFpEnHpw5WVZnWQ
R1Smx7a+tjhNj201u8hNk8hNk8hNk8hNk8hNk8hNj0vQU76CX3SnSXSnx27/FhIk8Z4m8Z4eR/3L
SKLEe5rEe5rEe5rEe5rEe5p6LM/Kd/IV/CJAPbZRrJXOUr2XIHVwoya4URPcqAlu1NSfY51na4Qb
NcGNmvpzrPPEjZCkJkhSEySpD2PpHk+PG8ZV/mkRSNhSE2ypCbbUBFvqccM4RJ1dMqFNTdCmpqBN
hS01wZaaYEtNsKUm2FKPRwwUaJ+NqrqsriRZHDxxpqe0jLf21Lme8tITXHpey79wkufjlGSKWvXY
vVLwPMovse3Pepltf6inU5aIin71OOrpdyWi4mE9dmcKXikJrZhZj91eSUmvU7SKkPXhqPvPzswq
QtYkQtbkhKziYU3iYU3iYU3iYU3iYU3iYT1u52lZP2HbM5167mUJ5OAZZyWQYl1NYl09LuFb+Wp0
8bAm52Fd3b1N4mFN4mFNzsM6eDZmTz3riWY9v6zkcPCUy5JDsa4msa6m4Uwr66K1uluZoF899pB1
NfLLRqblSLAcaWVXcrW6jK0wBa4kZoSQNUHIehyKPaRcXsm1utKnjaSrK9lVN/KAb7xFJJrdyA69
UeeNOruwraxRh6L12MNDt6gzmV03Kh+JZjfqs8V94vKoc1SVAuytu5/hTtjoxKxOTEsXd39rdLZu
p3H1TJdO2iqpE1drgqv1FW7g9N+vsu2ZOz1Bn7N1S7RE2pqctNUpWp2ZdUR+ElrMfbHRKY7fYbcz
80qiRqc4fp+jzlEv0RJXa3KuVlG0Hid5+lTJ2IhokezQKY4/Y7fTun/OtrekhE3srUnsrcnZW0en
OH7GJd7qnp7WKY6fc9S5nZ3s2ymOf+SofxoJm/hck/O5jk72TcbZFbbmtf/jOQYux/9y/C/H/3L8
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
FbKzK1JnV6TOrkidXQE6uwJ0dgXo7ArQ2RWg81DTifebeK2J15q82h/49uwGyRP9fKifj/TzsX6e
6ucT/Xyqn8/087l+vtDPl/r5Sj9f6+cb/TzTz7f6+U4/z/XzfXye7tZP95+ru423Zrtrtvtme2i2
x2a7vf/cbC/N9tpsb4+3p6Z+U1O/qanf1NRvauo3NfWbmvpNTf2mpn5TU7+5qd/c1G9u6jc39Zub
+s1N/eamfnNTv7mp39zUb2nqtzT1W5r6LU39lqZ+S1O/panf0tRvaeq3NPVbm/qtTf3Wpn5rU7+1
qd/a1G9t6rc29Vub+q1N/bamfltTv62p39bUb2vqtzX125r6bU39tqZ+2+P6dbdbs901232zPTTb
1GdX/P3eMfI4RNWdfo1DVB0QFYOWNHBXHnuOHXBVd0JR7icqjPrQ/r79ctRoHR/32HWMHvHgYjkE
BSa+A3MfhUQBf8yHn57BpgeC6uO5PtzqSdNjWX7Y7prtvtkemu2x2Z6a7bnZXprttdne4tvgpHb4
rx3eaocj2+G2dritHd5q5/6r7jsPj99jHh6/xxwyuiuS/rA2eGrgA4WHlahHpkAHKFxVqGKJQ5xc
sAQK/SdzTo6nc3LmoTnesKcwcB9aqpwTsFvfPWr7h+2l2V6b7e3xdn9rtrtmu2+2h2Z7bLanZrup
X9/Ur2/q1zf1G5r6DU39hqZ+Q1O/oanf0NRvaOo3NPUbmvoNTf3Gpn5jU7+xqd/Y1G9s6jc29Rub
+o1N/R7bFdvQ9c320GyPzfbUbM/N9tJsr8128/ymPw1Nfxqa7zU032tovtfQfK+h+V5D872G5ns1
/sI2NN9rGE8t/LN+ftHPb65JFxTxgiJeXBH/qJ8f9PO9fmSaiuHhQV1JYx2F1QsS46NQvSAtcOzh
HMF8xyHOkX45Dk3sGSgUDi3siXPi6T17bhSMQ0zVlziH+1ROzjyiUNUabxGX7xyKijEYLQxYO3t8
4qhnKqlncO2Z+emZ+RHrzS5uj13cHru4PXZxe+xi8thF4LGLt2MXb8cuyo1dTBy7eDl28XbsYvHY
xemxi+FjF+HGLoqNY4xHRxvq21DEhvYPr8/Q9RYmArre0OPGuOKTVD1mR8/MWI+F0TNF1mEhdExb
dYDCnfcWt6NaR6XbbmO7Y212dLd2R9fu6Nsd7U0f641jx9Ls6NuKDe1Nh8aG28a2HuPvzmgfO7Yv
N7UvN7VnzO27zO1Nl/aMpb3H2j5lbau+tlXf2ku29pLGRu5vjZHbn17DQzcYvT/4dvTW/u6CvjHj
H3aM7Y7TcJa3Lb6nXcxQu5ihdvE97eJ72jsXFulM8UvtncuTi4REVYRUhw1Nf96xeBM6ISEXjqH0
TJb2TJb2TJb2TJb2TJb2PkvhrzM0fvPDjrHdMbU75nbH0u5Y2x1bs6Nxnw/wqd3Rtzvams5tTee2
pnNb07mt6dzWdG5rurQ1XdqaLm1Nl7amS1vTpa3p0tZ0aWu6tDVd2pqubU3XtqZrW9O1rena1nRt
a7q2NV3bmq5tTde2pltb062t6dbWtBXMoRXMYWtrurU13dqatgpkaLzsB+v11u7o2h19u2Nod4zt
jqndMbc7lnbH2u5oa9q1Ne3amnZtTbu2pl1b066tadfWtGtr2rU17dqa9m1N+7amfVvTvq1p39a0
b2vatzXt25r2bU37tqZDW9OhrenQ1nRoazq0NR3amo7tJWN7yfi7S9qXG9uqT23Vp7bqU1v1fwwF
f/yKhWsu5JoLueZCrrmQay7kmgu55kKuuZBrLuSaC7nmQq65kGsu5JoLueZCrrmQay7kmgu55kKu
uZBrLuSaC7nmQq65kD9uLuRPFzrS/dtZwbZd2qFpbIemsR2axnZoGtuhaWyHprEdmsZ2aBrboWls
h6axHZrGdmga26FpbIemsR2axnZoGtuhaWyHprEdmsZ2aBrboWlsh6axHZrGdmga26FpbIemsR2a
xnZoGtuhaWyHprEdmsZ2aBrboWlsh6axHZrGdmga26FpbIemsR2axnZoGtuhaWyHprEdmsZ2aBrb
oWlqh6apHZqmdmia2qFpaoemqR2apnZomtqhaWqHpqkdmqZ2aJraoWlqh6apHZqmdmia2qFpaoem
qR2apnZomtqhaWqHpqkdmqZ2aJraoWlqh6apHZqmdmia2qFpaoemqR2apnZomtqhaWqHpqkdmqZ2
aJrG9qZje9OA63alQtqVCmlXKqRdqZB2pULalQppVyqkfQAqGoCKBqCiAQjkvw2hiLfnEqPyQxUC
WWe6QnPTSnq3K4HergR6uxLo7cqTtysh3q50egcCHmC9O32vn88cWovkwUt63EEfHJrHve3BCWh3
NPr7wcR/3IUfDOeu2dEI24Ph3J7R+KJjO4k7trN2Yzvt9mDjNmd0jaA82Lhju6Op+tDeo3WkxtaB
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
dD+grdwHAYOPOFxniO5+ZNt9ArfDf2U3Iao1Zg6kOIw+TuJvAj1m7+w5gcEnoPcZ/I1Ev7b5VNS3
7HYs9jnbjrN+xzY4WgSTOLFwBJAVcNWIMi1Mf5UPOODboLeaj0zKM5CUdSB5IgPN7qbbK384E8YF
i1ywyAWLXLDIBYtcsMgFi1ywyAWLXLDIBYtcsMgFi1ywyAWLXLDInwMW+TMyc/yjO3fbttzu7cZj
R9/uGNodY7Njbe+xtvdY23usv7vH3O5Ymh1b1+5o7xGrpGJHe9Ptdzd9RHDU3263W7uja3f07Y6h
3TG2O6Z2x9zuWNoda7ujrWnX1rRra9q1Ne3ainVtxbq2Yl1bsa6tR9/Wo2/r0bf16NsW69vH9u3r
9+1jh/axQ/vYoX3s0D52aB87tI8d2seO7WPH9rFj+9ixbfWxfcrYPmVqnzK1T5nap0zty03tt53a
x07tY+f2sXNb9bm96dw24dx2mLl97Nw+dmkfu7Rvu7Rvu7Rvu7Q1XdqKLW09lrYea1uPta3H2tZj
bR+7tg20to9d28du7WO39rFb+9itff2tfezWvv7WfpdW9XWt6uta1de1mq5rFVvXKrauVVtdq6W6
Vgd13druaO/Rapiu1TBdP7Y72qf0S7ujfWyrULqhvcfQ3qPVH93YtlirDLqxvenYNuHYPmX83VPa
BmrVRdeqi65VF12rLrqprcfU1qNVKF2rULq5fezcPrZVKF2rULpWf3St/uha7dC1yqBb2qe02qFb
2pdr1UXXqotube+xtvdoZb9rRb1rJbtrJbvb2nfZfnfTpmJ9K8h9K8h9a8P0rWT3rQ3Tt6Let6Le
tzZM38p+38p+31oofdfWozVI+tYg6Vt10bcGSd+qi75VF31rkPSt/uhbC6Vv9Uff/64e7eu3Jkvf
api+NVn61kLpW+uibzVM32qYvtUw/fi7m7bv0mqYvtUwfWuh9K3K6VuV07cqp5/amrY6qG91UN/q
oL7VQX2rg/rWqOnntqatlupbLdW3dlDfqq2+VVt9awf1rR7rWz3Wt3ZQ3yq2vjV7+lbT9a2m61vF
1rd6rG+tnH5tn9Jqur7VdH2r6frWyulb1de3qq9vVV/fmix9q/r6VvUNreobWi01tFpqaD2toXWs
hlZtDa3aGlqlNHS/u2lb01ZLDa2WGlotNbRaami11NBaOUOrtoZWbQ2t2hpaLTW0WmpotdTQOlZn
WGrsaB/bWkpD61gNrWM1tJpuaDXd0Gq6oVVsw/i7x7bfpVVbQ6ulhlYHDa3KGVoNM7T6Y2jVxdBq
h6FVBkPrFA2tdhha7TC0ymBolcHQWjlD6wMNrcsztNphaH2gofWBhlZ/DK3+GNbf1aNt01Z/DK2X
NLQKZWgVytDaUkPrNg2t2zS0OmhsNczYGldja1yNrXE1tsbVePvdU9Z2R9MeY6ulxlZLja2WGlvj
amzxoLG1tsZWsY2tlhpbLTW2WmpstdTY/+6m7du2ptPY6qCx1UFjq3LGVuWMrcoZW5UztipnbFXO
2KqcsbWlxtYwGlvDaGw1zNgaRmOrcsbWMBqn3z22fdvWMBpbLTW2htHYqq2xVVtjq7bGVm2Nrdoa
W7U1tlpqbLXU2DpnY6u2xuV3j21frtVjY2vljK0eG1s9NrZ6bGzV1tiqrbHVUmOrlMZWB42tDhpb
HTS2Vs7U6qCp1UFTq3KmVuVMrcqZWg0ztfpjatXF1GqHqdUOU2t/TP3vLlnbHW09WoNkapXB1CqD
qTVIplY7TC2WM7We1tTqj6nVH1OrP6ZWf0yttza1CmVqFcrU2jBTq2Gm8Xf1aFus1UFTq1CmVqFM
rUKZWoUytQplavXH1OqPqXWsptaxmv6hYf5wDrhr8uua/Lomv67Jr2vy65r8uia/rsmva/Lrmvy6
Jr+uya9r8uua/Lomv67Jr2vy65r8uia/rsmva/Lrmvy6Jr+uya9r8uua/Pqvmvz6DwSHffns+dMn
3/zr0x8/+pcvnx8/Xz5/FB329PnzZ8+//5fPnnzznyccjjq2TdO6dtP8u6Zpv0irBadWC06tJze1
anFq1eLUqsWpVYtTqxanVi1OrXk3tWpxatXi1KrFqTXvplZPTq2enFrzbmoV59Sad1OrSafWvJta
1Tq1qnVqNencKs65Nd7mVpPOrSadW2Rsbn3OudW1c6tr59aam1trbm618dxq47kF0ufWmptbfT23
burcuqlz66bOrb03t/be3Np7czsIzO0gMLeDwNwOAnM7CMztIDC3Kn5uVfzcqvi5VfFzq+Lndv5v
bnX+3Or8udX5c6vz51bnz63On1udP7eO7NwOAnM7CMztIDC3hujcjgpzOyrM7agwt6PC3A4Cc6vz
59aInFvsbG4V7Dz/7int27YKdm4V7Nx6x3OrcedW486txp1bjTu3CnZuFezcKti51adzq0/nVp/O
rT6dW/U5t9pybrXl3GrLudWFc2tmzq2rO7facmntzqVVn0urLZdWWy6ttlxabbm02nJpneGl1ZZL
qxyX1tVdWm25tNpyabXl0v3usW17tMpxae3fpdWWS6stl1ZbLi2Gt7Tqc2nV59Kqz6XVlktrIS+t
hby06nMZfnfT9vVb1be0mm5pNd3SKralVWxLq9iWVrEtrWJbWsW2tB720nrYS6vpllbTLa2mW1r7
d2kd6qXVhUtrEC+tclxag3hpteXSasul1ZZLqxyX1gdfWuW4tMpxaZXj0irHpVWOS6scl9YcXVrl
uLTKcWmd8qU1R5dWfS6t+lxa9bm01ufSqs+ltT6XVp8urfpcWmNzafXp0qrPpZ2tWFp9urbG5toq
trXVUmurpdbWpltbLbW2WmpttdTaaqm11VJrq6XWVkutrZZaWy21tjbd2mqptbXp1lZtra3aWlsj
b22NvLXVY2urctZW5aythllbDbO2GmZt1cU6/e6m7eu32mFttcPaaoe1VQZrqwzW1nRaW+2wtqbT
2mqHtdUOa6sd1lYZrK0yWFtLaW2Vwdoqg7VVBmsr+2sr+2trKa2tqK+tqK+tqK+t6bS2sr+2sr+2
jubaKoO1VQZrqwzWVhlsrXG1tdpha42rrTWutta42lpbams9z61VOVvreW6tcbW1xtXWGldbq7a2
Vm1trdraWi21tVpqa7XU1mqprdVSW6uUtv53j13bHW0DtVpqa7XU1iqlrVVKW6uUtlYpba3XuLW2
1NbaUlvrNW6tcbW1mm4bf/fY9m1b1be1qm9rVd/WGldb61durbW1tbpwa02nrdWFW6sLt9ZS2lrl
uLXKcWuV49Yqx61VjltrS22tttxabbm12nJrbamtVZ9bqy23VlturbbcWm25tdpya+2grVWOW6sL
t1YXbq3q21rVt7VuZLPGvu/aFfRdu2C+axfMd+2C+a5dH9+16+O7djl81y6H79rl8A872np0bT0a
tdW1y+EfdvyuHluzo28r1rf16Nt69G09+rY9+rZifVuxoX3s0LbH0NZjaJ8ytE8ZfveU9m3H9ilj
+5SxfduxfduxrcfU3mNq7zG195h+d4/2Xab2Xab2U85tE87ty81txea2HnNbj6W96dLedGlvurRv
u7RPWX73lPbllvZDrW091rYea1uPtX3s2rbp2j52bdt0ax+7tY/d2sdu7etvbT229vW3tmKNtdW1
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
Lfz6+yEAnz9dvwPjf/kcm/8cJv3+S/Ltp+n8t5+L/f5T/okv+PX3u/v7z8H+/Ds/ft6hz0n5X34f
hf52h78zjOpffs2+T67+vz9/Is/ni33+pnx/1379/MH79fPnenxOu47Pn+PxOSM7PmdtxycRfX0y
L9bHqt/fpPP5Jv3+G/M5sf3Hj/A/P//wibD66RMa8tMnImN/jup+z6L+/3z+kP9+i74NR8//2aeF
z7H+Xz8Hqn/6/TV+nw3+jsb47z5j7fOsiJ9/51h8//n/n39e6ud4/q+f5JOfP8eK9yeP4sfff0g+
sQa/kwR+P5zt1895/19//0n/HLb/5/e78N9//r8/x+K/g70+j5n49ZNx/9PneRM/fZ438WHrc4T9
O53rG9Pqp++8mPxj4vunT4DJT5+D0j9+zkd/n8PvT3hAf4L767/6vIGfLJNP+sknD6W+Rej59sN4
vrPwvw2Tn//+8y5/x2N8A5as//bzqj4H83/+nfnyObD+0+cZP9//px/+h89b/fvl/Pp5CtD4F2RG
/7kyfwifG4If47/+/lv+7Qfyx/E/+faf//W3//xvvv3nO2/ix/G//f7//lY7fxz/+2//+W++/ef/
8O0///23//wfv/3n//TtP//nb//5v3z7z//923/+h2//+X9++8//6/uL739+/uGn73/49n79+MlJ
+vETd/TjJ23px0/+0o+f2KUP09//+f/s23/+59/+87/49p9vR3mNb2fojf/y23/+q8+Ff/78wy/f
//Dj+PzD/PzD+vxDfC78u93Pf/7T5z//+fc//Pr9D7/88PmHz1f+fj7fN8rUj99qxY/ffqN/nN/N
/48/1/y82O9HBn4jVP34rVL9+HmWzo+fZ6t93IxPT/n7//Rp5afvf/i8pT9/t/b5L76dH3Iv/Pu/
mJ+nMs3Ps23m98j8+MP6/EN8/iE//1Cff9iff/h+Gf/Ft/98Gvr28/3jJ2nlx098yo/j2/V9K5n3
3//0aejnT0M/fxr6+dPQz5+Gfv409POnoZ8/Df38aegb2uTjD+fzDz9+/uGfn3/46fMPP3/+4fMG
/fzp55dPP798+vl8d7+XrI8/fPr55dPPL59+fvn088v3G/Tffv9/x/e35r/7fOt+f41Pv798+v3l
0+8vn35/+fT7y6ffXz79/vrp99dPv79++v310++vn2v9+un310+/v376/fXz/v366efXTz+/fvr5
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
ePjW6+PIP39+Dt9IfShfVj/Ta+erjQ+F36b8gY9AH8qfc/1D+XPUfShQED6UL6/DJPeH8uWVmdb9
UAqFovGhfP077VrjeKX+LucPkgDSw0evQnv7KnyTdVOeDzQfCpmQ1qCPsw/5Wc315drXD17FWluF
czivwhMJH0cR8jOfSXPv3lL2FVfhzKmRmybIx8l4zEl/KLxyT9/3Dn8OmzMpPxR+cz8Urqs5FOyD
Y8Ns94eCn/vrtb4o+4vCXT3sZn5T/FfsRT5O2/P363As+Yfy5V85oZ4nvvyd8o6d8v6c+nLtVur6
wZ/e8hD4D8V/NTmh/EPxX02rcM3iPldIfKn746vi+163COPn3rI/39W6y8cXBc/FSewfCj/hV9kq
HNr7oaSvE1slybr76zXnF2WpsN+4ylHhwYUP5cvfkURSX7g194UHDr/sbWpzKuOH4t3oQUZVT9gb
1Yuf3qvw7uwfOJ/+4+Gb3yr+X/O02NsKv63w2wq/rfDbCr+t8NsKv63w2wq/rfBfvhX+24HFfvgf
/fHltl+y29YctjWHbc1hW3PY1hy2NYdtzVF+626fc9jnHKVTG5+jdGondGyd2hodtkaHrdFha3TY
Gh22Roet0WFrdNgaHbZGh53QYSd02AkddkKHndBhJ3TY+Bz2OYd9zmGfc9jnHPY5h23N8aWt6QMt
0z7ntM857XNO+5zTtua0rTlta07bmtO25rStOW1rTtua07bmtK05bWtO25rTtua0izl9oGXaxZw+
0DJta067mNMu5rSLOe1iTruY0y7m9IGWaVtz2rScNi2nPcppS3Lakpy2JKctyWlLctqSnLYkpy3J
aUty+rjKtEc57VFOe5TTx1WmuT6N8WmMT2N8GuPTGJ/G+DTGpzE+DelpSE9DehrS05CehvQ0pKch
PY3gaQRPI3j6MMo0gqeJOw3YacBOHzWZJu40YKcBO83TaZ5O83Sap8s8XebpMk+Xj4ks83SZp8s8
XebpMk+XebrM02V8LuNzGZ/L+Fw+BLKMz+VDIMv4XMbnMj6XT4Us83SZp8s8XebpMk+X8bmMz+VT
IcunQpZ5uszT5TMfy4BdBuwyT5d5uozPZXwuw3EZfcvoW25pl1m48ssqXq1ZuMzCZRYus3CZhcst
7XJLu0zLZVouw3EZjsssXO5Pl/vTZTgus3C5HV2G43I7utx9LsNxGY7LcFw+drfcji7TcpmWy+3o
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
NtjxF50f9ppfr/n1ml+v+fWaX6/59Zpfr/n1ml+v+fWaX6/59Zpfr/n1ml+v+fWaX6/59Zpfr/n1
ml+v+fWaX6/59Zpfr/n1729+/a3PD1ty1ZYYtSv4BrhF3Ca61LQr+Da7RdwGuBi1JUZtiVFbYtTW
ds+4jXhBa0vQ2hK0tgStXUGnFgHJa0vy2pK8tiSvLclrV9CpZUI225LNdgWdWjdksy3ZbEs225LN
tmSzLdlsV9DH/uLDO2aZ2JYJcW5LnNuS3rakty3pbUt625LetqS3LdlsSzbbks22RLFdgVVEsS1R
bEsU2xVCoRS2Qivow0SX3nYFfbj/Fee2pLct6W1X0JiJLs7tCi7rN1JtoreJ3n4ZL85tiXNb4tyW
OLclzm2Jc7uCyxqw8t2WfLcl323Jd1vy3a6gUxNXnNsS53YFfRiw8t2uoA8Dtg1YkXBLJNwSCbdE
wl1BpwZsG7BtwIqVW2LlrqBTN+aC566gUxNXEt0VdGriiqZboumWaLolmm61ESyr7go6NXFF011B
HwZsG7DttrvddrcR3EawvLsl727Ju1vy7q6A02NIS8RbEvGWRLwrhEIqlMJWaAWdGuMy85bMvCto
zI25EL0lRG/JzFsy867gssa4EL0lRG8J0VtC9JYQvSVEbwnRu4JOLQVS9a6gU2uD3L0r6NTaIIhv
CeJbgviWIL4ld2/J3Vty95aYvSvow9ogd+8K+rA2COJbgviuoDFrg2S+JZlvSeZbkvmWZL4lmW9J
5luC+JYgvivow6AXxLcE8V3BZQ16yXxLMt8V9GGuS+a7gsbcWovqu4LGTP5j8gvzW8L8ljC/Jczv
Choz6IX5LWF+IczvCkNhKiyFUEiFUtgKraDTodOh06HTobGhsaGxobGhj6mPqY/pDZr6mPqY+pj6
mN6g5bLLy1+uslwlfI3wNULr4YuGTkOn6f1IXzQ1lr5ofnlR35fyfSmXLZctr6VcpVxle8e2d2y7
7HbZ7bLbq9362Ppor7b10fpofbQ+Wh+tj+Oyx2WPqxxXOb7Zx2XPl2W5/GFsidkLMXshZu8KqVAK
+BhmkJi9ELN3BX0YSmL2QsxeSNULIXohRC+E6IUQvZCZFxLxYiyv1sgRgBfy7kLe3RW8p8tlDaVh
KAnACwF4IQAvBOCFALwQgBfy7kLeXci7C3l3Ie8u5N2FvLuQdxfy7kK8XciqC1l1IasuZNWFrLqQ
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
JZutZLOV5LUruGy5bLlsuUp9WcX3dnv522W3N3nrY+tje/lbY1tjW2Pt/WiNtT7aVY4Xd3zR42sc
r+V4LUfrBspgy3KFqbAUQgEfw/wQxVai2K7gi44vL1oK3EJRbCV5rQSt1TAuhukgE+0K+jAdpKaV
1LQaxoUYtRKSVkLSSkhaCUmrYVyM9H6YDlLTSmpaCUkrIWlXcBV/94WklZC0EpJWMtFKJlrJRCuZ
aFfwWvy9FXBWAs5KwFnJMyvxZSW+rMSXlbSyklZW0spKWllJKytpZVfQmGEgvqzEl5W0spJFdgVf
1DAQTlaSxmr6iyxprOSIXSEVSkFj7gykhJWUsCtsBa37qz79VRcsVoLFrqAxw0CwWEkJKylhJSWs
pISVULAS+XUFL65c1p3B9HdfwldJ+CoJXyXhqyR8XcFr8Xd/+rs/LfMiv0rkV4n8KpFfV/AmGxci
v66gD/Njmh/TdJABdgVXMR2mYbD83RcbdoWlEAqpUApbgYsTLFZyxEqOWMkRKzliJUes5IiVHLGS
I1ZyxEqO2BV0aiitqbGpMTcka+nDHcoytiSNlaSxkjRWksZK0tgVvNrQhykli6xkkZUsspJFVrLI
rqAxc0zSWEkaK7FhJSWsRH6VyK9yoqCcKCgnCsqJgnJeoBwPKKcBymmAchqgnAYopwGu4A1yQ+LD
/+XD/+XD/+Wz/uWD++WD+1eYCkshFFKBN8qH7suH7suH7suH7suH7q+gMX/VfQq/fOi+fOi+fOi+
fOi+fOi+fOi+fOi+fOi+fOi+fOi+fMa+fMa+fKS+fKS+fKS+fKS+fGC+fD6+fD6+fD6+fD6+fD7+
Ct5ktyw+H18+Dl8+Dn8Fl3XL4gPz5QPz5QPzV9CHgeIT9OUT9FfQqbscn6AvH5i/gi9qXPg4fPk4
fIX54ePw5ePwV3CV3z6u/EXnh73m12t+vebXa3695tdrfr3m12t+vebXa3695tdrfr3m12t+vebX
a3695tdrfr3m12t+vebXa3695tdrfr3m12t+/fubX3/r88NKPNUVuBPyqkpeVcmrukIolEIruKyf
sdLvV9JdlESrEmBV8qpKXlWJpyrhUyV8qoRPlfCpEj5VwqdK+FQJnyrhUyV86go6NRalUZU0qkpz
UjzVFXRqLEqjKuFTJXyqZE2VrKmSNVWypkrWVMmaKllTJWvqCl6c2yrhUyV8qoRPlfCpK2jMJJVG
VdKoShpVSaOq9JNcmpOSpEqSVEmSKsFRV/DiDM70S1/RUiVaqkRLlWipEi1VoqVKtFSJlirRUiVJ
qiRJleCoEhxVUqCu4D8ZX/7JVsB6GVsynq6gU3dzQp9K6FMJfbrCFx/eQoNNClRJgSopUFfQqcEm
FqrEQpVYqBILVWKhSizUFfRhsAl9KqFPJfSphD6V0KcS+lRCn0roUwl9KhlPJeOpZDxdQR8mndCn
EvpUMp5KxlPJeCoZTyXSqUQ6lUinEulUIp1KpFOJdCqRTiWwqQQ2lTimEsdUspVKtlLJVirZSiVb
qWQrlWylkq1UspVKlFJJTiq5SCUX6Qq+qN9qCUoqQUklKKkEJZWgpBKUVIKS7g+QTg3H7ddcspVK
tlLJVirZSiVbqWQrlWylkq1UspVKtlKJUipRSlfQmOEoW6lkK5VspZKtVKKUSpTSFTTmNnD7VZn0
pZK+VNKXStjSFfRhWgpbuoLLGp/ClkrYUglbKmFLV9CY8SmOqaQvlfSlkr50BZc1LbfhKI7pCi5r
OMpnKnFMJX3pCq7iRlHYUglbuoIXZ3zKVrqCV2t8tps8UUolSqlEKZUopWrTUrbSFVzWtBS2VMKW
rlAKOjUtxTGVsKUStlTClq7gsiZdG2xtsIljKnFMJX3pCi5rjslWKtlKV/BaTClhSyVKqdoMkq1U
spVKttIV9OGHVdlKJVvpbj/0YSjJVirZSiVbqUQplSilEqVUopRKlFKJUqp2x+aD2eWD2eWD2eWD
2eWD2eWD2eWD2eWD2eWD2eWD2eWD2eWD2eWD2VfQmPtCn8Mun8Mun8O+Assed30+qV0+qX2FpRAK
qVAKW6EVdGo4HsPxGI7HcPTx7yvo1HD0efAr6NSdow+Ilw+Ilw+Ilw+IX0FjxqdPjJdPjJdPjJdP
jJdPjF9BY+4cjwHrQ+ZX0JiJ61Pn5VPnV9CYEexT5+VT5+VT5+VT5+VT5/djlD4MaR9DLx9Dv4LG
3Dn6XPoVNGZq+6B6+aB6+aB6+Vx6+Rh6+dT5FXwN94XHCPYh8/Ih8yv4ouapD5lfQevGpw+Zlw+Z
lw+Zlw+ZX8FV2ORtnynfPlO+faZ8+0z59pnyK2yFL8seBKLvCkNBp0OnQ6dDp0OnQ6dDp0OnU6dT
p1OnU6dTp1OnU6fzP38+7DW/XvPrNb9e8+s1v17z6zW/XvPrNb9e8+s1v17z6zW/XvPrNb9e8+s1
v17z6zW/XvPrNb9e8+s1v17z6zW/XvPrP7D59bc+P+x69OYt79XyXi3v1fJeLe/V8j1bX5b1PQt9
hD5CH6GP0Ef4FoU+Qh+pj9RH6iP1kf6opD7SG5QaS42VPkofpY/yfpTGSmOlj9LH9gZtjW2NbX1s
l93ej62PrY/WR+uj9dEu2y7brnJc5bjKcZXj23C8/OPbcDR2NPalKrCH3oM99JabteVmbblZW27W
lpt1hVLYCq2gUwvJsJDI3tqitraorS1q6wr6sEwI47qCPiwT4rqu4B2zTAzLxJg6NZPH1KkhPcxk
oWBbBtiWAbZFfm2RX1vk1xVc1ggeRrCUsC0UbAsFu4LGzORhJg8zWWzYlhJ2BX0YwaNc1sSVI3YF
lzVx5YjtYZ7KEdtyxLYcsS1HbMsRu4JXu7/48K4bsLLItiyyLYtsyyK7gk7N5GEmSyvbwsmuoDED
VvTYljS2JY1tSWNXGApTYSmkQilsBX2YltNd9jQtp7vsaXxO43ManwLOtoCzK+jDcBRwdoUvq7SC
l2/0TaNvGn1C0raQtC0kbQtJ20LStpC0LSRtC0m7gsbMQiFpV9CY4TgNR7lqW67alqu25apdQafu
YKfxOY1PUWxbFNsWxbZFsV1BpwassLYtrG0La7uCPkxcYW1X0IeJK71tS2/bstm2bLYtm23LZruC
l2+eCmu7gj6MT2Fte5qn0zwV57bFuW1xbluc2xV4X8S5bXFuV5gKSyEUUqEUvvhoBW7QMoKXG1aR
cFfQqZksEm6LhNsi4bZIuC0SbouE2yLhtgS4LQHuChoztUXCXUFjhvTyOwMZcVtG3BX0YWoLjdtC
47bQuC007go6dUsrRW5LkdtS5LbQuC00bguN20LjrqAxU3uZyWLltli5K+jDTF5m8jKTRdNdwRtk
SC9DehnSy22xeLst3u4KOjW15d1teXdb3t0VdOrGWSLeFXRq0C+DXkTeFpG3ReRtEXlX0Ie5LjPv
CvrwuwsheluI3hU09iXX3Vovt9Zy97bcvS1mb0vVu0IpbIVW0IcxHsZ4GOOy+7bsvivowxgX5rfD
GJfudwWNudcOU1uY3xVc1q21dL8t3W9L99vS/bZ0vy3db0v3u4JOjXFxf1fQqakt7m+L+7uCxtx8
hzEexniY2iIDt4TALSFwSwjcEgK3hMAdprbIwC0ycIsM3CIDt8jALSFwCwTc8v+2/L8t/2/L/7uC
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
YsNabFiLDWspYVcIBa/WLAyzULBYCxZrwWItR6zFhrXYsBYK1kLBWihYCwW7gssajlLCWkpYSwlr
KWEtFKxlgF3BZf0eUEpYSwlrKWEtJaxlgF1BH342lRLWMsCu8GUVr9b4lBLWUsJaSlhLCWspYS0l
rKWEtVCwlgHWMsBaBljLAGsZYFfQR3/x4Q0yLcO0DNMyTMswLUWPteixK2jMnaOksZY01nLEWmxY
iw3rNNjEhl3BF/XzbbrJS6PPMYV2TKEdU7iCPsxC5xau4LIGm4MM7SBDO8jQDjK0gwztIEM7yNDO
LbRTCVdwFXPMqYR2CKHTTZ5TCe0QQjuE0A4htEMI7YhBO1HQThS0EwXtAMEVXMUcc6Kg0xxzxKAd
MbiCPgy2NNgcQmiHEK6gU7eBDiG0QwhXcFlzzKmEdirhCt4gU8ohhHYI4QquYiiloeSYwhWmwlII
hVTAh3ML7dxCO7fQzi20cwvt3EI7ptCOKbRjCu2YQjum0N/GFP6i88Ne8+s1v17z6zW/XvPrNb9e
8+s1v17z6zW/XvPrNb9e8+s1v17z6zW/XvPrNb9e8+s1v17z6zW/XvPrNb9e8+s1v/79za+/9flh
LTasxYZdwXvlrlKOWMsRazliLUesxYa12LAWG9Ziw1oGWMsAa5FfLfKrRX61yK+W8NXyu1p+1xVc
Jb+8qD9/fn4W19Xiuq6gD/eMZfgK9LqCl28aS/hqgV4t0Kvld7X8rpbf1dK5WjpXC+NqYVwtjKuF
cbXsrRa11aK2WtRWS9ZqyVotSKu3KSgVq6VitRCsFoLV2w+y25zc5qSYrBaT1WKyWkxWS8VqqVgt
FaulYrVUrJaKdQWNzS8+vB+GkpisFpN1BY0ZSnKzWm7WFTTmBlCQ1hU0Zo5tc2y7ZxTG1cK4WhhX
y95q2Vste+sKLuueUfbWFVzW6BPG1cK4ruD9MOmkc11BHwabdK6WztXbbaZ0rivow6ST39Xyu66g
MXeVEr6u4A0yC7efn4WCtVCwFgp2hS8+vEGmpZSwlhJ2BW+QabnddwoWa8FiVxgKU2EphEIpbIVW
0JhfHUoaa0ljLVisBYu1YLEruKwRLFjsCvowgttNnhyxliPWcsRajtgVXNYP1G3Atnna5mmbp8LJ
rqAP81Q4Wcsiu4KrGI7tV4fSylpaWYseu4KruOtrs1A42RVc1iyUVtbSyq7gXTccxZe1+LIWX3YF
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
dJs5TfRpok8TfZro033nNOLhmX0IOrUITDei8MyuYFWYblWnZWJaJqZVYVoVplVhunedlolpmZiW
iWmZmJaJaVWYFoFpEZgWgWnmT3e30yIwLQLT7e60KkyrwrQqLKvCsios97/LMrHc/y7LxLJMLMvE
skwsy8SyTCyrwrIqLIvAsggsi8ByM7vM/GXmLzN/mfnLzF9G/DLil3m9zOvlR+5lOC53t8DJPgSv
xfhcfgZf5ukyT5d5uozPZVou03IZjstwXIbjMhyX4bgMx2U4LsNxGY7LcFyG43KHvEzLZVou03KZ
lsu0XKblclO9jM9lfC7jcxmfy/hcxucyPpdpudxUL+Nzuale5ukyT5d5utxULwN2GbDLgF0G7DJg
lwG7DNgwT8M8DdMy3GWHaRmmZRiOYTiGe+gwLcO0DPfQYXyGaRlumcP4DOMzjM8wPsP4DNMy3O6G
290wHMNwDL9+DMMx/D4y3GyG8RnGZ5iWEV98eHGmZZiWYVqGe8swLcO0DNMyDMcwC8MsDKMvjL4w
6cKkC5MuzLEwtsLYCmMrjK0wtsLYCnd9YY6FORbmWJhjYY6FORbmWJhjYY6FORbmWJhjYWzFl9hy
X5jmWJpj6b4w3RemSZfuC9OkS78GTaMv3SimWZhmYZqFaRamWZhmYZqF6VYyjb40+tKkS5Mu3Sim
0ZduFNPvAtJwhBL2IXj5bjbTzWaap2meppvNNGDTPE3zNM3TNE/T7WgasGnApgGbfrxPEzf9eJ9G
cBrB6YY1jeA0gtMITjes6f40jeB0O5pGcLr7TDM5zeR0s5luNtOQTjebaWqnqZ2mdpraaWqnqZ2m
dpraaWqnIZ2GdBrSaUinEZxGMPiyD8Eb5N4yDek0pNOQLkO6DOkypMtMLnefZUiXIV2GdJnJZSaX
mVxmcpnJZSaXmVxmco0vxrxjbljL1C5Tu9ywljFexngZ4+V3vGWMlzFexngZ42WMlzFe68uy3g83
vWVIl5lcZnKZyWUml5lcZnKZyWXilolbJm6ZuGXilolbJm65Cy4juNwWl5lcZnK5Ty5DugzpMqTL
kC43zmVql6ldpnaZ2mVql6ldpnYZ0mVIlyFdbpzLTC4zufrLst4gM7mM4DKCywguE7dM3G3ibvN0
m6fbPN3G53aPu83TbZ5u83Sbp9s83ebpNk+3ebrN022ebvN0m6fbPN3m6TZPt3m6zdNtnm73yduA
3QbsNmC3AbsN2G8jKH/N+WGv+fWaX6/59Zpfr/n1ml+v+fWaX6/59Zpfr/n1ml+v+fWaX6/59Zpf
r/n1ml+v+fWaX6/59Zpfr/n1ml+v+fWaX/8Bza+/8/lhHx69eW7dt0Vgu1PfVoVtVdhu3bdlYlsm
tmViWya2ZWJbJrZlYrt1327dt4VkW0i2355sK8u2TGzLxLZMbMvEtirs+rKK98OqsK0K2yKwzfxt
5m8zf5v528zfZv52p74tAtsisC0C2536dqe+LRPbMrEtE9sysf06Zft1yrZubPfy20KyLSTbQrLd
y28rS1tI2q17u3Vvv19pa09be9ra0+7l+4cvxnhv22LUFqO2GLW1p609be1pa09be9ra09aetva0
08ttMWqLUVuM2mLUlpq21LSVpa0sbWVpt+5tjLcx3m7u21xvc73N9TbX21xvY7yN8TbG2xhvU7tN
7Ta129RuU7sN6Xb73/nFhzfIkG738m1ItyHdhnQb0u3Wvd2pt6ndpnab2m1qt6ndpnab2m1qt6nd
pnYb0m1ItyHdZnKbyW0mt5ncZnKbyW0mt5ncZnJ/yWR3+8eQPob0MaSPIX0M6WNIHxP3mLjHxD0m
7jFxj4l7TNxjwB4D9hiwx4A9xucxPo9b92N8HuPzuFM/5ukxT495eszTY54e8/SYp8c8PebpMU+P
eXrM0+M++Riwx4A9BuwxYI/75GPiHhP3GLDHgD1ui48BewzY4z75uE8+7pOPEXyM4GMEHyP41Bcf
3g8j+BjBxwg+RvAxgo8RfEzcY+IeE/eYuMfEPe6TjxF8jOBjBB/3ycdMPn6dcszkYyYfM/mYycdM
PmbyMZOlHY4fiOArDIWpsBRCIRVKYSu0gk6HTodOh06HTodOh06HTodOp8tOl50uO112uux02fll
WW/Q9AYtb9DS6dLp0unS2NLY0tjSR7hKuEp4P8Jlw2XTi0svLl02XTZdNl02vbj0rqdXWxorjZXL
lstu/8nW+vY19pfX8I5trW+tt8u2t7D10fpol21vYeuj9XG8hUdjR2NHY0djxxt0dHp0ajhKbhyS
G4fkxiGocchlHHIZh1zGK+jD6BPUOAQ1DkGNQ1DjENQ4BDUOMYxD6uIVXMWkE8M4xDAOMYxDDOMV
vB8m3TDpJDdeQadLp0bfMPqG0SfscQh7vDddp6FTs1D645D+OKQ/XsFlDUdxkEP64xD2eAWXNQul
Pw7pj1dw2fJtMByFPV7Ba9m+qGkp/XFIfxzSH4dsxyHbcch2HLIdh2zHIblxSG4cghqHoMYhqPEK
rmLSDZNOlOMQ5TgkNw7JjVeYCkshFVzFHBPUOAQ1DkGNQ1DjENQ4BDUOQY1DUOMQ1DgENV5Bp2ah
5MYhuXFIbhySG4egxiGocXwDNf4154e95tdrfr3m12t+vebXa3695tdrfr3m12t+vebXa3695tdr
fr3m12t+vebXa3695tdrfr3m12t+vebXa3695tdrfv0HNL/+1ueHDQ9Ou4K3xvD14LThwWlDLuMV
vDVG63QjOs3a6TZTlOMQ5ThEOQ5RjkOU45DcOCQ3DkGNQwzjkLo4pC4OmYpDpuIVvLjy4splTWMh
i0PI4hCyeAWv1jSWujikLg4hi0PI4pCpOGQqXkEfrQ/jWabi3Ym4rGksIHHML1nrNlNA4hCQOOQh
DnmIQx7ikId4BXyIPxziD6/gsoavPMQr6MPwFZB4t2pevlm7zFqJiUNi4pCYOCQmDomJV9CYObbc
VS6DbRlsQhaHkMUhU/FuTL0fBtsy2JafsIUsDiGLQ8jikKk4ZCpewWX9/CxTcYhQHBITh4DEISBx
yEMc8hCHPMQh/nCIPxziD4f4wyH+cIg/HOIPh/jDIf5wCDe8gssaW7IMhyzDIctwyDIcsgyHLMMh
unCILryCl+++U5bhkGU4ZBleAWPCDa+wFEIhFVrBVdyISjsc0g6HtMMh7XBIOxzSDoe0wyHtcEg7
HNIOr6Axs1D84RB/OMQfXkFjfsKWh3gFlzXYBCQOAYlX8PKNPomJQ2LikJg4JCYOiYlX0KmbvHBP
JzHxCvpwTycgcQhIHGEWhlkoIHEISLyCF2cWhps8AYlXcFmjT2LiFVzW6BOhOCQmDomJQx7ikIc4
5CEOeYhD/OEQfzjEHw7xh0P84RB/eAWNmYVhFgpIHAISh4DEISBxCEgcAhKHPMQhD3HIQxzyEIc8
xCEPcchDHPIQh/jDIe1wSDu8gssafWn0iT+8gssafeIPr+Dl+5FbHuKQhzikHQ5ph0Pa4ZB2OKQd
DmmHQ9rhFfRhOIo/HOIPh7TDIe1wSDsc0g6HtMMh7XBIOxzSDoe0wyt4C91bij8c0g6HtMMh7fAK
vqj7QsGEQw7hkEM45BAOOYRDDuGQQzjkEA45hEMO4RU0ZjjKIRxyCIccwpGmZZqWkgqHpMIhqXBI
KhyCCYccwiGHcMghHHIIr7AUQqEUtkIraMxwFEw4BBMOOYRDDuGQQzjkEA45hEMO4ZBDOOQQXkFj
xqccwiGHcIgdvII+jE+xg0Ps4BA7OMQODrGDowxHsYNXcBWzUMrgkDI4pAwOoYJXcFmjT+zgEDt4
Ba/W6JNDOOQQDjmEQw7hEDs4xA4OsYNDyuCQMjiECg6hgkOo4JAhOGQIDhmCQ4bgkCE4ZAheQWPm
aZmnMgSHhMBRhmMZjiIDr+AqhqMMwSFD8AperWkpQ/AKQ2EqLIVQSIVS2AqtoFPjUw7hEDs4xA4O
sYNDyuCQMjikDA4pg1fwBrnZlDI4pAwOKYNDyuCQMjikDA4pg0PK4JAyOKQMDimDY5unTjUNp5qu
oFP3p445DcechmNOwzGn4ZjTcMxpOOY0HHMa38ac/qLzw17z6zW/XvPrNb9e8+s1v17z6zW/XvPr
Nb9e8+s1v17z6zW/XvPrNb9e8+s1v17z6zW/XvPrNb9e8+s1v17z6zW//v3Nr7/1+WFD7OAQOzik
DA4pg0PK4JAyOKQMXsF7Zd3Y1g3BhEMw4ZBDeAWN+SWFYMIhmHAIJhyCCce2skgqvIK30FIjqXBI
KhyCCYdgwiGYcAgmHIIJhxzCIYdwSBm8gstae8QODrGDQ+zgEDs4xA4OsYND7OAQO3gFnMohHHII
hxzCIYdwyCEcQgWHUMEhVHDIELyCq1hZhAoOoYJDqOAQKjiECg6RgUNk4BAZOEQGDpGBV9CHlUWo
4BAqeAXfFyuLlMEhZXBIGRxSBoeUwSFlcEgZHEIFh1DBIVRwCBUcQgWHUMEhVPAK+jCkpQwOoYJD
qOAVNGZISxkcUgZHm8ltJrebezmEQw7hFTRmSAsmHIIJh2DCIZjwCjo1pCUVDkmFQzDhEEw4BBMO
wYRDMOGQQ3gFfZjaggmHYMIraMxcb3NdUuGQVDgEEw6xg0Ps4BA7OMQODrGDQ+zgkDI4pAxeoRS2
AsbkEA6xg1dYCvowpOUQXkEfZrIcwiF2cIgdvIKrGMHHCJZDOOQQDjmEQw7hEDs4xA4OsYND7OAQ
OzjEDg6xg0Ps4BA7OMQODrGDQ8rgkDI4pAwOKYNDyuAVNGYEix0cYgev4C00go/bYjmEQw7hkEM4
5BAOOYRX0Jh5KmXwCi5rnoodHGIHh5TBK3j55qnYwSF2cIgdHGIHh9jBIXZwiB0cYgeH2MEhdnCI
HRzHjbMcwiGHcMghHHIIh9jBIXZwiB2cUganUMEp/29K95vC/KYwvym77wqt4CpTY9Nlp68xfQ2S
bgrim2L2ppi9KWbvCi67XDZcNlw2vJbQR/ii6Yumr5G+DemLpheXrlKuUlovly1/YEofpY/ti25f
dPui2xfdX17Ui9u+c9t3bnv5rbHWWGusNdYaa421xlpjrbHj+3J0enR6dHo0djRmOsjdm3L3rrAU
UmErtILLDlcxckTkXcFVDBQhelOI3hSiN4XoTSF6U4jelJk3ZeZNmXlTZt6UmTdl5k2ZeVNm3pSZ
N2XmTZl5U2belJk3ZeZNmXlTZt4V9BEua9INk06I3hSidwVvkFk4zEKpelOq3pSqN4dZKERvCtG7
gsuW96P0UfoofWxvkHkqd2/K3Zty967gKkafmL0r+KLm2DCUhOhNIXpTiN4UojeF6E0helOI3hSi
d4VQSIVS2ApfluUWitmbYvammL0pZm9K1ZtC9KbMvCkzb0rEm/Lupry7Ke9uTmPL+ZrpOM10nOYK
WjeDppHjOM10nOYKXpwZ5HzNdL5mOl8zna+ZztdcQR9mkPM1V9CY+7FpKE1DyZGc+05qzJRyRucK
OjW2nNGZzuhMZ3SmMzrTGZ3pjM78NqPzF50f9ppfr/n1ml+v+fWaX6/59Zpfr/n1ml+v+fWaX6/5
9Zpfr/n1ml+v+fWaX6/59Zpfr/n1ml+v+fWaX6/59Zpfr/n1729+/a3PD5sy86bMvCkz7wreK6NV
Zt4VvFeGr8y8KSJvSsS7gq9h+MrMu4IXZ/hK1ZtS9aYQvSlEb8rMmzLzpsy8KTPvCtzTZdYK0ZtC
9KYQvSlEbwrRu4LLmrUi8qZEvCkRb8q7u4KrGL4S8aZEvCkRb0rEmxLxpkS8+399G9wiCsCbAvCu
4LLGs0S8KRHvCt4g41lE3hSRdwV9mMYy866gD9N4mcZS9a7gsm4AZeZNmXlTZt6UmTdl5k2ZeVNm
3pSZN2XmXcGrNceWsSVEbwrRu4I+3EQK0ZtC9KYQvSlE7woaMwul6k2pelOq3hSiN4XoTZl5VxgK
UyEUUmErcPlC9KaIvCkib4rImyLypoi8K3i1ZqHMvCkzb8rMmzLzpsy8KTNvysybMvOuoFPzVKre
FXRqnorZu4JOzVNBfFMQ3xTENwXxTUF8UxDfFMQ3BfFNQXxTEN8UxHcFnRrBYQSL6pui+qaovivo
1JAOQzoMael+U7rfFXRqSIdbZvl/U/7flP835f9dQacGvUDAK+jU5A+TX2TgFBk4RQZOkYFTZOAU
GXgFnVoKZAheQafWBimDU8rglDI4pQxeQacWC7GDU+zgFDs4xQ5OsYNT7OAUOzjFDk6xgzO+VA+/
fRU7OMUOTrGDV1gKoZAKpbAVWkGnViDBhFMw4RV0ao1Ka5Towim68Ao6tUalNUq44RRuOIUbTuGG
U7jhFXRqjZJ2OKUdTmmHU9rhFXRqjZKHOOUhTnmIUx7ilIc45SFOeYhTHuKUhzjlIU55iFfQqTVK
QOIUkDgFJE4BiVNA4hSQOAUkTgGJU0DiFJA4BSReQafWKImJV9CpNSqtUWmNSmtUWpLSCiSG8Qou
a8FJC46gximocQpqnIIap6DGKahxCmqcghqnoMYr6NSCI7lxSm6cghqnoMYpqHHKZZxyGadcxit4
PywWchmnXMYpl3HKZZxyGa+QCqWwFVpBpxYLQY1TUOMVdGqxkNw4JTdOyY1TLuOUy3gFlzXoa355
US/fGJe6OIUsTiGLV/BaDGkxjFfwrhvSchmvoDFDWlDjFNQ4BTVeQR8mrhjGKXVxSl2cUhen1MUp
dXGW8Sl1cUpdnFIXr6Ax47Pc0YthnFIXr6AP81QM4xTDOKUuTqmLU+rilLo4pS5ewWUNxzIcy3AU
1HgFfRiOghqnoMYpqHEKaryCy5qWchmnGMYphnGKYZxSF6fUxSl1cQpZnEIWr6APo0/I4hSyOGUq
TpmKV3BZk05i4pSYOCUmTomJU2LilJg4JSZOiYlTYuIUfzjFH07xh1P84RR/OMUfTvGHU9rh3G42
HaaaDlNdQR9Gn8NU89sw1V90fthrfr3m12t+vebXa3695tdrfr3m12t+vebXa3695tdrfr3m12t+
vebXa3695tdrfr3m12t+vebXa3695tdrfr3m17+/+fW3Pj9sCjecwg2ncMMp3HAKN7yCb5HxLMtw
yjKcsgynpMIpmHDKIZxyCKccwimHcIodnGIHr+C1GK3baN1Gq2DCKYdwShmcUganlMEpZXBKGZxS
BqeUwSllcEoZnFIGp5TBKWXwCqlQCluhFXRqGrdpLKlwCiacggmnYMIpmHAKJpxtPLfxLJhwCiac
ggmnYMIpmHAKJpxyCKfYwSl2cIodnFIGp5TBKVRwtnktZXAKFbyCy/ptgZTBKWVwShmcUganlMEp
ZfAK3iATXcrgFCp4BZc1C4UKThmCU4bglCE4ZQhOGYJThuCUIThlCE4ZglOG4JQhOGUIXkGnJq5Q
wSlUcLaJKyFwSgicEgKnQMApEHC2ASshcEoIvIKrmKcSAqeEwCnub0r3u4L/xGA7Bpt0vyndb0r3
m9L9pnS/Kd1vSveb0v2uoDG/fZX/N8X9TXF/U9zflO43pftdwVX8DC7db8rum7L7puy+Kbtviuqb
kvmmIL4piG8K4puC+KYgvil3b8rdm3L3ruA9NbYE8U1BfFMQ3xSzdwV9mFLHlJLMNyXzTcl8UxDf
FfRhBgnim4L4piC+KYhvCuKbgvimIL4piG8K4pti9qaYvSlVb0rVm0L0ruAqppQQvfUDu74lVe8K
U2EphEIqlMJWaIShsaGxoY+hj6GP4bLjy7LeoKmP6f2Y+pj6mPqY+pj6WL7o8jWW93T5ouvLi3px
4cWFNzm82tBYeLWh09Bp6DQ0li6bLpsumy6bLpsum96g8n6U96M0VhorjZU+6suyXv7Wx3bZ7bLb
Zbf3Y+tjez+2xrbGWmOtsdZYa6w11vpofbQ+jj6Ob9TR2NHY0djR2PGOHZ0SsEvs4BI7uMQOXqEU
WGWYhVIGl5TBK7iK4TgMR8GESzDhFbxa01JS4RV0anyKLlyiC6+gD9NSUuGSVLgEEy7BhEsw4RJM
uMQOLrGDS+zgEjt4BX2Yp8NwFDu4xA4usYNLqOASKriECl7Bd9+0lDK4pAwuKYNLyuCSMrikDC4p
g0uo4BIquIQKLqGCV/CuG59iB5fYwSV28OMkEwWNGY5yCJccwo8TABS8fLNwmIXDLBRduEQXLtGF
S3ThEl24xpfoc28py3DJMvzgHiuEQilshVbQh2kpunAJJlyCCZdgwg92ocJS8FrcBsoy/Bg5UfDi
DDZZhh9TCAoaM+mkHX48y66gsfXFmHfM6BN/uMQffjycqqAxt5LiD5f4wyX+cIk/XNIOlyzDJbpw
iS5ckgqXpMIlqfCj2a3gxZl0kgqXpMIlqXBNk24aW445LceclmNOyzGnj2+HFbxag23+lmN/0flh
r/n1ml+v+fWaX6/59Zpfr/n1ml+v+fWaX6/59Zpfr/n1ml+v+fWaX6/59Zpfr/n1ml+v+fWaX6/5
9Zpfr/n1ml///ubX3/r8sI9vwjBtcIodXGIHl9jBjw/hfxbEDi6xgx+fDxWWQiikQinow1iUMrik
DC4pgx9FUKEVXNZoXUar2MGP3wwFlzU4BRMuwYRLMOESTLikDN7/4yqm4HJHuIxFOYRLDuESO7jE
Di6xg0vs4FqmoJTBK7issSh2cIkdXGIHl9jBJXZwiR28gjfIaF1Gq6TCK+jUaBVdeAWdmrWiC5fo
wiW6cIkuXKILl+jCK2hsfzHmLTSeRRcu0YVLdOEV9OGHclmGS5bhklS45BBewVUMx2U4yiFccgiv
sBRCIRW2Qivow8/g4a4yjE9ZhkuW4ZJluGQZLlmGS5bhEl24BBMuwYRLMOGSQ7jkEC45hEsO4ZJD
uOQQLimDS8rgEiq4ZAguGYJLhuCSIbhkCC4JgUtC4BIIuAQCLmF+S3bfEtW3RPUtUX1L7t4Sordk
5i2ZeUtm3pKZt2TmLZl5S2bekpm3ZOYtmXlLZt6Smbdk5i2ZeUtm3pKZt2TmLYl4S97dEm+3xNst
8XZLmt2SZrdk1S3RdEs03RJNt+TMLTlzS87ckjO35MwtOXNLztySM7fkzC2xckus3BIrt8TKLbFy
S6zcEiu3xMotsXJLrNwSK7eExi2hcUu+25LvtuS7LXFuS5zbEue2xLktcW5LnNsS57bEuS1xbkuc
2xLntsS5LXFuS3rbkt62pLct6W1LetuS3nYFjbkfy/pizFtoOAp8WwLflsC3JfBtCXxb8t2WfLcl
zm2Jc1vi3Jb0tiWsbQlrW6LYluS1JXntCr7o+fKiXovbL1FsSxTbEsW2RLEtUWxLFNuSvLbkqi25
akuu2pKrtsSoXcGLM+nEqF3BZY2+MvoErV1BH0af5LUr6NToK6NPNtsVdOrXfsLalrC2JaxtCWtb
wtqWsLYlrG0Ja1vC2pawtivo1AiW3nYFnRrBZQSXiSvf7QoaM2Dluy35bveTqMsasPLdlny3Jd9t
yXe7gsYMWIFvS+Db/YisUwNWAtyS73YFfZin8t3uB3GXNU8lwC0JcEsC3JIAtwS+Lfluq+yrCHxb
At+WwLcl3+0K3g8zWeDbEvh2haEwFZZCKLSCy/qBV+DbEvi2BL5dwWXdsG5DWiTcFXRqjMuIWzLi
rqBTY3wb41LklhS5JUVuCY1bQuOW0LglI+4K3iAzWWjckhG3ZMQtGXFLRtwVXNaAFRq3hMYtGXFX
0Id5KjRubXewzqQsZ1KWMynLmZQraMyAdUjlChozYJ1aWU6tXEGn5qljLFfQh/tTp1aWUyvLqZXl
1MoVfFF3n06tLKdWllMrV9CH4ehcy3KuZTm1spxaWU6tLKdWllMryyGV5cTJcuJkOXGynDhZTpws
J06u4LJmoSMoyxGU9W0E5S86P+w1v17z6zW/XvPrNb9e8+s1v17z6zW/XvPrNb9e8+s1v17z6zW/
XvPrNb9e8+s1v17z6zW/XvPrNb9e8+s1v17z69/f/Ppbnx+2RMJdwZtnPMuIu4I3z3gWGreExi2h
cUto3BIadwWdGuBtgIuVW1LkrqAx99DtHlqs3BIrdwWXNdHFyi2xckus3BIrt6TILSlyS4rckiJ3
BX2Y6O2WWazcFbxBRrycuSVn7goaM+IFzy05c0vO3JIzt+TMLTlzS87ckjO35MwtOXNLztySM7fk
zC05c6vdVAueu4LGLBOS6JYkuivow7ohiW4JnruC98M9tGi6JZpuiaZbx6pw3DLLqrtCKpTCVnBZ
64Y0uyXNbkmzW8LrlvC6JbzuCl988HMqzW5Js1vS7K6gMTP5mMny7pa8uyXv7go6NZMl4i2JeFfQ
qSEtIu8KGjOkZeYtEXlLRN4V9GFIHzNZiN4SoreE6C0hekuI3hVc1kwWoreE6C0hekuI3hKit4To
LSF6V/AGmcli9paYvSVmb4nZW2L2llS9K2jMTD5msty9JWZvidlbQvSWEL0lIu8KvqhfUojIWyLy
loi8K3gLv6Qlu+wQkRcS8UIiXkjEC4l4IREvJOKFRLwraIw8vYLGhsaGxobGhsaGxobGhsamd2zq
dOp06nTqdOp06nTqdGps6WPpY+lj6WPpY7ns8gYtfYQ3KDQWGguNhT7C+xEaC42FxlJjqbHUWGos
vWOp09Rp6jR1mjotnZZOS6el09Jpaaxcdrvs9kW3V7t90e3VbldpV2mvpbXertKu0t7Tdtnjssd7
elz2uOxx2eOyBqzMvJCZd4WpsBRCIRVKYSvgVO5eiNkLqXohRC+E6IUQvRCiF0L0QmZeyMwLmXlX
8PINRyF6IUQvhOiFEL0QohdC9EKI3hW8QaalVL2QqhdS9UKqXkjVu4LGjM9hfMrdC7l7IXfvChoz
+sTshVS9kKoXw6QTs3cFL9+kk7sXcvdC7t4V/IEpnRqOgvhCEF8I4gtBfCGILwTxhSC+EMR3BZ0a
sKM1ZsAOA1ZUX4jqu4I+TFzZfSG77wr6MHFF9YVkvpDMF5L5QjJfSOYLyXwhme8KqVAKW6EVNGbi
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
9I5NnU6dTo1NjU2NTY0tl10uu1x2uexy2eXVhquELxre9XCVcJXw4sKLC29y6iO92tRYaiw1lhpL
jaXG0htULlsuW65SrlKuUq6yvfzt5W99bH1sL39rbGtsa2xrrDXWGmuNtcZaY62x1lhrrP2BOS57
XPa47HHZ49WalkI4UwhnCuFMIZwphDOFcKYQzhTCmUI4UwjnFTRmfA7jc5iWYjpTTGeK6UwxnSmm
8woaMy3ldqbczpTbmXI7U0xniulMMZ0ppjPFdKaYzhTTmWI6U0xnSuVMqZwplTOlcqZUzpTKeQXv
R2jMxBXTmWI6r6BTE3eYuJI9U7LnFXRq4or6TFGfKeozRX2mqM8U9ZmiPlPUZ0r2TMmeKdkzJXum
IM8U5JmCPFOQZwryTLmdOQxpQZ4pyPMKGjOkJXumIM8U5JmCPFOQ5xU0ZowPY1zUZ4r6vIJ37OjU
oBf1mZI9U7JnSvZMuZ0ptzPldqaYzhTTeQWXNZOnmTzNZEGeKcjzCi5r4kr2TMmeKdkzJXumZM+U
7JmSPVOy5xU0ZiZL9kzJninZMyV7pmTPFOSZgjxTkGcK8kxBninI8wr6MIIFeV5BY0bwNIJlf6bs
zxT1md9Qn3/R+WGv+fWaX6/59Zpfr/n1ml+v+fWaX6/59Zpfr/n1ml+v+fWaX6/59Zpfr/n1ml+v
+fWaX6/59Zpfr/n1ml+v+fWaX//+5tff+vyw9Oi99Oi99KS99KS99KS9K/gWmfmexZeexZeexZee
xZeexZeexXcFnVoEPK0vPa0vPa3vCjq1CHh8X3p8X3p8X3p8X3p8X3p8X3p8X3p8X3p8X3p8X3p8
3xV0alXwPL8r4NQD/tID/tID/q6wFEIhFUphK3wxxi1cVpbl9t9DAtNDAq+gUz8PCCVNoaQplDRl
kKYM0pRBmjJIUwbpFbxj1h6hpCmDNGWQpgzSlEGaIkdTwmgKFE35oSk/NOWHpvzQFBd6BZe1CAgD
TdmfKeozJXumZM+U7JmCPFNu5xW8Y/VlWa/F+JTbmWI6U0xniulMqZwplTOFcKYQziu4rFm4TLpl
0knlTKmcKZUzpXKmVM4r6MOkk9t5BZ36RYdkz5TsmZI9U7JnSvZMyZ4p2fMKW0FjJp1kz5TbmXI7
U25nyu1MuZ0ppjPFdKZUziu47Pzyol6c+18RmylRMyVqpkTNlJeZYQYJv0zhlyn8MmVdXkHrblWF
X6bwyxR+mcIvU/hlCr9M4Zcp/DJlXaZoyxRtmaItr6APt4GiLVO05RW8HwabaMuUZJmSLFNwZQqu
TMGVKbgyBVemnMqUQpkSJFNgZMqHTPmQKR8y5UNeYSmkwlZoBX0YKPIhUz5kioNMcZApDjKFPV7B
VcwPYY8p7DGFPaawxxT2eAWvxUAR5ZiiHFNyY0puvIIX5z5IcmNKbkzJjSmXMeUyplzGlMuYYhhT
DGOKYUwxjPcvuKw7JTGMKWTxCr5z5oeQxRSymEIWU2JiCkhMAYkpIDHlIab4wxR/mOIPU/xhij9M
8Ycp/jDFH6b4wxR/mNIOU7hhCjdM4YYpyzAlFabYwZQymFIGU6hgChVMoYIpVDCFCqZQwRQqmDIE
U4ZgSghMCYEpITAlBKaEwJQQmAIBUyDgFbwfJoyEwBQImAIBUyDgFbwfJky57REZmBICU0JgSghM
CYEpIfAKGjODJASmhMCUEJgSAq/gsu5yJASmhMCUEJgSAlNCYEoITIGAKf8v5f9dwWUNtjLYJASm
hMCUEJgSAlNCYAoETIGAKRAwy3CUEJgCAVMgYIr7S3F/Ke7vVpOhMBVCIRVKYSvgQ5hfCvNL2X0p
uy9l96XsvpTdl7L7ruD9ME+F+aUwvxTml8L8UphfCvNL2X0pmS8l86UgvhTEl4L4ruAqpqUgvhTE
l4L4UhBfCuK7gsaMT8l8KZkvJfOlZL6UzJeS+VIyX0rmu4JO3dOJ6ktRfSmqL0X1pai+FNWXovpS
VF+K6ktRfbmNYEeD0tGgdDQoHQ1KR4PS0aB0NCgdDUpHg9LRoHQ0KB0NSkeD0tGgdDToCjo1tZ0V
SmeF0lmhdFYonRVKZ4Xy26zQX3R+2Gt+vebXa3695tdrfr3m12t+vebXa3695tdrfr3m12t+vebX
a3695tdrfr3m12t+vebXa3695tdrfr3m12t+vebXv7/59bc+Pyxl96XsvpTddwVvnsVImN8VuHnS
/VK63xWmwlIIhVQoha3QCjq1frX1SyBgCgS8gk4taBICU0JgSghMCYEpIfAKOvUDgsjAFBmYIgNT
ZGCKDEyRgSkyMEUGpsjAFBmYIgNTZGCKDEyRgSkyMEUGpsjAFBmYIgNTZGCKDEyRgSkyMEUGXkGn
lk0ZgtmWzbZsShlMKYMpZTClDKaUwZQymFIGU8pgShlMKYMpZTClDKaUwSvo1LIpdjDFDqbYwWzL
phzClEOYcghTDuEVdGrZFEyYgglTMGG2ZVNSYUoqTEmFKakwJRVeQaeWTdGFKbowRRem6MIr6NQa
JdwwZRmmLMMraMySJO0wpR2mtMOUdpjSDq+wFVpBH9aXYzk5Vg/xhyn+MMUf5rFYyENMeYhX0IfF
Qh5iykO8gsasDQISU0BiCkhMAYlX8AZZCgQkpoDEFJCYAhKvoDGTX4TiFTRmrotQTBGKKULxCvow
12UqXkEf5vox16UuptTFlLqYQhZTyGIKWbyCPkxtMYwphjGlLqbUxZS6eAWNGdJiGFMMY0pdTCGL
KWQxhSymkMUUsphCFq+gDyNY6mJKXUypiyl1MaUuptTFlLp4BZ2SuCUxsSQmlsTEkphY0g5L2mHJ
MixZhiWpsOQQlhzCEjt4BVdZrhKuEloPrYc+Qh/hsuGyqVPioiQEloTAkhBYEgJLQuAVfLPLyy+X
LVcpX2P7Gttr2b7o9kW31rd3bLtsewtbH62P1kfro/XR3sLWWGvsaOz4zh2XPS57XPa4rL+3wvxK
VF9J5ivJfCWZryTzlWS+ksx3hVAoBX0Mr2XqwzAQxFeC+EoQXwniu4LGpsamN2jq1MgZS6dLp0un
S6dLp0unBpswvxLmVyN0avRJ9yvpfiXdr6T7lXS/ku5X0v1Kul9J9yvpfiXdr6T7lXS/ku5X0v1K
ul9J9yvpfiXdr6T7lXS/ku5X0v1Kul9J97uCTkunhrS4vxL3dwWdmtry/0r+X8n/K/l/V9CpuS4Q
sAQClkDAEghYAgFLIOAVdGrQSwgsCYElIbAkBJaEwJIQWBICS0JgCQS8Aj4EAl5hKEyFUEiFUtgK
+rB6SAgsCYElIbAkBJaEwCu4rMVCZOAVvHyLhQzBkiFYMgRLhmDJECyRgSUysEQGXkFjlgKRgSUy
sEQGlsjAEhl4BY1ZCoQKllDBEipYQgVLqGAJFaxp8gsVLKGCJVSwhAqWUMESKlhCBa+gMYN+GvRO
NZVTTeVUUznVVE41lVNN5VRTOdVUTjWVU03lVFM51VTfhpj+ovPDXvPrNb9e8+s1v17z6zW/XvPr
Nb9e8+s1v17z6zW/XvPrNb9e8+s1v17z6zW/XvPrNb9e8+s1v17z6zW/XvPrNb/+/c2vv/X5YSVU
sIQKllDBEipYQgVLqGAJFSyhgiVDsGQIlgzBkiFYMgRLhmDJECyRgSUysEQGlsjAkhBYEgJLIGAJ
BCyBgCUQsAQClkDAEghYAgFLIGAJBCyBgFfQmIVE/l8tC4n8vxL3V+L+StxfifsrcX+1LBPLMiEQ
sAQClkDAK+jDMrEsE8uqICHwCvqwKogMLJGBJTLwChqLL8a8Y5aJZZlYlgmxgyV28Ao6tUwsy4Rg
wivo1LohqfAKGvPzwLJuiC4swYS1rAqSCktS4RX0YVUQXViiC6/gDTKTZRnWMpOFG5ZwwxJuWMIN
r6AxQ1r8YYk/LPGHJf6wxB+W+MOSdljSDkvaYa0vIe1uX7hhCTcs4YYl3LBkGZYswyu0gj5MbeGG
V9CYqS3+sMQflvjDEn94BY25/Q9jPMxkaYcl7bDCkBZ/WOIPr+DVGtLyEEse4hV0ampLTKwwxsPU
DlNbyOIVNGZqh5ksZLGELJaQxRKyWEIWS8hiCVksIYslZLGELJaQxSvo1L18GNJiGEsMY4lhLDGM
V9CYIS2GscQwlhjGK+jDkA5DWlBjCWqsMKQFNZagxhLUWIIar6AxMznM5DCCwwgOv04R9ngFlzWC
wwgWB1niIEscZImDLHGQVwiFVCiFrdAKOjWkBUaWwMgr6NSQliB5BZ0a0unmO01toZMldLJkTJaM
ySu4rLkudLKETl7BZc31NNfFUl5Bp+a6nMor6NRcF1xZgiuvoFODXnBlCa68gsbcjYu2LNGWJdqy
RFteQWOmdprakixLkuUVfFFDOg3pNKSFX5bwyytozL22NMyShlnSMK+gU1NbXuYVNGZqC9AsAZpX
0JgxnsZ4GuNpjKcxLoSzhHCWEM4SwllCOEsIZwnhLCGcJYTzCjo16KVyllTOK4RCKmyFVnBZU1uQ
ZwnyLEGeVygFlzWCBXmWIM8S5FmCPK+gMVNbbmfJ7Sy5nSW3s+R2lszNK/iihqMQzhLCWUI4S8Rm
SdQsiZolUbMkapYAzSv4A2M4CtAsAZpX0IfhKECz5GWWvMwqc0w85hW8OLej4jFLPGaJxyxpmCUN
s6RhlvDLEn5Zwi9L+GUJv7yCPgwlaZhX8PINJXmZJS+z5GXWdvcpL7PkZZa8zBKPWeIxr+CyhpK8
zCvow62kAM0SoFkCNEuAZgnQLAGaJUCzBGheQafmmETNkqhZEjVLouYVdOruc5uF2ywUwllCOK+g
U3efUjlLKucVdOruU0xnieksMZ0lprPEdJaYzhLTWWI6S0xnieksMZ0lprPEdJaYzhLTWWI66xum
8y86P+w1v17z6zW/XvPrNb9e8+s1v17z6zW/XvPrNb9e8+s1v17z6zW/XvPrNb9e8+s1v17z6zW/
XvPrNb9e8+s1v17z69/f/Ppbnx9WHptXHptXHptXHptXHptXHptXHopXHopXHopXHopXHopXHopX
noFXnoFXHnlXnnBXnnBXnnBXnnBXHmhXHkZXHkZXHkZXHkZXHkZX28oi/LKEX5bwyxJ+WcIvS/hl
Cb8s4Zcl/LJkXZasyxJtWaItS7RlibYs0ZYl2rJEW5Zoy5JkWZIsS3BlCa4sOZUlp7LkVJacypJT
WXIqS05lyaksOZUlp7LkVJacypJTWXIqS05lyaksOZUllrLEUpZYyhI6WTImS8ZkiZQsCZIlQbIk
SJYEyRIYWfIhSz5kyYcscZAlDrJEOZagxpLLWHIZSwxjSV0sEYolQrEEJJY8xJJ2WNIOSw5hySEs
OYRXWAqhkAqlsBVagTdKUuEVNGY6HNNBUmFJKizBhCWYsAQTXsFl/d2XQ1hiB0vsYIkdLLGDJWXw
Ci7r763IwCv4Gu6z5P+V/L8S91fi/kp23/285Gv4pZ6ovhLVV6L6SlTf/RDmtfhrKqqv5O6V3L2S
u3c/2bmKv7dS9UqIXonIu8KXv/Hni7sfF4fCUgiFVCgFV6FmX8Fl+SXcEvGu4LLDZceXZQ/C1MfU
x9TH9H5MjU2NTX1MfSyXXa6yfNHl1fJrumX33Q/6Xku4Sngt4SrhKuG1pPc0vbjUR+oj9ZFefmos
vdrUWGmsNFYaK42Vxkpj5Q0qjZXGtsa2xrbGtsa2xrbGtnds63TrdOu0ddo6bZ22TlunrdPWWGvs
6OPo4+jj6OPo4+jj6ONLWvKhaA+2PVvK4BWWQiikQilsBYwJJtyCCbdgwi2YcAsmvILGTNwxvvjw
Bpm4kgq3YMItmHALJtyCCbdgwi2YcAsm3IIJt2DCLZhwCybcggm3YMItmHALJtxyCLccwi12cIsd
3GIHt5TBLWVwSxncUga3lMEtZXBLGdxSBreUwS1lcEsZ3FIGt5TBLVRwCxXcQgW3UMEtVHDLENwy
BLcMwS1DcIsM3CIDt8jALTJwiwzcIgO3yMAtMnCLDNwiA7fIwC0ycIsM3CIDt8jALTJwiwzcIgO3
yMAtMnCLDNwiA7e4vy3ub4v7u8JSCIVUKIWt0AoaM6SnIT0NaQmBW0LgFXRqSIsM3BICt4TALSFw
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
lnPbcm6v4CpmoZzblnPbUmxbim1LsW0pti3FtqXYthTblmLbUmxbim1LsW0pti3FtqXYthTblmLb
Umxbiu0VdOrnAbG2V9CpEbyMYEm4LQm3JeG2JNwr4FQ0bovGbdG4LRq3ReO2aNwrlMJWaAWdGuOy
cltWbsvKbVm5LSu3ZeW2rNyWlduycltWbsvKbVm5LSu3ZeW2rNyWlduycltWbsvKbVm5LSv3Cvow
+WXltqzclpV7BY2Z/NJ0W3huC8+9gsZMfuG5V9CHQS88t4XntvDcFp7bwnNbeG4Lz21ZuS0rt2Xl
tmjcK7iKe9xwjysat0XjtmjcK3j5xris3BaN26JxWzRui8Zt0bgtGrdF47Zo3BaN26JxW4ptS7Ft
kbQtkrZF0l4hFFLhyyqtgHWhtS20tmXUtozaFknbaWzJl72CL2ps5fzyol6c+1MJtC2BtiXQXkFj
ppTA2RY42+JkW1hsC4ttYbEtLLaFxbYo2BYF24JeW67rFbxjbiUlv17BVcwPya8t+bUlv7Zc1xbj
2mJcW4xri3FtMa4txrWltrbU1k43imJcW4xri3FtMa5X0IeBIsa1xbi2GNcW0tpCWlvAastTbeGo
LRy1haN2GRfSUltaastCbVmoLfq0BZu2YNMWbHqFUHDZ+WUVL864EGzaUkqv4LWYDmJLWyhpyyBt
GaQtg/QKvqjpIFC0BYq2QNEWKNoCRa/wZVlvofkhYfQKLmtclHEhlPQK+jBQyh2K2NIreIMMFLGl
Lbb0Ci5rfogtbbGlLaW0hZK2UNIWStpCSVsoaQslbaGkLZS0ZZC2DNKWQdoySFsGacsgbRmkLYO0
ZZBeYSu0gj6MLSmlLaW0hZK2UNIrlII+/IAnlLSFkl7ByzfHZJC2DNIWOdoiR1vkaIscbZGjLXK0
vyFH/3Pnw17z6zW/XvPrNb9e8+s1v17z6zW/XvPrNb9e8+s1v17z6zW/XvPrNb9e8+s1v17z6zW/
XvPrNb9e8+s1v17z6zW//gObX3/r88PaIwDbE//aE//aE//aE//aE//aE//aE//aE//aE/+uoA+3
dx7w1x7fdwVXMcC3Ae4Bf+0Bf+15fu15fu15fu3xfe3xfe3xfe3xfe3xfe3xfe3xfe3xfe1pfe1p
fe3hfL0NcE/ru4L3w0T3+L72+L4raMzM9zy/9jy/9jy/3ma+/NCWH9ryQ1t+aIsLbXGhLS60xYW2
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
vR5Br0fQ6xH0egS9XkGn1gZRsFfQqbVBFOwRBXtEwR5RsEcU7BEFe0TBHlGwV9CYtUE27JENe0TB
XkFjloJjKZAee6THHumxR3rsFbxjlgLpsQd6bPzww59LwYcwFKbCUgiFVCiFRhj6GPoY+hj6GPoY
+hj6+HMp+BC+GPOOTZ1OnU6dTo1NjU2NTY1NjU2NLY0tjS2NLW/h0unS6dLp0unS6dJp6DR0GjoN
nYZOQ6eh09Bp6DR0mjpNnaZOU6ep09Rp6jR1mjpNnZZOS6el09Jp6bR0WjotnZZOS6dbp1unW6db
p1unW6dbp1unW6dbp63T1mnrtHXaOm2dtk5bp63T1unR6dHp0enR6dHp0enR6dHp0akFZ1hwhgVn
WHCGBWdYcIYFZ1hwgNZ+CK2gU0vSsCQNS9KwJH3D2v5F54e95tdrfr3m12t+vebXa3695tdrfr3m
12t+vebXa3695tdrfr3m12t+vebXa3695tdrfr3m12t+vebXa3695tdrfv37m19/5/PDPjx686yS
wyo5rJLDKjmsksMqOaySHDP5Ifg2WzaHZXNYNodlc1g2h2VzWDaHZXNYNodlc1g2h2VzWDaHZXNY
Nodlc1g2h2VzWDaHZXNYNodlc1g2h2VzWDaHZXNYNodlc1g2h2VzWDaHZXNYNodlc1g2h2VzWDaH
ZXNYNodlc1glh0VxWAOHNXBYA4c1cFgDhzVwWAOHNXBYA4cVbljQhgVtWNCGBW1Y0EZ/Wdb3xYI2
LGjDgjYsaMOCNixow4I2LGjDgjYsaNOCNq1f0/o1rV/T+jWtX9P6Na1f0/o1rV/T+jWtX9P6Nf1I
NS0W02IxLRbTYjGtDdPaMK0N09owrQ3T2jCtDdPaMOcXY95CS8E0+afJP03+afJPk3+a/NPknyb/
NPmnyT9N/mnyT5N/mvzT5J8m/zT5p8k/Dfpp0E+Dfhr006CfBv006KdBPw36adBPg34a9NOgn34+
mib/9PPRtBRMPx9Na8O0Nkxrw7QUTEvBtBRMS8G0FEw/Dk0/Dk2LxfTj0LR6TKvHtFhMi8W0FExL
wbQUTEvBtBRMS8G0FMzzxYc3yFKw/CizLAXLUrAsBctSsEz+ZfIvk3+Z/MvkXyb/MvmXyb9M/mXy
L5N/mfzLjwnLUrAsBctSsCwFy1KwLAXLUrAsBctSsCwFy48Jy9qw/JiwLBbLYrEsFstisSwWy2Kx
LBbLYrEsFstisSwWy2KxLBbLYrEsFstisSwWy2Kx/JiwrB7L6rGsHsvqsawey+qxrB7L6rGsHsti
sSwWy2KxLBbLYrGsDcvasKwNy9qw/JiwrA3L2rCsDcvasKwNy9qwrA3L2rCsDcvasKwNy08Wy2Kx
LBbLDxLL6rGsHsvqsawey+qxrB7L6rGsHsvqsawe4QeJsJyE5SQsJ2E5CctJ+MkiLCdhOQnLSVhO
wnISlpOwnITlJCwnYTkJy0lYTsJyEpaTsJyE5SQsJ2E5CctJWE7CchKWk7CchOUkLCdhOQmrR1g9
wuoRVo+weoSlICwFYSkIS0FYCsJSEJaCsBSEpSAsBWEpCEtBWArCUhCWgrAUhKUgLAXhB4mwNoS1
IawNYW0Ia0P4QSIsFmGxCItFWCzCDxJh9QiLRVgswmIR1oawNoS1IawNYW0Ia0NYG8LaENaG8Fun
sFiExSIsFmGxCItFWCzCYhEWi7BYhMUiLBZpsUiLRVos0mKRFou0WKTFIv0wklaPtHqk1SOtHmn1
SKtHWj3S6pFWj7R6pNUjrR5p9UirR1o90uqRVo+0eqTVI60eafVIq0daPdLqkVaPtHqkH0bScpKW
k7ScpOUkLSfph5H0w8g3DPRfc37Ya3695tdrfr3m12t+vebXa3695tdrfr3m12t+vebXa3695tdr
fr3m12t+vebXa3695tdrfr3m12t+vebXa3695td/QPPr73x+2IdHb55FMS2KaVFMi2JaFNOimBbF
tCimRTEtimlRTItiWhTTopgWxbQopkUxLYppUUyLYloU0xqY1sC0BqYlLy15aclLPx+lFS6tcLm/
LOv9sOSlJS8teWnJS0teWvLSkpeWvLTkpSUvLXlpyUtLXlry0oKWFrS0oJX1q6xfZf0q61dZv8py
VT98WZbLL6tTWZ3K6lQWo7IYlcWoLEZlMSqLUVmMymJUFqOyGJXFqCxGZTEqi1FZaspSU5aastSU
paasLLW+LOv9sJCUhaT8VqsM6TKky5AuQ7oM6TKky5AuQ7oM6TKCywguE7dM3DJgy4AtA7b8kFEG
bPkRoozPMj7LTwxlnpYfIcqALQO2DNgyYMs8LfO0zNMyT8s8LfO0zNMyT8s8LfO0zNMyPstPDOUn
hjJgy4CtLwHrJ4Zt4m4Td5u428TdJu72E8M2grefGLaZvM3kbSZvPw9sI3gbwdsI3kbwNnG3ibtN
3G3ibgN2G7DbgN0G7Ha3v93tbyN4G8HbCN5G8DaCt7v9bQRvN/fbTN5m8jaTt5m83UlvQ3ob0tuQ
3ob0NqS3Ib0N6W1Ib0N6u5Pe7qS3Mb6N8e1Oepvr21zf7qS3Qb8N+u3GeRv026Df7qS3O+ltKdhu
rbe1YVsbtrVhWxu2tWFbG7a1Ybu13paCbfJvk3+b/Lu/rOL9MOi3Qb8N+u3GeZv82+TfJv82+bfJ
v03+NujbXG9zvc31NtfbXO8fvizLDWp30m2MtzHexngb422MtzvpNtfbXG9zvc31NtfbXG9zvc31
NtfbXG9zvc31NtfbXG9zvc31dq/dBn0b9G3Qt0HfBn0b9G3Qt0Hf5nqb622MtzHexngb421qt6nd
pnab2m1qt6ndhnQb0u1uvE3tNrXb1G5Tu03tNrXb1G5Tu03tNrXb1G5Tu03tNrXbHX27o29zvc31
dovfBn0b9G3Qt1v8Nvnb5P8DavxL/+Of8fv/Msf58w9bBfjFD+Fz/V/zHz/98Kf/5XPdX+Mfv+w/
/S+HF/k9wH79+R+/fHPyyz9++s3JLz/946ef/qBbjj/YhL+sf/zy48cffv71Hz//9nd/vv+3f/uf
fv3Hr798/mH89ofzj1/mvy4JMTd4DOfjb3ze+19/+Mc/15/+l/Sv/u7ptyU/rMS/3smPv+I1/zlx
PoRPRz//+I9fz29/+OUfv/52PT/98o9//vyblfOPn377w8/5+Yf6x0/f/tX5xz/n9/vy42937N6L
X9fnH/K3P/zwj5++Kfc+/2bvpx+/35df9z9+XN//zrdL+PYzMP/4duyu8M3Or/WPf+Yff2X98cn8
15++v9z19FP9pozvJu7//8f4fnk//fFWzPqDr3ffyF/ju+Gff3v/fv3xHz/+/PnzML/fgZ9/e71f
fv7Tz+r54+nXa+/Xn75f5TfD98W+Xe6v8/tb+fP4xz/39x+M70v98P2F7636pb5fzI/j+0/RL7/9
nXvLf/7x+9v77fbf/+mfn+/Dt/t3l/j529X88x+/5Odl/fJp+cfvDn/8lx++xYMQ/yp8XPiPn+9U
f39/vyn3kn7en2/rz9+v85/n867/y29N/bGX++MndHz/1fj18/34+Nc//nFHg8/xI5qntu//+eGv
O/jpdS1e1+J1LV7X4nUtXtfidS1e1+J1LV7X4nUtXtfidS1e1+J1LV7X4nUtXtfidS1e1+J1LV7X
4nUtXtfCrsXf+cSe6XF684c/TjS9N/dff9b/ZYb8/hD8Wp+/Dj9//0H5Z39/F7/9Ev3+u/M9Lf84
i/nG2L/+iI/zeyj/npL3Z/On33467s/Ir/NTqc9fzvqXXy8m/WfA8LjC75Xk/pb9+i+/FcHM2Qz2
7DP+OEX2pum3u/H77+znX/l9p/fHL/H6+Dn89o++J+z8/j99+0f5x/dVN/y/5dnvheAjvfbnL/oP
32/qt5/ub/96/zHXdX97fvz2A7v/lDr9x2D5x+8V4fDr95X+nBLrX77c/Xgbz/ff029X+3vN+Z4o
bPjnl1NJPXZx/Quw56OU/vCnAvbLD99/J+/b/dP4l3/0x2jU9fHP/S//i4fgjj8Grn8Pnu//i4dW
zz/ONPs9mr7/L380hP4IpM/K+ZF5/3K/4o+vIW+if/u7P//2E/qvQXSj85cf/lQpP97pf/45o8bn
O3JfZ/w5te6a/afUuj9LP32G6b9sKtaeHJq9GaFc/cdU3e8B9/tu4Ptf+WN39+ufStHqP04h/nMW
rvPH148//frxf/8IxQFp4Dflhz8rAVdjJEihUczWX+HLP4EDODL4+DRqfZmq+/IlBp9KxgLw8iEs
hVBIhS8vuhVa4SD8+WPshzAUdDp1OnU6dTp1OnU6dTp1unS6dLp0unS6dLp0unS6dLp0unQaOg2d
hk5Dp6HT0OmXH6nQaeg0dJo6TZ2mTlOnqdPUaeo0dZo6TZ2WTkunpdPSaem0dFo6LZ2WTkunW6db
p1unW6dbp1unW6dbp1unW6et09Zp67R12jptnbZOW6et09bp0enR6dHp0enR6dHp0enR6dHpwSmQ
mOGnjA9hKiyFUEiFUtgKraDTodOhU2tUWKPCGhXWqLBGhTUqrFFhjQprVFijwhoV1qiwRoU1KqxR
YY0Ka1RYo8IaFdaosEaFNSqsUWGNCmtUWKPCGhXWqLBGufO5gk6tUWGNCmtUWKPCGhXWqLBGhTUq
rFFhjQprVFijwhoV1qiwRoU1KqxRYY0Ka1RYo8IaFdaosEaFNSqsUWGNCmtUWKPCGhXWqLBGhTUq
rFFhjQprVFijwhoV1qiwRoU1KqxRYY0Ka1RYo8IaFdaosEaFNSqsUWGNCmtUWKPCGhXWqLBGhTUq
rFFpjUprVFqj0hqV1qi0RqU1Kq1RaY1Ka1Rao9IaldaotEalNSqtUWmNSmtUWqPSGpXWqLRGpTUq
rVFpjUprVFqj0hqV1qi0RqU1Kq1RaY1Ka1Rao9IaldaotEalNSqtUWmNSmtUWqPSGpXWqLRGpTUq
rVFpjUprVFqj0hqV1qi0RqU1Kq1RaY1Ka1Rao9IaldaotEalNSqtUWmNSmtUWqPSGpXWqLRGpTUq
rVFpjUprVFqj0hqV1qi0RqU1Kq1RaY1Ka1Rao9IaldaotEalNSqtUWmNSmtUWqPSGpXWqLRGpTUq
rVFpjUprVFqj0hpV1qiyRpU1qqxRZY2q32rUX3OOy2uJvJbIa4m8lshribyWyGuJvJbIa4m8lshr
ibyWyGuJvJbIa4m8lshribyWyGuJvJbIa4m8lshribyWyH9qS+TvfLrHh8fS9FZoBW+eZbMsm2XZ
LMtmWTbLslmWzbJslmWzLJtl2SzLZlk2y7JZls2ybJZlsyybZdksy2ZZNsuyWZbNsmyWZbMsm2XZ
LMtmWTbLslmWzbJslmWzLJtl2SzLZlk2y7JZls2ybJZlsyybZdksy2ZZNsuyWZbNsmyWZbMsm2XZ
LMtmWTbLslmWzbJslmWzLJtl2SzLZlk2y7JZls2ybJZlsyybZdksy2ZZNsuyWZbNsmyWZbMsm2XZ
LMtmWTbLslmWzbJslmWzLJtl2XSycZVlsyybZdksy2ZZNsuyuS2b27K5LZvbsrktm9uPdtsata1R
2xq1rVHbGrWtUdsata1R2xq1rVHbGrWtUdsata1R2xq1rVHbGrWtUdsata1R2xq1rVHbGrWtUdsa
ta1R2xq1rVHbGrWtUdsata1R2xq1rVHbGrWtUdsata1R2xq1rVHbGrWtUdsata1R2xq1rVHbGrWt
Udsata1R2xq1rVHbGrWtUdsata1R2xq1rVHbGrWtUdsata1R2xq1rVHbGrWtUdsata1R2xq1rVHb
GrWtUdsata1R2xq1rVHbGrWtUdsata1R2xq1rVHbGrWtUdsata1R2xq1rVHbGrWtUdsata1R2xq1
rVFtjWprVFuj2hrV1qi2RrU1qq1RbY1qa1Rbo9oa1daotka1NaqtUW2NamtUW6PaGtXWqLZGtTWq
rVFtjWprVFuj2hrV1qi2RrU1qq1RPl+z2hrV1qi2RrU1qq1RbY1qa1Rbo9oa1daotka1NaqtUV+e
DGprVFuj2hrV1qi2RrU1qq1RbY1qa1Rbo9oa1daotka1NaqtUW2NamtUW6PaGtXWqLZGtTWqrVFt
jWprVFuj2hrV1qi2RrU1qq1RbY1qa1Rbo9oa1daotka1NaqtUW2NamtUW6PaGtXWqLZGtTWqrVFt
jWprVFuj2hrV1qi2Rh1r1LFGHWvUsUYda9SxRh1r1LFGHWvUsUYda9SxRh1r1LFGHWvUsUYda9Sx
Rh1r1LFGHWvUsUYda9SxRh1r1LFGHWvUsUYda9SxRh1r1LFGHWvUsUYda9SxRh1r1LFGHWvUsUYd
a9SxRh1r1LFGHWvUsUYda9SxRh1r1LFGHWvUsUYda9SxRh1r1LFGHWvUsUYda9SxRh1r1LFGHWvU
sUYda9SxRh1r1LFGHWvUsUYda9SxRh1r1LFGHWvUsUYda9SxRh1r1LFGHWvUsUYda9SxRh1r1LFG
HWvUsUYda9SxRh1r1LFGHWvUsUYda9SxRh1r1LFGHWvUoUbFD9SoKwyFqbAUQuE/f2roNb9e8+s1
v17z6zW/XvPrNb9e8+s1v17z6zW/XvPrNb9e8+s1v17z6zW/XvPrNb9e8+s1v17z6zW/XvPrNb9e
8+s/sPn1dz5r6MNjaXortII3b3jzhjdvePOGN2948yibV9Dp0OnQ6dDp1OnU6dTp1OnU6dTp1OnU
6dTp1OnS6dLp0unS6dLp0unS6dLp0unSaeg0dBo6DZ2GTkOnodPQaeg0dJo6TZ2mTlOnqdPUaeo0
dZo6TZ2WTkunpdPSaem0dFo6LZ2WTkunW6dbp1unW6dbp1unW6dbp1unW6cC/X5onbZOW6et09ap
IMEfWqet09bp0enR6dGpJ9/9cHR6dHp0enR6dGrZHJbNYdkcls1h2RyWzcFHuysIZ7RGDWvUsEYN
a9SwRg1r1LBGDWvUsEYNa9SwRg1r1LBGDWvUsEYNa9SwRg1r1LBGDWvUsEYNa9SwRg1r1LBGDWvU
sEYNa9SwRo31Bc25v7A6FXRqjRrWqGGNGtaoYY0a1qhhjRrWqGGNGtaoYY0a1qhhjRrWqGGNGtao
YY0a1qhhjRrWqGGNGtaoYY0a1qhhjRrWqGGNGtaoYY0a1qhhjRrWqGGNGtaoYY0a1qhhjRrWqGGN
GtaoYY0a1qhhjRrWqGGNGtao8QV2a40a1qhhjRrWqGGNGtaoYY0a1qhhjRrWqGGNGtaoYY2a1qhp
jZrWqGmNmtaoaY2a1qhpjZrWqGmNmtaoaY2a1qhpjZrWqGmNmtaoaY2a1qhpjZrWqGmNmtaoaY2a
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
O1H0nSj6ThR9J4q+E0XfiaLvRNF3oug7UfSdKPpOFH0nir4TRd+Jou9E0Xei6DtR9J0o+k4UfSeK
vhNF34mi70TRd6LoO1H0nSj6ThR9J4q+E0XfiaLvRNF3oug7UfSdKPpOFH0nir4TRd+Jou9E0Xei
6DtR9J0o+k4UfSeKvhNF34mi70TRd6LoO1H0nSj6ThR9J4q+E0XfiaLvRNF3oug7UfSdKPpOFH0n
ir4TRd+Jou9E0Xei6DtR9J0o+k4UfSeKvhNF3w1F/x8SrVxRwitKeEUJryjhFSW8ooRXlPCKEl5R
witKeEUJryjhFSW8ooRXlPCKEl5RwitKeEUJfzBRwv/kjMP/L9/x9Qcf//mvH3310f/2/p//lP/1
5/kr/rXf/3vimv/XjuX/9f/+5ed//ej/+Jd++dFXn//9yw8++up/e6z8+L0vX+33q//PJ1/93/Nb
/n992//Etf4/8dv/L/7qLz/62+dffv3v/u3/56/hu3/+64cfffM//P7/6Rviy3/3z/m3X/0469/j
PfA/92zFdfnBHuHTxf6+n6T/Ab5ovf3XdnsU6+vt5/bvv/blXwvL7/31uNvCr/T6poXHhp9HnQBq
AeABmH6PmfSY4Y6BEwxGIFqPKPoZWFvv/7VNLexaGFo49Huz1vinfAv/qG12/5H9+7H9+4n9+6n9
+5n9sxN4/4X9+6X9e8P+2cm7v2n/3rJ/v7Z/v7F/v7V/v7N/b9s/uwj3d+zfH/xIs35f1s/K+lnZ
D/tdf/2qwfmvhffs3/v27wP796H9+8j+/dH+/cn+fWz//mz/PrF/f7F/n9q/z+zfX+3f5/bvb/bv
C/v3pf376mw5UF9JnyN1jrQ5UuZIlyNVjjQ5UuRIjyM1jrQ4UuJIhyMVjjQ4UuBIfyP1jbQ3Ut5I
dyPVjTQ3UtxIbyO1jbQ2UtpIZyOVjTQ2UthIXyN1jbQ1UtZIVyNVjTQ1UtRITyM1jbQ0UtJIRyMV
jTQ0UtBIPyP1jLQzUs5INyPVjDQzUsxILyO1jLQyUspIJyOVjDQyUsh46hfXm5V9N9U8a9ZC0ULV
Qnut0rIS+Db17q4F3/F/bV4M/te02mv5qUp/f/2zOKKGHPJ2Jmavy39tXQurFuKtXQtDC1MLhy/s
L1q4aWE5vwk5jA0pjA0ZjA0JjA35iw3piw3Ziw3Jiw25i+1MXXx1pg5dhCNpQVfj0IU6mha6FuLj
67lfTBVomCnQzrHSdVnV2tC3Du1x6stmHMfQgm6AqU9NHeKMt7TxVEtg6v4Z2mbEt2vjoS8d8QsX
Ldy1H52p2eM3kbtI7CKpi4QukrlI5CKJiwQukrdI3CJpi4QtkrVI1CJJiwQtkrNIzCIpi4QskrFI
xCIJiwQskq9IvCLpioQrkq1ItCLJigQrEqNIThoxaaSkEZJGRhoRaSSkEZBGPhrxaGSOETlG4hiB
Y+SNETdG2hhhY2SNPaHG1uWf9u8b+/edl6RVBXFVQVy9IP67/fva/n1l/6xpuvyrofqquLIS67HQ
fMEe48fC4QtWCjzWaJvjpre0jZUvj7ey1ty1MPVW1ZrYJr590ZoXLWx6K2lNbKP9HNp46CumDvWI
XxEfX/VWHJgqo6oKa9Wa9a6FRQs6u6uqudXLTeueLNbHWKyPsVgfY7E+xmJ9jMX6GIv1MRbrYyzW
c1isH7FYr2KxPsZiPY7F+h+L9UaWf9i/b1XHq4zeVHxvKog3lf7R69tU1m/RRFBZv6kc31SvbEm/
tGlBzYBVN90aH1fFsEVl+KKF21M7ih2Vh0GeKxpWYEDuoXPmioUruFMMtz20sFix8MDu3ClGpB5o
K674b1vwaxN/XOaPy9yi8LcU7rRyi8p9NH5L46E3HnrnRzo/gjby8oJG7nL2Gl7dBsnvB38dd+vy
9AGSSBeSSJeTRLrerLd9syLtZs/MzZ6gmxV+N3tYbv6wWJl5syfv5s+TPxL2qN7+qDa07udVLd5d
ZcKu58JjKK8WihaqFvTI7Hpk9tjP888hfnEhfnEhfnEhfnEhfnEhfnEhfnEhfnEhfnEhfnEhfnEh
fnEhfnEhfnEhfnEhfnEhfnEhfnEhfnEhfnEhfnEhfnEhfnEhfnEhfnEhfnEhfnEhfnEhfnEhfnEh
fnEhfnEhfnEhfnEhfnEhfnEhfnEhfnEhfnEhfnEhfnEhfnEhfnEhfnEhfnEhfnEhfnEhfnEhfnEh
fnEhfnEhfnEhfnEhfnEhfnEhfnEhfnEhfnEhfnEhfnEhfnEhfnEhfnEhfnEhfnEhfnEhfnEhfnEh
fnEhfnEhfnEhfnEhfnEhfnEhfnEhfnEhfnEhfnEhfnEhfnEhfnEhfnEhfnEhB3EhB3EhB3EhB3Eh
5XAh5XAh5XAh5XAxyuH3rnK4xkKusZBrLOQaC7nGQq6xkGss5BoLucZCrrGQayzkGgu5xkKusZBr
LOQaC7nGQq6xkGss5BoLucZCrrGQayzkGgv5HsdCfigZI8HpWiieWiieWiieWiieWiieWiieWiie
WiieWiieWiieWiieWiieWiieWiieWiieWiieWiieWiieWiieWiieWiieWiieWiieWiieWiieWiie
WiieWiieWiieWiieWiieWiieWiieWiieWiieWiieWiieWiieWiieWiieWiieWiieWiieWiieWiie
WiieWiieWiieWiieWiieWiieWiieWiieWiieWiieWiieWiieWiieWiieWiieWiieWiieWiieWiie
WiieWiieWiieWiieWiieWiieWiieWiieWiieWiieWiieWiieWiieWiieWiieWiieWiieWuiIWuiI
Wk5H1Hq3cM7d+jd369/cLTR0t9DQ3Xo79+88+F81blo1blo1blo1UuyRj7sCHneFQF4tJC1oyNgH
Ju4amLgrQnBXt+mubtNdoYK7Iih3RVDuiqC8Wjg0GK0Bi03Hs+l4Nh3PpuPZYghbx7PpeDYdz6bj
2dan83mSjV4dQgTUNUphQ9KLDcssNoa92Bj2YmPYiw1eLzZcvfxage+I0Xtf743zO+9siNwJxbuT
cnUnVOJO3sGdCf+v2ss3rMDD9qq9zC3QBU0cu00crEscbXvVtMUWNzwor5q2iStw6NRnJ/afEvst
iQV64qOUCIBMBNolMkYS8RevKpqMFWjcZZ7kzOHfzF+bMTDwagVuh0yZfKYcO7Ojm2nxyvRaZYIX
M4GHmfi+TFxdJjksk5WUSf7JJLvkDmzNqwN9/ccVzpAonBJROKZcbjinBaNNt8K+caGjq5AHWjmy
Xm/4LZUavErtWy2o3ytBpZUAt8qT3Ohbb6zgGoG6jQjRRoZm+284suW/MUX/GzorHtNXFYPH9JK/
/lcJv3cr1pMVoMnKymRlZfqtbXL4DqyW2fsb9u8XWr1oweoBn/qTrVzN+l6fCJT+65j+xnzRgn2w
KWyXfq89JvuqX+l1ttcWuC9edu+bV0H/+tXLy0s0QNb0jj5p1Y5NQtr7h8+bR7Ng73GShn8u+xs/
0uv9+ZPngE9S/eqzm7J9IB/6iYsW7vqtVjUOjQWk9XnP0Qfbu53HNHUEsTC0y6Rd/uv0vKqXrbIe
6V9TBl7VuHZex+7n6bGwPH3bOSFiTXGxu3ZqZy79yI7Gppeld7XZqgW/n97Ua51Bb1NkjW83BV6b
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
xDbODPgYzBtqX49Yk7RNLKg1vKk17CO1FuZ/3Ct21W8/02u1Px2Gq1HuXcPNu0WD9udsHztfL2qF
HGpqeEfyLpv9XUMH+cxU9aBojtxWEeEPjXW6W+b+C712Nck/dC/GsFQU/1V3lhphh4aivHy0xLxh
OXVDtfBQyFyddismhpUOwx7YYYXEuKsZdigG4F11K2LGXTeYJ34uZ0k81GLaFQkYConvGm3ZFe4Y
KsiHAulDb+3Kd9vz9063ucI3V/jmCt9c4ZsrfHOFb67wzRW+ucI3V/jmCt9c4ZsrfHOFb67wzRW+
ucI3/zPhmx8QF2dbzkZizNce8btijWZqxgM4FCnZ9QCOOGNxMqP5qbOxq/EwovpRaGPqJpuKjMyi
uy0qQ830nHqi14ieqFZcY5t4/PVdPsMxK3EqB4RPDbCsrJgcUL2T6De9lWq5XiYAHK4EM3v4cKPr
4dMzLVnMBOPjsPwKE/YON6+aVHCY0nCYaXAcP/GnxyNsbogz4+8wSeKr35JVL7rm7/57vbZe5t3i
OfdfabVXZSZTvFuU4f623rWS6W4hgfubWi2rpOeB3H+tN6y4ur+jo/Gy0iSL9ze0mZ1z47xtuk6P
7dUIVvX9vl57ZW3kKqO+PlZH5a4Yjs9l1SM64zaV9HgzettmANnNeXLDp4L+Qx9Ss9xveye/6T6e
QeHTdOKp6nCzOdJTc4i3Q/NKd8UgNu1jU9TCCpb95hbKb7U6Sn/7DTYLe2p283acc1U3hUS8JXh8
p32o0bKrvbErtLErhrFpwQ9x+Kf22xt6rfCMz9cd54JzbG+/1BuKYmwKiewKcJyHEE0eRVc8oeT2
c71Ws2nX7ryrfvuV/fuFVmtS7hY/y8/735+a/LWEJfLFbOMv5hd/+ZNXjq7rfjEr98uHWu1Evk/0
2ptm5q98+VhVq+f9mLv85X2tPrQQQRY/CHOdv3yq1c2bbK6evut4ljN04605Nf0e29zU0AuasUiC
3tq02ayPOnbVQtdC1ULRgqcjmV1e4R5FerP051n686L0jCLJZ/G69LEQmMFNXcu7FgIqqDUj1iTN
Jw455654T8wwjvnE7uI0ObnZnY9u3WWlO66qIHaF5oaxGMeLN3qU/Om9PaMrDmPyDSP0jbv/s/L5
/gu1F6wSsRbfsBbfsBJ2ePtQqaFDhdW2nBXeFJhvj9oxar6ohGKN8hemar6o8LaIxUetZl9qxPbN
dJnDMO6bOTSH63CNg7/pI/P+nspiFcpebq7nbP7pxfq7KhQVfPYf5GTMovpAh7ouwnnvUYxG6Rll
YVPZFoWc4r4qaiwgejN9/M0u/+039s+Dq+amv2mi/BYF26GHKAKhQ7e/O2O/8/ve45tVBlnXxFbB
O5vu8a5xMDVq1va1bjmlKu+KmXhnxzIEV8mWh+UIrvIrrFIor6K0r/KpDssTXOVeXmUFWKUtGHch
mj1iYPXzsGp5lSFgWLU+rIkwrJJew0Mgx8CwtsEqceq4/0bvK7Kp7OZIg1ZL2VoMw1ob4/623o2+
oDp80ViOqMdUmyvG2Ga0N5X+MzTGFi30oQ5fNE6jATvV8JyxQ0VPooU+1Vyd8RU6sKmW/lRIdCpI
Gk3aqQ7o2ViObeJL463YTxQH6okeeowPNVcjPfrQUN4RLdD4lMI4Mb44o+zwkIqys4+kTTW+eKhl
q7HDM19qqmG8xXerN72py3coyHTEDtUIP9TA3uKIRaDeNGC5q6W9xW/waNDHHi1ymPnhzV1vbn+k
d73rbrBrA5cOZQ6P40Nt5h1TD0G9bf+87f0HbeQhLUt4N/rp8IwhU4gMz1K8f6ny0IvKT6z0swbf
/Wt/18cF79/otbfErRF7t5zku7V079bCu6tQjj60og7WQL3/Td+s5v6hSPahtnmMXXr8+/6BXnuc
4gu9jraz99O/0msF0w7VAB7ivhsA+W5I5rtlcN4tpftuQ273z/QRj959q9feRTCr/N3CZPe/6F21
2v0xMaDHZqmb25CGQllkdgGGWu1+nE5gjhLDssGnnrSp53wzWMXm2eEqGTbDh8woBQxxPPWAznj0
PUEr+2F8pnfjR3g/JyQZKiGcBhylnKY1bBol2o7IY1OEcz1HBkTnUAgpwp0a5tmOMx9uVzhzqDcx
Yk3WQlTH8aVF+4mvSFoTb8XH1Rcat++dCHMFK65gxRWsuIIVV7DiClZcwYorWHEFK65gxRWsuIIV
V7DiClZcwYorWPE/Clb8gFgoM4BKMR9P6TUz+pyaOvPqig71RRw4d3tXr23K2O0d+/dnrfZp6u85
yyjHjnxamvUhbn/S6qkN1d1yK+ftI3891Zc5j8n7YZq2dvuD/ftY71uT/faBXi/6DnWbnHR4e19v
qJvkzLXbH/VavbThXRTztr58rSaUdRxe/qnXAiX59PEXRy7aFKSXL/Suptn5pNeXz/Tap97bXPaX
v2u1te5fvrR/rrv21Y+OjabknWuSFrI21rT7TTPyN1F2N/WmNs3cPTtaahpudy2of7VpQqB/RYqJ
XzFBP6b0PzUoDy1oG58KnMV2ypLeZi8JHgtVC6s6YIvW6EutSjmqulZDQMoR6typNTHLv3tj1Zuv
Xf0p77J1+zqTiK6aSLXuMU/wc7XVopWjFsKh8NoRz5vfdZ/ozr7p8m46k3Ehuk5O/Ezv++3CXtmV
Xn+itrS1MpuZTI0sOtRPGYo6DeueDMXEVslvh/o24x7u+Kd2i721afrb4Q0Aq9sNj7gZO2sc3jox
mbyzzwzZuW0xG9fmut6/U12g2sEzroS22o4zCWeqqJ4qWedNZ1IxlKkuzYybXPixTRNZrRV1ODsr
e1PgcTOsusqHTmpMFLSravzVVWZNi6MsJfjZ48X7ue/r5MaptLaqdSQ3JQYOET2HpIhD0NUtUhu9
Q+0pEj5D0qbLDgc3Owja5wTbLPitqcY+1OH0PY9Tr32oIvNaWXkgx4tR2l6EkD1vUU36PRc0+3eL
mIgebQeDxdxEA9WuMnAOa+6t0jUPazUNa5WtxxkOP9QdOGKNeiWH+g4x7fGIbo6SSY4424o7HPG8
HmpcR3PbOgjesTv8rvYbVuZHb4r71diUpFFjYdeCgqaHULD+1YHf00+Y+lGznDke3oQ9zqS0GU2O
TQuqOqfX0X/R6+xW8tXrj+98vnfVVF1HmMZlvSn2tikSsKm83qTxXOOi3rQQk2annpfow3pA6U0/
ud7L1WTX1YtLI9AO46+uMsKuDk6NEZcX9bK9B3r/o14rB2KoF+39z6rr7IMlClQMReWGzaefMrRv
46nZqebQ1KzoqQjsWSEdOkSrbraYx26liT/ohlIc9491eB5G+JNeWzFQNeHXO+aeKRHcdB/n0C1q
Ybm4cz1VygItm1UF26aQlTdaZX/dtrgz1RA/1Ab2fLObJdDcjJN/8wQhg+HevtC9FLeQ4rpx7+wv
uncUygyefwSHfDDsFtjQf+rHeGKwSbS3OM1V2UFda5oWuk69J+YZf3szpqzteN8M82+7XZvFczcj
1zZxFJuFuzZjNLZv/K4ekc536JuG1ujOH8r9G8pjGMr92yI/cNdbSnHw27bJc7CG50DRa6VtrpFN
rfzM1ajo6/ixVvv71pW37M5hEf5hEf7VQOvDAv2rIZKHxfeHsjyHpXeOzbe1Os1LWRsSGJZjOiwH
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
kXRRSReVa/oi1/RFrumLXNMXu6Yvdk1f7Jq+2DV9sWv64nHivkzdl5n7UrgvXVSunYxdOxkHLirX
bMau2Yxdsxm7ZjN2zWbsms04cFGFLqrQRRW6qFyTG7smN3ZNbuya3Ng1ubFrcmN3fhC784PYnR/E
rn2OXfscu/Y5du1z7Nrn2LXPsTs/iN35Qexa79i13rFrvWPXeseu9Y5d6x271jt2rXfsWu/Ytd6x
a71j13rHrvWOXesdu9Y7dq137Frv2LXesRujxm6MGru2PXZte+za9ti17bFr22PXtseubY9d2x67
tj12bXvs2vbYte2xa9tj17bHrm2PXdseu7Y9dm177Nr22LXtsWvbY9e2x65tj13bHru2PXZte+za
9ti17bFr22PXtseubY9d2x67tj12bXvs2vbYte2xa9tj17bHrm2PXdueuLY9cW174tr2xLXtiWvb
E9e2J65tT1zbnri2PXFte+La9sS17Ylr2xPXtieubU9c2564tj1xbXvi2vbEte2Ja9sT17Ynrm1P
XNueuLY9cW174tr2xLXtiWvbE9e2J65tT1zbnri2PXFte+La9sS17Ylr2xPXtieubU9c2564tj1x
bXvi2vbEte2Ja9sT17Ynrm1PXNueuLY9cW174tr2xLXtiWvbE9e2J65tT1zbnri2PXFte+La9sS1
7Ylr2xPXtieubU9c2564tj1xbXvi2vbEte2Ja9sT17Ynrm1PXNueuLY9cW174tr2xLXtiWvbk7Vt
P9EGNp9N9dlUn0312VSfTfXZVJ9N9dlUn0312VSfTfXZVJ9N9dlUn0312VSfTfXZVJ9N9dnUC8+m
nnWn70tJ1+D3gOhKyvU3ietvEtffJK6/SVx/k7j+JnH9TeL6m8T1N4nrbxLX3ySuv0lcf5O4/iZx
/U3i+pvE9TeJ628S198krr9JXH+Tuv4mdf1N6vqb1PU3qetvUtffpK6/SV1/k7r+JnX9Ter6m9T1
N6nrb1LX36Suv0ldf5O6/iZ1/U3q+pvU9Tep629S19+krr9JXX+Tuv4mdf1N6vqb1PU3qetvUtff
pK6/SV1/k7r+JnX9Ter6m9T1N6nrb1LX36Suv0ldf5O6/iZ1/U3q+pvU9Tep629S19+krr9JXX+T
uv4mdf1N6vqb1PU3qetvUtffpK6/SV1/k7r+JnX9Ter6m9T1N6nrb1LX36Suv0ldf5O6/iZ1/U3q
+pvU9Tep629S19+krr9JXX+Tuv4mdf1N6vqb1PU3qetvUncukbq2PXVte+ra9tS17alr21PXtqeu
bU9d2566tj11bXvq2vbUte2pa9tT17anrm1PXdueurY9dW176tr21LXtqWvbU9e2Z65tz1zbnrm2
PXNte+ba9sy17Zlr2zPXtmeubc9c2565tj1zjXnmGvPMNeaZa8wz15hnrjHPXGOeucY8c6135lrv
zLXemWu9M9d6Z671zlzrnbkWOHNNbuaa3Mw1uVnEbuW2yDW5mWtyM9fkZq7JzVyTm7kmN3NNbuaa
3Mw1uZlrcjPX5Gauyc1ck5u5JjdzTW7mmtzMNbmZa3Iz1+RmrsnNXJObuSY3c01u5prczDW5mWty
M9fkZq7JzVyTm7kmN3NNbuaa3Mw1uZlrcjPX5Gauyc1ck5u5JjdzTW7mmtzMNbmZa3Iz1+RmrsnN
XJObuSY3c01u5prczDW5mWtyM9fkZq7JzVyTm7kmN3NNbuaa3Mw1uZlrcjPX5Gauyc1ckytckytc
kytckytckytckytckytckytckytckytckytckyvccFq4Fli4Fli4Fli4Fli4Fli4Fli4Fli4Fli4
4bRwDbJwDbJwDbJwDbJwDbJwDbJwDbJww2nhhtPCDadFFGw/fgWz7Uyf7Rh89ocuQtfOC9fOC9fO
C9fOC9fOC9fOC9fOC9fOi87O0zsuEte2C9e2C9e2C9e2C9e2C9e2C9e2C9e2C9e2C9e2C9e2C9e2
C9e2C9e2C9e2C9e2C9e2C9e2C9e2C1c3BOti17YL17YL17YL17YL17YL17YL17YL17YL17YL17YL
17YL17YL17YLFk67hlG4tl24tl0I9mUXlWvbhWvbhWvbhWvbBdl2500XjGvSBUPumnThmnTpmnTp
mnRJJj0PPuTxxvux+7XEfZm6LzP3pXBfunhcYy5dYy5dYy5dayZdwyJdwyJdwyJdwyJdwyJdwyJd
wyLdUSZd5Zeu8suMfdm9s6v80lV+6Sq/dJVfusovXeWXrvJLV/mlq/zSVX7pBjbSVX7pKr90lV+6
yi9d5Zeu8ktX+aWr/NINbKQb2Eh3FEh3FEh3FEh3FEh3FARjdxg0rwP2OmSvI/Y6Zq8T9jplrzP2
WrDXDF/A8AUMX8DwBQxfwPAFDF/A8AUMX8DwBQxfyPCFDF/I8IUMX8jwhQxPyPCEDA/boTxmW5TH
bI/ymG1SHq8zh6fdY+3T/T7d79P9Pt3v0/0+3e/T/T7d79P9Pt3v0/0+3e/T/T7d79P9Pt3v0/0+
3e/T/T7d79P9Pt3v0/09pPvPWgTw5mEYq/aY+qfFonnMj9H6Sbdf69tfl+c/hXELZNsetvAK/wx6
imkKI4wZM8aYMaOMGTPOmDEjjQnYSA7YyA3YyA3YyA3YyA3YyA3YyA3YyA3YyA3YyA3YyA3YyA3Y
yA3YyA3YyA3YyA3YyA3YyA3YyA3YyA1Cho+N5ICN5ICNZE4txLmFOLkQZxfi9EKcX4gTDHGGIU4x
xDmGOMkQZxniNEOcZ4gTDXGmIU41xLmGONkQZxvidEOcb4gTDnHGIU45xDmHOOkQZx3itEOcd4gT
DwUpw5cyfCnDlzJ8KcOXMnwpw5cyfCnDlzJ8GcOXMXwZw5cxfBnDlzF8GcOXMXwZw5cxfILhEwyf
YPgEwycYPsHwCYZPMHyC4RMMn2T4JMMnGT7J8EmGTzJ8kuGTDJ9k+FjkF7LIL2SRX8giv5BFfiHz
FyGL/ELmP0LmP0LmP0LmP0LmP0LmP0LmP0LmP0LmP0LmP0LmP0LmP0LmP0LmP0LmP0LmP0LmP0Lm
P0LmP0LmP0LmP0LmP0LmP0LmP0LmP0LmP0LmP0LmP0LmP0LmP0LmP0LmP0LmP0LmP0LmP0LmP0Lm
P0LmP0LmP0LmP0LmP0LmP0LmP0LmP0LmP0LmP0LmP0LmP0LmP0LmPxhzWsCo0wLGnRYw8rSAsacF
jD4tYPxpASNQCxiDWsAo1ALGoRYwErWAsagFjEYtYDxqQcj8R8j8R8j8ByNYCxjDWsAo1gLGsRYw
kjXB7Klg9nSLz1lOnGWbmL0VzN4KZm8Fs7diw96y/9uPWXqbrQUwcymYuRTMXApmHgUzj4KZPxHy
LD9P5PNMPk/W82w9T9dHDG/EFwqiV8XDkunMmghmLQSzFoJZC8GshWDWQjBrIZi1EMw6CGYdBLMO
glkHwayDYNZBMOsgmHUQzDoIZh0Esw6CWQfBrINg1kEw6yCYdRDMOghmHQSzDoJZB8Gsg2DWQTDr
IJh1EMw6CGYdBLcOjINRMBJGwVgYBaNhFIyHUTAiRsGYGAWjYhQbXIy7/t8ub8VsuSthr1P2mi1N
MXPC2BAFo0NsXofsdcReMzzMvDCKRME4EgUjSRQRW1VkvIiCESMKxowoGDVi85q1l68PMnPEuBQF
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
LZmblsxNs4O0mtcMX8QPJWP4WFpIsmmKZG5cMjfOTu4S7Oguwc7uEuzwLsFO7xLs+C7Bzu9qXjN8
zM1L5uYlc/OSuXnJ3Lxkbl4yNy+Zm5fMzUvm5iVz85KlhSRz+5K5fcncvmRunx1o1rxm+Jjblyk/
gI7hY25fMrcv2bSLnaAm2BFqgp2hJtghaoKdoibYMWqCnaMm2EFqgh2dJtjZaYIdnibY6WmCHZ8m
2Plpgh2gJtgJaoIdoSbYGWpC8hME+RGC/AxBfoggc/vsJDUh+YGC/ERBfqTgT2cK8kMFx925gSrG
RbL5jYj9gp0oyI8U5GcK8kMF+amC7FhBdoCaZAeoSXaAmmQHqEl2gJpkB6hJdoCaZAeoSXaAmmQH
qEl2gJpkB6hJdoCaZAeoSXaAWvOa4QsZvpDhCxm+kOFjRy2yA9UkO1BNjiOGL2L4IoYvYvgiho+d
7chYOps4keFjxzuO2fmOY3bA45id8DiOGb6Y4YsZvpjhixm+hOFLGL6E4UsYvoSfuMnwJQxfwvAl
DF/C8KUMX8rwsSMvxynDlzJ8KT8SlOFLGb6U4UsZPnbG5pgdsjlmp2yO2TGbY3bO5pgdtDnO+Jml
DB87a3PMDtscs9M2x+y4zTE7b3PMDtwcsxM3x+zIzTE7c3Ms+KGqDB87dnPMzt0cs4M3x+zkzTE7
enPMzt4cs8M3x+z0zTE7fnMs+amv/NhXdu4rO4g2cCeKzeuIvY7Z64S9TtnrjL0W7DXD99O5tAwf
8x+MtVcy1l7JWHslY+2VjLVXMtZeyVh7JWPtlYy1VzLWXslYeyVj7ZWMtVcy1l7JWHslY+2VjLVX
MtZeyVh7JWPtlYy1VzLWXslYeyVj7ZWMtVcy1l7JWHslY+2VjLVXMtZeyVh7JWPtlYy1VzLWXslY
eyVj7ZWMtVcy1l7JWHslY+2VjLVXMtZeyVh7JWPtlYy1VzLWXslYeyVj7ZWMtVcy1l7JWHslY+2V
jLVXMtZeyVh7JWPtlYy1VzLWXslYeyVj7ZWMtVcy1l7JWHslY+2VjLVXMtZeyVh7JWPtlYy1VzLW
XslYeyVj7ZWMtVcy1l7JWHslY+2VjLVXMtZeyVh7JWPtlYy1VzIWSclYJCVjkZSMRVIyFknJWCQl
Y5GUjEVSMtZeyVh7JWPtlYy1VzLWXslYeyWjoZSMhlIyGkrJaCglo6GUjLVXMlpKyXjcJONxk4zH
TUb8qHRmfxmvmWS8ZpLxmknGayYZr5lkvGaS8ZpJxmsmGa+ZZLxmkvGaScZrJhmvmYyYPYqYPWIM
Z5IxnDWvGT5mjxjjmWSMZ5IxnknGeCYZ45nsGM9y8aEocaFxUdmLcoyLABchLiJcxLhIcJHiIsOF
wIXERY4LwCgLXABPCTwl8Gjg0cCjgUcDjwYeDTw67VrOtsE3rwP2OmSvI/Y6Zq8T9jplrzP2WrDX
bk+xbfKSbZOXbJu8ZNvkJdsmL9k2ecm2yTevGT6mSWzbvIyZJrFt9JJtg5dsG7xk2+Al2wYv2Tb4
5jW7P/NMbJu8TJglSZglSVj/J6z/E9b/Cet/tqVYsi3Fkm0plmxLsWRbiiXbUiwT1v8J6/9k3f/n
OfzEL1T4hQq/UOEXKvxChV+o8AsVfqHCL1T4hQq/UOEXKvxChV+o8AsVfqHCL1T4hQq/UOEXKvxC
hV+o8AsVfqFi6IeyNBiZzJhOJkwnE6aTCdPJhOlkwnSS8cVIxhcjGV+MZHwxkvHFSMYXIxlfjGR8
MZLxxUjGFyMZX4xkfDGS8cXIhOs0i7YYX4xkfDGS8cVIxhcjGV+MZHwxkvHFNK8ZPhZtJSzaSli0
lbBoK2HRVsKirYRFWymLtlIWbTE+G8n4bCTjs5GMz0YyPhvJ+Gwk47ORjM9GMj4byfhsJOOzkYzP
RjI+G8n4bCTjs5GMz0Yy/hrJ+Gsk46+RjL9GMv4ayfhrJOOvkYy/RjL+Gsn4ayTjr5GMv0Yy/hrJ
+Gkk44uRjC9GMr4YyfhiJOOLkYwvRjK+GMn4YiTjg5GMD0YyvhfJ+F6a1+z+zOYzvhfJ+F4k43OR
jM9FMj4XyfhcJONnkYyfRTI+Fsn4WCTjU5GMT0UyPhXJ+FQk41ORjE9FMj4VyfhUJONTkYxPRTI+
Fcn4VCTjU5GMT0UyPhXJ+FQk41ORjE9FMj4VyfhUJONTkYxPpXkds9cJe52y1xl7Ldhrho/Zp4zZ
p4zZJ8bPIhk/S/Oa4WP2ifG1SMbX0rxm+Ji9ypi9YnwukvG5SMbnIhmfi2R8LpLxuUjG5yIZn4vM
mL1i/C6S8btIxu/SvGbPZ9lCxvciGd+LZHwvzWv2fGb/Mmb/Mmb/Mmb/Mmb/GH+MzFjMzPhkJOOT
kYxPRjI+Gcn4ZJrXDA+zj4xPRjI+Gcn4ZCTjk2les+ez+JPxzUjGNyMZ34xkfDOS8c1IxjcjGd+M
ZHwzkvHNSMY3IxnfjGR8M5LxzUjGNyMZ34xkfDOS8c1IxjcjGd+MZHwzzWuGj9l3xj8jGf+MZPwz
kvHPSMY3Ixm/jGT8MpLxy0jGLyMZv4wUzH4LZr8Z/4xk/DPN65i9TtjrlL3O2GvBXjN8zH4LZr8Z
f41k/DWS8ddIxl8jGX+NZPw1kvHXSMZfIxl/jWT8NZLx10jGXyMZP41kfDPNa4aX2UvB7CXjk5GM
T0YyPhnJ+GQk45ORjE9GMj4ZyfhkJOOTkYxPRjI+Gcn4ZCTjk5GMT0YyPhnJ+GQk45NpXjN8LB5l
/DKS8ctIxi8jGb+MZPwykvHLSMYvIxm/jGT8MpLxyzSvGT5mbxnfjGR8M5LxzUjGNyMZ34xkfDOS
8c1IxjcjGd+MZHwzkvHNSMY3IxnfjGR8M5LxzUjGNyMZ34xkfDOS8c1IxjcjGd+MZHwzkvHNSMY3
IxnfjGR8M5LxzUjGNyMZ34xkfDOS8c1IxjcjGd+MZHwzkvHNSMY3IxnfjGR8M5LxzUjGNyMZ34xk
fDOS8c1Iyewx2/8r2f5fyfb/Srb/V7L9v5Lt/5Vs/69k+38l2/8r2f5fyfb/Srb/V7L9v5Lt/5Vs
/69k+38l2/8r2f5fyfb/Srb/V7L9v5Lt/5Vs/69k+38l2/8r2f5fyfb/Srb/V7L9v5Lt/5Vs/69k
+38l2/8r2f5fyfb/Srb/V7L9v5Lt/5Vs/69k+38l2/8r2f5fyfb/Srb/V7L9v5Lt/5Vs/69k+38l
2/8r2f5fyfb/Srb/V7L9v5Lt/5Vs/69k+38l2/8r2f5fyfb/Srb/V7L9v5Lt/5Vs/2/zmuFj/oPt
B5ZsP7Bk+4GDMJQ/vRHxN2L+RuK+EblGsXnDtXLtGwF/I+RvRPyNmL/BHxv89NiMvyH4G5K9EXKk
IUcacqQhRxpypCFHGnKkIUcacqRrw3eek1v8KoxfhfGrMH4Vxq/C+FUYvwrjV2H8KoxfhfGrMH4V
xq/C+FUYvwrjV2H8KoxfhfGrMH4Vxq/C+FUYvwrjV2GufRVmkCUzoABrQEZcehGXXsSlF3HpRVx6
EZdexKUXcelFXHoR7+eYI4050pgjjTnSmCONOdKYI4050pgjjTnShCNNONKEIY25gGIuoJgLKOYC
irmAYi6gmAso5gKKuYBiLqCYCyjmAoq5gBKuDglvbcJbm0Q/3YO1NuGtTXhrE97ahLc24a1NeGsT
3tqEtzb5qbVcHRKuDglXh4SrA6v+a9/gSBOONOFIE4404UgTjjTlSFOONOVIU4405UhTjjTlSFOO
NOVIU44040gzjjTjSDOONONIM44040gzjjTjSDOOVHCkgiPlDp2tALdvcKSCIxUcqeBIBUcqOFLJ
kUqOlEcaKX9Kyp/Srebo5v/SXuTroumy+qDWZdSl/lAUeGddfF0F9suV/KDWPy+U/ZVWthy7LD6o
9YWu2k/bL8cf1Lriuwo/5KF9likht3DYYkv7RsLfSPkbGX9D8DeYJDMePGU8eMp48JTx4CnjwVPG
g6eMB08ZD54yHjxlPHjKePCU8eAp48FTxoOnjAdPGQ+eMh48ZTx4ynjwxFZhmjd4oJLxQCXjgUrG
A5WMByoZ90wZ90wZ90wZ90wZ90wZ90wZ90wZ90wZ90wZ90wZ90wZ90wZ90wZ90wZ90wZ90wZ90wZ
90wZ90wZ90wZ90wZ90wZ90wZ90wZ90wZ90wZ90wZ90wZ90wZ90wZ90wZ90wZ90wZ90wZ90wZ90wZ
90wZ90wZ90wZ90wZ90wZ90wZ90wZ90wZ90wZ90wZ90wZ90wZ90wZ90wZ90wZ90wZ9xkZ9xkZ90wZ
90wZ90wZ90wZnwNnfA6c8TkwW0hq3+BIJUcqGVLBzZbgZqs7xHgbh6gz+50y+6DWbCRVarlQKmF9
XKE/VGtWEx23rCPtRf6hWJOQVOpDtWY10Y1DNPeRH4r1lxu3aDxjlVnelRZPaZ2v8bnNfarI4jH0
Js3PDdTmV4bnROsPuQGWWMKTMoU3jyzLSgNDFdabm6c3/63WUMtx+5Rw/ehi7c2btlTmYvwhN8FA
CWmUFljj342jh1D5sBR8WAo+LAUfloIPS8GHpeDDUvBhKfiwFHxYCj4sBR+Wgg9LwYel4MNS8GEp
+LAUfFgKPiwFH5aCD0vBh6Xgw1LwYSn4sBR8WAo+LAUflpKHFzL86RvpuxlSpQXWPKha37BBriL7
KzuSpOVPaoPfGE8v7Niyz8KQamCUCKINudErMXjzTp7hERHkHNrBatq10xBv2ptvjmPJh4vkw0Xy
4SL5cJF8uPyUMJV8uEg+XCQfLpIPF8mHi+TDRfLhIvlwkXy4SD5cJB8ukg8X+dNw4V5Mci8muRdj
vNZBNHaX4No3Av5GyN+I+BsxfyPhb6T8jYy/IfgbHGnAkQYcacCRBhxpwJEGHGnAkQYcacCRBhxp
yJGGHGnIkYYcaciRhhxpyJGGHGnIkYYcacSRRhxpxJFGHGnEkUYcacSRRhxpxJFGHGnMkcYcacyR
xhxpzJHGHGnMkcYcacyRxhzpeqZ1nnM+fJLfJ/l9kt8n+X2S3yf5fZLfJ/l9kt8n+X2S3yf5fZLf
J/l9kt8n+X2S3yf5fZLfJ/l9kt8n+X2S/+Ak/1k3/D9OfjzUs9VoUf/jqXn30+T+fv6bfRPvmfWC
j8unm49/X/azJLEzDCO0pSM1GcfRVnd65r3RZLVaTG+eVvVoOXmoR/PF9Mt0Nrq5Hd3OZ6vJdFYv
lh/XjzyiYOvbr/PRL+a9P5v37HrM50UD4nyifgPY4IX/FudYO/S4TUi4TUi4TUi4TUi4TUi4TUi4
TUi4TUi4TUi59Uo50pQjTTnSlCNNOdKUI0050pQjTTnSjCPNONKMI8040owjzTjSjCPNONKMI804
UsGRCo5UcKSCIxUcqeBIBUcqOFLBkQqOVHKkkiOVHKnkSCVHKjlSyZFKjlRypDwaDHg0GPBoMODR
YMCjwYBHgwGPBgMeDQY8Ggx4NBjwaDDg0WDAo8GAR4MBjwYDHg0GPBoMeDQY8Ggw4NFgwKPBgEeD
AY8GAx4NBjwaDHg0GPBoMODRYMCjwYBHgwGPBgMeDQY8Ggx4NBjwaDDg0WDAo8GAR4MBjwYDHg0G
PBoMeDQY8Ggw4NFgwKPBgEeDAY8GAx4NBjwaDHg0GPBokJ1l277BkXIfFXAfFXAfFXAfFXAfFXAf
FXAfFXAfFXAfFXAfFXAfFXAfFXAfFXAfFXAfFXAfFXAfFXAfFXAfFXAfFXAfFXAfFXAfFXAfFXAf
FXAfFXAfFXAfFXAfFXAfFXAfFXAfFXB3EnB3EnB3EvK+DXnfhrxvQ963Ie+5kPdcyDsq5B0V8n4J
eTeEvBtCLtOQyzTkMg25TEMu05DLNOR+P+R+P+R+P+R+P+R+P+QdFfKOCn/qKO73edF+xIv2I160
37zBkXK/H3K/H3K/H3G/H3G/H3G/H3G/H3G/H3G/z+kFmjcy/obgb3Ckrt9PE6YOaRK5A7l9I+Vv
ZPwNwd+Q7I2fnuIqXftGyN+I+Bsxf4MjFRyp4EgFRyo4UsmRSo5UcqSSI5UcqeRIJUcqOVLJkUqG
NB6P+RsBfyPkb0T8jZi/kfA3Uv5Gxt8Q/A2OlCtdHHCkAUcacKQBRxpwpAFHGnCkAUcacKQhRxpy
pCFHGnKkIUcacqQhRxpypCFHGnKkEUcacaQRRxpxpBFHGnGkEUcacaQRR0rBZh7jeOn4Qx7gIsRF
hAv6ToKLFBcZLgQuJC5yXOBZeYGLEhcaF5W9MLug2gvgUcCjgEcBjwIeBTwKeBTwKOBRwKOARwGP
Ah6zWAQ5Zby/Mt5f5O3b36IJBZpQoAkFmlCgCUW8eRtue7tTmduvopEFGlmgkQUaWaCRZrmKbsN7
Xmz0fEEXEEMBMRTolgJtMutquA23jTHZxvaraHWJVpvlNfvdhNvAhNvAhNvAhNuvhFunhFunhFun
hFunhFunhFunhFunZG2dznPegM/9+dyfz/353J/P/fncn8/9+dyfz/353J/P/fncn8/9+dyfz/35
3J/P/fncn8/99Z37O+um10W9nD8tbuvlp/bNr5PFrF4ue9vb+tLTtt5FyV6Pblfzxej2abFopPBj
tBbE7df69tfd9ki23/q0rB8ms9X0dvlpebuYPq4ayY+CT6uv9ci8HtX3dfvsTw/zu6f7+tPdj9nk
YXo7mj48zherT8vVov3F7fzhcdo8YjqfjW4my3r0tLgfTWf301mD7H6yXE5Nz/Qj3zM05Hf/69/m
s3pPRVvU7SNPq270zDMr3UlG3rBET0L/2didQXNf7aKddGj4zTmadTB/lqNJ0/g/3E9u6vvfL+vV
f04f6vnT6qiq1ExUfnca2L4T739ff5vcX1T3tYB9x93/vvnth3BcPc1uW4zN5e181mB/ap3URXXo
aw3xHX3/+0X9+b6+XdV3jWgMruai/tbco/lre3J5UT2+VYsuqusf6rvp5HbyuHpaNBBWzWTtYfnp
T+2bf1m/GE3u7kaTp7vpfLRaTG5/3QgY+wnDDgC0bWDfk3K8qBDNZdNtX77Ui7XifJtOmv/+V742
GHf1RQ2APdv47qzhFqDMDy9/ar3Rjm0H4EFVrEOtrr2M4lo/hz+D/dkYIlcwhd+2NX4GP9wZ/BD6
0E/gL7Pf/Pz9ffSzn76/1573M9mhzmR30o6DpjPzm783Q2WA8ywDbPATrZ4U4mJX5I+2Au8nq/11
zAXOTnfL7R1keeqHm/pugBZxjes6DeIppo2HWb5hzBNPkOE+XRbm6B1ytrTLebrlZBP0o3fUgGbk
h/mVZzfgPT5MR2v5Ns/qfR31EES9LqQOItNwdM0dYmrhPNZnCMmDo3fvZWQLduvwgW+kP2AjyNlm
55e6pr/HGv6QtOdkA2yn9NtQ6weGKa09aoemy/louhgFsexxxB2O6wrrTYZnm32i4FQWbDA2/vCR
6TMlg8mUnMSz7mDQ/zad3dXfj3U3q4SLY4+d0/zkwOii53G6o6emjr0MuBuacw120KcmT20rt1n+
uZmYrMFpM5LbIPGZyKvIRPa/qcknIoeUiLzYWca+3AovLKRsYZ7n09mq6bO2N5ef6u+rerZsJPhp
encPbL81Ecv8t50M81/XP9nBNO+E4jpShLu1+ZrSfcdu+dvZoHUmaD67/zGA8tHnsGxduLa15F7r
8T/Xvy2mrZX9nbUhv3ucrL5u9uZf65s/lv/6y2SxNJH/ar75aXPL5oHhp/vpDa7fnqh2P98A2+9W
ul1xnng2u0tnnmAoPTOonZ46D4Tn+/BUluWl4wDGv285+ix1Xgg2vKA9/91cWFI+AQa/AKR8YXtY
vHnHkskFlvKu+UKV4ULYL1u6vxBMbgGYAENQ+cn2rHn7rMJeVBIX+Mic8N7+qsKXA1zgzoo+ynFR
2kfQs+yvZNcuS7Un8Su58asQ94nxDl0k+CjFO3RBohN4R+AdiXdwYbkKBdolNxqo8I7CO5AzdZx9
Voj7hHhWiF+FaFeIdoV4egJ2wQTsggnYBRPLLtheJLhIcZHhQuCCbpjjQuGiwEWJC42Lyl4YZsD2
AnhK4CmBpwSeEnhK4CmBpwQejfto3EfjPhr30biPxn007qPpPmiXRrs02qXRLo12abRLo10V2lUB
TwU8FfBUwFMBTwU8FfDY0VSguwuocQEVLaDPBVS0gIoW0MwCulFAAQroRgFtKTBSCmhLAWUroJkF
lK0AwWYBgs0CBJsFTEoBgs0CBJsFCDYLEGwWINgsQLBZgGCzAMFmAYLNAtamwHgvMIQL6HMBRSqg
SAUUqYAiFVCkAopUQH+aC+ApgacEnhJ4SuApgacEHg08GjA0YGjA0IChAUMDhoZ8NPBo4NHAo4FH
A48GHg08Gngq4KlILGTnc1xoXFQwp2NcBLDhES7gL6yOBdCxEL0cwEoEsBIBxCth3iWsenMBW1eR
U4ARrmDrNN0ZnsiqVtb5FA0zqOF3yAKsnw7HUMFGVzDNFYxsRU6oxAUGtsJ4VhjPCndXGM8K41lh
PCuMZ4XxrGBfFOxLjhvmuGGOG+a4YY4b5rhhjhvmuCFZdupX8tYa3UBytFoVQKtCDIkQXRVibIQY
EiFUJwTmEJjDzqeSouQUWOCiogs8S+HLCo5cQxcrqGBB98E71mAF6K8A/RWgKwOoVwCzG8DshujB
AO4twNgIYPgCjJ8AQghgXwIIKoDjDOA4AwzIAAMygI4F0PsAJj6AHoYbd6YLBB8auqqhqxrhkYY+
a2ivhvZqaK8VpkBzBKQq0GQB+QjIR6CbBLpJAoYEDAkYEjAkYEjAkIAhAUMChgQMCRgSMCRgSMCQ
HYwCNyxwwwI3LHHDEjcsccMSNyxxwxI3LBG3lWgg2akSDSzRwBINLNHAEnhK4CmBRwOPBh4NPBp4
NPBokjNC3gI9WKAHC/RgiR4s0YOkLSV6sEQPlghVS9y5hEaV0KgSGlVCo0poVAmNKoGnBJ4SeDTw
aODRpL3Ao4FHA49taQpLkiL4SGFSUgzGFLYlhTtJ4WBSuK4U1ibFqEwxrFJ4tRTGM0U4m8ICpLAJ
KSxtCrOTYnSncAEpbG+KACWFW0oRBKcw+Cmi4RTRcApbl8JipwhrUvR7in5P4SZSKEAKBUjhblK4
gBQqkUIlUribFCFUCiVJoSQpjHAKx5FCbVKoTYrgLEXglUKRUihSCq+Xwj6nUK0UqpUitkuhYyl0
LEUkl0LZUihbCmVLoWwplC2FsqVQthTKlsL5ht1kVcPAUqxQwCkUZI3h/gpMogq4SAo+CrLzZPnh
BxW+rMjDwl9oRCoKj1Bw0CW5G0Q85FxKeLQSPsVKLISKhp0jK+H1yGVbtQmhUSH0J+zcTYGn03cU
HqEwbyzwKwWxKPoyPQJfLvEdglrSRxR0ks+l7AClG+A0KTeh0EAKMUl0ir4MgSs8QkF0Cv2lyL/T
R5RBME/PASwHsBzAchiZHFYih0nJYRNygM8xunMMqxzjIoetay7K0x4F6XM/Pvfjcz8+9+NzPz73
43M/Pvfjcz8+9+NzPz7343M/Pvfjcz8+9+NzP6fM/ZyzKOXCNg5vU++w/5ao4PfrDtHomcpeWKuf
w0XkUJm8UxkFvVDQCwW9UNALBb1Q0AsFvVDQCwW9sHqaY5DlGGQ5BmIO/5bDVOQwZjkMQw7DkMME
5rBzOexcDquWw87lsHw57FyOkZ3DQuSwGTnMSQ5zksP55HA1OVxNDseSw7HkcCM53EgO05XDVOQw
JznMSQ5zksNe5rCgOUx7DmOfwzbnsNY5LHEO25wjHskR6uYIdXOEujlC3RzGI0eomyPUzRHq5gh1
c4S6OULdHKFujlBXweQomBwFk6NgchRMjoLJUTA5CiZHweQomBwFk6NgchSiKgVVV1B1BVVXUHUF
VVdQdQVVV1B1BVVXUHUFVVdQdQVVV1B1BVVXUHUFVVdQdQVVV1B1BVVXUHUFVVdQdQVVV1B1BVVX
UHUFVVdQdQVVV1B1BVVXUHUFVVdQdQVVV1B1BVVXUHUFVVdQdQVVV1B1BVVXUHUFVVdQdQVVV1B1
BVVXUHUFVVdQdQVVV1B1BVVXUHUFVVdQdQVVV1B1BVVXUHUFVVdQdQVVV1B1BVVXnapXwFMBT5X6
46P58dH7nQW930nP+53j/MopzZtHgpfAUwJPCTwl8JTAUwJPSQdBA08JPCXwlMCjgUcDjwYeDTwa
eDTwaODRwKOBRwOPBh4NPBp4NPBo4NHAUwFPBTwV8FTAUwFPBTw0CirgqYCnAp4KeCrgqYCnAp4K
qQiFxINC4kEh8aCQeFBIPCgkQhQSIQqJEEXLVUiEKCRCFBIhCokQWg1USITQElsBPAXwFMBTAE9B
mR7gKYCnAJ4CeArgKYCnoNkGkhMKOQmFnIRCTkIhJ6GQk1DIkSjkSBRyJAo5EoUciUKORCFHopAj
UciR0KJkgRxJATwF8BTAUwBPATwFZYOApwCeAngoq10ATycEbTPk9ssZvpzhyxm+nGG8Z2hghgZm
GIMZxmDW3dlKLIPEMkgsgwXIYAEyWIAMFiCDBchg+TNY/gyWP4PBz2DDM9jwDDY8gw3PYMMz2PAM
CpBBATIoQAYFyOBBMniQDB4kgwfJ0LkZOjeDJclgSTJYkgyWJINFymCRMlikDLqRQTcy6EYG3cig
Gxl0I4NuZNCNDLqRQTcyWOwMFjuDxc5gsTNY7AwWO4Ptzbq5O0HVJHBqKW6oMfWnlip8WZPEgFlB
qhrP0qRjdB+0tLsgga9/rrEi1jzaqHGFdFeJYd482rSiua15p71Y36eC+Wq02hjhCuvCjXE2DWz0
3DRQY22rEamxxiUWQBvhGN2osJbSjCBjnyusljayNYpdYclCowtKbIFo7yztd4wNbwaX0Y0KYXMF
I9x82bS0fbq5IYLA9j7rLzcyMR5EY9WowFSohH/X9A4WJRv5mNFUIORrhq1tRWqdlMZidIPQKK3G
0rNGbl4jEaKxtaNCzK+zjY5bw2jU0oyd9oZrPBoRWgk7VmGJoG27EQvSMBqZ1OYd4xArTJyb35rh
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
HiSRwePJPYZ3ocG7PODHOPP2DFQP+HE7wI7n+C6fAnMGcwazlWKGno9r6EWhF8VEy+2F4S2ALwxv
AXMBc2F4C1ALUAtQC1ALMIrfxfAWgFWAVYa3gqeCp4KngqeCp4KngqeCp4KngqeCp4KngqeCp4Gn
gaeBp4GngaeBp4GngaeBp4GngafFm8+HcjpMTofJ6TA5HSanw+R0mJwOk9NhcjpMTofJ6TA5HSan
w+R0mJwOk9Nh8o47TN6FQkx/VSbozRYlcjmi/z0C/2xhptdXkulz60UdD7u94+nNsw9e41i+7ppQ
b2gS/m7trX8wlm+PUl4F4M1fXtw8fn77gtfOQV8WzZsfty8KHJyx02fs9Bk7fZFcXCSlF1226KKl
XyLpvMhOX2SnL7LTF9npi+z0RXb6Ijt9kZ2+yE5fZKcvv0QD9ofLYF9ksC8y2BcZ7IsM9kUG+yKP
2SLzfJGjbJFVvmjj7yIbfJENvsgGX2SDL7LBF9ngi9xii0zvRW6xRfb1Ivt6kX29yL5eZF8v8n0t
z+hFHxvZ14vs60X29SL7epF9vci+XmRfL7KvF+zrBft6wb5esK8X7OsF+3rBvl6wrxfs6wX7esGL
tXSz+hZsN0MW7OsF+3rBvl6wrxfcWQubeuMwXgpQN6BuGFzFR8C8gXnD4Cr0awP8BvgN8Bvgu8W9
YHEv3eLen+NXAN6GduGlyZgZsQT4BNQEnsQDk2/3XUBNQE1ATUBNQE1ATQxvAmEwvMHwBngCPAGe
AE+AJ8AT4AnwBHgCPAGeAE+AJ8CTwZPBk8GTwZPBk8GTwZPBk8GTwZPBk8GTwZPBgwwwGx0kWsBj
YjNpmX5MAJ5uz3IBTwFPAU8BTwFPAU8BTwFPBU8FTwVPBU8FTwVPBU8FTwVPBU8FTwVPBU8FTwVP
BU8DTwNPA08DTwNPA08DTwNPA08DTwNPYx3jMWwAawDryqPLmi5p+vK9C5cuWrpgWaU8VimPVcpj
lfJYpTxWKY9VymOV8lilPFYpjxXl0Wd1lfJYpTxWKY9VymOV8lh/wy0dq7TIKi2y4uTpRLFKnaxS
J+tDzvaeSa+s0iur9MoqvbJKr6zSK+sfuBOHZCetVZpmlaZZpWlWaZpVmmaVplmlaVY5cFYpmFUK
ZpWCWaVgVimYVQpmlYJZpWBWFMyKgllRMCsKZkXBrCiYFQWzomBWFMyKgllRMCt+mxW9sqJXVvTK
il5Z0SsrXpoVLbLipVlRHivJNIOPfQFDrvhtVgq+Byy6ok5W1MlKDYuAe1f0yopeWfHkrKiTlU8p
LrNMfeX9OXiuK5jtdq+ATyjFyqgmn/IRepEY5wT4hFO7ojirr3F38L9Xeprol13h1RdjB1SfosvJ
Dfoe9D3ou/3d9jg3X0PfG+q2cXFjcoOBCgYhmNzmU4yGnasNR1ljxILxCcan+S4IMhiEoKeNoQt6
GvQ004tMTzNEkgFvh1JjwBsDblee5WZjnBuklQGfgZrBk+lO9gP9HBk6+SC/TL96SY6MNePaHJTb
2Ci3sV9DLwrPKdxVfIopKMxOAbN06v6ckYavWTniizeO0FPkrkWspSl6d7VwhM3zwQ7md3N3DwjN
B6dUemFm7JsjMlbaevBgBZi5qfo5vhionWUyRp5LDqwH71QGvHnA6WADc2PAzQ6m+cZg9m+WGc7N
fDrNfLvKfLvKB1ea+BtzEYxP+F1MSjCD5kGTcaODzeCBEQAze5oywy/1K/TALnm7Gd+F7eYn9sN+
DMPcLdUugbfvc1hjvcl62GQ9bD/ibL9aZsQmM2KTGbHJjNhkRmwyI7Zf9jszw9lZf/sVfzOG/Vts
xgjeZGpsMjU2mRqbTI1N69Ttt9wCEXb232RzbP/FYQ3nJptjk82xPeSsyHOTzbHJ5thkc2yyOTbZ
HJtsju0P3MlcdJGy/ZG/gwbj3S3xTebIJnNkkzmyyRzZZI5sf+KWPheySzbZJduLN58N6XRqnE6N
06lxOjVOp8bp1DidGqdT43RqnE6N06lxOjVOp8bp1DidGqdT42twarzNnWJPH3z2yc3jF/ee3fzp
09uj333w8cdP/twPcuzxk3sPXrx49ui9T1/c3Hv+4JObe0+ePfrw0eN77z289/DJ4xcPHj2+efb8
O3snnr987evx0rwWqN/6t589eXzzlTI77RPb2Ui25Sbbcvtzn/a+MNtkZG4yMjcZmRtG5oaRuWFk
bhiZG0bmhpG5YWRuGJlbNzL31/mBiUbQyDQKjUoDOVng3wL/FmBs8HwBz8a7NsBvvguoG5KzgHnz
7b7Gp+jO5u4gJ/vCZaMybEY/btioGUW5YaNu2Kjbty0xi0/1WcP3kVlyZLSqy3dSo3M/5buYpsT4
JKRW17yukulSmK536UqVLlFJqcmNUpObS026xiRVJTeqSm6uKpnR8i4vSe3IzbUjXTTS1SIpDLnf
7rtAGCAMBrz6gUANoAZDV/0uMKNkMBddbNDZ353inTzu+3OAmt1AmVY3GNXsBuAz4JHkOFNIv71t
hylYfReY4ejDFKw80PxVAG9OqbzLLGNOMTuYCwovNWEXjzP0XIFafASSMBkXHwG8SdR0aNrwLFdj
hi+q7wK8TcHm59ALj3yFPZtfQXc8GpWRd3fciwrmivxpMFqDJGwcNoA1aL4xvI1+HXf5Yl8D+AbN
225sdKcxKTb8jiN0pzEXxzU+RQcbHezuns7kncU7g9taPZ7YTzAn/TE2YnmarLuCeEo/4O+BhoYh
/ZC/NRpJbqMkey/J3kuy95LsvSR7L8neSwp4SvIWJZlwSSZckgmXZMIlmXBJTqIkgy3pU0OSnZbe
A42mJOmbQ5KdlmSnJdlpSXZakp2WHnHnTEMzlvQVIv2Rw5qtJKssySpLjzkr0kwyz5LMsyRvUZJV
lmSVJXmL0qfc2edPqj3JbZSk0dNnXNRnV6o9odoTqj2h2hOqPXXVvt+caRROzTQWTlWOrDQ2Golr
GkeCRqbhJ/s5XNx9TImAp8J6qbBeSnzNKCiYhLIvaJqEHyqh4xM6PqHjEzo+oeMLi6uCfkq4nxJf
MxIaPaHRE16nRFBUQasl3E/JDMJqP5kzzBKmxoO4AqjJjZVTgE8GzxRAI6YDFHk65tQzmIyZiQvu
CsCH54LneOQ94MfQFRq8woPpYXG/3AuDP2AALBtGcITBDGg1Gw8dPN4Oafk5vt13ZXqRmYsM5gzm
DOYM5gzmzIBnhi4zUBk8GTwZPAU8BTwFPAU8BTwFPAU8BTwFPAU8BTwFPAU8BTw9MUdheVyOvhcQ
VljPo1GBWuHBDK16fCrgKw+svh3w1RdDz9kN6NmjWn2E7lSIxONcfcpH6Gl1T33EpOVTdLnR5eIG
XW5uME2NofPENbrc6HKjy40uN+arMV+N7hQ/0M+hXw1SLwhqUwLKGa3c/Tedj80jBeldGOpOMJ1n
gsHo5NMZJ/TZJ1DtnaZCHpyQIg8p8pAiDynykCKPn3OnkfQXSrXHLzlsAP3NUvYhZR9S9iFlH1L2
IWUfUvYhZR9S9iFlH3LKhHR8SMeHdHxIx4d0fEjHh3wxIY0e+toTUuQhRR5yr4T0d0h/h/R3POu9
6EZvSJGHFHloaR7S3yH9HdLfoRV5SG0HajtQ24HaDtR2sCIPlHSwIg90c6Cbg4V4oJIDlRyo5EAl
Byo5UMnBIjtYZAeffQJ1G6jbQN0G6jZQt8G3ndtGeuPZnE4nyekkOZ0kp5PkdJKcTpLTSXI6SU4n
yekkOZ0kp5PkdJKcTpLTSXI6Sd5FJ8m7WEns8r2Xs4fOq+4sg7ZBx9XdZ/Q2Rs+mQGVkEgKlMkSJ
8Uy8IvHA5Lvg9oqcrYxnYoQTjG1hWhnhxJgnH4EGEt1J0EBCc1dfQ3cSxGBrrHJ70IugF4EUqzw5
6E7Q9wB80J0AagAVOYZFQh7FzXkUnR3RuQfJIrg5iyB5/Dbn8SN930b6vs3p+0hGtzkZnVPPOb8c
CeI2J4hzFjjHjTn0ymFNBChtDlByOJJjjhw05BAhRwY53sHRBY4ZcHiAIwHCEpa1eFimWiyhy+Og
cNOzida0epAfTzYdVoCZ6kw/JhJTwnE7wCrAGsAawBrAGsAawBrAGgPVwNPA08DTwNPA08DTTPMo
nwOPEGaUc8fXJz8jBBqCoqPNPLGD7hTR6SFLm2btFc0sixvWc+9XllrNUqv5J5xVZ7P0a5Z+zVoo
Z2nTrIVy/hW3IBz6sGRp0/zvHNYgZanVLLWapVaz1GqWWs1Sq1lqNUutZqnVLLWapVaz1GqWWs1S
q5mlc5+NLP2apV+z9GuWfs3Sr1n6NT/lzj70UrRZC+Us/ZqlX7P0a5Z+zdKvWfo1S79m6deMfs3o
14x+zejXjH7N6NeMfs3o14zHu0BVGUWbUbQZRZtRtBlFm1G0Gbd2waDLaNyMxs3HShfqRPVmVG8m
LKWiYDI6OKODMzo4s8DNqLfMAjd3rbY/Z6DB+Gx+O+D7SjcfL01g9l0JqAmoiVHtOqzeuQaoCagJ
qAmoCaiJEUsASwALgAXAAmABsOClAbAAWDB0AZ4AT4AnwBPgCfAEeAI8GTwZPNnDO9Hg7RmE3R1d
8QSwf3vz/m12bO/XADW7AeYMZsQYOsy7rdlDvT9no+G76EWhFz3sth6TUhjeAvjC8BYwFzAXYwZG
AXMBc+Htxa/wxWAujHMBYQVhZZwrwCrAKsAqwCrAKuNcwVPB01ef9aC6CrAKsOpTAKsAQ4+gOepB
tKgQ6w4Unj3M2ToAhWfPcLYst4i1xDxEk2VLFyB9cPvQ9oHtw9oHtQ9pkeoqUl1F678iRVWkqIrW
f0X6qfyM/vUHSFEVKaryy362M2jRaq9IPxWt9orUUpFaKlJLRWqpSC0VqaUitVSklorUUpFaKlJL
RWqpSC0VqaWi1V6RNirSRkXaqEgbFWmjIm1UtNorUkJFSqhICRUpoSIlVKSEipRQkRIqUkJFSqig
hApKqKCECkqooIQKSqighApKqKCEKmKuoIQKSqighApKqKCECp9dK/E5FeFYWP8VXLIVcVlQS4WF
YOEja0WSlq6W9iOA39ygFxu92NwL5EKP4amI3YLGKmisgsYqrMMK+qmgnwr6yZ8q+Eax8Y1ifwVP
TnQw0YuETg1emgCfAG9xGeBJfqDv8imgJqDCJayxKlqkHHMaYPbseC484B7nAGGA0GPonnafau2K
am8YBlADOyAzhgFmX5zBnIF6NMCcwZzBnMGcwWwdZqV43AUlHLcz4Mdz6FdmwDO9yAxmBnyG5jOT
mxmxQk+t3o63+6W8qxgqg9kXB/V4aaEXBfAFzMVvZwoM7IDBsBiPX3o8mVku2xvP4XI6TE6Hyekw
OR0mp8PkdJicDpPTYXI6TE6HyekwOR0mp8PkdJicDpPTYfKuO0zehUpiVBJ69P7HlG168PizL5Xt
JT3+7Ae3l//zVZE+592vmr7lm1UQ7XM6+uUz+fzN3/cevX+kxnnjuXpeEczXkI1nY4vgzkyor4M7
4WmzabGQQLQUBOTBgsgYbCc2n1bMWjyMmz2M9ifaaWhfIe6/Dfff/hxjRtRVRFRB/BzAwFP9dqRX
9e10pyK0KgKpIJAqAqnSr0a/3J3mBv1qKFj3tNHBhnXgvjd62hjnxqg2RG9lmjw+jdHwQDUmrvo5
dLDRwUYHu5Fvy776TRqmPkh9iCrDymGNbh+T+n3O9qtlMFcZzFUGc5XBXGUwVxnMVQ6d+nMeIJxV
BnOVZ6fKTq6yk6vs5Co7ucpOrrKTq+zk+jse5952oLKc64N+2FPZZ7C+x9/oGk9kYwL6sqTK3q6y
t6vs7Sp7u37ItXBQg4YbFOuZ9Tx6+vqs1Y/4uw/KI/7ug6+EbI0k1A37rsqkrx9zWIRWZdtX2fb1
CWdFmFVGfpWRX2XkVxn5VUZ+lZFf/5s7JxqiwPpn/hb91b/wd6c1LQSqFgKVhUBlIVBZCNS+ENhv
3WgkGsE1fn3myExjobFyTeGIH1hpNE4lGn6Fn1z6xd1SbYRUNJYPjY8AjUiKhoFaWXRUPF8Vz1cj
+2HD/m/Y/w3bteIUq6w+Kk6xhllbcYpVnGIVp1jDgK+sPiqrj4pTrLLEqCwxKkuMilOsEazRsNIr
obANW7phHleWIZVliH1z1WRqwjQNHiSVGZ/su5jcxEBlP4fuJLpjaskMVGZSMuPTs9w2TPF6EFKi
y9nvYlKyX0GXM0PXI3Eapng9qCXz5KA7AfhgEEw22W+HbExIppbM8AZzGgxCQOGFkTeRmBLCeJjK
8Lt4sqegQOoFzNlHGN4C+AJUz06mg5lZ9hR45D3OhQ4W+pXpV3a/fIR+ecA9zpl+eQw9Yh6Wwly4
XwWoR3eYbvfrQMjbi8EDwwiP232xrwFqYboL/FUAXwBfIC0fqfSi0ouKICr0tNKdyshXelEZ+co4
YxBgCTQMuHbnFbBVZcQqTHS8i36hy3EIHloYhyB6d7+dATfCxisaNGbMje40X8ykuDvNDfrVmIvG
XDTmAo3Lx7GGZdkwH9G6+xHd3jwWekp/WH9U19ldVTd1vH2fW5jpPkZNBlP7IYf7bbKcmiyn9hPO
QgyNCermS5NR1WRUNTkfm2yp9kuuhUy6x7X9ir81qu3X/K3BbbK3muytJnuryd5qsrfa77iFaeij
32RvtQcc1lw0uSybTKj2Pmc11E22VJMt1eS7bPJdNvkum3yX7Y/cyVwwCfJmtk84zHgzLbKBmvyb
TaZPk+nTZPq059zyci5uhWHXX03GUPuUw6LTJtdnk+uz/YWzfZBl+jSZPg3Tp2H6NEyfhg+0dftm
f8ZIY+LUTGOhsXKNT200Eo2gkWkUGu7kQmPlVKfdbrLsp3jyRi82eiG7ZL+Gl250ZwP8BsIN8Bvv
2vzkxHOCBpg3HwG8LJX9SOWIT/kIvejmSPN09gncb2+9Eb6GSfEUhO+iOx5wD10wGh5Dj5iHJTEX
7pe7k5iLYDCDMTwQ8vZgUgIYQrgfYXiNJ+iOHxjQWEA/AdTjge4X4IN+HRczX0G/jgYdDDoYTEq4
O1yT3Z1Cg4uz+9XeeGae02FyOkxOh8npMDkdJqfD5HSYnA6T02FyOkxOh8npMDkdJqfD5HSYnA6T
d91h8i7sjvqrjT7Pbp4+efbizW4u8jtf1xajX938+dmjF7d3fqtv4fnW0wcvPrqL5jc37/2w/OQX
D549v3m2A3nx5O7Z20fevnL47seP3qP9hSP0KhvAXvn+f/L1X1QWngXHLQmaTE2UxymYNiMyMjwm
a3dvwJkZhsww5HExPJbhw+MueDXDfkcDFs2wXzZrwX7ZHAX7+a6C4CvuF88pCJEC5gLmgjAqQC1A
LfRChvD+QIS18RS/HcluhAXwxRcjHA2+MBcF0VyQ9ZXuVE5Vpqm4wXy5O9VHmIvCxBVEoftVfReD
UH0xk1J9F1KyMKrVz2F83OXqixGF7vvRQUbs6KlvZ8SwJbG+MRv3u5jlyuQ2H2EQKmRcGY3KLDff
BUlgQtp27BbhfheD4C5jI3arcD/FiDU3oI3mnvoIPcWm65Zaup/0E/rJ+mEQjyHrJxjU6it8pOmK
/vN9/fxAPz/Uz4/08+N+i4dWA5nu/0Q/P+XwoL9/xt9X/f1z/h719y/080v9/Eo/v9bPv+vnP/Tz
n9w56e/f6Oe3+vmdfv6Li2b9/UA/7+nnoX7e18+Nfj7glkV/f6ifj/TziLOr/v6Dfv6on485u+nv
T/TzWD9P9PNUP3/SzzP9PNfPC/18qp//1s+f9fMX/Xymn//RTzeo98ZA40pjpAEFN1irBadmGpBp
yxxZaWw0fHvhCEQFCXYTe2/4Gp/q9IRBfemm6N4A/OYj9EIm9n5kpDFxytfQ082n6Jds7f2umcbC
KToo63s/5SOJBgPVbe1LN2n3I3Rwo4MbHZStnVg6pftHB9Wv/TmJBq84OsgYqqf7Ed6V6Jd7YcwG
lgDf1xCXblmn+3ee7AdWrjF4GkEvgkk5jtCdYAqCKQimIIAaQO229uXOA/0cwAfDEgzU8WQGKuhF
0IuggwH4DI0ZT2YuMi/NgM+8IvtiwGfAZ8Y5AzUzzhlgGWAZYBlgGWCFMSzgKeAp4CngKeAp4Cng
KeAp4CngKcx7QPOeggLCrlwvfVISWjahZRPKdb+GV1RPHO+qgK+Ar4CvgK+GYWDAqLCnp7KaSKDM
vlq69DlN6MuEUkzWbhcM0wuG6eWY5eqX+l10GY3X9VhCj+230x1UmHWXlZZ1kPWMtYcVRdcJ+wN9
MaRuYmvuhW8Hs0Vul7QX9fwi0rsgnTqVXnT1pV+r3l2kyC9S5Bcp8osU+eXH+pHavvxUPz/Tz8/1
I918kW6+SDdfpJsv0s0X6ebLf4LGfe5opaQvUtIXKenLf+lHuvnyHrf0nklJX6SkLzec1bhcPtCP
lPTlI8727j/Sj5T0RUr68rF+pJsv0s2XJ9wJ0XV+vTztf3e2vfyJv8W9F+nvi/T3Rfr7Iv19kf6+
/JlboMjO5xdp9MtnHBY5XaTaL6j2C6r9gmq/oNovXbXvjZnGQmOlsdFINIJGplFoVBpwXeEV230a
ANsAtgFsA9iG6iowfwHYBlTr5gLUzQ0wbzBJgZaKj9CLzQ26s9Gdje5s7g6sUrgmIea6BBz8AtHA
oMcPevig24Z+bb/k+/0Wicw0iMcG8dggHhvEY4N4bBCPDeKxQTw2iMcG8dggHhvEY4N4bBCPDf+p
H3HUII4axFHDf4FGEzWItQaZvYM4ahBHDTJ7BzHS8CF3amYHmb2DGGkQIw1ipEGMNIiRBjHSICN3
kJE7yMgdxCSDmGQQkwxikuG/v1bX0Zu55VXD9l6fj+pzXGSf7/d57QBOz9HpOTo9R6fn6PQcnZ6j
03N0eo5Oz9HpOTo9R6fn6PQcnZ6j03N0eo5eo+foXSxadv97t8hkdw/i0kF29yDmHGDOAeYcYM4B
5hxgzgHmHGDOgQ2PF9abF9TmALsOmNsXFOkA3w7w7dD5dr/Gr6g0OmnCtwN8O8C3A3w7dL7dnwNP
Sg/vp+DkCrCNd210Z/PFvibRAPMG5s2YfQ2YNzCbJ6XY01WXXvtf8HBX6Vfx5FWPueohV6m7q1jx
Kla8/og7+y3iyat48iqevIonr+LJq3jyKp68iiev4smrePL6HzwV9dENiqu49PqbfribF1ex61Xs
eoVd+9r5Kna9il2vYter2PUqdr2KXa+wa0O1dNvkiibsJsr1EX+LlK7i5Ks4+SpOvoqTr+Lkqzj5
Kk6+ipOv4uSrOPkqTr6Kk69Sd1exzVVscxXbXMU2V9jmCttcYZsrbHOFba6wzRW2uaLTrjDJFZ12
hTeu8MYVnXaFJa6wxBWWuB7rzYaaarxrA+EGizbevgHVvGHrroFn8wMBtvnJfg692HwXFmCDxBu9
8Aq00Z3OSAPr6IFl5hWOuqL3BhaeQ19m3v7ZeWxgmTmwuhyFZgwOC/iY+Vv4R79e3Rj1ztFv7I8R
H47iw1F8OP6Ii/wSTdv4Y/720ysNzd4oXh3Fq6N4dRSvjuLV8Zf9lqCLWnGmUdw7/prDGq9RbDxK
tY7/yVmR5igdO4ppRzHtKKt1FK+O4tXxIXeONETL4/v8PdNYaPTBFGOPYuxRBu0o9TtK/Y5/4JY+
3uLeUdw7fsLZPuxi41FsPIqNR7HxKDYexcaj2HgUG49i41FsPIqNR7HxKDYeYeMRNh47G++vD46M
NCYaM42Fxkpjo5Fo+DmZRqFRaXSKgJ9HVNwI946ouBGmHXESjeixEc4c4cwRzhzhzBE9NqLHRozM
EWYbUV8jDqBJN0+6ddKNk26bIOuArfoSeNJDpu9zWE+fxD+T+GeCf7rDY5Iem8Qbk3hjEm9M4o1J
vDHBGxne6I6R6Vf8PdBgTvsaeJLSm8Qtk7hlkoqbxCTTb7lFgzyJWyZxyyRumcQtkzTbJM02iQEm
McAkBpjEAJMYYJLWmkT3k+h+ktaaRO6TyH0SuU8i9+kZoDThk+h+Et1PovtJdD+J7qe/cItIYxID
TGKACQaYYIAJPTZB9xN0P0H3E3Q/QfcTdD9B9xN0P0H3E3Q/QfcTdD9B9xN6bMABMMEAEwwwwQAT
DDDBABMMMMEAEwwwwQATDDDBABMMMMEAEwwwwQCzbp5166wbZ90266ZZt8zSErOofBaVz1o4zSLu
WcQ9i7hnEfcs4p5F3LOMtFlifha9zv/O2Gw0OixR8Iy87y6HWaQ8S97Pv+NsRy9SnkXKs0h5FinP
IuVZpDx/wJ2osu4NnD/k7973j/rf3ckwP+JvUdksup9F97PofkbeF9i1uxVmccIsTpjFCbM4YZbg
n59zi0hiFifM4oRZnDCLE2ZpgFkMMIsBZhhghgFmGGDuDLA/feKIGzONhcZKY6ORaGAaFN+VaRQa
lUYfSlhiRhXMcMIMJ8xwwgwnzHDCDCfMcMIMJ8xwwgwnzHDCDCfMnRN2zH4OwDpLLHrKomcsesKi
+xffrZcvuncRbyw/4KwQLWKSRUyyYDh1N/AiblnELYu4ZRG3LOKWRdyyIPiLB7yjEv8skveLuGWR
vF/EJIuYZJGYX8Qbi3hjEW8s4o1FvLGINxaJ+UVifpGYXyTmF5H7InJfRO6LxPzy+I2nmzkdAacj
4HQEnI6A0xFwOgJOR8DpCDgdAacj4HQEnI6A0xFwOgJOR8DbcwS8zX0Dn9y8/+jBwwdPX3z67Obe
8xe3T//k+Xd/uh/89cs/7r1/88GDTz9+ce+Dmwcvr3n65ONHDz977VWMvjquVy1o9Ojxi5tnHzzY
Q1b+JgjlO4/e//ifz1OSFomrReJqkbhaJK4W6etFUmqRlFokpZY/Q7OdhSSuFomrReJqQVwtiKvl
MFiLma5xaqTBwqjv71kQYAsCbMGTM7DrZkGSLUiyBZ2+IMAWBNiCAFvYeDUQszGwtXJBpC2ItIXd
0QNeowXZtiDbFmTbgmxbkG1Ll2377b4GzBuYNzBvYN7AvIF5Y8S6bOsd7t3tne1d7R3tcnqVSFul
7ldJslWSbEWSVRZLckqlVSJtlUhbJdJWibRVIm2VSFtlAKwSYKsE2CoBtkqArRJgqwTYKgG2SoCt
EmCrBNgqAbZKgK0SYKsE2CoBtkqArRJgqwTYKgG2SoCtEmCrtPMqcl9F7qvIfRW5r2jn7oJbRfer
6H4V3a/SzqvIfRW5ryL3FXJfIfcV7bxC3CtKeYWmV2h6RSmvkPIKKa+Q8gopr5DyCimv6OIVwl0h
3BVdvEKvK57HAffiCuGuEO4K4a4o5RV6XaHXFXpdodcVel2h1xV6XaHXfnO/td/Yb+s39Vs20esm
et1Er5vodZN5uok6N1HnJurcfk7v+qtEppvIdBOZbiLTTWS6iUw3kekmMt1EppvIdBOZbiLTTWS6
iUw3XA3dc7qJXjeM0e4y3bBBuyN0EwVvouBNFLyJgjdR8CYK3kTBmyh4EwVvouBNFLxJYG8i3E2E
u4lwNxHuJsLdRLibCHeDcDcId4NwNwh3g3A3CHeDcDcId4NwNwh3g3A3CHeDcDcId7sjg9EJ3Y+7
QcrbsdJqPgLUDaim6UZ3NjBvYN7AvIF5AzNkiTdwwL874N/doPINKt8O07P57X4pveh03z1z9r01
BG3DK9Vdnd0pZ19cj3CyS657OxPj1n2dSdySxC1J3JLELUncksQt6afciRek+zvTz/hb77ri5LyS
+vBKsFCSBkhirSTWSmKt9GuuHWloUJKYLf0HhzUvSVyXxHXpt5zVZCWxXxL7JbFfEvslsV+Slkg3
3LnS6EP3AX8nGkGjD7ZUShJDJjFkEkMmMWT6mFv6YIkzkzgzPeGs6Do95W+RQfpT/7vH9SQxbRLT
JjFtEtMmMW0S06a/cKfoOol7k7g3wb2pc+9+4cCRK42RxkRjprHQWGlsNBKNoJFpFBqVRu8nTJvQ
PwleTfBqwl5KsGiCRRMsmmDRBIsmWDShdhIMmWDIhNpJsF+C/bqHtntKe1BMzx15JQLqSgRU9//1
cJgrLuUQj4V4LH7IWYEPMVuI2ULMFlJNIdUUYpv4BXcuNNTb+CV/bzQgWZCLx0LqK8RRIfUVYqT4
DbdkGhqekEKL33G491KsFWKteI+zGsEQj4V4LKTZQpZYiG1CbBOP+p3dy3nFyxl/4G9RQvyRv0UQ
IV0X4qgQR4V0XUjXBfzT3aIh/gnxT7zgbJ8nMVKIkUKMFNJ+If4J8U/AP4H2C9gmYJuAbQK2Cdgm
YJvobLNj8DWJRtDINAqNSqOPNhGbV7ygASMFjBR8HbvieQw4KuCogKMCjgo4KuCogKMCjgo4KuCo
gKMCjgo4qjv0ugMvQ2s9Zq/HBXXvW3e6ZfFPFv9k+CdD4zxLjJR/zGGByuKoLI7KP+Nsf5NYK0sj
ZWmkLG7J4pYsbsnon4yaA95/9r+7TzDDSN0nmMU/WRopi22y2CZLI+WH3KK5ymKbLLbJKKLuNszi
nyz+yY/edpqO8f74rVdwObzNFBmn0+J0WpxOi9NpcTotTqfF6bQ4nRan0+J0WpxOi9NpcTotTqfF
6bR4G06Lt7k55I6f4ult4/bsg8fyP9x8/OjxzRfvj/gnHCR/+9L3n3zyCnsw7tywd+uL7/g8H8zf
69vrcsR8DSPz0bOXSF/PDHxBCNFOpxIrWZZQliWUJa6zxHWWuM4S11niOmtpkiWls6R0lpWTP4UJ
JKqypHSWlM6S0llSOktKZ6R0RkpnpHRGSmekdEZKZ6R0RkpnjJuMcM4I54xwzgjnjHDOCOeMcZOR
yRmZnDFuMqI4I4ozojgjijOiOCOKM6I4I4ozojgTJ3FlI2FGJmdkciYY4srGvb6LricbKgjnvjGv
++165qDugysSzkXCuWgBUX7Enag3noxw5hU/4W/BLpLSRXZPkXAuEs5Fwrn8ils6HEnpIildZNMU
2TRFi4MiCVwkgYskcJEELpLARfZKkeAtErxF9kr5kDf2nkvwFtn7RVReROVFVF5E5UVUXkTlRVRe
ROXlGU/FXOyuyyK6L1gn3VtZZJ0U0X35M2dFSUUMUMQARQxQYIACAxQYoLBh9Uow3hUPZcGZesXp
WDpv7Edmjiw0VhobjUQjaEBJ1XcVGpVGpye4pcAtBW4pcEuBWwrcUuCWArcUuKXALQVuKXBLgVsK
hkuBSQoxRFd8ewULpvuHutOmO2m6b6Yn2au+V69W1fWkYuupYsHwJBkuqrqeVHU9qep6UtX1pKrr
ScXWk4qtJxVbTyq2nlRsPanYelKx9aRi60nF1pOKrSeVVk8qrZ5USD2pSHpSkfSkIumpYnnQWVke
KneeKpY7YyBOUE3zVFn5MjRiCdU0T6ppnlTKPKmUeVIp86RS5vudWFrdt1Nhie7QqeiE7rxRufOk
4uZJNc2TSpknlTJPlDLfbxo44saVBrzRfGSiMdNgEdajDalgnihcnihTnihTnihTnihTnig4vj/H
r+i9hROoKp6oKr5fDIwNhBswNp6z+ZqFBi6OZvBg3sC8YVY3HwH8BnjrlkYHO9tQTDxRTDz1K7q7
qad4bL4fjwonPBgangYj9fA/leVNKsKbVIQ3qfZuUu3dpNq7SQV2kwrsJhXYTSqwm1RgN6mcblIV
3aTiuUnFc5OK5yYVz00qnptUPDepVG5SqdykCrlJFXKTKuQmFcZNKoybVBg3qTBuUmHcpMK4SYVx
k8rgJpXBTSp6e7to7Z60kRhHlcFNKoO7H9bsqx5uUj3c/fBIY6IhWlCp3KTCuEmFcZPq4SbVw029
Hu5IkdSRyEcVxt3/FmGoQu7+d59itA2lchOlchOlchOlchOFcffbg0bm1EJj5VThyEbDL/XtlSN+
ju/yqdYbnbUojJsojLs/p/VG+JorR3wxAxz0dKNfneuomZuomZuomZtcM3fEgzTiQaJmbnKp3BEv
EqVyE6VyE6Vy92t4qbgulB49lB49lB49lB49lAw97vte5lnepFAO9P3vjYbh9uf9QD+qga306KH0
6KFk6NGToY94k8buTQplRQ8lQw/lQA/lQA/lQA/lQA/lQA/lQA/lQA+lPg+lPg+lPg+lPg9lPA9l
PA9lPA9lPA9lPI+e8XzsTqxQxvNQxvNQxvNQovNQovNQovNQfvNQfvNQfvNQfvNQfvNQfvNQfvNQ
fvNQfvNQfvNQfvNQfvNQfvNQfvMgv3mQ3zzIbx7kNw/ymwfZzINs5kES8yCJeZDEPMhdHqQsD1KW
BynL9yGBIPJ9TrXe6N6lsbvmgtzlcf9gm+wGmDc3AL8BfgP8BvgN8BtUl+Gx7Lugw4zsyNBu9u30
dKOnGz3dKg36ldwvv1Qjduk/yBa5mEKph0MZh+PCyOV+WI9V6uFQ6uFQ6uFQ6uFQ6uFQ6uH9zkJD
2C6wTe7P+ln/W76lUHriUHriUHriUHriUHriUHri/RZNkfIUh/IUx+U370wlms9xyrz2fS3/23P0
Jl95xyXz1nbwnB6a00NzemhOD83poTk9NKeH5vTQnB6a00NzemhOD83poTk9NKeH5p3w0LyLRWIu
33sJWFSvmlahmlahmlb7WVGTiluFiluFalqFalqFalqFSlmFSlntd0JIch1EL241UlBppCjr2Fe6
oXJXoXJXoXJXoXJXoXJXcUFFa4kbqnsVqnIVKm4VqmkVqmkVqmkVqmkVqmkVqmkVqmAVqmAVKlwV
FK4KClcFhauCwlVB4aqgcFVQuCooXBUUrgoKVwWFq4LCVUHhqqBwVbhw1UihqLEv24MKVkEFq/0U
z9mAugHV2rLwig3MG5g3MG9g3sC8gXmDHQucVxqnUDPVwGCtyhhu9Gvjrq4tVaYqVJ0qBj8KiaYV
cqheVQy8XOvlUOGqUOGqUL2q/ay6qMJVocJVocJVocJVocJVocJVocJV+50aE1WwClWwClWwClWw
2i/SeKmUVaiUVaiUVaiUVaiUVaiU1X6LRlY1rUKlrEKlrEKlrEKlrEKlrEKlrEKlrEIVrEIVrEIV
rEIVrEIVrEIVrEIVrEIVrEIVrEIVrEIVrEIVrHZQmmWVsgqVsopBvKF00aF00TFgf9Y+XWIS8kYH
eaODvNFB3uggb3QMh9lZgyMLjZXGRiPR8MWZRqFRaXQ6gDdIDh0khw6SQwfJoYNU0EEG6CADdJAB
OoZDJVbevgFsA9jmUwDbALYBrJO7Ej+HEj+HEj+H8j2H8j2H8j2H8j2H8j2H8j2H8j2H0jyH0jyH
0jyH0jyH0jyH0jyH0jyH0jyH0jzHFTVVzaf91SJlpXneD3coommleY4rNN16l0TTSvMcSvMcSvMc
SvMcSvMcVyzAhuCSHyCuqAut+eOKltD6PpTvOZTmOZTmOZTmOZTmOa7oBC3lQ/meQ/meQ/me97Oa
aSV+DiV+DiV+3s9q+pUBOpQBOpQBOpQBOpQBOpQBOsgAHWSADjJABxmggwzQcT0YQEv/IBV0kAo6
SAUdpIIOUkEHqaD3231NoVFp9CmDE8gJHWSADjJAB4mfg8TPQZrnILtzkN05yO4cZHcOsjsHuZyD
FM5BwuYgYXNcD3tPXokY+4+eoWTMoRzModTLMaIDG8qn9cvEGyPyvvXbxCRKxhw99fLY/RehRMuh
RMuhRMuhRMuhRMuhRMuhtMq3pm93AUzdBRA90fLU1/6hRMv73xpIZVwOZVwOJVoOJVoOJVoOJVre
b9GQK+NyKONy9IzLU/cZhBIth7Iph7Ip72c1OUqrHEqrHEqrHEqrHMqmHMqmHD2b8tT9CaFsyqFs
yqFsyqFsyqFsyqFsyqFsyqFsyqFsyqFsyqFsyvtTNxp9UsUkyq+8H+6TDLeQaDmcaHnqHogg0XKQ
aDlItBwkWg4SLQeJloNEy/tzCo3KKb/dr/A1jSO+mCOdf8jBHORgDnIwBzmYgxzMQQ7mIAdzkIM5
yMEc5GAOcjAHOZiDHMxBDuYgB3OQgzmUgzmUgzmUgzmUgzmUgzmUcTmUcTmUaDmUaDmUaDmUXzmU
XzmUXzmUXzmUX/l2cHq28am7XkIZl6NnXJ66/yWUaDmUTTkmWELulVBa5VBa5VBa5VBa5VA25VA2
5VA25f3OkYZGVfmV9781uBNMIu9JKONyKONyKONyKONyKONyKOPyfstKQ7OhHMyhHMz74T68Yhsl
Yw4lY97PBo0+7uIfpWcOpWcOpWcOZWUOZWXeb4HmuvtDeZr3v1tvZMa7r/SVwjmUwjmUwjmUuTmU
uTnI3LzfNNC4cmqgAY9pWR8kdQ6SOgdJnfdrfGShsdLYaCQaQSPToJvZD/RzKkeYhIzcyH5gp13Y
j1TQQQboIAN0kAF6vx0YG+A7H5IKOkgFHaSCDlJBB6mgg1TQQSroIBV0kAo6SAUdSgUdSgUdSgUd
SgUdSgUdSgUdSgUdSgW9g+3XiiGVEzqUEzqUEzqUEzrmn73ZMjGnK+B0BZyugNMVcLoCTlfA6Qo4
XQGnK+B0BZyugNMVcLoCTlfA6Qp4y66Ad3HvwP3v3SKT2lTFqlDFqlDFqlDFqlDFqlB9qlB9qlBZ
qlBZqlBZqlA1qlA1qlA1qlA1qlA1qlA1qlA1qlDtqVDJqVClqVCBqVCBqVCBqVCBqVA5qVA5qVA5
qX0mTKt9wsTAKjC1H+4TKE5WgamY4du+Q0SVpva/RagqORUqORUqORUqORXzwa4Fdu2+FYpQ7Ucg
a/lM9sbMNb54pDHR8DULDdisu1gmXCwUqor5UJvFR4JGpsEwlcSRSqOPEOxKxaqgYlVQsSrmg10L
YrTwis09LRxBfBTetdGvjV5sYN4AtgG++yQmvBSUtwrKWwVVrW6vqYDvvK3yVqHyVqHyVqHyVqHy
VqGqVqGqVqGqVqFiVqFiVqFiVqEaVqEaVqEaVvs7NU4qZhUqZhUqZhUqZhUqXRUqXRUqXbXfqYFV
DatQDatQDav9rEZbxaxCxaxCxaxCxaxCxaxCxaxCxaxCxaxCxaxCxaxCxaxCxaxCxaxCxaxCxaxi
EWspi3Aoi3Aoi3Aoi3Aoi3Aoi3As8E+FHLq3RnmFo+cVnnDFKK9wKK9wLJiU3QdDguEgwXCQYDhI
JxykEw6yCAdZhPfnwCTdGbIcbNN9HeQV3o8ER3zKRzINuKX6CHqvFo506oFtSDC8X1M5Qnc2urPR
nY3ubHRnYzQ6b5BXOMgrHOQVDvIKB3mFg7zCQV7hIK9w9H72XvY+9kVnFwK9L8orHCtarrsOlGA4
lGA4lGA4lE44lE44lE44lE44lE44lE44lE44lE44lE44lE44lE44lE44lE44lE44lE44lE44lE44
lE44lE44lE44lE44lE44lE44VszF7uJQXuFQXuFQXuH9rEhPCYZDCYZDCYZDCYZDCYZDCYZDCYZD
eYVDeYVDeYVDeYVDeYVDeYVjhdy7o2Q9FEh3lZBpOMg0HGQaDjINB5mGYz3ovvmalcZGI9EIGplG
oVFp9HmGlEk5HKQcDlIOBymHg0zDQabhINNwkGk4yDQcZBoOMg0HmYaDTMNBpuEg03CQaTj6zRsq
p6FpuieoP2qDa7sLqD+vP01JiPezAqdsxKFsxKFsxKFsxKFsxKFsxLEh7xsypLs/NlZZ8m2E8hPv
f3dAYgAlKg4lKg4lKg4lKg4lKt5v0SgoY3EoY3EoY3EoY3EoY3EoY3EoY3EoY3EoUXEoUXEoP3Eo
LXEoLXEoLXEoLXEoLXEoLXEoLXEoLfGOpg+dGED5iUP5iUP5iUP5iUP5iUP5iW/XC3K3hBIVhxIV
hxIVhxIVB4mKg0TFQaLiIFFxkKg4SFQcJCoOEhUHiYqDRMVBouIgUXGQqDhIVBwkKg7SEgdpiYNs
xEE24iAbcZCEOEhCHCQh3vs80PBdIOyu5xnvEvmJg/zEQTbi/Rq/AsyQMCxBEuLoTprulEl+wkxD
YyVHSnQ3Sg/SmPEgKdNwKNNwKNNwKNNwKNNwKNPwfouGWimHQwmGQ8mD97MdjgS/sgiHsgjvZztK
MYCSB4eSB4dyBodyBodyBodSBe93ahaVMziUMziUMziUM3i/qHdSnKDkwaFUwaF8wKF8wKF8wPst
lYbGVRmCQxmCbw9HH2UxiTIE74cvNEQnyhm8/62JV/LgUM7gUKrgUIbgUIbg/dqRhqZbOYP3v0VY
Sh4cSh4cSh4cSh4cyhkcyhkc5AwO5wye8aeQMzjIGRzkDN6vWTky0/BdK9dsHHEj0QgamUahUWlA
aj0MZiYMhrzCQV7hIK9wkFc4yCsc5BUO8goHeYWDvMKRDh4L2CDAs4G5644Zzw0ph4OUw0HK4f2a
xhEaneu6Z6l3pTuQ+suCu7sLaMYFFAyFvDuh3MP73+qtkhBH/PDN7hk4XQCnC+B0AZwugNMFcLoA
ThfA6QI4XQCnC+B0AZwugNMFcLoAThfAW3IBvM29AuQ5fP7d/SApDv/w/PW4Jf7e2zQCz/9qCLZx
vH736YPPPrl5/OLes5s/fXp7x3cffPzxkz/3gxx7/OTegxcvnj1679MXN/eeP/jk5t6TZ48+fPT4
3nsP7z188vjFg0ePb549/87LN3zJUfk72R///OTZH2+evXzWq47Tb17e8vzLD9U/hvCtf/vZk8c3
XymlRKj4Vaj4Vaj4Vaj41U6wSK6MJNEeoVBdrP1vMacKZIUKZEUvhzWTciTQC9o9FKqCFaqCFaqC
FaqCFb0K1kx1oZmtQqqCtf8N03dP0IwnSAWyQnWxQnWx9rPiaRXIikCJFLi2u4BUKStUKWs/3JlX
akUls0Ils/aznZVlaalSVqhAVqguVqguVqguVqgu1n4nY9rja1Qpa/8bVV4wM7rnR0W0QrWzQrWz
QrWzQiWzIrDGCqKxu31URCtURCtURCtURCsoohUU0QqKaAVFtIIiWkERraCIVlBEKyiiFdTOCmpn
BbWzgtpZQe2soHZWUDsrKJkVlMwKSmYFlbKCSllBpaygUlZQKSuolBVUygoqZQWVsoJKWUGlrKBS
VlApK/oWt05/fROYiC46yXXaUoGsUIGsUIGsUDmsUDmsUBWsUBWsUBWsUPGrUPGrUPGryHBLQYV1
j5vKYYXKYe2HOxTxj6pgRYZ/ugtOxa9Cxa9Cxa9Cxa9Cxa9Cxa9CNa/2O9Ff3cWWYYmKNVQxPrrj
SgWyQnWxQnWxIos3lOI2MpZWhf67B0lJbyNjcnUPkrLfhrLfRoZJugdJaXBDaXBDaXBDaXBDaXBD
2W9D2W/3OzF0us9I+XD3v/s0f8bffb7FJGTIDTLkBhlygwy5kQ9Lq/uPSJUbpMqNfFha3aNEztwg
Z26QM3e/pnLED/RdPtWJD/4heW6QPHd/DnPZfA3gNyaiMa2NDnYeI8FukGA3SLAbJNgNEuzut/vJ
QQPwG+A3wG+A78xW/BSNaY+d66TfSb3TdHcPK69uKK9uKK/u/gCB7wl2Z3wGyqsbSqcbyqIbyqIb
yqIbyqIbyqIbBT5syOPuSFA63SjwYY/tUF7dUF7dKPBhdx0owW4owW4owW4owW4owW4owW4U+LBB
DN27UODD7jpQ7t397z4sYj/l3g3l3g3l3g3l3g3l3r1V2n3VriS8oSS8oSS8oSS8oSS8oSS8oZS7
oZS7oUy7oUy7oUy7oQS7oQS7oQS7QYLdIMFukGA3SLAbpNMNZ9FdiN8gi26QRTfIohtk0Q2y6AZZ
dIPkuUHy3CB5bpA8N0ieGyTPDZLnBslzg+S5QfLcIHlukDw3SJ4bJM8NkucGyXOD5LlB8twgeW6Q
Mze6GOrSp8uRLiq6NOjuWaXKDaXK3YdKqJUzN5QqN5Qqdz+rrihnbihnbihnbihnbihnbihnbihn
bihnbihnbihnbihnbihnbihnbihnbihnbihnbihnbihnbihnbihnbihnbihVbihV7o5UY62cuaFU
uaFUuftZTYBy5oZS5YZS5e5nNSvKmRvKmRvKmRvKmRvKmRvKkBtKjBvKh7s/QLOpxLj735pUZcgN
ZcgNZcgNMuQGiXGDxLhBYtwgH+7+qEQjODXTWDiVObLS2DhVaFRO+YGNI36yn1No+K7W7+pRIgtR
ImTR3Y/Qnf5pY8HRQV7dIJ1ukE43SKcbpNMN0unut/sa+tW5hSy6QfLcIHlukDw3yJkb5MwNcuZG
l6rdD9sFZJeLXRwqMW4oH24oH24oH24oH240mKR7ZpQYN5QYN5QYN5QYN5QYN5QYN5QYN5QYN5QY
N5QYN5QYN5QYN5QYN5QYN5QYN5QYN5QYN5QYN5QYN5QYN5QYN5QYN5QYN5QYN5QYN5QYN5QYN5QY
N5QYN5QGN5QGN5T9NpT9NpTidu+25ku5bkO5bqPBEt2zpKS3oaS30VPcLviUlOI2yGwbZLYNMtsG
mW2DzLbRDjHfvU4ktA0ntF0I7CGhbZDQNkhoG+SxDfLYBnlsgzy20e4QN3dtQN2A2tPXLoQJkb42
yFobZK3dr+FdG5g7cZO+NkhfGySrDZLVBjlq9+cAdXPDLNreeEqJ0xVwugJOV8DpCjhdAacr4HQF
nK6A0xVwugJOV8DpCjhdAacr4HQFvE1XwLlN5J8s1nlnr8Q/2dNnN0+fPHvxZvvrd76JXn9RvBCl
km6JsG9xUs2krJpJWTWTsmomZdVMyvehW22Gyr1UkuohZdVD2s9qVaLCSFmFkbIKI+1nxYO9QpLq
IWXVQ8qqh5RVDymrHlJWPaT9zpGGVK4qJO1/i2VVKimrVFJWqaSsUklZpZKySiVllUrKKpWUVSop
q1RSVqmk3EslqUJSVoWkrApJWRWSsiokZVVIyqqQlFUhKatCUlaFpKwKSVkVkrIqJGVVSMqqkJRV
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
zWi1GeE5Y87OSIAZmTAjaWfEzgx3z6iAGdk7Y6DMqKUZI3hG4M9YwzPW8Iysm5HYM2bNzLzPzPuM
mpghgBkCmFE3MypghiRmSGJG3cyYUDNEMkMkM0J4RnHMkM0M2cwYZzOG1wwhzRDSjNabkc8zpDVD
WjO23QyNzdDYjCU3Q2wzxDZDbDPENkNsM8Q2Q2wzxDajfIdjsVoRsLYVMkohWxqj/jKLqIyKtPGR
Lect+dGDwcVhDYu+qFgqwSsCBV2sbrB4rFwKGq2gU/qIDZDocCiygtazyu5kM0BRA/QzHOom83Zf
E7wiWDdm7gqGJXyxX8HFhWsMtfiUjU7rXHsH7G5Aado3EXTQJqaHLnwxAx68Ihi6YL7C+t2n7EHQ
2xPAEsASwBJCJiElEiIlIRMS4BPcnWCrBF8kZN1to3z93xP+nt/n8r2Xb6y8uvVGF2sJGZgYk3SM
SdDxoONBx4OOBx0POh50POh40PE+EQkqSlBRgtISAjzBCwluTVB+gvITPJ5g5AQjJ9g2wcgJ1k4w
coJ0EyyQYIoEvyT4JSFdE7I0IUsTkjMhORNyMiEnE7yZ4IUEvyT4JcEvCYGQEBEJ2ZWQZgnhkxBH
CVGTED4JhZuw5RK2XMKWS9hyCe5I2HIJWy5hyyVsuYQtl7DlErZcwpYLeCrgqYCnAp4KeCrgqYCn
Ap4KeCrgqYCnAp4KzIaA1ANSD0g9IPWA1ANSD0g9IPWA1ANSD0g9IPWA1ANSD0g9IPWA1ANSD0g9
IPWA1ANSD0g9IPWA1ANSD0g9IPWA1ANSD0g9IPWA1ANSD0g9IPWA1ANSD0g9IPWA1ANSD0g9IPWA
1ANSD0g9IPWA1ANSD0g9IPWA1ANSD0g9IPWA1ANSD0g9IPWA1ANSD0g9IPWA1ANSD0g9IPWA1OMg
9QaeBp6+4hvhghEuGOGCES4Y4YIRLhjhghEuGOGCES4Y4YIRLhjhghEuGOGCES4Y4YIRLhjhghEu
GOGCES4Y4YIRLhjhghEuGOGCES4Y4YIRLhjhghEuGOGCES4Y4YIRLhjhghEuGOGCES4Y4YIRLhjh
ghEuGOGCES4Y4YIRLhjhghEuGOGCES4Y4YIRLhjhghEuGOGCES4Y4YIRLhjhghEuGOGCES4Y4YIR
LhjhghEuGOGCES4Y4YIRLhjhghEuGOGCES4Y4YIRLhjhghEuGOGCES4Y4YIRLhjhgvHgggaeBp4G
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
XFTweDCPofPk8i4PZoXmK2/3QHk0jtsBVj2qRujbfQ2nGuBtczTosNEd2xyNftnmaHSw0cFGBxsD
3qCWBkU1aOy4hrlodNA2R2M0GpPSGKgGDx63q4OLRmfRHYuuXzQKS79EI7BI6y/6rrJI2S8/4rlC
s8gHtEjZL1L2i5T9ImW/SNkvUvaLXD+LXD+L9Pci/b1Ify/S34v096Ll+yJtvWj5vkhJL1LSi5bv
i3TzIt28SDcv0s2LdPMi3bxosb5IJS9SyYtU8qIV+SJNvEgTL9LEy3N630dRKnmRSl7+m7N9cKWb
F+nm5bO3HFf197wyXzbW6nMDtl6tuv3ppjndNKeb5nTTnG6a001zumlON83ppjndNKeb5nTTnG6a
001zumlON8074aZ553P0vNHtNdf74zfGz/SPItrCW9EXmV4LpteC6bVgei2YXgum19JNr7jeYdvK
KYkIb7ZdsMoWrLIFq2zBKluwyhassgWrbOlWWbBpN7xpd8FOW8hn5228CwbbgsG24HnxDt8Fy23B
cltwuCw4XBassgWrbMHhsmCMeafwQsJdbxlecMF47/CCVbbgglmOgUpgdgeTMW80gOFedNPLO46X
4+3d0GIPcngP8oLFtdx5oG9nLo6LmYvkuXC/6E5fIrKXeT/CpAQdDDoYdDCYr6A7wWAGhHTcxRgG
4APwAfgAfAA+AB9AzSDMAMu8IgMsAywDLAMsM7wZPBk83eAfjw5mgGWAZYBlgGWAFYAVDx0wCggL
Ty4+BcICwgLCAsICwsKIFYAVgBWAFYAVgFWAVUasgqeCp4KngqeCp4KngqeCp4KngqdCqyaJCrAK
sAodmloaCBsIG+IieHsDagNq4xXNz/HFQG2wXsBNJj+0qhWopSr+kQXB2EVeF3hd3HVht8JMYfLp
l2n8Vxk2qwybVYbNKi/G+mNu6Y+UYbPKsFll2KwybFYZNqsMm/VX3InU6pyyytRZZeqs/8HZDkY2
zyqbZ5XNs8rmWWXzrA/6LRmZ0BltlRW0PuSwiGiVObTKHFo/4OyVBlKw8+IqS2mVpbTKUlplKa1/
5FrEYmfX9WP+1sSun/A389sXNavMqlVm1fqUs31K/sTffbxlaK1yeawvONtnVobWKt/H+mfO9oGW
obXKCbJKE69o4hVNvKKJVzTxiiZecYKsOEFW1O2Kul1RtyvqdkXdrqjbFXW74gRZu3INB1Y4nmLF
LbJ2LRuOsFhRtyv+kZWwIAdfrF3dhqMwVvTuit5d0bsrenfFG0LIRjhkYz00cWE0rImLn0wHNzqY
6E5C2hbeblOjQBwF1iyMYYI8C4OZ6HJylw0DFi8MZmV4K0OXAJ/AbP1dwVN5afW7QFh5aWV4Kxq0
+jmMamJUk7vDGFZ6Whnw6g5CLVb/1UcY1WBUrf4rIx8QQDDvQS+CqQwGIRgEi10L/eZX0PfGuyz0
m19BT5GplpSYCKsFHw5dh7Ss2AqrRZiFFrYCVZv3Br3I9ALhY6mDrbBa3FiyWKRYelhQYCKsBw+a
48xW5qYCHjOI+cLsYFIv4CngMYWbsAt4CngKeCp4TMYVPBU8ptUKngqeCp4KHpNoBU8Fj+nQVGfS
quAxbTTwNPCYJDy5DTwNlmkw0XEEhA1uakA9GqZDNwDf4KYGNzV60ejXcYR+NfirIUC6GdGzYfu7
bReK/nzbJaG/4navcF+G+Jtuj5Hk02740+4mU2P7AYfV+002xyabY/sxZzUAm2yOTTbHJptjk82x
yebYZHNsv+LOjYYGavs1f7tD7knvgsyRTZ6XTVbIJitkkxWy/Y5b+mDJHNnkgtne46xoZZMvZpPx
sd30s11+bXLKbDI1Npkam0yNTabGJqfMJqfMJqfMJuthk/WwPeWpFxp9nuSm2WQ9bLIeNnlnNhkN
239zS59KeWc2GQ3bZ5ztMyrrYcN62LAeNqyHDethw3rYsB42rIcN62HDetiwHjashw3rYcN62LAe
NqyHjaX5hq2wsSLfMBE2TISNhfiGZcAn/vAn/g0T4baxvvEEQKe75HSXnO6S011yuktOd8npLjnd
Jae75HSXnO6S011yuktOd8npLjndJe+2u+Qtpwv6vBincMjGhumyfdvM2lUYQRz7Kcg8GF1zbjDM
8C6my/Zts234Yq7pW2KJ5tiPmOSYk27VOKxjw4ZxfMdmAXFIhsy8ISIsFLBPiPjYj9BB+Ppg6Own
Qz7J4I0ZqHAhvoPNjGN2MOVjPGwHsXguAnL2yHvAPc4BHg9mIC6znwwwD51HzOPjQXBPfXsGWAZY
BlgGWAZYBlgGWAZYZqAyeAp4CtPtdxWAFYAVgBWAFV8MsOI59REQFhAWzym9KEAtQC0eQ98O5grm
yhhWoFagVqBW0yHc5PGpSAsPVAVzBVjl7RXw1bf7LjBXY/YRMDcwNzA3MDcwNzA3hrcxvA1gDWAN
YA1gDWANYA0YXft3puo2e+ejzkWdhzoHJenxJJdBkvpOUt8J9Z3d3X6T9Hj6aT/caStJoScp9PQL
zmogkjR70q7SJN9BkrJOUtZJyjr9hjuRQ50w02/5WwOY0OOdTJP0eJIeT3IiJKnvJPWdUN+doJPU
d5L6TlLfSeo7SX0nqe8k9Z2kvpPUd5L6TtqCmqSsk5R1krJOUtZJyjpphZ+ko9NfQKNpT1rhJ+no
hI5O6OiEjk7o6ETCc0edJZR1QlknlHVCWSeUdUJZJ5R1QlknlHVCWSeUdUJZJ5R1QlknlHVCWSe8
5gnVnFi9J1KfOlIusYxPuM8T4Z0JPZfQc+nQc4W7EggTCK3MCg9MQE1AtQ4rvCuBOYE5gTkBNfml
frJvLzwQzAkeKoBPBs/wBuAD8MHwBpgDzLZ8qu8Cc4DZ9kT1AwEfgA9kdPW76EUAPsAcQM28NPPk
zDhXoGY3wJwhiYxErj4F5sw4Z6BmoGbGOWPWWOhX+p7BbKFV/WTAF2yg6vHhXdaOlZcWhgUhZOlj
sUPsD6GS4VDJRDSQYybToTgro2riNxmbVk2QJiTry+ru0DAleLo9p54UD3gFvIfOA1WZAg+LR6MC
zB10v9wdA2vgaeBp4GngaeBp4GngaeBp4GmIi8YMHk8GYWMKjncBtcGVDXP2eLvAd67oJl9nhM4G
nQkCtm3QXgcc3+dvprwx0wfu/nyp25C6DanbUIBG/IRr3ZEOQ8vm+BmHOyyp29D6OX7J2Y5W6jak
bkPqNqRuQ+o2tDYOKVdHxjn8LX7H31caIw3NWUjvhvRuSO+G9G68z7UzjYWGpjXkzo8POCyiC6nk
kEqOR5ztIyjdHNLNId0c0s0h3RzSzfGUO4NGH88/8XehUWmIgkOKPKTIQ4o8pMhDijykyEOL7ZD+
DunvQH8H+jvQ34H+DtbYgdoO1HagtgO1HajtQG0HajtQ24HaDtR2oLYDtR2o7UBtB2o7UNuB2g7U
dqC2g5VroK0DbR1o60BbB9o6cKgHSjpQ0mFSQzcHujlMY6jkQCWHCcgkY+pAJYcnm0VksIgMzzJ6
N9C7gd4N9G6gdwO9S8hlzHfuAmFA4sdzgBpA7d/w5juvgEAD/gr6jiRCJQcqOXBFE58Zjs8MPqsR
qBkO1HRYZqC/g+VpoLYDtR2EU+4xnG92B8rpMDkdJqfD5HSYnA6T02FyOkxOh8npMDkdJqfD5HSY
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
bmqompGswgNTHzsb87iS6bjcW+NugNGs8a7Ze2u0/sA7xe0K17phvussqVeloe6u9G5qXQnu3thv
RyTu/tST6z1tKMh18RXkuiDOBXEuKEpBUYrFGM2raEzlgV1srn34KfBfF5ipC/TTBWrpAstygYq4
QBRc4AcuMP0WqG8L1LcFUtr9pf4Nr9BQu3/lu1CHhIj2IepKV0JiWqAsLbCKFghKC/SiBSbRAgNo
geyz5kNh+6AF6+bRg9Bv7m9fKPCcAGHw4wBPAOO4C608bveVV41w1yZdv6CALDA1FpgZC5SMBTqD
Ap1Bgb6gwExQoB3QmLdOd+6IxrxdmXhe4+5GYzQguw3a/1JBzoEWjnUWjm0WDmMWTvLdKYcqWvG1
C2e19ldwVzAS9JbjOE/hbE7hDE3hXMt+O0NL+DlcyR6QwJN5RWawybwrM9Rl3pUZ6tSEHlEKq2eF
BaPC6k9hRafOB/jCcNi180rTsaJRiMEXwuuFEHkhNl6IeBdC2/tzGPMaXzWq3HhyA7OH+Qawxrsa
VW7Uwgj7k4m4FiKlhXjmPgpqpCy9B+9aqSBjCUGSbNz9RgJ+12vBEK6338HrlmRghBuo+9jbueGF
l9xHuDucPWIUBIoywa3a35WwEnvhSmGgMFKYKMwUFgorBT8wUQgKmUKhUCm0XpCF3AvgCfAEeAI8
AZ4AT4AnwBPgCfAEeAI8AZ4AT4AngyeDJ4MngyeDJ4MngyeDJ4MngyeDJ4MngyeDJ4Mng6eAp4Cn
gKeAp4xvnVTmDMKcQZgzCHMGYc4gzBmEOYMwZxDmDMKcQZgzCHMGYc4gzBmEOYMwZxDmHzEI89D2
ytx8/xUumqfQPIXmKTRPoXkKzSNFuRNPi0+heQrNU2ieSvNUmqfSPJXmqXRXBU8FTwVPBU8FTwVP
pbsqeCp4KngqeBp4GngaeBp4GngaeBp4GngaeBp4GngaeBp45Gkl3LK7psu0YRexSx9s9h9XvnKr
5rd+xuoUjm+PcDw0qrDfPPno6d1zfvPB45ePf/P580++QUairwThdTmHPr394Mnj9x9/9vLz57eP
Xry8a5FPX3zvJ/vFX7z649FHty9fPn/8/u+efPCNUy79fVhet6YHbdV+8ePHz5/evnjxz7/9hhnd
/vfbvirJ1l/t3K9D2HZ3x2e3zz+8h+r2Ty9vn7548uzpFzbG367V89vPnj1/+aZb8itX400D+GYY
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
ngqeCp6KrFokKsAqwCpyaGlpIGwgbAwXwdsbUBtQG69ofo5/DNSG6gXaZPHDLNgCeFRlgr8wMPYh
rw94fbjrg92KMoXFp/9M7b/KMq+yzKss86pp+PojbumPlGVeZZlXWeZVlnmVZV5lmdefcyejVteU
VbZ6la1e/4NvOxgZ7VVGe5XRXmW0Vxnt9XG/JTMmdEVbZcbX97ksIVplz1fZ8/VDvh0oMAp2XVxl
6leZ+lWmfpWpX3/HbxkWu7qun/C3Onb9lL/p3+6Vr/ILVvkF62d827vk9/zd21uewqo5+/qSb3vP
ylNYNXlf/8i3vaHlKayaxa+yxCuWeMUSr1jiFUu8YolXZvErs/gVc7tiblfM7Yq5XTG3K+Z2xdyu
zOLXblzDR9p8km1lXr92Kxs+27Ziblcm+CsHMn3sbe3mNnz+bcXurtjdFbu7YndXpvMclgsfllsP
S1xoDVvi4idTwY0KJqqTGG0Lb7erURCOgmoW2jAhnoXGTFQ5ucqGgYoXGrPSvJWmS4BPYLb9ruCp
vLT6XSCsvLTSvBULWv0cWjXRqsnVoQ0rNa00eHUFkRab/+ortGrQqjb/lZYPBCDo96AWQVcGjRA0
goddD/rNr6DujXd50G9+BTVlTPVIiYuweuAjIunDhCu+wuohzIMWvsKKr7B6fMJXWD34eNTBV1g9
3Hhk8ZDi0cMDBS7CeuigNc5qZW0q4LGCWC+sDhb1Ap4CHku4BbuAp4CngKeCx2JcwVPBY1mt4Kng
qeCp4LGIVvBU8FgOLXUWrQoey0YDTwOPRcKd28DTUJmGEh1XQNjQpgbUo2A5dAHwDW1qaFOjFo16
HVeoV0O/GgNIdyN6AgIvPPZB0euPfST0MmQPa/ZpiBcl++l01ibDa5ObXI3th1xW7Tf5HJt8ju1H
fKsG2ORzbPI5Nvkcm3yOTT7HJp9j+zl3bhTUUNsv+NsVck16FeSObAodbPJCNnkhm7yQ7dfc0htL
7simGML2Ht9KVjYFEzY5H9tt/7aPX5uiCptcjU2uxiZXY5OrsSmqsCmqsCmqsMl72OQ9bJ/x1AuF
3k+KM2zyHjZ5D5vCC5uchu0P3NK7UuGFTU7D9me+7T0q72HDe9jwHja8hw3vYcN72PAeNryHDe9h
w3vY8B42vIcN72HDe9jwHja8h42p+YavsDEj33ARNlyEjYn4hmfAGnV4jXrDRbgrrG+deu0Ml5zh
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
4K66gpVaVGpRqUVFYd0IleatgG80bwNzA3OjOg2oDaiNtzee3IDaaN4GsAawBrBG83aT03ui90Pv
hd4H3Xz31i4yOUUmp8jkFJmcIpNTZHKKTE6RySkyOUWRhPIzGkaoiyIJRQamyMAURRKK7EqRXSmy
K0V2pciuFNmVIrtSZFeK7EqRXSmyK0UT/yJzUmROisxJkTkpMidF8/0iK1JkRYqsSJEVKc+phZq8
yJwUzeXL53zbG1fmpMiclD/xbW9z2ZUiu1KwKwW7UrArBbtSiM5DvxqmXy1YmoKlKd3ShJlZCyan
YHIKJqdgcgoT/4KlKViagqUpWJqCpSlYmoKlKViagqUpWJqCpSlYmoKlKViagqUpWJqCpSlYmoKl
KViagqUpWJqCpSlYmoKlKViawsS/YGAKlO9w2Ya5bAuhgMIRG7PbFkxOOSI/FX+8Gg/ggwcGtwfg
gx8H4B0lqMzlK9XxPL1Sr6BeQb2CegXtHNQiaOcAfBi8nwPmDObM0Fx5RQZ8Bnw2VN6ewZyBmnlF
9nP8Y6BmbHylUyrgM+Az4DNCksFcwFxo5wLUAtRCO3usrzy5ALUA1XOjyksZDKz3rFSbV7hg58qh
sNZKxtlDxixRh/wgh82/wbw1/5gGb1TQQmLZcJ+649w7bt7mJ9MsbvCKzDc/meq4pgdUXmrMhmqE
jS7wu/zkhmA35ioNzMcVjHQzeFq+0eDHXdT0+DHWup8YhE0klmMkadS9J3RYjrGlUfduU3sLQjyy
9mbrstRbqrdT9waqjGv9IXdOFNR49V/4e6GwUlB1qixx/dEbDYv8oyQk/wYiXH9vO/yvKNe3KEX7
t7fnvyhxWJVTW+XUVjm19d/QPut6V3K5ufVnXO5KLze3ys2tcnOr3NwqN7fKza1yc6vc3Co3t8rN
rXJzq9zcKje33vKqPrB8yN99hJHjW+X4Vjm+VY5vleNb5fhWOb5Vjm+V41vl+FY5vlXhkyp/t8rf
rYqaVLm5VW5uVdSkyrut8m4r3m3Fu614txXvthI1qfiyFV+2EjWpuLAVF7biwlZc2IoLW7sLG2Ze
gmdp/6qPvxB1QLi0X3EBqPJuwxRMFTe34uZW3NyKm1txcytubmVnJgxOYQanys5MqJwCKqeAymn/
DRXcqGD3iSs+cWVDJnRPAd1TmO6p4i5XNrOYAKpi26pN2GGRgrdjmnCgKw50tU0iQlOtHrjLUEuF
qaUqK6bmmKo40CabqvjN9ehB95c7JQDfV7ygqApTVFXCOfVo3uy7qE5QHTddpjXchm4xN0vQKa6X
q5PplExjZtrwQIiBz3RcpjEN3lCNJ1Od44F+DlAz1TkeiBxmanEUqE6mOpnqZKpT6IJCFxQQFhAW
EBYQFjc4ryiGyrsKUAtQC7UoICy+3XeBsKDm2fID5grmSoO7FhXwFfAV+XEFK7WotHNFWiqYK5gr
mCtKXVA0t09FHdxQFS1wi+EqEjqqeNIVT7riSVe8dvOYVVzqiktdcalNcVYJJlW85IqXXAkmVTzg
iktdcXwrjm//af9h/1n/ET9RFZr83Ya/2zu8KarU5Ms2RZWaDHCTAW4ywE1RpSZz27Rs0WRlm6xs
k5VtsrJNVrbJyjZZ2SYr22Rlm6xsk5VtsrJNVrYpmNQUTGqyqe1j4Kuxmoxrk3FtMq5NxrXJuDYZ
1/aMO3uTyco2Wdn2nG97S8rcNpnb9jnf9gaW3W2yu012t8nuNtndht1t3e4GRHVhorrWLXGYsa51
kxymrmvY5oZtbtjmhm1u2OZGClAT3jWMdMNIN5Y2zIXXCDg1bHM7bHPXzIZtbtjmRuSpYZIbJrlh
khsmuZEwzHR7jS2j5t1rh5Guvh3wG+C7AW4Y4IYBbocBroxulfZJgLfdrbRYohYJYLa7fTRp2N2G
3W3Y3Ybdbdjdht1th931YFSphe1upTq2u5V6JeoVSEJQi6ALAvC2u9V30aoB+AB8AD4AH4APwAdQ
A4QBsOAVGWAZYBlgGWCZVs3gyeCxvWx+DsAywDLAMsAywDLAbHKaYYCw8OTCVwWEBYQFhAWEBYSF
FmOw9LDjUcQDhscGrGM71NzabaW2eloHrWhWEOuF1aGCx4JdUaKGYDc/B4QWv+YnA9XiV92GfimY
3Ttu3gZmv8tPbuhOA/NRcHdTi8aY0KhOo3mxa5jAhglsmMB2hI6aG+HVXdtN/3C9Q39nfRR9+O5+
uenjB/r4oT7+RR//qo8f6ePH3IkWC8l2o3MUEPNtNz/l76v+/jd9/Ls+fqaPn+vjF/r4JbcMFEZ9
8R/6+E8uT/r7V/r4L338mm9n/f3f+nisj/f08b4+PtDHrT4+5M6FwqovPuLvTX9/zN+JQm/dJ/r4
LZczhd7ev9PHJ/r4VB9P9fFMH5/p4/f6eK6PF/p4qY/P9fEHffxRH3/Sx5/18T/66AZ4L1wpDBRG
CtPb57A+9zWd+5rOfU3nvqZzX9O5r+nc13Tuazr3NZ37ms59Tee+pnNf07mv6dzXdO5rejD7mt7h
GcHXoWA694mc+0TOfSLnPpFzn8i5T+TcJ3LuEzn3iZz7RM59Iuc+kXOfyLlP5Nwncu4TebP7RN41
YdKL2+d/uH3+6OWTT/eXHVRGnz1+/mK/Mg9vmjfp9V47f+FrX+8Z4xt4xvSmq/91tv+8Vmf9LYn6
y5v112/0128+vn38wd13/Tnf7Jmy1+r6t1GJ10c0viVERvPk/dtHf3z2/Hf7Sbn3H7//8U4Q9uz5
449ue+DyHt/XO+qk6V100ldolv/3//302dPbd0KG9gWb9PYhf2bsXyisFDYKiUJQyBQKdq1SaHxV
KbT+lVz3uyubCxilnqqavMT7FazThnXaJgpg3sC8gblPo8hmHGQz3r/CRIcfGFzxk6nXVihQi416
JcD3NQ+yIgdZkfevsLF2XAKEnY3U6ZHJgRzkQA5yIAc5kPe7QIgv012TveAn+4H0RRgzr8gGz7sy
tcjGTCMkOjfThu7lTC16JJGkyvtveGlnnCTN8n6Fzg3eFbRPphbuHXdK8GQ3rxszEFG3YaYRMkLr
Vs0u0LzZFaSXg7q75cNfUa/seiHYhVbNVNCN6abL1CtTr4zYFN9FBd0amQq6OhkdzEDNQHUtMlAN
zK8o6EUBYQFhAWEBYaHlC8AKwArACsAKwArACsAKwArAKsAqwCp4KngqeCp4KngqeCp4KngqeCp4
KngqeCp4KngaeBp4GngaeBoyXxBat1gDYXOf+gpQG1AbIurmbUiv25lJmudjfXq1FwT+4ntWCmqC
C2Lee+aCtBd/oWde9MRLf56a4vIDfoRuFHS+d95Fk8HLv/TLvSsvmhVeNCu8/Jhv1Z6Xn+jjp/rQ
1O+iqd9FU7+Lpn6XX3AnktoF4sJksNIPlbGny8VFs8LLf+pDk8GLJoOXX+vjv7mFmV2XoItmhZf3
uNwbU9PDi6aHl1u+7U37oT4+0sfH+tDU7/JbfWiid9FE76KJ3kUTvcszHkfPVPqqi+rlM/7unaTJ
4EWTwYsmg5eX/Kh3kGaFF80KL5oVXjQrvGhWeNGs8MKs8MKs8MKs8MKs8NJDrnthprBQWClsFBKF
oJApFAqVQgeMQ3DBIbh0h2AvgGcDz0a3Nwbi5rtQv4bwNN8O5g3M9hWan4xONaq8UYuNWmzUYqMW
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
RTPrRTPrRdy8/IpLso9F0otIehFJL5piL6LkRVPsRUy8iIkXTbEXCHiBgBcIeIGAFwh4gYAXZtYL
M+sFll1g2SVZ9oA62FPZaGx0Njgn6XZJun26vKLPFag7UHeg7kDdgboDdQfqDtQdqDtQk4AXCHiB
gBcIeOFLtDgNeuXpxQgnNpC5CowC+AL44ssBXwBffBXgC+AL4AvgC+AL4AvgC+AL3Rt0b4AnwBPg
CfAEeNAc6woz68XaYWGHSqk5vy8WbwvtKRIVPB7cs3tXNniWO/zsZ55egeoOPy8H2HkfX+VDYK5g
rmA2KVbk+TyHVjRa0Sy0XN7o3gb4Rvc2MDcwN7q3AbUBtQG1AbUBo/lZdG8DWAdYp3s7eDp4Ong6
eDp4Ong6eDp4Ong6eDp4Ong6eDp4BngGeAZ4BngGeAZ4BngGeAZ4BngGeEb8ddaEXQGTK2ByBUyu
gMkVMLkCJlfA5AqYXAGTK2ByBUyugMkVMLkCJlfA5AqY/A0HTN75QoPrl1Ctb/vL77G++BJw7O9A
1cB3rTbh/s6V9dveOUTru4boC214Y6UPf99SwAWve8HrXvC6V1m5VTZ31WmrTlrzFNnaVV73Kq97
lde9yute5XWv8rpXed2rvO5VXvcqr3v9DnyWN5f7vcr9XuV+r3K/V7nfq9zvVfGvVc72qrDXKh97
1ae8qzzqVR71Ko96lUe9yqNe5VGvCnKtcqRXBblWecurvOVV3vIqb3mVt7wqkrW+ohXZN/KWV3nL
q7zlVd7yKm95lbe8ylte5S2veMsr3vKKt7ziLa94yyve8oq3vOItr3jLK97ySkxqTSf5CWw6FSve
8oq3vOItr3jLK8Gplc9043RFGlB3oO64T817wLyDecd9arRrB/wO+B3wO+DTf17xn9f0n4/7+BGA
t9vceGgxZnqsAL4AtYCncMPiy30VUAtQC1ALUAtQC1AL3VtAGHRv0L0BngBPgCfAE+AJ8AR4AjwB
ngBPgCfAE+AJ8FTwVPBU8FTwVPBU8FTwVPBU8FTwVPBU8FTwVPBgA6xGp4g28FjYLFqWHwuAh9uj
3MDTwNPA08DTwNPA08DTwNPB08HTwdPB08HTwdPB08HTwdPB08HTwdPB08HTwdPBM8AzwDPAM8Az
wDPAM8AzwDPAM8AzwDOYlbgPB8AGwJI80takpcnJeBqXNC1pWDaRxyby2EQem8hjE3lsIo9N5LGJ
PDaRxyby2CCPHNVN5LGJPDaRxyby2EQe2/e5JLGKRTaxyEbIJoViE51sopPtA45my8Qrm3hlE69s
4pVNvLKJV7afcSXhxRStTUyziWk2Mc0mptnENJuYZhPTbArHbCKYTQSziWA2EcwmgtlEMJsIZhPB
bBDMBsFsEMwGwWwQzAbBbBDMBsFsEMwGwWwQzEYUZoNXNnhlg1c2eGWDVzZiLhssshFz2SCPjawP
wau7QCE3ojBbsshxyHcG6g7UHZnufiiYdzDvYN7BXHhW4c4FLuzEoTuYHUTvgC+QYqdXiw95D60o
9HMBfCFE3SHO7nPcHKLpnZYW2uXAdvfJ+AHdh2hy8QZtD9oetN3Ra8ePh8+h7QO6HZw8GNygo4JO
CAZ3+BC94VDpIOw16LGgf4L+Gb4KgQw6IWjpoOuClgYtrbSi0tKKkFTAOzw06PBBhzswZ7s56OeB
aFXAV6BW8FSaU31D30eOTj3Fr9KuzB1Z8WacRJK8kDt5IY9zaEXjPo2rmg8xBI3RaWAWpx73mdjw
ORt7fPLOHlqK3bWJtTWFdzcbR9S8nupgfbd25xLPempKpxVWxvzUoeKlbacOdoBZm7rv45OBmipT
cfKcG287dafT4cMdTgMHmAcdbnWwzA86M99AVjS38iK08iaq8iaqnlpp4R+MRdA/4WcxKMEIWgct
xoMGDoMHRgDM6mnJDD/Uj9AN0/KmG5/Gdvcdc7dvQzenp5oWeP8qu9XXu7yHXd7D/g2O5tlyI3a5
EbvciF1uxC43YpcbsX8nr6x0Z6r+/l3+pw/zzWrFCd7lauxyNXa5GrtcjV3z1P0HXIIQpvrv8jn2
H7Fb3bnL59jlc+wfcFTiucvn2OVz7PI5dvkcu3yOXT7H/jOuZCzSpOw/5/9gg/5OT3yXO7LLHdnl
juxyR3a5I/uvuCTHQn7JLr9k//zNflN2BTWuoMYV1LiCGldQ4wpqXEGNK6hxBTWuoMYV1LiCGldQ
4wpqXEGNK6jxJQU13vZ3X+c3JcfOj95/9cuXr19/2Z9HOdjyu56mXnj937phn6bHF1+tfPzBy/d+
8+mrnx91xD54/4OPXr73+vNPX73/05cZu/nKF9f+5TmXjkFKlZCfuMtP3H+TQ5iTrF0O4y6HcZfD
uOMw7jiMOw7jjsO44zDuOIw7DuOOw7inw3g8zjcsbAQblY3GRmcDm9fQxYYuNmDs6G8Dz86zdsDv
vgqoO1awgXn35T7Hh2jO7uZg83ISslOOpMJ1O/5mhfR2/M0df3P/O1u/5kM5asQxKtOHCkO6ZgSF
IY5DvophKvRPwQIli7o0g+svuMiCyyO4LgL1DXbqG+yub+DCBpQy2CllsLuUQYWxXdOAggW7Cxa4
UoFLFFCN4LjcV4EwQBh0ePcNgRpADbqu+1lghjBw/Zzh3rnZnYCdLOvHfYBavQExdm/Qq9UbgK+A
xyoTGCE59r6fbl33VWBGo0+3rnND61cDvDWl8yyrjDXF6mAtaDzUgt3cz8hzB2rzHkTCYty8B/AW
UcuhZcOj3I0Zvei+CvB264bvQyvc8x31HH4EzXFvdHrezXErOpg79megaAORsKM3ADaQ+UH3Dtp1
XuWTfQ7gBzJvH3DQnMGg2Ik799CcwVic5/gQDRw0MEM3qeSp4qng9jzPO+YBxiRvY4eUu8lTa5in
8jX+v7Ohbihf53/1RlEIqMh3K/Ldiny3It+tyHcr8t2KliIVRX6K3LEid6zIHStyx4rcsaKAT5Hz
VfTaoMjnKj8GjYak6P1Bkc9V5HMV+VxFPleRz1U+5sqFDY1Y0RuF8nN2a7SKPKwiD6v8kqMSzSJX
q8jVKor8FHlYRR5WUeSn/Jorc/xE7UUhoCJGL//JSTm6ovYCtReovUDtBWovSe3HxZWNxqGFjZVD
nT0bGzsbhXMGe4KNyobv7PtwcsaLCkuRGnOfxtyn8GaiQTAFsm8wTSGmVOD4AscXOL7A8QWOb0yU
GvxUCCUV3kwUGL3A6IUIUmG5UoPVCqGkYgVh5l6sGVYJS+MpXAHU4o2NQ4AvBs8QICOWA4i8nGPq
ESzGzMAFVwXgw2PBfdzz7vCz6xobPMKd6W5xu9wKgz9hAKwaRrCHzgxktRoPDTyfjmj5Pr7cV1Va
URmLCuYK5grmCuYK5kqHV7qu0lEVPBU8FTwNPA08DTwNPA08DTwNPA08DTwNPA08DTwNPA08mTKj
MdVtZ9sbCDuq597oQO3oYEVW3T8d8J0bdl8O+O6TkefqDeTZvdq9h+Z0hMT93H3Ie2hpd0u9x6Ll
QzR50OTmDZo8vMEwDbrOAzdo8qDJgyYPmjwYr8F4DZrTfEPfh3YNRL1hqC0JkDOsnLGY1GPrSMN6
N7o6BSZ1JuiMFJ9UnNArnIDaU6ZC0ZgQkYeIPETkISIPEXn8E1caST5Q1B7fYbcB5JNF9iGyD5F9
iOxDZB8i+xDZh8g+RPYhsg8FWEIcH+L4EMeHOD7E8SGOD8VVQoweenMTIvIQkYdCJSH+DvF3iL/j
VbYind4QkYeIPDQ1D/F3iL9D/B2akYdoO6DtgLYD2g5oO5iRByQdzMgDbg64OZiIB5QcUHJAyQEl
B5QcUHIwyQ4m2cErnIBuA7oN6Dag24Bug/c0TxvljedZuoIkV5DkCpJcQZIrSHIFSa4gyRUkuYIk
V5DkCpJcQZIrSHIFSa4gyRUkeReDJG/7G5vjrL//8atPf/P6+ITl01cf//TjX/79B68+ff36Pf3z
3qc//tnLDz5//fc/efX+Jy+/uOuXGtj5c1C895uPP//ovc8/evnLLx+PA01/Ts/8rtH84+/1P+38
E5Ly/GUd+bbgvxuS+Dc58n9oneBhhnFeu60W1m+HkLrtGGZwxwzap++YuIJn0LF1BcNYeEThhsVX
Qdsdh6ljGAumssDQ9oo6prJgPIv3YMwLzSkY84IL3n0OzSlYdU+rOpcHrQhaEbgjnTsHzQnaHoAP
mhNADaDikDC1IFXp7lSlTkDq9J4k6tydqJNUmbtTZZIhcydD5u4MmeR73J3v0dkdncKRHIy7czA6
0aIXc3o9pNcasmpw96pBrxH0QkCv5PO6PS/X8yIkL/nxQh6v2fHynLCrRFAt7BzZv8Apj1PCLc8W
WsvqKX7c2XLYAWaps/xYSCwJ5+UA6wAbABsAGwAbABsAGwAbdNQAzwDPAM8AzwDPAM+wzONFnniE
sOJlJ74c/IoRGBiKRFu5Y4JOiUh5qHKLqz7grsS3BtPgbFeVf1zlH9dvcVSNrXKUqxzlqohXlVtc
FfGq3+USjEN2S5VbXP+F3eqkKv+4yj+u8o+r/OMq/7jKP67yj6v84yr/uMo/rvKPq/zjKv+4yj+u
xMByNKoc5SpHucpRrnKUqxzlKke5fsaV2fXymKsiXlWOcpWjXOUoVznKVY5ylaNc5ShXOcoVR7ni
KFcc5YqjXHGUK45yxVGuOMqVV1cNqap4zBWPueIxVzzmisdc8Zgr76caM7OK61xxnesZskI68aEr
PnRlrViHYCrOdMWZrjjTlUhVhd4qkaqarHbc584G/bP76YDPkFU9H1rA7KsKUAtQC72aHNafnQPU
AtQC1ALUAtRCjxWAFYAFwAJgAbAAWPDQAFgALOi6AE+AJ8AT4AnwBHgCPAGeCp4Knurundng6RWE
+V6pE9JjUcXuRRUsozjOAWr1BpgrmDFjcJiXQLCw4bjPzoavohWNVuRa+H4OSqN7G+Ab3dvA3MDc
jBkYDcwNzI2nNz/CJ4O50c8NhB2EnX7uAOsA6wDrAOsA6/RzB08HT4aR+il1HWAdYN2HANYBBo/A
HP0UWijE3AHh+VVRNQdAeH7FU23LbWJtMU/TZNuSBiQ7N7s2Oza7NTs1u7SJupqoqymQ00RUTUTV
FMhp4qf2bdqXNxBRNRFV+04eTQVtCts08VNT2KaJlppoqYmWmmipiZaaaKmJlppoqYmWmmipiZaa
aKmJlppoqSls08RGTWzUxEZNbNTERk1s1BS2aSKhJhJqIqEmEmoioSYSaiKhJhJqIqEmEmqQUIOE
GiTUIKEGCTVIqEFCDRJqkFDHzDVIqEFCDRJqkFCDhBrfT3QWzXWMYyOQ03i30jGXDVpqRHQaX0t0
LGlLWjr2AH73Bq3YacXuVmAXcmFdx+w2GKvBWA3GaszDGvzU4KcGP/mdIy8bd142Ho/gzoUGFlpR
4NTgoQXwBfA2lwGe4hv6Kh8CagEqWsIcq8Mi7RzTALNHx2PhDnc/BwgDhO5DtzRfjvQkqmPDMIAa
+AGVPgww++QK5grUcwPMFcwVzBXMFczmMJPieRWScF5Oh5/3oV2VDq+0otKZFfAVma8MbqXHGi01
vZ1P90N5VjNUOjMnB/18aKMVDfANzM1PZwgM7IRBtxiPH3remVFu+xtPrHQFTK6AyRUwuQImV8Dk
CphcAZMrYHIFTK6AyRUwuQImV8DkCphcAZMrYPKuB0ze9WJ96+1LKLR3/8P3+B/TOb16+dmnrz7/
EgBMX3Yaqj/usY8/DP33rI/c+bL1EB2M9SmLSLCFslklUKSGOTgFDo3CU+Cb6Y4TRzxtdzzN0TOH
yBwZI9i1E+w67mPMKHZHIRvKdgIDT/fT0dXuy2lOR0U76tdQv476ddo1aJebM7xBuwZ04pYOGjjg
Qrd90NJBPw96dWBoOsPk/hn0hjtqMHDd96GBgwYOGpgurf3Y7iepm7KTsos63cpu9W72Sf8qR/Ns
uYdd7mGXe9jlHna5h13uYVf4ov8TNxDOLvewK47R5RV2eYVdXmGXV9jlFXZ5hV1eYf8ht3NrE6j8
xP5+7vZQ5gj2H/M/ltUDORiAdMK7vMsu77LLu+zyLvtPORcNGsjwQGI9sh5HD1+OWv+I/7NTPub/
7HzlBBzkQR94M10ObP8FuyVoXZ5slyfbP+WoBLPLpe1yabtc2i6Xtsul7XJp+39w5cyGJLD/hv8l
f/23/J+yJre3y+3tuL0dt7fj9vZ0e49LdzYKG8E5fnxlz8LGysbGOY09vmFnY3CosOFH+M4tT06/
bLASaOAsD0LegwVAA3es42J34jydOM8gAefA2x14uwNPrRMC6vjanRDQwInrhIA6IaBOCGjgrnZ8
7Y6v3QkBdRzqjkPdcag7IaDBGqOBT9pZwT3wHAfOYMfp7jjdjkR1i6kF0zJ4ilSlf6qvYnALHVV9
H5pTaI6lpdJRlUGp9E8mWh44nv0UpEKTq5/FoFQ/giZXui4XkA0cz35KS+XOQXMC8EEnWGyqn47Y
WJAsLZXuDcY06IRAwhs9byGxJITxMJThZ3FnD0FD1BuYq/fQvQ3wDagenUoDK6PsIXDPu58bDWy0
q9Ku6nZ5D+1yh7ufK+1yH7rH3C2NsXC7GlDP5jDcbteJkKc3gweGEZ6X+2SfA9TGcDf0qwG+Ab4h
Wt7TaUWnFR1D1Ghppzmdnu+0otPznX7GIcATGDhw49kjUKtOj3WU6HwW7YLLCX+dLEz4C949LqfD
jXDwiIGMGfOgOcMnMyhuzvAG7RqMxWAsBmMB4/IqaOBZDtxHWPfYo8uH+0J3yZvlrZKzk6qHGj6+
yiWMdPbRkMM0vs7uvEye05DnNL7FUYRhMEDpvgw5VUNO1VCobciXGt/hXMQk44vju/yvXh3f4391
7pC/NeRvDflbQ/7WkL81fsglDEP2/pC/Nd5nt8ZiKEA35EKNDzmqrh7ypYZ8qaFI3VCkbihSNxSp
Gz/nSsaCQVDsbnzCbvqbYZEPNBTNG3J9hlyfIddnvOaSL8biyRgmfw05Q+PX7JacDgX6hgJ947cc
zU6W6zPk+gxcn4HrM3B9BhG/kf7NcY+JjZlDCxsrGxvn+NDORmEj2KhsNDbcyJWNjUMpu+myHIe4
804rdlohv+Q4h4fuNGcH/A7CHfA7z9p958J9gg0w794DeHkqx57OHh/yHlqR7sjwcOYAHpeP3Aif
w6B4CMJX0Rx3uLsu6A33oXvM3VIYC7fLzSmMRdCZQR+eCHl6MCgBDCE89tC9xhM0xzcMZCyQnwDq
eUO3C/BBu86TGa+gXecGDQwaGAxKuDmcU92cxgYnV7dr/LlJvB31eSOpvP+M4M//pks8FH9UEO93
RSv/+8X679/1379/9PL9D5+O5X3+hMWRf1RU791C9HjnEN3eEKI/WACRieCTabD5sLE4D2FMK6a8
Yvs0Czk2sJgVQ1kxlOfJ2L6KfTyvwoZWzOK5gemsmMVqk4dZrLZ0mEVf1SCk5nZxn4Zxb2BuYG6Q
RANqA2qjFZqgHDeERI2n+ekwrhE2wDefDGkZfGMsGpTZ4OBOczqHOsPUvMF4uTndexiLxsA1KMrt
6r6KTug+mUHpvgr2avRq933oHze5+2Qoym0/G0iPnS315fQYPj6zItz54ypGuTO4w3vohI4Yd3qj
M8rDVyESuPb26dNTP66iE9xkfPf01o9D9NjwBrIx3FLvoaX42ulBlxdFP6Gfqh868eyyPECndp/h
PUNn5M9X9fM1/XxdP9/QzzfzEnetOrK8+JZ+/pHdd/3/bf5/6P9/4v9J//+zfr6jn+/q53v6+Rf9
/Kt+/o0rZ/3/ff38QD8/1M+POGnR/+/r58f6+UA/H+rnpX5+wiWr/v+pfj7Sz8cc3fT/z/Tzc/38
gqO7/v9EP7/Uz6f6+Uw/v9LPK/281s/n+vm1fv5DP7/Rz2/185/6+S/95ETn2Liz8WBjYgMJHqjW
CA4tbCCmo7JnY2Nnw5c39iBUiGBOfY4Nn+NDKU9MdG45RTg2AL97D63Q1OfYM7Exc8jn0NLdh2iX
5kDHVQsbK4dooGZFxyHvKWzQUTkHuuVU49hDA3cauNNAzYEKU9ry4myg2nXcp7DBI84G0odq6bGH
ZxXa5VYYs4EVwOfc7pYznvLi2Z19w845Bs9G0IpgUM49NCcYgmAIgiEIoAZQcw50e3ZD3wfwQbcE
HXXemY4KWhG0ImhgAL4iY8ZTGYvKQyvgK4+oPhnwFfCVfq5ArfRzBVgFWAVYBVgFWKMPG3gaeBp4
GngaeBp4GngaeBp4Gnga4x7IvIeggTDJ9ZaDUmDZAssWyPU4h0d0DxzP6oDvgO+A74DvhmFgwOio
p4eyW0iQzJzF3nJMC3xZIMVidrvhmN5wTG/nKHc/1M+iyTBe8liBx47LaQ4UZu4yaZmDzDNmDxNF
csJxQ5+MqFvYhlvhy8Fsk5uW9qaW3yR6N6xTSulNZ9/yXLXuJiK/ichvIvKbiPz2Tf2Itm//qJ9v
6+ef9CNuvombb+Lmm7j5Jm6+iZtv/wYatznRiqRvIumbSPr2I/2Im28/5pJsmUj6JpK+veSo+uX2
E/2IpG8fcTSb/7F+RNI3kfTtF/oRN9/EzbdPuRKhS329fZb/p9refsX/0t6b+Psm/r6Jv2/i75v4
+/YbLkEiU89vYvTbf7Jb4nQTtd+g9hvUfoPab1D7Lan92FjYWNnY2NjZKGwEG5WNxkZnA61rPGJ/
wQbAdoDtANsBtkNdDeVvANuBam5uQN29AeYdJWnIUvMeWrF7g+bsNGenObubg6o0zimYubSAdz9A
MnDX7e+6+V2X3fPcPOWreYlMZrlLx+7Ssbt07C4du0vH7tKxu3TsLh27S8fu0rG7dOwuHbtLx+7S
sfu/6UcadZdG3aVR9x+BRgN1l2rd5fbepVF3adRdbu9dinT/KVdqZO9ye+9SpLsU6S5FukuR7lKk
uxTpLif3Lif3Lif3LiW5S0nuUpK7lOT+H288e/31ddb1ddb1ddb1ddb1ddb1ddb1ddb1ddb1ddb1
ddb1ddb1ddb1ddb1ddb1ddb1dda7/nXWW1x4+Mfkdbq+F7m+F7m+F7m+F7m+F7m+F7m+F7m+F7m+
F7m+F7m+F7m+F7m+F7m+F7m+F7m+F/lLvxf531XI712ryvcGy7m9IzXx/vdVo3vxD096olngXZxx
1yzwLqq4QxV3qOIOVdyhijtUcYcq7lDFnXD7jejHDSfuDnncmfzdcOvusMgdFrknixzn+BGdjTSU
sMgdFrnDIndY5J4sctwHhpBXeByCVzrAdp6105zdJ/ucwgaYdzDvxuxzwLyD2QwhN7M8dOoj/4NR
0sF8iCEeus1DN3nI+XqIGB4ihsc3uDIvEUM8xBAPMcRDDPEQQzzEEA8xxEMM8RBDPMQQj3/lrjgz
6d4+xBmP7+fudHYfIo+HyOMBeWQk5yHyeIg8HiKPh8jjIfJ4iDwekMfA0UlP+YFflg7z42P+lyg9
xCsP8cpDvPIQrzzEKw/xykO88hCvPMQrD/HKQ7zyEK885Hw9pDYPqc1DavOQ2jxQmwdq80BtHqjN
A7V5oDYP1OaBh/VASR54WA9044FuPPCwHqjEA5V4oBKPM/oxcJoGz9pBuKOig6fvQLVueK4xwLP7
hgDbfWffh1bsvor5yEDEB61wPGTQnFSkO1GdO0GPBxr1wAu7Ewa5Z9Dj6d/UsTtBjzuxjklopmC3
gE+V/4V/8uPVjEnPnPzEvI30cJIeTtLD6Ruc5Ido2KZv8r/v3tnQ6E3S1Um6OklXJ+nqJF2dvpOX
BE1U/KNM0t7pe+xWf01S40mO3vRvHJVoTvL4JintJKWdNIeapKuTdHX6gCsnNiTL04f8v7CxspGd
KcWepNiTpleTnMFJzuD0My7J/pb2TtLe6ROOZrdLjSep8SQ1nqTGk9R4khpPUuNJajxJjSep8SQ1
nqTGk9R4Qo0n1HhKNT4eH+yZ2JjZWNhY2djY2NkobPg+lY3GRmcjJQJ9nqC4Ce2doLgJpZ0IWU7w
2IRmTmjmhGZOaOYEj03w2MSUZ0LZJuhrIhw56+JZl866cNZlM2IdqFUGZGbdZP4qu3X3WfozS39m
9CfDb7N4bJZuzNKNWboxSzdm6caMblR0I8N083f5/84GY5oRmVmkN0tbZmnLLIqbpSTzD7hEnTxL
W2ZpyyxtmaUts5htFrPNUoBZCjBLAWYpwCwFmMVas+R+ltzPYq1Z4j5L3GeJ+yxxn18BSgM+S+5n
yf0suZ8l97Pkfv4tl0g0ZinALAWYUYAZBZjhsRm5n5H7GbmfkfsZuZ+R+xm5n5H7GbmfkfsZuZ+R
+xm5n+GxO+GoGQWYUYAZBZhRgBkFmFGAGQWYUYAZBZhRgBkFmFGAGQWYUYAZBVh08aJLF1246LJF
Fy26ZBFLLJLyRVK+aBq/SLgXCfci4V4k3IuEe5FwL3LSFpn5RfK6/At9s7ORsCTBC/Y+A2CLRHmR
vV9+yNFEL1FeJMqLRHmRKC8S5UWivPyEK6GyjE0vP+X/bPtH+X+GvJaP+V9StkjuF8n9IrlfsPcN
dc0g1yJNWKQJizRhkSYsMvzLay6RSCzShEWasEgTFmnCIgZYpACLFGBBARYUYEEBllSA4+4ze7yx
sLGysbGxs1HYwDVovqqy0djobGRXohILVLCgCQuasKAJC5qwoAkLmrCgCQuasKAJC5qwoAkLmrCk
JhyYfR+ApUqsusuqe6y6w6rrV1+th6+6dpVurF/jqBCtUpJVSrLiOOVLiVXaskpbVmnLKm1ZpS2r
tGXF8Dd3eKKS/qyy96u0ZZW9X6Ukq5RklZlfpRurdGOVbqzSjVW6sUo3Vpn5VWZ+lZlfZeZXifsq
cV8l7qvM/PrLLz+V9ZcbjvorLbm6whFXOOIKR1zhiCsccYUjrnDEFY64whFXOOIKR1zhiCsccYUj
rnDE2wtHvAtLif7XfHZx+4enLpWhWGUoVhmKVYZiFVOusg+r7MMq+7D+BmlJ4ZWhWGUoVhmKFUOx
YijW01VsFvfBoYkNpiT5tdmK6VgxHSsxlDvfgK3YkBUbssKmK6ZjxXSsmI6VzwDvrCC686HvijFZ
MSYr3+rfidesWJUVq7JiVVasyopVWdOqHJf7HDDvYN7BvIN5B/MO5p0eS6uSDc7mZmOzqdnQtJCb
jMkmot1kQzbZkA0b0pmmKBxUNhmTTcZkkzHZZEw2GZNNxmQT9W4yHZtMxybTscl0bDIdm0zHJtOx
yXRsMh2bTMcm07HJdGwyHZtMxybTscl0bDIdm0zHJtOxyXRsMh2beHGTuG8S903ivkncN3gxg1+b
5H6T3G+S+028uEncN4n7JnHfEPcNcd/gxQ3h3qDDDZnekOkNOtwQ5Q1R3hDlDVHeEOUNUd5gwQ3B
3RDcDRbckNeNmN+dwN6G4G4I7obgbtDhhrxuyOuGvG7I64a8bsjrhrxuyGtenJfmhXlZXpSX7JLX
XfK6S153yesux3CXdO6Szl3Suf8TrctHSUx3iekuMd0lprvEdJeY7hLTXWK6S0x3iekuMd0lprvE
dJeY7kzyM2a5S1533MAMVu54fxmC3CXBuyR4lwTvkuBdErxLgndJ8C4J3iXBuyR4lwTvMti7BHeX
4O4S3F2Cu0twdwnuLsHdEdwdwd0R3B3B3RHcHcHdEdwdwd0R3B3B3RHcHcHdEdwdwd2f2WA4ISOo
O6K8n3Oc4T1A3YFqmR40ZwfzDuYdzDuYdzAjlsTh7kRW70RWd6R8R8r30+kbfrofSitS7jMm5qjX
wNAO4kEZZMxwmKNgud7OwbCMMxb6LaOMRdpSpC1F2lKkLUXaUqQt5R+5kvhDRhrLt/lfz3oQXnyw
8P7B0rUiBihSrSLVKlKt8j3OndhQpxQpW/lXdmtcirSuSOvKDziqwSpSvyL1K1K/IvUrUr8iligv
uXJjI7vuJ/xf2Ag2srNFKUUKWaSQRQpZpJDlF1ySnSXNLNLM8ilHJdflM/6XGJRf5f+5yqxIaYuU
tkhpi5S2SGmLlLb8lisl10XaW6S9Be0tqb3HiXf2PNiY2JjZWNhY2djY2NkobAQblY3GRmcj24nS
FvinoKsFXS34SwUVLahoQUULKlpQ0YKKFminoJAFhSzQTkH9CuqXsdGMUeYSrcxc8GA93oP1eBl5
y8VZD4K5IR0L6Vh8naMCH1K2kLKFlC1ETSFqCqlN/DNXrmyotfEd/t/ZQGRBLh0L0VdIo0L0FVKk
+D6XVDbUPSFCix+yO1sp1QqpVvyYo+rBkI6FdCzEbCFPLKQ2IbWJj/PKjC8+iC/Gz/hfkhA/538J
RIjrQhoV0qgQ14W4LtCfDEiG9CekP/E5R3OcpEghRQopUoj9QvoT0p9AfwL2C9QmUJtAbQK1CdQm
UJtItTkw+JzCRrBR2WhsdDayt1k//CD+GChSoEjBe6kHMb9AowKNCjQq0KhAowKNCjQq0KhAowKN
CjQq0KhAozKUlqGziqzlCtJcpZZxrwx3VelPlf5U9Kci49xLilS/yW6BqtKoKo2q3+ZoPkmqVcVI
VYxUpS1V2lKlLRX+qdAc8P4t/89oXEWRMhpXpT9VjFSlNlVqU8VI9QMu0VhVqU2V2lSIKAN2VfpT
pT/14zf7qcMVArhCAFcI4AoBXCGAKwRwhQCuEMAVArhCAFcI4AoBXCGAKwRwhQDeUgjgbScM+YOV
fuev/Oz1l78w5A8+dvm9j/3j7rF+CffYvuzmv2v1t+d3rrb08s4h2t45ROu7UH/7xT98YdjEQ1Wu
c5XrXMXvVfxexe9V/F7F71Vz2Spar6L1Kre4/hqrKW6rovUqWq+i9Spar6L1Cq1XaL1C6xVar9B6
hdYrtF6h9Yo3XGHzCptX2LzC5hU2r7B5xRuukHiFxCvecIW7K9xd4e4Kd1e4u8LdFe6ucHeFuysL
RB58QVkh8QqJV1aBPPhiMT8fzMxjDTbPLxIz0JtpxDJo28TmTWzeNONs3+BK/CHuDJvziG/xv2A3
0XqTo9zE5k1s3sTm7btcknBE60203uQENznBTbPJJspuouwmym6i7CbKbnJwm5i6iambHNz2U56Y
LRdTN00Qm6S8ScqbpLxJypukvEnKm6S8ScrbK+7K/CJj3U1y33BnM7zd5M42yX37DUclSU0K0KQA
TQrQUICGAjQUoPGl7oNViA9C2o3o+4ModUvdOPYs7FnZ2NjY2ShsBBtIUvdVjY3ORsoT2tLQloa2
NLSloS0NbWloS0NbGtrS0JaGtjS0paEtDU+3oSSNxVMPgsENlzcDihnly6heBvMy42b3tXq0Sq4V
VVorHZeXO8nTVcm1opJrRSXXikquFZVcK6q0VlRprajSWlGltaJKa0WV1ooqrRVVWiuqtFZUaa2o
rlpRXbWiKmpFFdKKKqQVVUgrHVeVxspVVa2z0pnq0QfSBBU0K51QCV0jlVBBs6KCZkV1zIrqmBXV
MSuqY3ZciWuewcCOSmQEsMMJGe1TrbOiymZFBc2K6pgV1TEr1DE7LrqzxxsPNtCN4T0zGwsbzNpz
mSXlywpVywo1ygo1ygo1ygo1ygrVxo77+BHZWjSBkmKFkmLHycDYQbgDY+c+u89Z2SAmNgwezDuY
d+Zhw3sAvwPe3DJoYKoNlcQKlcRKnpHxycz3Onw9ITgOuDPUPQNFynWPqslTVIGnqAJPUeGdosI7
RYV3iqrrFFXXKaquU1Rdp6i6TlEtnaISOkWVc4oq5xRVzimqnFNUOaeock5RnZyiOjlF5XGKyuMU
lccpqopTVBWnqCpOUVWcoqo4RVVxiqriFNXAKaqBU1Txpk6EXicWd6oGTlENnGO3Rl/FcIqK4Ry7
JzZmNiQLqpNTVBWnqCpOUTGcomI4JYvhTFRImVjyqao4x/8SDJXHOf7PIYZtqJNTqJNTqJNTqJNT
qIpzXB5sVA6tbGwcauzZ2fBDfXlnj+/jq3xo5EaqFlVxClVxjvuM3Aif82CPT6aDg5butCu1joI5
hYI5hYI5xQVzJkKOEyFHCuYU18mZCDtSJ6dQJ6dQJ+c4h4dK60K1EkK1EkK1EkK1EkKVEeKFr2Wc
s5ShCiIc/+9sGG7e72v6UQEs1UoI1UoIVUaIrIwwEX6cMvwYKpEQqowQKogQKogQKogQKogQKogQ
KogQKogQqoMQqoMQqoMQqoMQKn8QKn8QKn8QKn8QKn8QWf5gogSiyh+Eyh+Eyh+Eqh6Eqh6Eqh6E
ih2Eih2Eih2Eih2Eih2Eih2Eih2Eih2Eih2Eih2Eih2Eih2Eih2Eih0ExQ6CYgdBsYOg2EFQ7CAo
bRCUNggqGgQVDYKKBkEhg6B+QVC/IKhfcHQJApGlBKloEK5oMFFKkEIG8eJUm+oNMO/eAPwO+B3w
O+B3wO9IXUXHqq9CDiu2oyK71ZfT0p2W7rQ0619SyCAoZHBc7oeqx275g21RTDKUhzyUfjxu9FzN
3bqt8pCH8pCH8pCH8pCH8pCH8pAfVzY2hO2G2tS817fzfwUjQ7nKQ7nKQ7nKQ7nKQ7nKQ7nKj0s0
REpaHkpaHrfvv/FkKldA4AoIXAGBKyBwBQSugMAVELgCAldA4AoIXAGBKyBwBQSugMAVEHj7AYF3
4Xujjz94+d5vPn318yMNygfvf/DRy/def/7pq/d/+vLZlw4KMeRpX/Y3OP/tO4s/B4168fV/68Z9
mh5/4Ia6zVe+uPYvz+dyDLIshWrQhWrQhWrQHUelgSpGFypGF6pBF6pBF6pBFyo9Fyo9d1yJ8inc
ElmMbqIA2kQR5SmjA6HydKHydKHydKHydKHydHHDrVFYIFSnLlSVLlSMLlSDLlSDLlSDLlSDLlSD
LlSDLlRxLlRxLlRoLig0FxSaCwrNBYXmgkJzQaG5oNBcUGguKDQXFJoLCs0FheaCQnNBoblwobmJ
wm5ThjqCinNBxbnjEPfZgboD1R5G4xE7mHcw72DewbyDeQfzjglrWKs2OAQ1dwPDHHX6cKddO1el
h6GycqFqcnH3rWABRRVC9eXizsMVYwgVmgsVmgvVlzuOqokqNBcqNBcqNBcqNBcqNBcqNBcqNHdc
qT5RxblQxblQxblQxbnjJPWXSs+FSs+FSs+FSs+FSs+FSs8dl6hnVYMuVHouVHouVHouVHouVHou
VHouVHouVHEuVHEuVHEuVHEuVHEuVHEuVHEuVHEuVHEuVHEuVHEuVHHuAKVRVum5UOm5uEs3lMo6
lMo67vjsPYdLSkJO6yCndZDTOshpHeS0jvvpqvdgz8rGxsbORmHDJ1c2GhudjZQDdIPE1UHi6iBx
dZC4OkhTHWSnDrJTB9mp4366EZ2n7wDbAbb7EMB2gO0AS3FXUupQUupQUupQLupQLupQLupQLupQ
LupQLupQLupQCupQCupQCupQCupQCupQCupQCupQCupQCup4QO3depqPligrBfWxO6FIppWCOh7I
9MgmSaaVgjqUgjqUgjqUgjqUgjoeeM0Dw6XYSTygC8VJ4gFLKCYSykUdSkEdSkEdSkEdSkEdDzhB
4Y9QLupQLupQLurjqEZaSalDSalDSamPoxp+ZacOZacOZacOZacOZacOZacOslMH2amD7NRBduog
O3U8TgVQuCRIUx2kqQ7SVAdpqoM01UGa6uNyn9PY6GzkkKEJ5KsOslMH2amDpNRBUuogBXWQeTrI
PB1kng4yTweZp4M800F66SCZdJBMOh6nj6xITkz5o3soUXQoP3QoLXRMcOCAfEaeJt2YsPcjL5OS
KFF0ZFroKWM+oSTQoSTQoSTQoSTQoSTQoSTQoZTPT9OFDJvMGTaJTAI9Z7wklAT6+F8dqWzQoWzQ
oSTQoSTQoSTQoSTQxyXqcmWDDmWDjswGPWecJZQEOpTpOZTp+TiqwVHK51DK51DK51DK51Cm51Cm
58hMz3PGYEKZnkOZnkOZnkOZnkOZnkOZnkOZnkOZnkOZnkOZnkOZno+77mzkoEpJlPv52J2DjLaQ
BDqcBHrOqE2QBDpIAh0kgQ6SQAdJoIMk0EES6OM+jY3OIT/dj/A5gz0+mT2pP+SHDvJDB/mhg/zQ
QX7oID90kB86yA8d5IcO8kMH+aGD/NBBfuggP3SQHzrIDx3KDx3KDx3KDx3KDx3KDx3KBh3KBh1K
Ah1KAh1KAh3K/RzK/RzK/RzK/RzK/fzUOZkJfc5wVSgbdGQ26DljVqEk0KFMzzGjEgpJhVI+h1I+
h1I+h1I+hzI9hzI9hzI9H1dObKhXlfv5+F+dO6MkijiFskGHskGHskGHskGHskGHskEfl2xsaDSU
HzqUH/rYnd0rtVGi6FCi6ONosJH9Lv1R6uhQ6uhQ6uhQxuhQxujjEmQuQ0bKIX38P3Kj0t8ZHVF6
6VB66VB66VBW6VBW6SCr9HHRnY0Hh+5soGMKhQQJp4OE00HC6eMc71nZ2NjY2ShsBBuVDZpZfUPf
p7OHQajYjeobpuyifqSpDrJTB9mpg+zUx+XA2AGfekia6iBNdZCmOkhTHaSpDtJUB2mqgzTVQZrq
IE11KE11KE11KE11KE11KE11KE11KE11KE31ATbPlUIqX3UoX3UoX3UoX3Us337jeV2uUMAVCrhC
AVco4AoFXKGAKxRwhQKuUMAVCrhCAVco4AoFXKGAKxTwNkMBb/t7i3enAu/fXCmdPxHwe7/5+POP
3vv8o5e/fHc68f/B9LfUnV9+J/6hpUuhCnOhCnOhCnOhCnOhCnOhCnOhenKhenKhMnKhMnKhMnKh
6nGh6nGh6nGh6nGh6nGh6nGh6nGhWnGhEnGhynChgnChgnChgnChgnCh8m+h8m+h8m+HdbL9TiMm
UlNBuGN3GjWxmwrCxQKX5Zdmqgx3/C/jrRJxoRJxoRJxoRJxsZwU1qCwjDdSNO7Yg6lXHPHYWDjH
J09szGz4nJUNqCfDjjNhRwrLxXK6ks17go3KBt3UCns6G9lDUBgV5oIKc0GFuVhOCmu4Fo1H7G5p
Yw+U2njWTrt2WrGDeQfYDviM081E7ihHF5SjC6rQPZ3TAZ98p3J0oXJ0oXJ0oXJ0oXJ0oSp0oSp0
oSp0oeJzoeJzoeJzoZpzoZpzoZpzxzPVTyo+Fyo+Fyo+Fyo+Fyo1Fyo1Fyo1d1ypjlXNuVDNuVDN
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
/9/+9Jcv//xvsY6FWxTsezL6+a2ZKvdVVe6rqtxXVbmvqnJffQFP6Ku0mgX7VJWvqirfcVRRAJXn
qyrPV1We7zgqzss6farKV1WVr6oqX1VVvqqqfFVV+Y4rJzbk4qpO3/G/KFIF+6oK9lUV7Ksq2FdV
sK+qYF9Vwb6qgn1VBfuqCvZVFeyrWbBPdfqq6vRV1emrqtNXVaevqk5fVZ2+qjp9VXX6qur0VdXp
q6rTV1Wnr6pOX1Wdvqo6fVV1+qrq9FXV6auq01ep01ep01ep01ep03d0Bj5wZkqjcl99cbo/mTuN
En6VEn71xen/ZyCcWn6VWn6VWn6VWn7Vtfyo3FdfnO6P4pjHBlfZya9cnnGjNUPqlRJ+lRJ+lRJ+
lRJ+lRJ+lRJ+x+UIaEbZXdTPJfzWjLtXCvZVCvbVF6eL1Oje3XhoV6rNzbcT0CzYpzp9x26GI9fu
3Xxroc8SfitRd5XwqyrhV1XCr6qEX1UJv3pj1tBobkbds6hflvBbyfqdJfxUua+qct9xNJFKx1TC
r6qEX80SfqrcV1W5r96+z5VunBqjhO/H/24M/d+zl6R1mQteKeCrUsBXpYCvSgF/XKJxUS74qlzw
NXPBZ+Z3pXevSu9eld69Kr17VXr3mundldW9Kqt7VVb3qqzuVVndq7K6V2V1r8rqXpXVvSqr+wFK
gqD07lXp3Svp3Svp3Svp3Svp3Svp3Svp3Svp3Svp3Svp3Svp3Svp3Svp3Svp3Svp3avTu5PMvTqZ
OzncKzncq3O4k7q9krq9krq9krq9krq9krq9OnW7E7U7Pztp2Stp2evtpJTOvCaj7krUXu+YAsXg
a2ZsV372ekeKFIqvdwuTcCpRe81E7crPXpWfvd7RjY5uKNxe79BOTwgoiQJeVTnca+ZwV+r2qtTt
Vanb6x3+6ch/pr5WDveqHO7HbjVAydyrkrnXO0qSIfHM6q5k7lXJ3KuSuVclc69K5l6VzP3pykG3
ZsRc6d2P/zXayvN+/K9uV8L3qoTvVQnfqxK+VyV8r0r4flyCncr1UEoBX5UC/tidYyFFUi74qlzw
x9EcGWmUcsFX5YKvygVflQu+Khd8vTONH4xTrodSUvjjfwzrQFhGSglaR774Sr74Sr74Sr74ej+5
Lkt+ky++ki++3k+uy+rfJI6vJI6vJI5/4tLip/uGviqHFoUkg3wlg3wlg3wlg/xxQx8Cc2omqeQr
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
UBf9Ic2f35rNmd9BC7y8td5Y3lJv/G7a/x0LXN7OgoHfCebd82nWtyZD6zuoUdvbS1b9DvbG/tZ6
Y38He+P29t633V68w/b29ceffPaLl1/5/Lefv11Te+J481b2L00Avf8VJwNfDrb/Hb7/l9MXfz1X
/4+zBl/6W7I/QU7+/eNffvjyt2/PEr7h93Rvfu71BkT0TzQNHvK3rVV/0nNe/dVk9E+G8bb77Q8q
1dt7R3W7v4ue3tsL9N7exUjv7e2Fem9vI9b7+6q13ClHRwnOcqNay41Cd5T0O/bseXLnnErtkSwj
t1PMZKeYyZ0SenfKtt2ornen2MtOLZSNPRRzLtt5KGuhUMe4UH2wUH3wgOFDhY2Wj/Cz8qr9bFdW
vNu5an921Z37TOzxxsyhhT3ecNdt7NnYs7OHjaz/t9Gu/VkDgz3BHvrZA5fPunOfO8+6c9Wddt1p
152nUzz52Liz8WBjYmNmY2FjZWNjwzcsbAQblY3GRmdj5EYW+Zsp8kfN5UL120L120L122MDPA08
DTyd+3Tu07lP5z6d+3Tu07lP931oV6ddnXZ12tVpV6ddnXYN2jXAM8AzwDPAM8AzwDPAk9pUGe6K
GFdEtCLPFRGtiGhFMiuyURGAimxUpKWiKRVpqQhbRTIrwlYpWlkpWlkpWlkxKZWildRcPjZoRYAn
wBPgCfAEeAI8AZ4ATwVPBU/zBsAawBrAGsAawBp4GngaeBp4GngaeBp4Gng6eDowOjA6MDowOjA6
MDr908HTwdPB08HTwdPB08HTwTPAM9wttvOFDYpE5SjfGOUbo3ynD+/04Q0ZuyFjlGM+7KppYoNc
sIcD6zcwuQNbN0wKGOGBreu+M0yUorWenNIxgx3esQX44ukQw8BGD0zzwMgOk1BjA8UO9DnQ5+Du
gT4H+hzoc6DPgT4H9iWwL4UbFm5YuGHhhoUbFm5YuGHhhrbsHlezdWcY3I8pVTek6o5K3BmqO7px
RyXuiM4dzHcw309OtaAUOxZsDG/wrODkgMg7sjgQwer7sKdQ72y43lljw4fohMGdh591485I8GBP
4T4dTWiWPM5pXFW5c6XtHTzdeOj5QYcPbjjozPPO3sD56MhqR1Y77lFHnjvS25HejvRmZ240Z6NX
N5q80T8b/bMxTBvDtANjB8YOjB0YOzB2YOzA2IGxA2MHxg6MHRg7MHZg7CeMyg0rN6zcsHHDxg0b
N2zcsHHDxg0bflujgbZTjQY2GthoYKOBDTwNPA08HTwdPB08HTwdPN39jMtbGcHKCFZGsDGCjRG0
tDRGsDGCDVe1ceeGRDUkqiFRDYlqSFRDohp4GngaeDp4Oni6pRc8HTwdPNnSBUuy4HwsmJQFZVyw
LQt0QmH741BnY+IQl1ffebDBQ6s35twIn8ye6hvy9KSABdu74KAs0NKCE7xg8Be84QVveMHWLVjs
BbdmYdwXxn2BJhYEYEEAFuhmgQIWRGJBJBboZsGFWhCSBSFZMMILxLEgNgtis+CcLTheC4K0IEgL
rLdgnxdEa0G0Fny7BRlbkLEFT25B2BaEbUHYFoRtQdgWhG1B2BaEbYF87+dktWNg7StUSKHaGkN/
lUlUhSLtfLjOZrflhweDk8MMC190PJXgEQFBN9MNHo/JxQVSG5ySPXZHRO8nkTVYz5SdYnNHou7I
z/2km8rTfU7wiGDeWLkq6JbwyX4EJzfOMdTmQ3Y6zbmODjjcAGk6NhE00C6muy58Mh0ePCLoumC8
wvzuQ44g6OkFYAVgBWAFI1OwEgWTUrAJBfAF7S6oVUEvCrbuaaO9+Uq9V+zniv1csZ8r9nPFfq7Y
zxX7uWI/V+zniv1csZ8r9nPFfq7YzxX7uWI/V+znTcV+3oUv6q5v4/+4b+N/V0Tt9g9fjGVnUEdu
JGEU2KUgbeWUtkCkApEKRCoQqUCkApEKRCoQqUCkUsQL+lnQz4IOF6ixYGUKdrBgUwo2pWA9Cyay
YCILBrFgIgtGs2AiC0ahYFwK5qZgiQqWqMBbBZYqsFSBkwqcVGCgAgMVrF7ByhQsUcESFSxRwdQW
jG+BFQo8UTDrBUNfMOIFs15wZQpecsFLLnjJBS+5YHcKXnLBSy54yQUvueAlF7zkgpdc8JIDaxVY
q8BaBdYqsFaBtQqsVWCtAmsVWKvAWgXWKnDIAlEPRD0Q9UDUA1EPRD0Q9UDUA1EPRD0Q9UDUA1EP
RD0Q9UDUA1EPRD0Q9UDUA1EPRD0Q9UDUA1EPRD0Q9UDUA1EPRD0Q9UDUA1EPRD0Q9UDUA1EPRD0Q
9UDUA1EPRD0Q9UDUA1EPRD0Q9UDUA1EPRD0Q9UDUA1EPRD0Q9UDUA1EPRD0Q9UDUA1EPRD0Q9UDU
A1EPRD0Q9UDUA1GPU9QHeAZ4ci49oQUTWjChBRNaMKEFE1owoQUTWjChBRNaMKEFE1owoQUTWjCh
BRNaMKEFE1owoQUTWjChBRNaMKEFE1owoQUTWjChBRNaMKEFE1owoQUTWjChBRNaMKEFE1owoQUT
WjChBRNaMKEFE1owoQUTWjChBRNaMKEFE1owoQUTWjChBRNaMKEFE1owoQUTWjChBRNaMKEFE1ow
oQUTWjChBRNaMKEFE1owoQUTWjChBRNaMKEFE1owoQUTWjChBRNaMKEFE1owoQUTWjChBRNaMKEF
E1owoQXTqQUDPAM8AzwDPAM8AzwDPIMoRhCzCGIWQcwiiFkEMYsghhLEUIIYSvhNFzGUIIYSxFCC
GIpfJAYxFL+dq+Cp4KngqeCpDhKBp4KngqeCp4Kngqd6okJcIwhnBOGMIJwRhDOCcEYQXgnCK0F4
JQivBOGVILwShFeC8EoQXvH7zEp4pYKngqeCp4Kngqc6kASeCp4KHgfEK3jOTugZXM+TV05eOXnl
5BV9X2ngSgNXdHBFB9fzztljKz220mMrFmDFAqxYgBULsGIBViz/iuVfsfwrBn/Fhq/Y8BUbvmLD
V2z4ig1fEYAVAVgRgBUBWGGQFQZZYZAVBlkZ3JXBXbEkK5ZkxZKsWJIVi7RikVYs0opsrMjGimys
yMaKbKzIxopsrMjGimysyMaKxV6x2CsWe8Vir1jsFYu9YnvXc9pvqN0d7pZyw07UwC0NTu7uMTAH
vdp5VreM+T609Nxwh39xeedl2tOjJcaDSFlDzZ8erVY83VZ7jo0v7jMwX09SLSM8eKX8ZJzVwCc5
VwM7r8WeulTWuPHu9KlzJBuD1zBPGiT7PHjR+tS3EuzB247OEDS+njjuvOc5suFPyiXZGLjNAyP8
dLJaejxdN8QJPO7zxclPfSIG6bxwqkyFGvzevYf3mU/9I22quHxPaputWJKkOu+xnxBKaDtvrTth
/U4MpfNVyMDn7+uzgfsCxpNYSneOG36Bp+OhNezY4O3C0XZ1CxGcThD2aY8IcTBxfrpW6nA8q2Vz
ZIiOQbkn+OaHruy5p0QFD9Wdn6Dq5Mr05EnGEkZLu3G0gsu75bAibOrDFzmUDc9q4EM+AUuhJQjb
+Rag464MXvVVHPIa51jIzTh6FbEZtFSScLRiMBaFk1GHlExmAU/SmMPEzKVZbAjLPgmPbni0/cHG
lFIn4X/SX0E9ev6Re8QXgzcinXDEcWhDZeqb/aTqCgBdAaArAHQFgK4A0BUAugJAVwDoCgBdAaAr
AHQFgK4A0BUAugJAVwDoCgC98QDQ2/6u6vesvhusneh8yTzwhw49sakqaVBEfk8CkSKycfmcSt6Y
FlY+Wnsaj1Sqnsa0s27k6OU5ByD1nzjO05Br/BortQajVRHQxse3T5eLBQefzXfCJQ0eOszimgZO
zenM/RrO5ZOsqDmD704ba7cGDlZFBwZrKzrTsA4TDL7Mf/Kh02rs5+XZQKJInVUJDd+isYLo6J8l
TxZFHR11y6vkhbeaFupQcgRdsjv4tL6xzqezKqyxaKqxgO3pbg2drKhQKgMrZJ5EXz02iAMePbbQ
mSMNQZJNTUft6PmNR0TeWWMx+Dj5SX/SNLxIba9EEzo03/Aknq7S5KTzEXhnNUpn+VzlU8nKcrVu
0cJFHnw8OVh3dNjZjmFqIHzBoYGmqKV4kIdN91isNHCDxjaY6QYr31J+1D+deUvHRzk0pWePqaUH
8Q96FVOuYRpMXA+jXPLkCptKrZopAeE/6HChW0p2ZhLbI9nrGC+0Uha8xTPuXHPchXCwPqWjMrWm
5T06IdBKeLpigtMmsG7iMJ0ofp7MQp4+n+Mufe+IaOfT1oNEa3bvQKJk0J7aLkXraGW1uafrBjOH
xiKUwaSiE2RpTNoP1oFx0+lhMfMxggP9Qvw6WinDeBiiSME+XaUbh2DcMB3a08KcqjeOfvY5jY5a
kR8kKq0x8+fG4prObPnpzgV7WPBEh12ugaKttAsjrGnGIOA1WL/dWAp7DEHDxL2gD1+g1AMDUhBR
rETqYE2aqEROj6Gc86HJuKxCGixqHayFOazWwDF6pA7qPk/71fbOTK+iDm0/vbEcXFYlDIIaT52c
+s6C1ca08ND3e/ZqACM15QX+EKu0DuvHeEm7D29sTzyBg5UGlhUZ7ZlXFzi72ZyeAzeIJ7aamCu2
t/EWpOO/dujvuPzOVTudaZtQIZc7vbHnMKW0oHGHudiRcPzOVM8XuPVB97II+RD+htmZ6XkbvTsS
1VPj7CurVwdvrWrFaS5MaZbThou/GivLaqVX0fdGZLDvJ56UTJZQPSEPz2QQknQ3iU91shh008QL
iKyhjEzeDknYcLFsmhAkBcUaH/YPVmANHLPBUqzBUqz2TOYTswelMV154Mm0DI5Uu7/xjLYeOco6
Z5Aj4OlBksMKx3WkbhBQPixkp6M6ZNdw0G/45Z4AG/OUw23hT8HmjVRjCWfjZV5jcXVjzXk3e3YE
4EWGaxsr7zpXdV4cVt5WNpbcHqPDLLd7hjayydKvTlC1ERg6fCQooDDVzzEd2ASCj0+aOOh5OUuH
xiGHObiPNA6HwX/BoTt9KEK8n5PAnCiy6LXBRJ2o1uHKDkYQbire88g9AdGnHL5gIsRq7UGejspq
lEEA7vDnC57DBmbPtZiqpUPF6+HBos7GgqBDiSbUE0YraFPaujUHdxBFGljRp+akj73iS/DaaRCy
bBV3Fx0c+7MJ54CkmCkUO8m4GRqdTtCnkeXh6dp0qFraw7GepBnewAcIxrQgkIX5jnU5sDbJKR1P
hjWYh74XhhK9GMhhSkuD2lhPfbiOKFoOJStJO6kKOq8NBglNhmcBLMI9HA97aJVWYBwSmM0Xc5kx
nb56s9fkIAtQK0PZmJ6kU8FQdt6IH0qEF9fggrQtC2Q38KNY9l/B83Rn9WrnBdtgOe1BZAsK+8C9
rLSipKwOfJtCUKPDnhlE8Jya2NzACazlGd14eoubUe0kQxNpRR8QYoM9R47gYI1hRwsOS8KMo1hP
baw2DAjTpcA3PvV9R8ZmgEF/gdsT2PCU1cc5EcuhfPFMvxo6OCEbK/EygjXi3IGh7qQ46VzVSP1z
3LBj6xaaY4mqUFtHwokVNGg92JNtZ0Vzx8s92AFFy7lMOSOVyXoFP+GBs/QA4eEJv/H0S1cA6AoA
XQGgKwB0BYCuANAVALoCQFcA6AoAXQGgKwB0BYCuANAVALoCQFcA6M0GgN7Vb4Vu//CFJk/Y/Qlj
wcRjIFgFyciJ4gu4nHU9hy5hziTf4/ZMheiL7gHoiBqGQNzQUOlasaoDU7XkHKCT27LZbS3JXsPG
lAUsx+XmaUi921+E+BuOozY6AYtOGrxWYQLGuGOYBq5Si1Pi7TQPfILGl2b5tV492aLZid8SfEbr
pnOe4K/17CsXNKcyn8+JIjk7O+mmj6ugBE+fBvP5wUSx4UAkM3kefjuhBmYoA1UPPJKZERwY5c54
rbh3jYgeafAGlx8nT7g4hHjyqz80sPOdfyOh5iD19yAP62AVYSNRfJueffo4Y31mgPljyIGPwlAO
Aij+BjLlsOWewQf/fXrG3LiJEuxKMPToXqY9nZBK8FVtJYQ6GCazcmoTa9CO3gi0YMPLxHUbcFVx
9OdOr2I6B9GE9KvssT3QStYHDT6ZboRCOllgO4tTnrRgEC5JD4DlhH0+P/scNtx4853PPh2tCygh
UJAcwXYGTJtVxh/c8nFmThg6PuV6xnrko3RCqJ1o3dFRwSNWZp4PNiwSHgITEjSWrdiejSDmNL+q
JV3u8YErjkhOIZCExqLIwefrjbSpg4Vmg3VGh7t5Yy7KBC+/uH6ckYK0xmhct2yUZ1CNkPBowR4W
t52TiyP4AfXiM+WdSYnayXZ+AIMpc1C2Zx/lMs8sxEmz6xxzJNnq4Rk/sIf0T+DnpfwgvW09qbcT
Rap87939FT1B+Zz2kJ62lROzP6cPv/woqN7OOTe6BSbqntJgJSz81uVBH+Z0hVDa4efhiFT8mILi
V7+V6XQvrlLH5+4+5OhPZ7KN0BbcqfR6rWgQRyVCVG3r8AU7iUI7Kb0Pt2xw5zuGseDRbjARHlLn
3UnDlRx44elXkcq0s7zoMJ7+FJzBTWDYzIGEHxHPgUnxDO3ODWHYQejqDB8Ty8g5P8urB+Hajh2r
+NyH++T+KQitSfOO2KCe3cHZoA+ZyQx4sBHBd4x4OJaxExNxaAYLWYj/ZnyBN3+ddNT9ca7vCBYy
+JVAxvTbOYds1kpbCV5WZaSJXK0DZ+A4xCvAxruKVNiF4DW5YwclQg7nhNUu4cv9igstaDB1t8Pg
Vx0DCfcI2tditcvwvMWjM2FX/fZiocdslumNwpoCeYydNd2DJb2HpiwwLMNUeH8gpa7jXKkhd67W
cxrfYNjCC5uwVS+EtwptJ0IdcHfS33p6y8GehsOQHgirR9s4gyx++ZFszmuVCjf16bzPwD8seIOp
DtP5ziO9QWI0nXW7jZzTnRdanUT7g0PHWKzc0JJAkztuRmMaP1iB0vy6CLfHYejqBm7MQQZyGAT7
XtAuXuFUnNKkifaMJohqOR4UftN2Q2UeTL+tsEyXcgSncw2RjV6Cp25LZxVhW853gXbDKi/PdHnb
zhfYjYCFpzk5SWYBZsdCVrM5ce0DD6H8nC3vz5rDIil/TFCsuThdnXcMw2/E/RYWPQ3eOljjcj7f
mDKwkHOwvPqg2sZHCTtTIccy8Kht1ZPNiXQ33rUfMoYDHDj2efIg6MPC9rGdr68KYYUkaEpBjeXZ
1xKYnWY25wV2xi5Zb9vu5wQz/KqDt0QVgg6ct25i5d1JsidR9cO3cRQJberMyIIGVnzsdEpZMnZc
RdxteLkTKpPu5aB7cUqPR9iHrHCcF/RV7gw3Bcv3CrF4deahIAUS3yEOYJyvwTxz2fH9CFVrTCvf
WDRqMA3WqXWy8h+tQMI7/dyYnuTrtIV3eKxr7o9znWP6bOMMGnq9W/O3NSsun5cl+lWZPxnhnHp7
43mFrgDQFQC6AkBXAOgKAF0BoCsAdAWArgDQFQC6AkBXAOgKAF0BoCsAdAWArgDQmw0AvQv12l6+
eu/zjz85HnbWRfvs/Vevjz23+Ss/e/3XK9H2Bx/9e6uynVfrv3/Xf//+0cv3P3w6ljf6yhd3+Mvz
LDWqFnY+Je7ttJmF76nzQ7n1/DS++IvvgcWGyAqS4LVrSUAUTR98u90pId/3Z+uKvEQMl9hrzvwx
b+IxZZOasIG5L2d8w+5lYybV4G6T7xlhQIm6V4H4W2lbCRY8OeYwSDqWHy2SHLn1c71dTqBmPsGb
UfzKyf58lULdrZwtLbb8/oST+ZeXKg6PlwN3gS4H3mklHArVViaPFV9isAau27wzpmkGG3MQ8rq2
+8kyDbNzesL+5tozcaI9DmIMPowNZkCN1RKFfG3D/eP1AZ0+xLz7u/X8iJIv2ft8fmsfHmVmkf6y
NYMzgB/7uQwolyGWZ6znhzqaii9qQ5209eBL2xfnl7YZeq3nUs4Mh1IRtZO+8JjCMFPw2qNgxlFZ
htgwy4MgYY7Og6tmphXlXLeX8x0jJB/0oSA4eJVPtrs3Gs6Jv/ztKL4dDwctCUyZav1la1ISxdk7
U8WxnNOcAS8PPl/tJLYbaEp+mP9sBV66oIDvRFy7/VXucwjbCh7WhnamOZWPgm0Y/RF3eC5MyLQy
t2qsl3IksOJVnkIb2LoJL47lVg03NT8zJ2XncI7L7VweFzSnOoTLxKd69ap9CV4lNFbpnbMkr5Ql
WF08v3AfYk694mSwVMgT59Sd6VmMCL3IEPd6JgOtGE/HzNNil2cO3oz3jnuZwZn5dImDb9L95bhT
JaailWdpPUmaaTcso6CsERx8pd7cCrJ5DqopHKMz4/Jx57M3PH9n9dhgSUTHjqV2s7ihP4vkDE8e
/Y6DyFtn1u/FZ8E6sDREg2VkJMDt/fzSP4XtcepyGhC/aoHfO7OtgbD1F89mx14LVWgFYQ3P3ztR
Yluk6syYdtodz/Qc1pNQT3hhvUHMIYmMVJudlWqHwWfalT7tTmcOZpG8IzvcA+/ZmV80CNGrSR5o
gWfQLNKyZfPi4OwWql80xK8RNTqsDS/L/LaiYJbPFTA7U2kCL/a6k+PIS97i2ZSBeG8jEF2ZFA+m
yX6d1x1g3+jwBahedjOzQW9Uv30jqYDj6tWe1cY8ZcdY+cUKli09tA1Fuz0LwnsdYSFgsuNLrHQd
68DsEeXE53YGqx1qGCw1SzG+nw7V8OSa+bvfiJ1xLa+nf4EXRysGsdxzpb69AouN37nYpyWsmkvo
yvmyNYdgZwhePLNapB6ueA6Ok6St8zsO3jd1quYcDEtvBK8AsscMg1rhfTutxCBU7nfrlfBRt1+H
ec9XmSyg6f3ZW04czvMdPW85w0EMR9WYOFdesleWChXewqRJuT/L8Ou119Ymm1zeBnY84cq8Ozi5
EQkMwsU5qWF57pjO5fi6vFbcOdbOVtz442WZuQk9ddSx86nAudiLtemBB1KdMxp2GLb8OIHnS7dK
tyyMzgpU8qZUnG2H+4Zf2bDQrXjFNusjMzCFKTjMBW+OnBKj8lHEIB9DfqgwMHqNdvFe5tBKXP3u
ld+YJmcuGdhn5+ro6I6Xx5mprQXNmsKy0QxEjzP+bE+m2CYs2T+VgH/gVVaD9yp8Frvn2wGnRuCF
UaN4xhH/oROaJ4Yb310wk7LYnGF56KZ47bVfFPqdAlzZPQGHxMMzzcJ0iWmyk6x0vO6K55BTxReY
3PXZSxwHUVnmO1iX5ldj5oJCYNPx55xl7+db13MBMWTn0LRptHpw/cGDXxT65Sbz7sABriSd76yC
TSLDih6uiJOPO+M5AlAI4ZqAggzjOV5kDhgk/zjeW0EllZV8Dqd73XBlYXRetZ/Lqfv0xvMsXQGg
KwB0BYCuANAVALoCQFcA6AoAXQGgKwB0BYCuANAVALoCQFcA6AoAXQGgNxsAeofzLB1dYH/IQ0vo
ISf/9dm8rsEW2JHq7z3xSBqZTJu/7iTa4op+5wQYLzyYqqXpjGfZule8jR2r6tVj5NP08jjPdro/
CSTt6fBHlLSi4D0H38wW0uqFAzEkL8tv7cu5/MvrQvzRqzNEO5l1rjVsuLZMOHs75z/hLyUdZcOL
yjuT/Lf6W3vKVXfid43PctuzAMqw841V9VfzA2+sOwsnueEyKoE/XR1lW8/wjeMmTrLsDMh5nxfn
h6hB3U9TXTq78ylanem35+GDqci5xgI7OxjBYQcdIWkkgMuvaG8kFb2dWYnTjWYm0/bT+wnm4Y7f
dVK6V3K6DfK/Bx/UN3KFOynbIBOcP8duLqvqDOzOKAd7Ffwq+RYDf6i3Z/Tj5hBJaeRMHJBEdWFT
z8MJRjRyNAdOWPdqAOaHdgGdvNUrOJ1UPUgFODyHJNtyJ0KU4+X7bCyibecIFk9XaHLGO+7Pcjg6
RS+JNQtfalcyzwbJ0Btc7oW/g9FpTEW8ksYBSsenhpfnstSsOe0gK8OcnDSnIvjKBx5PIfzFNykO
m52VDndS3HPgBw96rPK5sWfvjYmZs/w7O222HY2rOHyHRDk1vCuc4uMOJwdkJYTXDXcnH3eCRQco
USufnIdInX/0mMPiHveOJWFCXjDmweTfPkp1imfc38qiw+E1lE6BjcfmOGnxEhYe6jIG/hC+M0cK
6kYU8rGeyZqZNhenikbYOtODYVtHBCQcTaj0IT6cC1o4MWuBSoJ+9uJgp0YNLxGjksTwwiky6jbM
aWEJZnFF42D6zRzJq2Cr36awPLc5TsGUZnBDZzwvDkxjiE5t8gaGMfVi8A7mRpCXjPmdwH2nknVz
NMp0PONTWtFYW3yIX8cisU7XAZ2OtNjkBvHWYEyDl14dxfeLMX/F3yl64VhPcfkKEg8US4KzhxPs
y1S/nh/iu7f1zNbtSHcaovnZwjLCUq6VUjmn4E833HG/qBtkO2gOoXodj20LL+oGs0GvfnbN5WEF
4dVLtXdBNCF7o57rVDqzFN+w0QnDjE8ahsHaUGdtDmJ86V2Q7r/iZjypkqM23VXFybVQSTNQmBFl
MN0rTtpZszuIk7pygxm/kDS8ubAKUb+Cs9SZ7jpccoazof7zVSsFSISnky974IcfrMdy6u4E3B13
lyhSBlW3Z1XXN5xAFqycBMQEz8W7u5MaU1zk1EGi2IXo4Wm1mNcN4jjBS1yvQ/WrKYe3GotszqXb
Zj06PPfECT5w1boT3BPAzfAWyQB6nCa3s953MHsfJJQfrkjBCy2v7Anjce2NYJrKMvqEcXsWNyF2
mVrJwt/mF1oDQbqxgM++H3b18JqggII1TsVfwUPW7/FscXA4A4o5bsVDA09zqMhplzEXxak+Gu1y
mv7Kq83OIXI2FNZ4hR1Ory1moWRzcgvigJUyBo7E5Z4Nb4c13Ac3UfHFi+rObO/4Eq57XrES1aPM
cjTXYMiX07dniQeYITpAYN+m8hakIM/nUkVEwqvnHZVI0YozxXMjIjN4B9z8YqMT9uUV+8B8BSv1
HS7pjpvgkFfzILk6Ki/mixOx8L65+EVUSeOQNnxCNu5n8uicKr5gVsJLrwMYweKO0Wu8pKwwvufv
1fnEEb/UyvVc9e75YMNGpQ5u59tTw6iEUKsT7ntZP/wVTh/PksfGIjZ/euJ18LkisKIp9Hx/8SwB
jzMQoIOVyVFzehsEaWBXB+/IB98ZdF66e6V1d4ExCqIEFDD6G8+zdAWArgDQFQC6AkBXAOgKAF0B
oCsAdAWArgDQFQC6AkBXAOgKAF0BoCsAdAWA3mwA6F39VuhYVnY708+lyOL9HGusWFRSnPWS0XIS
tE527OAzwo5blnP+wGKSVq9D/Ifw8flxOruo0JjObJ6OL7gqoicwwceQwQzE3+sO5NKLQdLRZ9VM
6+fqLZNEJUrigWweWqq7NhKPWrv8UNdFDdZu+Eu8RinhoM5mocPTFwxsKF8CH1rKJ9yFNQXOs1bJ
+3Z+SU50zN+INr5hq8wlcrZcT+NlqJ4EpitQnxkC5y4n722YaAl4pUhU5pmUqqykaj3IxqsViBTY
//BarUHp5+ATSscKB05q83IwimAWW3mqDKdV7Uj4BBlPz/Kf7vSqv1Qkt2ngbjav/WG1XUPCMx2n
P0RfWJX2gg+bafJw5uv5zALsJX75/Sdxk6PJG99Xe8Jgj4RFNwOT51mTl4x1p3zle9RmD9s+issx
30kzip9X3Qqyzp2ZOlGi5nAtX58Oz3tphTvcmdPDK0Ptd9rsENkxGXtFVc7DvdzAeTn5YLv3Z0EE
VKb6K3EHUCCSwQ3TJb0/C4Z6hQVfsYYzP5q9yPFdqG5fSPpcyQEaNLm58LRXXRFJcer8bFecH0gH
nmh3RewHqkeWwO4Pm8n2btPUDJ74QnNA2VYClyJcz4DUn53JwDnZZoFq9RTLcySC+4Xkm90VF2iX
166GHRH8s3OKzpykMn920KcxcK5DMBy5oEatv+k1MC9y6bCVYxDNn/c7bzumoJCt20avsuC6Wisf
+GcuQc5iBxcy9jriQjLiwVLTs+oACTrDQSheUdgXPGfCXrPstb0Umnd2Ua8ezbFA6jpWa9CKA7wr
JTglJZGdYpeUOVJKwoJo7efrB+dJ717t4mrFpEt2QKc7ULUzXqykq8RbGwW+E7wrPrdzgXNKwk5k
uSHYdwKU9VxqUSiwMXBkh19fOWRJhW7LmP2fQcDCq10GsR6vV6qMTudZNikp8y9wLnmX0+9nLMyr
9ozQS738kqAwGxyeVDAV6SQ5NcsEhe8bcYrBAkMneA3mfo1SEJUZY3G0xUXJMe+N7KLBWyLTcSfc
76IOg2LihaWmnTcKrojt8J+j6kFMJNdB7OdCj+49kJ1XS3Xn4ucNYvgNGSR1Pt0rXolzuczMcLuo
iF29FAXM5xtNVrc5Y2z1Yhkvt2TRsUuiD6yxy5QXz/AdoGRu7JXplTEdTvrsl68grH4nxKS0wO+n
a8RbzyDk5JTK3f7G4BCTnAHZhYN9BQl39PAOsTp2CR2n5rrERXlmsU0czBgLmutCFJ23Bc6EG1iJ
fH11O9dmVgrzVJarpLR0XqvwiqLx7vbAg4ueL0T94rBgM8dZyz7dp/v5gqS6CgtRCb8vDMKahfzC
6Z3eGWXWs/dnqZkrc6LieDS+nyNonXnK4EVUJy9541ClkMC59BXz5XwaxfN517HwrLtACk6+QSDG
K529crbwLrDzHt2BTr9urFSJGETew2zFG6DhJT8sOvb6zUHmBy+qHc56wXL4Rv9Ur/0h+uNX0UmI
+zN1qKTIYAmSX1GkDxBnefrBWi2/OwkiFxUxdiWb5EEKDo04I19+03++Y/BLbgal8y6n4sYX9HSQ
/2TYn58QY39e4KczKEFKATsVwwtCoezGlyIuIJHzFOqgHJLAO85T2AhCOftKvtteTnNRsatBRYrK
y7NBJNfUNkwlGKvANAWzkrDPZmPO6/wBabqwyuDjmOKqDLwF6WwU0prbSa6eqJJCvfL+wDm+CyFv
VyMruDSp5rdTT527w9nV4y3kFboCQFcA6AoAXQGgKwB0BYCuANAVALoCQFcA6AoAXQGgKwB0BYCu
ANAVALoCQG80APTO12Rb3l5NtuUdqsl2+4cvwhqoeX5gy/ee7XE6Jx3qD77P9Qf+3clSSbPlieHp
q/PVYefDvU7h62DK6Qlv+qs3vox2+jDXB3birRtu83Qm3zQLu6pwxXMYqIOXnlS+vDszdRLoKCwj
c9AgHCQkmVrzR4sO3JG/Mr+rLeecKFglMwgxhdPGwUT+RLExJ+pMsjqpbB236R4moj1OhHp+dsoi
Pydeb/5Un+K0la/vg0SfZ8Zzf+/piJmt6I3wEVEIL+lrXp+0YElYKjSIQ+agEGZpZBftEEffzvyM
Xqp4Jsl14r8bi5AIuDViKbm8gJjMILHv4dPi21TmucloOx7+fK5L87eczflPKQxeCSxUApLpFvJ5
eHWYhayyxwzI4SwGrpvaqHo67CN5TgSeyvfm3QtNPKnhM+pBLK5TCXlwlZmoeKURjuL57a1XGrnk
pvOfeuZyh2HJfN1YFmAnuft784rYEHkLQsqVpLRnZJv0hZXvzZ0f1plwU+oIcTfCYkeTA4H0+hKv
NSTnuJ2KwvKLIBTj9KCpViwdOGYuvAsYWACv3gjSmhecpe4yxQhAOGLP+tFBhwcLO7zar/mNBtGV
xpKIQYbE4oCt40gLekrQqbOyMG9o23I7l0B1Ck031tu5+ve5cMEeNdrdWZdWHIylwrxL/hakrtiK
Ol8kTuBw1YGBmpPLeLDmNS12PR3ycLptR5LvdAJrVQvvZYrTkVfih77K6yP5Rr57mEjSHd5g4V14
4DzrZzrQmFKdsQsynnu63Uim3ymT7gVGdt6aS1M4csu6hyD25SLkTihfSKzZ0QuHoRrr2xrhvvPV
jxPgoimFPNeV6sSdtRqN8HWxLhMIyuBDP2uPezISXj2GES5MarzCw4t6Xb0g3YzlmfPv2AUL/Yd9
CZIRDz6fN4m7CEcnxXxhonqmfHUKAVYJV4LVjkgXGz1nuoe7u1NtIgDVS8R4KZBB3XYyWmWPFwdX
Iu2VV2yN7LTObRokH++2kJ5WMN8pXvHPYu5OTfUg8UAnX+3A93Oy72Ch7ZlkGUHKgbujcQ/GAjms
49kG0xzXXa9e8YbuFBs0JyN2fmrcA69XCL+TYgFoIyDZLHUNc8Ei9Zxu306WafZkZgyac9ryTipf
Qd5QauoZVJbCjDjXplfm1B1vsDmd9B3MTkPvNcHwu9cDFRf9xr0cLFX0uwAnEe64PZ2lk5VgrJNQ
NzuKDOWgIMqZZ7YTEHCk3bN+V3cgilVY5xSepDPZD17sFie8ZpLuyJKLohdObs484fAjAhm8YXHF
+4EkFKKywSKt7pLjO4NCH2YMlmXrR8ZhCxuv2M6F9fYY/caQly8ZGfCrQwqHNNfsmQkk3s4FhY1R
7gSQm2O5ZNAOMgUPmLpS7uhcTQsXNL/EgakbQblcPeaVhbz8bTj/gxjskdceQQpbALvETnTumkZk
sGi8Mg4C9U6fUFjxX3jn4jVVCZWXbsPrxXemb+3ZyxcHxu9sPJJKCi/Zu9eGslqru+aB30qjO0nr
7cw+X+2KOE7CG4TzrRmv7ytRrMK8qbAesZPSwOvbMl17OYlskHum81a6EeRxOvJBPnGXDupIVMEP
75jKji+akyziY410MmM903Z3FoWHrahfu1NTJNDuQYA0cJKtMjmFgewG+tXv55rXwkvJYIlqzguo
5XDYHyeTsEMVzEpIOePormdJptqKP+Z3iIO1vK5K5XcKlbmDs0p4njuc9duOtF9lsrS08VrQb/Ea
76kL2TsqK6Sbs9oQ+Q+k95zCONq8sKTPhUzaG8+zdAWArgDQFQC6AkBXAOgKAF0BoCsAdAWArgDQ
FQC6AkBXAOgKAF0BoCsAdAWA3mwA6B3OszScUpnVUYPv+rsFwvPM9fwqvFJe3J/pderz5kos6tN1
Mn4O1m8dXpS/rOdTtWI3CHNvp8cTe08YAketQWzhFV1QlENFdhMLJZsrYtR98oxjxPew4bRfBI9c
ONhhl+KvBZlan8tccDIKFO668JXcwd15eFmD0qk7PHBSu7/09zzBsZ6BTppsyKBdSTl9OvEuREvu
ci8VGvaw/TG4iwvjHXbWyQXflqZZJEt7dyJUr1d4nN8qZm+QV7qzeOhYNwMPDX+hj9fbCP85AVyn
WGQldVrxAiNKi1bcjky/e3v2XTaX58T+fpZWd9rTSkH2YarzVfR8IQfx+bFqwRuj570sYNgFdP5K
rxkicW3hqsIc0vUfCyUvbY9c3PNcC8VQeg2lk+g1vi4/vXlODsivWrQ8j8JbHeTCzrhbO2GEP382
6yDYwVfhJ3M3PnsnGFr4irbaBKMyrsV5lu5lAYRlvjCR7nyK3vxlPdExJzX2aqTGkpHmfIhuDuEt
B2sKn6sPVnnmzGFijeD27BN7FnZ4gWO36pkFkXDnWu2MTnFSP1ZUdFiwYIhS2PBsjqdj4uxFnRa7
oyDOe+vvsjH4zZVbnVObjNXh2sQkLG6OruLROnl9sb57fQkT+5w2b4RUXjzLa49IdJY7VCJNnfhC
80SRVSCpDgRZxotzBUO1izzRh/6u322fCcB5hQdJqAuhh6DivFeddrsCtiQDx4hZd/UX6Kzf8vJB
F01unq4QPSy86jhT4hKK9eS2Uq88qDg/nISaUP4gpOIKwo21LN1Ua0FiHViBGV1RvTMoTuDeHUfG
bW2uMcD0spPbdHiRHzUqzsmAF3IRsOiU827MtYLYSrejz2Qy6ITqz/AxMo0AU+NtymCxewNGcRAT
S+Li1MHKjKQ/O5czrra/o59wtV3xuWBpF0K6BHQGNNGIslVW2B8WgATTKZksle7zmSv8zDzLcj3X
hc+1WTtW63bWljjzwxIB8Tp4V8ioDrgHWkD8pbGGoLFE7FxTBdGny3c/jUxlYWLhqgw5sZDr6A0G
7gzSsXL3XOXpshOstPZku7OWpbM60wlwuwNDnryx5rWxYmngZuQITudMxotEXfzdYZcwwxLeakzV
giztxfEyT4S8AL0iUYQenNz/nAgRmC6kc+2shqxk1G2o1SB+Vwh5N4zwcJ1x1lA2IubNJW0G7269
ZshzUVbAOAxUXXPFq7pRz2RzIkSHMnpQeP3pKXphuflgYVl41SBC67QZxQRUeaiXyxC89tKcTmaF
lFUvRN7PeUonGh5MzKrfE0Nb1SvaTdleGUaIx+uKBmuGBtOc4iIuL9Adq1XDfJGvokBAxWE7d92G
7+eIA0vku5f0MZVN753gUfOrjoCtZiJf/ZyIeQ1TMMMfznSP8QyMw/C7dmejdqaQHZpwXMCtwKno
TMjt8gXz+XSfGMGDB0ln75QG6ZnDF921E+Yzrchg+fvAhncnMCC87pfug2XrdlO7w2QDmff7Ob/m
oV6RJ4+NaU7DRa+OCzxwTvz+0qm9Pa9kUZ2X4zec7eoyGA9yh7AA1CvjG4vLuxcC2qfFEx7MBws5
4sOm2+8GKCDhLDKnFpC+5ZyAY04rE/lUoo6X4vX9d8h3Ol8OBQtJhwcO/7nwaUXYwSP6XHnRe8Z/
CzSxI/x4KRWXr/htHJGvStCnIhue+Tayxjt/RuGNb2NBanF5ITzhFKQXZ4aYgub6zXrBPxxO9s3E
2RUgKql0OvHW3t94nqUrAHQFgK4A0BUAugJAVwDoCgBdAaArAHQFgK4A0BUAugJAVwDoCgBdAaAr
APRmA0Dv6rdCWlZWcZpdarmSN7BTAbbzUVzOlhdWObG4oFOFsLJK5ZAV3KnmwsF8i3t62C7c6Xrl
JFgMPg0dfEboifSZr42iyY0JZ2DB09aUcznYyXkuc88XdJVqmI2lDXZWiifJrFdy4trCYivnGuvm
YOqMOz1opW6sM/M6mdo5EYIym2uRM21uFKJ1enQvWHN93vz8jzltI3zTy7NVV4Qegly02XUPojYr
X6S/wENiTtLtmhBxOCTeTOkUdbBFIexSzGd8+N0Ybn/C7fhCIXCWk9sHXktl2jw9q9IIHluWyhKS
M+8bklkJB6R3SODsMGc0sJMxbfAZahCEKjRwuHAnFSqb6ZBctI6FOcZ3flfviYfz2hMDdV7yzhI2
p4a3xlV/Mk0cx+scz689sfvDX7GSC9urFZykcrA2wb5pegmkEO1UXO0sNa3UGT8isHCVE6ab4Vya
1lGJxty4+WNj/PLi9TgVYiO+UMjG6KLAxWtk+KrfXnihXKzLVZ+LODi5UyDezko+izV6tZ+J+wur
IwdJThs5du0PeZGCS1pXlxbgq+NwsXVKLZ9fm/ORsD957V7u1PgIlmlPsCTTs8EGM4VT1XtWsDNb
JpdowQ06PRunXXbJXWonNNtwu1x8Be04ReVT3spynjPkRFrGlHmKBNQ4nYPh1SVeWeOAsrOQE6Op
VHh3yd1ChHGQY7dRcLwivQ0PoNoaO18kX6Q7EbOTj581jsnW3VhG6sUpqbD1LOtcmTo2Sko0AjFO
tlsRSAfgvBDPa5E6y6ur1zTNTIBnZMNrfyBNr3ZpJJjuROuGVZiI8JlK2+PuNVYU2BhEhJPW+7n6
z6WWwwvNsIf+sj3QpmA9RaFSQnUM3S8AnPzXX3ezsKKz9KPz0GL9mricCt3DgQa/viKFuteguYi8
5xvVAR2WBeU09U5S0Wexg4zIdPR9IGNeoVzOShId19/Lvb0scfCOyk7FcOBsQ+btFRCBDfz77Ewv
nb7RLr/LeYH9ebbarmGR0hHq9Bi5ucftzA97hqpJKlpZY5XWxtWlXzx7A8Rc3QthOotlnJogWCdb
mdKkX04Ev2JkDolyYRW/pLTLToT6fG/kJOa8Uqr2QFjFXMlR4LVj7kxnLXAy67DTxXqc4doJrIp1
Oe8gRpOhK1ZZHhFhlr5217rgzp3FBdWLkng1FThmA8UfLgbNqpBKACUIOTXkZxCzbrz8qMQ3HYPo
BkYgODAX6V72M922syicbEXcrdop9Vs0ZvjJlQuhWMfLNt4STYSzl2d1EQiLO52Cc/4OdxQvxqrf
gnhRLXas0GS/BnPAy8WECrKR4M1NyHNlqWBjWniMBY7HGQ5wEuEGO9gfo10FLfDiylyjx+u9vp+L
jnN26tokrnDAe6zqqRnr5hqh/KOjiIlkZAfSbB5lFmQdCovGubj5uWLROdldy+EGaXqy7fdhDngR
Qz9ljBwFlRfhmTDEsbnpfKlcsRINg1ZYkF5ZINZYpHnmLSHk7dBeQQcHU/RK/3SciqDYwJkjhWhd
YKi7hY3ZTeclpYs2ZRiIoju1n95XdbWkQtsfzEYdAfF7PpawJQE9npWMX7C9L+hnXJogO39nUVsS
2QMZm56lpGDK0F0+B6871yf6W4QVj8h1swiy9P1MINDtptqj5j2NI1aVt0Rh94mVj4WHdpLpp6O4
EfuOc319J6mIK04FVWqsF4M3tZUiUpVpVyMo78pVg6WvrqfiokROyyA8lYIxhwBAN34PUR2mJ3JS
cSEKK/c9gRrOV/N4G3mFrgDQFQC6AkBXAOgKAF0BoCsAdAWArgDQFQC6AkBXAOgKAF0BoCsAdAWA
rgDQGwwAvcN5hXqcCeH8WaOralbHF6xdgzxnHhv8s4INLaSbrSwmKqQc6/581DMrvocvfDp7sjLJ
pIunWIjaWbvQV/E5mVOcFrzDSv6tZDjnxn7wOSJXHV+fkhzrDJN5MdGA88i+3Enm6qxmw7M4vnXP
72OXZ+bMOmlbwxRieBkFal/8qTzf8AcfxVU+g3dB0srir+JkgV6GY0/LycwcnqCodGda6IVvhbqf
ZxCh0kCXBWedSEVhXMmxUdbQ5emrP+TDFudD12dODx8JN75DdtVsJ3Ib/lKR7zaL44B8NnzmXXPi
NLjKmBsflJ7f2ZKHslK01OvLqvO3kRO98u20l1J2p+NlCcCZmHmH78FT+DizmDKJInlJS9hek/bP
KtP4YLuQp7y6pDV9ONBTL7+ySDS+a+3ESTvz+cHqpNPZdalKvA0HOgsZQAufoZqMC0tamjNKOlTE
CsrC8plGbPdMHc03vc5dl/GXB3RIfOr4hpaZQ+eL9LTyDo96TcpOiHAnmSLZso/AB2JTmK5UTu4u
Qc56gSCAmyGn5YyyFWfmJljT6Z9K3Vj7TBkGIiHlMbWuWAlnevYckuBRGliysfbtzNNZCRF2B+4p
U96J7KTF9gfb67PYAUoUnNzI9+k+zDn2i7O6dDAldn3wytzvXAUGQuenPyfk2N6GWxY4WJ3JUqX4
u4vIdxZoVJdjxlhVAoJnRIYVKGmRyjlMqfgvcDtenPW4CwZ/YCUqy2eqXQGidQ7/VYIjXouUU5oJ
gSxE1SllPqgFXL1IajmjADmUJM7v2zk9aB5uZgXVK6pYJNUJIzbXbsblGnwgbTX3wrfOZ96F5YTN
DrEZ1oEYp6Rl9nX6i85wyffn3VlUZygAARhOugzrNVL7m0GGK+1iTrNd9VkwlJjsIHH1MFdSureb
0Ugi7vW/hWCoV10NVx4nPtW9YI3KEt2rtwKfhFFuJJw+Z+8P7I/XfbP07FRzh2shTS+3DGYpHWfp
FC0XASeE4drxnUh3YYY2OFQYL08vK/OW4RrrrLDopKVvzqKKD1Bx0IfndZ5r4YEM3gB5SUsjbht+
f0D2U/fhIE2+g+AWyEpO/SCsEKyj8XqK5nOIjnXW6BUkKlhmW3EqzheZXghMZNAFChqhz+5QtesJ
8AbR+YYz0ABlH3Mbv+fzMorOvMWrSwjuNy/qhxDdG0GmhYzAjme1rVlnFMzrXGahmomcmJnV2a4J
Y++isMwkyG7u5Og5QWCd9THZZpGdPRCzTLFDjmCnF7cwlV2wY/ezcktO/sv5YizfDdzP91jVSd+p
FhJkdu+s7fUaENfM8Qq4zqB4fVmlPL1Lqzuqntl8vZxn4s4z4b/bs2IjXDV4l1x501Y8TV0wMoTb
HLE6Y8SOWBkYi268/GqwMssaF6667iy8K3rBUlwvvD1LtLvaDHra4fcCaXoJ/5maHQUpZnxnz5jz
8m5J8JtasjE0XtnayenYcBcxGASPGu5BJ5LSSYmdDlXFxZoB7/cr9axfVHnn4QLxhXC/k3afNU/w
mrxEq7N2Nd86DOZojODxBQPLz7sVlhWClUBDh7u9dmw4oQpJjoMG5jv7HWprkC9vRo9lm06EQqWd
6pThlkOLFm8ZG59xnCVKPBdGZVxIpDn3M9Mc58rIF35+/bCcq//ONy74JIMMLSchEoZ2FZ3CS8Gz
uJDX6ZvxWajYnCGBIRi8Nui4RoOJaiVq00z9zsSPHcv+YS3kMQSkqXFE2BUGHLYL3pCF/TrXSiIE
X5c3nlfoCgBdAaArAHQFgK4A0BUAugJAVwDoCgBdAaArAHQFgK4A0BUAugJAVwDoCgC92QDQ2/5W
6PXLV//x8tV7n3/8yfGwVy9ff/rrVx+8fP33n73/6vWx57Z+5Wev/zpRqj/q0eqf1/+tg/Zpevw/
V+u/f9d///7Ry/c/fDqWN/rKF3f4y/MsdUdyHmilfezpzFBmc1pJQXta/i8EKTCegT+23Yp+gt0P
/V/109g9sTGzsbCx6tSun6Gfr+rna/r5OudubOxsFDaMoLLhh3c28ubfyP9l4IK5cbCoLVicEnxx
vd2+qZ9vsXvW//+on2/r5584uuj/f9bPd/TzXf18Tz//op9/1c+/ceXKxqYD3+d/Why0WCO53X6g
nx/q50f6eV8/P9bPB1xC38hUbLcP9fOS3TkIP9HPT/XzEUez+z7Wz8/083P9/EI/n+jnl/r5VD+f
6edX+nmVtxPzbLfX/H/T/5/r59f6+Q/9/EY/v9XPf3JJCuF/6ef4yw3GsT7Y442JDUSxes/CxsrG
xsbORmEj2KhsNDY6G9ljf7e/YAOE+50NgO3A2Gc2wLODZ0cBqsH7HBDuCEj1VUDdGf/q+/gqtKXS
wJ1W7LSi0IpCK4r7GfWr9EZBg6rvjB7amjTfkLbbPjRUsvGIxg2bT6bt2JDTQDT6sNDAQrtsKZov
N2ZGsNB2TEbaimODtttWNHS2IS22Hg2tbQxKYywwLDYlthppBLabjcCp/Y0RbPRqA6oNQzNmP4ur
OhavuxU0OXwfLkdBrZnWt1SrYNlI8On7Rug5CMcE3BME+DaC0dvtlN5KH3baXml7pe3dexjKSgOr
G8hwV9pVaZelrnO5xa/RwEYDG82xsFmiLDYe9w6Mhvh1JKqBp/mhPtnnANVD6RE8x4vh7pzjETyH
wFcB3kMwuM/wVQzKoMkdRh6+nLHotGv4hr6c3ugM0/BVCOTw5fSGe8wd1emEs4GM1/B9uGowcAMr
MbiPm+NWnJh5xAmeZ7kVBj8QNmNOGFi/uNkHSmBxs/uTeOKZZTufrofeJRB3teku/PfGZZK2e56r
kb1/laOCe5d7dP+6fr7BUbXhLpfl/i39yFO5y1O5/5N+5KDc5aDcv8sN1Pa7PJX7v7B7ZyOhy3e5
/5t+vq8fuSN3uSP3H3GJeygbKgfl/mN2q3fuH+hHfsn9JUezG+SX3OWX3D/Sj9yRu9yRu9yR+y+4
cuRG2u/7J/wvRbj/kv81lne5LHe5LHe5LPdX+nmtn8+5RIN9l6dyl6dy/w1HNfB3uSz3/9TPf3E0
xxeX5Z4uy7HxYGNiwycvbKxsbNzQhxil8DmFjWCjstHY6GykqOGy3NNlCdgoYKPjEJjlxAQkdOwB
vLyZgI3CbAT3hLnnjsdzx+O5p8dzbLhdDKn4KcxPd1wfE9U9XZ8wY8FPxyE6YacTdsOgE4ofQSsq
CAsPTR8IDjv2MIKFZxVfTnOK7+OrfIjuRc9Se44NMKMvVg08lTuzGhOn+fJuobe0W4YtrqdkSqLC
LHs/JSqAaknwuIdPBmoA1aMcQK3ImEfQA1cB5vGqAPMQuMMrkll5aAWY2+5WnOcArAKsAqy5DxFR
n9OA2jzuvgrMDcyNcW+0tAG+Ab7RmQ3MDcwNzA2VaShjo6MaCM+nGyrAOk/vgO9c3rmqg7kbs/eA
uYO50+GNQemA74DvqJ6b3On5Ts93oHagDqAOoI77G89LdAVMroDJFTC5AiZXwOQKmFwBkytgcgVM
roDJFTC5AiZXwOQKmFwBkytg8q4HTN7hPD4b6V03kpVuLK3aWNKy8U3vxreUxwb9NeivwWAPumnQ
TXIZwi4nnub20MUPd7Xu+tAdHhYN7GLziXmG+v+h3n8o6vKQW/GQW/HArTgFLS/6Jv/n1d/K/1Pa
HvI4HvI4HvI4HvI4HvI4HngcKZcPeRwPxUYe8i8e8i8e8i8e8i8e8i8eCnc85E08FO54yIl4yIl4
vNSPfIeHfIeHfIeHfIeHfIeHfIeHQhkPhTIeCmU85Bc85Bc85Bc85Bc8XtMKLEIq1UOhjMev2S0B
echTeOApWOFSzx6/5X9JzUO+w0NRjgcuwwOX4ZEuQ9xOvUx1fKQTEXjjxx4/DmFIvXzgXzzwLx6n
f5Eq+zj9i45Qdgg5dfeRHkfgnx97gg0/C3EabgU3TI164Iw8cEYexE8euB6P0/UYtDTV75E+SODe
B+592L1/EGx54Ho80vUIe/4PfJDH6YN4LjBo10732uMYtHT3Bn24u6XeQ0sLLS20tNDSQrekW/E4
3Yo0EPdnVy3subPxYMOXM8qFBhaaXGhOoYEZV7UvYxfmgTPywBl54Iw8cLsplbmR2DPu59ODdgXA
gkEJHhE+GagB1ABqADXo8ABYACwAVgFWAVbp5wqeCp4KngqeCp4KngqeCp4KngqeCp4KngqeBp4G
ngaeBp4GngaeBp4GHojBVIA3Qd7m7WHjT+ThYZNuW24jnqY58E8D/zTup5B0jymPwALa5mHl7MM+
bO5s54jwPE7zZavVfWfLYWMD8N17Rm6kL3w/xa/7ZFpqq2VjZYs0UBkLrWV10K5Buyy9g3YN2mVr
Y5MyaJcNiM2FbUIGCiadOgXP0eBPOn+izakqE5YgNWZSMydR+yRqn0Tt0zf0800uEcxJEYNJ/D19
m6PCPonIJxH59B2OJkq95JhE5JOIfBKRTyLySUQ+icgnEfkkIp/e53ZubTZT1D6J2idR+/SSk9Rl
kzh++im7swNF9pPIfhLZTyL7SWQ/iewnkf0ksp9E9pPIfhLZTwoCTKL2SXP/SYw+6S3FpCn/JNqe
RNsTtD1B2xMz/YmZ/sRMf4KJJ5h4gomZPYVnTxMvJyZ41/OpKXk3PLGakoDDM6yJIMBEEGCCdyd4
d4J3J3h3gneZoIUnaBO865naRBCAKVt4yuaZ2gQBT8z9J3h3gneZzYVncxO8O/GSY4JuJ+h2Yl4/
JcuG54ATdEsi9WODBhb6pzA6hQYWoBagFqAWmlMMFQ2twChALYYB1OJzGAKbsAr4BuYAc4A5wBxg
xlrYPtgwWN2t2VZiqHSy+lnFrFRQ6XTKoaXOwlYRkuZDALO0WEgqwCrAKuPefEMQWgAq8txoewWq
O/zsOp7uPjQwP8L3OU8GasOpashzA3wDfAN8M3gfAnwDfKN7G5gbmJsxc8MO5g7mDuYO5g7mDuYO
wg6M7hsy7h1gHWAdYB1gHWCdcR/gGeAZ4BngGeAZ4BngGeAZ4BngGejO2YcgHCAcHnfvAWoS5+y7
qDGzTpzzP50957lq1PxVLkFpG3yantH8tfw/R2P+Ov/jJ+WgzCLXWVH4WZw6i1NnODXHbRanzuLU
WZPjWVQ6i0pnUen8r1ypjp3FqbM4df7BG89jcwVArgDIFQC5AiBXAOQKgFwBkCsAcgVArgDIFQC5
AiBXAOQKgFwBkCsA8qYDIO/qtyK3f3hCJ6qfRfWz5uyziH0Wsc8i9llz9vknNBZ1S2GeNYufReyz
iH0Wsc8i9vkXXALjpNjPovr5l+yW0M3i/FmcP/+Ko5K7WeQ/i/xnkf8s8p9F/rPIf/4tV8K8qUqz
3IH5v9id8odfMOMXzPgFM37BjF8w4xfM6ReEvyGaWawx4w7MpzuQKjszDZ+Zhs9Mw/3l0YwXMOMF
zHgBM17AjBcws3xjPjl/oAfD5wB+B3wy/AzDzyzfmOHzGT6f4fMZPp+ZPjv0NjN9nuHzGT6f4XNS
UG3kkDo2AFYAVgBWAFYAVgBWAFYAVgBW6LoCngBPgCfAE+AJ8AR4AjwBngBPYBGHO9xXgdDO8/B9
MJbDN/S4+87uVZoctKLSikorKhMim+rhh9ItJv9B/9hVxELjBcx4ATMe4uMcwQrCCrBKSytjUf1Q
P8uPoBWNVjTu3BiLxlg0xqIBrAGs0XUNPA08DTwNPFAOxE7q5202kZhB4PPZ1GFesJnHBBIOiscp
zxhFTN3jlHBsnq0cqxIep/B3MGOoTtNk22IDYiuRau5A0+PUnWGEPD3n0Y9TmwYILb2WVYuoJVMC
GUSlgqhUPE4dHD4E+EG70lMgPBWEp4LwVDxO9bSspoguGtpFN1u4VdDG1OKl8f/EBgMWdFAwPKnM
C3DS/16MirYEzUw3fNEsfvkauwV20XR+kcexfJOj2QK5Hotcj0Xh+EUexyKPY5HHsXyXK0GSir98
j/8Z9Ur7cxa5yD1ZNNNf5JUs8koWzfSXH3IJXZTKv8ghWN5ntyRhkWewyDNYPuSoxGORi7Boyr/I
IVjkECxyCBY5BMvPuTK7XVP+RX7Aoin/8ikn5VjID1g0919E/4vofxH9L6L/RfS/iP4Xzf0Xkf2i
uf8Cxy9w/ALHL3D8AscvcPzC3H+B2heofWFRwwKjLzD6wnR+gcgXiHyByBeIfIHIF4h8YeXCAm0v
0PZCZJwQZzjEubAyk1hnONa5QO0L1L4QIncYdGFlJvHQcDx0gfUXZvELZL+wPIGYaThmSi3zIHga
BE/DwdMFz2DBki7YzQXjuJzWrXmDTmgMSmGYCp3QaHLxBm235Wrew8AVWlpoaaGlQW8EA2cD1HxD
7hNuMkapYWmab0hLg5YGoxw0BzOFz0FQOAgKH4dohU1Vp1fDeGhXAKPT4QEeDA0eBjUltsUWhtAB
GZ2D4HIQXD4O0Qq7EZ2B67QLO0B4wXFnSnZsyynYlufOUFqwLb0W2s7llt5GcyyZjeY0mmOBbIBv
QLWMWaIsNg2EHvcGsAYwD3cHjwfOw+Sx6OBxZ55d58HlWe7Mjsx3nu6Ocm+clwOsu1eN0Jf7HA4N
wNvnGMjhoDn2OQbtss8xaOCggYMGDjp8IC0DiRrI2HkOYzFooH2OQW8MBmXQUQMdPC9XA1f1zqor
Vp2/qhfWPEU9sIr1V8XuV5H9+g3uKzSr4gyryH4V2a8i+1Vkv4rsV5H9qvDCqvDCKv5exd+r+HsV
f6/i71XT91VsvWr6voqkV5H0qun7Km5exc2ruHkVN6/i5lXcvGqyvoqSV1HyKkpeNSNfxcSrmHgV
E6+vaX32oih5FSWv/8HR7Fxx8ypuXv/zjWcguUIfV+jjCn1coY8r9HGFPq7QxxX6uEIfV+jjCn1c
oY8r9HGFPq7QxxX6eHOhj3e+zs/29ur8bO9QnZ8X//DFIKZqyJda8aVWfKkVX2rFl1rxpdb0peLx
TA87h6Tz/upxxc1acbNW3KwVN2vFzVpxs1bcrDXdrODryfDXkyuO10oiLX9PueKBrXhgK6EUf2q5
4oqtuGIrEZSVCMqKm7XiZq1EUFa8K3+yuZLp099ursRU/BHnipu1ElNZz44qYHYDizHvbADDrUhf
yp9+rufT03PiY9Dwx6ArLtT67Ia+nLE4T2YsisfC7aI5Oefjo9JjD4MSNDBoYNDAYLyC5gSdGQjS
eRV9GIAPwAfgA/AB+AB8ALWCsAKs8ogKsAqwCrAKsEr3VvBU8KQHP50NrACrAKsAqwCrAGsAa+46
YDQQNu7cfAiEDYQNhA2EDYSNHmsAawBrAGsAawDrAOv0WAdPB08HTwdPB08HTwdPB08HTwdPR1Yt
Eh1gHWAdObS0DBAOEA7MRfD0AdQB1MEjhu/jk4E6UL1Amyx+0KQZ0VaVgAc17rc0eWnw0tylsdtQ
prD45Gnq/02eyiZPZZOnsikssX2TS/KW8lQ2eSqbPJVNnsomT2WTp7J9lyuxWqkpm3yXTb7L9q8c
TTByYjY5MZucmE1OzCYnZns/L6nYhFS0TW7N9gG7JUSb/JtN/s32E44+2MAKpi5ucn02uT6bXJ9N
rs/2c87FLKa6br/gfw3s9gn/M745S9nkJ23yk7bPOJpD8iv+z/6W57QphrF9ztEcWXlOm4IZ2284
mh0tz2lTVGMTE28w8QYTbzDxBhNvMPFGVGMjqrFBtxt0u0G3G3S7QbcbdLtBtxtRjS3JNfyFuz9s
34hzbMmy4U/dN+h2I+CxsT7DX8FvSbfhz+E3eHeDdzd4d4N3N8IbfDsf/nZ+O5m40Rtm4uY708Cd
BhaaU7C2jafb1WgIR0M1G31YEM9GZxaaXNxkw0DFG53Z6d5O1xXAFzCbvzt4Og/tfhYIOw/tdG+H
QbvvQ68WerW4OfRhp6WdDu9uINJi+u/eQ68GvWr67/R8IADBuAetCIYy6ISgE2x2bfSHH0HbB8+y
0R9+BC3FptpS4iJsNnxEaL22YMNX2GzCbLTwFSije2zQikorMD62OvgKm82NLYtNiq2HDQUuwnbq
oDXOamVtauCxglgvrA4W9QaeBh5LuAW7gaeBp4Gng8di3MHTwWNZ7eDp4Ong6eCxiHbwdPBYDi11
Fq0OHsvGAM8Aj0XCgzvAM1CZgRKde0A40KYB1HPDcugNwA+0aaBNg1YM2nXuoV0D/RoYkHQjMg2v
X8SmUfT72LSEfi2bYd6chvglbS5W411t+F3tLldj/xq71fpdPscun2P/JkfVAbt8jl0+xy6fY5fP
scvn2OVz7N/lyp0NddT+Pf53g9ySbILckV2hlF1eyC4vZJcXsv+QS7Kz5I7siqnsP+aoZGVXcGWX
87G/zKNpv3ZFWXa5GrtcjV2uxi5XY1eUZVeUZVeUZZf3sMt72D/jrjc2cpwUd9nlPezyHnaFW3Y5
Dft/cEkOpcItu5yG/T85miMq72HHe9jxHna8hx3vYcd72PEedryHHe9hx3vY8R52vIcd72HHe9jx
Hna8h52p+Y6vsDMj33ERdlyEnYn4jmfAO/vwO/sdF+FpY3vjmViucMkVLrnCJVe45AqXXOGSK1xy
hUuucMkVLrnCJVe45AqXXOGSK1xyhUve7XDJO5y3JbwWY8eF2f/OSptUxuqM4xDiHvSyNTjobnQY
F2b/O6tv+GTOyW9dWaZx7LHoMTbp3Xi9xo4v44Ubuw3FaSEq44epsHHAT2Epx7GHBqLfp2JX3xkx
KgZvzEBFG4kh7FYgq4U1ACdiP4XGYxGItXveHe5+DvC4MwOzWX1ngLnr3GPuH3eCW+rLK8AqwCrA
KsAqwCrAKsAqwCodVcHTwNMYbj+rAawBrAGsAaz5ZIA1j6n3gLCBsHlMaUUDagNqcx/6cjB3MHf6
sAO1A7UDtVsO0Sb3T8dquKM6mDvAOk/vgO++3FeBuRuz94B5gHmAeYB5gHmAedC9g+4dABsAGwAb
ABsAGwAbwEgvIJUqfffUo9Si1KHUoCI+LwodFNF4EY0XaLy6uXmR+Lz8Y+5O2Soi9iJiL//MUXVE
EcMXfS5aFEMoIu0i0i4i7fJ9rsQOpWCWH/C/OrDA5ymmRXxexOdFwYQiGi+i8QKNp0AX0XgRjRfR
eBGNF9F4EY0X0XgRjRfReBGNF31bWkTaRaRdRNpFpF1E2kUz/SKuLr8FjYa9aKZfxNUFri5wdYGr
C1xdyEDt5WQF0i6QdoG0C6RdIO0CaRdIu0DaBdIukHaBtAukXSDtAmkXSLtA2oXoeYGiC7P4Qi5K
L4ErTOcLYfTCus0CzxV4rpw817iqgLCA0GTWuGEBagGqOazxrALmAuYC5gLU4of6zr68cUMwF3So
Ab4YPN0bgA/AB90bYA4w2wPqvgrMAWb7E903BHwAPrDR3c+iFQH4AHMAtfLQyp0r/dyBWr0B5opI
VCxy9yEwV/q5ArUCtdLPFbfGRr/T9gpmG63uOwO+4QN19w/PMjt2HtroFoyQrY/NDot6WAMZXgNZ
WObjxZDlJM5Or1r4LcaWVQukBcl82d0cNiwJHm6PqQfFHd4B765zR3WGwN3i3ugAcwPdLjfHwAZ4
BngGeAZ4BngGeAZ4BngGeAbmYjCC551BOBiC81lAHWjlwJ09ny7wqRXp8qUipBqkEgRqO5C9BBxf
5X+GfDDSJ+68v+g2RLchug2tvIhvca4bkjA0fY5vszthiW5D8+j4DkcTreg2RLchug3RbYhuQ3Pk
ELl6yZvXtcUP+f/BxsSGxizEuyHeDfFuiHfjQ85d2FjZ0LCGwvrxE3ZL6EKUHKLk+Jij2YPi5hA3
h7g5xM0hbg5xc3zGlcFG9uev+L+x0dmQBIeIPETkISIPEXmIyENEHpp0h/g7xN8Bfwf8HfB3wN/B
XDug7YC2A9oOaDug7YC2A9oOaDug7YC2A9oOaDug7YC2A9oOaDug7YC2A9oOZq4BWwdsHbB1wNYB
WweB9YCkA5IOixrcHHBzWMag5ICSwwJkkbF0QMnhwWYSGUwiw6MM7wa8G/BuwLsB7wa8y1rKWJ5d
BcJAxM/7ADWAmu/ylmePQEAD/QrajiWCkgNKDkLSLLwML7wMXq+xAjO8AtPrLQP+DqanAW0HtB2s
kzwWZ77xbC9XwOQKmFwBkytgcgVMroDJFTC5AiZXwOQKmFwBkytgcgVMroDJFTC5AibvesDkXf0W
5VjkQ26tWM5uqgxJ9ZDQcZUhqQxJ9ZAgGRUxqgxA9Z19H05uiFHDgnoA3Ms5pSGPV5DHK5azuxsD
0LwHOWg0pzHGjaGtPofmNMa40YpGKxqtaLSi0YpOKzqYO5LRAdYB1nloB1gHWKd7O3g6eDqC7tHp
AOsA6wDrABsAGwAbABsAGwAbAIOc8SYCbyKYWYdZmZl1mHJNsvBp+qIpFykVKRMpESkPVTPrKqqv
ovoqqq+i+qp5dBWxV02fq/i8/jN9hOCmvFbNo+t32a1WVDF8FcPXf+Vo4hXVV1F91feDVasYqti7
ir2r2LuKvatmzVUUXTVZrj/l5tkLouiqWXMVM1cxcxUz10+4JHtMFF1F0VXT56rpcxXrVrFu/Zwr
s5NFv1X0W0W/VfRbRb9V9Fuh3wr9Vui3Qr8V+q3Qb4V+K/Rbod8K/Vbot0K/lYTRTn9X4eEKD1d4
uMLDFR6u8HCFhys8XOHhCg9XeLjCwxUervBwhYcrPFzh4QoPV3i4wsMVHq7wcIWHKzxc4eEKD1fC
u2T8O/YArADM3lfzQ0FYQFhAWLhPcHKAMEAYIAwQBggDhAHCoMcCYAGwoMcCPAGeAE+Ap4KngqeC
p4KngqeCp4KnggddtvZaUa1UVhVL/ila7md3ZgNPA08DTwNPA08DTwNPA08DTwNPA08DTwNPw182
4Z1PB2GHAo2nA7VzcocCDbV7A8wdzB3MHcwdp6bhp7iBnVZ0WtFpRUdh3Qmd7u2AH3TvAPMA86A5
A6gDqIOnD+48gDro3gGwAbABsEH3JuXkSOQ45CjkGCR9Z283UU4T5TRRThPlNFFOE+U0UU4T5TRR
TtMUsn2HjhHqpilkE8E0EUzTFLKJV5p4pYlXmniliVeaeKWJV5p4pYlXmniliVeaZnxNdNJEJ010
0kQnTXTSNNFrYpEmFmlikSYWaa9ohbq8iU6aJnHt1xzNzhWdNNFJ+y1Hs8/FK0280uCVBq80eKXB
K42wLHlIw3lIG0zTYJpG/WanKG1QToNyGpTToJzGjK/BNA2maTBNg2kaTNNgmgbTNJimwTQNpmkw
TYNpGkzTYJoG0zSYpsE0DaZpME2DaRpM02CaBtM0mKbBNA2macz4GgTTyH1OUtdwUtfGHLCxtsJp
XhuU084pf8cf78YD+OCGweUB+ODkALynh51JXKc5nqB12hW0K2hX0K6gn4NWBP0cgA+D933AXMFc
Mc2dR1TAV8BXQ+XpFcwVqJVHVN/HJwO1wvGdQemAr4CvgK8ISQVzA3OjnxtQG1Ab/Wxb37lzA2oD
qudGnYdiDKz3vKJ0gt0Gz7VTYa2V2NlTxixRp/wgh8PnQG/DJ9PhgwZaSCwbHlMPnEfH3Tt8Z7rF
Hd6R+eE70xy39ITKQ43ZUI1wMAR+lu88EOzBXGWA+dwDSQ+Dp+cHHX5eRUvPk2HrXCpGGolYT0sy
aHtWNlhP2zJoe3Jq9iAZJ7bstpSl7Knsp/QGusi1f40rZzbUef3r/L+ysbGh5nQxcf/mm89/coVG
rtDIFRq5QiNXaOQKjVyhkSs0coVGrtDIFRq5QiNXaOQKjVyhkSs08s6ERt6FGkQff/Dyvd98+urn
L1+9/vsP3v/go5fvvf7801fv//Tls8JArz/+5LNfvPzK57/9/K9XkOhPw/F7qxP97lu9/uDVx599
rsfnofc//PArP3v9F+WF2bqcqS5nqsuZ6v/EqFvGUrjkXvXvsDuFTe5Vl3vV5V51uVdd7lWXe9Xl
XnW5V13uVZd71eVedblXXe5Vf8mjUqB/wv8p2XK4uhyuLoery+Hqcri6HK4uh6vL4epyuLocri6H
q2va3uVndflZXbP1Lveqy73qmq13eVVdXlXHq+p4VR2vquNVdWbrHR+q40N1Zusd16njOnVcp47r
1HGderpO4Sy45Lw9DqXekzSR5LfHHm8AVV5VOB1ux73quFcd96rjXnXcq4571VklRzbdcDbdzio5
0uoGaXWDtLrHOTRwp4Hpi3V8sc7iOFLvBql3w6l3O25aZ2GBk/F2bGq36TwtYfB0TCKOW8dx67aF
RAa61QM3jTS/4TS/na9Xne+347g58W/HX+vnCHq8PCgB+Pz6kHTB4XTBnTBCP7u3+iqaEzTHXVfp
Dfehe8zdEgyK2+XmVAal0pmVPjwRQiyVgat0psEbqvFUmnPe0PcBaqU55w2Rw0orzg2aU2lOpTmV
5jSGoDEEDYQNhA2EDYTNHc4jmqHyrAbUBtRGKxoImy/3VSBsqHm1/IC5g7nT4W5FB3wHfEd+3MBO
Kzr93JGWDuYO5g7mjlI3FM3901EHd1RHC9xjuCiELDoeXMeD63hwHW/ROaU7rlzHleu4ck433Qli
dLyzjnfWCWJ0PK+OK9dxuDoOV56aJ+ZpeRKnqAlDftbAz8oBH4pmDPlQQ9GMIQIeIuAhAh6KZgzR
7VC4fIhlh1h2iGWHWHaIZYdYdohlh1h2iGWHWHaIZYdYdohlh4IYQ0GMIU4dHwFfnTVErkPkOkSu
Q+Q6RK5D5Do+5crsMrHsEMuOVxzNnhTdDtHt+DVHs4PFu0O8O8S7Q7w7xLsD3h3Ju0HS8HDS8JFM
HM4ePpKSw2nEB9w84OYBNw+4ecDNI7k5nHx8QNIDkh6E1J2XfBDoGHDzOLk5NXPAzQNuHkQ8BpQ8
oOQBJQ8oeVDM2qnPB8v3nAN9nCTdfTngd8AnAQ8IeEDA4yTgjnXr9E8BvHm302OFVhSAmXfTmgx4
d8C7A94d8O6Adwe8O07etTHqtMK822mOebfTrkK7AkkIWhEMQQDevNt9Fb0agA/AB+AD8AH4AHwA
NUAYAAseUQFWAVYBVgFW6dUKngoe8+XwfQBWAVYBVgFWAVYBZsoZhgHCxp0bhxoIGwgbCBsIGwgb
PYaxtNmxFbHBsG2AHcep5tZuK7XV0zpoRbOCWC+sDh08FuyOEg0Ee/g+ILT4Dd8ZqBa/7j70Q8Hs
0XH3DjD7Wb7zQHcGmM8NDzetGNiEQXMG3QuvQYEDChxQ4DhDFsOd8MVV+4v8cbtD/1f9NP346tw9
9PNV/XxNP1/Xzzf08039fIsr0WIh2V9oTTtJ0vcX3+b/u/7/J/38s36+o5/v6ud7+vkXLnmwMenA
v+rn39g96//v6+cH+vkhRxf9/yP9vK+fH+vnA/18qJ+X+vkJV65sbDrwU/7f9f9H/F/YyN79WD8/
Y3dlI/v75/r5hX4+0c8v9fOpfj7Tz6/080o/r/XzuX5+rZ//0M9v9PNb/fynfv5LP0nAx8adjQcb
ExvzG8/icoU3rvDGFd64whtXeOMKb1zhjSu8cYU3rvDGFd64whtXeOMKb1zhjSu88eWGN97hnCsH
vgWgKxsbGzsbhY1go7LRGITOxuBQZ2PkIfHM057dG/RglmakDt+xh67c6cp9ZgPMO5h3MCfnU70v
qN53HEKewjcM9vjOtGtvbNCKnXYVwOd3WlQBDKoAHocQCGtZgDCzb7kcIDX/gpp/Qc2/oObfcRUI
UbzUo2PDd/YNGYswZh5RDZ5nVVpRjZlOKAxupQ89ypVW5LSXIoLHOTw0MyxRVvDYw+AGzwr6p9IK
j44HJbizu9edGYio+7DSCRWhda9Wb9C91Q1klIO2u+fDh2hXdbsQ7EavVhroznTXVdpVaVdFbJqv
ooHujUoD3ZyKDlagVqC6FRWoBuZHNPSigbCBsIGwgbDR8w1gDWANYA1gDWANYA1gDWANYB1gHWAd
PB08HTwdPB08HTwdPB08HTwdPB08HTwdPB08AzwDPAM8AzwDmW8IrXtsgHB4TL0HqAOoAxF19w6k
1/2MR2HnIX2BY0Pgb75mY0NdcEPMc2RuSHvzAd3zpjve8n7qittXOQndaOh8Dt5Nnsvt67k7h/Im
F+YmF+b2LY6qP2//qJ9v60d+yk1+yk1+yk1+yu17XImkpkDc8Fw649CxPSkXN7kwt3/TjzyXmzyX
2w/18yMuwQ1JCbrJhbn9mN3ZmfJlbvJlbi85ml37E/38VD8f6Ud+yu1n+pFXcpNXcpNXcpNXcvuU
2zEynbFKUb19xv85SPJcbvJcbvJcbp9zUg6QXJibXJibXJibXJibXJibXJgbLswNF+aGC3PDhbll
fODYWNhY2djY2NkobAQblY3GRmcjAeMQ3HAIbukQHBvg2cGzM+wDQzx8Feo3EJ7hy8G8g9m+wvCd
0alBk3dasdOKnVbstGKHBqz8g2cVI+ShdhoGPVZoaQFqAU8BRqHn7T0P+rn4zr6hWwH44g1aUWhF
oRWFsQjGIujVAGGAMEAYIAwQBm0PgNnRGUj34OlBKwKEAcLwOSAMEFYQVhBWEFYQVhBWEFYQVhBW
EFa6roKngqeCp4KngqeCp4GngaeBp4GngaeBp4GngaeBB0tuE37abqy/jTgse8NQUxLi2ANCbDQh
8v2Uuu4NoHagdqBiX+Hdm60m8YH9lN5cgbCfYpzmbT/luQMeO2cDZyMGJd8ol72fWjDAbO1ObqZo
xbGHZw1ftXIO4K2VVkarlXVnANVCm0Nwdzt18d2t1D3uuvCuy+55kVp3VxDgLiq9Kwhw/wY38J0q
G3mTb/J/3u1b+vlHdo/cSNebuhpBXY39LgK+i4DvIuC7CPj+Xc59sKERvH+P/9Wn93/hf3XtXbx7
F+/ev89RDcX9B/y/sZEdJkq+K4Zwf5+j2X0KJtxFwPcPOapxuSuqcBcB30XAdxHwXQR8FwHfRcD3
X3CDHJZP+D+7VpR8V6DgrkDBXXR7F93eRbd3BQruv+YGORai27vo9i66vYtu76LbO3R7h27v0O0d
ur1Dt3fo9g7d3qHbO3R7h27v0O0dur1Dt3fo9g7d3qHbO3R7h27v0O0dur0z7b5DrlRJOfYAbAfY
jjmofgQIdxDuSHX104G6A3XnEYX7FE4uQC2PN56J5QqYXAGTK2ByBUyugMkVMLkCJlfA5AqYXAGT
K2ByBUyugMkVMLkCJlfA5F0PmLyr36Lc/uELfPRgoQcLI1rouELHYURsPSDtO6R9txWw+p8KX+mU
oL+C/spICJV+jz3eAGEu5aAI8LEHqGgxfH63+lpTrZQELqghfOwBc8BO1XdmjC0rFgg3x5gNzHeu
iGMF4bkB1Gpx9B4wVzBXY6ZdFcyVfq5AbUBtQG1AbVhNP6KBubl7eWijExqYGwgbMJrv46uQhAbC
BsIGwg7CDsIOwk5ndoB1OrODp4Ong6eDp4Ong6eDp4Ong6eDZ4BngGeAZ4BngGeAZ4BngGeAZ3hM
PXA8fYBwwKAewQHU/AiRYtSxn2M6ENEc3Idu91BzH7rDQw97+FzUK129h2+LS+LRz0F/fJX/1bbH
1/hfTXzIHXjgDjQa3PA4Gs1rdEEKxEOz78e32G2UoOp4BvYEUzwemqE/5CA85CA8/pmTEO4Uncd3
+F8j9sB3SEF66PPMx7/o5185mi2Wp/DAU+h4BilrD83ZHz9kdw6EPIWHpuqPH3M0x0eewkNT9Ycc
hIcchIcchIcchMfHXEn3pfw+fsb/9Fun31KMH/ImHprOP3AiUrYfciIen7Ib2UhJf8itePyK3dmZ
8i8e8i8e8i8emsU/5FY85FY85FY85FY85FY8cCseuBUPFkpQ1PvYM7HhPQsbKxsbGzsbhY1go7LR
2OhsjNxI/+KBf/HAv3jgXzzwLx74Fw/C+g/cigduxSPdimMDPDt4dvDs4NnBs4OngKeAp4CngKeA
p4CngKeAp4CnoJIDEho+B4T24oevAmrBBtmWDV+F5A0aWGhF0IqgFUEr7LEPJHrQG4EZGnRLkj1V
qaOcvRE0OWhOAD4Yggy1U7k6ytl1Aeb0A8rZmWE8nUMLG34WLa20tNLSCsLKeFUeWt2cjQ2gVj/C
mIMNxqLy9EpLqy9nUCrtqm5XY4NerTSwuoFuDhuNdjV63mPaaCA0gvfwIGLwMH+YOMwYcEQ5ZaPR
5PT/qNodVO0+zqFdjd5otCv8UBqYFFJOIemA7zy0+1kg7DQH4jBjmCrMCvgcD/OALb+NPD7HwzYb
n+OBz/GwsbZdxud42BLb9p4WcoDHumzNHe5eZCy8B4TDHQ5Uq/AA83D3eo/AT7rLpCsmHZ3UwilP
cf/7Jnngq/yv9k9fy/9TjSb5E5MC9JNchEmhg0msP32bS9Rhk+h/Unxg+g5H1YuTIvWTOH4Sx08K
Akyi9knB90lEPmmmP4m/J/H3pAn+JNqeRNuTaHv6CU/UcE3i70n8PWmCP2mCP4mSJ1Hy9AlXanwn
UfKkef0kAp40r5/Eu5N4dxLvTuLdSbw7iXcn8e4k3p3EuxO8O8G7E9P5CbqdoNsp6TaoO3/sWdnY
2NjZKGwEG5UNht/Wrfo+nQ1kpXLnpOQJSp545U5p+2MP4HfA70BNbp7g5glunpjyF9ZqF8zlBFtP
sPUEW0+w9QRbT7D1BFtPsPUEP00n5VTuU4BagGpeqTyigLmAudDkAsICwuI7+3IQFhAGCAOEAcKg
DwNgAbCgDwM8AZ4AT4AnwBPgsdqbYKrxgDAY9wbC6g0ox9zTEIBGrzYw1/sbz2JyBUyugMkVMLkC
JlfA5AqYXAGTK2ByBUyugMkVMLkCJlfA5AqYXAGTK2DyrgdM3oVaQS9fvff5x58cDztr8nz2/qvX
x57b/pWfvf7rlQf6g4/+vRWBzqv137/rv3//6OX7Hz4dyxt95Ys7fAl5YiabSVu908jYSjT8pIYc
Zgaugj8xkQKz4FhMp3GoSGbFhbLP0XwI96ghvdbBiohaaC2iDSVqKNEpkAi/JbPRLrfC4I25gdnA
jOe8IcAa2nTuAWEHYQdhB2GnwzvAuruXlnYQdhB2EHYQdhB2EHYQdvB03xBgA2ADYANgA2ADYIMe
G+AZ4BngGeAZ4BngGeAZ4EmXZdaps8UB25PdNuvCGbOVnTjn1WrLjO+SPTvrE9JZLsssl2WWyzLL
ZZnlsswKVMzyVGZ5KrM+/ZzloMzf4+bqlFmeyixPZZanMstTmeWpzD/kEnXfLJdllssy/5ij6tNZ
vsss32V+yVF19KzYwyzfZZbvMst3meW7zPJd5l9wpUZm1rqK+Zfs1jjNn/K/hmuWNzPLm5nlzczy
ZmZ5M/OvuQRyTkGb5d/Mv2F3jpYcnVmOzvxfHNXYz3g8Mx7PjMcz4/HMeDwzAYY5HZ3jPihbivJM
CdKCTM/4QDM+0IwPNOMDzcQeZjyemdjDjKMz4+jMxB5m/JsZ/2bGv5nxb2b8mxn/Zib2MOPNzHgz
M97MjDcz483MeDMz3syMNzPjzczEHmacmBknZib2MOO7zPguM77LjO8y47vMfGBd+Ma8YBdmvJmZ
AEPBUsy4NTNuzcxn1gUjMp+TyAHC4PLwOT4E+GDcByQ0aI4nUoN2eUblyZZnVIMGBk0O72EI7B4N
dwJNDgbF7hEmDPdoZuIz5xzn6f4eL5HrsYfOrDS50uRKkysNTCoNfNY4RznfSgSpRgOfNc7hrrS0
0tJKSyvtSkcwiHwEcak4ZaMyuKLb4xA3bDSw0a5mqDyrgbnR0kZLG1AbI9iQzIw9BGGSwIeeCV0H
r66Cj/sDZ3qGpGcoeYZTZ7h5NskQxw5ENE7JhFNs/23VbcBtq216bWxtZSHp2bbT1vI0jB2E3e3i
WbZsgwZaK62DVjTr1wCYVcaaMgA2AGYFGQCz8KeoLzp10YmLTlt00pKnqG8XLeZYxMSLmHgREy9i
4kVMvIiJFzHxIiZexMSLmHgREy8KFSwi4EUEvIiAFxHw8gP6DaVIM7IoeLD8iN3qj0WUvPyY3ehA
zqUWcfMibl4UV1hEyYsoeRElLx9zZfaRuHn5ObsR2YxqBsHMRSGHRWy9KNKwKNKwiJuXX3FJ9rFI
ehFJLyLpRSGHRZS8KOSwiIkXMfGikMMCAS8Q8AIBLxDwAgEvEPBCpGEh0rDAsgssuyTLHlAHeyob
jY3OBuck3S5Jt0+XV/S5AnUH6g7UHag7UHeg7kDdgboDdQdqEvACAS8Q8AIBLyxjjNOgV55ejHBi
A5mrwCiAL4AvvhzwBfDFVwG+AL4AvgC+AL4AvgC+AL7QvUH3BngCPAGeAE+AB82xrhBpWKwdFnao
dIFKF4u3hfYUiQoeD+7ZvSsbPMsdfvYzT69AdYeflwPsvI+v8iEwVzBXMJsUK/J8nkMrGq1oFlou
b3RvA3yjexuYG5gb3duA2oDagNqA2oDR/Cy6twGsA6zTvR08HTwdPB08HTwdPB08HTwdPB08HTwd
PB08HTwDPAM8AzwDPAM8AzwDPAM8AzwDPAM8I958npgrYHIFTK6AyRUwuQImV8DkCphcAZMrYHIF
TK6AyRUwuQImV8DkCphcAZN3PGDyLueJWWDUBUZdYNRVLVjVn6tOW3XSmqeoH1cx6ipGXcWoqxh1
FaOuYtRVjLqKUVcx6ipGXb+DrObNRa2rqHUVta6i1lXUuopaV81tVxHpqintKv5c9dniKrZcxZar
2HIVW65iy1VsuWoCu4okV01gVzHhKiZcxYSrmHAVE66apa6vaEX2jZhwFROuYsJVTLiKCVcx4Som
XMWEK0y4woQrTLjChCtMuMKEK0y4woQrTLjChCvzzTUJ8AlsGowVJlxhwhUmXGHClYnnyieJcZqZ
BtQdqDumsXkPmHcw75jGRrt2wO+A3wG/Az65cYUb1+TG4z5+BOBNiY2HFmOmxwrgC1ALeAo3LL7c
VwG1ALUAtQC1ALUAtdC9BYRB9wbdG+AJ8AR4AjwBngBPgCfAE+AJ8AR4AjwBngBPBU8FTwVPBU8F
TwVPBU8FTwVPBU8FTwVPBU8FDzbAanSKaAOPhc2iZfmxAHi4PcoNPA08DTwNPA08DTwNPA08HTwd
PB08HTwdPB08HTwdPB08HTwdPB08HTwdPB08HTwDPAM8AzwDPAM8AzwDPAM8AzwDPAM8A4/DfTgA
NgCW5JG2Ji1NOtppXNK0pGHZRB6byGMTeWwij03ksYk8NpHHJvLYRB6byGODPHJUN5HHJvLYRB6b
yGMTeWzf55LEKhbZxCIb07EUik10solOtg84mi0Tr2zilU28solXNvHKJl7ZfsaVhA5StDYxzSam
2cQ0m5hmE9NsYppNTLNpqrWJYDYRzCaC2UQwmwhmE8FsIphNBLNBMBsEs0EwGwSzQTAbBLNBMBsE
s0EwGwSzQTAbM6wNXtnglQ1e2eCVDV7ZmE9tsMjGfGqDPDbSAQZh+UAhN2ZYG1WMAxXdoJMNOtnI
wh9o7wavbPDKxpxrg042gp6uHUrR0OM+xJg6mB0g64AvkGKnV4sPeQ+tKPRzAXwh/NQhzu5z3Bwi
ZZ2WFtrloFX3yfgB3YdocvEGbQ/aHrTdkSnHhobPoe0Duh2cPBjcoKOCTggGd/gQveEwyGBKO+ix
oH+C/hm+CoEMOiFo6aDrgpYGLa20otLSipBUwHvqN+jwQYd70m27OejngWhVwFegVvBUmlN9Q99H
jk49xa/SriwqUPFmXF2AggE7BQOOc2hF4z6Nq5oPMQSN0WlgFqce95nY8Dkbe3zyzh5ait21ibU1
hXc3G0fUvJ7qYH23dudytnpqSqcVVsZ8jVnx0rZTBzvArE3d9/HJQE2VqTh5Tpq+nbrT6fDhDqeB
A8yDDrc6WOYHnZlvFyqaW3nJUYkyV6LM9dRKC/9gLIL+CT+LQQlG0DpoMR40cBg8MAJgVk9LZvih
foRumJY33fg0trvvmLt9G7o5PdW0wPtX2a2+3uU97PIe9m9wNM+WG7HLjdjlRuxyI3a5EbvciP07
eWWlO1P19+/yP32Yb00qTvAuV2OXq7HL1djlauyap+4/4BKEMNV/l8+x/4jd6s5dPscun2P/gKMS
z10+xy6fY5fPscvn2OVz7PI59p9xJWORJmX/Of8HG/R3euK73JFd7sgud2SXO7LLHdl/xSU5FvJL
dvkl++dvPpfLFdS4ghpXUOMKalxBjSuocQU1rqDGFdS4ghpXUOMKalxBjSuocQU1rqDGlxDUeFe/
6XjxD1+AThGR37TLb9p/k03KSccuB2qXA7XLgdpxoHYcqB0HaseB2nGgdhyoHQdqx4Ha04E6Hucb
FjaCjcpGY6OzgQ1oyGZDNhswduS5gWfnWTvgd18F1B2r0MC8+3Kf40M0Z3dzsAHplO/UbazY/h3/
q0ICO/7Xjv+1/52tQfOhHDXm9RV3usIYLq5HBb3jkK9imAr9U9DIZBXXsHOhOlejcx05F5CjENxO
IbjdheBcAY6abzs133bXfKswmIu/Udltd2U3l3RzLTfKth2X+yoQBgiDDu++IVADqEHXdT8LzBhQ
XCGXAnNeZidfJsPycR+gVm9AFN0b9Gr1BuAr4LFSBApIjLvvp5vTfRWY0ejTzenc0PrVAG9N6TzL
KmNNsTpYCxoPtWA39zPy3IHavAeRsBg37wG8RdRyaNnwKHdjRi+6rwK83Zzh+9AK93xHPYcfQXPc
G52ed3Pcig7mjv0ZKNpAJOz4DIANZH7QvYN2nVf5ZJ8D+IHM2ycaNGcwKHZqzj00ZzAW5zk+RAMH
DcxQRip5qngquD2x8455gDHJ29hB427yXBrmqXyN/+9sqBvK1/lfvVEUEinyZYp8mSJfpsiXKfJl
/j/23q3Zjty41v0r+2VHnBdKnHPWvNSD4gQyAUiWZMmSbMvyi6MvlJq6NNskpZb868+qHvmNok+E
b9sSSZ9TEStiYtV1AMjESCQKmU22TNNn902ekCbzpMk8aTJPmsyTJvOkyQHSZIw0udGbbJD2KWjU
JU3+9CYbpMkGabJBmmyQJhukveTOGwX1WJOHvf2Gw+qtJoujyeJoX3JWotlkejSZHk2ekCaLo8ni
aPKEtN9zZ/WfqL3JJdLE6O1PXFS9K2pvUHuD2hvU3qD2VtS+3ZwUOqduFO6cGhx5UFgpNK6ZHAkK
ScFP9nO4uPwnjc/uO3OBzlyg4anvEEyD7DtM0/CxNDi+wfENjm9wfIPjOxOHDj81XCsNT32D0RuM
3vCoND7N77Baw7XSrCDMZJs1wyphadyFK4DaXHhwCvDN4OkCZMRyAJG3vU/dg82Y6bjgrgB8uC94
jlveDb43XafAK9yYbhbXy7Uw+B0GwNIwgiM0ZiCraTxUcH87ouXn+HbfldQi6YsEc4I5wZxgTjAn
DZ40XdJQCZ4ET4Kng6eDp4Ong6eDp4Ong6eDp4Ong6eDp4Ong6eDp7aHd6Z+fa97B+FA9dwaA6gD
HUxk1e0zAD944PDtgB++GHlOF5Bnt+rwEaozEBK38/ApH6GmwzX1EYuWT1HlSZW7C1R5ukA3TZrO
HTep8qTKkypPqjzpr0l/TarT/UA/h3pNRL0zUFsSIGdYuXwTpcfWkc7o3WnqEpjSmaAxSnxKcUJL
GgG1l0yFvBMhIg8ReYjIQ0QeIvL4MXcaSb1Q1B4/4bAB1JtF9iGyD5F9iOxDZB8i+xDZh8g+RPYh
sg85HEIcH+L4EMeHOD7E8SGOD/kZQoweWskIEXmIyEOugxB/h/g7xN/xumpRRm+IyENEHpqah/g7
xN8h/g7NyEO0HdB2QNsBbQe0HczIA5IOZuQBNwfcHEzEA0oOKDmg5ICSA0oOKDmYZAeT7GBJI6Db
gG4Dug3oNqDbYN3iqdDee0yRw0lyOEkOJ8nhJDmcJIeT5HCSHE6Sw0lyOEkOJ8nhJDmcJIeT5HCS
HE6Sj9FJ8hHHEdl6EN4brjANtyLLw01AC660oM2BQes0BpVBMzXatPGKxgOb70LjB2PtoE0brdxQ
bg+og1ZutHvzEeSgUZ2GHDTYe/gaqtMQCFtkg9uDWgS1CEaywZOD6gR1D8AH1QmgBlAZy7BKiOi1
OqKX43Q5ChbxrFbHsyKi1OqIUgSSWgkktTqQFGGRVodFchAkRzoiVNHqUEWOR+R9Ud5a5G07bMBZ
vQHH2228p8abYrwFxjtf/D2/v573N/H+/N1fuodHWebj4XHVQxN8HruEW54ttJbVXfx4suVwAMxS
Z/mxkFgS9tsBNgA2ATYBNgE2ATYBNgE2aagJngmeCZ4JngmeCZ5pmYeAdjxCmBB04avOTwaByUBR
aJMnFuiSiJKHFKOmvoVMpsYTC7rqlaLWFLXmDzmryqY4NsWxqclyilFTk+X8KbcwOFSzpBg1/5bD
aqQUtaaoNUWtKWpNUWuKWlPUmqLWFLWmqDVFrSlqTVFrilqT6XP1RopjUxyb4tgUx6Y4NsWx+RV3
VtOLbFOT5RTHpjg2xbEpjk1xbIpjUxyb4tiEYxOOTTg24diEYxOOTTg24djE692RqoRsE7JNyDYh
24RsE7JNXNsdoy5h3YR1c5/tIp3Qb0K/ybaLAcEkPJzwcMLDySQ3obdkkpvFattzzhRon9VvB3zN
dnN/aQOz72pAbUBttGpx2HjnGqA2oDagNqA2oDZarAGsASwAFgALgAXAgpcGwAJgQdMFeAI8AZ4A
T4AnwBPgCfAkeBI86ea9UuDtCcJySQ+8AXyfvPr7ZL5I3q4BaroA5gQzwxgc5q+J+UZ4e85KwXdR
i04talvp2Dul07wd8J3m7WDuYO7GDIwO5g7mztu7X+GLwdxp5w7CAcJBOw+ADYANgA2ADYAN2nmA
Z4CnZqBjl7oBsAGw4VMAGwCDR2COsQstFGLugPDsZU5zAIRn73B6LPcQ6xFzH5o8ttQAUo1bTVsN
W81ajVpN2kVdXdTVNQfsIqououqaA3bxU/8R9asHiKi6iKr/pM6WgnbN+Lr4qWvG10VLXbTURUtd
tNRFS1201EVLXbTURUtdtNRFS1201EVLXbTUNePrYqMuNupioy426mKjLjbqmvF1kVAXCXWRUBcJ
dZFQFwl1kVAXCXWRUBcJdUioQ0IdEuqQUIeEOiTUIaEOCXVIaDDMdUioQ0IdEuqQUIeEOkuvg/0n
g8GxMwfsuGUHw2WHljqTwc5C62Ak7UVL2xHAry5Qi5VarK4F40LtURkMux3G6jBWh7E687AOP3X4
qcNPXq5gnWJlnWJ7BU9uVLBRiwanBi9tgG+A93AZ4Gl+oO/yKaA2oKIlzLEGLNL3Pg0wu3fcF25w
t3OAMEDoNnRNy686iqi2gmEANbADkjYMMPviBHMCdS+AOcGcYE4wJ5jNYSbF/S4kYb+dBt+fQ72S
Bk9qkTRmAj6R+aRzkxbr1NT0tr/dL+Vd3VBpzJocjP2lnVp0wHcwd7+dLjCwHQbNYjx+6f5kermv
7z1GyeEwORwmh8PkcJgcDpPDYXI4TA6HyeEwORwmh8PkcJgcDpPDYXI4TA6HycfuMPnQ36K8efH6
Dy9eP3v78nfby16/ePPq968/e/Hm21998vrNduT8/Fu/fvOX8er8p16t9nnzrxpoXZbL/+tu/fdP
+u+fvnjxyedP5+pB3/rmCf/9eDArH6ltXcngucsGEmUh6RZRBLujnrsAIOEwN58/Dowq/Fur/Vv2
ZtllZU8VzqcV59P2HGNG0QYK0hH+HRh4ht+O7gzfTnUGKjNQh446DNRhUK9JvVyd6QL1mgzvrumk
ghNuct0nNZ2086RVJ4o/6Ca3z6Q13FCTjht+DhWcVHBSwTIxbVcOv0nNVI1UTTRoVg6rdatNxnc5
W1fLXBsy14bMtSFzbchcGzLXhtwJ48c8QDiHzLUhv8KQlTZkpQ1ZaUNW2pCVNmSlDVlp4xc8zrUt
oLLbxid12F1ZPTg+5X9GOnfkpAPKKB6y9oasvSFrb8jaG7/iWjRoIsMTiXXPuh/dfdVr4wv+r0Z5
yf/V+Ap3NQnxO7EuhgzK8VsOS9CGLMshy3K84qwEc8jEHDIxh0zMIRNzyMQcMjHHH7jzSkESOL7m
f8nf+CP/l6zJDB0yQwdm6MAMHZiho8zQ7daVQqMQXOPXJ0duFO4UHlzTOeIHDgqTU42CX+En97q4
7KTJR/0T43Xigp58yz8xjwYm78DvMvC7TGLLTazPifU5sZwGLpmB7TtwyUyMqoFLZuCSGbhkJubj
wPYd2L4Dl8zAwB0YuAMDd+CSmWwXmNiIg82YE0tuYpwNjOCBEWzP0LCYWjAtg7tIJe2TvovObTRU
+jlUp1EdS0vSUEmnJO1TMUQnhuDYBalR5fS76JT0K6hy0nS1F2RiCI5dWpInB9UJwAeNYLFJvx2x
sSBZWpLmDfo0aIRAwjstbyGxJITx0JXhd/Fkd0FH1DuY00do3g74DlT3TlLBpJfdBW55t3Ongp16
JfVK18tHqJcb3O2c1Mtt6BZzs3T6wvXqQN2rQ3e7XjtC3t4NHhhGuN/ui30NUDvd3dGvDvgO+I5o
+cigFoNaDAaiTk0H1Rm0/KAWg5YftDMGAZbAxICb77wCtRq02ECJ9ndRL7gcd9TOwrij4N3tdhrc
CCevmMiYMU+qM30xneLqTBeo16QvJn0x6QsYl6WZiWU5MR9h3e2Ibp9uCz2lHlaPKs4uqp6q+Pwu
t9DT1UZTBtP8Kw7XbbKcpiyn+UPOIgyTDirzZcqomjKqplxfU7bU/AnXIibl75s/5X+16vwZ/6tx
p+ytKXtryt6asrem7K35C26hG6r1p+yt+QmH1RdTDrMpE2p+zlk19ZQtNWVLTXnOpjxnU56zKc/Z
/A130hd0gnxp83ccpr3pFtlAU961KdNnyvSZMn3mG275pi+eBsPiryljaP6ew5LTKcfblONt/pGz
1cgyfaZMn4npMzF9JqbPxAM3y77ZnrFQuHLqRuFO4cE1PrVSaBSCQlLoFFzJO4UHp0p2y2TZTvHk
lVqs1EJ2yXYNL12pzgr4FYQr4FfetfrJjecEBTCvPgJ4WSrbkcERn/IRalHmyHR3Vgdut88qhK+h
U9wF4buojhvcTRe0htvQLeZmafSF6+XqNPoiaMygDXeEvD3olACGEG5HaF7jCarjBwYyFshPAHV/
oOsF+KBe+8X0V1CvvUAFgwoGnRKuDtekq9MpcHG6XvO9x4Y5HCaHw+RwmBwOk8NhcjhMDofJ4TA5
HCaHw+RwmBwOk8NhcjhMDofJ4TD52B0mH3GcmBWz9AmoK2Po+ym6NhGspCdkE20F+i/ptqTb9ovp
iaS39rvo0aST9gIdmXRSugPopHS700m+q6Me3fXiOR1R62DuYO6IbAdqB2qnFjKXtgei0sbT/Xb0
3wg74LsvRoUMvtMXHQXujAiD6gxODbqpu0B/uTrDR+iLTsd1FMb1Gr6LRhi+mE4Zvgtd6rTq8HNo
H1d5+GIUxnXfK0iL7TX17bQYFgc2GsbFdhe9POjc6SM0wkCMB60x6OXpuxAJDA1bGGU3bHfRCK4y
lkTZDtspWmy6gGxM19RHqCnMX3zenjf9hH5SPzTi3mR1gkYdvsJHpq6on+/q53v6+Sv9fF8/P6hb
3LRqyPb8h/r5aw6f9f+P+P+i/3/M/4v+/xv9/EQ/P9XPz/Tzt/r5O/38PXde9f/P9fMP+vmFfv6R
i276/xP9fKqfz/TzuX5e6OeX3HLX/7/Szxf6ecnZh/7/tX5+o5/fcnbV/7/Tz5f6eaWfr/Tzz/p5
rZ83+nmrn9/r5w/6+Vo/f9TPn/TzL/ops2srnClcKCwUkOCJas3g1I0CYjqTIw8KKwXf3jmCUCGC
ZYhtBV/jUyVPmF2nMli2AuBXH6EWMsS2IwuFK6d8DTVdfYp6ySLb7rpRuHOKCspG2075SKNAQ5VF
dirDZztCBVcquFJBWWQNA7s93yuoem3PaRR4xV5B2lA13Y7wrka9XAtjNrAG+LI0T2V/tefvPNkP
HFxj8BSCWgSdsh+hOkEXBF0QdEEANYBaFtnpnQf6OYAPmiVoqP3JNFRQi6AWQQUD8ImMGU/SF8lL
E/DJK9IXAz4Bn7RzAjVp5wRYAiwBlgBLgHXasIOng6eDp4Ong6eDp4Ong6eDp4On0++BzLsLOgiL
XE/VKQ2WbbBsg1y3a3jFcMfxrgH4AfgB+AH4YRgGBoyBerorh4UEySyb+lR92uDLBik2s9sJw/SE
YXrae3n4pX4XVYbxiscaPLbdTnWgMHOXScscZJ4xe5goihO2B/piRN3CNl0L3w5mD7k10p5U85NE
78ToVFJ60tWnula1O4nITyLyk4j8JCI//UA/ou3TX+vnR/r5sX7EzSdx80ncfBI3n8TNJ3Hz6e9B
4zoXWpH0SSR9Ekmf/lE/4ubTp9xSNRNJn0TSpxecVbucfqkfkfTpC85W9V/qRyR9EkmffqsfcfNJ
3Hx6xZ0IXenr6av6v9T29M/8L+09ib9P4u+T+Psk/j6Jv09fcwsSWXp+EqOf/sRhidNJ1H6C2k9Q
+wlqP0Htp6L2rXCjcKfwoLBSaBSCQlLoFAYFtK7zivU5BYCtAFsBtgJshbo6yt8BtgLV3NyBuroA
5hUl6chS9xFqsbpAdVaqs1Kd1dVBVTrXNIa5GgHPfoFk4KzHn/Xws24717V1yXfrFg2Z7SwdO0vH
ztKxs3TsLB07S8fO0rGzdOwsHTtLx87SsbN07CwdO0vHzn+vH2nUWRp1lkad/xE06qizVOsss/cs
jTpLo84ye89SpPOvuFM9e5bZe5YinaVIZynSWYp0liKdpUhnGblnGblnGblnKclZSnKWkpylJOc/
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
jbhdw0uldaGQ0qGQ0qGQ0qGQ0qEA0vHc99LPlb5acaO3/1cKhlvP+55+lPRUIaVDIaVDAaSjAkgv
uBaWci2EIkmHAkiH4kaH4kaH4kaH4kaH4kaH4kaH4kaHwkWHwkWHwkWHwkWHokSHokSHokSHokSH
okRHRYleSHutKNGhKNGhKNGh4NCh4NCh4NChmNChmNChmNChmNChmNChmNChmNChmNChmNChmNCh
mNChmNChmNChmNBBTOggJnQQEzqICR3EhA4iQAcRoIPAz0Hg5yDwcxDvOQjzHIR5DsI8b02CQFT6
aAI/hwM/L6SPJt5zPN/VJl0A8+oC4FfAr4BfAb8CfkXqEh1L34UcJmNHIrvp26npSk1Xalo5z4n3
HMR73m73S9Vip/phbJG/IRSuNRSlNU60XNZhPVbhWkPhWkPhWkPhWkPhWkPhWrc7OwVhO6E2Wc/6
Uf0vR0MopGsopGsopGsopGsopGsopOt2i7pIsV1DsV3j9PP3HnPgcAgcDoHDIXA4BA6HwOEQOBwC
h0PgcAgcDoHDIXA4BA6HwOEQOBwCH94h8NHncTh/uDwO548oj8PpO990okYCpeIJpeIJpeLZzkrD
lJMnlJMnlIonlIonlIonlIEnlIFnuxPlkjslKifPQh6YhVySS83+Q1l6Qll6Qll6Qll6Qll64oTZ
oml/KF1PKDlPKCdPKBVPKBVPKBVPKBVPKBVPKBVPKPFOKPFOKN9OkG8nyLcT5NsJ8u0E+XaCfDtB
vp0g306QbyfItxPk2wny7QT5doJ8O+F8Owv5bZZyZQSJd4LEO9spnrMCdQWqLYjOK1Ywr2BewbyC
eQXzCuaVIaozGvXJKah3GBjDzaANV+q1cldZEMquE0qqE2c/ilFeXoNQmp0483L5EEL5dkL5dkJp
drazqqLy7YTy7YTy7YTy7YTy7YTy7YTy7Wx3qk2UeCeUeCeUeCeUeGe7SO2lDDyhDDyhDDyhDDyh
DDyhDDzbLWpZpeIJZeAJZeAJZeAJZeAJZeAJZeAJZeAJJd4JJd4JJd4JJd4JJd4JJd4JJd4JJd4J
Jd4JJd4JJd4JJd7ZQKmXlYEnlIEnztINRXQNRXSNMzb5qO6SkhDaNQjtGoR2DUK7BqFd47yb4iM4
cqfwoLBSaBR8cVLoFAaFkgN0g/itQfzWIH5rEL81iNYaBGkNgrQGQVrjvJsJg7evAFsBtvoUwFaA
rQArcVds1lBs1lBs1lBI1lBI1lBI1lBI1lBI1lBI1lBI1lAk1lAk1lAk1lAk1lAk1lAk1lAk1lAk
1lAk1rhA3cN6Wq+WKCsS63a4oEimFYk1Lsj0rCpJphWJNRSJNRSJNRSJNRSJNS5YxZOBS76RuEAX
8oPEBZaQzyMUkjUUiTUUiTUUiTUUiTUucILcG6GQrKGQrKGQrNtZ9bRis4Zis4Zis25n1f0K0hoK
0hoK0hoK0hoK0hoK0hoEaQ2CtAZBWoMgrUGQ1rjsCiB3SBCtNYjWGkRrDaK1BtFag2it2+2+plMY
FKrL0ATCtgZBWoMgrUFs1iA2axCJNQjAGgRgDQKwBgFYgwCsQbjVIMpqEFM1iKkal90GlqcmlvrR
MxQvNRQmNRQdNRY4cEI+sy6TbiyM97Nuk5IoXmpUdNSlfDqhWKihWKihWKihWKihWKihWKihyKdP
04Fyi1zLLRIVC/Va/pBQLNTtfzWkgqKGgqKGYqGGYqGGYqGGYqFut6jJFRQ1FBQ1KijqtfwooVio
oYCnoYCn21l1jiKfhiKfhiKfhiKfhgKehgKeRgU8vZaPJRTwNBTwNBTwNBTwNBTwNBTwNBTwNBTw
NBTwNBTwNBTwdHvqSqE6VUqiEKjb4epktIVYqOFYqNfyygSxUINYqEEs1CAWahALNYiFGsRC3Z7T
KQxO+e1+ha+ZHPHFHCn9IUxqECY1CJMahEkNwqQGYVKDMKlBmNQgTGoQJjUIkxqESQ3CpAZhUoMw
qUGY1FCY1FCY1FCY1FCY1FCY1FBQ1FBQ1FAs1FAs1FAs1FAI1FAI1FAI1FAI1FAI1KfGqYDA13JH
hYKiRgVFvZZPKhQLNRTwNK6ohFxOocinocinocinocinoYCnoYCnoYCn250LBbWqQqBu/6txryiJ
PEqhoKihoKihoKihoKihoKihoKjbLQ8K6g2FSQ2FSd0OV/NKbRQvNRQvdTsbFKrdpT+KoBqKoBqK
oBoKnBoKnLrdgsyVS0ihVLf/ZxWS9i7vh6KshqKshqKshoKrhoKrBsFVt5vOFC6cOlNAx+TqCOKu
BnFXg7ir2zU+cqfwoLBSaBSCQlKgmukH+jmDI3RCMm6kH1iyi/oRrTUI0hoEaQ2CtG63A2MFfOkh
0VqDaK1BtNYgWmsQrTWI1hpEaw2itQbRWoNoraForaForaForaForaForaForaForaForRvYulYK
qbCtobCtobCtobCtcfvRe4/JcLgCDlfA4Qo4XAGHK+BwBRyugMMVcLgCDlfA4Qo4XAGHK+BwBRyu
gA/pCviIYzOEEsuEEsuEEsuEEsuEEsuEEsuE0siE0siEsseEsseEsseEksaEksaEksaEksaEksaE
ksaEksaEUsSEMsOEEsKE8sCE8sCE8sCE8sCEsr6Esr6Esr5svWF5rU6TEisPzHa4OlHarDwwcUN3
68sZJYTZ/pewKjNMKDNMKDNMKDNM3HaV7ahs+VfIFbMdQbTlN9kKN67xxQuFKwVfc6eAqpWb5Yqb
hXwycdups/tIUEgKNFNvHBkUqoVQWRLLBIllgsQycdtVtjOUdl6xuqadIwwhnXet1GulFiuYV4Ct
gC+/xBVPBVlogiw0QfKZp2sG4Eu/lYUmlIUmlIUmlIUmlIUmlHwmlHwmlHwmlHMmlHMmlHMmlGom
lGomlGpme6faSTlnQjlnQjlnQjlnQhlmQhlmQhlmtjvVsEo1E0o1E0o1s51VayvnTCjnTCjnTCjn
TCjnTCjnTCjnTCjnTCjnTCjnTCjnTCjnTCjnTCjnTCjnTNylWorsGorsGorsGorsGorsGorsGnf0
ZyAO5bFRrNeoWK9X3DGK9RqK9Rp3zMrywxD0NQj6GgR9DUK8BiFeg8iuQWTX7TkoSTlE7rvalL+D
WK/bkeCIT/lIUkBbho/AfaNzpKQHtSHo63bN4AjVWanOSnVWqrNSnZXWKN0g1msQ6zWI9RrEeg1i
vQaxXoNYr0Gs16h6Vi2rjjXxrEGg6qJYr/GA6cp9oKCvoaCvoaCvoRCvoRCvoRCvoRCvoRCvoRCv
oRCvoRCvoRCvoRCvoRCvoRCvoRCvoRCvoRCvoRCvoRCvoRCvoRCvoRCvoRCvoRCvoRCv8cBkLDeH
Yr2GYr2GYr1uZyV6CvoaCvoaCvoaCvoaCvoaCvoaCvoaivUaivUaivUaivUaivUaivUaD8S9nCWP
nUDKXUL01yD6axD9NYj+GkR/jccu99PXPCisFBqFoJAUOoVBofoZUSYMbBAGNggDG4SBDaK/BtFf
g+ivQfTXIPprEP01iP4aRH8Nor8G0V+D6K9B9Neom1coZ8I05Q2qR61obbmB6nn1NAWG3c4KnCLE
hiLEhiLEhiLEhiLEhiLExsp4PxlDygWyMtOSfyMUM3b7vwBJARQ8NhQ8NhQ8NhQ8NhQ8drtFraAo
sqEosqEosqEosqEosqEosqEosqEosqHgsaHgsaGYsaFQsaFQsaFQsaFQsaFQsaFQsaFQsaFQsRua
ajopgGLGhmLGhmLGhmLGhmLGhmLGPs0Z5HIJBY8NBY8NBY8NBY8NgscGwWOD4LFB8NggeGwQPDYI
HhsEjw2CxwbBY4PgsUHw2CB4bBA8NggeG4SKDULFBhFigwixQYTYIDBsEBg2CAy71flMwXeBsNzP
NzxMxIwNYsYGEWK3a/wKMCPCqASBYaMcNeWYaX7CjYLaSs6UKFdKbV654UVS9NdQ9NdQ9NdQ9NdQ
9NdQ9NftFjW1wsCGgr6GArpuZwuOBn5Fdg1Fdt3OFkopgAK6hgK6huK4huK4huK4hsK3bneqFxXH
NRTHNRTHNRTHdbuoKilNUEDXUPjWUIzWUIzWUIzW7ZZBQe2qqK2hqK1Ph6NaWUqiqK3b4RMFyYni
uG7/q+MV0DUUxzUUvjUUtTUUtXW7dqGg7lYc1+1/CZYCuoYCuoYCuoYCuobiuIbiuAZxXMNxXG/4
VIjjGsRxDeK4btc8OHKj4LseXLNyxIVGISgkhU5hUEDUanvQje1BxHoNYr0GsV6DWK9BrNcg1msQ
6zWI9RrEeo2261igBgGeFczFHTe8N4SBDcLABmFgt2smRyiU1pV3qapSTqR6WXB3uYFuuIGCppCH
JxQPdvtftVVg2Ii/eu/RGA4XwOECOFwAhwvgcAEcLoDDBXC4AA4XwOECOFwAhwvgcAEcLoDDBfAh
XAAf6/cCp+88odOooEw1oUw1oUw1W00Q6UTE9AFJKInN9r96TdlsQtlsonLX3IjREQwY+rQklLIm
lLImlLImlLImKmXNjVQgN74jUcqa7X+koVwEN1wEymYTSmITSmKznVVnK5tNBKNLpzvLN6C0NqG0
Ntvh6lWNN8pvE8pvs52tPhYFK61NKJtNKIlNKIlNKIlNKInNdidtWpsvlNZm+58xvsM/5RJQxptQ
optQoptQoptQfpsIaLqjM+UPUMabUMabUMabUMabIONNkPEmyHgTZLwJMt4EGW+CjDdBxpsg402Q
6CZIdBMkugkS3QSJboJEN0GimyC/TZDfJshvE6S1CdLaBGltgrQ2QVqbIK1NkNYmSGsTpLUJ0toE
aW2CtDZBWpuo759K/uoLIQldlMiVbCmbTSibTSibTSh3TSh3TShlTShlTShlTShTTShTTShTTSTa
0hnbyhWj3DWh3DXb4YIi/VHKmkj0p3wzylQTylQTylQTylQTylQTylQTSlCz3cnAVr6XRCUGNDlg
pfJoKJtNKIlNKIlNpHRDMWEjoeCB/JdrQVFiI+Hici0oXGwoXGwkSlKuBcWNDcWNDcWNDcWNDcWN
DYWLDYWL3e6EAcuZoACy2//VzX/i/+pvKQkhZYOQskFI2SCkbOROweVYILZsEFs2cqfgcjUQZDYI
MhsEmd2uGRzxA32XT5XwoT9Emw2izW7PoS+nrwH8SkdMunVSwdIxItIGEWmDiLRBRNogIu12u58c
FAC/An4F/Ar4Urbup6hNa2NViX6Jesl0+Q0ViDYUiDYUiHZ7gMBXRNobk0kFog3Fnw2FnQ2FnQ2F
nQ2FnQ2FnY2OHk7G45phKv5sdPSwPvxXINpQINro6GHNKRWRNhSRNhSRNhSRNhSRNhSRNjp6OBGG
mnZ29LDmlApWu/1fzSL1U7DaULDaULDaULDaULDaJ9Ku6Zyi1oai1oai1oai1oai1oai1oZi1IZi
1IZC04ZC04ZC04Yi0oYi0oYi0gYRaYOItEFE2iAibRB/Nhx29s7H/YSdDcLOBmFng7CzQdjZIOxs
EG02iDYbRJsNos0G0WaDaLNBtNkg2mwQbTaINhtEmw2izQbRZoNos0G02SDabBBtNog2G0SbDYLM
Rg1DNfrUOFJDRY0G5bdTbNlQbNmtqYRaQWZDsWVDsWW3s6qKgsyGgsyGgsyGgsyGgsyGgsyGgsyG
gsyGgsyGgsyGgsyGgsyGgsyGgsyGgsyGgsyGgsyGgsyGgsyGgsyGgsyGYsuGYstuSNXWCjIbii0b
ii27nVUHKMhsKLZsKLbsdla9oiCzoSCzoSCzoSCzoSCzoZCyoUiyoQCy2wPUm4oku/2vTlVI2VBI
2VBI2SCkbBBJNogkG0SSDQLIbo9qFIJTNwp3TiVHHhRWTnUKg1N+4OSIn+zndAq+a9ZdtYXgzhYC
ws5uR6hO+bzvzIAJRBvEnw3izwbxZ4P4s0H82e12X0O9SlsIOxtEmw2izQbRZoMgs0GQ2SDIbNSo
Wg66GiBrXKzhUJFkQwFkQwFkQwFkQwFkY6IkNWVXJNlQJNlQJNlQJNlQJNlQJNlQJNlQJNlQJNlQ
JNlQJNlQJNlQJNlQJNlQJNlQJNlQJNlQJNlQJNlQJNlQJNlQJNlQJNlQJNlQJNlQJNlQJNlQJNlQ
JNlQ3NhQ3NhQuNhQuNhQTNit2uovBYcNBYeNiUqUy0FRYkNRYqNiwt5xNigmbBAKNggFG4SCDULB
BqFgY+7DfLkjiAAbjgB7Z9cHEWCDCLBBBNgg8GsQ+DUI/BoEfo35jnBz1wrUFagV7/XOHhLivQZh
XoMwr9s1vGsFcwk38V6DeK9BdNcgumsQ1HV7DlBXF6yi873HGzhcAYcr4HAFHK6AwxVwuAIOV8Dh
CjhcAYcr4HAFHK6AwxVwuAIOV8CHdAV8zPEGyD/zBLS+j1AimlQimlQimlQimlQimnxO3fQlRVb+
GSWZSSWZ2c7KclW2mVS2mVS2me2s+qnSzijJTCrJTCrJTCrJTCrJTCrJzHbnQkHDstLObP+rW5V/
JpV/JpV/JpV/JpV/JpV/JpV/JpV/JpV/JpV/JpV/Jiv/jNLOpNLOpNLOpNLOpNLOpNLOpNLOpNLO
pNLOpNLOpNLOpNLOpNLOpNLOpNLOpNLOpNLOpNLOpNLOpNLOJGlnkrQzSdqZJO3M1hiM2xUYhEQ0
+XxX2QoVQkaaJCNNPt85q5w3pKZJUtMkqWmS1DTp1DQkosnnu8pq7r0VuMvElNxec517uYGSjDRJ
RpokI02SkSbJSJNkpNluR0DLM+QcNc5Icy9fUZJ/Jsk/k893te4072o81KvU5uTHCWjln1Hame0w
3VH7TU5+tNBXRpo7niJlpEllpEllpEllpEllpMkTTNepbnmKKkdNZaS5E+SyMtIoEU0qEc12tpBK
x5SRJpWRJisjjRLRpBLR5Onn3OnKqTKKb7r978rQ/qNaSVpXoU8V8TQV8TQV8TQV8XS7Rf2i0Kep
0KdZoU8r0KmimaaimaaimaaimaaimWZFM1UQ01QQ01QQ01QQ01QQ01QQ01QQ01QQ01QQ01QQ0w2U
BEHRTFPRTJNopkk00ySaaRLNNIlmmkQzTaKZJtFMk2imSTTTJJppEs00iWaaRDNNRzMldmk6dikh
S5OQpemQpUQqTSKVJpFKk0ilSaTSJFJpOlKp45I6HClRSJMopHnaKWXAxeUpUlzSPDMUyG+UFaBU
4UjzjBTJfZRnC5NwKi5pVlxShSNNhSPNM7ox0A25iPIM7YyCgJJokpYKWZoVslSRSlORSlORSvMM
/wzkvyI9KmRpKmTpdlgVUOzSVOzSPKMk5capIKaKXZqKXZqKXZqKXZqKXZqKXfp056RZy8ujaKbb
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
JQRVsRvTsyRTbWKPebFsslvVCajsPE/mDo6b4HnudIBvG9Jes2PzZGf9y8tVnQXZRnyKZA9wd9wW
XNyB9O5TGLtVb2xac86S/mf9SMixrV9+9uLZ169e/+bF6zff/uyTz7548ezN21evP/nVi3diXb95
+buvfvviW2//+PYvF2P7v4bj3w24/W8/6s1nr19+9Vavr1OffP75t3795t91lP1noi4dzrLDWXY4
yw5n2eEsO5xlh7PscJYdzrLDWXY4yw5n2eEsO5xlh7PscJYdzrL36yz7YB9UbVd9+9PXr75+s7mf
3n7x4tnXL7/8/NXXz159+usXn7399idfvXyzPffZZ09vffuE5NknX37+7MtP/vDyV/r3m3u3wmev
vnz74o9v3zz79E9P53/3riPss9++evPi2ZsXv/3lN6j+Ml65D1GTf6vb/oJYXn314stnv3y66/dP
qJ69ffWbF1++/Jenm159+ezLV9vJF6//+wG3poNqs01ussFjeBCwb+G+bw+omfLYv9ccpKquLXmk
ahzEfJ1s5NssZ2+x4JvFZtMXireha2eOJ4mBcd4xZsJb+zBL7B701KCRvTwZOoYvvmIM82F0OPAb
DkPn0LarrfmzUdwp+34nDMuG2db5SjiJHj0ciZnNSIMU3JOJyfCWD88N7d+bjMM2MIihngQd3ydu
zslM9HrvGZueVXlXgPNsMyMYbJgMPjIuKiRO/3AoXG9cuewfrVZrEFl8sIts20CF7TG9VYOZTsfl
6xCAg7ypSfC85p1mZNlNTM0KwHx65wN9bi9njt07uQe+Lcmku/vpnbto+UYU6v2r5YYFTst7f8i0
2e8Ipt48Rujixl0Nv4FToTayv5qDnOd23xRHV3ozrcModrYZ7DM4Lg4MnrRoee7MDGUSDb18rX2H
Ef4O3pYGgh1sD9ittc7+Bxzgjc+p07SLyjgt7Z7Fmp0wlvmG82SwJ6F7iwUeUYe19ra0zt6h7oiY
rg4uTTvoGvsWJtt9a7a4sFn08c5eC3b4eKfrsOrZ8kHCHW130DvNYR3ZWjOwfBoDUQkb1uz2doY4
W877iD1QEEc+9gf6DPjdSYwdVZ2Y5eE03YSs7vaoM4tx+oJmffdGI5w55Sp54EZ7/k5mA0RisO8l
8S4OfErdzgG2A5U64Fibz/etLOlp0UIbeoOH637F6eqtPoQhb7ibavXntm8/Hjb/PJJMjGE8Lemt
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
z9588clXL/6s36D861v+5k9vv3j15c8+e/3yq7d/nhgqh6vlcLUcrpbD1XK4Wg5Xy+FqOVwth6vl
cLUcrpbD1XK4Wg5Xy+FqOVwtfwZXy4f4xORfZQH6P3Xk/LvJgf7th775xj0jIHXqk88//9av3/y3
IrNs7VvSLBNvlYm3fl2tX/OjVbbeKltvla23Yuut2Hortt6Krbdi663Yeiu23oqtt5att73OD2wU
gkJS6BQGBYarjhp11KgDY0X1OnhW3rUCfvVdQF0ZwDqYV9/ua3yK6qyuDsNVzR9WclwmNLViKiZ8
tWIqrpiK6//2wNV9qnoNF0Ri+Sfk5kSEZBvcTvkuuqnRPo3BowjQ+f6c1M+Z+5xzz8n2SJq3kjRv
ddI8Z8sjP95KfrzV+fESsnWiPLLgrc6C5/R3zntHirvtdt8FwgBh0ODDDwRqADVouuF3gZmxHqvN
adMcutnxmQnCvD0HqOkCnDZcoFXTBcAn4BlQ8WkQO3ddd4ts+C4wo9G7RTZ4oPWrA96aMniXVcaa
YnWwFnReasHubmfkeQC1+wgiYTHuPgJ4i6jl0LLhXh7GjF4M3wV4W2TTz6EWbvmBek6/guq4NQYt
7+q4FgPMg/FnomgTkbCNNgE2kflJ807qtd/li30N4Ccyb/NtUp1Jp9j+2o9QnUlf7Nf4FBWcVLC8
LqXkpeKl4DYa9yfWCfqkHmNbkqfJyOoMT+17/H+moGZof8X/ao0m702T2dVkdjWZXU1mV5PZ1WR2
NW1YaHLaNFlSTZZUkyXVZEk1WVJNvpomu6nJ499kLrVPQaMuaXL9N5lLTeZSk7nUZC41mUvtJXfe
KKjHmhYD2m84rN5qMo6ajKP2JWclmk1WUpOV1OS0aTKOmoyjJqdN+z13Vv+J2pu8N02M3v7ERdW7
ovYGtTeovUHtDWpvRe3bzUmhc+pG4c6pwZEHhZVC45rJkaCQFPxkP4eLy9XT2LDQmbZ0pi2NRYUO
wTTIvsM0DXdQg+MbHN/g+AbHNzi+M8fp8FPDC9RYVGgweoPRG86fxqaGDqs1vEDNCsKku1kzrBKW
xl24AqjNhQenAN8Mni5ARiwHEHnb+9Q92IyZjgvuCsCH+4LnuOXd4HvTdQq8wo3pZnG9XAuD32EA
LA0jOEJjBrKaxkMF97cjWn6Ob/ddSS2SvkgwJ5gTzAnmBHPS4EnTJQ2V4EnwJHg6eDp4Ong6eDp4
Ong6eDp4Ong6eDp4Ong6eDp4amN9Z5ba97p3EA5Uz60xgDrQwURW3T4D8IMHDt8O+OGLked0AXl2
qw4foToDIXE7D5/yEWo6XFMfsWj5FFWeVLm7QJWnC3TTpOnccZMqT6o8qfKkypP+mvTXpDrdD/Rz
qNdE1DsDtSUBcoaVy41Semwd6YzenaYugSmdCRqjxKcUJ7T6ElB7yVTIkRIi8hCRh4g8ROQhIo8f
c6eR1AtF7fETDhtAvVlkHyL7ENmHyD5E9iGyD5F9iOxDZB8i+5BvJMTxIY4PcXyI40McH+L4kEsk
xOihRZcQkYeIPOTlCPF3iL9D/B2vqxZl9IaIPETkoal5iL9D/B3i79CMPETbAW0HtB3QdkDbwYw8
IOlgRh5wc8DNwUQ8oOSAkgNKDig5oOSAkoNJdjDJDlZfAroN6Dag24BuA7oNllieCu29R2M5nCSH
k+RwkhxOksNJcjhJDifJ4SQ5nCSHk+RwkhxOksNJcjhJDifJ4ST5GJ0kHywCy3bVtz99/errN9s3
LG+/ePHs65dffv7q62evPv31i8/efvuTr16+2Z777LOnt759QvLsky8/f/blJ394+Sv9+829W+Gz
V1++ffHHt2+effqnp/O/e/HtV1+9+PLZL5/u+v3rF2+evX31mxdfvvyXp5teffnszdPTXnz5x/r9
0zdY/zJ+oo+nfv/r//rRqy9f/Ldi4mzKhAkyLHvI8MqwMiyNCPOKMNsyGwhqY3wfSGxDvBuvaDyw
+S4G3wHtDcS7IfCNcdbcNhD4hgo0H0ElG9VpqGTDkBq+huo0dNPG8eD2oBZBLQJSGTw5qE5Q9wB8
UJ0AagAVWsFAJCzd6rB0DjbnUG4EZVsdlI2waKvDohENbSUa2upoaMT2Wh3by5G8HK6LeFur4205
qJZ303lDmjd7sW1r9bYtb9LyTixvpfLGKe+X8i4Q77nwTgpvmvD+iDDh4RoJU5xZAtMqdgm3PFto
Lau7+PFky+EAmKXO8mMhsSTstwNsAGwCbAJsAmwCbAJsAmzSUBM8EzwTPBM8EzwTPNMyjy2w4xHC
xFYqfNX5ySAwGSgKbfLEAl0SUfKQMm5SX9AmXorJZKbqlbJyUlZO/pCzqmzK3EmZOym/Rcq4Sfkt
8qfcwuBQzZIybvJvOaxGSlk5KSsnZeWkrJyUlZOyclJWTsrKSVk5KSsnZeWkrJyUlZOychJPRvVG
ytxJmTspcydl7qTMnZS5k19xZzW97J6U3yJl7qTMnZS5kzJ3UuZOytxJmTspcycxdxJzJzF3EnMn
MXcScycxdxJzJ1mA6EhVYvckdk9i9yR2T2L3JHZPssrQsa8TAygxgHJ3PCCdWEKJJZRs1hkQTGIS
JSZRYhIl/oaE3hJ/Qxarbc85U6B9Vr8d8OV4yP2lDcy+qwG1AbXRqsVh451rgNqA2oDagNqA2mix
BrAGsABYACwAFgALXhoAC4AFTRfgCfAEeAI8AZ4AT4AnwJPgSfCkm/dKgbcnCGt1YOCY4av21V+1
8x37dg1Q0wUwJ5gZxuAwf4POl+Xbc1YKvotadGpRm5HH3imd5u2A7zRvB3MHczdmYHQwdzB33t79
Cl8M5k47dxAOEA7aeQBsAGwAbABsAGzQzgM8AzzlDBi71A2ADYANnwLYABg8AnOMXWihEHMHhGeH
f5oDIDw76tNjuYdYj5j70OSxpQaQatxq2mrYatZq1GrSLurqoq6u6XgXUXURVdd0vIuf+o+oXz1A
RNVFVP0ndbYUtGvy3cVPXZPvLlrqoqUuWuqipS5a6qKlLlrqoqUuWuqipS5a6qKlLlrqoqWuyXcX
G3WxURcbdbFRFxt1sVHX5LuLhLpIqIuEukioi4S6SKiLhLpIqIuEukioQ0IdEuqQUIeEOiTUIaEO
CXVIqENCg2GuQ0IdEuqQUIeEOiTUWQUf7FoaDI6d6XjHQz4YLju01JmXd9a8ByNpL1rajgB+dYFa
rNRidS0YF2pn02DY7TBWh7E6jNWZh3X4qcNPHX7yyhFLRitLRtsreHKjgo1aNDg1eGkDfAO8h8sA
T/MDfZdPAbUBFS1hjjVgkb73aYDZveO+cIO7nQOEAUK3oWtaLu5RRLUVDAOogR2QtGGA2RcnmBOo
ewHMCeYEc4I5wWwOMynudyEJ++00+P4c6pU0eFKLpDET8InMJ52btFinpqa3/e1+Ke/qhkpj1uRg
7C/t1KIDvoO5++10gYHtMGgW4/FL9yfTy319v58CHQ6Tw2FyOEwOh8nhMDkcJofD5HCYHA6Tw2Fy
OEwOh8nhMDkcJofD5HCY/A9wmHywz4L2mDjbwS8+ef3lizdvvvXrN38ZD86/9bZ/q/ofz0c9/61o
PiufGG69z3i7ixNCaLnqlmp0oaPRu8ygFJA9H68O7DBcYqtdYnaA2ctl5xb+qhV/1fYcY0Y3BzrV
0ZcdGHiG3466Dd9OdQZaNtCgjgYNNGhQr0m9XJ3pAvWaMIJrOqnghM5c90lNJ+08adXJWDHoJrfP
pDXcUJOOG34OFZxUcFLBskptig6/Sc1UjVRNNGhWDqt1q03GdzlbV8vCG7Lwhiy8IQtvyMIbsvCG
PBDjxzxAOIcsvCFXxJBhN2TYDRl2Q4bdkGE3ZNgNGXbjFzzOtS2gMvXGJ3XYXVk9OD7lfwZHd+Sk
A8qOHjIQhwzEIQNxyEAcv+JaNGgiwxOJdc+6H9191WvjC/6vRnnJ/9X4iqs2iSU9MUiGbNDxWw5L
0IaM0SFjdLzirARzyCodskqHrNIhq3TIKh2ySscfuPNKQRI4vuZ/yd/4I/+XrMlyHbJcB5brwHId
WK6jLNft1pVCoxBc49cnR24U7hQeXNM54gcOCpNTjYJf4Sf3urhMq8mWjIm9O/FaT3ZiTCyqgZU8
cNUMXDWTIIYTg3VisE6MrYEXZ2AuD7w4Ezts4MUZeHEGXpyJxTkwlwfm8sCLM7CJBzbxwCYeeHEm
mz0mZuVgK+3E+JvYcwO7eWA325k0LKYWTMvgLlJJ+6TvonMbDZV+DtVpVMfSkjRU0ilJ+1Sw2ont
OHZBalQ5/S46Jf0Kqpw0Xe3kmdiOY5eW5MlBdQLwQSNYbNJvR2wsSJaWpHmDPg0aIZDwTstbSCwJ
YTx0ZfhdPNld0BH1Dub0EZq3A74D1b2TVDDpZXeBW97t3Klgp15JvdL18hHq5QZ3Oyf1chu6xdws
nb5wvTpQ9+rQ3a7XjpC3d4MHhhHut/tiXwPUTnd39KsDvgO+I1o+MqjFoBaDgahT00F1Bi0/qMWg
5QftjEGAJTAx4OY7r0CtBi02UKL9XdQLLseDtbMwHix4d7udBjfCySsmMmbMk+pMX0ynuDrTBeo1
6YtJX0z6AsZlNWdiWU7MR1h3O6Lbp9vi/2Hvz5o2SYprDfSvnJttdm5673pzfPMCOxYeA6MQgwSC
G1kDBbQYGrobAfr158te/qwsbdsCxFBVktK6rd74clwR4R7LwzPCXU/Jh+WjkrOTqocqPr7ILfR0
ttGQwTS+zOG8TZbTkOU0vsZZhGHQQWm+DBlVQ0bVkLdsyJYa3+RaxCRdhONb/K1WHd/mbzXukL01
ZG8N2VtD9taQvTW+xy10Q7b+kL01PuSw+mLIxzZkQo0fcVZNPWRLDdlSQ862IWfbkLNtyNk2fsad
9AWdIPfb+AWHaW+6RTbQkENuyPQZMn2GTJ/xKbd83hcvg2Hy15AxNH7DYcnpkK9uyFc3fsfZbGSZ
PkOmz8D0GZg+A9Nn4LQbad+cz1gorJzaKOwUnlzjUweFQiEoVAqNgiu5U3hyKmU3TZbzFE8+qMVB
LWSXnNfw0oPqHIA/QHgA/uBdh59ceE5QAPPhI4CXpXIe6RzxKR+hFmmODHdnduB5+8hC+Bo6xV0Q
vovquMHddEFruA3dYm6WQl+4Xq5OoS+Cxgza8ELI24NOCWAI4XmE5jWeoDp+YCBjgfwEUK8Hul6A
D+p1XUx/BfW6ClQwqGDQKeHqcE11dRoFLq6u13jrkX1uh8ntMLkdJrfD5HaY3A6T22FyO0xuh8nt
MLkdJrfD5HaY3A6T22FyO0zed4fJO1vO8zYymf95acn/a6Xm+n8uVPrk9a8+/uSzv/biqDd9Yd/4
5PWPP/rd6x9946WGf/fyxpdavN21WK7if/EVWf+3k/H/3bD/HZad/W00/v0cTP6CW//YBtKD2frL
+O0x3iP6dQrGq/BthaA0VTwL0FqFzSpsdl0MQVVI7LoLoqtw11WA3yrcVc1LcFc1HcFdvqthNTTX
i+c0GLiBuYG5weQNqA2ojVpoFnk+EEvHeJrfjllkhA3wzRdjWRh8oy8adk3DUOpUp3Oq003NBfrL
1ek+Ql80Oq5hR7he3XfRCN0X0yndd2FiNFq1+zm0j6vcfTF2hOt+VZAWu2rq22kxJmJMXZlznXfR
y53OHT5CI3TEuNManV4evguRYP7liVdOp867aARXmQlWTqnOU7TYcAHZGK6pj1BTJkQ5zSmvin5C
P1U/NOLVZHmCRu2+wkeGrsifL+rnS/r5sn6+op+v5i1uWjVkefU1/fwdhyf9/XX+nvX33/P3or+/
oZ9v6udb+vm2fv5BP/+on+9w56q/v6uff9LP9/TzfS7a9PeH+vmBfn6onx/p57V+fswtu/7+iX5+
qp+POPvU3/+in5/p5+ecPfT3L/TzS/18rJ9f6efX+vlEP5/q5zP9/EY//6qf3+rnd/r5vX7+TT85
Gz0LE4WZwkIBCR6o1ghObRQQ01E58qRwUPDtjSMIFSKY89Oz4Gt8KuWJ2egj53FnAfCHj1ALzU/P
IwuFlVO+hpoePkW9NFE979oo7Jyigpq6nqd8pFCgoXKi+sj54HmECh5U8KCCmqgW/A7l1VVB1et8
TqHAK64K0oaq6XmEdxXq5VoYs4EVwOcE/JHT0vLqjSf7gZ1rDJ5CUIugU64jVCfogqALgi4IoAZQ
c6L6eOOBfg7gg2YJGup6Mg0V1CKoRVDBAHxFxoyn0heVl1bAV15RfTHgK+Ar7VyBWmnnCrAKsAqw
CrAKsEYbNvA08DTwNPA08DTwNPA08DTwNPA0+j2QeXdBA2GS6yM7pcCyBZYtkOt5Da/o7jje1QHf
Ad8B3wHfDcPAgNFRT3dlt5AgmelqeGSfFviyQIrF7PbAMH1gmD6uXu5+qd9FlWG85LECj523Ux0o
zNxl0jIHmWfMHiaK5ITzgb4YUbewDdfCt4PZQ26OtA/V/CHRezA6pZQ+dPUjr1XtHiLyh4j8ISJ/
iMgfX9WPaPvxd/r5un7+Xj/i5oe4+SFufoibH+Lmh7j58R3QuM6JViT9EEk/RNKP7+tH3Pz4Abdk
zUTSD5H04zVn1S6PH+tHJP34KWez+h/pRyT9EEk/fq4fcfND3Pz4mDsRutTXx6/y71Tbx6/5W9r7
EH8/xN8P8fdD/P0Qfz9+yy1IZOr5Q4z++D2HJU4PUfsDan9A7Q+o/QG1P5Laz8JGYafwpHBQKBSC
QqXQKHQKaF3jFccrCgA7AHYA7ADYAXU1lL8B7ACqubkB9XABzAdK0pCl5iPU4nCB6hxU56A6h6uD
qjSuKQxzOQJOfoFkYNLjJz180m1TXpuXfDFv0ZBZJunYJB2bpGOTdGySjk3SsUk6NknHJunYJB2b
pGOTdGySjk3Ssek7+pFGTdKoSRo1fR806qhJqjXJ7J2kUZM0apLZO0mRpp9wp3p2ktk7SZEmKdIk
RZqkSJMUaZIiTTJyJxm5k4zcSUoySUkmKckkJZn+9W/jw/sv41T9U2J43S6Y2wVzu2BuF8ztgrld
MLcL5nbB3C6Y2wVzu2BuF8ztgrldMLcL5nbB/KUumHexKO+/6PK3/yzaT19/9sFZfvnn5795/cHH
//r6k08+emmsH3788c8+ev1+LjD80zC//22PpHz0b+/pCs4XYG+/Ff/A5uIyaaI7iRYnTXQnseEE
G06w4QQbTrDhBBtOsOEEG06sc3/g4Hlgp07w48T89oHlOkGUE0Q5JVGe1/gVnUJyAUQ5QZQTRDlB
lFMS5fkcSFCG73kK6uwAO3jXQXUOX+xrCgUwH2A+jNnXgPkAs0lQlnSZdemcf0GaaUPPIsFZj5n1
kFn25Szum8V981e4M28RCc4iwVkkOIsEZ5HgLBKcRYKzSHAWCc4iwfkfeSr2Wlrws2hx/m4eTnt+
Fj/O4scZfkxn1Sx+nMWPs/hxFj/O4sdZ/DjDjwNbLicDM6Znzgnmj/hbojSLOmdR5yzqnEWds6hz
FnXOos5Z1DmLOmdR5yzqnEWds+zLWWozS21mqc0stZlRmxm1mVGbGbWZUZsZtZlRmxkjckZJZozI
Gd2Y0Y0ZI3JGJWZUYkYl5svBM7ALB+86QHigooO3H0C1bng6NcBz+IEAO/xkP4daHL6LKddAxAe1
sMtnUJ1UpAnH1YRfZ0ajZgzNCU/PlH6dlz9Txyb8OhPunEVoluCwgC+Vv4V/8etVjUXvXPzGfIz0
cJEeLtLD5Stc5Jeo25av8ref3imo9xbp6iJdXaSri3R1ka4u38xbgirKxVMWae/ybQ6rvRap8SJb
dvkOZyWai4zaRUq7SGkXTRMX6eoiXV1+yJ0LBcny8iP+3ijsFLIxpdiLFHvRDHKRvbvI3l3+hVuy
vaW9i7R3+QVns9mlxovUeJEaL1LjRWq8SI0XqfEiNV6kxovUeJEaL1LjRWq8oMYLarykGp+vD44s
FFYKG4WdwpPCQaFQ8HMqhUahU0iJQJ8XKG5BexcobkFpF7yyCzy2oJkLmrmgmQuaucBjCzy2MKtb
ULYF+lrwuK66edWtq25cdduKWAdqlT6nVQ9Zv8hhPX2V/qzSnxX9SQ/jKh5bpRurdGOVbqzSjVW6
saIbFd1IT+T6Lf6eKNCn6XRaRXqrtGWVtqyiuFVKsv4Tt6iRV2nLKm1ZpS2rtGUVs61itlUKsEoB
VinAKgVYpQCrWGuV3K+S+1WstUrcV4n7KnFfJe7rJ4BSh6+S+1Vyv0ruV8n9Krlff8ctEo1VCrBK
AVYUYEUBVnhsRe5X5H5F7lfkfkXuV+R+Re5X5H5F7lfkfkXuV+R+Re5XeGzC47aiACsKsKIAKwqw
ogArCrCiACsKsKIAKwqwogArCrCiACsKsKIAm27edOumGzfdtummTbdsYolNUr5Jyjd5KjYJ9ybh
3iTcm4R7k3BvEu5NRtqmYX6TvG7/QNscFBKWJHhjvE8f3yZR3jTeb9/jbKKXKG8S5U2ivEmUN4ny
JlHefsydUFm637ef8HfW/af5d3r1to/4W1K2Se43yf0mud8Y7xvqmn68TZqwSRM2acImTdg08G+f
cotEYpMmbNKETZqwSRM2McAmBdikABsKsKEAGwqwpQKcT1854sJGYafwpHBQKBQwDZrvqhQahU4h
mxKV2KCCDU3Y0IQNTdjQhA1N2NCEDU3Y0IQNTdjQhA1N2NCELTXhxOznACxVYtdTdj1j1xN23b/7
br181727dGP/EmeFaJeS7FKSHcMpv7vs0pZd2rJLW3Zpyy5t2aUtOwN/c4MnKunPrvF+l7bsGu93
KckuJdk1zO/SjV26sUs3dunGLt3YpRu7hvldw/yuYX7XML9L3HeJ+y5x3zXM779861HGbkfA7Qi4
HQG3I+B2BNyOgNsRcDsCbkfA7Qi4HQG3I+B2BNyOgNsR8O4cAe80etbrTz747KNfnG+5VjT86sNP
zmg+/2ed/mA0pj+2wansUthdCrtLYXcp7C7G2qWnu/R0l57uv6XXUoiksLsUdpfC7ijsjsLul8nW
LHaDUwsFpga5pGxHhXdUeMeXMbHQa0eXd3R5h9V2VHhHhXdUeGet38Q2oYnVvDtKvaPUOwvyJ/wm
O9q9o9072r2j3Tvavad2n7f7GjAfYD7AfID5APMB5oMWS+3OCmd1s7JZ1axojlRPKfVThPeULj+l
y090uTNdkFumPKXUTyn1U0r9lFI/pdRPKfVTFPiUCj+lwk+p8FMq/JQKP6XCT6nwUyr8lAo/pcJP
qfBTKvyUCj+lwk+p8FMq/JQKP6XCT6nwUyr8lAo/xU9PiftT4v6UuD8l7k/4KZ1QT8n9U3L/lNw/
xU9PiftT4v6UuD8R9yfi/oSfngj3E1p6ItNPZPoJLT0R5Sei/ESUn4jyE1F+IspP2OiJ4D4R3Cds
9ERen/jeJhxsTwT3ieA+EdwntPREXp/I6xN5fSKvT+T1ibw+kdcn8po35615Y96WN+Uth+T1kLwe
ktdD8nrIQDsknYek85B0Hn9P7fJVEtNDYnpITA+J6SExPSSmh8T0kJgeEtNDYnpITA+J6SExPSSm
B5Pt9B0ektcDcyydhgdWWLoCD0nwIQk+JMGHJPiQBB+S4EMSfEiCD0nwIQk+JMGHBuxDgntIcA8J
7iHBPSS4hwT3kOAeCO6B4B4I7oHgHgjugeAeCO6B4B4I7oHgHgjugeAeCO6B4B5vjMFwQnoyD0T5
uOYaw0eAegDVMj2ozgHmA8wHmA8wH2BGLPGHTXg4JzycB1J+IOXHZXwNv90vpRYp9+mbsvdpMNAO
/DLp7Eu3lL1RuanOTqn09xXaLb19RdpSpC1F2lKkLUXaUqQt5e+4Ez9AevzK1/lb75px883EfJ3Z
n1bEAEWqVaRaRapVvs21CwU1SpGylX/ksPqlSOuKtK78E2fVWUXqV6R+RepXpH5F6lfEEuU1dz4p
ZNP9mL8LhaCQjS1KKVLIIoUsUsgihSw/55ZsLGlmkWaWjzkruS6/4m+JQfl1/p1byYqUtkhpi5S2
SGmLlLZIacvvuFNyXaS9Rdpb0N6S2nteOHFkprBQWClsFHYKTwoHhUIhKFQKjUKnkPVEaQv8U9DV
gq4W7KWCihZUtKCiBRUtqGhBRQu0U1DIgkIWaKegfgX1Sx9l+gpzH1YGzZ3ZdDez6S49YLkDa8ap
GtKxkI7Flzkr8CFlCylbSNlC1BSippDaxDe4c6eg2sY3+fuggMiCXDoWoq+QRoXoK6RI8V1uqRTU
PCFCi+9xOGsp1QqpVvyAs2rBkI6FdCzEbCFLLKQ2IbWJj/LO9PPN+PniX/hbkhA/428JRIjrQhoV
0qgQ14W4LtCfdAyG9CekP/EZZ7OfpEghRQopUoj9QvoT0p9AfwL2C9QmUJtAbQK1CdQmUJtItTkx
+JpCIShUCo1Cp5CtzSbhGT9goEiBIgXfh2Z8b4FGBRoVaFSgUYFGBRoVaFSgUYFGBRoVaFSgUYFG
pUsrXVgVWcttorkVLf1P6Xaq0p8q/anoT0XGeZYUqX6VwwJVpVFVGlW/ztl8k1SripGqGKlKW6q0
pUpbKvxToTngfSf/Tq9YRZHSK1alP1WMVKU2VWpTxUj1h9yivqpSmyq1qRBROs6q9KdKf+pHf9Ul
B39pIJc/6nn4g7sorrv11z/rr3/+6esPf/RyLh/0vz9/wn8+fvLtzrjdGbc743Zn3O6M251xuzNu
d8btzrjdGbc743Zn3O6M251xuzPeF3fGO1s48Qc2WZxoJVxVfFjFh1VKW6W0VUpbpbRVSltloFbp
apWuVnFd/Q1NIYGt0tUqXa3S1SpdrdLViq5WdLWiqxVdrehqRVcrulrR1QrFVVS0oqIVFa2oaEVF
KypaobiKZlY0s0JxFYWsKGRFISsKWVHIikJWFLKikBWFrKwkn1lqVdHMimZWlovPLG3KdUYZ/6ih
orl0Kb03GcwoPTFNKtqkok1mZPsKdzLI8WRUlFd8jb8Fu0lXm9ivSUWbVLRJRdu3uCXhSFebdLWJ
2ZqYrclEbNLDJj1s0sMmPWzSwybWalK/JvVrYq32E96YNZf6NVl9TVLeJOVNUt4k5U1S3iTlTVLe
JOXtE56K0ZAOrCa5b3BU+qyaOKpJ7ttvOStJalKAJgVoUoCGAjQUoKEAjSV9M9uVZvxUDZfajOup
pW6cRzaO7BSeFA4KhUJQQJK672oUOoWUJ7SloS0NbWloS0NbGtrS0JaGtjS0paEtDW1paEtDWxr0
1VCSxi6LGQ9Pg8fSS5BT95yq5ww94/5136tXdylJl5J0eIwnib667MAu1urShC5N6NKELk3o0oQu
supSgC4F6FKALgXoUoAuBehSgC4F6FKALgXoUoAuBehSgA7/UFnxT5cCdOw32kCa0KUJnfkPTSOV
6FKJLpXoUokulega+Pun3Anf5gy/oxI5re9wQk7hu3SjixO6VKJLJbpUoqdKnDdNHHFhpoBuDB9Z
KWwUMMVzP1ZHEzqa0NGEjiZ06KKjAJ1EtzOegI4mdDShowkdn/JMPMiOSnRUoqMSHZXoqETHpzzj
Q5jxIXSUpBMXb8aP0NGWjrb0i1sGFUy16XBLR1vyinQ6ZNTJ4fuZV3PCjaHmGShSbpBSvuqi7NRF
2amLklIXJaUuSkpdlHm6KPN0UebposzTRZmni/JMF6WXLsoqXZRVuiirdFFW6aKs0kVZpYtySBfl
kC5KHV2UOroodXRRxuiijNFFGaOLMkYXZYwuyhhdlDG6KD90UX7oomzQL1OX9Kcs7AJTfuii/NDn
YfW+EkUXJYo+Dy8UVgqSBeWQLsoYXZQxuihRdFGi6JKJoheyBy/sDVPG6PNvCYZSR59/ZxfDNuSQ
LuSQLuSQLuSQLmSMPm8PCpVTO4UnpxpHDgp+qW/vHPFzfJdPjSykapExupAx+nzOyEL4mpkjvpgG
Dmp6UK/UOpJJF5JJF5JJFyeTXvAjLPgRSCZdnEN6wZdADulCDulCDunzGl4qrQtFbA9FbA9FbA9F
bA/FZ49Xvpd+lk8hFJb9/PugYLj5vC/pR8nhFbE9FLE9FJ89Mj77gk9hSZ9CKFB7KD57KCx7KCx7
KCx7KCx7KCx7KCx7KCx7KBp7KBp7KBp7KBp7KAh7KAh7KAh7KAh7KAh7ZBD2JV0ZoSDsoSDsoSDs
odjrodjrodjroZDroZDroZDroZDroZDroZDroZDroZDroZDroZDroZDroZDroZDroZDrQcj1IOR6
EHI9CLkehFwPAqwHAdaDuOpBXPUgrnoQTj2Ioh5EUQ+iqJ9NgkDUV5waWUgfw5IOmiCcery61Ka6
AObDBcAfgD8AfwD+APyB1FV0rPou5LAydlRkt/p2anpQ04OaHp0C9Squl1+qFnvkD2OLHA2haMih
IMjxoOVqHtZjFQ05FA05FA05FA05FA05FA35vLNRELYHalPzWV/Pv+VhCEVMDkVMDkVMDkVMDkVM
DkVMPm9RFyl0cih0cjy++9ajLtwOgdshcDsEbofA7RC4HQK3Q+B2CNwOgdshcDsEbofA7RC4HQK3
Q+DdOwTeu0UEjy98jlYir5ROoZROoZRO51mJknI7hXI7hVI6hVI6hVI6hTI5hTI5nXciRfIbROZ2
WsgntJCTdMlpbijbUyjbUyjbUyjbUyjbUzzgZ81vQ2mfQkmeQrmdQimdQimdQimdQimdQimdQimd
QgmcQgmcQnmbgrxNQd6mIG9TkLcpyNsU5G0K8jYFeZuCvE1B3qYgb1OQtynI2xTkbQrnbVrIk7Tk
nD1I4BQkcDpP8ZwDqAdQTZWNVxxgPsB8gPkA8wHmA8wHuthQuzY4Bcd0A0OvOm14UK+Du5IqlaUp
lJwpJj+K4UzT41C6pph4uSbLobxNobxNoXRN51lVUXmbQnmbQnmbQnmbQnmbQnmbQnmbzjvVJkrg
FErgFErgFErgdF6k9lImp1Amp1Amp1Amp1Amp1Amp/MWtaxSOoUyOYUyOYUyOYUyOYUyOYUyOYUy
OYUSOIUSOIUSOIUSOIUSOIUSOIUSOIUSOIUSOIUSOIUSOIUSOJ2g1MvK5BTK5BSTdEPBW0PBW2PC
+OzZXVISorgGUVyDKK5BFNcgimtMl83ZgyM7hSeFg0Kh4IsrhUahU0g5QDcI1RqEag1CtQahWoPA
rEE81iAeaxCPNaaLDztvPwB2AOzwKYAdADsAluKuMKyhMKyhMKyh6Kuh6Kuh6Kuh6Kuh6Kuh6Kuh
6KuhoKuhoKuhoKuhoKuhoKuhoKuhoKuhoKuhoKsxw1Hdepqvligr6Op5OKFIphV0NWZkemSVJNMK
uhoKuhoKuhoKuhoKuhoz5t9g4JITIGboQhP+mGEJTe5D0VdDQVdDQVdDQVdDQVdjhhM0jw9FXw1F
Xw1FXz3PqqcVhjUUhjUUhvU8q+5XPNZQPNZQPNZQPNZQPNZQPNYgHmsQjzWIxxrEYw3iscZ8KYDm
/UFg1iAwaxCYNQjMGgRmDQKznrf7mkahU8guQxOI0BrEYw3isQZhWIMwrEHQ1SDWahBrNYi1GsRa
DWKtBpFVg4CqQfjUIHxqzJexJ5dELPmjZyg0aigiaigQaixw4IB8Rl4m3VgY70feJiVRaNTIQKhL
Oi9CYU9DYU9DYU9DYU9DYU9DYU9DQU5f7N6c/685/48Me7rmxD8U9vT8Ww2p+Keh+KehsKehsKeh
sKehsKfnLWpyxT8NxT+NjH+6psMgFPY0FNs0FNv0PKvOUZDTUJDTUJDTUJDTUGzTUGzTyNimazoT
QrFNQ7FNQ7FNQ7FNQ7FNQ7FNQ7FNQ7FNQ7FNQ7FNQ7FNz6ceFLJTpSSKdnoezk5GWwh7Gg57uqb7
IQh7GoQ9DcKeBmFPg7CnQdjTIOzp+ZxGoXPKb/crfM3giC/mSOoPEVGDiKhBRNQgImoQETWIiBpE
RA0iogYRUYOIqEFE1CAiahARNYiIGkREDSKihiKihiKihiKihiKihiKihuKfhuKfhsKehsKehsKe
hqKdhqKdhqKdhqKdhqKdvjROxv5d0+8Sin8aGf90TedLKOxpKLZprKiEfCuhIKehIKehIKehIKeh
2Kah2Kah2KbnnQsFtaqinZ5/q3FXlESuk1D801D801D801D801D801D80/OWJwX1hiKihiKinoez
eaU2Co0aCo16ng0K2e7SHwVLDQVLDQVLDcVIDcVIPW9B5tL3oaip598jC5X2zmm+AqqGAqqGAqqG
4qiG4qgGcVTPmyYKM6cmCuiY5vRBiNUgxGoQYvW8xkd2Ck8KB4VCIShUClSz+oF+TucInVAZN6of
mLKL+hGYNYjHGsRjDeKxnrcD4wB86iGBWYPArEFg1iAwaxCYNQjMGgRmDQKzBoFZg8CsocCsocCs
ocCsocCsocCsocCsocCsocCsJ9i8VgqpCK2hCK2hCK2hCK2xff3tLh+4XQG3K+B2BdyugNsVcLsC
blfA7Qq4XQG3K+B2BdyugNsVcLsCblfAO3YFvL9pG+Y/mLbhbxq3cX67cRv/2OaLUDKdUDKdUDKd
UDKdUDKdUDKdUOqcUOqcUMacUMacUMacUKKcUKKcUKKcUKKcUKKcUKKcUKKcUFqcUDacUBKcUO6b
UO6bUO6bUO6bUKabUKabUKabUyytuCm9Gs2U++Y8nNKsYU25b2JjEMu1MkqCc/4trVU2nFA2nFA2
nFA2nNiusasxdqWjifw45xF0XA6ks7BxjS9eKKwUfM1OgTEn/U0r/iZy6MR22RDNR4JCpUAztcKR
TiFbiLGLZDpBMp0gmU5s19jV4JTGKw7XtHGEsbTxroN6HdTiAPMBsAPw6aBZcdmQeSfIvBMk3Hm5
pgM+Bzpl3gll3gll3gll3gll3gkl3Akl3Akl3Anl2Qnl2Qnl2Qml1wml1wml1znfqXZSnp1Qnp1Q
np1Qnp1QVp1QVp1QVp3zTjWs0uuE0uuE0uucZ9XayrMTyrMTyrMTyrMTyrMTyrMTyrMTyrMTyrMT
yrMTyrMTyrMTyrMTyrMTyrMTu1RLQVxDQVxDQVxDQVxDQVxDQVxjR3864pCuK4V1jQzruuKXUljX
UFjX2LGv0yFFfNcgvmsQ3zWI5hpEcw2CuAZBXM/noCTpGdovtUnHD2FdzyPBEZ/ykUoBbek+ghHQ
G0dSelAb4rue13SOUJ2D6hxU56A6B9U5aI3UDcK6BmFdg7CuQVjXIKxrENY1COsahHWNrGfWMuuY
M/AcBLIuCusaTyg//SiK7xqK7xqK7xqK5hqK5hqK5hqK5hqK5hqK5hqK5hqK5hqK5hqK5hqK5hqK
5hqK5hqK5hqK5hqK5hqK5hqK5hqK5hqK5hqK5hqK5hqK5hpPbOf09yisayisayis63lWoqf4rqH4
rqH4rqH4rqH4rqH4rqH4rqGwrqGwrqGwrqGwrqGwrqGwrvFE3NNr9LwIJP1GBHoNAr0GgV6DQK9B
oNd4XnI/fM2TwkGhUAgKlUKj0ClkPyPKRHwNIr4GEV+DiK9BoNcg0GsQ6DUI9BoEeg0CvQaBXoNA
r0Gg1yDQaxDoNQj0GnnzAeUMmCbdYvmoA61Nf1g+L5+mGLDnWYFTMNhQMNhQMNhQMNhQMNhQMNg4
GO8HY0j6gg6mnHL0hMLDnn8nICmA4sSG4sSG4sSG4sSG4sSet6gVFDA2FDA2FDA2FDA2FDA2FDA2
FDA2FDA2FCc2FCc2FB42FBU2FBU2FBU2FBU2FBU2FBU2FBU2FBX2RJNNJwVQeNhQeNhQeNhQeNhQ
eNhQeNiXyZN8T6E4saE4saE4saE4sUGc2CBObBAnNogTG8SJDeLEBnFigzixQZzYIE5sECc2iBMb
xIkN4sQGcWKDqLBBVNggGGwQDDYIBhvEgA1iwAYxYM86TxR8FwjTD7/haiM8bBAeNggGe17jV4AZ
EUYliAEb6bFKD1XxEzYKait5lSJ9SrldZcOdpkCvoUCvoUCvoUCvoUCvoUCv5y1qakV8DcV3DcVu
Pc8mHA38CuIaCuJ6nk2UUgDFbg3Fbg2FbA2FbA2FbA1Faj3vVC8qZGsoZGsoZGsoZOt5UVZSmqDY
raFIraFwrKFwrKFwrOctnYLaVQFaQwFaXw5HtrKURAFaz8MPCpIThWw9/1bHK3ZrKGRrKFJrKEBr
KEDree1CQd2tkK3n3xIsxW4NxW4NxW4NxW4NhWwNhWwNQraGQ7ZuOJcI2RqEbA1Ctp7XPDmyUfBd
T645OOJCoRAUKoVGoVNA1HJD0MaGIMK6BmFdg7CuQVjXIKxrENY1COsahHUNwrpGuXQsUIMAzwHm
5I4NNxYRX4OIr0HE1/OawREKqXXpZsuqpDctXxbcnf6wDX9Y0BRydYVCv55/q7aKARvx5bcef+F2
AdwugNsFcLsAbhfA7QK4XQC3C+B2AdwugNsFcLsAbhfA7QK4XQDvwgXwPkZcCGWjCWWjCWWjCWWj
OauALFdkS0toQolqzr/VXcpYE8pYE5mfZiMcRzBSaHFNKC1NKC1NKC1NKC1NZFqajXQfGytplJbm
/BsxSN/Ahm9AGWtCiWpCiWrOs+plZayJYFhp9GM6BZS6JpS65jyc3amBRjlsQjlszrPZueJepa4J
ZawJJaoJJaoJJaoJJao576RNc/uJUtecfzO4N4gnfQHKahNKZhNKZhNKZhPKYRMBPzeUJR0BymoT
ymoTymoTymoTZLUJstoEWW2CrDZBVpsgq02Q1SbIahNktQmS2QTJbIJkNkEymyCZTZDMJkhmE+Sw
CXLYBDlsgtQ1QeqaIHVNkLomSF0TpK4JUtcEqWuC1DVB6pogdU2QuiZIXRO5AizlL9dISegiRS5l
SxlrQhlrQhlrQvlpQvlpQmlpQmlpQmlpQtloQtloQtlooqItjUEtfTDKTxPKT3MeTijSH6WliYr+
pFNG2WhC2WhC2WhC2WhC2WhC2WhCSWjOOxnR0ulSUYkOP3boKF0ZylgTSlQTSlQTVbqh8K9R4d6O
/KdPQQFho0LC6VNQZNhQZNioKEn6FBQiNhQiNhQiNhQiNhQiNhQZNhQZ9rwT6ksvgmLFnn9nN/+e
v7O/pSREjw2ixwbRY4PosVEv7k2PAmFkgzCyUS/uTR8D8WSDeLJBPNnzms4RP9B3+VQKH/pDYNkg
sOz5HPpy+BrAH3TEoFsHFUwdI/hsEHw2CD4bBJ8Ngs+et/vJQQHwB+APwB+AT2VrforaNLeWpein
qKdMp8NQMWdDMWdDMWfPBwh8Bp/dmEUq5mwo1Gwowmwowmwowmwowmwowmw09HAwHufUUqFmo6GH
ufVBMWdDMWejoYc5mVTw2VDw2VDw2VDw2VDw2VDw2Wjo4UAYcr7Z0MOcTCou7fl3NovUT3FpQ3Fp
Q3FpQ3FpQ3FpX0g753EKUBsKUBsKUBsKUBsKUBsKUBsKRxsKRxuKQhuKQhuKQhsKPhsKPhsKPhsE
nw2CzwbBZ4Pgs0Go2XCE2Z3tDUSYDSLMBhFmgwizQYTZIMJsEFg2CCwbBJYNAssGgWWDwLJBYNkg
sGwQWDYILBsElg0CywaBZYPAskFg2SCwbBBYNggsGwSWDeLJRg5DOfrkOJJDRY4G6bBTGNlQGNmz
qYRa8WRDYWRDYWTPs6qK4smG4smG4smG4smG4smG4smG4smG4smG4smG4smG4smG4smG4smG4smG
4smG4smG4smG4smG4smG4smG4smGwsiGwsieSNXWiicbCiMbCiN7nlUHKJ5sKIxsKIzseVa9oniy
oXiyoXiyoXiyoXiyoeixoaCxoVix5wPUmwoae/6tTlX02FD02FD02CB6bBA0NggaGwSNDWLFno8q
FIJTG4WdU5UjTwoHpxqFzik/cHDET/ZzGgXfNfKu3ESxs4mCCLPnEaqTzu6dqS8xZ4NQs0Go2SDU
bBBqNgg1e97ua6hXagsRZoPAskFg2SCwbBBPNognG8STjRxV0zOXA2SOizkcKmhsKFZsKFZsKFZs
KFZsDJQk5+oKGhsKGhsKGhsKGhsKGhsKGhsKGhsKGhsKGhsKGhsKGhsKGhsKGhsKGhsKGhsKGhsK
GhsKGhsKGhsKGhsKGhsKGhsKGhsKGhsKGhsKGhsKGhsKGhsKGhsKERsKERuKDBuKDBsK/3pWW/2l
OLChOLAxUIn0NSggbCggbGT41x0vg8K/BlFfg6ivQdTXIOprEPU1xjXMpx+CYK/hYK87+14I9hoE
ew2CvQYxXoMYr0GM1yDGa4w3hJu7DqAeQM3Qrju7aAjtGkR0DSK6ntfwrgPMKdyEdg1CuwaBXINA
rkH81vM5QD1csIqOtx5x4XYF3K6A2xVwuwJuV8DtCrhdAbcr4HYF3K6A2xVwuwJuV8DtCrhdAe/S
FfDeLRw4txeQY+YFYa6IULKZqmQzVclmqpLNVCWbqa+olNZO1Mwxo0QyVYlkzrMyWZVRpiqjTFVG
mfOsOihTyyiRTFUimapEMlWJZKoSyVQlkjnvXChoPFZqmfNv9adyzFTlmKnKMVOVY6Yqx0xVjpmq
HDNVOWaqcsxU5ZipyjFTM8eMUstUpZapSi1TlVqmKrVMVWqZqtQyVallqlLLVKWWqUotU5Vapiq1
TFVqmarUMlWpZapSy1SllqlKLVOVWqaSWqaSWqaSWqaSWuZsDAbsjIlCspn66tLVjJJC1plK1pn6
6iKr9NqQfqaSfqaSfqaSfqY6/QzJZuqrS1c16T4L3GVGqtyek5w9/T+VrDOVrDOVrDOVrDOVrDOV
rDPn7QhouoSch8ZZZ/Z0ElVyzFRyzNRXlz43mvcwHuqVavPw4wQ0c8wotcx5mO7IHSYPP1roM+vM
jotIWWeqss5UZZ2pyjpTlXWmPqC4RnXTRZR5aDLrzE58z8w6o2QzVclmzrOJVDqmrDNVWWdqZp1R
spmqZDP18V3udOVUGYV2Pf92ZWj/nq0krcuorwr2WhXstSrYa1Ww1/MW9YuivlZFfa0Z9TVjvCqQ
a1Ug16pArlWBXKsCudYM5Kr4rVXxW6vit1bFb62K31oVv7UqfmtV/Naq+K1V8VtPUBIEBXKtCuRa
CeRaCeRaCeRaCeRaCeRaCeRaCeRaCeRaCeRaCeRaCeRaCeRaCeRaCeRaHciVsK3VYVuJ1lqJ1lod
rZUgrZUgrZUgrZUgrZUgrZUgrdVBWh2S1ZFYCcBaCcBaHxeldEg4XUQKyVonhgI5jGrGZlUk1joh
RfIb1cnCJJwKyVozJKsisVZFYq0TutHRDfmG6gTt9ISAkmh2VhWttWa0VgVprQrSWhWktU7wT0f+
M8ilorVWRWs9D6sCCttaFba1TihJ+m8yfqvCtlaFba0K21oVtrUqbGtV2NaXOwfNmu4dBXI9/1Zv
K6Lr+beaXaFdq0K7VoV2rQrtWhXatSq063kL41Su2lew16pgr+fh7AspkqK+VkV9Pc9mz0ijFPW1
KuprVdTXqqivVVFf64TNOeinXLWv8K/n3wysA2EZKSVoHZFhK5FhK5FhK5Fh63RxXWapJDJsJTJs
nS6uy4SVhIithIithIh94dLit/uBviu7FoUkVmwlVmwlVmwlVuz5QJ8Cc2omQWMrQWOrg8YSK7YS
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
KfiBhUJQqBQahU5hZEEMeRbAE+AJ8AR4AjwBngBPgCfAE+AJ8AR4AjwBngBPBU8FTwVPBU8FTwVP
BU8FTwVPBU8FTwVPBU8FTwVPBU8DTwNPA08DT1veelyL2wlzO2FuJ8zthLmdMLcT5nbC3E6Y2wlz
O2FuJ8zthLmdMLcT5nbC3E6Y/4lOmPcxosgJjPZptE+jfRrt02ifRvtIU17k0/LTaJ9G+zTap9M+
nfbptE+nfTr91cHTwdPB08HTwdPB0+mvDp4Ong6eDp4BngGeAZ4BngGeAZ4BngGeAZ4BngGeAZ4B
HplaBbvspekqbZgy9sjR5ry4c8qtWt/6rrNbOP7rCMf7uzJxfXcrE9d3sDLxfNBHP3z9wW8//uRn
rz/59P/88MMf/vT1B59+9vEnH/7k9Rsg//XDT37/v3/1+//f+fuF333w6Uf/9vpPbaVv/P6zn378
y2//8JOPfvXZf661/kxgf7AN/+Nnfvo5QuHIUx/+6EcvffKOWvG97J//SV37P0MWf/jz1x9+8sH5
18s/P//N6w8+fhlZPvnoZXj94ccf/+yj90zN/xjat9/e5zj7f37wyce//fR87Gcvd/72o1/+6OPf
fvDxD/7l9Q8/+z8f/uqjT0+m+uCHLzz22cv4/MFL43zwyw//9aOf6M/P7z0LP/z4l5+9/t1nn37w
g9+/nP/Fm9X/xetPP33B+cHHv3r9y9efyPD51Sevf/zR717/6O907gt/SyTnez/48ctdv3nB9MFn
H//s9S8/+reXmz7+5QcvTff69S9/l7+//xzbB6/+9zE/X23Hui3H+tiWbfvgsS7rtM7Tuj6W9YO/
DcXeffHn9MV/ZIy9P3W4tfDP7PnH49X0fLVM0/M45mOdHm92/fr84G7VP6dVX63rcbya5mla9/XY
X81vtur++OsObn/a3GH7g9OWuzP/486cH/u0bo/nsW3Ly6j37/ryufx1+/Lt3PKnzzi3tzvjvHn6
Lxut/4sT9d39fxmt3N3/P5mIbiv9v+/87GWsX176+vGYXi3b8mbHH9s9VX5/uuK/gw7+EUeYzupk
nvvR65+//uz1G0be385a/QuB/X/+v1//+Jev/wpfgfZ39xVofwdfge7B4P85GDxPNn71an3577lt
6/HGaDC9+qPOk/xU/Y2s4jdeOjGr+dcWrrsP/+M+3F/t2zI/p33aHus27W/24fTqdoD9WY267s9l
Xl8d22M6m3V6s1Hn+b+0z+Tu8T9nKLynpv+TB9H/Lr3/Bxn7HVTyv/E3x1sd/3b0+99llvoHp0nP
dzdDe94ztPdFE7ZjOZ7b/OrV/Fi25c3vJdOy38b9n+eHfvVqeW4v7bcuz2U/3vRDTy+G322p/1dW
idtQ/5+su/c3pP/GHy5e5mfrc9n2V/M6Pf7dBH2f/gZLkt6ee/NW+r+o6+/Z+S0y/0mHzl9hfna8
u/nZcc/P3psVbevx2Od9nZfj1YtB8vh3gvYHV1ferfoHFopN07Gtr/b1sUz7sT/+nZF/3B8m/4sM
wa9e+ms/tvkx7S/c/UYfzo/H/Q3tf95geM/N/0eP2redfsvMf9Kfc+vj346A/yd8RdtevbNZ2uev
fkd5uN6mz+oeDd8eg75PAvD5667GPg/+9MNPfvnyslvU/uuTw59GvP9R9/+5QSr+lCXwf1wH/p+o
Pnn9q48/+exvJpp/+J3vtj3+75f8+7//L+gf/PT1z3/1ctX//vQ3P/ibcuefi+j9ass/GmUl3/G2
WvJPx/Pu2/EPWk+Pd2e4Pd5RmLI/CGp6d+0xvY/tMb+79pjfx/Z4dwmHt3eRcPjtGp5/bTvnDwzL
fwVReHcRHrf1fVSN7d21x/Y+tse72/u57e9je7y7ldbb8z2OiPrvbO93Y7/+h2Dez4H33S0J2Y73
ULH2d+d83V+9j+3x7uY0+/s4p9nf3Zxmfx/nNPu7m9Ps7+OcZn93c5p9ee+I+f/lePnZ699/+sGH
n332yUc/+M3Lgz53Hv/7p7yHQU3+U6D/WgFP9nc3KdrfxaToz8sz8M9ONPC3aaq/FNWfKg1vxTvw
p3X+H558/okehr9WHol//tMSSfxNtWF737Xhkz8eafbP/cL0nwDzzx/98kevf/fXltm3vE7yP93u
70Tc/5Nw3TPvFuyf8sXxLWP70waAd+d+2t9H99P+7txP+/P23P/lXz//U/bs//DVC3/ltvpDydIm
EieSLLY8SJb2ICUjySfPI0de3LmmkvorEx4e5BI7yCU2kexxIsHggzyQE7nWDlKRPTlC2vHyvE5l
KjIybhfyZBbyZJ4wfKpQaPkKvyvvOq56ZW7Gg7uON+6aeM7CERdWTm0cccFN9+TIkyMHRyhkpson
9TreqGBwJDhCO7vj8l0Tz5l418RdE/WaqNfE20nzfRYmCjOFhcJKYaOwU3hS8AMLhaBQKTQKncLI
QqajXElHSXbwQp7mQp7mQp7mswCeBp4Gns5zOs/pPKfznM5zOs/pPKf7OdSrU69OvTr16tSrU69O
vQb1GuAZ4BngGeAZ4BngGeBJbap0d0WMKyJakeeKiFZEtCKZFdmoCEBFNirSUtGUirRUhK0imRVh
q6RXraRXraRXrQwplfSqZAc/C9QiwBPgCfAEeAI8AZ4AT4CngqeCp7kAsAawBrAGsAawBp4Gngae
Bp4GngaeBp4Gng6eDowOjA6MDowOjA6MTvt08HTwdPB08HTwdPB08HTwDPAMN4vH+UKBHI3Zyw96
+UEvT7ThRBs+kLEHMkbi8HNcNU08IRfGw8HoNxhyB2PdMCkwCA/Guu4nw0QpWvvFKZ1hsMM7HgE+
fzvEMBijB0PzYJAdJqFGAcUO9DnQ5+DpgT4H+hzoc6DPgT4H40swvhQeWHhg4YGFBxYeWHhg4YGF
B3pkd7+arTvd4HZMqXogVRMqMdFVE7oxoRITojOBeQLzdHGqBaXYsKAwXOBdwcUBkXdkcSCC1c/h
SCHd6HC60UbBp2iEwZOH3/XgyUjw4EjhOR1NaJY8rmncVXlype4dPN14aPlBgw8eOGjM68kuYHx0
ZLUjqx3zqCPPHentSG9HerMxn1TnSas+qfKT9nnSPk+66Uk3HcA4gHEA4wDGAYwDGAcwDmAcwDiA
cQDjAMYBjAMYxwWj8sDKAysPbDyw8cDGAxsPbDyw8cCG3daooMepRgUbFWxUsFHBBp4GngaeDp4O
ng6eDp4Onu52xuSt9GClBys92OjBRg9aWho92OjBhqnaeHJDohoS1ZCohkQ1JKohUQ08DTwNPB08
HTzd0gueDp4OnqzpxkiyYXxsDCkbyrgxtmzQyQbBbFDXxmizoZUbarXBahuD54Y5uzECbIwJGyPt
xrCzod0bFLAx9m4YKBu0tGEEbwz4G9bwhjW8MdZtjNgbZs1Gv2/0+wZNbAjAhgBs0M0GBWyIxIZI
bNDNhgm1ISQbQrIxCG8Qx4bYbIjNhnG2YXhtCNKGIG2w3sb4vCFaG6K1YdttyNiGjG1YchvCtiFs
G8K2IWwbwrYhbBvCtiFsG+Q7XZPVzgBrW6FCCtWjMfRXmURVKNLGh9Ncd4/88GBwcZhh4YuOpRK8
IiDoZrrB4jG5OD95g1OyxSZEdLqIrMF6puwUmwmJmpCf6aKbytt9TfCKYN5YuStolvDFfgUXN64x
1OZTNjrNufYO2N0Aado3EVTQJqabLnwxDR68Imi6oL/C/O5T9iDo7QVgBWAFYIVBpjBKFIaUwphQ
AF/Q7oJaFfSiMNa9FNrfdDPY7fu5fT+37+f2/dy+n9v3c/t+bt/P7fu5fT+37+f2/dy+n9v3c/t+
bt/P7ft5p76fd7cO8T/yDz2+8DmyDsSRhRz+CmNloe3K1XZBAwUNFDRQ0EBBAwUNFDRQ0EBBA2WH
FaStIG0FiSwM9AWdKWh1QUMKGlIYCwoKX1D4gnoXFL4wBBQUviDiBVUpKE9Brwp6VRiFC2NuYcwt
jLCFEbYwnhbG04IOF3SmoFcFvSroVWHgKAwlhTGuMOoVBqnCsFUYkgqDVIGYCzZfweYr2HwFm6+g
RQWbr2DzFWy+gs1XsPkKNl/B5ivYfIHuBboX6F6ge4HuBboX6F6ge4HuBboX6F6ge4F5EYh6IOqB
qAeiHoh6IOqBqAeiHoh6IOqBqAeiHoh6IOqBqAeiHoh6IOqBqAeiHoh6IOqBqAeiHoh6IOqBqAei
Hoh6IOqBqAeiHoh6IOqBqAeiHoh6IOqBqAeiHoh6IOqBqAeiHoh6IOqBqAeiHoh6IOqBqAeiHoh6
IOqBqAeiHoh6IOqBqAeiHoh6IOqBqAeiHoh6IOqBqAeiHoh6XKI+wDPAkzPDBS1Y0IIFLVjQggUt
WNCCBS1Y0IIFLVjQggUtWNCCBS1Y0IIFLVjQggUtWNCCBS1Y0IIFLVjQggUtWNCCBS1Y0IIFLVjQ
ggUtWNCCBS1Y0IIFLVjQggUtWNCCBS1Y0IIFLVjQggUtWNCCBS1Y0IIFLVjQggUtWNCCBS1Y0IIF
LVjQggUtWNCCBS1Y0IIFLVjQggUtWNCCBS1Y0IIFLVjQggUtWNCCBS1Y0IIFLVjQggUtWNCCBS1Y
0IIFLVjQggUtWNCCBS1Y0IIFLVjQggUtWNCCBS1YLi0Y4BngGeAZ4BngGeAZ4BnMyYMZeDADD2bg
wQw8mIEHHoHAIxB4BMLfbfAIBB6BwCMQeAT8WSzwCPhbUwVPBU8FTwVPtcsDPBU8FTwVPBU8FTzV
Zjez9GByHkzOg8l5MDkPJueBsyBwFgTOgsBZEDgLAmdB4CwInAWBs8Bf5yrOggqeCp4KngqeCp5q
twh4KngqeOzereC5GqGnqzgv3rl45+Kdi3f0faeCOxXc0cEdHdyvJ2eL7bTYTovtjAA7I8DOCLAz
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
c7ult1EdS2ajOo3qWCAb4BtQLWOWKItNA6H7vQGsAczd3cHjjnM3uS86eNyYV9O5c3mXG7Mj8523
u6HcGtftAOtuVSP07b6GUwPwtjkGcjiojm2OQb1scwwqOKjgoIKDBh9Iy0CiBjJ2XUNfDCpom2PQ
GoNOGTTUQAev21XBXa2z645d1+9qhT0vUQvsYv1dXvtdZL9/hecKzS4Pwy6y30X2u8h+F9nvIvtd
ZL/LsbDLsbCLv3fx9y7+3sXfu/h71/R9F1vvmr7vIuldJL1r+r6Lm3dx8y5u3sXNu7h5Fzfvmqzv
ouRdlLyLknfNyHcx8S4m3sXE+6fUPltRlLyLkvd/5Ww2rrh5Fzfvv3/rUVhu18ft+rhdH7fr43Z9
3K6P2/Vxuz5u18ft+rhdH7fr43Z93K6P2/Vxuz7enuvj/VsZ8uoLn8NNIZDVsGM17FgNO1bDjtWw
YzXsaTXE/IbEdU5Jur2yb8eg2DEodgyKHYNix6DYMSh2DIo9DYpghWB4heCOibETNstrBndsjR1b
Y8dp4OWEO0bHjtGx4yvY8RXsGBQ7BsWOr2DHjvCyxJ24nl6fuOM98ELFHYNix3uwXw1VwOwKFmM+
KADDtUirwcsb9+vtaSOw4DG84HHHWNjfeKBvpy+ui+mL4r5wvahOzm5YOHkeoVOCCgYVDCoY9FdQ
naAxA0G67qINA/AB+AB8AD4AH4APoFYQVoBVXlEBVgFWAVYBVmneCp4KnrRVl6uCFWAVYBVgFWAV
YA1gzU0HjAbCxpObT4GwgbCBsIGwgbDRYg1gDWANYA1gDWAdYJ0W6+Dp4Ong6eDp4Ong6eDp4Ong
6eDpyKpFogOsA6wjh5aWAcIBwsFwEbx9AHUAdfCK4ef4YqAOVC/QJosfhOCx36MqU3tytz9zyMsB
L4e7HOyeKFNYfPIytf9TnPwUJz/FyU9NwJ9f5ZZ8pDj5KU5+ipOf4uSnOPkpTn5+izsZtVJTnmLp
p1j6+Y+cTTCi66fo+im6foqun6Lr54d5S2VMSEV7isCfP+SwhOgpJn+KyZ8/5uxMgVEwdfEpkn+K
5J8i+adI/vkzrmVYTHV9/py/1bHPX/A3/Zv2+FMWwVMWwfNXnM0u+TV/Z3vLRnhqtv78jLPZs7IR
npq2P3/L2Wxo2QhPzd+fYuInTPyEiZ8w8RMmfsLET+bvT+bvT+j2Cd0+odsndPuEbp/Q7RO6fTJ/
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
KidTVU6mqpxMVTmZqnIyVeVkqsrJVJWTqSonU1VOpqqcTFU5mapyMpVyMpVyMpVyMpVyMsdgYLGT
BoUCM/XFqaxJjEKlmUqlmfri9FaZtqHkTKXkTKXkTKXkTHXJGQrM1BensmrVfTQ4yy6pcnquctZM
AFUqzVQqzVQqzVQqzVQqzVQqzRynI6CZE3LtGVeaWTNLVKkrU6krU1+cCt0Y3t146Feqzc2XE9Cs
K6NyMsdhpiP3mNx8aaHPSjMrOSJVmqmqNFNVaaaq0kxVpZl6w8c1ups5oqw9k5VmVig9s9KMCsxU
FZg5vk2k0jFVmqmqNFOz0owKzFQVmKm3H3GmO6fOiM31+N+dYfx7jpK0Lolexe9axe9axe9axe96
nKJ5EdFrFdFrTaLXpHUVd2sVd2sVd2sVd2sVd2tN7lZRtlZRtlZRtlZRtlZRtlZRtlZRtlZRtlZR
tlZRth6gJAjibq3ibq1wt1a4WyvcrRXu1gp3a4W7tcLdWuFurXC3VrhbK9ytFe7WCndrhbu1mrsV
ptZqplYIWisErdUErfCyVnhZK7ysFV7WCi9rhZe1mpfVLKwmX4VztcK5Wm+nS+l44cwRiYW13jEF
yhjVpGMV+Wq9I0VKHNW7hUk4xcJak4VV5KtV5Kv1jm50dEPJoXrH7fSEgJJoeVZF0FqToFW8rFW8
rFW8rPWO/+nIf/JaiqC1iqD1OKwOiKm1iqm13lGSTOAkZauYWquYWquYWquYWquYWquYWp/OHAxr
5nfE3Xr8r9kWievxv4ZdbK5VbK5VbK5VbK5VbK5VbK7HKdipfG9f/K5V/K7H4ZwLKZKIXquIXo9v
c2akUSJ6rSJ6rSJ6rSJ6rSJ6rXeCzsE85Xv7Ynw9/sewDoRlpJSgdZDBVshgK2SwFTLYej99XVam
hAy2QgZb76evyyKVsMJWWGErrLBPvrT47r6gz8qpRSGhh63Qw1boYSv0sMcF/RWYUzPhia3wxFbz
xEIPW6GHrdDDVuhhK/Swxy0eNBifHaipqxsFJR9ZJDTLd7rXWSY4y3tmMc+s4flVfpS1R6WZ4pI9
Dm80smb0N/g/7/VN/s+bZuloqaj4Zo9vs9SwVFTEs8fhRiNBSWlFRXscTpDS3uSkFQPt07e5dE4q
WjHQVjHQ1mSgFfFsFfFsFfFsFfFsFfFsFfHscbksQftz/s+qrllnWgr5yOq6UkjRzFbRzB6nMFf5
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
HTwDPAM8AzwDPAM8AzwDPAM8AzwDPAM8AzwDPIq1CoHZ09BVxjCF7Jbm5vhx5yuPan3r+6wu4fjv
IxxfnHV5/fLNq89ff/DyzZePgx++//qTl2/efOmXb/424vrv3U39f/OvBmCfpseX37x8/duPPnj5
3u9evf7Vy9dvvvzB+x98+PK9N5+9ev3+L17yrb7M73718g9vvvTHq/0lI/D65aevXn/2dsfB9/wi
R+NPb/Gv//8T4O99+PLjT59+9aU3n//0bzZWfwmid2kk/+QWH7z+6NPP9Pvnd3hbo/jnonnnNPO/
jW36d4f0LxWdf0fivxjJ+XfBvHPD9ruPPvnZq9/lwfd/9rNnovhFDNx/AOfv/te3X33y8v9y/fgP
+v8/yGf/RaPwP9hM/A3H7d+wQMcN3hnHLDDv4Lj9Gy7/1+9/9sGHX7Ch/XNw/bkW988V8jcf/frT
j19+6bPff/bFKtuJ452x0v+d15Z/Kjb/wxeX//nhuFaXf7Oh/D/6Dd3inXFjwHmHB/Gy5/93r8cR
wUtOrnXJ3y59cUnZ30bK8tHXL14+TdvT/d776JOfv/qbhgr/wQ0vafm/xSb9/OXT+D8df/+zz998
6dM//L9qfeX+YvlzR+8f//DZh68++f4fp/bPGMXl7/5K+K5R/Z8xqnnpzz786M17P3v18s17n7z6
7L2Xv//oySI96df7b14+Hf3ks/c+eP3y/c9evvfRX1frpxfT3/0NMP43lN35xYu/iezO/1m7+u/j
e5dH9fJK/yNH661EPP+uNX/xN/I2L/5K3uad1tjzHbMvVgZPHF/EaP0X3sjS/d68t0/733D4/grA
rqcgfwur9S5lzf4qbxj+qdj8930K8gUNx593k//v03Vf/v4/HJ//vOK//muP99/eZHkcvqg5+6+Z
2NdftJT93/M21BWXX6uY/3mrmCvevqzYX+UJyb+5OejOTkF2R5cbm4Nu7EFkt+VxZM8fd35T2eqS
O/x29s7s7J25s7vxzo66Gxsf7+wt2tl6A9d+gWejbOdXufUGionCxtDCxtADhr8qNFrewvfKs/az
X7kZcees/dlZd64zccSNma8Wjrjhods4snFk5wiN3JpJwYDjK/ciOBIcYZw9cXmvO9e5c687Z93p
151+3bk7vBZH407jQWOiMdNYaKw0Nhq+YKERNCqNRqPTGNnI/Zcz+y+hwygQExSICQrEBEcDPA08
DTyd63Su07lO5zqd63Su07lO93XoV6dfnX51+tXpV6dfnX4N+jXAM8AzwDPAM8AzwDPAk9pUme6K
GFdEtCLPFRGtiGhFMiuyURGAimxUpKWiKRVpqQhbRTIrwlbZT1zZT1zZT1wxKZX9xNBhHA16EeAJ
8AR4AjwBngBPgCfAU8FTwdPcAFgDWANYA1gDWANPA08DTwNPA08DTwNPA08HTwdGB0YHRgdGB0YH
Rmd8Ong6eDp4Ong6eDp4Ong6eAZ4hofFdr7QYE9izvKNWb4xy3fG8M4Y3pCxGzIGU8ZhV+0mNpwL
9nBg/QYmd2Drhp0CRnhg67qvjCdK0VpPn9Ixgx2/Ywvwx7vjGAY2emCaB0Z22Ak1Gih2oM+BPgdX
D/Q50OdAnwN9DvQ5sC+BfSlcsHDBwgULFyxcsHDBwgULF7Rl97zaW3emweOYUnVDqu6oxJ2puqMb
d1TijujcwXwH8/30qRaU4sCCxnCDewU/Dhx5RxYHIlh9HY4UttcOb69tNPwVgzC48vC9blwZCR4c
KVynownNksdvGmdVrlzpewdPNx5GfjDggwsOBvO8shsEHx1Z7chqJzzqyHNHejvS25HeHEy44QoE
cAW6twKnW4G4rcC8VmBee5KrTmzXUeOOGnfUuKPGHTXuqHEndukEOoPAaxCTJYwdGDsw9hNG5YKV
C1Yu2Lhg44KNCzYu2Lhg44KNuK3RQdupRgcbHWx0sNHBBp4GngaeDp4Ong6eDp4Onu5xJuStzGBl
Bisz2JjBxgxaWhoz2JjBRqjauHJDohoS1ZCohkQ1JKohUQ08DTwNPB08HTzd0gueDp4OnuwpfEtH
o9K402g0HtlIdwLnUIE5qcDJVKAsOhq+8qDBTasbczbCP+ZI9QW5e7oASJ4KFEoF6qMC9VGBgek4
EjT4cbiDnBX0otLlypHwlelFA0aAsDAsjV40bhF8FVy50Z3G6cGRAvjGIDQGKtwvw6CDzbfgrEKX
G+CbT/dXbngM6VczVAahcdPObzo97fS004vufuG/vFjtGFjHChWnUG2NcX+VRVTFRTr4MK1Dt+XH
DwY/DntY/EUnUgluETjoZndDxGPnYj6Ohk/JEbsjovfTkTW8nl12is0dibojP/fT3VTu7t8EtwjW
jZWzgmEJ/9i34MeN3xhq81cOOu1znR1wugGn6dxE0EGHmB668I8Z8OAWwdAF8xX27/7KGQTdvQCs
AKwArGBkClaiYFIKNqEAvqDdBbUq6EXB1j012tsnhrlyP1fu58r9XLmfK/dz5X6u3M+V+7lyP1fu
58r9XLmfK/dz5X6u3M+V+7lyP28r9/OFviD6H1QAO8B1UI5spAUsmMvC8JVz+IIxCsYoGKNgjIIx
CsYoGKNgjIIxyjkrCFxB4ApCWbD1BbUpKHZBSQpKUjAHBZ0v6HxBwws6X7ACBZ0vSHlBWwr6U1Ct
gmoVDHHB7BbMbsHIFoxswaQWTGpBjQtqU1CtgmoVVKtgOwrWpGDmCoavYKcKlqtglQp2quCbC2Ff
IewrhH2FsK+gSIWwrxD2FcK+QthXCPsKYR8VUY6G8ATqF6hfoH6B+gXqF6hfoH6B+lHR4mgUGkGj
0mg0Oo2RjRT1QNQDUQ9EPRD1QNQDUQ9EPRD1QNQDUQ9EPRB1SgkcDfAEeCp4KngqeCp4KngqeCp4
KngqeCp4KngqeCp4KngqeCp4GngaeBp4GngaeBp4GngaeBp4GngaeBp4GngaeBp4Gng6eDp4Ong6
eDp4Ong6eDp4Ong6eDp4Ong6eDp4Ong6eAZ4BngGeCzqAzwDPLk4nNCCCS2Y0IIJLZjQggktoOzF
0dho7DQKjaBRaTQancbIRmrBhBZMaMGEFkxowYQWTGjBhBZMaMGEFkxowYQWTGjBhBZMaMGEFkxo
ATWaCtVkjgZ4KngqeCp4KngqeCp4KngqeCp4KngqeCp4GngaeBp4GngaeBp4GngaeBp4GngaeBp4
GngaeBp4Gng6eDp4Ong6eDp4Ong6eDp4Ong6eDp4Ong6eDp4Ong6eAZ4BngGeAZ4BngGeKwFAzwD
PAM8AzwDPAM8AzyDZXmwCA8W4cEiPFiEB4vwICkQJAWCpED40Q1JgSApECQFgqSAn4wFSQE/bqrg
qeCp4Kngqc56gKeCp4KngqeCp4KnOvJmoR6sz4P1ebA+D9bnwfo8yBcE+YIgXxDkC4J8QZAvCPIF
Qb4gyBf4AV0lX1DBU8FTwVPBU8FTnRkBTwVPBY8zvBU85yD0zBbnjymudDSCRqXRshH8JvhN4zeN
3/jKOWIrI0b1qEKJuUKJuaPBjxs/bvw4Lf+K5aea1dFwzhs8BTwFPAU8acOpj1cofXU0uHJw5QBh
AU8xHkaseDQ8PtyrA6zTr851Otfp3L1z9+67A7UCtfLjyo8rP65Ardy0ctPKTSs3rZ53btG4ReMW
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
j/06vNv9ce77CTa4+HlAJvTbuYBs1kpbCZ5UZZoJUtpBMHB8xfO/xoOKVNiFzDUkuYNaKEdwwi6o
8Ol+voUWNDx1d8Dg5xwDCfcMOtZiF9TwosWzM2FX/ehiYcRslhmNwl4TRYydvf6Drd6Hpix4WKap
8PBASl3HuYNH4Vyt5xq+4WELT2vCVr2Q2yr0nfR04LvT/a1ntBwcaQQMGYGwq7iNM8PiJx/pzXmm
UvFNfTqvM4gPC9FgqsN0PvDIaJAETWc/d4Ncu/M0q1NRYPDVMRcrF7Qk0OVOmNFYww92JjU/KyLs
cQ66uoMba5CBHAaZvhf0i+c3laA03UR75iZIaTkZFH7MdkNlHqy9rbAsl3IGp3NvmY1egqdATWd3
aVvOB4EOwypPznR6286n141shZc5uUJmY27HQlZ7c5LaBx7y+LlU3p91h81zfpOgWHMJujoPGIYf
h/sRLHoaPHKwxuVivrFkYIPvYNv94WobbyTsLIWcyCCitlVPb06au/Gg/ZAxAuAgsM8fDzI+EB6M
7Xx2VcgppIOm5tVYnr0qgdlp9uY8vc7EJfuw2/1cYIafc/CIqOKgg+Ct27Hy4CS9Jyn1I7ZxCglt
6qzIgg5WYuwMStlKeJxF0m14Gxwqk+HlYHgJSo9bOIas+Dhv9KxcGd8UbOssJOI1mIeCFJz4juMA
xvkMzCuXndiPPLXmtPKCRaPY1GD/Yqf8wNELJLwzzo3lST5LW3iAx373/jj3v2bMNs6MofdBNr9Y
sxLyebuqn5P5fRF+U29vnW/qSgBdCaArAXQlgK4E0JUAuhJAVwLoSgBdCaArAXQlgK4E0JUAuhJA
VwLoSgC93QTQO/mi0IuvHH3OvvHSbG+ngSi8OZyvhK3nS+DF7zYPzBNWu9Bt79JKa0sp9MFbyp3C
8H1/toPGm6GI/7y7yq+tJh77J/gZG5j7ci7mHUs1lg0NR2VPcy6nkZju/Q5+K9gqwdYeL7AHzGv5
eh4M0a2fO8tytTDzstmMlFd+7Bc1Kb/dytnTYjPnlxVZbHhT3vB8OUsVCG4QilVyf/iVykqp4jgH
u726bRlzmjrfCLght23306Q2dOwM+/x2sZedpDa8Yh+8AhqE+419AQXSuuHx8ZvwnTHElvkN7Xxd
kHe2+3y+VR6eZZZMfoczMxGAH/u54SU33JVnJt43deqQwMtWKW30g3dKX5zvlGaesZ6bFjP3R53T
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
6GlhWDKmeJwxRRqI+7OzFo7caTxo+HRmudDBQpcL3Sl0MJOqDmQcvzyIRB5EIg8ikQcxN6VbN9g+
437ePehXACyYlOAW4R8DNYAaQA2gBgMeAAuABcAqwCrAKuNcwVPBU8FTwVPBU8FTwVPBU8FTwVPB
U8FTwdPA08DTwNPA08DTwNPA08CDY7ArIJSAzHl72PiTdnjYpNuW24inaQ6C0yA4jfspJN1zyi2w
gLZ5WDkHsA+bO9s50juP03zZanVf2XLYaAC++8jIRgbC91P8un9MT221bKxskQYqY6G1rA76NeiX
pXfQr0G/bG1sUgb9sgGxubBNyCzBpJ9OwX00+ZN+P9HnVJUJS5AaM6mbk1z7JNc+ybVP39DHNzlF
MCelCyb57+nbfCvskxz5JEc+fZdvE6WecExy5JMc+SRHPsmRT3Lkkxz5JEc+yZFP73M59za7Kdc+
ybVPcu3TS36kIZvk46dfcDgHUM5+krOf5OwnOftJzn6Ss5/k7Cc5+0nOfpKzn+TsJ2UAJrn2SQv/
SR590iOKSev9SW57ktuecNsTbntimT+xzJ9Y5k944glPPOGJWTqFl04TTyYm/K4XU1P63fCqakoH
HF5eTWQAJjIAE353wu9O+N0Jvzvhd1mdhVdnE37Xy7SJDADrtfB6zcu0CQc8sfCf8LsTfpelXHgp
N+F3J55wTLjbCXc7saif0suGF4AT7hZ29aNBBwvjU5idQgcLUAtQC1AL3SmGioZWYBSgFsMAavFv
mAKbsAr4BuYAc4A5wBxgxlrYPtgwWN2t2VZiXOlk9bOKWalwpdMph5Y6C1tFSJq/ApilxUJSAVYB
Vpn35guC0AJQkedG3ytQPeDn0HF3j6GB+Ra+zvljoDaCqoY8N8A3wDfAN4P3V4BvgG8MbwNzA3Mz
Zi7YwdzB3MHcwdzB3MHcQdiB0X1B5r0DrAOsA6wDrAOsM+8DPAM8AzwDPAM8AzwDPAM8AzwDPAPd
OccQhAOEw/PuI0BNxzn7KurMrB/O+Z9+Pedv1an5q5yC0jb8aUZG89fy/5yN+ev8T5yUkzLLuc5K
wc/yqbN86oxPzXmb5VNn+dRZi+NZrnSWK53lSucfcKYGdpZPneVT5x+/dX6bKwFyJUCuBMiVALkS
IFcC5EqAXAmQKwFyJUCuBMiVALkSIFcC5EqAXAmQt50AeSdfFLl95Qma/PwsPz9rwT7Lq8/y6rO8
+qwF+/xzeoqupSTPWsLP8uqzvPosrz7Lq88fcwruJmV+lp+fP+GwJG6Ww5/l8Off8K2Ebpbnn+X5
Z3n+WZ5/luef5fnn33Mmbjf1aFYsMP8Lh1P4CApmgoKZoGAmKJgJCmaCgjmDgvDbQzPbNGZigfmM
BVJfZ9bgM2vwmTW43zmaCQFmQoCZEGAmBJgJAWY2bsynwx8owfBvAL8DPt37jHuf2bgx48xnnPmM
M59x5jNrZ+fdZtbOM858xpnPOHN4qTaIpY4GwArACsAKwArACsAKwArACsAKQ1fAE+AJ8AR4AjwB
ngBPgCfAE+AJzOHwgPssEDpyHr4OlnL4gp53X9mjSpeDXlR6UelFZTVkOz18U4bFnn8wPo4TMc+E
ADMhwEx4+DhnsIKwAqzS08pcVN/U9/It6EWjF40rN+aiMReNuWgAawBrDF0DTwNPA08DD/4Grw4f
9Dbbi9h94Mxn+w07Bdt4TCC5oHic8oxRxNQ9TgnH5tnKsR/hcQp/BzOG6jRNti02ILYSqebOMj1O
3RlGyN1zEf04tWmA0NJrWbWIWjIlkEFKKkhJxePUweGvAD/oV4YJ5KaC3FSQm4rHqZ6W1RTRRVO7
6GILlwr6mFq8NP6faDBhwQAF05PKvAAng+/FqOhL0M2MwRct4ZevcVhgF63lF4Ubyzf5NnuguGNR
3LEoF78o3FgUbiwKN5bvcSZIUvGX7/M/s17pfy4hF8Umi5b5i0KSRSHJomX+8hNOYYhS+RcFBMv7
HJYkLIoMFkUGy8/4VuKxKERYtN5fFBAsCggWBQSLAoLlV5yZw671/qI4YNF6f3nFj3IuFAcsWvgv
cv+L3P8i97/I/S9y/4vc/6KF/yJnv2jhv+DjF3z8go9f8PELPn7Bxy8s/Bdc+4JrX9jOsODRFzz6
wlp+wZEvOPIFR77gyBcc+YIjX9izsOC2F9z2Qlqc/GY4v7mwJ5NEZzjRueDaF1z7Qn7cOdCFPZkk
Q8PJ0AWvv7CEX3D2CxsTSJiGE6ZUNw8yp0HmNJw5XYgMFizpgt1cMI7Lad2aGwxCY1IK01QYhEaX
ixv03Zar+QgTV+hpoaeFngajEUycDVDzBblOuMsYpYalab4gPQ16Gsxy0B3MFDEHGeEgI3x8RS9s
qjqjGsZDvwIYnQEP8GBoiDAoNLEttjDkDaB5DjLLQWb5+IpeOIzoTFynX9gBcgtOOlPHY1tOwbY8
d6bSgm3ptdB2Trf0NrpjyWx0p9EdC2QDfAOqZcwSZbFpIPS8N4A1gHm6O3g8cZ4mz0UHjwfzHDpP
LvfyYHZkvnN3D5RH4zwdYN2jaoQ+3b/hqwF4xxwDORx0xzHHoF+OOQYdHHRw0MHBgA+kZSBRAxk7
f8NcDDromGMwGoNJGQzUQAfP09XBVaOz6oxVv181Cmv+RCOwyuuvStyvcvbrN7iu0KxKMqxy9quc
/Spnv8rZr3L2q5z9qtzCqtzCKv+9yn+v8t+r/Pcq/71q+b7KW69avq9y0quc9Krl+yrfvMo3r/LN
q3zzKt+8yjevWqyvcsmrXPIql7xqRb7KE6/yxKs88fqG3ucoyiWvcsnrb/k2B1e+eZVvXv/w1rlH
rtTHlfq4Uh9X6uNKfVypjyv1caU+rtTHlfq4Uh9X6uNKfVypjyv1caU+3l7q4x0u/pPf6sv87tfv
f/bBh+Xjj59Vzfki6gH9mdD+7n99+9UnL/8iNpXwW8CrAqiVAGolgFoJoFYCqJUAas0AKh7PlK/z
lRTd7zmuxFYrsdVKbLUSW63EViux1UpstWZsFbwvGX5fciXaWuHN8huUK2HXSti1kj/xy5Ur8ddK
/LWSNllJm6zEViux1UraZCWk8kuaK8SefltzJZHi1zZXYquVRMp6DlQBsztYjHmnAQz3IgMov+y5
nnfPcInXP8Ovf67ETeuzC/p05uL8MXNRPBfuF93JhR6vkR5HmJSgg0EHgw4G8xV0JxjMQJDOsxjD
AHwAPgAfgA/AB+ADqBWEFWCVW1SAVYBVgFWAVYa3gqeCJ8P26exgBVgFWAVYBVgFWANY89ABo4Gw
ceXmr0DYQNhA2EDYQNgYsQawBrAGsAawBrAOsM6IdfB08HTwdPB08HTwdPB08HTwdPB0ZNUi0QHW
AdaRQ0vLAOEA4cBcBHcfQB1AHdxi+Dr+MVAHqhdok8UP32g3aKtKloNq91uavDR4ae7S2G0oU1h8
8mca/03hyabwZFN4sikXsX2TU/KSCk82hSebwpNN4cmm8GRTeLJ9jzOxWqkpmwKWTQHL9gO+TTCK
XDZFLpsil02Ry6bIZXs/T6nYhFS0TbHM9gGHJUSbgppNQc32c7590MAKpi5uinc2xTub4p1N8c72
K36LWUx13T7mf03s9mv+Z35zabIpONoUHG2f8m1OyW/4P8db4dKmxMX2Gd/mzCpc2pTB2H7HtznQ
Cpc2pTI2eeINT7zhiTc88YYn3vDEG6mMjVTGhrvdcLcb7nbD3W642w13u+FuN1IZWzrX8DvtfpV9
I7mxpZcNv9y+4W43shwbOzL83vuW7jb8AvyG393wuxt+d8PvbuQ0eFs+/Lb8dnrixmjYEzdfmQ7u
dLDQnYK1bdzdoUZDOBqq2RjDgng2BrPQ5eIuGwYq3hjMzvB2hq4AvoDZ/ruDp3PT7nuBsHPTzvB2
PGj3dRjVwqgWd4cx7PS0M+DdHURa7P67jzCqwaja/XdGPhCAYN6DXgRTGQxCMAg2uzb6w7eg74N7
2egP34KeYlNtKQkRNhs+0rLeTbARK2w2YTZaxAoU1D0a9KLSC4yPrQ6xwmZzY8tik2LrYUNBiLCd
OmiNs1pZmxp4rCDWC6uDRb2Bp4HHEm7BbuBp4Gng6eCxGHfwdPBYVjt4Ong6eDp4LKIdPB08lkNL
nUWrg8eyMcAzwGOR8OQO8AxUZqBE5xEQDrRpAPVsWA7dAPxAmwbaNOjFoF/nEfo10K+BAckwIll3
/fQ1jaIfwqYl9LPYzO3mMsRPZnN7Gg9oww9od4Ua+9c4rN7vijl2xRz7N/lWA7Ar5tgVc+yKOXbF
HLtijl0xx/49ztxpaKD27/O/O+SeZBcUjuzKn+yKQnZFIbuikP0nnJKDpXBkVyJl/ynfSlZ2ZVR2
BR/7y/w27deu1MquUGNXqLEr1NgVauxKrexKrexKreyKHnZFD/unXPVGI+dJyZZd0cOu6GFXjmVX
0LD/llNyKpVj2RU07H/g25xRRQ870cNO9LATPexEDzvRw070sBM97EQPO9HDTvSwEz3sRA870cNO
9LATPewszXdihZ0V+U6IsBMi7CzEdyIDHtSHH9TvhAhPje2tc69c6ZIrXXKlS650yZUuudIlV7rk
Spdc6ZIrXXKlS650yZUuudIlV7rkSpe82+mSd5WpJbz7Yid+2f/eGpt+jP0Yx1fIejDEVt9grFFg
4pf976274R/zm3y7lY0ZxxHLHROToY13aOwEMt6qsdtKnOahMnnYCVsGghQ2bxxH6CDKfWp19ZWR
oWLwxgxUVJEEwm7tsU5Y/Ikg9lNiPBeBTHvkPeAe5wCPBzOwmdVXBpiHziPm8fEguKc+vQKsAqwC
rAKsAqwCrAKsAqwyUBU8DTyN6fa9GsAawBrAGsCafwyw5jn1ERA2EDbPKb1oQG1AbR5Dnw7mDubO
GHagdqB2oHbLIdrk8emYDA9UB3MHWOfuHfDdp/ssMHdj9hEwDzAPMA8wDzAPMA+GdzC8A2ADYANg
A2ADYANgAxgZAqRSZeCeepRalDqUGlTkzIvyBkU+vMiHF3x4dXfzJDnz8g95OGWryKsXefXyj3yr
gShy70UviBYlEIo8dpHHLvLY5UeciR1KwSw/5n8NYMGZp5gWOfMiZ16USSjy4UU+vODDU6CLfHiR
Dy/y4UU+vMiHF/nwIh9e5MOLfHiRDy96m7TIYxd57CKPXeSxizx20TK/yFGX34NG0160zC9y1AVH
XXDUBUddcNQFwmlvICt47ILHLnjsgscueOyCxy547ILHLnjsgscueOyCxy547ILHLnjsgscupM4L
/rmwhC9QT3rTW2EtX8ihF3ZqFvxcwc+V0881ziogLCC0M2tcsAC1ANU+rHGvAuYC5gLmAtTim/rK
Pr1xQTAXdKgBvhg8wxuAD8AHwxtgDjA7/Ok+C8wBZscT3RcEfAA+sNHd96IXAfgAcwC1ctPKlSvj
3IFa3QBzRSQqFrn7KzBXxrkCtQK1Ms6VsMZGv9P3CmYbre4rA74RA3WPD/eyd+zctDEsGCFbH5sd
tvGw6zG867GwscfbH8vpODujauG3GFtWLZAWJPvL7u7QsCR4uj2nnhQPeAe8h84D1ZkCD4tHowPM
HXS/3B0DG+AZ4BngGeAZ4BngGeAZ4BngGZiLwQyeVwbhYArOewF1oJWDcPa8u8CnVmTIl4qQapBK
EKjtQPYScHyV/5nywUyfuPP6crchdxtyt6G9FvEtfuuOJAytnePbHE5YcrehRXR8l28TrdxtyN2G
3G3I3YbcbWiBHHKu3uTmnWzxE/5/0JhoaM5Cfjfkd0N+N+R342f8dqGx0tC0hnL68XMOS+hCLjnk
kuMjvs0RlG8O+eaQbw755pBvDvnm+JQzg0aO52/4v9HoNCTBIUcecuQhRx5y5CFHHnLkoRV3yH+H
/HfgvwP/HfjvwH8HC+3AbQduO3DbgdsO3HbgtgO3HbjtwG0Hbjtw24HbDtx24LYDtx247cBtB247
cNvByjXw1oG3Drx14K0Dbx1k1QMnHTjpsKjhmwPfHJYxXHLgksMCZJGxdOCSw5PNIjJYRIZnGb8b
+N3A7wZ+N/C7gd9l92Qsz84CYSDi53WAGkDNB3nLs1sgoIF+BX3HEuGSA5cc5KPZahneahk8W2PP
ZXjPpXdYBv47WJ4Gbjtw28HOyGM75lvnd7kSJlfC5EqYXAmTK2FyJUyuhMmVMLkSJlfC5EqYXAmT
K2FyJUyuhMmVMHnXEybvMCvM65dvXn3++oOXb7785qNff/rxyy999vvPvggKmH8Lh4btzb8at32a
Hv+HS2mI8uD7P/vZMwaZv4w7BuKxWE6JqkhvtfQiYxXprUhvtfSiRBWNq8hq9ZV9HX7c0LiGs7Gs
WiBz9QfJWUByFsspmQ1ZbT6CyjS601CHhhZU/4buNNSh0YtGLxq9aPSi0YtOLzqYO0rUAdYB1rlp
B1gHWGd4O3g6eDo2wbPTAdYB1gHWATYANgA2ADYANgA2AEYcQ+AVBF5BEiIcwJCECEcnjkcIPTJs
T7lIqUiZSIlIeahKQlRFRVVRUVVUVBUVVaUcqmKgqkxDVehT/5ExQnBTXqtSDvV7HFYvqoKhqmCo
/oBvE6+ioqqoqOo9y6rdHlWBTlWgUxXoVAU6VQmGqmimKq9Qf8HFcxQUzVQlGKqCmKogpiqIqb/m
lBwxRTNV0UxVpqEq01AVoFQFKPUzzsxBVqRSFalURSpVkUpVpFIVqVQilUqkUolUKpFKJVKpRCqV
SKUSqVQilUqkUolUKpFKhU3b3ICVkKUSslRClkrIUglZKiFLJWSphCyVkKUSslRClkrIUglZKiFL
JWSphCyVkKUSslRClkrIUglZKiFLJWSphCyVkKUSslQy4dAhHkcAVgDmQLX5piAsICwgLFwn+HGA
MEAYIAwQBggDhAHCYMQCYAGwYMQCPAGeAE+Ap4KngqeCp4KngqeCp4KnggddtvZaUa1UVhVL/ila
HmcPZgNPA08DTwNPA08DTwNPA08DTwNPA08DTwNPY2lhh3feHYQdF2g8HaidH3dcoKF2N8DcwdzB
3MHcif8aIZ072OlFpxedXnQU1oPQGd4O+MHwDjAPMA+6M4A6gDq4++DKA6iD4R0AGwAbABsMb7qc
nImch5yFnIN03znaTS6nyeU0uZwml9PkcppcTpPLaXI5TS6nabXdvsvACHXTarvJwTQ5mKbVdpNf
afIrTX6lya80+ZUmv9LkV5r8SpNfafIrTX6laXHc5E6a3EmTO2lyJ03upGlN3ORFmrxIkxdp8iLt
Nb3QkDe5k6b1bvucb3Nw5U6a3En7Pd/mmMuvNPmVhl9p+JWGX2n4lUYGG5LWMElrw9M0PE2jsrX5
Wxsup+FyGi6n4XIai+OGp2l4moanaXiahqdpeJqGp2l4moanaXiahqdpeJqGp2l4moanaXiahqdp
eJqGp2l4moanaXiahqdpeJqGp2l4msbiuOFgGsTwMN6GGW8by+XGHhRz4DZcTjuzI514vBsP4IML
BqcH4IMfB+C9ku6sdzvd8Vq206+gX0G/gn4F4xz0IhjnAHwYvK8D5grmimnu3KICvgK+Gip3r2Cu
QK3covo6/jFQKz6+Mykd8BXwFfAVIalgbmBujHMDagNqY5xt6ztXbkBtQPXaqHNTjIH1nqe5Zh9u
+Ll2Kqy1Ejt7ypgl6pQf5HD4N7i34R8z4IMOWkgsG55TT5xnx8M7fGWGxQPekfnhK9Md9/SEyk2N
2VCNcDAFvpevPBDswVplgPk8gpMeBs/IDwb8PIuenj/GW+eWOug2Yj0tyaDvWfZhPW3LoO/pU3ME
YebYcthSlnKkcpwyGuhyrv1rnDnT0OD1r/P/SmOjoe50eeL+zbfPE3OlRq7UyJUauVIjV2rkSo1c
qZErNXKlRq7UyJUauVIjV2rkSo1cqZErNfLOpEbeVU6YrSs66IoOuqKD/h264UHL0VK80L/L4Rw9
xQtd8UJXvNAVL3TFC13xQle80BUvdMULXfFCV7zQFS90xQv9JbfKGfo5/+dUKYLoiiC6IoiuCKIr
guiKILoiiK4IoiuC6IoguiKIrnVoV+DQFTh0LT+74oWueKFr+dkVJnSFCZ0woRMmdMKETpjQWX52
goJOUNBZfnZigU4s0IkFOrFAJxboGQuE6W8huz2+SkGGLRHW2+OIG0BVmBDmwe3EC514oRMvdOKF
TrzQiRc6O+Sg0Q3T6HZ2yMGnG/DpBny6x2/o4E4HM7joBBedjXFw7gacu2HO3U7c0dlUYBbejpHo
tgWnagd3R8eJRDqRSLdys9TtVg/iDvh9w/y+nTdXTfTbiUTM+NsJQPo5g54vT0oAPt88hCc4zBPc
WRf3c3irz6I7QXc8dJXR8Bh6xDwswaS4X+5OZVIqg1kZwxMhlrIycZXBNHhDNZ5Kd84L+jpArXTn
vCByWOnF2aA7le5UulPpTmMKGlPQQNhA2EDYQNg84NyiGSr3akBtQG30ooGw+XSfBcKGmlfLD5g7
mDsD7l50wHfAd+THHez0ojPOHWnpYO5g7mDuKHVD0Tw+HXXwQHW0wCOGz2UN3glJOiFJJyTphD8m
k+7EJp3YpBObmGe6syrvhBudcKOzKu+EEp3YpBNBdCKI/Gn+MH+WP+In6sJQ4DAIHHLCh5bnQ0HB
0PJ8yAEPOeAhBzy0PB9yt0P53yEvO+Rlh7zskJcd8rJDXnbIyw552SEvO+Rlh7zskJcd8rJDq/Kh
VfmQTx0fAl+DNeRch5zrkHMdcq5DznXIuY5XnJlDJi875GXHa77NkZS7HXK343O+zQGW3x3yu0N+
d8jvDvndgd8d6XcDtvAwW/hITxymDR/pksP84QPfPPDNA9888M0D3zzSN4dZxwdOeuCkBzliE5IP
Vu4D3zxO35yaOfDNA988WMIPXPLAJQ9c8sAlD0pXm/N8sHXP5OfjdNLdpwN+B3w64IEDHjjgcTrg
jnXrjE8BvP1uZ8QKvSgAs99NazLwuwO/O/C7A7878LsDvztOv2tj1OmF/W6nO/a7nX4V+hVIQtCL
YAoC8Pa73WcxqgH4AHwAPgAfgA/AB1ADhAGw4BYVYBVgFWAVYJVRreCp4LG/HL4OwCrAKsAqwCrA
KsDscoZhgLBx5cZXDYQNhA2EDYQNhI0Rw1ja7NiK2GDYNuAdx6nm1m4rtdXTOmhFs4JYL6wOHTwW
7I4SDQR7+DogtPgNXxmoFr/uMfRNwezZ8fAOMPtevvJAdwaYz4anm14MbMKgO4Phxa/hAgcucOAC
x7kGHx6EP561v8gP9zv0f9VH04fPzsNDH1/Vx9f08XV9fEMf39THtzgTLRaS/YX2s8OOvr/4Nv/f
9f939PGP+viuPr6nj+/r45845UFj0hc/0McPOTzr/x/p48f6+AnfLvr/n/Xxvj5+qo8P9PEzfbzU
x885c6Wx6Ytf8P+u/z/k/0IjR/cjffySw5VGjvev9PGxPn6tj0/08Uofn+rjN/p4rY83+vhMH5/r
47f6+J0+fq+PP+jjX/SRDvho3Gk8aEw05rfO4HKlN670xpXeuNIbV3rjSm9c6Y0rvXGlN670xpXe
uNIbV3rjSm9c6Y0rvfHXTW+8ky95vPjKH8EtoFxpbDR2GoVG0Kg0GjPQaQy+6jRGfiUn83Rkd4Ph
y4KMVN87jjCOO+O4zzTAvIN5B3M6fGr2BTX7jq8QpvAFgyO+Mv3aGw16sdOvAvh864jaf0Htv+Mr
pMEqFiBM2i0XAaTSX1DpL6j0F1T6O84CIVqXSnQ0fGVfkLkIY+YW1eC5V6UX1ZgZhMLkVsbQs1zp
Ra55KR14/IabJrUSxQSPI0xucK9gfCq98Ox4UoIre3g9mIGIegwrg1ARWo9qdYPhre4gsxz03SMf
/op+VfcLwW6MaqWDHkwPXaVflX5VxKb5LDro0ah00N2p6GAFagWqe1GBamC+RUMvGggbCBsIGwgb
I98A1gDWANYA1gDWANYA1gDWANYB1gHWwdPB08HTwdPB08HTwdPB08HTwdPB08HTwdPBM8AzwDPA
M8AzkPmG0HrEBgiH59RHgDqAOhBRD+9Aej3OhBOOHDIQOBoCf/M5Gw0NwQ0xz5m5Ie3NX+iaN13x
ltfTUNy+yo/QjYbO5+TdFLbcvp6Hcypvil9uil9u3+JbjeftH/TxbX0oSLkpSLkpSLkpSLl9nzOR
1BSIG2FLZx46tifl4qb45fZDfShsuSlsuf1EH//MKcQgKUE3xS+3n3I4B1OBzE2BzO0l3+bQ/lwf
v9DHh/pQkHL7pT4UktwUktwUktwUktxecTlmpjNXKaq3T/k/J0lhy01hy01hy+0zfpQTpPjlpvjl
pvjlpvjlpvjlpvjlRvxyI365Eb/ciF9umRw4GguNlcZGY6dRaASNSqPR6DQSMAHBjYDglgHB0QDP
Dp6daR8Y4uGzUL+B8AyfDuYdzI4Vhq+MTg26vNOLnV7s9GKnFztuwMo/uFcxQm7qoGEwYoWeFqAW
8BRgFEbeofNgnIuv7Au6F4AvbtCLQi8KvSjMRTAXwagGCAOEAcIAYYAw6HsAzIHOQLoHdw96ESAM
EIZ/A8IAYQVhBWEFYQVhBWEFYQVhBWEFYWXoKngqeCp4KngqeCp4GngaeBp4GngaeBp4GngaeBp4
sOQ24aftxvrbiONlbxhqakEcR0CIjSY/vp9S190AagdqByr2Fb97s9UkObCf0pvv0++nGKd52095
7oDHztnA2Yjhkm8Uyd5PLRhgtnanb6ZaxXGEew2ftfIbwFsrrYxWK+vOAKqFNqfg7n7q5Lt7qWvc
deJdp93zJPXurgzAXa70rgzA/RtcwFeqNPIi3+T/vNq39PEPHB7ZyNCbghpBQY39Lgd8lwO+ywHf
5YDv3+O3Dxqawfv3+V9jev8n/tfQ3uV37/K79x/xrabi/mP+32jkgMkl35VAuL/Ptzl8yiTc5YDv
P+NbzctdKYW7HPBdDvguB3yXA77LAd/lgO8fc4Gcll/zfw6tXPJdWYK7sgR3udu73O1d7vauLMH9
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
nFXYqtw0VblpqnLTHGfVSZmkRilpqlLSVKWkqUpJU5WSpiolzXHnREFjspLUHH+rT5WtpipbTVW2
mqpsNVXZaqqy1VRlq6nKVlOVraYqW01Vtpqa2WqUpKYqSU1VkpqqJDVVSWqqktRUJampSlJTlaSm
KklNVZKaqiQ1VUlqqpLUVCWpqUpSU5WkpipJTVWSmqokNZUkNZUkNZUkNZUkNUdjMGgnswppa+rT
aa/JtUL+mkr+mvp0OqxEbkhkU0lkU0lkU0lkU53IhrQ19em0V028jwJ32StVbs+JzpoYUCV/TSV/
TSV/TSV/TSV/TSV/zXE7CpqwkDPaOH/NmkBRJVtNJVtNfTptutG8u+WhXmk2Nz9Ogma2GiWpOQ7T
Hbln5+ZHS/rMX7MCEyl/TVX+mqr8NVX5a6ry19Qbbq5R3YSJMqNN5q9ZYQnN/DVKW1OVtuY4m5LK
xpS/pip/Tc38NUpbU5W2pt6+z52unCojgtjjb1eG9u/ZSrK65I4VZWwVZWwVZWwVZexxi/pF3LFV
3LE1uWOTKVZ0sFV0sFV0sFV0sFV0sDXpYMUCW8UCW8UCW8UCW8UCW8UCW8UCW8UCW8UCW8UCewgl
RRAdbBUdbIUOtkIHW6GDrdDBVuhgK3SwFTrYCh1shQ62QgdboYOt0MFW6GArdLDVdLCQv1aTv8L5
WuF8reZ8heq1QvVaoXqtUL1WqF4rVK/VVK8mdjWfKzSuFRrXejtdSscRJ0wkYtd6ZygQaFST4VV8
rvWOFgk7qncrk+QUsWtNYlfxuVbxudY7ttGxDeFD9Y7b6SkCRqIZWhXna03OV1G9VlG9VlG91jv+
p6P/SZUpztcqztfjsCog8tcq8td6x0gSw0kWWJG/VpG/VpG/VpG/VpG/VpG/Pt85aNaEeEQHe/yt
3hYv7PG3ml0EsVUEsVUEsVUEsVUEsVUEscctjFO5D0KUsVWUscfh7AsZkrhjq7hjj7PZM7IoccdW
ccdWccdWccdWccfWO3HnoJ9yH4RIZI+/GVgHyjJSS7A6+GUr/LIVftkKv2y9n74u813CL1vhl633
09dl6kuIZitEsxWi2WdfWvx2P9B3ZddikDDOVhhnK4yzFcbZ44E+hcxpmVDPVqhnq6lnYZytMM5W
GGcrjLMVxtnjFQ8KtM+OqGmrG2kqH5l6NJOCutaZfDiThmaK0MwM+lUuyoymskzR0x6HNwqZifob
/J3v+iZ/50szIbVMVBS2x9lMYCwTFZftcbhRSKFktGK3PQ6nkLLepLkVqe3z2Zw9J7utSG2rSG1r
ktqKy7aKy7aKy7aKy7aKy7aKy/Z4XCa2/TF/Z67YzF4tg3xkzl4ZpJhrq5hrj1voq/ymX1y2Nbls
t5zcVnHZVnHZ1uSyfWQ+60zem6l6M0Ov7PCRSatlh2KurWKurY8zMW+a1paTygqF7XGEvLXO0Otc
1U5R7cS8G9lu08Y22BY3UltCalshtT1O+QhJqzey1W7odJC2diM/7U4m9Z1aOFXvTn7tHZl3ZE5j
2/jSH5rb4wgv3S0zuXF3hHeq3h15dj/Ht1tmi0oBBtySV+QkbEpy2yT3RcVzvjUl43lS4Wau0CS+
ldWJ77bCd/stHpAU6v/M35n7NFMcJuO5TEvEtzWJb5PmNtltJ+ynMorlXGxKmujvczjZjWVRU9JE
/ydnk+dfpiW+25p8t6K5PS7KBLSysQnTIl1k0kS/x+Gkxn+fv7MlZWxiwK1iwK3JgDslTfSH3JKt
ngl+kyb6Y84mP3YSpidN9Gecza6RsYkTtyYn7pSE6eTs3WC83u6vn6nhmvhfE/9r4n9N/K+J/zXx
vyb+18T/mvhfE/9r4n9N/K+J/zXxvyb+r23i/0Z+GHCkf9yYSzkdD1l4Kll4Kll4ni9uZHLaSN2Y
AwDpeKrT8ZB8p06nb8052cbEy+l4ptPum8VAsJ2X7r4dCXees3OXkx7uCL+TeWtH5h2ZneFtR2bn
OnRmwx3jbH4gmQh3JEwrn5NNMcmmXGu3XrJvJdmUa5yMc8lHmGRTX+NsMkfJ7pXEpyqJT1USn6ok
PnVOsql/4U4GHQgXcak5wctsPhvzvDlzX2Wmq8zmk7yDSTaF3TcLn1InAeEP83BODOdMeZX5fd7h
bLKYZTYfjQRK4lPnzHQlu1cSnzpj7jlRU+6emrl7NiYiM04WcsHMfZVJfJKiKvk/Zfczdp9zlY1p
iZL41EziszE7mRkJOj6j4/k67Z1zjjmpQZPRMDNmaZCYYXbb0OmOunS4yOyjOwyC9tEd7soNFsUN
YjPb6iCnkEnfNkQesMiZ2tBEoPbRAz7SDS5NUxvaVgfZhTbk2XmpGQ13nrNzsYlAd5p84GVMz2b+
zx3h7aOHTyH8jvCmeTP/p4nd7KMH3n9A9GgiUMfKOVlZ8vP2/KSbDsqpy5I7mZK8J7/ZT4YeWe+S
n7cTEA83bm6HIjLOycuCH8+JypJ7unLjVlJmyYyX3K/1udE+D6zp+mua/XPXZKRZMhIblfiiUYXB
zGHgBlyo2T7PT9ao3Ujf9zx2K+ZuZOdrpOFrZNxrJNBrJNBrZM5rpMx7tlEFFY2cd430do1sdY28
co0scY00b40Ubo10ZY10ZY1EYo1EYo0MYo30X420XI3sW43sW41EWo20WW0+Ra08pyJqRVSFLPfn
Cx6P9Wl9+gfNshoMww3e38aGuMZOt8betsY2tcaus8aus8Z2s8Z2s8Z2s8bescYOpMYOpMauosYm
ocYmocbuoMbuoMbuoMZWn8bmnsY+nsZum8bOmcaWlcaWlcYGlcbekMZH7Y2vwhsfgDc+5G58wd34
7LrxkXXjC+gGnNxAkRt4cAMPbiC7Ddy2gdQ2kNrnP7O3b+liT328UdMHWnzP6chzQXc9t5saqlc0
q/HAkmPnYDLXKh1XszWeBxhNHZ+bPVtj5AOfDTcNbqRjfu4smVenoZ6PZDeNNILnN+btqMTzn3py
f2ENDb1uPoJeN9S5oc4NQ2kYSrMaY3kdi+k8MNXmnsNPg8m3wbHbINJtkOQ2+GIbpKoNytMG02mD
s7RB4tkg8WzQax4v9TW8QkPtccp3YQ4FFc0h6k5XQsfYIF9s8CM2qBYbRIkNTsQGl2GDtrDX02Bz
0II/8OxBiASPt68UeE4gYXBxIE8gxnkXVnne7iOfN8Jzm6R9QWbX4JxrcMw1yOUaO4kbO4kbO4cb
m4IbO3415m3zcziiMe8wJp43uHvQGAOR3Qbj90yQLViNHVWNHVONfVCNTTTPxqGKdmLtxjaJ4xXc
FYwE2XJ8Sd/4LL7x+Xrjk/LjdoaW8HM4Uj0gIU/lFZXBpvKuylBXeVdlqFMTekRpLKE1Vo0aS0CN
ZZ2+nMI3hsO0zjtNx7JGA4hvYOwNnLwBkDdg7wa+fTyHMW9walDlwZMHMnuYHwg2eNegyoNaWMJ8
MrBrAy5tgJrHKKiRsmUPPrdSQ8cKiiTdeL5GCv7ca8EQrrc/i5ee5MEI96DuU7bzIApvNUe4ZzkT
NgrQogrC1fNdBS9xFO4UHhQmCjOFhcJKYaPgBxYKQaFSaBQ6hZEFecijgDyBPIE8gTyBPIE8gTyB
PIE8gTyBPIE8gTyBPIE8FXkq8lTkqchTkaciT0WeijwVeSryVOSpyFORpyJPRZ6KPA15GvI05GnI
06bXzudwgTAXCHOBMBcIc4EwFwhzgTAXCHOBMBcIc4EwFwhzgTAXCHOBMBcI8/8iCHMlNPm7Tmjy
9JXPuxlta2hbQ9sa2tbQtoa2adx5tnZbY0PbGtrW0LaOtnW0raNtHW3raH9Hno48HXk68nTk6cjT
0f6OPB15OvJ05BnIM5BnIM9AnoE8A3kG8gzkGcgzkGcgz0CegTwKXAtR7nPTVdowLfaWY/dxceeU
W7W+9n1rl3L87SjH3+FQ/WZ6gf/HHMjfrNP7U+X95NWnbx3l5/9+/tmrtz781auPP37/2STe/fDD
n73/6s0MLP53Mv8ttD7a8v5/vaGx27NgX0Y7ngIdB997++MPXn3yyT/+9JMvJhb4n972Z9b8k8/7
Ri/JU794+9N33ys///nzQy8l+n/VGK/OfUN889+IPr7781dvf/wHHN2bpQ9/TNo3r8V/59E/evXz
V5++evH0L8bV/CUS/Z//++0PP3j119Oz45a33nv184+eL/rCfOufKcyX5Hr/puOOP6w9f2blP371
0Ycff/p6m8Dv/JIa4v9hA/pim+6/Mc98x5fTen9InjeyAX/n6T979dtP3iSH9Xvy/G/d1d/PmPt7
DfD/6oj7JzfDNd5+IQ3334xun7/hjRlrU5ovpemOq/7pnY8//PUnx5M/fX6EnvfWh+/89NW7n/7T
2x+9/8mxLvDWux+/evvT9z/4yVvP7fDWB2//6v2f6M/P7z0K7374waevfvPpJ2+989vn87949U8f
fvTqg7d+/HzXZ8/a8tanH/7s1Qfv/9fzTR9+8PzHR2/9/NWPP/0CB+w3oGJ/iyP///8S0hvQkF+c
B3m5BvqvH7/68fu/efWjf32u+j8/3/5sXH/tTviiHdbfXu/9/kL0f98Jf9O6+aevwX6Bw+KfKczf
x1D2Z1b+jQpg/4Re/P8+28Kr3/zx8e9PapaP//bHxC9CDf5EA3PXvMEyvujw125QX+DAfurML+Rf
3jqG+udqfv7100fpf9L3fOVNcDFvPf3jtt4e83TbHsuyPxeWt27zNN/nx325Pd22t/7mQui/x074
mw5Srr7+3b7el3nf1vvy9Hhsj3VeX/b1fb8M7k3ohMvg/o76+nlcfZqe9un29Nie1v3+sq+n22Vw
b0InXAb39zS4Pnfz/b7NT+u27vv8O9HMfL8M7k3ohMvg/o76+rZu+/3xeB5Jl+f+Xn6nr5fHZXBv
Qif8TRvcH1l41FmdzHMfffbpl/zlxB+X6n8LPV+a/rua/jQ9tvu27fNjv90fy7y9VPV1usabN6IX
Lg//9wQQLk+39ek+32/btO1P08u+3ua3/vrrQK9v5foy8D+vz691+UtJ/ujKwTXS/qkNen9uzPt0
v+1P92m6rev8skX35Qpu3oheuIKbv6eZ82O7rY+nbXru4vlpv7/s7OdQ9jK5N6IXLpP7O+rseX+s
j2latn3Zt+fA4WVf/7W/+rg64L+D5x/Ts6kty7w/Pa2PbX/ZAX/wK4Br/PrzVPpvdfi6XNxrM7q/
aQ/3h+jW7hBZQt5bbtCt3aDIhAz0OLLnxZ1rKuRhSUC5w0a2w0Z2h3zzDuHjDV7OO2xtO2RmZIMu
0MCX7TyVZGYwoBd4Swu8pYcYPlUotHyF35V37We9kitz5679xV13njNxxIWZUwtHXHDTbRzZOLJz
hEIyh5LS+jjlWgRHgiO0szsu33XnOXfedeeuO/W6U687b4d2/SjcKTwoTBRmCguFlcJGwQ8sFIJC
pdAodAojC0kPOkMPClt7gTe7wJtd4M0+CsjTkKchT+c5ned0ntN5Tuc5ned0ntP9HOrVqVenXp16
derVqVenXoN6DeQZyDOQZyDPQJ6BPAN50poq3V1R44qKVvS5oqIVFa1oZkU3KgpQ0Y2KtlQspaIt
FWWraGZF2Sp0txW62wrdbWVIqdDdwtZ+FKhFIE8gTyBPIE8gTyBPIE8gT0WeijzNBQRrCNYQrCFY
Q7CGPA15GvI05GnI05CnIU9Dno48HTE6YnTE6IjREaMjRqd9OvJ05OnI05GnI09Hno48HXkG8gw3
i8f5QgGWx+zlG718o5fvtOGdNryhYzd0DCL3Y1y1m9hwLoyHg9FvMOQOxrphp8AgPBjrup+MJ0rV
Wk+f0hkGO37HI8Dnb8cxDMbowdA8GGSHnVCjgGEH9hzYc/D0wJ4Dew7sObDnwJ6D8SUYXwoPLDyw
8MDCAwsPLDyw8MDCAz2yu1/trTvd4HZMrbqhVXdM4k5X3bGNOyZxR3XuyHxH5vvpU60oxYEFheEC
7wouDhx5RxcHKlj9HI4UCEuHCUsbBZ+iEQZPHn7XjSejwYMjhed0LKFZ87imcVflyZW6d+TploeW
HzT44IGDxjyf7ALBR0dXO7raCY86+tzR3o72drQ3G5PURYX8RIVsRIWUQ4W8QoXEQIXEQM961Ynt
OmbcMeOOGXfMuGPGHTPuxC6dQGcQeA1ishRjR4wdMfZTjMoDKw+sPLDxwMYDGw9sPLDxwMYDG3Fb
o4IepxoVbFSwUcFGBRvyNORpyNORpyNPR56OPB15utuZkLfSg5UerPRgowcbPWhtafRgowcboWrj
yQ2NamhUQ6MaGtXQqIZGNeRpyNOQpyNPR55u7UWejjwdebKmpAM5CpXCnUKj8MhCuhNSYhQSexRS
hhQyahwFP3lQ4KXVhTkL4Ys5Uv1A3p4ugBwkhQwfhcwchcwchQQhx5GgwMXhCnJXUItKlStHwk+m
Fg0xAgkLzdKoReMVwangyY3qNG4PjhSEbzRCo6HC9bIYVLD5FdxVqHJD+ObbfcoFtyH1ahaVRmi8
tHNNp6admnZq0V0v/Jcnq50B1rFCxSlUj8a4v8okquIiHXyYKLt75McPBheHPSz+ohOpBK8IHHSz
uyHisXMxw3nDp2SL3VHR++nIGl7PLjvV5o5G3dGf++luKm/3NcErgnlj5a6gWcIX+xVc3LjGojaf
ctBpn2t0wHADTtPYRFBBh5huuvDFNHjwiqDpgv4K+3efMoKgtxcEKwhWEKwwyBRGicKQUhgTCsIX
rLtgVgW7KIx1z4X21wfW/7aJfP/oN5p/0qckF/h1gV8X+HWBXxf4dYFfF/h1gV8X+HWBXxf4dYFf
F/h1gV8X+HWBXxf49aWCX6+d6+1/goVuX/lcoI5kIws56hWGyEKTlbPJgnYJ2iVol6BdgnYJ2iVo
l6BdgnbJfiooWUHJCopYGN8LplIw5oJhFAyjMAQU7Lxg5wWrLth5wfILdl7Q7IKFFGymYE4FcyoM
voWhtjDUFgbWwsBaGEYLw2jBdAumUjCngjkVzKkwXhRGkMLQVhjsCmNTYbQqjESFsangjwuhXiHU
K4R6hVCvYDyFUK8Q6hVCvUKoVwj1CqFeIdQrhHqByQUmF5hcYHKByQUmF5hcYHJkmT8KhUJQqBQa
hU5hZCFVPVD1QNUDVQ9UPVD1QNUDVQ9UPVD1QNUDVQ9UnfTeRwF5Ankq8lTkqchTkaciT0WeijwV
eSryVOSpyFORpyJPRZ6KPBV5GvI05GnI05CnIU9DnoY8DXka8jTkacjTkKchT0OehjwNeTrydOTp
yNORpyNPR56OPB15OvJ05OnI05GnI09Hno48HXkG8gzkGchjVR/IM5AnJ4QTVjBhBRNWMGEFE1Yw
YQWkoj8KG4WdQqEQFCqFRqFTGFlIK5iwggkrmLCCCSuYsIIJK5iwggkrmLCCCSuYsIIJK5iwggkr
mLCCCSuYsIIJK5iwggkrmLCCCSuYsIIJK5iwggkrmLCCCSuYsIIJK5iwggkrmLCCCSuYsIIJK5iw
ggkrmLCCCSuYsIIJK5iwggkrmLCCCSuYsIIJK5iwggkrmLCCCSuYsIIJK5iwggkrmLCCCSuYsIIJ
K5iwggkrmLCCCSuYsIIJK5iwggkrmLCC6bSCgTwDeQbyDOQZyDOQZyDPYCoeTLyDiXcw8Q4m3sHE
OwACAiAgAALCyzUAAQEQEAABARDg1bAACPASU0WeijwVeSryVCMdyFORpyJPRZ6KPBV5qqNtJufB
nDyYkwdz8mBOHszJA4wgwAgCjCDACAKMIMAIAowgwAgCjMCLchWMoCJPRZ6KPBV5KvJUoyHIU5Gn
Io9R3Yo8ZyP0RIjz4pWLVy5euXjF3lcquFLBFRtcscH1fHK22EqLrbTYygiwMgKsjAArI8DKCLAy
8q+M/Csj/8qAvzKGr4zhK2P4yhi+MoavjOErCrCiACsKsKIAKx5kxYOseJAVD7LSuSuduzKSrIwk
KyPJykiyMiKtjEgrI9KKbqzoxopurOjGim6s6MaKbqzoxopurOjGyoi9MmKvjNgrI/bKiL0yYq+M
ves5d7Wo3Q3umvLAztTXNQ0u7m4xZA5atfOubh3zc6jpWXCDf357Z0Xo+dVS4wHc0zDz51erFs+P
1ZGj8PlzBsPXs1ZrEB6siz4Pzqrgs56rgp21necm1WjcWAB8bhzpxmAt4dmCND4PVguf21aKPYDs
O13Q+ATgePKe12gMfzYu6cYgbB4Mws8Xq6bH2/VAgsDjOZ9f/Nwm8iCdVZPKVKjh37uPsCj33D6y
pkrI92y2WYslnVRnMfZZQiltZ+m1g013gIDOpw2DmL+vLzruczGe1VK2czzwc3k6EVpjHBtA5Efd
1SzAEB0k8fmIHOJg4vx8r8zheFfL6mggOjrlnsI3v3TlyD01Knipnvwsqi6uTE+edSzFaDluHLXg
9m49rCib2vApu7IRWQ1iyGfBUmlBEjsL2p1wZbBeVQnIa5x9oTDjaFXUZlBTacJRi0FfFC7GHFIz
mQU8a2N2EzOXZrUBW3xWHj3wqPuDwpRaJ+V/tl+JerT8I4/IXwxg/Q4ccZzaMJn6xXyudAFAFwB0
AUAXAHQBQBcAdAFAFwB0AUAXAHQBQBcAdAFAFwB0AUAXAHQBQG8MAPRlfRz0OhmuL8bjL54W++KC
/FMbdNmXp2nfttv9cb/N28tceLfp6WJffRM64e+Vmm6wt6qz02Ew1TxCEEeBJWM1zSuefW16343b
54yfGohb5aPWZ1eX8UrPOLWzr+xwYHP6tgytgMifvalcY2Mn58ARVnx/4+P859s1wRhsq+kg0Y0Q
/4g414wdVZ0OrNaYtz+7YVVn8F16Y2/nYO5aCS8Ge686CFcnyB7s3BlPBGT7eXtWEIC+s2upMW1r
7DA82mfJixX9Hw11y7sEcLSawd8RPxFDKCwYbL1p7APs7BptbKpsbHB9floj3KlEJxlnsIPuOapQ
iw2WWI4WW2jMkTFWxvE158BHy2+8IvLJ6ovB5oXn0CSjrqcMpCpAbWcG1ZikPd8l3KezSaSzW62z
vbbyKXVlO2u3aoE+DD6uHuxLPELYTszXkPCJUwNLUU2ZnB/hsvtipYIbM4SNoP/GhOeW+qP26UBC
nenfYSk9W0w1PeZUg1YlSlY3DTDBI94teXFloiKzao62Uf5jprHQLCUbM+cMj5wYHP2FVSo4bvFi
WrJmv0vCwf61jsnUmkHt0QiBVTIFqkS3OSawr+qISjH8vJiNfn0++1323lHRzqfvx/ykZvMONEoD
2nPdZWgdq6yOpGm6ASjT2KQ2wGs6+HUDDz0CeiYzOZ+E7ODowYF9oX4dq9TAeAxEkYp9zkJvnGIy
E55peBLLcKrWONrZ1zQaakV/0KgcjYEmG5vvOkDk85ML42Fhkj88mx0Y2kq9GISF4AzWEgb8Do2t
8kcXNIa4J9rwCaMeDCAFFWWUSBus6SYqi1JHV8750pzMsEtxsOl9sFfuGLUGc85H2qCe83xcde+A
aBVzaPs50c3OZdfSAC9+buS0dza0NxC3w97v2aqBGGkpT0w12cV5jH70l6z7mOjuKU8wd80Blh1b
7cWEOcARsjo9O26wVNNqylwZexsLzB1ooOP+jtvv3LXTmB4TKs7lTmvs2U2pLVjcMVzsaDhT+jTP
JxCToHkhKTiUvzHszLS8B707GtXT4gxDqFUHHwTUCh5RQIuWcwyX/2rsPK2VVsXeG4sufT/lSc1k
i+Wz5GGQCCXJmTzQf4flpNtNPOHIGsYILnZowkaI5aEJRdJ6Q2Pjz2CH5iAwG2zVHGzVbC90PmV2
pzSQoAeRTEvcuRpZiBdu65G9rGsGHCLPL5IeVnxcR+sGa3XHCNlpqI6za2AfNyAPY4uWecrutvKn
YrPY39ji3fhOokG+0OCk6PaeHQV4ypWwxs7czl2dbzIqH4I0tuQfvQOA2A1+jayy7KuzXtXA3I8Y
CRdQQFGzTwdjAus6z5Y4aHkFS4fFoYfZuY8cHI4B/4lTd9pQDvF+4muJwbEpvuGJOgsGRyg76EF8
U/GRRx4JHH3q4RMYE2wOAx6fym61wdrGEc8XIocNmQ1jgYJlQMWXN4NN340Ng4cRTZgnHq1gTTnW
rdm5A4B+MIo+Vydj7JVYghX9wWpQq4S72ODYX2B5AyfFTKE4SCbMUO908PQGC8zzvRlQtRwPx3o6
zXCBGCDo04JCFuY7tuVgtEmf0olk2KN92HuhK7GLgR6mtjRcG3wLR+iIoWVXstO8Q2XSWZEdEB4N
zwLYpH8EHo7QKrVgcEjBPHwxlxnTGas3R03GrxG10pWN6UkGFXRl52Ojw4iI4hq+IMeWBWc3iKOg
BanI8/xktWrn24XBdvvDkS0Y7IPwslKLkro6iG0KeHHHeyY+6zk1yx6DILCWF+7G01vCjOogGTeR
o+gDh9jwniN7cLAHuWMFx0jCjKPYTj1YbQwgTJeC2Pi09x0dmxEM9xeEPcEYnrr6OCdi2ZVPL+yr
YYMTurGyFAEOLp87GKg7FEiduxrUYMcDO2PdQnWsURXX1tFwsIKGWw+OZN1hPOhEuYd3wNByLlPO
RaD0eoU44UGw9EDCIxJ+vZ9hXgDQBQBdANAFAF0A0AUAXQDQBQBdANAFAF0A0AUAXQDQBQBdANAF
AF0A0GsHgF77Z5jXh2C/+yHYut4f2z7d5/t9X/f98fJDsPl+ZWb+4vMIz+t2v8+36bFs8/z0O3mE
l8f1OeSbYAV/q59DXv395xnd3/Tnr/9tzpyPX3304cefvt48PX7nl5Ot548xchyR+sS8bmIyALA4
CBwLkV8CwU/M1aFEOGJlpiuKX8ftRYhMrNMdYHVCSQJ9zf0aIXutzJoGU5ElMb4Ot30zLFVydjo8
WWLv/3G75+FM2rvxICb2DWBIhc6CRIcGu1VmesRwnYnHAAppcUa0BsUGc/7GJp3c6FTP2WAzSLel
8LkaN504oDc6GQsrRMYVvD6BYDj7O+lmjruY8hkeHeD1AyC4ARDkzNM4++0UNZhm5ELUA8RhpgcH
k65Of63AN40VO2iwB7cfF09AGCzh5IYpIuzOFukGof4g9c8gD8OAgKWRKKpNL3aNzcwuZgTzPrIB
BkFXDhZIvH0s9bDlkcFe6T69mJkDA0mxK4udR/MCa3aWTIINiZUl0kE3edad1gR9x9EagRVsoEhA
M4O5aPHqzp1WZWo0WC1I3MSIzAOrhFphsNu0sdTRyQLR2df/bAWD5ZCc4cPE0udzx9zwxAy0rrNj
zqtxwZQvMJDswXYuiDabjPcqsq8tAcEOZrSeaznCIDpLpJ3VuKOhglesIMsPClYJd4EnnExTsxbb
ix5kOM0NiaTLOPYGAjQkRIgmNPhkBjt/G2kTBhwdA4qGA066gTUD4OZm1ce5EpCjMRbXrRvlhaiW
kOXPwnhYXHcuLl6hD6bWYCL5ZFIidLIdHYIxE85O2V7sZwRHLqyDZtN5TZFkCwfy9WA8pH0CHCf1
B+1t6zm17qwSVbbKdm9AZtE9YU3SU7RyyuydyOGPGwqmt3PNjWbBE3VDlowSVn7b8qANE45kqezA
cQAaKjhFwfCrv7roNC9QSAdT6z7l1Z0OmI7SFuCSRLVsaDiOygpQ9VgH1tNJFNBJ6XPALoMn3xkY
C4jVhicCAel8G9GAigYoW+ImpDLoMDMcg6d30dK5KRhj5kDDjxXNwZBiBPbOA/Gwg6Wpc3mYtYrE
9GGmGizHdsaxCqZ2hE9un4LS2mneURvMs3vxNWhDkMqBH2ys0HsNeHitYmfNw0svjJCF9d1cP+DL
nk46mv44t8YHe8C95J9r9u3EiJut0qMEH6PkShK5GgbBwHGKT3wa3yKkwS4sTpM7YpAi8AhOIAoI
3+5PWLCChqfuDhj8KcNAw92DjrUgChjGJd07E+Oqv05YaDEPy7RGYTu2IsYOHdaADemwlAUPSzcV
vg+QUddxbnJXOFfrCdM3PGzhg4zwqF5YvirUnRXowHen+1vPaDk40ggYMgKBeKeNcxHFHzekN+ez
iYpv6tP5nEF8WIgG0xym85uGjAZZg+lQHjVyznQ+WOkk2hqcOvpi5YHWBKrcCTMaMP1g837z5yCE
PV5mrq7gxhxkoIfBYt4T9eITjUpQmm6ivXATrFp5vSf8Jc0Nk3kAr9tgmS5lD04n/YIHvRSevI0d
Apa2nN/6OAyrfByj29t2fqDWWJDwNCdBcLhrOiNktTdn3fqQh6X6RMP3F9WBX8IfCxZbLkFX5xuC
4S/e/JUVdhp8VWCLS7y+MWWAA2fATHW42sZHhztTIa9VEFF7VE9vzkp241u6Q8cIgIPAPi8eLOrA
CTa28/OUwrJBOmhSwY7lxdeQDDvN3pwP1HJtEqqidj8nmOFPGfgKpOKgg+Ct27HybUR6T1bNj9jG
q0RYU2dGFlSwEmNnUArbxnEX62rDTBGYTIaXg+YlKD1e4Riy4uPMhVJ5Mr4pYD4prLWrMQ8DKTjx
HceBGOdnLp657MR+LEWrTyvfUDZysA4oPjpZuY5aoOGddm5MT/JzmYVvdKCE6o+TIiZjtnEuCpoq
pPnb2ZWQz4wu/hTGn4RyTb29dkrWCwC6AKALALoAoAsAugCgCwC6AKALALoAoAsAugCgCwC6AKAL
ALoAoAsAer0A0PUt8JdNdfp0u8/TdJ/X6fHc8PvLr+LW6foU9U3ohL9XZs7ngSUHEDaf9XZ64cIO
vNxasZ6bKYv3CA5iAEKjwthitoMMaSoPZLffMUfb2fvonegmFWCSZZYCb/9KeRwEkiegIXNfTsTM
E5bG3LwRDTqcOzErhuXufcPeXWe/wxZ5o1gDBvDc5kKmotZPhoacks9s2phxJZWLveHpztvLWdPi
WMKbfpjRm9xiuL8MBQfeIZjvVAB2grcKHFGJTgesCd0BA32ajrUxqyXJyqFI3hKKIzvnVt6lZ2wH
/NCw2GArVTCnbuyvLZCnD7ePd5R22pCAwTsdc9sNex/7fO7ODPcyuIT3QiXch/BjPzeOJ3FFeRFH
+aXG55nd2PVnIPRgb9bTuTcrwfx6kn8kwH5jJx+5BI5JMXNP71YP5rAV4oqGox/Aztk7D+6amaiW
k+khZ9CWkORMh4EwZahs8usuNMJd7xXrGL5DWcPgQJ0O3rwXKoOcmUko4MPRBV58IdIbbHjqsMwP
LCW3cr7gbMhJDcJ3MPzuGRDPOZRtRR7YRDoT58o2Mg+M3vYXRlcA4Suz9cYOe2PLlXnKqbTBWDcx
L2CDfmPikxsTyZ8xnHBiOwkVgupULwowla7mO3F0yuJUg9fhnHebW4Xlj+IZq9uQ4dR7lAebyw3F
pO1ML1BH7CIXTdYzM0dl8PQqTI7Y5cWUYWY+yIQl4b75nGQFuxi919B5C9LQyoscG2SwcGCfuDqs
EoN9jc21ILXGILXh0TszkwiefLaGESH4BgabaDvjWFo322H7C2xwGI7wqhlYbgdHMl1BwByQA9GA
eIBsNL2fe0NT2R6nLecA4sU7/Htn/j5Qtv70Am/x7vlCLQDKjAh11h08IlWnqfA00Ai5URHDGoZQ
8HoDFCsdGXkvOtwGx4DPRD5nSTuNOcAlWHU9wgMf2ZmxNhyi9x8/sAJjMmzr98hmOplsFlJRNtSv
gUMeow3Lr17/KgzL557pHXAGKM/zuPRxJAlr8WISygpCY2mjArMMgBcvEHcv2Ww0+IKo3qg9U6A1
qtdzoaHySk11ZLUx890ZrLxUx8iWEdqGod1eLOuYeaIAwe3EEitNB3OAI6KcSt/O5Q+DVwNyglTj
+xlQDcM1IEJeYz2RUjMwPRHFUYvB6sDJ7eSowGrjVTzHtAD1SbpQzuX77IKdLnh6MWqRB6gSORh5
y7HOq2asYHZS2B4eltYIFpWyxSzGDU3YzlFisPjirzUqgGR3XMfwnovjbLnu/cW6OQHn+dUH6+Zh
WMw4LVBM5bONyubywrpeDin3F+l2zNZja/KQy/pyJxKuIDnBxQ1sOViAyEkNhC5jOgmcdHuthHOw
rVTC+GP51b4JOzWO3fn45KQHgM0oiECqEzjhHYZHfoLAcxm30iwLvbMiKkx7lWDbAPLwIiDUCMUc
PzBqJNTJUHAMF6xFmkSt8pnNgMErP30ZDHqNerHSd1gloX43VxBDk7nuBuOz2d06tmNCBXtqW0Gz
pUA0kksb41zRcCRTPCYs2T6VJaQgqqwW3rxN0CPlepPJtFiCbGSyPBBFGqF5YrjxJQ8zKavNudCD
uylm6/HSs1ep8JXdE3CceHimWZguMU02LV8n6q5EDjlVfGLIXV8sCxqWhxhmwGTgxVb7ggJU7hWN
nGXv5zr+STmDs/Nih91odef6ExovPXu5nHl3EABXMsB1eFPSkTGKHqGIM4E5/RgKUFgUsAMK0n1l
f8E1NaCLO1ZCcSUV7gcv0JhppkKlk3ftJwFPn147M+cFAF0A0AUAXQDQBQBdANAFAF0A0AUAXQDQ
BQBdANAFAF0A0AUAXQDQBQC9XgDoSpB+JUj/X32wtj+mp21alnl/elof2+98sHbfrwTpfzo54fa0
Lst9ud/n5/b8HS7Kbbm+wnwD+uDv8iPM21c+9y2eaNpngukmqlpfAGaNMJwArXprBlO9RlKR5o0Y
wNjDfszIIvBGgIFlTBovEmetTON2wlVv9Ca1hXeyG0bq/nqfDCTD+x2oRQGWCLa3FBjuwwg3POK5
La6cO7W9hdP7U5ysyXmlkhaggRmA5PV2AkvhTQ1evmB6mk8mD0/1trgJP8/CSGMHTXuBTA+jGoSr
3uA2mOZ2J8SApj3hXoCK6uWL9cTFDUg735GTEeVzns49Ixl93845RKII86laHVzTAOcA4zm3QxLA
DnpwGPlASRpc7Lnh5UZ+j9uZICjxCSCitp/TygDg9MJIJ7tahV59kIot2PvWSNtlfvQBKbt3TjW6
IJwMzeTuTAsKE1ZN2gYTzd5exPWuDhB1I33BIPquJDrz6lAD5W2kSwpmt90b9wDePLd2HhWTLTi/
WcDKPwzOkfioA71nf/k5G3wX7ezBYhyIKieQfH+RTsHZcshxUdhUVUkCE+Qla0ySzNEx6J0GxuNN
r175MfA/zKTBrvDmDABs4naekMR4ACEOeYzNeHMW2QaaZ4GdSckDfBSAYdBilZ1BhkUbiJcT7jlR
TNYdi6vMpA+NcpY2Vn4G4MEwTz+bFk3x0Z0HzLkOvPKDWfniPEUWu6PFvN7ofu+MJCCdhcE8QFU9
+avOtgSuUOEHGKY7cDYqpsJegCrebcpLnVHQe9Y64FOQwrGQGuXMmwQeWZy1CWXr4C7DYx3Qchim
rbQhk2PnlnSOlIIrCdrZPB7OUhLezU1Sx+E9ziS3aQynBbaEAgiRmrDgsueTsKJ6mRomjWYAGKxo
8EAnHyte8WMgOq3JBQbGtIvB4vaN1TOS13VWRA9zgE0izHdBprucrNvQoAE51K8zIkGpYaS8oy0e
coOFrKBPg68JOobvLw684a6Tf9IgenEmSTiCijXBibxYRcmsOwbeAEWO/cvs8vMSYg5E84s94OD9
TltauaYAVDRwDn8BMSAmal6b8pZbjy18ATGA2UxUEv6swAbCmnZ1dAFMm61Rzy2lHfjHD2w0wrDH
hzFpQOPgBErB4klGF2Teq4QZz6ZkOLwTXTh1Z4URqAA15SqlN4c6Bd/MCDCfSRTt8Qv5u5pznLKc
UgiWOjiicehznRDXf37DQi5QydNJXTWIww+vB/NJdy6sTrgLPJ+rVRvtzK7VhlkdDWUHBHLWyF3W
nV+IPJ+nDbI8WFiWOUctALMBQB58HWPKCK/5e92gsR/2ZFmx16PB80icwgehWneuOVbGct0A3p4e
55DboeYYwKKD3G7DySH5UsCbcMPyOA1mgP/BeJNi3F4A0iwKpVXC0dH8pcBAkW7stXfsx7h6RE24
gMJonIa/Ig8JuMYLHo8wWZl93EqEhjzNGLwzIDFcFLNyNerljHmVb0Y6p6BXKmzHDgecpgGB06CZ
h4oFlkpGQS9x5JGNaAe6lcM3kXzV+9/PxGvEEhUSpMooUd3L7Bx3OsT86uf2giOIGaKRV8c2leXl
gj6frAKohIluDPemasWZbakBdQ8+rmleMe6sp/Ht0mD4Ckh1jEN3A9IE5NV+EFqtyhdPxZxpfMhT
vMJfcnDIMXxCN+5nHqecKj4xK+FrgkMwVuE6g17j64+Kx/f8vTq1F+qXVrmeBDWeDzbGqLTB7fws
xWJU1qaqc9+ZgQf/Fc7kBjtBY7+5v+kzZU1u3q9YCi3fn15w5ZksCBusTI6amehQpMG4Ovj4aPAB
V+drJpOidOf6Jjdp4AJGf+2UiBcAdAFAFwB0AUAXAHQBQBcAdAFAFwB0AUAXAHQBQBcAdAFAFwB0
AUAXAPR6AaDX/hHm72dk/d2/fy/P61vvvfr5R89X/eMnn73zhX2j+ZdI9AYmnj12Ot9Ojt00duLG
Y9sv+xyLqb3RczO9dlKABF+2dwLaREsCXwN3cCdkOsyWHTE5TWDwGdNJWW5kJrylhSlJ8H1+MHfz
FpKBRXt/Yk6R2Mj5bNreUGz3WsGXbALNRjEBssGu7nHJL+2k7gi2E/rj8BxPvDuSQP2o8g42wkge
TsbArqLCNjeTyVbIbc/NTeCK3rbQ+Ky6MgtLnKGew75F9fQ5g6j6Ygh1ghbI/cMhClBhqkRlht6I
veGjP9y0N9CBsThy8/bhnD4baXyBsg7C++Ydync2Bdg/Phjtb7Rz0O/sIDhJ3nda1R/PQ+AeBOrN
21HZAN7Q8OQc996ohY3ST+y1ocrD6T3mM9WBd53nlgQQp6PKG1t+PNVyLMc+0IGz8HzTu5i7ee3Z
ItE8N3F0R0NlUOcJo9H1J/bajBd05BhRM9DNhohhxIBauMGdHiZMVuCI3cMOmJjDGG/yTQTDO+BM
Ps4eoiNCNvyCyVRvXDL0hAsePDCD+fsLGNmb/thYEaa3tt8nkUlO4ia2dgbs6oZJ2U12vNQbgcGg
nB8o6xXnnp0ghu948JxQY7CDfCHHA0lp46GpWXiQmWYo3qMEwVg4aRP85p1p1AlTwJlQPTn17JJl
kQLDeHdaKeplOoVwCEdke4IbzOYqyIPhskbHOdnSMOYzEfixzcSCed9lx1sZvWnecebkNAwFhZQk
HvQqHCDVVvkgsmUa7sQqUokRJ7VFIePCgP3gTK0EC3kYvmNxx1H0iSGYRsN0E40ZjfdrQ2iQfYHW
dUatQS0O4Z0OyrzbYGLFwTyzy9SEBdXaz4UbJ4Pp3oDJ6lUhJ4ShsG6Ib6e/2NxdQarTBu1hSS80
2sm5kZqwg8k3FPsOtFvP3X+FLGKDKcDwwp/B3sGiFTrm+GcA9XgD5gAl8xbaSu903uUhJXX+ibCc
VbB+P1FEbyS3hN597OWVwjx6eDrGJK7D5G4vk1b5RGS1MvfvJ4t9MGtu5LuqzLWLcSqQEAPCDQr1
YH3N7rizUOLMVWmnG67Nu//YNHrs5TeLgkE20KTcmrefew+7j+DsvIG3O+EQa6/htUWc1Pl2kzCA
EDqX3nC97owk3h2JzOdaMBuuTYtfvX/TDADwYHQmg4PRuHojp7ERQ7ugCiZLqfTpcGYLL1sjYfVq
GtP5gn8/QyPWiwOwznkjuuONwSmmhwNnF4ZJCxpu3PWOYzXqiztOy3Uer/JixLbjYK5dsFxn2+qs
s5juPxglcuHvdtIFVLIPVnZQprZ0FqRY3Gmseh/yEKLnUrKXXAtjppMg7oRP93NpqTrVHHiOV1oD
QLiQRCGj0zu9DMVKf5F/ojInKkbyif2MPXbmKYMlvE7ylcapSrakk42B4csUT8VIiJN1Ga8oOAXz
QQFhmXzDZA6FVdTOFwiGiL1QW0mFNVizCHsr1s6Gd6HCg2FKgQEZkXkehomYYGhptE/1dlRwMy/i
p0PcX5hDhbWJXbFe3MkYgCDnGFLYPuxVpwDzqaix0/WlHySr4ogTM/Q3EufqjD8PoFM6q2CVML5g
pwNKruF4fkKN/WGG306nBCw3DiqGOQpw2Y1vbJwlK+cpJHs7NIHV4VPZgO9MCJZfBSzncFEZV4O0
W5VlxwEGbtc27EoYrIKhKZiVhGM2D+Z8CDFwms4eN/isqDj1FOtHnUIhd4uD5OqJKnliKisvTmRS
WCxwytVCSJNmfjvt1HRSTiETXwLV3QUAXQDQBQBdANAFAF0A0AUAXQDQBQBdANAFAF0A0AUAXQDQ
BQBdANAFAL1WAOiiuruo7v4auVn/9M/rfu+7s3c/fv+jT3X9i8/OXteXdf9LYd7Aj+puX/kc72L8
z2/W+YT6ACUM0RATBp+8e89MN7E7lKBGDM5JHB/ydr6FzYmVv9ePEwnJicyNzQamOr1BpG6S0Bvz
qekkCnd4VtnXVwkpB+Okd3NVPmY9WcVBwAo7M40mhdFjiF+bvwM2ogvXdn6qXs7JcrDxbIA9hilu
CVH81W9jstyZfXdo9w3odXcTMKBJ288vudk36yQxzbtfgvZhQ0tASn5mZ/En1IZS7V5v4IrAU94l
27zlb8HFsPtuAFBnp4C/NZjQOxFF304uae/+PQn9TVJ8Y18fSGwDZMsdO4B1gyQEx2SHoLcCgGSo
szP1m8+tnv48upmrvYFpgDhVkOqcL7Djohp/gwH/mBob56TjumOeFa1z8OzJMvJUtnB0793ybJed
CQOQNsMYM/++CFGKN+8xgzg/Z/fmPSecN1e7p7R3Qi+ydDR22nj21L2Fo6I2QLLBWkOFQP9c8oBq
ubKFw1z2Zu1PrWPto4GXHlUOFNJbtrx9l/wojjYLO5oCjM5U5mlW7MY5prQsEg1GAG+IClKwFKLo
zs5Dbz4PL+WwJXvQ4MFeKW+gbV7qAnZr7DIasDkXI/kGGBfsFDSys1k3H+ix5XbuKszhfSEwxr76
7cVeIE+1sO7OVs9ilH6GgpxJd0HrikdRc1szOxjOkDQwc/IuDLaR54hdz5laODWIlxjuNALbvwsL
dsWpUyrAsu/ylmO2nXR3EwlFwgX2soY7znAQ88TGXPsEtcjOYhymkfgnfe7j3LPnqL45jZYhfbYS
BaBoI7uGk98USMA7dmF8srFltIEDn2uCJuvHUgo5OXL42pl8PcF7XplLTidCmKiU6eDrOUsNb8hk
EC7Mdr1pyvvknWkpw4zlxazQoBbcGcOxBIkTBjtS7MSdMKyTDqeAYJz09GblYON9ZRXDSxXFg56z
8uC7u2nBUYDqXZesFiXa306PVjni/faVJZjK2muDSd887EGilO4R0vNNJsLFJBrwI6TXGwwO3F7N
VTHOxCTB3vUzIQSKlB13x+Ie9AV6WMeLAvPfjEA2cgKxmafTqs2JtVjUa0/neqi3AIUXK9lT3UCq
m7WuMVzA+5A4zO30Ms2RzMyAZv59FitzbfqGUZN7qbK77IBxWCaugC2daLA59cUdmZ0yx9vs8e/e
YlfY9RSEl4Pdv14kcsKDTtjT2Y1cQemdMKM5UKQrB8nbTk78DlLkJRjDQc5EBbxZ2DoYRm9AgYIV
/+LkHKA3hhyDRb3Cxc1kLsalUchg6a2R3GWgCQW4Ptj32CHrT3u/MapPgPMwQRzZEaxsrL2eXBWO
GL2UzKpcQkZeUybJWXN+wRmE+Xbu0W30cmdloRnkJ9tHkNVg4KkrqRnPDer4gubVPTx1A63NDZne
rMtXAY3gfwDOHzl4UKTwCOCQ2ElZnH8RUpjGtwTBCo4ZSQokGoXFOG9TTFFZjR2mYNiZvrUXq3Je
MblTeKQrKXx90b3dmg2Q3fmZ/LkCtpNuvZ2ZcqpDEQNoLC2dy6l811GBNwvzpsIW3w5LiLeMZmqZ
cjqyAZ1T53OFBvrn1CmD3CdOc9jRqEIc3hkqO7FoTrIAThsMTWM9U4x0eBbCo6i/xyD/WWDdA+Q8
CJJtMjmFwdkN7Kvfz23khdXqYNd3zgvIO3WMP+ZncUAVzEpgcTLs71mSXW0lHvPi8mB7vDNoerGp
MncwUYvnucMZShxIe42b3dqN9WIv7zY+YCgQ4lRIB5qJolgSCrT3nMJ4GWJhl6yTrrXXTl12AUAX
AHQBQBcAdAFAFwB0AUAXAHQBQBcAdAFAFwB0AUAXAHQBQBcAdAFArxcAuj6quz6q+yuk2vyLmNaG
6ejZHznY2dNt+QYU1nNfSE6P+/mhbs6gGnsxSZrcYUse7OA8wmXvreFj1eJ4F7/u6NYIjmeGQUTe
iGDCezqJRYwJej6Qo7l3AJM1ezDbPyJgvogPUyaCEg6m2cbXir8XBkM5N7oRTRZitcbn4RXe9W4O
c3ahpcPgo+kjYvBeH08IDeoNBl9HFWQfqND1n7M1aPad98GbBYenUt4OAmbq+WRnp2zwdXn6PzJc
dJNIe8fS4/xaOVsDTv7O9sFj5xwBx/AeHaY3DZzX5JmdDOYV2sniLYbku6/El0ldfnuxM4PbE8Ex
plNPyujUTLq73V7cRcsX+NvPz9ULYTct741Bw7G+uX+9axDS78JdBbDASckLedjteJxx/twNSVd6
F7UJSBv7S85pGxcHUU61annCzLRkkEcgAdZ2ihHeAOHwAsUO9oWcIVpj4wuod+E7+mpfi8k4QXz1
nIotUNb5AmLS2YzSvLcGGNSE8N6P2Ng01swl6+qAYxqVK2xYGezzzinixC7h7cUmG7Z2eYtzt+k5
3EHDzVPd6Z1iQlT2VHXCncJAlMpGCHu8nSHO4fI5YncMxJzh3pnBgJ8D49OLfASw/QcpDwpk780w
OlMXJ/4otnfvMAPBSXxkAzt7epETBJXobHiqQIodIKkZEWAfWJoDaNp4OvcwVc+FJtrQO3tc9xmk
1Xu8IPAvYEy55LOc+867Yz6PJIMIGHileg8KOzi9gbiCmTbPS4GJC2taJ504mLtRDDV4xawOqzSB
P2s2A+ysM5Vq7GbrdrVWJHaCFjzjIAdHp1Oc/KJ7wYD5SXN+FnCEDi/08DZf8vucsz5v5QSZykka
atzYIX10t2d0oAZBI1RvxGGQaSCJjWWzAd1FQ4xitJqRJNzd7M1K9+dZxMycyjtpJuZUTH2PvVnQ
HQ8PVozhhWWP7gVCj1qQ86dmQpbQ5zPPwsnazYbdav++Axuxh9t5eU5ubaAuM2E4u1D1ykpgBQBt
jV1EjU2i565KHH2GfPdzkKlsTS7cldgiWzmP1qDjTjSWvfvnPm+n7IFrwahKZzdbZ3+2ycO7EUDP
0tn13tizOAgzsgenc8rqbeLNjpWYLexhwTEbc/Igw0UxMOoZrykoKhoFxuTEKOeMlxWIAhV2Zz90
hY28YVYDoLawttEYhAfpMCq7qBtLI83pwAaL9N41aNCBPXDG+6rzVZnXAfNMbw4UeBijO4V1bmMx
BcKJwdbS8L5hlNbEOcUOqPJSb5hjlcKb8zrcKqmrpiLYz3lKZ9kjmIFXfxCA26rmtLDL9t5QsDzv
LBzsGhxMc4oTYD1hOzarxvAFY03BARXjs266jdjP0BIkGd2besEsMnoHJWxe0wq81QzE2c+JmHcx
BlDOcJYQBs9gcBj+qMJM/uYK2nETBoBcC4KKDvLikC8AbjJ8ogcPP0gqEJOaZGSOv+jOOzOfxEID
AozBGN5NYcI6ir+uGBBXOEztxkMHOu+FWK/nkevNk8fGNKcRolcDQA+CEy9UOy2C55VsqzUhRyPY
rk4h9IA9iC3g5sZo0Et0bwV2TEskPJgPFvJrhIduLwKRfMc8UqcVQOB0TsAZTisT+TSiTpRiho87
znc6VwGDreTDHUf8XPiGJhzgscxQWdE/gf6Cm9hRfqKUSshXvOwKxFlB9yq64ZlvI+OGGXQKS/uN
LenFqdmIhFORnk6OqILl+hOKQnw4nCiBibOz51TItDrAeu+vnWntAoAuAOgCgC4A6AKALgDoAoAu
AOgCgC4A6AKALgDoAoAuAOgCgC4A6AKAXi8A9KXns/xdTip97pQHf/H2p+++94KO6ssg3fqDAv2f
//vtDz949ZeyZFVmBs35c6FH7aQI73zimZDAwp49tsp00tRW9lwdBkHM2JxZni/Lz2mEMzszWRzw
yAYfOg8+ijVacNJSFgrMqgM3lQNqOTc3no6dz3+D70Er6ZIbG3UckRUjAey+Mz93YeugKRW7A41O
AGViURKLm4DcnJHnbI+4oDFmN7CBRqZyZ4Hw9ksncM+PWZm4NzCqXl7sIQRfCSi3s+keQFMr+yue
CAOZeHXHX8Aqh1k7HDATJy6xgC0VO222MTS62xsSDKIU0MGcwT8IzSrYwPQijS/yePisbIg66S3R
zArmkSEw6OAxZlPBDjHk4KPqAGkrVHA4szMpjJt9PpTbBvwMZJ67RDy7cvoOgF6nX+hsyHQGDFtc
9QYAwCrv2j2/Xca5DX+TDeW/996Yi3ew08YBeIZCMCV3UnJ3Nk4fARSf6Zua2nkh7Madu9zQSwMA
aP50nslH8e6yivcGRCmQzjprfPGOL/aoeKpRyCc+2P17bkni4gTC6xmR5bvYcVr7mZ+ksNd3wOXc
oBJ30OctN6k2BPtjOr+hDzaW57RvfrF3gk/e/QF39+a9xifdzO2CDcae8jbcbzgjh6c+O5AAlMmF
WO8M38wu75zspIhpHsMdV/JNv8GYyofplc1pJ64G+2zqPLlQapwR0PBeKe8TM2ruZAsAURnUPJ05
2Qsw6oBKPOesJot9gKt56gOgXuu5v8J8886xUADLg6QEjU3R3mqVBluZR3qLnenzSfYyHieneEUh
jTJ6W6l31nXIAqp36M3M8md0wzvZcJreu9Xg0e9AksMmDOx9Zgxwv3vHIHmEBrB3uvV+7mXNeT/L
QUdfMB56n0ZgTcHuoEJCmOqFAq9ymOPcexXYJtTZyNR5abF9Tdx+x/CNpniNjkwR3lE5aHBPqqpR
Kza55Vz8DnfyC4AkYaeOvQ90zPvty5kwpzO/MXmBN9kOFuIcVAyjgxs676gAmDmYxGRjmgjgRr28
YPXE+PNi72hjRMpAqNNipCAYt5MG+8Tj4U6u7BjM0QafO55eLHMBSHhbV2frl4k2gl3flXlbTj5Y
pqgMModGOX+UV2I9LwGGPxfHnKuBdbPqCIQ9+RXGDe+EdGOag8Oc/eGgi91lwyli2OMdRAUBEJX4
HHuGD9ibjdzdKX14cmerTPUWO9bfgsBsYPgDS+nscaqgRAGu1tCfATDfWOGpgLgGWroFA+0OhosM
L/uZVcCcIKe3AlysDkq9VAiMkb5yAW82KLixFDaB2S8v0r+A/ZscxNTmww3F6l/1Uo+3iDOOFars
tT6jes6ZVtCNFN6+CX2ubHxtzH2PviDwODEPc6U3vIPjMepVsAJvFc4dp6xh9v3cQp9TcKdgciIX
Fuuqp2bsAm2sVxwNBfCT8BVOs7mX2V54GCwW1xguzv23Tj3hlDU3nKYRBS/6GdVjoeDUMRg3Kqv9
SX9jAHI6V84ro0RjQCvQK1S2Oza2HJ8sPOD6xi8LNjjAISrt0wkqgpwqJ+MPkGQwUHcrG7Obzkqs
c9Ml1kVusdrP6Ks6KVyh7g9mo4Z5vJjJhsx0QPbdhvdIT3G0MyFNkISks0UzHdkDHZteEKwwZejO
EkbUnbtt/cHFSkTk9IAgSX0/6TC6w1RH1CxGGZarLIWFwyf28RZe2skZkoHiBsAfJ1tEhyLHifWC
ZFy2i8FydCVXXmXa1Vh5cIK+wUZup41y7jWTjEieSl6sQwFwN15sqV6LADmphBAFHgpPoIbZlx5f
BkvWBQBdANAFAF0A0AUAXQDQBQBdANAFAF0A0AUAXQDQBQBdANAFAF0A0AUAvUYA6LV/EPW7nE/v
vX98efTbz7mfsvzW+x98+urjH7/97qt/enrav8Avof4cSf7ST6CevvK5esPa6E9SnRO5GjbxoDEg
I7TKEXYWXEOBE7qyEazAC9j96a8njOxlKHz2fAYbML4XzxyxoDPzrO/iU0DzEBeC3gpJXjpuE9g/
+JSUu44vh2GwO9E/bwQbuHIo0juMy6YeHJ6csk8hv21eXozSHmo8hDIzGt4Cw2hWvM2B/RfBB42V
LQxOJ13ZuFfM6OktVA4gzTho1GUhHGK2602LhazNJzZSqSBN19jjUxkHnIe3kZQ2oC2v/ggTF5Mv
XV/Ecnzg3fiGvHqsYDwZ/sqUb26L4U0++T7JEc1uiAu2zI2Pgc9vpCGLraSc9t7AapJFEhdUvnv3
Nthuzmy2b5zs6TthDPIUPqwtjgQAx7wdKeyG4Oa0yTQ+ti8kE6h8MOw2HNipt85ZJRrfJHfg3w5M
MdhZdsbwTjRMEGX8tkDTW/iE2DFGYTtSM+2rETB2vxa2PjUg65Pfne+xTTCZsNIDLw/sdnz/zISo
s5sgnZdRX+8n2kE+dxhPobQ/8BzUpjALq1zcicY7ez0CXDqRtOUED4vp88GgOu1TyfrtUDDRLVhj
D8SgMkqYjt1TYzCxHGChTO7bSaZbQT671yN2do0BWOWI7Y/t1xeQCEYUXNwg5XUbJnTwREzI5GsQ
1B0jCVPacwcfEjqJxIkzMPY2os0gbuzMATPohW78GDzZXFPZWtgZrCo45wk0sXsoR6RydlMa/hPR
FONqZ8PmMQNllKhsfaqOcAAhjWpWMB/vI8uZ2oRCFhYLJmb6ZHKv3uC2nOBGdiXZLfp2znqau5vJ
TvVuODa4ddDRRot1IsnBx+02c29a7HyiX9gK2hzn28MaXzJvNJPKMww2DS17B7qpjmdcAAowzIyO
12vk37AHGc6TznCa9aovMF6g5gG7/LCvJPF6t0eD6d97twsYr3fMDTZaNmC37s2GpH/p3nkXxCT0
coMV/gQlHow/3rPPtsHTzI1C4zS9VTaYfHWCpVO1mIlUkJnulU0A/MLEc3Cq0F+eNVemY4NXdHbH
dHJHNFMdEwNU5h3D01VPIYlABgtb3o7UgKPDyyJQFLsNB7ksjO1bISuJLwK0JNgD5b0wzdcA+nX2
VxY0KtgiXQkqzvVZb+IG8HQWkQai243AO+kHC6MmBU/8BJd9TNm8fOktMJ3pmHcGsWbRTMiAQ3Rr
BCwZCSwPhtwX/NPBdNW5UKo9kdnT2VnvxE2OLgpbhIIUBM5gkBME9sgfGAIbJB2B2MsUB+QodkZx
CzP0hXHsfqZXSkyjnOt9ueRxP5fnqjMzkNInSL/Q2Zft/TtObOXdi51O8d7A3O5ncvHbuViQlNve
ijXx5BlU8/YiIxB3DZbIKwuIxbPvhUEGFNFA3Al9G4izYGyY8ta5wa46W1zwuUIzVfaKXbCN2pum
vQuyOSUUdtrx7wWnafqFM38CBlLs8c18Muft3ZrgBWiYNBor0Q5yOmO4M40MMLFGeNABiDq89RlQ
VUKsGeG9bFTPJGOVpZwgu0VhFcPM+mdiIqImb6/r7DvOxZTBHI0ePD7MgDqg22DZ3VnBTzq+2/v+
hslwYCIPKpifIuy4tobzZcH32HJrEhvSYVXz+lsPrVosnja+TjnzCHkujMk4208zQTvTHPOc5Dqm
V1WWc+fmuZBETDJg1zkdIui6U10V1jrPDGDmWLDHZ5NpM7sFXTBYDemERoOJagWManb9TpfBOJbt
wz7WowugGDLQ7TQgRiODhb9wXOeEZqws1OW1c0JdANAFAF0A0AUAXQDQBQBdANAFAF0A0AUAXQDQ
BQBdANAFAF0A0AUAXQDQ6wWAvqxEgf/d9rhuqOKB2jmInE76NI8XFX7cc2j7vKWC0SEIOLZb0U9w
+KG/q34ahycKM4WFwqpLu36Gfr6qn6/p5+tcu1HYKRQKlqBS8Ms7hXz4N/JvWXAw+Qs2owWbSoIv
pbfbN/XzLQ7P+vuf9fNt/fwLZxf9/a/6+Y5+vquf7+nn3/Tz7/r5D+5cKWw68X3+psZBjdWT2+0H
+vmhfv5TP2/r5x39vMsttI1sYbv9SD+vOJyd8GP9/EQ/73E2m+99/fxUPz/Tz8/18wv9fKCfD/Xz
kX5+qZ+P83EaWrfbJ/x909+f6ucz/fxKP7/Wz2/081tuSSX8L/0c/7JAP9YHR1yYKKCK1UcWCiuF
jcJOoVAICpVCo9ApZIv9w/5EAQn3OwUE2xFjnykgz448OwZQLbyvQcIdBam+C1F3+r/6Ob4La6lU
cKcWO7Uo1KJQi+J2xvwqrVGwoOonY4ceTZofSN09PjRMsvGKxgObL6bujCHnANFow0IFC/XySNF8
u2WmBwt1Z8jIseIoUHePFQ2bbWiLR4+G1TY6pdEXDCweSjxq5CBwFPxAP4cebLRqQ1QPDM0y+13c
1RnxumtBlcPP4XYM1JZpe0uzCrZ7BJ+sb2CrAd4Q+J4AwdpAW7fbqb2VNuzUvVL3St27j9CVlQpW
V5DurtSrUi9rXed2q1+jgo0KNqpjZbNGWW3c7x0xGurX0aiGPM0v9cW+BlHdle7Bs7/o7s417sGz
C3wXwrsLBs8ZvotOGVS545GHb6cvOvUafqBvpzU63TR8Fwo5fDut4RZzQ3Ua4awg/TX8HO4adNxg
lBg8x9VxLU6ZecUpPO9yLSz8QNksc4rB6Bc3x0ApWNwc/qQ88WJkO9+ul96lEHfV6S75743bpG33
vFY9e/8qZyXuXeHR/ev6+QZnVYe7Qpb7t/SjSOWuSOX+L/pRgHJXgHL/Lg9Q3e+KVO7/xuGdQoqu
2OX+H/r5vn4UjtwVjtz/k1vcQllRBSj3dzis1rm/qx/FJfdXnM1mUFxyV1xyf08/CkfuCkfuCkfu
P+fOkYUcv++/4G8Zwv0D/lZf3hWy3BWy3BWy3D/Wzyf6+ZRb1Nl3RSp3RSr3X3NWHX9XyHL/rX7+
i7PZv4Qs9wxZjsKDwkTBFy8UVgobD/Qpeil8TaEQFCqFRqFTSFUjZLlnyBJ4o8AbHaeQWUFM4ISO
IwivaCbwRmFvhO8J+547Ec+diOeeEc9RcL3oUvmnsH+6E/rYUd0z9Al7LPzTcYpG2GmE3WLQCMWv
oBYVCQsvzRgIH3YcoQcL7yq+neoUP8d3+RTNi52l9RwFZMZebBpEKndmNXac9pd3K7213TpsdT01
UxoV9rL3U6MCUa0J7vfwxYgaiOpeDkSt6Jh70B1XEcz9VRHMXeAGr2hm5aUVwVx31+K8BsEqglUE
a25DVNTXNERt7nffhcwNmRv93qhpQ/iG8I3GbMjckLkhc8NkGsbYaKiGhOfbLSqCdd7eEb5ze+eu
jszdMvsIMndk7jR4o1M6wneE75ieq9xp+U7Ld0TtiDoQdSDquP9VP6b5HCz5+NUnH3728buvPvmn
4+B7b3/8watPPvnHn37y2pmLLmjmgmYuaOaCZi5o5oJmLmjmgmYuaOaCZi5o5oJmLmjmgmYuaOaC
Zt50aOZ1fuZiPOV/Qm/+J2H+HE6eP/7BzevFkP5wnT/5nUrv0/T4IynZPnn34/c/+lQvyVMfffbp
8/P+zHp//OqjDz/+9PXW3u98vf3+BzbhbXAObzDobmyM29iQtPFF9saXsEcBEx2Y6GB8GVjmwDIV
pYZnOUxutodufti69dSHnvDwaIQrbr4wr5DJP2TwDwF9D0WyD0WyDyLZc2zLm77J33n3t/LvHOAe
CnIfCnIfCnIfCnIfCnIfBLk5FD4U5D4Exz0U0j4U0j4U0j4U0j4U0j6EsD0UwD6EsD0Utz4Utz5e
6Ufh6kPh6kPh6kPh6kPh6kPh6kPo2UPo2UPo2UOh6EOh6EOh6EOh6OMTaoETynH8IfTs8RmHpSAP
BacPglOP8Tm0P37D39Kah8LVh4C1B1Hqgyj1kVFq3E5XkB7gkXFrMAE8jvh1KEO6ggch7YOQ9nGG
tOklHmdI21HKTgyY7uKRQW4wJTyOBAW/C3UargUPTIt6EP8+iH8fQHYPot3HGe0Oaprm98iwN5hR
BjPK8IzyAb73INp9ZLQbnmw+CHsfZ9jr6eegXjvN6yB3UNPdBdpwd019hJoWalqoaaGmhWbJSPZx
RrI5QNxf3LVw5E7hQcG308uFChaqXKhOoYIJ5Tt8dtT8IP59EP8+iH8fzPRIUrvBNhv38+1BvQLB
gk4JXhG+GFEDUQNRA1GDBg8ECwQLBKsIVhGs0s4VeSryVOSpyFORpyJPRZ6KPBV5KvJU5KnIU5Gn
IU9DnoY8DXka8jTkacjTkAfHYFdAAAuZ+Pbw4A/Y9fCQ7rHcg3gOzcGUKJgSxf1Uku4+5RWMgB7z
GOU8bXp4uPM4B6j4OIcvj1rdT7YeNgoI331kZCGnX/dT/bovpqYetTxYeUQamIyV1ro6qNegXtbe
Qb0G9fJo4yFlUC8PIB4uPCYkNjXp0il4jzp/0vUTdU5TmRgJ0mImVXOSa5/k2ie59ukb+vkmt0jM
SSDVJP89fZuzkn2SI5/kyKfvcDal1LraJEc+yZFPcuSTHPkkRz7JkU9y5JMc+fQ2j3Nts5py7ZNc
+yTXPr3iIjXZJB8//YTD2YBy9pOc/SRnP8nZT3L2k5z9JGc/ydlPcvaTnP0kZz8Jd5rk2ifBTZM8
+qSFsUko0yS3PcltT7jtCbc9AS5NgEsT4NKEJ57wxBOemAl7eMI+sR424Xc9hZ/S74bn8lM64PCk
fgJ3msCdJvzuhN+d8LsTfnfC74IJhDGBCb9rcGACdwIlCKMEBgcmHPAE3DThdyf8LgBCGECY8LsT
62oT7nbC3U5ASVN62TDsMOFuYfc/ClSw0D6F3ilUsCBqQdSCqIXqFIuKhVbEKIhaLAaiFl9DF3gI
qwjfkDmQOZA5kDmQmdHC44MHBpu7LdtGjCudbH42MRsVrnQ69dBaZ2WrKEnzKQSztlhJKoJVBKv0
e/MDkdAKUNHnRt0rorrBz6bj7W5DC+ZX+DnnxYjaCKoa+twQviF8Q/hm4X0K4RvCN5q3IXND5maZ
eWBH5o7MHZk7Mndk7sjckbAjRvcD6feOYB3BOoJ1BOsI1un3gTwDeQbyDOQZyDOQZyDPQJ6BPAN5
BrZztiESDiQc7ncfQdR0nLOfosrMunDOv3T1nNeqUvNXuQWjbfjTjIzmr+Xf2Rvz1/mbOCk7ZZZz
nbXwM8unzvKpMz41+22WT53lU2dNjme50lmudJYrnf+dO9Wws3zqLJ86/+C1sxBdAMgFgFwAyAWA
XADIBYBcAMgFgFwAyAWAXADIBYBcAMgFgFwAyAWAvG4A5E1PRPbW7c1JRZayvBkf09y+8tx9ioVm
xUKzQI1Zkc+syGdW5DML1Jh/jDYwHqW1z4I5ZkU+syKfWZHPrMhn/jm34JJzXJgVC80fcFhWOSso
mhUUzb/krAxzVnQ0KzqaFR3Nio5mRUezoqP5N9xJaJJjzax4af4vDqeBEjjNBE4zgdNM4DQTOM0E
TnMGTuHv+mY2UM3ES/MZL+WYNoNTzOAUMziFvwacCZNmwqSZMGkmTJoJk2a2VM1nUDQYKIavQfgd
4TMEmgmBZrZUzQQ8MwHPTMAzE/DM4AvGJmfwhZmAZybgmQl4YFjboEg7CghWEKwgWEGwgmAFwQqC
FQQrCFZouoI8gTyBPIE8gTyBPIE8gTyBPIE8gcsYbnDfhYSeXQw/B28y/ED3u5/sVqXKQS0qtajU
ojJjtC8bfinN4uho0D6OpXFhhEkzYdJMCP04e7AiYUWwSk0rfVH9Ur/Lr6AWjVo0ntzoi0ZfNPqi
IVhDsEbTNeRpyNOQpyEPPpnIB2bzbbantYsl4JntW+047QcZAsHL4nHqM4MiQ93j1HDGPI9y7BR6
nMrfkZmB6hyaPLZ4APEokWZuJO5x2s6whLw9gYbHaU0DCa291lWrqDVTChnAdgFsF4/TBodPIfyg
XhlKgd8F+F2A38XjNE/raqrooq5d9LCFRwV1TCteGn9PFOiwoIGC7kljXhAnJyiLpaIuQTVznrII
5li+xmEJuwjvWBSSLd/kbNZAsdmi2GzResWikGxRSLYoJFu+y51Ikoa/fI+/6fVK/XOavSh+WwSF
LArbFoVti6CQ5YfcQhOl8S8KCJa3OSxNWBQZLIoMlh9xVuqxKERYhIksCggWBQSLAoJFAcHyM+7M
ZhcmsigOWISJLB9yUfaF4oBF4Mgi97/I/S9y/4vc/yL3v8j9LwJHFjn7ReDIgo9f8PELPn7Bxy/4
+AUfvwCOLLj2Bde+sNFowaMvePQFvGPBkS848gVHvuDIFxz5giNf2E204LYX3PbC0gEYcBgDXtgt
DRgcBoMXXPuCa19YQzBOvLBbGsA4DBgveP0FmGPB2S9sGQJUDoPKCxsHQZcDdDmMLi9EBgsj6cK4
uTA4Lufo1lygERqdUuimQiM0qlxcoO4euZqP0HGFmhZqWqhp0BpBx3kAan4gzwlXmUGpMdI0P5Ca
BjUNejmoDsMUMQeoeYCaH6eohYeqTquG5aFegRidBg/kYaAhwiBlyrZ4hAFbgbA8QN8D9P04RS0c
RnQ6rlMvxgHwFwPzZKTZllOxrc+drrRiW3uttJ3brb2N6lgzG9VpVMcK2RC+Iap1zBpltWlI6H5v
CNYQzN3dkccd525yX3TkcWOeTefO5V1uzI7Od97uhnJrnLcjWHerWkLf7ms4NRDeMcdADwfVccwx
qJdjjkEFBxUcVHDQ4ANtGWjUQMfOa+iLQQUdcwxaY9Apg4Ya2OB5uyq4qnVW3bHq+lWtsOYlaoFV
Xn/V4sYqZ79+g+dKmlVAzCpnv8rZr3L2q5z9Kme/ytmvwl9W4S+r/Pcq/73Kf6/y36v896rp+ypv
vWr6vspJr3LSq6bvq3zzKt+8yjev8s2rfPMq37xqsr7KJa9yyatc8qoZ+SpPvMoTr/LE6yfUPltR
LnmVS15/xdlsXPnmVb55/e1rZwW6oI8L+rigjwv6uKCPC/q4oI8L+rigjwv6uKCPC/q4oI8L+rig
jwv6eH3QxxuTxurpK59LmX2vYGElWFgJFlaChZVgYSVYWDNYiMcLReucklL7u8eVOGIljliJI1bi
iJU4YiWOWIkj1owjgu8nw99PrkQWK+xt/qJyJcRYCTFWsAJ/bLkSa6zEGisQwQpEsBJHrMQRKxDB
SvjgjzZX6GX99eYKaODPOFfiiBXQYD0bqiCzK1gs804BMVyLDBb88ed6vj1DAz4HDX8OuhIjrC8e
6Nvpi/Ni+qK4L1wvqpOTGj4rPY7QKUEFgwoGFQz6K6hO0JiBIp130YaB8IHwgfCB8IHwgfCBqBUJ
K4JVXlERrCJYRbCKYJXmrchTkSdD1OmsYEWwimAVwSqCVQRrCNbcdIjRkLDx5OZTSNiQsCFhQ8KG
hI0WawjWEKwhWEOwhmAdwTot1pGnI09Hno48HXk68nTk6cjTkacjT0dXrRIdwTqCdfTQ2jKQcCDh
YLgI3j4QdSDq4BXDz/HFiDowvcCarH74AQ/5HlWZ0a8MjDnk5YCXw10OdhvGFFafvEztv8kVb3LF
m1zxpnn39k1uyUfKFW9yxZtc8SZXvMkVb3LF23e5k1ErLWWTc97knLd/52wKIy+9yUtv8tKbvPQm
L729nbdUxoQ0tE1+e3uXw1KiTQ58kwPffszZBwVGwbTFTb59k2/f5Ns3+fbtZ1zLsJjmuv2cv9Wx
2y/4m/7NMHxTILApENg+4mx2yS/5O9tbocGmSfr2KWezZxUabJqtb7/mbDa0QoNN0/ZNnnjDE294
4g1PvOGJNzzxxrR9Y9q+4W433O2Gu91wtxvudsPdbrjbjWn7ls41/I27P23fmMhv6WXDH7tvuNuN
Gf3GDg1/B7+luw1/EL/hdzf87obf3fC7G/N3vp4Pfz2/nZ640Rr2xM1PpoI7FSxUpzDaNt7uUKOh
HA3TbLRhQT0bjVmocnGVLQYm3mjMTvN2mq4gfEFm+++OPJ2Xdr8LCTsv7TRvx4N2P4dWLbRqcXVo
w05NOw3eXUG0xe6/+witGrSq3X+n5QMFCPo9qEXQlUEjBI3gYdeD/vArqPvgXR70h19BTRlTPVIS
Imwe+IAgvbtgI1bYPIR50CJWIA3yUaAWlVow+HjUIVbYPNx4ZPGQ4tHDAwUhwnbaoC3OZmVrashj
A7Fd2Bys6g15GvJYw63YDXka8jTk6chjNe7I05HHutqRpyNPR56OPFbRjjwdeayH1jqrVkce68ZA
noE8Vgl37kCegckMjOg8goQDaxqIehashy4g/MCaBtY0qMWgXucR6jWwr8EAkmFEcj97pTEHRS84
5kjodcfEMXMa4lXI3K7GYmR4MXJXqLF/jcOq/a6YY1fMsX+Ts2qAXTHHrphjV8yxK+bYFXPsijn2
73LnTkENtX+Pv10h1ySroHBkF1awKwrZFYXsikL2H3JLNpbCkV2gwf4OZ6Uru9CDXcHH/irP5vi1
C0bYFWrsCjV2hRq7Qo1dMMIuGGEXjLAretgVPewf8dQbhewnAQu7oodd0cMuPGFX0LD/iluyK4Un
7Aoa9t9yNntU0cNO9LATPexEDzvRw070sBM97EQPO9HDTvSwEz3sRA870cNO9LATPexEDztT851Y
YWdGvhMi7IQIOxPxnciARenwovROiPBc2F47F8sFl1xwyQWXXHDJBZdccMkFl1xwyQWXXHDJBZdc
cMkFl1xwyQWXXHDJmw2XvPYPT/6m0zn9+v0PfvThr/PgL97+9N33/vHz53xBrDUPQU0fvf/Rq698
8tk7bwZ9ze8J9VfisXnrrsfe7o/pL6KzCW9R2Ql893/wUJ8BEJtWjlMMkoFtetwPjJSRn8B3/wcP
+uGLuSY/AWb3ynHEAxYWnTGxt7HsRMDez7LbvZx+pWL1OBi7FKJbdrgcR6ggXuF0B9VPZvApFt4y
IypjOMjT7mHXg6nHTULP/Rxq3BfBYOiWd4O7nQN53JiBs61+MoK56dxibh83gmvq2yuCVQSrCFYR
rCJYRbCKYBXBKg1VkachT6O7/a6GYA3BGoI1BGu+GMGa+9RHkLAhYXOfUouGqA1Rm9vQtyNzR+ZO
G3ZE7YjaEbVbD7Emt0/H17ihOjJ3BOu8vSN89+2+C5m7ZfYRZB7IPJB5IPNA5oHMg+YdNO9AsIFg
A8EGgg0EGwg2ECNjxzSqnPGlHaUVpQ2lBRVFgUWAU1HwVxT8FYK/6urmTYoCyz/n4dStonCwKBws
/8pZNURRXFj0FW0R8lQU6hWFekWhXvk+dzIOpWKWH/C3GrAQBaaaFkWBRVFgEQRVFPwVBX+F4C8V
uij4Kwr+ioK/ouCvKPgrCv6Kgr+i4K8o+CsK/oo+uS0K9YpCvaJQryjUKwr1ivChogiv/AZp1O1F
+FBRhFeI8AoRXiHCK0R4BeZy77IrhHqFUK8Q6hVCvUKoVwj1CqFeIdQrhHqFUK8Q6hVCvUKoVwj1
CqFeIdQrrLkUArsC9lPgMPXOwAIIVFh8KWxnLfi5gp8rp59r3FWQsCChnVnjgQVRC6LahzXeVZC5
IHNB5oKoxS/1k31744HIXLChhvDFwtO8gfCB8EHzBjIHMjtu7r4LmQOZHU90PxDhA+GDMbr7XdQi
ED6QORC18tLKkyvt3BG1uoDMFZWojMjdp5C50s4VUSuiVtq5EtZ40O/UvSKzB63uJyN8Iwbqbh/e
Ze/YeWmjWRiEPPp42GGvE1tDw1tDC7ufvEe0nI6z06pWfquxddUKaUWyv+yuDgVrgrvbfepOcYN3
hHfTuaE6XeBmcWt0BHMFXS9Xx4IN5BnIM5BnIM9AnoE8A3kG8gzkGQwXgx48n4yEgy4434WoA6sc
hLPn2yV8WkWGfGkIaQZpBIHZDnQvBY6v8jddPujpU+58vtxtyN2G3G1oQ0p8i2tdkRRDoEt8m8Mp
ltxtCH2J73A2pZW7DbnbkLsNuduQuw0hKyHn6p2A3u4XP+TvB4WJgvos5HdDfjfkd0N+N37EtQuF
lYK6NbQYFD/msJQu5JJDLjne52y2oHxzyDeHfHPIN4d8c8g3x0fcGRSyPX/J341CpyANDjnykCMP
OfKQIw858pAjD0E1If8d8t+B/w78d+C/A/8dIDSB2w7cduC2A7cduO3AbQduO3DbgdsO3HbgtgO3
HbjtwG0Hbjtw24HbDtx24LaDmWvgrQNvHXjrwFsH3jpYjgmcdOCkw6qGbw58c1jHcMmBSw4rkFXG
2oFLDnc2k8hgEhnuZfxu4HcDvxv43cDvBn6XLaaxvLgLCQMVP5+DqIGouQK8vHgFChrYV1B3RiJc
cuCSg4UM9qOG96MGi7JsTA1vTPU21MB/B9PTwG0HbjvYPnrsWX3tJDgXYHIBJhdgcgEmF2ByASYX
YHIBJhdgcgEmF2ByASYXYHIBJhdgcgEmbzpg8kZR58AxFsvZLpU+qO4DWqrSB5U+qO4DVKGiN5UW
r36yn8PFDb1pDJlucTdrzmHgMwv4zGI527fR4s1H6PhGdRqd2ujL6muoTqNTG7Vo1KJRi0YtGrXo
1KIjc0cVOoJ1BOu8tCNYR7BO83bk6cjT0Wz3TkewjmAdwTqCDQQbCDYQbCDYQLCBYHhjwocgfAim
0mE3zFQ67GPtVXGgGXymXqRWpE6kRqQ+VE2lq3x7lW+v8u1Vvr1q4lzlyavmy1UOvP4rbYTipr5W
TZzrdzmsWlS59CqXXv+dsymvfHuVb6/6zLRqs0uVu65y11XuuspdV02Tq3xy1ey4/oSHZyvIJ1dN
k6tccZUrrnLF9Rfcki0mn1zlk6vmy1Xz5So3W+Vm66fcmY0sf1vlb6v8bZW/rfK3Vf624m8r/rbi
byv+tuJvK/624m8r/rbibyv+tuJvK/62QpxtGsCK46043orjrTjeiuOtON6K46043orjrTjeiuOt
ON6K46043orjrTjeiuOtON6K46043orjrTjeiuOtON6K46043gqeC/PhcQTBCoI53Gp+KRIWJCxI
WHhOcHEgYSBhIGEgYSBhIGEgYdBigWCBYEGLBfIE8gTyBPJU5KnIU5GnIk9Fnoo8FXkq8mDLtl4b
qo3KpmLNP1XL7ezGbMjTkKchT0OehjwNeRryNORpyNOQpyFPQ56GPI0A2Q7vfDsSdlyg5emI2rm4
4wItancBmTsyd2TuyNyJYhqBiSvYqUWnFp1adAzWjdBp3o7wg+YdyDyQeVCdgagDUQdvHzx5IOqg
eQeCDQQbCDZo3nQ52RPZD9kL2QfpvrO1m1xOk8tpcjlNLqfJ5TS5nCaX0+RymlxO05yxfYeGkdRN
c8YmB9PkYJrmjE1+pcmvNPmVJr/S5Fea/EqTX2nyK01+pcmvNPmVpilekztpcidN7qTJnTS5k6aZ
XZMXafIiTV6kyYu0j6mFmrzJnTTN2tpnnM3GlTtpciftN5zNNpdfafIrDb/S8CsNv9LwKw0cFj7W
MB9rw9M0PE0j0bepWhsup+FyGi6n4XIaU7yGp2l4moanaXiahqdpeJqGp2l4moanaXiahqdpeJqG
p2l4moanaXiahqdpeJqGp2l4moanaXiahqdpeJqGp2l4msYUr+FgGhzwkNuGyW0bk77GFhzT3TZc
Tjvn+J14vFsehA8eGNweCB9cHAjv+WBn1tapjmdknXoF9QrqFdQraOegFkE7B8KHhfdzkLkic2Vo
7ryiInxF+GpReXtF5oqolVdUP8cXI2rFx3c6pSN8RfiK8BUlqcjckLnRzg1RG6I22tljfefJDVEb
onpu1Hkpg4HtnjVJEw03/Fw7DdZWyTh76pg16tQf9HD4Gtzb8MU0+KCCVhLrhvvUHefecfMOP5lm
cYN3dH74yVTHNT1F5aWW2aJawkEX+F1+8kCxB3OVgcznEZz0sPC0/KDBz7uo6Xkx3jp3FMI2Eus5
kgzqnhke1nNsGdQ9fWq2IMQkWzZb6lK2VLZTRgNdzrV/jTtnCmq8/nX+XilsFFSdLk/cv/n6aXIu
aOSCRi5o5IJGLmjkgkYuaOSCRi5o5IJGLmjkgkYuaOSCRi5o5IJG3hho5LV/UPKnUqXMbyItzPzF
0MJMeuz9Mc1/ES3M1hVadYVWXaFV/xd0wBqXqqZgq3+Hw6l6Cra6gq2uYKsr2OoKtrqCra5gqyvY
6gq2uoKtrmCrK9jqCrb6K16V6v1j/k49V/jVFX51hV9d4VdX+NUVfnWFX13hV1f41RV+dYVfXZP4
rqirK+rqmrt3BVtdwVbX3L0rxuqKsToxVifG6sRYnRirM3fvRFSdiKozd+8EUp1AqhNIdQKpTiDV
M5AKUydDlHycylEApk0Yk48jLiCqYqwwh3In2OoEW51gqxNsdYKtTrDV2SQHBXOYgrmzSQ4u5oCL
OeBiPq6hgjsVzMisE5l19sbB1xzwNYf5mjtBW2dfgRmcOyNs90B6jovB2xkgCeM6YVz3yAhO0G0e
BG1wQ4e5oTsfr5okuhPGmS26E731swfdX+6UQPj8+BCO6TDHdAdU6GfzVt9FdYLquOkqreE2dIu5
WYJOcb1cnUqnVBqz0oanhLiZSsdVGtPCW1TLU6nO+UA/B1Er1TkfiB5WanEWqE6lOpXqVKrT6IJG
FzQkbEjYkLAhYXOD84pmUXlXQ9SGqI1aNCRsvt13IWHDzKv1B5k7Mnca3LXoCN8RvqM/rmCnFp12
7mhLR+aOzB2ZO0bdMDS3T8cc3FAdK3CLEbAAYHTiuU4814nnOrGjicg7gV0nsOsEduYo70AanVit
E6t1II1OHNYJ7DrhVyf8ykvzwrwsL+ISVWEo6hpEXdnhQ9jGUEQ1hG0MOeAhBzzkgIewjSF3OwSe
D3nZIS875GWHvOyQlx3yskNedsjLDnnZIS875GWHvOyQlx2CNIYgjSGfOt5DfDXWkHMdcq5DznXI
uQ451yHnOj7kzmwyedkhLzs+5my2pNztkLsdn3E2G1h+d8jvDvndIb875HcHfnek3w2Y5sNM8yM9
cZhyfqRLDnPPD3zzwDcPfPPANw9880jfHGasHzjpgZMeAOwmsx/AHgPfPE7fnJY58M0D3zzAPwYu
eeCSBy554JIHKb7Nlz/YvWfi/HE66e7bEX5H+HTAAwc8cMDjdMCd0a3TPgXh7Xc7LVaoRUEw+90c
TQZ+d+B3B3534HcHfnfgd8fpdz0YdWphv9upjv1up16FegWaENQi6IJAePvd7rto1UD4QPhA+ED4
QPhA+EDUQMJAsOAVFcEqglUEqwhWadWKPBV57C+Hn4NgFcEqglUEqwhWEcwuZ1gMJGw8uXGqIWFD
woaEDQkbEjZajMHSw45HEQ8YHhvwjuM0c1u3jdrmaRu0odlAbBc2h448VuyOEQ0Ue/g5SGj1G34y
olr9utvQL0Vm946bdyCz3+UnD2xnIPNZcHdTi8GYMKjOoHnxa7jAgQscuMBxAhjDjfD5XftT/rje
ob+rfpp+fHceHvr5qn6+pp+v6+cb+vmmfr7FnVixJNmftKUdZv396dv8fdff/6Kff9XPd/TzXf18
Tz//xi0PCpNO/Lt+/oPDs/7+vn5+oJ8fcnbR3/+pn7f1845+3tXPj/TzSj8/5s6VwqYTP+HvXX+/
x9+FQrbu+/r5KYcrhWzvn+nn5/r5hX4+0M+H+vlIP7/Uz8f6+UQ/n+rnM/38Sj+/1s9v9PNb/fyX
ftIBH4U7hQeFicL82klcLnjjgjcueOOCNy5444I3LnjjgjcueOOCNy5444I3LnjjgjcueOOCN/66
8MabkTTq41cfffjxp683dZTf+TeQQOr29PlT34DPg1KS//N/v/3hB6/+IoKdQ/0W9HClsFHYKRQK
QaFSaNhYpzA41SmMPKUw4vnI7gIGkulayc15HMFSdixlnykg847MOzJnSEdGzyCj53GK4SL8wOCI
n0y99kaBWuzUqyB8fpRHZtAgM+hxCnv3IBpImNxqThFKHtAgD2iQBzTIA3rchYSMqzlMHgU/2Q+k
L8Iy84pq4XlXpRbVMtMIhc6ttKF7uVKLRDVILHpcw0uTP4tUo8cROjd4V9A+lVq4d9wpwZPdvG7M
QEXdhpVGqCitW7W6QPNWV5BeDurulg+fol7V9UKxG61aqaAb001XqVelXhW1ab6LCro1KhV0dSo2
WBG1IqprURHVgvkVDbtoSNiQsCFhQ8JGyzcEawjWEKwhWEOwhmANwRqCNQTrCNYRrCNPR56OPB15
OvJ05OnI05GnI09Hno48HXk68nTkGcgzkGcgz0Cegc43lNYtNpBwuE99BFEHog5U1M070F63MwGj
Y8MM9Y6ChL/5no2CmuCGmmfP3ND25hN65k1PvOXz1BS3r3IRttGw+ey8mwLT29fzcHblTRHqTRHq
7VucVXve/lk/39aPwtCbwtCbwtCbwtDb97gTTU2FuBGYdvqhM/akXtwUod7+Qz8KTG8KTG8/1M9/
cgtRZmrQTRHq7R0OZ2MqVL0pVL294mw27Y/18xP9vKcfhaG3n+pHQedNQedNQedNQeftQx5Hz3T6
KlX19hF/ZycpML0pML0pML19ykXZQYpQb4pQb4pQb4pQb4pQb4pQb0SoNyLUGxHqjQj1lvDPUVgo
rBQ2CjuFQiEoVAqNQqeQAhMQ3AgIbhkQHAXk2ZFnp9sHA/HwXZjfQHmGb0fmHZkdKww/GZsaVHmn
Fju12KnFTi123ICNf/CuYgl5qYOGQYsValoQtSBPQYxCy3tyNGjn4if7ga4FwhcXqEWhFoVaFPoi
6IugVQMJAwkDCQMJAwmDugeCOdAZaPfg7UEtAgkDCcPXIGEgYUXCioQVCSsSViSsSFiRsCJhRcJK
01XkqchTkaciT0WeijwNeRryNORpyNOQpyFPQ56GPA15GMk9hJ9jN6O/B3G87I2BmoQfxxEkZIxm
BWQ/ta67gKgdUTuiMr7id28eNYF/9lN7c7vJfqpxDm/7qc8d4RnnPMB5EMMl39K6Yz+tYCCzrTt9
MylJjiO8a/iulWsQ3lZpY7RZ2XYGolppswvurqduvruWesZdN9512z1vUu3uwnjucqV3YTz3b/AA
P6lSyId8k7/zad/Szz9zeGQhQ2+ypgRZU/a7HPBdDvguB3yXA75/l2sfFNSD9+/xt9r0/m/8raa9
y+/e5Xfv3+esuuL+A/7eKGSDySXfBRHd3+ZsNp+worsc8P1HnFW/3AUa3eWA73LAdznguxzwXQ74
Lgd8/zkPyG75BX9n08ol34UD3YUD3eVu73K3d7nbu3Cg+2c8IPtC7vYud3uXu73L3d7lbu+42zvu
9o67veNu77jbO+72jru9427vuNs77vaOu73jbu+42zvu9o67veNu77jbO+72jru9427vTLvvOFdy
4BxHEGxHsJ3hoPoVSLgj4Y5WV78dUXdE3XlF4TmFiwuilsdrp925AJMLMLkAkwswuQCTCzC5AJML
MLkAkwswuQCTCzC5AJMLMLkAkwswedMBkzcmu9PtK58LRJMVmqzQhYWWKrQUo4aHC7z0HS99t9nb
3k8Lr7RC0EBBAyX0QeLm44gLSJhbc8jpfBxBVMwWB363vdo0bYUgFaSEPo4gc+COqp9Mp1o5rAGu
jmW2YH5yRf8qEp4FRK3WPx9B5orM1TJTr4rMlXauiNoQtSFqQ9TGMOlXNGRubl5e2miEhswNCRti
ND/Hd6EJDQkbEjYk7EjYkbAjYacxO4J1GrMjT0eejjwdeTrydOTpyNORpyNPR56BPAN5BvIM5BnI
M5BnIM9AnoE8w33qjuPtAwkHLtM9OBA1Pyolt3jsZ58OVDQ796HHPVTdh57w0Msevhbzytju4ccS
g7j3s9MfX+Vv1e3xNf5WFR/y/w/8f6PCjRCjUb1GE6RCPDTdfnyLw5YSqTqhgEO/VI+HpuQPRQQP
RQSPf+UilDtV5/Ed/laPPQgWUpEe+tz28W/6+XfOZo0VGjwIDTqhQOraQ5P0xw85nB2h0OChufnj
Hc5m/yg0eGhu/lBE8FBE8FBE8FBE8HifO2m+1N/HT/mbduu0W6rxQ+HDQ/P3B1FD6vZDUcPjQw6j
G6npD8URj19yOBtTAcVDAcVDAcVD0/aH4oiH4oiH4oiH4oiH4ogHccSDOOLBxhdytB9HJgo+slBY
KWwUdgqFQlCoFBqFTmFkIQOKBwHFg4DiQUDxIKB4EFA8wPEfxBEP4ohHxhFHAXl25NmRZ0eeHXl2
5CnIU5CnIE9BnoI8BXkK8hTkKchTMMmBExq+Bgkdtg/fhaiFMchj2fBdaN6ggoVaBLUIahHUwiH6
QKMHrREMQ4NmSWdPkvEoZ2sEVQ6qEwgfdEFi6yQij3I2XSBzxgHlbMywPJ1TCwW/i5pWalqpaUXC
Sn9VXlpdnY0Cola/wjIHBfqi8vZKTatvp1Mq9aquV6NAq1YqWF1BV4dCo16NlnefNiqIGyF6eAAR
POw/7DjsMfAR5dSNRpUz/iMJe5CE/biGejVao1Gv8EupYLqQcipJR/jOS7vfhYSd6uA47DHsKuwV
iDke9gMe+T3IE3M8PGYTczyIOR4erD0uE3M8PBJ77D1HyIE8tmVb7nDzomPhI0g43OCIahMeyDzc
vD4i4Sc9ZdIdk85OquGUl7j9/ZA88VX+Vv2nr+XfaUaT4olJiPykEGESVjDJ60/f5hY12CT3PwkQ
mL7DWbXiJGh+ko+f5OMnzfonufZJaPskRz5paj/Jf0/y35Nm9JPc9iS3PcltTz/mjequSf57kv+e
NKOfNKOf5JInueTpF9yp/p3kkidN5Cc54EkT+Ul+d5LfneR3J/ndSX53kt+d5Hcn+d1JfnfC7074
3Yn5+4S7nXC3U7rbQzIfWSlsFHYKhUJQqBTofo9u1c/pFNCVypPTJU+45Ik19sJ4N+GbJ3zzhG+e
8M0TvnnCN0/M8Qt77wvD5YS3nvDWE956wltPeOsJbz3hrSe89YR/mk6XU3lOQdSCqPYrlVcUZC7I
XKhyQcKChMVP9u1IWJAwkDCQMJAwaMNAsECwoA0DeQJ5AnkCeQJ5Anls9nYw1fIgYdDvDQmrC7gc
+56GAjRatSFzvb92VpoLMLkAkwswuQCTCzC5AJMLMLkAkwswuQCTCzC5AJMLMLkAkwswuQCTNx0w
eTN4bv7aDDcvUZufvPr0raNeb73/wY8//MdPPnvnC3nZm0rf8xemp0pamz/Yrb8Pk/13Df7auYT+
cCO9zub5o9vXJns/O7PTd3jwb4S/jeElifIKYeIEU20hXpzOMb8y4FQiY4eSzaeIehuDkofWysjj
scgjT2NsbIyN5zjDmOYBp1Ev18LCW+aGzBbM8pwPRLDGIHkeQcKOhB0JOxJ2GrwjWHfzUtOOhB0J
OxJ2JOxI2JGwI2FHnu4HIthAsIFgA8EGgg0EG7TYQJ6BPAN5BvIM5BnIM5BnIE9GorMuna0OuJRs
tlk3znijbMQ571ZdZkLSbNlZnwLPikRnRaKzItFZkeisSHQW/jQrAJ0VgM76hHdW3Dl/j4erUWYF
oLMC0FkB6KwAdFYAOv+QW9R8syLRWZHo/A5n1aazQtJZIen8irNq6FmQ0qyQdFZIOisknRWSzgpJ
559zp3pm1v6Y+QMOq5/mD/lb3TUrSJ0VpM4KUmcFqbOC1PkzbiHmSkWbFbbOv+Zw9pbi11nx6/xf
nFXfzwSyM4HsTCA7E8jOBLIzuNGc8evxHIwtVXkmb3BBp2dC25nQdia0nQltZyClmUB2BlKaiV9n
4tcZSGkmbJ0JW2fC1pmwdSZsnQlbZyClmSB1JkidCVJngtSZIHUmSJ0JUmeC1JkgdQZSmolNZ2LT
GUhpJiSdCUlnQtKZkHQmJJ35UL6wV6AwLswEqTO4UWGkmIlWZ6LVmc/lC4PIfGIDAwmD28PX+BTC
B/0+cEKD6nh+PKiXJ8qeQ3uiPKhgUOXwEbrAUe9wI1DloFMc9TKEEfXOzGfnnLo+P9/9Jed6HKEx
K1WuVLlS5UoF05UGU5E4ezkXmwJG4GAqEmd3V2paqWmlppV6ZXwfAFoB3BinblQ6V+72OMUDGxVs
1KtZVN7VkLlR00ZNG6I2erChmQkpBehXMDWaWZEIViSDTRrBHGnGSc+45BmfOuObZzsZlicCFY1T
M/EpHv89qnsA91jtodeDrUdZnPTssdOj5TkwdiTsrhfv8sg2qKCt0jZoQ7N9DQSzydhSBoINBLOB
DASz8qeqL7p00YWLLlt00ZKXqG0XbcpZ5IkXeeJFnniRJ17kiRd54kWeeJEnXuSJF3niRZ54EQK0
yAEvcsCLHPAiB7z8gHbDKHIYWYQJLf/JYbXHIpe8vMNhbCCnyIt88yLfvAguWuSSF7nkRS55eZ87
s43km5efcRiVTbA6wKgXIUmLvPUiAGkRgLTINy+/5JZsYznpRU56kZNehCQtcsmLkKRFnniRJ16E
JC044AUHvOCAFxzwggNecMALANICgLTgZRe87JJe9hB1cKRSaBQ6Ba5Jd7uku32+vWLPFVF3RN0R
dUfUHVF3RN0RdUfUHVF3RE0HvOCAFxzwggNe2I4a54BeeXuxhBMFdK4iRkH4gvDFtyN8QfjiuxC+
IHxB+ILwBeELwheELwhfaN6geQN5AnkCeQJ5AnmwHNsKANJi67Cy40oXXOli9bbSnipRkcedezbv
SoF3ucHPdubtFVHd4OftCHY+x3f5FDJXZK7IbKdY0efzGmrRqEWz0nJ7o3kbwjeatyFzQ+ZG8zZE
bYjaELUhakOM5nfRvA3BOoJ1mrcjT0eejjwdeTrydOTpyNORpyNPR56OPB15OvJ05BnIM5BnIM9A
noE8A3kG8gzkGcgzkGcgz4jXz/dzASYXYHIBJhdgcgEmF2ByASYXYHIBJhdgcgEmF2ByASYXYHIB
Jhdg8oYDJm8U38+CC11woQsudJXIqxpw1WWrLlrzEjXcKhe6yoWucqGrXOgqF7rKha5yoatc6CoX
usqFrt9BOfPh8qWrfOkqX7rKl67ypat86arJ7CrPuWoOu8phrvr8dJV7XOUeV7nHVe5xlXtc5R5X
zVhXecVVM9ZVrm+V61vl+la5vlWub9W0dP2YWmTbyPWtcn2rXN8q17fK9a1yfatc3yrXt+L6Vlzf
iutbcX0rrm/F9a24vhXXt+L6VlzfygRzTY/3LGyOECuub8X1rbi+Fde3MtNc+bQ0znGlIeqOqDtj
YfMRZN6ReWcsbNRrR/gd4XeE3xE+neGKM1zTGR7P8SsQ3j6w8dJimWmxgvAFUQvyFB5YfLvvQtSC
qAVRC6IWRC2IWmjegoRB8wbNG8gTyBPIE8gTyBPIE8gTyBPIE8gTyBPIE8gTyFORpyJPRZ6KPBV5
KvJU5KnIU5GnIk9Fnoo8FXkq8jAG2IxOFW3IY2Wzall/rADubvdyQ56GPA15GvI05GnI05CnIU9H
no48HXk68nTk6cjTkacjT0eejjwdeTrydOTpyNORpyPPQJ6BPAN5BvIM5BnIM5BnIM9AnoE8A3kG
IYbbcCDYQLB0HjnW5EiTkXUOLjm05MCyyXlsch6bnMcm57HJeWxyHpucxybnscl5bHIeG84je3WT
89jkPDY5j03OY5Pz2L7PLSmrvMgmL7Ix/0ql2ORONrmT7V3OZs3kVzb5lU1+ZZNf2eRXNvmV7afc
CVaQqrXJ02zyNJs8zSZPs8nTbPI0mzzNprnVJgezycFscjCbHMwmB7PJwWxyMJsczIaD2XAwGw5m
w8FsOJgNB7PhYDYczIaD2XAwGw5mY0q14Vc2/MqGX9nwKxt+ZWMCteFFNiZQG85jg8cxwOEDg9yY
Um1kFw9MdMOdbLiTjfQJgfVu+JUNv7IxydpwJxsop3P6ksz3eA6gUkdmI2Id4QtOsdOqxad8hFoU
2rkgfAFv6jjO7mtcHaCxTk0L9TJK1X0xcUD3KapcXKDuQd2DuhuKMhg0fA11H7jbwcWDzg0aKmiE
oHOHT9Eaxj0Gc9hBiwXtE7TP8F0oZNAIQU0HTRfUNKhppRaVmlaUpCK853qDBh80uGfZHjcH7TxQ
rYrwFVEr8lSqU/1AP0eBTj3Vr1KvzAZRiWacFoJMDzuZHo5rqEXjOY27mk/RBY3eacgsn3o8Z6Lg
azaO+OKdI9SUcddDrEdT/O7mwREzr6c52N5t3bktsZ6W0qmFjTHXLStR2nbaYEcwW1P3c3wxoqbJ
VII8s91vp+10Gny4wangQOZBg9scrPODxszlhIrlVlY1KrByBVaup1Va+Qd9EbRP+F10StCDtkGr
8aCCw8IjRiCYzdOaGX6pX6EH5sibYXwOtrufmIf9GJo5I9UcgfevclhtvSt62BU97N/gbF6tMGJX
GLErjNgVRuwKI3aFEft38s5Kc6bp79/lb9owl0kqQfCuUGNXqLEr1NgVauyap+4/4BaUMM1/V8yx
/yeH1Zy7Yo5dMcf+Lmelnrtijl0xx66YY1fMsSvm2BVz7D/lTvoih5T9Z/wdFGjvjMR3hSO7wpFd
4ciucGRXOLL/kluyLxSX7IpL9k9fPyfPBWpcoMYFalygxgVqXKDGBWpcoMYFalygxgVqXKDGBWpc
oMYFalygxl8B1HjtH3H8ibwkb90+f+4Xg738ebK8MYwrR6+mDSmw3BVY7r/OPs9Z2a4Ic1eEuSvC
3IkwdyLMnQhzJ8LciTB3IsydCHMnwtwzwjxe5wcWCkGhUmgUOgUGyYbxNoy3IcaOwTfk2XnXjvC7
70LUnWGzIfPu232NT1Gd3dVhkMxZy05G0opz3AlQK15yJ0DdCVD3f/Bw2Xwqew3gozLfqLhUp40k
N+RxynfRTYX2KQxZ6XadndEpGJ1n0RkSnRqRFIc7KQ53pzh0bkOyGe5kM9ydzbDi4p3WkJyFu3MW
OlmhsxSSkPC43XchYSBh0ODdD0TUQNSg6brfhcx4GGJFJ7kzAblZxqESP56DqNUFPGl3gVatLiB8
RXiGcZAUGKD3/YwDu+9CZiz6jAM7D7R9NYS3pXTeZZOxpdgcbAWNl1qxm9sZfe6I2nwElbAaNx9B
eKuo9dC64V7ulhm76L4L4R0HDj+HWrjlO+Y5/Aqq49botLyr41p0ZO6MPwNDG6iEI8OBYAOdHzTv
oF7nXb7Y1yD8QOcdNA6qM+gUR33nEaoz6IvzGp+igoMKJtaTRp4mngbuUPV8Yp6gT/IxjmB5mkK7
xvBUvsbfdwpqhvJ1/lZrFGFGRcFeUbBXFOwVBXtFwV5RsFe0EaEIKiqK34rit6L4rSh+K4rfihCi
omitaJ2hKEgr7yCNuqRowaEoSCsK0oqCtKIgrShIK+9z50JBPVa0BFF+xmH1VlFIVhSSlQ84K9Us
is2KYrMiqKgoJCsKyYqgovIZd2b/ybUXYUZFHr38louyd+XaC6694NoLrr3g2ku69uPmSqFxaqGw
cqpzZKOwUyhcMzgSFCoFP9nP4eIEmAobERqTpcZkqbCU0XAwBWff8DQFEKrg4ws+vuDjCz6+4OMb
M6uGfypgT4WljIJHL3j0AuRU2KzQ8GoF7KnYQJjqF1uGTcLaeCpXIGpxYeMUwhcLTxegI9YDHHk5
+9Q9WCwzHRfcFQgf7gue45Z3g59N1yjwCjemm8X1ci0s/CkGglWLERyhMQNdrZaHCp5vR7X8HN/u
uyq1qPRFReaKzBWZKzJXZK40eKXpKg1VkaciT0WehjwNeRryNORpyNOQpyFPQ56GPA15GvI05GnI
05AnN8w35sbtrHtDwo7puTU6onZssKKrbp+O8J0Hdt+O8N0Xo8/VBfTZrdp9hOp0lMTt3H3KR6hp
d019xKrlU1R5UOXmAlUeLtBNg6Zzxw2qPKjyoMqDKg/6a9Bfg+o0P9DPoV4DVW8M1NYEnDNeOcGb
tGPbSGP0bjR1KkzaTNAYqT5pOKE1n8C1p06F4JuQIw858pAjDznykCOPf+FOS5IvlGuP73DYAuSb
5exDzj7k7EPOPuTsQ84+5OxDzj7k7EPOPoTIhHx8yMeHfHzIx4d8fMjHh4CYkEcPLfWEHHnIkYew
lZD/DvnvkP+Oj7MWGfSGHHnIkYem5iH/HfLfIf8dmpGH3HbgtgO3HbjtwG0HM/LASQcz8sA3B745
mIgHLjlwyYFLDlxy4JIDlxxMsoNJdrDmE7jbwN0G7jZwt4G7DRZ2ngvltbOsXCDJBZJcIMkFklwg
yQWSXCDJBZJcIMkFklwgyQWSXCDJBZJcIMkFkryJIMlr/yjnD2cv+t3UQ2+99+rnHz1f9IWlg/oz
hXntqZn+2PatQ9kJEbp1Ax3bMftubUHZdpTNkVNHkQrjb0ejCupXeEXhgcV3MTh23FJH/QoKWRgH
7Xs6CllQ0eIjmEyhOgWTKQQ63ddQnYLtOHjt3B7UIqhFMOh3nhxUJ6h7IHxQnUDUQFSGfQI46OB2
08GZ5M0UapCh7SZDg45sNx0ZLGQ7LGS7Wcjg1NrNqWUGLdNkwXO1m+fKZFbeY+dtat4Cxmau3Zu5
vHXL+7O8wcrbqbyLyntDvBPD+yu8lcK7JsIOCegi7II8ihP6xKnh1mcrrXX1VD+ebD3sCGats/5Y
SawJ5+0I1hFsINhAsIFgA8EGgg0EGzTUQJ6BPAN5BvIM5BnIM6zz+OpTHklYiWVSvuz8yiAwGChS
2soTU+jUiNSHquCj6rvaCoowmGxkvaqikKoopH6Ls6psVThSFY5U4QpVwUcVrlC/yy0MDtksVcFH
/TcOq5GqopCqKKQqCqmKQqqikKoopCoKqYpCqqKQqiikKgqpikKqopCqKKSCNGRvVIUjVeFIVThS
FY5UhSNV4Uj9iDuz6RWXVOEKVeFIVThSFY5UhSNV4UhVOFIVjlSFI5VwpBKOVMKRSjhSCUcq4Ugl
HKmEI5UFgoZWVeKSSlxSiUsqcUklLqnEJZVVgEb8WwlQKgFKPYEBtJNIpRKpVLbwdBxMJWSphCyV
kKWCB1TcWwUPqOnVjufcKdA+u9+O8AkM1POlBZl9V0HUgqiFVk0f1l9cg6gFUQuiFkQtiFposYJg
BcECwQLBAsECwYKXBoIFggVNF8gTyBPIE8gTyBPIE8gTyFORpyJPdfPOFHh7RcJE7zvACd+67/7W
na/bj2sQtbqAzBWZGcbwYf4yne/Nj+fsFHwXtWjUIrco97NTGs3bEL7RvA2ZGzI3y4wYDZkbMjfe
3vwKX4zMjXZuSNiRsNPOHcE6gnUE6wjWEazTzh15OvLkZL2fWtcRrCNY9ykE6wiGH8Fz9FNpcSH2
HTg8A/LVPgCHZyC9eiz3EOsR8xyaPLbkAJKNm02bDZvNmo2aTdrkuppcV9N0uclRNTmqpulyk39q
36Z++QA5qiZH1b6TZ9NAmybHTf6paXLc5Jaa3FKTW2pyS01uqcktNbmlJrfU5Jaa3FKTW2pyS01u
qcktNU2Om7xRkzdq8kZN3qjJGzV5o6bJcZMTanJCTU6oyQk1OaEmJ9TkhJqcUJMTanJCDSfUcEIN
J9RwQg0n1HBCDSfUcEINJ9QZ5hpOqOGEGk6o4YQaTqixSt3Zy9QZHBvT5QaC3RkuG26pMW9urEl3
RtKWbuk4gvC7C9Ripxa7a8G4kPudOsNuw2M1PFbDYzXmYQ3/1PBPDf/klR2WdHaWdI5X8ORCBQu1
KPjU4KUF4QvCe7gM5Cl+oO/yKUQtiIqVMMfqeJF29mkgs3vHfeEGdzsHEgYSug1d04Sgezqqo2Ax
EDWIAyptGMjsiysyV0Q9C8hckbkic0Xmisz2YXaK511ownk7DX4+h3pVGrxSi0pjVoSv6Hylcyst
1qip3dv5dr+UdzWLSmPm5KCfL23UoiF8Q+bmt9MFFuwUg2axPH7p+WR6ue2vne/mAkwuwOQCTC7A
5AJMLsDkAkwuwOQCTC7A5AJMLsDkAkwuwOQCTC7A5E0HTN54Lp2HAJeP3v/o1Vc++eydN4NU5/eE
+iux67x112Nv98f0F5Hs7Hz5d3Q6w+ypReie1alZmTGBhiGfqoIt4OP5prQTfoGE7UbCjHsZ3DKm
BUy1A1Mdz7HMmGTHlBpmcgqGPN1vx8q6b6c6HePqGE7DcDqG06nXoF6uznCBeg0cgWs6qODAi7nu
g5oO2nnQqoMhotNNbp9Ba7ihBh3X/RwqOKjgoIIZjDoC7X6TmikbKZuo06wcVutmm/SvcjavVmDX
Fdh1BXZdgV1XYNcV2HUBD/1feIDk7ArsuhCIrniuK57riue64rmueK4rnuuK5/oPeZxrm4Iqwutv
52F3ZfZgf4e/GRPdkYMOyPC5Ky7sigu74sKuuLD/hGuxoIEODzTWPet+dPdlr/X3+Dsb5X3+zsYX
ydqAWHoQh3SFnv3nHJaidcWgXTFo/5CzUsyuYLQrGO0KRruC0a5gtCsY7b/izpmCNLD/mr+lf/03
/J26poC1K2DtBKydgLUTsPYMWI9bdwqFQnCNX185slBYKWxc0zjiB3YKg1OFgl/hJ7e8OCOqwU6J
QZg7AKsHGyQGgVQnOO4gNB2EZsBoOIhTB3HqIMbqgDedKLkD3gzCrw540wFvOuDNINDsRMmdKLkD
3nRC4U4o3AmFO+DNYA/GIJrs7HAdxHyDMK4TLnfCZWNI3WpqxbQOnipVaZ/qu+jcQkNVP4fqFKpj
bak0VKVTKu2TzLWDkLGfilSocvW76JTqV1DlStPlBptByNhPbak8OahOIHzQCFab6rejNlYka0ul
eYM+DRoh0PBGy1tJrAlheejK8Lt4srugoeoNmauP0LwN4RuiuncqFaz0srvALe92blSwUa9Kvarr
5SPUyw3udq7Uy23oFnOzNPrC9WqIelaH7na9Tgl5e7PwiGEJz9t9sa9B1EZ3N+yrIXxD+IZq+Uin
Fp1adAaiRk071em0fKcWnZbvtDMBAZHAIIAbL16BWXVarGNE57uoF74c4Or0wgBX+N3jdhrcEg5e
MdAxyzyozvDFdIqrM1ygXoO+GPTFoC/wuCziDCLLQfiI1z2O6PbhttBT8mH5qPTZ6aqHKj6+yi30
dLbRUMA0vs7hvE2R01DkNL7FWZRh0EEZvgwFVUNB1RBINhRLje9wLWqSyOD4Ln+rVcf3+FuNOxRv
DcVbQ/HWULw1FG+NH3IL3ZCtPxRvjbc5rL4YgtaGQqjxI86qqYdiqaFYaghjG8LYhjC2IYxt/Iw7
6Qs6Qajb+AWHaW+6RTHQEA43FPoMhT5Doc/4hFs+74vnwTD911AwND7jsPR0CKIbgujGbzibjazQ
Zyj0GYQ+g9BnEPoMsLqR8c3xjInCzKmFwkph4xqf2ikUCkGhUmgUXMmVwsap1N0MWY5TPHmnFju1
UFxyXMNLd6qzI/yOhDvC77xr95MLzwkKyLz7CMIrUjmOdI74lI9QiwxHhrszO/C4fWQhfA2d4i4I
30V13OBuuqA13IZuMTdLoS9cL1en0BdBYwZteErI24NOCcSQhMcRmtfyBNXxAwMdC/QnEPV8oOuF
8EG9zovpr6BeZ4EKBhUMOiVcHa6prk6jwMXV9RqvnXDnAkwuwOQCTC7A5AJMLsDkAkwuwOQCTC7A
5AJMLsDkAkwuwOQCTC7A5E0HTN74r3jmN/ErnvmL+Ypn0mPvj2n+i7h4dgL65y62GrjTz1MYRcUk
KzqsaPIooPkVha8o/HkxOlzR8/MubKGi3mcBE6iod7Xqot7VGot6+67GwNJcL57TMNKGzA2ZG8be
ELUhaqMWCjSPBzIYWp7mtzNyWsKG8M0XM/hY+EZfNIa+xljaqU7nVKebmgv0l6vTfYS+aHRcY6hx
vbrvohG6L6ZTuu9iFGq0avdzaB9XuftihhrX/awgLXbW1LfTYsRqRLeEZcdd9HKnc4eP0AgdNe60
RqeXh+9CJQjRHJtlxHXcRSO4ysRgGXUdp2ix4QK6MVxTH6GmxEwZCZWnop/QT9UPjXg2WZ6gUbuv
8JGhK/Lnq/r5mn6+rp9v6OebeYubVg1Znr6ln3/m8F1/f5u/H/r7X/h70t//qp/v6Oe7+vmefv5N
P/+un//gzll/f18/P9DPD/Xzn1y06O+39fOOft7Vz4/080o/P+aWVX//RD/v6ed9zm76+6f6+Zl+
fs7ZXX//Qj8f6OdD/Xykn1/q52P9fKKfT/XzmX5+pZ9f6+c3+vmtfv5LPxmwHoU7hQeFiQIaPDCt
EZxaKKCmo3Jko7BT8O2NIygVKpgh7FHwNT6V+kTAestQ7ygg/O4j1EIh7HFkojBzytdQ092nqJdi
2eOuhcLKKSqo6PY45SOFAg2VsewtQ8bjCBXcqeBOBRXLFqYm5emsoOp1PKdQ4BVnBWlD1fQ4wrsK
9XItLLMFKwifMfotI9fy9OLJfmDnGgtPIahF0CnnEaoTdEHQBUEXBKIGomYse3vxQD8H4YNmCRrq
fDINFdQiqEVQwUD4io5ZnkpfVF5aEb7yiuqLEb4ifKWdK6JW2rkiWEWwimAVwSqCNdqwIU9DnoY8
DXka8jTkacjTkKchT0OeRr8HOu8uaEiYzvWWnVLwsgUvW3CuxzW8orvjeFdH+I7wHeE7wneLYcEQ
o2Oe7spuJUEzczZyyz4t+MuCUyz2bjcC0xuB6e3s5e6X+l1UGY+Xfqzgx47bqQ4uzL7LTss+yH7G
3sOOIn3C8UBfjKpb2YZr4duR2UNujrQ31fwm1bsxOqWW3nT1La9V7W5y5Dc58psc+U2O/PZN/cht
3/5ZP9/Wz7/oR775Jt98k2++yTff5Jtv8s23/0Aa1zmllZO+yUnf5KRv/6kf+ebbO9ySNZOTvslJ
315xVu1y+7F+5KRv73E2q/++fuSkb3LSt5/rR775Jt98+5A7Ubq019tH+Xea7e2X/C3rvcl/3+S/
b/LfN/nvm/z37dfcgkamnd/k0W+/5bDU6SbXfsO133DtN1z7Ddd+S9d+FBYKK4WNwk6hUAgKlUKj
0ClgdY1X7E8UEGxHsB3BdgTbcV0N428ItiOqfXND1N0FZN4xkoYuNR+hFrsLVGenOjvV2V0dTKVx
TWGYyxHw7hdIB+56/F0Pv+u2e16bl3w1b9GQWe6ysbts7C4bu8vG7rKxu2zsLhu7y8busrG7bOwu
G7vLxu6ysbts7P4f+pFF3WVRd1nU/T+RRh11l2ndFfbeZVF3WdRdYe9dhnT/CXeqZ+8Ke+8ypLsM
6S5DusuQ7jKkuwzpriD3riD3riD3LiO5y0juMpK7jOT+q9fOlXMBGhegcQEaF6BxARoXoHEBGheg
cQEaF6BxARoXoHEBGhegcQEaF6DxlwIaVwqq15eC6pN3P37/o08lQ5766LNPn5/3FxHXlLumKHcN
aHdNUe4ax+6MY3fGsTvj2J1x7M44dmccuzOO3fkk8MbU/EaEcWdkuzMzuRFz3Bni7gxx9xzijmv8
ik4hrZgh7s4Qd2eIuzPE3XOIO57D8KWQ5TjFoNcRbOddO9XZfbGvKRSQeUfm3TL7GmTekdnDl2Kg
8tClj/yL4S6jn4eGr4ce89BDHooMHhq1Hhq1Ht/gzrxFw9dDw9dDw9dDw9dDw9dDw9dDw9dDw9dD
w9dDw9fj33kqnjZjr4cGtMf383BGYg+NbA+NbA9GtoQZHhrZHhrZHhrZHhrZHhrZHhrZHoxsAy+c
YdyDoCGjucf7/C1VemjQe2jQe2jQe2jQe2jQe2jQe2jQe2jQe2jQe2jQe2jQe2jQeygyeMhsHjKb
h8zmIbN5YDYPzOaB2Twwmwdm88BsHpjNA/f/wEgeuP8HtvHANh64/wcm8cAkHpjE45yaDzz64F07
Eu6Y6ODtO6LaNhwID+TZ/UAE2/1kP4da7L6LYHmg4oNaeLI+qE4a0h3I4c6M/IFFPQgR7szR7zkj
f/4zbezOjPzORHySNFNwWIJPlb8l/+TXqxqT3jn5jfkY2eEkO5xkh9M3uMgvUbdN3+RvP71TUO9N
stVJtjrJVifZ6iRbnb6TtwRV1OS8TLLe6XscVntNMuNJUcj0H5yVak4KRyYZ7SSjnRTgT7LVSbY6
vcudEwXp8vQj/l4orBSyMWXYkwx7Uuw/KVKZFKlMP+WWbG9Z7yTrnX7B2Wx2mfEkM55kxpPMeJIZ
TzLjSWY8yYwnmfEkM55kxpPMeJIZT5jxhBlPacbH64MjE4WZwkJhpbBR2CkUCn5OpdAodAqpEdjz
hIubsN4JFzdhtBN42oQfm7DMCcucsMwJy5zwYxN+bCIenzC2Cfc1gZXNunnWrbNunHXbjFoHZpVo
wayHzF/lsJ4+y35m2c+M/SQ2NMuPzbKNWbYxyzZm2cYs25ixjYptJIY0f5e/7xTo04QLZjm9WdYy
y1pmubhZRjL/gFvUyLOsZZa1zLKWWdYyy7PN8myzDGCWAcwygFkGMMsAZnmtWXo/S+9nea1Z6j5L
3Wep+yx1nz9GKHX4LL2fpfez9H6W3s/S+/k33CLVmGUAswxgxgBmDGDGj83o/Yzez+j9jN7P6P2M
3s/o/Yzez+j9jN7P6P2M3s/o/Ywfu4OVzBjAjAHMGMCMAcwYwIwBzBjAjAHMGMCMAcwYwIwBzBjA
jAHMGMCimxfduujGRbctumnRLYu8xCItX6Tli+aYi5R7kXIvUu5Fyr1IuRcp96IgbdEwv0hfl3+j
bXYKKZY0eGG8T3RmkSovGu+XH3I2pZcqL1LlRaq8SJUXqfIiVV5+zJ24sgROl5/wd9b9vfw78Zjl
ff6Wli3S+0V6v0jvF8b7hrkmArPIEhZZwiJLWGQJiwb+5RNukUossoRFlrDIEhZZwiIPsMgAFhnA
ggEsGMCCASxpAMfTZ464sFBYKWwUdgqFAqFB812VQqPQKWRTYhILrmDBEhYsYcESFixhwRIWLGHB
EhYsYcESFixhwRIWLGFJSzhk9nMQLE1i1VNWPWPVE1bdv/puvXzVvatsY/0aZyXRKiNZZSQrgVMi
5qusZZW1rLKWVdayylpWWcvKwN/c4CmV7GfVeL/KWlaN96uMZJWRrBrmV9nGKttYZRurbGOVbayy
jVXD/KphftUwv2qYX6Xuq9R9lbqvGubXD147IcsFBFxAwAUEXEDABQRcQMAFBFxAwAUEXEDABQRc
QMAFBFxAwAUEfHlAwGv/xOIPbCcpq4xslZGtMrJVRrbKy6yyrVW2tcq21l/T0tnxMrJVRrbKyFaM
bMXI1jPMalaVwamJAuF8fsCzYnYrZreCP9z5rGbF/lbsb8UTrZjditmtmN3Kl1V3NmXc+XZyxRBX
DHHl8+c7WMeKRa5Y5IpFrljkikWuaZHH7b4GmXdk3pF5R+YdmXdk3mmxtMiscFY3K5tVzYrm6LLJ
EDc5qU32t8n+NuyvE+ILSimbDHGTIW4yxE2GuMkQNxniJre1yew2md0ms9tkdpvMbpPZbTK7TWa3
yew2md0ms9tkdpvMbpPZbTK7TWa3yew2md0ms9tkdpvMbpNP2aTum9R9k7pvUvcNn5LA0Sa936T3
m/R+k0/ZpO6b1H2Tum+o+4a6b/iUDeXecCUbOr2h0xuuZEOVN1R5Q5U3VHlDlTdUecODbCjuhuJu
eJANfd3Ay+6AYhuKu6G4G4q74Uo29HVDXzf0dUNfN/R1Q1839HVDX/PmvDVvzNvyprxll77u0tdd
+rpLX3cFVbu0c5d27tLO/V+oXb5KarpLTXep6S413aWmu9R0l5ruUtNdarpLTXep6S413aWmu9R0
Z4KceN8ufd0JoRLo24mcEr7bpcG7NHiXBu/S4F0avEuDd2nwLg3epcG7NHiXBu8asHcp7i7F3aW4
uxR3l+LuUtxdirujuDuKu6O4O4q7o7g7irujuDuKu6O4O4q7o7g7irujuDuKu78Yg/EJiT7uqPJ+
zg+GjyDqjqjW6UF1dmTekXlH5h2Zd2RGLcGw7qCSd1DJHS3f0fL9DJiG3+6XUovU+8STjBgNBtoB
lpIAXUJJRpByC5OBpMToCu2WCF2RtRRZS5G1FFlLkbUUWUv5Z+5k7p4oXfk2f+tdD6C5B5R2D3YD
FXmAItMqMq0i0yrf49qJghqlyNjKv3NY/VJkdUVWV37AWXVWkfkVmV+R+RWZX5H5FXmJ8oo7NwrZ
dD/m70IhKGRjy6UUGWSRQRYZZJFBlp9zSzaWLLPIMsuHnJVel4/4W2pQfpl/58adIqMtMtoioy0y
2iKjLTLa8hvulF4XWW+R9Rast6T1HhfeOfKgMFGYKSwUVgobhZ1CoRAUKoVGoVPIemK0Bf9TsNWC
rRbipYKJFky0YKIFEy2YaMFEC26nYJAFgyy4nYL5FcwvccXE93LXS3ICPtji9GCLU6JWud/lARAa
srGQjcXXOSvhQ8YWMraQsYVcU8g1hcwm/pU7VwqqbXyHv3cKqCySy8ZC7itkUSH3FTKk+D63VApq
npBDix9yOGsp0wqZVrzDWbVgyMZCNhbybKFILGQ2IbOJ9/POxOYeYHPxU/6WJsTP+FsKEfJ1IYsK
WVTI14V8XWA/CeaF7CdkP/EpZ7OfZEghQwoZUsj7hewnZD+B/QTeLzCbwGwCswnMJjCbwGwizeaQ
wdcUCkGhUmgUOoVsbbZkPsDuAkMKDClY03mAlwUWFVhUYFGBRQUWFVhUYFGBRQUWFVhUYFGBRQUW
lTBUwk4VXctNebnxJzGjhIqq7KfKfir2U9FxniVDqt/ksISqsqgqi6rf5my+SaZV5ZGqPFKVtVRZ
S5W1VPxPxc0h3n/k34lkVQwpkawq+6nySFVmU2U2VR6pvsst6qsqs6kym4ojSrCryn6q7Ke+/9oZ
JS4I4IIALgjgggAuCOCCAC4I4IIALgjgggAuCOCCAC4I4IIALgjgy4AA3vBMJLfPn/ompB+RJP/n
/377ww9e/UWcCUdfyHSqvH2Vt68akqqGpKohqWpIqhqSqsLvqpGoaiSq8uT1Mzpa5lg1ElWNRFUj
UdVIVDUSVUaiykhUGYkqI1FlJKqMRJWRqDISVRx4ZQCqDECVAagyAFUGoMoAVHHglXGnMu5UHHhl
uKkMN5XhpjLcVIabynBTGW4qw01luKl8D/7gg6nKuFMZdyoffT/4QCm/Fkr+mcYAlB8gJTaVZDKJ
MzUNQE0DUFOQ3L7BnQzhPJkBiFd8i78ldtNI1OTbmwagpgGoaQBq3+WWFEcjUdNI1OS3m/x2UwDc
NMo0jTJNo0zTKNM0yjT55KbBpWlwafLJ7Se8MWuuwaUppm3S8iYtb9LyJi1v0vImLW/S8iYtbx/z
VEKihOea9L7hgRORa/LATXrffs1ZaVKTATQZQJMBNAygYQANA2h8mPdg09EDFK4BGD4A1lraxnFk
4chKYaOwUygUggKa1H1Xo9AppD5hLQ1raVhLw1oa1tKwloa1NKylYS0Na2lYS8NaGtbScM4NI2ns
lXiAXzW8dGIgCUwkEJH4Q/Kudd+rVyv/clHa5dLx0jxJzln5l4vyLxflXy7Kv1yUf7ko7XJR2uWi
tMtFaZeL0i4XpV0uSrtclHa5KO1yUdrloiTLRUmWi1IqF6VLLkqXXJQuuXS8K5WVd1Xi49KJTmkD
WYKyG5fO7I6mkUkou3FRduOipMZFSY2LkhoXJTU+7iSaSPyiYxIJWnR8QgIUSnxclOa4KLtxUVLj
oqTGhaTGx013jrjwoIBtDB+ZKSwUmGjkripyGRdSGBcSFhcSFhcSFhcSFhdSDx/P8SuytlgC+YUL
+YWPixFjR8IdMXaes/ualQLT+GHhkXlH5p3QcfgIwu8Ib98yqGCaDWmFC2mFS16RkEqy/g3fD2rA
CTeGmmdgSLnNSQk6i9JxFqXjLMrCWZSFsygLZ1GqzaJUm0WpNotSbRal2ixKrFmUT7MojWZRGs2i
NJpFaTSL0mgWpdEsSppZlDSzKFdmUa7MolyZRSkyi1JkFqXILEqRWZQisyhFZlGKzKKEmEUJMYvS
Xz5PzBItmtjLpYSYRQkxj8PqfWXGLMqMeRyeKMwUpAtKmlmUIrMoRWZRZsyizJglM2NOpEuc2OGl
FJnH31IM5co8/s4uxtuQNLOQNLOQNLOQNLOQIvO4PShUTq0UNk41juwU/FLf3jni5/gunxpZSNMi
RWYhRebxnJGF8DUPjvhiGjio6U690urInlnInlnInlmcPXMCJZlAScieWZw0cwIpIWlmIWlmIWnm
cQ0vldWFGLNDjNkhxuwQY3aIHzuefC/9nHnNRYt9/L1TsLj5vK/pR9lwxZgdYswO8WNH8mNPICZT
IiYhouwQP3aIFjtEix2ixQ7RYodosUO02CFa7BAbdogNO8SGHWLDDpFgh0iwQyTYIRLsEAl2JAn2
RD50kWCHSLBDJNgh7usQ93WI+zpEeR2ivA5RXocor0OU1yHK6xDldYjyOkR5HaK8DlFehyivQ5TX
IcrrgPI6oLwOKK8DyuuA8joguA4IrgNe64DXOuC1DuisAxbrgMU6YLE+mgSFyLzi8FqHea0n8opD
Zx1Pp9lUF5B5dwHhd4TfEX5H+B3hd7SuYmPVd6GHlbGjorvVt1PTnZru1HTvFKhXcb38UrXYLX8Y
WwSjhNhoQyS0caPlah7WY8VGG2KjDbHRhthoQ2y0ITba485GQbLdMJuaz/p2/i38JMRYG2KsDTHW
hhhrQ4y1Icba4xZ1kahrQ9S1cfv+a+dOuACBCxC4AIELELgAgQsQuACBCxC4AIELELgAgQsQuACB
CxC4AIEvHxB47Z9I/G7uh/fe/viDV598cXko/qe3/U/V/nM+m/gz6/zxq48+/PjTv3bN/xfZN/6b
bBm/ePvTd997vZ3g6r+2rvhfJif5A83zZ6Yn+fX7H/zow1//zrM+f85fzjpy2LWcg5JPhZJPhZJP
HWc16CoLVSgLVSj5VCj5VCj5VCjnVCjn1HEn460QtsgsVBOZjyayp04JCIXyUoXyUoXyUoXyUoXy
UsWNSFZIUChBVSgdVSgLVSj5VCj5VCj5VCj5VCj5VCj5VCjVVCjVVCjDVJBhKsgwFWSYCjJMBRmm
ggxTQYapIMNUkGEqyDAVZJgKMkwFGaaCDFPhDFMTGZ2mRLeCVFNBqqnjFM/ZEXVHVAeVjVfsyLwj
847MOzLvyLwj847XajioNjhFNNYtGB6o04Y79dq5K4NK5ZMKpZGKux+F4xeQFEosFXdeLlgplGEq
lGEqlFjqOKsqKsNUKMNUKMNUKMNUKMNUKMNUKMPUcafaRKmmQqmmQqmmQqmmjovUXso5Fco5Fco5
Fco5Fco5Fco5ddyillXyqVDOqVDOqVDOqVDOqVDOqVDOqVDOqVCqqVCqqVCqqVCqqVCqqVCqqVCq
qVCqqVCqqVCqqVCqqVCqqUMo9bJyToVyTsVdtiGy4hBZcdyZpvXsLhkJrMUBa3HAWhywFgesxXE/
Z2c9OLJS2CjsFAoFX1wpNAqdQuoBtgE1cUBNHFATB9TEARFxwD8c8A8H/MNxPyPHztt3BNsRbPcp
BNsRbEewVHfRDodoh0O0wyG24RDbcIhtOMQ2HGIbDrENh9iGQyTDIZLhEMlwiGQ4RDIcIhkOkQyH
SIZDJMPxIJrrttN8tVRZJMPH4RRFOi2S4Xig0yOrJJ0WyXCIZDhEMhwiGQ6RDMeDidJg4BJcFg/c
haCxeOAlBIOF2IZDJMMhkuEQyXCIZDge+AQhXiG24RDbcIht+DirnhbtcIh2OEQ7fJxV94t/OMQ/
HOIfDvEPh/iHQ/zDAf9wwD8c8A8H/MMB/3A8TgMQQhYQEQdExAERcUBEHBARB0TEx+2+plHoFLLL
sAQYiQP+4YB/OKAdDmiHA5LhgFs44BYOuIUDbuGAWzhgEg4IhAO64IAuOB7ntEjgXUz5o2eICjjE
ABwi/o0JHzhwPiMvk21MjPcjb5ORiAo4kvh3SpgvRPMbovkN0fyGaH5DNL8hmt8Qqe/zDDGRsjmR
skia3zkhshDN7/G3GlJ8vyG+3xDNb4jmN0TzG6L5PW5Rk4vvN8T3G8n3Oye0FqL5DXH5hrh8j7Pq
HJH6hkh9Q6S+IVLfEJdviMs3kst3TtgtxOUb4vINcfmGuHxDXL4hLt8Ql2+IyzfE5Rvi8g1x+R5P
3Slkp8pIxO57HM5Oxlqg+Q3T/M4J1AU0vwHNb0DzG9D8BjS/Ac1vQPN7PKdR6Jzy2/0KXzM44os5
kvYDA3DAABwwAAcMwAEDcMAAHDAABwzAAQNwwAAcMAAHDMABA3DAABwwAAcMwCEG4BADcIgBOMQA
HGIADvH9hvh+QzS/IZrfEM1viN03xO4bYvcNsfuG2H2fGye5rudEKEN8v5F8v3PClCGa3xCXb8yY
hFDIEKlviNQ3ROobIvUNcfmGuHxDXL7HnRMFtarYfY+/1bgzRiKQMcT3G+L7DfH9hvh+Q3y/Ib7f
45aNgnpDDMAhBuDjcDavzEZUwCEq4ONsUMh2l/2IHDhEDhwiBw5xAoc4gY9b0LlECcUSfPw9slBp
7wTERCAcIhAOEQiHeINDvMEBb/Bx053Cg1N3CtiY0K+AUjigFA4ohY9rfGSlsFHYKRQKQaFSoJrV
D/RzOkfohMq4Uf3A1F3MDyLigH844B8O+IeP2xFjR/i0Q4iIAyLigIg4ICIOiIgDIuKAiDggIg6I
iAMi4hARcYiIOEREHCIiDhERh4iIQ0TEISLiQ9i8VgYpRuIQI3GIkTjESBzLt187+8gFBVxQwAUF
XFDABQVcUMAFBVxQwAUFXFDABQVcUMAFBVxQwAUFfJlQwBuTpuTpK8/iyFcqSVIoSVIoSVIoSVIo
SVIoJVIoJVIoE1IoE1IoE1IoAVIoAVIoAVIoAVIoAVIoAVIoAVIo3VEoy1EouVEop1Eop1Eop1Eo
p1Eog1Eog1Eog9HR/FbQ7CVZrXIaHYez12S+ymkUC8aaX08pudHxt7RTWY5CWY5CWY5CWY5iOW20
YaMJqJD36DiCLgsoOQoL1/jiicJMwdesFLCtxFVmcBVyI8Vy+srmI0GhUqCZWuFIp5AthI2SJClI
khQkSYrltNHG2Nl4xe6aNo4wZjTetVOvnVrsyLwj2I7wCUTMQBNkVAoyKgWJlJ6v6QifBq2MSqGM
SqGMSqGMSqGMSqFESqFESqFESqH8SaH8SaH8SaG0SaG0SaG0Scc71U7KnxTKnxTKnxTKnxTKlhTK
lhTKlnTcqYZV2qRQ2qRQ2qTjrFpb+ZNC+ZNC+ZNC+ZNC+ZNC+ZNC+ZNC+ZNC+ZNC+ZNC+ZNC+ZNC
+ZNC+ZNC+ZNilWmJtDhEWhwiLQ6RFodIi0OkxbFiPx11SIhGNMaRNMYz+ItojEM0xrESRybwAp9x
wGcc8BkH7MUBe3FAWhyQFh/PwUgSAVlPs0mAAxrj40hwxKd8pFLAWrqP4Ox640hqD2YDn/FxTecI
1dmpzk51dqqzU52d1kjbgMY4oDEOaIwDGuOAxjigMQ5ojAMa48h6Zi2zjjnTzEEg6yIa49hwbYkX
iM84xGcc4jMOsReH2ItD7MUh9uIQe3GIvTjEXhxiLw6xF4fYi0PsxSH24hB7cYi9OMReHGIvDrEX
h9iLQ+zFIfbiEHtxiL04xF4cGzFi4hqiMQ7RGIdojI+zUj3xGYf4jEN8xiE+4xCfcYjPOMRnHKIx
DtEYh2iMQzTGIRrjEI1xbKh7oiPb6UASH4HYOCA2DoiNA2LjgNg4tlPvh6/ZKOwUCoWgUCk0Cp1C
9jOqDMNxwHAcMBwHDMcBsXFAbBwQGwfExgGxcUBsHBAbB8TGAbFxQGwcEBsHxMaRN++4nIGnSfgn
H7VjtYn75PPyaeI8Ps5KOJEfh8iPQ+THIfLjEPlxiPw4dsb7wRiSmMfO1EqARogO+fg7BZIBiBc5
xIsc4kUO8SKHeJGPW9QKIkgOESSHCJJDBMkhguQQQXKIIDlEkBziRQ7xIofokEMsyCEW5BALcogF
OcSCHGJBDrEgh1iQD2my6WQAokMO0SGH6JBDdMghOuQQHfLzJEEYS4gXOcSLHOJFDvEiB7zIAS9y
wIsc8CIHvMgBL3LAixzwIge8yAEvcsCLHPAiB7zIAS9ywIscsCAHLMgB+XFAfhyQHwecxwHnccB5
fNT5TsF3IWHizQuQEnTIAR1yQH58XONXIDMqjEnAeRyJzCQSU/yEhYLaSuhJJHaSG5gWYCMRG4eI
jUPExiFi4xCxcYjY+LhFTS2G4xCfcYir+Dib4mjgF2lxiLT4OJtSygDEVRziKg5RFIcoikMUxSFm
4uNO9aIoikMUxSGK4hBF8XFRVlKWIK7iEDNxiH44RD8coh8+bukU1K4iJA4REj8fjmxlGYkIiY/D
NwrSE1EUH3+r48VVHKIoDjEThwiJQ4TEx7UTBXW3KIqPv6VY4ioOcRWHuIpDXMUhiuIQRXFAURym
KF4AUaAoDiiKA4ri45qNIwsF37Vxzc4RFwqFoFApNAqdAqqWW8QWtohBYxzQGAc0xgGNcUBjHNAY
BzTGAY1xQGMc5bSxwAwCeXZkTt+xANfAcBwwHAcMx8c1gyMU0uoSTsqqJGqULwvuTtxnAfcJmkKQ
Tojq+PhbtRXnccTXXzsjxwUBXBDABQFcEMAFAVwQwAUBXBDABQFcEMAFAVwQwAUBXBDABQF8GRDA
G/OBwO0rz+JoGFDWpVDWpVDWpUN0dLiiU/pEJJSQ6fhb3aTMTKHMTJF5mBaIWYIRQh+PhNIvhdIv
hdIvhdIvRaZfWkhrs/CliNIvHX/T/YkJLGACyswUSsgUSsh0nFXvKjNTBMNJo/8SDFCKplCKpuNw
dqMGGOVqCuVqOs5mp8rnKkVTKDNTKCFTKCFTKCFTKCHTcSdtmtsrlKLp+JtBveFwEgNQ9qZQ0qZQ
0qZQ0qZQrqYI/HLDSBIAUPamUPamUPamUPamIHtTkL0pyN4UZG8KsjcF2ZuC7E1B9qYge1OQtCn+
f+z9aXPjOLIoDP+Vuh+q48yJZtmW5e1GVNRbkuzpfu7MdEdXzZ153i8OSoJsTlGkhqS8TJwf/4AC
oZULAGIH7pxbLWshMhO5I5GJhzaN8NCmER7aNMJDm0Z4aNMID20a4VlNIzyraYRnNY3wiKYRHtE0
wiOaRnhE0wiPaBrhEU0jPKJphEc0jfCIphEe0TTCI5pGeETTCI9oGlUVThX/VTVAiOlGFctVvIUm
M43QZKYRmsw0QnOYRmgO0wiNXxqh8UsjNH5phKYujdDUpRGaujQaY2mZYGVW5V7QHKYRmsNUvl2B
guQHjV8ajbH8VMkYNHVphKYujdDUpRGaujRCU5dGaOrSCA1bKn+JNVmVbBljkbjHdvEem6EqhYEm
M43QQKYRGsg0GiPZQI2AR2Nsc+8x/1e5BNQaeDTGxrfKJaAewSPUI3g0xkJS5RJQs+ARahY8Qs2C
R6hZ8Ag1Cx6hHsEj1CO4/CU2eVX2AHUNLv+utvkd/13tNxIS3Ed4hPsIj3Af4RHuIzwa72xulUnA
DYVHuKHwaLyzuVVuAXcWHuHOwiPcWbj8zj1+Z/vA7a+2H1XMh+UHtxge4RbD5XPwXj5sv4OBv8Mb
8YC39QEjWMkYbkM8wm2IR7gN8Qi3IR7hNsTlz7dPHuEXGPg7DPwdBv4OA18J22T7FETT6upUxfoV
q1c8XSUKUffhEeo+PELdh8sHIOCrNsTXOHpE3YdHqOnwCPUaHqFewyPUa3iEeg2PUK/h0QTL4QPW
x1VIiZoOjyZYDqvSftR9eIS6D48mWA6rIBK1IR6hNsQj1IZ4hNoQj1Ab4hFqQzyaYDl8wMxQxZkT
LIdVEIk6FJd/V2RB4oc6FI9Qh+IR6lA8Qh2KR6hDMTTaVfyGWhWPUKviEWpVPEKtikeoVfEItSoe
ocbEI9SYeIT6EY9QP+IR6kc8Qm2IR6gN8Qi1IR7hNsQj3IZ4hNsQj3Ab4hFuOjza9hq+weX7uNfw
CPcaHuFewyPca3iEew2PcK/hEW4xPMIthke4xfAItxge4RbDI9xieIRbDI9wi+ERbjE8wi2GR7jF
8Ai3GB7hFsMj3GJ4hFsMj3CL4RFuMTzCLYZHuMXwCHcWHlVqqNI+lR6pVEWlDapEHWooPEINhUtS
IahRZ+ERaig8Qg2Fy08RKqiz8Ah1Fh6hzsIj1Fl4hDoLj1Bn4RHqLDxCnYVHqLPwCHUWHqHOwiPU
WXiEOguPUGfhEeosPEKdhUeos/AIdRYeoc7CI9RZeIQ6C49QQ+ERaihcQopojToLj1BD4RFqKFx+
ijYAdRYeoYbCI9RQuPwU7QrqLDxCnYVHqLPwCHUWHqHOwiPUR3iE2gePUNfg8gFoN1H74PJvtKmo
j/AI9REeoT7CI9xHeITbB49w++ARbh88wl2Dy0d9xS9G+KNr/OIGfzTG79ziF3f4owl+cY8/2j7w
Ab+zffL2ORP8Yvurh+pX1SWBG3xJAPcaLt/B6FRJ7hsc8uLuwyPcdHiEmw6PcNPhEW46PMJNh8uf
b7+D8aqkBfcaHuEWwyPcYniEWwyPcGfhEe4sPMKdhUeVVq0ycpWCrPRipQ5R++AR6ho8Ql2DR6hr
8Ah1DR49YCGpYnTUPniE2gePUPvgEWofPELtg0eoffAItQ8eofbBI9Q+eITaB49Q++ARah88Qu2D
R6h98Ai1Dx6h9sEj1D54hNoHj1D74BFqHzxC7YNHqH3wCLUPHqH2wSPUPniE2gePUPvgEWofPELt
g0eoWfAINQseoR7BI9QjeIQaAZdoo/1CHYFHqCPw6AGLRJVjQK2BR6g18KhqBHyDswuoEfAI9/8d
4f6/I9z/d4T7/45w/9/Rw07NV/kH3PZ3tG37e4PvdeC2vyPc9neE2/6OcLffEe72O8Ldfke42+/o
YY+58a/uMKh3GNSqye8NviWCm/yOcG/fEe7tW34Hr3WHYa6YGzf5HeEmvyPc0neEW/qOcCff8jkY
1Lvti62IPkjvKOBTAT4V4FMBPhXgUwE+FeBTAT4V4FMBPhXgUwE+FeBTAT4V4FMBKlMB0gsG2ucb
7OY75NFyFYNPxVshJltBDwfjyIaaIRCrdTmtoptWdHMrBpsdEEMtFkg+/Nff0gT06zGB505BXq1q
YtAAqjEaQDVGA6jGaADVGA2gGp9j9kbVM+Nq7hQaLjVGw6XKT1HwgqZMjdGUqTGaMlV+ikS1GjeF
hkuN0XCpMRouNUbDpcZouNQYDZcqfznEL5BlRuOmyr+RZKO5U2M0d2qM5k6N0dypMZo7NUZzp8Zo
7tQYzZ0ao7lTYzR3aozmTo2ruVNo3NQYjZsao3FTYzRuaozGTY3RuKkxGjc1RuOmxmjc1BiNmxqj
cVNjNG5qjMZNjdG4qTEaNzVG46bGaNzUGI2bGqNxU2M0bmqMx02N8bipMR43NcbjpkpiYNNddX/B
A6jG5zutXfWDwZOoxngS1fh857ZU+Ts8kmqMR1KN8UiqMR5JNd6OpMIDqMbnO62N0i/lC/yrrW8y
xj+vwt2bKhM4xpOoxngS1RhPohrjSVRjPIlqjCdRlT/HDFolB7ezqbaTqG6qdOEYz50a47lT4/Od
Zp9g8t5t4cF4VWJzsX0cArSaO4XGTZVv4+2o7hhdbB+NoK8mUd3gZCGaRDVGk6jGaBLVGE2iGqNJ
VOML7OxMMLpVsrCaTVVNorrBnUyrSVRoANUYDaAqP60gRTKGJlGN0SSqcTWJCg2gGqMBVOOLf+Bf
bpFDyKAmtuXfW2Qw/e8rKiGpq/rbora2Y9TWdoza2o5RW9vyJ2hfUH/bMepvO67621bdbFHL2jFq
WTtGLWvHqGXtGLWsHVcta1Gn2jHqVDtGnWrHqFPtGHWqHaNOtWPUqXaMOtWOUafaMepUWwKFGAG1
rB2jlrVj3LJ2jFvWjnHL2jFuWTvGLWvHuGXtGLesHeOWtWPcsnaMW9aOccvaMW5ZO8Yta8e4Ze14
27IWN6gdbxvU4r60Y9yXdrztS4vb0Y5xO9oxbkc7xu1ox7gd7Ri3ox1v29Fum89ue87iVrNj3Gp2
fLEzKffYHauShaj57HiAVQFKHY6rLrSo5+x4gLkIZRDHgy0zIThR89lx1XwW9Zwdo56z4wGWjXss
GyhLOB5gs3NfgYCFBMXpY9SXdlz1pUXtaMeoHe0YtaMdD7D9ucf8X7XzRH1px6gvbfk2QgA1qB2j
BrXjARaSKpNXdapFDWrHqEHtGDWoHaMGtWPUoHaMGtTCXz5gslaJPtSytvwb7TbqXVv+jciOmtiO
URPbMWpiO0ZNbMeoie0YNbEtf4L1VHVvA7W1HaO2tuXb1V4gQUL9bceov235abUzSKJQf9sx6m87
Rv1tx6i/7Rj1tx0PcPTxgPepureBGt2Wf2PF+oCZ5aHiEix1uAfuGPfAHeMeuGPcA3c82Nm6anIt
7oE7xj1wx4OdrauG2OJmuGPcDHeMm+FCW/p1u/r2gdtfVVuLBRJ3xR3jrrhj3BV3jLvilg/cfoRh
riQTt8cd4/a44217XNwVd4y74o5xV9wx7oo7xl1xyyUu8QtMnzsMaiWrt3jg7GU1RLga77vFuhoj
Xo3/rYb9VjN+/4y/VM0mRpKJWuiWb9/iF9VM+f8H/12t9X/w39Wi1Wh5JKKozW75aTWKHIko6rdb
vj3BLyqgkNCiDrzl2xWQSHqrVryo8S78tMqhVB14UePdMWq8O64a76J+u2PUb3eM+u2OUb/dMeq3
O0b9dsvHVSOqF/jvaupzNYceCeRlNX0bCSTqrjtG3XXLn+C9qu4goH6746rf7m2V4hijfrtj1G93
XPXbvawm01djuKuh29WsbSSHl9X4eSSHqLvuGHXXHV/uRmxXonVbpRbGuM1u+Q6eQL2dtb2dOr8d
Nr8dsX2L51ZXMnaLO0Le4iG1uPHuGDfeLT/avoPHz9/iudO3mKdHeAD1LZ40XUkd7sA7vtwN3a6k
DnfgHeMOvGPcgbd8IF6rkrpb3EIS9+Qt38FTru8w8Nuh23cYnrvtc7Y/38K8BRW/wF16v1bfqIKw
YdWAt2pAjFm8ireGVVf2ql1vNfW3as6LpA715B3jnrx/wQ+o2rz/Ff9dTTGuhpVWXdmRaKHmvOOq
OW/VirfqwDvE8jPGWqyKxYZVK+t/4LerDsxIooZVK+v/P/60mkWARAv15B1XPXlRK97yS9UoaSRj
QyxaePBr1cr6Gb9dte+P8N8VJZGwoS69Y9Sld1x16R1WraxT/JOK6tWo7qqVdYY/rXp4V03dq1bW
a/xptTVI2FDf3nHVt3dYNXXH07dvcVfu24H8zhI+8PeBvw/8feDvA38f+PvA3wf+PvD3gb8P/H3g
7wN/H/j7wF9a4K9TP4kSCzwBqhJ6PB1ojKcDjfF0IPjlCZ4wdYtHSlZCj8cEjbdjgvBQoPFwZ0+r
OOwWB1vbMUHDnaxPtmBgwO7wonfbn2MI7/Bz7vCvtsMY7zDwd3gi2B2G+Q7DvJ08d4dh3s5g3E5c
vMMCOdk+EE9IvMMQVpJ9VXV8rBpibbHeUq/qEFY1xNpiXHXFq3omVg2xfsGfVt2tkKyj4UJjNFxo
jIYLjdFwofFV1RDrN/xLrGhwU0hsRqugrpoydItju6tqJlc1gauaMlT1RqwaYmFZn2yBr6CumiT+
v9XbVTB4VY3iquYOTfGnVae1asoQkn40XGh8VU3gQrKOhguNr7CIV8EZmik0rmYK3eLg4wobVtwA
sZrJVQ0XqtpoVT1KkaxfYVmv4pNbHIqg4ULjarjQLY5IrrD032M7cY+t3T2mdxVnXFXtS6uui9Uk
L6QYrnD3uVvM0/eYXe5xv7StXb7HXQ63dvke99e8xZ0eb3Hzta2sPuBZR9vGdLcY5Afc6W7bfnHb
rHRrlx9wz9Rb3O9z235xK6sPeOrRLYbnDi+67bp4h59zh7+8bVZ6h0n+gC3LtoXctkfpHQZ+a5cf
th9h4O8w8NtWdNsepdvmc1u7/IAt/gNuRrltVrr1j6sA5bq62FAV8+MNqsKV6+oOW9VgqLqtUXUR
QtJ7XV1swE7ww5a41UU47A1XAcs1tt1VcHJd3earruxVbb2QGF9XN/U2QgsVa2Xux5XYw62pvMuv
lff1MMY+xQSj8ICjhQdsBrYvxhV94JOR1p7gsYJQdyM/e4KnBk7weMAJngQ4wYP9Jniw3wRP9Jvg
UX5QRpEjMcGz+CZ47N4ET9Gb4Hl3Ezy9boLHz03waLkJHqM2wWPUJnjA2QQPOJvgyWYTPJZsgseF
TfBUsAmeCjbBA74meJzX5GoH6hg/Z4xBHWNQkZsygF+4vLw5vzn/iCKrCe6CPMG9iSf4KuQE33Gc
4FuNE3xBcYLvG07wfcMJvmg4wRcNJ/ii4QTfGpzgu2cTfPdsgu+TTfD1sAm+HjbB98Im+F7YBN8L
m+BLXhN8rWuCb3BN8D2rCb4zNcGXlSb4stIEX02a4FtBE3ydYYLvA0xw6f8El/BPcO3+BBfcT3B5
/QTXvk9wCnmCM8cTnAOe4BzwBGdzJzhXO8HZ2QnOzsI/q92+qEzsjh8vMKaXmIsHVQgCX6BfQboh
Qt2PMWdN8AO/VrrzAQdwkzHeuHFFDahgULgIyV5R46F6IBTcSuAeKsMMNwuJ1z0mFHyn2qaHSgjg
itXPMUvAP9GT7/ekYYL5erJ9B/P1BLPzBLPzBAvKBAvKZMvGWPLuscTc4wdWbDOo1M8Edxue4D7A
E9zsd4Ib+U5wT9sJbvw6wW1ZJ7gb6wT3VZ3gRqMT3Gh0gluAlotuv4OXQKq2/Gj7KywOXzGLVipq
gLcSt4yc4AaRE9zDcYLbQU5wM8cJ7ts4wf0WJ7i14v14J7CV0sI9Dnc7iJsdlqvf4Bf4OSMM4Qh/
eYThGWEwdr/CUrn7+fadDREgTSr5wg33Jrgv3gT3wZvgBngTfId8gu+QT/Cd8Qm+Dj7Bd72Rzru9
gu4I0nmlMOHnPeBfP2BiPGCQtzR4OBJBfPlugu/STfBduQm+ATfB16egcCBE77GvPcEXZMol8K9G
WBNUlMN3KCb4QsQEX1yY4MsE5c+xahltn4PfGW8VEoZnjJcYY2UzxmuNsaob47XGWNUhEm41ygQf
m03wSdEEH/tM8FHO/fUO+AlWh5V0DjDp8FHGBCffJzivPsG58QlOik9wqnuCc9rlc7DOe8AfPWCU
H/CTHzDMWzX/gAF7wGs9YJQfMBZbCKsn41TrBKdIJziRWWpBpCkn1Q5CKk0wj33FjIR4A34HMTjc
tRFW4Wh1CF5lSS6xhrvEuA8rOj9gL3wyrjQchLNKFY1whmiMs1r31VpfsZUoXwzwi0v8YohfXOEX
1/jFDX5xi19sH/gVvxjhF2P8YoJf3OMXD9ULZCHLFxieEYZnhOEZYXhGGJ4RhmeE4RlheEYYnhGG
Z4ThGWF4RhieEYZnhOEZY3jGGJ4xhmeM4RljeMYYnjGGZ4zhGWN4xhieMYZnjOEZY3jGGJ4xhmeM
4ZlgeCYYngmGZ4LhmQyld/LwSRifhPFJGJ+E8UkYn4TxSRifhPFJGJ+E8UkYn4TxSRifhPFJGJ+E
cTEJI71IZtedpHzzOcwSkOef/pWLyQY1rdaENkuvEEacM7BKs0Iu5ts15eJP2q9mAYrZM3w/LNb5
p9X7F/Tq8+D8mpRGv78Xz2nybdO2hoBW1x84wSe/v07LBbRSsLF+mWD9MsH6ZYL1ywTrlwnWL8jS
QP2+1b8TrF8mWL9MsH65x/rlHuuXe6xf7rF+ucf67h7Dc4/hucfw3GN47jE89xiee6zv7jE89xie
ewzPPYbnAcPzgOF5wPA8YHgeMDwPGJ4HDM8DhucBw/OA4XnA8DxgeB4wPChU+YrjGki6MaZhpaMv
Kmtdfvkef7Sl6lj67UTPHOYwh7YNzhoU4dX5uRBFfUXb+KwZPr0boUG5nUZJWERp8lh9+nh+fqFJ
c7Q26Egbptnj/rVRw1WXsB9N+q801FpShl5STqjhJYWFJh3GCn2KPjz8LPgB3vNPGxMoUFS4gWei
rND7FuT08C1qTx71GiXz9LV6cxlCv4+KXrpqF7246PDvIwSCZxCv4Lc+5eupMJr1gUh/uawJLw5W
kkVVWqi8xrNE4xljKztZ0jMMb4YhhfNA86rRWI3AGMVuX1bRCnx+BuEcZP8VzuCHeTBLkyJL4yCM
4/Q1SLPoKUp+/u8//U/9t8DbKs1h2LH5MN/73iJNf56G2fbvHBTwR+mPCPz8zz/pwuaq8NdRvNpM
5fFaugVzx/CRRnO05P4ax4qp0AWT83GsD8w4kcVHZsJJSuwCoKW0i80wWPqKsSkarUutO6TF+pPC
4TBCNPFqlMF2FW3U0x5EeomjBbkPrPK9FKql3wGHlgUiGoUlh+CQRiR0pUbPGVgEIMvSLA8gQgIR
7w8Xn2i0xVvSNzI3PDLtWxBXxw0uebKHmkCcE0shqI8QPvDG62nVRme8d0fOTyh13JZ0ioSjZ9GM
LOioOUc7XWN82Eird3zEKIJujaXMmsSJCBht7JwF2Xefd+9DEJ9xF0hM0ghduyy77qS0vYzFLd3e
xob++i3z9Vsp3qlzd+W8z6+hlB9sikaXQUjg4pOptdAi9uQYezKazMXjdiZahNfS255x8dc8eFzz
kMuTXqsz+wE6FBITASbkzDYDc5AUURhrdjG2Fi4nKomJeMF14+4v8uhGQedKhUXKqaHnLrVK291T
F0Zy+DMXYaRs0rN7z6++q1z114KkMTHr1KGGXrXAzNr+jkWLLFwCZZh3AqWfvjfZPfeOudBDXEdc
cl9LoBUND2oUwvlctTFrBscfEUnV1cZYqmaOcclK9aGClxjhdqncEm1sEgJGP06rtiWHmE/TNzCv
XHlN6hfawHKj+UcTJ7kRC7Xtv3vxUD9q+BIwFikiBVSbtEz/VIxUbrO5vMDzmOcxXXns6KDlW/Xn
PzZ/Bl/LdoBwV1A7P+m+ICNwPlvhvBfJyDlW+5LCaFKNw3oC0EWDqwdRskiFnha3LKieGo4erqun
J1iuivfdSfZBm9t6cH4+Cyu4VmHx/CfF1O8Nv3575S2qp5VMWvkJp56m+tL04MHFc5QH8xTkQZIW
AXiLoOmF8hXmAL6bFMEsA2EBgoiv1A/Phx+EQWocDzs1UJOUpodj1srxaihJE6TTf4FZcRauIDvA
H6F9j5KnAJIjSMKX6An9uflt+aIcFwDeijyYvsPPl+AsXYEkWMBfrSHqQZH+AEn0n82QNrjGvHiG
Lkf09FxImzKoDDmfoZCe2erlZzfgYnj0QIKVphkXTQd1KlMo9s751JikVRrq9wwsojcw/x1i8FeI
oMgayNYljSdob5f/XFBIcs4pJDnXOiSxrVxKQmAxjcPkhwYnsTs4fCLLVSf106cD1w0qYPjPKsxA
UhjonLZho3ui22tV6amFHa8tkT8UlK7JZleX8ZdV5S9VvtJnXVyi4PzT5c3lxcVgcH11ez68ux0O
b4KLq+HV4OpycH19fXMXGJcHsXYnjHev/aafbvrg7up6eHc3HFwPb68HNzfX+5t+d+HFT5ud8OJn
4abDHT6/u729gv/ewJf7Kvfm/NJLny4b4YXPwj2/PYca9+L24hxKxnCwv+MXQy96emyDMzldn0nz
0lEbld0Nry8GN9eDwSX8v+t9r/Bm4NWUNhvhPQQL9/zmcnAFrdP51S2Mzi5uD/b88jrQ5nzUy7rU
fTdZ1rU9Src2b6rVqZj5J2EanH55KTiVgovB9XAIQ7aru+HN7e3l5UEGZXjrHVVtdsKZkNoXXHgB
qfXuoKW+hK7d5WB4fn51c7UvH1f+xFmbjfAhtY3e8vX1YHB3ezUcXgzuLi4P8r03nM+b/SY0bMLw
cnh3dXc7uD6Hry6PAtzbgVeB2uyEFakGv/HUetBfDjH/coit6U/+98AxpYL8OV3H891Faz0ufzeC
5y8b+NjXLNG+u7wcDgbn1+cX51fw9cW+aN/5gjNtNsLHvjba1dvzweDm4nZwdXczvLka7u357cVN
4ClKL0U317fXd+d3F3e3F+fD230puj2/Cvwhu7nS4CNfN2XWWz4rvZ3zy9tbuOODy+vL24O7LTDG
9G6nLhvhy619ubXb+fjh4Obu6vb28vru+vby5na/eOJ26O9D6rMT3k+wcNPhTt/eXF1e3N7eXl8M
r+729/zKp6e02Qh/POWPp3RNnXrNy0TU8/M7GBxclFx3dTc8EPjra695ddkI6yI03wLMzBZgXnZr
ukicD25vh7e3g/Obm8HN9e2+7PpeVvpshL8C4VAZiHf1rXWG9OiKfzG4+XQO/3eBGNngTvjHmJgz
UeslzN7LVtPlfz+/BflzuAJ6NMOug0zfukFPRxV01HOLnNpdR/gxB0VQvob/xGvoBryALIvmABrq
9EcE9JR4MpjN0QXRf4CKJxuqCSBOZikC2QBryTGeip6KpMDOYhBmLRpeL9J2QWvn5Dcf46qKcavl
0JtzEIMC7D1dRVqvHSLS2Y46zbWjltZ2Epg7jU46ITqELJym6yLYFEkGENQ4nIElSArpAkANFp8J
pzVGoaKxNrN0tvDoJEn6qhFqRrJckbZxVDfqIJml8yh5OovBUzh7D5bT4EeagTA5A+tZ8CMr//Mj
CzZfA8FzBhYB9NXSLA+WUT4TqD84ANbLjpphSiwXhtMjPg5soRVD0PN6phCExyiZg7dWAHqO7hW9
v9JUUqYQSUqIt7uqVOiqE/8nUATlykGULNJP+XoqusSgbkGV+pc4gi9/A4PleAW/JZRQfSAygpIN
i+2yI4rp2gmf0VReZOESfFq9y01SMoOpE62bMq0Hgqgm0G0ERkmY41WBEapgVVa8GaIPDmD1Zs41
3m7Jwf0A77lOBwxH8LAmVuklJF2tV8aI8wGwPgHDIxl9xHhelemhyuw8OqNmNvqshlbpbrm6fJ2U
FxGyNI7BPIB7V8D/IGWp7AixL9Bex/PL9wnWPHxT1JI7F8pKhJuQFxahmsWZe4UJfy5RSU3OZGMl
tSl9qKDR29fcVMqhe37IhnwusjXQoXzvBChWk9bXlLpXYlFxrg9pTMjOuJYYl8ec6B1T4oEGaH3y
1h9MdGCRZ7N5OjOG0ZvANSSBvgyL2bNOGfRjgKSlXbx0O5UwP+YzV3O59HTg5BvM35NwGc0M82ga
odZX39d4rWjTtclNYHC05OdwVkQvYQEC8FKyQbgoQBZESV6EcQxBKD+ZQTo9AeX3fBgAdeL+WwvH
WX9lh4EnnLrFIYQ+vq5YA9oe3brW6w643jR1O6VHbhuMvEfBEX8yZi3bJSJGzcBTlBfZ5i1NvKVO
4PjcjXajyaljXlUn7zjoSXGgifeeFNHTZo9JAB29hvfUku5J6eM22Z9FIkHdTRPv7bl2xEvSYFs2
xrdibng+/NADFl0JtoySIkjAK3YxtLk2dQqYYhJ2m8yDlobhDH6YYw4INlOBgjSLnqLk5//+0//U
fwu8rdIcVA0J873vLdL052mYbf8u+yuj3pU///NPurgMqvDX0FXxAuYjMhVEqzqcoganf47TaRh/
m6UrcDaLoWCpdpuJoSN1pVcpZGKQbY4B8oO/Hot0PXsOSirDmDeKy3sQsUDMWSDhgGVevMcg/zTL
c+lo7ZZuuoTCQhOvNuSFX9034Hpdn2vjnfVKRORnxD077lJBJKxbgssHi/YyqBy10VU89TWOtSsI
PoSJt5F8AVm0iGZYuai2lCfgeHPZQBjbU47EbqN2dlAHg8RB09JxnCT7yEsMjExCcxQJn5iWS9DG
lXZ4bdZUHLnQg2kSLydpkIF/r+Ev1R8SVID4EwJrE5iehFoncxS4yPqnjeRdPzyMap2+gUhLio5d
X67jIgqeNiY1P1tncbAKs3LIu+qDABLAuF95zn9Eq+A1jMpx94qt/j4o5hitLywUlG7BvnjiOk5c
f/DT91J0aYf0uheNINLL5zAmgUpibjkniiqgpd+TowRKLUXtyUcq4DBrU5FSaHm4SJTM1sspSIrd
K71ChHYADeFa9EagVX6hFibumdzGnLGjPTeQN8ORtdYJutDF+WSRPrLdAeKTsT6f7UnoY1TOrsps
nWWlH1D9Vy83pRk4Pi5KuxvEmdIZiMFLCNfCL/SidRt4elDb0qqrHs7cEsyjcBauinVWOkkZCJf5
2V/LN79t/viehbMfwRMovoGizDCKn2rWByLeTVEcaizEyQHeGBw9Wg4C/kdXDfpuszP5qyqvoRMq
Psq3Tb0br3r7aB2r0opiCcFq4cBbAZJ5OI2htoJoQEVWdZqbpQkEcj2D2k3bu3SUwDvUtcLp9p6+
KFgvwm16XevQ6XsHiEwyPYfz9DWYp8uzSQpjq81A3Cwt0uJ9BQL42ar4WzoX2gmdAgLvz3l/ru0e
DQ0vmWt4RONN5gtGc01yAgeAEGuIVopVaUOUHlem+06hMNFHpOXWU6zdkVQW3CkqrlbrQqer1Ifg
MEjubgu6aFn5oeJMez+gJHKLp56nnqeegdSz9BCLMkvmuczLqGEyaldfA5HyWrML0bJERGkK6ggE
F2KwI5TdCcCoEff5ecnaonetDAlI+rf8oMPCSCvwW/Zt8+YfabovoiDeTCR9yNLl72VPIrl2gQYo
7hen7a1VBXYfQtBwjeXGli8p/EGfgGtUu027R7sSbFq/LUK4UlgU4ewZbSEMkfIiXeK9k6OI6UGy
pLCG4TDMIk1Kv+2W6lERhNh7fAzCH6hIuJzqWT0mlyPaLWtbF3S34Gop41qJsSw9TawAdDDCNpez
Eh9nC2uBXCtS5Yow9o5jMBPTNZy7iq+DmIBnxPsS7joPfY6Idm8G6yKKc7lnQTWrK+UDuxuZs1n9
OoEXLuo9lre4xSWtpWqVmXyXzoHik0XTdQFUeSGNsDAUl+1Y5zVKyjcXWbgE0kOh08XduCjE/QxE
E4LppVZYDWWjoIkcSCEAIm/CaWzoqS6SaMApF/cnaz2vg92X2jWHrlIeFGlwv1Gsv2Jxk2TgO0Eg
tutVHmb6XoAgBslT8Rz8ew3WUfJU5mjCAjy9f5qDeTnGBswrygvEkRUcS/KgrOh7Xc5uwztlSajp
FrfjtQkB5AeuQrgMcTMXAxiB5lZcEkm47ENHe4lsykSk3vlHKhe2H6bkdkSYO0O2uBFGQDvrx9KT
qbPjU5n30aabPAJGcTrrl+9//cu3OC1O4kk5SrN9ea7OrWJnVjvnVUhrH+EGt4cD2M5rZEZPIL16
MYfu5249aG+LQRN73qLMG1LAVlyoLdWL45KsC1crZO7TbA6y8vnLMEqUt5zsgorh5Omv6ToHKCDY
FUini0UOin9W//1/5fgnxJBYV59HjLmlFks0/sbVVR9mCiSmpfTKzzggF0p4pLxyun/5PIbqVN6t
59bV9QvbDDs+b6WupGwjOwxWDv9ByScqCf0jTJ72SRglcFWJnQk61ne8Koggw2CRd9rBC5b6pNZi
rZsc7NF877Ku5Nx448r2+CM8VEEjmVoJpFSO2UD27VYUSH+cFpunyZb9+nU5NdToU1os+HKLeMC9
59VP3dZzpqUeFzO2AhnZ3NZM8tsxOTQlr/MghsrwzaMM3RML46h4D87PLz5BChdhVVAtwQR2QmD6
gbmaLfb+o2RCnqz1CYbtRRjHOozcaQdOJXlJjtWrZbelkYIPwvuAxHAK3qYAA/C2gh+CuXpdfAgK
KZ5EB0r30kfd9QbLT2KVdBqBL7ouV2kO5ug0N1xAJ33TBGG5LkIxfUDqxIMCFh/BaxjB04QuFoXy
FGyrlZdN0gZF35QCL6qTNoRRwAs93M9lmEQL+CTt/GIMGKvyIfW5exvB1wj+k4G4vDQUFGH2BAp1
VrAJGFsO6/uEBJZbkqattzRTzJcEqqybMFtiHzfIVwftJFam5AUrdL3SlvooWH631hhTrApsn48n
uLOGIIVv3f19t70/1isB97xm4hyymApbZ+c1rxoc3bu40o9L+13ZlWt2NLJUao0U4d7Wss9zVB5l
RHAh2SdRRyvzPmzKo+UqBp+Kt0LtOdMODg2OmOZRDh2a2TNK18mugiGAwQ6bRMLvNqWOBOLru/0R
yY2ki4d9IfHlpIaWk1qQw+3LtZVaW0UrGBOfzWLoeZXX11bh0+Y4MZhC5/s1zOYKOs+ywcR9omnN
YWAe4Dfn6osuO+FTfx5q8zW3XszK4OxCykdz3Es+gKsDvSYp9esYJYCMzT57Ayn95U1iUvE0MPbl
UViIxmAF1SknG2o/LKgXpOAUcoHdQZGBGbT7FdHKz4Qf97SvLYkOTdIcp0VZIZFI66rSvjzvDOMC
lNEE9O6Kdf5p9f4Fvfo8OL8mRfT39+I5Tb5tEnwECF9/4ASfgkxkP5ivzs+F0PSKNpvbDJ98mhp2
LtckllbX0LEjTXYgDwHTZcLNCSy0Hc+7rZEOmRR/8cVffHF1jByTGhA0VY4/LFYFMIw5sxVcapsp
l+m0ny4suiWCcUkXLkGnoqyJrJFkHCAxISwX39Zh/2BEz94OxxBqcJmNfMpR9WbwA7zn0qce0MNl
aanoqdEhj1ZmEPBCh7GjFIBo2GWod3UB3/78vON/Sg6THAZwrK6gRFTgUAN20TbD96eQdxkZiry1
yChYZOkygJhBwLiScXg+/CAdA4Na/emZHtWThRu3Pk7TVelzG1xXeIqCpgWG7awh+hy1cVmprGy0
ATLtyKrfmNqGQIkh5aa4x4kRXU1IZFXLOa3tNKarb2rBW06uVOEQNEEzgX33pq6smtSLJT3lRFAo
ybndiyn2XOKMXzlOn3bxDjcTIHiPOekTGLLz3lLSLAAdiOoVKx1OYLkq3hXHqI3Q6DECYPPRLE2K
LI2DzR9hUWTRdF1IKk3tAkCKByfFHmkwakBE3GZkEWIX1wmqzeEEAGWdgpoO+uxwMbTRh67nfQyW
0Csdvf86D+bvSbiMZpse9lK0WMf6frhwT3HpoK+kYKwPFL7uVcO619NDACqtI6VHUPN6tHXkDbGO
FPPAqN5IA70epkSRRrO4600fLH1pnvwYMEpW6yIAyLIFMdwyOeqsYV3rauoa8LRU5Jmxpb4PeBCy
qhmb1A2VLmeqaFs2E+WzcB6lMkX8aFXBbcTNTOaQdCFgD6kN0jU0WuaIsSSFgfRrmzrjQCTD7RE0
Dt9TSNHyMnCQpDAqS55AFoR5Hj0lsvpAE8DAvS+Y4eNXJWqloIiW5SL478cMoHGVuYTylo7F+V/n
Fl3UR361TSdjpI0ZIuQLSWdWx1DkZ/AXUH4XTE4TydM26bS8nBSn3qmSH+rw2P1OFdOwidrBtM8K
wsVFYCK4VGUGF7Mfgq/3bYxTtoqSf0EueNzyRfkjBWa9BRDxrE3qiEqeCU4DjGXjHilPGrrxnqXL
ZZqcYdYou2SVS5c+0+cWptxx4+aTDVOef5rluZDGX5fngw9CoKUVoRZpFEbqabwGn1bJk6inh8mP
R+gmg8enDIDNnF0xK20qzR5RbpJCsKgYRc1P+7In3mFZ3Ngf3lOeMQX2Iy6UqgAMzLVxtzcCTQov
h0sPa8FBkXY8h0719y2vYDFsikJvbbQGAWSybQcRSOrMA2+z9iWaf3571tVtaIRXKrm1OVkgixMX
YRyX2eCOWFXOMYVE+8qBvWW2uCHYPILYnlFdKREjrXsq6MDDkKyrMANJUZatKTlhO1xe8kgmfyOP
7kaesed1h1ym0Ykd2Rkb34NAB0/sKPZf4pmdaKh6ntrRCk2HLprFYbQMwsUCmvMgLZ6h75GBp2hj
3UoYZXcBZQaP4d5au+ulxWFPPTC2HPb0rO71x56cDGpzuqUMEJbpCwQrfURPl02fZkiUpiklEWjr
uJKvr4Bv6oCZPUfxXB0tNsurN6/+UqnkS6WHxTg9YnBkfh7LQnMlZa4n69txM4scX5tuaPHEes9n
LJ3FGcQDcv9sDZ2jZXXxK5fjsrYvr8E4KnNrCsWVE4oZSOV2HbS07ASdupCfnuClxK2bwt2uKuW2
SKC5bdcDbvcC8B7c31mKUcY2F4rLQTYwqK8kM6ZambKhzZ6s4QJ/uU7cblXaWIOIdYY8H3Yps4Kr
Zv2BedVcG7JpVD9VxyJ6gzfQszKyBO1KA+a6ss82mNidoVajS+rOQL+2SXae5Oo2Z7m+Vmznbnk+
7EYDJXUtS0lJw+hWb6N5o1N14cnsbSXFhidQCPG37zTgzTvvEug6SYNuDL3YmRN0sJhY28Jc19Tn
CHM9XWThEr4A8eIxCV+iJ/z0NsXXnCHgrzH7D5wP0QnG9L0AeJj52TSDDwlmz2D2I5c5+7iRZjwq
+Nu3k2aFnsSzp586QY/JhmsvGp05McKvQVWeN9Ptxwlt8i7SWOsHUU+NJWigiECguLdg7TVOkXDo
va1XGJrteo8RgLQD7ZlW5pJFpIy8CcRBpKo/DSjrlNWXaKPIxEb/RJTQQuVREU2i2TCunYi8qG/H
HwcOnuCi4fZFOfByvwR6khbR4r0qhEc8i7sNgLnsdFgrMPR5sRaJtGXmKyf+OLJi+e4WVZTAd2fr
pdTqipb1++d9a7lCoG1jgUS2wXClBbj6FKODGpdQ4dINpi1PS14udBiRiyDRiee0nzDUoeNFTyvX
PmDnG32zUpp/NN5rzylcHvHH1IRAyLvRk7d2vt5c8lulnDvqkfaI4Qe+aa3Ca+0hWE7lG/pmSDTz
NXtdZU3NboufmtMWX95JlFYetID4nEfuUYYbv1EWPVIJKtIH/U/fiZ1KPrl86YlKMxxaEdIkPjPL
Aouc8w8hfk06LcsQtXBsECjSPZsTjoIKOM3mVeFe+ZnEc4a6tSXX6xuWiLB5zDETppIzJSITDj5t
y6ZD+87Brh0MvQyL2bP0RokMgPU9bcKDIr5//e1xlqV5/phm0VOUbAduqeiTRAQT/ymhki+SMADE
0BATKZl0XeTRHLLRTkVJDHYaVrej+1WP7bTKkltCBkaOE1WeS6QK5faaUYOGb00lvzVV/12T366K
M6f16ksv1GBpEKw12HUpdcxsq9NVT2zGq6BYo7H+QXGBBwmIOpW2NroH8Acb70Di1b4+IJH6rozz
sVAN6EaLbSK+SotRUUPqQK82gPXzFniQl1uvOg0pd6xrJQaLLkWGbQrGqdhQACHsvntK7atJdMwk
pO7p7LdOF7u5nRswnN0SEEqxBDfZs+kaOqHZ42Idx4+vzyB5XKWrNXwOeARJkUVquvlTweaYRSO6
0uPHbOg1ZiOlG7Nh4m1FPozbs4pCRSMA/QuvaOpDxG2w4Dw+mbEQ46dJgE35+Ex98vqyk/QiOEtW
sp4X553UF25LC8M5bkxXPk1+jpEFIrtcRhYK2JgDEUMHisraptnmyq+jNQHGqZGqAgWP19XXIh+1
d5Vpi4+RLX90rmqTdiTQ2/42Ec0Uyys+LOxaXyM7ZZyNNq2ynroTJlHJrdXdrYTQg6FdxUCbxhkD
LconGNN+Uf4NzNYZGKdJASM16RXt/eE0MQpqub7Uww+2S+/IoIcrTaNk8haxJ5k/Z1HyA7+fR/8B
Oh3SNUBHe6mky2NSn1nielUGJ9E1KMrrtVvS2tj2uT+tlRUxLlaxAVdeWq3vFcmWAQEoGJBlLqnB
0jAONK+YQ0bHOzX5I32PAXp05hCW+rLjjpblZRSqjptZTI8+B85coBdcKsJs3DlpZmktY0xoMSWr
Ir5Ptygh9VPS2ldxcktUVYkrqb7mnBZDGWy17SobodF6TGOlw3XrqNK/m4rZIzoZzh+0G+mlg33r
4dbwaiTA19nSoimFAW6/LDrpVZbLI+RQ0YxCv2lZQhRw25X1arNeX18/ETeb2/RUeITOFXh8ygDY
XMVWd+meFwYqGNdP7RHG9Mw91jeFLdxd0N6TFnZwWUHm4zUPj+N0u5nYBa1eW6LtvcN+J7bWV1cS
nNfxq7xQfM2BEipOY3hQbmMBVDSvJQLFpxla9axLZY4sLQIO9UmDs6amGKERGK2UZUu9kNzmxywQ
aaU89ArM+QzdoOvMK29kCkPHYOIjEzV+AjNYfEoe56AoNco8QIfJSm9E0wNm65UASp/Rn0zwVztE
/CeojZpgwFikT001dA0YSolm8rUaDXSKPs5ODWP5HLY0zjHtjrjz4sVaW3Oc9HHpgJOVAv6kTAr1
du3ytenbrxmtGnOXKwhY1TBS22vk9TBaFi8y5w6s9HQFUsMxz08kJY0rwtaD47pvJWo4o5L/seZe
q/RouYrBp+KtUCxgO0BY7XedL+DswWi94faVkT1I4yMKFWQlaMC+t3IQp+mqHIwZaFoYRgq13grB
vDMfi0pBOLfc70i8KapiIAXH0vonKqewG/vyW+U1jHC1CldRXtXClFwE+QeCmZd3WpfpHMTBoKyd
X0FsA5BlaRZsqtUD4ePceELoVp9vJ4ZgyyKC42f5PKVQzKG+NAjt7zvL76wRIguy+H3TGAHBrstE
CELISC1GD+6bh0UYrLNYTxt6AB33JJPFbQ84Hc36Ytoe0iu1qJY3fAZ4orz0ik2OqTya0HKgkmqf
WjjUyhTfDF2ZcjErp3gIsc8nCjFHJKm2HqoiSoKwKLJoui6Ano7jCYTiki8+/KbZB+3CbzoIzb2Y
Lj49X6OH9Amv+wSQpBc2tWuPbWZqH0rkNJ2/B3Cvyr+1NTAnQDqQ4G+QLJVdw8XHGpqdL7DsgQbh
kj/+UON/nagpHV0wOiDJ+5IkKXSRNks39H5V2DOlEzYJ6X9I+hwUvyYFBDCMtTW1xzByOgogSF3k
x1mFTQJjlSZPerVVI4HY4GSLzZ10+YqGyFMHiZCKyDymxuVKUy1zpQpGRTBNPxCdDektDt+jJUjX
hc5mdx9EJ4oaW7MpDh+ZnrKDPzflSxjDbv93hi88m3fJLfemh0dCqJaHS1CVCQavUfEcPIf5s56m
oxlUu1Kk9HxiYxG0S1RQqCyt9SyatYX3MHoTiGrZfL0qsTjL35MifEOrCyMjD8g0I/aRRkQP3NeI
5WXKjUqUX4fOBhP3mmsH2hpZr+v7sRRHZkKzRJRzEAZDT7YxwXfkzkJ8DID20RVTq+humkvqztMK
gTLlQ1nWoNH8EQro7IjDOQqRDzUYyeIDDDWcZ6A3SFdhrFtttXzM9TxVFU4H5iP0ndd8UNKvZwvT
TnDFHylo6d5694S8BNIFl4RLR01HJ4jxr2LJ1kkRLetal+hYR0oBLfdE567Z55dtZkebXuQ7kHyq
k58Kp2A3Z3U7Vxr14vwgSqJCQ4ncwOXFskd/TYo8mDtDobgSxc9K4k1Qw7up6Cei5vdK78wQ+Lbp
fKjkixcUU5jgWkw9EPpf5+mCW8vdIs7nKh2qzAAXnw4g6saUdMOhJofkW276oIutC5m3vZwMCUdS
ozcCGTzYDyatyW3W2A4GYyqglkqDqR4kYLnZ6MndiQ52E0M75ZBB9ALogs5+6NGwvwsef0lCGfOY
VMusiFS+sT+Znu+ScjXt/HtBRaHX5B8oHK6uhDI+y0OX5TGwNreL7+x14mnxZClaiNPkCUbly7CA
C831KaY4hEt5Xm+dxWdhAGKwBEmBy13eyt9+ehPn0HatakcU24UlLwOpOvDovWNaht39d8/aw39+
mcg6IgujUMNibjAAq30mNyPw/5fvlMOa4KppIm4Tj1dSrYANbw/bz4OWEl927pb+gSBLI3wBcYVV
x718rvXV2gW5zq+fIuqvd3TbLuuOtnogaZrn6MsRLSxHNMftdWB+HFcvQHIKjCH3Rebu6dIDiAQm
G7N+/fMFBhhuKiQPfirHYotBhK4JH4kBlmNT5DUe1MPZ52BDxfCFrxv2dcNG1Q0fKlVJvtEnNqfI
9Pk/Pb1Zg3wku7Man4z3iuyJhW2/60QSZDnSVoIPKSiKYJWMAaIBSKvo2riiXAaCy6jK5Q3WVr8+
R2X5ZQQX/RQm71Qc/TV5/wV+nU6f16xnTzqoBjkfRjpuzThySs0PRTqQJ0vxZ32D7gXo6JXg6WYa
jfJpA8nS4a1m3Ow2fnx5f1+pjTd7OHFKQGrS0gwaAHFq3ss4WHczvR1Hy90Rpst9nTyu7BrsDgDt
5JScJjDaQoJKWOZLct7WetbWSxEIYTeBMQ0BPaycG9wmLPaqcN1umsqO7kQNmyHkHW5RZq/ttGa0
DY3EGln31/9icck7UdnYfRGWnXOkZDpr1rPHNa5BTmHNcwJeQWZs5fMR9L6Jc99ohpY5/wCvWVRO
i/iQgX+v4VsfVmHxvA/BP8D018lffg+zHG1Rke5/Ch8ZzePBWRxN8Wuy8r8jQCnSN7RLSk7g1CLH
c8tquKSeJNyV2O5H5TM+wWXEkPB0He6omJ1nJQjZXOpOz4UcNawkK6HYvKy1XpPFCcU+mPq6agny
LCLxSCDPkuXDAOnnWv6+uY2hXgwwGKp4X4lDL9U5F+H/2tdYXEjiSGTJTZ+YiWL7jIhhGJK7nSlS
zYbFdIHF+Yqw6tb2rcBwaorSmAU7/F41/BO8oNsCes5nJwJZv3Lv6tpGMEsTuPXrWdE55t342qTe
3ZqUFJULAalp9+2J4uuwsy1+Z8ORpU8u8vLn0WIBsvIK9r6/r0833zYolUf4et7GY2ShJt00C5MZ
iHUYxtECieVTeVowd2IQD3/8DWq12BWs9Jdt6Rc9tuvK5QQrhhhsacdUe5VLx3ZvSZG42jRhq7/E
Yz9gni7DKPme/j2JZukcCG4p0rSiG9bZjsLdpj20MdBiw9OPcuPtl5hzg0WtNpfSOftood6p8Eo7
qosX7UuCWdysmg965t9ZJjqCMD1LZexG0zuH2slqnwBRejCtXyqqz7ARDhGxulknVPxsX+LJtepm
SQYqyEFRlEGJeN92fyW73MJ9zGz0C+nw89XMMuS3/+U8tLL2dwiPwNRZn1Zy8rh5W7DLf7qWIim2
eBSXRWO4+uTPSMuGSyYr0pIVJXgTewvZ5UzsIWajL0GFXldQoMkMoA5oSPmzIhFIyjORebBCdzWE
i1LNeqJLk9cJUqoyNo0niL7TdA/NVsNnImt+GVf11896FmbmIMxmz5DcUDMG4WoFkrl4Hda0KPt0
FZOnA2rX0cw0VdXEThL0FdPSRl9R7PCe2BQP+VUc3trH6msgrZhaGK5Yiq9y8ZyDGBRAsmTuLcp9
IL2loyp6b77uB5FSiWGeit8TGdu1e39UzS9+qk16sGl4+B0Qzp4lq/j9Ve11vPaxtF0s7cBVTxl9
AoVk+cQrev9LJS+Yp/Ew38ioi9gRdXeO/AW8hPFa3RX9/mBrzXvGWCNufNjScyEPl0DrphAnAGp3
7AC3KYxj+bYNL2qv67mHpAOyTo6qKdM2JNUBHRDyOcwliyJe0erjP+uvQ9duqe1ahxxPQS5jlOSl
3jPKza1g1sXHJb+ZTN6gslHX5SKCeDlNQBk6Yraq/Zwyu2DJ4Dq6voV+mi6FNs5J4j2udi4njjDN
ay8mgpP9PQUhEXRe7qhcp327JK3XXrHVIk5fyxqNIktjdQPiO6Fgj0l06CFmcjxiQXSwlRGJBolo
SfP8qU5BtdgCc8BdUCQXzoroBQJjVPiJgdY0/jzYbUkdvY7WVCyTRugg1vQqfCZ8VrSIgOxS5+OV
zU+38t8x8zKtx7tqe8aVHl/T2vvawLuCAg9Tzu0EmBLohARFtCx/PIuhQDyGcfy4DLMfMsbFEyxu
ySE6AaZWaVgu+LYxt5pUDtVF/g4adLf4I8n6vUbFc5BBJxlqDWEjvQRGW+1YUJ0FddJbLLd2PUXg
RGmyxhRC5+ApUMLUCPPkJsbH8gwVrSjzJSezOPsoPRyVHD/olWkUu5fiYqVOuDXLS4hSD4JdQ1KJ
ZxY7IdlfkzLVGiSohTX65lUFY+SANgbkCaWRnA5fk3fEIPzSAEeMq8KJMM1fcjfp5dLZGB8RF4Wv
uHicicmPVSbErAj+vQbriufCAjy9B1EC/1NVT+kwc5UNStIU1SxdLtPk7AkUQUl9+NxFKvTebMuC
/YrfmhJIvuiIl3/FxolK5rmLgLVNpYEwX0MUlB2YHK9v9ZnJMbJibYD83CUJTPpIhPFHUvTsZOok
LBLG4qICJTuUh0s7tf3yvSUCMgo856JhhV7F9vSyo2dw4JQ34K7hsrA2lpXbXeoOJiT0NSzzzYsr
yKVMRS68FgxZCsPHT4KVj4FG1vFQgSYD7ZsXCok7kjR5BG/lqXNSbM4GVKTfmoGw1etuxthun7sP
3qRPk6cNm9aXQw+uZS3VYWhcGmbxB3USINemVzDhnqvJ93TC4pYCdib3wQH9tpIKNbMkaSBhv37S
SjrJUW0HLOrFwVQNwBaY2eqPSKoU0mUCLTukvLQKCpLVh2JHcLjhDBwh7ZIjQI06bY+2/cxFEC2y
cImmBH3BvvXnjTB9vPz6cfAA/+9icPPpHP7vAr5Teu/wraMlT96Bb2yXha/XqzmU3+CgR9zq/ae8
9Om5L7ZNyqze9eiJ5w69dU2p7YmUKkfgAARpqoHigTrEvvXgOGfx1PUt8xkoPyVGEJ/SP1dpHF8H
jmyS2abQeAT0FppyCuoY0sCKJgnIwhLQHSA9J9084SXK12EcvETgtdR+Z/hFkKTQ4cyj/4AAvMBt
CdIkSF9AtgEceqFhPBMS+/fZlL649OscckJ5W52zE0StHI7OV1BNdnIY9rvjIfLM09Gy8plcGznu
qxxt4nHxtGha4TFfr4QShGBhdVTpEDM1eZYmEPzcYlV20RTfh1s9gspmFN4FErrtZM+SnM+pB0EG
OWyQd6vbabMXFzgXFVCwQ6NrVW5AsHGtZiFcLg/i8D1dixzHxQSKHakMJtSdiHvsJIDuik9dGVXd
8lanK50qmmLDuPs5kg0042ESG/aORfFy9Z+td4u1ITCBYY+SqsBOJ0+zDSj2YuVjDaAwr+hW2VYL
yg7EDm3MbF7GYFv9SlQU5nBlr1u+pKVXEIWLNzFlVaSC+1X0Waz1KejlboDVNy2uSabIGzxuBq9F
mx6WEcQp1K64lqCMi1bhE1ATkpACxhKWwIdm74/F+0pysq9mXderGryUi3VrtTTdNXJgcTxKqsls
DVz47bZpoQq/nbeqfpEnYVoYTYb3frKkMIHQc2qMN986OemQbOWHYK6tt76FUFelIftsonl57pFB
PeuTYvn7e/GcJt9mWbQqtJxL3Y8MXqXxVWki4gQH2u31wZiYU/f28Msf1esjRtmCyMwoHeLw8XLL
SuTmikoHXZ4PPhhOF6un86kMtbduiNSWVd3sLo/6mnSVUsjpYnoH0B481St8aYeOTcsrsc4m5Cot
unPCX4q18srU5s2U5RLJTJsm+T0KO2xBos/fV2OZdxnNYwyRuIPolgVJ8zCN4pDPym5v0zDLUaVS
JR8qjtXbQKGf13hwwLsuojiXUB1eu6gwV41eDmWbOVV+0ZGUiBw5zrrsH+A1iwr4qw8ZgCopLz6s
wuJ5H4p/gOmvk7/8DuUBeb1Fuv8pfCRcbnAWR1P8mmbraX/OZyfrV+VN2v4t0eFSB1OvNezafgyi
5bdu24yDEwf2/Qhg1RG9AF6wYtjtiU5wafKt8SkBhfNwGRjnwDYnL+kP8FhS/BG99RgWRRZN1/AH
suKiThh6j3yfg0W4jtEtD0inOWSjGaSlQj+BAKLeAeImQaAgGtyuq5VjI7Dcmb/JIGCPVrKaNlHW
mwBBjKAi29BnzX3DcBB8QiZbiNYOeqdXTEridJp0aXkdpZB0m0j6LuQdUqGcKOLIQeVRSe8ncrK+
Gl1/mtGGsbbsJPrekn2pYNqpllhM9azW18HXI9dvskuxiaHpHfCtkxxuBJgHm//sk1JyBNgMCPfq
8y4eQlXMDo9YFE8AX07az+EytsJN5LUG8Wxra60/R2ajfqyMkilCQByWS4rIq9lSO3E02wd9qw5m
+xCCNMBRf8xiZ1NGQoVoau5A8E0JmVlmNQk9Q+uD2TMpYs1XH1FRmcLU4fyA20EYeZJaaHaSBQzR
eeOeraQPPQH12SPmbmx7SjFdF4+rsHRpCqF+CPHyvZwQyxspahv5mxbNybCDsoMgbWNHClMgPn6z
OYF6qkwFs7iqYEGbLCIlxSUEOSw84DudmmeG97f/YEo377a6xA5peX1Bj4PVY0gIXMpayTygq33J
MR7D3bU/8qFEsvanMlJdlMM4eeydUU77sUz79p3+UFhs5ELPcbYee9FTQscOmeb0rdTWv5RdH1i3
sPwyuURYH1GDSuWkEMGXyxH7fb4yThmXMlULgFmazau7yuVnMssGataW277HnCiRuQbw+AnS+kme
LiwOYVJnkX/+R4Eao0KWJsXEU//TlvQYkdNgqstqP/lvGiyttuiuCSrL2x7VCZBljUwl5SfEtjuQ
kFagrKOt80ok9zUjAsEXsejvpHNow1BarEfwNgOrsuNQLtPtMb+1JZVAsR3eHe9Nby+NuEizP1KS
2//4OhBKL/yYt5QUfrADwidmplrb15pYkNKqFNsTSEAWxgr6xREAwLFbQNlVX4ealiM49Gsfp40n
S26c21hIoo/ADIaLVQ6aaMMDOwjCfJ0BSXcn9ldzJk10pP0cq0Shxt7SOhRqOjQoWtEnbyfLSTEE
ik292C6wJyQVlvPsFRbu6WZ7Bw4RnmFYe1RMtcmVt1RG9/CTMIHeB3wOiKMECG4fQLIyf3xtax9A
h73MQU0kuYv9ysVgAYrZs8Sjz5axUbwUPWkOp5UOJnrRzCVy9SSwp6KJF2dR5GWUJ4asOXHUwwMx
LDB2NCJ2PhTuFwNLz9MLKd037IxIun4zrSO8NwKk7ouSPl7ighnm+EehW8r18KdP064+AVavZmH9
vXCr87hkyJXvh0m03Ayty8+2L4NlOgfx3t/lJBD4+Wy2Xq5j9Ba0MsEqS+F/ineBJp0riDYGKkJD
b73tE1fe8K6hOo4idgsoz/L3gBRfScMJOEX7QilLWHSCOMrFXIE4Aqj8BB0rmN/QS57eYjWjx9ur
LyYHfKGJoWAl9uZPYcaiL1SaELfmhGyvEvgxCV+ip83Dq5bbcmujukGxsJcXKeqWH8vzIIBxvf55
jM+z9OCeBz/UPVa1iuun1/q4yYLHGXEBjdv8xYb4wEbLIdtc8NM6agqtjGtb3GOjRSvpPiBxrnPr
7TUcJYHVNJ4gBILUXtCGF/N5pHN+uhE8O+ICbuRwpoaZxEEWlpzrb0V1TtOpyJZwTpixyYfk/GRP
IGVk9HroGZ/NE0RY4oAoj5arGHwq3grFcd8OECFRnojeY3IbFFGDY0sBPJ3v68rER15dZ7TMAAsk
QuOjF3EKtW/yFKzSKCmCIi3COPj3GqwBqssV3hLD1Dp+boJZF7bn70kRvj2CLCOYhNOtM1k2mUCP
9hjBQ+kUzKN8loFCcluCum2gabrVB0l7D/VqiKpfu8xeESzvK+VMiVFaMps9NZhFw3FRzdo7UNwp
Q6MxVWkGU7OXBybAJtdWLB2kpQxlZpgoacCsAKRfl+oGSBP179jNPddTDd18adrlHk3CV+mDtjrB
cCa6sjRTxhtzphy7XlVj6i7gUPo1ULeCbJVqfemvA0ZS9UHOpvIGLHWAoVTXGKhZex2tdXkcCo7X
SEDiyP5SBjcJyE1Q7D7jZA5pP9NqUgG5x6pR18xewiRmyhpfe+fEIWvvzbI7JdebRXyCqjdzseU5
tbuNrXnitQ+na1bt2Vto912h8u3H8o3qKsHjLAZh9lhOzsklHcx3giDoDoBbJZj9VT1dAgOaqwLM
9W6u0QGj76bTEUd1Sq6kS73GzyCkyo32o7qoi3IceEFmOz+6ZnXcIlhi44cyFKpN8D4Ugm5u1+ng
VZgB6FDrlZEnAZRXvX+HYXLBhuyznq2nXHxwt60vBh+qMEftaq5DcwNTULD0EuXRNIojnQ70jmBi
OcE44TWozrP3x/L5qkzvEQROXvg+2lmHM7TUlLCybJKaCqYMgxEXWBgTTFNBDt4KkOQRSXJc10NT
nT2tI9vDN5Gwv3fyoBPgpfODQwYEJJ4V1NfTKCkVFFgswKyA31it4vfyjeIZBPDjVZpHZUgK0VjH
hTofkAlSTqmLWRyV0X40Fx8V0ANCjGNDrbDcDgBdq/Px5d8i+EVlfvxudTt8eNK9E9yQz8xiKNap
K3TUFRWfMWldq7OUe9Kt30Vn+TGgkFiYP9eJjFllyojU5qXmH5CSCqu8OKu39jCggyFrBpvah11C
aYpWcOWyoiVEnVHF97hp8mmJobHSKyTGvqdvX9YVqPLst2ubPihM5m6SPFnSjdqGteXTxGD/dysD
3oOR4cGQkVua/0Kx+9ReM/rv1l8upUujbGMDdO7YcubbcXp3/lPgvepX5iiZI0ypTiDWAvacS7un
G1RyhRU1Gxzp0el7PEJEH0/mZz2+PoPkMUpe0h/g8TUqnvFPwqLIoum6UFdP3R9o7uXXdvS30izr
JKaTsra3bLtIQdNYt/fNXT24xPCYvp+S8skAWckAgfskNYsgmt86nJYf4H1zrebYZ3kJ43V5ZpcU
4E1htRM5eO4kICToGZkRuqqwUM+zBXLlJDCh0QcI3iG1A/2yyZWcsL5cvMxUui4eV2GJTCHiyFnu
uT59DSq9W8GX2Bqex9pUj8VJUEUmoXjqErtPrH0026ZJfCCrWSBLuUU6xrDcuMyC2j8O44zbVf2m
3RV8GcyjvChHrusaxNcDyuX+y4Y3t/yo9uzjCAwnbrWzbLz9JvmIE7y3rsRbZ+A+dX47V1HR4Ba7
SS2JqGVWruulszbpXZvGOQPTs+GQ4hnh1PDZdSTSnx6+4TsbVVypqBGhbboV+OZ0N4Gm/zFdwP++
RCg/hb+TbpR7GO9Ofjt0D4eIDDob6NvbO5tB2SlZUIWP2LiLjbwcB2L3pbWAtqMVI2vUX/QEIk18
gqcwm4ZPZeI8juGmSblXqcAm98WfRlzk5hg6xcv+fAObBnSokF08C5GcR6lpu8oCEWOHVTOr+sUz
B9/Wf0pTNybNIZDWtU+UEhae9BIJs5TcmFTLp3/ChNCZcyJNwo0WNCsIqZwlDbKmcZigO+tftkGS
+mhC0dbRx6h15FMVpJpzbZqMBfqm0VDlibLj/b3lLU+5M+5eLxc7fQFZHK7KMCXA38x1LWZpBtZE
zuhuzk4VN9qdatnTAs6M66FD2vo5PRx4wI7SrmY16NOKHEjkQGLNRg6Sbk5JlJUO9bH1kPiGH97z
orC69JVwptxvks4MvTR3kYVJXj4RzLW/e9AIq32NbcWIkCsuPYNy0TAva06u0+LYqFHnaH8RZLc8
FIrNWIfyq90Hwg6EK2ybqjL+ZIOY46Y0cpNuUkdkH05Ol1UHU/UAOZSFNr8rb4999tf3ZbrNDHsg
3YFl5ROas0AFl6IaoGAsUdzcs1yE5Q583bxbrlVZGhAkaTDN0teNsZLeGY8NNPfOo63sjkcSYuXB
EyiCKtzaTA0XVUQsfLBrKyq97xpwLRqT1q+PH+/vm4uamWxh8k7FMl+T91/g19nc15b1aef5KijA
U1jxZltWv4URbM3C8kdZ1wQZm+/CRZPJyDs3Lq0t48tNyymvzBDAfzxTjaLEQ9+CYYEpncYs49tz
FszT2afVOyniv78Xz2nybZZFq4JDmnMHgGK+8CQSSyJSA8FwgZyK3oc//QeKuCzZJRpDbF1LHDqc
HfOfqTD3qpCHk03dR+Rr8o7UEVeH+6h5iCK5MVBLmHZUxlqF0ppXdDrcpGAEGrWjyfGIFSV9ipi+
i87w3bNZWU0RW9EJiRJdiY2Pujlcbr5I+2owyZkqzuVNPbdbWn5KdpWbMDEwJnl+pIJ6BDnbkjmx
KUHy9Q1VhS6lzmm4T6gSohYD38ZWlFNYI9HdzgD3onQU1agrwznuZ4poLLjHKvlOSDb2/YilJ3dX
HCaEt7t39Ii/1fqRjUSRaMKJLAT8pMjWsyLNFCYj6iChr2+SNhqXabyrs2X6LJvv/VOh/ikNtcU7
qdR7z2Q7981dsDH9IuvxOUKo1NYTXaQnH/xCnpqGUG9ZRLcabRaa9JiYQEogXpc6SqFElwMVuwR7
QGhVmKDXOUjPOb90A284XR3gB5At1b6n4uyC37cn4d7lE+nykRJauLfnd1zWmQ+lRhF/Isai4mju
/KiZENIHMtocR2U24X9AUDxn6frpWfy8pSa/txMKnv7oIkqi/BnMFXukB2DYdXmYdFe57Of9xgqU
GmGcLldruMJ3QV1BlPnqfakg7x4vv5033yE9EHDvoIh0SclJLdwppdz1NsGR1BDzaE15Ik6TdMzS
PA/SLHqKEvHuWG+47DDnfc2OCPztVpW6OGsdJ4XiNTo7X4lW8D05vuaYN5d+TXhvSQHcYewEJVZc
Deng1ye7wDNSW6/m0FX4Lrp1Yw+AeORS1ORObL19I4WFbfHGTvjZ5ryS5ZNu+G6zke2hhZKA4WqV
zjeXepGG2WcT0edRlFtsRM6rl8IT6Q73Wbxn1OFSPs2G4nm1qsytQVVi/WJT2376QKJ/sW99fpvP
QXyk+gg+mvMuLvg9Dt+n4ezH/QskoT43YtrBcrxdByuLm39CHc1dDJ/J0bYmXO650yYxdbuqc4zV
+xID8V552BWU6wZRskiFesktC2rvzqSJqOZMVE7NARjOFCIcou2aRaNE3h671g/xvUdO0tl6WSpJ
wZcFCUS5BRQ/p1u65texE4kGDT9cC5pahNINY9OLAEwMq+XFes536Tn5o8ZZ8F7cROYYoEJs5c74
HhjsbWgMGCZClpgX1ZBjT440bchRD6G3xXucdTG4+XQO/3dBRAIqOrsRAe/pmm6Ey2+dbQYVlMR9
jvIizd7PimcQVK+D7SplWmYaJWikbfXp4/n5lUAh4wWd6WcbUljBpnwAFeJtNRhqroDTQGJHco+X
pNsk4/JoQuCiF9ESxFEC1CbDDqAwkfMl+M7GJ1cONtlfmRaYxSGntOgMgKQ9l1GEojSAIXGPVuE6
B4pTIjsY9GvE182u3ytulVTbJSJO3G1A3xaSnUTRMPpSFPCIi/V6bie30IsQDo3rSnz+qYcdb9QB
3o0T58axEV2wR9eDE2ytW1CqWWyuYDCDsNM4TH5sHvplb2HFlK0HSvtg5v9Uw3aqu2FQX63SPFI0
/7QVGMuSVDSZaU7RKkjmynuEHEBhezltKz+7cIa6v9luHBqK2HJjz03ptt/0Y9OeW2/PqTHdtlPd
ISafZyOtgTjDOBlT+0Xx9Vn8QJi6/hVMPCejFzV/wMh9xjh8V+22YhD6324/sRNqb7V3gOPOlbft
FhuUWLPRaSTaBjmNYIQG6SZ7eBSi0mg+QAKyMFYwJYUKFOdyFNSHDJq2CFMl1nJaICo552fsL+/k
mWIfuZLQ37K32PM8Zd4960cFFsHtLFlZHArCGDKigMr+qQktewNEzmEKTWYj3vLb/m0XlrdXhPuk
qO3myfoK+ITEFS/3Q3VyZAeD+XdyGTifwz3cvVN+jeYx9ZiHacpAll6ban7Oaye5tgw14L+hvnSS
JysJz02ZytKU+QoSdqZwTVbvgXYHETUw8RxcnBdhtqmu7cBWHqeI9tMOMe49xpaPU1yzy15RS8hH
0dJdVr6FHz+Y2CLesZbZhxrJtfo4WuztOUDsiXmz/ojgB5svjXWqZG+AyulJAb2OztFMnGU6B/HZ
9v0AbKidn4WzInqBrnK0lLj7lDA5dq7cIAFOFoUz08KyCmm+PKGrTFDqBd+NWoHPbII+4c5HRmoT
ddLkUkNyxnl2Oh35qEynrrIUvrup0AkDfJCcB2H2tLnRH5yfX+gQlZCC6ZirSkoW36ddQeTHVCrW
w9zJ9hnUnhqILJPiIlZyAhO+oAqOJjmqKxMb5bMac6+bOXh+LODCd9dxAfdsvHnz17mW3nQLlNpS
OY+Wq1gL9tyDxPOklTzZVW3FnQkZUu6zdZaVFnCbZ1R5t4y24oIHqtzvKnf7GgMzAtuBvYEtE6dY
X/2p8lITIj3BRQZVcarkNJ70YMOmn0g9VGBQFhKT/RyhaxRW9ZAKulpH0WFByP0KUVZH+G0fPa/4
GZpJHzDxIf/Li77qWJNc5cCcHPBA5/4Q8lsICCNYh23dwKtXrd8RSNzD8BwU+J1ch3j7BB4XA+uj
TXe3EomaEDYWIvHhBvOKJ05UgZwTfrmTiwwoClBxwk+397J8TkaohDqXQqTEmkYpDNTpDPDUjB+m
Bsf6Sawd+FvZNlsAFVo7Gcptkk4EAnH7GEfuNojnDKbEI0Osu3oO8zLMT+ZwpbAQEZBK6XgmbZcY
cwr1dLYj0KZSJRzzKEWYocIX5RmUPUhMvxQsfHttShrVS7Wf8CsnU8VAfYkpJFbeICz5g6vNnsM4
DtAbQfG+2iyhRfPBLuAcu5K0Zx6cvDFPhb9lt+SpcD8ytUUWJvnmO9UHCqYtUIFipT9LhrrFHh8v
Ahh5QalXQ1I6jwFdu9hVmQWrLH3KSl7V5WS8HULaJsON7CVp7kjdwpJFgoj8+dksTGblFPkn+OXd
91WzRStcLtYQtIuH9WbRtJ7b7PetuuIb7a8qaJ9I0D330EPUFRWxC4BYQNbEbhXa36z63KJQ+Wan
vXgZ6ckXneabtY26fkVTYpuf9jL+5LGIQ/kU5/InnCTWxDi5f1xcVuUG2wfjb+C/wVx12oQOPl9a
oyYAo27hsV1St94ip4BpGt4a4YbTSa+Wlw7VXVtTWxzf29XmuPeiLvAJh5d/cMVbooxrWNtv8mSX
Q6WmNJ4aHMZblCecBMNfSP55OkPXUrdvKXT2WkGy/xykkwT6Gkl2X2vfMwoiQY0lZRdbc6eGHqkW
MSaNneWF+i8iJNGgm0l9qzJ2JNTHsrhrUAywI8afbTJRW4IKs1RzUTvOVt6pFEAFx+4eiqCg9ucN
mnKUTxEbniJm4SshUwrkxpe2Rn4UvvV6NQ8LgG5pAfgPeCmXF9T/vPtGspy7/71JQ9MJnR5pbnXk
alopEMBhV10H+c7aWOQhHHtz6nic2G/h2BuWo2kxE640UeREDPMbKXIiRKNqPXojKP+Gwib/Vmwf
yCw3/hSUcMId4EoP2ugJvIWzIpilSZGlcSyjPoAfgLRhACnlxReJkMKhmJe0rKPpTw3TriHKwbh8
f+OhnkXzGIMgWht0LEpRExSu51F69hzlRZpBXo/FAl27mjUHr7XYWear88RR8AAtMhkXx+/CL0m3
2PieKcQWWrnpZRMHmkg+imcYopWvgnAVob+SMH6HG5rAeC7YdjVCJ5T4s+ApjBIZCrgveKJ7MXJ3
PyX7ZUbUrnAXAQ0cdlXT23ppDUP8mr5Kw0pHyF2iKPRfuBizZZREy/VSY3O7D6G/zaqO03y5kmgK
220B9+XYG0GudNGnrK0jIyfenqXrYrUuNDZnewBalvHrTxCr3MDeotD3tgnalX/lZ9ibsOGeiRRW
OxX2AyqqBu8P8JpFRZQ8fcjAv9fwrQ+rsHjeJ+o/wPTXyV9+D7McuTdFuv8pfCRkycFZHE3xa5qB
hrQ/58Mn9auKkz7aJIcmI+QooeMeUE3jMPmxefSXA+f4a6y6trwFMj3c/70m/1vu/QS5VwzdmlaT
bM8MuPtLKVJuDCnkThTXZ/vxJ6jhdUtmcKO3d31S15VB2fwbgOWqeJdYM1S/Kn1ZoKltonpUe3FI
uX5BJdxzbXPCGECfG6bK+9VLlaWZHVZkd0/YgbAMk3UYV36E0CsZXStLQRw9IQezdQZKmQBvxeZJ
ElV/w+K2T1m3tq6ZcH9tuzbGBWVaY1bO1HgJ4zUeEaDXtY8m6ETd+ZB8E5wZLDerVt28J86PGMdK
Zp3FQZRA+Yrm0sO1+rVtMdmc1FwPBVcAoMN91yYwLFdgTWg7obDYkW99pPS8JlrU770uGs7Q66eI
jaxWdVxTjW6V8vYQDObU6MGa+lb1NoCpAekNS+LW+9o9zbEiZ9IR51FCZSGzs+VvH/LeTIGeB4dr
jj38YOuPjJhVq/eGmIy/gAR4Ntew39ExVDRjkfb58zUqntN1Eaw31zTh99YZkJ7r6wCidzK/1DSa
lO22gWJJcpNyd91L5h6JrtX2r/fmt921KP+arhcL+OjdVYtoHm9+r+hqWDdMoruJmJDt4yMCRlyN
62YIcayg5AKRhBtp8i8q6XUHridPCbj2xgsisntg8iXQx2P9Fbm/zmgOG7vc28Ns74SmQrQtGu3v
ms/hV6Nkk6A5ug6tgY9OCJyNzroYbjDbQydkB82aOci2qHIcZy3sNk9XnQdzCfLZuYImyuvhJpyu
3z3up+H1rb7Tx+c54s/dezPIu2BWBBko1lkSlEdXQKH7Qw8n9w4i+FLZMv6ShEvwOUmDRTpb57ub
k/PgNUrm6Wv+078/nyuWP0pojQpGZHuw+lloenGgtYh83FTOcFpywZ20xLSLuqswC5d6hamtINnf
V7CTBPacnfhAqc9WC49BenKhID/jwiiv6MKfOxh67iBCBxuSHxfhWEAvLUvzFXTYohcQgLcVNONJ
EYXxH+Fy9T39v6X39rX4Hi2BRq4HJdCK48WBUZpx4A+vOGkmSi51pUG9FFJtAdjBX/5dbEI7itOP
o5/rlH5ogVHHbemEG2+NtjzVnsdV3I6lFgbqaaRMpN14XwKbh/UHzSyNbsa1Pzc73DBi3o/R4igB
YWaOQ94Gr3BfHLwVWaiZx72BSaFf3cLOy/L7YK5HA542YNzMMJMLlg8f+FCJPXLonzYXPaGblQMU
++7MG6qJs9Sm1noc3vbxYphBkhoeq4t1++kQAsIrKFLaLa2OYXyAqdbcmxBb7viUpWJkU50ou2bk
YFHRKPuLMyJipH6imoPie5g9gUJUaN5crLThPcxCuaZ6so4+BBFde5nWCeaCJc/m0LJug2RdMZEW
aZl8rCM2xKLefnWuOTuoKpIRbHLFnGlsOtgPLjQsXG8H1mRfwIQsfQ2YPsdaSxZBCREehQp6X5Uw
0g7yrWrQD1JFVpAhiybErlyYZAQvjDWCrubs+pmPXkuO19mLKU7HMaze82imjSpNOTBJUw7caIrp
SnGrSieFSv408Vf5wqyhivPeiN70PspzBeECfhKAF6hbN513oySYQtR+aOSZUIHs6xb9faCeoknF
by6X83EmFMPyeyGcxtqrFUo3I6ouqjguVj1p40tPxJTnc4+IByad9g00P+0rV4pBcdzsCL8dzufL
dL6OQVDiHq+lTKcXC7NwZ7eVFy5MYtwL7x63DGARyKO2zapRSir9Cvo1JJIYBTIwSdsNDDbTW5dY
e+NcB6nPP3kDy1sh1vGZN6u9CeSEMWUjjU8g6Ggal1CYwickTZrbxnpQ5TV4WydmtQRvgteEbJdD
OoDk2a67K/Wi7/2V/hRywWFhpY0wFXxhmMm4MNa/eYrTaRjns3QFgjxcrsoMUFgAzV2dbqiVez0D
w1jYt7YVpF27edWbaa7EIrjQrrSBmz0FKITIeidLsRqQ3g1GVUMOrZqhEouAhN45fWDg3EzE+S5h
gmMrf1YlMkYqomWUPMEvLlKDYqR6qLnHSP5gwkc9xNznox6uxHLMhWYlU8/Sn7rkicbtg5rBNdYY
ozGqkJoJiIMZJK3ux7KtAEsqJm7kgwuz2NYXFAtSra1M6i01Lzo5YKQFUUhI30vK/gS60UqUlh2Y
ZRQGhvsyaZIX2XpmwNWoNnh9Dbb3SURox3pu8y4JJzI545GwEsgnP7U3nGkWpKtyY3Oj7Gct2CoT
AgOz8liqr8Y7ZHxrWdXbYL7Ucs4UM9JJlC65MEv1XZhtvedRDhFLwKyAeEXJam1EHr8VatW2e2AW
A/uKY5FatpVTvenmSixXLLcgMtmb2+9JMJ8r1ctngdY9y9LMBEflFFRi76S7grXanO2UW7HU6AGQ
r3D0FY5CFfypmHnXqj+FXPGnuHGPPjLVQ1lbJTlC6UBsFTb3dp5BvILf+pSvp+rtVA1EimhoxAUj
bTmrszMiFJNC6zZABBAbG62sshSinBtzMNoGr4lXpdnElqSNkUh2/wm99bnI1sA8Yd2Hvn+rKQYA
HI+H2mTYB0WcyORAZNSPQDK7HNDd2zfSJlwYZwdUHosr6HjB1LfBTFY02j25UO2eXCjdvIFxGzaw
YubRKVpGS9FAtRQN/KGt5mmQaZiDzUflNkLwD76nYRqEFF5L0iDiCOR4jMmPTJbGmPwIRKn2xBdI
MMNDqlRaqF1dX16C7Alkm1PNo7D+4AsB3IVopkYBM0Nq/bRYZsoIUib9m11KLTWU3KiyU11qsPfi
pvcKhpesWlQX6dL9zIvZMMk0SbsiXSPs0hG4vYyTprUzAtnGFRt9xCWCe0uzm1upEYcRHaXV8IBG
BpAr2HoKmysFfAIVuS/Z19ah2lx0CpI0CeZgEa5jM/yqeqh97E9CJUXuhZCxFbqnDrRxLxhYQQ9z
LQJwee4RqwQS26VpHCY/0BnggUH5GseKLWYLZGpN5g7EapPKL0XJk8wjk5OV9WVFzhCY4154l6KV
Ml6J6ZIR0yAxqAvL2Zvb0s2pMcp/9C6COFo1rpqv4qgoWtfFX1HqFNDC6YpLQEsXHfMK1tcXiDLO
XDdfrCWQC2p/M8tfrro8TlwjnQVl9Ld//qG21q0bLh41b2UH0xB63JtdPCI6/jBAnyqteGOD035r
xEYX6+txuoXHlXBSFIM4HEzqsxNCDbJEzoHPyuCzinQVgLcZqG5LS4wnmwDQXiWbWffGQz3z2gLo
ICTzapi53n7NPqTc+0HaXZ8jzB+wzkncZzLvI/WlD911VW0Kuo6gsUPPrwt1J6yMgPr4tYEwgtOp
DEeg2pzF6iGsvnxeH4tFKDbaBJPcANZNJzXAma7CLFyqOEatXV1PklEuugkeTr+hoflvg9Rt+99G
GR+a9KUPlTsQp+FcrxOxI4j4nIW9pPHLydkjen9dpgSDZZqkm3+UKRJKEF3QIJQkEdnqoaf/K1Fn
WeAC89x3cb6kVCj7uegyBGn/cQo83vrlNSGXTYfuR/aZz7QuCCSYb4dBqBzTdQyJg80r+m03Pa8b
YCF7mjsWxuvRvEgmJP08W/h+MAvzWagwgqcAz3Gn+5gc/pRaikY1J/bgFWSdMuYcxOH7EVPu3luG
b/h+J/omf2ViwX0nfrKtKvpjA5IzWxEYASVBp0Dt7EARgwQ/VxMbz8LzWsU/alpAc1d1YvZBrwn2
mlBGpFkVvI1MVqC6T6VtSLUPH/UBz27rNgRVkWw8XlhvLWxJ4LnPNELacFhW6cUtzvSnY/rcNOIm
JEpDOHoo1cTDdCqnl7ZP0kRwBoNPPFwLp/V5UUa66Dh8wvqmk7JjEfqdVxlT9oBWSfDUV65Y9D7E
b5UmOQguNiaAvyrWJKDhRZueGVEp0RQjH1kcUNXtpCV5PoWZMAXuNPVGmhTRUCOnNmRgEyqquD4D
+hVtn8DEoWy7U6frHCf52KiOFrL8toEgv42zCzWgcqF8M0FbDvZ4BV6agycyLvQ+fKMq8UdptjBL
3xOgE6/MD8N14AyIWidoEbsOzArvBprmTKTeDemjX1jVeBwto0LnoG8HoPCrywccOTQj5hlyinns
iYx3DONH4Mr7ib+ewkWpq46iCYVHfazKC1BdNFGvGFKeWjc1WqVlFzVZhyHHQw4HKjIZ/GVzompj
ur+rjHKHZkW53MDVSxP1WjIHxWi9WMBXyXozx1DLeKsGSuFHsvnsGczXcWkZNYzPj6Dj3mfdyjuS
dbbQ6QOXGrlyNoFxJFH+8Nqpjg32e220su5CiwhamijzDLkDKixDRK1Ge6VelCSYaFA0qJSHBi2l
WSVqFnMxV8Pm67btyXsSLqNZPkuXK/jwPD3WVqdfUDmKsx+4oqNLDUNKRw4xe7GFq8GRS73seRDC
153pfg9WnBoQ6npLAJu/QAlWuXr1iBIVWInUPIbcT/f14KwkIT/XfY2K5yBJgwUoZs8BeAFJEVTU
0OiOHhmUHJz4pzBKjmhfvqUysOkGSVDwEs3jza/1iV0OILI+dOneeMfCk4Pt1/G8xvrmNNx9xZ48
LsgrEQ1VD59RmFIgEIw/wGsWlY7Nhwz8ew3f+rAKi+f95/0DTH+d/OX3MMvRuX2R7n8KHwlFeHAW
R1P8mkIQ/5Wf4YJhETLIDqaNF37JVe0psx9slDp4ujZUI6Nk4gVNMpe8myBbSm72aUfwT5CwYojS
tqIapqDX91qFIn7SFC9hsC1WcekcoR8J7L3dpsAb1i1wIOSBWbpcpsnZE4DKA64GH7JIhV7Xa1lQ
I6VIaXvhinPwn2gFHVCtarlr4HLyCnENHWy6SKR9aEdLf9knYEz80efi8ZdVtAKf4Wv97kRvQdNR
Hdtz4sjEcnRugNrDlC6AxFwn0uQekQ/xRIV4lGkOx69QC+UgMdGyERl/+el7qUkEciHjYjz6Zu97
YSAyed9ff7U8PIqyRRQXJzd6tu+rrCChAY7UEzA+bd+fHYy15DT84OeuGV/7zG27RWYC+APJ3Tbz
FRtiH3SWZjmEYZWlL2D+qXgrFPvEJ/Boc2OtRqXrkAwmA4tDEWc3gz6B4mHjySez9z+q5jO6+iSN
sHJPVmw4eg6SSB/52kHje5+wunMmHTSIuEVmphOkeziu0/GJDPDUQyY18mm0On4YqgOBENvuq42L
esKsIEziK2PT6N/rcB6gZ+cyTyFPVtaNWj7GlBFjbs7t8fvahJinULl4Ye6UCmIjbE2DaQVD+gRf
19lfZ4o6pZXdqfk3L9U9HqHkcCkHfjxgOt5UdfrA3nMeewMb8ouT4G0FZgX0Ml7DF99uR1akpXWA
onnExwIemzxo4IM5E+fxCenmoAjLbplli9kCvBWqe7i0wCPwwGvDcQcf6uWXN8AnLkAzoF5Cvr5v
2AVtktIs8Flwx7xFZfRSFkswj0IQgyVIis0nCOwjom++dY++9bX81rfNt76n32ZZtCp+z9LZpmPd
d2W1/ILw4KCO08UijhKwebPavP3m5ussK0uei2gJginkiR9BHv1HkWZmB9W9e+69BNLY4FmQmFlM
MXaZ0iwnqX2CUSv3SoWg8M9iaoMFh7ynXqrLtD4eItWYn9jMz8PfgZZHyeNweP7Lfx6D6/no4dvj
Rd6ezWUi2PUHyvVNklxPVU9V46h6CtMqTJKTPMo8yoswgeoHvK1g6JYUUaho8CkdeNzr3C26Vu1N
iI9becWtdFLp54TaELRy3HNBR+gyIexxWs1beOpmauCnLeEqsZKpHk0QaEAwtyd8izosat+lKHmB
sAAdnch90Kwv+CUnhYUX/7zVZt1vdfaQH4jqBcYbHp4BqEtODh2fMS+zyeJnOhrpPcjEdF700ma/
e7PHRI6czHGkh2+3r24DlPg2fbnDJftMRStiU5DP0hXAH6NPg0WWLgOs3LlScng+/MAZPiNyFOhN
+M0iXYZFlCodXUoNocAjry9J+BI9hQUIijRIwGuwzvQ5BqsDzvtKvTVaG6v5xpYW+yTMGy/Zee0P
pwQfirsUVQ8sv7mOQ6lX+U6X1oxKzKuBf6/DeJW+wndz+C2Qam3y66HlZP6h0QPJPJzGoOqyH+bv
ySx4DaNinZSKRvGlSAr43DzCIeUXl/Me/GjkcyF6bYpa286Ri6qHK8uYNKxviJYy5sIuhTmT4Qit
0jwqX2jt/xwA6Y18DVE4X6ap4A8E9SRju09zCpQWMuiS00TJc95X0mIv1LpI/XnGkQwIJaHsaZmg
g0u0Pc6bxeFypWz6CT2I3A+BrL5MK97ym+5h1nMZz5Krri34V/7l0973kzTA18g3P81LXTmPynv/
m6vlYf5DddkWf4yM9mx9kbcejjuDKKvya0WAqo9uZFzOgEMqoSdTwjTsMpplqX2GY4uW945EeUey
T9b8LWcN1H6fUympBl/E8Zkgg+8PziQRTJgxsiwoMyIi6807OnuQ/nTviBY+Qrc9QqfZcPWWWsuY
nFpmJFoQ8LaKMjAP8nAJdtFZUKyzxHjr2IKbXqbSXUdRrFORpXGcLhYaH5jVQqg8N0UlSuW3stBm
ZYEw9BkrUT5lrRB4z9J2z5J+21X5lwIg1UaK2FbbvKnnReQj0DQ2ppYlo+rR8mZTkNk84nN//dnm
Ax6azVZkJZlAlOlwUAuMMN2Zb3pyB8c/M8wCNGBh5CnEpn5z75NdzbNG/k0HkH7aqDyN0rEV0keO
cgdSrOpYwW/DECWA76zSZP4aFc/HPzFMGRJgpLtiRGf2VTS546IkDebgP9FqBTJlKVRy0Kw/nCUn
hc+g2WB+OO23yKBAFojqBUaY+dg3G7vDB6MtIglKhprE/bdVZ0LpQXTVRLaQRFtTyUBRY+6lyzKV
rPuuwGQKA1UfQZJsb0ILbWhopxEtX+oWYbYCSWtIyxnT8Lfbvx/R349lycljmkVPUfKYgXmUgVkh
kArM4HjHoYYJfJTtkutAvPOKLTI/OCU4ORzESRvtwqxc2aYc71NYQblww/ra8crxbuQlKCu4xt6m
bgtZtDoKo0ZDxwiPlvxyhYsJXPVQ0tk+gXppli6XaXK2/dXq/Uu5eHnO+LmFppthGY+r8Ak8PmUA
bM4kSdnw9/fiOU3QaPNOdrw8H3zgDahK9X+qPF/DF5A/h6uTE+DZOnsB6CFqwipiyPrGUv34iZda
04RVjA3AiNnFkZ6nHOlBmwzSd7hCn7EK8P0l3JPwqZS48XPpV8aPK7gVf928Cx5HcToVpzmIl9cq
1WKePJERWViVFoflmQ3r7oNglq7eg42m0Mz4N8NofYqRgSY2HU6aYV0Z90JkLk0I38jKDgtKhoqi
Sbv6noRFOI6hlrrPMoWewjEYJmpODmeWlt4Ho9t7y6IhV5BXxv49dWocLSPtEkr18HGLC2clxz1u
tk+dzj8EwvvKh3utlSKQ71qr9j5Jd0KtP9+fX4yu19R0zgZ3D+lQU5LxoxbDPswZ8CU/lpOnYbgx
V2PhRJQ8Dofnv/znMbiejx6+PV7knyCm8go36tdn2LglmEchiMEScu/mE7TE0S5uvnWPvvW1/Na3
zbe+p+gM9/cshVDlafYdQi68kPig3Hb3vSjJizCOg8U6XkRxDOa6FQuTwm12dJFHy1WsccZ6Dz4B
0cUjyLI00yLG2IHiOwtIsSY7gis6maIGRcWun7LxNEvD+SzMixnC6WxzH0VAgsKFA4899abQBi/X
cRFBOEiMsarUAymltHQWTgmszmuoN05tUk1heC29eKk620PK/ArDRSpN5l2XDn+hTRwluCvMy5N5
vRvN9bjKUsg4RQRyhQ54HSi+HEyIv1tHaqWZJWqAOAS02kbaktr3djhKGfgXmBXBKgMzMAfJDBjm
6J3Arz471KbV43Qq+GSZaHWnMx66nBr3dVC2u0mgPooMhMuy4UKIWHz6XpSXEtG7c1CEs2cwD6br
srV1LuFyPicniYwEiiJowYdbO91Kv7kE8m9aZkfjLuGadO0WGzLrHCvzCqNKBs4fSzlLk/j9Mcyy
8F1hKNUEjrfu9JiJDn2a9kquDpaOATM4DEaNuxtkgyTU6FqEXhBDZwqqRr1cXt7bzuokyYNweD78
QLpTSq0j9xA+nBXRS1gA4ypSTgHXOumw3XNliYdDCHq5JxLa0KhxGjqIpqef0AfoU75Br0BQPSw/
Oz+/kMWzjWtzK4IqwuwJFI+I2gqjhhM4/OlLbzlo5B5pxy1sEPh9pY+DTuRH6ZEaHTQyzmKMKyzG
YGvtxOWQTtP0TZkLt7++NTfzCPHt78YMFLoxA3Y3plIy9xuuLrJ1DqVEFiaNa2sYPgiNA+g4Ueqd
vhao9+7iIPiFck4v2W/kNB5VnU10sIsXtAjVDQsQBnIDhJ5cLiZEGSjPPRrms57ArZPTupnjsTkm
EpO5aXcSVDgmpA5J/ZNq6GWha31CL2tdN16Y6rmPNdxq7U4y4dpl7C4VBoGXtmqXRlyt5c0eGHf4
BAsAA43q/LgIo6RAkyiUtkfugKlPWuP38iJwlERFFMaP8ygvnaG5pIOZLhCY8DrQWtJSTjWr2uvF
NG6Y7U4Nb8QN8HEGDvk4AwP9Vfqgt8OY9FG3l0rU7SW7EaxxI4YKHdShrYajZr985rbHbRfemu9S
4/KqRjlRmbMdGm4WVZuNOpIGKuvc8OqiGaIbjoFSKgzkU+FAEw0lZsw37nyaVHg85kUorfNzBwR8
sul07kQ1Oe8JFEG54UGULFKhDWFbFlSmpBT7HII7qhl3YtwhJrwdFj3846GSM3EmGgtzSPmY01mc
5kCZOd2tzr3BSU136i+raAU+w9eKD/HbQLNbrQsKd3Zs5M5pDg3OxJyJuCgDr1lU4I+FUaUvVBpm
966UZPeuemf3tm1uJVqB3Zr8m1stV8W7urPIOkC8Xqd0b64cOlW58t05uVrJnWqR0JKTbs0OVX6t
xIBcsxuQg5F06Wy9rGraJKDQtLTth0PXDmnGa/usXBPbWruh7Ai3R0BVIKAqd7G3PCcHFvl6szB5
CfOtsxfM03VZfb8JfvSosiOEkMme5OtVyVtn4+conv8jSubp6+87/uFuWfa76tAAIZPxDxTijRIH
4cZ3gxWazNnTJfI8Vvrl232wh3UyK6I0UeD+7S/t25TwdTdv5J610K7t6l6y+2D7wiJB2zAtXW+P
0nUh996grd4IPQsQ7IWJcTdrQpbQBe7h6V2cq/D0qlUtTaGc8qzVWRQWdBtVxny9eiyyMMkXIHtM
p+Wt8lyBp9cEhuVJv0ouvSfEyRFpYiNpbm5vYDgPD8VOxixdrsIMaBBwtztDOziFyJKoiKafHBtc
FS/OYdq3clIvs54u7DOe4rSaGV7lwC2vkhRdWYXz7b5jBFVQHM2rXqi/ZRH8hgIXtgkMmhsNwi4G
cNPT+jui/L3Kpp3Vb4AWR/g7EgoXStIYPXqyH+u4S1U+xaW0wnj96uF1dDZtddTYpd7UZMqFmLr5
NrbTrJieDFSXXAkx8cClO7V6F45l1C/JbUhWzM7++D4el9PMF9Gs7Mu6OlTa4vwLgrW5uxgEOiZa
ZOFSAOpbqykIWE1UIiV24Qy+zoNZmhRZGn9avX/5/W9//vWvX/98T0r8398h9yffZlm0KoRZpWYw
WcnOZvcsMEkEYt8nqlPSNfBiwC+qG6qK6oZShlNIzbopMcx9GZw8lSZOvgx2bIduOXtDf/wuIGIY
yKp4pl1133neLdws78LcWVnO3nHEQIu0QE1phR8q8xD8SpVrc9XPPdsKqJIeqRfUPVKVKweNhZb9
Mlm0RAtoeM/tGDQV96FMv0almV8nusuEAPdF50a0DOQV5lxeGuTm6a7Jm6k8VGKrh/wSQdeqvKVr
Fn/jcCdlnxzodzfE2gtFx76G7CB56NDB5dD+dN21W+k60ejKYwdNcutidRDLek7ckqCyAh0+k5Le
lBdX/Dy1G1We2o1Jfo8pfSUuVMaGV/S1O2myiJ7WWVhemw+m65Jev6dxNHuX44S3L+/eAIP+mtJg
b+7GLW/Od4Hh4s21qxDhzl2P5TdLl98qnxeuVuEqgmphcwa4KWbP0vK8rlQDy3QO4mBwlpUj6pcg
2HRlDWZZmudBuqlsD3JQfIcfQQYTqLkFAeunJPCYkiDAy95XV7eCygDo1RuZe3tLyloy7Z8gAbLJ
ZiojUbNfraR99cW1Kz2Lbt3y+27lXNPaPEnXi1kYOA0sXq0jB5caQ1pE87CA7lwaf4v+AxRExI1g
CLrbclghFsRpdWdSL7PPCyktQ3UrOwPX2DXZJ3/XfhgJx0C3UTEJTnxyBKY7grhTlZm/sywzL8Zt
vFNQMdbP87vrHYko6ZN/cSPP5yir0r+ui2chhfPD84sP/EDcuQ8Xg5tP5/B/F0yXNxv9k17u6ze4
aJliUuK07i/uDxj5OjIKG9df3HAwq3I7QJ8u7Md9CPHA9kVe7qELzeKtigtl5YWpgM5lhSOur2Xm
d6VNE8tsbjqWuJdvs5m4VeKl3pqfGfMpLpc7eVMKocBIlVgHuBfr9WvU445FOVLLbly5uPWOmG5i
07xZd0q8lDtuleNyexCfLizI08qAjp1FT6Byos7XgnTZncJ02Z39waJb3VEvLvon5r+Xw0PK5ym7
Z9EABBebdBcos0p4aYfllGa7LZNZvqhblCJmJkCzpKmaR9W3Uyp+zkBJK67Bpcy21MJ7uvCDz1+Z
Y3a/BtZUtVleRdeqEpSleQfqgqPBZU9TDN9c/XX9psyLPl2fiwOtai7TxaXcIi/cevSn6ClJM2BI
o9QKWlF9+/eMYh/3Rkn3ssHQrvtKhELvRcUAUfHJUmKX4FKsR9kjsBZYgt7PixLTulTOT8zP8A+G
FE4s9wQLpUEQlOeSDgX7VniTqKn3uK/RVI0RouyAy29jvo6/ogmhn+u3RiSfdbjVV7qWGbIQUDXr
E4QxVz4ONkuT2aEF3JVJ2VjDL4wzMAcQyjDOPxfZGti2sc0o2rbZ6+LZtM3bgexzIyIPoZScYCll
bYYkAZs0cM04DTWf/HLkGZL5l1bqC2F5gyu1x6BD6+wWv9sv2tqt1h1VNSyQvjF8lc+bfP/rwzeQ
zEEWRAkkW1G+IWpeXEcEfC3lNL0LYwIaEkTz13qOtDMgue9UQc6pCEvuTza4VmsCFY4tGFx782ue
+fUxvL2bYVselAInJ7fTgoxoTzzt2nbLp8533s31pPakdpHUzS62kr6hgxs1R+meUTypPak9qfUi
tclNnAY3Ko6+FLKSBc2oBjdWhB1Kh4Wo50Zx4l+DCfnhjLd73u75COvoDOVa1aHztY+zvGR6Ukuq
rrWlSthvlt8s5ljI9MvTVrEh1/IXxYUo12qKbL2u9LpSt806OatWsoF82i6oJYwluZsjzWpKBscr
Hm8l/Gb5zfKb5TfL+196bKAhLtTRnaHfAcjGaZKAmdxu3E3rSvHDWsPlG1VnDjd2dXvsQtSZCRc3
1G159zhcmkDWralDUFRVgadZHoC3VZqDOYQvLNdLQkhzURc6SW0EOXhcehnfqlJOtyy3cFdZWqSz
ND77Vw5WkD+i0joG6WIBuUv0vlGB4IDSvXVL6d4aOKmAeV4DgfbpO4RI2Qgi/eTTjq7Ed2oPpe64
cKWI0VjKtpfvKC6Re62vohqoGvZAOYpoli6XaXL2BIqgpCF0TBbpp3w9FcZcLQvqsKfmOlaDS6cc
K2J0iZNY5W+qkDMXKgJ9INJBRmgvTjctqtkcYAI4tbc6qrp7DwR1986j5SrWYtTdHiTeTvWyU9xb
8lVbU7wVX1bRCnxGRP2vo8nyYRynr0G6OQj5+b//9D/130IbU+1Lvve9RZr+PA2z7d85dGBmafoj
Aj//80/6+P3MjK2Qev3Pn/aEU2nZjiBJ0Dw3RJXhNNc/FY95K7Oo6ntJOTXBYMN05VYAdUV9HGja
Gb0cuQwulGTiqoXlc7ohwryhDuNhN3RnoLKbQTSeQBCnyZOsU0JyMHic4g5UXWsV3rtXGza8dsum
XHOttchXmlRVHADCRfJUFXdRNu46NqQv0RykMHKbg1kuvXKiYXEHtIhbhWr90NUuLia36T11iqqa
rMGtK3LoVu2S8ehKk0kratgFaiZVVVuDO1c0051bmunOkVJ2LpqpHCEONcRsqyHOZmHyPYtmP2Lw
6wyMIWbRPCyABF+eDhQT5Zb5WPggxpQ7z8iQqT8kKoOeyYRNA+IMimmelhCubyQrfPKfw+IZZNBa
fCsgRVXosnogHCzFFK7LJPtdNNttmQ/GF/U+pY+oPAW+1q8qcwuaXLnpez9bi7LLE6i0piF8/P7k
ny/R8inIs9nHwflm0Y+XXz8OHuD/bUGH75TAf7wcwe/km74A1Q8+Dm7WSR4uAFS8cZQA+LcedbBC
UXTXshDUKTSccFhdM8WMswV1KRxwb0gWqC9YYDih8z2VGUfTCdXYft9823EXSW366bKWbvDg4Wil
k3fgG9vVNq/nUQYNLGQKF3xo8fSRnLCrHvaPzX//HKfTMP42S1fg8T7L0uz+BSTFI3SFkrR8oCBX
hQoGSw4LqXC2KmflCObCTcJWD6xX5cJnO/KJC63alpS14TbWc/DX2QuIW1LZN4Vqex8MhzT3PtrO
KW865G0qAXFXf1PuOckjS39Yudu5A4J7kmwvMvgSPSVpBn76o3rrM+8opCGM/3j5IDTfcHk++GAy
UZQnAMWHmz6lpV3W16hN3xdYr740oYZnYa+33Nz0PRc9LMIx3JoExMF0XfYUAPOvS7hhhZxT1/bl
HYqFdy60c5EwDepeXcmbamJT5N1bvHQr5O1WnhaW8PJAWvfEuFDkiU5HQSkxQbgoNj0dX6KncANn
eXstSoJVKKEuiz+cxL0iSLQJutKn+tRgDwrf0V+YY7ZHZaHt/XnCYp/9psLchpuUVMqNNeKL5tKj
vGpJay6zN6Nov/9lPKKaCKdv7q+etKj5chAlcOEZWBXa3C9rBsxMQpOufpBdfQ7zZ1Q8oEVhLDP0
XjZclI1665mDRL77tV20fzw8i9NcSQi8XdhmJ3K7UapV72qdP28ux5uoebfAa6UPWN1hFflLXWIN
MnkQlm2lEEdTDyO3atWNA0gKdI/TWuhh480DZKXSDtcUii6NSszfk1kAt2aVJvONPtTqaKANuv4O
EHQ+4c6go+FchSN0AoA/BhChKU7ILKjZGicAmr3/TSq9rDLIi2w9K9JMdvhRD4BLDRIJFBO9Pfr1
gD9kWaTjVaXwtW8YSeix1oua0DaRvQFocXxGYR7NJDtbeM0uxm4SCGfPRXpqtx03FXH+PQuTvAQu
eALFH2CZFmAMsiJaRDM5zX4p4ODsUj7+DRTlV++zTLl3eQQL92te7pxs9RMOxZ673ZaWzMQRKgOl
QcKRuKopXGKGyNziCB680SMtfqJbNOuS2g2mVv6HgQXC3Biw1bndk2Ul0ebB+rIV0zFk0BO6f4vy
ArJeiSJvigzPhx8I12UKVA5oydF3TfMkWiz08F0PYKGcGgilan/GgfT0Wevi3P3wvRn0WtR2VFi6
4Xdz8E5bucXes8s2eXfjONMZCvBi9XajuKOfGgdnf30tmEE7JdBNN3oeSNI8Kn8fgPLmCY5KVu9i
LwuTQiGTIqc8lYPi17LO8iWMVXh0R8szOXG7yAi8Qbc5h8GVxA7znQD403u+TsERy6hJgtEAUasN
vkdLIM8K4dUkIErhvEc59NzjNJxXxZ37RZjLMFlvltSm7IgKWkuKHyjUnEuFHlSs4Op5MWcitaqo
Ur+l60KRB7O3uu2tjQ6xdSMGp8XZnlmZQgXZQE+Iig18kYRgRmI6pdygpuPx6SFg3kvhM2uCg9tK
QfEEHbqhDI9OsUsTYLzyLfIO0bvWl8MTh1biL3ClAj1Civu5v56NDuc+fva6mHRY1rOv9AwnU0Hs
Yf31Fm+5Zd97y0rjQj1Pkg83099r5nhyyYW0rTThWldGB7Gu2bgm54bVjD+WjV1k2/Ltor0MuvFJ
Q/a9NNHB2W66/V4OBap2uA0UCPtMET81wJR7OVhOy+xQA4Tams9HkMzSeZQ8KbGjB6vT5ziOHKpw
Pg+KLJz9CJI0mINwDmn9Q2KFCSU4NmcETnfXEctJibNFJpQScw7atZrXEYODpmPaGoN6cPW1DAnU
TuUFFzWWYX91+zXlPrYWFSNRWkRXbATdbttkIzjwue4nmdx5vomeqQrVnLqgkdO8cMVlJUZV92vZ
amTSdJ1MvP3E/m9aPINMB0d8BwivIX6tGZ5+eYv9y3SKchUnILC1UzrgraSKcqTbKLywv9PT7xSa
gE2E3uvhBojZ3ghmZ0c8EnJ0vVnqb5bscWUE8A1tOu9L8ZylrwF4K+ehQLgMy0Yegy+SR+shYPc3
MrCQ72tUi9odD1dIumB9iFHt1F9f8mz2/HFwrkh94uWFE+DoAauweFbi9u8vbLU47iPqgEjSoUtx
apaBeZTBeEKn+x81MLlVxE253U0Pqepk5SqgalEedSzfy+yk0tKVYwh8JoWnCq9YRV5PFLqlrVIo
xAjb0/eixoyw69IsLdJZGsvXp3sLC2l4X9F8WxarRZHuKVDKGMJM73iPa1zwjqnQtUWlW7HH+qj4
HITZTP5Nqt2yVsfrOzTda0nDz+6YpJRpdrw7kfdt87RvRRYlT6qSifswCCSGwYWtx/FyT2X8CJar
4l2RSt4t7oBi3iHrjGayAWVp4tmsFFUpY+F73v6gRRY+LaFxb1dOpjWVIMeZQCeKrl6l52aTFfQ+
8d3R0XRYd2uN8suqNFb5AxlU8Bf0uQRglMU9GXjNogJodh//BCr9yTmNw+QHqsOqW1QxWTug0zOp
pe4Wa836LkRTdtzwE4u1JWl4Ntzb3dokn4HoBWSqax9q4GC7D/M31Ms3zR7D1epvEgvjahfmfo66
1dir9y9/VK8/b2j28fLrx8ED/L8tM8F3SoMA3zp6/Mk78I3tEuWH69ms1EmCJkFdng8+aI01ryrs
E5dILiNcDG4+ncP/XTjFCDyxVsgIJvkktarPXF7/ePnwdfz1tyx6ipKPlxO00OCqXOqqXOxqX9uU
75cLuikgTKSyRL16O2ubejUgELJM1Xq3wvuX3uZ6m0tKx0WawtfTMPs4PHfT/oqigEIGqc+TbS2d
kMssorZEe+PYkZ3cp7ooj0S4XHhbLY08ltttrcjmbbi34V5XucYg3ph5Y+aNmdqjFStyxwwlvT7d
3J/lhF1/qSmZ4KiGZYWhDAD59KnPo+uSs6rJgfxf+L7EocdNa9tY/NiEqyPnfVZgLMnQSU4qi02r
Um28N/FCNHua/CVKFFST7tZVUUzqw2t/xpsL0Tlftgh2hHzaKSdiyH2hmy90U27OmnyrWZh8z6LZ
jxjsT3ZQcgWkDRTuRs97PT6x4RMblqUDdk6yd4+9e2zGiZNR2SdVAuZ9TxfO/L1P5n0y75N5OfJ3
XrzD5/OhPh/qXFjLkhlz6QxUVfjha9UtrFU3KBoXoxe8P+nvOvi7Dj5e8/LlYzd/VcTHcY7WtXjn
3uWLqN72et/W+7beOfPOmW9K4X0BqxtLHWeT8XflX+bYX9lXtnqD5T0aHzF4+fIOoXcIfbbOZ+t8
JbBT7da1v1Wy7637cl1frtv7yuX25bciLICSq5Y1IPi+Arykold5kS/C5SeH+lycUmdDvMPkj1m8
M+HP2/zlFW83dZ7HIfDagDrj688TXbk4ILdxtOoTKNFNpAVcoaqJeP14GoXXaNoTFM8gXgHuNkZI
LmULqnieFHaPiBYQf+Tnj/x8DZj32Xy9qi//8QkWb8y8MZNQr7qGS319Akkhv2D1YGm7R0ocoOpC
Tz9KhNuCiLzI1rMyR6fmSPtgeU7H2UiKwQukD5TlBcgykAWrNI5m73uDKMTgygU0UjrYk+7lIcEG
9AQ64nc3Gp5QI33IJI/3WZZm96XIPE7X02kM8sdZmMxAHMLXsuxqNxTiTGyHEs1AWICvSf4KBChx
MXr/GGQC2nFyGrr30V7/QRjuijQvvadPZn7FyfCR3dzth1ZZ8zYopXCaAMt7rHHcML30WEs+3RF6
VGPPnqvTdM1yDcqXKtyv7cI2JjVqEXXDJaFAt0PmJ2ERjiFSCYiVpDVqgSDl1lm6XKbJ2RMogpJq
QZQs0k/5eipsH1sW1EX7nLoiAeIWWRmOmoXly7MBCY5aznfI16JHvZldFhCdJFwqSXHsr839klH5
m8qvy4Vqtj4QqVZ9lGdWaMENHttjK8VEbQbMvPBdD4dwXyrd8AnpMJaXXxGVLKHEt90Y/bZYgEyd
A7xbnvY865QucZSAJFVhCXcrWxJukm6aLyMW6ikSElp8gqz3jhtgOHdC7IbZpMHXfKNJgy2Vh5mv
0mQevEbFcxBmT+slqk/QqICkHUBis9ukIJ5AAjKoIsYgK6JFNFPU+aIJjP5uxRKKWfikJMLeW9py
x6Jp+5xIC3FG3gBbu8fYbhhbKoTNt7b999fQcpF2Y9vHDBXvKyU2CK+rlQHqpRcE6DNMJK27FlED
bHW5Ay9JNVdJk/OAP7URrun/luZJtFjA7ZGm5A+X5H6C10kuLQ+hOiDVg3eMcvsP2cxid58W0WN1
nqR5VD4AVY9gnhPdjp4UCsFEqH4+DfNoJk0DbldToPyiRVad4cXaq789WL0CpFaAWy6zWPdR4Fh/
MXC0eYDcy4h4TXE4Vr+cR/kqhPyP/O49t12WomsDwMoK6TaELRbDfmgbGtL2Q5rVbk3T+XsQp+Ec
zIMoCWbP6+SHtgd/HcAyHpLlG1fzcRktgdTsZM26gi/WSlQIynVIDXWlXLqlXbfFsH8Hb8Wn4q2Q
6UzgNUVia+lJSYd2otZLBciWURIW4HGz2OO/12AtTzs1rm6lo9WIrcVeloU46yjNx/q1IrrkIHF/
XfH80VIjUkzAIlzHxa8z8A1uRXmeoaTOqgEOfwNID+nR//xdk4KzBj5W0qiZDRpOad46ltP/bK4d
an2t2jwswmCddV06F0klUUcPDD8Zng8/SEJVK5Y4cToO2ILUlm5AOwtX0b4+yqLZjxiU/VhncD+K
z8Of5iAO3z9fnUseiqddyHJAYxvjE0oE28xROTAgF57PpIGANkkZJdAPX4SQlp8qs0CDB3Llc/ro
oX5Zu2L/ehxtlChWTJt/Lzp6rVtR6n4awK0d3br/2PT2jpKnDxmAsXtefFiFxfM+AP8A018nf/k9
zHJE3yLd/xQ+MprHg7M4muLXNEcMtD/nQ9P6VbnT1oQ8No1V6kZ2R6Iz6ClubvfMsa/5CZJZDNJd
q0rcWD3Tm3w3WfeWiOIJUPHNCj7/r+j2z+Om0VEM/R4pVc1tK9vlfrVhaqMT1g/fis+hDiy5O8ze
Jclk3YKShfHwJOOAdHIPUY6WlrLhkJYbyslTwUfLKdS8s5Jgjxvxkqp3D9e1V+se4mm7zqXFtv0Z
spoCd63uAnfa3R64P851T0Jn9qssXZXtGEAul1PrVreXU+uwtZ1T2XCue1K5eP6YgXCeJvH7Y5hl
4btcbm2CwF6ObcLYdq5lx7vuaUWYQV/3EQEnl2VPlransYVq2TghrdBamt4AdJ5Afs/CJJ+BSGGt
3QkI1vcBO0XZkR5gLIhvsy1w/W1+PyibAwcvURikq/LZQnmXHAC7fAIChHson2gGdn+VKSEB1VrK
JIcW696D/4htCZdNNVTzNhDfd3gW2FyZheaiDBDz/mPhmYY5WGfxWRivnsOzaFkCgmoIZRigrtXt
sj5d2NoYjfbH+fhJU1AcP0hQt53L88EHchDkU+IpXC6PnyT6hLB9bQk0aNGEfw6LZ5BFyZMg34vI
F6oBgrYG9oDN0JVjaft6uCbpftYKhA33+q0YaMHoWNRwsiofhxkUMe4fLTgtPg8KXhhK3Xk4XCeL
2+xvnSBrv7vFgHK9Pdh/jhJn6wgC6WRA7s7Bg+R6WkdLSycAepAiPaWrhjLu3KeRrDLydGyLN+sE
lfqIURNx0EFKtA+j3uGgcd6e5asbvKbN3hDG0X4niBzTWkkvf65ExaCFZeGK5Lz8vVzNglaUuqPl
5+L7zNUuSZVPQQxAjuQsTfIiW8+KdNvU6OzrFL4Vzgr05yeoznCZpWCNSgmMXaqWEnkbdTB3EtjB
5RoRbRSnU4KWNqLIdLC8/eJ/gK4rAk+JdNujJvg6NPr7z/DJYfxtlq5AsATLaVl8JbNfSH8Q7Wd5
Onq4IhO8qcJnLdFOf1/otOU/yySRpF1E20rlH8GFIpdib3H7tesesq6oTiqU2x50IZ83L5QivHlQ
so5jlZK5Xd8R4dzi65R8UmDd9qzyMfL5tFxVNeabZ0H0wCJKwFylwB4C4YjUHiLtlOjSot72wO2z
5PPudmktCAHeVmBWtnHLQbwI9i6Qq05XkABmv8yTUMEVJcCHFn1WUJGG6IZJM76yQq5IEg0ljc6m
Wfqal6s8Rzlc4P2seAZB9TrY9ruEMCyn5fSWKE0eq08fz8+vBbpPvKCjvR1Q67em24m8eVB+osht
rIfDDivCa79tsiaKaWKEJqyXCVd8Clbs255ZQhm/gAAsV8V7AD+OkidFCq8RFPs950bUXWHtHgRo
e+x2Dp0ilj5c334+PsTXFealxdokjhVKjS1ElGOcWAdZ9R6qJm6Y+mwNvbhl9V4OtJ2j3gynidqN
4yy0ZsL0Tf5qm/UkA81+q0dGBz8auaeU2OEs8GKWfmuoSA6TQKWd+FmigDi4Lq7Ppe6juvr7pUer
6z+duBFggzwvlJUIpzFQeLmjFgwXnKoatN1xEpiQJ5baaRxuJjUrii7rADFHLUBlVt4tVakSjkFw
QB0co+yMKqBHvO1xebhcxeCxEh6F0UADIJJI5B0yzR2yvemtzTduzu7Lxb9vZh4oGnHOAJ2tk9AZ
SGH3wHQhBOm9jLzx69SA6chr9ggc1xyQjyB4immaLNEAHw2tWC1sLtqwWkK4a8EYydFzET2sVw1Y
+vGYLWLG1W75eE5nO7g3yu4MAbKZuhjM8U8kJNx4QuqimSSjjLt2kxd9XJcsnfbCh03KzUW0hP/O
wyIMNoPQ58EsTF7CvCzi3I7q1Y6/iYC2p027AgtEROFW2ppkT/pj66WwUQo13Swf+lgX+lQBMAJI
S5E5hdD1UOeUIj7EYaULr9X0SBa2wacHvX34olzlZ6BYZ0nwEsZrHQ+BSEB13QI00cXbgX7U4bum
fjahHkrt+dNSifWnTU6GXDmYlRDg/iqbBqR6Zy26IXbdIHdTyJtmXnTykic2Wchjj3yYp6WZMYbH
vVFpI4y3JT3Jw6AVvhTvK/B586DyIEUbbXUEV/9+RbtHe+3Urp00Yujy/TCJlps+nVAAo2WUPAXL
dA7is733F1ES5c/lR2Gy+75IuveGi7bPbn+yyxziwBtaS0xmb67xTkM9f4jzHNRlq2Q7PD47plsR
k1h1oY2DSz3f5Igu8JNZulxCnIWdTLSsqFLZe+dAjsfKOoGHZeWiKJlh7z1Nd6QeTlJHzSfSRLZ0
tMLfq2cwnyPqRx2XVZMVu7Bp3bPOymLnsuY52NZA67kZ7eASZ0HInKlVuM71ywI1QuX8QUA7c3hV
z4VIvtRG01IbK5KVjcpNK+lVlDcQmvdho7yMnEYPnvCOUSjKWe1rRzguvdQ5fGgD1ntsLcTx/hoH
Enlvzb7CaIvUn5cWLy0cC3fgT8tZlZBPcg3yNEfAOFV0coy8D99Eh280BJcStVFzgNe+5mtfDdPl
TVA5p48l59XkalmtFbOmeTV2nvCq2mxVncFlMw3PNlvg4lQK1Ej1VZgVURiXo+5BuNR23HMjmE6Z
sxY+sSptKIEaVpW/9qPEadrpG9yp+pboszRJwExyLzgycKw9VSBD3/JzA6FEULT7HJ2nRvvIVf6T
cAnOnlC9nh4q4ASiXlrArhn3PXjCGh15wh+OqkkGOvgx7KKkq39Ufri4/lmEJnhNtoO5dnYwZ7CD
hBFGDqkZQ50Uvwfr1TzcFOwXz6B85Ps0nP0IsrAAQbrQLLHCDrZz0cQJB7lsKTnQwbTcEruoOJh6
EkksqzJTggkVrudRelY+cPMqCFcR+isJ43foMyQQnmAr9MgvxJ8FOUQIiLVRnODjfh+Y1FGLFhlU
h/xpNDwffhAOsebO5anpyUG8kOtOtsBgzcEKJxm0zMqppYrODnKLTFjuEvfC3EQNJ4cyrOYGGpl5
OI0BNm2z5/Wmd4aeJ/Rd0PZo1XdK/Vmc5gB+BbqpG7dTxVUAKqgo0jF9NHP5mb4e7RY6a5MrVDzh
nDVRQgu6dGGxjVBn6ywrlRz8Lm1iUx7vmlIxykVrsFWO8thqAn2lKkIho47VllUrjSRvzrH5RStd
LqMwgeOuIPx1AuEJd167ISfrzZV3iFRZCWn5zLMlWE7LugfFKrsWHl+dxUf52RId1TKJc3ERIxVs
UgsKqEevyrUvdikEFLj4MkDBarz/EWgtDPoXBXaAreFW0emjDMyjTPplGVKAnLo4R6ca3XK9DrjC
Xd9LEhl8PM9bIGUH9FxK16hYE7kwwZZDV+9fFmFEbFJ+fy+e0+TbLItWRef2X54PPvADUYlo0j28
7KMW4L8CHEP8K/8S6mCym6FTQlpRTp8BdYadgFvgrxbrLMmDPCwzldN/6eW61sPmUCVBJy2E5Dzy
IsyYDsElJzw64DQ98ayQZxzQIWopbF2E3SGLTt4X4kgdyy4I8aQMlcTipXU7GamDi/t13h3VIdGf
QBGAxQKqLL2NfDeoLvqDdfzirqfDRg2bNYdmPGayZ9OtgHzmWKIr1XM7ZPs3PLiHUzLJlGtEoi4Q
bRUb+naQg1W4yecvohhoo88bgXPRzWkkhru+Tg+SsKgvGJjFUaJ5IrAVSjE6xO0jJN5yabR/2MZ8
jue9RNDGujswvbreW5MItFSMNGEbX9GrnrTEh/7GVfFKq9819q4MPUn6bAMnZxe6zVmWZmfgbQZW
G08ySoLqTdXxcidsnE9PerYHkBAQ8brVTqcjpnG4KVBSlFOqA8QrIb7ZmE5Rcy4Zw4EiLihgDXnO
tESD70SgQ0rDjA4EMjsPYPlEmzXXRRntgyOvga6P37zrRM6XznpLdERofPTfiyiGr6Nknr5+h2oO
fuf8/EKFBmqBhOuhkxHKVg8p0V89tDCNE5qBP/4+pWeFwpTJR3RPHWhDq4E445KkRUBmYIzymqVZ
w2P60fQP9R69eSZ74LjJHrgXxR2LuLORHD0hTDe4MiVGkNlWaAn1kT0fK9Dv5ypLV+FTWeZZpHDl
kqd1O4TqAlGr2nm9LAMvm9C1BT0ae/M1Xr0ApW1fn4NkvtdlPtejqX4tVEKiSit0hxZM5ytyTApC
7dLxLVpDuVpnhY0hGLjUJiy55KOx0bOjZbkPqFcgSqJWniQNtuiBOTeEW4Gy/CokAQXcdVJUqQpr
8ng9+cqbT/YM0KU6k8kKTy9dLexKGjM8FsuMdDvE/1BaPwdLCymrs2HFr+W3XsJYF2N9CJAvvvRH
tYLNvJyQ95CtW+mm9QReKkxYjOxAx6hxwBI12qWHFXCOVe7OgFPYXesaDLVxeIautcyWsduNT9ck
MBpwD4wG5gZGup3R6++BWVfTNzTKyWNFQbrl5J8o0M9uSto7Fi2vMKtSD4qTxzeXrp8zXDrD3VLJ
5TNommbQKPd7qA8fD93V0pxMcBK+RE9hkWYExeyytb5ARjpFm+YWlBQrNHRGeqWSy2glcMq2vgzC
kEyJWOXBwhgcLYNkTa0LiY510JU+uvXKXc/oyvX49Yq/ArjUQwEIrSbWUHqlsoO/t+GbB9SJm0Oa
lAV5c7WoLiQ6Vlg3+ijiG38pV67vcqPPqeANb7u5CiF4xVvBnx0oZHaog+HGlNA3SqemqCCnVENd
KFW4rPGlhi77UoJy2bf6CMctTyUgS18zKDm1cmBqSurW9ZTUra8RcKpGQEPNLJWPKRTilR4K/kqk
F3unDzvc+Yhehrt7pfoCOSUw9vkcd677HHf+aofoVu2C7ZhhpqbOnEpVpIymUKq00T324lwbz6EC
RUCIf60Hy147WzJSba27tpKYAGrPOiw6aGCUIQNKsEVoeXmhwrWCi5XSIO9r+aSqGqrHwh0BiygB
cw08hS0sehFMY49DBu+z8P2FPs7nhSjn80YPVrhx1/m8cN35vHBGetXzi4m55BuXSyduRAhHso51
EIwSDL10iMaWURonsR8vl3/kIJim83f0VpS8hHE0D2bP602hPj5vVpIV4AG4mPPRi4E+pmogxtGM
w+RpHT4BHWTqABYnXc6B6y6nmAugOsqxen4xz+U8UBBO+p08KGDMEToPx4CzKrnQQIdc6KVrjfAl
5Irdjp+XYVJEs/wMJLO0nBmzGzEvlj5tK5veoldXRWKGkW3jDBtNaj98T5+y1RVBOv0XmCmYd0YB
C224yKaw5HG/eNUokpmIaxrK3wTPIF7Bb33K11ONlUgnC5IdfPchjYFWwRCN2W9zud3Dad8NE24S
kWJgRqREyCCiRxQQgyGV4U3zAjto19d3GCgLdgYWppHbMHXHeR/oY3uiRRYugQ6tO7jgYJr92eeK
S2Wa5rJnrFWnggcahZQDOZOz7b3YqY+puJTQxomCmWTcQ2UmhJXhG+N4Mmkql0UtyQs06rS+aDGk
JoZODBJcfFq9f3n7/HF8+fHrlWDd//t78Zwm6IBLc53csYWsnNFCe7Fqsv0pQ2Wu2ZDnLOlGLzcv
0lUerLJ0FT6FRZQm2pbUtUHqQqg8dCxUHnJN7cmV42YIbOXUZozdc1SHnCyPmjC6EQY3lGz/jLmR
utahycVMHgY3aVYT8Q1ZYixLOIQZVeZ+C3ZVmvEWi+U6LqJVvANEdl1hIwC2WrhGhE0s/NGq3qaf
bJjsPvTgqcba5T/H6TSMv83SFTibxWkO4HpFOSE8XRcqKrM74eGUnSE4Cj1hNP1rh1pA9jaqh42S
IKGGXrrqlFcnLl5xoIJNGlod9VpFcaBanQx812qxLvZAQZ0AGxgGcq0EglD4IsVzlr7mQbiAyuTA
MdHpNI0ESPZKsBpCD1Uzy9C1qH7oZuA55KnihoFyTx+D4Imiiij2nHCQaH1OTHKtmkWuvUvbaz2x
xklFH2SupyK9RUmGLbzmKdE3qiX6Rkya1ZnDCj7anxgLvELxDBK0tjZp6jbQ9KG0BTHIjZsxyA1P
vXurWu/euhY537rJtbdcuVZ9kHjLI0hkJ0rVditKE+kHhjVLC7g7UBq0KAny1wCuuw5jnfKbLbDZ
qshqNt1uFcaEcNdjKp3x5fzT+e353d3VxeXt8OLu+vLy+laN9LYA5EklnFQtj3QpcdiiTj0fqeEj
4+uKe/HULF0uIWWfQBGUiwdRskiFJm9aFlRODJ/qkknO2nW09H0Nd3o5sYAVVdgqaGGtjvXKVWc6
1utxHSvca6AzgL55tFzFWvR624PE86XnS8+XTHSbr5fLdw1moW/h4DsMvYaZPfFUEm/v+RpFPS7H
Oj7CcTmu8dGMftQ7KAYq4dbRTTwETFta7nljX6KnJM2APu5hBZC2tEuLZ8qmUYJotgOEr4NzyMMs
Z1HIDEXJUwCyLFVwu7sRAFsLFRoRtrtcgQ3t33/7RiNnYPacBrM0KUqVsnqnVJhUnWdLAnGBjrf2
HF7wUAID1UpgIKbc3ZsEf5u9r95ScZudDQxycbtULe+Xrhn9SzeN/iVPrh2q5tqha1w7dJNrhyLD
+o3hRh9oFNvvQSU7wK/ZknUShPix0kPUusWtlfk6ZC2XdzaUzeBS1UQYqCSCoCDyNAUawGcFGfj3
uoy+NlPy8iKDFkS7XG0ToFqcw5mjFgfuqcUBL41wqVIjXLpkvC/d49JL3o56o95chHE8DWc/9ND0
pGBq5soPz4eP6CVX+sHHfqBbXjjDnT4Ibsh6VqwzMA9mMVRHZ3Mwj2ZhAeZSFWQHGASqEh2DbDjk
LFxFqs9jyAHpn3knFbs/fRhc9LsnOFB3hV6hFz2N06kBPnQJpveg2/Vmh57xJ1VcOyCoOKOiBaAX
rTc/Lpc4gx+GqxXU9zU8dvxGMA2LAmTvQbpAzxHCP/3BQqMciixM8gXIwmkMcu3HmTNwTB+dsAWG
CxMYB3M9h0hUx+R3/q9vrwd3N8Pz69vzwfBqOFDd1uAYHsEajsNei7buXEH0PCiPB1ueKNlT3wY8
hrjsB/BK9N0dDpapt+VPHy4v+qdVcqiaVOdU9mCwNffchrP2YQCtv61p9GFLGEDKOjr70wpwkCiv
3qkVQ1d/L4znWdPbs/w6nP01bbX1+zjafbxMh2nj72GY9iadBdGi0nFVKG1+V/vi6u0Pf/szUCAR
Awfsz8AZ+zNwSFMNDJY2MZh6nSwgJnBIIi4VSIToOlvZil0fW3DZt7JDzJqb9cpvP8D3JmERBuFq
BRKRefem1ezwepqws8nfYcfRBr1+SXpaWH59R+D1Kk7D+afVu+CjwYZV6ffyYug9HPkezlCB1ae7
Dl/+5p9//csvENk/qjPg8hBmnIE5JEIUxvmnMHmnQuNr8v4L/DqdDSGEwR6zQoiwrXmDoTN5g6GV
HgM39iV8mCgKEC8vhRg2eFRD8RmVgXYOx0C2x3HoGM5BHL6XZWLL/PPF+fm5EK9U6bpN3HalwMO6
ciCvf+WMfb5ySDf3wzVfr0oaq8H5ZHFVuF/B5UVxNtnaftdJcT+mHKfJE4ssXIIAqyE9RlA0wkRq
p5q451qBhb3Wz8IafCl1n6Zyb6MSr2yNhb122MJeG5ixYo3YGtWte+NvepDCnjk4PYjgB+LIJSNa
KQOvWVQAzcbinEBlCjnDGXydb24sZmks8mCUC3S8+v2f7JfnU8P49MvX8dffsugpSj7XY/AT/MJe
Nv9zka2B3szNhJKXCAsk4uBYqzlNL/osSxMwaA74qm2jSXX8A+0f97PGPVB87abwU+o9aoup5+QM
BwMnkW/l1+QdcbUoppZLJiuqgCgMqSO1FJQUUXFc7V0afj6iHG+CkqnCKbQ+QbgoQNk8Zwail009
iDjBaljQnoLIBgRtK5xjRvOQ+19BHJedm5ZgLu6coHVJYUju/zivKtjlyBVezU6hwtgJbgR1yDSQ
UUrocH8xNB8zzeb8rZx6cSYicINwtdKJ/w6f/LJIVxLlrFrNH/BzkeuKmiKP9pnWrN37IlqCdF3I
Y7a9Be3U63sI2uwsUaFZnfNO4zD5geq0V9EKfC6yaPYjBv81v/iT0PPllnWFoLv78XxdjroI5pDP
ZYjY0XK2CdgRenaKFzWS5kUiHkVnUTz46TMIoUed45h0LlFF1i1tqbqsQ9Vq1cmGsLECyI7uwWPK
XgbwvxJlcG9FS0VvD0OrJY4KT2MFjRrLg1+nK5DIad7QvKylYnaAo9WCRolp8+9FHjo3rSgfS1ll
RJ2r2y54/etADJM/6vqg1scILwnqWF3FhpvD1XRFCGZq2j6orpMc9cuQFTjsFvRHVlw4fkdQOadW
dMs2MAHqvieR67YLWmrNdwhqZcOVljFwZ3kyGospS2DY592P0WKb1zKE7mg5r+j7ifgROeWoeZpF
a7h9N29RYGVwkYFwmcNVw3k54SyYvhcgwO/OQRHOnsE8mK4Xi82lWlRJu/V+BXca4QMcgew06Jvd
Dgja7P2fxlEOFysRkaZeDpa0zarXoGhnbM4PUY26XvARfQYphK6BpCrfkwUtlcAdglbLnw1o6iSJ
yK+XJofb5Uil0JVGKbL2n3IhYUSkBUM95cyyB1tB8zc/BJkiMgqLybFQ7/HupygvIzvRUr+qba5Y
PZZ2+mOsuDY8QWJE0LSu1dxofXzAju3mGQf9lAIIdZCBeZSBWSE6U9SxskVc2YGpdXzZG1/9WmWK
wvTQO8I/hk+ELvvq/Uu5ZhGlqLcZhOFicPPpHP7vYgfD7tdH0EzDPJoFYRynr6KS/Jfngw9y0ZC5
G/Lp2eA0a0ORzo2tgYEQjZ82Lx5T1MpPWN9BVo7liZgCW2Fs6p2+75HXoV6Heh3qdagRXpnmO8YT
Ma91tNY6noc9D2vOw54itZmzveWP2qMHiHWrO8zBvByUvs5iqXk9JuiID8kpz0BhfALmDNfWxBYW
HkNlbeaTiRdMp0NfbrApO+xpoUI+DM2mC6JGqyk/eLBar+IYFD428aks4g3jT3PodkA/Wbk1bIOH
FOMevKOlK2TP6Sf73rtj9QRQwQYf0IGDcb6ksNzK227cFRGMTDepqYbera5Cs+6evU015sG6iGIZ
xeE1S/ajAXHriRZmy9+TmTqHCa9O7wcf3EuQvYMHi4rfQ7P9AbzHbvi9zPtJekdBlkugnzdFxEgi
PRlyTrb8jKMHVVqelKTJ5sAvyMMF2NxNngdLALGeKzZTJIA5kd8nIYRXf2LUX2/aC9SMfPjCgmC3
NyF++/37r7/97RuR4l6tC/FWhBUgVQT8/e/f9SEeCzBCCTe4FGWiNTTO3izPHUu49iWE1RbIq05G
kvVVmqsMLOLo6bkIZmUpBNzklzCO5puCxmD6rvrUkhw8J5QpOTn0a/kpXX8J0eKcdkCgkuXJIxV0
YlPYR4togPZxwXcOd6dIf4CkLPfevPgMhufD8/BuEdzdDM+D4eXtXXB3e3kRzKeLxfxycHU3C69l
Zs+YgVRLbqoIrmVJTTZGDTpqt5DYGdJ/++Sj4qXPS5+XPjelj0f8ozi/RQ6eD88OyCHnIKrbb9f9
2Mq4+I9wiyUHP4xQSYxKGTKhNkSlNGiTBHyL6fn5LZgFFwNwHQyvoPmbnoNFcHV3Nx1ezoaX59OF
+qiUAEi15BbgSKrcGDXoqN1Czs6kyu2Tj4qXPi99vbbwn3+9//7LbxNbtlANOpq4HBRLFdESpOtC
m3B0Dx4n4889/H3AaUnASbqnEmM5VpA4x1ZU3G5wDEmFJ0E8djOdL+YzaIYACGfQFg3Og+nd1TwA
s7twsZheXIbzK+VBIwmQkunbx7HDa+ixCdIxkbxTrBGUXrskFQsVuqq8JnsGPwxXq3AV5Wf5hjZR
8nS2ytJyyXLa7TKdgzgYnGXrpHx4ALIszYJZlkKI0HVkga1FeEJoh0fKkyI2FQPLpUuP1fZ7Gekn
NQfQOS8xB9Tw0sJCkx4rRUkQFkUWTdcF0FNaTiB0XmJOKOKlhpUu/VabpvP3APJi+be2wnMCpJef
GqJ4EepBmn4L5qD4NSlA9hLG2grRMYxehk5p4kWInTK91/u+y0noKkD7IHr5OSGJFx9mwvRb7jVK
5umr9n5cDZheimrJ4iWpF3F6LJmH8GXVP/M1Kp6D5zB/1lOimkF1XqqaSeMlqzeBqJbN16sSizNI
G7CIEjAPXsIsKnshCiMmP/hMJnzjstorM6/C6ggiuFJMU6E2Val2b5lx6kq4ktJSMXll5GMSBlJQ
LXAY4wSrMMs1E4kOCLWSD71YkRcTduwAmamRICx94OzNl4e2q3jO0ldNJagJUgctDSFlnDU/3OjD
bVUTZMpLUwNNvByxU6bPeptkD6ohXWRlVAVeQFIEm96h8Ct5cKGpWBEC7mWNkFBeADmTSygQA1Ol
cuClkoZQXio5k0soEJemSuWlz5foqQUutU6j8ABfPHMPTZXKobeVNITytpIzueD7WTE7g/9/BUA2
S5MEzMq+MOU78K9F9LTOUKOYaAZmkCJl3xiIWRrn0X9EXnriAJgdUsWBEDZJjRRytC1y+E555z0v
svWsEJqc7AGQ/VLQQQBXuL8PGXznEt+5xHcu4dxlifzZuvTHc7UvnsB5e7INjO7t6jRqU2d7Xzhn
pkj6fWXr83d5dTe7GA4ug7vzi2EwvBncBNPBzV1wM5subq5u5rfDu0vlff5IgJRE1x6+pSZEl4aB
pB1h9CM12Q0p0PudcGwnSPz+vAjVjfDFizsRaWBk5bTb1rGBttjwgoi+An1P8v0lUC97jxQ4rJwJ
GinkaX6QKmXlip7SbkK4UK3hSmTMVzFpo5OY1VFPTTRLszzIwwXYnLPPgwz8ew1/Vo33zBXoKAKI
LNdeBBRwQq9xoYPRGq8vBWhyI11rCdKUQ8oUTjeYaviM4un5Kk1yoJWKPQXJOR17SgIf34rX6JRU
l6RlWXiBQHe9PkfFZpHTJTTwQ1uhU0jU2sfPQRIBFTPhdwtbriF3iDrhbNKga7RPSYMogdaoHqeB
/tpC4kkinyS1Dyn5dRFGcZCkSZBHy1WsoiysAQrL1XcD1lrpcvOVKQuVRVkw5h13bgdo8g3pqiw9
z+Hji6DqFyhOt9MmQ5qAk8c7jU9MNvX6hzFA+Y3yTlfxvlJhCEhAstwqkJDACXefDyGM1pyeBP1J
QFxktS7EHziyACOIZINLTiWnMujGCpAiiWt8/KoUh3yNPkpS1ea2CxzLTW0X+k6Y2f5EMNq+9EL/
99++fdcvRNkYmr6QCSDksJfW3DSf0DBkoQPOBY1KTAx39CtHkpivbT0xuBPDGyIhZPVZSNEC3LzQ
9v6RsjqCOhBst981KLthpZkQN9v80KJMo3DEH7AzQSOJL2oet3efMgPwWUUUxkGYvyczqZqtHQxr
tVs72r6KlJ867UFpzlquByRkuiVcQzdooybKG9nraP55kaZ/z8m3SJDOa4RLDvG6zzjkEm54fvGh
B0yeaNoSjcrI6WFq3bS03tBKMrTa2Fmv9DzNtKFZt4aubrwoDchOYHDARpzgbHmyqRfm7J1ARXYd
VNOokJWQwmwf+37q2guyF24ELRavL87BcDi9CW5mtxfB8PpuFtwOL0AwnIHzi8vzmyE4D5X3gSQB
UgJNGwL/ssxinRfpsnpckCa7JTShtHjQ1fC0CbQXC7ZMunc+TwPHzUG/zVm3TbDX1vOmnhSXgrvr
xOTAcXFsLPbZuLpsw8Hl7fViGAY3wym0CtP5NJheXg6Cu8Xg7mZxeReC4UK5y0YCpHiS9nN7lBJa
POiSODoH2Us0A8Frmv2Avzz6ew+1BShmz0EGXrOowB8Lk+6+UCHi5QfUuxsOL7sejB6HBvfhRT5t
HkU4sMo8ThYLtkS93Pi4w0ZoQZy+gmwW5kCRK9wGjgNucRv6Op59seijQ+QpKrwYsolUAq9ZpMDM
C8L87P4Q9WUVVtPVaRM5VPMQ0El5NSMRjAo0l3e0BDpaWvEpJ/gU8CjNo3N0P0ILH2oHC6kD1VdL
f/k6/vpbFj1Fyed6AfgJfmG8PYPPPxfZGojlOCUoqbFWlvnAO/b1xV+iPTpCWkv0eml239DLNH1x
7+n55cJvcPICUDY/6UpPHsDJpqV38Lk7+ITblAfpxm/RwhndB8a5dN4+8s6cd/chgWUG3SNPgnw/
b2G7jLb+zB6E0nlKW5JygU4JOTsfHCUvYRzNy5GSxToPLs8vFFvieoAcssb1BPDZBZHmn4Hmwg0T
A0ysqv9wqTKfOEvn4DNcUohKhc/9wB9UJULH8vDh+bleOrYCyF0dWxHA61iJOpaE5rJ1LAlMnBUX
XFJxBzUaUJUIHcvDr3TzY69c92OvvB8rXcdeaejHXsn3Y68E+bFX/P3YK75+7BVXP3a5hv+ULTbL
r4RR2R8z/RGprsVtgcohbdtCBUsGrsnQn6xU1DGx3YsjrEnv96JCq06vHrTR3OWrxyRcgrLvi8I0
dCNMSmjIahub1tPw0KQZVE25Vgtq8wVTLaWPVsjAbJ3l0QvYDDPcTB3fLCTVSWoDwlqfqA1pP3OW
n9fETGfOtr7ffls/RNuTx5PHk8eTx5PHk8eTx5PHk8eThwt5Th6Yr9IkB2hq1jSdv8vvVdcCg8Xh
biPOmjVtM/qqACuZuQe7bGAQTlQpx4nvHq0+0XoKkCzJ0IVOLMDIopG/Lcf5OjzRBim2qI4ZU1+r
JNqOqjeh3npyFAVnDSenyAm8rdIcxmPVTS+F2r4GEkcUfw3m3gaIsgG0xBZqDph2/lDLrELIfMVb
8WUVrcBn9KD/GoezZxCM0Zo/l81Zyzf+9D/Vx18RTNXnwV/Dt+DrE/j5vOkLXzeqC3V6+vm/t9/6
Z7BI059HX//YvvO2gfPn7/ffvjc9636DcvALwvjnt+AhTf/0P+J0jm2Uks9rR0/NIfmn6Rt8UoR6
dSDDhq4IB8k6jqUaETJwrLUkZOhb3liDFxEMLT/lhX6r+3q8yKYnjwy1TQKHcmKR2Za8SLOdbSk/
AEkRfH9fgZ8L8FacwXWipN207HVT/Lnsptj+7fu3AmRJGBN8tbJZJQH+pI81NoVibQxIx8ocbbIG
dthB2+vDNxnGXXbc1mevrXIrvCshgEDWGMP/9r4DHbl0cxxQcc8mY5CuC/jfeD4Ls7laV6IFKK2c
Cwsj6RbS9+iGrQgoq6xxLyKI06f81GmlI2sp9Ce9/Q89TZ2krVGqbuQ6fF4GPf9T8b86l04HD86t
bNAOZ58OEu6hKs8H0ey2XS6oamtnmhlSQ3FXcnCeJ3nzpBCfZeNGxRF8s2walxVR8oTKVEpVFQp2
VroXt8hL6UbWuuoQHigbY6M9suTI0hSyb1Ype5pVBXOff34PYqhT34JVFiXFzx8H5z//DN/b/PVT
uhuDeQK6FnX5/NARzo12bI58VLSTnCWANJtDjH7+/e/ff4YEMUhM6GAXSXq4vpFkFwy3FDUUJmny
vkzXebBM5yBYJ/l6tZIxxrp1XYu801Y8rXNMe2J7KExRkq/AbDukq5SgRRQXIEPtV1FHSZnmjQgg
0fSZxeWlCXQLGok8fBf6l9B+pk9ZyZFiMx1k69sjwWT42ibJvLAunzUPizBYZ5FYi7K/ij3ct4+V
bTxGh1v5C/BS5vbCaflsocx0tJAvwmLl3yNC9iipImIpmuWONhtkWZoFaQYt+yZRI9aKNq9pj+5q
xtE2TdYH00MX820Zl8vgNuroweiRotCmAEAUDeD7WTE7++P7+HcAsnGaJNDNjtIkSJPSSMwgYgmI
BYokBQCk8rmjSZyGcxnmCq/TS4MI7M1Or7F6iibFrvbg0WcQr/iLp0xlzYtO3eK0pZWULfM18W2q
GqsLcWXuFOvUWKJXEMdB+RUw//Qmp3bjaEneuO1+AxJpFqFayocw/bm4IqWcIIZ0QYMlhwq93c82
Bx7BeiXTrzpe07YorQ5HO6M0akx//+3bCbsXWTT7EW8mwi3zz1c/zSBCxedbIYcRTdwolfUJeX5z
LEpOL9bdurFN6sjErcU5LrJw9uPTptOumjD5GAANg1D+KsRm40yJIPrh/umQaN20v5Y4cyybSVXy
9T5FRUeFxGtpp9BrWplT6EVadbFnOZHRHP40B3H4/vni6lycu6GrVhZNe8lJPuqEmTL8M7BMCxBs
nhgs1wVQ52u0gWJiWEazp224m+tryaOATfLdjxLlt86mWfqal7M3nqPyGtX7WfEMgup1ECUFyBbh
DJSXGaZREparPlafPp6f3wgUfl7Q2ZGm4UUNm6IxeTTZ+awZCOfvMC6CUldO9QnSFUhkRDpN69qW
hGzC084sAju2dc8oT0afAEqrz+Uy5cnSPhrnJQcnpJVz9sQKAEn8eiH1Rlpb+Mw7SdEx0AyNMUN3
B4KXKI+mURwV78IDqd5gWRJU9aaDVQGWBGrod+laDR2IBx2Wv6kiwlwoofpAZAQlnZiQqYCiJ4uJ
767DE0KvDfvJMBWxxSpG1BQIvtZPQ25BM4PMWCuhgv9ZngfTMAfBOov1cE07IHPJO+0ghXsOam+C
2OOj9iaF18Z6kLd5Pe0c2TYQvWBzd7faCe4DUc2p2rKcblFUF5AW6NK8eI/BJ/iWvgTfgmgcq8/X
y+X7p1XyxJW4w/PhB0Y4hFJQbDQ2y1L4L+oUpl9E1gCdq1FZAzlYZnvUnJwJPrmzOTpk2RiLI0Rm
cngfUhVB29fUODasB9OLtvAYsZ7wXsYNoGzHkstoCYLZM5j90Dp0JIBZAzWw854KCGI55wz1L5JQ
RHeyIKnfLGBTNu9rGRB3Qmy5iCM8jZLwHciW701eKjKThAYDLHxf6vW9uk0ySn7yvvbRmG0qMxab
hvnQHpqg5E7htSiIrDOuh+O39udrfRycb0ZswS/9yTyngQwvJ1wLYmqQDI2F3/9va9mBmAA68Y3v
6VafLD+JvuTcrqFb1sImwQwE8J67RM/91MVhSKJITJ/YeBd2DzU7r79SIUjtSUfL8Ank+h2Xn8BF
304cNcLb3k1EoruNGYTLXMfytslhB7p2ymZvpE2Zt9of3YbZi7M0y0ESTmMw/7R6F3Ljua7PZgbm
UQZmBSoamYPPl+c3P5V4l70v8JjBi8HNp3P4v4u6EdikgLfMnTx8hFjy96AfJM0HGTTkQIC7Ozo2
kMB96vheE85ranXLHYbrc111gBvCd3F+Lkb6FElu36m3MnheB7m70k/p6kB/K8t2T8KyHgGZgiDM
gcDLVzAz8CgrOaTGcBoFuuRnADzjTaYJFOZaGzbraoRX22ejtPWIu0NQXXns2jGZ8oGidLEQFhwa
yGMWX5dijA8WURYlT+h8PA/KX+Nj1SAGyVPxLHjKNNn69kQOZPjadmbDC+u2kV3nP+E7qOc/5Ssw
ixbv6NmfLxS1c20HSga9fMMc+eozSZVr0HoQBF/c2b6v6T3PGvj0y3z4QV/k/Cxu/hcfEPgw6/bG
A+asL9Hy6fM0nP14ysr9+bXkPE0FjQh25TqcwHZr4UDoxrGOtzxlZHdvfzWxv4K2O38OV+C3dZFH
c7PU8j7gZmyMV0DUG0sY1cD35mERBtM4nYo9LD5Zykcphkcpxl/MIotSjvlWYDRCtVRdWr0aTC/x
SFHsik3HB9tVKcl5cTuUuditEs/kMQeFyXFjHfzq8394f+cgBpv5pjJs5W4xiw5GTpGz7hSEBcWD
H8IXIJwJzyjXLcfdL/PeO6vW815bD/Wyz9OiL9PTL+pDG0X2+wkUkox3tZKFlrvCzFqzTYyfQFNg
anrxBHh9RP85zCWJfrWShaJfYWat6BPj591fsWqDUrZzaWY9t9as55ab9RyIaPGyCOO4jNv0avBS
AxUBx5qa4d3u7MWQRmvI0RhitYUjtWJ7tBR/AOPexeMadWGjokAbOxy6fapm9OZdXN7ZtU7bkaTV
F8lpdc7WsD6BAv4UgrhKkxygLrh5MEvTHxEQHOF3Lm1PWNCJqm1xAgeED7VB9QiRSrV1VcHI2ne9
krNGKmcfrpUopN3KtuujHaZuqCMafP3sNE4izpjyxGtpekx7Cp5iLWqy5RQilw37peuYvToAdTTM
CiyyA6bYGRssRMhDNMRlhoa4lHcChWi+Fq0X5hEx/b/mv+bC1MkpKXifRdYpKpax6PukE8RGdQse
X/ds3znSxwTFKyQdfzZoplswT9fTGARguSre+S/ch2VJyc5/12lA2NsyyYDU7J1EAciDKVxxJlBl
da0qFdk8XYIgzMgEpeU5r6+vQbguniEDRbOwAFqInMbG0hkDVsdh0hVKLXfq6px9HX9FE/Y+/7fm
rLcHqXIupMNov63iH9XrTTfF/OPl14+DB/h/WzzgOyUm8K2jx5+8A9/YLgFfN5Dt4+WDoBaSgw9G
UcEwnvH2QRPJ3LY7dVoyRVLBS6aXTN14cutsfLyc/LcX0xOSWCKz3vtVR/vf//bnX//69c/3P4nN
D8Pg6jCyCmZhDoII/p3kURG9AOGnKATrExyp8OOlLeU9J0mVYc3o7q/c1yRiCGRV9B18DlB4uVIo
V0ZVgGjGaeY4ZHUg68N/NTuLKmIDSKFgmWbyvZ6a9bl36FGcY8Q88XFw7ZOuRwTxvqbLNtGUJIeR
EiyJIF6CfbSoeTEngc9hYWUnF6y9hvYa2mton3dQlHdwRWf5g0Vi6timzXxuS1RuC2RZmm1urklP
ax0t7dsj8fZmjwgsrmdSv6XpG5uVDB9Ey5IouV4t1xogI+XtemKWK8L/zBXI6NHSWl1fNPx89Ii0
8o9GaQAw3ktmQrbmMeVY5zAOZpD04ayQcZGYCAIvmNylo5bOMm0oAwTW9SRssKeW6yqeG29Bk7he
THBK3nVZo1EE6QokYK4m9GkAwaruEGQo23+mwIy4fb3VnNTmzPtf+7hPYfJOFex+Td5/gV/vqbG2
y1qsorY4+q5qUoWbMQu6v56m3dXqQVRMbsPtKYWUNv9eFJ5tK4rC0gY3gU6A5KgUXTvsNQGpoYtG
16RKg15NvVQNW4ci35pLfmsmlm3m3AqLOwjMbcE48zxVoyr+PEDfxUiu4RXVmovhYJoHuVkaNvVi
fVXOR/9Siw2ilQ9D41T8A0HNwwndW932OH4PVc7FB0kaLOCCzyVowa7jmEZFCB0Q9tp6wwJFKjbo
fAw51l+TdyS3HMVWOP6GyzpJYGh6SoASVRsDMgoS2HQS3qHUWd11sTGe+KCpp0CYEaPrFSqTkVxa
sNpXH1hQICFIN9gQyvfWD+IbZssJsUVkzx0ba89Z6BjTEnXranr+2Q6qRroPl2rAlYLwqTRMYf6e
zMSWhbUsak92pgVJcfZa6rmomnQHK13JE6kC9pOnGtH1eLYLWPVa77ffv//629++NXjmu50VWV9H
AYMwblSIPuH6QlE/fYAKk0dr8XhKZb7ZMOH7LARk3oddXWrLTl/EuyJCXBFFnoh3RGQ4IkI0iNU+
CRFf/v7bN7U+CSkAomRy9/sc8lK2DOPoPyDAmSwZfknTut438b6JHN+kiQNtK9boi+2hllqFWQ6C
3f2sL8v3YLbOi3RZvfn5GcRx+nFwDhktnn88P5cZ2NFDpxPlIDgH4OlFuWPo9OO5cx3JdgCaVtw2
OIf/pzPDnQIokn7eo9DVo+in4zdcpLMR2gCouWbQkYqNYOpl0++0tul3mtv0rad2p7Ufeaczz2lH
vBoAdeS8o//T1rmsh1RD//xOX//8Tj//XLfQWbdoGXO7jl6Jfl6IdhZAJ/roRRyFUe5h6LYFWq87
d3Vg0XT9fY4gtbMI0lYgRjULmVhp2Ld4qm6vrDhDONxa6w4NaNErfxTNY0w8KZ3TatYz/b6tF7d6
fqzZattEjhbFP8BrFhVR8vSh2vwPq7B43ofgH2D66+Qvv5f+xuYOQJHufwofCZccnMXRFL+mmezA
9PMaPDUqy6qFjueW1XBJPRm5i4J9/U3ZNF2UFCBbhCXlIS0/QVqKQf90He5burfEPF1KQaVaRyQq
5Q+k4IIX4o6M71fKS1gZDxy372t6U68GPqOpvD3LVZoiYIDTCKo7du+XYRuZglNZzcGal7Xn3mkz
jpbHaNQdr+p/L7zVVdOyUjfVAJbtaNhgWMTNh6a9A1TKriBi0wPcYn0KrIyIOdnw6Y7WZISq6iJC
yvZMvUJpfk1lDj0ruNTm5lCQJsFWy2t02tcKn4tHaq0EcffooydZSomL03CeF2FWbAa8b8cHCTwh
blrRnuCgCUPbQgN2PH3CkLswMyYZTlfVNIXYBqg22jRJg3WxuLgO/pWnidg7xSdL2aM/T1CzTXEy
IHhYUId+PYUOdfkEcUzWtKIA5MoBhkG4KMqr/dOShEKlp241ewSoDjvbZIgNRyaDoGdwyFgJuke3
vOzkunlo1chVlsjVLexHzHOQ9jrC9pgpTyuI1MvXGJooKeeTF/vV4osohk9/TMIl+PzPYJGmMmvX
SeARSh4b8zjUjvU+FYt09ek1SubpK91Z5uYn7DrraFkrvYVjJC12GuxBVTehFHl+1biksF33qSre
HDNfZ1HyhLz2ALyUbd/EO571iwpuvbbNKGmeUhOUSNPvQoapJquee3t49oIWrfGfq1E8kttd71YV
iubpA1ZZCtfP4RuyldrhyrI0m67taesA9NrNAO12yMYyVRzFysbrORZcT54iWcMJUWtJmgTgLco3
4+IWEMhPxVvBFanh+fADB5h4V5fXKUhrshnHbGNlHoMeSVo7p93BR58zjyWA6nYeTNOndS5Bcx0v
Z1m+8Bg9KyWMHsnjn87CHARRkoMkj4roBchjvLqVHS0dtawxRNcu2yyK1PhO7v9y//1egbPetbDY
HTYsNrGSmyVqrl/uv04UbHr7ssJ2vWGSjgSEO1cWhnPd+BwJCLcvKw7bvytB9u/fVerrk6eo8hqZ
fEb72u1o6TmaV5nWyFlSCtPYVv/n3//26/i3P/6mQAl1Ly0IZz6NMAJ9e3QEPXp0MGuGN7idszRL
FHBS99KCOGn2HI3/z70K4elcWRDGv3/9Pv5FhcfSvq4gbFdhIR3bvmfBBBU4JUE7UBNEUEXn4/zL
fki14iyFtFSgHlqXFbS549+U4Nq+rCBco2Ry/08FyHasKwjbZfqiIrPYvqwW3uGprtG7Y14thGqi
yON9KlMJs3UmMQewv6Kdp5b7GNp8WkKHpw0ZHCoBpxdGPHikeC/DSbCbPy5HMhuX95cneaiFRvLK
zFSxAWHBsb0o0d38Ax2duQQ5PViLTSilNL7d1iSq6WzLuKW+iLpFfRywnuCyafK10PnhfL1cvn8p
32n+5t/SDxWtPixKKv6vdu49frAkFh3eDQj0ziKNy+vdvCuJD/TNbg2O20VTlInMVFCE0ebGjBaF
og0wUdeKIoqV1dFSDcf+gm7V6jVsnDWB5+n+Whl3sqCprcK0Y7cUyOSWjquwNKBFObyzSL8VmZxb
kQ2r+hiZg4A30Fawv8myqnVFSf3FMQMLkElp87W3Evcbe0702WDebMpwJ5yV10CD8vgoS+MgTp+i
RJ/jmUbo7HY3zUug7sm7lFwp6Xp15csdDd2qR0utqCYDiRtVDnV16eLKvtZdu6aglhWHSqSk7dd1
8Sxkf4fnFx/4gbhTcheDm0/n8H8XTCmtRi1qTXRdy05WBtiMmOorMnxcA41E5nCryley9CleS4oe
9a6iuTLn0xxEahbLU+tWizL5/U6x2PQXJ0NMRLcj/bUZuyHxoP50QfO9T1GmVAUrGuV9nvCSna4n
A5rUh+/ltFGgXbvUI6jUZ3LXWVy6/+simMZh8iPYdTQWrDebF7asUrgZUSuFuw+61OK0z/8aNhBt
Ak+p2Ms+IacsmCn5Z4o7H2QFmFf91iXFv13LS3PuDI/X+OjNtp0gC0B67wO/csAmbWCtGWDePV2r
efojpadasEtamrdLhf0w32jYxR2exp7Gnsaexp7GZvu28kIZnbxoCSWy9Gt6WfH6yNPY09jT2NOY
JAF5WLIqI8dTt5pI4+s5yEupp7GnsacxcaHQ+OtvWfQUJZ//W/eSph2knvKe8p7yRlO+Hpmf4BfG
GZiDpIjCOP9cZGtgzBaRo+Sts0nW+ah20PgQ8CDIkng0S3gi61nAS5cnrSetJ60nLRFp5d2DE7iJ
/M4PKWdVeFH0ouiC52twLa+R5x9eLD1pPWk9aa1Noxh0ku4NiBdFT1pPWk9aT1pPWk9aT1pPWs6k
PfA5QTJL53JaxR8v5698einzpPWk9aR18YDOqJbrx6ZLSt91qkW9YHid40nrSetJ60lrQ4C6e0wJ
E0iKEqaPkwexVGtbWYC9bl5ucP1xcHl1dXl18/FyZCQnit2OA/oIct+8dvLayZPWk/Y0i7nIwqcl
SApJSdP95fytDC9lnrSetJ60nrSetJ60nrSetGaeAvE5ldn3jZXyjOxDLR48yuGAipj+Xud4neNJ
60nrSetJK4e0ontH6TyCRYFZFtIAyz6u8QT3BOd4Op6Bf6+zCEIn8yR2u6iOIZrnJy789OUZxKvP
SrgKLe0ib7VS5ePgcpGm0zDzbJ2T+TSdlPT6yzsgnuCe4J7gnuCe4JpcSf1X+BLmGzpUk9GDgaRC
q4aVpV1U9Wzj5dQT3BPcE9yXPnTHpQ3WStw8UcX9NZnx9UJkrtbyw0f8Fvot9Fvot9BvoZFbqKJA
RHq6wjOX1w9+C/0W+i30W+i30G+h30K/hX4L/RaavIUEx8OqjqWlNwLxTOj1iN9Cv4V+C93aQpNP
w906CydvOKnhbcUe2GyfsVzHRSS7YPB0UU7Jdyyx+SpNchDART9tlEC5RCwGsT4QkWJtkD453Vpr
lQkLqodXa6IkEtwM8XQtubuoiEnprX6rnPbRqZcqdOoljU41Vbtcmq1dpPOoDWr20l41S4jaLF0u
0+TsCRRB+dQgShbpp3w9FbaFLQtqp2yvVCjbKyGXXcrfBOWNbvgtofvbByKdNJkBFuvKHX/4SkiN
+T7H7BIyiuWiDTRFAtIH9miRhUugOm6mA1GhITLNzbiywYM6/bYbjhOdVPTxpK5VeFLX2oWt1tjj
657zFwUt2tsD/bKKVuAzfK2fc7wFTSdpN81c8WEhqIMz8BTlRRYWUZqodm6awSFVfvXk/RK+pNEc
8gn8yQzI3NjDlcVtM6RbuCx7UoXzcBqDYPpegAC/+wQSkIXxp4ralRMufK97wWRikpZekzUzfA8f
RYGH4v0T7k6C1LnQVAubajNdOxbpq1z23CwJNR51q/EOdXU3Fr0sJqXFyMA8ysCsAPMgh7CBOXpg
kG7qySTZkG4gLDys7Uba2lQ4D9T9SVFf5U4ML1iuindtzhOOoFFBOZOcA8HGxBUxFE1GoucLIxnh
6vpzmVdVnnIiEit7HotiB1lv19gSr5TOH+UeDzC4w8dDCdCzystB5Zol839GTy0PR9CD4YoLkGVU
4k51wenyfPCBB3DSyceDUn1SH4qJoX8Q3YOZeB+W5aJOUGpznvkK4gqd1nBeOq0Q50UUFyB7TMIl
+LzBEqgd5NJCHZq75Sx4K2OYpoEwi3Ucqxl1VK6slBxbTaTCW3Ihe+hOstBbc8NNeO+wLbes+p2M
NegPX9U7B+LMtrsWuh/m1p5j5+zJnEqf5tFyFQO5PsluTXt9kh2OtvskNJj680ouQlynF6ttkO3N
bZcVxTImVd/UkMWNOyeczBJ8arAK8xw+dR4kaRLk0EWSGDZ3rc/9Aq8L5025P6qzKOYzsJi4S6rl
VBb3guKoQGEbSeXBuojiXEJNRM2SPQshiLOoLzDQi+ZgGS1B8b6CT4vTqcC7Gu1r+oNmZmFspKlw
AWRb2dsjnpFKXoTFukx/yUw1bRcVxR4Ny30p+5KCpPhcPEd5/pyu43mSFsvwB9SI0aLM+CUzMF0X
8xTkHSuUUOUJ/NHmVVACuK+Pd2/CbU4TIcTlF1AxEUikUqGjrmQuskpSTl2JTUZFtv9ysKgqD2YO
XYigpDj4FCbvVL7M1+T9F/j1nu5MDQDeseHm2NRQV7qLQwsDMa+ITDB2ry2eBt7h4+3wfSk343MB
3oqPgwf4uyj5eDmaQe7OQfHxchLlaXB7e3UXXPyEnYKPl+Nl/vTx8v7j7eXH66vy36vbzesb+BF8
CvpUiX0Uho0e4r29l0Bukv6BWImvqO/BYdEhITnS1p0aCkfdtLvLvLxHagsEXUgkskIk1lE26IUu
L1Yw1zejJIT3MlR4GSIGFHkvmkjQwfwJBLMwB/mnXQMXcg9t85Oe8l4PgsXOWT3C1jtmrGgTPkyq
japbXgoxCO+C7/X96BBoOj2Wz9IVOFFDZ+gvkAXrZPuymqAWgznXfZHQLe+YeASqaHg+/CCBkgZl
XxBX58HF4Gqw8yXGg48P5zo6Pi3gSlNynsgqDKg2vgKjdrLJbxBGAvJmx2Vj4wD+PKjRmerHEbRD
p09YUV1KCjIwA9FL2YmsDPZKyOGq+XO0KP4V5YIrb5lhEhd6yBZH5aEOMc2ln2PygYzArVxl0NHL
iggaqzmYRzO4ypzhMISnp9sBElsf8HonoHzegQ/w9+8Pwe3O+J/klNT7LdQgq+I7k92ZDhZ0LxF4
Mbj5dA7/d0E7naHdJXDHO+zNUbXiGiUvYRzNg23BnmSnpXZ94utCpART0/rwAABVakTLuw89yMB8
bd2X2nXKnXQnlR4KmxwDXoe2Jw5dfR7q4UFD37MJVBlsRALw2zLePyl+g29pcbRdD5csqp08K07D
eZQ8VWfecl2Ik7W5uw9iuvPJ1WJUyNI02+Nijk720PrTYgaMfQGPtAIeXvxonlOiXVDdJ4yRFZDz
qG0QF67qG8yR3/CRGWn3SKdsWhbsZzzXxSK4lewQNQPh+7D4ZiLqcw/N/Ck9AcEICnu8+608AQn+
n1+/7dyX+8vSWbm93rwYfBzd4XduNYzXqeCXuhXdD4Qxs2pNXIFgcfFvE8rWB3TsiBM7JjrNXiYA
i+c5+2kkWKOJLsflU8tIEIaEcCPDJwD/+AXEcfpxcP6PNIvnH+8fPo7GH28vqtBw+y30d/V7HSNf
kfjKYvR2v6uEISjSYMNB2ykkAaRrgGuFiZi+WR+vkxwSTk6xlkCPl45QtJMzaKnmG2BwM54dlJbu
HveBx/wLxwQmTlCUUJflNKGSjAhuuRxYPhVu5BPEJQ/AC3xYqTHzFYzrQTAPizB4+k+0EhsXkK3f
S4+aOD+Wi3zpHyKR7b5t8REvrI+Ggiyh9/rpKVp8WUVQD5WP+Z8ii2Y/YvBfw6vz8/P/Pb/439ng
TwJOIPyo4v4S2zTqhXBXZfCbeTWFXu/Sp/jpIiiXBuXwpowNUxp408RPc1FK1f2plX9Urz9vVvp4
+bUspBs8bDGB75S4wLeOHn/yDnxju8QmNurELog2lxuoUrhsI5SNJg33Q2tBWyNI4kRRy46hCJTl
1G4XNjAzlQzlu1Uw25ti8J3SvXde96qjjFe9IqhlS1LcNYV7cIsVlRSq07fEET55qyw5xQIM3ads
qq92uL9NPyp0yFq0XK6LzZpwmSLdHB5JrpfhB6AtloQfRVxKwfGlC7GN6l5WuVkmAdEIqkfLkkeC
ZTpfwwXzTUiRq9dQ7UC5opXaqeCWJupLC5/q5kNH/GD0iPxAJ26evYEW9YzkTLlt71c6GLTluWqB
6snB3qg6PfRvK2BO6eBWSjioh3vSw+tiBbRsXC7Qx6nuhFBDOTZGl1ERmiPjbR+Pny56LmofyCwg
7pfyvU1l9Nnm8o6+xD6G1Brih6tVXPbIi9LkDMyWIYJH942oh9rKTflX+GLgpuygtnJT3gIzZWUf
bks3xkx52YfbLsNujqAcgWvXNpgjFkfg2roNF5/ODdsJCLG9m3Fh3GZc2LsZA+M2Y2DvZlwatxmX
9m7G0LjNGNq7GVfGbcaVZZthkkdrozsbRy/AoD3YgWvXNpiUjjoB2LatMCzSNi/zdLQGXjxYhivN
ylEaQHOyIKWBFg6XpDBTxBelKKFmy4K6FqbUw6ilRJtfnFJPbHEM+AK/HKWJPkUqjfCZQuqjVdar
eTk8MFjE4ZNmnkUDaE56Fg20cNizYKaI9yyUULNlQV09i3oYtZRo8z2LemKLY0Awe043WYL86XOW
poWe/sUxlNaRfdProGo/b8YW7ENs1XZESV6Ecaz/LlSA2kh8s8ShBmirNsWYjTCM+FEyB29gPp8q
jzhrAHEkvqzB3Klokgl/HztKoN328frEhacQaUU7bIc3Pc7xzHbFirUFIlc0bAsJOKuaCtqtfGuh
bU6BUkRKm6yWPJ6y2HzJIeLpOhoZtGbQdCcreiOQYRL6wcQhGmvZJocSxb2osD8EBj1hlsIHZutZ
kYrsfNq9rh+QyGeUVD11ewxFFLduA2dESQGyRTgDUvnxcFV7Zk+3YWnrODU2XMksepQ8aRJOHkJC
OUd6b+xXmGXh+3S9WKAuw+IErnVZcRInm5FlS3grWUVPw2VfvGbEXTUOtczj48momzndMoe4NsEg
kAhWZHYOtRGLHprG6VSmAsLrec3DUwVgqorzOBnWszPxxShyVilb8u0//e0cLOD3gEyds7ekD3j5
KIA9ksp1dkgX9snmvoqLGNRpHCY/dBiKtQNEHql+/+3biYL9TxxNRV4XaVmTUZAuzq/O6VU5Hl0t
S4/j9ezJE7GOAjcrQ8SAZR2Lb34oWayqNVmwI5Ept4d+cgticQpSpjLaX9NWhbSPo91KiQ7TQx1R
ZNHsRwxQPLWG0dT1T3MQh++fL67E9B6khOGnfAVm0eI9BslT8fz5QhxMXp3x97O3Byp5kL+qPwSp
B8aVcrp67N3KgrHSwAfjkui3t0Sl07QgYhNYGlPSqTqv+t1xqcaLgQJ/gNcsKqDJ/5CBf6/hWx9W
YfG8D+Y/wPTXyV9+D7McORdFuv8pfGQ0jwdncTTFr2kOt2h/zofy9avqwYMQGHkseLCYSvx3vzyb
p8tPEC4xqJ+uownWpeKXgjZeSBO8j1aTQoKaNXXhfTAvJ32AuVR61K6qkiLkjtNrlMxTnaLKE4Cc
iyxPKOBodMlAh4O0XpS8hHE0D/Ab1W0QGfnhpqUJeNn7k739SQGypFXhB5/8fhOPtlJIcaaeCeaa
ZPkijedQeIq3QqgyOFlNMJI+wdZf/M0LpDiazH/laSLJROKlfBkwJ92ICSqhAphoqbpiil3hqbjA
nurQUpOcALMIN1Wt7AitfkNl/44bO8j6KfdNvLuUuNjgVuJiF5cU5uw7eCuCvAiLdS74TmvTiqTG
zZ58ngGxFxcbeLzTthZH0eN5KOnPIJyXLCW6d37TqmJwtCvjzC+A+F72xZins/US3QTHeWtJ2rdl
dfsKNNuwtVYb9cL5UEd0PVMUFWihUMQLuvE8Mb3oNNY///qXYJ2EL2EUh9MYSNdZ7evbp7Xa8eWY
4rS0wNjGU0KxHFOvP5qfKlfvt8Ehgzom6v42mtFp/60BmYNZOkd1+xKS37XL2qfra9G0VU0xInvI
4VUQuteX4ePl+OPlw9sy/jg4r+a8fbycfBzcXHw6h//Cd0GC1kNvI7OQBxeDq0H5+eXDx8t7+JC3
8j/g+mN49/FuUT508FC+9VN5uPg5XK3iMpwsHz4oF5MZq+uCs9pN/l/w0SVcELlScSMElqAI4Ruz
57LWo4DIHmDajWM5dxi+0e7JarwlHy9H9bjrT+8D0NfFIrjV7dTBlH0XRzwahSSaX8RoH3u1daNq
EENInVjlVDrU46yFkrDbgrMaw86UAqo2Kzt6iRzaIWFKVQsqBMGVtiIuXrudBKglKJJj4pMl7YuH
T1C0NRZmQNTHwSbFwWI22JKYzHxf0cztFWwnpNWV8r9a1ugWGeMQOaKU+Oa4NM/c2JV4FJ6Je3g4
4B34jCiRC6e66mgr4jI6/WRl9sVeEujCDFRaQpVVrQNSse6oA0kZee7lUYgCInq4KMh/L2kHhJPq
/uHjaPRxREUnuiczLSFHiNrYRKu9JMepmdiq1MN4IEYGCfjLQHk85Ub1eb26HVRqbGip1EexK0wx
1jK2KHZQqnGFELmn0tRg4+VyACFslx9vLz6OBtpZ806iKeWwRqrpZJYPIq9p+rTONbQ8p0A6dpgp
L6V+eupd/jhM3qnqLb4m77/ArzOes++vaE/zlWY8LRkze7BvsiauMSzasAd8V9usNEuXyzQ5ewJF
UD4viJJFKrSZVcuCShSJGCwF7JQH1APqAfWA9rXvvr8hl3oOAXtN0dP6EHhtbmg3A6bEtrPDHS2y
cAlUd/SmAVBvAlutS2i2iTGyZWin8Q8EbM8AV9c+GkYO/a6jqvQolKXvQ+0TyCn8NXlH3MiHGUUi
TKgtUW809RMfGqCx8NrHCQ8wMq/gziS9UjYUuMH3s2J29sf38e8AZOM0ScCsrKoKMrBMX8D3LJz9
EM6elECQcqUGwRnFTnhoPbQeWqOgtWLUUYPpF5C9YDS56yyW1P8Pr9TL7TH6DJWODTYAld86m2bp
a14+9znKizR7PyueQVC9DraN8vCnj1Nk0EXtaS+Q7PN5MVvbesO5J37a7FkvttVqc9UcCbNxkjiq
yzirZlDYpegs0pS//h2eDz+crMBXgI97UM6jDIaKZVVV+fgyZvwcLcMn8OkpWgip7ro8H3yghkQk
DajR7dMoVRBGPv3PQaQx2d+WcTAN82gmp1XMwXKkvhP1QQiiiXbnk8dgKdh6c9zQA06x1RelRJKV
43Q9V24CT51O3A61jeOg/AqYf3oTnEuoX1IA9zRVmB9fkT5TdsuqDhJZukKfHBzl+Qa9vd92mVtl
KfREigjk8qx/w+J+lig/i9JAYvHTRVkXNy09KkpCjbM+zJtNEA8zUkFYfK4hiaDNA1rQBgMimShx
CMPpZTqPFhHcFLlzCo/Xloy6czqCltf7YCqNnRsNCcoRCbN73euq807LvHfxCqM6eT7pwZLs/aaL
LJr9iAG6tbtOis/XP81BHL5/vrg6/ylfgVm0eI9B8lQ8f74gGp48D4uw5KmnrPTBGG9gt0ElAApX
i3GpvfQDppPjm5Mv6RPtDGkre204JeM02ogcFBOQb/yu8s8iC5N8BqIXoTM7WaHhdDwR5WkAfxUl
F7rUb7cARIrzMYNAforCoLrJI8lqH65pRyEOK6/qV8/Rx7XtaWmFEFGGu62cH7Q9CTyUdZuPA2kx
JWiw+4Za5J7tGuIq7/Z8CpJW9CEaTaCMVJTN9aVRTYcuWY1w6Uepj4PRm5b8tQedjlKJO59pS79a
OLWlpP401I16L9EcpGUfxSB8hb9dAm05sQFSvalpAh11lGatBVk3rturMtKQaHvQaclpuc6clutr
azU3tLpKKIQvmy/0llMEo8YUfNtMQdLVU2mEVWqGqLuQkAm5zUUYiFb+8kS3AdLGM3O/KN5yxsBt
cBQBoUVxT1te9i/lUvvJ2VWZnH1VdsbVDg/riU8CH7SteykJJ7GGuH5tDe/hM2oagecf7cwg7ASE
5zlYDxSMKLqSSw2zzoHqJd/m8yDbMJboSxhdcsO673XP2QdBqpE+WpjUQlsxHqAX11Jp/CyNY8E9
ctjhsa9BTgNz21x61L7FtptfPhtNgK4K99QAj5ac2WQGTpQi4IupeftyR/fGy0R2eWH8p/0MkcJ7
7LXwCFU79OCgBFqZcNWNUDvIhJKMvPb/mHEFdZfpQa7BdbhcVUSDf4vdUR6E0y+5TEVgLWX5fSc4
21fvwrmBN7TaqsljsPUlbRO0GpJ2cA5f/a+PV6Px5Ov3r/C/8J1Fmk7DrPzoanKAkI7UpkJAV3u2
vc6mvj1UG2ymeJ47vmhiCmMYmxAB4ZolB7N1FhXvAQQzj+AWbsoFNhGJ2I7fHQvbk+LqQLRf3vIP
sEwLsB9CKz0WbwXH9J7ugrbXwe5bjOmiVu5SlcNiB8rCg/OexDhudfz06V+rJzldlTdLCZXzDl9q
s2SwzuIgSp4BXKlcqCgToupvtxPCRlP2lINkHoSzGVgV0IVMntZlW2uh56hNK/ouieyeTT1FRQ9C
ZFqXwXdJFwuNPKkdNJTlhdtOK2W7pKKK1DaByiKKC5A9JjAO/HxET5mREx1kYjjD04qcVuaeubdJ
lQ1Frvo1FulxJEHodcitr+UcKxCyn3S3nUYsjpSJNC/OO29ia0R5yB8v/9LGimRq9A49geqXcjv0
bhf1iPGPNxTfaeoAyKVCYx6qT7ILt+PPBYwGyv0souRpV+4+T5dhlIgzzmLddPILODXeQhdBRB9M
mFaCKsPxZdhQWb6v8MtebkxPIZM90d5jr/V9kTF/i0gMfNuK2owhJAPSEqLvCoa+bJKN0zidVmVE
e1/TeUfIMPAy4qKM0DkJ0ATG4exkNIcOUVsDaNwnwzJL2gIUs2dT1cQGeDfiSgHjFmkY1o3xdnwp
YtPwI76U8TZVf5uq9s59B0D2D8PoIIBPkMlMkDFc0JaVIBN1S5veJ0OPMDn4PMHALJ2ti6p2VUN7
xSxbMeunj70D7GTitbIcZiZT9oHX1+IVZZQZlBc7c3U5vnog5GbzvNT7XIMgotOuY29utF7Q3ciC
suJuU76zJw3m0eYxYfYuCfm6BeVhLcY52cxlN/WY6gR4bwidNoQ7mftWipc8nXi0nGlKwXu7nujG
CLlAU2J0dr0eAy8sXlg89W3Ige7Lt5meulY50I51lhGMKfIkWiyi5El1O5omYEw8/6Pf8ibsXRpf
w04DG24nsmPv77JIot/BEto4DA1QaUfH5TouolUMggw8RXmhvgFaG0COWJ0WCjhleXrRwetfiTQE
y1Xxro3uPYLG087TztPuBNrh+VBU4xf46A8swGhJse3D16t5WABt/KMTcBzzjk7wd9I3YqCC94yk
URA9O0jSWZr+iPAXhPfb6g+fp6qnqqeqp6qnqqeqp6qnqqeqp6qnqqeqp6qnqqeqp6pCqibhS/RU
QvsaJfP0VXU+thkcN/Kxzfi7lI/tQwUb6qT64O/z0dIoeLSINienjXBpTc04DedoAHRZa3yIwbY2
eP7Tvz9fKC+YJgXUDnoPTKH3wNPbDHqzrOX1toF8vU6M0dzHoGpI8+rRqJvsPMrKcZrTdP6uSdDW
BpdT0VsbIRwM4/qRw6J4rh8hfGAnn5RNq+nmMrQAqIrQv//2jQciorK6l+eDD/xANJuby1nc+A1N
UugkoOpM9L01imipwdXjNoCcc85OKOCoV8ZAB++FSKThyTI6+h3HkGlO0821InV6uA6Q/mm0lu3w
pNOBdF6SRUrylwQU5cfBIkQDPrThzxPIPE2do6mXff40xYFbGQ/+Ub3+TG+fqFMGXKH0npIsc++5
0nOlY1yZJuGsiF7Kk0g0cCcAWZYqb0jUDZYb2ahuOnDOxVQgbxMgWqRjToFSSU97cnzSucvaTJ9U
Su4tVjxn6StaS5twoQs8o2kcFc8BajkErY8RZG+B2OSdWGTpMoBasADzALyApNB9I1oANnkfimeQ
BLMwmYFY9x2oBdV42q8yxE1zsAjXcWHEJjTCrPFupEmU5EUYx5oFSh1QuRIndZDBh0mSyWlTlCSX
tywOkuQRcreWniFSK3QGE1jn+IgWYHO3QefgiBJeszbhNYyKdVJEuqudDjjN5Xw9w1FiSA0nvL6x
KD3I+m5Fugr/vS77buerNMlBicL2yqLaYJQAMEfiUQJKOBVDcaGHD6MU0LJxOX20ezeEamltw+VU
KnILZL8pKAsQd2u+PWc6lPmQgmmI0OfRchWDT8VboZiuO0BMY1xPQm96vOmxyfRob3S8ufHmxpOQ
koQrCNYSxrjhE/Ta4nRaThtXnUjpgMmNHEoHEVxKn/Qmhc+cyCVj7UrKSdkAla7k3H/+5oSwPLUq
w+rqe5UN0EhXE0HpnvYmIour+pwTcWwI9ASQxRs+1YQFs+c0wIsXaYDe12d+dAd4JpJ8FkflkXYt
CIfrcyU+/QRqckBt5PwvaE6L5gJQQWnOBuyvuMyfSlNd4oV4TSdvsQ0495zENmq46hv2o4n3fRTR
s3VJbTwfQigNovs0DpMfOhzM7ADRnnr7C2lpJb11bKKCq1aRjRa2JUi8T2AEHWuX0tIHEGT7vc3X
hmp7C2hk4V22696ae+ulH/X2FZGOloqnfZJg9bMwyRcgC6cxyPW0/PUQeuo6T915NCsbj4bZuwGE
7gZWO5qH6scyHgPhhg92jLVL3hc97t7vEky3XfD4ZX/CrDYh7QFUGtIPdXDRpqbkEBq9+W2zSqAj
zx1DZgIdV2kBkiIKY40pWgejl2n7ZLrqQxIlT7px4A4yz3fG810GnqK8AFkQLbJwCXTIxdeB5DlN
Fqe17YJIfRcuysWWYTF7DuI0eeJc3spB751C6LnSeP3n6eXp1fxATzh9HGKkfssvxC9AaxNxCKMX
Yq/0vOxWcrHOykmE2ootAk8jiqLJjWC+7aKh/sCpDSRXjp/aaODWYVQ/StjR4KofDfzxnFQq4oW0
MeenAGlPwwMDerKmTtb9BDjtabvrwPVFm15gX4yR6oN515uVPl5+/Th4gP+3hRy+U8IO3zp6/Mk7
8I3tEuWHW4J8vHzQedC3UMS9BHkJ4sJIPy3DZB3GzgpShb/njFPKbKZuuMsYG/RN0rM/5a+fF6CY
PeujcLcg9T8UaPcozZa0NIueoiSMg20Yskzn4PMijeP0lXpb7RNFMvoYxGOWeUcOy+jGSmxYcMOM
Xkbb6cOjJOY4U+PlUinN9OE15Mp7YSQmkJdGL40SvDPXUwyEBPKcRetTeMYioY/nK2rz6BmLiEDe
f3AiyrbylN5zoM+TWRUBLECmfpTLKRiuVCMe4+1WBSI99nZUHdLj3aeu78sqWoHP8LV+JYdb0LSk
5eZ8CBqo1ywq9GnI1gCVlhSsHq7VDeUTiLz+YvdITojpi6b1ImIG/r1GUIfzEurV+5foKUkz8LnI
1kBIroJFKNuANI/E2pLVk1IjUjYYcj5BXblHqzSOZu8VzFrEeG1QORTytZHBuQiwHzGsCQj7kcE7
VbIJWae9gyMA9AwWa6A0leAWRuOUO8c7WN/bzD0Xr8rTFGGxzv/r8nzwp/9BO/1ff4HYlb2ff+bi
VzYsvhcLbBf+A3//9833f0Znj3/iyg0sh67mk9AEXUCIqg65pm4ovffEM5NCIADem9KesC0r6ivU
XpDF85sXXj2J6fPMCkntWJJUTBhU9cydxWkO5sFrlMzTV/VJ0w6oXEmadpCBs1WoIN6qYi0MwylQ
CslpUw66NzHscL7kipjFjpc8QtavpeM8gEYAdSZztcIcLMJ1XAT5LF0BbTyCJqgc8wiayOA9Asnk
tNAjkMRb9ptCCYS0tM+3ZAJqQjlPMttIVq3wGkZFAH8MXsoSwgTPI8OSootvRQymY84WMV2896Wa
vha6Y6q4z37/TAVlO9ZUTudO+Iykut1usqeoyRQtl8w2pXDBNMyjmR7uYANELnl+DSRwzwlhJoT3
N2QS8WCdzQOq1TRoRdMImVFE1ae1Tx1QnpSelJ6UDG4XSOZBkZb/0cr3qgXLQQeslg7OemGM1PCu
mHRK7p6vT5xcA5LWtNxf4gUkRa6Xhj4GyUXtfEwDdzUzPSW8VpZKRfRsfbTxETiq6Fd+62yapa95
+fBn+Kw0ez8rnkFQvQ6ipADZIpwB/OnjNJz9eLwQqId7AmWiJj7Y+Nvb8/O+RDBXFSsgBcsCUNSy
d3QhdJ3F+ef9hQPdpIMAWJOIL4w/2WDhSTqCneLrW28r0/XxrU9AItXorLxaERZR/Kdo/nmgl2E7
hU87lvNS3L1pTgWHJ0LsbHDIQAkfHEql4m5Og2Li7QDxNPM08zSzt9rsdCe4nhHLoN7wfPiBE1ya
0tHzXq/QCj7jNczmmuVC9qFyN1W4TwW+CYVltARB8b4Ceh3Y1YLVa/+tyZXS8cLbcwYJncyDcA0f
mxTRbK9QJ5ilWR4kaRGAJJzGYPNQMfShh8PBI9parjdd39HvvFYSvt/QZl1Eca6ZCuFM3uMePhhl
S3dXZmaJUbq7KaxSa2unqfXioF6SQy6solQHmbz6/KccWYcbCsIC6tMgzJ6USf0pFKTy3+cayh5B
dbwlcwCeSg4iRmL7fJyj0KZNaw1kZnnXwl1G2TaOQy/Ifn7kqc4RKwlfyvc+F+CtOIOPjhKxksHX
c6CklVAfghUWnntnhDaOliWdA32VcjOA3trpY+26d0sKz8pVnwIANpWnNSW8UIrT766MPQhXq7iy
hWdgtgzzDW113496qA23oAZsCBvwZmspLyH9OYC497/YkwuDY7x9uv4rfDGQC3dQW6entdsQNuDt
0dPuSkg/DpC9T2+BmRZ1H27V5zA70EtzdbH5V1TaYHh+8aFrYQ2tKo0waMiSrODbo8/d1hN9+UD+
bplpf/fhts5HFb4pSgySaGWqnCEOih2UW1zZ22u0clK9Y1pryb7iKO18whzH4whcKyyYnltACbUF
p3QOSgHjZkvbEnN87CNw9S1czUFRzV5Ho9eDsPxm9rReVi3QlBSydkPFvbCViOeNy3prxIdeB0hR
ywr8xd2SF5/ODdsVCLE9XqP4jVBwqVEgiVQnOPhWF3cbTa8RRPMFOy8q2ZsL4/bmQrv7JgT3OoSX
+yivEOqpe4TedJCqF6kF/8LMSEKxJHpd2G8H2Hddyd4MjNubgUrpMKeyVG/dPDBVNw8s081OyT/7
rivZm0vj9uZSr/rFOznlIi0L26i7L03V3ZeW6W6n9AP7rivZm6FxezO0M1s/NFVbDS3TVk5JBPuu
8y470KXQQEhpATldr4zjvis79fGVqfr4yjJ97JREsO+63Z2I67S0PG40qdpIfZmXOR3elfIcmYiL
vrtk7kGBgKsgNFtig5V1Sa+x7LG0nYijF2DQZuzAtcf3124LKKHW60RjoOpEY8D3REOqn+mgFmBk
dmlbYlIPhhOA7VHOBvYn0Wo3WpUe98yrmQLYSSOCrLCe0szMshLVrGGXuqzrmqLrNlDDbUFc7qg0
MG+51alvs6eyCUHWmJwlZ3SoB7Xms3QFRI2O1Z64TLNtj0lGWgpgTVNKPXtiCesvRY5u3SM2IzR1
qWfpAMbBkb3Hwixsnpje475MnZLbwdByb9hzAaan3esDgzGeU28kLZ1QTK/MWil8cncjSYNZpmLK
fCc4JlouSn5vQ9/P+FVn+k1v7SDAIDOzKlcDIUlgaqYJI87Scc4xhky1uZmlyTwqHxLGEqzJ0Wrc
a/fBclW84xyk8m0/gsaHSfopzSOGFBym0KxWk0HZ//nq/UsRPn0+/3Q3uDm/uLy5ubk9v7oeXFzL
TOkQAWQvVS7Ph6ZQZR4W4PM/wPznj4Pzizv4zwTM4L/wj9vyPxf/+/zyfw8u4Ms///W7Qg6iAdM1
CpJxm1oKekPdw1B74nnieeIZR7x9bVnA0BfVQcygWwjjXjkxVe2ylmXimtC0st6CCdnff/tW5x2U
DxJ51Nu+bA9Uhx5Vj6pH1aPqUfWoelRloMpQglfiE6yzWFTpImNlYA1YBA6x52qPqkfVo+pR9ah6
VD2qrC6UVXXZNa6Uw4WdTNTwRX/SKVlbc7VdUs+SsD3wjKCxC8dBnoJKKFhvhOFTo+RJ9qHablWt
ztSsONza0VZ87R31qha4rfuYDqnqn16jJLgYXA2Ct2Us+aro0dJC9rZt2VJFqUK5WtvzczemV+5I
7gWpuZyHRRiEWRa+T9eLhZSrzXVLWlZ8UoeilYUnbIjS+4Manha5cFJUv71XrMrlJQKvChQMXraX
kiG9LShFQ2mh1DBZpcx+ZlrcDqHboXrlWhqZLQWwIeA0TqeydA1eS5wX49AVuwOKCg7yydey/5Ci
R1fwnXL7Ur38/AuI41TyzbBaGDjygMHmZIcfnfMG8iCd/gvMClmq9GBB7ve9XTsu8xe/uVqlA+aU
YZrIF1SgmzgdYGp8tqpGGHnp/CPmuRCQ/lTAdQqWVACtIB4YXMpnu0utHaMjaO+krzjk1gU+eQnj
aB7MntfJDzAPQDJL5+WJgGYCLLfFfDNRFGh2g9Sl1wYltDdaWemacKn8tHwhKzzbX89nu3jFFftU
lRFWEK9Xx+Dlx7LTHdWaLNgNLs+VWliHzV2N/shAOA+nMfwYvlp+CpN3qjPdr8n7L/DrrNqrYXUb
iw8aULW3CIEZ4c7HiMKaYGHBqHvNp1TzVYXTNArwHwhUjky2B4QjenAPY6fUIRXepE8jpwG03Yh7
+TOvUmYwjvH/lTtqFCnw95ZRnmVcJ+BtBWYFhK1Ipd3YaVvaRkPYgKq9FpAFYe1PUZuEOXiNiudg
Ea/zZ91LURr35U7O+WRehMU633TaBm/F5xyUXYsf0xVIHl+jJNfxzIMBDXF7IZwPiDPg5dyQ4j2Y
pvN3QdPOT81G7Zo+E85BaddSVnA2nH5NM2sAG/C8cATPW0fwvHQEzyu/n1bhecNi8efpbL0sb79O
06d1Ltn0ny7uWz1w9gFOSSzRGaBc3HxplISwLxhVv60XA6XLD26VLn95zWJsNp2OJNuY7Zo+vORs
WraUlWhRyNY035AQ4vl3JWj+XS6Wv9x/nShAs31ZAXg267AnUN5uC+dBmL8nsvNzp4tbdrDTjqyV
Rzt9UZYujK2rikTXfOXDur+ND1KkfxzRPE7pHGe0jUN6poeGSaBwS9YueEkfHXIWcUxYicEh0ZLm
x4ZkaBoeGtKxD+fKHwUVfebrfy99jkmfIyx76DskoCiFPQBZlmYopArAC3wo6jsk3nnpBsCyIKkb
YQmF6BIqQ02N63jsT8PDVEuXa8LFtHfGs2xPjk0DCM0qTXKAHhLEaTiHn8jg1ra1fUTLg1PaKCw4
tGVf20wvmx1fEqnIizArlMnkdnVf4CZMKrc0ViKXZKvbJJlkGHdJR5rNpcxLaVlZ9EQDrpJpjkxu
6StdHslWrjnleVvG5WIZ+Pe67Ci8/zSRV7UJARC/B+bnUW1RsJQsXD0FUitcAvjj6ClKpCjVkxW5
dxvXMiWjYSR/uhV2xu4seM7S5TJNzjZH1PCRQZQsUqGd61sWFIOhGDTEwLpI41K5FW8FV6iH58MP
R88XA//21xmYgegFBOticXEtQd2erOdzPL105gk9pQzholu1xklEP+QtPg0e6XYx8XjtmjFACw8+
Q4B+Kmdyfi5bM3wcPMAHRMnHy9EMUjwHxcfLyd+/PwQX1z/hSTUf768/np9/fLgt/72/Kv89/1r+
O77+eHn+cXRX/ju+Lf/dvC8euFsBsCluGq52y0SJtNK9FiVZ1W/nEfx9dXsrkHSBoGFVy07PGrC0
0u9mxvVQtPBjSuEqlypD/M+LNJ2GGVw8nM7mP21k7vL8Qogeg8/90A8spZSqlv4PhmYgiEiDD8wQ
KaXPMoziIv3feboEUNH8/8BbuFzF4FOaPelDMQIYteKxS0EUu2TmsUul9ClA/L8vBpfDq+ub27tz
fajUAJdYWh0+IUoWURIVQLqbcbKwrZ7GCaJ2OxsM6B5KyvYB+JGo2V/pzUt2MdohUU6SVfgEPodx
AbIkLMBPGK6fltHb53P1dGoFTw/izcEiXMeFnqSrB85znec6z3We6zzXea7zXOe5znOd5zrPdZ7r
PNd5rvNc57nOc50yrqt/iIqcugvpdHcy6T6JLoYablkBbwAE0MyiazhebLzYyBIbz2ue1zyveV7z
vOZ5zfOa5zXPa57XPK95XvO85nlNOq8Rp26WYVz+FsyrjxC8WdkApOxKKPYSJy8oVWWWesEPyQfg
lpbpMs0pfQSpyjzeoUwkaYCvnbSfSPGgwSxcPz0XAXibgVW5osC+A+xXolvpQ3B6xothjollpIRG
y/J4K9h9hADQWFIbIDaS+g5ZIYYt5Uh8qCXy9ewZr8n5BHnbDocdHpOVB0bGFNVxCK/2lD8EVx/e
3cIjVCkcriaYoVn9HwW8rIv3wVqoI6+GSYeSoCMvVXCbVqZlyVhyn1nAbJ2VA142nsEe04jZCi6g
kRbXNTcpqvoOXY7fPl7ew/8/Pitf7JoWlX1lfypffP46uv84OP9tMvl/v327v1fSa4Ur4ALZThzU
A2UrXypb+Ua3jmb8u3Jw3SgxjA33QTTkN6IgH4iGfCBQmehUGN3XH2uyYwyZRIn17BaXsVtfvc6t
d9OuJ7s+beZqYHJk59UqIoNGikuQA/V98Wpg0oEwlyIeemOIS0tKI34b1eChktJVKMdYrScEI2c1
OVXsXPUzJcO0+k7SIk4yl78JnkG8gt8SOrCjD0SqnRljohXWCUeyB69xGQrGLwZiIJsuE8mYgDdz
hlczqhcDanW+XpUTFqUPFO5cn7uCP9CBmwcca0LlGp8ERCdMgF65BCr108TPkgb+9IGiB7OKKSzq
KUGcq4uYZMZwC9PMRzxMjaxJ2QQQ+GnZQtWPrInZfSGwTVz3sO4rsKssfcrKbVAlr/sA+HGEwsR1
n8wK3QVRuoAYPe+vmK4AD7eaXP+V/3wKk3eqar6vyfsv8OsM2u5gOcvqBg5w46pNdoc0f1SvP38c
PGy/sXndJ0BhO3yUgICWCQC9/VJRXAiWK0hCXWLfI2i0qcDaUl8UhepW4s0Tp7+rCE1jI/6BKN4H
s71VbTUVeyhylFX4//QS11OAvGZn1+xUTNP4c3IsobuHpJmDMAvD01DJ/1duj3VhQuk9mQVT+Ogf
eRBKmm9Zuya3M7gD/bT/WRAWRRZN1/Bhmt2g6obS56D6SX0dx0k5JaNfuaZaYQ7i8L2M3pb554vz
83NZpWz76w6ErmvVRZJucXa4uJ0HcXyhnWrCupCNkELQvRXXq3lYgJconIWzZ6CVi9IIGk0PqHab
JsqSWmRZGneBs8aswN6qKS2U5ilQqmlqqYmWxWVu2GUZ1ERrBMvwLQifDjrXlE/7jOCBNmwzPgV9
+f9G4bgEKNg2Y9Sk/w4XXAzfuQD1Y9o2ZxN+lYg/vP37VHFhBC9kXsh6YYs4O7dg3ypM/K75XdN0
18I4tmDHIBZO7FYC434LtqtEw7uLbruLCd/Lf16qvFR5qdJJqnYTJ4pnkNgZjh2hZoz0TeMw+aHy
mOMUEGNoZ+kp3OmO6KlH7Akz6xHzOsTrEK9DxIqaHUmPU6S87vC6w+sOsWJmSbKgBiuvPYzUHgSl
XgOBpV5eBp2UQZ+/k8US3nUw1nWoQnr7EqD1iHkHwtzw49ANSNLjHqRl1xVZtxSbV7ftRnw7tnZe
6O6Bs5m9i3rvMsmT5DT17QaAe1df77P4zrzM8iWzNW9PMKzTbfwbEnPzWK0rVfUniP4UwIfy0gTN
jvPDY5S83rA3fJc1zalreR8eGB4eCHPX9ZzhJDg4sHmIUf99PnyUSo0mTZ1xs+eWHJGe4ORQ/4k+
veW8L8W0xUqn/Kk2T0yKmpM/0G9tnmMG2cEx2EzzGDi4eVARLUG6LmTZ5b3lvCl2zRT7WiW1tUon
DOHDetfD+j19bG8YT4Vk+dNFGpf2tHgrxNnE3RoCkJDVw8O+QrlTpLTJFFccgFw+GUP/Thfk7rP5
aNbA5vT9bc8pZwkb/NfTgFBC6rWvZdrXO8D0DvBWeNb5SuLUxv3VLKs73kfNSj+dDsGTnwmfNLRb
iB8qZqYfD9G7O7/RyhjaUyh4jJIv9rGg2AcLj9RJlTWLWmoe+4/iM8NKso1WPPq1nMmKJ4tK3Ezt
GZVqBqHOvg4FPt4fMN4fMNtx3eNVjt6rD/+PNFZRlXM8g3BeTgZblIydS7j12LqwTY5PK6L2+T89
0ZWrpK3p0q/NZZPmZknnYindsrAeDOsDbkITFMfpa4BM40sYr4FsS1S3vs0GqQ5f++0SNdZ1fm2U
5CswK2ftlQ/NS4WziGKoQB6TcAk+/zO4LxeQ6mqTgeRppQ2tfABDH8B4/qLkr5ZnvT5H8IurEG5H
lCi0uA1wWG95G/B2xAKzYO+69HuaeZp5mtlDMwWZIkvuTh3g40svLMsETQH8GgjSFUgke6RHK4vz
QWU7cpr4fkf0FXkTusfKLfyRPq3zoDQVshnzYGGt7uZ62+Lv5Fp7J/eAGXxHWR6K+ECTqciQCjFs
5Fg5WmGCKKQizXi0ssWJxSNMrU8lUuMrbWa0fXf/arDyzpEfjn7EEj5bojHDe/Xl7y773uQ0vGLP
/YQTnLzx9sb7gCG86ZZ+0DFLl9MoiZKnT69RMk9f6W6cbn7SMzauhcDiCLkWX+vjZEasyZ4l9sJj
9+oyKOHdDgvcDoZ6kPKHwRLoVKJSgaQV1/sApV1n7lcKAdk3LE8Xt9i+nyJrvXGnRJlO5Wxy65+L
i58/Ds6LgSZ68BAoTyxPLPOIpcIFs+PW8wE+xriTnt2NSflpubGW5yAhH3UWg3q7550ETyxPLE8s
2fZY0HmOmB2zYlSeXYzW9iD43Wk0n0u/6lO3vP2JsQN0XUmNkSPNIkXf7799FyLWAsvfWfEUS31H
TwfKO2nB8buStWEjDBarxEacrdeLPTCnOqt8C8IVXGoO5kGRwkA/ymX2AqQGThYNJedWLLmXeYiQ
Xv0uO1gtnM3AqtCI9xFAhvC7L/XkKjm+zlN4nWcRFus8CMvBoIL9uKOVfMMKZu/wiJI9WlOQ+WQ0
6/lqrB7x1u6XiOalzpylc/B5cD78qQBvxee//+3X8W9//O3bP37920/VxILPPxXvK/BZkJ0ZfuAC
HTf+Gv/y6/j/3P9NJL1+uf866Xj+8PwCPf+3Xz4Ozn+5/8tffts+/m9pUaYq03n4/qlrqW7a8lqp
BxMQ0EMVf/ZkbW7MxI29eyAEOeUDd9blhlgJHW9u52gkhx/4cLlkPaeBdig3VgSwfD2SDsAGCLCH
X//vPQRj9Pfx//m2Be3j5fjt4+U9/BJ89XHwUP6BQCx/U76xjAVRdvBBBvDcKE2kfbQltRTopesH
bcktCwEleuSP+/udaoOhwf86gGqegjxJi2VYFD39Ls4rqvHE/r/2rq25bRxZv59fkZfkYWsY27KV
OfPgcrlmMme26uxkKpdK7ZOLJmEZJxKoJak4ml9/QFF3kRRA4tIAunZqY8s2uvvrCxpAoyEb5yRE
teZuttUhHdBsgCqh9MrFR5ef31eZw/3X958+/Ou98PqiT7SxAYc5FzqPppWcYIiSDfqKQfQkzdYi
gMo5NRhlxhuu/v1BGC6JUavqszyJC7Id/NPX9+8/c8n/+vD5/vOHg9DCyVBmaxunDxBiiu8zsp1s
ZCwUStvlgTAdjMUimgEhJNGUdxWlnA61ZZOzJrTwImtzFlUtqWZAAGvn3Oise11z+ceHL58+f/iT
c/W1WuL/cb9a6d9veV79oiGIr1/pZtxsjAAJsXbOjUcKcDCft+J3v/xSM/31/t+cyQ9fPn++5/9+
vP/zf3ap+OqXoGSnwDjmlF7phFlhZnP9yoQhK2O4QlarPRiODwANVzfjluqJzpQeVrWkRXHycMbq
OfUF2xYmOtZMWFYqQHWHj3FBzdQdbimZfpBIUDtO9dGTk8m2veGTZ51xeOsZGp84k6Fkw1KdaTck
Lg+sWycB1rPCtXZ3bllJCGTR3gEXyBqtbBSzeAMV3MZustu+BWa2hFkyU3DwbppEvBlc2QKictdC
SbaYFRm8hOFgzb3KSBt2DblEloY15IOqbBX6PdaQG40PWENuI45AKCG2V5atIVoEXpOtJyZAANVu
cbdyz7dYxWu6hly9l4dUQ67FowOrIVflvYYLnA1UKSvzTQvQ6C5+Vul5FuAxUOes8vTj/0hS7c4X
e/vxSs9SLd3lEN8obQBAoIzBXHjRUmesPv5gpbzmCIaV8ppyC6yU1x4jsFLeSKQACTOQ6mhV8QIL
5bXFCYDQ2q6UVxkfsFJeQVxY/xXJ8yw3Ulu9peRiB/4+1SQN6zEgQrvY8v/IiLSXIYtRAo2kMaM9
U1V2abJR/Cl1tcru3nW+0tS550pE1uq3DMp6OfDPbwZWxkHrCaL1Iu74srNtqpB5KHQF4apAhRRv
hCjeKKM4aLl4KbTxYdJfeV5pd+GmTFahUvVLe+2R9M13YpKbBLozjA/0IDGwTUrb6UM3YrcogIQo
8U0BZdw2PdJnMFkUI29SWl3OU5mYGHmT0uoKjGMx3Y7N6lbndCtGXp20Xwa57fk/1+oHXxzJGVch
6ovRCPXFqst+MeqxX6w67BeT/ipWLrJ69S4ibPVaJP9HV92MeAFLB0eie8YrrJYsiVgWzfNsklf7
fTFbSol1z5Z/8F+X3OVuozpou1tgF9HctvGQoqlGeABuM7dpUWy/uUNSjVR77XL3Itmwzi9zmnyb
kjqQLVh5e/MmJdN4eXs1vtS3V+b62VBHqAvrvGEQEMIXuqu/iZ7JdF49HVssHu2/ItjAEXQQT+mA
eZOxizXYsEYlnVE2iZI8K4ooy+mEMvuZmBBvoZzjC4ERVtRWBEmSzWYZu5gQHgo58Yiyp0xreO4g
aB0MnMzswLnuI/NEyuT5hKJ1aM9why6s0IXPoo1ODBdQ+pTHM/45LZ8jOosnxH7+1MaUO7Gx+M8i
zvnank0sA7ljBL5NFlz8x+wHSaO1+ln8nU7iMsuj9W+u1yaW0/wefIaR8vcAJqT0Xws8OHHah1aU
+vrHECbYPiyjclA5qBxUDirHmnIOv42SYh4lGWMkKa0nxSKcBZIGi0ARVOKrBpAhieXdnM7JLf8a
Xs67Zc0VeBvo7Rp9pzSvbsJ9J7drHoA8hSDHtCuqWNMxESWH8TR890lOgaGcrirFpeVmaFelkqZS
KdzV0Gv8fp0+qUan1Xi3Cb14kv21Zl5BTewecRfzaIkYsSepu2myLnnPjSIu8z1b1tapzjitKNsZ
g1Z6bktm83Jpf7rbsAEviksUQdajV3Q+rr++XUnz+vr+9eh3/t/V6Oe3l/x/V/yTSir+0dHwJ5/w
D7Yk+NerU9No/QJS1bIoz6ac4Ovr3+9/vf+wOkN9ff3bP7Sslq43/UadhMSh/ECXN6q8HiERiyBc
WJBfcKfkKV5MIW6InnIW7IboKRSBb4j2AQQ3RGHAKzi/rHlwa0N0zbQrqsAN0RYF4oZoX1xwL1Iv
vkHuRaq3PlzF4ipWpWU1kFu/FA1vYXXCWLDrqhMkAl9W9cADV1Ug0BUMdzULbq2pap4d0QOuqJrV
hwuqnrDgekorvEEup5TbHq6mcDWlxbBaBLzbinf7DyDJjACnqAZUw/CthWcSpwBudZ9hKsgthRMU
At5O6IEFprqGcWwmxWNY/dUbOqts4rb111i2/gbmhkJ/eVzWnTNKGYy2BsWjcwXsXId3nmd8Uown
JCLfCeOxnRZlllPOL5DMS5zLoFIxcVgCzM1UgoPJmm1g55zJDcUyi5IprahC6ZV8hjsXAX+cxuwb
hL4dO0ZchHF1BwaMnR5xMzwX3SlHbUKSPVaP5q4PLxc5rDykg7kA048ONILNOgZhgsmGJTy9jNVK
cDTR/UHbRVjUqGoc73LyBAvLiiOMNL7Y5X6MKOmMZIvS7INzx0T9a6pxLKGvzTTk5Wz7axMXuA/p
6ZOvcQqfFbdXl5eXb+qp/Gpk7+L2NzqPXmJaVp3kqz7/XMD1nor1daAQa4GsAoWwCGoNqAgRXAFa
QfOQIJDkrJkpZzAN6YpAo6YCugvQU34Jk4U0/Qc93+MEP8EZHSB8nnS+0w/U7uDubp8YmLPeA66A
25t3G3naYQss08bUGlNrkKl1GZfEek59xEQgyfSR1EFl0dKyY/qsGTc/8xjVeFWHLiSNYITNZl4C
iZ7NwgcVRPtCgLHUDHx+hlRNsC3Y+vr6lI8+rx91txpeuxgKI8Z2IRBSoB2GA0Zbgxg+xXQaZSyq
+2JACb0tXAHHMqDdpRYFnQezgvziMc9eimr8+irR8qJ8JutrRcuIspLkT3FCNj994GO8xHn6cKVx
bhvOVxhTnAITgF3xOdwQfKoLNYFGHxqEh/O6evNukU+L2yPaUU37p+OPR8AiyCAxHNOZNsvux4tK
9AapUeUZIZ3Np+Rt+aO0fS64ZcROyjbABdbKalZkrbE3NL0dgUtDRBl3yPAxygzQs14vGe0xUZG7
hucPJyz6powAbP1Ehwq2TXMy4VSqvpybGSa3v3XazVQo26fdKIS1hToUC9xGNYxjnfTWwSwhczit
ltoZs4dqn0lhkj3MKFsUwBbxB2z5ce15MAyh74FJgoExBiO3d6g2ktrs5fCkfprFafRI+Pgk2v2u
ZcT7Me2LNuKn6uduKeOYZxfiTZLNyQXLIkZedsTq/ooRfYpqRvK4pBn/voiKkk6n0aIgqVKF3Fze
vDLFOGoFtRL6mcbAwKZy64tnryzaflfZDYzXaOVYDG5bTACTQDfJlCCDW2ZWUfWy/BvRRDQRzcaM
VYA8/0FcRuQH/7wAkWVL8uy6nd9xesDa1nKOfLd3bpyOWXvFMUYhjEKDNFM+0yJ6qfYmOC5WcD7g
AKMMRhn9WsnJqus3ZUUZc7ur/xy2WhpZdk4vjVLYT+3b2EK7R7vXsPcLdcMXd3lPgcCtXSyBBA9l
UBtlCCFC6CuEdTKUk11m8vLM4YmyaXpUUcCqWgIQqZswt2jFQVlxklW1G+WuZG9tDE/ZdJq9kDR6
XHI+qqqLqlvoXgkNfcrjGQzbHigDqisIdSlmA4MZ7Ck5zUgRsayM4qenam9itd9/qElwE7MAzzg9
B2bRxSLPuS3wyATEXHcMIZABALmjAWdDNOAt0OA3PXGbExx4ns/2CJpl0BbzNObrtPrWB4u/00m9
UstJSqsZ1PrEJM5fINOVOCBBTWIqYcGpzR6ka6osS7LsG938wtv5Ussr5z1uB7fxhzAjzAizHZi3
o8+Xd6stgKs3H9cf3b4e/X40zskn/IPtWKuvt6O9vv59Nd7o9ejdZsTX17+9Ho0bRh2fjjs+GJl/
Vz84KpNOSVnA9eXolf/QOW6coyEIwzcgReK5pWR5tWh90dg9AIObKQWGdhZeVL1W1QdiveuRZ7Qo
qoNaOqv2CNZV6gWQjamzzIHalfJz0+esDsScSdNO3TDucD9KA55JNptl7GJR0qm+jd8jIg5ZUSfJ
aBZTtgvyd9/I8nZ8NUp/+eXxOhpf/TyObt5dv4t+ub6+jt49/jdJr57i5Hr0DtZcrlY2b3Rbf0tS
X/U7QD5liZJa00O3R7c/R4iv3XfLeCB5cxtPQR3itoEQ4MFtfygwOTYL45rSwQOc0LZqjphzwDZz
mnybkmr2mRW3V5eXl28Sjlt5ewVnfy4EjZ8bV2wn4cezmG5bX8WrBiiWLIlYFpV0RrJF+TZmS4nN
DAWWZ81r2qRfa0EmdflasyhudwK09aUoEvlTTpLsO1k9g6glnTP57osA5kqMvh26QSoF+XzMUExF
nEFc4nu2rD1RmSNqlhz2Q0lnsemvWl0ittPTLKTQPKwvyfJindoQMQNcovZCQWotuGZ4uyQEsUA9
ZQo8jr6v8vUieEQE6orvlD9EFRKqAkPjgz2GzXE79F5PjhdaPkflck6AnAycZU50sTajP0i6au9A
WHkxIYzwBHB9LK96VtjeVD9DdLBNnMEmkIMTXTi4nZ4OxgSTLEt4+nlhGXFEHMPGMZnGRUETMEie
8OMQltvarY0Q63bl1kFtZ2z40ulEYQoBnWXpYkrA2OYxO+BNc0uoWExLMIunI2aCqqc6kT7IZYA0
Bpj2G8KvvpsJI59CpFxGqh4YxqQT6GwT9DSDZ6BA4fN8etZ6Ngf0SE7R+SZCh9AhdAgdQoc1Bhpg
eolp9ZyC7SXJKRthrElO5Q5pUdJHekyrtSPn5THibsDHacy+qcZsN6hluHaMoG2Zsi1EDABi/M+K
LPlGqje3o8OfWc9uhFgLJOMRwiKoLEgRIpgZWUFzR3AbFe/mdE5uuRyWYe1iDTi+/M++l2WU5FlR
RFlOJ5QBiOIdLAUTvTswCCxqD0Ji3Wdwwh2posm96SnTGow7CNrCYMj8ACXGdrEGHte6TUpOXnJa
wikpbOEKPJoVldVDyKuB7+iEZTmxjGUjT7aQnJGUxhdPWfaWD6MHmAMSw/eKWkwRRW0StWr5kGQ8
DKoWeXdNr4kUatmEqL0eFtm+KLJi+/X1/evR7/y/LfP8k4p9/tFKTP6vJJYGH0npLQvap2v2eTX6
+e0l/9+VB/Z5Xha0T7/ss880DN1Ogcz3uLDC3BEnLJywcMK6eKEszV6SKSWs3HSMtX6z5RxTgWzS
n0EhqG36wVh4sVE/GAU8XB6Mo/4+4zqyD5HCNjgFTa6U2CmxIzdKKCtjLTkH0+qiAJmSGZdZY4bQ
Ss7Fub/Z9RvF860Lek8hxWtjmlwQzEr9DHf28oCVauopZ7WIjuJqIqr+WKM7N9LzyJ8b5fPOoXtK
GWQJvrl8HS97oKWZsTSccfXii1bZkqeYy1BkcxPUrbLdSZAZne+5nIYsDvORgxj2YzatSObkP4tq
G/MxLqjmWNZG0Z/1VpuEvnlpfzlVZU13lBVlPJ1SNoGd3u0xajdnOdIZ+c5HK+N8QkqjXn9EV/Pb
mQbdCoQnHqErttuvINLJ0N1axlM2TbmPaGufc0hDpzSYbSuKSoyU1fARyfMsN7C8EiLvbX7SLK7n
yUpfoQ/P1il7ooyuWvnWtWaFrtZp15dXr0QZgAHD3TyekNt4WpKc8Zjwpuqzf3t9OXozoz9uL62D
1M0eJAhT8hQvpiVMAJuZQwtEC0QLRAtEC0QLRAtEC0QLRAtEC4Rqgbhv1XffCv0W/RZnDrRAtEC0
wJ7wdQ1l79QDD2V1HbAMPJAdfNZhtkADi27DO0bC2XfI9IETL9od2h3aHdod2h3aHdod2h3aHdod
2h3aHdod2h3aHdod2h0UuzsaZdUy7pFT+xZxjkgeFSuBC83duGS4wDMNpScLnVgbu3bWn4v9fpi6
i1tOyIC6ctWGYVQsHnfv+1h34kN2zNlI94i245yZCGf5FLVFXjzLtH2W6fQ9wN5W1TYWy8qIyzRZ
DzfN4nT1cqnpyNDOh98Rol3uECx5iPSYB3WiaDMTEmDIpKU0jLnp2BQ/csMlqVmMmoh7G+WahLXR
j91GsHT4gkCzFr3cFZC20JaXC1oh0+4tInxE+YIxjQsDOR5gQLIZ0iomOybgRFVcWmJvWkQN+0wH
7MvVb1085tlLUQ3/TIsyy5cX5TOJ1l9HlJUkf4oTsvnpwyR7YNlDnE8Wml91UcScH4sORWD4tN9i
DJI+hPjo+XI1/t0inxa3zQxEV6tf+WnzU075Jc7TaATMrVRI46IatVl8P15UQqhCpZj2QJ2W13o7
VO2h8t7Q9HYEdeYW5d89j8AoNFzrGHfgxJ1D9dSqq5R0DSe0tLLogiVjvBBSJe4luL+XgEkLhh1M
UzBNQdRwLx3PxdAqETXFudZ8uijgHdhsufLnIhDcgBtsjLZz2LS1bT0Xr7RyhfFZ16xW/1PrJiHz
kmZse4N0j44VIAV5c/FUvYcliIHh7qm6RUiEHbr6m+iZTOf8t94Wi0f7a5AGjtyBs4titP4rMIs9
GV5RBaiCINMVBA/BQ/AQPGE6ANcYuLQ4wCDwFQUuJOCimC5ms2V0TC4DkKp2cGYL1fXF+gnhauY0
+UBPmVbT6yDYFwMhgJUbWLFk5TMp6N8k1bQVfnN580oZZ+i26Lbottw54hmJspxOKIPmtk2codui
26LbLqMkywtg/nrIEjoqOio66jJiGURfPeEKvLuuCVUttmB5aztj6KwqnLUdX80HfHTTF26D/N3j
ch4XEM/32lhFC1RogUKI6939vJvTObnlX8PbBt2y5izeVYR5gHKKf8gMYuo/podt2VIyjZfV2xSz
4vb68lLPIxktLeGOaRtpi9c9UMZmMWVWG6LusRBKW9Q9kfWdbyrtFelSz1CIbUZFNW6u2agWjlS0
/JRyDpmem+uBIbT/3LJiBSYjc+CQi1Bl9rDIKbwLWnt8gZqqYNXBqL+ms4c7wKtNotzpaDpX0/ag
e56III7pLcyeeSKK1Hav94C4W+1T5Fj3XZl+t1CR0zW2K9PcrgyAOrBTGc4CdmcB9AOn4r72LWap
/YWeeHB1kifKtL7IpYS1oFvnH0KBjfOlAVGclG/Je7DsF5TFPQWGufgXVKf+CcXJ5E+a+wC06ndC
KK1xxBj04hM3VYCZ9sM8z+YkLykpHjI25YQXU/7/cVLS7wRYmnSW1XBXIWehCX1VogCgXmQXxXNR
1k0BQbnSAV8B+80BDsE7iSQag2g8kDyH6hVb3tAzdligd8gjMowOy7JVcXc8ncd5PAPrLU18ouc0
44JeNAydjoOZ7Dt3TJqSwk65/iF570v1D8X1yawVCm3jRoDSew0G6u0lMNVefj6kPF+HbewNarUs
f58NA9D0mVi4W0/59xBX2yesiU4Otq4l+JeUnagg9DysByBDyQBc8TeyF+7SpREO9JReoAwmBXv1
f5ZVfy6A2XNB6SWygx7VbxugD1mIqSEewuxjEPpUoysbK/OYr8AK8sB//LAhdgXEFTqYw0vEun2w
A3woN4n7sqigHPfNQU3O7vOfGj5qZjPS4GXb3otAhANhh8qveQzbznO8jRIKLyE8/zwvk4uPn3/9
i5D814wxkqx6cnGjZkVCaGXZ2l/SkeXCk8dzZMX26r0c9cK3jlg3XdQGwHm6AED4Z0Lef6+e+k0y
VpT5IqnawZr36FY2MF3un5FKg63nnW61bByZ0cdy/le1x0J41lXwkVKSmJmRWgnLHISdm63JjznN
rRd/7HPhx5aOgBp92rfRJ65TVT37diwcY1K6ClYxX9qZyReaCGpVbNsgxtKjFrJahR5cxWQ6BCgt
gTLcYdVAoZWwbxsopJPnxVwhl1wMlCuk2owNo6xrx40tvMwVN7WFxJRM8jiNq/nkr5w8kZywhFhI
j9v5GJRPinbENpK6wEnr2tHWvcBTwofz2ZcCuZ1PxnRgwIfIUsomNhb4h7T9XgUfyhrCQlhWYlPR
aWhI0BHdJLACFZF66riBgTgl+fsfJWEFx9JGMGpkwe+Y1ChyCKGpp+C9IpSFDARUiJDHWkeAHabx
k+H4h3MLMWpL1u+4tBVT8xLWY3+GE2vFlKnD5/tRVhf5JMy4bYhVaUJcn+ymFgLOKX2sHVAZ6U7x
1bnProgL5/eSBsjr/B7SYNk/krpUKpqQ8td4Hj/SKa36pZmKTp30BaKTgXpQufMN+Uhp5Zj0QAn7
wANcxAwKz50Gpikwqgzs/flX5qPN5qGZe2UzhRoDaBgrY2VOHxclZZNPtZYNVntLMeNd0beU9J7W
fivGwOkScG1YHA28y7xsOPkRdQ93jTqk9XYje5DMzq3bVEjr5qptkOSDL1WOIF/7HgXaCqEDjFB7
IgyCpNXfPpVxaTE7PyYvaukqH6zpvuk94D74KLpy5GEt7RBYdwB85QaEHQD37E7egb3/ZVDoQEzP
1U2e40kUoyFYT4IU/85ye+16sDsvIZoRevgA8wljA93I/CKio7MKuXEqYp0Xxw8fwFik3DDCOrWS
D0Dwdv/hB9yzVjeGG13P8+60C68MwpznHpHDFantOeK8eZs4KDt4mLmi+g7qqdkppz5px1/7F9Xm
kAOvJUue84zRv1f3y63Xp53lx/cStbMABLLIHg6DVym/Sjj42J8IS+3V8ndQ97BWrUNaMxcdIdfu
K6idV1WC3ldPlssC+7KtrFJvkH23jGShDqeduI8pR7u0/uYXQ2R2PZkYIrvlTnwO7VqqsTAXtrfU
SLobaP3m2+c8Tr5ZifstDHgc+1sk9j7+95a7abDCxl2fVtr6rNW04m2v1gq5uxcaEvpi6L2Xz7v3
TaKU5nXeYMpE24l7uMJvFxZUMHUikdUDtUr/HKLt1oGK6jJqSpJdg9fChqu2sYETi9Ig0QazFRvu
xUynGZlN4JsJ+5i4N0vqb8LeV17XN2t6yA2uvZGfT37KY9D2AAlZFCS18xjZHm0/knExWX26Ka1K
4kNPSTJWElZWvrL+8vYPatJVGxlADMxg0DJOQWfzKbETqfZoex+p9mTVXBag5r02t95PAxWiRVVt
7k0zLRwZ8AMhYNYjWn1KbcuDWUQcz7ulJB9cWTuG3PpojK2PjsHA1kc9IHGiScUYWwWNdbcKGuNV
JJfswMVWQeMQWwWNvWkVpNX0MEaosC/wDXTG3jfQGbvZQGeMDXRANA8Za28e0vt+/tivVjJjB1rJ
jLGVjPk+FGO5PhTa7siPHW4uMobWXES/UkNvuDE23HBj7EzDjTGAhhtjbLihaqOsT8ONwVQXbJrF
6cMV5DOJAx7xaOIUEzyh6I+Mtsi44QP8GYMI9w5rK/T86UiTBueUkwltBHyCOWXYL20FllG1qxVu
M4LBQr/ktCQP8RP/pQf4qV0Lt/gMvJWkskUbOq+LWeFZb+p0ypGbKWCrHF7oMvS0sFW7BhLEVtrw
U0UR1h3RJZB62r0OQcn6TmI1Z0RJxooyXyRcQiNXfLup+9ZOoltavXdfnb+LL3EJfgDOSntaqNP3
4Uiz+Me/OCLxhHyifxMLjtrAgN++2iAwuqsed5WFWqPHDtT6qgvZ++88mzA+r3aQ9s1RO0T16YhG
kcCbNphxGSecfUamEZnNyyUfhrKJftvsIowbUAM8oQtYA62HepPfN456aUX5+PoN8YgWNsEaYHtH
WBowNxmK+1qn6XQjVd1854WyNHuRMrevqz+RNrgu0n41tOqS1MeGVr3l/UiqTSQeJl+tN3NezePy
eZ+dr+Txn7/9719xXtQJbJnt/5QPyWmPLqb0cfO1TCiS/XM1CDdTNWVTe+PoF/WAmF4J3W2LpkTu
tkE0i91OVq/U2y3rYj3eWz6eUklvLm9etZMyJt2MpDRO4nm5yEnEU0oSzwojsrYRNiZ5ms2UC7o1
31M6RryUZdEK14hTMJDin5Lzau/jVDwP9zv6COlsG+wBws7zbEYLUhhyrVNyuHkzwJVP4TSwhpYk
uq/++qy5+ruI2ywnmRh70KubtKgVupsud8vvyxaCFilBbyIMlTjc3nBd4yxZkrFZTJmlHqeH9P3v
c3ooL7wXUiw2NlXTnlV7M8tBnUYl1K+xA2sfLjT2PJX1CbGeo7tR7fY+3efDFDotY5UvNLHUzHpH
2vsYvxMVQCtrOE2o3QjvWlWuL6TLMqB9ppNxAiFm6gGthvINC0bhcPmS38ipS34j7ORwFh3s6aAC
I5WtoPjYL3Gerq/W/NTBaFZfPB450166t2heaDzAXnW9Fa7H5Q7ZOXvT7YgnYH2fFQgTngl47IMK
7MHYndwj4rtLrdegc8t2tl1SpL5DDJlFkVqVONB9JMP2ciLI4IJkKD6a7/9nzP1uIxkz2Wkkw+Zz
RjpTZMxOh5GMOdldJGPAOotY1t/ImRxi5Fn9IZAERGDvx/UcAjc0g9jQ1K9t3MzEzUzczMTNTNzM
xM1M64r0qhIceGUJHMFbhnnJ8m8kj+JHnleT1E5xZAMP3ldJNsiM1fBWSvVkNaGvirGXTQjhsxnS
qpJ2TEDCBnK5rQSkPa5mmr+RGehFTK/vXwZz7TKA25ZK4835YJ7xdU1OU1JYTTsPudDc58/2/UJH
+gyaSvoOdW837VPGiykuxDW1G9RqArrPBiyEnE5C92ENdmZEEBCEviAIxhvyY05zKMnSPjOhbNY1
Co+7diASOGGVmMvj5KxELrZsxoaRT+24AQmbH9nVDmScWhELxEIFFt0haa/LmK18a4+FULIsqd5u
ATWQ0Z64iAJvPMmT7vZ3vitVPaLdzlgbHgAB43SmtAU02HkQEUAEJBE4E2BW3ffqb+zmQceMBJMN
HQvu041fLeKHtP2lC56DcQH0D91yAg4qtzOmQ3DDnTMRB8RhKA7d4cdi7+ETDkLJnbATsZ2kDVw3
3h72EEBTXk2oOJ0RbeAMdupDABAAGQCOBlmwgrCyiibG0pwdSW/zmp2Inu/+yAiKT83hU3P41Jyd
p+b++efvH5oY+PS8KFfv1afZC/uv/wdQSwECHgMUAAIACAAPXZNNisAMmQMlAACnMAAAKgAYAAAA
AAABAAAApIEAAAAAV2ViS2l0VGVzdFJ1bm5lckFwcC5hcHAtMzAyNDItc3BpbmR1bXAudHh0VVQF
AAOunhpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAo2WTTQAAAAAAAAAAAAAAAAsAGAAAAAAA
AAAQAO1BZyUAAF93cHRfY2VydHMvVVQFAAPSrRpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgA
+luTTREFGNgICQAAOhEAABUAGAAAAAAAAQAAAKSBrCUAAF93cHRfY2VydHMvMEVGMzYwLnBlbVVU
BQADqJwaXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAPpbk01wK8rSfwoAABgUAAAVABgAAAAA
AAEAAACkgQMvAABfd3B0X2NlcnRzLzBFRjM2MS5wZW1VVAUAA6icGlx1eAsAAQT1AQAABBQAAABQ
SwECHgMUAAIACAD6W5NNPlkWRIsFAABCBwAAFQAYAAAAAAABAAAApIHROQAAX3dwdF9jZXJ0cy9j
YWNlcnQua2V5VVQFAAOonBpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgA+luTTREFGNgICQAA
OhEAABUAGAAAAAAAAQAAAKSBqz8AAF93cHRfY2VydHMvY2FjZXJ0LnBlbVVUBQADqJwaXHV4CwAB
BPUBAAAEFAAAAFBLAQIeAwoAAAAAAKNlk00AAAAAAAAAAAAAAAAUABgAAAAAAAAAAACkgQJJAABf
d3B0X2NlcnRzL2luZGV4LnR4dFVUBQAD0a0aXHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAgAAAPpb
k02YXHl/FQAAABUAAAAZABgAAAAAAAEAAACkgVBJAABfd3B0X2NlcnRzL2luZGV4LnR4dC5hdHRy
VVQFAAOonBpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgACAAAA+luTTZhceX8VAAAAFQAAAB0AGAAA
AAAAAQAAAKSBuEkAAF93cHRfY2VydHMvaW5kZXgudHh0LmF0dHIub2xkVVQFAAOonBpcdXgLAAEE
9QEAAAQUAAAAUEsBAh4DCgACAAAA+luTTf4R+xE3AAAANwAAABgAGAAAAAAAAQAAAKSBJEoAAF93
cHRfY2VydHMvaW5kZXgudHh0Lm9sZFVUBQADqJwaXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAI
APpbk03Fn66fIAUAAKgGAAAYABgAAAAAAAEAAACkga1KAABfd3B0X2NlcnRzL2xvY2FsaG9zdC5r
ZXlVVAUAA6icGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAD6W5NNcCvK0n8KAAAYFAAAGAAY
AAAAAAABAAAApIEfUAAAX3dwdF9jZXJ0cy9sb2NhbGhvc3QucGVtVVQFAAOonBpcdXgLAAEE9QEA
AAQUAAAAUEsBAh4DCgACAAAAo2WTTeTqRm4GAAAABgAAABEAGAAAAAAAAQAAAKSB8FoAAF93cHRf
Y2VydHMvc2VyaWFsVVQFAAPRrRpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgACAAAA+luTTdts2VkH
AAAABwAAABUAGAAAAAAAAQAAAKSBQVsAAF93cHRfY2VydHMvc2VyaWFsLm9sZFVUBQADqJwaXHV4
CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIACBpk00t0FZFg/gEAHgTMAAOABgAAAAAAAEAAACkgZdb
AABhY2Nlc3NfbG9nLnR4dFVUBQADbLMaXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAC5gk03i
F6i3xUkAAOChAQAbABgAAAAAAAEAAACkgWJUBQBhc3NldHNkLTMyMzU0LWNyYXNoLWxvZy50eHRV
VAUAA5ejGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAuYJNNrNDYV1M9AADZTAEAOwAYAAAA
AAABAAAApIF8ngUAY29tLmFwcGxlLldlYktpdC5XZWJDb250ZW50LkRldmVsb3BtZW50LTMwOTgz
LWNyYXNoLWxvZy50eHRVVAUAA5ejGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACADjaZNNsDaB
yvBtAACzywIAOwAYAAAAAAABAAAApIFE3AUAY29tLmFwcGxlLldlYktpdC5XZWJDb250ZW50LkRl
dmVsb3BtZW50LTQ2NzY1LWNyYXNoLWxvZy50eHRVVAUAA9q0Glx1eAsAAQT1AQAABBQAAABQSwEC
HgMUAAIACADjaZNNNJy5X3RLAACM0gEAOwAYAAAAAAABAAAApIGpSgYAY29tLmFwcGxlLldlYktp
dC5XZWJDb250ZW50LkRldmVsb3BtZW50LTQ3ODAyLWNyYXNoLWxvZy50eHRVVAUAA9q0Glx1eAsA
AQT1AQAABBQAAABQSwECHgMKAAAAAABhXJNNAAAAAAAAAAAAAAAABwAYAAAAAAAAABAA7UGSlgYA
Y3J5cHRvL1VUBQADZZ0aXHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAGFck00AAAAAAAAAAAAA
AAAOABgAAAAAAAAAEADtQdOWBgBjcnlwdG8vc3VidGxlL1VUBQADZZ0aXHV4CwABBPUBAAAEFAAA
AFBLAQIeAwoAAgAAAAhmk00l4NMILAAAACwAAAA+ABgAAAAAAAEAAACkgRuXBgBjcnlwdG8vc3Vi
dGxlL3JzYS1nZW5lcmF0ZS1rZXktbWFsZm9ybWVkLXBhcmFtZXRlcnMtc3RkZXJyLnR4dFVUBQAD
j64aXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAAhmk00wO7ixSwAAAGgAAAA8ABgAAAAAAAEA
AACkgb+XBgBjcnlwdG8vc3VidGxlL3JzYS1pbXBvcnQta2V5LW1hbGZvcm1lZC1wYXJhbWV0ZXJz
LXN0ZGVyci50eHRVVAUAA5CuGlx1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAABaXJNNAAAAAAAA
AAAAAAAADwAYAAAAAAAAABAA7UGAmAYAY3J5cHRvL3dvcmtlcnMvVVQFAANcnRpcdXgLAAEE9QEA
AAQUAAAAUEsBAh4DCgAAAAAAWlyTTQAAAAAAAAAAAAAAABYAGAAAAAAAAAAQAO1ByZgGAGNyeXB0
by93b3JrZXJzL3N1YnRsZS9VVAUAA1ydGlx1eAsAAQT1AQAABBQAAABQSwECHgMKAAIAAAAFZpNN
JeDTCCwAAAAsAAAAMQAYAAAAAAABAAAApIEZmQYAY3J5cHRvL3dvcmtlcnMvc3VidGxlL3JzYS1n
ZW5lcmF0ZS1rZXktc3RkZXJyLnR4dFVUBQADia4aXHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAA
ACVmk00AAAAAAAAAAAAAAAAIABgAAAAAAAAAEADtQbCZBgBlZGl0aW5nL1VUBQADxa4aXHV4CwAB
BPUBAAAEFAAAAFBLAQIeAwoAAAAAACVmk00AAAAAAAAAAAAAAAAOABgAAAAAAAAAEADtQfKZBgBl
ZGl0aW5nL2lucHV0L1VUBQADxa4aXHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAACVmk00AAAAA
AAAAAAAAAAASABgAAAAAAAAAEADtQTqaBgBlZGl0aW5nL2lucHV0L2lvcy9VVAUAA8WuGlx1eAsA
AQT1AQAABBQAAABQSwECHgMUAAIACAAlZpNNxJVjmccAAACsAQAAOAAYAAAAAAABAAAApIGGmgYA
ZWRpdGluZy9pbnB1dC9pb3MvcnRsLWtleWJvYXJkLWlucHV0LW9uLWZvY3VzLXN0ZGVyci50eHRV
VAUAA8WuGlx1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAACiXJNNAAAAAAAAAAAAAAAAEwAYAAAA
AAAAABAA7UG/mwYAZWRpdGluZy9wYXN0ZWJvYXJkL1VUBQAD350aXHV4CwABBPUBAAAEFAAAAFBL
AQIeAxQAAgAIACZmk019McMeZAAAAGwAAAAlABgAAAAAAAEAAACkgQycBgBlZGl0aW5nL3Bhc3Rl
Ym9hcmQvMTk2NDQtMi1zdGRlcnIudHh0VVQFAAPIrhpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAAC
AAgAJmaTTRosi4FkAAAAbAAAACUAGAAAAAAAAQAAAKSBz5wGAGVkaXRpbmcvcGFzdGVib2FyZC8z
OTc2ODcyLXN0ZGVyci50eHRVVAUAA8iuGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAmZpNN
WM11cmQAAABsAAAAJwAYAAAAAAABAAAApIGSnQYAZWRpdGluZy9wYXN0ZWJvYXJkLzQwNzYyNjct
Mi1zdGRlcnIudHh0VVQFAAPIrhpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAKWaTTdV0oVWf
AAAAOAQAACcAGAAAAAAAAQAAAKSBV54GAGVkaXRpbmcvcGFzdGVib2FyZC80MDc2MjY3LTMtc3Rk
ZXJyLnR4dFVUBQADza4aXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAClmk02VSAEZZAAAAGwA
AAAlABgAAAAAAAEAAACkgVefBgBlZGl0aW5nL3Bhc3RlYm9hcmQvNDA3NjI2Ny1zdGRlcnIudHh0
VVQFAAPNrhpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAKWaTTSnoV31kAAAAbAAAACUAGAAA
AAAAAQAAAKSBGqAGAGVkaXRpbmcvcGFzdGVib2FyZC80MjQyMjkzLXN0ZGVyci50eHRVVAUAA82u
Glx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAApZpNN1Od/9WQAAABsAAAAJQAYAAAAAAABAAAA
pIHdoAYAZWRpdGluZy9wYXN0ZWJvYXJkLzQ2NDEwMzMtc3RkZXJyLnR4dFVUBQADzq4aXHV4CwAB
BPUBAAAEFAAAAFBLAQIeAxQAAgAIAClmk00WccFOZAAAAGwAAAAlABgAAAAAAAEAAACkgaChBgBl
ZGl0aW5nL3Bhc3RlYm9hcmQvNDkyMjcwOS1zdGRlcnIudHh0VVQFAAPOrhpcdXgLAAEE9QEAAAQU
AAAAUEsBAh4DFAACAAgAKWaTTX0xmvBkAAAAbAAAADoAGAAAAAAAAQAAAKSBY6IGAGVkaXRpbmcv
cGFzdGVib2FyZC80OTMwOTg2LTEtcGFzdGUtYXMtcXVvdGF0aW9uLXN0ZGVyci50eHRVVAUAA86u
Glx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAqZpNN/6zCa2QAAABsAAAAOgAYAAAAAAABAAAA
pIE7owYAZWRpdGluZy9wYXN0ZWJvYXJkLzQ5MzA5ODYtMi1wYXN0ZS1hcy1xdW90YXRpb24tc3Rk
ZXJyLnR4dFVUBQADz64aXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIACpmk01jJCFtZAAAAGwA
AAA6ABgAAAAAAAEAAACkgROkBgBlZGl0aW5nL3Bhc3RlYm9hcmQvNDkzMDk4Ni0zLXBhc3RlLWFz
LXF1b3RhdGlvbi1zdGRlcnIudHh0VVQFAAPPrhpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgA
KmaTTSTxLu5kAAAAbAAAACcAGAAAAAAAAQAAAKSB66QGAGVkaXRpbmcvcGFzdGVib2FyZC80OTQ0
NzcwLTEtc3RkZXJyLnR4dFVUBQADz64aXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIACpmk00K
P7AQZAAAAGwAAAAlABgAAAAAAAEAAACkgbClBgBlZGl0aW5nL3Bhc3RlYm9hcmQvNDk4OTc3NC1z
dGRlcnIudHh0VVQFAAPQrhpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAK2aTTRtCPVRkAAAA
bAAAACUAGAAAAAAAAQAAAKSBc6YGAGVkaXRpbmcvcGFzdGVib2FyZC81MDA2Nzc5LXN0ZGVyci50
eHRVVAUAA9GuGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAArZpNNRmnKwWQAAABsAAAAJQAY
AAAAAAABAAAApIE2pwYAZWRpdGluZy9wYXN0ZWJvYXJkLzUwMjg0NDctc3RkZXJyLnR4dFVUBQAD
0a4aXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIACtmk00AbVyWZAAAAGwAAAAlABgAAAAAAAEA
AACkgfmnBgBlZGl0aW5nL3Bhc3RlYm9hcmQvNTA2NTYwNS1zdGRlcnIudHh0VVQFAAPRrhpcdXgL
AAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAK2aTTcpL+rtkAAAAbAAAACUAGAAAAAAAAQAAAKSBvKgG
AGVkaXRpbmcvcGFzdGVib2FyZC81MDcxMDc0LXN0ZGVyci50eHRVVAUAA9KuGlx1eAsAAQT1AQAA
BBQAAABQSwECHgMUAAIACAArZpNNxdIs32QAAABsAAAAJQAYAAAAAAABAAAApIF/qQYAZWRpdGlu
Zy9wYXN0ZWJvYXJkLzUwNzU5NDQtc3RkZXJyLnR4dFVUBQAD0q4aXHV4CwABBPUBAAAEFAAAAFBL
AQIeAxQAAgAIACtmk02Ny0wrZAAAAGwAAAAlABgAAAAAAAEAAACkgUKqBgBlZGl0aW5nL3Bhc3Rl
Ym9hcmQvNTQ3ODI1MC1zdGRlcnIudHh0VVQFAAPSrhpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAAC
AAgALGaTTcgy27dkAAAAbAAAACcAGAAAAAAAAQAAAKSBBasGAGVkaXRpbmcvcGFzdGVib2FyZC81
NjAxNTgzLTEtc3RkZXJyLnR4dFVUBQAD064aXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIACxm
k02XpFpfZAAAAGwAAAAlABgAAAAAAAEAAACkgcqrBgBlZGl0aW5nL3Bhc3RlYm9hcmQvNTY2NTI5
OS1zdGRlcnIudHh0VVQFAAPTrhpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgALGaTTRUi8G5k
AAAAbAAAACcAGAAAAAAAAQAAAKSBjawGAGVkaXRpbmcvcGFzdGVib2FyZC81NzYxNTMwLTEtc3Rk
ZXJyLnR4dFVUBQAD064aXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIACxmk01Rd4GqZAAAAGwA
AAAnABgAAAAAAAEAAACkgVKtBgBlZGl0aW5nL3Bhc3RlYm9hcmQvNTc4MDY5Ny0xLXN0ZGVyci50
eHRVVAUAA9SuGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAsZpNNFgpvfGQAAABsAAAAQAAY
AAAAAAABAAAApIEXrgYAZWRpdGluZy9wYXN0ZWJvYXJkL2F2b2lkLWNvcHlpbmctYm9keS13aXRo
LWJhY2tncm91bmQtc3RkZXJyLnR4dFVUBQAD1K4aXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAI
ACxmk02tLClPZAAAAGwAAAA2ABgAAAAAAAEAAACkgfWuBgBlZGl0aW5nL3Bhc3RlYm9hcmQvYmxv
Y2std3JhcHBlcnMtbmVjZXNzYXJ5LXN0ZGVyci50eHRVVAUAA9SuGlx1eAsAAQT1AQAABBQAAABQ
SwECHgMUAAIACAAtZpNNQzS+s2QAAABsAAAALQAYAAAAAAABAAAApIHJrwYAZWRpdGluZy9wYXN0
ZWJvYXJkL2Nqay1saW5lLWhlaWdodC1zdGRlcnIudHh0VVQFAAPVrhpcdXgLAAEE9QEAAAQUAAAA
UEsBAh4DFAACAAgALWaTTVjj8ARkAAAAbAAAAC0AGAAAAAAAAQAAAKSBlLAGAGVkaXRpbmcvcGFz
dGVib2FyZC9jbGlwYm9hcmQtZXZlbnQtc3RkZXJyLnR4dFVUBQAD1a4aXHV4CwABBPUBAAAEFAAA
AFBLAQIeAxQAAgAIAC1mk00+p65TZAAAAGwAAAAzABgAAAAAAAEAAACkgV+xBgBlZGl0aW5nL3Bh
c3RlYm9hcmQvY29udGVudGVkaXRhYmxlLXByZS0yLXN0ZGVyci50eHRVVAUAA9WuGlx1eAsAAQT1
AQAABBQAAABQSwECHgMUAAIACAAtZpNNQSDBKWQAAABsAAAAMQAYAAAAAAABAAAApIEwsgYAZWRp
dGluZy9wYXN0ZWJvYXJkL2NvbnRlbnRlZGl0YWJsZS1wcmUtc3RkZXJyLnR4dFVUBQAD1q4aXHV4
CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAC1mk00iDkC4ZAAAAGwAAABCABgAAAAAAAEAAACkgf+y
BgBlZGl0aW5nL3Bhc3RlYm9hcmQvY29weS1jcmFzaC13aXRoLWV4dHJhbmVvdXMtYXR0cmlidXRl
LXN0ZGVyci50eHRVVAUAA9auGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAtZpNN52rBEmQA
AABsAAAARwAYAAAAAAABAAAApIHfswYAZWRpdGluZy9wYXN0ZWJvYXJkL2NvcHktY3V0LXBhc3Rl
LWV2ZW50cy1maXJlZC13aGVuLWRpc2FibGVkLXN0ZGVyci50eHRVVAUAA9auGlx1eAsAAQT1AQAA
BBQAAABQSwECHgMUAAIACAAuZpNN+R5XW2QAAABsAAAAVgAYAAAAAAABAAAApIHEtAYAZWRpdGlu
Zy9wYXN0ZWJvYXJkL2NvcHktZWxlbWVudC13aXRoLWNvbmZsaWN0aW5nLWJhY2tncm91bmQtY29s
b3ItZnJvbS1ydWxlLXN0ZGVyci50eHRVVAUAA9euGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIA
CAAuZpNN/FQtbWQAAABsAAAANgAYAAAAAAABAAAApIG4tQYAZWRpdGluZy9wYXN0ZWJvYXJkL2Nv
cHktaW1hZ2Utd2l0aC1hbHQtdGV4dC1zdGRlcnIudHh0VVQFAAPYrhpcdXgLAAEE9QEAAAQUAAAA
UEsBAh4DFAACAAgALmaTTQ0oiLVkAAAAbAAAAEMAGAAAAAAAAQAAAKSBjLYGAGVkaXRpbmcvcGFz
dGVib2FyZC9jb3B5LXBhc3RlLWFjcm9zcy1zaGFkb3ctYm91bmRhcmllcy0xLXN0ZGVyci50eHRV
VAUAA9iuGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAuZpNNSJiwd2QAAABsAAAAQwAYAAAA
AAABAAAApIFttwYAZWRpdGluZy9wYXN0ZWJvYXJkL2NvcHktcGFzdGUtYWNyb3NzLXNoYWRvdy1i
b3VuZGFyaWVzLTItc3RkZXJyLnR4dFVUBQAD2K4aXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAI
AC9mk03lZLlrZAAAAGwAAABDABgAAAAAAAEAAACkgU64BgBlZGl0aW5nL3Bhc3RlYm9hcmQvY29w
eS1wYXN0ZS1hY3Jvc3Mtc2hhZG93LWJvdW5kYXJpZXMtMy1zdGRlcnIudHh0VVQFAAPZrhpcdXgL
AAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAL2aTTU6xsrJkAAAAbAAAAEMAGAAAAAAAAQAAAKSBL7kG
AGVkaXRpbmcvcGFzdGVib2FyZC9jb3B5LXBhc3RlLWFjcm9zcy1zaGFkb3ctYm91bmRhcmllcy00
LXN0ZGVyci50eHRVVAUAA9quGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAvZpNNwnQEt2QA
AABsAAAAQwAYAAAAAAABAAAApIEQugYAZWRpdGluZy9wYXN0ZWJvYXJkL2NvcHktcGFzdGUtYWNy
b3NzLXNoYWRvdy1ib3VuZGFyaWVzLTUtc3RkZXJyLnR4dFVUBQAD2q4aXHV4CwABBPUBAAAEFAAA
AFBLAQIeAxQAAgAIAC9mk0083SC2ZAAAAGwAAABOABgAAAAAAAEAAACkgfG6BgBlZGl0aW5nL3Bh
c3RlYm9hcmQvY29weS1wYXN0ZS1hY3Jvc3Mtc2hhZG93LWJvdW5kYXJpZXMtd2l0aC1zdHlsZS0x
LXN0ZGVyci50eHRVVAUAA9quGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAwZpNNmVcj22QA
AABsAAAATgAYAAAAAAABAAAApIHduwYAZWRpdGluZy9wYXN0ZWJvYXJkL2NvcHktcGFzdGUtYWNy
b3NzLXNoYWRvdy1ib3VuZGFyaWVzLXdpdGgtc3R5bGUtMi1zdGRlcnIudHh0VVQFAAPbrhpcdXgL
AAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAMWaTTVblIIJkAAAAbAAAADMAGAAAAAAAAQAAAKSBybwG
AGVkaXRpbmcvcGFzdGVib2FyZC9jb3B5LXBhc3RlLWF0dGFjaG1lbnQtc3RkZXJyLnR4dFVUBQAD
3a4aXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIADJmk03KRh6LdAAAANgAAAAtABgAAAAAAAEA
AACkgZq9BgBlZGl0aW5nL3Bhc3RlYm9hcmQvY29weS1wYXN0ZS1iaWRpLXN0ZGVyci50eHRVVAUA
A9+uGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAyZpNNs6DLUGQAAABsAAAASwAYAAAAAAAB
AAAApIF1vgYAZWRpdGluZy9wYXN0ZWJvYXJkL2NvcHktcGFzdGUtY29udGVudC1zdGFydGluZy1h
bmQtZW5kaW5nLWNhbnZhcy1zdGRlcnIudHh0VVQFAAPfrhpcdXgLAAEE9QEAAAQUAAAAUEsBAh4D
FAACAAgAMmaTTbPS+O1kAAAAbAAAADcAGAAAAAAAAQAAAKSBXr8GAGVkaXRpbmcvcGFzdGVib2Fy
ZC9jb3B5LXBhc3RlLWNvbnZlcnRzLWZpeGVkLXN0ZGVyci50eHRVVAUAA9+uGlx1eAsAAQT1AQAA
BBQAAABQSwECHgMUAAIACAAyZpNNeKeoYWQAAABsAAAAOAAYAAAAAAABAAAApIEzwAYAZWRpdGlu
Zy9wYXN0ZWJvYXJkL2NvcHktcGFzdGUtY29udmVydHMtc3RpY2t5LXN0ZGVyci50eHRVVAUAA+Cu
Glx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAyZpNNLIfrF2QAAABsAAAAXAAYAAAAAAABAAAA
pIEJwQYAZWRpdGluZy9wYXN0ZWJvYXJkL2NvcHktcGFzdGUtZG9lc250LWNvbnZlcnQtc3RpY2t5
LWFuZC1maXhlZC1kdXJpbmctcGFydGlhbC1jb3B5LXN0ZGVyci50eHRVVAUAA+CuGlx1eAsAAQT1
AQAABBQAAABQSwECHgMUAAIACAAyZpNNCJVYs2QAAABsAAAAPwAYAAAAAAABAAAApIEDwgYAZWRp
dGluZy9wYXN0ZWJvYXJkL2NvcHktcGFzdGUtZmlyc3QtbGluZS1pbi10ZXh0YXJlYS1zdGRlcnIu
dHh0VVQFAAPgrhpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAMmaTTRObv4pkAAAAbAAAAC4A
GAAAAAAAAQAAAKSB4MIGAGVkaXRpbmcvcGFzdGVib2FyZC9jb3B5LXBhc3RlLWZsb2F0LXN0ZGVy
ci50eHRVVAUAA+CuGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAzZpNNUX4VQWQAAABsAAAA
PQAYAAAAAAABAAAApIGswwYAZWRpdGluZy9wYXN0ZWJvYXJkL2NvcHktcGFzdGUtaW5zZXJ0cy1j
bGVhcmluZy1kaXYtc3RkZXJyLnR4dFVUBQAD4a4aXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAI
ADNmk01fAyaEZAAAAGwAAAA5ABgAAAAAAAEAAACkgYfEBgBlZGl0aW5nL3Bhc3RlYm9hcmQvY29w
eS1wYXN0ZS1wcmUtbGluZS1jb250ZW50LXN0ZGVyci50eHRVVAUAA+GuGlx1eAsAAQT1AQAABBQA
AABQSwECHgMUAAIACAAzZpNN8/19LmQAAABsAAAAMgAYAAAAAAABAAAApIFexQYAZWRpdGluZy9w
YXN0ZWJvYXJkL2NvcHktcGFzdGUtcnVieS10ZXh0LXN0ZGVyci50eHRVVAUAA+KuGlx1eAsAAQT1
AQAABBQAAABQSwECHgMUAAIACAAzZpNNiaDhYmQAAABsAAAAPQAYAAAAAAABAAAApIEuxgYAZWRp
dGluZy9wYXN0ZWJvYXJkL2NvcHktcGFzdGUtcnVieS10ZXh0LXdpdGgtYmxvY2stc3RkZXJyLnR4
dFVUBQAD4a4aXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIADNmk00Gm/lFZAAAAGwAAAA9ABgA
AAAAAAEAAACkgQnHBgBlZGl0aW5nL3Bhc3RlYm9hcmQvY29weS1wYXN0ZS13aXRoLWltcG9ydGFu
dC1ydWxlcy1zdGRlcnIudHh0VVQFAAPirhpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgANGaT
TaGp9jNkAAAAbAAAADwAGAAAAAAAAQAAAKSB5McGAGVkaXRpbmcvcGFzdGVib2FyZC9jb3B5LXBh
c3RlLXdpdGgtc2hhZG93LWNvbnRlbnQtc3RkZXJyLnR4dFVUBQAD464aXHV4CwABBPUBAAAEFAAA
AFBLAQIeAxQAAgAIADRmk00x08gfYwAAAGwAAABAABgAAAAAAAEAAACkgb7IBgBlZGl0aW5nL3Bh
c3RlYm9hcmQvY29weS1wYXN0ZS13cmFwcy1wb3NpdGlvbi1hYnNvbHV0ZS1zdGRlcnIudHh0VVQF
AAPjrhpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgANWaTTRI0GFpkAAAAbAAAADMAGAAAAAAA
AQAAAKSBm8kGAGVkaXRpbmcvcGFzdGVib2FyZC9jb3B5LXN0YW5kYWxvbmUtaW1hZ2Utc3RkZXJy
LnR4dFVUBQAD5a4aXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIADVmk02SkenpZAAAAGwAAAA9
ABgAAAAAAAEAAACkgWzKBgBlZGl0aW5nL3Bhc3RlYm9hcmQvY29weS13aXRob3V0LWNvbW1vbi1i
bG9jay1jcmFzaC1zdGRlcnIudHh0VVQFAAPlrhpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgA
NWaTTbGTQJ9kAAAAbAAAADQAGAAAAAAAAQAAAKSBR8sGAGVkaXRpbmcvcGFzdGVib2FyZC9jb3B5
LXdpdGhvdXQtc2VsZWN0aW9uLXN0ZGVyci50eHRVVAUAA+auGlx1eAsAAQT1AQAABBQAAABQSwEC
HgMUAAIACAA1ZpNNEDi3nmQAAABsAAAAUgAYAAAAAAABAAAApIEZzAYAZWRpdGluZy9wYXN0ZWJv
YXJkL2NvcHlpbmctaHRtbC1zdHJpcHMtamF2YXNjcmlwdC11cmwtYW5kLWV2ZW50LWhhbmRsZXIt
c3RkZXJyLnR4dFVUBQAD5q4aXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIADVmk01BTymzZAAA
AGwAAABBABgAAAAAAAEAAACkgQnNBgBlZGl0aW5nL3Bhc3RlYm9hcmQvY3Jhc2gtYWNjZXNzaW5n
LWNsaXBib2FyZERhdGEtdHlwZXMtc3RkZXJyLnR4dFVUBQAD5q4aXHV4CwABBPUBAAAEFAAAAFBL
AQIeAxQAAgAIADVmk01eCtRQZAAAAGwAAAAxABgAAAAAAAEAAACkgejNBgBlZGl0aW5nL3Bhc3Rl
Ym9hcmQvY3JlYXRlTWFya3VwLWFzc2VydC1zdGRlcnIudHh0VVQFAAPmrhpcdXgLAAEE9QEAAAQU
AAAAUEsBAh4DFAACAAgANmaTTbBy0g1kAAAAbAAAACoAGAAAAAAAAQAAAKSBt84GAGVkaXRpbmcv
cGFzdGVib2FyZC9jdXQtdGV4dC0wMDEtc3RkZXJyLnR4dFVUBQAD564aXHV4CwABBPUBAAAEFAAA
AFBLAQIeAxQAAgAIADZmk02+ayuvdAAAANgAAABJABgAAAAAAAEAAACkgX/PBgBlZGl0aW5nL3Bh
c3RlYm9hcmQvZGF0YS10cmFuc2Zlci1nZXQtZGF0YS1ub24tbm9ybWFsaXplZC10eXBlcy1zdGRl
cnIudHh0VVQFAAPnrhpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgANmaTTRJS0WlkAAAAbAAA
AGYAGAAAAAAAAQAAAKSBdtAGAGVkaXRpbmcvcGFzdGVib2FyZC9kYXRhLXRyYW5zZmVyLWdldC1k
YXRhLW9uLWNvcHlpbmctcGFzdGluZy1tYWxmb3JtZWQtdXJsLWluLXNhbWUtZG9jdW1lbnQtc3Rk
ZXJyLnR4dFVUBQAD564aXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIADZmk03VExfGZAAAAGwA
AABLABgAAAAAAAEAAACkgXrRBgBlZGl0aW5nL3Bhc3RlYm9hcmQvZGF0YS10cmFuc2Zlci1nZXQt
ZGF0YS1vbi1wYXN0ZS1hcy1wbGFpbi10ZXh0LXN0ZGVyci50eHRVVAUAA+iuGlx1eAsAAQT1AQAA
BBQAAABQSwECHgMUAAIACAA2ZpNNY64e/WQAAABsAAAAcAAYAAAAAAABAAAApIFj0gYAZWRpdGlu
Zy9wYXN0ZWJvYXJkL2RhdGEtdHJhbnNmZXItZ2V0LWRhdGEtb24tcGFzdGUtYXMtcGxhaW4tdGV4
dC13aGVuLWN1c3RvbS1wYXN0ZWJvYXJkLWRhdGEtZGlzYWJsZWQtc3RkZXJyLnR4dFVUBQAD6K4a
XHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIADZmk03kktYnZAAAAGwAAABEABgAAAAAAAEAAACk
gXHTBgBlZGl0aW5nL3Bhc3RlYm9hcmQvZGF0YS10cmFuc2Zlci1nZXQtZGF0YS1vbi1wYXN0ZS1j
dXN0b20tc3RkZXJyLnR4dFVUBQAD6K4aXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIADZmk03x
tZjDZAAAAGwAAABIABgAAAAAAAEAAACkgVPUBgBlZGl0aW5nL3Bhc3RlYm9hcmQvZGF0YS10cmFu
c2Zlci1nZXQtZGF0YS1vbi1wYXN0ZS1wbGFpbi10ZXh0LXN0ZGVyci50eHRVVAUAA+iuGlx1eAsA
AQT1AQAABBQAAABQSwECHgMUAAIACAA3ZpNNPMiHyGQAAABsAAAARwAYAAAAAAABAAAApIE51QYA
ZWRpdGluZy9wYXN0ZWJvYXJkL2RhdGEtdHJhbnNmZXItZ2V0LWRhdGEtb24tcGFzdGUtcmljaC10
ZXh0LXN0ZGVyci50eHRVVAUAA+muGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAA3ZpNNtpaT
GmQAAABsAAAATQAYAAAAAAABAAAApIEe1gYAZWRpdGluZy9wYXN0ZWJvYXJkL2RhdGEtdHJhbnNm
ZXItaXRlbS1saXN0LWFkZC1maWxlLW11bHRpcGxlLXRpbWVzLXN0ZGVyci50eHRVVAUAA+muGlx1
eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAA3ZpNNR8s2iGQAAABsAAAARgAYAAAAAAABAAAApIEJ
1wYAZWRpdGluZy9wYXN0ZWJvYXJkL2RhdGEtdHJhbnNmZXItaXRlbS1saXN0LWFkZC1maWxlLW9u
LWNvcHktc3RkZXJyLnR4dFVUBQAD6a4aXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIADdmk039
os3xZAAAAGwAAABBABgAAAAAAAEAAACkge3XBgBlZGl0aW5nL3Bhc3RlYm9hcmQvZGF0YS10cmFu
c2Zlci1pdGVtcy1hZGQtY3VzdG9tLWRhdGEtc3RkZXJyLnR4dFVUBQAD6q4aXHV4CwABBPUBAAAE
FAAAAFBLAQIeAxQAAgAIADdmk01k7T7FZAAAAGwAAABfABgAAAAAAAEAAACkgczYBgBlZGl0aW5n
L3Bhc3RlYm9hcmQvZGF0YS10cmFuc2Zlci1zZXQtZGF0YS1pZ25vcmUtY29waWVkLW1hbGZvcm1l
ZC11cmwtaW4tbnVsbC1vcmlnaW4tc3RkZXJyLnR4dFVUBQAD6q4aXHV4CwABBPUBAAAEFAAAAFBL
AQIeAxQAAgAIADhmk00LjgLDZAAAAGwAAABdABgAAAAAAAEAAACkgcnZBgBlZGl0aW5nL3Bhc3Rl
Ym9hcmQvZGF0YS10cmFuc2Zlci1zZXQtZGF0YS1zYW5pdGl6ZS11cmwtd2hlbi1jb3B5aW5nLWlu
LW51bGwtb3JpZ2luLXN0ZGVyci50eHRVVAUAA+uuGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIA
CAA4ZpNNoMLENmQAAABsAAAAUAAYAAAAAAABAAAApIHE2gYAZWRpdGluZy9wYXN0ZWJvYXJkL2Rh
dGEtdHJhbnNmZXItc2V0LWRhdGEtc2FuaXRpemVzLWh0bWwtd2hlbi1jb3B5aW5nLXN0ZGVyci50
eHRVVAUAA+uuGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAA4ZpNNN3syZWQAAABsAAAASwAY
AAAAAAABAAAApIGy2wYAZWRpdGluZy9wYXN0ZWJvYXJkL2RhdGFUcmFuc2Zlci10eXBlcy1pcy1p
bml0aWFsbHktZW1wdHktb24tY29weS1zdGRlcnIudHh0VVQFAAPrrhpcdXgLAAEE9QEAAAQUAAAA
UEsBAh4DFAACAAgAOGaTTXk1ki5kAAAAbAAAAEIAGAAAAAAAAQAAAKSBm9wGAGVkaXRpbmcvcGFz
dGVib2FyZC9kYXRhVHJhbnNmZXItdHlwZXMtcGFzdGluZy1wbGFpbnRleHQtc3RkZXJyLnR4dFVU
BQAD7K4aXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIADhmk00tSk7OZAAAAGwAAAA8ABgAAAAA
AAEAAACkgXvdBgBlZGl0aW5nL3Bhc3RlYm9hcmQvZGF0YXRyYW5zZmVyLWdldGRhdGEtcGxhaW50
ZXh0LXN0ZGVyci50eHRVVAUAA+yuGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAA4ZpNNFZuk
pWQAAABsAAAAOgAYAAAAAAABAAAApIFV3gYAZWRpdGluZy9wYXN0ZWJvYXJkL2RhdGF0cmFuc2Zl
ci1pdGVtcy1jb3B5LWh0bWwtc3RkZXJyLnR4dFVUBQAD7K4aXHV4CwABBPUBAAAEFAAAAFBLAQIe
AxQAAgAIADhmk00yHvh8ZAAAAGwAAAA/ABgAAAAAAAEAAACkgS3fBgBlZGl0aW5nL3Bhc3RlYm9h
cmQvZGF0YXRyYW5zZmVyLWl0ZW1zLWNvcHktcGxhaW50ZXh0LXN0ZGVyci50eHRVVAUAA+yuGlx1
eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAA4ZpNNaqj3fmQAAABsAAAAOQAYAAAAAAABAAAApIEK
4AYAZWRpdGluZy9wYXN0ZWJvYXJkL2RhdGF0cmFuc2Zlci1pdGVtcy1jb3B5LXVybC1zdGRlcnIu
dHh0VVQFAAPsrhpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAOWaTTa9kl4FkAAAAbAAAAEAA
GAAAAAAAAQAAAKSB4eAGAGVkaXRpbmcvcGFzdGVib2FyZC9kYXRhdHJhbnNmZXItaXRlbXMtcGFz
dGUtcGxhaW50ZXh0LXN0ZGVyci50eHRVVAUAA+2uGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIA
CAA5ZpNN2vKQ82MAAABsAAAAPAAYAAAAAAABAAAApIG/4QYAZWRpdGluZy9wYXN0ZWJvYXJkL2Rv
LW5vdC1jb3B5LXVubmVjZXNzYXJ5LXN0eWxlcy1zdGRlcnIudHh0VVQFAAPtrhpcdXgLAAEE9QEA
AAQUAAAAUEsBAh4DFAACAAgAOWaTTd/JP61kAAAAbAAAADcAGAAAAAAAAQAAAKSBmOIGAGVkaXRp
bmcvcGFzdGVib2FyZC9nZXQtZGF0YS10ZXh0LXBsYWluLXBhc3RlLXN0ZGVyci50eHRVVAUAA+6u
Glx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAA5ZpNN9Lp4TWQAAABsAAAAKwAYAAAAAAABAAAA
pIFt4wYAZWRpdGluZy9wYXN0ZWJvYXJkL2hlYWRpbmctY3Jhc2gtc3RkZXJyLnR4dFVUBQAD7q4a
XHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIADlmk01N9yIQZAAAAGwAAAAtABgAAAAAAAEAAACk
gTbkBgBlZGl0aW5nL3Bhc3RlYm9hcmQvaW1hZ2UtaW4taWZyYW1lLXN0ZGVyci50eHRVVAUAA+6u
Glx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAA6ZpNNRVqJcWQAAABsAAAARAAYAAAAAAABAAAA
pIEB5QYAZWRpdGluZy9wYXN0ZWJvYXJkL2ltZy1zcmNzZXQtY29weS1wYXN0ZS1jYW5vbmljYWxp
emF0aW9uLXN0ZGVyci50eHRVVAUAA++uGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAA6ZpNN
HsDC9WQAAABsAAAAKwAYAAAAAAABAAAApIHj5QYAZWRpdGluZy9wYXN0ZWJvYXJkL2lucHV0LWZp
ZWxkLTEtc3RkZXJyLnR4dFVUBQAD764aXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIADpmk00n
HUWdZAAAAGwAAABaABgAAAAAAAEAAACkgazmBgBlZGl0aW5nL3Bhc3RlYm9hcmQvbGluZS1mZWVk
LWJldHdlZW4tYnItYW5kLWItc2hvdWxkLW5vdC1yZW9yZGVyLXBhc3RlZC1jb250ZW50LXN0ZGVy
ci50eHRVVAUAA/CuGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAA7ZpNNcBiNpWQAAABsAAAA
LwAYAAAAAAABAAAApIGk5wYAZWRpdGluZy9wYXN0ZWJvYXJkL29ucGFzdGUtdGV4dC1odG1sLXN0
ZGVyci50eHRVVAUAA/GuGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAA7ZpNN51ld4mQAAABs
AAAANQAYAAAAAAABAAAApIFx6AYAZWRpdGluZy9wYXN0ZWJvYXJkL29ucGFzdGUtdGV4dC1odG1s
LXR5cGVzLXN0ZGVyci50eHRVVAUAA/GuGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAA7ZpNN
HRZqIWQAAABsAAAAJQAYAAAAAAABAAAApIFE6QYAZWRpdGluZy9wYXN0ZWJvYXJkL3Bhc3RlLTIt
c3RkZXJyLnR4dFVUBQAD8q4aXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIADtmk03pOK5UZAAA
AGwAAAAvABgAAAAAAAEAAACkgQfqBgBlZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtNDAzODI2Ny1m
aXgtc3RkZXJyLnR4dFVUBQAD8q4aXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIADtmk00tcrYB
YwAAAGwAAAAvABgAAAAAAAEAAACkgdTqBgBlZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtNDAzOTc3
Ny1maXgtc3RkZXJyLnR4dFVUBQAD8q4aXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIADxmk02U
pQzMpwAAAKQEAAAwABgAAAAAAAEAAACkgaDrBgBlZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtYW5k
LXNhbml0aXplLXN0ZGVyci50eHRVVAUAA/SuGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAA9
ZpNNnlSQk2QAAABsAAAAQgAYAAAAAAABAAAApIGx7AYAZWRpdGluZy9wYXN0ZWJvYXJkL3Bhc3Rl
LWJsb2NrcXVvdGUtYW5kLXBhcmFncmFwaC1icmVhay1zdGRlcnIudHh0VVQFAAP1rhpcdXgLAAEE
9QEAAAQUAAAAUEsBAh4DFAACAAgAPWaTTZVVQQ1kAAAAbAAAAEAAGAAAAAAAAQAAAKSBke0GAGVk
aXRpbmcvcGFzdGVib2FyZC9wYXN0ZS1ibG9ja3F1b3RlLWJlZm9yZS1ibG9ja3F1b3RlLXN0ZGVy
ci50eHRVVAUAA/WuGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAA9ZpNNW2ekgGQAAABsAAAA
LwAYAAAAAAABAAAApIFv7gYAZWRpdGluZy9wYXN0ZWJvYXJkL3Bhc3RlLWNvZGUtaW4tcHJlLXN0
ZGVyci50eHRVVAUAA/WuGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAA9ZpNNWia9NWQAAABs
AAAATgAYAAAAAAABAAAApIE87wYAZWRpdGluZy9wYXN0ZWJvYXJkL3Bhc3RlLWRvdWJsZS1uZXN0
ZWQtYmxvY2txdW90ZS1iZWZvcmUtYmxvY2txdW90ZS1zdGRlcnIudHh0VVQFAAP2rhpcdXgLAAEE
9QEAAAQUAAAAUEsBAh4DFAACAAgAPWaTTRXE8jtkAAAAbAAAADMAGAAAAAAAAQAAAKSBKPAGAGVk
aXRpbmcvcGFzdGVib2FyZC9wYXN0ZS1ldmVudC1vbmx5LW9uY2Utc3RkZXJyLnR4dFVUBQAD9q4a
XHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAD1mk03wUzMkZAAAAGwAAAA1ABgAAAAAAAEAAACk
gfnwBgBlZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtaW1hZ2UtYXMtYmxvYi11cmwtc3RkZXJyLnR4
dFVUBQAD9q4aXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAD1mk03mO44nZAAAAGwAAABCABgA
AAAAAAEAAACkgczxBgBlZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtaW1hZ2UtZG9lcy1ub3QtcmV2
ZWFsLWZpbGUtdXJsLXN0ZGVyci50eHRVVAUAA/auGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIA
CABAZpNN8hcZ1GQAAABsAAAAOgAYAAAAAAABAAAApIGs8gYAZWRpdGluZy9wYXN0ZWJvYXJkL3Bh
c3RlLWltYWdlLXVzaW5nLWltYWdlLWRhdGEtc3RkZXJyLnR4dFVUBQAD964aXHV4CwABBPUBAAAE
FAAAAFBLAQIeAxQAAgAIAEBmk01pe+jwZAAAAGwAAAAzABgAAAAAAAEAAACkgYTzBgBlZGl0aW5n
L3Bhc3RlYm9hcmQvcGFzdGUtaW50by10YWJsZS1jZWxsLXN0ZGVyci50eHRVVAUAA/euGlx1eAsA
AQT1AQAABBQAAABQSwECHgMUAAIACABAZpNNnmr5xmQAAABsAAAANAAYAAAAAAABAAAApIFV9AYA
ZWRpdGluZy9wYXN0ZWJvYXJkL3Bhc3RlLWxpbmUtZW5kaW5ncy0wMDEtc3RkZXJyLnR4dFVUBQAD
+K4aXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAEBmk012DGvCZAAAAGwAAAA0ABgAAAAAAAEA
AACkgSf1BgBlZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtbGluZS1lbmRpbmdzLTAwMi1zdGRlcnIu
dHh0VVQFAAP4rhpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAQGaTTfeJuopkAAAAbAAAADQA
GAAAAAAAAQAAAKSB+fUGAGVkaXRpbmcvcGFzdGVib2FyZC9wYXN0ZS1saW5lLWVuZGluZ3MtMDAz
LXN0ZGVyci50eHRVVAUAA/iuGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABAZpNNqkt9/GQA
AABsAAAANAAYAAAAAAABAAAApIHL9gYAZWRpdGluZy9wYXN0ZWJvYXJkL3Bhc3RlLWxpbmUtZW5k
aW5ncy0wMDQtc3RkZXJyLnR4dFVUBQAD+K4aXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAEBm
k00+e3dUZAAAAGwAAAA0ABgAAAAAAAEAAACkgZ33BgBlZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUt
bGluZS1lbmRpbmdzLTAwNS1zdGRlcnIudHh0VVQFAAP4rhpcdXgLAAEE9QEAAAQUAAAAUEsBAh4D
FAACAAgAQWaTTcod4CtkAAAAbAAAADQAGAAAAAAAAQAAAKSBb/gGAGVkaXRpbmcvcGFzdGVib2Fy
ZC9wYXN0ZS1saW5lLWVuZGluZ3MtMDA2LXN0ZGVyci50eHRVVAUAA/muGlx1eAsAAQT1AQAABBQA
AABQSwECHgMUAAIACABBZpNNIr600WQAAABsAAAANAAYAAAAAAABAAAApIFB+QYAZWRpdGluZy9w
YXN0ZWJvYXJkL3Bhc3RlLWxpbmUtZW5kaW5ncy0wMDctc3RkZXJyLnR4dFVUBQAD+a4aXHV4CwAB
BPUBAAAEFAAAAFBLAQIeAxQAAgAIAEFmk02xxIODZAAAAGwAAAA0ABgAAAAAAAEAAACkgRP6BgBl
ZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtbGluZS1lbmRpbmdzLTAwOC1zdGRlcnIudHh0VVQFAAP5
rhpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAQWaTTTWv43hkAAAAbAAAADQAGAAAAAAAAQAA
AKSB5foGAGVkaXRpbmcvcGFzdGVib2FyZC9wYXN0ZS1saW5lLWVuZGluZ3MtMDA5LXN0ZGVyci50
eHRVVAUAA/muGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABBZpNNJ1sE2GQAAABsAAAANAAY
AAAAAAABAAAApIG3+wYAZWRpdGluZy9wYXN0ZWJvYXJkL3Bhc3RlLWxpbmUtZW5kaW5ncy0wMTAt
c3RkZXJyLnR4dFVUBQAD+q4aXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAEFmk02IV9QYZAAA
AGwAAAAsABgAAAAAAAEAAACkgYn8BgBlZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtbGlzdC0wMDEt
c3RkZXJyLnR4dFVUBQAD+q4aXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAEJmk02a8xywbQAA
ANgAAAAsABgAAAAAAAEAAACkgVP9BgBlZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtbGlzdC0wMDIt
c3RkZXJyLnR4dFVUBQAD+64aXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAEJmk034QqMxZAAA
AGwAAAAsABgAAAAAAAEAAACkgSb+BgBlZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtbGlzdC0wMDMt
c3RkZXJyLnR4dFVUBQAD+64aXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAEJmk03FBsZEZAAA
AGwAAAAzABgAAAAAAAEAAACkgfD+BgBlZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtbWF0Y2gtc3R5
bGUtMDAxLXN0ZGVyci50eHRVVAUAA/uuGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABCZpNN
jgIIo2QAAABsAAAAMwAYAAAAAAABAAAApIHB/wYAZWRpdGluZy9wYXN0ZWJvYXJkL3Bhc3RlLW1h
dGNoLXN0eWxlLTAwMi1zdGRlcnIudHh0VVQFAAP7rhpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAAC
AAgAQmaTTZk6rnhkAAAAbAAAADQAGAAAAAAAAQAAAKSBkgAHAGVkaXRpbmcvcGFzdGVib2FyZC9w
YXN0ZS1wbGFpbnRleHQtbm93cmFwLXN0ZGVyci50eHRVVAUAA/yuGlx1eAsAAQT1AQAABBQAAABQ
SwECHgMUAAIACABCZpNNDwGms2QAAABsAAAAKwAYAAAAAAABAAAApIFkAQcAZWRpdGluZy9wYXN0
ZWJvYXJkL3Bhc3RlLXByZS0wMDEtc3RkZXJyLnR4dFVUBQAD/K4aXHV4CwABBPUBAAAEFAAAAFBL
AQIeAxQAAgAIAEJmk01qPM7IZAAAAGwAAAArABgAAAAAAAEAAACkgS0CBwBlZGl0aW5nL3Bhc3Rl
Ym9hcmQvcGFzdGUtcHJlLTAwMi1zdGRlcnIudHh0VVQFAAP8rhpcdXgLAAEE9QEAAAQUAAAAUEsB
Ah4DFAACAAgAQmaTTY+qKOhkAAAAbAAAADMAGAAAAAAAAQAAAKSB9gIHAGVkaXRpbmcvcGFzdGVi
b2FyZC9wYXN0ZS1yZW1vdmluZy1pZnJhbWUtc3RkZXJyLnR4dFVUBQAD/K4aXHV4CwABBPUBAAAE
FAAAAFBLAQIeAxQAAgAIAENmk02bmGMQZAAAAGwAAAAtABgAAAAAAAEAAACkgccDBwBlZGl0aW5n
L3Bhc3RlYm9hcmQvcGFzdGUtdGFibGUtMDAxLXN0ZGVyci50eHRVVAUAA/2uGlx1eAsAAQT1AQAA
BBQAAABQSwECHgMUAAIACABDZpNNQuWvcWQAAABsAAAALQAYAAAAAAABAAAApIGSBAcAZWRpdGlu
Zy9wYXN0ZWJvYXJkL3Bhc3RlLXRhYmxlLTAwMi1zdGRlcnIudHh0VVQFAAP9rhpcdXgLAAEE9QEA
AAQUAAAAUEsBAh4DFAACAAgAQ2aTTSsFJd9kAAAAbAAAAC0AGAAAAAAAAQAAAKSBXQUHAGVkaXRp
bmcvcGFzdGVib2FyZC9wYXN0ZS10YWJsZS0wMDMtc3RkZXJyLnR4dFVUBQAD/a4aXHV4CwABBPUB
AAAEFAAAAFBLAQIeAxQAAgAIAENmk01Z9HzxZAAAAGwAAAAvABgAAAAAAAEAAACkgSgGBwBlZGl0
aW5nL3Bhc3RlYm9hcmQvcGFzdGUtdGFibGUtY2VsbHMtc3RkZXJyLnR4dFVUBQAD/a4aXHV4CwAB
BPUBAAAEFAAAAFBLAQIeAxQAAgAIAENmk003HUsfYwAAAGwAAAAsABgAAAAAAAEAAACkgfUGBwBl
ZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtdGV4dC0wMDEtc3RkZXJyLnR4dFVUBQAD/q4aXHV4CwAB
BPUBAAAEFAAAAFBLAQIeAxQAAgAIAENmk0250X6yZAAAAGwAAAAsABgAAAAAAAEAAACkgb4HBwBl
ZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtdGV4dC0wMDItc3RkZXJyLnR4dFVUBQAD/q4aXHV4CwAB
BPUBAAAEFAAAAFBLAQIeAxQAAgAIAERmk01Y9UWPZAAAAGwAAAAsABgAAAAAAAEAAACkgYgIBwBl
ZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtdGV4dC0wMDMtc3RkZXJyLnR4dFVUBQAD/64aXHV4CwAB
BPUBAAAEFAAAAFBLAQIeAxQAAgAIAERmk00blbhPZAAAAGwAAAAsABgAAAAAAAEAAACkgVIJBwBl
ZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtdGV4dC0wMDQtc3RkZXJyLnR4dFVUBQAD/64aXHV4CwAB
BPUBAAAEFAAAAFBLAQIeAxQAAgAIAERmk01fgLnPZAAAAGwAAAAsABgAAAAAAAEAAACkgRwKBwBl
ZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtdGV4dC0wMDUtc3RkZXJyLnR4dFVUBQAD/64aXHV4CwAB
BPUBAAAEFAAAAFBLAQIeAxQAAgAIAERmk00BKAtaZAAAAGwAAAAsABgAAAAAAAEAAACkgeYKBwBl
ZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtdGV4dC0wMDYtc3RkZXJyLnR4dFVUBQADAK8aXHV4CwAB
BPUBAAAEFAAAAFBLAQIeAxQAAgAIAERmk00dQhsvZAAAAGwAAAAsABgAAAAAAAEAAACkgbALBwBl
ZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtdGV4dC0wMDctc3RkZXJyLnR4dFVUBQADAK8aXHV4CwAB
BPUBAAAEFAAAAFBLAQIeAxQAAgAIAERmk01TDPJYZAAAAGwAAAAsABgAAAAAAAEAAACkgXoMBwBl
ZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtdGV4dC0wMDgtc3RkZXJyLnR4dFVUBQADAK8aXHV4CwAB
BPUBAAAEFAAAAFBLAQIeAxQAAgAIAEVmk03xvUuZZAAAAGwAAAAsABgAAAAAAAEAAACkgUQNBwBl
ZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtdGV4dC0wMDktc3RkZXJyLnR4dFVUBQADAa8aXHV4CwAB
BPUBAAAEFAAAAFBLAQIeAxQAAgAIAEVmk02FLQNZZAAAAGwAAAAsABgAAAAAAAEAAACkgQ4OBwBl
ZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtdGV4dC0wMTAtc3RkZXJyLnR4dFVUBQADAa8aXHV4CwAB
BPUBAAAEFAAAAFBLAQIeAxQAAgAIAEVmk03Z9ZCFZAAAAGwAAAAsABgAAAAAAAEAAACkgdgOBwBl
ZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtdGV4dC0wMTEtc3RkZXJyLnR4dFVUBQADAa8aXHV4CwAB
BPUBAAAEFAAAAFBLAQIeAxQAAgAIAEVmk01WAcOSZAAAAGwAAAAsABgAAAAAAAEAAACkgaIPBwBl
ZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtdGV4dC0wMTItc3RkZXJyLnR4dFVUBQADAa8aXHV4CwAB
BPUBAAAEFAAAAFBLAQIeAxQAAgAIAEVmk02NEYZPZAAAAGwAAAAsABgAAAAAAAEAAACkgWwQBwBl
ZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtdGV4dC0wMTMtc3RkZXJyLnR4dFVUBQADAq8aXHV4CwAB
BPUBAAAEFAAAAFBLAQIeAxQAAgAIAEVmk03TApZAZAAAAGwAAAAsABgAAAAAAAEAAACkgTYRBwBl
ZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtdGV4dC0wMTQtc3RkZXJyLnR4dFVUBQADAq8aXHV4CwAB
BPUBAAAEFAAAAFBLAQIeAxQAAgAIAEVmk00Y3MrgZAAAAGwAAAAsABgAAAAAAAEAAACkgQASBwBl
ZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtdGV4dC0wMTUtc3RkZXJyLnR4dFVUBQADAq8aXHV4CwAB
BPUBAAAEFAAAAFBLAQIeAxQAAgAIAEZmk00G855mZAAAAGwAAAAsABgAAAAAAAEAAACkgcoSBwBl
ZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtdGV4dC0wMTYtc3RkZXJyLnR4dFVUBQADA68aXHV4CwAB
BPUBAAAEFAAAAFBLAQIeAxQAAgAIAEZmk01bh2ROZAAAAGwAAAAsABgAAAAAAAEAAACkgZQTBwBl
ZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtdGV4dC0wMTctc3RkZXJyLnR4dFVUBQADA68aXHV4CwAB
BPUBAAAEFAAAAFBLAQIeAxQAAgAIAEZmk03ds0elZAAAAGwAAAAsABgAAAAAAAEAAACkgV4UBwBl
ZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtdGV4dC0wMTgtc3RkZXJyLnR4dFVUBQADA68aXHV4CwAB
BPUBAAAEFAAAAFBLAQIeAxQAAgAIAEZmk02mnrODZAAAAGwAAAAsABgAAAAAAAEAAACkgSgVBwBl
ZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtdGV4dC0wMTktc3RkZXJyLnR4dFVUBQADA68aXHV4CwAB
BPUBAAAEFAAAAFBLAQIeAxQAAgAIAEZmk032KIjnZAAAAGwAAAA3ABgAAAAAAAEAAACkgfIVBwBl
ZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtdGV4dC1hdC10YWJzcGFuLTAwMS1zdGRlcnIudHh0VVQF
AAMErxpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgARmaTTTzEkExkAAAAbAAAADcAGAAAAAAA
AQAAAKSBxxYHAGVkaXRpbmcvcGFzdGVib2FyZC9wYXN0ZS10ZXh0LWF0LXRhYnNwYW4tMDAyLXN0
ZGVyci50eHRVVAUAAwSvGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABGZpNNRm79E2QAAABs
AAAANwAYAAAAAAABAAAApIGcFwcAZWRpdGluZy9wYXN0ZWJvYXJkL3Bhc3RlLXRleHQtYXQtdGFi
c3Bhbi0wMDMtc3RkZXJyLnR4dFVUBQADBK8aXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAEZm
k03dgPw8YwAAAGwAAAA1ABgAAAAAAAEAAACkgXEYBwBlZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUt
dGV4dC13aXRoLXN0eWxlLTItc3RkZXJyLnR4dFVUBQADBK8aXHV4CwABBPUBAAAEFAAAAFBLAQIe
AxQAAgAIAEdmk03Sh8weZAAAAGwAAAA1ABgAAAAAAAEAAACkgUMZBwBlZGl0aW5nL3Bhc3RlYm9h
cmQvcGFzdGUtdGV4dC13aXRoLXN0eWxlLTMtc3RkZXJyLnR4dFVUBQADBa8aXHV4CwABBPUBAAAE
FAAAAFBLAQIeAxQAAgAIAEdmk03czDNxZAAAAGwAAAA1ABgAAAAAAAEAAACkgRYaBwBlZGl0aW5n
L3Bhc3RlYm9hcmQvcGFzdGUtdGV4dC13aXRoLXN0eWxlLTQtc3RkZXJyLnR4dFVUBQADBa8aXHV4
CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAEdmk02d0FcDZAAAAGwAAAA1ABgAAAAAAAEAAACkgeka
BwBlZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtdGV4dC13aXRoLXN0eWxlLTUtc3RkZXJyLnR4dFVU
BQADBa8aXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAEdmk03eQmHrZAAAAGwAAAAzABgAAAAA
AAEAAACkgbwbBwBlZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGUtdGV4dC13aXRoLXN0eWxlLXN0ZGVy
ci50eHRVVAUAAwWvGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABHZpNNIO1E6mQAAABsAAAA
NQAYAAAAAAABAAAApIGNHAcAZWRpdGluZy9wYXN0ZWJvYXJkL3Bhc3RlLXVucmVuZGVyZWQtc2Vs
ZWN0LXN0ZGVyci50eHRVVAUAAwavGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABIZpNNBm80
mJEAAACIAgAAMwAYAAAAAAABAAAApIFgHQcAZWRpdGluZy9wYXN0ZWJvYXJkL3Bhc3RlLXdpdGhv
dXQtbmVzdGluZy1zdGRlcnIudHh0VVQFAAMHrxpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgA
SGaTTe++34ZkAAAAbAAAACcAGAAAAAAAAQAAAKSBXh4HAGVkaXRpbmcvcGFzdGVib2FyZC9wYXN0
ZS14bWwtc3RkZXJyLnR4dFVUBQADB68aXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAEhmk00s
Kx3VZAAAAGwAAABDABgAAAAAAAEAAACkgSMfBwBlZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGluZy1l
bXB0eS1odG1sLWZhbGxzLWJhY2stdG8tdGV4dC1zdGRlcnIudHh0VVQFAAMHrxpcdXgLAAEE9QEA
AAQUAAAAUEsBAh4DFAACAAgASGaTTXjrPvZkAAAAbAAAAD4AGAAAAAAAAQAAAKSBBCAHAGVkaXRp
bmcvcGFzdGVib2FyZC9wYXN0aW5nLWludG8tcC1zaG91bGQtbm90LW5lc3QtcC1zdGRlcnIudHh0
VVQFAAMIrxpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgASGaTTb7S6pNkAAAAbAAAACoAGAAA
AAAAAQAAAKSB4CAHAGVkaXRpbmcvcGFzdGVib2FyZC9wYXN0aW5nLXRhYnMtc3RkZXJyLnR4dFVU
BQADCK8aXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAEhmk03o5kRUZAAAAGwAAABdABgAAAAA
AAEAAACkgaghBwBlZGl0aW5nL3Bhc3RlYm9hcmQvcGFzdGluZy13aXRoLWltYWdlcy1kaXNhYmxl
ZC1zaG91bGQtbm90LWVuYWJsZS1kZWZlcnJlZC1sb2FkaW5nLXN0ZGVyci50eHRVVAUAAwivGlx1
eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABJZpNNUE0x7mQAAABsAAAAMgAYAAAAAAABAAAApIGj
IgcAZWRpdGluZy9wYXN0ZWJvYXJkL3ByZXNlcnZlLWNhcmV0LWNvbG9yLXN0ZGVyci50eHRVVAUA
AwmvGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABJZpNNyn6DxWQAAABsAAAASgAYAAAAAAAB
AAAApIFzIwcAZWRpdGluZy9wYXN0ZWJvYXJkL3ByZXNlcnZlLWxpbmUtYnJlYWstYXQtZW5kLW9m
LXBhc3RlZC1jb250ZW50LXN0ZGVyci50eHRVVAUAAwmvGlx1eAsAAQT1AQAABBQAAABQSwECHgMU
AAIACABJZpNNG5EsHmQAAABsAAAANgAYAAAAAAABAAAApIFbJAcAZWRpdGluZy9wYXN0ZWJvYXJk
L3ByZXNlcnZlLXVuZGVybGluZS1jb2xvci1zdGRlcnIudHh0VVQFAAMJrxpcdXgLAAEE9QEAAAQU
AAAAUEsBAh4DFAACAAgASWaTTZnMJz9kAAAAbAAAAC4AGAAAAAAAAQAAAKSBLyUHAGVkaXRpbmcv
cGFzdGVib2FyZC9zZWxlY3QtZWxlbWVudC0xLXN0ZGVyci50eHRVVAUAAwmvGlx1eAsAAQT1AQAA
BBQAAABQSwECHgMUAAIACABJZpNNYyUBkWQAAABsAAAASQAYAAAAAAABAAAApIH7JQcAZWRpdGlu
Zy9wYXN0ZWJvYXJkL3NpbXBsZml5aW5nLW1hcmt1cC1zaG91bGQtbm90LXN0cmlwLWNvbnRlbnQt
c3RkZXJyLnR4dFVUBQADCq8aXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAElmk03WmBUyZAAA
AGwAAABBABgAAAAAAAEAAACkgeImBwBlZGl0aW5nL3Bhc3RlYm9hcmQvc21hcnQtcGFzdGUtMDAz
LXRyYWlsaW5nLXdoaXRlc3BhY2Utc3RkZXJyLnR4dFVUBQADCq8aXHV4CwABBPUBAAAEFAAAAFBL
AQIeAxQAAgAIAElmk03ObNyeZAAAAGwAAAAtABgAAAAAAAEAAACkgcEnBwBlZGl0aW5nL3Bhc3Rl
Ym9hcmQvc21hcnQtcGFzdGUtMDA2LXN0ZGVyci50eHRVVAUAAwqvGlx1eAsAAQT1AQAABBQAAABQ
SwECHgMUAAIACABKZpNN8repXmQAAABsAAAALgAYAAAAAAABAAAApIGMKAcAZWRpdGluZy9wYXN0
ZWJvYXJkL3N0eWxlLWZyb20tcnVsZXMtc3RkZXJyLnR4dFVUBQADC68aXHV4CwABBPUBAAAEFAAA
AFBLAQIeAxQAAgAIAEpmk019CpqaZAAAAGwAAAAzABgAAAAAAAEAAACkgVgpBwBlZGl0aW5nL3Bh
c3RlYm9hcmQvc3R5bGVkLWVsZW1lbnQtbWFya3VwLXN0ZGVyci50eHRVVAUAAwuvGlx1eAsAAQT1
AQAABBQAAABQSwECHgMUAAIACABKZpNNHdf6VmQAAABsAAAAKwAYAAAAAAABAAAApIEpKgcAZWRp
dGluZy9wYXN0ZWJvYXJkL3Rlc3RjYXNlLTk1MDctc3RkZXJyLnR4dFVUBQADC68aXHV4CwABBPUB
AAAEFAAAAFBLAQIeAxQAAgAIAEpmk000p4h9ZAAAAGwAAAA3ABgAAAAAAAEAAACkgfIqBwBlZGl0
aW5nL3Bhc3RlYm9hcmQvdW5kb2FibGUtZnJhZ21lbnQtcmVtb3Zlcy1zdGRlcnIudHh0VVQFAAMM
rxpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAk1yTTQAAAAAAAAAAAAAAABIAGAAAAAAAAAAQ
AO1BxysHAGVkaXRpbmcvc2VsZWN0aW9uL1VUBQADxZ0aXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQA
AgAIADtmk02vkSKQZAAAAGwAAAAtABgAAAAAAAEAAACkgRMsBwBlZGl0aW5nL3NlbGVjdGlvbi9z
ZWxlY3QtY3Jhc2gtMDAyLXN0ZGVyci50eHRVVAUAA/KuGlx1eAsAAQT1AQAABBQAAABQSwECHgMU
AAIACADNaZNNcY1rcrwNAACUfQAADQAYAAAAAAABAAAApIHeLAcAZXJyb3JfbG9nLnR4dFVUBQAD
sbQaXHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAFNmk00AAAAAAAAAAAAAAAAFABgAAAAAAAAA
EADtQeE6BwBmYXN0L1VUBQADHa8aXHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAJpck00AAAAA
AAAAAAAAAAAJABgAAAAAAAAAEADtQSA7BwBmYXN0L2Nzcy9VVAUAA9SdGlx1eAsAAQT1AQAABBQA
AABQSwECHgMUAAIACABEZpNN2wjTQjsAAAA/AAAAKQAYAAAAAAABAAAApIFjOwcAZmFzdC9jc3Mv
Y29tcGFyZS1jb250ZW50LXN0eWxlLXN0ZGVyci50eHRVVAUAAwCvGlx1eAsAAQT1AQAABBQAAABQ
SwECHgMKAAAAAABTZpNNAAAAAAAAAAAAAAAADAAYAAAAAAAAABAA7UEBPAcAZmFzdC9ldmVudHMv
VVQFAAMdrxpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAU2aTTZyFhoHDAAAArAEAADsAGAAA
AAAAAQAAAKSBRzwHAGZhc3QvZXZlbnRzL2JlZm9yZXVubG9hZC1hbGVydC11c2VyLWludGVyYWN0
aW9uMi1zdGRlcnIudHh0VVQFAAMdrxpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAaWaTTQAA
AAAAAAAAAAAAAAsAGAAAAAAAAAAQAO1Bfz0HAGZhc3QvZm9ybXMvVVQFAANGrxpcdXgLAAEE9QEA
AAQUAAAAUEsBAh4DFAACAAgAr1yTTdFxzCfAAAAAqgEAAEQAGAAAAAAAAQAAAKSBxD0HAGZhc3Qv
Zm9ybXMvY2FsbC10ZXh0LWRpZC1jaGFuZ2UtaW4tdGV4dC1maWVsZC13aGVuLXR5cGluZy1zdGRl
cnIudHh0VVQFAAP6nRpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAxWGTTQAAAAAAAAAAAAAA
ABQAGAAAAAAAAAAQAO1BAj8HAGZhc3QvZm9ybXMvZGF0YWxpc3QvVVQFAAOSphpcdXgLAAEE9QEA
AAQUAAAAUEsBAh4DFAACAAgAVWaTTQhKvuLDAAAArAEAADEAGAAAAAAAAQAAAKSBUD8HAGZhc3Qv
Zm9ybXMvZGF0YWxpc3QvZGF0YWxpc3Qtc2hvdy1oaWRlLXN0ZGVyci50eHRVVAUAAyGvGlx1eAsA
AQT1AQAABBQAAABQSwECHgMUAAIACABpZpNNMt88NGQAAABsAAAAJgAYAAAAAAABAAAApIF+QAcA
ZmFzdC9mb3Jtcy9wbGFpbnRleHQtbW9kZS0yLXN0ZGVyci50eHRVVAUAA0avGlx1eAsAAQT1AQAA
BBQAAABQSwECHgMUAAIACABxZpNNQZXmnaEAAADNAAAALwAYAAAAAAABAAAApIFCQQcAZmFzdC9m
b3Jtcy92YWxpZGF0aW9uLWN1c3RvbS1tZXNzYWdlLXN0ZGVyci50eHRVVAUAA1avGlx1eAsAAQT1
AQAABBQAAABQSwECHgMUAAIACABxZpNNF1HearIAAACaAQAAKQAYAAAAAAABAAAApIFMQgcAZmFz
dC9mb3Jtcy92YWxpZGF0aW9uLW1lc3NhZ2VzLXN0ZGVyci50eHRVVAUAA1avGlx1eAsAAQT1AQAA
BBQAAABQSwECHgMKAAAAAAC3XJNNAAAAAAAAAAAAAAAADAAYAAAAAAAAABAA7UFhQwcAZmFzdC9m
cmFtZXMvVVQFAAMKnhpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAYmaTTdsI00I7AAAAPwAA
AC8AGAAAAAAAAQAAAKSBp0MHAGZhc3QvZnJhbWVzL2ZyYW1lLWRpc3BsYXktbm9uZS1mb2N1cy1z
dGRlcnIudHh0VVQFAAM3rxpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAw1yTTQAAAAAAAAAA
AAAAAAwAGAAAAAAAAAAQAO1BS0QHAGZhc3QvaW1hZ2VzL1VUBQADHZ4aXHV4CwABBPUBAAAEFAAA
AFBLAQIeAxQAAgAIAGtmk00iGKGrVwAAAF4AAAAsABgAAAAAAAEAAACkgZFEBwBmYXN0L2ltYWdl
cy9wZGYtYXMtaW1hZ2UtY3JvcC1ib3gtc3RkZXJyLnR4dFVUBQADSq8aXHV4CwABBPUBAAAEFAAA
AFBLAQIeAwoAAAAAAMFck00AAAAAAAAAAAAAAAAMABgAAAAAAAAAEADtQU5FBwBmYXN0L2xvYWRl
ci9VVAUAAxqeGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABkZpNN2wjTQjsAAAA/AAAAUgAY
AAAAAAABAAAApIGURQcAZmFzdC9sb2FkZXIvZGlzcGxheS1pbWFnZS11bnNldC1jYW4tYmxvY2st
aW1hZ2UtYW5kLWNhbi1yZWxvYWQtaW4tcGxhY2Utc3RkZXJyLnR4dFVUBQADO68aXHV4CwABBPUB
AAAEFAAAAFBLAQIeAxQAAgAIAGZmk03bCNNCOwAAAD8AAABTABgAAAAAAAEAAACkgVtGBwBmYXN0
L2xvYWRlci9pbWFnZXMtZW5hYmxlZC11bnNldC1jYW4tYmxvY2staW1hZ2UtYW5kLWNhbi1yZWxv
YWQtaW4tcGxhY2Utc3RkZXJyLnR4dFVUBQADP68aXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAI
AGlmk03bCNNCOwAAAD8AAAAtABgAAAAAAAEAAACkgSNHBwBmYXN0L2xvYWRlci9yZWxvYWQtcG9s
aWN5LWRlbGVnYXRlLXN0ZGVyci50eHRVVAUAA0avGlx1eAsAAQT1AQAABBQAAABQSwECHgMKAAAA
AADNXJNNAAAAAAAAAAAAAAAAEAAYAAAAAAAAABAA7UHFRwcAZmFzdC9zaGFkb3ctZG9tL1VUBQAD
MZ4aXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAHVmk03c2ma4ZAAAAGwAAAA5ABgAAAAAAAEA
AACkgQ9IBwBmYXN0L3NoYWRvdy1kb20vc2VsZWN0aW9uLWF0LXNoYWRvdy1yb290LWNyYXNoLXN0
ZGVyci50eHRVVAUAA12vGlx1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAADmXJNNAAAAAAAAAAAA
AAAACgAYAAAAAAAAABAA7UHmSAcAZmFzdC90ZXh0L1VUBQADYJ4aXHV4CwABBPUBAAAEFAAAAFBL
AQIeAxQAAgAIAOZck03Tr5uSwAAAAKoBAAAyABgAAAAAAAEAAACkgSpJBwBmYXN0L3RleHQvc2Ny
b2xsLXRleHQtb3ZlcmZsb3ctZWxsaXBzaXMtc3RkZXJyLnR4dFVUBQADYJ4aXHV4CwABBPUBAAAE
FAAAAFBLAQIeAwoAAAAAANZck00AAAAAAAAAAAAAAAAVABgAAAAAAAAAEADtQVZKBwBmYXN0L3Zp
c3VhbC12aWV3cG9ydC9VVAUAA0SeGlx1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAADWXJNNAAAA
AAAAAAAAAAAAGQAYAAAAAAAAABAA7UGlSgcAZmFzdC92aXN1YWwtdmlld3BvcnQvaW9zL1VUBQAD
RJ4aXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAIFmk02r10VhxgAAAKwBAAA/ABgAAAAAAAEA
AACkgfhKBwBmYXN0L3Zpc3VhbC12aWV3cG9ydC9pb3Mvc3RhYmxlLXVwZGF0ZS13aXRoLWtleWJv
YXJkLXN0ZGVyci50eHRVVAUAA3GvGlx1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAADaXJNNAAAA
AAAAAAAAAAAACQAYAAAAAAAAABAA7UE3TAcAZmFzdC94c2wvVVQFAANMnhpcdXgLAAEE9QEAAAQU
AAAAUEsBAh4DFAACAAgAg2aTTU77IPiIAAAA5wAAACUAGAAAAAAAAQAAAKSBekwHAGZhc3QveHNs
L3RyYW5zZm9ybS14aHItZG9jLXN0ZGVyci50eHRVVAUAA3WvGlx1eAsAAQT1AQAABBQAAABQSwEC
HgMUAAIACACDZpNN/aIuZI8AAADuAAAAJwAYAAAAAAABAAAApIFhTQcAZmFzdC94c2wveHNsdC1i
YWQtaW1wb3J0LXVyaS1zdGRlcnIudHh0VVQFAAN2rxpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAAC
AAgAg2aTTbK7xmeHAAAANAEAACQAGAAAAAAAAQAAAKSBUU4HAGZhc3QveHNsL3hzbHQtY29udGVu
dFR5cGUtc3RkZXJyLnR4dFVUBQADdq8aXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAINmk01k
VeJbLwEAABwCAAAiABgAAAAAAAEAAACkgTZPBwBmYXN0L3hzbC94c2x0LW1heC1kZXB0aC1zdGRl
cnIudHh0VVQFAAN2rxpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAhGaTTcLr9caMAAAAYAEA
ADQAGAAAAAAAAQAAAKSBwVAHAGZhc3QveHNsL3hzbHQtdHJhbnNmb3JtLXRvLWZyYWdtZW50LWNy
YXNoLXN0ZGVyci50eHRVVAUAA3evGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACADkaZNNzibJ
DYABAAA6AgAAEQAYAAAAAAABAAAApIG7UQcAZnVsbF9yZXN1bHRzLmpzb25VVAUAA9y0Glx1eAsA
AQT1AQAABBQAAABQSwECHgMKAAAAAAAFXZNNAAAAAAAAAAAAAAAABQAYAAAAAAAAABAA7UGGUwcA
aHR0cC9VVAUAA5meGlx1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAAAPXZNNAAAAAAAAAAAAAAAA
CwAYAAAAAAAAABAA7UHFUwcAaHR0cC90ZXN0cy9VVAUAA66eGlx1eAsAAQT1AQAABBQAAABQSwEC
HgMKAAAAAADjXJNNAAAAAAAAAAAAAAAAFAAYAAAAAAAAABAA7UEKVAcAaHR0cC90ZXN0cy9hcHBj
YWNoZS9VVAUAA1qeGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACACMZpNNXeyF7pQAAACOAQAA
QwAYAAAAAAABAAAApIFYVAcAaHR0cC90ZXN0cy9hcHBjYWNoZS9kZWZlcnJlZC1ldmVudHMtZGVs
ZXRlLXdoaWxlLXJhaXNpbmctc3RkZXJyLnR4dFVUBQADiK8aXHV4CwABBPUBAAAEFAAAAFBLAQIe
AxQAAgAIAIxmk01d7IXulAAAAI4BAABJABgAAAAAAAEAAACkgWlVBwBodHRwL3Rlc3RzL2FwcGNh
Y2hlL2RlZmVycmVkLWV2ZW50cy1kZWxldGUtd2hpbGUtcmFpc2luZy10aW1lci1zdGRlcnIudHh0
VVQFAAOIrxpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAjWaTTeRsr4GZAAAARgIAAC8AGAAA
AAAAAQAAAKSBgFYHAGh0dHAvdGVzdHMvYXBwY2FjaGUvZmFpbC1vbi11cGRhdGUtMi1zdGRlcnIu
dHh0VVQFAAOJrxpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAjWaTTXhj/f+UAAAAIwEAAC0A
GAAAAAAAAQAAAKSBglcHAGh0dHAvdGVzdHMvYXBwY2FjaGUvZmFpbC1vbi11cGRhdGUtc3RkZXJy
LnR4dFVUBQADia8aXHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAOJck00AAAAAAAAAAAAAAAAR
ABgAAAAAAAAAEADtQX1YBwBodHRwL3Rlc3RzL2NhY2hlL1VUBQADWJ4aXHV4CwABBPUBAAAEFAAA
AFBLAQIeAwoAAAAAAOJck00AAAAAAAAAAAAAAAAcABgAAAAAAAAAEADtQchYBwBodHRwL3Rlc3Rz
L2NhY2hlL2Rpc2stY2FjaGUvVVQFAANYnhpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAi2aT
TXXUdXTHAAAA/gAAADwAGAAAAAAAAQAAAKSBHlkHAGh0dHAvdGVzdHMvY2FjaGUvZGlzay1jYWNo
ZS9yZWRpcmVjdC1jaGFpbi1saW1pdHMtc3RkZXJyLnR4dFVUBQADha8aXHV4CwABBPUBAAAEFAAA
AFBLAQIeAwoAAAAAAOBck00AAAAAAAAAAAAAAAATABgAAAAAAAAAEADtQVtaBwBodHRwL3Rlc3Rz
L2Nvb2tpZXMvVVQFAANUnhpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAA5VyTTQAAAAAAAAAA
AAAAAB0AGAAAAAAAAAAQAO1BqFoHAGh0dHAvdGVzdHMvY29va2llcy9zYW1lLXNpdGUvVVQFAANd
nhpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAiGaTTcI2z6YmAQAAaAUAAFoAGAAAAAAAAQAA
AKSB/1oHAGh0dHAvdGVzdHMvY29va2llcy9zYW1lLXNpdGUvZmV0Y2gtYWZ0ZXItbmF2aWdhdGlu
Zy1pZnJhbWUtaW4tY3Jvc3Mtb3JpZ2luLXBhZ2Utc3RkZXJyLnR4dFVUBQADf68aXHV4CwABBPUB
AAAEFAAAAFBLAQIeAxQAAgAIAIhmk01B6GCEKQEAAGgFAABTABgAAAAAAAEAAACkgblcBwBodHRw
L3Rlc3RzL2Nvb2tpZXMvc2FtZS1zaXRlL2ZldGNoLWFmdGVyLXRvcC1sZXZlbC1jcm9zcy1vcmln
aW4tcmVkaXJlY3Qtc3RkZXJyLnR4dFVUBQADgK8aXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAI
AIhmk00XL2UDJwEAAGgFAABfABgAAAAAAAEAAACkgW9eBwBodHRwL3Rlc3RzL2Nvb2tpZXMvc2Ft
ZS1zaXRlL2ZldGNoLWFmdGVyLXRvcC1sZXZlbC1uYXZpZ2F0aW9uLWZyb20tY3Jvc3Mtb3JpZ2lu
LXBhZ2Utc3RkZXJyLnR4dFVUBQADgK8aXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAIhmk03B
wDanKAEAAGgFAABzABgAAAAAAAEAAACkgS9gBwBodHRwL3Rlc3RzL2Nvb2tpZXMvc2FtZS1zaXRl
L2ZldGNoLWFmdGVyLXRvcC1sZXZlbC1uYXZpZ2F0aW9uLWluaXRpYXRlZC1mcm9tLWlmcmFtZS1p
bi1jcm9zcy1vcmlnaW4tcGFnZS1zdGRlcnIudHh0VVQFAAOArxpcdXgLAAEE9QEAAAQUAAAAUEsB
Ah4DFAACAAgAiWaTTUCeC2UpAQAAaAUAAFIAGAAAAAAAAQAAAKSBBGIHAGh0dHAvdGVzdHMvY29v
a2llcy9zYW1lLXNpdGUvZmV0Y2gtYWZ0ZXItdG9wLWxldmVsLXNhbWUtb3JpZ2luLXJlZGlyZWN0
LXN0ZGVyci50eHRVVAUAA4GvGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACACJZpNN4MiGPicB
AABoBQAATwAYAAAAAAABAAAApIG5YwcAaHR0cC90ZXN0cy9jb29raWVzL3NhbWUtc2l0ZS9mZXRj
aC1jb29raWVzLXNldC1pbi1hYm91dC1ibGFuay1pZnJhbWUtc3RkZXJyLnR4dFVUBQADga8aXHV4
CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAIlmk03bGq7DKQEAAGgFAABBABgAAAAAAAEAAACkgWll
BwBodHRwL3Rlc3RzL2Nvb2tpZXMvc2FtZS1zaXRlL2ZldGNoLWluLWFib3V0LWJsYW5rLXBhZ2Ut
c3RkZXJyLnR4dFVUBQADgq8aXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAIlmk014LDPxJwEA
AGgFAABCABgAAAAAAAEAAACkgQ1nBwBodHRwL3Rlc3RzL2Nvb2tpZXMvc2FtZS1zaXRlL2ZldGNo
LWluLWFib3V0LWJsYW5rLXBvcHVwLXN0ZGVyci50eHRVVAUAA4KvGlx1eAsAAQT1AQAABBQAAABQ
SwECHgMUAAIACACKZpNNMM4L4ikBAABoBQAARAAYAAAAAAABAAAApIGwaAcAaHR0cC90ZXN0cy9j
b29raWVzL3NhbWUtc2l0ZS9mZXRjaC1pbi1jcm9zcy1vcmlnaW4taWZyYW1lLXN0ZGVyci50eHRV
VAUAA4SvGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACACKZpNNNdjiYScBAABoBQAAQgAYAAAA
AAABAAAApIFXagcAaHR0cC90ZXN0cy9jb29raWVzL3NhbWUtc2l0ZS9mZXRjaC1pbi1jcm9zcy1v
cmlnaW4tcGFnZS1zdGRlcnIudHh0VVQFAAOErxpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgA
i2aTTZNdf8QpAQAAaAUAAEwAGAAAAAAAAQAAAKSB+msHAGh0dHAvdGVzdHMvY29va2llcy9zYW1l
LXNpdGUvZmV0Y2gtaW4tY3Jvc3Mtb3JpZ2luLXNlcnZpY2Utd29ya2VyLXN0ZGVyci50eHRVVAUA
A4WvGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACACLZpNNCQzSGikBAABoBQAARAAYAAAAAAAB
AAAApIGpbQcAaHR0cC90ZXN0cy9jb29raWVzL3NhbWUtc2l0ZS9mZXRjaC1pbi1jcm9zcy1vcmln
aW4td29ya2VyLXN0ZGVyci50eHRVVAUAA4avGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACACL
ZpNNl/aH5CcBAABoBQAAQQAYAAAAAAABAAAApIFQbwcAaHR0cC90ZXN0cy9jb29raWVzL3NhbWUt
c2l0ZS9mZXRjaC1pbi1zYW1lLW9yaWdpbi1wYWdlLXN0ZGVyci50eHRVVAUAA4avGlx1eAsAAQT1
AQAABBQAAABQSwECHgMUAAIACACMZpNN9gPquSkBAABoBQAASwAYAAAAAAABAAAApIHycAcAaHR0
cC90ZXN0cy9jb29raWVzL3NhbWUtc2l0ZS9mZXRjaC1pbi1zYW1lLW9yaWdpbi1zZXJ2aWNlLXdv
cmtlci1zdGRlcnIudHh0VVQFAAOHrxpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAjGaTTVnd
wEEnAQAAaAUAAEoAGAAAAAAAAQAAAKSBoHIHAGh0dHAvdGVzdHMvY29va2llcy9zYW1lLXNpdGUv
ZmV0Y2gtaW4tc2FtZS1vcmlnaW4tc3JjZG9jLWlmcmFtZS1zdGRlcnIudHh0VVQFAAOHrxpcdXgL
AAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAjGaTTbqHCx4nAQAAaAUAAEMAGAAAAAAAAQAAAKSBS3QH
AGh0dHAvdGVzdHMvY29va2llcy9zYW1lLXNpdGUvZmV0Y2gtaW4tc2FtZS1vcmlnaW4td29ya2Vy
LXN0ZGVyci50eHRVVAUAA4evGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACACIZpNNUOuAO2MB
AACgFQAAOQAYAAAAAAABAAAApIHvdQcAaHR0cC90ZXN0cy9jb29raWVzL3RoaXJkLXBhcnR5LWNv
b2tpZS1yZWxheGluZy1zdGRlcnIudHh0VVQFAAOArxpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAA
AAAA6FyTTQAAAAAAAAAAAAAAABIAGAAAAAAAAAAQAO1BxXcHAGh0dHAvdGVzdHMvaW1hZ2VzL1VU
BQADY54aXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAJBmk00YpNbeewAAAEQBAAAuABgAAAAA
AAEAAACkgRF4BwBodHRwL3Rlc3RzL2ltYWdlcy9oaWRwaS1zcmNzZXQtY29weS1zdGRlcnIudHh0
VVQFAAOPrxpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAAF2TTQAAAAAAAAAAAAAAABAAGAAA
AAAAAAAQAO1B9HgHAGh0dHAvdGVzdHMvbWlzYy9VVAUAA5CeGlx1eAsAAQT1AQAABBQAAABQSwEC
HgMUAAIACACoZpNNFTU1knoAAAC8AAAAKgAYAAAAAAABAAAApIE+eQcAaHR0cC90ZXN0cy9taXNj
L3hzbHQtYmFkLWltcG9ydC1zdGRlcnIudHh0VVQFAAO8rxpcdXgLAAEE9QEAAAQUAAAAUEsBAh4D
CgAAAAAA6VyTTQAAAAAAAAAAAAAAABYAGAAAAAAAAAAQAO1BHHoHAGh0dHAvdGVzdHMvbmF2aWdh
dGlvbi9VVAUAA2aeGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACACRZpNN2wjTQjsAAAA/AAAA
NwAYAAAAAAABAAAApIFsegcAaHR0cC90ZXN0cy9uYXZpZ2F0aW9uL2ZhbGxiYWNrLWFuY2hvci1y
ZWxvYWQtc3RkZXJyLnR4dFVUBQADkq8aXHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAOxck00A
AAAAAAAAAAAAAAAVABgAAAAAAAAAEADtQRh7BwBodHRwL3Rlc3RzL3F1aWNrbG9vay9VVAUAA2ye
Glx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACACUZpNN99RSvyQEAACWYAAAQQAYAAAAAAABAAAA
pIFnewcAaHR0cC90ZXN0cy9xdWlja2xvb2svc2VjdXJlLWRvY3VtZW50LXdpdGgtc3VicmVzb3Vy
Y2VzLXN0ZGVyci50eHRVVAUAA5ivGlx1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAACWZpNNAAAA
AAAAAAAAAAAAIgAYAAAAAAAAABAA7UEGgAcAaHR0cC90ZXN0cy9yZXNvdXJjZUxvYWRTdGF0aXN0
aWNzL1VUBQADm68aXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAJZmk03l0UOiBQEAAMsBAABo
ABgAAAAAAAEAAACkgWKABwBodHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvY2xhc3Np
ZnktYXMtcHJldmFsZW50LWJhc2VkLW9uLXRvcC1mcmFtZS1yZWRpcmVjdC1jb2xsdXNpb24tc3Rk
ZXJyLnR4dFVUBQADm68aXHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAA9dk00AAAAAAAAAAAAA
AABIABgAAAAAAAAAAACkgQmCBwBodHRwL3Rlc3RzL3Jlc291cmNlTG9hZFN0YXRpc3RpY3MvcmVt
b3ZlLWJsb2NraW5nLWluLXJlZGlyZWN0LWFjdHVhbC50eHRVVAUAA66eGlx1eAsAAQT1AQAABBQA
AABQSwECHgMUAAIACAAPXZNNJO+C4mEBAAC7BAAASgAYAAAAAAABAAAApIGLggcAaHR0cC90ZXN0
cy9yZXNvdXJjZUxvYWRTdGF0aXN0aWNzL3JlbW92ZS1ibG9ja2luZy1pbi1yZWRpcmVjdC1leHBl
Y3RlZC50eHRVVAUAA66eGlx1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAAAbXZNNAAAAAAAAAAAA
AAAAFAAYAAAAAAAAABAA7UFwhAcAaHR0cC90ZXN0cy9zZWN1cml0eS9VVAUAA8aeGlx1eAsAAQT1
AQAABBQAAABQSwECHgMKAAAAAADxXJNNAAAAAAAAAAAAAAAAHgAYAAAAAAAAABAA7UG+hAcAaHR0
cC90ZXN0cy9zZWN1cml0eS9jbGlwYm9hcmQvVVQFAAN2nhpcdXgLAAEE9QEAAAQUAAAAUEsBAh4D
FAACAAgA71yTTf6xfuBiAAAAawAAAFUAGAAAAAAAAQAAAKSBFoUHAGh0dHAvdGVzdHMvc2VjdXJp
dHkvY2xpcGJvYXJkL2NvcHktcGFzdGUtaHRtbC1hY3Jvc3Mtb3JpZ2luLXNhbml0aXplcy1odG1s
LXN0ZGVyci50eHRVVAUAA3KeGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACACXZpNNVFaizWQA
AABsAAAAVgAYAAAAAAABAAAApIEHhgcAaHR0cC90ZXN0cy9zZWN1cml0eS9jbGlwYm9hcmQvY29w
eS1wYXN0ZS1odG1sLWFjcm9zcy1vcmlnaW4tc3RyaXBzLW1zby1saXN0LXN0ZGVyci50eHRVVAUA
A52vGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACACXZpNNEtHYD2QAAABsAAAAWgAYAAAAAAAB
AAAApIH7hgcAaHR0cC90ZXN0cy9zZWN1cml0eS9jbGlwYm9hcmQvY29weS1wYXN0ZS1odG1sLWNy
b3NzLW9yaWdpbi1pZnJhbWUtYWNyb3NzLW9yaWdpbi1zdGRlcnIudHh0VVQFAAOerxpcdXgLAAEE
9QEAAAQUAAAAUEsBAh4DFAACAAgAmGaTTcggVBVkAAAAbAAAAFsAGAAAAAAAAQAAAKSB84cHAGh0
dHAvdGVzdHMvc2VjdXJpdHkvY2xpcGJvYXJkL2NvcHktcGFzdGUtaHRtbC1jcm9zcy1vcmlnaW4t
aWZyYW1lLWluLXNhbWUtb3JpZ2luLXN0ZGVyci50eHRVVAUAA5+vGlx1eAsAAQT1AQAABBQAAABQ
SwECHgMUAAIACACYZpNNLbIlZGQAAABsAAAAUwAYAAAAAAABAAAApIHsiAcAaHR0cC90ZXN0cy9z
ZWN1cml0eS9jbGlwYm9hcmQvY29weS1wYXN0ZS11cmwtYWNyb3NzLW9yaWdpbi1zYW5pdGl6ZXMt
dXJsLXN0ZGVyci50eHRVVAUAA5+vGlx1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAAACXZNNAAAA
AAAAAAAAAAAAKgAYAAAAAAAAABAA7UHdiQcAaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2Vj
dXJpdHlQb2xpY3kvVVQFAAOUnhpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAA8VyTTQAAAAAA
AAAAAAAAAEIAGAAAAAAAAAAQAO1BQYoHAGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3Vy
aXR5UG9saWN5L2Jsb2NrLWFsbC1taXhlZC1jb250ZW50L1VUBQADdZ4aXHV4CwABBPUBAAAEFAAA
AFBLAQIeAxQAAgAIAJhmk02svBt8jAAAALEAAABnABgAAAAAAAEAAACkgb2KBwBodHRwL3Rlc3Rz
L3NlY3VyaXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS9ibG9jay1hbGwtbWl4ZWQtY29udGVudC9p
bnNlY3VyZS1jc3MtaW4tbWFpbi1mcmFtZS1zdGRlcnIudHh0VVQFAAOgrxpcdXgLAAEE9QEAAAQU
AAAAUEsBAh4DCgAAAAAA81yTTQAAAAAAAAAAAAAAAEQAGAAAAAAAAAAQAO1B6osHAGh0dHAvdGVz
dHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3VwZ3JhZGUtaW5zZWN1cmUtcmVxdWVz
dHMvVVQFAAN6nhpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAmmaTTfyq4XWNAAAAnQAAAH4A
GAAAAAAAAQAAAKSBaIwHAGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5
L3VwZ3JhZGUtaW5zZWN1cmUtcmVxdWVzdHMvdXBncmFkZS1yZWRpcmVjdC1odHRwcy10by1odHRw
LXNjcmlwdC1pbi1pZnJhbWUtc3RkZXJyLnR4dFVUBQADpK8aXHV4CwABBPUBAAAEFAAAAFBLAQIe
AxQAAgAIAKtmk01jqqxsggAAAKgAAABAABgAAAAAAAEAAACkga2NBwBodHRwL3Rlc3RzL3NlY3Vy
aXR5L2NvbnRlbnRTZWN1cml0eVBvbGljeS94c2wtYWxsb3dlZC1zdGRlcnIudHh0VVQFAAPCrxpc
dXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgArGaTTWOqrGyCAAAAqAAAAFIAGAAAAAAAAQAAAKSB
qY4HAGh0dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3hzbC11bmFmZmVj
dGVkLWJ5LXN0eWxlLXNyYy0yLXN0ZGVyci50eHRVVAUAA8OvGlx1eAsAAQT1AQAABBQAAABQSwEC
HgMUAAIACACgZpNNXuvx2s0AAAAqAgAAQgAYAAAAAAABAAAApIG3jwcAaHR0cC90ZXN0cy9zZWN1
cml0eS9jcm9zcy1vcmlnaW4tY2FjaGVkLWltYWdlcy1wYXJhbGxlbC1zdGRlcnIudHh0VVQFAAOs
rxpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgACAAAAp2aTTXZvmFJFAAAARQAAAE8AGAAAAAAAAQAA
AKSBAJEHAGh0dHAvdGVzdHMvc2VjdXJpdHkvZnJhbWUtbG9hZGluZy12aWEtZG9jdW1lbnQtd3Jp
dGUtYXN5bmMtZGVsZWdhdGVzLXN0ZGVyci50eHRVVAUAA7mvGlx1eAsAAQT1AQAABBQAAABQSwEC
HgMKAAIAAACnZpNNbrPyc0YAAABGAAAAPwAYAAAAAAABAAAApIHOkQcAaHR0cC90ZXN0cy9zZWN1
cml0eS9mcmFtZS1sb2FkaW5nLXZpYS1kb2N1bWVudC13cml0ZS1zdGRlcnIudHh0VVQFAAO5rxpc
dXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAtmaTTcq0CVwiAAAAOgAAAE8AGAAAAAAAAQAAAKSB
jZIHAGh0dHAvdGVzdHMvc2VjdXJpdHkvd2ViYXVkaW8tcmVuZGVyLXJlbW90ZS1hdWRpby1hbGxv
d2VkLWNyb3Nzb3JpZ2luLXN0ZGVyci50eHRVVAUAA9evGlx1eAsAAQT1AQAABBQAAABQSwECHgMU
AAIACAC3ZpNNyrQJXCIAAAA6AAAAUgAYAAAAAAABAAAApIE4kwcAaHR0cC90ZXN0cy9zZWN1cml0
eS93ZWJhdWRpby1yZW5kZXItcmVtb3RlLWF1ZGlvLWJsb2NrZWQtbm8tY3Jvc3NvcmlnaW4tc3Rk
ZXJyLnR4dFVUBQAD2a8aXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAL1mk01gS2YQkQAAAPsB
AABFABgAAAAAAAEAAACkgeaTBwBodHRwL3Rlc3RzL3NlY3VyaXR5L3hzcy1ERU5JRUQteHNsLWRv
Y3VtZW50LXNlY3VyaXR5T3JpZ2luLXN0ZGVyci50eHRVVAUAA+avGlx1eAsAAQT1AQAABBQAAABQ
SwECHgMKAAAAAAAxXZNNAAAAAAAAAAAAAAAAGgAYAAAAAAAAABAA7UH2lAcAaHR0cC90ZXN0cy94
bWxodHRwcmVxdWVzdC9VVAUAA+6eGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACACrZpNNkeP5
pRcBAAC0AgAATgAYAAAAAAABAAAApIFKlQcAaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9hY2Nl
c3MtY29udHJvbC1wcmVmbGlnaHQtY3JlZGVudGlhbC1hc3luYy1zdGRlcnIudHh0VVQFAAPBrxpc
dXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAq2aTTevpWfgnAQAAaAUAAE0AGAAAAAAAAQAAAKSB
6ZYHAGh0dHAvdGVzdHMveG1saHR0cHJlcXVlc3QvYWNjZXNzLWNvbnRyb2wtcHJlZmxpZ2h0LWNy
ZWRlbnRpYWwtc3luYy1zdGRlcnIudHh0VVQFAAPBrxpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAAC
AAgAq2aTTV8t4SQXAQAAtAIAAEsAGAAAAAAAAQAAAKSBl5gHAGh0dHAvdGVzdHMveG1saHR0cHJl
cXVlc3QvYWNjZXNzLWNvbnRyb2wtcHJlZmxpZ2h0LWhlYWRlcnMtYXN5bmMtc3RkZXJyLnR4dFVU
BQADwa8aXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAK5mk00Oa9j2BgEAAFoBAABAABgAAAAA
AAEAAACkgTOaBwBodHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L2Nyb3NzLW9yaWdpbi1jb29raWUt
c3RvcmFnZS1zdGRlcnIudHh0VVQFAAPHrxpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgArmaT
TUnVPq8GAQAAWgEAAEYAGAAAAAAAAQAAAKSBs5sHAGh0dHAvdGVzdHMveG1saHR0cHJlcXVlc3Qv
Y3Jvc3Mtb3JpZ2luLW5vLWNyZWRlbnRpYWwtcHJvbXB0LXN0ZGVyci50eHRVVAUAA8evGlx1eAsA
AQT1AQAABBQAAABQSwECHgMUAAIACADUZpNNx2YObuQAAACTAQAARgAYAAAAAAABAAAApIE5nQcA
aHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9yZWRpcmVjdC1jcm9zcy1vcmlnaW4tc3luYy1kb3Vi
bGUtc3RkZXJyLnR4dFVUBQADELAaXHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAAxdk00AAAAA
AAAAAAAAAAAJABgAAAAAAAAAEADtQZ2eBwBodHRwL3dwdC9VVAUAA6eeGlx1eAsAAQT1AQAABBQA
AABQSwECHgMKAAAAAAAFXZNNAAAAAAAAAAAAAAAAEAAYAAAAAAAAABAA7UHgngcAaHR0cC93cHQv
YmVhY29uL1VUBQADmZ4aXHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAApdk00AAAAAAAAAAAAA
AAAVABgAAAAAAAAAEADtQSqfBwBodHRwL3dwdC9iZWFjb24vY29ycy9VVAUAA6SeGlx1eAsAAQT1
AQAABBQAAABQSwECHgMUAAIACACtZpNNqvYrjwUBAABaAQAANQAYAAAAAAABAAAApIF5nwcAaHR0
cC93cHQvYmVhY29uL2NvcnMvY29ycy1wcmVmbGlnaHQtY29va2llLXN0ZGVyci50eHRVVAUAA8Wv
Glx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACACuZpNNNk45FwYBAABaAQAAPwAYAAAAAAABAAAA
pIHtoAcAaHR0cC93cHQvYmVhY29uL2NvcnMvY29ycy1wcmVmbGlnaHQtcmVkaXJlY3QtZmFpbHVy
ZS1zdGRlcnIudHh0VVQFAAPHrxpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAsGaTTVKKbvBa
AQAANgMAADUAGAAAAAAAAQAAAKSBbKIHAGh0dHAvd3B0L2JlYWNvbi9jb3JzL2NvcnMtcmVkaXJl
Y3QtZmFpbHVyZS1zdGRlcnIudHh0VVQFAAPLrxpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAA
Dl2TTQAAAAAAAAAAAAAAABcAGAAAAAAAAAAQAO1BNaQHAGh0dHAvd3B0L21lZGlhcmVjb3JkZXIv
VVQFAAOsnhpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAr2aTTcq0CVwiAAAAOgAAAEwAGAAA
AAAAAQAAAKSBhqQHAGh0dHAvd3B0L21lZGlhcmVjb3JkZXIvTWVkaWFSZWNvcmRlci1BVi1hdWRp
by12aWRlby1kYXRhYXZhaWxhYmxlLXN0ZGVyci50eHRVVAUAA8mvGlx1eAsAAQT1AQAABBQAAABQ
SwECHgMUAAIACACvZpNNJC7ImSIAAAB0AAAAPQAYAAAAAAABAAAApIEupQcAaHR0cC93cHQvbWVk
aWFyZWNvcmRlci9NZWRpYVJlY29yZGVyLWRhdGFhdmFpbGFibGUtc3RkZXJyLnR4dFVUBQADyq8a
XHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIALBmk00kLsiZIgAAAHQAAABCABgAAAAAAAEAAACk
gcelBwBodHRwL3dwdC9tZWRpYXJlY29yZGVyL01lZGlhUmVjb3JkZXItbW9jay1kYXRhYXZhaWxh
YmxlLXN0ZGVyci50eHRVVAUAA8uvGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACACwZpNNyrQJ
XCIAAAA6AAAAPQAYAAAAAAABAAAApIFlpgcAaHR0cC93cHQvbWVkaWFyZWNvcmRlci9NZWRpYVJl
Y29yZGVyLW9ucmVtb3ZldHJhY2stc3RkZXJyLnR4dFVUBQADzK8aXHV4CwABBPUBAAAEFAAAAFBL
AQIeAxQAAgAIAKFlk03w9dW1ogUAAE0QAAAKABgAAAAAAAEAAACkgf6mBwBodHRwZC5jb25mVVQF
AAPOrRpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAR12TTQAAAAAAAAAAAAAAAAkAGAAAAAAA
AAAQAO1B5KwHAGltcG9ydGVkL1VUBQADFp8aXHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAEdd
k00AAAAAAAAAAAAAAAANABgAAAAAAAAAEADtQSetBwBpbXBvcnRlZC93M2MvVVQFAAMWnxpcdXgL
AAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAJl6TTQAAAAAAAAAAAAAAACAAGAAAAAAAAAAQAO1Bbq0H
AGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvVVQFAAO3oBpcdXgLAAEE9QEAAAQUAAAA
UEsBAh4DCgAAAAAAR12TTQAAAAAAAAAAAAAAAC0AGAAAAAAAAAAQAO1ByK0HAGltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvV2ViQ3J5cHRvQVBJL1VUBQADFp8aXHV4CwABBPUBAAAEFAAA
AFBLAQIeAwoAAAAAAE5dk00AAAAAAAAAAAAAAAA5ABgAAAAAAAAAEADtQS+uBwBpbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL1dlYkNyeXB0b0FQSS9nZW5lcmF0ZUtleS9VVAUAAyOfGlx1
eAsAAQT1AQAABBQAAABQSwECHgMUAAIACADsZpNNjzQacEQAAACgCQAAXwAYAAAAAAABAAAApIGi
rgcAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9XZWJDcnlwdG9BUEkvZ2VuZXJhdGVL
ZXkvZmFpbHVyZXNfUlNBLU9BRVAuaHR0cHMuYW55LXN0ZGVyci50eHRVVAUAAzuwGlx1eAsAAQT1
AQAABBQAAABQSwECHgMUAAIACADtZpNNjzQacEQAAACgCQAAZgAYAAAAAAABAAAApIF/rwcAaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9XZWJDcnlwdG9BUEkvZ2VuZXJhdGVLZXkvZmFp
bHVyZXNfUlNBLU9BRVAuaHR0cHMuYW55Lndvcmtlci1zdGRlcnIudHh0VVQFAAM9sBpcdXgLAAEE
9QEAAAQUAAAAUEsBAh4DFAACAAgA7maTTVQCybI2AAAAwAIAAF4AGAAAAAAAAQAAAKSBY7AHAGlt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvV2ViQ3J5cHRvQVBJL2dlbmVyYXRlS2V5L2Zh
aWx1cmVzX1JTQS1QU1MuaHR0cHMuYW55LXN0ZGVyci50eHRVVAUAAz+wGlx1eAsAAQT1AQAABBQA
AABQSwECHgMUAAIACADvZpNNVALJsjYAAADAAgAAZQAYAAAAAAABAAAApIExsQcAaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9XZWJDcnlwdG9BUEkvZ2VuZXJhdGVLZXkvZmFpbHVyZXNf
UlNBLVBTUy5odHRwcy5hbnkud29ya2VyLXN0ZGVyci50eHRVVAUAA0GwGlx1eAsAAQT1AQAABBQA
AABQSwECHgMUAAIACADwZpNNVALJsjYAAADAAgAAaAAYAAAAAAABAAAApIEGsgcAaW1wb3J0ZWQv
dzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9XZWJDcnlwdG9BUEkvZ2VuZXJhdGVLZXkvZmFpbHVyZXNf
UlNBU1NBLVBLQ1MxLXYxXzUuaHR0cHMuYW55LXN0ZGVyci50eHRVVAUAA0OwGlx1eAsAAQT1AQAA
BBQAAABQSwECHgMUAAIACADxZpNNVALJsjYAAADAAgAAbwAYAAAAAAABAAAApIHesgcAaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9XZWJDcnlwdG9BUEkvZ2VuZXJhdGVLZXkvZmFpbHVy
ZXNfUlNBU1NBLVBLQ1MxLXYxXzUuaHR0cHMuYW55Lndvcmtlci1zdGRlcnIudHh0VVQFAANFsBpc
dXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAnV2TTQAAAAAAAAAAAAAAACYAGAAAAAAAAAAQAO1B
vbMHAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvVVQFAAO5nxpcdXgLAAEE
9QEAAAQUAAAAUEsBAh4DCgAAAAAAmV2TTQAAAAAAAAAAAAAAACoAGAAAAAAAAAAQAO1BHbQHAGlt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvYXBpL1VUBQADsZ8aXHV4CwABBPUB
AAAEFAAAAFBLAQIeAwoAAAAAAJpdk00AAAAAAAAAAAAAAAAwABgAAAAAAAAAEADtQYG0BwBpbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZldGNoL2FwaS9iYXNpYy9VVAUAA7OfGlx1eAsA
AQT1AQAABBQAAABQSwECHgMUAAIACAA3Z5NN9UpoHTABAAAaDwAATwAYAAAAAAABAAAApIHrtAcA
aW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9mZXRjaC9hcGkvYmFzaWMvYmxvY2stbWlt
ZS1hcy1zY3JpcHQtc3RkZXJyLnR4dFVUBQADybAaXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAI
ADxnk029F8vxGQEAAFsEAABPABgAAAAAAAEAAACkgaS2BwBpbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL2ZldGNoL2FwaS9iYXNpYy9tb2RlLXNhbWUtb3JpZ2luLmFueS1zdGRlcnIudHh0
VVQFAAPTsBpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAQGeTTfr8B2eqAAAA8wMAAEsAGAAA
AAAAAQAAAKSBRrgHAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvYXBpL2Jh
c2ljL3NjaGVtZS1hYm91dC5hbnktc3RkZXJyLnR4dFVUBQAD17AaXHV4CwABBPUBAAAEFAAAAFBL
AQIeAwoAAAAAAJ1dk00AAAAAAAAAAAAAAAAvABgAAAAAAAAAEADtQXW5BwBpbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL2ZldGNoL2FwaS9jb3JzL1VUBQADup8aXHV4CwABBPUBAAAEFAAA
AFBLAQIeAxQAAgAIADtnk00LAykSEgIAAHMLAABJABgAAAAAAAEAAACkgd65BwBpbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZldGNoL2FwaS9jb3JzL2NvcnMtb3JpZ2luLmFueS1zdGRl
cnIudHh0VVQFAAPSsBpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAQGeTTVPjqPP7AgAAMBYA
AFMAGAAAAAAAAQAAAKSBc7wHAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gv
YXBpL2NvcnMvY29ycy1wcmVmbGlnaHQtc3RhdHVzLmFueS1zdGRlcnIudHh0VVQFAAPYsBpcdXgL
AAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAQWeTTe2WTeKxAQAAIAcAAEwAGAAAAAAAAQAAAKSB+78H
AGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvYXBpL2NvcnMvY29ycy1wcmVm
bGlnaHQuYW55LXN0ZGVyci50eHRVVAUAA9qwGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABD
Z5NNSlB96OgCAABxFgAAVQAYAAAAAAABAAAApIEywgcAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9mZXRjaC9hcGkvY29ycy9jb3JzLXJlZGlyZWN0LXByZWZsaWdodC5hbnktc3RkZXJy
LnR4dFVUBQAD3bAaXHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAJpdk00AAAAAAAAAAAAAAAAz
ABgAAAAAAAAAEADtQanFBwBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZldGNoL2Fw
aS9yZWRpcmVjdC9VVAUAA7SfGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAA7Z5NNFi0Ac9MA
AAA2BgAASwAYAAAAAAABAAAApIEWxgcAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9m
ZXRjaC9hcGkvcmVkaXJlY3QvcmVkaXJlY3QtbW9kZS1zdGRlcnIudHh0VVQFAAPSsBpcdXgLAAEE
9QEAAAQUAAAAUEsBAh4DFAACAAgAO2eTTUbFruWZAAAAFgMAAFIAGAAAAAAAAQAAAKSBbscHAGlt
cG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvYXBpL3JlZGlyZWN0L3JlZGlyZWN0
LW1vZGUtd29ya2VyLXN0ZGVyci50eHRVVAUAA9GwGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIA
CAA9Z5NN/JWDJ3UBAAANBQAAUQAYAAAAAAABAAAApIGTyAcAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9mZXRjaC9hcGkvcmVkaXJlY3QvcmVkaXJlY3QtdG8tZGF0YXVybC1zdGRlcnIu
dHh0VVQFAAPWsBpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAnV2TTQAAAAAAAAAAAAAAAC4A
GAAAAAAAAAAQAO1Bk8oHAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvbm9z
bmlmZi9VVAUAA7mfGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABCZ5NNE0yuu6cAAACaAQAA
SAAYAAAAAAABAAAApIH7ygcAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9mZXRjaC9u
b3NuaWZmL3BhcnNpbmctbm9zbmlmZi1zdGRlcnIudHh0VVQFAAPbsBpcdXgLAAEE9QEAAAQUAAAA
UEsBAh4DFAACAAgAQmeTTTQXg0i+AAAArgQAAD8AGAAAAAAAAQAAAKSBJMwHAGltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvZmV0Y2gvbm9zbmlmZi9zY3JpcHQtc3RkZXJyLnR4dFVUBQAD
27AaXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAEJnk03oTRSl0wAAABQJAABDABgAAAAAAAEA
AACkgVvNBwBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ZldGNoL25vc25pZmYvc3R5
bGVzaGVldC1zdGRlcnIudHh0VVQFAAPbsBpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAA2V2T
TQAAAAAAAAAAAAAAACUAGAAAAAAAAAAQAO1Bq84HAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0t
dGVzdHMvaHRtbC9VVAUAAyqgGlx1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAACuXZNNAAAAAAAA
AAAAAAAALgAYAAAAAAAAABAA7UEKzwcAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9o
dG1sL2Jyb3dzZXJzL1VUBQAD158aXHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAK5dk00AAAAA
AAAAAAAAAAA2ABgAAAAAAAAAEADtQXLPBwBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L2h0bWwvYnJvd3NlcnMvaGlzdG9yeS9VVAUAA9efGlx1eAsAAQT1AQAABBQAAABQSwECHgMKAAAA
AACuXZNNAAAAAAAAAAAAAAAATQAYAAAAAAAAABAA7UHizwcAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL2Jyb3dzZXJzL2hpc3RvcnkvdGhlLWxvY2F0aW9uLWludGVyZmFjZS9V
VAUAA9ifGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABSZ5NNOf5Iz04AAAB/AAAAewAYAAAA
AAABAAAApIFp0AcAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Jyb3dzZXJz
L2hpc3RvcnkvdGhlLWxvY2F0aW9uLWludGVyZmFjZS9sb2NhdGlvbi1wcm90b2NvbC1zZXR0ZXIt
bm9uLWJyb2tlbi1zdGRlcnIudHh0VVQFAAP7sBpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgACAAAA
UmeTTSDAbBxAAAAAQAAAAIEAGAAAAAAAAQAAAKSBbNEHAGltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvaHRtbC9icm93c2Vycy9oaXN0b3J5L3RoZS1sb2NhdGlvbi1pbnRlcmZhY2UvbG9j
YXRpb24tcHJvdG9jb2wtc2V0dGVyLW5vbi1icm9rZW4td2VpcmQtc3RkZXJyLnR4dFVUBQAD+7Aa
XHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAG1nk00AAAAAAAAAAAAAAAAvABgAAAAAAAAAEADt
QWfSBwBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL1VUBQAD
LbEaXHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAANldk00AAAAAAAAAAAAAAABAABgAAAAAAAAA
EADtQdDSBwBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2Vt
YmVkZGVkLWNvbnRlbnQvVVQFAAMqoBpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAA2V2TTQAA
AAAAAAAAAAAAAFMAGAAAAAAAAAAQAO1BStMHAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvaHRtbC9zZW1hbnRpY3MvZW1iZWRkZWQtY29udGVudC90aGUtaWZyYW1lLWVsZW1lbnQvVVQF
AAMqoBpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAfGeTTXW8qaJOAQAAwgIAAHwAGAAAAAAA
AQAAAKSB19MHAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3Mv
ZW1iZWRkZWQtY29udGVudC90aGUtaWZyYW1lLWVsZW1lbnQvc2FuZGJveC1hc2NpaS1jYXNlLWlu
c2Vuc2l0aXZlLXN0ZGVyci50eHRVVAUAA0uxGlx1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAABt
Z5NNAAAAAAAAAAAAAAAANQAYAAAAAAAAABAA7UHb1QcAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9odG1sL3NlbWFudGljcy9mb3Jtcy9VVAUAAy2xGlx1eAsAAQT1AQAABBQAAABQSwEC
HgMKAAAAAABtZ5NNAAAAAAAAAAAAAAAAQQAYAAAAAAAAABAA7UFK1gcAaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9mb3Jtcy9jb25zdHJhaW50cy9VVAUAAy2x
Glx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABtZ5NNTmgu1ycBAAA4EwAAZAAYAAAAAAABAAAA
pIHF1gcAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9mb3Jt
cy9jb25zdHJhaW50cy9mb3JtLXZhbGlkYXRpb24tdmFsaWRhdGUtc3RkZXJyLnR4dFVUBQADLbEa
XHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAPBdk00AAAAAAAAAAAAAAAA0ABgAAAAAAAAAEADt
QYrYBwBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL21lZGlhY2FwdHVyZS1yZWNvcmQv
VVQFAANUoBpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAE2iTTcq0CVwiAAAAOgAAAFIAGAAA
AAAAAQAAAKSB+NgHAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvbWVkaWFjYXB0dXJl
LXJlY29yZC9NZWRpYVJlY29yZGVyLWVycm9yLXN0ZGVyci50eHRVVAUAA3axGlx1eAsAAQT1AQAA
BBQAAABQSwECHgMKAAAAAAD2XZNNAAAAAAAAAAAAAAAANQAYAAAAAAAAABAA7UGm2QcAaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9tZWRpYWNhcHR1cmUtc3RyZWFtcy9VVAUAA1+gGlx1
eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAZaJNNyrQJXCIAAAA6AAAAfQAYAAAAAAABAAAApIEV
2gcAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9tZWRpYWNhcHR1cmUtc3RyZWFtcy9N
ZWRpYVN0cmVhbVRyYWNrLU1lZGlhRWxlbWVudC1kaXNhYmxlZC1hdWRpby1pcy1zaWxlbmNlLmh0
dHBzLXN0ZGVyci50eHRVVAUAA4KxGlx1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAADxXZNNAAAA
AAAAAAAAAAAAMQAYAAAAAAAAABAA7UHu2gcAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9tc3QtY29udGVudC1oaW50L1VUBQADVaAaXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIABNo
k03QmBFjIgAAAOgAAABYABgAAAAAAAEAAACkgVnbBwBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL21zdC1jb250ZW50LWhpbnQvTWVkaWFTdHJlYW1UcmFjay1jb250ZW50SGludC1zdGRl
cnIudHh0VVQFAAN2sRpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAGl6TTQAAAAAAAAAAAAAA
ADAAGAAAAAAAAAAQAO1BDdwHAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL1VUBQADpKAaXHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAFBjk00AAAAAAAAA
AAAAAAA/ABgAAAAAAAAAEADtQXfcBwBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9VVAUAA3ipGlx1eAsAAQT1AQAABBQAAABQSwEC
HgMUAAIACAAbY5NNPwyJQZYBAADPBQAAZgAYAAAAAAABAAAApIHw3AcAaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvY2xpZW50cy1t
YXRjaGFsbC1vcmRlci5odHRwcy1hY3R1YWwudHh0VVQFAAMWqRpcdXgLAAEE9QEAAAQUAAAAUEsB
Ah4DFAACAAgAG2OTTfEEaFMRAgAA1wcAAGQAGAAAAAAAAQAAAKSBJt8HAGltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2NsaWVudHMt
bWF0Y2hhbGwtb3JkZXIuaHR0cHMtZGlmZi50eHRVVAUAAxapGlx1eAsAAQT1AQAABBQAAABQSwEC
HgMUAAIACAAbY5NNNB0S6RgBAADQBAAAaAAYAAAAAAABAAAApIHV4QcAaW1wb3J0ZWQvdzNjL3dl
Yi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvY2xpZW50cy1t
YXRjaGFsbC1vcmRlci5odHRwcy1leHBlY3RlZC50eHRVVAUAAxapGlx1eAsAAQT1AQAABBQAAABQ
SwECHgMUAAIACAAcY5NNIOoCJnAJAAD8IgAAbAAYAAAAAAABAAAApIGP4wcAaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvY2xpZW50
cy1tYXRjaGFsbC1vcmRlci5odHRwcy1wcmV0dHktZGlmZi5odG1sVVQFAAMXqRpcdXgLAAEE9QEA
AAQUAAAAUEsBAh4DFAACAAgAG2OTTavceP2QAAAAnQAAAGYAGAAAAAAAAQAAAKSBpe0HAGltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2Vy
L2NsaWVudHMtbWF0Y2hhbGwtb3JkZXIuaHR0cHMtc3RkZXJyLnR4dFVUBQADFqkaXHV4CwABBPUB
AAAEFAAAAFBLAQIeAxQAAgAIAD1ok00/iY4FjwAAAJ0AAAB9ABgAAAAAAAEAAACkgdXuBwBpbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtl
ci9mZXRjaC1ldmVudC1yZXNwb25kLXdpdGgtYm9keS1sb2FkZWQtaW4tY2h1bmsuaHR0cHMtc3Rk
ZXJyLnR4dFVUBQADxbEaXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAE5ok03sKJt27QAAAL8C
AABkABgAAAAAAAEAAACkgRvwBwBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3NlcnZp
Y2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9mZXRjaC1mcmFtZS1yZXNvdXJjZS5odHRwcy1zdGRl
cnIudHh0VVQFAAPksRpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAUWiTTYUc/kC2AAAAYgQA
AGgAGAAAAAAAAQAAAKSBpvEHAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vydmlj
ZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLXJlcXVlc3QtY3NzLWltYWdlcy5odHRwcy1z
dGRlcnIudHh0VVQFAAPpsRpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAUmiTTbqbDwtvAQAA
fSoAAGcAGAAAAAAAAQAAAKSB/vIHAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvc2Vy
dmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL2ZldGNoLXJlcXVlc3QtcmVzb3VyY2VzLmh0dHBz
LXN0ZGVyci50eHRVVAUAA+yxGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABUaJNNTU6LkCAC
AACbMgAAZAAYAAAAAAABAAAApIEO9QcAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvZmV0Y2gtcmVzcG9uc2UtdGFpbnQuaHR0cHMt
c3RkZXJyLnR4dFVUBQAD77EaXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAFBjk039NwcKWAAA
AKwAAABmABgAAAAAAAEAAACkgcz3BwBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWdpc3Rlci1jbG9zZWQtd2luZG93Lmh0dHBz
LWFjdHVhbC50eHRVVAUAA3epGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABQY5NN/q4yPiQB
AACIAgAAZAAYAAAAAAABAAAApIHE+AcAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9z
ZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVnaXN0ZXItY2xvc2VkLXdpbmRvdy5odHRw
cy1kaWZmLnR4dFVUBQADd6kaXHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAgAAAFBjk00nYz/oSgAA
AEoAAABoABgAAAAAAAEAAACkgYb6BwBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3Nl
cnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWdpc3Rlci1jbG9zZWQtd2luZG93Lmh0dHBz
LWV4cGVjdGVkLnR4dFVUBQADd6kaXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAFBjk01PWDbH
AAgAAKQbAABsABgAAAAAAAEAAACkgXL7BwBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3NlcnZpY2Utd29ya2Vycy9zZXJ2aWNlLXdvcmtlci9yZWdpc3Rlci1jbG9zZWQtd2luZG93Lmh0
dHBzLXByZXR0eS1kaWZmLmh0bWxVVAUAA3ipGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABn
aJNNmWfP9XsAAACLAAAAZgAYAAAAAAABAAAApIEYBAgAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9y
bS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvcmVnaXN0ZXItY2xvc2VkLXdp
bmRvdy5odHRwcy1zdGRlcnIudHh0VVQFAAMRshpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgA
b2iTTebkMc6vAAAAdAEAAGsAGAAAAAAAAQAAAKSBMwUIAGltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3JlZ2lzdHJhdGlvbi1zZWN1
cml0eS1lcnJvci5odHRwcy1zdGRlcnIudHh0VVQFAAMhshpcdXgLAAEE9QEAAAQUAAAAUEsBAh4D
FAACAAgAamOTTdz8dUmRAAAAnQAAAGQAGAAAAAAAAQAAAKSBhwYIAGltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMvc2VydmljZS13b3JrZXJzL3NlcnZpY2Utd29ya2VyL3VwZGF0ZS1vbi1u
YXZpZ2F0aW9uLmh0dHBzLXN0ZGVyci50eHRVVAUAA6epGlx1eAsAAQT1AQAABBQAAABQSwECHgMU
AAIACACEaJNN9aGyeXIAAAB0AAAAawAYAAAAAAABAAAApIG2BwgAaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9zZXJ2aWNlLXdvcmtlcnMvc2VydmljZS13b3JrZXIvd2Vic29ja2V0LWlu
LXNlcnZpY2Utd29ya2VyLmh0dHBzLXN0ZGVyci50eHRVVAUAA0iyGlx1eAsAAQT1AQAABBQAAABQ
SwECHgMKAAAAAAAOXpNNAAAAAAAAAAAAAAAAKAAYAAAAAAAAABAA7UHNCAgAaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9zdHJlYW1zL1VUBQADjKAaXHV4CwABBPUBAAAEFAAAAFBLAQIe
AwoAAAAAAA5ek00AAAAAAAAAAAAAAAA5ABgAAAAAAAAAEADtQS8JCABpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3N0cmVhbXMvcmVhZGFibGUtc3RyZWFtcy9VVAUAA4ygGlx1eAsAAQT1
AQAABBQAAABQSwECHgMUAAIACAAOXpNNhFrL9D4AAAD4AAAARwAYAAAAAAABAAAApIGiCQgAaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zdHJlYW1zL3JlYWRhYmxlLXN0cmVhbXMvdGVl
LXN0ZGVyci50eHRVVAUAA4ygGlx1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAAANXpNNAAAAAAAA
AAAAAAAAKQAYAAAAAAAAABAA7UFhCggAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93
ZWJhdWRpby9VVAUAA4qgGlx1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAAATXpNNAAAAAAAAAAAA
AAAANwAYAAAAAAAAABAA7UHECggAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJh
dWRpby90aGUtYXVkaW8tYXBpL1VUBQADlqAaXHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAABte
k00AAAAAAAAAAAAAAABSABgAAAAAAAAAEADtQTULCABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWFuYWx5c2Vybm9kZS1pbnRlcmZhY2Uv
VVQFAAOloBpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAMGiTTcq0CVwiAAAAOgAAAHIAGAAA
AAAAAQAAAKSBwQsIAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhl
LWF1ZGlvLWFwaS90aGUtYW5hbHlzZXJub2RlLWludGVyZmFjZS90ZXN0LWFuYWx5c2VyLW1pbmlt
dW0tc3RkZXJyLnR4dFVUBQADrLEaXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAEBok03KtAlc
IgAAADoAAABxABgAAAAAAAEAAACkgY8MCABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3Rz
L3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWFuYWx5c2Vybm9kZS1pbnRlcmZhY2UvdGVzdC1h
bmFseXNlci1vdXRwdXQtc3RkZXJyLnR4dFVUBQADx7EaXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQA
AgAIAEBok03KtAlcIgAAADoAAABwABgAAAAAAAEAAACkgVwNCABpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWFuYWx5c2Vybm9kZS1pbnRl
cmZhY2UvdGVzdC1hbmFseXNlci1zY2FsZS1zdGRlcnIudHh0VVQFAAPIsRpcdXgLAAEE9QEAAAQU
AAAAUEsBAh4DFAACAAgAQGiTTcq0CVwiAAAAOgAAAG4AGAAAAAAAAQAAAKSBKA4IAGltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYW5hbHlz
ZXJub2RlLWludGVyZmFjZS90ZXN0LWFuYWx5c2Vybm9kZS1zdGRlcnIudHh0VVQFAAPIsRpcdXgL
AAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAADl6TTQAAAAAAAAAAAAAAAFAAGAAAAAAAAAAQAO1B8g4I
AGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90
aGUtYXVkaW9wYXJhbS1pbnRlcmZhY2UvVVQFAAOMoBpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAAC
AAgAMWiTTcq0CVwiAAAAOgAAAGMAGAAAAAAAAQAAAKSBfA8IAGltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtYXVkaW9wYXJhbS1pbnRlcmZh
Y2UvaWRsLXRlc3Qtc3RkZXJyLnR4dFVUBQADrrEaXHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAA
ABFek00AAAAAAAAAAAAAAABXABgAAAAAAAAAEADtQTsQCABpbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWNoYW5uZWxtZXJnZXJub2RlLWlu
dGVyZmFjZS9VVAUAA5GgGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAA0aJNNMw8qxG8AAAB6
AAAAfwAYAAAAAAABAAAApIHMEAgAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJh
dWRpby90aGUtYXVkaW8tYXBpL3RoZS1jaGFubmVsbWVyZ2Vybm9kZS1pbnRlcmZhY2UvYXVkaW9j
aGFubmVsbWVyZ2VyLWRpc2Nvbm5lY3Qtc3RkZXJyLnR4dFVUBQADtLEaXHV4CwABBPUBAAAEFAAA
AFBLAQIeAwoAAAAAABJek00AAAAAAAAAAAAAAABTABgAAAAAAAAAEADtQfQRCABpbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWNvbnZvbHZl
cm5vZGUtaW50ZXJmYWNlL1VUBQADk6AaXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIADVok03K
tAlcIgAAADoAAAB2ABgAAAAAAAEAAACkgYESCABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWNvbnZvbHZlcm5vZGUtaW50ZXJmYWNlL2Nv
bnZvbHZlci1zZXRCdWZmZXItbnVsbC1zdGRlcnIudHh0VVQFAAO1sRpcdXgLAAEE9QEAAAQUAAAA
UEsBAh4DCgAAAAAAEl6TTQAAAAAAAAAAAAAAAE8AGAAAAAAAAAAQAO1BUxMIAGltcG9ydGVkL3cz
Yy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhlLWF1ZGlvLWFwaS90aGUtZGVsYXlub2Rl
LWludGVyZmFjZS9VVAUAA5OgGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAA1aJNNyrQJXCIA
AAA6AAAAYgAYAAAAAAABAAAApIHcEwgAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93
ZWJhdWRpby90aGUtYXVkaW8tYXBpL3RoZS1kZWxheW5vZGUtaW50ZXJmYWNlL2lkbC10ZXN0LXN0
ZGVyci50eHRVVAUAA7axGlx1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAAASXpNNAAAAAAAAAAAA
AAAAXAAYAAAAAAAAABAA7UGaFAgAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJh
dWRpby90aGUtYXVkaW8tYXBpL3RoZS1keW5hbWljc2NvbXByZXNzb3Jub2RlLWludGVyZmFjZS9V
VAUAA5OgGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAA1aJNNyrQJXCIAAAA6AAAAfwAYAAAA
AAABAAAApIEwFQgAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUt
YXVkaW8tYXBpL3RoZS1keW5hbWljc2NvbXByZXNzb3Jub2RlLWludGVyZmFjZS9keW5hbWljc2Nv
bXByZXNzb3ItYmFzaWMtc3RkZXJyLnR4dFVUBQADtbEaXHV4CwABBPUBAAAEFAAAAFBLAQIeAwoA
AAAAABJek00AAAAAAAAAAAAAAABOABgAAAAAAAAAEADtQQsWCABpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLWdhaW5ub2RlLWludGVyZmFj
ZS9VVAUAA5SgGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAA1aJNNyrQJXCIAAAA6AAAAYwAY
AAAAAAABAAAApIGTFggAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90
aGUtYXVkaW8tYXBpL3RoZS1nYWlubm9kZS1pbnRlcmZhY2UvZ2Fpbi1iYXNpYy1zdGRlcnIudHh0
VVQFAAO2sRpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgANWiTTcq0CVwiAAAAOgAAAGEAGAAA
AAAAAQAAAKSBUhcIAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2ViYXVkaW8vdGhl
LWF1ZGlvLWFwaS90aGUtZ2Fpbm5vZGUtaW50ZXJmYWNlL2lkbC10ZXN0LXN0ZGVyci50eHRVVAUA
A7axGlx1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAAATXpNNAAAAAAAAAAAAAAAAYQAYAAAAAAAA
ABAA7UEPGAgAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJhdWRpby90aGUtYXVk
aW8tYXBpL3RoZS1tZWRpYWVsZW1lbnRhdWRpb3NvdXJjZW5vZGUtaW50ZXJmYWNlL1VUBQADlqAa
XHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIADZok03KtAlcIgAAADoAAACYABgAAAAAAAEAAACk
gaoYCABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1h
cGkvdGhlLW1lZGlhZWxlbWVudGF1ZGlvc291cmNlbm9kZS1pbnRlcmZhY2UvbWVkaWFFbGVtZW50
QXVkaW9Tb3VyY2VUb1NjcmlwdFByb2Nlc3NvclRlc3Qtc3RkZXJyLnR4dFVUBQADuLEaXHV4CwAB
BPUBAAAEFAAAAFBLAQIeAwoAAAAAABNek00AAAAAAAAAAAAAAABQABgAAAAAAAAAEADtQZ4ZCABp
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhl
LXBhbm5lcm5vZGUtaW50ZXJmYWNlL1VUBQADlqAaXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAI
ADZok03KtAlcIgAAADoAAABrABgAAAAAAAEAAACkgSgaCABpbXBvcnRlZC93M2Mvd2ViLXBsYXRm
b3JtLXRlc3RzL3dlYmF1ZGlvL3RoZS1hdWRpby1hcGkvdGhlLXBhbm5lcm5vZGUtaW50ZXJmYWNl
L3Bhbm5lcm5vZGUtYmFzaWMtc3RkZXJyLnR4dFVUBQADuLEaXHV4CwABBPUBAAAEFAAAAFBLAQIe
AwoAAAAAANVok00AAAAAAAAAAAAAAAAnABgAAAAAAAAAEADtQe8aCABpbXBvcnRlZC93M2Mvd2Vi
LXBsYXRmb3JtLXRlc3RzL3dlYnJ0Yy9VVAUAA+KyGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIA
CAA4aJNNyrQJXCIAAAA6AAAAUAAYAAAAAAABAAAApIFQGwgAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy93ZWJydGMvUlRDRFRNRlNlbmRlci1pbnNlcnREVE1GLmh0dHBzLXN0ZGVyci50
eHRVVAUAA7yxGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAA4aJNNyrQJXCIAAAA6AAAAVwAY
AAAAAAABAAAApIH8GwgAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJydGMvUlRD
RFRNRlNlbmRlci1vbnRvbmVjaGFuZ2UtbG9uZy5odHRwcy1zdGRlcnIudHh0VVQFAAO8sRpcdXgL
AAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAOWiTTcq0CVwiAAAAOgAAAFIAGAAAAAAAAQAAAKSBrxwI
AGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2VicnRjL1JUQ0RUTUZTZW5kZXItb250
b25lY2hhbmdlLmh0dHBzLXN0ZGVyci50eHRVVAUAA72xGlx1eAsAAQT1AQAABBQAAABQSwECHgMU
AAIACAA6aJNNyrQJXCIAAAA6AAAAUgAYAAAAAAABAAAApIFdHQgAaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy93ZWJydGMvUlRDUGVlckNvbm5lY3Rpb24tYWRkVHJhY2suaHR0cHMtc3Rk
ZXJyLnR4dFVUBQADwLEaXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIADxok03KtAlcIgAAADoA
AABSABgAAAAAAAEAAACkgQseCABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYnJ0
Yy9SVENQZWVyQ29ubmVjdGlvbi1nZXRTdGF0cy5odHRwcy1zdGRlcnIudHh0VVQFAAPDsRpcdXgL
AAEE9QEAAAQUAAAAUEsBAh4DFAACAAgATGiTTcq0CVwiAAAAOgAAAFEAGAAAAAAAAQAAAKSBuR4I
AGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2VicnRjL1JUQ1BlZXJDb25uZWN0aW9u
LW9udHJhY2suaHR0cHMtc3RkZXJyLnR4dFVUBQAD37EaXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQA
AgAIAFpok03KtAlcIgAAADoAAABVABgAAAAAAAEAAACkgWYfCABpbXBvcnRlZC93M2Mvd2ViLXBs
YXRmb3JtLXRlc3RzL3dlYnJ0Yy9SVENQZWVyQ29ubmVjdGlvbi1yZW1vdmVUcmFjay5odHRwcy1z
dGRlcnIudHh0VVQFAAP7sRpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAW2iTTcq0CVwiAAAA
OgAAAGsAGAAAAAAAAQAAAKSBFyAIAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2Vi
cnRjL1JUQ1BlZXJDb25uZWN0aW9uLXNldFJlbW90ZURlc2NyaXB0aW9uLXJlcGxhY2VUcmFjay5o
dHRwcy1zdGRlcnIudHh0VVQFAAP9sRpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgApWiTTcq0
CVwiAAAAOgAAAFUAGAAAAAAAAQAAAKSB3iAIAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMvd2VicnRjL1JUQ1BlZXJDb25uZWN0aW9uLXRyYWNrLXN0YXRzLmh0dHBzLXN0ZGVyci50eHRV
VAUAA4WyGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACACnaJNNyrQJXCIAAAA6AAAAXQAYAAAA
AAABAAAApIGPIQgAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJydGMvUlRDUnRw
UmVjZWl2ZXItZ2V0Q29udHJpYnV0aW5nU291cmNlcy5odHRwcy1zdGRlcnIudHh0VVQFAAOKshpc
dXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAqGiTTcq0CVwiAAAAOgAAAE8AGAAAAAAAAQAAAKSB
SCIIAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2VicnRjL1JUQ1J0cFJlY2VpdmVy
LWdldFN0YXRzLmh0dHBzLXN0ZGVyci50eHRVVAUAA4yyGlx1eAsAAQT1AQAABBQAAABQSwECHgMU
AAIACACpaJNNyrQJXCIAAAA6AAAAYAAYAAAAAAABAAAApIHzIggAaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy93ZWJydGMvUlRDUnRwUmVjZWl2ZXItZ2V0U3luY2hyb25pemF0aW9uU291
cmNlcy5odHRwcy1zdGRlcnIudHh0VVQFAAONshpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgA
qmiTTcq0CVwiAAAAOgAAAE0AGAAAAAAAAQAAAKSBryMIAGltcG9ydGVkL3czYy93ZWItcGxhdGZv
cm0tdGVzdHMvd2VicnRjL1JUQ1J0cFNlbmRlci1nZXRTdGF0cy5odHRwcy1zdGRlcnIudHh0VVQF
AAOPshpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgA42mTTTScuV90SwAAjNIBAE4AGAAAAAAA
AQAAAKSBWCQIAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvd2VicnRjL3NpbXBsZWNh
bGwtbm8tc3NyY3MuaHR0cHMtY3Jhc2gtbG9nLnR4dFVUBQAD2rQaXHV4CwABBPUBAAAEFAAAAFBL
AQIeAxQAAgAIANVok03KtAlcIgAAADoAAABLABgAAAAAAAEAAACkgVRwCABpbXBvcnRlZC93M2Mv
d2ViLXBsYXRmb3JtLXRlc3RzL3dlYnJ0Yy9zaW1wbGVjYWxsLW5vLXNzcmNzLmh0dHBzLXN0ZGVy
ci50eHRVVAUAA+KyGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACADZaJNNyrQJXCIAAAA6AAAA
QgAYAAAAAAABAAAApIH7cAgAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy93ZWJydGMv
c2ltcGxlY2FsbC5odHRwcy1zdGRlcnIudHh0VVQFAAPqshpcdXgLAAEE9QEAAAQUAAAAUEsBAh4D
CgAAAAAALV6TTQAAAAAAAAAAAAAAACQAGAAAAAAAAAAQAO1BmXEIAGltcG9ydGVkL3czYy93ZWIt
cGxhdGZvcm0tdGVzdHMveGhyL1VUBQADxqAaXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAElo
k01gSPWqqwAAAO4AAABjABgAAAAAAAEAAACkgfdxCABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3Jt
LXRlc3RzL3hoci9hY2Nlc3MtY29udHJvbC1iYXNpYy1jb3JzLXNhZmVsaXN0ZWQtcmVxdWVzdC1o
ZWFkZXJzLXN0ZGVyci50eHRVVAUAA9mxGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABJaJNN
eyXRi6gAAADkAAAAVwAYAAAAAAABAAAApIE/cwgAaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy94aHIvYWNjZXNzLWNvbnRyb2wtYmFzaWMtZ2V0LWZhaWwtbm9uLXNpbXBsZS1zdGRlcnIu
dHh0VVQFAAPZsRpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgASWiTTUUPWLWoAAAA5AAAAG4A
GAAAAAAAAQAAAKSBeHQIAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMveGhyL2FjY2Vz
cy1jb250cm9sLWJhc2ljLXBvc3Qtd2l0aC1ub24tY29ycy1zYWZlbGlzdGVkLWNvbnRlbnQtdHlw
ZS1zdGRlcnIudHh0VVQFAAPZsRpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAS2iTTe2+/ORu
AAAAdgAAAEQAGAAAAAAAAQAAAKSByHUIAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMv
eGhyL2V2ZW50LWVycm9yLW9yZGVyLnN1Yi1zdGRlcnIudHh0VVQFAAPesRpcdXgLAAEE9QEAAAQU
AAAAUEsBAh4DFAACAAgALV6TTaqYT0qsAAAA7gEAAFAAGAAAAAAAAQAAAKSBtHYIAGltcG9ydGVk
L3czYy93ZWItcGxhdGZvcm0tdGVzdHMveGhyL2V2ZW50LXVwbG9hZC1wcm9ncmVzcy1jcm9zc29y
aWdpbi1hY3R1YWwudHh0VVQFAAPFoBpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgALV6TTWJ+
jvM1AQAA1wMAAE4AGAAAAAAAAQAAAKSB6ncIAGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVz
dHMveGhyL2V2ZW50LXVwbG9hZC1wcm9ncmVzcy1jcm9zc29yaWdpbi1kaWZmLnR4dFVUBQADxaAa
XHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAC1ek02JWg84igAAAMQBAABSABgAAAAAAAEAAACk
gad5CABpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3hoci9ldmVudC11cGxvYWQtcHJv
Z3Jlc3MtY3Jvc3NvcmlnaW4tZXhwZWN0ZWQudHh0VVQFAAPFoBpcdXgLAAEE9QEAAAQUAAAAUEsB
Ah4DFAACAAgALV6TTRCcXAFVCAAAUx0AAFYAGAAAAAAAAQAAAKSBvXoIAGltcG9ydGVkL3czYy93
ZWItcGxhdGZvcm0tdGVzdHMveGhyL2V2ZW50LXVwbG9hZC1wcm9ncmVzcy1jcm9zc29yaWdpbi1w
cmV0dHktZGlmZi5odG1sVVQFAAPGoBpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAARmOTTQAA
AAAAAAAAAAAAABgAGAAAAAAAAAAQAO1BooMIAGxlZ2FjeS1hbmltYXRpb24tZW5naW5lL1VUBQAD
Y6kaXHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAEZjk00AAAAAAAAAAAAAAAAdABgAAAAAAAAA
EADtQfSDCABsZWdhY3ktYW5pbWF0aW9uLWVuZ2luZS9mYXN0L1VUBQADY6kaXHV4CwABBPUBAAAE
FAAAAFBLAQIeAwoAAAAAAEZjk00AAAAAAAAAAAAAAAAkABgAAAAAAAAAEADtQUuECABsZWdhY3kt
YW5pbWF0aW9uLWVuZ2luZS9mYXN0L2ltYWdlcy9VVAUAA2OpGlx1eAsAAQT1AQAABBQAAABQSwEC
HgMUAAIACABGY5NNsV8oVGQAAABsAAAARgAYAAAAAAABAAAApIGphAgAbGVnYWN5LWFuaW1hdGlv
bi1lbmdpbmUvZmFzdC9pbWFnZXMvaW1hZ2UtY29weS1tZW1vcnktdXNhZ2Utc3RkZXJyLnR4dFVU
BQADY6kaXHV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAExek00AAAAAAAAAAAAAAAAGABgAAAAA
AAAAEADtQY2FCABtZWRpYS9VVAUAAwChGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABuaJNN
ieO7a18AAABmAAAAIgAYAAAAAAABAAAApIHNhQgAbWVkaWEvZXZlbnQtcXVldWUtY3Jhc2gtc3Rk
ZXJyLnR4dFVUBQADH7IaXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAK9mk02i9IdLYwIAAKIV
AAAaABgAAAAAAAEAAACkgYiGCABweXdlYnNvY2tldC53cy5sb2ctZXJyLnR4dFVUBQADyq8aXHV4
CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAK9mk006MxhPCgEAAI8CAAAaABgAAAAAAAEAAACkgT+J
CABweXdlYnNvY2tldC53cy5sb2ctb3V0LnR4dFVUBQADyq8aXHV4CwABBPUBAAAEFAAAAFBLAQIe
AwoAAAAAAKJlk00AAAAAAAAAAAAAAAAbABgAAAAAAAAAAACkgZ2KCABweXdlYnNvY2tldC53c3Mu
bG9nLWVyci50eHRVVAUAA9CtGlx1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAACiZZNNAAAAAAAA
AAAAAAAAGwAYAAAAAAAAAAAApIHyiggAcHl3ZWJzb2NrZXQud3NzLmxvZy1vdXQudHh0VVQFAAPQ
rRpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAWl6TTQAAAAAAAAAAAAAAAAoAGAAAAAAAAAAQ
AO1BR4sIAHF1aWNrbG9vay9VVAUAAxuhGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACACAaJNN
R5+azyQEAACWYAAAHwAYAAAAAAABAAAApIGLiwgAcXVpY2tsb29rL2tleW5vdGUtMDktc3RkZXJy
LnR4dFVUBQADP7IaXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAORpk01FHie1BDIAAJ/vAAAM
ABgAAAAAAAEAAACkgQiQCAByZXN1bHRzLmh0bWxVVAUAA9y0Glx1eAsAAQT1AQAABBQAAABQSwEC
HgMKAAAAAABJaZNNAAAAAAAAAAAAAAAACAAYAAAAAAAAABAA7UFSwggAcmV0cmllcy9VVAUAA7qz
Glx1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAABJaZNNAAAAAAAAAAAAAAAAEQAYAAAAAAAAABAA
7UGUwggAcmV0cmllcy9pbXBvcnRlZC9VVAUAA7qzGlx1eAsAAQT1AQAABBQAAABQSwECHgMKAAAA
AABJaZNNAAAAAAAAAAAAAAAAFQAYAAAAAAAAABAA7UHfwggAcmV0cmllcy9pbXBvcnRlZC93M2Mv
VVQFAAO6sxpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAASWmTTQAAAAAAAAAAAAAAACgAGAAA
AAAAAAAQAO1BLsMIAHJldHJpZXMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9VVAUA
A7qzGlx1eAsAAQT1AQAABBQAAABQSwECHgMKAAAAAABJaZNNAAAAAAAAAAAAAAAALwAYAAAAAAAA
ABAA7UGQwwgAcmV0cmllcy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYnJ0Yy9V
VAUAA7qzGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACABJaZNNNJy5X3RLAACM0gEAVgAYAAAA
AAABAAAApIH5wwgAcmV0cmllcy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYnJ0
Yy9zaW1wbGVjYWxsLW5vLXNzcmNzLmh0dHBzLWNyYXNoLWxvZy50eHRVVAUAA7qzGlx1eAsAAQT1
AQAABBQAAABQSwECHgMUAAIACABJaZNNyrQJXCIAAAA6AAAAUwAYAAAAAAABAAAApIH9DwkAcmV0
cmllcy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL3dlYnJ0Yy9zaW1wbGVjYWxsLW5v
LXNzcmNzLmh0dHBzLXN0ZGVyci50eHRVVAUAA7qzGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIA
CADkaZNN7578jPGRCQDtEDMACgAYAAAAAAABAAAApIGsEAkAc3RhdHMuanNvblVUBQAD3LQaXHV4
CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAAJpek00AAAAAAAAAAAAAAAAEABgAAAAAAAAAEADtQeGi
EgBzdmcvVVQFAAOToRpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAml6TTQAAAAAAAAAAAAAA
AA0AGAAAAAAAAAAQAO1BH6MSAHN2Zy9hcy1pbWFnZS9VVAUAA5OhGlx1eAsAAQT1AQAABBQAAABQ
SwECHgMUAAIACAC9aJNN2wjTQjsAAAA/AAAAPwAYAAAAAAABAAAApIFmoxIAc3ZnL2FzLWltYWdl
L3N2Zy1pbWFnZS13aXRoLWRhdGEtdXJpLWltYWdlcy1kaXNhYmxlZC1zdGRlcnIudHh0VVQFAAO2
shpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAAtF6TTQAAAAAAAAAAAAAAAAsAGAAAAAAAAAAQ
AO1BGqQSAHdlYmFyY2hpdmUvVVQFAAPDoRpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgA2GiT
TdsI00I7AAAAPwAAADoAGAAAAAAAAQAAAKSBX6QSAHdlYmFyY2hpdmUvdGVzdC1saW5rLXJlbC1z
dWJyZXNvdXJjZS1iZWZvcmVsb2FkLXN0ZGVyci50eHRVVAUAA+iyGlx1eAsAAQT1AQAABBQAAABQ
SwECHgMKAAAAAADzXpNNAAAAAAAAAAAAAAAABwAYAAAAAAAAABAA7UEOpRIAd2VicnRjL1VUBQAD
OqIaXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAA1pk03KtAlcIgAAADoAAAAsABgAAAAAAAEA
AACkgU+lEgB3ZWJydGMvYXVkaW8tcGVlci1jb25uZWN0aW9uLWc3MjItc3RkZXJyLnR4dFVUBQAD
SbMaXHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAA1pk03KtAlcIgAAADoAAAAwABgAAAAAAAEA
AACkgdelEgB3ZWJydGMvYXVkaW8tcGVlci1jb25uZWN0aW9uLXdlYmF1ZGlvLXN0ZGVyci50eHRV
VAUAA0qzGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAOaZNNJC7ImSIAAAB0AAAAJQAYAAAA
AAABAAAApIFjphIAd2VicnRjL2F1ZGlvLXJlcGxhY2UtdHJhY2stc3RkZXJyLnR4dFVUBQADTLMa
XHV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAgAIAA9pk03KtAlcIgAAADoAAAAjABgAAAAAAAEAAACk
geSmEgB3ZWJydGMvY2xvbmUtYXVkaW8tdHJhY2stc3RkZXJyLnR4dFVUBQADTrMaXHV4CwABBPUB
AAAEFAAAAFBLAQIeAxQAAgAIABBpk03QmBFjIgAAAOgAAAAwABgAAAAAAAEAAACkgWOnEgB3ZWJy
dGMvZ2V0VXNlck1lZGlhLXdlYmF1ZGlvLWF1dG9wbGF5LXN0ZGVyci50eHRVVAUAA1CzGlx1eAsA
AQT1AQAABBQAAABQSwECHgMUAAIACAAUaZNNyrQJXCIAAAA6AAAALAAYAAAAAAABAAAApIHvpxIA
d2VicnRjL3BlZXItY29ubmVjdGlvbi1hdWRpby1tdXRlLXN0ZGVyci50eHRVVAUAA1izGlx1eAsA
AQT1AQAABBQAAABQSwECHgMUAAIACAATaZNN0JgRYyIAAADoAAAALQAYAAAAAAABAAAApIF3qBIA
d2VicnRjL3BlZXItY29ubmVjdGlvbi1hdWRpby1tdXRlMi1zdGRlcnIudHh0VVQFAANWsxpcdXgL
AAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAFWmTTSQuyJkiAAAAdAAAAC4AGAAAAAAAAQAAAKSBAKkS
AHdlYnJ0Yy9wZWVyLWNvbm5lY3Rpb24tYXVkaW8tdW5tdXRlLXN0ZGVyci50eHRVVAUAA1mzGlx1
eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAVaZNNJC7ImSIAAAB0AAAAPgAYAAAAAAABAAAApIGK
qRIAd2VicnRjL3BlZXItY29ubmVjdGlvbi1jcmVhdGVNZWRpYVN0cmVhbURlc3RpbmF0aW9uLXN0
ZGVyci50eHRVVAUAA1mzGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIACAAXaZNNyrQJXCIAAAA6
AAAAMwAYAAAAAAABAAAApIEkqhIAd2VicnRjL3BlZXItY29ubmVjdGlvbi1yZW1vdGUtYXVkaW8t
bXV0ZS1zdGRlcnIudHh0VVQFAANdsxpcdXgLAAEE9QEAAAQUAAAAUEsBAh4DFAACAAgAFmmTTdCY
EWMiAAAA6AAAADQAGAAAAAAAAQAAAKSBs6oSAHdlYnJ0Yy9wZWVyLWNvbm5lY3Rpb24tcmVtb3Rl
LWF1ZGlvLW11dGUyLXN0ZGVyci50eHRVVAUAA1uzGlx1eAsAAQT1AQAABBQAAABQSwECHgMUAAIA
CADjaZNNZFOQThMcGAAeLiYBGQAYAAAAAAABAAAApIFDqxIAd3B0d2tfcHJvY2Vzc19sb2cub3V0
LnR4dFVUBQAD2rQaXHV4CwABBPUBAAAEFAAAAFBLBQYAAAAA4QHhAdLvAACpxyoAAAA=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>357890</attachid>
            <date>2018-12-20 16:02:59 -0800</date>
            <delta_ts>2018-12-21 11:28:24 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-192861-20181220160256.patch</filename>
            <type>text/plain</type>
            <size>966924</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM5NDY3CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvQ2hhbmdlTG9nIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL0NoYW5n
ZUxvZwppbmRleCAwN2I1MjBkODZiZTY4MDJkY2Q4NGIzNzkwYzYwYzcwMzU1N2MwMmVlLi5lNTVk
YzNhYzZhYWZlMTc5NjZmNzQxOTA1NDg1ZWM3NzcyOTVlNTYzIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMiBAQAorMjAxOC0xMi0yMCAgWW91ZW5uIEZh
YmxldCAgPHlvdWVubkBhcHBsZS5jb20+CisKKyAgICAgICAgUmVzeW5jIGxpYnNydHAgdG8gTTcy
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTI4NjEK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFNvdXJj
ZS90aGlyZF9wYXJ0eS9saWJzcnRwLzogUmVzeW5jZWQgdG8gQ2hyb21lIE03MiBicmFuY2guCisK
IDIwMTgtMTItMTkgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAg
IFJlZnJlc2ggdXNyc2N0cGxpYiB0byBNNzIKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5
L2xpYndlYnJ0Yy9DTWFrZUxpc3RzLnR4dCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9D
TWFrZUxpc3RzLnR4dAppbmRleCBiN2E0ZTUyY2JlZjc0NjQ5NDVhN2UyN2ZhMGU5OTA4NThhZTgz
OTY0Li40MzA5Njk2MTBhMjkyODFhNDlkMWI4YmY4YmM1OTNiOGFkYWFlYmFmIDEwMDY0NAotLS0g
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvQ01ha2VMaXN0cy50eHQKKysrIGIvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL0NNYWtlTGlzdHMudHh0CkBAIC0xMzU3LDYgKzEzNTcsNyBA
QCB0YXJnZXRfY29tcGlsZV9kZWZpbml0aW9ucyh3ZWJydGMgUFJJVkFURQogICBFWFBBVF9SRUxB
VElWRV9QQVRICiAgIEhBVkVfTFJJTlQKICAgSEFWRV9MUklOVEYKKyAgSEFWRV9ORVRJTkVUX0lO
X0ggCiAgIEhBVkVfU0NUUAogICBIQVZFX1dFQlJUQ19WSURFTwogICBIQVZFX1dFQlJUQ19WT0lD
RQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL0NvbmZpZ3VyYXRpb25z
L2xpYndlYnJ0Y3BjcnRjLnhjY29uZmlnIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL0Nv
bmZpZ3VyYXRpb25zL2xpYndlYnJ0Y3BjcnRjLnhjY29uZmlnCmluZGV4IDlhZjliMWY1ZjM2ZTNh
MWQ1ZTg0OTY2OWI1MTIxYWE0YWMwZTJiYWIuLjVhODJjMTNiN2RhZTMxODYyNzE1ZDY3OGYxYTEx
ZmJlYzM2ODQwOTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Db25m
aWd1cmF0aW9ucy9saWJ3ZWJydGNwY3J0Yy54Y2NvbmZpZworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvQ29uZmlndXJhdGlvbnMvbGlid2VicnRjcGNydGMueGNjb25maWcKQEAgLTEy
LDcgKzEyLDcgQEAgSU5TVEFMTF9QQVRIID0gL3Vzci9sb2NhbC9saWI7CiBQVUJMSUNfSEVBREVS
U19GT0xERVJfUEFUSCA9IC91c3IvbG9jYWwvaW5jbHVkZS9saWJ3ZWJydGM7CiBVU0VfSEVBREVS
TUFQID0gTk87CiAKLUdDQ19QUkVQUk9DRVNTT1JfREVGSU5JVElPTlMgPSBXRUJSVENfUE9TSVgg
V0VCUlRDX01BQyBTU0xfVVNFX09QRU5TU0wgRkVBVFVSRV9FTkFCTEVfU1NMIEhBVkVfU1JUUCBI
QVZFX09QRU5TU0xfU1NMX0ggU0NUUF9QUk9DRVNTX0xFVkVMX0xPQ0tTIFNDVFBfU0lNUExFX0FM
TE9DQVRPUiBTQ1RQX1VTRV9PUEVOU1NMX1NIQTEgX19Vc2Vyc3BhY2VfXyBIQVZFX1NBX0xFTiBI
QVZFX1NDT05OX0xFTiBfX0FQUExFX1VTRV9SRkNfMjI5MiBfX1VzZXJzcGFjZV9vc19EYXJ3aW4g
Tk9OX1dJTkRPV1NfREVGSU5FIEhBVkVfV0VCUlRDX1ZJREVPIEhBVkVfV0VCUlRDX1ZPSUNFIFdF
QlJUQ19JTlRFTExJR0lCSUxJVFlfRU5IQU5DRVI9MCBXRUJSVENfQVBNX0RFQlVHX0RVTVA9MCBX
RUJSVENfTlNfRkxPQVQgV0VCUlRDX1VTRV9CVUlMVElOX0lMQkMgV0VCUlRDX0NPREVDX0lMQkMg
V0VCUlRDX1VTRV9CVUlMVElOX09QVVMgV0VCUlRDX0NPREVDX09QVVMgV0VCUlRDX0NPREVDX0lT
QUMgV0VCUlRDX0NPREVDX1JFRCBSVENfRElTQUJMRV9WUDkgSEFWRV9TVERJTlRfSCBIQVZFX1NU
RExJQl9IIEhBVkVfVUlOVDY0X1QgT1BFTlNTTCBIQVZFX0NPTkZJR19IIFdFQlJUQ19XRUJLSVRf
QlVJTEQgSEFWRV9QVEhSRUFEX0NPTkRfVElNRURXQUlUX1JFTEFUSVZFICBIQVZFX1NDVFAgJChp
bmhlcml0ZWQpOworR0NDX1BSRVBST0NFU1NPUl9ERUZJTklUSU9OUyA9IFdFQlJUQ19QT1NJWCBX
RUJSVENfTUFDIFNTTF9VU0VfT1BFTlNTTCBGRUFUVVJFX0VOQUJMRV9TU0wgSEFWRV9TUlRQIEhB
VkVfT1BFTlNTTF9TU0xfSCBTQ1RQX1BST0NFU1NfTEVWRUxfTE9DS1MgU0NUUF9TSU1QTEVfQUxM
T0NBVE9SIFNDVFBfVVNFX09QRU5TU0xfU0hBMSBfX1VzZXJzcGFjZV9fIEhBVkVfU0FfTEVOIEhB
VkVfU0NPTk5fTEVOIF9fQVBQTEVfVVNFX1JGQ18yMjkyIF9fVXNlcnNwYWNlX29zX0RhcndpbiBO
T05fV0lORE9XU19ERUZJTkUgSEFWRV9XRUJSVENfVklERU8gSEFWRV9XRUJSVENfVk9JQ0UgV0VC
UlRDX0lOVEVMTElHSUJJTElUWV9FTkhBTkNFUj0wIFdFQlJUQ19BUE1fREVCVUdfRFVNUD0wIFdF
QlJUQ19OU19GTE9BVCBXRUJSVENfVVNFX0JVSUxUSU5fSUxCQyBXRUJSVENfQ09ERUNfSUxCQyBX
RUJSVENfVVNFX0JVSUxUSU5fT1BVUyBXRUJSVENfQ09ERUNfT1BVUyBXRUJSVENfQ09ERUNfSVNB
QyBXRUJSVENfQ09ERUNfUkVEIFJUQ19ESVNBQkxFX1ZQOSBIQVZFX1NURElOVF9IIEhBVkVfU1RE
TElCX0ggSEFWRV9VSU5UNjRfVCBPUEVOU1NMIEhBVkVfQ09ORklHX0ggV0VCUlRDX1dFQktJVF9C
VUlMRCBIQVZFX1BUSFJFQURfQ09ORF9USU1FRFdBSVRfUkVMQVRJVkUgSEFWRV9ORVRJTkVUX0lO
X0ggSEFWRV9TQ1RQICQoaW5oZXJpdGVkKTsKIAogR0NDX1BSRVBST0NFU1NPUl9ERUZJTklUSU9O
U1tzZGs9bWFjb3N4Kl0gPSAkKGluaGVyaXRlZCk7CiBHQ0NfUFJFUFJPQ0VTU09SX0RFRklOSVRJ
T05TW3Nkaz1pcGhvbmVvcypdID0gJChpbmhlcml0ZWQpIFdFQlJUQ19JT1M7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAv
QlVJTEQuZ24gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L2xpYnNydHAvQlVJTEQuZ24KaW5kZXggNWQzODZkNmNhMGYyMmFjNGVmNTdhZThmYmIwOTJhZDgz
NzM3ZmYyZS4uNjM1OTU4NTdmMGU1YWQ4NWMwM2ZjYTA4MDdiNWY1ODk5OThkNWUwNyAxMDA2NDQK
LS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJz
cnRwL0JVSUxELmduCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlic3J0cC9CVUlMRC5nbgpAQCAtMzMsNyArMzMsNyBAQCBjb25maWcoImxpYnNy
dHBfY29uZmlnIikgewogICAgICJIQVZFX1VJTlQ2NF9UIiwKICAgICAiSEFWRV9VSU5UOF9UIiwK
ICAgXQotICBpZiAoaXNfcG9zaXgpIHsKKyAgaWYgKGlzX3Bvc2l4IHx8IGlzX2Z1Y2hzaWEpIHsK
ICAgICBkZWZpbmVzICs9IFsKICAgICAgICJIQVZFX0FSUEFfSU5FVF9IIiwKICAgICAgICJIQVZF
X05FVElORVRfSU5fSCIsCkBAIC04MCw2ICs4MCw3IEBAIHN0YXRpY19saWJyYXJ5KCJsaWJzcnRw
IikgewogICAgICJjcnlwdG8vaW5jbHVkZS9hbGxvYy5oIiwKICAgICAiY3J5cHRvL2luY2x1ZGUv
YXV0aC5oIiwKICAgICAiY3J5cHRvL2luY2x1ZGUvY2lwaGVyLmgiLAorICAgICJjcnlwdG8vaW5j
bHVkZS9jaXBoZXJfdHlwZXMuaCIsCiAgICAgImNyeXB0by9pbmNsdWRlL2NyeXB0b19rZXJuZWwu
aCIsCiAgICAgImNyeXB0by9pbmNsdWRlL2NyeXB0b190eXBlcy5oIiwKICAgICAiY3J5cHRvL2lu
Y2x1ZGUvZGF0YXR5cGVzLmgiLApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL0NIQU5HRVMgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvQ0hBTkdFUwppbmRleCBhMzIz
YWYxOTY1ZGQwMTY5YjRmZGE3ZjYzMjNhNjQzNmY1NDFkODI4Li5jYWEyYjYxMTM5YzY4OGZhNjll
ODI1MjJjNWE0ZmQxNDIzNDkzOGVlIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvQ0hBTkdFUworKysgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvQ0hBTkdFUwpAQCAt
MSw1ICsxLDY1IEBACiBDaGFuZ2Vsb2cKIAorMi4yLjAtcHJlIChUaGlzIHZlcnNpb24pCisKK01h
am9yIGNoYW5nZXMKKworQWxsIGNvZGUgaGFzIGJlZW4gcmVmb3JtYXR0ZWQgdG8gYmUgY29uc2lz
dGVudC4gQSAuY2xhbmctZm9ybWF0IGZpbGUgYW5kIGZvcm1hdC5zaCBzY3JpcHQgaGFzIGJlZW4g
YWRkZWQgdGhhdCBjYW4gYmUgdXNlIHRvIHZlcmlmeSBhbmQgZW5mb3JjZSBjb25zaXN0ZW50IGZv
cm1hdHRpbmcuIEFuIGF1dG9tYXRlZCBjaGVjayBvbiBjb2RlIGZvcm1hdHRpbmcgaXMgbm93IHBh
cnQgb2YgdHJhdmlzIGJ1aWxkLgorCitPdGhlciBjaGFuZ2VzCisKK1BSICM0MDkgLSBDb21wYXRp
YmlsdHkgd2l0aCBMaWJyZVNTTAorCitQUiAjNDA2IC0gRml4IHVucHJvdGVjdCB3aGVuIHBrdGxl
biA8ICgyKm1raV9zaXplICsgdGFnX2xlbikKKworUFIgIzQwNSAtIFByZXZlbnQgcG90ZW50aWFs
IGRvdWJsZSBmcmVlCisKK1BSICM0MDQgLSBBZGQgYmFjayBleHRlcm4gdG8gZ2xvYmFsIHZhcmlh
YmxlcworCitQUiAjNDAzIC0gU2V0IGdjbSBJViBkaXJlY3RseSB3aXRoIEVWUF9DaXBoZXJJbml0
X2V4CisKK1BSICM0MDEgLSBGaXggbWVtb3J5IGFjY2VzcyBpc3N1ZSBpbiBzcnRwX2dldF9zZXNz
aW9uX2tleXMoKQorCitQUiAjMzk4IC0gRml4IG1lbW9yeSBhY2Nlc3MgZml4ZXMgd2hlbiBpbnZh
bGlkIHByb2ZpbGVzIHdoZXJlIHVzZWQKKworUFIgIzM5MSAtIFJldHVybiBOVUxMIHdoZW4gYWxs
b2NhdGluZyBtZW1vcnkgb2Ygc2l6ZSB6ZXJvCisKK1BSICMzOTAgLSBCaXR2ZWN0b3Igb2YgbGVu
Z3RoIHplcm8gaXMgbm90IHZhbGlkCisKK1BSICMzODUgLSBUcmVhdCB3YXJuaW5ncyBhcyBlcnJv
cnMgb24gdHJhdmlzIGJ1aWxkcworCitQUiAjMzg4IC0gTW92ZWQgZXh0ZXJucyBmcm9tIGNyeXB0
b19rZXJuZWwgaW50byBpdHMgb3duIGhlYWRlcgorCitQUiAjMzc5IC0gRml4ZWQgc2V2ZXJhbCBj
b21waWxlciB3YXJuaW5ncyBmcm9tIEZpcmVmb3ggYnVpbGRzCisKK1BSICMzNzcgLSBSZW1vdmVk
IHZhcmlhYmxlIGluaXQgY29kZSBpbiByZGJ4IHdoaWNoIG5ldmVyIGdldHMgdXNlZAorCitQUiAj
MzgxIC0gQWRkZWQgZXJyb3IgaW4gY2FzZSB0aGUgcGxhdGZvcm0gaXMgbm90IGRldGVjdGVkCisK
K1BSICMzNzYgLSBBZGQgY292ZXJpdHkgc2NhbiB0byB0cmF2aXMgYnVpbGRzCisKK1BSICMzNzQg
LSBBZGQgYSBiaWcgZW5kaWFuIGJ1aWxkIG9uIHRyYXZpcworCitQUiAjMzczIC0gRml4ZWQgYnVm
ZmVyIHNpemUgaXNzdWUgaW4gdGVzdC9zcnRwX2RyaXZlci5jCisKK1BSICMzNzIgLSBNYWtlIHJ0
cF9kZWNvZGVyIGNvbXBpbGUgb24gTWluR1cKKworUFIgIzM2NyAtIFJlbmFtZSBjb25maWd1cmUu
aW4gdG8gY29uZmlndXJlLmFjCisKK1BSICMzNjUgLSBSZXBsYWNlIGNhbGxzIHRvIGZyZWUoKSB3
aXRoIHNydHBfY3J5cHRvX2ZyZWUoKQorCitQUiAjMzY0IC0gQWRkIHZhbGdyaW5kIHRvIHRyYXZp
cyBhbmQgZml4IGxlYWtzIGluIHRlc3RzCisKK1BSICMzNjMgLSBDaGFuZ2Ugc210cF9jcnlwdG9f
YWxsb2MgdG8gaW5pdGlhbGl6ZSBtZW1vcnkgdG8gemVybworCitQUiAjMzU0IC0gRml4IHBvdGVu
dGlhbCBsZWFrIGlmIGNsb25pbmcgb2Ygc3RyZWFtIGZhaWxzCisKK1BSICMzNDAgLSBGaXggcG90
ZW50aWFsIGxlYWsgaW4gc3J0cF9hZGRfc3RyZWFtKCkKKworUFIgIzMyMyAtIEZpeCBydW5uaW5n
IHRlc3QgaW4gb3V0IG9mIHNvdXJjZSBidWlsZHMKKworSXNzdWUgIzMxNiAgLSBSZW1vdmUgVkVS
U0lPTiBmaWxlCisKIDIuMS4wCiAKIENvbXBhdGliaWxpdHkgY2hhbmdlcwpAQCAtMTY0LDQgKzIy
NCw0IEBAIE90aGVyIGNoYW5nZXMKIAogICBQUiAjMzAyIC0gRml4IHdhcm5pbmcgcmVnYXJkaW5n
IHVudXNlZCB2YXJpYWJsZQogCi0gIFBSICMzMDMgLSBNYWtlZmlsZS5pbjogQWRkIGdudSBhcyBt
YXRjaCBmb3Igc2hhcmVkIGxpYiBzdWZmaXgKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCisg
IFBSICMzMDMgLSBNYWtlZmlsZS5pbjogQWRkIGdudSBhcyBtYXRjaCBmb3Igc2hhcmVkIGxpYiBz
dWZmaXgKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlic3J0cC9MSUJTUlRQX1ZFUlNJT04gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvTElCU1JUUF9WRVJTSU9OCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjU0MzIyNjE0ODdmNWNiMDRmODQ5ZTNiOGQ0NTMyYTY3ZGM3NzBlYTYKLS0tIC9kZXYvbnVs
bAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnNydHAvTElCU1JUUF9WRVJTSU9OCkBAIC0wLDAgKzEgQEAKKzIuMi4wLXByZQpkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRw
L09XTkVSUyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlic3J0cC9PV05FUlMKaW5kZXggZmQ2NDNlZmQxZmQ0ZjQzNzM1MWU3MDQxYmNhMTg5OWQ4OGYx
ZWMyZS4uYTU1ODY3ODY3Mzc3ODkyMjhhZDMzNTMxOTVkYjE5YzMzZTkwZWMwMyAxMDA2NDQKLS0t
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRw
L09XTkVSUworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L2xpYnNydHAvT1dORVJTCkBAIC0xLDMgKzEsMiBAQAogbWF0dGRyQGNocm9taXVtLm9yZwot
a2plbGxhbmRlckBjaHJvbWl1bS5vcmcKIHBob2dsdW5kQGNocm9taXVtLm9yZwpkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRw
L1JFQURNRSBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlic3J0cC9SRUFETUUKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGU2OWRlMjliYjJk
MWQ2NDM0YjhiMjlhZTc3NWFkOGMyZTQ4YzUzOTEuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9SRUFETUUuY2hyb21pdW0gYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvUkVBRE1FLmNocm9taXVt
CmluZGV4IDc1NGRkY2QzODU5NWE2Yzc2Y2MyOTA0MTJlNTNkYTEyNGU3Njg2MTguLjRhNjczYzZh
NDkwMTJlYmI4MmM3NzBmODkzNDFkODliZGMzYzk4ZDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9SRUFETUUuY2hyb21p
dW0KKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9s
aWJzcnRwL1JFQURNRS5jaHJvbWl1bQpAQCAtMSw2ICsxLDYgQEAKIE5hbWU6IGxpYnNydHAKIFVS
TDogaHR0cHM6Ly9naXRodWIuY29tL2Npc2NvL2xpYnNydHAKLVZlcnNpb246IDkzYWJhM2U3Njc1
MDIzNDNjMjU1ZmFkODk2MmRiZjBmZjI5YzRjYTYKK1ZlcnNpb246IDk0YWMwMGQ1YWM2NDA5ZTNm
NjQwOWU0YTVlZGZjZGJkYWE3ZmRhYmUKIExpY2Vuc2U6IDMtY2xhdXNlIEJTRAogTGljZW5zZSBG
aWxlOiBMSUNFTlNFCiBTZWN1cml0eSBDcml0aWNhbDogWWVzCkBAIC0xMiwzICsxMiw0IEBAIERl
c2NyaXB0aW9uOgogCiBMb2NhbCBNb2RpZmljYXRpb25zOgogICBSZW1vdmVkIG1hbnkgdW51c2Vk
IGZpbGVzLCBlLmcuIGFsbCBub24tT3BlblNTTCBjaXBoZXIgaW1wbGVtZW50YXRpb25zLgorICBS
ZW5hbWVkIFZFUlNJT04gdG8gTElCU1JUUF9WRVJTSU9OLgpkaWZmIC0tZ2l0IGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL1JFQURNRS5tZCBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9S
RUFETUUubWQKaW5kZXggYjYzMjY3YWM1MGI0NzZiNDRiMjk2NTc5ZGM1Nzc5YmE2OWYyNmFhZi4u
M2YxZTViYmZkZWJiMmUzNDcyY2ZjOWZkY2VkYmY4MjFmNjYyNGM4NCAxMDA2NDQKLS0tIGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL1JFQURN
RS5tZAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L2xpYnNydHAvUkVBRE1FLm1kCkBAIC0xLDMgKzEsNiBAQAorWyFbQnVpbGQgU3RhdHVzXShodHRw
czovL3RyYXZpcy1jaS5vcmcvY2lzY28vbGlic3J0cC5zdmc/YnJhbmNoPW1hc3RlcildKGh0dHBz
Oi8vdHJhdmlzLWNpLm9yZy9jaXNjby9saWJzcnRwKQorWyFbQ292ZXJpdHkgU2NhbiBCdWlsZCBT
dGF0dXNdKGh0dHBzOi8vc2Nhbi5jb3Zlcml0eS5jb20vcHJvamVjdHMvMTQyNzQvYmFkZ2Uuc3Zn
KV0oaHR0cHM6Ly9zY2FuLmNvdmVyaXR5LmNvbS9wcm9qZWN0cy9jaXNjby1saWJzcnRwKQorCiA8
YSBuYW1lPSJpbnRyb2R1Y3Rpb24tdG8tbGlic3J0cCI+PC9hPgogIyBJbnRyb2R1Y3Rpb24gdG8g
bGliU1JUUAogCkBAIC01MSw2ICs1NCw3IEBAIGJlY2F1c2UgaXQgZG9lcyBpdHMgd29yayBiZWhp
bmQgdGhlIHNjZW5lcy4KICAgLSBbU3VwcG9ydGVkIEZlYXR1cmVzXSgjc3VwcG9ydGVkLWZlYXR1
cmVzKQogICAtIFtJbXBsZW1lbnRhdGlvbiBOb3Rlc10oI2ltcGxlbWVudGF0aW9uLW5vdGVzKQog
LSBbSW5zdGFsbGluZyBhbmQgQnVpbGRpbmcgbGliU1JUUF0oI2luc3RhbGxpbmctYW5kLWJ1aWxk
aW5nLWxpYnNydHApCisgIC0gW0NoYW5naW5nIEJ1aWxkIENvbmZpZ3VyYXRpb25dKCNjaGFuZ2lu
Zy1idWlsZC1jb25maWd1cmF0aW9uKQogLSBbQXBwbGljYXRpb25zXSgjYXBwbGljYXRpb25zKQog
ICAtIFtFeGFtcGxlIENvZGVdKCNleGFtcGxlLWNvZGUpCiAtIFtDcmVkaXRzXSgjY3JlZGl0cykK
QEAgLTI5MSw2ICsyOTUsMjYgQEAgT3BlbkJTRCAoc3BhcmMtdW5rbm93bi1vcGVuYnNkMi43KS4K
IAogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIAorPGEgbmFtZT0iY2hhbmdpbmctYnVpbGQtY29u
ZmlndXJhdGlvbiI+PC9hPgorIyMgQ2hhbmdpbmcgQnVpbGQgQ29uZmlndXJhdGlvbgorCitUbyBi
dWlsZCB0aGUgYC4vY29uZmlndXJlYCBzY3JpcHQgbWVudGlvbmVkIGFib3ZlLCBsaWJTUlRQIHJl
bGllcyBvbiB0aGUKK1thdXRvbWFrZV0oaHR0cHM6Ly93d3cuZ251Lm9yZy9zb2Z0d2FyZS9hdXRv
bWFrZS8pIHRvb2xjaGFpbi4gIFNpbmNlCitgLi9jb25maWd1cmVgIGlzIGJ1aWx0IGZyb20gYGNv
bmZpZ3VyZS5pbmAgYnkgYXV0b21ha2UsIGlmIHlvdSBtYWtlIGNoYW5nZXMgaW4KK2hvdyBgLi9j
b25maWd1cmVgIHdvcmtzIChlLmcuLCB0byBhZGQgYSBuZXcgbGlicmFyeSBkZXBlbmRlbmN5KSwg
eW91IHdpbGwgbmVlZAordG8gcmVidWlsZCBgLi9jb25maWd1cmVgIGFuZCBjb21taXQgdGhlIHVw
ZGF0ZWQgdmVyc2lvbi4gIEluIGFkZGl0aW9uIHRvCithdXRvbWFrZSBpdHNlbGYsIHlvdSB3aWxs
IG5lZWQgdG8gaGF2ZSB0aGUgYHBrZ2NvbmZpZ2AgdG9vbHMgaW5zdGFsbGVkIGFzIHdlbGwuCisK
K0ZvciBleGFtcGxlLCBvbiBtYWNPUzoKKworYGBgCiticmV3IGluc3RhbGwgYXV0b21ha2UgcGtn
Y29uZmlnCisjIEVkaXQgY29uZmlndXJlLmluCithdXRvcmVtYWtlIC1pdmYKK2BgYAorCistLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLQorCiA8YSBuYW1lPSJhcHBsaWNhdGlvbnMiPjwvYT4KICMgQXBw
bGljYXRpb25zCiAKQEAgLTM5Nyw2ICs0MjEsOSBAQCB1aW50OF90IGtleVszMF0gPSB7MHgwMCwg
MHgwMSwgMHgwMiwgMHgwMywgMHgwNCwgMHgwNSwgMHgwNiwgMHgwNywKIC8vIGluaXRpYWxpemUg
bGliU1JUUAogc3J0cF9pbml0KCk7CiAKKy8vIGRlZmF1bHQgcG9saWN5IHZhbHVlcworbWVtc2V0
KCZwb2xpY3ksIDB4MCwgc2l6ZW9mKHNydHBfcG9saWN5X3QpKTsKKwogLy8gc2V0IHBvbGljeSB0
byBkZXNjcmliZSBhIHBvbGljeSBmb3IgYW4gU1JUUCBzdHJlYW0KIGNyeXB0b19wb2xpY3lfc2V0
X3J0cF9kZWZhdWx0KCZwb2xpY3kucnRwKTsKIGNyeXB0b19wb2xpY3lfc2V0X3J0Y3BfZGVmYXVs
dCgmcG9saWN5LnJ0Y3ApOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL1RPRE8gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvVE9ETwpkZWxldGVkIGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggZTY5ZGUyOWJiMmQxZDY0MzRiOGIyOWFlNzc1YWQ4YzJlNDhjNTM5MS4uMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMApkaWZmIC0tZ2l0IGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL1ZFUlNJT04g
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAv
VkVSU0lPTgpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNDRlNWJlMmYwOGQ0MGU1NTk2
ZTViYzc5ZmNjOTUzNWVhMTYyNzcxMi4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3Bh
cnR5L2xpYnNydHAvVkVSU0lPTgorKysgL2Rldi9udWxsCkBAIC0xICswLDAgQEAKLTIuMS4wLXBy
ZQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJzcnRwL2NvZGVyZXZpZXcuc2V0dGluZ3MgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY29kZXJldmlldy5zZXR0aW5ncwppbmRl
eCBiMGY0ZTU3MGViYjU5NDEzM2JmZWNmNTEwMzZkNGZiZTgyNTMyZDllLi5kZTYyMGM4MTViMDcw
ZDcwZjlhMWFjNDdkNjA0MDk1YTEwMThmY2IxIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY29kZXJldmlldy5zZXR0aW5n
cworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnNydHAvY29kZXJldmlldy5zZXR0aW5ncwpAQCAtMSw5ICsxLDcgQEAKLUNPREVfUkVWSUVXX1NF
UlZFUjogY29kZXJldmlldy5jaHJvbWl1bS5vcmcKKyMgVGhpcyBmaWxlIGlzIHVzZWQgYnkgZ2l0
LWNsIHRvIGdldCByZXBvc2l0b3J5IHNwZWNpZmljIGluZm9ybWF0aW9uLgogQ0NfTElTVDogY2hy
b21pdW0tcmV2aWV3c0BjaHJvbWl1bS5vcmcKLVZJRVdfVkM6IGh0dHBzOi8vY2hyb21pdW0uZ29v
Z2xlc291cmNlLmNvbS9jaHJvbWl1bS9kZXBzL2xpYnNydHAvKy8KK0NPREVfUkVWSUVXX1NFUlZF
UjogY29kZXJldmlldy5jaHJvbWl1bS5vcmcKK0dFUlJJVF9IT1NUOiBUcnVlCitQUk9KRUNUOiBs
aWJzcnRwCiBTVEFUVVM6IGh0dHA6Ly9jaHJvbWl1bS1zdGF0dXMuYXBwc3BvdC5jb20vc3RhdHVz
Ci1UUllfT05fVVBMT0FEOiBGYWxzZQotVFJZU0VSVkVSX1NWTl9VUkw6IHN2bjovL3N2bi5jaHJv
bWl1bS5vcmcvY2hyb21lLXRyeS90cnkKLUdJVENMX1BSRVVQTE9BRDogaHR0cDovL3NyYy5jaHJv
bWl1bS5vcmcvdmlld3ZjL2Nocm9tZS90cnVuay90b29scy9kZXBvdF90b29scy9naXQtY2wtdXBs
b2FkLWhvb2s/cmV2aXNpb249SEVBRAotR0lUQ0xfUFJFRENPTU1JVDogaHR0cDovL3NyYy5jaHJv
bWl1bS5vcmcvdmlld3ZjL2Nocm9tZS90cnVuay90b29scy9kZXBvdF90b29scy9naXQtY2wtdXBs
b2FkLWhvb2s/cmV2aXNpb249SEVBRAotUFJPSkVDVDogY2hyb21pdW1fZGVwcworVklFV19WQzog
aHR0cHM6Ly9jaHJvbWl1bS5nb29nbGVzb3VyY2UuY29tL2Nocm9taXVtL2RlcHMvbGlic3J0cC8r
LwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJzcnRwL2NyeXB0by9jaXBoZXIvYWVzX2djbV9vc3NsLmMgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2NpcGhlci9h
ZXNfZ2NtX29zc2wuYwppbmRleCA0MTY1ODJhYWNjMjc0ZWE3ZDhhMDc4MTBkZTMxODhmMWI5OWFi
MjEwLi5lZjEzYTc4MjQwNDgzNzc1N2RmNWI1YjE0N2ZlMGE3OTZkYWI1ODM2IDEwMDY0NAotLS0g
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAv
Y3J5cHRvL2NpcGhlci9hZXNfZ2NtX29zc2wuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2NpcGhlci9hZXNfZ2NtX29z
c2wuYwpAQCAtNDUsMzYgKzQ1LDI4IEBACiAgKi8KIAogI2lmZGVmIEhBVkVfQ09ORklHX0gKLSAg
ICAjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29uZmlnLmg+CiAjZW5kaWYKIAogI2lu
Y2x1ZGUgPG9wZW5zc2wvZXZwLmg+CiAjaW5jbHVkZSAiYWVzX2ljbV9vc3NsLmgiCiAjaW5jbHVk
ZSAiYWVzX2djbV9vc3NsLmgiCiAjaW5jbHVkZSAiYWxsb2MuaCIKLSNpbmNsdWRlICJlcnIuaCIg
ICAgICAgICAgICAgICAgLyogZm9yIHNydHBfZGVidWcgKi8KKyNpbmNsdWRlICJlcnIuaCIgLyog
Zm9yIHNydHBfZGVidWcgKi8KICNpbmNsdWRlICJjcnlwdG9fdHlwZXMuaCIKLQorI2luY2x1ZGUg
ImNpcGhlcl90eXBlcy5oIgogCiBzcnRwX2RlYnVnX21vZHVsZV90IHNydHBfbW9kX2Flc19nY20g
PSB7Ci0gICAgMCwgICAgICAgICAgICAgICAvKiBkZWJ1Z2dpbmcgaXMgb2ZmIGJ5IGRlZmF1bHQg
Ki8KLSAgICAiYWVzIGdjbSIgICAgICAgIC8qIHByaW50YWJsZSBtb2R1bGUgbmFtZSAgICAgICAq
LworICAgIDAsICAgICAgICAvKiBkZWJ1Z2dpbmcgaXMgb2ZmIGJ5IGRlZmF1bHQgKi8KKyAgICAi
YWVzIGdjbSIgLyogcHJpbnRhYmxlIG1vZHVsZSBuYW1lICAgICAgICovCiB9OwogCi0vKgotICog
VGhlIGZvbGxvd2luZyBhcmUgdGhlIGdsb2JhbCBzaW5nbGV0b24gaW5zdGFuY2VzIGZvciB0aGUK
LSAqIDEyOC1iaXQgYW5kIDI1Ni1iaXQgR0NNIGNpcGhlcnMuCi0gKi8KLWV4dGVybiBjb25zdCBz
cnRwX2NpcGhlcl90eXBlX3Qgc3J0cF9hZXNfZ2NtXzEyOF9vcGVuc3NsOwotZXh0ZXJuIGNvbnN0
IHNydHBfY2lwaGVyX3R5cGVfdCBzcnRwX2Flc19nY21fMjU2X29wZW5zc2w7Ci0KIC8qCiAgKiBG
b3Igbm93IHdlIG9ubHkgc3VwcG9ydCA4IGFuZCAxNiBvY3RldCB0YWdzLiAgVGhlIHNwZWMgYWxs
b3dzIGZvcgogICogb3B0aW9uYWwgMTIgYnl0ZSB0YWcsIHdoaWNoIG1heSBiZSBzdXBwb3J0ZWQg
aW4gdGhlIGZ1dHVyZS4KICAqLwotI2RlZmluZSBHQ01fQVVUSF9UQUdfTEVOICAgIDE2Ci0jZGVm
aW5lIEdDTV9BVVRIX1RBR19MRU5fOCAgOAotCisjZGVmaW5lIEdDTV9BVVRIX1RBR19MRU4gMTYK
KyNkZWZpbmUgR0NNX0FVVEhfVEFHX0xFTl84IDgKIAogLyoKICAqIFRoaXMgZnVuY3Rpb24gYWxs
b2NhdGVzIGEgbmV3IGluc3RhbmNlIG9mIHRoaXMgY3J5cHRvIGVuZ2luZS4KQEAgLTgzLDExICs3
NSwxNCBAQCBleHRlcm4gY29uc3Qgc3J0cF9jaXBoZXJfdHlwZV90IHNydHBfYWVzX2djbV8yNTZf
b3BlbnNzbDsKICAqIGtleSBsZW5ndGggaW5jbHVkZXMgdGhlIDE0IGJ5dGUgc2FsdCB2YWx1ZSB0
aGF0IGlzIHVzZWQgd2hlbgogICogaW5pdGlhbGl6aW5nIHRoZSBLREYuCiAgKi8KLXN0YXRpYyBz
cnRwX2Vycl9zdGF0dXNfdCBzcnRwX2Flc19nY21fb3BlbnNzbF9hbGxvYyAoc3J0cF9jaXBoZXJf
dCAqKmMsIGludCBrZXlfbGVuLCBpbnQgdGxlbikKK3N0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBz
cnRwX2Flc19nY21fb3BlbnNzbF9hbGxvYyhzcnRwX2NpcGhlcl90ICoqYywKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQga2V5X2xlbiwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgdGxl
bikKIHsKICAgICBzcnRwX2Flc19nY21fY3R4X3QgKmdjbTsKIAotICAgIGRlYnVnX3ByaW50KHNy
dHBfbW9kX2Flc19nY20sICJhbGxvY2F0aW5nIGNpcGhlciB3aXRoIGtleSBsZW5ndGggJWQiLCBr
ZXlfbGVuKTsKKyAgICBkZWJ1Z19wcmludChzcnRwX21vZF9hZXNfZ2NtLCAiYWxsb2NhdGluZyBj
aXBoZXIgd2l0aCBrZXkgbGVuZ3RoICVkIiwKKyAgICAgICAgICAgICAgICBrZXlfbGVuKTsKICAg
ICBkZWJ1Z19wcmludChzcnRwX21vZF9hZXNfZ2NtLCAiYWxsb2NhdGluZyBjaXBoZXIgd2l0aCB0
YWcgbGVuZ3RoICVkIiwgdGxlbik7CiAKICAgICAvKgpAQCAtOTgsOCArOTMsNyBAQCBzdGF0aWMg
c3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9hZXNfZ2NtX29wZW5zc2xfYWxsb2MgKHNydHBfY2lwaGVy
X3QgKipjLCBpbnQga2V5XwogICAgICAgICByZXR1cm4gKHNydHBfZXJyX3N0YXR1c19iYWRfcGFy
YW0pOwogICAgIH0KIAotICAgIGlmICh0bGVuICE9IEdDTV9BVVRIX1RBR19MRU4gJiYKLSAgICAg
ICAgdGxlbiAhPSBHQ01fQVVUSF9UQUdfTEVOXzgpIHsKKyAgICBpZiAodGxlbiAhPSBHQ01fQVVU
SF9UQUdfTEVOICYmIHRsZW4gIT0gR0NNX0FVVEhfVEFHX0xFTl84KSB7CiAgICAgICAgIHJldHVy
biAoc3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJhbSk7CiAgICAgfQogCkBAIC0xMDgsMTUgKzEwMiwx
MyBAQCBzdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9hZXNfZ2NtX29wZW5zc2xfYWxsb2Mg
KHNydHBfY2lwaGVyX3QgKipjLCBpbnQga2V5XwogICAgIGlmICgqYyA9PSBOVUxMKSB7CiAgICAg
ICAgIHJldHVybiAoc3J0cF9lcnJfc3RhdHVzX2FsbG9jX2ZhaWwpOwogICAgIH0KLSAgICBtZW1z
ZXQoKmMsIDB4MCwgc2l6ZW9mKHNydHBfY2lwaGVyX3QpKTsKIAogICAgIGdjbSA9IChzcnRwX2Fl
c19nY21fY3R4X3QgKilzcnRwX2NyeXB0b19hbGxvYyhzaXplb2Yoc3J0cF9hZXNfZ2NtX2N0eF90
KSk7CiAgICAgaWYgKGdjbSA9PSBOVUxMKSB7Ci0Jc3J0cF9jcnlwdG9fZnJlZSgqYyk7CQotCSpj
ID0gTlVMTDsKKyAgICAgICAgc3J0cF9jcnlwdG9fZnJlZSgqYyk7CisgICAgICAgICpjID0gTlVM
TDsKICAgICAgICAgcmV0dXJuIChzcnRwX2Vycl9zdGF0dXNfYWxsb2NfZmFpbCk7CiAgICAgfQot
ICAgIG1lbXNldChnY20sIDB4MCwgc2l6ZW9mKHNydHBfYWVzX2djbV9jdHhfdCkpOwogCiAgICAg
Z2NtLT5jdHggPSBFVlBfQ0lQSEVSX0NUWF9uZXcoKTsKICAgICBpZiAoZ2NtLT5jdHggPT0gTlVM
TCkgewpAQCAtMTUxLDE1ICsxNDMsMTQgQEAgc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBf
YWVzX2djbV9vcGVuc3NsX2FsbG9jIChzcnRwX2NpcGhlcl90ICoqYywgaW50IGtleV8KICAgICBy
ZXR1cm4gKHNydHBfZXJyX3N0YXR1c19vayk7CiB9CiAKLQogLyoKICAqIFRoaXMgZnVuY3Rpb24g
ZGVhbGxvY2F0ZXMgYSBHQ00gc2Vzc2lvbgogICovCi1zdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qg
c3J0cF9hZXNfZ2NtX29wZW5zc2xfZGVhbGxvYyAoc3J0cF9jaXBoZXJfdCAqYykKK3N0YXRpYyBz
cnRwX2Vycl9zdGF0dXNfdCBzcnRwX2Flc19nY21fb3BlbnNzbF9kZWFsbG9jKHNydHBfY2lwaGVy
X3QgKmMpCiB7CiAgICAgc3J0cF9hZXNfZ2NtX2N0eF90ICpjdHg7CiAKLSAgICBjdHggPSAoc3J0
cF9hZXNfZ2NtX2N0eF90KiljLT5zdGF0ZTsKKyAgICBjdHggPSAoc3J0cF9hZXNfZ2NtX2N0eF90
ICopYy0+c3RhdGU7CiAgICAgaWYgKGN0eCkgewogICAgICAgICBFVlBfQ0lQSEVSX0NUWF9mcmVl
KGN0eC0+Y3R4KTsKICAgICAgICAgLyogemVyb2l6ZSB0aGUga2V5IG1hdGVyaWFsICovCkBAIC0x
NzksMTQgKzE3MCwxNiBAQCBzdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9hZXNfZ2NtX29w
ZW5zc2xfZGVhbGxvYyAoc3J0cF9jaXBoZXJfdCAqYykKICAqCiAgKiB0aGUga2V5IGlzIHRoZSBz
ZWNyZXQga2V5CiAgKi8KLXN0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2Flc19nY21fb3Bl
bnNzbF9jb250ZXh0X2luaXQgKHZvaWQqIGN2LCBjb25zdCB1aW50OF90ICprZXkpCitzdGF0aWMg
c3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9hZXNfZ2NtX29wZW5zc2xfY29udGV4dF9pbml0KHZvaWQg
KmN2LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBjb25zdCB1aW50OF90ICprZXkpCiB7CiAgICAgc3J0cF9hZXNfZ2NtX2N0eF90ICpj
ID0gKHNydHBfYWVzX2djbV9jdHhfdCAqKWN2OwogICAgIGNvbnN0IEVWUF9DSVBIRVIgKmV2cDsK
IAogICAgIGMtPmRpciA9IHNydHBfZGlyZWN0aW9uX2FueTsKIAotICAgIGRlYnVnX3ByaW50KHNy
dHBfbW9kX2Flc19nY20sICJrZXk6ICAlcyIsIHNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmco
a2V5LCBjLT5rZXlfc2l6ZSkpOworICAgIGRlYnVnX3ByaW50KHNydHBfbW9kX2Flc19nY20sICJr
ZXk6ICAlcyIsCisgICAgICAgICAgICAgICAgc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZyhr
ZXksIGMtPmtleV9zaXplKSk7CiAKICAgICBzd2l0Y2ggKGMtPmtleV9zaXplKSB7CiAgICAgY2Fz
ZSBTUlRQX0FFU18yNTZfS0VZX0xFTjoKQEAgLTIwNywzNSArMjAwLDMyIEBAIHN0YXRpYyBzcnRw
X2Vycl9zdGF0dXNfdCBzcnRwX2Flc19nY21fb3BlbnNzbF9jb250ZXh0X2luaXQgKHZvaWQqIGN2
LCBjb25zdCB1aW50CiAgICAgcmV0dXJuIChzcnRwX2Vycl9zdGF0dXNfb2spOwogfQogCi0KIC8q
CiAgKiBhZXNfZ2NtX29wZW5zc2xfc2V0X2l2KGMsIGl2KSBzZXRzIHRoZSBjb3VudGVyIHZhbHVl
IHRvIHRoZSBleG9yIG9mIGl2IHdpdGgKICAqIHRoZSBvZmZzZXQKICAqLwotc3RhdGljIHNydHBf
ZXJyX3N0YXR1c190IHNydHBfYWVzX2djbV9vcGVuc3NsX3NldF9pdiAodm9pZCAqY3YsIHVpbnQ4
X3QgKml2LCBzcnRwX2NpcGhlcl9kaXJlY3Rpb25fdCBkaXJlY3Rpb24pCitzdGF0aWMgc3J0cF9l
cnJfc3RhdHVzX3Qgc3J0cF9hZXNfZ2NtX29wZW5zc2xfc2V0X2l2KAorICAgIHZvaWQgKmN2LAor
ICAgIHVpbnQ4X3QgKml2LAorICAgIHNydHBfY2lwaGVyX2RpcmVjdGlvbl90IGRpcmVjdGlvbikK
IHsKICAgICBzcnRwX2Flc19nY21fY3R4X3QgKmMgPSAoc3J0cF9hZXNfZ2NtX2N0eF90ICopY3Y7
CiAKLSAgICBpZiAoZGlyZWN0aW9uICE9IHNydHBfZGlyZWN0aW9uX2VuY3J5cHQgJiYgZGlyZWN0
aW9uICE9IHNydHBfZGlyZWN0aW9uX2RlY3J5cHQpIHsKKyAgICBpZiAoZGlyZWN0aW9uICE9IHNy
dHBfZGlyZWN0aW9uX2VuY3J5cHQgJiYKKyAgICAgICAgZGlyZWN0aW9uICE9IHNydHBfZGlyZWN0
aW9uX2RlY3J5cHQpIHsKICAgICAgICAgcmV0dXJuIChzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFt
KTsKICAgICB9CiAgICAgYy0+ZGlyID0gZGlyZWN0aW9uOwogCi0gICAgZGVidWdfcHJpbnQoc3J0
cF9tb2RfYWVzX2djbSwgInNldHRpbmcgaXY6ICVzIiwgdjEyOF9oZXhfc3RyaW5nKCh2MTI4X3Qq
KWl2KSk7CisgICAgZGVidWdfcHJpbnQoc3J0cF9tb2RfYWVzX2djbSwgInNldHRpbmcgaXY6ICVz
IiwKKyAgICAgICAgICAgICAgICB2MTI4X2hleF9zdHJpbmcoKHYxMjhfdCAqKWl2KSk7CiAKLSAg
ICBpZiAoIUVWUF9DaXBoZXJJbml0X2V4KGMtPmN0eCwgTlVMTCwgTlVMTCwgTlVMTCwKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIChjLT5kaXIgPT0gc3J0cF9kaXJlY3Rpb25fZW5j
cnlwdCA/IDEgOiAwKSkpIHsKLSAgICAgICAgcmV0dXJuIChzcnRwX2Vycl9zdGF0dXNfaW5pdF9m
YWlsKTsKLSAgICB9Ci0KLSAgICAvKiBzZXQgSVYgbGVuICBhbmQgdGhlIElWIHZhbHVlLCB0aGUg
Zm9sbG93aW9uZyAzIGNhbGxzIGFyZSByZXF1aXJlZCAqLwogICAgIGlmICghRVZQX0NJUEhFUl9D
VFhfY3RybChjLT5jdHgsIEVWUF9DVFJMX0dDTV9TRVRfSVZMRU4sIDEyLCAwKSkgewogICAgICAg
ICByZXR1cm4gKHNydHBfZXJyX3N0YXR1c19pbml0X2ZhaWwpOwogICAgIH0KLSAgICBpZiAoIUVW
UF9DSVBIRVJfQ1RYX2N0cmwoYy0+Y3R4LCBFVlBfQ1RSTF9HQ01fU0VUX0lWX0ZJWEVELCAtMSwg
KHZvaWQqKWl2KSkgewotICAgICAgICByZXR1cm4gKHNydHBfZXJyX3N0YXR1c19pbml0X2ZhaWwp
OwotICAgIH0KLSAgICBpZiAoIUVWUF9DSVBIRVJfQ1RYX2N0cmwoYy0+Y3R4LCBFVlBfQ1RSTF9H
Q01fSVZfR0VOLCAwLCAodm9pZCopaXYpKSB7CisKKyAgICBpZiAoIUVWUF9DaXBoZXJJbml0X2V4
KGMtPmN0eCwgTlVMTCwgTlVMTCwgTlVMTCwgaXYsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAoYy0+ZGlyID09IHNydHBfZGlyZWN0aW9uX2VuY3J5cHQgPyAxIDogMCkpKSB7CiAgICAgICAg
IHJldHVybiAoc3J0cF9lcnJfc3RhdHVzX2luaXRfZmFpbCk7CiAgICAgfQogCkBAIC0yNTAsNyAr
MjQwLDkgQEAgc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfYWVzX2djbV9vcGVuc3NsX3Nl
dF9pdiAodm9pZCAqY3YsIHVpbnQ4X3QgKml2LCBzcnQKICAqCWFhZAlBZGRpdGlvbmFsIGRhdGEg
dG8gcHJvY2VzcyBmb3IgQUVBRCBjaXBoZXIgc3VpdGVzCiAgKglhYWRfbGVuCWxlbmd0aCBvZiBh
YWQgYnVmZmVyCiAgKi8KLXN0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2Flc19nY21fb3Bl
bnNzbF9zZXRfYWFkICh2b2lkICpjdiwgY29uc3QgdWludDhfdCAqYWFkLCB1aW50MzJfdCBhYWRf
bGVuKQorc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfYWVzX2djbV9vcGVuc3NsX3NldF9h
YWQodm9pZCAqY3YsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBjb25zdCB1aW50OF90ICphYWQsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBhYWRfbGVuKQogewogICAgIHNy
dHBfYWVzX2djbV9jdHhfdCAqYyA9IChzcnRwX2Flc19nY21fY3R4X3QgKiljdjsKICAgICBpbnQg
cnY7CkBAIC0yNjIsOCArMjU0LDggQEAgc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfYWVz
X2djbV9vcGVuc3NsX3NldF9hYWQgKHZvaWQgKmN2LCBjb25zdCB1aW50OF90ICoKIAogICAgIC8q
CiAgICAgICogT3BlblNTTCBuZXZlciB3cml0ZSB0byBhZGRyZXNzIHBvaW50ZWQgYnkgdGhlIGxh
c3QgcGFyYW1ldGVyIG9mCi0gICAgICogRVZQX0NJUEhFUl9DVFhfY3RybCB3aGlsZSBFVlBfQ1RS
TF9HQ01fU0VUX1RBRyAoaW4gcmVhbGl0eSwgCi0gICAgICogT3BlblNTTCBjb3B5IGl0cyBjb250
ZW50IHRvIHRoZSBjb250ZXh0KSwgc28gd2UgY2FuIG1ha2UgCisgICAgICogRVZQX0NJUEhFUl9D
VFhfY3RybCB3aGlsZSBFVlBfQ1RSTF9HQ01fU0VUX1RBRyAoaW4gcmVhbGl0eSwKKyAgICAgKiBP
cGVuU1NMIGNvcHkgaXRzIGNvbnRlbnQgdG8gdGhlIGNvbnRleHQpLCBzbyB3ZSBjYW4gbWFrZQog
ICAgICAqIGFhZCByZWFkLW9ubHkgaW4gdGhpcyBmdW5jdGlvbiBhbmQgYWxsIGl0cyB3cmFwcGVy
cy4KICAgICAgKi8KICAgICB1bnNpZ25lZCBjaGFyIGR1bW15X3RhZ1tHQ01fQVVUSF9UQUdfTEVO
XTsKQEAgLTI4Niw3ICsyNzgsOSBAQCBzdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9hZXNf
Z2NtX29wZW5zc2xfc2V0X2FhZCAodm9pZCAqY3YsIGNvbnN0IHVpbnQ4X3QgKgogICoJYnVmCWRh
dGEgdG8gZW5jcnlwdAogICoJZW5jX2xlbglsZW5ndGggb2YgZW5jcnlwdCBidWZmZXIKICAqLwot
c3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfYWVzX2djbV9vcGVuc3NsX2VuY3J5cHQgKHZv
aWQgKmN2LCB1bnNpZ25lZCBjaGFyICpidWYsIHVuc2lnbmVkIGludCAqZW5jX2xlbikKK3N0YXRp
YyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2Flc19nY21fb3BlbnNzbF9lbmNyeXB0KHZvaWQgKmN2
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
dW5zaWduZWQgY2hhciAqYnVmLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50ICplbmNfbGVuKQogewogICAgIHNydHBfYWVz
X2djbV9jdHhfdCAqYyA9IChzcnRwX2Flc19nY21fY3R4X3QgKiljdjsKICAgICBpZiAoYy0+ZGly
ICE9IHNydHBfZGlyZWN0aW9uX2VuY3J5cHQgJiYgYy0+ZGlyICE9IHNydHBfZGlyZWN0aW9uX2Rl
Y3J5cHQpIHsKQEAgLTMxMiw3ICszMDYsOSBAQCBzdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0
cF9hZXNfZ2NtX29wZW5zc2xfZW5jcnlwdCAodm9pZCAqY3YsIHVuc2lnbmVkIGNoYXIgKgogICoJ
YnVmCWRhdGEgdG8gZW5jcnlwdAogICoJbGVuCWxlbmd0aCBvZiBlbmNyeXB0IGJ1ZmZlcgogICov
Ci1zdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9hZXNfZ2NtX29wZW5zc2xfZ2V0X3RhZyAo
dm9pZCAqY3YsIHVpbnQ4X3QgKmJ1ZiwgdWludDMyX3QgKmxlbikKK3N0YXRpYyBzcnRwX2Vycl9z
dGF0dXNfdCBzcnRwX2Flc19nY21fb3BlbnNzbF9nZXRfdGFnKHZvaWQgKmN2LAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDhfdCAqYnVm
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
dWludDMyX3QgKmxlbikKIHsKICAgICBzcnRwX2Flc19nY21fY3R4X3QgKmMgPSAoc3J0cF9hZXNf
Z2NtX2N0eF90ICopY3Y7CiAgICAgLyoKQEAgLTMzMyw3ICszMjksNiBAQCBzdGF0aWMgc3J0cF9l
cnJfc3RhdHVzX3Qgc3J0cF9hZXNfZ2NtX29wZW5zc2xfZ2V0X3RhZyAodm9pZCAqY3YsIHVpbnQ4
X3QgKmJ1ZiwgdQogICAgIHJldHVybiAoc3J0cF9lcnJfc3RhdHVzX29rKTsKIH0KIAotCiAvKgog
ICogVGhpcyBmdW5jdGlvbiBkZWNyeXB0cyBhIGJ1ZmZlciB1c2luZyBBRVMgR0NNIG1vZGUKICAq
CkBAIC0zNDIsNyArMzM3LDkgQEAgc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfYWVzX2dj
bV9vcGVuc3NsX2dldF90YWcgKHZvaWQgKmN2LCB1aW50OF90ICpidWYsIHUKICAqCWJ1ZglkYXRh
IHRvIGVuY3J5cHQKICAqCWVuY19sZW4JbGVuZ3RoIG9mIGVuY3J5cHQgYnVmZmVyCiAgKi8KLXN0
YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2Flc19nY21fb3BlbnNzbF9kZWNyeXB0ICh2b2lk
ICpjdiwgdW5zaWduZWQgY2hhciAqYnVmLCB1bnNpZ25lZCBpbnQgKmVuY19sZW4pCitzdGF0aWMg
c3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9hZXNfZ2NtX29wZW5zc2xfZGVjcnlwdCh2b2lkICpjdiwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVu
c2lnbmVkIGNoYXIgKmJ1ZiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCAqZW5jX2xlbikKIHsKICAgICBzcnRwX2Flc19n
Y21fY3R4X3QgKmMgPSAoc3J0cF9hZXNfZ2NtX2N0eF90ICopY3Y7CiAgICAgaWYgKGMtPmRpciAh
PSBzcnRwX2RpcmVjdGlvbl9lbmNyeXB0ICYmIGMtPmRpciAhPSBzcnRwX2RpcmVjdGlvbl9kZWNy
eXB0KSB7CkBAIC0zNzIsMzIgKzM2OSwzNiBAQCBzdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0
cF9hZXNfZ2NtX29wZW5zc2xfZGVjcnlwdCAodm9pZCAqY3YsIHVuc2lnbmVkIGNoYXIgKgogICAg
IHJldHVybiAoc3J0cF9lcnJfc3RhdHVzX29rKTsKIH0KIAotCi0KIC8qCiAgKiBOYW1lIG9mIHRo
aXMgY3J5cHRvIGVuZ2luZQogICovCi1zdGF0aWMgY29uc3QgY2hhciBzcnRwX2Flc19nY21fMTI4
X29wZW5zc2xfZGVzY3JpcHRpb25bXSA9ICJBRVMtMTI4IEdDTSB1c2luZyBvcGVuc3NsIjsKLXN0
YXRpYyBjb25zdCBjaGFyIHNydHBfYWVzX2djbV8yNTZfb3BlbnNzbF9kZXNjcmlwdGlvbltdID0g
IkFFUy0yNTYgR0NNIHVzaW5nIG9wZW5zc2wiOwotCitzdGF0aWMgY29uc3QgY2hhciBzcnRwX2Fl
c19nY21fMTI4X29wZW5zc2xfZGVzY3JpcHRpb25bXSA9CisgICAgIkFFUy0xMjggR0NNIHVzaW5n
IG9wZW5zc2wiOworc3RhdGljIGNvbnN0IGNoYXIgc3J0cF9hZXNfZ2NtXzI1Nl9vcGVuc3NsX2Rl
c2NyaXB0aW9uW10gPQorICAgICJBRVMtMjU2IEdDTSB1c2luZyBvcGVuc3NsIjsKIAogLyoKICAq
IEtBVCB2YWx1ZXMgZm9yIEFFUyBzZWxmLXRlc3QuICBUaGVzZQogICogdmFsdWVzIHdlJ3JlIGRl
cml2ZWQgZnJvbSBpbmRlcGVuZGVudCB0ZXN0IGNvZGUKICAqIHVzaW5nIE9wZW5TU0wuCiAgKi8K
Ky8qIGNsYW5nLWZvcm1hdCBvZmYgKi8KIHN0YXRpYyBjb25zdCB1aW50OF90IHNydHBfYWVzX2dj
bV90ZXN0X2Nhc2VfMF9rZXlbU1JUUF9BRVNfR0NNXzEyOF9LRVlfTEVOX1dTQUxUXSA9IHsKICAg
ICAweGZlLCAweGZmLCAweGU5LCAweDkyLCAweDg2LCAweDY1LCAweDczLCAweDFjLAogICAgIDB4
NmQsIDB4NmEsIDB4OGYsIDB4OTQsIDB4NjcsIDB4MzAsIDB4ODMsIDB4MDgsCiAgICAgMHgwMSwg
MHgwMiwgMHgwMywgMHgwNCwgMHgwNSwgMHgwNiwgMHgwNywgMHgwOCwKICAgICAweDA5LCAweDBh
LCAweDBiLCAweDBjLAogfTsKKy8qIGNsYW5nLWZvcm1hdCBvbiAqLwogCisvKiBjbGFuZy1mb3Jt
YXQgb2ZmICovCiBzdGF0aWMgdWludDhfdCBzcnRwX2Flc19nY21fdGVzdF9jYXNlXzBfaXZbMTJd
ID0gewogICAgIDB4Y2EsIDB4ZmUsIDB4YmEsIDB4YmUsIDB4ZmEsIDB4Y2UsIDB4ZGIsIDB4YWQs
CiAgICAgMHhkZSwgMHhjYSwgMHhmOCwgMHg4OAogfTsKKy8qIGNsYW5nLWZvcm1hdCBvbiAqLwog
CisvKiBjbGFuZy1mb3JtYXQgb2ZmICovCiBzdGF0aWMgY29uc3QgdWludDhfdCBzcnRwX2Flc19n
Y21fdGVzdF9jYXNlXzBfcGxhaW50ZXh0WzYwXSA9ICB7CiAgICAgMHhkOSwgMHgzMSwgMHgzMiwg
MHgyNSwgMHhmOCwgMHg4NCwgMHgwNiwgMHhlNSwKICAgICAweGE1LCAweDU5LCAweDA5LCAweGM1
LCAweGFmLCAweGY1LCAweDI2LCAweDlhLApAQCAtNDA5LDEyICs0MTAsMTUgQEAgc3RhdGljIGNv
bnN0IHVpbnQ4X3Qgc3J0cF9hZXNfZ2NtX3Rlc3RfY2FzZV8wX3BsYWludGV4dFs2MF0gPSAgewog
ICAgIDB4YmEsIDB4NjMsIDB4N2IsIDB4MzkKIH07CiAKKy8qIGNsYW5nLWZvcm1hdCBvZmYgKi8K
IHN0YXRpYyBjb25zdCB1aW50OF90IHNydHBfYWVzX2djbV90ZXN0X2Nhc2VfMF9hYWRbMjBdID0g
ewogICAgIDB4ZmUsIDB4ZWQsIDB4ZmEsIDB4Y2UsIDB4ZGUsIDB4YWQsIDB4YmUsIDB4ZWYsCiAg
ICAgMHhmZSwgMHhlZCwgMHhmYSwgMHhjZSwgMHhkZSwgMHhhZCwgMHhiZSwgMHhlZiwKICAgICAw
eGFiLCAweGFkLCAweGRhLCAweGQyCiB9OworLyogY2xhbmctZm9ybWF0IG9uICovCiAKKy8qIGNs
YW5nLWZvcm1hdCBvZmYgKi8KIHN0YXRpYyBjb25zdCB1aW50OF90IHNydHBfYWVzX2djbV90ZXN0
X2Nhc2VfMF9jaXBoZXJ0ZXh0Wzc2XSA9IHsKICAgICAweDQyLCAweDgzLCAweDFlLCAweGMyLCAw
eDIxLCAweDc3LCAweDc0LCAweDI0LAogICAgIDB4NGIsIDB4NzIsIDB4MjEsIDB4YjcsIDB4ODQs
IDB4ZDAsIDB4ZDQsIDB4OWMsCkBAIC00MjgsNiArNDMyLDcgQEAgc3RhdGljIGNvbnN0IHVpbnQ4
X3Qgc3J0cF9hZXNfZ2NtX3Rlc3RfY2FzZV8wX2NpcGhlcnRleHRbNzZdID0gewogICAgIDB4NWIs
IDB4YzksIDB4NGYsIDB4YmMsIDB4MzIsIDB4MjEsIDB4YTUsIDB4ZGIsCiAgICAgMHg5NCwgMHhm
YSwgMHhlOSwgMHg1YSwgMHhlNywgMHgxMiwgMHgxYSwgMHg0NywKIH07CisvKiBjbGFuZy1mb3Jt
YXQgb24gKi8KIAogc3RhdGljIGNvbnN0IHNydHBfY2lwaGVyX3Rlc3RfY2FzZV90IHNydHBfYWVz
X2djbV90ZXN0X2Nhc2VfMGEgPSB7CiAgICAgU1JUUF9BRVNfR0NNXzEyOF9LRVlfTEVOX1dTQUxU
LCAgICAgIC8qIG9jdGV0cyBpbiBrZXkgICAgICAgICAgICAqLwpAQCAtNDM5LDcgKzQ0NCw3IEBA
IHN0YXRpYyBjb25zdCBzcnRwX2NpcGhlcl90ZXN0X2Nhc2VfdCBzcnRwX2Flc19nY21fdGVzdF9j
YXNlXzBhID0gewogICAgIHNydHBfYWVzX2djbV90ZXN0X2Nhc2VfMF9jaXBoZXJ0ZXh0LCAvKiBj
aXBoZXJ0ZXh0ICArIHRhZyAgICAgICAgKi8KICAgICAyMCwgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgLyogb2N0ZXRzIGluIEFBRCAgICAgICAgICAgICovCiAgICAgc3J0cF9hZXNf
Z2NtX3Rlc3RfY2FzZV8wX2FhZCwgICAgICAgIC8qIEFBRCAgICAgICAgICAgICAgICAgICAgICAq
LwotICAgIEdDTV9BVVRIX1RBR19MRU5fOCwKKyAgICBHQ01fQVVUSF9UQUdfTEVOXzgsICAgICAg
ICAgICAgICAgICAgLyogKi8KICAgICBOVUxMICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgLyogcG9pbnRlciB0byBuZXh0IHRlc3RjYXNlICovCiB9OwogCkBAIC00NTMsMTAgKzQ1OCwx
MSBAQCBzdGF0aWMgY29uc3Qgc3J0cF9jaXBoZXJfdGVzdF9jYXNlX3Qgc3J0cF9hZXNfZ2NtX3Rl
c3RfY2FzZV8wID0gewogICAgIHNydHBfYWVzX2djbV90ZXN0X2Nhc2VfMF9jaXBoZXJ0ZXh0LCAv
KiBjaXBoZXJ0ZXh0ICArIHRhZyAgICAgICAgKi8KICAgICAyMCwgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyogb2N0ZXRzIGluIEFBRCAgICAgICAgICAgICovCiAgICAgc3J0cF9h
ZXNfZ2NtX3Rlc3RfY2FzZV8wX2FhZCwgICAgICAgIC8qIEFBRCAgICAgICAgICAgICAgICAgICAg
ICAqLwotICAgIEdDTV9BVVRIX1RBR19MRU4sCisgICAgR0NNX0FVVEhfVEFHX0xFTiwgICAgICAg
ICAgICAgICAgICAgIC8qICovCiAgICAgJnNydHBfYWVzX2djbV90ZXN0X2Nhc2VfMGEgICAgICAg
ICAgIC8qIHBvaW50ZXIgdG8gbmV4dCB0ZXN0Y2FzZSAqLwogfTsKIAorLyogY2xhbmctZm9ybWF0
IG9mZiAqLwogc3RhdGljIGNvbnN0IHVpbnQ4X3Qgc3J0cF9hZXNfZ2NtX3Rlc3RfY2FzZV8xX2tl
eVtTUlRQX0FFU19HQ01fMjU2X0tFWV9MRU5fV1NBTFRdID0gewogICAgIDB4ZmUsIDB4ZmYsIDB4
ZTksIDB4OTIsIDB4ODYsIDB4NjUsIDB4NzMsIDB4MWMsCiAgICAgMHhhNSwgMHg1OSwgMHgwOSwg
MHhjNSwgMHg1NCwgMHg2NiwgMHg5MywgMHgxYywKQEAgLTQ2NCwxNCArNDcwLDE3IEBAIHN0YXRp
YyBjb25zdCB1aW50OF90IHNydHBfYWVzX2djbV90ZXN0X2Nhc2VfMV9rZXlbU1JUUF9BRVNfR0NN
XzI1Nl9LRVlfTEVOX1dTQUxUCiAgICAgMHg2ZCwgMHg2YSwgMHg4ZiwgMHg5NCwgMHg2NywgMHgz
MCwgMHg4MywgMHgwOCwKICAgICAweDAxLCAweDAyLCAweDAzLCAweDA0LCAweDA1LCAweDA2LCAw
eDA3LCAweDA4LAogICAgIDB4MDksIDB4MGEsIDB4MGIsIDB4MGMsCi0KIH07CisvKiBjbGFuZy1m
b3JtYXQgb24gKi8KIAorLyogY2xhbmctZm9ybWF0IG9mZiAqLwogc3RhdGljIHVpbnQ4X3Qgc3J0
cF9hZXNfZ2NtX3Rlc3RfY2FzZV8xX2l2WzEyXSA9IHsKICAgICAweGNhLCAweGZlLCAweGJhLCAw
eGJlLCAweGZhLCAweGNlLCAweGRiLCAweGFkLAogICAgIDB4ZGUsIDB4Y2EsIDB4ZjgsIDB4ODgK
IH07CisvKiBjbGFuZy1mb3JtYXQgb24gKi8KIAorLyogY2xhbmctZm9ybWF0IG9mZiAqLwogc3Rh
dGljIGNvbnN0IHVpbnQ4X3Qgc3J0cF9hZXNfZ2NtX3Rlc3RfY2FzZV8xX3BsYWludGV4dFs2MF0g
PSAgewogICAgIDB4ZDksIDB4MzEsIDB4MzIsIDB4MjUsIDB4ZjgsIDB4ODQsIDB4MDYsIDB4ZTUs
CiAgICAgMHhhNSwgMHg1OSwgMHgwOSwgMHhjNSwgMHhhZiwgMHhmNSwgMHgyNiwgMHg5YSwKQEAg
LTQ4MiwxMyArNDkxLDE3IEBAIHN0YXRpYyBjb25zdCB1aW50OF90IHNydHBfYWVzX2djbV90ZXN0
X2Nhc2VfMV9wbGFpbnRleHRbNjBdID0gIHsKICAgICAweGIxLCAweDZhLCAweGVkLCAweGY1LCAw
eGFhLCAweDBkLCAweGU2LCAweDU3LAogICAgIDB4YmEsIDB4NjMsIDB4N2IsIDB4MzkKIH07Cisv
KiBjbGFuZy1mb3JtYXQgb24gKi8KIAorLyogY2xhbmctZm9ybWF0IG9mZiAqLwogc3RhdGljIGNv
bnN0IHVpbnQ4X3Qgc3J0cF9hZXNfZ2NtX3Rlc3RfY2FzZV8xX2FhZFsyMF0gPSB7CiAgICAgMHhm
ZSwgMHhlZCwgMHhmYSwgMHhjZSwgMHhkZSwgMHhhZCwgMHhiZSwgMHhlZiwKICAgICAweGZlLCAw
eGVkLCAweGZhLCAweGNlLCAweGRlLCAweGFkLCAweGJlLCAweGVmLAogICAgIDB4YWIsIDB4YWQs
IDB4ZGEsIDB4ZDIKIH07CisvKiBjbGFuZy1mb3JtYXQgb24gKi8KIAorLyogY2xhbmctZm9ybWF0
IG9mZiAqLwogc3RhdGljIGNvbnN0IHVpbnQ4X3Qgc3J0cF9hZXNfZ2NtX3Rlc3RfY2FzZV8xX2Np
cGhlcnRleHRbNzZdID0gewogICAgIDB4MGIsIDB4MTEsIDB4Y2YsIDB4YWYsIDB4NjgsIDB4NGQs
IDB4YWUsIDB4NDYsCiAgICAgMHhjNywgMHg5MCwgMHhiOCwgMHg4ZSwgMHhiNywgMHg2YSwgMHg3
NiwgMHgyYSwKQEAgLTUwMiw2ICs1MTUsNyBAQCBzdGF0aWMgY29uc3QgdWludDhfdCBzcnRwX2Fl
c19nY21fdGVzdF9jYXNlXzFfY2lwaGVydGV4dFs3Nl0gPSB7CiAgICAgMHg0NSwgMHhiYywgMHgw
MywgMHhlNiwgMHhlMSwgMHhhYywgMHgwYSwgMHg5ZiwKICAgICAweDgxLCAweGNiLCAweDhlLCAw
eDViLCAweDQ2LCAweDY1LCAweDYzLCAweDFkLAogfTsKKy8qIGNsYW5nLWZvcm1hdCBvbiAqLwog
CiBzdGF0aWMgY29uc3Qgc3J0cF9jaXBoZXJfdGVzdF9jYXNlX3Qgc3J0cF9hZXNfZ2NtX3Rlc3Rf
Y2FzZV8xYSA9IHsKICAgICBTUlRQX0FFU19HQ01fMjU2X0tFWV9MRU5fV1NBTFQsICAgICAgLyog
b2N0ZXRzIGluIGtleSAgICAgICAgICAgICovCkBAIC01MTMsNyArNTI3LDcgQEAgc3RhdGljIGNv
bnN0IHNydHBfY2lwaGVyX3Rlc3RfY2FzZV90IHNydHBfYWVzX2djbV90ZXN0X2Nhc2VfMWEgPSB7
CiAgICAgc3J0cF9hZXNfZ2NtX3Rlc3RfY2FzZV8xX2NpcGhlcnRleHQsIC8qIGNpcGhlcnRleHQg
ICsgdGFnICAgICAgICAqLwogICAgIDIwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAvKiBvY3RldHMgaW4gQUFEICAgICAgICAgICAgKi8KICAgICBzcnRwX2Flc19nY21fdGVzdF9j
YXNlXzFfYWFkLCAgICAgICAgLyogQUFEICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgR0NN
X0FVVEhfVEFHX0xFTl84LAorICAgIEdDTV9BVVRIX1RBR19MRU5fOCwgICAgICAgICAgICAgICAg
ICAvKiAqLwogICAgIE5VTEwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBwb2lu
dGVyIHRvIG5leHQgdGVzdGNhc2UgKi8KIH07CiAKQEAgLTUyNyw3ICs1NDEsNyBAQCBzdGF0aWMg
Y29uc3Qgc3J0cF9jaXBoZXJfdGVzdF9jYXNlX3Qgc3J0cF9hZXNfZ2NtX3Rlc3RfY2FzZV8xID0g
ewogICAgIHNydHBfYWVzX2djbV90ZXN0X2Nhc2VfMV9jaXBoZXJ0ZXh0LCAvKiBjaXBoZXJ0ZXh0
ICArIHRhZyAgICAgICAgKi8KICAgICAyMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgLyogb2N0ZXRzIGluIEFBRCAgICAgICAgICAgICovCiAgICAgc3J0cF9hZXNfZ2NtX3Rlc3Rf
Y2FzZV8xX2FhZCwgICAgICAgIC8qIEFBRCAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIEdD
TV9BVVRIX1RBR19MRU4sCisgICAgR0NNX0FVVEhfVEFHX0xFTiwgICAgICAgICAgICAgICAgICAg
IC8qICovCiAgICAgJnNydHBfYWVzX2djbV90ZXN0X2Nhc2VfMWEgICAgICAgICAgIC8qIHBvaW50
ZXIgdG8gbmV4dCB0ZXN0Y2FzZSAqLwogfTsKIApAQCAtNTY0LDQgKzU3OCwzIEBAIGNvbnN0IHNy
dHBfY2lwaGVyX3R5cGVfdCBzcnRwX2Flc19nY21fMjU2X29wZW5zc2wgPSB7CiAgICAgJnNydHBf
YWVzX2djbV90ZXN0X2Nhc2VfMSwKICAgICBTUlRQX0FFU19HQ01fMjU2CiB9OwotCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNy
dHAvY3J5cHRvL2NpcGhlci9hZXNfaWNtX29zc2wuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vY2lwaGVyL2Flc19pY21fb3Nz
bC5jCmluZGV4IDI1YjQzMWZhZGQwNjRmNzhmOTliYWVlNTY2ZTk5OTFiMDI4OGZlY2QuLmI1OTE4
OTc2MjNiYjE2N2IxYjlhOTM1YWU4NmNjMmVkZDg2YmVlMTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vY2lw
aGVyL2Flc19pY21fb3NzbC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vY2lwaGVyL2Flc19pY21fb3NzbC5jCkBAIC00
OSwyMyArNDksMjAgQEAKICAqLwogCiAjaWZkZWYgSEFWRV9DT05GSUdfSAotICAgICNpbmNsdWRl
IDxjb25maWcuaD4KKyNpbmNsdWRlIDxjb25maWcuaD4KICNlbmRpZgogCiAjaW5jbHVkZSA8b3Bl
bnNzbC9ldnAuaD4KICNpbmNsdWRlICJhZXNfaWNtX29zc2wuaCIKICNpbmNsdWRlICJjcnlwdG9f
dHlwZXMuaCIKLSNpbmNsdWRlICJlcnIuaCIgICAgICAgICAgICAgICAgLyogZm9yIHNydHBfZGVi
dWcgKi8KKyNpbmNsdWRlICJlcnIuaCIgLyogZm9yIHNydHBfZGVidWcgKi8KICNpbmNsdWRlICJh
bGxvYy5oIgotCisjaW5jbHVkZSAiY2lwaGVyX3R5cGVzLmgiCiAKIHNydHBfZGVidWdfbW9kdWxl
X3Qgc3J0cF9tb2RfYWVzX2ljbSA9IHsKLSAgICAwLCAgICAgICAgICAgICAgIC8qIGRlYnVnZ2lu
ZyBpcyBvZmYgYnkgZGVmYXVsdCAqLwotICAgICJhZXMgaWNtIG9zc2wiICAgLyogcHJpbnRhYmxl
IG1vZHVsZSBuYW1lICAgICAgICovCisgICAgMCwgICAgICAgICAgICAgLyogZGVidWdnaW5nIGlz
IG9mZiBieSBkZWZhdWx0ICovCisgICAgImFlcyBpY20gb3NzbCIgLyogcHJpbnRhYmxlIG1vZHVs
ZSBuYW1lICAgICAgICovCiB9OwotZXh0ZXJuIGNvbnN0IHNydHBfY2lwaGVyX3R5cGVfdCBzcnRw
X2Flc19pY21fMTI4OwotZXh0ZXJuIGNvbnN0IHNydHBfY2lwaGVyX3R5cGVfdCBzcnRwX2Flc19p
Y21fMTkyOwotZXh0ZXJuIGNvbnN0IHNydHBfY2lwaGVyX3R5cGVfdCBzcnRwX2Flc19pY21fMjU2
OwogCiAvKgogICogaW50ZWdlciBjb3VudGVyIG1vZGUgd29ya3MgYXMgZm9sbG93czoKQEAgLTEw
OSwxNiArMTA2LDIwIEBAIGV4dGVybiBjb25zdCBzcnRwX2NpcGhlcl90eXBlX3Qgc3J0cF9hZXNf
aWNtXzI1NjsKICAqIHZhbHVlLiAgVGhlIHRsZW4gYXJndW1lbnQgaXMgZm9yIHRoZSBBRUFEIHRh
ZyBsZW5ndGgsIHdoaWNoCiAgKiBpc24ndCB1c2VkIGluIGNvdW50ZXIgbW9kZS4KICAqLwotc3Rh
dGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfYWVzX2ljbV9vcGVuc3NsX2FsbG9jIChzcnRwX2Np
cGhlcl90ICoqYywgaW50IGtleV9sZW4sIGludCB0bGVuKQorc3RhdGljIHNydHBfZXJyX3N0YXR1
c190IHNydHBfYWVzX2ljbV9vcGVuc3NsX2FsbG9jKHNydHBfY2lwaGVyX3QgKipjLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBrZXlfbGVu
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlu
dCB0bGVuKQogewogICAgIHNydHBfYWVzX2ljbV9jdHhfdCAqaWNtOwogCi0gICAgZGVidWdfcHJp
bnQoc3J0cF9tb2RfYWVzX2ljbSwgImFsbG9jYXRpbmcgY2lwaGVyIHdpdGgga2V5IGxlbmd0aCAl
ZCIsIGtleV9sZW4pOworICAgIGRlYnVnX3ByaW50KHNydHBfbW9kX2Flc19pY20sICJhbGxvY2F0
aW5nIGNpcGhlciB3aXRoIGtleSBsZW5ndGggJWQiLAorICAgICAgICAgICAgICAgIGtleV9sZW4p
OwogCiAgICAgLyoKICAgICAgKiBWZXJpZnkgdGhlIGtleV9sZW4gaXMgdmFsaWQgZm9yIG9uZSBv
ZjogQUVTLTEyOC8xOTIvMjU2CiAgICAgICovCi0gICAgaWYgKGtleV9sZW4gIT0gU1JUUF9BRVNf
SUNNXzEyOF9LRVlfTEVOX1dTQUxUICYmIGtleV9sZW4gIT0gU1JUUF9BRVNfSUNNXzE5Ml9LRVlf
TEVOX1dTQUxUICYmCisgICAgaWYgKGtleV9sZW4gIT0gU1JUUF9BRVNfSUNNXzEyOF9LRVlfTEVO
X1dTQUxUICYmCisgICAgICAgIGtleV9sZW4gIT0gU1JUUF9BRVNfSUNNXzE5Ml9LRVlfTEVOX1dT
QUxUICYmCiAgICAgICAgIGtleV9sZW4gIT0gU1JUUF9BRVNfSUNNXzI1Nl9LRVlfTEVOX1dTQUxU
KSB7CiAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtOwogICAgIH0KQEAg
LTEyOCwxNSArMTI5LDEzIEBAIHN0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2Flc19pY21f
b3BlbnNzbF9hbGxvYyAoc3J0cF9jaXBoZXJfdCAqKmMsIGludCBrZXlfCiAgICAgaWYgKCpjID09
IE5VTEwpIHsKICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19hbGxvY19mYWlsOwogICAg
IH0KLSAgICBtZW1zZXQoKmMsIDB4MCwgc2l6ZW9mKHNydHBfY2lwaGVyX3QpKTsKIAogICAgIGlj
bSA9IChzcnRwX2Flc19pY21fY3R4X3QgKilzcnRwX2NyeXB0b19hbGxvYyhzaXplb2Yoc3J0cF9h
ZXNfaWNtX2N0eF90KSk7CiAgICAgaWYgKGljbSA9PSBOVUxMKSB7Ci0Jc3J0cF9jcnlwdG9fZnJl
ZSgqYyk7Ci0JKmMgPSBOVUxMOworICAgICAgICBzcnRwX2NyeXB0b19mcmVlKCpjKTsKKyAgICAg
ICAgKmMgPSBOVUxMOwogICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2FsbG9jX2ZhaWw7
CiAgICAgfQotICAgIG1lbXNldChpY20sIDB4MCwgc2l6ZW9mKHNydHBfYWVzX2ljbV9jdHhfdCkp
OwogCiAgICAgaWNtLT5jdHggPSBFVlBfQ0lQSEVSX0NUWF9uZXcoKTsKICAgICBpZiAoaWNtLT5j
dHggPT0gTlVMTCkgewpAQCAtMTc0LDExICsxNzMsMTAgQEAgc3RhdGljIHNydHBfZXJyX3N0YXR1
c190IHNydHBfYWVzX2ljbV9vcGVuc3NsX2FsbG9jIChzcnRwX2NpcGhlcl90ICoqYywgaW50IGtl
eV8KICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQogCi0KIC8qCiAgKiBUaGlzIGZ1
bmN0aW9uIGRlYWxsb2NhdGVzIGFuIGluc3RhbmNlIG9mIHRoaXMgZW5naW5lCiAgKi8KLXN0YXRp
YyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2Flc19pY21fb3BlbnNzbF9kZWFsbG9jIChzcnRwX2Np
cGhlcl90ICpjKQorc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfYWVzX2ljbV9vcGVuc3Ns
X2RlYWxsb2Moc3J0cF9jaXBoZXJfdCAqYykKIHsKICAgICBzcnRwX2Flc19pY21fY3R4X3QgKmN0
eDsKIApAQCAtMTg5LDcgKzE4Nyw3IEBAIHN0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2Fl
c19pY21fb3BlbnNzbF9kZWFsbG9jIChzcnRwX2NpcGhlcl90ICpjKQogICAgIC8qCiAgICAgICog
RnJlZSB0aGUgRVZQIGNvbnRleHQKICAgICAgKi8KLSAgICBjdHggPSAoc3J0cF9hZXNfaWNtX2N0
eF90KiljLT5zdGF0ZTsKKyAgICBjdHggPSAoc3J0cF9hZXNfaWNtX2N0eF90ICopYy0+c3RhdGU7
CiAgICAgaWYgKGN0eCAhPSBOVUxMKSB7CiAgICAgICAgIEVWUF9DSVBIRVJfQ1RYX2ZyZWUoY3R4
LT5jdHgpOwogICAgICAgICAvKiB6ZXJvaXplIHRoZSBrZXkgbWF0ZXJpYWwgKi8KQEAgLTIxMiw3
ICsyMTAsOCBAQCBzdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9hZXNfaWNtX29wZW5zc2xf
ZGVhbGxvYyAoc3J0cF9jaXBoZXJfdCAqYykKICAqIHRoZSBzYWx0IGlzIHVucHJlZGljdGFibGUg
KGJ1dCBub3QgbmVjZXNzYXJpbHkgc2VjcmV0KSBkYXRhIHdoaWNoCiAgKiByYW5kb21pemVzIHRo
ZSBzdGFydGluZyBwb2ludCBpbiB0aGUga2V5c3RyZWFtCiAgKi8KLXN0YXRpYyBzcnRwX2Vycl9z
dGF0dXNfdCBzcnRwX2Flc19pY21fb3BlbnNzbF9jb250ZXh0X2luaXQgKHZvaWQqIGN2LCBjb25z
dCB1aW50OF90ICprZXkpCitzdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9hZXNfaWNtX29w
ZW5zc2xfY29udGV4dF9pbml0KHZvaWQgKmN2LAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB1aW50OF90ICprZXkpCiB7CiAg
ICAgc3J0cF9hZXNfaWNtX2N0eF90ICpjID0gKHNydHBfYWVzX2ljbV9jdHhfdCAqKWN2OwogICAg
IGNvbnN0IEVWUF9DSVBIRVIgKmV2cDsKQEAgLTIzMCw3ICsyMjksOCBAQCBzdGF0aWMgc3J0cF9l
cnJfc3RhdHVzX3Qgc3J0cF9hZXNfaWNtX29wZW5zc2xfY29udGV4dF9pbml0ICh2b2lkKiBjdiwg
Y29uc3QgdWludAogICAgIGMtPm9mZnNldC52OFtTUlRQX1NBTFRfTEVOXSA9IGMtPm9mZnNldC52
OFtTUlRQX1NBTFRfTEVOICsgMV0gPSAwOwogICAgIGMtPmNvdW50ZXIudjhbU1JUUF9TQUxUX0xF
Tl0gPSBjLT5jb3VudGVyLnY4W1NSVFBfU0FMVF9MRU4gKyAxXSA9IDA7CiAKLSAgICBkZWJ1Z19w
cmludChzcnRwX21vZF9hZXNfaWNtLCAia2V5OiAgJXMiLCBzcnRwX29jdGV0X3N0cmluZ19oZXhf
c3RyaW5nKGtleSwgYy0+a2V5X3NpemUpKTsKKyAgICBkZWJ1Z19wcmludChzcnRwX21vZF9hZXNf
aWNtLCAia2V5OiAgJXMiLAorICAgICAgICAgICAgICAgIHNydHBfb2N0ZXRfc3RyaW5nX2hleF9z
dHJpbmcoa2V5LCBjLT5rZXlfc2l6ZSkpOwogICAgIGRlYnVnX3ByaW50KHNydHBfbW9kX2Flc19p
Y20sICJvZmZzZXQ6ICVzIiwgdjEyOF9oZXhfc3RyaW5nKCZjLT5vZmZzZXQpKTsKIAogICAgIHN3
aXRjaCAoYy0+a2V5X3NpemUpIHsKQEAgLTI0OCw4ICsyNDgsNyBAQCBzdGF0aWMgc3J0cF9lcnJf
c3RhdHVzX3Qgc3J0cF9hZXNfaWNtX29wZW5zc2xfY29udGV4dF9pbml0ICh2b2lkKiBjdiwgY29u
c3QgdWludAogICAgICAgICBicmVhazsKICAgICB9CiAKLSAgICBpZiAoIUVWUF9FbmNyeXB0SW5p
dF9leChjLT5jdHgsIGV2cCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCBrZXks
IE5VTEwpKSB7CisgICAgaWYgKCFFVlBfRW5jcnlwdEluaXRfZXgoYy0+Y3R4LCBldnAsIE5VTEws
IGtleSwgTlVMTCkpIHsKICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19mYWlsOwogICAg
IH0gZWxzZSB7CiAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CkBAIC0yNTgsMTIg
KzI1NywxNCBAQCBzdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9hZXNfaWNtX29wZW5zc2xf
Y29udGV4dF9pbml0ICh2b2lkKiBjdiwgY29uc3QgdWludAogICAgIHJldHVybiBzcnRwX2Vycl9z
dGF0dXNfb2s7CiB9CiAKLQogLyoKICAqIGFlc19pY21fc2V0X2l2KGMsIGl2KSBzZXRzIHRoZSBj
b3VudGVyIHZhbHVlIHRvIHRoZSBleG9yIG9mIGl2IHdpdGgKICAqIHRoZSBvZmZzZXQKICAqLwot
c3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfYWVzX2ljbV9vcGVuc3NsX3NldF9pdiAodm9p
ZCAqY3YsIHVpbnQ4X3QgKml2LCBzcnRwX2NpcGhlcl9kaXJlY3Rpb25fdCBkaXIpCitzdGF0aWMg
c3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9hZXNfaWNtX29wZW5zc2xfc2V0X2l2KAorICAgIHZvaWQg
KmN2LAorICAgIHVpbnQ4X3QgKml2LAorICAgIHNydHBfY2lwaGVyX2RpcmVjdGlvbl90IGRpcikK
IHsKICAgICBzcnRwX2Flc19pY21fY3R4X3QgKmMgPSAoc3J0cF9hZXNfaWNtX2N0eF90ICopY3Y7
CiAgICAgdjEyOF90IG5vbmNlOwpAQCAtMjc1LDEwICsyNzYsMTAgQEAgc3RhdGljIHNydHBfZXJy
X3N0YXR1c190IHNydHBfYWVzX2ljbV9vcGVuc3NsX3NldF9pdiAodm9pZCAqY3YsIHVpbnQ4X3Qg
Kml2LCBzcnQKIAogICAgIHYxMjhfeG9yKCZjLT5jb3VudGVyLCAmYy0+b2Zmc2V0LCAmbm9uY2Up
OwogCi0gICAgZGVidWdfcHJpbnQoc3J0cF9tb2RfYWVzX2ljbSwgInNldF9jb3VudGVyOiAlcyIs
IHYxMjhfaGV4X3N0cmluZygmYy0+Y291bnRlcikpOworICAgIGRlYnVnX3ByaW50KHNydHBfbW9k
X2Flc19pY20sICJzZXRfY291bnRlcjogJXMiLAorICAgICAgICAgICAgICAgIHYxMjhfaGV4X3N0
cmluZygmYy0+Y291bnRlcikpOwogCi0gICAgaWYgKCFFVlBfRW5jcnlwdEluaXRfZXgoYy0+Y3R4
LCBOVUxMLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIE5VTEwsIGMtPmNvdW50
ZXIudjgpKSB7CisgICAgaWYgKCFFVlBfRW5jcnlwdEluaXRfZXgoYy0+Y3R4LCBOVUxMLCBOVUxM
LCBOVUxMLCBjLT5jb3VudGVyLnY4KSkgewogICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVz
X2ZhaWw7CiAgICAgfSBlbHNlIHsKICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsK
QEAgLTI5Myw3ICsyOTQsOSBAQCBzdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9hZXNfaWNt
X29wZW5zc2xfc2V0X2l2ICh2b2lkICpjdiwgdWludDhfdCAqaXYsIHNydAogICoJYnVmCWRhdGEg
dG8gZW5jcnlwdAogICoJZW5jX2xlbglsZW5ndGggb2YgZW5jcnlwdCBidWZmZXIKICAqLwotc3Rh
dGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfYWVzX2ljbV9vcGVuc3NsX2VuY3J5cHQgKHZvaWQg
KmN2LCB1bnNpZ25lZCBjaGFyICpidWYsIHVuc2lnbmVkIGludCAqZW5jX2xlbikKK3N0YXRpYyBz
cnRwX2Vycl9zdGF0dXNfdCBzcnRwX2Flc19pY21fb3BlbnNzbF9lbmNyeXB0KHZvaWQgKmN2LAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5z
aWduZWQgY2hhciAqYnVmLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgdW5zaWduZWQgaW50ICplbmNfbGVuKQogewogICAgIHNydHBfYWVzX2lj
bV9jdHhfdCAqYyA9IChzcnRwX2Flc19pY21fY3R4X3QgKiljdjsKICAgICBpbnQgbGVuID0gMDsK
QEAgLTMxNiw1OSArMzE5LDcwIEBAIHN0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2Flc19p
Y21fb3BlbnNzbF9lbmNyeXB0ICh2b2lkICpjdiwgdW5zaWduZWQgY2hhciAqCiAvKgogICogTmFt
ZSBvZiB0aGlzIGNyeXB0byBlbmdpbmUKICAqLwotc3RhdGljIGNvbnN0IGNoYXIgc3J0cF9hZXNf
aWNtXzEyOF9vcGVuc3NsX2Rlc2NyaXB0aW9uW10gPSAiQUVTLTEyOCBjb3VudGVyIG1vZGUgdXNp
bmcgb3BlbnNzbCI7Ci1zdGF0aWMgY29uc3QgY2hhciBzcnRwX2Flc19pY21fMTkyX29wZW5zc2xf
ZGVzY3JpcHRpb25bXSA9ICJBRVMtMTkyIGNvdW50ZXIgbW9kZSB1c2luZyBvcGVuc3NsIjsKLXN0
YXRpYyBjb25zdCBjaGFyIHNydHBfYWVzX2ljbV8yNTZfb3BlbnNzbF9kZXNjcmlwdGlvbltdID0g
IkFFUy0yNTYgY291bnRlciBtb2RlIHVzaW5nIG9wZW5zc2wiOwotCitzdGF0aWMgY29uc3QgY2hh
ciBzcnRwX2Flc19pY21fMTI4X29wZW5zc2xfZGVzY3JpcHRpb25bXSA9CisgICAgIkFFUy0xMjgg
Y291bnRlciBtb2RlIHVzaW5nIG9wZW5zc2wiOworc3RhdGljIGNvbnN0IGNoYXIgc3J0cF9hZXNf
aWNtXzE5Ml9vcGVuc3NsX2Rlc2NyaXB0aW9uW10gPQorICAgICJBRVMtMTkyIGNvdW50ZXIgbW9k
ZSB1c2luZyBvcGVuc3NsIjsKK3N0YXRpYyBjb25zdCBjaGFyIHNydHBfYWVzX2ljbV8yNTZfb3Bl
bnNzbF9kZXNjcmlwdGlvbltdID0KKyAgICAiQUVTLTI1NiBjb3VudGVyIG1vZGUgdXNpbmcgb3Bl
bnNzbCI7CiAKIC8qCiAgKiBLQVQgdmFsdWVzIGZvciBBRVMgc2VsZi10ZXN0LiAgVGhlc2UKICAq
IHZhbHVlcyBjYW1lIGZyb20gdGhlIGxlZ2FjeSBsaWJzcnRwIGNvZGUuCiAgKi8KKy8qIGNsYW5n
LWZvcm1hdCBvZmYgKi8KIHN0YXRpYyBjb25zdCB1aW50OF90IHNydHBfYWVzX2ljbV8xMjhfdGVz
dF9jYXNlXzBfa2V5W1NSVFBfQUVTX0lDTV8xMjhfS0VZX0xFTl9XU0FMVF0gPSB7CiAgICAgMHgy
YiwgMHg3ZSwgMHgxNSwgMHgxNiwgMHgyOCwgMHhhZSwgMHhkMiwgMHhhNiwKICAgICAweGFiLCAw
eGY3LCAweDE1LCAweDg4LCAweDA5LCAweGNmLCAweDRmLCAweDNjLAogICAgIDB4ZjAsIDB4ZjEs
IDB4ZjIsIDB4ZjMsIDB4ZjQsIDB4ZjUsIDB4ZjYsIDB4ZjcsCiAgICAgMHhmOCwgMHhmOSwgMHhm
YSwgMHhmYiwgMHhmYywgMHhmZAogfTsKKy8qIGNsYW5nLWZvcm1hdCBvbiAqLwogCisvKiBjbGFu
Zy1mb3JtYXQgb2ZmICovCiBzdGF0aWMgdWludDhfdCBzcnRwX2Flc19pY21fMTI4X3Rlc3RfY2Fz
ZV8wX25vbmNlWzE2XSA9IHsKICAgICAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAw
LCAweDAwLCAweDAwLAogICAgIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4
MDAsIDB4MDAKIH07CisvKiBjbGFuZy1mb3JtYXQgb24gKi8KIAorLyogY2xhbmctZm9ybWF0IG9m
ZiAqLwogc3RhdGljIGNvbnN0IHVpbnQ4X3Qgc3J0cF9hZXNfaWNtXzEyOF90ZXN0X2Nhc2VfMF9w
bGFpbnRleHRbMzJdID0gIHsKICAgICAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAw
LCAweDAwLCAweDAwLAogICAgIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4
MDAsIDB4MDAsCiAgICAgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwg
MHgwMCwKICAgICAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAw
LAogfTsKKy8qIGNsYW5nLWZvcm1hdCBvbiAqLwogCisvKiBjbGFuZy1mb3JtYXQgb2ZmICovCiBz
dGF0aWMgY29uc3QgdWludDhfdCBzcnRwX2Flc19pY21fMTI4X3Rlc3RfY2FzZV8wX2NpcGhlcnRl
eHRbMzJdID0gewogICAgIDB4ZTAsIDB4M2UsIDB4YWQsIDB4MDksIDB4MzUsIDB4YzksIDB4NWUs
IDB4ODAsCiAgICAgMHhlMSwgMHg2NiwgMHhiMSwgMHg2ZCwgMHhkOSwgMHgyYiwgMHg0ZSwgMHhi
NCwKICAgICAweGQyLCAweDM1LCAweDEzLCAweDE2LCAweDJiLCAweDAyLCAweGQwLCAweGY3LAog
ICAgIDB4MmEsIDB4NDMsIDB4YTIsIDB4ZmUsIDB4NGEsIDB4NWYsIDB4OTcsIDB4YWIKIH07Cisv
KiBjbGFuZy1mb3JtYXQgb24gKi8KIAogc3RhdGljIGNvbnN0IHNydHBfY2lwaGVyX3Rlc3RfY2Fz
ZV90IHNydHBfYWVzX2ljbV8xMjhfdGVzdF9jYXNlXzAgPSB7Ci0gICAgU1JUUF9BRVNfSUNNXzEy
OF9LRVlfTEVOX1dTQUxULCAgICAgICAgICAgICAgICAgLyogb2N0ZXRzIGluIGtleSAgICAgICAg
ICAgICovCi0gICAgc3J0cF9hZXNfaWNtXzEyOF90ZXN0X2Nhc2VfMF9rZXksICAgICAgICAgICAg
ICAgLyoga2V5ICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgc3J0cF9hZXNfaWNtXzEyOF90
ZXN0X2Nhc2VfMF9ub25jZSwgICAgICAgICAgICAgLyogcGFja2V0IGluZGV4ICAgICAgICAgICAg
ICovCi0gICAgMzIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogb2N0ZXRz
IGluIHBsYWludGV4dCAgICAgICovCi0gICAgc3J0cF9hZXNfaWNtXzEyOF90ZXN0X2Nhc2VfMF9w
bGFpbnRleHQsICAgICAgICAgLyogcGxhaW50ZXh0ICAgICAgICAgICAgICAgICovCi0gICAgMzIs
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogb2N0ZXRzIGluIGNpcGhlcnRl
eHQgICAgICovCi0gICAgc3J0cF9hZXNfaWNtXzEyOF90ZXN0X2Nhc2VfMF9jaXBoZXJ0ZXh0LCAg
ICAgICAgLyogY2lwaGVydGV4dCAgICAgICAgICAgICAgICovCi0gICAgMCwKLSAgICBOVUxMLAot
ICAgIDAsCi0gICAgTlVMTCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogcG9p
bnRlciB0byBuZXh0IHRlc3RjYXNlICovCisgICAgU1JUUF9BRVNfSUNNXzEyOF9LRVlfTEVOX1dT
QUxULCAgICAgICAgICAvKiBvY3RldHMgaW4ga2V5ICAgICAgICAgICAgKi8KKyAgICBzcnRwX2Fl
c19pY21fMTI4X3Rlc3RfY2FzZV8wX2tleSwgICAgICAgIC8qIGtleSAgICAgICAgICAgICAgICAg
ICAgICAqLworICAgIHNydHBfYWVzX2ljbV8xMjhfdGVzdF9jYXNlXzBfbm9uY2UsICAgICAgLyog
cGFja2V0IGluZGV4ICAgICAgICAgICAgICovCisgICAgMzIsICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAvKiBvY3RldHMgaW4gcGxhaW50ZXh0ICAgICAgKi8KKyAgICBzcnRw
X2Flc19pY21fMTI4X3Rlc3RfY2FzZV8wX3BsYWludGV4dCwgIC8qIHBsYWludGV4dCAgICAgICAg
ICAgICAgICAqLworICAgIDMyLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Lyogb2N0ZXRzIGluIGNpcGhlcnRleHQgICAgICovCisgICAgc3J0cF9hZXNfaWNtXzEyOF90ZXN0
X2Nhc2VfMF9jaXBoZXJ0ZXh0LCAvKiBjaXBoZXJ0ZXh0ICAgICAgICAgICAgICAgKi8KKyAgICAw
LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qICovCisgICAgTlVMTCwg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiAqLworICAgIDAsICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogKi8KKyAgICBOVUxMICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHBvaW50ZXIgdG8gbmV4dCB0ZXN0Y2FzZSAqLwog
fTsKIAogLyoKICAqIEtBVCB2YWx1ZXMgZm9yIEFFUy0xOTItQ1RSIHNlbGYtdGVzdC4gIFRoZXNl
CiAgKiB2YWx1ZXMgY2FtZSBmcm9tIHNlY3Rpb24gNyBvZiBSRkMgNjE4OC4KICAqLworLyogY2xh
bmctZm9ybWF0IG9mZiAqLwogc3RhdGljIGNvbnN0IHVpbnQ4X3Qgc3J0cF9hZXNfaWNtXzE5Ml90
ZXN0X2Nhc2VfMF9rZXlbU1JUUF9BRVNfSUNNXzE5Ml9LRVlfTEVOX1dTQUxUXSA9IHsKICAgICAw
eGVhLCAweGIyLCAweDM0LCAweDc2LCAweDRlLCAweDUxLCAweDdiLCAweDJkLAogICAgIDB4M2Qs
IDB4MTYsIDB4MGQsIDB4NTgsIDB4N2QsIDB4OGMsIDB4ODYsIDB4MjEsCkBAIC0zNzYsNDQgKzM5
MCw1MiBAQCBzdGF0aWMgY29uc3QgdWludDhfdCBzcnRwX2Flc19pY21fMTkyX3Rlc3RfY2FzZV8w
X2tleVtTUlRQX0FFU19JQ01fMTkyX0tFWV9MRU5fVwogICAgIDB4ZjAsIDB4ZjEsIDB4ZjIsIDB4
ZjMsIDB4ZjQsIDB4ZjUsIDB4ZjYsIDB4ZjcsCiAgICAgMHhmOCwgMHhmOSwgMHhmYSwgMHhmYiwg
MHhmYywgMHhmZAogfTsKKy8qIGNsYW5nLWZvcm1hdCBvbiAqLwogCisvKiBjbGFuZy1mb3JtYXQg
b2ZmICovCiBzdGF0aWMgdWludDhfdCBzcnRwX2Flc19pY21fMTkyX3Rlc3RfY2FzZV8wX25vbmNl
WzE2XSA9IHsKICAgICAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAw
eDAwLAogICAgIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAK
IH07CisvKiBjbGFuZy1mb3JtYXQgb24gKi8KIAorLyogY2xhbmctZm9ybWF0IG9mZiAqLwogc3Rh
dGljIGNvbnN0IHVpbnQ4X3Qgc3J0cF9hZXNfaWNtXzE5Ml90ZXN0X2Nhc2VfMF9wbGFpbnRleHRb
MzJdID0gIHsKICAgICAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAw
eDAwLAogICAgIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAs
CiAgICAgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwKICAg
ICAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLAogfTsKKy8q
IGNsYW5nLWZvcm1hdCBvbiAqLwogCisvKiBjbGFuZy1mb3JtYXQgb2ZmICovCiBzdGF0aWMgY29u
c3QgdWludDhfdCBzcnRwX2Flc19pY21fMTkyX3Rlc3RfY2FzZV8wX2NpcGhlcnRleHRbMzJdID0g
ewogICAgIDB4MzUsIDB4MDksIDB4NmMsIDB4YmEsIDB4NDYsIDB4MTAsIDB4MDIsIDB4OGQsCiAg
ICAgMHhjMSwgMHhiNSwgMHg3NSwgMHgwMywgMHg4MCwgMHg0YywgMHhlMywgMHg3YywKICAgICAw
eDVkLCAweGU5LCAweDg2LCAweDI5LCAweDFkLCAweGNjLCAweGUxLCAweDYxLAogICAgIDB4ZDUs
IDB4MTYsIDB4NWUsIDB4YzQsIDB4NTYsIDB4OGYsIDB4NWMsIDB4OWEKIH07CisvKiBjbGFuZy1m
b3JtYXQgb24gKi8KIAogc3RhdGljIGNvbnN0IHNydHBfY2lwaGVyX3Rlc3RfY2FzZV90IHNydHBf
YWVzX2ljbV8xOTJfdGVzdF9jYXNlXzAgPSB7Ci0gICAgU1JUUF9BRVNfSUNNXzE5Ml9LRVlfTEVO
X1dTQUxULCAgICAgICAgICAgICAgICAgLyogb2N0ZXRzIGluIGtleSAgICAgICAgICAgICovCi0g
ICAgc3J0cF9hZXNfaWNtXzE5Ml90ZXN0X2Nhc2VfMF9rZXksICAgICAgICAgICAvKiBrZXkgICAg
ICAgICAgICAgICAgICAgICAgKi8KLSAgICBzcnRwX2Flc19pY21fMTkyX3Rlc3RfY2FzZV8wX25v
bmNlLCAgICAgICAgIC8qIHBhY2tldCBpbmRleCAgICAgICAgICAgICAqLwotICAgIDMyLCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIG9jdGV0cyBpbiBwbGFpbnRleHQgICAg
ICAqLwotICAgIHNydHBfYWVzX2ljbV8xOTJfdGVzdF9jYXNlXzBfcGxhaW50ZXh0LCAgICAgLyog
cGxhaW50ZXh0ICAgICAgICAgICAgICAgICovCi0gICAgMzIsICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyogb2N0ZXRzIGluIGNpcGhlcnRleHQgICAgICovCi0gICAgc3J0cF9h
ZXNfaWNtXzE5Ml90ZXN0X2Nhc2VfMF9jaXBoZXJ0ZXh0LCAgICAvKiBjaXBoZXJ0ZXh0ICAgICAg
ICAgICAgICAgKi8KLSAgICAwLAotICAgIE5VTEwsCi0gICAgMCwKLSAgICBOVUxMICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBwb2ludGVyIHRvIG5leHQgdGVzdGNhc2UgKi8K
KyAgICBTUlRQX0FFU19JQ01fMTkyX0tFWV9MRU5fV1NBTFQsICAgICAgICAgIC8qIG9jdGV0cyBp
biBrZXkgICAgICAgICAgICAqLworICAgIHNydHBfYWVzX2ljbV8xOTJfdGVzdF9jYXNlXzBfa2V5
LCAgICAgICAgLyoga2V5ICAgICAgICAgICAgICAgICAgICAgICovCisgICAgc3J0cF9hZXNfaWNt
XzE5Ml90ZXN0X2Nhc2VfMF9ub25jZSwgICAgICAvKiBwYWNrZXQgaW5kZXggICAgICAgICAgICAg
Ki8KKyAgICAzMiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIG9jdGV0
cyBpbiBwbGFpbnRleHQgICAgICAqLworICAgIHNydHBfYWVzX2ljbV8xOTJfdGVzdF9jYXNlXzBf
cGxhaW50ZXh0LCAgLyogcGxhaW50ZXh0ICAgICAgICAgICAgICAgICovCisgICAgMzIsICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBvY3RldHMgaW4gY2lwaGVydGV4dCAg
ICAgKi8KKyAgICBzcnRwX2Flc19pY21fMTkyX3Rlc3RfY2FzZV8wX2NpcGhlcnRleHQsIC8qIGNp
cGhlcnRleHQgICAgICAgICAgICAgICAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyogKi8KKyAgICBOVUxMLCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAvKiAqLworICAgIE5VTEwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
LyogcG9pbnRlciB0byBuZXh0IHRlc3RjYXNlICovCiB9OwogCiAvKgogICogS0FUIHZhbHVlcyBm
b3IgQUVTLTI1Ni1DVFIgc2VsZi10ZXN0LiAgVGhlc2UKICAqIHZhbHVlcyBjYW1lIGZyb20gc2Vj
dGlvbiA3IG9mIFJGQyA2MTg4LgogICovCisvKiBjbGFuZy1mb3JtYXQgb2ZmICovCiBzdGF0aWMg
Y29uc3QgdWludDhfdCBzcnRwX2Flc19pY21fMjU2X3Rlc3RfY2FzZV8wX2tleVtTUlRQX0FFU19J
Q01fMjU2X0tFWV9MRU5fV1NBTFRdID0gewogICAgIDB4NTcsIDB4ZjgsIDB4MmYsIDB4ZTMsIDB4
NjEsIDB4M2YsIDB4ZDEsIDB4NzAsCiAgICAgMHhhOCwgMHg1ZSwgMHhjOSwgMHgzYywgMHg0MCwg
MHhiMSwgMHhmMCwgMHg5MiwKQEAgLTQyMiwzOCArNDQ0LDQ1IEBAIHN0YXRpYyBjb25zdCB1aW50
OF90IHNydHBfYWVzX2ljbV8yNTZfdGVzdF9jYXNlXzBfa2V5W1NSVFBfQUVTX0lDTV8yNTZfS0VZ
X0xFTl9XCiAgICAgMHhmMCwgMHhmMSwgMHhmMiwgMHhmMywgMHhmNCwgMHhmNSwgMHhmNiwgMHhm
NywKICAgICAweGY4LCAweGY5LCAweGZhLCAweGZiLCAweGZjLCAweGZkCiB9OworLyogY2xhbmct
Zm9ybWF0IG9uICovCiAKKy8qIGNsYW5nLWZvcm1hdCBvZmYgKi8KIHN0YXRpYyB1aW50OF90IHNy
dHBfYWVzX2ljbV8yNTZfdGVzdF9jYXNlXzBfbm9uY2VbMTZdID0gewogICAgIDB4MDAsIDB4MDAs
IDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsCiAgICAgMHgwMCwgMHgwMCwgMHgw
MCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMAogfTsKKy8qIGNsYW5nLWZvcm1hdCBvbiAq
LwogCisvKiBjbGFuZy1mb3JtYXQgb2ZmICovCiBzdGF0aWMgY29uc3QgdWludDhfdCBzcnRwX2Fl
c19pY21fMjU2X3Rlc3RfY2FzZV8wX3BsYWludGV4dFszMl0gPSAgewogICAgIDB4MDAsIDB4MDAs
IDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsCiAgICAgMHgwMCwgMHgwMCwgMHgw
MCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwKICAgICAweDAwLCAweDAwLCAweDAwLCAw
eDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLAogICAgIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAs
IDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsCiB9OworLyogY2xhbmctZm9ybWF0IG9uICovCiAKKy8q
IGNsYW5nLWZvcm1hdCBvZmYgKi8KIHN0YXRpYyBjb25zdCB1aW50OF90IHNydHBfYWVzX2ljbV8y
NTZfdGVzdF9jYXNlXzBfY2lwaGVydGV4dFszMl0gPSB7CiAgICAgMHg5MiwgMHhiZCwgMHhkMiwg
MHg4YSwgMHg5MywgMHhjMywgMHhmNSwgMHgyNSwKICAgICAweDExLCAweGM2LCAweDc3LCAweGQw
LCAweDhiLCAweDU1LCAweDE1LCAweGE0LAogICAgIDB4OWQsIDB4YTcsIDB4MWIsIDB4MjMsIDB4
NzgsIDB4YTgsIDB4NTQsIDB4ZjYsCiAgICAgMHg3MCwgMHg1MCwgMHg3NSwgMHg2ZCwgMHhlZCwg
MHgxNiwgMHg1YiwgMHhhYwogfTsKKy8qIGNsYW5nLWZvcm1hdCBvbiAqLwogCiBzdGF0aWMgY29u
c3Qgc3J0cF9jaXBoZXJfdGVzdF9jYXNlX3Qgc3J0cF9hZXNfaWNtXzI1Nl90ZXN0X2Nhc2VfMCA9
IHsKLSAgICBTUlRQX0FFU19JQ01fMjU2X0tFWV9MRU5fV1NBTFQsICAgICAgICAgICAgICAgICAv
KiBvY3RldHMgaW4ga2V5ICAgICAgICAgICAgKi8KLSAgICBzcnRwX2Flc19pY21fMjU2X3Rlc3Rf
Y2FzZV8wX2tleSwgICAgICAgICAgIC8qIGtleSAgICAgICAgICAgICAgICAgICAgICAqLwotICAg
IHNydHBfYWVzX2ljbV8yNTZfdGVzdF9jYXNlXzBfbm9uY2UsICAgICAgICAgLyogcGFja2V0IGlu
ZGV4ICAgICAgICAgICAgICovCi0gICAgMzIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgLyogb2N0ZXRzIGluIHBsYWludGV4dCAgICAgICovCi0gICAgc3J0cF9hZXNfaWNtXzI1
Nl90ZXN0X2Nhc2VfMF9wbGFpbnRleHQsICAgICAvKiBwbGFpbnRleHQgICAgICAgICAgICAgICAg
Ki8KLSAgICAzMiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBvY3RldHMg
aW4gY2lwaGVydGV4dCAgICAgKi8KLSAgICBzcnRwX2Flc19pY21fMjU2X3Rlc3RfY2FzZV8wX2Np
cGhlcnRleHQsICAgIC8qIGNpcGhlcnRleHQgICAgICAgICAgICAgICAqLwotICAgIDAsCi0gICAg
TlVMTCwKLSAgICAwLAotICAgIE5VTEwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IC8qIHBvaW50ZXIgdG8gbmV4dCB0ZXN0Y2FzZSAqLworICAgIFNSVFBfQUVTX0lDTV8yNTZfS0VZ
X0xFTl9XU0FMVCwgICAgICAgICAgLyogb2N0ZXRzIGluIGtleSAgICAgICAgICAgICovCisgICAg
c3J0cF9hZXNfaWNtXzI1Nl90ZXN0X2Nhc2VfMF9rZXksICAgICAgICAvKiBrZXkgICAgICAgICAg
ICAgICAgICAgICAgKi8KKyAgICBzcnRwX2Flc19pY21fMjU2X3Rlc3RfY2FzZV8wX25vbmNlLCAg
ICAgIC8qIHBhY2tldCBpbmRleCAgICAgICAgICAgICAqLworICAgIDMyLCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgLyogb2N0ZXRzIGluIHBsYWludGV4dCAgICAgICovCisg
ICAgc3J0cF9hZXNfaWNtXzI1Nl90ZXN0X2Nhc2VfMF9wbGFpbnRleHQsICAvKiBwbGFpbnRleHQg
ICAgICAgICAgICAgICAgKi8KKyAgICAzMiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIC8qIG9jdGV0cyBpbiBjaXBoZXJ0ZXh0ICAgICAqLworICAgIHNydHBfYWVzX2ljbV8y
NTZfdGVzdF9jYXNlXzBfY2lwaGVydGV4dCwgLyogY2lwaGVydGV4dCAgICAgICAgICAgICAgICov
CisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiAqLworICAg
IE5VTEwsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogKi8KKyAgICAwLCAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qICovCisgICAgTlVMTCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBwb2ludGVyIHRvIG5leHQgdGVzdGNh
c2UgKi8KIH07CiAKIC8qCkBAIC00NjEsMTcgKzQ5MCwxNyBAQCBzdGF0aWMgY29uc3Qgc3J0cF9j
aXBoZXJfdGVzdF9jYXNlX3Qgc3J0cF9hZXNfaWNtXzI1Nl90ZXN0X2Nhc2VfMCA9IHsKICAqIG5v
dGU6IHRoZSBlbmNyeXB0IGZ1bmN0aW9uIGlzIGlkZW50aWNhbCB0byB0aGUgZGVjcnlwdCBmdW5j
dGlvbgogICovCiBjb25zdCBzcnRwX2NpcGhlcl90eXBlX3Qgc3J0cF9hZXNfaWNtXzEyOCA9IHsK
LSAgICBzcnRwX2Flc19pY21fb3BlbnNzbF9hbGxvYywKLSAgICBzcnRwX2Flc19pY21fb3BlbnNz
bF9kZWFsbG9jLAotICAgIHNydHBfYWVzX2ljbV9vcGVuc3NsX2NvbnRleHRfaW5pdCwKLSAgICAw
LCAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHNldF9hYWQgKi8KLSAgICBzcnRwX2Flc19p
Y21fb3BlbnNzbF9lbmNyeXB0LAotICAgIHNydHBfYWVzX2ljbV9vcGVuc3NsX2VuY3J5cHQsCi0g
ICAgc3J0cF9hZXNfaWNtX29wZW5zc2xfc2V0X2l2LAotICAgIDAsICAgICAgICAgICAgICAgICAg
ICAgICAgICAgLyogZ2V0X3RhZyAqLwotICAgIHNydHBfYWVzX2ljbV8xMjhfb3BlbnNzbF9kZXNj
cmlwdGlvbiwKLSAgICAmc3J0cF9hZXNfaWNtXzEyOF90ZXN0X2Nhc2VfMCwKLSAgICBTUlRQX0FF
U19JQ01fMTI4CisgICAgc3J0cF9hZXNfaWNtX29wZW5zc2xfYWxsb2MsICAgICAgICAgICAvKiAq
LworICAgIHNydHBfYWVzX2ljbV9vcGVuc3NsX2RlYWxsb2MsICAgICAgICAgLyogKi8KKyAgICBz
cnRwX2Flc19pY21fb3BlbnNzbF9jb250ZXh0X2luaXQsICAgIC8qICovCisgICAgMCwgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBzZXRfYWFkICovCisgICAgc3J0cF9hZXNf
aWNtX29wZW5zc2xfZW5jcnlwdCwgICAgICAgICAvKiAqLworICAgIHNydHBfYWVzX2ljbV9vcGVu
c3NsX2VuY3J5cHQsICAgICAgICAgLyogKi8KKyAgICBzcnRwX2Flc19pY21fb3BlbnNzbF9zZXRf
aXYsICAgICAgICAgIC8qICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAvKiBnZXRfdGFnICovCisgICAgc3J0cF9hZXNfaWNtXzEyOF9vcGVuc3NsX2Rlc2NyaXB0
aW9uLCAvKiAqLworICAgICZzcnRwX2Flc19pY21fMTI4X3Rlc3RfY2FzZV8wLCAgICAgICAgLyog
Ki8KKyAgICBTUlRQX0FFU19JQ01fMTI4ICAgICAgICAgICAgICAgICAgICAgIC8qICovCiB9Owog
CiAvKgpAQCAtNDc5LDE3ICs1MDgsMTcgQEAgY29uc3Qgc3J0cF9jaXBoZXJfdHlwZV90IHNydHBf
YWVzX2ljbV8xMjggPSB7CiAgKiBub3RlOiB0aGUgZW5jcnlwdCBmdW5jdGlvbiBpcyBpZGVudGlj
YWwgdG8gdGhlIGRlY3J5cHQgZnVuY3Rpb24KICAqLwogY29uc3Qgc3J0cF9jaXBoZXJfdHlwZV90
IHNydHBfYWVzX2ljbV8xOTIgPSB7Ci0gICAgc3J0cF9hZXNfaWNtX29wZW5zc2xfYWxsb2MsCi0g
ICAgc3J0cF9hZXNfaWNtX29wZW5zc2xfZGVhbGxvYywKLSAgICBzcnRwX2Flc19pY21fb3BlbnNz
bF9jb250ZXh0X2luaXQsCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBzZXRf
YWFkICovCi0gICAgc3J0cF9hZXNfaWNtX29wZW5zc2xfZW5jcnlwdCwKLSAgICBzcnRwX2Flc19p
Y21fb3BlbnNzbF9lbmNyeXB0LAotICAgIHNydHBfYWVzX2ljbV9vcGVuc3NsX3NldF9pdiwKLSAg
ICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIGdldF90YWcgKi8KLSAgICBzcnRwX2Fl
c19pY21fMTkyX29wZW5zc2xfZGVzY3JpcHRpb24sCi0gICAgJnNydHBfYWVzX2ljbV8xOTJfdGVz
dF9jYXNlXzAsCi0gICAgU1JUUF9BRVNfSUNNXzE5MgorICAgIHNydHBfYWVzX2ljbV9vcGVuc3Ns
X2FsbG9jLCAgICAgICAgICAgLyogKi8KKyAgICBzcnRwX2Flc19pY21fb3BlbnNzbF9kZWFsbG9j
LCAgICAgICAgIC8qICovCisgICAgc3J0cF9hZXNfaWNtX29wZW5zc2xfY29udGV4dF9pbml0LCAg
ICAvKiAqLworICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogc2V0
X2FhZCAqLworICAgIHNydHBfYWVzX2ljbV9vcGVuc3NsX2VuY3J5cHQsICAgICAgICAgLyogKi8K
KyAgICBzcnRwX2Flc19pY21fb3BlbnNzbF9lbmNyeXB0LCAgICAgICAgIC8qICovCisgICAgc3J0
cF9hZXNfaWNtX29wZW5zc2xfc2V0X2l2LCAgICAgICAgICAvKiAqLworICAgIDAsICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogZ2V0X3RhZyAqLworICAgIHNydHBfYWVzX2lj
bV8xOTJfb3BlbnNzbF9kZXNjcmlwdGlvbiwgLyogKi8KKyAgICAmc3J0cF9hZXNfaWNtXzE5Ml90
ZXN0X2Nhc2VfMCwgICAgICAgIC8qICovCisgICAgU1JUUF9BRVNfSUNNXzE5MiAgICAgICAgICAg
ICAgICAgICAgICAvKiAqLwogfTsKIAogLyoKQEAgLTQ5NywxNiArNTI2LDE1IEBAIGNvbnN0IHNy
dHBfY2lwaGVyX3R5cGVfdCBzcnRwX2Flc19pY21fMTkyID0gewogICogbm90ZTogdGhlIGVuY3J5
cHQgZnVuY3Rpb24gaXMgaWRlbnRpY2FsIHRvIHRoZSBkZWNyeXB0IGZ1bmN0aW9uCiAgKi8KIGNv
bnN0IHNydHBfY2lwaGVyX3R5cGVfdCBzcnRwX2Flc19pY21fMjU2ID0gewotICAgIHNydHBfYWVz
X2ljbV9vcGVuc3NsX2FsbG9jLAotICAgIHNydHBfYWVzX2ljbV9vcGVuc3NsX2RlYWxsb2MsCi0g
ICAgc3J0cF9hZXNfaWNtX29wZW5zc2xfY29udGV4dF9pbml0LAotICAgIDAsICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLyogc2V0X2FhZCAqLwotICAgIHNydHBfYWVzX2ljbV9vcGVuc3NsX2Vu
Y3J5cHQsCi0gICAgc3J0cF9hZXNfaWNtX29wZW5zc2xfZW5jcnlwdCwKLSAgICBzcnRwX2Flc19p
Y21fb3BlbnNzbF9zZXRfaXYsCi0gICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBn
ZXRfdGFnICovCi0gICAgc3J0cF9hZXNfaWNtXzI1Nl9vcGVuc3NsX2Rlc2NyaXB0aW9uLAotICAg
ICZzcnRwX2Flc19pY21fMjU2X3Rlc3RfY2FzZV8wLAotICAgIFNSVFBfQUVTX0lDTV8yNTYKKyAg
ICBzcnRwX2Flc19pY21fb3BlbnNzbF9hbGxvYywgICAgICAgICAgIC8qICovCisgICAgc3J0cF9h
ZXNfaWNtX29wZW5zc2xfZGVhbGxvYywgICAgICAgICAvKiAqLworICAgIHNydHBfYWVzX2ljbV9v
cGVuc3NsX2NvbnRleHRfaW5pdCwgICAgLyogKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIC8qIHNldF9hYWQgKi8KKyAgICBzcnRwX2Flc19pY21fb3BlbnNzbF9l
bmNyeXB0LCAgICAgICAgIC8qICovCisgICAgc3J0cF9hZXNfaWNtX29wZW5zc2xfZW5jcnlwdCwg
ICAgICAgICAvKiAqLworICAgIHNydHBfYWVzX2ljbV9vcGVuc3NsX3NldF9pdiwgICAgICAgICAg
LyogKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIGdldF90
YWcgKi8KKyAgICBzcnRwX2Flc19pY21fMjU2X29wZW5zc2xfZGVzY3JpcHRpb24sIC8qICovCisg
ICAgJnNydHBfYWVzX2ljbV8yNTZfdGVzdF9jYXNlXzAsICAgICAgICAvKiAqLworICAgIFNSVFBf
QUVTX0lDTV8yNTYgICAgICAgICAgICAgICAgICAgICAgLyogKi8KIH07Ci0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9j
cnlwdG8vY2lwaGVyL2NpcGhlci5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9jaXBoZXIvY2lwaGVyLmMKaW5kZXggM2M2Nzc5
MDg4OGQwYWFmMmQ4MjZmODQ3NjY2YmE3MzI1ZmRhMjgzMC4uMTlmMDBhYmM1NWJlNjZkNjA3NTg2
M2RjOWNlNTBkMmU0ODYzZTQ1YyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9jaXBoZXIvY2lwaGVyLmMKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRw
L2NyeXB0by9jaXBoZXIvY2lwaGVyLmMKQEAgLTQ1LDU2ICs0NSw2MSBAQAogICovCiAKICNpZmRl
ZiBIQVZFX0NPTkZJR19ICi0gICAgI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbmZp
Zy5oPgogI2VuZGlmCiAKICNpbmNsdWRlICJjaXBoZXIuaCIKICNpbmNsdWRlICJjcnlwdG9fdHlw
ZXMuaCIKLSNpbmNsdWRlICJlcnIuaCIgICAgICAgICAgICAgICAgLyogZm9yIHNydHBfZGVidWcg
Ki8KLSNpbmNsdWRlICJhbGxvYy5oIiAgICAgICAgICAgICAgLyogZm9yIGNyeXB0b19hbGxvYygp
LCBjcnlwdG9fZnJlZSgpICAqLworI2luY2x1ZGUgImVyci5oIiAgIC8qIGZvciBzcnRwX2RlYnVn
ICovCisjaW5jbHVkZSAiYWxsb2MuaCIgLyogZm9yIGNyeXB0b19hbGxvYygpLCBjcnlwdG9fZnJl
ZSgpICAqLwogCiBzcnRwX2RlYnVnX21vZHVsZV90IHNydHBfbW9kX2NpcGhlciA9IHsKLSAgICAw
LCAgICAgICAgICAgICAgIC8qIGRlYnVnZ2luZyBpcyBvZmYgYnkgZGVmYXVsdCAqLwotICAgICJj
aXBoZXIiICAgICAgICAgLyogcHJpbnRhYmxlIG1vZHVsZSBuYW1lICAgICAgICovCisgICAgMCwg
ICAgICAgLyogZGVidWdnaW5nIGlzIG9mZiBieSBkZWZhdWx0ICovCisgICAgImNpcGhlciIgLyog
cHJpbnRhYmxlIG1vZHVsZSBuYW1lICAgICAgICovCiB9OwogCi1zcnRwX2Vycl9zdGF0dXNfdCBz
cnRwX2NpcGhlcl90eXBlX2FsbG9jIChjb25zdCBzcnRwX2NpcGhlcl90eXBlX3QgKmN0LCBzcnRw
X2NpcGhlcl90ICoqYywgaW50IGtleV9sZW4sIGludCB0bGVuKQorc3J0cF9lcnJfc3RhdHVzX3Qg
c3J0cF9jaXBoZXJfdHlwZV9hbGxvYyhjb25zdCBzcnRwX2NpcGhlcl90eXBlX3QgKmN0LAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcnRwX2NpcGhlcl90ICoqYywK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IGtleV9sZW4sCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCB0bGVuKQogewogICAg
IGlmICghY3QgfHwgIWN0LT5hbGxvYykgewotCXJldHVybiAoc3J0cF9lcnJfc3RhdHVzX2JhZF9w
YXJhbSk7CisgICAgICAgIHJldHVybiAoc3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJhbSk7CiAgICAg
fQogICAgIHJldHVybiAoKGN0KS0+YWxsb2MoKGMpLCAoa2V5X2xlbiksICh0bGVuKSkpOwogfQog
Ci1zcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NpcGhlcl9kZWFsbG9jIChzcnRwX2NpcGhlcl90ICpj
KQorc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jaXBoZXJfZGVhbGxvYyhzcnRwX2NpcGhlcl90ICpj
KQogewogICAgIGlmICghYyB8fCAhYy0+dHlwZSkgewotCXJldHVybiAoc3J0cF9lcnJfc3RhdHVz
X2JhZF9wYXJhbSk7CisgICAgICAgIHJldHVybiAoc3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJhbSk7
CiAgICAgfQogICAgIHJldHVybiAoKChjKS0+dHlwZSktPmRlYWxsb2MoYykpOwogfQogCi1zcnRw
X2Vycl9zdGF0dXNfdCBzcnRwX2NpcGhlcl9pbml0IChzcnRwX2NpcGhlcl90ICpjLCBjb25zdCB1
aW50OF90ICprZXkpCitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NpcGhlcl9pbml0KHNydHBfY2lw
aGVyX3QgKmMsIGNvbnN0IHVpbnQ4X3QgKmtleSkKIHsKICAgICBpZiAoIWMgfHwgIWMtPnR5cGUg
fHwgIWMtPnN0YXRlKSB7Ci0JcmV0dXJuIChzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtKTsKKyAg
ICAgICAgcmV0dXJuIChzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtKTsKICAgICB9CiAgICAgcmV0
dXJuICgoKGMpLT50eXBlKS0+aW5pdCgoKGMpLT5zdGF0ZSksIChrZXkpKSk7CiB9CiAKLQotc3J0
cF9lcnJfc3RhdHVzX3Qgc3J0cF9jaXBoZXJfc2V0X2l2IChzcnRwX2NpcGhlcl90ICpjLCB1aW50
OF90ICppdiwgaW50IGRpcmVjdGlvbikKK3NydHBfZXJyX3N0YXR1c190IHNydHBfY2lwaGVyX3Nl
dF9pdihzcnRwX2NpcGhlcl90ICpjLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHVpbnQ4X3QgKml2LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlu
dCBkaXJlY3Rpb24pCiB7CiAgICAgaWYgKCFjIHx8ICFjLT50eXBlIHx8ICFjLT5zdGF0ZSkgewot
CXJldHVybiAoc3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJhbSk7CisgICAgICAgIHJldHVybiAoc3J0
cF9lcnJfc3RhdHVzX2JhZF9wYXJhbSk7CiAgICAgfQogCi0gICAgcmV0dXJuICgoKGMpLT50eXBl
KS0+c2V0X2l2KCgoYyktPnN0YXRlKSwgaXYsIGRpcmVjdGlvbikpOyAKKyAgICByZXR1cm4gKCgo
YyktPnR5cGUpLT5zZXRfaXYoKChjKS0+c3RhdGUpLCBpdiwgZGlyZWN0aW9uKSk7CiB9CiAKLXNy
dHBfZXJyX3N0YXR1c190IHNydHBfY2lwaGVyX291dHB1dCAoc3J0cF9jaXBoZXJfdCAqYywgdWlu
dDhfdCAqYnVmZmVyLCB1aW50MzJfdCAqbnVtX29jdGV0c190b19vdXRwdXQpCitzcnRwX2Vycl9z
dGF0dXNfdCBzcnRwX2NpcGhlcl9vdXRwdXQoc3J0cF9jaXBoZXJfdCAqYywKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50OF90ICpidWZmZXIsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgKm51bV9vY3RldHNfdG9fb3V0cHV0KQog
ewotCiAgICAgLyogemVyb2l6ZSB0aGUgYnVmZmVyICovCiAgICAgb2N0ZXRfc3RyaW5nX3NldF90
b196ZXJvKGJ1ZmZlciwgKm51bV9vY3RldHNfdG9fb3V0cHV0KTsKIApAQCAtMTAyLDQzICsxMDcs
NTEgQEAgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jaXBoZXJfb3V0cHV0IChzcnRwX2NpcGhlcl90
ICpjLCB1aW50OF90ICpidWZmZXIsIHVpbnQzMl8KICAgICByZXR1cm4gKCgoYyktPnR5cGUpLT5l
bmNyeXB0KCgoYyktPnN0YXRlKSwgYnVmZmVyLCBudW1fb2N0ZXRzX3RvX291dHB1dCkpOwogfQog
Ci1zcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NpcGhlcl9lbmNyeXB0IChzcnRwX2NpcGhlcl90ICpj
LCB1aW50OF90ICpidWZmZXIsIHVpbnQzMl90ICpudW1fb2N0ZXRzX3RvX291dHB1dCkKK3NydHBf
ZXJyX3N0YXR1c190IHNydHBfY2lwaGVyX2VuY3J5cHQoc3J0cF9jaXBoZXJfdCAqYywKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDhfdCAqYnVmZmVyLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCAqbnVtX29jdGV0c190b19v
dXRwdXQpCiB7CiAgICAgaWYgKCFjIHx8ICFjLT50eXBlIHx8ICFjLT5zdGF0ZSkgewotCXJldHVy
biAoc3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJhbSk7CisgICAgICAgIHJldHVybiAoc3J0cF9lcnJf
c3RhdHVzX2JhZF9wYXJhbSk7CiAgICAgfQogCiAgICAgcmV0dXJuICgoKGMpLT50eXBlKS0+ZW5j
cnlwdCgoKGMpLT5zdGF0ZSksIGJ1ZmZlciwgbnVtX29jdGV0c190b19vdXRwdXQpKTsKIH0KIAot
c3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jaXBoZXJfZGVjcnlwdCAoc3J0cF9jaXBoZXJfdCAqYywg
dWludDhfdCAqYnVmZmVyLCB1aW50MzJfdCAqbnVtX29jdGV0c190b19vdXRwdXQpCitzcnRwX2Vy
cl9zdGF0dXNfdCBzcnRwX2NpcGhlcl9kZWNyeXB0KHNydHBfY2lwaGVyX3QgKmMsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQ4X3QgKmJ1ZmZlciwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgKm51bV9vY3RldHNfdG9fb3V0
cHV0KQogewogICAgIGlmICghYyB8fCAhYy0+dHlwZSB8fCAhYy0+c3RhdGUpIHsKLQlyZXR1cm4g
KHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW0pOworICAgICAgICByZXR1cm4gKHNydHBfZXJyX3N0
YXR1c19iYWRfcGFyYW0pOwogICAgIH0KIAogICAgIHJldHVybiAoKChjKS0+dHlwZSktPmRlY3J5
cHQoKChjKS0+c3RhdGUpLCBidWZmZXIsIG51bV9vY3RldHNfdG9fb3V0cHV0KSk7CiB9CiAKLXNy
dHBfZXJyX3N0YXR1c190IHNydHBfY2lwaGVyX2dldF90YWcgKHNydHBfY2lwaGVyX3QgKmMsIHVp
bnQ4X3QgKmJ1ZmZlciwgdWludDMyX3QgKnRhZ19sZW4pCitzcnRwX2Vycl9zdGF0dXNfdCBzcnRw
X2NpcGhlcl9nZXRfdGFnKHNydHBfY2lwaGVyX3QgKmMsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHVpbnQ4X3QgKmJ1ZmZlciwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgdWludDMyX3QgKnRhZ19sZW4pCiB7CiAgICAgaWYgKCFjIHx8ICFjLT50
eXBlIHx8ICFjLT5zdGF0ZSkgewotCXJldHVybiAoc3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJhbSk7
CisgICAgICAgIHJldHVybiAoc3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJhbSk7CiAgICAgfQogICAg
IGlmICghKChjKS0+dHlwZSktPmdldF90YWcpIHsKLQlyZXR1cm4gKHNydHBfZXJyX3N0YXR1c19u
b19zdWNoX29wKTsKKyAgICAgICAgcmV0dXJuIChzcnRwX2Vycl9zdGF0dXNfbm9fc3VjaF9vcCk7
CiAgICAgfQogCiAgICAgcmV0dXJuICgoKGMpLT50eXBlKS0+Z2V0X3RhZygoKGMpLT5zdGF0ZSks
IGJ1ZmZlciwgdGFnX2xlbikpOwogfQogCi1zcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NpcGhlcl9z
ZXRfYWFkIChzcnRwX2NpcGhlcl90ICpjLCBjb25zdCB1aW50OF90ICphYWQsIHVpbnQzMl90IGFh
ZF9sZW4pCitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NpcGhlcl9zZXRfYWFkKHNydHBfY2lwaGVy
X3QgKmMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVpbnQ4
X3QgKmFhZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3Qg
YWFkX2xlbikKIHsKICAgICBpZiAoIWMgfHwgIWMtPnR5cGUgfHwgIWMtPnN0YXRlKSB7Ci0JcmV0
dXJuIChzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtKTsKKyAgICAgICAgcmV0dXJuIChzcnRwX2Vy
cl9zdGF0dXNfYmFkX3BhcmFtKTsKICAgICB9CiAgICAgaWYgKCEoKGMpLT50eXBlKS0+c2V0X2Fh
ZCkgewotCXJldHVybiAoc3J0cF9lcnJfc3RhdHVzX25vX3N1Y2hfb3ApOworICAgICAgICByZXR1
cm4gKHNydHBfZXJyX3N0YXR1c19ub19zdWNoX29wKTsKICAgICB9CiAKICAgICByZXR1cm4gKCgo
YyktPnR5cGUpLT5zZXRfYWFkKCgoYyktPnN0YXRlKSwgYWFkLCBhYWRfbGVuKSk7CkBAIC0xNDYs
NTcgKzE1OSw1NiBAQCBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NpcGhlcl9zZXRfYWFkIChzcnRw
X2NpcGhlcl90ICpjLCBjb25zdCB1aW50OF90ICphYWQsIHVpbgogCiAvKiBzb21lIGJvb2trZWVw
aW5nIGZ1bmN0aW9ucyAqLwogCi1pbnQgc3J0cF9jaXBoZXJfZ2V0X2tleV9sZW5ndGggKGNvbnN0
IHNydHBfY2lwaGVyX3QgKmMpCitpbnQgc3J0cF9jaXBoZXJfZ2V0X2tleV9sZW5ndGgoY29uc3Qg
c3J0cF9jaXBoZXJfdCAqYykKIHsKICAgICByZXR1cm4gYy0+a2V5X2xlbjsKIH0KIAotCiAvKgog
ICogQSB0cml2aWFsIHBsYXRmb3JtIGluZGVwZW5kZW50IHJhbmRvbSBzb3VyY2UuICBUaGUgcmFu
ZG9tCiAgKiBkYXRhIGlzIHVzZWQgZm9yIHNvbWUgb2YgdGhlIGNpcGhlciBzZWxmLXRlc3RzLgog
ICovCi1zdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jaXBoZXJfcmFuZCAodm9pZCAqZGVz
dCwgdWludDMyX3QgbGVuKSAKK3N0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NpcGhlcl9y
YW5kKHZvaWQgKmRlc3QsIHVpbnQzMl90IGxlbikKIHsKICNpZiBkZWZpbmVkKEhBVkVfUkFORF9T
KQotICB1aW50OF90ICpkc3QgPSAodWludDhfdCAqKWRlc3Q7Ci0gIHdoaWxlIChsZW4pCi0gIHsK
LSAgICB1bnNpZ25lZCBpbnQgdmFsOwotICAgIGVycm5vX3QgZXJyID0gcmFuZF9zKCZ2YWwpOwot
Ci0gICAgaWYgKGVyciAhPSAwKQotICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19mYWlsOwot
ICAKLSAgICAqZHN0KysgPSB2YWwgJiAweGZmOwotICAgIGxlbi0tOwotICB9CisgICAgdWludDhf
dCAqZHN0ID0gKHVpbnQ4X3QgKilkZXN0OworICAgIHdoaWxlIChsZW4pIHsKKyAgICAgICAgdW5z
aWduZWQgaW50IHZhbDsKKyAgICAgICAgZXJybm9fdCBlcnIgPSByYW5kX3MoJnZhbCk7CisKKyAg
ICAgICAgaWYgKGVyciAhPSAwKQorICAgICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19m
YWlsOworCisgICAgICAgICpkc3QrKyA9IHZhbCAmIDB4ZmY7CisgICAgICAgIGxlbi0tOworICAg
IH0KICNlbHNlCi0gIC8qIEdlbmVyaWMgQy1saWJyYXJ5IChyYW5kKCkpIHZlcnNpb24gKi8KLSAg
LyogVGhpcyBpcyBhIHJhbmRvbSBzb3VyY2Ugb2YgbGFzdCByZXNvcnQgKi8KLSAgdWludDhfdCAq
ZHN0ID0gKHVpbnQ4X3QgKilkZXN0OwotICB3aGlsZSAobGVuKQotICB7Ci0JICBpbnQgdmFsID0g
cmFuZCgpOwotCSAgLyogcmFuZCgpIHJldHVybnMgMC0zMjc2NyAodWdoKSAqLwotCSAgLyogSXMg
dGhpcyBhIGdvb2QgZW5vdWdoIHdheSB0byBnZXQgcmFuZG9tIGJ5dGVzPwotCSAgICAgSXQgaXMg
aWYgaXQgcGFzc2VzIEZJUFMtMTQwLi4uICovCi0JICAqZHN0KysgPSB2YWwgJiAweGZmOwotCSAg
bGVuLS07Ci0gIH0KKyAgICAvKiBHZW5lcmljIEMtbGlicmFyeSAocmFuZCgpKSB2ZXJzaW9uICov
CisgICAgLyogVGhpcyBpcyBhIHJhbmRvbSBzb3VyY2Ugb2YgbGFzdCByZXNvcnQgKi8KKyAgICB1
aW50OF90ICpkc3QgPSAodWludDhfdCAqKWRlc3Q7CisgICAgd2hpbGUgKGxlbikgeworICAgICAg
ICBpbnQgdmFsID0gcmFuZCgpOworICAgICAgICAvKiByYW5kKCkgcmV0dXJucyAwLTMyNzY3ICh1
Z2gpICovCisgICAgICAgIC8qIElzIHRoaXMgYSBnb29kIGVub3VnaCB3YXkgdG8gZ2V0IHJhbmRv
bSBieXRlcz8KKyAgICAgICAgICAgSXQgaXMgaWYgaXQgcGFzc2VzIEZJUFMtMTQwLi4uICovCisg
ICAgICAgICpkc3QrKyA9IHZhbCAmIDB4ZmY7CisgICAgICAgIGxlbi0tOworICAgIH0KICNlbmRp
ZgotICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOworICAgIHJldHVybiBzcnRwX2Vycl9zdGF0
dXNfb2s7CiB9Ci0gCisKICNkZWZpbmUgU0VMRl9URVNUX0JVRl9PQ1RFVFMgMTI4Ci0jZGVmaW5l
IE5VTV9SQU5EX1RFU1RTICAgICAgIDEyOAotI2RlZmluZSBNQVhfS0VZX0xFTiAgICAgICAgICA2
NAorI2RlZmluZSBOVU1fUkFORF9URVNUUyAxMjgKKyNkZWZpbmUgTUFYX0tFWV9MRU4gNjQKIC8q
CiAgKiBzcnRwX2NpcGhlcl90eXBlX3Rlc3QoY3QsIHRlc3RfZGF0YSkgdGVzdHMgYSBjaXBoZXIg
b2YgdHlwZSBjdCBhZ2FpbnN0CiAgKiB0ZXN0IGNhc2VzIHByb3ZpZGVkIGluIGEgbGlzdCB0ZXN0
X2RhdGEgb2YgdmFsdWVzIG9mIGtleSwgc2FsdCwgaXYsCiAgKiBwbGFpbnRleHQsIGFuZCBjaXBo
ZXJ0ZXh0IHRoYXQgaXMga25vd24gdG8gYmUgZ29vZAogICovCi1zcnRwX2Vycl9zdGF0dXNfdCBz
cnRwX2NpcGhlcl90eXBlX3Rlc3QgKGNvbnN0IHNydHBfY2lwaGVyX3R5cGVfdCAqY3QsIGNvbnN0
IHNydHBfY2lwaGVyX3Rlc3RfY2FzZV90ICp0ZXN0X2RhdGEpCitzcnRwX2Vycl9zdGF0dXNfdCBz
cnRwX2NpcGhlcl90eXBlX3Rlc3QoCisgICAgY29uc3Qgc3J0cF9jaXBoZXJfdHlwZV90ICpjdCwK
KyAgICBjb25zdCBzcnRwX2NpcGhlcl90ZXN0X2Nhc2VfdCAqdGVzdF9kYXRhKQogewogICAgIGNv
bnN0IHNydHBfY2lwaGVyX3Rlc3RfY2FzZV90ICp0ZXN0X2Nhc2UgPSB0ZXN0X2RhdGE7CiAgICAg
c3J0cF9jaXBoZXJfdCAqYzsKQEAgLTIwNiw2ICsyMTgsNyBAQCBzcnRwX2Vycl9zdGF0dXNfdCBz
cnRwX2NpcGhlcl90eXBlX3Rlc3QgKGNvbnN0IHNydHBfY2lwaGVyX3R5cGVfdCAqY3QsIGNvbnN0
IHNydAogICAgIHVpbnQzMl90IHRhZ19sZW47CiAgICAgdW5zaWduZWQgaW50IGxlbjsKICAgICBp
bnQgaSwgaiwgY2FzZV9udW0gPSAwOworICAgIHVuc2lnbmVkIGsgPSAwOwogCiAgICAgZGVidWdf
cHJpbnQoc3J0cF9tb2RfY2lwaGVyLCAicnVubmluZyBzZWxmLXRlc3QgZm9yIGNpcGhlciAlcyIs
CiAgICAgICAgICAgICAgICAgY3QtPmRlc2NyaXB0aW9uKTsKQEAgLTIyNCw3ICsyMzcsOCBAQCBz
cnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NpcGhlcl90eXBlX3Rlc3QgKGNvbnN0IHNydHBfY2lwaGVy
X3R5cGVfdCAqY3QsIGNvbnN0IHNydAogICAgICAqLwogICAgIHdoaWxlICh0ZXN0X2Nhc2UgIT0g
TlVMTCkgewogICAgICAgICAvKiBhbGxvY2F0ZSBjaXBoZXIgKi8KLSAgICAgICAgc3RhdHVzID0g
c3J0cF9jaXBoZXJfdHlwZV9hbGxvYyhjdCwgJmMsIHRlc3RfY2FzZS0+a2V5X2xlbmd0aF9vY3Rl
dHMsIHRlc3RfY2FzZS0+dGFnX2xlbmd0aF9vY3RldHMpOworICAgICAgICBzdGF0dXMgPSBzcnRw
X2NpcGhlcl90eXBlX2FsbG9jKGN0LCAmYywgdGVzdF9jYXNlLT5rZXlfbGVuZ3RoX29jdGV0cywK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0X2Nhc2UtPnRhZ19s
ZW5ndGhfb2N0ZXRzKTsKICAgICAgICAgaWYgKHN0YXR1cykgewogICAgICAgICAgICAgcmV0dXJu
IHN0YXR1czsKICAgICAgICAgfQpAQCAtMjQ2LDM2ICsyNjAsMzkgQEAgc3J0cF9lcnJfc3RhdHVz
X3Qgc3J0cF9jaXBoZXJfdHlwZV90ZXN0IChjb25zdCBzcnRwX2NpcGhlcl90eXBlX3QgKmN0LCBj
b25zdCBzcnQKICAgICAgICAgICAgIHNydHBfY2lwaGVyX2RlYWxsb2MoYyk7CiAgICAgICAgICAg
ICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJhbTsKICAgICAgICAgfQotICAgICAgICBm
b3IgKGkgPSAwOyBpIDwgdGVzdF9jYXNlLT5wbGFpbnRleHRfbGVuZ3RoX29jdGV0czsgaSsrKSB7
Ci0gICAgICAgICAgICBidWZmZXJbaV0gPSB0ZXN0X2Nhc2UtPnBsYWludGV4dFtpXTsKKyAgICAg
ICAgZm9yIChrID0gMDsgayA8IHRlc3RfY2FzZS0+cGxhaW50ZXh0X2xlbmd0aF9vY3RldHM7IGsr
KykgeworICAgICAgICAgICAgYnVmZmVyW2tdID0gdGVzdF9jYXNlLT5wbGFpbnRleHRba107CiAg
ICAgICAgIH0KIAogICAgICAgICBkZWJ1Z19wcmludChzcnRwX21vZF9jaXBoZXIsICJwbGFpbnRl
eHQ6ICAgICVzIiwKLSAgICAgICAgICAgICAgICAgICAgc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0
cmluZyhidWZmZXIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgdGVzdF9jYXNlLT5wbGFpbnRleHRfbGVuZ3RoX29jdGV0cykpOworICAgICAgICAgICAg
ICAgICAgICBzcnRwX29jdGV0X3N0cmluZ19oZXhfc3RyaW5nKAorICAgICAgICAgICAgICAgICAg
ICAgICAgYnVmZmVyLCB0ZXN0X2Nhc2UtPnBsYWludGV4dF9sZW5ndGhfb2N0ZXRzKSk7CiAKICAg
ICAgICAgLyogc2V0IHRoZSBpbml0aWFsaXphdGlvbiB2ZWN0b3IgKi8KLSAgICAgICAgc3RhdHVz
ID0gc3J0cF9jaXBoZXJfc2V0X2l2KGMsICh1aW50OF90Kil0ZXN0X2Nhc2UtPmlkeCwgc3J0cF9k
aXJlY3Rpb25fZW5jcnlwdCk7CisgICAgICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3NldF9pdihj
LCAodWludDhfdCAqKXRlc3RfY2FzZS0+aWR4LAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgc3J0cF9kaXJlY3Rpb25fZW5jcnlwdCk7CiAgICAgICAgIGlmIChzdGF0dXMpIHsK
ICAgICAgICAgICAgIHNydHBfY2lwaGVyX2RlYWxsb2MoYyk7CiAgICAgICAgICAgICByZXR1cm4g
c3RhdHVzOwogICAgICAgICB9CiAKLSAgICAgICAgaWYgKGMtPmFsZ29yaXRobSA9PSBTUlRQX0FF
U19HQ01fMTI4IHx8IGMtPmFsZ29yaXRobSA9PSBTUlRQX0FFU19HQ01fMjU2KSB7CisgICAgICAg
IGlmIChjLT5hbGdvcml0aG0gPT0gU1JUUF9BRVNfR0NNXzEyOCB8fAorICAgICAgICAgICAgYy0+
YWxnb3JpdGhtID09IFNSVFBfQUVTX0dDTV8yNTYpIHsKICAgICAgICAgICAgIGRlYnVnX3ByaW50
KHNydHBfbW9kX2NpcGhlciwgIklWOiAgICAlcyIsCiAgICAgICAgICAgICAgICAgICAgICAgICBz
cnRwX29jdGV0X3N0cmluZ19oZXhfc3RyaW5nKHRlc3RfY2FzZS0+aWR4LCAxMikpOwogCiAgICAg
ICAgICAgICAvKgogICAgICAgICAgICAgICogU2V0IHRoZSBBQUQKICAgICAgICAgICAgICAqLwot
ICAgICAgICAgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfc2V0X2FhZChjLCB0ZXN0X2Nhc2UtPmFh
ZCwgdGVzdF9jYXNlLT5hYWRfbGVuZ3RoX29jdGV0cyk7CisgICAgICAgICAgICBzdGF0dXMgPSBz
cnRwX2NpcGhlcl9zZXRfYWFkKGMsIHRlc3RfY2FzZS0+YWFkLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB0ZXN0X2Nhc2UtPmFhZF9sZW5ndGhfb2N0ZXRzKTsKICAg
ICAgICAgICAgIGlmIChzdGF0dXMpIHsKICAgICAgICAgICAgICAgICBzcnRwX2NpcGhlcl9kZWFs
bG9jKGMpOwogICAgICAgICAgICAgICAgIHJldHVybiBzdGF0dXM7CiAgICAgICAgICAgICB9CiAg
ICAgICAgICAgICBkZWJ1Z19wcmludChzcnRwX21vZF9jaXBoZXIsICJBQUQ6ICAgICVzIiwKLSAg
ICAgICAgICAgICAgICAgICAgICAgIHNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcodGVzdF9j
YXNlLT5hYWQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHRlc3RfY2FzZS0+YWFkX2xlbmd0aF9vY3RldHMpKTsKKyAgICAgICAgICAgICAgICAg
ICAgICAgIHNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcoCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgdGVzdF9jYXNlLT5hYWQsIHRlc3RfY2FzZS0+YWFkX2xlbmd0aF9vY3RldHMpKTsK
ICAgICAgICAgfQogCiAgICAgICAgIC8qIGVuY3J5cHQgKi8KQEAgLTI4Niw3ICszMDMsOCBAQCBz
cnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NpcGhlcl90eXBlX3Rlc3QgKGNvbnN0IHNydHBfY2lwaGVy
X3R5cGVfdCAqY3QsIGNvbnN0IHNydAogICAgICAgICAgICAgcmV0dXJuIHN0YXR1czsKICAgICAg
ICAgfQogCi0gICAgICAgIGlmIChjLT5hbGdvcml0aG0gPT0gU1JUUF9BRVNfR0NNXzEyOCB8fCBj
LT5hbGdvcml0aG0gPT0gU1JUUF9BRVNfR0NNXzI1NikgeworICAgICAgICBpZiAoYy0+YWxnb3Jp
dGhtID09IFNSVFBfQUVTX0dDTV8xMjggfHwKKyAgICAgICAgICAgIGMtPmFsZ29yaXRobSA9PSBT
UlRQX0FFU19HQ01fMjU2KSB7CiAgICAgICAgICAgICAvKgogICAgICAgICAgICAgICogR2V0IHRo
ZSBHQ00gdGFnCiAgICAgICAgICAgICAgKi8KQEAgLTI5OSw4ICszMTcsOCBAQCBzcnRwX2Vycl9z
dGF0dXNfdCBzcnRwX2NpcGhlcl90eXBlX3Rlc3QgKGNvbnN0IHNydHBfY2lwaGVyX3R5cGVfdCAq
Y3QsIGNvbnN0IHNydAogICAgICAgICB9CiAKICAgICAgICAgZGVidWdfcHJpbnQoc3J0cF9tb2Rf
Y2lwaGVyLCAiY2lwaGVydGV4dDogICAlcyIsCi0gICAgICAgICAgICAgICAgICAgIHNydHBfb2N0
ZXRfc3RyaW5nX2hleF9zdHJpbmcoYnVmZmVyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHRlc3RfY2FzZS0+Y2lwaGVydGV4dF9sZW5ndGhfb2N0ZXRz
KSk7CisgICAgICAgICAgICAgICAgICAgIHNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcoCisg
ICAgICAgICAgICAgICAgICAgICAgICBidWZmZXIsIHRlc3RfY2FzZS0+Y2lwaGVydGV4dF9sZW5n
dGhfb2N0ZXRzKSk7CiAKICAgICAgICAgLyogY29tcGFyZSB0aGUgcmVzdWx0aW5nIGNpcGhlcnRl
eHQgd2l0aCB0aGF0IGluIHRoZSB0ZXN0IGNhc2UgKi8KICAgICAgICAgaWYgKGxlbiAhPSB0ZXN0
X2Nhc2UtPmNpcGhlcnRleHRfbGVuZ3RoX29jdGV0cykgewpAQCAtMzA4LDIyICszMjYsMjIgQEAg
c3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jaXBoZXJfdHlwZV90ZXN0IChjb25zdCBzcnRwX2NpcGhl
cl90eXBlX3QgKmN0LCBjb25zdCBzcnQKICAgICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0
dXNfYWxnb19mYWlsOwogICAgICAgICB9CiAgICAgICAgIHN0YXR1cyA9IHNydHBfZXJyX3N0YXR1
c19vazsKLSAgICAgICAgZm9yIChpID0gMDsgaSA8IHRlc3RfY2FzZS0+Y2lwaGVydGV4dF9sZW5n
dGhfb2N0ZXRzOyBpKyspIHsKLSAgICAgICAgICAgIGlmIChidWZmZXJbaV0gIT0gdGVzdF9jYXNl
LT5jaXBoZXJ0ZXh0W2ldKSB7CisgICAgICAgIGZvciAoayA9IDA7IGsgPCB0ZXN0X2Nhc2UtPmNp
cGhlcnRleHRfbGVuZ3RoX29jdGV0czsgaysrKSB7CisgICAgICAgICAgICBpZiAoYnVmZmVyW2td
ICE9IHRlc3RfY2FzZS0+Y2lwaGVydGV4dFtrXSkgewogICAgICAgICAgICAgICAgIHN0YXR1cyA9
IHNydHBfZXJyX3N0YXR1c19hbGdvX2ZhaWw7CiAgICAgICAgICAgICAgICAgZGVidWdfcHJpbnQo
c3J0cF9tb2RfY2lwaGVyLCAidGVzdCBjYXNlICVkIGZhaWxlZCIsIGNhc2VfbnVtKTsKLSAgICAg
ICAgICAgICAgICBkZWJ1Z19wcmludChzcnRwX21vZF9jaXBoZXIsICIoZmFpbHVyZSBhdCBieXRl
ICVkKSIsIGkpOworICAgICAgICAgICAgICAgIGRlYnVnX3ByaW50KHNydHBfbW9kX2NpcGhlciwg
IihmYWlsdXJlIGF0IGJ5dGUgJXUpIiwgayk7CiAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAg
ICAgICAgICB9CiAgICAgICAgIH0KICAgICAgICAgaWYgKHN0YXR1cykgewotCiAgICAgICAgICAg
ICBkZWJ1Z19wcmludChzcnRwX21vZF9jaXBoZXIsICJjIGNvbXB1dGVkOiAlcyIsCi0gICAgICAg
ICAgICAgICAgICAgICAgICBzcnRwX29jdGV0X3N0cmluZ19oZXhfc3RyaW5nKGJ1ZmZlciwKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMiAqIHRl
c3RfY2FzZS0+cGxhaW50ZXh0X2xlbmd0aF9vY3RldHMpKTsKKyAgICAgICAgICAgICAgICAgICAg
ICAgIHNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcoCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgYnVmZmVyLCAyICogdGVzdF9jYXNlLT5wbGFpbnRleHRfbGVuZ3RoX29jdGV0cykpOwog
ICAgICAgICAgICAgZGVidWdfcHJpbnQoc3J0cF9tb2RfY2lwaGVyLCAiYyBleHBlY3RlZDogJXMi
LAotICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZyh0
ZXN0X2Nhc2UtPmNpcGhlcnRleHQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIDIgKiB0ZXN0X2Nhc2UtPnBsYWludGV4dF9sZW5ndGhfb2N0ZXRz
KSk7CisgICAgICAgICAgICAgICAgICAgICAgICBzcnRwX29jdGV0X3N0cmluZ19oZXhfc3RyaW5n
KAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRlc3RfY2FzZS0+Y2lwaGVydGV4dCwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAyICogdGVzdF9jYXNlLT5wbGFpbnRleHRfbGVuZ3Ro
X29jdGV0cykpOwogCiAgICAgICAgICAgICBzcnRwX2NpcGhlcl9kZWFsbG9jKGMpOwogICAgICAg
ICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19hbGdvX2ZhaWw7CkBAIC0zNDYsMzMgKzM2NCwz
NiBAQCBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NpcGhlcl90eXBlX3Rlc3QgKGNvbnN0IHNydHBf
Y2lwaGVyX3R5cGVfdCAqY3QsIGNvbnN0IHNydAogICAgICAgICAgICAgc3J0cF9jaXBoZXJfZGVh
bGxvYyhjKTsKICAgICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtOwog
ICAgICAgICB9Ci0gICAgICAgIGZvciAoaSA9IDA7IGkgPCB0ZXN0X2Nhc2UtPmNpcGhlcnRleHRf
bGVuZ3RoX29jdGV0czsgaSsrKSB7Ci0gICAgICAgICAgICBidWZmZXJbaV0gPSB0ZXN0X2Nhc2Ut
PmNpcGhlcnRleHRbaV07CisgICAgICAgIGZvciAoayA9IDA7IGsgPCB0ZXN0X2Nhc2UtPmNpcGhl
cnRleHRfbGVuZ3RoX29jdGV0czsgaysrKSB7CisgICAgICAgICAgICBidWZmZXJba10gPSB0ZXN0
X2Nhc2UtPmNpcGhlcnRleHRba107CiAgICAgICAgIH0KIAogICAgICAgICBkZWJ1Z19wcmludChz
cnRwX21vZF9jaXBoZXIsICJjaXBoZXJ0ZXh0OiAgICAlcyIsCi0gICAgICAgICAgICAgICAgICAg
IHNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcoYnVmZmVyLAotICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRlc3RfY2FzZS0+cGxhaW50ZXh0X2xlbmd0
aF9vY3RldHMpKTsKKyAgICAgICAgICAgICAgICAgICAgc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0
cmluZygKKyAgICAgICAgICAgICAgICAgICAgICAgIGJ1ZmZlciwgdGVzdF9jYXNlLT5wbGFpbnRl
eHRfbGVuZ3RoX29jdGV0cykpOwogCiAgICAgICAgIC8qIHNldCB0aGUgaW5pdGlhbGl6YXRpb24g
dmVjdG9yICovCi0gICAgICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3NldF9pdihjLCAodWludDhf
dCopdGVzdF9jYXNlLT5pZHgsIHNydHBfZGlyZWN0aW9uX2RlY3J5cHQpOworICAgICAgICBzdGF0
dXMgPSBzcnRwX2NpcGhlcl9zZXRfaXYoYywgKHVpbnQ4X3QgKil0ZXN0X2Nhc2UtPmlkeCwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfZGlyZWN0aW9uX2RlY3J5cHQp
OwogICAgICAgICBpZiAoc3RhdHVzKSB7CiAgICAgICAgICAgICBzcnRwX2NpcGhlcl9kZWFsbG9j
KGMpOwogICAgICAgICAgICAgcmV0dXJuIHN0YXR1czsKICAgICAgICAgfQogCi0gICAgICAgIGlm
IChjLT5hbGdvcml0aG0gPT0gU1JUUF9BRVNfR0NNXzEyOCB8fCBjLT5hbGdvcml0aG0gPT0gU1JU
UF9BRVNfR0NNXzI1NikgeworICAgICAgICBpZiAoYy0+YWxnb3JpdGhtID09IFNSVFBfQUVTX0dD
TV8xMjggfHwKKyAgICAgICAgICAgIGMtPmFsZ29yaXRobSA9PSBTUlRQX0FFU19HQ01fMjU2KSB7
CiAgICAgICAgICAgICAvKgogICAgICAgICAgICAgICogU2V0IHRoZSBBQUQKICAgICAgICAgICAg
ICAqLwotICAgICAgICAgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfc2V0X2FhZChjLCB0ZXN0X2Nh
c2UtPmFhZCwgdGVzdF9jYXNlLT5hYWRfbGVuZ3RoX29jdGV0cyk7CisgICAgICAgICAgICBzdGF0
dXMgPSBzcnRwX2NpcGhlcl9zZXRfYWFkKGMsIHRlc3RfY2FzZS0+YWFkLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0X2Nhc2UtPmFhZF9sZW5ndGhfb2N0ZXRz
KTsKICAgICAgICAgICAgIGlmIChzdGF0dXMpIHsKICAgICAgICAgICAgICAgICBzcnRwX2NpcGhl
cl9kZWFsbG9jKGMpOwogICAgICAgICAgICAgICAgIHJldHVybiBzdGF0dXM7CiAgICAgICAgICAg
ICB9CiAgICAgICAgICAgICBkZWJ1Z19wcmludChzcnRwX21vZF9jaXBoZXIsICJBQUQ6ICAgICVz
IiwKLSAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmco
dGVzdF9jYXNlLT5hYWQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHRlc3RfY2FzZS0+YWFkX2xlbmd0aF9vY3RldHMpKTsKKyAgICAgICAgICAg
ICAgICAgICAgICAgIHNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcoCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgdGVzdF9jYXNlLT5hYWQsIHRlc3RfY2FzZS0+YWFkX2xlbmd0aF9vY3Rl
dHMpKTsKICAgICAgICAgfQogCiAgICAgICAgIC8qIGRlY3J5cHQgKi8KQEAgLTM4NCw4ICs0MDUs
OCBAQCBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NpcGhlcl90eXBlX3Rlc3QgKGNvbnN0IHNydHBf
Y2lwaGVyX3R5cGVfdCAqY3QsIGNvbnN0IHNydAogICAgICAgICB9CiAKICAgICAgICAgZGVidWdf
cHJpbnQoc3J0cF9tb2RfY2lwaGVyLCAicGxhaW50ZXh0OiAgICVzIiwKLSAgICAgICAgICAgICAg
ICAgICAgc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZyhidWZmZXIsCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVzdF9jYXNlLT5wbGFpbnRleHRf
bGVuZ3RoX29jdGV0cykpOworICAgICAgICAgICAgICAgICAgICBzcnRwX29jdGV0X3N0cmluZ19o
ZXhfc3RyaW5nKAorICAgICAgICAgICAgICAgICAgICAgICAgYnVmZmVyLCB0ZXN0X2Nhc2UtPnBs
YWludGV4dF9sZW5ndGhfb2N0ZXRzKSk7CiAKICAgICAgICAgLyogY29tcGFyZSB0aGUgcmVzdWx0
aW5nIHBsYWludGV4dCB3aXRoIHRoYXQgaW4gdGhlIHRlc3QgY2FzZSAqLwogICAgICAgICBpZiAo
bGVuICE9IHRlc3RfY2FzZS0+cGxhaW50ZXh0X2xlbmd0aF9vY3RldHMpIHsKQEAgLTM5MywyMSAr
NDE0LDIxIEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfY2lwaGVyX3R5cGVfdGVzdCAoY29uc3Qg
c3J0cF9jaXBoZXJfdHlwZV90ICpjdCwgY29uc3Qgc3J0CiAgICAgICAgICAgICByZXR1cm4gc3J0
cF9lcnJfc3RhdHVzX2FsZ29fZmFpbDsKICAgICAgICAgfQogICAgICAgICBzdGF0dXMgPSBzcnRw
X2Vycl9zdGF0dXNfb2s7Ci0gICAgICAgIGZvciAoaSA9IDA7IGkgPCB0ZXN0X2Nhc2UtPnBsYWlu
dGV4dF9sZW5ndGhfb2N0ZXRzOyBpKyspIHsKLSAgICAgICAgICAgIGlmIChidWZmZXJbaV0gIT0g
dGVzdF9jYXNlLT5wbGFpbnRleHRbaV0pIHsKKyAgICAgICAgZm9yIChrID0gMDsgayA8IHRlc3Rf
Y2FzZS0+cGxhaW50ZXh0X2xlbmd0aF9vY3RldHM7IGsrKykgeworICAgICAgICAgICAgaWYgKGJ1
ZmZlcltrXSAhPSB0ZXN0X2Nhc2UtPnBsYWludGV4dFtrXSkgewogICAgICAgICAgICAgICAgIHN0
YXR1cyA9IHNydHBfZXJyX3N0YXR1c19hbGdvX2ZhaWw7CiAgICAgICAgICAgICAgICAgZGVidWdf
cHJpbnQoc3J0cF9tb2RfY2lwaGVyLCAidGVzdCBjYXNlICVkIGZhaWxlZCIsIGNhc2VfbnVtKTsK
LSAgICAgICAgICAgICAgICBkZWJ1Z19wcmludChzcnRwX21vZF9jaXBoZXIsICIoZmFpbHVyZSBh
dCBieXRlICVkKSIsIGkpOworICAgICAgICAgICAgICAgIGRlYnVnX3ByaW50KHNydHBfbW9kX2Np
cGhlciwgIihmYWlsdXJlIGF0IGJ5dGUgJXUpIiwgayk7CiAgICAgICAgICAgICB9CiAgICAgICAg
IH0KICAgICAgICAgaWYgKHN0YXR1cykgewotCiAgICAgICAgICAgICBkZWJ1Z19wcmludChzcnRw
X21vZF9jaXBoZXIsICJwIGNvbXB1dGVkOiAlcyIsCi0gICAgICAgICAgICAgICAgICAgICAgICBz
cnRwX29jdGV0X3N0cmluZ19oZXhfc3RyaW5nKGJ1ZmZlciwKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMiAqIHRlc3RfY2FzZS0+cGxhaW50ZXh0
X2xlbmd0aF9vY3RldHMpKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfb2N0ZXRfc3Ry
aW5nX2hleF9zdHJpbmcoCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnVmZmVyLCAyICog
dGVzdF9jYXNlLT5wbGFpbnRleHRfbGVuZ3RoX29jdGV0cykpOwogICAgICAgICAgICAgZGVidWdf
cHJpbnQoc3J0cF9tb2RfY2lwaGVyLCAicCBleHBlY3RlZDogJXMiLAotICAgICAgICAgICAgICAg
ICAgICAgICAgc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZyh0ZXN0X2Nhc2UtPnBsYWludGV4
dCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
MiAqIHRlc3RfY2FzZS0+cGxhaW50ZXh0X2xlbmd0aF9vY3RldHMpKTsKKyAgICAgICAgICAgICAg
ICAgICAgICAgIHNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcoCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgdGVzdF9jYXNlLT5wbGFpbnRleHQsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgMiAqIHRlc3RfY2FzZS0+cGxhaW50ZXh0X2xlbmd0aF9vY3RldHMpKTsKIAogICAgICAg
ICAgICAgc3J0cF9jaXBoZXJfZGVhbGxvYyhjKTsKICAgICAgICAgICAgIHJldHVybiBzcnRwX2Vy
cl9zdGF0dXNfYWxnb19mYWlsOwpAQCAtNDMxLDE0ICs0NTIsMTUgQEAgc3J0cF9lcnJfc3RhdHVz
X3Qgc3J0cF9jaXBoZXJfdHlwZV90ZXN0IChjb25zdCBzcnRwX2NpcGhlcl90eXBlX3QgKmN0LCBj
b25zdCBzcnQKIAogICAgIC8qIGFsbG9jYXRlIGNpcGhlciwgdXNpbmcgcGFyYW1hdGVycyBmcm9t
IHRoZSBmaXJzdCB0ZXN0IGNhc2UgKi8KICAgICB0ZXN0X2Nhc2UgPSB0ZXN0X2RhdGE7Ci0gICAg
c3RhdHVzID0gc3J0cF9jaXBoZXJfdHlwZV9hbGxvYyhjdCwgJmMsIHRlc3RfY2FzZS0+a2V5X2xl
bmd0aF9vY3RldHMsIHRlc3RfY2FzZS0+dGFnX2xlbmd0aF9vY3RldHMpOworICAgIHN0YXR1cyA9
IHNydHBfY2lwaGVyX3R5cGVfYWxsb2MoY3QsICZjLCB0ZXN0X2Nhc2UtPmtleV9sZW5ndGhfb2N0
ZXRzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVzdF9jYXNlLT50YWdf
bGVuZ3RoX29jdGV0cyk7CiAgICAgaWYgKHN0YXR1cykgewogICAgICAgICByZXR1cm4gc3RhdHVz
OwogICAgIH0KIAogICAgIGZvciAoaiA9IDA7IGogPCBOVU1fUkFORF9URVNUUzsgaisrKSB7Ci0g
ICAgICAgIHVuc2lnbmVkIGxlbmd0aDsKLSAgICAgICAgaW50IHBsYWludGV4dF9sZW47CisgICAg
ICAgIHVuc2lnbmVkIGludCBsZW5ndGg7CisgICAgICAgIHVuc2lnbmVkIGludCBwbGFpbnRleHRf
bGVuOwogICAgICAgICB1aW50OF90IGtleVtNQVhfS0VZX0xFTl07CiAgICAgICAgIHVpbnQ4X3Qg
aXZbTUFYX0tFWV9MRU5dOwogCkBAIC00ODUsMjQgKzUwNywyNyBAQCBzcnRwX2Vycl9zdGF0dXNf
dCBzcnRwX2NpcGhlcl90eXBlX3Rlc3QgKGNvbnN0IHNydHBfY2lwaGVyX3R5cGVfdCAqY3QsIGNv
bnN0IHNydAogICAgICAgICB9CiAKICAgICAgICAgLyogc2V0IGluaXRpYWxpemF0aW9uIHZlY3Rv
ciAqLwotICAgICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9zZXRfaXYoYywgKHVpbnQ4X3QqKXRl
c3RfY2FzZS0+aWR4LCBzcnRwX2RpcmVjdGlvbl9lbmNyeXB0KTsKKyAgICAgICAgc3RhdHVzID0g
c3J0cF9jaXBoZXJfc2V0X2l2KGMsICh1aW50OF90ICopdGVzdF9jYXNlLT5pZHgsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcnRwX2RpcmVjdGlvbl9lbmNyeXB0KTsKICAg
ICAgICAgaWYgKHN0YXR1cykgewogICAgICAgICAgICAgc3J0cF9jaXBoZXJfZGVhbGxvYyhjKTsK
ICAgICAgICAgICAgIHJldHVybiBzdGF0dXM7CiAgICAgICAgIH0KIAotICAgICAgICBpZiAoYy0+
YWxnb3JpdGhtID09IFNSVFBfQUVTX0dDTV8xMjggfHwgYy0+YWxnb3JpdGhtID09IFNSVFBfQUVT
X0dDTV8yNTYpIHsKKyAgICAgICAgaWYgKGMtPmFsZ29yaXRobSA9PSBTUlRQX0FFU19HQ01fMTI4
IHx8CisgICAgICAgICAgICBjLT5hbGdvcml0aG0gPT0gU1JUUF9BRVNfR0NNXzI1NikgewogICAg
ICAgICAgICAgLyoKICAgICAgICAgICAgICAqIFNldCB0aGUgQUFECiAgICAgICAgICAgICAgKi8K
LSAgICAgICAgICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3NldF9hYWQoYywgdGVzdF9jYXNlLT5h
YWQsIHRlc3RfY2FzZS0+YWFkX2xlbmd0aF9vY3RldHMpOworICAgICAgICAgICAgc3RhdHVzID0g
c3J0cF9jaXBoZXJfc2V0X2FhZChjLCB0ZXN0X2Nhc2UtPmFhZCwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgdGVzdF9jYXNlLT5hYWRfbGVuZ3RoX29jdGV0cyk7CiAg
ICAgICAgICAgICBpZiAoc3RhdHVzKSB7CiAgICAgICAgICAgICAgICAgc3J0cF9jaXBoZXJfZGVh
bGxvYyhjKTsKICAgICAgICAgICAgICAgICByZXR1cm4gc3RhdHVzOwogICAgICAgICAgICAgfQog
ICAgICAgICAgICAgZGVidWdfcHJpbnQoc3J0cF9tb2RfY2lwaGVyLCAiQUFEOiAgICAlcyIsCi0g
ICAgICAgICAgICAgICAgICAgICAgICBzcnRwX29jdGV0X3N0cmluZ19oZXhfc3RyaW5nKHRlc3Rf
Y2FzZS0+YWFkLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB0ZXN0X2Nhc2UtPmFhZF9sZW5ndGhfb2N0ZXRzKSk7CisgICAgICAgICAgICAgICAg
ICAgICAgICBzcnRwX29jdGV0X3N0cmluZ19oZXhfc3RyaW5nKAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHRlc3RfY2FzZS0+YWFkLCB0ZXN0X2Nhc2UtPmFhZF9sZW5ndGhfb2N0ZXRzKSk7
CiAgICAgICAgIH0KIAogICAgICAgICAvKiBlbmNyeXB0IGJ1ZmZlciB3aXRoIGNpcGhlciAqLwpA
QCAtNTEyLDcgKzUzNyw4IEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfY2lwaGVyX3R5cGVfdGVz
dCAoY29uc3Qgc3J0cF9jaXBoZXJfdHlwZV90ICpjdCwgY29uc3Qgc3J0CiAgICAgICAgICAgICBz
cnRwX2NpcGhlcl9kZWFsbG9jKGMpOwogICAgICAgICAgICAgcmV0dXJuIHN0YXR1czsKICAgICAg
ICAgfQotICAgICAgICBpZiAoYy0+YWxnb3JpdGhtID09IFNSVFBfQUVTX0dDTV8xMjggfHwgYy0+
YWxnb3JpdGhtID09IFNSVFBfQUVTX0dDTV8yNTYpIHsKKyAgICAgICAgaWYgKGMtPmFsZ29yaXRo
bSA9PSBTUlRQX0FFU19HQ01fMTI4IHx8CisgICAgICAgICAgICBjLT5hbGdvcml0aG0gPT0gU1JU
UF9BRVNfR0NNXzI1NikgewogICAgICAgICAgICAgLyoKICAgICAgICAgICAgICAqIEdldCB0aGUg
R0NNIHRhZwogICAgICAgICAgICAgICovCkBAIC01MzUsMjMgKzU2MSwyNiBAQCBzcnRwX2Vycl9z
dGF0dXNfdCBzcnRwX2NpcGhlcl90eXBlX3Rlc3QgKGNvbnN0IHNydHBfY2lwaGVyX3R5cGVfdCAq
Y3QsIGNvbnN0IHNydAogICAgICAgICAgICAgc3J0cF9jaXBoZXJfZGVhbGxvYyhjKTsKICAgICAg
ICAgICAgIHJldHVybiBzdGF0dXM7CiAgICAgICAgIH0KLSAgICAgICAgc3RhdHVzID0gc3J0cF9j
aXBoZXJfc2V0X2l2KGMsICh1aW50OF90Kil0ZXN0X2Nhc2UtPmlkeCwgc3J0cF9kaXJlY3Rpb25f
ZGVjcnlwdCk7CisgICAgICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3NldF9pdihjLCAodWludDhf
dCAqKXRlc3RfY2FzZS0+aWR4LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
c3J0cF9kaXJlY3Rpb25fZGVjcnlwdCk7CiAgICAgICAgIGlmIChzdGF0dXMpIHsKICAgICAgICAg
ICAgIHNydHBfY2lwaGVyX2RlYWxsb2MoYyk7CiAgICAgICAgICAgICByZXR1cm4gc3RhdHVzOwog
ICAgICAgICB9Ci0gICAgICAgIGlmIChjLT5hbGdvcml0aG0gPT0gU1JUUF9BRVNfR0NNXzEyOCB8
fCBjLT5hbGdvcml0aG0gPT0gU1JUUF9BRVNfR0NNXzI1NikgeworICAgICAgICBpZiAoYy0+YWxn
b3JpdGhtID09IFNSVFBfQUVTX0dDTV8xMjggfHwKKyAgICAgICAgICAgIGMtPmFsZ29yaXRobSA9
PSBTUlRQX0FFU19HQ01fMjU2KSB7CiAgICAgICAgICAgICAvKgogICAgICAgICAgICAgICogU2V0
IHRoZSBBQUQKICAgICAgICAgICAgICAqLwotICAgICAgICAgICAgc3RhdHVzID0gc3J0cF9jaXBo
ZXJfc2V0X2FhZChjLCB0ZXN0X2Nhc2UtPmFhZCwgdGVzdF9jYXNlLT5hYWRfbGVuZ3RoX29jdGV0
cyk7CisgICAgICAgICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9zZXRfYWFkKGMsIHRlc3RfY2Fz
ZS0+YWFkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0X2Nh
c2UtPmFhZF9sZW5ndGhfb2N0ZXRzKTsKICAgICAgICAgICAgIGlmIChzdGF0dXMpIHsKICAgICAg
ICAgICAgICAgICBzcnRwX2NpcGhlcl9kZWFsbG9jKGMpOwogICAgICAgICAgICAgICAgIHJldHVy
biBzdGF0dXM7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBkZWJ1Z19wcmludChzcnRwX21v
ZF9jaXBoZXIsICJBQUQ6ICAgICVzIiwKLSAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfb2N0
ZXRfc3RyaW5nX2hleF9zdHJpbmcodGVzdF9jYXNlLT5hYWQsCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRlc3RfY2FzZS0+YWFkX2xlbmd0aF9v
Y3RldHMpKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfb2N0ZXRfc3RyaW5nX2hleF9z
dHJpbmcoCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVzdF9jYXNlLT5hYWQsIHRlc3Rf
Y2FzZS0+YWFkX2xlbmd0aF9vY3RldHMpKTsKICAgICAgICAgfQogICAgICAgICBzdGF0dXMgPSBz
cnRwX2NpcGhlcl9kZWNyeXB0KGMsIGJ1ZmZlciwgJmxlbmd0aCk7CiAgICAgICAgIGlmIChzdGF0
dXMpIHsKQEAgLTU2OCwxOCArNTk3LDE4IEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfY2lwaGVy
X3R5cGVfdGVzdCAoY29uc3Qgc3J0cF9jaXBoZXJfdHlwZV90ICpjdCwgY29uc3Qgc3J0CiAgICAg
ICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2FsZ29fZmFpbDsKICAgICAgICAgfQogICAg
ICAgICBzdGF0dXMgPSBzcnRwX2Vycl9zdGF0dXNfb2s7Ci0gICAgICAgIGZvciAoaSA9IDA7IGkg
PCBwbGFpbnRleHRfbGVuOyBpKyspIHsKLSAgICAgICAgICAgIGlmIChidWZmZXJbaV0gIT0gYnVm
ZmVyMltpXSkgeworICAgICAgICBmb3IgKGsgPSAwOyBrIDwgcGxhaW50ZXh0X2xlbjsgaysrKSB7
CisgICAgICAgICAgICBpZiAoYnVmZmVyW2tdICE9IGJ1ZmZlcjJba10pIHsKICAgICAgICAgICAg
ICAgICBzdGF0dXMgPSBzcnRwX2Vycl9zdGF0dXNfYWxnb19mYWlsOwotICAgICAgICAgICAgICAg
IGRlYnVnX3ByaW50KHNydHBfbW9kX2NpcGhlciwgInJhbmRvbSB0ZXN0IGNhc2UgJWQgZmFpbGVk
IiwgY2FzZV9udW0pOwotICAgICAgICAgICAgICAgIGRlYnVnX3ByaW50KHNydHBfbW9kX2NpcGhl
ciwgIihmYWlsdXJlIGF0IGJ5dGUgJWQpIiwgaSk7CisgICAgICAgICAgICAgICAgZGVidWdfcHJp
bnQoc3J0cF9tb2RfY2lwaGVyLCAicmFuZG9tIHRlc3QgY2FzZSAlZCBmYWlsZWQiLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGNhc2VfbnVtKTsKKyAgICAgICAgICAgICAgICBkZWJ1Z19w
cmludChzcnRwX21vZF9jaXBoZXIsICIoZmFpbHVyZSBhdCBieXRlICV1KSIsIGspOwogICAgICAg
ICAgICAgfQogICAgICAgICB9CiAgICAgICAgIGlmIChzdGF0dXMpIHsKICAgICAgICAgICAgIHNy
dHBfY2lwaGVyX2RlYWxsb2MoYyk7CiAgICAgICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVz
X2FsZ29fZmFpbDsKICAgICAgICAgfQotCiAgICAgfQogCiAgICAgc3RhdHVzID0gc3J0cF9jaXBo
ZXJfZGVhbGxvYyhjKTsKQEAgLTU5MCwxMiArNjE5LDExIEBAIHNydHBfZXJyX3N0YXR1c190IHNy
dHBfY2lwaGVyX3R5cGVfdGVzdCAoY29uc3Qgc3J0cF9jaXBoZXJfdHlwZV90ICpjdCwgY29uc3Qg
c3J0CiAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0KIAotCiAvKgotICogc3J0cF9j
aXBoZXJfdHlwZV9zZWxmX3Rlc3QoY3QpIHBlcmZvcm1zIHNydHBfY2lwaGVyX3R5cGVfdGVzdCBv
biBjdCdzIGludGVybmFsCi0gKiBsaXN0IG9mIHRlc3QgZGF0YS4KKyAqIHNydHBfY2lwaGVyX3R5
cGVfc2VsZl90ZXN0KGN0KSBwZXJmb3JtcyBzcnRwX2NpcGhlcl90eXBlX3Rlc3Qgb24gY3Qncwor
ICogaW50ZXJuYWwgbGlzdCBvZiB0ZXN0IGRhdGEuCiAgKi8KLXNydHBfZXJyX3N0YXR1c190IHNy
dHBfY2lwaGVyX3R5cGVfc2VsZl90ZXN0IChjb25zdCBzcnRwX2NpcGhlcl90eXBlX3QgKmN0KQor
c3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jaXBoZXJfdHlwZV9zZWxmX3Rlc3QoY29uc3Qgc3J0cF9j
aXBoZXJfdHlwZV90ICpjdCkKIHsKICAgICByZXR1cm4gc3J0cF9jaXBoZXJfdHlwZV90ZXN0KGN0
LCBjdC0+dGVzdF9kYXRhKTsKIH0KQEAgLTYxMCw3ICs2MzgsOSBAQCBzcnRwX2Vycl9zdGF0dXNf
dCBzcnRwX2NpcGhlcl90eXBlX3NlbGZfdGVzdCAoY29uc3Qgc3J0cF9jaXBoZXJfdHlwZV90ICpj
dCkKICAqCiAgKiBpZiBhbiBlcnJvciBpcyBlbmNvdW50ZXJlZCwgdGhlIHZhbHVlIDAgaXMgcmV0
dXJuZWQKICAqLwotdWludDY0X3Qgc3J0cF9jaXBoZXJfYml0c19wZXJfc2Vjb25kIChzcnRwX2Np
cGhlcl90ICpjLCBpbnQgb2N0ZXRzX2luX2J1ZmZlciwgaW50IG51bV90cmlhbHMpCit1aW50NjRf
dCBzcnRwX2NpcGhlcl9iaXRzX3Blcl9zZWNvbmQoc3J0cF9jaXBoZXJfdCAqYywKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgb2N0ZXRzX2luX2J1ZmZlciwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgbnVtX3RyaWFscykKIHsKICAgICBp
bnQgaTsKICAgICB2MTI4X3Qgbm9uY2U7CkBAIC02MTgsMTYgKzY0OCwxNiBAQCB1aW50NjRfdCBz
cnRwX2NpcGhlcl9iaXRzX3Blcl9zZWNvbmQgKHNydHBfY2lwaGVyX3QgKmMsIGludCBvY3RldHNf
aW5fYnVmZmVyLCBpbgogICAgIHVuc2lnbmVkIGNoYXIgKmVuY19idWY7CiAgICAgdW5zaWduZWQg
aW50IGxlbiA9IG9jdGV0c19pbl9idWZmZXI7CiAKLSAgICBlbmNfYnVmID0gKHVuc2lnbmVkIGNo
YXIqKXNydHBfY3J5cHRvX2FsbG9jKG9jdGV0c19pbl9idWZmZXIpOworICAgIGVuY19idWYgPSAo
dW5zaWduZWQgY2hhciAqKXNydHBfY3J5cHRvX2FsbG9jKG9jdGV0c19pbl9idWZmZXIpOwogICAg
IGlmIChlbmNfYnVmID09IE5VTEwpIHsKICAgICAgICAgcmV0dXJuIDA7IC8qIGluZGljYXRlIGJh
ZCBwYXJhbWV0ZXJzIGJ5IHJldHVybmluZyBudWxsICovCi0KICAgICB9CiAgICAgLyogdGltZSBy
ZXBlYXRlZCB0cmlhbHMgKi8KICAgICB2MTI4X3NldF90b196ZXJvKCZub25jZSk7CiAgICAgdGlt
ZXIgPSBjbG9jaygpOwogICAgIGZvciAoaSA9IDA7IGkgPCBudW1fdHJpYWxzOyBpKyssIG5vbmNl
LnYzMlszXSA9IGkpIHsKLSAgICAgICAgaWYgKHNydHBfY2lwaGVyX3NldF9pdihjLCAodWludDhf
dCopJm5vbmNlLCBzcnRwX2RpcmVjdGlvbl9lbmNyeXB0KSAhPSBzcnRwX2Vycl9zdGF0dXNfb2sp
IHsKKyAgICAgICAgaWYgKHNydHBfY2lwaGVyX3NldF9pdihjLCAodWludDhfdCAqKSZub25jZSwg
c3J0cF9kaXJlY3Rpb25fZW5jcnlwdCkgIT0KKyAgICAgICAgICAgIHNydHBfZXJyX3N0YXR1c19v
aykgewogICAgICAgICAgICAgc3J0cF9jcnlwdG9fZnJlZShlbmNfYnVmKTsKICAgICAgICAgICAg
IHJldHVybiAwOwogICAgICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2NpcGhlci9udWxsX2NpcGhl
ci5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJz
cnRwL2NyeXB0by9jaXBoZXIvbnVsbF9jaXBoZXIuYwppbmRleCA0NmJmMTEyNmRhMzBjYzFiZTQ0
YWQ5MjA5Njk2Yzg3NDk0YzUxNWE2Li42NTlhZGQwZDQ3NmQ0NmIzYTNhZmY1ZTAyOTVjMWMzMjIx
OGU5YjRkIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2NpcGhlci9udWxsX2NpcGhlci5jCisrKyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8v
Y2lwaGVyL251bGxfY2lwaGVyLmMKQEAgLTQ1LDQ1ICs0NSw0MiBAQAogICovCiAKICNpZmRlZiBI
QVZFX0NPTkZJR19ICi0gICAgI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbmZpZy5o
PgogI2VuZGlmCiAKICNpbmNsdWRlICJkYXRhdHlwZXMuaCIKICNpbmNsdWRlICJudWxsX2NpcGhl
ci5oIgotI2luY2x1ZGUgImVyci5oIiAgICAgICAgICAgICAgICAvKiBmb3Igc3J0cF9kZWJ1ZyAq
LworI2luY2x1ZGUgImVyci5oIiAvKiBmb3Igc3J0cF9kZWJ1ZyAqLwogI2luY2x1ZGUgImFsbG9j
LmgiCisjaW5jbHVkZSAiY2lwaGVyX3R5cGVzLmgiCiAKLS8qIHRoZSBudWxsX2NpcGhlciB1c2Vz
IHRoZSBjaXBoZXIgZGVidWcgbW9kdWxlICAqLwotCi1leHRlcm4gc3J0cF9kZWJ1Z19tb2R1bGVf
dCBzcnRwX21vZF9jaXBoZXI7Ci0KLXN0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX251bGxf
Y2lwaGVyX2FsbG9jIChzcnRwX2NpcGhlcl90ICoqYywgaW50IGtleV9sZW4sIGludCB0bGVuKQor
c3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfbnVsbF9jaXBoZXJfYWxsb2Moc3J0cF9jaXBo
ZXJfdCAqKmMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBpbnQga2V5X2xlbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGludCB0bGVuKQogewogICAgIGV4dGVybiBjb25zdCBzcnRwX2NpcGhlcl90eXBlX3Qg
c3J0cF9udWxsX2NpcGhlcjsKIAotICAgIGRlYnVnX3ByaW50KHNydHBfbW9kX2NpcGhlciwKLSAg
ICAgICAgICAgICAgICAiYWxsb2NhdGluZyBjaXBoZXIgd2l0aCBrZXkgbGVuZ3RoICVkIiwga2V5
X2xlbik7CisgICAgZGVidWdfcHJpbnQoc3J0cF9tb2RfY2lwaGVyLCAiYWxsb2NhdGluZyBjaXBo
ZXIgd2l0aCBrZXkgbGVuZ3RoICVkIiwKKyAgICAgICAgICAgICAgICBrZXlfbGVuKTsKIAogICAg
IC8qIGFsbG9jYXRlIG1lbW9yeSBhIGNpcGhlciBvZiB0eXBlIG51bGxfY2lwaGVyICovCiAgICAg
KmMgPSAoc3J0cF9jaXBoZXJfdCAqKXNydHBfY3J5cHRvX2FsbG9jKHNpemVvZihzcnRwX2NpcGhl
cl90KSk7CiAgICAgaWYgKCpjID09IE5VTEwpIHsKICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0
YXR1c19hbGxvY19mYWlsOwogICAgIH0KLSAgICBtZW1zZXQoKmMsIDB4MCwgc2l6ZW9mKHNydHBf
Y2lwaGVyX3QpKTsKIAogICAgIC8qIHNldCBwb2ludGVycyAqLwogICAgICgqYyktPmFsZ29yaXRo
bSA9IFNSVFBfTlVMTF9DSVBIRVI7CiAgICAgKCpjKS0+dHlwZSA9ICZzcnRwX251bGxfY2lwaGVy
OwotICAgICgqYyktPnN0YXRlID0gKHZvaWQgKikgMHgxOyAvKiBUaGUgbnVsbCBjaXBoZXIgZG9l
cyBub3QgbWFpbnRhaW4gc3RhdGUgKi8KKyAgICAoKmMpLT5zdGF0ZSA9ICh2b2lkICopMHgxOyAv
KiBUaGUgbnVsbCBjaXBoZXIgZG9lcyBub3QgbWFpbnRhaW4gc3RhdGUgKi8KIAogICAgIC8qIHNl
dCBrZXkgc2l6ZSAqLwogICAgICgqYyktPmtleV9sZW4gPSBrZXlfbGVuOwogCiAgICAgcmV0dXJu
IHNydHBfZXJyX3N0YXR1c19vazsKLQogfQogCi1zdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0
cF9udWxsX2NpcGhlcl9kZWFsbG9jIChzcnRwX2NpcGhlcl90ICpjKQorc3RhdGljIHNydHBfZXJy
X3N0YXR1c190IHNydHBfbnVsbF9jaXBoZXJfZGVhbGxvYyhzcnRwX2NpcGhlcl90ICpjKQogewog
ICAgIGV4dGVybiBjb25zdCBzcnRwX2NpcGhlcl90eXBlX3Qgc3J0cF9udWxsX2NpcGhlcjsKIApA
QCAtOTQsMjggKzkxLDMwIEBAIHN0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX251bGxfY2lw
aGVyX2RlYWxsb2MgKHNydHBfY2lwaGVyX3QgKmMpCiAgICAgc3J0cF9jcnlwdG9fZnJlZShjKTsK
IAogICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7Ci0KIH0KIAotc3RhdGljIHNydHBfZXJy
X3N0YXR1c190IHNydHBfbnVsbF9jaXBoZXJfaW5pdCAodm9pZCAqY3YsIGNvbnN0IHVpbnQ4X3Qg
KmtleSkKK3N0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX251bGxfY2lwaGVyX2luaXQodm9p
ZCAqY3YsIGNvbnN0IHVpbnQ4X3QgKmtleSkKIHsKLQkvKiBzcnRwX251bGxfY2lwaGVyX2N0eF90
ICpjID0gKHNydHBfbnVsbF9jaXBoZXJfY3R4X3QgKiljdjsgKi8KKyAgICAvKiBzcnRwX251bGxf
Y2lwaGVyX2N0eF90ICpjID0gKHNydHBfbnVsbF9jaXBoZXJfY3R4X3QgKiljdjsgKi8KIAogICAg
IGRlYnVnX3ByaW50KHNydHBfbW9kX2NpcGhlciwgImluaXRpYWxpemluZyBudWxsIGNpcGhlciIs
IE5VTEwpOwogCiAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0KIAotc3RhdGljIHNy
dHBfZXJyX3N0YXR1c190IHNydHBfbnVsbF9jaXBoZXJfc2V0X2l2ICh2b2lkICpjdiwgdWludDhf
dCAqaXYsIHNydHBfY2lwaGVyX2RpcmVjdGlvbl90IGRpcikKK3N0YXRpYyBzcnRwX2Vycl9zdGF0
dXNfdCBzcnRwX251bGxfY2lwaGVyX3NldF9pdih2b2lkICpjdiwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50OF90ICppdiwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcnRwX2NpcGhlcl9kaXJlY3Rp
b25fdCBkaXIpCiB7Ci0JLyogc3J0cF9udWxsX2NpcGhlcl9jdHhfdCAqYyA9IChzcnRwX251bGxf
Y2lwaGVyX2N0eF90ICopY3Y7ICovCisgICAgLyogc3J0cF9udWxsX2NpcGhlcl9jdHhfdCAqYyA9
IChzcnRwX251bGxfY2lwaGVyX2N0eF90ICopY3Y7ICovCiAgICAgcmV0dXJuIHNydHBfZXJyX3N0
YXR1c19vazsKIH0KIAotc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfbnVsbF9jaXBoZXJf
ZW5jcnlwdCAodm9pZCAqY3YsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHVuc2lnbmVkIGNoYXIgKmJ1ZiwgdW5zaWduZWQgaW50ICpieXRlc190b19lbmNyKQor
c3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfbnVsbF9jaXBoZXJfZW5jcnlwdCh2b2lkICpj
diwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5z
aWduZWQgY2hhciAqYnVmLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB1bnNpZ25lZCBpbnQgKmJ5dGVzX3RvX2VuY3IpCiB7Ci0JLyogc3J0cF9udWxs
X2NpcGhlcl9jdHhfdCAqYyA9IChzcnRwX251bGxfY2lwaGVyX2N0eF90ICopY3Y7ICovCisgICAg
Lyogc3J0cF9udWxsX2NpcGhlcl9jdHhfdCAqYyA9IChzcnRwX251bGxfY2lwaGVyX2N0eF90ICop
Y3Y7ICovCiAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0KIApAQCAtMTI5LDI4ICsx
MjgsMjYgQEAgc3RhdGljIGNvbnN0IHNydHBfY2lwaGVyX3Rlc3RfY2FzZV90IHNydHBfbnVsbF9j
aXBoZXJfdGVzdF8wID0gewogICAgIE5VTEwsIC8qIHBsYWludGV4dCAgICAgICAgICAgICAgICAq
LwogICAgIDAsICAgIC8qIG9jdGV0cyBpbiBwbGFpbnRleHQgICAgICAqLwogICAgIE5VTEwsIC8q
IGNpcGhlcnRleHQgICAgICAgICAgICAgICAqLwotICAgIDAsCi0gICAgTlVMTCwKLSAgICAwLAot
ICAgIE5VTEwgICAgICAgICAgICAgLyogcG9pbnRlciB0byBuZXh0IHRlc3RjYXNlICovCisgICAg
MCwgICAgLyogKi8KKyAgICBOVUxMLCAvKiAqLworICAgIDAsICAgIC8qICovCisgICAgTlVMTCAg
LyogcG9pbnRlciB0byBuZXh0IHRlc3RjYXNlICovCiB9OwogCi0KIC8qCiAgKiBub3RlOiB0aGUg
ZGVjcnlwdCBmdW5jdGlvbiBpcyBpZGVudGlhbCB0byB0aGUgZW5jcnlwdCBmdW5jdGlvbgogICov
CiAKIGNvbnN0IHNydHBfY2lwaGVyX3R5cGVfdCBzcnRwX251bGxfY2lwaGVyID0gewotICAgIHNy
dHBfbnVsbF9jaXBoZXJfYWxsb2MsCi0gICAgc3J0cF9udWxsX2NpcGhlcl9kZWFsbG9jLAotICAg
IHNydHBfbnVsbF9jaXBoZXJfaW5pdCwKLSAgICAwLCAgICAgICAgICAgICAgICAgICAgIC8qIHNl
dF9hYWQgKi8KLSAgICBzcnRwX251bGxfY2lwaGVyX2VuY3J5cHQsCi0gICAgc3J0cF9udWxsX2Np
cGhlcl9lbmNyeXB0LAotICAgIHNydHBfbnVsbF9jaXBoZXJfc2V0X2l2LAotICAgIDAsICAgICAg
ICAgICAgICAgICAgICAgLyogZ2V0X3RhZyAqLwotICAgIHNydHBfbnVsbF9jaXBoZXJfZGVzY3Jp
cHRpb24sCi0gICAgJnNydHBfbnVsbF9jaXBoZXJfdGVzdF8wLAotICAgIFNSVFBfTlVMTF9DSVBI
RVIKKyAgICBzcnRwX251bGxfY2lwaGVyX2FsbG9jLCAgICAgICAvKiAqLworICAgIHNydHBfbnVs
bF9jaXBoZXJfZGVhbGxvYywgICAgIC8qICovCisgICAgc3J0cF9udWxsX2NpcGhlcl9pbml0LCAg
ICAgICAgLyogKi8KKyAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBzZXRfYWFk
ICovCisgICAgc3J0cF9udWxsX2NpcGhlcl9lbmNyeXB0LCAgICAgLyogKi8KKyAgICBzcnRwX251
bGxfY2lwaGVyX2VuY3J5cHQsICAgICAvKiAqLworICAgIHNydHBfbnVsbF9jaXBoZXJfc2V0X2l2
LCAgICAgIC8qICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogZ2V0X3Rh
ZyAqLworICAgIHNydHBfbnVsbF9jaXBoZXJfZGVzY3JpcHRpb24sIC8qICovCisgICAgJnNydHBf
bnVsbF9jaXBoZXJfdGVzdF8wLCAgICAgLyogKi8KKyAgICBTUlRQX05VTExfQ0lQSEVSICAgICAg
ICAgICAgICAvKiAqLwogfTsKLQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9oYXNoL2F1dGguYyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8v
aGFzaC9hdXRoLmMKaW5kZXggYzZjZTM1NzZmN2RkNWUzZDcyZmJlYmZiNjA4Y2RlOWNkY2E5MjUz
Yy4uZjE5MzI3ZGM4ZTk5NGEwOThmODgxZGViMGVkNzJhNWM0YzUzYmI5NCAxMDA2NDQKLS0tIGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2Ny
eXB0by9oYXNoL2F1dGguYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2hhc2gvYXV0aC5jCkBAIC00NCwzMiArNDQsMzEg
QEAKICAqLwogCiAjaWZkZWYgSEFWRV9DT05GSUdfSAotICAgICNpbmNsdWRlIDxjb25maWcuaD4K
KyNpbmNsdWRlIDxjb25maWcuaD4KICNlbmRpZgogCiAjaW5jbHVkZSAiYXV0aC5oIgotI2luY2x1
ZGUgImVyci5oIiAgICAgICAgICAgICAgICAvKiBmb3Igc3J0cF9kZWJ1ZyAqLwotI2luY2x1ZGUg
ImRhdGF0eXBlcy5oIiAgICAgICAgICAvKiBmb3Igb2N0ZXRfc3RyaW5nICovCisjaW5jbHVkZSAi
ZXJyLmgiICAgICAgIC8qIGZvciBzcnRwX2RlYnVnICovCisjaW5jbHVkZSAiZGF0YXR5cGVzLmgi
IC8qIGZvciBvY3RldF9zdHJpbmcgKi8KIAogLyogdGhlIGRlYnVnIG1vZHVsZSBmb3IgYXV0aGVu
dGlhdGlvbiAqLwogCiBzcnRwX2RlYnVnX21vZHVsZV90IHNydHBfbW9kX2F1dGggPSB7Ci0gICAg
MCwgICAgICAgICAgICAgICAgLyogZGVidWdnaW5nIGlzIG9mZiBieSBkZWZhdWx0ICovCi0gICAg
ImF1dGggZnVuYyIgICAgICAgLyogcHJpbnRhYmxlIG5hbWUgZm9yIG1vZHVsZSAgICovCisgICAg
MCwgICAgICAgICAgLyogZGVidWdnaW5nIGlzIG9mZiBieSBkZWZhdWx0ICovCisgICAgImF1dGgg
ZnVuYyIgLyogcHJpbnRhYmxlIG5hbWUgZm9yIG1vZHVsZSAgICovCiB9OwogCi0KLWludCBzcnRw
X2F1dGhfZ2V0X2tleV9sZW5ndGggKGNvbnN0IHNydHBfYXV0aF90ICphKQoraW50IHNydHBfYXV0
aF9nZXRfa2V5X2xlbmd0aChjb25zdCBzcnRwX2F1dGhfdCAqYSkKIHsKICAgICByZXR1cm4gYS0+
a2V5X2xlbjsKIH0KIAotaW50IHNydHBfYXV0aF9nZXRfdGFnX2xlbmd0aCAoY29uc3Qgc3J0cF9h
dXRoX3QgKmEpCitpbnQgc3J0cF9hdXRoX2dldF90YWdfbGVuZ3RoKGNvbnN0IHNydHBfYXV0aF90
ICphKQogewogICAgIHJldHVybiBhLT5vdXRfbGVuOwogfQogCi1pbnQgc3J0cF9hdXRoX2dldF9w
cmVmaXhfbGVuZ3RoIChjb25zdCBzcnRwX2F1dGhfdCAqYSkKK2ludCBzcnRwX2F1dGhfZ2V0X3By
ZWZpeF9sZW5ndGgoY29uc3Qgc3J0cF9hdXRoX3QgKmEpCiB7CiAgICAgcmV0dXJuIGEtPnByZWZp
eF9sZW47CiB9CkBAIC04Myw4ICs4Miw4IEBAIGludCBzcnRwX2F1dGhfZ2V0X3ByZWZpeF9sZW5n
dGggKGNvbnN0IHNydHBfYXV0aF90ICphKQogLyogc2hvdWxkIGJlIGJpZyBlbm91Z2ggZm9yIG1v
c3Qgb2NjYXNpb25zICovCiAjZGVmaW5lIFNFTEZfVEVTVF9UQUdfQlVGX09DVEVUUyAzMgogCi1z
cnRwX2Vycl9zdGF0dXNfdAotc3J0cF9hdXRoX3R5cGVfdGVzdCAoY29uc3Qgc3J0cF9hdXRoX3R5
cGVfdCAqYXQsIGNvbnN0IHNydHBfYXV0aF90ZXN0X2Nhc2VfdCAqdGVzdF9kYXRhKQorc3J0cF9l
cnJfc3RhdHVzX3Qgc3J0cF9hdXRoX3R5cGVfdGVzdChjb25zdCBzcnRwX2F1dGhfdHlwZV90ICph
dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3J0cF9hdXRo
X3Rlc3RfY2FzZV90ICp0ZXN0X2RhdGEpCiB7CiAgICAgY29uc3Qgc3J0cF9hdXRoX3Rlc3RfY2Fz
ZV90ICp0ZXN0X2Nhc2UgPSB0ZXN0X2RhdGE7CiAgICAgc3J0cF9hdXRoX3QgKmE7CkBAIC0xMDUs
NyArMTA0LDYgQEAgc3J0cF9hdXRoX3R5cGVfdGVzdCAoY29uc3Qgc3J0cF9hdXRoX3R5cGVfdCAq
YXQsIGNvbnN0IHNydHBfYXV0aF90ZXN0X2Nhc2VfdCAqdGUKIAogICAgIC8qIGxvb3Agb3ZlciBh
bGwgdGVzdCBjYXNlcyAqLwogICAgIHdoaWxlICh0ZXN0X2Nhc2UgIT0gTlVMTCkgewotCiAgICAg
ICAgIC8qIGNoZWNrIHRlc3QgY2FzZSBwYXJhbWV0ZXJzICovCiAgICAgICAgIGlmICh0ZXN0X2Nh
c2UtPnRhZ19sZW5ndGhfb2N0ZXRzID4gU0VMRl9URVNUX1RBR19CVUZfT0NURVRTKSB7CiAgICAg
ICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJhbTsKQEAgLTExMyw3ICsxMTEs
NyBAQCBzcnRwX2F1dGhfdHlwZV90ZXN0IChjb25zdCBzcnRwX2F1dGhfdHlwZV90ICphdCwgY29u
c3Qgc3J0cF9hdXRoX3Rlc3RfY2FzZV90ICp0ZQogCiAgICAgICAgIC8qIGFsbG9jYXRlIGF1dGgg
Ki8KICAgICAgICAgc3RhdHVzID0gc3J0cF9hdXRoX3R5cGVfYWxsb2MoYXQsICZhLCB0ZXN0X2Nh
c2UtPmtleV9sZW5ndGhfb2N0ZXRzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
dGVzdF9jYXNlLT50YWdfbGVuZ3RoX29jdGV0cyk7CisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHRlc3RfY2FzZS0+dGFnX2xlbmd0aF9vY3RldHMpOwogICAgICAgICBpZiAo
c3RhdHVzKSB7CiAgICAgICAgICAgICByZXR1cm4gc3RhdHVzOwogICAgICAgICB9CkBAIC0xMjgs
NyArMTI2LDcgQEAgc3J0cF9hdXRoX3R5cGVfdGVzdCAoY29uc3Qgc3J0cF9hdXRoX3R5cGVfdCAq
YXQsIGNvbnN0IHNydHBfYXV0aF90ZXN0X2Nhc2VfdCAqdGUKICAgICAgICAgLyogemVyb2l6ZSB0
YWcgdGhlbiBjb21wdXRlICovCiAgICAgICAgIG9jdGV0X3N0cmluZ19zZXRfdG9femVybyh0YWcs
IHRlc3RfY2FzZS0+dGFnX2xlbmd0aF9vY3RldHMpOwogICAgICAgICBzdGF0dXMgPSBzcnRwX2F1
dGhfY29tcHV0ZShhLCB0ZXN0X2Nhc2UtPmRhdGEsCi0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB0ZXN0X2Nhc2UtPmRhdGFfbGVuZ3RoX29jdGV0cywgdGFnKTsKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgdGVzdF9jYXNlLT5kYXRhX2xlbmd0aF9vY3RldHMsIHRhZyk7
CiAgICAgICAgIGlmIChzdGF0dXMpIHsKICAgICAgICAgICAgIHNydHBfYXV0aF9kZWFsbG9jKGEp
OwogICAgICAgICAgICAgcmV0dXJuIHN0YXR1czsKQEAgLTEzOCwxMCArMTM2LDExIEBAIHNydHBf
YXV0aF90eXBlX3Rlc3QgKGNvbnN0IHNydHBfYXV0aF90eXBlX3QgKmF0LCBjb25zdCBzcnRwX2F1
dGhfdGVzdF9jYXNlX3QgKnRlCiAgICAgICAgICAgICAgICAgICAgIHNydHBfb2N0ZXRfc3RyaW5n
X2hleF9zdHJpbmcodGVzdF9jYXNlLT5rZXksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgdGVzdF9jYXNlLT5rZXlfbGVuZ3RoX29jdGV0cykpOwogICAg
ICAgICBkZWJ1Z19wcmludChzcnRwX21vZF9hdXRoLCAiZGF0YTogJXMiLAotICAgICAgICAgICAg
ICAgICAgICBzcnRwX29jdGV0X3N0cmluZ19oZXhfc3RyaW5nKHRlc3RfY2FzZS0+ZGF0YSwKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0X2Nhc2Ut
PmRhdGFfbGVuZ3RoX29jdGV0cykpOwotICAgICAgICBkZWJ1Z19wcmludChzcnRwX21vZF9hdXRo
LCAidGFnIGNvbXB1dGVkOiAlcyIsCi0gICAgICAgICAgICAgICAgICAgIHNydHBfb2N0ZXRfc3Ry
aW5nX2hleF9zdHJpbmcodGFnLCB0ZXN0X2Nhc2UtPnRhZ19sZW5ndGhfb2N0ZXRzKSk7CisgICAg
ICAgICAgICAgICAgICAgIHNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcoCisgICAgICAgICAg
ICAgICAgICAgICAgICB0ZXN0X2Nhc2UtPmRhdGEsIHRlc3RfY2FzZS0+ZGF0YV9sZW5ndGhfb2N0
ZXRzKSk7CisgICAgICAgIGRlYnVnX3ByaW50KAorICAgICAgICAgICAgc3J0cF9tb2RfYXV0aCwg
InRhZyBjb21wdXRlZDogJXMiLAorICAgICAgICAgICAgc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0
cmluZyh0YWcsIHRlc3RfY2FzZS0+dGFnX2xlbmd0aF9vY3RldHMpKTsKICAgICAgICAgZGVidWdf
cHJpbnQoc3J0cF9tb2RfYXV0aCwgInRhZyBleHBlY3RlZDogJXMiLAogICAgICAgICAgICAgICAg
ICAgICBzcnRwX29jdGV0X3N0cmluZ19oZXhfc3RyaW5nKHRlc3RfY2FzZS0+dGFnLAogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRlc3RfY2FzZS0+dGFn
X2xlbmd0aF9vY3RldHMpKTsKQEAgLTE3NywxNCArMTc2LDEyIEBAIHNydHBfYXV0aF90eXBlX3Rl
c3QgKGNvbnN0IHNydHBfYXV0aF90eXBlX3QgKmF0LCBjb25zdCBzcnRwX2F1dGhfdGVzdF9jYXNl
X3QgKnRlCiAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0KIAotCiAvKgotICogYXV0
aF90eXBlX3NlbGZfdGVzdChhdCkgcGVyZm9ybXMgc3J0cF9hdXRoX3R5cGVfdGVzdCBvbiBhdCdz
IGludGVybmFsCisgKiBzcnRwX2F1dGhfdHlwZV9zZWxmX3Rlc3QoYXQpIHBlcmZvcm1zIHNydHBf
YXV0aF90eXBlX3Rlc3Qgb24gYXQncyBpbnRlcm5hbAogICogbGlzdCBvZiB0ZXN0IGRhdGEuCiAg
Ki8KIAotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9hdXRoX3R5cGVfc2VsZl90ZXN0IChjb25zdCBz
cnRwX2F1dGhfdHlwZV90ICphdCkKK3NydHBfZXJyX3N0YXR1c190IHNydHBfYXV0aF90eXBlX3Nl
bGZfdGVzdChjb25zdCBzcnRwX2F1dGhfdHlwZV90ICphdCkKIHsKICAgICByZXR1cm4gc3J0cF9h
dXRoX3R5cGVfdGVzdChhdCwgYXQtPnRlc3RfZGF0YSk7CiB9Ci0KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8v
aGFzaC9obWFjX29zc2wuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlic3J0cC9jcnlwdG8vaGFzaC9obWFjX29zc2wuYwppbmRleCBmOTk2NDZiNThm
YzQxN2MwYjJkYWRhM2U0MGRlNzk5OWRkZDU0NjRkLi44MTQ2NDM4YjA1MWJhYmIxYjM2MDMxOGVk
N2E5Njc4YmQxYTk1NmQwIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2hhc2gvaG1hY19vc3NsLmMKKysrIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2Ny
eXB0by9oYXNoL2htYWNfb3NzbC5jCkBAIC00MywzMSArNDMsMzQgQEAKICAqLwogCiAjaWZkZWYg
SEFWRV9DT05GSUdfSAotICAgICNpbmNsdWRlIDxjb25maWcuaD4KKyNpbmNsdWRlIDxjb25maWcu
aD4KICNlbmRpZgogCiAjaW5jbHVkZSAiYXV0aC5oIgogI2luY2x1ZGUgImFsbG9jLmgiCi0jaW5j
bHVkZSAiZXJyLmgiICAgICAgICAgICAgICAgIC8qIGZvciBzcnRwX2RlYnVnICovCisjaW5jbHVk
ZSAiZXJyLmgiIC8qIGZvciBzcnRwX2RlYnVnICovCiAjaW5jbHVkZSA8b3BlbnNzbC9ldnAuaD4K
ICNpbmNsdWRlIDxvcGVuc3NsL2htYWMuaD4KIAotI2RlZmluZSBTSEExX0RJR0VTVF9TSVpFCQky
MAorI2RlZmluZSBTSEExX0RJR0VTVF9TSVpFIDIwCiAKIC8qIHRoZSBkZWJ1ZyBtb2R1bGUgZm9y
IGF1dGhlbnRpYXRpb24gKi8KIAogc3J0cF9kZWJ1Z19tb2R1bGVfdCBzcnRwX21vZF9obWFjID0g
ewotICAgIDAsICAgICAgICAgICAgICAgIC8qIGRlYnVnZ2luZyBpcyBvZmYgYnkgZGVmYXVsdCAq
LwotICAgICJobWFjIHNoYS0xIG9wZW5zc2wiICAgLyogcHJpbnRhYmxlIG5hbWUgZm9yIG1vZHVs
ZSAgICovCisgICAgMCwgICAgICAgICAgICAgICAgICAgLyogZGVidWdnaW5nIGlzIG9mZiBieSBk
ZWZhdWx0ICovCisgICAgImhtYWMgc2hhLTEgb3BlbnNzbCIgLyogcHJpbnRhYmxlIG5hbWUgZm9y
IG1vZHVsZSAgICovCiB9OwogCi0KLXN0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2htYWNf
YWxsb2MgKHNydHBfYXV0aF90ICoqYSwgaW50IGtleV9sZW4sIGludCBvdXRfbGVuKQorc3RhdGlj
IHNydHBfZXJyX3N0YXR1c190IHNydHBfaG1hY19hbGxvYyhzcnRwX2F1dGhfdCAqKmEsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBrZXlfbGVuLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgb3V0X2xlbikKIHsKICAgICBl
eHRlcm4gY29uc3Qgc3J0cF9hdXRoX3R5cGVfdCBzcnRwX2htYWM7CiAKLSAgICBkZWJ1Z19wcmlu
dChzcnRwX21vZF9obWFjLCAiYWxsb2NhdGluZyBhdXRoIGZ1bmMgd2l0aCBrZXkgbGVuZ3RoICVk
Iiwga2V5X2xlbik7Ci0gICAgZGVidWdfcHJpbnQoc3J0cF9tb2RfaG1hYywgIiAgICAgICAgICAg
ICAgICAgICAgICAgICAgdGFnIGxlbmd0aCAlZCIsIG91dF9sZW4pOworICAgIGRlYnVnX3ByaW50
KHNydHBfbW9kX2htYWMsICJhbGxvY2F0aW5nIGF1dGggZnVuYyB3aXRoIGtleSBsZW5ndGggJWQi
LAorICAgICAgICAgICAgICAgIGtleV9sZW4pOworICAgIGRlYnVnX3ByaW50KHNydHBfbW9kX2ht
YWMsICIgICAgICAgICAgICAgICAgICAgICAgICAgIHRhZyBsZW5ndGggJWQiLAorICAgICAgICAg
ICAgICAgIG91dF9sZW4pOwogCiAgICAgLyogY2hlY2sgb3V0cHV0IGxlbmd0aCAtIHNob3VsZCBi
ZSBsZXNzIHRoYW4gMjAgYnl0ZXMgKi8KICAgICBpZiAob3V0X2xlbiA+IFNIQTFfRElHRVNUX1NJ
WkUpIHsKQEAgLTc2LDI0ICs3OSwyNSBAQCBzdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9o
bWFjX2FsbG9jIChzcnRwX2F1dGhfdCAqKmEsIGludCBrZXlfbGVuLCBpbnQgb3V0XwogCiAvKiBP
cGVuU1NMIDEuMS4wIG1hZGUgSE1BQ19DVFggYW4gb3BhcXVlIHN0cnVjdHVyZSwgd2hpY2ggbXVz
dCBiZSBhbGxvY2F0ZWQKICAgIHVzaW5nIEhNQUNfQ1RYX25ldy4gIEJ1dCB0aGlzIGZ1bmN0aW9u
IGRvZXNuJ3QgZXhpc3QgaW4gT3BlblNTTCAxLjAueC4gKi8KLSNpZiBPUEVOU1NMX1ZFUlNJT05f
TlVNQkVSIDwgMHgxMDEwMDAwMEwKKyNpZiBPUEVOU1NMX1ZFUlNJT05fTlVNQkVSIDwgMHgxMDEw
MDAwMEwgfHwgTElCUkVTU0xfVkVSU0lPTl9OVU1CRVIKICAgICB7CiAgICAgICAgIC8qIGFsbG9j
YXRlIG1lbW9yeSBmb3IgYXV0aCBhbmQgSE1BQ19DVFggc3RydWN0dXJlcyAqLwotICAgICAgICB1
aW50OF90KiBwb2ludGVyOworICAgICAgICB1aW50OF90ICpwb2ludGVyOwogICAgICAgICBITUFD
X0NUWCAqbmV3X2htYWNfY3R4OwotICAgICAgICBwb2ludGVyID0gKHVpbnQ4X3QqKXNydHBfY3J5
cHRvX2FsbG9jKHNpemVvZihITUFDX0NUWCkgKyBzaXplb2Yoc3J0cF9hdXRoX3QpKTsKKyAgICAg
ICAgcG9pbnRlciA9ICh1aW50OF90ICopc3J0cF9jcnlwdG9fYWxsb2Moc2l6ZW9mKEhNQUNfQ1RY
KSArCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVv
ZihzcnRwX2F1dGhfdCkpOwogICAgICAgICBpZiAocG9pbnRlciA9PSBOVUxMKSB7CiAgICAgICAg
ICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2FsbG9jX2ZhaWw7CiAgICAgICAgIH0KLSAgICAg
ICAgKmEgPSAoc3J0cF9hdXRoX3QqKXBvaW50ZXI7CisgICAgICAgICphID0gKHNydHBfYXV0aF90
ICopcG9pbnRlcjsKICAgICAgICAgKCphKS0+c3RhdGUgPSBwb2ludGVyICsgc2l6ZW9mKHNydHBf
YXV0aF90KTsKLSAgICAgICAgbmV3X2htYWNfY3R4ID0gKEhNQUNfQ1RYKikoKCphKS0+c3RhdGUp
OworICAgICAgICBuZXdfaG1hY19jdHggPSAoSE1BQ19DVFggKikoKCphKS0+c3RhdGUpOwogCiAg
ICAgICAgIEhNQUNfQ1RYX2luaXQobmV3X2htYWNfY3R4KTsKICAgICB9CiAKICNlbHNlCi0gICAg
KmEgPSAoc3J0cF9hdXRoX3QqKXNydHBfY3J5cHRvX2FsbG9jKHNpemVvZihzcnRwX2F1dGhfdCkp
OworICAgICphID0gKHNydHBfYXV0aF90ICopc3J0cF9jcnlwdG9fYWxsb2Moc2l6ZW9mKHNydHBf
YXV0aF90KSk7CiAgICAgaWYgKCphID09IE5VTEwpIHsKICAgICAgICAgcmV0dXJuIHNydHBfZXJy
X3N0YXR1c19hbGxvY19mYWlsOwogICAgIH0KQEAgLTExNSwxMyArMTE5LDEzIEBAIHN0YXRpYyBz
cnRwX2Vycl9zdGF0dXNfdCBzcnRwX2htYWNfYWxsb2MgKHNydHBfYXV0aF90ICoqYSwgaW50IGtl
eV9sZW4sIGludCBvdXRfCiAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0KIAotc3Rh
dGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfaG1hY19kZWFsbG9jIChzcnRwX2F1dGhfdCAqYSkK
K3N0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2htYWNfZGVhbGxvYyhzcnRwX2F1dGhfdCAq
YSkKIHsKICAgICBITUFDX0NUWCAqaG1hY19jdHg7CiAKLSAgICBobWFjX2N0eCA9IChITUFDX0NU
WCopYS0+c3RhdGU7CisgICAgaG1hY19jdHggPSAoSE1BQ19DVFggKilhLT5zdGF0ZTsKIAotI2lm
IE9QRU5TU0xfVkVSU0lPTl9OVU1CRVIgPCAweDEwMTAwMDAwTAorI2lmIE9QRU5TU0xfVkVSU0lP
Tl9OVU1CRVIgPCAweDEwMTAwMDAwTCB8fCBMSUJSRVNTTF9WRVJTSU9OX05VTUJFUgogICAgIEhN
QUNfQ1RYX2NsZWFudXAoaG1hY19jdHgpOwogCiAgICAgLyogemVyb2l6ZSBlbnRpcmUgc3RhdGUq
LwpAQCAtMTQwLDcgKzE0NCw3IEBAIHN0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2htYWNf
ZGVhbGxvYyAoc3J0cF9hdXRoX3QgKmEpCiAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsK
IH0KIAotc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfaG1hY19zdGFydCAodm9pZCAqc3Rh
dGV2KQorc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfaG1hY19zdGFydCh2b2lkICpzdGF0
ZXYpCiB7CiAgICAgSE1BQ19DVFggKnN0YXRlID0gKEhNQUNfQ1RYICopc3RhdGV2OwogCkBAIC0x
NTAsNyArMTU0LDkgQEAgc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfaG1hY19zdGFydCAo
dm9pZCAqc3RhdGV2KQogICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAKLXN0YXRp
YyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2htYWNfaW5pdCAodm9pZCAqc3RhdGV2LCBjb25zdCB1
aW50OF90ICprZXksIGludCBrZXlfbGVuKQorc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBf
aG1hY19pbml0KHZvaWQgKnN0YXRldiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBjb25zdCB1aW50OF90ICprZXksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgaW50IGtleV9sZW4pCiB7CiAgICAgSE1BQ19DVFggKnN0YXRlID0gKEhNQUNf
Q1RYICopc3RhdGV2OwogCkBAIC0xNjAsNyArMTY2LDkgQEAgc3RhdGljIHNydHBfZXJyX3N0YXR1
c190IHNydHBfaG1hY19pbml0ICh2b2lkICpzdGF0ZXYsIGNvbnN0IHVpbnQ4X3QgKmtleSwgaW50
IGsKICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQogCi1zdGF0aWMgc3J0cF9lcnJf
c3RhdHVzX3Qgc3J0cF9obWFjX3VwZGF0ZSAodm9pZCAqc3RhdGV2LCBjb25zdCB1aW50OF90ICpt
ZXNzYWdlLCBpbnQgbXNnX29jdGV0cykKK3N0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2ht
YWNfdXBkYXRlKHZvaWQgKnN0YXRldiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGNvbnN0IHVpbnQ4X3QgKm1lc3NhZ2UsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBpbnQgbXNnX29jdGV0cykKIHsKICAgICBITUFDX0NUWCAqc3Rh
dGUgPSAoSE1BQ19DVFggKilzdGF0ZXY7CiAKQEAgLTE3Myw4ICsxODEsMTEgQEAgc3RhdGljIHNy
dHBfZXJyX3N0YXR1c190IHNydHBfaG1hY191cGRhdGUgKHZvaWQgKnN0YXRldiwgY29uc3QgdWlu
dDhfdCAqbWVzc2FnZSwKICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQogCi1zdGF0
aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9obWFjX2NvbXB1dGUgKHZvaWQgKnN0YXRldiwgY29u
c3QgdWludDhfdCAqbWVzc2FnZSwKLSAgICAgICAgICAgICAgaW50IG1zZ19vY3RldHMsIGludCB0
YWdfbGVuLCB1aW50OF90ICpyZXN1bHQpCitzdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9o
bWFjX2NvbXB1dGUodm9pZCAqc3RhdGV2LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGNvbnN0IHVpbnQ4X3QgKm1lc3NhZ2UsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgaW50IG1zZ19vY3RldHMsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IHRhZ19sZW4sCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDhfdCAqcmVzdWx0KQogewogICAgIEhNQUNf
Q1RYICpzdGF0ZSA9IChITUFDX0NUWCAqKXN0YXRldjsKICAgICB1aW50OF90IGhhc2hfdmFsdWVb
U0hBMV9ESUdFU1RfU0laRV07CkBAIC0yMDcsNTIgKzIxOCw1NiBAQCBzdGF0aWMgc3J0cF9lcnJf
c3RhdHVzX3Qgc3J0cF9obWFjX2NvbXB1dGUgKHZvaWQgKnN0YXRldiwgY29uc3QgdWludDhfdCAq
bWVzc2FnZQogICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAKLQogLyogYmVnaW4g
dGVzdCBjYXNlIDAgKi8KLQorLyogY2xhbmctZm9ybWF0IG9mZiAqLwogc3RhdGljIGNvbnN0IHVp
bnQ4X3Qgc3J0cF9obWFjX3Rlc3RfY2FzZV8wX2tleVtTSEExX0RJR0VTVF9TSVpFXSA9IHsKICAg
ICAweDBiLCAweDBiLCAweDBiLCAweDBiLCAweDBiLCAweDBiLCAweDBiLCAweDBiLAogICAgIDB4
MGIsIDB4MGIsIDB4MGIsIDB4MGIsIDB4MGIsIDB4MGIsIDB4MGIsIDB4MGIsCiAgICAgMHgwYiwg
MHgwYiwgMHgwYiwgMHgwYgogfTsKKy8qIGNsYW5nLWZvcm1hdCBvbiAqLwogCisvKiBjbGFuZy1m
b3JtYXQgb2ZmICovCiBzdGF0aWMgY29uc3QgdWludDhfdCBzcnRwX2htYWNfdGVzdF9jYXNlXzBf
ZGF0YVs4XSA9IHsKICAgICAweDQ4LCAweDY5LCAweDIwLCAweDU0LCAweDY4LCAweDY1LCAweDcy
LCAweDY1IC8qICJIaSBUaGVyZSIgKi8KIH07CisvKiBjbGFuZy1mb3JtYXQgb24gKi8KIAorLyog
Y2xhbmctZm9ybWF0IG9mZiAqLwogc3RhdGljIGNvbnN0IHVpbnQ4X3Qgc3J0cF9obWFjX3Rlc3Rf
Y2FzZV8wX3RhZ1tTSEExX0RJR0VTVF9TSVpFXSA9IHsKICAgICAweGI2LCAweDE3LCAweDMxLCAw
eDg2LCAweDU1LCAweDA1LCAweDcyLCAweDY0LAogICAgIDB4ZTIsIDB4OGIsIDB4YzAsIDB4YjYs
IDB4ZmIsIDB4MzcsIDB4OGMsIDB4OGUsCiAgICAgMHhmMSwgMHg0NiwgMHhiZSwgMHgwMAogfTsK
Ky8qIGNsYW5nLWZvcm1hdCBvbiAqLwogCiBzdGF0aWMgY29uc3Qgc3J0cF9hdXRoX3Rlc3RfY2Fz
ZV90IHNydHBfaG1hY190ZXN0X2Nhc2VfMCA9IHsKLSAgICBzaXplb2Yoc3J0cF9obWFjX3Rlc3Rf
Y2FzZV8wX2tleSksICAgIC8qIG9jdGV0cyBpbiBrZXkgICAgICAgICAgICAqLwotICAgIHNydHBf
aG1hY190ZXN0X2Nhc2VfMF9rZXksICAgICAgICAgICAgLyoga2V5ICAgICAgICAgICAgICAgICAg
ICAgICovCi0gICAgc2l6ZW9mKHNydHBfaG1hY190ZXN0X2Nhc2VfMF9kYXRhKSwgICAvKiBvY3Rl
dHMgaW4gZGF0YSAgICAgICAgICAgKi8KLSAgICBzcnRwX2htYWNfdGVzdF9jYXNlXzBfZGF0YSwg
ICAgICAgICAgIC8qIGRhdGEgICAgICAgICAgICAgICAgICAgICAqLwotICAgIHNpemVvZihzcnRw
X2htYWNfdGVzdF9jYXNlXzBfdGFnKSwgICAgLyogb2N0ZXRzIGluIHRhZyAgICAgICAgICAgICov
Ci0gICAgc3J0cF9obWFjX3Rlc3RfY2FzZV8wX3RhZywgICAgICAgICAgICAvKiB0YWcgICAgICAg
ICAgICAgICAgICAgICAgKi8KLSAgICBOVUxMICAgICAgICAgICAgICAgICAgICAgICAgICAgICAv
KiBwb2ludGVyIHRvIG5leHQgdGVzdGNhc2UgKi8KKyAgICBzaXplb2Yoc3J0cF9obWFjX3Rlc3Rf
Y2FzZV8wX2tleSksICAvKiBvY3RldHMgaW4ga2V5ICAgICAgICAgICAgKi8KKyAgICBzcnRwX2ht
YWNfdGVzdF9jYXNlXzBfa2V5LCAgICAgICAgICAvKiBrZXkgICAgICAgICAgICAgICAgICAgICAg
Ki8KKyAgICBzaXplb2Yoc3J0cF9obWFjX3Rlc3RfY2FzZV8wX2RhdGEpLCAvKiBvY3RldHMgaW4g
ZGF0YSAgICAgICAgICAgKi8KKyAgICBzcnRwX2htYWNfdGVzdF9jYXNlXzBfZGF0YSwgICAgICAg
ICAvKiBkYXRhICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBzaXplb2Yoc3J0cF9obWFjX3Rl
c3RfY2FzZV8wX3RhZyksICAvKiBvY3RldHMgaW4gdGFnICAgICAgICAgICAgKi8KKyAgICBzcnRw
X2htYWNfdGVzdF9jYXNlXzBfdGFnLCAgICAgICAgICAvKiB0YWcgICAgICAgICAgICAgICAgICAg
ICAgKi8KKyAgICBOVUxMICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBwb2ludGVy
IHRvIG5leHQgdGVzdGNhc2UgKi8KIH07CiAKIC8qIGVuZCB0ZXN0IGNhc2UgMCAqLwogCi1zdGF0
aWMgY29uc3QgY2hhciBzcnRwX2htYWNfZGVzY3JpcHRpb25bXSA9ICJobWFjIHNoYS0xIGF1dGhl
bnRpY2F0aW9uIGZ1bmN0aW9uIjsKK3N0YXRpYyBjb25zdCBjaGFyIHNydHBfaG1hY19kZXNjcmlw
dGlvbltdID0KKyAgICAiaG1hYyBzaGEtMSBhdXRoZW50aWNhdGlvbiBmdW5jdGlvbiI7CiAKIC8q
CiAgKiBzcnRwX2F1dGhfdHlwZV90IGhtYWMgaXMgdGhlIGhtYWMgbWV0YW9iamVjdAogICovCiAK
LWNvbnN0IHNydHBfYXV0aF90eXBlX3Qgc3J0cF9obWFjICA9IHsKLSAgICBzcnRwX2htYWNfYWxs
b2MsCi0gICAgc3J0cF9obWFjX2RlYWxsb2MsCi0gICAgc3J0cF9obWFjX2luaXQsCi0gICAgc3J0
cF9obWFjX2NvbXB1dGUsCi0gICAgc3J0cF9obWFjX3VwZGF0ZSwKLSAgICBzcnRwX2htYWNfc3Rh
cnQsCi0gICAgc3J0cF9obWFjX2Rlc2NyaXB0aW9uLAotICAgICZzcnRwX2htYWNfdGVzdF9jYXNl
XzAsCi0gICAgU1JUUF9ITUFDX1NIQTEKK2NvbnN0IHNydHBfYXV0aF90eXBlX3Qgc3J0cF9obWFj
ID0geworICAgIHNydHBfaG1hY19hbGxvYywgICAgICAgIC8qICovCisgICAgc3J0cF9obWFjX2Rl
YWxsb2MsICAgICAgLyogKi8KKyAgICBzcnRwX2htYWNfaW5pdCwgICAgICAgICAvKiAqLworICAg
IHNydHBfaG1hY19jb21wdXRlLCAgICAgIC8qICovCisgICAgc3J0cF9obWFjX3VwZGF0ZSwgICAg
ICAgLyogKi8KKyAgICBzcnRwX2htYWNfc3RhcnQsICAgICAgICAvKiAqLworICAgIHNydHBfaG1h
Y19kZXNjcmlwdGlvbiwgIC8qICovCisgICAgJnNydHBfaG1hY190ZXN0X2Nhc2VfMCwgLyogKi8K
KyAgICBTUlRQX0hNQUNfU0hBMSAgICAgICAgICAvKiAqLwogfTsKLQpkaWZmIC0tZ2l0IGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0
by9oYXNoL251bGxfYXV0aC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9oYXNoL251bGxfYXV0aC5jCmluZGV4IDJkOTkwMjdj
YWFlZWQ1MDkyOGY5YjI1NDA4MmY2OGFiYzE4N2U0NGMuLjUxOTQ0MTdjYWYyZTMyNGIyMDE3MTQz
YmMwZmE0Y2RhOTdiNzI4ZmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vaGFzaC9udWxsX2F1dGguYworKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAv
Y3J5cHRvL2hhc2gvbnVsbF9hdXRoLmMKQEAgLTQ1LDMzICs0NSwzNSBAQAogICovCiAKICNpZmRl
ZiBIQVZFX0NPTkZJR19ICi0gICAgI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbmZp
Zy5oPgogI2VuZGlmCiAKICNpbmNsdWRlICJudWxsX2F1dGguaCIKLSNpbmNsdWRlICJlcnIuaCIg
ICAgICAgICAgICAgICAgLyogZm9yIHNydHBfZGVidWcgKi8KKyNpbmNsdWRlICJlcnIuaCIgLyog
Zm9yIHNydHBfZGVidWcgKi8KICNpbmNsdWRlICJhbGxvYy5oIgorI2luY2x1ZGUgImNpcGhlcl90
eXBlcy5oIgogCi0vKiBudWxsX2F1dGggdXNlcyB0aGUgYXV0aCBkZWJ1ZyBtb2R1bGUgKi8KLQot
ZXh0ZXJuIHNydHBfZGVidWdfbW9kdWxlX3Qgc3J0cF9tb2RfYXV0aDsKLQotc3RhdGljIHNydHBf
ZXJyX3N0YXR1c190IHNydHBfbnVsbF9hdXRoX2FsbG9jIChzcnRwX2F1dGhfdCAqKmEsIGludCBr
ZXlfbGVuLCBpbnQgb3V0X2xlbikKK3N0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX251bGxf
YXV0aF9hbGxvYyhzcnRwX2F1dGhfdCAqKmEsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgaW50IGtleV9sZW4sCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgaW50IG91dF9sZW4pCiB7CiAgICAgZXh0ZXJuIGNvbnN0IHNy
dHBfYXV0aF90eXBlX3Qgc3J0cF9udWxsX2F1dGg7CiAgICAgdWludDhfdCAqcG9pbnRlcjsKIAot
ICAgIGRlYnVnX3ByaW50KHNydHBfbW9kX2F1dGgsICJhbGxvY2F0aW5nIGF1dGggZnVuYyB3aXRo
IGtleSBsZW5ndGggJWQiLCBrZXlfbGVuKTsKLSAgICBkZWJ1Z19wcmludChzcnRwX21vZF9hdXRo
LCAiICAgICAgICAgICAgICAgICAgICAgICAgICB0YWcgbGVuZ3RoICVkIiwgb3V0X2xlbik7Cisg
ICAgZGVidWdfcHJpbnQoc3J0cF9tb2RfYXV0aCwgImFsbG9jYXRpbmcgYXV0aCBmdW5jIHdpdGgg
a2V5IGxlbmd0aCAlZCIsCisgICAgICAgICAgICAgICAga2V5X2xlbik7CisgICAgZGVidWdfcHJp
bnQoc3J0cF9tb2RfYXV0aCwgIiAgICAgICAgICAgICAgICAgICAgICAgICAgdGFnIGxlbmd0aCAl
ZCIsCisgICAgICAgICAgICAgICAgb3V0X2xlbik7CiAKICAgICAvKiBhbGxvY2F0ZSBtZW1vcnkg
Zm9yIGF1dGggYW5kIHNydHBfbnVsbF9hdXRoX2N0eF90IHN0cnVjdHVyZXMgKi8KLSAgICBwb2lu
dGVyID0gKHVpbnQ4X3QqKXNydHBfY3J5cHRvX2FsbG9jKHNpemVvZihzcnRwX251bGxfYXV0aF9j
dHhfdCkgKyBzaXplb2Yoc3J0cF9hdXRoX3QpKTsKKyAgICBwb2ludGVyID0gKHVpbnQ4X3QgKilz
cnRwX2NyeXB0b19hbGxvYyhzaXplb2Yoc3J0cF9udWxsX2F1dGhfY3R4X3QpICsKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplb2Yoc3J0cF9hdXRoX3QpKTsK
ICAgICBpZiAocG9pbnRlciA9PSBOVUxMKSB7CiAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0
dXNfYWxsb2NfZmFpbDsKICAgICB9CiAKICAgICAvKiBzZXQgcG9pbnRlcnMgKi8KLSAgICAqYSA9
IChzcnRwX2F1dGhfdCopcG9pbnRlcjsKKyAgICAqYSA9IChzcnRwX2F1dGhfdCAqKXBvaW50ZXI7
CiAgICAgKCphKS0+dHlwZSA9ICZzcnRwX251bGxfYXV0aDsKICAgICAoKmEpLT5zdGF0ZSA9IHBv
aW50ZXIgKyBzaXplb2Yoc3J0cF9hdXRoX3QpOwogICAgICgqYSktPm91dF9sZW4gPSBvdXRfbGVu
OwpAQCAtODEsMTIgKzgzLDEzIEBAIHN0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX251bGxf
YXV0aF9hbGxvYyAoc3J0cF9hdXRoX3QgKiphLCBpbnQga2V5X2xlbiwgaW50CiAgICAgcmV0dXJu
IHNydHBfZXJyX3N0YXR1c19vazsKIH0KIAotc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBf
bnVsbF9hdXRoX2RlYWxsb2MgKHNydHBfYXV0aF90ICphKQorc3RhdGljIHNydHBfZXJyX3N0YXR1
c190IHNydHBfbnVsbF9hdXRoX2RlYWxsb2Moc3J0cF9hdXRoX3QgKmEpCiB7CiAgICAgZXh0ZXJu
IGNvbnN0IHNydHBfYXV0aF90eXBlX3Qgc3J0cF9udWxsX2F1dGg7CiAKICAgICAvKiB6ZXJvaXpl
IGVudGlyZSBzdGF0ZSovCi0gICAgb2N0ZXRfc3RyaW5nX3NldF90b196ZXJvKGEsIHNpemVvZihz
cnRwX251bGxfYXV0aF9jdHhfdCkgKyBzaXplb2Yoc3J0cF9hdXRoX3QpKTsKKyAgICBvY3RldF9z
dHJpbmdfc2V0X3RvX3plcm8oYSwgc2l6ZW9mKHNydHBfbnVsbF9hdXRoX2N0eF90KSArCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplb2Yoc3J0cF9hdXRoX3QpKTsKIAog
ICAgIC8qIGZyZWUgbWVtb3J5ICovCiAgICAgc3J0cF9jcnlwdG9fZnJlZShhKTsKQEAgLTk0LDcg
Kzk3LDkgQEAgc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfbnVsbF9hdXRoX2RlYWxsb2Mg
KHNydHBfYXV0aF90ICphKQogICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAKLXN0
YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX251bGxfYXV0aF9pbml0ICh2b2lkICpzdGF0ZXYs
IGNvbnN0IHVpbnQ4X3QgKmtleSwgaW50IGtleV9sZW4pCitzdGF0aWMgc3J0cF9lcnJfc3RhdHVz
X3Qgc3J0cF9udWxsX2F1dGhfaW5pdCh2b2lkICpzdGF0ZXYsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB1aW50OF90ICprZXksCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQga2V5X2xlbikKIHsKICAgICAv
KiBzcnRwX251bGxfYXV0aF9jdHhfdCAqc3RhdGUgPSAoc3J0cF9udWxsX2F1dGhfY3R4X3QgKilz
dGF0ZXY7ICovCiAgICAgLyogYWNjZXB0IGFueSBsZW5ndGggb2Yga2V5LCBhbmQgZG8gbm90aGlu
ZyAqLwpAQCAtMTAyLDIzICsxMDcsMjcgQEAgc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBf
bnVsbF9hdXRoX2luaXQgKHZvaWQgKnN0YXRldiwgY29uc3QgdWludDhfdCAqa2V5LAogICAgIHJl
dHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAKLXN0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBz
cnRwX251bGxfYXV0aF9jb21wdXRlICh2b2lkICpzdGF0ZXYsIGNvbnN0IHVpbnQ4X3QgKm1lc3Nh
Z2UsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgbXNnX29j
dGV0cywgaW50IHRhZ19sZW4sIHVpbnQ4X3QgKnJlc3VsdCkKK3N0YXRpYyBzcnRwX2Vycl9zdGF0
dXNfdCBzcnRwX251bGxfYXV0aF9jb21wdXRlKHZvaWQgKnN0YXRldiwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVpbnQ4X3QgKm1lc3NhZ2Us
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgbXNn
X29jdGV0cywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGludCB0YWdfbGVuLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgdWludDhfdCAqcmVzdWx0KQogewogICAgIC8qIHNydHBfbnVsbF9hdXRoX2N0eF90ICpz
dGF0ZSA9IChzcnRwX251bGxfYXV0aF9jdHhfdCAqKXN0YXRldjsgKi8KIAogICAgIHJldHVybiBz
cnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAKLXN0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX251
bGxfYXV0aF91cGRhdGUgKHZvaWQgKnN0YXRldiwgY29uc3QgdWludDhfdCAqbWVzc2FnZSwKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IG1zZ19vY3RldHMpCitz
dGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9udWxsX2F1dGhfdXBkYXRlKHZvaWQgKnN0YXRl
diwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qg
dWludDhfdCAqbWVzc2FnZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgaW50IG1zZ19vY3RldHMpCiB7CiAgICAgLyogc3J0cF9udWxsX2F1dGhfY3R4X3Qg
KnN0YXRlID0gKHNydHBfbnVsbF9hdXRoX2N0eF90ICopc3RhdGV2OyAqLwogCiAgICAgcmV0dXJu
IHNydHBfZXJyX3N0YXR1c19vazsKIH0KIAotc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBf
bnVsbF9hdXRoX3N0YXJ0ICh2b2lkICpzdGF0ZXYpCitzdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qg
c3J0cF9udWxsX2F1dGhfc3RhcnQodm9pZCAqc3RhdGV2KQogewogICAgIC8qIHNydHBfbnVsbF9h
dXRoX2N0eF90ICpzdGF0ZSA9IChzcnRwX251bGxfYXV0aF9jdHhfdCAqKXN0YXRldjsgKi8KIApA
QCAtMTMzLDI4ICsxNDIsMjcgQEAgc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfbnVsbF9h
dXRoX3N0YXJ0ICh2b2lkICpzdGF0ZXYpCiAvKiBiZWdpbiB0ZXN0IGNhc2UgMCAqLwogCiBzdGF0
aWMgY29uc3Qgc3J0cF9hdXRoX3Rlc3RfY2FzZV90IHNydHBfbnVsbF9hdXRoX3Rlc3RfY2FzZV8w
ID0gewotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIG9jdGV0
cyBpbiBrZXkgICAgICAgICAgICAqLwotICAgIE5VTEwsICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qIGtleSAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIDAsICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIG9jdGV0cyBpbiBkYXRhICAgICAgICAgICAq
LwotICAgIE5VTEwsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIGRhdGEgICAg
ICAgICAgICAgICAgICAgICAqLwotICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIC8qIG9jdGV0cyBpbiB0YWcgICAgICAgICAgICAqLwotICAgIE5VTEwsICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHRhZyAgICAgICAgICAgICAgICAgICAgICAqLwot
ICAgIE5VTEwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHBvaW50ZXIgdG8g
bmV4dCB0ZXN0Y2FzZSAqLworICAgIDAsICAgIC8qIG9jdGV0cyBpbiBrZXkgICAgICAgICAgICAq
LworICAgIE5VTEwsIC8qIGtleSAgICAgICAgICAgICAgICAgICAgICAqLworICAgIDAsICAgIC8q
IG9jdGV0cyBpbiBkYXRhICAgICAgICAgICAqLworICAgIE5VTEwsIC8qIGRhdGEgICAgICAgICAg
ICAgICAgICAgICAqLworICAgIDAsICAgIC8qIG9jdGV0cyBpbiB0YWcgICAgICAgICAgICAqLwor
ICAgIE5VTEwsIC8qIHRhZyAgICAgICAgICAgICAgICAgICAgICAqLworICAgIE5VTEwgIC8qIHBv
aW50ZXIgdG8gbmV4dCB0ZXN0Y2FzZSAqLwogfTsKIAogLyogZW5kIHRlc3QgY2FzZSAwICovCiAK
IHN0YXRpYyBjb25zdCBjaGFyIHNydHBfbnVsbF9hdXRoX2Rlc2NyaXB0aW9uW10gPSAibnVsbCBh
dXRoZW50aWNhdGlvbiBmdW5jdGlvbiI7CiAKLWNvbnN0IHNydHBfYXV0aF90eXBlX3Qgc3J0cF9u
dWxsX2F1dGggID0gewotICAgIHNydHBfbnVsbF9hdXRoX2FsbG9jLAotICAgIHNydHBfbnVsbF9h
dXRoX2RlYWxsb2MsCi0gICAgc3J0cF9udWxsX2F1dGhfaW5pdCwKLSAgICBzcnRwX251bGxfYXV0
aF9jb21wdXRlLAotICAgIHNydHBfbnVsbF9hdXRoX3VwZGF0ZSwKLSAgICBzcnRwX251bGxfYXV0
aF9zdGFydCwKLSAgICBzcnRwX251bGxfYXV0aF9kZXNjcmlwdGlvbiwKLSAgICAmc3J0cF9udWxs
X2F1dGhfdGVzdF9jYXNlXzAsCi0gICAgU1JUUF9OVUxMX0FVVEgKK2NvbnN0IHNydHBfYXV0aF90
eXBlX3Qgc3J0cF9udWxsX2F1dGggPSB7CisgICAgc3J0cF9udWxsX2F1dGhfYWxsb2MsICAgICAg
ICAvKiAqLworICAgIHNydHBfbnVsbF9hdXRoX2RlYWxsb2MsICAgICAgLyogKi8KKyAgICBzcnRw
X251bGxfYXV0aF9pbml0LCAgICAgICAgIC8qICovCisgICAgc3J0cF9udWxsX2F1dGhfY29tcHV0
ZSwgICAgICAvKiAqLworICAgIHNydHBfbnVsbF9hdXRoX3VwZGF0ZSwgICAgICAgLyogKi8KKyAg
ICBzcnRwX251bGxfYXV0aF9zdGFydCwgICAgICAgIC8qICovCisgICAgc3J0cF9udWxsX2F1dGhf
ZGVzY3JpcHRpb24sICAvKiAqLworICAgICZzcnRwX251bGxfYXV0aF90ZXN0X2Nhc2VfMCwgLyog
Ki8KKyAgICBTUlRQX05VTExfQVVUSCAgICAgICAgICAgICAgIC8qICovCiB9OwotCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNy
dHAvY3J5cHRvL2luY2x1ZGUvYWVzLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2luY2x1ZGUvYWVzLmgKaW5kZXggMDA3MTYz
YzUzNDE2ODdmNjY4ZTY1ZWJjMjY1NzBhNTY2YTM0Njc1Yy4uNzc5YzNhYzc0NGZmYTAxMjlhMzVh
Y2IwOTM0YmMzNzMxYjQwMmQ0MSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9pbmNsdWRlL2Flcy5oCisrKyBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9j
cnlwdG8vaW5jbHVkZS9hZXMuaApAQCAtNzAsOSArNzAsMTEgQEAgc3J0cF9lcnJfc3RhdHVzX3Qg
c3J0cF9hZXNfZXhwYW5kX2RlY3J5cHRpb25fa2V5KAogICAgIGludCBrZXlfbGVuLAogICAgIHNy
dHBfYWVzX2V4cGFuZGVkX2tleV90ICpleHBhbmRlZF9rZXkpOwogCi12b2lkIHNydHBfYWVzX2Vu
Y3J5cHQodjEyOF90ICpwbGFpbnRleHQsIGNvbnN0IHNydHBfYWVzX2V4cGFuZGVkX2tleV90ICpl
eHBfa2V5KTsKK3ZvaWQgc3J0cF9hZXNfZW5jcnlwdCh2MTI4X3QgKnBsYWludGV4dCwKKyAgICAg
ICAgICAgICAgICAgICAgICBjb25zdCBzcnRwX2Flc19leHBhbmRlZF9rZXlfdCAqZXhwX2tleSk7
CiAKLXZvaWQgc3J0cF9hZXNfZGVjcnlwdCh2MTI4X3QgKnBsYWludGV4dCwgY29uc3Qgc3J0cF9h
ZXNfZXhwYW5kZWRfa2V5X3QgKmV4cF9rZXkpOwordm9pZCBzcnRwX2Flc19kZWNyeXB0KHYxMjhf
dCAqcGxhaW50ZXh0LAorICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHNydHBfYWVzX2V4cGFu
ZGVkX2tleV90ICpleHBfa2V5KTsKIAogI2lmZGVmIF9fY3BsdXNwbHVzCiB9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAv
Y3J5cHRvL2luY2x1ZGUvYWVzX2djbV9vc3NsLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2luY2x1ZGUvYWVzX2djbV9vc3Ns
LmgKaW5kZXggOGIwZDdhMDI2NGE2YTkxZTIzOTFmOTY5ZTQ1MjNjZTgxZWZmNjk2Ni4uZDViODNl
ZWViMDdmYTdmODcwODcxZTU5MmNkOWRjMDllNzBkMDBhMSAxMDA2NDQKLS0tIGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9pbmNs
dWRlL2Flc19nY21fb3NzbC5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vaW5jbHVkZS9hZXNfZ2NtX29zc2wuaApAQCAt
NTUsOSArNTUsOCBAQAogdHlwZWRlZiBzdHJ1Y3QgewogICAgIGludCBrZXlfc2l6ZTsKICAgICBp
bnQgdGFnX2xlbjsKLSAgICBFVlBfQ0lQSEVSX0NUWCogY3R4OworICAgIEVWUF9DSVBIRVJfQ1RY
ICpjdHg7CiAgICAgc3J0cF9jaXBoZXJfZGlyZWN0aW9uX3QgZGlyOwogfSBzcnRwX2Flc19nY21f
Y3R4X3Q7CiAKICNlbmRpZiAvKiBBRVNfR0NNX09TU0xfSCAqLwotCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRv
L2luY2x1ZGUvYWVzX2ljbS5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9pbmNsdWRlL2Flc19pY20uaAppbmRleCA5MGZiZDVl
MzVkOWZjN2Q3OWQwZTdiZGExMjNiZmY2ZWI3MDk3MThiLi44ZGVkMTU2YTI5NjljNGZhMWQ2ZDFi
MDVlMTg2MDgwMTM4YjU2MzAyIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2luY2x1ZGUvYWVzX2ljbS5oCisr
KyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0
cC9jcnlwdG8vaW5jbHVkZS9hZXNfaWNtLmgKQEAgLTksMjYgKzksMjYgQEAKICAqLwogCiAvKgot
ICoJCisgKgogICogQ29weXJpZ2h0IChjKSAyMDAxLTIwMTcsIENpc2NvIFN5c3RlbXMsIEluYy4K
ICAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKiAKKyAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlm
aWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucwogICogYXJlIG1ldDoKLSAqIAorICoKICAqICAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKICAqICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogCisg
KgogICogICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlCiAgKiAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nCiAgKiAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZAogICogICB3aXRoIHRoZSBkaXN0cmlidXRpb24u
Ci0gKiAKKyAqCiAgKiAgIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIENpc2NvIFN5c3RlbXMsIElu
Yy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKICAqICAgY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRv
IGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkCiAgKiAgIGZyb20gdGhpcyBzb2Z0
d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLSAqIAorICoK
ICAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFO
RCBDT05UUklCVVRPUlMKICAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCiAgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBX
QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUwpAQCAtNjAsNCArNjAsMyBA
QCB0eXBlZGVmIHN0cnVjdCB7CiB9IHNydHBfYWVzX2ljbV9jdHhfdDsKIAogI2VuZGlmIC8qIEFF
U19JQ01fSCAqLwotCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2luY2x1ZGUvYWVzX2ljbV9vc3NsLmggYi9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5
cHRvL2luY2x1ZGUvYWVzX2ljbV9vc3NsLmgKaW5kZXggMWRkZGQ3NTVmY2ExMjgxZjk3ZDA3OTFj
NTc5ZmVkMTM4ZWMyY2Q0Yi4uYzRhYWUzNzZlNmQ3M2M2ZWM0Y2Q3MjRiOThhMjRhY2NmZTFkMWNj
MSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJzcnRwL2NyeXB0by9pbmNsdWRlL2Flc19pY21fb3NzbC5oCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vaW5j
bHVkZS9hZXNfaWNtX29zc2wuaApAQCAtNTIsMTEgKzUyLDEwIEBACiAjaW5jbHVkZSA8b3BlbnNz
bC9hZXMuaD4KIAogdHlwZWRlZiBzdHJ1Y3QgewotICAgIHYxMjhfdCBjb3VudGVyOyAgICAgICAg
ICAgICAgICAvKiBob2xkcyB0aGUgY291bnRlciB2YWx1ZSAgICAgICAgICAqLwotICAgIHYxMjhf
dCBvZmZzZXQ7ICAgICAgICAgICAgICAgICAvKiBpbml0aWFsIG9mZnNldCB2YWx1ZSAgICAgICAg
ICAgICAqLworICAgIHYxMjhfdCBjb3VudGVyOyAvKiBob2xkcyB0aGUgY291bnRlciB2YWx1ZSAg
ICAgICAgICAqLworICAgIHYxMjhfdCBvZmZzZXQ7ICAvKiBpbml0aWFsIG9mZnNldCB2YWx1ZSAg
ICAgICAgICAgICAqLwogICAgIGludCBrZXlfc2l6ZTsKLSAgICBFVlBfQ0lQSEVSX0NUWCogY3R4
OworICAgIEVWUF9DSVBIRVJfQ1RYICpjdHg7CiB9IHNydHBfYWVzX2ljbV9jdHhfdDsKIAogI2Vu
ZGlmIC8qIEFFU19JQ01fSCAqLwotCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2luY2x1ZGUvYWxsb2MuaCBi
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9j
cnlwdG8vaW5jbHVkZS9hbGxvYy5oCmluZGV4IDBiZDJhOTA4MjBmOTg0YjNiYzIwM2I3MGZjZjkx
ODdhOTMyMTA2ODIuLjFmYzA0MTAxNGQ4ZjhjNWUwYTdiZjZkNjI0ZGY4OGQ1ODc4ZDNmZDIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlic3J0cC9jcnlwdG8vaW5jbHVkZS9hbGxvYy5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vaW5jbHVkZS9hbGxvYy5o
CkBAIC0xLDMyICsxLDMyIEBACiAvKgogICogYWxsb2MuaAogICoKLSAqIGludGVyZmFjZSB0byBt
ZW1vcnkgYWxsb2NhdGlvbiBhbmQgZGVhbGxvY2F0aW9uLCB3aXRoIG9wdGlvbmFsIGRlYnVnZ2lu
ZyAKKyAqIGludGVyZmFjZSB0byBtZW1vcnkgYWxsb2NhdGlvbiBhbmQgZGVhbGxvY2F0aW9uLCB3
aXRoIG9wdGlvbmFsIGRlYnVnZ2luZwogICoKICAqIERhdmlkIEEuIE1jR3JldwogICogQ2lzY28g
U3lzdGVtcywgSW5jLgogICovCiAvKgotICoJCisgKgogICogQ29weXJpZ2h0IChjKSAyMDAxLTIw
MTcgQ2lzY28gU3lzdGVtcywgSW5jLgogICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqIAorICoK
ICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCiAgKiBhcmUgbWV0OgotICogCisgKgogICogICBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAogICogICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIuCi0gKiAKKyAqCiAgKiAgIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkg
Zm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKICAqICAgY29weXJpZ2h0IG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKICAqICAgZGlzY2xhaW1lciBp
biB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkCiAgKiAg
IHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqIAorICoKICAqICAgTmVpdGhlciB0aGUgbmFtZSBv
ZiB0aGUgQ2lzY28gU3lzdGVtcywgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwogICogICBjb250
cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2
ZWQKICAqICAgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRl
biBwZXJtaXNzaW9uLgotICogCisgKgogICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBU
SEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwogICogIkFTIElTIiBBTkQgQU5Z
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKICAqIExJ
TUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTCkBAIC00Miw3ICs0Miw2IEBACiAgKgogICovCiAKLQogI2lmbmRlZiBDUllQVE9fQUxM
T0NfSAogI2RlZmluZSBDUllQVE9fQUxMT0NfSAogCkBAIC01Miw4ICs1MSwyMiBAQAogZXh0ZXJu
ICJDIiB7CiAjZW5kaWYKIAotdm9pZCAqIHNydHBfY3J5cHRvX2FsbG9jKHNpemVfdCBzaXplKTsK
Ky8qCisgKiBzcnRwX2NyeXB0b19hbGxvYworICoKKyAqIEFsbG9jYXRlcyBhIGJsb2NrIG9mIG1l
bW9yeSAgb2YgZ2l2ZW4gc2l6ZS4gVGhlIG1lbW9yeSB3aWxsIGJlCisgKiBpbml0aWFsaXplZCB0
byB6ZXJvJ3MuIEZyZWUgdGhlIG1lbW9yeSB3aXRoIGEgY2FsbCB0byBzcnRwX2NyeXB0b19mcmVl
LgorICoKKyAqIHJldHVybnMgcG9pbnRlciB0byBtZW1vcnkgb24gc3VjY2VzcyBvciBlbHNlIE5V
TEwKKyAqLwordm9pZCAqc3J0cF9jcnlwdG9fYWxsb2Moc2l6ZV90IHNpemUpOwogCisvKgorICog
c3J0cF9jcnlwdG9fZnJlZQorICoKKyAqIEZyZWVzIHRoZSBibG9jayBvZiBtZW1vcnkgIHB0ciBw
cmV2aW91c2x5ICBhbGxvY2F0ZWQgd2l0aAorICogc3J0cF9jcnlwdG9fYWxsb2MKKyAqLwogdm9p
ZCBzcnRwX2NyeXB0b19mcmVlKHZvaWQgKnB0cik7CiAKICNpZmRlZiBfX2NwbHVzcGx1cwpkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9s
aWJzcnRwL2NyeXB0by9pbmNsdWRlL2F1dGguaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vaW5jbHVkZS9hdXRoLmgKaW5kZXgg
Nzg3MGIyOTQ1MGY5YWRlOThkODZkZjgxYTFkM2U4NjJmMmE0N2I0ZC4uNzc0ZWExNjg3YmI4ZGVl
MDI1Yjc4MjExNDAwY2ZkYmFlNDNkODMyZSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9pbmNsdWRlL2F1dGgu
aAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnNydHAvY3J5cHRvL2luY2x1ZGUvYXV0aC5oCkBAIC00Nyw0NiArNDcsNTEgQEAKICNkZWZpbmUg
U1JUUF9BVVRIX0gKIAogI2luY2x1ZGUgInNydHAuaCIKLSNpbmNsdWRlICJjcnlwdG9fdHlwZXMu
aCIgICAgICAgLyogZm9yIHZhbHVlcyBvZiBhdXRoX3R5cGVfaWRfdCAqLworI2luY2x1ZGUgImNy
eXB0b190eXBlcy5oIiAvKiBmb3IgdmFsdWVzIG9mIGF1dGhfdHlwZV9pZF90ICovCiAKICNpZmRl
ZiBfX2NwbHVzcGx1cwogZXh0ZXJuICJDIiB7CiAjZW5kaWYKIAogdHlwZWRlZiBjb25zdCBzdHJ1
Y3Qgc3J0cF9hdXRoX3R5cGVfdCAqc3J0cF9hdXRoX3R5cGVfcG9pbnRlcjsKLXR5cGVkZWYgc3Ry
dWN0IHNydHBfYXV0aF90ICAgICAgKnNydHBfYXV0aF9wb2ludGVyX3Q7Cit0eXBlZGVmIHN0cnVj
dCBzcnRwX2F1dGhfdCAqc3J0cF9hdXRoX3BvaW50ZXJfdDsKIAotdHlwZWRlZiBzcnRwX2Vycl9z
dGF0dXNfdCAoKnNydHBfYXV0aF9hbGxvY19mdW5jKQotICAgIChzcnRwX2F1dGhfcG9pbnRlcl90
ICphcCwgaW50IGtleV9sZW4sIGludCBvdXRfbGVuKTsKK3R5cGVkZWYgc3J0cF9lcnJfc3RhdHVz
X3QgKCpzcnRwX2F1dGhfYWxsb2NfZnVuYykoc3J0cF9hdXRoX3BvaW50ZXJfdCAqYXAsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBrZXlfbGVu
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQg
b3V0X2xlbik7CiAKLXR5cGVkZWYgc3J0cF9lcnJfc3RhdHVzX3QgKCpzcnRwX2F1dGhfaW5pdF9m
dW5jKQotICAgICh2b2lkICpzdGF0ZSwgY29uc3QgdWludDhfdCAqa2V5LCBpbnQga2V5X2xlbik7
Cit0eXBlZGVmIHNydHBfZXJyX3N0YXR1c190ICgqc3J0cF9hdXRoX2luaXRfZnVuYykodm9pZCAq
c3RhdGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Y29uc3QgdWludDhfdCAqa2V5LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGludCBrZXlfbGVuKTsKIAogdHlwZWRlZiBzcnRwX2Vycl9zdGF0dXNfdCAo
KnNydHBfYXV0aF9kZWFsbG9jX2Z1bmMpKHNydHBfYXV0aF9wb2ludGVyX3QgYXApOwogCi10eXBl
ZGVmIHNydHBfZXJyX3N0YXR1c190ICgqc3J0cF9hdXRoX2NvbXB1dGVfZnVuYykKLSAgICAodm9p
ZCAqc3RhdGUsIGNvbnN0IHVpbnQ4X3QgKmJ1ZmZlciwgaW50IG9jdGV0c190b19hdXRoLAotICAg
IGludCB0YWdfbGVuLCB1aW50OF90ICp0YWcpOwordHlwZWRlZiBzcnRwX2Vycl9zdGF0dXNfdCAo
KnNydHBfYXV0aF9jb21wdXRlX2Z1bmMpKHZvaWQgKnN0YXRlLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVpbnQ4X3QgKmJ1ZmZlciwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQg
b2N0ZXRzX3RvX2F1dGgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgaW50IHRhZ19sZW4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgdWludDhfdCAqdGFnKTsKIAotdHlwZWRlZiBzcnRwX2Vycl9z
dGF0dXNfdCAoKnNydHBfYXV0aF91cGRhdGVfZnVuYykKLSAgICAodm9pZCAqc3RhdGUsIGNvbnN0
IHVpbnQ4X3QgKmJ1ZmZlciwgaW50IG9jdGV0c190b19hdXRoKTsKK3R5cGVkZWYgc3J0cF9lcnJf
c3RhdHVzX3QgKCpzcnRwX2F1dGhfdXBkYXRlX2Z1bmMpKHZvaWQgKnN0YXRlLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdWludDhfdCAq
YnVmZmVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgaW50IG9jdGV0c190b19hdXRoKTsKIAogdHlwZWRlZiBzcnRwX2Vycl9zdGF0dXNfdCAoKnNy
dHBfYXV0aF9zdGFydF9mdW5jKSh2b2lkICpzdGF0ZSk7CiAKIC8qIHNvbWUgc3ludGFjdGljIHN1
Z2FyIG9uIHRoZXNlIGZ1bmN0aW9uIHR5cGVzICovCi0jZGVmaW5lIHNydHBfYXV0aF90eXBlX2Fs
bG9jKGF0LCBhLCBrbGVuLCBvdXRsZW4pICAgICAgICAgICAgICAgICAgICAgICAgXAorI2RlZmlu
ZSBzcnRwX2F1dGhfdHlwZV9hbGxvYyhhdCwgYSwga2xlbiwgb3V0bGVuKSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFwKICAgICAoKGF0KS0+YWxsb2MoKGEpLCAoa2xlbiksIChvdXRsZW4p
KSkKIAotI2RlZmluZSBzcnRwX2F1dGhfaW5pdChhLCBrZXkpICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFwKKyNkZWZpbmUgc3J0cF9hdXRoX2luaXQoYSwga2V5KSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgKCgo
YSktPnR5cGUpLT5pbml0KChhKS0+c3RhdGUsIChrZXkpLCAoKGEpLT5rZXlfbGVuKSkpCiAKLSNk
ZWZpbmUgc3J0cF9hdXRoX2NvbXB1dGUoYSwgYnVmLCBsZW4sIHJlcykgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBcCisjZGVmaW5lIHNydHBfYXV0aF9jb21wdXRlKGEsIGJ1ZiwgbGVuLCBy
ZXMpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgICgoKGEpLT50eXBl
KS0+Y29tcHV0ZSgoYSktPnN0YXRlLCAoYnVmKSwgKGxlbiksIChhKS0+b3V0X2xlbiwgKHJlcykp
KQogCi0jZGVmaW5lIHNydHBfYXV0aF91cGRhdGUoYSwgYnVmLCBsZW4pICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgXAorI2RlZmluZSBzcnRwX2F1dGhfdXBkYXRlKGEsIGJ1Ziwg
bGVuKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAgICAoKChh
KS0+dHlwZSktPnVwZGF0ZSgoYSktPnN0YXRlLCAoYnVmKSwgKGxlbikpKQogCi0jZGVmaW5lIHNy
dHBfYXV0aF9zdGFydChhKSgoKGEpLT50eXBlKS0+c3RhcnQoKGEpLT5zdGF0ZSkpCisjZGVmaW5l
IHNydHBfYXV0aF9zdGFydChhKSAoKChhKS0+dHlwZSktPnN0YXJ0KChhKS0+c3RhdGUpKQogCiAj
ZGVmaW5lIHNydHBfYXV0aF9kZWFsbG9jKGMpICgoKGMpLT50eXBlKS0+ZGVhbGxvYyhjKSkKIApA
QCAtMTA1LDEzICsxMTAsMTQgQEAgaW50IHNydHBfYXV0aF9nZXRfcHJlZml4X2xlbmd0aChjb25z
dCBzdHJ1Y3Qgc3J0cF9hdXRoX3QgKmEpOwogICogZnVuY3Rpb24gYmVsb3cpCiAgKi8KIHR5cGVk
ZWYgc3RydWN0IHNydHBfYXV0aF90ZXN0X2Nhc2VfdCB7Ci0gICAgaW50IGtleV9sZW5ndGhfb2N0
ZXRzOyAgICAgICAgICAgICAgICAgICAgICAgIC8qIG9jdGV0cyBpbiBrZXkgICAgICAgICAgICAq
LwotICAgIGNvbnN0IHVpbnQ4X3QgKmtleTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAvKiBrZXkgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBpbnQgZGF0YV9sZW5ndGhfb2N0
ZXRzOyAgICAgICAgICAgICAgICAgICAgICAgLyogb2N0ZXRzIGluIGRhdGEgICAgICAgICAgICov
Ci0gICAgY29uc3QgdWludDhfdCAqZGF0YTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IC8qIGRhdGEgICAgICAgICAgICAgICAgICAgICAqLwotICAgIGludCB0YWdfbGVuZ3RoX29jdGV0
czsgICAgICAgICAgICAgICAgICAgICAgICAvKiBvY3RldHMgaW4gdGFnICAgICAgICAgICAgKi8K
LSAgICBjb25zdCB1aW50OF90ICp0YWc7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
LyogdGFnICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgY29uc3Qgc3RydWN0IHNydHBfYXV0
aF90ZXN0X2Nhc2VfdCAqbmV4dF90ZXN0X2Nhc2U7IC8qIHBvaW50ZXIgdG8gbmV4dCB0ZXN0Y2Fz
ZSAqLworICAgIGludCBrZXlfbGVuZ3RoX29jdGV0czsgIC8qIG9jdGV0cyBpbiBrZXkgICAgICAg
ICAgICAqLworICAgIGNvbnN0IHVpbnQ4X3QgKmtleTsgICAgIC8qIGtleSAgICAgICAgICAgICAg
ICAgICAgICAqLworICAgIGludCBkYXRhX2xlbmd0aF9vY3RldHM7IC8qIG9jdGV0cyBpbiBkYXRh
ICAgICAgICAgICAqLworICAgIGNvbnN0IHVpbnQ4X3QgKmRhdGE7ICAgIC8qIGRhdGEgICAgICAg
ICAgICAgICAgICAgICAqLworICAgIGludCB0YWdfbGVuZ3RoX29jdGV0czsgIC8qIG9jdGV0cyBp
biB0YWcgICAgICAgICAgICAqLworICAgIGNvbnN0IHVpbnQ4X3QgKnRhZzsgICAgIC8qIHRhZyAg
ICAgICAgICAgICAgICAgICAgICAqLworICAgIGNvbnN0IHN0cnVjdCBzcnRwX2F1dGhfdGVzdF9j
YXNlX3QKKyAgICAgICAgKm5leHRfdGVzdF9jYXNlOyAvKiBwb2ludGVyIHRvIG5leHQgdGVzdGNh
c2UgKi8KIH0gc3J0cF9hdXRoX3Rlc3RfY2FzZV90OwogCiAvKiBzcnRwX2F1dGhfdHlwZV90ICov
CkBAIC0xMjIsMTcgKzEyOCwxNyBAQCB0eXBlZGVmIHN0cnVjdCBzcnRwX2F1dGhfdHlwZV90IHsK
ICAgICBzcnRwX2F1dGhfY29tcHV0ZV9mdW5jIGNvbXB1dGU7CiAgICAgc3J0cF9hdXRoX3VwZGF0
ZV9mdW5jIHVwZGF0ZTsKICAgICBzcnRwX2F1dGhfc3RhcnRfZnVuYyBzdGFydDsKLSAgICBjb25z
dCBjaGFyICAgICAgICAgICAgICAgICpkZXNjcmlwdGlvbjsKLSAgICBjb25zdCBzcnRwX2F1dGhf
dGVzdF9jYXNlX3QgICAgKnRlc3RfZGF0YTsKKyAgICBjb25zdCBjaGFyICpkZXNjcmlwdGlvbjsK
KyAgICBjb25zdCBzcnRwX2F1dGhfdGVzdF9jYXNlX3QgKnRlc3RfZGF0YTsKICAgICBzcnRwX2F1
dGhfdHlwZV9pZF90IGlkOwogfSBzcnRwX2F1dGhfdHlwZV90OwogCiB0eXBlZGVmIHN0cnVjdCBz
cnRwX2F1dGhfdCB7CiAgICAgY29uc3Qgc3J0cF9hdXRoX3R5cGVfdCAqdHlwZTsKLSAgICB2b2lk
ICAgICAgICAqc3RhdGU7Ci0gICAgaW50IG91dF9sZW47ICAgICAgICAgICAgICAgICAgLyogbGVu
Z3RoIG9mIG91dHB1dCB0YWcgaW4gb2N0ZXRzICovCi0gICAgaW50IGtleV9sZW47ICAgICAgICAg
ICAgICAgICAgLyogbGVuZ3RoIG9mIGtleSBpbiBvY3RldHMgICAgICAgICovCi0gICAgaW50IHBy
ZWZpeF9sZW47ICAgICAgICAgICAgICAgLyogbGVuZ3RoIG9mIGtleXN0cmVhbSBwcmVmaXggICAg
ICovCisgICAgdm9pZCAqc3RhdGU7CisgICAgaW50IG91dF9sZW47ICAgIC8qIGxlbmd0aCBvZiBv
dXRwdXQgdGFnIGluIG9jdGV0cyAqLworICAgIGludCBrZXlfbGVuOyAgICAvKiBsZW5ndGggb2Yg
a2V5IGluIG9jdGV0cyAgICAgICAgKi8KKyAgICBpbnQgcHJlZml4X2xlbjsgLyogbGVuZ3RoIG9m
IGtleXN0cmVhbSBwcmVmaXggICAgICovCiB9IHNydHBfYXV0aF90OwogCiAvKgpAQCAtMTQ3LDgg
KzE1Myw4IEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfYXV0aF90eXBlX3NlbGZfdGVzdChjb25z
dCBzcnRwX2F1dGhfdHlwZV90ICphdCk7CiAgKiBwcm92aWRlZCBpbiBhbiBhcnJheSBvZiB2YWx1
ZXMgb2Yga2V5L21lc3NhZ2UvdGFnIHRoYXQgaXMga25vd24gdG8KICAqIGJlIGdvb2QKICAqLwot
c3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9hdXRoX3R5cGVfdGVzdChjb25zdCBzcnRwX2F1dGhfdHlw
ZV90ICphdCwgCi0JY29uc3Qgc3J0cF9hdXRoX3Rlc3RfY2FzZV90ICp0ZXN0X2RhdGEpOworc3J0
cF9lcnJfc3RhdHVzX3Qgc3J0cF9hdXRoX3R5cGVfdGVzdChjb25zdCBzcnRwX2F1dGhfdHlwZV90
ICphdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3J0cF9h
dXRoX3Rlc3RfY2FzZV90ICp0ZXN0X2RhdGEpOwogCiAvKgogICogc3J0cF9yZXBsYWNlX2F1dGhf
dHlwZShjdCwgaWQpCkBAIC0xNTcsNyArMTYzLDggQEAgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9h
dXRoX3R5cGVfdGVzdChjb25zdCBzcnRwX2F1dGhfdHlwZV90ICphdCwKICAqIHdpdGggYSBuZXcg
b25lIHBhc3NlZCBpbiBleHRlcm5hbGx5LiAgVGhlIG5ldyBhdXRoIHR5cGUgbXVzdCBwYXNzIGFs
bCB0aGUKICAqIGV4aXN0aW5nIGF1dGhfdHlwZSdzIHNlbGYgdGVzdHMgYXMgd2VsbCBhcyBpdHMg
b3duLgogICovCi1zcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3JlcGxhY2VfYXV0aF90eXBlKGNvbnN0
IHNydHBfYXV0aF90eXBlX3QgKmN0LCBzcnRwX2F1dGhfdHlwZV9pZF90IGlkKTsKK3NydHBfZXJy
X3N0YXR1c190IHNydHBfcmVwbGFjZV9hdXRoX3R5cGUoY29uc3Qgc3J0cF9hdXRoX3R5cGVfdCAq
Y3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfYXV0aF90
eXBlX2lkX3QgaWQpOwogCiAjaWZkZWYgX19jcGx1c3BsdXMKIH0KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8v
aW5jbHVkZS9jaXBoZXIuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlic3J0cC9jcnlwdG8vaW5jbHVkZS9jaXBoZXIuaAppbmRleCBkNTQ0YjEyMDQ1
Y2NiNDE1MGQ1MDZkOTU5MWQ3NTA0MjZkMmMyMTIzLi40ZjE0ZTM1NjBmZGQwM2Q3ZGZiMTk0NGEx
ZjE2Yzc2OTc0ZjkxOTM0IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2luY2x1ZGUvY2lwaGVyLmgKKysrIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2Ny
eXB0by9pbmNsdWRlL2NpcGhlci5oCkBAIC00MiwxMyArNDIsMTEgQEAKICAqCiAgKi8KIAotCiAj
aWZuZGVmIFNSVFBfQ0lQSEVSX0gKICNkZWZpbmUgU1JUUF9DSVBIRVJfSAogCiAjaW5jbHVkZSAi
c3J0cC5oIgotI2luY2x1ZGUgImNyeXB0b190eXBlcy5oIiAgICAgICAvKiBmb3IgdmFsdWVzIG9m
IGNpcGhlcl90eXBlX2lkX3QgKi8KLQorI2luY2x1ZGUgImNyeXB0b190eXBlcy5oIiAvKiBmb3Ig
dmFsdWVzIG9mIGNpcGhlcl90eXBlX2lkX3QgKi8KIAogI2lmZGVmIF9fY3BsdXNwbHVzCiBleHRl
cm4gIkMiIHsKQEAgLTcxLDUxICs2OSw2MCBAQCB0eXBlZGVmIGVudW0gewogICogdGhlIHNydHBf
Y2lwaGVyX3BvaW50ZXJfdCBkZWZpbml0aW9uIGlzIG5lZWRlZAogICogYXMgc3J0cF9jaXBoZXJf
dCBpcyBub3QgeWV0IGRlZmluZWQKICAqLwotdHlwZWRlZiBzdHJ1Y3Qgc3J0cF9jaXBoZXJfdCAg
ICAgICpzcnRwX2NpcGhlcl9wb2ludGVyX3Q7Cit0eXBlZGVmIHN0cnVjdCBzcnRwX2NpcGhlcl90
ICpzcnRwX2NpcGhlcl9wb2ludGVyX3Q7CiAKIC8qCi0gKiAgYSBzcnRwX2NpcGhlcl9hbGxvY19m
dW5jX3QgYWxsb2NhdGVzIChidXQgZG9lcyBub3QgaW5pdGlhbGl6ZSkgYSBzcnRwX2NpcGhlcl90
CisgKiAgYSBzcnRwX2NpcGhlcl9hbGxvY19mdW5jX3QgYWxsb2NhdGVzIChidXQgZG9lcyBub3Qg
aW5pdGlhbGl6ZSkgYQorICogc3J0cF9jaXBoZXJfdAogICovCi10eXBlZGVmIHNydHBfZXJyX3N0
YXR1c190ICgqc3J0cF9jaXBoZXJfYWxsb2NfZnVuY190KQotICAgIChzcnRwX2NpcGhlcl9wb2lu
dGVyX3QgKmNwLCBpbnQga2V5X2xlbiwgaW50IHRhZ19sZW4pOwordHlwZWRlZiBzcnRwX2Vycl9z
dGF0dXNfdCAoKnNydHBfY2lwaGVyX2FsbG9jX2Z1bmNfdCkoc3J0cF9jaXBoZXJfcG9pbnRlcl90
ICpjcCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGludCBrZXlfbGVuLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgaW50IHRhZ19sZW4pOwogCiAvKgogICogYSBzcnRwX2NpcGhlcl9pbml0
X2Z1bmNfdCBbcmUtXWluaXRpYWxpemVzIGEgY2lwaGVyX3Qgd2l0aCBhIGdpdmVuIGtleQogICov
Ci10eXBlZGVmIHNydHBfZXJyX3N0YXR1c190ICgqc3J0cF9jaXBoZXJfaW5pdF9mdW5jX3QpCi0g
ICAgKHZvaWQgKnN0YXRlLCBjb25zdCB1aW50OF90ICprZXkpOwordHlwZWRlZiBzcnRwX2Vycl9z
dGF0dXNfdCAoKnNydHBfY2lwaGVyX2luaXRfZnVuY190KSh2b2lkICpzdGF0ZSwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdWludDhf
dCAqa2V5KTsKIAogLyogYSBzcnRwX2NpcGhlcl9kZWFsbG9jX2Z1bmNfdCBkZS1hbGxvY2F0ZXMg
YSBjaXBoZXJfdCAqLwotdHlwZWRlZiBzcnRwX2Vycl9zdGF0dXNfdCAoKnNydHBfY2lwaGVyX2Rl
YWxsb2NfZnVuY190KShzcnRwX2NpcGhlcl9wb2ludGVyX3QgY3ApOwordHlwZWRlZiBzcnRwX2Vy
cl9zdGF0dXNfdCAoKnNydHBfY2lwaGVyX2RlYWxsb2NfZnVuY190KSgKKyAgICBzcnRwX2NpcGhl
cl9wb2ludGVyX3QgY3ApOwogCiAvKgogICogYSBzcnRwX2NpcGhlcl9zZXRfYWFkX2Z1bmNfdCBw
cm9jZXNzZXMgdGhlIEFBRCBkYXRhIGZvciBBRUFEIGNpcGhlcnMKICAqLwotdHlwZWRlZiBzcnRw
X2Vycl9zdGF0dXNfdCAoKnNydHBfY2lwaGVyX3NldF9hYWRfZnVuY190KQotICAgICh2b2lkICpz
dGF0ZSwgY29uc3QgdWludDhfdCAqYWFkLCB1aW50MzJfdCBhYWRfbGVuKTsKLQordHlwZWRlZiBz
cnRwX2Vycl9zdGF0dXNfdCAoKnNydHBfY2lwaGVyX3NldF9hYWRfZnVuY190KSh2b2lkICpzdGF0
ZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgY29uc3QgdWludDhfdCAqYWFkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBhYWRfbGVuKTsKIAogLyogYSBzcnRwX2Np
cGhlcl9lbmNyeXB0X2Z1bmNfdCBlbmNyeXB0cyBkYXRhIGluLXBsYWNlICovCi10eXBlZGVmIHNy
dHBfZXJyX3N0YXR1c190ICgqc3J0cF9jaXBoZXJfZW5jcnlwdF9mdW5jX3QpCi0gICAgKHZvaWQg
KnN0YXRlLCB1aW50OF90ICpidWZmZXIsIHVuc2lnbmVkIGludCAqb2N0ZXRzX3RvX2VuY3J5cHQp
OwordHlwZWRlZiBzcnRwX2Vycl9zdGF0dXNfdCAoKnNydHBfY2lwaGVyX2VuY3J5cHRfZnVuY190
KSgKKyAgICB2b2lkICpzdGF0ZSwKKyAgICB1aW50OF90ICpidWZmZXIsCisgICAgdW5zaWduZWQg
aW50ICpvY3RldHNfdG9fZW5jcnlwdCk7CiAKIC8qIGEgc3J0cF9jaXBoZXJfZGVjcnlwdF9mdW5j
X3QgZGVjcnlwdHMgZGF0YSBpbi1wbGFjZSAqLwotdHlwZWRlZiBzcnRwX2Vycl9zdGF0dXNfdCAo
KnNydHBfY2lwaGVyX2RlY3J5cHRfZnVuY190KQotICAgICh2b2lkICpzdGF0ZSwgdWludDhfdCAq
YnVmZmVyLCB1bnNpZ25lZCBpbnQgKm9jdGV0c190b19kZWNyeXB0KTsKK3R5cGVkZWYgc3J0cF9l
cnJfc3RhdHVzX3QgKCpzcnRwX2NpcGhlcl9kZWNyeXB0X2Z1bmNfdCkoCisgICAgdm9pZCAqc3Rh
dGUsCisgICAgdWludDhfdCAqYnVmZmVyLAorICAgIHVuc2lnbmVkIGludCAqb2N0ZXRzX3RvX2Rl
Y3J5cHQpOwogCiAvKgogICogYSBzcnRwX2NpcGhlcl9zZXRfaXZfZnVuY190IGZ1bmN0aW9uIHNl
dHMgdGhlIGN1cnJlbnQgaW5pdGlhbGl6YXRpb24gdmVjdG9yCiAgKi8KLXR5cGVkZWYgc3J0cF9l
cnJfc3RhdHVzX3QgKCpzcnRwX2NpcGhlcl9zZXRfaXZfZnVuY190KQotICAgICh2b2lkICpzdGF0
ZSwgdWludDhfdCAqaXYsIHNydHBfY2lwaGVyX2RpcmVjdGlvbl90IGRpcmVjdGlvbik7Cit0eXBl
ZGVmIHNydHBfZXJyX3N0YXR1c190ICgqc3J0cF9jaXBoZXJfc2V0X2l2X2Z1bmNfdCkoCisgICAg
dm9pZCAqc3RhdGUsCisgICAgdWludDhfdCAqaXYsCisgICAgc3J0cF9jaXBoZXJfZGlyZWN0aW9u
X3QgZGlyZWN0aW9uKTsKIAogLyoKICAqIGEgY2lwaGVyX2dldF90YWdfZnVuY190IGZ1bmN0aW9u
IGlzIHVzZWQgdG8gZ2V0IHRoZSBhdXRoZW50aWNhdGlvbgogICogdGFnIHRoYXQgd2FzIGNhbGN1
bGF0ZWQgYnkgYW4gQUVBRCBjaXBoZXIuCiAgKi8KLXR5cGVkZWYgc3J0cF9lcnJfc3RhdHVzX3Qg
KCpzcnRwX2NpcGhlcl9nZXRfdGFnX2Z1bmNfdCkKLSAgICAodm9pZCAqc3RhdGUsIHVpbnQ4X3Qg
KnRhZywgdWludDMyX3QgKmxlbik7Ci0KK3R5cGVkZWYgc3J0cF9lcnJfc3RhdHVzX3QgKCpzcnRw
X2NpcGhlcl9nZXRfdGFnX2Z1bmNfdCkodm9pZCAqc3RhdGUsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQ4X3QgKnRhZywKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMy
X3QgKmxlbik7CiAKIC8qCiAgKiBzcnRwX2NpcGhlcl90ZXN0X2Nhc2VfdCBpcyBhIChsaXN0IG9m
KSBrZXksIHNhbHQsIHBsYWludGV4dCwgY2lwaGVydGV4dCwKQEAgLTEyNSwxNyArMTMyLDE4IEBA
IHR5cGVkZWYgc3J0cF9lcnJfc3RhdHVzX3QgKCpzcnRwX2NpcGhlcl9nZXRfdGFnX2Z1bmNfdCkK
ICAqIChzZWUgdGhlIHNydHBfY2lwaGVyX3R5cGVfc2VsZl90ZXN0KCkgZnVuY3Rpb24gYmVsb3cp
CiAgKi8KIHR5cGVkZWYgc3RydWN0IHNydHBfY2lwaGVyX3Rlc3RfY2FzZV90IHsKLSAgICBpbnQg
a2V5X2xlbmd0aF9vY3RldHM7ICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBvY3RldHMgaW4g
a2V5ICAgICAgICAgICAgKi8KLSAgICBjb25zdCB1aW50OF90ICprZXk7ICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAvKiBrZXkgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICB1
aW50OF90ICppZHg7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBwYWNrZXQg
aW5kZXggICAgICAgICAgICAgKi8KLSAgICBpbnQgcGxhaW50ZXh0X2xlbmd0aF9vY3RldHM7ICAg
ICAgICAgICAgICAgICAgICAvKiBvY3RldHMgaW4gcGxhaW50ZXh0ICAgICAgKi8KLSAgICBjb25z
dCB1aW50OF90ICpwbGFpbnRleHQ7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBwbGFp
bnRleHQgICAgICAgICAgICAgICAgKi8KLSAgICBpbnQgY2lwaGVydGV4dF9sZW5ndGhfb2N0ZXRz
OyAgICAgICAgICAgICAgICAgICAvKiBvY3RldHMgaW4gcGxhaW50ZXh0ICAgICAgKi8KLSAgICBj
b25zdCB1aW50OF90ICpjaXBoZXJ0ZXh0OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBj
aXBoZXJ0ZXh0ICAgICAgICAgICAgICAgKi8KLSAgICBpbnQgYWFkX2xlbmd0aF9vY3RldHM7ICAg
ICAgICAgICAgICAgICAgICAgICAgICAvKiBvY3RldHMgaW4gQUFEICAgICAgICAgICAgKi8KLSAg
ICBjb25zdCB1aW50OF90ICphYWQ7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAv
KiBBQUQgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICBpbnQgdGFnX2xlbmd0aF9vY3RldHM7
ICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBMZW5ndGggb2YgQUVBRCB0YWcgICAgICAgKi8K
LSAgICBjb25zdCBzdHJ1Y3Qgc3J0cF9jaXBoZXJfdGVzdF9jYXNlX3QgKm5leHRfdGVzdF9jYXNl
OyAvKiBwb2ludGVyIHRvIG5leHQgdGVzdGNhc2UgKi8KKyAgICBpbnQga2V5X2xlbmd0aF9vY3Rl
dHM7ICAgICAgICAgICAgICAgICAvKiBvY3RldHMgaW4ga2V5ICAgICAgICAgICAgKi8KKyAgICBj
b25zdCB1aW50OF90ICprZXk7ICAgICAgICAgICAgICAgICAgICAvKiBrZXkgICAgICAgICAgICAg
ICAgICAgICAgKi8KKyAgICB1aW50OF90ICppZHg7ICAgICAgICAgICAgICAgICAgICAgICAgICAv
KiBwYWNrZXQgaW5kZXggICAgICAgICAgICAgKi8KKyAgICB1bnNpZ25lZCBpbnQgcGxhaW50ZXh0
X2xlbmd0aF9vY3RldHM7ICAvKiBvY3RldHMgaW4gcGxhaW50ZXh0ICAgICAgKi8KKyAgICBjb25z
dCB1aW50OF90ICpwbGFpbnRleHQ7ICAgICAgICAgICAgICAvKiBwbGFpbnRleHQgICAgICAgICAg
ICAgICAgKi8KKyAgICB1bnNpZ25lZCBpbnQgY2lwaGVydGV4dF9sZW5ndGhfb2N0ZXRzOyAvKiBv
Y3RldHMgaW4gcGxhaW50ZXh0ICAgICAgKi8KKyAgICBjb25zdCB1aW50OF90ICpjaXBoZXJ0ZXh0
OyAgICAgICAgICAgICAvKiBjaXBoZXJ0ZXh0ICAgICAgICAgICAgICAgKi8KKyAgICBpbnQgYWFk
X2xlbmd0aF9vY3RldHM7ICAgICAgICAgICAgICAgICAvKiBvY3RldHMgaW4gQUFEICAgICAgICAg
ICAgKi8KKyAgICBjb25zdCB1aW50OF90ICphYWQ7ICAgICAgICAgICAgICAgICAgICAvKiBBQUQg
ICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBpbnQgdGFnX2xlbmd0aF9vY3RldHM7ICAgICAg
ICAgICAgICAgICAvKiBMZW5ndGggb2YgQUVBRCB0YWcgICAgICAgKi8KKyAgICBjb25zdCBzdHJ1
Y3Qgc3J0cF9jaXBoZXJfdGVzdF9jYXNlX3QKKyAgICAgICAgKm5leHRfdGVzdF9jYXNlOyAvKiBw
b2ludGVyIHRvIG5leHQgdGVzdGNhc2UgKi8KIH0gc3J0cF9jaXBoZXJfdGVzdF9jYXNlX3Q7CiAK
IC8qIHNydHBfY2lwaGVyX3R5cGVfdCBkZWZpbmVzIHRoZSAnbWV0YWRhdGEnIGZvciBhIHBhcnRp
Y3VsYXIgY2lwaGVyIHR5cGUgKi8KQEAgLTE0OCw4ICsxNTYsOCBAQCB0eXBlZGVmIHN0cnVjdCBz
cnRwX2NpcGhlcl90eXBlX3QgewogICAgIHNydHBfY2lwaGVyX2VuY3J5cHRfZnVuY190IGRlY3J5
cHQ7CiAgICAgc3J0cF9jaXBoZXJfc2V0X2l2X2Z1bmNfdCBzZXRfaXY7CiAgICAgc3J0cF9jaXBo
ZXJfZ2V0X3RhZ19mdW5jX3QgZ2V0X3RhZzsKLSAgICBjb25zdCBjaGFyICAgICAgICAgICAgICAg
ICAgICAgICAqZGVzY3JpcHRpb247Ci0gICAgY29uc3Qgc3J0cF9jaXBoZXJfdGVzdF9jYXNlX3Qg
ICAgICAgICAqdGVzdF9kYXRhOworICAgIGNvbnN0IGNoYXIgKmRlc2NyaXB0aW9uOworICAgIGNv
bnN0IHNydHBfY2lwaGVyX3Rlc3RfY2FzZV90ICp0ZXN0X2RhdGE7CiAgICAgc3J0cF9jaXBoZXJf
dHlwZV9pZF90IGlkOwogfSBzcnRwX2NpcGhlcl90eXBlX3Q7CiAKQEAgLTE1OSw3ICsxNjcsNyBA
QCB0eXBlZGVmIHN0cnVjdCBzcnRwX2NpcGhlcl90eXBlX3QgewogICovCiB0eXBlZGVmIHN0cnVj
dCBzcnRwX2NpcGhlcl90IHsKICAgICBjb25zdCBzcnRwX2NpcGhlcl90eXBlX3QgKnR5cGU7Ci0g
ICAgdm9pZCAgICAgICAgICAqc3RhdGU7CisgICAgdm9pZCAqc3RhdGU7CiAgICAgaW50IGtleV9s
ZW47CiAgICAgaW50IGFsZ29yaXRobTsKIH0gc3J0cF9jaXBoZXJfdDsKQEAgLTE2Nyw3ICsxNzUs
NiBAQCB0eXBlZGVmIHN0cnVjdCBzcnRwX2NpcGhlcl90IHsKIC8qIHNvbWUgYm9va2tlZXBpbmcg
ZnVuY3Rpb25zICovCiBpbnQgc3J0cF9jaXBoZXJfZ2V0X2tleV9sZW5ndGgoY29uc3Qgc3J0cF9j
aXBoZXJfdCAqYyk7CiAKLQogLyoKICAqIHNydHBfY2lwaGVyX3R5cGVfc2VsZl90ZXN0KCkgdGVz
dHMgYSBjaXBoZXIgYWdhaW5zdCB0ZXN0IGNhc2VzIHByb3ZpZGVkIGluCiAgKiBhbiBhcnJheSBv
ZiB2YWx1ZXMgb2Yga2V5L3NydHBfeHRkX3NlcV9udW1fdC9wbGFpbnRleHQvY2lwaGVydGV4dApA
QCAtMTc1LDE0ICsxODIsMTUgQEAgaW50IHNydHBfY2lwaGVyX2dldF9rZXlfbGVuZ3RoKGNvbnN0
IHNydHBfY2lwaGVyX3QgKmMpOwogICovCiBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NpcGhlcl90
eXBlX3NlbGZfdGVzdChjb25zdCBzcnRwX2NpcGhlcl90eXBlX3QgKmN0KTsKIAotCiAvKgotICog
c3J0cF9jaXBoZXJfdHlwZV90ZXN0KCkgdGVzdHMgYSBjaXBoZXIgYWdhaW5zdCBleHRlcm5hbCB0
ZXN0IGNhc2VzIHByb3ZpZGVkIGluCisgKiBzcnRwX2NpcGhlcl90eXBlX3Rlc3QoKSB0ZXN0cyBh
IGNpcGhlciBhZ2FpbnN0IGV4dGVybmFsIHRlc3QgY2FzZXMgcHJvdmlkZWQKKyAqIGluCiAgKiBh
biBhcnJheSBvZiB2YWx1ZXMgb2Yga2V5L3NydHBfeHRkX3NlcV9udW1fdC9wbGFpbnRleHQvY2lw
aGVydGV4dAogICogdGhhdCBpcyBrbm93biB0byBiZSBnb29kCiAgKi8KLXNydHBfZXJyX3N0YXR1
c190IHNydHBfY2lwaGVyX3R5cGVfdGVzdChjb25zdCBzcnRwX2NpcGhlcl90eXBlX3QgKmN0LCBj
b25zdCBzcnRwX2NpcGhlcl90ZXN0X2Nhc2VfdCAqdGVzdF9kYXRhKTsKLQorc3J0cF9lcnJfc3Rh
dHVzX3Qgc3J0cF9jaXBoZXJfdHlwZV90ZXN0KAorICAgIGNvbnN0IHNydHBfY2lwaGVyX3R5cGVf
dCAqY3QsCisgICAgY29uc3Qgc3J0cF9jaXBoZXJfdGVzdF9jYXNlX3QgKnRlc3RfZGF0YSk7CiAK
IC8qCiAgKiBzcnRwX2NpcGhlcl9iaXRzX3Blcl9zZWNvbmQoYywgbCwgdCkgY29tcHV0ZXMgKGFu
IGVzdGltYXRlIG9mKSB0aGUKQEAgLTE5NCwxNyArMjAyLDM0IEBAIHNydHBfZXJyX3N0YXR1c190
IHNydHBfY2lwaGVyX3R5cGVfdGVzdChjb25zdCBzcnRwX2NpcGhlcl90eXBlX3QgKmN0LCBjb25z
dCBzcnRwCiAgKgogICogaWYgYW4gZXJyb3IgaXMgZW5jb3VudGVyZWQsIHRoZW4gdGhlIHZhbHVl
IDAgaXMgcmV0dXJuZWQKICAqLwotdWludDY0X3Qgc3J0cF9jaXBoZXJfYml0c19wZXJfc2Vjb25k
KHNydHBfY2lwaGVyX3QgKmMsIGludCBvY3RldHNfaW5fYnVmZmVyLCBpbnQgbnVtX3RyaWFscyk7
Ci0KLXNydHBfZXJyX3N0YXR1c190IHNydHBfY2lwaGVyX3R5cGVfYWxsb2MoY29uc3Qgc3J0cF9j
aXBoZXJfdHlwZV90ICpjdCwgc3J0cF9jaXBoZXJfdCAqKmMsIGludCBrZXlfbGVuLCBpbnQgdGxl
bik7Cit1aW50NjRfdCBzcnRwX2NpcGhlcl9iaXRzX3Blcl9zZWNvbmQoc3J0cF9jaXBoZXJfdCAq
YywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgb2N0ZXRzX2luX2J1
ZmZlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgbnVtX3RyaWFs
cyk7CisKK3NydHBfZXJyX3N0YXR1c190IHNydHBfY2lwaGVyX3R5cGVfYWxsb2MoY29uc3Qgc3J0
cF9jaXBoZXJfdHlwZV90ICpjdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgc3J0cF9jaXBoZXJfdCAqKmMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGludCBrZXlfbGVuLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBpbnQgdGxlbik7CiBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NpcGhlcl9kZWFsbG9j
KHNydHBfY2lwaGVyX3QgKmMpOwogc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jaXBoZXJfaW5pdChz
cnRwX2NpcGhlcl90ICpjLCBjb25zdCB1aW50OF90ICprZXkpOwotc3J0cF9lcnJfc3RhdHVzX3Qg
c3J0cF9jaXBoZXJfc2V0X2l2KHNydHBfY2lwaGVyX3QgKmMsIHVpbnQ4X3QgKml2LCBpbnQgZGly
ZWN0aW9uKTsKLXNydHBfZXJyX3N0YXR1c190IHNydHBfY2lwaGVyX291dHB1dChzcnRwX2NpcGhl
cl90ICpjLCB1aW50OF90ICpidWZmZXIsIHVpbnQzMl90ICpudW1fb2N0ZXRzX3RvX291dHB1dCk7
IAotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jaXBoZXJfZW5jcnlwdChzcnRwX2NpcGhlcl90ICpj
LCB1aW50OF90ICpidWZmZXIsIHVpbnQzMl90ICpudW1fb2N0ZXRzX3RvX291dHB1dCk7IAotc3J0
cF9lcnJfc3RhdHVzX3Qgc3J0cF9jaXBoZXJfZGVjcnlwdChzcnRwX2NpcGhlcl90ICpjLCB1aW50
OF90ICpidWZmZXIsIHVpbnQzMl90ICpudW1fb2N0ZXRzX3RvX291dHB1dCk7IAotc3J0cF9lcnJf
c3RhdHVzX3Qgc3J0cF9jaXBoZXJfZ2V0X3RhZyhzcnRwX2NpcGhlcl90ICpjLCB1aW50OF90ICpi
dWZmZXIsIHVpbnQzMl90ICp0YWdfbGVuKTsKLXNydHBfZXJyX3N0YXR1c190IHNydHBfY2lwaGVy
X3NldF9hYWQoc3J0cF9jaXBoZXJfdCAqYywgY29uc3QgdWludDhfdCAqYWFkLCB1aW50MzJfdCBh
YWRfbGVuKTsKK3NydHBfZXJyX3N0YXR1c190IHNydHBfY2lwaGVyX3NldF9pdihzcnRwX2NpcGhl
cl90ICpjLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQ4X3QgKml2
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBkaXJlY3Rpb24pOwor
c3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jaXBoZXJfb3V0cHV0KHNydHBfY2lwaGVyX3QgKmMsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDhfdCAqYnVmZmVyLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90ICpudW1fb2N0ZXRzX3Rv
X291dHB1dCk7CitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NpcGhlcl9lbmNyeXB0KHNydHBfY2lw
aGVyX3QgKmMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQ4X3Qg
KmJ1ZmZlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3Qg
Km51bV9vY3RldHNfdG9fb3V0cHV0KTsKK3NydHBfZXJyX3N0YXR1c190IHNydHBfY2lwaGVyX2Rl
Y3J5cHQoc3J0cF9jaXBoZXJfdCAqYywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgdWludDhfdCAqYnVmZmVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB1aW50MzJfdCAqbnVtX29jdGV0c190b19vdXRwdXQpOworc3J0cF9lcnJfc3RhdHVzX3Qg
c3J0cF9jaXBoZXJfZ2V0X3RhZyhzcnRwX2NpcGhlcl90ICpjLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB1aW50OF90ICpidWZmZXIsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHVpbnQzMl90ICp0YWdfbGVuKTsKK3NydHBfZXJyX3N0YXR1c190
IHNydHBfY2lwaGVyX3NldF9hYWQoc3J0cF9jaXBoZXJfdCAqYywKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgY29uc3QgdWludDhfdCAqYWFkLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBhYWRfbGVuKTsKIAogLyoKICAqIHNydHBf
cmVwbGFjZV9jaXBoZXJfdHlwZShjdCwgaWQpCkBAIC0yMTMsNyArMjM4LDggQEAgc3J0cF9lcnJf
c3RhdHVzX3Qgc3J0cF9jaXBoZXJfc2V0X2FhZChzcnRwX2NpcGhlcl90ICpjLCBjb25zdCB1aW50
OF90ICphYWQsIHVpbnQKICAqIHdpdGggYSBuZXcgb25lIHBhc3NlZCBpbiBleHRlcm5hbGx5LiAg
VGhlIG5ldyBjaXBoZXIgbXVzdCBwYXNzIGFsbCB0aGUKICAqIGV4aXN0aW5nIGNpcGhlcl90eXBl
J3Mgc2VsZiB0ZXN0cyBhcyB3ZWxsIGFzIGl0cyBvd24uCiAgKi8KLXNydHBfZXJyX3N0YXR1c190
IHNydHBfcmVwbGFjZV9jaXBoZXJfdHlwZShjb25zdCBzcnRwX2NpcGhlcl90eXBlX3QgKmN0LCBz
cnRwX2NpcGhlcl90eXBlX2lkX3QgaWQpOworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9yZXBsYWNl
X2NpcGhlcl90eXBlKGNvbnN0IHNydHBfY2lwaGVyX3R5cGVfdCAqY3QsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF9jaXBoZXJfdHlwZV9pZF90IGlkKTsK
IAogI2lmZGVmIF9fY3BsdXNwbHVzCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2luY2x1ZGUvY2lwaGVy
X3R5cGVzLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L2xpYnNydHAvY3J5cHRvL2luY2x1ZGUvY2lwaGVyX3R5cGVzLmgKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYTU0M2I1
NDc4YmEyZDY1YTZiMWQyYjAwMjMzMmQ5MTI0ZWExYTkwYwotLS0gL2Rldi9udWxsCisrKyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlw
dG8vaW5jbHVkZS9jaXBoZXJfdHlwZXMuaApAQCAtMCwwICsxLDgxIEBACisvKgorICoKKyAqIENv
cHlyaWdodChjKSAyMDAxLTIwMTcgQ2lzY28gU3lzdGVtcywgSW5jLgorICogQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmlu
YXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRl
ZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAq
CisgKiAgIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJv
dmUgY29weXJpZ2h0CisgKiAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqCisgKiAgIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyAqICAgY29weXJpZ2h0IG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKKyAqICAgZGlzY2xhaW1l
ciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkCisg
KiAgIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiAgIE5laXRoZXIgdGhlIG5hbWUgb2Yg
dGhlIENpc2NvIFN5c3RlbXMsIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqICAgY29udHJp
YnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVk
CisgKiAgIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4g
cGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZ
UklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBU
TywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MK
KyAqIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQg
U0hBTEwgVEhFCisgKiBDT1BZUklHSFQgSE9MREVSUyBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxF
IEZPUiBBTlkgRElSRUNULAorICogSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1Q
TEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisgKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IKKyAqIFNFUlZJQ0VT
OyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9O
KQorICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOIENPTlRSQUNULAorICogU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBU
SEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRAorICogT0YgVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICoKKyAqLworCisjaWZuZGVmIENJSFBFUl9UWVBFU19I
CisjZGVmaW5lIENJSFBFUl9UWVBFU19ICisKKyNpbmNsdWRlICJjaXBoZXIuaCIKKyNpbmNsdWRl
ICJhdXRoLmgiCisKKy8qCisgKiBjaXBoZXIgdHlwZXMgdGhhdCBjYW4gYmUgaW5jbHVkZWQgaW4g
dGhlIGtlcm5lbAorICovCisKK2V4dGVybiBjb25zdCBzcnRwX2NpcGhlcl90eXBlX3Qgc3J0cF9u
dWxsX2NpcGhlcjsKK2V4dGVybiBjb25zdCBzcnRwX2NpcGhlcl90eXBlX3Qgc3J0cF9hZXNfaWNt
XzEyODsKK2V4dGVybiBjb25zdCBzcnRwX2NpcGhlcl90eXBlX3Qgc3J0cF9hZXNfaWNtXzI1NjsK
KyNpZmRlZiBPUEVOU1NMCitleHRlcm4gY29uc3Qgc3J0cF9jaXBoZXJfdHlwZV90IHNydHBfYWVz
X2ljbV8xOTI7CitleHRlcm4gY29uc3Qgc3J0cF9jaXBoZXJfdHlwZV90IHNydHBfYWVzX2djbV8x
Mjhfb3BlbnNzbDsKK2V4dGVybiBjb25zdCBzcnRwX2NpcGhlcl90eXBlX3Qgc3J0cF9hZXNfZ2Nt
XzI1Nl9vcGVuc3NsOworI2VuZGlmCisKKy8qCisgKiBhdXRoIGZ1bmMgdHlwZXMgdGhhdCBjYW4g
YmUgaW5jbHVkZWQgaW4gdGhlIGtlcm5lbAorICovCisKK2V4dGVybiBjb25zdCBzcnRwX2F1dGhf
dHlwZV90IHNydHBfbnVsbF9hdXRoOworZXh0ZXJuIGNvbnN0IHNydHBfYXV0aF90eXBlX3Qgc3J0
cF9obWFjOworCisvKgorICogb3RoZXIgZ2VuZXJpYyBkZWJ1ZyBtb2R1bGVzIHRoYXQgY2FuIGJl
IGluY2x1ZGVkIGluIHRoZSBrZXJuZWwKKyAqLworCitleHRlcm4gc3J0cF9kZWJ1Z19tb2R1bGVf
dCBzcnRwX21vZF9hdXRoOworZXh0ZXJuIHNydHBfZGVidWdfbW9kdWxlX3Qgc3J0cF9tb2RfY2lw
aGVyOworZXh0ZXJuIHNydHBfZGVidWdfbW9kdWxlX3Qgc3J0cF9tb2Rfc3RhdDsKK2V4dGVybiBz
cnRwX2RlYnVnX21vZHVsZV90IHNydHBfbW9kX2FsbG9jOworCisvKiBkZWJ1ZyBtb2R1bGVzIGZv
ciBjaXBoZXIgdHlwZXMgKi8KK2V4dGVybiBzcnRwX2RlYnVnX21vZHVsZV90IHNydHBfbW9kX2Fl
c19pY207CisjaWZkZWYgT1BFTlNTTAorZXh0ZXJuIHNydHBfZGVidWdfbW9kdWxlX3Qgc3J0cF9t
b2RfYWVzX2djbTsKKyNlbmRpZgorCisvKiBkZWJ1ZyBtb2R1bGVzIGZvciBhdXRoIHR5cGVzICov
CitleHRlcm4gc3J0cF9kZWJ1Z19tb2R1bGVfdCBzcnRwX21vZF9obWFjOworCisjZW5kaWYKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlic3J0cC9jcnlwdG8vaW5jbHVkZS9jcnlwdG9fa2VybmVsLmggYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2luY2x1ZGUvY3J5
cHRvX2tlcm5lbC5oCmluZGV4IDFhYmYzODNmNWE0ZjNkNGUxNWUzN2IyYzJhMTZmYzRkMDZjYzE4
MDEuLjFmOGRmYTc3MTI4ZWZmYTAxZGMxYzcxN2M2N2Q3MDNlODcxMDgxNjEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9j
cnlwdG8vaW5jbHVkZS9jcnlwdG9fa2VybmVsLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9pbmNsdWRlL2NyeXB0b19r
ZXJuZWwuaApAQCAtNDIsNyArNDIsNiBAQAogICoKICAqLwogCi0KICNpZm5kZWYgQ1JZUFRPX0tF
Uk5FTAogI2RlZmluZSBDUllQVE9fS0VSTkVMCiAKQEAgLTcyLDcgKzcxLDcgQEAgdHlwZWRlZiBl
bnVtIHsKICAqLwogdHlwZWRlZiBzdHJ1Y3Qgc3J0cF9rZXJuZWxfY2lwaGVyX3R5cGUgewogICAg
IHNydHBfY2lwaGVyX3R5cGVfaWRfdCBpZDsKLSAgICBjb25zdCBzcnRwX2NpcGhlcl90eXBlX3Qg
ICAgKmNpcGhlcl90eXBlOworICAgIGNvbnN0IHNydHBfY2lwaGVyX3R5cGVfdCAqY2lwaGVyX3R5
cGU7CiAgICAgc3RydWN0IHNydHBfa2VybmVsX2NpcGhlcl90eXBlICpuZXh0OwogfSBzcnRwX2tl
cm5lbF9jaXBoZXJfdHlwZV90OwogCkBAIC04MSw3ICs4MCw3IEBAIHR5cGVkZWYgc3RydWN0IHNy
dHBfa2VybmVsX2NpcGhlcl90eXBlIHsKICAqLwogdHlwZWRlZiBzdHJ1Y3Qgc3J0cF9rZXJuZWxf
YXV0aF90eXBlIHsKICAgICBzcnRwX2F1dGhfdHlwZV9pZF90IGlkOwotICAgIGNvbnN0IHNydHBf
YXV0aF90eXBlX3QgICAgKmF1dGhfdHlwZTsKKyAgICBjb25zdCBzcnRwX2F1dGhfdHlwZV90ICph
dXRoX3R5cGU7CiAgICAgc3RydWN0IHNydHBfa2VybmVsX2F1dGhfdHlwZSAqbmV4dDsKIH0gc3J0
cF9rZXJuZWxfYXV0aF90eXBlX3Q7CiAKQEAgLTkzLDcgKzkyLDYgQEAgdHlwZWRlZiBzdHJ1Y3Qg
c3J0cF9rZXJuZWxfZGVidWdfbW9kdWxlIHsKICAgICBzdHJ1Y3Qgc3J0cF9rZXJuZWxfZGVidWdf
bW9kdWxlICpuZXh0OwogfSBzcnRwX2tlcm5lbF9kZWJ1Z19tb2R1bGVfdDsKIAotCiAvKgogICog
Y3J5cHRvX2tlcm5lbF90IGlzIHRoZSBkYXRhIHN0cnVjdHVyZSBmb3IgdGhlIGNyeXB0byBrZXJu
ZWwKICAqCkBAIC0xMDEsMTggKzk5LDE3IEBAIHR5cGVkZWYgc3RydWN0IHNydHBfa2VybmVsX2Rl
YnVnX21vZHVsZSB7CiAgKiBhIGdsb2JhbCB2YXJpYWJsZSBkZWZpbmVkIGluIGNyeXB0b19rZXJu
ZWwuYwogICovCiB0eXBlZGVmIHN0cnVjdCB7Ci0gICAgc3J0cF9jcnlwdG9fa2VybmVsX3N0YXRl
X3Qgc3RhdGU7ICAgICAgICAgICAgICAvKiBjdXJyZW50IHN0YXRlIG9mIGtlcm5lbCAgICAgKi8K
LSAgICBzcnRwX2tlcm5lbF9jaXBoZXJfdHlwZV90ICpjaXBoZXJfdHlwZV9saXN0OyAgIC8qIGxp
c3Qgb2YgYWxsIGNpcGhlciB0eXBlcyAgICAqLwotICAgIHNydHBfa2VybmVsX2F1dGhfdHlwZV90
ICAgKmF1dGhfdHlwZV9saXN0OyAgICAgLyogbGlzdCBvZiBhbGwgYXV0aCBmdW5jIHR5cGVzICov
Ci0gICAgc3J0cF9rZXJuZWxfZGVidWdfbW9kdWxlX3QgKmRlYnVnX21vZHVsZV9saXN0OyAvKiBs
aXN0IG9mIGFsbCBkZWJ1ZyBtb2R1bGVzICAgKi8KKyAgICBzcnRwX2NyeXB0b19rZXJuZWxfc3Rh
dGVfdCBzdGF0ZTsgLyogY3VycmVudCBzdGF0ZSBvZiBrZXJuZWwgICAgICovCisgICAgc3J0cF9r
ZXJuZWxfY2lwaGVyX3R5cGVfdCAqY2lwaGVyX3R5cGVfbGlzdDsgLyogbGlzdCBvZiBhbGwgY2lw
aGVyIHR5cGVzICovCisgICAgc3J0cF9rZXJuZWxfYXV0aF90eXBlX3QgKmF1dGhfdHlwZV9saXN0
OyAvKiBsaXN0IG9mIGFsbCBhdXRoIGZ1bmMgdHlwZXMgKi8KKyAgICBzcnRwX2tlcm5lbF9kZWJ1
Z19tb2R1bGVfdAorICAgICAgICAqZGVidWdfbW9kdWxlX2xpc3Q7IC8qIGxpc3Qgb2YgYWxsIGRl
YnVnIG1vZHVsZXMgICAqLwogfSBzcnRwX2NyeXB0b19rZXJuZWxfdDsKIAotCiAvKgogICogc3J0
cF9jcnlwdG9fa2VybmVsX3QgZXh0ZXJuYWwgYXBpCiAgKi8KIAotCiAvKgogICogVGhlIGZ1bmN0
aW9uIHNydHBfY3J5cHRvX2tlcm5lbF9pbml0KCkgaW5pdGlhbGl6ZWQgdGhlIGNyeXB0byBrZXJu
ZWwgYW5kCiAgKiBydW5zIHRoZSBzZWxmLXRlc3Qgb3BlcmF0aW9ucyBvbiB0aGUgcmFuZG9tIG51
bWJlciBnZW5lcmF0b3JzIGFuZApAQCAtMTI2LDcgKzEyMyw2IEBAIHR5cGVkZWYgc3RydWN0IHsK
ICAqLwogc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fa2VybmVsX2luaXQodm9pZCk7CiAK
LQogLyoKICAqIFRoZSBmdW5jdGlvbiBzcnRwX2NyeXB0b19rZXJuZWxfc2h1dGRvd24oKSBkZS1p
bml0aWFsaXplcyB0aGUKICAqIGNyeXB0b19rZXJuZWwsIHplcm9pemVzIGtleXMgYW5kIG90aGVy
IGNyeXB0b2dyYXBoaWMgbWF0ZXJpYWwsIGFuZApAQCAtMTUwLDcgKzE0Niw2IEBAIHNydHBfZXJy
X3N0YXR1c190IHNydHBfY3J5cHRvX2tlcm5lbF9zaHV0ZG93bih2b2lkKTsKICAqLwogc3J0cF9l
cnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fa2VybmVsX3N0YXR1cyh2b2lkKTsKIAotCiAvKgogICog
c3J0cF9jcnlwdG9fa2VybmVsX2xpc3RfZGVidWdfbW9kdWxlcygpIG91dHB1dHMgYSBsaXN0IG9m
IGRlYnVnZ2luZyBtb2R1bGVzCiAgKgpAQCAtMTYxLDExICsxNTYsMTUgQEAgc3J0cF9lcnJfc3Rh
dHVzX3Qgc3J0cF9jcnlwdG9fa2VybmVsX2xpc3RfZGVidWdfbW9kdWxlcyh2b2lkKTsKICAqIHNy
dHBfY3J5cHRvX2tlcm5lbF9sb2FkX2NpcGhlcl90eXBlKCkKICAqCiAgKi8KLXNydHBfZXJyX3N0
YXR1c190IHNydHBfY3J5cHRvX2tlcm5lbF9sb2FkX2NpcGhlcl90eXBlKGNvbnN0IHNydHBfY2lw
aGVyX3R5cGVfdCAqY3QsIHNydHBfY2lwaGVyX3R5cGVfaWRfdCBpZCk7CitzcnRwX2Vycl9zdGF0
dXNfdCBzcnRwX2NyeXB0b19rZXJuZWxfbG9hZF9jaXBoZXJfdHlwZSgKKyAgICBjb25zdCBzcnRw
X2NpcGhlcl90eXBlX3QgKmN0LAorICAgIHNydHBfY2lwaGVyX3R5cGVfaWRfdCBpZCk7CiAKLXNy
dHBfZXJyX3N0YXR1c190IHNydHBfY3J5cHRvX2tlcm5lbF9sb2FkX2F1dGhfdHlwZShjb25zdCBz
cnRwX2F1dGhfdHlwZV90ICpjdCwgc3J0cF9hdXRoX3R5cGVfaWRfdCBpZCk7CitzcnRwX2Vycl9z
dGF0dXNfdCBzcnRwX2NyeXB0b19rZXJuZWxfbG9hZF9hdXRoX3R5cGUoY29uc3Qgc3J0cF9hdXRo
X3R5cGVfdCAqY3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgc3J0cF9hdXRoX3R5cGVfaWRfdCBpZCk7CiAKLXNydHBfZXJyX3N0YXR1c190IHNy
dHBfY3J5cHRvX2tlcm5lbF9sb2FkX2RlYnVnX21vZHVsZShzcnRwX2RlYnVnX21vZHVsZV90ICpu
ZXdfZG0pOworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fa2VybmVsX2xvYWRfZGVidWdf
bW9kdWxlKAorICAgIHNydHBfZGVidWdfbW9kdWxlX3QgKm5ld19kbSk7CiAKIC8qCiAgKiBzcnRw
X2NyeXB0b19rZXJuZWxfYWxsb2NfY2lwaGVyKGlkLCBjcCwga2V5X2xlbik7CkBAIC0xNzcsNyAr
MTc2LDEwIEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfY3J5cHRvX2tlcm5lbF9sb2FkX2RlYnVn
X21vZHVsZShzcnRwX2RlYnVnX21vZHVsZV90ICpuZXdfCiAgKiAgICBzcnRwX2Vycl9zdGF0dXNf
YWxsb2NfZmFpbCAgIGFuIGFsbG9jYXRpb24gZmFpbHVyZSBvY2N1cmVkCiAgKiAgICBzcnRwX2Vy
cl9zdGF0dXNfZmFpbCAgICAgICAgIGNvdWxkbid0IGZpbmQgY2lwaGVyIHdpdGggaWRlbnRpZmll
ciAnaWQnCiAgKi8KLXNydHBfZXJyX3N0YXR1c190IHNydHBfY3J5cHRvX2tlcm5lbF9hbGxvY19j
aXBoZXIoc3J0cF9jaXBoZXJfdHlwZV9pZF90IGlkLCBzcnRwX2NpcGhlcl9wb2ludGVyX3QgKmNw
LCBpbnQga2V5X2xlbiwgaW50IHRhZ19sZW4pOworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcnlw
dG9fa2VybmVsX2FsbG9jX2NpcGhlcihzcnRwX2NpcGhlcl90eXBlX2lkX3QgaWQsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfY2lwaGVyX3Bv
aW50ZXJfdCAqY3AsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGludCBrZXlfbGVuLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBpbnQgdGFnX2xlbik7CiAKIC8qCiAgKiBzcnRwX2NyeXB0b19rZXJuZWxf
YWxsb2NfYXV0aChpZCwgYXAsIGtleV9sZW4sIHRhZ19sZW4pOwpAQCAtMTkwLDggKzE5MiwxMCBA
QCBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NyeXB0b19rZXJuZWxfYWxsb2NfY2lwaGVyKHNydHBf
Y2lwaGVyX3R5cGVfaWRfdCBpZCwgc3J0cAogICogICAgc3J0cF9lcnJfc3RhdHVzX2FsbG9jX2Zh
aWwgICBhbiBhbGxvY2F0aW9uIGZhaWx1cmUgb2NjdXJlZAogICogICAgc3J0cF9lcnJfc3RhdHVz
X2ZhaWwgICAgICAgICBjb3VsZG4ndCBmaW5kIGF1dGggd2l0aCBpZGVudGlmaWVyICdpZCcKICAq
Lwotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fa2VybmVsX2FsbG9jX2F1dGgoc3J0cF9h
dXRoX3R5cGVfaWRfdCBpZCwgc3J0cF9hdXRoX3BvaW50ZXJfdCAqYXAsIGludCBrZXlfbGVuLCBp
bnQgdGFnX2xlbik7Ci0KK3NydHBfZXJyX3N0YXR1c190IHNydHBfY3J5cHRvX2tlcm5lbF9hbGxv
Y19hdXRoKHNydHBfYXV0aF90eXBlX2lkX3QgaWQsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBzcnRwX2F1dGhfcG9pbnRlcl90ICphcCwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBrZXlfbGVuLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IHRhZ19sZW4p
OwogCiAvKgogICogc3J0cF9jcnlwdG9fa2VybmVsX3NldF9kZWJ1Z19tb2R1bGUobW9kX25hbWUs
IHYpCkBAIC0yMDEsNyArMjA1LDggQEAgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fa2Vy
bmVsX2FsbG9jX2F1dGgoc3J0cF9hdXRoX3R5cGVfaWRfdCBpZCwgc3J0cF9hdXQKICAqCiAgKiBy
ZXR1cm5zIHNydHBfZXJyX3N0YXR1c19vayBvbiBzdWNjZXNzLCBzcnRwX2Vycl9zdGF0dXNfZmFp
bCBvdGhlcndpc2UKICAqLwotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fa2VybmVsX3Nl
dF9kZWJ1Z19tb2R1bGUoY29uc3QgY2hhciAqbW9kX25hbWUsIGludCB2KTsKK3NydHBfZXJyX3N0
YXR1c190IHNydHBfY3J5cHRvX2tlcm5lbF9zZXRfZGVidWdfbW9kdWxlKGNvbnN0IGNoYXIgKm1v
ZF9uYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgaW50IHYpOwogCiAjaWZkZWYgX19jcGx1c3BsdXMKIH0KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8v
aW5jbHVkZS9jcnlwdG9fdHlwZXMuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vaW5jbHVkZS9jcnlwdG9fdHlwZXMuaAppbmRl
eCAzMjlkNjBkYmQxZDQ3ZTI1YTlmNmM0OGZjYTJkNTY2MmZlMWFjZDc2Li43ZmQzMTc4YjBiMDRk
MmQ1NjAxMTA2NzNkMjMxMzhkZDQ5ZGEwOTM2IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2luY2x1ZGUvY3J5
cHRvX3R5cGVzLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9pbmNsdWRlL2NyeXB0b190eXBlcy5oCkBAIC03LDI2ICs3
LDI2IEBACiAgKiBDaXNjbyBTeXN0ZW1zLCBJbmMuCiAgKi8KIC8qCi0gKgkKKyAqCiAgKiBDb3B5
cmlnaHQoYykgMjAwMS0yMDE3IENpc2NvIFN5c3RlbXMsIEluYy4KICAqIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCi0gKiAKKyAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQg
YmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1p
dHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwogICogYXJlIG1ldDoK
LSAqIAorICoKICAqICAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWlu
IHRoZSBhYm92ZSBjb3B5cmlnaHQKICAqICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogCisgKgogICogICBSZWRpc3RyaWJ1
dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCiAgKiAgIGNvcHly
aWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCiAg
KiAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZAogICogICB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKiAKKyAqCiAgKiAgIE5l
aXRoZXIgdGhlIG5hbWUgb2YgdGhlIENpc2NvIFN5c3RlbXMsIEluYy4gbm9yIHRoZSBuYW1lcyBv
ZiBpdHMKICAqICAgY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90
ZSBwcm9kdWN0cyBkZXJpdmVkCiAgKiAgIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNp
ZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLSAqIAorICoKICAqIFRISVMgU09GVFdBUkUg
SVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKICAq
ICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5H
LCBCVVQgTk9UCiAgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNI
QU5UQUJJTElUWSBBTkQgRklUTkVTUwpAQCAtNDgsNjIgKzQ4LDYyIEBACiAvKgogICogVGhlIG51
bGwgY2lwaGVyIHBlcmZvcm1zIG5vIGVuY3J5cHRpb24uCiAgKgotICogVGhlIFNSVFBfTlVMTF9D
SVBIRVIgbGVhdmVzIGl0cyBpbnB1dHMgdW5hbHRlcmVkLCBkdXJpbmcgYm90aCB0aGUgCisgKiBU
aGUgU1JUUF9OVUxMX0NJUEhFUiBsZWF2ZXMgaXRzIGlucHV0cyB1bmFsdGVyZWQsIGR1cmluZyBi
b3RoIHRoZQogICogZW5jcnlwdGlvbiBhbmQgZGVjcnlwdGlvbiBvcGVyYXRpb25zLiAgVGhpcyBj
aXBoZXIgY2FuIGJlIGNob3NlbgogICogdG8gaW5kaWNhdGUgdGhhdCBubyBlbmNyeXB0aW9uIGlz
IHRvIGJlIHBlcmZvcm1lZC4KICAqLwotI2RlZmluZSBTUlRQX05VTExfQ0lQSEVSICAgICAgICAw
ICAgICAgICAgICAgCisjZGVmaW5lIFNSVFBfTlVMTF9DSVBIRVIgMAogCi0vKiAKKy8qCiAgKiBB
RVMtMTI4IEludGVnZXIgQ291bnRlciBNb2RlIChBRVMgSUNNKQogICoKICAqIEFFUy0xMjggSUNN
IGlzIHRoZSB2YXJpYW50IG9mIGNvdW50ZXIgbW9kZSB0aGF0IGlzIHVzZWQgYnkKICAqIFNlY3Vy
ZSBSVFAuICBUaGlzIGNpcGhlciB1c2VzIGEgMTYtb2N0ZXQga2V5IGNvbmNhdGVuYXRlZCB3aXRo
IGEKICAqIDE0LW9jdGV0IG9mZnNldCAob3Igc2FsdCkgdmFsdWUuCiAgKi8KLSNkZWZpbmUgU1JU
UF9BRVNfSUNNXzEyOCAgICAgICAgMQorI2RlZmluZSBTUlRQX0FFU19JQ01fMTI4IDEKIAotLyog
CisvKgogICogQUVTLTE5MiBJbnRlZ2VyIENvdW50ZXIgTW9kZSAoQUVTIElDTSkKICAqCiAgKiBB
RVMtMTI4IElDTSBpcyB0aGUgdmFyaWFudCBvZiBjb3VudGVyIG1vZGUgdGhhdCBpcyB1c2VkIGJ5
CiAgKiBTZWN1cmUgUlRQLiAgVGhpcyBjaXBoZXIgdXNlcyBhIDI0LW9jdGV0IGtleSBjb25jYXRl
bmF0ZWQgd2l0aCBhCiAgKiAxNC1vY3RldCBvZmZzZXQgKG9yIHNhbHQpIHZhbHVlLgogICovCi0j
ZGVmaW5lIFNSVFBfQUVTX0lDTV8xOTIgICAgICAgIDQKKyNkZWZpbmUgU1JUUF9BRVNfSUNNXzE5
MiA0CiAKLS8qIAorLyoKICAqIEFFUy0yNTYgSW50ZWdlciBDb3VudGVyIE1vZGUgKEFFUyBJQ00p
CiAgKgogICogQUVTLTEyOCBJQ00gaXMgdGhlIHZhcmlhbnQgb2YgY291bnRlciBtb2RlIHRoYXQg
aXMgdXNlZCBieQogICogU2VjdXJlIFJUUC4gIFRoaXMgY2lwaGVyIHVzZXMgYSAzMi1vY3RldCBr
ZXkgY29uY2F0ZW5hdGVkIHdpdGggYQogICogMTQtb2N0ZXQgb2Zmc2V0IChvciBzYWx0KSB2YWx1
ZS4KICAqLwotI2RlZmluZSBTUlRQX0FFU19JQ01fMjU2ICAgICAgICA1CisjZGVmaW5lIFNSVFBf
QUVTX0lDTV8yNTYgNQogCi0vKiAKLSAqIEFFUy0xMjhfR0NNIEdhbG9pcyBDb3VudGVyIE1vZGUg
KEFFUyBHQ00pICAgICAgICAgICAgIAorLyoKKyAqIEFFUy0xMjhfR0NNIEdhbG9pcyBDb3VudGVy
IE1vZGUgKEFFUyBHQ00pCiAgKgotICogQUVTLTEyOCBHQ00gaXMgdGhlIHZhcmlhbnQgb2YgZ2Fs
b2lzIGNvdW50ZXIgbW9kZSB0aGF0IGlzIHVzZWQgYnkgCisgKiBBRVMtMTI4IEdDTSBpcyB0aGUg
dmFyaWFudCBvZiBnYWxvaXMgY291bnRlciBtb2RlIHRoYXQgaXMgdXNlZCBieQogICogU2VjdXJl
IFJUUC4gIFRoaXMgY2lwaGVyIHVzZXMgYSAxNi1vY3RldCBrZXkuCiAgKi8KLSNkZWZpbmUgU1JU
UF9BRVNfR0NNXzEyOCAgICAgICAgNgorI2RlZmluZSBTUlRQX0FFU19HQ01fMTI4IDYKIAotLyog
Ci0gKiBBRVMtMjU2X0dDTSBHYWxvaXMgQ291bnRlciBNb2RlIChBRVMgR0NNKSAgICAgICAgICAg
ICAKKy8qCisgKiBBRVMtMjU2X0dDTSBHYWxvaXMgQ291bnRlciBNb2RlIChBRVMgR0NNKQogICoK
LSAqIEFFUy0yNTYgR0NNIGlzIHRoZSB2YXJpYW50IG9mIGdhbG9pcyBjb3VudGVyIG1vZGUgdGhh
dCBpcyB1c2VkIGJ5IAorICogQUVTLTI1NiBHQ00gaXMgdGhlIHZhcmlhbnQgb2YgZ2Fsb2lzIGNv
dW50ZXIgbW9kZSB0aGF0IGlzIHVzZWQgYnkKICAqIFNlY3VyZSBSVFAuICBUaGlzIGNpcGhlciB1
c2VzIGEgMzItb2N0ZXQga2V5LgogICovCi0jZGVmaW5lIFNSVFBfQUVTX0dDTV8yNTYgICAgICAg
IDcKKyNkZWZpbmUgU1JUUF9BRVNfR0NNXzI1NiA3CiAKIC8qCiAgKiBUaGUgbnVsbCBhdXRoZW50
aWNhdGlvbiBmdW5jdGlvbiBwZXJmb3JtcyBubyBhdXRoZW50aWNhdGlvbi4KICAqCiAgKiBUaGUg
TlVMTF9BVVRIIGZ1bmN0aW9uIGRvZXMgbm90aGluZywgYW5kIGNhbiBiZSBzZWxlY3RlZCB0byBp
bmRpY2F0ZQogICogdGhhdCBhdXRoZW50aWNhdGlvbiBzaG91bGQgbm90IGJlIHBlcmZvcm1lZC4K
LSAqLyAKLSNkZWZpbmUgU1JUUF9OVUxMX0FVVEggICAgICAgICAgMCAgICAgICAgICAgCisgKi8K
KyNkZWZpbmUgU1JUUF9OVUxMX0FVVEggMAogCiAvKgogICogSE1BQy1TSEExCkBAIC0xMTEsNiAr
MTExLDYgQEAKICAqIFNSVFBfSE1BQ19TSEExIGltcGxlbWVudHMgdGhlIEhhc2gtYmFzZWQgTUFD
IHVzaW5nIHRoZSBOSVNUIFNlY3VyZQogICogSGFzaCBBbGdvcml0aG0gdmVyc2lvbiAxIChTSEEx
KS4KICAqLwotI2RlZmluZSBTUlRQX0hNQUNfU0hBMSAgICAgICAgICAzICAgICAgICAgIAorI2Rl
ZmluZSBTUlRQX0hNQUNfU0hBMSAzCiAKLSNlbmRpZiAgLyogU1JUUF9DUllQVE9fVFlQRVNfSCAq
LworI2VuZGlmIC8qIFNSVFBfQ1JZUFRPX1RZUEVTX0ggKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vaW5j
bHVkZS9kYXRhdHlwZXMuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlic3J0cC9jcnlwdG8vaW5jbHVkZS9kYXRhdHlwZXMuaAppbmRleCBkMjBiOWU2
ZjhjYWZhMmZlMjZlMjI5YmRmODg1ODljZTI1MjZmYWIwLi4xODJjY2EyNWI5ZDFiZjc2MDE5ODYx
ZTU0MGI1M2U5ZTNmOWMzZmJkIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2luY2x1ZGUvZGF0YXR5cGVzLmgK
KysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJz
cnRwL2NyeXB0by9pbmNsdWRlL2RhdGF0eXBlcy5oCkBAIC0xLDYgKzEsNiBAQAogLyoKICAqIGRh
dGF0eXBlcy5oCi0gKiAKKyAqCiAgKiBkYXRhIHR5cGVzIGZvciBiaXQgdmVjdG9ycyBhbmQgZmlu
aXRlIGZpZWxkcwogICoKICAqIERhdmlkIEEuIE1jR3JldwpAQCAtOCwyNiArOCwyNiBAQAogICov
CiAKIC8qCi0gKgkKKyAqCiAgKiBDb3B5cmlnaHQgKGMpIDIwMDEtMjAxNywgQ2lzY28gU3lzdGVt
cywgSW5jLgogICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqIAorICoKICAqIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAog
ICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zCiAgKiBhcmUgbWV0OgotICogCisgKgogICogICBSZWRpc3RyaWJ1dGlvbnMg
b2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAogICogICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
Ci0gKiAKKyAqCiAgKiAgIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUKICAqICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKICAqICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRh
dGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkCiAgKiAgIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KLSAqIAorICoKICAqICAgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgQ2lzY28gU3lz
dGVtcywgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwogICogICBjb250cmlidXRvcnMgbWF5IGJl
IHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQKICAqICAgZnJvbSB0
aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgot
ICogCisgKgogICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhP
TERFUlMgQU5EIENPTlRSSUJVVE9SUwogICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1Q
TElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKICAqIExJTUlURUQgVE8sIFRIRSBJ
TVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCkBAIC00Mywx
MSArNDMsMTAgQEAKICAqCiAgKi8KIAotCiAjaWZuZGVmIERBVEFUWVBFU19ICiAjZGVmaW5lIERB
VEFUWVBFU19ICiAKLSNpbmNsdWRlICJpbnRlZ2Vycy5oIiAgICAgICAgICAgLyogZGVmaW5pdGlv
bnMgb2YgdWludDMyX3QsIGV0IGNldGVyYSAgICovCisjaW5jbHVkZSAiaW50ZWdlcnMuaCIgLyog
ZGVmaW5pdGlvbnMgb2YgdWludDMyX3QsIGV0IGNldGVyYSAgICovCiAjaW5jbHVkZSAiYWxsb2Mu
aCIKIAogI2luY2x1ZGUgPHN0ZGFyZy5oPgpAQCAtNTYsNDIgKzU1LDQzIEBACiAjaW5jbHVkZSA8
c3RyaW5nLmg+CiAjaW5jbHVkZSA8dGltZS5oPgogI2lmZGVmIEhBVkVfTkVUSU5FVF9JTl9ICi0j
IGluY2x1ZGUgPG5ldGluZXQvaW4uaD4KKyNpbmNsdWRlIDxuZXRpbmV0L2luLmg+CiAjZWxpZiBk
ZWZpbmVkIEhBVkVfV0lOU09DSzJfSAotIyBpbmNsdWRlIDx3aW5zb2NrMi5oPgorI2luY2x1ZGUg
PHdpbnNvY2syLmg+CisjZWxzZQorI2Vycm9yICJQbGF0Zm9ybSBub3QgcmVjb2duaXplZCIKICNl
bmRpZgogCiAjaWZkZWYgX19jcGx1c3BsdXMKIGV4dGVybiAiQyIgewogI2VuZGlmCiAKLQogLyog
aWYgREFUQVRZUEVTX1VTRV9NQUNST1MgaXMgZGVmaW5lZCwgdGhlbiBsaXR0bGUgZnVuY3Rpb25z
IGFyZSBtYWNyb3MgKi8KLSNkZWZpbmUgREFUQVRZUEVTX1VTRV9NQUNST1MgIAorI2RlZmluZSBE
QVRBVFlQRVNfVVNFX01BQ1JPUwogCiB0eXBlZGVmIHVuaW9uIHsKLSAgdWludDhfdCAgdjhbMl07
Ci0gIHVpbnQxNl90IHZhbHVlOworICAgIHVpbnQ4X3QgdjhbMl07CisgICAgdWludDE2X3QgdmFs
dWU7CiB9IHYxNl90OwogCiB0eXBlZGVmIHVuaW9uIHsKLSAgdWludDhfdCAgdjhbNF07Ci0gIHVp
bnQxNl90IHYxNlsyXTsKLSAgdWludDMyX3QgdmFsdWU7CisgICAgdWludDhfdCB2OFs0XTsKKyAg
ICB1aW50MTZfdCB2MTZbMl07CisgICAgdWludDMyX3QgdmFsdWU7CiB9IHYzMl90OwogCiB0eXBl
ZGVmIHVuaW9uIHsKLSAgdWludDhfdCAgdjhbOF07Ci0gIHVpbnQxNl90IHYxNls0XTsKLSAgdWlu
dDMyX3QgdjMyWzJdOwotICB1aW50NjRfdCB2YWx1ZTsKKyAgICB1aW50OF90IHY4WzhdOworICAg
IHVpbnQxNl90IHYxNls0XTsKKyAgICB1aW50MzJfdCB2MzJbMl07CisgICAgdWludDY0X3QgdmFs
dWU7CiB9IHY2NF90OwogCiB0eXBlZGVmIHVuaW9uIHsKLSAgdWludDhfdCAgdjhbMTZdOwotICB1
aW50MTZfdCB2MTZbOF07Ci0gIHVpbnQzMl90IHYzMls0XTsKLSAgdWludDY0X3QgdjY0WzJdOwor
ICAgIHVpbnQ4X3QgdjhbMTZdOworICAgIHVpbnQxNl90IHYxNls4XTsKKyAgICB1aW50MzJfdCB2
MzJbNF07CisgICAgdWludDY0X3QgdjY0WzJdOwogfSB2MTI4X3Q7CiAKIHR5cGVkZWYgdW5pb24g
ewpAQCAtMTAxLDExOCArMTAxLDgyIEBAIHR5cGVkZWYgdW5pb24gewogICAgIHVpbnQ2NF90IHY2
NFs0XTsKIH0gdjI1Nl90OwogCi0KIC8qIHNvbWUgdXNlZnVsIGFuZCBzaW1wbGUgbWF0aCBmdW5j
dGlvbnMgKi8KIAotI2RlZmluZSBwb3dfMihYKSAoICh1bnNpZ25lZCBpbnQpMSA8PCAoWCkgKSAg
IC8qIDJeWCAgICAgKi8KLQotI2RlZmluZSBwb3dfbWludXNfb25lKFgpICggKFgpID8gLTEgOiAx
ICkgICAgICAvKiAoLTEpXlggICovCisjZGVmaW5lIHBvd18yKFgpICgodW5zaWduZWQgaW50KTEg
PDwgKFgpKSAvKiAyXlggICAgICovCiAKKyNkZWZpbmUgcG93X21pbnVzX29uZShYKSAoKFgpID8g
LTEgOiAxKSAvKiAoLTEpXlggICovCiAKIC8qCiAgKiBvY3RldF9nZXRfd2VpZ2h0KHgpIHJldHVy
bnMgdGhlIGhhbW1pbmcgd2VpZ2h0IChudW1iZXIgb2YgYml0cyBlcXVhbCB0bwogICogb25lKSBp
biB0aGUgb2N0ZXQgeAogICovCiAKLWludAotb2N0ZXRfZ2V0X3dlaWdodCh1aW50OF90IG9jdGV0
KTsKK2ludCBvY3RldF9nZXRfd2VpZ2h0KHVpbnQ4X3Qgb2N0ZXQpOwogCiAjZGVmaW5lIE1BWF9Q
UklOVF9TVFJJTkdfTEVOIDEwMjQKIAotY2hhciAqCi1zcnRwX29jdGV0X3N0cmluZ19oZXhfc3Ry
aW5nKGNvbnN0IHZvaWQgKnN0ciwgaW50IGxlbmd0aCk7CitjaGFyICpzcnRwX29jdGV0X3N0cmlu
Z19oZXhfc3RyaW5nKGNvbnN0IHZvaWQgKnN0ciwgaW50IGxlbmd0aCk7CiAKLWNoYXIgKgotdjEy
OF9iaXRfc3RyaW5nKHYxMjhfdCAqeCk7CitjaGFyICp2MTI4X2JpdF9zdHJpbmcodjEyOF90ICp4
KTsKIAotY2hhciAqCi12MTI4X2hleF9zdHJpbmcodjEyOF90ICp4KTsKK2NoYXIgKnYxMjhfaGV4
X3N0cmluZyh2MTI4X3QgKngpOwogCi12b2lkCi12MTI4X2NvcHlfb2N0ZXRfc3RyaW5nKHYxMjhf
dCAqeCwgY29uc3QgdWludDhfdCBzWzE2XSk7Cit2b2lkIHYxMjhfY29weV9vY3RldF9zdHJpbmco
djEyOF90ICp4LCBjb25zdCB1aW50OF90IHNbMTZdKTsKIAotdm9pZAotdjEyOF9sZWZ0X3NoaWZ0
KHYxMjhfdCAqeCwgaW50IHNoaWZ0X2luZGV4KTsKK3ZvaWQgdjEyOF9sZWZ0X3NoaWZ0KHYxMjhf
dCAqeCwgaW50IHNoaWZ0X2luZGV4KTsKIAotdm9pZAotdjEyOF9yaWdodF9zaGlmdCh2MTI4X3Qg
KngsIGludCBzaGlmdF9pbmRleCk7Cit2b2lkIHYxMjhfcmlnaHRfc2hpZnQodjEyOF90ICp4LCBp
bnQgc2hpZnRfaW5kZXgpOwogCiAvKgogICogdGhlIGZvbGxvd2luZyBtYWNyb3MgZGVmaW5lIHRo
ZSBkYXRhIG1hbmlwdWxhdGlvbiBmdW5jdGlvbnMKLSAqIAorICoKICAqIElmIERBVEFUWVBFU19V
U0VfTUFDUk9TIGlzIGRlZmluZWQsIHRoZW4gdGhlc2UgbWFjcm9zIGFyZSB1c2VkCiAgKiBkaXJl
Y3RseSAoYW5kIGZ1bmN0aW9uIGNhbGwgb3ZlcmhlYWQgaXMgYXZvaWRlZCkuICBPdGhlcndpc2Us
CiAgKiB0aGUgbWFjcm9zIGFyZSB1c2VkIHRocm91Z2ggdGhlIGZ1bmN0aW9ucyBkZWZpbmVkIGlu
IGRhdGF0eXBlcy5jCiAgKiAoYW5kIHRoZSBjb21waWxlciBwcm92aWRlcyBiZXR0ZXIgd2Fybmlu
Z3MpLgogICovCiAKLSNkZWZpbmUgX3YxMjhfc2V0X3RvX3plcm8oeCkgICAgIFwKLSggICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgXAotICAoeCktPnYzMlswXSA9IDAsICAgICAgICAgICAg
ICBcCi0gICh4KS0+djMyWzFdID0gMCwgICAgICAgICAgICAgIFwKLSAgKHgpLT52MzJbMl0gPSAw
LCAgICAgICAgICAgICAgXAotICAoeCktPnYzMlszXSA9IDAgICAgICAgICAgICAgICBcCi0pCi0K
LSNkZWZpbmUgX3YxMjhfY29weSh4LCB5KSAgICAgICAgICBcCi0oICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBcCi0gICh4KS0+djMyWzBdID0gKHkpLT52MzJbMF0sICAgICBcCi0gICh4
KS0+djMyWzFdID0gKHkpLT52MzJbMV0sICAgICBcCi0gICh4KS0+djMyWzJdID0gKHkpLT52MzJb
Ml0sICAgICBcCi0gICh4KS0+djMyWzNdID0gKHkpLT52MzJbM10gICAgICBcCi0pCi0KLSNkZWZp
bmUgX3YxMjhfeG9yKHosIHgsIHkpICAgICAgICAgICAgICAgICAgICAgICBcCi0oICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0gICAoeiktPnYzMlswXSA9
ICh4KS0+djMyWzBdIF4gKHkpLT52MzJbMF0sICAgICBcCi0gICAoeiktPnYzMlsxXSA9ICh4KS0+
djMyWzFdIF4gKHkpLT52MzJbMV0sICAgICBcCi0gICAoeiktPnYzMlsyXSA9ICh4KS0+djMyWzJd
IF4gKHkpLT52MzJbMl0sICAgICBcCi0gICAoeiktPnYzMlszXSA9ICh4KS0+djMyWzNdIF4gKHkp
LT52MzJbM10gICAgICBcCi0pCi0KLSNkZWZpbmUgX3YxMjhfYW5kKHosIHgsIHkpICAgICAgICAg
ICAgICAgICAgICAgICBcCi0oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBcCi0gICAoeiktPnYzMlswXSA9ICh4KS0+djMyWzBdICYgKHkpLT52MzJbMF0sICAg
ICBcCi0gICAoeiktPnYzMlsxXSA9ICh4KS0+djMyWzFdICYgKHkpLT52MzJbMV0sICAgICBcCi0g
ICAoeiktPnYzMlsyXSA9ICh4KS0+djMyWzJdICYgKHkpLT52MzJbMl0sICAgICBcCi0gICAoeikt
PnYzMlszXSA9ICh4KS0+djMyWzNdICYgKHkpLT52MzJbM10gICAgICBcCi0pCi0KLSNkZWZpbmUg
X3YxMjhfb3IoeiwgeCwgeSkgICAgICAgICAgICAgICAgICAgICAgICBcCi0oICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0gICAoeiktPnYzMlswXSA9ICh4
KS0+djMyWzBdIHwgKHkpLT52MzJbMF0sICAgICBcCi0gICAoeiktPnYzMlsxXSA9ICh4KS0+djMy
WzFdIHwgKHkpLT52MzJbMV0sICAgICBcCi0gICAoeiktPnYzMlsyXSA9ICh4KS0+djMyWzJdIHwg
KHkpLT52MzJbMl0sICAgICBcCi0gICAoeiktPnYzMlszXSA9ICh4KS0+djMyWzNdIHwgKHkpLT52
MzJbM10gICAgICBcCi0pCi0KLSNkZWZpbmUgX3YxMjhfY29tcGxlbWVudCh4KSAgICAgICAgXAot
KCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0gICAoeCktPnYzMlswXSA9IH4o
eCktPnYzMlswXSwgICAgIFwKLSAgICh4KS0+djMyWzFdID0gfih4KS0+djMyWzFdLCAgICAgXAot
ICAgKHgpLT52MzJbMl0gPSB+KHgpLT52MzJbMl0sICAgICBcCi0gICAoeCktPnYzMlszXSA9IH4o
eCktPnYzMlszXSAgICAgIFwKLSkKKyNkZWZpbmUgX3YxMjhfc2V0X3RvX3plcm8oeCkgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgKCh4KS0+
djMyWzBdID0gMCwgKHgpLT52MzJbMV0gPSAwLCAoeCktPnYzMlsyXSA9IDAsICh4KS0+djMyWzNd
ID0gMCkKIAotLyogb2sgZm9yIE5PXzY0QklUX01BVEggaWYgaXQgY2FuIGNvbXBhcmUgdWludDY0
X3QncyAoZXZlbiBhcyBzdHJ1Y3R1cmVzKSAqLwotI2RlZmluZSBfdjEyOF9pc19lcSh4LCB5KSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0gICgoKHgpLT52NjRbMF0g
PT0gKHkpLT52NjRbMF0pICYmICgoeCktPnY2NFsxXSA9PSAoeSktPnY2NFsxXSkpCisjZGVmaW5l
IF92MTI4X2NvcHkoeCwgeSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgXAorICAgICgoeCktPnYzMlswXSA9ICh5KS0+djMyWzBdLCAoeCktPnYz
MlsxXSA9ICh5KS0+djMyWzFdLCAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgKHgpLT52MzJb
Ml0gPSAoeSktPnYzMlsyXSwgKHgpLT52MzJbM10gPSAoeSktPnYzMlszXSkKIAorI2RlZmluZSBf
djEyOF94b3IoeiwgeCwgeSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFwKKyAgICAoKHopLT52MzJbMF0gPSAoeCktPnYzMlswXSBeICh5KS0+djMy
WzBdLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICh6KS0+djMyWzFd
ID0gKHgpLT52MzJbMV0gXiAoeSktPnYzMlsxXSwgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgXAorICAgICAoeiktPnYzMlsyXSA9ICh4KS0+djMyWzJdIF4gKHkpLT52MzJbMl0sICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgKHopLT52MzJbM10gPSAoeCkt
PnYzMlszXSBeICh5KS0+djMyWzNdKQorCisjZGVmaW5lIF92MTI4X2FuZCh6LCB4LCB5KSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICgo
eiktPnYzMlswXSA9ICh4KS0+djMyWzBdICYgKHkpLT52MzJbMF0sICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFwKKyAgICAgKHopLT52MzJbMV0gPSAoeCktPnYzMlsxXSAmICh5KS0+
djMyWzFdLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICh6KS0+djMy
WzJdID0gKHgpLT52MzJbMl0gJiAoeSktPnYzMlsyXSwgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgXAorICAgICAoeiktPnYzMlszXSA9ICh4KS0+djMyWzNdICYgKHkpLT52MzJbM10p
CisKKyNkZWZpbmUgX3YxMjhfb3IoeiwgeCwgeSkgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgKCh6KS0+djMyWzBdID0gKHgpLT52MzJb
MF0gfCAoeSktPnYzMlswXSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAg
ICAoeiktPnYzMlsxXSA9ICh4KS0+djMyWzFdIHwgKHkpLT52MzJbMV0sICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFwKKyAgICAgKHopLT52MzJbMl0gPSAoeCktPnYzMlsyXSB8ICh5
KS0+djMyWzJdLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICh6KS0+
djMyWzNdID0gKHgpLT52MzJbM10gfCAoeSktPnYzMlszXSkKKworI2RlZmluZSBfdjEyOF9jb21w
bGVtZW50KHgpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFwKKyAgICAoKHgpLT52MzJbMF0gPSB+KHgpLT52MzJbMF0sICh4KS0+djMyWzFdID0gfih4
KS0+djMyWzFdLCAgICAgICAgICAgICAgICAgICBcCisgICAgICh4KS0+djMyWzJdID0gfih4KS0+
djMyWzJdLCAoeCktPnYzMlszXSA9IH4oeCktPnYzMlszXSkKKworLyogb2sgZm9yIE5PXzY0QklU
X01BVEggaWYgaXQgY2FuIGNvbXBhcmUgdWludDY0X3QncyAoZXZlbiBhcyBzdHJ1Y3R1cmVzKSAq
LworI2RlZmluZSBfdjEyOF9pc19lcSh4LCB5KSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAoKCh4KS0+djY0WzBdID09ICh5KS0+djY0
WzBdKSAmJiAoKHgpLT52NjRbMV0gPT0gKHkpLT52NjRbMV0pKQogCiAjaWZkZWYgTk9fNjRCSVRf
TUFUSAotI2RlZmluZSBfdjEyOF94b3JfZXEoeiwgeCkgICAgICAgICBcCi0oICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFwKLSAgICh6KS0+djMyWzBdIF49ICh4KS0+djMyWzBdLCAg
ICAgXAotICAgKHopLT52MzJbMV0gXj0gKHgpLT52MzJbMV0sICAgICBcCi0gICAoeiktPnYzMlsy
XSBePSAoeCktPnYzMlsyXSwgICAgIFwKLSAgICh6KS0+djMyWzNdIF49ICh4KS0+djMyWzNdICAg
ICAgXAotKQorI2RlZmluZSBfdjEyOF94b3JfZXEoeiwgeCkgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAoKHopLT52MzJbMF0gXj0gKHgp
LT52MzJbMF0sICh6KS0+djMyWzFdIF49ICh4KS0+djMyWzFdLCAgICAgICAgICAgICAgICAgICBc
CisgICAgICh6KS0+djMyWzJdIF49ICh4KS0+djMyWzJdLCAoeiktPnYzMlszXSBePSAoeCktPnYz
MlszXSkKICNlbHNlCi0jZGVmaW5lIF92MTI4X3hvcl9lcSh6LCB4KSAgICAgICAgIFwKLSggICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotICAgKHopLT52NjRbMF0gXj0gKHgpLT52
NjRbMF0sICAgICBcCi0gICAoeiktPnY2NFsxXSBePSAoeCktPnY2NFsxXSAgICAgIFwKLSkKKyNk
ZWZpbmUgX3YxMjhfeG9yX2VxKHosIHgpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBcCisgICAgKCh6KS0+djY0WzBdIF49ICh4KS0+djY0WzBdLCAo
eiktPnY2NFsxXSBePSAoeCktPnY2NFsxXSkKICNlbmRpZgogCiAvKiBOT1RFISAgVGhpcyBhc3N1
bWVzIGFuIG9kZCBvcmRlcmluZyEgKi8KQEAgLTIyNCw3NiArMTg4LDU1IEBAIHYxMjhfcmlnaHRf
c2hpZnQodjEyOF90ICp4LCBpbnQgc2hpZnRfaW5kZXgpOwogICAgcmVhbGx5IGNhcmUgd2hpY2gg
Yml0IGlzIHdoaWNoLiAgQUVTIGRvZXMgY2FyZSB3aGljaCBiaXQgaXMgd2hpY2gsIGJ1dAogICAg
ZG9lc24ndCB1c2UgdGhlIDEyOC1iaXQgZ2V0L3NldCBvciAxMjgtYml0IHNoaWZ0cyAgKi8KIAot
I2RlZmluZSBfdjEyOF9nZXRfYml0KHgsIGJpdCkgICAgICAgICAgICAgICAgICAgICBcCi0oICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSAgKCgoKHgp
LT52MzJbKGJpdCkgPj4gNV0pID4+ICgoYml0KSAmIDMxKSkgJiAxKSAgXAotKQotCi0jZGVmaW5l
IF92MTI4X3NldF9iaXQoeCwgYml0KSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IFwKLSggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgXAotICAoKCh4KS0+djMyWyhiaXQpID4+IDVdKSB8PSAoKHVpbnQzMl90KTEg
PDwgKChiaXQpICYgMzEpKSkgXAotKQotCi0jZGVmaW5lIF92MTI4X2NsZWFyX2JpdCh4LCBiaXQp
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0oICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0gICgoKHgp
LT52MzJbKGJpdCkgPj4gNV0pICY9IH4oKHVpbnQzMl90KTEgPDwgKChiaXQpICYgMzEpKSkgXAot
KQotCi0jZGVmaW5lIF92MTI4X3NldF9iaXRfdG8oeCwgYml0LCB2YWx1ZSkgICBcCi0oICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0gICAodmFsdWUpID8gX3YxMjhf
c2V0X2JpdCh4LCBiaXQpIDogICAgICBcCi0gICAgICAgICAgICAgX3YxMjhfY2xlYXJfYml0KHgs
IGJpdCkgICAgICBcCi0pCi0KLSNpZmRlZiBEQVRBVFlQRVNfVVNFX01BQ1JPUyAgLyogbGl0dGxl
IGZ1bmN0aW9ucyBhcmUgcmVhbGx5IG1hY3JvcyAqLwotICAgCi0jZGVmaW5lIHYxMjhfc2V0X3Rv
X3plcm8oeikgICAgICAgX3YxMjhfc2V0X3RvX3plcm8oeikKLSNkZWZpbmUgdjEyOF9jb3B5KHos
IHgpICAgICAgICAgICBfdjEyOF9jb3B5KHosIHgpCi0jZGVmaW5lIHYxMjhfeG9yKHosIHgsIHkp
ICAgICAgICAgX3YxMjhfeG9yKHosIHgsIHkpCi0jZGVmaW5lIHYxMjhfYW5kKHosIHgsIHkpICAg
ICAgICAgX3YxMjhfYW5kKHosIHgsIHkpCi0jZGVmaW5lIHYxMjhfb3IoeiwgeCwgeSkgICAgICAg
ICAgX3YxMjhfb3IoeiwgeCwgeSkKLSNkZWZpbmUgdjEyOF9jb21wbGVtZW50KHgpICAgICAgICBf
djEyOF9jb21wbGVtZW50KHgpIAotI2RlZmluZSB2MTI4X2lzX2VxKHgsIHkpICAgICAgICAgIF92
MTI4X2lzX2VxKHgsIHkpCi0jZGVmaW5lIHYxMjhfeG9yX2VxKHgsIHkpICAgICAgICAgX3YxMjhf
eG9yX2VxKHgsIHkpCi0jZGVmaW5lIHYxMjhfZ2V0X2JpdCh4LCBpKSAgICAgICAgX3YxMjhfZ2V0
X2JpdCh4LCBpKQotI2RlZmluZSB2MTI4X3NldF9iaXQoeCwgaSkgICAgICAgIF92MTI4X3NldF9i
aXQoeCwgaSkKLSNkZWZpbmUgdjEyOF9jbGVhcl9iaXQoeCwgaSkgICAgICBfdjEyOF9jbGVhcl9i
aXQoeCwgaSkKLSNkZWZpbmUgdjEyOF9zZXRfYml0X3RvKHgsIGksIHkpICBfdjEyOF9zZXRfYml0
X3RvKHgsIGksIHkpCisjZGVmaW5lIF92MTI4X2dldF9iaXQoeCwgYml0KSAoKCgoKHgpLT52MzJb
KGJpdCkgPj4gNV0pID4+ICgoYml0KSYzMSkpICYgMSkpCisKKyNkZWZpbmUgX3YxMjhfc2V0X2Jp
dCh4LCBiaXQpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBcCisgICAgKCgoKHgpLT52MzJbKGJpdCkgPj4gNV0pIHw9ICgodWludDMyX3QpMSA8PCAoKGJp
dCkmMzEpKSkpCisKKyNkZWZpbmUgX3YxMjhfY2xlYXJfYml0KHgsIGJpdCkgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgKCgoKHgpLT52MzJbKGJp
dCkgPj4gNV0pICY9IH4oKHVpbnQzMl90KTEgPDwgKChiaXQpJjMxKSkpKQorCisjZGVmaW5lIF92
MTI4X3NldF9iaXRfdG8oeCwgYml0LCB2YWx1ZSkgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgXAorICAgICgodmFsdWUpID8gX3YxMjhfc2V0X2JpdCh4LCBiaXQpIDogX3Yx
MjhfY2xlYXJfYml0KHgsIGJpdCkpCisKKyNpZmRlZiBEQVRBVFlQRVNfVVNFX01BQ1JPUyAvKiBs
aXR0bGUgZnVuY3Rpb25zIGFyZSByZWFsbHkgbWFjcm9zICovCisKKyNkZWZpbmUgdjEyOF9zZXRf
dG9femVybyh6KSBfdjEyOF9zZXRfdG9femVybyh6KQorI2RlZmluZSB2MTI4X2NvcHkoeiwgeCkg
X3YxMjhfY29weSh6LCB4KQorI2RlZmluZSB2MTI4X3hvcih6LCB4LCB5KSBfdjEyOF94b3Ioeiwg
eCwgeSkKKyNkZWZpbmUgdjEyOF9hbmQoeiwgeCwgeSkgX3YxMjhfYW5kKHosIHgsIHkpCisjZGVm
aW5lIHYxMjhfb3IoeiwgeCwgeSkgX3YxMjhfb3IoeiwgeCwgeSkKKyNkZWZpbmUgdjEyOF9jb21w
bGVtZW50KHgpIF92MTI4X2NvbXBsZW1lbnQoeCkKKyNkZWZpbmUgdjEyOF9pc19lcSh4LCB5KSBf
djEyOF9pc19lcSh4LCB5KQorI2RlZmluZSB2MTI4X3hvcl9lcSh4LCB5KSBfdjEyOF94b3JfZXEo
eCwgeSkKKyNkZWZpbmUgdjEyOF9nZXRfYml0KHgsIGkpIF92MTI4X2dldF9iaXQoeCwgaSkKKyNk
ZWZpbmUgdjEyOF9zZXRfYml0KHgsIGkpIF92MTI4X3NldF9iaXQoeCwgaSkKKyNkZWZpbmUgdjEy
OF9jbGVhcl9iaXQoeCwgaSkgX3YxMjhfY2xlYXJfYml0KHgsIGkpCisjZGVmaW5lIHYxMjhfc2V0
X2JpdF90byh4LCBpLCB5KSBfdjEyOF9zZXRfYml0X3RvKHgsIGksIHkpCiAKICNlbHNlCiAKLXZv
aWQKLXYxMjhfc2V0X3RvX3plcm8odjEyOF90ICp4KTsKK3ZvaWQgdjEyOF9zZXRfdG9femVybyh2
MTI4X3QgKngpOwogCi1pbnQKLXYxMjhfaXNfZXEoY29uc3QgdjEyOF90ICp4LCBjb25zdCB2MTI4
X3QgKnkpOworaW50IHYxMjhfaXNfZXEoY29uc3QgdjEyOF90ICp4LCBjb25zdCB2MTI4X3QgKnkp
OwogCi12b2lkCi12MTI4X2NvcHkodjEyOF90ICp4LCBjb25zdCB2MTI4X3QgKnkpOwordm9pZCB2
MTI4X2NvcHkodjEyOF90ICp4LCBjb25zdCB2MTI4X3QgKnkpOwogCi12b2lkCi12MTI4X3hvcih2
MTI4X3QgKnosIHYxMjhfdCAqeCwgdjEyOF90ICp5KTsKK3ZvaWQgdjEyOF94b3IodjEyOF90ICp6
LCB2MTI4X3QgKngsIHYxMjhfdCAqeSk7CiAKLXZvaWQKLXYxMjhfYW5kKHYxMjhfdCAqeiwgdjEy
OF90ICp4LCB2MTI4X3QgKnkpOwordm9pZCB2MTI4X2FuZCh2MTI4X3QgKnosIHYxMjhfdCAqeCwg
djEyOF90ICp5KTsKIAotdm9pZAotdjEyOF9vcih2MTI4X3QgKnosIHYxMjhfdCAqeCwgdjEyOF90
ICp5KTsgCit2b2lkIHYxMjhfb3IodjEyOF90ICp6LCB2MTI4X3QgKngsIHYxMjhfdCAqeSk7CiAK
LXZvaWQKLXYxMjhfY29tcGxlbWVudCh2MTI4X3QgKngpOwordm9pZCB2MTI4X2NvbXBsZW1lbnQo
djEyOF90ICp4KTsKIAotaW50Ci12MTI4X2dldF9iaXQoY29uc3QgdjEyOF90ICp4LCBpbnQgaSk7
CitpbnQgdjEyOF9nZXRfYml0KGNvbnN0IHYxMjhfdCAqeCwgaW50IGkpOwogCi12b2lkCi12MTI4
X3NldF9iaXQodjEyOF90ICp4LCBpbnQgaSkgOyAgICAgCit2b2lkIHYxMjhfc2V0X2JpdCh2MTI4
X3QgKngsIGludCBpKTsKIAotdm9pZAotdjEyOF9jbGVhcl9iaXQodjEyOF90ICp4LCBpbnQgaSk7
ICAgIAordm9pZCB2MTI4X2NsZWFyX2JpdCh2MTI4X3QgKngsIGludCBpKTsKIAotdm9pZAotdjEy
OF9zZXRfYml0X3RvKHYxMjhfdCAqeCwgaW50IGksIGludCB5KTsKK3ZvaWQgdjEyOF9zZXRfYml0
X3RvKHYxMjhfdCAqeCwgaW50IGksIGludCB5KTsKIAogI2VuZGlmIC8qIERBVEFUWVBFU19VU0Vf
TUFDUk9TICovCiAKQEAgLTMwNCwxMTMgKzI0NywxMDIgQEAgdjEyOF9zZXRfYml0X3RvKHYxMjhf
dCAqeCwgaW50IGksIGludCB5KTsKICAqIHZlcmlmeWluZyBhdXRoZW50aWNhdGlvbiB0YWdzLgog
ICovCiAKLWludAotb2N0ZXRfc3RyaW5nX2lzX2VxKHVpbnQ4X3QgKmEsIHVpbnQ4X3QgKmIsIGlu
dCBsZW4pOworaW50IG9jdGV0X3N0cmluZ19pc19lcSh1aW50OF90ICphLCB1aW50OF90ICpiLCBp
bnQgbGVuKTsKIAogLyoKICAqIEEgcG9ydGFibGUgd2F5IHRvIHplcm8gb3V0IG1lbW9yeSBhcyBy
ZWNvbW1lbmRlZCBieQogICogaHR0cHM6Ly9jcnlwdG9jb2RpbmcubmV0L2luZGV4LnBocC9Db2Rp
bmdfcnVsZXMjQ2xlYW5fbWVtb3J5X29mX3NlY3JldF9kYXRhCiAgKiBUaGlzIGlzIHVzZWQgdG8g
emVybyBtZW1vcnkgd2hlbiBPUEVOU1NMX2NsZWFuc2UoKSBpcyBub3QgYXZhaWxhYmxlLgogICov
Ci12b2lkCi1zcnRwX2NsZWFuc2Uodm9pZCAqcywgc2l6ZV90IGxlbik7Cit2b2lkIHNydHBfY2xl
YW5zZSh2b2lkICpzLCBzaXplX3QgbGVuKTsKIAogLyoKICAqIEZ1bmN0aW9ucyBhcyBhIHdyYXBw
ZXIgdGhhdCBkZWxlZ2F0ZXMgdG8gZWl0aGVyIHNydHBfY2xlYW5zZSgpIG9yCiAgKiBPUEVOU1NM
X2NsZWFuc2UoKSBpZiBhdmFpbGFibGUgdG8gemVybyBtZW1vcnkuCiAgKi8KLXZvaWQKLW9jdGV0
X3N0cmluZ19zZXRfdG9femVybyh2b2lkICpzLCBzaXplX3QgbGVuKTsKK3ZvaWQgb2N0ZXRfc3Ry
aW5nX3NldF90b196ZXJvKHZvaWQgKnMsIHNpemVfdCBsZW4pOwogCi0jaWYgZGVmaW5lZChIQVZF
X0NPTkZJR19IKSAKKyNpZiBkZWZpbmVkKEhBVkVfQ09ORklHX0gpCiAKLS8qIAorLyoKICAqIENv
bnZlcnQgYmlnIGVuZGlhbiBpbnRlZ2VycyB0byBDUFUgYnl0ZSBvcmRlci4KICAqLwogI2lmZGVm
IFdPUkRTX0JJR0VORElBTgogLyogTm90aGluZyB0byBkby4gKi8KLSMgZGVmaW5lIGJlMzJfdG9f
Y3B1KHgpCSh4KQotIyBkZWZpbmUgYmU2NF90b19jcHUoeCkJKHgpCisjZGVmaW5lIGJlMzJfdG9f
Y3B1KHgpICh4KQorI2RlZmluZSBiZTY0X3RvX2NwdSh4KSAoeCkKICNlbGlmIGRlZmluZWQoSEFW
RV9CWVRFU1dBUF9IKQogLyogV2UgaGF2ZSAoaG9wZWZ1bGx5KSBvcHRpbWl6ZWQgdmVyc2lvbnMg
aW4gYnl0ZXN3YXAuaCAqLwotIyBpbmNsdWRlIDxieXRlc3dhcC5oPgotIyBkZWZpbmUgYmUzMl90
b19jcHUoeCkJYnN3YXBfMzIoKHgpKQotIyBkZWZpbmUgYmU2NF90b19jcHUoeCkJYnN3YXBfNjQo
KHgpKQotI2Vsc2UKKyNpbmNsdWRlIDxieXRlc3dhcC5oPgorI2RlZmluZSBiZTMyX3RvX2NwdSh4
KSBic3dhcF8zMigoeCkpCisjZGVmaW5lIGJlNjRfdG9fY3B1KHgpIGJzd2FwXzY0KCh4KSkKKyNl
bHNlIC8qIFdPUkRTX0JJR0VORElBTiAqLwogCiAjaWYgZGVmaW5lZChfX0dOVUNfXykgJiYgZGVm
aW5lZChIQVZFX1g4NikKIC8qIEZhbGwgYmFjay4gKi8KLXN0YXRpYyBpbmxpbmUgdWludDMyX3Qg
YmUzMl90b19jcHUodWludDMyX3QgdikgewotICAgLyogb3B0aW1pemVkIGZvciB4ODYuICovCi0g
ICBhc20oImJzd2FwICUwIiA6ICI9ciIgKHYpIDogIjAiICh2KSk7Ci0gICByZXR1cm4gdjsKLX0K
LSMgZWxzZSAvKiBIQVZFX1g4NiAqLwotIyAgaWZkZWYgSEFWRV9ORVRJTkVUX0lOX0gKLSMgICBp
bmNsdWRlIDxuZXRpbmV0L2luLmg+Ci0jICBlbGlmIGRlZmluZWQgSEFWRV9XSU5TT0NLMl9ICi0j
ICAgaW5jbHVkZSA8d2luc29jazIuaD4KLSMgIGVuZGlmCi0jICBkZWZpbmUgYmUzMl90b19jcHUo
eCkJbnRvaGwoKHgpKQotIyBlbmRpZiAvKiBIQVZFX1g4NiAqLwotCi1zdGF0aWMgaW5saW5lIHVp
bnQ2NF90IGJlNjRfdG9fY3B1KHVpbnQ2NF90IHYpIHsKLSMgaWZkZWYgTk9fNjRCSVRfTUFUSAot
ICAgLyogdXNlIHRoZSBtYWtlNjQgZnVuY3Rpb25zIHRvIGRvIDY0LWJpdCBtYXRoICovCi0gICB2
ID0gbWFrZTY0KGh0b25sKGxvdzMyKHYpKSxodG9ubChoaWdoMzIodikpKTsKLSMgZWxzZQotICAg
LyogdXNlIHRoZSBuYXRpdmUgNjQtYml0IG1hdGggKi8KLSAgIHY9ICh1aW50NjRfdCkoKGJlMzJf
dG9fY3B1KCh1aW50MzJfdCkodiA+PiAzMikpKSB8ICgoKHVpbnQ2NF90KWJlMzJfdG9fY3B1KCh1
aW50MzJfdCl2KSkgPDwgMzIpKTsKLSMgZW5kaWYKLSAgIHJldHVybiB2Oworc3RhdGljIGlubGlu
ZSB1aW50MzJfdCBiZTMyX3RvX2NwdSh1aW50MzJfdCB2KQoreworICAgIC8qIG9wdGltaXplZCBm
b3IgeDg2LiAqLworICAgIGFzbSgiYnN3YXAgJTAiIDogIj1yIih2KSA6ICIwIih2KSk7CisgICAg
cmV0dXJuIHY7CiB9CisjZWxzZSAvKiBIQVZFX1g4NiAqLworI2lmZGVmIEhBVkVfTkVUSU5FVF9J
Tl9ICisjaW5jbHVkZSA8bmV0aW5ldC9pbi5oPgorI2VsaWYgZGVmaW5lZCBIQVZFX1dJTlNPQ0sy
X0gKKyNpbmNsdWRlIDx3aW5zb2NrMi5oPgorI2VuZGlmIC8qIEhBVkVfTkVUSU5FVF9JTl9IICov
CisjZGVmaW5lIGJlMzJfdG9fY3B1KHgpIG50b2hsKCh4KSkKKyNlbmRpZiAvKiBIQVZFX1g4NiAq
LwogCi0jZW5kaWYgCitzdGF0aWMgaW5saW5lIHVpbnQ2NF90IGJlNjRfdG9fY3B1KHVpbnQ2NF90
IHYpCit7CisjaWZkZWYgTk9fNjRCSVRfTUFUSAorICAgIC8qIHVzZSB0aGUgbWFrZTY0IGZ1bmN0
aW9ucyB0byBkbyA2NC1iaXQgbWF0aCAqLworICAgIHYgPSBtYWtlNjQoaHRvbmwobG93MzIodikp
LCBodG9ubChoaWdoMzIodikpKTsKKyNlbHNlICAvKiBOT182NEJJVF9NQVRIICovCisgICAgLyog
dXNlIHRoZSBuYXRpdmUgNjQtYml0IG1hdGggKi8KKyAgICB2ID0gKHVpbnQ2NF90KSgoYmUzMl90
b19jcHUoKHVpbnQzMl90KSh2ID4+IDMyKSkpIHwKKyAgICAgICAgICAgICAgICAgICAoKCh1aW50
NjRfdCliZTMyX3RvX2NwdSgodWludDMyX3QpdikpIDw8IDMyKSk7CisjZW5kaWYgLyogTk9fNjRC
SVRfTUFUSCAqLworICAgIHJldHVybiB2OworfQogCiAjZW5kaWYgLyogV09SRFNfQklHRU5ESUFO
ICovCiAKKyNlbmRpZiAvKiBIQVZFX0NPTkZJR19IICovCisKIC8qCi0gKiBmdW5jdGlvbnMgbWFu
aXB1bGF0aW5nIGJpdHZlY3Rvcl90IAorICogZnVuY3Rpb25zIG1hbmlwdWxhdGluZyBiaXR2ZWN0
b3JfdAogICoKICAqIEEgYml0dmVjdG9yX3QgY29uc2lzdHMgb2YgYW4gYXJyYXkgb2Ygd29yZHMg
YW5kIGFuIGludGVnZXIKICAqIHJlcHJlc2VudGluZyB0aGUgbnVtYmVyIG9mIHNpZ25pZmljYW50
IGJpdHMgc3RvcmVkIGluIHRoZSBhcnJheS4KICAqIFRoZSBiaXRzIGFyZSBwYWNrZWQgYXMgZm9s
bG93czogdGhlIGxlYXN0IHNpZ25pZmljYW50IGJpdCBpcyB0aGF0CiAgKiBvZiB3b3JkWzBdLCB3
aGlsZSB0aGUgbW9zdCBzaWduaWZpY2FudCBiaXQgaXMgdGhlIG50aCBtb3N0CiAgKiBzaWduaWZp
Y2FudCBiaXQgb2Ygd29yZFttXSwgd2hlcmUgbGVuZ3RoID0gYml0c19wZXJfd29yZCAqIG0gKyBu
LgotICogCisgKgogICovCiAKLSNkZWZpbmUgYml0c19wZXJfd29yZCAgMzIKKyNkZWZpbmUgYml0
c19wZXJfd29yZCAzMgogI2RlZmluZSBieXRlc19wZXJfd29yZCA0CiAKIHR5cGVkZWYgc3RydWN0
IHsKLSAgdWludDMyX3QgbGVuZ3RoOyAgIAotICB1aW50MzJfdCAqd29yZDsKKyAgICB1aW50MzJf
dCBsZW5ndGg7CisgICAgdWludDMyX3QgKndvcmQ7CiB9IGJpdHZlY3Rvcl90OwogCisjZGVmaW5l
IF9iaXR2ZWN0b3JfZ2V0X2JpdCh2LCBiaXRfaW5kZXgpICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgXAorICAgICgoKCgodiktPndvcmRbKChiaXRfaW5kZXgpID4+IDUpXSkg
Pj4gKChiaXRfaW5kZXgpJjMxKSkgJiAxKSkKIAotI2RlZmluZSBfYml0dmVjdG9yX2dldF9iaXQo
diwgYml0X2luZGV4KQkJCQlcCi0oCQkJCQkJCQkJXAotICgoKCh2KS0+d29yZFsoKGJpdF9pbmRl
eCkgPj4gNSldKSA+PiAoKGJpdF9pbmRleCkgJiAzMSkpICYgMSkJCVwKLSkKLQotCi0jZGVmaW5l
IF9iaXR2ZWN0b3Jfc2V0X2JpdCh2LCBiaXRfaW5kZXgpCQkJCVwKLSgJCQkJCQkJCQlcCi0gKCgo
diktPndvcmRbKChiaXRfaW5kZXgpID4+IDUpXSB8PSAoKHVpbnQzMl90KTEgPDwgKChiaXRfaW5k
ZXgpICYgMzEpKSkpIFwKLSkKKyNkZWZpbmUgX2JpdHZlY3Rvcl9zZXRfYml0KHYsIGJpdF9pbmRl
eCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgKCgoKHYpLT53
b3JkWygoYml0X2luZGV4KSA+PiA1KV0gfD0gKCh1aW50MzJfdCkxIDw8ICgoYml0X2luZGV4KSYz
MSkpKSkpCiAKLSNkZWZpbmUgX2JpdHZlY3Rvcl9jbGVhcl9iaXQodiwgYml0X2luZGV4KQkJCQlc
Ci0oCQkJCQkJCQkJXAotICgoKHYpLT53b3JkWygoYml0X2luZGV4KSA+PiA1KV0gJj0gfigodWlu
dDMyX3QpMSA8PCAoKGJpdF9pbmRleCkgJiAzMSkpKSkgXAotKQorI2RlZmluZSBfYml0dmVjdG9y
X2NsZWFyX2JpdCh2LCBiaXRfaW5kZXgpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFwKKyAgICAoKCgodiktPndvcmRbKChiaXRfaW5kZXgpID4+IDUpXSAmPSB+KCh1aW50MzJf
dCkxIDw8ICgoYml0X2luZGV4KSYzMSkpKSkpCiAKLSNkZWZpbmUgX2JpdHZlY3Rvcl9nZXRfbGVu
Z3RoKHYpCQkJCQlcCi0oCQkJCQkJCQkJXAotICgodiktPmxlbmd0aCkJCQkJCQkJCVwKLSkKKyNk
ZWZpbmUgX2JpdHZlY3Rvcl9nZXRfbGVuZ3RoKHYpICgoKHYpLT5sZW5ndGgpKQogCi0jaWZkZWYg
REFUQVRZUEVTX1VTRV9NQUNST1MgIC8qIGxpdHRsZSBmdW5jdGlvbnMgYXJlIHJlYWxseSBtYWNy
b3MgKi8KKyNpZmRlZiBEQVRBVFlQRVNfVVNFX01BQ1JPUyAvKiBsaXR0bGUgZnVuY3Rpb25zIGFy
ZSByZWFsbHkgbWFjcm9zICovCiAKICNkZWZpbmUgYml0dmVjdG9yX2dldF9iaXQodiwgYml0X2lu
ZGV4KSBfYml0dmVjdG9yX2dldF9iaXQodiwgYml0X2luZGV4KQogI2RlZmluZSBiaXR2ZWN0b3Jf
c2V0X2JpdCh2LCBiaXRfaW5kZXgpIF9iaXR2ZWN0b3Jfc2V0X2JpdCh2LCBiaXRfaW5kZXgpCkBA
IC00MTksMzQgKzM1MSwyNSBAQCB0eXBlZGVmIHN0cnVjdCB7CiAKICNlbHNlCiAKLWludAotYml0
dmVjdG9yX2dldF9iaXQoY29uc3QgYml0dmVjdG9yX3QgKnYsIGludCBiaXRfaW5kZXgpOworaW50
IGJpdHZlY3Rvcl9nZXRfYml0KGNvbnN0IGJpdHZlY3Rvcl90ICp2LCBpbnQgYml0X2luZGV4KTsK
IAotdm9pZAotYml0dmVjdG9yX3NldF9iaXQoYml0dmVjdG9yX3QgKnYsIGludCBiaXRfaW5kZXgp
Owordm9pZCBiaXR2ZWN0b3Jfc2V0X2JpdChiaXR2ZWN0b3JfdCAqdiwgaW50IGJpdF9pbmRleCk7
CiAKLXZvaWQKLWJpdHZlY3Rvcl9jbGVhcl9iaXQoYml0dmVjdG9yX3QgKnYsIGludCBiaXRfaW5k
ZXgpOwordm9pZCBiaXR2ZWN0b3JfY2xlYXJfYml0KGJpdHZlY3Rvcl90ICp2LCBpbnQgYml0X2lu
ZGV4KTsKIAotdW5zaWduZWQgbG9uZwotYml0dmVjdG9yX2dldF9sZW5ndGgoY29uc3QgYml0dmVj
dG9yX3QgKnYpOwordW5zaWduZWQgbG9uZyBiaXR2ZWN0b3JfZ2V0X2xlbmd0aChjb25zdCBiaXR2
ZWN0b3JfdCAqdik7CiAKICNlbmRpZgogCi1pbnQKLWJpdHZlY3Rvcl9hbGxvYyhiaXR2ZWN0b3Jf
dCAqdiwgdW5zaWduZWQgbG9uZyBsZW5ndGgpOworaW50IGJpdHZlY3Rvcl9hbGxvYyhiaXR2ZWN0
b3JfdCAqdiwgdW5zaWduZWQgbG9uZyBsZW5ndGgpOwogCi12b2lkCi1iaXR2ZWN0b3JfZGVhbGxv
YyhiaXR2ZWN0b3JfdCAqdik7Cit2b2lkIGJpdHZlY3Rvcl9kZWFsbG9jKGJpdHZlY3Rvcl90ICp2
KTsKIAotdm9pZAotYml0dmVjdG9yX3NldF90b196ZXJvKGJpdHZlY3Rvcl90ICp4KTsKK3ZvaWQg
Yml0dmVjdG9yX3NldF90b196ZXJvKGJpdHZlY3Rvcl90ICp4KTsKIAotdm9pZAotYml0dmVjdG9y
X2xlZnRfc2hpZnQoYml0dmVjdG9yX3QgKngsIGludCBpbmRleCk7Cit2b2lkIGJpdHZlY3Rvcl9s
ZWZ0X3NoaWZ0KGJpdHZlY3Rvcl90ICp4LCBpbnQgaW5kZXgpOwogCi1jaGFyICoKLWJpdHZlY3Rv
cl9iaXRfc3RyaW5nKGJpdHZlY3Rvcl90ICp4LCBjaGFyKiBidWYsIGludCBsZW4pOworY2hhciAq
Yml0dmVjdG9yX2JpdF9zdHJpbmcoYml0dmVjdG9yX3QgKngsIGNoYXIgKmJ1ZiwgaW50IGxlbik7
CiAKICNpZmRlZiBfX2NwbHVzcGx1cwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9pbmNsdWRlL2Vyci5o
IGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRw
L2NyeXB0by9pbmNsdWRlL2Vyci5oCmluZGV4IGI2ZjE5NmRhODQzYzE0YTlhN2VhMTIxMjIzNTAz
ZmYyODYzM2MxZDMuLjY2YTEwMjNlYzg2OTFkY2EzZjE4MGZmMDVmMGMxM2Y4MTk1YmY4NWMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlic3J0cC9jcnlwdG8vaW5jbHVkZS9lcnIuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2luY2x1ZGUvZXJyLmgKQEAg
LTQyLDcgKzQyLDYgQEAKICAqCiAgKi8KIAotCiAjaWZuZGVmIEVSUl9ICiAjZGVmaW5lIEVSUl9I
CiAKQEAgLTYyLDcgKzYxLDYgQEAgZXh0ZXJuICJDIiB7CiAgKiBAewogICovCiAKLQogLyoqCiAg
KiBAfQogICovCkBAIC04Miw5ICs4MCwxMSBAQCB0eXBlZGVmIGVudW0gewogCiBzcnRwX2Vycl9z
dGF0dXNfdCBzcnRwX2Vycl9yZXBvcnRpbmdfaW5pdCh2b2lkKTsKIAotdHlwZWRlZiB2b2lkIChz
cnRwX2Vycl9yZXBvcnRfaGFuZGxlcl9mdW5jX3QpKHNydHBfZXJyX3JlcG9ydGluZ19sZXZlbF90
IGxldmVsLCBjb25zdCBjaGFyICogbXNnKTsKK3R5cGVkZWYgdm9pZChzcnRwX2Vycl9yZXBvcnRf
aGFuZGxlcl9mdW5jX3QpKHNydHBfZXJyX3JlcG9ydGluZ19sZXZlbF90IGxldmVsLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqbXNnKTsK
IAotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9pbnN0YWxsX2Vycl9yZXBvcnRfaGFuZGxlcihzcnRw
X2Vycl9yZXBvcnRfaGFuZGxlcl9mdW5jX3QgZnVuYyk7CitzcnRwX2Vycl9zdGF0dXNfdCBzcnRw
X2luc3RhbGxfZXJyX3JlcG9ydF9oYW5kbGVyKAorICAgIHNydHBfZXJyX3JlcG9ydF9oYW5kbGVy
X2Z1bmNfdCBmdW5jKTsKIAogLyoKICAqIHNydHBfZXJyX3JlcG9ydCByZXBvcnRzIGEgJ3ByaW50
ZicgZm9ybWF0dGVkIGVycm9yCkBAIC05Niw5ICs5Niw3IEBAIHNydHBfZXJyX3N0YXR1c190IHNy
dHBfaW5zdGFsbF9lcnJfcmVwb3J0X2hhbmRsZXIoc3J0cF9lcnJfcmVwb3J0X2hhbmRsZXJfZnVu
Y190CiAgKgogICovCiAKLXZvaWQKLXNydHBfZXJyX3JlcG9ydChzcnRwX2Vycl9yZXBvcnRpbmdf
bGV2ZWxfdCBsZXZlbCwgY29uc3QgY2hhciAqZm9ybWF0LCAuLi4pOwotCit2b2lkIHNydHBfZXJy
X3JlcG9ydChzcnRwX2Vycl9yZXBvcnRpbmdfbGV2ZWxfdCBsZXZlbCwgY29uc3QgY2hhciAqZm9y
bWF0LCAuLi4pOwogCiAvKgogICogZGVidWdfbW9kdWxlX3QgZGVmaW5lcyBhIGRlYnVnIG1vZHVs
ZQpAQCAtMTExLDE3ICsxMDksMjEgQEAgdHlwZWRlZiBzdHJ1Y3QgewogCiAjaWZkZWYgRU5BQkxF
X0RFQlVHX0xPR0dJTkcKIAotI2RlZmluZSBkZWJ1Z19wcmludChtb2QsIGZvcm1hdCwgYXJnKSAg
ICAgICAgICAgICAgICAgIFwKKyNkZWZpbmUgZGVidWdfcHJpbnQobW9kLCBmb3JtYXQsIGFyZykg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgc3J0cF9lcnJf
cmVwb3J0KHNydHBfZXJyX2xldmVsX2RlYnVnLCAoIiVzOiAiIGZvcm1hdCAiXG4iKSwgbW9kLm5h
bWUsIGFyZykKLSNkZWZpbmUgZGVidWdfcHJpbnQyKG1vZCwgZm9ybWF0LCBhcmcxLCBhcmcyKSAg
ICAgICAgICAgICAgICAgIFwKLSAgICBzcnRwX2Vycl9yZXBvcnQoc3J0cF9lcnJfbGV2ZWxfZGVi
dWcsICgiJXM6ICIgZm9ybWF0ICJcbiIpLCBtb2QubmFtZSwgYXJnMSwgYXJnMikKKyNkZWZpbmUg
ZGVidWdfcHJpbnQyKG1vZCwgZm9ybWF0LCBhcmcxLCBhcmcyKSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBcCisgICAgc3J0cF9lcnJfcmVwb3J0KHNydHBfZXJyX2xldmVsX2RlYnVn
LCAoIiVzOiAiIGZvcm1hdCAiXG4iKSwgbW9kLm5hbWUsICAgICAgXAorICAgICAgICAgICAgICAg
ICAgICBhcmcxLCBhcmcyKQogCiAjZWxzZQogCi0jZGVmaW5lIGRlYnVnX3ByaW50KG1vZCwgZm9y
bWF0LCBhcmcpICAgICAgICAgICAgICAgICAgXAotICAgIGlmIChtb2Qub24pIHNydHBfZXJyX3Jl
cG9ydChzcnRwX2Vycl9sZXZlbF9kZWJ1ZywgKCIlczogIiBmb3JtYXQgIlxuIiksIG1vZC5uYW1l
LCBhcmcpCi0jZGVmaW5lIGRlYnVnX3ByaW50Mihtb2QsIGZvcm1hdCwgYXJnMSwgYXJnMikgICAg
ICAgICAgICAgICAgICBcCi0gICAgaWYgKG1vZC5vbikgc3J0cF9lcnJfcmVwb3J0KHNydHBfZXJy
X2xldmVsX2RlYnVnLCAoIiVzOiAiIGZvcm1hdCAiXG4iKSwgbW9kLm5hbWUsIGFyZzEsIGFyZzIp
CisjZGVmaW5lIGRlYnVnX3ByaW50KG1vZCwgZm9ybWF0LCBhcmcpICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgIGlmIChtb2Qub24pICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICBz
cnRwX2Vycl9yZXBvcnQoc3J0cF9lcnJfbGV2ZWxfZGVidWcsICgiJXM6ICIgZm9ybWF0ICJcbiIp
LCBtb2QubmFtZSwgYXJnKQorI2RlZmluZSBkZWJ1Z19wcmludDIobW9kLCBmb3JtYXQsIGFyZzEs
IGFyZzIpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICBpZiAobW9kLm9u
KSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBcCisgICAgc3J0cF9lcnJfcmVwb3J0KHNydHBfZXJyX2xldmVsX2RlYnVnLCAoIiVz
OiAiIGZvcm1hdCAiXG4iKSwgbW9kLm5hbWUsICAgICAgXAorICAgICAgICAgICAgICAgICAgICBh
cmcxLCBhcmcyKQogCiAjZW5kaWYKIApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9pbmNsdWRlL2ludGVnZXJz
LmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNy
dHAvY3J5cHRvL2luY2x1ZGUvaW50ZWdlcnMuaAppbmRleCA0YTg3MWM3MDg1MDI4Y2ZkNTRiMDc3
Mjk0NTRlZDUzNGQ0NDk1ODVjLi5mMmNkN2MwNjRkNzE5ZGJiYzRhNmMwZWYwZTRjNGRhMGI5OGQ2
YTViIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L2xpYnNydHAvY3J5cHRvL2luY2x1ZGUvaW50ZWdlcnMuaAorKysgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2luY2x1
ZGUvaW50ZWdlcnMuaApAQCAtOCwyNiArOCwyNiBAQAogICovCiAKIC8qCi0gKgkKKyAqCiAgKiBD
b3B5cmlnaHQgKGMpIDIwMDEtMjAxNywgQ2lzY28gU3lzdGVtcywgSW5jLgogICogQWxsIHJpZ2h0
cyByZXNlcnZlZC4KLSAqIAorICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCiAgKiBhcmUg
bWV0OgotICogCisgKgogICogICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAogICogICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAKKyAqCiAgKiAgIFJlZGlz
dHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKICAqICAg
Y29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcKICAqICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0
ZXJpYWxzIHByb3ZpZGVkCiAgKiAgIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqIAorICoKICAq
ICAgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgQ2lzY28gU3lzdGVtcywgSW5jLiBub3IgdGhlIG5h
bWVzIG9mIGl0cwogICogICBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBw
cm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQKICAqICAgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQg
c3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotICogCisgKgogICogVEhJUyBTT0ZU
V0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9S
UwogICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNM
VURJTkcsIEJVVCBOT1QKICAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0Yg
TUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCkBAIC00MywyOSArNDMsMjcgQEAKICAqCiAgKi8K
IAotCiAjaWZuZGVmIElOVEVHRVJTX0gKICNkZWZpbmUgSU5URUdFUlNfSAogCi0KIC8qIHVzZSBz
dGFuZGFyZCBpbnRlZ2VyIGRlZmluaXRpb25zLCBpZiB0aGV5J3JlIGF2YWlsYWJsZSAgKi8KICNp
ZmRlZiBIQVZFX1NURExJQl9ICi0jIGluY2x1ZGUgPHN0ZGxpYi5oPgorI2luY2x1ZGUgPHN0ZGxp
Yi5oPgogI2VuZGlmCiAjaWZkZWYgSEFWRV9TVERJTlRfSAotIyBpbmNsdWRlIDxzdGRpbnQuaD4K
KyNpbmNsdWRlIDxzdGRpbnQuaD4KICNlbmRpZgogI2lmZGVmIEhBVkVfSU5UVFlQRVNfSAotIyBp
bmNsdWRlIDxpbnR0eXBlcy5oPgorI2luY2x1ZGUgPGludHR5cGVzLmg+CiAjZW5kaWYKICNpZmRl
ZiBIQVZFX1NZU19UWVBFU19ICi0jIGluY2x1ZGUgPHN5cy90eXBlcy5oPgorI2luY2x1ZGUgPHN5
cy90eXBlcy5oPgogI2VuZGlmCiAjaWZkZWYgSEFWRV9TWVNfSU5UX1RZUEVTX0gKLSMgaW5jbHVk
ZSA8c3lzL2ludF90eXBlcy5oPiAgICAvKiB0aGlzIGV4aXN0cyBvbiBTdW4gT1MgKi8KKyNpbmNs
dWRlIDxzeXMvaW50X3R5cGVzLmg+IC8qIHRoaXMgZXhpc3RzIG9uIFN1biBPUyAqLwogI2VuZGlm
CiAjaWZkZWYgSEFWRV9NQUNISU5FX1RZUEVTX0gKLSMgaW5jbHVkZSA8bWFjaGluZS90eXBlcy5o
PgorI2luY2x1ZGUgPG1hY2hpbmUvdHlwZXMuaD4KICNlbmRpZgogCiAjaWZkZWYgX19jcGx1c3Bs
dXMKQEAgLTc0LDMxICs3MiwzMCBAQCBleHRlcm4gIkMiIHsKIAogLyogQ2FuIHdlIGRvIDY0IGJp
dCBpbnRlZ2Vycz8gKi8KICNpZiAhZGVmaW5lZChIQVZFX1VJTlQ2NF9UKQotIyBpZiBTSVpFT0Zf
VU5TSUdORURfTE9ORyA9PSA4Ci10eXBlZGVmIHVuc2lnbmVkIGxvbmcJCXVpbnQ2NF90OwotIyBl
bGlmIFNJWkVPRl9VTlNJR05FRF9MT05HX0xPTkcgPT0gOAotdHlwZWRlZiB1bnNpZ25lZCBsb25n
IGxvbmcJdWludDY0X3Q7Ci0jIGVsc2UKLSMgIGRlZmluZSBOT182NEJJVF9NQVRIIDEKLSMgZW5k
aWYKKyNpZiBTSVpFT0ZfVU5TSUdORURfTE9ORyA9PSA4Cit0eXBlZGVmIHVuc2lnbmVkIGxvbmcg
dWludDY0X3Q7CisjZWxpZiBTSVpFT0ZfVU5TSUdORURfTE9OR19MT05HID09IDgKK3R5cGVkZWYg
dW5zaWduZWQgbG9uZyBsb25nIHVpbnQ2NF90OworI2Vsc2UKKyNkZWZpbmUgTk9fNjRCSVRfTUFU
SCAxCisjZW5kaWYKICNlbmRpZgogCiAvKiBSZWFzb25hYmxlIGRlZmF1bHRzIGZvciAzMiBiaXQg
bWFjaGluZXMgLSB5b3UgbWF5IG5lZWQgdG8KICAqIGVkaXQgdGhlc2UgZGVmaW5pdGlvbnMgZm9y
IHlvdXIgb3duIG1hY2hpbmUuICovCiAjaWZuZGVmIEhBVkVfVUlOVDhfVAotdHlwZWRlZiB1bnNp
Z25lZCBjaGFyCQl1aW50OF90OwordHlwZWRlZiB1bnNpZ25lZCBjaGFyIHVpbnQ4X3Q7CiAjZW5k
aWYKICNpZm5kZWYgSEFWRV9VSU5UMTZfVAotdHlwZWRlZiB1bnNpZ25lZCBzaG9ydCBpbnQJdWlu
dDE2X3Q7Cit0eXBlZGVmIHVuc2lnbmVkIHNob3J0IGludCB1aW50MTZfdDsKICNlbmRpZgogI2lm
bmRlZiBIQVZFX1VJTlQzMl9UCi10eXBlZGVmIHVuc2lnbmVkIGludAkJdWludDMyX3Q7Cit0eXBl
ZGVmIHVuc2lnbmVkIGludCB1aW50MzJfdDsKICNlbmRpZgogI2lmbmRlZiBIQVZFX0lOVDMyX1QK
IHR5cGVkZWYgaW50IGludDMyX3Q7CiAjZW5kaWYKIAotCiAjaWYgZGVmaW5lZChOT182NEJJVF9N
QVRIKSAmJiBkZWZpbmVkKEhBVkVfQ09ORklHX0gpCiB0eXBlZGVmIGRvdWJsZSB1aW50NjRfdDsK
IC8qIGFzc2VydCB0aGF0IHNpemVvZihkb3VibGUpID09IDggKi8KQEAgLTEwNywzOSArMTA0LDM4
IEBAIGV4dGVybiB1aW50MzJfdCBoaWdoMzIodWludDY0X3QgdmFsdWUpOwogZXh0ZXJuIHVpbnQz
Ml90IGxvdzMyKHVpbnQ2NF90IHZhbHVlKTsKICNlbmRpZgogCi0KIC8qIFRoZXNlIG1hY3JvcyBh
cmUgdG8gbG9hZCBhbmQgc3RvcmUgMzItYml0IHZhbHVlcyBmcm9tIHVuLWFsaWduZWQKICAgIGFk
ZHJlc3Nlcy4gIFRoaXMgaXMgcmVxdWlyZWQgZm9yIHByb2Nlc3NvcnMgdGhhdCBkbyBub3QgYWxs
b3cgdW5hbGlnbmVkCiAgICBsb2Fkcy4gKi8KICNpZmRlZiBBTElHTk1FTlRfMzJCSVRfUkVRVUlS
RUQKIC8qIE5vdGUgdGhhdCBpZiBpdCdzIGluIGEgdmFyaWFibGUsIHlvdSBjYW4gbWVtY3B5IGl0
ICovCiAjaWZkZWYgV09SRFNfQklHRU5ESUFOCi0jZGVmaW5lIFBVVF8zMihhZGRyLHZhbHVlKSBc
Ci0gICAgeyBcCi0gICAgICAgICgodW5zaWduZWQgY2hhciAqKSAoYWRkcikpWzBdID0gKHZhbHVl
ID4+IDI0KTsgXAotICAgICAgICAoKHVuc2lnbmVkIGNoYXIgKikgKGFkZHIpKVsxXSA9ICh2YWx1
ZSA+PiAxNikgJiAweGZmOyBcCi0gICAgICAgICgodW5zaWduZWQgY2hhciAqKSAoYWRkcikpWzJd
ID0gKHZhbHVlID4+IDgpICYgMHhmZjsgXAotICAgICAgICAoKHVuc2lnbmVkIGNoYXIgKikgKGFk
ZHIpKVszXSA9ICh2YWx1ZSkgICAgICAmIDB4ZmY7IFwKKyNkZWZpbmUgUFVUXzMyKGFkZHIsIHZh
bHVlKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBc
CisgICAgeyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICAoKHVuc2lnbmVkIGNoYXIgKikoYWRk
cikpWzBdID0gKHZhbHVlID4+IDI0KTsgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAg
ICAgKCh1bnNpZ25lZCBjaGFyICopKGFkZHIpKVsxXSA9ICh2YWx1ZSA+PiAxNikgJiAweGZmOyAg
ICAgICAgICAgICAgICAgICBcCisgICAgICAgICgodW5zaWduZWQgY2hhciAqKShhZGRyKSlbMl0g
PSAodmFsdWUgPj4gOCkgJiAweGZmOyAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICAoKHVu
c2lnbmVkIGNoYXIgKikoYWRkcikpWzNdID0gKHZhbHVlKSYweGZmOyAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFwKICAgICB9Ci0jZGVmaW5lIEdFVF8zMihhZGRyKSAoKCgodW5zaWduZWQgY2hh
ciAqKSAoYWRkcikpWzBdIDw8IDI0KSB8ICBcCi0gICAgICAgICAgICAgICAgICAgICAgKCgodW5z
aWduZWQgY2hhciAqKSAoYWRkcikpWzFdIDw8IDE2KSB8ICBcCi0gICAgICAgICAgICAgICAgICAg
ICAgKCgodW5zaWduZWQgY2hhciAqKSAoYWRkcikpWzJdIDw8IDgpICB8ICBcCi0gICAgICAgICAg
ICAgICAgICAgICAgKCgodW5zaWduZWQgY2hhciAqKSAoYWRkcikpWzNdKSkgCisjZGVmaW5lIEdF
VF8zMihhZGRyKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgXAorICAgICgoKCh1bnNpZ25lZCBjaGFyICopKGFkZHIpKVswXSA8PCAyNCkg
fCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgKCgodW5zaWduZWQg
Y2hhciAqKShhZGRyKSlbMV0gPDwgMTYpIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBcCisgICAgICgoKHVuc2lnbmVkIGNoYXIgKikoYWRkcikpWzJdIDw8IDgpIHwgKCgodW5z
aWduZWQgY2hhciAqKShhZGRyKSlbM10pKQogI2Vsc2UKLSNkZWZpbmUgUFVUXzMyKGFkZHIsdmFs
dWUpIFwKLSAgICB7IFwKLSAgICAgICAgKCh1bnNpZ25lZCBjaGFyICopIChhZGRyKSlbM10gPSAo
dmFsdWUgPj4gMjQpOyBcCi0gICAgICAgICgodW5zaWduZWQgY2hhciAqKSAoYWRkcikpWzJdID0g
KHZhbHVlID4+IDE2KSAmIDB4ZmY7IFwKLSAgICAgICAgKCh1bnNpZ25lZCBjaGFyICopIChhZGRy
KSlbMV0gPSAodmFsdWUgPj4gOCkgJiAweGZmOyBcCi0gICAgICAgICgodW5zaWduZWQgY2hhciAq
KSAoYWRkcikpWzBdID0gKHZhbHVlKSAgICAgICYgMHhmZjsgXAorI2RlZmluZSBQVVRfMzIoYWRk
ciwgdmFsdWUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFwKKyAgICB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgICgodW5zaWduZWQgY2hhciAq
KShhZGRyKSlbM10gPSAodmFsdWUgPj4gMjQpOyAgICAgICAgICAgICAgICAgICAgICAgICAgXAor
ICAgICAgICAoKHVuc2lnbmVkIGNoYXIgKikoYWRkcikpWzJdID0gKHZhbHVlID4+IDE2KSAmIDB4
ZmY7ICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgKCh1bnNpZ25lZCBjaGFyICopKGFkZHIp
KVsxXSA9ICh2YWx1ZSA+PiA4KSAmIDB4ZmY7ICAgICAgICAgICAgICAgICAgICBcCisgICAgICAg
ICgodW5zaWduZWQgY2hhciAqKShhZGRyKSlbMF0gPSAodmFsdWUpJjB4ZmY7ICAgICAgICAgICAg
ICAgICAgICAgICAgICAgXAogICAgIH0KLSNkZWZpbmUgR0VUXzMyKGFkZHIpICgoKCh1bnNpZ25l
ZCBjaGFyICopIChhZGRyKSlbM10gPDwgMjQpIHwgIFwKLSAgICAgICAgICAgICAgICAgICAgICAo
KCh1bnNpZ25lZCBjaGFyICopIChhZGRyKSlbMl0gPDwgMTYpIHwgIFwKLSAgICAgICAgICAgICAg
ICAgICAgICAoKCh1bnNpZ25lZCBjaGFyICopIChhZGRyKSlbMV0gPDwgOCkgIHwgIFwKLSAgICAg
ICAgICAgICAgICAgICAgICAoKCh1bnNpZ25lZCBjaGFyICopIChhZGRyKSlbMF0pKSAKKyNkZWZp
bmUgR0VUXzMyKGFkZHIpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBcCisgICAgKCgoKHVuc2lnbmVkIGNoYXIgKikoYWRkcikpWzNdIDw8
IDI0KSB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAoKCh1bnNp
Z25lZCBjaGFyICopKGFkZHIpKVsyXSA8PCAxNikgfCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFwKKyAgICAgKCgodW5zaWduZWQgY2hhciAqKShhZGRyKSlbMV0gPDwgOCkgfCAo
KCh1bnNpZ25lZCBjaGFyICopKGFkZHIpKVswXSkpCiAjZW5kaWYgLy8gV09SRFNfQklHRU5ESUFO
CiAjZWxzZQotI2RlZmluZSBQVVRfMzIoYWRkcix2YWx1ZSkgKigoKHVpbnQzMl90ICopIChhZGRy
KSkgPSAodmFsdWUpCisjZGVmaW5lIFBVVF8zMihhZGRyLCB2YWx1ZSkgKigoKHVpbnQzMl90ICop
IChhZGRyKSkgPSAodmFsdWUpCiAjZGVmaW5lIEdFVF8zMihhZGRyKSAoKigoKHVpbnQzMl90ICop
IChhZGRyKSkpCiAjZW5kaWYKIApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9pbmNsdWRlL2tleS5oIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0
by9pbmNsdWRlL2tleS5oCmluZGV4IDU1YmExMjY0MzVkNzMzMzVmMTA5NDA1YTE4MGNkZWFkOGI1
YmUzZmMuLjM0OTgxMTRiMDUwMmE1NTZjYjVkZjcyMGUwOWU5Yzg0Y2M0ZDQwY2UgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0
cC9jcnlwdG8vaW5jbHVkZS9rZXkuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2luY2x1ZGUva2V5LmgKQEAgLTQ1LDcg
KzQ1LDcgQEAKICNpZm5kZWYgS0VZX0gKICNkZWZpbmUgS0VZX0gKIAotI2luY2x1ZGUgInJkYngu
aCIgICAvKiBmb3Igc3J0cF94dGRfc2VxX251bV90ICovCisjaW5jbHVkZSAicmRieC5oIiAvKiBm
b3Igc3J0cF94dGRfc2VxX251bV90ICovCiAjaW5jbHVkZSAiZXJyLmgiCiAKICNpZmRlZiBfX2Nw
bHVzcGx1cwpAQCAtNjAsOSArNjAsMTEgQEAgdHlwZWRlZiBlbnVtIHsKICAgICBzcnRwX2tleV9l
dmVudF9oYXJkX2xpbWl0CiB9IHNydHBfa2V5X2V2ZW50X3Q7CiAKLXNydHBfZXJyX3N0YXR1c190
IHNydHBfa2V5X2xpbWl0X3NldChzcnRwX2tleV9saW1pdF90IGtleSwgY29uc3Qgc3J0cF94dGRf
c2VxX251bV90IHMpOworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9rZXlfbGltaXRfc2V0KHNydHBf
a2V5X2xpbWl0X3Qga2V5LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNv
bnN0IHNydHBfeHRkX3NlcV9udW1fdCBzKTsKIAotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9rZXlf
bGltaXRfY2xvbmUoc3J0cF9rZXlfbGltaXRfdCBvcmlnaW5hbCwgc3J0cF9rZXlfbGltaXRfdCAq
bmV3X2tleSk7CitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2tleV9saW1pdF9jbG9uZShzcnRwX2tl
eV9saW1pdF90IG9yaWdpbmFsLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgc3J0cF9rZXlfbGltaXRfdCAqbmV3X2tleSk7CiAKIHNydHBfZXJyX3N0YXR1c190IHNydHBf
a2V5X2xpbWl0X2NoZWNrKGNvbnN0IHNydHBfa2V5X2xpbWl0X3Qga2V5KTsKIApkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRw
L2NyeXB0by9pbmNsdWRlL251bGxfY2lwaGVyLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2luY2x1ZGUvbnVsbF9jaXBoZXIu
aAppbmRleCA0ZTE2OGYxYTc3MmY0NGVlYmY3NThhNjI4ZWZmMjJmMzBlNmFmMmYyLi41ZThjOTFj
MTM0OTEzOWEwMDRiNTMzYWIzYmFmZTBhNDBhYmEwMTJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2luY2x1
ZGUvbnVsbF9jaXBoZXIuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2luY2x1ZGUvbnVsbF9jaXBoZXIuaApAQCAtNDQs
NyArNDQsNiBAQAogICoKICAqLwogCi0KICNpZm5kZWYgTlVMTF9DSVBIRVJfSAogI2RlZmluZSBO
VUxMX0NJUEhFUl9ICiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vaW5jbHVkZS9yZGIuaCBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vaW5j
bHVkZS9yZGIuaAppbmRleCA0NjcxYTBhMGQ5OGI1ZTNmNDM2Yjk1MjQyZDU4MGJiNjM2ZTUxNzA5
Li45ODMxNGMxZjNlZTA0OTIyMjAxNzg3NzU4NTEyYzRiNTNmMjcwZmUwIDEwMDY0NAotLS0gYS9T
b3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5
cHRvL2luY2x1ZGUvcmRiLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9pbmNsdWRlL3JkYi5oCkBAIC03LDI4ICs3LDI3
IEBACiAgKiBDaXNjbyBTeXN0ZW1zLCBJbmMuCiAgKi8KIAotCiAvKgotICoJCisgKgogICogQ29w
eXJpZ2h0IChjKSAyMDAxLTIwMTcsIENpc2NvIFN5c3RlbXMsIEluYy4KICAqIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCi0gKiAKKyAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwogICogYXJlIG1l
dDoKLSAqIAorICoKICAqICAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKICAqICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogCisgKgogICogICBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCiAgKiAgIGNv
cHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
CiAgKiAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVy
aWFscyBwcm92aWRlZAogICogICB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKiAKKyAqCiAgKiAg
IE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIENpc2NvIFN5c3RlbXMsIEluYy4gbm9yIHRoZSBuYW1l
cyBvZiBpdHMKICAqICAgY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJv
bW90ZSBwcm9kdWN0cyBkZXJpdmVkCiAgKiAgIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNw
ZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLSAqIAorICoKICAqIFRISVMgU09GVFdB
UkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMK
ICAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVE
SU5HLCBCVVQgTk9UCiAgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1F
UkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUwpAQCAtNDcsOSArNDYsOSBAQAogI2lmbmRlZiBSRVBM
QVlfREJfSAogI2RlZmluZSBSRVBMQVlfREJfSAogCi0jaW5jbHVkZSAiaW50ZWdlcnMuaCIgICAg
ICAgICAvKiBmb3IgdWludDMyX3QgICAgICovCi0jaW5jbHVkZSAiZGF0YXR5cGVzLmgiICAgICAg
ICAvKiBmb3IgdjEyOF90ICAgICAgICovCi0jaW5jbHVkZSAiZXJyLmgiICAgICAgICAgICAgICAv
KiBmb3Igc3J0cF9lcnJfc3RhdHVzX3QgKi8KKyNpbmNsdWRlICJpbnRlZ2Vycy5oIiAgLyogZm9y
IHVpbnQzMl90ICAgICAqLworI2luY2x1ZGUgImRhdGF0eXBlcy5oIiAvKiBmb3IgdjEyOF90ICAg
ICAgICovCisjaW5jbHVkZSAiZXJyLmgiICAgICAgIC8qIGZvciBzcnRwX2Vycl9zdGF0dXNfdCAq
LwogCiAjaWZkZWYgX19jcGx1c3BsdXMKIGV4dGVybiAiQyIgewpAQCAtNzYsNyArNzUsNiBAQCB0
eXBlZGVmIHN0cnVjdCB7CiAgKi8KIHNydHBfZXJyX3N0YXR1c190IHNydHBfcmRiX2luaXQoc3J0
cF9yZGJfdCAqcmRiKTsKIAotCiAvKgogICogc3J0cF9yZGJfY2hlY2sKICAqCkBAIC0xMDMsNyAr
MTAxLDYgQEAgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9yZGJfYWRkX2luZGV4KHNydHBfcmRiX3Qg
KnJkYiwgdWludDMyX3QgcmRiX2luZGV4KTsKICAqIHNydHBfcmRiX3QgdXBvbiB3aGljaCBzcnRw
X3JkYl9hZGRfaW5kZXggaXMgdXNlZCEKICAqLwogCi0KIC8qCiAgKiBzcnRwX3JkYl9pbmNyZW1l
bnQoZGIpIGluY3JlbWVudHMgdGhlIHNlcXVlbmNlIG51bWJlciBpbiBkYiwgaWYgaXQgaXMKICAq
IG5vdCB0b28gaGlnaApAQCAtMTIxLDcgKzExOCw2IEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBf
cmRiX2luY3JlbWVudChzcnRwX3JkYl90ICpyZGIpOwogICovCiB1aW50MzJfdCBzcnRwX3JkYl9n
ZXRfdmFsdWUoY29uc3Qgc3J0cF9yZGJfdCAqcmRiKTsKIAotCiAjaWZkZWYgX19jcGx1c3BsdXMK
IH0KICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9pbmNsdWRlL3JkYnguaCBiL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vaW5jbHVk
ZS9yZGJ4LmgKaW5kZXggMDEwZWIwMTJkNzc0N2I3MDEyYmQ3ZTNiZWEwMWRkNGNhNzY3MTlhYi4u
MjE5NDE3OGVlMmFiM2Y0Y2M5ODBhMGFmODFjMzc1ZDMyODc5Y2U4OCAxMDA2NDQKLS0tIGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0
by9pbmNsdWRlL3JkYnguaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2luY2x1ZGUvcmRieC5oCkBAIC05LDI2ICs5LDI2
IEBACiAgKi8KIAogLyoKLSAqCQorICoKICAqIENvcHlyaWdodCAoYykgMjAwMS0yMDE3LCBDaXNj
byBTeXN0ZW1zLCBJbmMuCiAgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICogCisgKgogICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKICAqIGFyZSBtZXQ6Ci0gKiAKKyAqCiAgKiAgIFJlZGlzdHJp
YnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CiAg
KiAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KLSAqIAorICoKICAqICAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQogICogICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwogICogICBkaXNjbGFpbWVyIGluIHRoZSBk
b2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQKICAqICAgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgotICogCisgKgogICogICBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBD
aXNjbyBTeXN0ZW1zLCBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCiAgKiAgIGNvbnRyaWJ1dG9y
cyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZAogICog
ICBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1p
c3Npb24uCi0gKiAKKyAqCiAgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZ
UklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCiAgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAogICogTElNSVRFRCBU
TywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MK
QEAgLTU4LDEwICs1OCwxMCBAQCBleHRlcm4gIkMiIHsKIAogI2lmbmRlZiBST0NfVEVTVAogCi10
eXBlZGVmIHVpbnQxNl90IHNydHBfc2VxdWVuY2VfbnVtYmVyX3Q7ICAgLyogMTYgYml0IHNlcXVl
bmNlIG51bWJlciAgKi8KLXR5cGVkZWYgdWludDMyX3Qgc3J0cF9yb2xsb3Zlcl9jb3VudGVyX3Q7
ICAvKiAzMiBiaXQgcm9sbG92ZXIgY291bnRlciAqLwordHlwZWRlZiB1aW50MTZfdCBzcnRwX3Nl
cXVlbmNlX251bWJlcl90OyAgLyogMTYgYml0IHNlcXVlbmNlIG51bWJlciAgKi8KK3R5cGVkZWYg
dWludDMyX3Qgc3J0cF9yb2xsb3Zlcl9jb3VudGVyX3Q7IC8qIDMyIGJpdCByb2xsb3ZlciBjb3Vu
dGVyICovCiAKLSNlbHNlICAvKiB1c2Ugc21hbGwgc2VxX251bSBhbmQgcm9jIGRhdGF0eXBlcyBm
b3IgdGVzdGluZyBwdXJwb3NlcyAqLworI2Vsc2UgLyogdXNlIHNtYWxsIHNlcV9udW0gYW5kIHJv
YyBkYXRhdHlwZXMgZm9yIHRlc3RpbmcgcHVycG9zZXMgKi8KIAogdHlwZWRlZiB1bnNpZ25lZCBj
aGFyIHNydHBfc2VxdWVuY2VfbnVtYmVyX3Q7IC8qIDggYml0IHNlcXVlbmNlIG51bWJlciAgICov
CiB0eXBlZGVmIHVpbnQxNl90IHNydHBfcm9sbG92ZXJfY291bnRlcl90OyAgICAgLyogMTYgYml0
IHJvbGxvdmVyIGNvdW50ZXIgKi8KQEAgLTY5LDcgKzY5LDcgQEAgdHlwZWRlZiB1aW50MTZfdCBz
cnRwX3JvbGxvdmVyX2NvdW50ZXJfdDsgICAgIC8qIDE2IGJpdCByb2xsb3ZlciBjb3VudGVyICov
CiAjZW5kaWYKIAogI2RlZmluZSBzZXFfbnVtX21lZGlhbiAoMSA8PCAoOCAqIHNpemVvZihzcnRw
X3NlcXVlbmNlX251bWJlcl90KSAtIDEpKQotI2RlZmluZSBzZXFfbnVtX21heCAgICAoMSA8PCAo
OCAqIHNpemVvZihzcnRwX3NlcXVlbmNlX251bWJlcl90KSkpCisjZGVmaW5lIHNlcV9udW1fbWF4
ICgxIDw8ICg4ICogc2l6ZW9mKHNydHBfc2VxdWVuY2VfbnVtYmVyX3QpKSkKIAogLyoKICAqIEFu
IHJ0cF94dGRfc2VxX251bV90IGlzIGEgNjQtYml0IHVuc2lnbmVkIGludGVnZXIgdXNlZCBhcyBh
biAnZXh0ZW5kZWQnCkBAIC03Nyw3ICs3Nyw2IEBAIHR5cGVkZWYgdWludDE2X3Qgc3J0cF9yb2xs
b3Zlcl9jb3VudGVyX3Q7ICAgICAvKiAxNiBiaXQgcm9sbG92ZXIgY291bnRlciAqLwogICovCiB0
eXBlZGVmIHVpbnQ2NF90IHNydHBfeHRkX3NlcV9udW1fdDsKIAotCiAvKgogICogQW4gc3J0cF9y
ZGJ4X3QgaXMgYSByZXBsYXkgZGF0YWJhc2Ugd2l0aCBleHRlbmRlZCByYW5nZTsgaXQgdXNlcyBh
bgogICogeHRkX3NlcV9udW1fdCBhbmQgYSBiaXRtYXNrIG9mIHJlY2VudGx5IHJlY2VpdmVkIGlu
ZGljZXMuCkBAIC04Nyw3ICs4Niw2IEBAIHR5cGVkZWYgc3RydWN0IHsKICAgICBiaXR2ZWN0b3Jf
dCBiaXRtYXNrOwogfSBzcnRwX3JkYnhfdDsKIAotCiAvKgogICogc3J0cF9yZGJ4X2luaXQocmRi
eF9wdHIsIHdzKQogICoKQEAgLTk2LDcgKzk0LDYgQEAgdHlwZWRlZiBzdHJ1Y3QgewogICovCiBz
cnRwX2Vycl9zdGF0dXNfdCBzcnRwX3JkYnhfaW5pdChzcnRwX3JkYnhfdCAqcmRieCwgdW5zaWdu
ZWQgbG9uZyB3cyk7CiAKLQogLyoKICAqIHNydHBfcmRieF9kZWFsbG9jKHJkYnhfcHRyKQogICoK
QEAgLTEwNCw3ICsxMDEsNiBAQCBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3JkYnhfaW5pdChzcnRw
X3JkYnhfdCAqcmRieCwgdW5zaWduZWQgbG9uZyB3cyk7CiAgKi8KIHNydHBfZXJyX3N0YXR1c190
IHNydHBfcmRieF9kZWFsbG9jKHNydHBfcmRieF90ICpyZGJ4KTsKIAotCiAvKgogICogc3J0cF9y
ZGJ4X2VzdGltYXRlX2luZGV4KHJkYngsIGd1ZXNzLCBzKQogICoKQEAgLTExMyw3ICsxMDksOSBA
QCBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3JkYnhfZGVhbGxvYyhzcnRwX3JkYnhfdCAqcmRieCk7
CiAgKiBpbmRleCB0byB3aGljaCBzIGNvcnJlc3BvbmRzLCBhbmQgcmV0dXJucyB0aGUgZGlmZmVy
ZW5jZSBiZXR3ZWVuCiAgKiAqZ3Vlc3MgYW5kIHRoZSBsb2NhbGx5IHN0b3JlZCBzeW5jaCBpbmZv
CiAgKi8KLWludDMyX3Qgc3J0cF9yZGJ4X2VzdGltYXRlX2luZGV4KGNvbnN0IHNydHBfcmRieF90
ICpyZGJ4LCBzcnRwX3h0ZF9zZXFfbnVtX3QgKmd1ZXNzLCBzcnRwX3NlcXVlbmNlX251bWJlcl90
IHMpOworaW50MzJfdCBzcnRwX3JkYnhfZXN0aW1hdGVfaW5kZXgoY29uc3Qgc3J0cF9yZGJ4X3Qg
KnJkYngsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcnRwX3h0ZF9zZXFfbnVt
X3QgKmd1ZXNzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF9zZXF1ZW5j
ZV9udW1iZXJfdCBzKTsKIAogLyoKICAqIHNydHBfcmRieF9jaGVjayhyZGJ4LCBkZWx0YSk7CkBA
IC0xMzYsNyArMTM0LDYgQEAgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9yZGJ4X2NoZWNrKGNvbnN0
IHNydHBfcmRieF90ICpyZGJ4LCBpbnQgZGlmZmVyZW5jZSk7CiAgKi8KIHNydHBfZXJyX3N0YXR1
c190IHNydHBfcmRieF9hZGRfaW5kZXgoc3J0cF9yZGJ4X3QgKnJkYngsIGludCBkZWx0YSk7CiAK
LQogLyoKICAqIHNydHBfcmRieF9zZXRfcm9jKHJkYngsIHJvYykgaW5pdGFsaXplcyB0aGUgc3J0
cF9yZGJ4X3QgYXQgdGhlIGxvY2F0aW9uIHJkYngKICAqIHRvIGhhdmUgdGhlIHJvbGxvdmVyIGNv
dW50ZXIgdmFsdWUgcm9jLiAgSWYgdGhhdCB2YWx1ZSBpcyBsZXNzIHRoYW4KQEAgLTE0Nyw3ICsx
NDQsOCBAQCBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3JkYnhfYWRkX2luZGV4KHNydHBfcmRieF90
ICpyZGJ4LCBpbnQgZGVsdGEpOwogc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9yZGJ4X3NldF9yb2Mo
c3J0cF9yZGJ4X3QgKnJkYngsIHVpbnQzMl90IHJvYyk7CiAKIC8qCi0gKiBzcnRwX3JkYnhfZ2V0
X3BhY2tldF9pbmRleChyZGJ4KSByZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgcm9sbG92ZXIgY291
bnRlciBmb3IKKyAqIHNydHBfcmRieF9nZXRfcGFja2V0X2luZGV4KHJkYngpIHJldHVybnMgdGhl
IHZhbHVlIG9mIHRoZSByb2xsb3ZlciBjb3VudGVyCisgKiBmb3IKICAqIHRoZSBzcnRwX3JkYnhf
dCBwb2ludGVkIHRvIGJ5IHJkYngKICAqCiAgKi8KQEAgLTE2NiwxNCArMTY0LDEyIEBAIHNydHBf
eHRkX3NlcV9udW1fdCBzcnRwX3JkYnhfZ2V0X3BhY2tldF9pbmRleChjb25zdCBzcnRwX3JkYnhf
dCAqcmRieCk7CiAgKi8KIHVuc2lnbmVkIGxvbmcgc3J0cF9yZGJ4X2dldF93aW5kb3dfc2l6ZShj
b25zdCBzcnRwX3JkYnhfdCAqcmRieCk7CiAKLQogLyogaW5kZXhfaW5pdCgmcGkpIGluaXRpYWxp
emVzIGEgcGFja2V0IGluZGV4IHBpIChzZXRzIGl0IHRvIHplcm8pICovCiB2b2lkIHNydHBfaW5k
ZXhfaW5pdChzcnRwX3h0ZF9zZXFfbnVtX3QgKnBpKTsKIAogLyogaW5kZXhfYWR2YW5jZSgmcGks
IHMpIGFkdmFuY2VzIGEgeHRkX3NlcV9udW1fdCBmb3J3YXJkIGJ5IHMgKi8KIHZvaWQgc3J0cF9p
bmRleF9hZHZhbmNlKHNydHBfeHRkX3NlcV9udW1fdCAqcGksIHNydHBfc2VxdWVuY2VfbnVtYmVy
X3Qgcyk7CiAKLQogLyoKICAqIHNydHBfaW5kZXhfZ3Vlc3MobG9jYWwsIGd1ZXNzLCBzKQogICoK
QEAgLTE4Myw3ICsxNzksOSBAQCB2b2lkIHNydHBfaW5kZXhfYWR2YW5jZShzcnRwX3h0ZF9zZXFf
bnVtX3QgKnBpLCBzcnRwX3NlcXVlbmNlX251bWJlcl90IHMpOwogICogZ3Vlc3Mgb2YgdGhlIHBh
Y2tldCBpbmRleCB0byB3aGljaCBzIGNvcnJlc3BvbmRzLCBhbmQgcmV0dXJucyB0aGUKICAqIGRp
ZmZlcmVuY2UgYmV0d2VlbiAqZ3Vlc3MgYW5kICpsb2NhbAogICovCi1pbnQzMl90IHNydHBfaW5k
ZXhfZ3Vlc3MoY29uc3Qgc3J0cF94dGRfc2VxX251bV90ICpsb2NhbCwgc3J0cF94dGRfc2VxX251
bV90ICpndWVzcywgc3J0cF9zZXF1ZW5jZV9udW1iZXJfdCBzKTsKK2ludDMyX3Qgc3J0cF9pbmRl
eF9ndWVzcyhjb25zdCBzcnRwX3h0ZF9zZXFfbnVtX3QgKmxvY2FsLAorICAgICAgICAgICAgICAg
ICAgICAgICAgIHNydHBfeHRkX3NlcV9udW1fdCAqZ3Vlc3MsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgc3J0cF9zZXF1ZW5jZV9udW1iZXJfdCBzKTsKIAogLyoKICAqIHNydHBfcmRieF9nZXRf
cm9jKHJkYngpCkBAIC0yMDAsOSArMTk4LDkgQEAgdWludDMyX3Qgc3J0cF9yZGJ4X2dldF9yb2Mo
Y29uc3Qgc3J0cF9yZGJ4X3QgKnJkYngpOwogICogcm9sbG92ZXIgY291bnRlciB2YWx1ZSwgdGhl
biB0aGUgZnVuY3Rpb24gcmV0dXJucwogICogc3J0cF9lcnJfc3RhdHVzX3JlcGxheV9vbGQsIG90
aGVyd2lzZSwgc3J0cF9lcnJfc3RhdHVzX29rIGlzIHJldHVybmVkLgogICovCi1zcnRwX2Vycl9z
dGF0dXNfdCBzcnRwX3JkYnhfc2V0X3JvY19zZXEgKHNydHBfcmRieF90ICpyZGJ4LAotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCByb2MsCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQxNl90IHNlcSk7CitzcnRwX2Vy
cl9zdGF0dXNfdCBzcnRwX3JkYnhfc2V0X3JvY19zZXEoc3J0cF9yZGJ4X3QgKnJkYngsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3Qgcm9jLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQxNl90IHNlcSk7CiAKICNpZmRl
ZiBfX2NwbHVzcGx1cwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9pbmNsdWRlL3N0YXQuaCBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8v
aW5jbHVkZS9zdGF0LmgKaW5kZXggZThjZjM2MDVhODYwMTgwMjEzNDhhNjJmNzIwZTQ4MzczNDcy
NzczNC4uMTg5NGUwNDFhYTdjMzQyYzA0ZjE5ODk5YWEzMTAyYjU0ZTQ1MWFhYSAxMDA2NDQKLS0t
IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRw
L2NyeXB0by9pbmNsdWRlL3N0YXQuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMv
U291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2luY2x1ZGUvc3RhdC5oCkBAIC0xLDYg
KzEsNiBAQAogLyoKICAqIHN0YXRzLmgKLSAqIAorICoKICAqIGludGVyZmFjZSB0byBzdGF0aXN0
aWNhbCB0ZXN0IGZ1bmN0aW9ucwogICoKICAqIERhdmlkIEEuIE1jR3JldwpAQCAtOCwyNiArOCwy
NiBAQAogICovCiAKIC8qCi0gKgkKKyAqCiAgKiBDb3B5cmlnaHQoYykgMjAwMS0yMDE3LCBDaXNj
byBTeXN0ZW1zLCBJbmMuCiAgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICogCisgKgogICogUmVk
aXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3
aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg
Zm9sbG93aW5nIGNvbmRpdGlvbnMKICAqIGFyZSBtZXQ6Ci0gKiAKKyAqCiAgKiAgIFJlZGlzdHJp
YnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CiAg
KiAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KLSAqIAorICoKICAqICAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQogICogICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwogICogICBkaXNjbGFpbWVyIGluIHRoZSBk
b2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQKICAqICAgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgotICogCisgKgogICogICBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBD
aXNjbyBTeXN0ZW1zLCBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCiAgKiAgIGNvbnRyaWJ1dG9y
cyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZAogICog
ICBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1p
c3Npb24uCi0gKiAKKyAqCiAgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZ
UklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCiAgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAogICogTElNSVRFRCBU
TywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MK
QEAgLTQzLDEyICs0MywxMSBAQAogICoKICAqLwogCi0KICNpZm5kZWYgU1RBVF9ICiAjZGVmaW5l
IFNUQVRfSAogCi0jaW5jbHVkZSAiZGF0YXR5cGVzLmgiICAgICAgIC8qIGZvciB1aW50OF90ICAg
ICAgICAgICAgICAgICAgICAgICAqLwotI2luY2x1ZGUgImVyci5oIiAgICAgICAgICAgICAvKiBm
b3Igc3J0cF9lcnJfc3RhdHVzX3QgICAgICAgICAgICAgKi8KKyNpbmNsdWRlICJkYXRhdHlwZXMu
aCIgLyogZm9yIHVpbnQ4X3QgICAgICAgICAgICAgICAgICAgICAgICovCisjaW5jbHVkZSAiZXJy
LmgiICAgICAgIC8qIGZvciBzcnRwX2Vycl9zdGF0dXNfdCAgICAgICAgICAgICAqLwogCiAjaWZk
ZWYgX19jcGx1c3BsdXMKIGV4dGVybiAiQyIgewpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9rZXJuZWwvYWxs
b2MuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGli
c3J0cC9jcnlwdG8va2VybmVsL2FsbG9jLmMKaW5kZXggY2JkODg3N2M4N2YwNTFjYWViZGMwZTUy
NzEyOTAzMTIxZmM5NWI4MS4uZGJlNTgyNjZmNDNhNjg0OWVkOTY1YWM3Zjc4N2FmZmQwZTJhODIy
MSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJzcnRwL2NyeXB0by9rZXJuZWwvYWxsb2MuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2tlcm5lbC9hbGxv
Yy5jCkBAIC0xLDMyICsxLDMyIEBACiAvKgogICogYWxsb2MuYwogICoKLSAqIG1lbW9yeSBhbGxv
Y2F0aW9uIGFuZCBkZWFsbG9jYXRpb24gCisgKiBtZW1vcnkgYWxsb2NhdGlvbiBhbmQgZGVhbGxv
Y2F0aW9uCiAgKgogICogRGF2aWQgQS4gTWNHcmV3CiAgKiBDaXNjbyBTeXN0ZW1zLCBJbmMuCiAg
Ki8KIC8qCi0gKgkKKyAqCiAgKiBDb3B5cmlnaHQgKGMpIDIwMDEtMjAxNyBDaXNjbyBTeXN0ZW1z
LCBJbmMuCiAgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICogCisgKgogICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAg
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKICAqIGFyZSBtZXQ6Ci0gKiAKKyAqCiAgKiAgIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CiAgKiAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4K
LSAqIAorICoKICAqICAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZQogICogICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZwogICogICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQKICAqICAgd2l0aCB0aGUgZGlzdHJp
YnV0aW9uLgotICogCisgKgogICogICBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBDaXNjbyBTeXN0
ZW1zLCBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCiAgKiAgIGNvbnRyaWJ1dG9ycyBtYXkgYmUg
dXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZAogICogICBmcm9tIHRo
aXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0g
KiAKKyAqCiAgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9M
REVSUyBBTkQgQ09OVFJJQlVUT1JTCiAgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBM
SUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAogICogTElNSVRFRCBUTywgVEhFIElN
UExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKQEAgLTQzLDcg
KzQzLDcgQEAKICAqLwogCiAjaWZkZWYgSEFWRV9DT05GSUdfSAotICAgICNpbmNsdWRlIDxjb25m
aWcuaD4KKyNpbmNsdWRlIDxjb25maWcuaD4KICNlbmRpZgogCiAjaW5jbHVkZSAiYWxsb2MuaCIK
QEAgLTUxLDkgKzUxLDkgQEAKIAogLyogdGhlIGRlYnVnIG1vZHVsZSBmb3IgbWVtb3J5IGFsbG9j
YXRpb24gKi8KIAotc3J0cF9kZWJ1Z19tb2R1bGVfdCBtb2RfYWxsb2MgPSB7Ci0gIDAsICAgICAg
ICAgICAgICAgICAgLyogZGVidWdnaW5nIGlzIG9mZiBieSBkZWZhdWx0ICovCi0gICJhbGxvYyIg
ICAgICAgICAgICAgLyogcHJpbnRhYmxlIG5hbWUgZm9yIG1vZHVsZSAgICovCitzcnRwX2RlYnVn
X21vZHVsZV90IHNydHBfbW9kX2FsbG9jID0geworICAgIDAsICAgICAgLyogZGVidWdnaW5nIGlz
IG9mZiBieSBkZWZhdWx0ICovCisgICAgImFsbG9jIiAvKiBwcmludGFibGUgbmFtZSBmb3IgbW9k
dWxlICAgKi8KIH07CiAKIC8qCkBAIC02NywyOSArNjcsMzUgQEAgc3J0cF9kZWJ1Z19tb2R1bGVf
dCBtb2RfYWxsb2MgPSB7CiAKICNpZiBkZWZpbmVkKEhBVkVfU1RETElCX0gpCiAKLXZvaWQgKiBz
cnRwX2NyeXB0b19hbGxvYyhzaXplX3Qgc2l6ZSkgewotICB2b2lkICpwdHI7Cit2b2lkICpzcnRw
X2NyeXB0b19hbGxvYyhzaXplX3Qgc2l6ZSkKK3sKKyAgICB2b2lkICpwdHI7CiAKLSAgcHRyID0g
bWFsbG9jKHNpemUpOwotICAgIAotICBpZiAocHRyKSB7Ci0gICAgZGVidWdfcHJpbnQobW9kX2Fs
bG9jLCAiKGxvY2F0aW9uOiAlcCkgYWxsb2NhdGVkIiwgcHRyKTsKLSAgfSBlbHNlIHsKLSAgICBk
ZWJ1Z19wcmludChtb2RfYWxsb2MsICJhbGxvY2F0aW9uIGZhaWxlZCAoYXNrZWQgZm9yICVkIGJ5
dGVzKVxuIiwgc2l6ZSk7Ci0gIH0KKyAgICBpZiAoIXNpemUpIHsKKyAgICAgICAgcmV0dXJuIE5V
TEw7CisgICAgfQogCi0gIHJldHVybiBwdHI7Ci19CisgICAgcHRyID0gY2FsbG9jKDEsIHNpemUp
OwogCi12b2lkIHNydHBfY3J5cHRvX2ZyZWUodm9pZCAqcHRyKSB7CisgICAgaWYgKHB0cikgewor
ICAgICAgICBkZWJ1Z19wcmludChzcnRwX21vZF9hbGxvYywgIihsb2NhdGlvbjogJXApIGFsbG9j
YXRlZCIsIHB0cik7CisgICAgfSBlbHNlIHsKKyAgICAgICAgZGVidWdfcHJpbnQoc3J0cF9tb2Rf
YWxsb2MsICJhbGxvY2F0aW9uIGZhaWxlZCAoYXNrZWQgZm9yICVkIGJ5dGVzKVxuIiwKKyAgICAg
ICAgICAgICAgICAgICAgc2l6ZSk7CisgICAgfQorCisgICAgcmV0dXJuIHB0cjsKK30KIAotICBk
ZWJ1Z19wcmludChtb2RfYWxsb2MsICIobG9jYXRpb246ICVwKSBmcmVlZCIsIHB0cik7Cit2b2lk
IHNydHBfY3J5cHRvX2ZyZWUodm9pZCAqcHRyKQoreworICAgIGRlYnVnX3ByaW50KHNydHBfbW9k
X2FsbG9jLCAiKGxvY2F0aW9uOiAlcCkgZnJlZWQiLCBwdHIpOwogCi0gIGZyZWUocHRyKTsKKyAg
ICBmcmVlKHB0cik7CiB9CiAKLSNlbHNlICAvKiB3ZSBuZWVkIHRvIGRlZmluZSBvdXIgb3duIG1l
bW9yeSBhbGxvY2F0aW9uIHJvdXRpbmVzICovCisjZWxzZSAvKiB3ZSBuZWVkIHRvIGRlZmluZSBv
dXIgb3duIG1lbW9yeSBhbGxvY2F0aW9uIHJvdXRpbmVzICovCiAKLSNlcnJvciBubyBtZW1vcnkg
YWxsb2NhdGlvbiBkZWZpbmVkIHlldCAKKyNlcnJvciBubyBtZW1vcnkgYWxsb2NhdGlvbiBkZWZp
bmVkIHlldAogCiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8va2VybmVsL2NyeXB0b19rZXJuZWwu
YyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0
cC9jcnlwdG8va2VybmVsL2NyeXB0b19rZXJuZWwuYwppbmRleCAzY2FmZjBlMTIzY2U5NjU1Yjkz
N2ZlOGE4ZWExYzFjMGM0MjAwYTk0Li5hYjQ0OTJlOGE2NDQ3ODA4ZDJiNTVlMGI4N2ZmYjE0Yjgx
Y2EyZTYzIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2tlcm5lbC9jcnlwdG9fa2VybmVsLmMKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0
by9rZXJuZWwvY3J5cHRvX2tlcm5lbC5jCkBAIC00Miw2MCArNDIsMjIgQEAKICAqCiAgKi8KIAot
CiAjaWZkZWYgSEFWRV9DT05GSUdfSAotICAgICNpbmNsdWRlIDxjb25maWcuaD4KKyNpbmNsdWRl
IDxjb25maWcuaD4KICNlbmRpZgogCiAjaW5jbHVkZSAiYWxsb2MuaCIKIAogI2luY2x1ZGUgImNy
eXB0b19rZXJuZWwuaCIKKyNpbmNsdWRlICJjaXBoZXJfdHlwZXMuaCIKIAogLyogdGhlIGRlYnVn
IG1vZHVsZSBmb3IgdGhlIGNyeXB0b19rZXJuZWwgKi8KIAogc3J0cF9kZWJ1Z19tb2R1bGVfdCBz
cnRwX21vZF9jcnlwdG9fa2VybmVsID0gewotICAgIDAsICAgICAgICAgICAgICAgIC8qIGRlYnVn
Z2luZyBpcyBvZmYgYnkgZGVmYXVsdCAqLwotICAgICJjcnlwdG8ga2VybmVsIiAgIC8qIHByaW50
YWJsZSBuYW1lIGZvciBtb2R1bGUgICAqLworICAgIDAsICAgICAgICAgICAgICAvKiBkZWJ1Z2dp
bmcgaXMgb2ZmIGJ5IGRlZmF1bHQgKi8KKyAgICAiY3J5cHRvIGtlcm5lbCIgLyogcHJpbnRhYmxl
IG5hbWUgZm9yIG1vZHVsZSAgICovCiB9OwogCi0vKgotICogb3RoZXIgZ2VuZXJpYyBkZWJ1ZyBt
b2R1bGVzIHRoYXQgY2FuIGJlIGluY2x1ZGVkIGluIHRoZSBrZXJuZWwKLSAqLwotCi1leHRlcm4g
c3J0cF9kZWJ1Z19tb2R1bGVfdCBzcnRwX21vZF9hdXRoOwotZXh0ZXJuIHNydHBfZGVidWdfbW9k
dWxlX3Qgc3J0cF9tb2RfY2lwaGVyOwotZXh0ZXJuIHNydHBfZGVidWdfbW9kdWxlX3QgbW9kX3N0
YXQ7Ci1leHRlcm4gc3J0cF9kZWJ1Z19tb2R1bGVfdCBtb2RfYWxsb2M7Ci0KLS8qCi0gKiBjaXBo
ZXIgdHlwZXMgdGhhdCBjYW4gYmUgaW5jbHVkZWQgaW4gdGhlIGtlcm5lbAotICovCi0KLWV4dGVy
biBzcnRwX2NpcGhlcl90eXBlX3Qgc3J0cF9udWxsX2NpcGhlcjsKLWV4dGVybiBzcnRwX2NpcGhl
cl90eXBlX3Qgc3J0cF9hZXNfaWNtXzEyODsKLWV4dGVybiBzcnRwX2NpcGhlcl90eXBlX3Qgc3J0
cF9hZXNfaWNtXzI1NjsKLSNpZmRlZiBPUEVOU1NMCi1leHRlcm4gc3J0cF9jaXBoZXJfdHlwZV90
IHNydHBfYWVzX2ljbV8xOTI7Ci1leHRlcm4gc3J0cF9jaXBoZXJfdHlwZV90IHNydHBfYWVzX2dj
bV8xMjhfb3BlbnNzbDsKLWV4dGVybiBzcnRwX2NpcGhlcl90eXBlX3Qgc3J0cF9hZXNfZ2NtXzI1
Nl9vcGVuc3NsOwotI2VuZGlmCi0KLS8qIGRlYnVnIG1vZHVsZXMgZm9yIGNpcGhlciB0eXBlcyAq
LwotZXh0ZXJuIHNydHBfZGVidWdfbW9kdWxlX3Qgc3J0cF9tb2RfYWVzX2ljbTsKLSNpZmRlZiBP
UEVOU1NMCi1leHRlcm4gc3J0cF9kZWJ1Z19tb2R1bGVfdCBzcnRwX21vZF9hZXNfZ2NtOwotI2Vu
ZGlmCi0KLS8qCi0gKiBhdXRoIGZ1bmMgdHlwZXMgdGhhdCBjYW4gYmUgaW5jbHVkZWQgaW4gdGhl
IGtlcm5lbAotICovCi0KLWV4dGVybiBzcnRwX2F1dGhfdHlwZV90IHNydHBfbnVsbF9hdXRoOwot
ZXh0ZXJuIHNydHBfYXV0aF90eXBlX3Qgc3J0cF9obWFjOwotCi0vKiBkZWJ1ZyBtb2R1bGVzIGZv
ciBhdXRoIHR5cGVzICovCi1leHRlcm4gc3J0cF9kZWJ1Z19tb2R1bGVfdCBzcnRwX21vZF9obWFj
OwotCiAvKiBjcnlwdG9fa2VybmVsIGlzIGEgZ2xvYmFsIHZhcmlhYmxlLCB0aGUgb25seSBvbmUg
b2YgaXRzIGRhdGF0eXBlICovCiAKIHNydHBfY3J5cHRvX2tlcm5lbF90IGNyeXB0b19rZXJuZWwg
PSB7CkBAIC0xMDcsMTMgKzY5LDEyIEBAIHNydHBfY3J5cHRvX2tlcm5lbF90IGNyeXB0b19rZXJu
ZWwgPSB7CiAKICNkZWZpbmUgTUFYX1JOR19UUklBTFMgMjUKIAotc3J0cF9lcnJfc3RhdHVzX3Qg
c3J0cF9jcnlwdG9fa2VybmVsX2luaXQgKCkKK3NydHBfZXJyX3N0YXR1c190IHNydHBfY3J5cHRv
X2tlcm5lbF9pbml0KCkKIHsKICAgICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7CiAKICAgICAv
KiBjaGVjayB0aGUgc2VjdXJpdHkgc3RhdGUgKi8KICAgICBpZiAoY3J5cHRvX2tlcm5lbC5zdGF0
ZSA9PSBzcnRwX2NyeXB0b19rZXJuZWxfc3RhdGVfc2VjdXJlKSB7Ci0KICAgICAgICAgLyoKICAg
ICAgICAgICogd2UncmUgYWxyZWFkeSBpbiB0aGUgc2VjdXJlIHN0YXRlLCBidXQgd2UndmUgYmVl
biBhc2tlZCB0bwogICAgICAgICAgKiByZS1pbml0aWFsaXplLCBzbyB3ZSBqdXN0IHJlLXJ1biB0
aGUgc2VsZi10ZXN0cyBhbmQgdGhlbiByZXR1cm4KQEAgLTE0MCwyNSArMTAxLDI4IEBAIHNydHBf
ZXJyX3N0YXR1c190IHNydHBfY3J5cHRvX2tlcm5lbF9pbml0ICgpCiAgICAgaWYgKHN0YXR1cykg
ewogICAgICAgICByZXR1cm4gc3RhdHVzOwogICAgIH0KLSAgICBzdGF0dXMgPSBzcnRwX2NyeXB0
b19rZXJuZWxfbG9hZF9kZWJ1Z19tb2R1bGUoJm1vZF9zdGF0KTsKKyAgICBzdGF0dXMgPSBzcnRw
X2NyeXB0b19rZXJuZWxfbG9hZF9kZWJ1Z19tb2R1bGUoJnNydHBfbW9kX3N0YXQpOwogICAgIGlm
IChzdGF0dXMpIHsKICAgICAgICAgcmV0dXJuIHN0YXR1czsKICAgICB9Ci0gICAgc3RhdHVzID0g
c3J0cF9jcnlwdG9fa2VybmVsX2xvYWRfZGVidWdfbW9kdWxlKCZtb2RfYWxsb2MpOworICAgIHN0
YXR1cyA9IHNydHBfY3J5cHRvX2tlcm5lbF9sb2FkX2RlYnVnX21vZHVsZSgmc3J0cF9tb2RfYWxs
b2MpOwogICAgIGlmIChzdGF0dXMpIHsKICAgICAgICAgcmV0dXJuIHN0YXR1czsKICAgICB9CiAK
ICAgICAvKiBsb2FkIGNpcGhlciB0eXBlcyAqLwotICAgIHN0YXR1cyA9IHNydHBfY3J5cHRvX2tl
cm5lbF9sb2FkX2NpcGhlcl90eXBlKCZzcnRwX251bGxfY2lwaGVyLCBTUlRQX05VTExfQ0lQSEVS
KTsKKyAgICBzdGF0dXMgPSBzcnRwX2NyeXB0b19rZXJuZWxfbG9hZF9jaXBoZXJfdHlwZSgmc3J0
cF9udWxsX2NpcGhlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBTUlRQX05VTExfQ0lQSEVSKTsKICAgICBpZiAoc3RhdHVzKSB7CiAgICAgICAgIHJl
dHVybiBzdGF0dXM7CiAgICAgfQotICAgIHN0YXR1cyA9IHNydHBfY3J5cHRvX2tlcm5lbF9sb2Fk
X2NpcGhlcl90eXBlKCZzcnRwX2Flc19pY21fMTI4LCBTUlRQX0FFU19JQ01fMTI4KTsKKyAgICBz
dGF0dXMgPSBzcnRwX2NyeXB0b19rZXJuZWxfbG9hZF9jaXBoZXJfdHlwZSgmc3J0cF9hZXNfaWNt
XzEyOCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBT
UlRQX0FFU19JQ01fMTI4KTsKICAgICBpZiAoc3RhdHVzKSB7CiAgICAgICAgIHJldHVybiBzdGF0
dXM7CiAgICAgfQotICAgIHN0YXR1cyA9IHNydHBfY3J5cHRvX2tlcm5lbF9sb2FkX2NpcGhlcl90
eXBlKCZzcnRwX2Flc19pY21fMjU2LCBTUlRQX0FFU19JQ01fMjU2KTsKKyAgICBzdGF0dXMgPSBz
cnRwX2NyeXB0b19rZXJuZWxfbG9hZF9jaXBoZXJfdHlwZSgmc3J0cF9hZXNfaWNtXzI1NiwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTUlRQX0FFU19J
Q01fMjU2KTsKICAgICBpZiAoc3RhdHVzKSB7CiAgICAgICAgIHJldHVybiBzdGF0dXM7CiAgICAg
fQpAQCAtMTY3LDE1ICsxMzEsMTggQEAgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fa2Vy
bmVsX2luaXQgKCkKICAgICAgICAgcmV0dXJuIHN0YXR1czsKICAgICB9CiAjaWZkZWYgT1BFTlNT
TAotICAgIHN0YXR1cyA9IHNydHBfY3J5cHRvX2tlcm5lbF9sb2FkX2NpcGhlcl90eXBlKCZzcnRw
X2Flc19pY21fMTkyLCBTUlRQX0FFU19JQ01fMTkyKTsKKyAgICBzdGF0dXMgPSBzcnRwX2NyeXB0
b19rZXJuZWxfbG9hZF9jaXBoZXJfdHlwZSgmc3J0cF9hZXNfaWNtXzE5MiwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTUlRQX0FFU19JQ01fMTkyKTsK
ICAgICBpZiAoc3RhdHVzKSB7CiAgICAgICAgIHJldHVybiBzdGF0dXM7CiAgICAgfQotICAgIHN0
YXR1cyA9IHNydHBfY3J5cHRvX2tlcm5lbF9sb2FkX2NpcGhlcl90eXBlKCZzcnRwX2Flc19nY21f
MTI4X29wZW5zc2wsIFNSVFBfQUVTX0dDTV8xMjgpOworICAgIHN0YXR1cyA9IHNydHBfY3J5cHRv
X2tlcm5lbF9sb2FkX2NpcGhlcl90eXBlKCZzcnRwX2Flc19nY21fMTI4X29wZW5zc2wsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU1JUUF9BRVNfR0NN
XzEyOCk7CiAgICAgaWYgKHN0YXR1cykgewogICAgICAgICByZXR1cm4gc3RhdHVzOwogICAgIH0K
LSAgICBzdGF0dXMgPSBzcnRwX2NyeXB0b19rZXJuZWxfbG9hZF9jaXBoZXJfdHlwZSgmc3J0cF9h
ZXNfZ2NtXzI1Nl9vcGVuc3NsLCBTUlRQX0FFU19HQ01fMjU2KTsKKyAgICBzdGF0dXMgPSBzcnRw
X2NyeXB0b19rZXJuZWxfbG9hZF9jaXBoZXJfdHlwZSgmc3J0cF9hZXNfZ2NtXzI1Nl9vcGVuc3Ns
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNSVFBf
QUVTX0dDTV8yNTYpOwogICAgIGlmIChzdGF0dXMpIHsKICAgICAgICAgcmV0dXJuIHN0YXR1czsK
ICAgICB9CkBAIC0yMDUsMTkgKzE3MiwyMSBAQCBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NyeXB0
b19rZXJuZWxfaW5pdCAoKQogICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAKLXNy
dHBfZXJyX3N0YXR1c190IHNydHBfY3J5cHRvX2tlcm5lbF9zdGF0dXMgKCkKK3NydHBfZXJyX3N0
YXR1c190IHNydHBfY3J5cHRvX2tlcm5lbF9zdGF0dXMoKQogewogICAgIHNydHBfZXJyX3N0YXR1
c190IHN0YXR1czsKLSAgICBzcnRwX2tlcm5lbF9jaXBoZXJfdHlwZV90ICAqY3R5cGUgPSBjcnlw
dG9fa2VybmVsLmNpcGhlcl90eXBlX2xpc3Q7Ci0gICAgc3J0cF9rZXJuZWxfYXV0aF90eXBlX3Qg
ICAgKmF0eXBlID0gY3J5cHRvX2tlcm5lbC5hdXRoX3R5cGVfbGlzdDsKKyAgICBzcnRwX2tlcm5l
bF9jaXBoZXJfdHlwZV90ICpjdHlwZSA9IGNyeXB0b19rZXJuZWwuY2lwaGVyX3R5cGVfbGlzdDsK
KyAgICBzcnRwX2tlcm5lbF9hdXRoX3R5cGVfdCAqYXR5cGUgPSBjcnlwdG9fa2VybmVsLmF1dGhf
dHlwZV9saXN0OwogCiAgICAgLyogZm9yIGVhY2ggY2lwaGVyIHR5cGUsIGRlc2NyaWJlIGFuZCB0
ZXN0ICovCiAgICAgd2hpbGUgKGN0eXBlICE9IE5VTEwpIHsKLSAgICAgICAgc3J0cF9lcnJfcmVw
b3J0KHNydHBfZXJyX2xldmVsX2luZm8sICJjaXBoZXI6ICVzXG4iLCBjdHlwZS0+Y2lwaGVyX3R5
cGUtPmRlc2NyaXB0aW9uKTsKKyAgICAgICAgc3J0cF9lcnJfcmVwb3J0KHNydHBfZXJyX2xldmVs
X2luZm8sICJjaXBoZXI6ICVzXG4iLAorICAgICAgICAgICAgICAgICAgICAgICAgY3R5cGUtPmNp
cGhlcl90eXBlLT5kZXNjcmlwdGlvbik7CiAgICAgICAgIHNydHBfZXJyX3JlcG9ydChzcnRwX2Vy
cl9sZXZlbF9pbmZvLCAiICBzZWxmLXRlc3Q6ICIpOwogICAgICAgICBzdGF0dXMgPSBzcnRwX2Np
cGhlcl90eXBlX3NlbGZfdGVzdChjdHlwZS0+Y2lwaGVyX3R5cGUpOwogICAgICAgICBpZiAoc3Rh
dHVzKSB7Ci0gICAgICAgICAgICBzcnRwX2Vycl9yZXBvcnQoc3J0cF9lcnJfbGV2ZWxfZXJyb3Is
ICJmYWlsZWQgd2l0aCBlcnJvciBjb2RlICVkXG4iLCBzdGF0dXMpOworICAgICAgICAgICAgc3J0
cF9lcnJfcmVwb3J0KHNydHBfZXJyX2xldmVsX2Vycm9yLCAiZmFpbGVkIHdpdGggZXJyb3IgY29k
ZSAlZFxuIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0dXMpOwogICAgICAgICAg
ICAgZXhpdChzdGF0dXMpOwogICAgICAgICB9CiAgICAgICAgIHNydHBfZXJyX3JlcG9ydChzcnRw
X2Vycl9sZXZlbF9pbmZvLCAicGFzc2VkXG4iKTsKQEAgLTIyNiwxMSArMTk1LDEzIEBAIHNydHBf
ZXJyX3N0YXR1c190IHNydHBfY3J5cHRvX2tlcm5lbF9zdGF0dXMgKCkKIAogICAgIC8qIGZvciBl
YWNoIGF1dGggdHlwZSwgZGVzY3JpYmUgYW5kIHRlc3QgKi8KICAgICB3aGlsZSAoYXR5cGUgIT0g
TlVMTCkgewotICAgICAgICBzcnRwX2Vycl9yZXBvcnQoc3J0cF9lcnJfbGV2ZWxfaW5mbywgImF1
dGggZnVuYzogJXNcbiIsIGF0eXBlLT5hdXRoX3R5cGUtPmRlc2NyaXB0aW9uKTsKKyAgICAgICAg
c3J0cF9lcnJfcmVwb3J0KHNydHBfZXJyX2xldmVsX2luZm8sICJhdXRoIGZ1bmM6ICVzXG4iLAor
ICAgICAgICAgICAgICAgICAgICAgICAgYXR5cGUtPmF1dGhfdHlwZS0+ZGVzY3JpcHRpb24pOwog
ICAgICAgICBzcnRwX2Vycl9yZXBvcnQoc3J0cF9lcnJfbGV2ZWxfaW5mbywgIiAgc2VsZi10ZXN0
OiAiKTsKICAgICAgICAgc3RhdHVzID0gc3J0cF9hdXRoX3R5cGVfc2VsZl90ZXN0KGF0eXBlLT5h
dXRoX3R5cGUpOwogICAgICAgICBpZiAoc3RhdHVzKSB7Ci0gICAgICAgICAgICBzcnRwX2Vycl9y
ZXBvcnQoc3J0cF9lcnJfbGV2ZWxfZXJyb3IsICJmYWlsZWQgd2l0aCBlcnJvciBjb2RlICVkXG4i
LCBzdGF0dXMpOworICAgICAgICAgICAgc3J0cF9lcnJfcmVwb3J0KHNydHBfZXJyX2xldmVsX2Vy
cm9yLCAiZmFpbGVkIHdpdGggZXJyb3IgY29kZSAlZFxuIiwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBzdGF0dXMpOwogICAgICAgICAgICAgZXhpdChzdGF0dXMpOwogICAgICAgICB9CiAg
ICAgICAgIHNydHBfZXJyX3JlcG9ydChzcnRwX2Vycl9sZXZlbF9pbmZvLCAicGFzc2VkXG4iKTsK
QEAgLTI0Miw3ICsyMTMsNyBAQCBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NyeXB0b19rZXJuZWxf
c3RhdHVzICgpCiAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0KIAotc3J0cF9lcnJf
c3RhdHVzX3Qgc3J0cF9jcnlwdG9fa2VybmVsX2xpc3RfZGVidWdfbW9kdWxlcyAoKQorc3J0cF9l
cnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fa2VybmVsX2xpc3RfZGVidWdfbW9kdWxlcygpCiB7CiAg
ICAgc3J0cF9rZXJuZWxfZGVidWdfbW9kdWxlX3QgKmRtID0gY3J5cHRvX2tlcm5lbC5kZWJ1Z19t
b2R1bGVfbGlzdDsKIApAQCAtMjUyLDcgKzIyMyw3IEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBf
Y3J5cHRvX2tlcm5lbF9saXN0X2RlYnVnX21vZHVsZXMgKCkKICAgICAgICAgc3J0cF9lcnJfcmVw
b3J0KHNydHBfZXJyX2xldmVsX2luZm8sICIgICVzICIsIGRtLT5tb2QtPm5hbWUpOwogICAgICAg
ICBpZiAoZG0tPm1vZC0+b24pIHsKICAgICAgICAgICAgIHNydHBfZXJyX3JlcG9ydChzcnRwX2Vy
cl9sZXZlbF9pbmZvLCAiKG9uKVxuIik7Ci0gICAgICAgIH0gZWxzZXsKKyAgICAgICAgfSBlbHNl
IHsKICAgICAgICAgICAgIHNydHBfZXJyX3JlcG9ydChzcnRwX2Vycl9sZXZlbF9pbmZvLCAiKG9m
ZilcbiIpOwogICAgICAgICB9CiAgICAgICAgIGRtID0gZG0tPm5leHQ7CkBAIC0yNjEsNyArMjMy
LDcgQEAgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fa2VybmVsX2xpc3RfZGVidWdfbW9k
dWxlcyAoKQogICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAKLXNydHBfZXJyX3N0
YXR1c190IHNydHBfY3J5cHRvX2tlcm5lbF9zaHV0ZG93biAoKQorc3J0cF9lcnJfc3RhdHVzX3Qg
c3J0cF9jcnlwdG9fa2VybmVsX3NodXRkb3duKCkKIHsKICAgICAvKgogICAgICAqIGZyZWUgZHlu
YW1pYyBtZW1vcnkgdXNlZCBpbiBjcnlwdG9fa2VybmVsIGF0IHByZXNlbnQKQEAgLTI3MSw4ICsy
NDIsNyBAQCBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NyeXB0b19rZXJuZWxfc2h1dGRvd24gKCkK
ICAgICB3aGlsZSAoY3J5cHRvX2tlcm5lbC5jaXBoZXJfdHlwZV9saXN0ICE9IE5VTEwpIHsKICAg
ICAgICAgc3J0cF9rZXJuZWxfY2lwaGVyX3R5cGVfdCAqY3R5cGUgPSBjcnlwdG9fa2VybmVsLmNp
cGhlcl90eXBlX2xpc3Q7CiAgICAgICAgIGNyeXB0b19rZXJuZWwuY2lwaGVyX3R5cGVfbGlzdCA9
IGN0eXBlLT5uZXh0OwotICAgICAgICBkZWJ1Z19wcmludChzcnRwX21vZF9jcnlwdG9fa2VybmVs
LAotICAgICAgICAgICAgICAgICAgICAiZnJlZWluZyBtZW1vcnkgZm9yIGNpcGhlciAlcyIsCisg
ICAgICAgIGRlYnVnX3ByaW50KHNydHBfbW9kX2NyeXB0b19rZXJuZWwsICJmcmVlaW5nIG1lbW9y
eSBmb3IgY2lwaGVyICVzIiwKICAgICAgICAgICAgICAgICAgICAgY3R5cGUtPmNpcGhlcl90eXBl
LT5kZXNjcmlwdGlvbik7CiAgICAgICAgIHNydHBfY3J5cHRvX2ZyZWUoY3R5cGUpOwogICAgIH0K
QEAgLTI5Miw4ICsyNjIsNyBAQCBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NyeXB0b19rZXJuZWxf
c2h1dGRvd24gKCkKICAgICAgICAgc3J0cF9rZXJuZWxfZGVidWdfbW9kdWxlX3QgKmtkbSA9IGNy
eXB0b19rZXJuZWwuZGVidWdfbW9kdWxlX2xpc3Q7CiAgICAgICAgIGNyeXB0b19rZXJuZWwuZGVi
dWdfbW9kdWxlX2xpc3QgPSBrZG0tPm5leHQ7CiAgICAgICAgIGRlYnVnX3ByaW50KHNydHBfbW9k
X2NyeXB0b19rZXJuZWwsCi0gICAgICAgICAgICAgICAgICAgICJmcmVlaW5nIG1lbW9yeSBmb3Ig
ZGVidWcgbW9kdWxlICVzIiwKLSAgICAgICAgICAgICAgICAgICAga2RtLT5tb2QtPm5hbWUpOwor
ICAgICAgICAgICAgICAgICAgICAiZnJlZWluZyBtZW1vcnkgZm9yIGRlYnVnIG1vZHVsZSAlcyIs
IGtkbS0+bW9kLT5uYW1lKTsKICAgICAgICAgc3J0cF9jcnlwdG9fZnJlZShrZG0pOwogICAgIH0K
IApAQCAtMzAzLDcgKzI3MiwxMCBAQCBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NyeXB0b19rZXJu
ZWxfc2h1dGRvd24gKCkKICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQogCi1zdGF0
aWMgaW5saW5lIHNydHBfZXJyX3N0YXR1c190IHNydHBfY3J5cHRvX2tlcm5lbF9kb19sb2FkX2Np
cGhlcl90eXBlIChjb25zdCBzcnRwX2NpcGhlcl90eXBlX3QgKm5ld19jdCwgc3J0cF9jaXBoZXJf
dHlwZV9pZF90IGlkLCBpbnQgcmVwbGFjZSkKK3N0YXRpYyBpbmxpbmUgc3J0cF9lcnJfc3RhdHVz
X3Qgc3J0cF9jcnlwdG9fa2VybmVsX2RvX2xvYWRfY2lwaGVyX3R5cGUoCisgICAgY29uc3Qgc3J0
cF9jaXBoZXJfdHlwZV90ICpuZXdfY3QsCisgICAgc3J0cF9jaXBoZXJfdHlwZV9pZF90IGlkLAor
ICAgIGludCByZXBsYWNlKQogewogICAgIHNydHBfa2VybmVsX2NpcGhlcl90eXBlX3QgKmN0eXBl
LCAqbmV3X2N0eXBlOwogICAgIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKQEAgLTMzMCwxMyAr
MzAyLDE0IEBAIHN0YXRpYyBpbmxpbmUgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fa2Vy
bmVsX2RvX2xvYWRfY2lwaGVyX3R5cGUgKGNvbnN0IHNyCiAgICAgICAgICAgICBpZiAoIXJlcGxh
Y2UpIHsKICAgICAgICAgICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJhbTsK
ICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3R5cGVfdGVz
dChuZXdfY3QsIGN0eXBlLT5jaXBoZXJfdHlwZS0+dGVzdF9kYXRhKTsKKyAgICAgICAgICAgIHN0
YXR1cyA9CisgICAgICAgICAgICAgICAgc3J0cF9jaXBoZXJfdHlwZV90ZXN0KG5ld19jdCwgY3R5
cGUtPmNpcGhlcl90eXBlLT50ZXN0X2RhdGEpOwogICAgICAgICAgICAgaWYgKHN0YXR1cykgewog
ICAgICAgICAgICAgICAgIHJldHVybiBzdGF0dXM7CiAgICAgICAgICAgICB9CiAgICAgICAgICAg
ICBuZXdfY3R5cGUgPSBjdHlwZTsKICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICB9ZWxzZSBp
ZiAobmV3X2N0ID09IGN0eXBlLT5jaXBoZXJfdHlwZSkgeworICAgICAgICB9IGVsc2UgaWYgKG5l
d19jdCA9PSBjdHlwZS0+Y2lwaGVyX3R5cGUpIHsKICAgICAgICAgICAgIHJldHVybiBzcnRwX2Vy
cl9zdGF0dXNfYmFkX3BhcmFtOwogICAgICAgICB9CiAgICAgICAgIGN0eXBlID0gY3R5cGUtPm5l
eHQ7CkBAIC0zNDUsNyArMzE4LDggQEAgc3RhdGljIGlubGluZSBzcnRwX2Vycl9zdGF0dXNfdCBz
cnRwX2NyeXB0b19rZXJuZWxfZG9fbG9hZF9jaXBoZXJfdHlwZSAoY29uc3Qgc3IKICAgICAvKiBp
ZiBub3QgZm91bmQsIHB1dCBuZXdfY3QgYXQgdGhlIGhlYWQgb2YgdGhlIGxpc3QgKi8KICAgICBp
ZiAoY3R5cGUgPT0gTlVMTCkgewogICAgICAgICAvKiBhbGxvY2F0ZSBtZW1vcnkgKi8KLSAgICAg
ICAgbmV3X2N0eXBlID0gKHNydHBfa2VybmVsX2NpcGhlcl90eXBlX3QqKXNydHBfY3J5cHRvX2Fs
bG9jKHNpemVvZihzcnRwX2tlcm5lbF9jaXBoZXJfdHlwZV90KSk7CisgICAgICAgIG5ld19jdHlw
ZSA9IChzcnRwX2tlcm5lbF9jaXBoZXJfdHlwZV90ICopc3J0cF9jcnlwdG9fYWxsb2MoCisgICAg
ICAgICAgICBzaXplb2Yoc3J0cF9rZXJuZWxfY2lwaGVyX3R5cGVfdCkpOwogICAgICAgICBpZiAo
bmV3X2N0eXBlID09IE5VTEwpIHsKICAgICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNf
YWxsb2NfZmFpbDsKICAgICAgICAgfQpAQCAtMzYyLDE3ICszMzYsMjMgQEAgc3RhdGljIGlubGlu
ZSBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NyeXB0b19rZXJuZWxfZG9fbG9hZF9jaXBoZXJfdHlw
ZSAoY29uc3Qgc3IKICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQogCi1zcnRwX2Vy
cl9zdGF0dXNfdCBzcnRwX2NyeXB0b19rZXJuZWxfbG9hZF9jaXBoZXJfdHlwZSAoY29uc3Qgc3J0
cF9jaXBoZXJfdHlwZV90ICpuZXdfY3QsIHNydHBfY2lwaGVyX3R5cGVfaWRfdCBpZCkKK3NydHBf
ZXJyX3N0YXR1c190IHNydHBfY3J5cHRvX2tlcm5lbF9sb2FkX2NpcGhlcl90eXBlKAorICAgIGNv
bnN0IHNydHBfY2lwaGVyX3R5cGVfdCAqbmV3X2N0LAorICAgIHNydHBfY2lwaGVyX3R5cGVfaWRf
dCBpZCkKIHsKICAgICByZXR1cm4gc3J0cF9jcnlwdG9fa2VybmVsX2RvX2xvYWRfY2lwaGVyX3R5
cGUobmV3X2N0LCBpZCwgMCk7CiB9CiAKLXNydHBfZXJyX3N0YXR1c190IHNydHBfcmVwbGFjZV9j
aXBoZXJfdHlwZSAoY29uc3Qgc3J0cF9jaXBoZXJfdHlwZV90ICpuZXdfY3QsIHNydHBfY2lwaGVy
X3R5cGVfaWRfdCBpZCkKK3NydHBfZXJyX3N0YXR1c190IHNydHBfcmVwbGFjZV9jaXBoZXJfdHlw
ZShjb25zdCBzcnRwX2NpcGhlcl90eXBlX3QgKm5ld19jdCwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBzcnRwX2NpcGhlcl90eXBlX2lkX3QgaWQpCiB7CiAgICAg
cmV0dXJuIHNydHBfY3J5cHRvX2tlcm5lbF9kb19sb2FkX2NpcGhlcl90eXBlKG5ld19jdCwgaWQs
IDEpOwogfQogCi1zcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NyeXB0b19rZXJuZWxfZG9fbG9hZF9h
dXRoX3R5cGUgKGNvbnN0IHNydHBfYXV0aF90eXBlX3QgKm5ld19hdCwgc3J0cF9hdXRoX3R5cGVf
aWRfdCBpZCwgaW50IHJlcGxhY2UpCitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NyeXB0b19rZXJu
ZWxfZG9fbG9hZF9hdXRoX3R5cGUoCisgICAgY29uc3Qgc3J0cF9hdXRoX3R5cGVfdCAqbmV3X2F0
LAorICAgIHNydHBfYXV0aF90eXBlX2lkX3QgaWQsCisgICAgaW50IHJlcGxhY2UpCiB7CiAgICAg
c3J0cF9rZXJuZWxfYXV0aF90eXBlX3QgKmF0eXBlLCAqbmV3X2F0eXBlOwogICAgIHNydHBfZXJy
X3N0YXR1c190IHN0YXR1czsKQEAgLTQwNSw3ICszODUsNyBAQCBzcnRwX2Vycl9zdGF0dXNfdCBz
cnRwX2NyeXB0b19rZXJuZWxfZG9fbG9hZF9hdXRoX3R5cGUgKGNvbnN0IHNydHBfYXV0aF90eXBl
X3QgKgogICAgICAgICAgICAgfQogICAgICAgICAgICAgbmV3X2F0eXBlID0gYXR5cGU7CiAgICAg
ICAgICAgICBicmVhazsKLSAgICAgICAgfWVsc2UgaWYgKG5ld19hdCA9PSBhdHlwZS0+YXV0aF90
eXBlKSB7CisgICAgICAgIH0gZWxzZSBpZiAobmV3X2F0ID09IGF0eXBlLT5hdXRoX3R5cGUpIHsK
ICAgICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtOwogICAgICAgICB9
CiAgICAgICAgIGF0eXBlID0gYXR5cGUtPm5leHQ7CkBAIC00MTQsNyArMzk0LDggQEAgc3J0cF9l
cnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fa2VybmVsX2RvX2xvYWRfYXV0aF90eXBlIChjb25zdCBz
cnRwX2F1dGhfdHlwZV90ICoKICAgICAvKiBpZiBub3QgZm91bmQsIHB1dCBuZXdfYXQgYXQgdGhl
IGhlYWQgb2YgdGhlIGxpc3QgKi8KICAgICBpZiAoYXR5cGUgPT0gTlVMTCkgewogICAgICAgICAv
KiBhbGxvY2F0ZSBtZW1vcnkgKi8KLSAgICAgICAgbmV3X2F0eXBlID0gKHNydHBfa2VybmVsX2F1
dGhfdHlwZV90KilzcnRwX2NyeXB0b19hbGxvYyhzaXplb2Yoc3J0cF9rZXJuZWxfYXV0aF90eXBl
X3QpKTsKKyAgICAgICAgbmV3X2F0eXBlID0gKHNydHBfa2VybmVsX2F1dGhfdHlwZV90ICopc3J0
cF9jcnlwdG9fYWxsb2MoCisgICAgICAgICAgICBzaXplb2Yoc3J0cF9rZXJuZWxfYXV0aF90eXBl
X3QpKTsKICAgICAgICAgaWYgKG5ld19hdHlwZSA9PSBOVUxMKSB7CiAgICAgICAgICAgICByZXR1
cm4gc3J0cF9lcnJfc3RhdHVzX2FsbG9jX2ZhaWw7CiAgICAgICAgIH0KQEAgLTQyOSwyMSArNDEw
LDIzIEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfY3J5cHRvX2tlcm5lbF9kb19sb2FkX2F1dGhf
dHlwZSAoY29uc3Qgc3J0cF9hdXRoX3R5cGVfdCAqCiAgICAgbmV3X2F0eXBlLT5pZCA9IGlkOwog
CiAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKLQogfQogCi1zcnRwX2Vycl9zdGF0dXNf
dCBzcnRwX2NyeXB0b19rZXJuZWxfbG9hZF9hdXRoX3R5cGUgKGNvbnN0IHNydHBfYXV0aF90eXBl
X3QgKm5ld19hdCwgc3J0cF9hdXRoX3R5cGVfaWRfdCBpZCkKK3NydHBfZXJyX3N0YXR1c190IHNy
dHBfY3J5cHRvX2tlcm5lbF9sb2FkX2F1dGhfdHlwZSgKKyAgICBjb25zdCBzcnRwX2F1dGhfdHlw
ZV90ICpuZXdfYXQsCisgICAgc3J0cF9hdXRoX3R5cGVfaWRfdCBpZCkKIHsKICAgICByZXR1cm4g
c3J0cF9jcnlwdG9fa2VybmVsX2RvX2xvYWRfYXV0aF90eXBlKG5ld19hdCwgaWQsIDApOwogfQog
Ci1zcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3JlcGxhY2VfYXV0aF90eXBlIChjb25zdCBzcnRwX2F1
dGhfdHlwZV90ICpuZXdfYXQsIHNydHBfYXV0aF90eXBlX2lkX3QgaWQpCitzcnRwX2Vycl9zdGF0
dXNfdCBzcnRwX3JlcGxhY2VfYXV0aF90eXBlKGNvbnN0IHNydHBfYXV0aF90eXBlX3QgKm5ld19h
dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF9hdXRoX3R5
cGVfaWRfdCBpZCkKIHsKICAgICByZXR1cm4gc3J0cF9jcnlwdG9fa2VybmVsX2RvX2xvYWRfYXV0
aF90eXBlKG5ld19hdCwgaWQsIDEpOwogfQogCi0KLWNvbnN0IHNydHBfY2lwaGVyX3R5cGVfdCAq
IHNydHBfY3J5cHRvX2tlcm5lbF9nZXRfY2lwaGVyX3R5cGUgKHNydHBfY2lwaGVyX3R5cGVfaWRf
dCBpZCkKK2NvbnN0IHNydHBfY2lwaGVyX3R5cGVfdCAqc3J0cF9jcnlwdG9fa2VybmVsX2dldF9j
aXBoZXJfdHlwZSgKKyAgICBzcnRwX2NpcGhlcl90eXBlX2lkX3QgaWQpCiB7CiAgICAgc3J0cF9r
ZXJuZWxfY2lwaGVyX3R5cGVfdCAqY3R5cGU7CiAKQEAgLTQ2MCw4ICs0NDMsMTAgQEAgY29uc3Qg
c3J0cF9jaXBoZXJfdHlwZV90ICogc3J0cF9jcnlwdG9fa2VybmVsX2dldF9jaXBoZXJfdHlwZSAo
c3J0cF9jaXBoZXJfdHlwZV8KICAgICByZXR1cm4gTlVMTDsKIH0KIAotCi1zcnRwX2Vycl9zdGF0
dXNfdCBzcnRwX2NyeXB0b19rZXJuZWxfYWxsb2NfY2lwaGVyIChzcnRwX2NpcGhlcl90eXBlX2lk
X3QgaWQsIHNydHBfY2lwaGVyX3BvaW50ZXJfdCAqY3AsIGludCBrZXlfbGVuLCBpbnQgdGFnX2xl
bikKK3NydHBfZXJyX3N0YXR1c190IHNydHBfY3J5cHRvX2tlcm5lbF9hbGxvY19jaXBoZXIoc3J0
cF9jaXBoZXJfdHlwZV9pZF90IGlkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBzcnRwX2NpcGhlcl9wb2ludGVyX3QgKmNwLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQga2V5X2xlbiwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IHRhZ19sZW4p
CiB7CiAgICAgY29uc3Qgc3J0cF9jaXBoZXJfdHlwZV90ICpjdDsKIApAQCAtNDgxLDkgKzQ2Niw3
IEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfY3J5cHRvX2tlcm5lbF9hbGxvY19jaXBoZXIgKHNy
dHBfY2lwaGVyX3R5cGVfaWRfdCBpZCwgc3J0CiAgICAgcmV0dXJuICgoY3QpLT5hbGxvYyhjcCwg
a2V5X2xlbiwgdGFnX2xlbikpOwogfQogCi0KLQotY29uc3Qgc3J0cF9hdXRoX3R5cGVfdCAqIHNy
dHBfY3J5cHRvX2tlcm5lbF9nZXRfYXV0aF90eXBlIChzcnRwX2F1dGhfdHlwZV9pZF90IGlkKQor
Y29uc3Qgc3J0cF9hdXRoX3R5cGVfdCAqc3J0cF9jcnlwdG9fa2VybmVsX2dldF9hdXRoX3R5cGUo
c3J0cF9hdXRoX3R5cGVfaWRfdCBpZCkKIHsKICAgICBzcnRwX2tlcm5lbF9hdXRoX3R5cGVfdCAq
YXR5cGU7CiAKQEAgLTUwMCw3ICs0ODMsMTAgQEAgY29uc3Qgc3J0cF9hdXRoX3R5cGVfdCAqIHNy
dHBfY3J5cHRvX2tlcm5lbF9nZXRfYXV0aF90eXBlIChzcnRwX2F1dGhfdHlwZV9pZF90IGkKICAg
ICByZXR1cm4gTlVMTDsKIH0KIAotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fa2VybmVs
X2FsbG9jX2F1dGggKHNydHBfYXV0aF90eXBlX2lkX3QgaWQsIHNydHBfYXV0aF9wb2ludGVyX3Qg
KmFwLCBpbnQga2V5X2xlbiwgaW50IHRhZ19sZW4pCitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2Ny
eXB0b19rZXJuZWxfYWxsb2NfYXV0aChzcnRwX2F1dGhfdHlwZV9pZF90IGlkLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF9hdXRoX3BvaW50ZXJf
dCAqYXAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBp
bnQga2V5X2xlbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGludCB0YWdfbGVuKQogewogICAgIGNvbnN0IHNydHBfYXV0aF90eXBlX3QgKmF0OwogCkBA
IC01MjAsMTIgKzUwNiwxMyBAQCBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NyeXB0b19rZXJuZWxf
YWxsb2NfYXV0aCAoc3J0cF9hdXRoX3R5cGVfaWRfdCBpZCwgc3J0cF9hdQogICAgIHJldHVybiAo
KGF0KS0+YWxsb2MoYXAsIGtleV9sZW4sIHRhZ19sZW4pKTsKIH0KIAotc3J0cF9lcnJfc3RhdHVz
X3Qgc3J0cF9jcnlwdG9fa2VybmVsX2xvYWRfZGVidWdfbW9kdWxlIChzcnRwX2RlYnVnX21vZHVs
ZV90ICpuZXdfZG0pCitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2NyeXB0b19rZXJuZWxfbG9hZF9k
ZWJ1Z19tb2R1bGUoCisgICAgc3J0cF9kZWJ1Z19tb2R1bGVfdCAqbmV3X2RtKQogewogICAgIHNy
dHBfa2VybmVsX2RlYnVnX21vZHVsZV90ICprZG0sICpuZXc7CiAKICAgICAvKiBkZWZlbnNpdmUg
Y29kaW5nICovCi0gICAgaWYgKG5ld19kbSA9PSBOVUxMKSB7CisgICAgaWYgKG5ld19kbSA9PSBO
VUxMIHx8IG5ld19kbS0+bmFtZSA9PSBOVUxMKSB7CiAgICAgICAgIHJldHVybiBzcnRwX2Vycl9z
dGF0dXNfYmFkX3BhcmFtOwogICAgIH0KIApAQCAtNTQwLDcgKzUyNyw4IEBAIHNydHBfZXJyX3N0
YXR1c190IHNydHBfY3J5cHRvX2tlcm5lbF9sb2FkX2RlYnVnX21vZHVsZSAoc3J0cF9kZWJ1Z19t
b2R1bGVfdCAqbmV3CiAKICAgICAvKiBwdXQgbmV3X2RtIGF0IHRoZSBoZWFkIG9mIHRoZSBsaXN0
ICovCiAgICAgLyogYWxsb2NhdGUgbWVtb3J5ICovCi0gICAgbmV3ID0gKHNydHBfa2VybmVsX2Rl
YnVnX21vZHVsZV90KilzcnRwX2NyeXB0b19hbGxvYyhzaXplb2Yoc3J0cF9rZXJuZWxfZGVidWdf
bW9kdWxlX3QpKTsKKyAgICBuZXcgPSAoc3J0cF9rZXJuZWxfZGVidWdfbW9kdWxlX3QgKilzcnRw
X2NyeXB0b19hbGxvYygKKyAgICAgICAgc2l6ZW9mKHNydHBfa2VybmVsX2RlYnVnX21vZHVsZV90
KSk7CiAgICAgaWYgKG5ldyA9PSBOVUxMKSB7CiAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0
dXNfYWxsb2NfZmFpbDsKICAgICB9CkBAIC01NTUsNyArNTQzLDcgQEAgc3J0cF9lcnJfc3RhdHVz
X3Qgc3J0cF9jcnlwdG9fa2VybmVsX2xvYWRfZGVidWdfbW9kdWxlIChzcnRwX2RlYnVnX21vZHVs
ZV90ICpuZXcKICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQogCi1zcnRwX2Vycl9z
dGF0dXNfdCBzcnRwX2NyeXB0b19rZXJuZWxfc2V0X2RlYnVnX21vZHVsZSAoY29uc3QgY2hhciAq
bmFtZSwgaW50IG9uKQorc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fa2VybmVsX3NldF9k
ZWJ1Z19tb2R1bGUoY29uc3QgY2hhciAqbmFtZSwgaW50IG9uKQogewogICAgIHNydHBfa2VybmVs
X2RlYnVnX21vZHVsZV90ICprZG07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8va2VybmVsL2Vyci5jIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2Ny
eXB0by9rZXJuZWwvZXJyLmMKaW5kZXggOWRjZWNiYWRkNWFmODc0MGY3YmMxZGE5YzM3YjkzM2Y4
ZGU0ZWM1ZC4uZjQ0MzU0OWU1YTQ0MTM2ZWYyYTAxNDE4OWFlNjdkMGYwNmQzZTdjZiAxMDA2NDQK
LS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJz
cnRwL2NyeXB0by9rZXJuZWwvZXJyLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9rZXJuZWwvZXJyLmMKQEAgLTQzLDcg
KzQzLDcgQEAKICAqLwogCiAjaWZkZWYgSEFWRV9DT05GSUdfSAotICAgICNpbmNsdWRlIDxjb25m
aWcuaD4KKyNpbmNsdWRlIDxjb25maWcuaD4KICNlbmRpZgogCiAjaW5jbHVkZSAiZXJyLmgiCkBA
IC01NCw3ICs1NCw3IEBACiAKIHN0YXRpYyBGSUxFICpzcnRwX2Vycl9maWxlID0gTlVMTDsKIAot
c3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9lcnJfcmVwb3J0aW5nX2luaXQgKCkKK3NydHBfZXJyX3N0
YXR1c190IHNydHBfZXJyX3JlcG9ydGluZ19pbml0KCkKIHsKICNpZmRlZiBFUlJfUkVQT1JUSU5H
X1NURE9VVAogICAgIHNydHBfZXJyX2ZpbGUgPSBzdGRvdXQ7CkBAIC02OSwxNSArNjksMTYgQEAg
c3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9lcnJfcmVwb3J0aW5nX2luaXQgKCkKICAgICByZXR1cm4g
c3J0cF9lcnJfc3RhdHVzX29rOwogfQogCi1zdGF0aWMgc3J0cF9lcnJfcmVwb3J0X2hhbmRsZXJf
ZnVuY190ICogc3J0cF9lcnJfcmVwb3J0X2hhbmRsZXIgPSBOVUxMOworc3RhdGljIHNydHBfZXJy
X3JlcG9ydF9oYW5kbGVyX2Z1bmNfdCAqc3J0cF9lcnJfcmVwb3J0X2hhbmRsZXIgPSBOVUxMOwog
Ci1zcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2luc3RhbGxfZXJyX3JlcG9ydF9oYW5kbGVyKHNydHBf
ZXJyX3JlcG9ydF9oYW5kbGVyX2Z1bmNfdCBmdW5jKQorc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9p
bnN0YWxsX2Vycl9yZXBvcnRfaGFuZGxlcigKKyAgICBzcnRwX2Vycl9yZXBvcnRfaGFuZGxlcl9m
dW5jX3QgZnVuYykKIHsKICAgICBzcnRwX2Vycl9yZXBvcnRfaGFuZGxlciA9IGZ1bmM7CiAgICAg
cmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0KIAotdm9pZCBzcnRwX2Vycl9yZXBvcnQgKHNy
dHBfZXJyX3JlcG9ydGluZ19sZXZlbF90IGxldmVsLCBjb25zdCBjaGFyICpmb3JtYXQsIC4uLikK
K3ZvaWQgc3J0cF9lcnJfcmVwb3J0KHNydHBfZXJyX3JlcG9ydGluZ19sZXZlbF90IGxldmVsLCBj
b25zdCBjaGFyICpmb3JtYXQsIC4uLikKIHsKICAgICB2YV9saXN0IGFyZ3M7CiAgICAgaWYgKHNy
dHBfZXJyX2ZpbGUgIT0gTlVMTCkgewpAQCAtOTEsMTIgKzkyLDEzIEBAIHZvaWQgc3J0cF9lcnJf
cmVwb3J0IChzcnRwX2Vycl9yZXBvcnRpbmdfbGV2ZWxfdCBsZXZlbCwgY29uc3QgY2hhciAqZm9y
bWF0LCAuLi4pCiAgICAgICAgIGlmICh2c25wcmludGYobXNnLCBzaXplb2YobXNnKSwgZm9ybWF0
LCBhcmdzKSA+IDApIHsKICAgICAgICAgICAgIC8qIHN0cmlwIHRyYWlsaW5nIFxuLCBjYWxsYmFj
ayBzaG91bGQgbm90IGhhdmUgb25lICovCiAgICAgICAgICAgICBzaXplX3QgbCA9IHN0cmxlbiht
c2cpOwotICAgICAgICAgICAgaWYgKGwgJiYgbXNnW2wtMV0gPT0gJ1xuJykgewotICAgICAgICAg
ICAgICAgIG1zZ1tsLTFdID0gJ1wwJzsKKyAgICAgICAgICAgIGlmIChsICYmIG1zZ1tsIC0gMV0g
PT0gJ1xuJykgeworICAgICAgICAgICAgICAgIG1zZ1tsIC0gMV0gPSAnXDAnOwogICAgICAgICAg
ICAgfQogICAgICAgICAgICAgc3J0cF9lcnJfcmVwb3J0X2hhbmRsZXIobGV2ZWwsIG1zZyk7CiAg
ICAgICAgICAgICAvKgotICAgICAgICAgICAgICogTk9URSwgbmVlZCB0byBiZSBjYXJlZnVsbCwg
dGhlcmUgaXMgYSBwb3RlbnRpYWwgdGhhdCBvY3RldF9zdHJpbmdfc2V0X3RvX3plcm8oKSBjb3Vs
ZAorICAgICAgICAgICAgICogTk9URSwgbmVlZCB0byBiZSBjYXJlZnVsbCwgdGhlcmUgaXMgYSBw
b3RlbnRpYWwgdGhhdAorICAgICAgICAgICAgICogb2N0ZXRfc3RyaW5nX3NldF90b196ZXJvKCkg
Y291bGQKICAgICAgICAgICAgICAqIGNhbGwgc3J0cF9lcnJfcmVwb3J0KCkgaW4gdGhlIGZ1dHVy
ZSwgbGVhZGluZyB0byByZWN1cnNpb24KICAgICAgICAgICAgICAqLwogICAgICAgICAgICAgb2N0
ZXRfc3RyaW5nX3NldF90b196ZXJvKG1zZywgc2l6ZW9mKG1zZykpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0
by9rZXJuZWwva2V5LmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L2xpYnNydHAvY3J5cHRvL2tlcm5lbC9rZXkuYwppbmRleCAxNDMwZjBkZjY3MDYxNjZk
ZDNiMjExMDVmYzJmNThmZjUyODAwZTJiLi4wNDY2MTk1MDQ2MWY3MmI5NDliODEzYjM3OTE0YjY3
YzAwODc1N2YyIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2tlcm5lbC9rZXkuYworKysgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL2tlcm5l
bC9rZXkuYwpAQCAtNDMsMTQgKzQzLDE1IEBACiAgKi8KIAogI2lmZGVmIEhBVkVfQ09ORklHX0gK
LSAgICAjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29uZmlnLmg+CiAjZW5kaWYKIAog
I2luY2x1ZGUgImtleS5oIgogCiAjZGVmaW5lIHNvZnRfbGltaXQgMHgxMDAwMAogCi1zcnRwX2Vy
cl9zdGF0dXNfdCBzcnRwX2tleV9saW1pdF9zZXQgKHNydHBfa2V5X2xpbWl0X3Qga2V5LCBjb25z
dCBzcnRwX3h0ZF9zZXFfbnVtX3QgcykKK3NydHBfZXJyX3N0YXR1c190IHNydHBfa2V5X2xpbWl0
X3NldChzcnRwX2tleV9saW1pdF90IGtleSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBjb25zdCBzcnRwX3h0ZF9zZXFfbnVtX3QgcykKIHsKICNpZmRlZiBOT182NEJJVF9N
QVRICiAgICAgaWYgKGhpZ2gzMihzKSA9PSAwICYmIGxvdzMyKHMpIDwgc29mdF9saW1pdCkgewpA
QCAtNjYsNyArNjcsOCBAQCBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2tleV9saW1pdF9zZXQgKHNy
dHBfa2V5X2xpbWl0X3Qga2V5LCBjb25zdCBzcnRwX3h0ZF9zZXFfbgogICAgIHJldHVybiBzcnRw
X2Vycl9zdGF0dXNfb2s7CiB9CiAKLXNydHBfZXJyX3N0YXR1c190IHNydHBfa2V5X2xpbWl0X2Ns
b25lIChzcnRwX2tleV9saW1pdF90IG9yaWdpbmFsLCBzcnRwX2tleV9saW1pdF90ICpuZXdfa2V5
KQorc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9rZXlfbGltaXRfY2xvbmUoc3J0cF9rZXlfbGltaXRf
dCBvcmlnaW5hbCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNydHBf
a2V5X2xpbWl0X3QgKm5ld19rZXkpCiB7CiAgICAgaWYgKG9yaWdpbmFsID09IE5VTEwpIHsKICAg
ICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW07CkBAIC03NSw3ICs3Nyw3IEBA
IHNydHBfZXJyX3N0YXR1c190IHNydHBfa2V5X2xpbWl0X2Nsb25lIChzcnRwX2tleV9saW1pdF90
IG9yaWdpbmFsLCBzcnRwX2tleV9saW1pCiAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsK
IH0KIAotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9rZXlfbGltaXRfY2hlY2sgKGNvbnN0IHNydHBf
a2V5X2xpbWl0X3Qga2V5KQorc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9rZXlfbGltaXRfY2hlY2so
Y29uc3Qgc3J0cF9rZXlfbGltaXRfdCBrZXkpCiB7CiAgICAgaWYgKGtleS0+c3RhdGUgPT0gc3J0
cF9rZXlfc3RhdGVfZXhwaXJlZCkgewogICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2tl
eV9leHBpcmVkOwpAQCAtODMsMTMgKzg1LDE0IEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfa2V5
X2xpbWl0X2NoZWNrIChjb25zdCBzcnRwX2tleV9saW1pdF90IGtleSkKICAgICByZXR1cm4gc3J0
cF9lcnJfc3RhdHVzX29rOwogfQogCi1zcnRwX2tleV9ldmVudF90IHNydHBfa2V5X2xpbWl0X3Vw
ZGF0ZSAoc3J0cF9rZXlfbGltaXRfdCBrZXkpCitzcnRwX2tleV9ldmVudF90IHNydHBfa2V5X2xp
bWl0X3VwZGF0ZShzcnRwX2tleV9saW1pdF90IGtleSkKIHsKICNpZmRlZiBOT182NEJJVF9NQVRI
CiAgICAgaWYgKGxvdzMyKGtleS0+bnVtX2xlZnQpID09IDApIHsKICAgICAgICAgLy8gY2FycnkK
LSAgICAgICAga2V5LT5udW1fbGVmdCA9IG1ha2U2NChoaWdoMzIoa2V5LT5udW1fbGVmdCkgLSAx
LCBsb3czMihrZXktPm51bV9sZWZ0KSAtIDEpOwotICAgIH1lbHNlICB7CisgICAgICAgIGtleS0+
bnVtX2xlZnQgPQorICAgICAgICAgICAgbWFrZTY0KGhpZ2gzMihrZXktPm51bV9sZWZ0KSAtIDEs
IGxvdzMyKGtleS0+bnVtX2xlZnQpIC0gMSk7CisgICAgfSBlbHNlIHsKICAgICAgICAgLy8gbm8g
Y2FycnkKICAgICAgICAga2V5LT5udW1fbGVmdCA9IG1ha2U2NChoaWdoMzIoa2V5LT5udW1fbGVm
dCksIGxvdzMyKGtleS0+bnVtX2xlZnQpIC0gMSk7CiAgICAgfQpAQCAtMTExLDEwICsxMTQsOSBA
QCBzcnRwX2tleV9ldmVudF90IHNydHBfa2V5X2xpbWl0X3VwZGF0ZSAoc3J0cF9rZXlfbGltaXRf
dCBrZXkpCiAjZWxzZQogICAgIGlmIChrZXktPm51bV9sZWZ0IDwgMSkKICNlbmRpZgotICAgIHsg
ICAvKiB3ZSBqdXN0IGhpdCB0aGUgaGFyZCBsaW1pdCAqLworICAgIHsgLyogd2UganVzdCBoaXQg
dGhlIGhhcmQgbGltaXQgKi8KICAgICAgICAga2V5LT5zdGF0ZSA9IHNydHBfa2V5X3N0YXRlX2V4
cGlyZWQ7CiAgICAgICAgIHJldHVybiBzcnRwX2tleV9ldmVudF9oYXJkX2xpbWl0OwogICAgIH0K
ICAgICByZXR1cm4gc3J0cF9rZXlfZXZlbnRfc29mdF9saW1pdDsKIH0KLQpkaWZmIC0tZ2l0IGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2Ny
eXB0by9tYXRoL2RhdGF0eXBlcy5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9tYXRoL2RhdGF0eXBlcy5jCmluZGV4IGJiNGI1
NmUzMDdkYTAyMmUyZjJhNTA3MjE1ZmVjMGVhOWIyYzYxNTAuLmMwZGZlY2U2NTlkNzc0YmJkZDhk
MDY0ODQ4M2ViYmYyMTRmY2U4MjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vbWF0aC9kYXRhdHlwZXMuYwor
KysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNy
dHAvY3J5cHRvL21hdGgvZGF0YXR5cGVzLmMKQEAgLTgsMjYgKzgsMjYgQEAKICAqIENpc2NvIFN5
c3RlbXMsIEluYy4KICAqLwogLyoKLSAqCQorICoKICAqIENvcHlyaWdodCAoYykgMjAwMS0yMDE3
IENpc2NvIFN5c3RlbXMsIEluYy4KICAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKiAKKyAqCiAg
KiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwogICogYXJlIG1ldDoKLSAqIAorICoKICAqICAgUmVk
aXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmln
aHQKICAqICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgotICogCisgKgogICogICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCiAgKiAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCiAgKiAgIGRpc2NsYWltZXIgaW4g
dGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZAogICogICB3
aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKiAKKyAqCiAgKiAgIE5laXRoZXIgdGhlIG5hbWUgb2Yg
dGhlIENpc2NvIFN5c3RlbXMsIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKICAqICAgY29udHJp
YnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVk
CiAgKiAgIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4g
cGVybWlzc2lvbi4KLSAqIAorICoKICAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhF
IENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKICAqICJBUyBJUyIgQU5EIEFOWSBF
WFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCiAgKiBMSU1J
VEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklU
TkVTUwpAQCAtNDQsNyArNDQsNyBAQAogICovCiAKICNpZmRlZiBIQVZFX0NPTkZJR19ICi0gICAg
I2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbmZpZy5oPgogI2VuZGlmCiAKICNpZmRl
ZiBPUEVOU1NMCkBAIC01Myw0OCArNTMsMjQgQEAKIAogI2luY2x1ZGUgImRhdGF0eXBlcy5oIgog
Ci1pbnQgCi1vY3RldF93ZWlnaHRbMjU2XSA9IHsKLSAgMCwgMSwgMSwgMiwgMSwgMiwgMiwgMywK
LSAgMSwgMiwgMiwgMywgMiwgMywgMywgNCwKLSAgMSwgMiwgMiwgMywgMiwgMywgMywgNCwKLSAg
MiwgMywgMywgNCwgMywgNCwgNCwgNSwKLSAgMSwgMiwgMiwgMywgMiwgMywgMywgNCwKLSAgMiwg
MywgMywgNCwgMywgNCwgNCwgNSwKLSAgMiwgMywgMywgNCwgMywgNCwgNCwgNSwKLSAgMywgNCwg
NCwgNSwgNCwgNSwgNSwgNiwKLSAgMSwgMiwgMiwgMywgMiwgMywgMywgNCwKLSAgMiwgMywgMywg
NCwgMywgNCwgNCwgNSwKLSAgMiwgMywgMywgNCwgMywgNCwgNCwgNSwKLSAgMywgNCwgNCwgNSwg
NCwgNSwgNSwgNiwKLSAgMiwgMywgMywgNCwgMywgNCwgNCwgNSwKLSAgMywgNCwgNCwgNSwgNCwg
NSwgNSwgNiwKLSAgMywgNCwgNCwgNSwgNCwgNSwgNSwgNiwKLSAgNCwgNSwgNSwgNiwgNSwgNiwg
NiwgNywKLSAgMSwgMiwgMiwgMywgMiwgMywgMywgNCwKLSAgMiwgMywgMywgNCwgMywgNCwgNCwg
NSwKLSAgMiwgMywgMywgNCwgMywgNCwgNCwgNSwKLSAgMywgNCwgNCwgNSwgNCwgNSwgNSwgNiwK
LSAgMiwgMywgMywgNCwgMywgNCwgNCwgNSwKLSAgMywgNCwgNCwgNSwgNCwgNSwgNSwgNiwKLSAg
MywgNCwgNCwgNSwgNCwgNSwgNSwgNiwKLSAgNCwgNSwgNSwgNiwgNSwgNiwgNiwgNywKLSAgMiwg
MywgMywgNCwgMywgNCwgNCwgNSwKLSAgMywgNCwgNCwgNSwgNCwgNSwgNSwgNiwKLSAgMywgNCwg
NCwgNSwgNCwgNSwgNSwgNiwKLSAgNCwgNSwgNSwgNiwgNSwgNiwgNiwgNywKLSAgMywgNCwgNCwg
NSwgNCwgNSwgNSwgNiwKLSAgNCwgNSwgNSwgNiwgNSwgNiwgNiwgNywKLSAgNCwgNSwgNSwgNiwg
NSwgNiwgNiwgNywKLSAgNSwgNiwgNiwgNywgNiwgNywgNywgOAorc3RhdGljIGNvbnN0IGludDhf
dCBvY3RldF93ZWlnaHRbMjU2XSA9IHsKKyAgICAwLCAxLCAxLCAyLCAxLCAyLCAyLCAzLCAxLCAy
LCAyLCAzLCAyLCAzLCAzLCA0LCAxLCAyLCAyLCAzLCAyLCAzLCAzLCA0LAorICAgIDIsIDMsIDMs
IDQsIDMsIDQsIDQsIDUsIDEsIDIsIDIsIDMsIDIsIDMsIDMsIDQsIDIsIDMsIDMsIDQsIDMsIDQs
IDQsIDUsCisgICAgMiwgMywgMywgNCwgMywgNCwgNCwgNSwgMywgNCwgNCwgNSwgNCwgNSwgNSwg
NiwgMSwgMiwgMiwgMywgMiwgMywgMywgNCwKKyAgICAyLCAzLCAzLCA0LCAzLCA0LCA0LCA1LCAy
LCAzLCAzLCA0LCAzLCA0LCA0LCA1LCAzLCA0LCA0LCA1LCA0LCA1LCA1LCA2LAorICAgIDIsIDMs
IDMsIDQsIDMsIDQsIDQsIDUsIDMsIDQsIDQsIDUsIDQsIDUsIDUsIDYsIDMsIDQsIDQsIDUsIDQs
IDUsIDUsIDYsCisgICAgNCwgNSwgNSwgNiwgNSwgNiwgNiwgNywgMSwgMiwgMiwgMywgMiwgMywg
MywgNCwgMiwgMywgMywgNCwgMywgNCwgNCwgNSwKKyAgICAyLCAzLCAzLCA0LCAzLCA0LCA0LCA1
LCAzLCA0LCA0LCA1LCA0LCA1LCA1LCA2LCAyLCAzLCAzLCA0LCAzLCA0LCA0LCA1LAorICAgIDMs
IDQsIDQsIDUsIDQsIDUsIDUsIDYsIDMsIDQsIDQsIDUsIDQsIDUsIDUsIDYsIDQsIDUsIDUsIDYs
IDUsIDYsIDYsIDcsCisgICAgMiwgMywgMywgNCwgMywgNCwgNCwgNSwgMywgNCwgNCwgNSwgNCwg
NSwgNSwgNiwgMywgNCwgNCwgNSwgNCwgNSwgNSwgNiwKKyAgICA0LCA1LCA1LCA2LCA1LCA2LCA2
LCA3LCAzLCA0LCA0LCA1LCA0LCA1LCA1LCA2LCA0LCA1LCA1LCA2LCA1LCA2LCA2LCA3LAorICAg
IDQsIDUsIDUsIDYsIDUsIDYsIDYsIDcsIDUsIDYsIDYsIDcsIDYsIDcsIDcsIDgKIH07CiAKLWlu
dAotb2N0ZXRfZ2V0X3dlaWdodCh1aW50OF90IG9jdGV0KSB7Ci0gIGV4dGVybiBpbnQgb2N0ZXRf
d2VpZ2h0WzI1Nl07Ci0KLSAgcmV0dXJuIG9jdGV0X3dlaWdodFtvY3RldF07Ci19ICAKK2ludCBv
Y3RldF9nZXRfd2VpZ2h0KHVpbnQ4X3Qgb2N0ZXQpCit7CisgICAgcmV0dXJuIChpbnQpb2N0ZXRf
d2VpZ2h0W29jdGV0XTsKK30KIAogLyoKICAqIGJpdF9zdHJpbmcgaXMgYSBidWZmZXIgdGhhdCBp
cyB1c2VkIHRvIGhvbGQgb3V0cHV0IHN0cmluZ3MsIGUuZy4KQEAgLTEwNSw0MTQgKzgxLDQxMCBA
QCBvY3RldF9nZXRfd2VpZ2h0KHVpbnQ4X3Qgb2N0ZXQpIHsKIAogY2hhciBiaXRfc3RyaW5nW01B
WF9QUklOVF9TVFJJTkdfTEVOXTsKIAotdWludDhfdAotc3J0cF9uaWJibGVfdG9faGV4X2NoYXIo
dWludDhfdCBuaWJibGUpIHsKLSAgY2hhciBidWZbMTZdID0geycwJywgJzEnLCAnMicsICczJywg
JzQnLCAnNScsICc2JywgJzcnLAotCQkgICc4JywgJzknLCAnYScsICdiJywgJ2MnLCAnZCcsICdl
JywgJ2YnIH07Ci0gIHJldHVybiBidWZbbmliYmxlICYgMHhGXTsKLX0KLQotY2hhciAqIHNydHBf
b2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcoY29uc3Qgdm9pZCAqcywgaW50IGxlbmd0aCkgewotICBj
b25zdCB1aW50OF90ICpzdHIgPSAoY29uc3QgdWludDhfdCAqKXM7Ci0gIGludCBpOwotICAKLSAg
LyogZG91YmxlIGxlbmd0aCwgc2luY2Ugb25lIG9jdGV0IHRha2VzIHR3byBoZXggY2hhcmFjdGVy
cyAqLwotICBsZW5ndGggKj0gMjsKLQotICAvKiB0cnVuY2F0ZSBzdHJpbmcgaWYgaXQgd291bGQg
YmUgdG9vIGxvbmcgKi8KLSAgaWYgKGxlbmd0aCA+IE1BWF9QUklOVF9TVFJJTkdfTEVOKQotICAg
IGxlbmd0aCA9IE1BWF9QUklOVF9TVFJJTkdfTEVOLTI7Ci0gIAotICBmb3IgKGk9MDsgaSA8IGxl
bmd0aDsgaSs9MikgewotICAgIGJpdF9zdHJpbmdbaV0gICA9IHNydHBfbmliYmxlX3RvX2hleF9j
aGFyKCpzdHIgPj4gNCk7Ci0gICAgYml0X3N0cmluZ1tpKzFdID0gc3J0cF9uaWJibGVfdG9faGV4
X2NoYXIoKnN0cisrICYgMHhGKTsKLSAgfQotICBiaXRfc3RyaW5nW2ldID0gMDsgLyogbnVsbCB0
ZXJtaW5hdGUgc3RyaW5nICovCi0gIHJldHVybiBiaXRfc3RyaW5nOwotfQotCi1jaGFyICoKLXYx
MjhfaGV4X3N0cmluZyh2MTI4X3QgKngpIHsKLSAgaW50IGksIGo7Ci0KLSAgZm9yIChpPWo9MDsg
aSA8IDE2OyBpKyspIHsKLSAgICBiaXRfc3RyaW5nW2orK10gID0gc3J0cF9uaWJibGVfdG9faGV4
X2NoYXIoeC0+djhbaV0gPj4gNCk7Ci0gICAgYml0X3N0cmluZ1tqKytdICA9IHNydHBfbmliYmxl
X3RvX2hleF9jaGFyKHgtPnY4W2ldICYgMHhGKTsKLSAgfQotICAKLSAgYml0X3N0cmluZ1tqXSA9
IDA7IC8qIG51bGwgdGVybWluYXRlIHN0cmluZyAqLwotICByZXR1cm4gYml0X3N0cmluZzsKLX0K
LQotY2hhciAqCi12MTI4X2JpdF9zdHJpbmcodjEyOF90ICp4KSB7Ci0gIGludCBqLCBpOwotICB1
aW50MzJfdCBtYXNrOwotICAKLSAgZm9yIChqPWk9MDsgaiA8IDQ7IGorKykgewotICAgIGZvciAo
bWFzaz0weDgwMDAwMDAwOyBtYXNrID4gMDsgbWFzayA+Pj0gMSkgewotICAgICAgaWYgKHgtPnYz
MltqXSAmIG1hc2spCi0JYml0X3N0cmluZ1tpXSA9ICcxJzsKLSAgICAgIGVsc2UKLQliaXRfc3Ry
aW5nW2ldID0gJzAnOwotICAgICAgKytpOwordWludDhfdCBzcnRwX25pYmJsZV90b19oZXhfY2hh
cih1aW50OF90IG5pYmJsZSkKK3sKKyAgICBjaGFyIGJ1ZlsxNl0gPSB7ICcwJywgJzEnLCAnMics
ICczJywgJzQnLCAnNScsICc2JywgJzcnLAorICAgICAgICAgICAgICAgICAgICAgJzgnLCAnOScs
ICdhJywgJ2InLCAnYycsICdkJywgJ2UnLCAnZicgfTsKKyAgICByZXR1cm4gYnVmW25pYmJsZSAm
IDB4Rl07Cit9CisKK2NoYXIgKnNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcoY29uc3Qgdm9p
ZCAqcywgaW50IGxlbmd0aCkKK3sKKyAgICBjb25zdCB1aW50OF90ICpzdHIgPSAoY29uc3QgdWlu
dDhfdCAqKXM7CisgICAgaW50IGk7CisKKyAgICAvKiBkb3VibGUgbGVuZ3RoLCBzaW5jZSBvbmUg
b2N0ZXQgdGFrZXMgdHdvIGhleCBjaGFyYWN0ZXJzICovCisgICAgbGVuZ3RoICo9IDI7CisKKyAg
ICAvKiB0cnVuY2F0ZSBzdHJpbmcgaWYgaXQgd291bGQgYmUgdG9vIGxvbmcgKi8KKyAgICBpZiAo
bGVuZ3RoID4gTUFYX1BSSU5UX1NUUklOR19MRU4pCisgICAgICAgIGxlbmd0aCA9IE1BWF9QUklO
VF9TVFJJTkdfTEVOIC0gMjsKKworICAgIGZvciAoaSA9IDA7IGkgPCBsZW5ndGg7IGkgKz0gMikg
eworICAgICAgICBiaXRfc3RyaW5nW2ldID0gc3J0cF9uaWJibGVfdG9faGV4X2NoYXIoKnN0ciA+
PiA0KTsKKyAgICAgICAgYml0X3N0cmluZ1tpICsgMV0gPSBzcnRwX25pYmJsZV90b19oZXhfY2hh
cigqc3RyKysgJiAweEYpOworICAgIH0KKyAgICBiaXRfc3RyaW5nW2ldID0gMDsgLyogbnVsbCB0
ZXJtaW5hdGUgc3RyaW5nICovCisgICAgcmV0dXJuIGJpdF9zdHJpbmc7Cit9CisKK2NoYXIgKnYx
MjhfaGV4X3N0cmluZyh2MTI4X3QgKngpCit7CisgICAgaW50IGksIGo7CisKKyAgICBmb3IgKGkg
PSBqID0gMDsgaSA8IDE2OyBpKyspIHsKKyAgICAgICAgYml0X3N0cmluZ1tqKytdID0gc3J0cF9u
aWJibGVfdG9faGV4X2NoYXIoeC0+djhbaV0gPj4gNCk7CisgICAgICAgIGJpdF9zdHJpbmdbaisr
XSA9IHNydHBfbmliYmxlX3RvX2hleF9jaGFyKHgtPnY4W2ldICYgMHhGKTsKICAgICB9Ci0gIH0K
LSAgYml0X3N0cmluZ1sxMjhdID0gMDsgLyogbnVsbCB0ZXJtaW5hdGUgc3RyaW5nICovCiAKLSAg
cmV0dXJuIGJpdF9zdHJpbmc7CisgICAgYml0X3N0cmluZ1tqXSA9IDA7IC8qIG51bGwgdGVybWlu
YXRlIHN0cmluZyAqLworICAgIHJldHVybiBiaXRfc3RyaW5nOwogfQogCi12b2lkCi12MTI4X2Nv
cHlfb2N0ZXRfc3RyaW5nKHYxMjhfdCAqeCwgY29uc3QgdWludDhfdCBzWzE2XSkgeworY2hhciAq
djEyOF9iaXRfc3RyaW5nKHYxMjhfdCAqeCkKK3sKKyAgICBpbnQgaiwgaTsKKyAgICB1aW50MzJf
dCBtYXNrOworCisgICAgZm9yIChqID0gaSA9IDA7IGogPCA0OyBqKyspIHsKKyAgICAgICAgZm9y
IChtYXNrID0gMHg4MDAwMDAwMDsgbWFzayA+IDA7IG1hc2sgPj49IDEpIHsKKyAgICAgICAgICAg
IGlmICh4LT52MzJbal0gJiBtYXNrKQorICAgICAgICAgICAgICAgIGJpdF9zdHJpbmdbaV0gPSAn
MSc7CisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgYml0X3N0cmluZ1tpXSA9ICcw
JzsKKyAgICAgICAgICAgICsraTsKKyAgICAgICAgfQorICAgIH0KKyAgICBiaXRfc3RyaW5nWzEy
OF0gPSAwOyAvKiBudWxsIHRlcm1pbmF0ZSBzdHJpbmcgKi8KKworICAgIHJldHVybiBiaXRfc3Ry
aW5nOworfQorCit2b2lkIHYxMjhfY29weV9vY3RldF9zdHJpbmcodjEyOF90ICp4LCBjb25zdCB1
aW50OF90IHNbMTZdKQorewogI2lmZGVmIEFMSUdOTUVOVF8zMkJJVF9SRVFVSVJFRAotICBpZiAo
KCgodWludDMyX3QpICZzWzBdKSAmIDB4MykgIT0gMCkKKyAgICBpZiAoKCgodWludDMyX3QpJnNb
MF0pICYgMHgzKSAhPSAwKQogI2VuZGlmCi0gIHsKLQkgIHgtPnY4WzBdICA9IHNbMF07Ci0JICB4
LT52OFsxXSAgPSBzWzFdOwotCSAgeC0+djhbMl0gID0gc1syXTsKLQkgIHgtPnY4WzNdICA9IHNb
M107Ci0JICB4LT52OFs0XSAgPSBzWzRdOwotCSAgeC0+djhbNV0gID0gc1s1XTsKLQkgIHgtPnY4
WzZdICA9IHNbNl07Ci0JICB4LT52OFs3XSAgPSBzWzddOwotCSAgeC0+djhbOF0gID0gc1s4XTsK
LQkgIHgtPnY4WzldICA9IHNbOV07Ci0JICB4LT52OFsxMF0gPSBzWzEwXTsKLQkgIHgtPnY4WzEx
XSA9IHNbMTFdOwotCSAgeC0+djhbMTJdID0gc1sxMl07Ci0JICB4LT52OFsxM10gPSBzWzEzXTsK
LQkgIHgtPnY4WzE0XSA9IHNbMTRdOwotCSAgeC0+djhbMTVdID0gc1sxNV07Ci0gIH0KKyAgICB7
CisgICAgICAgIHgtPnY4WzBdID0gc1swXTsKKyAgICAgICAgeC0+djhbMV0gPSBzWzFdOworICAg
ICAgICB4LT52OFsyXSA9IHNbMl07CisgICAgICAgIHgtPnY4WzNdID0gc1szXTsKKyAgICAgICAg
eC0+djhbNF0gPSBzWzRdOworICAgICAgICB4LT52OFs1XSA9IHNbNV07CisgICAgICAgIHgtPnY4
WzZdID0gc1s2XTsKKyAgICAgICAgeC0+djhbN10gPSBzWzddOworICAgICAgICB4LT52OFs4XSA9
IHNbOF07CisgICAgICAgIHgtPnY4WzldID0gc1s5XTsKKyAgICAgICAgeC0+djhbMTBdID0gc1sx
MF07CisgICAgICAgIHgtPnY4WzExXSA9IHNbMTFdOworICAgICAgICB4LT52OFsxMl0gPSBzWzEy
XTsKKyAgICAgICAgeC0+djhbMTNdID0gc1sxM107CisgICAgICAgIHgtPnY4WzE0XSA9IHNbMTRd
OworICAgICAgICB4LT52OFsxNV0gPSBzWzE1XTsKKyAgICB9CiAjaWZkZWYgQUxJR05NRU5UXzMy
QklUX1JFUVVJUkVECi0gIGVsc2UgCi0gIHsKLQkgIHYxMjhfdCAqdiA9ICh2MTI4X3QgKikgJnNb
MF07CisgICAgZWxzZSB7CisgICAgICAgIHYxMjhfdCAqdiA9ICh2MTI4X3QgKikmc1swXTsKIAot
CSAgdjEyOF9jb3B5KHgsdik7Ci0gIH0KKyAgICAgICAgdjEyOF9jb3B5KHgsIHYpOworICAgIH0K
ICNlbmRpZgogfQogCiAjaWZuZGVmIERBVEFUWVBFU19VU0VfTUFDUk9TIC8qIGxpdHRsZSBmdW5j
dGlvbnMgYXJlIG5vdCBtYWNyb3MgKi8KIAotdm9pZAotdjEyOF9zZXRfdG9femVybyh2MTI4X3Qg
KngpIHsKLSAgX3YxMjhfc2V0X3RvX3plcm8oeCk7Cit2b2lkIHYxMjhfc2V0X3RvX3plcm8odjEy
OF90ICp4KQoreworICAgIF92MTI4X3NldF90b196ZXJvKHgpOwogfQogCi12b2lkCi12MTI4X2Nv
cHkodjEyOF90ICp4LCBjb25zdCB2MTI4X3QgKnkpIHsKLSAgX3YxMjhfY29weSh4LCB5KTsKK3Zv
aWQgdjEyOF9jb3B5KHYxMjhfdCAqeCwgY29uc3QgdjEyOF90ICp5KQoreworICAgIF92MTI4X2Nv
cHkoeCwgeSk7CiB9CiAKLXZvaWQKLXYxMjhfeG9yKHYxMjhfdCAqeiwgdjEyOF90ICp4LCB2MTI4
X3QgKnkpIHsKLSAgX3YxMjhfeG9yKHosIHgsIHkpOwotfSAKLQotdm9pZAotdjEyOF9hbmQodjEy
OF90ICp6LCB2MTI4X3QgKngsIHYxMjhfdCAqeSkgewotICBfdjEyOF9hbmQoeiwgeCwgeSk7Cit2
b2lkIHYxMjhfeG9yKHYxMjhfdCAqeiwgdjEyOF90ICp4LCB2MTI4X3QgKnkpCit7CisgICAgX3Yx
MjhfeG9yKHosIHgsIHkpOwogfQogCi12b2lkCi12MTI4X29yKHYxMjhfdCAqeiwgdjEyOF90ICp4
LCB2MTI4X3QgKnkpIHsKLSAgX3YxMjhfb3IoeiwgeCwgeSk7Cit2b2lkIHYxMjhfYW5kKHYxMjhf
dCAqeiwgdjEyOF90ICp4LCB2MTI4X3QgKnkpCit7CisgICAgX3YxMjhfYW5kKHosIHgsIHkpOwog
fQogCi12b2lkCi12MTI4X2NvbXBsZW1lbnQodjEyOF90ICp4KSB7Ci0gIF92MTI4X2NvbXBsZW1l
bnQoeCk7Cit2b2lkIHYxMjhfb3IodjEyOF90ICp6LCB2MTI4X3QgKngsIHYxMjhfdCAqeSkKK3sK
KyAgICBfdjEyOF9vcih6LCB4LCB5KTsKIH0KIAotaW50Ci12MTI4X2lzX2VxKGNvbnN0IHYxMjhf
dCAqeCwgY29uc3QgdjEyOF90ICp5KSB7Ci0gIHJldHVybiBfdjEyOF9pc19lcSh4LCB5KTsKK3Zv
aWQgdjEyOF9jb21wbGVtZW50KHYxMjhfdCAqeCkKK3sKKyAgICBfdjEyOF9jb21wbGVtZW50KHgp
OwogfQogCi1pbnQKLXYxMjhfeG9yX2VxKHYxMjhfdCAqeCwgY29uc3QgdjEyOF90ICp5KSB7Ci0g
IHJldHVybiBfdjEyOF94b3JfZXEoeCwgeSk7CitpbnQgdjEyOF9pc19lcShjb25zdCB2MTI4X3Qg
KngsIGNvbnN0IHYxMjhfdCAqeSkKK3sKKyAgICByZXR1cm4gX3YxMjhfaXNfZXEoeCwgeSk7CiB9
CiAKLWludAotdjEyOF9nZXRfYml0KGNvbnN0IHYxMjhfdCAqeCwgaW50IGkpIHsKLSAgcmV0dXJu
IF92MTI4X2dldF9iaXQoeCwgaSk7CitpbnQgdjEyOF94b3JfZXEodjEyOF90ICp4LCBjb25zdCB2
MTI4X3QgKnkpCit7CisgICAgcmV0dXJuIF92MTI4X3hvcl9lcSh4LCB5KTsKIH0KIAotdm9pZAot
djEyOF9zZXRfYml0KHYxMjhfdCAqeCwgaW50IGkpIHsKLSAgX3YxMjhfc2V0X2JpdCh4LCBpKTsK
LX0gICAgIAoraW50IHYxMjhfZ2V0X2JpdChjb25zdCB2MTI4X3QgKngsIGludCBpKQoreworICAg
IHJldHVybiBfdjEyOF9nZXRfYml0KHgsIGkpOworfQogCi12b2lkCi12MTI4X2NsZWFyX2JpdCh2
MTI4X3QgKngsIGludCBpKXsKLSAgX3YxMjhfY2xlYXJfYml0KHgsIGkpOwotfSAgICAKK3ZvaWQg
djEyOF9zZXRfYml0KHYxMjhfdCAqeCwgaW50IGkpCit7CisgICAgX3YxMjhfc2V0X2JpdCh4LCBp
KTsKK30KIAotdm9pZAotdjEyOF9zZXRfYml0X3RvKHYxMjhfdCAqeCwgaW50IGksIGludCB5KXsK
LSAgX3YxMjhfc2V0X2JpdF90byh4LCBpLCB5KTsKK3ZvaWQgdjEyOF9jbGVhcl9iaXQodjEyOF90
ICp4LCBpbnQgaSkKK3sKKyAgICBfdjEyOF9jbGVhcl9iaXQoeCwgaSk7CiB9CiAKK3ZvaWQgdjEy
OF9zZXRfYml0X3RvKHYxMjhfdCAqeCwgaW50IGksIGludCB5KQoreworICAgIF92MTI4X3NldF9i
aXRfdG8oeCwgaSwgeSk7Cit9CiAKICNlbmRpZiAvKiBEQVRBVFlQRVNfVVNFX01BQ1JPUyAqLwog
Ci12b2lkCi12MTI4X3JpZ2h0X3NoaWZ0KHYxMjhfdCAqeCwgaW50IHNoaWZ0KSB7Ci0gIGNvbnN0
IGludCBiYXNlX2luZGV4ID0gc2hpZnQgPj4gNTsKLSAgY29uc3QgaW50IGJpdF9pbmRleCA9IHNo
aWZ0ICYgMzE7Ci0gIGludCBpLCBmcm9tOwotICB1aW50MzJfdCBiOwotICAgIAotICBpZiAoc2hp
ZnQgPiAxMjcpIHsKLSAgICB2MTI4X3NldF90b196ZXJvKHgpOwotICAgIHJldHVybjsKLSAgfQot
Ci0gIGlmIChiaXRfaW5kZXggPT0gMCkgewotCi0gICAgLyogY29weSBlYWNoIHdvcmQgZnJvbSBs
ZWZ0IHNpemUgdG8gcmlnaHQgc2lkZSAqLwotICAgIHgtPnYzMls0LTFdID0geC0+djMyWzQtMS1i
YXNlX2luZGV4XTsKLSAgICBmb3IgKGk9NC0xOyBpID4gYmFzZV9pbmRleDsgaS0tKSAKLSAgICAg
IHgtPnYzMltpLTFdID0geC0+djMyW2ktMS1iYXNlX2luZGV4XTsKLQotICB9IGVsc2UgewotICAg
IAotICAgIC8qIHNldCBlYWNoIHdvcmQgdG8gdGhlICJvciIgb2YgdGhlIHR3byBiaXQtc2hpZnRl
ZCB3b3JkcyAqLwotICAgIGZvciAoaSA9IDQ7IGkgPiBiYXNlX2luZGV4OyBpLS0pIHsKLSAgICAg
IGZyb20gPSBpLTEgLSBiYXNlX2luZGV4OwotICAgICAgYiA9IHgtPnYzMltmcm9tXSA8PCBiaXRf
aW5kZXg7Ci0gICAgICBpZiAoZnJvbSA+IDApCi0gICAgICAgIGIgfD0geC0+djMyW2Zyb20tMV0g
Pj4gKDMyLWJpdF9pbmRleCk7Ci0gICAgICB4LT52MzJbaS0xXSA9IGI7Cit2b2lkIHYxMjhfcmln
aHRfc2hpZnQodjEyOF90ICp4LCBpbnQgc2hpZnQpCit7CisgICAgY29uc3QgaW50IGJhc2VfaW5k
ZXggPSBzaGlmdCA+PiA1OworICAgIGNvbnN0IGludCBiaXRfaW5kZXggPSBzaGlmdCAmIDMxOwor
ICAgIGludCBpLCBmcm9tOworICAgIHVpbnQzMl90IGI7CisKKyAgICBpZiAoc2hpZnQgPiAxMjcp
IHsKKyAgICAgICAgdjEyOF9zZXRfdG9femVybyh4KTsKKyAgICAgICAgcmV0dXJuOworICAgIH0K
KworICAgIGlmIChiaXRfaW5kZXggPT0gMCkgeworICAgICAgICAvKiBjb3B5IGVhY2ggd29yZCBm
cm9tIGxlZnQgc2l6ZSB0byByaWdodCBzaWRlICovCisgICAgICAgIHgtPnYzMls0IC0gMV0gPSB4
LT52MzJbNCAtIDEgLSBiYXNlX2luZGV4XTsKKyAgICAgICAgZm9yIChpID0gNCAtIDE7IGkgPiBi
YXNlX2luZGV4OyBpLS0pCisgICAgICAgICAgICB4LT52MzJbaSAtIDFdID0geC0+djMyW2kgLSAx
IC0gYmFzZV9pbmRleF07CisKKyAgICB9IGVsc2UgeworICAgICAgICAvKiBzZXQgZWFjaCB3b3Jk
IHRvIHRoZSAib3IiIG9mIHRoZSB0d28gYml0LXNoaWZ0ZWQgd29yZHMgKi8KKyAgICAgICAgZm9y
IChpID0gNDsgaSA+IGJhc2VfaW5kZXg7IGktLSkgeworICAgICAgICAgICAgZnJvbSA9IGkgLSAx
IC0gYmFzZV9pbmRleDsKKyAgICAgICAgICAgIGIgPSB4LT52MzJbZnJvbV0gPDwgYml0X2luZGV4
OworICAgICAgICAgICAgaWYgKGZyb20gPiAwKQorICAgICAgICAgICAgICAgIGIgfD0geC0+djMy
W2Zyb20gLSAxXSA+PiAoMzIgLSBiaXRfaW5kZXgpOworICAgICAgICAgICAgeC0+djMyW2kgLSAx
XSA9IGI7CisgICAgICAgIH0KKyAgICB9CisKKyAgICAvKiBub3cgd3JhcCB1cCB0aGUgZmluYWwg
cG9ydGlvbiAqLworICAgIGZvciAoaSA9IDA7IGkgPCBiYXNlX2luZGV4OyBpKyspCisgICAgICAg
IHgtPnYzMltpXSA9IDA7Cit9CisKK3ZvaWQgdjEyOF9sZWZ0X3NoaWZ0KHYxMjhfdCAqeCwgaW50
IHNoaWZ0KQoreworICAgIGludCBpOworICAgIGNvbnN0IGludCBiYXNlX2luZGV4ID0gc2hpZnQg
Pj4gNTsKKyAgICBjb25zdCBpbnQgYml0X2luZGV4ID0gc2hpZnQgJiAzMTsKKworICAgIGlmIChz
aGlmdCA+IDEyNykgeworICAgICAgICB2MTI4X3NldF90b196ZXJvKHgpOworICAgICAgICByZXR1
cm47CisgICAgfQorCisgICAgaWYgKGJpdF9pbmRleCA9PSAwKSB7CisgICAgICAgIGZvciAoaSA9
IDA7IGkgPCA0IC0gYmFzZV9pbmRleDsgaSsrKQorICAgICAgICAgICAgeC0+djMyW2ldID0geC0+
djMyW2kgKyBiYXNlX2luZGV4XTsKKyAgICB9IGVsc2UgeworICAgICAgICBmb3IgKGkgPSAwOyBp
IDwgNCAtIGJhc2VfaW5kZXggLSAxOyBpKyspCisgICAgICAgICAgICB4LT52MzJbaV0gPSAoeC0+
djMyW2kgKyBiYXNlX2luZGV4XSA+PiBiaXRfaW5kZXgpIF4KKyAgICAgICAgICAgICAgICAgICAg
ICAgICh4LT52MzJbaSArIGJhc2VfaW5kZXggKyAxXSA8PCAoMzIgLSBiaXRfaW5kZXgpKTsKKyAg
ICAgICAgeC0+djMyWzQgLSBiYXNlX2luZGV4IC0gMV0gPSB4LT52MzJbNCAtIDFdID4+IGJpdF9p
bmRleDsKICAgICB9Ci0gICAgCi0gIH0KLQotICAvKiBub3cgd3JhcCB1cCB0aGUgZmluYWwgcG9y
dGlvbiAqLwotICBmb3IgKGk9MDsgaSA8IGJhc2VfaW5kZXg7IGkrKykgCi0gICAgeC0+djMyW2ld
ID0gMDsKLSAgCi19Ci0KLXZvaWQKLXYxMjhfbGVmdF9zaGlmdCh2MTI4X3QgKngsIGludCBzaGlm
dCkgewotICBpbnQgaTsKLSAgY29uc3QgaW50IGJhc2VfaW5kZXggPSBzaGlmdCA+PiA1OwotICBj
b25zdCBpbnQgYml0X2luZGV4ID0gc2hpZnQgJiAzMTsKLQotICBpZiAoc2hpZnQgPiAxMjcpIHsK
LSAgICB2MTI4X3NldF90b196ZXJvKHgpOwotICAgIHJldHVybjsKLSAgfSAKLSAgCi0gIGlmIChi
aXRfaW5kZXggPT0gMCkgewotICAgIGZvciAoaT0wOyBpIDwgNCAtIGJhc2VfaW5kZXg7IGkrKykK
LSAgICAgIHgtPnYzMltpXSA9IHgtPnYzMltpK2Jhc2VfaW5kZXhdOwotICB9IGVsc2UgewotICAg
IGZvciAoaT0wOyBpIDwgNCAtIGJhc2VfaW5kZXggLSAxOyBpKyspCi0gICAgICB4LT52MzJbaV0g
PSAoeC0+djMyW2krYmFzZV9pbmRleF0gPj4gYml0X2luZGV4KSBeCi0JKHgtPnYzMltpK2Jhc2Vf
aW5kZXgrMV0gPDwgKDMyIC0gYml0X2luZGV4KSk7Ci0gICAgeC0+djMyWzQgLSBiYXNlX2luZGV4
LTFdID0geC0+djMyWzQtMV0gPj4gYml0X2luZGV4OwotICB9Ci0KLSAgLyogbm93IHdyYXAgdXAg
dGhlIGZpbmFsIHBvcnRpb24gKi8KLSAgZm9yIChpID0gNCAtIGJhc2VfaW5kZXg7IGkgPCA0OyBp
KyspIAotICAgIHgtPnYzMltpXSA9IDA7CiAKKyAgICAvKiBub3cgd3JhcCB1cCB0aGUgZmluYWwg
cG9ydGlvbiAqLworICAgIGZvciAoaSA9IDQgLSBiYXNlX2luZGV4OyBpIDwgNDsgaSsrKQorICAg
ICAgICB4LT52MzJbaV0gPSAwOwogfQogCiAvKiBmdW5jdGlvbnMgbWFuaXB1bGF0aW5nIGJpdHZl
Y3Rvcl90ICovCiAKICNpZm5kZWYgREFUQVRZUEVTX1VTRV9NQUNST1MgLyogbGl0dGxlIGZ1bmN0
aW9ucyBhcmUgbm90IG1hY3JvcyAqLwogCi1pbnQKLWJpdHZlY3Rvcl9nZXRfYml0KGNvbnN0IGJp
dHZlY3Rvcl90ICp2LCBpbnQgYml0X2luZGV4KQoraW50IGJpdHZlY3Rvcl9nZXRfYml0KGNvbnN0
IGJpdHZlY3Rvcl90ICp2LCBpbnQgYml0X2luZGV4KQogewotICByZXR1cm4gX2JpdHZlY3Rvcl9n
ZXRfYml0KHYsIGJpdF9pbmRleCk7CisgICAgcmV0dXJuIF9iaXR2ZWN0b3JfZ2V0X2JpdCh2LCBi
aXRfaW5kZXgpOwogfQogCi12b2lkCi1iaXR2ZWN0b3Jfc2V0X2JpdChiaXR2ZWN0b3JfdCAqdiwg
aW50IGJpdF9pbmRleCkKK3ZvaWQgYml0dmVjdG9yX3NldF9iaXQoYml0dmVjdG9yX3QgKnYsIGlu
dCBiaXRfaW5kZXgpCiB7Ci0gIF9iaXR2ZWN0b3Jfc2V0X2JpdCh2LCBiaXRfaW5kZXgpOworICAg
IF9iaXR2ZWN0b3Jfc2V0X2JpdCh2LCBiaXRfaW5kZXgpOwogfQogCi12b2lkCi1iaXR2ZWN0b3Jf
Y2xlYXJfYml0KGJpdHZlY3Rvcl90ICp2LCBpbnQgYml0X2luZGV4KQordm9pZCBiaXR2ZWN0b3Jf
Y2xlYXJfYml0KGJpdHZlY3Rvcl90ICp2LCBpbnQgYml0X2luZGV4KQogewotICBfYml0dmVjdG9y
X2NsZWFyX2JpdCh2LCBiaXRfaW5kZXgpOworICAgIF9iaXR2ZWN0b3JfY2xlYXJfYml0KHYsIGJp
dF9pbmRleCk7CiB9CiAKLQogI2VuZGlmIC8qIERBVEFUWVBFU19VU0VfTUFDUk9TICovCiAKLWlu
dAotYml0dmVjdG9yX2FsbG9jKGJpdHZlY3Rvcl90ICp2LCB1bnNpZ25lZCBsb25nIGxlbmd0aCkg
ewotICB1bnNpZ25lZCBsb25nIGw7Ci0KLSAgLyogUm91bmQgbGVuZ3RoIHVwIHRvIGEgbXVsdGlw
bGUgb2YgYml0c19wZXJfd29yZCAqLwotICBsZW5ndGggPSAobGVuZ3RoICsgYml0c19wZXJfd29y
ZCAtIDEpICYgfih1bnNpZ25lZCBsb25nKSgoYml0c19wZXJfd29yZCAtIDEpKTsKLQotICBsID0g
bGVuZ3RoIC8gYml0c19wZXJfd29yZCAqIGJ5dGVzX3Blcl93b3JkOwotCi0gIC8qIGFsbG9jYXRl
IG1lbW9yeSwgdGhlbiBzZXQgcGFyYW1ldGVycyAqLwotICBpZiAobCA9PSAwKQotICAgIHYtPndv
cmQgPSBOVUxMOwotICBlbHNlIHsKLSAgICB2LT53b3JkID0gKHVpbnQzMl90KilzcnRwX2NyeXB0
b19hbGxvYyhsKTsKLSAgICBpZiAodi0+d29yZCA9PSBOVUxMKSB7Ci0gICAgICB2LT53b3JkID0g
TlVMTDsKLSAgICAgIHYtPmxlbmd0aCA9IDA7Ci0gICAgICByZXR1cm4gLTE7CitpbnQgYml0dmVj
dG9yX2FsbG9jKGJpdHZlY3Rvcl90ICp2LCB1bnNpZ25lZCBsb25nIGxlbmd0aCkKK3sKKyAgICB1
bnNpZ25lZCBsb25nIGw7CisKKyAgICAvKiBSb3VuZCBsZW5ndGggdXAgdG8gYSBtdWx0aXBsZSBv
ZiBiaXRzX3Blcl93b3JkICovCisgICAgbGVuZ3RoID0KKyAgICAgICAgKGxlbmd0aCArIGJpdHNf
cGVyX3dvcmQgLSAxKSAmIH4odW5zaWduZWQgbG9uZykoKGJpdHNfcGVyX3dvcmQgLSAxKSk7CisK
KyAgICBsID0gbGVuZ3RoIC8gYml0c19wZXJfd29yZCAqIGJ5dGVzX3Blcl93b3JkOworCisgICAg
LyogYWxsb2NhdGUgbWVtb3J5LCB0aGVuIHNldCBwYXJhbWV0ZXJzICovCisgICAgaWYgKGwgPT0g
MCkgeworICAgICAgICB2LT53b3JkID0gTlVMTDsKKyAgICAgICAgdi0+bGVuZ3RoID0gMDsKKyAg
ICAgICAgcmV0dXJuIC0xOworICAgIH0gZWxzZSB7CisgICAgICAgIHYtPndvcmQgPSAodWludDMy
X3QgKilzcnRwX2NyeXB0b19hbGxvYyhsKTsKKyAgICAgICAgaWYgKHYtPndvcmQgPT0gTlVMTCkg
eworICAgICAgICAgICAgdi0+bGVuZ3RoID0gMDsKKyAgICAgICAgICAgIHJldHVybiAtMTsKKyAg
ICAgICAgfQogICAgIH0KLSAgfQotICB2LT5sZW5ndGggPSBsZW5ndGg7CisgICAgdi0+bGVuZ3Ro
ID0gbGVuZ3RoOwogCi0gIC8qIGluaXRpYWxpemUgYml0dmVjdG9yIHRvIHplcm8gKi8KLSAgYml0
dmVjdG9yX3NldF90b196ZXJvKHYpOworICAgIC8qIGluaXRpYWxpemUgYml0dmVjdG9yIHRvIHpl
cm8gKi8KKyAgICBiaXR2ZWN0b3Jfc2V0X3RvX3plcm8odik7CiAKLSAgcmV0dXJuIDA7CisgICAg
cmV0dXJuIDA7CiB9CiAKLQotdm9pZAotYml0dmVjdG9yX2RlYWxsb2MoYml0dmVjdG9yX3QgKnYp
IHsKLSAgaWYgKHYtPndvcmQgIT0gTlVMTCkKLSAgICBzcnRwX2NyeXB0b19mcmVlKHYtPndvcmQp
OwotICB2LT53b3JkID0gTlVMTDsKLSAgdi0+bGVuZ3RoID0gMDsKK3ZvaWQgYml0dmVjdG9yX2Rl
YWxsb2MoYml0dmVjdG9yX3QgKnYpCit7CisgICAgaWYgKHYtPndvcmQgIT0gTlVMTCkKKyAgICAg
ICAgc3J0cF9jcnlwdG9fZnJlZSh2LT53b3JkKTsKKyAgICB2LT53b3JkID0gTlVMTDsKKyAgICB2
LT5sZW5ndGggPSAwOwogfQogCi12b2lkCi1iaXR2ZWN0b3Jfc2V0X3RvX3plcm8oYml0dmVjdG9y
X3QgKngpCit2b2lkIGJpdHZlY3Rvcl9zZXRfdG9femVybyhiaXR2ZWN0b3JfdCAqeCkKIHsKLSAg
LyogQzk5IGd1YXJhbnRlZXMgdGhhdCBtZW1zZXQoMCkgd2lsbCBzZXQgdGhlIHZhbHVlIDAgZm9y
IHVpbnQzMl90ICovCi0gIG1lbXNldCh4LT53b3JkLCAwLCB4LT5sZW5ndGggPj4gMyk7CisgICAg
LyogQzk5IGd1YXJhbnRlZXMgdGhhdCBtZW1zZXQoMCkgd2lsbCBzZXQgdGhlIHZhbHVlIDAgZm9y
IHVpbnQzMl90ICovCisgICAgbWVtc2V0KHgtPndvcmQsIDAsIHgtPmxlbmd0aCA+PiAzKTsKIH0K
IAotY2hhciAqCi1iaXR2ZWN0b3JfYml0X3N0cmluZyhiaXR2ZWN0b3JfdCAqeCwgY2hhciogYnVm
LCBpbnQgbGVuKSB7Ci0gIGludCBqLCBpOwotICB1aW50MzJfdCBtYXNrOwotICAKLSAgZm9yIChq
PWk9MDsgaiA8IChpbnQpKHgtPmxlbmd0aD4+NSkgJiYgaSA8IGxlbi0xOyBqKyspIHsKLSAgICBm
b3IgKG1hc2s9MHg4MDAwMDAwMDsgbWFzayA+IDA7IG1hc2sgPj49IDEpIHsKLSAgICAgIGlmICh4
LT53b3JkW2pdICYgbWFzaykKLQlidWZbaV0gPSAnMSc7Ci0gICAgICBlbHNlCi0JYnVmW2ldID0g
JzAnOwotICAgICAgKytpOwotICAgICAgaWYgKGkgPj0gbGVuLTEpCi0gICAgICAgIGJyZWFrOwor
Y2hhciAqYml0dmVjdG9yX2JpdF9zdHJpbmcoYml0dmVjdG9yX3QgKngsIGNoYXIgKmJ1ZiwgaW50
IGxlbikKK3sKKyAgICBpbnQgaiwgaTsKKyAgICB1aW50MzJfdCBtYXNrOworCisgICAgZm9yIChq
ID0gaSA9IDA7IGogPCAoaW50KSh4LT5sZW5ndGggPj4gNSkgJiYgaSA8IGxlbiAtIDE7IGorKykg
eworICAgICAgICBmb3IgKG1hc2sgPSAweDgwMDAwMDAwOyBtYXNrID4gMDsgbWFzayA+Pj0gMSkg
eworICAgICAgICAgICAgaWYgKHgtPndvcmRbal0gJiBtYXNrKQorICAgICAgICAgICAgICAgIGJ1
ZltpXSA9ICcxJzsKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICBidWZbaV0gPSAn
MCc7CisgICAgICAgICAgICArK2k7CisgICAgICAgICAgICBpZiAoaSA+PSBsZW4gLSAxKQorICAg
ICAgICAgICAgICAgIGJyZWFrOworICAgICAgICB9CiAgICAgfQotICB9Ci0gIGJ1ZltpXSA9IDA7
IC8qIG51bGwgdGVybWluYXRlIHN0cmluZyAqLworICAgIGJ1ZltpXSA9IDA7IC8qIG51bGwgdGVy
bWluYXRlIHN0cmluZyAqLwogCi0gIHJldHVybiBidWY7CisgICAgcmV0dXJuIGJ1ZjsKIH0KIAot
dm9pZAotYml0dmVjdG9yX2xlZnRfc2hpZnQoYml0dmVjdG9yX3QgKngsIGludCBzaGlmdCkgewot
ICBpbnQgaTsKLSAgY29uc3QgaW50IGJhc2VfaW5kZXggPSBzaGlmdCA+PiA1OwotICBjb25zdCBp
bnQgYml0X2luZGV4ID0gc2hpZnQgJiAzMTsKLSAgY29uc3QgaW50IHdvcmRfbGVuZ3RoID0geC0+
bGVuZ3RoID4+IDU7Ci0KLSAgaWYgKHNoaWZ0ID49IChpbnQpeC0+bGVuZ3RoKSB7Ci0gICAgYml0
dmVjdG9yX3NldF90b196ZXJvKHgpOwotICAgIHJldHVybjsKLSAgfSAKLSAgCi0gIGlmIChiaXRf
aW5kZXggPT0gMCkgewotICAgIGZvciAoaT0wOyBpIDwgd29yZF9sZW5ndGggLSBiYXNlX2luZGV4
OyBpKyspCi0gICAgICB4LT53b3JkW2ldID0geC0+d29yZFtpK2Jhc2VfaW5kZXhdOwotICB9IGVs
c2UgewotICAgIGZvciAoaT0wOyBpIDwgd29yZF9sZW5ndGggLSBiYXNlX2luZGV4IC0gMTsgaSsr
KQotICAgICAgeC0+d29yZFtpXSA9ICh4LT53b3JkW2krYmFzZV9pbmRleF0gPj4gYml0X2luZGV4
KSBeCi0JKHgtPndvcmRbaStiYXNlX2luZGV4KzFdIDw8ICgzMiAtIGJpdF9pbmRleCkpOwotICAg
IHgtPndvcmRbd29yZF9sZW5ndGggLSBiYXNlX2luZGV4LTFdID0geC0+d29yZFt3b3JkX2xlbmd0
aC0xXSA+PiBiaXRfaW5kZXg7Ci0gIH0KK3ZvaWQgYml0dmVjdG9yX2xlZnRfc2hpZnQoYml0dmVj
dG9yX3QgKngsIGludCBzaGlmdCkKK3sKKyAgICBpbnQgaTsKKyAgICBjb25zdCBpbnQgYmFzZV9p
bmRleCA9IHNoaWZ0ID4+IDU7CisgICAgY29uc3QgaW50IGJpdF9pbmRleCA9IHNoaWZ0ICYgMzE7
CisgICAgY29uc3QgaW50IHdvcmRfbGVuZ3RoID0geC0+bGVuZ3RoID4+IDU7CisKKyAgICBpZiAo
c2hpZnQgPj0gKGludCl4LT5sZW5ndGgpIHsKKyAgICAgICAgYml0dmVjdG9yX3NldF90b196ZXJv
KHgpOworICAgICAgICByZXR1cm47CisgICAgfQogCi0gIC8qIG5vdyB3cmFwIHVwIHRoZSBmaW5h
bCBwb3J0aW9uICovCi0gIGZvciAoaSA9IHdvcmRfbGVuZ3RoIC0gYmFzZV9pbmRleDsgaSA8IHdv
cmRfbGVuZ3RoOyBpKyspIAotICAgIHgtPndvcmRbaV0gPSAwOworICAgIGlmIChiaXRfaW5kZXgg
PT0gMCkgeworICAgICAgICBmb3IgKGkgPSAwOyBpIDwgd29yZF9sZW5ndGggLSBiYXNlX2luZGV4
OyBpKyspCisgICAgICAgICAgICB4LT53b3JkW2ldID0geC0+d29yZFtpICsgYmFzZV9pbmRleF07
CisgICAgfSBlbHNlIHsKKyAgICAgICAgZm9yIChpID0gMDsgaSA8IHdvcmRfbGVuZ3RoIC0gYmFz
ZV9pbmRleCAtIDE7IGkrKykKKyAgICAgICAgICAgIHgtPndvcmRbaV0gPSAoeC0+d29yZFtpICsg
YmFzZV9pbmRleF0gPj4gYml0X2luZGV4KSBeCisgICAgICAgICAgICAgICAgICAgICAgICAgKHgt
PndvcmRbaSArIGJhc2VfaW5kZXggKyAxXSA8PCAoMzIgLSBiaXRfaW5kZXgpKTsKKyAgICAgICAg
eC0+d29yZFt3b3JkX2xlbmd0aCAtIGJhc2VfaW5kZXggLSAxXSA9CisgICAgICAgICAgICB4LT53
b3JkW3dvcmRfbGVuZ3RoIC0gMV0gPj4gYml0X2luZGV4OworICAgIH0KIAorICAgIC8qIG5vdyB3
cmFwIHVwIHRoZSBmaW5hbCBwb3J0aW9uICovCisgICAgZm9yIChpID0gd29yZF9sZW5ndGggLSBi
YXNlX2luZGV4OyBpIDwgd29yZF9sZW5ndGg7IGkrKykKKyAgICAgICAgeC0+d29yZFtpXSA9IDA7
CiB9CiAKLWludAotb2N0ZXRfc3RyaW5nX2lzX2VxKHVpbnQ4X3QgKmEsIHVpbnQ4X3QgKmIsIGlu
dCBsZW4pIHsKLSAgdWludDhfdCAqZW5kID0gYiArIGxlbjsKLSAgdWludDhfdCBhY2N1bXVsYXRv
ciA9IDA7Ci0KLSAgLyoKLSAgICogV2UgdXNlIHRoaXMgc29tZXdoYXQgb2JzY3VyZSBpbXBsZW1l
bnRhdGlvbiB0byB0cnkgdG8gZW5zdXJlIHRoZSBydW5uaW5nCi0gICAqIHRpbWUgb25seSBkZXBl
bmRzIG9uIGxlbiwgZXZlbiBhY2NvdW50aW5nIGZvciBjb21waWxlciBvcHRpbWl6YXRpb25zLgot
ICAgKiBUaGUgYWNjdW11bGF0b3IgZW5kcyB1cCB6ZXJvIGlmZiB0aGUgc3RyaW5ncyBhcmUgZXF1
YWwuCi0gICAqLwotICB3aGlsZSAoYiA8IGVuZCkKLSAgICBhY2N1bXVsYXRvciB8PSAoKmErKyBe
ICpiKyspOwotCi0gIC8qIFJldHVybiAxIGlmICpub3QqIGVxdWFsLiAqLwotICByZXR1cm4gYWNj
dW11bGF0b3IgIT0gMDsKK2ludCBvY3RldF9zdHJpbmdfaXNfZXEodWludDhfdCAqYSwgdWludDhf
dCAqYiwgaW50IGxlbikKK3sKKyAgICB1aW50OF90ICplbmQgPSBiICsgbGVuOworICAgIHVpbnQ4
X3QgYWNjdW11bGF0b3IgPSAwOworCisgICAgLyoKKyAgICAgKiBXZSB1c2UgdGhpcyBzb21ld2hh
dCBvYnNjdXJlIGltcGxlbWVudGF0aW9uIHRvIHRyeSB0byBlbnN1cmUgdGhlIHJ1bm5pbmcKKyAg
ICAgKiB0aW1lIG9ubHkgZGVwZW5kcyBvbiBsZW4sIGV2ZW4gYWNjb3VudGluZyBmb3IgY29tcGls
ZXIgb3B0aW1pemF0aW9ucy4KKyAgICAgKiBUaGUgYWNjdW11bGF0b3IgZW5kcyB1cCB6ZXJvIGlm
ZiB0aGUgc3RyaW5ncyBhcmUgZXF1YWwuCisgICAgICovCisgICAgd2hpbGUgKGIgPCBlbmQpCisg
ICAgICAgIGFjY3VtdWxhdG9yIHw9ICgqYSsrIF4gKmIrKyk7CisKKyAgICAvKiBSZXR1cm4gMSBp
ZiAqbm90KiBlcXVhbC4gKi8KKyAgICByZXR1cm4gYWNjdW11bGF0b3IgIT0gMDsKIH0KIAotdm9p
ZAotc3J0cF9jbGVhbnNlKHZvaWQgKnMsIHNpemVfdCBsZW4pCit2b2lkIHNydHBfY2xlYW5zZSh2
b2lkICpzLCBzaXplX3QgbGVuKQogewotICB2b2xhdGlsZSB1bnNpZ25lZCBjaGFyICpwID0gKHZv
bGF0aWxlIHVuc2lnbmVkIGNoYXIgKilzOwotICB3aGlsZShsZW4tLSkgKnArKyA9IDA7CisgICAg
dm9sYXRpbGUgdW5zaWduZWQgY2hhciAqcCA9ICh2b2xhdGlsZSB1bnNpZ25lZCBjaGFyICopczsK
KyAgICB3aGlsZSAobGVuLS0pCisgICAgICAgICpwKysgPSAwOwogfQogCi12b2lkCi1vY3RldF9z
dHJpbmdfc2V0X3RvX3plcm8odm9pZCAqcywgc2l6ZV90IGxlbikKK3ZvaWQgb2N0ZXRfc3RyaW5n
X3NldF90b196ZXJvKHZvaWQgKnMsIHNpemVfdCBsZW4pCiB7CiAjaWZkZWYgT1BFTlNTTAotICBP
UEVOU1NMX2NsZWFuc2UocywgbGVuKTsKKyAgICBPUEVOU1NMX2NsZWFuc2UocywgbGVuKTsKICNl
bHNlCi0gIHNydHBfY2xlYW5zZShzLCBsZW4pOworICAgIHNydHBfY2xlYW5zZShzLCBsZW4pOwog
I2VuZGlmCiB9CiAKICNpZmRlZiBURVNUQVBQX1NPVVJDRQogCiBzdGF0aWMgY29uc3QgY2hhciBi
NjRjaGFyc1tdID0gIkFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaIgotICAiYWJjZGVmZ2hpamts
bW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5Ky8iOwotCi1zdGF0aWMgaW50IGJhc2U2NF9ibG9ja190
b19vY3RldF90cmlwbGUoY2hhciAqb3V0LCBjaGFyICppbikgewotICB1bnNpZ25lZCBjaGFyIHNl
eHRldHNbNF0gPSB7MH07Ci0gIGludCBqID0gMDsKLSAgaW50IGk7Ci0KLSAgZm9yIChpID0gMDsg
aSA8IDQ7IGkrKykgewotICAgIGNoYXIgKnAgPSBzdHJjaHIoYjY0Y2hhcnMsIGluW2ldKTsKLSAg
ICBpZiAocCAhPSBOVUxMKSBzZXh0ZXRzW2ldID0gcCAtIGI2NGNoYXJzOwotICAgIGVsc2Ugaisr
OwotICB9Ci0KLSAgb3V0WzBdID0gKHNleHRldHNbMF08PDIpfChzZXh0ZXRzWzFdPj40KTsKLSAg
aWYgKGogPCAyKSBvdXRbMV0gPSAoc2V4dGV0c1sxXTw8NCl8KHNleHRldHNbMl0+PjIpOwotICBp
ZiAoaiA8IDEpIG91dFsyXSA9IChzZXh0ZXRzWzJdPDw2KXxzZXh0ZXRzWzNdOwotICByZXR1cm4g
ajsKLX0KLQotaW50IGJhc2U2NF9zdHJpbmdfdG9fb2N0ZXRfc3RyaW5nKGNoYXIgKm91dCwgaW50
ICpwYWQsIGNoYXIgKmluLCBpbnQgbGVuKSB7Ci0gIGludCBrID0gMDsKLSAgaW50IGkgPSAwOwot
ICBpbnQgaiA9IDA7Ci0gIGlmIChsZW4gJSA0ICE9IDApIHJldHVybiAwOwotCi0gIHdoaWxlIChp
IDwgbGVuICYmIGogPT0gMCkgewotICAgIGogPSBiYXNlNjRfYmxvY2tfdG9fb2N0ZXRfdHJpcGxl
KG91dCArIGssIGluICsgaSk7Ci0gICAgayArPSAzOwotICAgIGkgKz0gNDsKLSAgfQotICAqcGFk
ID0gajsKLSAgcmV0dXJuIGk7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImFiY2Rl
ZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSsvIjsKKworc3RhdGljIGludCBiYXNlNjRf
YmxvY2tfdG9fb2N0ZXRfdHJpcGxlKGNoYXIgKm91dCwgY2hhciAqaW4pCit7CisgICAgdW5zaWdu
ZWQgY2hhciBzZXh0ZXRzWzRdID0geyAwIH07CisgICAgaW50IGogPSAwOworICAgIGludCBpOwor
CisgICAgZm9yIChpID0gMDsgaSA8IDQ7IGkrKykgeworICAgICAgICBjaGFyICpwID0gc3RyY2hy
KGI2NGNoYXJzLCBpbltpXSk7CisgICAgICAgIGlmIChwICE9IE5VTEwpCisgICAgICAgICAgICBz
ZXh0ZXRzW2ldID0gcCAtIGI2NGNoYXJzOworICAgICAgICBlbHNlCisgICAgICAgICAgICBqKys7
CisgICAgfQorCisgICAgb3V0WzBdID0gKHNleHRldHNbMF0gPDwgMikgfCAoc2V4dGV0c1sxXSA+
PiA0KTsKKyAgICBpZiAoaiA8IDIpCisgICAgICAgIG91dFsxXSA9IChzZXh0ZXRzWzFdIDw8IDQp
IHwgKHNleHRldHNbMl0gPj4gMik7CisgICAgaWYgKGogPCAxKQorICAgICAgICBvdXRbMl0gPSAo
c2V4dGV0c1syXSA8PCA2KSB8IHNleHRldHNbM107CisgICAgcmV0dXJuIGo7Cit9CisKK2ludCBi
YXNlNjRfc3RyaW5nX3RvX29jdGV0X3N0cmluZyhjaGFyICpvdXQsIGludCAqcGFkLCBjaGFyICpp
biwgaW50IGxlbikKK3sKKyAgICBpbnQgayA9IDA7CisgICAgaW50IGkgPSAwOworICAgIGludCBq
ID0gMDsKKyAgICBpZiAobGVuICUgNCAhPSAwKQorICAgICAgICByZXR1cm4gMDsKKworICAgIHdo
aWxlIChpIDwgbGVuICYmIGogPT0gMCkgeworICAgICAgICBqID0gYmFzZTY0X2Jsb2NrX3RvX29j
dGV0X3RyaXBsZShvdXQgKyBrLCBpbiArIGkpOworICAgICAgICBrICs9IDM7CisgICAgICAgIGkg
Kz0gNDsKKyAgICB9CisgICAgKnBhZCA9IGo7CisgICAgcmV0dXJuIGk7CiB9CiAKICNlbmRpZgpk
aWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9saWJzcnRwL2NyeXB0by9tYXRoL3N0YXQuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vbWF0aC9zdGF0LmMKaW5kZXggMGI0
YWVjMzc2NDlmYzQwYzJjNDE2YmMzYjk5NmJhZGYwMTkxZmVlOC4uNmRkMzMyYjBjZjUzNmM1M2Ex
NGUzZTdjYjZlMjZmZDYyYTQwYjc2YiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGli
d2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9tYXRoL3N0YXQuYworKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAv
Y3J5cHRvL21hdGgvc3RhdC5jCkBAIC0xLDMzICsxLDMzIEBACiAvKgogICogc3RhdHMuYwogICoK
LSAqIHN0YXRpc3RpY2FsIHRlc3RzIAotICogCisgKiBzdGF0aXN0aWNhbCB0ZXN0cworICoKICAq
IERhdmlkIEEuIE1jR3JldwogICogQ2lzY28gU3lzdGVtcywgSW5jLgogICovCiAKIC8qCi0gKgkK
KyAqCiAgKiBDb3B5cmlnaHQgKGMpIDIwMDEtMjAxNywgQ2lzY28gU3lzdGVtcywgSW5jLgogICog
QWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqIAorICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2Ug
aW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0
aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25z
CiAgKiBhcmUgbWV0OgotICogCisgKgogICogICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNv
ZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAogICogICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAKKyAqCiAg
KiAgIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUKICAqICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcKICAqICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Ig
b3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkCiAgKiAgIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAq
IAorICoKICAqICAgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgQ2lzY28gU3lzdGVtcywgSW5jLiBu
b3IgdGhlIG5hbWVzIG9mIGl0cwogICogICBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5k
b3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQKICAqICAgZnJvbSB0aGlzIHNvZnR3YXJl
IHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotICogCisgKgogICog
VEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENP
TlRSSUJVVE9SUwogICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKICAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCkBAIC00NCwxNCArNDQsMTQgQEAK
ICAqLwogCiAjaWZkZWYgSEFWRV9DT05GSUdfSAotICAgICNpbmNsdWRlIDxjb25maWcuaD4KKyNp
bmNsdWRlIDxjb25maWcuaD4KICNlbmRpZgogCiAjaW5jbHVkZSAic3RhdC5oIgogCi1zcnRwX2Rl
YnVnX21vZHVsZV90IG1vZF9zdGF0ID0gewotICAwLCAgICAgICAgICAgICAgICAgLyogZGVidWdn
aW5nIGlzIG9mZiBieSBkZWZhdWx0ICovCi0gIChjaGFyICopInN0YXQgdGVzdCIgICAgICAgIC8q
IHByaW50YWJsZSBtb2R1bGUgbmFtZSAgICAgICAqLworc3J0cF9kZWJ1Z19tb2R1bGVfdCBzcnRw
X21vZF9zdGF0ID0geworICAgIDAsICAgICAgICAgICAgICAgICAgLyogZGVidWdnaW5nIGlzIG9m
ZiBieSBkZWZhdWx0ICovCisgICAgKGNoYXIgKikic3RhdCB0ZXN0IiAvKiBwcmludGFibGUgbW9k
dWxlIG5hbWUgICAgICAgKi8KIH07CiAKIC8qCkBAIC02MSwxNjYgKzYxLDE1MyBAQCBzcnRwX2Rl
YnVnX21vZHVsZV90IG1vZF9zdGF0ID0gewogCiAjZGVmaW5lIFNUQVRfVEVTVF9EQVRBX0xFTiAy
NTAwCiAKLXNydHBfZXJyX3N0YXR1c190Ci1zdGF0X3Rlc3RfbW9ub2JpdCh1aW50OF90ICpkYXRh
KSB7Ci0gIHVpbnQ4X3QgKmRhdGFfZW5kID0gZGF0YSArIFNUQVRfVEVTVF9EQVRBX0xFTjsKLSAg
dWludDE2X3Qgb25lc19jb3VudDsKK3NydHBfZXJyX3N0YXR1c190IHN0YXRfdGVzdF9tb25vYml0
KHVpbnQ4X3QgKmRhdGEpCit7CisgICAgdWludDhfdCAqZGF0YV9lbmQgPSBkYXRhICsgU1RBVF9U
RVNUX0RBVEFfTEVOOworICAgIHVpbnQxNl90IG9uZXNfY291bnQ7CiAKLSAgb25lc19jb3VudCA9
IDA7Ci0gIHdoaWxlIChkYXRhIDwgZGF0YV9lbmQpIHsKLSAgICBvbmVzX2NvdW50ICs9IG9jdGV0
X2dldF93ZWlnaHQoKmRhdGEpOwotICAgIGRhdGErKzsKLSAgfQorICAgIG9uZXNfY291bnQgPSAw
OworICAgIHdoaWxlIChkYXRhIDwgZGF0YV9lbmQpIHsKKyAgICAgICAgb25lc19jb3VudCArPSBv
Y3RldF9nZXRfd2VpZ2h0KCpkYXRhKTsKKyAgICAgICAgZGF0YSsrOworICAgIH0KIAotICBkZWJ1
Z19wcmludChtb2Rfc3RhdCwgImJpdCBjb3VudDogJWQiLCBvbmVzX2NvdW50KTsKLSAgCi0gIGlm
ICgob25lc19jb3VudCA8IDk3MjUpIHx8IChvbmVzX2NvdW50ID4gMTAyNzUpKQotICAgIHJldHVy
biBzcnRwX2Vycl9zdGF0dXNfYWxnb19mYWlsOworICAgIGRlYnVnX3ByaW50KHNydHBfbW9kX3N0
YXQsICJiaXQgY291bnQ6ICVkIiwgb25lc19jb3VudCk7CiAKLSAgcmV0dXJuIHNydHBfZXJyX3N0
YXR1c19vazsKLX0KKyAgICBpZiAoKG9uZXNfY291bnQgPCA5NzI1KSB8fCAob25lc19jb3VudCA+
IDEwMjc1KSkKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19hbGdvX2ZhaWw7CiAKLXNy
dHBfZXJyX3N0YXR1c190Ci1zdGF0X3Rlc3RfcG9rZXIodWludDhfdCAqZGF0YSkgewotICBpbnQg
aTsKLSAgdWludDhfdCAqZGF0YV9lbmQgPSBkYXRhICsgU1RBVF9URVNUX0RBVEFfTEVOOwotICBk
b3VibGUgcG9rZXI7Ci0gIHVpbnQxNl90IGZbMTZdID0gewotICAgIDAsIDAsIDAsIDAsIDAsIDAs
IDAsIDAsCi0gICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMAotICB9OwotICAKLSAgd2hpbGUgKGRh
dGEgPCBkYXRhX2VuZCkgewotICAgIGZbKmRhdGEgJiAweDBmXSsrOyAgICAvKiBpbmNyZW1lbnQg
ZnJlcS4gY291bnQgZm9yIGxvdyBuaWJibGUgICovCi0gICAgZlsoKmRhdGEpID4+IDRdKys7ICAg
IC8qIGluY3JlbWVudCBmcmVxLiBjb3VudCBmb3IgaGlnaCBuaWJibGUgKi8KLSAgICBkYXRhKys7
Ci0gIH0KLQotICBwb2tlciA9IDAuMDsKLSAgZm9yIChpPTA7IGkgPCAxNjsgaSsrKSAKLSAgICBw
b2tlciArPSAoZG91YmxlKSBmW2ldICogZltpXTsKLQotICBwb2tlciAqPSAoMTYuMCAvIDUwMDAu
MCk7Ci0gIHBva2VyIC09IDUwMDAuMDsKLQotICBkZWJ1Z19wcmludChtb2Rfc3RhdCwgInBva2Vy
IHRlc3Q6ICVmXG4iLCBwb2tlcik7Ci0gICAgCi0gIGlmICgocG9rZXIgPCAyLjE2KSB8fCAocG9r
ZXIgPiA0Ni4xNykpCi0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19hbGdvX2ZhaWw7Ci0gIAot
ICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOworICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNf
b2s7CiB9CiAKK3NydHBfZXJyX3N0YXR1c190IHN0YXRfdGVzdF9wb2tlcih1aW50OF90ICpkYXRh
KQoreworICAgIGludCBpOworICAgIHVpbnQ4X3QgKmRhdGFfZW5kID0gZGF0YSArIFNUQVRfVEVT
VF9EQVRBX0xFTjsKKyAgICBkb3VibGUgcG9rZXI7CisgICAgdWludDE2X3QgZlsxNl0gPSB7IDAs
IDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAgfTsKKworICAgIHdo
aWxlIChkYXRhIDwgZGF0YV9lbmQpIHsKKyAgICAgICAgZlsqZGF0YSAmIDB4MGZdKys7IC8qIGlu
Y3JlbWVudCBmcmVxLiBjb3VudCBmb3IgbG93IG5pYmJsZSAgKi8KKyAgICAgICAgZlsoKmRhdGEp
ID4+IDRdKys7IC8qIGluY3JlbWVudCBmcmVxLiBjb3VudCBmb3IgaGlnaCBuaWJibGUgKi8KKyAg
ICAgICAgZGF0YSsrOworICAgIH0KKworICAgIHBva2VyID0gMC4wOworICAgIGZvciAoaSA9IDA7
IGkgPCAxNjsgaSsrKQorICAgICAgICBwb2tlciArPSAoZG91YmxlKWZbaV0gKiBmW2ldOworCisg
ICAgcG9rZXIgKj0gKDE2LjAgLyA1MDAwLjApOworICAgIHBva2VyIC09IDUwMDAuMDsKKworICAg
IGRlYnVnX3ByaW50KHNydHBfbW9kX3N0YXQsICJwb2tlciB0ZXN0OiAlZlxuIiwgcG9rZXIpOwor
CisgICAgaWYgKChwb2tlciA8IDIuMTYpIHx8IChwb2tlciA+IDQ2LjE3KSkKKyAgICAgICAgcmV0
dXJuIHNydHBfZXJyX3N0YXR1c19hbGdvX2ZhaWw7CisKKyAgICByZXR1cm4gc3J0cF9lcnJfc3Rh
dHVzX29rOworfQogCiAvKgogICogcnVuc1tpXSBob2xkcyB0aGUgbnVtYmVyIG9mIHJ1bnMgb2Yg
c2l6ZSAoaS0xKQogICovCiAKLXNydHBfZXJyX3N0YXR1c190Ci1zdGF0X3Rlc3RfcnVucyh1aW50
OF90ICpkYXRhKSB7Ci0gIHVpbnQ4X3QgKmRhdGFfZW5kID0gZGF0YSArIFNUQVRfVEVTVF9EQVRB
X0xFTjsKLSAgdWludDE2X3QgcnVuc1s2XSA9IHsgMCwgMCwgMCwgMCwgMCwgMCB9OyAKLSAgdWlu
dDE2X3QgZ2Fwc1s2XSA9IHsgMCwgMCwgMCwgMCwgMCwgMCB9OwotICB1aW50MTZfdCBsb192YWx1
ZVs2XSA9IHsgMjMxNSwgMTExNCwgNTI3LCAyNDAsIDEwMywgMTAzIH07Ci0gIHVpbnQxNl90IGhp
X3ZhbHVlWzZdID0geyAyNjg1LCAxMzg2LCA3MjMsIDM4NCwgMjA5LCAyMDkgfTsKLSAgaW50IHN0
YXRlID0gMDsKLSAgdWludDE2X3QgbWFzazsKLSAgaW50IGk7Ci0gIAotICAvKgotICAgKiB0aGUg
c3RhdGUgdmFyaWFibGUgaG9sZHMgdGhlIG51bWJlciBvZiBiaXRzIGluIHRoZQotICAgKiBjdXJy
ZW50IHJ1biAob3IgZ2FwLCBpZiBuZWdhdGl2ZSkKLSAgICovCi0gIAotICB3aGlsZSAoZGF0YSA8
IGRhdGFfZW5kKSB7Ci0KLSAgICAvKiBsb29wIG92ZXIgdGhlIGJpdHMgb2YgdGhpcyBieXRlICov
Ci0gICAgZm9yIChtYXNrID0gMTsgbWFzayA8IDI1NjsgbWFzayA8PD0gMSkgewotICAgICAgaWYg
KCpkYXRhICYgbWFzaykgewotCi0gCS8qIG5leHQgYml0IGlzIGEgb25lICAqLwotCWlmIChzdGF0
ZSA+IDApIHsKLQotCSAgLyogcHJlZml4IGlzIGEgcnVuLCBzbyBpbmNyZW1lbnQgdGhlIHJ1bi1j
b3VudCAgKi8KLQkgIHN0YXRlKys7ICAgICAgICAgICAgICAgICAgICAgICAgICAKLQotCSAgLyog
Y2hlY2sgZm9yIGxvbmcgcnVucyAqLyAKLQkgIGlmIChzdGF0ZSA+IDI1KSB7Ci0JCWRlYnVnX3By
aW50KG1vZF9zdGF0LCAiPjI1IHJ1bnM6ICVkIiwgc3RhdGUpOwotCQlyZXR1cm4gc3J0cF9lcnJf
c3RhdHVzX2FsZ29fZmFpbDsKLQkgIH0KLQotCX0gZWxzZSBpZiAoc3RhdGUgPCAwKSB7Ci0KLQkg
IC8qIHByZWZpeCBpcyBhIGdhcCAgKi8KLQkgIGlmIChzdGF0ZSA8IC0yNSkgewotCQlkZWJ1Z19w
cmludChtb2Rfc3RhdCwgIj4yNSBnYXBzOiAlZCIsIHN0YXRlKTsKLQkgICAgcmV0dXJuIHNydHBf
ZXJyX3N0YXR1c19hbGdvX2ZhaWw7ICAgIC8qIGxvbmctcnVucyB0ZXN0IGZhaWxlZCAgICovCi0J
ICB9Ci0JICBpZiAoc3RhdGUgPCAtNikgewotCSAgICBzdGF0ZSA9IC02OyAgICAgICAgICAgICAg
ICAgICAgIC8qIGdyb3VwIHRvZ2V0aGVyIGdhcHMgPiA1ICovCi0JICB9Ci0JICBnYXBzWy0xLXN0
YXRlXSsrOyAgICAgICAgICAgICAgICAgLyogaW5jcmVtZW50IGdhcCBjb3VudCAgICAgICovCi0g
ICAgICAgICAgc3RhdGUgPSAxOyAgICAgICAgICAgICAgICAgICAgICAgIC8qIHNldCBzdGF0ZSBh
dCBvbmUgc2V0IGJpdCAqLwotCX0gZWxzZSB7Ci0KLQkgIC8qIHN0YXRlIGlzIHplcm87IHRoaXMg
aGFwcGVucyBvbmx5IGF0IGluaXRpYWxpemF0aW9uICAgICAgICAqLwotCSAgc3RhdGUgPSAxOyAg
ICAgICAgICAgIAotCX0KLSAgICAgIH0gZWxzZSB7Ci0KLQkvKiBuZXh0IGJpdCBpcyBhIHplcm8g
ICovCi0JaWYgKHN0YXRlID4gMCkgewotCi0JICAvKiBwcmVmaXggaXMgYSBydW4gKi8KLQkgIGlm
IChzdGF0ZSA+IDI1KSB7Ci0JCWRlYnVnX3ByaW50KG1vZF9zdGF0LCAiPjI1IHJ1bnMgKDIpOiAl
ZCIsIHN0YXRlKTsKLQkgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19hbGdvX2ZhaWw7ICAgIC8q
IGxvbmctcnVucyB0ZXN0IGZhaWxlZCAgICovCi0JICB9Ci0JICBpZiAoc3RhdGUgPiA2KSB7Ci0J
ICAgIHN0YXRlID0gNjsgICAgICAgICAgICAgICAgICAgICAgLyogZ3JvdXAgdG9nZXRoZXIgcnVu
cyA+IDUgKi8KLQkgIH0KLQkgIHJ1bnNbc3RhdGUtMV0rKzsgICAgICAgICAgICAgICAgICAvKiBp
bmNyZW1lbnQgcnVuIGNvdW50ICAgICAgICovCi0gICAgICAgICAgc3RhdGUgPSAtMTsgICAgICAg
ICAgICAgICAgICAgICAgIC8qIHNldCBzdGF0ZSBhdCBvbmUgemVybyBiaXQgKi8KLQl9IGVsc2Ug
aWYgKHN0YXRlIDwgMCkgewotCi0JICAvKiBwcmVmaXggaXMgYSBnYXAsIHNvIGluY3JlbWVudCBn
YXAtY291bnQgKGRlY3JlbWVudCBzdGF0ZSkgKi8KLQkgIHN0YXRlLS07Ci0KLQkgIC8qIGNoZWNr
IGZvciBsb25nIGdhcHMgKi8gCi0JICBpZiAoc3RhdGUgPCAtMjUpIHsKLQkJZGVidWdfcHJpbnQo
bW9kX3N0YXQsICI+MjUgZ2FwcyAoMik6ICVkIiwgc3RhdGUpOwotCSAgICByZXR1cm4gc3J0cF9l
cnJfc3RhdHVzX2FsZ29fZmFpbDsKLQkgIH0KLQotCX0gZWxzZSB7Ci0KLQkgIC8qIHN0YXRlIGlz
IHplcm87IHRoaXMgaGFwcGVucyBvbmx5IGF0IGluaXRpYWxpemF0aW9uICAgICAgICAqLwotCSAg
c3RhdGUgPSAtMTsKLQl9Ci0gICAgICB9CitzcnRwX2Vycl9zdGF0dXNfdCBzdGF0X3Rlc3RfcnVu
cyh1aW50OF90ICpkYXRhKQoreworICAgIHVpbnQ4X3QgKmRhdGFfZW5kID0gZGF0YSArIFNUQVRf
VEVTVF9EQVRBX0xFTjsKKyAgICB1aW50MTZfdCBydW5zWzZdID0geyAwLCAwLCAwLCAwLCAwLCAw
IH07CisgICAgdWludDE2X3QgZ2Fwc1s2XSA9IHsgMCwgMCwgMCwgMCwgMCwgMCB9OworICAgIHVp
bnQxNl90IGxvX3ZhbHVlWzZdID0geyAyMzE1LCAxMTE0LCA1MjcsIDI0MCwgMTAzLCAxMDMgfTsK
KyAgICB1aW50MTZfdCBoaV92YWx1ZVs2XSA9IHsgMjY4NSwgMTM4NiwgNzIzLCAzODQsIDIwOSwg
MjA5IH07CisgICAgaW50IHN0YXRlID0gMDsKKyAgICB1aW50MTZfdCBtYXNrOworICAgIGludCBp
OworCisgICAgLyoKKyAgICAgKiB0aGUgc3RhdGUgdmFyaWFibGUgaG9sZHMgdGhlIG51bWJlciBv
ZiBiaXRzIGluIHRoZQorICAgICAqIGN1cnJlbnQgcnVuIChvciBnYXAsIGlmIG5lZ2F0aXZlKQor
ICAgICAqLworCisgICAgd2hpbGUgKGRhdGEgPCBkYXRhX2VuZCkgeworICAgICAgICAvKiBsb29w
IG92ZXIgdGhlIGJpdHMgb2YgdGhpcyBieXRlICovCisgICAgICAgIGZvciAobWFzayA9IDE7IG1h
c2sgPCAyNTY7IG1hc2sgPDw9IDEpIHsKKyAgICAgICAgICAgIGlmICgqZGF0YSAmIG1hc2spIHsK
KyAgICAgICAgICAgICAgICAvKiBuZXh0IGJpdCBpcyBhIG9uZSAgKi8KKyAgICAgICAgICAgICAg
ICBpZiAoc3RhdGUgPiAwKSB7CisgICAgICAgICAgICAgICAgICAgIC8qIHByZWZpeCBpcyBhIHJ1
biwgc28gaW5jcmVtZW50IHRoZSBydW4tY291bnQgICovCisgICAgICAgICAgICAgICAgICAgIHN0
YXRlKys7CisKKyAgICAgICAgICAgICAgICAgICAgLyogY2hlY2sgZm9yIGxvbmcgcnVucyAqLwor
ICAgICAgICAgICAgICAgICAgICBpZiAoc3RhdGUgPiAyNSkgeworICAgICAgICAgICAgICAgICAg
ICAgICAgZGVidWdfcHJpbnQoc3J0cF9tb2Rfc3RhdCwgIj4yNSBydW5zOiAlZCIsIHN0YXRlKTsK
KyAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYWxnb19mYWls
OworICAgICAgICAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHN0
YXRlIDwgMCkgeworICAgICAgICAgICAgICAgICAgICAvKiBwcmVmaXggaXMgYSBnYXAgICovCisg
ICAgICAgICAgICAgICAgICAgIGlmIChzdGF0ZSA8IC0yNSkgeworICAgICAgICAgICAgICAgICAg
ICAgICAgZGVidWdfcHJpbnQoc3J0cF9tb2Rfc3RhdCwgIj4yNSBnYXBzOiAlZCIsIHN0YXRlKTsK
KyAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYWxnb19mYWls
OyAvKiBsb25nLXJ1bnMgdGVzdAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGZhaWxlZCAgICovCisgICAgICAgICAgICAgICAgICAg
IH0KKyAgICAgICAgICAgICAgICAgICAgaWYgKHN0YXRlIDwgLTYpIHsKKyAgICAgICAgICAgICAg
ICAgICAgICAgIHN0YXRlID0gLTY7IC8qIGdyb3VwIHRvZ2V0aGVyIGdhcHMgPiA1ICovCisgICAg
ICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgZ2Fwc1stMSAtIHN0YXRlXSsr
OyAvKiBpbmNyZW1lbnQgZ2FwIGNvdW50ICAgICAgKi8KKyAgICAgICAgICAgICAgICAgICAgc3Rh
dGUgPSAxOyAgICAgICAgICAvKiBzZXQgc3RhdGUgYXQgb25lIHNldCBiaXQgKi8KKyAgICAgICAg
ICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgICAgICAvKiBzdGF0ZSBpcyB6ZXJvOyB0
aGlzIGhhcHBlbnMgb25seSBhdCBpbml0aWFsaXphdGlvbiAqLworICAgICAgICAgICAgICAgICAg
ICBzdGF0ZSA9IDE7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfSBlbHNlIHsKKyAg
ICAgICAgICAgICAgICAvKiBuZXh0IGJpdCBpcyBhIHplcm8gICovCisgICAgICAgICAgICAgICAg
aWYgKHN0YXRlID4gMCkgeworICAgICAgICAgICAgICAgICAgICAvKiBwcmVmaXggaXMgYSBydW4g
Ki8KKyAgICAgICAgICAgICAgICAgICAgaWYgKHN0YXRlID4gMjUpIHsKKyAgICAgICAgICAgICAg
ICAgICAgICAgIGRlYnVnX3ByaW50KHNydHBfbW9kX3N0YXQsICI+MjUgcnVucyAoMik6ICVkIiwg
c3RhdGUpOworICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19h
bGdvX2ZhaWw7IC8qIGxvbmctcnVucyB0ZXN0CisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmFpbGVkICAgKi8KKyAgICAgICAgICAg
ICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICBpZiAoc3RhdGUgPiA2KSB7CisgICAgICAg
ICAgICAgICAgICAgICAgICBzdGF0ZSA9IDY7IC8qIGdyb3VwIHRvZ2V0aGVyIHJ1bnMgPiA1ICov
CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgcnVuc1tzdGF0ZSAt
IDFdKys7IC8qIGluY3JlbWVudCBydW4gY291bnQgICAgICAgKi8KKyAgICAgICAgICAgICAgICAg
ICAgc3RhdGUgPSAtMTsgICAgICAgIC8qIHNldCBzdGF0ZSBhdCBvbmUgemVybyBiaXQgKi8KKyAg
ICAgICAgICAgICAgICB9IGVsc2UgaWYgKHN0YXRlIDwgMCkgeworICAgICAgICAgICAgICAgICAg
ICAvKiBwcmVmaXggaXMgYSBnYXAsIHNvIGluY3JlbWVudCBnYXAtY291bnQgKGRlY3JlbWVudCBz
dGF0ZSkKKyAgICAgICAgICAgICAgICAgICAgICovCisgICAgICAgICAgICAgICAgICAgIHN0YXRl
LS07CisKKyAgICAgICAgICAgICAgICAgICAgLyogY2hlY2sgZm9yIGxvbmcgZ2FwcyAqLworICAg
ICAgICAgICAgICAgICAgICBpZiAoc3RhdGUgPCAtMjUpIHsKKyAgICAgICAgICAgICAgICAgICAg
ICAgIGRlYnVnX3ByaW50KHNydHBfbW9kX3N0YXQsICI+MjUgZ2FwcyAoMik6ICVkIiwgc3RhdGUp
OworICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19hbGdvX2Zh
aWw7CisgICAgICAgICAgICAgICAgICAgIH0KKworICAgICAgICAgICAgICAgIH0gZWxzZSB7Cisg
ICAgICAgICAgICAgICAgICAgIC8qIHN0YXRlIGlzIHplcm87IHRoaXMgaGFwcGVucyBvbmx5IGF0
IGluaXRpYWxpemF0aW9uICovCisgICAgICAgICAgICAgICAgICAgIHN0YXRlID0gLTE7CisgICAg
ICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICB9CisKKyAgICAgICAgLyogbW92
ZSBhbG9uZyB0byBuZXh0IG9jdGV0ICovCisgICAgICAgIGRhdGErKzsKICAgICB9CiAKLSAgICAv
KiBtb3ZlIGFsb25nIHRvIG5leHQgb2N0ZXQgKi8KLSAgICBkYXRhKys7Ci0gIH0KLQotICBpZiAo
bW9kX3N0YXQub24pIHsKLSAgICBkZWJ1Z19wcmludChtb2Rfc3RhdCwgInJ1bnMgdGVzdCIsIE5V
TEwpOwotICAgIGZvciAoaT0wOyBpIDwgNjsgaSsrKQotICAgICAgZGVidWdfcHJpbnQobW9kX3N0
YXQsICIgIHJ1bnNbXTogJWQiLCBydW5zW2ldKTsKLSAgICBmb3IgKGk9MDsgaSA8IDY7IGkrKykK
LSAgICAgIGRlYnVnX3ByaW50KG1vZF9zdGF0LCAiICBnYXBzW106ICVkIiwgZ2Fwc1tpXSk7Ci0g
IH0KLQotICAvKiBjaGVjayBydW4gYW5kIGdhcCBjb3VudHMgYWdhaW5zdCB0aGUgZml4ZWQgbGlt
aXRzICovCi0gIGZvciAoaT0wOyBpIDwgNjsgaSsrKSAKLSAgICBpZiAoICAgKHJ1bnNbaV0gPCBs
b192YWx1ZVtpXSApIHx8IChydW5zW2ldID4gaGlfdmFsdWVbaV0pCi0JfHwgKGdhcHNbaV0gPCBs
b192YWx1ZVtpXSApIHx8IChnYXBzW2ldID4gaGlfdmFsdWVbaV0pKQotICAgICAgcmV0dXJuIHNy
dHBfZXJyX3N0YXR1c19hbGdvX2ZhaWw7Ci0KLSAgCi0gIHJldHVybiBzcnRwX2Vycl9zdGF0dXNf
b2s7Ci19CisgICAgaWYgKHNydHBfbW9kX3N0YXQub24pIHsKKyAgICAgICAgZGVidWdfcHJpbnQo
c3J0cF9tb2Rfc3RhdCwgInJ1bnMgdGVzdCIsIE5VTEwpOworICAgICAgICBmb3IgKGkgPSAwOyBp
IDwgNjsgaSsrKQorICAgICAgICAgICAgZGVidWdfcHJpbnQoc3J0cF9tb2Rfc3RhdCwgIiAgcnVu
c1tdOiAlZCIsIHJ1bnNbaV0pOworICAgICAgICBmb3IgKGkgPSAwOyBpIDwgNjsgaSsrKQorICAg
ICAgICAgICAgZGVidWdfcHJpbnQoc3J0cF9tb2Rfc3RhdCwgIiAgZ2Fwc1tdOiAlZCIsIGdhcHNb
aV0pOworICAgIH0KIAorICAgIC8qIGNoZWNrIHJ1biBhbmQgZ2FwIGNvdW50cyBhZ2FpbnN0IHRo
ZSBmaXhlZCBsaW1pdHMgKi8KKyAgICBmb3IgKGkgPSAwOyBpIDwgNjsgaSsrKQorICAgICAgICBp
ZiAoKHJ1bnNbaV0gPCBsb192YWx1ZVtpXSkgfHwgKHJ1bnNbaV0gPiBoaV92YWx1ZVtpXSkgfHwK
KyAgICAgICAgICAgIChnYXBzW2ldIDwgbG9fdmFsdWVbaV0pIHx8IChnYXBzW2ldID4gaGlfdmFs
dWVbaV0pKQorICAgICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19hbGdvX2ZhaWw7CiAK
KyAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1Ro
aXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by9yZXBs
YXkvcmRiLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L2xpYnNydHAvY3J5cHRvL3JlcGxheS9yZGIuYwppbmRleCAzNzQxMzY3ZjY4MDc3MjUwZTNiNjll
MTg4NTU2NWI5NjUyYzI5ZTIyLi5hYjFjN2I1NWI2ZDhmNDdlYWZlNGZjZDJmODdjMTczNjIwZTEw
YTEyIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L2xpYnNydHAvY3J5cHRvL3JlcGxheS9yZGIuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL3JlcGxheS9yZGIu
YwpAQCAtNDMsMTQgKzQzLDEyIEBACiAgKgogICovCiAKLQogI2lmZGVmIEhBVkVfQ09ORklHX0gK
LSAgICAjaW5jbHVkZSA8Y29uZmlnLmg+CisjaW5jbHVkZSA8Y29uZmlnLmg+CiAjZW5kaWYKIAog
I2luY2x1ZGUgInJkYi5oIgogCi0KIC8qCiAgKiB0aGlzIGltcGxlbWVudGF0aW9uIG9mIGEgcmVw
bGF5IGRhdGFiYXNlIHdvcmtzIGFzIGZvbGxvd3M6CiAgKgpAQCAtNjEsNyArNTksNyBAQAogICov
CiAKIC8qIHNydHBfcmRiX2luaXQgaW5pdGFsaXplcyByZGIgKi8KLXNydHBfZXJyX3N0YXR1c190
IHNydHBfcmRiX2luaXQgKHNydHBfcmRiX3QgKnJkYikKK3NydHBfZXJyX3N0YXR1c190IHNydHBf
cmRiX2luaXQoc3J0cF9yZGJfdCAqcmRiKQogewogICAgIHYxMjhfc2V0X3RvX3plcm8oJnJkYi0+
Yml0bWFzayk7CiAgICAgcmRiLT53aW5kb3dfc3RhcnQgPSAwOwpAQCAtNzEsOSArNjksOCBAQCBz
cnRwX2Vycl9zdGF0dXNfdCBzcnRwX3JkYl9pbml0IChzcnRwX3JkYl90ICpyZGIpCiAvKgogICog
c3J0cF9yZGJfY2hlY2sgY2hlY2tzIHRvIHNlZSBpZiBpbmRleCBhcHBlYXJzIGluIHJkYgogICov
Ci1zcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3JkYl9jaGVjayAoY29uc3Qgc3J0cF9yZGJfdCAqcmRi
LCB1aW50MzJfdCBwX2luZGV4KQorc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9yZGJfY2hlY2soY29u
c3Qgc3J0cF9yZGJfdCAqcmRiLCB1aW50MzJfdCBwX2luZGV4KQogewotCiAgICAgLyogaWYgdGhl
IGluZGV4IGFwcGVhcnMgYWZ0ZXIgKG9yIGF0IHZlcnkgZW5kIG9mKSB0aGUgd2luZG93LCBpdHMg
Z29vZCAqLwogICAgIGlmIChwX2luZGV4ID49IHJkYi0+d2luZG93X3N0YXJ0ICsgcmRiX2JpdHNf
aW5fYml0bWFzaykgewogICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwpAQCAtMTAx
LDM1ICs5OCwzMiBAQCBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3JkYl9jaGVjayAoY29uc3Qgc3J0
cF9yZGJfdCAqcmRiLCB1aW50MzJfdCBwX2luZGV4KQogICogaW5kaWNhdGVkIHRoYXQgdGhlIGlu
ZGV4IGRvZXMgbm90IGFwcGVhciBpbiB0aGUgcmRiLCBlLmcuLCBhIG11dGV4CiAgKiBzaG91bGQg
cHJvdGVjdCB0aGUgcmRiIGJldHdlZW4gdGhlc2UgY2FsbHMKICAqLwotc3J0cF9lcnJfc3RhdHVz
X3Qgc3J0cF9yZGJfYWRkX2luZGV4IChzcnRwX3JkYl90ICpyZGIsIHVpbnQzMl90IHBfaW5kZXgp
CitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3JkYl9hZGRfaW5kZXgoc3J0cF9yZGJfdCAqcmRiLCB1
aW50MzJfdCBwX2luZGV4KQogewotICAgIGludCBkZWx0YTsKKyAgICB1bnNpZ25lZCBpbnQgZGVs
dGE7CiAKLSAgICAvKiBoZXJlIHdlICphc3N1bWUqIHRoYXQgcF9pbmRleCA+IHJkYi0+d2luZG93
X3N0YXJ0ICovCisgICAgaWYgKHBfaW5kZXggPCByZGItPndpbmRvd19zdGFydCkKKyAgICAgICAg
cmV0dXJuIHNydHBfZXJyX3N0YXR1c19yZXBsYXlfZmFpbDsKIAogICAgIGRlbHRhID0gKHBfaW5k
ZXggLSByZGItPndpbmRvd19zdGFydCk7CiAgICAgaWYgKGRlbHRhIDwgcmRiX2JpdHNfaW5fYml0
bWFzaykgewotCiAgICAgICAgIC8qIGlmIHRoZSBwX2luZGV4IGlzIHdpdGhpbiB0aGUgd2luZG93
LCBzZXQgdGhlIGFwcHJvcHJpYXRlIGJpdCAqLwogICAgICAgICB2MTI4X3NldF9iaXQoJnJkYi0+
Yml0bWFzaywgZGVsdGEpOwogCiAgICAgfSBlbHNlIHsKLQogICAgICAgICBkZWx0YSAtPSByZGJf
Yml0c19pbl9iaXRtYXNrIC0gMTsKIAogICAgICAgICAvKiBzaGlmdCB0aGUgd2luZG93IGZvcndh
cmQgYnkgZGVsdGEgYml0cyovCiAgICAgICAgIHYxMjhfbGVmdF9zaGlmdCgmcmRiLT5iaXRtYXNr
LCBkZWx0YSk7CiAgICAgICAgIHYxMjhfc2V0X2JpdCgmcmRiLT5iaXRtYXNrLCByZGJfYml0c19p
bl9iaXRtYXNrIC0gMSk7CiAgICAgICAgIHJkYi0+d2luZG93X3N0YXJ0ICs9IGRlbHRhOwotCiAg
ICAgfQogCiAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0KIAotc3J0cF9lcnJfc3Rh
dHVzX3Qgc3J0cF9yZGJfaW5jcmVtZW50IChzcnRwX3JkYl90ICpyZGIpCitzcnRwX2Vycl9zdGF0
dXNfdCBzcnRwX3JkYl9pbmNyZW1lbnQoc3J0cF9yZGJfdCAqcmRiKQogewotCiAgICAgaWYgKHJk
Yi0+d2luZG93X3N0YXJ0ID49IDB4N2ZmZmZmZmYpIHsKICAgICAgICAgcmV0dXJuIHNydHBfZXJy
X3N0YXR1c19rZXlfZXhwaXJlZDsKICAgICB9CkBAIC0xMzcsNyArMTMxLDcgQEAgc3J0cF9lcnJf
c3RhdHVzX3Qgc3J0cF9yZGJfaW5jcmVtZW50IChzcnRwX3JkYl90ICpyZGIpCiAgICAgcmV0dXJu
IHNydHBfZXJyX3N0YXR1c19vazsKIH0KIAotdWludDMyX3Qgc3J0cF9yZGJfZ2V0X3ZhbHVlIChj
b25zdCBzcnRwX3JkYl90ICpyZGIpCit1aW50MzJfdCBzcnRwX3JkYl9nZXRfdmFsdWUoY29uc3Qg
c3J0cF9yZGJfdCAqcmRiKQogewogICAgIHJldHVybiByZGItPndpbmRvd19zdGFydDsKIH0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkv
bGlic3J0cC9jcnlwdG8vcmVwbGF5L3JkYnguYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vcmVwbGF5L3JkYnguYwppbmRleCA2
M2Y2NmZmMDI0ZTQ2MDhiODZlODgxYmU5ZDFkMTg1NTA4OGQyYTM5Li40MGNiYTAxYTFmNWRiNDM5
NDcwZDVkZTBiOWI1YTM4ZTYxY2I1MzhhIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL3JlcGxheS9yZGJ4LmMK
KysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJz
cnRwL2NyeXB0by9yZXBsYXkvcmRieC5jCkBAIC00NCwxMiArNDQsMTEgQEAKICAqLwogCiAjaWZk
ZWYgSEFWRV9DT05GSUdfSAotICAgICNpbmNsdWRlIDxjb25maWcuaD4KKyNpbmNsdWRlIDxjb25m
aWcuaD4KICNlbmRpZgogCiAjaW5jbHVkZSAicmRieC5oIgogCi0KIC8qCiAgKiBmcm9tIFJGQyAz
NzExOgogICoKQEAgLTY0LDggKzYzLDYgQEAKICAqIGluY3JlbWVudGVkIGJ5IG9uZSAoaWYgdGhl
IHBhY2tldCBjb250YWluaW5nIHMgaXMgYXV0aGVudGljKS4KICAqLwogCi0KLQogLyoKICAqIHJk
YnggaW1wbGVtZW50YXRpb24gbm90ZXMKICAqCkBAIC04MywxNCArODAsMTMgQEAKICAqIHNydHBf
aW5kZXhfYWR2YW5jZSgmZ3Vlc3MsIGRlbHRhKSwgd2hlcmUgZGVsdGEgaXMgdGhlIGRpZmZlcmVu
Y2UuCiAgKgogICoKLSAqIEEgc3J0cF9yZGJ4X3QgY29uc2lzdHMgb2YgYSBzcnRwX3h0ZF9zZXFf
bnVtX3QgYW5kIGEgYml0bWFzay4gIFRoZSBpbmRleCBpcyBoaWdoZXN0Ci0gKiBzZXF1ZW5jZSBu
dW1iZXIgdGhhdCBoYXMgYmVlbiByZWNlaXZlZCwgYW5kIHRoZSBiaXRtYXNrIGluZGljYXRlcwor
ICogQSBzcnRwX3JkYnhfdCBjb25zaXN0cyBvZiBhIHNydHBfeHRkX3NlcV9udW1fdCBhbmQgYSBi
aXRtYXNrLiAgVGhlIGluZGV4IGlzCisgKiBoaWdoZXN0IHNlcXVlbmNlIG51bWJlciB0aGF0IGhh
cyBiZWVuIHJlY2VpdmVkLCBhbmQgdGhlIGJpdG1hc2sgaW5kaWNhdGVzCiAgKiB3aGljaCBvZiB0
aGUgcmVjZW50IGluZGljaWVzIGhhdmUgYmVlbiByZWNlaXZlZCBhcyB3ZWxsLiAgVGhlCiAgKiBo
aWdoZXN0IGJpdCBpbiB0aGUgYml0bWFzayBjb3JyZXNwb25kcyB0byB0aGUgaW5kZXggaW4gdGhl
IGJpdG1hc2suCiAgKi8KIAotCi12b2lkIHNydHBfaW5kZXhfaW5pdCAoc3J0cF94dGRfc2VxX251
bV90ICpwaSkKK3ZvaWQgc3J0cF9pbmRleF9pbml0KHNydHBfeHRkX3NlcV9udW1fdCAqcGkpCiB7
CiAjaWZkZWYgTk9fNjRCSVRfTUFUSAogICAgICpwaSA9IG1ha2U2NCgwLCAwKTsKQEAgLTk5LDcg
Kzk1LDcgQEAgdm9pZCBzcnRwX2luZGV4X2luaXQgKHNydHBfeHRkX3NlcV9udW1fdCAqcGkpCiAj
ZW5kaWYKIH0KIAotdm9pZCBzcnRwX2luZGV4X2FkdmFuY2UgKHNydHBfeHRkX3NlcV9udW1fdCAq
cGksIHNydHBfc2VxdWVuY2VfbnVtYmVyX3QgcykKK3ZvaWQgc3J0cF9pbmRleF9hZHZhbmNlKHNy
dHBfeHRkX3NlcV9udW1fdCAqcGksIHNydHBfc2VxdWVuY2VfbnVtYmVyX3QgcykKIHsKICNpZmRl
ZiBOT182NEJJVF9NQVRICiAgICAgLyogYSA+IH5iIG1lYW5zIGErYiB3aWxsIGdlbmVyYXRlIGEg
Y2FycnkgKi8KQEAgLTExMCw3ICsxMDYsNiBAQCB2b2lkIHNydHBfaW5kZXhfYWR2YW5jZSAoc3J0
cF94dGRfc2VxX251bV90ICpwaSwgc3J0cF9zZXF1ZW5jZV9udW1iZXJfdCBzKQogI2VuZGlmCiB9
CiAKLQogLyoKICAqIHNydHBfaW5kZXhfZ3Vlc3MobG9jYWwsIGd1ZXNzLCBzKQogICoKQEAgLTEy
NCwyNCArMTE5LDE5IEBAIHZvaWQgc3J0cF9pbmRleF9hZHZhbmNlIChzcnRwX3h0ZF9zZXFfbnVt
X3QgKnBpLCBzcnRwX3NlcXVlbmNlX251bWJlcl90IHMpCiAgKiB1bnNpZ25lZCBpbnRlZ2VyIQog
ICovCiAKLWludDMyX3Qgc3J0cF9pbmRleF9ndWVzcyAoY29uc3Qgc3J0cF94dGRfc2VxX251bV90
ICpsb2NhbCwgc3J0cF94dGRfc2VxX251bV90ICpndWVzcywgc3J0cF9zZXF1ZW5jZV9udW1iZXJf
dCBzKQoraW50MzJfdCBzcnRwX2luZGV4X2d1ZXNzKGNvbnN0IHNydHBfeHRkX3NlcV9udW1fdCAq
bG9jYWwsCisgICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF94dGRfc2VxX251bV90ICpndWVz
cywKKyAgICAgICAgICAgICAgICAgICAgICAgICBzcnRwX3NlcXVlbmNlX251bWJlcl90IHMpCiB7
CiAjaWZkZWYgTk9fNjRCSVRfTUFUSAotICAgIHVpbnQzMl90IGxvY2FsX3JvYyA9ICgoaGlnaDMy
KCpsb2NhbCkgPDwgMTYpIHwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgKGxvdzMyKCpsb2Nh
bCkgPj4gMTYpKTsKKyAgICB1aW50MzJfdCBsb2NhbF9yb2MgPSAoKGhpZ2gzMigqbG9jYWwpIDw8
IDE2KSB8IChsb3czMigqbG9jYWwpID4+IDE2KSk7CiAgICAgdWludDE2X3QgbG9jYWxfc2VxID0g
KHVpbnQxNl90KShsb3czMigqbG9jYWwpKTsKICNlbHNlCiAgICAgdWludDMyX3QgbG9jYWxfcm9j
ID0gKHVpbnQzMl90KSgqbG9jYWwgPj4gMTYpOwogICAgIHVpbnQxNl90IGxvY2FsX3NlcSA9ICh1
aW50MTZfdCkqbG9jYWw7CiAjZW5kaWYKLSNpZmRlZiBOT182NEJJVF9NQVRICi0gICAgdWludDMy
X3QgZ3Vlc3Nfcm9jID0gKChoaWdoMzIoKmd1ZXNzKSA8PCAxNikgfAotICAgICAgICAgICAgICAg
ICAgICAgICAgICAobG93MzIoKmd1ZXNzKSA+PiAxNikpOwotICAgIHVpbnQxNl90IGd1ZXNzX3Nl
cSA9ICh1aW50MTZfdCkobG93MzIoKmd1ZXNzKSk7Ci0jZWxzZQotICAgIHVpbnQzMl90IGd1ZXNz
X3JvYyA9ICh1aW50MzJfdCkoKmd1ZXNzID4+IDE2KTsKLSAgICB1aW50MTZfdCBndWVzc19zZXEg
PSAodWludDE2X3QpKmd1ZXNzOwotI2VuZGlmCisgICAgdWludDMyX3QgZ3Vlc3Nfcm9jOworICAg
IHVpbnQxNl90IGd1ZXNzX3NlcTsKICAgICBpbnQzMl90IGRpZmZlcmVuY2U7CiAKICAgICBpZiAo
bG9jYWxfc2VxIDwgc2VxX251bV9tZWRpYW4pIHsKQEAgLTE2MywxMCArMTUzLDkgQEAgaW50MzJf
dCBzcnRwX2luZGV4X2d1ZXNzIChjb25zdCBzcnRwX3h0ZF9zZXFfbnVtX3QgKmxvY2FsLCBzcnRw
X3h0ZF9zZXFfbnVtX3QgKmcKICAgICB9CiAgICAgZ3Vlc3Nfc2VxID0gczsKIAotICAgIC8qIE5v
dGU6IGd1ZXNzX3JvYyBpcyAzMiBiaXRzLCBzbyB0aGlzIGdlbmVyYXRlcyBhIDQ4LWJpdCByZXN1
bHQhICovCisvKiBOb3RlOiBndWVzc19yb2MgaXMgMzIgYml0cywgc28gdGhpcyBnZW5lcmF0ZXMg
YSA0OC1iaXQgcmVzdWx0ISAqLwogI2lmZGVmIE5PXzY0QklUX01BVEgKLSAgICAqZ3Vlc3MgPSBt
YWtlNjQoZ3Vlc3Nfcm9jID4+IDE2LAotICAgICAgICAgICAgICAgICAgICAoZ3Vlc3Nfcm9jIDw8
IDE2KSB8IGd1ZXNzX3NlcSk7CisgICAgKmd1ZXNzID0gbWFrZTY0KGd1ZXNzX3JvYyA+PiAxNiwg
KGd1ZXNzX3JvYyA8PCAxNikgfCBndWVzc19zZXEpOwogI2Vsc2UKICAgICAqZ3Vlc3MgPSAoKCh1
aW50NjRfdClndWVzc19yb2MpIDw8IDE2KSB8IGd1ZXNzX3NlcTsKICNlbmRpZgpAQCAtMTc5LDEx
ICsxNjgsMTEgQEAgaW50MzJfdCBzcnRwX2luZGV4X2d1ZXNzIChjb25zdCBzcnRwX3h0ZF9zZXFf
bnVtX3QgKmxvY2FsLCBzcnRwX3h0ZF9zZXFfbnVtX3QgKmcKICAqCiAgKi8KIAotCiAvKgotICog
IHNydHBfcmRieF9pbml0KCZyLCB3cykgaW5pdGlhbGl6ZXMgdGhlIHNydHBfcmRieF90IHBvaW50
ZWQgdG8gYnkgciB3aXRoIHdpbmRvdyBzaXplIHdzCisgKiAgc3J0cF9yZGJ4X2luaXQoJnIsIHdz
KSBpbml0aWFsaXplcyB0aGUgc3J0cF9yZGJ4X3QgcG9pbnRlZCB0byBieSByIHdpdGgKKyAqIHdp
bmRvdyBzaXplIHdzCiAgKi8KLXNydHBfZXJyX3N0YXR1c190IHNydHBfcmRieF9pbml0IChzcnRw
X3JkYnhfdCAqcmRieCwgdW5zaWduZWQgbG9uZyB3cykKK3NydHBfZXJyX3N0YXR1c190IHNydHBf
cmRieF9pbml0KHNydHBfcmRieF90ICpyZGJ4LCB1bnNpZ25lZCBsb25nIHdzKQogewogICAgIGlm
ICh3cyA9PSAwKSB7CiAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtOwpA
QCAtMjAxLDcgKzE5MCw3IEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfcmRieF9pbml0IChzcnRw
X3JkYnhfdCAqcmRieCwgdW5zaWduZWQgbG9uZyB3cykKIC8qCiAgKiAgc3J0cF9yZGJ4X2RlYWxs
b2MoJnIpIGZyZWVzIG1lbW9yeSBmb3IgdGhlIHNydHBfcmRieF90IHBvaW50ZWQgdG8gYnkgcgog
ICovCi1zcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3JkYnhfZGVhbGxvYyAoc3J0cF9yZGJ4X3QgKnJk
YngpCitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3JkYnhfZGVhbGxvYyhzcnRwX3JkYnhfdCAqcmRi
eCkKIHsKICAgICBiaXR2ZWN0b3JfZGVhbGxvYygmcmRieC0+Yml0bWFzayk7CiAKQEAgLTIxNSwx
MiArMjA0LDEyIEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfcmRieF9kZWFsbG9jIChzcnRwX3Jk
YnhfdCAqcmRieCkKICAqIHNydHBfZXJyX3N0YXR1c19yZXBsYXlfb2xkOyBvdGhlcndpc2UsIHNy
dHBfZXJyX3N0YXR1c19vayBpcyByZXR1cm5lZC4KICAqCiAgKi8KLXNydHBfZXJyX3N0YXR1c190
IHNydHBfcmRieF9zZXRfcm9jIChzcnRwX3JkYnhfdCAqcmRieCwgdWludDMyX3Qgcm9jKQorc3J0
cF9lcnJfc3RhdHVzX3Qgc3J0cF9yZGJ4X3NldF9yb2Moc3J0cF9yZGJ4X3QgKnJkYngsIHVpbnQz
Ml90IHJvYykKIHsKICAgICBiaXR2ZWN0b3Jfc2V0X3RvX3plcm8oJnJkYngtPmJpdG1hc2spOwog
CiAjaWZkZWYgTk9fNjRCSVRfTUFUSAotICAjZXJyb3Igbm90IHlldCBpbXBsZW1lbnRlZAorI2Vy
cm9yIG5vdCB5ZXQgaW1wbGVtZW50ZWQKICNlbHNlCiAKICAgICAvKiBtYWtlIHN1cmUgdGhhdCB3
ZSdyZSBub3QgbW92aW5nIGJhY2t3YXJkcyAqLwpAQCAtMjQwLDcgKzIyOSw3IEBAIHNydHBfZXJy
X3N0YXR1c190IHNydHBfcmRieF9zZXRfcm9jIChzcnRwX3JkYnhfdCAqcmRieCwgdWludDMyX3Qg
cm9jKQogICogZm9yIHRoZSBzcnRwX3JkYnhfdCBwb2ludGVkIHRvIGJ5IHJkYngKICAqCiAgKi8K
LXNydHBfeHRkX3NlcV9udW1fdCBzcnRwX3JkYnhfZ2V0X3BhY2tldF9pbmRleCAoY29uc3Qgc3J0
cF9yZGJ4X3QgKnJkYngpCitzcnRwX3h0ZF9zZXFfbnVtX3Qgc3J0cF9yZGJ4X2dldF9wYWNrZXRf
aW5kZXgoY29uc3Qgc3J0cF9yZGJ4X3QgKnJkYngpCiB7CiAgICAgcmV0dXJuIHJkYngtPmluZGV4
OwogfQpAQCAtMjUwLDcgKzIzOSw3IEBAIHNydHBfeHRkX3NlcV9udW1fdCBzcnRwX3JkYnhfZ2V0
X3BhY2tldF9pbmRleCAoY29uc3Qgc3J0cF9yZGJ4X3QgKnJkYngpCiAgKiBmb3IgdGhlIHNydHBf
cmRieF90IHBvaW50ZWQgdG8gYnkgcmRieAogICoKICAqLwotdW5zaWduZWQgbG9uZyBzcnRwX3Jk
YnhfZ2V0X3dpbmRvd19zaXplIChjb25zdCBzcnRwX3JkYnhfdCAqcmRieCkKK3Vuc2lnbmVkIGxv
bmcgc3J0cF9yZGJ4X2dldF93aW5kb3dfc2l6ZShjb25zdCBzcnRwX3JkYnhfdCAqcmRieCkKIHsK
ICAgICByZXR1cm4gYml0dmVjdG9yX2dldF9sZW5ndGgoJnJkYngtPmJpdG1hc2spOwogfQpAQCAt
MjU5LDE2ICsyNDgsMTcgQEAgdW5zaWduZWQgbG9uZyBzcnRwX3JkYnhfZ2V0X3dpbmRvd19zaXpl
IChjb25zdCBzcnRwX3JkYnhfdCAqcmRieCkKICAqIHNydHBfcmRieF9jaGVjaygmciwgZGVsdGEp
IGNoZWNrcyB0byBzZWUgaWYgdGhlIHNydHBfeHRkX3NlcV9udW1fdAogICogd2hpY2ggaXMgYXQg
cmRieC0+aW5kZXggKyBkZWx0YSBpcyBpbiB0aGUgcmRiCiAgKi8KLXNydHBfZXJyX3N0YXR1c190
IHNydHBfcmRieF9jaGVjayAoY29uc3Qgc3J0cF9yZGJ4X3QgKnJkYngsIGludCBkZWx0YSkKK3Ny
dHBfZXJyX3N0YXR1c190IHNydHBfcmRieF9jaGVjayhjb25zdCBzcnRwX3JkYnhfdCAqcmRieCwg
aW50IGRlbHRhKQogewotCi0gICAgaWYgKGRlbHRhID4gMCkgeyAgICAgLyogaWYgZGVsdGEgaXMg
cG9zaXRpdmUsIGl0J3MgZ29vZCAqLworICAgIGlmIChkZWx0YSA+IDApIHsgLyogaWYgZGVsdGEg
aXMgcG9zaXRpdmUsIGl0J3MgZ29vZCAqLwogICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVz
X29rOwogICAgIH0gZWxzZSBpZiAoKGludCkoYml0dmVjdG9yX2dldF9sZW5ndGgoJnJkYngtPmJp
dG1hc2spIC0gMSkgKyBkZWx0YSA8IDApIHsKICAgICAgICAgLyogaWYgZGVsdGEgaXMgbG93ZXIg
dGhhbiB0aGUgYml0bWFzaywgaXQncyBiYWQgKi8KICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0
YXR1c19yZXBsYXlfb2xkOwotICAgIH0gZWxzZSBpZiAoYml0dmVjdG9yX2dldF9iaXQoJnJkYngt
PmJpdG1hc2ssCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoaW50KShiaXR2ZWN0
b3JfZ2V0X2xlbmd0aCgmcmRieC0+Yml0bWFzaykgLSAxKSArIGRlbHRhKSA9PSAxKSB7CisgICAg
fSBlbHNlIGlmIChiaXR2ZWN0b3JfZ2V0X2JpdCgKKyAgICAgICAgICAgICAgICAgICAmcmRieC0+
Yml0bWFzaywKKyAgICAgICAgICAgICAgICAgICAoaW50KShiaXR2ZWN0b3JfZ2V0X2xlbmd0aCgm
cmRieC0+Yml0bWFzaykgLSAxKSArIGRlbHRhKSA9PQorICAgICAgICAgICAgICAgMSkgewogICAg
ICAgICAvKiBkZWx0YSBpcyB3aXRoaW4gdGhlIHdpbmRvdywgc28gY2hlY2sgdGhlIGJpdG1hc2sg
Ki8KICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19yZXBsYXlfZmFpbDsKICAgICB9CkBA
IC0yODUsMTcgKzI3NSwxOCBAQCBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3JkYnhfY2hlY2sgKGNv
bnN0IHNydHBfcmRieF90ICpyZGJ4LCBpbnQgZGVsdGEpCiAgKiBpbmRpY2F0ZWQgdGhhdCB0aGUg
aW5kZXggZG9lcyBub3QgYXBwZWFyIGluIHRoZSByZGJ4LCBlLmcuLCBhIG11dGV4CiAgKiBzaG91
bGQgcHJvdGVjdCB0aGUgcmRieCBiZXR3ZWVuIHRoZXNlIGNhbGxzIGlmIG5lZWQgYmUKICAqLwot
c3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9yZGJ4X2FkZF9pbmRleCAoc3J0cF9yZGJ4X3QgKnJkYngs
IGludCBkZWx0YSkKK3NydHBfZXJyX3N0YXR1c190IHNydHBfcmRieF9hZGRfaW5kZXgoc3J0cF9y
ZGJ4X3QgKnJkYngsIGludCBkZWx0YSkKIHsKLQogICAgIGlmIChkZWx0YSA+IDApIHsKICAgICAg
ICAgLyogc2hpZnQgZm9yd2FyZCBieSBkZWx0YSAqLwogICAgICAgICBzcnRwX2luZGV4X2FkdmFu
Y2UoJnJkYngtPmluZGV4LCBkZWx0YSk7CiAgICAgICAgIGJpdHZlY3Rvcl9sZWZ0X3NoaWZ0KCZy
ZGJ4LT5iaXRtYXNrLCBkZWx0YSk7Ci0gICAgICAgIGJpdHZlY3Rvcl9zZXRfYml0KCZyZGJ4LT5i
aXRtYXNrLCBiaXR2ZWN0b3JfZ2V0X2xlbmd0aCgmcmRieC0+Yml0bWFzaykgLSAxKTsKKyAgICAg
ICAgYml0dmVjdG9yX3NldF9iaXQoJnJkYngtPmJpdG1hc2ssCisgICAgICAgICAgICAgICAgICAg
ICAgICAgIGJpdHZlY3Rvcl9nZXRfbGVuZ3RoKCZyZGJ4LT5iaXRtYXNrKSAtIDEpOwogICAgIH0g
ZWxzZSB7CiAgICAgICAgIC8qIGRlbHRhIGlzIGluIHdpbmRvdyAqLwotICAgICAgICBiaXR2ZWN0
b3Jfc2V0X2JpdCgmcmRieC0+Yml0bWFzaywgYml0dmVjdG9yX2dldF9sZW5ndGgoJnJkYngtPmJp
dG1hc2spIC0gMSArIGRlbHRhKTsKKyAgICAgICAgYml0dmVjdG9yX3NldF9iaXQoJnJkYngtPmJp
dG1hc2ssCisgICAgICAgICAgICAgICAgICAgICAgICAgIGJpdHZlY3Rvcl9nZXRfbGVuZ3RoKCZy
ZGJ4LT5iaXRtYXNrKSAtIDEgKyBkZWx0YSk7CiAgICAgfQogCiAgICAgLyogbm90ZSB0aGF0IHdl
IG5lZWQgbm90IGNvbnNpZGVyIHRoZSBjYXNlIHRoYXQgZGVsdGEgPT0gMCAqLwpAQCAtMzAzLDgg
KzI5NCw2IEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfcmRieF9hZGRfaW5kZXggKHNydHBfcmRi
eF90ICpyZGJ4LCBpbnQgZGVsdGEpCiAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0K
IAotCi0KIC8qCiAgKiBzcnRwX3JkYnhfZXN0aW1hdGVfaW5kZXgocmRieCwgZ3Vlc3MsIHMpCiAg
KgpAQCAtMzEzLDI1ICszMDIsMjcgQEAgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9yZGJ4X2FkZF9p
bmRleCAoc3J0cF9yZGJ4X3QgKnJkYngsIGludCBkZWx0YSkKICAqIGluZGV4IHRvIHdoaWNoIHMg
Y29ycmVzcG9uZHMsIGFuZCByZXR1cm5zIHRoZSBkaWZmZXJlbmNlIGJldHdlZW4KICAqICpndWVz
cyBhbmQgdGhlIGxvY2FsbHkgc3RvcmVkIHN5bmNoIGluZm8KICAqLwotaW50MzJfdCBzcnRwX3Jk
YnhfZXN0aW1hdGVfaW5kZXggKGNvbnN0IHNydHBfcmRieF90ICpyZGJ4LCBzcnRwX3h0ZF9zZXFf
bnVtX3QgKmd1ZXNzLCBzcnRwX3NlcXVlbmNlX251bWJlcl90IHMpCitpbnQzMl90IHNydHBfcmRi
eF9lc3RpbWF0ZV9pbmRleChjb25zdCBzcnRwX3JkYnhfdCAqcmRieCwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHNydHBfeHRkX3NlcV9udW1fdCAqZ3Vlc3MsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBzcnRwX3NlcXVlbmNlX251bWJlcl90IHMpCiB7Ci0KLSAg
ICAvKgotICAgICAqIGlmIHRoZSBzZXF1ZW5jZSBudW1iZXIgYW5kIHJvbGxvdmVyIGNvdW50ZXIg
aW4gdGhlIHJkYnggYXJlCi0gICAgICogbm9uLXplcm8sIHRoZW4gdXNlIHRoZSBzcnRwX2luZGV4
X2d1ZXNzKC4uLikgZnVuY3Rpb24sIG90aGVyd2lzZSwganVzdAotICAgICAqIHNldCB0aGUgcm9s
bG92ZXIgY291bnRlciB0byB6ZXJvIChzaW5jZSB0aGUgc3J0cF9pbmRleF9ndWVzcyguLi4pCi0g
ICAgICogZnVuY3Rpb24gbWlnaHQgaW5jb3JyZWN0bHkgZ3Vlc3MgdGhhdCB0aGUgcm9sbG92ZXIg
Y291bnRlciBpcwotICAgICAqIDB4ZmZmZmZmZmYpCi0gICAgICovCisvKgorICogaWYgdGhlIHNl
cXVlbmNlIG51bWJlciBhbmQgcm9sbG92ZXIgY291bnRlciBpbiB0aGUgcmRieCBhcmUKKyAqIG5v
bi16ZXJvLCB0aGVuIHVzZSB0aGUgc3J0cF9pbmRleF9ndWVzcyguLi4pIGZ1bmN0aW9uLCBvdGhl
cndpc2UsIGp1c3QKKyAqIHNldCB0aGUgcm9sbG92ZXIgY291bnRlciB0byB6ZXJvIChzaW5jZSB0
aGUgc3J0cF9pbmRleF9ndWVzcyguLi4pCisgKiBmdW5jdGlvbiBtaWdodCBpbmNvcnJlY3RseSBn
dWVzcyB0aGF0IHRoZSByb2xsb3ZlciBjb3VudGVyIGlzCisgKiAweGZmZmZmZmZmKQorICovCiAK
ICNpZmRlZiBOT182NEJJVF9NQVRICiAgICAgLyogc2VxX251bV9tZWRpYW4gPSAweDgwMDAgKi8K
LSAgICBpZiAoaGlnaDMyKHJkYngtPmluZGV4KSA+IDAgfHwKLSAgICAgICAgbG93MzIocmRieC0+
aW5kZXgpID4gc2VxX251bV9tZWRpYW4pCisgICAgaWYgKGhpZ2gzMihyZGJ4LT5pbmRleCkgPiAw
IHx8IGxvdzMyKHJkYngtPmluZGV4KSA+IHNlcV9udW1fbWVkaWFuKQogI2Vsc2UKICAgICBpZiAo
cmRieC0+aW5kZXggPiBzZXFfbnVtX21lZGlhbikKICNlbmRpZgotICAgIHsgcmV0dXJuIHNydHBf
aW5kZXhfZ3Vlc3MoJnJkYngtPmluZGV4LCBndWVzcywgcyk7IH0KKyAgICB7CisgICAgICAgIHJl
dHVybiBzcnRwX2luZGV4X2d1ZXNzKCZyZGJ4LT5pbmRleCwgZ3Vlc3MsIHMpOworICAgIH0KIAog
I2lmZGVmIE5PXzY0QklUX01BVEgKICAgICAqZ3Vlc3MgPSBtYWtlNjQoMCwgKHVpbnQzMl90KXMp
OwpAQCAtMzcyLDEyICszNjMsMTIgQEAgdWludDMyX3Qgc3J0cF9yZGJ4X2dldF9yb2MoY29uc3Qg
c3J0cF9yZGJ4X3QgKnJkYngpCiAgKiByb2xsb3ZlciBjb3VudGVyIHZhbHVlLCB0aGVuIHRoZSBm
dW5jdGlvbiByZXR1cm5zCiAgKiBzcnRwX2Vycl9zdGF0dXNfcmVwbGF5X29sZCwgb3RoZXJ3aXNl
LCBzcnRwX2Vycl9zdGF0dXNfb2sgaXMgcmV0dXJuZWQuCiAgKi8KLXNydHBfZXJyX3N0YXR1c190
IHNydHBfcmRieF9zZXRfcm9jX3NlcSAoc3J0cF9yZGJ4X3QgKnJkYngsCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IHJvYywKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDE2X3Qgc2VxKQorc3J0cF9lcnJfc3RhdHVz
X3Qgc3J0cF9yZGJ4X3NldF9yb2Nfc2VxKHNydHBfcmRieF90ICpyZGJ4LAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IHJvYywKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MTZfdCBzZXEpCiB7CiAjaWZkZWYgTk9fNjRC
SVRfTUFUSAotICAjZXJyb3Igbm90IHlldCBpbXBsZW1lbnRlZAorI2Vycm9yIG5vdCB5ZXQgaW1w
bGVtZW50ZWQKICNlbHNlCiAKICAgICAvKiBtYWtlIHN1cmUgdGhhdCB3ZSdyZSBub3QgbW92aW5n
IGJhY2t3YXJkcyAqLwpAQCAtMzkzLDQgKzM4NCwzIEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBf
cmRieF9zZXRfcm9jX3NlcSAoc3J0cF9yZGJ4X3QgKnJkYngsCiAKICAgICByZXR1cm4gc3J0cF9l
cnJfc3RhdHVzX29rOwogfQotCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL3JlcGxheS91dF9zaW0uYyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlw
dG8vcmVwbGF5L3V0X3NpbS5jCmluZGV4IGI1MDE2NGNlZDFkOWU1NGVhOTI2OWRjMTkxMzk2Zjhl
Yjk2YzBmZjQuLmM2MjFjMGU5ZjIyNTljMTU0MDgxN2IwZGRmN2MxN2RmOTAzYjUyOTIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGli
c3J0cC9jcnlwdG8vcmVwbGF5L3V0X3NpbS5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vcmVwbGF5L3V0X3NpbS5jCkBA
IC0zLDMyICszLDMyIEBACiAgKgogICogYW4gdW5yZWxpYWJsZSB0cmFuc3BvcnQgc2ltdWxhdG9y
CiAgKiAoZm9yIHRlc3RpbmcgcmVwbGF5IGRhdGFiYXNlcyBhbmQgc3VjaGxpa2UpCi0gKiAKKyAq
CiAgKiBEYXZpZCBBLiBNY0dyZXcKICAqIENpc2NvIFN5c3RlbXMsIEluYy4KICAqLwogCiAvKgot
ICoJCisgKgogICogQ29weXJpZ2h0IChjKSAyMDAxLTIwMTcsIENpc2NvIFN5c3RlbXMsIEluYy4K
ICAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKiAKKyAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlm
aWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucwogICogYXJlIG1ldDoKLSAqIAorICoKICAqICAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKICAqICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogCisg
KgogICogICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlCiAgKiAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nCiAgKiAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZAogICogICB3aXRoIHRoZSBkaXN0cmlidXRpb24u
Ci0gKiAKKyAqCiAgKiAgIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIENpc2NvIFN5c3RlbXMsIElu
Yy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKICAqICAgY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRv
IGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkCiAgKiAgIGZyb20gdGhpcyBzb2Z0
d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLSAqIAorICoK
ICAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFO
RCBDT05UUklCVVRPUlMKICAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCiAgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBX
QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUwpAQCAtNDQsNjYgKzQ0LDYx
IEBACiAgKgogICovCiAKLQogI2lmZGVmIEhBVkVfQ09ORklHX0gKLSAgICAjaW5jbHVkZSA8Y29u
ZmlnLmg+CisjaW5jbHVkZSA8Y29uZmlnLmg+CiAjZW5kaWYKIAogI2luY2x1ZGUgInV0X3NpbS5o
IgogCi0KLWludAotdXRfY29tcGFyKGNvbnN0IHZvaWQgKmEsIGNvbnN0IHZvaWQgKmIpIHsKLSAg
cmV0dXJuIHJhbmQoKSA+IChSQU5EX01BWC8yKSA/IC0xIDogMTsKK2ludCB1dF9jb21wYXIoY29u
c3Qgdm9pZCAqYSwgY29uc3Qgdm9pZCAqYikKK3sKKyAgICByZXR1cm4gcmFuZCgpID4gKFJBTkRf
TUFYIC8gMikgPyAtMSA6IDE7CiB9CiAKLXZvaWQKLXV0X2luaXQodXRfY29ubmVjdGlvbiAqdXRj
KSB7Ci0gIGludCBpOwotICB1dGMtPmluZGV4ID0gMDsKK3ZvaWQgdXRfaW5pdCh1dF9jb25uZWN0
aW9uICp1dGMpCit7CisgICAgaW50IGk7CisgICAgdXRjLT5pbmRleCA9IDA7CiAKLSAgZm9yIChp
PTA7IGkgPCBVVF9CVUY7IGkrKykKLSAgICB1dGMtPmJ1ZmZlcltpXSA9IGk7Ci0gIAotICBxc29y
dCh1dGMtPmJ1ZmZlciwgVVRfQlVGLCBzaXplb2YodWludDMyX3QpLCB1dF9jb21wYXIpOworICAg
IGZvciAoaSA9IDA7IGkgPCBVVF9CVUY7IGkrKykKKyAgICAgICAgdXRjLT5idWZmZXJbaV0gPSBp
OwogCi0gIHV0Yy0+aW5kZXggPSBVVF9CVUYgLSAxOwotfQorICAgIHFzb3J0KHV0Yy0+YnVmZmVy
LCBVVF9CVUYsIHNpemVvZih1aW50MzJfdCksIHV0X2NvbXBhcik7CiAKLXVpbnQzMl90Ci11dF9u
ZXh0X2luZGV4KHV0X2Nvbm5lY3Rpb24gKnV0YykgewotICB1aW50MzJfdCB0bXA7CisgICAgdXRj
LT5pbmRleCA9IFVUX0JVRiAtIDE7Cit9CiAKLSAgdG1wID0gdXRjLT5idWZmZXJbMF07Ci0gIHV0
Yy0+aW5kZXgrKzsKLSAgdXRjLT5idWZmZXJbMF0gPSB1dGMtPmluZGV4OwordWludDMyX3QgdXRf
bmV4dF9pbmRleCh1dF9jb25uZWN0aW9uICp1dGMpCit7CisgICAgdWludDMyX3QgdG1wOwogCi0g
IHFzb3J0KHV0Yy0+YnVmZmVyLCBVVF9CVUYsIHNpemVvZih1aW50MzJfdCksIHV0X2NvbXBhcik7
Ci0gIAotICByZXR1cm4gdG1wOwotfQorICAgIHRtcCA9IHV0Yy0+YnVmZmVyWzBdOworICAgIHV0
Yy0+aW5kZXgrKzsKKyAgICB1dGMtPmJ1ZmZlclswXSA9IHV0Yy0+aW5kZXg7CiAKKyAgICBxc29y
dCh1dGMtPmJ1ZmZlciwgVVRfQlVGLCBzaXplb2YodWludDMyX3QpLCB1dF9jb21wYXIpOwogCisg
ICAgcmV0dXJuIHRtcDsKK30KIAogI2lmZGVmIFVUX1RFU1QKIAogI2luY2x1ZGUgPHN0ZGlvLmg+
CiAKLWludAotbWFpbigpIHsKLSAgdWludDMyX3QgaSwgaXJlY3ZkLCBpZGlmZjsKLSAgdXRfY29u
bmVjdGlvbiB1dGM7CitpbnQgbWFpbigpCit7CisgICAgdWludDMyX3QgaSwgaXJlY3ZkLCBpZGlm
ZjsKKyAgICB1dF9jb25uZWN0aW9uIHV0YzsKIAotICB1dF9pbml0KCZ1dGMpOworICAgIHV0X2lu
aXQoJnV0Yyk7CiAKLSAgZm9yIChpPTA7IGkgPCAxMDAwOyBpKyspIHsKLSAgICBpcmVjdmQgPSB1
dF9uZXh0X2luZGV4KCZ1dGMpOwotICAgIGlkaWZmID0gaSAtIGlyZWN2ZDsKLSAgICBwcmludGYo
IiVsdVx0JWx1XHQlZFxuIiwgaSwgaXJlY3ZkLCBpZGlmZik7Ci0gIH0KLSAgCi0gIHJldHVybiAw
OwotfQorICAgIGZvciAoaSA9IDA7IGkgPCAxMDAwOyBpKyspIHsKKyAgICAgICAgaXJlY3ZkID0g
dXRfbmV4dF9pbmRleCgmdXRjKTsKKyAgICAgICAgaWRpZmYgPSBpIC0gaXJlY3ZkOworICAgICAg
ICBwcmludGYoIiVsdVx0JWx1XHQlZFxuIiwgaSwgaXJlY3ZkLCBpZGlmZik7CisgICAgfQogCisg
ICAgcmV0dXJuIDA7Cit9CiAKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by90ZXN0L2F1dGhfZHJp
dmVyLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnNydHAvY3J5cHRvL3Rlc3QvYXV0aF9kcml2ZXIuYwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggZTY5ZGUyOWJiMmQxZDY0MzRiOGIyOWFlNzc1YWQ4YzJlNDhjNTM5MS4uMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by90ZXN0L2Np
cGhlcl9kcml2ZXIuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRf
cGFydHkvbGlic3J0cC9jcnlwdG8vdGVzdC9jaXBoZXJfZHJpdmVyLmMKaW5kZXggYjYzY2Q1YmEw
YWNhODY2YmVhZWE5NWUwZjNkMDcyMTNkOTZmZWZmNi4uZTI4ZjVmMjY0ZjhkYTM2NWNhYjZmZDZj
ZTk2YzY5NjQ5MjNjZjlmMyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by90ZXN0L2NpcGhlcl9kcml2ZXIuYwor
KysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNy
dHAvY3J5cHRvL3Rlc3QvY2lwaGVyX2RyaXZlci5jCkBAIC04LDI2ICs4LDI2IEBACiAgKi8KIAog
LyoKLSAqCQorICoKICAqIENvcHlyaWdodCAoYykgMjAwMS0yMDE3IENpc2NvIFN5c3RlbXMsIElu
Yy4KICAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKiAKKyAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBh
bmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1v
ZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29u
ZGl0aW9ucwogICogYXJlIG1ldDoKLSAqIAorICoKICAqICAgUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKICAqICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICog
CisgKgogICogICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2Ug
dGhlIGFib3ZlCiAgKiAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nCiAgKiAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZAogICogICB3aXRoIHRoZSBkaXN0cmlidXRp
b24uCi0gKiAKKyAqCiAgKiAgIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIENpc2NvIFN5c3RlbXMs
IEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKICAqICAgY29udHJpYnV0b3JzIG1heSBiZSB1c2Vk
IHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkCiAgKiAgIGZyb20gdGhpcyBz
b2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLSAqIAor
ICoKICAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJT
IEFORCBDT05UUklCVVRPUlMKICAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCiAgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUwpAQCAtNDQsMTIgKzQ0
LDExIEBACiAgKi8KIAogI2lmZGVmIEhBVkVfQ09ORklHX0gKLSAgICAjaW5jbHVkZSA8Y29uZmln
Lmg+CisjaW5jbHVkZSA8Y29uZmlnLmg+CiAjZW5kaWYKIAotI2luY2x1ZGUgPHN0ZGlvLmg+ICAg
ICAgICAgICAvKiBmb3IgcHJpbnRmKCkgKi8KLSNpbmNsdWRlIDxzdGRsaWIuaD4gICAgICAgICAg
LyogZm9yIHJhbmQoKSAqLwotI2luY2x1ZGUgPHN0cmluZy5oPiAgICAgICAgICAvKiBmb3IgbWVt
c2V0KCkgKi8KKyNpbmNsdWRlIDxzdGRpby5oPiAgLyogZm9yIHByaW50ZigpICovCisjaW5jbHVk
ZSA8c3RkbGliLmg+IC8qIGZvciByYW5kKCkgKi8KICNpbmNsdWRlICJnZXRvcHRfcy5oIgogI2lu
Y2x1ZGUgImNpcGhlci5oIgogI2lmZGVmIE9QRU5TU0wKQEAgLTYxLDEyICs2MCw5IEBACiAKICNk
ZWZpbmUgUFJJTlRfREVCVUcgMAogCi12b2lkCi1jaXBoZXJfZHJpdmVyX3Rlc3RfdGhyb3VnaHB1
dChzcnRwX2NpcGhlcl90ICpjKTsKLQotc3J0cF9lcnJfc3RhdHVzX3QKLWNpcGhlcl9kcml2ZXJf
c2VsZl90ZXN0KHNydHBfY2lwaGVyX3R5cGVfdCAqY3QpOwordm9pZCBjaXBoZXJfZHJpdmVyX3Rl
c3RfdGhyb3VnaHB1dChzcnRwX2NpcGhlcl90ICpjKTsKIAorc3J0cF9lcnJfc3RhdHVzX3QgY2lw
aGVyX2RyaXZlcl9zZWxmX3Rlc3Qoc3J0cF9jaXBoZXJfdHlwZV90ICpjdCk7CiAKIC8qCiAgKiBj
aXBoZXJfZHJpdmVyX3Rlc3RfYnVmZmVyaW5nKGN0KSB0ZXN0cyB0aGUgY2lwaGVyJ3Mgb3V0cHV0
CkBAIC03NCw0NCArNzAsNDMgQEAgY2lwaGVyX2RyaXZlcl9zZWxmX3Rlc3Qoc3J0cF9jaXBoZXJf
dHlwZV90ICpjdCk7CiAgKiBjYWxscwogICovCiAKLXNydHBfZXJyX3N0YXR1c190Ci1jaXBoZXJf
ZHJpdmVyX3Rlc3RfYnVmZmVyaW5nKHNydHBfY2lwaGVyX3QgKmMpOwotCitzcnRwX2Vycl9zdGF0
dXNfdCBjaXBoZXJfZHJpdmVyX3Rlc3RfYnVmZmVyaW5nKHNydHBfY2lwaGVyX3QgKmMpOwogCiAv
KgogICogZnVuY3Rpb25zIGZvciB0ZXN0aW5nIGNpcGhlciBjYWNoZSB0aHJhc2gKICAqLwotc3J0
cF9lcnJfc3RhdHVzX3QKLWNpcGhlcl9kcml2ZXJfdGVzdF9hcnJheV90aHJvdWdocHV0KHNydHBf
Y2lwaGVyX3R5cGVfdCAqY3QsIAotCQkJCSAgICBpbnQga2xlbiwgaW50IG51bV9jaXBoZXIpOwor
c3J0cF9lcnJfc3RhdHVzX3QgY2lwaGVyX2RyaXZlcl90ZXN0X2FycmF5X3Rocm91Z2hwdXQoc3J0
cF9jaXBoZXJfdHlwZV90ICpjdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGludCBrbGVuLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IG51bV9jaXBoZXIpOwogCi12b2lkCi1jaXBo
ZXJfYXJyYXlfdGVzdF90aHJvdWdocHV0KHNydHBfY2lwaGVyX3QgKmNhW10sIGludCBudW1fY2lw
aGVyKTsKK3ZvaWQgY2lwaGVyX2FycmF5X3Rlc3RfdGhyb3VnaHB1dChzcnRwX2NpcGhlcl90ICpj
YVtdLCBpbnQgbnVtX2NpcGhlcik7CiAKLXVpbnQ2NF90Ci1jaXBoZXJfYXJyYXlfYml0c19wZXJf
c2Vjb25kKHNydHBfY2lwaGVyX3QgKmNpcGhlcl9hcnJheVtdLCBpbnQgbnVtX2NpcGhlciwgCi0J
CQkgICAgIHVuc2lnbmVkIG9jdGV0c19pbl9idWZmZXIsIGludCBudW1fdHJpYWxzKTsKK3VpbnQ2
NF90IGNpcGhlcl9hcnJheV9iaXRzX3Blcl9zZWNvbmQoc3J0cF9jaXBoZXJfdCAqY2lwaGVyX2Fy
cmF5W10sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBudW1fY2lw
aGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBvY3Rl
dHNfaW5fYnVmZmVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQg
bnVtX3RyaWFscyk7CiAKLXNydHBfZXJyX3N0YXR1c190Ci1jaXBoZXJfYXJyYXlfZGVsZXRlKHNy
dHBfY2lwaGVyX3QgKmNpcGhlcl9hcnJheVtdLCBpbnQgbnVtX2NpcGhlcik7CitzcnRwX2Vycl9z
dGF0dXNfdCBjaXBoZXJfYXJyYXlfZGVsZXRlKHNydHBfY2lwaGVyX3QgKmNpcGhlcl9hcnJheVtd
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgbnVtX2NpcGhlcik7
CiAKLXNydHBfZXJyX3N0YXR1c190Ci1jaXBoZXJfYXJyYXlfYWxsb2NfaW5pdChzcnRwX2NpcGhl
cl90ICoqKmNpcGhlcl9hcnJheSwgaW50IG51bV9jaXBoZXJzLAotCQkJc3J0cF9jaXBoZXJfdHlw
ZV90ICpjdHlwZSwgaW50IGtsZW4pOworc3J0cF9lcnJfc3RhdHVzX3QgY2lwaGVyX2FycmF5X2Fs
bG9jX2luaXQoc3J0cF9jaXBoZXJfdCAqKipjaXBoZXJfYXJyYXksCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgbnVtX2NpcGhlcnMsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcnRwX2NpcGhlcl90eXBlX3QgKmN0eXBlLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IGtsZW4pOwogCi12
b2lkCi11c2FnZShjaGFyICpwcm9nX25hbWUpIHsKLSAgcHJpbnRmKCJ1c2FnZTogJXMgWyAtdCB8
IC12IHwgLWEgXVxuIiwgcHJvZ19uYW1lKTsKLSAgZXhpdCgyNTUpOwordm9pZCB1c2FnZShjaGFy
ICpwcm9nX25hbWUpCit7CisgICAgcHJpbnRmKCJ1c2FnZTogJXMgWyAtdCB8IC12IHwgLWEgXVxu
IiwgcHJvZ19uYW1lKTsKKyAgICBleGl0KDI1NSk7CiB9CiAKLXZvaWQKLWNoZWNrX3N0YXR1cyhz
cnRwX2Vycl9zdGF0dXNfdCBzKSB7Ci0gIGlmIChzKSB7Ci0gICAgcHJpbnRmKCJlcnJvciAoY29k
ZSAlZClcbiIsIHMpOwotICAgIGV4aXQocyk7Ci0gIH0KLSAgcmV0dXJuOwordm9pZCBjaGVja19z
dGF0dXMoc3J0cF9lcnJfc3RhdHVzX3QgcykKK3sKKyAgICBpZiAocykgeworICAgICAgICBwcmlu
dGYoImVycm9yIChjb2RlICVkKVxuIiwgcyk7CisgICAgICAgIGV4aXQocyk7CisgICAgfQorICAg
IHJldHVybjsKIH0KIAogLyoKQEAgLTEyOSwxNTEgKzEyNCwxNjMgQEAgZXh0ZXJuIHNydHBfY2lw
aGVyX3R5cGVfdCBzcnRwX2Flc19nY21fMTI4X29wZW5zc2w7CiBleHRlcm4gc3J0cF9jaXBoZXJf
dHlwZV90IHNydHBfYWVzX2djbV8yNTZfb3BlbnNzbDsKICNlbmRpZgogCi1pbnQKLW1haW4oaW50
IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkgewotICBzcnRwX2NpcGhlcl90ICpjID0gTlVMTDsKLSAgc3J0
cF9lcnJfc3RhdHVzX3Qgc3RhdHVzOwotICB1bnNpZ25lZCBjaGFyIHRlc3Rfa2V5WzQ4XSA9IHsK
LSAgICAweDAwLCAweDAxLCAweDAyLCAweDAzLCAweDA0LCAweDA1LCAweDA2LCAweDA3LAotICAg
IDB4MDgsIDB4MDksIDB4MGEsIDB4MGIsIDB4MGMsIDB4MGQsIDB4MGUsIDB4MGYsCi0gICAgMHgx
MCwgMHgxMSwgMHgxMiwgMHgxMywgMHgxNCwgMHgxNSwgMHgxNiwgMHgxNywKLSAgICAweDE4LCAw
eDE5LCAweDFhLCAweDFiLCAweDFjLCAweDFkLCAweDFlLCAweDFmLAotICAgIDB4MjAsIDB4MjEs
IDB4MjIsIDB4MjMsIDB4MjQsIDB4MjUsIDB4MjYsIDB4MjcsCi0gICAgMHgyOCwgMHgyOSwgMHgy
YSwgMHgyYiwgMHgyYywgMHgyZCwgMHgyZSwgMHgyZiwKLSAgfTsKLSAgaW50IHE7Ci0gIHVuc2ln
bmVkIGRvX3RpbWluZ190ZXN0ID0gMDsKLSAgdW5zaWduZWQgZG9fdmFsaWRhdGlvbiA9IDA7Ci0g
IHVuc2lnbmVkIGRvX2FycmF5X3RpbWluZ190ZXN0ID0gMDsKLQotICAvKiBwcm9jZXNzIGlucHV0
IGFyZ3VtZW50cyAqLwotICB3aGlsZSAoMSkgewotICAgIHEgPSBnZXRvcHRfcyhhcmdjLCBhcmd2
LCAidHZhIik7Ci0gICAgaWYgKHEgPT0gLTEpIAotICAgICAgYnJlYWs7Ci0gICAgc3dpdGNoIChx
KSB7Ci0gICAgY2FzZSAndCc6Ci0gICAgICBkb190aW1pbmdfdGVzdCA9IDE7Ci0gICAgICBicmVh
azsKLSAgICBjYXNlICd2JzoKLSAgICAgIGRvX3ZhbGlkYXRpb24gPSAxOwotICAgICAgYnJlYWs7
Ci0gICAgY2FzZSAnYSc6Ci0gICAgICBkb19hcnJheV90aW1pbmdfdGVzdCA9IDE7Ci0gICAgICBi
cmVhazsKLSAgICBkZWZhdWx0OgotICAgICAgdXNhZ2UoYXJndlswXSk7Ci0gICAgfSAgICAKLSAg
fQotCi0gIHByaW50ZigiY2lwaGVyIHRlc3QgZHJpdmVyXG4iCi0JICJEYXZpZCBBLiBNY0dyZXdc
biIKLQkgIkNpc2NvIFN5c3RlbXMsIEluYy5cbiIpOwotCi0gIGlmICghZG9fdmFsaWRhdGlvbiAm
JiAhZG9fdGltaW5nX3Rlc3QgJiYgIWRvX2FycmF5X3RpbWluZ190ZXN0KQotICAgIHVzYWdlKGFy
Z3ZbMF0pOwotCi0gICAvKiBhcnJ5IHRpbWluZyAoY2FjaGUgdGhyYXNoKSB0ZXN0ICovCi0gIGlm
IChkb19hcnJheV90aW1pbmdfdGVzdCkgewotICAgIGludCBtYXhfbnVtX2NpcGhlciA9IDEgPDwg
MTY7ICAgLyogbnVtYmVyIG9mIGNpcGhlcnMgaW4gY2lwaGVyX2FycmF5ICovCi0gICAgaW50IG51
bV9jaXBoZXI7Ci0gICAgCi0gICAgZm9yIChudW1fY2lwaGVyPTE7IG51bV9jaXBoZXIgPCBtYXhf
bnVtX2NpcGhlcjsgbnVtX2NpcGhlciAqPTgpCi0gICAgICBjaXBoZXJfZHJpdmVyX3Rlc3RfYXJy
YXlfdGhyb3VnaHB1dCgmc3J0cF9udWxsX2NpcGhlciwgMCwgbnVtX2NpcGhlcik7IAotCi0gICAg
Zm9yIChudW1fY2lwaGVyPTE7IG51bV9jaXBoZXIgPCBtYXhfbnVtX2NpcGhlcjsgbnVtX2NpcGhl
ciAqPTgpCi0gICAgICBjaXBoZXJfZHJpdmVyX3Rlc3RfYXJyYXlfdGhyb3VnaHB1dCgmc3J0cF9h
ZXNfaWNtXzEyOCwgU1JUUF9BRVNfSUNNXzEyOF9LRVlfTEVOX1dTQUxULCBudW1fY2lwaGVyKTsK
LQotICAgIGZvciAobnVtX2NpcGhlcj0xOyBudW1fY2lwaGVyIDwgbWF4X251bV9jaXBoZXI7IG51
bV9jaXBoZXIgKj04KQotICAgICAgY2lwaGVyX2RyaXZlcl90ZXN0X2FycmF5X3Rocm91Z2hwdXQo
JnNydHBfYWVzX2ljbV8yNTYsIFNSVFBfQUVTX0lDTV8yNTZfS0VZX0xFTl9XU0FMVCwgbnVtX2Np
cGhlcik7CitpbnQgbWFpbihpbnQgYXJnYywgY2hhciAqYXJndltdKQoreworICAgIHNydHBfY2lw
aGVyX3QgKmMgPSBOVUxMOworICAgIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKKyAgICAvKiBj
bGFuZy1mb3JtYXQgb2ZmICovCisgICAgdW5zaWduZWQgY2hhciB0ZXN0X2tleVs0OF0gPSB7Cisg
ICAgICAgIDB4MDAsIDB4MDEsIDB4MDIsIDB4MDMsIDB4MDQsIDB4MDUsIDB4MDYsIDB4MDcsCisg
ICAgICAgIDB4MDgsIDB4MDksIDB4MGEsIDB4MGIsIDB4MGMsIDB4MGQsIDB4MGUsIDB4MGYsCisg
ICAgICAgIDB4MTAsIDB4MTEsIDB4MTIsIDB4MTMsIDB4MTQsIDB4MTUsIDB4MTYsIDB4MTcsCisg
ICAgICAgIDB4MTgsIDB4MTksIDB4MWEsIDB4MWIsIDB4MWMsIDB4MWQsIDB4MWUsIDB4MWYsCisg
ICAgICAgIDB4MjAsIDB4MjEsIDB4MjIsIDB4MjMsIDB4MjQsIDB4MjUsIDB4MjYsIDB4MjcsCisg
ICAgICAgIDB4MjgsIDB4MjksIDB4MmEsIDB4MmIsIDB4MmMsIDB4MmQsIDB4MmUsIDB4MmYsCisg
ICAgfTsKKyAgICAvKiBjbGFuZy1mb3JtYXQgb24gKi8KKyAgICBpbnQgcTsKKyAgICB1bnNpZ25l
ZCBkb190aW1pbmdfdGVzdCA9IDA7CisgICAgdW5zaWduZWQgZG9fdmFsaWRhdGlvbiA9IDA7Cisg
ICAgdW5zaWduZWQgZG9fYXJyYXlfdGltaW5nX3Rlc3QgPSAwOworCisgICAgLyogcHJvY2VzcyBp
bnB1dCBhcmd1bWVudHMgKi8KKyAgICB3aGlsZSAoMSkgeworICAgICAgICBxID0gZ2V0b3B0X3Mo
YXJnYywgYXJndiwgInR2YSIpOworICAgICAgICBpZiAocSA9PSAtMSkKKyAgICAgICAgICAgIGJy
ZWFrOworICAgICAgICBzd2l0Y2ggKHEpIHsKKyAgICAgICAgY2FzZSAndCc6CisgICAgICAgICAg
ICBkb190aW1pbmdfdGVzdCA9IDE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAn
dic6CisgICAgICAgICAgICBkb192YWxpZGF0aW9uID0gMTsKKyAgICAgICAgICAgIGJyZWFrOwor
ICAgICAgICBjYXNlICdhJzoKKyAgICAgICAgICAgIGRvX2FycmF5X3RpbWluZ190ZXN0ID0gMTsK
KyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgdXNhZ2Uo
YXJndlswXSk7CisgICAgICAgIH0KKyAgICB9CisKKyAgICBwcmludGYoImNpcGhlciB0ZXN0IGRy
aXZlclxuIgorICAgICAgICAgICAiRGF2aWQgQS4gTWNHcmV3XG4iCisgICAgICAgICAgICJDaXNj
byBTeXN0ZW1zLCBJbmMuXG4iKTsKIAotI2lmZGVmIE9QRU5TU0wKLSAgICBmb3IgKG51bV9jaXBo
ZXI9MTsgbnVtX2NpcGhlciA8IG1heF9udW1fY2lwaGVyOyBudW1fY2lwaGVyICo9OCkKLSAgICAg
IGNpcGhlcl9kcml2ZXJfdGVzdF9hcnJheV90aHJvdWdocHV0KCZzcnRwX2Flc19pY21fMTkyLCBT
UlRQX0FFU19JQ01fMTkyX0tFWV9MRU5fV1NBTFQsIG51bV9jaXBoZXIpOworICAgIGlmICghZG9f
dmFsaWRhdGlvbiAmJiAhZG9fdGltaW5nX3Rlc3QgJiYgIWRvX2FycmF5X3RpbWluZ190ZXN0KQor
ICAgICAgICB1c2FnZShhcmd2WzBdKTsKIAotICAgIGZvciAobnVtX2NpcGhlcj0xOyBudW1fY2lw
aGVyIDwgbWF4X251bV9jaXBoZXI7IG51bV9jaXBoZXIgKj04KSB7Ci0gICAgICBjaXBoZXJfZHJp
dmVyX3Rlc3RfYXJyYXlfdGhyb3VnaHB1dCgmc3J0cF9hZXNfZ2NtXzEyOF9vcGVuc3NsLCBTUlRQ
X0FFU19HQ01fMTI4X0tFWV9MRU5fV1NBTFQsIG51bV9jaXBoZXIpOwotICAgIH0KKyAgICAvKiBh
cnJ5IHRpbWluZyAoY2FjaGUgdGhyYXNoKSB0ZXN0ICovCisgICAgaWYgKGRvX2FycmF5X3RpbWlu
Z190ZXN0KSB7CisgICAgICAgIGludCBtYXhfbnVtX2NpcGhlciA9IDEgPDwgMTY7IC8qIG51bWJl
ciBvZiBjaXBoZXJzIGluIGNpcGhlcl9hcnJheSAqLworICAgICAgICBpbnQgbnVtX2NpcGhlcjsK
IAotICAgIGZvciAobnVtX2NpcGhlcj0xOyBudW1fY2lwaGVyIDwgbWF4X251bV9jaXBoZXI7IG51
bV9jaXBoZXIgKj04KSB7Ci0gICAgICBjaXBoZXJfZHJpdmVyX3Rlc3RfYXJyYXlfdGhyb3VnaHB1
dCgmc3J0cF9hZXNfZ2NtXzI1Nl9vcGVuc3NsLCBTUlRQX0FFU19HQ01fMjU2X0tFWV9MRU5fV1NB
TFQsIG51bV9jaXBoZXIpOwotICAgIH0KKyAgICAgICAgZm9yIChudW1fY2lwaGVyID0gMTsgbnVt
X2NpcGhlciA8IG1heF9udW1fY2lwaGVyOyBudW1fY2lwaGVyICo9IDgpCisgICAgICAgICAgICBj
aXBoZXJfZHJpdmVyX3Rlc3RfYXJyYXlfdGhyb3VnaHB1dCgmc3J0cF9udWxsX2NpcGhlciwgMCwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG51bV9jaXBo
ZXIpOworCisgICAgICAgIGZvciAobnVtX2NpcGhlciA9IDE7IG51bV9jaXBoZXIgPCBtYXhfbnVt
X2NpcGhlcjsgbnVtX2NpcGhlciAqPSA4KQorICAgICAgICAgICAgY2lwaGVyX2RyaXZlcl90ZXN0
X2FycmF5X3Rocm91Z2hwdXQoCisgICAgICAgICAgICAgICAgJnNydHBfYWVzX2ljbV8xMjgsIFNS
VFBfQUVTX0lDTV8xMjhfS0VZX0xFTl9XU0FMVCwgbnVtX2NpcGhlcik7CisKKyAgICAgICAgZm9y
IChudW1fY2lwaGVyID0gMTsgbnVtX2NpcGhlciA8IG1heF9udW1fY2lwaGVyOyBudW1fY2lwaGVy
ICo9IDgpCisgICAgICAgICAgICBjaXBoZXJfZHJpdmVyX3Rlc3RfYXJyYXlfdGhyb3VnaHB1dCgK
KyAgICAgICAgICAgICAgICAmc3J0cF9hZXNfaWNtXzI1NiwgU1JUUF9BRVNfSUNNXzI1Nl9LRVlf
TEVOX1dTQUxULCBudW1fY2lwaGVyKTsKKworI2lmZGVmIE9QRU5TU0wKKyAgICAgICAgZm9yIChu
dW1fY2lwaGVyID0gMTsgbnVtX2NpcGhlciA8IG1heF9udW1fY2lwaGVyOyBudW1fY2lwaGVyICo9
IDgpCisgICAgICAgICAgICBjaXBoZXJfZHJpdmVyX3Rlc3RfYXJyYXlfdGhyb3VnaHB1dCgKKyAg
ICAgICAgICAgICAgICAmc3J0cF9hZXNfaWNtXzE5MiwgU1JUUF9BRVNfSUNNXzE5Ml9LRVlfTEVO
X1dTQUxULCBudW1fY2lwaGVyKTsKKworICAgICAgICBmb3IgKG51bV9jaXBoZXIgPSAxOyBudW1f
Y2lwaGVyIDwgbWF4X251bV9jaXBoZXI7IG51bV9jaXBoZXIgKj0gOCkgeworICAgICAgICAgICAg
Y2lwaGVyX2RyaXZlcl90ZXN0X2FycmF5X3Rocm91Z2hwdXQoJnNydHBfYWVzX2djbV8xMjhfb3Bl
bnNzbCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNS
VFBfQUVTX0dDTV8xMjhfS0VZX0xFTl9XU0FMVCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIG51bV9jaXBoZXIpOworICAgICAgICB9CisKKyAgICAgICAg
Zm9yIChudW1fY2lwaGVyID0gMTsgbnVtX2NpcGhlciA8IG1heF9udW1fY2lwaGVyOyBudW1fY2lw
aGVyICo9IDgpIHsKKyAgICAgICAgICAgIGNpcGhlcl9kcml2ZXJfdGVzdF9hcnJheV90aHJvdWdo
cHV0KCZzcnRwX2Flc19nY21fMjU2X29wZW5zc2wsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBTUlRQX0FFU19HQ01fMjU2X0tFWV9MRU5fV1NBTFQsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBudW1fY2lwaGVy
KTsKKyAgICAgICAgfQogI2VuZGlmCi0gIH0KKyAgICB9CiAKLSAgaWYgKGRvX3ZhbGlkYXRpb24p
IHsKLSAgICBjaXBoZXJfZHJpdmVyX3NlbGZfdGVzdCgmc3J0cF9udWxsX2NpcGhlcik7Ci0gICAg
Y2lwaGVyX2RyaXZlcl9zZWxmX3Rlc3QoJnNydHBfYWVzX2ljbV8xMjgpOwotICAgIGNpcGhlcl9k
cml2ZXJfc2VsZl90ZXN0KCZzcnRwX2Flc19pY21fMjU2KTsKKyAgICBpZiAoZG9fdmFsaWRhdGlv
bikgeworICAgICAgICBjaXBoZXJfZHJpdmVyX3NlbGZfdGVzdCgmc3J0cF9udWxsX2NpcGhlcik7
CisgICAgICAgIGNpcGhlcl9kcml2ZXJfc2VsZl90ZXN0KCZzcnRwX2Flc19pY21fMTI4KTsKKyAg
ICAgICAgY2lwaGVyX2RyaXZlcl9zZWxmX3Rlc3QoJnNydHBfYWVzX2ljbV8yNTYpOwogI2lmZGVm
IE9QRU5TU0wKLSAgICBjaXBoZXJfZHJpdmVyX3NlbGZfdGVzdCgmc3J0cF9hZXNfaWNtXzE5Mik7
Ci0gICAgY2lwaGVyX2RyaXZlcl9zZWxmX3Rlc3QoJnNydHBfYWVzX2djbV8xMjhfb3BlbnNzbCk7
Ci0gICAgY2lwaGVyX2RyaXZlcl9zZWxmX3Rlc3QoJnNydHBfYWVzX2djbV8yNTZfb3BlbnNzbCk7
CisgICAgICAgIGNpcGhlcl9kcml2ZXJfc2VsZl90ZXN0KCZzcnRwX2Flc19pY21fMTkyKTsKKyAg
ICAgICAgY2lwaGVyX2RyaXZlcl9zZWxmX3Rlc3QoJnNydHBfYWVzX2djbV8xMjhfb3BlbnNzbCk7
CisgICAgICAgIGNpcGhlcl9kcml2ZXJfc2VsZl90ZXN0KCZzcnRwX2Flc19nY21fMjU2X29wZW5z
c2wpOwogI2VuZGlmCi0gIH0KKyAgICB9CiAKLSAgLyogZG8gdGltaW5nIGFuZC9vciBidWZmZXJf
dGVzdCBvbiBzcnRwX251bGxfY2lwaGVyICovCi0gIHN0YXR1cyA9IHNydHBfY2lwaGVyX3R5cGVf
YWxsb2MoJnNydHBfbnVsbF9jaXBoZXIsICZjLCAwLCAwKTsgCi0gIGNoZWNrX3N0YXR1cyhzdGF0
dXMpOworICAgIC8qIGRvIHRpbWluZyBhbmQvb3IgYnVmZmVyX3Rlc3Qgb24gc3J0cF9udWxsX2Np
cGhlciAqLworICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3R5cGVfYWxsb2MoJnNydHBfbnVsbF9j
aXBoZXIsICZjLCAwLCAwKTsKKyAgICBjaGVja19zdGF0dXMoc3RhdHVzKTsKIAotICBzdGF0dXMg
PSBzcnRwX2NpcGhlcl9pbml0KGMsIE5VTEwpOwotICBjaGVja19zdGF0dXMoc3RhdHVzKTsKKyAg
ICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9pbml0KGMsIE5VTEwpOworICAgIGNoZWNrX3N0YXR1cyhz
dGF0dXMpOwogCi0gIGlmIChkb190aW1pbmdfdGVzdCkgCi0gICAgY2lwaGVyX2RyaXZlcl90ZXN0
X3Rocm91Z2hwdXQoYyk7Ci0gIGlmIChkb192YWxpZGF0aW9uKSB7Ci0gICAgc3RhdHVzID0gY2lw
aGVyX2RyaXZlcl90ZXN0X2J1ZmZlcmluZyhjKTsKKyAgICBpZiAoZG9fdGltaW5nX3Rlc3QpCisg
ICAgICAgIGNpcGhlcl9kcml2ZXJfdGVzdF90aHJvdWdocHV0KGMpOworICAgIGlmIChkb192YWxp
ZGF0aW9uKSB7CisgICAgICAgIHN0YXR1cyA9IGNpcGhlcl9kcml2ZXJfdGVzdF9idWZmZXJpbmco
Yyk7CisgICAgICAgIGNoZWNrX3N0YXR1cyhzdGF0dXMpOworICAgIH0KKyAgICBzdGF0dXMgPSBz
cnRwX2NpcGhlcl9kZWFsbG9jKGMpOwogICAgIGNoZWNrX3N0YXR1cyhzdGF0dXMpOwotICB9Ci0g
IHN0YXR1cyA9IHNydHBfY2lwaGVyX2RlYWxsb2MoYyk7Ci0gIGNoZWNrX3N0YXR1cyhzdGF0dXMp
OwotICAKIAotICAvKiBydW4gdGhlIHRocm91Z2hwdXQgdGVzdCBvbiB0aGUgYWVzX2ljbSBjaXBo
ZXIgKDEyOC1iaXQga2V5KSAqLwotICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3R5cGVfYWxsb2Mo
JnNydHBfYWVzX2ljbV8xMjgsICZjLCBTUlRQX0FFU19JQ01fMTI4X0tFWV9MRU5fV1NBTFQsIDAp
OworICAgIC8qIHJ1biB0aGUgdGhyb3VnaHB1dCB0ZXN0IG9uIHRoZSBhZXNfaWNtIGNpcGhlciAo
MTI4LWJpdCBrZXkpICovCisgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfdHlwZV9hbGxvYygmc3J0
cF9hZXNfaWNtXzEyOCwgJmMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBT
UlRQX0FFU19JQ01fMTI4X0tFWV9MRU5fV1NBTFQsIDApOwogICAgIGlmIChzdGF0dXMpIHsKLSAg
ICAgIGZwcmludGYoc3RkZXJyLCAiZXJyb3I6IGNhbid0IGFsbG9jYXRlIGNpcGhlclxuIik7Ci0g
ICAgICBleGl0KHN0YXR1cyk7CisgICAgICAgIGZwcmludGYoc3RkZXJyLCAiZXJyb3I6IGNhbid0
IGFsbG9jYXRlIGNpcGhlclxuIik7CisgICAgICAgIGV4aXQoc3RhdHVzKTsKICAgICB9CiAKICAg
ICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9pbml0KGMsIHRlc3Rfa2V5KTsKICAgICBjaGVja19zdGF0
dXMoc3RhdHVzKTsKIAogICAgIGlmIChkb190aW1pbmdfdGVzdCkKLSAgICAgIGNpcGhlcl9kcml2
ZXJfdGVzdF90aHJvdWdocHV0KGMpOwotICAgIAorICAgICAgICBjaXBoZXJfZHJpdmVyX3Rlc3Rf
dGhyb3VnaHB1dChjKTsKKwogICAgIGlmIChkb192YWxpZGF0aW9uKSB7Ci0gICAgICBzdGF0dXMg
PSBjaXBoZXJfZHJpdmVyX3Rlc3RfYnVmZmVyaW5nKGMpOwotICAgICAgY2hlY2tfc3RhdHVzKHN0
YXR1cyk7CisgICAgICAgIHN0YXR1cyA9IGNpcGhlcl9kcml2ZXJfdGVzdF9idWZmZXJpbmcoYyk7
CisgICAgICAgIGNoZWNrX3N0YXR1cyhzdGF0dXMpOwogICAgIH0KLSAgICAKKwogICAgIHN0YXR1
cyA9IHNydHBfY2lwaGVyX2RlYWxsb2MoYyk7CiAgICAgY2hlY2tfc3RhdHVzKHN0YXR1cyk7CiAK
LSAgLyogcmVwZWF0IHRoZSB0ZXN0cyB3aXRoIDI1Ni1iaXQga2V5cyAqLwotICAgIHN0YXR1cyA9
IHNydHBfY2lwaGVyX3R5cGVfYWxsb2MoJnNydHBfYWVzX2ljbV8yNTYsICZjLCBTUlRQX0FFU19J
Q01fMjU2X0tFWV9MRU5fV1NBTFQsIDApOworICAgIC8qIHJlcGVhdCB0aGUgdGVzdHMgd2l0aCAy
NTYtYml0IGtleXMgKi8KKyAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl90eXBlX2FsbG9jKCZzcnRw
X2Flc19pY21fMjU2LCAmYywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNS
VFBfQUVTX0lDTV8yNTZfS0VZX0xFTl9XU0FMVCwgMCk7CiAgICAgaWYgKHN0YXR1cykgewotICAg
ICAgZnByaW50ZihzdGRlcnIsICJlcnJvcjogY2FuJ3QgYWxsb2NhdGUgY2lwaGVyXG4iKTsKLSAg
ICAgIGV4aXQoc3RhdHVzKTsKKyAgICAgICAgZnByaW50ZihzdGRlcnIsICJlcnJvcjogY2FuJ3Qg
YWxsb2NhdGUgY2lwaGVyXG4iKTsKKyAgICAgICAgZXhpdChzdGF0dXMpOwogICAgIH0KIAogICAg
IHN0YXR1cyA9IHNydHBfY2lwaGVyX2luaXQoYywgdGVzdF9rZXkpOwogICAgIGNoZWNrX3N0YXR1
cyhzdGF0dXMpOwogCiAgICAgaWYgKGRvX3RpbWluZ190ZXN0KQotICAgICAgY2lwaGVyX2RyaXZl
cl90ZXN0X3Rocm91Z2hwdXQoYyk7Ci0gICAgCisgICAgICAgIGNpcGhlcl9kcml2ZXJfdGVzdF90
aHJvdWdocHV0KGMpOworCiAgICAgaWYgKGRvX3ZhbGlkYXRpb24pIHsKLSAgICAgIHN0YXR1cyA9
IGNpcGhlcl9kcml2ZXJfdGVzdF9idWZmZXJpbmcoYyk7Ci0gICAgICBjaGVja19zdGF0dXMoc3Rh
dHVzKTsKKyAgICAgICAgc3RhdHVzID0gY2lwaGVyX2RyaXZlcl90ZXN0X2J1ZmZlcmluZyhjKTsK
KyAgICAgICAgY2hlY2tfc3RhdHVzKHN0YXR1cyk7CiAgICAgfQotICAgIAorCiAgICAgc3RhdHVz
ID0gc3J0cF9jaXBoZXJfZGVhbGxvYyhjKTsKICAgICBjaGVja19zdGF0dXMoc3RhdHVzKTsKIAog
I2lmZGVmIE9QRU5TU0wKICAgICAvKiBydW4gdGhlIHRocm91Z2hwdXQgdGVzdCBvbiB0aGUgYWVz
X2djbV8xMjhfb3BlbnNzbCBjaXBoZXIgKi8KLSAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl90eXBl
X2FsbG9jKCZzcnRwX2Flc19nY21fMTI4X29wZW5zc2wsICZjLCBTUlRQX0FFU19HQ01fMTI4X0tF
WV9MRU5fV1NBTFQsIDgpOworICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3R5cGVfYWxsb2MoJnNy
dHBfYWVzX2djbV8xMjhfb3BlbnNzbCwgJmMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBTUlRQX0FFU19HQ01fMTI4X0tFWV9MRU5fV1NBTFQsIDgpOwogICAgIGlmIChzdGF0
dXMpIHsKICAgICAgICAgZnByaW50ZihzdGRlcnIsICJlcnJvcjogY2FuJ3QgYWxsb2NhdGUgR0NN
IDEyOCBjaXBoZXJcbiIpOwogICAgICAgICBleGl0KHN0YXR1cyk7CkBAIC0yOTIsNyArMjk5LDgg
QEAgbWFpbihpbnQgYXJnYywgY2hhciAqYXJndltdKSB7CiAgICAgY2hlY2tfc3RhdHVzKHN0YXR1
cyk7CiAKICAgICAvKiBydW4gdGhlIHRocm91Z2hwdXQgdGVzdCBvbiB0aGUgYWVzX2djbV8yNTZf
b3BlbnNzbCBjaXBoZXIgKi8KLSAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl90eXBlX2FsbG9jKCZz
cnRwX2Flc19nY21fMjU2X29wZW5zc2wsICZjLCBTUlRQX0FFU19HQ01fMjU2X0tFWV9MRU5fV1NB
TFQsIDE2KTsKKyAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl90eXBlX2FsbG9jKCZzcnRwX2Flc19n
Y21fMjU2X29wZW5zc2wsICZjLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
U1JUUF9BRVNfR0NNXzI1Nl9LRVlfTEVOX1dTQUxULCAxNik7CiAgICAgaWYgKHN0YXR1cykgewog
ICAgICAgICBmcHJpbnRmKHN0ZGVyciwgImVycm9yOiBjYW4ndCBhbGxvY2F0ZSBHQ00gMjU2IGNp
cGhlclxuIik7CiAgICAgICAgIGV4aXQoc3RhdHVzKTsKQEAgLTMwOSwzOSArMzE3LDM5IEBAIG1h
aW4oaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkgewogICAgIH0KICAgICBzdGF0dXMgPSBzcnRwX2Np
cGhlcl9kZWFsbG9jKGMpOwogICAgIGNoZWNrX3N0YXR1cyhzdGF0dXMpOwotI2VuZGlmIAorI2Vu
ZGlmCiAKICAgICByZXR1cm4gMDsKIH0KIAotdm9pZAotY2lwaGVyX2RyaXZlcl90ZXN0X3Rocm91
Z2hwdXQoc3J0cF9jaXBoZXJfdCAqYykgewotICBpbnQgaTsKLSAgaW50IG1pbl9lbmNfbGVuID0g
MzI7ICAgICAKLSAgaW50IG1heF9lbmNfbGVuID0gMjA0ODsgICAvKiBzaG91bGQgYmUgYSBwb3dl
ciBvZiB0d28gKi8KLSAgaW50IG51bV90cmlhbHMgPSAxMDAwMDAwOyAgCi0gIAotICBwcmludGYo
InRpbWluZyAlcyB0aHJvdWdocHV0LCBrZXkgbGVuZ3RoICVkOlxuIiwgYy0+dHlwZS0+ZGVzY3Jp
cHRpb24sIGMtPmtleV9sZW4pOwotICBmZmx1c2goc3Rkb3V0KTsKLSAgZm9yIChpPW1pbl9lbmNf
bGVuOyBpIDw9IG1heF9lbmNfbGVuOyBpID0gaSAqIDIpCi0gICAgcHJpbnRmKCJtc2cgbGVuOiAl
ZFx0Z2lnYWJpdHMgcGVyIHNlY29uZDogJWZcbiIsCi0JICAgaSwgc3J0cF9jaXBoZXJfYml0c19w
ZXJfc2Vjb25kKGMsIGksIG51bV90cmlhbHMpIC8gMWU5KTsKLQordm9pZCBjaXBoZXJfZHJpdmVy
X3Rlc3RfdGhyb3VnaHB1dChzcnRwX2NpcGhlcl90ICpjKQoreworICAgIGludCBpOworICAgIGlu
dCBtaW5fZW5jX2xlbiA9IDMyOworICAgIGludCBtYXhfZW5jX2xlbiA9IDIwNDg7IC8qIHNob3Vs
ZCBiZSBhIHBvd2VyIG9mIHR3byAqLworICAgIGludCBudW1fdHJpYWxzID0gMTAwMDAwMDsKKwor
ICAgIHByaW50ZigidGltaW5nICVzIHRocm91Z2hwdXQsIGtleSBsZW5ndGggJWQ6XG4iLCBjLT50
eXBlLT5kZXNjcmlwdGlvbiwKKyAgICAgICAgICAgYy0+a2V5X2xlbik7CisgICAgZmZsdXNoKHN0
ZG91dCk7CisgICAgZm9yIChpID0gbWluX2VuY19sZW47IGkgPD0gbWF4X2VuY19sZW47IGkgPSBp
ICogMikKKyAgICAgICAgcHJpbnRmKCJtc2cgbGVuOiAlZFx0Z2lnYWJpdHMgcGVyIHNlY29uZDog
JWZcbiIsIGksCisgICAgICAgICAgICAgICBzcnRwX2NpcGhlcl9iaXRzX3Blcl9zZWNvbmQoYywg
aSwgbnVtX3RyaWFscykgLyAxZTkpOwogfQogCi1zcnRwX2Vycl9zdGF0dXNfdAotY2lwaGVyX2Ry
aXZlcl9zZWxmX3Rlc3Qoc3J0cF9jaXBoZXJfdHlwZV90ICpjdCkgewotICBzcnRwX2Vycl9zdGF0
dXNfdCBzdGF0dXM7Ci0gIAotICBwcmludGYoInJ1bm5pbmcgY2lwaGVyIHNlbGYtdGVzdCBmb3Ig
JXMuLi4iLCBjdC0+ZGVzY3JpcHRpb24pOwotICBzdGF0dXMgPSBzcnRwX2NpcGhlcl90eXBlX3Nl
bGZfdGVzdChjdCk7Ci0gIGlmIChzdGF0dXMpIHsKLSAgICBwcmludGYoImZhaWxlZCB3aXRoIGVy
cm9yIGNvZGUgJWRcbiIsIHN0YXR1cyk7Ci0gICAgZXhpdChzdGF0dXMpOwotICB9Ci0gIHByaW50
ZigicGFzc2VkXG4iKTsKLSAgCi0gIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CitzcnRwX2Vy
cl9zdGF0dXNfdCBjaXBoZXJfZHJpdmVyX3NlbGZfdGVzdChzcnRwX2NpcGhlcl90eXBlX3QgKmN0
KQoreworICAgIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKKworICAgIHByaW50ZigicnVubmlu
ZyBjaXBoZXIgc2VsZi10ZXN0IGZvciAlcy4uLiIsIGN0LT5kZXNjcmlwdGlvbik7CisgICAgc3Rh
dHVzID0gc3J0cF9jaXBoZXJfdHlwZV9zZWxmX3Rlc3QoY3QpOworICAgIGlmIChzdGF0dXMpIHsK
KyAgICAgICAgcHJpbnRmKCJmYWlsZWQgd2l0aCBlcnJvciBjb2RlICVkXG4iLCBzdGF0dXMpOwor
ICAgICAgICBleGl0KHN0YXR1cyk7CisgICAgfQorICAgIHByaW50ZigicGFzc2VkXG4iKTsKKwor
ICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAKIC8qCkBAIC0zNTEsMTY4ICszNTks
MTY2IEBAIGNpcGhlcl9kcml2ZXJfc2VsZl90ZXN0KHNydHBfY2lwaGVyX3R5cGVfdCAqY3QpIHsK
ICAqLwogCiAjZGVmaW5lIElOSVRJQUxfQlVGTEVOIDEwMjQKLXNydHBfZXJyX3N0YXR1c190Ci1j
aXBoZXJfZHJpdmVyX3Rlc3RfYnVmZmVyaW5nKHNydHBfY2lwaGVyX3QgKmMpIHsKLSAgaW50IGks
IGosIG51bV90cmlhbHMgPSAxMDAwOwotICB1bnNpZ25lZCBsZW4sIGJ1ZmxlbiA9IElOSVRJQUxf
QlVGTEVOOwotICB1aW50OF90IGJ1ZmZlcjBbSU5JVElBTF9CVUZMRU5dLCBidWZmZXIxW0lOSVRJ
QUxfQlVGTEVOXSwgKmN1cnJlbnQsICplbmQ7Ci0gIHVpbnQ4X3QgaWR4WzE2XSA9IHsgCi0gICAg
MHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgCi0gICAgMHgw
MCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgxMiwgMHgzNAotICB9OwotICBzcnRw
X2Vycl9zdGF0dXNfdCBzdGF0dXM7Ci0gIAotICBwcmludGYoInRlc3Rpbmcgb3V0cHV0IGJ1ZmZl
cmluZyBmb3IgY2lwaGVyICVzLi4uIiwKLQkgYy0+dHlwZS0+ZGVzY3JpcHRpb24pOwotCi0gIGZv
ciAoaT0wOyBpIDwgbnVtX3RyaWFsczsgaSsrKSB7Ci0KLSAgIC8qIHNldCBidWZmZXJzIHRvIHpl
cm8gKi8KLSAgICBmb3IgKGo9MDsgaiA8IChpbnQpIGJ1ZmxlbjsgaisrKSB7Ci0gICAgICBidWZm
ZXIwW2pdID0gYnVmZmVyMVtqXSA9IDA7Ci0gICAgfQotICAgIAotICAgIC8qIGluaXRpYWxpemUg
Y2lwaGVyICAqLwotICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3NldF9pdihjLCAodWludDhfdCop
aWR4LCBzcnRwX2RpcmVjdGlvbl9lbmNyeXB0KTsKLSAgICBpZiAoc3RhdHVzKQotICAgICAgcmV0
dXJuIHN0YXR1czsKLQotICAgIC8qIGdlbmVyYXRlICdyZWZlcmVuY2UnIHZhbHVlIGJ5IGVuY3J5
cHRpbmcgYWxsIGF0IG9uY2UgKi8KLSAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9lbmNyeXB0KGMs
IGJ1ZmZlcjAsICZidWZsZW4pOwotICAgIGlmIChzdGF0dXMpCi0gICAgICByZXR1cm4gc3RhdHVz
OwotCi0gICAgLyogcmUtaW5pdGlhbGl6ZSBjaXBoZXIgKi8KLSAgICBzdGF0dXMgPSBzcnRwX2Np
cGhlcl9zZXRfaXYoYywgKHVpbnQ4X3QqKWlkeCwgc3J0cF9kaXJlY3Rpb25fZW5jcnlwdCk7Ci0g
ICAgaWYgKHN0YXR1cykKLSAgICAgIHJldHVybiBzdGF0dXM7Ci0gICAgCi0gICAgLyogbm93IGxv
b3Agb3ZlciBzaG9ydCBsZW5ndGhzIHVudGlsIGJ1ZmZlcjEgaXMgZW5jcnlwdGVkICovCi0gICAg
Y3VycmVudCA9IGJ1ZmZlcjE7Ci0gICAgZW5kID0gYnVmZmVyMSArIGJ1ZmxlbjsKLSAgICB3aGls
ZSAoY3VycmVudCA8IGVuZCkgewotCi0gICAgICAvKiBjaG9vc2UgYSBzaG9ydCBsZW5ndGggKi8K
LSAgICAgIGxlbiA9IHJhbmQoKSAmIDB4MDFmOwotCi0gICAgICAvKiBtYWtlIHN1cmUgdGhhdCBs
ZW4gZG9lc24ndCBjYXVzZSB1cyB0byBvdmVycmVhY2ggdGhlIGJ1ZmZlciAqLwotICAgICAgaWYg
KGN1cnJlbnQgKyBsZW4gPiBlbmQpCi0JbGVuID0gZW5kIC0gY3VycmVudDsKLQotICAgICAgc3Rh
dHVzID0gc3J0cF9jaXBoZXJfZW5jcnlwdChjLCBjdXJyZW50LCAmbGVuKTsKLSAgICAgIGlmIChz
dGF0dXMpIAotCXJldHVybiBzdGF0dXM7Ci0gICAgICAKLSAgICAgIC8qIGFkdmFuY2UgcG9pbnRl
ciBpbnRvIGJ1ZmZlcjEgdG8gcmVmbGVjdCBlbmNyeXB0aW9uICovCi0gICAgICBjdXJyZW50ICs9
IGxlbjsKLSAgICAgIAotICAgICAgLyogaWYgYnVmZmVyMSBpcyBhbGwgZW5jcnlwdGVkLCBicmVh
ayBvdXQgb2YgbG9vcCAqLwotICAgICAgaWYgKGN1cnJlbnQgPT0gZW5kKQotCWJyZWFrOwotICAg
IH0KLQotICAgIC8qIGNvbXBhcmUgYnVmZmVycyAqLwotICAgIGZvciAoaj0wOyBqIDwgKGludCkg
YnVmbGVuOyBqKyspIHsKLSAgICAgIGlmIChidWZmZXIwW2pdICE9IGJ1ZmZlcjFbal0pIHsKK3Ny
dHBfZXJyX3N0YXR1c190IGNpcGhlcl9kcml2ZXJfdGVzdF9idWZmZXJpbmcoc3J0cF9jaXBoZXJf
dCAqYykKK3sKKyAgICBpbnQgaSwgaiwgbnVtX3RyaWFscyA9IDEwMDA7CisgICAgdW5zaWduZWQg
bGVuLCBidWZsZW4gPSBJTklUSUFMX0JVRkxFTjsKKyAgICB1aW50OF90IGJ1ZmZlcjBbSU5JVElB
TF9CVUZMRU5dLCBidWZmZXIxW0lOSVRJQUxfQlVGTEVOXSwgKmN1cnJlbnQsICplbmQ7CisgICAg
dWludDhfdCBpZHhbMTZdID0geyAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAw
eDAwLCAweDAwLAorICAgICAgICAgICAgICAgICAgICAgICAgMHgwMCwgMHgwMCwgMHgwMCwgMHgw
MCwgMHgwMCwgMHgwMCwgMHgxMiwgMHgzNCB9OworICAgIHNydHBfZXJyX3N0YXR1c190IHN0YXR1
czsKKworICAgIHByaW50ZigidGVzdGluZyBvdXRwdXQgYnVmZmVyaW5nIGZvciBjaXBoZXIgJXMu
Li4iLCBjLT50eXBlLT5kZXNjcmlwdGlvbik7CisKKyAgICBmb3IgKGkgPSAwOyBpIDwgbnVtX3Ry
aWFsczsgaSsrKSB7CisgICAgICAgIC8qIHNldCBidWZmZXJzIHRvIHplcm8gKi8KKyAgICAgICAg
Zm9yIChqID0gMDsgaiA8IChpbnQpYnVmbGVuOyBqKyspIHsKKyAgICAgICAgICAgIGJ1ZmZlcjBb
al0gPSBidWZmZXIxW2pdID0gMDsKKyAgICAgICAgfQorCisgICAgICAgIC8qIGluaXRpYWxpemUg
Y2lwaGVyICAqLworICAgICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9zZXRfaXYoYywgKHVpbnQ4
X3QgKilpZHgsIHNydHBfZGlyZWN0aW9uX2VuY3J5cHQpOworICAgICAgICBpZiAoc3RhdHVzKQor
ICAgICAgICAgICAgcmV0dXJuIHN0YXR1czsKKworICAgICAgICAvKiBnZW5lcmF0ZSAncmVmZXJl
bmNlJyB2YWx1ZSBieSBlbmNyeXB0aW5nIGFsbCBhdCBvbmNlICovCisgICAgICAgIHN0YXR1cyA9
IHNydHBfY2lwaGVyX2VuY3J5cHQoYywgYnVmZmVyMCwgJmJ1Zmxlbik7CisgICAgICAgIGlmIChz
dGF0dXMpCisgICAgICAgICAgICByZXR1cm4gc3RhdHVzOworCisgICAgICAgIC8qIHJlLWluaXRp
YWxpemUgY2lwaGVyICovCisgICAgICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3NldF9pdihjLCAo
dWludDhfdCAqKWlkeCwgc3J0cF9kaXJlY3Rpb25fZW5jcnlwdCk7CisgICAgICAgIGlmIChzdGF0
dXMpCisgICAgICAgICAgICByZXR1cm4gc3RhdHVzOworCisgICAgICAgIC8qIG5vdyBsb29wIG92
ZXIgc2hvcnQgbGVuZ3RocyB1bnRpbCBidWZmZXIxIGlzIGVuY3J5cHRlZCAqLworICAgICAgICBj
dXJyZW50ID0gYnVmZmVyMTsKKyAgICAgICAgZW5kID0gYnVmZmVyMSArIGJ1ZmxlbjsKKyAgICAg
ICAgd2hpbGUgKGN1cnJlbnQgPCBlbmQpIHsKKyAgICAgICAgICAgIC8qIGNob29zZSBhIHNob3J0
IGxlbmd0aCAqLworICAgICAgICAgICAgbGVuID0gcmFuZCgpICYgMHgwMWY7CisKKyAgICAgICAg
ICAgIC8qIG1ha2Ugc3VyZSB0aGF0IGxlbiBkb2Vzbid0IGNhdXNlIHVzIHRvIG92ZXJyZWFjaCB0
aGUgYnVmZmVyICovCisgICAgICAgICAgICBpZiAoY3VycmVudCArIGxlbiA+IGVuZCkKKyAgICAg
ICAgICAgICAgICBsZW4gPSBlbmQgLSBjdXJyZW50OworCisgICAgICAgICAgICBzdGF0dXMgPSBz
cnRwX2NpcGhlcl9lbmNyeXB0KGMsIGN1cnJlbnQsICZsZW4pOworICAgICAgICAgICAgaWYgKHN0
YXR1cykKKyAgICAgICAgICAgICAgICByZXR1cm4gc3RhdHVzOworCisgICAgICAgICAgICAvKiBh
ZHZhbmNlIHBvaW50ZXIgaW50byBidWZmZXIxIHRvIHJlZmxlY3QgZW5jcnlwdGlvbiAqLworICAg
ICAgICAgICAgY3VycmVudCArPSBsZW47CisKKyAgICAgICAgICAgIC8qIGlmIGJ1ZmZlcjEgaXMg
YWxsIGVuY3J5cHRlZCwgYnJlYWsgb3V0IG9mIGxvb3AgKi8KKyAgICAgICAgICAgIGlmIChjdXJy
ZW50ID09IGVuZCkKKyAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgfQorCisgICAgICAg
IC8qIGNvbXBhcmUgYnVmZmVycyAqLworICAgICAgICBmb3IgKGogPSAwOyBqIDwgKGludClidWZs
ZW47IGorKykgeworICAgICAgICAgICAgaWYgKGJ1ZmZlcjBbal0gIT0gYnVmZmVyMVtqXSkgewog
I2lmIFBSSU5UX0RFQlVHCi0JcHJpbnRmKCJ0ZXN0IGNhc2UgJWQgZmFpbGVkIGF0IGJ5dGUgJWRc
biIsIGksIGopOwotCXByaW50ZigiY29tcHV0ZWQ6ICVzXG4iLCBvY3RldF9zdHJpbmdfaGV4X3N0
cmluZyhidWZmZXIxLCBidWZsZW4pKTsKLQlwcmludGYoImV4cGVjdGVkOiAlc1xuIiwgb2N0ZXRf
c3RyaW5nX2hleF9zdHJpbmcoYnVmZmVyMCwgYnVmbGVuKSk7Ci0jZW5kaWYgCi0JcmV0dXJuIHNy
dHBfZXJyX3N0YXR1c19hbGdvX2ZhaWw7Ci0gICAgICB9CisgICAgICAgICAgICAgICAgcHJpbnRm
KCJ0ZXN0IGNhc2UgJWQgZmFpbGVkIGF0IGJ5dGUgJWRcbiIsIGksIGopOworICAgICAgICAgICAg
ICAgIHByaW50ZigiY29tcHV0ZWQ6ICVzXG4iLAorICAgICAgICAgICAgICAgICAgICAgICBvY3Rl
dF9zdHJpbmdfaGV4X3N0cmluZyhidWZmZXIxLCBidWZsZW4pKTsKKyAgICAgICAgICAgICAgICBw
cmludGYoImV4cGVjdGVkOiAlc1xuIiwKKyAgICAgICAgICAgICAgICAgICAgICAgb2N0ZXRfc3Ry
aW5nX2hleF9zdHJpbmcoYnVmZmVyMCwgYnVmbGVuKSk7CisjZW5kaWYKKyAgICAgICAgICAgICAg
ICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2FsZ29fZmFpbDsKKyAgICAgICAgICAgIH0KKyAgICAg
ICAgfQogICAgIH0KLSAgfQotICAKLSAgcHJpbnRmKCJwYXNzZWRcbiIpOwogCi0gIHJldHVybiBz
cnRwX2Vycl9zdGF0dXNfb2s7Ci19CisgICAgcHJpbnRmKCJwYXNzZWRcbiIpOwogCisgICAgcmV0
dXJuIHNydHBfZXJyX3N0YXR1c19vazsKK30KIAogLyoKICAqIFRoZSBmdW5jdGlvbiBjaXBoZXJf
dGVzdF90aHJvdWdocHV0X2FycmF5KCkgdGVzdHMgdGhlIGVmZmVjdCBvZiBDUFUKLSAqIGNhY2hl
IHRocmFzaCBvbiBjaXBoZXIgdGhyb3VnaHB1dC4gIAorICogY2FjaGUgdGhyYXNoIG9uIGNpcGhl
ciB0aHJvdWdocHV0LgogICoKICAqIGNpcGhlcl9hcnJheV9hbGxvY19pbml0KGN0eXBlLCBhcnJh
eSwgbnVtX2NpcGhlcnMpIGNyZWF0ZXMgYW4gYXJyYXkKICAqIG9mIHNydHBfY2lwaGVyX3Qgb2Yg
dHlwZSBjdHlwZQogICovCiAKLXNydHBfZXJyX3N0YXR1c190Ci1jaXBoZXJfYXJyYXlfYWxsb2Nf
aW5pdChzcnRwX2NpcGhlcl90ICoqKmNhLCBpbnQgbnVtX2NpcGhlcnMsCi0JCQlzcnRwX2NpcGhl
cl90eXBlX3QgKmN0eXBlLCBpbnQga2xlbikgewotICBpbnQgaSwgajsKLSAgc3J0cF9lcnJfc3Rh
dHVzX3Qgc3RhdHVzOwotICB1aW50OF90ICprZXk7Ci0gIHNydHBfY2lwaGVyX3QgKipjaXBoZXJf
YXJyYXk7Ci0gIC8qIHBhZCBrbGVuIGFsbG9jYXRpb24sIHRvIGhhbmRsZSBhZXNfaWNtIHJlYWRp
bmcgMTYgYnl0ZXMgZm9yIHRoZQotICAgICAxNC1ieXRlIHNhbHQgKi8KLSAgaW50IGtsZW5fcGFk
ID0gKChrbGVuICsgMTUpID4+IDQpIDw8IDQ7Ci0KLSAgLyogYWxsb2NhdGUgYXJyYXkgb2YgcG9p
bnRlcnMgdG8gY2lwaGVycyAqLwotICBjaXBoZXJfYXJyYXkgPSAoc3J0cF9jaXBoZXJfdCAqKikg
bWFsbG9jKHNpemVvZihzcnRwX2NpcGhlcl90ICopICogbnVtX2NpcGhlcnMpOwotICBpZiAoY2lw
aGVyX2FycmF5ID09IE5VTEwpCi0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19hbGxvY19mYWls
OwotCi0gIC8qIHNldCBjYSB0byBsb2NhdGlvbiBvZiBjaXBoZXJfYXJyYXkgKi8KLSAgKmNhID0g
Y2lwaGVyX2FycmF5OwotCi0gIC8qIGFsbG9jYXRlIGtleSAqLwotICBrZXkgPSBzcnRwX2NyeXB0
b19hbGxvYyhrbGVuX3BhZCk7Ci0gIGlmIChrZXkgPT0gTlVMTCkgewotICAgIGZyZWUoY2lwaGVy
X2FycmF5KTsKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2FsbG9jX2ZhaWw7Ci0gIH0KLSAg
Ci0gIC8qIGFsbG9jYXRlIGFuZCBpbml0aWFsaXplIGFuIGFycmF5IG9mIGNpcGhlcnMgKi8KLSAg
Zm9yIChpPTA7IGkgPCBudW1fY2lwaGVyczsgaSsrKSB7Ci0KLSAgICAvKiBhbGxvY2F0ZSBjaXBo
ZXIgKi8KLSAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl90eXBlX2FsbG9jKGN0eXBlLCBjaXBoZXJf
YXJyYXksIGtsZW4sIDE2KTsKLSAgICBpZiAoc3RhdHVzKQotICAgICAgcmV0dXJuIHN0YXR1czsK
LSAgICAKLSAgICAvKiBnZW5lcmF0ZSByYW5kb20ga2V5IGFuZCBpbml0aWFsaXplIGNpcGhlciAq
LwotICAgIGZvciAoaj0wOyBqIDwga2xlbjsgaisrKQotICAgICAga2V5W2pdID0gKHVpbnQ4X3Qp
IHJhbmQoKTsKLSAgICBmb3IgKDsgaiA8IGtsZW5fcGFkOyBqKyspCi0gICAgICBrZXlbal0gPSAw
OwotICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX2luaXQoKmNpcGhlcl9hcnJheSwga2V5KTsKLSAg
ICBpZiAoc3RhdHVzKQotICAgICAgcmV0dXJuIHN0YXR1czsKLQotLyogICAgIHByaW50ZigiJWR0
aCBjaXBoZXIgaXMgYXQgJXBcbiIsIGksICpjaXBoZXJfYXJyYXkpOyAqLwotLyogICAgIHByaW50
ZigiJWR0aCBjaXBoZXIgZGVzY3JpcHRpb246ICVzXG4iLCBpLCAgKi8KLS8qIAkgICAoKmNpcGhl
cl9hcnJheSktPnR5cGUtPmRlc2NyaXB0aW9uKTsgKi8KLSAgICAKLSAgICAvKiBhZHZhbmNlIGNp
cGhlciBhcnJheSBwb2ludGVyICovCi0gICAgY2lwaGVyX2FycmF5Kys7Ci0gIH0KLQotICBzcnRw
X2NyeXB0b19mcmVlKGtleSk7Ci0KLSAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKLX0KK3Ny
dHBfZXJyX3N0YXR1c190IGNpcGhlcl9hcnJheV9hbGxvY19pbml0KHNydHBfY2lwaGVyX3QgKioq
Y2EsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgbnVtX2Np
cGhlcnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcnRwX2Np
cGhlcl90eXBlX3QgKmN0eXBlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgaW50IGtsZW4pCit7CisgICAgaW50IGksIGo7CisgICAgc3J0cF9lcnJfc3RhdHVzX3Qg
c3RhdHVzOworICAgIHVpbnQ4X3QgKmtleTsKKyAgICBzcnRwX2NpcGhlcl90ICoqY2lwaGVyX2Fy
cmF5OworICAgIC8qIHBhZCBrbGVuIGFsbG9jYXRpb24sIHRvIGhhbmRsZSBhZXNfaWNtIHJlYWRp
bmcgMTYgYnl0ZXMgZm9yIHRoZQorICAgICAgIDE0LWJ5dGUgc2FsdCAqLworICAgIGludCBrbGVu
X3BhZCA9ICgoa2xlbiArIDE1KSA+PiA0KSA8PCA0OworCisgICAgLyogYWxsb2NhdGUgYXJyYXkg
b2YgcG9pbnRlcnMgdG8gY2lwaGVycyAqLworICAgIGNpcGhlcl9hcnJheSA9IChzcnRwX2NpcGhl
cl90ICoqKXNydHBfY3J5cHRvX2FsbG9jKHNpemVvZihzcnRwX2NpcGhlcl90ICopICoKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBudW1fY2lw
aGVycyk7CisgICAgaWYgKGNpcGhlcl9hcnJheSA9PSBOVUxMKQorICAgICAgICByZXR1cm4gc3J0
cF9lcnJfc3RhdHVzX2FsbG9jX2ZhaWw7CisKKyAgICAvKiBzZXQgY2EgdG8gbG9jYXRpb24gb2Yg
Y2lwaGVyX2FycmF5ICovCisgICAgKmNhID0gY2lwaGVyX2FycmF5OworCisgICAgLyogYWxsb2Nh
dGUga2V5ICovCisgICAga2V5ID0gc3J0cF9jcnlwdG9fYWxsb2Moa2xlbl9wYWQpOworICAgIGlm
IChrZXkgPT0gTlVMTCkgeworICAgICAgICBzcnRwX2NyeXB0b19mcmVlKGNpcGhlcl9hcnJheSk7
CisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYWxsb2NfZmFpbDsKKyAgICB9CisKKyAg
ICAvKiBhbGxvY2F0ZSBhbmQgaW5pdGlhbGl6ZSBhbiBhcnJheSBvZiBjaXBoZXJzICovCisgICAg
Zm9yIChpID0gMDsgaSA8IG51bV9jaXBoZXJzOyBpKyspIHsKKyAgICAgICAgLyogYWxsb2NhdGUg
Y2lwaGVyICovCisgICAgICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3R5cGVfYWxsb2MoY3R5cGUs
IGNpcGhlcl9hcnJheSwga2xlbiwgMTYpOworICAgICAgICBpZiAoc3RhdHVzKQorICAgICAgICAg
ICAgcmV0dXJuIHN0YXR1czsKKworICAgICAgICAvKiBnZW5lcmF0ZSByYW5kb20ga2V5IGFuZCBp
bml0aWFsaXplIGNpcGhlciAqLworICAgICAgICBmb3IgKGogPSAwOyBqIDwga2xlbjsgaisrKQor
ICAgICAgICAgICAga2V5W2pdID0gKHVpbnQ4X3QpcmFuZCgpOworICAgICAgICBmb3IgKDsgaiA8
IGtsZW5fcGFkOyBqKyspCisgICAgICAgICAgICBrZXlbal0gPSAwOworICAgICAgICBzdGF0dXMg
PSBzcnRwX2NpcGhlcl9pbml0KCpjaXBoZXJfYXJyYXksIGtleSk7CisgICAgICAgIGlmIChzdGF0
dXMpCisgICAgICAgICAgICByZXR1cm4gc3RhdHVzOworCisgICAgICAgIC8qICAgICBwcmludGYo
IiVkdGggY2lwaGVyIGlzIGF0ICVwXG4iLCBpLCAqY2lwaGVyX2FycmF5KTsgKi8KKyAgICAgICAg
LyogICAgIHByaW50ZigiJWR0aCBjaXBoZXIgZGVzY3JpcHRpb246ICVzXG4iLCBpLCAgKi8KKyAg
ICAgICAgLyogCSAgICgqY2lwaGVyX2FycmF5KS0+dHlwZS0+ZGVzY3JpcHRpb24pOyAqLworCisg
ICAgICAgIC8qIGFkdmFuY2UgY2lwaGVyIGFycmF5IHBvaW50ZXIgKi8KKyAgICAgICAgY2lwaGVy
X2FycmF5Kys7CisgICAgfQorCisgICAgc3J0cF9jcnlwdG9fZnJlZShrZXkpOwogCi1zcnRwX2Vy
cl9zdGF0dXNfdAotY2lwaGVyX2FycmF5X2RlbGV0ZShzcnRwX2NpcGhlcl90ICpjaXBoZXJfYXJy
YXlbXSwgaW50IG51bV9jaXBoZXIpIHsKLSAgaW50IGk7Ci0gIAotICBmb3IgKGk9MDsgaSA8IG51
bV9jaXBoZXI7IGkrKykgewotICAgIHNydHBfY2lwaGVyX2RlYWxsb2MoY2lwaGVyX2FycmF5W2ld
KTsKLSAgfQotCi0gIGZyZWUoY2lwaGVyX2FycmF5KTsKLSAgCi0gIHJldHVybiBzcnRwX2Vycl9z
dGF0dXNfb2s7CisgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0KIAorc3J0cF9lcnJf
c3RhdHVzX3QgY2lwaGVyX2FycmF5X2RlbGV0ZShzcnRwX2NpcGhlcl90ICpjaXBoZXJfYXJyYXlb
XSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IG51bV9jaXBoZXIp
Cit7CisgICAgaW50IGk7CisKKyAgICBmb3IgKGkgPSAwOyBpIDwgbnVtX2NpcGhlcjsgaSsrKSB7
CisgICAgICAgIHNydHBfY2lwaGVyX2RlYWxsb2MoY2lwaGVyX2FycmF5W2ldKTsKKyAgICB9CisK
KyAgICBzcnRwX2NyeXB0b19mcmVlKGNpcGhlcl9hcnJheSk7CisKKyAgICByZXR1cm4gc3J0cF9l
cnJfc3RhdHVzX29rOworfQogCiAvKgogICogY2lwaGVyX2FycmF5X2JpdHNfcGVyX3NlY29uZChj
LCBsLCB0KSBjb21wdXRlcyAoYW4gZXN0aW1hdGUgb2YpIHRoZQogICogbnVtYmVyIG9mIGJpdHMg
dGhhdCBhIGNpcGhlciBpbXBsZW1lbnRhdGlvbiBjYW4gZW5jcnlwdCBpbiBhIHNlY29uZAogICog
d2hlbiBkaXN0aW5jdCBrZXlzIGFyZSB1c2VkIHRvIGVuY3J5cHQgZGlzdGluY3QgbWVzc2FnZXMK
LSAqIAorICoKICAqIGMgaXMgYSBjaXBoZXIgKHdoaWNoIE1VU1QgYmUgYWxsb2NhdGVkIGFuIGlu
aXRpYWxpemVkIGFscmVhZHkpLCBsCiAgKiBpcyB0aGUgbGVuZ3RoIGluIG9jdGV0cyBvZiB0aGUg
dGVzdCBkYXRhIHRvIGJlIGVuY3J5cHRlZCwgYW5kIHQgaXMKICAqIHRoZSBudW1iZXIgb2YgdHJp
YWxzCkBAIC01MjAsODAgKzUyNiw4NSBAQCBjaXBoZXJfYXJyYXlfZGVsZXRlKHNydHBfY2lwaGVy
X3QgKmNpcGhlcl9hcnJheVtdLCBpbnQgbnVtX2NpcGhlcikgewogICogaWYgYW4gZXJyb3IgaXMg
ZW5jb3VudGVyZWQsIHRoZSB2YWx1ZSAwIGlzIHJldHVybmVkCiAgKi8KIAotdWludDY0X3QKLWNp
cGhlcl9hcnJheV9iaXRzX3Blcl9zZWNvbmQoc3J0cF9jaXBoZXJfdCAqY2lwaGVyX2FycmF5W10s
IGludCBudW1fY2lwaGVyLCAKLQkJCSAgICAgIHVuc2lnbmVkIG9jdGV0c19pbl9idWZmZXIsIGlu
dCBudW1fdHJpYWxzKSB7Ci0gIGludCBpOwotICB2MTI4X3Qgbm9uY2U7Ci0gIGNsb2NrX3QgdGlt
ZXI7Ci0gIHVuc2lnbmVkIGNoYXIgKmVuY19idWY7Ci0gIGludCBjaXBoZXJfaW5kZXggPSByYW5k
KCkgJSBudW1fY2lwaGVyOwotCi0gIC8qIE92ZXItYWxsb2MsIGZvciBOSVNUIENCQyBwYWRkaW5n
ICovCi0gIGVuY19idWYgPSBzcnRwX2NyeXB0b19hbGxvYyhvY3RldHNfaW5fYnVmZmVyKzE3KTsK
LSAgaWYgKGVuY19idWYgPT0gTlVMTCkKLSAgICByZXR1cm4gMDsgIC8qIGluZGljYXRlIGJhZCBw
YXJhbWV0ZXJzIGJ5IHJldHVybmluZyBudWxsICovCi0gIG1lbXNldChlbmNfYnVmLCAwLCBvY3Rl
dHNfaW5fYnVmZmVyKTsKLSAgCi0gIC8qIHRpbWUgcmVwZWF0ZWQgdHJpYWxzICovCi0gIHYxMjhf
c2V0X3RvX3plcm8oJm5vbmNlKTsKLSAgdGltZXIgPSBjbG9jaygpOwotICBmb3IoaT0wOyBpIDwg
bnVtX3RyaWFsczsgaSsrLCBub25jZS52MzJbM10gPSBpKSB7Ci0gICAgLyogbGVuZ3RoIHBhcmFt
ZXRlciB0byBzcnRwX2NpcGhlcl9lbmNyeXB0IGlzIGluL291dCAtLSBvdXQgaXMgdG90YWwsIHBh
ZGRlZAotICAgICAqIGxlbmd0aCAtLSBzbyByZXNldCBpdCBlYWNoIHRpbWUuICovCi0gICAgdW5z
aWduZWQgb2N0ZXRzX3RvX2VuY3J5cHQgPSBvY3RldHNfaW5fYnVmZmVyOwotCi0gICAgLyogZW5j
cnlwdCBidWZmZXIgd2l0aCBjaXBoZXIgKi8KLSAgICBzcnRwX2NpcGhlcl9zZXRfaXYoY2lwaGVy
X2FycmF5W2NpcGhlcl9pbmRleF0sICh1aW50OF90Kikmbm9uY2UsIHNydHBfZGlyZWN0aW9uX2Vu
Y3J5cHQpOwotICAgIHNydHBfY2lwaGVyX2VuY3J5cHQoY2lwaGVyX2FycmF5W2NpcGhlcl9pbmRl
eF0sIGVuY19idWYsICZvY3RldHNfdG9fZW5jcnlwdCk7Ci0KLSAgICAvKiBjaG9vc2UgYSBjaXBo
ZXIgYXQgcmFuZG9tIGZyb20gdGhlIGFycmF5Ki8KLSAgICBjaXBoZXJfaW5kZXggPSAoKigodWlu
dDMyX3QgKillbmNfYnVmKSkgJSBudW1fY2lwaGVyOwotICB9Ci0gIHRpbWVyID0gY2xvY2soKSAt
IHRpbWVyOwotCi0gIGZyZWUoZW5jX2J1Zik7Ci0KLSAgaWYgKHRpbWVyID09IDApIHsKLSAgICAv
KiBUb28gZmFzdCEgKi8KLSAgICByZXR1cm4gMDsKLSAgfQordWludDY0X3QgY2lwaGVyX2FycmF5
X2JpdHNfcGVyX3NlY29uZChzcnRwX2NpcGhlcl90ICpjaXBoZXJfYXJyYXlbXSwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IG51bV9jaXBoZXIsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIG9jdGV0c19pbl9idWZmZXIsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBudW1fdHJpYWxzKQorewor
ICAgIGludCBpOworICAgIHYxMjhfdCBub25jZTsKKyAgICBjbG9ja190IHRpbWVyOworICAgIHVu
c2lnbmVkIGNoYXIgKmVuY19idWY7CisgICAgaW50IGNpcGhlcl9pbmRleCA9IHJhbmQoKSAlIG51
bV9jaXBoZXI7CisKKyAgICAvKiBPdmVyLWFsbG9jLCBmb3IgTklTVCBDQkMgcGFkZGluZyAqLwor
ICAgIGVuY19idWYgPSBzcnRwX2NyeXB0b19hbGxvYyhvY3RldHNfaW5fYnVmZmVyICsgMTcpOwor
ICAgIGlmIChlbmNfYnVmID09IE5VTEwpCisgICAgICAgIHJldHVybiAwOyAvKiBpbmRpY2F0ZSBi
YWQgcGFyYW1ldGVycyBieSByZXR1cm5pbmcgbnVsbCAqLworCisgICAgLyogdGltZSByZXBlYXRl
ZCB0cmlhbHMgKi8KKyAgICB2MTI4X3NldF90b196ZXJvKCZub25jZSk7CisgICAgdGltZXIgPSBj
bG9jaygpOworICAgIGZvciAoaSA9IDA7IGkgPCBudW1fdHJpYWxzOyBpKyssIG5vbmNlLnYzMlsz
XSA9IGkpIHsKKyAgICAgICAgLyogbGVuZ3RoIHBhcmFtZXRlciB0byBzcnRwX2NpcGhlcl9lbmNy
eXB0IGlzIGluL291dCAtLSBvdXQgaXMgdG90YWwsCisgICAgICAgICAqIHBhZGRlZAorICAgICAg
ICAgKiBsZW5ndGggLS0gc28gcmVzZXQgaXQgZWFjaCB0aW1lLiAqLworICAgICAgICB1bnNpZ25l
ZCBvY3RldHNfdG9fZW5jcnlwdCA9IG9jdGV0c19pbl9idWZmZXI7CisKKyAgICAgICAgLyogZW5j
cnlwdCBidWZmZXIgd2l0aCBjaXBoZXIgKi8KKyAgICAgICAgc3J0cF9jaXBoZXJfc2V0X2l2KGNp
cGhlcl9hcnJheVtjaXBoZXJfaW5kZXhdLCAodWludDhfdCAqKSZub25jZSwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHNydHBfZGlyZWN0aW9uX2VuY3J5cHQpOworICAgICAgICBzcnRwX2Np
cGhlcl9lbmNyeXB0KGNpcGhlcl9hcnJheVtjaXBoZXJfaW5kZXhdLCBlbmNfYnVmLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICZvY3RldHNfdG9fZW5jcnlwdCk7CisKKyAgICAgICAgLyog
Y2hvb3NlIGEgY2lwaGVyIGF0IHJhbmRvbSBmcm9tIHRoZSBhcnJheSovCisgICAgICAgIGNpcGhl
cl9pbmRleCA9ICgqKCh1aW50MzJfdCAqKWVuY19idWYpKSAlIG51bV9jaXBoZXI7CisgICAgfQor
ICAgIHRpbWVyID0gY2xvY2soKSAtIHRpbWVyOwogCi0gIHJldHVybiAodWludDY0X3QpQ0xPQ0tT
X1BFUl9TRUMgKiBudW1fdHJpYWxzICogOCAqIG9jdGV0c19pbl9idWZmZXIgLyB0aW1lcjsKLX0K
KyAgICBzcnRwX2NyeXB0b19mcmVlKGVuY19idWYpOwogCi12b2lkCi1jaXBoZXJfYXJyYXlfdGVz
dF90aHJvdWdocHV0KHNydHBfY2lwaGVyX3QgKmNhW10sIGludCBudW1fY2lwaGVyKSB7Ci0gIGlu
dCBpOwotICBpbnQgbWluX2VuY19sZW4gPSAxNjsgICAgIAotICBpbnQgbWF4X2VuY19sZW4gPSAy
MDQ4OyAgIC8qIHNob3VsZCBiZSBhIHBvd2VyIG9mIHR3byAqLwotICBpbnQgbnVtX3RyaWFscyA9
IDEwMDAwMDA7CisgICAgaWYgKHRpbWVyID09IDApIHsKKyAgICAgICAgLyogVG9vIGZhc3QhICov
CisgICAgICAgIHJldHVybiAwOworICAgIH0KIAotICBwcmludGYoInRpbWluZyAlcyB0aHJvdWdo
cHV0IHdpdGgga2V5IGxlbmd0aCAlZCwgYXJyYXkgc2l6ZSAlZDpcbiIsIAotCSAoY2FbMF0pLT50
eXBlLT5kZXNjcmlwdGlvbiwgKGNhWzBdKS0+a2V5X2xlbiwgbnVtX2NpcGhlcik7Ci0gIGZmbHVz
aChzdGRvdXQpOwotICBmb3IgKGk9bWluX2VuY19sZW47IGkgPD0gbWF4X2VuY19sZW47IGkgPSBp
ICogNCkKLSAgICBwcmludGYoIm1zZyBsZW46ICVkXHRnaWdhYml0cyBwZXIgc2Vjb25kOiAlZlxu
IiwgaSwKLQkgICBjaXBoZXJfYXJyYXlfYml0c19wZXJfc2Vjb25kKGNhLCBudW1fY2lwaGVyLCBp
LCBudW1fdHJpYWxzKSAvIDFlOSk7CisgICAgcmV0dXJuICh1aW50NjRfdClDTE9DS1NfUEVSX1NF
QyAqIG51bV90cmlhbHMgKiA4ICogb2N0ZXRzX2luX2J1ZmZlciAvIHRpbWVyOworfQogCit2b2lk
IGNpcGhlcl9hcnJheV90ZXN0X3Rocm91Z2hwdXQoc3J0cF9jaXBoZXJfdCAqY2FbXSwgaW50IG51
bV9jaXBoZXIpCit7CisgICAgaW50IGk7CisgICAgaW50IG1pbl9lbmNfbGVuID0gMTY7CisgICAg
aW50IG1heF9lbmNfbGVuID0gMjA0ODsgLyogc2hvdWxkIGJlIGEgcG93ZXIgb2YgdHdvICovCisg
ICAgaW50IG51bV90cmlhbHMgPSAxMDAwMDAwOworCisgICAgcHJpbnRmKCJ0aW1pbmcgJXMgdGhy
b3VnaHB1dCB3aXRoIGtleSBsZW5ndGggJWQsIGFycmF5IHNpemUgJWQ6XG4iLAorICAgICAgICAg
ICAoY2FbMF0pLT50eXBlLT5kZXNjcmlwdGlvbiwgKGNhWzBdKS0+a2V5X2xlbiwgbnVtX2NpcGhl
cik7CisgICAgZmZsdXNoKHN0ZG91dCk7CisgICAgZm9yIChpID0gbWluX2VuY19sZW47IGkgPD0g
bWF4X2VuY19sZW47IGkgPSBpICogNCkKKyAgICAgICAgcHJpbnRmKCJtc2cgbGVuOiAlZFx0Z2ln
YWJpdHMgcGVyIHNlY29uZDogJWZcbiIsIGksCisgICAgICAgICAgICAgICBjaXBoZXJfYXJyYXlf
Yml0c19wZXJfc2Vjb25kKGNhLCBudW1fY2lwaGVyLCBpLCBudW1fdHJpYWxzKSAvCisgICAgICAg
ICAgICAgICAgICAgMWU5KTsKIH0KIAotc3J0cF9lcnJfc3RhdHVzX3QKLWNpcGhlcl9kcml2ZXJf
dGVzdF9hcnJheV90aHJvdWdocHV0KHNydHBfY2lwaGVyX3R5cGVfdCAqY3QsIAotCQkJCSAgICBp
bnQga2xlbiwgaW50IG51bV9jaXBoZXIpIHsKLSAgc3J0cF9jaXBoZXJfdCAqKmNhID0gTlVMTDsK
LSAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVzOwotCi0gIHN0YXR1cyA9IGNpcGhlcl9hcnJheV9h
bGxvY19pbml0KCZjYSwgbnVtX2NpcGhlciwgY3QsIGtsZW4pOwotICBpZiAoc3RhdHVzKSB7Ci0g
ICAgcHJpbnRmKCJlcnJvcjogY2lwaGVyX2FycmF5X2FsbG9jX2luaXQoKSBmYWlsZWQgd2l0aCBl
cnJvciBjb2RlICVkXG4iLAotCSAgIHN0YXR1cyk7Ci0gICAgcmV0dXJuIHN0YXR1czsKLSAgfQot
ICAKLSAgY2lwaGVyX2FycmF5X3Rlc3RfdGhyb3VnaHB1dChjYSwgbnVtX2NpcGhlcik7Ci0gIAot
ICBjaXBoZXJfYXJyYXlfZGVsZXRlKGNhLCBudW1fY2lwaGVyKTsgICAgCi0gCi0gIHJldHVybiBz
cnRwX2Vycl9zdGF0dXNfb2s7CitzcnRwX2Vycl9zdGF0dXNfdCBjaXBoZXJfZHJpdmVyX3Rlc3Rf
YXJyYXlfdGhyb3VnaHB1dChzcnRwX2NpcGhlcl90eXBlX3QgKmN0LAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IGtsZW4sCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgbnVtX2Np
cGhlcikKK3sKKyAgICBzcnRwX2NpcGhlcl90ICoqY2EgPSBOVUxMOworICAgIHNydHBfZXJyX3N0
YXR1c190IHN0YXR1czsKKworICAgIHN0YXR1cyA9IGNpcGhlcl9hcnJheV9hbGxvY19pbml0KCZj
YSwgbnVtX2NpcGhlciwgY3QsIGtsZW4pOworICAgIGlmIChzdGF0dXMpIHsKKyAgICAgICAgcHJp
bnRmKCJlcnJvcjogY2lwaGVyX2FycmF5X2FsbG9jX2luaXQoKSBmYWlsZWQgd2l0aCBlcnJvciBj
b2RlICVkXG4iLAorICAgICAgICAgICAgICAgc3RhdHVzKTsKKyAgICAgICAgcmV0dXJuIHN0YXR1
czsKKyAgICB9CisKKyAgICBjaXBoZXJfYXJyYXlfdGVzdF90aHJvdWdocHV0KGNhLCBudW1fY2lw
aGVyKTsKKworICAgIGNpcGhlcl9hcnJheV9kZWxldGUoY2EsIG51bV9jaXBoZXIpOworCisgICAg
cmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBh
cnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vdGVzdC9kYXRh
dHlwZXNfZHJpdmVyLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L2xpYnNydHAvY3J5cHRvL3Rlc3QvZGF0YXR5cGVzX2RyaXZlci5jCmluZGV4IGQ4NDdj
MmY4MDI5YTVkZjJmM2U0ZGIyMTk0Zjk5YzM5MDc2OTg4NjYuLjJmNzg5MDNlYjhlYjEzM2U2MjJk
ZWE1Y2QxZDBhOWVlMjE1N2QyN2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vdGVzdC9kYXRhdHlwZXNfZHJp
dmVyLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9saWJzcnRwL2NyeXB0by90ZXN0L2RhdGF0eXBlc19kcml2ZXIuYwpAQCAtOCwyNiArOCwyNiBA
QAogICovCiAKIC8qCi0gKgkKKyAqCiAgKiBDb3B5cmlnaHQgKGMpIDIwMDEtMjAxNywgQ2lzY28g
U3lzdGVtcywgSW5jLgogICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqIAorICoKICAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zCiAgKiBhcmUgbWV0OgotICogCisgKgogICogICBSZWRpc3RyaWJ1
dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAogICog
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIuCi0gKiAKKyAqCiAgKiAgIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0
IHJlcHJvZHVjZSB0aGUgYWJvdmUKICAqICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKICAqICAgZGlzY2xhaW1lciBpbiB0aGUgZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkCiAgKiAgIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KLSAqIAorICoKICAqICAgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgQ2lz
Y28gU3lzdGVtcywgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwogICogICBjb250cmlidXRvcnMg
bWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQKICAqICAg
ZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNz
aW9uLgotICogCisgKgogICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJ
R0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwogICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKICAqIExJTUlURUQgVE8s
IFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCkBA
IC00MywxMTcgKzQzLDEwOCBAQAogICoKICAqLwogCi0KICNpZmRlZiBIQVZFX0NPTkZJR19ICi0g
ICAgI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNvbmZpZy5oPgogI2VuZGlmCiAKLSNp
bmNsdWRlIDxzdGRpby5oPiAgICAgICAgICAgIC8qIGZvciBwcmludGYoKSAqLwotI2luY2x1ZGUg
PHN0cmluZy5oPiAgICAgICAgICAgLyogZm9yIHN0cmxlbigpICovCisjaW5jbHVkZSA8c3RkaW8u
aD4gIC8qIGZvciBwcmludGYoKSAqLworI2luY2x1ZGUgPHN0cmluZy5oPiAvKiBmb3Igc3RybGVu
KCkgKi8KICNpbmNsdWRlICJkYXRhdHlwZXMuaCIKICNpbmNsdWRlICJ1dGlsLmgiCiAKLXZvaWQK
LWJ5dGVfb3JkZXIodm9pZCk7Cit2b2lkIGJ5dGVfb3JkZXIodm9pZCk7CiAKLXZvaWQKLXRlc3Rf
aGV4X3N0cmluZ19mdW5jcyh2b2lkKTsKK3ZvaWQgdGVzdF9oZXhfc3RyaW5nX2Z1bmNzKHZvaWQp
OwogCi12b2lkCi1wcmludF9zdHJpbmcoY2hhciAqcyk7Cit2b2lkIHByaW50X3N0cmluZyhjaGFy
ICpzKTsKIAotdm9pZAotdGVzdF9ic3dhcCh2b2lkKTsKK3ZvaWQgdGVzdF9ic3dhcCh2b2lkKTsK
IAotaW50Ci1tYWluICh2b2lkKSB7Ci0gIAotICAvKgotICAgKiB0aGlzIHByb2dyYW0gaW5jbHVk
ZXMgdmFyaW91cyBhbmQgc3VuZHJ5IHRlc3RzIGZvciBmdW5kYW1lbnRhbAotICAgKiBkYXRhdHlw
ZXMuICBpdCdzIGEgZ3JhYi1iYWcgb2YgdGhyb3dhd2F5IGNvZGUsIHJldGFpbmVkIG9ubHkgaW4K
LSAgICogY2FzZSBvZiBmdXR1cmUgcHJvYmxlbXMKLSAgICovCi0KLSAgaW50IGksIGo7Ci0gIHYx
MjhfdCB4OwotICBjaGFyICpyID0gCi0gICAgIlRoZSBNb3ZpbmcgRmluZ2VyIHdyaXRlczsgYW5k
LCBoYXZpbmcgd3JpdCxcbiIKLSAgICAiTW92ZXMgb246IG5vciBhbGwgdGh5IFBpZXR5IG5vciBX
aXRcbiIKLSAgICAiU2hhbGwgbHVyZSBpdCBiYWNrIHRvIGNhbmNlbCBoYWxmIGEgTGluZSxcbiIK
LSAgICAiTm9yIGFsbCB0aHkgVGVhcnMgd2FzaCBvdXQgYSBXb3JkIG9mIGl0LiI7Ci0gIGNoYXIg
KnMgPSAiaW5jb21wbGV0IjsgCi0gCi0gIHByaW50X3N0cmluZyhyKTsKLSAgcHJpbnRfc3RyaW5n
KHMpOwotIAotICBieXRlX29yZGVyKCk7Ci0gIHRlc3RfaGV4X3N0cmluZ19mdW5jcygpOwotCi0g
IGZvciAoaj0wOyBqIDwgMTI4OyBqKyspIHsKK2ludCBtYWluKHZvaWQpCit7CisgICAgLyoKKyAg
ICAgKiB0aGlzIHByb2dyYW0gaW5jbHVkZXMgdmFyaW91cyBhbmQgc3VuZHJ5IHRlc3RzIGZvciBm
dW5kYW1lbnRhbAorICAgICAqIGRhdGF0eXBlcy4gIGl0J3MgYSBncmFiLWJhZyBvZiB0aHJvd2F3
YXkgY29kZSwgcmV0YWluZWQgb25seSBpbgorICAgICAqIGNhc2Ugb2YgZnV0dXJlIHByb2JsZW1z
CisgICAgICovCisKKyAgICBpbnQgaSwgajsKKyAgICB2MTI4X3QgeDsKKyAgICBjaGFyICpyID0g
IlRoZSBNb3ZpbmcgRmluZ2VyIHdyaXRlczsgYW5kLCBoYXZpbmcgd3JpdCxcbiIKKyAgICAgICAg
ICAgICAgIk1vdmVzIG9uOiBub3IgYWxsIHRoeSBQaWV0eSBub3IgV2l0XG4iCisgICAgICAgICAg
ICAgICJTaGFsbCBsdXJlIGl0IGJhY2sgdG8gY2FuY2VsIGhhbGYgYSBMaW5lLFxuIgorICAgICAg
ICAgICAgICAiTm9yIGFsbCB0aHkgVGVhcnMgd2FzaCBvdXQgYSBXb3JkIG9mIGl0LiI7CisgICAg
Y2hhciAqcyA9ICJpbmNvbXBsZXQiOworCisgICAgcHJpbnRfc3RyaW5nKHIpOworICAgIHByaW50
X3N0cmluZyhzKTsKKworICAgIGJ5dGVfb3JkZXIoKTsKKyAgICB0ZXN0X2hleF9zdHJpbmdfZnVu
Y3MoKTsKKworICAgIGZvciAoaiA9IDA7IGogPCAxMjg7IGorKykgeworICAgICAgICB2MTI4X3Nl
dF90b196ZXJvKCZ4KTsKKyAgICAgICAgLyogICAgICB4LnYzMlswXSA9ICgxIDw8IGopOyAqLwor
ICAgICAgICB2MTI4X3NldF9iaXQoJngsIGopOworICAgICAgICBwcmludGYoIiVzXG4iLCB2MTI4
X2JpdF9zdHJpbmcoJngpKTsKKyAgICAgICAgdjEyOF9jbGVhcl9iaXQoJngsIGopOworICAgICAg
ICBwcmludGYoIiVzXG4iLCB2MTI4X2JpdF9zdHJpbmcoJngpKTsKKyAgICB9CisKKyAgICBwcmlu
dGYoIi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiIpOwor
ICAgIHYxMjhfc2V0X3RvX3plcm8oJngpOworICAgIGZvciAoaSA9IDA7IGkgPCAxMjg7IGkrKykg
eworICAgICAgICB2MTI4X3NldF9iaXQoJngsIGkpOworICAgIH0KKyAgICBwcmludGYoIiVzXG4i
LCB2MTI4X2JpdF9zdHJpbmcoJngpKTsKKworICAgIHByaW50ZigiLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIik7CiAgICAgdjEyOF9zZXRfdG9femVybygm
eCk7Ci0gICAgLyogICAgICB4LnYzMlswXSA9ICgxIDw8IGopOyAqLwotICAgIHYxMjhfc2V0X2Jp
dCgmeCwgaik7Ci0gICAgcHJpbnRmKCIlc1xuIiwgdjEyOF9iaXRfc3RyaW5nKCZ4KSk7IAotICAg
IHYxMjhfY2xlYXJfYml0KCZ4LCBqKTsKLSAgICBwcmludGYoIiVzXG4iLCB2MTI4X2JpdF9zdHJp
bmcoJngpKTsgCi0gICAgCi0gIH0KLQotICBwcmludGYoIi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiIpOwotICB2MTI4X3NldF90b196ZXJvKCZ4KTsKLSAg
Zm9yIChpPTA7IGkgPCAxMjg7IGkrKykgewotICAgIHYxMjhfc2V0X2JpdCgmeCwgaSk7Ci0gIH0K
LSAgcHJpbnRmKCIlc1xuIiwgdjEyOF9iaXRfc3RyaW5nKCZ4KSk7IAotCi0gIHByaW50ZigiLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIik7Ci0gIHYxMjhf
c2V0X3RvX3plcm8oJngpOwotICB2MTI4X3NldF9iaXQoJngsIDApOwotICBmb3IgKGk9MDsgaSA8
IDEyODsgaSsrKSB7Ci0gICAgICBwcmludGYoIiVzXG4iLCB2MTI4X2JpdF9zdHJpbmcoJngpKTsg
Ci0gICAgdjEyOF9yaWdodF9zaGlmdCgmeCwgMSk7Ci0gIH0KLSAgcHJpbnRmKCItLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4iKTsKLSAgdjEyOF9zZXRfdG9f
emVybygmeCk7Ci0gIHYxMjhfc2V0X2JpdCgmeCwgMTI3KTsKLSAgZm9yIChpPTA7IGkgPCAxMjg7
IGkrKykgewotICAgICAgcHJpbnRmKCIlc1xuIiwgdjEyOF9iaXRfc3RyaW5nKCZ4KSk7IAotICAg
IHYxMjhfbGVmdF9zaGlmdCgmeCwgMSk7Ci0gIH0KLSAgcHJpbnRmKCItLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4iKTsKLSAgZm9yIChpPTA7IGkgPCAxMjg7
IGkrKykgeworICAgIHYxMjhfc2V0X2JpdCgmeCwgMCk7CisgICAgZm9yIChpID0gMDsgaSA8IDEy
ODsgaSsrKSB7CisgICAgICAgIHByaW50ZigiJXNcbiIsIHYxMjhfYml0X3N0cmluZygmeCkpOwor
ICAgICAgICB2MTI4X3JpZ2h0X3NoaWZ0KCZ4LCAxKTsKKyAgICB9CisgICAgcHJpbnRmKCItLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4iKTsKICAgICB2MTI4
X3NldF90b196ZXJvKCZ4KTsKICAgICB2MTI4X3NldF9iaXQoJngsIDEyNyk7Ci0gICAgdjEyOF9s
ZWZ0X3NoaWZ0KCZ4LCBpKTsKLSAgICAgIHByaW50ZigiJXNcbiIsIHYxMjhfYml0X3N0cmluZygm
eCkpOyAKLSAgfQotICBwcmludGYoIi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS1cbiIpOwotICB2MTI4X3NldF90b196ZXJvKCZ4KTsKLSAgZm9yIChpPTA7IGkg
PCAxMjg7IGkrPTIpIHsKLSAgICB2MTI4X3NldF9iaXQoJngsIGkpOwotICB9Ci0gIHByaW50Zigi
Yml0X3N0cmluZzogeyAlcyB9XG4iLCB2MTI4X2JpdF9zdHJpbmcoJngpKTsgCi0gIHByaW50Zigi
Z2V0X2JpdDogICAgeyAiKTsgICAKLSAgZm9yIChpPTA7IGkgPCAxMjg7IGkrKykgewotICAgIGlm
ICh2MTI4X2dldF9iaXQoJngsIGkpID09IDEpCi0gICAgICBwcmludGYoIjEiKTsKLSAgICBlbHNl
Ci0gICAgICBwcmludGYoIjAiKTsKLSAgfQotICBwcmludGYoIiB9IFxuIik7Ci0KLSAgdGVzdF9i
c3dhcCgpOwotCi0gIHJldHVybiAwOworICAgIGZvciAoaSA9IDA7IGkgPCAxMjg7IGkrKykgewor
ICAgICAgICBwcmludGYoIiVzXG4iLCB2MTI4X2JpdF9zdHJpbmcoJngpKTsKKyAgICAgICAgdjEy
OF9sZWZ0X3NoaWZ0KCZ4LCAxKTsKKyAgICB9CisgICAgcHJpbnRmKCItLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4iKTsKKyAgICBmb3IgKGkgPSAwOyBpIDwg
MTI4OyBpKyspIHsKKyAgICAgICAgdjEyOF9zZXRfdG9femVybygmeCk7CisgICAgICAgIHYxMjhf
c2V0X2JpdCgmeCwgMTI3KTsKKyAgICAgICAgdjEyOF9sZWZ0X3NoaWZ0KCZ4LCBpKTsKKyAgICAg
ICAgcHJpbnRmKCIlc1xuIiwgdjEyOF9iaXRfc3RyaW5nKCZ4KSk7CisgICAgfQorICAgIHByaW50
ZigiLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIik7Cisg
ICAgdjEyOF9zZXRfdG9femVybygmeCk7CisgICAgZm9yIChpID0gMDsgaSA8IDEyODsgaSArPSAy
KSB7CisgICAgICAgIHYxMjhfc2V0X2JpdCgmeCwgaSk7CisgICAgfQorICAgIHByaW50ZigiYml0
X3N0cmluZzogeyAlcyB9XG4iLCB2MTI4X2JpdF9zdHJpbmcoJngpKTsKKyAgICBwcmludGYoImdl
dF9iaXQ6ICAgIHsgIik7CisgICAgZm9yIChpID0gMDsgaSA8IDEyODsgaSsrKSB7CisgICAgICAg
IGlmICh2MTI4X2dldF9iaXQoJngsIGkpID09IDEpCisgICAgICAgICAgICBwcmludGYoIjEiKTsK
KyAgICAgICAgZWxzZQorICAgICAgICAgICAgcHJpbnRmKCIwIik7CisgICAgfQorICAgIHByaW50
ZigiIH0gXG4iKTsKKworICAgIHRlc3RfYnN3YXAoKTsKKworICAgIHJldHVybiAwOwogfQogCi0K
IC8qIGJ5dGVfb3JkZXIoKSBwcmludHMgb3V0IGJ5dGUgb3JkZXJpbmcgb2YgZGF0YXR5cGVzICov
CiAKLXZvaWQKLWJ5dGVfb3JkZXIodm9pZCkgewotICBpbnQgaTsKLSAgdjEyOF90IGU7Cit2b2lk
IGJ5dGVfb3JkZXIodm9pZCkKK3sKKyAgICBpbnQgaTsKKyAgICB2MTI4X3QgZTsKICNpZiAwCiAg
IHYxNl90IGI7CiAgIHYzMl90IGM7CkBAIC0xODAsNjMgKzE3MSw2MCBAQCBieXRlX29yZGVyKHZv
aWQpIHsKIAogICBjLnZhbHVlID0gMHgwMDAxMDAwMjsKICAgcHJpbnRmKCJ2MzJfdDpcdCV4JXhc
biIsIGMudjE2WzBdLCBjLnYxNlsxXSk7Ci0jZW5kaWYgCisjZW5kaWYKIAotICBwcmludGYoImJ5
dGUgb3JkZXJpbmcgb2YgY3J5cHRvL21hdGggZGF0YXR5cGVzOlxuIik7Ci0gIGZvciAoaT0wOyBp
IDwgc2l6ZW9mKGUpOyBpKyspCi0gICAgZS52OFtpXSA9IGk7Ci0gIHByaW50ZigidjEyOF90OiAl
c1xuIiwgdjEyOF9oZXhfc3RyaW5nKCZlKSk7Ci0gIAorICAgIHByaW50ZigiYnl0ZSBvcmRlcmlu
ZyBvZiBjcnlwdG8vbWF0aCBkYXRhdHlwZXM6XG4iKTsKKyAgICBmb3IgKGkgPSAwOyBpIDwgc2l6
ZW9mKGUpOyBpKyspCisgICAgICAgIGUudjhbaV0gPSBpOworICAgIHByaW50ZigidjEyOF90OiAl
c1xuIiwgdjEyOF9oZXhfc3RyaW5nKCZlKSk7CiB9CiAKLXZvaWQKLXRlc3RfaGV4X3N0cmluZ19m
dW5jcyh2b2lkKSB7Ci0gIGNoYXIgaGV4MVtdID0gImFiYWRjYWZlIjsKLSAgY2hhciBoZXgyW10g
PSAiMDEyMzQ1Njc4OWFiY2RlZnFxcXFxIjsKLSAgY2hhciByYXdbMTBdOwotICBpbnQgbGVuOwot
Ci0gIGxlbiA9IGhleF9zdHJpbmdfdG9fb2N0ZXRfc3RyaW5nKHJhdywgaGV4MSwgc3RybGVuKGhl
eDEpKTsKLSAgcHJpbnRmKCJjb21wdXRlZCBsZW5ndGg6ICVkXHRzdHJpbmc6ICVzXG4iLCBsZW4s
Ci0JIG9jdGV0X3N0cmluZ19oZXhfc3RyaW5nKHJhdywgbGVuLzIpKTsKLSAgcHJpbnRmKCJleHBl
Y3RlZCBsZW5ndGg6ICV1XHRzdHJpbmc6ICVzXG4iLCAodW5zaWduZWQpc3RybGVuKGhleDEpLCBo
ZXgxKTsKLQotICBsZW4gPSBoZXhfc3RyaW5nX3RvX29jdGV0X3N0cmluZyhyYXcsIGhleDIsIHN0
cmxlbihoZXgyKSk7Ci0gIHByaW50ZigiY29tcHV0ZWQgbGVuZ3RoOiAlZFx0c3RyaW5nOiAlc1xu
IiwgbGVuLAotCSBvY3RldF9zdHJpbmdfaGV4X3N0cmluZyhyYXcsIGxlbi8yKSk7Ci0gIHByaW50
ZigiZXhwZWN0ZWQgbGVuZ3RoOiAlZFx0c3RyaW5nOiAlc1xuIiwgMTYsICIwMTIzNDU2Nzg5YWJj
ZGVmIik7Ci0KK3ZvaWQgdGVzdF9oZXhfc3RyaW5nX2Z1bmNzKHZvaWQpCit7CisgICAgY2hhciBo
ZXgxW10gPSAiYWJhZGNhZmUiOworICAgIGNoYXIgaGV4MltdID0gIjAxMjM0NTY3ODlhYmNkZWZx
cXFxcSI7CisgICAgY2hhciByYXdbMTBdOworICAgIGludCBsZW47CisKKyAgICBsZW4gPSBoZXhf
c3RyaW5nX3RvX29jdGV0X3N0cmluZyhyYXcsIGhleDEsIHN0cmxlbihoZXgxKSk7CisgICAgcHJp
bnRmKCJjb21wdXRlZCBsZW5ndGg6ICVkXHRzdHJpbmc6ICVzXG4iLCBsZW4sCisgICAgICAgICAg
IG9jdGV0X3N0cmluZ19oZXhfc3RyaW5nKHJhdywgbGVuIC8gMikpOworICAgIHByaW50ZigiZXhw
ZWN0ZWQgbGVuZ3RoOiAldVx0c3RyaW5nOiAlc1xuIiwgKHVuc2lnbmVkKXN0cmxlbihoZXgxKSwg
aGV4MSk7CisKKyAgICBsZW4gPSBoZXhfc3RyaW5nX3RvX29jdGV0X3N0cmluZyhyYXcsIGhleDIs
IHN0cmxlbihoZXgyKSk7CisgICAgcHJpbnRmKCJjb21wdXRlZCBsZW5ndGg6ICVkXHRzdHJpbmc6
ICVzXG4iLCBsZW4sCisgICAgICAgICAgIG9jdGV0X3N0cmluZ19oZXhfc3RyaW5nKHJhdywgbGVu
IC8gMikpOworICAgIHByaW50ZigiZXhwZWN0ZWQgbGVuZ3RoOiAlZFx0c3RyaW5nOiAlc1xuIiwg
MTYsICIwMTIzNDU2Nzg5YWJjZGVmIik7CiB9CiAKLXZvaWQKLXByaW50X3N0cmluZyhjaGFyICpz
KSB7Ci0gIHNpemVfdCBpOwotICBwcmludGYoIiVzXG4iLCBzKTsKLSAgcHJpbnRmKCJzdHJsZW4o
cykgPSAldVxuIiwgKHVuc2lnbmVkKXN0cmxlbihzKSk7Ci0gIHByaW50ZigieyAiKTsKLSAgZm9y
IChpPTA7IGkgPCBzdHJsZW4ocyk7IGkrKykgewotICAgIHByaW50ZigiMHgleCwgIiwgc1tpXSk7
Ci0gICAgaWYgKCgoaSsxKSAlIDgpID09IDApCi0gICAgICBwcmludGYoIlxuICAgIik7Ci0gIH0K
LSAgcHJpbnRmKCJ9XG4iKTsKK3ZvaWQgcHJpbnRfc3RyaW5nKGNoYXIgKnMpCit7CisgICAgc2l6
ZV90IGk7CisgICAgcHJpbnRmKCIlc1xuIiwgcyk7CisgICAgcHJpbnRmKCJzdHJsZW4ocykgPSAl
dVxuIiwgKHVuc2lnbmVkKXN0cmxlbihzKSk7CisgICAgcHJpbnRmKCJ7ICIpOworICAgIGZvciAo
aSA9IDA7IGkgPCBzdHJsZW4ocyk7IGkrKykgeworICAgICAgICBwcmludGYoIjB4JXgsICIsIHNb
aV0pOworICAgICAgICBpZiAoKChpICsgMSkgJSA4KSA9PSAwKQorICAgICAgICAgICAgcHJpbnRm
KCJcbiAgICIpOworICAgIH0KKyAgICBwcmludGYoIn1cbiIpOwogfQogCi12b2lkCi10ZXN0X2Jz
d2FwKHZvaWQpIHsKLSAgdWludDMyX3QgeCA9IDB4MTEyMjMzNDQ7Ci0gIHVpbnQ2NF90IHkgPSAw
eDExMjIzMzQ0NTU2Njc3ODhMTDsKK3ZvaWQgdGVzdF9ic3dhcCh2b2lkKQoreworICAgIHVpbnQz
Ml90IHggPSAweDExMjIzMzQ0OworICAgIHVpbnQ2NF90IHkgPSAweDExMjIzMzQ0NTU2Njc3ODhM
TDsKIAotICBwcmludGYoImJlZm9yZTogJTB4XG5hZnRlcjogICUweFxuIiwgeCwgKHVuc2lnbmVk
IGludCliZTMyX3RvX2NwdSh4KSk7Ci0gIHByaW50ZigiYmVmb3JlOiAlMGxseFxuYWZ0ZXI6ICAl
MGxseFxuIiwgKHVuc2lnbmVkIGxvbmcgbG9uZyl5LAotCSAodW5zaWduZWQgbG9uZyBsb25nKWJl
NjRfdG9fY3B1KHkpKTsKKyAgICBwcmludGYoImJlZm9yZTogJTB4XG5hZnRlcjogICUweFxuIiwg
eCwgKHVuc2lnbmVkIGludCliZTMyX3RvX2NwdSh4KSk7CisgICAgcHJpbnRmKCJiZWZvcmU6ICUw
bGx4XG5hZnRlcjogICUwbGx4XG4iLCAodW5zaWduZWQgbG9uZyBsb25nKXksCisgICAgICAgICAg
ICh1bnNpZ25lZCBsb25nIGxvbmcpYmU2NF90b19jcHUoeSkpOwogCi0gIHkgPSAxMjM0OworICAg
IHkgPSAxMjM0OwogCi0gIHByaW50ZigiMTIzNDogJTBsbHhcbiIsICh1bnNpZ25lZCBsb25nIGxv
bmcpeSk7Ci0gIHByaW50ZigiYXMgb2N0ZXQgc3RyaW5nOiAlc1xuIiwgCi0JIG9jdGV0X3N0cmlu
Z19oZXhfc3RyaW5nKCh1aW50OF90ICopICZ5LCA4KSk7Ci0gIHkgPSBiZTY0X3RvX2NwdSh5KTsK
LSAgcHJpbnRmKCJic3dhcHBlZCBvY3RldCBzdHJpbmc6ICVzXG4iLCAKLQkgb2N0ZXRfc3RyaW5n
X2hleF9zdHJpbmcoKHVpbnQ4X3QgKikgJnksIDgpKTsKKyAgICBwcmludGYoIjEyMzQ6ICUwbGx4
XG4iLCAodW5zaWduZWQgbG9uZyBsb25nKXkpOworICAgIHByaW50ZigiYXMgb2N0ZXQgc3RyaW5n
OiAlc1xuIiwgb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcoKHVpbnQ4X3QgKikmeSwgOCkpOworICAg
IHkgPSBiZTY0X3RvX2NwdSh5KTsKKyAgICBwcmludGYoImJzd2FwcGVkIG9jdGV0IHN0cmluZzog
JXNcbiIsCisgICAgICAgICAgIG9jdGV0X3N0cmluZ19oZXhfc3RyaW5nKCh1aW50OF90ICopJnks
IDgpKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlic3J0cC9jcnlwdG8vdGVzdC9rZXJuZWxfZHJpdmVyLmMgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvY3J5cHRvL3Rl
c3Qva2VybmVsX2RyaXZlci5jCmluZGV4IDkyYjcyNDAyNDk4YzUxNzQwMzlkZjYzMjFlMTE0OWEy
MTMzOTQxZWYuLmQyOTQwNWE5NzE3ZGEzNjFlODVhZTQ2YjkzYTY4OGI4N2UwZGM5MjggMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGli
c3J0cC9jcnlwdG8vdGVzdC9rZXJuZWxfZHJpdmVyLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2NyeXB0by90ZXN0L2tlcm5lbF9k
cml2ZXIuYwpAQCAtNywyNiArNywyNiBAQAogICogQ2lzY28gU3lzdGVtcywgSW5jLgogICovCiAv
KgotICoJCisgKgogICogQ29weXJpZ2h0KGMpIDIwMDEtMjAxNyBDaXNjbyBTeXN0ZW1zLCBJbmMu
CiAgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICogCisgKgogICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKICAqIGFyZSBtZXQ6Ci0gKiAKKyAqCiAgKiAgIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3Vy
Y2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CiAgKiAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIAor
ICoKICAqICAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZQogICogICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZwogICogICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFu
ZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQKICAqICAgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgotICogCisgKgogICogICBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBDaXNjbyBTeXN0ZW1zLCBJ
bmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCiAgKiAgIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0
byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZAogICogICBmcm9tIHRoaXMgc29m
dHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0gKiAKKyAq
CiAgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBB
TkQgQ09OVFJJQlVUT1JTCiAgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAogICogTElNSVRFRCBUTywgVEhFIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKQEAgLTQyLDc3ICs0Miw3
NiBAQAogICoKICAqLwogCi0KICNpZmRlZiBIQVZFX0NPTkZJR19ICi0gICAgI2luY2x1ZGUgPGNv
bmZpZy5oPgorI2luY2x1ZGUgPGNvbmZpZy5oPgogI2VuZGlmCiAKLSNpbmNsdWRlIDxzdGRpby5o
PiAgICAgICAgICAgLyogZm9yIHByaW50ZigpICovCisjaW5jbHVkZSA8c3RkaW8uaD4gLyogZm9y
IHByaW50ZigpICovCiAjaW5jbHVkZSAiZ2V0b3B0X3MuaCIKICNpbmNsdWRlICJjcnlwdG9fa2Vy
bmVsLmgiCiAKLXZvaWQKLXVzYWdlKGNoYXIgKnByb2dfbmFtZSkgewotICBwcmludGYoInVzYWdl
OiAlcyBbIC12IF1bIC1kIGRlYnVnX21vZHVsZSBdKlxuIiwgcHJvZ19uYW1lKTsKLSAgZXhpdCgy
NTUpOwordm9pZCB1c2FnZShjaGFyICpwcm9nX25hbWUpCit7CisgICAgcHJpbnRmKCJ1c2FnZTog
JXMgWyAtdiBdWyAtZCBkZWJ1Z19tb2R1bGUgXSpcbiIsIHByb2dfbmFtZSk7CisgICAgZXhpdCgy
NTUpOwogfQogCi1pbnQKLW1haW4gKGludCBhcmdjLCBjaGFyICphcmd2W10pIHsKLSAgaW50IHE7
Ci0gIGludCBkb192YWxpZGF0aW9uICAgICAgPSAwOwotICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0
dXM7CitpbnQgbWFpbihpbnQgYXJnYywgY2hhciAqYXJndltdKQoreworICAgIGludCBxOworICAg
IGludCBkb192YWxpZGF0aW9uID0gMDsKKyAgICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7CiAK
LSAgaWYgKGFyZ2MgPT0gMSkKLSAgICB1c2FnZShhcmd2WzBdKTsKKyAgICBpZiAoYXJnYyA9PSAx
KQorICAgICAgICB1c2FnZShhcmd2WzBdKTsKIAotICAvKiBpbml0aWFsaXplIGtlcm5lbCAtIHdl
IG5lZWQgdG8gZG8gdGhpcyBiZWZvcmUgYW55dGhpbmcgZWxzZSAqLyAKLSAgc3RhdHVzID0gc3J0
cF9jcnlwdG9fa2VybmVsX2luaXQoKTsKLSAgaWYgKHN0YXR1cykgewotICAgIHByaW50ZigiZXJy
b3I6IHNydHBfY3J5cHRvX2tlcm5lbCBpbml0IGZhaWxlZFxuIik7Ci0gICAgZXhpdCgxKTsKLSAg
fQotICBwcmludGYoInNydHBfY3J5cHRvX2tlcm5lbCBzdWNjZXNzZnVsbHkgaW5pdGFsaXplZFxu
Iik7CisgICAgLyogaW5pdGlhbGl6ZSBrZXJuZWwgLSB3ZSBuZWVkIHRvIGRvIHRoaXMgYmVmb3Jl
IGFueXRoaW5nIGVsc2UgKi8KKyAgICBzdGF0dXMgPSBzcnRwX2NyeXB0b19rZXJuZWxfaW5pdCgp
OworICAgIGlmIChzdGF0dXMpIHsKKyAgICAgICAgcHJpbnRmKCJlcnJvcjogc3J0cF9jcnlwdG9f
a2VybmVsIGluaXQgZmFpbGVkXG4iKTsKKyAgICAgICAgZXhpdCgxKTsKKyAgICB9CisgICAgcHJp
bnRmKCJzcnRwX2NyeXB0b19rZXJuZWwgc3VjY2Vzc2Z1bGx5IGluaXRhbGl6ZWRcbiIpOworCisg
ICAgLyogcHJvY2VzcyBpbnB1dCBhcmd1bWVudHMgKi8KKyAgICB3aGlsZSAoMSkgeworICAgICAg
ICBxID0gZ2V0b3B0X3MoYXJnYywgYXJndiwgInZkOiIpOworICAgICAgICBpZiAocSA9PSAtMSkK
KyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBzd2l0Y2ggKHEpIHsKKyAgICAgICAgY2FzZSAn
dic6CisgICAgICAgICAgICBkb192YWxpZGF0aW9uID0gMTsKKyAgICAgICAgICAgIGJyZWFrOwor
ICAgICAgICBjYXNlICdkJzoKKyAgICAgICAgICAgIHN0YXR1cyA9IHNydHBfY3J5cHRvX2tlcm5l
bF9zZXRfZGVidWdfbW9kdWxlKG9wdGFyZ19zLCAxKTsKKyAgICAgICAgICAgIGlmIChzdGF0dXMp
IHsKKyAgICAgICAgICAgICAgICBwcmludGYoImVycm9yOiBzZXQgZGVidWcgbW9kdWxlICglcykg
ZmFpbGVkXG4iLCBvcHRhcmdfcyk7CisgICAgICAgICAgICAgICAgZXhpdCgxKTsKKyAgICAgICAg
ICAgIH0KKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAg
dXNhZ2UoYXJndlswXSk7CisgICAgICAgIH0KKyAgICB9CiAKLSAgLyogcHJvY2VzcyBpbnB1dCBh
cmd1bWVudHMgKi8KLSAgd2hpbGUgKDEpIHsKLSAgICBxID0gZ2V0b3B0X3MoYXJnYywgYXJndiwg
InZkOiIpOwotICAgIGlmIChxID09IC0xKSAKLSAgICAgIGJyZWFrOwotICAgIHN3aXRjaCAocSkg
ewotICAgIGNhc2UgJ3YnOgotICAgICAgZG9fdmFsaWRhdGlvbiA9IDE7Ci0gICAgICBicmVhazsK
LSAgICBjYXNlICdkJzoKLSAgICAgIHN0YXR1cyA9IHNydHBfY3J5cHRvX2tlcm5lbF9zZXRfZGVi
dWdfbW9kdWxlKG9wdGFyZ19zLCAxKTsKLSAgICAgIGlmIChzdGF0dXMpIHsKLQlwcmludGYoImVy
cm9yOiBzZXQgZGVidWcgbW9kdWxlICglcykgZmFpbGVkXG4iLCBvcHRhcmdfcyk7Ci0JZXhpdCgx
KTsKLSAgICAgIH0KLSAgICAgIGJyZWFrOwotICAgIGRlZmF1bHQ6Ci0gICAgICB1c2FnZShhcmd2
WzBdKTsKLSAgICB9ICAgIAotICB9CisgICAgaWYgKGRvX3ZhbGlkYXRpb24pIHsKKyAgICAgICAg
cHJpbnRmKCJjaGVja2luZyBzcnRwX2NyeXB0b19rZXJuZWwgc3RhdHVzLi4uXG4iKTsKKyAgICAg
ICAgc3RhdHVzID0gc3J0cF9jcnlwdG9fa2VybmVsX3N0YXR1cygpOworICAgICAgICBpZiAoc3Rh
dHVzKSB7CisgICAgICAgICAgICBwcmludGYoImZhaWxlZFxuIik7CisgICAgICAgICAgICBleGl0
KDEpOworICAgICAgICB9CisgICAgICAgIHByaW50Zigic3J0cF9jcnlwdG9fa2VybmVsIHBhc3Nl
ZCBzZWxmLXRlc3RzXG4iKTsKKyAgICB9CiAKLSAgaWYgKGRvX3ZhbGlkYXRpb24pIHsKLSAgICBw
cmludGYoImNoZWNraW5nIHNydHBfY3J5cHRvX2tlcm5lbCBzdGF0dXMuLi5cbiIpOwotICAgIHN0
YXR1cyA9IHNydHBfY3J5cHRvX2tlcm5lbF9zdGF0dXMoKTsKKyAgICBzdGF0dXMgPSBzcnRwX2Ny
eXB0b19rZXJuZWxfc2h1dGRvd24oKTsKICAgICBpZiAoc3RhdHVzKSB7Ci0gICAgICBwcmludGYo
ImZhaWxlZFxuIik7Ci0gICAgICBleGl0KDEpOworICAgICAgICBwcmludGYoImVycm9yOiBzcnRw
X2NyeXB0b19rZXJuZWwgc2h1dGRvd24gZmFpbGVkXG4iKTsKKyAgICAgICAgZXhpdCgxKTsKICAg
ICB9Ci0gICAgcHJpbnRmKCJzcnRwX2NyeXB0b19rZXJuZWwgcGFzc2VkIHNlbGYtdGVzdHNcbiIp
OwotICB9CisgICAgcHJpbnRmKCJzcnRwX2NyeXB0b19rZXJuZWwgc3VjY2Vzc2Z1bGx5IHNodXQg
ZG93blxuIik7CiAKLSAgc3RhdHVzID0gc3J0cF9jcnlwdG9fa2VybmVsX3NodXRkb3duKCk7Ci0g
IGlmIChzdGF0dXMpIHsKLSAgICBwcmludGYoImVycm9yOiBzcnRwX2NyeXB0b19rZXJuZWwgc2h1
dGRvd24gZmFpbGVkXG4iKTsKLSAgICBleGl0KDEpOwotICB9Ci0gIHByaW50Zigic3J0cF9jcnlw
dG9fa2VybmVsIHN1Y2Nlc3NmdWxseSBzaHV0IGRvd25cbiIpOwotICAKLSAgcmV0dXJuIDA7Cisg
ICAgcmV0dXJuIDA7CiB9CiAKIC8qCkBAIC0xMjAsMTAgKzExOSw5IEBAIG1haW4gKGludCBhcmdj
LCBjaGFyICphcmd2W10pIHsKICAqIG9mIHRoZSBjcnlwdG9fa2VybmVsCiAgKi8KIAotc3J0cF9l
cnJfc3RhdHVzX3QKLWNyeXB0b19rZXJuZWxfY2lwaGVyX3Rlc3Qodm9pZCkgewotCi0gIC8qIG5v
dCBpbXBsZW1lbnRlZCB5ZXQhICovCitzcnRwX2Vycl9zdGF0dXNfdCBjcnlwdG9fa2VybmVsX2Np
cGhlcl90ZXN0KHZvaWQpCit7CisgICAgLyogbm90IGltcGxlbWVudGVkIHlldCEgKi8KIAotICBy
ZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOworICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7
CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L2xpYnNydHAvaW5jbHVkZS9la3QuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9pbmNsdWRlL2VrdC5oCmluZGV4IDg2YmZhMTdh
ZGY2OWViNDM5NjNiMTFlYjkzZDc0YTdmMzk3NDlmNGUuLmEyODlhNTNkYWJlNTFlY2MxMWM3M2Y4
ZGE2NmRiYzY4NjJjYTcyN2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9pbmNsdWRlL2VrdC5oCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9pbmNsdWRlL2Vr
dC5oCkBAIC03LDI2ICs3LDI2IEBACiAgKiBDaXNjbyBTeXN0ZW1zLCBJbmMuCiAgKi8KIC8qCi0g
KgkKKyAqCiAgKiBDb3B5cmlnaHQgKGMpIDIwMDEtMjAxNyBDaXNjbyBTeXN0ZW1zLCBJbmMuCiAg
KiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICogCisgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMKICAqIGFyZSBtZXQ6Ci0gKiAKKyAqCiAgKiAgIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CiAgKiAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIAorICoK
ICAqICAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZQogICogICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZwogICogICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQKICAqICAgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgot
ICogCisgKgogICogICBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBDaXNjbyBTeXN0ZW1zLCBJbmMu
IG5vciB0aGUgbmFtZXMgb2YgaXRzCiAgKiAgIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBl
bmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZAogICogICBmcm9tIHRoaXMgc29mdHdh
cmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0gKiAKKyAqCiAg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQg
Q09OVFJJQlVUT1JTCiAgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAogICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKQEAgLTQyLDE1ICs0MiwxMyBA
QAogICoKICAqLwogCi0KLQogLyoKLSAqIEVLVCBpbXBsZW1lbnRhdGlvbiBzdHJhdGVneSAKLSAq
IAorICogRUtUIGltcGxlbWVudGF0aW9uIHN0cmF0ZWd5CisgKgogICogdXNlIHN0cmVhbV90ZW1w
bGF0ZSBhcHByb2FjaAogICoKICAqIGluIHNydHBfdW5wcm90ZWN0LCB3aGVuIGEgbmV3IHN0cmVh
bSBhcHBlYXJzLCBjaGVjayBpZiB0ZW1wbGF0ZSBoYXMKLSAqIEVLVCBkZWZpbmVkLCBhbmQgaWYg
aXQgZG9lcywgdGhlbiBhcHBseSBFS1QgcHJvY2Vzc2luZyAKKyAqIEVLVCBkZWZpbmVkLCBhbmQg
aWYgaXQgZG9lcywgdGhlbiBhcHBseSBFS1QgcHJvY2Vzc2luZwogICoKICAqIHF1ZXN0aW9uOiB3
aWxsIHdlIHdhbnQgdG8gYWxsb3cga2V5LXNoYXJpbmcgdGVtcGxhdGVzIGluIGFkZGl0aW9uCiAg
KiB0byBFS1QgdGVtcGxhdGVzPyAgY291bGQgZGVmaW5lIGEgbmV3IHNzcmNfdHlwZV90IHRoYXQn
cyBhc3NvY2lhdGVkCkBAIC02OSwxNCArNjcsMTMgQEAKIGV4dGVybiAiQyIgewogI2VuZGlmCiAK
LSNkZWZpbmUgU1JUUF9FS1RfQ0lQSEVSX0RFRkFVTFQgICAgICAgICAgIDEKLSNkZWZpbmUgU1JU
UF9FS1RfQ0lQSEVSX0FFU18xMjhfRUNCICAgICAgIDEKLSNkZWZpbmUgU1JUUF9FS1RfQ0lQSEVS
X0FFU18xOTJfS0VZX1dSQVAgIDIKLSNkZWZpbmUgU1JUUF9FS1RfQ0lQSEVSX0FFU18yNTZfS0VZ
X1dSQVAgIDMKKyNkZWZpbmUgU1JUUF9FS1RfQ0lQSEVSX0RFRkFVTFQgMQorI2RlZmluZSBTUlRQ
X0VLVF9DSVBIRVJfQUVTXzEyOF9FQ0IgMQorI2RlZmluZSBTUlRQX0VLVF9DSVBIRVJfQUVTXzE5
Ml9LRVlfV1JBUCAyCisjZGVmaW5lIFNSVFBfRUtUX0NJUEhFUl9BRVNfMjU2X0tFWV9XUkFQIDMK
IAogdHlwZWRlZiB1aW50MTZfdCBzcnRwX2VrdF9zcGlfdDsKIAotCiB1bnNpZ25lZCBzcnRwX2Vr
dF9vY3RldHNfYWZ0ZXJfYmFzZV90YWcoc3J0cF9la3Rfc3RyZWFtX3QgZWt0KTsKIAogLyoKQEAg
LTg4LDI0ICs4NSwyMyBAQCB1bnNpZ25lZCBzcnRwX2VrdF9vY3RldHNfYWZ0ZXJfYmFzZV90YWco
c3J0cF9la3Rfc3RyZWFtX3QgZWt0KTsKICAqLwogCiB0eXBlZGVmIHN0cnVjdCBzcnRwX2VrdF9w
b2xpY3lfY3R4X3QgewotICBzcnRwX2VrdF9zcGlfdCAgc3BpOyAgICAgLyogc2VjdXJpdHkgcGFy
YW1ldGVyIGluZGV4ICovCi0gIHVpbnQ4X3QgICAgZWt0X2NpcGhlcl90eXBlOwotICB1aW50OF90
ICAgKmVrdF9rZXk7Ci0gIHN0cnVjdCBzcnRwX2VrdF9wb2xpY3lfY3R4X3QgKm5leHRfZWt0X3Bv
bGljeTsKKyAgICBzcnRwX2VrdF9zcGlfdCBzcGk7IC8qIHNlY3VyaXR5IHBhcmFtZXRlciBpbmRl
eCAqLworICAgIHVpbnQ4X3QgZWt0X2NpcGhlcl90eXBlOworICAgIHVpbnQ4X3QgKmVrdF9rZXk7
CisgICAgc3RydWN0IHNydHBfZWt0X3BvbGljeV9jdHhfdCAqbmV4dF9la3RfcG9saWN5OwogfSBz
cnRwX2VrdF9wb2xpY3lfY3R4X3Q7CiAKLQogLyoKICAqIGFuIHNydHBfZWt0X2RhdGFfdCBzdHJ1
Y3R1cmUgaG9sZHMgdGhlIGRhdGEgY29ycmVzcG9uZGluZyB0byBhbiBla3Qga2V5LAogICogc3Bp
LCBhbmQgc28gb24KICAqLwogCiB0eXBlZGVmIHN0cnVjdCBzcnRwX2VrdF9kYXRhX3QgewotICBz
cnRwX2VrdF9zcGlfdCBzcGk7Ci0gIHVpbnQ4X3QgZWt0X2NpcGhlcl90eXBlOwotICBzcnRwX2Fl
c19leHBhbmRlZF9rZXlfdCBla3RfZW5jX2tleTsKLSAgc3J0cF9hZXNfZXhwYW5kZWRfa2V5X3Qg
ZWt0X2RlY19rZXk7Ci0gIHN0cnVjdCBla3RfZGF0YV90ICpuZXh0X2VrdF9kYXRhOworICAgIHNy
dHBfZWt0X3NwaV90IHNwaTsKKyAgICB1aW50OF90IGVrdF9jaXBoZXJfdHlwZTsKKyAgICBzcnRw
X2Flc19leHBhbmRlZF9rZXlfdCBla3RfZW5jX2tleTsKKyAgICBzcnRwX2Flc19leHBhbmRlZF9r
ZXlfdCBla3RfZGVjX2tleTsKKyAgICBzdHJ1Y3QgZWt0X2RhdGFfdCAqbmV4dF9la3RfZGF0YTsK
IH0gc3J0cF9la3RfZGF0YV90OwogCiAvKgpAQCAtMTE2LDI1ICsxMTIsMzEgQEAgdHlwZWRlZiBz
dHJ1Y3Qgc3J0cF9la3RfZGF0YV90IHsKICAqLwogCiB0eXBlZGVmIHN0cnVjdCBzcnRwX2VrdF9z
dHJlYW1fY3R4X3QgewotICBzcnRwX2VrdF9kYXRhX3QgICAqZGF0YTsgICAgCi0gIHVpbnQxNl90
CSAgICBpc247ICAgICAvKiBpbml0aWFsIHNlcXVlbmNlIG51bWJlciAgKi8KLSAgdWludDhfdAkg
ICAgZW5jcnlwdGVkX21hc3Rlcl9rZXlbU1JUUF9NQVhfS0VZX0xFTl07CisgICAgc3J0cF9la3Rf
ZGF0YV90ICpkYXRhOworICAgIHVpbnQxNl90IGlzbjsgLyogaW5pdGlhbCBzZXF1ZW5jZSBudW1i
ZXIgICovCisgICAgdWludDhfdCBlbmNyeXB0ZWRfbWFzdGVyX2tleVtTUlRQX01BWF9LRVlfTEVO
XTsKIH0gc3J0cF9la3Rfc3RyZWFtX2N0eF90OwogCitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2Vr
dF9hbGxvYyhzcnRwX2VrdF9zdHJlYW1fdCAqc3RyZWFtX2RhdGEsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBzcnRwX2VrdF9wb2xpY3lfdCBwb2xpY3kpOwogCitzcnRwX2Vycl9z
dGF0dXNfdCBzcnRwX2VrdF9zdHJlYW1faW5pdChzcnRwX2VrdF9zdHJlYW1fdCBlLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF9la3Rfc3BpX3Qgc3BpLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdm9pZCAqZWt0X2tleSwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGVrdF9jaXBoZXJfdHlw
ZSk7CiAKLXNydHBfZXJyX3N0YXR1c190IHNydHBfZWt0X2FsbG9jKHNydHBfZWt0X3N0cmVhbV90
ICpzdHJlYW1fZGF0YSwgc3J0cF9la3RfcG9saWN5X3QgcG9saWN5KTsKLQotc3J0cF9lcnJfc3Rh
dHVzX3Qgc3J0cF9la3Rfc3RyZWFtX2luaXQoc3J0cF9la3Rfc3RyZWFtX3QgZSwgc3J0cF9la3Rf
c3BpX3Qgc3BpLCB2b2lkICpla3Rfa2V5LCB1bnNpZ25lZCBla3RfY2lwaGVyX3R5cGUpOwotCi1z
cnRwX2Vycl9zdGF0dXNfdCBzcnRwX2VrdF9zdHJlYW1faW5pdF9mcm9tX3BvbGljeShzcnRwX2Vr
dF9zdHJlYW1fdCBlLCBzcnRwX2VrdF9wb2xpY3lfdCBwKTsKLSAgCi0KK3NydHBfZXJyX3N0YXR1
c190IHNydHBfZWt0X3N0cmVhbV9pbml0X2Zyb21fcG9saWN5KHNydHBfZWt0X3N0cmVhbV90IGUs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcnRw
X2VrdF9wb2xpY3lfdCBwKTsKIAotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9zdHJlYW1faW5pdF9m
cm9tX2VrdChzcnRwX3N0cmVhbV90IHN0cmVhbSwgY29uc3Qgdm9pZCAqc3J0Y3BfaGRyLCB1bnNp
Z25lZCBwa3Rfb2N0ZXRfbGVuKTsKLQkJCitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3N0cmVhbV9p
bml0X2Zyb21fZWt0KHNydHBfc3RyZWFtX3Qgc3RyZWFtLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB2b2lkICpzcnRjcF9oZHIsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIHBrdF9vY3RldF9sZW4p
OwogCi12b2lkIHNydHBfZWt0X3dyaXRlX2RhdGEoc3J0cF9la3Rfc3RyZWFtX3QgZWt0LCB1aW50
OF90ICpiYXNlX3RhZywgdW5zaWduZWQgYmFzZV90YWdfbGVuLCBpbnQgKnBhY2tldF9sZW4sIHNy
dHBfeHRkX3NlcV9udW1fdCBwa3RfaW5kZXgpOwkJCit2b2lkIHNydHBfZWt0X3dyaXRlX2RhdGEo
c3J0cF9la3Rfc3RyZWFtX3QgZWt0LAorICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQ4X3Qg
KmJhc2VfdGFnLAorICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGJhc2VfdGFnX2xl
biwKKyAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgKnBhY2tldF9sZW4sCisgICAgICAgICAg
ICAgICAgICAgICAgICAgc3J0cF94dGRfc2VxX251bV90IHBrdF9pbmRleCk7CiAKIC8qCiAgKiBX
ZSBoYW5kbGUgRUtUIGJ5IHBlcmZvcm1pbmcgc29tZSBhZGRpdGlvbmFsIHN0ZXBzIGJlZm9yZQpA
QCAtMTQ0LDEwICsxNDYsMTMgQEAgdm9pZCBzcnRwX2VrdF93cml0ZV9kYXRhKHNydHBfZWt0X3N0
cmVhbV90IGVrdCwgdWludDhfdCAqYmFzZV90YWcsIHVuc2lnbmVkIGJhc2UKICAqIFdpdGggRUtU
LCB0aGUgdGFnX2xlbiBwYXJhbWV0ZXIgaXMgYWN0dWFsbHkgdGhlIGJhc2UgdGFnCiAgKiBsZW5n
dGgKICAqLwotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9la3RfdGFnX3ZlcmlmaWNhdGlvbl9wcmVw
cm9jZXModWludDhfdCAqcGt0X3RhZywgdWludDhfdCAqcGt0X3RhZ19jb3B5LCB1bnNpZ25lZCB0
YWdfbGVuKTsKLQotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9la3RfdGFnX3ZlcmlmaWNhdGlvbl9w
b3N0cHJvY2VzKHVpbnQ4X3QgKnBrdF90YWcsIHVpbnQ4X3QgKnBrdF90YWdfY29weSwgdW5zaWdu
ZWQgdGFnX2xlbik7CitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2VrdF90YWdfdmVyaWZpY2F0aW9u
X3ByZXByb2Nlcyh1aW50OF90ICpwa3RfdGFnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDhfdCAqcGt0X3RhZ19jb3B5LAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQg
dGFnX2xlbik7CiAKK3NydHBfZXJyX3N0YXR1c190IHNydHBfZWt0X3RhZ192ZXJpZmljYXRpb25f
cG9zdHByb2Nlcyh1aW50OF90ICpwa3RfdGFnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQ4X3QgKnBrdF90YWdfY29weSwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25l
ZCB0YWdfbGVuKTsKIAogLyoKICAqIEBicmllZiBFS1QgcHJlLXByb2Nlc3NpbmcgZm9yIHNydGNw
IHRhZyBnZW5lcmF0aW9uCkBAIC0xNTcsMTYgKzE2MiwxOCBAQCBzcnRwX2Vycl9zdGF0dXNfdCBz
cnRwX2VrdF90YWdfdmVyaWZpY2F0aW9uX3Bvc3Rwcm9jZXModWludDhfdCAqcGt0X3RhZywgdWlu
dDhfdAogICogTWFzdGVyIEtleSwgdGhlIFNSVFAgUk9DLCB0aGUgSW5pdGlhbCBTZXF1ZW5jZSBO
dW1iZXIsIGFuZCBTUEkKICAqIGZpZWxkcy4gIFRoZSBCYXNlIEF1dGhlbnRpY2F0aW9uIFRhZyBm
aWVsZCBpcyBzZXQgdG8gdGhlIGFsbC16ZXJvCiAgKiB2YWx1ZQotICogCisgKgogICogV2hlbiBF
S1QgaXMgbm90IHVzZWQsIHRoaXMgZnVuY3Rpb24gaXMgYSBuby1vcC4KLSAqIAorICoKICAqLwot
c3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9zdHJlYW1fc3J0Y3BfYXV0aF90YWdfZ2VuZXJhdGlvbl9w
cmVwcm9jZXNzKGNvbnN0IHNydHBfc3RyZWFtX3QgKnMsIHVpbnQ4X3QgKnBrdF90YWcsIHVuc2ln
bmVkIHBrdF9vY3RldF9sZW4pOworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9zdHJlYW1fc3J0Y3Bf
YXV0aF90YWdfZ2VuZXJhdGlvbl9wcmVwcm9jZXNzKAorICAgIGNvbnN0IHNydHBfc3RyZWFtX3Qg
KnMsCisgICAgdWludDhfdCAqcGt0X3RhZywKKyAgICB1bnNpZ25lZCBwa3Rfb2N0ZXRfbGVuKTsK
IAogLyogaXQncyBub3QgY2xlYXIgdGhhdCBhIHRhZ19nZW5lcmF0aW9uX3Bvc3Rwcm9jZXNzIGZ1
bmN0aW9uIGlzIG5lZWRlZCAqLwogc3J0cF9lcnJfc3RhdHVzX3Qgc3J0Y3BfYXV0aF90YWdfZ2Vu
ZXJhdGlvbl9wb3N0cHJvY2Vzcyh2b2lkKTsKIAotCiAjaWZkZWYgX19jcGx1c3BsdXMKIH0KICNl
bmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJzcnRwL2luY2x1ZGUvZ2V0b3B0X3MuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9pbmNsdWRlL2dldG9wdF9zLmgKaW5k
ZXggNjMyNzhlOTg1MDgzNWIxMDI3MTNjMGJjYTRmMmNiNzc3MzlhMmM4Zi4uNTNmYjI1YmE3MTAw
MjE5ZDM5ZTIyYmVmZWIzZDUwMzQwNDY5YzFkNSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2luY2x1ZGUvZ2V0b3B0X3Mu
aAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnNydHAvaW5jbHVkZS9nZXRvcHRfcy5oCkBAIC03LDI2ICs3LDI2IEBACiAgKgogICovCiAvKgot
ICoJCisgKgogICogQ29weXJpZ2h0IChjKSAyMDAxLTIwMTcgQ2lzY28gU3lzdGVtcywgSW5jLgog
ICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqIAorICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zCiAgKiBhcmUgbWV0OgotICogCisgKgogICogICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAogICogICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAKKyAq
CiAgKiAgIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUg
YWJvdmUKICAqICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcKICAqICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkCiAgKiAgIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4K
LSAqIAorICoKICAqICAgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgQ2lzY28gU3lzdGVtcywgSW5j
LiBub3IgdGhlIG5hbWVzIG9mIGl0cwogICogICBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8g
ZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQKICAqICAgZnJvbSB0aGlzIHNvZnR3
YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotICogCisgKgog
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5E
IENPTlRSSUJVVE9SUwogICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJS
QU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKICAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdB
UlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCkBAIC00OSwxNyArNDksMTYg
QEAKIGV4dGVybiAiQyIgewogI2VuZGlmCiAKLS8qIAorLyoKICAqIGdldG9wdF9zKCksIG9wdGFy
Z19zLCBhbmQgb3B0aW5kX3MgYXJlIHNtYWxsLCBsb2NhbGx5IGRlZmluZWQKICAqIHZlcnNpb25z
IG9mIHRoZSBQT1NJWCBzdGFuZGFyZCBnZXRvcHQoKSBpbnRlcmZhY2UuCiAgKi8KLSAKLWludAot
Z2V0b3B0X3MoaW50IGFyZ2MsIGNoYXIgKiBjb25zdCBhcmd2W10sIGNvbnN0IGNoYXIgKm9wdHN0
cmluZyk7CiAKLWV4dGVybiBjaGFyICpvcHRhcmdfczsgICAgLyogZGVmaW5lZCBpbiBnZXRvcHQu
YyAqLworaW50IGdldG9wdF9zKGludCBhcmdjLCBjaGFyICpjb25zdCBhcmd2W10sIGNvbnN0IGNo
YXIgKm9wdHN0cmluZyk7CisKK2V4dGVybiBjaGFyICpvcHRhcmdfczsgLyogZGVmaW5lZCBpbiBn
ZXRvcHQuYyAqLwogCi1leHRlcm4gaW50IG9wdGluZF9zOyAgICAgIC8qIGRlZmluZWQgaW4gZ2V0
b3B0LmMgKi8KK2V4dGVybiBpbnQgb3B0aW5kX3M7IC8qIGRlZmluZWQgaW4gZ2V0b3B0LmMgKi8K
IAogI2lmZGVmIF9fY3BsdXNwbHVzCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvaW5jbHVkZS9ydHAuaCBiL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9pbmNsdWRl
L3J0cC5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlNjlkZTI5YmIyZDFkNjQzNGI4
YjI5YWU3NzVhZDhjMmU0OGM1MzkxLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnNydHAvaW5jbHVkZS9ydHBfcHJpdi5oIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2luY2x1ZGUvcnRwX3ByaXYuaApk
ZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZTY5ZGUyOWJiMmQxZDY0MzRiOGIyOWFlNzc1
YWQ4YzJlNDhjNTM5MS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMApk
aWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9saWJzcnRwL2luY2x1ZGUvc3J0cC5oIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1Nv
dXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2luY2x1ZGUvc3J0cC5oCmluZGV4IDZkNDJmN2I1MmYw
ZDZlNjA1ZmFlOGRiNzMxNTZlMjY3MjA0OTY4YmEuLjFmZGQ2YzNhZmZkODM1Y2Q0MjIzZGQ5Y2Nj
Nzc3MDQ1Zjg4ZGJkN2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9pbmNsdWRlL3NydHAuaAorKysgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvaW5jbHVkZS9zcnRw
LmgKQEAgLTcsMjYgKzcsMjYgQEAKICAqIENpc2NvIFN5c3RlbXMsIEluYy4KICAqLwogLyoKLSAq
CQorICoKICAqIENvcHlyaWdodCAoYykgMjAwMS0yMDE3LCBDaXNjbyBTeXN0ZW1zLCBJbmMuCiAg
KiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICogCisgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMKICAqIGFyZSBtZXQ6Ci0gKiAKKyAqCiAgKiAgIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CiAgKiAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIAorICoK
ICAqICAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZQogICogICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZwogICogICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQKICAqICAgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgot
ICogCisgKgogICogICBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBDaXNjbyBTeXN0ZW1zLCBJbmMu
IG5vciB0aGUgbmFtZXMgb2YgaXRzCiAgKiAgIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBl
bmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZAogICogICBmcm9tIHRoaXMgc29mdHdh
cmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0gKiAKKyAqCiAg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQg
Q09OVFJJQlVUT1JTCiAgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAogICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKQEAgLTQyLDcgKzQyLDYgQEAK
ICAqCiAgKi8KIAotCiAjaWZuZGVmIFNSVFBfU1JUUF9ICiAjZGVmaW5lIFNSVFBfU1JUUF9ICiAK
QEAgLTcwLDEzICs2OSwxMyBAQCBleHRlcm4gIkMiIHsKIC8qCiAgKiBTUlRQX01BWF9LRVlfTEVO
IGlzIHRoZSBtYXhpbXVtIGtleSBsZW5ndGggc3VwcG9ydGVkIGJ5IGxpYlNSVFAKICAqLwotI2Rl
ZmluZSBTUlRQX01BWF9LRVlfTEVOICAgICAgNjQKKyNkZWZpbmUgU1JUUF9NQVhfS0VZX0xFTiA2
NAogCiAvKgogICogU1JUUF9NQVhfVEFHX0xFTiBpcyB0aGUgbWF4aW11bSB0YWcgbGVuZ3RoIHN1
cHBvcnRlZCBieSBsaWJTUlRQCiAgKi8KIAotI2RlZmluZSBTUlRQX01BWF9UQUdfTEVOIDE2IAor
I2RlZmluZSBTUlRQX01BWF9UQUdfTEVOIDE2CiAKIC8qKgogICogU1JUUF9NQVhfTUtJX0xFTiBp
cyB0aGUgbWF4aW11bSBzaXplIHRoZSBNS0kgY291bGQgYmUgd2hpY2ggaXMKQEAgLTg0LDcgKzgz
LDYgQEAgZXh0ZXJuICJDIiB7CiAgKi8KICNkZWZpbmUgU1JUUF9NQVhfTUtJX0xFTiAxMjgKIAot
CiAvKioKICAqIFNSVFBfTUFYX1RSQUlMRVJfTEVOIGlzIHRoZSBtYXhpbXVtIGxlbmd0aCBvZiB0
aGUgU1JUUCB0cmFpbGVyCiAgKiAoYXV0aGVudGljYXRpb24gdGFnIGFuZCBNS0kpIHN1cHBvcnRl
ZCBieSBsaWJTUlRQLiAgVGhpcyB2YWx1ZSBpcwpAQCAtOTcsMzIgKzk1LDM2IEBAIGV4dGVybiAi
QyIgewogCiAvKioKICAqIFNSVFBfTUFYX05VTV9NQVNURVJfS0VZUyBpcyB0aGUgbWF4aW11bSBu
dW1iZXIgb2YgTWFzdGVyIGtleXMgZm9yCi0gKiBNS0kgc3VwcG9ydGVkIGJ5IGxpYlNSVFAuICAK
LSAqICAKKyAqIE1LSSBzdXBwb3J0ZWQgYnkgbGliU1JUUC4KKyAqCiAgKi8KICNkZWZpbmUgU1JU
UF9NQVhfTlVNX01BU1RFUl9LRVlTIDE2CiAKLSNkZWZpbmUgU1JUUF9TQUxUX0xFTiAgICAgICAg
ICAgICAgICAxNAorI2RlZmluZSBTUlRQX1NBTFRfTEVOIDE0CisKIC8qCiAgKiBTUlRQX0FFQURf
U0FMVF9MRU4gaXMgdGhlIGxlbmd0aCBvZiB0aGUgU0FMVCB2YWx1ZXMgdXNlZCB3aXRoCiAgKiBH
Q00gbW9kZS4gIEdDTSBtb2RlIHJlcXVpcmVzIGFuIElWLiAgVGhlIFNBTFQgdmFsdWUgaXMgdXNl
ZAogICogYXMgcGFydCBvZiB0aGUgSVYgZm9ybWF0aW9uIGxvZ2ljIGFwcGxpZWQgdG8gZWFjaCBS
VFAgcGFja2V0LgogICovCi0jZGVmaW5lIFNSVFBfQUVBRF9TQUxUX0xFTiAgICAgICAgICAgICAg
IDEyCisjZGVmaW5lIFNSVFBfQUVBRF9TQUxUX0xFTiAxMgogCi0jZGVmaW5lIFNSVFBfQUVTXzEy
OF9LRVlfTEVOICAgICAgICAgMTYKLSNkZWZpbmUgU1JUUF9BRVNfMTkyX0tFWV9MRU4gICAgICAg
ICAyNAotI2RlZmluZSBTUlRQX0FFU18yNTZfS0VZX0xFTiAgICAgICAgIDMyCisjZGVmaW5lIFNS
VFBfQUVTXzEyOF9LRVlfTEVOIDE2CisjZGVmaW5lIFNSVFBfQUVTXzE5Ml9LRVlfTEVOIDI0Cisj
ZGVmaW5lIFNSVFBfQUVTXzI1Nl9LRVlfTEVOIDMyCiAKLSNkZWZpbmUgU1JUUF9BRVNfSUNNXzEy
OF9LRVlfTEVOX1dTQUxUICAgKFNSVFBfU0FMVF9MRU4gKyBTUlRQX0FFU18xMjhfS0VZX0xFTikK
LSNkZWZpbmUgU1JUUF9BRVNfSUNNXzE5Ml9LRVlfTEVOX1dTQUxUICAgKFNSVFBfU0FMVF9MRU4g
KyBTUlRQX0FFU18xOTJfS0VZX0xFTikKLSNkZWZpbmUgU1JUUF9BRVNfSUNNXzI1Nl9LRVlfTEVO
X1dTQUxUICAgKFNSVFBfU0FMVF9MRU4gKyBTUlRQX0FFU18yNTZfS0VZX0xFTikKKyNkZWZpbmUg
U1JUUF9BRVNfSUNNXzEyOF9LRVlfTEVOX1dTQUxUIChTUlRQX1NBTFRfTEVOICsgU1JUUF9BRVNf
MTI4X0tFWV9MRU4pCisjZGVmaW5lIFNSVFBfQUVTX0lDTV8xOTJfS0VZX0xFTl9XU0FMVCAoU1JU
UF9TQUxUX0xFTiArIFNSVFBfQUVTXzE5Ml9LRVlfTEVOKQorI2RlZmluZSBTUlRQX0FFU19JQ01f
MjU2X0tFWV9MRU5fV1NBTFQgKFNSVFBfU0FMVF9MRU4gKyBTUlRQX0FFU18yNTZfS0VZX0xFTikK
IAotI2RlZmluZSBTUlRQX0FFU19HQ01fMTI4X0tFWV9MRU5fV1NBTFQgICAoU1JUUF9BRUFEX1NB
TFRfTEVOICsgU1JUUF9BRVNfMTI4X0tFWV9MRU4pCi0jZGVmaW5lIFNSVFBfQUVTX0dDTV8xOTJf
S0VZX0xFTl9XU0FMVCAgIChTUlRQX0FFQURfU0FMVF9MRU4gKyBTUlRQX0FFU18xOTJfS0VZX0xF
TikKLSNkZWZpbmUgU1JUUF9BRVNfR0NNXzI1Nl9LRVlfTEVOX1dTQUxUICAgKFNSVFBfQUVBRF9T
QUxUX0xFTiArIFNSVFBfQUVTXzI1Nl9LRVlfTEVOKQorI2RlZmluZSBTUlRQX0FFU19HQ01fMTI4
X0tFWV9MRU5fV1NBTFQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwK
KyAgICAoU1JUUF9BRUFEX1NBTFRfTEVOICsgU1JUUF9BRVNfMTI4X0tFWV9MRU4pCisjZGVmaW5l
IFNSVFBfQUVTX0dDTV8xOTJfS0VZX0xFTl9XU0FMVCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgXAorICAgIChTUlRQX0FFQURfU0FMVF9MRU4gKyBTUlRQX0FFU18xOTJf
S0VZX0xFTikKKyNkZWZpbmUgU1JUUF9BRVNfR0NNXzI1Nl9LRVlfTEVOX1dTQUxUICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgKFNSVFBfQUVBRF9TQUxUX0xF
TiArIFNSVFBfQUVTXzI1Nl9LRVlfTEVOKQogCi0vKiogCisvKioKICAqICBAYnJpZWYgQSBzcnRw
X2NpcGhlcl90eXBlX2lkX3QgaXMgYW4gaWRlbnRpZmllciBmb3IgYSBwYXJ0aWN1bGFyIGNpcGhl
cgogICogIHR5cGUuCiAgKgpAQCAtMTMxLDEzICsxMzMsMTQgQEAgZXh0ZXJuICJDIiB7CiAgKiAg
U1JUUF9OVUxMX0NJUEhFUiBpcyBhdmFsaWFibGU7IHRoaXMgY2lwaGVyIGxlYXZlcyB0aGUgZGF0
YSB1bmNoYW5nZWQsCiAgKiAgYW5kIGNhbiBiZSBzZWxlY3RlZCB0byBpbmRpY2F0ZSB0aGF0IG5v
IGVuY3J5cHRpb24gaXMgdG8gdGFrZQogICogIHBsYWNlLgotICogCisgKgogICogIEBpbmdyb3Vw
IENpcGhlcnMKICAqLwotdHlwZWRlZiB1aW50MzJfdCBzcnRwX2NpcGhlcl90eXBlX2lkX3Q7IAor
dHlwZWRlZiB1aW50MzJfdCBzcnRwX2NpcGhlcl90eXBlX2lkX3Q7CiAKIC8qKgotICogIEBicmll
ZiBBbiBzcnRwX2F1dGhfdHlwZV9pZF90IGlzIGFuIGlkZW50aWZpZXIgZm9yIGEgcGFydGljdWxh
ciBhdXRoZW50aWNhdGlvbgorICogIEBicmllZiBBbiBzcnRwX2F1dGhfdHlwZV9pZF90IGlzIGFu
IGlkZW50aWZpZXIgZm9yIGEgcGFydGljdWxhcgorICogYXV0aGVudGljYXRpb24KICAqICAgZnVu
Y3Rpb24uCiAgKgogICogIEFuIHNydHBfYXV0aF90eXBlX2lkX3QgaXMgYW4gaW50ZWdlciB0aGF0
IHJlcHJlc2VudHMgYSBwYXJ0aWN1bGFyCkBAIC0xNDUsNyArMTQ4LDcgQEAgdHlwZWRlZiB1aW50
MzJfdCBzcnRwX2NpcGhlcl90eXBlX2lkX3Q7CiAgKiAgYXZhbGlhYmxlOyB0aGlzIGF1dGhlbnRp
Y2F0aW9uIGZ1bmN0aW9uIHBlcmZvcm1zIG5vIGNvbXB1dGF0aW9uLAogICogIGFuZCBjYW4gYmUg
c2VsZWN0ZWQgdG8gaW5kaWNhdGUgdGhhdCBubyBhdXRoZW50aWNhdGlvbiBpcyB0byB0YWtlCiAg
KiAgcGxhY2UuCi0gKiAgCisgKgogICogIEBpbmdyb3VwIEF1dGhlbnRpY2F0aW9uCiAgKi8KIHR5
cGVkZWYgdWludDMyX3Qgc3J0cF9hdXRoX3R5cGVfaWRfdDsKQEAgLTE1OSwxMjAgKzE2MiwxMTkg
QEAgdHlwZWRlZiB1aW50MzJfdCBzcnRwX2F1dGhfdHlwZV9pZF90OwogICoKICAqLwogdHlwZWRl
ZiBlbnVtIHsKLSAgc3J0cF9lcnJfc3RhdHVzX29rICAgICAgICAgICA9IDAsICAvKio8IG5vdGhp
bmcgdG8gcmVwb3J0ICAgICAgICAgICAgICAgICAgICAgICAqLwotICBzcnRwX2Vycl9zdGF0dXNf
ZmFpbCAgICAgICAgID0gMSwgIC8qKjwgdW5zcGVjaWZpZWQgZmFpbHVyZSAgICAgICAgICAgICAg
ICAgICAgICovCi0gIHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW0gICAgPSAyLCAgLyoqPCB1bnN1
cHBvcnRlZCBwYXJhbWV0ZXIgICAgICAgICAgICAgICAgICAgKi8KLSAgc3J0cF9lcnJfc3RhdHVz
X2FsbG9jX2ZhaWwgICA9IDMsICAvKio8IGNvdWxkbid0IGFsbG9jYXRlIG1lbW9yeSAgICAgICAg
ICAgICAgICAqLwotICBzcnRwX2Vycl9zdGF0dXNfZGVhbGxvY19mYWlsID0gNCwgIC8qKjwgY291
bGRuJ3QgZGVhbGxvY2F0ZSBwcm9wZXJseSAgICAgICAgICAgICovCi0gIHNydHBfZXJyX3N0YXR1
c19pbml0X2ZhaWwgICAgPSA1LCAgLyoqPCBjb3VsZG4ndCBpbml0aWFsaXplICAgICAgICAgICAg
ICAgICAgICAgKi8KLSAgc3J0cF9lcnJfc3RhdHVzX3Rlcm1pbnVzICAgICA9IDYsICAvKio8IGNh
bid0IHByb2Nlc3MgYXMgbXVjaCBkYXRhIGFzIHJlcXVlc3RlZCAqLwotICBzcnRwX2Vycl9zdGF0
dXNfYXV0aF9mYWlsICAgID0gNywgIC8qKjwgYXV0aGVudGljYXRpb24gZmFpbHVyZSAgICAgICAg
ICAgICAgICAgICovCi0gIHNydHBfZXJyX3N0YXR1c19jaXBoZXJfZmFpbCAgPSA4LCAgLyoqPCBj
aXBoZXIgZmFpbHVyZSAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgc3J0cF9lcnJfc3Rh
dHVzX3JlcGxheV9mYWlsICA9IDksICAvKio8IHJlcGxheSBjaGVjayBmYWlsZWQgKGJhZCBpbmRl
eCkgICAgICAgICAqLwotICBzcnRwX2Vycl9zdGF0dXNfcmVwbGF5X29sZCAgID0gMTAsIC8qKjwg
cmVwbGF5IGNoZWNrIGZhaWxlZCAoaW5kZXggdG9vIG9sZCkgICAgICovCi0gIHNydHBfZXJyX3N0
YXR1c19hbGdvX2ZhaWwgICAgPSAxMSwgLyoqPCBhbGdvcml0aG0gZmFpbGVkIHRlc3Qgcm91dGlu
ZSAgICAgICAgICAgKi8KLSAgc3J0cF9lcnJfc3RhdHVzX25vX3N1Y2hfb3AgICA9IDEyLCAvKio8
IHVuc3VwcG9ydGVkIG9wZXJhdGlvbiAgICAgICAgICAgICAgICAgICAqLwotICBzcnRwX2Vycl9z
dGF0dXNfbm9fY3R4ICAgICAgID0gMTMsIC8qKjwgbm8gYXBwcm9wcmlhdGUgY29udGV4dCBmb3Vu
ZCAgICAgICAgICAgICovCi0gIHNydHBfZXJyX3N0YXR1c19jYW50X2NoZWNrICAgPSAxNCwgLyoq
PCB1bmFibGUgdG8gcGVyZm9ybSBkZXNpcmVkIHZhbGlkYXRpb24gICAgKi8KLSAgc3J0cF9lcnJf
c3RhdHVzX2tleV9leHBpcmVkICA9IDE1LCAvKio8IGNhbid0IHVzZSBrZXkgYW55IG1vcmUgICAg
ICAgICAgICAgICAgICAqLwotICBzcnRwX2Vycl9zdGF0dXNfc29ja2V0X2VyciAgID0gMTYsIC8q
KjwgZXJyb3IgaW4gdXNlIG9mIHNvY2tldCAgICAgICAgICAgICAgICAgICovCi0gIHNydHBfZXJy
X3N0YXR1c19zaWduYWxfZXJyICAgPSAxNywgLyoqPCBlcnJvciBpbiB1c2UgUE9TSVggc2lnbmFs
cyAgICAgICAgICAgICAgKi8KLSAgc3J0cF9lcnJfc3RhdHVzX25vbmNlX2JhZCAgICA9IDE4LCAv
Kio8IG5vbmNlIGNoZWNrIGZhaWxlZCAgICAgICAgICAgICAgICAgICAgICAqLwotICBzcnRwX2Vy
cl9zdGF0dXNfcmVhZF9mYWlsICAgID0gMTksIC8qKjwgY291bGRuJ3QgcmVhZCBkYXRhICAgICAg
ICAgICAgICAgICAgICAgICovCi0gIHNydHBfZXJyX3N0YXR1c193cml0ZV9mYWlsICAgPSAyMCwg
LyoqPCBjb3VsZG4ndCB3cml0ZSBkYXRhICAgICAgICAgICAgICAgICAgICAgKi8KLSAgc3J0cF9l
cnJfc3RhdHVzX3BhcnNlX2VyciAgICA9IDIxLCAvKio8IGVycm9yIHBhcnNpbmcgZGF0YSAgICAg
ICAgICAgICAgICAgICAgICAqLwotICBzcnRwX2Vycl9zdGF0dXNfZW5jb2RlX2VyciAgID0gMjIs
IC8qKjwgZXJyb3IgZW5jb2RpbmcgZGF0YSAgICAgICAgICAgICAgICAgICAgICovCi0gIHNydHBf
ZXJyX3N0YXR1c19zZW1hcGhvcmVfZXJyID0gMjMsLyoqPCBlcnJvciB3aGlsZSB1c2luZyBzZW1h
cGhvcmVzICAgICAgICAgICAgKi8KLSAgc3J0cF9lcnJfc3RhdHVzX3Bma2V5X2VyciAgICA9IDI0
LCAvKio8IGVycm9yIHdoaWxlIHVzaW5nIHBma2V5ICAgICAgICAgICAgICAgICAqLwotICBzcnRw
X2Vycl9zdGF0dXNfYmFkX21raSAgICAgID0gMjUsIC8qKjwgZXJyb3IgTUtJIHByZXNlbnQgaW4g
cGFja2V0IGlzIGludmFsaWQgICovCi0gIHNydHBfZXJyX3N0YXR1c19wa3RfaWR4X29sZCAgPSAy
NiwgLyoqPCBwYWNrZXQgaW5kZXggaXMgdG9vIG9sZCB0byBjb25zaWRlciAgICAgKi8KLSAgc3J0
cF9lcnJfc3RhdHVzX3BrdF9pZHhfYWR2ICA9IDI3IC8qKjwgcGFja2V0IGluZGV4IGFkdmFuY2Vk
LCByZXNldCBuZWVkZWQgICAgICAqLworICAgIHNydHBfZXJyX3N0YXR1c19vayA9IDAsICAgICAg
ICAgICAgIC8qKjwgbm90aGluZyB0byByZXBvcnQgICAgICAgICAgICAgICAqLworICAgIHNydHBf
ZXJyX3N0YXR1c19mYWlsID0gMSwgICAgICAgICAgIC8qKjwgdW5zcGVjaWZpZWQgZmFpbHVyZSAg
ICAgICAgICAgICAqLworICAgIHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW0gPSAyLCAgICAgIC8q
KjwgdW5zdXBwb3J0ZWQgcGFyYW1ldGVyICAgICAgICAgICAqLworICAgIHNydHBfZXJyX3N0YXR1
c19hbGxvY19mYWlsID0gMywgICAgIC8qKjwgY291bGRuJ3QgYWxsb2NhdGUgbWVtb3J5ICAgICAg
ICAqLworICAgIHNydHBfZXJyX3N0YXR1c19kZWFsbG9jX2ZhaWwgPSA0LCAgIC8qKjwgY291bGRu
J3QgZGVhbGxvY2F0ZSBwcm9wZXJseSAgICAqLworICAgIHNydHBfZXJyX3N0YXR1c19pbml0X2Zh
aWwgPSA1LCAgICAgIC8qKjwgY291bGRuJ3QgaW5pdGlhbGl6ZSAgICAgICAgICAgICAqLworICAg
IHNydHBfZXJyX3N0YXR1c190ZXJtaW51cyA9IDYsICAgICAgIC8qKjwgY2FuJ3QgcHJvY2VzcyBh
cyBtdWNoIGRhdGEgYXMgICAqLworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8qKjwgcmVxdWVzdGVkICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIHNydHBfZXJy
X3N0YXR1c19hdXRoX2ZhaWwgPSA3LCAgICAgIC8qKjwgYXV0aGVudGljYXRpb24gZmFpbHVyZSAg
ICAgICAgICAqLworICAgIHNydHBfZXJyX3N0YXR1c19jaXBoZXJfZmFpbCA9IDgsICAgIC8qKjwg
Y2lwaGVyIGZhaWx1cmUgICAgICAgICAgICAgICAgICAqLworICAgIHNydHBfZXJyX3N0YXR1c19y
ZXBsYXlfZmFpbCA9IDksICAgIC8qKjwgcmVwbGF5IGNoZWNrIGZhaWxlZCAoYmFkIGluZGV4KSAq
LworICAgIHNydHBfZXJyX3N0YXR1c19yZXBsYXlfb2xkID0gMTAsICAgIC8qKjwgcmVwbGF5IGNo
ZWNrIGZhaWxlZCAoaW5kZXggdG9vICAqLworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qKjwgb2xkKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIHNy
dHBfZXJyX3N0YXR1c19hbGdvX2ZhaWwgPSAxMSwgICAgIC8qKjwgYWxnb3JpdGhtIGZhaWxlZCB0
ZXN0IHJvdXRpbmUgICAqLworICAgIHNydHBfZXJyX3N0YXR1c19ub19zdWNoX29wID0gMTIsICAg
IC8qKjwgdW5zdXBwb3J0ZWQgb3BlcmF0aW9uICAgICAgICAgICAqLworICAgIHNydHBfZXJyX3N0
YXR1c19ub19jdHggPSAxMywgICAgICAgIC8qKjwgbm8gYXBwcm9wcmlhdGUgY29udGV4dCBmb3Vu
ZCAgICAqLworICAgIHNydHBfZXJyX3N0YXR1c19jYW50X2NoZWNrID0gMTQsICAgIC8qKjwgdW5h
YmxlIHRvIHBlcmZvcm0gZGVzaXJlZCAgICAgICAqLworICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIC8qKjwgdmFsaWRhdGlvbiAgICAgICAgICAgICAgICAgICAgICAqLwor
ICAgIHNydHBfZXJyX3N0YXR1c19rZXlfZXhwaXJlZCA9IDE1LCAgIC8qKjwgY2FuJ3QgdXNlIGtl
eSBhbnkgbW9yZSAgICAgICAgICAqLworICAgIHNydHBfZXJyX3N0YXR1c19zb2NrZXRfZXJyID0g
MTYsICAgIC8qKjwgZXJyb3IgaW4gdXNlIG9mIHNvY2tldCAgICAgICAgICAqLworICAgIHNydHBf
ZXJyX3N0YXR1c19zaWduYWxfZXJyID0gMTcsICAgIC8qKjwgZXJyb3IgaW4gdXNlIFBPU0lYIHNp
Z25hbHMgICAgICAqLworICAgIHNydHBfZXJyX3N0YXR1c19ub25jZV9iYWQgPSAxOCwgICAgIC8q
Kjwgbm9uY2UgY2hlY2sgZmFpbGVkICAgICAgICAgICAgICAqLworICAgIHNydHBfZXJyX3N0YXR1
c19yZWFkX2ZhaWwgPSAxOSwgICAgIC8qKjwgY291bGRuJ3QgcmVhZCBkYXRhICAgICAgICAgICAg
ICAqLworICAgIHNydHBfZXJyX3N0YXR1c193cml0ZV9mYWlsID0gMjAsICAgIC8qKjwgY291bGRu
J3Qgd3JpdGUgZGF0YSAgICAgICAgICAgICAqLworICAgIHNydHBfZXJyX3N0YXR1c19wYXJzZV9l
cnIgPSAyMSwgICAgIC8qKjwgZXJyb3IgcGFyc2luZyBkYXRhICAgICAgICAgICAgICAqLworICAg
IHNydHBfZXJyX3N0YXR1c19lbmNvZGVfZXJyID0gMjIsICAgIC8qKjwgZXJyb3IgZW5jb2Rpbmcg
ZGF0YSAgICAgICAgICAgICAqLworICAgIHNydHBfZXJyX3N0YXR1c19zZW1hcGhvcmVfZXJyID0g
MjMsIC8qKjwgZXJyb3Igd2hpbGUgdXNpbmcgc2VtYXBob3JlcyAgICAqLworICAgIHNydHBfZXJy
X3N0YXR1c19wZmtleV9lcnIgPSAyNCwgICAgIC8qKjwgZXJyb3Igd2hpbGUgdXNpbmcgcGZrZXkg
ICAgICAgICAqLworICAgIHNydHBfZXJyX3N0YXR1c19iYWRfbWtpID0gMjUsICAgICAgIC8qKjwg
ZXJyb3IgTUtJIHByZXNlbnQgaW4gcGFja2V0IGlzICAqLworICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIC8qKjwgaW52YWxpZCAgICAgICAgICAgICAgICAgICAgICAgICAq
LworICAgIHNydHBfZXJyX3N0YXR1c19wa3RfaWR4X29sZCA9IDI2LCAgIC8qKjwgcGFja2V0IGlu
ZGV4IGlzIHRvbyBvbGQgdG8gICAgICAqLworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qKjwgY29uc2lkZXIgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIHNy
dHBfZXJyX3N0YXR1c19wa3RfaWR4X2FkdiA9IDI3ICAgIC8qKjwgcGFja2V0IGluZGV4IGFkdmFu
Y2VkLCByZXNldCAgICAqLworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IC8qKjwgbmVlZGVkICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogfSBzcnRwX2Vycl9zdGF0
dXNfdDsKIAotCiB0eXBlZGVmIHN0cnVjdCBzcnRwX2N0eF90XyBzcnRwX2N0eF90OwogCiAvKioK
LSAqIEBicmllZiBzcnRwX3NlY19zZXJ2X3QgZGVzY3JpYmVzIGEgc2V0IG9mIHNlY3VyaXR5IHNl
cnZpY2VzLiAKKyAqIEBicmllZiBzcnRwX3NlY19zZXJ2X3QgZGVzY3JpYmVzIGEgc2V0IG9mIHNl
Y3VyaXR5IHNlcnZpY2VzLgogICoKICAqIEEgc3J0cF9zZWNfc2Vydl90IGVudW1lcmF0aW9uIGlz
IHVzZWQgdG8gZGVzY3JpYmUgdGhlIHBhcnRpY3VsYXIKICAqIHNlY3VyaXR5IHNlcnZpY2VzIHRo
YXQgd2lsbCBiZSBhcHBsaWVkIGJ5IGEgcGFydGljdWxhciBjcnlwdG8KLSAqIHBvbGljeSAob3Ig
b3RoZXIgbWVjaGFuaXNtKS4gIAorICogcG9saWN5IChvciBvdGhlciBtZWNoYW5pc20pLgogICov
Ci0KIHR5cGVkZWYgZW51bSB7Ci0gIHNlY19zZXJ2X25vbmUgICAgICAgICAgPSAwLCAvKio8IG5v
IHNlcnZpY2VzICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgc2VjX3NlcnZfY29uZiAgICAg
ICAgICA9IDEsIC8qKjwgY29uZmlkZW50aWFsaXR5ICAgICAgICAgICAgICAgICAgICAqLwotICBz
ZWNfc2Vydl9hdXRoICAgICAgICAgID0gMiwgLyoqPCBhdXRoZW50aWNhdGlvbiAgICAgICAgICAg
ICAgICAgICAgICovCi0gIHNlY19zZXJ2X2NvbmZfYW5kX2F1dGggPSAzICAvKio8IGNvbmZpZGVu
dGlhbGl0eSBhbmQgYXV0aGVudGljYXRpb24gKi8KKyAgICBzZWNfc2Vydl9ub25lID0gMCwgICAg
ICAgICAvKio8IG5vIHNlcnZpY2VzICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBzZWNf
c2Vydl9jb25mID0gMSwgICAgICAgICAvKio8IGNvbmZpZGVudGlhbGl0eSAgICAgICAgICAgICAg
ICAgICAgKi8KKyAgICBzZWNfc2Vydl9hdXRoID0gMiwgICAgICAgICAvKio8IGF1dGhlbnRpY2F0
aW9uICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBzZWNfc2Vydl9jb25mX2FuZF9hdXRoID0g
MyAvKio8IGNvbmZpZGVudGlhbGl0eSBhbmQgYXV0aGVudGljYXRpb24gKi8KIH0gc3J0cF9zZWNf
c2Vydl90OwogCi0vKiogCisvKioKICAqIEBicmllZiBzcnRwX2NyeXB0b19wb2xpY3lfdCBkZXNj
cmliZXMgYSBwYXJ0aWN1bGFyIGNyeXB0byBwb2xpY3kgdGhhdAogICogY2FuIGJlIGFwcGxpZWQg
dG8gYW4gU1JUUCBzdHJlYW0uCiAgKgogICogQSBzcnRwX2NyeXB0b19wb2xpY3lfdCBkZXNjcmli
ZXMgYSBwYXJ0aWN1bGFyIGNyeXB0b2dyYXBoaWMgcG9saWN5IHRoYXQKICAqIGNhbiBiZSBhcHBs
aWVkIHRvIGFuIFNSVFAgb3IgU1JUQ1Agc3RyZWFtLiAgQW4gU1JUUCBzZXNzaW9uIHBvbGljeQot
ICogY29uc2lzdHMgb2YgYSBsaXN0IG9mIHRoZXNlIHBvbGljaWVzLCBvbmUgZm9yIGVhY2ggU1JU
UCBzdHJlYW0gCisgKiBjb25zaXN0cyBvZiBhIGxpc3Qgb2YgdGhlc2UgcG9saWNpZXMsIG9uZSBm
b3IgZWFjaCBTUlRQIHN0cmVhbQogICogaW4gdGhlIHNlc3Npb24uCiAgKi8KLQogdHlwZWRlZiBz
dHJ1Y3Qgc3J0cF9jcnlwdG9fcG9saWN5X3QgewotICBzcnRwX2NpcGhlcl90eXBlX2lkX3QgY2lw
aGVyX3R5cGU7ICAgIC8qKjwgQW4gaW50ZWdlciByZXByZXNlbnRpbmcKLQkJCQkgICAgICAgICAq
ICAgdGhlIHR5cGUgb2YgY2lwaGVyLiAgKi8KLSAgaW50ICAgICAgICAgICAgICBjaXBoZXJfa2V5
X2xlbjsgLyoqPCBUaGUgbGVuZ3RoIG9mIHRoZSBjaXBoZXIga2V5Ci0JCQkJICAgICogICBpbiBv
Y3RldHMuICAgICAgICAgICAgICAgICAgICAgICAqLwotICBzcnRwX2F1dGhfdHlwZV9pZF90ICAg
YXV0aF90eXBlOyAgICAgIC8qKjwgQW4gaW50ZWdlciByZXByZXNlbnRpbmcgdGhlCi0JCQkJICAg
ICAgICAgKiAgIGF1dGhlbnRpY2F0aW9uIGZ1bmN0aW9uLiAgICAgICAgICovCi0gIGludCAgICAg
ICAgICAgICAgYXV0aF9rZXlfbGVuOyAgIC8qKjwgVGhlIGxlbmd0aCBvZiB0aGUgYXV0aGVudGlj
YXRpb24gCi0JCQkJICAgICogICBmdW5jdGlvbiBrZXkgaW4gb2N0ZXRzLiAgICAgICAgICAqLwot
ICBpbnQgICAgICAgICAgICAgIGF1dGhfdGFnX2xlbjsgICAvKio8IFRoZSBsZW5ndGggb2YgdGhl
IGF1dGhlbnRpY2F0aW9uIAotCQkJCSAgICAqICAgdGFnIGluIG9jdGV0cy4gICAgICAgICAgICAg
ICAgICAgKi8KLSAgc3J0cF9zZWNfc2Vydl90ICBzZWNfc2VydjsgICAgICAgLyoqPCBUaGUgZmxh
ZyBpbmRpY2F0aW5nIHRoZSBzZWN1cml0eQotCQkJCSAgICAqICAgc2VydmljZXMgdG8gYmUgYXBw
bGllZC4gICAgICAgICAgKi8KKyAgICBzcnRwX2NpcGhlcl90eXBlX2lkX3QgY2lwaGVyX3R5cGU7
IC8qKjwgQW4gaW50ZWdlciByZXByZXNlbnRpbmcgICAgICAgICAgKi8KKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qKjwgdGhlIHR5cGUgb2YgY2lwaGVyLiAgICAgICAg
ICAgICAgKi8KKyAgICBpbnQgY2lwaGVyX2tleV9sZW47ICAgICAgICAgICAgICAgIC8qKjwgVGhl
IGxlbmd0aCBvZiB0aGUgY2lwaGVyIGtleSAgICAgKi8KKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIC8qKjwgaW4gb2N0ZXRzLiAgICAgICAgICAgICAgICAgICAgICAgKi8K
KyAgICBzcnRwX2F1dGhfdHlwZV9pZF90IGF1dGhfdHlwZTsgICAgIC8qKjwgQW4gaW50ZWdlciBy
ZXByZXNlbnRpbmcgdGhlICAgICAgKi8KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIC8qKjwgYXV0aGVudGljYXRpb24gZnVuY3Rpb24uICAgICAgICAgKi8KKyAgICBpbnQg
YXV0aF9rZXlfbGVuOyAgICAgICAgICAgICAgICAgIC8qKjwgVGhlIGxlbmd0aCBvZiB0aGUgYXV0
aGVudGljYXRpb24gKi8KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8q
KjwgZnVuY3Rpb24ga2V5IGluIG9jdGV0cy4gICAgICAgICAgKi8KKyAgICBpbnQgYXV0aF90YWdf
bGVuOyAgICAgICAgICAgICAgICAgIC8qKjwgVGhlIGxlbmd0aCBvZiB0aGUgYXV0aGVudGljYXRp
b24gKi8KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qKjwgdGFnIGlu
IG9jdGV0cy4gICAgICAgICAgICAgICAgICAgKi8KKyAgICBzcnRwX3NlY19zZXJ2X3Qgc2VjX3Nl
cnY7ICAgICAgICAgIC8qKjwgVGhlIGZsYWcgaW5kaWNhdGluZyB0aGUgc2VjdXJpdHkgKi8KKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qKjwgc2VydmljZXMgdG8gYmUg
YXBwbGllZC4gICAgICAgICAgKi8KIH0gc3J0cF9jcnlwdG9fcG9saWN5X3Q7CiAKLQotLyoqIAor
LyoqCiAgKiBAYnJpZWYgc3J0cF9zc3JjX3R5cGVfdCBkZXNjcmliZXMgdGhlIHR5cGUgb2YgYW4g
U1NSQy4KLSAqIAorICoKICAqIEFuIHNydHBfc3NyY190eXBlX3QgZW51bWVyYXRpb24gaXMgdXNl
ZCB0byBpbmRpY2F0ZSBhIHR5cGUgb2YgU1NSQy4gIFNlZQogICogQHJlZiBzcnRwX3BvbGljeV90
IGZvciBtb3JlIGluZm9ybWF0YWlvbi4KICAqLwotCi10eXBlZGVmIGVudW0geyAKLSAgc3NyY191
bmRlZmluZWQgICAgPSAwLCAgLyoqPCBJbmRpY2F0ZXMgYW4gdW5kZWZpbmVkIFNTUkMgdHlwZS4g
Ki8KLSAgc3NyY19zcGVjaWZpYyAgICAgPSAxLCAgLyoqPCBJbmRpY2F0ZXMgYSBzcGVjaWZpYyBT
U1JDIHZhbHVlICAgKi8KLSAgc3NyY19hbnlfaW5ib3VuZCAgPSAyLCAvKio8IEluZGljYXRlcyBh
bnkgaW5ib3VuZCBTU1JDIHZhbHVlIAotCQkJICAgIChpLmUuIGEgdmFsdWUgdGhhdCBpcyB1c2Vk
IGluIHRoZQotCQkJICAgIGZ1bmN0aW9uIHNydHBfdW5wcm90ZWN0KCkpICAgICAgICAgICAgICAq
LwotICBzc3JjX2FueV9vdXRib3VuZCA9IDMgIC8qKjwgSW5kaWNhdGVzIGFueSBvdXRib3VuZCBT
U1JDIHZhbHVlIAotCQkJICAgIChpLmUuIGEgdmFsdWUgdGhhdCBpcyB1c2VkIGluIHRoZSAKLQkJ
CSAgICBmdW5jdGlvbiBzcnRwX3Byb3RlY3QoKSkJCSAgKi8KK3R5cGVkZWYgZW51bSB7CisgICAg
c3NyY191bmRlZmluZWQgPSAwLCAgIC8qKjwgSW5kaWNhdGVzIGFuIHVuZGVmaW5lZCBTU1JDIHR5
cGUuICAgICovCisgICAgc3NyY19zcGVjaWZpYyA9IDEsICAgIC8qKjwgSW5kaWNhdGVzIGEgc3Bl
Y2lmaWMgU1NSQyB2YWx1ZSAgICAgICovCisgICAgc3NyY19hbnlfaW5ib3VuZCA9IDIsIC8qKjwg
SW5kaWNhdGVzIGFueSBpbmJvdW5kIFNTUkMgdmFsdWUgICAgICovCisgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qKjwgKGkuZS4gYSB2YWx1ZSB0aGF0IGlzIHVzZWQgaW4gdGhlICAgICovCisg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qKjwgZnVuY3Rpb24gc3J0cF91bnByb3RlY3QoKSkg
ICAgICAgICAgICovCisgICAgc3NyY19hbnlfb3V0Ym91bmQgPSAzIC8qKjwgSW5kaWNhdGVzIGFu
eSBvdXRib3VuZCBTU1JDIHZhbHVlICAgICovCisgICAgICAgICAgICAgICAgICAgICAgICAgIC8q
KjwgKGkuZS4gYSB2YWx1ZSB0aGF0IGlzIHVzZWQgaW4gdGhlICAgICovCisgICAgICAgICAgICAg
ICAgICAgICAgICAgIC8qKjwgZnVuY3Rpb24gc3J0cF9wcm90ZWN0KCkpICAgICAgICAgICAgICov
CiB9IHNydHBfc3NyY190eXBlX3Q7CiAKIC8qKgotICogQGJyaWVmIEFuIHNydHBfc3NyY190IHJl
cHJlc2VudHMgYSBwYXJ0aWN1bGFyIFNTUkMgdmFsdWUsIG9yIGEgYHdpbGRjYXJkJyBTU1JDLgot
ICogCisgKiBAYnJpZWYgQW4gc3J0cF9zc3JjX3QgcmVwcmVzZW50cyBhIHBhcnRpY3VsYXIgU1NS
QyB2YWx1ZSwgb3IgYSBgd2lsZGNhcmQnCisgKiBTU1JDLgorICoKICAqIEFuIHNydHBfc3NyY190
IHJlcHJlc2VudHMgYSBwYXJ0aWN1bGFyIFNTUkMgdmFsdWUgKGlmIGl0cyB0eXBlIGlzCiAgKiBz
c3JjX3NwZWNpZmljKSwgb3IgYSB3aWxkY2FyZCBTU1JDIHZhbHVlIHRoYXQgd2lsbCBtYXRjaCBh
bGwKICAqIG91dGJvdW5kIFNTUkNzIChpZiBpdHMgdHlwZSBpcyBzc3JjX2FueV9vdXRib3VuZCkg
b3IgYWxsIGluYm91bmQKLSAqIFNTUkNzIChpZiBpdHMgdHlwZSBpcyBzc3JjX2FueV9pbmJvdW5k
KS4gIAotICoKKyAqIFNTUkNzIChpZiBpdHMgdHlwZSBpcyBzc3JjX2FueV9pbmJvdW5kKS4KICAq
LwotCi10eXBlZGVmIHN0cnVjdCB7IAotICBzcnRwX3NzcmNfdHlwZV90IHR5cGU7ICAvKio8IFRo
ZSB0eXBlIG9mIHRoaXMgcGFydGljdWxhciBTU1JDICovCi0gIHVuc2lnbmVkIGludCAgICAgdmFs
dWU7IC8qKjwgVGhlIHZhbHVlIG9mIHRoaXMgU1NSQywgaWYgaXQgaXMgbm90IGEgd2lsZGNhcmQg
Ki8KK3R5cGVkZWYgc3RydWN0IHsKKyAgICBzcnRwX3NzcmNfdHlwZV90IHR5cGU7IC8qKjwgVGhl
IHR5cGUgb2YgdGhpcyBwYXJ0aWN1bGFyIFNTUkMgKi8KKyAgICB1bnNpZ25lZCBpbnQgdmFsdWU7
ICAgIC8qKjwgVGhlIHZhbHVlIG9mIHRoaXMgU1NSQywgaWYgaXQgaXMgbm90IGEgKi8KKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qKjwgd2lsZGNhcmQgKi8KIH0gc3J0cF9zc3JjX3Q7CiAK
LQogLyoqCiAgKiBAYnJpZWYgcG9pbnRzIHRvIGFuIEVLVCBwb2xpY3kKICAqLwogdHlwZWRlZiBz
dHJ1Y3Qgc3J0cF9la3RfcG9saWN5X2N0eF90ICpzcnRwX2VrdF9wb2xpY3lfdDsKIAotCiAvKioK
ICAqIEBicmllZiBwb2ludHMgdG8gRUtUIHN0cmVhbSBkYXRhCiAgKi8KQEAgLTI4NSwxMyArMjg3
LDEzIEBAIHR5cGVkZWYgc3RydWN0IHNydHBfZWt0X3N0cmVhbV9jdHhfdCAqc3J0cF9la3Rfc3Ry
ZWFtX3Q7CiAgKiBJbmRleCBTaXplIHRvIGNvcnJlY3RseSByZWFkIGl0IGZyb20gYSBwYWNrZXQu
CiAgKi8KIHR5cGVkZWYgc3RydWN0IHNydHBfbWFzdGVyX2tleV90IHsKLSAgdW5zaWduZWQgY2hh
ciAqa2V5OwotICB1bnNpZ25lZCBjaGFyICpta2lfaWQ7Ci0gIHVuc2lnbmVkIGludCBta2lfc2l6
ZTsKKyAgICB1bnNpZ25lZCBjaGFyICprZXk7CisgICAgdW5zaWduZWQgY2hhciAqbWtpX2lkOwor
ICAgIHVuc2lnbmVkIGludCBta2lfc2l6ZTsKIH0gc3J0cF9tYXN0ZXJfa2V5X3Q7CiAKLS8qKiAK
LSAqIEBicmllZiByZXByZXNlbnRzIHRoZSBwb2xpY3kgZm9yIGFuIFNSVFAgc2Vzc2lvbi4gIAor
LyoqCisgKiBAYnJpZWYgcmVwcmVzZW50cyB0aGUgcG9saWN5IGZvciBhbiBTUlRQIHNlc3Npb24u
CiAgKgogICogQSBzaW5nbGUgc3J0cF9wb2xpY3lfdCBzdHJ1Y3QgcmVwcmVzZW50cyB0aGUgcG9s
aWN5IGZvciBhIHNpbmdsZQogICogU1JUUCBzdHJlYW0sIGFuZCBhIGxpbmtlZCBsaXN0IG9mIHRo
ZXNlIGVsZW1lbnRzIHJlcHJlc2VudHMgdGhlCkBAIC0zMDAsNyArMzAyLDcgQEAgdHlwZWRlZiBz
dHJ1Y3Qgc3J0cF9tYXN0ZXJfa2V5X3QgewogICogbWFzdGVyIGtleSBmb3IgdGhhdCBzdHJlYW0s
IHRoZSBTU1JDIGRlc2NyaWJpbmcgdGhhdCBzdHJlYW0sIG9yIGEKICAqIGZsYWcgaW5kaWNhdGlu
ZyBhIGB3aWxkY2FyZCcgU1NSQyB2YWx1ZSwgYW5kIGEgYG5leHQnIGZpZWxkIHRoYXQKICAqIGhv
bGRzIGEgcG9pbnRlciB0byB0aGUgbmV4dCBlbGVtZW50IGluIHRoZSBsaXN0IG9mIHBvbGljeSBl
bGVtZW50cywKLSAqIG9yIE5VTEwgaWYgaXQgaXMgdGhlIGxhc3QgZWxlbWVudC4gCisgKiBvciBO
VUxMIGlmIGl0IGlzIHRoZSBsYXN0IGVsZW1lbnQuCiAgKgogICogVGhlIHdpbGRjYXJkIHZhbHVl
IFNTUkNfQU5ZX0lOQk9VTkQgbWF0Y2hlcyBhbnkgU1NSQyBmcm9tIGFuCiAgKiBpbmJvdW5kIHN0
cmVhbSB0aGF0IGZvciB3aGljaCB0aGVyZSBpcyBubyBleHBsaWNpdCBTU1JDIGVudHJ5IGluCkBA
IC0zMTEsNDcgKzMxMyw0NCBAQCB0eXBlZGVmIHN0cnVjdCBzcnRwX21hc3Rlcl9rZXlfdCB7CiAg
KiBpcyBpbnRlbnRpb25hbCwgYW5kIGl0IGFsbG93cyBsaWJTUlRQIHRvIGVuc3VyZSB0aGF0IG5v
IHNlY3VyaXR5CiAgKiBsYXBzZXMgcmVzdWx0IGZyb20gYWNjaWRlbnRhbCByZS11c2Ugb2YgU1NS
QyB2YWx1ZXMgZHVyaW5nIGtleQogICogc2hhcmluZy4KLSAqIAotICogCisgKgogICogQHdhcm5p
bmcgVGhlIGZpbmFsIGVsZW1lbnQgb2YgdGhlIGxpc3QgQGIgbXVzdCBoYXZlIGl0cyBgbmV4dCcg
cG9pbnRlcgogICogICAgICAgICAgc2V0IHRvIE5VTEwuCiAgKi8KIAogdHlwZWRlZiBzdHJ1Y3Qg
c3J0cF9wb2xpY3lfdCB7Ci0gIHNydHBfc3NyY190ICAgc3NyYzsgICAgICAgIC8qKjwgVGhlIFNT
UkMgdmFsdWUgb2Ygc3RyZWFtLCBvciB0aGUgCi0JCQkgICAgICAqICAgZmxhZ3MgU1NSQ19BTllf
SU5CT1VORCBvciAKLQkJCSAgICAgICogICBTU1JDX0FOWV9PVVRCT1VORCBpZiBrZXkgc2hhcmlu
ZwotCQkJICAgICAgKiAgIGlzIHVzZWQgZm9yIHRoaXMgcG9saWN5IGVsZW1lbnQuCi0JCQkgICAg
ICAqLwotICBzcnRwX2NyeXB0b19wb2xpY3lfdCBydHA7ICAgIC8qKjwgU1JUUCBjcnlwdG8gcG9s
aWN5LiAgICAgICAgICAgICAgICAgICovCi0gIHNydHBfY3J5cHRvX3BvbGljeV90IHJ0Y3A7ICAg
LyoqPCBTUlRDUCBjcnlwdG8gcG9saWN5LiAgICAgICAgICAgICAgICAgKi8KLSAgdW5zaWduZWQg
Y2hhciAqa2V5OyAgICAgICAgICAvKio8IFBvaW50ZXIgdG8gdGhlIFNSVFAgbWFzdGVyIGtleSBm
b3IKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKiAgICB0aGlzIHN0cmVhbS4gICAg
ICAgICAgICAgICAgICAgICAgICAqLwotICBzcnRwX21hc3Rlcl9rZXlfdCAqKmtleXM7ICAgIC8q
KiBBcnJheSBvZiBNYXN0ZXIgS2V5IHN0cnVjdHVyZXMgKi8KLSAgdW5zaWduZWQgbG9uZyBudW1f
bWFzdGVyX2tleXM7ICAvKiogTnVtYmVyIG9mIG1hc3RlciBrZXlzICAgICAgICAgICAgKi8KLSAg
c3J0cF9la3RfcG9saWN5X3QgZWt0OyAgICAgICAvKio8IFBvaW50ZXIgdG8gdGhlIEVLVCBwb2xp
Y3kgc3RydWN0dXJlCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICogICBmb3IgdGhp
cyBzdHJlYW0gKGlmIGFueSkgICAgICAgICAgICAgKi8gCi0gIHVuc2lnbmVkIGxvbmcgd2luZG93
X3NpemU7ICAgLyoqPCBUaGUgd2luZG93IHNpemUgdG8gdXNlIGZvciByZXBsYXkKLQkJCQkqICAg
cHJvdGVjdGlvbi4gKi8KLSAgaW50ICAgICAgICBhbGxvd19yZXBlYXRfdHg7ICAvKio8IFdoZXRo
ZXIgcmV0cmFuc21pc3Npb25zIG9mCi0JCQkJKiAgIHBhY2tldHMgd2l0aCB0aGUgc2FtZSBzZXF1
ZW5jZSBudW1iZXIKLQkJCQkqICAgYXJlIGFsbG93ZWQuICAoTm90ZSB0aGF0IHN1Y2ggcmVwZWF0
ZWQKLQkJCQkqICAgdHJhbnNtaXNzaW9ucyBtdXN0IGhhdmUgdGhlIHNhbWUgUlRQCi0JCQkJKiAg
IHBheWxvYWQsIG9yIGEgc2V2ZXJlIHNlY3VyaXR5IHdlYWtuZXNzCi0JCQkJKiAgIGlzIGludHJv
ZHVjZWQhKSAgICAgICAgICAgICAgICAgICAgICAqLwotICBpbnQgKmVuY194dG5faGRyOyAgICAg
ICAgICAgIC8qKjwgTGlzdCBvZiBoZWFkZXIgaWRzIHRvIGVuY3J5cHQuICAgICAgICovCi0gIGlu
dCBlbmNfeHRuX2hkcl9jb3VudDsgICAgICAgLyoqPCBOdW1iZXIgb2YgZW50cmllcyBpbiBsaXN0
IG9mIGhlYWRlciBpZHMuICovCi0gIHN0cnVjdCBzcnRwX3BvbGljeV90ICpuZXh0OyAgLyoqPCBQ
b2ludGVyIHRvIG5leHQgc3RyZWFtIHBvbGljeS4gICAgICAgKi8KKyAgICBzcnRwX3NzcmNfdCBz
c3JjOyAgICAgICAgICAgICAgLyoqPCBUaGUgU1NSQyB2YWx1ZSBvZiBzdHJlYW0sIG9yIHRoZSAg
ICAqLworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKio8IGZsYWdzIFNTUkNf
QU5ZX0lOQk9VTkQgb3IgICAgICAgICAgICovCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIC8qKjwgU1NSQ19BTllfT1VUQk9VTkQgaWYga2V5IHNoYXJpbmcgICAgKi8KKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyoqPCBpcyB1c2VkIGZvciB0aGlzIHBvbGlj
eSBlbGVtZW50LiAgICAqLworICAgIHNydHBfY3J5cHRvX3BvbGljeV90IHJ0cDsgICAgICAvKio8
IFNSVFAgY3J5cHRvIHBvbGljeS4gICAgICAgICAgICAgICAgICovCisgICAgc3J0cF9jcnlwdG9f
cG9saWN5X3QgcnRjcDsgICAgIC8qKjwgU1JUQ1AgY3J5cHRvIHBvbGljeS4gICAgICAgICAgICAg
ICAgKi8KKyAgICB1bnNpZ25lZCBjaGFyICprZXk7ICAgICAgICAgICAgLyoqPCBQb2ludGVyIHRv
IHRoZSBTUlRQIG1hc3RlciBrZXkgZm9yICAqLworICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAvKio8IHRoaXMgc3RyZWFtLiAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAg
c3J0cF9tYXN0ZXJfa2V5X3QgKiprZXlzOyAgICAgIC8qKiBBcnJheSBvZiBNYXN0ZXIgS2V5IHN0
cnVjdHVyZXMgICAgICAgKi8KKyAgICB1bnNpZ25lZCBsb25nIG51bV9tYXN0ZXJfa2V5czsgLyoq
IE51bWJlciBvZiBtYXN0ZXIga2V5cyAgICAgICAgICAgICAgICAqLworICAgIHNydHBfZWt0X3Bv
bGljeV90IGVrdDsgICAgICAgICAvKio8IFBvaW50ZXIgdG8gdGhlIEVLVCBwb2xpY3kgc3RydWN0
dXJlICovCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qKjwgZm9yIHRoaXMg
c3RyZWFtIChpZiBhbnkpICAgICAgICAgICAgKi8KKyAgICB1bnNpZ25lZCBsb25nIHdpbmRvd19z
aXplOyAgICAgLyoqPCBUaGUgd2luZG93IHNpemUgdG8gdXNlIGZvciByZXBsYXkgICAqLworICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKio8IHByb3RlY3Rpb24uICAgICAgICAg
ICAgICAgICAgICAgICAgICovCisgICAgaW50IGFsbG93X3JlcGVhdF90eDsgICAgICAgICAgIC8q
KjwgV2hldGhlciByZXRyYW5zbWlzc2lvbnMgb2YgICAgICAgICAgKi8KKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgLyoqPCBwYWNrZXRzIHdpdGggdGhlIHNhbWUgc2VxdWVuY2Ug
ICAgICAqLworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKio8IG51bWJlciBh
cmUgYWxsb3dlZC4gICAgICAgICAgICAgICAgICovCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIC8qKjwgKE5vdGUgdGhhdCBzdWNoIHJlcGVhdGVkICAgICAgICAgICAgKi8KKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyoqPCB0cmFuc21pc3Npb25zIG11c3Qg
aGF2ZSB0aGUgc2FtZSAgICAqLworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAv
Kio8IFJUUCBwYXlsb2FkLCBvciBhIHNldmVyZSBzZWN1cml0eSAgICovCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIC8qKjwgd2Vha25lc3MgaXMgaW50cm9kdWNlZCEpICAgICAg
ICAgICAgKi8KKyAgICBpbnQgKmVuY194dG5faGRyOyAgICAgICAgICAgICAgLyoqPCBMaXN0IG9m
IGhlYWRlciBpZHMgdG8gZW5jcnlwdC4gICAgICAqLworICAgIGludCBlbmNfeHRuX2hkcl9jb3Vu
dDsgICAgICAgICAvKio8IE51bWJlciBvZiBlbnRyaWVzIGluIGxpc3Qgb2YgaGVhZGVyICovCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qKjwgIGlkcy4gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKi8KKyAgICBzdHJ1Y3Qgc3J0cF9wb2xpY3lfdCAqbmV4dDsgICAg
LyoqPCBQb2ludGVyIHRvIG5leHQgc3RyZWFtIHBvbGljeS4gICAgICAqLwogfSBzcnRwX3BvbGlj
eV90OwogCi0KLQotCiAvKioKICAqIEBicmllZiBBbiBzcnRwX3QgcG9pbnRzIHRvIGFuIFNSVFAg
c2Vzc2lvbiBzdHJ1Y3R1cmUuCiAgKgogICogVGhlIHR5cGVkZWYgc3J0cF90IGlzIGEgcG9pbnRl
ciB0byBhIHN0cnVjdHVyZSB0aGF0IHJlcHJlc2VudHMKLSAqIGFuIFNSVFAgc2Vzc2lvbi4gIFRo
aXMgZGF0YXR5cGUgaXMgaW50ZW50aWFsbHkgb3BhcXVlIGluIAorICogYW4gU1JUUCBzZXNzaW9u
LiAgVGhpcyBkYXRhdHlwZSBpcyBpbnRlbnRpYWxseSBvcGFxdWUgaW4KICAqIG9yZGVyIHRvIHNl
cGFyYXRlIHRoZSBpbnRlcmZhY2UgZnJvbSB0aGUgaW1wbGVtZW50YXRpb24uCiAgKgogICogQW4g
U1JUUCBzZXNzaW9uIGNvbnNpc3RzIG9mIGFsbCBvZiB0aGUgdHJhZmZpYyBzZW50IHRvIHRoZSBS
VFAgYW5kCkBAIC0zNTksMTcgKzM1OCwxNCBAQCB0eXBlZGVmIHN0cnVjdCBzcnRwX3BvbGljeV90
IHsKICAqIEF1ZGlvL1ZpZGVvIFByb2ZpbGUpLiAgQSBzZXNzaW9uIGNhbiBiZSB2aWV3ZWQgYXMg
YSBzZXQgb2YgU1JUUAogICogc3RyZWFtcywgZWFjaCBvZiB3aGljaCBvcmlnaW5hdGVzIHdpdGgg
YSBkaWZmZXJlbnQgcGFydGljaXBhbnQuCiAgKi8KLQogdHlwZWRlZiBzcnRwX2N0eF90ICpzcnRw
X3Q7CiAKLQogLyoqCi0gKiBAYnJpZWYgc3J0cF9pbml0KCkgaW5pdGlhbGl6ZXMgdGhlIHNydHAg
bGlicmFyeS4gIAorICogQGJyaWVmIHNydHBfaW5pdCgpIGluaXRpYWxpemVzIHRoZSBzcnRwIGxp
YnJhcnkuCiAgKgogICogQHdhcm5pbmcgVGhpcyBmdW5jdGlvbiBAYiBtdXN0IGJlIGNhbGxlZCBi
ZWZvcmUgYW55IG90aGVyIHNydHAKICAqIGZ1bmN0aW9ucy4KICAqLwotCiBzcnRwX2Vycl9zdGF0
dXNfdCBzcnRwX2luaXQodm9pZCk7CiAKIC8qKgpAQCAtMzc3LDIwICszNzMsMTkgQEAgc3J0cF9l
cnJfc3RhdHVzX3Qgc3J0cF9pbml0KHZvaWQpOwogICoKICAqIEB3YXJuaW5nIE5vIHNydHAgZnVu
Y3Rpb25zIG1heSBiZSBjYWxsZWQgYWZ0ZXIgY2FsbGluZyB0aGlzIGZ1bmN0aW9uLgogICovCi0K
IHNydHBfZXJyX3N0YXR1c190IHNydHBfc2h1dGRvd24odm9pZCk7CiAKIC8qKgogICogQGJyaWVm
IHNydHBfcHJvdGVjdCgpIGlzIHRoZSBTZWN1cmUgUlRQIHNlbmRlci1zaWRlIHBhY2tldCBwcm9j
ZXNzaW5nCiAgKiBmdW5jdGlvbi4KLSAqIAorICoKICAqIFRoZSBmdW5jdGlvbiBjYWxsIHNydHBf
cHJvdGVjdChjdHgsIHJ0cF9oZHIsIGxlbl9wdHIpIGFwcGxpZXMgU1JUUAogICogcHJvdGVjdGlv
biB0byB0aGUgUlRQIHBhY2tldCBydHBfaGRyICh3aGljaCBoYXMgbGVuZ3RoICpsZW5fcHRyKSB1
c2luZwogICogdGhlIFNSVFAgY29udGV4dCBjdHguICBJZiBzcnRwX2Vycl9zdGF0dXNfb2sgaXMg
cmV0dXJuZWQsIHRoZW4gcnRwX2hkcgogICogcG9pbnRzIHRvIHRoZSByZXN1bHRpbmcgU1JUUCBw
YWNrZXQgYW5kICpsZW5fcHRyIGlzIHRoZSBudW1iZXIgb2YKICAqIG9jdGV0cyBpbiB0aGF0IHBh
Y2tldDsgb3RoZXJ3aXNlLCBubyBhc3N1bXB0aW9ucyBzaG91bGQgYmUgbWFkZQogICogYWJvdXQg
dGhlIHZhbHVlIG9mIGVpdGhlciBkYXRhIGVsZW1lbnRzLgotICogCisgKgogICogVGhlIHNlcXVl
bmNlIG51bWJlcnMgb2YgdGhlIFJUUCBwYWNrZXRzIHByZXNlbnRlZCB0byB0aGlzIGZ1bmN0aW9u
CiAgKiBuZWVkIG5vdCBiZSBjb25zZWN1dGl2ZSwgYnV0IHRoZXkgQGIgbXVzdCBiZSBvdXQgb2Yg
b3JkZXIgYnkgbGVzcwogICogdGhhbiAyXjE1ID0gMzIsNzY4IHBhY2tldHMuCkBAIC00MDAsMTEg
KzM5NSwxMSBAQCBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3NodXRkb3duKHZvaWQpOwogICogcGFj
a2V0LCBhbmQgYXNzdW1lcyB0aGF0IHRoZSBSVFAgcGFja2V0IGlzIGFsaWduZWQgb24gYSAzMi1i
aXQKICAqIGJvdW5kYXJ5LgogICoKLSAqIEB3YXJuaW5nIFRoaXMgZnVuY3Rpb24gYXNzdW1lcyB0
aGF0IGl0IGNhbiB3cml0ZSBTUlRQX01BWF9UUkFJTEVSX0xFTiAKLSAqIGludG8gdGhlIGxvY2F0
aW9uIGluIG1lbW9yeSBpbW1lZGlhdGVseSBmb2xsb3dpbmcgdGhlIFJUUCBwYWNrZXQuICAgCi0g
KiBDYWxsZXJzIE1VU1QgZW5zdXJlIHRoYXQgdGhpcyBtdWNoIHdyaXRhYmxlIG1lbW9yeSBpcyBh
dmFpbGFibGUgaW4gCisgKiBAd2FybmluZyBUaGlzIGZ1bmN0aW9uIGFzc3VtZXMgdGhhdCBpdCBj
YW4gd3JpdGUgU1JUUF9NQVhfVFJBSUxFUl9MRU4KKyAqIGludG8gdGhlIGxvY2F0aW9uIGluIG1l
bW9yeSBpbW1lZGlhdGVseSBmb2xsb3dpbmcgdGhlIFJUUCBwYWNrZXQuCisgKiBDYWxsZXJzIE1V
U1QgZW5zdXJlIHRoYXQgdGhpcyBtdWNoIHdyaXRhYmxlIG1lbW9yeSBpcyBhdmFpbGFibGUgaW4K
ICAqIHRoZSBidWZmZXIgdGhhdCBob2xkcyB0aGUgUlRQIHBhY2tldC4KLSAqIAorICoKICAqIEBw
YXJhbSBjdHggaXMgdGhlIFNSVFAgY29udGV4dCB0byB1c2UgaW4gcHJvY2Vzc2luZyB0aGUgcGFj
a2V0LgogICoKICAqIEBwYXJhbSBydHBfaGRyIGlzIGEgcG9pbnRlciB0byB0aGUgUlRQIHBhY2tl
dCAoYmVmb3JlIHRoZSBjYWxsKTsgYWZ0ZXIKQEAgLTQxNSwyNSArNDEwLDI0IEBAIHNydHBfZXJy
X3N0YXR1c190IHNydHBfc2h1dGRvd24odm9pZCk7CiAgKiBjb21wbGV0ZSBTUlRQIHBhY2tldCBh
ZnRlciB0aGUgY2FsbCwgaWYgc3J0cF9lcnJfc3RhdHVzX29rIHdhcyByZXR1cm5lZC4KICAqIE90
aGVyd2lzZSwgdGhlIHZhbHVlIG9mIHRoZSBkYXRhIHRvIHdoaWNoIGl0IHBvaW50cyBpcyB1bmRl
ZmluZWQuCiAgKgotICogQHJldHVybiAKKyAqIEByZXR1cm4KICAqICAgIC0gc3J0cF9lcnJfc3Rh
dHVzX29rICAgICAgICAgICAgbm8gcHJvYmxlbXMKICAqICAgIC0gc3J0cF9lcnJfc3RhdHVzX3Jl
cGxheV9mYWlsICAgcnRwIHNlcXVlbmNlIG51bWJlciB3YXMgbm9uLWluY3JlYXNpbmcKICAqICAg
IC0gQGUgb3RoZXIgICAgICAgICAgICAgICAgIGZhaWx1cmUgaW4gY3J5cHRvZ3JhcGhpYyBtZWNo
YW5pc21zCiAgKi8KLQogc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9wcm90ZWN0KHNydHBfdCBjdHgs
IHZvaWQgKnJ0cF9oZHIsIGludCAqbGVuX3B0cik7CiAKIC8qKgogICogQGJyaWVmIHNydHBfcHJv
dGVjdF9ta2koKSBpcyB0aGUgU2VjdXJlIFJUUCBzZW5kZXItc2lkZSBwYWNrZXQgcHJvY2Vzc2lu
ZwogICogZnVuY3Rpb24gdGhhdCBjYW4gdXRpbGl6ZSBNS0kuCi0gKiAKKyAqCiAgKiBUaGUgZnVu
Y3Rpb24gY2FsbCBzcnRwX3Byb3RlY3QoY3R4LCBydHBfaGRyLCBsZW5fcHRyKSBhcHBsaWVzIFNS
VFAKICAqIHByb3RlY3Rpb24gdG8gdGhlIFJUUCBwYWNrZXQgcnRwX2hkciAod2hpY2ggaGFzIGxl
bmd0aCAqbGVuX3B0cikgdXNpbmcKICAqIHRoZSBTUlRQIGNvbnRleHQgY3R4LiAgSWYgc3J0cF9l
cnJfc3RhdHVzX29rIGlzIHJldHVybmVkLCB0aGVuIHJ0cF9oZHIKICAqIHBvaW50cyB0byB0aGUg
cmVzdWx0aW5nIFNSVFAgcGFja2V0IGFuZCAqbGVuX3B0ciBpcyB0aGUgbnVtYmVyIG9mCiAgKiBv
Y3RldHMgaW4gdGhhdCBwYWNrZXQ7IG90aGVyd2lzZSwgbm8gYXNzdW1wdGlvbnMgc2hvdWxkIGJl
IG1hZGUKICAqIGFib3V0IHRoZSB2YWx1ZSBvZiBlaXRoZXIgZGF0YSBlbGVtZW50cy4KLSAqIAor
ICoKICAqIFRoZSBzZXF1ZW5jZSBudW1iZXJzIG9mIHRoZSBSVFAgcGFja2V0cyBwcmVzZW50ZWQg
dG8gdGhpcyBmdW5jdGlvbgogICogbmVlZCBub3QgYmUgY29uc2VjdXRpdmUsIGJ1dCB0aGV5IEBi
IG11c3QgYmUgb3V0IG9mIG9yZGVyIGJ5IGxlc3MKICAqIHRoYW4gMl4xNSA9IDMyLDc2OCBwYWNr
ZXRzLgpAQCAtNDQzLDExICs0MzcsMTEgQEAgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9wcm90ZWN0
KHNydHBfdCBjdHgsIHZvaWQgKnJ0cF9oZHIsIGludCAqbGVuX3B0cik7CiAgKiBwYWNrZXQsIGFu
ZCBhc3N1bWVzIHRoYXQgdGhlIFJUUCBwYWNrZXQgaXMgYWxpZ25lZCBvbiBhIDMyLWJpdAogICog
Ym91bmRhcnkuCiAgKgotICogQHdhcm5pbmcgVGhpcyBmdW5jdGlvbiBhc3N1bWVzIHRoYXQgaXQg
Y2FuIHdyaXRlIFNSVFBfTUFYX1RSQUlMRVJfTEVOIAotICogaW50byB0aGUgbG9jYXRpb24gaW4g
bWVtb3J5IGltbWVkaWF0ZWx5IGZvbGxvd2luZyB0aGUgUlRQIHBhY2tldC4gICAKLSAqIENhbGxl
cnMgTVVTVCBlbnN1cmUgdGhhdCB0aGlzIG11Y2ggd3JpdGFibGUgbWVtb3J5IGlzIGF2YWlsYWJs
ZSBpbiAKKyAqIEB3YXJuaW5nIFRoaXMgZnVuY3Rpb24gYXNzdW1lcyB0aGF0IGl0IGNhbiB3cml0
ZSBTUlRQX01BWF9UUkFJTEVSX0xFTgorICogaW50byB0aGUgbG9jYXRpb24gaW4gbWVtb3J5IGlt
bWVkaWF0ZWx5IGZvbGxvd2luZyB0aGUgUlRQIHBhY2tldC4KKyAqIENhbGxlcnMgTVVTVCBlbnN1
cmUgdGhhdCB0aGlzIG11Y2ggd3JpdGFibGUgbWVtb3J5IGlzIGF2YWlsYWJsZSBpbgogICogdGhl
IGJ1ZmZlciB0aGF0IGhvbGRzIHRoZSBSVFAgcGFja2V0LgotICogCisgKgogICogQHBhcmFtIGN0
eCBpcyB0aGUgU1JUUCBjb250ZXh0IHRvIHVzZSBpbiBwcm9jZXNzaW5nIHRoZSBwYWNrZXQuCiAg
KgogICogQHBhcmFtIHJ0cF9oZHIgaXMgYSBwb2ludGVyIHRvIHRoZSBSVFAgcGFja2V0IChiZWZv
cmUgdGhlIGNhbGwpOyBhZnRlcgpAQCAtNDU4LDIxICs0NTIsMjMgQEAgc3J0cF9lcnJfc3RhdHVz
X3Qgc3J0cF9wcm90ZWN0KHNydHBfdCBjdHgsIHZvaWQgKnJ0cF9oZHIsIGludCAqbGVuX3B0cik7
CiAgKiBjb21wbGV0ZSBTUlRQIHBhY2tldCBhZnRlciB0aGUgY2FsbCwgaWYgc3J0cF9lcnJfc3Rh
dHVzX29rIHdhcyByZXR1cm5lZC4KICAqIE90aGVyd2lzZSwgdGhlIHZhbHVlIG9mIHRoZSBkYXRh
IHRvIHdoaWNoIGl0IHBvaW50cyBpcyB1bmRlZmluZWQuCiAgKgotICogQHBhcmFtIHVzZV9ta2kg
aXMgYSBib29sZWFuIHRvIHRlbGwgdGhlIHN5c3RlbSBpZiBta2kgaXMgYmVpbmcgdXNlZC4gIElm
IAotICogc2V0IHRvIGZhbHNlIHRoZW4gd2lsbCB1c2UgdGhlIGZpcnN0IHNldCBvZiBzZXNzaW9u
IGtleXMuICBJZiBzZXQgdG8gdHJ1ZSB3aWxsCisgKiBAcGFyYW0gdXNlX21raSBpcyBhIGJvb2xl
YW4gdG8gdGVsbCB0aGUgc3lzdGVtIGlmIG1raSBpcyBiZWluZyB1c2VkLiAgSWYKKyAqIHNldCB0
byBmYWxzZSB0aGVuIHdpbGwgdXNlIHRoZSBmaXJzdCBzZXQgb2Ygc2Vzc2lvbiBrZXlzLiAgSWYg
c2V0IHRvIHRydWUKKyAqIHdpbGwKICAqIHVzZSB0aGUgc2Vzc2lvbiBrZXlzIGlkZW50aWZpZWQg
YnkgdGhlIG1raV9pbmRleAogICoKICAqIEBwYXJhbSBta2lfaW5kZXggaW50ZWdlciB2YWx1ZSBz
cGVjaWZ5aW5nIHdoaWNoIHNldCBvZiBzZXNzaW9uIGtleXMgc2hvdWxkIGJlCiAgKiB1c2VkIGlm
IHVzZV9ta2kgaXMgc2V0IHRvIHRydWUuCiAgKgotICogQHJldHVybiAKKyAqIEByZXR1cm4KICAq
ICAgIC0gc3J0cF9lcnJfc3RhdHVzX29rICAgICAgICAgICAgbm8gcHJvYmxlbXMKICAqICAgIC0g
c3J0cF9lcnJfc3RhdHVzX3JlcGxheV9mYWlsICAgcnRwIHNlcXVlbmNlIG51bWJlciB3YXMgbm9u
LWluY3JlYXNpbmcKICAqICAgIC0gQGUgb3RoZXIgICAgICAgICAgICAgICAgIGZhaWx1cmUgaW4g
Y3J5cHRvZ3JhcGhpYyBtZWNoYW5pc21zCiAgKi8KLQotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9w
cm90ZWN0X21raShzcnRwX2N0eF90ICpjdHgsIHZvaWQgKnJ0cF9oZHIsCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGludCAqcGt0X29jdGV0X2xlbiwgdW5zaWduZWQgaW50IHVz
ZV9ta2ksCitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3Byb3RlY3RfbWtpKHNydHBfY3R4X3QgKmN0
eCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdm9pZCAqcnRwX2hkciwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50ICpwa3Rfb2N0ZXRfbGVuLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgdXNlX21raSwKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IG1raV9pbmRleCk7
CiAKIC8qKgpAQCAtNDg1LDEyICs0ODEsMTIgQEAgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9wcm90
ZWN0X21raShzcnRwX2N0eF90ICpjdHgsIHZvaWQgKnJ0cF9oZHIsCiAgKiBzcnRwX2Vycl9zdGF0
dXNfb2sgaXMgcmV0dXJuZWQsIHRoZW4gc3J0cF9oZHIgcG9pbnRzIHRvIHRoZSByZXN1bHRpbmcK
ICAqIFJUUCBwYWNrZXQgYW5kICpsZW5fcHRyIGlzIHRoZSBudW1iZXIgb2Ygb2N0ZXRzIGluIHRo
YXQgcGFja2V0OwogICogb3RoZXJ3aXNlLCBubyBhc3N1bXB0aW9ucyBzaG91bGQgYmUgbWFkZSBh
Ym91dCB0aGUgdmFsdWUgb2YgZWl0aGVyCi0gKiBkYXRhIGVsZW1lbnRzLiAgCi0gKiAKKyAqIGRh
dGEgZWxlbWVudHMuCisgKgogICogVGhlIHNlcXVlbmNlIG51bWJlcnMgb2YgdGhlIFJUUCBwYWNr
ZXRzIHByZXNlbnRlZCB0byB0aGlzIGZ1bmN0aW9uCiAgKiBuZWVkIG5vdCBiZSBjb25zZWN1dGl2
ZSwgYnV0IHRoZXkgQGIgbXVzdCBiZSBvdXQgb2Ygb3JkZXIgYnkgbGVzcwogICogdGhhbiAyXjE1
ID0gMzIsNzY4IHBhY2tldHMuCi0gKiAKKyAqCiAgKiBAd2FybmluZyBUaGlzIGZ1bmN0aW9uIGFz
c3VtZXMgdGhhdCB0aGUgU1JUUCBwYWNrZXQgaXMgYWxpZ25lZCBvbiBhCiAgKiAzMi1iaXQgYm91
bmRhcnkuCiAgKgpAQCAtNTA2LDE2ICs1MDIsMTUgQEAgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9w
cm90ZWN0X21raShzcnRwX2N0eF90ICpjdHgsIHZvaWQgKnJ0cF9oZHIsCiAgKiBjb21wbGV0ZSBy
dHAgcGFja2V0IGFmdGVyIHRoZSBjYWxsLCBpZiBzcnRwX2Vycl9zdGF0dXNfb2sgd2FzIHJldHVy
bmVkLgogICogT3RoZXJ3aXNlLCB0aGUgdmFsdWUgb2YgdGhlIGRhdGEgdG8gd2hpY2ggaXQgcG9p
bnRzIGlzIHVuZGVmaW5lZC4KICAqCi0gKiBAcmV0dXJuIAorICogQHJldHVybgogICogICAgLSBz
cnRwX2Vycl9zdGF0dXNfb2sgICAgICAgICAgaWYgdGhlIFJUUCBwYWNrZXQgaXMgdmFsaWQuCi0g
KiAgICAtIHNydHBfZXJyX3N0YXR1c19hdXRoX2ZhaWwgICBpZiB0aGUgU1JUUCBwYWNrZXQgZmFp
bGVkIHRoZSBtZXNzYWdlIAotICogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF1dGhlbnRp
Y2F0aW9uIGNoZWNrLgotICogICAgLSBzcnRwX2Vycl9zdGF0dXNfcmVwbGF5X2ZhaWwgaWYgdGhl
IFNSVFAgcGFja2V0IGlzIGEgcmVwbGF5IChlLmcuIHBhY2tldCBoYXMKLSAqICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBhbHJlYWR5IGJlZW4gcHJvY2Vzc2VkIGFuZCBhY2NlcHRlZCkuCisg
KiAgICAtIHNydHBfZXJyX3N0YXR1c19hdXRoX2ZhaWwgICBpZiB0aGUgU1JUUCBwYWNrZXQgZmFp
bGVkIHRoZSBtZXNzYWdlCisgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdXRo
ZW50aWNhdGlvbiBjaGVjay4KKyAqICAgIC0gc3J0cF9lcnJfc3RhdHVzX3JlcGxheV9mYWlsIGlm
IHRoZSBTUlRQIHBhY2tldCBpcyBhIHJlcGxheSAoZS5nLiBwYWNrZXQKKyAqICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGhhcyBhbHJlYWR5IGJlZW4gcHJvY2Vzc2VkIGFuZCBhY2Nl
cHRlZCkuCiAgKiAgICAtIFtvdGhlcl0gIGlmIHRoZXJlIGhhcyBiZWVuIGFuIGVycm9yIGluIHRo
ZSBjcnlwdG9ncmFwaGljIG1lY2hhbmlzbXMuCiAgKgogICovCi0KIHNydHBfZXJyX3N0YXR1c190
IHNydHBfdW5wcm90ZWN0KHNydHBfdCBjdHgsIHZvaWQgKnNydHBfaGRyLCBpbnQgKmxlbl9wdHIp
OwogCiAvKioKQEAgLTUyOCwxMiArNTIzLDEyIEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfdW5w
cm90ZWN0KHNydHBfdCBjdHgsIHZvaWQgKnNydHBfaGRyLCBpbnQgKmxlbl9wdHIpOwogICogc3J0
cF9lcnJfc3RhdHVzX29rIGlzIHJldHVybmVkLCB0aGVuIHNydHBfaGRyIHBvaW50cyB0byB0aGUg
cmVzdWx0aW5nCiAgKiBSVFAgcGFja2V0IGFuZCAqbGVuX3B0ciBpcyB0aGUgbnVtYmVyIG9mIG9j
dGV0cyBpbiB0aGF0IHBhY2tldDsKICAqIG90aGVyd2lzZSwgbm8gYXNzdW1wdGlvbnMgc2hvdWxk
IGJlIG1hZGUgYWJvdXQgdGhlIHZhbHVlIG9mIGVpdGhlcgotICogZGF0YSBlbGVtZW50cy4gIAot
ICogCisgKiBkYXRhIGVsZW1lbnRzLgorICoKICAqIFRoZSBzZXF1ZW5jZSBudW1iZXJzIG9mIHRo
ZSBSVFAgcGFja2V0cyBwcmVzZW50ZWQgdG8gdGhpcyBmdW5jdGlvbgogICogbmVlZCBub3QgYmUg
Y29uc2VjdXRpdmUsIGJ1dCB0aGV5IEBiIG11c3QgYmUgb3V0IG9mIG9yZGVyIGJ5IGxlc3MKICAq
IHRoYW4gMl4xNSA9IDMyLDc2OCBwYWNrZXRzLgotICogCisgKgogICogQHdhcm5pbmcgVGhpcyBm
dW5jdGlvbiBhc3N1bWVzIHRoYXQgdGhlIFNSVFAgcGFja2V0IGlzIGFsaWduZWQgb24gYQogICog
MzItYml0IGJvdW5kYXJ5LgogICoKQEAgLTU1MCw1MiArNTQ1LDUyIEBAIHNydHBfZXJyX3N0YXR1
c190IHNydHBfdW5wcm90ZWN0KHNydHBfdCBjdHgsIHZvaWQgKnNydHBfaGRyLCBpbnQgKmxlbl9w
dHIpOwogICogT3RoZXJ3aXNlLCB0aGUgdmFsdWUgb2YgdGhlIGRhdGEgdG8gd2hpY2ggaXQgcG9p
bnRzIGlzIHVuZGVmaW5lZC4KICAqCiAgKiBAcGFyYW0gdXNlX21raSBpcyBhIGJvb2xlYW4gdG8g
dGVsbCB0aGUgc3lzdGVtIGlmIG1raSBpcyBiZWluZyB1c2VkLiAgSWYKLSAqIHNldCB0byBmYWxz
ZSB0aGVuIHdpbGwgdXNlIHRoZSBmaXJzdCBzZXQgb2Ygc2Vzc2lvbiBrZXlzLiAgSWYgc2V0IHRv
IHRydWUgd2lsbAorICogc2V0IHRvIGZhbHNlIHRoZW4gd2lsbCB1c2UgdGhlIGZpcnN0IHNldCBv
ZiBzZXNzaW9uIGtleXMuICBJZiBzZXQgdG8gdHJ1ZQorICogd2lsbAogICogdXNlIHRoZSBzZXNz
aW9uIGtleXMgaWRlbnRpZmllZCBieSB0aGUgbWtpX2luZGV4CiAgKgotICogQHJldHVybiAKKyAq
IEByZXR1cm4KICAqICAgIC0gc3J0cF9lcnJfc3RhdHVzX29rICAgICAgICAgIGlmIHRoZSBSVFAg
cGFja2V0IGlzIHZhbGlkLgotICogICAgLSBzcnRwX2Vycl9zdGF0dXNfYXV0aF9mYWlsICAgaWYg
dGhlIFNSVFAgcGFja2V0IGZhaWxlZCB0aGUgbWVzc2FnZSAKLSAqICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBhdXRoZW50aWNhdGlvbiBjaGVjay4KLSAqICAgIC0gc3J0cF9lcnJfc3RhdHVz
X3JlcGxheV9mYWlsIGlmIHRoZSBTUlRQIHBhY2tldCBpcyBhIHJlcGxheSAoZS5nLiBwYWNrZXQg
aGFzCi0gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWxyZWFkeSBiZWVuIHByb2Nlc3Nl
ZCBhbmQgYWNjZXB0ZWQpLgorICogICAgLSBzcnRwX2Vycl9zdGF0dXNfYXV0aF9mYWlsICAgaWYg
dGhlIFNSVFAgcGFja2V0IGZhaWxlZCB0aGUgbWVzc2FnZQorICogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgYXV0aGVudGljYXRpb24gY2hlY2suCisgKiAgICAtIHNydHBfZXJyX3N0
YXR1c19yZXBsYXlfZmFpbCBpZiB0aGUgU1JUUCBwYWNrZXQgaXMgYSByZXBsYXkgKGUuZy4gcGFj
a2V0CisgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYXMgYWxyZWFkeSBiZWVu
IHByb2Nlc3NlZCBhbmQgYWNjZXB0ZWQpLgogICogICAgLSBzcnRwX2Vycl9zdGF0dXNfYmFkX21r
aSBpZiB0aGUgTUtJIGluIHRoZSBwYWNrZXQgaXMgbm90IGEga25vd24gTUtJIGlkCiAgKiAgICAt
IFtvdGhlcl0gIGlmIHRoZXJlIGhhcyBiZWVuIGFuIGVycm9yIGluIHRoZSBjcnlwdG9ncmFwaGlj
IG1lY2hhbmlzbXMuCiAgKgogICovCi0KLXNydHBfZXJyX3N0YXR1c190IHNydHBfdW5wcm90ZWN0
X21raShzcnRwX3QgY3R4LCB2b2lkICpzcnRwX2hkciwgaW50ICpsZW5fcHRyLAorc3J0cF9lcnJf
c3RhdHVzX3Qgc3J0cF91bnByb3RlY3RfbWtpKHNydHBfdCBjdHgsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgdm9pZCAqc3J0cF9oZHIsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgaW50ICpsZW5fcHRyLAogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHVuc2lnbmVkIGludCB1c2VfbWtpKTsKIAogLyoqCiAgKiBAYnJpZWYgc3J0
cF9jcmVhdGUoKSBhbGxvY2F0ZXMgYW5kIGluaXRpYWxpemVzIGFuIFNSVFAgc2Vzc2lvbi4KIAog
ICogVGhlIGZ1bmN0aW9uIGNhbGwgc3J0cF9jcmVhdGUoc2Vzc2lvbiwgcG9saWN5KSBhbGxvY2F0
ZXMgYW5kCi0gKiBpbml0aWFsaXplcyBhbiBTUlRQIHNlc3Npb24gY29udGV4dCwgYXBwbHlpbmcg
dGhlIGdpdmVuIHBvbGljeS4gCisgKiBpbml0aWFsaXplcyBhbiBTUlRQIHNlc3Npb24gY29udGV4
dCwgYXBwbHlpbmcgdGhlIGdpdmVuIHBvbGljeS4KICAqCiAgKiBAcGFyYW0gc2Vzc2lvbiBpcyBh
IHBvaW50ZXIgdG8gdGhlIFNSVFAgc2Vzc2lvbiB0byB3aGljaCB0aGUgcG9saWN5IGlzCiAgKiB0
byBiZSBhZGRlZC4KLSAqIAorICoKICAqIEBwYXJhbSBwb2xpY3kgaXMgdGhlIHNydHBfcG9saWN5
X3Qgc3RydWN0IHRoYXQgZGVzY3JpYmVzIHRoZSBwb2xpY3kKICAqIGZvciB0aGUgc2Vzc2lvbi4g
IFRoZSBzdHJ1Y3QgbWF5IGJlIGEgc2luZ2xlIGVsZW1lbnQsIG9yIGl0IG1heSBiZQogICogdGhl
IGhlYWQgb2YgYSBsaXN0LCBpbiB3aGljaCBjYXNlIGVhY2ggZWxlbWVudCBvZiB0aGUgbGlzdCBp
cwogICogcHJvY2Vzc2VkLiAgSXQgbWF5IGFsc28gYmUgTlVMTCwgaW4gd2hpY2ggY2FzZSBzdHJl
YW1zIHNob3VsZCBiZSBhZGRlZAogICogbGF0ZXIgdXNpbmcgc3J0cF9hZGRfc3RyZWFtKCkuICBU
aGUgZmluYWwgZWxlbWVudCBvZiB0aGUgbGlzdCBAYiBtdXN0CiAgKiBoYXZlIGl0cyBgbmV4dCcg
ZmllbGQgc2V0IHRvIE5VTEwuCi0gKiAKKyAqCiAgKiBAcmV0dXJuCiAgKiAgICAtIHNydHBfZXJy
X3N0YXR1c19vayAgICAgICAgICAgaWYgY3JlYXRpb24gc3VjY2VkZWQuCiAgKiAgICAtIHNydHBf
ZXJyX3N0YXR1c19hbGxvY19mYWlsICAgaWYgYWxsb2NhdGlvbiBmYWlsZWQuCiAgKiAgICAtIHNy
dHBfZXJyX3N0YXR1c19pbml0X2ZhaWwgICAgaWYgaW5pdGlhbGl6YXRpb24gZmFpbGVkLgogICov
Ci0KIHNydHBfZXJyX3N0YXR1c190IHNydHBfY3JlYXRlKHNydHBfdCAqc2Vzc2lvbiwgY29uc3Qg
c3J0cF9wb2xpY3lfdCAqcG9saWN5KTsKIAotCiAvKioKICAqIEBicmllZiBzcnRwX2FkZF9zdHJl
YW0oKSBhbGxvY2F0ZXMgYW5kIGluaXRpYWxpemVzIGFuIFNSVFAgc3RyZWFtCiAgKiB3aXRoaW4g
YSBnaXZlbiBTUlRQIHNlc3Npb24uCi0gKiAKKyAqCiAgKiBUaGUgZnVuY3Rpb24gY2FsbCBzcnRw
X2FkZF9zdHJlYW0oc2Vzc2lvbiwgcG9saWN5KSBhbGxvY2F0ZXMgYW5kCiAgKiBpbml0aWFsaXpl
cyBhIG5ldyBTUlRQIHN0cmVhbSB3aXRoaW4gYSBnaXZlbiwgcHJldmlvdXNseSBjcmVhdGVkCiAg
KiBzZXNzaW9uLCBhcHBseWluZyB0aGUgcG9saWN5IGdpdmVuIGFzIHRoZSBvdGhlciBhcmd1bWVu
dCB0byB0aGF0CkBAIC02MDYsMTMgKzYwMSwxMSBAQCBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2Ny
ZWF0ZShzcnRwX3QgKnNlc3Npb24sIGNvbnN0IHNydHBfcG9saWN5X3QgKnBvbGljeSk7CiAgKiAg
ICAtIHNydHBfZXJyX3N0YXR1c19hbGxvY19mYWlsICAgaWYgc3RyZWFtIGFsbG9jYXRpb24gZmFp
bGVkCiAgKiAgICAtIHNydHBfZXJyX3N0YXR1c19pbml0X2ZhaWwgICAgaWYgc3RyZWFtIGluaXRp
YWxpemF0aW9uIGZhaWxlZC4KICAqLwotCiBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2FkZF9zdHJl
YW0oc3J0cF90IHNlc3Npb24sIGNvbnN0IHNydHBfcG9saWN5X3QgKnBvbGljeSk7CiAKLQogLyoq
CiAgKiBAYnJpZWYgc3J0cF9yZW1vdmVfc3RyZWFtKCkgZGVhbGxvY2F0ZXMgYW4gU1JUUCBzdHJl
YW0uCi0gKiAKKyAqCiAgKiBUaGUgZnVuY3Rpb24gY2FsbCBzcnRwX3JlbW92ZV9zdHJlYW0oc2Vz
c2lvbiwgc3NyYykgcmVtb3ZlcwogICogdGhlIFNSVFAgc3RyZWFtIHdpdGggdGhlIFNTUkMgdmFs
dWUgc3NyYyBmcm9tIHRoZSBTUlRQIHNlc3Npb24KICAqIGNvbnRleHQgZ2l2ZW4gYnkgdGhlIGFy
Z3VtZW50IHNlc3Npb24uCkBAIC02MjUsMTMgKzYxOCwxMiBAQCBzcnRwX2Vycl9zdGF0dXNfdCBz
cnRwX2FkZF9zdHJlYW0oc3J0cF90IHNlc3Npb24sIGNvbnN0IHNydHBfcG9saWN5X3QgKnBvbGlj
eSk7CiAgKgogICogQHdhcm5pbmcgV2lsZGNhcmQgU1NSQyB2YWx1ZXMgY2Fubm90IGJlIHJlbW92
ZWQgZnJvbSBhCiAgKiAgICAgICAgICBzZXNzaW9uLgotICogCisgKgogICogQHJldHVybgogICog
ICAgLSBzcnRwX2Vycl9zdGF0dXNfb2sgICAgIGlmIHRoZSBzdHJlYW0gZGVhbGxvY2F0aW9uIHN1
Y2NlZGVkLgogICogICAgLSBbb3RoZXJdICAgICAgICAgICBvdGhlcndpc2UuCiAgKgogICovCi0K
IHNydHBfZXJyX3N0YXR1c190IHNydHBfcmVtb3ZlX3N0cmVhbShzcnRwX3Qgc2Vzc2lvbiwgdW5z
aWduZWQgaW50IHNzcmMpOwogCiAvKioKQEAgLTY1OCw3ICs2NTAsNiBAQCBzcnRwX2Vycl9zdGF0
dXNfdCBzcnRwX3JlbW92ZV9zdHJlYW0oc3J0cF90IHNlc3Npb24sIHVuc2lnbmVkIGludCBzc3Jj
KTsKICAqICAgIC0gW290aGVyXSAgICAgICAgICAgICAgICAgb3RoZXJ3aXNlLgogICoKICAqLwot
CiBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3VwZGF0ZShzcnRwX3Qgc2Vzc2lvbiwgY29uc3Qgc3J0
cF9wb2xpY3lfdCAqcG9saWN5KTsKIAogLyoqCkBAIC02ODIsMTUgKzY3MywxNSBAQCBzcnRwX2Vy
cl9zdGF0dXNfdCBzcnRwX3VwZGF0ZShzcnRwX3Qgc2Vzc2lvbiwgY29uc3Qgc3J0cF9wb2xpY3lf
dCAqcG9saWN5KTsKICAqICAgIC0gW290aGVyXSAgICAgICAgICAgICAgICAgICAgICBvdGhlcndp
c2UuCiAgKgogICovCi0KLXNydHBfZXJyX3N0YXR1c190IHNydHBfdXBkYXRlX3N0cmVhbShzcnRw
X3Qgc2Vzc2lvbiwgY29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5KTsKK3NydHBfZXJyX3N0YXR1
c190IHNydHBfdXBkYXRlX3N0cmVhbShzcnRwX3Qgc2Vzc2lvbiwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3kpOwogCiAvKioK
ICAqIEBicmllZiBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X3J0cF9kZWZhdWx0KCkgc2V0cyBhIGNy
eXB0byBwb2xpY3kKICAqIHN0cnVjdHVyZSB0byB0aGUgU1JUUCBkZWZhdWx0IHBvbGljeSBmb3Ig
UlRQIHByb3RlY3Rpb24uCiAgKgotICogQHBhcmFtIHAgaXMgYSBwb2ludGVyIHRvIHRoZSBwb2xp
Y3kgc3RydWN0dXJlIHRvIGJlIHNldCAKLSAqIAorICogQHBhcmFtIHAgaXMgYSBwb2ludGVyIHRv
IHRoZSBwb2xpY3kgc3RydWN0dXJlIHRvIGJlIHNldAorICoKICAqIFRoZSBmdW5jdGlvbiBjYWxs
IGNyeXB0b19wb2xpY3lfc2V0X3J0cF9kZWZhdWx0KCZwKSBzZXRzIHRoZQogICogY3J5cHRvX3Bv
bGljeV90IGF0IGxvY2F0aW9uIHAgdG8gdGhlIFNSVFAgZGVmYXVsdCBwb2xpY3kgZm9yIFJUUAog
ICogcHJvdGVjdGlvbiwgYXMgZGVmaW5lZCBpbiB0aGUgc3BlY2lmaWNhdGlvbi4gIFRoaXMgZnVu
Y3Rpb24gaXMgYQpAQCAtNjk5LDE5ICs2OTAsMTggQEAgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF91
cGRhdGVfc3RyZWFtKHNydHBfdCBzZXNzaW9uLCBjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3kK
ICAqIHdpdGggdGhpcyBmdW5jdGlvbiBjYWxsLiAgRG9pbmcgc28gbWF5IGFsbG93IHlvdXIgY29k
ZSB0byBiZQogICogZm9yd2FyZCBjb21wYXRpYmxlIHdpdGggbGF0ZXIgdmVyc2lvbnMgb2YgbGli
U1JUUCB0aGF0IGluY2x1ZGUgbW9yZQogICogZWxlbWVudHMgaW4gdGhlIGNyeXB0b19wb2xpY3lf
dCBkYXRhdHlwZS4KLSAqIAorICoKICAqIEByZXR1cm4gdm9pZC4KLSAqIAorICoKICAqLwotCiB2
b2lkIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfcnRwX2RlZmF1bHQoc3J0cF9jcnlwdG9fcG9saWN5
X3QgKnApOwogCiAvKioKICAqIEBicmllZiBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X3J0Y3BfZGVm
YXVsdCgpIHNldHMgYSBjcnlwdG8gcG9saWN5CiAgKiBzdHJ1Y3R1cmUgdG8gdGhlIFNSVFAgZGVm
YXVsdCBwb2xpY3kgZm9yIFJUQ1AgcHJvdGVjdGlvbi4KICAqCi0gKiBAcGFyYW0gcCBpcyBhIHBv
aW50ZXIgdG8gdGhlIHBvbGljeSBzdHJ1Y3R1cmUgdG8gYmUgc2V0IAotICogCisgKiBAcGFyYW0g
cCBpcyBhIHBvaW50ZXIgdG8gdGhlIHBvbGljeSBzdHJ1Y3R1cmUgdG8gYmUgc2V0CisgKgogICog
VGhlIGZ1bmN0aW9uIGNhbGwgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9ydGNwX2RlZmF1bHQoJnAp
IHNldHMgdGhlCiAgKiBzcnRwX2NyeXB0b19wb2xpY3lfdCBhdCBsb2NhdGlvbiBwIHRvIHRoZSBT
UlRQIGRlZmF1bHQgcG9saWN5IGZvciBSVENQCiAgKiBwcm90ZWN0aW9uLCBhcyBkZWZpbmVkIGlu
IHRoZSBzcGVjaWZpY2F0aW9uLiAgVGhpcyBmdW5jdGlvbiBpcyBhCkBAIC03MjAsMzcgKzcxMCwz
NSBAQCB2b2lkIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfcnRwX2RlZmF1bHQoc3J0cF9jcnlwdG9f
cG9saWN5X3QgKnApOwogICogd2l0aCB0aGlzIGZ1bmN0aW9uIGNhbGwuICBEb2luZyBzbyBtYXkg
YWxsb3cgeW91ciBjb2RlIHRvIGJlCiAgKiBmb3J3YXJkIGNvbXBhdGlibGUgd2l0aCBsYXRlciB2
ZXJzaW9ucyBvZiBsaWJTUlRQIHRoYXQgaW5jbHVkZSBtb3JlCiAgKiBlbGVtZW50cyBpbiB0aGUg
c3J0cF9jcnlwdG9fcG9saWN5X3QgZGF0YXR5cGUuCi0gKiAKKyAqCiAgKiBAcmV0dXJuIHZvaWQu
Ci0gKiAKKyAqCiAgKi8KLQogdm9pZCBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X3J0Y3BfZGVmYXVs
dChzcnRwX2NyeXB0b19wb2xpY3lfdCAqcCk7CiAKIC8qKgogICogQGJyaWVmIHNydHBfY3J5cHRv
X3BvbGljeV9zZXRfYWVzX2NtXzEyOF9obWFjX3NoYTFfODAoKSBzZXRzIGEgY3J5cHRvCiAgKiBw
b2xpY3kgc3RydWN0dXJlIHRvIHRoZSBTUlRQIGRlZmF1bHQgcG9saWN5IGZvciBSVFAgcHJvdGVj
dGlvbi4KICAqCi0gKiBAcGFyYW0gcCBpcyBhIHBvaW50ZXIgdG8gdGhlIHBvbGljeSBzdHJ1Y3R1
cmUgdG8gYmUgc2V0IAotICogCisgKiBAcGFyYW0gcCBpcyBhIHBvaW50ZXIgdG8gdGhlIHBvbGlj
eSBzdHJ1Y3R1cmUgdG8gYmUgc2V0CisgKgogICogVGhlIGZ1bmN0aW9uIHNydHBfY3J5cHRvX3Bv
bGljeV9zZXRfYWVzX2NtXzEyOF9obWFjX3NoYTFfODAoKSBpcyBhCiAgKiBzeW5vbnltIGZvciBz
cnRwX2NyeXB0b19wb2xpY3lfc2V0X3J0cF9kZWZhdWx0KCkuICBJdCBjb25mb3JtcyB0byB0aGUK
ICAqIG5hbWluZyBjb252ZW50aW9uIHVzZWQgaW4gUkZDIDQ1NjggKFNEUCBTZWN1cml0eSBEZXNj
cmlwdGlvbnMgZm9yCiAgKiBNZWRpYSBTdHJlYW1zKS4KLSAqIAorICoKICAqIEByZXR1cm4gdm9p
ZC4KLSAqIAorICoKICAqLwotCi0jZGVmaW5lIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2Nt
XzEyOF9obWFjX3NoYTFfODAocCkgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9ydHBfZGVmYXVsdChw
KQotCisjZGVmaW5lIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2NtXzEyOF9obWFjX3NoYTFf
ODAocCkgICAgICAgICAgICAgICAgICAgICAgXAorICAgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRf
cnRwX2RlZmF1bHQocCkKIAogLyoqCiAgKiBAYnJpZWYgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9h
ZXNfY21fMTI4X2htYWNfc2hhMV8zMigpIHNldHMgYSBjcnlwdG8KICAqIHBvbGljeSBzdHJ1Y3R1
cmUgdG8gYSBzaG9ydC1hdXRoZW50aWNhdGlvbiB0YWcgcG9saWN5CiAgKgotICogQHBhcmFtIHAg
aXMgYSBwb2ludGVyIHRvIHRoZSBwb2xpY3kgc3RydWN0dXJlIHRvIGJlIHNldCAKLSAqIAorICog
QHBhcmFtIHAgaXMgYSBwb2ludGVyIHRvIHRoZSBwb2xpY3kgc3RydWN0dXJlIHRvIGJlIHNldAor
ICoKICAqIFRoZSBmdW5jdGlvbiBjYWxsIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2NtXzEy
OF9obWFjX3NoYTFfMzIoJnApCiAgKiBzZXRzIHRoZSBzcnRwX2NyeXB0b19wb2xpY3lfdCBhdCBs
b2NhdGlvbiBwIHRvIHVzZSBwb2xpY3kKICAqIEFFU19DTV8xMjhfSE1BQ19TSEExXzMyIGFzIGRl
ZmluZWQgaW4gUkZDIDQ1NjguCkBAIC03NjAsNyArNzQ4LDcgQEAgdm9pZCBzcnRwX2NyeXB0b19w
b2xpY3lfc2V0X3J0Y3BfZGVmYXVsdChzcnRwX2NyeXB0b19wb2xpY3lfdCAqcCk7CiAgKiBjb25z
aWRlcmVkIGFkZXF1YXRlIG9ubHkgZm9yIHByb3RlY3RpbmcgYXVkaW8gYW5kIHZpZGVvIG1lZGlh
IHRoYXQKICAqIHVzZSBhIHN0YXRlbGVzcyBwbGF5YmFjayBmdW5jdGlvbi4gIFNlZSBTZWN0aW9u
IDcuNSBvZiBSRkMgMzcxMQogICogKGh0dHA6Ly93d3cuaWV0Zi5vcmcvcmZjL3JmYzM3MTEudHh0
KS4KLSAqIAorICoKICAqIFRoaXMgZnVuY3Rpb24gaXMgYSBjb252ZW5pZW5jZSB0aGF0IGhlbHBz
IHRvIGF2b2lkIGRlYWxpbmcgZGlyZWN0bHkKICAqIHdpdGggdGhlIHBvbGljeSBkYXRhIHN0cnVj
dHVyZS4gIFlvdSBhcmUgZW5jb3VyYWdlZCB0byBpbml0aWFsaXplCiAgKiBwb2xpY3kgZWxlbWVu
dHMgd2l0aCB0aGlzIGZ1bmN0aW9uIGNhbGwuICBEb2luZyBzbyBtYXkgYWxsb3cgeW91cgpAQCAt
NzczLDI1ICs3NjEsMjIgQEAgdm9pZCBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X3J0Y3BfZGVmYXVs
dChzcnRwX2NyeXB0b19wb2xpY3lfdCAqcCk7CiAgKiAoaHR0cDovL3d3dy5pZXRmLm9yZy9yZmMv
cmZjMzcxMS50eHQpLgogICoKICAqIEByZXR1cm4gdm9pZC4KLSAqIAorICoKICAqLwotCiB2b2lk
IHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2NtXzEyOF9obWFjX3NoYTFfMzIoc3J0cF9jcnlw
dG9fcG9saWN5X3QgKnApOwogCi0KLQogLyoqCiAgKiBAYnJpZWYgc3J0cF9jcnlwdG9fcG9saWN5
X3NldF9hZXNfY21fMTI4X251bGxfYXV0aCgpIHNldHMgYSBjcnlwdG8KICAqIHBvbGljeSBzdHJ1
Y3R1cmUgdG8gYW4gZW5jcnlwdGlvbi1vbmx5IHBvbGljeQogICoKLSAqIEBwYXJhbSBwIGlzIGEg
cG9pbnRlciB0byB0aGUgcG9saWN5IHN0cnVjdHVyZSB0byBiZSBzZXQgCi0gKiAKKyAqIEBwYXJh
bSBwIGlzIGEgcG9pbnRlciB0byB0aGUgcG9saWN5IHN0cnVjdHVyZSB0byBiZSBzZXQKKyAqCiAg
KiBUaGUgZnVuY3Rpb24gY2FsbCBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19jbV8xMjhfbnVs
bF9hdXRoKCZwKSBzZXRzCiAgKiB0aGUgc3J0cF9jcnlwdG9fcG9saWN5X3QgYXQgbG9jYXRpb24g
cCB0byB1c2UgdGhlIFNSVFAgZGVmYXVsdCBjaXBoZXIKICAqIChBRVMtMTI4IENvdW50ZXIgTW9k
ZSksIGJ1dCB0byB1c2Ugbm8gYXV0aGVudGljYXRpb24gbWV0aG9kLiAgVGhpcwogICogcG9saWN5
IGlzIE5PVCBSRUNPTU1FTkRFRCB1bmxlc3MgaXQgaXMgdW5hdm9pZGFibGU7IHNlZSBTZWN0aW9u
IDcuNQogICogb2YgUkZDIDM3MTEgKGh0dHA6Ly93d3cuaWV0Zi5vcmcvcmZjL3JmYzM3MTEudHh0
KS4KLSAqIAorICoKICAqIFRoaXMgZnVuY3Rpb24gaXMgYSBjb252ZW5pZW5jZSB0aGF0IGhlbHBz
IHRvIGF2b2lkIGRlYWxpbmcgZGlyZWN0bHkKICAqIHdpdGggdGhlIHBvbGljeSBkYXRhIHN0cnVj
dHVyZS4gIFlvdSBhcmUgZW5jb3VyYWdlZCB0byBpbml0aWFsaXplCiAgKiBwb2xpY3kgZWxlbWVu
dHMgd2l0aCB0aGlzIGZ1bmN0aW9uIGNhbGwuICBEb2luZyBzbyBtYXkgYWxsb3cgeW91cgpAQCAt
ODAzLDI0ICs3ODgsMjIgQEAgdm9pZCBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19jbV8xMjhf
aG1hY19zaGExXzMyKHNydHBfY3J5cHRvX3BvbGljeV90ICpwKTsKICAqIFNlY3Rpb24gNy41IG9m
IFJGQyAzNzExIChodHRwOi8vd3d3LmlldGYub3JnL3JmYy9yZmMzNzExLnR4dCkuCiAgKgogICog
QHJldHVybiB2b2lkLgotICogCisgKgogICovCi0KIHZvaWQgc3J0cF9jcnlwdG9fcG9saWN5X3Nl
dF9hZXNfY21fMTI4X251bGxfYXV0aChzcnRwX2NyeXB0b19wb2xpY3lfdCAqcCk7CiAKLQogLyoq
CiAgKiBAYnJpZWYgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9udWxsX2NpcGhlcl9obWFjX3NoYTFf
ODAoKSBzZXRzIGEgY3J5cHRvCiAgKiBwb2xpY3kgc3RydWN0dXJlIHRvIGFuIGF1dGhlbnRpY2F0
aW9uLW9ubHkgcG9saWN5CiAgKgotICogQHBhcmFtIHAgaXMgYSBwb2ludGVyIHRvIHRoZSBwb2xp
Y3kgc3RydWN0dXJlIHRvIGJlIHNldCAKLSAqIAorICogQHBhcmFtIHAgaXMgYSBwb2ludGVyIHRv
IHRoZSBwb2xpY3kgc3RydWN0dXJlIHRvIGJlIHNldAorICoKICAqIFRoZSBmdW5jdGlvbiBjYWxs
IHNydHBfY3J5cHRvX3BvbGljeV9zZXRfbnVsbF9jaXBoZXJfaG1hY19zaGExXzgwKCZwKQogICog
c2V0cyB0aGUgc3J0cF9jcnlwdG9fcG9saWN5X3QgYXQgbG9jYXRpb24gcCB0byB1c2UgSE1BQy1T
SEExIHdpdGggYW4gODAKICAqIGJpdCBhdXRoZW50aWNhdGlvbiB0YWcgdG8gcHJvdmlkZSBtZXNz
YWdlIGF1dGhlbnRpY2F0aW9uLCBidXQgdG8KICAqIHVzZSBubyBlbmNyeXB0aW9uLiAgVGhpcyBw
b2xpY3kgaXMgTk9UIFJFQ09NTUVOREVEIGZvciBTUlRQIHVubGVzcwotICogdGhlcmUgaXMgYSBy
ZXF1aXJlbWVudCB0byBmb3JlZ28gZW5jcnlwdGlvbi4gIAotICogCisgKiB0aGVyZSBpcyBhIHJl
cXVpcmVtZW50IHRvIGZvcmVnbyBlbmNyeXB0aW9uLgorICoKICAqIFRoaXMgZnVuY3Rpb24gaXMg
YSBjb252ZW5pZW5jZSB0aGF0IGhlbHBzIHRvIGF2b2lkIGRlYWxpbmcgZGlyZWN0bHkKICAqIHdp
dGggdGhlIHBvbGljeSBkYXRhIHN0cnVjdHVyZS4gIFlvdSBhcmUgZW5jb3VyYWdlZCB0byBpbml0
aWFsaXplCiAgKiBwb2xpY3kgZWxlbWVudHMgd2l0aCB0aGlzIGZ1bmN0aW9uIGNhbGwuICBEb2lu
ZyBzbyBtYXkgYWxsb3cgeW91cgpAQCAtODI4LDI0ICs4MTEsMjQgQEAgdm9pZCBzcnRwX2NyeXB0
b19wb2xpY3lfc2V0X2Flc19jbV8xMjhfbnVsbF9hdXRoKHNydHBfY3J5cHRvX3BvbGljeV90ICpw
KTsKICAqIGluY2x1ZGUgbW9yZSBlbGVtZW50cyBpbiB0aGUgc3J0cF9jcnlwdG9fcG9saWN5X3Qg
ZGF0YXR5cGUuCiAgKgogICogQHdhcm5pbmcgVGhpcyBwb2xpY3kgaXMgTk9UIFJFQ09NTUVOREVE
IGZvciBTUlRQIHVubGVzcyB0aGVyZSBpcyBhCi0gKiByZXF1aXJlbWVudCB0byBmb3JlZ28gZW5j
cnlwdGlvbi4gIAorICogcmVxdWlyZW1lbnQgdG8gZm9yZWdvIGVuY3J5cHRpb24uCiAgKgogICog
QHJldHVybiB2b2lkLgotICogCisgKgogICovCiB2b2lkIHNydHBfY3J5cHRvX3BvbGljeV9zZXRf
bnVsbF9jaXBoZXJfaG1hY19zaGExXzgwKHNydHBfY3J5cHRvX3BvbGljeV90ICpwKTsKIAogLyoq
CiAgKiBAYnJpZWYgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9udWxsX2NpcGhlcl9obWFjX251bGwo
KSBzZXRzIGEgY3J5cHRvCi0gKiBwb2xpY3kgc3RydWN0dXJlIHRvIHVzZSBubyBlbmNyeXB0aW9u
IG9yIGF1dGhlbnRpY2F0aW9uLiAKKyAqIHBvbGljeSBzdHJ1Y3R1cmUgdG8gdXNlIG5vIGVuY3J5
cHRpb24gb3IgYXV0aGVudGljYXRpb24uCisgKgorICogQHBhcmFtIHAgaXMgYSBwb2ludGVyIHRv
IHRoZSBwb2xpY3kgc3RydWN0dXJlIHRvIGJlIHNldAogICoKLSAqIEBwYXJhbSBwIGlzIGEgcG9p
bnRlciB0byB0aGUgcG9saWN5IHN0cnVjdHVyZSB0byBiZSBzZXQgCi0gKiAKICAqIFRoZSBmdW5j
dGlvbiBjYWxsIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfbnVsbF9jaXBoZXJfaG1hY19udWxsKCZw
KQogICogc2V0cyB0aGUgc3J0cF9jcnlwdG9fcG9saWN5X3QgYXQgbG9jYXRpb24gcCB0byB1c2Ug
bm8gZW5jcnlwdGlvbiBhbmQKICAqIG5vIGF1dGhlbnRpY2F0aW9uLiAgVGhpcyBwb2xpY3kgc2hv
dWxkIG9ubHkgYmUgdXNlZCBmb3IgdGVzdGluZyBhbmQKLSAqIHRyb3VibGVzaG9vdGluZ2wuIAot
ICogCisgKiB0cm91Ymxlc2hvb3RpbmdsLgorICoKICAqIFRoaXMgZnVuY3Rpb24gaXMgYSBjb252
ZW5pZW5jZSB0aGF0IGhlbHBzIHRvIGF2b2lkIGRlYWxpbmcgZGlyZWN0bHkKICAqIHdpdGggdGhl
IHBvbGljeSBkYXRhIHN0cnVjdHVyZS4gIFlvdSBhcmUgZW5jb3VyYWdlZCB0byBpbml0aWFsaXpl
CiAgKiBwb2xpY3kgZWxlbWVudHMgd2l0aCB0aGlzIGZ1bmN0aW9uIGNhbGwuICBEb2luZyBzbyBt
YXkgYWxsb3cgeW91cgpAQCAtODUzLDI3ICs4MzYsMjYgQEAgdm9pZCBzcnRwX2NyeXB0b19wb2xp
Y3lfc2V0X251bGxfY2lwaGVyX2htYWNfc2hhMV84MChzcnRwX2NyeXB0b19wb2xpY3lfdCAqcCk7
CiAgKiBpbmNsdWRlIG1vcmUgZWxlbWVudHMgaW4gdGhlIHNydHBfY3J5cHRvX3BvbGljeV90IGRh
dGF0eXBlLgogICoKICAqIEB3YXJuaW5nIFRoaXMgcG9saWN5IGlzIE5PVCBSRUNPTU1FTkRFRCBm
b3IgU1JUUCB1bmxlc3MgdGhlcmUgaXMgYQotICogcmVxdWlyZW1lbnQgdG8gZm9yZWdvIGVuY3J5
cHRpb24gYW5kIGF1dGhlbnRpY2F0aW9uLiAgCisgKiByZXF1aXJlbWVudCB0byBmb3JlZ28gZW5j
cnlwdGlvbiBhbmQgYXV0aGVudGljYXRpb24uCiAgKgogICogQHJldHVybiB2b2lkLgotICogCisg
KgogICovCiB2b2lkIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfbnVsbF9jaXBoZXJfaG1hY19udWxs
KHNydHBfY3J5cHRvX3BvbGljeV90ICpwKTsKIAotCiAvKioKICAqIEBicmllZiBzcnRwX2NyeXB0
b19wb2xpY3lfc2V0X2Flc19jbV8yNTZfaG1hY19zaGExXzgwKCkgc2V0cyBhIGNyeXB0bwotICog
cG9saWN5IHN0cnVjdHVyZSB0byBhIGVuY3J5cHRpb24gYW5kIGF1dGhlbnRpY2F0aW9uIHBvbGlj
eSB1c2luZyBBRVMtMjU2IAorICogcG9saWN5IHN0cnVjdHVyZSB0byBhIGVuY3J5cHRpb24gYW5k
IGF1dGhlbnRpY2F0aW9uIHBvbGljeSB1c2luZyBBRVMtMjU2CiAgKiBmb3IgUlRQIHByb3RlY3Rp
b24uCiAgKgotICogQHBhcmFtIHAgaXMgYSBwb2ludGVyIHRvIHRoZSBwb2xpY3kgc3RydWN0dXJl
IHRvIGJlIHNldCAKLSAqIAorICogQHBhcmFtIHAgaXMgYSBwb2ludGVyIHRvIHRoZSBwb2xpY3kg
c3RydWN0dXJlIHRvIGJlIHNldAorICoKICAqIFRoZSBmdW5jdGlvbiBjYWxsIHNydHBfY3J5cHRv
X3BvbGljeV9zZXRfYWVzX2NtXzI1Nl9obWFjX3NoYTFfODAoJnApCiAgKiBzZXRzIHRoZSBzcnRw
X2NyeXB0b19wb2xpY3lfdCBhdCBsb2NhdGlvbiBwIHRvIHVzZSBwb2xpY3kKICAqIEFFU19DTV8y
NTZfSE1BQ19TSEExXzgwIGFzIGRlZmluZWQgaW4gUkZDIDYxODguICBUaGlzIHBvbGljeSB1c2Vz
IEFFUy0yNTYKICAqIENvdW50ZXIgTW9kZSBlbmNyeXB0aW9uIGFuZCBITUFDLVNIQTEgYXV0aGVu
dGljYXRpb24sIHdpdGggYW4gODAgYml0CiAgKiBhdXRoZW50aWNhdGlvbiB0YWcuCi0gKiAKKyAq
CiAgKiBUaGlzIGZ1bmN0aW9uIGlzIGEgY29udmVuaWVuY2UgdGhhdCBoZWxwcyB0byBhdm9pZCBk
ZWFsaW5nIGRpcmVjdGx5CiAgKiB3aXRoIHRoZSBwb2xpY3kgZGF0YSBzdHJ1Y3R1cmUuICBZb3Ug
YXJlIGVuY291cmFnZWQgdG8gaW5pdGlhbGl6ZQogICogcG9saWN5IGVsZW1lbnRzIHdpdGggdGhp
cyBmdW5jdGlvbiBjYWxsLiAgRG9pbmcgc28gbWF5IGFsbG93IHlvdXIKQEAgLTg4MSwxOSArODYz
LDE3IEBAIHZvaWQgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9udWxsX2NpcGhlcl9obWFjX251bGwo
c3J0cF9jcnlwdG9fcG9saWN5X3QgKnApOwogICogaW5jbHVkZSBtb3JlIGVsZW1lbnRzIGluIHRo
ZSBzcnRwX2NyeXB0b19wb2xpY3lfdCBkYXRhdHlwZS4KICAqCiAgKiBAcmV0dXJuIHZvaWQuCi0g
KiAKKyAqCiAgKi8KLQogdm9pZCBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19jbV8yNTZfaG1h
Y19zaGExXzgwKHNydHBfY3J5cHRvX3BvbGljeV90ICpwKTsKIAotCiAvKioKICAqIEBicmllZiBz
cnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19jbV8yNTZfaG1hY19zaGExXzMyKCkgc2V0cyBhIGNy
eXB0bwogICogcG9saWN5IHN0cnVjdHVyZSB0byBhIHNob3J0LWF1dGhlbnRpY2F0aW9uIHRhZyBw
b2xpY3kgdXNpbmcgQUVTLTI1NgogICogZW5jcnlwdGlvbi4KICAqCi0gKiBAcGFyYW0gcCBpcyBh
IHBvaW50ZXIgdG8gdGhlIHBvbGljeSBzdHJ1Y3R1cmUgdG8gYmUgc2V0IAotICogCisgKiBAcGFy
YW0gcCBpcyBhIHBvaW50ZXIgdG8gdGhlIHBvbGljeSBzdHJ1Y3R1cmUgdG8gYmUgc2V0CisgKgog
ICogVGhlIGZ1bmN0aW9uIGNhbGwgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfY21fMjU2X2ht
YWNfc2hhMV8zMigmcCkKICAqIHNldHMgdGhlIHNydHBfY3J5cHRvX3BvbGljeV90IGF0IGxvY2F0
aW9uIHAgdG8gdXNlIHBvbGljeQogICogQUVTX0NNXzI1Nl9ITUFDX1NIQTFfMzIgYXMgZGVmaW5l
ZCBpbiBSRkMgNjE4OC4gIFRoaXMgcG9saWN5IHVzZXMgQUVTLTI1NgpAQCAtOTAyLDcgKzg4Miw3
IEBAIHZvaWQgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfY21fMjU2X2htYWNfc2hhMV84MChz
cnRwX2NyeXB0b19wb2xpY3lfdCAqcCk7CiAgKiBjb25zaWRlcmVkIGFkZXF1YXRlIG9ubHkgZm9y
IHByb3RlY3RpbmcgYXVkaW8gYW5kIHZpZGVvIG1lZGlhIHRoYXQKICAqIHVzZSBhIHN0YXRlbGVz
cyBwbGF5YmFjayBmdW5jdGlvbi4gIFNlZSBTZWN0aW9uIDcuNSBvZiBSRkMgMzcxMQogICogKGh0
dHA6Ly93d3cuaWV0Zi5vcmcvcmZjL3JmYzM3MTEudHh0KS4KLSAqIAorICoKICAqIFRoaXMgZnVu
Y3Rpb24gaXMgYSBjb252ZW5pZW5jZSB0aGF0IGhlbHBzIHRvIGF2b2lkIGRlYWxpbmcgZGlyZWN0
bHkKICAqIHdpdGggdGhlIHBvbGljeSBkYXRhIHN0cnVjdHVyZS4gIFlvdSBhcmUgZW5jb3VyYWdl
ZCB0byBpbml0aWFsaXplCiAgKiBwb2xpY3kgZWxlbWVudHMgd2l0aCB0aGlzIGZ1bmN0aW9uIGNh
bGwuICBEb2luZyBzbyBtYXkgYWxsb3cgeW91cgpAQCAtOTE1LDkgKzg5NSw4IEBAIHZvaWQgc3J0
cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfY21fMjU2X2htYWNfc2hhMV84MChzcnRwX2NyeXB0b19w
b2xpY3lfdCAqcCk7CiAgKiAoaHR0cDovL3d3dy5pZXRmLm9yZy9yZmMvcmZjMzcxMS50eHQpLgog
ICoKICAqIEByZXR1cm4gdm9pZC4KLSAqIAorICoKICAqLwotCiB2b2lkIHNydHBfY3J5cHRvX3Bv
bGljeV9zZXRfYWVzX2NtXzI1Nl9obWFjX3NoYTFfMzIoc3J0cF9jcnlwdG9fcG9saWN5X3QgKnAp
OwogCiAvKioKQEAgLTk0Nyw3ICs5MjYsNiBAQCB2b2lkIHNydHBfY3J5cHRvX3BvbGljeV9zZXRf
YWVzX2NtXzI1Nl9obWFjX3NoYTFfMzIoc3J0cF9jcnlwdG9fcG9saWN5X3QgKnApOwogICovCiB2
b2lkIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2NtXzI1Nl9udWxsX2F1dGgoc3J0cF9jcnlw
dG9fcG9saWN5X3QgKnApOwogCi0KIC8qKgogICogQGJyaWVmIHNydHBfY3J5cHRvX3BvbGljeV9z
ZXRfYWVzX2NtXzE5Ml9obWFjX3NoYTFfODAoKSBzZXRzIGEgY3J5cHRvCiAgKiBwb2xpY3kgc3Ry
dWN0dXJlIHRvIGEgZW5jcnlwdGlvbiBhbmQgYXV0aGVudGljYXRpb24gcG9saWN5IHVzaW5nIEFF
Uy0xOTIKQEAgLTk3Miw3ICs5NTAsNiBAQCB2b2lkIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVz
X2NtXzI1Nl9udWxsX2F1dGgoc3J0cF9jcnlwdG9fcG9saWN5X3QgKnApOwogICovCiB2b2lkIHNy
dHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2NtXzE5Ml9obWFjX3NoYTFfODAoc3J0cF9jcnlwdG9f
cG9saWN5X3QgKnApOwogCi0KIC8qKgogICogQGJyaWVmIHNydHBfY3J5cHRvX3BvbGljeV9zZXRf
YWVzX2NtXzE5Ml9obWFjX3NoYTFfMzIoKSBzZXRzIGEgY3J5cHRvCiAgKiBwb2xpY3kgc3RydWN0
dXJlIHRvIGEgc2hvcnQtYXV0aGVudGljYXRpb24gdGFnIHBvbGljeSB1c2luZyBBRVMtMTkyCkBA
IC0xMDA1LDcgKzk4Miw2IEBAIHZvaWQgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfY21fMTky
X2htYWNfc2hhMV84MChzcnRwX2NyeXB0b19wb2xpY3lfdCAqcCk7CiAgKi8KIHZvaWQgc3J0cF9j
cnlwdG9fcG9saWN5X3NldF9hZXNfY21fMTkyX2htYWNfc2hhMV8zMihzcnRwX2NyeXB0b19wb2xp
Y3lfdCAqcCk7CiAKLQogLyoqCiAgKiBAYnJpZWYgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNf
Y21fMTkyX251bGxfYXV0aCgpIHNldHMgYSBjcnlwdG8KICAqIHBvbGljeSBzdHJ1Y3R1cmUgdG8g
YW4gZW5jcnlwdGlvbi1vbmx5IHBvbGljeQpAQCAtMTAzMywxOSArMTAwOSwxOCBAQCB2b2lkIHNy
dHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2NtXzE5Ml9obWFjX3NoYTFfMzIoc3J0cF9jcnlwdG9f
cG9saWN5X3QgKnApOwogICovCiB2b2lkIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2NtXzE5
Ml9udWxsX2F1dGgoc3J0cF9jcnlwdG9fcG9saWN5X3QgKnApOwogCi0KIC8qKgogICogQGJyaWVm
IHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2djbV8xMjhfOF9hdXRoKCkgc2V0cyBhIGNyeXB0
bwogICogcG9saWN5IHN0cnVjdHVyZSB0byBhbiBBRUFEIGVuY3J5cHRpb24gcG9saWN5LgogICoK
LSAqIEBwYXJhbSBwIGlzIGEgcG9pbnRlciB0byB0aGUgcG9saWN5IHN0cnVjdHVyZSB0byBiZSBz
ZXQgCi0gKiAKKyAqIEBwYXJhbSBwIGlzIGEgcG9pbnRlciB0byB0aGUgcG9saWN5IHN0cnVjdHVy
ZSB0byBiZSBzZXQKKyAqCiAgKiBUaGUgZnVuY3Rpb24gY2FsbCBzcnRwX2NyeXB0b19wb2xpY3lf
c2V0X2Flc19nY21fMTI4XzhfYXV0aCgmcCkgc2V0cwogICogdGhlIHNydHBfY3J5cHRvX3BvbGlj
eV90IGF0IGxvY2F0aW9uIHAgdG8gdXNlIHRoZSBTUlRQIGRlZmF1bHQgY2lwaGVyCiAgKiAoQUVT
LTEyOCBHYWxvaXMgQ291bnRlciBNb2RlKSB3aXRoIDggb2N0ZXQgYXV0aCB0YWcuICBUaGlzCiAg
KiBwb2xpY3kgYXBwbGllcyBjb25maWRlbnRpYWxpdHkgYW5kIGF1dGhlbnRpY2F0aW9uIHRvIGJv
dGggdGhlCiAgKiBSVFAgYW5kIFJUQ1AgcGFja2V0cy4KLSAqIAorICoKICAqIFRoaXMgZnVuY3Rp
b24gaXMgYSBjb252ZW5pZW5jZSB0aGF0IGhlbHBzIHRvIGF2b2lkIGRlYWxpbmcgZGlyZWN0bHkK
ICAqIHdpdGggdGhlIHBvbGljeSBkYXRhIHN0cnVjdHVyZS4gIFlvdSBhcmUgZW5jb3VyYWdlZCB0
byBpbml0aWFsaXplCiAgKiBwb2xpY3kgZWxlbWVudHMgd2l0aCB0aGlzIGZ1bmN0aW9uIGNhbGwu
ICBEb2luZyBzbyBtYXkgYWxsb3cgeW91cgpAQCAtMTA1Myw3ICsxMDI4LDcgQEAgdm9pZCBzcnRw
X2NyeXB0b19wb2xpY3lfc2V0X2Flc19jbV8xOTJfbnVsbF9hdXRoKHNydHBfY3J5cHRvX3BvbGlj
eV90ICpwKTsKICAqIGluY2x1ZGUgbW9yZSBlbGVtZW50cyBpbiB0aGUgc3J0cF9jcnlwdG9fcG9s
aWN5X3QgZGF0YXR5cGUuCiAgKgogICogQHJldHVybiB2b2lkLgotICogCisgKgogICovCiB2b2lk
IHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2djbV8xMjhfOF9hdXRoKHNydHBfY3J5cHRvX3Bv
bGljeV90ICpwKTsKIApAQCAtMTA2MSwxNCArMTAzNiwxNCBAQCB2b2lkIHNydHBfY3J5cHRvX3Bv
bGljeV9zZXRfYWVzX2djbV8xMjhfOF9hdXRoKHNydHBfY3J5cHRvX3BvbGljeV90ICpwKTsKICAq
IEBicmllZiBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21fMjU2XzhfYXV0aCgpIHNldHMg
YSBjcnlwdG8KICAqIHBvbGljeSBzdHJ1Y3R1cmUgdG8gYW4gQUVBRCBlbmNyeXB0aW9uIHBvbGlj
eQogICoKLSAqIEBwYXJhbSBwIGlzIGEgcG9pbnRlciB0byB0aGUgcG9saWN5IHN0cnVjdHVyZSB0
byBiZSBzZXQgCi0gKiAKKyAqIEBwYXJhbSBwIGlzIGEgcG9pbnRlciB0byB0aGUgcG9saWN5IHN0
cnVjdHVyZSB0byBiZSBzZXQKKyAqCiAgKiBUaGUgZnVuY3Rpb24gY2FsbCBzcnRwX2NyeXB0b19w
b2xpY3lfc2V0X2Flc19nY21fMjU2XzhfYXV0aCgmcCkgc2V0cwogICogdGhlIHNydHBfY3J5cHRv
X3BvbGljeV90IGF0IGxvY2F0aW9uIHAgdG8gdXNlIHRoZSBTUlRQIGRlZmF1bHQgY2lwaGVyCi0g
KiAoQUVTLTI1NiBHYWxvaXMgQ291bnRlciBNb2RlKSB3aXRoIDggb2N0ZXQgYXV0aCB0YWcuICBU
aGlzIAorICogKEFFUy0yNTYgR2Fsb2lzIENvdW50ZXIgTW9kZSkgd2l0aCA4IG9jdGV0IGF1dGgg
dGFnLiAgVGhpcwogICogcG9saWN5IGFwcGxpZXMgY29uZmlkZW50aWFsaXR5IGFuZCBhdXRoZW50
aWNhdGlvbiB0byBib3RoIHRoZQogICogUlRQIGFuZCBSVENQIHBhY2tldHMuCi0gKiAKKyAqCiAg
KiBUaGlzIGZ1bmN0aW9uIGlzIGEgY29udmVuaWVuY2UgdGhhdCBoZWxwcyB0byBhdm9pZCBkZWFs
aW5nIGRpcmVjdGx5CiAgKiB3aXRoIHRoZSBwb2xpY3kgZGF0YSBzdHJ1Y3R1cmUuICBZb3UgYXJl
IGVuY291cmFnZWQgdG8gaW5pdGlhbGl6ZQogICogcG9saWN5IGVsZW1lbnRzIHdpdGggdGhpcyBm
dW5jdGlvbiBjYWxsLiAgRG9pbmcgc28gbWF5IGFsbG93IHlvdXIKQEAgLTEwNzYsNyArMTA1MSw3
IEBAIHZvaWQgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfZ2NtXzEyOF84X2F1dGgoc3J0cF9j
cnlwdG9fcG9saWN5X3QgKnApOwogICogaW5jbHVkZSBtb3JlIGVsZW1lbnRzIGluIHRoZSBzcnRw
X2NyeXB0b19wb2xpY3lfdCBkYXRhdHlwZS4KICAqCiAgKiBAcmV0dXJuIHZvaWQuCi0gKiAKKyAq
CiAgKi8KIHZvaWQgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfZ2NtXzI1Nl84X2F1dGgoc3J0
cF9jcnlwdG9fcG9saWN5X3QgKnApOwogCkBAIC0xMDg0LDE0ICsxMDU5LDE0IEBAIHZvaWQgc3J0
cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfZ2NtXzI1Nl84X2F1dGgoc3J0cF9jcnlwdG9fcG9saWN5
X3QgKnApOwogICogQGJyaWVmIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2djbV8xMjhfOF9v
bmx5X2F1dGgoKSBzZXRzIGEgY3J5cHRvCiAgKiBwb2xpY3kgc3RydWN0dXJlIHRvIGFuIEFFQUQg
YXV0aGVudGljYXRpb24tb25seSBwb2xpY3kKICAqCi0gKiBAcGFyYW0gcCBpcyBhIHBvaW50ZXIg
dG8gdGhlIHBvbGljeSBzdHJ1Y3R1cmUgdG8gYmUgc2V0IAotICogCisgKiBAcGFyYW0gcCBpcyBh
IHBvaW50ZXIgdG8gdGhlIHBvbGljeSBzdHJ1Y3R1cmUgdG8gYmUgc2V0CisgKgogICogVGhlIGZ1
bmN0aW9uIGNhbGwgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfZ2NtXzEyOF84X29ubHlfYXV0
aCgmcCkgc2V0cwogICogdGhlIHNydHBfY3J5cHRvX3BvbGljeV90IGF0IGxvY2F0aW9uIHAgdG8g
dXNlIHRoZSBTUlRQIGRlZmF1bHQgY2lwaGVyCi0gKiAoQUVTLTEyOCBHYWxvaXMgQ291bnRlciBN
b2RlKSB3aXRoIDggb2N0ZXQgYXV0aCB0YWcuICBUaGlzIHBvbGljeSAKLSAqIGFwcGxpZXMgY29u
ZmlkZW50aWFsaXR5IGFuZCBhdXRoZW50aWNhdGlvbiB0byB0aGUgUlRQIHBhY2tldHMsIAorICog
KEFFUy0xMjggR2Fsb2lzIENvdW50ZXIgTW9kZSkgd2l0aCA4IG9jdGV0IGF1dGggdGFnLiAgVGhp
cyBwb2xpY3kKKyAqIGFwcGxpZXMgY29uZmlkZW50aWFsaXR5IGFuZCBhdXRoZW50aWNhdGlvbiB0
byB0aGUgUlRQIHBhY2tldHMsCiAgKiBidXQgb25seSBhdXRoZW50aWNhdGlvbiB0byB0aGUgUlRD
UCBwYWNrZXRzLgotICogCisgKgogICogVGhpcyBmdW5jdGlvbiBpcyBhIGNvbnZlbmllbmNlIHRo
YXQgaGVscHMgdG8gYXZvaWQgZGVhbGluZyBkaXJlY3RseQogICogd2l0aCB0aGUgcG9saWN5IGRh
dGEgc3RydWN0dXJlLiAgWW91IGFyZSBlbmNvdXJhZ2VkIHRvIGluaXRpYWxpemUKICAqIHBvbGlj
eSBlbGVtZW50cyB3aXRoIHRoaXMgZnVuY3Rpb24gY2FsbC4gIERvaW5nIHNvIG1heSBhbGxvdyB5
b3VyCkBAIC0xMDk5LDcgKzEwNzQsNyBAQCB2b2lkIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVz
X2djbV8yNTZfOF9hdXRoKHNydHBfY3J5cHRvX3BvbGljeV90ICpwKTsKICAqIGluY2x1ZGUgbW9y
ZSBlbGVtZW50cyBpbiB0aGUgc3J0cF9jcnlwdG9fcG9saWN5X3QgZGF0YXR5cGUuCiAgKgogICog
QHJldHVybiB2b2lkLgotICogCisgKgogICovCiB2b2lkIHNydHBfY3J5cHRvX3BvbGljeV9zZXRf
YWVzX2djbV8xMjhfOF9vbmx5X2F1dGgoc3J0cF9jcnlwdG9fcG9saWN5X3QgKnApOwogCkBAIC0x
MTA3LDE0ICsxMDgyLDE0IEBAIHZvaWQgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfZ2NtXzEy
OF84X29ubHlfYXV0aChzcnRwX2NyeXB0b19wb2xpY3lfdCAqcCk7CiAgKiBAYnJpZWYgc3J0cF9j
cnlwdG9fcG9saWN5X3NldF9hZXNfZ2NtXzI1Nl84X29ubHlfYXV0aCgpIHNldHMgYSBjcnlwdG8K
ICAqIHBvbGljeSBzdHJ1Y3R1cmUgdG8gYW4gQUVBRCBhdXRoZW50aWNhdGlvbi1vbmx5IHBvbGlj
eQogICoKLSAqIEBwYXJhbSBwIGlzIGEgcG9pbnRlciB0byB0aGUgcG9saWN5IHN0cnVjdHVyZSB0
byBiZSBzZXQgCi0gKiAKKyAqIEBwYXJhbSBwIGlzIGEgcG9pbnRlciB0byB0aGUgcG9saWN5IHN0
cnVjdHVyZSB0byBiZSBzZXQKKyAqCiAgKiBUaGUgZnVuY3Rpb24gY2FsbCBzcnRwX2NyeXB0b19w
b2xpY3lfc2V0X2Flc19nY21fMjU2Xzhfb25seV9hdXRoKCZwKSBzZXRzCiAgKiB0aGUgc3J0cF9j
cnlwdG9fcG9saWN5X3QgYXQgbG9jYXRpb24gcCB0byB1c2UgdGhlIFNSVFAgZGVmYXVsdCBjaXBo
ZXIKLSAqIChBRVMtMjU2IEdhbG9pcyBDb3VudGVyIE1vZGUpIHdpdGggOCBvY3RldCBhdXRoIHRh
Zy4gIFRoaXMgcG9saWN5IAotICogYXBwbGllcyBjb25maWRlbnRpYWxpdHkgYW5kIGF1dGhlbnRp
Y2F0aW9uIHRvIHRoZSBSVFAgcGFja2V0cywgCisgKiAoQUVTLTI1NiBHYWxvaXMgQ291bnRlciBN
b2RlKSB3aXRoIDggb2N0ZXQgYXV0aCB0YWcuICBUaGlzIHBvbGljeQorICogYXBwbGllcyBjb25m
aWRlbnRpYWxpdHkgYW5kIGF1dGhlbnRpY2F0aW9uIHRvIHRoZSBSVFAgcGFja2V0cywKICAqIGJ1
dCBvbmx5IGF1dGhlbnRpY2F0aW9uIHRvIHRoZSBSVENQIHBhY2tldHMuCi0gKiAKKyAqCiAgKiBU
aGlzIGZ1bmN0aW9uIGlzIGEgY29udmVuaWVuY2UgdGhhdCBoZWxwcyB0byBhdm9pZCBkZWFsaW5n
IGRpcmVjdGx5CiAgKiB3aXRoIHRoZSBwb2xpY3kgZGF0YSBzdHJ1Y3R1cmUuICBZb3UgYXJlIGVu
Y291cmFnZWQgdG8gaW5pdGlhbGl6ZQogICogcG9saWN5IGVsZW1lbnRzIHdpdGggdGhpcyBmdW5j
dGlvbiBjYWxsLiAgRG9pbmcgc28gbWF5IGFsbG93IHlvdXIKQEAgLTExMjIsNyArMTA5Nyw3IEBA
IHZvaWQgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfZ2NtXzEyOF84X29ubHlfYXV0aChzcnRw
X2NyeXB0b19wb2xpY3lfdCAqcCk7CiAgKiBpbmNsdWRlIG1vcmUgZWxlbWVudHMgaW4gdGhlIHNy
dHBfY3J5cHRvX3BvbGljeV90IGRhdGF0eXBlLgogICoKICAqIEByZXR1cm4gdm9pZC4KLSAqIAor
ICoKICAqLwogdm9pZCBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21fMjU2Xzhfb25seV9h
dXRoKHNydHBfY3J5cHRvX3BvbGljeV90ICpwKTsKIApAQCAtMTEzMCwxNCArMTEwNSwxNCBAQCB2
b2lkIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2djbV8yNTZfOF9vbmx5X2F1dGgoc3J0cF9j
cnlwdG9fcG9saWN5X3QgKnApOwogICogQGJyaWVmIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVz
X2djbV8xMjhfMTZfYXV0aCgpIHNldHMgYSBjcnlwdG8KICAqIHBvbGljeSBzdHJ1Y3R1cmUgdG8g
YW4gQUVBRCBlbmNyeXB0aW9uIHBvbGljeS4KICAqCi0gKiBAcGFyYW0gcCBpcyBhIHBvaW50ZXIg
dG8gdGhlIHBvbGljeSBzdHJ1Y3R1cmUgdG8gYmUgc2V0IAotICogCisgKiBAcGFyYW0gcCBpcyBh
IHBvaW50ZXIgdG8gdGhlIHBvbGljeSBzdHJ1Y3R1cmUgdG8gYmUgc2V0CisgKgogICogVGhlIGZ1
bmN0aW9uIGNhbGwgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfZ2NtXzEyOF8xNl9hdXRoKCZw
KSBzZXRzCiAgKiB0aGUgc3J0cF9jcnlwdG9fcG9saWN5X3QgYXQgbG9jYXRpb24gcCB0byB1c2Ug
dGhlIFNSVFAgZGVmYXVsdCBjaXBoZXIKICAqIChBRVMtMTI4IEdhbG9pcyBDb3VudGVyIE1vZGUp
IHdpdGggMTYgb2N0ZXQgYXV0aCB0YWcuICBUaGlzCiAgKiBwb2xpY3kgYXBwbGllcyBjb25maWRl
bnRpYWxpdHkgYW5kIGF1dGhlbnRpY2F0aW9uIHRvIGJvdGggdGhlCiAgKiBSVFAgYW5kIFJUQ1Ag
cGFja2V0cy4KLSAqIAorICoKICAqIFRoaXMgZnVuY3Rpb24gaXMgYSBjb252ZW5pZW5jZSB0aGF0
IGhlbHBzIHRvIGF2b2lkIGRlYWxpbmcgZGlyZWN0bHkKICAqIHdpdGggdGhlIHBvbGljeSBkYXRh
IHN0cnVjdHVyZS4gIFlvdSBhcmUgZW5jb3VyYWdlZCB0byBpbml0aWFsaXplCiAgKiBwb2xpY3kg
ZWxlbWVudHMgd2l0aCB0aGlzIGZ1bmN0aW9uIGNhbGwuICBEb2luZyBzbyBtYXkgYWxsb3cgeW91
cgpAQCAtMTE0NSw3ICsxMTIwLDcgQEAgdm9pZCBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19n
Y21fMjU2Xzhfb25seV9hdXRoKHNydHBfY3J5cHRvX3BvbGljeV90ICpwKTsKICAqIGluY2x1ZGUg
bW9yZSBlbGVtZW50cyBpbiB0aGUgc3J0cF9jcnlwdG9fcG9saWN5X3QgZGF0YXR5cGUuCiAgKgog
ICogQHJldHVybiB2b2lkLgotICogCisgKgogICovCiB2b2lkIHNydHBfY3J5cHRvX3BvbGljeV9z
ZXRfYWVzX2djbV8xMjhfMTZfYXV0aChzcnRwX2NyeXB0b19wb2xpY3lfdCAqcCk7CiAKQEAgLTEx
NTMsMTQgKzExMjgsMTQgQEAgdm9pZCBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21fMTI4
XzE2X2F1dGgoc3J0cF9jcnlwdG9fcG9saWN5X3QgKnApOwogICogQGJyaWVmIHNydHBfY3J5cHRv
X3BvbGljeV9zZXRfYWVzX2djbV8yNTZfMTZfYXV0aCgpIHNldHMgYSBjcnlwdG8KICAqIHBvbGlj
eSBzdHJ1Y3R1cmUgdG8gYW4gQUVBRCBlbmNyeXB0aW9uIHBvbGljeQogICoKLSAqIEBwYXJhbSBw
IGlzIGEgcG9pbnRlciB0byB0aGUgcG9saWN5IHN0cnVjdHVyZSB0byBiZSBzZXQgCi0gKiAKKyAq
IEBwYXJhbSBwIGlzIGEgcG9pbnRlciB0byB0aGUgcG9saWN5IHN0cnVjdHVyZSB0byBiZSBzZXQK
KyAqCiAgKiBUaGUgZnVuY3Rpb24gY2FsbCBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21f
MjU2XzE2X2F1dGgoJnApIHNldHMKICAqIHRoZSBzcnRwX2NyeXB0b19wb2xpY3lfdCBhdCBsb2Nh
dGlvbiBwIHRvIHVzZSB0aGUgU1JUUCBkZWZhdWx0IGNpcGhlcgotICogKEFFUy0yNTYgR2Fsb2lz
IENvdW50ZXIgTW9kZSkgd2l0aCAxNiBvY3RldCBhdXRoIHRhZy4gIFRoaXMgCisgKiAoQUVTLTI1
NiBHYWxvaXMgQ291bnRlciBNb2RlKSB3aXRoIDE2IG9jdGV0IGF1dGggdGFnLiAgVGhpcwogICog
cG9saWN5IGFwcGxpZXMgY29uZmlkZW50aWFsaXR5IGFuZCBhdXRoZW50aWNhdGlvbiB0byBib3Ro
IHRoZQogICogUlRQIGFuZCBSVENQIHBhY2tldHMuCi0gKiAKKyAqCiAgKiBUaGlzIGZ1bmN0aW9u
IGlzIGEgY29udmVuaWVuY2UgdGhhdCBoZWxwcyB0byBhdm9pZCBkZWFsaW5nIGRpcmVjdGx5CiAg
KiB3aXRoIHRoZSBwb2xpY3kgZGF0YSBzdHJ1Y3R1cmUuICBZb3UgYXJlIGVuY291cmFnZWQgdG8g
aW5pdGlhbGl6ZQogICogcG9saWN5IGVsZW1lbnRzIHdpdGggdGhpcyBmdW5jdGlvbiBjYWxsLiAg
RG9pbmcgc28gbWF5IGFsbG93IHlvdXIKQEAgLTExNjgsMTUgKzExNDMsMTQgQEAgdm9pZCBzcnRw
X2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21fMTI4XzE2X2F1dGgoc3J0cF9jcnlwdG9fcG9saWN5
X3QgKnApOwogICogaW5jbHVkZSBtb3JlIGVsZW1lbnRzIGluIHRoZSBzcnRwX2NyeXB0b19wb2xp
Y3lfdCBkYXRhdHlwZS4KICAqCiAgKiBAcmV0dXJuIHZvaWQuCi0gKiAKKyAqCiAgKi8KIHZvaWQg
c3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfZ2NtXzI1Nl8xNl9hdXRoKHNydHBfY3J5cHRvX3Bv
bGljeV90ICpwKTsKIAotCiAvKioKICAqIEBicmllZiBzcnRwX2RlYWxsb2MoKSBkZWFsbG9jYXRl
cyBzdG9yYWdlIGZvciBhbiBTUlRQIHNlc3Npb24KICAqIGNvbnRleHQuCi0gKiAKKyAqCiAgKiBU
aGUgZnVuY3Rpb24gY2FsbCBzcnRwX2RlYWxsb2MocykgZGVhbGxvY2F0ZXMgc3RvcmFnZSBmb3Ig
dGhlCiAgKiBTUlRQIHNlc3Npb24gY29udGV4dCBzLiAgVGhpcyBmdW5jdGlvbiBzaG91bGQgYmUg
Y2FsbGVkIG5vIG1vcmUKICAqIHRoYW4gb25lIHRpbWUgZm9yIGVhY2ggb2YgdGhlIGNvbnRleHRz
IGFsbG9jYXRlZCBieSB0aGUgZnVuY3Rpb24KQEAgLTExODgsMzAgKzExNjIsMjYgQEAgdm9pZCBz
cnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21fMjU2XzE2X2F1dGgoc3J0cF9jcnlwdG9fcG9s
aWN5X3QgKnApOwogICogICAgLSBzcnRwX2Vycl9zdGF0dXNfb2sgICAgICAgICAgICAgaWYgdGhl
cmUgbm8gcHJvYmxlbXMuCiAgKiAgICAtIHNydHBfZXJyX3N0YXR1c19kZWFsbG9jX2ZhaWwgICBh
IG1lbW9yeSBkZWFsbG9jYXRpb24gZmFpbHVyZSBvY2N1cmVkLgogICovCi0KIHNydHBfZXJyX3N0
YXR1c190IHNydHBfZGVhbGxvYyhzcnRwX3Qgcyk7CiAKLQogLyoKLSAqIEBicmllZiBpZGVudGlm
aWVzIGEgcGFydGljdWxhciBTUlRQIHByb2ZpbGUgCisgKiBAYnJpZWYgaWRlbnRpZmllcyBhIHBh
cnRpY3VsYXIgU1JUUCBwcm9maWxlCiAgKgogICogQW4gc3J0cF9wcm9maWxlX3QgZW51bWVyYXRp
b24gaXMgdXNlZCB0byBpZGVudGlmeSBhIHBhcnRpY3VsYXIgU1JUUAogICogcHJvZmlsZSAodGhh
dCBpcywgYSBzZXQgb2YgYWxnb3JpdGhtcyBhbmQgcGFyYW1ldGVycykuIFRoZXNlIHByb2ZpbGVz
CiAgKiBhcmUgZGVmaW5lZCBmb3IgRFRMUy1TUlRQOgogICogaHR0cHM6Ly93d3cuaWFuYS5vcmcv
YXNzaWdubWVudHMvc3J0cC1wcm90ZWN0aW9uL3NydHAtcHJvdGVjdGlvbi54aHRtbAogICovCi0K
IHR5cGVkZWYgZW51bSB7Ci0gIHNydHBfcHJvZmlsZV9yZXNlcnZlZCAgICAgICAgICAgPSAwLAot
ICBzcnRwX3Byb2ZpbGVfYWVzMTI4X2NtX3NoYTFfODAgID0gMSwKLSAgc3J0cF9wcm9maWxlX2Fl
czEyOF9jbV9zaGExXzMyICA9IDIsCi0gIHNydHBfcHJvZmlsZV9udWxsX3NoYTFfODAgICAgICAg
PSA1LAotICBzcnRwX3Byb2ZpbGVfbnVsbF9zaGExXzMyICAgICAgID0gNiwKLSAgc3J0cF9wcm9m
aWxlX2FlYWRfYWVzXzEyOF9nY20gICA9IDcsCi0gIHNydHBfcHJvZmlsZV9hZWFkX2Flc18yNTZf
Z2NtICAgPSA4LAorICAgIHNydHBfcHJvZmlsZV9yZXNlcnZlZCA9IDAsCisgICAgc3J0cF9wcm9m
aWxlX2FlczEyOF9jbV9zaGExXzgwID0gMSwKKyAgICBzcnRwX3Byb2ZpbGVfYWVzMTI4X2NtX3No
YTFfMzIgPSAyLAorICAgIHNydHBfcHJvZmlsZV9udWxsX3NoYTFfODAgPSA1LAorICAgIHNydHBf
cHJvZmlsZV9udWxsX3NoYTFfMzIgPSA2LAorICAgIHNydHBfcHJvZmlsZV9hZWFkX2Flc18xMjhf
Z2NtID0gNywKKyAgICBzcnRwX3Byb2ZpbGVfYWVhZF9hZXNfMjU2X2djbSA9IDgsCiB9IHNydHBf
cHJvZmlsZV90OwogCi0KIC8qKgogICogQGJyaWVmIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfZnJv
bV9wcm9maWxlX2Zvcl9ydHAoKSBzZXRzIGEgY3J5cHRvIHBvbGljeQogICogc3RydWN0dXJlIHRv
IHRoZSBhcHByb3ByaWF0ZSB2YWx1ZSBmb3IgUlRQIGJhc2VkIG9uIGFuIHNydHBfcHJvZmlsZV90
CkBAIC0xMjMyLDEzICsxMjAyLDEyIEBAIHR5cGVkZWYgZW51bSB7CiAgKgogICogQHJldHVybiB2
YWx1ZXMKICAqICAgICAtIHNydHBfZXJyX3N0YXR1c19vayAgICAgICAgIG5vIHByb2JsZW1zIHdl
cmUgZW5jb3VudGVyZWQKLSAqICAgICAtIHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW0gIHRoZSBw
cm9maWxlIGlzIG5vdCBzdXBwb3J0ZWQgCisgKiAgICAgLSBzcnRwX2Vycl9zdGF0dXNfYmFkX3Bh
cmFtICB0aGUgcHJvZmlsZSBpcyBub3Qgc3VwcG9ydGVkCiAgKgogICovCi1zcnRwX2Vycl9zdGF0
dXNfdCBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Zyb21fcHJvZmlsZV9mb3JfcnRwKHNydHBfY3J5
cHRvX3BvbGljeV90ICpwb2xpY3ksIHNydHBfcHJvZmlsZV90IHByb2ZpbGUpOwotCi0KLQorc3J0
cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9mcm9tX3Byb2ZpbGVfZm9yX3J0
cCgKKyAgICBzcnRwX2NyeXB0b19wb2xpY3lfdCAqcG9saWN5LAorICAgIHNydHBfcHJvZmlsZV90
IHByb2ZpbGUpOwogCiAvKioKICAqIEBicmllZiBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Zyb21f
cHJvZmlsZV9mb3JfcnRjcCgpIHNldHMgYSBjcnlwdG8gcG9saWN5CkBAIC0xMjYzLDQ4ICsxMjMy
LDQzIEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfY3J5cHRvX3BvbGljeV9zZXRfZnJvbV9wcm9m
aWxlX2Zvcl9ydHAoc3J0cF9jcnlwdG9fcG9saWN5CiAgKiAgICAgLSBzcnRwX2Vycl9zdGF0dXNf
YmFkX3BhcmFtICB0aGUgcHJvZmlsZSBpcyBub3Qgc3VwcG9ydGVkCiAgKgogICovCi1zcnRwX2Vy
cl9zdGF0dXNfdCBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Zyb21fcHJvZmlsZV9mb3JfcnRjcChz
cnRwX2NyeXB0b19wb2xpY3lfdCAqcG9saWN5LCBzcnRwX3Byb2ZpbGVfdCBwcm9maWxlKTsKK3Ny
dHBfZXJyX3N0YXR1c190IHNydHBfY3J5cHRvX3BvbGljeV9zZXRfZnJvbV9wcm9maWxlX2Zvcl9y
dGNwKAorICAgIHNydHBfY3J5cHRvX3BvbGljeV90ICpwb2xpY3ksCisgICAgc3J0cF9wcm9maWxl
X3QgcHJvZmlsZSk7CiAKIC8qKgogICogQGJyaWVmIHJldHVybnMgdGhlIG1hc3RlciBrZXkgbGVu
Z3RoIGZvciBhIGdpdmVuIFNSVFAgcHJvZmlsZQogICovCi11bnNpZ25lZCBpbnQKLXNydHBfcHJv
ZmlsZV9nZXRfbWFzdGVyX2tleV9sZW5ndGgoc3J0cF9wcm9maWxlX3QgcHJvZmlsZSk7Ci0KK3Vu
c2lnbmVkIGludCBzcnRwX3Byb2ZpbGVfZ2V0X21hc3Rlcl9rZXlfbGVuZ3RoKHNydHBfcHJvZmls
ZV90IHByb2ZpbGUpOwogCiAvKioKICAqIEBicmllZiByZXR1cm5zIHRoZSBtYXN0ZXIgc2FsdCBs
ZW5ndGggZm9yIGEgZ2l2ZW4gU1JUUCBwcm9maWxlCiAgKi8KLXVuc2lnbmVkIGludAotc3J0cF9w
cm9maWxlX2dldF9tYXN0ZXJfc2FsdF9sZW5ndGgoc3J0cF9wcm9maWxlX3QgcHJvZmlsZSk7Cit1
bnNpZ25lZCBpbnQgc3J0cF9wcm9maWxlX2dldF9tYXN0ZXJfc2FsdF9sZW5ndGgoc3J0cF9wcm9m
aWxlX3QgcHJvZmlsZSk7CiAKIC8qKgogICogQGJyaWVmIGFwcGVuZHMgdGhlIHNhbHQgdG8gdGhl
IGtleQogICoKLSAqIFRoZSBmdW5jdGlvbiBjYWxsIHNydHBfYXBwZW5kX3NhbHRfdG9fa2V5KGss
IGtsZW4sIHMsIHNsZW4pIAorICogVGhlIGZ1bmN0aW9uIGNhbGwgc3J0cF9hcHBlbmRfc2FsdF90
b19rZXkoaywga2xlbiwgcywgc2xlbikKICAqIGNvcGllcyB0aGUgc3RyaW5nIHMgdG8gdGhlIGxv
Y2F0aW9uIGF0IGtsZW4gYnl0ZXMgZm9sbG93aW5nCi0gKiB0aGUgbG9jYXRpb24gay4gIAorICog
dGhlIGxvY2F0aW9uIGsuCiAgKgogICogQHdhcm5pbmcgVGhlcmUgbXVzdCBiZSBhdCBsZWFzdCBi
eXRlc19pbl9zYWx0ICsgYnl0ZXNfaW5fa2V5IGJ5dGVzCiAgKiAgICAgICAgICBhdmFpbGFibGUg
YXQgdGhlIGxvY2F0aW9uIHBvaW50ZWQgdG8gYnkga2V5LgotICogCisgKgogICovCi0KLXZvaWQK
LXNydHBfYXBwZW5kX3NhbHRfdG9fa2V5KHVuc2lnbmVkIGNoYXIgKmtleSwgdW5zaWduZWQgaW50
IGJ5dGVzX2luX2tleSwKLQkgIAkgICAgICAgIHVuc2lnbmVkIGNoYXIgKnNhbHQsIHVuc2lnbmVk
IGludCBieXRlc19pbl9zYWx0KTsKLQotCit2b2lkIHNydHBfYXBwZW5kX3NhbHRfdG9fa2V5KHVu
c2lnbmVkIGNoYXIgKmtleSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQg
aW50IGJ5dGVzX2luX2tleSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQg
Y2hhciAqc2FsdCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IGJ5
dGVzX2luX3NhbHQpOwogCiAvKioKICAqIEB9CiAgKi8KIAotCi0KIC8qKgogICogQGRlZmdyb3Vw
IFNSVENQIFNlY3VyZSBSVENQCi0gKiBAaW5ncm91cCAgU1JUUCAKKyAqIEBpbmdyb3VwICBTUlRQ
CiAgKgogICogQGJyaWVmIFNlY3VyZSBSVENQIGZ1bmN0aW9ucyBhcmUgdXNlZCB0byBwcm90ZWN0
IFJUQ1AgdHJhZmZpYy4KICAqCkBAIC0xMzEyLDM2ICsxMjc2LDM2IEBAIHNydHBfYXBwZW5kX3Nh
bHRfdG9fa2V5KHVuc2lnbmVkIGNoYXIgKmtleSwgdW5zaWduZWQgaW50IGJ5dGVzX2luX2tleSwK
ICAqIHRyYWZmaWMgaW4gbXVjaCB0aGUgc2FtZSB3YXkgYXMgaXQgZG9lcyBSVFAgdHJhZmZpYy4g
IFRoZSBmdW5jdGlvbgogICogc3J0cF9wcm90ZWN0X3J0Y3AoKSBhcHBsaWVzIGNyeXB0b2dyYXBo
aWMgcHJvdGVjdGlvbnMgdG8gb3V0Ym91bmQKICAqIFJUQ1AgcGFja2V0cywgYW5kIHNydHBfdW5w
cm90ZWN0X3J0Y3AoKSB2ZXJpZmllcyB0aGUgcHJvdGVjdGlvbnMgb24KLSAqIGluYm91bmQgUlRD
UCBwYWNrZXRzLiAgCisgKiBpbmJvdW5kIFJUQ1AgcGFja2V0cy4KICAqCiAgKiBBIG5vdGUgb24g
dGhlIG5hbWluZyBjb252ZW50aW9uOiBzcnRwX3Byb3RlY3RfcnRjcCgpIGhhcyBhbiBzcnRwX3QK
ICAqIGFzIGl0cyBmaXJzdCBhcmd1bWVudCwgYW5kIHRodXMgaGFzIGBzcnRwXycgYXMgaXRzIHBy
ZWZpeC4gIFRoZQotICogdHJhaWxpbmcgYF9ydGNwJyBpbmRpY2F0ZXMgdGhlIHByb3RvY29sIG9u
IHdoaWNoIGl0IGFjdHMuICAKLSAqIAorICogdHJhaWxpbmcgYF9ydGNwJyBpbmRpY2F0ZXMgdGhl
IHByb3RvY29sIG9uIHdoaWNoIGl0IGFjdHMuCisgKgogICogQHsKICAqLwogCiAvKioKICAqIEBi
cmllZiBzcnRwX3Byb3RlY3RfcnRjcCgpIGlzIHRoZSBTZWN1cmUgUlRDUCBzZW5kZXItc2lkZSBw
YWNrZXQKICAqIHByb2Nlc3NpbmcgZnVuY3Rpb24uCi0gKiAKKyAqCiAgKiBUaGUgZnVuY3Rpb24g
Y2FsbCBzcnRwX3Byb3RlY3RfcnRjcChjdHgsIHJ0cF9oZHIsIGxlbl9wdHIpIGFwcGxpZXMKICAq
IFNSVENQIHByb3RlY3Rpb24gdG8gdGhlIFJUQ1AgcGFja2V0IHJ0Y3BfaGRyICh3aGljaCBoYXMg
bGVuZ3RoCiAgKiAqbGVuX3B0cikgdXNpbmcgdGhlIFNSVFAgc2Vzc2lvbiBjb250ZXh0IGN0eC4g
IElmIHNydHBfZXJyX3N0YXR1c19vayBpcwogICogcmV0dXJuZWQsIHRoZW4gcnRwX2hkciBwb2lu
dHMgdG8gdGhlIHJlc3VsdGluZyBTUlRDUCBwYWNrZXQgYW5kCiAgKiAqbGVuX3B0ciBpcyB0aGUg
bnVtYmVyIG9mIG9jdGV0cyBpbiB0aGF0IHBhY2tldDsgb3RoZXJ3aXNlLCBubwogICogYXNzdW1w
dGlvbnMgc2hvdWxkIGJlIG1hZGUgYWJvdXQgdGhlIHZhbHVlIG9mIGVpdGhlciBkYXRhIGVsZW1l
bnRzLgotICogCisgKgogICogQHdhcm5pbmcgVGhpcyBmdW5jdGlvbiBhc3N1bWVzIHRoYXQgaXQg
Y2FuIHdyaXRlIHRoZSBhdXRoZW50aWNhdGlvbgogICogdGFnIGludG8gdGhlIGxvY2F0aW9uIGlu
IG1lbW9yeSBpbW1lZGlhdGVseSBmb2xsb3dpbmcgdGhlIFJUQ1AKICAqIHBhY2tldCwgYW5kIGFz
c3VtZXMgdGhhdCB0aGUgUlRDUCBwYWNrZXQgaXMgYWxpZ25lZCBvbiBhIDMyLWJpdAogICogYm91
bmRhcnkuCiAgKgotICogQHdhcm5pbmcgVGhpcyBmdW5jdGlvbiBhc3N1bWVzIHRoYXQgaXQgY2Fu
IHdyaXRlIFNSVFBfTUFYX1RSQUlMRVJfTEVOKzQgCi0gKiBpbnRvIHRoZSBsb2NhdGlvbiBpbiBt
ZW1vcnkgaW1tZWRpYXRlbHkgZm9sbG93aW5nIHRoZSBSVENQIHBhY2tldC4gICAKLSAqIENhbGxl
cnMgTVVTVCBlbnN1cmUgdGhhdCB0aGlzIG11Y2ggd3JpdGFibGUgbWVtb3J5IGlzIGF2YWlsYWJs
ZSBpbiAKKyAqIEB3YXJuaW5nIFRoaXMgZnVuY3Rpb24gYXNzdW1lcyB0aGF0IGl0IGNhbiB3cml0
ZSBTUlRQX01BWF9UUkFJTEVSX0xFTis0CisgKiBpbnRvIHRoZSBsb2NhdGlvbiBpbiBtZW1vcnkg
aW1tZWRpYXRlbHkgZm9sbG93aW5nIHRoZSBSVENQIHBhY2tldC4KKyAqIENhbGxlcnMgTVVTVCBl
bnN1cmUgdGhhdCB0aGlzIG11Y2ggd3JpdGFibGUgbWVtb3J5IGlzIGF2YWlsYWJsZSBpbgogICog
dGhlIGJ1ZmZlciB0aGF0IGhvbGRzIHRoZSBSVENQIHBhY2tldC4KLSAqIAorICoKICAqIEBwYXJh
bSBjdHggaXMgdGhlIFNSVFAgY29udGV4dCB0byB1c2UgaW4gcHJvY2Vzc2luZyB0aGUgcGFja2V0
LgogICoKICAqIEBwYXJhbSBydGNwX2hkciBpcyBhIHBvaW50ZXIgdG8gdGhlIFJUQ1AgcGFja2V0
IChiZWZvcmUgdGhlIGNhbGwpOyBhZnRlcgpAQCAtMTM1MywzNyArMTMxNywzNiBAQCBzcnRwX2Fw
cGVuZF9zYWx0X3RvX2tleSh1bnNpZ25lZCBjaGFyICprZXksIHVuc2lnbmVkIGludCBieXRlc19p
bl9rZXksCiAgKiB3YXMgcmV0dXJuZWQuICBPdGhlcndpc2UsIHRoZSB2YWx1ZSBvZiB0aGUgZGF0
YSB0byB3aGljaCBpdCBwb2ludHMKICAqIGlzIHVuZGVmaW5lZC4KICAqCi0gKiBAcmV0dXJuIAor
ICogQHJldHVybgogICogICAgLSBzcnRwX2Vycl9zdGF0dXNfb2sgICAgICAgICAgICBpZiB0aGVy
ZSB3ZXJlIG5vIHByb2JsZW1zLgotICogICAgLSBbb3RoZXJdICAgICAgICAgICAgICAgICAgaWYg
dGhlcmUgd2FzIGEgZmFpbHVyZSBpbiAKKyAqICAgIC0gW290aGVyXSAgICAgICAgICAgICAgICAg
IGlmIHRoZXJlIHdhcyBhIGZhaWx1cmUgaW4KICAqICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHRoZSBjcnlwdG9ncmFwaGljIG1lY2hhbmlzbXMuCiAgKi8KLQkgICAgIAotCi1zcnRwX2Vy
cl9zdGF0dXNfdCBzcnRwX3Byb3RlY3RfcnRjcChzcnRwX3QgY3R4LCB2b2lkICpydGNwX2hkciwg
aW50ICpwa3Rfb2N0ZXRfbGVuKTsKLQorc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9wcm90ZWN0X3J0
Y3Aoc3J0cF90IGN0eCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZvaWQg
KnJ0Y3BfaGRyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50ICpwa3Rf
b2N0ZXRfbGVuKTsKIAogLyoqCiAgKiBAYnJpZWYgc3J0cF9wcm90ZWN0X3J0Y3BfbWtpKCkgaXMg
dGhlIFNlY3VyZSBSVENQIHNlbmRlci1zaWRlIHBhY2tldAogICogcHJvY2Vzc2luZyBmdW5jdGlv
biB0aGF0IGNhbiB1dGlsaXplIG1raS4KLSAqIAorICoKICAqIFRoZSBmdW5jdGlvbiBjYWxsIHNy
dHBfcHJvdGVjdF9ydGNwKGN0eCwgcnRwX2hkciwgbGVuX3B0cikgYXBwbGllcwogICogU1JUQ1Ag
cHJvdGVjdGlvbiB0byB0aGUgUlRDUCBwYWNrZXQgcnRjcF9oZHIgKHdoaWNoIGhhcyBsZW5ndGgK
ICAqICpsZW5fcHRyKSB1c2luZyB0aGUgU1JUUCBzZXNzaW9uIGNvbnRleHQgY3R4LiAgSWYgc3J0
cF9lcnJfc3RhdHVzX29rIGlzCiAgKiByZXR1cm5lZCwgdGhlbiBydHBfaGRyIHBvaW50cyB0byB0
aGUgcmVzdWx0aW5nIFNSVENQIHBhY2tldCBhbmQKICAqICpsZW5fcHRyIGlzIHRoZSBudW1iZXIg
b2Ygb2N0ZXRzIGluIHRoYXQgcGFja2V0OyBvdGhlcndpc2UsIG5vCiAgKiBhc3N1bXB0aW9ucyBz
aG91bGQgYmUgbWFkZSBhYm91dCB0aGUgdmFsdWUgb2YgZWl0aGVyIGRhdGEgZWxlbWVudHMuCi0g
KiAKKyAqCiAgKiBAd2FybmluZyBUaGlzIGZ1bmN0aW9uIGFzc3VtZXMgdGhhdCBpdCBjYW4gd3Jp
dGUgdGhlIGF1dGhlbnRpY2F0aW9uCiAgKiB0YWcgaW50byB0aGUgbG9jYXRpb24gaW4gbWVtb3J5
IGltbWVkaWF0ZWx5IGZvbGxvd2luZyB0aGUgUlRDUAogICogcGFja2V0LCBhbmQgYXNzdW1lcyB0
aGF0IHRoZSBSVENQIHBhY2tldCBpcyBhbGlnbmVkIG9uIGEgMzItYml0CiAgKiBib3VuZGFyeS4K
ICAqCi0gKiBAd2FybmluZyBUaGlzIGZ1bmN0aW9uIGFzc3VtZXMgdGhhdCBpdCBjYW4gd3JpdGUg
U1JUUF9NQVhfVFJBSUxFUl9MRU4rNCAKLSAqIGludG8gdGhlIGxvY2F0aW9uIGluIG1lbW9yeSBp
bW1lZGlhdGVseSBmb2xsb3dpbmcgdGhlIFJUQ1AgcGFja2V0LiAgIAotICogQ2FsbGVycyBNVVNU
IGVuc3VyZSB0aGF0IHRoaXMgbXVjaCB3cml0YWJsZSBtZW1vcnkgaXMgYXZhaWxhYmxlIGluIAor
ICogQHdhcm5pbmcgVGhpcyBmdW5jdGlvbiBhc3N1bWVzIHRoYXQgaXQgY2FuIHdyaXRlIFNSVFBf
TUFYX1RSQUlMRVJfTEVOKzQKKyAqIGludG8gdGhlIGxvY2F0aW9uIGluIG1lbW9yeSBpbW1lZGlh
dGVseSBmb2xsb3dpbmcgdGhlIFJUQ1AgcGFja2V0LgorICogQ2FsbGVycyBNVVNUIGVuc3VyZSB0
aGF0IHRoaXMgbXVjaCB3cml0YWJsZSBtZW1vcnkgaXMgYXZhaWxhYmxlIGluCiAgKiB0aGUgYnVm
ZmVyIHRoYXQgaG9sZHMgdGhlIFJUQ1AgcGFja2V0LgotICogCisgKgogICogQHBhcmFtIGN0eCBp
cyB0aGUgU1JUUCBjb250ZXh0IHRvIHVzZSBpbiBwcm9jZXNzaW5nIHRoZSBwYWNrZXQuCiAgKgog
ICogQHBhcmFtIHJ0Y3BfaGRyIGlzIGEgcG9pbnRlciB0byB0aGUgUlRDUCBwYWNrZXQgKGJlZm9y
ZSB0aGUgY2FsbCk7IGFmdGVyCkBAIC0xMzk1LDIxICsxMzU4LDI0IEBAIHNydHBfZXJyX3N0YXR1
c190IHNydHBfcHJvdGVjdF9ydGNwKHNydHBfdCBjdHgsIHZvaWQgKnJ0Y3BfaGRyLCBpbnQgKnBr
dF9vY3RldF9sCiAgKiB3YXMgcmV0dXJuZWQuICBPdGhlcndpc2UsIHRoZSB2YWx1ZSBvZiB0aGUg
ZGF0YSB0byB3aGljaCBpdCBwb2ludHMKICAqIGlzIHVuZGVmaW5lZC4KICAqCi0gKiBAcGFyYW0g
dXNlX21raSBpcyBhIGJvb2xlYW4gdG8gdGVsbCB0aGUgc3lzdGVtIGlmIG1raSBpcyBiZWluZyB1
c2VkLiAgSWYgCi0gKiBzZXQgdG8gZmFsc2UgdGhlbiB3aWxsIHVzZSB0aGUgZmlyc3Qgc2V0IG9m
IHNlc3Npb24ga2V5cy4gIElmIHNldCB0byB0cnVlIHdpbGwKKyAqIEBwYXJhbSB1c2VfbWtpIGlz
IGEgYm9vbGVhbiB0byB0ZWxsIHRoZSBzeXN0ZW0gaWYgbWtpIGlzIGJlaW5nIHVzZWQuICBJZgor
ICogc2V0IHRvIGZhbHNlIHRoZW4gd2lsbCB1c2UgdGhlIGZpcnN0IHNldCBvZiBzZXNzaW9uIGtl
eXMuICBJZiBzZXQgdG8gdHJ1ZQorICogd2lsbAogICogdXNlIHRoZSBzZXNzaW9uIGtleXMgaWRl
bnRpZmllZCBieSB0aGUgbWtpX2luZGV4CiAgKgogICogQHBhcmFtIG1raV9pbmRleCBpbnRlZ2Vy
IHZhbHVlIHNwZWNpZnlpbmcgd2hpY2ggc2V0IG9mIHNlc3Npb24ga2VzeSBzaG91bGQgYmUKICAq
IHVzZWQgaWYgdXNlX21raSBpcyBzZXQgdG8gdHJ1ZS4KICAqCi0gKiBAcmV0dXJuIAorICogQHJl
dHVybgogICogICAgLSBzcnRwX2Vycl9zdGF0dXNfb2sgICAgICAgICAgICBpZiB0aGVyZSB3ZXJl
IG5vIHByb2JsZW1zLgotICogICAgLSBbb3RoZXJdICAgICAgICAgICAgICAgICAgaWYgdGhlcmUg
d2FzIGEgZmFpbHVyZSBpbiAKKyAqICAgIC0gW290aGVyXSAgICAgICAgICAgICAgICAgIGlmIHRo
ZXJlIHdhcyBhIGZhaWx1cmUgaW4KICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRo
ZSBjcnlwdG9ncmFwaGljIG1lY2hhbmlzbXMuCiAgKi8KLQotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0
cF9wcm90ZWN0X3J0Y3BfbWtpKHNydHBfdCBjdHgsIHZvaWQgKnJ0Y3BfaGRyLCBpbnQgKnBrdF9v
Y3RldF9sZW4sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWdu
ZWQgaW50IHVzZV9ta2ksIHVuc2lnbmVkIGludCBta2lfaW5kZXgpOworc3J0cF9lcnJfc3RhdHVz
X3Qgc3J0cF9wcm90ZWN0X3J0Y3BfbWtpKHNydHBfdCBjdHgsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgdm9pZCAqcnRjcF9oZHIsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgaW50ICpwa3Rfb2N0ZXRfbGVuLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCB1c2VfbWtpLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBta2lfaW5kZXgpOwog
CiAvKioKICAqIEBicmllZiBzcnRwX3VucHJvdGVjdF9ydGNwKCkgaXMgdGhlIFNlY3VyZSBSVENQ
IHJlY2VpdmVyLXNpZGUgcGFja2V0CkBAIC0xNDIyLDcgKzEzODgsNyBAQCBzcnRwX2Vycl9zdGF0
dXNfdCBzcnRwX3Byb3RlY3RfcnRjcF9ta2koc3J0cF90IGN0eCwgdm9pZCAqcnRjcF9oZHIsIGlu
dCAqcGt0X29jdAogICogdG8gdGhlIHJlc3VsdGluZyBSVENQIHBhY2tldCBhbmQgKmxlbl9wdHIg
aXMgdGhlIG51bWJlciBvZiBvY3RldHMKICAqIGluIHRoYXQgcGFja2V0OyBvdGhlcndpc2UsIG5v
IGFzc3VtcHRpb25zIHNob3VsZCBiZSBtYWRlIGFib3V0IHRoZQogICogdmFsdWUgb2YgZWl0aGVy
IGRhdGEgZWxlbWVudHMuCi0gKiAKKyAqCiAgKiBAd2FybmluZyBUaGlzIGZ1bmN0aW9uIGFzc3Vt
ZXMgdGhhdCB0aGUgU1JUQ1AgcGFja2V0IGlzIGFsaWduZWQgb24gYQogICogMzItYml0IGJvdW5k
YXJ5LgogICoKQEAgLTE0NDAsMTcgKzE0MDYsMTggQEAgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9w
cm90ZWN0X3J0Y3BfbWtpKHNydHBfdCBjdHgsIHZvaWQgKnJ0Y3BfaGRyLCBpbnQgKnBrdF9vY3QK
ICAqIHJldHVybmVkLiAgT3RoZXJ3aXNlLCB0aGUgdmFsdWUgb2YgdGhlIGRhdGEgdG8gd2hpY2gg
aXQgcG9pbnRzIGlzCiAgKiB1bmRlZmluZWQuCiAgKgotICogQHJldHVybiAKKyAqIEByZXR1cm4K
ICAqICAgIC0gc3J0cF9lcnJfc3RhdHVzX29rICAgICAgICAgIGlmIHRoZSBSVENQIHBhY2tldCBp
cyB2YWxpZC4KLSAqICAgIC0gc3J0cF9lcnJfc3RhdHVzX2F1dGhfZmFpbCAgIGlmIHRoZSBTUlRD
UCBwYWNrZXQgZmFpbGVkIHRoZSBtZXNzYWdlIAorICogICAgLSBzcnRwX2Vycl9zdGF0dXNfYXV0
aF9mYWlsICAgaWYgdGhlIFNSVENQIHBhY2tldCBmYWlsZWQgdGhlIG1lc3NhZ2UKICAqICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBhdXRoZW50aWNhdGlvbiBjaGVjay4KICAqICAgIC0gc3J0
cF9lcnJfc3RhdHVzX3JlcGxheV9mYWlsIGlmIHRoZSBTUlRDUCBwYWNrZXQgaXMgYSByZXBsYXkg
KGUuZy4gaGFzCiAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWxyZWFkeSBiZWVuIHBy
b2Nlc3NlZCBhbmQgYWNjZXB0ZWQpLgogICogICAgLSBbb3RoZXJdICBpZiB0aGVyZSBoYXMgYmVl
biBhbiBlcnJvciBpbiB0aGUgY3J5cHRvZ3JhcGhpYyBtZWNoYW5pc21zLgogICoKICAqLwotCi1z
cnRwX2Vycl9zdGF0dXNfdCBzcnRwX3VucHJvdGVjdF9ydGNwKHNydHBfdCBjdHgsIHZvaWQgKnNy
dGNwX2hkciwgaW50ICpwa3Rfb2N0ZXRfbGVuKTsKK3NydHBfZXJyX3N0YXR1c190IHNydHBfdW5w
cm90ZWN0X3J0Y3Aoc3J0cF90IGN0eCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgdm9pZCAqc3J0Y3BfaGRyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBpbnQgKnBrdF9vY3RldF9sZW4pOwogCiAvKioKICAqIEBicmllZiBzcnRwX3VucHJvdGVj
dF9ydGNwKCkgaXMgdGhlIFNlY3VyZSBSVENQIHJlY2VpdmVyLXNpZGUgcGFja2V0CkBAIC0xNDYz
LDcgKzE0MzAsNyBAQCBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3VucHJvdGVjdF9ydGNwKHNydHBf
dCBjdHgsIHZvaWQgKnNydGNwX2hkciwgaW50ICpwa3Rfb2N0ZQogICogdG8gdGhlIHJlc3VsdGlu
ZyBSVENQIHBhY2tldCBhbmQgKmxlbl9wdHIgaXMgdGhlIG51bWJlciBvZiBvY3RldHMKICAqIGlu
IHRoYXQgcGFja2V0OyBvdGhlcndpc2UsIG5vIGFzc3VtcHRpb25zIHNob3VsZCBiZSBtYWRlIGFi
b3V0IHRoZQogICogdmFsdWUgb2YgZWl0aGVyIGRhdGEgZWxlbWVudHMuCi0gKiAKKyAqCiAgKiBA
d2FybmluZyBUaGlzIGZ1bmN0aW9uIGFzc3VtZXMgdGhhdCB0aGUgU1JUQ1AgcGFja2V0IGlzIGFs
aWduZWQgb24gYQogICogMzItYml0IGJvdW5kYXJ5LgogICoKQEAgLTE0ODIsMjEgKzE0NDksMjMg
QEAgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF91bnByb3RlY3RfcnRjcChzcnRwX3QgY3R4LCB2b2lk
ICpzcnRjcF9oZHIsIGludCAqcGt0X29jdGUKICAqIHVuZGVmaW5lZC4KICAqCiAgKiBAcGFyYW0g
dXNlX21raSBpcyBhIGJvb2xlYW4gdG8gdGVsbCB0aGUgc3lzdGVtIGlmIG1raSBpcyBiZWluZyB1
c2VkLiAgSWYKLSAqIHNldCB0byBmYWxzZSB0aGVuIHdpbGwgdXNlIHRoZSBmaXJzdCBzZXQgb2Yg
c2Vzc2lvbiBrZXlzLiAgSWYgc2V0IHRvIHRydWUgd2lsbAotICogdXNlIHRoZSBzZXNzaW9uIGtl
eXMgaWRlbnRpZmllZCBieSB0aGUgbWtpX2luZGV4CisgKiBzZXQgdG8gZmFsc2UgdGhlbiB3aWxs
IHVzZSB0aGUgZmlyc3Qgc2V0IG9mIHNlc3Npb24ga2V5cy4gIElmIHNldCB0byB0cnVlCisgKiB3
aWxsIHVzZSB0aGUgc2Vzc2lvbiBrZXlzIGlkZW50aWZpZWQgYnkgdGhlIG1raV9pbmRleAogICoK
LSAqIEByZXR1cm4gCisgKiBAcmV0dXJuCiAgKiAgICAtIHNydHBfZXJyX3N0YXR1c19vayAgICAg
ICAgICBpZiB0aGUgUlRDUCBwYWNrZXQgaXMgdmFsaWQuCi0gKiAgICAtIHNydHBfZXJyX3N0YXR1
c19hdXRoX2ZhaWwgICBpZiB0aGUgU1JUQ1AgcGFja2V0IGZhaWxlZCB0aGUgbWVzc2FnZSAKLSAq
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdXRoZW50aWNhdGlvbiBjaGVjay4KKyAqICAg
IC0gc3J0cF9lcnJfc3RhdHVzX2F1dGhfZmFpbCAgIGlmIHRoZSBTUlRDUCBwYWNrZXQgZmFpbGVk
IHRoZSBtZXNzYWdlCisgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdXRoZW50
aWNhdGlvbiBjaGVjay4KICAqICAgIC0gc3J0cF9lcnJfc3RhdHVzX3JlcGxheV9mYWlsIGlmIHRo
ZSBTUlRDUCBwYWNrZXQgaXMgYSByZXBsYXkgKGUuZy4gaGFzCi0gKiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgYWxyZWFkeSBiZWVuIHByb2Nlc3NlZCBhbmQgYWNjZXB0ZWQpLgotICogICAg
LSBzcnRwX2Vycl9zdGF0dXNfYmFkX21raSBpZiB0aGUgTUtJIGluIHRoZSBwYWNrZXQgaXMgbm90
IGEga25vd24gTUtJIGlkCi0gKiAgICAtIFtvdGhlcl0gIGlmIHRoZXJlIGhhcyBiZWVuIGFuIGVy
cm9yIGluIHRoZSBjcnlwdG9ncmFwaGljIG1lY2hhbmlzbXMuCisgKiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBhbHJlYWR5IGJlZW4gcHJvY2Vzc2VkIGFuZCBhY2NlcHRlZCkuCisg
KiAgICAtIHNydHBfZXJyX3N0YXR1c19iYWRfbWtpICAgICBpZiB0aGUgTUtJIGluIHRoZSBwYWNr
ZXQgaXMgbm90IGEga25vd24gTUtJCisgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBpZAorICogICAgLSBbb3RoZXJdICAgICAgICAgICAgICAgICAgICAgaWYgdGhlcmUgaGFzIGJl
ZW4gYW4gZXJyb3IgaW4gdGhlCisgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBj
cnlwdG9ncmFwaGljIG1lY2hhbmlzbXMuCiAgKgogICovCi0KLXNydHBfZXJyX3N0YXR1c190IHNy
dHBfdW5wcm90ZWN0X3J0Y3BfbWtpKHNydHBfdCBjdHgsIHZvaWQgKnNydGNwX2hkciwKK3NydHBf
ZXJyX3N0YXR1c190IHNydHBfdW5wcm90ZWN0X3J0Y3BfbWtpKHNydHBfdCBjdHgsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2b2lkICpzcnRjcF9oZHIsCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgKnBrdF9vY3RldF9sZW4s
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQg
dXNlX21raSk7CiAKQEAgLTE1MDQsNyArMTQ3Myw2IEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBf
dW5wcm90ZWN0X3J0Y3BfbWtpKHNydHBfdCBjdHgsIHZvaWQgKnNydGNwX2hkciwKICAqIEB9CiAg
Ki8KIAotCiAvKioKICAqIEBkZWZncm91cCBVc2VyIGRhdGEgYXNzb2NpYXRlZCB0byBhIFNSVFAg
c2Vzc2lvbi4KICAqIEBpbmdyb3VwICBTUlRQCkBAIC0xNTI3LDkgKzE0OTUsNyBAQCBzcnRwX2Vy
cl9zdGF0dXNfdCBzcnRwX3VucHJvdGVjdF9ydGNwX21raShzcnRwX3QgY3R4LCB2b2lkICpzcnRj
cF9oZHIsCiAgKiBAcmV0dXJuIHZvaWQuCiAgKgogICovCi0KLXZvaWQKLXNydHBfc2V0X3VzZXJf
ZGF0YShzcnRwX3QgY3R4LCB2b2lkICpkYXRhKTsKK3ZvaWQgc3J0cF9zZXRfdXNlcl9kYXRhKHNy
dHBfdCBjdHgsIHZvaWQgKmRhdGEpOwogCiAvKioKICAqIEBicmllZiBzcnRwX2dldF91c2VyX2Rh
dGEoKSByZXRyaWV2ZXMgdGhlIHBvaW50ZXIgdG8gdGhlIGN1c3RvbSBkYXRhCkBAIC0xNTQ2LDIz
ICsxNTEyLDIwIEBAIHNydHBfc2V0X3VzZXJfZGF0YShzcnRwX3QgY3R4LCB2b2lkICpkYXRhKTsK
ICAqIEByZXR1cm4gdm9pZCogcG9pbnRlciB0byB0aGUgdXNlciBkYXRhLgogICoKICAqLwotCi12
b2lkKgotc3J0cF9nZXRfdXNlcl9kYXRhKHNydHBfdCBjdHgpOwordm9pZCAqc3J0cF9nZXRfdXNl
cl9kYXRhKHNydHBfdCBjdHgpOwogCiAvKioKICAqIEB9CiAgKi8KIAotCiAvKioKICAqIEBkZWZn
cm91cCBTUlRQZXZlbnRzIFNSVFAgZXZlbnRzIGFuZCBjYWxsYmFja3MKICAqIEBpbmdyb3VwICBT
UlRQCiAgKgotICogQGJyaWVmIGxpYlNSVFAgY2FuIHVzZSBhIHVzZXItcHJvdmlkZWQgY2FsbGJh
Y2sgZnVuY3Rpb24gdG8gCisgKiBAYnJpZWYgbGliU1JUUCBjYW4gdXNlIGEgdXNlci1wcm92aWRl
ZCBjYWxsYmFjayBmdW5jdGlvbiB0bwogICogaGFuZGxlIGV2ZW50cy4KICAqCi0gKiAKKyAqCiAg
KiBsaWJTUlRQIGFsbG93cyBhIHVzZXIgdG8gcHJvdmlkZSBhIGNhbGxiYWNrIGZ1bmN0aW9uIHRv
IGhhbmRsZQogICogZXZlbnRzIHRoYXQgbmVlZCB0byBiZSBkZWFsdCB3aXRoIG91dHNpZGUgb2Yg
dGhlIGRhdGEgcGxhbmUgKHNlZQogICogdGhlIGVudW0gc3J0cF9ldmVudF90IGZvciBhIGRlc2Ny
aXB0aW9uIG9mIHRoZXNlIGV2ZW50cykuICBEZWFsaW5nCkBAIC0xNTgzLDggKzE1NDYsOCBAQCBz
cnRwX2dldF91c2VyX2RhdGEoc3J0cF90IGN0eCk7CiAgKiBAYnJpZWYgc3J0cF9ldmVudF90IGRl
ZmluZXMgZXZlbnRzIHRoYXQgbmVlZCB0byBiZSBoYW5kbGVkCiAgKgogICogVGhlIGVudW0gc3J0
cF9ldmVudF90IGRlZmluZXMgZXZlbnRzIHRoYXQgbmVlZCB0byBiZSBoYW5kbGVkCi0gKiBvdXRz
aWRlIHRoZSBgZGF0YSBwbGFuZScsIHN1Y2ggYXMgU1NSQyBjb2xsaXNpb25zIGFuZCAKLSAqIGtl
eSBleHBpcmF0aW9ucy4gIAorICogb3V0c2lkZSB0aGUgYGRhdGEgcGxhbmUnLCBzdWNoIGFzIFNT
UkMgY29sbGlzaW9ucyBhbmQKKyAqIGtleSBleHBpcmF0aW9ucy4KICAqCiAgKiBXaGVuIGEga2V5
IGV4cGlyZXMgb3IgdGhlIG1heGltdW0gbnVtYmVyIG9mIHBhY2tldHMgaGFzIGJlZW4KICAqIHJl
YWNoZWQsIGFuIFNSVFAgc3RyZWFtIHdpbGwgZW50ZXIgYW4gYGV4cGlyZWQnIHN0YXRlIGluIHdo
aWNoIG5vCkBAIC0xNTk2LDM0ICsxNTU5LDI4IEBAIHNydHBfZ2V0X3VzZXJfZGF0YShzcnRwX3Qg
Y3R4KTsKICAqIGFyZSB1bmFmZmVjdGVkLCB1bmxlc3Mga2V5IHNoYXJpbmcgaXMgdXNlZCBieSB0
aGF0IHN0cmVhbS4gIEluIHRoZQogICogbGF0dGVyIGNhc2UsIGFsbCBvZiB0aGUgc3RyZWFtcyBp
biB0aGUgc2Vzc2lvbiB3aWxsIGV4cGlyZS4KICAqLwotCi10eXBlZGVmIGVudW0geyAKLSAgZXZl
bnRfc3NyY19jb2xsaXNpb24sICAgIC8qKjwKLQkJCSAgICAqIEFuIFNTUkMgY29sbGlzaW9uIG9j
Y3VyZWQuICAgICAgICAgICAgIAotCQkJICAgICovCi0gIGV2ZW50X2tleV9zb2Z0X2xpbWl0LCAg
ICAvKio8IEFuIFNSVFAgc3RyZWFtIHJlYWNoZWQgdGhlIHNvZnQga2V5Ci0JCQkgICAgKiAgIHVz
YWdlIGxpbWl0IGFuZCB3aWxsIGV4cGlyZSBzb29uLgkgICAKLQkJCSAgICAqLwotICBldmVudF9r
ZXlfaGFyZF9saW1pdCwgICAgLyoqPCBBbiBTUlRQIHN0cmVhbSByZWFjaGVkIHRoZSBoYXJkIAot
CQkJICAgICogICBrZXkgdXNhZ2UgbGltaXQgYW5kIGhhcyBleHBpcmVkLgotCQkJICAgICovCi0g
IGV2ZW50X3BhY2tldF9pbmRleF9saW1pdCAvKio8IEFuIFNSVFAgc3RyZWFtIHJlYWNoZWQgdGhl
IGhhcmQgCi0JCQkgICAgKiBwYWNrZXQgbGltaXQgKDJeNDggcGFja2V0cykuICAgICAgICAgICAg
IAotCQkJICAgICovCit0eXBlZGVmIGVudW0geworICAgIGV2ZW50X3NzcmNfY29sbGlzaW9uLCAg
ICAvKio8IEFuIFNTUkMgY29sbGlzaW9uIG9jY3VyZWQuICAgICAgICAgICAgKi8KKyAgICBldmVu
dF9rZXlfc29mdF9saW1pdCwgICAgLyoqPCBBbiBTUlRQIHN0cmVhbSByZWFjaGVkIHRoZSBzb2Z0
IGtleSAgICovCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qKjwgdXNhZ2UgbGltaXQg
YW5kIHdpbGwgZXhwaXJlIHNvb24uICAgICAqLworICAgIGV2ZW50X2tleV9oYXJkX2xpbWl0LCAg
ICAvKio8IEFuIFNSVFAgc3RyZWFtIHJlYWNoZWQgdGhlIGhhcmQgICAgICAgKi8KKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgLyoqPCBrZXkgdXNhZ2UgbGltaXQgYW5kIGhhcyBleHBpcmVk
LiAgICAgICovCisgICAgZXZlbnRfcGFja2V0X2luZGV4X2xpbWl0IC8qKjwgQW4gU1JUUCBzdHJl
YW0gcmVhY2hlZCB0aGUgaGFyZCAgICAgICAqLworICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAvKio8IHBhY2tldCBsaW1pdCAoMl40OCBwYWNrZXRzKS4gICAgICAgICAgKi8KIH0gc3J0cF9l
dmVudF90OwogCiAvKioKLSAqIEBicmllZiBzcnRwX2V2ZW50X2RhdGFfdCBpcyB0aGUgc3RydWN0
dXJlIHBhc3NlZCBhcyBhIGNhbGxiYWNrIHRvIAorICogQGJyaWVmIHNydHBfZXZlbnRfZGF0YV90
IGlzIHRoZSBzdHJ1Y3R1cmUgcGFzc2VkIGFzIGEgY2FsbGJhY2sgdG8KICAqIHRoZSBldmVudCBo
YW5kbGVyIGZ1bmN0aW9uCiAgKgogICogVGhlIHN0cnVjdCBzcnRwX2V2ZW50X2RhdGFfdCBob2xk
cyB0aGUgZGF0YSBwYXNzZWQgdG8gdGhlIGV2ZW50Ci0gKiBoYW5kbGVyIGZ1bmN0aW9uLiAgCisg
KiBoYW5kbGVyIGZ1bmN0aW9uLgogICovCi0KIHR5cGVkZWYgc3RydWN0IHNydHBfZXZlbnRfZGF0
YV90IHsKLSAgc3J0cF90ICAgICAgICBzZXNzaW9uOyAgLyoqPCBUaGUgc2Vzc2lvbiBpbiB3aGlj
aCB0aGUgZXZlbnQgaGFwcGVuZC4gKi8KLSAgdWludDMyX3QgICAgICBzc3JjOyAgICAgLyoqPCBU
aGUgc3NyYyBpbiBob3N0IG9yZGVyIG9mIHRoZSBzdHJlYW0gaW4gd2hpY2ggdGhlIGV2ZW50IGhh
cHBlbmQgKi8KLSAgc3J0cF9ldmVudF90ICBldmVudDsgICAgLyoqPCBBbiBlbnVtIGluZGljYXRp
bmcgdGhlIHR5cGUgb2YgZXZlbnQuICAgKi8KKyAgICBzcnRwX3Qgc2Vzc2lvbjsgICAgIC8qKjwg
VGhlIHNlc3Npb24gaW4gd2hpY2ggdGhlIGV2ZW50IGhhcHBlbmQuICAgICAgICAqLworICAgIHVp
bnQzMl90IHNzcmM7ICAgICAgLyoqPCBUaGUgc3NyYyBpbiBob3N0IG9yZGVyIG9mIHRoZSBzdHJl
YW0gaW4gd2hpY2ggICovCisgICAgICAgICAgICAgICAgICAgICAgICAvKio8IHRoZSBldmVudCBo
YXBwZW5kICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBzcnRwX2V2ZW50X3Qg
ZXZlbnQ7IC8qKjwgQW4gZW51bSBpbmRpY2F0aW5nIHRoZSB0eXBlIG9mIGV2ZW50LiAgICAgICAg
ICAqLwogfSBzcnRwX2V2ZW50X2RhdGFfdDsKIAogLyoqCkBAIC0xNjM2LDEyICsxNTkzLDExIEBA
IHR5cGVkZWYgc3RydWN0IHNydHBfZXZlbnRfZGF0YV90IHsKICAqIFRoZXJlIGNhbiBvbmx5IGJl
IGEgc2luZ2xlLCBnbG9iYWwgaGFuZGxlciBmb3IgYWxsIGV2ZW50cyBpbgogICogbGliU1JUUC4K
ICAqLwotCi10eXBlZGVmIHZvaWQgKHNydHBfZXZlbnRfaGFuZGxlcl9mdW5jX3QpKHNydHBfZXZl
bnRfZGF0YV90ICpkYXRhKTsKK3R5cGVkZWYgdm9pZChzcnRwX2V2ZW50X2hhbmRsZXJfZnVuY190
KShzcnRwX2V2ZW50X2RhdGFfdCAqZGF0YSk7CiAKIC8qKgogICogQGJyaWVmIHNldHMgdGhlIGV2
ZW50IGhhbmRsZXIgdG8gdGhlIGZ1bmN0aW9uIHN1cHBsaWVkIGJ5IHRoZSBjYWxsZXIuCi0gKiAK
KyAqCiAgKiBUaGUgZnVuY3Rpb24gY2FsbCBzcnRwX2luc3RhbGxfZXZlbnRfaGFuZGxlcihmdW5j
KSBzZXRzIHRoZSBldmVudAogICogaGFuZGxlciBmdW5jdGlvbiB0byB0aGUgdmFsdWUgZnVuYy4g
IFRoZSB2YWx1ZSBOVUxMIGlzIGFjY2VwdGFibGUKICAqIGFzIGFuIGFyZ3VtZW50OyBpbiB0aGlz
IGNhc2UsIGV2ZW50cyB3aWxsIGJlIGlnbm9yZWQgcmF0aGVyIHRoYW4KQEAgLTE2NTEsMjQgKzE2
MDcsMjMgQEAgdHlwZWRlZiB2b2lkIChzcnRwX2V2ZW50X2hhbmRsZXJfZnVuY190KShzcnRwX2V2
ZW50X2RhdGFfdCAqZGF0YSk7CiAgKiAgICAgICAgICAgICBwb2ludGVyIGFzIGFuIGFyZ3VtZW50
IGFuZCByZXR1cm5zIHZvaWQuICBUaGlzIGZ1bmN0aW9uCiAgKiAgICAgICAgICAgICB3aWxsIGJl
IHVzZWQgYnkgbGliU1JUUCB0byBoYW5kbGUgZXZlbnRzLgogICovCi0KIHNydHBfZXJyX3N0YXR1
c190IHNydHBfaW5zdGFsbF9ldmVudF9oYW5kbGVyKHNydHBfZXZlbnRfaGFuZGxlcl9mdW5jX3Qg
ZnVuYyk7CiAKIC8qKgotICogQGJyaWVmIFJldHVybnMgdGhlIHZlcnNpb24gc3RyaW5nIG9mIHRo
ZSBsaWJyYXJ5LiAKLSAqIAorICogQGJyaWVmIFJldHVybnMgdGhlIHZlcnNpb24gc3RyaW5nIG9m
IHRoZSBsaWJyYXJ5LgorICoKICAqLwogY29uc3QgY2hhciAqc3J0cF9nZXRfdmVyc2lvbl9zdHJp
bmcodm9pZCk7CiAKIC8qKgotICogQGJyaWVmIFJldHVybnMgdGhlIG51bWVyaWMgcmVwcmVzZW50
YXRpb24gb2YgdGhlIGxpYnJhcnkgdmVyc2lvbi4gCi0gKiAKKyAqIEBicmllZiBSZXR1cm5zIHRo
ZSBudW1lcmljIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBsaWJyYXJ5IHZlcnNpb24uCisgKgogICov
CiB1bnNpZ25lZCBpbnQgc3J0cF9nZXRfdmVyc2lvbih2b2lkKTsKIAogLyoqCiAgKiBAYnJpZWYg
c3J0cF9zZXRfZGVidWdfbW9kdWxlKG1vZF9uYW1lLCB2KQotICogCisgKgogICogc2V0cyBkeW5h
bWljIGRlYnVnZ2luZyB0byB0aGUgdmFsdWUgdiAoMCBmb3Igb2ZmLCAxIGZvciBvbikgZm9yIHRo
ZQogICogZGVidWcgbW9kdWxlIHdpdGggdGhlIG5hbWUgbW9kX25hbWUKICAqCkBAIC0xNzA2LDcg
KzE2NjEsOSBAQCB0eXBlZGVmIGVudW0gewogICogVGhlcmUgY2FuIG9ubHkgYmUgYSBzaW5nbGUs
IGdsb2JhbCBoYW5kbGVyIGZvciBhbGwgbG9nIG1lc3NhZ2VzIGluCiAgKiBsaWJTUlRQLgogICov
Ci10eXBlZGVmIHZvaWQgKHNydHBfbG9nX2hhbmRsZXJfZnVuY190KShzcnRwX2xvZ19sZXZlbF90
IGxldmVsLCBjb25zdCBjaGFyICogbXNnLCB2b2lkICpkYXRhKTsKK3R5cGVkZWYgdm9pZChzcnRw
X2xvZ19oYW5kbGVyX2Z1bmNfdCkoc3J0cF9sb2dfbGV2ZWxfdCBsZXZlbCwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqbXNnLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICB2b2lkICpkYXRhKTsKIAogLyoqCiAgKiBAYnJpZWYg
c2V0cyB0aGUgbG9nIGhhbmRsZXIgdG8gdGhlIGZ1bmN0aW9uIHN1cHBsaWVkIGJ5IHRoZSBjYWxs
ZXIuCkBAIC0xNzE5LDM0ICsxNjc2LDQ0IEBAIHR5cGVkZWYgdm9pZCAoc3J0cF9sb2dfaGFuZGxl
cl9mdW5jX3QpKHNydHBfbG9nX2xldmVsX3QgbGV2ZWwsIGNvbnN0IGNoYXIgKiBtc2csCiAgKgog
ICogQHBhcmFtIGZ1bmMgaXMgYSBwb2ludGVyIHRvIGEgZnVjdGlvbiBvZiB0eXBlIHNydHBfbG9n
X2hhbmRsZXJfZnVuY190LgogICogICAgICAgICAgICAgVGhpcyBmdW5jdGlvbiB3aWxsIGJlIHVz
ZWQgYnkgbGliU1JUUCB0byBvdXRwdXQgbG9nIG1lc3NhZ2VzLgotICogQHBhcmFtIGRhdGEgaXMg
YSB1c2VyIHBvaW50ZXIgdGhhdCB3aWxsIGJlIHJldHVybmVkIGFzIHRoZSBkYXRhIGFyZ3VtZW50
IGluIGZ1bmMuCisgKiBAcGFyYW0gZGF0YSBpcyBhIHVzZXIgcG9pbnRlciB0aGF0IHdpbGwgYmUg
cmV0dXJuZWQgYXMgdGhlIGRhdGEgYXJndW1lbnQgaW4KKyAqIGZ1bmMuCiAgKi8KLXNydHBfZXJy
X3N0YXR1c190IHNydHBfaW5zdGFsbF9sb2dfaGFuZGxlcihzcnRwX2xvZ19oYW5kbGVyX2Z1bmNf
dCBmdW5jLCB2b2lkICpkYXRhKTsKK3NydHBfZXJyX3N0YXR1c190IHNydHBfaW5zdGFsbF9sb2df
aGFuZGxlcihzcnRwX2xvZ19oYW5kbGVyX2Z1bmNfdCBmdW5jLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHZvaWQgKmRhdGEpOwogCiAvKioKICAqIEBicmllZiBz
cnRwX2dldF9wcm90ZWN0X3RyYWlsZXJfbGVuZ3RoKHNlc3Npb24sIHVzZV9ta2ksIG1raV9pbmRl
eCwgbGVuZ3RoKQogICoKLSAqIERldGVybWluZXMgdGhlIGxlbmd0aCBvZiB0aGUgYW1vdW50IG9m
IGRhdGEgTGliIFNSVFAgd2lsbCBhZGQgdG8gdGhlIAotICogcGFja2V0IGR1cmluZyB0aGUgcHJv
dGVjdCBwcm9jZXNzLiBUaGUgbGVuZ3RoIGlzIHJldHVybmVkIGluIHRoZSBsZW5ndGggcGFyYW1l
dGVyCisgKiBEZXRlcm1pbmVzIHRoZSBsZW5ndGggb2YgdGhlIGFtb3VudCBvZiBkYXRhIExpYiBT
UlRQIHdpbGwgYWRkIHRvIHRoZQorICogcGFja2V0IGR1cmluZyB0aGUgcHJvdGVjdCBwcm9jZXNz
LiBUaGUgbGVuZ3RoIGlzIHJldHVybmVkIGluIHRoZSBsZW5ndGgKKyAqIHBhcmFtZXRlcgogICoK
LSAqIHJldHVybnMgZXJyX3N0YXR1c19vayBvbiBzdWNjZXNzLCBlcnJfc3RhdHVzX2JhZF9ta2kg
aWYgdGhlIE1LSSBpbmRleCBpcyBpbnZhbGlkCisgKiByZXR1cm5zIGVycl9zdGF0dXNfb2sgb24g
c3VjY2VzcywgZXJyX3N0YXR1c19iYWRfbWtpIGlmIHRoZSBNS0kgaW5kZXggaXMKKyAqIGludmFs
aWQKICAqCiAgKi8KLXNydHBfZXJyX3N0YXR1c190IHNydHBfZ2V0X3Byb3RlY3RfdHJhaWxlcl9s
ZW5ndGgoc3J0cF90IHNlc3Npb24sIHVpbnQzMl90IHVzZV9ta2ksCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IG1raV9pbmRleCwgdWlu
dDMyX3QgKmxlbmd0aCk7CitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2dldF9wcm90ZWN0X3RyYWls
ZXJfbGVuZ3RoKHNydHBfdCBzZXNzaW9uLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCB1c2VfbWtpLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBta2lfaW5kZXgsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90ICps
ZW5ndGgpOwogCiAvKioKLSAqIEBicmllZiBzcnRwX2dldF9wcm90ZWN0X3J0Y3BfdHJhaWxlcl9s
ZW5ndGgoc2Vzc2lvbiwgdXNlX21raSwgbWtpX2luZGV4LCBsZW5ndGgpCisgKiBAYnJpZWYgc3J0
cF9nZXRfcHJvdGVjdF9ydGNwX3RyYWlsZXJfbGVuZ3RoKHNlc3Npb24sIHVzZV9ta2ksIG1raV9p
bmRleCwKKyAqIGxlbmd0aCkKICAqCi0gKiBEZXRlcm1pbmVzIHRoZSBsZW5ndGggb2YgdGhlIGFt
b3VudCBvZiBkYXRhIExpYiBTUlRQIHdpbGwgYWRkIHRvIHRoZSAKLSAqIHBhY2tldCBkdXJpbmcg
dGhlIHByb3RlY3QgcHJvY2Vzcy4gVGhlIGxlbmd0aCBpcyByZXR1cm5lZCBpbiB0aGUgbGVuZ3Ro
IHBhcmFtZXRlcgorICogRGV0ZXJtaW5lcyB0aGUgbGVuZ3RoIG9mIHRoZSBhbW91bnQgb2YgZGF0
YSBMaWIgU1JUUCB3aWxsIGFkZCB0byB0aGUKKyAqIHBhY2tldCBkdXJpbmcgdGhlIHByb3RlY3Qg
cHJvY2Vzcy4gVGhlIGxlbmd0aCBpcyByZXR1cm5lZCBpbiB0aGUgbGVuZ3RoCisgKiBwYXJhbWV0
ZXIKICAqCi0gKiByZXR1cm5zIGVycl9zdGF0dXNfb2sgb24gc3VjY2VzcywgZXJyX3N0YXR1c19i
YWRfbWtpIGlmIHRoZSBNS0kgaW5kZXggaXMgaW52YWxpZAorICogcmV0dXJucyBlcnJfc3RhdHVz
X29rIG9uIHN1Y2Nlc3MsIGVycl9zdGF0dXNfYmFkX21raSBpZiB0aGUgTUtJIGluZGV4IGlzCisg
KiBpbnZhbGlkCiAgKgogICovCi1zcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2dldF9wcm90ZWN0X3J0
Y3BfdHJhaWxlcl9sZW5ndGgoc3J0cF90IHNlc3Npb24sIHVpbnQzMl90IHVzZV9ta2ksCi0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMy
X3QgbWtpX2luZGV4LCB1aW50MzJfdCAqbGVuZ3RoKTsKLQorc3J0cF9lcnJfc3RhdHVzX3Qgc3J0
cF9nZXRfcHJvdGVjdF9ydGNwX3RyYWlsZXJfbGVuZ3RoKHNydHBfdCBzZXNzaW9uLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90
IHVzZV9ta2ksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgdWludDMyX3QgbWtpX2luZGV4LAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90ICpsZW5ndGgpOwogCiAvKioKICAq
IEBicmllZiBzcnRwX3NldF9zdHJlYW1fcm9jKHNlc3Npb24sIHNzcmMsIHJvYykKQEAgLTE3NTcs
NyArMTcyNCw5IEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfZ2V0X3Byb3RlY3RfcnRjcF90cmFp
bGVyX2xlbmd0aChzcnRwX3Qgc2Vzc2lvbiwgdWludDMyX3QKICAqIHN0cmVhbSBmb3VuZAogICoK
ICAqLwotc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9zZXRfc3RyZWFtX3JvYyhzcnRwX3Qgc2Vzc2lv
biwgdWludDMyX3Qgc3NyYywgdWludDMyX3Qgcm9jKTsKK3NydHBfZXJyX3N0YXR1c190IHNydHBf
c2V0X3N0cmVhbV9yb2Moc3J0cF90IHNlc3Npb24sCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHVpbnQzMl90IHNzcmMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHVpbnQzMl90IHJvYyk7CiAKIC8qKgogICogQGJyaWVmIHNydHBfZ2V0X3N0cmVh
bV9yb2Moc2Vzc2lvbiwgc3NyYywgcm9jKQpAQCAtMTc2OCwxNCArMTczNywxNyBAQCBzcnRwX2Vy
cl9zdGF0dXNfdCBzcnRwX3NldF9zdHJlYW1fcm9jKHNydHBfdCBzZXNzaW9uLCB1aW50MzJfdCBz
c3JjLCB1aW50MzJfdCBybwogICogc3RyZWFtIGZvdW5kCiAgKgogICovCi1zcnRwX2Vycl9zdGF0
dXNfdCBzcnRwX2dldF9zdHJlYW1fcm9jKHNydHBfdCBzZXNzaW9uLCB1aW50MzJfdCBzc3JjLCB1
aW50MzJfdCAqcm9jKTsKLQorc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9nZXRfc3RyZWFtX3JvYyhz
cnRwX3Qgc2Vzc2lvbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWlu
dDMyX3Qgc3NyYywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMy
X3QgKnJvYyk7CiAKIC8qKgogICogQH0KICAqLworCiAvKiBpbiBob3N0IG9yZGVyLCBzbyBvdXRz
aWRlIHRoZSAjaWYgKi8KLSNkZWZpbmUgU1JUQ1BfRV9CSVQgICAgICAweDgwMDAwMDAwCisjZGVm
aW5lIFNSVENQX0VfQklUIDB4ODAwMDAwMDAKKwogLyogZm9yIGJ5dGUtYWNjZXNzICovCiAjZGVm
aW5lIFNSVENQX0VfQllURV9CSVQgMHg4MAogI2RlZmluZSBTUlRDUF9JTkRFWF9NQVNLIDB4N2Zm
ZmZmZmYKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlic3J0cC9pbmNsdWRlL3NydHBfcHJpdi5oIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2luY2x1ZGUvc3J0cF9wcml2LmgK
aW5kZXggMjRkMTkyZGJjYTM1NzY0NWY5ZjBiOWE5ZjY5MmIyYTJhNDY4MTlkOC4uOTg4ZWZjNDE2
NGQzYzFjNGQ3ZWU2YTcyOWE5N2Y4ZjQ5NjUzOGE1OCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL2luY2x1ZGUvc3J0cF9w
cml2LmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0
eS9saWJzcnRwL2luY2x1ZGUvc3J0cF9wcml2LmgKQEAgLTcsMjYgKzcsMjYgQEAKICAqIENpc2Nv
IFN5c3RlbXMsIEluYy4KICAqLwogLyoKLSAqCQorICoKICAqIENvcHlyaWdodCAoYykgMjAwMS0y
MDE3IENpc2NvIFN5c3RlbXMsIEluYy4KICAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKiAKKyAq
CiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwogICogYXJlIG1ldDoKLSAqIAorICoKICAqICAg
UmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5
cmlnaHQKICAqICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgotICogCisgKgogICogICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5
IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCiAgKiAgIGNvcHlyaWdodCBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCiAgKiAgIGRpc2NsYWltZXIg
aW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZAogICog
ICB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKiAKKyAqCiAgKiAgIE5laXRoZXIgdGhlIG5hbWUg
b2YgdGhlIENpc2NvIFN5c3RlbXMsIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKICAqICAgY29u
dHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJp
dmVkCiAgKiAgIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0
ZW4gcGVybWlzc2lvbi4KLSAqIAorICoKICAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkg
VEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKICAqICJBUyBJUyIgQU5EIEFO
WSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCiAgKiBM
SU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg
RklUTkVTUwpAQCAtNjIsMTQgKzYyLDE0IEBACiBleHRlcm4gIkMiIHsKICNlbmRpZgogCi0jZGVm
aW5lIFNSVFBfVkVSX1NUUklORwkgICAgUEFDS0FHRV9TVFJJTkcKLSNkZWZpbmUgU1JUUF9WRVJT
SU9OICAgICAgICBQQUNLQUdFX1ZFUlNJT04KKyNkZWZpbmUgU1JUUF9WRVJfU1RSSU5HIFBBQ0tB
R0VfU1RSSU5HCisjZGVmaW5lIFNSVFBfVkVSU0lPTiBQQUNLQUdFX1ZFUlNJT04KIAogdHlwZWRl
ZiBzdHJ1Y3Qgc3J0cF9zdHJlYW1fY3R4X3RfIHNydHBfc3RyZWFtX2N0eF90OwogdHlwZWRlZiBz
cnRwX3N0cmVhbV9jdHhfdCAqc3J0cF9zdHJlYW1fdDsKIAogLyoKLSAqIHRoZSBmb2xsb3dpbmcg
ZGVjbGFyYXRpb25zIGFyZSBsaWJTUlRQIGludGVybmFsIGZ1bmN0aW9ucyAKKyAqIHRoZSBmb2xs
b3dpbmcgZGVjbGFyYXRpb25zIGFyZSBsaWJTUlRQIGludGVybmFsIGZ1bmN0aW9ucwogICovCiAK
IC8qCkBAIC03OCw3ICs3OCw2IEBAIHR5cGVkZWYgc3J0cF9zdHJlYW1fY3R4X3QgKnNydHBfc3Ry
ZWFtX3Q7CiAgKi8KIHNydHBfc3RyZWFtX3Qgc3J0cF9nZXRfc3RyZWFtKHNydHBfdCBzcnRwLCB1
aW50MzJfdCBzc3JjKTsKIAotCiAvKgogICogc3J0cF9zdHJlYW1faW5pdF9rZXlzKHMsIGspIChy
ZSlpbml0aWFsaXplcyB0aGUgc3J0cF9zdHJlYW1fdCBzIGJ5CiAgKiBkZXJpdmluZyBhbGwgb2Yg
dGhlIG5lZWRlZCBrZXlzIHVzaW5nIHRoZSBLREYgYW5kIHRoZSBrZXkgay4KQEAgLTg4LDI5ICs4
NywyOSBAQCBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3N0cmVhbV9pbml0X2tleXMoc3J0cF9zdHJl
YW1fY3R4X3QgKnNydHAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Y29uc3QgdW5zaWduZWQgaW50IGN1cnJlbnRfbWtpX2luZGV4KTsKIAogLyoKLSAqIHNydHBfc3Ry
ZWFtX2luaXRfYWxsX21hc3Rlcl9rZXlzKHMsIGssIG0pIChyZSlpbml0aWFsaXplcyB0aGUgc3J0
cF9zdHJlYW1fdCBzIGJ5Ci0gKiBkZXJpdmluZyBhbGwgb2YgdGhlIG5lZWRlZCBrZXlzIGZvciBh
bGwgdGhlIG1hc3RlciBrZXlzIHVzaW5nIHRoZSBLREYgYW5kIHRoZSBrZXlzIGZyb20gay4KKyAq
IHNydHBfc3RyZWFtX2luaXRfYWxsX21hc3Rlcl9rZXlzKHMsIGssIG0pIChyZSlpbml0aWFsaXpl
cyB0aGUgc3J0cF9zdHJlYW1fdCBzCisgKiBieSBkZXJpdmluZyBhbGwgb2YgdGhlIG5lZWRlZCBr
ZXlzIGZvciBhbGwgdGhlIG1hc3RlciBrZXlzIHVzaW5nIHRoZSBLREYgYW5kCisgKiB0aGUga2V5
cyBmcm9tIGsuCiAgKi8KLXNydHBfZXJyX3N0YXR1c190IHNydHBfc3RlYW1faW5pdF9hbGxfbWFz
dGVyX2tleXMoc3J0cF9zdHJlYW1fY3R4X3QgKnNydHAsCi0gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGNoYXIgKmtleSwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF9tYXN0ZXJfa2V5
X3QgKiprZXlzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBjb25zdCB1bnNpZ25lZCBpbnQgbWF4X21hc3Rlcl9rZXlzKTsKK3NydHBfZXJyX3N0YXR1
c190IHNydHBfc3RlYW1faW5pdF9hbGxfbWFzdGVyX2tleXMoCisgICAgc3J0cF9zdHJlYW1fY3R4
X3QgKnNydHAsCisgICAgdW5zaWduZWQgY2hhciAqa2V5LAorICAgIHNydHBfbWFzdGVyX2tleV90
ICoqa2V5cywKKyAgICBjb25zdCB1bnNpZ25lZCBpbnQgbWF4X21hc3Rlcl9rZXlzKTsKIAogLyoK
LSAqIHNydHBfc3RyZWFtX2luaXQocywgcCkgaW5pdGlhbGl6ZXMgdGhlIHNydHBfc3RyZWFtX3Qg
cyB0byAKKyAqIHNydHBfc3RyZWFtX2luaXQocywgcCkgaW5pdGlhbGl6ZXMgdGhlIHNydHBfc3Ry
ZWFtX3QgcyB0bwogICogdXNlIHRoZSBwb2xpY3kgYXQgdGhlIGxvY2F0aW9uIHAKICAqLwogc3J0
cF9lcnJfc3RhdHVzX3Qgc3J0cF9zdHJlYW1faW5pdChzcnRwX3N0cmVhbV90IHNydHAsIGNvbnN0
IHNydHBfcG9saWN5X3QgKnApOwogCi0KIC8qCi0gKiBsaWJzcnRwIGludGVybmFsIGRhdGF0eXBl
cyAKKyAqIGxpYnNydHAgaW50ZXJuYWwgZGF0YXR5cGVzCiAgKi8KLQotdHlwZWRlZiBlbnVtIGRp
cmVjdGlvbl90IHsgCi0gIGRpcl91bmtub3duICAgICAgID0gMCwKLSAgZGlyX3NydHBfc2VuZGVy
ICAgPSAxLCAKLSAgZGlyX3NydHBfcmVjZWl2ZXIgPSAyCit0eXBlZGVmIGVudW0gZGlyZWN0aW9u
X3QgeworICAgIGRpcl91bmtub3duID0gMCwKKyAgICBkaXJfc3J0cF9zZW5kZXIgPSAxLAorICAg
IGRpcl9zcnRwX3JlY2VpdmVyID0gMgogfSBkaXJlY3Rpb25fdDsKIAogLyoKQEAgLTExOSw1NiAr
MTE4LDUyIEBAIHR5cGVkZWYgZW51bSBkaXJlY3Rpb25fdCB7CiAgKiBNS0kgSUQgd2hpY2ggaXMg
dXNlZCB0byBpZGVudGlmeSB0aGUgc2Vzc2lvbiBrZXlzLgogICovCiB0eXBlZGVmIHN0cnVjdCBz
cnRwX3Nlc3Npb25fa2V5c190IHsKLSAgc3J0cF9jaXBoZXJfdCAqcnRwX2NpcGhlcjsKLSAgc3J0
cF9jaXBoZXJfdCAqcnRwX3h0bl9oZHJfY2lwaGVyOwotICBzcnRwX2F1dGhfdCAgICpydHBfYXV0
aDsKLSAgc3J0cF9jaXBoZXJfdCAqcnRjcF9jaXBoZXI7Ci0gIHNydHBfYXV0aF90ICAgKnJ0Y3Bf
YXV0aDsKLSAgdWludDhfdCAgICAgICAgc2FsdFtTUlRQX0FFQURfU0FMVF9MRU5dOwotICB1aW50
OF90ICAgICAgICBjX3NhbHRbU1JUUF9BRUFEX1NBTFRfTEVOXTsKLSAgdWludDhfdCAgICAgICAq
bWtpX2lkOwotICB1bnNpZ25lZCBpbnQgICBta2lfc2l6ZTsKLSAgc3J0cF9rZXlfbGltaXRfY3R4
X3QgKmxpbWl0OworICAgIHNydHBfY2lwaGVyX3QgKnJ0cF9jaXBoZXI7CisgICAgc3J0cF9jaXBo
ZXJfdCAqcnRwX3h0bl9oZHJfY2lwaGVyOworICAgIHNydHBfYXV0aF90ICpydHBfYXV0aDsKKyAg
ICBzcnRwX2NpcGhlcl90ICpydGNwX2NpcGhlcjsKKyAgICBzcnRwX2F1dGhfdCAqcnRjcF9hdXRo
OworICAgIHVpbnQ4X3Qgc2FsdFtTUlRQX0FFQURfU0FMVF9MRU5dOworICAgIHVpbnQ4X3QgY19z
YWx0W1NSVFBfQUVBRF9TQUxUX0xFTl07CisgICAgdWludDhfdCAqbWtpX2lkOworICAgIHVuc2ln
bmVkIGludCBta2lfc2l6ZTsKKyAgICBzcnRwX2tleV9saW1pdF9jdHhfdCAqbGltaXQ7CiB9IHNy
dHBfc2Vzc2lvbl9rZXlzX3Q7CiAKLQotLyogCisvKgogICogYW4gc3J0cF9zdHJlYW1fdCBoYXMg
aXRzIG93biBTU1JDLCBlbmNyeXB0aW9uIGtleSwgYXV0aGVudGljYXRpb24KICAqIGtleSwgc2Vx
dWVuY2UgbnVtYmVyLCBhbmQgcmVwbGF5IGRhdGFiYXNlCi0gKiAKKyAqCiAgKiBub3RlIHRoYXQg
dGhlIGtleXMgbWlnaHQgbm90IGFjdHVhbGx5IGJlIHVuaXF1ZSwgaW4gd2hpY2ggY2FzZSB0aGUK
ICAqIHNydHBfY2lwaGVyX3QgYW5kIHNydHBfYXV0aF90IHBvaW50ZXJzIHdpbGwgcG9pbnQgdG8g
dGhlIHNhbWUgc3RydWN0dXJlcwogICovCi0KIHR5cGVkZWYgc3RydWN0IHNydHBfc3RyZWFtX2N0
eF90XyB7Ci0gIHVpbnQzMl90ICAgc3NyYzsKLSAgc3J0cF9zZXNzaW9uX2tleXNfdCAqc2Vzc2lv
bl9rZXlzOwotICB1bnNpZ25lZCBpbnQgbnVtX21hc3Rlcl9rZXlzOwotICBzcnRwX3JkYnhfdCAg
ICAgcnRwX3JkYng7Ci0gIHNydHBfc2VjX3NlcnZfdCBydHBfc2VydmljZXM7Ci0gIHNydHBfcmRi
X3QgICAgICBydGNwX3JkYjsKLSAgc3J0cF9zZWNfc2Vydl90IHJ0Y3Bfc2VydmljZXM7Ci0gIGRp
cmVjdGlvbl90IGRpcmVjdGlvbjsKLSAgaW50ICAgICAgICBhbGxvd19yZXBlYXRfdHg7Ci0gIHNy
dHBfZWt0X3N0cmVhbV90IGVrdDsgCi0gIGludCAgICAgICAqZW5jX3h0bl9oZHI7Ci0gIGludCAg
ICAgICAgZW5jX3h0bl9oZHJfY291bnQ7Ci0gIHVpbnQzMl90IHBlbmRpbmdfcm9jOwotICBzdHJ1
Y3Qgc3J0cF9zdHJlYW1fY3R4X3RfICpuZXh0OyAgIC8qIGxpbmtlZCBsaXN0IG9mIHN0cmVhbXMg
Ki8KKyAgICB1aW50MzJfdCBzc3JjOworICAgIHNydHBfc2Vzc2lvbl9rZXlzX3QgKnNlc3Npb25f
a2V5czsKKyAgICB1bnNpZ25lZCBpbnQgbnVtX21hc3Rlcl9rZXlzOworICAgIHNydHBfcmRieF90
IHJ0cF9yZGJ4OworICAgIHNydHBfc2VjX3NlcnZfdCBydHBfc2VydmljZXM7CisgICAgc3J0cF9y
ZGJfdCBydGNwX3JkYjsKKyAgICBzcnRwX3NlY19zZXJ2X3QgcnRjcF9zZXJ2aWNlczsKKyAgICBk
aXJlY3Rpb25fdCBkaXJlY3Rpb247CisgICAgaW50IGFsbG93X3JlcGVhdF90eDsKKyAgICBzcnRw
X2VrdF9zdHJlYW1fdCBla3Q7CisgICAgaW50ICplbmNfeHRuX2hkcjsKKyAgICBpbnQgZW5jX3h0
bl9oZHJfY291bnQ7CisgICAgdWludDMyX3QgcGVuZGluZ19yb2M7CisgICAgc3RydWN0IHNydHBf
c3RyZWFtX2N0eF90XyAqbmV4dDsgLyogbGlua2VkIGxpc3Qgb2Ygc3RyZWFtcyAqLwogfSBzdHJw
X3N0cmVhbV9jdHhfdF87CiAKLQogLyoKICAqIGFuIHNydHBfY3R4X3QgaG9sZHMgYSBzdHJlYW0g
bGlzdCBhbmQgYSBzZXJ2aWNlIGRlc2NyaXB0aW9uCiAgKi8KLQogdHlwZWRlZiBzdHJ1Y3Qgc3J0
cF9jdHhfdF8gewotICBzdHJ1Y3Qgc3J0cF9zdHJlYW1fY3R4X3RfICpzdHJlYW1fbGlzdDsgICAg
IC8qIGxpbmtlZCBsaXN0IG9mIHN0cmVhbXMgICAgICAgICAgICAqLwotICBzdHJ1Y3Qgc3J0cF9z
dHJlYW1fY3R4X3RfICpzdHJlYW1fdGVtcGxhdGU7IC8qIGFjdCBhcyB0ZW1wbGF0ZSBmb3Igb3Ro
ZXIgc3RyZWFtcyAqLwotICB2b2lkICp1c2VyX2RhdGE7ICAgICAgICAgICAgICAgICAgICAvKiB1
c2VyIGN1c3RvbSBkYXRhICovCisgICAgc3RydWN0IHNydHBfc3RyZWFtX2N0eF90XyAqc3RyZWFt
X2xpc3Q7ICAgICAvKiBsaW5rZWQgbGlzdCBvZiBzdHJlYW1zICAgICAqLworICAgIHN0cnVjdCBz
cnRwX3N0cmVhbV9jdHhfdF8gKnN0cmVhbV90ZW1wbGF0ZTsgLyogYWN0IGFzIHRlbXBsYXRlIGZv
ciBvdGhlciAgKi8KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIHN0cmVhbXMgICAgICAgICAgICAgICAgICAgICovCisgICAgdm9pZCAqdXNlcl9kYXRh
OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiB1c2VyIGN1c3RvbSBkYXRhICAgICAgICAg
ICAqLwogfSBzcnRwX2N0eF90XzsKIAotCiAvKgogICogc3J0cF9oZHJfdCByZXByZXNlbnRzIGFu
IFJUUCBvciBTUlRQIGhlYWRlci4gIFRoZSBiaXQtZmllbGRzIGluCiAgKiB0aGlzIHN0cnVjdHVy
ZSBzaG91bGQgYmUgZGVjbGFyZWQgInVuc2lnbmVkIGludCIgaW5zdGVhZCBvZgpAQCAtMjExLDEz
ICsyMDYsMTEgQEAgdHlwZWRlZiBzdHJ1Y3QgewogCiAjZW5kaWYKIAotCiB0eXBlZGVmIHN0cnVj
dCB7Ci0gIHVpbnQxNl90IHByb2ZpbGVfc3BlY2lmaWM7ICAgLyogcHJvZmlsZS1zcGVjaWZpYyBp
bmZvICAgICAgICAgICAgICAgKi8KLSAgdWludDE2X3QgbGVuZ3RoOyAgICAgICAgICAgICAvKiBu
dW1iZXIgb2YgMzItYml0IHdvcmRzIGluIGV4dGVuc2lvbiAqLworICAgIHVpbnQxNl90IHByb2Zp
bGVfc3BlY2lmaWM7IC8qIHByb2ZpbGUtc3BlY2lmaWMgaW5mbyAgICAgICAgICAgICAgICovCisg
ICAgdWludDE2X3QgbGVuZ3RoOyAgICAgICAgICAgLyogbnVtYmVyIG9mIDMyLWJpdCB3b3JkcyBp
biBleHRlbnNpb24gKi8KIH0gc3J0cF9oZHJfeHRuZF90OwogCi0KIC8qCiAgKiBzcnRjcF9oZHJf
dCByZXByZXNlbnRzIGEgc2VjdXJlIHJ0Y3AgaGVhZGVyCiAgKgpAQCAtMjM3LDEwICsyMzAsMTAg
QEAgdHlwZWRlZiBzdHJ1Y3QgewogfSBzcnRjcF9oZHJfdDsKIAogdHlwZWRlZiBzdHJ1Y3Qgewot
ICAgIHVuc2lnbmVkIGludCBpbmRleCA6IDMxOyAgIC8qIHNydGNwIHBhY2tldCBpbmRleCBpbiBu
ZXR3b3JrIG9yZGVyISAgKi8KLSAgICB1bnNpZ25lZCBpbnQgZSA6IDE7ICAgICAgICAvKiBlbmNy
eXB0ZWQ/IDE9eWVzICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgLyogb3B0aW9uYWwgbWlrZXkvZXRjIGdvIGhlcmUgICAgICAgICAgICAqLwot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIGFuZCB0aGVuIHRoZSB2YXJpYWJsZS1s
ZW5ndGggYXV0aCB0YWcgKi8KKyAgICB1bnNpZ25lZCBpbnQgaW5kZXggOiAzMTsgLyogc3J0Y3Ag
cGFja2V0IGluZGV4IGluIG5ldHdvcmsgb3JkZXIhICAqLworICAgIHVuc2lnbmVkIGludCBlIDog
MTsgICAgICAvKiBlbmNyeXB0ZWQ/IDE9eWVzICAgICAgICAgICAgICAgICAgICAgICovCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIG9wdGlvbmFsIG1pa2V5L2V0YyBnbyBoZXJlICAg
ICAgICAgICAgKi8KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogYW5kIHRoZW4gdGhl
IHZhcmlhYmxlLWxlbmd0aCBhdXRoIHRhZyAqLwogfSBzcnRjcF90cmFpbGVyX3Q7CiAKICNlbHNl
IC8qICBCSUdfRU5ESUFOICovCkBAIC0yNTUsMzEgKzI0OCwzMCBAQCB0eXBlZGVmIHN0cnVjdCB7
CiB9IHNydGNwX2hkcl90OwogCiB0eXBlZGVmIHN0cnVjdCB7Ci0gICAgdW5zaWduZWQgaW50IGUg
OiAxOyAgICAgICAgLyogZW5jcnlwdGVkPyAxPXllcyAgICAgICAgICAgICAgICAgICAgICAqLwot
ICAgIHVuc2lnbmVkIGludCBpbmRleCA6IDMxOyAgIC8qIHNydGNwIHBhY2tldCBpbmRleCAgICAg
ICAgICAgICAgICAgICAgKi8KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBvcHRp
b25hbCBtaWtleS9ldGMgZ28gaGVyZSAgICAgICAgICAgICovCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgLyogYW5kIHRoZW4gdGhlIHZhcmlhYmxlLWxlbmd0aCBhdXRoIHRhZyAqLwor
ICAgIHVuc2lnbmVkIGludCBlIDogMTsgICAgICAvKiBlbmNyeXB0ZWQ/IDE9eWVzICAgICAgICAg
ICAgICAgICAgICAgICovCisgICAgdW5zaWduZWQgaW50IGluZGV4IDogMzE7IC8qIHNydGNwIHBh
Y2tldCBpbmRleCAgICAgICAgICAgICAgICAgICAgKi8KKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgLyogb3B0aW9uYWwgbWlrZXkvZXRjIGdvIGhlcmUgICAgICAgICAgICAqLworICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAvKiBhbmQgdGhlbiB0aGUgdmFyaWFibGUtbGVuZ3RoIGF1
dGggdGFnICovCiB9IHNydGNwX3RyYWlsZXJfdDsKIAogI2VuZGlmCiAKLQogLyoKICAqIHNydHBf
aGFuZGxlX2V2ZW50KHNydHAsIHNydG0sIGV2bnQpIGNhbGxzIHRoZSBldmVudCBoYW5kbGluZwog
ICogZnVuY3Rpb24sIGlmIHRoZXJlIGlzIG9uZS4KICAqCi0gKiBUaGlzIG1hY3JvIGlzIG5vdCBp
bmNsdWRlZCBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhcyBpdCBpcyAKKyAqIFRoaXMgbWFjcm8gaXMg
bm90IGluY2x1ZGVkIGluIHRoZSBkb2N1bWVudGF0aW9uIGFzIGl0IGlzCiAgKiBhbiBpbnRlcm5h
bC1vbmx5IGZ1bmN0aW9uLgogICovCiAKLSNkZWZpbmUgc3J0cF9oYW5kbGVfZXZlbnQoc3J0cCwg
c3RybSwgZXZudCkgICAgICAgICBcCi0gICBpZihzcnRwX2V2ZW50X2hhbmRsZXIpIHsgICAgICAg
ICAgICAgICAgICAgICAgICAgXAotICAgICAgc3J0cF9ldmVudF9kYXRhX3QgZGF0YTsgICAgICAg
ICAgICAgICAgICAgICAgIFwKLSAgICAgIGRhdGEuc2Vzc2lvbiA9IHNydHA7ICAgICAgICAgICAg
ICAgICAgICAgICAgICBcCi0gICAgICBkYXRhLnNzcmMgICAgPSBudG9obChzdHJtLT5zc3JjKTsg
ICAgICAgICAgICAgXAotICAgICAgZGF0YS5ldmVudCAgID0gZXZudDsgICAgICAgICAgICAgICAg
ICAgICAgICAgIFwKLSAgICAgIHNydHBfZXZlbnRfaGFuZGxlcigmZGF0YSk7ICAgICAgICAgICAg
ICAgICAgICBcCi19ICAgCisjZGVmaW5lIHNydHBfaGFuZGxlX2V2ZW50KHNydHAsIHN0cm0sIGV2
bnQpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgIGlmIChzcnRwX2V2
ZW50X2hhbmRsZXIpIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFwKKyAgICAgICAgc3J0cF9ldmVudF9kYXRhX3QgZGF0YTsgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgIGRhdGEuc2Vzc2lvbiA9
IHNydHA7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
XAorICAgICAgICBkYXRhLnNzcmMgPSBudG9obChzdHJtLT5zc3JjKTsgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgZGF0YS5ldmVudCA9IGV2bnQ7ICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAg
ICAgIHNydHBfZXZlbnRfaGFuZGxlcigmZGF0YSk7ICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgXAorICAgIH0KIAogI2lmZGVmIF9fY3BsdXNwbHVzCiB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnNydHAvaW5jbHVkZS91dF9zaW0uaCBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlic3J0cC9pbmNsdWRlL3V0X3NpbS5oCmluZGV4IGQ1YzA0YmFlZTcy
ZTA4OWYxYTZmMjMzZTIzNjdlYmI0YjA5MGUwN2UuLmU2NzhiNWZkZjdlNGRmNzk0OGI3ZDU2MDYx
MDMyMjgxZWU0YjgzYWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9pbmNsdWRlL3V0X3NpbS5oCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9pbmNsdWRlL3V0
X3NpbS5oCkBAIC05LDI2ICs5LDI2IEBACiAgKi8KIAogLyoKLSAqCQorICoKICAqIENvcHlyaWdo
dCAoYykgMjAwMS0yMDE3LCBDaXNjbyBTeXN0ZW1zLCBJbmMuCiAgKiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgotICogCisgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKICAqIGFyZSBtZXQ6Ci0g
KiAKKyAqCiAgKiAgIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0CiAgKiAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIAorICoKICAqICAgUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQogICogICBjb3B5cmln
aHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZwogICog
ICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQKICAqICAgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICogCisgKgogICogICBOZWl0
aGVyIHRoZSBuYW1lIG9mIHRoZSBDaXNjbyBTeXN0ZW1zLCBJbmMuIG5vciB0aGUgbmFtZXMgb2Yg
aXRzCiAgKiAgIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUg
cHJvZHVjdHMgZGVyaXZlZAogICogICBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZp
YyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0gKiAKKyAqCiAgKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCiAgKiAi
QVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVAogICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MKQEAgLTQ0LDQxICs0NCwzNyBAQAogICoKICAqLwogCi0KLQog
I2lmbmRlZiBVVF9TSU1fSAogI2RlZmluZSBVVF9TSU1fSAogCi0jaW5jbHVkZSAiaW50ZWdlcnMu
aCIgIC8qIGZvciB1aW50MzJfdCAqLworI2luY2x1ZGUgImludGVnZXJzLmgiIC8qIGZvciB1aW50
MzJfdCAqLwogCiAjaWZkZWYgX19jcGx1c3BsdXMKIGV4dGVybiAiQyIgewogI2VuZGlmCiAKLSNk
ZWZpbmUgVVRfQlVGIDE2MCAgICAgIC8qIG1heGltdW0gYW1vdW50IG9mIHBhY2tldCByZW9yZGVy
ICovCisjZGVmaW5lIFVUX0JVRiAxNjAgLyogbWF4aW11bSBhbW91bnQgb2YgcGFja2V0IHJlb3Jk
ZXIgKi8KIAogdHlwZWRlZiBzdHJ1Y3QgewotICB1aW50MzJfdCBpbmRleDsKLSAgdWludDMyX3Qg
YnVmZmVyW1VUX0JVRl07CisgICAgdWludDMyX3QgaW5kZXg7CisgICAgdWludDMyX3QgYnVmZmVy
W1VUX0JVRl07CiB9IHV0X2Nvbm5lY3Rpb247CiAKIC8qCi0gKiB1dF9pbml0KCZ1KSBpbml0aWFs
aXplcyB0aGUgdXRfY29ubmVjdGlvbiAKKyAqIHV0X2luaXQoJnUpIGluaXRpYWxpemVzIHRoZSB1
dF9jb25uZWN0aW9uCiAgKgogICogdGhpcyBmdW5jdGlvbiBzaG91bGQgYWx3YXlzIGJlIHRoZSBm
aXJzdCBvbmUgY2FsbGVkIG9uIGEgbmV3CiAgKiB1dF9jb25uZWN0aW9uCiAgKi8KIAotdm9pZAot
dXRfaW5pdCh1dF9jb25uZWN0aW9uICp1dGMpOwordm9pZCB1dF9pbml0KHV0X2Nvbm5lY3Rpb24g
KnV0Yyk7CiAKIC8qCiAgKiB1dF9uZXh0X2luZGV4KCZ1KSByZXR1cm5zIHRoZSBuZXh0IGluZGV4
IGZyb20gdGhlIHNpbXVsYXRlZAogICogdW5yZWxpYWJsZSBjb25uZWN0aW9uCiAgKi8KIAotdWlu
dDMyX3QKLXV0X25leHRfaW5kZXgodXRfY29ubmVjdGlvbiAqdXRjKTsKK3VpbnQzMl90IHV0X25l
eHRfaW5kZXgodXRfY29ubmVjdGlvbiAqdXRjKTsKIAogI2lmZGVmIF9fY3BsdXNwbHVzCiB9CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L2xpYnNydHAvc3J0cC9la3QuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlic3J0cC9zcnRwL2VrdC5jCmluZGV4IGNkMmMwNWQ5YzdiNzBiMDA1ZDQy
N2RiZmZlMjZmMDYyOTUxMjc2NTUuLmI1NGVjZjY0ZWI0NDVlZTU5NDE0MjVhMjJmNDZhMTZjZmRl
N2Y0YzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhp
cmRfcGFydHkvbGlic3J0cC9zcnRwL2VrdC5jCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndl
YnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9zcnRwL2VrdC5jCkBAIC0yLDMxICsyLDMx
IEBACiAgKiBla3QuYwogICoKICAqIEVuY3J5cHRlZCBLZXkgVHJhbnNwb3J0IGZvciBTUlRQCi0g
KiAKKyAqCiAgKiBEYXZpZCBNY0dyZXcKICAqIENpc2NvIFN5c3RlbXMsIEluYy4KICAqLwogLyoK
LSAqCQorICoKICAqIENvcHlyaWdodCAoYykgMjAwMS0yMDE3IENpc2NvIFN5c3RlbXMsIEluYy4K
ICAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKiAKKyAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlm
aWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucwogICogYXJlIG1ldDoKLSAqIAorICoKICAqICAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKICAqICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogCisg
KgogICogICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlCiAgKiAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nCiAgKiAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZAogICogICB3aXRoIHRoZSBkaXN0cmlidXRpb24u
Ci0gKiAKKyAqCiAgKiAgIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIENpc2NvIFN5c3RlbXMsIElu
Yy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKICAqICAgY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRv
IGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkCiAgKiAgIGZyb20gdGhpcyBzb2Z0
d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLSAqIAorICoK
ICAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFO
RCBDT05UUklCVVRPUlMKICAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCiAgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBX
QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUwpAQCAtNDIsNyArNDIsNiBA
QAogICoKICAqLwogCi0KICNpbmNsdWRlICJzcnRwX3ByaXYuaCIKICNpbmNsdWRlICJlcnIuaCIK
ICNpbmNsdWRlICJla3QuaCIKQEAgLTY0LDE5NSArNjMsMjE5IEBAIGV4dGVybiBzcnRwX2RlYnVn
X21vZHVsZV90IG1vZF9zcnRwOwogICogICB8ICAgIEluaXRpYWwgU2VxdWVuY2UgTnVtYmVyICAg
IHwgICBTZWN1cml0eSBQYXJhbWV0ZXIgSW5kZXggICAgfAogICogICArLSstKy0rLSstKy0rLSst
Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKwogICoKLSAq
LwkJCSAKKyAqLwogCiAjZGVmaW5lIEVLVF9PQ1RFVFNfQUZURVJfQkFTRV9UQUcgMjQKLSNkZWZp
bmUgRUtUX09DVEVUU19BRlRFUl9FTUsgICAgICAgOAotI2RlZmluZSBFS1RfT0NURVRTX0FGVEVS
X1JPQyAgICAgICA0Ci0jZGVmaW5lIEVLVF9TUElfTEVOICAgICAgICAgICAgICAgIDIKLQotdW5z
aWduZWQgc3J0cF9la3Rfb2N0ZXRzX2FmdGVyX2Jhc2VfdGFnKHNydHBfZWt0X3N0cmVhbV90IGVr
dCkgewotICAvKgotICAgKiBpZiB0aGUgcG9pbnRlciBla3QgaXMgTlVMTCwgdGhlbiBFS1QgaXMg
bm90IGluIGVmZmVjdCwgc28gd2UKLSAgICogaW5kaWNhdGUgdGhpcyBieSByZXR1cm5pbmcgemVy
bwotICAgKi8KLSAgaWYgKCFla3QpCisjZGVmaW5lIEVLVF9PQ1RFVFNfQUZURVJfRU1LIDgKKyNk
ZWZpbmUgRUtUX09DVEVUU19BRlRFUl9ST0MgNAorI2RlZmluZSBFS1RfU1BJX0xFTiAyCisKK3Vu
c2lnbmVkIHNydHBfZWt0X29jdGV0c19hZnRlcl9iYXNlX3RhZyhzcnRwX2VrdF9zdHJlYW1fdCBl
a3QpCit7CisgICAgLyoKKyAgICAgKiBpZiB0aGUgcG9pbnRlciBla3QgaXMgTlVMTCwgdGhlbiBF
S1QgaXMgbm90IGluIGVmZmVjdCwgc28gd2UKKyAgICAgKiBpbmRpY2F0ZSB0aGlzIGJ5IHJldHVy
bmluZyB6ZXJvCisgICAgICovCisgICAgaWYgKCFla3QpCisgICAgICAgIHJldHVybiAwOworCisg
ICAgc3dpdGNoIChla3QtPmRhdGEtPmVrdF9jaXBoZXJfdHlwZSkgeworICAgIGNhc2UgU1JUUF9F
S1RfQ0lQSEVSX0FFU18xMjhfRUNCOgorICAgICAgICByZXR1cm4gMTYgKyBFS1RfT0NURVRTX0FG
VEVSX0VNSzsKKyAgICAgICAgYnJlYWs7CisgICAgZGVmYXVsdDoKKyAgICAgICAgYnJlYWs7Cisg
ICAgfQogICAgIHJldHVybiAwOwotCi0gIHN3aXRjaChla3QtPmRhdGEtPmVrdF9jaXBoZXJfdHlw
ZSkgewotICBjYXNlIFNSVFBfRUtUX0NJUEhFUl9BRVNfMTI4X0VDQjoKLSAgICByZXR1cm4gMTYg
KyBFS1RfT0NURVRTX0FGVEVSX0VNSzsKLSAgICBicmVhazsKLSAgZGVmYXVsdDoKLSAgICBicmVh
azsKLSAgfQotICByZXR1cm4gMDsKIH0KIAotc3RhdGljIGlubGluZSBzcnRwX2VrdF9zcGlfdCBz
cnRjcF9wYWNrZXRfZ2V0X2VrdF9zcGkoY29uc3QgdWludDhfdCAqcGFja2V0X3N0YXJ0LCB1bnNp
Z25lZCBwa3Rfb2N0ZXRfbGVuKSB7Ci0gIGNvbnN0IHVpbnQ4X3QgKnNwaV9sb2NhdGlvbjsKLSAg
Ci0gIHNwaV9sb2NhdGlvbiA9IHBhY2tldF9zdGFydCArIChwa3Rfb2N0ZXRfbGVuIC0gRUtUX1NQ
SV9MRU4pOwotICAKLSAgcmV0dXJuICooKGNvbnN0IHNydHBfZWt0X3NwaV90ICopc3BpX2xvY2F0
aW9uKTsKLX0KK3N0YXRpYyBpbmxpbmUgc3J0cF9la3Rfc3BpX3Qgc3J0Y3BfcGFja2V0X2dldF9l
a3Rfc3BpKAorICAgIGNvbnN0IHVpbnQ4X3QgKnBhY2tldF9zdGFydCwKKyAgICB1bnNpZ25lZCBw
a3Rfb2N0ZXRfbGVuKQoreworICAgIGNvbnN0IHVpbnQ4X3QgKnNwaV9sb2NhdGlvbjsKKworICAg
IHNwaV9sb2NhdGlvbiA9IHBhY2tldF9zdGFydCArIChwa3Rfb2N0ZXRfbGVuIC0gRUtUX1NQSV9M
RU4pOwogCi1zdGF0aWMgaW5saW5lIHVpbnQzMl90IHNydGNwX3BhY2tldF9nZXRfZWt0X3JvYyhj
b25zdCB1aW50OF90ICpwYWNrZXRfc3RhcnQsIHVuc2lnbmVkIHBrdF9vY3RldF9sZW4pIHsKLSAg
Y29uc3QgdWludDhfdCAqcm9jX2xvY2F0aW9uOwotICAKLSAgcm9jX2xvY2F0aW9uID0gcGFja2V0
X3N0YXJ0ICsgKHBrdF9vY3RldF9sZW4gLSBFS1RfT0NURVRTX0FGVEVSX1JPQyk7Ci0gIAotICBy
ZXR1cm4gKigoY29uc3QgdWludDMyX3QgKilyb2NfbG9jYXRpb24pOworICAgIHJldHVybiAqKChj
b25zdCBzcnRwX2VrdF9zcGlfdCAqKXNwaV9sb2NhdGlvbik7CiB9CiAKLXN0YXRpYyBpbmxpbmUg
Y29uc3QgdWludDhfdCAqIHNydGNwX3BhY2tldF9nZXRfZW1rX2xvY2F0aW9uKGNvbnN0IHVpbnQ4
X3QgKnBhY2tldF9zdGFydCwgdW5zaWduZWQgcGt0X29jdGV0X2xlbikgewotICBjb25zdCB1aW50
OF90ICpsb2NhdGlvbjsKLSAgCi0gIGxvY2F0aW9uID0gcGFja2V0X3N0YXJ0ICsgKHBrdF9vY3Rl
dF9sZW4gLSBFS1RfT0NURVRTX0FGVEVSX0JBU0VfVEFHKTsKK3N0YXRpYyBpbmxpbmUgdWludDMy
X3Qgc3J0Y3BfcGFja2V0X2dldF9la3Rfcm9jKGNvbnN0IHVpbnQ4X3QgKnBhY2tldF9zdGFydCwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVk
IHBrdF9vY3RldF9sZW4pCit7CisgICAgY29uc3QgdWludDhfdCAqcm9jX2xvY2F0aW9uOworCisg
ICAgcm9jX2xvY2F0aW9uID0gcGFja2V0X3N0YXJ0ICsgKHBrdF9vY3RldF9sZW4gLSBFS1RfT0NU
RVRTX0FGVEVSX1JPQyk7CiAKLSAgcmV0dXJuIGxvY2F0aW9uOworICAgIHJldHVybiAqKChjb25z
dCB1aW50MzJfdCAqKXJvY19sb2NhdGlvbik7CiB9CiAKK3N0YXRpYyBpbmxpbmUgY29uc3QgdWlu
dDhfdCAqc3J0Y3BfcGFja2V0X2dldF9lbWtfbG9jYXRpb24oCisgICAgY29uc3QgdWludDhfdCAq
cGFja2V0X3N0YXJ0LAorICAgIHVuc2lnbmVkIHBrdF9vY3RldF9sZW4pCit7CisgICAgY29uc3Qg
dWludDhfdCAqbG9jYXRpb247CiAKLXNydHBfZXJyX3N0YXR1c190IHNydHBfZWt0X2FsbG9jKHNy
dHBfZWt0X3N0cmVhbV90ICpzdHJlYW1fZGF0YSwgc3J0cF9la3RfcG9saWN5X3QgcG9saWN5KSB7
CisgICAgbG9jYXRpb24gPSBwYWNrZXRfc3RhcnQgKyAocGt0X29jdGV0X2xlbiAtIEVLVF9PQ1RF
VFNfQUZURVJfQkFTRV9UQUcpOwogCi0gIC8qCi0gICAqIGlmIHRoZSBwb2xpY3kgcG9pbnRlciBp
cyBOVUxMLCB0aGVuIEVLVCBpcyBub3QgaW4gdXNlCi0gICAqIHNvIHdlIGp1c3Qgc2V0IHRoZSBF
S1Qgc3RyZWFtIGRhdGEgcG9pbnRlciB0byBOVUxMCi0gICAqLwotICBpZiAoIXBvbGljeSkgewot
ICAgICpzdHJlYW1fZGF0YSA9IE5VTEw7Ci0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsK
LSAgfQorICAgIHJldHVybiBsb2NhdGlvbjsKK30KIAotICAvKiBUT0RPICovCi0gICpzdHJlYW1f
ZGF0YSA9IE5VTEw7CitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2VrdF9hbGxvYyhzcnRwX2VrdF9z
dHJlYW1fdCAqc3RyZWFtX2RhdGEsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBz
cnRwX2VrdF9wb2xpY3lfdCBwb2xpY3kpCit7CisgICAgLyoKKyAgICAgKiBpZiB0aGUgcG9saWN5
IHBvaW50ZXIgaXMgTlVMTCwgdGhlbiBFS1QgaXMgbm90IGluIHVzZQorICAgICAqIHNvIHdlIGp1
c3Qgc2V0IHRoZSBFS1Qgc3RyZWFtIGRhdGEgcG9pbnRlciB0byBOVUxMCisgICAgICovCisgICAg
aWYgKCFwb2xpY3kpIHsKKyAgICAgICAgKnN0cmVhbV9kYXRhID0gTlVMTDsKKyAgICAgICAgcmV0
dXJuIHNydHBfZXJyX3N0YXR1c19vazsKKyAgICB9CisKKyAgICAvKiBUT0RPICovCisgICAgKnN0
cmVhbV9kYXRhID0gTlVMTDsKIAotICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOworICAgIHJl
dHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAKLXNydHBfZXJyX3N0YXR1c190IHNydHBfZWt0
X3N0cmVhbV9pbml0X2Zyb21fcG9saWN5KHNydHBfZWt0X3N0cmVhbV90IHN0cmVhbV9kYXRhLCBz
cnRwX2VrdF9wb2xpY3lfdCBwb2xpY3kpIHsKLSAgaWYgKCFzdHJlYW1fZGF0YSkKLSAgICByZXR1
cm4gc3J0cF9lcnJfc3RhdHVzX29rOworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9la3Rfc3RyZWFt
X2luaXRfZnJvbV9wb2xpY3koCisgICAgc3J0cF9la3Rfc3RyZWFtX3Qgc3RyZWFtX2RhdGEsCisg
ICAgc3J0cF9la3RfcG9saWN5X3QgcG9saWN5KQoreworICAgIGlmICghc3RyZWFtX2RhdGEpCisg
ICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiAKLSAgcmV0dXJuIHNydHBfZXJyX3N0
YXR1c19vazsKKyAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQogCi0KLXZvaWQgYWVz
X2RlY3J5cHRfd2l0aF9yYXdfa2V5KHZvaWQgKmNpcGhlcnRleHQsIGNvbnN0IHZvaWQgKmtleSwg
aW50IGtleV9sZW4pIHsKK3ZvaWQgYWVzX2RlY3J5cHRfd2l0aF9yYXdfa2V5KHZvaWQgKmNpcGhl
cnRleHQsIGNvbnN0IHZvaWQgKmtleSwgaW50IGtleV9sZW4pCit7CiAjaWZuZGVmIE9QRU5TU0wK
LS8vRklYTUU6IG5lZWQgdG8gZ2V0IHRoaXMgd29ya2luZyB0aHJvdWdoIHRoZSBjcnlwdG8gbW9k
dWxlIGludGVyZmFjZQotICBzcnRwX2Flc19leHBhbmRlZF9rZXlfdCBleHBhbmRlZF9rZXk7Cisg
ICAgLy8gRklYTUU6IG5lZWQgdG8gZ2V0IHRoaXMgd29ya2luZyB0aHJvdWdoIHRoZSBjcnlwdG8g
bW9kdWxlIGludGVyZmFjZQorICAgIHNydHBfYWVzX2V4cGFuZGVkX2tleV90IGV4cGFuZGVkX2tl
eTsKIAotICBzcnRwX2Flc19leHBhbmRfZGVjcnlwdGlvbl9rZXkoa2V5LCBrZXlfbGVuLCAmZXhw
YW5kZWRfa2V5KTsKLSAgc3J0cF9hZXNfZGVjcnlwdChjaXBoZXJ0ZXh0LCAmZXhwYW5kZWRfa2V5
KTsKKyAgICBzcnRwX2Flc19leHBhbmRfZGVjcnlwdGlvbl9rZXkoa2V5LCBrZXlfbGVuLCAmZXhw
YW5kZWRfa2V5KTsKKyAgICBzcnRwX2Flc19kZWNyeXB0KGNpcGhlcnRleHQsICZleHBhbmRlZF9r
ZXkpOwogI2VuZGlmCiB9CiAKIC8qCiAgKiBUaGUgZnVuY3Rpb24gc3J0cF9zdHJlYW1faW5pdF9m
cm9tX2VrdCgpIGluaXRpYWxpemVzIGEgc3RyZWFtIHVzaW5nCi0gKiB0aGUgRUtUIGRhdGEgZnJv
bSBhbiBTUlRDUCB0cmFpbGVyLiAgCisgKiB0aGUgRUtUIGRhdGEgZnJvbSBhbiBTUlRDUCB0cmFp
bGVyLgogICovCiAKLXNydHBfZXJyX3N0YXR1c190IHNydHBfc3RyZWFtX2luaXRfZnJvbV9la3Qo
c3J0cF9zdHJlYW1fdCBzdHJlYW0sIGNvbnN0IHZvaWQgKnNydGNwX2hkciwgdW5zaWduZWQgcGt0
X29jdGV0X2xlbikgewotICBzcnRwX2Vycl9zdGF0dXNfdCBlcnI7Ci0gIGNvbnN0IHVpbnQ4X3Qg
Km1hc3Rlcl9rZXk7Ci0gIHNydHBfcG9saWN5X3Qgc3J0cF9wb2xpY3k7Ci0gIHVpbnQzMl90IHJv
YzsKLQotICAvKgotICAgKiBOT1RFOiBhdCBwcmVzZW50LCB3ZSBvbmx5IHN1cHBvcnQgYSBzaW5n
bGUgZWt0X3BvbGljeSBhdCBhIHRpbWUuICAKLSAgICovCi0gIGlmIChzdHJlYW0tPmVrdC0+ZGF0
YS0+c3BpICE9IAotICAgICAgc3J0Y3BfcGFja2V0X2dldF9la3Rfc3BpKHNydGNwX2hkciwgcGt0
X29jdGV0X2xlbikpCi0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19ub19jdHg7Ci0KLSAgaWYg
KHN0cmVhbS0+ZWt0LT5kYXRhLT5la3RfY2lwaGVyX3R5cGUgIT0gU1JUUF9FS1RfQ0lQSEVSX0FF
U18xMjhfRUNCKQotICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtOwotCi0gIC8q
IGRlY3J5cHQgdGhlIEVuY3J5cHRlZCBNYXN0ZXIgS2V5IGZpZWxkICovCi0gIG1hc3Rlcl9rZXkg
PSBzcnRjcF9wYWNrZXRfZ2V0X2Vta19sb2NhdGlvbihzcnRjcF9oZHIsIHBrdF9vY3RldF9sZW4p
OwotICAvKiBGSVghPyBUaGlzIGRlY3J5cHRzIHRoZSBtYXN0ZXIga2V5IGluLXBsYWNlLCBhbmQg
bmV2ZXIgdXNlcyBpdCAqLwotICAvKiBGSVghPyBJdCdzIGFsc28gcGFzc2luZyB0byBla3RfZGVj
X2tleSAod2hpY2ggaXMgYW4gYWVzX2V4cGFuZGVkX2tleV90KQotICAgKiB0byBhIGZ1bmN0aW9u
IHdoaWNoIGV4cGVjdHMgYSByYXcgKHVuZXhwYW5kZWQpIGtleSAqLwotICBhZXNfZGVjcnlwdF93
aXRoX3Jhd19rZXkoKHZvaWQqKW1hc3Rlcl9rZXksICZzdHJlYW0tPmVrdC0+ZGF0YS0+ZWt0X2Rl
Y19rZXksIDE2KTsKLQotICAvKiBzZXQgdGhlIFNSVFAgUk9DICovCi0gIHJvYyA9IHNydGNwX3Bh
Y2tldF9nZXRfZWt0X3JvYyhzcnRjcF9oZHIsIHBrdF9vY3RldF9sZW4pOwotICBlcnIgPSBzcnRw
X3JkYnhfc2V0X3JvYygmc3RyZWFtLT5ydHBfcmRieCwgcm9jKTsKLSAgaWYgKGVycikgcmV0dXJu
IGVycjsKLQotICBlcnIgPSBzcnRwX3N0cmVhbV9pbml0KHN0cmVhbSwgJnNydHBfcG9saWN5KTsK
LSAgaWYgKGVycikgcmV0dXJuIGVycjsKLQotICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwot
fQorc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9zdHJlYW1faW5pdF9mcm9tX2VrdChzcnRwX3N0cmVh
bV90IHN0cmVhbSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Y29uc3Qgdm9pZCAqc3J0Y3BfaGRyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB1bnNpZ25lZCBwa3Rfb2N0ZXRfbGVuKQoreworICAgIHNydHBfZXJyX3N0YXR1
c190IGVycjsKKyAgICBjb25zdCB1aW50OF90ICptYXN0ZXJfa2V5OworICAgIHNydHBfcG9saWN5
X3Qgc3J0cF9wb2xpY3k7CisgICAgdWludDMyX3Qgcm9jOworCisgICAgLyoKKyAgICAgKiBOT1RF
OiBhdCBwcmVzZW50LCB3ZSBvbmx5IHN1cHBvcnQgYSBzaW5nbGUgZWt0X3BvbGljeSBhdCBhIHRp
bWUuCisgICAgICovCisgICAgaWYgKHN0cmVhbS0+ZWt0LT5kYXRhLT5zcGkgIT0KKyAgICAgICAg
c3J0Y3BfcGFja2V0X2dldF9la3Rfc3BpKHNydGNwX2hkciwgcGt0X29jdGV0X2xlbikpCisgICAg
ICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfbm9fY3R4OworCisgICAgaWYgKHN0cmVhbS0+ZWt0
LT5kYXRhLT5la3RfY2lwaGVyX3R5cGUgIT0gU1JUUF9FS1RfQ0lQSEVSX0FFU18xMjhfRUNCKQor
ICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJhbTsKKworICAgIC8qIGRlY3J5
cHQgdGhlIEVuY3J5cHRlZCBNYXN0ZXIgS2V5IGZpZWxkICovCisgICAgbWFzdGVyX2tleSA9IHNy
dGNwX3BhY2tldF9nZXRfZW1rX2xvY2F0aW9uKHNydGNwX2hkciwgcGt0X29jdGV0X2xlbik7Cisg
ICAgLyogRklYIT8gVGhpcyBkZWNyeXB0cyB0aGUgbWFzdGVyIGtleSBpbi1wbGFjZSwgYW5kIG5l
dmVyIHVzZXMgaXQgKi8KKyAgICAvKiBGSVghPyBJdCdzIGFsc28gcGFzc2luZyB0byBla3RfZGVj
X2tleSAod2hpY2ggaXMgYW4gYWVzX2V4cGFuZGVkX2tleV90KQorICAgICAqIHRvIGEgZnVuY3Rp
b24gd2hpY2ggZXhwZWN0cyBhIHJhdyAodW5leHBhbmRlZCkga2V5ICovCisgICAgYWVzX2RlY3J5
cHRfd2l0aF9yYXdfa2V5KCh2b2lkICopbWFzdGVyX2tleSwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgJnN0cmVhbS0+ZWt0LT5kYXRhLT5la3RfZGVjX2tleSwgMTYpOworCisgICAgLyog
c2V0IHRoZSBTUlRQIFJPQyAqLworICAgIHJvYyA9IHNydGNwX3BhY2tldF9nZXRfZWt0X3JvYyhz
cnRjcF9oZHIsIHBrdF9vY3RldF9sZW4pOworICAgIGVyciA9IHNydHBfcmRieF9zZXRfcm9jKCZz
dHJlYW0tPnJ0cF9yZGJ4LCByb2MpOworICAgIGlmIChlcnIpCisgICAgICAgIHJldHVybiBlcnI7
CisKKyAgICBlcnIgPSBzcnRwX3N0cmVhbV9pbml0KHN0cmVhbSwgJnNydHBfcG9saWN5KTsKKyAg
ICBpZiAoZXJyKQorICAgICAgICByZXR1cm4gZXJyOwogCi12b2lkIHNydHBfZWt0X3dyaXRlX2Rh
dGEoc3J0cF9la3Rfc3RyZWFtX3QgZWt0LCB1aW50OF90ICpiYXNlX3RhZywgdW5zaWduZWQgYmFz
ZV90YWdfbGVuLCBpbnQgKnBhY2tldF9sZW4sIHNydHBfeHRkX3NlcV9udW1fdCBwa3RfaW5kZXgp
IHsKLSAgdWludDMyX3Qgcm9jOwotICB1aW50MTZfdCBpc247Ci0gIHVuc2lnbmVkIGVta19sZW47
Ci0gIHVpbnQ4X3QgKnBhY2tldDsKLQotICAvKiBpZiB0aGUgcG9pbnRlciBla3QgaXMgTlVMTCwg
dGhlbiBFS1QgaXMgbm90IGluIGVmZmVjdCAqLwotICBpZiAoIWVrdCkgewotICAgIGRlYnVnX3By
aW50KG1vZF9zcnRwLCAiRUtUIG5vdCBpbiB1c2UiLCBOVUxMKTsKLSAgICByZXR1cm47Ci0gIH0K
LQotICAvKiB3cml0ZSB6ZXJvcyBpbnRvIHRoZSBsb2NhdGlvbiBvZiB0aGUgYmFzZSB0YWcgKi8K
LSAgb2N0ZXRfc3RyaW5nX3NldF90b196ZXJvKGJhc2VfdGFnLCBiYXNlX3RhZ19sZW4pOwotICBw
YWNrZXQgPSBiYXNlX3RhZyArIGJhc2VfdGFnX2xlbjsKLQotICAvKiBjb3B5IGVuY3J5cHRlZCBt
YXN0ZXIga2V5IGludG8gcGFja2V0ICovCi0gIGVta19sZW4gPSBzcnRwX2VrdF9vY3RldHNfYWZ0
ZXJfYmFzZV90YWcoZWt0KTsKLSAgbWVtY3B5KHBhY2tldCwgZWt0LT5lbmNyeXB0ZWRfbWFzdGVy
X2tleSwgZW1rX2xlbik7Ci0gIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAid3JpdGluZyBFS1QgRU1L
OiAlcywiLCAKLQkgICAgICBzcnRwX29jdGV0X3N0cmluZ19oZXhfc3RyaW5nKHBhY2tldCwgZW1r
X2xlbikpOwotICBwYWNrZXQgKz0gZW1rX2xlbjsKLQotICAvKiBjb3B5IFJPQyBpbnRvIHBhY2tl
dCAqLwotICByb2MgPSAodWludDMyX3QpKHBrdF9pbmRleCA+PiAxNik7Ci0gICooKHVpbnQzMl90
ICopcGFja2V0KSA9IGJlMzJfdG9fY3B1KHJvYyk7Ci0gIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAi
d3JpdGluZyBFS1QgUk9DOiAlcywiLCAKLQkgICAgICBzcnRwX29jdGV0X3N0cmluZ19oZXhfc3Ry
aW5nKHBhY2tldCwgc2l6ZW9mKHJvYykpKTsKLSAgcGFja2V0ICs9IHNpemVvZihyb2MpOwotCi0g
IC8qIGNvcHkgSVNOIGludG8gcGFja2V0ICovCi0gIGlzbiA9ICh1aW50MTZfdClwa3RfaW5kZXg7
Ci0gICooKHVpbnQxNl90ICopcGFja2V0KSA9IGh0b25zKGlzbik7Ci0gIGRlYnVnX3ByaW50KG1v
ZF9zcnRwLCAid3JpdGluZyBFS1QgSVNOOiAlcywiLCAKLQkgICAgICBzcnRwX29jdGV0X3N0cmlu
Z19oZXhfc3RyaW5nKHBhY2tldCwgc2l6ZW9mKGlzbikpKTsKLSAgcGFja2V0ICs9IHNpemVvZihp
c24pOwotCi0gIC8qIGNvcHkgU1BJIGludG8gcGFja2V0ICovCi0gICooKHVpbnQxNl90ICopcGFj
a2V0KSA9IGh0b25zKGVrdC0+ZGF0YS0+c3BpKTsKLSAgZGVidWdfcHJpbnQobW9kX3NydHAsICJ3
cml0aW5nIEVLVCBTUEk6ICVzLCIsIAotCSAgICAgIHNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJp
bmcocGFja2V0LCBzaXplb2YoZWt0LT5kYXRhLT5zcGkpKSk7Ci0KLSAgLyogaW5jcmVhc2UgcGFj
a2V0IGxlbmd0aCBhcHByb3ByaWF0ZWx5ICovCi0gICpwYWNrZXRfbGVuICs9IEVLVF9PQ1RFVFNf
QUZURVJfRU1LICsgZW1rX2xlbjsKKyAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQog
Cit2b2lkIHNydHBfZWt0X3dyaXRlX2RhdGEoc3J0cF9la3Rfc3RyZWFtX3QgZWt0LAorICAgICAg
ICAgICAgICAgICAgICAgICAgIHVpbnQ4X3QgKmJhc2VfdGFnLAorICAgICAgICAgICAgICAgICAg
ICAgICAgIHVuc2lnbmVkIGJhc2VfdGFnX2xlbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICBp
bnQgKnBhY2tldF9sZW4sCisgICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF94dGRfc2VxX251
bV90IHBrdF9pbmRleCkKK3sKKyAgICB1aW50MzJfdCByb2M7CisgICAgdWludDE2X3QgaXNuOwor
ICAgIHVuc2lnbmVkIGVta19sZW47CisgICAgdWludDhfdCAqcGFja2V0OworCisgICAgLyogaWYg
dGhlIHBvaW50ZXIgZWt0IGlzIE5VTEwsIHRoZW4gRUtUIGlzIG5vdCBpbiBlZmZlY3QgKi8KKyAg
ICBpZiAoIWVrdCkgeworICAgICAgICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgIkVLVCBub3QgaW4g
dXNlIiwgTlVMTCk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICAvKiB3cml0ZSB6ZXJv
cyBpbnRvIHRoZSBsb2NhdGlvbiBvZiB0aGUgYmFzZSB0YWcgKi8KKyAgICBvY3RldF9zdHJpbmdf
c2V0X3RvX3plcm8oYmFzZV90YWcsIGJhc2VfdGFnX2xlbik7CisgICAgcGFja2V0ID0gYmFzZV90
YWcgKyBiYXNlX3RhZ19sZW47CisKKyAgICAvKiBjb3B5IGVuY3J5cHRlZCBtYXN0ZXIga2V5IGlu
dG8gcGFja2V0ICovCisgICAgZW1rX2xlbiA9IHNydHBfZWt0X29jdGV0c19hZnRlcl9iYXNlX3Rh
Zyhla3QpOworICAgIG1lbWNweShwYWNrZXQsIGVrdC0+ZW5jcnlwdGVkX21hc3Rlcl9rZXksIGVt
a19sZW4pOworICAgIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAid3JpdGluZyBFS1QgRU1LOiAlcywi
LAorICAgICAgICAgICAgICAgIHNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcocGFja2V0LCBl
bWtfbGVuKSk7CisgICAgcGFja2V0ICs9IGVta19sZW47CisKKyAgICAvKiBjb3B5IFJPQyBpbnRv
IHBhY2tldCAqLworICAgIHJvYyA9ICh1aW50MzJfdCkocGt0X2luZGV4ID4+IDE2KTsKKyAgICAq
KCh1aW50MzJfdCAqKXBhY2tldCkgPSBiZTMyX3RvX2NwdShyb2MpOworICAgIGRlYnVnX3ByaW50
KG1vZF9zcnRwLCAid3JpdGluZyBFS1QgUk9DOiAlcywiLAorICAgICAgICAgICAgICAgIHNydHBf
b2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcocGFja2V0LCBzaXplb2Yocm9jKSkpOworICAgIHBhY2tl
dCArPSBzaXplb2Yocm9jKTsKKworICAgIC8qIGNvcHkgSVNOIGludG8gcGFja2V0ICovCisgICAg
aXNuID0gKHVpbnQxNl90KXBrdF9pbmRleDsKKyAgICAqKCh1aW50MTZfdCAqKXBhY2tldCkgPSBo
dG9ucyhpc24pOworICAgIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAid3JpdGluZyBFS1QgSVNOOiAl
cywiLAorICAgICAgICAgICAgICAgIHNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcocGFja2V0
LCBzaXplb2YoaXNuKSkpOworICAgIHBhY2tldCArPSBzaXplb2YoaXNuKTsKKworICAgIC8qIGNv
cHkgU1BJIGludG8gcGFja2V0ICovCisgICAgKigodWludDE2X3QgKilwYWNrZXQpID0gaHRvbnMo
ZWt0LT5kYXRhLT5zcGkpOworICAgIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAid3JpdGluZyBFS1Qg
U1BJOiAlcywiLAorICAgICAgICAgICAgICAgIHNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmco
cGFja2V0LCBzaXplb2YoZWt0LT5kYXRhLT5zcGkpKSk7CisKKyAgICAvKiBpbmNyZWFzZSBwYWNr
ZXQgbGVuZ3RoIGFwcHJvcHJpYXRlbHkgKi8KKyAgICAqcGFja2V0X2xlbiArPSBFS1RfT0NURVRT
X0FGVEVSX0VNSyArIGVta19sZW47Cit9CiAKIC8qCiAgKiBUaGUgZnVuY3Rpb24gY2FsbCBzcnRj
cF9la3RfdHJhaWxlcihla3QsIGF1dGhfbGVuLCBhdXRoX3RhZyAgICkKLSAqIAorICoKICAqIElm
IHRoZSBwb2ludGVyIGVrdCBpcyBOVUxMLCB0aGVuIHRoZSBvdGhlciBpbnB1dHMgYXJlIHVuYWZm
ZWN0ZWQuCiAgKgogICogYXV0aF90YWcgaXMgYSBwb2ludGVyIHRvIHRoZSBwb2ludGVyIHRvIHRo
ZSBsb2NhdGlvbiBvZiB0aGUKICAqIGF1dGhlbnRpY2F0aW9uIHRhZyBpbiB0aGUgcGFja2V0LiAg
SWYgRUtUIGlzIGluIGVmZmVjdCwgdGhlbiB0aGUKLSAqIGF1dGhfdGFnIHBvaW50ZXIgaXMgc2V0
IHRvIHRoZSBsb2NhdGlvbiAKKyAqIGF1dGhfdGFnIHBvaW50ZXIgaXMgc2V0IHRvIHRoZSBsb2Nh
dGlvbgogICovCiAKLXZvaWQgc3J0Y3BfZWt0X3RyYWlsZXIoc3J0cF9la3Rfc3RyZWFtX3QgZWt0
LCB1bnNpZ25lZCAqYXV0aF9sZW4sIHZvaWQgKiphdXRoX3RhZywgdm9pZCAqdGFnX2NvcHkpIHsg
Ci0gIC8qIAotICAgKiBpZiB0aGVyZSBpcyBubyBFS1QgcG9saWN5LCB0aGVuIHRoZSBvdGhlciBp
bnB1dHMgYXJlIHVuYWZmZWN0ZWQKLSAgICovCi0gIGlmICghZWt0KSAKLSAgICByZXR1cm47Ci0g
ICAgICAKLSAgLyogY29weSBhdXRoX3RhZyBpbnRvIHRlbXBvcmFyeSBsb2NhdGlvbiAqLwotICAK
K3ZvaWQgc3J0Y3BfZWt0X3RyYWlsZXIoc3J0cF9la3Rfc3RyZWFtX3QgZWt0LAorICAgICAgICAg
ICAgICAgICAgICAgICB1bnNpZ25lZCAqYXV0aF9sZW4sCisgICAgICAgICAgICAgICAgICAgICAg
IHZvaWQgKiphdXRoX3RhZywKKyAgICAgICAgICAgICAgICAgICAgICAgdm9pZCAqdGFnX2NvcHkp
Cit7CisgICAgLyoKKyAgICAgKiBpZiB0aGVyZSBpcyBubyBFS1QgcG9saWN5LCB0aGVuIHRoZSBv
dGhlciBpbnB1dHMgYXJlIHVuYWZmZWN0ZWQKKyAgICAgKi8KKyAgICBpZiAoIWVrdCkKKyAgICAg
ICAgcmV0dXJuOworCisgICAgLyogY29weSBhdXRoX3RhZyBpbnRvIHRlbXBvcmFyeSBsb2NhdGlv
biAqLwogfQotCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnNydHAvc3J0cC9zcnRwLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvc3J0cC9zcnRwLmMKaW5kZXggZWRlODA0
ZjFkMGEyZDE4YzI0M2JmZmYxYzEyOWNlNDQwY2MwOGIxMi4uNDQ2MjUwMTVlN2I2ODViMDdmOTU5
YTVhNmViNTlhYjA4NWZjMzQ2MyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2Vi
cnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL3NydHAvc3J0cC5jCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC9zcnRwL3NydHAu
YwpAQCAtNywyNiArNywyNiBAQAogICogQ2lzY28gU3lzdGVtcywgSW5jLgogICovCiAvKgotICoJ
CisgKgogICogQ29weXJpZ2h0IChjKSAyMDAxLTIwMTcsIENpc2NvIFN5c3RlbXMsIEluYy4KICAq
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKiAKKyAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cwogICogYXJlIG1ldDoKLSAqIAorICoKICAqICAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKICAqICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogCisgKgog
ICogICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlCiAgKiAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nCiAgKiAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29y
IG90aGVyIG1hdGVyaWFscyBwcm92aWRlZAogICogICB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0g
KiAKKyAqCiAgKiAgIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIENpc2NvIFN5c3RlbXMsIEluYy4g
bm9yIHRoZSBuYW1lcyBvZiBpdHMKICAqICAgY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVu
ZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkCiAgKiAgIGZyb20gdGhpcyBzb2Z0d2Fy
ZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLSAqIAorICoKICAq
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBD
T05UUklCVVRPUlMKICAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFO
VElFUywgSU5DTFVESU5HLCBCVVQgTk9UCiAgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJS
QU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUwpAQCAtNDgsNjYgKzQ4LDY3IEBA
CiAjaW5jbHVkZSAic3J0cF9wcml2LmgiCiAjaW5jbHVkZSAiY3J5cHRvX3R5cGVzLmgiCiAjaW5j
bHVkZSAiZXJyLmgiCi0jaW5jbHVkZSAiZWt0LmgiICAgICAgICAgICAgIC8qIGZvciBTUlRQIEVu
Y3J5cHRlZCBLZXkgVHJhbnNwb3J0ICovCi0jaW5jbHVkZSAiYWxsb2MuaCIgICAgICAgICAgIC8q
IGZvciBzcnRwX2NyeXB0b19hbGxvYygpICAgICAgICAgICovCisjaW5jbHVkZSAiZWt0LmgiICAg
LyogZm9yIFNSVFAgRW5jcnlwdGVkIEtleSBUcmFuc3BvcnQgKi8KKyNpbmNsdWRlICJhbGxvYy5o
IiAvKiBmb3Igc3J0cF9jcnlwdG9fYWxsb2MoKSAqLworCiAjaWZkZWYgT1BFTlNTTAotI2luY2x1
ZGUgImFlc19nY21fb3NzbC5oIiAgICAvKiBmb3IgQUVTIEdDTSBtb2RlICAqLwotIyBpZmRlZiBP
UEVOU1NMX0tERgotIyBpbmNsdWRlIDxvcGVuc3NsL2tkZi5oPgotIyBpbmNsdWRlICJhZXNfaWNt
X29zc2wuaCIgICAgLyogZm9yIEFFUyBHQ00gbW9kZSAgKi8KLSMgZW5kaWYKKyNpbmNsdWRlICJh
ZXNfZ2NtX29zc2wuaCIgLyogZm9yIEFFUyBHQ00gbW9kZSAqLworI2lmZGVmIE9QRU5TU0xfS0RG
CisjaW5jbHVkZSA8b3BlbnNzbC9rZGYuaD4KKyNpbmNsdWRlICJhZXNfaWNtX29zc2wuaCIgLyog
Zm9yIEFFUyBHQ00gbW9kZSAqLworI2VuZGlmCiAjZW5kaWYKIAogI2luY2x1ZGUgPGxpbWl0cy5o
PgogI2lmZGVmIEhBVkVfTkVUSU5FVF9JTl9ICi0jIGluY2x1ZGUgPG5ldGluZXQvaW4uaD4KKyNp
bmNsdWRlIDxuZXRpbmV0L2luLmg+CiAjZWxpZiBkZWZpbmVkKEhBVkVfV0lOU09DSzJfSCkKLSMg
aW5jbHVkZSA8d2luc29jazIuaD4KKyNpbmNsdWRlIDx3aW5zb2NrMi5oPgogI2VuZGlmCiAKLQog
LyogdGhlIGRlYnVnIG1vZHVsZSBmb3Igc3J0cCAqLwotCiBzcnRwX2RlYnVnX21vZHVsZV90IG1v
ZF9zcnRwID0gewotICAwLCAgICAgICAgICAgICAgICAgIC8qIGRlYnVnZ2luZyBpcyBvZmYgYnkg
ZGVmYXVsdCAqLwotICAic3J0cCIgICAgICAgICAgICAgIC8qIHByaW50YWJsZSBuYW1lIGZvciBt
b2R1bGUgICAqLworICAgIDAsICAgICAvKiBkZWJ1Z2dpbmcgaXMgb2ZmIGJ5IGRlZmF1bHQgKi8K
KyAgICAic3J0cCIgLyogcHJpbnRhYmxlIG5hbWUgZm9yIG1vZHVsZSAqLwogfTsKIAotI2RlZmlu
ZSBvY3RldHNfaW5fcnRwX2hlYWRlciAgIDEyCi0jZGVmaW5lIHVpbnQzMnNfaW5fcnRwX2hlYWRl
ciAgMwotI2RlZmluZSBvY3RldHNfaW5fcnRjcF9oZWFkZXIgIDgKKyNkZWZpbmUgb2N0ZXRzX2lu
X3J0cF9oZWFkZXIgMTIKKyNkZWZpbmUgdWludDMyc19pbl9ydHBfaGVhZGVyIDMKKyNkZWZpbmUg
b2N0ZXRzX2luX3J0Y3BfaGVhZGVyIDgKICNkZWZpbmUgdWludDMyc19pbl9ydGNwX2hlYWRlciAy
CiAjZGVmaW5lIG9jdGV0c19pbl9ydHBfZXh0bl9oZHIgNAogCi1zdGF0aWMgc3J0cF9lcnJfc3Rh
dHVzX3QKLXNydHBfdmFsaWRhdGVfcnRwX2hlYWRlcih2b2lkICpydHBfaGRyLCBpbnQgKnBrdF9v
Y3RldF9sZW4pIHsKLSAgaWYgKCpwa3Rfb2N0ZXRfbGVuIDwgb2N0ZXRzX2luX3J0cF9oZWFkZXIp
Ci0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW07Ci0KLSAgc3J0cF9oZHJfdCAq
aGRyID0gKHNydHBfaGRyX3QgKilydHBfaGRyOworc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNy
dHBfdmFsaWRhdGVfcnRwX2hlYWRlcih2b2lkICpydHBfaGRyLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgKnBrdF9vY3RldF9sZW4pCit7Cisg
ICAgaWYgKCpwa3Rfb2N0ZXRfbGVuIDwgb2N0ZXRzX2luX3J0cF9oZWFkZXIpCisgICAgICAgIHJl
dHVybiBzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtOwogCi0gIC8qIENoZWNrIFJUUCBoZWFkZXIg
bGVuZ3RoICovCi0gIGludCBydHBfaGVhZGVyX2xlbiA9IG9jdGV0c19pbl9ydHBfaGVhZGVyICsg
NCAqIGhkci0+Y2M7Ci0gIGlmIChoZHItPnggPT0gMSkKLSAgICBydHBfaGVhZGVyX2xlbiArPSBv
Y3RldHNfaW5fcnRwX2V4dG5faGRyOworICAgIHNydHBfaGRyX3QgKmhkciA9IChzcnRwX2hkcl90
ICopcnRwX2hkcjsKIAotICBpZiAoKnBrdF9vY3RldF9sZW4gPCBydHBfaGVhZGVyX2xlbikKLSAg
ICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJhbTsKKyAgICAvKiBDaGVjayBSVFAgaGVh
ZGVyIGxlbmd0aCAqLworICAgIGludCBydHBfaGVhZGVyX2xlbiA9IG9jdGV0c19pbl9ydHBfaGVh
ZGVyICsgNCAqIGhkci0+Y2M7CisgICAgaWYgKGhkci0+eCA9PSAxKQorICAgICAgICBydHBfaGVh
ZGVyX2xlbiArPSBvY3RldHNfaW5fcnRwX2V4dG5faGRyOwogCi0gIC8qIFZlcmlmaW5nIHByb2Zp
bGUgbGVuZ3RoLiAqLwotICBpZiAoaGRyLT54ID09IDEpIHsKLSAgICBzcnRwX2hkcl94dG5kX3Qg
Knh0bl9oZHIgPQotICAgICAgKHNydHBfaGRyX3h0bmRfdCAqKSgodWludDMyX3QgKiloZHIgKyB1
aW50MzJzX2luX3J0cF9oZWFkZXIgKyBoZHItPmNjKTsKLSAgICBpbnQgcHJvZmlsZV9sZW4gPSBu
dG9ocyh4dG5faGRyLT5sZW5ndGgpOwotICAgIHJ0cF9oZWFkZXJfbGVuICs9IHByb2ZpbGVfbGVu
ICogNDsKLSAgICAvKiBwcm9maWxlIGxlbmd0aCBjb3VudHMgdGhlIG51bWJlciBvZiAzMi1iaXQg
d29yZHMgKi8KICAgICBpZiAoKnBrdF9vY3RldF9sZW4gPCBydHBfaGVhZGVyX2xlbikKLSAgICAg
IHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtOwotICB9Ci0gIHJldHVybiBzcnRwX2Vy
cl9zdGF0dXNfb2s7CisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtOwor
CisgICAgLyogVmVyaWZpbmcgcHJvZmlsZSBsZW5ndGguICovCisgICAgaWYgKGhkci0+eCA9PSAx
KSB7CisgICAgICAgIHNydHBfaGRyX3h0bmRfdCAqeHRuX2hkciA9CisgICAgICAgICAgICAoc3J0
cF9oZHJfeHRuZF90ICopKCh1aW50MzJfdCAqKWhkciArIHVpbnQzMnNfaW5fcnRwX2hlYWRlciAr
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhkci0+Y2MpOworICAgICAgICBpbnQg
cHJvZmlsZV9sZW4gPSBudG9ocyh4dG5faGRyLT5sZW5ndGgpOworICAgICAgICBydHBfaGVhZGVy
X2xlbiArPSBwcm9maWxlX2xlbiAqIDQ7CisgICAgICAgIC8qIHByb2ZpbGUgbGVuZ3RoIGNvdW50
cyB0aGUgbnVtYmVyIG9mIDMyLWJpdCB3b3JkcyAqLworICAgICAgICBpZiAoKnBrdF9vY3RldF9s
ZW4gPCBydHBfaGVhZGVyX2xlbikKKyAgICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNf
YmFkX3BhcmFtOworICAgIH0KKyAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQogCi1j
b25zdCBjaGFyICpzcnRwX2dldF92ZXJzaW9uX3N0cmluZyAoKQorY29uc3QgY2hhciAqc3J0cF9n
ZXRfdmVyc2lvbl9zdHJpbmcoKQogewogICAgIC8qCiAgICAgICogU2ltcGx5IHJldHVybiB0aGUg
YXV0b3Rvb2xzIGdlbmVyYXRlZCBzdHJpbmcKQEAgLTExNSwyOSArMTE2LDI5IEBAIGNvbnN0IGNo
YXIgKnNydHBfZ2V0X3ZlcnNpb25fc3RyaW5nICgpCiAgICAgcmV0dXJuIFNSVFBfVkVSX1NUUklO
RzsKIH0KIAotdW5zaWduZWQgaW50IHNydHBfZ2V0X3ZlcnNpb24gKCkKK3Vuc2lnbmVkIGludCBz
cnRwX2dldF92ZXJzaW9uKCkKIHsKICAgICB1bnNpZ25lZCBpbnQgbWFqb3IgPSAwLCBtaW5vciA9
IDAsIG1pY3JvID0gMDsKICAgICB1bnNpZ25lZCBpbnQgcnYgPSAwOwogICAgIGludCBwYXJzZV9y
djsKIAogICAgIC8qCi0gICAgICogUGFyc2UgdGhlIGF1dG90b29scyBnZW5lcmF0ZWQgdmVyc2lv
biAKKyAgICAgKiBQYXJzZSB0aGUgYXV0b3Rvb2xzIGdlbmVyYXRlZCB2ZXJzaW9uCiAgICAgICov
CiAgICAgcGFyc2VfcnYgPSBzc2NhbmYoU1JUUF9WRVJTSU9OLCAiJXUuJXUuJXUiLCAmbWFqb3Is
ICZtaW5vciwgJm1pY3JvKTsKICAgICBpZiAocGFyc2VfcnYgIT0gMykgewotCS8qCi0JICogV2Un
cmUgZXhwZWN0ZWQgdG8gcGFyc2UgYWxsIDMgdmVyc2lvbiBsZXZlbHMuCi0JICogSWYgbm90LCB0
aGVuIHRoaXMgbXVzdCBub3QgYmUgYW4gb2ZmaWNpYWwgcmVsZWFzZS4KLQkgKiBSZXR1cm4gYWxs
IHplcm9zIG9uIHRoZSB2ZXJzaW9uCi0JICovCi0JcmV0dXJuICgwKTsKKyAgICAgICAgLyoKKyAg
ICAgICAgICogV2UncmUgZXhwZWN0ZWQgdG8gcGFyc2UgYWxsIDMgdmVyc2lvbiBsZXZlbHMuCisg
ICAgICAgICAqIElmIG5vdCwgdGhlbiB0aGlzIG11c3Qgbm90IGJlIGFuIG9mZmljaWFsIHJlbGVh
c2UuCisgICAgICAgICAqIFJldHVybiBhbGwgemVyb3Mgb24gdGhlIHZlcnNpb24KKyAgICAgICAg
ICovCisgICAgICAgIHJldHVybiAoMCk7CiAgICAgfQogCi0gICAgLyogCisgICAgLyoKICAgICAg
KiBXZSBhbGxvdyA4IGJpdHMgZm9yIHRoZSBtYWpvciBhbmQgbWlub3IsIHdoaWxlCiAgICAgICog
YWxsb3dpbmcgMTYgYml0cyBmb3IgdGhlIG1pY3JvLiAgMTYgYml0cyBmb3IgdGhlIG1pY3JvCi0g
ICAgICogbWF5IGJlIGJlbmVmaWNpYWwgZm9yIGEgY29udGludW91cyBkZWxpdmVyeSBtb2RlbCAK
KyAgICAgKiBtYXkgYmUgYmVuZWZpY2lhbCBmb3IgYSBjb250aW51b3VzIGRlbGl2ZXJ5IG1vZGVs
CiAgICAgICogaW4gdGhlIGZ1dHVyZS4KICAgICAgKi8KICAgICBydiB8PSAobWFqb3IgJiAweEZG
KSA8PCAyNDsKQEAgLTE0Niw0NDUgKzE0Nyw0MDkgQEAgdW5zaWduZWQgaW50IHNydHBfZ2V0X3Zl
cnNpb24gKCkKICAgICByZXR1cm4gcnY7CiB9CiAKLS8qIFJlbGVhc2UgKG1heWJlIHBhcnRpYWxs
eSBhbGxvY2F0ZWQpIHN0cmVhbS4gKi8KLXN0YXRpYyB2b2lkCi1zcnRwX3N0cmVhbV9mcmVlKHNy
dHBfc3RyZWFtX2N0eF90ICpzdHIpIHsKLSAgdW5zaWduZWQgaW50IGkgPSAwOwotICBzcnRwX3Nl
c3Npb25fa2V5c190ICpzZXNzaW9uX2tleXMgPSBOVUxMOworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0
cF9zdHJlYW1fZGVhbGxvYyhzcnRwX3N0cmVhbV9jdHhfdCAqc3RyZWFtLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzcnRwX3N0cmVhbV9jdHhfdCAqc3RyZWFt
X3RlbXBsYXRlKQoreworICAgIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKKyAgICB1bnNpZ25l
ZCBpbnQgaSA9IDA7CisgICAgc3J0cF9zZXNzaW9uX2tleXNfdCAqc2Vzc2lvbl9rZXlzID0gTlVM
TDsKKyAgICBzcnRwX3Nlc3Npb25fa2V5c190ICp0ZW1wbGF0ZV9zZXNzaW9uX2tleXMgPSBOVUxM
OwogCi0gIGZvciAoaSA9IDA7IGkgPCBzdHItPm51bV9tYXN0ZXJfa2V5czsgaSsrKSB7Ci0gICAg
c2Vzc2lvbl9rZXlzID0gJnN0ci0+c2Vzc2lvbl9rZXlzW2ldOworICAgIC8qCisgICAgICogd2Ug
dXNlIGEgY29uc2VydmF0aXZlIGRlYWxsb2NhdGlvbiBzdHJhdGVneSAtIGlmIGFueSBkZWFsbG9j
YXRpb24KKyAgICAgKiBmYWlscywgdGhlbiB3ZSByZXBvcnQgdGhhdCBmYWN0IHdpdGhvdXQgdHJ5
aW5nIHRvIGRlYWxsb2NhdGUKKyAgICAgKiBhbnl0aGluZyBlbHNlCisgICAgICovCisgICAgaWYg
KHN0cmVhbS0+c2Vzc2lvbl9rZXlzKSB7CisgICAgICAgIGZvciAoaSA9IDA7IGkgPCBzdHJlYW0t
Pm51bV9tYXN0ZXJfa2V5czsgaSsrKSB7CisgICAgICAgICAgICBzZXNzaW9uX2tleXMgPSAmc3Ry
ZWFtLT5zZXNzaW9uX2tleXNbaV07CisKKyAgICAgICAgICAgIGlmIChzdHJlYW1fdGVtcGxhdGUg
JiYKKyAgICAgICAgICAgICAgICBzdHJlYW0tPm51bV9tYXN0ZXJfa2V5cyA9PSBzdHJlYW1fdGVt
cGxhdGUtPm51bV9tYXN0ZXJfa2V5cykgeworICAgICAgICAgICAgICAgIHRlbXBsYXRlX3Nlc3Np
b25fa2V5cyA9ICZzdHJlYW1fdGVtcGxhdGUtPnNlc3Npb25fa2V5c1tpXTsKKyAgICAgICAgICAg
IH0gZWxzZSB7CisgICAgICAgICAgICAgICAgdGVtcGxhdGVfc2Vzc2lvbl9rZXlzID0gTlVMTDsK
KyAgICAgICAgICAgIH0KIAotICAgIGlmIChzZXNzaW9uX2tleXMtPnJ0cF94dG5faGRyX2NpcGhl
cikgewotICAgICAgc3J0cF9jaXBoZXJfZGVhbGxvYyhzZXNzaW9uX2tleXMtPnJ0cF94dG5faGRy
X2NpcGhlcik7Ci0gICAgfQorICAgICAgICAgICAgLyoKKyAgICAgICAgICAgICogZGVhbGxvY2F0
ZSBjaXBoZXIsIGlmIGl0IGlzIG5vdCB0aGUgc2FtZSBhcyB0aGF0IGluIHRlbXBsYXRlCisgICAg
ICAgICAgICAqLworICAgICAgICAgICAgaWYgKHRlbXBsYXRlX3Nlc3Npb25fa2V5cyAmJgorICAg
ICAgICAgICAgICAgIHNlc3Npb25fa2V5cy0+cnRwX2NpcGhlciA9PSB0ZW1wbGF0ZV9zZXNzaW9u
X2tleXMtPnJ0cF9jaXBoZXIpIHsKKyAgICAgICAgICAgICAgICAvKiBkbyBub3RoaW5nICovCisg
ICAgICAgICAgICB9IGVsc2UgaWYgKHNlc3Npb25fa2V5cy0+cnRwX2NpcGhlcikgeworICAgICAg
ICAgICAgICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX2RlYWxsb2Moc2Vzc2lvbl9rZXlzLT5ydHBf
Y2lwaGVyKTsKKyAgICAgICAgICAgICAgICBpZiAoc3RhdHVzKQorICAgICAgICAgICAgICAgICAg
ICByZXR1cm4gc3RhdHVzOworICAgICAgICAgICAgfQogCi0gICAgaWYgKHNlc3Npb25fa2V5cy0+
cnRjcF9jaXBoZXIpIHsKLSAgICAgIHNydHBfY2lwaGVyX2RlYWxsb2Moc2Vzc2lvbl9rZXlzLT5y
dGNwX2NpcGhlcik7Ci0gICAgfQorICAgICAgICAgICAgLyoKKyAgICAgICAgICAgICAqIGRlYWxs
b2NhdGUgYXV0aCBmdW5jdGlvbiwgaWYgaXQgaXMgbm90IHRoZSBzYW1lIGFzIHRoYXQgaW4KKyAg
ICAgICAgICAgICAqIHRlbXBsYXRlCisgICAgICAgICAgICAgKi8KKyAgICAgICAgICAgIGlmICh0
ZW1wbGF0ZV9zZXNzaW9uX2tleXMgJiYKKyAgICAgICAgICAgICAgICBzZXNzaW9uX2tleXMtPnJ0
cF9hdXRoID09IHRlbXBsYXRlX3Nlc3Npb25fa2V5cy0+cnRwX2F1dGgpIHsKKyAgICAgICAgICAg
ICAgICAvKiBkbyBub3RoaW5nICovCisgICAgICAgICAgICB9IGVsc2UgaWYgKHNlc3Npb25fa2V5
cy0+cnRwX2F1dGgpIHsKKyAgICAgICAgICAgICAgICBzdGF0dXMgPSBzcnRwX2F1dGhfZGVhbGxv
YyhzZXNzaW9uX2tleXMtPnJ0cF9hdXRoKTsKKyAgICAgICAgICAgICAgICBpZiAoc3RhdHVzKQor
ICAgICAgICAgICAgICAgICAgICByZXR1cm4gc3RhdHVzOworICAgICAgICAgICAgfQogCi0gICAg
aWYgKHNlc3Npb25fa2V5cy0+cnRjcF9hdXRoKSB7Ci0gICAgICBzcnRwX2F1dGhfZGVhbGxvYyhz
ZXNzaW9uX2tleXMtPnJ0Y3BfYXV0aCk7Ci0gICAgfQorICAgICAgICAgICAgaWYgKHRlbXBsYXRl
X3Nlc3Npb25fa2V5cyAmJgorICAgICAgICAgICAgICAgIHNlc3Npb25fa2V5cy0+cnRwX3h0bl9o
ZHJfY2lwaGVyID09CisgICAgICAgICAgICAgICAgICAgIHRlbXBsYXRlX3Nlc3Npb25fa2V5cy0+
cnRwX3h0bl9oZHJfY2lwaGVyKSB7CisgICAgICAgICAgICAgICAgLyogZG8gbm90aGluZyAqLwor
ICAgICAgICAgICAgfSBlbHNlIGlmIChzZXNzaW9uX2tleXMtPnJ0cF94dG5faGRyX2NpcGhlcikg
eworICAgICAgICAgICAgICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX2RlYWxsb2Moc2Vzc2lvbl9r
ZXlzLT5ydHBfeHRuX2hkcl9jaXBoZXIpOworICAgICAgICAgICAgICAgIGlmIChzdGF0dXMpCisg
ICAgICAgICAgICAgICAgICAgIHJldHVybiBzdGF0dXM7CisgICAgICAgICAgICB9CiAKLSAgICBp
ZiAoc2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVyKSB7Ci0gICAgICBzcnRwX2NpcGhlcl9kZWFsbG9j
KHNlc3Npb25fa2V5cy0+cnRwX2NpcGhlcik7Ci0gICAgfQorICAgICAgICAgICAgLyoKKyAgICAg
ICAgICAgICAqIGRlYWxsb2NhdGUgcnRjcCBjaXBoZXIsIGlmIGl0IGlzIG5vdCB0aGUgc2FtZSBh
cyB0aGF0IGluCisgICAgICAgICAgICAgKiB0ZW1wbGF0ZQorICAgICAgICAgICAgICovCisgICAg
ICAgICAgICBpZiAodGVtcGxhdGVfc2Vzc2lvbl9rZXlzICYmCisgICAgICAgICAgICAgICAgc2Vz
c2lvbl9rZXlzLT5ydGNwX2NpcGhlciA9PQorICAgICAgICAgICAgICAgICAgICB0ZW1wbGF0ZV9z
ZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyKSB7CisgICAgICAgICAgICAgICAgLyogZG8gbm90aGlu
ZyAqLworICAgICAgICAgICAgfSBlbHNlIGlmIChzZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyKSB7
CisgICAgICAgICAgICAgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfZGVhbGxvYyhzZXNzaW9uX2tl
eXMtPnJ0Y3BfY2lwaGVyKTsKKyAgICAgICAgICAgICAgICBpZiAoc3RhdHVzKQorICAgICAgICAg
ICAgICAgICAgICByZXR1cm4gc3RhdHVzOworICAgICAgICAgICAgfQogCi0gICAgaWYgKHNlc3Np
b25fa2V5cy0+cnRwX2F1dGgpIHsKLSAgICAgIHNydHBfYXV0aF9kZWFsbG9jKHNlc3Npb25fa2V5
cy0+cnRwX2F1dGgpOwotICAgIH0KKyAgICAgICAgICAgIC8qCisgICAgICAgICAgICAgKiBkZWFs
bG9jYXRlIHJ0Y3AgYXV0aCBmdW5jdGlvbiwgaWYgaXQgaXMgbm90IHRoZSBzYW1lIGFzIHRoYXQg
aW4KKyAgICAgICAgICAgICAqIHRlbXBsYXRlCisgICAgICAgICAgICAgKi8KKyAgICAgICAgICAg
IGlmICh0ZW1wbGF0ZV9zZXNzaW9uX2tleXMgJiYKKyAgICAgICAgICAgICAgICBzZXNzaW9uX2tl
eXMtPnJ0Y3BfYXV0aCA9PSB0ZW1wbGF0ZV9zZXNzaW9uX2tleXMtPnJ0Y3BfYXV0aCkgeworICAg
ICAgICAgICAgICAgIC8qIGRvIG5vdGhpbmcgKi8KKyAgICAgICAgICAgIH0gZWxzZSBpZiAoc2Vz
c2lvbl9rZXlzLT5ydGNwX2F1dGgpIHsKKyAgICAgICAgICAgICAgICBzdGF0dXMgPSBzcnRwX2F1
dGhfZGVhbGxvYyhzZXNzaW9uX2tleXMtPnJ0Y3BfYXV0aCk7CisgICAgICAgICAgICAgICAgaWYg
KHN0YXR1cykKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHN0YXR1czsKKyAgICAgICAgICAg
IH0KIAotICAgIGlmIChzZXNzaW9uX2tleXMtPm1raV9pZCkgewotICAgICAgc3J0cF9jcnlwdG9f
ZnJlZShzZXNzaW9uX2tleXMtPm1raV9pZCk7Ci0gICAgfQorICAgICAgICAgICAgLyoKKyAgICAg
ICAgICAgICAqIHplcm9pemUgdGhlIHNhbHQgdmFsdWUKKyAgICAgICAgICAgICAqLworICAgICAg
ICAgICAgb2N0ZXRfc3RyaW5nX3NldF90b196ZXJvKHNlc3Npb25fa2V5cy0+c2FsdCwgU1JUUF9B
RUFEX1NBTFRfTEVOKTsKKyAgICAgICAgICAgIG9jdGV0X3N0cmluZ19zZXRfdG9femVybyhzZXNz
aW9uX2tleXMtPmNfc2FsdCwgU1JUUF9BRUFEX1NBTFRfTEVOKTsKKworICAgICAgICAgICAgaWYg
KHNlc3Npb25fa2V5cy0+bWtpX2lkKSB7CisgICAgICAgICAgICAgICAgb2N0ZXRfc3RyaW5nX3Nl
dF90b196ZXJvKHNlc3Npb25fa2V5cy0+bWtpX2lkLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBzZXNzaW9uX2tleXMtPm1raV9zaXplKTsKKyAgICAgICAgICAgICAg
ICBzcnRwX2NyeXB0b19mcmVlKHNlc3Npb25fa2V5cy0+bWtpX2lkKTsKKyAgICAgICAgICAgICAg
ICBzZXNzaW9uX2tleXMtPm1raV9pZCA9IE5VTEw7CisgICAgICAgICAgICB9CiAKLSAgICBpZiAo
c2Vzc2lvbl9rZXlzLT5saW1pdCkgewotICAgICAgc3J0cF9jcnlwdG9fZnJlZShzZXNzaW9uX2tl
eXMtPmxpbWl0KTsKKyAgICAgICAgICAgIC8qCisgICAgICAgICAgICAgKiBkZWFsbG9jYXRlIGtl
eSB1c2FnZSBsaW1pdCwgaWYgaXQgaXMgbm90IHRoZSBzYW1lIGFzIHRoYXQgaW4KKyAgICAgICAg
ICAgICAqIHRlbXBsYXRlCisgICAgICAgICAgICAgKi8KKyAgICAgICAgICAgIGlmICh0ZW1wbGF0
ZV9zZXNzaW9uX2tleXMgJiYKKyAgICAgICAgICAgICAgICBzZXNzaW9uX2tleXMtPmxpbWl0ID09
IHRlbXBsYXRlX3Nlc3Npb25fa2V5cy0+bGltaXQpIHsKKyAgICAgICAgICAgICAgICAvKiBkbyBu
b3RoaW5nICovCisgICAgICAgICAgICB9IGVsc2UgaWYgKHNlc3Npb25fa2V5cy0+bGltaXQpIHsK
KyAgICAgICAgICAgICAgICBzcnRwX2NyeXB0b19mcmVlKHNlc3Npb25fa2V5cy0+bGltaXQpOwor
ICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgICAgIHNydHBfY3J5cHRvX2ZyZWUoc3RyZWFt
LT5zZXNzaW9uX2tleXMpOwogICAgIH0KLSAgfQotCi0gIHNydHBfY3J5cHRvX2ZyZWUoc3RyLT5z
ZXNzaW9uX2tleXMpOwogCi0gIGlmIChzdHItPmVuY194dG5faGRyKSB7Ci0gICAgc3J0cF9jcnlw
dG9fZnJlZShzdHItPmVuY194dG5faGRyKTsKLSAgfQorICAgIHN0YXR1cyA9IHNydHBfcmRieF9k
ZWFsbG9jKCZzdHJlYW0tPnJ0cF9yZGJ4KTsKKyAgICBpZiAoc3RhdHVzKQorICAgICAgICByZXR1
cm4gc3RhdHVzOwogCi0gIHNydHBfY3J5cHRvX2ZyZWUoc3RyKTsKLX0KKyAgICAvKiBEQU0gLSBu
ZWVkIHRvIGRlYWxsb2NhdGUgRUtUIGhlcmUgKi8KIAotc3J0cF9lcnJfc3RhdHVzX3QKLXNydHBf
c3RyZWFtX2FsbG9jKHNydHBfc3RyZWFtX2N0eF90ICoqc3RyX3B0ciwKLQkJICBjb25zdCBzcnRw
X3BvbGljeV90ICpwKSB7Ci0gIHNydHBfc3RyZWFtX2N0eF90ICpzdHI7Ci0gIHNydHBfZXJyX3N0
YXR1c190IHN0YXQ7Ci0gIHVuc2lnbmVkIGludCBpID0gMDsKLSAgc3J0cF9zZXNzaW9uX2tleXNf
dCAqc2Vzc2lvbl9rZXlzID0gTlVMTDsKLQotICAvKgotICAgKiBUaGlzIGZ1bmN0aW9uIGFsbG9j
YXRlcyB0aGUgc3RyZWFtIGNvbnRleHQsIHJ0cCBhbmQgcnRjcCBjaXBoZXJzCi0gICAqIGFuZCBh
dXRoIGZ1bmN0aW9ucywgYW5kIGtleSBsaW1pdCBzdHJ1Y3R1cmUuICBJZiB0aGVyZSBpcyBhCi0g
ICAqIGZhaWx1cmUgZHVyaW5nIGFsbG9jYXRpb24sIHdlIGZyZWUgYWxsIHByZXZpb3VzbHkgYWxs
b2NhdGVkCi0gICAqIG1lbW9yeSBhbmQgcmV0dXJuIGEgZmFpbHVyZSBjb2RlLiAgVGhlIGNvZGUg
Y291bGQgcHJvYmFibHkgCi0gICAqIGJlIGltcHJvdmVkLCBidXQgaXQgd29ya3MgYW5kIHNob3Vs
ZCBiZSBjbGVhci4KLSAgICovCi0KLSAgLyogYWxsb2NhdGUgc3J0cCBzdHJlYW0gYW5kIHNldCBz
dHJfcHRyICovCi0gIHN0ciA9IChzcnRwX3N0cmVhbV9jdHhfdCAqKSBzcnRwX2NyeXB0b19hbGxv
YyhzaXplb2Yoc3J0cF9zdHJlYW1fY3R4X3QpKTsKLSAgaWYgKHN0ciA9PSBOVUxMKQotICAgIHJl
dHVybiBzcnRwX2Vycl9zdGF0dXNfYWxsb2NfZmFpbDsKLQotICBtZW1zZXQoc3RyLCAwLCBzaXpl
b2Yoc3J0cF9zdHJlYW1fY3R4X3QpKTsKLSAgKnN0cl9wdHIgPSBzdHI7Ci0KLSAgLyogVG8ga2Vl
cCBiYWNrd2FyZHMgQVBJIGNvbXBhdGlibGUgaWYgc29tZW9uZSBpcyB1c2luZyBtdWx0aXBsZSBt
YXN0ZXIKLSAgICoga2V5cyB0aGVuIGtleSBzaG91bGQgYmUgc2V0IHRvIE5VTEwKLSAgICovCi0g
IGlmIChwLT5rZXkgIT0gTlVMTCkgewotICAgICAgc3RyLT5udW1fbWFzdGVyX2tleXMgPSAxOwot
ICB9IGVsc2UgewotICAgICAgc3RyLT5udW1fbWFzdGVyX2tleXMgPSBwLT5udW1fbWFzdGVyX2tl
eXM7Ci0gIH0KLQotICBzdHItPnNlc3Npb25fa2V5cyA9IChzcnRwX3Nlc3Npb25fa2V5c190ICop
c3J0cF9jcnlwdG9fYWxsb2MoCi0gICAgICBzaXplb2Yoc3J0cF9zZXNzaW9uX2tleXNfdCkgKiBz
dHItPm51bV9tYXN0ZXJfa2V5cyk7Ci0KLSAgaWYgKHN0ci0+c2Vzc2lvbl9rZXlzID09IE5VTEwp
IHsKLSAgICAgIHNydHBfc3RyZWFtX2ZyZWUoc3RyKTsKLSAgICAgIHJldHVybiBzcnRwX2Vycl9z
dGF0dXNfYWxsb2NfZmFpbDsKLSAgfQotCi0gIG1lbXNldChzdHItPnNlc3Npb25fa2V5cywgMCwg
c2l6ZW9mKHNydHBfc2Vzc2lvbl9rZXlzX3QpICogc3RyLT5udW1fbWFzdGVyX2tleXMpOwotCi0g
IGZvciAoaSA9IDA7IGkgPCBzdHItPm51bV9tYXN0ZXJfa2V5czsgaSsrKSB7Ci0gICAgc2Vzc2lv
bl9rZXlzID0gJnN0ci0+c2Vzc2lvbl9rZXlzW2ldOwotCi0gICAgLyogYWxsb2NhdGUgY2lwaGVy
ICovIAotICAgIHN0YXQgPSBzcnRwX2NyeXB0b19rZXJuZWxfYWxsb2NfY2lwaGVyKHAtPnJ0cC5j
aXBoZXJfdHlwZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAm
c2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHAtPnJ0cC5jaXBoZXJfa2V5X2xlbiwKLQkJCQkgICAgICAgICAgIHAtPnJ0
cC5hdXRoX3RhZ19sZW4pOwotICAgIGlmIChzdGF0KSB7Ci0gICAgICBzcnRwX3N0cmVhbV9mcmVl
KHN0cik7Ci0gICAgICByZXR1cm4gc3RhdDsKKyAgICBpZiAoc3RyZWFtX3RlbXBsYXRlICYmCisg
ICAgICAgIHN0cmVhbS0+ZW5jX3h0bl9oZHIgPT0gc3RyZWFtX3RlbXBsYXRlLT5lbmNfeHRuX2hk
cikgeworICAgICAgICAvKiBkbyBub3RoaW5nICovCisgICAgfSBlbHNlIGlmIChzdHJlYW0tPmVu
Y194dG5faGRyKSB7CisgICAgICAgIHNydHBfY3J5cHRvX2ZyZWUoc3RyZWFtLT5lbmNfeHRuX2hk
cik7CiAgICAgfQogCi0gICAgLyogYWxsb2NhdGUgYXV0aCBmdW5jdGlvbiAqLwotICAgIHN0YXQg
PSBzcnRwX2NyeXB0b19rZXJuZWxfYWxsb2NfYXV0aChwLT5ydHAuYXV0aF90eXBlLAotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmc2Vzc2lvbl9rZXlzLT5ydHBfYXV0
aCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcC0+cnRwLmF1dGhf
a2V5X2xlbiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcC0+cnRw
LmF1dGhfdGFnX2xlbik7Ci0gICAgaWYgKHN0YXQpIHsKLSAgICAgIHNydHBfc3RyZWFtX2ZyZWUo
c3RyKTsKLSAgICAgIHJldHVybiBzdGF0OwotICAgIH0KKyAgICAvKiBkZWFsbG9jYXRlIHNydHAg
c3RyZWFtIGNvbnRleHQgKi8KKyAgICBzcnRwX2NyeXB0b19mcmVlKHN0cmVhbSk7CisKKyAgICBy
ZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOworfQorCitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3N0
cmVhbV9hbGxvYyhzcnRwX3N0cmVhbV9jdHhfdCAqKnN0cl9wdHIsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBjb25zdCBzcnRwX3BvbGljeV90ICpwKQoreworICAgIHNydHBf
c3RyZWFtX2N0eF90ICpzdHI7CisgICAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdDsKKyAgICB1bnNp
Z25lZCBpbnQgaSA9IDA7CisgICAgc3J0cF9zZXNzaW9uX2tleXNfdCAqc2Vzc2lvbl9rZXlzID0g
TlVMTDsKIAogICAgIC8qCi0gICAgICogLi4uYW5kIG5vdyB0aGUgUlRDUC1zcGVjaWZpYyBpbml0
aWFsaXphdGlvbiAtIGZpcnN0LCBhbGxvY2F0ZQotICAgICAqIHRoZSBjaXBoZXIgCisgICAgICog
VGhpcyBmdW5jdGlvbiBhbGxvY2F0ZXMgdGhlIHN0cmVhbSBjb250ZXh0LCBydHAgYW5kIHJ0Y3Ag
Y2lwaGVycworICAgICAqIGFuZCBhdXRoIGZ1bmN0aW9ucywgYW5kIGtleSBsaW1pdCBzdHJ1Y3R1
cmUuICBJZiB0aGVyZSBpcyBhCisgICAgICogZmFpbHVyZSBkdXJpbmcgYWxsb2NhdGlvbiwgd2Ug
ZnJlZSBhbGwgcHJldmlvdXNseSBhbGxvY2F0ZWQKKyAgICAgKiBtZW1vcnkgYW5kIHJldHVybiBh
IGZhaWx1cmUgY29kZS4gIFRoZSBjb2RlIGNvdWxkIHByb2JhYmx5CisgICAgICogYmUgaW1wcm92
ZWQsIGJ1dCBpdCB3b3JrcyBhbmQgc2hvdWxkIGJlIGNsZWFyLgogICAgICAqLwotICAgIHN0YXQg
PSBzcnRwX2NyeXB0b19rZXJuZWxfYWxsb2NfY2lwaGVyKHAtPnJ0Y3AuY2lwaGVyX3R5cGUsCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnNlc3Npb25fa2V5cy0+
cnRjcF9jaXBoZXIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
cC0+cnRjcC5jaXBoZXJfa2V5X2xlbiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBwLT5ydGNwLmF1dGhfdGFnX2xlbik7Ci0gICAgaWYgKHN0YXQpIHsKLSAgICAg
IHNydHBfc3RyZWFtX2ZyZWUoc3RyKTsKLSAgICAgIHJldHVybiBzdGF0OwotICAgIH0KLQotICAg
IC8qIGFsbG9jYXRlIGF1dGggZnVuY3Rpb24gKi8KLSAgICBzdGF0ID0gc3J0cF9jcnlwdG9fa2Vy
bmVsX2FsbG9jX2F1dGgocC0+cnRjcC5hdXRoX3R5cGUsCi0gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICZzZXNzaW9uX2tleXMtPnJ0Y3BfYXV0aCwKLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcC0+cnRjcC5hdXRoX2tleV9sZW4sCi0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHAtPnJ0Y3AuYXV0aF90YWdfbGVu
KTsKLSAgICBpZiAoc3RhdCkgewotICAgICAgc3J0cF9zdHJlYW1fZnJlZShzdHIpOwotICAgICAg
cmV0dXJuIHN0YXQ7Ci0gICAgfQotICAgCi0gICAgc2Vzc2lvbl9rZXlzLT5ta2lfaWQgPSBOVUxM
OwogCi0gICAgLyogYWxsb2NhdGUga2V5IGxpbWl0IHN0cnVjdHVyZSAqLwotICAgIHNlc3Npb25f
a2V5cy0+bGltaXQgPSAoc3J0cF9rZXlfbGltaXRfY3R4X3QqKSBzcnRwX2NyeXB0b19hbGxvYyhz
aXplb2Yoc3J0cF9rZXlfbGltaXRfY3R4X3QpKTsKLSAgICBpZiAoc2Vzc2lvbl9rZXlzLT5saW1p
dCA9PSBOVUxMKSB7Ci0gICAgICAgIHNydHBfc3RyZWFtX2ZyZWUoc3RyKTsKKyAgICAvKiBhbGxv
Y2F0ZSBzcnRwIHN0cmVhbSBhbmQgc2V0IHN0cl9wdHIgKi8KKyAgICBzdHIgPSAoc3J0cF9zdHJl
YW1fY3R4X3QgKilzcnRwX2NyeXB0b19hbGxvYyhzaXplb2Yoc3J0cF9zdHJlYW1fY3R4X3QpKTsK
KyAgICBpZiAoc3RyID09IE5VTEwpCiAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYWxs
b2NfZmFpbDsKLSAgICB9Ci0gIH0KLQotICAvKiBhbGxvY2F0ZSBla3QgZGF0YSBhc3NvY2lhdGVk
IHdpdGggc3RyZWFtICovCi0gIHN0YXQgPSBzcnRwX2VrdF9hbGxvYygmc3RyLT5la3QsIHAtPmVr
dCk7Ci0gIGlmIChzdGF0KSB7Ci0gICAgc3J0cF9zdHJlYW1fZnJlZShzdHIpOwotICAgIHJldHVy
biBzdGF0OwotICB9CiAKLSAgaWYgKHAtPmVuY194dG5faGRyICYmIHAtPmVuY194dG5faGRyX2Nv
dW50ID4gMCkgewotICAgIHNydHBfY2lwaGVyX3R5cGVfaWRfdCBlbmNfeHRuX2hkcl9jaXBoZXJf
dHlwZTsKLSAgICBpbnQgZW5jX3h0bl9oZHJfY2lwaGVyX2tleV9sZW47CisgICAgKnN0cl9wdHIg
PSBzdHI7CiAKLSAgICBzdHItPmVuY194dG5faGRyID0gKGludCopIHNydHBfY3J5cHRvX2FsbG9j
KHAtPmVuY194dG5faGRyX2NvdW50ICogc2l6ZW9mKHAtPmVuY194dG5faGRyWzBdKSk7Ci0gICAg
aWYgKCFzdHItPmVuY194dG5faGRyKSB7Ci0gICAgICBzcnRwX3N0cmVhbV9mcmVlKHN0cik7Ci0g
ICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2FsbG9jX2ZhaWw7CisgICAgLyoKKyAgICAgKlRv
IGtlZXAgYmFja3dhcmRzIEFQSSBjb21wYXRpYmxlIGlmIHNvbWVvbmUgaXMgdXNpbmcgbXVsdGlw
bGUgbWFzdGVyCisgICAgICoga2V5cyB0aGVuIGtleSBzaG91bGQgYmUgc2V0IHRvIE5VTEwKKyAg
ICAgKi8KKyAgICBpZiAocC0+a2V5ICE9IE5VTEwpIHsKKyAgICAgICAgc3RyLT5udW1fbWFzdGVy
X2tleXMgPSAxOworICAgIH0gZWxzZSB7CisgICAgICAgIHN0ci0+bnVtX21hc3Rlcl9rZXlzID0g
cC0+bnVtX21hc3Rlcl9rZXlzOwogICAgIH0KLSAgICBtZW1jcHkoc3RyLT5lbmNfeHRuX2hkciwg
cC0+ZW5jX3h0bl9oZHIsIHAtPmVuY194dG5faGRyX2NvdW50ICogc2l6ZW9mKHAtPmVuY194dG5f
aGRyWzBdKSk7Ci0gICAgc3RyLT5lbmNfeHRuX2hkcl9jb3VudCA9IHAtPmVuY194dG5faGRyX2Nv
dW50OwogCi0gICAgLyogRm9yIEdDTSBjaXBoZXJzLCB0aGUgY29ycmVzcG9uZGluZyBJQ00gY2lw
aGVyIGlzIHVzZWQgZm9yIGhlYWRlciBleHRlbnNpb25zIGVuY3J5cHRpb24uICovCi0gICAgc3dp
dGNoIChwLT5ydHAuY2lwaGVyX3R5cGUpIHsKLSAgICBjYXNlIFNSVFBfQUVTX0dDTV8xMjg6Ci0g
ICAgICBlbmNfeHRuX2hkcl9jaXBoZXJfdHlwZSA9IFNSVFBfQUVTX0lDTV8xMjg7Ci0gICAgICBl
bmNfeHRuX2hkcl9jaXBoZXJfa2V5X2xlbiA9IFNSVFBfQUVTX0lDTV8xMjhfS0VZX0xFTl9XU0FM
VDsKLSAgICAgIGJyZWFrOwotICAgIGNhc2UgU1JUUF9BRVNfR0NNXzI1NjoKLSAgICAgIGVuY194
dG5faGRyX2NpcGhlcl90eXBlID0gU1JUUF9BRVNfSUNNXzI1NjsKLSAgICAgIGVuY194dG5faGRy
X2NpcGhlcl9rZXlfbGVuID0gU1JUUF9BRVNfSUNNXzI1Nl9LRVlfTEVOX1dTQUxUOwotICAgICAg
YnJlYWs7Ci0gICAgZGVmYXVsdDoKLSAgICAgIGVuY194dG5faGRyX2NpcGhlcl90eXBlID0gcC0+
cnRwLmNpcGhlcl90eXBlOwotICAgICAgZW5jX3h0bl9oZHJfY2lwaGVyX2tleV9sZW4gPSBwLT5y
dHAuY2lwaGVyX2tleV9sZW47Ci0gICAgICBicmVhazsKLSAgICB9CisgICAgc3RyLT5zZXNzaW9u
X2tleXMgPSAoc3J0cF9zZXNzaW9uX2tleXNfdCAqKXNydHBfY3J5cHRvX2FsbG9jKAorICAgICAg
ICBzaXplb2Yoc3J0cF9zZXNzaW9uX2tleXNfdCkgKiBzdHItPm51bV9tYXN0ZXJfa2V5cyk7CiAK
LSAgICBmb3IgKGkgPSAwOyBpIDwgc3RyLT5udW1fbWFzdGVyX2tleXM7IGkrKykgewotICAgICAg
c2Vzc2lvbl9rZXlzID0gJnN0ci0+c2Vzc2lvbl9rZXlzW2ldOwotCi0gICAgICAvKiBhbGxvY2F0
ZSBjaXBoZXIgZm9yIGV4dGVuc2lvbnMgaGVhZGVyIGVuY3J5cHRpb24gKi8KLSAgICAgIHN0YXQg
PSBzcnRwX2NyeXB0b19rZXJuZWxfYWxsb2NfY2lwaGVyKGVuY194dG5faGRyX2NpcGhlcl90eXBl
LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnNlc3Npb25f
a2V5cy0+cnRwX3h0bl9oZHJfY2lwaGVyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgZW5jX3h0bl9oZHJfY2lwaGVyX2tleV9sZW4sCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwKTsKLSAgICAgIGlmIChzdGF0KSB7Ci0g
ICAgICAgIHNydHBfc3RyZWFtX2ZyZWUoc3RyKTsKLSAgICAgICAgcmV0dXJuIHN0YXQ7Ci0gICAg
ICB9CisgICAgaWYgKHN0ci0+c2Vzc2lvbl9rZXlzID09IE5VTEwpIHsKKyAgICAgICAgc3J0cF9z
dHJlYW1fZGVhbGxvYyhzdHIsIE5VTEwpOworICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVz
X2FsbG9jX2ZhaWw7CiAgICAgfQotICB9IGVsc2UgeworCiAgICAgZm9yIChpID0gMDsgaSA8IHN0
ci0+bnVtX21hc3Rlcl9rZXlzOyBpKyspIHsKLSAgICAgIHNlc3Npb25fa2V5cyA9ICZzdHItPnNl
c3Npb25fa2V5c1tpXTsKLSAgICAgIHNlc3Npb25fa2V5cy0+cnRwX3h0bl9oZHJfY2lwaGVyID0g
TlVMTDsKLSAgICB9CisgICAgICAgIHNlc3Npb25fa2V5cyA9ICZzdHItPnNlc3Npb25fa2V5c1tp
XTsKKworICAgICAgICAvKiBhbGxvY2F0ZSBjaXBoZXIgKi8KKyAgICAgICAgc3RhdCA9IHNydHBf
Y3J5cHRvX2tlcm5lbF9hbGxvY19jaXBoZXIoCisgICAgICAgICAgICBwLT5ydHAuY2lwaGVyX3R5
cGUsICZzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXIsCisgICAgICAgICAgICBwLT5ydHAuY2lwaGVy
X2tleV9sZW4sIHAtPnJ0cC5hdXRoX3RhZ19sZW4pOworICAgICAgICBpZiAoc3RhdCkgeworICAg
ICAgICAgICAgc3J0cF9zdHJlYW1fZGVhbGxvYyhzdHIsIE5VTEwpOworICAgICAgICAgICAgcmV0
dXJuIHN0YXQ7CisgICAgICAgIH0KIAotICAgIHN0ci0+ZW5jX3h0bl9oZHIgPSBOVUxMOwotICAg
IHN0ci0+ZW5jX3h0bl9oZHJfY291bnQgPSAwOwotICB9CisgICAgICAgIC8qIGFsbG9jYXRlIGF1
dGggZnVuY3Rpb24gKi8KKyAgICAgICAgc3RhdCA9IHNydHBfY3J5cHRvX2tlcm5lbF9hbGxvY19h
dXRoKAorICAgICAgICAgICAgcC0+cnRwLmF1dGhfdHlwZSwgJnNlc3Npb25fa2V5cy0+cnRwX2F1
dGgsIHAtPnJ0cC5hdXRoX2tleV9sZW4sCisgICAgICAgICAgICBwLT5ydHAuYXV0aF90YWdfbGVu
KTsKKyAgICAgICAgaWYgKHN0YXQpIHsKKyAgICAgICAgICAgIHNydHBfc3RyZWFtX2RlYWxsb2Mo
c3RyLCBOVUxMKTsKKyAgICAgICAgICAgIHJldHVybiBzdGF0OworICAgICAgICB9CiAKLSAgcmV0
dXJuIHNydHBfZXJyX3N0YXR1c19vazsKLX0KKyAgICAgICAgLyoKKyAgICAgICAgICogLi4uYW5k
IG5vdyB0aGUgUlRDUC1zcGVjaWZpYyBpbml0aWFsaXphdGlvbiAtIGZpcnN0LCBhbGxvY2F0ZQor
ICAgICAgICAgKiB0aGUgY2lwaGVyCisgICAgICAgICAqLworICAgICAgICBzdGF0ID0gc3J0cF9j
cnlwdG9fa2VybmVsX2FsbG9jX2NpcGhlcigKKyAgICAgICAgICAgIHAtPnJ0Y3AuY2lwaGVyX3R5
cGUsICZzZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyLAorICAgICAgICAgICAgcC0+cnRjcC5jaXBo
ZXJfa2V5X2xlbiwgcC0+cnRjcC5hdXRoX3RhZ19sZW4pOworICAgICAgICBpZiAoc3RhdCkgewor
ICAgICAgICAgICAgc3J0cF9zdHJlYW1fZGVhbGxvYyhzdHIsIE5VTEwpOworICAgICAgICAgICAg
cmV0dXJuIHN0YXQ7CisgICAgICAgIH0KIAotc3J0cF9lcnJfc3RhdHVzX3QKLXNydHBfc3RyZWFt
X2RlYWxsb2Moc3J0cF9zdHJlYW1fY3R4X3QgKnN0cmVhbSwgc3J0cF9zdHJlYW1fY3R4X3QgKnN0
cmVhbV90ZW1wbGF0ZSkgewotICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7Ci0gIHVuc2lnbmVk
IGludCBpID0gMDsKLSAgc3J0cF9zZXNzaW9uX2tleXNfdCAqc2Vzc2lvbl9rZXlzID0gTlVMTDsK
LSAgc3J0cF9zZXNzaW9uX2tleXNfdCAqdGVtcGxhdGVfc2Vzc2lvbl9rZXlzID0gTlVMTDsKLQot
ICAvKgotICAgKiB3ZSB1c2UgYSBjb25zZXJ2YXRpdmUgZGVhbGxvY2F0aW9uIHN0cmF0ZWd5IC0g
aWYgYW55IGRlYWxsb2NhdGlvbgotICAgKiBmYWlscywgdGhlbiB3ZSByZXBvcnQgdGhhdCBmYWN0
IHdpdGhvdXQgdHJ5aW5nIHRvIGRlYWxsb2NhdGUKLSAgICogYW55dGhpbmcgZWxzZQotICAgKi8K
LSAgZm9yICggaSA9IDA7IGkgPCBzdHJlYW0tPm51bV9tYXN0ZXJfa2V5czsgaSsrKSB7Ci0gICAg
c2Vzc2lvbl9rZXlzID0gJnN0cmVhbS0+c2Vzc2lvbl9rZXlzW2ldOwotCi0gICAgaWYgKHN0cmVh
bV90ZW1wbGF0ZSkgewotICAgICAgdGVtcGxhdGVfc2Vzc2lvbl9rZXlzID0gJnN0cmVhbV90ZW1w
bGF0ZS0+c2Vzc2lvbl9rZXlzW2ldOwotICAgIH0gZWxzZSB7Ci0gICAgICB0ZW1wbGF0ZV9zZXNz
aW9uX2tleXMgPSBOVUxMOwotICAgIH0KKyAgICAgICAgLyogYWxsb2NhdGUgYXV0aCBmdW5jdGlv
biAqLworICAgICAgICBzdGF0ID0gc3J0cF9jcnlwdG9fa2VybmVsX2FsbG9jX2F1dGgoCisgICAg
ICAgICAgICBwLT5ydGNwLmF1dGhfdHlwZSwgJnNlc3Npb25fa2V5cy0+cnRjcF9hdXRoLCBwLT5y
dGNwLmF1dGhfa2V5X2xlbiwKKyAgICAgICAgICAgIHAtPnJ0Y3AuYXV0aF90YWdfbGVuKTsKKyAg
ICAgICAgaWYgKHN0YXQpIHsKKyAgICAgICAgICAgIHNydHBfc3RyZWFtX2RlYWxsb2Moc3RyLCBO
VUxMKTsKKyAgICAgICAgICAgIHJldHVybiBzdGF0OworICAgICAgICB9CiAKLSAgICAvKiBkZWFs
bG9jYXRlIGNpcGhlciwgaWYgaXQgaXMgbm90IHRoZSBzYW1lIGFzIHRoYXQgaW4gdGVtcGxhdGUg
Ki8KLSAgICBpZiAodGVtcGxhdGVfc2Vzc2lvbl9rZXlzCi0gICAgICAgICYmIHNlc3Npb25fa2V5
cy0+cnRwX2NpcGhlciA9PSB0ZW1wbGF0ZV9zZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXIpIHsKLSAg
ICAgICAvKiBkbyBub3RoaW5nICovCi0gICAgfSBlbHNlIHsKLSAgICAgICBzdGF0dXMgPSBzcnRw
X2NpcGhlcl9kZWFsbG9jKHNlc3Npb25fa2V5cy0+cnRwX2NpcGhlcik7Ci0gICAgICAgaWYgKHN0
YXR1cykKLSAgICAgICAgIHJldHVybiBzdGF0dXM7Ci0gICAgfQorICAgICAgICBzZXNzaW9uX2tl
eXMtPm1raV9pZCA9IE5VTEw7CiAKLSAgICAvKiBkZWFsbG9jYXRlIGF1dGggZnVuY3Rpb24sIGlm
IGl0IGlzIG5vdCB0aGUgc2FtZSBhcyB0aGF0IGluIHRlbXBsYXRlICovCi0gICAgaWYgKHRlbXBs
YXRlX3Nlc3Npb25fa2V5cwotICAgICAgICAmJiBzZXNzaW9uX2tleXMtPnJ0cF9hdXRoID09IHRl
bXBsYXRlX3Nlc3Npb25fa2V5cy0+cnRwX2F1dGgpIHsKLSAgICAgICAvKiBkbyBub3RoaW5nICov
Ci0gICAgfSBlbHNlIHsKLSAgICAgIHN0YXR1cyA9IHNydHBfYXV0aF9kZWFsbG9jKHNlc3Npb25f
a2V5cy0+cnRwX2F1dGgpOwotICAgICAgaWYgKHN0YXR1cykKLSAgICAgICAgcmV0dXJuIHN0YXR1
czsKKyAgICAgICAgLyogYWxsb2NhdGUga2V5IGxpbWl0IHN0cnVjdHVyZSAqLworICAgICAgICBz
ZXNzaW9uX2tleXMtPmxpbWl0ID0gKHNydHBfa2V5X2xpbWl0X2N0eF90ICopc3J0cF9jcnlwdG9f
YWxsb2MoCisgICAgICAgICAgICBzaXplb2Yoc3J0cF9rZXlfbGltaXRfY3R4X3QpKTsKKyAgICAg
ICAgaWYgKHNlc3Npb25fa2V5cy0+bGltaXQgPT0gTlVMTCkgeworICAgICAgICAgICAgc3J0cF9z
dHJlYW1fZGVhbGxvYyhzdHIsIE5VTEwpOworICAgICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0
YXR1c19hbGxvY19mYWlsOworICAgICAgICB9CiAgICAgfQogCi0gICAgaWYgKHRlbXBsYXRlX3Nl
c3Npb25fa2V5cwotICAgICAgICAmJiBzZXNzaW9uX2tleXMtPnJ0cF94dG5faGRyX2NpcGhlciA9
PSB0ZW1wbGF0ZV9zZXNzaW9uX2tleXMtPnJ0cF94dG5faGRyX2NpcGhlcikgewotICAgICAgIC8q
IGRvIG5vdGhpbmcgKi8KLSAgICB9IGVsc2UgaWYgKHNlc3Npb25fa2V5cy0+cnRwX3h0bl9oZHJf
Y2lwaGVyKSB7Ci0gICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9kZWFsbG9jKHNlc3Npb25fa2V5
cy0+cnRwX3h0bl9oZHJfY2lwaGVyKTsKLSAgICAgIGlmIChzdGF0dXMpCi0gICAgICAgIHJldHVy
biBzdGF0dXM7CisgICAgLyogYWxsb2NhdGUgZWt0IGRhdGEgYXNzb2NpYXRlZCB3aXRoIHN0cmVh
bSAqLworICAgIHN0YXQgPSBzcnRwX2VrdF9hbGxvYygmc3RyLT5la3QsIHAtPmVrdCk7CisgICAg
aWYgKHN0YXQpIHsKKyAgICAgICAgc3J0cF9zdHJlYW1fZGVhbGxvYyhzdHIsIE5VTEwpOworICAg
ICAgICByZXR1cm4gc3RhdDsKICAgICB9CiAKLSAgICAvKgotICAgICAqIGRlYWxsb2NhdGUgcnRj
cCBjaXBoZXIsIGlmIGl0IGlzIG5vdCB0aGUgc2FtZSBhcyB0aGF0IGluCi0gICAgICogdGVtcGxh
dGUKLSAgICAgKi8KLSAgICBpZiAodGVtcGxhdGVfc2Vzc2lvbl9rZXlzCi0gICAgICAgICYmIHNl
c3Npb25fa2V5cy0+cnRjcF9jaXBoZXIgPT0gdGVtcGxhdGVfc2Vzc2lvbl9rZXlzLT5ydGNwX2Np
cGhlcikgewotICAgICAgLyogZG8gbm90aGluZyAqLwotICAgIH0gZWxzZSB7Ci0gICAgICBzdGF0
dXMgPSBzcnRwX2NpcGhlcl9kZWFsbG9jKHNlc3Npb25fa2V5cy0+cnRjcF9jaXBoZXIpOwotICAg
ICAgaWYgKHN0YXR1cykKLSAgICAgICAgcmV0dXJuIHN0YXR1czsKLSAgICB9CisgICAgaWYgKHAt
PmVuY194dG5faGRyICYmIHAtPmVuY194dG5faGRyX2NvdW50ID4gMCkgeworICAgICAgICBzcnRw
X2NpcGhlcl90eXBlX2lkX3QgZW5jX3h0bl9oZHJfY2lwaGVyX3R5cGU7CisgICAgICAgIGludCBl
bmNfeHRuX2hkcl9jaXBoZXJfa2V5X2xlbjsKIAotICAgIC8qCi0gICAgICogZGVhbGxvY2F0ZSBy
dGNwIGF1dGggZnVuY3Rpb24sIGlmIGl0IGlzIG5vdCB0aGUgc2FtZSBhcyB0aGF0IGluCi0gICAg
ICogdGVtcGxhdGUKLSAgICAgKi8KLSAgICBpZiAodGVtcGxhdGVfc2Vzc2lvbl9rZXlzCi0gICAg
ICAgICYmIHNlc3Npb25fa2V5cy0+cnRjcF9hdXRoID09IHRlbXBsYXRlX3Nlc3Npb25fa2V5cy0+
cnRjcF9hdXRoKSB7Ci0gICAgICAvKiBkbyBub3RoaW5nICovCi0gICAgfSBlbHNlIHsKLSAgICAg
IHN0YXR1cyA9IHNydHBfYXV0aF9kZWFsbG9jKHNlc3Npb25fa2V5cy0+cnRjcF9hdXRoKTsKLSAg
ICAgIGlmIChzdGF0dXMpCi0gICAgICAgIHJldHVybiBzdGF0dXM7Ci0gICAgfQorICAgICAgICBz
dHItPmVuY194dG5faGRyID0gKGludCAqKXNydHBfY3J5cHRvX2FsbG9jKHAtPmVuY194dG5faGRy
X2NvdW50ICoKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBzaXplb2YocC0+ZW5jX3h0bl9oZHJbMF0pKTsKKyAgICAgICAgaWYgKCFzdHItPmVuY194
dG5faGRyKSB7CisgICAgICAgICAgICBzcnRwX3N0cmVhbV9kZWFsbG9jKHN0ciwgTlVMTCk7Cisg
ICAgICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2FsbG9jX2ZhaWw7CisgICAgICAgIH0K
KyAgICAgICAgbWVtY3B5KHN0ci0+ZW5jX3h0bl9oZHIsIHAtPmVuY194dG5faGRyLAorICAgICAg
ICAgICAgICAgcC0+ZW5jX3h0bl9oZHJfY291bnQgKiBzaXplb2YocC0+ZW5jX3h0bl9oZHJbMF0p
KTsKKyAgICAgICAgc3RyLT5lbmNfeHRuX2hkcl9jb3VudCA9IHAtPmVuY194dG5faGRyX2NvdW50
OwogCi0gICAgLyoKLSAgICAgKiB6ZXJvaXplIHRoZSBzYWx0IHZhbHVlCi0gICAgICovCi0gICAg
b2N0ZXRfc3RyaW5nX3NldF90b196ZXJvKHNlc3Npb25fa2V5cy0+c2FsdCwgU1JUUF9BRUFEX1NB
TFRfTEVOKTsKLSAgICBvY3RldF9zdHJpbmdfc2V0X3RvX3plcm8oc2Vzc2lvbl9rZXlzLT5jX3Nh
bHQsIFNSVFBfQUVBRF9TQUxUX0xFTik7CisgICAgICAgIC8qCisgICAgICAgICAqIEZvciBHQ00g
Y2lwaGVycywgdGhlIGNvcnJlc3BvbmRpbmcgSUNNIGNpcGhlciBpcyB1c2VkIGZvciBoZWFkZXIK
KyAgICAgICAgICogZXh0ZW5zaW9ucyBlbmNyeXB0aW9uLgorICAgICAgICAgKi8KKyAgICAgICAg
c3dpdGNoIChwLT5ydHAuY2lwaGVyX3R5cGUpIHsKKyAgICAgICAgY2FzZSBTUlRQX0FFU19HQ01f
MTI4OgorICAgICAgICAgICAgZW5jX3h0bl9oZHJfY2lwaGVyX3R5cGUgPSBTUlRQX0FFU19JQ01f
MTI4OworICAgICAgICAgICAgZW5jX3h0bl9oZHJfY2lwaGVyX2tleV9sZW4gPSBTUlRQX0FFU19J
Q01fMTI4X0tFWV9MRU5fV1NBTFQ7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSBT
UlRQX0FFU19HQ01fMjU2OgorICAgICAgICAgICAgZW5jX3h0bl9oZHJfY2lwaGVyX3R5cGUgPSBT
UlRQX0FFU19JQ01fMjU2OworICAgICAgICAgICAgZW5jX3h0bl9oZHJfY2lwaGVyX2tleV9sZW4g
PSBTUlRQX0FFU19JQ01fMjU2X0tFWV9MRU5fV1NBTFQ7CisgICAgICAgICAgICBicmVhazsKKyAg
ICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIGVuY194dG5faGRyX2NpcGhlcl90eXBlID0gcC0+
cnRwLmNpcGhlcl90eXBlOworICAgICAgICAgICAgZW5jX3h0bl9oZHJfY2lwaGVyX2tleV9sZW4g
PSBwLT5ydHAuY2lwaGVyX2tleV9sZW47CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgfQog
Ci0gICAgaWYgKHNlc3Npb25fa2V5cy0+bWtpX2lkKSB7Ci0gICAgICBvY3RldF9zdHJpbmdfc2V0
X3RvX3plcm8oc2Vzc2lvbl9rZXlzLT5ta2lfaWQsIHNlc3Npb25fa2V5cy0+bWtpX3NpemUpOwot
ICAgICAgc3J0cF9jcnlwdG9fZnJlZShzZXNzaW9uX2tleXMtPm1raV9pZCk7Ci0gICAgICBzZXNz
aW9uX2tleXMtPm1raV9pZCA9IE5VTEw7Ci0gICAgfQorICAgICAgICBmb3IgKGkgPSAwOyBpIDwg
c3RyLT5udW1fbWFzdGVyX2tleXM7IGkrKykgeworICAgICAgICAgICAgc2Vzc2lvbl9rZXlzID0g
JnN0ci0+c2Vzc2lvbl9rZXlzW2ldOwogCi0gICAgLyogZGVhbGxvY2F0ZSBrZXkgdXNhZ2UgbGlt
aXQsIGlmIGl0IGlzIG5vdCB0aGUgc2FtZSBhcyB0aGF0IGluIHRlbXBsYXRlICovCi0gICAgaWYg
KHRlbXBsYXRlX3Nlc3Npb25fa2V5cwotICAgICAgICAmJiBzZXNzaW9uX2tleXMtPmxpbWl0ID09
IHRlbXBsYXRlX3Nlc3Npb25fa2V5cy0+bGltaXQpIHsKLSAgICAgICAgLyogZG8gbm90aGluZyAq
LworICAgICAgICAgICAgLyogYWxsb2NhdGUgY2lwaGVyIGZvciBleHRlbnNpb25zIGhlYWRlciBl
bmNyeXB0aW9uICovCisgICAgICAgICAgICBzdGF0ID0gc3J0cF9jcnlwdG9fa2VybmVsX2FsbG9j
X2NpcGhlcigKKyAgICAgICAgICAgICAgICBlbmNfeHRuX2hkcl9jaXBoZXJfdHlwZSwgJnNlc3Np
b25fa2V5cy0+cnRwX3h0bl9oZHJfY2lwaGVyLAorICAgICAgICAgICAgICAgIGVuY194dG5faGRy
X2NpcGhlcl9rZXlfbGVuLCAwKTsKKyAgICAgICAgICAgIGlmIChzdGF0KSB7CisgICAgICAgICAg
ICAgICAgc3J0cF9zdHJlYW1fZGVhbGxvYyhzdHIsIE5VTEwpOworICAgICAgICAgICAgICAgIHJl
dHVybiBzdGF0OworICAgICAgICAgICAgfQorICAgICAgICB9CiAgICAgfSBlbHNlIHsKLSAgICAg
IHNydHBfY3J5cHRvX2ZyZWUoc2Vzc2lvbl9rZXlzLT5saW1pdCk7Ci0gICAgfQotCi0gIH0KLQot
ICBpZiAoc3RyZWFtX3RlbXBsYXRlCi0gICAgICAmJiBzdHJlYW0tPnNlc3Npb25fa2V5cyA9PSBz
dHJlYW1fdGVtcGxhdGUtPnNlc3Npb25fa2V5cykgewotICAgICAgLyogZG8gbm90aGluZyAqLwot
ICB9IGVsc2UgewotICAgIHNydHBfY3J5cHRvX2ZyZWUoc3RyZWFtLT5zZXNzaW9uX2tleXMpOwot
ICB9Ci0KLSAgc3RhdHVzID0gc3J0cF9yZGJ4X2RlYWxsb2MoJnN0cmVhbS0+cnRwX3JkYngpOwot
ICBpZiAoc3RhdHVzKQotICAgIHJldHVybiBzdGF0dXM7Ci0KLSAgLyogREFNIC0gbmVlZCB0byBk
ZWFsbG9jYXRlIEVLVCBoZXJlICovCi0KLSAgaWYgKHN0cmVhbV90ZW1wbGF0ZQotICAgICAgJiYg
c3RyZWFtLT5lbmNfeHRuX2hkciA9PSBzdHJlYW1fdGVtcGxhdGUtPmVuY194dG5faGRyKSB7Ci0g
ICAgLyogZG8gbm90aGluZyAqLwotICB9IGVsc2UgaWYgKHN0cmVhbS0+ZW5jX3h0bl9oZHIpIHsK
LSAgICBzcnRwX2NyeXB0b19mcmVlKHN0cmVhbS0+ZW5jX3h0bl9oZHIpOwotICB9CisgICAgICAg
IGZvciAoaSA9IDA7IGkgPCBzdHItPm51bV9tYXN0ZXJfa2V5czsgaSsrKSB7CisgICAgICAgICAg
ICBzZXNzaW9uX2tleXMgPSAmc3RyLT5zZXNzaW9uX2tleXNbaV07CisgICAgICAgICAgICBzZXNz
aW9uX2tleXMtPnJ0cF94dG5faGRyX2NpcGhlciA9IE5VTEw7CisgICAgICAgIH0KIAotICAvKiBk
ZWFsbG9jYXRlIHNydHAgc3RyZWFtIGNvbnRleHQgKi8KLSAgc3J0cF9jcnlwdG9fZnJlZShzdHJl
YW0pOworICAgICAgICBzdHItPmVuY194dG5faGRyID0gTlVMTDsKKyAgICAgICAgc3RyLT5lbmNf
eHRuX2hkcl9jb3VudCA9IDA7CisgICAgfQogCi0gIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7
CisgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0KIAotCiAvKgogICogc3J0cF9zdHJl
YW1fY2xvbmUoc3RyZWFtX3RlbXBsYXRlLCBuZXcpIGFsbG9jYXRlcyBhIG5ldyBzdHJlYW0gYW5k
CiAgKiBpbml0aWFsaXplcyBpdCB1c2luZyB0aGUgY2lwaGVyIGFuZCBhdXRoIG9mIHRoZSBzdHJl
YW1fdGVtcGxhdGUKLSAqIAorICoKICAqIHRoZSBvbmx5IHVuaXF1ZSBkYXRhIGluIGEgY2xvbmVk
IHN0cmVhbSBpcyB0aGUgcmVwbGF5IGRhdGFiYXNlIGFuZAogICogdGhlIFNTUkMKICAqLwogCi1z
cnRwX2Vycl9zdGF0dXNfdAotc3J0cF9zdHJlYW1fY2xvbmUoY29uc3Qgc3J0cF9zdHJlYW1fY3R4
X3QgKnN0cmVhbV90ZW1wbGF0ZSwgCi0JCSAgdWludDMyX3Qgc3NyYywgCi0JCSAgc3J0cF9zdHJl
YW1fY3R4X3QgKipzdHJfcHRyKSB7Ci0gIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKLSAgc3J0
cF9zdHJlYW1fY3R4X3QgKnN0cjsKLSAgdW5zaWduZWQgaW50IGkgPSAwOwotICBzcnRwX3Nlc3Np
b25fa2V5c190ICpzZXNzaW9uX2tleXMgPSBOVUxMOwotICBjb25zdCBzcnRwX3Nlc3Npb25fa2V5
c190ICp0ZW1wbGF0ZV9zZXNzaW9uX2tleXMgPSBOVUxMOwotCi0gIGRlYnVnX3ByaW50KG1vZF9z
cnRwLCAiY2xvbmluZyBzdHJlYW0gKFNTUkM6IDB4JTA4eCkiLCBudG9obChzc3JjKSk7Ci0KLSAg
LyogYWxsb2NhdGUgc3J0cCBzdHJlYW0gYW5kIHNldCBzdHJfcHRyICovCi0gIHN0ciA9IChzcnRw
X3N0cmVhbV9jdHhfdCAqKSBzcnRwX2NyeXB0b19hbGxvYyhzaXplb2Yoc3J0cF9zdHJlYW1fY3R4
X3QpKTsKLSAgaWYgKHN0ciA9PSBOVUxMKQotICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYWxs
b2NfZmFpbDsKLSAgKnN0cl9wdHIgPSBzdHI7ICAKLQotICBzdHItPm51bV9tYXN0ZXJfa2V5cyA9
IHN0cmVhbV90ZW1wbGF0ZS0+bnVtX21hc3Rlcl9rZXlzOwotICBzdHItPnNlc3Npb25fa2V5cyA9
IChzcnRwX3Nlc3Npb25fa2V5c190ICopc3J0cF9jcnlwdG9fYWxsb2MoCi0gICAgICBzaXplb2Yo
c3J0cF9zZXNzaW9uX2tleXNfdCkgKiBzdHItPm51bV9tYXN0ZXJfa2V5cyk7Ci0KLSAgaWYgKHN0
ci0+c2Vzc2lvbl9rZXlzID09IE5VTEwpIHsKLSAgICBzcnRwX2NyeXB0b19mcmVlKCpzdHJfcHRy
KTsKLSAgICAqc3RyX3B0ciA9IE5VTEw7Ci0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19hbGxv
Y19mYWlsOwotICB9Ci0KLSAgZm9yIChpID0gMDsgaSA8IHN0cmVhbV90ZW1wbGF0ZS0+bnVtX21h
c3Rlcl9rZXlzOyBpKyspewotICAgIHNlc3Npb25fa2V5cyA9ICZzdHItPnNlc3Npb25fa2V5c1tp
XTsKLSAgICB0ZW1wbGF0ZV9zZXNzaW9uX2tleXMgPSAmc3RyZWFtX3RlbXBsYXRlLT5zZXNzaW9u
X2tleXNbaV07Ci0KLSAgICAvKiBzZXQgY2lwaGVyIGFuZCBhdXRoIHBvaW50ZXJzIHRvIHRob3Nl
IG9mIHRoZSB0ZW1wbGF0ZSAqLwotICAgIHNlc3Npb25fa2V5cy0+cnRwX2NpcGhlciAgPSB0ZW1w
bGF0ZV9zZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXI7Ci0gICAgc2Vzc2lvbl9rZXlzLT5ydHBfYXV0
aCAgICA9IHRlbXBsYXRlX3Nlc3Npb25fa2V5cy0+cnRwX2F1dGg7Ci0gICAgc2Vzc2lvbl9rZXlz
LT5ydHBfeHRuX2hkcl9jaXBoZXIgPSB0ZW1wbGF0ZV9zZXNzaW9uX2tleXMtPnJ0cF94dG5faGRy
X2NpcGhlcjsKLSAgICBzZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyID0gdGVtcGxhdGVfc2Vzc2lv
bl9rZXlzLT5ydGNwX2NpcGhlcjsKLSAgICBzZXNzaW9uX2tleXMtPnJ0Y3BfYXV0aCAgID0gdGVt
cGxhdGVfc2Vzc2lvbl9rZXlzLT5ydGNwX2F1dGg7Ci0gICAgc2Vzc2lvbl9rZXlzLT5ta2lfc2l6
ZSA9IHRlbXBsYXRlX3Nlc3Npb25fa2V5cy0+bWtpX3NpemU7Ci0KLSAgICBpZiAodGVtcGxhdGVf
c2Vzc2lvbl9rZXlzLT5ta2lfc2l6ZSA9PSAwKSB7Ci0gICAgICBzZXNzaW9uX2tleXMtPm1raV9p
ZCA9IE5VTEw7Ci0gICAgfSBlbHNlIHsKLSAgICAgIHNlc3Npb25fa2V5cy0+bWtpX2lkID0gc3J0
cF9jcnlwdG9fYWxsb2ModGVtcGxhdGVfc2Vzc2lvbl9rZXlzLT5ta2lfc2l6ZSk7CitzcnRwX2Vy
cl9zdGF0dXNfdCBzcnRwX3N0cmVhbV9jbG9uZShjb25zdCBzcnRwX3N0cmVhbV9jdHhfdCAqc3Ry
ZWFtX3RlbXBsYXRlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMy
X3Qgc3NyYywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfc3RyZWFt
X2N0eF90ICoqc3RyX3B0cikKK3sKKyAgICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7CisgICAg
c3J0cF9zdHJlYW1fY3R4X3QgKnN0cjsKKyAgICB1bnNpZ25lZCBpbnQgaSA9IDA7CisgICAgc3J0
cF9zZXNzaW9uX2tleXNfdCAqc2Vzc2lvbl9rZXlzID0gTlVMTDsKKyAgICBjb25zdCBzcnRwX3Nl
c3Npb25fa2V5c190ICp0ZW1wbGF0ZV9zZXNzaW9uX2tleXMgPSBOVUxMOwogCi0gICAgICBpZiAo
c2Vzc2lvbl9rZXlzLT5ta2lfaWQgPT0gTlVMTCkgewotICAgICAgICByZXR1cm4gc3J0cF9lcnJf
c3RhdHVzX2luaXRfZmFpbDsKLSAgICAgIH0KLSAgICAgIG1lbXNldChzZXNzaW9uX2tleXMtPm1r
aV9pZCwgMHgwLCBzZXNzaW9uX2tleXMtPm1raV9zaXplKTsKLSAgICAgIG1lbWNweShzZXNzaW9u
X2tleXMtPm1raV9pZCwgdGVtcGxhdGVfc2Vzc2lvbl9rZXlzLT5ta2lfaWQsIHNlc3Npb25fa2V5
cy0+bWtpX3NpemUpOwotICAgIH0KLSAgICAvKiBDb3B5IHRoZSBzYWx0IHZhbHVlcyAqLwotICAg
IG1lbWNweShzZXNzaW9uX2tleXMtPnNhbHQsIHRlbXBsYXRlX3Nlc3Npb25fa2V5cy0+c2FsdCwg
U1JUUF9BRUFEX1NBTFRfTEVOKTsKLSAgICBtZW1jcHkoc2Vzc2lvbl9rZXlzLT5jX3NhbHQsIHRl
bXBsYXRlX3Nlc3Npb25fa2V5cy0+Y19zYWx0LCBTUlRQX0FFQURfU0FMVF9MRU4pOwotCi0gICAg
Lyogc2V0IGtleSBsaW1pdCB0byBwb2ludCB0byB0aGF0IG9mIHRoZSB0ZW1wbGF0ZSAqLwotICAg
IHN0YXR1cyA9IHNydHBfa2V5X2xpbWl0X2Nsb25lKHRlbXBsYXRlX3Nlc3Npb25fa2V5cy0+bGlt
aXQsICZzZXNzaW9uX2tleXMtPmxpbWl0KTsKLSAgICBpZiAoc3RhdHVzKSB7IAotICAgICAgc3J0
cF9jcnlwdG9fZnJlZSgqc3RyX3B0cik7Ci0gICAgICAqc3RyX3B0ciA9IE5VTEw7Ci0gICAgICBy
ZXR1cm4gc3RhdHVzOwotICAgIH0KLSAgfQotCi0KLSAgLyogaW5pdGlhbGl6ZSByZXBsYXkgZGF0
YWJhc2VzICovCi0gIHN0YXR1cyA9IHNydHBfcmRieF9pbml0KCZzdHItPnJ0cF9yZGJ4LAotCQkg
ICAgIHNydHBfcmRieF9nZXRfd2luZG93X3NpemUoJnN0cmVhbV90ZW1wbGF0ZS0+cnRwX3JkYngp
KTsKLSAgaWYgKHN0YXR1cykgewotICAgIHNydHBfY3J5cHRvX2ZyZWUoKnN0cl9wdHIpOwotICAg
ICpzdHJfcHRyID0gTlVMTDsKLSAgICByZXR1cm4gc3RhdHVzOwotICB9Ci0gIHNydHBfcmRiX2lu
aXQoJnN0ci0+cnRjcF9yZGIpOwotICBzdHItPmFsbG93X3JlcGVhdF90eCA9IHN0cmVhbV90ZW1w
bGF0ZS0+YWxsb3dfcmVwZWF0X3R4OworICAgIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAiY2xvbmlu
ZyBzdHJlYW0gKFNTUkM6IDB4JTA4eCkiLCBudG9obChzc3JjKSk7CiAKLSAgLyogc2V0IHNzcmMg
dG8gdGhhdCBwcm92aWRlZCAqLwotICBzdHItPnNzcmMgPSBzc3JjOworICAgIC8qIGFsbG9jYXRl
IHNydHAgc3RyZWFtIGFuZCBzZXQgc3RyX3B0ciAqLworICAgIHN0ciA9IChzcnRwX3N0cmVhbV9j
dHhfdCAqKXNydHBfY3J5cHRvX2FsbG9jKHNpemVvZihzcnRwX3N0cmVhbV9jdHhfdCkpOworICAg
IGlmIChzdHIgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19hbGxvY19m
YWlsOworICAgICpzdHJfcHRyID0gc3RyOwogCi0gIC8qIHJlc2V0IHBlbmRpbmcgUk9DICovCi0g
IHN0ci0+cGVuZGluZ19yb2MgPSAwOworICAgIHN0ci0+bnVtX21hc3Rlcl9rZXlzID0gc3RyZWFt
X3RlbXBsYXRlLT5udW1fbWFzdGVyX2tleXM7CisgICAgc3RyLT5zZXNzaW9uX2tleXMgPSAoc3J0
cF9zZXNzaW9uX2tleXNfdCAqKXNydHBfY3J5cHRvX2FsbG9jKAorICAgICAgICBzaXplb2Yoc3J0
cF9zZXNzaW9uX2tleXNfdCkgKiBzdHItPm51bV9tYXN0ZXJfa2V5cyk7CiAKLSAgLyogc2V0IGRp
cmVjdGlvbiBhbmQgc2VjdXJpdHkgc2VydmljZXMgKi8KLSAgc3RyLT5kaXJlY3Rpb24gICAgID0g
c3RyZWFtX3RlbXBsYXRlLT5kaXJlY3Rpb247Ci0gIHN0ci0+cnRwX3NlcnZpY2VzICA9IHN0cmVh
bV90ZW1wbGF0ZS0+cnRwX3NlcnZpY2VzOwotICBzdHItPnJ0Y3Bfc2VydmljZXMgPSBzdHJlYW1f
dGVtcGxhdGUtPnJ0Y3Bfc2VydmljZXM7CisgICAgaWYgKHN0ci0+c2Vzc2lvbl9rZXlzID09IE5V
TEwpIHsKKyAgICAgICAgc3J0cF9zdHJlYW1fZGVhbGxvYygqc3RyX3B0ciwgc3RyZWFtX3RlbXBs
YXRlKTsKKyAgICAgICAgKnN0cl9wdHIgPSBOVUxMOworICAgICAgICByZXR1cm4gc3J0cF9lcnJf
c3RhdHVzX2FsbG9jX2ZhaWw7CisgICAgfQogCi0gIC8qIHNldCBwb2ludGVyIHRvIEVLVCBkYXRh
IGFzc29jaWF0ZWQgd2l0aCBzdHJlYW0gKi8KLSAgc3RyLT5la3QgPSBzdHJlYW1fdGVtcGxhdGUt
PmVrdDsKKyAgICBmb3IgKGkgPSAwOyBpIDwgc3RyZWFtX3RlbXBsYXRlLT5udW1fbWFzdGVyX2tl
eXM7IGkrKykgeworICAgICAgICBzZXNzaW9uX2tleXMgPSAmc3RyLT5zZXNzaW9uX2tleXNbaV07
CisgICAgICAgIHRlbXBsYXRlX3Nlc3Npb25fa2V5cyA9ICZzdHJlYW1fdGVtcGxhdGUtPnNlc3Np
b25fa2V5c1tpXTsKKworICAgICAgICAvKiBzZXQgY2lwaGVyIGFuZCBhdXRoIHBvaW50ZXJzIHRv
IHRob3NlIG9mIHRoZSB0ZW1wbGF0ZSAqLworICAgICAgICBzZXNzaW9uX2tleXMtPnJ0cF9jaXBo
ZXIgPSB0ZW1wbGF0ZV9zZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXI7CisgICAgICAgIHNlc3Npb25f
a2V5cy0+cnRwX2F1dGggPSB0ZW1wbGF0ZV9zZXNzaW9uX2tleXMtPnJ0cF9hdXRoOworICAgICAg
ICBzZXNzaW9uX2tleXMtPnJ0cF94dG5faGRyX2NpcGhlciA9CisgICAgICAgICAgICB0ZW1wbGF0
ZV9zZXNzaW9uX2tleXMtPnJ0cF94dG5faGRyX2NpcGhlcjsKKyAgICAgICAgc2Vzc2lvbl9rZXlz
LT5ydGNwX2NpcGhlciA9IHRlbXBsYXRlX3Nlc3Npb25fa2V5cy0+cnRjcF9jaXBoZXI7CisgICAg
ICAgIHNlc3Npb25fa2V5cy0+cnRjcF9hdXRoID0gdGVtcGxhdGVfc2Vzc2lvbl9rZXlzLT5ydGNw
X2F1dGg7CisgICAgICAgIHNlc3Npb25fa2V5cy0+bWtpX3NpemUgPSB0ZW1wbGF0ZV9zZXNzaW9u
X2tleXMtPm1raV9zaXplOworCisgICAgICAgIGlmICh0ZW1wbGF0ZV9zZXNzaW9uX2tleXMtPm1r
aV9zaXplID09IDApIHsKKyAgICAgICAgICAgIHNlc3Npb25fa2V5cy0+bWtpX2lkID0gTlVMTDsK
KyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIHNlc3Npb25fa2V5cy0+bWtpX2lkID0KKyAg
ICAgICAgICAgICAgICBzcnRwX2NyeXB0b19hbGxvYyh0ZW1wbGF0ZV9zZXNzaW9uX2tleXMtPm1r
aV9zaXplKTsKIAotICAvKiBjb3B5IGluZm9ybWF0aW9uIGFib3V0IGV4dGVuc2lvbnMgaGVhZGVy
IGVuY3J5cHRpb24gKi8KLSAgc3RyLT5lbmNfeHRuX2hkciA9IHN0cmVhbV90ZW1wbGF0ZS0+ZW5j
X3h0bl9oZHI7Ci0gIHN0ci0+ZW5jX3h0bl9oZHJfY291bnQgPSBzdHJlYW1fdGVtcGxhdGUtPmVu
Y194dG5faGRyX2NvdW50OworICAgICAgICAgICAgaWYgKHNlc3Npb25fa2V5cy0+bWtpX2lkID09
IE5VTEwpIHsKKyAgICAgICAgICAgICAgICBzcnRwX3N0cmVhbV9kZWFsbG9jKCpzdHJfcHRyLCBz
dHJlYW1fdGVtcGxhdGUpOworICAgICAgICAgICAgICAgICpzdHJfcHRyID0gTlVMTDsKKyAgICAg
ICAgICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2luaXRfZmFpbDsKKyAgICAgICAgICAg
IH0KKyAgICAgICAgICAgIG1lbWNweShzZXNzaW9uX2tleXMtPm1raV9pZCwgdGVtcGxhdGVfc2Vz
c2lvbl9rZXlzLT5ta2lfaWQsCisgICAgICAgICAgICAgICAgICAgc2Vzc2lvbl9rZXlzLT5ta2lf
c2l6ZSk7CisgICAgICAgIH0KKyAgICAgICAgLyogQ29weSB0aGUgc2FsdCB2YWx1ZXMgKi8KKyAg
ICAgICAgbWVtY3B5KHNlc3Npb25fa2V5cy0+c2FsdCwgdGVtcGxhdGVfc2Vzc2lvbl9rZXlzLT5z
YWx0LAorICAgICAgICAgICAgICAgU1JUUF9BRUFEX1NBTFRfTEVOKTsKKyAgICAgICAgbWVtY3B5
KHNlc3Npb25fa2V5cy0+Y19zYWx0LCB0ZW1wbGF0ZV9zZXNzaW9uX2tleXMtPmNfc2FsdCwKKyAg
ICAgICAgICAgICAgIFNSVFBfQUVBRF9TQUxUX0xFTik7CisKKyAgICAgICAgLyogc2V0IGtleSBs
aW1pdCB0byBwb2ludCB0byB0aGF0IG9mIHRoZSB0ZW1wbGF0ZSAqLworICAgICAgICBzdGF0dXMg
PSBzcnRwX2tleV9saW1pdF9jbG9uZSh0ZW1wbGF0ZV9zZXNzaW9uX2tleXMtPmxpbWl0LAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmc2Vzc2lvbl9rZXlzLT5saW1pdCk7
CisgICAgICAgIGlmIChzdGF0dXMpIHsKKyAgICAgICAgICAgIHNydHBfc3RyZWFtX2RlYWxsb2Mo
KnN0cl9wdHIsIHN0cmVhbV90ZW1wbGF0ZSk7CisgICAgICAgICAgICAqc3RyX3B0ciA9IE5VTEw7
CisgICAgICAgICAgICByZXR1cm4gc3RhdHVzOworICAgICAgICB9CisgICAgfQogCi0gIC8qIGRl
ZmVuc2l2ZSBjb2RpbmcgKi8KLSAgc3RyLT5uZXh0ID0gTlVMTDsKLSAgcmV0dXJuIHNydHBfZXJy
X3N0YXR1c19vazsKLX0KKyAgICAvKiBpbml0aWFsaXplIHJlcGxheSBkYXRhYmFzZXMgKi8KKyAg
ICBzdGF0dXMgPSBzcnRwX3JkYnhfaW5pdCgKKyAgICAgICAgJnN0ci0+cnRwX3JkYngsIHNydHBf
cmRieF9nZXRfd2luZG93X3NpemUoJnN0cmVhbV90ZW1wbGF0ZS0+cnRwX3JkYngpKTsKKyAgICBp
ZiAoc3RhdHVzKSB7CisgICAgICAgIHNydHBfc3RyZWFtX2RlYWxsb2MoKnN0cl9wdHIsIHN0cmVh
bV90ZW1wbGF0ZSk7CisgICAgICAgICpzdHJfcHRyID0gTlVMTDsKKyAgICAgICAgcmV0dXJuIHN0
YXR1czsKKyAgICB9CisgICAgc3J0cF9yZGJfaW5pdCgmc3RyLT5ydGNwX3JkYik7CisgICAgc3Ry
LT5hbGxvd19yZXBlYXRfdHggPSBzdHJlYW1fdGVtcGxhdGUtPmFsbG93X3JlcGVhdF90eDsKKwor
ICAgIC8qIHNldCBzc3JjIHRvIHRoYXQgcHJvdmlkZWQgKi8KKyAgICBzdHItPnNzcmMgPSBzc3Jj
OworCisgICAgLyogcmVzZXQgcGVuZGluZyBST0MgKi8KKyAgICBzdHItPnBlbmRpbmdfcm9jID0g
MDsKKworICAgIC8qIHNldCBkaXJlY3Rpb24gYW5kIHNlY3VyaXR5IHNlcnZpY2VzICovCisgICAg
c3RyLT5kaXJlY3Rpb24gPSBzdHJlYW1fdGVtcGxhdGUtPmRpcmVjdGlvbjsKKyAgICBzdHItPnJ0
cF9zZXJ2aWNlcyA9IHN0cmVhbV90ZW1wbGF0ZS0+cnRwX3NlcnZpY2VzOworICAgIHN0ci0+cnRj
cF9zZXJ2aWNlcyA9IHN0cmVhbV90ZW1wbGF0ZS0+cnRjcF9zZXJ2aWNlczsKIAorICAgIC8qIHNl
dCBwb2ludGVyIHRvIEVLVCBkYXRhIGFzc29jaWF0ZWQgd2l0aCBzdHJlYW0gKi8KKyAgICBzdHIt
PmVrdCA9IHN0cmVhbV90ZW1wbGF0ZS0+ZWt0OworCisgICAgLyogY29weSBpbmZvcm1hdGlvbiBh
Ym91dCBleHRlbnNpb25zIGhlYWRlciBlbmNyeXB0aW9uICovCisgICAgc3RyLT5lbmNfeHRuX2hk
ciA9IHN0cmVhbV90ZW1wbGF0ZS0+ZW5jX3h0bl9oZHI7CisgICAgc3RyLT5lbmNfeHRuX2hkcl9j
b3VudCA9IHN0cmVhbV90ZW1wbGF0ZS0+ZW5jX3h0bl9oZHJfY291bnQ7CisKKyAgICAvKiBkZWZl
bnNpdmUgY29kaW5nICovCisgICAgc3RyLT5uZXh0ID0gTlVMTDsKKyAgICByZXR1cm4gc3J0cF9l
cnJfc3RhdHVzX29rOworfQogCiAvKgogICoga2V5IGRlcml2YXRpb24gZnVuY3Rpb25zLCBpbnRl
cm5hbCB0byBsaWJTUlRQCkBAIC01OTMsNyArNTU4LDcgQEAgc3J0cF9zdHJlYW1fY2xvbmUoY29u
c3Qgc3J0cF9zdHJlYW1fY3R4X3QgKnN0cmVhbV90ZW1wbGF0ZSwKICAqCiAgKiBzcnRwX2tkZl9p
bml0KCZrZGYsIGNpcGhlcl9pZCwgaywga2V5bGVuKSBpbml0aWFsaXplcyBrZGYgdG8gdXNlIGNp
cGhlcgogICogZGVzY3JpYmVkIGJ5IGNpcGhlcl9pZCwgd2l0aCB0aGUgbWFzdGVyIGtleSBrIHdp
dGggbGVuZ3RoIGluIG9jdGV0cyBrZXlsZW4uCi0gKiAKKyAqCiAgKiBzcnRwX2tkZl9nZW5lcmF0
ZSgma2RmLCBsLCBrbCwga2V5bGVuKSBkZXJpdmVzIHRoZSBrZXkKICAqIGNvcnJlc3BvbmRpbmcg
dG8gbGFiZWwgbCBhbmQgcHV0cyBpdCBpbnRvIGtsOyB0aGUgbGVuZ3RoCiAgKiBvZiB0aGUga2V5
IGluIG9jdGV0cyBpcyBwcm92aWRlZCBhcyBrZXlsZW4uICB0aGlzIGZ1bmN0aW9uCkBAIC02MDMs
MzkgKzU2OCw0MiBAQCBzcnRwX3N0cmVhbV9jbG9uZShjb25zdCBzcnRwX3N0cmVhbV9jdHhfdCAq
c3RyZWFtX3RlbXBsYXRlLAogICovCiAKIHR5cGVkZWYgZW51bSB7Ci0gIGxhYmVsX3J0cF9lbmNy
eXB0aW9uICA9IDB4MDAsCi0gIGxhYmVsX3J0cF9tc2dfYXV0aCAgICA9IDB4MDEsCi0gIGxhYmVs
X3J0cF9zYWx0ICAgICAgICA9IDB4MDIsCi0gIGxhYmVsX3J0Y3BfZW5jcnlwdGlvbiA9IDB4MDMs
Ci0gIGxhYmVsX3J0Y3BfbXNnX2F1dGggICA9IDB4MDQsCi0gIGxhYmVsX3J0Y3Bfc2FsdCAgICAg
ICA9IDB4MDUsCi0gIGxhYmVsX3J0cF9oZWFkZXJfZW5jcnlwdGlvbiA9IDB4MDYsCi0gIGxhYmVs
X3J0cF9oZWFkZXJfc2FsdCA9IDB4MDcKKyAgICBsYWJlbF9ydHBfZW5jcnlwdGlvbiA9IDB4MDAs
CisgICAgbGFiZWxfcnRwX21zZ19hdXRoID0gMHgwMSwKKyAgICBsYWJlbF9ydHBfc2FsdCA9IDB4
MDIsCisgICAgbGFiZWxfcnRjcF9lbmNyeXB0aW9uID0gMHgwMywKKyAgICBsYWJlbF9ydGNwX21z
Z19hdXRoID0gMHgwNCwKKyAgICBsYWJlbF9ydGNwX3NhbHQgPSAweDA1LAorICAgIGxhYmVsX3J0
cF9oZWFkZXJfZW5jcnlwdGlvbiA9IDB4MDYsCisgICAgbGFiZWxfcnRwX2hlYWRlcl9zYWx0ID0g
MHgwNwogfSBzcnRwX3ByZl9sYWJlbDsKIAogI2RlZmluZSBNQVhfU1JUUF9LRVlfTEVOIDI1Ngog
CiAjaWYgZGVmaW5lZChPUEVOU1NMKSAmJiBkZWZpbmVkKE9QRU5TU0xfS0RGKQogI2RlZmluZSBN
QVhfU1JUUF9BRVNLRVlfTEVOIDMyCi0jZGVmaW5lIE1BWF9TUlRQX1NBTFRfTEVOIDE0IAorI2Rl
ZmluZSBNQVhfU1JUUF9TQUxUX0xFTiAxNAogCiAvKgogICogc3J0cF9rZGZfdCByZXByZXNlbnRz
IGEga2V5IGRlcml2YXRpb24gZnVuY3Rpb24uICBUaGUgU1JUUAogICogZGVmYXVsdCBLREYgaXMg
dGhlIG9ubHkgb25lIGltcGxlbWVudGVkIGF0IHByZXNlbnQuCiAgKi8KLXR5cGVkZWYgc3RydWN0
IHsgCit0eXBlZGVmIHN0cnVjdCB7CiAgICAgdWludDhfdCBtYXN0ZXJfa2V5W01BWF9TUlRQX0FF
U0tFWV9MRU5dOwogICAgIHVpbnQ4X3QgbWFzdGVyX3NhbHRbTUFYX1NSVFBfU0FMVF9MRU5dOwog
ICAgIGNvbnN0IEVWUF9DSVBIRVIgKmV2cDsKIH0gc3J0cF9rZGZfdDsKIAotCi1zdGF0aWMgc3J0
cF9lcnJfc3RhdHVzX3Qgc3J0cF9rZGZfaW5pdChzcnRwX2tkZl90ICprZGYsIGNvbnN0IHVpbnQ4
X3QgKmtleSwgaW50IGtleV9sZW4sIGludCBzYWx0X2xlbikgCitzdGF0aWMgc3J0cF9lcnJfc3Rh
dHVzX3Qgc3J0cF9rZGZfaW5pdChzcnRwX2tkZl90ICprZGYsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBjb25zdCB1aW50OF90ICprZXksCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBpbnQga2V5X2xlbiwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGludCBzYWx0X2xlbikKIHsKICAgICBtZW1zZXQoa2RmLCAweDAs
IHNpemVvZihzcnRwX2tkZl90KSk7CiAKICAgICAvKiBUaGUgTlVMTCBjaXBoZXIgaGFzIHplcm8g
a2V5IGxlbmd0aCAqLwotICAgIGlmIChrZXlfbGVuID09IDApIHJldHVybiBzcnRwX2Vycl9zdGF0
dXNfb2s7CisgICAgaWYgKGtleV9sZW4gPT0gMCkKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0
YXR1c19vazsKIAogICAgIGlmICgoa2V5X2xlbiA+IE1BWF9TUlRQX0FFU0tFWV9MRU4pIHx8IChz
YWx0X2xlbiA+IE1BWF9TUlRQX1NBTFRfTEVOKSkgewogICAgICAgICByZXR1cm4gc3J0cF9lcnJf
c3RhdHVzX2JhZF9wYXJhbTsKQEAgLTY1NCwxNyArNjIyLDIxIEBAIHN0YXRpYyBzcnRwX2Vycl9z
dGF0dXNfdCBzcnRwX2tkZl9pbml0KHNydHBfa2RmX3QgKmtkZiwgY29uc3QgdWludDhfdCAqa2V5
LCBpbnQKICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW07CiAgICAgICAg
IGJyZWFrOwogICAgIH0KLSAgICBtZW1jcHkoa2RmLT5tYXN0ZXJfa2V5LCBrZXksIGtleV9sZW4p
OyAKLSAgICBtZW1jcHkoa2RmLT5tYXN0ZXJfc2FsdCwga2V5K2tleV9sZW4sIHNhbHRfbGVuKTsg
CisgICAgbWVtY3B5KGtkZi0+bWFzdGVyX2tleSwga2V5LCBrZXlfbGVuKTsKKyAgICBtZW1jcHko
a2RmLT5tYXN0ZXJfc2FsdCwga2V5ICsga2V5X2xlbiwgc2FsdF9sZW4pOwogICAgIHJldHVybiBz
cnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAKLXN0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2tk
Zl9nZW5lcmF0ZShzcnRwX2tkZl90ICprZGYsIHNydHBfcHJmX2xhYmVsIGxhYmVsLCB1aW50OF90
ICprZXksIHVuc2lnbmVkIGludCBsZW5ndGgpIAorc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNy
dHBfa2RmX2dlbmVyYXRlKHNydHBfa2RmX3QgKmtkZiwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBzcnRwX3ByZl9sYWJlbCBsYWJlbCwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50OF90ICprZXksCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IGxlbmd0aCkKIHsKICAg
ICBpbnQgcmV0OwogCiAgICAgLyogVGhlIE5VTEwgY2lwaGVyIHdpbGwgbm90IGhhdmUgYW4gRVZQ
ICovCi0gICAgaWYgKCFrZGYtPmV2cCkgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKKyAgICBp
ZiAoIWtkZi0+ZXZwKQorICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogICAgIG9j
dGV0X3N0cmluZ19zZXRfdG9femVybyhrZXksIGxlbmd0aCk7CiAKICAgICAvKgpAQCAtNjcyLDcg
KzY0NCw4IEBAIHN0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2tkZl9nZW5lcmF0ZShzcnRw
X2tkZl90ICprZGYsIHNydHBfcHJmX2xhYmVsIGxhYmVsCiAgICAgICogVGhpcyBpcyB1c2VmdWwg
aWYgT3BlblNTTCBpcyBpbiBGSVBTIG1vZGUgYW5kIEZJUAogICAgICAqIGNvbXBsaWFuY2UgaXMg
cmVxdWlyZWQgZm9yIFNSVFAuCiAgICAgICovCi0gICAgcmV0ID0ga2RmX3NydHAoa2RmLT5ldnAs
IChjaGFyICopJmtkZi0+bWFzdGVyX2tleSwgKGNoYXIgKikma2RmLT5tYXN0ZXJfc2FsdCwgTlVM
TCwgTlVMTCwgbGFiZWwsIChjaGFyICopa2V5KTsKKyAgICByZXQgPSBrZGZfc3J0cChrZGYtPmV2
cCwgKGNoYXIgKikma2RmLT5tYXN0ZXJfa2V5LAorICAgICAgICAgICAgICAgICAgIChjaGFyICop
JmtkZi0+bWFzdGVyX3NhbHQsIE5VTEwsIE5VTEwsIGxhYmVsLCAoY2hhciAqKWtleSk7CiAgICAg
aWYgKHJldCA9PSAtMSkgewogICAgICAgICByZXR1cm4gKHNydHBfZXJyX3N0YXR1c19hbGdvX2Zh
aWwpOwogICAgIH0KQEAgLTY4MCwyNSArNjUzLDI4IEBAIHN0YXRpYyBzcnRwX2Vycl9zdGF0dXNf
dCBzcnRwX2tkZl9nZW5lcmF0ZShzcnRwX2tkZl90ICprZGYsIHNydHBfcHJmX2xhYmVsIGxhYmVs
CiAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0KIAotc3RhdGljIHNydHBfZXJyX3N0
YXR1c190IHNydHBfa2RmX2NsZWFyKHNydHBfa2RmX3QgKmtkZikgeworc3RhdGljIHNydHBfZXJy
X3N0YXR1c190IHNydHBfa2RmX2NsZWFyKHNydHBfa2RmX3QgKmtkZikKK3sKICAgICBvY3RldF9z
dHJpbmdfc2V0X3RvX3plcm8oa2RmLT5tYXN0ZXJfa2V5LCBNQVhfU1JUUF9BRVNLRVlfTEVOKTsK
ICAgICBvY3RldF9zdHJpbmdfc2V0X3RvX3plcm8oa2RmLT5tYXN0ZXJfc2FsdCwgTUFYX1NSVFBf
U0FMVF9MRU4pOwogICAgIGtkZi0+ZXZwID0gTlVMTDsKIAotICAgIHJldHVybiBzcnRwX2Vycl9z
dGF0dXNfb2s7ICAKKyAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQogCi0jZWxzZSAv
KiBpZiBPUEVOU1NMX0tERiAqLworI2Vsc2UgIC8qIGlmIE9QRU5TU0xfS0RGICovCiAKIC8qCiAg
KiBzcnRwX2tkZl90IHJlcHJlc2VudHMgYSBrZXkgZGVyaXZhdGlvbiBmdW5jdGlvbi4gIFRoZSBT
UlRQCiAgKiBkZWZhdWx0IEtERiBpcyB0aGUgb25seSBvbmUgaW1wbGVtZW50ZWQgYXQgcHJlc2Vu
dC4KICAqLwotdHlwZWRlZiBzdHJ1Y3QgeyAKLSAgICBzcnRwX2NpcGhlcl90ICpjaXBoZXI7ICAg
IC8qIGNpcGhlciB1c2VkIGZvciBrZXkgZGVyaXZhdGlvbiAgKi8gIAordHlwZWRlZiBzdHJ1Y3Qg
eworICAgIHNydHBfY2lwaGVyX3QgKmNpcGhlcjsgLyogY2lwaGVyIHVzZWQgZm9yIGtleSBkZXJp
dmF0aW9uICAqLwogfSBzcnRwX2tkZl90OwogCi1zdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0
cF9rZGZfaW5pdChzcnRwX2tkZl90ICprZGYsIGNvbnN0IHVpbnQ4X3QgKmtleSwgaW50IGtleV9s
ZW4pCitzdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9rZGZfaW5pdChzcnRwX2tkZl90ICpr
ZGYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB1aW50OF90
ICprZXksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQga2V5X2xl
bikKIHsKICAgICBzcnRwX2NpcGhlcl90eXBlX2lkX3QgY2lwaGVyX2lkOwogICAgIHN3aXRjaCAo
a2V5X2xlbikgewpAQCAtNzE4LDcgKzY5NCw4IEBAIHN0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBz
cnRwX2tkZl9pbml0KHNydHBfa2RmX3QgKmtkZiwgY29uc3QgdWludDhfdCAqa2V5LCBpbnQKIAog
ICAgIHNydHBfZXJyX3N0YXR1c190IHN0YXQ7CiAgICAgc3RhdCA9IHNydHBfY3J5cHRvX2tlcm5l
bF9hbGxvY19jaXBoZXIoY2lwaGVyX2lkLCAma2RmLT5jaXBoZXIsIGtleV9sZW4sIDApOwotICAg
IGlmIChzdGF0KSByZXR1cm4gc3RhdDsKKyAgICBpZiAoc3RhdCkKKyAgICAgICAgcmV0dXJuIHN0
YXQ7CiAKICAgICBzdGF0ID0gc3J0cF9jaXBoZXJfaW5pdChrZGYtPmNpcGhlciwga2V5KTsKICAg
ICBpZiAoc3RhdCkgewpAQCAtNzI4LDEwNSArNzA1LDExMyBAQCBzdGF0aWMgc3J0cF9lcnJfc3Rh
dHVzX3Qgc3J0cF9rZGZfaW5pdChzcnRwX2tkZl90ICprZGYsIGNvbnN0IHVpbnQ4X3QgKmtleSwg
aW50CiAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0KIAotc3RhdGljIHNydHBfZXJy
X3N0YXR1c190IHNydHBfa2RmX2dlbmVyYXRlKHNydHBfa2RmX3QgKmtkZiwgc3J0cF9wcmZfbGFi
ZWwgbGFiZWwsIHVpbnQ4X3QgKmtleSwgdW5zaWduZWQgaW50IGxlbmd0aCkgCitzdGF0aWMgc3J0
cF9lcnJfc3RhdHVzX3Qgc3J0cF9rZGZfZ2VuZXJhdGUoc3J0cF9rZGZfdCAqa2RmLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfcHJmX2xhYmVsIGxhYmVs
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQ4X3QgKmtl
eSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBp
bnQgbGVuZ3RoKQogewogICAgIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKICAgICB2MTI4X3Qg
bm9uY2U7Ci0gIAorCiAgICAgLyogc2V0IGVpZ3RoIG9jdGV0IG9mIG5vbmNlIHRvIDxsYWJlbD4s
IHNldCB0aGUgcmVzdCBvZiBpdCB0byB6ZXJvICovCiAgICAgdjEyOF9zZXRfdG9femVybygmbm9u
Y2UpOwogICAgIG5vbmNlLnY4WzddID0gbGFiZWw7Ci0gCi0gICAgc3RhdHVzID0gc3J0cF9jaXBo
ZXJfc2V0X2l2KGtkZi0+Y2lwaGVyLCAodWludDhfdCopJm5vbmNlLCBzcnRwX2RpcmVjdGlvbl9l
bmNyeXB0KTsKLSAgICBpZiAoc3RhdHVzKSByZXR1cm4gc3RhdHVzOwotICAKKworICAgIHN0YXR1
cyA9IHNydHBfY2lwaGVyX3NldF9pdihrZGYtPmNpcGhlciwgKHVpbnQ4X3QgKikmbm9uY2UsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfZGlyZWN0aW9uX2VuY3J5cHQpOwor
ICAgIGlmIChzdGF0dXMpCisgICAgICAgIHJldHVybiBzdGF0dXM7CisKICAgICAvKiBnZW5lcmF0
ZSBrZXlzdHJlYW0gb3V0cHV0ICovCiAgICAgb2N0ZXRfc3RyaW5nX3NldF90b196ZXJvKGtleSwg
bGVuZ3RoKTsKICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9lbmNyeXB0KGtkZi0+Y2lwaGVyLCBr
ZXksICZsZW5ndGgpOwotICAgIGlmIChzdGF0dXMpIHJldHVybiBzdGF0dXM7CisgICAgaWYgKHN0
YXR1cykKKyAgICAgICAgcmV0dXJuIHN0YXR1czsKIAogICAgIHJldHVybiBzcnRwX2Vycl9zdGF0
dXNfb2s7CiB9CiAKLXN0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2tkZl9jbGVhcihzcnRw
X2tkZl90ICprZGYpIHsKK3N0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2tkZl9jbGVhcihz
cnRwX2tkZl90ICprZGYpCit7CiAgICAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVzOwogICAgIHN0
YXR1cyA9IHNydHBfY2lwaGVyX2RlYWxsb2Moa2RmLT5jaXBoZXIpOwotICAgIGlmIChzdGF0dXMp
IHJldHVybiBzdGF0dXM7CisgICAgaWYgKHN0YXR1cykKKyAgICAgICAgcmV0dXJuIHN0YXR1czsK
ICAgICBrZGYtPmNpcGhlciA9IE5VTEw7Ci0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsg
IAorICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAjZW5kaWYgLyogZWxzZSBPUEVO
U1NMX0tERiAqLwogCiAvKgotICogIGVuZCBvZiBrZXkgZGVyaXZhdGlvbiBmdW5jdGlvbnMgCisg
KiAgZW5kIG9mIGtleSBkZXJpdmF0aW9uIGZ1bmN0aW9ucwogICovCiAKLQotCiAvKiBHZXQgdGhl
IGJhc2Uga2V5IGxlbmd0aCBjb3JyZXNwb25kaW5nIHRvIGEgZ2l2ZW4gY29tYmluZWQga2V5K3Nh
bHQKICAqIGxlbmd0aCBmb3IgdGhlIGdpdmVuIGNpcGhlci4KICAqIFRPRE86IGtleSBhbmQgc2Fs
dCBsZW5ndGhzIHNob3VsZCBiZSBzZXBhcmF0ZSBmaWVsZHMgaW4gdGhlIHBvbGljeS4gICovCi1z
dGF0aWMgaW5saW5lIGludCBiYXNlX2tleV9sZW5ndGgoY29uc3Qgc3J0cF9jaXBoZXJfdHlwZV90
ICpjaXBoZXIsIGludCBrZXlfbGVuZ3RoKQorc3RhdGljIGlubGluZSBpbnQgYmFzZV9rZXlfbGVu
Z3RoKGNvbnN0IHNydHBfY2lwaGVyX3R5cGVfdCAqY2lwaGVyLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGludCBrZXlfbGVuZ3RoKQogewotICBzd2l0Y2ggKGNpcGhlci0+aWQp
IHsKLSAgY2FzZSBTUlRQX0FFU19JQ01fMTI4OgotICBjYXNlIFNSVFBfQUVTX0lDTV8xOTI6Ci0g
IGNhc2UgU1JUUF9BRVNfSUNNXzI1NjoKLSAgICAvKiBUaGUgbGVnYWN5IG1vZGVzIGFyZSBkZXJp
dmVkIGZyb20KLSAgICAgKiB0aGUgY29uZmlndXJlZCBrZXkgbGVuZ3RoIG9uIHRoZSBwb2xpY3kg
Ki8KLSAgICByZXR1cm4ga2V5X2xlbmd0aCAtIFNSVFBfU0FMVF9MRU47Ci0gICAgYnJlYWs7Ci0g
IGNhc2UgU1JUUF9BRVNfR0NNXzEyODoKLSAgICByZXR1cm4ga2V5X2xlbmd0aCAtIFNSVFBfQUVB
RF9TQUxUX0xFTjsKLSAgICBicmVhazsKLSAgY2FzZSBTUlRQX0FFU19HQ01fMjU2OgotICAgICAg
cmV0dXJuIGtleV9sZW5ndGggLSBTUlRQX0FFQURfU0FMVF9MRU47Ci0gICAgYnJlYWs7Ci0gIGRl
ZmF1bHQ6Ci0gICAgcmV0dXJuIGtleV9sZW5ndGg7Ci0gICAgYnJlYWs7Ci0gIH0KKyAgICBzd2l0
Y2ggKGNpcGhlci0+aWQpIHsKKyAgICBjYXNlIFNSVFBfQUVTX0lDTV8xMjg6CisgICAgY2FzZSBT
UlRQX0FFU19JQ01fMTkyOgorICAgIGNhc2UgU1JUUF9BRVNfSUNNXzI1NjoKKyAgICAgICAgLyog
VGhlIGxlZ2FjeSBtb2RlcyBhcmUgZGVyaXZlZCBmcm9tCisgICAgICAgICAqIHRoZSBjb25maWd1
cmVkIGtleSBsZW5ndGggb24gdGhlIHBvbGljeSAqLworICAgICAgICByZXR1cm4ga2V5X2xlbmd0
aCAtIFNSVFBfU0FMVF9MRU47CisgICAgICAgIGJyZWFrOworICAgIGNhc2UgU1JUUF9BRVNfR0NN
XzEyODoKKyAgICAgICAgcmV0dXJuIGtleV9sZW5ndGggLSBTUlRQX0FFQURfU0FMVF9MRU47Cisg
ICAgICAgIGJyZWFrOworICAgIGNhc2UgU1JUUF9BRVNfR0NNXzI1NjoKKyAgICAgICAgcmV0dXJu
IGtleV9sZW5ndGggLSBTUlRQX0FFQURfU0FMVF9MRU47CisgICAgICAgIGJyZWFrOworICAgIGRl
ZmF1bHQ6CisgICAgICAgIHJldHVybiBrZXlfbGVuZ3RoOworICAgICAgICBicmVhazsKKyAgICB9
CiB9CiAKLXVuc2lnbmVkIGludAotc3J0cF92YWxpZGF0ZV9wb2xpY3lfbWFzdGVyX2tleXMoY29u
c3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5KQordW5zaWduZWQgaW50IHNydHBfdmFsaWRhdGVfcG9s
aWN5X21hc3Rlcl9rZXlzKGNvbnN0IHNydHBfcG9saWN5X3QgKnBvbGljeSkKIHsKLSAgICBpbnQg
aSA9IDA7CisgICAgdW5zaWduZWQgbG9uZyBpID0gMDsKIAogICAgIGlmIChwb2xpY3ktPmtleSA9
PSBOVUxMKSB7CiAgICAgICAgIGlmIChwb2xpY3ktPm51bV9tYXN0ZXJfa2V5cyA8PSAwKQogICAg
ICAgICAgICAgcmV0dXJuIDA7CiAKICAgICAgICAgaWYgKHBvbGljeS0+bnVtX21hc3Rlcl9rZXlz
ID4gU1JUUF9NQVhfTlVNX01BU1RFUl9LRVlTKQotCSAgICByZXR1cm4gMDsKLQkKKyAgICAgICAg
ICAgIHJldHVybiAwOworCiAgICAgICAgIGZvciAoaSA9IDA7IGkgPCBwb2xpY3ktPm51bV9tYXN0
ZXJfa2V5czsgaSsrKSB7CiAgICAgICAgICAgICBpZiAocG9saWN5LT5rZXlzW2ldLT5rZXkgPT0g
TlVMTCkKICAgICAgICAgICAgICAgICByZXR1cm4gMDsKLQkgICAgaWYgKHBvbGljeS0+a2V5c1tp
XS0+bWtpX3NpemUgPiBTUlRQX01BWF9NS0lfTEVOKQotCQlyZXR1cm4gMDsKKyAgICAgICAgICAg
IGlmIChwb2xpY3ktPmtleXNbaV0tPm1raV9zaXplID4gU1JUUF9NQVhfTUtJX0xFTikKKyAgICAg
ICAgICAgICAgICByZXR1cm4gMDsKICAgICAgICAgfQogICAgIH0KIAogICAgIHJldHVybiAxOwog
fQogCi1zcnRwX3Nlc3Npb25fa2V5c190Kgotc3J0cF9nZXRfc2Vzc2lvbl9rZXlzX3dpdGhfbWtp
X2luZGV4KHNydHBfc3RyZWFtX2N0eF90ICpzdHJlYW0sCi0gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IHVzZV9ta2ksCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IG1raV9pbmRleCkgeworc3J0cF9zZXNzaW9u
X2tleXNfdCAqc3J0cF9nZXRfc2Vzc2lvbl9rZXlzX3dpdGhfbWtpX2luZGV4KAorICAgIHNydHBf
c3RyZWFtX2N0eF90ICpzdHJlYW0sCisgICAgdW5zaWduZWQgaW50IHVzZV9ta2ksCisgICAgdW5z
aWduZWQgaW50IG1raV9pbmRleCkKK3sKICAgICBpZiAodXNlX21raSkgewotICAgICAgICBpZiAo
bWtpX2luZGV4IDwgc3RyZWFtLT5udW1fbWFzdGVyX2tleXMpIHsKLSAgICAgICAgICAgIHJldHVy
biAmc3RyZWFtLT5zZXNzaW9uX2tleXNbbWtpX2luZGV4XTsKKyAgICAgICAgaWYgKG1raV9pbmRl
eCA+PSBzdHJlYW0tPm51bV9tYXN0ZXJfa2V5cykgeworICAgICAgICAgICAgcmV0dXJuIE5VTEw7
CiAgICAgICAgIH0KKyAgICAgICAgcmV0dXJuICZzdHJlYW0tPnNlc3Npb25fa2V5c1tta2lfaW5k
ZXhdOwogICAgIH0KIAogICAgIHJldHVybiAmc3RyZWFtLT5zZXNzaW9uX2tleXNbMF07CiB9CiAK
LXVuc2lnbmVkIGludAotc3J0cF9pbmplY3RfbWtpKHVpbnQ4X3QgKm1raV90YWdfbG9jYXRpb24s
IHNydHBfc2Vzc2lvbl9rZXlzX3QqIHNlc3Npb25fa2V5cywKLSAgICAgICAgICAgICAgICB1bnNp
Z25lZCBpbnQgdXNlX21raSkKK3Vuc2lnbmVkIGludCBzcnRwX2luamVjdF9ta2kodWludDhfdCAq
bWtpX3RhZ19sb2NhdGlvbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF9zZXNz
aW9uX2tleXNfdCAqc2Vzc2lvbl9rZXlzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1
bnNpZ25lZCBpbnQgdXNlX21raSkKIHsKICAgICB1bnNpZ25lZCBpbnQgbWtpX3NpemUgPSAwOwog
CkBAIC04NDIsMTYgKzgyNywxNyBAQCBzcnRwX2luamVjdF9ta2kodWludDhfdCAqbWtpX3RhZ19s
b2NhdGlvbiwgc3J0cF9zZXNzaW9uX2tleXNfdCogc2Vzc2lvbl9rZXlzLAogICAgIHJldHVybiBt
a2lfc2l6ZTsKIH0KIAotc3J0cF9lcnJfc3RhdHVzX3QKLXNydHBfc3RyZWFtX2luaXRfYWxsX21h
c3Rlcl9rZXlzKHNydHBfc3RyZWFtX2N0eF90ICpzcnRwLAotICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgdW5zaWduZWQgY2hhciAqa2V5LAotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgc3J0cF9tYXN0ZXJfa2V5X3QgKiprZXlzLAotICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgY29uc3QgdW5zaWduZWQgaW50IG1heF9tYXN0ZXJfa2V5cykgewotICAgIGlu
dCBpID0gMDsKK3NydHBfZXJyX3N0YXR1c190IHNydHBfc3RyZWFtX2luaXRfYWxsX21hc3Rlcl9r
ZXlzKAorICAgIHNydHBfc3RyZWFtX2N0eF90ICpzcnRwLAorICAgIHVuc2lnbmVkIGNoYXIgKmtl
eSwKKyAgICBzcnRwX21hc3Rlcl9rZXlfdCAqKmtleXMsCisgICAgY29uc3QgdW5zaWduZWQgaW50
IG1heF9tYXN0ZXJfa2V5cykKK3sKKyAgICB1bnNpZ25lZCBpbnQgaSA9IDA7CiAgICAgc3J0cF9l
cnJfc3RhdHVzX3Qgc3RhdHVzID0gc3J0cF9lcnJfc3RhdHVzX29rOwogICAgIHNydHBfbWFzdGVy
X2tleV90IHNpbmdsZV9tYXN0ZXJfa2V5OwogCi0gICAgaWYgKCBrZXkgIT0gTlVMTCApIHsKKyAg
ICBpZiAoa2V5ICE9IE5VTEwpIHsKICAgICAgICAgc3J0cC0+bnVtX21hc3Rlcl9rZXlzID0gMTsK
ICAgICAgICAgc2luZ2xlX21hc3Rlcl9rZXkua2V5ID0ga2V5OwogICAgICAgICBzaW5nbGVfbWFz
dGVyX2tleS5ta2lfaWQgPSBOVUxMOwpAQCAtODYwLDcgKzg0Niw4IEBAIHNydHBfc3RyZWFtX2lu
aXRfYWxsX21hc3Rlcl9rZXlzKHNydHBfc3RyZWFtX2N0eF90ICpzcnRwLAogICAgIH0gZWxzZSB7
CiAgICAgICAgIHNydHAtPm51bV9tYXN0ZXJfa2V5cyA9IG1heF9tYXN0ZXJfa2V5czsKIAotICAg
ICAgICBmb3IgKGkgPSAwOyBpIDwgc3J0cC0+bnVtX21hc3Rlcl9rZXlzICYmIGkgPCBTUlRQX01B
WF9OVU1fTUFTVEVSX0tFWVM7IGkrKykgeworICAgICAgICBmb3IgKGkgPSAwOyBpIDwgc3J0cC0+
bnVtX21hc3Rlcl9rZXlzICYmIGkgPCBTUlRQX01BWF9OVU1fTUFTVEVSX0tFWVM7CisgICAgICAg
ICAgICAgaSsrKSB7CiAgICAgICAgICAgICBzdGF0dXMgPSBzcnRwX3N0cmVhbV9pbml0X2tleXMo
c3J0cCwga2V5c1tpXSwgaSk7CiAKICAgICAgICAgICAgIGlmIChzdGF0dXMpIHsKQEAgLTg3Miw1
NzcgKzg1OSw2MDkgQEAgc3J0cF9zdHJlYW1faW5pdF9hbGxfbWFzdGVyX2tleXMoc3J0cF9zdHJl
YW1fY3R4X3QgKnNydHAsCiAgICAgcmV0dXJuIHN0YXR1czsKIH0KIAotc3J0cF9lcnJfc3RhdHVz
X3QKLXNydHBfc3RyZWFtX2luaXRfa2V5cyhzcnRwX3N0cmVhbV9jdHhfdCAqc3J0cCwgc3J0cF9t
YXN0ZXJfa2V5X3QgKm1hc3Rlcl9rZXksCi0gICAgICAgICAgICAgICAgICAgICAgY29uc3QgdW5z
aWduZWQgaW50IGN1cnJlbnRfbWtpX2luZGV4KSB7Ci0gIHNydHBfZXJyX3N0YXR1c190IHN0YXQ7
Ci0gIHNydHBfa2RmX3Qga2RmOwotICB1aW50OF90IHRtcF9rZXlbTUFYX1NSVFBfS0VZX0xFTl07
Ci0gIGludCBrZGZfa2V5bGVuID0gMzAsIHJ0cF9rZXlsZW4sIHJ0Y3Bfa2V5bGVuOwotICBpbnQg
cnRwX2Jhc2Vfa2V5X2xlbiwgcnRwX3NhbHRfbGVuOwotICBpbnQgcnRjcF9iYXNlX2tleV9sZW4s
IHJ0Y3Bfc2FsdF9sZW47Ci0gIHNydHBfc2Vzc2lvbl9rZXlzX3QgKnNlc3Npb25fa2V5cyA9IE5V
TEw7Ci0gIHVuc2lnbmVkIGNoYXIgKmtleSA9IG1hc3Rlcl9rZXktPmtleTsKLQotICAvKiBJZiBS
VFAgb3IgUlRDUCBoYXZlIGEga2V5IGxlbmd0aCA+IEFFUy0xMjgsIGFzc3VtZSBtYXRjaGluZyBr
ZGYuICovCi0gIC8qIFRPRE86IGtkZiBhbGdvcml0aG0sIG1hc3RlciBrZXkgbGVuZ3RoLCBhbmQg
bWFzdGVyIHNhbHQgbGVuZ3RoIHNob3VsZAotICAgKiBiZSBwYXJ0IG9mIHNydHBfcG9saWN5X3Qu
ICovCi0gIHNlc3Npb25fa2V5cyA9ICZzcnRwLT5zZXNzaW9uX2tleXNbY3VycmVudF9ta2lfaW5k
ZXhdOwotCi0gICAvKiBpbml0aWFsaXplIGtleSBsaW1pdCB0byBtYXhpbXVtIHZhbHVlICovCi0j
aWZkZWYgTk9fNjRCSVRfTUFUSAorc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9zdHJlYW1faW5pdF9r
ZXlzKHNydHBfc3RyZWFtX2N0eF90ICpzcnRwLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHNydHBfbWFzdGVyX2tleV90ICptYXN0ZXJfa2V5LAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVuc2lnbmVkIGludCBjdXJyZW50X21r
aV9pbmRleCkKIHsKLSAgIHVpbnQ2NF90IHRlbXA7Ci0gICB0ZW1wID0gbWFrZTY0KFVJTlRfTUFY
LFVJTlRfTUFYKTsKLSAgIHNydHBfa2V5X2xpbWl0X3NldChzZXNzaW9uX2tleXMtPmxpbWl0LCB0
ZW1wKTsKLX0KKyAgICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0OworICAgIHNydHBfa2RmX3Qga2Rm
OworICAgIHVpbnQ4X3QgdG1wX2tleVtNQVhfU1JUUF9LRVlfTEVOXTsKKyAgICBpbnQga2RmX2tl
eWxlbiA9IDMwLCBydHBfa2V5bGVuLCBydGNwX2tleWxlbjsKKyAgICBpbnQgcnRwX2Jhc2Vfa2V5
X2xlbiwgcnRwX3NhbHRfbGVuOworICAgIGludCBydGNwX2Jhc2Vfa2V5X2xlbiwgcnRjcF9zYWx0
X2xlbjsKKyAgICBzcnRwX3Nlc3Npb25fa2V5c190ICpzZXNzaW9uX2tleXMgPSBOVUxMOworICAg
IHVuc2lnbmVkIGNoYXIgKmtleSA9IG1hc3Rlcl9rZXktPmtleTsKKworICAgIC8qIElmIFJUUCBv
ciBSVENQIGhhdmUgYSBrZXkgbGVuZ3RoID4gQUVTLTEyOCwgYXNzdW1lIG1hdGNoaW5nIGtkZi4g
Ki8KKyAgICAvKiBUT0RPOiBrZGYgYWxnb3JpdGhtLCBtYXN0ZXIga2V5IGxlbmd0aCwgYW5kIG1h
c3RlciBzYWx0IGxlbmd0aCBzaG91bGQKKyAgICAgKiBiZSBwYXJ0IG9mIHNydHBfcG9saWN5X3Qu
CisgICAgKi8KKyAgICBzZXNzaW9uX2tleXMgPSAmc3J0cC0+c2Vzc2lvbl9rZXlzW2N1cnJlbnRf
bWtpX2luZGV4XTsKKworLyogaW5pdGlhbGl6ZSBrZXkgbGltaXQgdG8gbWF4aW11bSB2YWx1ZSAq
LworI2lmZGVmIE5PXzY0QklUX01BVEgKKyAgICB7CisgICAgICAgIHVpbnQ2NF90IHRlbXA7Cisg
ICAgICAgIHRlbXAgPSBtYWtlNjQoVUlOVF9NQVgsIFVJTlRfTUFYKTsKKyAgICAgICAgc3J0cF9r
ZXlfbGltaXRfc2V0KHNlc3Npb25fa2V5cy0+bGltaXQsIHRlbXApOworICAgIH0KICNlbHNlCi0g
ICBzcnRwX2tleV9saW1pdF9zZXQoc2Vzc2lvbl9rZXlzLT5saW1pdCwgMHhmZmZmZmZmZmZmZmZM
TCk7CisgICAgc3J0cF9rZXlfbGltaXRfc2V0KHNlc3Npb25fa2V5cy0+bGltaXQsIDB4ZmZmZmZm
ZmZmZmZmTEwpOwogI2VuZGlmCiAKKyAgICBpZiAobWFzdGVyX2tleS0+bWtpX3NpemUgIT0gMCkg
eworICAgICAgICBzZXNzaW9uX2tleXMtPm1raV9pZCA9IHNydHBfY3J5cHRvX2FsbG9jKG1hc3Rl
cl9rZXktPm1raV9zaXplKTsKIAotICBpZiAoIG1hc3Rlcl9rZXktPm1raV9zaXplICE9IDAgKSB7
Ci0gICAgICBzZXNzaW9uX2tleXMtPm1raV9pZCA9IHNydHBfY3J5cHRvX2FsbG9jKG1hc3Rlcl9r
ZXktPm1raV9zaXplKTsKLQotICAgICAgaWYgKHNlc3Npb25fa2V5cy0+bWtpX2lkID09IE5VTEwp
IHsKLSAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19pbml0X2ZhaWw7Ci0gICAgICB9Ci0g
ICAgICBtZW1zZXQoc2Vzc2lvbl9rZXlzLT5ta2lfaWQsIDB4MCwgbWFzdGVyX2tleS0+bWtpX3Np
emUpOwotICAgICAgbWVtY3B5KHNlc3Npb25fa2V5cy0+bWtpX2lkLCBtYXN0ZXJfa2V5LT5ta2lf
aWQsIG1hc3Rlcl9rZXktPm1raV9zaXplKTsKLSAgfSBlbHNlIHsKLSAgICAgIHNlc3Npb25fa2V5
cy0+bWtpX2lkID0gTlVMTDsKLSAgfQotCi0gIHNlc3Npb25fa2V5cy0+bWtpX3NpemUgPSBtYXN0
ZXJfa2V5LT5ta2lfc2l6ZTsKLQotICBydHBfa2V5bGVuID0gc3J0cF9jaXBoZXJfZ2V0X2tleV9s
ZW5ndGgoc2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVyKTsKLSAgcnRjcF9rZXlsZW4gPSBzcnRwX2Np
cGhlcl9nZXRfa2V5X2xlbmd0aChzZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyKTsKLSAgcnRwX2Jh
c2Vfa2V5X2xlbiA9IGJhc2Vfa2V5X2xlbmd0aChzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXItPnR5
cGUsIHJ0cF9rZXlsZW4pOwotICBydHBfc2FsdF9sZW4gPSBydHBfa2V5bGVuIC0gcnRwX2Jhc2Vf
a2V5X2xlbjsKLQotICBpZiAocnRwX2tleWxlbiA+IGtkZl9rZXlsZW4pIHsKLSAgICBrZGZfa2V5
bGVuID0gNDY7ICAvKiBBRVMtQ1RSIG1vZGUgaXMgYWx3YXlzIHVzZWQgZm9yIEtERiAqLwotICB9
Ci0KLSAgaWYgKHJ0Y3Bfa2V5bGVuID4ga2RmX2tleWxlbikgewotICAgIGtkZl9rZXlsZW4gPSA0
NjsgIC8qIEFFUy1DVFIgbW9kZSBpcyBhbHdheXMgdXNlZCBmb3IgS0RGICovCi0gIH0KLQotICBk
ZWJ1Z19wcmludChtb2Rfc3J0cCwgInNydHAga2V5IGxlbjogJWQiLCBydHBfa2V5bGVuKTsKLSAg
ZGVidWdfcHJpbnQobW9kX3NydHAsICJzcnRjcCBrZXkgbGVuOiAlZCIsIHJ0Y3Bfa2V5bGVuKTsK
LSAgZGVidWdfcHJpbnQobW9kX3NydHAsICJiYXNlIGtleSBsZW46ICVkIiwgcnRwX2Jhc2Vfa2V5
X2xlbik7Ci0gIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAia2RmIGtleSBsZW46ICVkIiwga2RmX2tl
eWxlbik7Ci0gIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAicnRwIHNhbHQgbGVuOiAlZCIsIHJ0cF9z
YWx0X2xlbik7Ci0KLSAgLyogCi0gICAqIE1ha2Ugc3VyZSB0aGUga2V5IGdpdmVuIHRvIHVzIGlz
ICd6ZXJvJyBhcHBlbmRlZC4gIEdDTQotICAgKiBtb2RlIHVzZXMgYSBzaG9ydGVyIG1hc3RlciBT
QUxUICg5NiBiaXRzKSwgYnV0IHN0aWxsIHJlbGllcyBvbiAKLSAgICogdGhlIGxlZ2FjeSBDVFIg
bW9kZSBLREYsIHdoaWNoIHVzZXMgYSAxMTIgYml0IG1hc3RlciBTQUxULgotICAgKi8KLSAgbWVt
c2V0KHRtcF9rZXksIDB4MCwgTUFYX1NSVFBfS0VZX0xFTik7Ci0gIG1lbWNweSh0bXBfa2V5LCBr
ZXksIChydHBfYmFzZV9rZXlfbGVuICsgcnRwX3NhbHRfbGVuKSk7Ci0KLSAgLyogaW5pdGlhbGl6
ZSBLREYgc3RhdGUgICAgICovCi0jaWYgZGVmaW5lZChPUEVOU1NMKSAmJiBkZWZpbmVkKE9QRU5T
U0xfS0RGKQotICBzdGF0ID0gc3J0cF9rZGZfaW5pdCgma2RmLCAoY29uc3QgdWludDhfdCAqKXRt
cF9rZXksIHJ0cF9iYXNlX2tleV9sZW4sIHJ0cF9zYWx0X2xlbik7IAotI2Vsc2UKLSAgc3RhdCA9
IHNydHBfa2RmX2luaXQoJmtkZiwgKGNvbnN0IHVpbnQ4X3QgKil0bXBfa2V5LCBrZGZfa2V5bGVu
KTsKLSNlbmRpZgotICBpZiAoc3RhdCkgewotICAgIC8qIHplcm9pemUgdGVtcCBidWZmZXIgKi8K
LSAgICBvY3RldF9zdHJpbmdfc2V0X3RvX3plcm8odG1wX2tleSwgTUFYX1NSVFBfS0VZX0xFTik7
Ci0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19pbml0X2ZhaWw7Ci0gIH0KLSAgCi0gIC8qIGdl
bmVyYXRlIGVuY3J5cHRpb24ga2V5ICAqLwotICBzdGF0ID0gc3J0cF9rZGZfZ2VuZXJhdGUoJmtk
ZiwgbGFiZWxfcnRwX2VuY3J5cHRpb24sIAotCQkJICAgdG1wX2tleSwgcnRwX2Jhc2Vfa2V5X2xl
bik7Ci0gIGlmIChzdGF0KSB7Ci0gICAgLyogemVyb2l6ZSB0ZW1wIGJ1ZmZlciAqLwotICAgIG9j
dGV0X3N0cmluZ19zZXRfdG9femVybyh0bXBfa2V5LCBNQVhfU1JUUF9LRVlfTEVOKTsKLSAgICBy
ZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2luaXRfZmFpbDsKLSAgfQotICBkZWJ1Z19wcmludChtb2Rf
c3J0cCwgImNpcGhlciBrZXk6ICVzIiwgCi0JICAgICAgc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0
cmluZyh0bXBfa2V5LCBydHBfYmFzZV9rZXlfbGVuKSk7Ci0KLSAgLyogCi0gICAqIGlmIHRoZSBj
aXBoZXIgaW4gdGhlIHNydHAgY29udGV4dCB1c2VzIGEgc2FsdCwgdGhlbiB3ZSBuZWVkCi0gICAq
IHRvIGdlbmVyYXRlIHRoZSBzYWx0IHZhbHVlCi0gICAqLwotICBpZiAocnRwX3NhbHRfbGVuID4g
MCkgewotICAgIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAiZm91bmQgcnRwX3NhbHRfbGVuID4gMCwg
Z2VuZXJhdGluZyBzYWx0IiwgTlVMTCk7Ci0KLSAgICAvKiBnZW5lcmF0ZSBlbmNyeXB0aW9uIHNh
bHQsIHB1dCBhZnRlciBlbmNyeXB0aW9uIGtleSAqLwotICAgIHN0YXQgPSBzcnRwX2tkZl9nZW5l
cmF0ZSgma2RmLCBsYWJlbF9ydHBfc2FsdCwgCi0JCQkgICAgIHRtcF9rZXkgKyBydHBfYmFzZV9r
ZXlfbGVuLCBydHBfc2FsdF9sZW4pOwotICAgIGlmIChzdGF0KSB7Ci0gICAgICAvKiB6ZXJvaXpl
IHRlbXAgYnVmZmVyICovCi0gICAgICBvY3RldF9zdHJpbmdfc2V0X3RvX3plcm8odG1wX2tleSwg
TUFYX1NSVFBfS0VZX0xFTik7Ci0gICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2luaXRfZmFp
bDsKLSAgICB9Ci0gICAgbWVtY3B5KHNlc3Npb25fa2V5cy0+c2FsdCwgdG1wX2tleSArIHJ0cF9i
YXNlX2tleV9sZW4sIFNSVFBfQUVBRF9TQUxUX0xFTik7Ci0gIH0KLSAgaWYgKHJ0cF9zYWx0X2xl
biA+IDApIHsKLSAgICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgImNpcGhlciBzYWx0OiAlcyIsCi0J
CXNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcodG1wX2tleSArIHJ0cF9iYXNlX2tleV9sZW4s
IHJ0cF9zYWx0X2xlbikpOwotICB9Ci0KLSAgLyogaW5pdGlhbGl6ZSBjaXBoZXIgKi8KLSAgc3Rh
dCA9IHNydHBfY2lwaGVyX2luaXQoc2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVyLCB0bXBfa2V5KTsK
LSAgaWYgKHN0YXQpIHsKLSAgICAvKiB6ZXJvaXplIHRlbXAgYnVmZmVyICovCi0gICAgb2N0ZXRf
c3RyaW5nX3NldF90b196ZXJvKHRtcF9rZXksIE1BWF9TUlRQX0tFWV9MRU4pOwotICAgIHJldHVy
biBzcnRwX2Vycl9zdGF0dXNfaW5pdF9mYWlsOwotICB9Ci0KLSAgaWYgKHNlc3Npb25fa2V5cy0+
cnRwX3h0bl9oZHJfY2lwaGVyKSB7Ci0gICAgLyogZ2VuZXJhdGUgZXh0ZW5zaW9ucyBoZWFkZXIg
ZW5jcnlwdGlvbiBrZXkgICovCi0gICAgaW50IHJ0cF94dG5faGRyX2tleWxlbjsKLSAgICBpbnQg
cnRwX3h0bl9oZHJfYmFzZV9rZXlfbGVuOwotICAgIGludCBydHBfeHRuX2hkcl9zYWx0X2xlbjsK
LSAgICBzcnRwX2tkZl90IHRtcF9rZGY7Ci0gICAgc3J0cF9rZGZfdCAqeHRuX2hkcl9rZGY7Ci0K
LSAgICBpZiAoc2Vzc2lvbl9rZXlzLT5ydHBfeHRuX2hkcl9jaXBoZXItPnR5cGUgIT0gc2Vzc2lv
bl9rZXlzLT5ydHBfY2lwaGVyLT50eXBlKSB7Ci0gICAgICAvKiBXaXRoIEdDTSBjaXBoZXJzLCB0
aGUgaGVhZGVyIGV4dGVuc2lvbnMgYXJlIHN0aWxsIGVuY3J5cHRlZCB1c2luZyB0aGUgY29ycmVz
cG9uZGluZyBJQ00gY2lwaGVyLiAqLwotICAgICAgLyogU2VlIGh0dHBzOi8vdG9vbHMuaWV0Zi5v
cmcvaHRtbC9yZmM3NzE0I3NlY3Rpb24tOC4zICovCi0gICAgICB1aW50OF90IHRtcF94dG5faGRy
X2tleVtNQVhfU1JUUF9LRVlfTEVOXTsKLSAgICAgIHJ0cF94dG5faGRyX2tleWxlbiA9IHNydHBf
Y2lwaGVyX2dldF9rZXlfbGVuZ3RoKHNlc3Npb25fa2V5cy0+cnRwX3h0bl9oZHJfY2lwaGVyKTsK
LSAgICAgIHJ0cF94dG5faGRyX2Jhc2Vfa2V5X2xlbiA9IGJhc2Vfa2V5X2xlbmd0aChzZXNzaW9u
X2tleXMtPnJ0cF94dG5faGRyX2NpcGhlci0+dHlwZSwKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBydHBfeHRuX2hkcl9rZXlsZW4pOwotICAgICAgcnRw
X3h0bl9oZHJfc2FsdF9sZW4gPSBydHBfeHRuX2hkcl9rZXlsZW4gLSBydHBfeHRuX2hkcl9iYXNl
X2tleV9sZW47Ci0gICAgICBpZiAocnRwX3h0bl9oZHJfc2FsdF9sZW4gPiBydHBfc2FsdF9sZW4p
IHsKLSAgICAgICAgc3dpdGNoIChzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXItPnR5cGUtPmlkKSB7
Ci0gICAgICAgIGNhc2UgU1JUUF9BRVNfR0NNXzEyODoKLSAgICAgICAgY2FzZSBTUlRQX0FFU19H
Q01fMjU2OgotICAgICAgICAgIC8qIFRoZSBzaG9ydGVyIEdDTSBzYWx0IGlzIHBhZGRlZCB0byB0
aGUgcmVxdWlyZWQgSUNNIHNhbHQgbGVuZ3RoLiAqLwotICAgICAgICAgIHJ0cF94dG5faGRyX3Nh
bHRfbGVuID0gcnRwX3NhbHRfbGVuOwotICAgICAgICAgIGJyZWFrOwotICAgICAgICBkZWZhdWx0
OgotICAgICAgICAgIC8qIHplcm9pemUgdGVtcCBidWZmZXIgKi8KLSAgICAgICAgICBvY3RldF9z
dHJpbmdfc2V0X3RvX3plcm8odG1wX2tleSwgTUFYX1NSVFBfS0VZX0xFTik7Ci0gICAgICAgICAg
cmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW07CisgICAgICAgIGlmIChzZXNzaW9uX2tl
eXMtPm1raV9pZCA9PSBOVUxMKSB7CisgICAgICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVz
X2luaXRfZmFpbDsKICAgICAgICAgfQotICAgICAgfQotICAgICAgbWVtc2V0KHRtcF94dG5faGRy
X2tleSwgMHgwLCBNQVhfU1JUUF9LRVlfTEVOKTsKLSAgICAgIG1lbWNweSh0bXBfeHRuX2hkcl9r
ZXksIGtleSwgKHJ0cF94dG5faGRyX2Jhc2Vfa2V5X2xlbiArIHJ0cF94dG5faGRyX3NhbHRfbGVu
KSk7Ci0gICAgICB4dG5faGRyX2tkZiA9ICZ0bXBfa2RmOworICAgICAgICBtZW1jcHkoc2Vzc2lv
bl9rZXlzLT5ta2lfaWQsIG1hc3Rlcl9rZXktPm1raV9pZCwgbWFzdGVyX2tleS0+bWtpX3NpemUp
OworICAgIH0gZWxzZSB7CisgICAgICAgIHNlc3Npb25fa2V5cy0+bWtpX2lkID0gTlVMTDsKKyAg
ICB9CisKKyAgICBzZXNzaW9uX2tleXMtPm1raV9zaXplID0gbWFzdGVyX2tleS0+bWtpX3NpemU7
CisKKyAgICBydHBfa2V5bGVuID0gc3J0cF9jaXBoZXJfZ2V0X2tleV9sZW5ndGgoc2Vzc2lvbl9r
ZXlzLT5ydHBfY2lwaGVyKTsKKyAgICBydGNwX2tleWxlbiA9IHNydHBfY2lwaGVyX2dldF9rZXlf
bGVuZ3RoKHNlc3Npb25fa2V5cy0+cnRjcF9jaXBoZXIpOworICAgIHJ0cF9iYXNlX2tleV9sZW4g
PQorICAgICAgICBiYXNlX2tleV9sZW5ndGgoc2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVyLT50eXBl
LCBydHBfa2V5bGVuKTsKKyAgICBydHBfc2FsdF9sZW4gPSBydHBfa2V5bGVuIC0gcnRwX2Jhc2Vf
a2V5X2xlbjsKKworICAgIGlmIChydHBfa2V5bGVuID4ga2RmX2tleWxlbikgeworICAgICAgICBr
ZGZfa2V5bGVuID0gNDY7IC8qIEFFUy1DVFIgbW9kZSBpcyBhbHdheXMgdXNlZCBmb3IgS0RGICov
CisgICAgfQorCisgICAgaWYgKHJ0Y3Bfa2V5bGVuID4ga2RmX2tleWxlbikgeworICAgICAgICBr
ZGZfa2V5bGVuID0gNDY7IC8qIEFFUy1DVFIgbW9kZSBpcyBhbHdheXMgdXNlZCBmb3IgS0RGICov
CisgICAgfQorCisgICAgZGVidWdfcHJpbnQobW9kX3NydHAsICJzcnRwIGtleSBsZW46ICVkIiwg
cnRwX2tleWxlbik7CisgICAgZGVidWdfcHJpbnQobW9kX3NydHAsICJzcnRjcCBrZXkgbGVuOiAl
ZCIsIHJ0Y3Bfa2V5bGVuKTsKKyAgICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgImJhc2Uga2V5IGxl
bjogJWQiLCBydHBfYmFzZV9rZXlfbGVuKTsKKyAgICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgImtk
ZiBrZXkgbGVuOiAlZCIsIGtkZl9rZXlsZW4pOworICAgIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAi
cnRwIHNhbHQgbGVuOiAlZCIsIHJ0cF9zYWx0X2xlbik7CiAKLSAgICAgIC8qIGluaXRpYWxpemUg
S0RGIHN0YXRlICAgICAqLworICAgIC8qCisgICAgICogTWFrZSBzdXJlIHRoZSBrZXkgZ2l2ZW4g
dG8gdXMgaXMgJ3plcm8nIGFwcGVuZGVkLiAgR0NNCisgICAgICogbW9kZSB1c2VzIGEgc2hvcnRl
ciBtYXN0ZXIgU0FMVCAoOTYgYml0cyksIGJ1dCBzdGlsbCByZWxpZXMgb24KKyAgICAgKiB0aGUg
bGVnYWN5IENUUiBtb2RlIEtERiwgd2hpY2ggdXNlcyBhIDExMiBiaXQgbWFzdGVyIFNBTFQuCisg
ICAgICovCisgICAgbWVtc2V0KHRtcF9rZXksIDB4MCwgTUFYX1NSVFBfS0VZX0xFTik7CisgICAg
bWVtY3B5KHRtcF9rZXksIGtleSwgKHJ0cF9iYXNlX2tleV9sZW4gKyBydHBfc2FsdF9sZW4pKTsK
KworLyogaW5pdGlhbGl6ZSBLREYgc3RhdGUgICAgICovCiAjaWYgZGVmaW5lZChPUEVOU1NMKSAm
JiBkZWZpbmVkKE9QRU5TU0xfS0RGKQotICAgICAgc3RhdCA9IHNydHBfa2RmX2luaXQoeHRuX2hk
cl9rZGYsIChjb25zdCB1aW50OF90ICopdG1wX3h0bl9oZHJfa2V5LCBydHBfeHRuX2hkcl9iYXNl
X2tleV9sZW4sIHJ0cF94dG5faGRyX3NhbHRfbGVuKTsKKyAgICBzdGF0ID0gc3J0cF9rZGZfaW5p
dCgma2RmLCAoY29uc3QgdWludDhfdCAqKXRtcF9rZXksIHJ0cF9iYXNlX2tleV9sZW4sCisgICAg
ICAgICAgICAgICAgICAgICAgICAgcnRwX3NhbHRfbGVuKTsKICNlbHNlCi0gICAgICBzdGF0ID0g
c3J0cF9rZGZfaW5pdCh4dG5faGRyX2tkZiwgKGNvbnN0IHVpbnQ4X3QgKil0bXBfeHRuX2hkcl9r
ZXksIGtkZl9rZXlsZW4pOworICAgIHN0YXQgPSBzcnRwX2tkZl9pbml0KCZrZGYsIChjb25zdCB1
aW50OF90ICopdG1wX2tleSwga2RmX2tleWxlbik7CiAjZW5kaWYKLSAgICAgIG9jdGV0X3N0cmlu
Z19zZXRfdG9femVybyh0bXBfeHRuX2hkcl9rZXksIE1BWF9TUlRQX0tFWV9MRU4pOwotICAgICAg
aWYgKHN0YXQpIHsKKyAgICBpZiAoc3RhdCkgewogICAgICAgICAvKiB6ZXJvaXplIHRlbXAgYnVm
ZmVyICovCiAgICAgICAgIG9jdGV0X3N0cmluZ19zZXRfdG9femVybyh0bXBfa2V5LCBNQVhfU1JU
UF9LRVlfTEVOKTsKICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19pbml0X2ZhaWw7Ci0g
ICAgICB9Ci0gICAgfSBlbHNlIHsKLSAgICAgIC8qIFJldXNlIG1haW4gS0RGLiAqLwotICAgICAg
cnRwX3h0bl9oZHJfa2V5bGVuID0gcnRwX2tleWxlbjsKLSAgICAgIHJ0cF94dG5faGRyX2Jhc2Vf
a2V5X2xlbiA9IHJ0cF9iYXNlX2tleV9sZW47Ci0gICAgICBydHBfeHRuX2hkcl9zYWx0X2xlbiA9
IHJ0cF9zYWx0X2xlbjsKLSAgICAgIHh0bl9oZHJfa2RmID0gJmtkZjsKICAgICB9CiAKLSAgICBz
dGF0ID0gc3J0cF9rZGZfZ2VuZXJhdGUoeHRuX2hkcl9rZGYsIGxhYmVsX3J0cF9oZWFkZXJfZW5j
cnlwdGlvbiwKLSAgICAgICAgICAgdG1wX2tleSwgcnRwX3h0bl9oZHJfYmFzZV9rZXlfbGVuKTsK
KyAgICAvKiBnZW5lcmF0ZSBlbmNyeXB0aW9uIGtleSAgKi8KKyAgICBzdGF0ID0gc3J0cF9rZGZf
Z2VuZXJhdGUoJmtkZiwgbGFiZWxfcnRwX2VuY3J5cHRpb24sIHRtcF9rZXksCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHJ0cF9iYXNlX2tleV9sZW4pOwogICAgIGlmIChzdGF0KSB7Ci0g
ICAgICAvKiB6ZXJvaXplIHRlbXAgYnVmZmVyICovCi0gICAgICBvY3RldF9zdHJpbmdfc2V0X3Rv
X3plcm8odG1wX2tleSwgTUFYX1NSVFBfS0VZX0xFTik7Ci0gICAgICByZXR1cm4gc3J0cF9lcnJf
c3RhdHVzX2luaXRfZmFpbDsKKyAgICAgICAgLyogemVyb2l6ZSB0ZW1wIGJ1ZmZlciAqLworICAg
ICAgICBvY3RldF9zdHJpbmdfc2V0X3RvX3plcm8odG1wX2tleSwgTUFYX1NSVFBfS0VZX0xFTik7
CisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfaW5pdF9mYWlsOwogICAgIH0KLSAgICBk
ZWJ1Z19wcmludChtb2Rfc3J0cCwgImV4dGVuc2lvbnMgY2lwaGVyIGtleTogJXMiLAotICAgICAg
ICAgIHNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcodG1wX2tleSwgcnRwX3h0bl9oZHJfYmFz
ZV9rZXlfbGVuKSk7CisgICAgZGVidWdfcHJpbnQobW9kX3NydHAsICJjaXBoZXIga2V5OiAlcyIs
CisgICAgICAgICAgICAgICAgc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZyh0bXBfa2V5LCBy
dHBfYmFzZV9rZXlfbGVuKSk7CiAKICAgICAvKgogICAgICAqIGlmIHRoZSBjaXBoZXIgaW4gdGhl
IHNydHAgY29udGV4dCB1c2VzIGEgc2FsdCwgdGhlbiB3ZSBuZWVkCiAgICAgICogdG8gZ2VuZXJh
dGUgdGhlIHNhbHQgdmFsdWUKICAgICAgKi8KLSAgICBpZiAocnRwX3h0bl9oZHJfc2FsdF9sZW4g
PiAwKSB7Ci0gICAgICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgImZvdW5kIHJ0cF94dG5faGRyX3Nh
bHRfbGVuID4gMCwgZ2VuZXJhdGluZyBzYWx0IiwgTlVMTCk7Ci0KLSAgICAgIC8qIGdlbmVyYXRl
IGVuY3J5cHRpb24gc2FsdCwgcHV0IGFmdGVyIGVuY3J5cHRpb24ga2V5ICovCi0gICAgICBzdGF0
ID0gc3J0cF9rZGZfZ2VuZXJhdGUoeHRuX2hkcl9rZGYsIGxhYmVsX3J0cF9oZWFkZXJfc2FsdCwK
LSAgICAgICAgICAgICB0bXBfa2V5ICsgcnRwX3h0bl9oZHJfYmFzZV9rZXlfbGVuLCBydHBfeHRu
X2hkcl9zYWx0X2xlbik7Ci0gICAgICBpZiAoc3RhdCkgewotICAgICAgICAvKiB6ZXJvaXplIHRl
bXAgYnVmZmVyICovCi0gICAgICAgIG9jdGV0X3N0cmluZ19zZXRfdG9femVybyh0bXBfa2V5LCBN
QVhfU1JUUF9LRVlfTEVOKTsKLSAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19pbml0X2Zh
aWw7Ci0gICAgICB9CisgICAgaWYgKHJ0cF9zYWx0X2xlbiA+IDApIHsKKyAgICAgICAgZGVidWdf
cHJpbnQobW9kX3NydHAsICJmb3VuZCBydHBfc2FsdF9sZW4gPiAwLCBnZW5lcmF0aW5nIHNhbHQi
LCBOVUxMKTsKKworICAgICAgICAvKiBnZW5lcmF0ZSBlbmNyeXB0aW9uIHNhbHQsIHB1dCBhZnRl
ciBlbmNyeXB0aW9uIGtleSAqLworICAgICAgICBzdGF0ID0gc3J0cF9rZGZfZ2VuZXJhdGUoJmtk
ZiwgbGFiZWxfcnRwX3NhbHQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0bXBf
a2V5ICsgcnRwX2Jhc2Vfa2V5X2xlbiwgcnRwX3NhbHRfbGVuKTsKKyAgICAgICAgaWYgKHN0YXQp
IHsKKyAgICAgICAgICAgIC8qIHplcm9pemUgdGVtcCBidWZmZXIgKi8KKyAgICAgICAgICAgIG9j
dGV0X3N0cmluZ19zZXRfdG9femVybyh0bXBfa2V5LCBNQVhfU1JUUF9LRVlfTEVOKTsKKyAgICAg
ICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfaW5pdF9mYWlsOworICAgICAgICB9CisgICAg
ICAgIG1lbWNweShzZXNzaW9uX2tleXMtPnNhbHQsIHRtcF9rZXkgKyBydHBfYmFzZV9rZXlfbGVu
LAorICAgICAgICAgICAgICAgU1JUUF9BRUFEX1NBTFRfTEVOKTsKICAgICB9Ci0gICAgaWYgKHJ0
cF94dG5faGRyX3NhbHRfbGVuID4gMCkgewotICAgICAgZGVidWdfcHJpbnQobW9kX3NydHAsICJl
eHRlbnNpb25zIGNpcGhlciBzYWx0OiAlcyIsCi0gICAgICBzcnRwX29jdGV0X3N0cmluZ19oZXhf
c3RyaW5nKHRtcF9rZXkgKyBydHBfeHRuX2hkcl9iYXNlX2tleV9sZW4sIHJ0cF94dG5faGRyX3Nh
bHRfbGVuKSk7CisgICAgaWYgKHJ0cF9zYWx0X2xlbiA+IDApIHsKKyAgICAgICAgZGVidWdfcHJp
bnQobW9kX3NydHAsICJjaXBoZXIgc2FsdDogJXMiLAorICAgICAgICAgICAgICAgICAgICBzcnRw
X29jdGV0X3N0cmluZ19oZXhfc3RyaW5nKHRtcF9rZXkgKyBydHBfYmFzZV9rZXlfbGVuLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJ0cF9zYWx0X2xl
bikpOwogICAgIH0KIAotICAgIC8qIGluaXRpYWxpemUgZXh0ZW5zaW9ucyBoZWFkZXIgY2lwaGVy
ICovCi0gICAgc3RhdCA9IHNydHBfY2lwaGVyX2luaXQoc2Vzc2lvbl9rZXlzLT5ydHBfeHRuX2hk
cl9jaXBoZXIsIHRtcF9rZXkpOworICAgIC8qIGluaXRpYWxpemUgY2lwaGVyICovCisgICAgc3Rh
dCA9IHNydHBfY2lwaGVyX2luaXQoc2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVyLCB0bXBfa2V5KTsK
ICAgICBpZiAoc3RhdCkgewotICAgICAgLyogemVyb2l6ZSB0ZW1wIGJ1ZmZlciAqLwotICAgICAg
b2N0ZXRfc3RyaW5nX3NldF90b196ZXJvKHRtcF9rZXksIE1BWF9TUlRQX0tFWV9MRU4pOwotICAg
ICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19pbml0X2ZhaWw7Ci0gICAgfQotCi0gICAgaWYgKHh0
bl9oZHJfa2RmICE9ICZrZGYpIHsKLSAgICAgIC8qIHJlbGVhc2UgbWVtb3J5IGZvciBjdXN0b20g
aGVhZGVyIGV4dGVuc2lvbiBlbmNyeXB0aW9uIGtkZiAqLwotICAgICAgc3RhdCA9IHNydHBfa2Rm
X2NsZWFyKHh0bl9oZHJfa2RmKTsKLSAgICAgIGlmIChzdGF0KSB7CiAgICAgICAgIC8qIHplcm9p
emUgdGVtcCBidWZmZXIgKi8KICAgICAgICAgb2N0ZXRfc3RyaW5nX3NldF90b196ZXJvKHRtcF9r
ZXksIE1BWF9TUlRQX0tFWV9MRU4pOwogICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2lu
aXRfZmFpbDsKLSAgICAgIH0KICAgICB9Ci0gIH0KLQotICAvKiBnZW5lcmF0ZSBhdXRoZW50aWNh
dGlvbiBrZXkgKi8KLSAgc3RhdCA9IHNydHBfa2RmX2dlbmVyYXRlKCZrZGYsIGxhYmVsX3J0cF9t
c2dfYXV0aCwKLQkJCSAgIHRtcF9rZXksIHNydHBfYXV0aF9nZXRfa2V5X2xlbmd0aChzZXNzaW9u
X2tleXMtPnJ0cF9hdXRoKSk7Ci0gIGlmIChzdGF0KSB7Ci0gICAgLyogemVyb2l6ZSB0ZW1wIGJ1
ZmZlciAqLwotICAgIG9jdGV0X3N0cmluZ19zZXRfdG9femVybyh0bXBfa2V5LCBNQVhfU1JUUF9L
RVlfTEVOKTsKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2luaXRfZmFpbDsKLSAgfQotICBk
ZWJ1Z19wcmludChtb2Rfc3J0cCwgImF1dGgga2V5OiAgICVzIiwKLQkgICAgICBzcnRwX29jdGV0
X3N0cmluZ19oZXhfc3RyaW5nKHRtcF9rZXksIAotCQkJCSAgICAgIHNydHBfYXV0aF9nZXRfa2V5
X2xlbmd0aChzZXNzaW9uX2tleXMtPnJ0cF9hdXRoKSkpOyAKLQotICAvKiBpbml0aWFsaXplIGF1
dGggZnVuY3Rpb24gKi8KLSAgc3RhdCA9IHNydHBfYXV0aF9pbml0KHNlc3Npb25fa2V5cy0+cnRw
X2F1dGgsIHRtcF9rZXkpOwotICBpZiAoc3RhdCkgewotICAgIC8qIHplcm9pemUgdGVtcCBidWZm
ZXIgKi8KLSAgICBvY3RldF9zdHJpbmdfc2V0X3RvX3plcm8odG1wX2tleSwgTUFYX1NSVFBfS0VZ
X0xFTik7Ci0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19pbml0X2ZhaWw7Ci0gIH0KLQotICAv
KgotICAgKiAuLi5ub3cgaW5pdGlhbGl6ZSBTUlRDUCBrZXlzCi0gICAqLwotCi0gIHJ0Y3BfYmFz
ZV9rZXlfbGVuID0gYmFzZV9rZXlfbGVuZ3RoKHNlc3Npb25fa2V5cy0+cnRjcF9jaXBoZXItPnR5
cGUsIHJ0Y3Bfa2V5bGVuKTsKLSAgcnRjcF9zYWx0X2xlbiA9IHJ0Y3Bfa2V5bGVuIC0gcnRjcF9i
YXNlX2tleV9sZW47Ci0gIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAicnRjcCBzYWx0IGxlbjogJWQi
LCBydGNwX3NhbHRfbGVuKTsKLSAgCi0gIC8qIGdlbmVyYXRlIGVuY3J5cHRpb24ga2V5ICAqLwot
ICBzdGF0ID0gc3J0cF9rZGZfZ2VuZXJhdGUoJmtkZiwgbGFiZWxfcnRjcF9lbmNyeXB0aW9uLCAK
LQkJCSAgIHRtcF9rZXksIHJ0Y3BfYmFzZV9rZXlfbGVuKTsKLSAgaWYgKHN0YXQpIHsKLSAgICAv
KiB6ZXJvaXplIHRlbXAgYnVmZmVyICovCi0gICAgb2N0ZXRfc3RyaW5nX3NldF90b196ZXJvKHRt
cF9rZXksIE1BWF9TUlRQX0tFWV9MRU4pOwotICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfaW5p
dF9mYWlsOwotICB9Ci0KLSAgLyogCi0gICAqIGlmIHRoZSBjaXBoZXIgaW4gdGhlIHNydHAgY29u
dGV4dCB1c2VzIGEgc2FsdCwgdGhlbiB3ZSBuZWVkCi0gICAqIHRvIGdlbmVyYXRlIHRoZSBzYWx0
IHZhbHVlCi0gICAqLwotICBpZiAocnRjcF9zYWx0X2xlbiA+IDApIHsKLSAgICBkZWJ1Z19wcmlu
dChtb2Rfc3J0cCwgImZvdW5kIHJ0Y3Bfc2FsdF9sZW4gPiAwLCBnZW5lcmF0aW5nIHJ0Y3Agc2Fs
dCIsCi0JCU5VTEwpOwotCi0gICAgLyogZ2VuZXJhdGUgZW5jcnlwdGlvbiBzYWx0LCBwdXQgYWZ0
ZXIgZW5jcnlwdGlvbiBrZXkgKi8KLSAgICBzdGF0ID0gc3J0cF9rZGZfZ2VuZXJhdGUoJmtkZiwg
bGFiZWxfcnRjcF9zYWx0LCAKLQkJCSAgICAgdG1wX2tleSArIHJ0Y3BfYmFzZV9rZXlfbGVuLCBy
dGNwX3NhbHRfbGVuKTsKLSAgICBpZiAoc3RhdCkgewotICAgICAgLyogemVyb2l6ZSB0ZW1wIGJ1
ZmZlciAqLwotICAgICAgb2N0ZXRfc3RyaW5nX3NldF90b196ZXJvKHRtcF9rZXksIE1BWF9TUlRQ
X0tFWV9MRU4pOwotICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19pbml0X2ZhaWw7Ci0gICAg
fQotICAgIG1lbWNweShzZXNzaW9uX2tleXMtPmNfc2FsdCwgdG1wX2tleSArIHJ0Y3BfYmFzZV9r
ZXlfbGVuLCBTUlRQX0FFQURfU0FMVF9MRU4pOwotICB9Ci0gIGRlYnVnX3ByaW50KG1vZF9zcnRw
LCAicnRjcCBjaXBoZXIga2V5OiAlcyIsIAotCSAgICAgIHNydHBfb2N0ZXRfc3RyaW5nX2hleF9z
dHJpbmcodG1wX2tleSwgcnRjcF9iYXNlX2tleV9sZW4pKTsgIAotICBpZiAocnRjcF9zYWx0X2xl
biA+IDApIHsKLSAgICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgInJ0Y3AgY2lwaGVyIHNhbHQ6ICVz
IiwKLQkJc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZyh0bXBfa2V5ICsgcnRjcF9iYXNlX2tl
eV9sZW4sIHJ0Y3Bfc2FsdF9sZW4pKTsKLSAgfQotCi0gIC8qIGluaXRpYWxpemUgY2lwaGVyICov
Ci0gIHN0YXQgPSBzcnRwX2NpcGhlcl9pbml0KHNlc3Npb25fa2V5cy0+cnRjcF9jaXBoZXIsIHRt
cF9rZXkpOwotICBpZiAoc3RhdCkgewotICAgIC8qIHplcm9pemUgdGVtcCBidWZmZXIgKi8KLSAg
ICBvY3RldF9zdHJpbmdfc2V0X3RvX3plcm8odG1wX2tleSwgTUFYX1NSVFBfS0VZX0xFTik7Ci0g
ICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19pbml0X2ZhaWw7Ci0gIH0KLQotICAvKiBnZW5lcmF0
ZSBhdXRoZW50aWNhdGlvbiBrZXkgKi8KLSAgc3RhdCA9IHNydHBfa2RmX2dlbmVyYXRlKCZrZGYs
IGxhYmVsX3J0Y3BfbXNnX2F1dGgsCi0JCQkgICB0bXBfa2V5LCBzcnRwX2F1dGhfZ2V0X2tleV9s
ZW5ndGgoc2Vzc2lvbl9rZXlzLT5ydGNwX2F1dGgpKTsKLSAgaWYgKHN0YXQpIHsKLSAgICAvKiB6
ZXJvaXplIHRlbXAgYnVmZmVyICovCi0gICAgb2N0ZXRfc3RyaW5nX3NldF90b196ZXJvKHRtcF9r
ZXksIE1BWF9TUlRQX0tFWV9MRU4pOwotICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfaW5pdF9m
YWlsOwotICB9Ci0KLSAgZGVidWdfcHJpbnQobW9kX3NydHAsICJydGNwIGF1dGgga2V5OiAgICVz
IiwKLQkgICAgICBzcnRwX29jdGV0X3N0cmluZ19oZXhfc3RyaW5nKHRtcF9rZXksIAotCQkgICAg
IHNydHBfYXV0aF9nZXRfa2V5X2xlbmd0aChzZXNzaW9uX2tleXMtPnJ0Y3BfYXV0aCkpKTsgCi0K
LSAgLyogaW5pdGlhbGl6ZSBhdXRoIGZ1bmN0aW9uICovCi0gIHN0YXQgPSBzcnRwX2F1dGhfaW5p
dChzZXNzaW9uX2tleXMtPnJ0Y3BfYXV0aCwgdG1wX2tleSk7Ci0gIGlmIChzdGF0KSB7Ci0gICAg
LyogemVyb2l6ZSB0ZW1wIGJ1ZmZlciAqLwotICAgIG9jdGV0X3N0cmluZ19zZXRfdG9femVybyh0
bXBfa2V5LCBNQVhfU1JUUF9LRVlfTEVOKTsKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2lu
aXRfZmFpbDsKLSAgfQogCi0gIC8qIGNsZWFyIG1lbW9yeSB0aGVuIHJldHVybiAqLwotICBzdGF0
ID0gc3J0cF9rZGZfY2xlYXIoJmtkZik7Ci0gIG9jdGV0X3N0cmluZ19zZXRfdG9femVybyh0bXBf
a2V5LCBNQVhfU1JUUF9LRVlfTEVOKTsKLSAgaWYgKHN0YXQpCi0gICAgcmV0dXJuIHNydHBfZXJy
X3N0YXR1c19pbml0X2ZhaWw7CisgICAgaWYgKHNlc3Npb25fa2V5cy0+cnRwX3h0bl9oZHJfY2lw
aGVyKSB7CisgICAgICAgIC8qIGdlbmVyYXRlIGV4dGVuc2lvbnMgaGVhZGVyIGVuY3J5cHRpb24g
a2V5ICAqLworICAgICAgICBpbnQgcnRwX3h0bl9oZHJfa2V5bGVuOworICAgICAgICBpbnQgcnRw
X3h0bl9oZHJfYmFzZV9rZXlfbGVuOworICAgICAgICBpbnQgcnRwX3h0bl9oZHJfc2FsdF9sZW47
CisgICAgICAgIHNydHBfa2RmX3QgdG1wX2tkZjsKKyAgICAgICAgc3J0cF9rZGZfdCAqeHRuX2hk
cl9rZGY7CisKKyAgICAgICAgaWYgKHNlc3Npb25fa2V5cy0+cnRwX3h0bl9oZHJfY2lwaGVyLT50
eXBlICE9CisgICAgICAgICAgICBzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXItPnR5cGUpIHsKKyAg
ICAgICAgICAgIC8qCisgICAgICAgICAgICAgKiBXaXRoIEdDTSBjaXBoZXJzLCB0aGUgaGVhZGVy
IGV4dGVuc2lvbnMgYXJlIHN0aWxsIGVuY3J5cHRlZCB1c2luZworICAgICAgICAgICAgICogdGhl
IGNvcnJlc3BvbmRpbmcgSUNNIGNpcGhlci4KKyAgICAgICAgICAgICAqIFNlZSBodHRwczovL3Rv
b2xzLmlldGYub3JnL2h0bWwvcmZjNzcxNCNzZWN0aW9uLTguMworICAgICAgICAgICAgICovCisg
ICAgICAgICAgICB1aW50OF90IHRtcF94dG5faGRyX2tleVtNQVhfU1JUUF9LRVlfTEVOXTsKKyAg
ICAgICAgICAgIHJ0cF94dG5faGRyX2tleWxlbiA9CisgICAgICAgICAgICAgICAgc3J0cF9jaXBo
ZXJfZ2V0X2tleV9sZW5ndGgoc2Vzc2lvbl9rZXlzLT5ydHBfeHRuX2hkcl9jaXBoZXIpOworICAg
ICAgICAgICAgcnRwX3h0bl9oZHJfYmFzZV9rZXlfbGVuID0gYmFzZV9rZXlfbGVuZ3RoKAorICAg
ICAgICAgICAgICAgIHNlc3Npb25fa2V5cy0+cnRwX3h0bl9oZHJfY2lwaGVyLT50eXBlLCBydHBf
eHRuX2hkcl9rZXlsZW4pOworICAgICAgICAgICAgcnRwX3h0bl9oZHJfc2FsdF9sZW4gPQorICAg
ICAgICAgICAgICAgIHJ0cF94dG5faGRyX2tleWxlbiAtIHJ0cF94dG5faGRyX2Jhc2Vfa2V5X2xl
bjsKKyAgICAgICAgICAgIGlmIChydHBfeHRuX2hkcl9zYWx0X2xlbiA+IHJ0cF9zYWx0X2xlbikg
eworICAgICAgICAgICAgICAgIHN3aXRjaCAoc2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVyLT50eXBl
LT5pZCkgeworICAgICAgICAgICAgICAgIGNhc2UgU1JUUF9BRVNfR0NNXzEyODoKKyAgICAgICAg
ICAgICAgICBjYXNlIFNSVFBfQUVTX0dDTV8yNTY6CisgICAgICAgICAgICAgICAgICAgIC8qCisg
ICAgICAgICAgICAgICAgICAgICAqIFRoZSBzaG9ydGVyIEdDTSBzYWx0IGlzIHBhZGRlZCB0byB0
aGUgcmVxdWlyZWQgSUNNIHNhbHQKKyAgICAgICAgICAgICAgICAgICAgICogbGVuZ3RoLgorICAg
ICAgICAgICAgICAgICAgICAgKi8KKyAgICAgICAgICAgICAgICAgICAgcnRwX3h0bl9oZHJfc2Fs
dF9sZW4gPSBydHBfc2FsdF9sZW47CisgICAgICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAg
ICAgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICAgICAgICAgIC8qIHplcm9pemUgdGVtcCBi
dWZmZXIgKi8KKyAgICAgICAgICAgICAgICAgICAgb2N0ZXRfc3RyaW5nX3NldF90b196ZXJvKHRt
cF9rZXksIE1BWF9TUlRQX0tFWV9MRU4pOworICAgICAgICAgICAgICAgICAgICByZXR1cm4gc3J0
cF9lcnJfc3RhdHVzX2JhZF9wYXJhbTsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9
CisgICAgICAgICAgICBtZW1zZXQodG1wX3h0bl9oZHJfa2V5LCAweDAsIE1BWF9TUlRQX0tFWV9M
RU4pOworICAgICAgICAgICAgbWVtY3B5KHRtcF94dG5faGRyX2tleSwga2V5LAorICAgICAgICAg
ICAgICAgICAgIChydHBfeHRuX2hkcl9iYXNlX2tleV9sZW4gKyBydHBfeHRuX2hkcl9zYWx0X2xl
bikpOworICAgICAgICAgICAgeHRuX2hkcl9rZGYgPSAmdG1wX2tkZjsKIAotICByZXR1cm4gc3J0
cF9lcnJfc3RhdHVzX29rOwotfQorLyogaW5pdGlhbGl6ZSBLREYgc3RhdGUgKi8KKyNpZiBkZWZp
bmVkKE9QRU5TU0wpICYmIGRlZmluZWQoT1BFTlNTTF9LREYpCisgICAgICAgICAgICBzdGF0ID0K
KyAgICAgICAgICAgICAgICBzcnRwX2tkZl9pbml0KHh0bl9oZHJfa2RmLCAoY29uc3QgdWludDhf
dCAqKXRtcF94dG5faGRyX2tleSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJ0cF94
dG5faGRyX2Jhc2Vfa2V5X2xlbiwgcnRwX3h0bl9oZHJfc2FsdF9sZW4pOworI2Vsc2UKKyAgICAg
ICAgICAgIHN0YXQgPSBzcnRwX2tkZl9pbml0KHh0bl9oZHJfa2RmLCAoY29uc3QgdWludDhfdCAq
KXRtcF94dG5faGRyX2tleSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGtkZl9r
ZXlsZW4pOworI2VuZGlmCisgICAgICAgICAgICBvY3RldF9zdHJpbmdfc2V0X3RvX3plcm8odG1w
X3h0bl9oZHJfa2V5LCBNQVhfU1JUUF9LRVlfTEVOKTsKKyAgICAgICAgICAgIGlmIChzdGF0KSB7
CisgICAgICAgICAgICAgICAgLyogemVyb2l6ZSB0ZW1wIGJ1ZmZlciAqLworICAgICAgICAgICAg
ICAgIG9jdGV0X3N0cmluZ19zZXRfdG9femVybyh0bXBfa2V5LCBNQVhfU1JUUF9LRVlfTEVOKTsK
KyAgICAgICAgICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2luaXRfZmFpbDsKKyAgICAg
ICAgICAgIH0KKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIC8qIFJldXNlIG1haW4gS0RG
LiAqLworICAgICAgICAgICAgcnRwX3h0bl9oZHJfa2V5bGVuID0gcnRwX2tleWxlbjsKKyAgICAg
ICAgICAgIHJ0cF94dG5faGRyX2Jhc2Vfa2V5X2xlbiA9IHJ0cF9iYXNlX2tleV9sZW47CisgICAg
ICAgICAgICBydHBfeHRuX2hkcl9zYWx0X2xlbiA9IHJ0cF9zYWx0X2xlbjsKKyAgICAgICAgICAg
IHh0bl9oZHJfa2RmID0gJmtkZjsKKyAgICAgICAgfQogCi1zcnRwX2Vycl9zdGF0dXNfdAotc3J0
cF9zdHJlYW1faW5pdChzcnRwX3N0cmVhbV9jdHhfdCAqc3J0cCwgCi0JCSAgY29uc3Qgc3J0cF9w
b2xpY3lfdCAqcCkgewotICBzcnRwX2Vycl9zdGF0dXNfdCBlcnI7CisgICAgICAgIHN0YXQgPSBz
cnRwX2tkZl9nZW5lcmF0ZSh4dG5faGRyX2tkZiwgbGFiZWxfcnRwX2hlYWRlcl9lbmNyeXB0aW9u
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG1wX2tleSwgcnRwX3h0bl9oZHJf
YmFzZV9rZXlfbGVuKTsKKyAgICAgICAgaWYgKHN0YXQpIHsKKyAgICAgICAgICAgIC8qIHplcm9p
emUgdGVtcCBidWZmZXIgKi8KKyAgICAgICAgICAgIG9jdGV0X3N0cmluZ19zZXRfdG9femVybyh0
bXBfa2V5LCBNQVhfU1JUUF9LRVlfTEVOKTsKKyAgICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9z
dGF0dXNfaW5pdF9mYWlsOworICAgICAgICB9CisgICAgICAgIGRlYnVnX3ByaW50KAorICAgICAg
ICAgICAgbW9kX3NydHAsICJleHRlbnNpb25zIGNpcGhlciBrZXk6ICVzIiwKKyAgICAgICAgICAg
IHNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcodG1wX2tleSwgcnRwX3h0bl9oZHJfYmFzZV9r
ZXlfbGVuKSk7CiAKLSAgIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAiaW5pdGlhbGl6aW5nIHN0cmVh
bSAoU1NSQzogMHglMDh4KSIsIAotCSAgICAgICBwLT5zc3JjLnZhbHVlKTsKKyAgICAgICAgLyoK
KyAgICAgICAgICogaWYgdGhlIGNpcGhlciBpbiB0aGUgc3J0cCBjb250ZXh0IHVzZXMgYSBzYWx0
LCB0aGVuIHdlIG5lZWQKKyAgICAgICAgICogdG8gZ2VuZXJhdGUgdGhlIHNhbHQgdmFsdWUKKyAg
ICAgICAgICovCisgICAgICAgIGlmIChydHBfeHRuX2hkcl9zYWx0X2xlbiA+IDApIHsKKyAgICAg
ICAgICAgIGRlYnVnX3ByaW50KG1vZF9zcnRwLAorICAgICAgICAgICAgICAgICAgICAgICAgImZv
dW5kIHJ0cF94dG5faGRyX3NhbHRfbGVuID4gMCwgZ2VuZXJhdGluZyBzYWx0IiwKKyAgICAgICAg
ICAgICAgICAgICAgICAgIE5VTEwpOworCisgICAgICAgICAgICAvKiBnZW5lcmF0ZSBlbmNyeXB0
aW9uIHNhbHQsIHB1dCBhZnRlciBlbmNyeXB0aW9uIGtleSAqLworICAgICAgICAgICAgc3RhdCA9
IHNydHBfa2RmX2dlbmVyYXRlKHh0bl9oZHJfa2RmLCBsYWJlbF9ydHBfaGVhZGVyX3NhbHQsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG1wX2tleSArIHJ0cF94dG5faGRy
X2Jhc2Vfa2V5X2xlbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBydHBf
eHRuX2hkcl9zYWx0X2xlbik7CisgICAgICAgICAgICBpZiAoc3RhdCkgeworICAgICAgICAgICAg
ICAgIC8qIHplcm9pemUgdGVtcCBidWZmZXIgKi8KKyAgICAgICAgICAgICAgICBvY3RldF9zdHJp
bmdfc2V0X3RvX3plcm8odG1wX2tleSwgTUFYX1NSVFBfS0VZX0xFTik7CisgICAgICAgICAgICAg
ICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19pbml0X2ZhaWw7CisgICAgICAgICAgICB9CisgICAg
ICAgIH0KKyAgICAgICAgaWYgKHJ0cF94dG5faGRyX3NhbHRfbGVuID4gMCkgeworICAgICAgICAg
ICAgZGVidWdfcHJpbnQoCisgICAgICAgICAgICAgICAgbW9kX3NydHAsICJleHRlbnNpb25zIGNp
cGhlciBzYWx0OiAlcyIsCisgICAgICAgICAgICAgICAgc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0
cmluZyh0bXBfa2V5ICsgcnRwX3h0bl9oZHJfYmFzZV9rZXlfbGVuLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcnRwX3h0bl9oZHJfc2FsdF9sZW4pKTsKKyAg
ICAgICAgfQogCi0gICAvKiBpbml0aWFsaXplIHJlcGxheSBkYXRhYmFzZSAqLwotICAgLyogd2lu
ZG93IHNpemUgTVVTVCBiZSBhdCBsZWFzdCA2NC4gIE1BWSBiZSBsYXJnZXIuICBWYWx1ZXMgbW9y
ZSB0aGFuCi0gICAgKiAyXjE1IGFyZW4ndCBtZWFuaW5nZnVsIGR1ZSB0byBob3cgZXh0ZW5kZWQg
c2VxdWVuY2UgbnVtYmVycyBhcmUKLSAgICAqIGNhbGN1bGF0ZWQuICAgTGV0IGEgd2luZG93IHNp
emUgb2YgMCBpbXBseSB0aGUgZGVmYXVsdCB2YWx1ZS4gKi8KKyAgICAgICAgLyogaW5pdGlhbGl6
ZSBleHRlbnNpb25zIGhlYWRlciBjaXBoZXIgKi8KKyAgICAgICAgc3RhdCA9IHNydHBfY2lwaGVy
X2luaXQoc2Vzc2lvbl9rZXlzLT5ydHBfeHRuX2hkcl9jaXBoZXIsIHRtcF9rZXkpOworICAgICAg
ICBpZiAoc3RhdCkgeworICAgICAgICAgICAgLyogemVyb2l6ZSB0ZW1wIGJ1ZmZlciAqLworICAg
ICAgICAgICAgb2N0ZXRfc3RyaW5nX3NldF90b196ZXJvKHRtcF9rZXksIE1BWF9TUlRQX0tFWV9M
RU4pOworICAgICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19pbml0X2ZhaWw7CisgICAg
ICAgIH0KIAotICAgaWYgKHAtPndpbmRvd19zaXplICE9IDAgJiYgKHAtPndpbmRvd19zaXplIDwg
NjQgfHwgcC0+d2luZG93X3NpemUgPj0gMHg4MDAwKSkKLSAgICAgcmV0dXJuIHNydHBfZXJyX3N0
YXR1c19iYWRfcGFyYW07CisgICAgICAgIGlmICh4dG5faGRyX2tkZiAhPSAma2RmKSB7CisgICAg
ICAgICAgICAvKiByZWxlYXNlIG1lbW9yeSBmb3IgY3VzdG9tIGhlYWRlciBleHRlbnNpb24gZW5j
cnlwdGlvbiBrZGYgKi8KKyAgICAgICAgICAgIHN0YXQgPSBzcnRwX2tkZl9jbGVhcih4dG5faGRy
X2tkZik7CisgICAgICAgICAgICBpZiAoc3RhdCkgeworICAgICAgICAgICAgICAgIC8qIHplcm9p
emUgdGVtcCBidWZmZXIgKi8KKyAgICAgICAgICAgICAgICBvY3RldF9zdHJpbmdfc2V0X3RvX3pl
cm8odG1wX2tleSwgTUFYX1NSVFBfS0VZX0xFTik7CisgICAgICAgICAgICAgICAgcmV0dXJuIHNy
dHBfZXJyX3N0YXR1c19pbml0X2ZhaWw7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICB9
CiAKLSAgIGlmIChwLT53aW5kb3dfc2l6ZSAhPSAwKQotICAgICBlcnIgPSBzcnRwX3JkYnhfaW5p
dCgmc3J0cC0+cnRwX3JkYngsIHAtPndpbmRvd19zaXplKTsKLSAgIGVsc2UKLSAgICAgZXJyID0g
c3J0cF9yZGJ4X2luaXQoJnNydHAtPnJ0cF9yZGJ4LCAxMjgpOwotICAgaWYgKGVycikgcmV0dXJu
IGVycjsKKyAgICAvKiBnZW5lcmF0ZSBhdXRoZW50aWNhdGlvbiBrZXkgKi8KKyAgICBzdGF0ID0g
c3J0cF9rZGZfZ2VuZXJhdGUoJmtkZiwgbGFiZWxfcnRwX21zZ19hdXRoLCB0bXBfa2V5LAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBzcnRwX2F1dGhfZ2V0X2tleV9sZW5ndGgoc2Vzc2lv
bl9rZXlzLT5ydHBfYXV0aCkpOworICAgIGlmIChzdGF0KSB7CisgICAgICAgIC8qIHplcm9pemUg
dGVtcCBidWZmZXIgKi8KKyAgICAgICAgb2N0ZXRfc3RyaW5nX3NldF90b196ZXJvKHRtcF9rZXks
IE1BWF9TUlRQX0tFWV9MRU4pOworICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2luaXRf
ZmFpbDsKKyAgICB9CisgICAgZGVidWdfcHJpbnQobW9kX3NydHAsICJhdXRoIGtleTogICAlcyIs
CisgICAgICAgICAgICAgICAgc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZygKKyAgICAgICAg
ICAgICAgICAgICAgdG1wX2tleSwgc3J0cF9hdXRoX2dldF9rZXlfbGVuZ3RoKHNlc3Npb25fa2V5
cy0+cnRwX2F1dGgpKSk7CiAKLSAgIC8qIHNldCB0aGUgU1NSQyB2YWx1ZSAqLwotICAgc3J0cC0+
c3NyYyA9IGh0b25sKHAtPnNzcmMudmFsdWUpOworICAgIC8qIGluaXRpYWxpemUgYXV0aCBmdW5j
dGlvbiAqLworICAgIHN0YXQgPSBzcnRwX2F1dGhfaW5pdChzZXNzaW9uX2tleXMtPnJ0cF9hdXRo
LCB0bXBfa2V5KTsKKyAgICBpZiAoc3RhdCkgeworICAgICAgICAvKiB6ZXJvaXplIHRlbXAgYnVm
ZmVyICovCisgICAgICAgIG9jdGV0X3N0cmluZ19zZXRfdG9femVybyh0bXBfa2V5LCBNQVhfU1JU
UF9LRVlfTEVOKTsKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19pbml0X2ZhaWw7Cisg
ICAgfQogCi0gICAvKiByZXNldCBwZW5kaW5nIFJPQyAqLwotICAgc3J0cC0+cGVuZGluZ19yb2Mg
PSAwOworICAgIC8qCisgICAgICogLi4ubm93IGluaXRpYWxpemUgU1JUQ1Aga2V5cworICAgICAq
LwogCi0gICAvKiBzZXQgdGhlIHNlY3VyaXR5IHNlcnZpY2UgZmxhZ3MgKi8KLSAgIHNydHAtPnJ0
cF9zZXJ2aWNlcyAgPSBwLT5ydHAuc2VjX3NlcnY7Ci0gICBzcnRwLT5ydGNwX3NlcnZpY2VzID0g
cC0+cnRjcC5zZWNfc2VydjsKKyAgICBydGNwX2Jhc2Vfa2V5X2xlbiA9CisgICAgICAgIGJhc2Vf
a2V5X2xlbmd0aChzZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyLT50eXBlLCBydGNwX2tleWxlbik7
CisgICAgcnRjcF9zYWx0X2xlbiA9IHJ0Y3Bfa2V5bGVuIC0gcnRjcF9iYXNlX2tleV9sZW47Cisg
ICAgZGVidWdfcHJpbnQobW9kX3NydHAsICJydGNwIHNhbHQgbGVuOiAlZCIsIHJ0Y3Bfc2FsdF9s
ZW4pOwogCi0gICAvKgotICAgICogc2V0IGRpcmVjdGlvbiB0byB1bmtub3duIC0gdGhpcyBmbGFn
IGdldHMgY2hlY2tlZCBpbiBzcnRwX3Byb3RlY3QoKSwKLSAgICAqIHNydHBfdW5wcm90ZWN0KCks
IHNydHBfcHJvdGVjdF9ydGNwKCksIGFuZCBzcnRwX3VucHJvdGVjdF9ydGNwKCksIGFuZCAKLSAg
ICAqIGdldHMgc2V0IGFwcHJvcHJpYXRlbHkgaWYgaXQgaXMgc2V0IHRvIHVua25vd24uCi0gICAg
Ki8KLSAgIHNydHAtPmRpcmVjdGlvbiA9IGRpcl91bmtub3duOwotCi0gICAvKiBpbml0aWFsaXpl
IFNSVENQIHJlcGxheSBkYXRhYmFzZSAqLwotICAgc3J0cF9yZGJfaW5pdCgmc3J0cC0+cnRjcF9y
ZGIpOwotCi0gICAvKiBpbml0aWFsaXplIGFsbG93X3JlcGVhdF90eCAqLwotICAgLyogZ3VhcmQg
YWdhaW5zdCB1bmluaXRpYWxpemVkIG1lbW9yeTogYWxsb3cgb25seSAwIG9yIDEgaGVyZSAqLwot
ICAgaWYgKHAtPmFsbG93X3JlcGVhdF90eCAhPSAwICYmIHAtPmFsbG93X3JlcGVhdF90eCAhPSAx
KSB7Ci0gICAgIHNydHBfcmRieF9kZWFsbG9jKCZzcnRwLT5ydHBfcmRieCk7Ci0gICAgIHJldHVy
biBzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtOwotICAgfQotICAgc3J0cC0+YWxsb3dfcmVwZWF0
X3R4ID0gcC0+YWxsb3dfcmVwZWF0X3R4OwotCi0gICAvKiBEQU0gLSBubyBSVENQIGtleSBsaW1p
dCBhdCBwcmVzZW50ICovCi0KLSAgIC8qIGluaXRpYWxpemUga2V5cyAqLwotICAgZXJyID0gc3J0
cF9zdHJlYW1faW5pdF9hbGxfbWFzdGVyX2tleXMoc3J0cCwgcC0+a2V5LCBwLT5rZXlzLCBwLT5u
dW1fbWFzdGVyX2tleXMpOwotICAgaWYgKGVycikgewotICAgICBzcnRwX3JkYnhfZGVhbGxvYygm
c3J0cC0+cnRwX3JkYngpOwotICAgICByZXR1cm4gZXJyOwotICAgfQotCi0gICAvKiAKLSAgICAq
IGlmIEVLVCBpcyBpbiB1c2UsIHRoZW4gaW5pdGlhbGl6ZSB0aGUgRUtUIGRhdGEgYXNzb2NpYXRl
ZCB3aXRoCi0gICAgKiB0aGUgc3RyZWFtCi0gICAgKi8KLSAgIGVyciA9IHNydHBfZWt0X3N0cmVh
bV9pbml0X2Zyb21fcG9saWN5KHNydHAtPmVrdCwgcC0+ZWt0KTsKLSAgIGlmIChlcnIpIHsKLSAg
ICAgc3J0cF9yZGJ4X2RlYWxsb2MoJnNydHAtPnJ0cF9yZGJ4KTsKLSAgICAgcmV0dXJuIGVycjsK
LSAgIH0KLQotICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsgIAotIH0KLQotCi0gLyoKLSAg
KiBzcnRwX2V2ZW50X3JlcG9ydGVyIGlzIGFuIGV2ZW50IGhhbmRsZXIgZnVuY3Rpb24gdGhhdCBt
ZXJlbHkKLSAgKiByZXBvcnRzIHRoZSBldmVudHMgdGhhdCBhcmUgcmVwb3J0ZWQgYnkgdGhlIGNh
bGxiYWNrcwotICAqLwotCi0gdm9pZAotIHNydHBfZXZlbnRfcmVwb3J0ZXIoc3J0cF9ldmVudF9k
YXRhX3QgKmRhdGEpIHsKLQotICAgc3J0cF9lcnJfcmVwb3J0KHNydHBfZXJyX2xldmVsX3dhcm5p
bmcsICJzcnRwOiBpbiBzdHJlYW0gMHgleDogIiwgCi0gICAgICAgICAgICAgICAgICAgZGF0YS0+
c3NyYyk7Ci0KLSAgIHN3aXRjaChkYXRhLT5ldmVudCkgewotICAgY2FzZSBldmVudF9zc3JjX2Nv
bGxpc2lvbjoKLSAgICAgc3J0cF9lcnJfcmVwb3J0KHNydHBfZXJyX2xldmVsX3dhcm5pbmcsICJc
dFNTUkMgY29sbGlzaW9uXG4iKTsKLSAgICAgYnJlYWs7Ci0gICBjYXNlIGV2ZW50X2tleV9zb2Z0
X2xpbWl0OgotICAgICBzcnRwX2Vycl9yZXBvcnQoc3J0cF9lcnJfbGV2ZWxfd2FybmluZywgIlx0
a2V5IHVzYWdlIHNvZnQgbGltaXQgcmVhY2hlZFxuIik7Ci0gICAgIGJyZWFrOwotICAgY2FzZSBl
dmVudF9rZXlfaGFyZF9saW1pdDoKLSAgICAgc3J0cF9lcnJfcmVwb3J0KHNydHBfZXJyX2xldmVs
X3dhcm5pbmcsICJcdGtleSB1c2FnZSBoYXJkIGxpbWl0IHJlYWNoZWRcbiIpOwotICAgICBicmVh
azsKLSAgIGNhc2UgZXZlbnRfcGFja2V0X2luZGV4X2xpbWl0OgotICAgICBzcnRwX2Vycl9yZXBv
cnQoc3J0cF9lcnJfbGV2ZWxfd2FybmluZywgIlx0cGFja2V0IGluZGV4IGxpbWl0IHJlYWNoZWRc
biIpOwotICAgICBicmVhazsKLSAgIGRlZmF1bHQ6Ci0gICAgIHNydHBfZXJyX3JlcG9ydChzcnRw
X2Vycl9sZXZlbF93YXJuaW5nLCAiXHR1bmtub3duIGV2ZW50IHJlcG9ydGVkIHRvIGhhbmRsZXJc
biIpOwotICAgfQotIH0KLQotIC8qCi0gICogc3J0cF9ldmVudF9oYW5kbGVyIGlzIGEgZ2xvYmFs
IHZhcmlhYmxlIGhvbGRpbmcgYSBwb2ludGVyIHRvIHRoZQotICAqIGV2ZW50IGhhbmRsZXIgZnVu
Y3Rpb247IHRoaXMgZnVuY3Rpb24gaXMgY2FsbGVkIGZvciBhbnkgdW5leHBlY3RlZAotICAqIGV2
ZW50IHRoYXQgbmVlZHMgdG8gYmUgaGFuZGxlZCBvdXQgb2YgdGhlIFNSVFAgZGF0YSBwYXRoLiAg
c2VlCi0gICogc3J0cF9ldmVudF90IGluIHNydHAuaCBmb3IgbW9yZSBpbmZvCi0gICoKLSAgKiBp
dCBpcyBva2F5IHRvIHNldCBzcnRwX2V2ZW50X2hhbmRsZXIgdG8gTlVMTCwgYnV0IHdlIHNldCAK
LSAgKiBpdCB0byB0aGUgc3J0cF9ldmVudF9yZXBvcnRlci4KLSAgKi8KLQotIHN0YXRpYyBzcnRw
X2V2ZW50X2hhbmRsZXJfZnVuY190ICpzcnRwX2V2ZW50X2hhbmRsZXIgPSBzcnRwX2V2ZW50X3Jl
cG9ydGVyOwotCi0gc3J0cF9lcnJfc3RhdHVzX3QKLSBzcnRwX2luc3RhbGxfZXZlbnRfaGFuZGxl
cihzcnRwX2V2ZW50X2hhbmRsZXJfZnVuY190IGZ1bmMpIHsKLQotICAgLyogCi0gICAgKiBub3Rl
IHRoYXQgd2UgYWNjZXB0IE5VTEwgYXJndW1lbnRzIGludGVudGlvbmFsbHkgLSBjYWxsaW5nIHRo
aXMKLSAgICAqIGZ1bmN0aW9uIHdpdGggYSBOVUxMIGFyZ3VtZW50cyByZW1vdmVzIGFuIGV2ZW50
IGhhbmRsZXIgdGhhdCdzCi0gICAgKiBiZWVuIHByZXZpb3VzbHkgaW5zdGFsbGVkCi0gICAgKi8K
KyAgICAvKiBnZW5lcmF0ZSBlbmNyeXB0aW9uIGtleSAgKi8KKyAgICBzdGF0ID0gc3J0cF9rZGZf
Z2VuZXJhdGUoJmtkZiwgbGFiZWxfcnRjcF9lbmNyeXB0aW9uLCB0bXBfa2V5LAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBydGNwX2Jhc2Vfa2V5X2xlbik7CisgICAgaWYgKHN0YXQpIHsK
KyAgICAgICAgLyogemVyb2l6ZSB0ZW1wIGJ1ZmZlciAqLworICAgICAgICBvY3RldF9zdHJpbmdf
c2V0X3RvX3plcm8odG1wX2tleSwgTUFYX1NSVFBfS0VZX0xFTik7CisgICAgICAgIHJldHVybiBz
cnRwX2Vycl9zdGF0dXNfaW5pdF9mYWlsOworICAgIH0KIAotICAgLyogc2V0IGdsb2JhbCBldmVu
dCBoYW5kbGluZyBmdW5jdGlvbiAqLwotICAgc3J0cF9ldmVudF9oYW5kbGVyID0gZnVuYzsKLSAg
IHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7Ci0gfQorICAgIC8qCisgICAgICogaWYgdGhlIGNp
cGhlciBpbiB0aGUgc3J0cCBjb250ZXh0IHVzZXMgYSBzYWx0LCB0aGVuIHdlIG5lZWQKKyAgICAg
KiB0byBnZW5lcmF0ZSB0aGUgc2FsdCB2YWx1ZQorICAgICAqLworICAgIGlmIChydGNwX3NhbHRf
bGVuID4gMCkgeworICAgICAgICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgImZvdW5kIHJ0Y3Bfc2Fs
dF9sZW4gPiAwLCBnZW5lcmF0aW5nIHJ0Y3Agc2FsdCIsCisgICAgICAgICAgICAgICAgICAgIE5V
TEwpOworCisgICAgICAgIC8qIGdlbmVyYXRlIGVuY3J5cHRpb24gc2FsdCwgcHV0IGFmdGVyIGVu
Y3J5cHRpb24ga2V5ICovCisgICAgICAgIHN0YXQgPSBzcnRwX2tkZl9nZW5lcmF0ZSgma2RmLCBs
YWJlbF9ydGNwX3NhbHQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0bXBfa2V5
ICsgcnRjcF9iYXNlX2tleV9sZW4sIHJ0Y3Bfc2FsdF9sZW4pOworICAgICAgICBpZiAoc3RhdCkg
eworICAgICAgICAgICAgLyogemVyb2l6ZSB0ZW1wIGJ1ZmZlciAqLworICAgICAgICAgICAgb2N0
ZXRfc3RyaW5nX3NldF90b196ZXJvKHRtcF9rZXksIE1BWF9TUlRQX0tFWV9MRU4pOworICAgICAg
ICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19pbml0X2ZhaWw7CisgICAgICAgIH0KKyAgICAg
ICAgbWVtY3B5KHNlc3Npb25fa2V5cy0+Y19zYWx0LCB0bXBfa2V5ICsgcnRjcF9iYXNlX2tleV9s
ZW4sCisgICAgICAgICAgICAgICBTUlRQX0FFQURfU0FMVF9MRU4pOworICAgIH0KKyAgICBkZWJ1
Z19wcmludChtb2Rfc3J0cCwgInJ0Y3AgY2lwaGVyIGtleTogJXMiLAorICAgICAgICAgICAgICAg
IHNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcodG1wX2tleSwgcnRjcF9iYXNlX2tleV9sZW4p
KTsKKyAgICBpZiAocnRjcF9zYWx0X2xlbiA+IDApIHsKKyAgICAgICAgZGVidWdfcHJpbnQobW9k
X3NydHAsICJydGNwIGNpcGhlciBzYWx0OiAlcyIsCisgICAgICAgICAgICAgICAgICAgIHNydHBf
b2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcodG1wX2tleSArIHJ0Y3BfYmFzZV9rZXlfbGVuLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJ0Y3Bfc2FsdF9s
ZW4pKTsKKyAgICB9CiAKKyAgICAvKiBpbml0aWFsaXplIGNpcGhlciAqLworICAgIHN0YXQgPSBz
cnRwX2NpcGhlcl9pbml0KHNlc3Npb25fa2V5cy0+cnRjcF9jaXBoZXIsIHRtcF9rZXkpOworICAg
IGlmIChzdGF0KSB7CisgICAgICAgIC8qIHplcm9pemUgdGVtcCBidWZmZXIgKi8KKyAgICAgICAg
b2N0ZXRfc3RyaW5nX3NldF90b196ZXJvKHRtcF9rZXksIE1BWF9TUlRQX0tFWV9MRU4pOworICAg
ICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2luaXRfZmFpbDsKKyAgICB9CiAKLS8qCi0gKiBD
aGVjayBpZiB0aGUgZ2l2ZW4gZXh0ZW5zaW9uIGhlYWRlciBpZCBpcyAvIHNob3VsZCBiZSBlbmNy
eXB0ZWQuCi0gKiBSZXR1cm5zIDEgaWYgeWVzLCBvdGhlcndpc2UgMC4KLSAqLwotc3RhdGljIGlu
dAotc3J0cF9wcm90ZWN0X2V4dGVuc2lvbl9oZWFkZXIoc3J0cF9zdHJlYW1fY3R4X3QgKnN0cmVh
bSwgaW50IGlkKSB7Ci0gIGludCogZW5jX3h0bl9oZHIgPSBzdHJlYW0tPmVuY194dG5faGRyOwot
ICBpbnQgY291bnQgPSBzdHJlYW0tPmVuY194dG5faGRyX2NvdW50OworICAgIC8qIGdlbmVyYXRl
IGF1dGhlbnRpY2F0aW9uIGtleSAqLworICAgIHN0YXQgPSBzcnRwX2tkZl9nZW5lcmF0ZSgma2Rm
LCBsYWJlbF9ydGNwX21zZ19hdXRoLCB0bXBfa2V5LAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBzcnRwX2F1dGhfZ2V0X2tleV9sZW5ndGgoc2Vzc2lvbl9rZXlzLT5ydGNwX2F1dGgpKTsK
KyAgICBpZiAoc3RhdCkgeworICAgICAgICAvKiB6ZXJvaXplIHRlbXAgYnVmZmVyICovCisgICAg
ICAgIG9jdGV0X3N0cmluZ19zZXRfdG9femVybyh0bXBfa2V5LCBNQVhfU1JUUF9LRVlfTEVOKTsK
KyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19pbml0X2ZhaWw7CisgICAgfQogCi0gIGlm
ICghZW5jX3h0bl9oZHIgfHwgY291bnQgPD0gMCkgewotICAgIHJldHVybiAwOwotICB9CisgICAg
ZGVidWdfcHJpbnQoCisgICAgICAgIG1vZF9zcnRwLCAicnRjcCBhdXRoIGtleTogICAlcyIsCisg
ICAgICAgIHNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcoCisgICAgICAgICAgICB0bXBfa2V5
LCBzcnRwX2F1dGhfZ2V0X2tleV9sZW5ndGgoc2Vzc2lvbl9rZXlzLT5ydGNwX2F1dGgpKSk7CiAK
LSAgd2hpbGUgKGNvdW50ID4gMCkgewotICAgIGlmICgqZW5jX3h0bl9oZHIgPT0gaWQpIHsKLSAg
ICAgIHJldHVybiAxOworICAgIC8qIGluaXRpYWxpemUgYXV0aCBmdW5jdGlvbiAqLworICAgIHN0
YXQgPSBzcnRwX2F1dGhfaW5pdChzZXNzaW9uX2tleXMtPnJ0Y3BfYXV0aCwgdG1wX2tleSk7Cisg
ICAgaWYgKHN0YXQpIHsKKyAgICAgICAgLyogemVyb2l6ZSB0ZW1wIGJ1ZmZlciAqLworICAgICAg
ICBvY3RldF9zdHJpbmdfc2V0X3RvX3plcm8odG1wX2tleSwgTUFYX1NSVFBfS0VZX0xFTik7Cisg
ICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfaW5pdF9mYWlsOwogICAgIH0KIAotICAgIGVu
Y194dG5faGRyKys7Ci0gICAgY291bnQtLTsKLSAgfQotICByZXR1cm4gMDsKKyAgICAvKiBjbGVh
ciBtZW1vcnkgdGhlbiByZXR1cm4gKi8KKyAgICBzdGF0ID0gc3J0cF9rZGZfY2xlYXIoJmtkZik7
CisgICAgb2N0ZXRfc3RyaW5nX3NldF90b196ZXJvKHRtcF9rZXksIE1BWF9TUlRQX0tFWV9MRU4p
OworICAgIGlmIChzdGF0KQorICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2luaXRfZmFp
bDsKKworICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAKK3NydHBfZXJyX3N0YXR1
c190IHNydHBfc3RyZWFtX2luaXQoc3J0cF9zdHJlYW1fY3R4X3QgKnNydHAsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHNydHBfcG9saWN5X3QgKnApCit7CisgICAg
c3J0cF9lcnJfc3RhdHVzX3QgZXJyOworCisgICAgZGVidWdfcHJpbnQobW9kX3NydHAsICJpbml0
aWFsaXppbmcgc3RyZWFtIChTU1JDOiAweCUwOHgpIiwgcC0+c3NyYy52YWx1ZSk7CisKKyAgICAv
KiBpbml0aWFsaXplIHJlcGxheSBkYXRhYmFzZSAqLworICAgIC8qCisgICAgICogd2luZG93IHNp
emUgTVVTVCBiZSBhdCBsZWFzdCA2NC4gIE1BWSBiZSBsYXJnZXIuICBWYWx1ZXMgbW9yZSB0aGFu
CisgICAgICogMl4xNSBhcmVuJ3QgbWVhbmluZ2Z1bCBkdWUgdG8gaG93IGV4dGVuZGVkIHNlcXVl
bmNlIG51bWJlcnMgYXJlCisgICAgICogY2FsY3VsYXRlZC4KKyAgICAgKiBMZXQgYSB3aW5kb3cg
c2l6ZSBvZiAwIGltcGx5IHRoZSBkZWZhdWx0IHZhbHVlLgorICAgICAqLworCisgICAgaWYgKHAt
PndpbmRvd19zaXplICE9IDAgJiYKKyAgICAgICAgKHAtPndpbmRvd19zaXplIDwgNjQgfHwgcC0+
d2luZG93X3NpemUgPj0gMHg4MDAwKSkKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19i
YWRfcGFyYW07CisKKyAgICBpZiAocC0+d2luZG93X3NpemUgIT0gMCkKKyAgICAgICAgZXJyID0g
c3J0cF9yZGJ4X2luaXQoJnNydHAtPnJ0cF9yZGJ4LCBwLT53aW5kb3dfc2l6ZSk7CisgICAgZWxz
ZQorICAgICAgICBlcnIgPSBzcnRwX3JkYnhfaW5pdCgmc3J0cC0+cnRwX3JkYngsIDEyOCk7Cisg
ICAgaWYgKGVycikKKyAgICAgICAgcmV0dXJuIGVycjsKKworICAgIC8qIHNldCB0aGUgU1NSQyB2
YWx1ZSAqLworICAgIHNydHAtPnNzcmMgPSBodG9ubChwLT5zc3JjLnZhbHVlKTsKKworICAgIC8q
IHJlc2V0IHBlbmRpbmcgUk9DICovCisgICAgc3J0cC0+cGVuZGluZ19yb2MgPSAwOworCisgICAg
Lyogc2V0IHRoZSBzZWN1cml0eSBzZXJ2aWNlIGZsYWdzICovCisgICAgc3J0cC0+cnRwX3NlcnZp
Y2VzID0gcC0+cnRwLnNlY19zZXJ2OworICAgIHNydHAtPnJ0Y3Bfc2VydmljZXMgPSBwLT5ydGNw
LnNlY19zZXJ2OworCisgICAgLyoKKyAgICAgKiBzZXQgZGlyZWN0aW9uIHRvIHVua25vd24gLSB0
aGlzIGZsYWcgZ2V0cyBjaGVja2VkIGluIHNydHBfcHJvdGVjdCgpLAorICAgICAqIHNydHBfdW5w
cm90ZWN0KCksIHNydHBfcHJvdGVjdF9ydGNwKCksIGFuZCBzcnRwX3VucHJvdGVjdF9ydGNwKCks
IGFuZAorICAgICAqIGdldHMgc2V0IGFwcHJvcHJpYXRlbHkgaWYgaXQgaXMgc2V0IHRvIHVua25v
d24uCisgICAgICovCisgICAgc3J0cC0+ZGlyZWN0aW9uID0gZGlyX3Vua25vd247CisKKyAgICAv
KiBpbml0aWFsaXplIFNSVENQIHJlcGxheSBkYXRhYmFzZSAqLworICAgIHNydHBfcmRiX2luaXQo
JnNydHAtPnJ0Y3BfcmRiKTsKKworICAgIC8qIGluaXRpYWxpemUgYWxsb3dfcmVwZWF0X3R4ICov
CisgICAgLyogZ3VhcmQgYWdhaW5zdCB1bmluaXRpYWxpemVkIG1lbW9yeTogYWxsb3cgb25seSAw
IG9yIDEgaGVyZSAqLworICAgIGlmIChwLT5hbGxvd19yZXBlYXRfdHggIT0gMCAmJiBwLT5hbGxv
d19yZXBlYXRfdHggIT0gMSkgeworICAgICAgICBzcnRwX3JkYnhfZGVhbGxvYygmc3J0cC0+cnRw
X3JkYngpOworICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJhbTsKKyAgICB9
CisgICAgc3J0cC0+YWxsb3dfcmVwZWF0X3R4ID0gcC0+YWxsb3dfcmVwZWF0X3R4OworCisgICAg
LyogREFNIC0gbm8gUlRDUCBrZXkgbGltaXQgYXQgcHJlc2VudCAqLworCisgICAgLyogaW5pdGlh
bGl6ZSBrZXlzICovCisgICAgZXJyID0gc3J0cF9zdHJlYW1faW5pdF9hbGxfbWFzdGVyX2tleXMo
c3J0cCwgcC0+a2V5LCBwLT5rZXlzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHAtPm51bV9tYXN0ZXJfa2V5cyk7CisgICAgaWYgKGVycikgeworICAgICAgICBz
cnRwX3JkYnhfZGVhbGxvYygmc3J0cC0+cnRwX3JkYngpOworICAgICAgICByZXR1cm4gZXJyOwor
ICAgIH0KKworICAgIC8qCisgICAgICogaWYgRUtUIGlzIGluIHVzZSwgdGhlbiBpbml0aWFsaXpl
IHRoZSBFS1QgZGF0YSBhc3NvY2lhdGVkIHdpdGgKKyAgICAgKiB0aGUgc3RyZWFtCisgICAgICov
CisgICAgZXJyID0gc3J0cF9la3Rfc3RyZWFtX2luaXRfZnJvbV9wb2xpY3koc3J0cC0+ZWt0LCBw
LT5la3QpOworICAgIGlmIChlcnIpIHsKKyAgICAgICAgc3J0cF9yZGJ4X2RlYWxsb2MoJnNydHAt
PnJ0cF9yZGJ4KTsKKyAgICAgICAgcmV0dXJuIGVycjsKKyAgICB9CisKKyAgICByZXR1cm4gc3J0
cF9lcnJfc3RhdHVzX29rOworfQogCiAvKgotICogZXh0ZW5zaW9ucyBoZWFkZXIgZW5jcnlwdGlv
biBSRkMgNjkwNAorICogc3J0cF9ldmVudF9yZXBvcnRlciBpcyBhbiBldmVudCBoYW5kbGVyIGZ1
bmN0aW9uIHRoYXQgbWVyZWx5CisgKiByZXBvcnRzIHRoZSBldmVudHMgdGhhdCBhcmUgcmVwb3J0
ZWQgYnkgdGhlIGNhbGxiYWNrcwogICovCi1zdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3QKLXNydHBf
cHJvY2Vzc19oZWFkZXJfZW5jcnlwdGlvbihzcnRwX3N0cmVhbV9jdHhfdCAqc3RyZWFtLAotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfaGRyX3h0bmRfdCAqeHRuX2hkciwKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcnRwX3Nlc3Npb25fa2V5c190ICpzZXNzaW9u
X2tleXMpIHsKLSAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVzOwotICB1aW50OF90IGtleXN0cmVh
bVsyNTddOyAgLyogTWF4aW11bSAyIGJ5dGVzIGhlYWRlciArIDI1NSBieXRlcyBkYXRhLiAqLwot
ICBpbnQga2V5c3RyZWFtX3BvczsKLSAgdWludDhfdCogeHRuX2hkcl9kYXRhID0gKCh1aW50OF90
ICopeHRuX2hkcikgKyBvY3RldHNfaW5fcnRwX2V4dG5faGRyOwotICB1aW50OF90KiB4dG5faGRy
X2VuZCA9IHh0bl9oZHJfZGF0YSArIChudG9ocyh4dG5faGRyLT5sZW5ndGgpICogc2l6ZW9mKHVp
bnQzMl90KSk7Ci0KLSAgaWYgKG50b2hzKHh0bl9oZHItPnByb2ZpbGVfc3BlY2lmaWMpID09IDB4
YmVkZSkgewotICAgIC8qIFJGQyA1Mjg1LCBzZWN0aW9uIDQuMi4gT25lLUJ5dGUgSGVhZGVyICov
Ci0gICAgd2hpbGUgKHh0bl9oZHJfZGF0YSA8IHh0bl9oZHJfZW5kKSB7Ci0gICAgICB1aW50OF90
IHhpZCA9ICgqeHRuX2hkcl9kYXRhICYgMHhmMCkgPj4gNDsKLSAgICAgIHVuc2lnbmVkIGludCB4
bGVuID0gKCp4dG5faGRyX2RhdGEgJiAweDBmKSArIDE7Ci0gICAgICB1aW50MzJfdCB4bGVuX3dp
dGhfaGVhZGVyID0gMSt4bGVuOwotICAgICAgeHRuX2hkcl9kYXRhKys7Ci0KLSAgICAgIGlmICh4
dG5faGRyX2RhdGEgKyB4bGVuID4geHRuX2hkcl9lbmQpCi0gICAgICAgIHJldHVybiBzcnRwX2Vy
cl9zdGF0dXNfcGFyc2VfZXJyOwogCi0gICAgICBpZiAoeGlkID09IDE1KSB7Ci0gICAgICAgIC8q
IGZvdW5kIGhlYWRlciAxNSwgc3RvcCBmdXJ0aGVyIHByb2Nlc3NpbmcuICovCit2b2lkIHNydHBf
ZXZlbnRfcmVwb3J0ZXIoc3J0cF9ldmVudF9kYXRhX3QgKmRhdGEpCit7CisgICAgc3J0cF9lcnJf
cmVwb3J0KHNydHBfZXJyX2xldmVsX3dhcm5pbmcsICJzcnRwOiBpbiBzdHJlYW0gMHgleDogIiwK
KyAgICAgICAgICAgICAgICAgICAgZGF0YS0+c3NyYyk7CisKKyAgICBzd2l0Y2ggKGRhdGEtPmV2
ZW50KSB7CisgICAgY2FzZSBldmVudF9zc3JjX2NvbGxpc2lvbjoKKyAgICAgICAgc3J0cF9lcnJf
cmVwb3J0KHNydHBfZXJyX2xldmVsX3dhcm5pbmcsICJcdFNTUkMgY29sbGlzaW9uXG4iKTsKKyAg
ICAgICAgYnJlYWs7CisgICAgY2FzZSBldmVudF9rZXlfc29mdF9saW1pdDoKKyAgICAgICAgc3J0
cF9lcnJfcmVwb3J0KHNydHBfZXJyX2xldmVsX3dhcm5pbmcsCisgICAgICAgICAgICAgICAgICAg
ICAgICAiXHRrZXkgdXNhZ2Ugc29mdCBsaW1pdCByZWFjaGVkXG4iKTsKKyAgICAgICAgYnJlYWs7
CisgICAgY2FzZSBldmVudF9rZXlfaGFyZF9saW1pdDoKKyAgICAgICAgc3J0cF9lcnJfcmVwb3J0
KHNydHBfZXJyX2xldmVsX3dhcm5pbmcsCisgICAgICAgICAgICAgICAgICAgICAgICAiXHRrZXkg
dXNhZ2UgaGFyZCBsaW1pdCByZWFjaGVkXG4iKTsKICAgICAgICAgYnJlYWs7Ci0gICAgICB9Cisg
ICAgY2FzZSBldmVudF9wYWNrZXRfaW5kZXhfbGltaXQ6CisgICAgICAgIHNydHBfZXJyX3JlcG9y
dChzcnRwX2Vycl9sZXZlbF93YXJuaW5nLAorICAgICAgICAgICAgICAgICAgICAgICAgIlx0cGFj
a2V0IGluZGV4IGxpbWl0IHJlYWNoZWRcbiIpOworICAgICAgICBicmVhazsKKyAgICBkZWZhdWx0
OgorICAgICAgICBzcnRwX2Vycl9yZXBvcnQoc3J0cF9lcnJfbGV2ZWxfd2FybmluZywKKyAgICAg
ICAgICAgICAgICAgICAgICAgICJcdHVua25vd24gZXZlbnQgcmVwb3J0ZWQgdG8gaGFuZGxlclxu
Iik7CisgICAgfQorfQogCi0gICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9vdXRwdXQoc2Vzc2lv
bl9rZXlzLT5ydHBfeHRuX2hkcl9jaXBoZXIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAga2V5c3RyZWFtLCAmeGxlbl93aXRoX2hlYWRlcik7Ci0gICAgICBpZiAoc3RhdHVzKQot
ICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2NpcGhlcl9mYWlsOworLyoKKyAqIHNydHBf
ZXZlbnRfaGFuZGxlciBpcyBhIGdsb2JhbCB2YXJpYWJsZSBob2xkaW5nIGEgcG9pbnRlciB0byB0
aGUKKyAqIGV2ZW50IGhhbmRsZXIgZnVuY3Rpb247IHRoaXMgZnVuY3Rpb24gaXMgY2FsbGVkIGZv
ciBhbnkgdW5leHBlY3RlZAorICogZXZlbnQgdGhhdCBuZWVkcyB0byBiZSBoYW5kbGVkIG91dCBv
ZiB0aGUgU1JUUCBkYXRhIHBhdGguICBzZWUKKyAqIHNydHBfZXZlbnRfdCBpbiBzcnRwLmggZm9y
IG1vcmUgaW5mbworICoKKyAqIGl0IGlzIG9rYXkgdG8gc2V0IHNydHBfZXZlbnRfaGFuZGxlciB0
byBOVUxMLCBidXQgd2Ugc2V0CisgKiBpdCB0byB0aGUgc3J0cF9ldmVudF9yZXBvcnRlci4KKyAq
LworCitzdGF0aWMgc3J0cF9ldmVudF9oYW5kbGVyX2Z1bmNfdCAqc3J0cF9ldmVudF9oYW5kbGVy
ID0gc3J0cF9ldmVudF9yZXBvcnRlcjsKKworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9pbnN0YWxs
X2V2ZW50X2hhbmRsZXIoc3J0cF9ldmVudF9oYW5kbGVyX2Z1bmNfdCBmdW5jKQoreworICAgIC8q
CisgICAgICogbm90ZSB0aGF0IHdlIGFjY2VwdCBOVUxMIGFyZ3VtZW50cyBpbnRlbnRpb25hbGx5
IC0gY2FsbGluZyB0aGlzCisgICAgICogZnVuY3Rpb24gd2l0aCBhIE5VTEwgYXJndW1lbnRzIHJl
bW92ZXMgYW4gZXZlbnQgaGFuZGxlciB0aGF0J3MKKyAgICAgKiBiZWVuIHByZXZpb3VzbHkgaW5z
dGFsbGVkCisgICAgICovCisKKyAgICAvKiBzZXQgZ2xvYmFsIGV2ZW50IGhhbmRsaW5nIGZ1bmN0
aW9uICovCisgICAgc3J0cF9ldmVudF9oYW5kbGVyID0gZnVuYzsKKyAgICByZXR1cm4gc3J0cF9l
cnJfc3RhdHVzX29rOworfQorCisvKgorICogQ2hlY2sgaWYgdGhlIGdpdmVuIGV4dGVuc2lvbiBo
ZWFkZXIgaWQgaXMgLyBzaG91bGQgYmUgZW5jcnlwdGVkLgorICogUmV0dXJucyAxIGlmIHllcywg
b3RoZXJ3aXNlIDAuCisgKi8KK3N0YXRpYyBpbnQgc3J0cF9wcm90ZWN0X2V4dGVuc2lvbl9oZWFk
ZXIoc3J0cF9zdHJlYW1fY3R4X3QgKnN0cmVhbSwgaW50IGlkKQoreworICAgIGludCAqZW5jX3h0
bl9oZHIgPSBzdHJlYW0tPmVuY194dG5faGRyOworICAgIGludCBjb3VudCA9IHN0cmVhbS0+ZW5j
X3h0bl9oZHJfY291bnQ7CiAKLSAgICAgIGlmIChzcnRwX3Byb3RlY3RfZXh0ZW5zaW9uX2hlYWRl
cihzdHJlYW0sIHhpZCkpIHsKLSAgICAgICAga2V5c3RyZWFtX3BvcyA9IDE7Ci0gICAgICAgIHdo
aWxlICh4bGVuID4gMCkgewotICAgICAgICAgICp4dG5faGRyX2RhdGEgXj0ga2V5c3RyZWFtW2tl
eXN0cmVhbV9wb3MrK107Ci0gICAgICAgICAgeHRuX2hkcl9kYXRhKys7Ci0gICAgICAgICAgeGxl
bi0tOworICAgIGlmICghZW5jX3h0bl9oZHIgfHwgY291bnQgPD0gMCkgeworICAgICAgICByZXR1
cm4gMDsKKyAgICB9CisKKyAgICB3aGlsZSAoY291bnQgPiAwKSB7CisgICAgICAgIGlmICgqZW5j
X3h0bl9oZHIgPT0gaWQpIHsKKyAgICAgICAgICAgIHJldHVybiAxOwogICAgICAgICB9Ci0gICAg
ICB9IGVsc2UgewotICAgICAgICB4dG5faGRyX2RhdGEgKz0geGxlbjsKLSAgICAgIH0KLQotICAg
ICAgLyogc2tpcCBwYWRkaW5nIGJ5dGVzLiAqLwotICAgICAgd2hpbGUgKHh0bl9oZHJfZGF0YSA8
IHh0bl9oZHJfZW5kICYmICp4dG5faGRyX2RhdGEgPT0gMCkgewotICAgICAgICB4dG5faGRyX2Rh
dGErKzsKLSAgICAgIH0KLSAgICB9Ci0gIH0gZWxzZSBpZiAoKG50b2hzKHh0bl9oZHItPnByb2Zp
bGVfc3BlY2lmaWMpICYgMHgxZmZmKSA9PSAweDEwMCkgewotICAgIC8qIFJGQyA1Mjg1LCBzZWN0
aW9uIDQuMy4gVHdvLUJ5dGUgSGVhZGVyICovCi0gICAgd2hpbGUgKHh0bl9oZHJfZGF0YSArIDEg
PCB4dG5faGRyX2VuZCkgewotICAgICAgdWludDhfdCB4aWQgPSAqeHRuX2hkcl9kYXRhOwotICAg
ICAgdW5zaWduZWQgaW50IHhsZW4gPSAqKHh0bl9oZHJfZGF0YSsxKTsKLSAgICAgIHVpbnQzMl90
IHhsZW5fd2l0aF9oZWFkZXIgPSAyK3hsZW47Ci0gICAgICB4dG5faGRyX2RhdGEgKz0gMjsKLQot
ICAgICAgaWYgKHh0bl9oZHJfZGF0YSArIHhsZW4gPiB4dG5faGRyX2VuZCkKLSAgICAgICAgcmV0
dXJuIHNydHBfZXJyX3N0YXR1c19wYXJzZV9lcnI7CiAKLSAgICAgIHN0YXR1cyA9IHNydHBfY2lw
aGVyX291dHB1dChzZXNzaW9uX2tleXMtPnJ0cF94dG5faGRyX2NpcGhlciwKLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBrZXlzdHJlYW0sICZ4bGVuX3dpdGhfaGVhZGVyKTsKLSAg
ICAgIGlmIChzdGF0dXMpCi0gICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfY2lwaGVyX2Zh
aWw7CisgICAgICAgIGVuY194dG5faGRyKys7CisgICAgICAgIGNvdW50LS07CisgICAgfQorICAg
IHJldHVybiAwOworfQorCisvKgorICogZXh0ZW5zaW9ucyBoZWFkZXIgZW5jcnlwdGlvbiBSRkMg
NjkwNAorICovCitzdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9wcm9jZXNzX2hlYWRlcl9l
bmNyeXB0aW9uKAorICAgIHNydHBfc3RyZWFtX2N0eF90ICpzdHJlYW0sCisgICAgc3J0cF9oZHJf
eHRuZF90ICp4dG5faGRyLAorICAgIHNydHBfc2Vzc2lvbl9rZXlzX3QgKnNlc3Npb25fa2V5cykK
K3sKKyAgICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7CisgICAgdWludDhfdCBrZXlzdHJlYW1b
MjU3XTsgLyogTWF4aW11bSAyIGJ5dGVzIGhlYWRlciArIDI1NSBieXRlcyBkYXRhLiAqLworICAg
IGludCBrZXlzdHJlYW1fcG9zOworICAgIHVpbnQ4X3QgKnh0bl9oZHJfZGF0YSA9ICgodWludDhf
dCAqKXh0bl9oZHIpICsgb2N0ZXRzX2luX3J0cF9leHRuX2hkcjsKKyAgICB1aW50OF90ICp4dG5f
aGRyX2VuZCA9CisgICAgICAgIHh0bl9oZHJfZGF0YSArIChudG9ocyh4dG5faGRyLT5sZW5ndGgp
ICogc2l6ZW9mKHVpbnQzMl90KSk7CisKKyAgICBpZiAobnRvaHMoeHRuX2hkci0+cHJvZmlsZV9z
cGVjaWZpYykgPT0gMHhiZWRlKSB7CisgICAgICAgIC8qIFJGQyA1Mjg1LCBzZWN0aW9uIDQuMi4g
T25lLUJ5dGUgSGVhZGVyICovCisgICAgICAgIHdoaWxlICh4dG5faGRyX2RhdGEgPCB4dG5faGRy
X2VuZCkgeworICAgICAgICAgICAgdWludDhfdCB4aWQgPSAoKnh0bl9oZHJfZGF0YSAmIDB4ZjAp
ID4+IDQ7CisgICAgICAgICAgICB1bnNpZ25lZCBpbnQgeGxlbiA9ICgqeHRuX2hkcl9kYXRhICYg
MHgwZikgKyAxOworICAgICAgICAgICAgdWludDMyX3QgeGxlbl93aXRoX2hlYWRlciA9IDEgKyB4
bGVuOworICAgICAgICAgICAgeHRuX2hkcl9kYXRhKys7CisKKyAgICAgICAgICAgIGlmICh4dG5f
aGRyX2RhdGEgKyB4bGVuID4geHRuX2hkcl9lbmQpCisgICAgICAgICAgICAgICAgcmV0dXJuIHNy
dHBfZXJyX3N0YXR1c19wYXJzZV9lcnI7CisKKyAgICAgICAgICAgIGlmICh4aWQgPT0gMTUpIHsK
KyAgICAgICAgICAgICAgICAvKiBmb3VuZCBoZWFkZXIgMTUsIHN0b3AgZnVydGhlciBwcm9jZXNz
aW5nLiAqLworICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgfQorCisgICAgICAg
ICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9vdXRwdXQoc2Vzc2lvbl9rZXlzLT5ydHBfeHRuX2hk
cl9jaXBoZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga2V5c3Ry
ZWFtLCAmeGxlbl93aXRoX2hlYWRlcik7CisgICAgICAgICAgICBpZiAoc3RhdHVzKQorICAgICAg
ICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfY2lwaGVyX2ZhaWw7CisKKyAgICAgICAg
ICAgIGlmIChzcnRwX3Byb3RlY3RfZXh0ZW5zaW9uX2hlYWRlcihzdHJlYW0sIHhpZCkpIHsKKyAg
ICAgICAgICAgICAgICBrZXlzdHJlYW1fcG9zID0gMTsKKyAgICAgICAgICAgICAgICB3aGlsZSAo
eGxlbiA+IDApIHsKKyAgICAgICAgICAgICAgICAgICAgKnh0bl9oZHJfZGF0YSBePSBrZXlzdHJl
YW1ba2V5c3RyZWFtX3BvcysrXTsKKyAgICAgICAgICAgICAgICAgICAgeHRuX2hkcl9kYXRhKys7
CisgICAgICAgICAgICAgICAgICAgIHhsZW4tLTsKKyAgICAgICAgICAgICAgICB9CisgICAgICAg
ICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgIHh0bl9oZHJfZGF0YSArPSB4bGVuOworICAg
ICAgICAgICAgfQogCi0gICAgICBpZiAoeGxlbiA+IDAgJiYgc3J0cF9wcm90ZWN0X2V4dGVuc2lv
bl9oZWFkZXIoc3RyZWFtLCB4aWQpKSB7Ci0gICAgICAgIGtleXN0cmVhbV9wb3MgPSAyOwotICAg
ICAgICB3aGlsZSAoeGxlbiA+IDApIHsKLSAgICAgICAgICAqeHRuX2hkcl9kYXRhIF49IGtleXN0
cmVhbVtrZXlzdHJlYW1fcG9zKytdOwotICAgICAgICAgIHh0bl9oZHJfZGF0YSsrOwotICAgICAg
ICAgIHhsZW4tLTsKKyAgICAgICAgICAgIC8qIHNraXAgcGFkZGluZyBieXRlcy4gKi8KKyAgICAg
ICAgICAgIHdoaWxlICh4dG5faGRyX2RhdGEgPCB4dG5faGRyX2VuZCAmJiAqeHRuX2hkcl9kYXRh
ID09IDApIHsKKyAgICAgICAgICAgICAgICB4dG5faGRyX2RhdGErKzsKKyAgICAgICAgICAgIH0K
ICAgICAgICAgfQotICAgICAgfSBlbHNlIHsKLSAgICAgICAgeHRuX2hkcl9kYXRhICs9IHhsZW47
Ci0gICAgICB9CisgICAgfSBlbHNlIGlmICgobnRvaHMoeHRuX2hkci0+cHJvZmlsZV9zcGVjaWZp
YykgJiAweDFmZmYpID09IDB4MTAwKSB7CisgICAgICAgIC8qIFJGQyA1Mjg1LCBzZWN0aW9uIDQu
My4gVHdvLUJ5dGUgSGVhZGVyICovCisgICAgICAgIHdoaWxlICh4dG5faGRyX2RhdGEgKyAxIDwg
eHRuX2hkcl9lbmQpIHsKKyAgICAgICAgICAgIHVpbnQ4X3QgeGlkID0gKnh0bl9oZHJfZGF0YTsK
KyAgICAgICAgICAgIHVuc2lnbmVkIGludCB4bGVuID0gKih4dG5faGRyX2RhdGEgKyAxKTsKKyAg
ICAgICAgICAgIHVpbnQzMl90IHhsZW5fd2l0aF9oZWFkZXIgPSAyICsgeGxlbjsKKyAgICAgICAg
ICAgIHh0bl9oZHJfZGF0YSArPSAyOworCisgICAgICAgICAgICBpZiAoeHRuX2hkcl9kYXRhICsg
eGxlbiA+IHh0bl9oZHJfZW5kKQorICAgICAgICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0
dXNfcGFyc2VfZXJyOworCisgICAgICAgICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9vdXRwdXQo
c2Vzc2lvbl9rZXlzLT5ydHBfeHRuX2hkcl9jaXBoZXIsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAga2V5c3RyZWFtLCAmeGxlbl93aXRoX2hlYWRlcik7CisgICAgICAg
ICAgICBpZiAoc3RhdHVzKQorICAgICAgICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNf
Y2lwaGVyX2ZhaWw7CisKKyAgICAgICAgICAgIGlmICh4bGVuID4gMCAmJiBzcnRwX3Byb3RlY3Rf
ZXh0ZW5zaW9uX2hlYWRlcihzdHJlYW0sIHhpZCkpIHsKKyAgICAgICAgICAgICAgICBrZXlzdHJl
YW1fcG9zID0gMjsKKyAgICAgICAgICAgICAgICB3aGlsZSAoeGxlbiA+IDApIHsKKyAgICAgICAg
ICAgICAgICAgICAgKnh0bl9oZHJfZGF0YSBePSBrZXlzdHJlYW1ba2V5c3RyZWFtX3BvcysrXTsK
KyAgICAgICAgICAgICAgICAgICAgeHRuX2hkcl9kYXRhKys7CisgICAgICAgICAgICAgICAgICAg
IHhsZW4tLTsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9IGVsc2UgeworICAgICAg
ICAgICAgICAgIHh0bl9oZHJfZGF0YSArPSB4bGVuOworICAgICAgICAgICAgfQogCi0gICAgICAv
KiBza2lwIHBhZGRpbmcgYnl0ZXMuICovCi0gICAgICB3aGlsZSAoeHRuX2hkcl9kYXRhIDwgeHRu
X2hkcl9lbmQgJiYgKnh0bl9oZHJfZGF0YSA9PSAwKSB7Ci0gICAgICAgIHh0bl9oZHJfZGF0YSsr
OwotICAgICAgfQorICAgICAgICAgICAgLyogc2tpcCBwYWRkaW5nIGJ5dGVzLiAqLworICAgICAg
ICAgICAgd2hpbGUgKHh0bl9oZHJfZGF0YSA8IHh0bl9oZHJfZW5kICYmICp4dG5faGRyX2RhdGEg
PT0gMCkgeworICAgICAgICAgICAgICAgIHh0bl9oZHJfZGF0YSsrOworICAgICAgICAgICAgfQor
ICAgICAgICB9CisgICAgfSBlbHNlIHsKKyAgICAgICAgLyogdW5zdXBwb3J0ZWQgZXh0ZW5zaW9u
IGhlYWRlciBmb3JtYXQuICovCisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfcGFyc2Vf
ZXJyOwogICAgIH0KLSAgfSBlbHNlIHsKLSAgICAvKiB1bnN1cHBvcnRlZCBleHRlbnNpb24gaGVh
ZGVyIGZvcm1hdC4gKi8KLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX3BhcnNlX2VycjsKLSAg
fQogCi0gIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CisgICAgcmV0dXJuIHNydHBfZXJyX3N0
YXR1c19vazsKIH0KIAotCiAvKgogICogQUVBRCB1c2VzIGEgbmV3IElWIGZvcm1hdGlvbiBtZXRo
b2QuICBUaGlzIGZ1bmN0aW9uIGltcGxlbWVudHMKICAqIHNlY3Rpb24gOC4xLiAoU1JUUCBJViBG
b3JtYXRpb24gZm9yIEFFUy1HQ00pIG9mIFJGQzc3MTQuCkBAIC0xNDY0LDcgKzE0ODMsNyBAQCBz
cnRwX3Byb2Nlc3NfaGVhZGVyX2VuY3J5cHRpb24oc3J0cF9zdHJlYW1fY3R4X3QgKnN0cmVhbSwK
ICAqICAgICAgICAgICAgKy0tKy0tKy0tKy0tKy0tKy0tKy0tKy0tKy0tKy0tKy0tKy0tKyoKICAq
CiAgKiBJbnB1dDogICpzZXNzaW9uX2tleXMgLSBwb2ludGVyIHRvIFNSVFAgc3RyZWFtIGNvbnRl
eHQgc2Vzc2lvbiBrZXlzLAotICogICAgICAgICAgICAgICAgICAgICAgICAgdXNlZCB0byByZXRy
aWV2ZSB0aGUgU0FMVCAKKyAqICAgICAgICAgICAgICAgICAgICAgICAgIHVzZWQgdG8gcmV0cmll
dmUgdGhlIFNBTFQKICAqICAgICAgICAgKml2ICAgICAtIFBvaW50ZXIgdG8gcmVjZWl2ZSB0aGUg
Y2FsY3VsYXRlZCBJVgogICogICAgICAgICAqc2VxICAgIC0gVGhlIFJPQyBhbmQgU0VRIHZhbHVl
IHRvIHVzZSBmb3IgdGhlCiAgKiAgICAgICAgICAgICAgICAgICBJViBjYWxjdWxhdGlvbi4KQEAg
LTE0NzIsMTkgKzE0OTEsMjAgQEAgc3J0cF9wcm9jZXNzX2hlYWRlcl9lbmNyeXB0aW9uKHNydHBf
c3RyZWFtX2N0eF90ICpzdHJlYW0sCiAgKgogICovCiAKLXN0YXRpYyB2b2lkIHNydHBfY2FsY19h
ZWFkX2l2KHNydHBfc2Vzc2lvbl9rZXlzX3QgKnNlc3Npb25fa2V5cywgdjEyOF90ICppdiwKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfeHRkX3NlcV9udW1fdCAqc2VxLCBzcnRw
X2hkcl90ICpoZHIpCitzdGF0aWMgdm9pZCBzcnRwX2NhbGNfYWVhZF9pdihzcnRwX3Nlc3Npb25f
a2V5c190ICpzZXNzaW9uX2tleXMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2MTI4
X3QgKml2LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF94dGRfc2VxX251bV90
ICpzZXEsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcnRwX2hkcl90ICpoZHIpCiB7
Ci0gICAgdjEyOF90CWluOwotICAgIHYxMjhfdAlzYWx0OworICAgIHYxMjhfdCBpbjsKKyAgICB2
MTI4X3Qgc2FsdDsKIAogI2lmZGVmIE5PXzY0QklUX01BVEgKLSAgICB1aW50MzJfdCBsb2NhbF9y
b2MgPSAoKGhpZ2gzMigqc2VxKSA8PCAxNikgfAotICAgICAgICAgICAgICAgICAgICAgICAgIChs
b3czMigqc2VxKSA+PiAxNikpOwotICAgIHVpbnQxNl90IGxvY2FsX3NlcSA9ICh1aW50MTZfdCkg
KGxvdzMyKCpzZXEpKTsKKyAgICB1aW50MzJfdCBsb2NhbF9yb2MgPSAoKGhpZ2gzMigqc2VxKSA8
PCAxNikgfCAobG93MzIoKnNlcSkgPj4gMTYpKTsKKyAgICB1aW50MTZfdCBsb2NhbF9zZXEgPSAo
dWludDE2X3QpKGxvdzMyKCpzZXEpKTsKICNlbHNlCiAgICAgdWludDMyX3QgbG9jYWxfcm9jID0g
KHVpbnQzMl90KSgqc2VxID4+IDE2KTsKLSAgICB1aW50MTZfdCBsb2NhbF9zZXEgPSAodWludDE2
X3QpICpzZXE7CisgICAgdWludDE2X3QgbG9jYWxfc2VxID0gKHVpbnQxNl90KSpzZXE7CiAjZW5k
aWYKIAogICAgIG1lbXNldCgmaW4sIDAsIHNpemVvZih2MTI4X3QpKTsKQEAgLTE1MTIsMTQ5ICsx
NTMyLDE0NSBAQCBzdGF0aWMgdm9pZCBzcnRwX2NhbGNfYWVhZF9pdihzcnRwX3Nlc3Npb25fa2V5
c190ICpzZXNzaW9uX2tleXMsIHYxMjhfdCAqaXYsCiAgICAgdjEyOF94b3IoaXYsICZpbiwgJnNh
bHQpOwogfQogCitzcnRwX3Nlc3Npb25fa2V5c190ICpzcnRwX2dldF9zZXNzaW9uX2tleXMoc3J0
cF9zdHJlYW1fY3R4X3QgKnN0cmVhbSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB1aW50OF90ICpoZHIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgY29uc3QgdW5zaWduZWQgaW50ICpwa3Rfb2N0ZXRfbGVuLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCAqbWtpX3NpemUp
Cit7CisgICAgdW5zaWduZWQgaW50IGJhc2VfbWtpX3N0YXJ0X2xvY2F0aW9uID0gKnBrdF9vY3Rl
dF9sZW47CisgICAgdW5zaWduZWQgaW50IG1raV9zdGFydF9sb2NhdGlvbiA9IDA7CisgICAgdW5z
aWduZWQgaW50IHRhZ19sZW4gPSAwOworICAgIHVuc2lnbmVkIGludCBpID0gMDsKKworICAgIC8v
IERldGVybWluZSB0aGUgYXV0aGVudGljYXRpb24gdGFnIHNpemUKKyAgICBpZiAoc3RyZWFtLT5z
ZXNzaW9uX2tleXNbMF0ucnRwX2NpcGhlci0+YWxnb3JpdGhtID09IFNSVFBfQUVTX0dDTV8xMjgg
fHwKKyAgICAgICAgc3RyZWFtLT5zZXNzaW9uX2tleXNbMF0ucnRwX2NpcGhlci0+YWxnb3JpdGht
ID09IFNSVFBfQUVTX0dDTV8yNTYpIHsKKyAgICAgICAgdGFnX2xlbiA9IDA7CisgICAgfSBlbHNl
IHsKKyAgICAgICAgdGFnX2xlbiA9IHNydHBfYXV0aF9nZXRfdGFnX2xlbmd0aChzdHJlYW0tPnNl
c3Npb25fa2V5c1swXS5ydHBfYXV0aCk7CisgICAgfQorCisgICAgaWYgKHRhZ19sZW4gPiBiYXNl
X21raV9zdGFydF9sb2NhdGlvbikgeworICAgICAgICAqbWtpX3NpemUgPSAwOworICAgICAgICBy
ZXR1cm4gTlVMTDsKKyAgICB9CisKKyAgICBiYXNlX21raV9zdGFydF9sb2NhdGlvbiAtPSB0YWdf
bGVuOworCisgICAgZm9yIChpID0gMDsgaSA8IHN0cmVhbS0+bnVtX21hc3Rlcl9rZXlzOyBpKysp
IHsKKyAgICAgICAgaWYgKHN0cmVhbS0+c2Vzc2lvbl9rZXlzW2ldLm1raV9zaXplICE9IDAgJiYK
KyAgICAgICAgICAgIHN0cmVhbS0+c2Vzc2lvbl9rZXlzW2ldLm1raV9zaXplIDw9IGJhc2VfbWtp
X3N0YXJ0X2xvY2F0aW9uKSB7CisgICAgICAgICAgICAqbWtpX3NpemUgPSBzdHJlYW0tPnNlc3Np
b25fa2V5c1tpXS5ta2lfc2l6ZTsKKyAgICAgICAgICAgIG1raV9zdGFydF9sb2NhdGlvbiA9IGJh
c2VfbWtpX3N0YXJ0X2xvY2F0aW9uIC0gKm1raV9zaXplOworCisgICAgICAgICAgICBpZiAobWVt
Y21wKGhkciArIG1raV9zdGFydF9sb2NhdGlvbiwgc3RyZWFtLT5zZXNzaW9uX2tleXNbaV0ubWtp
X2lkLAorICAgICAgICAgICAgICAgICAgICAgICAqbWtpX3NpemUpID09IDApIHsKKyAgICAgICAg
ICAgICAgICByZXR1cm4gJnN0cmVhbS0+c2Vzc2lvbl9rZXlzW2ldOworICAgICAgICAgICAgfQor
ICAgICAgICB9CisgICAgfQogCi1zcnRwX3Nlc3Npb25fa2V5c190KiAKLXNydHBfZ2V0X3Nlc3Np
b25fa2V5cyhzcnRwX3N0cmVhbV9jdHhfdCAqc3RyZWFtLCB1aW50OF90KiBoZHIsCi0gICAgICAg
ICAgICAgICAgICAgICAgY29uc3QgdW5zaWduZWQgaW50KiBwa3Rfb2N0ZXRfbGVuLAotICAgICAg
ICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCogbWtpX3NpemUpIHsKLSAgdW5zaWduZWQgaW50
IGJhc2VfbWtpX3N0YXJ0X2xvY2F0aW9uID0gKnBrdF9vY3RldF9sZW47Ci0gIHVuc2lnbmVkIGlu
dCBta2lfc3RhcnRfbG9jYXRpb24gPSAwOwotICB1bnNpZ25lZCBpbnQgdGFnX2xlbiA9IDA7Ci0g
IHVuc2lnbmVkIGludCBpID0gMDsKLQotICAvLyBEZXRlcm1pbmUgdGhlIGF1dGhlbnRpY2F0aW9u
IHRhZyBzaXplCi0gIGlmIChzdHJlYW0tPnNlc3Npb25fa2V5c1swXS5ydHBfY2lwaGVyLT5hbGdv
cml0aG0gPT0gU1JUUF9BRVNfR0NNXzEyOCB8fAotICAgICAgc3RyZWFtLT5zZXNzaW9uX2tleXNb
MF0ucnRwX2NpcGhlci0+YWxnb3JpdGhtID09IFNSVFBfQUVTX0dDTV8yNTYpIHsKLSAgICAgIHRh
Z19sZW4gPSAwOwotICB9IGVsc2UgewotICAgICAgdGFnX2xlbiA9IHNydHBfYXV0aF9nZXRfdGFn
X2xlbmd0aChzdHJlYW0tPnNlc3Npb25fa2V5c1swXS5ydHBfYXV0aCk7Ci0gIH0KLQotICBpZiAo
dGFnX2xlbiA+IGJhc2VfbWtpX3N0YXJ0X2xvY2F0aW9uKSB7Ci0gICAgICpta2lfc2l6ZSA9IDA7
Ci0gICAgIHJldHVybiBOVUxMOwotICB9Ci0KLSAgYmFzZV9ta2lfc3RhcnRfbG9jYXRpb24gLT0g
dGFnX2xlbjsKLQotICBmb3IgKGkgPSAwOyBpIDwgc3RyZWFtLT5udW1fbWFzdGVyX2tleXM7IGkr
KykgewotICAgICAgaWYgKHN0cmVhbS0+c2Vzc2lvbl9rZXlzW2ldLm1raV9zaXplICE9IDApIHsK
LSAgICAgICAgICAqbWtpX3NpemUgPSBzdHJlYW0tPnNlc3Npb25fa2V5c1tpXS5ta2lfc2l6ZTsK
LSAgICAgICAgICBta2lfc3RhcnRfbG9jYXRpb24gPSBiYXNlX21raV9zdGFydF9sb2NhdGlvbiAt
ICpta2lfc2l6ZTsKLQotICAgICAgICAgIGlmICggbWtpX3N0YXJ0X2xvY2F0aW9uID49ICpta2lf
c2l6ZSAmJgotICAgICAgICAgICAgICBtZW1jbXAoaGRyICsgbWtpX3N0YXJ0X2xvY2F0aW9uLCBz
dHJlYW0tPnNlc3Npb25fa2V5c1tpXS5ta2lfaWQsICpta2lfc2l6ZSkgPT0gMCApIHsKLSAgICAg
ICAgICAgICAgcmV0dXJuICZzdHJlYW0tPnNlc3Npb25fa2V5c1tpXTsKLQkgIH0KLSAgICAgIH0K
LSAgfQotCi0gICpta2lfc2l6ZSA9IDA7Ci0gIHJldHVybiBOVUxMOworICAgICpta2lfc2l6ZSA9
IDA7CisgICAgcmV0dXJuIE5VTEw7CiB9CiAKLXN0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdAotc3J0
cF9lc3RpbWF0ZV9pbmRleChzcnRwX3JkYnhfdCAqcmRieCwKLSAgICAgICAgICAgICAgICAgICAg
dWludDMyX3Qgcm9jLAotICAgICAgICAgICAgICAgICAgICBzcnRwX3h0ZF9zZXFfbnVtX3QgKmVz
dCwKLSAgICAgICAgICAgICAgICAgICAgc3J0cF9zZXF1ZW5jZV9udW1iZXJfdCBzZXEsCi0gICAg
ICAgICAgICAgICAgICAgIGludCAqZGVsdGEpCitzdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0
cF9lc3RpbWF0ZV9pbmRleChzcnRwX3JkYnhfdCAqcmRieCwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IHJvYywKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfeHRkX3NlcV9udW1fdCAqZXN0LAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF9zZXF1ZW5jZV9u
dW1iZXJfdCBzZXEsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBpbnQgKmRlbHRhKQogewogI2lmZGVmIE5PXzY0QklUX01BVEgKLSAgdWludDMyX3QgaW50ZXJu
YWxfcGt0X2lkeF9yZWR1Y2VkOwotICB1aW50MzJfdCBleHRlcm5hbF9wa3RfaWR4X3JlZHVjZWQ7
Ci0gIHVpbnQzMl90IGludGVybmFsX3JvYzsKLSAgdWludDMyX3Qgcm9jX2RpZmZlcmVuY2U7Cisg
ICAgdWludDMyX3QgaW50ZXJuYWxfcGt0X2lkeF9yZWR1Y2VkOworICAgIHVpbnQzMl90IGV4dGVy
bmFsX3BrdF9pZHhfcmVkdWNlZDsKKyAgICB1aW50MzJfdCBpbnRlcm5hbF9yb2M7CisgICAgdWlu
dDMyX3Qgcm9jX2RpZmZlcmVuY2U7CiAjZW5kaWYKIAogI2lmZGVmIE5PXzY0QklUX01BVEgKLSAg
KmVzdCA9IChzcnRwX3h0ZF9zZXFfbnVtX3QpbWFrZTY0KHJvYyA+PiAxNiwgKHJvYyA8PCAxNikg
fCBzZXEpOwotICAqZGVsdGEgPSBsb3czMihlc3QpIC0gcmRieC0+aW5kZXg7CisgICAgKmVzdCA9
IChzcnRwX3h0ZF9zZXFfbnVtX3QpbWFrZTY0KHJvYyA+PiAxNiwgKHJvYyA8PCAxNikgfCBzZXEp
OworICAgICpkZWx0YSA9IGxvdzMyKGVzdCkgLSByZGJ4LT5pbmRleDsKICNlbHNlCi0gICplc3Qg
PSAoc3J0cF94dGRfc2VxX251bV90KSgoKHVpbnQ2NF90KXJvYykgPDwgMTYpIHwgc2VxOwotICAq
ZGVsdGEgPSAoaW50KSgqZXN0IC0gcmRieC0+aW5kZXgpOworICAgICplc3QgPSAoc3J0cF94dGRf
c2VxX251bV90KSgoKHVpbnQ2NF90KXJvYykgPDwgMTYpIHwgc2VxOworICAgICpkZWx0YSA9IChp
bnQpKCplc3QgLSByZGJ4LT5pbmRleCk7CiAjZW5kaWYKIAotICBpZiAoKmVzdCA+IHJkYngtPmlu
ZGV4KSB7CisgICAgaWYgKCplc3QgPiByZGJ4LT5pbmRleCkgewogI2lmZGVmIE5PXzY0QklUX01B
VEgKLSAgICBpbnRlcm5hbF9yb2MgPSAodWludDMyX3QpKHJkYngtPmluZGV4ID4+IDE2KTsKLSAg
ICByb2NfZGlmZmVyZW5jZSA9IHJvYyAtIGludGVybmFsX3JvYzsKLSAgICBpZiAocm9jX2RpZmZl
cmVuY2UgPiAxKSB7Ci0gICAgICAqZGVsdGEgPSAwOwotICAgICAgcmV0dXJuIHNydHBfZXJyX3N0
YXR1c19wa3RfaWR4X2FkdjsKLSAgICB9CisgICAgICAgIGludGVybmFsX3JvYyA9ICh1aW50MzJf
dCkocmRieC0+aW5kZXggPj4gMTYpOworICAgICAgICByb2NfZGlmZmVyZW5jZSA9IHJvYyAtIGlu
dGVybmFsX3JvYzsKKyAgICAgICAgaWYgKHJvY19kaWZmZXJlbmNlID4gMSkgeworICAgICAgICAg
ICAgKmRlbHRhID0gMDsKKyAgICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfcGt0X2lk
eF9hZHY7CisgICAgICAgIH0KIAotICAgIGludGVybmFsX3BrdF9pZHhfcmVkdWNlZCA9ICh1aW50
MzJfdCkocmRieC0+aW5kZXggJiAweEZGRkYpOwotICAgIGV4dGVybmFsX3BrdF9pZHhfcmVkdWNl
ZCA9ICh1aW50MzJfdCkoKHJvY19kaWZmZXJlbmNlIDw8IDE2KSB8IHNlcSk7CisgICAgICAgIGlu
dGVybmFsX3BrdF9pZHhfcmVkdWNlZCA9ICh1aW50MzJfdCkocmRieC0+aW5kZXggJiAweEZGRkYp
OworICAgICAgICBleHRlcm5hbF9wa3RfaWR4X3JlZHVjZWQgPSAodWludDMyX3QpKChyb2NfZGlm
ZmVyZW5jZSA8PCAxNikgfCBzZXEpOwogCi0gICAgaWYgKGV4dGVybmFsX3BrdF9pZHhfcmVkdWNl
ZCAtIGludGVybmFsX3BrdF9pZHhfcmVkdWNlZCA+Ci0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VxX251bV9tZWRpYW4pIHsKLSAgICAgICpkZWx0
YSA9IDA7Ci0gICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX3BrdF9pZHhfYWR2OwotICAgIH0K
KyAgICAgICAgaWYgKGV4dGVybmFsX3BrdF9pZHhfcmVkdWNlZCAtIGludGVybmFsX3BrdF9pZHhf
cmVkdWNlZCA+CisgICAgICAgICAgICBzZXFfbnVtX21lZGlhbikgeworICAgICAgICAgICAgKmRl
bHRhID0gMDsKKyAgICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfcGt0X2lkeF9hZHY7
CisgICAgICAgIH0KICNlbHNlCi0gICAgaWYgKCplc3QgLSByZGJ4LT5pbmRleCA+IHNlcV9udW1f
bWVkaWFuKSB7Ci0gICAgICAqZGVsdGEgPSAwOwotICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1
c19wa3RfaWR4X2FkdjsKLSAgICB9CisgICAgICAgIGlmICgqZXN0IC0gcmRieC0+aW5kZXggPiBz
ZXFfbnVtX21lZGlhbikgeworICAgICAgICAgICAgKmRlbHRhID0gMDsKKyAgICAgICAgICAgIHJl
dHVybiBzcnRwX2Vycl9zdGF0dXNfcGt0X2lkeF9hZHY7CisgICAgICAgIH0KICNlbmRpZgotICB9
IGVsc2UgaWYgKCplc3QgPCByZGJ4LT5pbmRleCkgeworICAgIH0gZWxzZSBpZiAoKmVzdCA8IHJk
YngtPmluZGV4KSB7CiAjaWZkZWYgTk9fNjRCSVRfTUFUSAogCi0gICAgaW50ZXJuYWxfcm9jID0g
KHVpbnQzMl90KShyZGJ4LT5pbmRleCA+PiAxNik7Ci0gICAgcm9jX2RpZmZlcmVuY2UgPSBpbnRl
cm5hbF9yb2MgLSByb2M7Ci0gICAgaWYgKHJvY19kaWZmZXJlbmNlID4gMSkgewotICAgICAgKmRl
bHRhID0gMDsKLSAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfcGt0X2lkeF9hZHY7Ci0gICAg
fQorICAgICAgICBpbnRlcm5hbF9yb2MgPSAodWludDMyX3QpKHJkYngtPmluZGV4ID4+IDE2KTsK
KyAgICAgICAgcm9jX2RpZmZlcmVuY2UgPSBpbnRlcm5hbF9yb2MgLSByb2M7CisgICAgICAgIGlm
IChyb2NfZGlmZmVyZW5jZSA+IDEpIHsKKyAgICAgICAgICAgICpkZWx0YSA9IDA7CisgICAgICAg
ICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX3BrdF9pZHhfYWR2OworICAgICAgICB9CiAKLSAg
ICBpbnRlcm5hbF9wa3RfaWR4X3JlZHVjZWQgPQotICAgICAgICAgICAgICAgICh1aW50MzJfdCko
KHJvY19kaWZmZXJlbmNlIDw8IDE2KSB8IHJkYngtPmluZGV4ICYgMHhGRkZGKTsKLSAgICBleHRl
cm5hbF9wa3RfaWR4X3JlZHVjZWQgPSAodWludDMyX3QpKHNlcSk7CisgICAgICAgIGludGVybmFs
X3BrdF9pZHhfcmVkdWNlZCA9CisgICAgICAgICAgICAodWludDMyX3QpKChyb2NfZGlmZmVyZW5j
ZSA8PCAxNikgfCByZGJ4LT5pbmRleCAmIDB4RkZGRik7CisgICAgICAgIGV4dGVybmFsX3BrdF9p
ZHhfcmVkdWNlZCA9ICh1aW50MzJfdCkoc2VxKTsKIAotICAgIGlmIChpbnRlcm5hbF9wa3RfaWR4
X3JlZHVjZWQgLSBleHRlcm5hbF9wa3RfaWR4X3JlZHVjZWQgPgotICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlcV9udW1fbWVkaWFuKSB7Ci0gICAg
ICAqZGVsdGEgPSAwOwotICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19wa3RfaWR4X29sZDsK
LSAgICB9CisgICAgICAgIGlmIChpbnRlcm5hbF9wa3RfaWR4X3JlZHVjZWQgLSBleHRlcm5hbF9w
a3RfaWR4X3JlZHVjZWQgPgorICAgICAgICAgICAgc2VxX251bV9tZWRpYW4pIHsKKyAgICAgICAg
ICAgICpkZWx0YSA9IDA7CisgICAgICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX3BrdF9p
ZHhfb2xkOworICAgICAgICB9CiAjZWxzZQotICAgIGlmIChyZGJ4LT5pbmRleCAtICplc3QgPiBz
ZXFfbnVtX21lZGlhbikgewotICAgICAgKmRlbHRhID0gMDsKLSAgICAgIHJldHVybiBzcnRwX2Vy
cl9zdGF0dXNfcGt0X2lkeF9vbGQ7Ci0gICAgfQorICAgICAgICBpZiAocmRieC0+aW5kZXggLSAq
ZXN0ID4gc2VxX251bV9tZWRpYW4pIHsKKyAgICAgICAgICAgICpkZWx0YSA9IDA7CisgICAgICAg
ICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX3BrdF9pZHhfb2xkOworICAgICAgICB9CiAjZW5k
aWYKLSAgfQorICAgIH0KIAotICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOworICAgIHJldHVy
biBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAKLXN0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdAotc3J0
cF9nZXRfZXN0X3BrdF9pbmRleChzcnRwX2hkcl90ICpoZHIsCi0gICAgICAgICAgICAgICAgICAg
ICAgIHNydHBfc3RyZWFtX2N0eF90ICpzdHJlYW0sCi0gICAgICAgICAgICAgICAgICAgICAgIHNy
dHBfeHRkX3NlcV9udW1fdCAqZXN0LAotICAgICAgICAgICAgICAgICAgICAgICBpbnQgKmRlbHRh
KQorc3RhdGljIHNydHBfZXJyX3N0YXR1c190IHNydHBfZ2V0X2VzdF9wa3RfaW5kZXgoc3J0cF9o
ZHJfdCAqaGRyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgc3J0cF9zdHJlYW1fY3R4X3QgKnN0cmVhbSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHNydHBfeHRkX3NlcV9udW1fdCAqZXN0LAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50ICpkZWx0YSkKIHsKLSAg
c3J0cF9lcnJfc3RhdHVzX3QgcmVzdWx0ID0gc3J0cF9lcnJfc3RhdHVzX29rOwotCi0gIGlmIChz
dHJlYW0tPnBlbmRpbmdfcm9jKSB7Ci0gICAgcmVzdWx0ID0gc3J0cF9lc3RpbWF0ZV9pbmRleCgm
c3RyZWFtLT5ydHBfcmRieCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cmVh
bS0+cGVuZGluZ19yb2MsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlc3QsCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBudG9ocyhoZHItPnNlcSksCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBkZWx0YSk7Ci0gIH0gZWxzZSB7Ci0gICAgLyogZXN0
aW1hdGUgcGFja2V0IGluZGV4IGZyb20gc2VxLiBudW0uIGluIGhlYWRlciAqLwotICAgICpkZWx0
YSA9IHNydHBfcmRieF9lc3RpbWF0ZV9pbmRleCgmc3RyZWFtLT5ydHBfcmRieCwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXN0LAotICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBudG9ocyhoZHItPnNlcSkpOwotICB9CisgICAgc3J0cF9lcnJfc3Rh
dHVzX3QgcmVzdWx0ID0gc3J0cF9lcnJfc3RhdHVzX29rOworCisgICAgaWYgKHN0cmVhbS0+cGVu
ZGluZ19yb2MpIHsKKyAgICAgICAgcmVzdWx0ID0gc3J0cF9lc3RpbWF0ZV9pbmRleCgmc3RyZWFt
LT5ydHBfcmRieCwgc3RyZWFtLT5wZW5kaW5nX3JvYywKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBlc3QsIG50b2hzKGhkci0+c2VxKSwgZGVsdGEpOworICAgIH0gZWxzZSB7
CisgICAgICAgIC8qIGVzdGltYXRlIHBhY2tldCBpbmRleCBmcm9tIHNlcS4gbnVtLiBpbiBoZWFk
ZXIgKi8KKyAgICAgICAgKmRlbHRhID0KKyAgICAgICAgICAgIHNydHBfcmRieF9lc3RpbWF0ZV9p
bmRleCgmc3RyZWFtLT5ydHBfcmRieCwgZXN0LCBudG9ocyhoZHItPnNlcSkpOworICAgIH0KIAog
I2lmZGVmIE5PXzY0QklUX01BVEgKLSAgZGVidWdfcHJpbnQyKG1vZF9zcnRwLCAiZXN0aW1hdGVk
IHVfcGFja2V0IGluZGV4OiAlMDh4JTA4eCIsIGhpZ2gzMigqZXN0KSwgbG93MzIoKmVzdCkpOwor
ICAgIGRlYnVnX3ByaW50Mihtb2Rfc3J0cCwgImVzdGltYXRlZCB1X3BhY2tldCBpbmRleDogJTA4
eCUwOHgiLCBoaWdoMzIoKmVzdCksCisgICAgICAgICAgICAgICAgIGxvdzMyKCplc3QpKTsKICNl
bHNlCi0gIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAiZXN0aW1hdGVkIHVfcGFja2V0IGluZGV4OiAl
MDE2bGx4IiwgKmVzdCk7CisgICAgZGVidWdfcHJpbnQobW9kX3NydHAsICJlc3RpbWF0ZWQgdV9w
YWNrZXQgaW5kZXg6ICUwMTZsbHgiLCAqZXN0KTsKICNlbmRpZgotICByZXR1cm4gcmVzdWx0Owor
ICAgIHJldHVybiByZXN1bHQ7CiB9CiAKIC8qCkBAIC0xNjYyLDE2ICsxNjc4LDE4IEBAIHNydHBf
Z2V0X2VzdF9wa3RfaW5kZXgoc3J0cF9oZHJfdCAqaGRyLAogICogd2hpY2ggY3VycmVudGx5IHN1
cHBvcnRzIEFFUy1HQ00gZW5jcnlwdGlvbi4gIEFsbCBwYWNrZXRzIGFyZQogICogZW5jcnlwdGVk
IGFuZCBhdXRoZW50aWNhdGVkLgogICovCi1zdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3QKLXNydHBf
cHJvdGVjdF9hZWFkIChzcnRwX2N0eF90ICpjdHgsIHNydHBfc3RyZWFtX2N0eF90ICpzdHJlYW0s
Ci0gICAgICAgICAgICAgICAgICAgdm9pZCAqcnRwX2hkciwgdW5zaWduZWQgaW50ICpwa3Rfb2N0
ZXRfbGVuLAotICAgICAgICAgICAgICAgICAgIHNydHBfc2Vzc2lvbl9rZXlzX3QgKnNlc3Npb25f
a2V5cywgdW5zaWduZWQgaW50IHVzZV9ta2kpCitzdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0
cF9wcm90ZWN0X2FlYWQoc3J0cF9jdHhfdCAqY3R4LAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHNydHBfc3RyZWFtX2N0eF90ICpzdHJlYW0sCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdm9pZCAqcnRwX2hkciwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgKnBrdF9vY3Rl
dF9sZW4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF9z
ZXNzaW9uX2tleXNfdCAqc2Vzc2lvbl9rZXlzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCB1c2VfbWtpKQogewotICAgIHNydHBfaGRyX3Qg
KmhkciA9IChzcnRwX2hkcl90KilydHBfaGRyOwotICAgIHVpbnQzMl90ICplbmNfc3RhcnQ7ICAg
ICAgICAvKiBwb2ludGVyIHRvIHN0YXJ0IG9mIGVuY3J5cHRlZCBwb3J0aW9uICAqLwotICAgIGlu
dCBlbmNfb2N0ZXRfbGVuID0gMDsgLyogbnVtYmVyIG9mIG9jdGV0cyBpbiBlbmNyeXB0ZWQgcG9y
dGlvbiAgKi8KLSAgICBzcnRwX3h0ZF9zZXFfbnVtX3QgZXN0OyAgICAgICAgICAvKiBlc3RpbWF0
ZWQgeHRkX3NlcV9udW1fdCBvZiAqaGRyICAgICAgICAqLwotICAgIGludCBkZWx0YTsgICAgICAg
ICAgICAgICAgICAvKiBkZWx0YSBvZiBsb2NhbCBwa3QgaWR4IGFuZCB0aGF0IGluIGhkciAqLwor
ICAgIHNydHBfaGRyX3QgKmhkciA9IChzcnRwX2hkcl90ICopcnRwX2hkcjsKKyAgICB1aW50MzJf
dCAqZW5jX3N0YXJ0OyAgICAvKiBwb2ludGVyIHRvIHN0YXJ0IG9mIGVuY3J5cHRlZCBwb3J0aW9u
ICAqLworICAgIGludCBlbmNfb2N0ZXRfbGVuID0gMDsgIC8qIG51bWJlciBvZiBvY3RldHMgaW4g
ZW5jcnlwdGVkIHBvcnRpb24gICovCisgICAgc3J0cF94dGRfc2VxX251bV90IGVzdDsgLyogZXN0
aW1hdGVkIHh0ZF9zZXFfbnVtX3Qgb2YgKmhkciAgICAgICAgKi8KKyAgICBpbnQgZGVsdGE7ICAg
ICAgICAgICAgICAvKiBkZWx0YSBvZiBsb2NhbCBwa3QgaWR4IGFuZCB0aGF0IGluIGhkciAqLwog
ICAgIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKICAgICB1aW50MzJfdCB0YWdfbGVuOwogICAg
IHYxMjhfdCBpdjsKQEAgLTE3MDgsMTcgKzE3MjYsMTggQEAgc3J0cF9wcm90ZWN0X2FlYWQgKHNy
dHBfY3R4X3QgKmN0eCwgc3J0cF9zdHJlYW1fY3R4X3QgKnN0cmVhbSwKICAgICAgKiBleHRlbnNp
b24sIGlmIHByZXNlbnQ7IG90aGVyd2lzZSwgaXQgc3RhcnRzIGFmdGVyIHRoZSBsYXN0IGNzcmMs
CiAgICAgICogaWYgYW55IGFyZSBwcmVzZW50CiAgICAgICovCi0gICAgIGVuY19zdGFydCA9ICh1
aW50MzJfdCopaGRyICsgdWludDMyc19pbl9ydHBfaGVhZGVyICsgaGRyLT5jYzsKLSAgICAgaWYg
KGhkci0+eCA9PSAxKSB7Ci0gICAgICAgICB4dG5faGRyID0gKHNydHBfaGRyX3h0bmRfdCopZW5j
X3N0YXJ0OwotICAgICAgICAgZW5jX3N0YXJ0ICs9IChudG9ocyh4dG5faGRyLT5sZW5ndGgpICsg
MSk7Ci0gICAgIH0KLSAgICAgLyogbm90ZTogdGhlIHBhc3NlZCBzaXplIGlzIHdpdGhvdXQgdGhl
IGF1dGggdGFnICovCi0gICAgIGlmICghKCh1aW50OF90KillbmNfc3RhcnQgPD0gKHVpbnQ4X3Qq
KWhkciArICpwa3Rfb2N0ZXRfbGVuKSkKLSAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNf
cGFyc2VfZXJyOwotICAgICBlbmNfb2N0ZXRfbGVuID0gKGludCkoKnBrdF9vY3RldF9sZW4gLQot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKCh1aW50OF90KillbmNfc3RhcnQg
LSAodWludDhfdCopaGRyKSk7Ci0gICAgIGlmIChlbmNfb2N0ZXRfbGVuIDwgMCkgcmV0dXJuIHNy
dHBfZXJyX3N0YXR1c19wYXJzZV9lcnI7CisgICAgZW5jX3N0YXJ0ID0gKHVpbnQzMl90ICopaGRy
ICsgdWludDMyc19pbl9ydHBfaGVhZGVyICsgaGRyLT5jYzsKKyAgICBpZiAoaGRyLT54ID09IDEp
IHsKKyAgICAgICAgeHRuX2hkciA9IChzcnRwX2hkcl94dG5kX3QgKillbmNfc3RhcnQ7CisgICAg
ICAgIGVuY19zdGFydCArPSAobnRvaHMoeHRuX2hkci0+bGVuZ3RoKSArIDEpOworICAgIH0KKyAg
ICAvKiBub3RlOiB0aGUgcGFzc2VkIHNpemUgaXMgd2l0aG91dCB0aGUgYXV0aCB0YWcgKi8KKyAg
ICBpZiAoISgodWludDhfdCAqKWVuY19zdGFydCA8PSAodWludDhfdCAqKWhkciArICpwa3Rfb2N0
ZXRfbGVuKSkKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19wYXJzZV9lcnI7CisgICAg
ZW5jX29jdGV0X2xlbiA9CisgICAgICAgIChpbnQpKCpwa3Rfb2N0ZXRfbGVuIC0gKCh1aW50OF90
ICopZW5jX3N0YXJ0IC0gKHVpbnQ4X3QgKiloZHIpKTsKKyAgICBpZiAoZW5jX29jdGV0X2xlbiA8
IDApCisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfcGFyc2VfZXJyOwogCiAgICAgLyoK
ICAgICAgKiBlc3RpbWF0ZSB0aGUgcGFja2V0IGluZGV4IHVzaW5nIHRoZSBzdGFydCBvZiB0aGUg
cmVwbGF5IHdpbmRvdwpAQCAtMTcyNywxNiArMTc0NiwxNiBAQCBzcnRwX3Byb3RlY3RfYWVhZCAo
c3J0cF9jdHhfdCAqY3R4LCBzcnRwX3N0cmVhbV9jdHhfdCAqc3RyZWFtLAogICAgIGRlbHRhID0g
c3J0cF9yZGJ4X2VzdGltYXRlX2luZGV4KCZzdHJlYW0tPnJ0cF9yZGJ4LCAmZXN0LCBudG9ocyho
ZHItPnNlcSkpOwogICAgIHN0YXR1cyA9IHNydHBfcmRieF9jaGVjaygmc3RyZWFtLT5ydHBfcmRi
eCwgZGVsdGEpOwogICAgIGlmIChzdGF0dXMpIHsKLQlpZiAoc3RhdHVzICE9IHNydHBfZXJyX3N0
YXR1c19yZXBsYXlfZmFpbCB8fCAhc3RyZWFtLT5hbGxvd19yZXBlYXRfdHgpIHsKLQkgICAgcmV0
dXJuIHN0YXR1czsgIC8qIHdlJ3ZlIGJlZW4gYXNrZWQgdG8gcmV1c2UgYW4gaW5kZXggKi8KLQl9
CisgICAgICAgIGlmIChzdGF0dXMgIT0gc3J0cF9lcnJfc3RhdHVzX3JlcGxheV9mYWlsIHx8ICFz
dHJlYW0tPmFsbG93X3JlcGVhdF90eCkgeworICAgICAgICAgICAgcmV0dXJuIHN0YXR1czsgLyog
d2UndmUgYmVlbiBhc2tlZCB0byByZXVzZSBhbiBpbmRleCAqLworICAgICAgICB9CiAgICAgfSBl
bHNlIHsKLQlzcnRwX3JkYnhfYWRkX2luZGV4KCZzdHJlYW0tPnJ0cF9yZGJ4LCBkZWx0YSk7Cisg
ICAgICAgIHNydHBfcmRieF9hZGRfaW5kZXgoJnN0cmVhbS0+cnRwX3JkYngsIGRlbHRhKTsKICAg
ICB9CiAKICNpZmRlZiBOT182NEJJVF9NQVRICi0gICAgZGVidWdfcHJpbnQyKG1vZF9zcnRwLCAi
ZXN0aW1hdGVkIHBhY2tldCBpbmRleDogJTA4eCUwOHgiLAotICAgICAgICAgICAgICAgICBoaWdo
MzIoZXN0KSwgbG93MzIoZXN0KSk7CisgICAgZGVidWdfcHJpbnQyKG1vZF9zcnRwLCAiZXN0aW1h
dGVkIHBhY2tldCBpbmRleDogJTA4eCUwOHgiLCBoaWdoMzIoZXN0KSwKKyAgICAgICAgICAgICAg
ICAgbG93MzIoZXN0KSk7CiAjZWxzZQogICAgIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAiZXN0aW1h
dGVkIHBhY2tldCBpbmRleDogJTAxNmxseCIsIGVzdCk7CiAjZW5kaWYKQEAgLTE3NDUsNTAgKzE3
NjQsNTAgQEAgc3J0cF9wcm90ZWN0X2FlYWQgKHNydHBfY3R4X3QgKmN0eCwgc3J0cF9zdHJlYW1f
Y3R4X3QgKnN0cmVhbSwKICAgICAgKiBBRUFEIHVzZXMgYSBuZXcgSVYgZm9ybWF0aW9uIG1ldGhv
ZAogICAgICAqLwogICAgIHNydHBfY2FsY19hZWFkX2l2KHNlc3Npb25fa2V5cywgJml2LCAmZXN0
LCBoZHIpOwotICAgIC8qIHNoaWZ0IGVzdCwgcHV0IGludG8gbmV0d29yayBieXRlIG9yZGVyICov
CisvKiBzaGlmdCBlc3QsIHB1dCBpbnRvIG5ldHdvcmsgYnl0ZSBvcmRlciAqLwogI2lmZGVmIE5P
XzY0QklUX01BVEgKLSAgICBlc3QgPSBiZTY0X3RvX2NwdShtYWtlNjQoKGhpZ2gzMihlc3QpIDw8
IDE2KSB8Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIChsb3czMihlc3QpID4+IDE2KSwK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbG93MzIoZXN0KSA8PCAxNikpOworICAgIGVz
dCA9IGJlNjRfdG9fY3B1KAorICAgICAgICBtYWtlNjQoKGhpZ2gzMihlc3QpIDw8IDE2KSB8IChs
b3czMihlc3QpID4+IDE2KSwgbG93MzIoZXN0KSA8PCAxNikpOwogI2Vsc2UKICAgICBlc3QgPSBi
ZTY0X3RvX2NwdShlc3QgPDwgMTYpOwogI2VuZGlmCiAKLSAgICBzdGF0dXMgPSBzcnRwX2NpcGhl
cl9zZXRfaXYoc2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVyLAotICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAodWludDhfdCopJml2LCBzcnRwX2RpcmVjdGlvbl9lbmNyeXB0KTsKKyAgICBz
dGF0dXMgPSBzcnRwX2NpcGhlcl9zZXRfaXYoc2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVyLCAodWlu
dDhfdCAqKSZpdiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF9kaXJlY3Rp
b25fZW5jcnlwdCk7CiAgICAgaWYgKCFzdGF0dXMgJiYgc2Vzc2lvbl9rZXlzLT5ydHBfeHRuX2hk
cl9jaXBoZXIpIHsKLSAgICAgIGl2LnYzMlswXSA9IDA7Ci0gICAgICBpdi52MzJbMV0gPSBoZHIt
PnNzcmM7Ci0gICAgICBpdi52NjRbMV0gPSBlc3Q7Ci0gICAgICBzdGF0dXMgPSBzcnRwX2NpcGhl
cl9zZXRfaXYoc2Vzc2lvbl9rZXlzLT5ydHBfeHRuX2hkcl9jaXBoZXIsCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgKHVpbnQ4X3QqKSZpdiwgc3J0cF9kaXJlY3Rpb25fZW5jcnlw
dCk7CisgICAgICAgIGl2LnYzMlswXSA9IDA7CisgICAgICAgIGl2LnYzMlsxXSA9IGhkci0+c3Ny
YzsKKyAgICAgICAgaXYudjY0WzFdID0gZXN0OworICAgICAgICBzdGF0dXMgPSBzcnRwX2NpcGhl
cl9zZXRfaXYoc2Vzc2lvbl9rZXlzLT5ydHBfeHRuX2hkcl9jaXBoZXIsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAodWludDhfdCAqKSZpdiwgc3J0cF9kaXJlY3Rpb25fZW5j
cnlwdCk7CiAgICAgfQogICAgIGlmIChzdGF0dXMpIHsKICAgICAgICAgcmV0dXJuIHNydHBfZXJy
X3N0YXR1c19jaXBoZXJfZmFpbDsKICAgICB9CiAKICAgICBpZiAoeHRuX2hkciAmJiBzZXNzaW9u
X2tleXMtPnJ0cF94dG5faGRyX2NpcGhlcikgewotICAgICAgLyoKLSAgICAgICAqIGV4dGVuc2lv
bnMgaGVhZGVyIGVuY3J5cHRpb24gUkZDIDY5MDQKLSAgICAgICAqLwotCXN0YXR1cyA9IHNydHBf
cHJvY2Vzc19oZWFkZXJfZW5jcnlwdGlvbihzdHJlYW0sIHh0bl9oZHIsIHNlc3Npb25fa2V5cyk7
Ci0gICAgICBpZiAoc3RhdHVzKSB7Ci0gICAgICAgIHJldHVybiBzdGF0dXM7Ci0gICAgICB9Cisg
ICAgICAgIC8qCisgICAgICAgICAqIGV4dGVuc2lvbnMgaGVhZGVyIGVuY3J5cHRpb24gUkZDIDY5
MDQKKyAgICAgICAgICovCisgICAgICAgIHN0YXR1cyA9IHNydHBfcHJvY2Vzc19oZWFkZXJfZW5j
cnlwdGlvbihzdHJlYW0sIHh0bl9oZHIsIHNlc3Npb25fa2V5cyk7CisgICAgICAgIGlmIChzdGF0
dXMpIHsKKyAgICAgICAgICAgIHJldHVybiBzdGF0dXM7CisgICAgICAgIH0KICAgICB9CiAKICAg
ICAvKgotICAgICAqIFNldCB0aGUgQUFEIG92ZXIgdGhlIFJUUCBoZWFkZXIgCisgICAgICogU2V0
IHRoZSBBQUQgb3ZlciB0aGUgUlRQIGhlYWRlcgogICAgICAqLwogICAgIGFhZF9sZW4gPSAodWlu
dDhfdCAqKWVuY19zdGFydCAtICh1aW50OF90ICopaGRyOwotICAgIHN0YXR1cyA9IHNydHBfY2lw
aGVyX3NldF9hYWQoc2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVyLCAodWludDhfdCopaGRyLCBhYWRf
bGVuKTsKKyAgICBzdGF0dXMgPQorICAgICAgICBzcnRwX2NpcGhlcl9zZXRfYWFkKHNlc3Npb25f
a2V5cy0+cnRwX2NpcGhlciwgKHVpbnQ4X3QgKiloZHIsIGFhZF9sZW4pOwogICAgIGlmIChzdGF0
dXMpIHsKLSAgICAgICAgcmV0dXJuICggc3J0cF9lcnJfc3RhdHVzX2NpcGhlcl9mYWlsKTsKKyAg
ICAgICAgcmV0dXJuIChzcnRwX2Vycl9zdGF0dXNfY2lwaGVyX2ZhaWwpOwogICAgIH0KIAogICAg
IC8qIEVuY3J5cHQgdGhlIHBheWxvYWQgICovCi0gICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfZW5j
cnlwdChzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXIsCi0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgKHVpbnQ4X3QqKWVuY19zdGFydCwgKHVuc2lnbmVkIGludCAqKSZlbmNfb2N0ZXRfbGVuKTsK
KyAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9lbmNyeXB0KHNlc3Npb25fa2V5cy0+cnRwX2NpcGhl
ciwgKHVpbnQ4X3QgKillbmNfc3RhcnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAodW5zaWduZWQgaW50ICopJmVuY19vY3RldF9sZW4pOwogICAgIGlmIChzdGF0dXMpIHsKICAg
ICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19jaXBoZXJfZmFpbDsKICAgICB9CkBAIC0xNzk2
LDEwICsxODE1LDExIEBAIHNydHBfcHJvdGVjdF9hZWFkIChzcnRwX2N0eF90ICpjdHgsIHNydHBf
c3RyZWFtX2N0eF90ICpzdHJlYW0sCiAgICAgICogSWYgd2UncmUgZG9pbmcgR0NNLCB3ZSBuZWVk
IHRvIGdldCB0aGUgdGFnCiAgICAgICogYW5kIGFwcGVuZCB0aGF0IHRvIHRoZSBvdXRwdXQKICAg
ICAgKi8KLSAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9nZXRfdGFnKHNlc3Npb25fa2V5cy0+cnRw
X2NpcGhlciwgCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgKHVpbnQ4X3QqKWVuY19zdGFy
dCtlbmNfb2N0ZXRfbGVuLCAmdGFnX2xlbik7CisgICAgc3RhdHVzID0KKyAgICAgICAgc3J0cF9j
aXBoZXJfZ2V0X3RhZyhzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXIsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgKHVpbnQ4X3QgKillbmNfc3RhcnQgKyBlbmNfb2N0ZXRfbGVuLCAmdGFnX2xl
bik7CiAgICAgaWYgKHN0YXR1cykgewotCXJldHVybiAoIHNydHBfZXJyX3N0YXR1c19jaXBoZXJf
ZmFpbCk7CisgICAgICAgIHJldHVybiAoc3J0cF9lcnJfc3RhdHVzX2NpcGhlcl9mYWlsKTsKICAg
ICB9CiAKICAgICBta2lfbG9jYXRpb24gPSAodWludDhfdCAqKWhkciArICpwa3Rfb2N0ZXRfbGVu
ICsgdGFnX2xlbjsKQEAgLTE4MTQsNyArMTgzNCw2IEBAIHNydHBfcHJvdGVjdF9hZWFkIChzcnRw
X2N0eF90ICpjdHgsIHNydHBfc3RyZWFtX2N0eF90ICpzdHJlYW0sCiAgICAgcmV0dXJuIHNydHBf
ZXJyX3N0YXR1c19vazsKIH0KIAotCiAvKgogICogVGhpcyBmdW5jdGlvbiBoYW5kbGVzIGluY29t
aW5nIFNSVFAgcGFja2V0cyB3aGlsZSBpbiBBRUFEIG1vZGUsCiAgKiB3aGljaCBjdXJyZW50bHkg
c3VwcG9ydHMgQUVTLUdDTSBlbmNyeXB0aW9uLiAgQWxsIHBhY2tldHMgYXJlCkBAIC0xODIyLDEz
ICsxODQxLDE3IEBAIHNydHBfcHJvdGVjdF9hZWFkIChzcnRwX2N0eF90ICpjdHgsIHNydHBfc3Ry
ZWFtX2N0eF90ICpzdHJlYW0sCiAgKiBvZiB0aGUgcGFja2V0IHN0cmVhbSBhbmQgaXMgYXV0b21h
dGljYWxseSBjaGVja2VkIGJ5IEdDTQogICogd2hlbiBkZWNyeXB0aW5nIHRoZSBwYXlsb2FkLgog
ICovCi1zdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3QKLXNydHBfdW5wcm90ZWN0X2FlYWQgKHNydHBf
Y3R4X3QgKmN0eCwgc3J0cF9zdHJlYW1fY3R4X3QgKnN0cmVhbSwgaW50IGRlbHRhLCAKLSAgICAg
ICAgICAgICAgICAgICAgIHNydHBfeHRkX3NlcV9udW1fdCBlc3QsIHZvaWQgKnNydHBfaGRyLCB1
bnNpZ25lZCBpbnQgKnBrdF9vY3RldF9sZW4sCi0gICAgICAgICAgICAgICAgICAgICBzcnRwX3Nl
c3Npb25fa2V5c190ICpzZXNzaW9uX2tleXMsIHVuc2lnbmVkIGludCBta2lfc2l6ZSkKK3N0YXRp
YyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3VucHJvdGVjdF9hZWFkKHNydHBfY3R4X3QgKmN0eCwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfc3RyZWFt
X2N0eF90ICpzdHJlYW0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBpbnQgZGVsdGEsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBzcnRwX3h0ZF9zZXFfbnVtX3QgZXN0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgdm9pZCAqc3J0cF9oZHIsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgKnBrdF9vY3RldF9sZW4sCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcnRwX3Nlc3Npb25fa2V5
c190ICpzZXNzaW9uX2tleXMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB1bnNpZ25lZCBpbnQgbWtpX3NpemUpCiB7Ci0gICAgc3J0cF9oZHJfdCAqaGRyID0g
KHNydHBfaGRyX3QqKXNydHBfaGRyOwotICAgIHVpbnQzMl90ICplbmNfc3RhcnQ7ICAgICAgICAv
KiBwb2ludGVyIHRvIHN0YXJ0IG9mIGVuY3J5cHRlZCBwb3J0aW9uICAqLworICAgIHNydHBfaGRy
X3QgKmhkciA9IChzcnRwX2hkcl90ICopc3J0cF9oZHI7CisgICAgdWludDMyX3QgKmVuY19zdGFy
dDsgICAgICAgICAgICAvKiBwb2ludGVyIHRvIHN0YXJ0IG9mIGVuY3J5cHRlZCBwb3J0aW9uICAq
LwogICAgIHVuc2lnbmVkIGludCBlbmNfb2N0ZXRfbGVuID0gMDsgLyogbnVtYmVyIG9mIG9jdGV0
cyBpbiBlbmNyeXB0ZWQgcG9ydGlvbiAqLwogICAgIHYxMjhfdCBpdjsKICAgICBzcnRwX2Vycl9z
dGF0dXNfdCBzdGF0dXM7CkBAIC0xODM5LDcgKzE4NjIsOCBAQCBzcnRwX3VucHJvdGVjdF9hZWFk
IChzcnRwX2N0eF90ICpjdHgsIHNydHBfc3RyZWFtX2N0eF90ICpzdHJlYW0sIGludCBkZWx0YSwK
ICAgICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgImZ1bmN0aW9uIHNydHBfdW5wcm90ZWN0X2FlYWQi
LCBOVUxMKTsKIAogI2lmZGVmIE5PXzY0QklUX01BVEgKLSAgICBkZWJ1Z19wcmludDIobW9kX3Ny
dHAsICJlc3RpbWF0ZWQgdV9wYWNrZXQgaW5kZXg6ICUwOHglMDh4IiwgaGlnaDMyKGVzdCksIGxv
dzMyKGVzdCkpOworICAgIGRlYnVnX3ByaW50Mihtb2Rfc3J0cCwgImVzdGltYXRlZCB1X3BhY2tl
dCBpbmRleDogJTA4eCUwOHgiLCBoaWdoMzIoZXN0KSwKKyAgICAgICAgICAgICAgICAgbG93MzIo
ZXN0KSk7CiAjZWxzZQogICAgIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAiZXN0aW1hdGVkIHVfcGFj
a2V0IGluZGV4OiAlMDE2bGx4IiwgZXN0KTsKICNlbmRpZgpAQCAtMTg0OCwyMSArMTg3MiwyMiBA
QCBzcnRwX3VucHJvdGVjdF9hZWFkIChzcnRwX2N0eF90ICpjdHgsIHNydHBfc3RyZWFtX2N0eF90
ICpzdHJlYW0sIGludCBkZWx0YSwKICAgICB0YWdfbGVuID0gc3J0cF9hdXRoX2dldF90YWdfbGVu
Z3RoKHNlc3Npb25fa2V5cy0+cnRwX2F1dGgpOwogCiAgICAgLyoKLSAgICAgKiBBRUFEIHVzZXMg
YSBuZXcgSVYgZm9ybWF0aW9uIG1ldGhvZCAKKyAgICAgKiBBRUFEIHVzZXMgYSBuZXcgSVYgZm9y
bWF0aW9uIG1ldGhvZAogICAgICAqLwogICAgIHNydHBfY2FsY19hZWFkX2l2KHNlc3Npb25fa2V5
cywgJml2LCAmZXN0LCBoZHIpOwotICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3NldF9pdihzZXNz
aW9uX2tleXMtPnJ0cF9jaXBoZXIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICh1
aW50OF90KikmaXYsIHNydHBfZGlyZWN0aW9uX2RlY3J5cHQpOworICAgIHN0YXR1cyA9IHNydHBf
Y2lwaGVyX3NldF9pdihzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXIsICh1aW50OF90ICopJml2LAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcnRwX2RpcmVjdGlvbl9kZWNyeXB0KTsK
ICAgICBpZiAoIXN0YXR1cyAmJiBzZXNzaW9uX2tleXMtPnJ0cF94dG5faGRyX2NpcGhlcikgewot
ICAgICAgaXYudjMyWzBdID0gMDsKLSAgICAgIGl2LnYzMlsxXSA9IGhkci0+c3NyYzsKKyAgICAg
ICAgaXYudjMyWzBdID0gMDsKKyAgICAgICAgaXYudjMyWzFdID0gaGRyLT5zc3JjOwogI2lmZGVm
IE5PXzY0QklUX01BVEgKLSAgICAgIGl2LnY2NFsxXSA9IGJlNjRfdG9fY3B1KG1ha2U2NCgoaGln
aDMyKGVzdCkgPDwgMTYpIHwgKGxvdzMyKGVzdCkgPj4gMTYpLAotICAgICAgICAgICAgICAgICAg
bG93MzIoZXN0KSA8PCAxNikpOworICAgICAgICBpdi52NjRbMV0gPSBiZTY0X3RvX2NwdSgKKyAg
ICAgICAgICAgIG1ha2U2NCgoaGlnaDMyKGVzdCkgPDwgMTYpIHwgKGxvdzMyKGVzdCkgPj4gMTYp
LCBsb3czMihlc3QpIDw8IDE2KSk7CiAjZWxzZQotICAgICAgaXYudjY0WzFdID0gYmU2NF90b19j
cHUoZXN0IDw8IDE2KTsKKyAgICAgICAgaXYudjY0WzFdID0gYmU2NF90b19jcHUoZXN0IDw8IDE2
KTsKICNlbmRpZgotICAgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfc2V0X2l2KHNlc3Npb25fa2V5
cy0+cnRwX3h0bl9oZHJfY2lwaGVyLCAodWludDhfdCopJml2LCBzcnRwX2RpcmVjdGlvbl9lbmNy
eXB0KTsKKyAgICAgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfc2V0X2l2KHNlc3Npb25fa2V5cy0+
cnRwX3h0bl9oZHJfY2lwaGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
KHVpbnQ4X3QgKikmaXYsIHNydHBfZGlyZWN0aW9uX2VuY3J5cHQpOwogICAgIH0KICAgICBpZiAo
c3RhdHVzKSB7CiAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfY2lwaGVyX2ZhaWw7CkBA
IC0xODc0LDI1ICsxODk5LDI2IEBAIHNydHBfdW5wcm90ZWN0X2FlYWQgKHNydHBfY3R4X3QgKmN0
eCwgc3J0cF9zdHJlYW1fY3R4X3QgKnN0cmVhbSwgaW50IGRlbHRhLAogICAgICAqIGV4dGVuc2lv
biwgaWYgcHJlc2VudDsgb3RoZXJ3aXNlLCBpdCBzdGFydHMgYWZ0ZXIgdGhlIGxhc3QgY3NyYywK
ICAgICAgKiBpZiBhbnkgYXJlIHByZXNlbnQKICAgICAgKi8KLSAgICBlbmNfc3RhcnQgPSAodWlu
dDMyX3QqKWhkciArIHVpbnQzMnNfaW5fcnRwX2hlYWRlciArIGhkci0+Y2M7CisgICAgZW5jX3N0
YXJ0ID0gKHVpbnQzMl90ICopaGRyICsgdWludDMyc19pbl9ydHBfaGVhZGVyICsgaGRyLT5jYzsK
ICAgICBpZiAoaGRyLT54ID09IDEpIHsKLSAgICAgICAgeHRuX2hkciA9IChzcnRwX2hkcl94dG5k
X3QqKWVuY19zdGFydDsKKyAgICAgICAgeHRuX2hkciA9IChzcnRwX2hkcl94dG5kX3QgKillbmNf
c3RhcnQ7CiAgICAgICAgIGVuY19zdGFydCArPSAobnRvaHMoeHRuX2hkci0+bGVuZ3RoKSArIDEp
OwogICAgIH0KLSAgICBpZiAoISgodWludDhfdCopZW5jX3N0YXJ0IDw9ICh1aW50OF90KiloZHIg
KyAoKnBrdF9vY3RldF9sZW4gLSB0YWdfbGVuIC0gbWtpX3NpemUpKSkKKyAgICBpZiAoISgodWlu
dDhfdCAqKWVuY19zdGFydCA8PQorICAgICAgICAgICh1aW50OF90ICopaGRyICsgKCpwa3Rfb2N0
ZXRfbGVuIC0gdGFnX2xlbiAtIG1raV9zaXplKSkpCiAgICAgICAgIHJldHVybiBzcnRwX2Vycl9z
dGF0dXNfcGFyc2VfZXJyOwogICAgIC8qCi0gICAgICogV2UgcGFzcyB0aGUgdGFnIGRvd24gdG8g
dGhlIGNpcGhlciB3aGVuIGRvaW5nIEdDTSBtb2RlIAorICAgICAqIFdlIHBhc3MgdGhlIHRhZyBk
b3duIHRvIHRoZSBjaXBoZXIgd2hlbiBkb2luZyBHQ00gbW9kZQogICAgICAqLwogICAgIGVuY19v
Y3RldF9sZW4gPSAodW5zaWduZWQgaW50KSgqcGt0X29jdGV0X2xlbiAtIG1raV9zaXplIC0KLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKCh1aW50OF90KillbmNfc3RhcnQgLSAo
dWludDhfdCopaGRyKSk7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgodWlu
dDhfdCAqKWVuY19zdGFydCAtICh1aW50OF90ICopaGRyKSk7CiAKICAgICAvKgogICAgICAqIFNh
bml0eSBjaGVjayB0aGUgZW5jcnlwdGVkIHBheWxvYWQgbGVuZ3RoIGFnYWluc3QKICAgICAgKiB0
aGUgdGFnIHNpemUuICBJdCBtdXN0IGFsd2F5cyBiZSBhdCBsZWFzdCBhcyBsYXJnZQogICAgICAq
IGFzIHRoZSB0YWcgbGVuZ3RoLgogICAgICAqLwotICAgIGlmIChlbmNfb2N0ZXRfbGVuIDwgKHVu
c2lnbmVkIGludCkgdGFnX2xlbikgeworICAgIGlmIChlbmNfb2N0ZXRfbGVuIDwgKHVuc2lnbmVk
IGludCl0YWdfbGVuKSB7CiAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfY2lwaGVyX2Zh
aWw7CiAgICAgfQogCkBAIC0xOTE4LDI3ICsxOTQ0LDI4IEBAIHNydHBfdW5wcm90ZWN0X2FlYWQg
KHNydHBfY3R4X3QgKmN0eCwgc3J0cF9zdHJlYW1fY3R4X3QgKnN0cmVhbSwgaW50IGRlbHRhLAog
ICAgICAqIFNldCB0aGUgQUFEIGZvciBBRVMtR0NNLCB3aGljaCBpcyB0aGUgUlRQIGhlYWRlcgog
ICAgICAqLwogICAgIGFhZF9sZW4gPSAodWludDhfdCAqKWVuY19zdGFydCAtICh1aW50OF90ICop
aGRyOwotICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3NldF9hYWQoc2Vzc2lvbl9rZXlzLT5ydHBf
Y2lwaGVyLCAodWludDhfdCopaGRyLCBhYWRfbGVuKTsKKyAgICBzdGF0dXMgPQorICAgICAgICBz
cnRwX2NpcGhlcl9zZXRfYWFkKHNlc3Npb25fa2V5cy0+cnRwX2NpcGhlciwgKHVpbnQ4X3QgKilo
ZHIsIGFhZF9sZW4pOwogICAgIGlmIChzdGF0dXMpIHsKLSAgICAgICAgcmV0dXJuICggc3J0cF9l
cnJfc3RhdHVzX2NpcGhlcl9mYWlsKTsKKyAgICAgICAgcmV0dXJuIChzcnRwX2Vycl9zdGF0dXNf
Y2lwaGVyX2ZhaWwpOwogICAgIH0KIAogICAgIC8qIERlY3J5cHQgdGhlIGNpcGhlcnRleHQuICBU
aGlzIGFsc28gY2hlY2tzIHRoZSBhdXRoIHRhZyBiYXNlZAogICAgICAqIG9uIHRoZSBBQUQgd2Ug
anVzdCBzcGVjaWZpZWQgYWJvdmUgKi8KLSAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9kZWNyeXB0
KHNlc3Npb25fa2V5cy0+cnRwX2NpcGhlciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICh1aW50OF90KillbmNfc3RhcnQsICZlbmNfb2N0ZXRfbGVuKTsKKyAgICBzdGF0dXMgPSBz
cnRwX2NpcGhlcl9kZWNyeXB0KHNlc3Npb25fa2V5cy0+cnRwX2NpcGhlciwgKHVpbnQ4X3QgKill
bmNfc3RhcnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmZW5jX29jdGV0X2xl
bik7CiAgICAgaWYgKHN0YXR1cykgewogICAgICAgICByZXR1cm4gc3RhdHVzOwogICAgIH0KIAog
ICAgIGlmICh4dG5faGRyICYmIHNlc3Npb25fa2V5cy0+cnRwX3h0bl9oZHJfY2lwaGVyKSB7Ci0g
ICAgICAvKgotICAgICAgICogZXh0ZW5zaW9ucyBoZWFkZXIgZW5jcnlwdGlvbiBSRkMgNjkwNAot
ICAgICAgICovCi0gICAgICBzdGF0dXMgPSBzcnRwX3Byb2Nlc3NfaGVhZGVyX2VuY3J5cHRpb24o
c3RyZWFtLCB4dG5faGRyLCBzZXNzaW9uX2tleXMpOwotICAgICAgaWYgKHN0YXR1cykgewotICAg
ICAgICByZXR1cm4gc3RhdHVzOwotICAgICAgfQorICAgICAgICAvKgorICAgICAgICAgKiBleHRl
bnNpb25zIGhlYWRlciBlbmNyeXB0aW9uIFJGQyA2OTA0CisgICAgICAgICAqLworICAgICAgICBz
dGF0dXMgPSBzcnRwX3Byb2Nlc3NfaGVhZGVyX2VuY3J5cHRpb24oc3RyZWFtLCB4dG5faGRyLCBz
ZXNzaW9uX2tleXMpOworICAgICAgICBpZiAoc3RhdHVzKSB7CisgICAgICAgICAgICByZXR1cm4g
c3RhdHVzOworICAgICAgICB9CiAgICAgfQogCiAgICAgLyoKQEAgLTE5NzQsNyArMjAwMSw4IEBA
IHNydHBfdW5wcm90ZWN0X2FlYWQgKHNydHBfY3R4X3QgKmN0eCwgc3J0cF9zdHJlYW1fY3R4X3Qg
KnN0cmVhbSwgaW50IGRlbHRhLAogICAgICAgICAgKiBzdHJlYW0sIGFuZCBzb21lIGltcGxlbWVu
dGF0aW9ucyB3aWxsIHdhbnQgdG8gbm90IHJldHVybgogICAgICAgICAgKiBmYWlsdXJlIGhlcmUK
ICAgICAgICAgICovCi0gICAgICAgIHN0YXR1cyA9IHNydHBfc3RyZWFtX2Nsb25lKGN0eC0+c3Ry
ZWFtX3RlbXBsYXRlLCBoZHItPnNzcmMsICZuZXdfc3RyZWFtKTsKKyAgICAgICAgc3RhdHVzID0K
KyAgICAgICAgICAgIHNydHBfc3RyZWFtX2Nsb25lKGN0eC0+c3RyZWFtX3RlbXBsYXRlLCBoZHIt
PnNzcmMsICZuZXdfc3RyZWFtKTsKICAgICAgICAgaWYgKHN0YXR1cykgewogICAgICAgICAgICAg
cmV0dXJuIHN0YXR1czsKICAgICAgICAgfQpAQCAtMjAwMiw3MjQgKzIwMzAsNzMwIEBAIHNydHBf
dW5wcm90ZWN0X2FlYWQgKHNydHBfY3R4X3QgKmN0eCwgc3J0cF9zdHJlYW1fY3R4X3QgKnN0cmVh
bSwgaW50IGRlbHRhLAogICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAKK3NydHBf
ZXJyX3N0YXR1c190IHNydHBfcHJvdGVjdChzcnRwX2N0eF90ICpjdHgsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgdm9pZCAqcnRwX2hkciwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBpbnQgKnBrdF9vY3RldF9sZW4pCit7CisgICAgcmV0dXJuIHNydHBfcHJvdGVjdF9t
a2koY3R4LCBydHBfaGRyLCBwa3Rfb2N0ZXRfbGVuLCAwLCAwKTsKK30KIAotIHNydHBfZXJyX3N0
YXR1c190Ci0gc3J0cF9wcm90ZWN0KHNydHBfY3R4X3QgKmN0eCwgdm9pZCAqcnRwX2hkciwgaW50
ICpwa3Rfb2N0ZXRfbGVuKSB7Ci0gICByZXR1cm4gc3J0cF9wcm90ZWN0X21raShjdHgsIHJ0cF9o
ZHIsIHBrdF9vY3RldF9sZW4sIDAsIDApOwotIH0KLQotc3J0cF9lcnJfc3RhdHVzX3QKLXNydHBf
cHJvdGVjdF9ta2koc3J0cF9jdHhfdCAqY3R4LCB2b2lkICpydHBfaGRyLCBpbnQgKnBrdF9vY3Rl
dF9sZW4sCi0gICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCB1c2VfbWtpLCB1bnNpZ25lZCBp
bnQgbWtpX2luZGV4ICkgewotICAgc3J0cF9oZHJfdCAqaGRyID0gKHNydHBfaGRyX3QgKilydHBf
aGRyOwotICAgdWludDMyX3QgKmVuY19zdGFydDsgICAgICAgIC8qIHBvaW50ZXIgdG8gc3RhcnQg
b2YgZW5jcnlwdGVkIHBvcnRpb24gICovCi0gICB1aW50MzJfdCAqYXV0aF9zdGFydDsgICAgICAg
LyogcG9pbnRlciB0byBzdGFydCBvZiBhdXRoLiBwb3J0aW9uICAgICAgKi8KLSAgIGludCBlbmNf
b2N0ZXRfbGVuID0gMDsgLyogbnVtYmVyIG9mIG9jdGV0cyBpbiBlbmNyeXB0ZWQgcG9ydGlvbiAg
Ki8KLSAgIHNydHBfeHRkX3NlcV9udW1fdCBlc3Q7ICAgICAgICAgIC8qIGVzdGltYXRlZCB4dGRf
c2VxX251bV90IG9mICpoZHIgICAgICAgICovCi0gICBpbnQgZGVsdGE7ICAgICAgICAgICAgICAg
ICAgLyogZGVsdGEgb2YgbG9jYWwgcGt0IGlkeCBhbmQgdGhhdCBpbiBoZHIgKi8KLSAgIHVpbnQ4
X3QgKmF1dGhfdGFnID0gTlVMTDsgICAvKiBsb2NhdGlvbiBvZiBhdXRoX3RhZyB3aXRoaW4gcGFj
a2V0ICAgICAqLwotICAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVzOyAgIAotICAgaW50IHRhZ19s
ZW47Ci0gICBzcnRwX3N0cmVhbV9jdHhfdCAqc3RyZWFtOwotICAgdWludDMyX3QgcHJlZml4X2xl
bjsKLSAgIHNydHBfaGRyX3h0bmRfdCAqeHRuX2hkciA9IE5VTEw7Ci0gICB1bnNpZ25lZCBpbnQg
bWtpX3NpemUgPSAwOwotICAgc3J0cF9zZXNzaW9uX2tleXNfdCAqc2Vzc2lvbl9rZXlzID0gTlVM
TDsKLSAgIHVpbnQ4X3QqIG1raV9sb2NhdGlvbiA9IE5VTEw7Ci0gICBpbnQgYWR2YW5jZV9wYWNr
ZXRfaW5kZXggPSAwOwotCi0gICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgImZ1bmN0aW9uIHNydHBf
cHJvdGVjdCIsIE5VTEwpOwotCi0gIC8qIHdlIGFzc3VtZSB0aGUgaGRyIGlzIDMyLWJpdCBhbGln
bmVkIHRvIHN0YXJ0ICovCi0KLSAgLyogVmVyaWZ5IFJUUCBoZWFkZXIgKi8KLSAgc3RhdHVzID0g
c3J0cF92YWxpZGF0ZV9ydHBfaGVhZGVyKHJ0cF9oZHIsIHBrdF9vY3RldF9sZW4pOwotICBpZiAo
c3RhdHVzKQotICAgIHJldHVybiBzdGF0dXM7Ci0KLSAgIC8qIGNoZWNrIHRoZSBwYWNrZXQgbGVu
Z3RoIC0gaXQgbXVzdCBhdCBsZWFzdCBjb250YWluIGEgZnVsbCBoZWFkZXIgKi8KLSAgIGlmICgq
cGt0X29jdGV0X2xlbiA8IG9jdGV0c19pbl9ydHBfaGVhZGVyKQotICAgICByZXR1cm4gc3J0cF9l
cnJfc3RhdHVzX2JhZF9wYXJhbTsKK3NydHBfZXJyX3N0YXR1c190IHNydHBfcHJvdGVjdF9ta2ko
c3J0cF9jdHhfdCAqY3R4LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2b2lk
ICpydHBfaGRyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgKnBrdF9v
Y3RldF9sZW4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGlu
dCB1c2VfbWtpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBp
bnQgbWtpX2luZGV4KQoreworICAgIHNydHBfaGRyX3QgKmhkciA9IChzcnRwX2hkcl90ICopcnRw
X2hkcjsKKyAgICB1aW50MzJfdCAqZW5jX3N0YXJ0OyAgICAgIC8qIHBvaW50ZXIgdG8gc3RhcnQg
b2YgZW5jcnlwdGVkIHBvcnRpb24gICovCisgICAgdWludDMyX3QgKmF1dGhfc3RhcnQ7ICAgICAv
KiBwb2ludGVyIHRvIHN0YXJ0IG9mIGF1dGguIHBvcnRpb24gICAgICAqLworICAgIGludCBlbmNf
b2N0ZXRfbGVuID0gMDsgICAgLyogbnVtYmVyIG9mIG9jdGV0cyBpbiBlbmNyeXB0ZWQgcG9ydGlv
biAgKi8KKyAgICBzcnRwX3h0ZF9zZXFfbnVtX3QgZXN0OyAgIC8qIGVzdGltYXRlZCB4dGRfc2Vx
X251bV90IG9mICpoZHIgICAgICAgICovCisgICAgaW50IGRlbHRhOyAgICAgICAgICAgICAgICAv
KiBkZWx0YSBvZiBsb2NhbCBwa3QgaWR4IGFuZCB0aGF0IGluIGhkciAqLworICAgIHVpbnQ4X3Qg
KmF1dGhfdGFnID0gTlVMTDsgLyogbG9jYXRpb24gb2YgYXV0aF90YWcgd2l0aGluIHBhY2tldCAg
ICAgKi8KKyAgICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7CisgICAgaW50IHRhZ19sZW47Cisg
ICAgc3J0cF9zdHJlYW1fY3R4X3QgKnN0cmVhbTsKKyAgICB1aW50MzJfdCBwcmVmaXhfbGVuOwor
ICAgIHNydHBfaGRyX3h0bmRfdCAqeHRuX2hkciA9IE5VTEw7CisgICAgdW5zaWduZWQgaW50IG1r
aV9zaXplID0gMDsKKyAgICBzcnRwX3Nlc3Npb25fa2V5c190ICpzZXNzaW9uX2tleXMgPSBOVUxM
OworICAgIHVpbnQ4X3QgKm1raV9sb2NhdGlvbiA9IE5VTEw7CisgICAgaW50IGFkdmFuY2VfcGFj
a2V0X2luZGV4ID0gMDsKIAotICAgLyoKLSAgICAqIGxvb2sgdXAgc3NyYyBpbiBzcnRwX3N0cmVh
bSBsaXN0LCBhbmQgcHJvY2VzcyB0aGUgcGFja2V0IHdpdGgKLSAgICAqIHRoZSBhcHByb3ByaWF0
ZSBzdHJlYW0uICBpZiB3ZSBoYXZlbid0IHNlZW4gdGhpcyBzdHJlYW0gYmVmb3JlLAotICAgICog
dGhlcmUncyBhIHRlbXBsYXRlIGtleSBmb3IgdGhpcyBzcnRwX3Nlc3Npb24sIGFuZCB0aGUgY2lw
aGVyCi0gICAgKiBzdXBwb3J0cyBrZXktc2hhcmluZywgdGhlbiB3ZSBhc3N1bWUgdGhhdCBhIG5l
dyBzdHJlYW0gdXNpbmcKLSAgICAqIHRoYXQga2V5IGhhcyBqdXN0IHN0YXJ0ZWQgdXAKLSAgICAq
LwotICAgc3RyZWFtID0gc3J0cF9nZXRfc3RyZWFtKGN0eCwgaGRyLT5zc3JjKTsKLSAgIGlmIChz
dHJlYW0gPT0gTlVMTCkgewotICAgICBpZiAoY3R4LT5zdHJlYW1fdGVtcGxhdGUgIT0gTlVMTCkg
ewotICAgICAgIHNydHBfc3RyZWFtX2N0eF90ICpuZXdfc3RyZWFtOwotCi0gICAgICAgLyogYWxs
b2NhdGUgYW5kIGluaXRpYWxpemUgYSBuZXcgc3RyZWFtICovCi0gICAgICAgc3RhdHVzID0gc3J0
cF9zdHJlYW1fY2xvbmUoY3R4LT5zdHJlYW1fdGVtcGxhdGUsIAotCQkJCSAgaGRyLT5zc3JjLCAm
bmV3X3N0cmVhbSk7IAotICAgICAgIGlmIChzdGF0dXMpCi0JIHJldHVybiBzdGF0dXM7Ci0KLSAg
ICAgICAvKiBhZGQgbmV3IHN0cmVhbSB0byB0aGUgaGVhZCBvZiB0aGUgc3RyZWFtX2xpc3QgKi8K
LSAgICAgICBuZXdfc3RyZWFtLT5uZXh0ID0gY3R4LT5zdHJlYW1fbGlzdDsKLSAgICAgICBjdHgt
PnN0cmVhbV9saXN0ID0gbmV3X3N0cmVhbTsKLQotICAgICAgIC8qIHNldCBkaXJlY3Rpb24gdG8g
b3V0Ym91bmQgKi8KLSAgICAgICBuZXdfc3RyZWFtLT5kaXJlY3Rpb24gPSBkaXJfc3J0cF9zZW5k
ZXI7Ci0KLSAgICAgICAvKiBzZXQgc3RyZWFtICh0aGUgcG9pbnRlciB1c2VkIGluIHRoaXMgZnVu
Y3Rpb24pICovCi0gICAgICAgc3RyZWFtID0gbmV3X3N0cmVhbTsKLSAgICAgfSBlbHNlIHsKLSAg
ICAgICAvKiBubyB0ZW1wbGF0ZSBzdHJlYW0sIHNvIHdlIHJldHVybiBhbiBlcnJvciAqLwotICAg
ICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfbm9fY3R4OwotICAgICB9IAotICAgfQotCi0gICAv
KiAKLSAgICAqIHZlcmlmeSB0aGF0IHN0cmVhbSBpcyBmb3Igc2VuZGluZyB0cmFmZmljIC0gdGhp
cyBjaGVjayB3aWxsCi0gICAgKiBkZXRlY3QgU1NSQyBjb2xsaXNpb25zLCBzaW5jZSBhIHN0cmVh
bSB0aGF0IGFwcGVhcnMgaW4gYm90aAotICAgICogc3J0cF9wcm90ZWN0KCkgYW5kIHNydHBfdW5w
cm90ZWN0KCkgd2lsbCBmYWlsIHRoaXMgdGVzdCBpbiBvbmUgb2YKLSAgICAqIHRob3NlIGZ1bmN0
aW9ucy4KLSAgICAqLworICAgIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAiZnVuY3Rpb24gc3J0cF9w
cm90ZWN0IiwgTlVMTCk7CiAKLSAgaWYgKHN0cmVhbS0+ZGlyZWN0aW9uICE9IGRpcl9zcnRwX3Nl
bmRlcikgewotICAgICBpZiAoc3RyZWFtLT5kaXJlY3Rpb24gPT0gZGlyX3Vua25vd24pIHsKLSAg
ICAgICBzdHJlYW0tPmRpcmVjdGlvbiA9IGRpcl9zcnRwX3NlbmRlcjsKLSAgICAgfSBlbHNlIHsK
LSAgICAgICBzcnRwX2hhbmRsZV9ldmVudChjdHgsIHN0cmVhbSwgZXZlbnRfc3NyY19jb2xsaXNp
b24pOwotICAgICB9Ci0gIH0KKyAgICAvKiB3ZSBhc3N1bWUgdGhlIGhkciBpcyAzMi1iaXQgYWxp
Z25lZCB0byBzdGFydCAqLwogCi0gIHNlc3Npb25fa2V5cyA9IHNydHBfZ2V0X3Nlc3Npb25fa2V5
c193aXRoX21raV9pbmRleChzdHJlYW0sIHVzZV9ta2ksIG1raV9pbmRleCk7CisgICAgLyogVmVy
aWZ5IFJUUCBoZWFkZXIgKi8KKyAgICBzdGF0dXMgPSBzcnRwX3ZhbGlkYXRlX3J0cF9oZWFkZXIo
cnRwX2hkciwgcGt0X29jdGV0X2xlbik7CisgICAgaWYgKHN0YXR1cykKKyAgICAgICAgcmV0dXJu
IHN0YXR1czsKIAotICAgLyoKLSAgICAqIENoZWNrIGlmIHRoaXMgaXMgYW4gQUVBRCBzdHJlYW0g
KEdDTSBtb2RlKS4gIElmIHNvLCB0aGVuIGRpc3BhdGNoCi0gICAgKiB0aGUgcmVxdWVzdCB0byBv
dXIgQUVBRCBoYW5kbGVyLgotICAgICovCi0gIGlmIChzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXIt
PmFsZ29yaXRobSA9PSBTUlRQX0FFU19HQ01fMTI4IHx8Ci0gICAgICBzZXNzaW9uX2tleXMtPnJ0
cF9jaXBoZXItPmFsZ29yaXRobSA9PSBTUlRQX0FFU19HQ01fMjU2KSB7Ci0gICAgICByZXR1cm4g
c3J0cF9wcm90ZWN0X2FlYWQoY3R4LCBzdHJlYW0sIHJ0cF9oZHIsCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgKHVuc2lnbmVkIGludCopcGt0X29jdGV0X2xlbiwgc2Vzc2lvbl9rZXlz
LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZV9ta2kpOwotICB9Ci0KLSAgLyog
Ci0gICAqIHVwZGF0ZSB0aGUga2V5IHVzYWdlIGxpbWl0LCBhbmQgY2hlY2sgaXQgdG8gbWFrZSBz
dXJlIHRoYXQgd2UKLSAgICogZGlkbid0IGp1c3QgaGl0IGVpdGhlciB0aGUgc29mdCBsaW1pdCBv
ciB0aGUgaGFyZCBsaW1pdCwgYW5kIGNhbGwKLSAgICogdGhlIGV2ZW50IGhhbmRsZXIgaWYgd2Ug
aGl0IGVpdGhlci4KLSAgICovCi0gIHN3aXRjaChzcnRwX2tleV9saW1pdF91cGRhdGUoc2Vzc2lv
bl9rZXlzLT5saW1pdCkpIHsKLSAgY2FzZSBzcnRwX2tleV9ldmVudF9ub3JtYWw6Ci0gICAgYnJl
YWs7Ci0gIGNhc2Ugc3J0cF9rZXlfZXZlbnRfc29mdF9saW1pdDogCi0gICAgc3J0cF9oYW5kbGVf
ZXZlbnQoY3R4LCBzdHJlYW0sIGV2ZW50X2tleV9zb2Z0X2xpbWl0KTsKLSAgICBicmVhazsgCi0g
IGNhc2Ugc3J0cF9rZXlfZXZlbnRfaGFyZF9saW1pdDoKLSAgICBzcnRwX2hhbmRsZV9ldmVudChj
dHgsIHN0cmVhbSwgZXZlbnRfa2V5X2hhcmRfbGltaXQpOwotCXJldHVybiBzcnRwX2Vycl9zdGF0
dXNfa2V5X2V4cGlyZWQ7Ci0gIGRlZmF1bHQ6Ci0gICAgYnJlYWs7Ci0gIH0KLQotICAgLyogZ2V0
IHRhZyBsZW5ndGggZnJvbSBzdHJlYW0gKi8KLSAgIHRhZ19sZW4gPSBzcnRwX2F1dGhfZ2V0X3Rh
Z19sZW5ndGgoc2Vzc2lvbl9rZXlzLT5ydHBfYXV0aCk7IAotCi0gICAvKgotICAgICogZmluZCBz
dGFydGluZyBwb2ludCBmb3IgZW5jcnlwdGlvbiBhbmQgbGVuZ3RoIG9mIGRhdGEgdG8gYmUKLSAg
ICAqIGVuY3J5cHRlZCAtIHRoZSBlbmNyeXB0ZWQgcG9ydGlvbiBzdGFydHMgYWZ0ZXIgdGhlIHJ0
cCBoZWFkZXIKLSAgICAqIGV4dGVuc2lvbiwgaWYgcHJlc2VudDsgb3RoZXJ3aXNlLCBpdCBzdGFy
dHMgYWZ0ZXIgdGhlIGxhc3QgY3NyYywKLSAgICAqIGlmIGFueSBhcmUgcHJlc2VudAotICAgICoK
LSAgICAqIGlmIHdlJ3JlIG5vdCBwcm92aWRpbmcgY29uZmlkZW50aWFsaXR5LCBzZXQgZW5jX3N0
YXJ0IHRvIE5VTEwKLSAgICAqLwotICAgaWYgKHN0cmVhbS0+cnRwX3NlcnZpY2VzICYgc2VjX3Nl
cnZfY29uZikgewotICAgICBlbmNfc3RhcnQgPSAodWludDMyX3QgKiloZHIgKyB1aW50MzJzX2lu
X3J0cF9oZWFkZXIgKyBoZHItPmNjOyAgCi0gICAgIGlmIChoZHItPnggPT0gMSkgewotICAgICAg
IHh0bl9oZHIgPSAoc3J0cF9oZHJfeHRuZF90ICopZW5jX3N0YXJ0OwotICAgICAgIGVuY19zdGFy
dCArPSAobnRvaHMoeHRuX2hkci0+bGVuZ3RoKSArIDEpOwotICAgICB9Ci0gICAgIC8qIG5vdGU6
IHRoZSBwYXNzZWQgc2l6ZSBpcyB3aXRob3V0IHRoZSBhdXRoIHRhZyAqLwotICAgICBpZiAoISgo
dWludDhfdCopZW5jX3N0YXJ0IDw9ICh1aW50OF90KiloZHIgKyAqcGt0X29jdGV0X2xlbikpCi0g
ICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19wYXJzZV9lcnI7Ci0gICAgIGVuY19vY3RldF9s
ZW4gPSAoaW50KSgqcGt0X29jdGV0X2xlbiAtCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAoKHVpbnQ4X3QqKWVuY19zdGFydCAtICh1aW50OF90KiloZHIpKTsKLSAgICAgaWYg
KGVuY19vY3RldF9sZW4gPCAwKSByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX3BhcnNlX2VycjsKLSAg
IH0gZWxzZSB7Ci0gICAgIGVuY19zdGFydCA9IE5VTEw7Ci0gICB9Ci0KLSAgIG1raV9sb2NhdGlv
biA9ICh1aW50OF90ICopaGRyICsgKnBrdF9vY3RldF9sZW47Ci0gICBta2lfc2l6ZSA9IHNydHBf
aW5qZWN0X21raShta2lfbG9jYXRpb24sIHNlc3Npb25fa2V5cywgdXNlX21raSk7Ci0KLSAgIC8q
IAotICAgICogaWYgd2UncmUgcHJvdmlkaW5nIGF1dGhlbnRpY2F0aW9uLCBzZXQgdGhlIGF1dGhf
c3RhcnQgYW5kIGF1dGhfdGFnCi0gICAgKiBwb2ludGVycyB0byB0aGUgcHJvcGVyIGxvY2F0aW9u
czsgb3RoZXJ3aXNlLCBzZXQgYXV0aF9zdGFydCB0byBOVUxMCi0gICAgKiB0byBpbmRpY2F0ZSB0
aGF0IG5vIGF1dGhlbnRpY2F0aW9uIGlzIG5lZWRlZAotICAgICovCi0gICBpZiAoc3RyZWFtLT5y
dHBfc2VydmljZXMgJiBzZWNfc2Vydl9hdXRoKSB7Ci0gICAgIGF1dGhfc3RhcnQgPSAodWludDMy
X3QgKiloZHI7Ci0gICAgIGF1dGhfdGFnID0gKHVpbnQ4X3QgKiloZHIgKyAqcGt0X29jdGV0X2xl
biArIG1raV9zaXplOwotICAgfSBlbHNlIHsKLSAgICAgYXV0aF9zdGFydCA9IE5VTEw7Ci0gICAg
IGF1dGhfdGFnID0gTlVMTDsKLSAgIH0KLQotICAvKgotICAgKiBlc3RpbWF0ZSB0aGUgcGFja2V0
IGluZGV4IHVzaW5nIHRoZSBzdGFydCBvZiB0aGUgcmVwbGF5IHdpbmRvdwotICAgKiBhbmQgdGhl
IHNlcXVlbmNlIG51bWJlciBmcm9tIHRoZSBoZWFkZXIKLSAgICovCi0gIHN0YXR1cyA9IHNydHBf
Z2V0X2VzdF9wa3RfaW5kZXgoaGRyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHN0cmVhbSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmZXN0LAotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICZkZWx0YSk7Ci0KLSAgaWYgKHN0YXR1cyAmJiAo
c3RhdHVzICE9IHNydHBfZXJyX3N0YXR1c19wa3RfaWR4X2FkdikpCi0gICAgcmV0dXJuIHN0YXR1
czsKKyAgICAvKiBjaGVjayB0aGUgcGFja2V0IGxlbmd0aCAtIGl0IG11c3QgYXQgbGVhc3QgY29u
dGFpbiBhIGZ1bGwgaGVhZGVyICovCisgICAgaWYgKCpwa3Rfb2N0ZXRfbGVuIDwgb2N0ZXRzX2lu
X3J0cF9oZWFkZXIpCisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtOwog
Ci0gIGlmIChzdGF0dXMgPT0gc3J0cF9lcnJfc3RhdHVzX3BrdF9pZHhfYWR2KQotICAgIGFkdmFu
Y2VfcGFja2V0X2luZGV4ID0gMTsKKyAgICAvKgorICAgICAqIGxvb2sgdXAgc3NyYyBpbiBzcnRw
X3N0cmVhbSBsaXN0LCBhbmQgcHJvY2VzcyB0aGUgcGFja2V0IHdpdGgKKyAgICAgKiB0aGUgYXBw
cm9wcmlhdGUgc3RyZWFtLiAgaWYgd2UgaGF2ZW4ndCBzZWVuIHRoaXMgc3RyZWFtIGJlZm9yZSwK
KyAgICAgKiB0aGVyZSdzIGEgdGVtcGxhdGUga2V5IGZvciB0aGlzIHNydHBfc2Vzc2lvbiwgYW5k
IHRoZSBjaXBoZXIKKyAgICAgKiBzdXBwb3J0cyBrZXktc2hhcmluZywgdGhlbiB3ZSBhc3N1bWUg
dGhhdCBhIG5ldyBzdHJlYW0gdXNpbmcKKyAgICAgKiB0aGF0IGtleSBoYXMganVzdCBzdGFydGVk
IHVwCisgICAgICovCisgICAgc3RyZWFtID0gc3J0cF9nZXRfc3RyZWFtKGN0eCwgaGRyLT5zc3Jj
KTsKKyAgICBpZiAoc3RyZWFtID09IE5VTEwpIHsKKyAgICAgICAgaWYgKGN0eC0+c3RyZWFtX3Rl
bXBsYXRlICE9IE5VTEwpIHsKKyAgICAgICAgICAgIHNydHBfc3RyZWFtX2N0eF90ICpuZXdfc3Ry
ZWFtOwogCi0gIGlmIChhZHZhbmNlX3BhY2tldF9pbmRleCkgewotICAgIHNydHBfcmRieF9zZXRf
cm9jX3NlcSgmc3RyZWFtLT5ydHBfcmRieCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgKHVp
bnQzMl90KShlc3QgPj4gMTYpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAodWludDE2X3Qp
KGVzdCAmIDB4RkZGRikpOwotICAgIHN0cmVhbS0+cGVuZGluZ19yb2MgPSAwOwotICAgIHNydHBf
cmRieF9hZGRfaW5kZXgoJnN0cmVhbS0+cnRwX3JkYngsIDApOwotICB9IGVsc2UgewotICAgIHN0
YXR1cyA9IHNydHBfcmRieF9jaGVjaygmc3RyZWFtLT5ydHBfcmRieCwgZGVsdGEpOwotICAgIGlm
IChzdGF0dXMpIHsKLSAgICAgIGlmIChzdGF0dXMgIT0gc3J0cF9lcnJfc3RhdHVzX3JlcGxheV9m
YWlsIHx8ICFzdHJlYW0tPmFsbG93X3JlcGVhdF90eCkKLSAgICAgICAgcmV0dXJuIHN0YXR1czsg
Lyogd2UndmUgYmVlbiBhc2tlZCB0byByZXVzZSBhbiBpbmRleCAqLwotICAgIH0KLSAgICBzcnRw
X3JkYnhfYWRkX2luZGV4KCZzdHJlYW0tPnJ0cF9yZGJ4LCBkZWx0YSk7Ci0gIH0KKyAgICAgICAg
ICAgIC8qIGFsbG9jYXRlIGFuZCBpbml0aWFsaXplIGEgbmV3IHN0cmVhbSAqLworICAgICAgICAg
ICAgc3RhdHVzID0KKyAgICAgICAgICAgICAgICBzcnRwX3N0cmVhbV9jbG9uZShjdHgtPnN0cmVh
bV90ZW1wbGF0ZSwgaGRyLT5zc3JjLCAmbmV3X3N0cmVhbSk7CisgICAgICAgICAgICBpZiAoc3Rh
dHVzKQorICAgICAgICAgICAgICAgIHJldHVybiBzdGF0dXM7CiAKLSNpZmRlZiBOT182NEJJVF9N
QVRICi0gICBkZWJ1Z19wcmludDIobW9kX3NydHAsICJlc3RpbWF0ZWQgcGFja2V0IGluZGV4OiAl
MDh4JTA4eCIsIAotCQloaWdoMzIoZXN0KSxsb3czMihlc3QpKTsKLSNlbHNlCi0gICBkZWJ1Z19w
cmludChtb2Rfc3J0cCwgImVzdGltYXRlZCBwYWNrZXQgaW5kZXg6ICUwMTZsbHgiLCBlc3QpOwot
I2VuZGlmCisgICAgICAgICAgICAvKiBhZGQgbmV3IHN0cmVhbSB0byB0aGUgaGVhZCBvZiB0aGUg
c3RyZWFtX2xpc3QgKi8KKyAgICAgICAgICAgIG5ld19zdHJlYW0tPm5leHQgPSBjdHgtPnN0cmVh
bV9saXN0OworICAgICAgICAgICAgY3R4LT5zdHJlYW1fbGlzdCA9IG5ld19zdHJlYW07CiAKLSAg
IC8qIAotICAgICogaWYgd2UncmUgdXNpbmcgcmluZGFlbCBjb3VudGVyIG1vZGUsIHNldCBub25j
ZSBhbmQgc2VxIAotICAgICovCi0gICBpZiAoc2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVyLT50eXBl
LT5pZCA9PSBTUlRQX0FFU19JQ01fMTI4IHx8Ci0gICAgICAgc2Vzc2lvbl9rZXlzLT5ydHBfY2lw
aGVyLT50eXBlLT5pZCA9PSBTUlRQX0FFU19JQ01fMTkyIHx8Ci0gICAgICAgc2Vzc2lvbl9rZXlz
LT5ydHBfY2lwaGVyLT50eXBlLT5pZCA9PSBTUlRQX0FFU19JQ01fMjU2KSB7Ci0gICAgIHYxMjhf
dCBpdjsKKyAgICAgICAgICAgIC8qIHNldCBkaXJlY3Rpb24gdG8gb3V0Ym91bmQgKi8KKyAgICAg
ICAgICAgIG5ld19zdHJlYW0tPmRpcmVjdGlvbiA9IGRpcl9zcnRwX3NlbmRlcjsKIAotICAgICBp
di52MzJbMF0gPSAwOwotICAgICBpdi52MzJbMV0gPSBoZHItPnNzcmM7Ci0jaWZkZWYgTk9fNjRC
SVRfTUFUSAotICAgICBpdi52NjRbMV0gPSBiZTY0X3RvX2NwdShtYWtlNjQoKGhpZ2gzMihlc3Qp
IDw8IDE2KSB8IChsb3czMihlc3QpID4+IDE2KSwKLQkJCQkJCQkJIGxvdzMyKGVzdCkgPDwgMTYp
KTsKLSNlbHNlCi0gICAgIGl2LnY2NFsxXSA9IGJlNjRfdG9fY3B1KGVzdCA8PCAxNik7Ci0jZW5k
aWYKLSAgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfc2V0X2l2KHNlc3Npb25fa2V5cy0+cnRwX2Np
cGhlciwgKHVpbnQ4X3QqKSZpdiwgc3J0cF9kaXJlY3Rpb25fZW5jcnlwdCk7Ci0gICAgIGlmICgh
c3RhdHVzICYmIHNlc3Npb25fa2V5cy0+cnRwX3h0bl9oZHJfY2lwaGVyKSB7Ci0gICAgICAgc3Rh
dHVzID0gc3J0cF9jaXBoZXJfc2V0X2l2KHNlc3Npb25fa2V5cy0+cnRwX3h0bl9oZHJfY2lwaGVy
LCAodWludDhfdCopJml2LCBzcnRwX2RpcmVjdGlvbl9lbmNyeXB0KTsKLSAgICAgfQotICAgfSBl
bHNlIHsgIAotICAgICB2MTI4X3QgaXY7Ci0KLSAgICAgLyogb3RoZXJ3aXNlLCBzZXQgdGhlIGlu
ZGV4IHRvIGVzdCAqLyAgCi0jaWZkZWYgTk9fNjRCSVRfTUFUSAotICAgICBpdi52MzJbMF0gPSAw
OwotICAgICBpdi52MzJbMV0gPSAwOwotI2Vsc2UKLSAgICAgaXYudjY0WzBdID0gMDsKLSNlbmRp
ZgotICAgICBpdi52NjRbMV0gPSBiZTY0X3RvX2NwdShlc3QpOwotICAgICBzdGF0dXMgPSBzcnRw
X2NpcGhlcl9zZXRfaXYoc2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVyLCAodWludDhfdCopJml2LCBz
cnRwX2RpcmVjdGlvbl9lbmNyeXB0KTsKLSAgICAgaWYgKCFzdGF0dXMgJiYgc2Vzc2lvbl9rZXlz
LT5ydHBfeHRuX2hkcl9jaXBoZXIpIHsKLSAgICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9zZXRf
aXYoc2Vzc2lvbl9rZXlzLT5ydHBfeHRuX2hkcl9jaXBoZXIsICh1aW50OF90KikmaXYsIHNydHBf
ZGlyZWN0aW9uX2VuY3J5cHQpOwotICAgICB9Ci0gICB9Ci0gICBpZiAoc3RhdHVzKQotICAgICBy
ZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2NpcGhlcl9mYWlsOwotCi0gICAvKiBzaGlmdCBlc3QsIHB1
dCBpbnRvIG5ldHdvcmsgYnl0ZSBvcmRlciAqLwotI2lmZGVmIE5PXzY0QklUX01BVEgKLSAgIGVz
dCA9IGJlNjRfdG9fY3B1KG1ha2U2NCgoaGlnaDMyKGVzdCkgPDwgMTYpIHwKLQkJCQkJCSAobG93
MzIoZXN0KSA+PiAxNiksCi0JCQkJCQkgbG93MzIoZXN0KSA8PCAxNikpOwotI2Vsc2UKLSAgIGVz
dCA9IGJlNjRfdG9fY3B1KGVzdCA8PCAxNik7Ci0jZW5kaWYKLSAgIAotICAgLyogCi0gICAgKiBp
ZiB3ZSdyZSBhdXRoZW50aWNhdGluZyB1c2luZyBhIHVuaXZlcnNhbCBoYXNoLCBwdXQgdGhlIGtl
eXN0cmVhbQotICAgICogcHJlZml4IGludG8gdGhlIGF1dGhlbnRpY2F0aW9uIHRhZwotICAgICov
Ci0gICBpZiAoYXV0aF9zdGFydCkgewotICAgICAKLSAgICBwcmVmaXhfbGVuID0gc3J0cF9hdXRo
X2dldF9wcmVmaXhfbGVuZ3RoKHNlc3Npb25fa2V5cy0+cnRwX2F1dGgpOyAgICAKLSAgICBpZiAo
cHJlZml4X2xlbikgewotICAgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfb3V0cHV0KHNlc3Npb25f
a2V5cy0+cnRwX2NpcGhlciwgYXV0aF90YWcsICZwcmVmaXhfbGVuKTsKLSAgICAgIGlmIChzdGF0
dXMpCi0JcmV0dXJuIHNydHBfZXJyX3N0YXR1c19jaXBoZXJfZmFpbDsKLSAgICAgIGRlYnVnX3By
aW50KG1vZF9zcnRwLCAia2V5c3RyZWFtIHByZWZpeDogJXMiLCAKLQkJICBzcnRwX29jdGV0X3N0
cmluZ19oZXhfc3RyaW5nKGF1dGhfdGFnLCBwcmVmaXhfbGVuKSk7CisgICAgICAgICAgICAvKiBz
ZXQgc3RyZWFtICh0aGUgcG9pbnRlciB1c2VkIGluIHRoaXMgZnVuY3Rpb24pICovCisgICAgICAg
ICAgICBzdHJlYW0gPSBuZXdfc3RyZWFtOworICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAg
Lyogbm8gdGVtcGxhdGUgc3RyZWFtLCBzbyB3ZSByZXR1cm4gYW4gZXJyb3IgKi8KKyAgICAgICAg
ICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfbm9fY3R4OworICAgICAgICB9CiAgICAgfQotICB9
CiAKLSAgaWYgKHh0bl9oZHIgJiYgc2Vzc2lvbl9rZXlzLT5ydHBfeHRuX2hkcl9jaXBoZXIpIHsK
ICAgICAvKgotICAgICAqIGV4dGVuc2lvbnMgaGVhZGVyIGVuY3J5cHRpb24gUkZDIDY5MDQKKyAg
ICAgKiB2ZXJpZnkgdGhhdCBzdHJlYW0gaXMgZm9yIHNlbmRpbmcgdHJhZmZpYyAtIHRoaXMgY2hl
Y2sgd2lsbAorICAgICAqIGRldGVjdCBTU1JDIGNvbGxpc2lvbnMsIHNpbmNlIGEgc3RyZWFtIHRo
YXQgYXBwZWFycyBpbiBib3RoCisgICAgICogc3J0cF9wcm90ZWN0KCkgYW5kIHNydHBfdW5wcm90
ZWN0KCkgd2lsbCBmYWlsIHRoaXMgdGVzdCBpbiBvbmUgb2YKKyAgICAgKiB0aG9zZSBmdW5jdGlv
bnMuCiAgICAgICovCi0gICAgICBzdGF0dXMgPSBzcnRwX3Byb2Nlc3NfaGVhZGVyX2VuY3J5cHRp
b24oc3RyZWFtLCB4dG5faGRyLCBzZXNzaW9uX2tleXMpOwotICAgIGlmIChzdGF0dXMpIHsKLSAg
ICAgIHJldHVybiBzdGF0dXM7Ci0gICAgfQotICB9Ci0KLSAgLyogaWYgd2UncmUgZW5jcnlwdGlu
ZywgZXhvciBrZXlzdHJlYW0gaW50byB0aGUgbWVzc2FnZSAqLwotICBpZiAoZW5jX3N0YXJ0KSB7
Ci0gICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfZW5jcnlwdChzZXNzaW9uX2tleXMtPnJ0cF9jaXBo
ZXIsIAotCQkJICAgICAgICAodWludDhfdCAqKWVuY19zdGFydCwgKHVuc2lnbmVkIGludCAqKSZl
bmNfb2N0ZXRfbGVuKTsKLSAgICBpZiAoc3RhdHVzKQotICAgICAgcmV0dXJuIHNydHBfZXJyX3N0
YXR1c19jaXBoZXJfZmFpbDsKLSAgfQotCi0gIC8qCi0gICAqICBpZiB3ZSdyZSBhdXRoZW50aWNh
dGluZywgcnVuIGF1dGhlbnRpY2F0aW9uIGZ1bmN0aW9uIGFuZCBwdXQgcmVzdWx0Ci0gICAqICBp
bnRvIHRoZSBhdXRoX3RhZyAKLSAgICovCi0gIGlmIChhdXRoX3N0YXJ0KSB7ICAgICAgICAKLQot
ICAgIC8qIGluaXRpYWxpemUgYXV0aCBmdW5jIGNvbnRleHQgKi8KLSAgICBzdGF0dXMgPSBzcnRw
X2F1dGhfc3RhcnQoc2Vzc2lvbl9rZXlzLT5ydHBfYXV0aCk7Ci0gICAgaWYgKHN0YXR1cykgcmV0
dXJuIHN0YXR1czsKLQotICAgIC8qIHJ1biBhdXRoIGZ1bmMgb3ZlciBwYWNrZXQgKi8KLSAgICBz
dGF0dXMgPSBzcnRwX2F1dGhfdXBkYXRlKHNlc3Npb25fa2V5cy0+cnRwX2F1dGgsCi0JCQkgKHVp
bnQ4X3QgKilhdXRoX3N0YXJ0LCAqcGt0X29jdGV0X2xlbik7Ci0gICAgaWYgKHN0YXR1cykgcmV0
dXJuIHN0YXR1czsKLSAgICAKLSAgICAvKiBydW4gYXV0aCBmdW5jIG92ZXIgUk9DLCBwdXQgcmVz
dWx0IGludG8gYXV0aF90YWcgKi8KLSAgICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgImVzdGltYXRl
ZCBwYWNrZXQgaW5kZXg6ICUwMTZsbHgiLCBlc3QpOwotICAgIHN0YXR1cyA9IHNydHBfYXV0aF9j
b21wdXRlKHNlc3Npb25fa2V5cy0+cnRwX2F1dGgsICh1aW50OF90ICopJmVzdCwgNCwgYXV0aF90
YWcpOwotICAgIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAic3J0cCBhdXRoIHRhZzogICAgJXMiLCAK
LQkJc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZyhhdXRoX3RhZywgdGFnX2xlbikpOwotICAg
IGlmIChzdGF0dXMpCi0gICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2F1dGhfZmFpbDsgICAK
LQotICB9CiAKLSAgaWYgKGF1dGhfdGFnKSB7Ci0KLSAgICAvKiBpbmNyZWFzZSB0aGUgcGFja2V0
IGxlbmd0aCBieSB0aGUgbGVuZ3RoIG9mIHRoZSBhdXRoIHRhZyAqLwotICAgICpwa3Rfb2N0ZXRf
bGVuICs9IHRhZ19sZW47Ci0gIH0KLQotICBpZiAodXNlX21raSkgewotICAgIC8qIGluY3JlYXRl
IHRoZSBwYWNrZXQgbGVuZ3RoIGJ5IHRoZSBta2kgc2l6ZSAqLwotICAgICpwa3Rfb2N0ZXRfbGVu
ICs9IG1raV9zaXplOwotICB9CisgICAgaWYgKHN0cmVhbS0+ZGlyZWN0aW9uICE9IGRpcl9zcnRw
X3NlbmRlcikgeworICAgICAgICBpZiAoc3RyZWFtLT5kaXJlY3Rpb24gPT0gZGlyX3Vua25vd24p
IHsKKyAgICAgICAgICAgIHN0cmVhbS0+ZGlyZWN0aW9uID0gZGlyX3NydHBfc2VuZGVyOworICAg
ICAgICB9IGVsc2UgeworICAgICAgICAgICAgc3J0cF9oYW5kbGVfZXZlbnQoY3R4LCBzdHJlYW0s
IGV2ZW50X3NzcmNfY29sbGlzaW9uKTsKKyAgICAgICAgfQorICAgIH0KIAotICByZXR1cm4gc3J0
cF9lcnJfc3RhdHVzX29rOyAgCi19CisgICAgc2Vzc2lvbl9rZXlzID0KKyAgICAgICAgc3J0cF9n
ZXRfc2Vzc2lvbl9rZXlzX3dpdGhfbWtpX2luZGV4KHN0cmVhbSwgdXNlX21raSwgbWtpX2luZGV4
KTsKIAorICAgIGlmIChzZXNzaW9uX2tleXMgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIHNydHBf
ZXJyX3N0YXR1c19iYWRfbWtpOwogCi1zcnRwX2Vycl9zdGF0dXNfdAotc3J0cF91bnByb3RlY3Qo
c3J0cF9jdHhfdCAqY3R4LCB2b2lkICpzcnRwX2hkciwgaW50ICpwa3Rfb2N0ZXRfbGVuKSB7Ci0g
ICAgcmV0dXJuIHNydHBfdW5wcm90ZWN0X21raShjdHgsIHNydHBfaGRyLCBwa3Rfb2N0ZXRfbGVu
LCAwKTsKLX0KKyAgICAvKgorICAgICAqIENoZWNrIGlmIHRoaXMgaXMgYW4gQUVBRCBzdHJlYW0g
KEdDTSBtb2RlKS4gIElmIHNvLCB0aGVuIGRpc3BhdGNoCisgICAgICogdGhlIHJlcXVlc3QgdG8g
b3VyIEFFQUQgaGFuZGxlci4KKyAgICAgKi8KKyAgICBpZiAoc2Vzc2lvbl9rZXlzLT5ydHBfY2lw
aGVyLT5hbGdvcml0aG0gPT0gU1JUUF9BRVNfR0NNXzEyOCB8fAorICAgICAgICBzZXNzaW9uX2tl
eXMtPnJ0cF9jaXBoZXItPmFsZ29yaXRobSA9PSBTUlRQX0FFU19HQ01fMjU2KSB7CisgICAgICAg
IHJldHVybiBzcnRwX3Byb3RlY3RfYWVhZChjdHgsIHN0cmVhbSwgcnRwX2hkciwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICh1bnNpZ25lZCBpbnQgKilwa3Rfb2N0ZXRfbGVuLCBz
ZXNzaW9uX2tleXMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VfbWtpKTsK
KyAgICB9CiAKLXNydHBfZXJyX3N0YXR1c190Ci1zcnRwX3VucHJvdGVjdF9ta2koc3J0cF9jdHhf
dCAqY3R4LCB2b2lkICpzcnRwX2hkciwgaW50ICpwa3Rfb2N0ZXRfbGVuLAotICAgICAgICAgICAg
ICAgICAgIHVuc2lnbmVkIGludCB1c2VfbWtpKSB7Ci0gIHNydHBfaGRyX3QgKmhkciA9IChzcnRw
X2hkcl90ICopc3J0cF9oZHI7Ci0gIHVpbnQzMl90ICplbmNfc3RhcnQ7ICAgICAgLyogcG9pbnRl
ciB0byBzdGFydCBvZiBlbmNyeXB0ZWQgcG9ydGlvbiAgKi8KLSAgdWludDMyX3QgKmF1dGhfc3Rh
cnQ7ICAgICAvKiBwb2ludGVyIHRvIHN0YXJ0IG9mIGF1dGguIHBvcnRpb24gICAgICAqLwotICB1
bnNpZ25lZCBpbnQgZW5jX29jdGV0X2xlbiA9IDA7LyogbnVtYmVyIG9mIG9jdGV0cyBpbiBlbmNy
eXB0ZWQgcG9ydGlvbiAqLwotICB1aW50OF90ICphdXRoX3RhZyA9IE5VTEw7IC8qIGxvY2F0aW9u
IG9mIGF1dGhfdGFnIHdpdGhpbiBwYWNrZXQgICAgICovCi0gIHNydHBfeHRkX3NlcV9udW1fdCBl
c3Q7ICAgICAgICAvKiBlc3RpbWF0ZWQgeHRkX3NlcV9udW1fdCBvZiAqaGRyICAgICAgICAqLwot
ICBpbnQgZGVsdGE7ICAgICAgICAgICAgICAgIC8qIGRlbHRhIG9mIGxvY2FsIHBrdCBpZHggYW5k
IHRoYXQgaW4gaGRyICovCi0gIHYxMjhfdCBpdjsKLSAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVz
OwotICBzcnRwX3N0cmVhbV9jdHhfdCAqc3RyZWFtOwotICB1aW50OF90IHRtcF90YWdbU1JUUF9N
QVhfVEFHX0xFTl07Ci0gIHVpbnQzMl90IHRhZ19sZW4sIHByZWZpeF9sZW47Ci0gIHNydHBfaGRy
X3h0bmRfdCAqeHRuX2hkciA9IE5VTEw7Ci0gIHVuc2lnbmVkIGludCBta2lfc2l6ZSA9IDA7Ci0g
IHNydHBfc2Vzc2lvbl9rZXlzX3QgKnNlc3Npb25fa2V5cyA9IE5VTEw7Ci0gIGludCBhZHZhbmNl
X3BhY2tldF9pbmRleCA9IDA7Ci0gIHVpbnQzMl90IHJvY190b19zZXQgPSAwOwotICB1aW50MTZf
dCBzZXFfdG9fc2V0ID0gMDsKLQotICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgImZ1bmN0aW9uIHNy
dHBfdW5wcm90ZWN0IiwgTlVMTCk7Ci0KLSAgLyogd2UgYXNzdW1lIHRoZSBoZHIgaXMgMzItYml0
IGFsaWduZWQgdG8gc3RhcnQgKi8KLQotICAvKiBWZXJpZnkgUlRQIGhlYWRlciAqLwotICBzdGF0
dXMgPSBzcnRwX3ZhbGlkYXRlX3J0cF9oZWFkZXIoc3J0cF9oZHIsIHBrdF9vY3RldF9sZW4pOwot
ICBpZiAoc3RhdHVzKQotICAgIHJldHVybiBzdGF0dXM7CisgICAgLyoKKyAgICAgKiB1cGRhdGUg
dGhlIGtleSB1c2FnZSBsaW1pdCwgYW5kIGNoZWNrIGl0IHRvIG1ha2Ugc3VyZSB0aGF0IHdlCisg
ICAgICogZGlkbid0IGp1c3QgaGl0IGVpdGhlciB0aGUgc29mdCBsaW1pdCBvciB0aGUgaGFyZCBs
aW1pdCwgYW5kIGNhbGwKKyAgICAgKiB0aGUgZXZlbnQgaGFuZGxlciBpZiB3ZSBoaXQgZWl0aGVy
LgorICAgICAqLworICAgIHN3aXRjaCAoc3J0cF9rZXlfbGltaXRfdXBkYXRlKHNlc3Npb25fa2V5
cy0+bGltaXQpKSB7CisgICAgY2FzZSBzcnRwX2tleV9ldmVudF9ub3JtYWw6CisgICAgICAgIGJy
ZWFrOworICAgIGNhc2Ugc3J0cF9rZXlfZXZlbnRfc29mdF9saW1pdDoKKyAgICAgICAgc3J0cF9o
YW5kbGVfZXZlbnQoY3R4LCBzdHJlYW0sIGV2ZW50X2tleV9zb2Z0X2xpbWl0KTsKKyAgICAgICAg
YnJlYWs7CisgICAgY2FzZSBzcnRwX2tleV9ldmVudF9oYXJkX2xpbWl0OgorICAgICAgICBzcnRw
X2hhbmRsZV9ldmVudChjdHgsIHN0cmVhbSwgZXZlbnRfa2V5X2hhcmRfbGltaXQpOworICAgICAg
ICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2tleV9leHBpcmVkOworICAgIGRlZmF1bHQ6CisgICAg
ICAgIGJyZWFrOworICAgIH0KKworICAgIC8qIGdldCB0YWcgbGVuZ3RoIGZyb20gc3RyZWFtICov
CisgICAgdGFnX2xlbiA9IHNydHBfYXV0aF9nZXRfdGFnX2xlbmd0aChzZXNzaW9uX2tleXMtPnJ0
cF9hdXRoKTsKKworICAgIC8qCisgICAgICogZmluZCBzdGFydGluZyBwb2ludCBmb3IgZW5jcnlw
dGlvbiBhbmQgbGVuZ3RoIG9mIGRhdGEgdG8gYmUKKyAgICAgKiBlbmNyeXB0ZWQgLSB0aGUgZW5j
cnlwdGVkIHBvcnRpb24gc3RhcnRzIGFmdGVyIHRoZSBydHAgaGVhZGVyCisgICAgICogZXh0ZW5z
aW9uLCBpZiBwcmVzZW50OyBvdGhlcndpc2UsIGl0IHN0YXJ0cyBhZnRlciB0aGUgbGFzdCBjc3Jj
LAorICAgICAqIGlmIGFueSBhcmUgcHJlc2VudAorICAgICAqCisgICAgICogaWYgd2UncmUgbm90
IHByb3ZpZGluZyBjb25maWRlbnRpYWxpdHksIHNldCBlbmNfc3RhcnQgdG8gTlVMTAorICAgICAq
LworICAgIGlmIChzdHJlYW0tPnJ0cF9zZXJ2aWNlcyAmIHNlY19zZXJ2X2NvbmYpIHsKKyAgICAg
ICAgZW5jX3N0YXJ0ID0gKHVpbnQzMl90ICopaGRyICsgdWludDMyc19pbl9ydHBfaGVhZGVyICsg
aGRyLT5jYzsKKyAgICAgICAgaWYgKGhkci0+eCA9PSAxKSB7CisgICAgICAgICAgICB4dG5faGRy
ID0gKHNydHBfaGRyX3h0bmRfdCAqKWVuY19zdGFydDsKKyAgICAgICAgICAgIGVuY19zdGFydCAr
PSAobnRvaHMoeHRuX2hkci0+bGVuZ3RoKSArIDEpOworICAgICAgICB9CisgICAgICAgIC8qIG5v
dGU6IHRoZSBwYXNzZWQgc2l6ZSBpcyB3aXRob3V0IHRoZSBhdXRoIHRhZyAqLworICAgICAgICBp
ZiAoISgodWludDhfdCAqKWVuY19zdGFydCA8PSAodWludDhfdCAqKWhkciArICpwa3Rfb2N0ZXRf
bGVuKSkKKyAgICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfcGFyc2VfZXJyOworICAg
ICAgICBlbmNfb2N0ZXRfbGVuID0KKyAgICAgICAgICAgIChpbnQpKCpwa3Rfb2N0ZXRfbGVuIC0g
KCh1aW50OF90ICopZW5jX3N0YXJ0IC0gKHVpbnQ4X3QgKiloZHIpKTsKKyAgICAgICAgaWYgKGVu
Y19vY3RldF9sZW4gPCAwKQorICAgICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19wYXJz
ZV9lcnI7CisgICAgfSBlbHNlIHsKKyAgICAgICAgZW5jX3N0YXJ0ID0gTlVMTDsKKyAgICB9CisK
KyAgICBta2lfbG9jYXRpb24gPSAodWludDhfdCAqKWhkciArICpwa3Rfb2N0ZXRfbGVuOworICAg
IG1raV9zaXplID0gc3J0cF9pbmplY3RfbWtpKG1raV9sb2NhdGlvbiwgc2Vzc2lvbl9rZXlzLCB1
c2VfbWtpKTsKKworICAgIC8qCisgICAgICogaWYgd2UncmUgcHJvdmlkaW5nIGF1dGhlbnRpY2F0
aW9uLCBzZXQgdGhlIGF1dGhfc3RhcnQgYW5kIGF1dGhfdGFnCisgICAgICogcG9pbnRlcnMgdG8g
dGhlIHByb3BlciBsb2NhdGlvbnM7IG90aGVyd2lzZSwgc2V0IGF1dGhfc3RhcnQgdG8gTlVMTAor
ICAgICAqIHRvIGluZGljYXRlIHRoYXQgbm8gYXV0aGVudGljYXRpb24gaXMgbmVlZGVkCisgICAg
ICovCisgICAgaWYgKHN0cmVhbS0+cnRwX3NlcnZpY2VzICYgc2VjX3NlcnZfYXV0aCkgeworICAg
ICAgICBhdXRoX3N0YXJ0ID0gKHVpbnQzMl90ICopaGRyOworICAgICAgICBhdXRoX3RhZyA9ICh1
aW50OF90ICopaGRyICsgKnBrdF9vY3RldF9sZW4gKyBta2lfc2l6ZTsKKyAgICB9IGVsc2Ugewor
ICAgICAgICBhdXRoX3N0YXJ0ID0gTlVMTDsKKyAgICAgICAgYXV0aF90YWcgPSBOVUxMOworICAg
IH0KKworICAgIC8qCisgICAgICogZXN0aW1hdGUgdGhlIHBhY2tldCBpbmRleCB1c2luZyB0aGUg
c3RhcnQgb2YgdGhlIHJlcGxheSB3aW5kb3cKKyAgICAgKiBhbmQgdGhlIHNlcXVlbmNlIG51bWJl
ciBmcm9tIHRoZSBoZWFkZXIKKyAgICAgKi8KKyAgICBzdGF0dXMgPSBzcnRwX2dldF9lc3RfcGt0
X2luZGV4KGhkciwgc3RyZWFtLCAmZXN0LCAmZGVsdGEpOworCisgICAgaWYgKHN0YXR1cyAmJiAo
c3RhdHVzICE9IHNydHBfZXJyX3N0YXR1c19wa3RfaWR4X2FkdikpCisgICAgICAgIHJldHVybiBz
dGF0dXM7CisKKyAgICBpZiAoc3RhdHVzID09IHNydHBfZXJyX3N0YXR1c19wa3RfaWR4X2FkdikK
KyAgICAgICAgYWR2YW5jZV9wYWNrZXRfaW5kZXggPSAxOworCisgICAgaWYgKGFkdmFuY2VfcGFj
a2V0X2luZGV4KSB7CisgICAgICAgIHNydHBfcmRieF9zZXRfcm9jX3NlcSgmc3RyZWFtLT5ydHBf
cmRieCwgKHVpbnQzMl90KShlc3QgPj4gMTYpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgKHVpbnQxNl90KShlc3QgJiAweEZGRkYpKTsKKyAgICAgICAgc3RyZWFtLT5wZW5kaW5nX3Jv
YyA9IDA7CisgICAgICAgIHNydHBfcmRieF9hZGRfaW5kZXgoJnN0cmVhbS0+cnRwX3JkYngsIDAp
OworICAgIH0gZWxzZSB7CisgICAgICAgIHN0YXR1cyA9IHNydHBfcmRieF9jaGVjaygmc3RyZWFt
LT5ydHBfcmRieCwgZGVsdGEpOworICAgICAgICBpZiAoc3RhdHVzKSB7CisgICAgICAgICAgICBp
ZiAoc3RhdHVzICE9IHNydHBfZXJyX3N0YXR1c19yZXBsYXlfZmFpbCB8fAorICAgICAgICAgICAg
ICAgICFzdHJlYW0tPmFsbG93X3JlcGVhdF90eCkKKyAgICAgICAgICAgICAgICByZXR1cm4gc3Rh
dHVzOyAvKiB3ZSd2ZSBiZWVuIGFza2VkIHRvIHJldXNlIGFuIGluZGV4ICovCisgICAgICAgIH0K
KyAgICAgICAgc3J0cF9yZGJ4X2FkZF9pbmRleCgmc3RyZWFtLT5ydHBfcmRieCwgZGVsdGEpOwor
ICAgIH0KIAotICAvKiBjaGVjayB0aGUgcGFja2V0IGxlbmd0aCAtIGl0IG11c3QgYXQgbGVhc3Qg
Y29udGFpbiBhIGZ1bGwgaGVhZGVyICovCi0gIGlmICgqcGt0X29jdGV0X2xlbiA8IG9jdGV0c19p
bl9ydHBfaGVhZGVyKQotICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtOwotCi0g
IC8qCi0gICAqIGxvb2sgdXAgc3NyYyBpbiBzcnRwX3N0cmVhbSBsaXN0LCBhbmQgcHJvY2VzcyB0
aGUgcGFja2V0IHdpdGggCi0gICAqIHRoZSBhcHByb3ByaWF0ZSBzdHJlYW0uICBpZiB3ZSBoYXZl
bid0IHNlZW4gdGhpcyBzdHJlYW0gYmVmb3JlLAotICAgKiB0aGVyZSdzIG9ubHkgb25lIGtleSBm
b3IgdGhpcyBzcnRwX3Nlc3Npb24sIGFuZCB0aGUgY2lwaGVyCi0gICAqIHN1cHBvcnRzIGtleS1z
aGFyaW5nLCB0aGVuIHdlIGFzc3VtZSB0aGF0IGEgbmV3IHN0cmVhbSB1c2luZwotICAgKiB0aGF0
IGtleSBoYXMganVzdCBzdGFydGVkIHVwCi0gICAqLwotICBzdHJlYW0gPSBzcnRwX2dldF9zdHJl
YW0oY3R4LCBoZHItPnNzcmMpOwotICBpZiAoc3RyZWFtID09IE5VTEwpIHsKLSAgICBpZiAoY3R4
LT5zdHJlYW1fdGVtcGxhdGUgIT0gTlVMTCkgewotICAgICAgc3RyZWFtID0gY3R4LT5zdHJlYW1f
dGVtcGxhdGU7Ci0gICAgICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgInVzaW5nIHByb3Zpc2lvbmFs
IHN0cmVhbSAoU1NSQzogMHglMDh4KSIsCi0JCSAgbnRvaGwoaGRyLT5zc3JjKSk7Ci0gICAgICAK
LSAgICAgIC8qIAotICAgICAgICogc2V0IGVzdGltYXRlZCBwYWNrZXQgaW5kZXggdG8gc2VxdWVu
Y2UgbnVtYmVyIGZyb20gaGVhZGVyLAotICAgICAgICogYW5kIHNldCBkZWx0YSBlcXVhbCB0byB0
aGUgc2FtZSB2YWx1ZQotICAgICAgICovCiAjaWZkZWYgTk9fNjRCSVRfTUFUSAotICAgICAgZXN0
ID0gKHNydHBfeHRkX3NlcV9udW1fdCkgbWFrZTY0KDAsbnRvaHMoaGRyLT5zZXEpKTsKLSAgICAg
IGRlbHRhID0gbG93MzIoZXN0KTsKKyAgICBkZWJ1Z19wcmludDIobW9kX3NydHAsICJlc3RpbWF0
ZWQgcGFja2V0IGluZGV4OiAlMDh4JTA4eCIsIGhpZ2gzMihlc3QpLAorICAgICAgICAgICAgICAg
ICBsb3czMihlc3QpKTsKICNlbHNlCi0gICAgICBlc3QgPSAoc3J0cF94dGRfc2VxX251bV90KSBu
dG9ocyhoZHItPnNlcSk7Ci0gICAgICBkZWx0YSA9IChpbnQpZXN0OworICAgIGRlYnVnX3ByaW50
KG1vZF9zcnRwLCAiZXN0aW1hdGVkIHBhY2tldCBpbmRleDogJTAxNmxseCIsIGVzdCk7CiAjZW5k
aWYKKworICAgIC8qCisgICAgICogaWYgd2UncmUgdXNpbmcgcmluZGFlbCBjb3VudGVyIG1vZGUs
IHNldCBub25jZSBhbmQgc2VxCisgICAgICovCisgICAgaWYgKHNlc3Npb25fa2V5cy0+cnRwX2Np
cGhlci0+dHlwZS0+aWQgPT0gU1JUUF9BRVNfSUNNXzEyOCB8fAorICAgICAgICBzZXNzaW9uX2tl
eXMtPnJ0cF9jaXBoZXItPnR5cGUtPmlkID09IFNSVFBfQUVTX0lDTV8xOTIgfHwKKyAgICAgICAg
c2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVyLT50eXBlLT5pZCA9PSBTUlRQX0FFU19JQ01fMjU2KSB7
CisgICAgICAgIHYxMjhfdCBpdjsKKworICAgICAgICBpdi52MzJbMF0gPSAwOworICAgICAgICBp
di52MzJbMV0gPSBoZHItPnNzcmM7CisjaWZkZWYgTk9fNjRCSVRfTUFUSAorICAgICAgICBpdi52
NjRbMV0gPSBiZTY0X3RvX2NwdSgKKyAgICAgICAgICAgIG1ha2U2NCgoaGlnaDMyKGVzdCkgPDwg
MTYpIHwgKGxvdzMyKGVzdCkgPj4gMTYpLCBsb3czMihlc3QpIDw8IDE2KSk7CisjZWxzZQorICAg
ICAgICBpdi52NjRbMV0gPSBiZTY0X3RvX2NwdShlc3QgPDwgMTYpOworI2VuZGlmCisgICAgICAg
IHN0YXR1cyA9IHNydHBfY2lwaGVyX3NldF9pdihzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXIsICh1
aW50OF90ICopJml2LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF9k
aXJlY3Rpb25fZW5jcnlwdCk7CisgICAgICAgIGlmICghc3RhdHVzICYmIHNlc3Npb25fa2V5cy0+
cnRwX3h0bl9oZHJfY2lwaGVyKSB7CisgICAgICAgICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9z
ZXRfaXYoc2Vzc2lvbl9rZXlzLT5ydHBfeHRuX2hkcl9jaXBoZXIsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgKHVpbnQ4X3QgKikmaXYsIHNydHBfZGlyZWN0aW9uX2Vu
Y3J5cHQpOworICAgICAgICB9CiAgICAgfSBlbHNlIHsKLSAgICAgIAotICAgICAgLyoKLSAgICAg
ICAqIG5vIHN0cmVhbSBjb3JyZXNwb25kaW5nIHRvIFNTUkMgZm91bmQsIGFuZCB3ZSBkb24ndCBk
bwotICAgICAgICoga2V5LXNoYXJpbmcsIHNvIHJldHVybiBhbiBlcnJvcgotICAgICAgICovCi0g
ICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX25vX2N0eDsKLSAgICB9Ci0gIH0gZWxzZSB7Ci0g
ICAgc3RhdHVzID0gc3J0cF9nZXRfZXN0X3BrdF9pbmRleChoZHIsCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBzdHJlYW0sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAmZXN0LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmRlbHRh
KTsKKyAgICAgICAgdjEyOF90IGl2OwogCi0gICAgaWYgKHN0YXR1cyAmJiAoc3RhdHVzICE9IHNy
dHBfZXJyX3N0YXR1c19wa3RfaWR4X2FkdikpCi0gICAgICByZXR1cm4gc3RhdHVzOworLyogb3Ro
ZXJ3aXNlLCBzZXQgdGhlIGluZGV4IHRvIGVzdCAqLworI2lmZGVmIE5PXzY0QklUX01BVEgKKyAg
ICAgICAgaXYudjMyWzBdID0gMDsKKyAgICAgICAgaXYudjMyWzFdID0gMDsKKyNlbHNlCisgICAg
ICAgIGl2LnY2NFswXSA9IDA7CisjZW5kaWYKKyAgICAgICAgaXYudjY0WzFdID0gYmU2NF90b19j
cHUoZXN0KTsKKyAgICAgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfc2V0X2l2KHNlc3Npb25fa2V5
cy0+cnRwX2NpcGhlciwgKHVpbnQ4X3QgKikmaXYsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBzcnRwX2RpcmVjdGlvbl9lbmNyeXB0KTsKKyAgICAgICAgaWYgKCFzdGF0dXMg
JiYgc2Vzc2lvbl9rZXlzLT5ydHBfeHRuX2hkcl9jaXBoZXIpIHsKKyAgICAgICAgICAgIHN0YXR1
cyA9IHNydHBfY2lwaGVyX3NldF9pdihzZXNzaW9uX2tleXMtPnJ0cF94dG5faGRyX2NpcGhlciwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAodWludDhfdCAqKSZpdiwg
c3J0cF9kaXJlY3Rpb25fZW5jcnlwdCk7CisgICAgICAgIH0KKyAgICB9CisgICAgaWYgKHN0YXR1
cykKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19jaXBoZXJfZmFpbDsKKworLyogc2hp
ZnQgZXN0LCBwdXQgaW50byBuZXR3b3JrIGJ5dGUgb3JkZXIgKi8KKyNpZmRlZiBOT182NEJJVF9N
QVRICisgICAgZXN0ID0gYmU2NF90b19jcHUoCisgICAgICAgIG1ha2U2NCgoaGlnaDMyKGVzdCkg
PDwgMTYpIHwgKGxvdzMyKGVzdCkgPj4gMTYpLCBsb3czMihlc3QpIDw8IDE2KSk7CisjZWxzZQor
ICAgIGVzdCA9IGJlNjRfdG9fY3B1KGVzdCA8PCAxNik7CisjZW5kaWYKIAotICAgIGlmIChzdGF0
dXMgPT0gc3J0cF9lcnJfc3RhdHVzX3BrdF9pZHhfYWR2KSB7Ci0gICAgICBhZHZhbmNlX3BhY2tl
dF9pbmRleCA9IDE7Ci0gICAgICByb2NfdG9fc2V0ID0gKHVpbnQzMl90KShlc3QgPj4gMTYpOwot
ICAgICAgc2VxX3RvX3NldCA9ICh1aW50MTZfdCkoZXN0ICYgMHhGRkZGKTsKKyAgICAvKgorICAg
ICAqIGlmIHdlJ3JlIGF1dGhlbnRpY2F0aW5nIHVzaW5nIGEgdW5pdmVyc2FsIGhhc2gsIHB1dCB0
aGUga2V5c3RyZWFtCisgICAgICogcHJlZml4IGludG8gdGhlIGF1dGhlbnRpY2F0aW9uIHRhZwor
ICAgICAqLworICAgIGlmIChhdXRoX3N0YXJ0KSB7CisgICAgICAgIHByZWZpeF9sZW4gPSBzcnRw
X2F1dGhfZ2V0X3ByZWZpeF9sZW5ndGgoc2Vzc2lvbl9rZXlzLT5ydHBfYXV0aCk7CisgICAgICAg
IGlmIChwcmVmaXhfbGVuKSB7CisgICAgICAgICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9vdXRw
dXQoc2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVyLCBhdXRoX3RhZywKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAmcHJlZml4X2xlbik7CisgICAgICAgICAgICBpZiAoc3Rh
dHVzKQorICAgICAgICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfY2lwaGVyX2ZhaWw7
CisgICAgICAgICAgICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgImtleXN0cmVhbSBwcmVmaXg6ICVz
IiwKKyAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmco
YXV0aF90YWcsIHByZWZpeF9sZW4pKTsKKyAgICAgICAgfQogICAgIH0KIAotICAgIC8qIGNoZWNr
IHJlcGxheSBkYXRhYmFzZSAqLwotICAgIGlmICghYWR2YW5jZV9wYWNrZXRfaW5kZXgpIHsKLSAg
ICAgIHN0YXR1cyA9IHNydHBfcmRieF9jaGVjaygmc3RyZWFtLT5ydHBfcmRieCwgZGVsdGEpOwot
ICAgICAgaWYgKHN0YXR1cykKLSAgICAgICAgcmV0dXJuIHN0YXR1czsKKyAgICBpZiAoeHRuX2hk
ciAmJiBzZXNzaW9uX2tleXMtPnJ0cF94dG5faGRyX2NpcGhlcikgeworICAgICAgICAvKgorICAg
ICAgICAgKiBleHRlbnNpb25zIGhlYWRlciBlbmNyeXB0aW9uIFJGQyA2OTA0CisgICAgICAgICAq
LworICAgICAgICBzdGF0dXMgPSBzcnRwX3Byb2Nlc3NfaGVhZGVyX2VuY3J5cHRpb24oc3RyZWFt
LCB4dG5faGRyLCBzZXNzaW9uX2tleXMpOworICAgICAgICBpZiAoc3RhdHVzKSB7CisgICAgICAg
ICAgICByZXR1cm4gc3RhdHVzOworICAgICAgICB9CisgICAgfQorCisgICAgLyogaWYgd2UncmUg
ZW5jcnlwdGluZywgZXhvciBrZXlzdHJlYW0gaW50byB0aGUgbWVzc2FnZSAqLworICAgIGlmIChl
bmNfc3RhcnQpIHsKKyAgICAgICAgc3RhdHVzID0KKyAgICAgICAgICAgIHNydHBfY2lwaGVyX2Vu
Y3J5cHQoc2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVyLCAodWludDhfdCAqKWVuY19zdGFydCwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHVuc2lnbmVkIGludCAqKSZlbmNfb2N0ZXRf
bGVuKTsKKyAgICAgICAgaWYgKHN0YXR1cykKKyAgICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9z
dGF0dXNfY2lwaGVyX2ZhaWw7CisgICAgfQorCisgICAgLyoKKyAgICAgKiAgaWYgd2UncmUgYXV0
aGVudGljYXRpbmcsIHJ1biBhdXRoZW50aWNhdGlvbiBmdW5jdGlvbiBhbmQgcHV0IHJlc3VsdAor
ICAgICAqICBpbnRvIHRoZSBhdXRoX3RhZworICAgICAqLworICAgIGlmIChhdXRoX3N0YXJ0KSB7
CisgICAgICAgIC8qIGluaXRpYWxpemUgYXV0aCBmdW5jIGNvbnRleHQgKi8KKyAgICAgICAgc3Rh
dHVzID0gc3J0cF9hdXRoX3N0YXJ0KHNlc3Npb25fa2V5cy0+cnRwX2F1dGgpOworICAgICAgICBp
ZiAoc3RhdHVzKQorICAgICAgICAgICAgcmV0dXJuIHN0YXR1czsKKworICAgICAgICAvKiBydW4g
YXV0aCBmdW5jIG92ZXIgcGFja2V0ICovCisgICAgICAgIHN0YXR1cyA9IHNydHBfYXV0aF91cGRh
dGUoc2Vzc2lvbl9rZXlzLT5ydHBfYXV0aCwgKHVpbnQ4X3QgKilhdXRoX3N0YXJ0LAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICpwa3Rfb2N0ZXRfbGVuKTsKKyAgICAgICAgaWYg
KHN0YXR1cykKKyAgICAgICAgICAgIHJldHVybiBzdGF0dXM7CisKKyAgICAgICAgLyogcnVuIGF1
dGggZnVuYyBvdmVyIFJPQywgcHV0IHJlc3VsdCBpbnRvIGF1dGhfdGFnICovCisgICAgICAgIGRl
YnVnX3ByaW50KG1vZF9zcnRwLCAiZXN0aW1hdGVkIHBhY2tldCBpbmRleDogJTAxNmxseCIsIGVz
dCk7CisgICAgICAgIHN0YXR1cyA9IHNydHBfYXV0aF9jb21wdXRlKHNlc3Npb25fa2V5cy0+cnRw
X2F1dGgsICh1aW50OF90ICopJmVzdCwgNCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgYXV0aF90YWcpOworICAgICAgICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgInNydHAgYXV0
aCB0YWc6ICAgICVzIiwKKyAgICAgICAgICAgICAgICAgICAgc3J0cF9vY3RldF9zdHJpbmdfaGV4
X3N0cmluZyhhdXRoX3RhZywgdGFnX2xlbikpOworICAgICAgICBpZiAoc3RhdHVzKQorICAgICAg
ICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19hdXRoX2ZhaWw7CiAgICAgfQotICB9CiAKKyAg
ICBpZiAoYXV0aF90YWcpIHsKKyAgICAgICAgLyogaW5jcmVhc2UgdGhlIHBhY2tldCBsZW5ndGgg
YnkgdGhlIGxlbmd0aCBvZiB0aGUgYXV0aCB0YWcgKi8KKyAgICAgICAgKnBrdF9vY3RldF9sZW4g
Kz0gdGFnX2xlbjsKKyAgICB9CisKKyAgICBpZiAodXNlX21raSkgeworICAgICAgICAvKiBpbmNy
ZWF0ZSB0aGUgcGFja2V0IGxlbmd0aCBieSB0aGUgbWtpIHNpemUgKi8KKyAgICAgICAgKnBrdF9v
Y3RldF9sZW4gKz0gbWtpX3NpemU7CisgICAgfQorCisgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1
c19vazsKK30KKworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF91bnByb3RlY3Qoc3J0cF9jdHhfdCAq
Y3R4LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdm9pZCAqc3J0cF9oZHIsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgKnBrdF9vY3RldF9sZW4pCit7Cisg
ICAgcmV0dXJuIHNydHBfdW5wcm90ZWN0X21raShjdHgsIHNydHBfaGRyLCBwa3Rfb2N0ZXRfbGVu
LCAwKTsKK30KKworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF91bnByb3RlY3RfbWtpKHNydHBfY3R4
X3QgKmN0eCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2b2lkICpzcnRw
X2hkciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgKnBrdF9vY3Rl
dF9sZW4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50
IHVzZV9ta2kpCit7CisgICAgc3J0cF9oZHJfdCAqaGRyID0gKHNydHBfaGRyX3QgKilzcnRwX2hk
cjsKKyAgICB1aW50MzJfdCAqZW5jX3N0YXJ0OyAgICAgICAgICAgIC8qIHBvaW50ZXIgdG8gc3Rh
cnQgb2YgZW5jcnlwdGVkIHBvcnRpb24gICovCisgICAgdWludDMyX3QgKmF1dGhfc3RhcnQ7ICAg
ICAgICAgICAvKiBwb2ludGVyIHRvIHN0YXJ0IG9mIGF1dGguIHBvcnRpb24gICAgICAqLworICAg
IHVuc2lnbmVkIGludCBlbmNfb2N0ZXRfbGVuID0gMDsgLyogbnVtYmVyIG9mIG9jdGV0cyBpbiBl
bmNyeXB0ZWQgcG9ydGlvbiAqLworICAgIHVpbnQ4X3QgKmF1dGhfdGFnID0gTlVMTDsgICAgICAg
LyogbG9jYXRpb24gb2YgYXV0aF90YWcgd2l0aGluIHBhY2tldCAgICAgKi8KKyAgICBzcnRwX3h0
ZF9zZXFfbnVtX3QgZXN0OyAgICAgICAgIC8qIGVzdGltYXRlZCB4dGRfc2VxX251bV90IG9mICpo
ZHIgICAgICAgICovCisgICAgaW50IGRlbHRhOyAgICAgICAgICAgICAgICAgICAgICAvKiBkZWx0
YSBvZiBsb2NhbCBwa3QgaWR4IGFuZCB0aGF0IGluIGhkciAqLworICAgIHYxMjhfdCBpdjsKKyAg
ICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7CisgICAgc3J0cF9zdHJlYW1fY3R4X3QgKnN0cmVh
bTsKKyAgICB1aW50OF90IHRtcF90YWdbU1JUUF9NQVhfVEFHX0xFTl07CisgICAgdWludDMyX3Qg
dGFnX2xlbiwgcHJlZml4X2xlbjsKKyAgICBzcnRwX2hkcl94dG5kX3QgKnh0bl9oZHIgPSBOVUxM
OworICAgIHVuc2lnbmVkIGludCBta2lfc2l6ZSA9IDA7CisgICAgc3J0cF9zZXNzaW9uX2tleXNf
dCAqc2Vzc2lvbl9rZXlzID0gTlVMTDsKKyAgICBpbnQgYWR2YW5jZV9wYWNrZXRfaW5kZXggPSAw
OworICAgIHVpbnQzMl90IHJvY190b19zZXQgPSAwOworICAgIHVpbnQxNl90IHNlcV90b19zZXQg
PSAwOworCisgICAgZGVidWdfcHJpbnQobW9kX3NydHAsICJmdW5jdGlvbiBzcnRwX3VucHJvdGVj
dCIsIE5VTEwpOworCisgICAgLyogd2UgYXNzdW1lIHRoZSBoZHIgaXMgMzItYml0IGFsaWduZWQg
dG8gc3RhcnQgKi8KKworICAgIC8qIFZlcmlmeSBSVFAgaGVhZGVyICovCisgICAgc3RhdHVzID0g
c3J0cF92YWxpZGF0ZV9ydHBfaGVhZGVyKHNydHBfaGRyLCBwa3Rfb2N0ZXRfbGVuKTsKKyAgICBp
ZiAoc3RhdHVzKQorICAgICAgICByZXR1cm4gc3RhdHVzOworCisgICAgLyogY2hlY2sgdGhlIHBh
Y2tldCBsZW5ndGggLSBpdCBtdXN0IGF0IGxlYXN0IGNvbnRhaW4gYSBmdWxsIGhlYWRlciAqLwor
ICAgIGlmICgqcGt0X29jdGV0X2xlbiA8IG9jdGV0c19pbl9ydHBfaGVhZGVyKQorICAgICAgICBy
ZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJhbTsKKworICAgIC8qCisgICAgICogbG9vayB1
cCBzc3JjIGluIHNydHBfc3RyZWFtIGxpc3QsIGFuZCBwcm9jZXNzIHRoZSBwYWNrZXQgd2l0aAor
ICAgICAqIHRoZSBhcHByb3ByaWF0ZSBzdHJlYW0uICBpZiB3ZSBoYXZlbid0IHNlZW4gdGhpcyBz
dHJlYW0gYmVmb3JlLAorICAgICAqIHRoZXJlJ3Mgb25seSBvbmUga2V5IGZvciB0aGlzIHNydHBf
c2Vzc2lvbiwgYW5kIHRoZSBjaXBoZXIKKyAgICAgKiBzdXBwb3J0cyBrZXktc2hhcmluZywgdGhl
biB3ZSBhc3N1bWUgdGhhdCBhIG5ldyBzdHJlYW0gdXNpbmcKKyAgICAgKiB0aGF0IGtleSBoYXMg
anVzdCBzdGFydGVkIHVwCisgICAgICovCisgICAgc3RyZWFtID0gc3J0cF9nZXRfc3RyZWFtKGN0
eCwgaGRyLT5zc3JjKTsKKyAgICBpZiAoc3RyZWFtID09IE5VTEwpIHsKKyAgICAgICAgaWYgKGN0
eC0+c3RyZWFtX3RlbXBsYXRlICE9IE5VTEwpIHsKKyAgICAgICAgICAgIHN0cmVhbSA9IGN0eC0+
c3RyZWFtX3RlbXBsYXRlOworICAgICAgICAgICAgZGVidWdfcHJpbnQobW9kX3NydHAsICJ1c2lu
ZyBwcm92aXNpb25hbCBzdHJlYW0gKFNTUkM6IDB4JTA4eCkiLAorICAgICAgICAgICAgICAgICAg
ICAgICAgbnRvaGwoaGRyLT5zc3JjKSk7CisKKy8qCisgKiBzZXQgZXN0aW1hdGVkIHBhY2tldCBp
bmRleCB0byBzZXF1ZW5jZSBudW1iZXIgZnJvbSBoZWFkZXIsCisgKiBhbmQgc2V0IGRlbHRhIGVx
dWFsIHRvIHRoZSBzYW1lIHZhbHVlCisgKi8KICNpZmRlZiBOT182NEJJVF9NQVRICi0gIGRlYnVn
X3ByaW50Mihtb2Rfc3J0cCwgImVzdGltYXRlZCB1X3BhY2tldCBpbmRleDogJTA4eCUwOHgiLCBo
aWdoMzIoZXN0KSxsb3czMihlc3QpKTsKKyAgICAgICAgICAgIGVzdCA9IChzcnRwX3h0ZF9zZXFf
bnVtX3QpbWFrZTY0KDAsIG50b2hzKGhkci0+c2VxKSk7CisgICAgICAgICAgICBkZWx0YSA9IGxv
dzMyKGVzdCk7CiAjZWxzZQotICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgImVzdGltYXRlZCB1X3Bh
Y2tldCBpbmRleDogJTAxNmxseCIsIGVzdCk7CisgICAgICAgICAgICBlc3QgPSAoc3J0cF94dGRf
c2VxX251bV90KW50b2hzKGhkci0+c2VxKTsKKyAgICAgICAgICAgIGRlbHRhID0gKGludCllc3Q7
CiAjZW5kaWYKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIC8qCisgICAgICAgICAgICAg
KiBubyBzdHJlYW0gY29ycmVzcG9uZGluZyB0byBTU1JDIGZvdW5kLCBhbmQgd2UgZG9uJ3QgZG8K
KyAgICAgICAgICAgICAqIGtleS1zaGFyaW5nLCBzbyByZXR1cm4gYW4gZXJyb3IKKyAgICAgICAg
ICAgICAqLworICAgICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19ub19jdHg7CisgICAg
ICAgIH0KKyAgICB9IGVsc2UgeworICAgICAgICBzdGF0dXMgPSBzcnRwX2dldF9lc3RfcGt0X2lu
ZGV4KGhkciwgc3RyZWFtLCAmZXN0LCAmZGVsdGEpOworCisgICAgICAgIGlmIChzdGF0dXMgJiYg
KHN0YXR1cyAhPSBzcnRwX2Vycl9zdGF0dXNfcGt0X2lkeF9hZHYpKQorICAgICAgICAgICAgcmV0
dXJuIHN0YXR1czsKKworICAgICAgICBpZiAoc3RhdHVzID09IHNydHBfZXJyX3N0YXR1c19wa3Rf
aWR4X2FkdikgeworICAgICAgICAgICAgYWR2YW5jZV9wYWNrZXRfaW5kZXggPSAxOworICAgICAg
ICAgICAgcm9jX3RvX3NldCA9ICh1aW50MzJfdCkoZXN0ID4+IDE2KTsKKyAgICAgICAgICAgIHNl
cV90b19zZXQgPSAodWludDE2X3QpKGVzdCAmIDB4RkZGRik7CisgICAgICAgIH0KKworICAgICAg
ICAvKiBjaGVjayByZXBsYXkgZGF0YWJhc2UgKi8KKyAgICAgICAgaWYgKCFhZHZhbmNlX3BhY2tl
dF9pbmRleCkgeworICAgICAgICAgICAgc3RhdHVzID0gc3J0cF9yZGJ4X2NoZWNrKCZzdHJlYW0t
PnJ0cF9yZGJ4LCBkZWx0YSk7CisgICAgICAgICAgICBpZiAoc3RhdHVzKQorICAgICAgICAgICAg
ICAgIHJldHVybiBzdGF0dXM7CisgICAgICAgIH0KKyAgICB9CiAKLSAgLyoKLSAgICogRGV0ZXJt
aW5lIGlmIE1LSSBpcyBiZWluZyB1c2VkIGFuZCB3aGF0IHNlc3Npb24ga2V5cyBzaG91bGQgYmUg
dXNlZAotICAgKi8KLSAgaWYgKHVzZV9ta2kpIHsKLSAgICAgIHNlc3Npb25fa2V5cyA9IHNydHBf
Z2V0X3Nlc3Npb25fa2V5cyhzdHJlYW0sICh1aW50OF90ICopaGRyLAotICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjb25zdCB1bnNpZ25lZCBpbnQqKXBrdF9vY3Rl
dF9sZW4sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJm1raV9z
aXplKTsKLQotICAgICAgaWYgKHNlc3Npb25fa2V5cyA9PSBOVUxMKSAKLSAgICAgICAgIHJldHVy
biBzcnRwX2Vycl9zdGF0dXNfYmFkX21raTsKLSAgfSBlbHNlIHsKLSAgICAgIHNlc3Npb25fa2V5
cyA9ICZzdHJlYW0tPnNlc3Npb25fa2V5c1swXTsKLSAgfQotCi0gIC8qCi0gICAqIENoZWNrIGlm
IHRoaXMgaXMgYW4gQUVBRCBzdHJlYW0gKEdDTSBtb2RlKS4gIElmIHNvLCB0aGVuIGRpc3BhdGNo
Ci0gICAqIHRoZSByZXF1ZXN0IHRvIG91ciBBRUFEIGhhbmRsZXIuCi0gICAqLwotICBpZiAoc2Vz
c2lvbl9rZXlzLT5ydHBfY2lwaGVyLT5hbGdvcml0aG0gPT0gU1JUUF9BRVNfR0NNXzEyOCB8fAot
ICAgICAgc2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVyLT5hbGdvcml0aG0gPT0gU1JUUF9BRVNfR0NN
XzI1NikgewotICAgICAgcmV0dXJuIHNydHBfdW5wcm90ZWN0X2FlYWQoY3R4LCBzdHJlYW0sIGRl
bHRhLCBlc3QsIHNydHBfaGRyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHVu
c2lnbmVkIGludCopcGt0X29jdGV0X2xlbiwgc2Vzc2lvbl9rZXlzLAotICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgbWtpX3NpemUpOwotICB9Ci0KLSAgLyogZ2V0IHRhZyBsZW5ndGgg
ZnJvbSBzdHJlYW0gKi8KLSAgdGFnX2xlbiA9IHNydHBfYXV0aF9nZXRfdGFnX2xlbmd0aChzZXNz
aW9uX2tleXMtPnJ0cF9hdXRoKTsgCi0KLSAgLyogCi0gICAqIHNldCB0aGUgY2lwaGVyJ3MgSVYg
cHJvcGVybHksIGRlcGVuZGluZyBvbiB3aGF0ZXZlciBjaXBoZXIgd2UKLSAgICogaGFwcGVuIHRv
IGJlIHVzaW5nCi0gICAqLwotICBpZiAoc2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVyLT50eXBlLT5p
ZCA9PSBTUlRQX0FFU19JQ01fMTI4IHx8Ci0gICAgICBzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXIt
PnR5cGUtPmlkID09IFNSVFBfQUVTX0lDTV8xOTIgfHwKLSAgICAgIHNlc3Npb25fa2V5cy0+cnRw
X2NpcGhlci0+dHlwZS0+aWQgPT0gU1JUUF9BRVNfSUNNXzI1NikgewotICAgIC8qIGFlcyBjb3Vu
dGVyIG1vZGUgKi8KLSAgICBpdi52MzJbMF0gPSAwOwotICAgIGl2LnYzMlsxXSA9IGhkci0+c3Ny
YzsgIC8qIHN0aWxsIGluIG5ldHdvcmsgb3JkZXIgKi8KICNpZmRlZiBOT182NEJJVF9NQVRICi0g
ICAgaXYudjY0WzFdID0gYmU2NF90b19jcHUobWFrZTY0KChoaWdoMzIoZXN0KSA8PCAxNikgfCAo
bG93MzIoZXN0KSA+PiAxNiksCi0JCQkgICAgICAgICBsb3czMihlc3QpIDw8IDE2KSk7CisgICAg
ZGVidWdfcHJpbnQyKG1vZF9zcnRwLCAiZXN0aW1hdGVkIHVfcGFja2V0IGluZGV4OiAlMDh4JTA4
eCIsIGhpZ2gzMihlc3QpLAorICAgICAgICAgICAgICAgICBsb3czMihlc3QpKTsKICNlbHNlCi0g
ICAgaXYudjY0WzFdID0gYmU2NF90b19jcHUoZXN0IDw8IDE2KTsKKyAgICBkZWJ1Z19wcmludCht
b2Rfc3J0cCwgImVzdGltYXRlZCB1X3BhY2tldCBpbmRleDogJTAxNmxseCIsIGVzdCk7CiAjZW5k
aWYKLSAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9zZXRfaXYoc2Vzc2lvbl9rZXlzLT5ydHBfY2lw
aGVyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAodWludDhfdCopJml2LCBzcnRw
X2RpcmVjdGlvbl9kZWNyeXB0KTsKLSAgICBpZiAoIXN0YXR1cyAmJiBzZXNzaW9uX2tleXMtPnJ0
cF94dG5faGRyX2NpcGhlcikgewotICAgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfc2V0X2l2KHNl
c3Npb25fa2V5cy0+cnRwX3h0bl9oZHJfY2lwaGVyLAotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICh1aW50OF90KikmaXYsIHNydHBfZGlyZWN0aW9uX2RlY3J5cHQpOworCisgICAg
LyogRGV0ZXJtaW5lIGlmIE1LSSBpcyBiZWluZyB1c2VkIGFuZCB3aGF0IHNlc3Npb24ga2V5cyBz
aG91bGQgYmUgdXNlZCAqLworICAgIGlmICh1c2VfbWtpKSB7CisgICAgICAgIHNlc3Npb25fa2V5
cyA9IHNydHBfZ2V0X3Nlc3Npb25fa2V5cygKKyAgICAgICAgICAgIHN0cmVhbSwgKHVpbnQ4X3Qg
KiloZHIsIChjb25zdCB1bnNpZ25lZCBpbnQgKilwa3Rfb2N0ZXRfbGVuLAorICAgICAgICAgICAg
Jm1raV9zaXplKTsKKworICAgICAgICBpZiAoc2Vzc2lvbl9rZXlzID09IE5VTEwpCisgICAgICAg
ICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2JhZF9ta2k7CisgICAgfSBlbHNlIHsKKyAgICAg
ICAgc2Vzc2lvbl9rZXlzID0gJnN0cmVhbS0+c2Vzc2lvbl9rZXlzWzBdOwogICAgIH0KLSAgfSBl
bHNlIHsgIAotICAgIAotICAgIC8qIG5vIHBhcnRpY3VsYXIgZm9ybWF0IC0gc2V0IHRoZSBpdiB0
byB0aGUgcGFrY2V0IGluZGV4ICovICAKKworICAgIC8qCisgICAgICogQ2hlY2sgaWYgdGhpcyBp
cyBhbiBBRUFEIHN0cmVhbSAoR0NNIG1vZGUpLiAgSWYgc28sIHRoZW4gZGlzcGF0Y2gKKyAgICAg
KiB0aGUgcmVxdWVzdCB0byBvdXIgQUVBRCBoYW5kbGVyLgorICAgICAqLworICAgIGlmIChzZXNz
aW9uX2tleXMtPnJ0cF9jaXBoZXItPmFsZ29yaXRobSA9PSBTUlRQX0FFU19HQ01fMTI4IHx8Cisg
ICAgICAgIHNlc3Npb25fa2V5cy0+cnRwX2NpcGhlci0+YWxnb3JpdGhtID09IFNSVFBfQUVTX0dD
TV8yNTYpIHsKKyAgICAgICAgcmV0dXJuIHNydHBfdW5wcm90ZWN0X2FlYWQoY3R4LCBzdHJlYW0s
IGRlbHRhLCBlc3QsIHNydHBfaGRyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAodW5zaWduZWQgaW50ICopcGt0X29jdGV0X2xlbiwgc2Vzc2lvbl9rZXlzLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBta2lfc2l6ZSk7CisgICAgfQorCisgICAgLyogZ2V0
IHRhZyBsZW5ndGggZnJvbSBzdHJlYW0gKi8KKyAgICB0YWdfbGVuID0gc3J0cF9hdXRoX2dldF90
YWdfbGVuZ3RoKHNlc3Npb25fa2V5cy0+cnRwX2F1dGgpOworCisgICAgLyoKKyAgICAgKiBzZXQg
dGhlIGNpcGhlcidzIElWIHByb3Blcmx5LCBkZXBlbmRpbmcgb24gd2hhdGV2ZXIgY2lwaGVyIHdl
CisgICAgICogaGFwcGVuIHRvIGJlIHVzaW5nCisgICAgICovCisgICAgaWYgKHNlc3Npb25fa2V5
cy0+cnRwX2NpcGhlci0+dHlwZS0+aWQgPT0gU1JUUF9BRVNfSUNNXzEyOCB8fAorICAgICAgICBz
ZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXItPnR5cGUtPmlkID09IFNSVFBfQUVTX0lDTV8xOTIgfHwK
KyAgICAgICAgc2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVyLT50eXBlLT5pZCA9PSBTUlRQX0FFU19J
Q01fMjU2KSB7CisgICAgICAgIC8qIGFlcyBjb3VudGVyIG1vZGUgKi8KKyAgICAgICAgaXYudjMy
WzBdID0gMDsKKyAgICAgICAgaXYudjMyWzFdID0gaGRyLT5zc3JjOyAvKiBzdGlsbCBpbiBuZXR3
b3JrIG9yZGVyICovCiAjaWZkZWYgTk9fNjRCSVRfTUFUSAotICAgIGl2LnYzMlswXSA9IDA7Ci0g
ICAgaXYudjMyWzFdID0gMDsKKyAgICAgICAgaXYudjY0WzFdID0gYmU2NF90b19jcHUoCisgICAg
ICAgICAgICBtYWtlNjQoKGhpZ2gzMihlc3QpIDw8IDE2KSB8IChsb3czMihlc3QpID4+IDE2KSwg
bG93MzIoZXN0KSA8PCAxNikpOwogI2Vsc2UKLSAgICBpdi52NjRbMF0gPSAwOworICAgICAgICBp
di52NjRbMV0gPSBiZTY0X3RvX2NwdShlc3QgPDwgMTYpOwogI2VuZGlmCi0gICAgaXYudjY0WzFd
ID0gYmU2NF90b19jcHUoZXN0KTsKLSAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9zZXRfaXYoc2Vz
c2lvbl9rZXlzLT5ydHBfY2lwaGVyLCAodWludDhfdCopJml2LCBzcnRwX2RpcmVjdGlvbl9kZWNy
eXB0KTsKLSAgICBpZiAoIXN0YXR1cyAmJiBzZXNzaW9uX2tleXMtPnJ0cF94dG5faGRyX2NpcGhl
cikgewotICAgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfc2V0X2l2KHNlc3Npb25fa2V5cy0+cnRw
X3h0bl9oZHJfY2lwaGVyLCAodWludDhfdCopJml2LCBzcnRwX2RpcmVjdGlvbl9kZWNyeXB0KTsK
KyAgICAgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfc2V0X2l2KHNlc3Npb25fa2V5cy0+cnRwX2Np
cGhlciwgKHVpbnQ4X3QgKikmaXYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBzcnRwX2RpcmVjdGlvbl9kZWNyeXB0KTsKKyAgICAgICAgaWYgKCFzdGF0dXMgJiYgc2Vzc2lv
bl9rZXlzLT5ydHBfeHRuX2hkcl9jaXBoZXIpIHsKKyAgICAgICAgICAgIHN0YXR1cyA9IHNydHBf
Y2lwaGVyX3NldF9pdihzZXNzaW9uX2tleXMtPnJ0cF94dG5faGRyX2NpcGhlciwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAodWludDhfdCAqKSZpdiwgc3J0cF9kaXJl
Y3Rpb25fZGVjcnlwdCk7CisgICAgICAgIH0KKyAgICB9IGVsc2UgeworLyogbm8gcGFydGljdWxh
ciBmb3JtYXQgLSBzZXQgdGhlIGl2IHRvIHRoZSBwYWtjZXQgaW5kZXggKi8KKyNpZmRlZiBOT182
NEJJVF9NQVRICisgICAgICAgIGl2LnYzMlswXSA9IDA7CisgICAgICAgIGl2LnYzMlsxXSA9IDA7
CisjZWxzZQorICAgICAgICBpdi52NjRbMF0gPSAwOworI2VuZGlmCisgICAgICAgIGl2LnY2NFsx
XSA9IGJlNjRfdG9fY3B1KGVzdCk7CisgICAgICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3NldF9p
dihzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXIsICh1aW50OF90ICopJml2LAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF9kaXJlY3Rpb25fZGVjcnlwdCk7CisgICAgICAg
IGlmICghc3RhdHVzICYmIHNlc3Npb25fa2V5cy0+cnRwX3h0bl9oZHJfY2lwaGVyKSB7CisgICAg
ICAgICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9zZXRfaXYoc2Vzc2lvbl9rZXlzLT5ydHBfeHRu
X2hkcl9jaXBoZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHVp
bnQ4X3QgKikmaXYsIHNydHBfZGlyZWN0aW9uX2RlY3J5cHQpOworICAgICAgICB9CiAgICAgfQot
ICB9Ci0gIGlmIChzdGF0dXMpCi0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19jaXBoZXJfZmFp
bDsKKyAgICBpZiAoc3RhdHVzKQorICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2NpcGhl
cl9mYWlsOwogCi0gIC8qIHNoaWZ0IGVzdCwgcHV0IGludG8gbmV0d29yayBieXRlIG9yZGVyICov
CisvKiBzaGlmdCBlc3QsIHB1dCBpbnRvIG5ldHdvcmsgYnl0ZSBvcmRlciAqLwogI2lmZGVmIE5P
XzY0QklUX01BVEgKLSAgZXN0ID0gYmU2NF90b19jcHUobWFrZTY0KChoaWdoMzIoZXN0KSA8PCAx
NikgfAotCQkJCQkgICAgKGxvdzMyKGVzdCkgPj4gMTYpLAotCQkJCQkgICAgbG93MzIoZXN0KSA8
PCAxNikpOworICAgIGVzdCA9IGJlNjRfdG9fY3B1KAorICAgICAgICBtYWtlNjQoKGhpZ2gzMihl
c3QpIDw8IDE2KSB8IChsb3czMihlc3QpID4+IDE2KSwgbG93MzIoZXN0KSA8PCAxNikpOwogI2Vs
c2UKLSAgZXN0ID0gYmU2NF90b19jcHUoZXN0IDw8IDE2KTsKKyAgICBlc3QgPSBiZTY0X3RvX2Nw
dShlc3QgPDwgMTYpOwogI2VuZGlmCiAKLSAgLyoKLSAgICogZmluZCBzdGFydGluZyBwb2ludCBm
b3IgZGVjcnlwdGlvbiBhbmQgbGVuZ3RoIG9mIGRhdGEgdG8gYmUKLSAgICogZGVjcnlwdGVkIC0g
dGhlIGVuY3J5cHRlZCBwb3J0aW9uIHN0YXJ0cyBhZnRlciB0aGUgcnRwIGhlYWRlcgotICAgKiBl
eHRlbnNpb24sIGlmIHByZXNlbnQ7IG90aGVyd2lzZSwgaXQgc3RhcnRzIGFmdGVyIHRoZSBsYXN0
IGNzcmMsCi0gICAqIGlmIGFueSBhcmUgcHJlc2VudAotICAgKgotICAgKiBpZiB3ZSdyZSBub3Qg
cHJvdmlkaW5nIGNvbmZpZGVudGlhbGl0eSwgc2V0IGVuY19zdGFydCB0byBOVUxMCi0gICAqLwot
ICBpZiAoc3RyZWFtLT5ydHBfc2VydmljZXMgJiBzZWNfc2Vydl9jb25mKSB7Ci0gICAgZW5jX3N0
YXJ0ID0gKHVpbnQzMl90ICopaGRyICsgdWludDMyc19pbl9ydHBfaGVhZGVyICsgaGRyLT5jYzsg
IAotICAgIGlmIChoZHItPnggPT0gMSkgewotICAgICAgeHRuX2hkciA9IChzcnRwX2hkcl94dG5k
X3QgKillbmNfc3RhcnQ7Ci0gICAgICBlbmNfc3RhcnQgKz0gKG50b2hzKHh0bl9oZHItPmxlbmd0
aCkgKyAxKTsKLSAgICB9ICAKLSAgICBpZiAoISgodWludDhfdCopZW5jX3N0YXJ0IDw9ICh1aW50
OF90KiloZHIgKyAoKnBrdF9vY3RldF9sZW4gLSB0YWdfbGVuIC0gbWtpX3NpemUpKSkKLSAgICAg
IHJldHVybiBzcnRwX2Vycl9zdGF0dXNfcGFyc2VfZXJyOwotICAgIGVuY19vY3RldF9sZW4gPSAo
dWludDMyX3QpKCpwa3Rfb2N0ZXRfbGVuIC0gdGFnX2xlbiAtIG1raV9zaXplIC0KLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAoKHVpbnQ4X3QqKWVuY19zdGFydCAtICh1aW50OF90Kilo
ZHIpKTsKLSAgfSBlbHNlIHsKLSAgICBlbmNfc3RhcnQgPSBOVUxMOwotICB9Ci0KLSAgLyogCi0g
ICAqIGlmIHdlJ3JlIHByb3ZpZGluZyBhdXRoZW50aWNhdGlvbiwgc2V0IHRoZSBhdXRoX3N0YXJ0
IGFuZCBhdXRoX3RhZwotICAgKiBwb2ludGVycyB0byB0aGUgcHJvcGVyIGxvY2F0aW9uczsgb3Ro
ZXJ3aXNlLCBzZXQgYXV0aF9zdGFydCB0byBOVUxMCi0gICAqIHRvIGluZGljYXRlIHRoYXQgbm8g
YXV0aGVudGljYXRpb24gaXMgbmVlZGVkCi0gICAqLwotICBpZiAoc3RyZWFtLT5ydHBfc2Vydmlj
ZXMgJiBzZWNfc2Vydl9hdXRoKSB7Ci0gICAgYXV0aF9zdGFydCA9ICh1aW50MzJfdCAqKWhkcjsK
LSAgICBhdXRoX3RhZyA9ICh1aW50OF90ICopaGRyICsgKnBrdF9vY3RldF9sZW4gLSB0YWdfbGVu
OwotICB9IGVsc2UgewotICAgIGF1dGhfc3RhcnQgPSBOVUxMOwotICAgIGF1dGhfdGFnID0gTlVM
TDsKLSAgfSAKLQotICAvKgotICAgKiBpZiB3ZSBleHBlY3QgbWVzc2FnZSBhdXRoZW50aWNhdGlv
biwgcnVuIHRoZSBhdXRoZW50aWNhdGlvbgotICAgKiBmdW5jdGlvbiBhbmQgY29tcGFyZSB0aGUg
cmVzdWx0IHdpdGggdGhlIHZhbHVlIG9mIHRoZSBhdXRoX3RhZwotICAgKi8KLSAgaWYgKGF1dGhf
c3RhcnQpIHsgICAgICAgIAotCi0gICAgLyogCi0gICAgICogaWYgd2UncmUgdXNpbmcgYSB1bml2
ZXJzYWwgaGFzaCwgdGhlbiB3ZSBuZWVkIHRvIGNvbXB1dGUgdGhlCi0gICAgICoga2V5c3RyZWFt
IHByZWZpeCBmb3IgZW5jcnlwdGluZyB0aGUgdW5pdmVyc2FsIGhhc2ggb3V0cHV0CisgICAgLyoK
KyAgICAgKiBmaW5kIHN0YXJ0aW5nIHBvaW50IGZvciBkZWNyeXB0aW9uIGFuZCBsZW5ndGggb2Yg
ZGF0YSB0byBiZQorICAgICAqIGRlY3J5cHRlZCAtIHRoZSBlbmNyeXB0ZWQgcG9ydGlvbiBzdGFy
dHMgYWZ0ZXIgdGhlIHJ0cCBoZWFkZXIKKyAgICAgKiBleHRlbnNpb24sIGlmIHByZXNlbnQ7IG90
aGVyd2lzZSwgaXQgc3RhcnRzIGFmdGVyIHRoZSBsYXN0IGNzcmMsCisgICAgICogaWYgYW55IGFy
ZSBwcmVzZW50CiAgICAgICoKLSAgICAgKiBpZiB0aGUga2V5c3RyZWFtIHByZWZpeCBsZW5ndGgg
aXMgemVybywgdGhlbiB3ZSBrbm93IHRoYXQKLSAgICAgKiB0aGUgYXV0aGVudGljYXRvciBpc24n
dCB1c2luZyBhIHVuaXZlcnNhbCBoYXNoIGZ1bmN0aW9uCi0gICAgICovICAKLSAgICBpZiAoc2Vz
c2lvbl9rZXlzLT5ydHBfYXV0aC0+cHJlZml4X2xlbiAhPSAwKSB7Ci0gICAgICAKLSAgICAgIHBy
ZWZpeF9sZW4gPSBzcnRwX2F1dGhfZ2V0X3ByZWZpeF9sZW5ndGgoc2Vzc2lvbl9rZXlzLT5ydHBf
YXV0aCk7ICAgIAotICAgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfb3V0cHV0KHNlc3Npb25fa2V5
cy0+cnRwX2NpcGhlciwgdG1wX3RhZywgJnByZWZpeF9sZW4pOwotICAgICAgZGVidWdfcHJpbnQo
bW9kX3NydHAsICJrZXlzdHJlYW0gcHJlZml4OiAlcyIsIAotCQkgIHNydHBfb2N0ZXRfc3RyaW5n
X2hleF9zdHJpbmcodG1wX3RhZywgcHJlZml4X2xlbikpOwotICAgICAgaWYgKHN0YXR1cykKLQly
ZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2NpcGhlcl9mYWlsOwotICAgIH0gCisgICAgICogaWYgd2Un
cmUgbm90IHByb3ZpZGluZyBjb25maWRlbnRpYWxpdHksIHNldCBlbmNfc3RhcnQgdG8gTlVMTAor
ICAgICAqLworICAgIGlmIChzdHJlYW0tPnJ0cF9zZXJ2aWNlcyAmIHNlY19zZXJ2X2NvbmYpIHsK
KyAgICAgICAgZW5jX3N0YXJ0ID0gKHVpbnQzMl90ICopaGRyICsgdWludDMyc19pbl9ydHBfaGVh
ZGVyICsgaGRyLT5jYzsKKyAgICAgICAgaWYgKGhkci0+eCA9PSAxKSB7CisgICAgICAgICAgICB4
dG5faGRyID0gKHNydHBfaGRyX3h0bmRfdCAqKWVuY19zdGFydDsKKyAgICAgICAgICAgIGVuY19z
dGFydCArPSAobnRvaHMoeHRuX2hkci0+bGVuZ3RoKSArIDEpOworICAgICAgICB9CisgICAgICAg
IGlmICghKCh1aW50OF90ICopZW5jX3N0YXJ0IDw9CisgICAgICAgICAgICAgICh1aW50OF90ICop
aGRyICsgKCpwa3Rfb2N0ZXRfbGVuIC0gdGFnX2xlbiAtIG1raV9zaXplKSkpCisgICAgICAgICAg
ICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX3BhcnNlX2VycjsKKyAgICAgICAgZW5jX29jdGV0X2xl
biA9ICh1aW50MzJfdCkoKnBrdF9vY3RldF9sZW4gLSB0YWdfbGVuIC0gbWtpX3NpemUgLQorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKHVpbnQ4X3QgKillbmNfc3RhcnQgLSAo
dWludDhfdCAqKWhkcikpOworICAgIH0gZWxzZSB7CisgICAgICAgIGVuY19zdGFydCA9IE5VTEw7
CisgICAgfQogCi0gICAgLyogaW5pdGlhbGl6ZSBhdXRoIGZ1bmMgY29udGV4dCAqLwotICAgIHN0
YXR1cyA9IHNydHBfYXV0aF9zdGFydChzZXNzaW9uX2tleXMtPnJ0cF9hdXRoKTsKLSAgICBpZiAo
c3RhdHVzKSByZXR1cm4gc3RhdHVzOwotIAotICAgIC8qIG5vdyBjb21wdXRlIGF1dGggZnVuY3Rp
b24gb3ZlciBwYWNrZXQgKi8KLSAgICBzdGF0dXMgPSBzcnRwX2F1dGhfdXBkYXRlKHNlc3Npb25f
a2V5cy0+cnRwX2F1dGgsICh1aW50OF90ICopYXV0aF9zdGFydCwKLQkJCSAqcGt0X29jdGV0X2xl
biAtIHRhZ19sZW4gLSBta2lfc2l6ZSk7Ci0KLSAgICAvKiBydW4gYXV0aCBmdW5jIG92ZXIgUk9D
LCB0aGVuIHdyaXRlIHRtcCB0YWcgKi8KLSAgICBzdGF0dXMgPSBzcnRwX2F1dGhfY29tcHV0ZShz
ZXNzaW9uX2tleXMtPnJ0cF9hdXRoLCAodWludDhfdCAqKSZlc3QsIDQsIHRtcF90YWcpOwotCi0g
ICAgZGVidWdfcHJpbnQobW9kX3NydHAsICJjb21wdXRlZCBhdXRoIHRhZzogICAgJXMiLCAKLQkJ
c3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZyh0bXBfdGFnLCB0YWdfbGVuKSk7Ci0gICAgZGVi
dWdfcHJpbnQobW9kX3NydHAsICJwYWNrZXQgYXV0aCB0YWc6ICAgICAgJXMiLCAKLQkJc3J0cF9v
Y3RldF9zdHJpbmdfaGV4X3N0cmluZyhhdXRoX3RhZywgdGFnX2xlbikpOwotICAgIGlmIChzdGF0
dXMpCi0gICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2F1dGhfZmFpbDsgICAKKyAgICAvKgor
ICAgICAqIGlmIHdlJ3JlIHByb3ZpZGluZyBhdXRoZW50aWNhdGlvbiwgc2V0IHRoZSBhdXRoX3N0
YXJ0IGFuZCBhdXRoX3RhZworICAgICAqIHBvaW50ZXJzIHRvIHRoZSBwcm9wZXIgbG9jYXRpb25z
OyBvdGhlcndpc2UsIHNldCBhdXRoX3N0YXJ0IHRvIE5VTEwKKyAgICAgKiB0byBpbmRpY2F0ZSB0
aGF0IG5vIGF1dGhlbnRpY2F0aW9uIGlzIG5lZWRlZAorICAgICAqLworICAgIGlmIChzdHJlYW0t
PnJ0cF9zZXJ2aWNlcyAmIHNlY19zZXJ2X2F1dGgpIHsKKyAgICAgICAgYXV0aF9zdGFydCA9ICh1
aW50MzJfdCAqKWhkcjsKKyAgICAgICAgYXV0aF90YWcgPSAodWludDhfdCAqKWhkciArICpwa3Rf
b2N0ZXRfbGVuIC0gdGFnX2xlbjsKKyAgICB9IGVsc2UgeworICAgICAgICBhdXRoX3N0YXJ0ID0g
TlVMTDsKKyAgICAgICAgYXV0aF90YWcgPSBOVUxMOworICAgIH0KIAotICAgIGlmIChvY3RldF9z
dHJpbmdfaXNfZXEodG1wX3RhZywgYXV0aF90YWcsIHRhZ19sZW4pKQotICAgICAgcmV0dXJuIHNy
dHBfZXJyX3N0YXR1c19hdXRoX2ZhaWw7Ci0gIH0KLQotICAvKiAKLSAgICogdXBkYXRlIHRoZSBr
ZXkgdXNhZ2UgbGltaXQsIGFuZCBjaGVjayBpdCB0byBtYWtlIHN1cmUgdGhhdCB3ZQotICAgKiBk
aWRuJ3QganVzdCBoaXQgZWl0aGVyIHRoZSBzb2Z0IGxpbWl0IG9yIHRoZSBoYXJkIGxpbWl0LCBh
bmQgY2FsbAotICAgKiB0aGUgZXZlbnQgaGFuZGxlciBpZiB3ZSBoaXQgZWl0aGVyLgotICAgKi8K
LSAgc3dpdGNoKHNydHBfa2V5X2xpbWl0X3VwZGF0ZShzZXNzaW9uX2tleXMtPmxpbWl0KSkgewot
ICBjYXNlIHNydHBfa2V5X2V2ZW50X25vcm1hbDoKLSAgICBicmVhazsKLSAgY2FzZSBzcnRwX2tl
eV9ldmVudF9zb2Z0X2xpbWl0OiAKLSAgICBzcnRwX2hhbmRsZV9ldmVudChjdHgsIHN0cmVhbSwg
ZXZlbnRfa2V5X3NvZnRfbGltaXQpOwotICAgIGJyZWFrOyAKLSAgY2FzZSBzcnRwX2tleV9ldmVu
dF9oYXJkX2xpbWl0OgotICAgIHNydHBfaGFuZGxlX2V2ZW50KGN0eCwgc3RyZWFtLCBldmVudF9r
ZXlfaGFyZF9saW1pdCk7Ci0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19rZXlfZXhwaXJlZDsK
LSAgZGVmYXVsdDoKLSAgICBicmVhazsKLSAgfQotCi0gIGlmICh4dG5faGRyICYmIHNlc3Npb25f
a2V5cy0+cnRwX3h0bl9oZHJfY2lwaGVyKSB7CiAgICAgLyoKLSAgICAgKiBleHRlbnNpb25zIGhl
YWRlciBlbmNyeXB0aW9uIFJGQyA2OTA0CisgICAgICogaWYgd2UgZXhwZWN0IG1lc3NhZ2UgYXV0
aGVudGljYXRpb24sIHJ1biB0aGUgYXV0aGVudGljYXRpb24KKyAgICAgKiBmdW5jdGlvbiBhbmQg
Y29tcGFyZSB0aGUgcmVzdWx0IHdpdGggdGhlIHZhbHVlIG9mIHRoZSBhdXRoX3RhZwogICAgICAq
LwotICAgICAgc3RhdHVzID0gc3J0cF9wcm9jZXNzX2hlYWRlcl9lbmNyeXB0aW9uKHN0cmVhbSwg
eHRuX2hkciwgc2Vzc2lvbl9rZXlzKTsKLSAgICBpZiAoc3RhdHVzKSB7Ci0gICAgICByZXR1cm4g
c3RhdHVzOworICAgIGlmIChhdXRoX3N0YXJ0KSB7CisgICAgICAgIC8qCisgICAgICAgICAqIGlm
IHdlJ3JlIHVzaW5nIGEgdW5pdmVyc2FsIGhhc2gsIHRoZW4gd2UgbmVlZCB0byBjb21wdXRlIHRo
ZQorICAgICAgICAgKiBrZXlzdHJlYW0gcHJlZml4IGZvciBlbmNyeXB0aW5nIHRoZSB1bml2ZXJz
YWwgaGFzaCBvdXRwdXQKKyAgICAgICAgICoKKyAgICAgICAgICogaWYgdGhlIGtleXN0cmVhbSBw
cmVmaXggbGVuZ3RoIGlzIHplcm8sIHRoZW4gd2Uga25vdyB0aGF0CisgICAgICAgICAqIHRoZSBh
dXRoZW50aWNhdG9yIGlzbid0IHVzaW5nIGEgdW5pdmVyc2FsIGhhc2ggZnVuY3Rpb24KKyAgICAg
ICAgICovCisgICAgICAgIGlmIChzZXNzaW9uX2tleXMtPnJ0cF9hdXRoLT5wcmVmaXhfbGVuICE9
IDApIHsKKyAgICAgICAgICAgIHByZWZpeF9sZW4gPSBzcnRwX2F1dGhfZ2V0X3ByZWZpeF9sZW5n
dGgoc2Vzc2lvbl9rZXlzLT5ydHBfYXV0aCk7CisgICAgICAgICAgICBzdGF0dXMgPSBzcnRwX2Np
cGhlcl9vdXRwdXQoc2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVyLCB0bXBfdGFnLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZwcmVmaXhfbGVuKTsKKyAgICAgICAgICAg
IGRlYnVnX3ByaW50KG1vZF9zcnRwLCAia2V5c3RyZWFtIHByZWZpeDogJXMiLAorICAgICAgICAg
ICAgICAgICAgICAgICAgc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZyh0bXBfdGFnLCBwcmVm
aXhfbGVuKSk7CisgICAgICAgICAgICBpZiAoc3RhdHVzKQorICAgICAgICAgICAgICAgIHJldHVy
biBzcnRwX2Vycl9zdGF0dXNfY2lwaGVyX2ZhaWw7CisgICAgICAgIH0KKworICAgICAgICAvKiBp
bml0aWFsaXplIGF1dGggZnVuYyBjb250ZXh0ICovCisgICAgICAgIHN0YXR1cyA9IHNydHBfYXV0
aF9zdGFydChzZXNzaW9uX2tleXMtPnJ0cF9hdXRoKTsKKyAgICAgICAgaWYgKHN0YXR1cykKKyAg
ICAgICAgICAgIHJldHVybiBzdGF0dXM7CisKKyAgICAgICAgLyogbm93IGNvbXB1dGUgYXV0aCBm
dW5jdGlvbiBvdmVyIHBhY2tldCAqLworICAgICAgICBzdGF0dXMgPSBzcnRwX2F1dGhfdXBkYXRl
KHNlc3Npb25fa2V5cy0+cnRwX2F1dGgsICh1aW50OF90ICopYXV0aF9zdGFydCwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAqcGt0X29jdGV0X2xlbiAtIHRhZ19sZW4gLSBta2lf
c2l6ZSk7CisKKyAgICAgICAgLyogcnVuIGF1dGggZnVuYyBvdmVyIFJPQywgdGhlbiB3cml0ZSB0
bXAgdGFnICovCisgICAgICAgIHN0YXR1cyA9IHNydHBfYXV0aF9jb21wdXRlKHNlc3Npb25fa2V5
cy0+cnRwX2F1dGgsICh1aW50OF90ICopJmVzdCwgNCwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgdG1wX3RhZyk7CisKKyAgICAgICAgZGVidWdfcHJpbnQobW9kX3NydHAsICJj
b21wdXRlZCBhdXRoIHRhZzogICAgJXMiLAorICAgICAgICAgICAgICAgICAgICBzcnRwX29jdGV0
X3N0cmluZ19oZXhfc3RyaW5nKHRtcF90YWcsIHRhZ19sZW4pKTsKKyAgICAgICAgZGVidWdfcHJp
bnQobW9kX3NydHAsICJwYWNrZXQgYXV0aCB0YWc6ICAgICAgJXMiLAorICAgICAgICAgICAgICAg
ICAgICBzcnRwX29jdGV0X3N0cmluZ19oZXhfc3RyaW5nKGF1dGhfdGFnLCB0YWdfbGVuKSk7Cisg
ICAgICAgIGlmIChzdGF0dXMpCisgICAgICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2F1
dGhfZmFpbDsKKworICAgICAgICBpZiAob2N0ZXRfc3RyaW5nX2lzX2VxKHRtcF90YWcsIGF1dGhf
dGFnLCB0YWdfbGVuKSkKKyAgICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYXV0aF9m
YWlsOwogICAgIH0KLSAgfQogCi0gIC8qIGlmIHdlJ3JlIGRlY3J5cHRpbmcsIGFkZCBrZXlzdHJl
YW0gaW50byBjaXBoZXJ0ZXh0ICovCi0gIGlmIChlbmNfc3RhcnQpIHsKLSAgICBzdGF0dXMgPSBz
cnRwX2NpcGhlcl9kZWNyeXB0KHNlc3Npb25fa2V5cy0+cnRwX2NpcGhlciwKLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICh1aW50OF90ICopZW5jX3N0YXJ0LCAmZW5jX29jdGV0X2xl
bik7Ci0gICAgaWYgKHN0YXR1cykKLSAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfY2lwaGVy
X2ZhaWw7Ci0gIH0KLQotICAvKiAKLSAgICogdmVyaWZ5IHRoYXQgc3RyZWFtIGlzIGZvciByZWNl
aXZlZCB0cmFmZmljIC0gdGhpcyBjaGVjayB3aWxsCi0gICAqIGRldGVjdCBTU1JDIGNvbGxpc2lv
bnMsIHNpbmNlIGEgc3RyZWFtIHRoYXQgYXBwZWFycyBpbiBib3RoCi0gICAqIHNydHBfcHJvdGVj
dCgpIGFuZCBzcnRwX3VucHJvdGVjdCgpIHdpbGwgZmFpbCB0aGlzIHRlc3QgaW4gb25lIG9mCi0g
ICAqIHRob3NlIGZ1bmN0aW9ucy4KLSAgICoKLSAgICogd2UgZG8gdGhpcyBjaGVjayAqYWZ0ZXIq
IHRoZSBhdXRoZW50aWNhdGlvbiBjaGVjaywgc28gdGhhdCB0aGUKLSAgICogbGF0dGVyIGNoZWNr
IHdpbGwgY2F0Y2ggYW55IGF0dGVtcHRzIHRvIGZvb2wgdXMgaW50byB0aGlua2luZwotICAgKiB0
aGF0IHdlJ3ZlIGdvdCBhIGNvbGxpc2lvbgotICAgKi8KLSAgaWYgKHN0cmVhbS0+ZGlyZWN0aW9u
ICE9IGRpcl9zcnRwX3JlY2VpdmVyKSB7Ci0gICAgaWYgKHN0cmVhbS0+ZGlyZWN0aW9uID09IGRp
cl91bmtub3duKSB7Ci0gICAgICBzdHJlYW0tPmRpcmVjdGlvbiA9IGRpcl9zcnRwX3JlY2VpdmVy
OwotICAgIH0gZWxzZSB7Ci0gICAgICBzcnRwX2hhbmRsZV9ldmVudChjdHgsIHN0cmVhbSwgZXZl
bnRfc3NyY19jb2xsaXNpb24pOwotICAgIH0KLSAgfQotCi0gIC8qIAotICAgKiBpZiB0aGUgc3Ry
ZWFtIGlzIGEgJ3Byb3Zpc2lvbmFsJyBvbmUsIGluIHdoaWNoIHRoZSB0ZW1wbGF0ZSBjb250ZXh0
Ci0gICAqIGlzIHVzZWQsIHRoZW4gd2UgbmVlZCB0byBhbGxvY2F0ZSBhIG5ldyBzdHJlYW0gYXQg
dGhpcyBwb2ludCwgc2luY2UKLSAgICogdGhlIGF1dGhlbnRpY2F0aW9uIHBhc3NlZAotICAgKi8K
LSAgaWYgKHN0cmVhbSA9PSBjdHgtPnN0cmVhbV90ZW1wbGF0ZSkgeyAgCi0gICAgc3J0cF9zdHJl
YW1fY3R4X3QgKm5ld19zdHJlYW07Ci0KLSAgICAvKiAKLSAgICAgKiBhbGxvY2F0ZSBhbmQgaW5p
dGlhbGl6ZSBhIG5ldyBzdHJlYW0gCi0gICAgICogCi0gICAgICogbm90ZSB0aGF0IHdlIGluZGlj
YXRlIGZhaWx1cmUgaWYgd2UgY2FuJ3QgYWxsb2NhdGUgdGhlIG5ldwotICAgICAqIHN0cmVhbSwg
YW5kIHNvbWUgaW1wbGVtZW50YXRpb25zIHdpbGwgd2FudCB0byBub3QgcmV0dXJuCi0gICAgICog
ZmFpbHVyZSBoZXJlCisgICAgLyoKKyAgICAgKiB1cGRhdGUgdGhlIGtleSB1c2FnZSBsaW1pdCwg
YW5kIGNoZWNrIGl0IHRvIG1ha2Ugc3VyZSB0aGF0IHdlCisgICAgICogZGlkbid0IGp1c3QgaGl0
IGVpdGhlciB0aGUgc29mdCBsaW1pdCBvciB0aGUgaGFyZCBsaW1pdCwgYW5kIGNhbGwKKyAgICAg
KiB0aGUgZXZlbnQgaGFuZGxlciBpZiB3ZSBoaXQgZWl0aGVyLgogICAgICAqLwotICAgIHN0YXR1
cyA9IHNydHBfc3RyZWFtX2Nsb25lKGN0eC0+c3RyZWFtX3RlbXBsYXRlLCBoZHItPnNzcmMsICZu
ZXdfc3RyZWFtKTsgCi0gICAgaWYgKHN0YXR1cykKLSAgICAgIHJldHVybiBzdGF0dXM7Ci0gICAg
Ci0gICAgLyogYWRkIG5ldyBzdHJlYW0gdG8gdGhlIGhlYWQgb2YgdGhlIHN0cmVhbV9saXN0ICov
Ci0gICAgbmV3X3N0cmVhbS0+bmV4dCA9IGN0eC0+c3RyZWFtX2xpc3Q7Ci0gICAgY3R4LT5zdHJl
YW1fbGlzdCA9IG5ld19zdHJlYW07Ci0gICAgCi0gICAgLyogc2V0IHN0cmVhbSAodGhlIHBvaW50
ZXIgdXNlZCBpbiB0aGlzIGZ1bmN0aW9uKSAqLwotICAgIHN0cmVhbSA9IG5ld19zdHJlYW07Ci0g
IH0KLQotICAvKiAKLSAgICogdGhlIG1lc3NhZ2UgYXV0aGVudGljYXRpb24gZnVuY3Rpb24gcGFz
c2VkLCBzbyBhZGQgdGhlIHBhY2tldAotICAgKiBpbmRleCBpbnRvIHRoZSByZXBsYXkgZGF0YWJh
c2UgCi0gICAqLwotICBpZiAoYWR2YW5jZV9wYWNrZXRfaW5kZXgpIHsKLSAgICBzcnRwX3JkYnhf
c2V0X3JvY19zZXEoJnN0cmVhbS0+cnRwX3JkYngsCi0gICAgICAgICAgICAgICAgICAgICAgICAg
ICByb2NfdG9fc2V0LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VxX3RvX3NldCk7Ci0g
ICAgc3RyZWFtLT5wZW5kaW5nX3JvYyA9IDA7Ci0gICAgc3J0cF9yZGJ4X2FkZF9pbmRleCgmc3Ry
ZWFtLT5ydHBfcmRieCwgMCk7Ci0gIH0gZWxzZSB7Ci0gICAgc3J0cF9yZGJ4X2FkZF9pbmRleCgm
c3RyZWFtLT5ydHBfcmRieCwgZGVsdGEpOwotICB9CisgICAgc3dpdGNoIChzcnRwX2tleV9saW1p
dF91cGRhdGUoc2Vzc2lvbl9rZXlzLT5saW1pdCkpIHsKKyAgICBjYXNlIHNydHBfa2V5X2V2ZW50
X25vcm1hbDoKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBzcnRwX2tleV9ldmVudF9zb2Z0X2xp
bWl0OgorICAgICAgICBzcnRwX2hhbmRsZV9ldmVudChjdHgsIHN0cmVhbSwgZXZlbnRfa2V5X3Nv
ZnRfbGltaXQpOworICAgICAgICBicmVhazsKKyAgICBjYXNlIHNydHBfa2V5X2V2ZW50X2hhcmRf
bGltaXQ6CisgICAgICAgIHNydHBfaGFuZGxlX2V2ZW50KGN0eCwgc3RyZWFtLCBldmVudF9rZXlf
aGFyZF9saW1pdCk7CisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfa2V5X2V4cGlyZWQ7
CisgICAgZGVmYXVsdDoKKyAgICAgICAgYnJlYWs7CisgICAgfQogCi0gIC8qIGRlY3JlYXNlIHRo
ZSBwYWNrZXQgbGVuZ3RoIGJ5IHRoZSBsZW5ndGggb2YgdGhlIGF1dGggdGFnICovCi0gICpwa3Rf
b2N0ZXRfbGVuIC09IHRhZ19sZW47CisgICAgaWYgKHh0bl9oZHIgJiYgc2Vzc2lvbl9rZXlzLT5y
dHBfeHRuX2hkcl9jaXBoZXIpIHsKKyAgICAgICAgLyogZXh0ZW5zaW9ucyBoZWFkZXIgZW5jcnlw
dGlvbiBSRkMgNjkwNCAqLworICAgICAgICBzdGF0dXMgPSBzcnRwX3Byb2Nlc3NfaGVhZGVyX2Vu
Y3J5cHRpb24oc3RyZWFtLCB4dG5faGRyLCBzZXNzaW9uX2tleXMpOworICAgICAgICBpZiAoc3Rh
dHVzKSB7CisgICAgICAgICAgICByZXR1cm4gc3RhdHVzOworICAgICAgICB9CisgICAgfQogCi0g
IC8qIGRlY3JlYXNlIHRoZSBwYWNrZXQgbGVuZ3RoIGJ5IHRoZSBta2kgc2l6ZSAqLwotICAqcGt0
X29jdGV0X2xlbiAtPSBta2lfc2l6ZTsKKyAgICAvKiBpZiB3ZSdyZSBkZWNyeXB0aW5nLCBhZGQg
a2V5c3RyZWFtIGludG8gY2lwaGVydGV4dCAqLworICAgIGlmIChlbmNfc3RhcnQpIHsKKyAgICAg
ICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfZGVjcnlwdChzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXIs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHVpbnQ4X3QgKillbmNfc3Rh
cnQsICZlbmNfb2N0ZXRfbGVuKTsKKyAgICAgICAgaWYgKHN0YXR1cykKKyAgICAgICAgICAgIHJl
dHVybiBzcnRwX2Vycl9zdGF0dXNfY2lwaGVyX2ZhaWw7CisgICAgfQogCi0gIHJldHVybiBzcnRw
X2Vycl9zdGF0dXNfb2s7ICAKLX0KKyAgICAvKgorICAgICAqIHZlcmlmeSB0aGF0IHN0cmVhbSBp
cyBmb3IgcmVjZWl2ZWQgdHJhZmZpYyAtIHRoaXMgY2hlY2sgd2lsbAorICAgICAqIGRldGVjdCBT
U1JDIGNvbGxpc2lvbnMsIHNpbmNlIGEgc3RyZWFtIHRoYXQgYXBwZWFycyBpbiBib3RoCisgICAg
ICogc3J0cF9wcm90ZWN0KCkgYW5kIHNydHBfdW5wcm90ZWN0KCkgd2lsbCBmYWlsIHRoaXMgdGVz
dCBpbiBvbmUgb2YKKyAgICAgKiB0aG9zZSBmdW5jdGlvbnMuCisgICAgICoKKyAgICAgKiB3ZSBk
byB0aGlzIGNoZWNrICphZnRlciogdGhlIGF1dGhlbnRpY2F0aW9uIGNoZWNrLCBzbyB0aGF0IHRo
ZQorICAgICAqIGxhdHRlciBjaGVjayB3aWxsIGNhdGNoIGFueSBhdHRlbXB0cyB0byBmb29sIHVz
IGludG8gdGhpbmtpbmcKKyAgICAgKiB0aGF0IHdlJ3ZlIGdvdCBhIGNvbGxpc2lvbgorICAgICAq
LworICAgIGlmIChzdHJlYW0tPmRpcmVjdGlvbiAhPSBkaXJfc3J0cF9yZWNlaXZlcikgeworICAg
ICAgICBpZiAoc3RyZWFtLT5kaXJlY3Rpb24gPT0gZGlyX3Vua25vd24pIHsKKyAgICAgICAgICAg
IHN0cmVhbS0+ZGlyZWN0aW9uID0gZGlyX3NydHBfcmVjZWl2ZXI7CisgICAgICAgIH0gZWxzZSB7
CisgICAgICAgICAgICBzcnRwX2hhbmRsZV9ldmVudChjdHgsIHN0cmVhbSwgZXZlbnRfc3NyY19j
b2xsaXNpb24pOworICAgICAgICB9CisgICAgfQogCi1zcnRwX2Vycl9zdGF0dXNfdAotc3J0cF9p
bml0KCkgewotICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7CisgICAgLyoKKyAgICAgKiBpZiB0
aGUgc3RyZWFtIGlzIGEgJ3Byb3Zpc2lvbmFsJyBvbmUsIGluIHdoaWNoIHRoZSB0ZW1wbGF0ZSBj
b250ZXh0CisgICAgICogaXMgdXNlZCwgdGhlbiB3ZSBuZWVkIHRvIGFsbG9jYXRlIGEgbmV3IHN0
cmVhbSBhdCB0aGlzIHBvaW50LCBzaW5jZQorICAgICAqIHRoZSBhdXRoZW50aWNhdGlvbiBwYXNz
ZWQKKyAgICAgKi8KKyAgICBpZiAoc3RyZWFtID09IGN0eC0+c3RyZWFtX3RlbXBsYXRlKSB7Cisg
ICAgICAgIHNydHBfc3RyZWFtX2N0eF90ICpuZXdfc3RyZWFtOwogCi0gIC8qIGluaXRpYWxpemUg
Y3J5cHRvIGtlcm5lbCAqLwotICBzdGF0dXMgPSBzcnRwX2NyeXB0b19rZXJuZWxfaW5pdCgpOwot
ICBpZiAoc3RhdHVzKSAKLSAgICByZXR1cm4gc3RhdHVzOworICAgICAgICAvKgorICAgICAgICAg
KiBhbGxvY2F0ZSBhbmQgaW5pdGlhbGl6ZSBhIG5ldyBzdHJlYW0KKyAgICAgICAgICoKKyAgICAg
ICAgICogbm90ZSB0aGF0IHdlIGluZGljYXRlIGZhaWx1cmUgaWYgd2UgY2FuJ3QgYWxsb2NhdGUg
dGhlIG5ldworICAgICAgICAgKiBzdHJlYW0sIGFuZCBzb21lIGltcGxlbWVudGF0aW9ucyB3aWxs
IHdhbnQgdG8gbm90IHJldHVybgorICAgICAgICAgKiBmYWlsdXJlIGhlcmUKKyAgICAgICAgICov
CisgICAgICAgIHN0YXR1cyA9CisgICAgICAgICAgICBzcnRwX3N0cmVhbV9jbG9uZShjdHgtPnN0
cmVhbV90ZW1wbGF0ZSwgaGRyLT5zc3JjLCAmbmV3X3N0cmVhbSk7CisgICAgICAgIGlmIChzdGF0
dXMpCisgICAgICAgICAgICByZXR1cm4gc3RhdHVzOwogCi0gIC8qIGxvYWQgc3J0cCBkZWJ1ZyBt
b2R1bGUgaW50byB0aGUga2VybmVsICovCi0gIHN0YXR1cyA9IHNydHBfY3J5cHRvX2tlcm5lbF9s
b2FkX2RlYnVnX21vZHVsZSgmbW9kX3NydHApOwotICBpZiAoc3RhdHVzKQotICAgIHJldHVybiBz
dGF0dXM7CisgICAgICAgIC8qIGFkZCBuZXcgc3RyZWFtIHRvIHRoZSBoZWFkIG9mIHRoZSBzdHJl
YW1fbGlzdCAqLworICAgICAgICBuZXdfc3RyZWFtLT5uZXh0ID0gY3R4LT5zdHJlYW1fbGlzdDsK
KyAgICAgICAgY3R4LT5zdHJlYW1fbGlzdCA9IG5ld19zdHJlYW07CisKKyAgICAgICAgLyogc2V0
IHN0cmVhbSAodGhlIHBvaW50ZXIgdXNlZCBpbiB0aGlzIGZ1bmN0aW9uKSAqLworICAgICAgICBz
dHJlYW0gPSBuZXdfc3RyZWFtOworICAgIH0KKworICAgIC8qCisgICAgICogdGhlIG1lc3NhZ2Ug
YXV0aGVudGljYXRpb24gZnVuY3Rpb24gcGFzc2VkLCBzbyBhZGQgdGhlIHBhY2tldAorICAgICAq
IGluZGV4IGludG8gdGhlIHJlcGxheSBkYXRhYmFzZQorICAgICAqLworICAgIGlmIChhZHZhbmNl
X3BhY2tldF9pbmRleCkgeworICAgICAgICBzcnRwX3JkYnhfc2V0X3JvY19zZXEoJnN0cmVhbS0+
cnRwX3JkYngsIHJvY190b19zZXQsIHNlcV90b19zZXQpOworICAgICAgICBzdHJlYW0tPnBlbmRp
bmdfcm9jID0gMDsKKyAgICAgICAgc3J0cF9yZGJ4X2FkZF9pbmRleCgmc3RyZWFtLT5ydHBfcmRi
eCwgMCk7CisgICAgfSBlbHNlIHsKKyAgICAgICAgc3J0cF9yZGJ4X2FkZF9pbmRleCgmc3RyZWFt
LT5ydHBfcmRieCwgZGVsdGEpOworICAgIH0KKworICAgIC8qIGRlY3JlYXNlIHRoZSBwYWNrZXQg
bGVuZ3RoIGJ5IHRoZSBsZW5ndGggb2YgdGhlIGF1dGggdGFnICovCisgICAgKnBrdF9vY3RldF9s
ZW4gLT0gdGFnX2xlbjsKIAotICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOworICAgIC8qIGRl
Y3JlYXNlIHRoZSBwYWNrZXQgbGVuZ3RoIGJ5IHRoZSBta2kgc2l6ZSAqLworICAgICpwa3Rfb2N0
ZXRfbGVuIC09IG1raV9zaXplOworCisgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0K
IAotc3J0cF9lcnJfc3RhdHVzX3QKLXNydHBfc2h1dGRvd24oKSB7Ci0gIHNydHBfZXJyX3N0YXR1
c190IHN0YXR1czsKK3NydHBfZXJyX3N0YXR1c190IHNydHBfaW5pdCgpCit7CisgICAgc3J0cF9l
cnJfc3RhdHVzX3Qgc3RhdHVzOwogCi0gIC8qIHNodXQgZG93biBjcnlwdG8ga2VybmVsICovCi0g
IHN0YXR1cyA9IHNydHBfY3J5cHRvX2tlcm5lbF9zaHV0ZG93bigpOwotICBpZiAoc3RhdHVzKSAK
LSAgICByZXR1cm4gc3RhdHVzOworICAgIC8qIGluaXRpYWxpemUgY3J5cHRvIGtlcm5lbCAqLwor
ICAgIHN0YXR1cyA9IHNydHBfY3J5cHRvX2tlcm5lbF9pbml0KCk7CisgICAgaWYgKHN0YXR1cykK
KyAgICAgICAgcmV0dXJuIHN0YXR1czsKIAotICAvKiBzaHV0dGluZyBkb3duIGNyeXB0byBrZXJu
ZWwgZnJlZXMgdGhlIHNydHAgZGVidWcgbW9kdWxlIGFzIHdlbGwgKi8KKyAgICAvKiBsb2FkIHNy
dHAgZGVidWcgbW9kdWxlIGludG8gdGhlIGtlcm5lbCAqLworICAgIHN0YXR1cyA9IHNydHBfY3J5
cHRvX2tlcm5lbF9sb2FkX2RlYnVnX21vZHVsZSgmbW9kX3NydHApOworICAgIGlmIChzdGF0dXMp
CisgICAgICAgIHJldHVybiBzdGF0dXM7CiAKLSAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsK
KyAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQogCitzcnRwX2Vycl9zdGF0dXNfdCBz
cnRwX3NodXRkb3duKCkKK3sKKyAgICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7CisKKyAgICAv
KiBzaHV0IGRvd24gY3J5cHRvIGtlcm5lbCAqLworICAgIHN0YXR1cyA9IHNydHBfY3J5cHRvX2tl
cm5lbF9zaHV0ZG93bigpOworICAgIGlmIChzdGF0dXMpCisgICAgICAgIHJldHVybiBzdGF0dXM7
CisKKyAgICAvKiBzaHV0dGluZyBkb3duIGNyeXB0byBrZXJuZWwgZnJlZXMgdGhlIHNydHAgZGVi
dWcgbW9kdWxlIGFzIHdlbGwgKi8KIAotLyogCisgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19v
azsKK30KKworLyoKICAqIFRoZSBmb2xsb3dpbmcgY29kZSBpcyB1bmRlciBjb25zaWRlcmF0aW9u
IGZvciByZW1vdmFsLiAgU2VlCi0gKiBTUlRQX01BWF9UUkFJTEVSX0xFTiAKKyAqIFNSVFBfTUFY
X1RSQUlMRVJfTEVOCiAgKi8KICNpZiAwCiAKQEAgLTI3NDAsMzc4ICsyNzc0LDM3NiBAQCBzcnRw
X2dldF90cmFpbGVyX2xlbmd0aChjb25zdCBzcnRwX3N0cmVhbV90IHMpIHsKICAqIHNydHBfZ2V0
X3N0cmVhbShzc3JjKSByZXR1cm5zIGEgcG9pbnRlciB0byB0aGUgc3RyZWFtIGNvcnJlc3BvbmRp
bmcKICAqIHRvIHNzcmMsIG9yIE5VTEwgaWYgbm8gc3RyZWFtIGV4aXN0cyBmb3IgdGhhdCBzc3Jj
CiAgKgotICogdGhpcyBpcyBhbiBpbnRlcm5hbCBmdW5jdGlvbiAKKyAqIHRoaXMgaXMgYW4gaW50
ZXJuYWwgZnVuY3Rpb24KICAqLwogCi1zcnRwX3N0cmVhbV9jdHhfdCAqCi1zcnRwX2dldF9zdHJl
YW0oc3J0cF90IHNydHAsIHVpbnQzMl90IHNzcmMpIHsKLSAgc3J0cF9zdHJlYW1fY3R4X3QgKnN0
cmVhbTsKLQotICAvKiB3YWxrIGRvd24gbGlzdCB1bnRpbCBzc3JjIGlzIGZvdW5kICovCi0gIHN0
cmVhbSA9IHNydHAtPnN0cmVhbV9saXN0OwotICB3aGlsZSAoc3RyZWFtICE9IE5VTEwpIHsKLSAg
ICBpZiAoc3RyZWFtLT5zc3JjID09IHNzcmMpCi0gICAgICByZXR1cm4gc3RyZWFtOwotICAgIHN0
cmVhbSA9IHN0cmVhbS0+bmV4dDsKLSAgfQotICAKLSAgLyogd2UgaGF2ZW4ndCBmb3VuZCBvdXIg
c3NyYywgc28gcmV0dXJuIGEgbnVsbCAqLwotICByZXR1cm4gTlVMTDsKK3NydHBfc3RyZWFtX2N0
eF90ICpzcnRwX2dldF9zdHJlYW0oc3J0cF90IHNydHAsIHVpbnQzMl90IHNzcmMpCit7CisgICAg
c3J0cF9zdHJlYW1fY3R4X3QgKnN0cmVhbTsKKworICAgIC8qIHdhbGsgZG93biBsaXN0IHVudGls
IHNzcmMgaXMgZm91bmQgKi8KKyAgICBzdHJlYW0gPSBzcnRwLT5zdHJlYW1fbGlzdDsKKyAgICB3
aGlsZSAoc3RyZWFtICE9IE5VTEwpIHsKKyAgICAgICAgaWYgKHN0cmVhbS0+c3NyYyA9PSBzc3Jj
KQorICAgICAgICAgICAgcmV0dXJuIHN0cmVhbTsKKyAgICAgICAgc3RyZWFtID0gc3RyZWFtLT5u
ZXh0OworICAgIH0KKworICAgIC8qIHdlIGhhdmVuJ3QgZm91bmQgb3VyIHNzcmMsIHNvIHJldHVy
biBhIG51bGwgKi8KKyAgICByZXR1cm4gTlVMTDsKIH0KIAotc3J0cF9lcnJfc3RhdHVzX3QKLXNy
dHBfZGVhbGxvYyhzcnRwX3Qgc2Vzc2lvbikgewotICBzcnRwX3N0cmVhbV9jdHhfdCAqc3RyZWFt
OwotICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7Ci0KLSAgLyoKLSAgICogd2UgdGFrZSBhIGNv
bnNlcnZhdGl2ZSBkZWFsbG9jYXRpb24gc3RyYXRlZ3kgLSBpZiB3ZSBlbmNvdW50ZXIgYW4KLSAg
ICogZXJyb3IgZGVhbGxvY2F0aW5nIGEgc3RyZWFtLCB0aGVuIHdlIHN0b3AgdHJ5aW5nIHRvIGRl
YWxsb2NhdGUKLSAgICogbWVtb3J5IGFuZCBqdXN0IHJldHVybiBhbiBlcnJvcgotICAgKi8KLQot
ICAvKiB3YWxrIGxpc3Qgb2Ygc3RyZWFtcywgZGVhbGxvY2F0aW5nIGFzIHdlIGdvICovCi0gIHN0
cmVhbSA9IHNlc3Npb24tPnN0cmVhbV9saXN0OwotICB3aGlsZSAoc3RyZWFtICE9IE5VTEwpIHsK
LSAgICBzcnRwX3N0cmVhbV90IG5leHQgPSBzdHJlYW0tPm5leHQ7Ci0gICAgc3RhdHVzID0gc3J0
cF9zdHJlYW1fZGVhbGxvYyhzdHJlYW0sIHNlc3Npb24tPnN0cmVhbV90ZW1wbGF0ZSk7Ci0gICAg
aWYgKHN0YXR1cykKLSAgICAgIHJldHVybiBzdGF0dXM7Ci0gICAgc3RyZWFtID0gbmV4dDsKLSAg
fQotICAKLSAgLyogZGVhbGxvY2F0ZSBzdHJlYW0gdGVtcGxhdGUsIGlmIHRoZXJlIGlzIG9uZSAq
LwotICBpZiAoc2Vzc2lvbi0+c3RyZWFtX3RlbXBsYXRlICE9IE5VTEwpIHsKLSAgICBzdGF0dXMg
PSBzcnRwX3N0cmVhbV9kZWFsbG9jKHNlc3Npb24tPnN0cmVhbV90ZW1wbGF0ZSwgTlVMTCk7Ci0g
ICAgaWYgKHN0YXR1cykKLSAgICAgIHJldHVybiBzdGF0dXM7Ci0gIH0KK3NydHBfZXJyX3N0YXR1
c190IHNydHBfZGVhbGxvYyhzcnRwX3Qgc2Vzc2lvbikKK3sKKyAgICBzcnRwX3N0cmVhbV9jdHhf
dCAqc3RyZWFtOworICAgIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKKworICAgIC8qCisgICAg
ICogd2UgdGFrZSBhIGNvbnNlcnZhdGl2ZSBkZWFsbG9jYXRpb24gc3RyYXRlZ3kgLSBpZiB3ZSBl
bmNvdW50ZXIgYW4KKyAgICAgKiBlcnJvciBkZWFsbG9jYXRpbmcgYSBzdHJlYW0sIHRoZW4gd2Ug
c3RvcCB0cnlpbmcgdG8gZGVhbGxvY2F0ZQorICAgICAqIG1lbW9yeSBhbmQganVzdCByZXR1cm4g
YW4gZXJyb3IKKyAgICAgKi8KKworICAgIC8qIHdhbGsgbGlzdCBvZiBzdHJlYW1zLCBkZWFsbG9j
YXRpbmcgYXMgd2UgZ28gKi8KKyAgICBzdHJlYW0gPSBzZXNzaW9uLT5zdHJlYW1fbGlzdDsKKyAg
ICB3aGlsZSAoc3RyZWFtICE9IE5VTEwpIHsKKyAgICAgICAgc3J0cF9zdHJlYW1fdCBuZXh0ID0g
c3RyZWFtLT5uZXh0OworICAgICAgICBzdGF0dXMgPSBzcnRwX3N0cmVhbV9kZWFsbG9jKHN0cmVh
bSwgc2Vzc2lvbi0+c3RyZWFtX3RlbXBsYXRlKTsKKyAgICAgICAgaWYgKHN0YXR1cykKKyAgICAg
ICAgICAgIHJldHVybiBzdGF0dXM7CisgICAgICAgIHN0cmVhbSA9IG5leHQ7CisgICAgfQorCisg
ICAgLyogZGVhbGxvY2F0ZSBzdHJlYW0gdGVtcGxhdGUsIGlmIHRoZXJlIGlzIG9uZSAqLworICAg
IGlmIChzZXNzaW9uLT5zdHJlYW1fdGVtcGxhdGUgIT0gTlVMTCkgeworICAgICAgICBzdGF0dXMg
PSBzcnRwX3N0cmVhbV9kZWFsbG9jKHNlc3Npb24tPnN0cmVhbV90ZW1wbGF0ZSwgTlVMTCk7Cisg
ICAgICAgIGlmIChzdGF0dXMpCisgICAgICAgICAgICByZXR1cm4gc3RhdHVzOworICAgIH0KKwor
ICAgIC8qIGRlYWxsb2NhdGUgc2Vzc2lvbiBjb250ZXh0ICovCisgICAgc3J0cF9jcnlwdG9fZnJl
ZShzZXNzaW9uKTsKKworICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7Cit9CiAKLSAgLyog
ZGVhbGxvY2F0ZSBzZXNzaW9uIGNvbnRleHQgKi8KLSAgc3J0cF9jcnlwdG9fZnJlZShzZXNzaW9u
KTsKK3NydHBfZXJyX3N0YXR1c190IHNydHBfYWRkX3N0cmVhbShzcnRwX3Qgc2Vzc2lvbiwgY29u
c3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5KQoreworICAgIHNydHBfZXJyX3N0YXR1c190IHN0YXR1
czsKKyAgICBzcnRwX3N0cmVhbV90IHRtcDsKKworICAgIC8qIHNhbml0eSBjaGVjayBhcmd1bWVu
dHMgKi8KKyAgICBpZiAoKHNlc3Npb24gPT0gTlVMTCkgfHwgKHBvbGljeSA9PSBOVUxMKSB8fAor
ICAgICAgICAoIXNydHBfdmFsaWRhdGVfcG9saWN5X21hc3Rlcl9rZXlzKHBvbGljeSkpKQorICAg
ICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJhbTsKKworICAgIC8qIGFsbG9jYXRl
IHN0cmVhbSAgKi8KKyAgICBzdGF0dXMgPSBzcnRwX3N0cmVhbV9hbGxvYygmdG1wLCBwb2xpY3kp
OworICAgIGlmIChzdGF0dXMpIHsKKyAgICAgICAgcmV0dXJuIHN0YXR1czsKKyAgICB9CisKKyAg
ICAvKiBpbml0aWFsaXplIHN0cmVhbSAgKi8KKyAgICBzdGF0dXMgPSBzcnRwX3N0cmVhbV9pbml0
KHRtcCwgcG9saWN5KTsKKyAgICBpZiAoc3RhdHVzKSB7CisgICAgICAgIHNydHBfc3RyZWFtX2Rl
YWxsb2ModG1wLCBOVUxMKTsKKyAgICAgICAgcmV0dXJuIHN0YXR1czsKKyAgICB9CisKKyAgICAv
KgorICAgICAqIHNldCB0aGUgaGVhZCBvZiB0aGUgc3RyZWFtIGxpc3Qgb3IgdGhlIHRlbXBsYXRl
IHRvIHBvaW50IHRvIHRoZQorICAgICAqIHN0cmVhbSB0aGF0IHdlJ3ZlIGp1c3QgYWxsb2NlZCBh
bmQgaW5pdCdlZCwgZGVwZW5kaW5nIG9uIHdoZXRoZXIKKyAgICAgKiBvciBub3QgaXQgaGFzIGEg
d2lsZGNhcmQgU1NSQyB2YWx1ZSBvciBub3QKKyAgICAgKgorICAgICAqIGlmIHRoZSB0ZW1wbGF0
ZSBzdHJlYW0gaGFzIGFscmVhZHkgYmVlbiBzZXQsIHRoZW4gdGhlIHBvbGljeSBpcworICAgICAq
IGluY29uc2lzdGVudCwgc28gd2UgcmV0dXJuIGEgYmFkX3BhcmFtIGVycm9yIGNvZGUKKyAgICAg
Ki8KKyAgICBzd2l0Y2ggKHBvbGljeS0+c3NyYy50eXBlKSB7CisgICAgY2FzZSAoc3NyY19hbnlf
b3V0Ym91bmQpOgorICAgICAgICBpZiAoc2Vzc2lvbi0+c3RyZWFtX3RlbXBsYXRlKSB7CisgICAg
ICAgICAgICBzcnRwX3N0cmVhbV9kZWFsbG9jKHRtcCwgTlVMTCk7CisgICAgICAgICAgICByZXR1
cm4gc3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJhbTsKKyAgICAgICAgfQorICAgICAgICBzZXNzaW9u
LT5zdHJlYW1fdGVtcGxhdGUgPSB0bXA7CisgICAgICAgIHNlc3Npb24tPnN0cmVhbV90ZW1wbGF0
ZS0+ZGlyZWN0aW9uID0gZGlyX3NydHBfc2VuZGVyOworICAgICAgICBicmVhazsKKyAgICBjYXNl
IChzc3JjX2FueV9pbmJvdW5kKToKKyAgICAgICAgaWYgKHNlc3Npb24tPnN0cmVhbV90ZW1wbGF0
ZSkgeworICAgICAgICAgICAgc3J0cF9zdHJlYW1fZGVhbGxvYyh0bXAsIE5VTEwpOworICAgICAg
ICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW07CisgICAgICAgIH0KKyAgICAg
ICAgc2Vzc2lvbi0+c3RyZWFtX3RlbXBsYXRlID0gdG1wOworICAgICAgICBzZXNzaW9uLT5zdHJl
YW1fdGVtcGxhdGUtPmRpcmVjdGlvbiA9IGRpcl9zcnRwX3JlY2VpdmVyOworICAgICAgICBicmVh
azsKKyAgICBjYXNlIChzc3JjX3NwZWNpZmljKToKKyAgICAgICAgdG1wLT5uZXh0ID0gc2Vzc2lv
bi0+c3RyZWFtX2xpc3Q7CisgICAgICAgIHNlc3Npb24tPnN0cmVhbV9saXN0ID0gdG1wOworICAg
ICAgICBicmVhazsKKyAgICBjYXNlIChzc3JjX3VuZGVmaW5lZCk6CisgICAgZGVmYXVsdDoKKyAg
ICAgICAgc3J0cF9zdHJlYW1fZGVhbGxvYyh0bXAsIE5VTEwpOworICAgICAgICByZXR1cm4gc3J0
cF9lcnJfc3RhdHVzX2JhZF9wYXJhbTsKKyAgICB9CiAKLSAgcmV0dXJuIHNydHBfZXJyX3N0YXR1
c19vazsKKyAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQogCitzcnRwX2Vycl9zdGF0
dXNfdCBzcnRwX2NyZWF0ZShzcnRwX3QgKnNlc3Npb24sIC8qIGhhbmRsZSBmb3Igc2Vzc2lvbiAg
ICAgKi8KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHNydHBfcG9saWN5X3Qg
KnBvbGljeSkKK3sgLyogU1JUUCBwb2xpY3kgKGxpc3QpICAgICAqLworICAgIHNydHBfZXJyX3N0
YXR1c190IHN0YXQ7CisgICAgc3J0cF9jdHhfdCAqY3R4OworCisgICAgLyogc2FuaXR5IGNoZWNr
IGFyZ3VtZW50cyAqLworICAgIGlmIChzZXNzaW9uID09IE5VTEwpCisgICAgICAgIHJldHVybiBz
cnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtOwogCi1zcnRwX2Vycl9zdGF0dXNfdAotc3J0cF9hZGRf
c3RyZWFtKHNydHBfdCBzZXNzaW9uLCAKLQkJY29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5KSAg
ewotICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7Ci0gIHNydHBfc3RyZWFtX3QgdG1wOworICAg
IC8qIGFsbG9jYXRlIHNydHAgY29udGV4dCBhbmQgc2V0IGN0eF9wdHIgKi8KKyAgICBjdHggPSAo
c3J0cF9jdHhfdCAqKXNydHBfY3J5cHRvX2FsbG9jKHNpemVvZihzcnRwX2N0eF90KSk7CisgICAg
aWYgKGN0eCA9PSBOVUxMKQorICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2FsbG9jX2Zh
aWw7CisgICAgKnNlc3Npb24gPSBjdHg7CiAKLSAgLyogc2FuaXR5IGNoZWNrIGFyZ3VtZW50cyAq
LwotICBpZiAoKHNlc3Npb24gPT0gTlVMTCkgfHwgKHBvbGljeSA9PSBOVUxMKSB8fCAoIXNydHBf
dmFsaWRhdGVfcG9saWN5X21hc3Rlcl9rZXlzKHBvbGljeSkpKQotICAgIHJldHVybiBzcnRwX2Vy
cl9zdGF0dXNfYmFkX3BhcmFtOworICAgIC8qCisgICAgICogbG9vcCBvdmVyIGVsZW1lbnRzIGlu
IHRoZSBwb2xpY3kgbGlzdCwgYWxsb2NhdGluZyBhbmQKKyAgICAgKiBpbml0aWFsaXppbmcgYSBz
dHJlYW0gZm9yIGVhY2ggZWxlbWVudAorICAgICAqLworICAgIGN0eC0+c3RyZWFtX3RlbXBsYXRl
ID0gTlVMTDsKKyAgICBjdHgtPnN0cmVhbV9saXN0ID0gTlVMTDsKKyAgICBjdHgtPnVzZXJfZGF0
YSA9IE5VTEw7CisgICAgd2hpbGUgKHBvbGljeSAhPSBOVUxMKSB7CisgICAgICAgIHN0YXQgPSBz
cnRwX2FkZF9zdHJlYW0oY3R4LCBwb2xpY3kpOworICAgICAgICBpZiAoc3RhdCkgeworICAgICAg
ICAgICAgLyogY2xlYW4gdXAgZXZlcnl0aGluZyAqLworICAgICAgICAgICAgc3J0cF9kZWFsbG9j
KCpzZXNzaW9uKTsKKyAgICAgICAgICAgICpzZXNzaW9uID0gTlVMTDsKKyAgICAgICAgICAgIHJl
dHVybiBzdGF0OworICAgICAgICB9CiAKLSAgLyogYWxsb2NhdGUgc3RyZWFtICAqLwotICBzdGF0
dXMgPSBzcnRwX3N0cmVhbV9hbGxvYygmdG1wLCBwb2xpY3kpOwotICBpZiAoc3RhdHVzKSB7Ci0g
ICAgcmV0dXJuIHN0YXR1czsKLSAgfQotICAKLSAgLyogaW5pdGlhbGl6ZSBzdHJlYW0gICovCi0g
IHN0YXR1cyA9IHNydHBfc3RyZWFtX2luaXQodG1wLCBwb2xpY3kpOwotICBpZiAoc3RhdHVzKSB7
Ci0gICAgc3J0cF9jcnlwdG9fZnJlZSh0bXApOwotICAgIHJldHVybiBzdGF0dXM7Ci0gIH0KLSAg
Ci0gIC8qIAotICAgKiBzZXQgdGhlIGhlYWQgb2YgdGhlIHN0cmVhbSBsaXN0IG9yIHRoZSB0ZW1w
bGF0ZSB0byBwb2ludCB0byB0aGUKLSAgICogc3RyZWFtIHRoYXQgd2UndmUganVzdCBhbGxvY2Vk
IGFuZCBpbml0J2VkLCBkZXBlbmRpbmcgb24gd2hldGhlcgotICAgKiBvciBub3QgaXQgaGFzIGEg
d2lsZGNhcmQgU1NSQyB2YWx1ZSBvciBub3QKLSAgICoKLSAgICogaWYgdGhlIHRlbXBsYXRlIHN0
cmVhbSBoYXMgYWxyZWFkeSBiZWVuIHNldCwgdGhlbiB0aGUgcG9saWN5IGlzCi0gICAqIGluY29u
c2lzdGVudCwgc28gd2UgcmV0dXJuIGEgYmFkX3BhcmFtIGVycm9yIGNvZGUKLSAgICovCi0gIHN3
aXRjaCAocG9saWN5LT5zc3JjLnR5cGUpIHsKLSAgY2FzZSAoc3NyY19hbnlfb3V0Ym91bmQpOgot
ICAgIGlmIChzZXNzaW9uLT5zdHJlYW1fdGVtcGxhdGUpIHsKLSAgICAgIHJldHVybiBzcnRwX2Vy
cl9zdGF0dXNfYmFkX3BhcmFtOwotICAgIH0KLSAgICBzZXNzaW9uLT5zdHJlYW1fdGVtcGxhdGUg
PSB0bXA7Ci0gICAgc2Vzc2lvbi0+c3RyZWFtX3RlbXBsYXRlLT5kaXJlY3Rpb24gPSBkaXJfc3J0
cF9zZW5kZXI7Ci0gICAgYnJlYWs7Ci0gIGNhc2UgKHNzcmNfYW55X2luYm91bmQpOgotICAgIGlm
IChzZXNzaW9uLT5zdHJlYW1fdGVtcGxhdGUpIHsKLSAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0
dXNfYmFkX3BhcmFtOwotICAgIH0KLSAgICBzZXNzaW9uLT5zdHJlYW1fdGVtcGxhdGUgPSB0bXA7
Ci0gICAgc2Vzc2lvbi0+c3RyZWFtX3RlbXBsYXRlLT5kaXJlY3Rpb24gPSBkaXJfc3J0cF9yZWNl
aXZlcjsKLSAgICBicmVhazsKLSAgY2FzZSAoc3NyY19zcGVjaWZpYyk6Ci0gICAgdG1wLT5uZXh0
ID0gc2Vzc2lvbi0+c3RyZWFtX2xpc3Q7Ci0gICAgc2Vzc2lvbi0+c3RyZWFtX2xpc3QgPSB0bXA7
Ci0gICAgYnJlYWs7Ci0gIGNhc2UgKHNzcmNfdW5kZWZpbmVkKToKLSAgZGVmYXVsdDoKLSAgICBz
cnRwX2NyeXB0b19mcmVlKHRtcCk7Ci0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfcGFy
YW07Ci0gIH0KLSAgICAKLSAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKKyAgICAgICAgLyog
c2V0IHBvbGljeSB0byBuZXh0IGl0ZW0gaW4gbGlzdCAgKi8KKyAgICAgICAgcG9saWN5ID0gcG9s
aWN5LT5uZXh0OworICAgIH0KKworICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAK
K3NydHBfZXJyX3N0YXR1c190IHNydHBfcmVtb3ZlX3N0cmVhbShzcnRwX3Qgc2Vzc2lvbiwgdWlu
dDMyX3Qgc3NyYykKK3sKKyAgICBzcnRwX3N0cmVhbV9jdHhfdCAqc3RyZWFtLCAqbGFzdF9zdHJl
YW07CisgICAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVzOworCisgICAgLyogc2FuaXR5IGNoZWNr
IGFyZ3VtZW50cyAqLworICAgIGlmIChzZXNzaW9uID09IE5VTEwpCisgICAgICAgIHJldHVybiBz
cnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtOworCisgICAgLyogZmluZCBzdHJlYW0gaW4gbGlzdDsg
Y29tcGxhaW4gaWYgbm90IGZvdW5kICovCisgICAgbGFzdF9zdHJlYW0gPSBzdHJlYW0gPSBzZXNz
aW9uLT5zdHJlYW1fbGlzdDsKKyAgICB3aGlsZSAoKHN0cmVhbSAhPSBOVUxMKSAmJiAoc3NyYyAh
PSBzdHJlYW0tPnNzcmMpKSB7CisgICAgICAgIGxhc3Rfc3RyZWFtID0gc3RyZWFtOworICAgICAg
ICBzdHJlYW0gPSBzdHJlYW0tPm5leHQ7CisgICAgfQorICAgIGlmIChzdHJlYW0gPT0gTlVMTCkK
KyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19ub19jdHg7CiAKLXNydHBfZXJyX3N0YXR1
c190Ci1zcnRwX2NyZWF0ZShzcnRwX3QgKnNlc3Npb24sICAgICAgICAgICAgICAgLyogaGFuZGxl
IGZvciBzZXNzaW9uICAgICAqLyAKLQkgICAgY29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5KSB7
IC8qIFNSVFAgcG9saWN5IChsaXN0KSAgICAgKi8KLSAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdDsK
LSAgc3J0cF9jdHhfdCAqY3R4OwotCi0gIC8qIHNhbml0eSBjaGVjayBhcmd1bWVudHMgKi8KLSAg
aWYgKHNlc3Npb24gPT0gTlVMTCkKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJh
bTsKLQotICAvKiBhbGxvY2F0ZSBzcnRwIGNvbnRleHQgYW5kIHNldCBjdHhfcHRyICovCi0gIGN0
eCA9IChzcnRwX2N0eF90ICopIHNydHBfY3J5cHRvX2FsbG9jKHNpemVvZihzcnRwX2N0eF90KSk7
Ci0gIGlmIChjdHggPT0gTlVMTCkKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2FsbG9jX2Zh
aWw7Ci0gICpzZXNzaW9uID0gY3R4OwotCi0gIC8qIAotICAgKiBsb29wIG92ZXIgZWxlbWVudHMg
aW4gdGhlIHBvbGljeSBsaXN0LCBhbGxvY2F0aW5nIGFuZAotICAgKiBpbml0aWFsaXppbmcgYSBz
dHJlYW0gZm9yIGVhY2ggZWxlbWVudAotICAgKi8KLSAgY3R4LT5zdHJlYW1fdGVtcGxhdGUgPSBO
VUxMOwotICBjdHgtPnN0cmVhbV9saXN0ID0gTlVMTDsKLSAgY3R4LT51c2VyX2RhdGEgPSBOVUxM
OwotICB3aGlsZSAocG9saWN5ICE9IE5VTEwpIHsgICAgCi0KLSAgICBzdGF0ID0gc3J0cF9hZGRf
c3RyZWFtKGN0eCwgcG9saWN5KTsKLSAgICBpZiAoc3RhdCkgewotICAgICAgLyogY2xlYW4gdXAg
ZXZlcnl0aGluZyAqLwotICAgICAgc3J0cF9kZWFsbG9jKCpzZXNzaW9uKTsKLSAgICAgICpzZXNz
aW9uID0gTlVMTDsKLSAgICAgIHJldHVybiBzdGF0OwotICAgIH0gICAgCisgICAgLyogcmVtb3Zl
IHN0cmVhbSBmcm9tIHRoZSBsaXN0ICovCisgICAgaWYgKGxhc3Rfc3RyZWFtID09IHN0cmVhbSkK
KyAgICAgICAgLyogc3RyZWFtIHdhcyBmaXJzdCBpbiBsaXN0ICovCisgICAgICAgIHNlc3Npb24t
PnN0cmVhbV9saXN0ID0gc3RyZWFtLT5uZXh0OworICAgIGVsc2UKKyAgICAgICAgbGFzdF9zdHJl
YW0tPm5leHQgPSBzdHJlYW0tPm5leHQ7CiAKLSAgICAvKiBzZXQgcG9saWN5IHRvIG5leHQgaXRl
bSBpbiBsaXN0ICAqLwotICAgIHBvbGljeSA9IHBvbGljeS0+bmV4dDsKLSAgfQorICAgIC8qIGRl
YWxsb2NhdGUgdGhlIHN0cmVhbSAqLworICAgIHN0YXR1cyA9IHNydHBfc3RyZWFtX2RlYWxsb2Mo
c3RyZWFtLCBzZXNzaW9uLT5zdHJlYW1fdGVtcGxhdGUpOworICAgIGlmIChzdGF0dXMpCisgICAg
ICAgIHJldHVybiBzdGF0dXM7CiAKLSAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKKyAgICBy
ZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQogCitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3Vw
ZGF0ZShzcnRwX3Qgc2Vzc2lvbiwgY29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5KQoreworICAg
IHNydHBfZXJyX3N0YXR1c190IHN0YXQ7CiAKLXNydHBfZXJyX3N0YXR1c190Ci1zcnRwX3JlbW92
ZV9zdHJlYW0oc3J0cF90IHNlc3Npb24sIHVpbnQzMl90IHNzcmMpIHsKLSAgc3J0cF9zdHJlYW1f
Y3R4X3QgKnN0cmVhbSwgKmxhc3Rfc3RyZWFtOwotICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7
Ci0KLSAgLyogc2FuaXR5IGNoZWNrIGFyZ3VtZW50cyAqLwotICBpZiAoc2Vzc2lvbiA9PSBOVUxM
KQotICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtOwotICAKLSAgLyogZmluZCBz
dHJlYW0gaW4gbGlzdDsgY29tcGxhaW4gaWYgbm90IGZvdW5kICovCi0gIGxhc3Rfc3RyZWFtID0g
c3RyZWFtID0gc2Vzc2lvbi0+c3RyZWFtX2xpc3Q7Ci0gIHdoaWxlICgoc3RyZWFtICE9IE5VTEwp
ICYmIChzc3JjICE9IHN0cmVhbS0+c3NyYykpIHsKLSAgICBsYXN0X3N0cmVhbSA9IHN0cmVhbTsK
LSAgICBzdHJlYW0gPSBzdHJlYW0tPm5leHQ7Ci0gIH0KLSAgaWYgKHN0cmVhbSA9PSBOVUxMKQot
ICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfbm9fY3R4OwotCi0gIC8qIHJlbW92ZSBzdHJlYW0g
ZnJvbSB0aGUgbGlzdCAqLwotICBpZiAobGFzdF9zdHJlYW0gPT0gc3RyZWFtKQotICAgIC8qIHN0
cmVhbSB3YXMgZmlyc3QgaW4gbGlzdCAqLwotICAgIHNlc3Npb24tPnN0cmVhbV9saXN0ID0gc3Ry
ZWFtLT5uZXh0OwotICBlbHNlCi0gICAgbGFzdF9zdHJlYW0tPm5leHQgPSBzdHJlYW0tPm5leHQ7
Ci0KLSAgLyogZGVhbGxvY2F0ZSB0aGUgc3RyZWFtICovCi0gIHN0YXR1cyA9IHNydHBfc3RyZWFt
X2RlYWxsb2Moc3RyZWFtLCBzZXNzaW9uLT5zdHJlYW1fdGVtcGxhdGUpOwotICBpZiAoc3RhdHVz
KQotICAgIHJldHVybiBzdGF0dXM7CisgICAgLyogc2FuaXR5IGNoZWNrIGFyZ3VtZW50cyAqLwor
ICAgIGlmICgoc2Vzc2lvbiA9PSBOVUxMKSB8fCAocG9saWN5ID09IE5VTEwpIHx8CisgICAgICAg
ICghc3J0cF92YWxpZGF0ZV9wb2xpY3lfbWFzdGVyX2tleXMocG9saWN5KSkpIHsKKyAgICAgICAg
cmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW07CisgICAgfQorCisgICAgd2hpbGUgKHBv
bGljeSAhPSBOVUxMKSB7CisgICAgICAgIHN0YXQgPSBzcnRwX3VwZGF0ZV9zdHJlYW0oc2Vzc2lv
biwgcG9saWN5KTsKKyAgICAgICAgaWYgKHN0YXQpIHsKKyAgICAgICAgICAgIHJldHVybiBzdGF0
OworICAgICAgICB9CiAKLSAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKKyAgICAgICAgLyog
c2V0IHBvbGljeSB0byBuZXh0IGl0ZW0gaW4gbGlzdCAgKi8KKyAgICAgICAgcG9saWN5ID0gcG9s
aWN5LT5uZXh0OworICAgIH0KKyAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQogCitz
dGF0aWMgc3J0cF9lcnJfc3RhdHVzX3QgdXBkYXRlX3RlbXBsYXRlX3N0cmVhbXMoc3J0cF90IHNl
c3Npb24sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Y29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5KQoreworICAgIHNydHBfZXJyX3N0YXR1c190IHN0
YXR1czsKKyAgICBzcnRwX3N0cmVhbV90IG5ld19zdHJlYW1fdGVtcGxhdGU7CisgICAgc3J0cF9z
dHJlYW1fdCBuZXdfc3RyZWFtX2xpc3QgPSBOVUxMOwogCi1zcnRwX2Vycl9zdGF0dXNfdAotc3J0
cF91cGRhdGUoc3J0cF90IHNlc3Npb24sIGNvbnN0IHNydHBfcG9saWN5X3QgKnBvbGljeSkgewot
ICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0OworICAgIGlmIChzZXNzaW9uLT5zdHJlYW1fdGVtcGxh
dGUgPT0gTlVMTCkgeworICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJhbTsK
KyAgICB9CiAKLSAgLyogc2FuaXR5IGNoZWNrIGFyZ3VtZW50cyAqLwotICBpZiAoKHNlc3Npb24g
PT0gTlVMTCkgfHwgKHBvbGljeSA9PSBOVUxMKSB8fCAoIXNydHBfdmFsaWRhdGVfcG9saWN5X21h
c3Rlcl9rZXlzKHBvbGljeSkpKSB7Ci0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfcGFy
YW07Ci0gIH0KKyAgICAvKiBhbGxvY2F0ZSBuZXcgdGVtcGxhdGUgc3RyZWFtICAqLworICAgIHN0
YXR1cyA9IHNydHBfc3RyZWFtX2FsbG9jKCZuZXdfc3RyZWFtX3RlbXBsYXRlLCBwb2xpY3kpOwor
ICAgIGlmIChzdGF0dXMpIHsKKyAgICAgICAgcmV0dXJuIHN0YXR1czsKKyAgICB9CiAKLSAgd2hp
bGUgKHBvbGljeSAhPSBOVUxMKSB7Ci0gICAgc3RhdCA9IHNydHBfdXBkYXRlX3N0cmVhbShzZXNz
aW9uLCBwb2xpY3kpOwotICAgIGlmIChzdGF0KSB7Ci0gICAgICByZXR1cm4gc3RhdDsKKyAgICAv
KiBpbml0aWFsaXplIG5ldyB0ZW1wbGF0ZSBzdHJlYW0gICovCisgICAgc3RhdHVzID0gc3J0cF9z
dHJlYW1faW5pdChuZXdfc3RyZWFtX3RlbXBsYXRlLCBwb2xpY3kpOworICAgIGlmIChzdGF0dXMp
IHsKKyAgICAgICAgc3J0cF9jcnlwdG9fZnJlZShuZXdfc3RyZWFtX3RlbXBsYXRlKTsKKyAgICAg
ICAgcmV0dXJuIHN0YXR1czsKICAgICB9CiAKLSAgICAvKiBzZXQgcG9saWN5IHRvIG5leHQgaXRl
bSBpbiBsaXN0ICAqLwotICAgIHBvbGljeSA9IHBvbGljeS0+bmV4dDsKLSAgfQotICByZXR1cm4g
c3J0cF9lcnJfc3RhdHVzX29rOwotfQorICAgIC8qIGZvciBhbGwgb2xkIHRlbXBsYXRlZCBzdHJl
YW1zICovCisgICAgZm9yICg7OykgeworICAgICAgICBzcnRwX3N0cmVhbV90IHN0cmVhbTsKKyAg
ICAgICAgdWludDMyX3Qgc3NyYzsKKyAgICAgICAgc3J0cF94dGRfc2VxX251bV90IG9sZF9pbmRl
eDsKKyAgICAgICAgc3J0cF9yZGJfdCBvbGRfcnRjcF9yZGI7CisKKyAgICAgICAgc3RyZWFtID0g
c2Vzc2lvbi0+c3RyZWFtX2xpc3Q7CisgICAgICAgIHdoaWxlICgoc3RyZWFtICE9IE5VTEwpICYm
CisgICAgICAgICAgICAgICAoc3RyZWFtLT5zZXNzaW9uX2tleXNbMF0ucnRwX2F1dGggIT0KKyAg
ICAgICAgICAgICAgICBzZXNzaW9uLT5zdHJlYW1fdGVtcGxhdGUtPnNlc3Npb25fa2V5c1swXS5y
dHBfYXV0aCkpIHsKKyAgICAgICAgICAgIHN0cmVhbSA9IHN0cmVhbS0+bmV4dDsKKyAgICAgICAg
fQorICAgICAgICBpZiAoc3RyZWFtID09IE5VTEwpIHsKKyAgICAgICAgICAgIC8qIG5vIG1vcmUg
dGVtcGxhdGVkIHN0cmVhbXMgKi8KKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICB9CiAKKyAg
ICAgICAgLyogc2F2ZSBvbGQgZXh0ZW5kYXJkIHNlcSAqLworICAgICAgICBzc3JjID0gc3RyZWFt
LT5zc3JjOworICAgICAgICBvbGRfaW5kZXggPSBzdHJlYW0tPnJ0cF9yZGJ4LmluZGV4OworICAg
ICAgICBvbGRfcnRjcF9yZGIgPSBzdHJlYW0tPnJ0Y3BfcmRiOwogCi1zdGF0aWMgc3J0cF9lcnJf
c3RhdHVzX3QKLXVwZGF0ZV90ZW1wbGF0ZV9zdHJlYW1zKHNydHBfdCBzZXNzaW9uLCBjb25zdCBz
cnRwX3BvbGljeV90ICpwb2xpY3kpIHsKLSAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVzOwotICBz
cnRwX3N0cmVhbV90IG5ld19zdHJlYW1fdGVtcGxhdGU7Ci0gIHNydHBfc3RyZWFtX3QgbmV3X3N0
cmVhbV9saXN0ID0gTlVMTDsKKyAgICAgICAgLyogcmVtb3ZlIHN0cmVhbSAqLworICAgICAgICBz
dGF0dXMgPSBzcnRwX3JlbW92ZV9zdHJlYW0oc2Vzc2lvbiwgc3NyYyk7CisgICAgICAgIGlmIChz
dGF0dXMpIHsKKyAgICAgICAgICAgIC8qIGZyZWUgbmV3IGFsbG9jYXRpb25zICovCisgICAgICAg
ICAgICB3aGlsZSAobmV3X3N0cmVhbV9saXN0ICE9IE5VTEwpIHsKKyAgICAgICAgICAgICAgICBz
cnRwX3N0cmVhbV90IG5leHQgPSBuZXdfc3RyZWFtX2xpc3QtPm5leHQ7CisgICAgICAgICAgICAg
ICAgc3J0cF9zdHJlYW1fZGVhbGxvYyhuZXdfc3RyZWFtX2xpc3QsIG5ld19zdHJlYW1fdGVtcGxh
dGUpOworICAgICAgICAgICAgICAgIG5ld19zdHJlYW1fbGlzdCA9IG5leHQ7CisgICAgICAgICAg
ICB9CisgICAgICAgICAgICBzcnRwX3N0cmVhbV9kZWFsbG9jKG5ld19zdHJlYW1fdGVtcGxhdGUs
IE5VTEwpOworICAgICAgICAgICAgcmV0dXJuIHN0YXR1czsKKyAgICAgICAgfQogCi0gIGlmIChz
ZXNzaW9uLT5zdHJlYW1fdGVtcGxhdGUgPT0gTlVMTCkgewotICAgIHJldHVybiBzcnRwX2Vycl9z
dGF0dXNfYmFkX3BhcmFtOwotICB9CisgICAgICAgIC8qIGFsbG9jYXRlIGFuZCBpbml0aWFsaXpl
IGEgbmV3IHN0cmVhbSAqLworICAgICAgICBzdGF0dXMgPSBzcnRwX3N0cmVhbV9jbG9uZShuZXdf
c3RyZWFtX3RlbXBsYXRlLCBzc3JjLCAmc3RyZWFtKTsKKyAgICAgICAgaWYgKHN0YXR1cykgewor
ICAgICAgICAgICAgLyogZnJlZSBuZXcgYWxsb2NhdGlvbnMgKi8KKyAgICAgICAgICAgIHdoaWxl
IChuZXdfc3RyZWFtX2xpc3QgIT0gTlVMTCkgeworICAgICAgICAgICAgICAgIHNydHBfc3RyZWFt
X3QgbmV4dCA9IG5ld19zdHJlYW1fbGlzdC0+bmV4dDsKKyAgICAgICAgICAgICAgICBzcnRwX3N0
cmVhbV9kZWFsbG9jKG5ld19zdHJlYW1fbGlzdCwgbmV3X3N0cmVhbV90ZW1wbGF0ZSk7CisgICAg
ICAgICAgICAgICAgbmV3X3N0cmVhbV9saXN0ID0gbmV4dDsKKyAgICAgICAgICAgIH0KKyAgICAg
ICAgICAgIHNydHBfc3RyZWFtX2RlYWxsb2MobmV3X3N0cmVhbV90ZW1wbGF0ZSwgTlVMTCk7Cisg
ICAgICAgICAgICByZXR1cm4gc3RhdHVzOworICAgICAgICB9CiAKLSAgLyogYWxsb2NhdGUgbmV3
IHRlbXBsYXRlIHN0cmVhbSAgKi8KLSAgc3RhdHVzID0gc3J0cF9zdHJlYW1fYWxsb2MoJm5ld19z
dHJlYW1fdGVtcGxhdGUsIHBvbGljeSk7Ci0gIGlmIChzdGF0dXMpIHsKLSAgICByZXR1cm4gc3Rh
dHVzOwotICB9CisgICAgICAgIC8qIGFkZCBuZXcgc3RyZWFtIHRvIHRoZSBoZWFkIG9mIHRoZSBu
ZXdfc3RyZWFtX2xpc3QgKi8KKyAgICAgICAgc3RyZWFtLT5uZXh0ID0gbmV3X3N0cmVhbV9saXN0
OworICAgICAgICBuZXdfc3RyZWFtX2xpc3QgPSBzdHJlYW07CiAKLSAgLyogaW5pdGlhbGl6ZSBu
ZXcgdGVtcGxhdGUgc3RyZWFtICAqLwotICBzdGF0dXMgPSBzcnRwX3N0cmVhbV9pbml0KG5ld19z
dHJlYW1fdGVtcGxhdGUsIHBvbGljeSk7Ci0gIGlmIChzdGF0dXMpIHsKLSAgICBzcnRwX2NyeXB0
b19mcmVlKG5ld19zdHJlYW1fdGVtcGxhdGUpOworICAgICAgICAvKiByZXN0b3JlIG9sZCBleHRl
bmRlZCBzZXEgKi8KKyAgICAgICAgc3RyZWFtLT5ydHBfcmRieC5pbmRleCA9IG9sZF9pbmRleDsK
KyAgICAgICAgc3RyZWFtLT5ydGNwX3JkYiA9IG9sZF9ydGNwX3JkYjsKKyAgICB9CisgICAgLyog
ZGVhbGxvYyBvbGQgdGVtcGxhdGUgKi8KKyAgICBzcnRwX3N0cmVhbV9kZWFsbG9jKHNlc3Npb24t
PnN0cmVhbV90ZW1wbGF0ZSwgTlVMTCk7CisgICAgLyogc2V0IG5ldyB0ZW1wbGF0ZSAqLworICAg
IHNlc3Npb24tPnN0cmVhbV90ZW1wbGF0ZSA9IG5ld19zdHJlYW1fdGVtcGxhdGU7CisgICAgLyog
YWRkIG5ldyBsaXN0ICovCisgICAgaWYgKG5ld19zdHJlYW1fbGlzdCkgeworICAgICAgICBzcnRw
X3N0cmVhbV90IHRhaWwgPSBuZXdfc3RyZWFtX2xpc3Q7CisgICAgICAgIHdoaWxlICh0YWlsLT5u
ZXh0KSB7CisgICAgICAgICAgICB0YWlsID0gdGFpbC0+bmV4dDsKKyAgICAgICAgfQorICAgICAg
ICB0YWlsLT5uZXh0ID0gc2Vzc2lvbi0+c3RyZWFtX2xpc3Q7CisgICAgICAgIHNlc3Npb24tPnN0
cmVhbV9saXN0ID0gbmV3X3N0cmVhbV9saXN0OworICAgIH0KICAgICByZXR1cm4gc3RhdHVzOwot
ICB9Cit9CiAKLSAgLyogZm9yIGFsbCBvbGQgdGVtcGxhdGVkIHN0cmVhbXMgKi8KLSAgZm9yICg7
OykgewotICAgIHNydHBfc3RyZWFtX3Qgc3RyZWFtOwotICAgIHVpbnQzMl90IHNzcmM7CitzdGF0
aWMgc3J0cF9lcnJfc3RhdHVzX3QgdXBkYXRlX3N0cmVhbShzcnRwX3Qgc2Vzc2lvbiwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHNydHBfcG9saWN5X3QgKnBv
bGljeSkKK3sKKyAgICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7CiAgICAgc3J0cF94dGRfc2Vx
X251bV90IG9sZF9pbmRleDsKICAgICBzcnRwX3JkYl90IG9sZF9ydGNwX3JkYjsKKyAgICBzcnRw
X3N0cmVhbV90IHN0cmVhbTsKIAotICAgIHN0cmVhbSA9IHNlc3Npb24tPnN0cmVhbV9saXN0Owot
ICAgIHdoaWxlICgoc3RyZWFtICE9IE5VTEwpICYmCi0gICAgICAgICAgIChzdHJlYW0tPnNlc3Np
b25fa2V5c1swXS5ydHBfYXV0aCAhPQotICAgICAgICAgICAgc2Vzc2lvbi0+c3RyZWFtX3RlbXBs
YXRlLT5zZXNzaW9uX2tleXNbMF0ucnRwX2F1dGgpKSB7Ci0gICAgICBzdHJlYW0gPSBzdHJlYW0t
Pm5leHQ7Ci0gICAgfQorICAgIHN0cmVhbSA9IHNydHBfZ2V0X3N0cmVhbShzZXNzaW9uLCBodG9u
bChwb2xpY3ktPnNzcmMudmFsdWUpKTsKICAgICBpZiAoc3RyZWFtID09IE5VTEwpIHsKLSAgICAg
IC8qIG5vIG1vcmUgdGVtcGxhdGVkIHN0cmVhbXMgKi8KLSAgICAgIGJyZWFrOworICAgICAgICBy
ZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJhbTsKICAgICB9CiAKICAgICAvKiBzYXZlIG9s
ZCBleHRlbmRhcmQgc2VxICovCi0gICAgc3NyYyA9IHN0cmVhbS0+c3NyYzsKICAgICBvbGRfaW5k
ZXggPSBzdHJlYW0tPnJ0cF9yZGJ4LmluZGV4OwogICAgIG9sZF9ydGNwX3JkYiA9IHN0cmVhbS0+
cnRjcF9yZGI7CiAKLSAgICAvKiByZW1vdmUgc3RyZWFtICovCi0gICAgc3RhdHVzID0gc3J0cF9y
ZW1vdmVfc3RyZWFtKHNlc3Npb24sIHNzcmMpOworICAgIHN0YXR1cyA9IHNydHBfcmVtb3ZlX3N0
cmVhbShzZXNzaW9uLCBodG9ubChwb2xpY3ktPnNzcmMudmFsdWUpKTsKICAgICBpZiAoc3RhdHVz
KSB7Ci0gICAgICAvKiBmcmVlIG5ldyBhbGxvY2F0aW9ucyAqLwotICAgICAgd2hpbGUgKG5ld19z
dHJlYW1fbGlzdCAhPSBOVUxMKSB7Ci0gICAgICAgIHNydHBfc3RyZWFtX3QgbmV4dCA9IG5ld19z
dHJlYW1fbGlzdC0+bmV4dDsKLSAgICAgICAgc3J0cF9zdHJlYW1fZGVhbGxvYyhuZXdfc3RyZWFt
X2xpc3QsIG5ld19zdHJlYW1fdGVtcGxhdGUpOwotICAgICAgICBuZXdfc3RyZWFtX2xpc3QgPSBu
ZXh0OwotICAgICAgfQotICAgICAgc3J0cF9zdHJlYW1fZGVhbGxvYyhuZXdfc3RyZWFtX3RlbXBs
YXRlLCBOVUxMKTsKLSAgICAgIHJldHVybiBzdGF0dXM7Ci0gICAgfQotCi0gICAgLyogYWxsb2Nh
dGUgYW5kIGluaXRpYWxpemUgYSBuZXcgc3RyZWFtICovCi0gICAgc3RhdHVzID0gc3J0cF9zdHJl
YW1fY2xvbmUobmV3X3N0cmVhbV90ZW1wbGF0ZSwgc3NyYywgJnN0cmVhbSk7CisgICAgICAgIHJl
dHVybiBzdGF0dXM7CisgICAgfQorCisgICAgc3RhdHVzID0gc3J0cF9hZGRfc3RyZWFtKHNlc3Np
b24sIHBvbGljeSk7CiAgICAgaWYgKHN0YXR1cykgewotICAgICAgLyogZnJlZSBuZXcgYWxsb2Nh
dGlvbnMgKi8KLSAgICAgIHdoaWxlIChuZXdfc3RyZWFtX2xpc3QgIT0gTlVMTCkgewotICAgICAg
ICBzcnRwX3N0cmVhbV90IG5leHQgPSBuZXdfc3RyZWFtX2xpc3QtPm5leHQ7Ci0gICAgICAgIHNy
dHBfc3RyZWFtX2RlYWxsb2MobmV3X3N0cmVhbV9saXN0LCBuZXdfc3RyZWFtX3RlbXBsYXRlKTsK
LSAgICAgICAgbmV3X3N0cmVhbV9saXN0ID0gbmV4dDsKLSAgICAgIH0KLSAgICAgIHNydHBfc3Ry
ZWFtX2RlYWxsb2MobmV3X3N0cmVhbV90ZW1wbGF0ZSwgTlVMTCk7Ci0gICAgICByZXR1cm4gc3Rh
dHVzOworICAgICAgICByZXR1cm4gc3RhdHVzOwogICAgIH0KIAotICAgIC8qIGFkZCBuZXcgc3Ry
ZWFtIHRvIHRoZSBoZWFkIG9mIHRoZSBuZXdfc3RyZWFtX2xpc3QgKi8KLSAgICBzdHJlYW0tPm5l
eHQgPSBuZXdfc3RyZWFtX2xpc3Q7Ci0gICAgbmV3X3N0cmVhbV9saXN0ID0gc3RyZWFtOworICAg
IHN0cmVhbSA9IHNydHBfZ2V0X3N0cmVhbShzZXNzaW9uLCBodG9ubChwb2xpY3ktPnNzcmMudmFs
dWUpKTsKKyAgICBpZiAoc3RyZWFtID09IE5VTEwpIHsKKyAgICAgICAgcmV0dXJuIHNydHBfZXJy
X3N0YXR1c19mYWlsOworICAgIH0KIAogICAgIC8qIHJlc3RvcmUgb2xkIGV4dGVuZGVkIHNlcSAq
LwogICAgIHN0cmVhbS0+cnRwX3JkYnguaW5kZXggPSBvbGRfaW5kZXg7CiAgICAgc3RyZWFtLT5y
dGNwX3JkYiA9IG9sZF9ydGNwX3JkYjsKLSAgfQotICAvKiBkZWFsbG9jIG9sZCB0ZW1wbGF0ZSAq
LwotICBzcnRwX3N0cmVhbV9kZWFsbG9jKHNlc3Npb24tPnN0cmVhbV90ZW1wbGF0ZSwgTlVMTCk7
Ci0gIC8qIHNldCBuZXcgdGVtcGxhdGUgKi8KLSAgc2Vzc2lvbi0+c3RyZWFtX3RlbXBsYXRlID0g
bmV3X3N0cmVhbV90ZW1wbGF0ZTsKLSAgLyogYWRkIG5ldyBsaXN0ICovCi0gIGlmIChuZXdfc3Ry
ZWFtX2xpc3QpIHsKLSAgICBzcnRwX3N0cmVhbV90IHRhaWwgPSBuZXdfc3RyZWFtX2xpc3Q7Ci0g
ICAgd2hpbGUgKHRhaWwtPm5leHQpIHsKLSAgICAgIHRhaWwgPSB0YWlsLT5uZXh0OwotICAgIH0K
LSAgICB0YWlsLT5uZXh0ID0gc2Vzc2lvbi0+c3RyZWFtX2xpc3Q7Ci0gICAgc2Vzc2lvbi0+c3Ry
ZWFtX2xpc3QgPSBuZXdfc3RyZWFtX2xpc3Q7Ci0gIH0KLSAgcmV0dXJuIHN0YXR1czsKLX0KIAor
ICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7Cit9CiAKLXN0YXRpYyBzcnRwX2Vycl9zdGF0
dXNfdAotdXBkYXRlX3N0cmVhbShzcnRwX3Qgc2Vzc2lvbiwgY29uc3Qgc3J0cF9wb2xpY3lfdCAq
cG9saWN5KSB7Ci0gIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKLSAgc3J0cF94dGRfc2VxX251
bV90IG9sZF9pbmRleDsKLSAgc3J0cF9yZGJfdCBvbGRfcnRjcF9yZGI7Ci0gIHNydHBfc3RyZWFt
X3Qgc3RyZWFtOwotCi0gIHN0cmVhbSA9IHNydHBfZ2V0X3N0cmVhbShzZXNzaW9uLCBodG9ubChw
b2xpY3ktPnNzcmMudmFsdWUpKTsKLSAgaWYgKHN0cmVhbSA9PSBOVUxMKSB7Ci0gICAgcmV0dXJu
IHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW07Ci0gIH0KK3NydHBfZXJyX3N0YXR1c190IHNydHBf
dXBkYXRlX3N0cmVhbShzcnRwX3Qgc2Vzc2lvbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3kpCit7CisgICAgc3J0cF9lcnJf
c3RhdHVzX3Qgc3RhdHVzOwogCi0gIC8qIHNhdmUgb2xkIGV4dGVuZGFyZCBzZXEgKi8KLSAgb2xk
X2luZGV4ID0gc3RyZWFtLT5ydHBfcmRieC5pbmRleDsKLSAgb2xkX3J0Y3BfcmRiID0gc3RyZWFt
LT5ydGNwX3JkYjsKKyAgICAvKiBzYW5pdHkgY2hlY2sgYXJndW1lbnRzICovCisgICAgaWYgKChz
ZXNzaW9uID09IE5VTEwpIHx8IChwb2xpY3kgPT0gTlVMTCkgfHwKKyAgICAgICAgKCFzcnRwX3Zh
bGlkYXRlX3BvbGljeV9tYXN0ZXJfa2V5cyhwb2xpY3kpKSkKKyAgICAgICAgcmV0dXJuIHNydHBf
ZXJyX3N0YXR1c19iYWRfcGFyYW07CiAKLSAgc3RhdHVzID0gc3J0cF9yZW1vdmVfc3RyZWFtKHNl
c3Npb24sIGh0b25sKHBvbGljeS0+c3NyYy52YWx1ZSkpOwotICBpZiAoc3RhdHVzKSB7Ci0gICAg
cmV0dXJuIHN0YXR1czsKLSAgfQorICAgIHN3aXRjaCAocG9saWN5LT5zc3JjLnR5cGUpIHsKKyAg
ICBjYXNlIChzc3JjX2FueV9vdXRib3VuZCk6CisgICAgY2FzZSAoc3NyY19hbnlfaW5ib3VuZCk6
CisgICAgICAgIHN0YXR1cyA9IHVwZGF0ZV90ZW1wbGF0ZV9zdHJlYW1zKHNlc3Npb24sIHBvbGlj
eSk7CisgICAgICAgIGJyZWFrOworICAgIGNhc2UgKHNzcmNfc3BlY2lmaWMpOgorICAgICAgICBz
dGF0dXMgPSB1cGRhdGVfc3RyZWFtKHNlc3Npb24sIHBvbGljeSk7CisgICAgICAgIGJyZWFrOwor
ICAgIGNhc2UgKHNzcmNfdW5kZWZpbmVkKToKKyAgICBkZWZhdWx0OgorICAgICAgICByZXR1cm4g
c3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJhbTsKKyAgICB9CiAKLSAgc3RhdHVzID0gc3J0cF9hZGRf
c3RyZWFtKHNlc3Npb24sIHBvbGljeSk7Ci0gIGlmIChzdGF0dXMpIHsKICAgICByZXR1cm4gc3Rh
dHVzOwotICB9Ci0KLSAgc3RyZWFtID0gc3J0cF9nZXRfc3RyZWFtKHNlc3Npb24sIGh0b25sKHBv
bGljeS0+c3NyYy52YWx1ZSkpOwotICBpZiAoc3RyZWFtID09IE5VTEwpIHsKLSAgICByZXR1cm4g
c3J0cF9lcnJfc3RhdHVzX2ZhaWw7Ci0gIH0KLQotICAvKiByZXN0b3JlIG9sZCBleHRlbmRlZCBz
ZXEgKi8KLSAgc3RyZWFtLT5ydHBfcmRieC5pbmRleCA9IG9sZF9pbmRleDsKLSAgc3RyZWFtLT5y
dGNwX3JkYiA9IG9sZF9ydGNwX3JkYjsKLQotICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwot
fQotCi0KLXNydHBfZXJyX3N0YXR1c190Ci1zcnRwX3VwZGF0ZV9zdHJlYW0oc3J0cF90IHNlc3Np
b24sIGNvbnN0IHNydHBfcG9saWN5X3QgKnBvbGljeSkgewotICBzcnRwX2Vycl9zdGF0dXNfdCBz
dGF0dXM7Ci0KLSAgLyogc2FuaXR5IGNoZWNrIGFyZ3VtZW50cyAqLwotICBpZiAoKHNlc3Npb24g
PT0gTlVMTCkgfHwgKHBvbGljeSA9PSBOVUxMKSB8fCAoIXNydHBfdmFsaWRhdGVfcG9saWN5X21h
c3Rlcl9rZXlzKHBvbGljeSkpKQotICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFt
OwotCi0gIHN3aXRjaCAocG9saWN5LT5zc3JjLnR5cGUpIHsKLSAgY2FzZSAoc3NyY19hbnlfb3V0
Ym91bmQpOgotICBjYXNlIChzc3JjX2FueV9pbmJvdW5kKToKLSAgICBzdGF0dXMgPSB1cGRhdGVf
dGVtcGxhdGVfc3RyZWFtcyhzZXNzaW9uLCBwb2xpY3kpOwotICAgIGJyZWFrOwotICBjYXNlIChz
c3JjX3NwZWNpZmljKToKLSAgICBzdGF0dXMgPSB1cGRhdGVfc3RyZWFtKHNlc3Npb24sIHBvbGlj
eSk7Ci0gICAgYnJlYWs7Ci0gIGNhc2UgKHNzcmNfdW5kZWZpbmVkKToKLSAgZGVmYXVsdDoKLSAg
ICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJhbTsKLSAgfQotCi0gIHJldHVybiBzdGF0
dXM7CiB9CiAKLQogLyoKICAqIFRoZSBkZWZhdWx0IHBvbGljeSAtIHByb3ZpZGVzIGEgY29udmVu
aWVudCB3YXkgZm9yIGNhbGxlcnMgdG8gdXNlCiAgKiB0aGUgZGVmYXVsdCBzZWN1cml0eSBwb2xp
Y3kKQEAgLTMxMjEsMjgzICszMTUzLDI2NCBAQCBzcnRwX3VwZGF0ZV9zdHJlYW0oc3J0cF90IHNl
c3Npb24sIGNvbnN0IHNydHBfcG9saWN5X3QgKnBvbGljeSkgewogICoKICAqLwogCi0vKiAKKy8q
CiAgKiBOT1RFOiBjaXBoZXJfa2V5X2xlbiBpcyByZWFsbHkga2V5IGxlbiAoMTI4IGJpdHMpIHBs
dXMgc2FsdCBsZW4KICAqICAoMTEyIGJpdHMpCiAgKi8KIC8qIFRoZXJlIGFyZSBoYXJkLWNvZGVk
IDE2J3MgZm9yIGJhc2Vfa2V5X2xlbiBpbiB0aGUga2V5IGdlbmVyYXRpb24gY29kZSAqLwogCi12
b2lkCi1zcnRwX2NyeXB0b19wb2xpY3lfc2V0X3J0cF9kZWZhdWx0KHNydHBfY3J5cHRvX3BvbGlj
eV90ICpwKSB7Ci0KLSAgcC0+Y2lwaGVyX3R5cGUgICAgID0gU1JUUF9BRVNfSUNNXzEyODsKLSAg
cC0+Y2lwaGVyX2tleV9sZW4gID0gU1JUUF9BRVNfSUNNXzEyOF9LRVlfTEVOX1dTQUxUOyAvKiBk
ZWZhdWx0IDEyOCBiaXRzIHBlciBSRkMgMzcxMSAqLwotICBwLT5hdXRoX3R5cGUgICAgICAgPSBT
UlRQX0hNQUNfU0hBMTsgICAgICAgICAgICAgCi0gIHAtPmF1dGhfa2V5X2xlbiAgICA9IDIwOyAg
ICAgICAgICAgICAgICAvKiBkZWZhdWx0IDE2MCBiaXRzIHBlciBSRkMgMzcxMSAqLwotICBwLT5h
dXRoX3RhZ19sZW4gICAgPSAxMDsgICAgICAgICAgICAgICAgLyogZGVmYXVsdCA4MCBiaXRzIHBl
ciBSRkMgMzcxMSAqLwotICBwLT5zZWNfc2VydiAgICAgICAgPSBzZWNfc2Vydl9jb25mX2FuZF9h
dXRoOwotICAKLX0KLQotdm9pZAotc3J0cF9jcnlwdG9fcG9saWN5X3NldF9ydGNwX2RlZmF1bHQo
c3J0cF9jcnlwdG9fcG9saWN5X3QgKnApIHsKLQotICBwLT5jaXBoZXJfdHlwZSAgICAgPSBTUlRQ
X0FFU19JQ01fMTI4OwotICBwLT5jaXBoZXJfa2V5X2xlbiAgPSBTUlRQX0FFU19JQ01fMTI4X0tF
WV9MRU5fV1NBTFQ7IC8qIGRlZmF1bHQgMTI4IGJpdHMgcGVyIFJGQyAzNzExICovCi0gIHAtPmF1
dGhfdHlwZSAgICAgICA9IFNSVFBfSE1BQ19TSEExOyAgICAgICAgICAgICAKLSAgcC0+YXV0aF9r
ZXlfbGVuICAgID0gMjA7ICAgICAgICAgICAgICAgICAvKiBkZWZhdWx0IDE2MCBiaXRzIHBlciBS
RkMgMzcxMSAqLwotICBwLT5hdXRoX3RhZ19sZW4gICAgPSAxMDsgICAgICAgICAgICAgICAgIC8q
IGRlZmF1bHQgODAgYml0cyBwZXIgUkZDIDM3MTEgKi8KLSAgcC0+c2VjX3NlcnYgICAgICAgID0g
c2VjX3NlcnZfY29uZl9hbmRfYXV0aDsKLSAgCit2b2lkIHNydHBfY3J5cHRvX3BvbGljeV9zZXRf
cnRwX2RlZmF1bHQoc3J0cF9jcnlwdG9fcG9saWN5X3QgKnApCit7CisgICAgcC0+Y2lwaGVyX3R5
cGUgPSBTUlRQX0FFU19JQ01fMTI4OworICAgIHAtPmNpcGhlcl9rZXlfbGVuID0KKyAgICAgICAg
U1JUUF9BRVNfSUNNXzEyOF9LRVlfTEVOX1dTQUxUOyAvKiBkZWZhdWx0IDEyOCBiaXRzIHBlciBS
RkMgMzcxMSAqLworICAgIHAtPmF1dGhfdHlwZSA9IFNSVFBfSE1BQ19TSEExOworICAgIHAtPmF1
dGhfa2V5X2xlbiA9IDIwOyAvKiBkZWZhdWx0IDE2MCBiaXRzIHBlciBSRkMgMzcxMSAqLworICAg
IHAtPmF1dGhfdGFnX2xlbiA9IDEwOyAvKiBkZWZhdWx0IDgwIGJpdHMgcGVyIFJGQyAzNzExICov
CisgICAgcC0+c2VjX3NlcnYgPSBzZWNfc2Vydl9jb25mX2FuZF9hdXRoOwogfQogCi12b2lkCi1z
cnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19jbV8xMjhfaG1hY19zaGExXzMyKHNydHBfY3J5cHRv
X3BvbGljeV90ICpwKSB7Ci0KLSAgLyoKLSAgICogY29ycmVzcG9uZHMgdG8gUkZDIDQ1NjgKLSAg
ICoKLSAgICogbm90ZSB0aGF0IHRoaXMgY3J5cHRvIHBvbGljeSBpcyBpbnRlbmRlZCBmb3IgU1JU
UCwgYnV0IG5vdCBTUlRDUAotICAgKi8KLQotICBwLT5jaXBoZXJfdHlwZSAgICAgPSBTUlRQX0FF
U19JQ01fMTI4OwotICBwLT5jaXBoZXJfa2V5X2xlbiAgPSBTUlRQX0FFU19JQ01fMTI4X0tFWV9M
RU5fV1NBTFQ7IC8qIDEyOCBiaXQga2V5LCAxMTIgYml0IHNhbHQgKi8KLSAgcC0+YXV0aF90eXBl
ICAgICAgID0gU1JUUF9ITUFDX1NIQTE7ICAgICAgICAgICAgIAotICBwLT5hdXRoX2tleV9sZW4g
ICAgPSAyMDsgICAgICAgICAgICAgICAgLyogMTYwIGJpdCBrZXkgICAgICAgICAgICAgICAqLwot
ICBwLT5hdXRoX3RhZ19sZW4gICAgPSA0OyAgICAgICAgICAgICAgICAgLyogMzIgYml0IHRhZyAg
ICAgICAgICAgICAgICAqLwotICBwLT5zZWNfc2VydiAgICAgICAgPSBzZWNfc2Vydl9jb25mX2Fu
ZF9hdXRoOwotICAKK3ZvaWQgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9ydGNwX2RlZmF1bHQoc3J0
cF9jcnlwdG9fcG9saWN5X3QgKnApCit7CisgICAgcC0+Y2lwaGVyX3R5cGUgPSBTUlRQX0FFU19J
Q01fMTI4OworICAgIHAtPmNpcGhlcl9rZXlfbGVuID0KKyAgICAgICAgU1JUUF9BRVNfSUNNXzEy
OF9LRVlfTEVOX1dTQUxUOyAvKiBkZWZhdWx0IDEyOCBiaXRzIHBlciBSRkMgMzcxMSAqLworICAg
IHAtPmF1dGhfdHlwZSA9IFNSVFBfSE1BQ19TSEExOworICAgIHAtPmF1dGhfa2V5X2xlbiA9IDIw
OyAvKiBkZWZhdWx0IDE2MCBiaXRzIHBlciBSRkMgMzcxMSAqLworICAgIHAtPmF1dGhfdGFnX2xl
biA9IDEwOyAvKiBkZWZhdWx0IDgwIGJpdHMgcGVyIFJGQyAzNzExICovCisgICAgcC0+c2VjX3Nl
cnYgPSBzZWNfc2Vydl9jb25mX2FuZF9hdXRoOwogfQogCit2b2lkIHNydHBfY3J5cHRvX3BvbGlj
eV9zZXRfYWVzX2NtXzEyOF9obWFjX3NoYTFfMzIoc3J0cF9jcnlwdG9fcG9saWN5X3QgKnApCit7
CisgICAgLyoKKyAgICAgKiBjb3JyZXNwb25kcyB0byBSRkMgNDU2OAorICAgICAqCisgICAgICog
bm90ZSB0aGF0IHRoaXMgY3J5cHRvIHBvbGljeSBpcyBpbnRlbmRlZCBmb3IgU1JUUCwgYnV0IG5v
dCBTUlRDUAorICAgICAqLwogCi12b2lkCi1zcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19jbV8x
MjhfbnVsbF9hdXRoKHNydHBfY3J5cHRvX3BvbGljeV90ICpwKSB7Ci0KLSAgLyoKLSAgICogY29y
cmVzcG9uZHMgdG8gUkZDIDQ1NjgKLSAgICoKLSAgICogbm90ZSB0aGF0IHRoaXMgY3J5cHRvIHBv
bGljeSBpcyBpbnRlbmRlZCBmb3IgU1JUUCwgYnV0IG5vdCBTUlRDUAotICAgKi8KLQotICBwLT5j
aXBoZXJfdHlwZSAgICAgPSBTUlRQX0FFU19JQ01fMTI4OwotICBwLT5jaXBoZXJfa2V5X2xlbiAg
PSBTUlRQX0FFU19JQ01fMTI4X0tFWV9MRU5fV1NBTFQ7IC8qIDEyOCBiaXQga2V5LCAxMTIgYml0
IHNhbHQgKi8KLSAgcC0+YXV0aF90eXBlICAgICAgID0gU1JUUF9OVUxMX0FVVEg7ICAgICAgICAg
ICAgIAotICBwLT5hdXRoX2tleV9sZW4gICAgPSAwOyAKLSAgcC0+YXV0aF90YWdfbGVuICAgID0g
MDsgCi0gIHAtPnNlY19zZXJ2ICAgICAgICA9IHNlY19zZXJ2X2NvbmY7Ci0gIAorICAgIHAtPmNp
cGhlcl90eXBlID0gU1JUUF9BRVNfSUNNXzEyODsKKyAgICBwLT5jaXBoZXJfa2V5X2xlbiA9Cisg
ICAgICAgIFNSVFBfQUVTX0lDTV8xMjhfS0VZX0xFTl9XU0FMVDsgLyogMTI4IGJpdCBrZXksIDEx
MiBiaXQgc2FsdCAqLworICAgIHAtPmF1dGhfdHlwZSA9IFNSVFBfSE1BQ19TSEExOworICAgIHAt
PmF1dGhfa2V5X2xlbiA9IDIwOyAvKiAxNjAgYml0IGtleSAgICAgICAgICAgICAgICovCisgICAg
cC0+YXV0aF90YWdfbGVuID0gNDsgIC8qIDMyIGJpdCB0YWcgICAgICAgICAgICAgICAgKi8KKyAg
ICBwLT5zZWNfc2VydiA9IHNlY19zZXJ2X2NvbmZfYW5kX2F1dGg7CiB9CiAKK3ZvaWQgc3J0cF9j
cnlwdG9fcG9saWN5X3NldF9hZXNfY21fMTI4X251bGxfYXV0aChzcnRwX2NyeXB0b19wb2xpY3lf
dCAqcCkKK3sKKyAgICAvKgorICAgICAqIGNvcnJlc3BvbmRzIHRvIFJGQyA0NTY4CisgICAgICoK
KyAgICAgKiBub3RlIHRoYXQgdGhpcyBjcnlwdG8gcG9saWN5IGlzIGludGVuZGVkIGZvciBTUlRQ
LCBidXQgbm90IFNSVENQCisgICAgICovCiAKLXZvaWQKLXNydHBfY3J5cHRvX3BvbGljeV9zZXRf
bnVsbF9jaXBoZXJfaG1hY19zaGExXzgwKHNydHBfY3J5cHRvX3BvbGljeV90ICpwKSB7Ci0KLSAg
LyoKLSAgICogY29ycmVzcG9uZHMgdG8gUkZDIDQ1NjgKLSAgICovCi0KLSAgcC0+Y2lwaGVyX3R5
cGUgICAgID0gU1JUUF9OVUxMX0NJUEhFUjsgICAgICAgICAgIAotICBwLT5jaXBoZXJfa2V5X2xl
biAgPSAwOwotICBwLT5hdXRoX3R5cGUgICAgICAgPSBTUlRQX0hNQUNfU0hBMTsgICAgICAgICAg
ICAgCi0gIHAtPmF1dGhfa2V5X2xlbiAgICA9IDIwOyAKLSAgcC0+YXV0aF90YWdfbGVuICAgID0g
MTA7IAotICBwLT5zZWNfc2VydiAgICAgICAgPSBzZWNfc2Vydl9hdXRoOwotICAKKyAgICBwLT5j
aXBoZXJfdHlwZSA9IFNSVFBfQUVTX0lDTV8xMjg7CisgICAgcC0+Y2lwaGVyX2tleV9sZW4gPQor
ICAgICAgICBTUlRQX0FFU19JQ01fMTI4X0tFWV9MRU5fV1NBTFQ7IC8qIDEyOCBiaXQga2V5LCAx
MTIgYml0IHNhbHQgKi8KKyAgICBwLT5hdXRoX3R5cGUgPSBTUlRQX05VTExfQVVUSDsKKyAgICBw
LT5hdXRoX2tleV9sZW4gPSAwOworICAgIHAtPmF1dGhfdGFnX2xlbiA9IDA7CisgICAgcC0+c2Vj
X3NlcnYgPSBzZWNfc2Vydl9jb25mOwogfQogCi12b2lkCi1zcnRwX2NyeXB0b19wb2xpY3lfc2V0
X251bGxfY2lwaGVyX2htYWNfbnVsbChzcnRwX2NyeXB0b19wb2xpY3lfdCAqcCkgewotCi0gIC8q
Ci0gICAqIFNob3VsZCBvbmx5IGJlIHVzZWQgZm9yIHRlc3RpbmcKLSAgICovCit2b2lkIHNydHBf
Y3J5cHRvX3BvbGljeV9zZXRfbnVsbF9jaXBoZXJfaG1hY19zaGExXzgwKHNydHBfY3J5cHRvX3Bv
bGljeV90ICpwKQoreworICAgIC8qCisgICAgICogY29ycmVzcG9uZHMgdG8gUkZDIDQ1NjgKKyAg
ICAgKi8KIAotICBwLT5jaXBoZXJfdHlwZSAgICAgPSBTUlRQX05VTExfQ0lQSEVSOyAgICAgICAg
ICAgCi0gIHAtPmNpcGhlcl9rZXlfbGVuICA9IDA7Ci0gIHAtPmF1dGhfdHlwZSAgICAgICA9IFNS
VFBfTlVMTF9BVVRIOyAgICAgICAgICAgICAKLSAgcC0+YXV0aF9rZXlfbGVuICAgID0gMDsgCi0g
IHAtPmF1dGhfdGFnX2xlbiAgICA9IDA7IAotICBwLT5zZWNfc2VydiAgICAgICAgPSBzZWNfc2Vy
dl9ub25lOwotICAKKyAgICBwLT5jaXBoZXJfdHlwZSA9IFNSVFBfTlVMTF9DSVBIRVI7CisgICAg
cC0+Y2lwaGVyX2tleV9sZW4gPSAwOworICAgIHAtPmF1dGhfdHlwZSA9IFNSVFBfSE1BQ19TSEEx
OworICAgIHAtPmF1dGhfa2V5X2xlbiA9IDIwOworICAgIHAtPmF1dGhfdGFnX2xlbiA9IDEwOwor
ICAgIHAtPnNlY19zZXJ2ID0gc2VjX3NlcnZfYXV0aDsKIH0KIAordm9pZCBzcnRwX2NyeXB0b19w
b2xpY3lfc2V0X251bGxfY2lwaGVyX2htYWNfbnVsbChzcnRwX2NyeXB0b19wb2xpY3lfdCAqcCkK
K3sKKyAgICAvKgorICAgICAqIFNob3VsZCBvbmx5IGJlIHVzZWQgZm9yIHRlc3RpbmcKKyAgICAg
Ki8KIAotdm9pZAotc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfY21fMjU2X2htYWNfc2hhMV84
MChzcnRwX2NyeXB0b19wb2xpY3lfdCAqcCkgewotCi0gIC8qCi0gICAqIGNvcnJlc3BvbmRzIHRv
IFJGQyA2MTg4Ci0gICAqLwotCi0gIHAtPmNpcGhlcl90eXBlICAgICA9IFNSVFBfQUVTX0lDTV8y
NTY7Ci0gIHAtPmNpcGhlcl9rZXlfbGVuICA9IFNSVFBfQUVTX0lDTV8yNTZfS0VZX0xFTl9XU0FM
VDsKLSAgcC0+YXV0aF90eXBlICAgICAgID0gU1JUUF9ITUFDX1NIQTE7ICAgICAgICAgICAgIAot
ICBwLT5hdXRoX2tleV9sZW4gICAgPSAyMDsgICAgICAgICAgICAgICAgLyogZGVmYXVsdCAxNjAg
Yml0cyBwZXIgUkZDIDM3MTEgKi8KLSAgcC0+YXV0aF90YWdfbGVuICAgID0gMTA7ICAgICAgICAg
ICAgICAgIC8qIGRlZmF1bHQgODAgYml0cyBwZXIgUkZDIDM3MTEgKi8KLSAgcC0+c2VjX3NlcnYg
ICAgICAgID0gc2VjX3NlcnZfY29uZl9hbmRfYXV0aDsKKyAgICBwLT5jaXBoZXJfdHlwZSA9IFNS
VFBfTlVMTF9DSVBIRVI7CisgICAgcC0+Y2lwaGVyX2tleV9sZW4gPSAwOworICAgIHAtPmF1dGhf
dHlwZSA9IFNSVFBfTlVMTF9BVVRIOworICAgIHAtPmF1dGhfa2V5X2xlbiA9IDA7CisgICAgcC0+
YXV0aF90YWdfbGVuID0gMDsKKyAgICBwLT5zZWNfc2VydiA9IHNlY19zZXJ2X25vbmU7CiB9CiAK
K3ZvaWQgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfY21fMjU2X2htYWNfc2hhMV84MChzcnRw
X2NyeXB0b19wb2xpY3lfdCAqcCkKK3sKKyAgICAvKgorICAgICAqIGNvcnJlc3BvbmRzIHRvIFJG
QyA2MTg4CisgICAgICovCiAKLXZvaWQKLXNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2NtXzI1
Nl9obWFjX3NoYTFfMzIoc3J0cF9jcnlwdG9fcG9saWN5X3QgKnApIHsKKyAgICBwLT5jaXBoZXJf
dHlwZSA9IFNSVFBfQUVTX0lDTV8yNTY7CisgICAgcC0+Y2lwaGVyX2tleV9sZW4gPSBTUlRQX0FF
U19JQ01fMjU2X0tFWV9MRU5fV1NBTFQ7CisgICAgcC0+YXV0aF90eXBlID0gU1JUUF9ITUFDX1NI
QTE7CisgICAgcC0+YXV0aF9rZXlfbGVuID0gMjA7IC8qIGRlZmF1bHQgMTYwIGJpdHMgcGVyIFJG
QyAzNzExICovCisgICAgcC0+YXV0aF90YWdfbGVuID0gMTA7IC8qIGRlZmF1bHQgODAgYml0cyBw
ZXIgUkZDIDM3MTEgKi8KKyAgICBwLT5zZWNfc2VydiA9IHNlY19zZXJ2X2NvbmZfYW5kX2F1dGg7
Cit9CiAKLSAgLyoKLSAgICogY29ycmVzcG9uZHMgdG8gUkZDIDYxODgKLSAgICoKLSAgICogbm90
ZSB0aGF0IHRoaXMgY3J5cHRvIHBvbGljeSBpcyBpbnRlbmRlZCBmb3IgU1JUUCwgYnV0IG5vdCBT
UlRDUAotICAgKi8KK3ZvaWQgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfY21fMjU2X2htYWNf
c2hhMV8zMihzcnRwX2NyeXB0b19wb2xpY3lfdCAqcCkKK3sKKyAgICAvKgorICAgICAqIGNvcnJl
c3BvbmRzIHRvIFJGQyA2MTg4CisgICAgICoKKyAgICAgKiBub3RlIHRoYXQgdGhpcyBjcnlwdG8g
cG9saWN5IGlzIGludGVuZGVkIGZvciBTUlRQLCBidXQgbm90IFNSVENQCisgICAgICovCiAKLSAg
cC0+Y2lwaGVyX3R5cGUgICAgID0gU1JUUF9BRVNfSUNNXzI1NjsKLSAgcC0+Y2lwaGVyX2tleV9s
ZW4gID0gU1JUUF9BRVNfSUNNXzI1Nl9LRVlfTEVOX1dTQUxUOwotICBwLT5hdXRoX3R5cGUgICAg
ICAgPSBTUlRQX0hNQUNfU0hBMTsgICAgICAgICAgICAgCi0gIHAtPmF1dGhfa2V5X2xlbiAgICA9
IDIwOyAgICAgICAgICAgICAgICAvKiBkZWZhdWx0IDE2MCBiaXRzIHBlciBSRkMgMzcxMSAqLwot
ICBwLT5hdXRoX3RhZ19sZW4gICAgPSA0OyAgICAgICAgICAgICAgICAgLyogZGVmYXVsdCA4MCBi
aXRzIHBlciBSRkMgMzcxMSAqLwotICBwLT5zZWNfc2VydiAgICAgICAgPSBzZWNfc2Vydl9jb25m
X2FuZF9hdXRoOworICAgIHAtPmNpcGhlcl90eXBlID0gU1JUUF9BRVNfSUNNXzI1NjsKKyAgICBw
LT5jaXBoZXJfa2V5X2xlbiA9IFNSVFBfQUVTX0lDTV8yNTZfS0VZX0xFTl9XU0FMVDsKKyAgICBw
LT5hdXRoX3R5cGUgPSBTUlRQX0hNQUNfU0hBMTsKKyAgICBwLT5hdXRoX2tleV9sZW4gPSAyMDsg
LyogZGVmYXVsdCAxNjAgYml0cyBwZXIgUkZDIDM3MTEgKi8KKyAgICBwLT5hdXRoX3RhZ19sZW4g
PSA0OyAgLyogZGVmYXVsdCA4MCBiaXRzIHBlciBSRkMgMzcxMSAqLworICAgIHAtPnNlY19zZXJ2
ID0gc2VjX3NlcnZfY29uZl9hbmRfYXV0aDsKIH0KIAogLyoKICAqIEFFUy0yNTYgd2l0aCBubyBh
dXRoZW50aWNhdGlvbi4KICAqLwotdm9pZAotc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfY21f
MjU2X251bGxfYXV0aCAoc3J0cF9jcnlwdG9fcG9saWN5X3QgKnApCit2b2lkIHNydHBfY3J5cHRv
X3BvbGljeV9zZXRfYWVzX2NtXzI1Nl9udWxsX2F1dGgoc3J0cF9jcnlwdG9fcG9saWN5X3QgKnAp
CiB7Ci0gICAgcC0+Y2lwaGVyX3R5cGUgICAgID0gU1JUUF9BRVNfSUNNXzI1NjsKLSAgICBwLT5j
aXBoZXJfa2V5X2xlbiAgPSBTUlRQX0FFU19JQ01fMjU2X0tFWV9MRU5fV1NBTFQ7Ci0gICAgcC0+
YXV0aF90eXBlICAgICAgID0gU1JUUF9OVUxMX0FVVEg7Ci0gICAgcC0+YXV0aF9rZXlfbGVuICAg
ID0gMDsKLSAgICBwLT5hdXRoX3RhZ19sZW4gICAgPSAwOwotICAgIHAtPnNlY19zZXJ2ICAgICAg
ICA9IHNlY19zZXJ2X2NvbmY7CisgICAgcC0+Y2lwaGVyX3R5cGUgPSBTUlRQX0FFU19JQ01fMjU2
OworICAgIHAtPmNpcGhlcl9rZXlfbGVuID0gU1JUUF9BRVNfSUNNXzI1Nl9LRVlfTEVOX1dTQUxU
OworICAgIHAtPmF1dGhfdHlwZSA9IFNSVFBfTlVMTF9BVVRIOworICAgIHAtPmF1dGhfa2V5X2xl
biA9IDA7CisgICAgcC0+YXV0aF90YWdfbGVuID0gMDsKKyAgICBwLT5zZWNfc2VydiA9IHNlY19z
ZXJ2X2NvbmY7CiB9CiAKICNpZmRlZiBPUEVOU1NMCi12b2lkCi1zcnRwX2NyeXB0b19wb2xpY3lf
c2V0X2Flc19jbV8xOTJfaG1hY19zaGExXzgwKHNydHBfY3J5cHRvX3BvbGljeV90ICpwKSB7Ci0K
LSAgLyoKLSAgICogY29ycmVzcG9uZHMgdG8gUkZDIDYxODgKLSAgICovCi0KLSAgcC0+Y2lwaGVy
X3R5cGUgICAgID0gU1JUUF9BRVNfSUNNXzE5MjsKLSAgcC0+Y2lwaGVyX2tleV9sZW4gID0gU1JU
UF9BRVNfSUNNXzE5Ml9LRVlfTEVOX1dTQUxUOwotICBwLT5hdXRoX3R5cGUgICAgICAgPSBTUlRQ
X0hNQUNfU0hBMTsKLSAgcC0+YXV0aF9rZXlfbGVuICAgID0gMjA7ICAgICAgICAgICAgICAgIC8q
IGRlZmF1bHQgMTYwIGJpdHMgcGVyIFJGQyAzNzExICovCi0gIHAtPmF1dGhfdGFnX2xlbiAgICA9
IDEwOyAgICAgICAgICAgICAgICAvKiBkZWZhdWx0IDgwIGJpdHMgcGVyIFJGQyAzNzExICovCi0g
IHAtPnNlY19zZXJ2ICAgICAgICA9IHNlY19zZXJ2X2NvbmZfYW5kX2F1dGg7Ci19Ci0KK3ZvaWQg
c3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfY21fMTkyX2htYWNfc2hhMV84MChzcnRwX2NyeXB0
b19wb2xpY3lfdCAqcCkKK3sKKyAgICAvKgorICAgICAqIGNvcnJlc3BvbmRzIHRvIFJGQyA2MTg4
CisgICAgICovCiAKLXZvaWQKLXNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2NtXzE5Ml9obWFj
X3NoYTFfMzIoc3J0cF9jcnlwdG9fcG9saWN5X3QgKnApIHsKKyAgICBwLT5jaXBoZXJfdHlwZSA9
IFNSVFBfQUVTX0lDTV8xOTI7CisgICAgcC0+Y2lwaGVyX2tleV9sZW4gPSBTUlRQX0FFU19JQ01f
MTkyX0tFWV9MRU5fV1NBTFQ7CisgICAgcC0+YXV0aF90eXBlID0gU1JUUF9ITUFDX1NIQTE7Cisg
ICAgcC0+YXV0aF9rZXlfbGVuID0gMjA7IC8qIGRlZmF1bHQgMTYwIGJpdHMgcGVyIFJGQyAzNzEx
ICovCisgICAgcC0+YXV0aF90YWdfbGVuID0gMTA7IC8qIGRlZmF1bHQgODAgYml0cyBwZXIgUkZD
IDM3MTEgKi8KKyAgICBwLT5zZWNfc2VydiA9IHNlY19zZXJ2X2NvbmZfYW5kX2F1dGg7Cit9CiAK
LSAgLyoKLSAgICogY29ycmVzcG9uZHMgdG8gUkZDIDYxODgKLSAgICoKLSAgICogbm90ZSB0aGF0
IHRoaXMgY3J5cHRvIHBvbGljeSBpcyBpbnRlbmRlZCBmb3IgU1JUUCwgYnV0IG5vdCBTUlRDUAot
ICAgKi8KK3ZvaWQgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfY21fMTkyX2htYWNfc2hhMV8z
MihzcnRwX2NyeXB0b19wb2xpY3lfdCAqcCkKK3sKKyAgICAvKgorICAgICAqIGNvcnJlc3BvbmRz
IHRvIFJGQyA2MTg4CisgICAgICoKKyAgICAgKiBub3RlIHRoYXQgdGhpcyBjcnlwdG8gcG9saWN5
IGlzIGludGVuZGVkIGZvciBTUlRQLCBidXQgbm90IFNSVENQCisgICAgICovCiAKLSAgcC0+Y2lw
aGVyX3R5cGUgICAgID0gU1JUUF9BRVNfSUNNXzE5MjsKLSAgcC0+Y2lwaGVyX2tleV9sZW4gID0g
U1JUUF9BRVNfSUNNXzE5Ml9LRVlfTEVOX1dTQUxUOwotICBwLT5hdXRoX3R5cGUgICAgICAgPSBT
UlRQX0hNQUNfU0hBMTsKLSAgcC0+YXV0aF9rZXlfbGVuICAgID0gMjA7ICAgICAgICAgICAgICAg
IC8qIGRlZmF1bHQgMTYwIGJpdHMgcGVyIFJGQyAzNzExICovCi0gIHAtPmF1dGhfdGFnX2xlbiAg
ICA9IDQ7ICAgICAgICAgICAgICAgICAvKiBkZWZhdWx0IDgwIGJpdHMgcGVyIFJGQyAzNzExICov
Ci0gIHAtPnNlY19zZXJ2ICAgICAgICA9IHNlY19zZXJ2X2NvbmZfYW5kX2F1dGg7CisgICAgcC0+
Y2lwaGVyX3R5cGUgPSBTUlRQX0FFU19JQ01fMTkyOworICAgIHAtPmNpcGhlcl9rZXlfbGVuID0g
U1JUUF9BRVNfSUNNXzE5Ml9LRVlfTEVOX1dTQUxUOworICAgIHAtPmF1dGhfdHlwZSA9IFNSVFBf
SE1BQ19TSEExOworICAgIHAtPmF1dGhfa2V5X2xlbiA9IDIwOyAvKiBkZWZhdWx0IDE2MCBiaXRz
IHBlciBSRkMgMzcxMSAqLworICAgIHAtPmF1dGhfdGFnX2xlbiA9IDQ7ICAvKiBkZWZhdWx0IDgw
IGJpdHMgcGVyIFJGQyAzNzExICovCisgICAgcC0+c2VjX3NlcnYgPSBzZWNfc2Vydl9jb25mX2Fu
ZF9hdXRoOwogfQogCiAvKgogICogQUVTLTE5MiB3aXRoIG5vIGF1dGhlbnRpY2F0aW9uLgogICov
Ci12b2lkCi1zcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19jbV8xOTJfbnVsbF9hdXRoIChzcnRw
X2NyeXB0b19wb2xpY3lfdCAqcCkKK3ZvaWQgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfY21f
MTkyX251bGxfYXV0aChzcnRwX2NyeXB0b19wb2xpY3lfdCAqcCkKIHsKLSAgICBwLT5jaXBoZXJf
dHlwZSAgICAgPSBTUlRQX0FFU19JQ01fMTkyOwotICAgIHAtPmNpcGhlcl9rZXlfbGVuICA9IFNS
VFBfQUVTX0lDTV8xOTJfS0VZX0xFTl9XU0FMVDsKLSAgICBwLT5hdXRoX3R5cGUgICAgICAgPSBT
UlRQX05VTExfQVVUSDsKLSAgICBwLT5hdXRoX2tleV9sZW4gICAgPSAwOwotICAgIHAtPmF1dGhf
dGFnX2xlbiAgICA9IDA7Ci0gICAgcC0+c2VjX3NlcnYgICAgICAgID0gc2VjX3NlcnZfY29uZjsK
KyAgICBwLT5jaXBoZXJfdHlwZSA9IFNSVFBfQUVTX0lDTV8xOTI7CisgICAgcC0+Y2lwaGVyX2tl
eV9sZW4gPSBTUlRQX0FFU19JQ01fMTkyX0tFWV9MRU5fV1NBTFQ7CisgICAgcC0+YXV0aF90eXBl
ID0gU1JUUF9OVUxMX0FVVEg7CisgICAgcC0+YXV0aF9rZXlfbGVuID0gMDsKKyAgICBwLT5hdXRo
X3RhZ19sZW4gPSAwOworICAgIHAtPnNlY19zZXJ2ID0gc2VjX3NlcnZfY29uZjsKIH0KIAogLyoK
LSAqIEFFUy0xMjggR0NNIG1vZGUgd2l0aCA4IG9jdGV0IGF1dGggdGFnLiAKKyAqIEFFUy0xMjgg
R0NNIG1vZGUgd2l0aCA4IG9jdGV0IGF1dGggdGFnLgogICovCi12b2lkCi1zcnRwX2NyeXB0b19w
b2xpY3lfc2V0X2Flc19nY21fMTI4XzhfYXV0aChzcnRwX2NyeXB0b19wb2xpY3lfdCAqcCkgewot
ICBwLT5jaXBoZXJfdHlwZSAgICAgPSBTUlRQX0FFU19HQ01fMTI4OwotICBwLT5jaXBoZXJfa2V5
X2xlbiAgPSBTUlRQX0FFU19HQ01fMTI4X0tFWV9MRU5fV1NBTFQ7Ci0gIHAtPmF1dGhfdHlwZSAg
ICAgICA9IFNSVFBfTlVMTF9BVVRIOyAvKiBHQ00gaGFuZGxlcyB0aGUgYXV0aCBmb3IgdXMgKi8g
ICAgICAgICAgICAKLSAgcC0+YXV0aF9rZXlfbGVuICAgID0gMDsgCi0gIHAtPmF1dGhfdGFnX2xl
biAgICA9IDg7ICAgLyogOCBvY3RldCB0YWcgbGVuZ3RoICovCi0gIHAtPnNlY19zZXJ2ICAgICAg
ICA9IHNlY19zZXJ2X2NvbmZfYW5kX2F1dGg7Cit2b2lkIHNydHBfY3J5cHRvX3BvbGljeV9zZXRf
YWVzX2djbV8xMjhfOF9hdXRoKHNydHBfY3J5cHRvX3BvbGljeV90ICpwKQoreworICAgIHAtPmNp
cGhlcl90eXBlID0gU1JUUF9BRVNfR0NNXzEyODsKKyAgICBwLT5jaXBoZXJfa2V5X2xlbiA9IFNS
VFBfQUVTX0dDTV8xMjhfS0VZX0xFTl9XU0FMVDsKKyAgICBwLT5hdXRoX3R5cGUgPSBTUlRQX05V
TExfQVVUSDsgLyogR0NNIGhhbmRsZXMgdGhlIGF1dGggZm9yIHVzICovCisgICAgcC0+YXV0aF9r
ZXlfbGVuID0gMDsKKyAgICBwLT5hdXRoX3RhZ19sZW4gPSA4OyAvKiA4IG9jdGV0IHRhZyBsZW5n
dGggKi8KKyAgICBwLT5zZWNfc2VydiA9IHNlY19zZXJ2X2NvbmZfYW5kX2F1dGg7CiB9CiAKIC8q
Ci0gKiBBRVMtMjU2IEdDTSBtb2RlIHdpdGggOCBvY3RldCBhdXRoIHRhZy4gCisgKiBBRVMtMjU2
IEdDTSBtb2RlIHdpdGggOCBvY3RldCBhdXRoIHRhZy4KICAqLwotdm9pZAotc3J0cF9jcnlwdG9f
cG9saWN5X3NldF9hZXNfZ2NtXzI1Nl84X2F1dGgoc3J0cF9jcnlwdG9fcG9saWN5X3QgKnApIHsK
LSAgcC0+Y2lwaGVyX3R5cGUgICAgID0gU1JUUF9BRVNfR0NNXzI1NjsKLSAgcC0+Y2lwaGVyX2tl
eV9sZW4gID0gU1JUUF9BRVNfR0NNXzI1Nl9LRVlfTEVOX1dTQUxUOwotICBwLT5hdXRoX3R5cGUg
ICAgICAgPSBTUlRQX05VTExfQVVUSDsgLyogR0NNIGhhbmRsZXMgdGhlIGF1dGggZm9yIHVzICov
IAotICBwLT5hdXRoX2tleV9sZW4gICAgPSAwOyAKLSAgcC0+YXV0aF90YWdfbGVuICAgID0gODsg
ICAvKiA4IG9jdGV0IHRhZyBsZW5ndGggKi8KLSAgcC0+c2VjX3NlcnYgICAgICAgID0gc2VjX3Nl
cnZfY29uZl9hbmRfYXV0aDsKK3ZvaWQgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfZ2NtXzI1
Nl84X2F1dGgoc3J0cF9jcnlwdG9fcG9saWN5X3QgKnApCit7CisgICAgcC0+Y2lwaGVyX3R5cGUg
PSBTUlRQX0FFU19HQ01fMjU2OworICAgIHAtPmNpcGhlcl9rZXlfbGVuID0gU1JUUF9BRVNfR0NN
XzI1Nl9LRVlfTEVOX1dTQUxUOworICAgIHAtPmF1dGhfdHlwZSA9IFNSVFBfTlVMTF9BVVRIOyAv
KiBHQ00gaGFuZGxlcyB0aGUgYXV0aCBmb3IgdXMgKi8KKyAgICBwLT5hdXRoX2tleV9sZW4gPSAw
OworICAgIHAtPmF1dGhfdGFnX2xlbiA9IDg7IC8qIDggb2N0ZXQgdGFnIGxlbmd0aCAqLworICAg
IHAtPnNlY19zZXJ2ID0gc2VjX3NlcnZfY29uZl9hbmRfYXV0aDsKIH0KIAogLyoKLSAqIEFFUy0x
MjggR0NNIG1vZGUgd2l0aCA4IG9jdGV0IGF1dGggdGFnLCBubyBSVENQIGVuY3J5cHRpb24uIAor
ICogQUVTLTEyOCBHQ00gbW9kZSB3aXRoIDggb2N0ZXQgYXV0aCB0YWcsIG5vIFJUQ1AgZW5jcnlw
dGlvbi4KICAqLwotdm9pZAotc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfZ2NtXzEyOF84X29u
bHlfYXV0aChzcnRwX2NyeXB0b19wb2xpY3lfdCAqcCkgewotICBwLT5jaXBoZXJfdHlwZSAgICAg
PSBTUlRQX0FFU19HQ01fMTI4OwotICBwLT5jaXBoZXJfa2V5X2xlbiAgPSBTUlRQX0FFU19HQ01f
MTI4X0tFWV9MRU5fV1NBTFQ7Ci0gIHAtPmF1dGhfdHlwZSAgICAgICA9IFNSVFBfTlVMTF9BVVRI
OyAvKiBHQ00gaGFuZGxlcyB0aGUgYXV0aCBmb3IgdXMgKi8gCi0gIHAtPmF1dGhfa2V5X2xlbiAg
ICA9IDA7IAotICBwLT5hdXRoX3RhZ19sZW4gICAgPSA4OyAgIC8qIDggb2N0ZXQgdGFnIGxlbmd0
aCAqLwotICBwLT5zZWNfc2VydiAgICAgICAgPSBzZWNfc2Vydl9hdXRoOyAgLyogVGhpcyBvbmx5
IGFwcGxpZXMgdG8gUlRDUCAqLwordm9pZCBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21f
MTI4Xzhfb25seV9hdXRoKHNydHBfY3J5cHRvX3BvbGljeV90ICpwKQoreworICAgIHAtPmNpcGhl
cl90eXBlID0gU1JUUF9BRVNfR0NNXzEyODsKKyAgICBwLT5jaXBoZXJfa2V5X2xlbiA9IFNSVFBf
QUVTX0dDTV8xMjhfS0VZX0xFTl9XU0FMVDsKKyAgICBwLT5hdXRoX3R5cGUgPSBTUlRQX05VTExf
QVVUSDsgLyogR0NNIGhhbmRsZXMgdGhlIGF1dGggZm9yIHVzICovCisgICAgcC0+YXV0aF9rZXlf
bGVuID0gMDsKKyAgICBwLT5hdXRoX3RhZ19sZW4gPSA4OyAgICAgICAgIC8qIDggb2N0ZXQgdGFn
IGxlbmd0aCAqLworICAgIHAtPnNlY19zZXJ2ID0gc2VjX3NlcnZfYXV0aDsgLyogVGhpcyBvbmx5
IGFwcGxpZXMgdG8gUlRDUCAqLwogfQogCiAvKgotICogQUVTLTI1NiBHQ00gbW9kZSB3aXRoIDgg
b2N0ZXQgYXV0aCB0YWcsIG5vIFJUQ1AgZW5jcnlwdGlvbi4gCisgKiBBRVMtMjU2IEdDTSBtb2Rl
IHdpdGggOCBvY3RldCBhdXRoIHRhZywgbm8gUlRDUCBlbmNyeXB0aW9uLgogICovCi12b2lkCi1z
cnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21fMjU2Xzhfb25seV9hdXRoKHNydHBfY3J5cHRv
X3BvbGljeV90ICpwKSB7Ci0gIHAtPmNpcGhlcl90eXBlICAgICA9IFNSVFBfQUVTX0dDTV8yNTY7
Ci0gIHAtPmNpcGhlcl9rZXlfbGVuICA9IFNSVFBfQUVTX0dDTV8yNTZfS0VZX0xFTl9XU0FMVDsK
LSAgcC0+YXV0aF90eXBlICAgICAgID0gU1JUUF9OVUxMX0FVVEg7IC8qIEdDTSBoYW5kbGVzIHRo
ZSBhdXRoIGZvciB1cyAqLyAKLSAgcC0+YXV0aF9rZXlfbGVuICAgID0gMDsgCi0gIHAtPmF1dGhf
dGFnX2xlbiAgICA9IDg7ICAgLyogOCBvY3RldCB0YWcgbGVuZ3RoICovCi0gIHAtPnNlY19zZXJ2
ICAgICAgICA9IHNlY19zZXJ2X2F1dGg7ICAvKiBUaGlzIG9ubHkgYXBwbGllcyB0byBSVENQICov
Cit2b2lkIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2djbV8yNTZfOF9vbmx5X2F1dGgoc3J0
cF9jcnlwdG9fcG9saWN5X3QgKnApCit7CisgICAgcC0+Y2lwaGVyX3R5cGUgPSBTUlRQX0FFU19H
Q01fMjU2OworICAgIHAtPmNpcGhlcl9rZXlfbGVuID0gU1JUUF9BRVNfR0NNXzI1Nl9LRVlfTEVO
X1dTQUxUOworICAgIHAtPmF1dGhfdHlwZSA9IFNSVFBfTlVMTF9BVVRIOyAvKiBHQ00gaGFuZGxl
cyB0aGUgYXV0aCBmb3IgdXMgKi8KKyAgICBwLT5hdXRoX2tleV9sZW4gPSAwOworICAgIHAtPmF1
dGhfdGFnX2xlbiA9IDg7ICAgICAgICAgLyogOCBvY3RldCB0YWcgbGVuZ3RoICovCisgICAgcC0+
c2VjX3NlcnYgPSBzZWNfc2Vydl9hdXRoOyAvKiBUaGlzIG9ubHkgYXBwbGllcyB0byBSVENQICov
CiB9CiAKIC8qCi0gKiBBRVMtMTI4IEdDTSBtb2RlIHdpdGggMTYgb2N0ZXQgYXV0aCB0YWcuIAor
ICogQUVTLTEyOCBHQ00gbW9kZSB3aXRoIDE2IG9jdGV0IGF1dGggdGFnLgogICovCi12b2lkCi1z
cnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21fMTI4XzE2X2F1dGgoc3J0cF9jcnlwdG9fcG9s
aWN5X3QgKnApIHsKLSAgcC0+Y2lwaGVyX3R5cGUgICAgID0gU1JUUF9BRVNfR0NNXzEyODsKLSAg
cC0+Y2lwaGVyX2tleV9sZW4gID0gU1JUUF9BRVNfR0NNXzEyOF9LRVlfTEVOX1dTQUxUOwotICBw
LT5hdXRoX3R5cGUgICAgICAgPSBTUlRQX05VTExfQVVUSDsgLyogR0NNIGhhbmRsZXMgdGhlIGF1
dGggZm9yIHVzICovICAgICAgICAgICAgCi0gIHAtPmF1dGhfa2V5X2xlbiAgICA9IDA7IAotICBw
LT5hdXRoX3RhZ19sZW4gICAgPSAxNjsgICAvKiAxNiBvY3RldCB0YWcgbGVuZ3RoICovCi0gIHAt
PnNlY19zZXJ2ICAgICAgICA9IHNlY19zZXJ2X2NvbmZfYW5kX2F1dGg7Cit2b2lkIHNydHBfY3J5
cHRvX3BvbGljeV9zZXRfYWVzX2djbV8xMjhfMTZfYXV0aChzcnRwX2NyeXB0b19wb2xpY3lfdCAq
cCkKK3sKKyAgICBwLT5jaXBoZXJfdHlwZSA9IFNSVFBfQUVTX0dDTV8xMjg7CisgICAgcC0+Y2lw
aGVyX2tleV9sZW4gPSBTUlRQX0FFU19HQ01fMTI4X0tFWV9MRU5fV1NBTFQ7CisgICAgcC0+YXV0
aF90eXBlID0gU1JUUF9OVUxMX0FVVEg7IC8qIEdDTSBoYW5kbGVzIHRoZSBhdXRoIGZvciB1cyAq
LworICAgIHAtPmF1dGhfa2V5X2xlbiA9IDA7CisgICAgcC0+YXV0aF90YWdfbGVuID0gMTY7IC8q
IDE2IG9jdGV0IHRhZyBsZW5ndGggKi8KKyAgICBwLT5zZWNfc2VydiA9IHNlY19zZXJ2X2NvbmZf
YW5kX2F1dGg7CiB9CiAKIC8qCi0gKiBBRVMtMjU2IEdDTSBtb2RlIHdpdGggMTYgb2N0ZXQgYXV0
aCB0YWcuIAorICogQUVTLTI1NiBHQ00gbW9kZSB3aXRoIDE2IG9jdGV0IGF1dGggdGFnLgogICov
Ci12b2lkCi1zcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21fMjU2XzE2X2F1dGgoc3J0cF9j
cnlwdG9fcG9saWN5X3QgKnApIHsKLSAgcC0+Y2lwaGVyX3R5cGUgICAgID0gU1JUUF9BRVNfR0NN
XzI1NjsKLSAgcC0+Y2lwaGVyX2tleV9sZW4gID0gU1JUUF9BRVNfR0NNXzI1Nl9LRVlfTEVOX1dT
QUxUOwotICBwLT5hdXRoX3R5cGUgICAgICAgPSBTUlRQX05VTExfQVVUSDsgLyogR0NNIGhhbmRs
ZXMgdGhlIGF1dGggZm9yIHVzICovIAotICBwLT5hdXRoX2tleV9sZW4gICAgPSAwOyAKLSAgcC0+
YXV0aF90YWdfbGVuICAgID0gMTY7ICAgLyogMTYgb2N0ZXQgdGFnIGxlbmd0aCAqLwotICBwLT5z
ZWNfc2VydiAgICAgICAgPSBzZWNfc2Vydl9jb25mX2FuZF9hdXRoOwordm9pZCBzcnRwX2NyeXB0
b19wb2xpY3lfc2V0X2Flc19nY21fMjU2XzE2X2F1dGgoc3J0cF9jcnlwdG9fcG9saWN5X3QgKnAp
Cit7CisgICAgcC0+Y2lwaGVyX3R5cGUgPSBTUlRQX0FFU19HQ01fMjU2OworICAgIHAtPmNpcGhl
cl9rZXlfbGVuID0gU1JUUF9BRVNfR0NNXzI1Nl9LRVlfTEVOX1dTQUxUOworICAgIHAtPmF1dGhf
dHlwZSA9IFNSVFBfTlVMTF9BVVRIOyAvKiBHQ00gaGFuZGxlcyB0aGUgYXV0aCBmb3IgdXMgKi8K
KyAgICBwLT5hdXRoX2tleV9sZW4gPSAwOworICAgIHAtPmF1dGhfdGFnX2xlbiA9IDE2OyAvKiAx
NiBvY3RldCB0YWcgbGVuZ3RoICovCisgICAgcC0+c2VjX3NlcnYgPSBzZWNfc2Vydl9jb25mX2Fu
ZF9hdXRoOwogfQogCiAjZW5kaWYKIAotLyogCisvKgogICogc2VjdXJlIHJ0Y3AgZnVuY3Rpb25z
CiAgKi8KIApAQCAtMzQyMCw3ICszNDMzLDcgQEAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNf
Z2NtXzI1Nl8xNl9hdXRoKHNydHBfY3J5cHRvX3BvbGljeV90ICpwKSB7CiAgKiAgICAgICAgICAg
ICAgICstLSstLSstLSstLSstLSstLSstLSstLSstLSstLSstLSstLSsqCiAgKgogICogSW5wdXQ6
ICAqc2Vzc2lvbl9rZXlzIC0gcG9pbnRlciB0byBTUlRQIHN0cmVhbSBjb250ZXh0IHNlc3Npb24g
a2V5cywKLSAqICAgICAgICAgICAgICAgICAgICAgICAgdXNlZCB0byByZXRyaWV2ZSB0aGUgU0FM
VCAKKyAqICAgICAgICAgICAgICAgICAgICAgICAgdXNlZCB0byByZXRyaWV2ZSB0aGUgU0FMVAog
ICogICAgICAgICAqaXYgICAgICAgICAgIC0gUG9pbnRlciB0byByZWNpZXZlIHRoZSBjYWxjdWxh
dGVkIElWCiAgKiAgICAgICAgIHNlcV9udW0gICAgICAgLSBUaGUgU0VRIHZhbHVlIHRvIHVzZSBm
b3IgdGhlIElWIGNhbGN1bGF0aW9uLgogICogICAgICAgICAqaGRyICAgICAgICAgIC0gVGhlIFJU
UCBoZWFkZXIsIHVzZWQgdG8gZ2V0IHRoZSBTU1JDIHZhbHVlCkBAIC0zNDI5LDEyICszNDQyLDE0
IEBAIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2djbV8yNTZfMTZfYXV0aChzcnRwX2NyeXB0
b19wb2xpY3lfdCAqcCkgewogICogICAgICAgICAgaWYgc2VxX251bSBpcyBpbnZhbGlkCiAgKgog
ICovCi1zdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3QKLXNydHBfY2FsY19hZWFkX2l2X3NydGNwKHNy
dHBfc2Vzc2lvbl9rZXlzX3QgKnNlc3Npb25fa2V5cywgdjEyOF90ICppdiwKLSAgICAgICAgICAg
ICAgICAgICAgICAgIHVpbnQzMl90IHNlcV9udW0sIHNydGNwX2hkcl90ICpoZHIpCitzdGF0aWMg
c3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jYWxjX2FlYWRfaXZfc3J0Y3AoCisgICAgc3J0cF9zZXNz
aW9uX2tleXNfdCAqc2Vzc2lvbl9rZXlzLAorICAgIHYxMjhfdCAqaXYsCisgICAgdWludDMyX3Qg
c2VxX251bSwKKyAgICBzcnRjcF9oZHJfdCAqaGRyKQogewotICAgIHYxMjhfdAlpbjsKLSAgICB2
MTI4X3QJc2FsdDsKKyAgICB2MTI4X3QgaW47CisgICAgdjEyOF90IHNhbHQ7CiAKICAgICBtZW1z
ZXQoJmluLCAwLCBzaXplb2YodjEyOF90KSk7CiAgICAgbWVtc2V0KCZzYWx0LCAwLCBzaXplb2Yo
djEyOF90KSk7CkBAIC0zNDUwLDQwICszNDY1LDIxNSBAQCBzcnRwX2NhbGNfYWVhZF9pdl9zcnRj
cChzcnRwX3Nlc3Npb25fa2V5c190ICpzZXNzaW9uX2tleXMsIHYxMjhfdCAqaXYsCiAgICAgaWYg
KHNlcV9udW0gJiAweDgwMDAwMDAwVUwpIHsKICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1
c19iYWRfcGFyYW07CiAgICAgfQotICAgIGluLnYzMlsyXSA9IGh0b25sKHNlcV9udW0pOwotCi0g
ICAgZGVidWdfcHJpbnQobW9kX3NydHAsICJQcmUtc2FsdGVkIFJUQ1AgSVYgPSAlc1xuIiwgdjEy
OF9oZXhfc3RyaW5nKCZpbikpOworICAgIGluLnYzMlsyXSA9IGh0b25sKHNlcV9udW0pOworCisg
ICAgZGVidWdfcHJpbnQobW9kX3NydHAsICJQcmUtc2FsdGVkIFJUQ1AgSVYgPSAlc1xuIiwgdjEy
OF9oZXhfc3RyaW5nKCZpbikpOworCisgICAgLyoKKyAgICAgKiBHZXQgdGhlIFNBTFQgdmFsdWUg
ZnJvbSB0aGUgY29udGV4dAorICAgICAqLworICAgIG1lbWNweShzYWx0LnY4LCBzZXNzaW9uX2tl
eXMtPmNfc2FsdCwgMTIpOworICAgIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAiUlRDUCBTQUxUID0g
JXNcbiIsIHYxMjhfaGV4X3N0cmluZygmc2FsdCkpOworCisgICAgLyoKKyAgICAgKiBGaW5hbGx5
LCBhcHBseSB0aGUgU0FMVCB0byB0aGUgaW5wdXQKKyAgICAgKi8KKyAgICB2MTI4X3hvcihpdiwg
JmluLCAmc2FsdCk7CisKKyAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOworfQorCisvKgor
ICogVGhpcyBjb2RlIGhhbmRsZXMgQUVBRCBjaXBoZXJzIGZvciBvdXRnb2luZyBSVENQLiAgV2Ug
Y3VycmVudGx5IHN1cHBvcnQKKyAqIEFFUy1HQ00gbW9kZSB3aXRoIDEyOCBvciAyNTYgYml0IGtl
eXMuCisgKi8KK3N0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3Byb3RlY3RfcnRjcF9hZWFk
KAorICAgIHNydHBfdCBjdHgsCisgICAgc3J0cF9zdHJlYW1fY3R4X3QgKnN0cmVhbSwKKyAgICB2
b2lkICpydGNwX2hkciwKKyAgICB1bnNpZ25lZCBpbnQgKnBrdF9vY3RldF9sZW4sCisgICAgc3J0
cF9zZXNzaW9uX2tleXNfdCAqc2Vzc2lvbl9rZXlzLAorICAgIHVuc2lnbmVkIGludCB1c2VfbWtp
KQoreworICAgIHNydGNwX2hkcl90ICpoZHIgPSAoc3J0Y3BfaGRyX3QgKilydGNwX2hkcjsKKyAg
ICB1aW50MzJfdCAqZW5jX3N0YXJ0OyAgICAgICAgICAgIC8qIHBvaW50ZXIgdG8gc3RhcnQgb2Yg
ZW5jcnlwdGVkIHBvcnRpb24gICovCisgICAgdWludDMyX3QgKnRyYWlsZXI7ICAgICAgICAgICAg
ICAvKiBwb2ludGVyIHRvIHN0YXJ0IG9mIHRyYWlsZXIgICAgICAgICAgICAqLworICAgIHVuc2ln
bmVkIGludCBlbmNfb2N0ZXRfbGVuID0gMDsgLyogbnVtYmVyIG9mIG9jdGV0cyBpbiBlbmNyeXB0
ZWQgcG9ydGlvbiAqLworICAgIHVpbnQ4X3QgKmF1dGhfdGFnID0gTlVMTDsgICAgICAgLyogbG9j
YXRpb24gb2YgYXV0aF90YWcgd2l0aGluIHBhY2tldCAgICAgKi8KKyAgICBzcnRwX2Vycl9zdGF0
dXNfdCBzdGF0dXM7CisgICAgdWludDMyX3QgdGFnX2xlbjsKKyAgICB1aW50MzJfdCBzZXFfbnVt
OworICAgIHYxMjhfdCBpdjsKKyAgICB1aW50MzJfdCB0c2VxOworICAgIHVuc2lnbmVkIGludCBt
a2lfc2l6ZSA9IDA7CisKKyAgICAvKiBnZXQgdGFnIGxlbmd0aCBmcm9tIHN0cmVhbSBjb250ZXh0
ICovCisgICAgdGFnX2xlbiA9IHNydHBfYXV0aF9nZXRfdGFnX2xlbmd0aChzZXNzaW9uX2tleXMt
PnJ0Y3BfYXV0aCk7CisKKyAgICAvKgorICAgICAqIHNldCBlbmNyeXB0aW9uIHN0YXJ0IGFuZCBl
bmNyeXB0aW9uIGxlbmd0aCAtIGlmIHdlJ3JlIG5vdAorICAgICAqIHByb3ZpZGluZyBjb25maWRl
bnRpYWxpdHksIHNldCBlbmNfc3RhcnQgdG8gTlVMTAorICAgICAqLworICAgIGVuY19zdGFydCA9
ICh1aW50MzJfdCAqKWhkciArIHVpbnQzMnNfaW5fcnRjcF9oZWFkZXI7CisgICAgZW5jX29jdGV0
X2xlbiA9ICpwa3Rfb2N0ZXRfbGVuIC0gb2N0ZXRzX2luX3J0Y3BfaGVhZGVyOworCisgICAgLyog
Tk9URTogaGRyLT5sZW5ndGggaXMgbm90IHVzYWJsZSAtIGl0IHJlZmVycyB0byBvbmx5IHRoZSBm
aXJzdAorICAgICAqIFJUQ1AgcmVwb3J0IGluIHRoZSBjb21wb3VuZCBwYWNrZXQhCisgICAgICov
CisgICAgLyogTk9URTogdHJhaWxlciBpcyAzMi1iaXQgYWxpZ25lZCBiZWNhdXNlIFJUQ1AgJ3Bh
Y2tldHMnIGFyZSBhbHdheXMKKyAgICAgKiBtdWx0aXBsZXMgb2YgMzItYml0cyAoUkZDIDM1NTAg
Ni4xKQorICAgICAqLworICAgIHRyYWlsZXIgPSAodWludDMyX3QgKikoKGNoYXIgKillbmNfc3Rh
cnQgKyBlbmNfb2N0ZXRfbGVuICsgdGFnX2xlbik7CisKKyAgICBpZiAoc3RyZWFtLT5ydGNwX3Nl
cnZpY2VzICYgc2VjX3NlcnZfY29uZikgeworICAgICAgICAqdHJhaWxlciA9IGh0b25sKFNSVENQ
X0VfQklUKTsgLyogc2V0IGVuY3J5cHQgYml0ICovCisgICAgfSBlbHNlIHsKKyAgICAgICAgZW5j
X3N0YXJ0ID0gTlVMTDsKKyAgICAgICAgZW5jX29jdGV0X2xlbiA9IDA7CisgICAgICAgIC8qIDAg
aXMgbmV0d29yay1vcmRlciBpbmRlcGVuZGFudCAqLworICAgICAgICAqdHJhaWxlciA9IDB4MDAw
MDAwMDA7IC8qIHNldCBlbmNyeXB0IGJpdCAqLworICAgIH0KKworICAgIG1raV9zaXplID0gc3J0
cF9pbmplY3RfbWtpKCh1aW50OF90ICopaGRyICsgKnBrdF9vY3RldF9sZW4gKyB0YWdfbGVuICsK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZW9mKHNydGNwX3RyYWlsZXJf
dCksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2Vzc2lvbl9rZXlzLCB1c2VfbWtp
KTsKKworICAgIC8qCisgICAgICogc2V0IHRoZSBhdXRoX3RhZyBwb2ludGVyIHRvIHRoZSBwcm9w
ZXIgbG9jYXRpb24sIHdoaWNoIGlzIGFmdGVyCisgICAgICogdGhlIHBheWxvYWQsIGJ1dCBiZWZv
cmUgdGhlIHRyYWlsZXIKKyAgICAgKiAobm90ZSB0aGF0IHNydHBjICphbHdheXMqIHByb3ZpZGVz
IGF1dGhlbnRpY2F0aW9uLCB1bmxpa2Ugc3J0cCkKKyAgICAgKi8KKyAgICAvKiBOb3RlOiBUaGlz
IHdvdWxkIG5lZWQgdG8gY2hhbmdlIGZvciBvcHRpb25hbCBtaWtleSBkYXRhICovCisgICAgYXV0
aF90YWcgPSAodWludDhfdCAqKWhkciArICpwa3Rfb2N0ZXRfbGVuOworCisgICAgLyoKKyAgICAg
KiBjaGVjayBzZXF1ZW5jZSBudW1iZXIgZm9yIG92ZXJydW5zLCBhbmQgY29weSBpdCBpbnRvIHRo
ZSBwYWNrZXQKKyAgICAgKiBpZiBpdHMgdmFsdWUgaXNuJ3QgdG9vIGJpZworICAgICAqLworICAg
IHN0YXR1cyA9IHNydHBfcmRiX2luY3JlbWVudCgmc3RyZWFtLT5ydGNwX3JkYik7CisgICAgaWYg
KHN0YXR1cykgeworICAgICAgICByZXR1cm4gc3RhdHVzOworICAgIH0KKyAgICBzZXFfbnVtID0g
c3J0cF9yZGJfZ2V0X3ZhbHVlKCZzdHJlYW0tPnJ0Y3BfcmRiKTsKKyAgICAqdHJhaWxlciB8PSBo
dG9ubChzZXFfbnVtKTsKKyAgICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgInNydGNwIGluZGV4OiAl
eCIsIHNlcV9udW0pOworCisgICAgLyoKKyAgICAgKiBDYWxjdWxhdGUgYW5kIHNldCB0aGUgSVYK
KyAgICAgKi8KKyAgICBzdGF0dXMgPSBzcnRwX2NhbGNfYWVhZF9pdl9zcnRjcChzZXNzaW9uX2tl
eXMsICZpdiwgc2VxX251bSwgaGRyKTsKKyAgICBpZiAoc3RhdHVzKSB7CisgICAgICAgIHJldHVy
biBzcnRwX2Vycl9zdGF0dXNfY2lwaGVyX2ZhaWw7CisgICAgfQorICAgIHN0YXR1cyA9IHNydHBf
Y2lwaGVyX3NldF9pdihzZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyLCAodWludDhfdCAqKSZpdiwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF9kaXJlY3Rpb25fZW5jcnlwdCk7
CisgICAgaWYgKHN0YXR1cykgeworICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2NpcGhl
cl9mYWlsOworICAgIH0KKworICAgIC8qCisgICAgICogU2V0IHRoZSBBQUQgZm9yIEdDTSBtb2Rl
CisgICAgICovCisgICAgaWYgKGVuY19zdGFydCkgeworICAgICAgICAvKgorICAgICAgICAgKiBJ
ZiBwYXlsb2FkIGVuY3J5cHRpb24gaXMgZW5hYmxlZCwgdGhlbiB0aGUgQUFEIGNvbnNpc3Qgb2YK
KyAgICAgICAgICogdGhlIFJUQ1AgaGVhZGVyIGFuZCB0aGUgc2VxIyBhdCB0aGUgZW5kIG9mIHRo
ZSBwYWNrZXQKKyAgICAgICAgICovCisgICAgICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3NldF9h
YWQoc2Vzc2lvbl9rZXlzLT5ydGNwX2NpcGhlciwgKHVpbnQ4X3QgKiloZHIsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgb2N0ZXRzX2luX3J0Y3BfaGVhZGVyKTsKKyAgICAg
ICAgaWYgKHN0YXR1cykgeworICAgICAgICAgICAgcmV0dXJuIChzcnRwX2Vycl9zdGF0dXNfY2lw
aGVyX2ZhaWwpOworICAgICAgICB9CisgICAgfSBlbHNlIHsKKyAgICAgICAgLyoKKyAgICAgICAg
ICogU2luY2UgcGF5bG9hZCBlbmNyeXB0aW9uIGlzIG5vdCBlbmFibGVkLCB3ZSBtdXN0IGF1dGhl
bnRpY2F0ZQorICAgICAgICAgKiB0aGUgZW50aXJlIHBhY2tldCBhcyBkZXNjcmliZWQgaW4gUkZD
IDc3MTQgKFNlY3Rpb24gOS4zLiBEYXRhCisgICAgICAgICAqIFR5cGVzIGluIFVuZW5jcnlwdGVk
IFNSVENQIENvbXBvdW5kIFBhY2tldHMpCisgICAgICAgICAqLworICAgICAgICBzdGF0dXMgPSBz
cnRwX2NpcGhlcl9zZXRfYWFkKHNlc3Npb25fa2V5cy0+cnRjcF9jaXBoZXIsICh1aW50OF90ICop
aGRyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpwa3Rfb2N0ZXRfbGVu
KTsKKyAgICAgICAgaWYgKHN0YXR1cykgeworICAgICAgICAgICAgcmV0dXJuIChzcnRwX2Vycl9z
dGF0dXNfY2lwaGVyX2ZhaWwpOworICAgICAgICB9CisgICAgfQorICAgIC8qCisgICAgICogUHJv
Y2VzcyB0aGUgc2VxdWVuY2UjIGFzIEFBRAorICAgICAqLworICAgIHRzZXEgPSAqdHJhaWxlcjsK
KyAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9zZXRfYWFkKHNlc3Npb25fa2V5cy0+cnRjcF9jaXBo
ZXIsICh1aW50OF90ICopJnRzZXEsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBz
aXplb2Yoc3J0Y3BfdHJhaWxlcl90KSk7CisgICAgaWYgKHN0YXR1cykgeworICAgICAgICByZXR1
cm4gKHNydHBfZXJyX3N0YXR1c19jaXBoZXJfZmFpbCk7CisgICAgfQorCisgICAgLyogaWYgd2Un
cmUgZW5jcnlwdGluZywgZXhvciBrZXlzdHJlYW0gaW50byB0aGUgbWVzc2FnZSAqLworICAgIGlm
IChlbmNfc3RhcnQpIHsKKyAgICAgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfZW5jcnlwdChzZXNz
aW9uX2tleXMtPnJ0Y3BfY2lwaGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICh1aW50OF90ICopZW5jX3N0YXJ0LCAmZW5jX29jdGV0X2xlbik7CisgICAgICAgIGlmIChz
dGF0dXMpIHsKKyAgICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfY2lwaGVyX2ZhaWw7
CisgICAgICAgIH0KKyAgICAgICAgLyoKKyAgICAgICAgICogR2V0IHRoZSB0YWcgYW5kIGFwcGVu
ZCB0aGF0IHRvIHRoZSBvdXRwdXQKKyAgICAgICAgICovCisgICAgICAgIHN0YXR1cyA9IHNydHBf
Y2lwaGVyX2dldF90YWcoc2Vzc2lvbl9rZXlzLT5ydGNwX2NpcGhlciwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAodWludDhfdCAqKWF1dGhfdGFnLCAmdGFnX2xlbik7Cisg
ICAgICAgIGlmIChzdGF0dXMpIHsKKyAgICAgICAgICAgIHJldHVybiAoc3J0cF9lcnJfc3RhdHVz
X2NpcGhlcl9mYWlsKTsKKyAgICAgICAgfQorICAgICAgICBlbmNfb2N0ZXRfbGVuICs9IHRhZ19s
ZW47CisgICAgfSBlbHNlIHsKKyAgICAgICAgLyoKKyAgICAgICAgICogRXZlbiB0aG91Z2ggd2Un
cmUgbm90IGVuY3J5cHRpbmcgdGhlIHBheWxvYWQsIHdlIG5lZWQKKyAgICAgICAgICogdG8gcnVu
IHRoZSBjaXBoZXIgdG8gZ2V0IHRoZSBhdXRoIHRhZy4KKyAgICAgICAgICovCisgICAgICAgIHVu
c2lnbmVkIGludCBub2xlbiA9IDA7CisgICAgICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX2VuY3J5
cHQoc2Vzc2lvbl9rZXlzLT5ydGNwX2NpcGhlciwgTlVMTCwgJm5vbGVuKTsKKyAgICAgICAgaWYg
KHN0YXR1cykgeworICAgICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19jaXBoZXJfZmFp
bDsKKyAgICAgICAgfQorICAgICAgICAvKgorICAgICAgICAgKiBHZXQgdGhlIHRhZyBhbmQgYXBw
ZW5kIHRoYXQgdG8gdGhlIG91dHB1dAorICAgICAgICAgKi8KKyAgICAgICAgc3RhdHVzID0gc3J0
cF9jaXBoZXJfZ2V0X3RhZyhzZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICh1aW50OF90ICopYXV0aF90YWcsICZ0YWdfbGVuKTsK
KyAgICAgICAgaWYgKHN0YXR1cykgeworICAgICAgICAgICAgcmV0dXJuIChzcnRwX2Vycl9zdGF0
dXNfY2lwaGVyX2ZhaWwpOworICAgICAgICB9CisgICAgICAgIGVuY19vY3RldF9sZW4gKz0gdGFn
X2xlbjsKKyAgICB9CiAKLSAgICAvKgotICAgICAqIEdldCB0aGUgU0FMVCB2YWx1ZSBmcm9tIHRo
ZSBjb250ZXh0Ci0gICAgICovCi0gICAgbWVtY3B5KHNhbHQudjgsIHNlc3Npb25fa2V5cy0+Y19z
YWx0LCAxMik7Ci0gICAgZGVidWdfcHJpbnQobW9kX3NydHAsICJSVENQIFNBTFQgPSAlc1xuIiwg
djEyOF9oZXhfc3RyaW5nKCZzYWx0KSk7CisgICAgLyogaW5jcmVhc2UgdGhlIHBhY2tldCBsZW5n
dGggYnkgdGhlIGxlbmd0aCBvZiB0aGUgYXV0aCB0YWcgYW5kIHNlcV9udW0qLworICAgICpwa3Rf
b2N0ZXRfbGVuICs9ICh0YWdfbGVuICsgc2l6ZW9mKHNydGNwX3RyYWlsZXJfdCkpOwogCi0gICAg
LyoKLSAgICAgKiBGaW5hbGx5LCBhcHBseSB0aGUgU0FMVCB0byB0aGUgaW5wdXQKLSAgICAgKi8K
LSAgICB2MTI4X3hvcihpdiwgJmluLCAmc2FsdCk7CisgICAgLyogaW5jcmVhc2UgdGhlIHBhY2tl
dCBieSB0aGUgbWtpX3NpemUgKi8KKyAgICAqcGt0X29jdGV0X2xlbiArPSBta2lfc2l6ZTsKIAog
ICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAKIC8qCi0gKiBUaGlzIGNvZGUgaGFu
ZGxlcyBBRUFEIGNpcGhlcnMgZm9yIG91dGdvaW5nIFJUQ1AuICBXZSBjdXJyZW50bHkgc3VwcG9y
dAotICogQUVTLUdDTSBtb2RlIHdpdGggMTI4IG9yIDI1NiBiaXQga2V5cy4gCisgKiBUaGlzIGZ1
bmN0aW9uIGhhbmRsZXMgaW5jb21pbmcgU1JUQ1AgcGFja2V0cyB3aGlsZSBpbiBBRUFEIG1vZGUs
CisgKiB3aGljaCBjdXJyZW50bHkgc3VwcG9ydHMgQUVTLUdDTSBlbmNyeXB0aW9uLiAgTm90ZSwg
dGhlIGF1dGggdGFnIGlzCisgKiBhdCB0aGUgZW5kIG9mIHRoZSBwYWNrZXQgc3RyZWFtIGFuZCBp
cyBhdXRvbWF0aWNhbGx5IGNoZWNrZWQgYnkgR0NNCisgKiB3aGVuIGRlY3J5cHRpbmcgdGhlIHBh
eWxvYWQuCiAgKi8KLXN0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdAotc3J0cF9wcm90ZWN0X3J0Y3Bf
YWVhZCAoc3J0cF90IGN0eCwgc3J0cF9zdHJlYW1fY3R4X3QgKnN0cmVhbSwgCi0gICAgICAgICAg
ICAgICAgICAgICAgICB2b2lkICpydGNwX2hkciwgdW5zaWduZWQgaW50ICpwa3Rfb2N0ZXRfbGVu
LAotICAgICAgICAgICAgICAgICAgICAgICAgc3J0cF9zZXNzaW9uX2tleXNfdCAqc2Vzc2lvbl9r
ZXlzLCB1bnNpZ25lZCBpbnQgdXNlX21raSkKK3N0YXRpYyBzcnRwX2Vycl9zdGF0dXNfdCBzcnRw
X3VucHJvdGVjdF9ydGNwX2FlYWQoCisgICAgc3J0cF90IGN0eCwKKyAgICBzcnRwX3N0cmVhbV9j
dHhfdCAqc3RyZWFtLAorICAgIHZvaWQgKnNydGNwX2hkciwKKyAgICB1bnNpZ25lZCBpbnQgKnBr
dF9vY3RldF9sZW4sCisgICAgc3J0cF9zZXNzaW9uX2tleXNfdCAqc2Vzc2lvbl9rZXlzLAorICAg
IHVuc2lnbmVkIGludCB1c2VfbWtpKQogewotICAgIHNydGNwX2hkcl90ICpoZHIgPSAoc3J0Y3Bf
aGRyX3QqKXJ0Y3BfaGRyOwotICAgIHVpbnQzMl90ICplbmNfc3RhcnQ7ICAgICAgICAvKiBwb2lu
dGVyIHRvIHN0YXJ0IG9mIGVuY3J5cHRlZCBwb3J0aW9uICAqLwotICAgIHVpbnQzMl90ICp0cmFp
bGVyOyAgICAgICAgICAvKiBwb2ludGVyIHRvIHN0YXJ0IG9mIHRyYWlsZXIgICAgICAgICAgICAq
LworICAgIHNydGNwX2hkcl90ICpoZHIgPSAoc3J0Y3BfaGRyX3QgKilzcnRjcF9oZHI7CisgICAg
dWludDMyX3QgKmVuY19zdGFydDsgICAgICAgICAgICAvKiBwb2ludGVyIHRvIHN0YXJ0IG9mIGVu
Y3J5cHRlZCBwb3J0aW9uICAqLworICAgIHVpbnQzMl90ICp0cmFpbGVyOyAgICAgICAgICAgICAg
LyogcG9pbnRlciB0byBzdGFydCBvZiB0cmFpbGVyICAgICAgICAgICAgKi8KICAgICB1bnNpZ25l
ZCBpbnQgZW5jX29jdGV0X2xlbiA9IDA7IC8qIG51bWJlciBvZiBvY3RldHMgaW4gZW5jcnlwdGVk
IHBvcnRpb24gKi8KLSAgICB1aW50OF90ICphdXRoX3RhZyA9IE5VTEw7ICAgLyogbG9jYXRpb24g
b2YgYXV0aF90YWcgd2l0aGluIHBhY2tldCAgICAgKi8KKyAgICB1aW50OF90ICphdXRoX3RhZyA9
IE5VTEw7ICAgICAgIC8qIGxvY2F0aW9uIG9mIGF1dGhfdGFnIHdpdGhpbiBwYWNrZXQgICAgICov
CiAgICAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVzOwotICAgIHVpbnQzMl90IHRhZ19sZW47Cisg
ICAgaW50IHRhZ19sZW47CisgICAgdW5zaWduZWQgaW50IHRtcF9sZW47CiAgICAgdWludDMyX3Qg
c2VxX251bTsKICAgICB2MTI4X3QgaXY7CiAgICAgdWludDMyX3QgdHNlcTsKQEAgLTM0OTIsNTAg
KzM2ODIsNDkgQEAgc3J0cF9wcm90ZWN0X3J0Y3BfYWVhZCAoc3J0cF90IGN0eCwgc3J0cF9zdHJl
YW1fY3R4X3QgKnN0cmVhbSwKICAgICAvKiBnZXQgdGFnIGxlbmd0aCBmcm9tIHN0cmVhbSBjb250
ZXh0ICovCiAgICAgdGFnX2xlbiA9IHNydHBfYXV0aF9nZXRfdGFnX2xlbmd0aChzZXNzaW9uX2tl
eXMtPnJ0Y3BfYXV0aCk7CiAKKyAgICBpZiAodXNlX21raSkgeworICAgICAgICBta2lfc2l6ZSA9
IHNlc3Npb25fa2V5cy0+bWtpX3NpemU7CisgICAgfQorCiAgICAgLyoKLSAgICAgKiBzZXQgZW5j
cnlwdGlvbiBzdGFydCBhbmQgZW5jcnlwdGlvbiBsZW5ndGggLSBpZiB3ZSdyZSBub3QKLSAgICAg
KiBwcm92aWRpbmcgY29uZmlkZW50aWFsaXR5LCBzZXQgZW5jX3N0YXJ0IHRvIE5VTEwKKyAgICAg
KiBzZXQgZW5jcnlwdGlvbiBzdGFydCwgZW5jcnlwdGlvbiBsZW5ndGgsIGFuZCB0cmFpbGVyCiAg
ICAgICovCi0gICAgZW5jX3N0YXJ0ID0gKHVpbnQzMl90KiloZHIgKyB1aW50MzJzX2luX3J0Y3Bf
aGVhZGVyOwotICAgIGVuY19vY3RldF9sZW4gPSAqcGt0X29jdGV0X2xlbiAtIG9jdGV0c19pbl9y
dGNwX2hlYWRlcjsKLQotICAgIC8qIE5PVEU6IGhkci0+bGVuZ3RoIGlzIG5vdCB1c2FibGUgLSBp
dCByZWZlcnMgdG8gb25seSB0aGUgZmlyc3QKLSAgICAgICAgICAgUlRDUCByZXBvcnQgaW4gdGhl
IGNvbXBvdW5kIHBhY2tldCEgKi8KLSAgICAvKiBOT1RFOiB0cmFpbGVyIGlzIDMyLWJpdCBhbGln
bmVkIGJlY2F1c2UgUlRDUCAncGFja2V0cycgYXJlIGFsd2F5cwotICAgICAgICAgICBtdWx0aXBs
ZXMgb2YgMzItYml0cyAoUkZDIDM1NTAgNi4xKSAqLwotICAgIHRyYWlsZXIgPSAodWludDMyX3Qq
KSgoY2hhciopZW5jX3N0YXJ0ICsgZW5jX29jdGV0X2xlbiArIHRhZ19sZW4pOworICAgIC8qIGlu
ZGV4ICYgRSAoZW5jcnlwdGlvbikgYml0IGZvbGxvdyBub3JtYWwgZGF0YS4gaGRyLT5sZW4gaXMg
dGhlIG51bWJlciBvZgorICAgICAqIHdvcmRzICgzMi1iaXQpIGluIHRoZSBub3JtYWwgcGFja2V0
IG1pbnVzIDEKKyAgICAgKi8KKyAgICAvKiBUaGlzIHNob3VsZCBwb2ludCB0cmFpbGVyIHRvIHRo
ZSB3b3JkIHBhc3QgdGhlIGVuZCBvZiB0aGUgbm9ybWFsIGRhdGEuICovCisgICAgLyogVGhpcyB3
b3VsZCBuZWVkIHRvIGJlIG1vZGlmaWVkIGZvciBvcHRpb25hbCBtaWtleSBkYXRhICovCisgICAg
LyoKKyAgICAgKiBOT1RFOiB0cmFpbGVyIGlzIDMyLWJpdCBhbGlnbmVkIGJlY2F1c2UgUlRDUCAn
cGFja2V0cycgYXJlIGFsd2F5cworICAgICAqICAgbXVsdGlwbGVzIG9mIDMyLWJpdHMgKFJGQyAz
NTUwIDYuMSkKKyAgICAgKi8KKyAgICB0cmFpbGVyID0gKHVpbnQzMl90ICopKChjaGFyICopaGRy
ICsgKnBrdF9vY3RldF9sZW4gLQorICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZW9mKHNy
dGNwX3RyYWlsZXJfdCkgLSBta2lfc2l6ZSk7CisgICAgLyoKKyAgICAgKiBXZSBwYXNzIHRoZSB0
YWcgZG93biB0byB0aGUgY2lwaGVyIHdoZW4gZG9pbmcgR0NNIG1vZGUKKyAgICAgKi8KKyAgICBl
bmNfb2N0ZXRfbGVuID0gKnBrdF9vY3RldF9sZW4gLSAob2N0ZXRzX2luX3J0Y3BfaGVhZGVyICsK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZW9mKHNydGNwX3RyYWls
ZXJfdCkgKyBta2lfc2l6ZSk7CisgICAgYXV0aF90YWcgPSAodWludDhfdCAqKWhkciArICpwa3Rf
b2N0ZXRfbGVuIC0gdGFnX2xlbiAtIG1raV9zaXplIC0KKyAgICAgICAgICAgICAgIHNpemVvZihz
cnRjcF90cmFpbGVyX3QpOwogCi0gICAgaWYgKHN0cmVhbS0+cnRjcF9zZXJ2aWNlcyAmIHNlY19z
ZXJ2X2NvbmYpIHsKLSAgICAgICAgKnRyYWlsZXIgPSBodG9ubChTUlRDUF9FX0JJVCk7IC8qIHNl
dCBlbmNyeXB0IGJpdCAqLworICAgIGlmICgqKCh1bnNpZ25lZCBjaGFyICopdHJhaWxlcikgJiBT
UlRDUF9FX0JZVEVfQklUKSB7CisgICAgICAgIGVuY19zdGFydCA9ICh1aW50MzJfdCAqKWhkciAr
IHVpbnQzMnNfaW5fcnRjcF9oZWFkZXI7CiAgICAgfSBlbHNlIHsKLSAgICAgICAgZW5jX3N0YXJ0
ID0gTlVMTDsKICAgICAgICAgZW5jX29jdGV0X2xlbiA9IDA7Ci0gICAgICAgIC8qIDAgaXMgbmV0
d29yay1vcmRlciBpbmRlcGVuZGFudCAqLwotICAgICAgICAqdHJhaWxlciA9IDB4MDAwMDAwMDA7
IC8qIHNldCBlbmNyeXB0IGJpdCAqLworICAgICAgICBlbmNfc3RhcnQgPSBOVUxMOyAvKiB0aGlz
IGluZGljYXRlcyB0aGF0IHRoZXJlJ3Mgbm8gZW5jcnlwdGlvbiAqLwogICAgIH0KIAotICAgIG1r
aV9zaXplID0gc3J0cF9pbmplY3RfbWtpKCh1aW50OF90ICopaGRyICsgKnBrdF9vY3RldF9sZW4g
KyB0YWdfbGVuICsgc2l6ZW9mKHNydGNwX3RyYWlsZXJfdCksCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgc2Vzc2lvbl9rZXlzLCB1c2VfbWtpKTsKLQotICAgIC8qCi0gICAgICogc2V0
IHRoZSBhdXRoX3RhZyBwb2ludGVyIHRvIHRoZSBwcm9wZXIgbG9jYXRpb24sIHdoaWNoIGlzIGFm
dGVyCi0gICAgICogdGhlIHBheWxvYWQsIGJ1dCBiZWZvcmUgdGhlIHRyYWlsZXIKLSAgICAgKiAo
bm90ZSB0aGF0IHNydHBjICphbHdheXMqIHByb3ZpZGVzIGF1dGhlbnRpY2F0aW9uLCB1bmxpa2Ug
c3J0cCkKLSAgICAgKi8KLSAgICAvKiBOb3RlOiBUaGlzIHdvdWxkIG5lZWQgdG8gY2hhbmdlIGZv
ciBvcHRpb25hbCBtaWtleSBkYXRhICovCi0gICAgYXV0aF90YWcgPSAodWludDhfdCopaGRyICsg
KnBrdF9vY3RldF9sZW47Ci0KICAgICAvKgotICAgICAqIGNoZWNrIHNlcXVlbmNlIG51bWJlciBm
b3Igb3ZlcnJ1bnMsIGFuZCBjb3B5IGl0IGludG8gdGhlIHBhY2tldAotICAgICAqIGlmIGl0cyB2
YWx1ZSBpc24ndCB0b28gYmlnCisgICAgICogY2hlY2sgdGhlIHNlcXVlbmNlIG51bWJlciBmb3Ig
cmVwbGF5cwogICAgICAqLwotICAgIHN0YXR1cyA9IHNydHBfcmRiX2luY3JlbWVudCgmc3RyZWFt
LT5ydGNwX3JkYik7CisgICAgLyogdGhpcyBpcyBlYXNpZXIgdGhhbiBkZWFsaW5nIHdpdGggYml0
ZmllbGQgYWNjZXNzICovCisgICAgc2VxX251bSA9IG50b2hsKCp0cmFpbGVyKSAmIFNSVENQX0lO
REVYX01BU0s7CisgICAgZGVidWdfcHJpbnQobW9kX3NydHAsICJzcnRjcCBpbmRleDogJXgiLCBz
ZXFfbnVtKTsKKyAgICBzdGF0dXMgPSBzcnRwX3JkYl9jaGVjaygmc3RyZWFtLT5ydGNwX3JkYiwg
c2VxX251bSk7CiAgICAgaWYgKHN0YXR1cykgewogICAgICAgICByZXR1cm4gc3RhdHVzOwogICAg
IH0KLSAgICBzZXFfbnVtID0gc3J0cF9yZGJfZ2V0X3ZhbHVlKCZzdHJlYW0tPnJ0Y3BfcmRiKTsK
LSAgICAqdHJhaWxlciB8PSBodG9ubChzZXFfbnVtKTsKLSAgICBkZWJ1Z19wcmludChtb2Rfc3J0
cCwgInNydGNwIGluZGV4OiAleCIsIHNlcV9udW0pOwogCiAgICAgLyoKICAgICAgKiBDYWxjdWxh
dGUgYW5kIHNldCB0aGUgSVYKQEAgLTM1NDQsOCArMzczMyw4IEBAIHNydHBfcHJvdGVjdF9ydGNw
X2FlYWQgKHNydHBfdCBjdHgsIHNydHBfc3RyZWFtX2N0eF90ICpzdHJlYW0sCiAgICAgaWYgKHN0
YXR1cykgewogICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2NpcGhlcl9mYWlsOwogICAg
IH0KLSAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9zZXRfaXYoc2Vzc2lvbl9rZXlzLT5ydGNwX2Np
cGhlciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHVpbnQ4X3QqKSZpdiwgc3J0
cF9kaXJlY3Rpb25fZW5jcnlwdCk7CisgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfc2V0X2l2KHNl
c3Npb25fa2V5cy0+cnRjcF9jaXBoZXIsICh1aW50OF90ICopJml2LAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBzcnRwX2RpcmVjdGlvbl9kZWNyeXB0KTsKICAgICBpZiAoc3RhdHVz
KSB7CiAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfY2lwaGVyX2ZhaWw7CiAgICAgfQpA
QCAtMzU1OCwxMCArMzc0NywxMCBAQCBzcnRwX3Byb3RlY3RfcnRjcF9hZWFkIChzcnRwX3QgY3R4
LCBzcnRwX3N0cmVhbV9jdHhfdCAqc3RyZWFtLAogICAgICAgICAgKiBJZiBwYXlsb2FkIGVuY3J5
cHRpb24gaXMgZW5hYmxlZCwgdGhlbiB0aGUgQUFEIGNvbnNpc3Qgb2YKICAgICAgICAgICogdGhl
IFJUQ1AgaGVhZGVyIGFuZCB0aGUgc2VxIyBhdCB0aGUgZW5kIG9mIHRoZSBwYWNrZXQKICAgICAg
ICAgICovCi0gICAgICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3NldF9hYWQoc2Vzc2lvbl9rZXlz
LT5ydGNwX2NpcGhlciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICh1aW50OF90
KiloZHIsIG9jdGV0c19pbl9ydGNwX2hlYWRlcik7CisgICAgICAgIHN0YXR1cyA9IHNydHBfY2lw
aGVyX3NldF9hYWQoc2Vzc2lvbl9rZXlzLT5ydGNwX2NpcGhlciwgKHVpbnQ4X3QgKiloZHIsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb2N0ZXRzX2luX3J0Y3BfaGVhZGVy
KTsKICAgICAgICAgaWYgKHN0YXR1cykgewotICAgICAgICAgICAgcmV0dXJuICggc3J0cF9lcnJf
c3RhdHVzX2NpcGhlcl9mYWlsKTsKKyAgICAgICAgICAgIHJldHVybiAoc3J0cF9lcnJfc3RhdHVz
X2NpcGhlcl9mYWlsKTsKICAgICAgICAgfQogICAgIH0gZWxzZSB7CiAgICAgICAgIC8qCkBAIC0z
NTY5LDU5ICszNzU4LDMyMiBAQCBzcnRwX3Byb3RlY3RfcnRjcF9hZWFkIChzcnRwX3QgY3R4LCBz
cnRwX3N0cmVhbV9jdHhfdCAqc3RyZWFtLAogICAgICAgICAgKiB0aGUgZW50aXJlIHBhY2tldCBh
cyBkZXNjcmliZWQgaW4gUkZDIDc3MTQgKFNlY3Rpb24gOS4zLiBEYXRhCiAgICAgICAgICAqIFR5
cGVzIGluIFVuZW5jcnlwdGVkIFNSVENQIENvbXBvdW5kIFBhY2tldHMpCiAgICAgICAgICAqLwot
ICAgICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9zZXRfYWFkKHNlc3Npb25fa2V5cy0+cnRjcF9j
aXBoZXIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAodWludDhfdCopaGRyLCAq
cGt0X29jdGV0X2xlbik7CisgICAgICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3NldF9hYWQoCisg
ICAgICAgICAgICBzZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyLCAodWludDhfdCAqKWhkciwKKyAg
ICAgICAgICAgICgqcGt0X29jdGV0X2xlbiAtIHRhZ19sZW4gLSBzaXplb2Yoc3J0Y3BfdHJhaWxl
cl90KSAtIG1raV9zaXplKSk7CiAgICAgICAgIGlmIChzdGF0dXMpIHsKLSAgICAgICAgICAgIHJl
dHVybiAoIHNydHBfZXJyX3N0YXR1c19jaXBoZXJfZmFpbCk7CisgICAgICAgICAgICByZXR1cm4g
KHNydHBfZXJyX3N0YXR1c19jaXBoZXJfZmFpbCk7CiAgICAgICAgIH0KICAgICB9CisKICAgICAv
KgogICAgICAqIFByb2Nlc3MgdGhlIHNlcXVlbmNlIyBhcyBBQUQKICAgICAgKi8KICAgICB0c2Vx
ID0gKnRyYWlsZXI7Ci0gICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfc2V0X2FhZChzZXNzaW9uX2tl
eXMtPnJ0Y3BfY2lwaGVyLCAodWludDhfdCopJnRzZXEsCisgICAgc3RhdHVzID0gc3J0cF9jaXBo
ZXJfc2V0X2FhZChzZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyLCAodWludDhfdCAqKSZ0c2VxLAog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZW9mKHNydGNwX3RyYWlsZXJfdCkp
OwogICAgIGlmIChzdGF0dXMpIHsKLSAgICAgICAgcmV0dXJuICggc3J0cF9lcnJfc3RhdHVzX2Np
cGhlcl9mYWlsKTsKKyAgICAgICAgcmV0dXJuIChzcnRwX2Vycl9zdGF0dXNfY2lwaGVyX2ZhaWwp
OwogICAgIH0KIAotICAgIC8qIGlmIHdlJ3JlIGVuY3J5cHRpbmcsIGV4b3Iga2V5c3RyZWFtIGlu
dG8gdGhlIG1lc3NhZ2UgKi8KKyAgICAvKiBpZiB3ZSdyZSBkZWNyeXB0aW5nLCBleG9yIGtleXN0
cmVhbSBpbnRvIHRoZSBtZXNzYWdlICovCiAgICAgaWYgKGVuY19zdGFydCkgewotICAgICAgICBz
dGF0dXMgPSBzcnRwX2NpcGhlcl9lbmNyeXB0KHNlc3Npb25fa2V5cy0+cnRjcF9jaXBoZXIsCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHVpbnQ4X3QqKWVuY19zdGFydCwg
JmVuY19vY3RldF9sZW4pOworICAgICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9kZWNyeXB0KHNl
c3Npb25fa2V5cy0+cnRjcF9jaXBoZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgKHVpbnQ4X3QgKillbmNfc3RhcnQsICZlbmNfb2N0ZXRfbGVuKTsKICAgICAgICAgaWYg
KHN0YXR1cykgewotICAgICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19jaXBoZXJfZmFp
bDsKKyAgICAgICAgICAgIHJldHVybiBzdGF0dXM7CiAgICAgICAgIH0KKyAgICB9IGVsc2Ugewog
ICAgICAgICAvKgotICAgICAgICAgKiBHZXQgdGhlIHRhZyBhbmQgYXBwZW5kIHRoYXQgdG8gdGhl
IG91dHB1dAorICAgICAgICAgKiBTdGlsbCBuZWVkIHRvIHJ1biB0aGUgY2lwaGVyIHRvIGNoZWNr
IHRoZSB0YWcKICAgICAgICAgICovCi0gICAgICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX2dldF90
YWcoc2Vzc2lvbl9rZXlzLT5ydGNwX2NpcGhlciwgKHVpbnQ4X3QqKWF1dGhfdGFnLAotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZ0YWdfbGVuKTsKKyAgICAgICAgdG1wX2xl
biA9IHRhZ19sZW47CisgICAgICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX2RlY3J5cHQoc2Vzc2lv
bl9rZXlzLT5ydGNwX2NpcGhlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAodWludDhfdCAqKWF1dGhfdGFnLCAmdG1wX2xlbik7CiAgICAgICAgIGlmIChzdGF0dXMpIHsK
LSAgICAgICAgICAgIHJldHVybiAoIHNydHBfZXJyX3N0YXR1c19jaXBoZXJfZmFpbCk7CisgICAg
ICAgICAgICByZXR1cm4gc3RhdHVzOwogICAgICAgICB9Ci0gICAgICAgIGVuY19vY3RldF9sZW4g
Kz0gdGFnX2xlbjsKLSAgICB9IGVsc2UgeworICAgIH0KKworICAgIC8qIGRlY3JlYXNlIHRoZSBw
YWNrZXQgbGVuZ3RoIGJ5IHRoZSBsZW5ndGggb2YgdGhlIGF1dGggdGFnIGFuZCBzZXFfbnVtKi8K
KyAgICAqcGt0X29jdGV0X2xlbiAtPSAodGFnX2xlbiArIHNpemVvZihzcnRjcF90cmFpbGVyX3Qp
ICsgbWtpX3NpemUpOworCisgICAgLyoKKyAgICAgKiB2ZXJpZnkgdGhhdCBzdHJlYW0gaXMgZm9y
IHJlY2VpdmVkIHRyYWZmaWMgLSB0aGlzIGNoZWNrIHdpbGwKKyAgICAgKiBkZXRlY3QgU1NSQyBj
b2xsaXNpb25zLCBzaW5jZSBhIHN0cmVhbSB0aGF0IGFwcGVhcnMgaW4gYm90aAorICAgICAqIHNy
dHBfcHJvdGVjdCgpIGFuZCBzcnRwX3VucHJvdGVjdCgpIHdpbGwgZmFpbCB0aGlzIHRlc3QgaW4g
b25lIG9mCisgICAgICogdGhvc2UgZnVuY3Rpb25zLgorICAgICAqCisgICAgICogd2UgZG8gdGhp
cyBjaGVjayAqYWZ0ZXIqIHRoZSBhdXRoZW50aWNhdGlvbiBjaGVjaywgc28gdGhhdCB0aGUKKyAg
ICAgKiBsYXR0ZXIgY2hlY2sgd2lsbCBjYXRjaCBhbnkgYXR0ZW1wdHMgdG8gZm9vbCB1cyBpbnRv
IHRoaW5raW5nCisgICAgICogdGhhdCB3ZSd2ZSBnb3QgYSBjb2xsaXNpb24KKyAgICAgKi8KKyAg
ICBpZiAoc3RyZWFtLT5kaXJlY3Rpb24gIT0gZGlyX3NydHBfcmVjZWl2ZXIpIHsKKyAgICAgICAg
aWYgKHN0cmVhbS0+ZGlyZWN0aW9uID09IGRpcl91bmtub3duKSB7CisgICAgICAgICAgICBzdHJl
YW0tPmRpcmVjdGlvbiA9IGRpcl9zcnRwX3JlY2VpdmVyOworICAgICAgICB9IGVsc2UgeworICAg
ICAgICAgICAgc3J0cF9oYW5kbGVfZXZlbnQoY3R4LCBzdHJlYW0sIGV2ZW50X3NzcmNfY29sbGlz
aW9uKTsKKyAgICAgICAgfQorICAgIH0KKworICAgIC8qCisgICAgICogaWYgdGhlIHN0cmVhbSBp
cyBhICdwcm92aXNpb25hbCcgb25lLCBpbiB3aGljaCB0aGUgdGVtcGxhdGUgY29udGV4dAorICAg
ICAqIGlzIHVzZWQsIHRoZW4gd2UgbmVlZCB0byBhbGxvY2F0ZSBhIG5ldyBzdHJlYW0gYXQgdGhp
cyBwb2ludCwgc2luY2UKKyAgICAgKiB0aGUgYXV0aGVudGljYXRpb24gcGFzc2VkCisgICAgICov
CisgICAgaWYgKHN0cmVhbSA9PSBjdHgtPnN0cmVhbV90ZW1wbGF0ZSkgeworICAgICAgICBzcnRw
X3N0cmVhbV9jdHhfdCAqbmV3X3N0cmVhbTsKKwogICAgICAgICAvKgotICAgICAgICAgKiBFdmVu
IHRob3VnaCB3ZSdyZSBub3QgZW5jcnlwdGluZyB0aGUgcGF5bG9hZCwgd2UgbmVlZAotICAgICAg
ICAgKiB0byBydW4gdGhlIGNpcGhlciB0byBnZXQgdGhlIGF1dGggdGFnLgorICAgICAgICAgKiBh
bGxvY2F0ZSBhbmQgaW5pdGlhbGl6ZSBhIG5ldyBzdHJlYW0KKyAgICAgICAgICoKKyAgICAgICAg
ICogbm90ZSB0aGF0IHdlIGluZGljYXRlIGZhaWx1cmUgaWYgd2UgY2FuJ3QgYWxsb2NhdGUgdGhl
IG5ldworICAgICAgICAgKiBzdHJlYW0sIGFuZCBzb21lIGltcGxlbWVudGF0aW9ucyB3aWxsIHdh
bnQgdG8gbm90IHJldHVybgorICAgICAgICAgKiBmYWlsdXJlIGhlcmUKICAgICAgICAgICovCi0g
ICAgICAgIHVuc2lnbmVkIGludCBub2xlbiA9IDA7Ci0gICAgICAgIHN0YXR1cyA9IHNydHBfY2lw
aGVyX2VuY3J5cHQoc2Vzc2lvbl9rZXlzLT5ydGNwX2NpcGhlciwgTlVMTCwgJm5vbGVuKTsKKyAg
ICAgICAgc3RhdHVzID0KKyAgICAgICAgICAgIHNydHBfc3RyZWFtX2Nsb25lKGN0eC0+c3RyZWFt
X3RlbXBsYXRlLCBoZHItPnNzcmMsICZuZXdfc3RyZWFtKTsKICAgICAgICAgaWYgKHN0YXR1cykg
eworICAgICAgICAgICAgcmV0dXJuIHN0YXR1czsKKyAgICAgICAgfQorCisgICAgICAgIC8qIGFk
ZCBuZXcgc3RyZWFtIHRvIHRoZSBoZWFkIG9mIHRoZSBzdHJlYW1fbGlzdCAqLworICAgICAgICBu
ZXdfc3RyZWFtLT5uZXh0ID0gY3R4LT5zdHJlYW1fbGlzdDsKKyAgICAgICAgY3R4LT5zdHJlYW1f
bGlzdCA9IG5ld19zdHJlYW07CisKKyAgICAgICAgLyogc2V0IHN0cmVhbSAodGhlIHBvaW50ZXIg
dXNlZCBpbiB0aGlzIGZ1bmN0aW9uKSAqLworICAgICAgICBzdHJlYW0gPSBuZXdfc3RyZWFtOwor
ICAgIH0KKworICAgIC8qIHdlJ3ZlIHBhc3NlZCB0aGUgYXV0aGVudGljYXRpb24gY2hlY2ssIHNv
IGFkZCBzZXFfbnVtIHRvIHRoZSByZGIgKi8KKyAgICBzcnRwX3JkYl9hZGRfaW5kZXgoJnN0cmVh
bS0+cnRjcF9yZGIsIHNlcV9udW0pOworCisgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsK
K30KKworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9wcm90ZWN0X3J0Y3Aoc3J0cF90IGN0eCwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZvaWQgKnJ0Y3BfaGRyLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50ICpwa3Rfb2N0ZXRfbGVuKQoreworICAg
IHJldHVybiBzcnRwX3Byb3RlY3RfcnRjcF9ta2koY3R4LCBydGNwX2hkciwgcGt0X29jdGV0X2xl
biwgMCwgMCk7Cit9CisKK3NydHBfZXJyX3N0YXR1c190IHNydHBfcHJvdGVjdF9ydGNwX21raShz
cnRwX3QgY3R4LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZvaWQg
KnJ0Y3BfaGRyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCAq
cGt0X29jdGV0X2xlbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1
bnNpZ25lZCBpbnQgdXNlX21raSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB1bnNpZ25lZCBpbnQgbWtpX2luZGV4KQoreworICAgIHNydGNwX2hkcl90ICpoZHIgPSAo
c3J0Y3BfaGRyX3QgKilydGNwX2hkcjsKKyAgICB1aW50MzJfdCAqZW5jX3N0YXJ0OyAgICAgICAg
ICAgIC8qIHBvaW50ZXIgdG8gc3RhcnQgb2YgZW5jcnlwdGVkIHBvcnRpb24gICovCisgICAgdWlu
dDMyX3QgKmF1dGhfc3RhcnQ7ICAgICAgICAgICAvKiBwb2ludGVyIHRvIHN0YXJ0IG9mIGF1dGgu
IHBvcnRpb24gICAgICAqLworICAgIHVpbnQzMl90ICp0cmFpbGVyOyAgICAgICAgICAgICAgLyog
cG9pbnRlciB0byBzdGFydCBvZiB0cmFpbGVyICAgICAgICAgICAgKi8KKyAgICB1bnNpZ25lZCBp
bnQgZW5jX29jdGV0X2xlbiA9IDA7IC8qIG51bWJlciBvZiBvY3RldHMgaW4gZW5jcnlwdGVkIHBv
cnRpb24gKi8KKyAgICB1aW50OF90ICphdXRoX3RhZyA9IE5VTEw7ICAgICAgIC8qIGxvY2F0aW9u
IG9mIGF1dGhfdGFnIHdpdGhpbiBwYWNrZXQgICAgICovCisgICAgc3J0cF9lcnJfc3RhdHVzX3Qg
c3RhdHVzOworICAgIGludCB0YWdfbGVuOworICAgIHNydHBfc3RyZWFtX2N0eF90ICpzdHJlYW07
CisgICAgdWludDMyX3QgcHJlZml4X2xlbjsKKyAgICB1aW50MzJfdCBzZXFfbnVtOworICAgIHVu
c2lnbmVkIGludCBta2lfc2l6ZSA9IDA7CisgICAgc3J0cF9zZXNzaW9uX2tleXNfdCAqc2Vzc2lv
bl9rZXlzID0gTlVMTDsKKworICAgIC8qIHdlIGFzc3VtZSB0aGUgaGRyIGlzIDMyLWJpdCBhbGln
bmVkIHRvIHN0YXJ0ICovCisKKyAgICAvKiBjaGVjayB0aGUgcGFja2V0IGxlbmd0aCAtIGl0IG11
c3QgYXQgbGVhc3QgY29udGFpbiBhIGZ1bGwgaGVhZGVyICovCisgICAgaWYgKCpwa3Rfb2N0ZXRf
bGVuIDwgb2N0ZXRzX2luX3J0Y3BfaGVhZGVyKQorICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3Rh
dHVzX2JhZF9wYXJhbTsKKworICAgIC8qCisgICAgICogbG9vayB1cCBzc3JjIGluIHNydHBfc3Ry
ZWFtIGxpc3QsIGFuZCBwcm9jZXNzIHRoZSBwYWNrZXQgd2l0aAorICAgICAqIHRoZSBhcHByb3By
aWF0ZSBzdHJlYW0uICBpZiB3ZSBoYXZlbid0IHNlZW4gdGhpcyBzdHJlYW0gYmVmb3JlLAorICAg
ICAqIHRoZXJlJ3Mgb25seSBvbmUga2V5IGZvciB0aGlzIHNydHBfc2Vzc2lvbiwgYW5kIHRoZSBj
aXBoZXIKKyAgICAgKiBzdXBwb3J0cyBrZXktc2hhcmluZywgdGhlbiB3ZSBhc3N1bWUgdGhhdCBh
IG5ldyBzdHJlYW0gdXNpbmcKKyAgICAgKiB0aGF0IGtleSBoYXMganVzdCBzdGFydGVkIHVwCisg
ICAgICovCisgICAgc3RyZWFtID0gc3J0cF9nZXRfc3RyZWFtKGN0eCwgaGRyLT5zc3JjKTsKKyAg
ICBpZiAoc3RyZWFtID09IE5VTEwpIHsKKyAgICAgICAgaWYgKGN0eC0+c3RyZWFtX3RlbXBsYXRl
ICE9IE5VTEwpIHsKKyAgICAgICAgICAgIHNydHBfc3RyZWFtX2N0eF90ICpuZXdfc3RyZWFtOwor
CisgICAgICAgICAgICAvKiBhbGxvY2F0ZSBhbmQgaW5pdGlhbGl6ZSBhIG5ldyBzdHJlYW0gKi8K
KyAgICAgICAgICAgIHN0YXR1cyA9CisgICAgICAgICAgICAgICAgc3J0cF9zdHJlYW1fY2xvbmUo
Y3R4LT5zdHJlYW1fdGVtcGxhdGUsIGhkci0+c3NyYywgJm5ld19zdHJlYW0pOworICAgICAgICAg
ICAgaWYgKHN0YXR1cykKKyAgICAgICAgICAgICAgICByZXR1cm4gc3RhdHVzOworCisgICAgICAg
ICAgICAvKiBhZGQgbmV3IHN0cmVhbSB0byB0aGUgaGVhZCBvZiB0aGUgc3RyZWFtX2xpc3QgKi8K
KyAgICAgICAgICAgIG5ld19zdHJlYW0tPm5leHQgPSBjdHgtPnN0cmVhbV9saXN0OworICAgICAg
ICAgICAgY3R4LT5zdHJlYW1fbGlzdCA9IG5ld19zdHJlYW07CisKKyAgICAgICAgICAgIC8qIHNl
dCBzdHJlYW0gKHRoZSBwb2ludGVyIHVzZWQgaW4gdGhpcyBmdW5jdGlvbikgKi8KKyAgICAgICAg
ICAgIHN0cmVhbSA9IG5ld19zdHJlYW07CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAv
KiBubyB0ZW1wbGF0ZSBzdHJlYW0sIHNvIHdlIHJldHVybiBhbiBlcnJvciAqLworICAgICAgICAg
ICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19ub19jdHg7CisgICAgICAgIH0KKyAgICB9CisKKyAg
ICAvKgorICAgICAqIHZlcmlmeSB0aGF0IHN0cmVhbSBpcyBmb3Igc2VuZGluZyB0cmFmZmljIC0g
dGhpcyBjaGVjayB3aWxsCisgICAgICogZGV0ZWN0IFNTUkMgY29sbGlzaW9ucywgc2luY2UgYSBz
dHJlYW0gdGhhdCBhcHBlYXJzIGluIGJvdGgKKyAgICAgKiBzcnRwX3Byb3RlY3QoKSBhbmQgc3J0
cF91bnByb3RlY3QoKSB3aWxsIGZhaWwgdGhpcyB0ZXN0IGluIG9uZSBvZgorICAgICAqIHRob3Nl
IGZ1bmN0aW9ucy4KKyAgICAgKi8KKyAgICBpZiAoc3RyZWFtLT5kaXJlY3Rpb24gIT0gZGlyX3Ny
dHBfc2VuZGVyKSB7CisgICAgICAgIGlmIChzdHJlYW0tPmRpcmVjdGlvbiA9PSBkaXJfdW5rbm93
bikgeworICAgICAgICAgICAgc3RyZWFtLT5kaXJlY3Rpb24gPSBkaXJfc3J0cF9zZW5kZXI7Cisg
ICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICBzcnRwX2hhbmRsZV9ldmVudChjdHgsIHN0cmVh
bSwgZXZlbnRfc3NyY19jb2xsaXNpb24pOworICAgICAgICB9CisgICAgfQorCisgICAgc2Vzc2lv
bl9rZXlzID0KKyAgICAgICAgc3J0cF9nZXRfc2Vzc2lvbl9rZXlzX3dpdGhfbWtpX2luZGV4KHN0
cmVhbSwgdXNlX21raSwgbWtpX2luZGV4KTsKKworICAgIGlmIChzZXNzaW9uX2tleXMgPT0gTlVM
TCkKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfbWtpOworCisgICAgLyoKKyAg
ICAgKiBDaGVjayBpZiB0aGlzIGlzIGFuIEFFQUQgc3RyZWFtIChHQ00gbW9kZSkuICBJZiBzbywg
dGhlbiBkaXNwYXRjaAorICAgICAqIHRoZSByZXF1ZXN0IHRvIG91ciBBRUFEIGhhbmRsZXIuCisg
ICAgICovCisgICAgaWYgKHNlc3Npb25fa2V5cy0+cnRwX2NpcGhlci0+YWxnb3JpdGhtID09IFNS
VFBfQUVTX0dDTV8xMjggfHwKKyAgICAgICAgc2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVyLT5hbGdv
cml0aG0gPT0gU1JUUF9BRVNfR0NNXzI1NikgeworICAgICAgICByZXR1cm4gc3J0cF9wcm90ZWN0
X3J0Y3BfYWVhZChjdHgsIHN0cmVhbSwgcnRjcF9oZHIsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICh1bnNpZ25lZCBpbnQgKilwa3Rfb2N0ZXRfbGVuLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXNzaW9uX2tleXMsIHVzZV9ta2kpOworICAg
IH0KKworICAgIC8qIGdldCB0YWcgbGVuZ3RoIGZyb20gc3RyZWFtIGNvbnRleHQgKi8KKyAgICB0
YWdfbGVuID0gc3J0cF9hdXRoX2dldF90YWdfbGVuZ3RoKHNlc3Npb25fa2V5cy0+cnRjcF9hdXRo
KTsKKworICAgIC8qCisgICAgICogc2V0IGVuY3J5cHRpb24gc3RhcnQgYW5kIGVuY3J5cHRpb24g
bGVuZ3RoIC0gaWYgd2UncmUgbm90CisgICAgICogcHJvdmlkaW5nIGNvbmZpZGVudGlhbGl0eSwg
c2V0IGVuY19zdGFydCB0byBOVUxMCisgICAgICovCisgICAgZW5jX3N0YXJ0ID0gKHVpbnQzMl90
ICopaGRyICsgdWludDMyc19pbl9ydGNwX2hlYWRlcjsKKyAgICBlbmNfb2N0ZXRfbGVuID0gKnBr
dF9vY3RldF9sZW4gLSBvY3RldHNfaW5fcnRjcF9oZWFkZXI7CisKKyAgICAvKiBhbGwgb2YgdGhl
IHBhY2tldCwgZXhjZXB0IHRoZSBoZWFkZXIsIGdldHMgZW5jcnlwdGVkICovCisgICAgLyoKKyAg
ICAgKiBOT1RFOiBoZHItPmxlbmd0aCBpcyBub3QgdXNhYmxlIC0gaXQgcmVmZXJzIHRvIG9ubHkg
dGhlIGZpcnN0IFJUQ1AgcmVwb3J0CisgICAgICogaW4gdGhlIGNvbXBvdW5kIHBhY2tldCEKKyAg
ICAgKi8KKyAgICAvKgorICAgICAqIE5PVEU6IHRyYWlsZXIgaXMgMzItYml0IGFsaWduZWQgYmVj
YXVzZSBSVENQICdwYWNrZXRzJyBhcmUgYWx3YXlzCisgICAgICogbXVsdGlwbGVzIG9mIDMyLWJp
dHMgKFJGQyAzNTUwIDYuMSkKKyAgICAgKi8KKyAgICB0cmFpbGVyID0gKHVpbnQzMl90ICopKChj
aGFyICopZW5jX3N0YXJ0ICsgZW5jX29jdGV0X2xlbik7CisKKyAgICBpZiAoc3RyZWFtLT5ydGNw
X3NlcnZpY2VzICYgc2VjX3NlcnZfY29uZikgeworICAgICAgICAqdHJhaWxlciA9IGh0b25sKFNS
VENQX0VfQklUKTsgLyogc2V0IGVuY3J5cHQgYml0ICovCisgICAgfSBlbHNlIHsKKyAgICAgICAg
ZW5jX3N0YXJ0ID0gTlVMTDsKKyAgICAgICAgZW5jX29jdGV0X2xlbiA9IDA7CisgICAgICAgIC8q
IDAgaXMgbmV0d29yay1vcmRlciBpbmRlcGVuZGFudCAqLworICAgICAgICAqdHJhaWxlciA9IDB4
MDAwMDAwMDA7IC8qIHNldCBlbmNyeXB0IGJpdCAqLworICAgIH0KKworICAgIG1raV9zaXplID0g
c3J0cF9pbmplY3RfbWtpKCh1aW50OF90ICopaGRyICsgKnBrdF9vY3RldF9sZW4gKworICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplb2Yoc3J0Y3BfdHJhaWxlcl90KSwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXNzaW9uX2tleXMsIHVzZV9ta2kpOworCisg
ICAgLyoKKyAgICAgKiBzZXQgdGhlIGF1dGhfc3RhcnQgYW5kIGF1dGhfdGFnIHBvaW50ZXJzIHRv
IHRoZSBwcm9wZXIgbG9jYXRpb25zCisgICAgICogKG5vdGUgdGhhdCBzcnRwYyAqYWx3YXlzKiBw
cm92aWRlcyBhdXRoZW50aWNhdGlvbiwgdW5saWtlIHNydHApCisgICAgICovCisgICAgLyogTm90
ZTogVGhpcyB3b3VsZCBuZWVkIHRvIGNoYW5nZSBmb3Igb3B0aW9uYWwgbWlrZXkgZGF0YSAqLwor
ICAgIGF1dGhfc3RhcnQgPSAodWludDMyX3QgKiloZHI7CisgICAgYXV0aF90YWcgPQorICAgICAg
ICAodWludDhfdCAqKWhkciArICpwa3Rfb2N0ZXRfbGVuICsgc2l6ZW9mKHNydGNwX3RyYWlsZXJf
dCkgKyBta2lfc2l6ZTsKKworICAgIC8qIHBlcmZvcm0gRUtUIHByb2Nlc3NpbmcgaWYgbmVlZGVk
ICovCisgICAgc3J0cF9la3Rfd3JpdGVfZGF0YShzdHJlYW0tPmVrdCwgYXV0aF90YWcsIHRhZ19s
ZW4sIHBrdF9vY3RldF9sZW4sCisgICAgICAgICAgICAgICAgICAgICAgICBzcnRwX3JkYnhfZ2V0
X3BhY2tldF9pbmRleCgmc3RyZWFtLT5ydHBfcmRieCkpOworCisgICAgLyoKKyAgICAgKiBjaGVj
ayBzZXF1ZW5jZSBudW1iZXIgZm9yIG92ZXJydW5zLCBhbmQgY29weSBpdCBpbnRvIHRoZSBwYWNr
ZXQKKyAgICAgKiBpZiBpdHMgdmFsdWUgaXNuJ3QgdG9vIGJpZworICAgICAqLworICAgIHN0YXR1
cyA9IHNydHBfcmRiX2luY3JlbWVudCgmc3RyZWFtLT5ydGNwX3JkYik7CisgICAgaWYgKHN0YXR1
cykKKyAgICAgICAgcmV0dXJuIHN0YXR1czsKKyAgICBzZXFfbnVtID0gc3J0cF9yZGJfZ2V0X3Zh
bHVlKCZzdHJlYW0tPnJ0Y3BfcmRiKTsKKyAgICAqdHJhaWxlciB8PSBodG9ubChzZXFfbnVtKTsK
KyAgICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgInNydGNwIGluZGV4OiAleCIsIHNlcV9udW0pOwor
CisgICAgLyoKKyAgICAgKiBpZiB3ZSdyZSB1c2luZyByaW5kYWVsIGNvdW50ZXIgbW9kZSwgc2V0
IG5vbmNlIGFuZCBzZXEKKyAgICAgKi8KKyAgICBpZiAoc2Vzc2lvbl9rZXlzLT5ydGNwX2NpcGhl
ci0+dHlwZS0+aWQgPT0gU1JUUF9BRVNfSUNNXzEyOCB8fAorICAgICAgICBzZXNzaW9uX2tleXMt
PnJ0Y3BfY2lwaGVyLT50eXBlLT5pZCA9PSBTUlRQX0FFU19JQ01fMTkyIHx8CisgICAgICAgIHNl
c3Npb25fa2V5cy0+cnRjcF9jaXBoZXItPnR5cGUtPmlkID09IFNSVFBfQUVTX0lDTV8yNTYpIHsK
KyAgICAgICAgdjEyOF90IGl2OworCisgICAgICAgIGl2LnYzMlswXSA9IDA7CisgICAgICAgIGl2
LnYzMlsxXSA9IGhkci0+c3NyYzsgLyogc3RpbGwgaW4gbmV0d29yayBvcmRlciEgKi8KKyAgICAg
ICAgaXYudjMyWzJdID0gaHRvbmwoc2VxX251bSA+PiAxNik7CisgICAgICAgIGl2LnYzMlszXSA9
IGh0b25sKHNlcV9udW0gPDwgMTYpOworICAgICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9zZXRf
aXYoc2Vzc2lvbl9rZXlzLT5ydGNwX2NpcGhlciwgKHVpbnQ4X3QgKikmaXYsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBzcnRwX2RpcmVjdGlvbl9lbmNyeXB0KTsKKworICAg
IH0gZWxzZSB7CisgICAgICAgIHYxMjhfdCBpdjsKKworICAgICAgICAvKiBvdGhlcndpc2UsIGp1
c3Qgc2V0IHRoZSBpbmRleCB0byBzZXFfbnVtICovCisgICAgICAgIGl2LnYzMlswXSA9IDA7Cisg
ICAgICAgIGl2LnYzMlsxXSA9IDA7CisgICAgICAgIGl2LnYzMlsyXSA9IDA7CisgICAgICAgIGl2
LnYzMlszXSA9IGh0b25sKHNlcV9udW0pOworICAgICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9z
ZXRfaXYoc2Vzc2lvbl9rZXlzLT5ydGNwX2NpcGhlciwgKHVpbnQ4X3QgKikmaXYsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcnRwX2RpcmVjdGlvbl9lbmNyeXB0KTsKKyAg
ICB9CisgICAgaWYgKHN0YXR1cykKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19jaXBo
ZXJfZmFpbDsKKworICAgIC8qCisgICAgICogaWYgd2UncmUgYXV0aGVudGljYXRpbmcgdXNpbmcg
YSB1bml2ZXJzYWwgaGFzaCwgcHV0IHRoZSBrZXlzdHJlYW0KKyAgICAgKiBwcmVmaXggaW50byB0
aGUgYXV0aGVudGljYXRpb24gdGFnCisgICAgICovCisKKyAgICAvKiBpZiBhdXRoX3N0YXJ0IGlz
IG5vbi1udWxsLCB0aGVuIHB1dCBrZXlzdHJlYW0gaW50byB0YWcgICovCisgICAgaWYgKGF1dGhf
c3RhcnQpIHsKKyAgICAgICAgLyogcHV0IGtleXN0cmVhbSBwcmVmaXggaW50byBhdXRoX3RhZyAq
LworICAgICAgICBwcmVmaXhfbGVuID0gc3J0cF9hdXRoX2dldF9wcmVmaXhfbGVuZ3RoKHNlc3Np
b25fa2V5cy0+cnRjcF9hdXRoKTsKKyAgICAgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfb3V0cHV0
KHNlc3Npb25fa2V5cy0+cnRjcF9jaXBoZXIsIGF1dGhfdGFnLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgJnByZWZpeF9sZW4pOworCisgICAgICAgIGRlYnVnX3ByaW50KG1v
ZF9zcnRwLCAia2V5c3RyZWFtIHByZWZpeDogJXMiLAorICAgICAgICAgICAgICAgICAgICBzcnRw
X29jdGV0X3N0cmluZ19oZXhfc3RyaW5nKGF1dGhfdGFnLCBwcmVmaXhfbGVuKSk7CisKKyAgICAg
ICAgaWYgKHN0YXR1cykKKyAgICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfY2lwaGVy
X2ZhaWw7CisgICAgfQorCisgICAgLyogaWYgd2UncmUgZW5jcnlwdGluZywgZXhvciBrZXlzdHJl
YW0gaW50byB0aGUgbWVzc2FnZSAqLworICAgIGlmIChlbmNfc3RhcnQpIHsKKyAgICAgICAgc3Rh
dHVzID0gc3J0cF9jaXBoZXJfZW5jcnlwdChzZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICh1aW50OF90ICopZW5jX3N0YXJ0LCAm
ZW5jX29jdGV0X2xlbik7CisgICAgICAgIGlmIChzdGF0dXMpCiAgICAgICAgICAgICByZXR1cm4g
c3J0cF9lcnJfc3RhdHVzX2NpcGhlcl9mYWlsOwotICAgICAgICB9Ci0gICAgICAgIC8qCi0gICAg
ICAgICAqIEdldCB0aGUgdGFnIGFuZCBhcHBlbmQgdGhhdCB0byB0aGUgb3V0cHV0Ci0gICAgICAg
ICAqLwotICAgICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9nZXRfdGFnKHNlc3Npb25fa2V5cy0+
cnRjcF9jaXBoZXIsICh1aW50OF90KilhdXRoX3RhZywKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAmdGFnX2xlbik7Ci0gICAgICAgIGlmIChzdGF0dXMpIHsKLSAgICAgICAg
ICAgIHJldHVybiAoIHNydHBfZXJyX3N0YXR1c19jaXBoZXJfZmFpbCk7Ci0gICAgICAgIH0KLSAg
ICAgICAgZW5jX29jdGV0X2xlbiArPSB0YWdfbGVuOwogICAgIH0KIAorICAgIC8qIGluaXRpYWxp
emUgYXV0aCBmdW5jIGNvbnRleHQgKi8KKyAgICBzcnRwX2F1dGhfc3RhcnQoc2Vzc2lvbl9rZXlz
LT5ydGNwX2F1dGgpOworCisgICAgLyoKKyAgICAgKiBydW4gYXV0aCBmdW5jIG92ZXIgcGFja2V0
IChpbmNsdWRpbmcgdHJhaWxlciksIGFuZCB3cml0ZSB0aGUKKyAgICAgKiByZXN1bHQgYXQgYXV0
aF90YWcKKyAgICAgKi8KKyAgICBzdGF0dXMgPQorICAgICAgICBzcnRwX2F1dGhfY29tcHV0ZShz
ZXNzaW9uX2tleXMtPnJ0Y3BfYXV0aCwgKHVpbnQ4X3QgKilhdXRoX3N0YXJ0LAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAoKnBrdF9vY3RldF9sZW4pICsgc2l6ZW9mKHNydGNwX3RyYWlsZXJf
dCksIGF1dGhfdGFnKTsKKyAgICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgInNydGNwIGF1dGggdGFn
OiAgICAlcyIsCisgICAgICAgICAgICAgICAgc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZyhh
dXRoX3RhZywgdGFnX2xlbikpOworICAgIGlmIChzdGF0dXMpCisgICAgICAgIHJldHVybiBzcnRw
X2Vycl9zdGF0dXNfYXV0aF9mYWlsOworCiAgICAgLyogaW5jcmVhc2UgdGhlIHBhY2tldCBsZW5n
dGggYnkgdGhlIGxlbmd0aCBvZiB0aGUgYXV0aCB0YWcgYW5kIHNlcV9udW0qLwogICAgICpwa3Rf
b2N0ZXRfbGVuICs9ICh0YWdfbGVuICsgc2l6ZW9mKHNydGNwX3RyYWlsZXJfdCkpOwogCkBAIC0z
NjMxLDY0ICs0MDgzLDE4NiBAQCBzcnRwX3Byb3RlY3RfcnRjcF9hZWFkIChzcnRwX3QgY3R4LCBz
cnRwX3N0cmVhbV9jdHhfdCAqc3RyZWFtLAogICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7
CiB9CiAKLS8qCi0gKiBUaGlzIGZ1bmN0aW9uIGhhbmRsZXMgaW5jb21pbmcgU1JUQ1AgcGFja2V0
cyB3aGlsZSBpbiBBRUFEIG1vZGUsCi0gKiB3aGljaCBjdXJyZW50bHkgc3VwcG9ydHMgQUVTLUdD
TSBlbmNyeXB0aW9uLiAgTm90ZSwgdGhlIGF1dGggdGFnIGlzIAotICogYXQgdGhlIGVuZCBvZiB0
aGUgcGFja2V0IHN0cmVhbSBhbmQgaXMgYXV0b21hdGljYWxseSBjaGVja2VkIGJ5IEdDTQotICog
d2hlbiBkZWNyeXB0aW5nIHRoZSBwYXlsb2FkLgotICovCi1zdGF0aWMgc3J0cF9lcnJfc3RhdHVz
X3QKLXNydHBfdW5wcm90ZWN0X3J0Y3BfYWVhZCAoc3J0cF90IGN0eCwgc3J0cF9zdHJlYW1fY3R4
X3QgKnN0cmVhbSwgCi0gICAgICAgICAgICAgICAgICAgICAgICAgIHZvaWQgKnNydGNwX2hkciwg
dW5zaWduZWQgaW50ICpwa3Rfb2N0ZXRfbGVuLAotICAgICAgICAgICAgICAgICAgICAgICAgICBz
cnRwX3Nlc3Npb25fa2V5c190ICpzZXNzaW9uX2tleXMsIHVuc2lnbmVkIGludCB1c2VfbWtpKQor
c3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF91bnByb3RlY3RfcnRjcChzcnRwX3QgY3R4LAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2b2lkICpzcnRjcF9oZHIsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCAqcGt0X29jdGV0X2xlbikKK3sKKyAg
ICByZXR1cm4gc3J0cF91bnByb3RlY3RfcnRjcF9ta2koY3R4LCBzcnRjcF9oZHIsIHBrdF9vY3Rl
dF9sZW4sIDApOworfQorCitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3VucHJvdGVjdF9ydGNwX21r
aShzcnRwX3QgY3R4LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
dm9pZCAqc3J0Y3BfaGRyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgaW50ICpwa3Rfb2N0ZXRfbGVuLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgdW5zaWduZWQgaW50IHVzZV9ta2kpCiB7Ci0gICAgc3J0Y3BfaGRyX3QgKmhkciA9
IChzcnRjcF9oZHJfdCopc3J0Y3BfaGRyOwotICAgIHVpbnQzMl90ICplbmNfc3RhcnQ7ICAgICAg
ICAvKiBwb2ludGVyIHRvIHN0YXJ0IG9mIGVuY3J5cHRlZCBwb3J0aW9uICAqLwotICAgIHVpbnQz
Ml90ICp0cmFpbGVyOyAgICAgICAgICAvKiBwb2ludGVyIHRvIHN0YXJ0IG9mIHRyYWlsZXIgICAg
ICAgICAgICAqLworICAgIHNydGNwX2hkcl90ICpoZHIgPSAoc3J0Y3BfaGRyX3QgKilzcnRjcF9o
ZHI7CisgICAgdWludDMyX3QgKmVuY19zdGFydDsgICAgICAgICAgICAvKiBwb2ludGVyIHRvIHN0
YXJ0IG9mIGVuY3J5cHRlZCBwb3J0aW9uICAqLworICAgIHVpbnQzMl90ICphdXRoX3N0YXJ0OyAg
ICAgICAgICAgLyogcG9pbnRlciB0byBzdGFydCBvZiBhdXRoLiBwb3J0aW9uICAgICAgKi8KKyAg
ICB1aW50MzJfdCAqdHJhaWxlcjsgICAgICAgICAgICAgIC8qIHBvaW50ZXIgdG8gc3RhcnQgb2Yg
dHJhaWxlciAgICAgICAgICAgICovCiAgICAgdW5zaWduZWQgaW50IGVuY19vY3RldF9sZW4gPSAw
OyAvKiBudW1iZXIgb2Ygb2N0ZXRzIGluIGVuY3J5cHRlZCBwb3J0aW9uICovCi0gICAgdWludDhf
dCAqYXV0aF90YWcgPSBOVUxMOyAgIC8qIGxvY2F0aW9uIG9mIGF1dGhfdGFnIHdpdGhpbiBwYWNr
ZXQgICAgICovCisgICAgdWludDhfdCAqYXV0aF90YWcgPSBOVUxMOyAgICAgICAvKiBsb2NhdGlv
biBvZiBhdXRoX3RhZyB3aXRoaW4gcGFja2V0ICAgICAqLworICAgIHVpbnQ4X3QgdG1wX3RhZ1tT
UlRQX01BWF9UQUdfTEVOXTsKKyAgICB1aW50OF90IHRhZ19jb3B5W1NSVFBfTUFYX1RBR19MRU5d
OwogICAgIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKKyAgICB1bnNpZ25lZCBpbnQgYXV0aF9s
ZW47CiAgICAgaW50IHRhZ19sZW47Ci0gICAgdW5zaWduZWQgaW50IHRtcF9sZW47CisgICAgc3J0
cF9zdHJlYW1fY3R4X3QgKnN0cmVhbTsKKyAgICB1aW50MzJfdCBwcmVmaXhfbGVuOwogICAgIHVp
bnQzMl90IHNlcV9udW07Ci0gICAgdjEyOF90IGl2OwotICAgIHVpbnQzMl90IHRzZXE7CisgICAg
aW50IGVfYml0X2luX3BhY2tldDsgLyogd2hldGhlciB0aGUgRS1iaXQgd2FzIGZvdW5kIGluIHRo
ZSBwYWNrZXQgKi8KKyAgICBpbnQgc2VjX3NlcnZfY29uZmlkZW50aWFsaXR5OyAvKiB3aGV0aGVy
IGNvbmZpZGVudGlhbGl0eSB3YXMgcmVxdWVzdGVkICovCiAgICAgdW5zaWduZWQgaW50IG1raV9z
aXplID0gMDsKKyAgICBzcnRwX3Nlc3Npb25fa2V5c190ICpzZXNzaW9uX2tleXMgPSBOVUxMOwor
CisgICAgLyogd2UgYXNzdW1lIHRoZSBoZHIgaXMgMzItYml0IGFsaWduZWQgdG8gc3RhcnQgKi8K
KworICAgIGlmICgqcGt0X29jdGV0X2xlbiA8IDApCisgICAgICAgIHJldHVybiBzcnRwX2Vycl9z
dGF0dXNfYmFkX3BhcmFtOworCisgICAgLyoKKyAgICAgKiBjaGVjayB0aGF0IHRoZSBsZW5ndGgg
dmFsdWUgaXMgc2FuZTsgd2UnbGwgY2hlY2sgYWdhaW4gb25jZSB3ZQorICAgICAqIGtub3cgdGhl
IHRhZyBsZW5ndGgsIGJ1dCB3ZSBhdCBsZWFzdCB3YW50IHRvIGtub3cgdGhhdCBpdCBpcworICAg
ICAqIGEgcG9zaXRpdmUgdmFsdWUKKyAgICAgKi8KKyAgICBpZiAoKHVuc2lnbmVkIGludCkoKnBr
dF9vY3RldF9sZW4pIDwKKyAgICAgICAgb2N0ZXRzX2luX3J0Y3BfaGVhZGVyICsgc2l6ZW9mKHNy
dGNwX3RyYWlsZXJfdCkpCisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFt
OworCisgICAgLyoKKyAgICAgKiBsb29rIHVwIHNzcmMgaW4gc3J0cF9zdHJlYW0gbGlzdCwgYW5k
IHByb2Nlc3MgdGhlIHBhY2tldCB3aXRoCisgICAgICogdGhlIGFwcHJvcHJpYXRlIHN0cmVhbS4g
IGlmIHdlIGhhdmVuJ3Qgc2VlbiB0aGlzIHN0cmVhbSBiZWZvcmUsCisgICAgICogdGhlcmUncyBv
bmx5IG9uZSBrZXkgZm9yIHRoaXMgc3J0cF9zZXNzaW9uLCBhbmQgdGhlIGNpcGhlcgorICAgICAq
IHN1cHBvcnRzIGtleS1zaGFyaW5nLCB0aGVuIHdlIGFzc3VtZSB0aGF0IGEgbmV3IHN0cmVhbSB1
c2luZworICAgICAqIHRoYXQga2V5IGhhcyBqdXN0IHN0YXJ0ZWQgdXAKKyAgICAgKi8KKyAgICBz
dHJlYW0gPSBzcnRwX2dldF9zdHJlYW0oY3R4LCBoZHItPnNzcmMpOworICAgIGlmIChzdHJlYW0g
PT0gTlVMTCkgeworICAgICAgICBpZiAoY3R4LT5zdHJlYW1fdGVtcGxhdGUgIT0gTlVMTCkgewor
ICAgICAgICAgICAgc3RyZWFtID0gY3R4LT5zdHJlYW1fdGVtcGxhdGU7CisKKyAgICAgICAgICAg
IC8qCisgICAgICAgICAgICAgKiBjaGVjayB0byBzZWUgaWYgc3RyZWFtX3RlbXBsYXRlIGhhcyBh
biBFS1QgZGF0YSBzdHJ1Y3R1cmUsIGluCisgICAgICAgICAgICAgKiB3aGljaCBjYXNlIHdlIGlu
aXRpYWxpemUgdGhlIHRlbXBsYXRlIHVzaW5nIHRoZSBFS1QgcG9saWN5CisgICAgICAgICAgICAg
KiByZWZlcmVuY2VkIGJ5IHRoYXQgZGF0YSAod2hpY2ggY29uc2lzdHMgb2YgZGVjcnlwdGluZyB0
aGUKKyAgICAgICAgICAgICAqIG1hc3RlciBrZXkgZnJvbSB0aGUgRUtUIGZpZWxkKQorICAgICAg
ICAgICAgICoKKyAgICAgICAgICAgICAqIHRoaXMgZnVuY3Rpb24gaW5pdGlhbGl6ZXMgYSAqcHJv
dmlzaW9uYWwqIHN0cmVhbSwgYW5kIHRoaXMKKyAgICAgICAgICAgICAqIHN0cmVhbSBzaG91bGQg
bm90IGJlIGFjY2VwdGVkIHVudGlsIGFuZCB1bmxlc3MgdGhlIHBhY2tldAorICAgICAgICAgICAg
ICogcGFzc2VzIGl0cyBhdXRoZW50aWNhdGlvbiBjaGVjaworICAgICAgICAgICAgICovCisgICAg
ICAgICAgICBpZiAoc3RyZWFtLT5la3QgIT0gTlVMTCkgeworICAgICAgICAgICAgICAgIHN0YXR1
cyA9IHNydHBfc3RyZWFtX2luaXRfZnJvbV9la3Qoc3RyZWFtLCBzcnRjcF9oZHIsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqcGt0X29jdGV0X2xl
bik7CisgICAgICAgICAgICAgICAgaWYgKHN0YXR1cykKKyAgICAgICAgICAgICAgICAgICAgcmV0
dXJuIHN0YXR1czsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgZGVidWdfcHJpbnQobW9k
X3NydHAsCisgICAgICAgICAgICAgICAgICAgICAgICAic3J0Y3AgdXNpbmcgcHJvdmlzaW9uYWwg
c3RyZWFtIChTU1JDOiAweCUwOHgpIiwKKyAgICAgICAgICAgICAgICAgICAgICAgIG50b2hsKGhk
ci0+c3NyYykpOworICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgLyogbm8gdGVtcGxhdGUg
c3RyZWFtLCBzbyB3ZSByZXR1cm4gYW4gZXJyb3IgKi8KKyAgICAgICAgICAgIHJldHVybiBzcnRw
X2Vycl9zdGF0dXNfbm9fY3R4OworICAgICAgICB9CisgICAgfQorCisgICAgLyoKKyAgICAgKiBE
ZXRlcm1pbmUgaWYgTUtJIGlzIGJlaW5nIHVzZWQgYW5kIHdoYXQgc2Vzc2lvbiBrZXlzIHNob3Vs
ZCBiZSB1c2VkCisgICAgICovCisgICAgaWYgKHVzZV9ta2kpIHsKKyAgICAgICAgc2Vzc2lvbl9r
ZXlzID0gc3J0cF9nZXRfc2Vzc2lvbl9rZXlzKAorICAgICAgICAgICAgc3RyZWFtLCAodWludDhf
dCAqKWhkciwgKGNvbnN0IHVuc2lnbmVkIGludCAqKXBrdF9vY3RldF9sZW4sCisgICAgICAgICAg
ICAmbWtpX3NpemUpOworCisgICAgICAgIGlmIChzZXNzaW9uX2tleXMgPT0gTlVMTCkKKyAgICAg
ICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYmFkX21raTsKKyAgICB9IGVsc2UgeworICAg
ICAgICBzZXNzaW9uX2tleXMgPSAmc3RyZWFtLT5zZXNzaW9uX2tleXNbMF07CisgICAgfQogCiAg
ICAgLyogZ2V0IHRhZyBsZW5ndGggZnJvbSBzdHJlYW0gY29udGV4dCAqLwogICAgIHRhZ19sZW4g
PSBzcnRwX2F1dGhfZ2V0X3RhZ19sZW5ndGgoc2Vzc2lvbl9rZXlzLT5ydGNwX2F1dGgpOwogCi0g
ICAgaWYgKHVzZV9ta2kpIHsKLSAgICAgIG1raV9zaXplID0gc2Vzc2lvbl9rZXlzLT5ta2lfc2l6
ZTsKKyAgICAvKiBjaGVjayB0aGUgcGFja2V0IGxlbmd0aCAtIGl0IG11c3QgY29udGFpbiBhdCBs
ZWFzdCBhIGZ1bGwgUlRDUAorICAgICAgIGhlYWRlciwgYW4gYXV0aCB0YWcgKGlmIGFwcGxpY2Fi
bGUpLCBhbmQgdGhlIFNSVENQIGVuY3J5cHRlZCBmbGFnCisgICAgICAgYW5kIDMxLWJpdCBpbmRl
eCB2YWx1ZSAqLworICAgIGlmICgqcGt0X29jdGV0X2xlbiA8IChpbnQpKG9jdGV0c19pbl9ydGNw
X2hlYWRlciArIHRhZ19sZW4gKyBta2lfc2l6ZSArCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgc2l6ZW9mKHNydGNwX3RyYWlsZXJfdCkpKSB7CisgICAgICAgIHJldHVybiBzcnRwX2Vy
cl9zdGF0dXNfYmFkX3BhcmFtOworICAgIH0KKworICAgIC8qCisgICAgICogQ2hlY2sgaWYgdGhp
cyBpcyBhbiBBRUFEIHN0cmVhbSAoR0NNIG1vZGUpLiAgSWYgc28sIHRoZW4gZGlzcGF0Y2gKKyAg
ICAgKiB0aGUgcmVxdWVzdCB0byBvdXIgQUVBRCBoYW5kbGVyLgorICAgICAqLworICAgIGlmIChz
ZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXItPmFsZ29yaXRobSA9PSBTUlRQX0FFU19HQ01fMTI4IHx8
CisgICAgICAgIHNlc3Npb25fa2V5cy0+cnRwX2NpcGhlci0+YWxnb3JpdGhtID09IFNSVFBfQUVT
X0dDTV8yNTYpIHsKKyAgICAgICAgcmV0dXJuIHNydHBfdW5wcm90ZWN0X3J0Y3BfYWVhZChjdHgs
IHN0cmVhbSwgc3J0Y3BfaGRyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICh1bnNpZ25lZCBpbnQgKilwa3Rfb2N0ZXRfbGVuLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHNlc3Npb25fa2V5cywgbWtpX3NpemUpOwogICAgIH0KIAorICAg
IHNlY19zZXJ2X2NvbmZpZGVudGlhbGl0eSA9IHN0cmVhbS0+cnRjcF9zZXJ2aWNlcyA9PSBzZWNf
c2Vydl9jb25mIHx8CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RyZWFtLT5ydGNw
X3NlcnZpY2VzID09IHNlY19zZXJ2X2NvbmZfYW5kX2F1dGg7CisKICAgICAvKgogICAgICAqIHNl
dCBlbmNyeXB0aW9uIHN0YXJ0LCBlbmNyeXB0aW9uIGxlbmd0aCwgYW5kIHRyYWlsZXIKICAgICAg
Ki8KLSAgICAvKiBpbmRleCAmIEUgKGVuY3J5cHRpb24pIGJpdCBmb2xsb3cgbm9ybWFsIGRhdGEu
ICBoZHItPmxlbgotICAgICAgICAgICBpcyB0aGUgbnVtYmVyIG9mIHdvcmRzICgzMi1iaXQpIGlu
IHRoZSBub3JtYWwgcGFja2V0IG1pbnVzIDEgKi8KLSAgICAvKiBUaGlzIHNob3VsZCBwb2ludCB0
cmFpbGVyIHRvIHRoZSB3b3JkIHBhc3QgdGhlIGVuZCBvZiB0aGUKLSAgICAgICAgICAgbm9ybWFs
IGRhdGEuICovCi0gICAgLyogVGhpcyB3b3VsZCBuZWVkIHRvIGJlIG1vZGlmaWVkIGZvciBvcHRp
b25hbCBtaWtleSBkYXRhICovCisgICAgZW5jX29jdGV0X2xlbiA9ICpwa3Rfb2N0ZXRfbGVuIC0g
KG9jdGV0c19pbl9ydGNwX2hlYWRlciArIHRhZ19sZW4gKworICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBta2lfc2l6ZSArIHNpemVvZihzcnRjcF90cmFpbGVyX3QpKTsKICAg
ICAvKgotICAgICAqIE5PVEU6IHRyYWlsZXIgaXMgMzItYml0IGFsaWduZWQgYmVjYXVzZSBSVENQ
ICdwYWNrZXRzJyBhcmUgYWx3YXlzCi0gICAgICoJIG11bHRpcGxlcyBvZiAzMi1iaXRzIChSRkMg
MzU1MCA2LjEpCisgICAgICppbmRleCAmIEUgKGVuY3J5cHRpb24pIGJpdCBmb2xsb3cgbm9ybWFs
IGRhdGEuIGhkci0+bGVuIGlzIHRoZSBudW1iZXIgb2YKKyAgICAgKiB3b3JkcyAoMzItYml0KSBp
biB0aGUgbm9ybWFsIHBhY2tldCBtaW51cyAxCiAgICAgICovCi0gICAgdHJhaWxlciA9ICh1aW50
MzJfdCopKChjaGFyKiloZHIgKyAqcGt0X29jdGV0X2xlbiAtIHNpemVvZihzcnRjcF90cmFpbGVy
X3QpIC0gbWtpX3NpemUpOworICAgIC8qIFRoaXMgc2hvdWxkIHBvaW50IHRyYWlsZXIgdG8gdGhl
IHdvcmQgcGFzdCB0aGUgZW5kIG9mIHRoZSBub3JtYWwgZGF0YS4gKi8KKyAgICAvKiBUaGlzIHdv
dWxkIG5lZWQgdG8gYmUgbW9kaWZpZWQgZm9yIG9wdGlvbmFsIG1pa2V5IGRhdGEgKi8KICAgICAv
KgotICAgICAqIFdlIHBhc3MgdGhlIHRhZyBkb3duIHRvIHRoZSBjaXBoZXIgd2hlbiBkb2luZyBH
Q00gbW9kZSAKKyAgICAgKiBOT1RFOiB0cmFpbGVyIGlzIDMyLWJpdCBhbGlnbmVkIGJlY2F1c2Ug
UlRDUCAncGFja2V0cycgYXJlIGFsd2F5cworICAgICAqICAgbXVsdGlwbGVzIG9mIDMyLWJpdHMg
KFJGQyAzNTUwIDYuMSkKICAgICAgKi8KLSAgICBlbmNfb2N0ZXRfbGVuID0gKnBrdF9vY3RldF9s
ZW4gLSAob2N0ZXRzX2luX3J0Y3BfaGVhZGVyICsgCi0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHNpemVvZihzcnRjcF90cmFpbGVyX3QpICsgbWtpX3NpemUpOwotICAgIGF1
dGhfdGFnID0gKHVpbnQ4X3QqKWhkciArICpwa3Rfb2N0ZXRfbGVuIC0gdGFnX2xlbiAtIG1raV9z
aXplIC0gc2l6ZW9mKHNydGNwX3RyYWlsZXJfdCk7Ci0KLSAgICBpZiAoKigodW5zaWduZWQgY2hh
ciopdHJhaWxlcikgJiBTUlRDUF9FX0JZVEVfQklUKSB7Ci0gICAgICAgIGVuY19zdGFydCA9ICh1
aW50MzJfdCopaGRyICsgdWludDMyc19pbl9ydGNwX2hlYWRlcjsKKyAgICB0cmFpbGVyID0gKHVp
bnQzMl90ICopKChjaGFyICopaGRyICsgKnBrdF9vY3RldF9sZW4gLQorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgKHRhZ19sZW4gKyBta2lfc2l6ZSArIHNpemVvZihzcnRjcF90cmFpbGVyX3Qp
KSk7CisgICAgZV9iaXRfaW5fcGFja2V0ID0KKyAgICAgICAgKCooKHVuc2lnbmVkIGNoYXIgKil0
cmFpbGVyKSAmIFNSVENQX0VfQllURV9CSVQpID09IFNSVENQX0VfQllURV9CSVQ7CisgICAgaWYg
KGVfYml0X2luX3BhY2tldCAhPSBzZWNfc2Vydl9jb25maWRlbnRpYWxpdHkpIHsKKyAgICAgICAg
cmV0dXJuIHNydHBfZXJyX3N0YXR1c19jYW50X2NoZWNrOworICAgIH0KKyAgICBpZiAoc2VjX3Nl
cnZfY29uZmlkZW50aWFsaXR5KSB7CisgICAgICAgIGVuY19zdGFydCA9ICh1aW50MzJfdCAqKWhk
ciArIHVpbnQzMnNfaW5fcnRjcF9oZWFkZXI7CiAgICAgfSBlbHNlIHsKICAgICAgICAgZW5jX29j
dGV0X2xlbiA9IDA7CiAgICAgICAgIGVuY19zdGFydCA9IE5VTEw7IC8qIHRoaXMgaW5kaWNhdGVz
IHRoYXQgdGhlcmUncyBubyBlbmNyeXB0aW9uICovCiAgICAgfQogCisgICAgLyoKKyAgICAgKiBz
ZXQgdGhlIGF1dGhfc3RhcnQgYW5kIGF1dGhfdGFnIHBvaW50ZXJzIHRvIHRoZSBwcm9wZXIgbG9j
YXRpb25zCisgICAgICogKG5vdGUgdGhhdCBzcnRjcCAqYWx3YXlzKiB1c2VzIGF1dGhlbnRpY2F0
aW9uLCB1bmxpa2Ugc3J0cCkKKyAgICAgKi8KKyAgICBhdXRoX3N0YXJ0ID0gKHVpbnQzMl90ICop
aGRyOworCisgICAgLyoKKyAgICAgKiBUaGUgbG9jYXRpb24gb2YgdGhlIGF1dGggdGFnIGluIHRo
ZSBwYWNrZXQgbmVlZHMgdG8ga25vdyBNS0kKKyAgICAgKiBjb3VsZCBiZSBwcmVzZW50LiAgVGhl
IGRhdGEgbmVlZGVkIHRvIGNhbGN1bGF0ZSB0aGUgQXV0aCB0YWcKKyAgICAgKiBtdXN0IG5vdCBp
bmNsdWRlIHRoZSBNS0kKKyAgICAgKi8KKyAgICBhdXRoX2xlbiA9ICpwa3Rfb2N0ZXRfbGVuIC0g
dGFnX2xlbiAtIG1raV9zaXplOworICAgIGF1dGhfdGFnID0gKHVpbnQ4X3QgKiloZHIgKyBhdXRo
X2xlbiArIG1raV9zaXplOworCisgICAgLyoKKyAgICAgKiBpZiBFS1QgaXMgaW4gdXNlLCB0aGVu
IHdlIG1ha2UgYSBjb3B5IG9mIHRoZSB0YWcgZnJvbSB0aGUgcGFja2V0LAorICAgICAqIGFuZCB0
aGVuIHplcm9pemUgdGhlIGxvY2F0aW9uIG9mIHRoZSBiYXNlIHRhZworICAgICAqCisgICAgICog
d2UgZmlyc3QgcmUtcG9zaXRpb24gdGhlIGF1dGhfdGFnIHBvaW50ZXIgc28gdGhhdCBpdCBwb2lu
dHMgdG8KKyAgICAgKiB0aGUgYmFzZSB0YWcKKyAgICAgKi8KKyAgICBpZiAoc3RyZWFtLT5la3Qp
IHsKKyAgICAgICAgYXV0aF90YWcgLT0gc3J0cF9la3Rfb2N0ZXRzX2FmdGVyX2Jhc2VfdGFnKHN0
cmVhbS0+ZWt0KTsKKyAgICAgICAgbWVtY3B5KHRhZ19jb3B5LCBhdXRoX3RhZywgdGFnX2xlbik7
CisgICAgICAgIG9jdGV0X3N0cmluZ19zZXRfdG9femVybyhhdXRoX3RhZywgdGFnX2xlbik7Cisg
ICAgICAgIGF1dGhfdGFnID0gdGFnX2NvcHk7CisgICAgICAgIGF1dGhfbGVuICs9IHRhZ19sZW47
CisgICAgfQorCiAgICAgLyoKICAgICAgKiBjaGVjayB0aGUgc2VxdWVuY2UgbnVtYmVyIGZvciBy
ZXBsYXlzCiAgICAgICovCkBAIC0zNjk2LDc5ICs0MjcwLDg4IEBAIHNydHBfdW5wcm90ZWN0X3J0
Y3BfYWVhZCAoc3J0cF90IGN0eCwgc3J0cF9zdHJlYW1fY3R4X3QgKnN0cmVhbSwKICAgICBzZXFf
bnVtID0gbnRvaGwoKnRyYWlsZXIpICYgU1JUQ1BfSU5ERVhfTUFTSzsKICAgICBkZWJ1Z19wcmlu
dChtb2Rfc3J0cCwgInNydGNwIGluZGV4OiAleCIsIHNlcV9udW0pOwogICAgIHN0YXR1cyA9IHNy
dHBfcmRiX2NoZWNrKCZzdHJlYW0tPnJ0Y3BfcmRiLCBzZXFfbnVtKTsKLSAgICBpZiAoc3RhdHVz
KSB7CisgICAgaWYgKHN0YXR1cykKICAgICAgICAgcmV0dXJuIHN0YXR1czsKLSAgICB9CiAKICAg
ICAvKgotICAgICAqIENhbGN1bGF0ZSBhbmQgc2V0IHRoZSBJVgorICAgICAqIGlmIHdlJ3JlIHVz
aW5nIGFlcyBjb3VudGVyIG1vZGUsIHNldCBub25jZSBhbmQgc2VxCiAgICAgICovCi0gICAgc3Rh
dHVzID0gc3J0cF9jYWxjX2FlYWRfaXZfc3J0Y3Aoc2Vzc2lvbl9rZXlzLCAmaXYsIHNlcV9udW0s
IGhkcik7Ci0gICAgaWYgKHN0YXR1cykgewotICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVz
X2NpcGhlcl9mYWlsOwotICAgIH0KLSAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9zZXRfaXYoc2Vz
c2lvbl9rZXlzLT5ydGNwX2NpcGhlciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
KHVpbnQ4X3QqKSZpdiwgc3J0cF9kaXJlY3Rpb25fZGVjcnlwdCk7Ci0gICAgaWYgKHN0YXR1cykg
ewotICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2NpcGhlcl9mYWlsOwotICAgIH0KKyAg
ICBpZiAoc2Vzc2lvbl9rZXlzLT5ydGNwX2NpcGhlci0+dHlwZS0+aWQgPT0gU1JUUF9BRVNfSUNN
XzEyOCB8fAorICAgICAgICBzZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyLT50eXBlLT5pZCA9PSBT
UlRQX0FFU19JQ01fMTkyIHx8CisgICAgICAgIHNlc3Npb25fa2V5cy0+cnRjcF9jaXBoZXItPnR5
cGUtPmlkID09IFNSVFBfQUVTX0lDTV8yNTYpIHsKKyAgICAgICAgdjEyOF90IGl2OworCisgICAg
ICAgIGl2LnYzMlswXSA9IDA7CisgICAgICAgIGl2LnYzMlsxXSA9IGhkci0+c3NyYzsgLyogc3Rp
bGwgaW4gbmV0d29yayBvcmRlciEgKi8KKyAgICAgICAgaXYudjMyWzJdID0gaHRvbmwoc2VxX251
bSA+PiAxNik7CisgICAgICAgIGl2LnYzMlszXSA9IGh0b25sKHNlcV9udW0gPDwgMTYpOworICAg
ICAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9zZXRfaXYoc2Vzc2lvbl9rZXlzLT5ydGNwX2NpcGhl
ciwgKHVpbnQ4X3QgKikmaXYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBz
cnRwX2RpcmVjdGlvbl9kZWNyeXB0KTsKIAotICAgIC8qCi0gICAgICogU2V0IHRoZSBBQUQgZm9y
IEdDTSBtb2RlCi0gICAgICovCi0gICAgaWYgKGVuY19zdGFydCkgewotICAgICAgICAvKgotICAg
ICAgICAgKiBJZiBwYXlsb2FkIGVuY3J5cHRpb24gaXMgZW5hYmxlZCwgdGhlbiB0aGUgQUFEIGNv
bnNpc3Qgb2YKLSAgICAgICAgICogdGhlIFJUQ1AgaGVhZGVyIGFuZCB0aGUgc2VxIyBhdCB0aGUg
ZW5kIG9mIHRoZSBwYWNrZXQKLSAgICAgICAgICovCi0gICAgICAgIHN0YXR1cyA9IHNydHBfY2lw
aGVyX3NldF9hYWQoc2Vzc2lvbl9rZXlzLT5ydGNwX2NpcGhlciwKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKHVpbnQ4X3QqKWhkciwgb2N0ZXRzX2luX3J0Y3BfaGVhZGVyKTsK
LSAgICAgICAgaWYgKHN0YXR1cykgewotICAgICAgICAgICAgcmV0dXJuICggc3J0cF9lcnJfc3Rh
dHVzX2NpcGhlcl9mYWlsKTsKLSAgICAgICAgfQogICAgIH0gZWxzZSB7Ci0gICAgICAgIC8qCi0g
ICAgICAgICAqIFNpbmNlIHBheWxvYWQgZW5jcnlwdGlvbiBpcyBub3QgZW5hYmxlZCwgd2UgbXVz
dCBhdXRoZW50aWNhdGUKLSAgICAgICAgICogdGhlIGVudGlyZSBwYWNrZXQgYXMgZGVzY3JpYmVk
IGluIFJGQyA3NzE0IChTZWN0aW9uIDkuMy4gRGF0YQotICAgICAgICAgKiBUeXBlcyBpbiBVbmVu
Y3J5cHRlZCBTUlRDUCBDb21wb3VuZCBQYWNrZXRzKQotICAgICAgICAgKi8KLSAgICAgICAgc3Rh
dHVzID0gc3J0cF9jaXBoZXJfc2V0X2FhZCgKLSAgICAgICAgICBzZXNzaW9uX2tleXMtPnJ0Y3Bf
Y2lwaGVyLCAodWludDhfdCopaGRyLAotICAgICAgICAgICgqcGt0X29jdGV0X2xlbiAtIHRhZ19s
ZW4gLSBzaXplb2Yoc3J0Y3BfdHJhaWxlcl90KSAtIG1raV9zaXplKSk7Ci0gICAgICAgIGlmIChz
dGF0dXMpIHsKLSAgICAgICAgICAgIHJldHVybiAoIHNydHBfZXJyX3N0YXR1c19jaXBoZXJfZmFp
bCk7Ci0gICAgICAgIH0KKyAgICAgICAgdjEyOF90IGl2OworCisgICAgICAgIC8qIG90aGVyd2lz
ZSwganVzdCBzZXQgdGhlIGluZGV4IHRvIHNlcV9udW0gKi8KKyAgICAgICAgaXYudjMyWzBdID0g
MDsKKyAgICAgICAgaXYudjMyWzFdID0gMDsKKyAgICAgICAgaXYudjMyWzJdID0gMDsKKyAgICAg
ICAgaXYudjMyWzNdID0gaHRvbmwoc2VxX251bSk7CisgICAgICAgIHN0YXR1cyA9IHNydHBfY2lw
aGVyX3NldF9pdihzZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyLCAodWludDhfdCAqKSZpdiwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNydHBfZGlyZWN0aW9uX2RlY3J5cHQp
OwogICAgIH0KKyAgICBpZiAoc3RhdHVzKQorICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVz
X2NpcGhlcl9mYWlsOworCisgICAgLyogaW5pdGlhbGl6ZSBhdXRoIGZ1bmMgY29udGV4dCAqLwor
ICAgIHNydHBfYXV0aF9zdGFydChzZXNzaW9uX2tleXMtPnJ0Y3BfYXV0aCk7CisKKyAgICAvKiBy
dW4gYXV0aCBmdW5jIG92ZXIgcGFja2V0LCBwdXQgcmVzdWx0IGludG8gdG1wX3RhZyAqLworICAg
IHN0YXR1cyA9IHNydHBfYXV0aF9jb21wdXRlKHNlc3Npb25fa2V5cy0+cnRjcF9hdXRoLCAodWlu
dDhfdCAqKWF1dGhfc3RhcnQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXV0aF9s
ZW4sIHRtcF90YWcpOworICAgIGRlYnVnX3ByaW50KG1vZF9zcnRwLCAic3J0Y3AgY29tcHV0ZWQg
dGFnOiAgICAgICAlcyIsCisgICAgICAgICAgICAgICAgc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0
cmluZyh0bXBfdGFnLCB0YWdfbGVuKSk7CisgICAgaWYgKHN0YXR1cykKKyAgICAgICAgcmV0dXJu
IHNydHBfZXJyX3N0YXR1c19hdXRoX2ZhaWw7CisKKyAgICAvKiBjb21wYXJlIHRoZSB0YWcganVz
dCBjb21wdXRlZCB3aXRoIHRoZSBvbmUgaW4gdGhlIHBhY2tldCAqLworICAgIGRlYnVnX3ByaW50
KG1vZF9zcnRwLCAic3J0Y3AgdGFnIGZyb20gcGFja2V0OiAgICAlcyIsCisgICAgICAgICAgICAg
ICAgc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZyhhdXRoX3RhZywgdGFnX2xlbikpOworICAg
IGlmIChvY3RldF9zdHJpbmdfaXNfZXEodG1wX3RhZywgYXV0aF90YWcsIHRhZ19sZW4pKQorICAg
ICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2F1dGhfZmFpbDsKIAogICAgIC8qCi0gICAgICog
UHJvY2VzcyB0aGUgc2VxdWVuY2UjIGFzIEFBRAorICAgICAqIGlmIHdlJ3JlIGF1dGhlbnRpY2F0
aW5nIHVzaW5nIGEgdW5pdmVyc2FsIGhhc2gsIHB1dCB0aGUga2V5c3RyZWFtCisgICAgICogcHJl
Zml4IGludG8gdGhlIGF1dGhlbnRpY2F0aW9uIHRhZwogICAgICAqLwotICAgIHRzZXEgPSAqdHJh
aWxlcjsKLSAgICBzdGF0dXMgPSBzcnRwX2NpcGhlcl9zZXRfYWFkKHNlc3Npb25fa2V5cy0+cnRj
cF9jaXBoZXIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAodWludDhfdCopJnRz
ZXEsIHNpemVvZihzcnRjcF90cmFpbGVyX3QpKTsKLSAgICBpZiAoc3RhdHVzKSB7Ci0gICAgICAg
IHJldHVybiAoIHNydHBfZXJyX3N0YXR1c19jaXBoZXJfZmFpbCk7CisgICAgcHJlZml4X2xlbiA9
IHNydHBfYXV0aF9nZXRfcHJlZml4X2xlbmd0aChzZXNzaW9uX2tleXMtPnJ0Y3BfYXV0aCk7Cisg
ICAgaWYgKHByZWZpeF9sZW4pIHsKKyAgICAgICAgc3RhdHVzID0gc3J0cF9jaXBoZXJfb3V0cHV0
KHNlc3Npb25fa2V5cy0+cnRjcF9jaXBoZXIsIGF1dGhfdGFnLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgJnByZWZpeF9sZW4pOworICAgICAgICBkZWJ1Z19wcmludChtb2Rf
c3J0cCwgImtleXN0cmVhbSBwcmVmaXg6ICVzIiwKKyAgICAgICAgICAgICAgICAgICAgc3J0cF9v
Y3RldF9zdHJpbmdfaGV4X3N0cmluZyhhdXRoX3RhZywgcHJlZml4X2xlbikpOworICAgICAgICBp
ZiAoc3RhdHVzKQorICAgICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19jaXBoZXJfZmFp
bDsKICAgICB9CiAKICAgICAvKiBpZiB3ZSdyZSBkZWNyeXB0aW5nLCBleG9yIGtleXN0cmVhbSBp
bnRvIHRoZSBtZXNzYWdlICovCiAgICAgaWYgKGVuY19zdGFydCkgewotICAgICAgICBzdGF0dXMg
PSBzcnRwX2NpcGhlcl9kZWNyeXB0KHNlc3Npb25fa2V5cy0+cnRjcF9jaXBoZXIsICh1aW50OF90
KillbmNfc3RhcnQsICZlbmNfb2N0ZXRfbGVuKTsKLSAgICAgICAgaWYgKHN0YXR1cykgewotICAg
ICAgICAgICAgcmV0dXJuIHN0YXR1czsKLSAgICAgICAgfQotICAgIH0gZWxzZSB7Ci0gICAgICAg
IC8qCi0gICAgICAgICAqIFN0aWxsIG5lZWQgdG8gcnVuIHRoZSBjaXBoZXIgdG8gY2hlY2sgdGhl
IHRhZwotICAgICAgICAgKi8KLSAgICAgICAgdG1wX2xlbiA9IHRhZ19sZW47Ci0gICAgICAgIHN0
YXR1cyA9IHNydHBfY2lwaGVyX2RlY3J5cHQoc2Vzc2lvbl9rZXlzLT5ydGNwX2NpcGhlciwgKHVp
bnQ4X3QqKWF1dGhfdGFnLCAmdG1wX2xlbik7Ci0gICAgICAgIGlmIChzdGF0dXMpIHsKLSAgICAg
ICAgICAgIHJldHVybiBzdGF0dXM7Ci0gICAgICAgIH0KKyAgICAgICAgc3RhdHVzID0gc3J0cF9j
aXBoZXJfZGVjcnlwdChzZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICh1aW50OF90ICopZW5jX3N0YXJ0LCAmZW5jX29jdGV0X2xl
bik7CisgICAgICAgIGlmIChzdGF0dXMpCisgICAgICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3Rh
dHVzX2NpcGhlcl9mYWlsOwogICAgIH0KIAotICAgIC8qIGRlY3JlYXNlIHRoZSBwYWNrZXQgbGVu
Z3RoIGJ5IHRoZSBsZW5ndGggb2YgdGhlIGF1dGggdGFnIGFuZCBzZXFfbnVtKi8KLSAgICAqcGt0
X29jdGV0X2xlbiAtPSAodGFnX2xlbiArIHNpemVvZihzcnRjcF90cmFpbGVyX3QpICsgbWtpX3Np
emUpOworICAgIC8qIGRlY3JlYXNlIHRoZSBwYWNrZXQgbGVuZ3RoIGJ5IHRoZSBsZW5ndGggb2Yg
dGhlIGF1dGggdGFnIGFuZCBzZXFfbnVtICovCisgICAgKnBrdF9vY3RldF9sZW4gLT0gKHRhZ19s
ZW4gKyBzaXplb2Yoc3J0Y3BfdHJhaWxlcl90KSk7CisKKyAgICAvKiBkZWNyZWFzZSB0aGUgcGFj
a2V0IGxlbmd0aCBieSB0aGUgbGVuZ3RoIG9mIHRoZSBta2lfc2l6ZSAqLworICAgICpwa3Rfb2N0
ZXRfbGVuIC09IG1raV9zaXplOworCisgICAgLyoKKyAgICAgKiBpZiBFS1QgaXMgaW4gZWZmZWN0
LCBzdWJ0cmFjdCB0aGUgRUtUIGRhdGEgb3V0IG9mIHRoZSBwYWNrZXQKKyAgICAgKiBsZW5ndGgK
KyAgICAgKi8KKyAgICAqcGt0X29jdGV0X2xlbiAtPSBzcnRwX2VrdF9vY3RldHNfYWZ0ZXJfYmFz
ZV90YWcoc3RyZWFtLT5la3QpOwogCiAgICAgLyoKICAgICAgKiB2ZXJpZnkgdGhhdCBzdHJlYW0g
aXMgZm9yIHJlY2VpdmVkIHRyYWZmaWMgLSB0aGlzIGNoZWNrIHdpbGwKQEAgLTM4MDMsMTAgKzQz
ODYsMTAgQEAgc3J0cF91bnByb3RlY3RfcnRjcF9hZWFkIChzcnRwX3QgY3R4LCBzcnRwX3N0cmVh
bV9jdHhfdCAqc3RyZWFtLAogICAgICAgICAgKiBzdHJlYW0sIGFuZCBzb21lIGltcGxlbWVudGF0
aW9ucyB3aWxsIHdhbnQgdG8gbm90IHJldHVybgogICAgICAgICAgKiBmYWlsdXJlIGhlcmUKICAg
ICAgICAgICovCi0gICAgICAgIHN0YXR1cyA9IHNydHBfc3RyZWFtX2Nsb25lKGN0eC0+c3RyZWFt
X3RlbXBsYXRlLCBoZHItPnNzcmMsICZuZXdfc3RyZWFtKTsKLSAgICAgICAgaWYgKHN0YXR1cykg
eworICAgICAgICBzdGF0dXMgPQorICAgICAgICAgICAgc3J0cF9zdHJlYW1fY2xvbmUoY3R4LT5z
dHJlYW1fdGVtcGxhdGUsIGhkci0+c3NyYywgJm5ld19zdHJlYW0pOworICAgICAgICBpZiAoc3Rh
dHVzKQogICAgICAgICAgICAgcmV0dXJuIHN0YXR1czsKLSAgICAgICAgfQogCiAgICAgICAgIC8q
IGFkZCBuZXcgc3RyZWFtIHRvIHRoZSBoZWFkIG9mIHRoZSBzdHJlYW1fbGlzdCAqLwogICAgICAg
ICBuZXdfc3RyZWFtLT5uZXh0ID0gY3R4LT5zdHJlYW1fbGlzdDsKQEAgLTM4MjIsNzU0ICs0NDA1
LDIzNiBAQCBzcnRwX3VucHJvdGVjdF9ydGNwX2FlYWQgKHNydHBfdCBjdHgsIHNydHBfc3RyZWFt
X2N0eF90ICpzdHJlYW0sCiAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0KIAotc3J0
cF9lcnJfc3RhdHVzX3QgCi1zcnRwX3Byb3RlY3RfcnRjcChzcnRwX3QgY3R4LCB2b2lkICpydGNw
X2hkciwgaW50ICpwa3Rfb2N0ZXRfbGVuKSB7Ci0gIHJldHVybiBzcnRwX3Byb3RlY3RfcnRjcF9t
a2koY3R4LCBydGNwX2hkciwgcGt0X29jdGV0X2xlbiwgMCwgMCk7Ci19Ci0KLXNydHBfZXJyX3N0
YXR1c190IAotc3J0cF9wcm90ZWN0X3J0Y3BfbWtpKHNydHBfdCBjdHgsIHZvaWQgKnJ0Y3BfaGRy
LCBpbnQgKnBrdF9vY3RldF9sZW4sCi0gICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50
IHVzZV9ta2ksIHVuc2lnbmVkIGludCBta2lfaW5kZXgpIHsKLSAgc3J0Y3BfaGRyX3QgKmhkciA9
IChzcnRjcF9oZHJfdCAqKXJ0Y3BfaGRyOwotICB1aW50MzJfdCAqZW5jX3N0YXJ0OyAgICAgIC8q
IHBvaW50ZXIgdG8gc3RhcnQgb2YgZW5jcnlwdGVkIHBvcnRpb24gICovCi0gIHVpbnQzMl90ICph
dXRoX3N0YXJ0OyAgICAgLyogcG9pbnRlciB0byBzdGFydCBvZiBhdXRoLiBwb3J0aW9uICAgICAg
Ki8KLSAgdWludDMyX3QgKnRyYWlsZXI7ICAgICAgICAvKiBwb2ludGVyIHRvIHN0YXJ0IG9mIHRy
YWlsZXIgICAgICAgICAgICAqLwotICB1bnNpZ25lZCBpbnQgZW5jX29jdGV0X2xlbiA9IDA7Lyog
bnVtYmVyIG9mIG9jdGV0cyBpbiBlbmNyeXB0ZWQgcG9ydGlvbiAqLwotICB1aW50OF90ICphdXRo
X3RhZyA9IE5VTEw7IC8qIGxvY2F0aW9uIG9mIGF1dGhfdGFnIHdpdGhpbiBwYWNrZXQgICAgICov
Ci0gIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsgICAKLSAgaW50IHRhZ19sZW47Ci0gIHNydHBf
c3RyZWFtX2N0eF90ICpzdHJlYW07Ci0gIHVpbnQzMl90IHByZWZpeF9sZW47Ci0gIHVpbnQzMl90
IHNlcV9udW07Ci0gIHVuc2lnbmVkIGludCBta2lfc2l6ZSA9IDA7Ci0gIHNydHBfc2Vzc2lvbl9r
ZXlzX3QgKnNlc3Npb25fa2V5cyA9IE5VTEw7Ci0KLSAgLyogd2UgYXNzdW1lIHRoZSBoZHIgaXMg
MzItYml0IGFsaWduZWQgdG8gc3RhcnQgKi8KLQotICAvKiBjaGVjayB0aGUgcGFja2V0IGxlbmd0
aCAtIGl0IG11c3QgYXQgbGVhc3QgY29udGFpbiBhIGZ1bGwgaGVhZGVyICovCi0gIGlmICgqcGt0
X29jdGV0X2xlbiA8IG9jdGV0c19pbl9ydGNwX2hlYWRlcikKLSAgICByZXR1cm4gc3J0cF9lcnJf
c3RhdHVzX2JhZF9wYXJhbTsKLQotICAvKgotICAgKiBsb29rIHVwIHNzcmMgaW4gc3J0cF9zdHJl
YW0gbGlzdCwgYW5kIHByb2Nlc3MgdGhlIHBhY2tldCB3aXRoIAotICAgKiB0aGUgYXBwcm9wcmlh
dGUgc3RyZWFtLiAgaWYgd2UgaGF2ZW4ndCBzZWVuIHRoaXMgc3RyZWFtIGJlZm9yZSwKLSAgICog
dGhlcmUncyBvbmx5IG9uZSBrZXkgZm9yIHRoaXMgc3J0cF9zZXNzaW9uLCBhbmQgdGhlIGNpcGhl
cgotICAgKiBzdXBwb3J0cyBrZXktc2hhcmluZywgdGhlbiB3ZSBhc3N1bWUgdGhhdCBhIG5ldyBz
dHJlYW0gdXNpbmcKLSAgICogdGhhdCBrZXkgaGFzIGp1c3Qgc3RhcnRlZCB1cAotICAgKi8KLSAg
c3RyZWFtID0gc3J0cF9nZXRfc3RyZWFtKGN0eCwgaGRyLT5zc3JjKTsKLSAgaWYgKHN0cmVhbSA9
PSBOVUxMKSB7Ci0gICAgaWYgKGN0eC0+c3RyZWFtX3RlbXBsYXRlICE9IE5VTEwpIHsKLSAgICAg
IHNydHBfc3RyZWFtX2N0eF90ICpuZXdfc3RyZWFtOwotICAgICAgCi0gICAgICAvKiBhbGxvY2F0
ZSBhbmQgaW5pdGlhbGl6ZSBhIG5ldyBzdHJlYW0gKi8KLSAgICAgIHN0YXR1cyA9IHNydHBfc3Ry
ZWFtX2Nsb25lKGN0eC0+c3RyZWFtX3RlbXBsYXRlLAotCQkJCSBoZHItPnNzcmMsICZuZXdfc3Ry
ZWFtKTsgCi0gICAgICBpZiAoc3RhdHVzKQotCXJldHVybiBzdGF0dXM7Ci0gICAgICAKLSAgICAg
IC8qIGFkZCBuZXcgc3RyZWFtIHRvIHRoZSBoZWFkIG9mIHRoZSBzdHJlYW1fbGlzdCAqLwotICAg
ICAgbmV3X3N0cmVhbS0+bmV4dCA9IGN0eC0+c3RyZWFtX2xpc3Q7Ci0gICAgICBjdHgtPnN0cmVh
bV9saXN0ID0gbmV3X3N0cmVhbTsKLSAgICAgIAotICAgICAgLyogc2V0IHN0cmVhbSAodGhlIHBv
aW50ZXIgdXNlZCBpbiB0aGlzIGZ1bmN0aW9uKSAqLwotICAgICAgc3RyZWFtID0gbmV3X3N0cmVh
bTsKLSAgICB9IGVsc2UgewotICAgICAgLyogbm8gdGVtcGxhdGUgc3RyZWFtLCBzbyB3ZSByZXR1
cm4gYW4gZXJyb3IgKi8KLSAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfbm9fY3R4OwotICAg
IH0gCi0gIH0KLSAgCi0gIC8qIAotICAgKiB2ZXJpZnkgdGhhdCBzdHJlYW0gaXMgZm9yIHNlbmRp
bmcgdHJhZmZpYyAtIHRoaXMgY2hlY2sgd2lsbAotICAgKiBkZXRlY3QgU1NSQyBjb2xsaXNpb25z
LCBzaW5jZSBhIHN0cmVhbSB0aGF0IGFwcGVhcnMgaW4gYm90aAotICAgKiBzcnRwX3Byb3RlY3Qo
KSBhbmQgc3J0cF91bnByb3RlY3QoKSB3aWxsIGZhaWwgdGhpcyB0ZXN0IGluIG9uZSBvZgotICAg
KiB0aG9zZSBmdW5jdGlvbnMuCi0gICAqLwotICBpZiAoc3RyZWFtLT5kaXJlY3Rpb24gIT0gZGly
X3NydHBfc2VuZGVyKSB7Ci0gICAgaWYgKHN0cmVhbS0+ZGlyZWN0aW9uID09IGRpcl91bmtub3du
KSB7Ci0gICAgICBzdHJlYW0tPmRpcmVjdGlvbiA9IGRpcl9zcnRwX3NlbmRlcjsKLSAgICB9IGVs
c2UgewotICAgICAgc3J0cF9oYW5kbGVfZXZlbnQoY3R4LCBzdHJlYW0sIGV2ZW50X3NzcmNfY29s
bGlzaW9uKTsKLSAgICB9Ci0gIH0gIAotCi0gIHNlc3Npb25fa2V5cyA9IHNydHBfZ2V0X3Nlc3Np
b25fa2V5c193aXRoX21raV9pbmRleChzdHJlYW0sIHVzZV9ta2ksIG1raV9pbmRleCk7Ci0KLSAg
LyoKLSAgICogQ2hlY2sgaWYgdGhpcyBpcyBhbiBBRUFEIHN0cmVhbSAoR0NNIG1vZGUpLiAgSWYg
c28sIHRoZW4gZGlzcGF0Y2gKLSAgICogdGhlIHJlcXVlc3QgdG8gb3VyIEFFQUQgaGFuZGxlci4K
LSAgICovCi0gIGlmIChzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXItPmFsZ29yaXRobSA9PSBTUlRQ
X0FFU19HQ01fMTI4IHx8Ci0gICAgICBzZXNzaW9uX2tleXMtPnJ0cF9jaXBoZXItPmFsZ29yaXRo
bSA9PSBTUlRQX0FFU19HQ01fMjU2KSB7Ci0gICAgICByZXR1cm4gc3J0cF9wcm90ZWN0X3J0Y3Bf
YWVhZChjdHgsIHN0cmVhbSwgcnRjcF9oZHIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAodW5zaWduZWQgaW50Kilwa3Rfb2N0ZXRfbGVuLCBzZXNzaW9uX2tleXMsCi0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1c2VfbWtpKTsKLSAgfQotCi0gIC8qIGdl
dCB0YWcgbGVuZ3RoIGZyb20gc3RyZWFtIGNvbnRleHQgKi8KLSAgdGFnX2xlbiA9IHNydHBfYXV0
aF9nZXRfdGFnX2xlbmd0aChzZXNzaW9uX2tleXMtPnJ0Y3BfYXV0aCk7IAotCi0gIC8qCi0gICAq
IHNldCBlbmNyeXB0aW9uIHN0YXJ0IGFuZCBlbmNyeXB0aW9uIGxlbmd0aCAtIGlmIHdlJ3JlIG5v
dAotICAgKiBwcm92aWRpbmcgY29uZmlkZW50aWFsaXR5LCBzZXQgZW5jX3N0YXJ0IHRvIE5VTEwK
LSAgICovCi0gIGVuY19zdGFydCA9ICh1aW50MzJfdCAqKWhkciArIHVpbnQzMnNfaW5fcnRjcF9o
ZWFkZXI7ICAKLSAgZW5jX29jdGV0X2xlbiA9ICpwa3Rfb2N0ZXRfbGVuIC0gb2N0ZXRzX2luX3J0
Y3BfaGVhZGVyOwotCi0gIC8qIGFsbCBvZiB0aGUgcGFja2V0LCBleGNlcHQgdGhlIGhlYWRlciwg
Z2V0cyBlbmNyeXB0ZWQgKi8KLSAgLyogTk9URTogaGRyLT5sZW5ndGggaXMgbm90IHVzYWJsZSAt
IGl0IHJlZmVycyB0byBvbmx5IHRoZSBmaXJzdAotCSBSVENQIHJlcG9ydCBpbiB0aGUgY29tcG91
bmQgcGFja2V0ISAqLwotICAvKiBOT1RFOiB0cmFpbGVyIGlzIDMyLWJpdCBhbGlnbmVkIGJlY2F1
c2UgUlRDUCAncGFja2V0cycgYXJlIGFsd2F5cwotCSBtdWx0aXBsZXMgb2YgMzItYml0cyAoUkZD
IDM1NTAgNi4xKSAqLwotICB0cmFpbGVyID0gKHVpbnQzMl90ICopICgoY2hhciAqKWVuY19zdGFy
dCArIGVuY19vY3RldF9sZW4pOwotCi0gIGlmIChzdHJlYW0tPnJ0Y3Bfc2VydmljZXMgJiBzZWNf
c2Vydl9jb25mKSB7Ci0gICAgKnRyYWlsZXIgPSBodG9ubChTUlRDUF9FX0JJVCk7ICAgICAvKiBz
ZXQgZW5jcnlwdCBiaXQgKi8gICAgCi0gIH0gZWxzZSB7Ci0gICAgZW5jX3N0YXJ0ID0gTlVMTDsK
LSAgICBlbmNfb2N0ZXRfbGVuID0gMDsKLQkvKiAwIGlzIG5ldHdvcmstb3JkZXIgaW5kZXBlbmRh
bnQgKi8KLSAgICAqdHJhaWxlciA9IDB4MDAwMDAwMDA7ICAgICAvKiBzZXQgZW5jcnlwdCBiaXQg
Ki8gICAgCi0gIH0KLQotICBta2lfc2l6ZSA9IHNydHBfaW5qZWN0X21raSgodWludDhfdCAqKWhk
ciArICpwa3Rfb2N0ZXRfbGVuICsgc2l6ZW9mKHNydGNwX3RyYWlsZXJfdCksCi0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHNlc3Npb25fa2V5cywgdXNlX21raSk7Ci0KLSAgLyogCi0gICAq
IHNldCB0aGUgYXV0aF9zdGFydCBhbmQgYXV0aF90YWcgcG9pbnRlcnMgdG8gdGhlIHByb3BlciBs
b2NhdGlvbnMKLSAgICogKG5vdGUgdGhhdCBzcnRwYyAqYWx3YXlzKiBwcm92aWRlcyBhdXRoZW50
aWNhdGlvbiwgdW5saWtlIHNydHApCi0gICAqLwotICAvKiBOb3RlOiBUaGlzIHdvdWxkIG5lZWQg
dG8gY2hhbmdlIGZvciBvcHRpb25hbCBtaWtleSBkYXRhICovCi0gIGF1dGhfc3RhcnQgPSAodWlu
dDMyX3QgKiloZHI7Ci0gIGF1dGhfdGFnID0gKHVpbnQ4X3QgKiloZHIgKyAqcGt0X29jdGV0X2xl
biArIHNpemVvZihzcnRjcF90cmFpbGVyX3QpICsgbWtpX3NpemU7IAotCi0gIC8qIHBlcmZvcm0g
RUtUIHByb2Nlc3NpbmcgaWYgbmVlZGVkICovCi0gIHNydHBfZWt0X3dyaXRlX2RhdGEoc3RyZWFt
LT5la3QsIGF1dGhfdGFnLCB0YWdfbGVuLCBwa3Rfb2N0ZXRfbGVuLCAKLQkJICAgICAgc3J0cF9y
ZGJ4X2dldF9wYWNrZXRfaW5kZXgoJnN0cmVhbS0+cnRwX3JkYngpKTsKLQotICAvKiAKLSAgICog
Y2hlY2sgc2VxdWVuY2UgbnVtYmVyIGZvciBvdmVycnVucywgYW5kIGNvcHkgaXQgaW50byB0aGUg
cGFja2V0Ci0gICAqIGlmIGl0cyB2YWx1ZSBpc24ndCB0b28gYmlnCi0gICAqLwotICBzdGF0dXMg
PSBzcnRwX3JkYl9pbmNyZW1lbnQoJnN0cmVhbS0+cnRjcF9yZGIpOwotICBpZiAoc3RhdHVzKQot
ICAgIHJldHVybiBzdGF0dXM7Ci0gIHNlcV9udW0gPSBzcnRwX3JkYl9nZXRfdmFsdWUoJnN0cmVh
bS0+cnRjcF9yZGIpOwotICAqdHJhaWxlciB8PSBodG9ubChzZXFfbnVtKTsKLSAgZGVidWdfcHJp
bnQobW9kX3NydHAsICJzcnRjcCBpbmRleDogJXgiLCBzZXFfbnVtKTsKLQotICAvKiAKLSAgICog
aWYgd2UncmUgdXNpbmcgcmluZGFlbCBjb3VudGVyIG1vZGUsIHNldCBub25jZSBhbmQgc2VxIAot
ICAgKi8KLSAgaWYgKHNlc3Npb25fa2V5cy0+cnRjcF9jaXBoZXItPnR5cGUtPmlkID09IFNSVFBf
QUVTX0lDTV8xMjggfHwKLSAgICAgIHNlc3Npb25fa2V5cy0+cnRjcF9jaXBoZXItPnR5cGUtPmlk
ID09IFNSVFBfQUVTX0lDTV8xOTIgfHwKLSAgICAgIHNlc3Npb25fa2V5cy0+cnRjcF9jaXBoZXIt
PnR5cGUtPmlkID09IFNSVFBfQUVTX0lDTV8yNTYpIHsKLSAgICB2MTI4X3QgaXY7Ci0gICAgCi0g
ICAgaXYudjMyWzBdID0gMDsKLSAgICBpdi52MzJbMV0gPSBoZHItPnNzcmM7ICAvKiBzdGlsbCBp
biBuZXR3b3JrIG9yZGVyISAqLwotICAgIGl2LnYzMlsyXSA9IGh0b25sKHNlcV9udW0gPj4gMTYp
OwotICAgIGl2LnYzMlszXSA9IGh0b25sKHNlcV9udW0gPDwgMTYpOwotICAgIHN0YXR1cyA9IHNy
dHBfY2lwaGVyX3NldF9pdihzZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyLCAodWludDhfdCopJml2
LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcnRwX2RpcmVjdGlvbl9lbmNyeXB0
KTsKLQotICB9IGVsc2UgeyAgCi0gICAgdjEyOF90IGl2OwotICAgIAotICAgIC8qIG90aGVyd2lz
ZSwganVzdCBzZXQgdGhlIGluZGV4IHRvIHNlcV9udW0gKi8gIAotICAgIGl2LnYzMlswXSA9IDA7
Ci0gICAgaXYudjMyWzFdID0gMDsKLSAgICBpdi52MzJbMl0gPSAwOwotICAgIGl2LnYzMlszXSA9
IGh0b25sKHNlcV9udW0pOwotICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3NldF9pdihzZXNzaW9u
X2tleXMtPnJ0Y3BfY2lwaGVyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAodWlu
dDhfdCopJml2LCBzcnRwX2RpcmVjdGlvbl9lbmNyeXB0KTsKLSAgfQotICBpZiAoc3RhdHVzKQot
ICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfY2lwaGVyX2ZhaWw7Ci0KLSAgLyogCi0gICAqIGlm
IHdlJ3JlIGF1dGhlbnRpY2F0aW5nIHVzaW5nIGEgdW5pdmVyc2FsIGhhc2gsIHB1dCB0aGUga2V5
c3RyZWFtCi0gICAqIHByZWZpeCBpbnRvIHRoZSBhdXRoZW50aWNhdGlvbiB0YWcKLSAgICovCi0g
IAotICAvKiBpZiBhdXRoX3N0YXJ0IGlzIG5vbi1udWxsLCB0aGVuIHB1dCBrZXlzdHJlYW0gaW50
byB0YWcgICovCi0gIGlmIChhdXRoX3N0YXJ0KSB7Ci0KLSAgICAvKiBwdXQga2V5c3RyZWFtIHBy
ZWZpeCBpbnRvIGF1dGhfdGFnICovCi0gICAgcHJlZml4X2xlbiA9IHNydHBfYXV0aF9nZXRfcHJl
Zml4X2xlbmd0aChzZXNzaW9uX2tleXMtPnJ0Y3BfYXV0aCk7ICAgIAotICAgIHN0YXR1cyA9IHNy
dHBfY2lwaGVyX291dHB1dChzZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyLCBhdXRoX3RhZywgJnBy
ZWZpeF9sZW4pOwotCi0gICAgZGVidWdfcHJpbnQobW9kX3NydHAsICJrZXlzdHJlYW0gcHJlZml4
OiAlcyIsIAotCQlzcnRwX29jdGV0X3N0cmluZ19oZXhfc3RyaW5nKGF1dGhfdGFnLCBwcmVmaXhf
bGVuKSk7Ci0KLSAgICBpZiAoc3RhdHVzKQotICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19j
aXBoZXJfZmFpbDsKLSAgfQotCi0gIC8qIGlmIHdlJ3JlIGVuY3J5cHRpbmcsIGV4b3Iga2V5c3Ry
ZWFtIGludG8gdGhlIG1lc3NhZ2UgKi8KLSAgaWYgKGVuY19zdGFydCkgewotICAgIHN0YXR1cyA9
IHNydHBfY2lwaGVyX2VuY3J5cHQoc2Vzc2lvbl9rZXlzLT5ydGNwX2NpcGhlciwgCi0JCSAgCSAg
ICAgICAgKHVpbnQ4X3QgKillbmNfc3RhcnQsICZlbmNfb2N0ZXRfbGVuKTsKLSAgICBpZiAoc3Rh
dHVzKQotICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19jaXBoZXJfZmFpbDsKLSAgfQotCi0g
IC8qIGluaXRpYWxpemUgYXV0aCBmdW5jIGNvbnRleHQgKi8KLSAgc3J0cF9hdXRoX3N0YXJ0KHNl
c3Npb25fa2V5cy0+cnRjcF9hdXRoKTsKLQotICAvKiAKLSAgICogcnVuIGF1dGggZnVuYyBvdmVy
IHBhY2tldCAoaW5jbHVkaW5nIHRyYWlsZXIpLCBhbmQgd3JpdGUgdGhlCi0gICAqIHJlc3VsdCBh
dCBhdXRoX3RhZyAKLSAgICovCi0gIHN0YXR1cyA9IHNydHBfYXV0aF9jb21wdXRlKHNlc3Npb25f
a2V5cy0+cnRjcF9hdXRoLAotCQkJKHVpbnQ4X3QgKilhdXRoX3N0YXJ0LCAKLQkJCSgqcGt0X29j
dGV0X2xlbikgKyBzaXplb2Yoc3J0Y3BfdHJhaWxlcl90KSwgCi0JCQlhdXRoX3RhZyk7Ci0gIGRl
YnVnX3ByaW50KG1vZF9zcnRwLCAic3J0Y3AgYXV0aCB0YWc6ICAgICVzIiwgCi0JICAgICAgc3J0
cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZyhhdXRoX3RhZywgdGFnX2xlbikpOwotICBpZiAoc3Rh
dHVzKQotICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYXV0aF9mYWlsOyAgIAotICAgIAotICAv
KiBpbmNyZWFzZSB0aGUgcGFja2V0IGxlbmd0aCBieSB0aGUgbGVuZ3RoIG9mIHRoZSBhdXRoIHRh
ZyBhbmQgc2VxX251bSovCi0gICpwa3Rfb2N0ZXRfbGVuICs9ICh0YWdfbGVuICsgc2l6ZW9mKHNy
dGNwX3RyYWlsZXJfdCkpOwotCi0gIC8qIGluY3JlYXNlIHRoZSBwYWNrZXQgYnkgdGhlIG1raV9z
aXplICovCi0gICpwa3Rfb2N0ZXRfbGVuICs9IG1raV9zaXplOwotICAgIAotICByZXR1cm4gc3J0
cF9lcnJfc3RhdHVzX29rOyAgCi19Ci0KLQotc3J0cF9lcnJfc3RhdHVzX3QgCi1zcnRwX3VucHJv
dGVjdF9ydGNwKHNydHBfdCBjdHgsIHZvaWQgKnNydGNwX2hkciwgaW50ICpwa3Rfb2N0ZXRfbGVu
KSB7Ci0gICAgcmV0dXJuIHNydHBfdW5wcm90ZWN0X3J0Y3BfbWtpKGN0eCwgc3J0Y3BfaGRyLCBw
a3Rfb2N0ZXRfbGVuLCAwKTsKLX0KLQotc3J0cF9lcnJfc3RhdHVzX3QKLXNydHBfdW5wcm90ZWN0
X3J0Y3BfbWtpKHNydHBfdCBjdHgsIHZvaWQgKnNydGNwX2hkciwgaW50ICpwa3Rfb2N0ZXRfbGVu
LAotICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IHVzZV9ta2kpIHsKLSAgc3J0
Y3BfaGRyX3QgKmhkciA9IChzcnRjcF9oZHJfdCAqKXNydGNwX2hkcjsKLSAgdWludDMyX3QgKmVu
Y19zdGFydDsgICAgICAvKiBwb2ludGVyIHRvIHN0YXJ0IG9mIGVuY3J5cHRlZCBwb3J0aW9uICAq
LwotICB1aW50MzJfdCAqYXV0aF9zdGFydDsgICAgIC8qIHBvaW50ZXIgdG8gc3RhcnQgb2YgYXV0
aC4gcG9ydGlvbiAgICAgICovCi0gIHVpbnQzMl90ICp0cmFpbGVyOyAgICAgICAgLyogcG9pbnRl
ciB0byBzdGFydCBvZiB0cmFpbGVyICAgICAgICAgICAgKi8KLSAgdW5zaWduZWQgaW50IGVuY19v
Y3RldF9sZW4gPSAwOy8qIG51bWJlciBvZiBvY3RldHMgaW4gZW5jcnlwdGVkIHBvcnRpb24gKi8K
LSAgdWludDhfdCAqYXV0aF90YWcgPSBOVUxMOyAvKiBsb2NhdGlvbiBvZiBhdXRoX3RhZyB3aXRo
aW4gcGFja2V0ICAgICAqLwotICB1aW50OF90IHRtcF90YWdbU1JUUF9NQVhfVEFHX0xFTl07Ci0g
IHVpbnQ4X3QgdGFnX2NvcHlbU1JUUF9NQVhfVEFHX0xFTl07Ci0gIHNydHBfZXJyX3N0YXR1c190
IHN0YXR1czsgICAKLSAgdW5zaWduZWQgaW50IGF1dGhfbGVuOwotICBpbnQgdGFnX2xlbjsKLSAg
c3J0cF9zdHJlYW1fY3R4X3QgKnN0cmVhbTsKLSAgdWludDMyX3QgcHJlZml4X2xlbjsKLSAgdWlu
dDMyX3Qgc2VxX251bTsKLSAgaW50IGVfYml0X2luX3BhY2tldDsgICAgIC8qIHdoZXRoZXIgdGhl
IEUtYml0IHdhcyBmb3VuZCBpbiB0aGUgcGFja2V0ICovCi0gIGludCBzZWNfc2Vydl9jb25maWRl
bnRpYWxpdHk7IC8qIHdoZXRoZXIgY29uZmlkZW50aWFsaXR5IHdhcyByZXF1ZXN0ZWQgKi8KLSAg
dW5zaWduZWQgaW50IG1raV9zaXplID0gMDsKLSAgc3J0cF9zZXNzaW9uX2tleXNfdCAqc2Vzc2lv
bl9rZXlzID0gTlVMTDsKLQotICAvKiB3ZSBhc3N1bWUgdGhlIGhkciBpcyAzMi1iaXQgYWxpZ25l
ZCB0byBzdGFydCAqLwotCi0gIC8qIGNoZWNrIHRoYXQgdGhlIGxlbmd0aCB2YWx1ZSBpcyBzYW5l
OyB3ZSdsbCBjaGVjayBhZ2FpbiBvbmNlIHdlCi0gICAgIGtub3cgdGhlIHRhZyBsZW5ndGgsIGJ1
dCB3ZSBhdCBsZWFzdCB3YW50IHRvIGtub3cgdGhhdCBpdCBpcwotICAgICBhIHBvc2l0aXZlIHZh
bHVlICovCi0gIGlmICgqcGt0X29jdGV0X2xlbiA8IG9jdGV0c19pbl9ydGNwX2hlYWRlciArIHNp
emVvZihzcnRjcF90cmFpbGVyX3QpKQotICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYmFkX3Bh
cmFtOwotCi0gIC8qCi0gICAqIGxvb2sgdXAgc3NyYyBpbiBzcnRwX3N0cmVhbSBsaXN0LCBhbmQg
cHJvY2VzcyB0aGUgcGFja2V0IHdpdGggCi0gICAqIHRoZSBhcHByb3ByaWF0ZSBzdHJlYW0uICBp
ZiB3ZSBoYXZlbid0IHNlZW4gdGhpcyBzdHJlYW0gYmVmb3JlLAotICAgKiB0aGVyZSdzIG9ubHkg
b25lIGtleSBmb3IgdGhpcyBzcnRwX3Nlc3Npb24sIGFuZCB0aGUgY2lwaGVyCi0gICAqIHN1cHBv
cnRzIGtleS1zaGFyaW5nLCB0aGVuIHdlIGFzc3VtZSB0aGF0IGEgbmV3IHN0cmVhbSB1c2luZwot
ICAgKiB0aGF0IGtleSBoYXMganVzdCBzdGFydGVkIHVwCi0gICAqLwotICBzdHJlYW0gPSBzcnRw
X2dldF9zdHJlYW0oY3R4LCBoZHItPnNzcmMpOwotICBpZiAoc3RyZWFtID09IE5VTEwpIHsKLSAg
ICBpZiAoY3R4LT5zdHJlYW1fdGVtcGxhdGUgIT0gTlVMTCkgewotICAgICAgc3RyZWFtID0gY3R4
LT5zdHJlYW1fdGVtcGxhdGU7Ci0KLSAgICAgIC8qIAotICAgICAgICogY2hlY2sgdG8gc2VlIGlm
IHN0cmVhbV90ZW1wbGF0ZSBoYXMgYW4gRUtUIGRhdGEgc3RydWN0dXJlLCBpbgotICAgICAgICog
d2hpY2ggY2FzZSB3ZSBpbml0aWFsaXplIHRoZSB0ZW1wbGF0ZSB1c2luZyB0aGUgRUtUIHBvbGlj
eQotICAgICAgICogcmVmZXJlbmNlZCBieSB0aGF0IGRhdGEgKHdoaWNoIGNvbnNpc3RzIG9mIGRl
Y3J5cHRpbmcgdGhlCi0gICAgICAgKiBtYXN0ZXIga2V5IGZyb20gdGhlIEVLVCBmaWVsZCkKLSAg
ICAgICAqCi0gICAgICAgKiB0aGlzIGZ1bmN0aW9uIGluaXRpYWxpemVzIGEgKnByb3Zpc2lvbmFs
KiBzdHJlYW0sIGFuZCB0aGlzCi0gICAgICAgKiBzdHJlYW0gc2hvdWxkIG5vdCBiZSBhY2NlcHRl
ZCB1bnRpbCBhbmQgdW5sZXNzIHRoZSBwYWNrZXQKLSAgICAgICAqIHBhc3NlcyBpdHMgYXV0aGVu
dGljYXRpb24gY2hlY2sKLSAgICAgICAqLyAKLSAgICAgIGlmIChzdHJlYW0tPmVrdCAhPSBOVUxM
KSB7Ci0Jc3RhdHVzID0gc3J0cF9zdHJlYW1faW5pdF9mcm9tX2VrdChzdHJlYW0sIHNydGNwX2hk
ciwgKnBrdF9vY3RldF9sZW4pOwotCWlmIChzdGF0dXMpCi0JICByZXR1cm4gc3RhdHVzOwotICAg
ICAgfQotCi0gICAgICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgInNydGNwIHVzaW5nIHByb3Zpc2lv
bmFsIHN0cmVhbSAoU1NSQzogMHglMDh4KSIsIAotCQkgIG50b2hsKGhkci0+c3NyYykpOwotICAg
IH0gZWxzZSB7Ci0gICAgICAvKiBubyB0ZW1wbGF0ZSBzdHJlYW0sIHNvIHdlIHJldHVybiBhbiBl
cnJvciAqLwotICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19ub19jdHg7Ci0gICAgfSAKLSAg
fQotCi0gIC8qCi0gICAqIERldGVybWluZSBpZiBNS0kgaXMgYmVpbmcgdXNlZCBhbmQgd2hhdCBz
ZXNzaW9uIGtleXMgc2hvdWxkIGJlIHVzZWQKLSAgICovCi0gIGlmICh1c2VfbWtpKSB7Ci0gICAg
ICBzZXNzaW9uX2tleXMgPSBzcnRwX2dldF9zZXNzaW9uX2tleXMoc3RyZWFtLCAodWludDhfdCAq
KWhkciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY29uc3Qg
dW5zaWduZWQgaW50Kilwa3Rfb2N0ZXRfbGVuLAotICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICZta2lfc2l6ZSk7Ci0KLSAgICAgIGlmIChzZXNzaW9uX2tleXMgPT0g
TlVMTCkgCi0gICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2JhZF9ta2k7Ci0gIH0gZWxz
ZSB7Ci0gICAgICBzZXNzaW9uX2tleXMgPSAmc3RyZWFtLT5zZXNzaW9uX2tleXNbMF07Ci0gIH0g
IAotCi0KLSAgLyogZ2V0IHRhZyBsZW5ndGggZnJvbSBzdHJlYW0gY29udGV4dCAqLwotICB0YWdf
bGVuID0gc3J0cF9hdXRoX2dldF90YWdfbGVuZ3RoKHNlc3Npb25fa2V5cy0+cnRjcF9hdXRoKTsK
LQotICAvKiBjaGVjayB0aGUgcGFja2V0IGxlbmd0aCAtIGl0IG11c3QgY29udGFpbiBhdCBsZWFz
dCBhIGZ1bGwgUlRDUAotICAgICBoZWFkZXIsIGFuIGF1dGggdGFnIChpZiBhcHBsaWNhYmxlKSwg
YW5kIHRoZSBTUlRDUCBlbmNyeXB0ZWQgZmxhZwotICAgICBhbmQgMzEtYml0IGluZGV4IHZhbHVl
ICovCi0gIGlmICgqcGt0X29jdGV0X2xlbiA8IChpbnQpIChvY3RldHNfaW5fcnRjcF9oZWFkZXIg
KyB0YWdfbGVuICsgbWtpX3NpemUgKyBzaXplb2Yoc3J0Y3BfdHJhaWxlcl90KSkpIHsKLSAgICBy
ZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJhbTsKLSAgfQotCi0gIC8qCi0gICAqIENoZWNr
IGlmIHRoaXMgaXMgYW4gQUVBRCBzdHJlYW0gKEdDTSBtb2RlKS4gIElmIHNvLCB0aGVuIGRpc3Bh
dGNoCi0gICAqIHRoZSByZXF1ZXN0IHRvIG91ciBBRUFEIGhhbmRsZXIuCi0gICAqLwotICBpZiAo
c2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVyLT5hbGdvcml0aG0gPT0gU1JUUF9BRVNfR0NNXzEyOCB8
fAotICAgICAgc2Vzc2lvbl9rZXlzLT5ydHBfY2lwaGVyLT5hbGdvcml0aG0gPT0gU1JUUF9BRVNf
R0NNXzI1NikgewotICAgICAgcmV0dXJuIHNydHBfdW5wcm90ZWN0X3J0Y3BfYWVhZChjdHgsIHN0
cmVhbSwgc3J0Y3BfaGRyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAo
dW5zaWduZWQgaW50Kilwa3Rfb2N0ZXRfbGVuLCBzZXNzaW9uX2tleXMsCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIG1raV9zaXplKTsKLSAgfQotCi0gIHNlY19zZXJ2X2Nv
bmZpZGVudGlhbGl0eSA9IHN0cmVhbS0+cnRjcF9zZXJ2aWNlcyA9PSBzZWNfc2Vydl9jb25mIHx8
Ci0gICAgICBzdHJlYW0tPnJ0Y3Bfc2VydmljZXMgPT0gc2VjX3NlcnZfY29uZl9hbmRfYXV0aDsK
LQotICAvKgotICAgKiBzZXQgZW5jcnlwdGlvbiBzdGFydCwgZW5jcnlwdGlvbiBsZW5ndGgsIGFu
ZCB0cmFpbGVyCi0gICAqLwotICBlbmNfb2N0ZXRfbGVuID0gKnBrdF9vY3RldF9sZW4gLSAKLSAg
ICAgICAgICAgICAgICAgIChvY3RldHNfaW5fcnRjcF9oZWFkZXIgKyB0YWdfbGVuICsgbWtpX3Np
emUgKyBzaXplb2Yoc3J0Y3BfdHJhaWxlcl90KSk7Ci0gIC8qIGluZGV4ICYgRSAoZW5jcnlwdGlv
bikgYml0IGZvbGxvdyBub3JtYWwgZGF0YS4gIGhkci0+bGVuCi0JIGlzIHRoZSBudW1iZXIgb2Yg
d29yZHMgKDMyLWJpdCkgaW4gdGhlIG5vcm1hbCBwYWNrZXQgbWludXMgMSAqLwotICAvKiBUaGlz
IHNob3VsZCBwb2ludCB0cmFpbGVyIHRvIHRoZSB3b3JkIHBhc3QgdGhlIGVuZCBvZiB0aGUKLQkg
bm9ybWFsIGRhdGEuICovCi0gIC8qIFRoaXMgd291bGQgbmVlZCB0byBiZSBtb2RpZmllZCBmb3Ig
b3B0aW9uYWwgbWlrZXkgZGF0YSAqLwotICAvKgotICAgKiBOT1RFOiB0cmFpbGVyIGlzIDMyLWJp
dCBhbGlnbmVkIGJlY2F1c2UgUlRDUCAncGFja2V0cycgYXJlIGFsd2F5cwotICAgKgkgbXVsdGlw
bGVzIG9mIDMyLWJpdHMgKFJGQyAzNTUwIDYuMSkKLSAgICovCi0gIHRyYWlsZXIgPSAodWludDMy
X3QgKikgKChjaGFyICopIGhkciArCi0gICAgICAqcGt0X29jdGV0X2xlbiAtKHRhZ19sZW4gKyBt
a2lfc2l6ZSArIHNpemVvZihzcnRjcF90cmFpbGVyX3QpKSk7Ci0gIGVfYml0X2luX3BhY2tldCA9
Ci0gICAgICAoKigodW5zaWduZWQgY2hhciAqKSB0cmFpbGVyKSAmIFNSVENQX0VfQllURV9CSVQp
ID09IFNSVENQX0VfQllURV9CSVQ7Ci0gIGlmIChlX2JpdF9pbl9wYWNrZXQgIT0gc2VjX3NlcnZf
Y29uZmlkZW50aWFsaXR5KSB7Ci0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19jYW50X2NoZWNr
OwotICB9Ci0gIGlmIChzZWNfc2Vydl9jb25maWRlbnRpYWxpdHkpIHsKLSAgICBlbmNfc3RhcnQg
PSAodWludDMyX3QgKiloZHIgKyB1aW50MzJzX2luX3J0Y3BfaGVhZGVyOyAgCi0gIH0gZWxzZSB7
Ci0gICAgZW5jX29jdGV0X2xlbiA9IDA7Ci0gICAgZW5jX3N0YXJ0ID0gTlVMTDsgLyogdGhpcyBp
bmRpY2F0ZXMgdGhhdCB0aGVyZSdzIG5vIGVuY3J5cHRpb24gKi8KLSAgfQotCi0gIC8qIAotICAg
KiBzZXQgdGhlIGF1dGhfc3RhcnQgYW5kIGF1dGhfdGFnIHBvaW50ZXJzIHRvIHRoZSBwcm9wZXIg
bG9jYXRpb25zCi0gICAqIChub3RlIHRoYXQgc3J0Y3AgKmFsd2F5cyogdXNlcyBhdXRoZW50aWNh
dGlvbiwgdW5saWtlIHNydHApCi0gICAqLwotICBhdXRoX3N0YXJ0ID0gKHVpbnQzMl90ICopaGRy
OwotCi0gIC8qCi0gICAqIFRoZSBsb2NhdGlvbiBvZiB0aGUgYXV0aCB0YWcgaW4gdGhlIHBhY2tl
dCBuZWVkcyB0byBrbm93IE1LSSAKLSAgICogY291bGQgYmUgcHJlc2VudC4gIFRoZSBkYXRhIG5l
ZWRlZCB0byBjYWxjdWxhdGUgdGhlIEF1dGggdGFnCi0gICAqIG11c3Qgbm90IGluY2x1ZGUgdGhl
IE1LSQotICAgKi8KLSAgYXV0aF9sZW4gPSAqcGt0X29jdGV0X2xlbiAtIHRhZ19sZW4gLSBta2lf
c2l6ZTsKLSAgYXV0aF90YWcgPSAodWludDhfdCAqKWhkciArIGF1dGhfbGVuICsgbWtpX3NpemU7
Ci0KLSAgLyogCi0gICAqIGlmIEVLVCBpcyBpbiB1c2UsIHRoZW4gd2UgbWFrZSBhIGNvcHkgb2Yg
dGhlIHRhZyBmcm9tIHRoZSBwYWNrZXQsCi0gICAqIGFuZCB0aGVuIHplcm9pemUgdGhlIGxvY2F0
aW9uIG9mIHRoZSBiYXNlIHRhZwotICAgKgotICAgKiB3ZSBmaXJzdCByZS1wb3NpdGlvbiB0aGUg
YXV0aF90YWcgcG9pbnRlciBzbyB0aGF0IGl0IHBvaW50cyB0bwotICAgKiB0aGUgYmFzZSB0YWcK
LSAgICovCi0gIGlmIChzdHJlYW0tPmVrdCkgewotICAgIGF1dGhfdGFnIC09IHNydHBfZWt0X29j
dGV0c19hZnRlcl9iYXNlX3RhZyhzdHJlYW0tPmVrdCk7Ci0gICAgbWVtY3B5KHRhZ19jb3B5LCBh
dXRoX3RhZywgdGFnX2xlbik7Ci0gICAgb2N0ZXRfc3RyaW5nX3NldF90b196ZXJvKGF1dGhfdGFn
LCB0YWdfbGVuKTsKLSAgICBhdXRoX3RhZyA9IHRhZ19jb3B5OwotICAgIGF1dGhfbGVuICs9IHRh
Z19sZW47Ci0gIH0KLQotICAvKiAKLSAgICogY2hlY2sgdGhlIHNlcXVlbmNlIG51bWJlciBmb3Ig
cmVwbGF5cwotICAgKi8KLSAgLyogdGhpcyBpcyBlYXNpZXIgdGhhbiBkZWFsaW5nIHdpdGggYml0
ZmllbGQgYWNjZXNzICovCi0gIHNlcV9udW0gPSBudG9obCgqdHJhaWxlcikgJiBTUlRDUF9JTkRF
WF9NQVNLOwotICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgInNydGNwIGluZGV4OiAleCIsIHNlcV9u
dW0pOwotICBzdGF0dXMgPSBzcnRwX3JkYl9jaGVjaygmc3RyZWFtLT5ydGNwX3JkYiwgc2VxX251
bSk7Ci0gIGlmIChzdGF0dXMpCi0gICAgcmV0dXJuIHN0YXR1czsKLQotICAvKiAKLSAgICogaWYg
d2UncmUgdXNpbmcgYWVzIGNvdW50ZXIgbW9kZSwgc2V0IG5vbmNlIGFuZCBzZXEgCi0gICAqLwot
ICBpZiAoc2Vzc2lvbl9rZXlzLT5ydGNwX2NpcGhlci0+dHlwZS0+aWQgPT0gU1JUUF9BRVNfSUNN
XzEyOCB8fAotICAgICAgc2Vzc2lvbl9rZXlzLT5ydGNwX2NpcGhlci0+dHlwZS0+aWQgPT0gU1JU
UF9BRVNfSUNNXzE5MiB8fAotICAgICAgc2Vzc2lvbl9rZXlzLT5ydGNwX2NpcGhlci0+dHlwZS0+
aWQgPT0gU1JUUF9BRVNfSUNNXzI1NikgewotICAgIHYxMjhfdCBpdjsKLQotICAgIGl2LnYzMlsw
XSA9IDA7Ci0gICAgaXYudjMyWzFdID0gaGRyLT5zc3JjOyAvKiBzdGlsbCBpbiBuZXR3b3JrIG9y
ZGVyISAqLwotICAgIGl2LnYzMlsyXSA9IGh0b25sKHNlcV9udW0gPj4gMTYpOwotICAgIGl2LnYz
MlszXSA9IGh0b25sKHNlcV9udW0gPDwgMTYpOwotICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3Nl
dF9pdihzZXNzaW9uX2tleXMtPnJ0Y3BfY2lwaGVyLAotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAodWludDhfdCopJml2LCBzcnRwX2RpcmVjdGlvbl9kZWNyeXB0KTsKLQotICB9IGVs
c2UgeyAgCi0gICAgdjEyOF90IGl2OwotICAgIAotICAgIC8qIG90aGVyd2lzZSwganVzdCBzZXQg
dGhlIGluZGV4IHRvIHNlcV9udW0gKi8gIAotICAgIGl2LnYzMlswXSA9IDA7Ci0gICAgaXYudjMy
WzFdID0gMDsKLSAgICBpdi52MzJbMl0gPSAwOwotICAgIGl2LnYzMlszXSA9IGh0b25sKHNlcV9u
dW0pOwotICAgIHN0YXR1cyA9IHNydHBfY2lwaGVyX3NldF9pdihzZXNzaW9uX2tleXMtPnJ0Y3Bf
Y2lwaGVyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAodWludDhfdCopJml2LCBz
cnRwX2RpcmVjdGlvbl9kZWNyeXB0KTsKLQotICB9Ci0gIGlmIChzdGF0dXMpCi0gICAgcmV0dXJu
IHNydHBfZXJyX3N0YXR1c19jaXBoZXJfZmFpbDsKLQotICAvKiBpbml0aWFsaXplIGF1dGggZnVu
YyBjb250ZXh0ICovCi0gIHNydHBfYXV0aF9zdGFydChzZXNzaW9uX2tleXMtPnJ0Y3BfYXV0aCk7
Ci0KLSAgLyogcnVuIGF1dGggZnVuYyBvdmVyIHBhY2tldCwgcHV0IHJlc3VsdCBpbnRvIHRtcF90
YWcgKi8KLSAgc3RhdHVzID0gc3J0cF9hdXRoX2NvbXB1dGUoc2Vzc2lvbl9rZXlzLT5ydGNwX2F1
dGgsICh1aW50OF90ICopYXV0aF9zdGFydCwKLQkJCWF1dGhfbGVuLCB0bXBfdGFnKTsKLSAgZGVi
dWdfcHJpbnQobW9kX3NydHAsICJzcnRjcCBjb21wdXRlZCB0YWc6ICAgICAgICVzIiwgCi0JICAg
ICAgc3J0cF9vY3RldF9zdHJpbmdfaGV4X3N0cmluZyh0bXBfdGFnLCB0YWdfbGVuKSk7Ci0gIGlm
IChzdGF0dXMpCi0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19hdXRoX2ZhaWw7ICAgCi0gIAot
ICAvKiBjb21wYXJlIHRoZSB0YWcganVzdCBjb21wdXRlZCB3aXRoIHRoZSBvbmUgaW4gdGhlIHBh
Y2tldCAqLwotICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgInNydGNwIHRhZyBmcm9tIHBhY2tldDog
ICAgJXMiLCAKLQkgICAgICBzcnRwX29jdGV0X3N0cmluZ19oZXhfc3RyaW5nKGF1dGhfdGFnLCB0
YWdfbGVuKSk7ICAKLSAgaWYgKG9jdGV0X3N0cmluZ19pc19lcSh0bXBfdGFnLCBhdXRoX3RhZywg
dGFnX2xlbikpCi0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19hdXRoX2ZhaWw7Ci0KLSAgLyog
Ci0gICAqIGlmIHdlJ3JlIGF1dGhlbnRpY2F0aW5nIHVzaW5nIGEgdW5pdmVyc2FsIGhhc2gsIHB1
dCB0aGUga2V5c3RyZWFtCi0gICAqIHByZWZpeCBpbnRvIHRoZSBhdXRoZW50aWNhdGlvbiB0YWcK
LSAgICovCi0gIHByZWZpeF9sZW4gPSBzcnRwX2F1dGhfZ2V0X3ByZWZpeF9sZW5ndGgoc2Vzc2lv
bl9rZXlzLT5ydGNwX2F1dGgpOyAgICAKLSAgaWYgKHByZWZpeF9sZW4pIHsKLSAgICBzdGF0dXMg
PSBzcnRwX2NpcGhlcl9vdXRwdXQoc2Vzc2lvbl9rZXlzLT5ydGNwX2NpcGhlciwgYXV0aF90YWcs
ICZwcmVmaXhfbGVuKTsKLSAgICBkZWJ1Z19wcmludChtb2Rfc3J0cCwgImtleXN0cmVhbSBwcmVm
aXg6ICVzIiwgCi0JCXNydHBfb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcoYXV0aF90YWcsIHByZWZp
eF9sZW4pKTsKLSAgICBpZiAoc3RhdHVzKQotICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19j
aXBoZXJfZmFpbDsKLSAgfQotCi0gIC8qIGlmIHdlJ3JlIGRlY3J5cHRpbmcsIGV4b3Iga2V5c3Ry
ZWFtIGludG8gdGhlIG1lc3NhZ2UgKi8KLSAgaWYgKGVuY19zdGFydCkgewotICAgIHN0YXR1cyA9
IHNydHBfY2lwaGVyX2RlY3J5cHQoc2Vzc2lvbl9rZXlzLT5ydGNwX2NpcGhlciwgKHVpbnQ4X3Qg
KillbmNfc3RhcnQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmZW5jX29jdGV0
X2xlbik7Ci0gICAgaWYgKHN0YXR1cykKLSAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfY2lw
aGVyX2ZhaWw7Ci0gIH0KLQotICAvKiBkZWNyZWFzZSB0aGUgcGFja2V0IGxlbmd0aCBieSB0aGUg
bGVuZ3RoIG9mIHRoZSBhdXRoIHRhZyBhbmQgc2VxX251bSAqLwotICAqcGt0X29jdGV0X2xlbiAt
PSAodGFnX2xlbiArIHNpemVvZihzcnRjcF90cmFpbGVyX3QpKTsKLQotICAvKiBkZWNyZWFzZSB0
aGUgcGFja2V0IGxlbmd0aCBieSB0aGUgbGVuZ3RoIG9mIHRoZSBta2lfc2l6ZSAqLwotICAqcGt0
X29jdGV0X2xlbiAtPSBta2lfc2l6ZTsKLQotICAvKgotICAgKiBpZiBFS1QgaXMgaW4gZWZmZWN0
LCBzdWJ0cmFjdCB0aGUgRUtUIGRhdGEgb3V0IG9mIHRoZSBwYWNrZXQKLSAgICogbGVuZ3RoCi0g
ICAqLwotICAqcGt0X29jdGV0X2xlbiAtPSBzcnRwX2VrdF9vY3RldHNfYWZ0ZXJfYmFzZV90YWco
c3RyZWFtLT5la3QpOwotCi0gIC8qIAotICAgKiB2ZXJpZnkgdGhhdCBzdHJlYW0gaXMgZm9yIHJl
Y2VpdmVkIHRyYWZmaWMgLSB0aGlzIGNoZWNrIHdpbGwKLSAgICogZGV0ZWN0IFNTUkMgY29sbGlz
aW9ucywgc2luY2UgYSBzdHJlYW0gdGhhdCBhcHBlYXJzIGluIGJvdGgKLSAgICogc3J0cF9wcm90
ZWN0KCkgYW5kIHNydHBfdW5wcm90ZWN0KCkgd2lsbCBmYWlsIHRoaXMgdGVzdCBpbiBvbmUgb2YK
LSAgICogdGhvc2UgZnVuY3Rpb25zLgotICAgKgotICAgKiB3ZSBkbyB0aGlzIGNoZWNrICphZnRl
ciogdGhlIGF1dGhlbnRpY2F0aW9uIGNoZWNrLCBzbyB0aGF0IHRoZQotICAgKiBsYXR0ZXIgY2hl
Y2sgd2lsbCBjYXRjaCBhbnkgYXR0ZW1wdHMgdG8gZm9vbCB1cyBpbnRvIHRoaW5raW5nCi0gICAq
IHRoYXQgd2UndmUgZ290IGEgY29sbGlzaW9uCi0gICAqLwotICBpZiAoc3RyZWFtLT5kaXJlY3Rp
b24gIT0gZGlyX3NydHBfcmVjZWl2ZXIpIHsKLSAgICBpZiAoc3RyZWFtLT5kaXJlY3Rpb24gPT0g
ZGlyX3Vua25vd24pIHsKLSAgICAgIHN0cmVhbS0+ZGlyZWN0aW9uID0gZGlyX3NydHBfcmVjZWl2
ZXI7Ci0gICAgfSBlbHNlIHsKLSAgICAgIHNydHBfaGFuZGxlX2V2ZW50KGN0eCwgc3RyZWFtLCBl
dmVudF9zc3JjX2NvbGxpc2lvbik7Ci0gICAgfQotICB9Ci0KLSAgLyogCi0gICAqIGlmIHRoZSBz
dHJlYW0gaXMgYSAncHJvdmlzaW9uYWwnIG9uZSwgaW4gd2hpY2ggdGhlIHRlbXBsYXRlIGNvbnRl
eHQKLSAgICogaXMgdXNlZCwgdGhlbiB3ZSBuZWVkIHRvIGFsbG9jYXRlIGEgbmV3IHN0cmVhbSBh
dCB0aGlzIHBvaW50LCBzaW5jZQotICAgKiB0aGUgYXV0aGVudGljYXRpb24gcGFzc2VkCi0gICAq
LwotICBpZiAoc3RyZWFtID09IGN0eC0+c3RyZWFtX3RlbXBsYXRlKSB7ICAKLSAgICBzcnRwX3N0
cmVhbV9jdHhfdCAqbmV3X3N0cmVhbTsKLQotICAgIC8qIAotICAgICAqIGFsbG9jYXRlIGFuZCBp
bml0aWFsaXplIGEgbmV3IHN0cmVhbSAKLSAgICAgKiAKLSAgICAgKiBub3RlIHRoYXQgd2UgaW5k
aWNhdGUgZmFpbHVyZSBpZiB3ZSBjYW4ndCBhbGxvY2F0ZSB0aGUgbmV3Ci0gICAgICogc3RyZWFt
LCBhbmQgc29tZSBpbXBsZW1lbnRhdGlvbnMgd2lsbCB3YW50IHRvIG5vdCByZXR1cm4KLSAgICAg
KiBmYWlsdXJlIGhlcmUKLSAgICAgKi8KLSAgICBzdGF0dXMgPSBzcnRwX3N0cmVhbV9jbG9uZShj
dHgtPnN0cmVhbV90ZW1wbGF0ZSwgaGRyLT5zc3JjLCAmbmV3X3N0cmVhbSk7IAotICAgIGlmIChz
dGF0dXMpCi0gICAgICByZXR1cm4gc3RhdHVzOwotICAgIAotICAgIC8qIGFkZCBuZXcgc3RyZWFt
IHRvIHRoZSBoZWFkIG9mIHRoZSBzdHJlYW1fbGlzdCAqLwotICAgIG5ld19zdHJlYW0tPm5leHQg
PSBjdHgtPnN0cmVhbV9saXN0OwotICAgIGN0eC0+c3RyZWFtX2xpc3QgPSBuZXdfc3RyZWFtOwot
ICAgIAotICAgIC8qIHNldCBzdHJlYW0gKHRoZSBwb2ludGVyIHVzZWQgaW4gdGhpcyBmdW5jdGlv
bikgKi8KLSAgICBzdHJlYW0gPSBuZXdfc3RyZWFtOwotICB9Ci0KLSAgLyogd2UndmUgcGFzc2Vk
IHRoZSBhdXRoZW50aWNhdGlvbiBjaGVjaywgc28gYWRkIHNlcV9udW0gdG8gdGhlIHJkYiAqLwot
ICBzcnRwX3JkYl9hZGRfaW5kZXgoJnN0cmVhbS0+cnRjcF9yZGIsIHNlcV9udW0pOwotICAgIAot
ICAgIAotICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOyAgCi19Ci0KLQogLyoKICAqIHVzZXIg
ZGF0YSB3aXRoaW4gc3J0cF90IGNvbnRleHQKICAqLwogCi12b2lkCi1zcnRwX3NldF91c2VyX2Rh
dGEoc3J0cF90IGN0eCwgdm9pZCAqZGF0YSkgewotICBjdHgtPnVzZXJfZGF0YSA9IGRhdGE7Cit2
b2lkIHNydHBfc2V0X3VzZXJfZGF0YShzcnRwX3QgY3R4LCB2b2lkICpkYXRhKQoreworICAgIGN0
eC0+dXNlcl9kYXRhID0gZGF0YTsKIH0KIAotdm9pZCoKLXNydHBfZ2V0X3VzZXJfZGF0YShzcnRw
X3QgY3R4KSB7Ci0gIHJldHVybiBjdHgtPnVzZXJfZGF0YTsKK3ZvaWQgKnNydHBfZ2V0X3VzZXJf
ZGF0YShzcnRwX3QgY3R4KQoreworICAgIHJldHVybiBjdHgtPnVzZXJfZGF0YTsKIH0KIAotCiAv
KgotICogZHRscyBrZXlpbmcgZm9yIHNydHAgCisgKiBkdGxzIGtleWluZyBmb3Igc3J0cAogICov
CiAKLXNydHBfZXJyX3N0YXR1c190Ci1zcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Zyb21fcHJvZmls
ZV9mb3JfcnRwKHNydHBfY3J5cHRvX3BvbGljeV90ICpwb2xpY3ksIAotCQkJCSAgICAgICAgICAg
IHNydHBfcHJvZmlsZV90IHByb2ZpbGUpIHsKLQotICAvKiBzZXQgU1JUUCBwb2xpY3kgZnJvbSB0
aGUgU1JUUCBwcm9maWxlIGluIHRoZSBrZXkgc2V0ICovCi0gIHN3aXRjaChwcm9maWxlKSB7Ci0g
IGNhc2Ugc3J0cF9wcm9maWxlX2FlczEyOF9jbV9zaGExXzgwOgotICAgIHNydHBfY3J5cHRvX3Bv
bGljeV9zZXRfYWVzX2NtXzEyOF9obWFjX3NoYTFfODAocG9saWN5KTsKLSAgICBicmVhazsKLSAg
Y2FzZSBzcnRwX3Byb2ZpbGVfYWVzMTI4X2NtX3NoYTFfMzI6Ci0gICAgc3J0cF9jcnlwdG9fcG9s
aWN5X3NldF9hZXNfY21fMTI4X2htYWNfc2hhMV8zMihwb2xpY3kpOwotICAgIGJyZWFrOwotICBj
YXNlIHNydHBfcHJvZmlsZV9udWxsX3NoYTFfODA6Ci0gICAgc3J0cF9jcnlwdG9fcG9saWN5X3Nl
dF9udWxsX2NpcGhlcl9obWFjX3NoYTFfODAocG9saWN5KTsKLSAgICBicmVhazsKK3NydHBfZXJy
X3N0YXR1c190IHNydHBfY3J5cHRvX3BvbGljeV9zZXRfZnJvbV9wcm9maWxlX2Zvcl9ydHAoCisg
ICAgc3J0cF9jcnlwdG9fcG9saWN5X3QgKnBvbGljeSwKKyAgICBzcnRwX3Byb2ZpbGVfdCBwcm9m
aWxlKQoreworICAgIC8qIHNldCBTUlRQIHBvbGljeSBmcm9tIHRoZSBTUlRQIHByb2ZpbGUgaW4g
dGhlIGtleSBzZXQgKi8KKyAgICBzd2l0Y2ggKHByb2ZpbGUpIHsKKyAgICBjYXNlIHNydHBfcHJv
ZmlsZV9hZXMxMjhfY21fc2hhMV84MDoKKyAgICAgICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9h
ZXNfY21fMTI4X2htYWNfc2hhMV84MChwb2xpY3kpOworICAgICAgICBicmVhazsKKyAgICBjYXNl
IHNydHBfcHJvZmlsZV9hZXMxMjhfY21fc2hhMV8zMjoKKyAgICAgICAgc3J0cF9jcnlwdG9fcG9s
aWN5X3NldF9hZXNfY21fMTI4X2htYWNfc2hhMV8zMihwb2xpY3kpOworICAgICAgICBicmVhazsK
KyAgICBjYXNlIHNydHBfcHJvZmlsZV9udWxsX3NoYTFfODA6CisgICAgICAgIHNydHBfY3J5cHRv
X3BvbGljeV9zZXRfbnVsbF9jaXBoZXJfaG1hY19zaGExXzgwKHBvbGljeSk7CisgICAgICAgIGJy
ZWFrOwogI2lmIGRlZmluZWQoT1BFTlNTTCkKLSAgY2FzZSBzcnRwX3Byb2ZpbGVfYWVhZF9hZXNf
MTI4X2djbToKLSAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21fMTI4XzE2X2F1dGgo
cG9saWN5KTsKLSAgICBicmVhazsKLSAgY2FzZSBzcnRwX3Byb2ZpbGVfYWVhZF9hZXNfMjU2X2dj
bToKLSAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21fMjU2XzE2X2F1dGgocG9saWN5
KTsKLSAgICBicmVhazsKKyAgICBjYXNlIHNydHBfcHJvZmlsZV9hZWFkX2Flc18xMjhfZ2NtOgor
ICAgICAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21fMTI4XzE2X2F1dGgocG9saWN5
KTsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBzcnRwX3Byb2ZpbGVfYWVhZF9hZXNfMjU2X2dj
bToKKyAgICAgICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfZ2NtXzI1Nl8xNl9hdXRoKHBv
bGljeSk7CisgICAgICAgIGJyZWFrOwogI2VuZGlmCiAgICAgLyogdGhlIGZvbGxvd2luZyBwcm9m
aWxlcyBhcmUgbm90ICh5ZXQpIHN1cHBvcnRlZCAqLwotICBjYXNlIHNydHBfcHJvZmlsZV9udWxs
X3NoYTFfMzI6Ci0gIGRlZmF1bHQ6Ci0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfcGFy
YW07Ci0gIH0KKyAgICBjYXNlIHNydHBfcHJvZmlsZV9udWxsX3NoYTFfMzI6CisgICAgZGVmYXVs
dDoKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW07CisgICAgfQogCi0g
IHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CisgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19v
azsKIH0KIAotc3J0cF9lcnJfc3RhdHVzX3QKLXNydHBfY3J5cHRvX3BvbGljeV9zZXRfZnJvbV9w
cm9maWxlX2Zvcl9ydGNwKHNydHBfY3J5cHRvX3BvbGljeV90ICpwb2xpY3ksIAotCQkJCQkgICAg
IHNydHBfcHJvZmlsZV90IHByb2ZpbGUpIHsKLQotICAvKiBzZXQgU1JUUCBwb2xpY3kgZnJvbSB0
aGUgU1JUUCBwcm9maWxlIGluIHRoZSBrZXkgc2V0ICovCi0gIHN3aXRjaChwcm9maWxlKSB7Ci0g
IGNhc2Ugc3J0cF9wcm9maWxlX2FlczEyOF9jbV9zaGExXzgwOgotICAgIHNydHBfY3J5cHRvX3Bv
bGljeV9zZXRfYWVzX2NtXzEyOF9obWFjX3NoYTFfODAocG9saWN5KTsKLSAgICBicmVhazsKLSAg
Y2FzZSBzcnRwX3Byb2ZpbGVfYWVzMTI4X2NtX3NoYTFfMzI6Ci0gICAgLyogV2UgZG8gbm90IGhv
bm9yIHRoZSAzMi1iaXQgYXV0aCB0YWcgcmVxdWVzdCBzaW5jZQotICAgICAqIHRoaXMgaXMgbm90
IGNvbXBsaWFudCB3aXRoIFJGQyAzNzExICovCi0gICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9h
ZXNfY21fMTI4X2htYWNfc2hhMV84MChwb2xpY3kpOwotICAgIGJyZWFrOwotICBjYXNlIHNydHBf
cHJvZmlsZV9udWxsX3NoYTFfODA6Ci0gICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9udWxsX2Np
cGhlcl9obWFjX3NoYTFfODAocG9saWN5KTsKLSAgICBicmVhazsKK3NydHBfZXJyX3N0YXR1c190
IHNydHBfY3J5cHRvX3BvbGljeV9zZXRfZnJvbV9wcm9maWxlX2Zvcl9ydGNwKAorICAgIHNydHBf
Y3J5cHRvX3BvbGljeV90ICpwb2xpY3ksCisgICAgc3J0cF9wcm9maWxlX3QgcHJvZmlsZSkKK3sK
KyAgICAvKiBzZXQgU1JUUCBwb2xpY3kgZnJvbSB0aGUgU1JUUCBwcm9maWxlIGluIHRoZSBrZXkg
c2V0ICovCisgICAgc3dpdGNoIChwcm9maWxlKSB7CisgICAgY2FzZSBzcnRwX3Byb2ZpbGVfYWVz
MTI4X2NtX3NoYTFfODA6CisgICAgICAgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2NtXzEy
OF9obWFjX3NoYTFfODAocG9saWN5KTsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBzcnRwX3By
b2ZpbGVfYWVzMTI4X2NtX3NoYTFfMzI6CisgICAgICAgIC8qIFdlIGRvIG5vdCBob25vciB0aGUg
MzItYml0IGF1dGggdGFnIHJlcXVlc3Qgc2luY2UKKyAgICAgICAgICogdGhpcyBpcyBub3QgY29t
cGxpYW50IHdpdGggUkZDIDM3MTEgKi8KKyAgICAgICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9h
ZXNfY21fMTI4X2htYWNfc2hhMV84MChwb2xpY3kpOworICAgICAgICBicmVhazsKKyAgICBjYXNl
IHNydHBfcHJvZmlsZV9udWxsX3NoYTFfODA6CisgICAgICAgIHNydHBfY3J5cHRvX3BvbGljeV9z
ZXRfbnVsbF9jaXBoZXJfaG1hY19zaGExXzgwKHBvbGljeSk7CisgICAgICAgIGJyZWFrOwogI2lm
IGRlZmluZWQoT1BFTlNTTCkKLSAgY2FzZSBzcnRwX3Byb2ZpbGVfYWVhZF9hZXNfMTI4X2djbToK
LSAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21fMTI4XzE2X2F1dGgocG9saWN5KTsK
LSAgICBicmVhazsKLSAgY2FzZSBzcnRwX3Byb2ZpbGVfYWVhZF9hZXNfMjU2X2djbToKLSAgICBz
cnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21fMjU2XzE2X2F1dGgocG9saWN5KTsKLSAgICBi
cmVhazsKKyAgICBjYXNlIHNydHBfcHJvZmlsZV9hZWFkX2Flc18xMjhfZ2NtOgorICAgICAgICBz
cnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21fMTI4XzE2X2F1dGgocG9saWN5KTsKKyAgICAg
ICAgYnJlYWs7CisgICAgY2FzZSBzcnRwX3Byb2ZpbGVfYWVhZF9hZXNfMjU2X2djbToKKyAgICAg
ICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfZ2NtXzI1Nl8xNl9hdXRoKHBvbGljeSk7Cisg
ICAgICAgIGJyZWFrOwogI2VuZGlmCiAgICAgLyogdGhlIGZvbGxvd2luZyBwcm9maWxlcyBhcmUg
bm90ICh5ZXQpIHN1cHBvcnRlZCAqLwotICBjYXNlIHNydHBfcHJvZmlsZV9udWxsX3NoYTFfMzI6
Ci0gIGRlZmF1bHQ6Ci0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW07Ci0gIH0K
KyAgICBjYXNlIHNydHBfcHJvZmlsZV9udWxsX3NoYTFfMzI6CisgICAgZGVmYXVsdDoKKyAgICAg
ICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW07CisgICAgfQogCi0gIHJldHVybiBz
cnRwX2Vycl9zdGF0dXNfb2s7CisgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0KIAot
dm9pZCBzcnRwX2FwcGVuZF9zYWx0X3RvX2tleSh1aW50OF90ICprZXksIHVuc2lnbmVkIGludCBi
eXRlc19pbl9rZXksIHVpbnQ4X3QgKnNhbHQsIHVuc2lnbmVkIGludCBieXRlc19pbl9zYWx0KSB7
Ci0gIG1lbWNweShrZXkgKyBieXRlc19pbl9rZXksIHNhbHQsIGJ5dGVzX2luX3NhbHQpOwordm9p
ZCBzcnRwX2FwcGVuZF9zYWx0X3RvX2tleSh1aW50OF90ICprZXksCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHVuc2lnbmVkIGludCBieXRlc19pbl9rZXksCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHVpbnQ4X3QgKnNhbHQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHVuc2lnbmVkIGludCBieXRlc19pbl9zYWx0KQoreworICAgIG1lbWNweShrZXkgKyBieXRlc19p
bl9rZXksIHNhbHQsIGJ5dGVzX2luX3NhbHQpOwogfQogCi11bnNpZ25lZCBpbnQKLXNydHBfcHJv
ZmlsZV9nZXRfbWFzdGVyX2tleV9sZW5ndGgoc3J0cF9wcm9maWxlX3QgcHJvZmlsZSkgewotCi0g
IHN3aXRjaChwcm9maWxlKSB7Ci0gIGNhc2Ugc3J0cF9wcm9maWxlX2FlczEyOF9jbV9zaGExXzgw
OgotICAgIHJldHVybiBTUlRQX0FFU18xMjhfS0VZX0xFTjsKLSAgICBicmVhazsKLSAgY2FzZSBz
cnRwX3Byb2ZpbGVfYWVzMTI4X2NtX3NoYTFfMzI6Ci0gICAgcmV0dXJuIFNSVFBfQUVTXzEyOF9L
RVlfTEVOOwotICAgIGJyZWFrOwotICBjYXNlIHNydHBfcHJvZmlsZV9udWxsX3NoYTFfODA6Ci0g
ICAgcmV0dXJuIFNSVFBfQUVTXzEyOF9LRVlfTEVOOwotICAgIGJyZWFrOwotICBjYXNlIHNydHBf
cHJvZmlsZV9hZWFkX2Flc18xMjhfZ2NtOgotICAgIHJldHVybiBTUlRQX0FFU18xMjhfS0VZX0xF
TjsKLSAgICBicmVhazsKLSAgY2FzZSBzcnRwX3Byb2ZpbGVfYWVhZF9hZXNfMjU2X2djbToKLSAg
ICByZXR1cm4gU1JUUF9BRVNfMjU2X0tFWV9MRU47Ci0gICAgYnJlYWs7Cit1bnNpZ25lZCBpbnQg
c3J0cF9wcm9maWxlX2dldF9tYXN0ZXJfa2V5X2xlbmd0aChzcnRwX3Byb2ZpbGVfdCBwcm9maWxl
KQoreworICAgIHN3aXRjaCAocHJvZmlsZSkgeworICAgIGNhc2Ugc3J0cF9wcm9maWxlX2FlczEy
OF9jbV9zaGExXzgwOgorICAgICAgICByZXR1cm4gU1JUUF9BRVNfMTI4X0tFWV9MRU47CisgICAg
ICAgIGJyZWFrOworICAgIGNhc2Ugc3J0cF9wcm9maWxlX2FlczEyOF9jbV9zaGExXzMyOgorICAg
ICAgICByZXR1cm4gU1JUUF9BRVNfMTI4X0tFWV9MRU47CisgICAgICAgIGJyZWFrOworICAgIGNh
c2Ugc3J0cF9wcm9maWxlX251bGxfc2hhMV84MDoKKyAgICAgICAgcmV0dXJuIFNSVFBfQUVTXzEy
OF9LRVlfTEVOOworICAgICAgICBicmVhazsKKyAgICBjYXNlIHNydHBfcHJvZmlsZV9hZWFkX2Fl
c18xMjhfZ2NtOgorICAgICAgICByZXR1cm4gU1JUUF9BRVNfMTI4X0tFWV9MRU47CisgICAgICAg
IGJyZWFrOworICAgIGNhc2Ugc3J0cF9wcm9maWxlX2FlYWRfYWVzXzI1Nl9nY206CisgICAgICAg
IHJldHVybiBTUlRQX0FFU18yNTZfS0VZX0xFTjsKKyAgICAgICAgYnJlYWs7CiAgICAgLyogdGhl
IGZvbGxvd2luZyBwcm9maWxlcyBhcmUgbm90ICh5ZXQpIHN1cHBvcnRlZCAqLwotICBjYXNlIHNy
dHBfcHJvZmlsZV9udWxsX3NoYTFfMzI6Ci0gIGRlZmF1bHQ6Ci0gICAgcmV0dXJuIDA7ICAvKiBp
bmRpY2F0ZSBlcnJvciBieSByZXR1cm5pbmcgYSB6ZXJvICovCi0gIH0KKyAgICBjYXNlIHNydHBf
cHJvZmlsZV9udWxsX3NoYTFfMzI6CisgICAgZGVmYXVsdDoKKyAgICAgICAgcmV0dXJuIDA7IC8q
IGluZGljYXRlIGVycm9yIGJ5IHJldHVybmluZyBhIHplcm8gKi8KKyAgICB9CiB9CiAKLXVuc2ln
bmVkIGludAotc3J0cF9wcm9maWxlX2dldF9tYXN0ZXJfc2FsdF9sZW5ndGgoc3J0cF9wcm9maWxl
X3QgcHJvZmlsZSkgewotCi0gIHN3aXRjaChwcm9maWxlKSB7Ci0gIGNhc2Ugc3J0cF9wcm9maWxl
X2FlczEyOF9jbV9zaGExXzgwOgotICAgIHJldHVybiBTUlRQX1NBTFRfTEVOOwotICAgIGJyZWFr
OwotICBjYXNlIHNydHBfcHJvZmlsZV9hZXMxMjhfY21fc2hhMV8zMjoKLSAgICByZXR1cm4gU1JU
UF9TQUxUX0xFTjsKLSAgICBicmVhazsKLSAgY2FzZSBzcnRwX3Byb2ZpbGVfbnVsbF9zaGExXzgw
OgotICAgIHJldHVybiBTUlRQX1NBTFRfTEVOOwotICAgIGJyZWFrOwotICBjYXNlIHNydHBfcHJv
ZmlsZV9hZWFkX2Flc18xMjhfZ2NtOgotICAgIHJldHVybiBTUlRQX0FFQURfU0FMVF9MRU47Ci0g
ICAgYnJlYWs7Ci0gIGNhc2Ugc3J0cF9wcm9maWxlX2FlYWRfYWVzXzI1Nl9nY206Ci0gICAgcmV0
dXJuIFNSVFBfQUVBRF9TQUxUX0xFTjsKLSAgICBicmVhazsKK3Vuc2lnbmVkIGludCBzcnRwX3By
b2ZpbGVfZ2V0X21hc3Rlcl9zYWx0X2xlbmd0aChzcnRwX3Byb2ZpbGVfdCBwcm9maWxlKQorewor
ICAgIHN3aXRjaCAocHJvZmlsZSkgeworICAgIGNhc2Ugc3J0cF9wcm9maWxlX2FlczEyOF9jbV9z
aGExXzgwOgorICAgICAgICByZXR1cm4gU1JUUF9TQUxUX0xFTjsKKyAgICAgICAgYnJlYWs7Cisg
ICAgY2FzZSBzcnRwX3Byb2ZpbGVfYWVzMTI4X2NtX3NoYTFfMzI6CisgICAgICAgIHJldHVybiBT
UlRQX1NBTFRfTEVOOworICAgICAgICBicmVhazsKKyAgICBjYXNlIHNydHBfcHJvZmlsZV9udWxs
X3NoYTFfODA6CisgICAgICAgIHJldHVybiBTUlRQX1NBTFRfTEVOOworICAgICAgICBicmVhazsK
KyAgICBjYXNlIHNydHBfcHJvZmlsZV9hZWFkX2Flc18xMjhfZ2NtOgorICAgICAgICByZXR1cm4g
U1JUUF9BRUFEX1NBTFRfTEVOOworICAgICAgICBicmVhazsKKyAgICBjYXNlIHNydHBfcHJvZmls
ZV9hZWFkX2Flc18yNTZfZ2NtOgorICAgICAgICByZXR1cm4gU1JUUF9BRUFEX1NBTFRfTEVOOwor
ICAgICAgICBicmVhazsKICAgICAvKiB0aGUgZm9sbG93aW5nIHByb2ZpbGVzIGFyZSBub3QgKHll
dCkgc3VwcG9ydGVkICovCi0gIGNhc2Ugc3J0cF9wcm9maWxlX251bGxfc2hhMV8zMjoKLSAgZGVm
YXVsdDoKLSAgICByZXR1cm4gMDsgIC8qIGluZGljYXRlIGVycm9yIGJ5IHJldHVybmluZyBhIHpl
cm8gKi8KLSAgfQorICAgIGNhc2Ugc3J0cF9wcm9maWxlX251bGxfc2hhMV8zMjoKKyAgICBkZWZh
dWx0OgorICAgICAgICByZXR1cm4gMDsgLyogaW5kaWNhdGUgZXJyb3IgYnkgcmV0dXJuaW5nIGEg
emVybyAqLworICAgIH0KIH0KIAotc3J0cF9lcnJfc3RhdHVzX3QKLXNydHBfZ2V0X3Byb3RlY3Rf
dHJhaWxlcl9sZW5ndGgoc3J0cF90IHNlc3Npb24sCi0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHVpbnQzMl90IHVzZV9ta2ksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHVpbnQzMl90IG1raV9pbmRleCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWlu
dDMyX3QgKmxlbmd0aCkgCitzcnRwX2Vycl9zdGF0dXNfdCBzdHJlYW1fZ2V0X3Byb3RlY3RfdHJh
aWxlcl9sZW5ndGgoc3J0cF9zdHJlYW1fY3R4X3QgKnN0cmVhbSwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBpc19ydHAsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3Qg
dXNlX21raSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB1aW50MzJfdCBta2lfaW5kZXgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgKmxlbmd0aCkKIHsKLSAgICBzcnRwX3N0cmVh
bV9jdHhfdCAqc3RyZWFtOwotCi0gICAgaWYgKHNlc3Npb24gPT0gTlVMTCkKLSAgICAgIHJldHVy
biBzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtOwotCiAgICAgKmxlbmd0aCA9IDA7CiAKLSAgICAv
KiBUcnkgb2J0YWluaW5nIHN0cmVhbSBmcm9tIHN0cmVhbV9saXN0ICovCi0gICAgc3RyZWFtID0g
c2Vzc2lvbi0+c3RyZWFtX2xpc3Q7Ci0KLSAgICBpZiAoc3RyZWFtID09IE5VTEwpIHsKLSAgICAg
ICAgLyogVHJ5IG9idGFpbmluZyB0aGUgdGVtcGxhdGUgc3RyZWFtICovCi0gICAgICAgIHN0cmVh
bSA9IHNlc3Npb24tPnN0cmVhbV90ZW1wbGF0ZTsKLSAgICB9Ci0KLSAgICBpZiAoc3RyZWFtID09
IE5VTEwpIHsKLSAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW07Ci0gICAg
fQorICAgIHNydHBfc2Vzc2lvbl9rZXlzX3QgKnNlc3Npb25fa2V5OwogCiAgICAgaWYgKHVzZV9t
a2kpIHsKLSAgICAgICBpZiAobWtpX2luZGV4ID4gc3RyZWFtLT5udW1fbWFzdGVyX2tleXMpCi0g
ICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYmFkX21raTsKKyAgICAgICAgaWYgKG1r
aV9pbmRleCA+PSBzdHJlYW0tPm51bV9tYXN0ZXJfa2V5cykgeworICAgICAgICAgICAgcmV0dXJu
IHNydHBfZXJyX3N0YXR1c19iYWRfbWtpOworICAgICAgICB9CisgICAgICAgIHNlc3Npb25fa2V5
ID0gJnN0cmVhbS0+c2Vzc2lvbl9rZXlzW21raV9pbmRleF07CiAKLSAgICAgICAqbGVuZ3RoICs9
IHN0cmVhbS0+c2Vzc2lvbl9rZXlzW21raV9pbmRleF0ubWtpX3NpemU7Ci0gICAgICAgKmxlbmd0
aCArPSBzcnRwX2F1dGhfZ2V0X3RhZ19sZW5ndGgoc3RyZWFtLT5zZXNzaW9uX2tleXNbbWtpX2lu
ZGV4XS5ydHBfYXV0aCk7CisgICAgICAgICpsZW5ndGggKz0gc2Vzc2lvbl9rZXktPm1raV9zaXpl
OworCisgICAgfSBlbHNlIHsKKyAgICAgICAgc2Vzc2lvbl9rZXkgPSAmc3RyZWFtLT5zZXNzaW9u
X2tleXNbMF07CisgICAgfQorICAgIGlmIChpc19ydHApIHsKKyAgICAgICAgKmxlbmd0aCArPSBz
cnRwX2F1dGhfZ2V0X3RhZ19sZW5ndGgoc2Vzc2lvbl9rZXktPnJ0cF9hdXRoKTsKICAgICB9IGVs
c2UgewotICAgICAgICpsZW5ndGggKz0gc3J0cF9hdXRoX2dldF90YWdfbGVuZ3RoKHN0cmVhbS0+
c2Vzc2lvbl9rZXlzWzBdLnJ0cF9hdXRoKTsKKyAgICAgICAgKmxlbmd0aCArPSBzcnRwX2F1dGhf
Z2V0X3RhZ19sZW5ndGgoc2Vzc2lvbl9rZXktPnJ0Y3BfYXV0aCk7CisgICAgICAgICpsZW5ndGgg
Kz0gc2l6ZW9mKHNydGNwX3RyYWlsZXJfdCk7CiAgICAgfQogCiAgICAgcmV0dXJuIHNydHBfZXJy
X3N0YXR1c19vazsKIH0KIAotc3J0cF9lcnJfc3RhdHVzX3QKLXNydHBfZ2V0X3Byb3RlY3RfcnRj
cF90cmFpbGVyX2xlbmd0aChzcnRwX3Qgc2Vzc2lvbiwKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB1aW50MzJfdCB1c2VfbWtpLAotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHVpbnQzMl90IG1raV9pbmRleCwKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB1aW50MzJfdCAqbGVuZ3RoKSAKK3NydHBfZXJyX3N0YXR1c190IGdldF9w
cm90ZWN0X3RyYWlsZXJfbGVuZ3RoKHNydHBfdCBzZXNzaW9uLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgaXNfcnRwLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgdXNlX21raSwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IG1raV9pbmRl
eCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90
ICpsZW5ndGgpCiB7CiAgICAgc3J0cF9zdHJlYW1fY3R4X3QgKnN0cmVhbTsKIAotICAgIGlmIChz
ZXNzaW9uID09IE5VTEwpCi0gICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2JhZF9wYXJhbTsK
KyAgICBpZiAoc2Vzc2lvbiA9PSBOVUxMKSB7CisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0
dXNfYmFkX3BhcmFtOworICAgIH0KIAotICAgICpsZW5ndGggPSAwOworICAgIGlmIChzZXNzaW9u
LT5zdHJlYW1fdGVtcGxhdGUgPT0gTlVMTCAmJiBzZXNzaW9uLT5zdHJlYW1fbGlzdCA9PSBOVUxM
KSB7CisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYmFkX3BhcmFtOworICAgIH0KIAot
ICAgIC8qIFRyeSBvYnRhaW5pbmcgc3RyZWFtIGZyb20gc3RyZWFtX2xpc3QgKi8KLSAgICBzdHJl
YW0gPSBzZXNzaW9uLT5zdHJlYW1fbGlzdDsKKyAgICAqbGVuZ3RoID0gMDsKIAotICAgIGlmIChz
dHJlYW0gPT0gTlVMTCkgewotICAgICAgICAvKiBUcnkgb2J0YWluaW5nIHRoZSB0ZW1wbGF0ZSBz
dHJlYW0gKi8KLSAgICAgICAgc3RyZWFtID0gc2Vzc2lvbi0+c3RyZWFtX3RlbXBsYXRlOwotICAg
IH0KKyAgICBzdHJlYW0gPSBzZXNzaW9uLT5zdHJlYW1fdGVtcGxhdGU7CiAKLSAgICBpZiAoc3Ry
ZWFtID09IE5VTEwpIHsKLSAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfcGFyYW07
CisgICAgaWYgKHN0cmVhbSAhPSBOVUxMKSB7CisgICAgICAgIHN0cmVhbV9nZXRfcHJvdGVjdF90
cmFpbGVyX2xlbmd0aChzdHJlYW0sIGlzX3J0cCwgdXNlX21raSwgbWtpX2luZGV4LAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVuZ3RoKTsKICAgICB9CiAKLSAg
ICBpZiAodXNlX21raSkgewotICAgICAgIGlmIChta2lfaW5kZXggPiBzdHJlYW0tPm51bV9tYXN0
ZXJfa2V5cykKLSAgICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19iYWRfbWtpOworICAg
IHN0cmVhbSA9IHNlc3Npb24tPnN0cmVhbV9saXN0OwogCi0gICAgICAgKmxlbmd0aCArPSBzdHJl
YW0tPnNlc3Npb25fa2V5c1tta2lfaW5kZXhdLm1raV9zaXplOwotICAgICAgICpsZW5ndGggKz0g
c3J0cF9hdXRoX2dldF90YWdfbGVuZ3RoKHN0cmVhbS0+c2Vzc2lvbl9rZXlzW21raV9pbmRleF0u
cnRjcF9hdXRoKTsKLSAgICB9IGVsc2UgewotICAgICAgICpsZW5ndGggKz0gc3J0cF9hdXRoX2dl
dF90YWdfbGVuZ3RoKHN0cmVhbS0+c2Vzc2lvbl9rZXlzWzBdLnJ0Y3BfYXV0aCk7CisgICAgd2hp
bGUgKHN0cmVhbSAhPSBOVUxMKSB7CisgICAgICAgIHVpbnQzMl90IHRlbXBfbGVuZ3RoOworICAg
ICAgICBpZiAoc3RyZWFtX2dldF9wcm90ZWN0X3RyYWlsZXJfbGVuZ3RoKHN0cmVhbSwgaXNfcnRw
LCB1c2VfbWtpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IG1raV9pbmRleCwgJnRlbXBfbGVuZ3RoKSA9PQorICAgICAgICAgICAgc3J0cF9lcnJfc3RhdHVz
X29rKSB7CisgICAgICAgICAgICBpZiAodGVtcF9sZW5ndGggPiAqbGVuZ3RoKSB7CisgICAgICAg
ICAgICAgICAgKmxlbmd0aCA9IHRlbXBfbGVuZ3RoOworICAgICAgICAgICAgfQorICAgICAgICB9
CisgICAgICAgIHN0cmVhbSA9IHN0cmVhbS0+bmV4dDsKICAgICB9Ci0gCi0gICAgKmxlbmd0aCAr
PSBzaXplb2Yoc3J0Y3BfdHJhaWxlcl90KTsKIAogICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNf
b2s7CiB9CiAKK3NydHBfZXJyX3N0YXR1c190IHNydHBfZ2V0X3Byb3RlY3RfdHJhaWxlcl9sZW5n
dGgoc3J0cF90IHNlc3Npb24sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHVpbnQzMl90IHVzZV9ta2ksCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IG1raV9pbmRleCwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgKmxlbmd0aCkK
K3sKKyAgICByZXR1cm4gZ2V0X3Byb3RlY3RfdHJhaWxlcl9sZW5ndGgoc2Vzc2lvbiwgMSwgdXNl
X21raSwgbWtpX2luZGV4LCBsZW5ndGgpOworfQorCitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2dl
dF9wcm90ZWN0X3J0Y3BfdHJhaWxlcl9sZW5ndGgoc3J0cF90IHNlc3Npb24sCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgdXNl
X21raSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB1aW50MzJfdCBta2lfaW5kZXgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgKmxlbmd0aCkKK3sKKyAgICByZXR1cm4g
Z2V0X3Byb3RlY3RfdHJhaWxlcl9sZW5ndGgoc2Vzc2lvbiwgMCwgdXNlX21raSwgbWtpX2luZGV4
LCBsZW5ndGgpOworfQogCiAvKgogICogU1JUUCBkZWJ1ZyBpbnRlcmZhY2UKQEAgLTQ1OTEsMjYg
KzQ2NTYsMzQgQEAgc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9saXN0X2RlYnVnX21vZHVsZXModm9p
ZCkKICAqLwogCiBzdGF0aWMgc3J0cF9sb2dfaGFuZGxlcl9mdW5jX3QgKnNydHBfbG9nX2hhbmRs
ZXIgPSBOVUxMOwotc3RhdGljIHZvaWQgKiBzcnRwX2xvZ19oYW5kbGVyX2RhdGEgPSBOVUxMOwor
c3RhdGljIHZvaWQgKnNydHBfbG9nX2hhbmRsZXJfZGF0YSA9IE5VTEw7CiAKLXZvaWQgc3J0cF9l
cnJfaGFuZGxlcihzcnRwX2Vycl9yZXBvcnRpbmdfbGV2ZWxfdCBsZXZlbCwgY29uc3QgY2hhciAq
IG1zZykKK3ZvaWQgc3J0cF9lcnJfaGFuZGxlcihzcnRwX2Vycl9yZXBvcnRpbmdfbGV2ZWxfdCBs
ZXZlbCwgY29uc3QgY2hhciAqbXNnKQogewogICAgIGlmIChzcnRwX2xvZ19oYW5kbGVyKSB7CiAg
ICAgICAgIHNydHBfbG9nX2xldmVsX3QgbG9nX2xldmVsID0gc3J0cF9sb2dfbGV2ZWxfZXJyb3I7
Ci0gICAgICAgIHN3aXRjaChsZXZlbCkgewotICAgICAgICAgICAgY2FzZSBzcnRwX2Vycl9sZXZl
bF9lcnJvcjogbG9nX2xldmVsID0gc3J0cF9sb2dfbGV2ZWxfZXJyb3I7IGJyZWFrOwotICAgICAg
ICAgICAgY2FzZSBzcnRwX2Vycl9sZXZlbF93YXJuaW5nOiBsb2dfbGV2ZWwgPSBzcnRwX2xvZ19s
ZXZlbF93YXJuaW5nOyBicmVhazsKLSAgICAgICAgICAgIGNhc2Ugc3J0cF9lcnJfbGV2ZWxfaW5m
bzogbG9nX2xldmVsID0gc3J0cF9sb2dfbGV2ZWxfaW5mbzsgYnJlYWs7Ci0gICAgICAgICAgICBj
YXNlIHNydHBfZXJyX2xldmVsX2RlYnVnOiBsb2dfbGV2ZWwgPSBzcnRwX2xvZ19sZXZlbF9kZWJ1
ZzsgYnJlYWs7CisgICAgICAgIHN3aXRjaCAobGV2ZWwpIHsKKyAgICAgICAgY2FzZSBzcnRwX2Vy
cl9sZXZlbF9lcnJvcjoKKyAgICAgICAgICAgIGxvZ19sZXZlbCA9IHNydHBfbG9nX2xldmVsX2Vy
cm9yOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2Ugc3J0cF9lcnJfbGV2ZWxfd2Fy
bmluZzoKKyAgICAgICAgICAgIGxvZ19sZXZlbCA9IHNydHBfbG9nX2xldmVsX3dhcm5pbmc7Cisg
ICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSBzcnRwX2Vycl9sZXZlbF9pbmZvOgorICAg
ICAgICAgICAgbG9nX2xldmVsID0gc3J0cF9sb2dfbGV2ZWxfaW5mbzsKKyAgICAgICAgICAgIGJy
ZWFrOworICAgICAgICBjYXNlIHNydHBfZXJyX2xldmVsX2RlYnVnOgorICAgICAgICAgICAgbG9n
X2xldmVsID0gc3J0cF9sb2dfbGV2ZWxfZGVidWc7CisgICAgICAgICAgICBicmVhazsKICAgICAg
ICAgfQogCiAgICAgICAgIHNydHBfbG9nX2hhbmRsZXIobG9nX2xldmVsLCBtc2csIHNydHBfbG9n
X2hhbmRsZXJfZGF0YSk7CiAgICAgfQogfQogCi1zcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2luc3Rh
bGxfbG9nX2hhbmRsZXIoc3J0cF9sb2dfaGFuZGxlcl9mdW5jX3QgZnVuYywgdm9pZCAqIGRhdGEp
CitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2luc3RhbGxfbG9nX2hhbmRsZXIoc3J0cF9sb2dfaGFu
ZGxlcl9mdW5jX3QgZnVuYywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB2b2lkICpkYXRhKQogewotCiAgICAgLyoKICAgICAgKiBub3RlIHRoYXQgd2UgYWNjZXB0
IE5VTEwgYXJndW1lbnRzIGludGVudGlvbmFsbHkgLSBjYWxsaW5nIHRoaXMKICAgICAgKiBmdW5j
dGlvbiB3aXRoIGEgTlVMTCBhcmd1bWVudHMgcmVtb3ZlcyBhIGxvZyBoYW5kbGVyIHRoYXQncwpA
QCAtNDYyOCw4ICs0NzAxLDEwIEBAIHNydHBfZXJyX3N0YXR1c190IHNydHBfaW5zdGFsbF9sb2df
aGFuZGxlcihzcnRwX2xvZ19oYW5kbGVyX2Z1bmNfdCBmdW5jLCB2b2lkICoKICAgICByZXR1cm4g
c3J0cF9lcnJfc3RhdHVzX29rOwogfQogCi1zcnRwX2Vycl9zdGF0dXNfdAotc3J0cF9zZXRfc3Ry
ZWFtX3JvYyhzcnRwX3Qgc2Vzc2lvbiwgdWludDMyX3Qgc3NyYywgdWludDMyX3Qgcm9jKSB7Citz
cnRwX2Vycl9zdGF0dXNfdCBzcnRwX3NldF9zdHJlYW1fcm9jKHNydHBfdCBzZXNzaW9uLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBzc3JjLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCByb2MpCit7CiAgICAgc3J0
cF9zdHJlYW1fdCBzdHJlYW07CiAKICAgICBzdHJlYW0gPSBzcnRwX2dldF9zdHJlYW0oc2Vzc2lv
biwgaHRvbmwoc3NyYykpOwpAQCAtNDY0MSw4ICs0NzE2LDEwIEBAIHNydHBfc2V0X3N0cmVhbV9y
b2Moc3J0cF90IHNlc3Npb24sIHVpbnQzMl90IHNzcmMsIHVpbnQzMl90IHJvYykgewogICAgIHJl
dHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAKLXNydHBfZXJyX3N0YXR1c190Ci1zcnRwX2dl
dF9zdHJlYW1fcm9jKHNydHBfdCBzZXNzaW9uLCB1aW50MzJfdCBzc3JjLCB1aW50MzJfdCAqcm9j
KSB7CitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2dldF9zdHJlYW1fcm9jKHNydHBfdCBzZXNzaW9u
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBzc3JjLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCAqcm9jKQorewog
ICAgIHNydHBfc3RyZWFtX3Qgc3RyZWFtOwogCiAgICAgc3RyZWFtID0gc3J0cF9nZXRfc3RyZWFt
KHNlc3Npb24sIGh0b25sKHNzcmMpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC90ZXN0Ly5naXRhdHRyaWJ1dGVzIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL3Rl
c3QvLmdpdGF0dHJpYnV0ZXMKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGY3MzdhOTRj
NzY4MGM3MjU3MzE3YzRiNTUxOGMzOGEwYTY5OWY1MTAuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJj
ZS90aGlyZF9wYXJ0eS9saWJzcnRwL3Rlc3QvLmdpdGF0dHJpYnV0ZXMKKysrIC9kZXYvbnVsbApA
QCAtMSwyICswLDAgQEAKLXNydHBfZHJpdmVyLmMgc3ZuLXByb3BlcnRpZXM9YWxsb3ctdGFicz1v
bgotcnRwLmggc3ZuLXByb3BlcnRpZXM9YWxsb3ctdGFicz1vbgpkaWZmIC0tZ2l0IGEvU291cmNl
L1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL3Rlc3QvY3V0
ZXN0LmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnNydHAvdGVzdC9jdXRlc3QuaAppbmRleCBhOTRlMTQ0YWI1YTZiOTdhZjZiOWQ0ODI5MWExN2Q3
Y2VlYjc2OTc3Li5mNDY2MjZkMzk1NmFmNjVmNThmMWIxNDM0ZGIzN2RiNDU3ZDU2YTIyIDEwMDY0
NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnNydHAvdGVzdC9jdXRlc3QuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291
cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvdGVzdC9jdXRlc3QuaApAQCAtMTAsMTAgKzEwLDEwIEBA
CiAgKiB0aGUgcmlnaHRzIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlz
dHJpYnV0ZSwgc3VibGljZW5zZSwKICAqIGFuZC9vciBzZWxsIGNvcGllcyBvZiB0aGUgU29mdHdh
cmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZQogICogU29mdHdhcmUgaXMgZnVy
bmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKLSAq
IAorICoKICAqIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24g
bm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluCiAgKiBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFs
IHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS4KLSAqIAorICoKICAqIFRIRSBTT0ZUV0FSRSBJUyBQ
Uk9WSURFRCAiQVMgSVMiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTCiAg
KiBPUiBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSwKICAqIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NF
IEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRQpAQCAtMjYsNyArMjYs
NiBAQAogI2lmbmRlZiBDVVRFU1RfSF9fCiAjZGVmaW5lIENVVEVTVF9IX18KIAotCiAvKioqKioq
KioqKioqKioqKioqKioqKioqCiAgKioqIFB1YmxpYyBpbnRlcmZhY2UgKioqCiAgKioqKioqKioq
KioqKioqKioqKioqKioqLwpAQCAtNTYsOCArNTUsNyBAQAogICoKICAqICAgdm9pZCB0ZXN0X2Z1
bmModm9pZCk7CiAgKi8KLSNkZWZpbmUgVEVTVF9MSVNUICAgICAgICAgICAgICBjb25zdCBzdHJ1
Y3QgdGVzdF9fIHRlc3RfbGlzdF9fW10KLQorI2RlZmluZSBURVNUX0xJU1QgY29uc3Qgc3RydWN0
IHRlc3RfXyB0ZXN0X2xpc3RfX1tdCiAKIC8qIE1hY3JvcyBmb3IgdGVzdGluZyB3aGV0aGVyIGFu
IHVuaXQgdGVzdCBzdWNjZWVkcyBvciBmYWlscy4gVGhlc2UgbWFjcm9zCiAgKiBjYW4gYmUgdXNl
ZCBhcmJpdHJhcmlseSBpbiBmdW5jdGlvbnMgaW1wbGVtZW50aW5nIHRoZSB1bml0IHRlc3RzLgpA
QCAtNzgsOSArNzYsOSBAQAogICogICAgICAgVEVTVF9DSEVDSyhwdHItPm1lbWJlcjIgPiAyMDAp
OwogICogICB9CiAgKi8KLSNkZWZpbmUgVEVTVF9DSEVDS18oY29uZCwuLi4pICB0ZXN0X2NoZWNr
X18oKGNvbmQpLCBfX0ZJTEVfXywgX19MSU5FX18sIF9fVkFfQVJHU19fKQotI2RlZmluZSBURVNU
X0NIRUNLKGNvbmQpICAgICAgIHRlc3RfY2hlY2tfXygoY29uZCksIF9fRklMRV9fLCBfX0xJTkVf
XywgIiVzIiwgI2NvbmQpCi0KKyNkZWZpbmUgVEVTVF9DSEVDS18oY29uZCwgLi4uKSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgdGVzdF9jaGVj
a19fKChjb25kKSwgX19GSUxFX18sIF9fTElORV9fLCBfX1ZBX0FSR1NfXykKKyNkZWZpbmUgVEVT
VF9DSEVDSyhjb25kKSB0ZXN0X2NoZWNrX18oKGNvbmQpLCBfX0ZJTEVfXywgX19MSU5FX18sICIl
cyIsICNjb25kKQogCiAvKioqKioqKioqKioqKioqKioqKioqKgogICoqKiBJbXBsZW1lbnRhdGlv
biAqKioKQEAgLTk0LDQ3ICs5Miw0MyBAQAogI2luY2x1ZGUgPHN0cmluZy5oPgogCiAjaWYgZGVm
aW5lZCh1bml4KSB8fCBkZWZpbmVkKF9fdW5peF9fKSB8fCBkZWZpbmVkKF9fdW5peCkgfHwgZGVm
aW5lZChfX0FQUExFX18pCi0gICAgI2RlZmluZSBDVVRFU1RfVU5JWF9fICAgIDEKLSAgICAjaW5j
bHVkZSA8ZXJybm8uaD4KLSAgICAjaW5jbHVkZSA8dW5pc3RkLmg+Ci0gICAgI2luY2x1ZGUgPHN5
cy90eXBlcy5oPgotICAgICNpbmNsdWRlIDxzeXMvd2FpdC5oPgotICAgICNpbmNsdWRlIDxzaWdu
YWwuaD4KKyNkZWZpbmUgQ1VURVNUX1VOSVhfXyAxCisjaW5jbHVkZSA8ZXJybm8uaD4KKyNpbmNs
dWRlIDx1bmlzdGQuaD4KKyNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KKyNpbmNsdWRlIDxzeXMvd2Fp
dC5oPgorI2luY2x1ZGUgPHNpZ25hbC5oPgogI2VuZGlmCiAKICNpZiBkZWZpbmVkKF9XSU4zMikg
fHwgZGVmaW5lZChfX1dJTjMyX18pIHx8IGRlZmluZWQoX19XSU5ET1dTX18pCi0gICAgI2RlZmlu
ZSBDVVRFU1RfV0lOX18gICAgIDEKLSAgICAjaW5jbHVkZSA8d2luZG93cy5oPgotICAgICNpbmNs
dWRlIDxpby5oPgorI2RlZmluZSBDVVRFU1RfV0lOX18gMQorI2luY2x1ZGUgPHdpbmRvd3MuaD4K
KyNpbmNsdWRlIDxpby5oPgogI2VuZGlmCiAKICNpZmRlZiBfX2NwbHVzcGx1cwotICAgICNpbmNs
dWRlIDxleGNlcHRpb24+CisjaW5jbHVkZSA8ZXhjZXB0aW9uPgogI2VuZGlmCiAKLQogLyogTm90
ZSBvdXIgZ2xvYmFsIHByaXZhdGUgaWRlbnRpZmllcnMgZW5kIHdpdGggJ19fJyB0byBtaXRpZ2F0
ZSByaXNrIG9mIGNsYXNoCiAgKiB3aXRoIHRoZSB1bml0IHRlc3RzIGltcGxlbWVudGF0aW9uLiAq
LwogCi0KICNpZmRlZiBfX2NwbHVzcGx1cwotICAgIGV4dGVybiAiQyIgeworZXh0ZXJuICJDIiB7
CiAjZW5kaWYKIAotCiBzdHJ1Y3QgdGVzdF9fIHsKLSAgICBjb25zdCBjaGFyKiBuYW1lOworICAg
IGNvbnN0IGNoYXIgKm5hbWU7CiAgICAgdm9pZCAoKmZ1bmMpKHZvaWQpOwogfTsKIAogZXh0ZXJu
IGNvbnN0IHN0cnVjdCB0ZXN0X18gdGVzdF9saXN0X19bXTsKIAotaW50IHRlc3RfY2hlY2tfXyhp
bnQgY29uZCwgY29uc3QgY2hhciogZmlsZSwgaW50IGxpbmUsIGNvbnN0IGNoYXIqIGZtdCwgLi4u
KTsKLQoraW50IHRlc3RfY2hlY2tfXyhpbnQgY29uZCwgY29uc3QgY2hhciAqZmlsZSwgaW50IGxp
bmUsIGNvbnN0IGNoYXIgKmZtdCwgLi4uKTsKIAogI2lmbmRlZiBURVNUX05PX01BSU4KIAotc3Rh
dGljIGNoYXIqIHRlc3RfYXJndjBfXyA9IE5VTEw7CitzdGF0aWMgY2hhciAqdGVzdF9hcmd2MF9f
ID0gTlVMTDsKIHN0YXRpYyBpbnQgdGVzdF9jb3VudF9fID0gMDsKIHN0YXRpYyBpbnQgdGVzdF9u
b19leGVjX18gPSAwOwogc3RhdGljIGludCB0ZXN0X25vX3N1bW1hcnlfXyA9IDA7CkBAIC0xNDMs
MjEgKzEzNywyMCBAQCBzdGF0aWMgaW50IHRlc3Rfc2tpcF9tb2RlX18gPSAwOwogc3RhdGljIGlu
dCB0ZXN0X3N0YXRfZmFpbGVkX3VuaXRzX18gPSAwOwogc3RhdGljIGludCB0ZXN0X3N0YXRfcnVu
X3VuaXRzX18gPSAwOwogCi1zdGF0aWMgY29uc3Qgc3RydWN0IHRlc3RfXyogdGVzdF9jdXJyZW50
X3VuaXRfXyA9IE5VTEw7CitzdGF0aWMgY29uc3Qgc3RydWN0IHRlc3RfXyAqdGVzdF9jdXJyZW50
X3VuaXRfXyA9IE5VTEw7CiBzdGF0aWMgaW50IHRlc3RfY3VycmVudF9hbHJlYWR5X2xvZ2dlZF9f
ID0gMDsKIHN0YXRpYyBpbnQgdGVzdF92ZXJib3NlX2xldmVsX18gPSAyOwogc3RhdGljIGludCB0
ZXN0X2N1cnJlbnRfZmFpbHVyZXNfXyA9IDA7CiBzdGF0aWMgaW50IHRlc3RfY29sb3JpemVfXyA9
IDA7CiAKLSNkZWZpbmUgQ1VURVNUX0NPTE9SX0RFRkFVTFRfXyAgICAgICAgICAgICAgIDAKLSNk
ZWZpbmUgQ1VURVNUX0NPTE9SX0dSRUVOX18gICAgICAgICAgICAgICAgIDEKLSNkZWZpbmUgQ1VU
RVNUX0NPTE9SX1JFRF9fICAgICAgICAgICAgICAgICAgIDIKLSNkZWZpbmUgQ1VURVNUX0NPTE9S
X0RFRkFVTFRfSU5URU5TSVZFX18gICAgIDMKLSNkZWZpbmUgQ1VURVNUX0NPTE9SX0dSRUVOX0lO
VEVOU0lWRV9fICAgICAgIDQKLSNkZWZpbmUgQ1VURVNUX0NPTE9SX1JFRF9JTlRFTlNJVkVfXyAg
ICAgICAgIDUKKyNkZWZpbmUgQ1VURVNUX0NPTE9SX0RFRkFVTFRfXyAwCisjZGVmaW5lIENVVEVT
VF9DT0xPUl9HUkVFTl9fIDEKKyNkZWZpbmUgQ1VURVNUX0NPTE9SX1JFRF9fIDIKKyNkZWZpbmUg
Q1VURVNUX0NPTE9SX0RFRkFVTFRfSU5URU5TSVZFX18gMworI2RlZmluZSBDVVRFU1RfQ09MT1Jf
R1JFRU5fSU5URU5TSVZFX18gNAorI2RlZmluZSBDVVRFU1RfQ09MT1JfUkVEX0lOVEVOU0lWRV9f
IDUKIAotc3RhdGljIHNpemVfdAotdGVzdF9wcmludF9pbl9jb2xvcl9fKGludCBjb2xvciwgY29u
c3QgY2hhciogZm10LCAuLi4pCitzdGF0aWMgc2l6ZV90IHRlc3RfcHJpbnRfaW5fY29sb3JfXyhp
bnQgY29sb3IsIGNvbnN0IGNoYXIgKmZtdCwgLi4uKQogewogICAgIHZhX2xpc3QgYXJnczsKICAg
ICBjaGFyIGJ1ZmZlclsyNTZdOwpAQCAtMTY2LDIyICsxNTksMzQgQEAgdGVzdF9wcmludF9pbl9j
b2xvcl9fKGludCBjb2xvciwgY29uc3QgY2hhciogZm10LCAuLi4pCiAgICAgdmFfc3RhcnQoYXJn
cywgZm10KTsKICAgICB2c25wcmludGYoYnVmZmVyLCBzaXplb2YoYnVmZmVyKSwgZm10LCBhcmdz
KTsKICAgICB2YV9lbmQoYXJncyk7Ci0gICAgYnVmZmVyW3NpemVvZihidWZmZXIpLTFdID0gJ1ww
JzsKKyAgICBidWZmZXJbc2l6ZW9mKGJ1ZmZlcikgLSAxXSA9ICdcMCc7CiAKLSAgICBpZighdGVz
dF9jb2xvcml6ZV9fKSB7CisgICAgaWYgKCF0ZXN0X2NvbG9yaXplX18pIHsKICAgICAgICAgcmV0
dXJuIHByaW50ZigiJXMiLCBidWZmZXIpOwogICAgIH0KIAogI2lmIGRlZmluZWQgQ1VURVNUX1VO
SVhfXwogICAgIHsKLSAgICAgICAgY29uc3QgY2hhciogY29sX3N0cjsKLSAgICAgICAgc3dpdGNo
KGNvbG9yKSB7Ci0gICAgICAgICAgICBjYXNlIENVVEVTVF9DT0xPUl9HUkVFTl9fOiAgICAgICAg
ICAgICBjb2xfc3RyID0gIlwwMzNbMDszMm0iOyBicmVhazsKLSAgICAgICAgICAgIGNhc2UgQ1VU
RVNUX0NPTE9SX1JFRF9fOiAgICAgICAgICAgICAgIGNvbF9zdHIgPSAiXDAzM1swOzMxbSI7IGJy
ZWFrOwotICAgICAgICAgICAgY2FzZSBDVVRFU1RfQ09MT1JfR1JFRU5fSU5URU5TSVZFX186ICAg
Y29sX3N0ciA9ICJcMDMzWzE7MzJtIjsgYnJlYWs7Ci0gICAgICAgICAgICBjYXNlIENVVEVTVF9D
T0xPUl9SRURfSU5URU5TSVZFX186ICAgICBjb2xfc3RyID0gIlwwMzNbMTszMG0iOyBicmVhazsK
LSAgICAgICAgICAgIGNhc2UgQ1VURVNUX0NPTE9SX0RFRkFVTFRfSU5URU5TSVZFX186IGNvbF9z
dHIgPSAiXDAzM1sxbSI7IGJyZWFrOwotICAgICAgICAgICAgZGVmYXVsdDogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgY29sX3N0ciA9ICJcMDMzWzBtIjsgYnJlYWs7CisgICAgICAgIGNv
bnN0IGNoYXIgKmNvbF9zdHI7CisgICAgICAgIHN3aXRjaCAoY29sb3IpIHsKKyAgICAgICAgY2Fz
ZSBDVVRFU1RfQ09MT1JfR1JFRU5fXzoKKyAgICAgICAgICAgIGNvbF9zdHIgPSAiXDAzM1swOzMy
bSI7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSBDVVRFU1RfQ09MT1JfUkVEX186
CisgICAgICAgICAgICBjb2xfc3RyID0gIlwwMzNbMDszMW0iOworICAgICAgICAgICAgYnJlYWs7
CisgICAgICAgIGNhc2UgQ1VURVNUX0NPTE9SX0dSRUVOX0lOVEVOU0lWRV9fOgorICAgICAgICAg
ICAgY29sX3N0ciA9ICJcMDMzWzE7MzJtIjsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBj
YXNlIENVVEVTVF9DT0xPUl9SRURfSU5URU5TSVZFX186CisgICAgICAgICAgICBjb2xfc3RyID0g
IlwwMzNbMTszMG0iOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgQ1VURVNUX0NP
TE9SX0RFRkFVTFRfSU5URU5TSVZFX186CisgICAgICAgICAgICBjb2xfc3RyID0gIlwwMzNbMW0i
OworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICBjb2xf
c3RyID0gIlwwMzNbMG0iOworICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KICAgICAgICAg
cHJpbnRmKCIlcyIsIGNvbF9zdHIpOwogICAgICAgICBuID0gcHJpbnRmKCIlcyIsIGJ1ZmZlcik7
CkBAIC0xOTcsMTUgKzIwMiwyOCBAQCB0ZXN0X3ByaW50X2luX2NvbG9yX18oaW50IGNvbG9yLCBj
b25zdCBjaGFyKiBmbXQsIC4uLikKICAgICAgICAgaCA9IEdldFN0ZEhhbmRsZShTVERfT1VUUFVU
X0hBTkRMRSk7CiAgICAgICAgIEdldENvbnNvbGVTY3JlZW5CdWZmZXJJbmZvKGgsICZpbmZvKTsK
IAotICAgICAgICBzd2l0Y2goY29sb3IpIHsKLSAgICAgICAgICAgIGNhc2UgQ1VURVNUX0NPTE9S
X0dSRUVOX186ICAgICAgICAgICAgIGF0dHIgPSBGT1JFR1JPVU5EX0dSRUVOOyBicmVhazsKLSAg
ICAgICAgICAgIGNhc2UgQ1VURVNUX0NPTE9SX1JFRF9fOiAgICAgICAgICAgICAgIGF0dHIgPSBG
T1JFR1JPVU5EX1JFRDsgYnJlYWs7Ci0gICAgICAgICAgICBjYXNlIENVVEVTVF9DT0xPUl9HUkVF
Tl9JTlRFTlNJVkVfXzogICBhdHRyID0gRk9SRUdST1VORF9HUkVFTiB8IEZPUkVHUk9VTkRfSU5U
RU5TSVRZOyBicmVhazsKLSAgICAgICAgICAgIGNhc2UgQ1VURVNUX0NPTE9SX1JFRF9JTlRFTlNJ
VkVfXzogICAgIGF0dHIgPSBGT1JFR1JPVU5EX1JFRCB8IEZPUkVHUk9VTkRfSU5URU5TSVRZOyBi
cmVhazsKLSAgICAgICAgICAgIGNhc2UgQ1VURVNUX0NPTE9SX0RFRkFVTFRfSU5URU5TSVZFX186
IGF0dHIgPSBGT1JFR1JPVU5EX0JMVUUgfCBGT1JFR1JPVU5EX0dSRUVOIHwgRk9SRUdST1VORF9S
RUQgfCBGT1JFR1JPVU5EX0lOVEVOU0lUWTsgYnJlYWs7Ci0gICAgICAgICAgICBkZWZhdWx0OiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyID0gMDsgYnJlYWs7CisgICAgICAgIHN3
aXRjaCAoY29sb3IpIHsKKyAgICAgICAgY2FzZSBDVVRFU1RfQ09MT1JfR1JFRU5fXzoKKyAgICAg
ICAgICAgIGF0dHIgPSBGT1JFR1JPVU5EX0dSRUVOOworICAgICAgICAgICAgYnJlYWs7CisgICAg
ICAgIGNhc2UgQ1VURVNUX0NPTE9SX1JFRF9fOgorICAgICAgICAgICAgYXR0ciA9IEZPUkVHUk9V
TkRfUkVEOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgQ1VURVNUX0NPTE9SX0dS
RUVOX0lOVEVOU0lWRV9fOgorICAgICAgICAgICAgYXR0ciA9IEZPUkVHUk9VTkRfR1JFRU4gfCBG
T1JFR1JPVU5EX0lOVEVOU0lUWTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIENV
VEVTVF9DT0xPUl9SRURfSU5URU5TSVZFX186CisgICAgICAgICAgICBhdHRyID0gRk9SRUdST1VO
RF9SRUQgfCBGT1JFR1JPVU5EX0lOVEVOU0lUWTsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAg
ICBjYXNlIENVVEVTVF9DT0xPUl9ERUZBVUxUX0lOVEVOU0lWRV9fOgorICAgICAgICAgICAgYXR0
ciA9IEZPUkVHUk9VTkRfQkxVRSB8IEZPUkVHUk9VTkRfR1JFRU4gfCBGT1JFR1JPVU5EX1JFRCB8
CisgICAgICAgICAgICAgICAgICAgRk9SRUdST1VORF9JTlRFTlNJVFk7CisgICAgICAgICAgICBi
cmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIGF0dHIgPSAwOworICAgICAgICAg
ICAgYnJlYWs7CiAgICAgICAgIH0KLSAgICAgICAgaWYoYXR0ciAhPSAwKQorICAgICAgICBpZiAo
YXR0ciAhPSAwKQogICAgICAgICAgICAgU2V0Q29uc29sZVRleHRBdHRyaWJ1dGUoaCwgYXR0cik7
CiAgICAgICAgIG4gPSBwcmludGYoIiVzIiwgYnVmZmVyKTsKICAgICAgICAgU2V0Q29uc29sZVRl
eHRBdHRyaWJ1dGUoaCwgaW5mby53QXR0cmlidXRlcyk7CkBAIC0yMTcsMTkgKzIzNSwxOCBAQCB0
ZXN0X3ByaW50X2luX2NvbG9yX18oaW50IGNvbG9yLCBjb25zdCBjaGFyKiBmbXQsIC4uLikKICNl
bmRpZgogfQogCi1pbnQKLXRlc3RfY2hlY2tfXyhpbnQgY29uZCwgY29uc3QgY2hhciogZmlsZSwg
aW50IGxpbmUsIGNvbnN0IGNoYXIqIGZtdCwgLi4uKQoraW50IHRlc3RfY2hlY2tfXyhpbnQgY29u
ZCwgY29uc3QgY2hhciAqZmlsZSwgaW50IGxpbmUsIGNvbnN0IGNoYXIgKmZtdCwgLi4uKQogewog
ICAgIGNvbnN0IGNoYXIgKnJlc3VsdF9zdHI7CiAgICAgaW50IHJlc3VsdF9jb2xvcjsKICAgICBp
bnQgdmVyYm9zZV9sZXZlbDsKIAotICAgIGlmKGNvbmQpIHsKKyAgICBpZiAoY29uZCkgewogICAg
ICAgICByZXN1bHRfc3RyID0gIm9rIjsKICAgICAgICAgcmVzdWx0X2NvbG9yID0gQ1VURVNUX0NP
TE9SX0dSRUVOX187CiAgICAgICAgIHZlcmJvc2VfbGV2ZWwgPSAzOwogICAgIH0gZWxzZSB7Ci0g
ICAgICAgIGlmKCF0ZXN0X2N1cnJlbnRfYWxyZWFkeV9sb2dnZWRfXyAgJiYgIHRlc3RfY3VycmVu
dF91bml0X18gIT0gTlVMTCkgeworICAgICAgICBpZiAoIXRlc3RfY3VycmVudF9hbHJlYWR5X2xv
Z2dlZF9fICYmIHRlc3RfY3VycmVudF91bml0X18gIT0gTlVMTCkgewogICAgICAgICAgICAgcHJp
bnRmKCJbICIpOwogICAgICAgICAgICAgdGVzdF9wcmludF9pbl9jb2xvcl9fKENVVEVTVF9DT0xP
Ul9SRURfSU5URU5TSVZFX18sICJGQUlMRUQiKTsKICAgICAgICAgICAgIHByaW50ZigiIF1cbiIp
OwpAQCAtMjQxLDEzICsyNTgsMTMgQEAgdGVzdF9jaGVja19fKGludCBjb25kLCBjb25zdCBjaGFy
KiBmaWxlLCBpbnQgbGluZSwgY29uc3QgY2hhciogZm10LCAuLi4pCiAgICAgICAgIHRlc3RfY3Vy
cmVudF9hbHJlYWR5X2xvZ2dlZF9fKys7CiAgICAgfQogCi0gICAgaWYodGVzdF92ZXJib3NlX2xl
dmVsX18gPj0gdmVyYm9zZV9sZXZlbCkgeworICAgIGlmICh0ZXN0X3ZlcmJvc2VfbGV2ZWxfXyA+
PSB2ZXJib3NlX2xldmVsKSB7CiAgICAgICAgIHNpemVfdCBuID0gMDsKICAgICAgICAgdmFfbGlz
dCBhcmdzOwogCiAgICAgICAgIHByaW50ZigiICAiKTsKIAotICAgICAgICBpZihmaWxlICE9IE5V
TEwpCisgICAgICAgIGlmIChmaWxlICE9IE5VTEwpCiAgICAgICAgICAgICBuICs9IHByaW50Zigi
JXM6JWQ6IENoZWNrICIsIGZpbGUsIGxpbmUpOwogCiAgICAgICAgIHZhX3N0YXJ0KGFyZ3MsIGZt
dCk7CkBAIC0yNjMsMjMgKzI4MCwyMSBAQCB0ZXN0X2NoZWNrX18oaW50IGNvbmQsIGNvbnN0IGNo
YXIqIGZpbGUsIGludCBsaW5lLCBjb25zdCBjaGFyKiBmbXQsIC4uLikKICAgICByZXR1cm4gKGNv
bmQgIT0gMCk7CiB9CiAKLXN0YXRpYyB2b2lkCi10ZXN0X2xpc3RfbmFtZXNfXyh2b2lkKQorc3Rh
dGljIHZvaWQgdGVzdF9saXN0X25hbWVzX18odm9pZCkKIHsKLSAgICBjb25zdCBzdHJ1Y3QgdGVz
dF9fKiB0ZXN0OworICAgIGNvbnN0IHN0cnVjdCB0ZXN0X18gKnRlc3Q7CiAKICAgICBwcmludGYo
IlVuaXQgdGVzdHM6XG4iKTsKLSAgICBmb3IodGVzdCA9ICZ0ZXN0X2xpc3RfX1swXTsgdGVzdC0+
ZnVuYyAhPSBOVUxMOyB0ZXN0KyspCisgICAgZm9yICh0ZXN0ID0gJnRlc3RfbGlzdF9fWzBdOyB0
ZXN0LT5mdW5jICE9IE5VTEw7IHRlc3QrKykKICAgICAgICAgcHJpbnRmKCIgICVzXG4iLCB0ZXN0
LT5uYW1lKTsKIH0KIAotc3RhdGljIGNvbnN0IHN0cnVjdCB0ZXN0X18qCi10ZXN0X2J5X25hbWVf
Xyhjb25zdCBjaGFyKiBuYW1lKQorc3RhdGljIGNvbnN0IHN0cnVjdCB0ZXN0X18gKnRlc3RfYnlf
bmFtZV9fKGNvbnN0IGNoYXIgKm5hbWUpCiB7Ci0gICAgY29uc3Qgc3RydWN0IHRlc3RfXyogdGVz
dDsKKyAgICBjb25zdCBzdHJ1Y3QgdGVzdF9fICp0ZXN0OwogCi0gICAgZm9yKHRlc3QgPSAmdGVz
dF9saXN0X19bMF07IHRlc3QtPmZ1bmMgIT0gTlVMTDsgdGVzdCsrKSB7Ci0gICAgICAgIGlmKHN0
cmNtcCh0ZXN0LT5uYW1lLCBuYW1lKSA9PSAwKQorICAgIGZvciAodGVzdCA9ICZ0ZXN0X2xpc3Rf
X1swXTsgdGVzdC0+ZnVuYyAhPSBOVUxMOyB0ZXN0KyspIHsKKyAgICAgICAgaWYgKHN0cmNtcCh0
ZXN0LT5uYW1lLCBuYW1lKSA9PSAwKQogICAgICAgICAgICAgcmV0dXJuIHRlc3Q7CiAgICAgfQog
CkBAIC0yODcsMjQgKzMwMiwyNSBAQCB0ZXN0X2J5X25hbWVfXyhjb25zdCBjaGFyKiBuYW1lKQog
fQogCiAvKiBDYWxsIGRpcmVjdGx5IHRoZSBnaXZlbiB0ZXN0IHVuaXQgZnVuY3Rpb24uICovCi1z
dGF0aWMgaW50Ci10ZXN0X2RvX3J1bl9fKGNvbnN0IHN0cnVjdCB0ZXN0X18qIHRlc3QpCitzdGF0
aWMgaW50IHRlc3RfZG9fcnVuX18oY29uc3Qgc3RydWN0IHRlc3RfXyAqdGVzdCkKIHsKICAgICB0
ZXN0X2N1cnJlbnRfdW5pdF9fID0gdGVzdDsKICAgICB0ZXN0X2N1cnJlbnRfZmFpbHVyZXNfXyA9
IDA7CiAgICAgdGVzdF9jdXJyZW50X2FscmVhZHlfbG9nZ2VkX18gPSAwOwogCi0gICAgaWYodGVz
dF92ZXJib3NlX2xldmVsX18gPj0gMykgewotICAgICAgICB0ZXN0X3ByaW50X2luX2NvbG9yX18o
Q1VURVNUX0NPTE9SX0RFRkFVTFRfSU5URU5TSVZFX18sICJUZXN0ICVzOlxuIiwgdGVzdC0+bmFt
ZSk7CisgICAgaWYgKHRlc3RfdmVyYm9zZV9sZXZlbF9fID49IDMpIHsKKyAgICAgICAgdGVzdF9w
cmludF9pbl9jb2xvcl9fKENVVEVTVF9DT0xPUl9ERUZBVUxUX0lOVEVOU0lWRV9fLCAiVGVzdCAl
czpcbiIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0LT5uYW1lKTsKICAgICAg
ICAgdGVzdF9jdXJyZW50X2FscmVhZHlfbG9nZ2VkX18rKzsKLSAgICB9IGVsc2UgaWYodGVzdF92
ZXJib3NlX2xldmVsX18gPj0gMSkgeworICAgIH0gZWxzZSBpZiAodGVzdF92ZXJib3NlX2xldmVs
X18gPj0gMSkgewogICAgICAgICBzaXplX3QgbjsKICAgICAgICAgY2hhciBzcGFjZXNbMzJdOwog
Ci0gICAgICAgIG4gPSB0ZXN0X3ByaW50X2luX2NvbG9yX18oQ1VURVNUX0NPTE9SX0RFRkFVTFRf
SU5URU5TSVZFX18sICJUZXN0ICVzLi4uICIsIHRlc3QtPm5hbWUpOworICAgICAgICBuID0gdGVz
dF9wcmludF9pbl9jb2xvcl9fKENVVEVTVF9DT0xPUl9ERUZBVUxUX0lOVEVOU0lWRV9fLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJUZXN0ICVzLi4uICIsIHRlc3QtPm5hbWUp
OwogICAgICAgICBtZW1zZXQoc3BhY2VzLCAnICcsIHNpemVvZihzcGFjZXMpKTsKLSAgICAgICAg
aWYobiA8IHNpemVvZihzcGFjZXMpKQotICAgICAgICAgICAgcHJpbnRmKCIlLipzIiwgKGludCkg
KHNpemVvZihzcGFjZXMpIC0gbiksIHNwYWNlcyk7CisgICAgICAgIGlmIChuIDwgc2l6ZW9mKHNw
YWNlcykpCisgICAgICAgICAgICBwcmludGYoIiUuKnMiLCAoaW50KShzaXplb2Yoc3BhY2VzKSAt
IG4pLCBzcGFjZXMpOwogICAgIH0gZWxzZSB7CiAgICAgICAgIHRlc3RfY3VycmVudF9hbHJlYWR5
X2xvZ2dlZF9fID0gMTsKICAgICB9CkBAIC0zMjAsMjQgKzMzNiwzNCBAQCB0ZXN0X2RvX3J1bl9f
KGNvbnN0IHN0cnVjdCB0ZXN0X18qIHRlc3QpCiAgICAgICAgIHRlc3QtPmZ1bmMoKTsKIAogI2lm
ZGVmIF9fY3BsdXNwbHVzCi0gICAgfSBjYXRjaChzdGQ6OmV4Y2VwdGlvbiYgZSkgewotICAgICAg
ICBjb25zdCBjaGFyKiB3aGF0ID0gZS53aGF0KCk7Ci0gICAgICAgIGlmKHdoYXQgIT0gTlVMTCkK
KyAgICB9IGNhdGNoIChzdGQ6OmV4Y2VwdGlvbiAmZSkgeworICAgICAgICBjb25zdCBjaGFyICp3
aGF0ID0gZS53aGF0KCk7CisgICAgICAgIGlmICh3aGF0ICE9IE5VTEwpCiAgICAgICAgICAgICB0
ZXN0X2NoZWNrX18oMCwgTlVMTCwgMCwgIlRocmV3IHN0ZDo6ZXhjZXB0aW9uOiAlcyIsIHdoYXQp
OwogICAgICAgICBlbHNlCiAgICAgICAgICAgICB0ZXN0X2NoZWNrX18oMCwgTlVMTCwgMCwgIlRo
cmV3IHN0ZDo6ZXhjZXB0aW9uIik7Ci0gICAgfSBjYXRjaCguLi4pIHsKKyAgICB9IGNhdGNoICgu
Li4pIHsKICAgICAgICAgdGVzdF9jaGVja19fKDAsIE5VTEwsIDAsICJUaHJldyBhbiBleGNlcHRp
b24iKTsKICAgICB9CiAjZW5kaWYKIAotICAgIGlmKHRlc3RfdmVyYm9zZV9sZXZlbF9fID49IDMp
IHsKLSAgICAgICAgc3dpdGNoKHRlc3RfY3VycmVudF9mYWlsdXJlc19fKSB7Ci0gICAgICAgICAg
ICBjYXNlIDA6ICB0ZXN0X3ByaW50X2luX2NvbG9yX18oQ1VURVNUX0NPTE9SX0dSRUVOX0lOVEVO
U0lWRV9fLCAiICBBbGwgY29uZGl0aW9ucyBoYXZlIHBhc3NlZC5cblxuIik7IGJyZWFrOwotICAg
ICAgICAgICAgY2FzZSAxOiAgdGVzdF9wcmludF9pbl9jb2xvcl9fKENVVEVTVF9DT0xPUl9SRURf
SU5URU5TSVZFX18sICIgIE9uZSBjb25kaXRpb24gaGFzIEZBSUxFRC5cblxuIik7IGJyZWFrOwot
ICAgICAgICAgICAgZGVmYXVsdDogdGVzdF9wcmludF9pbl9jb2xvcl9fKENVVEVTVF9DT0xPUl9S
RURfSU5URU5TSVZFX18sICIgICVkIGNvbmRpdGlvbnMgaGF2ZSBGQUlMRUQuXG5cbiIsIHRlc3Rf
Y3VycmVudF9mYWlsdXJlc19fKTsgYnJlYWs7CisgICAgaWYgKHRlc3RfdmVyYm9zZV9sZXZlbF9f
ID49IDMpIHsKKyAgICAgICAgc3dpdGNoICh0ZXN0X2N1cnJlbnRfZmFpbHVyZXNfXykgeworICAg
ICAgICBjYXNlIDA6CisgICAgICAgICAgICB0ZXN0X3ByaW50X2luX2NvbG9yX18oQ1VURVNUX0NP
TE9SX0dSRUVOX0lOVEVOU0lWRV9fLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICIgIEFsbCBjb25kaXRpb25zIGhhdmUgcGFzc2VkLlxuXG4iKTsKKyAgICAgICAgICAgIGJyZWFr
OworICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICB0ZXN0X3ByaW50X2luX2NvbG9yX18oQ1VU
RVNUX0NPTE9SX1JFRF9JTlRFTlNJVkVfXywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAiICBPbmUgY29uZGl0aW9uIGhhcyBGQUlMRUQuXG5cbiIpOworICAgICAgICAgICAgYnJl
YWs7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICB0ZXN0X3ByaW50X2luX2NvbG9yX18o
Q1VURVNUX0NPTE9SX1JFRF9JTlRFTlNJVkVfXywKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAiICAlZCBjb25kaXRpb25zIGhhdmUgRkFJTEVELlxuXG4iLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHRlc3RfY3VycmVudF9mYWlsdXJlc19fKTsKKyAgICAgICAg
ICAgIGJyZWFrOwogICAgICAgICB9Ci0gICAgfSBlbHNlIGlmKHRlc3RfdmVyYm9zZV9sZXZlbF9f
ID49IDEgJiYgdGVzdF9jdXJyZW50X2ZhaWx1cmVzX18gPT0gMCkgeworICAgIH0gZWxzZSBpZiAo
dGVzdF92ZXJib3NlX2xldmVsX18gPj0gMSAmJiB0ZXN0X2N1cnJlbnRfZmFpbHVyZXNfXyA9PSAw
KSB7CiAgICAgICAgIHByaW50ZigiWyAgICIpOwogICAgICAgICB0ZXN0X3ByaW50X2luX2NvbG9y
X18oQ1VURVNUX0NPTE9SX0dSRUVOX0lOVEVOU0lWRV9fLCAiT0siKTsKICAgICAgICAgcHJpbnRm
KCIgICBdXG4iKTsKQEAgLTM1MSwyMSArMzc3LDIxIEBAIHRlc3RfZG9fcnVuX18oY29uc3Qgc3Ry
dWN0IHRlc3RfXyogdGVzdCkKIC8qIENhbGxlZCBpZiBhbnl0aGluZyBnb2VzIGJhZCBpbiBjdXRl
c3QsIG9yIGlmIHRoZSB1bml0IHRlc3QgZW5kcyBpbiBvdGhlcgogICogd2F5IHRoZW4gYnkgbm9y
bWFsIHJldHVybmluZyBmcm9tIGl0cyBmdW5jdGlvbiAoZS5nLiBleGNlcHRpb24gb3Igc29tZQog
ICogYWJub3JtYWwgY2hpbGQgcHJvY2VzcyB0ZXJtaW5hdGlvbikuICovCi1zdGF0aWMgdm9pZAot
dGVzdF9lcnJvcl9fKGNvbnN0IGNoYXIqIGZtdCwgLi4uKQorc3RhdGljIHZvaWQgdGVzdF9lcnJv
cl9fKGNvbnN0IGNoYXIgKmZtdCwgLi4uKQogewogICAgIHZhX2xpc3QgYXJnczsKIAotICAgIGlm
KHRlc3RfdmVyYm9zZV9sZXZlbF9fID09IDApCisgICAgaWYgKHRlc3RfdmVyYm9zZV9sZXZlbF9f
ID09IDApCiAgICAgICAgIHJldHVybjsKIAotICAgIGlmKHRlc3RfdmVyYm9zZV9sZXZlbF9fIDw9
IDIgICYmICAhdGVzdF9jdXJyZW50X2FscmVhZHlfbG9nZ2VkX18gICYmICB0ZXN0X2N1cnJlbnRf
dW5pdF9fICE9IE5VTEwpIHsKKyAgICBpZiAodGVzdF92ZXJib3NlX2xldmVsX18gPD0gMiAmJiAh
dGVzdF9jdXJyZW50X2FscmVhZHlfbG9nZ2VkX18gJiYKKyAgICAgICAgdGVzdF9jdXJyZW50X3Vu
aXRfXyAhPSBOVUxMKSB7CiAgICAgICAgIHByaW50ZigiWyAiKTsKICAgICAgICAgdGVzdF9wcmlu
dF9pbl9jb2xvcl9fKENVVEVTVF9DT0xPUl9SRURfSU5URU5TSVZFX18sICJGQUlMRUQiKTsKICAg
ICAgICAgcHJpbnRmKCIgXVxuIik7CiAgICAgfQogCi0gICAgaWYodGVzdF92ZXJib3NlX2xldmVs
X18gPj0gMikgeworICAgIGlmICh0ZXN0X3ZlcmJvc2VfbGV2ZWxfXyA+PSAyKSB7CiAgICAgICAg
IHRlc3RfcHJpbnRfaW5fY29sb3JfXyhDVVRFU1RfQ09MT1JfUkVEX0lOVEVOU0lWRV9fLCAiICBF
cnJvcjogIik7CiAgICAgICAgIHZhX3N0YXJ0KGFyZ3MsIGZtdCk7CiAgICAgICAgIHZwcmludGYo
Zm10LCBhcmdzKTsKQEAgLTM3OCw1MSArNDA0LDczIEBAIHRlc3RfZXJyb3JfXyhjb25zdCBjaGFy
KiBmbXQsIC4uLikKIC8qIFRyaWdnZXIgdGhlIHVuaXQgdGVzdC4gSWYgcG9zc2libGUgKGFuZCBu
b3Qgc3VwcHJlc3NlZCkgaXQgc3RhcnRzIGEgY2hpbGQKICAqIHByb2Nlc3Mgd2hvIGNhbGxzIHRl
c3RfZG9fcnVuX18oKSwgb3RoZXJ3aXNlIGl0IGNhbGxzIHRlc3RfZG9fcnVuX18oKQogICogZGly
ZWN0bHkuICovCi1zdGF0aWMgdm9pZAotdGVzdF9ydW5fXyhjb25zdCBzdHJ1Y3QgdGVzdF9fKiB0
ZXN0KQorc3RhdGljIHZvaWQgdGVzdF9ydW5fXyhjb25zdCBzdHJ1Y3QgdGVzdF9fICp0ZXN0KQog
ewogICAgIGludCBmYWlsZWQgPSAxOwogCiAgICAgdGVzdF9jdXJyZW50X3VuaXRfXyA9IHRlc3Q7
CiAgICAgdGVzdF9jdXJyZW50X2FscmVhZHlfbG9nZ2VkX18gPSAwOwogCi0gICAgaWYoIXRlc3Rf
bm9fZXhlY19fKSB7Ci0KKyAgICBpZiAoIXRlc3Rfbm9fZXhlY19fKSB7CiAjaWYgZGVmaW5lZChD
VVRFU1RfVU5JWF9fKQogCiAgICAgICAgIHBpZF90IHBpZDsKICAgICAgICAgaW50IGV4aXRfY29k
ZTsKIAogICAgICAgICBwaWQgPSBmb3JrKCk7Ci0gICAgICAgIGlmKHBpZCA9PSAocGlkX3QpLTEp
IHsKKyAgICAgICAgaWYgKHBpZCA9PSAocGlkX3QpLTEpIHsKICAgICAgICAgICAgIHRlc3RfZXJy
b3JfXygiQ2Fubm90IGZvcmsuICVzIFslZF0iLCBzdHJlcnJvcihlcnJubyksIGVycm5vKTsKICAg
ICAgICAgICAgIGZhaWxlZCA9IDE7Ci0gICAgICAgIH0gZWxzZSBpZihwaWQgPT0gMCkgeworICAg
ICAgICB9IGVsc2UgaWYgKHBpZCA9PSAwKSB7CiAgICAgICAgICAgICAvKiBDaGlsZDogRG8gdGhl
IHRlc3QuICovCiAgICAgICAgICAgICBmYWlsZWQgPSAodGVzdF9kb19ydW5fXyh0ZXN0KSAhPSAw
KTsKICAgICAgICAgICAgIGV4aXQoZmFpbGVkID8gMSA6IDApOwogICAgICAgICB9IGVsc2Ugewog
ICAgICAgICAgICAgLyogUGFyZW50OiBXYWl0IHVudGlsIGNoaWxkIHRlcm1pbmF0ZXMgYW5kIGFu
YWx5emUgaXRzIGV4aXQgY29kZS4gKi8KICAgICAgICAgICAgIHdhaXRwaWQocGlkLCAmZXhpdF9j
b2RlLCAwKTsKLSAgICAgICAgICAgIGlmKFdJRkVYSVRFRChleGl0X2NvZGUpKSB7Ci0gICAgICAg
ICAgICAgICAgc3dpdGNoKFdFWElUU1RBVFVTKGV4aXRfY29kZSkpIHsKLSAgICAgICAgICAgICAg
ICAgICAgY2FzZSAwOiAgIGZhaWxlZCA9IDA7IGJyZWFrOyAgIC8qIHRlc3QgaGFzIHBhc3NlZC4g
Ki8KLSAgICAgICAgICAgICAgICAgICAgY2FzZSAxOiAgIC8qIG5vb3AgKi8gYnJlYWs7ICAgIC8q
ICJub3JtYWwiIGZhaWx1cmUuICovCi0gICAgICAgICAgICAgICAgICAgIGRlZmF1bHQ6ICB0ZXN0
X2Vycm9yX18oIlVuZXhwZWN0ZWQgZXhpdCBjb2RlIFslZF0iLCBXRVhJVFNUQVRVUyhleGl0X2Nv
ZGUpKTsKKyAgICAgICAgICAgIGlmIChXSUZFWElURUQoZXhpdF9jb2RlKSkgeworICAgICAgICAg
ICAgICAgIHN3aXRjaCAoV0VYSVRTVEFUVVMoZXhpdF9jb2RlKSkgeworICAgICAgICAgICAgICAg
IGNhc2UgMDoKKyAgICAgICAgICAgICAgICAgICAgZmFpbGVkID0gMDsKKyAgICAgICAgICAgICAg
ICAgICAgYnJlYWs7IC8qIHRlc3QgaGFzIHBhc3NlZC4gKi8KKyAgICAgICAgICAgICAgICBjYXNl
IDE6ICAgIC8qIG5vb3AgKi8KKyAgICAgICAgICAgICAgICAgICAgYnJlYWs7IC8qICJub3JtYWwi
IGZhaWx1cmUuICovCisgICAgICAgICAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgICAgICAg
ICAgdGVzdF9lcnJvcl9fKCJVbmV4cGVjdGVkIGV4aXQgY29kZSBbJWRdIiwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFdFWElUU1RBVFVTKGV4aXRfY29kZSkpOwogICAgICAgICAg
ICAgICAgIH0KLSAgICAgICAgICAgIH0gZWxzZSBpZihXSUZTSUdOQUxFRChleGl0X2NvZGUpKSB7
CisgICAgICAgICAgICB9IGVsc2UgaWYgKFdJRlNJR05BTEVEKGV4aXRfY29kZSkpIHsKICAgICAg
ICAgICAgICAgICBjaGFyIHRtcFszMl07Ci0gICAgICAgICAgICAgICAgY29uc3QgY2hhciogc2ln
bmFtZTsKLSAgICAgICAgICAgICAgICBzd2l0Y2goV1RFUk1TSUcoZXhpdF9jb2RlKSkgewotICAg
ICAgICAgICAgICAgICAgICBjYXNlIFNJR0lOVDogIHNpZ25hbWUgPSAiU0lHSU5UIjsgYnJlYWs7
Ci0gICAgICAgICAgICAgICAgICAgIGNhc2UgU0lHSFVQOiAgc2lnbmFtZSA9ICJTSUdIVVAiOyBi
cmVhazsKLSAgICAgICAgICAgICAgICAgICAgY2FzZSBTSUdRVUlUOiBzaWduYW1lID0gIlNJR1FV
SVQiOyBicmVhazsKLSAgICAgICAgICAgICAgICAgICAgY2FzZSBTSUdBQlJUOiBzaWduYW1lID0g
IlNJR0FCUlQiOyBicmVhazsKLSAgICAgICAgICAgICAgICAgICAgY2FzZSBTSUdLSUxMOiBzaWdu
YW1lID0gIlNJR0tJTEwiOyBicmVhazsKLSAgICAgICAgICAgICAgICAgICAgY2FzZSBTSUdTRUdW
OiBzaWduYW1lID0gIlNJR1NFR1YiOyBicmVhazsKLSAgICAgICAgICAgICAgICAgICAgY2FzZSBT
SUdJTEw6ICBzaWduYW1lID0gIlNJR0lMTCI7IGJyZWFrOwotICAgICAgICAgICAgICAgICAgICBj
YXNlIFNJR1RFUk06IHNpZ25hbWUgPSAiU0lHVEVSTSI7IGJyZWFrOwotICAgICAgICAgICAgICAg
ICAgICBkZWZhdWx0OiAgICAgIHNwcmludGYodG1wLCAic2lnbmFsICVkIiwgV1RFUk1TSUcoZXhp
dF9jb2RlKSk7IHNpZ25hbWUgPSB0bXA7IGJyZWFrOworICAgICAgICAgICAgICAgIGNvbnN0IGNo
YXIgKnNpZ25hbWU7CisgICAgICAgICAgICAgICAgc3dpdGNoIChXVEVSTVNJRyhleGl0X2NvZGUp
KSB7CisgICAgICAgICAgICAgICAgY2FzZSBTSUdJTlQ6CisgICAgICAgICAgICAgICAgICAgIHNp
Z25hbWUgPSAiU0lHSU5UIjsKKyAgICAgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAg
ICAgICAgY2FzZSBTSUdIVVA6CisgICAgICAgICAgICAgICAgICAgIHNpZ25hbWUgPSAiU0lHSFVQ
IjsKKyAgICAgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICAgICAgY2FzZSBTSUdR
VUlUOgorICAgICAgICAgICAgICAgICAgICBzaWduYW1lID0gIlNJR1FVSVQiOworICAgICAgICAg
ICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgICAgICBjYXNlIFNJR0FCUlQ6CisgICAgICAg
ICAgICAgICAgICAgIHNpZ25hbWUgPSAiU0lHQUJSVCI7CisgICAgICAgICAgICAgICAgICAgIGJy
ZWFrOworICAgICAgICAgICAgICAgIGNhc2UgU0lHS0lMTDoKKyAgICAgICAgICAgICAgICAgICAg
c2lnbmFtZSA9ICJTSUdLSUxMIjsKKyAgICAgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAg
ICAgICAgICAgY2FzZSBTSUdTRUdWOgorICAgICAgICAgICAgICAgICAgICBzaWduYW1lID0gIlNJ
R1NFR1YiOworICAgICAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgICAgICBjYXNl
IFNJR0lMTDoKKyAgICAgICAgICAgICAgICAgICAgc2lnbmFtZSA9ICJTSUdJTEwiOworICAgICAg
ICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgICAgICBjYXNlIFNJR1RFUk06CisgICAg
ICAgICAgICAgICAgICAgIHNpZ25hbWUgPSAiU0lHVEVSTSI7CisgICAgICAgICAgICAgICAgICAg
IGJyZWFrOworICAgICAgICAgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICAgICAgICAgIHNw
cmludGYodG1wLCAic2lnbmFsICVkIiwgV1RFUk1TSUcoZXhpdF9jb2RlKSk7CisgICAgICAgICAg
ICAgICAgICAgIHNpZ25hbWUgPSB0bXA7CisgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAg
ICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICB0ZXN0X2Vycm9yX18oIlRlc3QgaW50ZXJy
dXB0ZWQgYnkgJXMiLCBzaWduYW1lKTsKICAgICAgICAgICAgIH0gZWxzZSB7CkBAIC00MzIsMjYg
KzQ4MCwyOCBAQCB0ZXN0X3J1bl9fKGNvbnN0IHN0cnVjdCB0ZXN0X18qIHRlc3QpCiAKICNlbGlm
IGRlZmluZWQoQ1VURVNUX1dJTl9fKQogCi0gICAgICAgIGNoYXIgYnVmZmVyWzUxMl0gPSB7MH07
Ci0gICAgICAgIFNUQVJUVVBJTkZPQSBzdGFydHVwSW5mbyA9IHswfTsKKyAgICAgICAgY2hhciBi
dWZmZXJbNTEyXSA9IHsgMCB9OworICAgICAgICBTVEFSVFVQSU5GT0Egc3RhcnR1cEluZm8gPSB7
IDAgfTsKICAgICAgICAgUFJPQ0VTU19JTkZPUk1BVElPTiBwcm9jZXNzSW5mbzsKICAgICAgICAg
RFdPUkQgZXhpdENvZGU7CiAKICAgICAgICAgLyogV2luZG93cyBoYXMgbm8gZm9yaygpLiBTbyB3
ZSBwcm9wYWdhdGUgYWxsIGluZm8gaW50byB0aGUgY2hpbGQKICAgICAgICAgICogdGhyb3VnaCBh
IGNvbW1hbmQgbGluZSBhcmd1bWVudHMuICovCi0gICAgICAgIF9zbnByaW50ZihidWZmZXIsIHNp
emVvZihidWZmZXIpLTEsCi0gICAgICAgICAgICAgICAgICIlcyAtLW5vLWV4ZWMgLS1uby1zdW1t
YXJ5IC0tdmVyYm9zZT0lZCAtLWNvbG9yPSVzIC0tIFwiJXNcIiIsCi0gICAgICAgICAgICAgICAg
IHRlc3RfYXJndjBfXywgdGVzdF92ZXJib3NlX2xldmVsX18sCi0gICAgICAgICAgICAgICAgIHRl
c3RfY29sb3JpemVfXyA/ICJhbHdheXMiIDogIm5ldmVyIiwgdGVzdC0+bmFtZSk7CisgICAgICAg
IF9zbnByaW50ZihidWZmZXIsIHNpemVvZihidWZmZXIpIC0gMSwKKyAgICAgICAgICAgICAgICAg
ICIlcyAtLW5vLWV4ZWMgLS1uby1zdW1tYXJ5IC0tdmVyYm9zZT0lZCAtLWNvbG9yPSVzIC0tIFwi
JXNcIiIsCisgICAgICAgICAgICAgICAgICB0ZXN0X2FyZ3YwX18sIHRlc3RfdmVyYm9zZV9sZXZl
bF9fLAorICAgICAgICAgICAgICAgICAgdGVzdF9jb2xvcml6ZV9fID8gImFsd2F5cyIgOiAibmV2
ZXIiLCB0ZXN0LT5uYW1lKTsKICAgICAgICAgc3RhcnR1cEluZm8uY2IgPSBzaXplb2YoU1RBUlRV
UElORk8pOwotICAgICAgICBpZihDcmVhdGVQcm9jZXNzQShOVUxMLCBidWZmZXIsIE5VTEwsIE5V
TEwsIEZBTFNFLCAwLCBOVUxMLCBOVUxMLCAmc3RhcnR1cEluZm8sICZwcm9jZXNzSW5mbykpIHsK
KyAgICAgICAgaWYgKENyZWF0ZVByb2Nlc3NBKE5VTEwsIGJ1ZmZlciwgTlVMTCwgTlVMTCwgRkFM
U0UsIDAsIE5VTEwsIE5VTEwsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAmc3RhcnR1cElu
Zm8sICZwcm9jZXNzSW5mbykpIHsKICAgICAgICAgICAgIFdhaXRGb3JTaW5nbGVPYmplY3QocHJv
Y2Vzc0luZm8uaFByb2Nlc3MsIElORklOSVRFKTsKICAgICAgICAgICAgIEdldEV4aXRDb2RlUHJv
Y2Vzcyhwcm9jZXNzSW5mby5oUHJvY2VzcywgJmV4aXRDb2RlKTsKICAgICAgICAgICAgIENsb3Nl
SGFuZGxlKHByb2Nlc3NJbmZvLmhUaHJlYWQpOwogICAgICAgICAgICAgQ2xvc2VIYW5kbGUocHJv
Y2Vzc0luZm8uaFByb2Nlc3MpOwogICAgICAgICAgICAgZmFpbGVkID0gKGV4aXRDb2RlICE9IDAp
OwogICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAgdGVzdF9lcnJvcl9fKCJDYW5ub3QgY3Jl
YXRlIHVuaXQgdGVzdCBzdWJwcm9jZXNzIFslbGRdLiIsIEdldExhc3RFcnJvcigpKTsKKyAgICAg
ICAgICAgIHRlc3RfZXJyb3JfXygiQ2Fubm90IGNyZWF0ZSB1bml0IHRlc3Qgc3VicHJvY2VzcyBb
JWxkXS4iLAorICAgICAgICAgICAgICAgICAgICAgICAgIEdldExhc3RFcnJvcigpKTsKICAgICAg
ICAgICAgIGZhaWxlZCA9IDE7CiAgICAgICAgIH0KIApAQCAtNDcwLDE0ICs1MjAsMTMgQEAgdGVz
dF9ydW5fXyhjb25zdCBzdHJ1Y3QgdGVzdF9fKiB0ZXN0KQogICAgIHRlc3RfY3VycmVudF91bml0
X18gPSBOVUxMOwogCiAgICAgdGVzdF9zdGF0X3J1bl91bml0c19fKys7Ci0gICAgaWYoZmFpbGVk
KQorICAgIGlmIChmYWlsZWQpCiAgICAgICAgIHRlc3Rfc3RhdF9mYWlsZWRfdW5pdHNfXysrOwog
fQogCiAjaWYgZGVmaW5lZChDVVRFU1RfV0lOX18pCiAvKiBDYWxsYmFjayBmb3IgU0VIIGV2ZW50
cy4gKi8KLXN0YXRpYyBMT05HIENBTExCQUNLCi10ZXN0X2V4Y2VwdGlvbl9maWx0ZXJfXyhFWENF
UFRJT05fUE9JTlRFUlMgKnB0cnMpCitzdGF0aWMgTE9ORyBDQUxMQkFDSyB0ZXN0X2V4Y2VwdGlv
bl9maWx0ZXJfXyhFWENFUFRJT05fUE9JTlRFUlMgKnB0cnMpCiB7CiAgICAgdGVzdF9lcnJvcl9f
KCJVbmhhbmRsZWQgU0VIIGV4Y2VwdGlvbiAlMDhseCBhdCAlcC4iLAogICAgICAgICAgICAgICAg
ICBwdHJzLT5FeGNlcHRpb25SZWNvcmQtPkV4Y2VwdGlvbkNvZGUsCkBAIC00ODgsMzUgKzUzNyw0
MiBAQCB0ZXN0X2V4Y2VwdGlvbl9maWx0ZXJfXyhFWENFUFRJT05fUE9JTlRFUlMgKnB0cnMpCiB9
CiAjZW5kaWYKIAotc3RhdGljIHZvaWQKLXRlc3RfaGVscF9fKHZvaWQpCitzdGF0aWMgdm9pZCB0
ZXN0X2hlbHBfXyh2b2lkKQogewogICAgIHByaW50ZigiVXNhZ2U6ICVzIFtvcHRpb25zXSBbdGVz
dC4uLl1cbiIsIHRlc3RfYXJndjBfXyk7Ci0gICAgcHJpbnRmKCJSdW4gdGhlIHNwZWNpZmllZCB1
bml0IHRlc3RzOyBvciBpZiB0aGUgb3B0aW9uICctLXNraXAnIGlzIHVzZWQsIHJ1biBhbGxcbiIp
OwotICAgIHByaW50ZigidGVzdHMgaW4gdGhlIHN1aXRlIGJ1dCB0aG9zZSBsaXN0ZWQuICBCeSBk
ZWZhdWx0LCBpZiBubyB0ZXN0cyBhcmUgc3BlY2lmaWVkXG4iKTsKKyAgICBwcmludGYoIlJ1biB0
aGUgc3BlY2lmaWVkIHVuaXQgdGVzdHM7IG9yIGlmIHRoZSBvcHRpb24gJy0tc2tpcCcgaXMgdXNl
ZCwgIgorICAgICAgICAgICAicnVuIGFsbFxuIik7CisgICAgcHJpbnRmKCJ0ZXN0cyBpbiB0aGUg
c3VpdGUgYnV0IHRob3NlIGxpc3RlZC4gIEJ5IGRlZmF1bHQsIGlmIG5vIHRlc3RzIGFyZSAiCisg
ICAgICAgICAgICJzcGVjaWZpZWRcbiIpOwogICAgIHByaW50Zigib24gdGhlIGNvbW1hbmQgbGlu
ZSwgYWxsIHVuaXQgdGVzdHMgaW4gdGhlIHN1aXRlIGFyZSBydW4uXG4iKTsKICAgICBwcmludGYo
IlxuIik7CiAgICAgcHJpbnRmKCJPcHRpb25zOlxuIik7Ci0gICAgcHJpbnRmKCIgIC1zLCAtLXNr
aXAgICAgICAgICAgICBFeGVjdXRlIGFsbCB1bml0IHRlc3RzIGJ1dCB0aGUgbGlzdGVkIG9uZXNc
biIpOwotICAgIHByaW50ZigiICAgICAgLS1uby1leGVjICAgICAgICAgRG8gbm90IGV4ZWN1dGUg
dW5pdCB0ZXN0cyBhcyBjaGlsZCBwcm9jZXNzZXNcbiIpOwotICAgIHByaW50ZigiICAgICAgLS1u
by1zdW1tYXJ5ICAgICAgU3VwcHJlc3MgcHJpbnRpbmcgb2YgdGVzdCByZXN1bHRzIHN1bW1hcnlc
biIpOworICAgIHByaW50ZigKKyAgICAgICAgIiAgLXMsIC0tc2tpcCAgICAgICAgICAgIEV4ZWN1
dGUgYWxsIHVuaXQgdGVzdHMgYnV0IHRoZSBsaXN0ZWQgb25lc1xuIik7CisgICAgcHJpbnRmKCIg
ICAgICAtLW5vLWV4ZWMgICAgICAgICBEbyBub3QgZXhlY3V0ZSB1bml0IHRlc3RzIGFzIGNoaWxk
ICIKKyAgICAgICAgICAgInByb2Nlc3Nlc1xuIik7CisgICAgcHJpbnRmKAorICAgICAgICAiICAg
ICAgLS1uby1zdW1tYXJ5ICAgICAgU3VwcHJlc3MgcHJpbnRpbmcgb2YgdGVzdCByZXN1bHRzIHN1
bW1hcnlcbiIpOwogICAgIHByaW50ZigiICAtbCwgLS1saXN0ICAgICAgICAgICAgTGlzdCB1bml0
IHRlc3RzIGluIHRoZSBzdWl0ZSBhbmQgZXhpdFxuIik7CiAgICAgcHJpbnRmKCIgIC12LCAtLXZl
cmJvc2UgICAgICAgICBFbmFibGUgbW9yZSB2ZXJib3NlIG91dHB1dFxuIik7CiAgICAgcHJpbnRm
KCIgICAgICAtLXZlcmJvc2U9TEVWRUwgICBTZXQgdmVyYm9zZSBsZXZlbCB0byBMRVZFTDpcbiIp
OwogICAgIHByaW50ZigiICAgICAgICAgICAgICAgICAgICAgICAgICAwIC4uLiBCZSBzaWxlbnRc
biIpOwotICAgIHByaW50ZigiICAgICAgICAgICAgICAgICAgICAgICAgICAxIC4uLiBPdXRwdXQg
b25lIGxpbmUgcGVyIHRlc3QgKGFuZCBzdW1tYXJ5KVxuIik7Ci0gICAgcHJpbnRmKCIgICAgICAg
ICAgICAgICAgICAgICAgICAgIDIgLi4uIEFzIDEgYW5kIGZhaWxlZCBjb25kaXRpb25zICh0aGlz
IGlzIGRlZmF1bHQpXG4iKTsKLSAgICBwcmludGYoIiAgICAgICAgICAgICAgICAgICAgICAgICAg
MyAuLi4gQXMgMSBhbmQgYWxsIGNvbmRpdGlvbnMgKGFuZCBleHRlbmRlZCBzdW1tYXJ5KVxuIik7
Ci0gICAgcHJpbnRmKCIgICAgICAtLWNvbG9yPVdIRU4gICAgICBFbmFibGUgY29sb3JpemVkIG91
dHB1dCAoV0hFTiBpcyBvbmUgb2YgJ2F1dG8nLCAnYWx3YXlzJywgJ25ldmVyJylcbiIpOworICAg
IHByaW50ZigiICAgICAgICAgICAgICAgICAgICAgICAgICAxIC4uLiBPdXRwdXQgb25lIGxpbmUg
cGVyIHRlc3QgKGFuZCAiCisgICAgICAgICAgICJzdW1tYXJ5KVxuIik7CisgICAgcHJpbnRmKCIg
ICAgICAgICAgICAgICAgICAgICAgICAgIDIgLi4uIEFzIDEgYW5kIGZhaWxlZCBjb25kaXRpb25z
ICh0aGlzICIKKyAgICAgICAgICAgImlzIGRlZmF1bHQpXG4iKTsKKyAgICBwcmludGYoIiAgICAg
ICAgICAgICAgICAgICAgICAgICAgMyAuLi4gQXMgMSBhbmQgYWxsIGNvbmRpdGlvbnMgKGFuZCAi
CisgICAgICAgICAgICJleHRlbmRlZCBzdW1tYXJ5KVxuIik7CisgICAgcHJpbnRmKCIgICAgICAt
LWNvbG9yPVdIRU4gICAgICBFbmFibGUgY29sb3JpemVkIG91dHB1dCAoV0hFTiBpcyBvbmUgb2Yg
IgorICAgICAgICAgICAiJ2F1dG8nLCAnYWx3YXlzJywgJ25ldmVyJylcbiIpOwogICAgIHByaW50
ZigiICAtaCwgLS1oZWxwICAgICAgICAgICAgRGlzcGxheSB0aGlzIGhlbHAgYW5kIGV4aXRcbiIp
OwogICAgIHByaW50ZigiXG4iKTsKICAgICB0ZXN0X2xpc3RfbmFtZXNfXygpOwogfQogCi1pbnQK
LW1haW4oaW50IGFyZ2MsIGNoYXIqKiBhcmd2KQoraW50IG1haW4oaW50IGFyZ2MsIGNoYXIgKiph
cmd2KQogewotICAgIGNvbnN0IHN0cnVjdCB0ZXN0X18qKiB0ZXN0cyA9IE5VTEw7CisgICAgY29u
c3Qgc3RydWN0IHRlc3RfXyAqKnRlc3RzID0gTlVMTDsKICAgICBpbnQgaSwgaiwgbiA9IDA7CiAg
ICAgaW50IHNlZW5fZG91YmxlX2Rhc2ggPSAwOwogCkBAIC01MzEsNDIgKzU4Nyw1MCBAQCBtYWlu
KGludCBhcmdjLCBjaGFyKiogYXJndikKICNlbmRpZgogCiAgICAgLyogUGFyc2Ugb3B0aW9ucyAq
LwotICAgIGZvcihpID0gMTsgaSA8IGFyZ2M7IGkrKykgewotICAgICAgICBpZihzZWVuX2RvdWJs
ZV9kYXNoIHx8IGFyZ3ZbaV1bMF0gIT0gJy0nKSB7Ci0gICAgICAgICAgICB0ZXN0cyA9IChjb25z
dCBzdHJ1Y3QgdGVzdF9fKiopIHJlYWxsb2MoKHZvaWQqKXRlc3RzLCAobisxKSAqIHNpemVvZihj
b25zdCBzdHJ1Y3QgdGVzdF9fKikpOwotICAgICAgICAgICAgaWYodGVzdHMgPT0gTlVMTCkgewor
ICAgIGZvciAoaSA9IDE7IGkgPCBhcmdjOyBpKyspIHsKKyAgICAgICAgaWYgKHNlZW5fZG91Ymxl
X2Rhc2ggfHwgYXJndltpXVswXSAhPSAnLScpIHsKKyAgICAgICAgICAgIHRlc3RzID0gKGNvbnN0
IHN0cnVjdCB0ZXN0X18gKiopcmVhbGxvYygKKyAgICAgICAgICAgICAgICAodm9pZCAqKXRlc3Rz
LCAobiArIDEpICogc2l6ZW9mKGNvbnN0IHN0cnVjdCB0ZXN0X18gKikpOworICAgICAgICAgICAg
aWYgKHRlc3RzID09IE5VTEwpIHsKICAgICAgICAgICAgICAgICBmcHJpbnRmKHN0ZGVyciwgIk91
dCBvZiBtZW1vcnkuXG4iKTsKICAgICAgICAgICAgICAgICBleGl0KDIpOwogICAgICAgICAgICAg
fQogICAgICAgICAgICAgdGVzdHNbbl0gPSB0ZXN0X2J5X25hbWVfXyhhcmd2W2ldKTsKLSAgICAg
ICAgICAgIGlmKHRlc3RzW25dID09IE5VTEwpIHsKLSAgICAgICAgICAgICAgICBmcHJpbnRmKHN0
ZGVyciwgIiVzOiBVbnJlY29nbml6ZWQgdW5pdCB0ZXN0ICclcydcbiIsIGFyZ3ZbMF0sIGFyZ3Zb
aV0pOwotICAgICAgICAgICAgICAgIGZwcmludGYoc3RkZXJyLCAiVHJ5ICclcyAtLWxpc3QnIGZv
ciBsaXN0IG9mIHVuaXQgdGVzdHMuXG4iLCBhcmd2WzBdKTsKKyAgICAgICAgICAgIGlmICh0ZXN0
c1tuXSA9PSBOVUxMKSB7CisgICAgICAgICAgICAgICAgZnByaW50ZihzdGRlcnIsICIlczogVW5y
ZWNvZ25pemVkIHVuaXQgdGVzdCAnJXMnXG4iLCBhcmd2WzBdLAorICAgICAgICAgICAgICAgICAg
ICAgICAgYXJndltpXSk7CisgICAgICAgICAgICAgICAgZnByaW50ZihzdGRlcnIsICJUcnkgJyVz
IC0tbGlzdCcgZm9yIGxpc3Qgb2YgdW5pdCB0ZXN0cy5cbiIsCisgICAgICAgICAgICAgICAgICAg
ICAgICBhcmd2WzBdKTsKICAgICAgICAgICAgICAgICBleGl0KDIpOwogICAgICAgICAgICAgfQog
ICAgICAgICAgICAgbisrOwotICAgICAgICB9IGVsc2UgaWYoc3RyY21wKGFyZ3ZbaV0sICItLSIp
ID09IDApIHsKKyAgICAgICAgfSBlbHNlIGlmIChzdHJjbXAoYXJndltpXSwgIi0tIikgPT0gMCkg
ewogICAgICAgICAgICAgc2Vlbl9kb3VibGVfZGFzaCA9IDE7Ci0gICAgICAgIH0gZWxzZSBpZihz
dHJjbXAoYXJndltpXSwgIi0taGVscCIpID09IDAgfHwgc3RyY21wKGFyZ3ZbaV0sICItaCIpID09
IDApIHsKKyAgICAgICAgfSBlbHNlIGlmIChzdHJjbXAoYXJndltpXSwgIi0taGVscCIpID09IDAg
fHwKKyAgICAgICAgICAgICAgICAgICBzdHJjbXAoYXJndltpXSwgIi1oIikgPT0gMCkgewogICAg
ICAgICAgICAgdGVzdF9oZWxwX18oKTsKICAgICAgICAgICAgIGV4aXQoMCk7Ci0gICAgICAgIH0g
ZWxzZSBpZihzdHJjbXAoYXJndltpXSwgIi0tdmVyYm9zZSIpID09IDAgfHwgc3RyY21wKGFyZ3Zb
aV0sICItdiIpID09IDApIHsKKyAgICAgICAgfSBlbHNlIGlmIChzdHJjbXAoYXJndltpXSwgIi0t
dmVyYm9zZSIpID09IDAgfHwKKyAgICAgICAgICAgICAgICAgICBzdHJjbXAoYXJndltpXSwgIi12
IikgPT0gMCkgewogICAgICAgICAgICAgdGVzdF92ZXJib3NlX2xldmVsX18rKzsKLSAgICAgICAg
fSBlbHNlIGlmKHN0cm5jbXAoYXJndltpXSwgIi0tdmVyYm9zZT0iLCAxMCkgPT0gMCkgeworICAg
ICAgICB9IGVsc2UgaWYgKHN0cm5jbXAoYXJndltpXSwgIi0tdmVyYm9zZT0iLCAxMCkgPT0gMCkg
ewogICAgICAgICAgICAgdGVzdF92ZXJib3NlX2xldmVsX18gPSBhdG9pKGFyZ3ZbaV0gKyAxMCk7
Ci0gICAgICAgIH0gZWxzZSBpZihzdHJjbXAoYXJndltpXSwgIi0tY29sb3I9YXV0byIpID09IDAp
IHsKKyAgICAgICAgfSBlbHNlIGlmIChzdHJjbXAoYXJndltpXSwgIi0tY29sb3I9YXV0byIpID09
IDApIHsKICAgICAgICAgICAgIC8qIG5vb3AgKHNldCBmcm9tIGFib3ZlKSAqLwotICAgICAgICB9
IGVsc2UgaWYoc3RyY21wKGFyZ3ZbaV0sICItLWNvbG9yPWFsd2F5cyIpID09IDAgfHwgc3RyY21w
KGFyZ3ZbaV0sICItLWNvbG9yIikgPT0gMCkgeworICAgICAgICB9IGVsc2UgaWYgKHN0cmNtcChh
cmd2W2ldLCAiLS1jb2xvcj1hbHdheXMiKSA9PSAwIHx8CisgICAgICAgICAgICAgICAgICAgc3Ry
Y21wKGFyZ3ZbaV0sICItLWNvbG9yIikgPT0gMCkgewogICAgICAgICAgICAgdGVzdF9jb2xvcml6
ZV9fID0gMTsKLSAgICAgICAgfSBlbHNlIGlmKHN0cmNtcChhcmd2W2ldLCAiLS1jb2xvcj1uZXZl
ciIpID09IDApIHsKKyAgICAgICAgfSBlbHNlIGlmIChzdHJjbXAoYXJndltpXSwgIi0tY29sb3I9
bmV2ZXIiKSA9PSAwKSB7CiAgICAgICAgICAgICB0ZXN0X2NvbG9yaXplX18gPSAwOwotICAgICAg
ICB9IGVsc2UgaWYoc3RyY21wKGFyZ3ZbaV0sICItLXNraXAiKSA9PSAwIHx8IHN0cmNtcChhcmd2
W2ldLCAiLXMiKSA9PSAwKSB7CisgICAgICAgIH0gZWxzZSBpZiAoc3RyY21wKGFyZ3ZbaV0sICIt
LXNraXAiKSA9PSAwIHx8CisgICAgICAgICAgICAgICAgICAgc3RyY21wKGFyZ3ZbaV0sICItcyIp
ID09IDApIHsKICAgICAgICAgICAgIHRlc3Rfc2tpcF9tb2RlX18gPSAxOwotICAgICAgICB9IGVs
c2UgaWYoc3RyY21wKGFyZ3ZbaV0sICItLW5vLWV4ZWMiKSA9PSAwKSB7CisgICAgICAgIH0gZWxz
ZSBpZiAoc3RyY21wKGFyZ3ZbaV0sICItLW5vLWV4ZWMiKSA9PSAwKSB7CiAgICAgICAgICAgICB0
ZXN0X25vX2V4ZWNfXyA9IDE7Ci0gICAgICAgIH0gZWxzZSBpZihzdHJjbXAoYXJndltpXSwgIi0t
bm8tc3VtbWFyeSIpID09IDApIHsKKyAgICAgICAgfSBlbHNlIGlmIChzdHJjbXAoYXJndltpXSwg
Ii0tbm8tc3VtbWFyeSIpID09IDApIHsKICAgICAgICAgICAgIHRlc3Rfbm9fc3VtbWFyeV9fID0g
MTsKLSAgICAgICAgfSBlbHNlIGlmKHN0cmNtcChhcmd2W2ldLCAiLS1saXN0IikgPT0gMCB8fCBz
dHJjbXAoYXJndltpXSwgIi1sIikgPT0gMCkgeworICAgICAgICB9IGVsc2UgaWYgKHN0cmNtcChh
cmd2W2ldLCAiLS1saXN0IikgPT0gMCB8fAorICAgICAgICAgICAgICAgICAgIHN0cmNtcChhcmd2
W2ldLCAiLWwiKSA9PSAwKSB7CiAgICAgICAgICAgICB0ZXN0X2xpc3RfbmFtZXNfXygpOwogICAg
ICAgICAgICAgZXhpdCgwKTsKICAgICAgICAgfSBlbHNlIHsKQEAgLTU4Miw2NiArNjQ2LDY4IEBA
IG1haW4oaW50IGFyZ2MsIGNoYXIqKiBhcmd2KQogCiAgICAgLyogQ291bnQgYWxsIHRlc3QgdW5p
dHMgKi8KICAgICB0ZXN0X2NvdW50X18gPSAwOwotICAgIGZvcihpID0gMDsgdGVzdF9saXN0X19b
aV0uZnVuYyAhPSBOVUxMOyBpKyspCisgICAgZm9yIChpID0gMDsgdGVzdF9saXN0X19baV0uZnVu
YyAhPSBOVUxMOyBpKyspCiAgICAgICAgIHRlc3RfY291bnRfXysrOwogCiAgICAgLyogUnVuIHRo
ZSB0ZXN0cyAqLwotICAgIGlmKG4gPT0gMCkgeworICAgIGlmIChuID09IDApIHsKICAgICAgICAg
LyogUnVuIGFsbCB0ZXN0cyAqLwotICAgICAgICBmb3IoaSA9IDA7IHRlc3RfbGlzdF9fW2ldLmZ1
bmMgIT0gTlVMTDsgaSsrKQorICAgICAgICBmb3IgKGkgPSAwOyB0ZXN0X2xpc3RfX1tpXS5mdW5j
ICE9IE5VTEw7IGkrKykKICAgICAgICAgICAgIHRlc3RfcnVuX18oJnRlc3RfbGlzdF9fW2ldKTsK
LSAgICB9IGVsc2UgaWYoIXRlc3Rfc2tpcF9tb2RlX18pIHsKKyAgICB9IGVsc2UgaWYgKCF0ZXN0
X3NraXBfbW9kZV9fKSB7CiAgICAgICAgIC8qIFJ1biB0aGUgbGlzdGVkIHRlc3RzICovCi0gICAg
ICAgIGZvcihpID0gMDsgaSA8IG47IGkrKykKKyAgICAgICAgZm9yIChpID0gMDsgaSA8IG47IGkr
KykKICAgICAgICAgICAgIHRlc3RfcnVuX18odGVzdHNbaV0pOwogICAgIH0gZWxzZSB7CiAgICAg
ICAgIC8qIFJ1biBhbGwgdGVzdHMgZXhjZXB0IHRob3NlIGxpc3RlZCAqLwotICAgICAgICBmb3Io
aSA9IDA7IHRlc3RfbGlzdF9fW2ldLmZ1bmMgIT0gTlVMTDsgaSsrKSB7CisgICAgICAgIGZvciAo
aSA9IDA7IHRlc3RfbGlzdF9fW2ldLmZ1bmMgIT0gTlVMTDsgaSsrKSB7CiAgICAgICAgICAgICBp
bnQgd2FudF9za2lwID0gMDsKLSAgICAgICAgICAgIGZvcihqID0gMDsgaiA8IG47IGorKykgewot
ICAgICAgICAgICAgICAgIGlmKHRlc3RzW2pdID09ICZ0ZXN0X2xpc3RfX1tpXSkgeworICAgICAg
ICAgICAgZm9yIChqID0gMDsgaiA8IG47IGorKykgeworICAgICAgICAgICAgICAgIGlmICh0ZXN0
c1tqXSA9PSAmdGVzdF9saXN0X19baV0pIHsKICAgICAgICAgICAgICAgICAgICAgd2FudF9za2lw
ID0gMTsKICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgfQogICAg
ICAgICAgICAgfQotICAgICAgICAgICAgaWYoIXdhbnRfc2tpcCkKKyAgICAgICAgICAgIGlmICgh
d2FudF9za2lwKQogICAgICAgICAgICAgICAgIHRlc3RfcnVuX18oJnRlc3RfbGlzdF9fW2ldKTsK
ICAgICAgICAgfQogICAgIH0KIAogICAgIC8qIFdyaXRlIGEgc3VtbWFyeSAqLwotICAgIGlmKCF0
ZXN0X25vX3N1bW1hcnlfXyAmJiB0ZXN0X3ZlcmJvc2VfbGV2ZWxfXyA+PSAxKSB7CisgICAgaWYg
KCF0ZXN0X25vX3N1bW1hcnlfXyAmJiB0ZXN0X3ZlcmJvc2VfbGV2ZWxfXyA+PSAxKSB7CiAgICAg
ICAgIHRlc3RfcHJpbnRfaW5fY29sb3JfXyhDVVRFU1RfQ09MT1JfREVGQVVMVF9JTlRFTlNJVkVf
XywgIlxuU3VtbWFyeTpcbiIpOwogCi0gICAgICAgIGlmKHRlc3RfdmVyYm9zZV9sZXZlbF9fID49
IDMpIHsKKyAgICAgICAgaWYgKHRlc3RfdmVyYm9zZV9sZXZlbF9fID49IDMpIHsKICAgICAgICAg
ICAgIHByaW50ZigiICBDb3VudCBvZiBhbGwgdW5pdCB0ZXN0czogICAgICU0ZFxuIiwgdGVzdF9j
b3VudF9fKTsKLSAgICAgICAgICAgIHByaW50ZigiICBDb3VudCBvZiBydW4gdW5pdCB0ZXN0czog
ICAgICU0ZFxuIiwgdGVzdF9zdGF0X3J1bl91bml0c19fKTsKLSAgICAgICAgICAgIHByaW50Zigi
ICBDb3VudCBvZiBmYWlsZWQgdW5pdCB0ZXN0czogICU0ZFxuIiwgdGVzdF9zdGF0X2ZhaWxlZF91
bml0c19fKTsKLSAgICAgICAgICAgIHByaW50ZigiICBDb3VudCBvZiBza2lwcGVkIHVuaXQgdGVz
dHM6ICU0ZFxuIiwgdGVzdF9jb3VudF9fIC0gdGVzdF9zdGF0X3J1bl91bml0c19fKTsKKyAgICAg
ICAgICAgIHByaW50ZigiICBDb3VudCBvZiBydW4gdW5pdCB0ZXN0czogICAgICU0ZFxuIiwKKyAg
ICAgICAgICAgICAgICAgICB0ZXN0X3N0YXRfcnVuX3VuaXRzX18pOworICAgICAgICAgICAgcHJp
bnRmKCIgIENvdW50IG9mIGZhaWxlZCB1bml0IHRlc3RzOiAgJTRkXG4iLAorICAgICAgICAgICAg
ICAgICAgIHRlc3Rfc3RhdF9mYWlsZWRfdW5pdHNfXyk7CisgICAgICAgICAgICBwcmludGYoIiAg
Q291bnQgb2Ygc2tpcHBlZCB1bml0IHRlc3RzOiAlNGRcbiIsCisgICAgICAgICAgICAgICAgICAg
dGVzdF9jb3VudF9fIC0gdGVzdF9zdGF0X3J1bl91bml0c19fKTsKICAgICAgICAgfQogCi0gICAg
ICAgIGlmKHRlc3Rfc3RhdF9mYWlsZWRfdW5pdHNfXyA9PSAwKSB7CisgICAgICAgIGlmICh0ZXN0
X3N0YXRfZmFpbGVkX3VuaXRzX18gPT0gMCkgewogICAgICAgICAgICAgdGVzdF9wcmludF9pbl9j
b2xvcl9fKENVVEVTVF9DT0xPUl9HUkVFTl9JTlRFTlNJVkVfXywKLSAgICAgICAgICAgICAgICAg
ICAgIiAgU1VDQ0VTUzogQWxsIHVuaXQgdGVzdHMgaGF2ZSBwYXNzZWQuXG4iKTsKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAiICBTVUNDRVNTOiBBbGwgdW5pdCB0ZXN0cyBoYXZl
IHBhc3NlZC5cbiIpOwogICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAgdGVzdF9wcmludF9p
bl9jb2xvcl9fKENVVEVTVF9DT0xPUl9SRURfSU5URU5TSVZFX18sCi0gICAgICAgICAgICAgICAg
ICAgICIgIEZBSUxFRDogJWQgb2YgJWQgdW5pdCB0ZXN0cyBoYXZlIGZhaWxlZC5cbiIsCi0gICAg
ICAgICAgICAgICAgICAgIHRlc3Rfc3RhdF9mYWlsZWRfdW5pdHNfXywgdGVzdF9zdGF0X3J1bl91
bml0c19fKTsKKyAgICAgICAgICAgIHRlc3RfcHJpbnRfaW5fY29sb3JfXygKKyAgICAgICAgICAg
ICAgICBDVVRFU1RfQ09MT1JfUkVEX0lOVEVOU0lWRV9fLAorICAgICAgICAgICAgICAgICIgIEZB
SUxFRDogJWQgb2YgJWQgdW5pdCB0ZXN0cyBoYXZlIGZhaWxlZC5cbiIsCisgICAgICAgICAgICAg
ICAgdGVzdF9zdGF0X2ZhaWxlZF91bml0c19fLCB0ZXN0X3N0YXRfcnVuX3VuaXRzX18pOwogICAg
ICAgICB9CiAgICAgfQogCi0gICAgaWYodGVzdHMgIT0gTlVMTCkKLSAgICAgICAgZnJlZSgodm9p
ZCopdGVzdHMpOworICAgIGlmICh0ZXN0cyAhPSBOVUxMKQorICAgICAgICBmcmVlKCh2b2lkICop
dGVzdHMpOwogCiAgICAgcmV0dXJuICh0ZXN0X3N0YXRfZmFpbGVkX3VuaXRzX18gPT0gMCkgPyAw
IDogMTsKIH0KIAotCi0jZW5kaWYgIC8qICNpZm5kZWYgVEVTVF9OT19NQUlOICovCisjZW5kaWYg
LyogI2lmbmRlZiBURVNUX05PX01BSU4gKi8KIAogI2lmZGVmIF9fY3BsdXNwbHVzCi0gICAgfSAg
LyogZXh0ZXJuICJDIiAqLworfSAvKiBleHRlcm4gIkMiICovCiAjZW5kaWYKIAotCi0jZW5kaWYg
IC8qICNpZm5kZWYgQ1VURVNUX0hfXyAqLworI2VuZGlmIC8qICNpZm5kZWYgQ1VURVNUX0hfXyAq
LwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJzcnRwL3Rlc3QvZHRsc19zcnRwX2RyaXZlci5jIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL3Rlc3QvZHRsc19zcnRwX2RyaXZl
ci5jCmluZGV4IGViZjczZjlmYzUxYjVlNTBlOWYyZWQzZDk1ZTE5ZjhlMDIwYmRkZmQuLjRmNGQw
YTM5YjM4ZWRjNGI0ODhmNjRlZDUzNzYxZGZjZDA2M2VjNjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC90ZXN0L2R0bHNf
c3J0cF9kcml2ZXIuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3Ro
aXJkX3BhcnR5L2xpYnNydHAvdGVzdC9kdGxzX3NydHBfZHJpdmVyLmMKQEAgLTcsMjYgKzcsMjYg
QEAKICAqIENpc2NvIFN5c3RlbXMsIEluYy4KICAqLwogLyoKLSAqCQorICoKICAqIENvcHlyaWdo
dCAoYykgMjAwMS0yMDE3IENpc2NvIFN5c3RlbXMsIEluYy4KICAqIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCi0gKiAKKyAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmlu
YXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRl
ZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwogICogYXJlIG1ldDoKLSAq
IAorICoKICAqICAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKICAqICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogCisgKgogICogICBSZWRpc3RyaWJ1dGlv
bnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCiAgKiAgIGNvcHlyaWdo
dCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCiAgKiAg
IGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBw
cm92aWRlZAogICogICB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKiAKKyAqCiAgKiAgIE5laXRo
ZXIgdGhlIG5hbWUgb2YgdGhlIENpc2NvIFN5c3RlbXMsIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBp
dHMKICAqICAgY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBw
cm9kdWN0cyBkZXJpdmVkCiAgKiAgIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmlj
IHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLSAqIAorICoKICAqIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKICAqICJB
UyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBC
VVQgTk9UCiAgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5U
QUJJTElUWSBBTkQgRklUTkVTUwpAQCAtNDYsMTcxICs0NiwxNzAgQEAKICNpbmNsdWRlICJnZXRv
cHRfcy5oIiAvKiBmb3IgbG9jYWwgZ2V0b3B0KCkgICAgKi8KICNpbmNsdWRlICJzcnRwX3ByaXYu
aCIKIAotc3J0cF9lcnJfc3RhdHVzX3QgCi10ZXN0X2R0bHNfc3J0cCh2b2lkKTsKK3NydHBfZXJy
X3N0YXR1c190IHRlc3RfZHRsc19zcnRwKHZvaWQpOwogCi1zcnRwX2hkcl90ICoKLXNydHBfY3Jl
YXRlX3Rlc3RfcGFja2V0KGludCBwa3Rfb2N0ZXRfbGVuLCB1aW50MzJfdCBzc3JjKTsKK3NydHBf
aGRyX3QgKnNydHBfY3JlYXRlX3Rlc3RfcGFja2V0KGludCBwa3Rfb2N0ZXRfbGVuLCB1aW50MzJf
dCBzc3JjKTsKIAotdm9pZAotdXNhZ2UoY2hhciAqcHJvZ19uYW1lKSB7Ci0gIHByaW50ZigidXNh
Z2U6ICVzIFsgLXQgXVsgLWMgXVsgLXYgXVstZCA8ZGVidWdfbW9kdWxlPiBdKiBbIC1sIF1cbiIK
LSAgICAgICAgICIgIC1kIDxtb2Q+ICAgdHVybiBvbiBkZWJ1Z2dpbmcgbW9kdWxlIDxtb2Q+XG4i
Ci0gICAgICAgICAiICAtbCAgICAgICAgIGxpc3QgZGVidWdnaW5nIG1vZHVsZXNcbiIsIHByb2df
bmFtZSk7Ci0gIGV4aXQoMSk7Cit2b2lkIHVzYWdlKGNoYXIgKnByb2dfbmFtZSkKK3sKKyAgICBw
cmludGYoInVzYWdlOiAlcyBbIC10IF1bIC1jIF1bIC12IF1bLWQgPGRlYnVnX21vZHVsZT4gXSog
WyAtbCBdXG4iCisgICAgICAgICAgICIgIC1kIDxtb2Q+ICAgdHVybiBvbiBkZWJ1Z2dpbmcgbW9k
dWxlIDxtb2Q+XG4iCisgICAgICAgICAgICIgIC1sICAgICAgICAgbGlzdCBkZWJ1Z2dpbmcgbW9k
dWxlc1xuIiwKKyAgICAgICAgICAgcHJvZ19uYW1lKTsKKyAgICBleGl0KDEpOwogfQogCi1pbnQK
LW1haW4oaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkgewotICB1bnNpZ25lZCBkb19saXN0X21vZHMg
ICAgICA9IDA7Ci0gIGludCBxOwotICBzcnRwX2Vycl9zdGF0dXNfdCBlcnI7CitpbnQgbWFpbihp
bnQgYXJnYywgY2hhciAqYXJndltdKQoreworICAgIHVuc2lnbmVkIGRvX2xpc3RfbW9kcyA9IDA7
CisgICAgaW50IHE7CisgICAgc3J0cF9lcnJfc3RhdHVzX3QgZXJyOwogCi0gIHByaW50ZigiZHRs
c19zcnRwX2RyaXZlclxuIik7CisgICAgcHJpbnRmKCJkdGxzX3NydHBfZHJpdmVyXG4iKTsKIAot
ICAvKiBpbml0aWFsaXplIHNydHAgbGlicmFyeSAqLwotICBlcnIgPSBzcnRwX2luaXQoKTsKLSAg
aWYgKGVycikgewotICAgIHByaW50ZigiZXJyb3I6IHNydHAgaW5pdCBmYWlsZWQgd2l0aCBlcnJv
ciBjb2RlICVkXG4iLCBlcnIpOwotICAgIGV4aXQoMSk7Ci0gIH0KLQotICAvKiBwcm9jZXNzIGlu
cHV0IGFyZ3VtZW50cyAqLwotICB3aGlsZSAoMSkgewotICAgIHEgPSBnZXRvcHRfcyhhcmdjLCBh
cmd2LCAibGQ6Iik7Ci0gICAgaWYgKHEgPT0gLTEpIAotICAgICAgYnJlYWs7Ci0gICAgc3dpdGNo
IChxKSB7Ci0gICAgY2FzZSAnbCc6Ci0gICAgICBkb19saXN0X21vZHMgPSAxOwotICAgICAgYnJl
YWs7Ci0gICAgY2FzZSAnZCc6Ci0gICAgICBlcnIgPSBzcnRwX2NyeXB0b19rZXJuZWxfc2V0X2Rl
YnVnX21vZHVsZShvcHRhcmdfcywgMSk7Ci0gICAgICBpZiAoZXJyKSB7Ci0gICAgICAgIHByaW50
ZigiZXJyb3I6IHNldCBkZWJ1ZyBtb2R1bGUgKCVzKSBmYWlsZWRcbiIsIG9wdGFyZ19zKTsKKyAg
ICAvKiBpbml0aWFsaXplIHNydHAgbGlicmFyeSAqLworICAgIGVyciA9IHNydHBfaW5pdCgpOwor
ICAgIGlmIChlcnIpIHsKKyAgICAgICAgcHJpbnRmKCJlcnJvcjogc3J0cCBpbml0IGZhaWxlZCB3
aXRoIGVycm9yIGNvZGUgJWRcbiIsIGVycik7CiAgICAgICAgIGV4aXQoMSk7Ci0gICAgICB9ICAK
LSAgICAgIGJyZWFrOwotICAgIGRlZmF1bHQ6Ci0gICAgICB1c2FnZShhcmd2WzBdKTsKLSAgICB9
ICAgIAotICB9Ci0KLSAgaWYgKGRvX2xpc3RfbW9kcykgewotICAgIGVyciA9IHNydHBfY3J5cHRv
X2tlcm5lbF9saXN0X2RlYnVnX21vZHVsZXMoKTsKKyAgICB9CisKKyAgICAvKiBwcm9jZXNzIGlu
cHV0IGFyZ3VtZW50cyAqLworICAgIHdoaWxlICgxKSB7CisgICAgICAgIHEgPSBnZXRvcHRfcyhh
cmdjLCBhcmd2LCAibGQ6Iik7CisgICAgICAgIGlmIChxID09IC0xKQorICAgICAgICAgICAgYnJl
YWs7CisgICAgICAgIHN3aXRjaCAocSkgeworICAgICAgICBjYXNlICdsJzoKKyAgICAgICAgICAg
IGRvX2xpc3RfbW9kcyA9IDE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAnZCc6
CisgICAgICAgICAgICBlcnIgPSBzcnRwX2NyeXB0b19rZXJuZWxfc2V0X2RlYnVnX21vZHVsZShv
cHRhcmdfcywgMSk7CisgICAgICAgICAgICBpZiAoZXJyKSB7CisgICAgICAgICAgICAgICAgcHJp
bnRmKCJlcnJvcjogc2V0IGRlYnVnIG1vZHVsZSAoJXMpIGZhaWxlZFxuIiwgb3B0YXJnX3MpOwor
ICAgICAgICAgICAgICAgIGV4aXQoMSk7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBicmVh
azsKKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIHVzYWdlKGFyZ3ZbMF0pOworICAgICAg
ICB9CisgICAgfQorCisgICAgaWYgKGRvX2xpc3RfbW9kcykgeworICAgICAgICBlcnIgPSBzcnRw
X2NyeXB0b19rZXJuZWxfbGlzdF9kZWJ1Z19tb2R1bGVzKCk7CisgICAgICAgIGlmIChlcnIpIHsK
KyAgICAgICAgICAgIHByaW50ZigiZXJyb3I6IGxpc3Qgb2YgZGVidWcgbW9kdWxlcyBmYWlsZWRc
biIpOworICAgICAgICAgICAgZXhpdCgxKTsKKyAgICAgICAgfQorICAgIH0KKworICAgIHByaW50
ZigidGVzdGluZyBkdGxzX3NydHAuLi4iKTsKKyAgICBlcnIgPSB0ZXN0X2R0bHNfc3J0cCgpOwog
ICAgIGlmIChlcnIpIHsKLSAgICAgIHByaW50ZigiZXJyb3I6IGxpc3Qgb2YgZGVidWcgbW9kdWxl
cyBmYWlsZWRcbiIpOwotICAgICAgZXhpdCgxKTsKKyAgICAgICAgcHJpbnRmKCJcbmVycm9yIChj
b2RlICVkKVxuIiwgZXJyKTsKKyAgICAgICAgZXhpdCgxKTsKICAgICB9Ci0gIH0KKyAgICBwcmlu
dGYoInBhc3NlZFxuIik7CiAKLSAgcHJpbnRmKCJ0ZXN0aW5nIGR0bHNfc3J0cC4uLiIpOwotICBl
cnIgPSB0ZXN0X2R0bHNfc3J0cCgpOwotICBpZiAoZXJyKSB7Ci0gICAgcHJpbnRmKCJcbmVycm9y
IChjb2RlICVkKVxuIiwgZXJyKTsKLSAgICBleGl0KDEpOwotICB9Ci0gIHByaW50ZigicGFzc2Vk
XG4iKTsKLSAgCi0gIC8qIHNodXQgZG93biBzcnRwIGxpYnJhcnkgKi8KLSAgZXJyID0gc3J0cF9z
aHV0ZG93bigpOwotICBpZiAoZXJyKSB7Ci0gICAgcHJpbnRmKCJlcnJvcjogc3J0cCBzaHV0ZG93
biBmYWlsZWQgd2l0aCBlcnJvciBjb2RlICVkXG4iLCBlcnIpOwotICAgIGV4aXQoMSk7Ci0gIH0K
KyAgICAvKiBzaHV0IGRvd24gc3J0cCBsaWJyYXJ5ICovCisgICAgZXJyID0gc3J0cF9zaHV0ZG93
bigpOworICAgIGlmIChlcnIpIHsKKyAgICAgICAgcHJpbnRmKCJlcnJvcjogc3J0cCBzaHV0ZG93
biBmYWlsZWQgd2l0aCBlcnJvciBjb2RlICVkXG4iLCBlcnIpOworICAgICAgICBleGl0KDEpOwor
ICAgIH0KIAotICByZXR1cm4gMDsKKyAgICByZXR1cm4gMDsKIH0KIAorc3J0cF9lcnJfc3RhdHVz
X3QgdGVzdF9kdGxzX3NydHAodm9pZCkKK3sKKyAgICBzcnRwX2hkcl90ICp0ZXN0X3BhY2tldDsK
KyAgICBpbnQgdGVzdF9wYWNrZXRfbGVuID0gODA7CisgICAgc3J0cF90IHM7CisgICAgc3J0cF9w
b2xpY3lfdCBwb2xpY3k7CisgICAgdWludDhfdCBrZXlbU1JUUF9NQVhfS0VZX0xFTl07CisgICAg
dWludDhfdCBzYWx0W1NSVFBfTUFYX0tFWV9MRU5dOworICAgIHVuc2lnbmVkIGludCBrZXlfbGVu
LCBzYWx0X2xlbjsKKyAgICBzcnRwX3Byb2ZpbGVfdCBwcm9maWxlOworICAgIHNydHBfZXJyX3N0
YXR1c190IGVycjsKIAotc3J0cF9lcnJfc3RhdHVzX3QKLXRlc3RfZHRsc19zcnRwKHZvaWQpIHsK
LSAgc3J0cF9oZHJfdCAqdGVzdF9wYWNrZXQ7Ci0gIGludCB0ZXN0X3BhY2tldF9sZW4gPSA4MDsK
LSAgc3J0cF90IHM7Ci0gIHNydHBfcG9saWN5X3QgcG9saWN5OwotICB1aW50OF90IGtleVtTUlRQ
X01BWF9LRVlfTEVOXTsKLSAgdWludDhfdCBzYWx0W1NSVFBfTUFYX0tFWV9MRU5dOwotICB1bnNp
Z25lZCBpbnQga2V5X2xlbiwgc2FsdF9sZW47Ci0gIHNydHBfcHJvZmlsZV90IHByb2ZpbGU7Ci0g
IHNydHBfZXJyX3N0YXR1c190IGVycjsKLQotICBtZW1zZXQoJnBvbGljeSwgMHgwLCBzaXplb2Yo
c3J0cF9wb2xpY3lfdCkpOwotCi0gIC8qIGNyZWF0ZSBhICdudWxsJyBTUlRQIHNlc3Npb24gKi8K
LSAgZXJyID0gc3J0cF9jcmVhdGUoJnMsIE5VTEwpOwotICBpZiAoZXJyKSAKLSAgICByZXR1cm4g
ZXJyOwotCi0gIC8qIAotICAgKiB2ZXJpZnkgdGhhdCBwYWNrZXQtcHJvY2Vzc2luZyBmdW5jdGlv
bnMgYmVoYXZlIHByb3Blcmx5IC0gd2UKLSAgICogZXhwZWN0IHRoYXQgdGhlc2UgZnVuY3Rpb25z
IHdpbGwgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19ub19jdHgKLSAgICovCi0gIHRlc3RfcGFja2V0
ID0gc3J0cF9jcmVhdGVfdGVzdF9wYWNrZXQoODAsIDB4YTVhNWE1YTUpOwotICBpZiAodGVzdF9w
YWNrZXQgPT0gTlVMTCkgCi0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19hbGxvY19mYWlsOwot
ICBlcnIgPSBzcnRwX3Byb3RlY3QocywgdGVzdF9wYWNrZXQsICZ0ZXN0X3BhY2tldF9sZW4pOwot
ICBpZiAoZXJyICE9IHNydHBfZXJyX3N0YXR1c19ub19jdHgpIHsKLSAgICBwcmludGYoIndyb25n
IHJldHVybiB2YWx1ZSBmcm9tIHNydHBfcHJvdGVjdCgpIChnb3QgY29kZSAlZClcbiIsIAotCSAg
IGVycik7Ci0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19mYWlsOwotICB9Ci0gIGVyciA9IHNy
dHBfdW5wcm90ZWN0KHMsIHRlc3RfcGFja2V0LCAmdGVzdF9wYWNrZXRfbGVuKTsKLSAgaWYgKGVy
ciAhPSBzcnRwX2Vycl9zdGF0dXNfbm9fY3R4KSB7Ci0gICAgcHJpbnRmKCJ3cm9uZyByZXR1cm4g
dmFsdWUgZnJvbSBzcnRwX3VucHJvdGVjdCgpIChnb3QgY29kZSAlZClcbiIsIAotCSAgIGVycik7
Ci0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19mYWlsOwotICB9Ci0gIGVyciA9IHNydHBfcHJv
dGVjdF9ydGNwKHMsIHRlc3RfcGFja2V0LCAmdGVzdF9wYWNrZXRfbGVuKTsKLSAgaWYgKGVyciAh
PSBzcnRwX2Vycl9zdGF0dXNfbm9fY3R4KSB7Ci0gICAgcHJpbnRmKCJ3cm9uZyByZXR1cm4gdmFs
dWUgZnJvbSBzcnRwX3Byb3RlY3RfcnRjcCgpIChnb3QgY29kZSAlZClcbiIsIAotCSAgIGVycik7
Ci0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19mYWlsOwotICB9Ci0gIGVyciA9IHNydHBfdW5w
cm90ZWN0X3J0Y3AocywgdGVzdF9wYWNrZXQsICZ0ZXN0X3BhY2tldF9sZW4pOwotICBpZiAoZXJy
ICE9IHNydHBfZXJyX3N0YXR1c19ub19jdHgpIHsKLSAgICBwcmludGYoIndyb25nIHJldHVybiB2
YWx1ZSBmcm9tIHNydHBfdW5wcm90ZWN0X3J0Y3AoKSAoZ290IGNvZGUgJWQpXG4iLCAKLQkgICBl
cnIpOwotICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfZmFpbDsKLSAgfQotCi0KLSAgLyogCi0g
ICAqIHNldCBrZXlzIHRvIGtub3duIHZhbHVlcyBmb3IgdGVzdGluZwotICAgKi8KLSAgcHJvZmls
ZSA9IHNydHBfcHJvZmlsZV9hZXMxMjhfY21fc2hhMV84MDsKLSAga2V5X2xlbiA9IHNydHBfcHJv
ZmlsZV9nZXRfbWFzdGVyX2tleV9sZW5ndGgocHJvZmlsZSk7Ci0gIHNhbHRfbGVuID0gc3J0cF9w
cm9maWxlX2dldF9tYXN0ZXJfc2FsdF9sZW5ndGgocHJvZmlsZSk7Ci0gIG1lbXNldChrZXksIDB4
ZmYsIGtleV9sZW4pOwotICBtZW1zZXQoc2FsdCwgMHhlZSwgc2FsdF9sZW4pOwotICBzcnRwX2Fw
cGVuZF9zYWx0X3RvX2tleShrZXksIGtleV9sZW4sIHNhbHQsIHNhbHRfbGVuKTsKLSAgcG9saWN5
LmtleSA9IGtleTsKLQotICAvKiBpbml0aWFsaXplIFNSVFAgcG9saWN5IGZyb20gcHJvZmlsZSAg
Ki8KLSAgZXJyID0gc3J0cF9jcnlwdG9fcG9saWN5X3NldF9mcm9tX3Byb2ZpbGVfZm9yX3J0cCgm
cG9saWN5LnJ0cCwgcHJvZmlsZSk7Ci0gIGlmIChlcnIpIHJldHVybiBlcnI7Ci0gIGVyciA9IHNy
dHBfY3J5cHRvX3BvbGljeV9zZXRfZnJvbV9wcm9maWxlX2Zvcl9ydGNwKCZwb2xpY3kucnRjcCwg
cHJvZmlsZSk7Ci0gIGlmIChlcnIpIHJldHVybiBlcnI7Ci0gIHBvbGljeS5zc3JjLnR5cGUgID0g
c3NyY19hbnlfaW5ib3VuZDsKLSAgcG9saWN5LmVrdCA9IE5VTEw7Ci0gIHBvbGljeS53aW5kb3df
c2l6ZSA9IDEyODsKLSAgcG9saWN5LmFsbG93X3JlcGVhdF90eCA9IDA7Ci0gIHBvbGljeS5uZXh0
ID0gTlVMTDsKLSAgICAKLSAgZXJyID0gc3J0cF9hZGRfc3RyZWFtKHMsICZwb2xpY3kpOwotICBp
ZiAoZXJyKQotICAgIHJldHVybiBlcnI7Ci0gIAotICBlcnIgPSBzcnRwX2RlYWxsb2Mocyk7Ci0g
IGlmIChlcnIpCi0gICAgcmV0dXJuIGVycjsKLQotICBmcmVlKHRlc3RfcGFja2V0KTsKLQotICBy
ZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwotfQorICAgIG1lbXNldCgmcG9saWN5LCAweDAsIHNp
emVvZihzcnRwX3BvbGljeV90KSk7CiAKKyAgICAvKiBjcmVhdGUgYSAnbnVsbCcgU1JUUCBzZXNz
aW9uICovCisgICAgZXJyID0gc3J0cF9jcmVhdGUoJnMsIE5VTEwpOworICAgIGlmIChlcnIpCisg
ICAgICAgIHJldHVybiBlcnI7CiAKKyAgICAvKgorICAgICAqIHZlcmlmeSB0aGF0IHBhY2tldC1w
cm9jZXNzaW5nIGZ1bmN0aW9ucyBiZWhhdmUgcHJvcGVybHkgLSB3ZQorICAgICAqIGV4cGVjdCB0
aGF0IHRoZXNlIGZ1bmN0aW9ucyB3aWxsIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfbm9fY3R4Cisg
ICAgICovCisgICAgdGVzdF9wYWNrZXQgPSBzcnRwX2NyZWF0ZV90ZXN0X3BhY2tldCg4MCwgMHhh
NWE1YTVhNSk7CisgICAgaWYgKHRlc3RfcGFja2V0ID09IE5VTEwpCisgICAgICAgIHJldHVybiBz
cnRwX2Vycl9zdGF0dXNfYWxsb2NfZmFpbDsKKworICAgIGVyciA9IHNydHBfcHJvdGVjdChzLCB0
ZXN0X3BhY2tldCwgJnRlc3RfcGFja2V0X2xlbik7CisgICAgaWYgKGVyciAhPSBzcnRwX2Vycl9z
dGF0dXNfbm9fY3R4KSB7CisgICAgICAgIHByaW50Zigid3JvbmcgcmV0dXJuIHZhbHVlIGZyb20g
c3J0cF9wcm90ZWN0KCkgKGdvdCBjb2RlICVkKVxuIiwgZXJyKTsKKyAgICAgICAgcmV0dXJuIHNy
dHBfZXJyX3N0YXR1c19mYWlsOworICAgIH0KKworICAgIGVyciA9IHNydHBfdW5wcm90ZWN0KHMs
IHRlc3RfcGFja2V0LCAmdGVzdF9wYWNrZXRfbGVuKTsKKyAgICBpZiAoZXJyICE9IHNydHBfZXJy
X3N0YXR1c19ub19jdHgpIHsKKyAgICAgICAgcHJpbnRmKCJ3cm9uZyByZXR1cm4gdmFsdWUgZnJv
bSBzcnRwX3VucHJvdGVjdCgpIChnb3QgY29kZSAlZClcbiIsIGVycik7CisgICAgICAgIHJldHVy
biBzcnRwX2Vycl9zdGF0dXNfZmFpbDsKKyAgICB9CisKKyAgICBlcnIgPSBzcnRwX3Byb3RlY3Rf
cnRjcChzLCB0ZXN0X3BhY2tldCwgJnRlc3RfcGFja2V0X2xlbik7CisgICAgaWYgKGVyciAhPSBz
cnRwX2Vycl9zdGF0dXNfbm9fY3R4KSB7CisgICAgICAgIHByaW50Zigid3JvbmcgcmV0dXJuIHZh
bHVlIGZyb20gc3J0cF9wcm90ZWN0X3J0Y3AoKSAoZ290IGNvZGUgJWQpXG4iLAorICAgICAgICAg
ICAgICAgZXJyKTsKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19mYWlsOworICAgIH0K
KworICAgIGVyciA9IHNydHBfdW5wcm90ZWN0X3J0Y3AocywgdGVzdF9wYWNrZXQsICZ0ZXN0X3Bh
Y2tldF9sZW4pOworICAgIGlmIChlcnIgIT0gc3J0cF9lcnJfc3RhdHVzX25vX2N0eCkgeworICAg
ICAgICBwcmludGYoIndyb25nIHJldHVybiB2YWx1ZSBmcm9tIHNydHBfdW5wcm90ZWN0X3J0Y3Ao
KSAoZ290IGNvZGUgJWQpXG4iLAorICAgICAgICAgICAgICAgZXJyKTsKKyAgICAgICAgcmV0dXJu
IHNydHBfZXJyX3N0YXR1c19mYWlsOworICAgIH0KKworICAgIC8qCisgICAgICogc2V0IGtleXMg
dG8ga25vd24gdmFsdWVzIGZvciB0ZXN0aW5nCisgICAgICovCisgICAgcHJvZmlsZSA9IHNydHBf
cHJvZmlsZV9hZXMxMjhfY21fc2hhMV84MDsKKyAgICBrZXlfbGVuID0gc3J0cF9wcm9maWxlX2dl
dF9tYXN0ZXJfa2V5X2xlbmd0aChwcm9maWxlKTsKKyAgICBzYWx0X2xlbiA9IHNydHBfcHJvZmls
ZV9nZXRfbWFzdGVyX3NhbHRfbGVuZ3RoKHByb2ZpbGUpOworICAgIG1lbXNldChrZXksIDB4ZmYs
IGtleV9sZW4pOworICAgIG1lbXNldChzYWx0LCAweGVlLCBzYWx0X2xlbik7CisgICAgc3J0cF9h
cHBlbmRfc2FsdF90b19rZXkoa2V5LCBrZXlfbGVuLCBzYWx0LCBzYWx0X2xlbik7CisgICAgcG9s
aWN5LmtleSA9IGtleTsKKworICAgIC8qIGluaXRpYWxpemUgU1JUUCBwb2xpY3kgZnJvbSBwcm9m
aWxlICAqLworICAgIGVyciA9IHNydHBfY3J5cHRvX3BvbGljeV9zZXRfZnJvbV9wcm9maWxlX2Zv
cl9ydHAoJnBvbGljeS5ydHAsIHByb2ZpbGUpOworICAgIGlmIChlcnIpCisgICAgICAgIHJldHVy
biBlcnI7CisgICAgZXJyID0gc3J0cF9jcnlwdG9fcG9saWN5X3NldF9mcm9tX3Byb2ZpbGVfZm9y
X3J0Y3AoJnBvbGljeS5ydGNwLCBwcm9maWxlKTsKKyAgICBpZiAoZXJyKQorICAgICAgICByZXR1
cm4gZXJyOworICAgIHBvbGljeS5zc3JjLnR5cGUgPSBzc3JjX2FueV9pbmJvdW5kOworICAgIHBv
bGljeS5la3QgPSBOVUxMOworICAgIHBvbGljeS53aW5kb3dfc2l6ZSA9IDEyODsKKyAgICBwb2xp
Y3kuYWxsb3dfcmVwZWF0X3R4ID0gMDsKKyAgICBwb2xpY3kubmV4dCA9IE5VTEw7CisKKyAgICBl
cnIgPSBzcnRwX2FkZF9zdHJlYW0ocywgJnBvbGljeSk7CisgICAgaWYgKGVycikKKyAgICAgICAg
cmV0dXJuIGVycjsKKworICAgIGVyciA9IHNydHBfZGVhbGxvYyhzKTsKKyAgICBpZiAoZXJyKQor
ICAgICAgICByZXR1cm4gZXJyOworCisgICAgZnJlZSh0ZXN0X3BhY2tldCk7CisKKyAgICByZXR1
cm4gc3J0cF9lcnJfc3RhdHVzX29rOworfQogCiAvKgogICogc3J0cF9jcmVhdGVfdGVzdF9wYWNr
ZXQobGVuLCBzc3JjKSByZXR1cm5zIGEgcG9pbnRlciB0byBhCkBAIC0yMjUsMzkgKzIyNCwzOCBA
QCB0ZXN0X2R0bHNfc3J0cCh2b2lkKSB7CiAgKiBkZWFsbG9jYXRlZCB3aXRoIHRoZSBmcmVlKCkg
Y2FsbCBvbmNlIGl0IGlzIG5vIGxvbmdlciBuZWVkZWQuCiAgKi8KIAotc3J0cF9oZHJfdCAqCi1z
cnRwX2NyZWF0ZV90ZXN0X3BhY2tldChpbnQgcGt0X29jdGV0X2xlbiwgdWludDMyX3Qgc3NyYykg
ewotICBpbnQgaTsKLSAgdWludDhfdCAqYnVmZmVyOwotICBzcnRwX2hkcl90ICpoZHI7Ci0gIGlu
dCBieXRlc19pbl9oZHIgPSAxMjsKLQotICAvKiBhbGxvY2F0ZSBtZW1vcnkgZm9yIHRlc3QgcGFj
a2V0ICovCi0gIGhkciA9IG1hbGxvYyhwa3Rfb2N0ZXRfbGVuICsgYnl0ZXNfaW5faGRyCi0JICAg
ICAgICsgU1JUUF9NQVhfVFJBSUxFUl9MRU4gKyA0KTsKLSAgaWYgKCFoZHIpCi0gICAgcmV0dXJu
IE5VTEw7Ci0gIAotICBoZHItPnZlcnNpb24gPSAyOyAgICAgICAgICAgICAgLyogUlRQIHZlcnNp
b24gdHdvICAgICAqLwotICBoZHItPnAgICAgPSAwOyAgICAgICAgICAgICAgICAgLyogbm8gcGFk
ZGluZyBuZWVkZWQgICAqLwotICBoZHItPnggICAgPSAwOyAgICAgICAgICAgICAgICAgLyogbm8g
aGVhZGVyIGV4dGVuc2lvbiAqLwotICBoZHItPmNjICAgPSAwOyAgICAgICAgICAgICAgICAgLyog
bm8gQ1NSQ3MgICAgICAgICAgICAqLwotICBoZHItPm0gICAgPSAwOyAgICAgICAgICAgICAgICAg
LyogbWFya2VyIGJpdCAgICAgICAgICAqLwotICBoZHItPnB0ICAgPSAweGY7ICAgICAgICAgICAg
ICAgLyogcGF5bG9hZCB0eXBlICAgICAgICAqLwotICBoZHItPnNlcSAgPSBodG9ucygweDEyMzQp
OyAgICAgLyogc2VxdWVuY2UgbnVtYmVyICAgICAqLwotICBoZHItPnRzICAgPSBodG9ubCgweGRl
Y2FmYmFkKTsgLyogdGltZXN0YW1wICAgICAgICAgICAqLwotICBoZHItPnNzcmMgPSBodG9ubChz
c3JjKTsgICAgICAgLyogc3luY2guIHNvdXJjZSAgICAgICAqLwotCi0gIGJ1ZmZlciA9ICh1aW50
OF90ICopaGRyOwotICBidWZmZXIgKz0gYnl0ZXNfaW5faGRyOwotCi0gIC8qIHNldCBSVFAgZGF0
YSB0byAweGFiICovCi0gIGZvciAoaT0wOyBpIDwgcGt0X29jdGV0X2xlbjsgaSsrKQotICAgICpi
dWZmZXIrKyA9IDB4YWI7Ci0KLSAgLyogc2V0IHBvc3QtZGF0YSB2YWx1ZSB0byAweGZmZmYgdG8g
ZW5hYmxlIG92ZXJydW4gY2hlY2tpbmcgKi8KLSAgZm9yIChpPTA7IGkgPCBTUlRQX01BWF9UUkFJ
TEVSX0xFTis0OyBpKyspCi0gICAgKmJ1ZmZlcisrID0gMHhmZjsKLQotICByZXR1cm4gaGRyOwor
c3J0cF9oZHJfdCAqc3J0cF9jcmVhdGVfdGVzdF9wYWNrZXQoaW50IHBrdF9vY3RldF9sZW4sIHVp
bnQzMl90IHNzcmMpCit7CisgICAgaW50IGk7CisgICAgdWludDhfdCAqYnVmZmVyOworICAgIHNy
dHBfaGRyX3QgKmhkcjsKKyAgICBpbnQgYnl0ZXNfaW5faGRyID0gMTI7CisKKyAgICAvKiBhbGxv
Y2F0ZSBtZW1vcnkgZm9yIHRlc3QgcGFja2V0ICovCisgICAgaGRyID0gbWFsbG9jKHBrdF9vY3Rl
dF9sZW4gKyBieXRlc19pbl9oZHIgKyBTUlRQX01BWF9UUkFJTEVSX0xFTiArIDQpOworICAgIGlm
ICghaGRyKQorICAgICAgICByZXR1cm4gTlVMTDsKKworICAgIGhkci0+dmVyc2lvbiA9IDI7ICAg
ICAgICAgICAgLyogUlRQIHZlcnNpb24gdHdvICAgICAqLworICAgIGhkci0+cCA9IDA7ICAgICAg
ICAgICAgICAgICAgLyogbm8gcGFkZGluZyBuZWVkZWQgICAqLworICAgIGhkci0+eCA9IDA7ICAg
ICAgICAgICAgICAgICAgLyogbm8gaGVhZGVyIGV4dGVuc2lvbiAqLworICAgIGhkci0+Y2MgPSAw
OyAgICAgICAgICAgICAgICAgLyogbm8gQ1NSQ3MgICAgICAgICAgICAqLworICAgIGhkci0+bSA9
IDA7ICAgICAgICAgICAgICAgICAgLyogbWFya2VyIGJpdCAgICAgICAgICAqLworICAgIGhkci0+
cHQgPSAweGY7ICAgICAgICAgICAgICAgLyogcGF5bG9hZCB0eXBlICAgICAgICAqLworICAgIGhk
ci0+c2VxID0gaHRvbnMoMHgxMjM0KTsgICAgLyogc2VxdWVuY2UgbnVtYmVyICAgICAqLworICAg
IGhkci0+dHMgPSBodG9ubCgweGRlY2FmYmFkKTsgLyogdGltZXN0YW1wICAgICAgICAgICAqLwor
ICAgIGhkci0+c3NyYyA9IGh0b25sKHNzcmMpOyAgICAgLyogc3luY2guIHNvdXJjZSAgICAgICAq
LworCisgICAgYnVmZmVyID0gKHVpbnQ4X3QgKiloZHI7CisgICAgYnVmZmVyICs9IGJ5dGVzX2lu
X2hkcjsKKworICAgIC8qIHNldCBSVFAgZGF0YSB0byAweGFiICovCisgICAgZm9yIChpID0gMDsg
aSA8IHBrdF9vY3RldF9sZW47IGkrKykKKyAgICAgICAgKmJ1ZmZlcisrID0gMHhhYjsKKworICAg
IC8qIHNldCBwb3N0LWRhdGEgdmFsdWUgdG8gMHhmZmZmIHRvIGVuYWJsZSBvdmVycnVuIGNoZWNr
aW5nICovCisgICAgZm9yIChpID0gMDsgaSA8IFNSVFBfTUFYX1RSQUlMRVJfTEVOICsgNDsgaSsr
KQorICAgICAgICAqYnVmZmVyKysgPSAweGZmOworCisgICAgcmV0dXJuIGhkcjsKIH0KZGlmZiAt
LWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGli
c3J0cC90ZXN0L2dldG9wdF9zLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnNydHAvdGVzdC9nZXRvcHRfcy5jCmluZGV4IDM1ZTg4NzFmOWY3MzUw
MTRhZjE1YjIxNjFkZDAwN2IzZjU4ODViYTMuLmFiNjMxODc4YTQwNTBhMTU2NzIzMGM2MGUwODZh
Y2M5YTk5MTU2NzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3Vy
Y2UvdGhpcmRfcGFydHkvbGlic3J0cC90ZXN0L2dldG9wdF9zLmMKKysrIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL3Rlc3QvZ2V0b3B0X3Mu
YwpAQCAtMywzMCArMywzMCBAQAogICoKICAqIGEgbWluaW1hbCBpbXBsZW1lbnRhdGlvbiBvZiB0
aGUgZ2V0b3B0KCkgZnVuY3Rpb24sIHdyaXR0ZW4gc28gdGhhdAogICogdGVzdCBhcHBsaWNhdGlv
bnMgdGhhdCB1c2UgdGhhdCBmdW5jdGlvbiBjYW4gcnVuIG9uIG5vbi1QT1NJWAotICogcGxhdGZv
cm1zIAorICogcGxhdGZvcm1zCiAgKgogICovCiAvKgotICoJCisgKgogICogQ29weXJpZ2h0IChj
KSAyMDAxLTIwMTcgQ2lzY28gU3lzdGVtcywgSW5jLgogICogQWxsIHJpZ2h0cyByZXNlcnZlZC4K
LSAqIAorICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkg
Zm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCiAgKiBhcmUgbWV0OgotICogCisg
KgogICogICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFi
b3ZlIGNvcHlyaWdodAogICogICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAKKyAqCiAgKiAgIFJlZGlzdHJpYnV0aW9ucyBp
biBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKICAqICAgY29weXJpZ2h0IG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKICAqICAgZGlz
Y2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3Zp
ZGVkCiAgKiAgIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqIAorICoKICAqICAgTmVpdGhlciB0
aGUgbmFtZSBvZiB0aGUgQ2lzY28gU3lzdGVtcywgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwog
ICogICBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1
Y3RzIGRlcml2ZWQKICAqICAgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJp
b3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotICogCisgKgogICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwogICogIkFTIElT
IiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QKICAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklM
SVRZIEFORCBGSVRORVNTCkBAIC00Miw3MSArNDIsNjcgQEAKICAqCiAgKi8KIAotI2luY2x1ZGUg
PHN0ZGxpYi5oPiAgLyogZm9yIE5VTEwgKi8KKyNpbmNsdWRlIDxzdGRsaWIuaD4gLyogZm9yIE5V
TEwgKi8KIAogaW50IG9wdGluZF9zID0gMDsKIAogY2hhciAqb3B0YXJnX3M7CiAKLSNkZWZpbmUg
R0VUT1BUX0ZPVU5EX1dJVEhPVVRfQVJHVU1FTlQgICAgMgotI2RlZmluZSBHRVRPUFRfRk9VTkRf
V0lUSF9BUkdVTUVOVCAgICAgICAxCi0jZGVmaW5lIEdFVE9QVF9OT1RfRk9VTkQgICAgICAgICAg
ICAgICAgIDAgCisjZGVmaW5lIEdFVE9QVF9GT1VORF9XSVRIT1VUX0FSR1VNRU5UIDIKKyNkZWZp
bmUgR0VUT1BUX0ZPVU5EX1dJVEhfQVJHVU1FTlQgMQorI2RlZmluZSBHRVRPUFRfTk9UX0ZPVU5E
IDAKIAotc3RhdGljIGludCAKLWdldG9wdF9jaGVja19jaGFyYWN0ZXIoY2hhciBjLCBjb25zdCBj
aGFyICpzdHJpbmcpIHsKLSAgdW5zaWduZWQgaW50IG1heF9zdHJpbmdfbGVuID0gMTI4Oworc3Rh
dGljIGludCBnZXRvcHRfY2hlY2tfY2hhcmFjdGVyKGNoYXIgYywgY29uc3QgY2hhciAqc3RyaW5n
KQoreworICAgIHVuc2lnbmVkIGludCBtYXhfc3RyaW5nX2xlbiA9IDEyODsKIAotICB3aGlsZSAo
KnN0cmluZyAhPSAwKSB7Ci0gICAgaWYgKG1heF9zdHJpbmdfbGVuID09IDApIHsKLSAgICAgIHJl
dHVybiAnPyc7CisgICAgd2hpbGUgKCpzdHJpbmcgIT0gMCkgeworICAgICAgICBpZiAobWF4X3N0
cmluZ19sZW4gPT0gMCkgeworICAgICAgICAgICAgcmV0dXJuICc/JzsKKyAgICAgICAgfQorICAg
ICAgICBpZiAoKnN0cmluZysrID09IGMpIHsKKyAgICAgICAgICAgIGlmICgqc3RyaW5nID09ICc6
JykgeworICAgICAgICAgICAgICAgIHJldHVybiBHRVRPUFRfRk9VTkRfV0lUSF9BUkdVTUVOVDsK
KyAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgcmV0dXJuIEdFVE9QVF9GT1VO
RF9XSVRIT1VUX0FSR1VNRU5UOworICAgICAgICAgICAgfQorICAgICAgICB9CiAgICAgfQotICAg
IGlmICgqc3RyaW5nKysgPT0gYykgewotICAgICAgaWYgKCpzdHJpbmcgPT0gJzonKSB7Ci0JcmV0
dXJuIEdFVE9QVF9GT1VORF9XSVRIX0FSR1VNRU5UOwotICAgICAgfSBlbHNlIHsKLQlyZXR1cm4g
R0VUT1BUX0ZPVU5EX1dJVEhPVVRfQVJHVU1FTlQ7Ci0gICAgICB9Ci0gICAgfQotICB9Ci0gIHJl
dHVybiBHRVRPUFRfTk9UX0ZPVU5EOworICAgIHJldHVybiBHRVRPUFRfTk9UX0ZPVU5EOwogfQog
Ci1pbnQKLWdldG9wdF9zKGludCBhcmdjLCAKLSAgICAgICBjaGFyICogY29uc3QgYXJndltdLCAK
LSAgICAgICBjb25zdCBjaGFyICpvcHRzdHJpbmcpIHsKLQoraW50IGdldG9wdF9zKGludCBhcmdj
LCBjaGFyICpjb25zdCBhcmd2W10sIGNvbnN0IGNoYXIgKm9wdHN0cmluZykKK3sKKyAgICB3aGls
ZSAob3B0aW5kX3MgKyAxIDwgYXJnYykgeworICAgICAgICBjaGFyICpzdHJpbmc7CiAKLSAgd2hp
bGUgKG9wdGluZF9zICsgMSA8IGFyZ2MpIHsKLSAgICBjaGFyICpzdHJpbmc7Ci0gICAgCi0gICAg
LyogbW92ZSAnc3RyaW5nJyBvbiB0byBuZXh0IGFyZ3VtZW50ICovCi0gICAgb3B0aW5kX3MrKzsK
LSAgICBzdHJpbmcgPSBhcmd2W29wdGluZF9zXTsKKyAgICAgICAgLyogbW92ZSAnc3RyaW5nJyBv
biB0byBuZXh0IGFyZ3VtZW50ICovCisgICAgICAgIG9wdGluZF9zKys7CisgICAgICAgIHN0cmlu
ZyA9IGFyZ3Zbb3B0aW5kX3NdOwogCi0gICAgaWYgKHN0cmluZyA9PSBOVUxMKQotICAgICAgcmV0
dXJuICc/JzsgLyogTlVMTCBhcmd1bWVudCBzdHJpbmcgKi8KKyAgICAgICAgaWYgKHN0cmluZyA9
PSBOVUxMKQorICAgICAgICAgICAgcmV0dXJuICc/JzsgLyogTlVMTCBhcmd1bWVudCBzdHJpbmcg
Ki8KIAotICAgIGlmIChzdHJpbmdbMF0gIT0gJy0nKQotICAgICAgcmV0dXJuIC0xOyAvKiBmb3Vu
ZCBhbiB1bmV4cGVjdGVkIGNoYXJhY3RlciAqLworICAgICAgICBpZiAoc3RyaW5nWzBdICE9ICct
JykKKyAgICAgICAgICAgIHJldHVybiAtMTsgLyogZm91bmQgYW4gdW5leHBlY3RlZCBjaGFyYWN0
ZXIgKi8KIAotICAgIHN3aXRjaChnZXRvcHRfY2hlY2tfY2hhcmFjdGVyKHN0cmluZ1sxXSwgb3B0
c3RyaW5nKSkgewotICAgIGNhc2UgR0VUT1BUX0ZPVU5EX1dJVEhfQVJHVU1FTlQ6Ci0gICAgICBp
ZiAob3B0aW5kX3MgKyAxIDwgYXJnYykgewotCW9wdGluZF9zKys7Ci0Jb3B0YXJnX3MgPSBhcmd2
W29wdGluZF9zXTsKLQlyZXR1cm4gc3RyaW5nWzFdOyAKLSAgICAgIH0gZWxzZSB7Ci0JcmV0dXJu
ICc/JzsgIC8qIGFyZ3VtZW50IG1pc3NpbmcgKi8KLSAgICAgIH0KLSAgICBjYXNlIEdFVE9QVF9G
T1VORF9XSVRIT1VUX0FSR1VNRU5UOgotICAgICAgcmV0dXJuIHN0cmluZ1sxXTsKLSAgICBjYXNl
IEdFVE9QVF9OT1RfRk9VTkQ6Ci0gICAgZGVmYXVsdDoKLSAgICAgIHJldHVybiAnPyc7IC8qIGRp
ZG4ndCBmaW5kIGV4cGVjdGVkIGNoYXJhY3RlciAqLwotICAgICAgYnJlYWs7CisgICAgICAgIHN3
aXRjaCAoZ2V0b3B0X2NoZWNrX2NoYXJhY3RlcihzdHJpbmdbMV0sIG9wdHN0cmluZykpIHsKKyAg
ICAgICAgY2FzZSBHRVRPUFRfRk9VTkRfV0lUSF9BUkdVTUVOVDoKKyAgICAgICAgICAgIGlmIChv
cHRpbmRfcyArIDEgPCBhcmdjKSB7CisgICAgICAgICAgICAgICAgb3B0aW5kX3MrKzsKKyAgICAg
ICAgICAgICAgICBvcHRhcmdfcyA9IGFyZ3Zbb3B0aW5kX3NdOworICAgICAgICAgICAgICAgIHJl
dHVybiBzdHJpbmdbMV07CisgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgIHJl
dHVybiAnPyc7IC8qIGFyZ3VtZW50IG1pc3NpbmcgKi8KKyAgICAgICAgICAgIH0KKyAgICAgICAg
Y2FzZSBHRVRPUFRfRk9VTkRfV0lUSE9VVF9BUkdVTUVOVDoKKyAgICAgICAgICAgIHJldHVybiBz
dHJpbmdbMV07CisgICAgICAgIGNhc2UgR0VUT1BUX05PVF9GT1VORDoKKyAgICAgICAgZGVmYXVs
dDoKKyAgICAgICAgICAgIHJldHVybiAnPyc7IC8qIGRpZG4ndCBmaW5kIGV4cGVjdGVkIGNoYXJh
Y3RlciAqLworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KICAgICB9Ci0gIH0KIAotICBy
ZXR1cm4gLTE7CisgICAgcmV0dXJuIC0xOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL3Rlc3QvcmRieF9kcml2ZXIu
YyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0
cC90ZXN0L3JkYnhfZHJpdmVyLmMKaW5kZXggOGVjYmY5ZjQ5YmZiZjgyOGExMmFhYmVmY2U2ZmQ3
M2RhMWE3OGZjMy4uNjA5Y2U5YzhlNDhhMjc1Y2MxOTliM2ExZThkYWI0Yjg5MGE5YWI3ZCAxMDA2
NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9s
aWJzcnRwL3Rlc3QvcmRieF9kcml2ZXIuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJy
dGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvdGVzdC9yZGJ4X2RyaXZlci5jCkBAIC02LDI4
ICs2LDI3IEBACiAgKiBEYXZpZCBBLiBNY0dyZXcKICAqIENpc2NvIFN5c3RlbXMsIEluYy4KICAq
LwotCiAvKgotICoJCisgKgogICogQ29weXJpZ2h0IChjKSAyMDAxLTIwMTcsIENpc2NvIFN5c3Rl
bXMsIEluYy4KICAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKiAKKyAqCiAgKiBSZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQK
ICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dp
bmcgY29uZGl0aW9ucwogICogYXJlIG1ldDoKLSAqIAorICoKICAqICAgUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKICAqICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgotICogCisgKgogICogICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXBy
b2R1Y2UgdGhlIGFib3ZlCiAgKiAgIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCiAgKiAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZAogICogICB3aXRoIHRoZSBkaXN0
cmlidXRpb24uCi0gKiAKKyAqCiAgKiAgIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIENpc2NvIFN5
c3RlbXMsIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKICAqICAgY29udHJpYnV0b3JzIG1heSBi
ZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkCiAgKiAgIGZyb20g
dGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4K
LSAqIAorICoKICAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBI
T0xERVJTIEFORCBDT05UUklCVVRPUlMKICAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElN
UExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCiAgKiBMSU1JVEVEIFRPLCBUSEUg
SU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUwpAQCAtNDQs
NyArNDMsNyBAQAogICovCiAKICNpZmRlZiBIQVZFX0NPTkZJR19ICi0gICAgI2luY2x1ZGUgPGNv
bmZpZy5oPgorI2luY2x1ZGUgPGNvbmZpZy5oPgogI2VuZGlmCiAKICNpbmNsdWRlIDxzdGRpby5o
PiAgICAvKiBmb3IgcHJpbnRmKCkgICAgICAgICAgKi8KQEAgLTU4LDg5ICs1Nyw4NCBAQAogCiAj
aW5jbHVkZSAidXRfc2ltLmgiCiAKLXNydHBfZXJyX3N0YXR1c190IAotdGVzdF9yZXBsYXlfZGJ4
KGludCBudW1fdHJpYWxzLCB1bnNpZ25lZCBsb25nIHdzKTsKK3NydHBfZXJyX3N0YXR1c190IHRl
c3RfcmVwbGF5X2RieChpbnQgbnVtX3RyaWFscywgdW5zaWduZWQgbG9uZyB3cyk7CiAKLWRvdWJs
ZQotcmRieF9jaGVja19hZGRzX3Blcl9zZWNvbmQoaW50IG51bV90cmlhbHMsIHVuc2lnbmVkIGxv
bmcgd3MpOworZG91YmxlIHJkYnhfY2hlY2tfYWRkc19wZXJfc2Vjb25kKGludCBudW1fdHJpYWxz
LCB1bnNpZ25lZCBsb25nIHdzKTsKIAotdm9pZAotdXNhZ2UoY2hhciAqcHJvZ19uYW1lKSB7Ci0g
IHByaW50ZigidXNhZ2U6ICVzIFsgLXQgfCAtdiBdXG4iLCBwcm9nX25hbWUpOwotICBleGl0KDI1
NSk7Cit2b2lkIHVzYWdlKGNoYXIgKnByb2dfbmFtZSkKK3sKKyAgICBwcmludGYoInVzYWdlOiAl
cyBbIC10IHwgLXYgXVxuIiwgcHJvZ19uYW1lKTsKKyAgICBleGl0KDI1NSk7CiB9CiAKLWludAot
bWFpbiAoaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkgewotICBkb3VibGUgcmF0ZTsKLSAgc3J0cF9l
cnJfc3RhdHVzX3Qgc3RhdHVzOwotICBpbnQgcTsKLSAgdW5zaWduZWQgZG9fdGltaW5nX3Rlc3Qg
PSAwOwotICB1bnNpZ25lZCBkb192YWxpZGF0aW9uID0gMDsKLQotICAvKiBwcm9jZXNzIGlucHV0
IGFyZ3VtZW50cyAqLwotICB3aGlsZSAoMSkgewotICAgIHEgPSBnZXRvcHRfcyhhcmdjLCBhcmd2
LCAidHYiKTsKLSAgICBpZiAocSA9PSAtMSkgCi0gICAgICBicmVhazsKLSAgICBzd2l0Y2ggKHEp
IHsKLSAgICBjYXNlICd0JzoKLSAgICAgIGRvX3RpbWluZ190ZXN0ID0gMTsKLSAgICAgIGJyZWFr
OwotICAgIGNhc2UgJ3YnOgotICAgICAgZG9fdmFsaWRhdGlvbiA9IDE7Ci0gICAgICBicmVhazsK
LSAgICBkZWZhdWx0OgotICAgICAgdXNhZ2UoYXJndlswXSk7Ci0gICAgfSAgICAKLSAgfQotCi0g
IHByaW50ZigicmRieCAocmVwbGF5IGRhdGFiYXNlIHcvIGV4dGVuZGVkIHJhbmdlKSB0ZXN0IGRy
aXZlclxuIgotCSAiRGF2aWQgQS4gTWNHcmV3XG4iCi0JICJDaXNjbyBTeXN0ZW1zLCBJbmMuXG4i
KTsKLQotICBpZiAoIWRvX3ZhbGlkYXRpb24gJiYgIWRvX3RpbWluZ190ZXN0KQotICAgIHVzYWdl
KGFyZ3ZbMF0pOwotCi0gIGlmIChkb192YWxpZGF0aW9uKSB7Ci0gICAgcHJpbnRmKCJ0ZXN0aW5n
IHNydHBfcmRieF90ICh3cz0xMjgpLi4uXG4iKTsKLQotICAgIHN0YXR1cyA9IHRlc3RfcmVwbGF5
X2RieCgxIDw8IDEyLCAxMjgpOwotICAgIGlmIChzdGF0dXMpIHsKLSAgICAgIHByaW50ZigiZmFp
bGVkXG4iKTsKLSAgICAgIGV4aXQoMSk7CitpbnQgbWFpbihpbnQgYXJnYywgY2hhciAqYXJndltd
KQoreworICAgIGRvdWJsZSByYXRlOworICAgIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKKyAg
ICBpbnQgcTsKKyAgICB1bnNpZ25lZCBkb190aW1pbmdfdGVzdCA9IDA7CisgICAgdW5zaWduZWQg
ZG9fdmFsaWRhdGlvbiA9IDA7CisKKyAgICAvKiBwcm9jZXNzIGlucHV0IGFyZ3VtZW50cyAqLwor
ICAgIHdoaWxlICgxKSB7CisgICAgICAgIHEgPSBnZXRvcHRfcyhhcmdjLCBhcmd2LCAidHYiKTsK
KyAgICAgICAgaWYgKHEgPT0gLTEpCisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgc3dpdGNo
IChxKSB7CisgICAgICAgIGNhc2UgJ3QnOgorICAgICAgICAgICAgZG9fdGltaW5nX3Rlc3QgPSAx
OworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgJ3YnOgorICAgICAgICAgICAgZG9f
dmFsaWRhdGlvbiA9IDE7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVsdDoKKyAg
ICAgICAgICAgIHVzYWdlKGFyZ3ZbMF0pOworICAgICAgICB9CiAgICAgfQotICAgIHByaW50Zigi
cGFzc2VkXG4iKTsKIAotICAgIHByaW50ZigidGVzdGluZyBzcnRwX3JkYnhfdCAod3M9MTAyNCku
Li5cbiIpOworICAgIHByaW50ZigicmRieCAocmVwbGF5IGRhdGFiYXNlIHcvIGV4dGVuZGVkIHJh
bmdlKSB0ZXN0IGRyaXZlclxuIgorICAgICAgICAgICAiRGF2aWQgQS4gTWNHcmV3XG4iCisgICAg
ICAgICAgICJDaXNjbyBTeXN0ZW1zLCBJbmMuXG4iKTsKIAotICAgIHN0YXR1cyA9IHRlc3RfcmVw
bGF5X2RieCgxIDw8IDEyLCAxMDI0KTsKLSAgICBpZiAoc3RhdHVzKSB7Ci0gICAgICBwcmludGYo
ImZhaWxlZFxuIik7Ci0gICAgICBleGl0KDEpOworICAgIGlmICghZG9fdmFsaWRhdGlvbiAmJiAh
ZG9fdGltaW5nX3Rlc3QpCisgICAgICAgIHVzYWdlKGFyZ3ZbMF0pOworCisgICAgaWYgKGRvX3Zh
bGlkYXRpb24pIHsKKyAgICAgICAgcHJpbnRmKCJ0ZXN0aW5nIHNydHBfcmRieF90ICh3cz0xMjgp
Li4uXG4iKTsKKworICAgICAgICBzdGF0dXMgPSB0ZXN0X3JlcGxheV9kYngoMSA8PCAxMiwgMTI4
KTsKKyAgICAgICAgaWYgKHN0YXR1cykgeworICAgICAgICAgICAgcHJpbnRmKCJmYWlsZWRcbiIp
OworICAgICAgICAgICAgZXhpdCgxKTsKKyAgICAgICAgfQorICAgICAgICBwcmludGYoInBhc3Nl
ZFxuIik7CisKKyAgICAgICAgcHJpbnRmKCJ0ZXN0aW5nIHNydHBfcmRieF90ICh3cz0xMDI0KS4u
LlxuIik7CisKKyAgICAgICAgc3RhdHVzID0gdGVzdF9yZXBsYXlfZGJ4KDEgPDwgMTIsIDEwMjQp
OworICAgICAgICBpZiAoc3RhdHVzKSB7CisgICAgICAgICAgICBwcmludGYoImZhaWxlZFxuIik7
CisgICAgICAgICAgICBleGl0KDEpOworICAgICAgICB9CisgICAgICAgIHByaW50ZigicGFzc2Vk
XG4iKTsKICAgICB9Ci0gICAgcHJpbnRmKCJwYXNzZWRcbiIpOwotICB9Ci0KLSAgaWYgKGRvX3Rp
bWluZ190ZXN0KSB7Ci0gICAgcmF0ZSA9IHJkYnhfY2hlY2tfYWRkc19wZXJfc2Vjb25kKDEgPDwg
MTgsIDEyOCk7Ci0gICAgcHJpbnRmKCJyZGJ4X2NoZWNrL3JlcGxheV9hZGRzIHBlciBzZWNvbmQg
KHdzPTEyOCk6ICVlXG4iLCByYXRlKTsKLSAgICByYXRlID0gcmRieF9jaGVja19hZGRzX3Blcl9z
ZWNvbmQoMSA8PCAxOCwgMTAyNCk7Ci0gICAgcHJpbnRmKCJyZGJ4X2NoZWNrL3JlcGxheV9hZGRz
IHBlciBzZWNvbmQgKHdzPTEwMjQpOiAlZVxuIiwgcmF0ZSk7Ci0gIH0KLSAgCi0gIHJldHVybiAw
OwotfQogCi12b2lkCi1wcmludF9yZGJ4KHNydHBfcmRieF90ICpyZGJ4KSB7Ci0gIGNoYXIgYnVm
WzIwNDhdOwotICBwcmludGYoInJkYng6IHslbGx1LCAlc31cbiIsCi0JICh1bnNpZ25lZCBsb25n
IGxvbmcpKHJkYngtPmluZGV4KSwKLQkgYml0dmVjdG9yX2JpdF9zdHJpbmcoJnJkYngtPmJpdG1h
c2ssIGJ1Ziwgc2l6ZW9mKGJ1ZikpCi0pOworICAgIGlmIChkb190aW1pbmdfdGVzdCkgeworICAg
ICAgICByYXRlID0gcmRieF9jaGVja19hZGRzX3Blcl9zZWNvbmQoMSA8PCAxOCwgMTI4KTsKKyAg
ICAgICAgcHJpbnRmKCJyZGJ4X2NoZWNrL3JlcGxheV9hZGRzIHBlciBzZWNvbmQgKHdzPTEyOCk6
ICVlXG4iLCByYXRlKTsKKyAgICAgICAgcmF0ZSA9IHJkYnhfY2hlY2tfYWRkc19wZXJfc2Vjb25k
KDEgPDwgMTgsIDEwMjQpOworICAgICAgICBwcmludGYoInJkYnhfY2hlY2svcmVwbGF5X2FkZHMg
cGVyIHNlY29uZCAod3M9MTAyNCk6ICVlXG4iLCByYXRlKTsKKyAgICB9CisKKyAgICByZXR1cm4g
MDsKIH0KIAordm9pZCBwcmludF9yZGJ4KHNydHBfcmRieF90ICpyZGJ4KQoreworICAgIGNoYXIg
YnVmWzIwNDhdOworICAgIHByaW50ZigicmRieDogeyVsbHUsICVzfVxuIiwgKHVuc2lnbmVkIGxv
bmcgbG9uZykocmRieC0+aW5kZXgpLAorICAgICAgICAgICBiaXR2ZWN0b3JfYml0X3N0cmluZygm
cmRieC0+Yml0bWFzaywgYnVmLCBzaXplb2YoYnVmKSkpOworfQogCiAvKgogICogcmRieF9jaGVj
a19hZGQocmRieCwgaWR4KSBjaGVja3MgYSBrbm93bi10by1iZS1nb29kIGlkeCBhZ2FpbnN0CkBA
IC0xNTAsMjE3ICsxNDQsMjE0IEBAIHByaW50X3JkYngoc3J0cF9yZGJ4X3QgKnJkYngpIHsKICAq
CiAgKi8KIAotc3J0cF9lcnJfc3RhdHVzX3QKLXJkYnhfY2hlY2tfYWRkKHNydHBfcmRieF90ICpy
ZGJ4LCB1aW50MzJfdCBpZHgpIHsKLSAgaW50IGRlbHRhOwotICBzcnRwX3h0ZF9zZXFfbnVtX3Qg
ZXN0OwotICAKLSAgZGVsdGEgPSBzcnRwX2luZGV4X2d1ZXNzKCZyZGJ4LT5pbmRleCwgJmVzdCwg
aWR4KTsKLSAgCi0gIGlmIChzcnRwX3JkYnhfY2hlY2socmRieCwgZGVsdGEpICE9IHNydHBfZXJy
X3N0YXR1c19vaykgewotICAgIHByaW50ZigicmVwbGF5X2NoZWNrIGZhaWxlZCBhdCBpbmRleCAl
dVxuIiwgaWR4KTsKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2FsZ29fZmFpbDsKLSAgfQot
Ci0gIC8qCi0gICAqIGluIHByYWN0aWNlLCB3ZSdkIGF1dGhlbnRpY2F0ZSB0aGUgcGFja2V0IGNv
bnRhaW5pbmcgaWR4LCB1c2luZwotICAgKiB0aGUgZXN0aW1hdGVkIHZhbHVlIGVzdCwgYXQgdGhp
cyBwb2ludAotICAgKi8KLSAgCi0gIGlmIChzcnRwX3JkYnhfYWRkX2luZGV4KHJkYngsIGRlbHRh
KSAhPSBzcnRwX2Vycl9zdGF0dXNfb2spIHsKLSAgICBwcmludGYoInJkYnhfYWRkX2luZGV4IGZh
aWxlZCBhdCBpbmRleCAldVxuIiwgaWR4KTsKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2Fs
Z29fZmFpbDsKLSAgfSAgCi0KLSAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKK3NydHBfZXJy
X3N0YXR1c190IHJkYnhfY2hlY2tfYWRkKHNydHBfcmRieF90ICpyZGJ4LCB1aW50MzJfdCBpZHgp
Cit7CisgICAgaW50IGRlbHRhOworICAgIHNydHBfeHRkX3NlcV9udW1fdCBlc3Q7CisKKyAgICBk
ZWx0YSA9IHNydHBfaW5kZXhfZ3Vlc3MoJnJkYngtPmluZGV4LCAmZXN0LCBpZHgpOworCisgICAg
aWYgKHNydHBfcmRieF9jaGVjayhyZGJ4LCBkZWx0YSkgIT0gc3J0cF9lcnJfc3RhdHVzX29rKSB7
CisgICAgICAgIHByaW50ZigicmVwbGF5X2NoZWNrIGZhaWxlZCBhdCBpbmRleCAldVxuIiwgaWR4
KTsKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19hbGdvX2ZhaWw7CisgICAgfQorCisg
ICAgLyoKKyAgICAgKiBpbiBwcmFjdGljZSwgd2UnZCBhdXRoZW50aWNhdGUgdGhlIHBhY2tldCBj
b250YWluaW5nIGlkeCwgdXNpbmcKKyAgICAgKiB0aGUgZXN0aW1hdGVkIHZhbHVlIGVzdCwgYXQg
dGhpcyBwb2ludAorICAgICAqLworCisgICAgaWYgKHNydHBfcmRieF9hZGRfaW5kZXgocmRieCwg
ZGVsdGEpICE9IHNydHBfZXJyX3N0YXR1c19vaykgeworICAgICAgICBwcmludGYoInJkYnhfYWRk
X2luZGV4IGZhaWxlZCBhdCBpbmRleCAldVxuIiwgaWR4KTsKKyAgICAgICAgcmV0dXJuIHNydHBf
ZXJyX3N0YXR1c19hbGdvX2ZhaWw7CisgICAgfQorCisgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1
c19vazsKIH0KIAogLyoKICAqIHJkYnhfY2hlY2tfZXhwZWN0X2ZhaWx1cmUoc3J0cF9yZGJ4X3Qg
KnJkYngsIHVpbnQzMl90IGlkeCkKLSAqIAorICoKICAqIGNoZWNrcyB0aGF0IGEgc2VxdWVuY2Ug
bnVtYmVyIGlkeCBpcyBpbiB0aGUgcmVwbGF5IGRhdGFiYXNlCiAgKiBhbmQgdGh1cyB3aWxsIGJl
IHJlamVjdGVkCiAgKi8KIAotc3J0cF9lcnJfc3RhdHVzX3QKLXJkYnhfY2hlY2tfZXhwZWN0X2Zh
aWx1cmUoc3J0cF9yZGJ4X3QgKnJkYngsIHVpbnQzMl90IGlkeCkgewotICBpbnQgZGVsdGE7Ci0g
IHNydHBfeHRkX3NlcV9udW1fdCBlc3Q7Ci0gIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKK3Ny
dHBfZXJyX3N0YXR1c190IHJkYnhfY2hlY2tfZXhwZWN0X2ZhaWx1cmUoc3J0cF9yZGJ4X3QgKnJk
YngsIHVpbnQzMl90IGlkeCkKK3sKKyAgICBpbnQgZGVsdGE7CisgICAgc3J0cF94dGRfc2VxX251
bV90IGVzdDsKKyAgICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7CiAKLSAgZGVsdGEgPSBzcnRw
X2luZGV4X2d1ZXNzKCZyZGJ4LT5pbmRleCwgJmVzdCwgaWR4KTsKKyAgICBkZWx0YSA9IHNydHBf
aW5kZXhfZ3Vlc3MoJnJkYngtPmluZGV4LCAmZXN0LCBpZHgpOwogCi0gIHN0YXR1cyA9IHNydHBf
cmRieF9jaGVjayhyZGJ4LCBkZWx0YSk7Ci0gIGlmIChzdGF0dXMgPT0gc3J0cF9lcnJfc3RhdHVz
X29rKSB7Ci0gICAgcHJpbnRmKCJkZWx0YTogJWQgIiwgZGVsdGEpOwotICAgIHByaW50ZigicmVw
bGF5X2NoZWNrIGZhaWxlZCBhdCBpbmRleCAldSAoZmFsc2UgcG9zaXRpdmUpXG4iLCBpZHgpOwot
ICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYWxnb19mYWlsOyAKLSAgfQorICAgIHN0YXR1cyA9
IHNydHBfcmRieF9jaGVjayhyZGJ4LCBkZWx0YSk7CisgICAgaWYgKHN0YXR1cyA9PSBzcnRwX2Vy
cl9zdGF0dXNfb2spIHsKKyAgICAgICAgcHJpbnRmKCJkZWx0YTogJWQgIiwgZGVsdGEpOworICAg
ICAgICBwcmludGYoInJlcGxheV9jaGVjayBmYWlsZWQgYXQgaW5kZXggJXUgKGZhbHNlIHBvc2l0
aXZlKVxuIiwgaWR4KTsKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19hbGdvX2ZhaWw7
CisgICAgfQogCi0gIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CisgICAgcmV0dXJuIHNydHBf
ZXJyX3N0YXR1c19vazsKIH0KIAotc3J0cF9lcnJfc3RhdHVzX3QKLXJkYnhfY2hlY2tfYWRkX3Vu
b3JkZXJlZChzcnRwX3JkYnhfdCAqcmRieCwgdWludDMyX3QgaWR4KSB7Ci0gIGludCBkZWx0YTsK
LSAgc3J0cF94dGRfc2VxX251bV90IGVzdDsKLSAgc3J0cF9lcnJfc3RhdHVzX3QgcnN0YXQ7Ci0K
LSAgZGVsdGEgPSBzcnRwX2luZGV4X2d1ZXNzKCZyZGJ4LT5pbmRleCwgJmVzdCwgaWR4KTsKLQot
ICByc3RhdCA9IHNydHBfcmRieF9jaGVjayhyZGJ4LCBkZWx0YSk7Ci0gIGlmICgocnN0YXQgIT0g
c3J0cF9lcnJfc3RhdHVzX29rKSAmJiAocnN0YXQgIT0gc3J0cF9lcnJfc3RhdHVzX3JlcGxheV9v
bGQpKSB7Ci0gICAgcHJpbnRmKCJyZXBsYXlfY2hlY2tfYWRkX3Vub3JkZXJlZCBmYWlsZWQgYXQg
aW5kZXggJXVcbiIsIGlkeCk7Ci0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19hbGdvX2ZhaWw7
Ci0gIH0KLSAgaWYgKHJzdGF0ID09IHNydHBfZXJyX3N0YXR1c19yZXBsYXlfb2xkKSB7Ci0JcmV0
dXJuIHNydHBfZXJyX3N0YXR1c19vazsKLSAgfQotICBpZiAoc3J0cF9yZGJ4X2FkZF9pbmRleChy
ZGJ4LCBkZWx0YSkgIT0gc3J0cF9lcnJfc3RhdHVzX29rKSB7Ci0gICAgcHJpbnRmKCJyZGJ4X2Fk
ZF9pbmRleCBmYWlsZWQgYXQgaW5kZXggJXVcbiIsIGlkeCk7Ci0gICAgcmV0dXJuIHNydHBfZXJy
X3N0YXR1c19hbGdvX2ZhaWw7Ci0gIH0gIAotCi0gIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7
Ci19CitzcnRwX2Vycl9zdGF0dXNfdCByZGJ4X2NoZWNrX2FkZF91bm9yZGVyZWQoc3J0cF9yZGJ4
X3QgKnJkYngsIHVpbnQzMl90IGlkeCkKK3sKKyAgICBpbnQgZGVsdGE7CisgICAgc3J0cF94dGRf
c2VxX251bV90IGVzdDsKKyAgICBzcnRwX2Vycl9zdGF0dXNfdCByc3RhdDsKKworICAgIGRlbHRh
ID0gc3J0cF9pbmRleF9ndWVzcygmcmRieC0+aW5kZXgsICZlc3QsIGlkeCk7CisKKyAgICByc3Rh
dCA9IHNydHBfcmRieF9jaGVjayhyZGJ4LCBkZWx0YSk7CisgICAgaWYgKChyc3RhdCAhPSBzcnRw
X2Vycl9zdGF0dXNfb2spICYmCisgICAgICAgIChyc3RhdCAhPSBzcnRwX2Vycl9zdGF0dXNfcmVw
bGF5X29sZCkpIHsKKyAgICAgICAgcHJpbnRmKCJyZXBsYXlfY2hlY2tfYWRkX3Vub3JkZXJlZCBm
YWlsZWQgYXQgaW5kZXggJXVcbiIsIGlkeCk7CisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0
dXNfYWxnb19mYWlsOworICAgIH0KKyAgICBpZiAocnN0YXQgPT0gc3J0cF9lcnJfc3RhdHVzX3Jl
cGxheV9vbGQpIHsKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKKyAgICB9Cisg
ICAgaWYgKHNydHBfcmRieF9hZGRfaW5kZXgocmRieCwgZGVsdGEpICE9IHNydHBfZXJyX3N0YXR1
c19vaykgeworICAgICAgICBwcmludGYoInJkYnhfYWRkX2luZGV4IGZhaWxlZCBhdCBpbmRleCAl
dVxuIiwgaWR4KTsKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19hbGdvX2ZhaWw7Cisg
ICAgfQogCi1zcnRwX2Vycl9zdGF0dXNfdAotdGVzdF9yZXBsYXlfZGJ4KGludCBudW1fdHJpYWxz
LCB1bnNpZ25lZCBsb25nIHdzKSB7Ci0gIHNydHBfcmRieF90IHJkYng7Ci0gIHVpbnQzMl90IGlk
eCwgaXJjdmQ7Ci0gIHV0X2Nvbm5lY3Rpb24gdXRjOwotICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0
dXM7Ci0gIGludCBudW1fZnBfdHJpYWxzOwotCi0gIHN0YXR1cyA9IHNydHBfcmRieF9pbml0KCZy
ZGJ4LCB3cyk7Ci0gIGlmIChzdGF0dXMpIHsKLSAgICBwcmludGYoInJlcGxheV9pbml0IGZhaWxl
ZCB3aXRoIGVycm9yIGNvZGUgJWRcbiIsIHN0YXR1cyk7Ci0gICAgZXhpdCgxKTsKLSAgfQotCi0g
IC8qCi0gICAqICB0ZXN0IHNlcXVlbnRpYWwgaW5zZXJ0aW9uIAotICAgKi8KLSAgcHJpbnRmKCJc
dHRlc3Rpbmcgc2VxdWVudGlhbCBpbnNlcnRpb24uLi4iKTsKLSAgZm9yIChpZHg9MDsgKGludCkg
aWR4IDwgbnVtX3RyaWFsczsgaWR4KyspIHsKLSAgICBzdGF0dXMgPSByZGJ4X2NoZWNrX2FkZCgm
cmRieCwgaWR4KTsKLSAgICBpZiAoc3RhdHVzKQotICAgICAgcmV0dXJuIHN0YXR1czsKLSAgfQot
ICBwcmludGYoInBhc3NlZFxuIik7Ci0KLSAgLyoKLSAgICogIHRlc3QgZm9yIGZhbHNlIHBvc2l0
aXZlcyBieSBjaGVja2luZyBhbGwgb2YgdGhlIGluZGV4Ci0gICAqICB2YWx1ZXMgd2hpY2ggd2Un
dmUganVzdCBhZGRlZAotICAgKgotICAgKiBub3RlIHRoYXQgd2UgbGltaXQgdGhlIG51bWJlciBv
ZiB0cmlhbHMgaGVyZSwgc2luY2UgYWxsb3dpbmcgdGhlCi0gICAqIHJvbGxvdmVyIGNvdW50ZXIg
dG8gcm9sbCBvdmVyIHdvdWxkIGRlZmVhdCB0aGlzIHRlc3QKLSAgICovCi0gIG51bV9mcF90cmlh
bHMgPSBudW1fdHJpYWxzICUgMHgxMDAwMDsKLSAgaWYgKG51bV9mcF90cmlhbHMgPT0gMCkgewot
ICAgIHByaW50Zigid2FybmluZzogbm8gZmFsc2UgcG9zaXRpdmUgdGVzdHMgcGVyZm9ybWVkXG4i
KTsKLSAgfQotICBwcmludGYoIlx0dGVzdGluZyBmb3IgZmFsc2UgcG9zaXRpdmVzLi4uIik7Ci0g
IGZvciAoaWR4PTA7IChpbnQpIGlkeCA8IG51bV9mcF90cmlhbHM7IGlkeCsrKSB7Ci0gICAgc3Rh
dHVzID0gcmRieF9jaGVja19leHBlY3RfZmFpbHVyZSgmcmRieCwgaWR4KTsKLSAgICBpZiAoc3Rh
dHVzKQotICAgICAgcmV0dXJuIHN0YXR1czsKLSAgfQotICBwcmludGYoInBhc3NlZFxuIik7Ci0K
LSAgLyogcmUtaW5pdGlhbGl6ZSAqLwotICBzcnRwX3JkYnhfZGVhbGxvYygmcmRieCk7Ci0KLSAg
aWYgKHNydHBfcmRieF9pbml0KCZyZGJ4LCB3cykgIT0gc3J0cF9lcnJfc3RhdHVzX29rKSB7Ci0g
ICAgcHJpbnRmKCJyZXBsYXlfaW5pdCBmYWlsZWRcbiIpOwotICAgIHJldHVybiBzcnRwX2Vycl9z
dGF0dXNfaW5pdF9mYWlsOwotICB9Ci0KLSAgLyoKLSAgICogdGVzdCBub24tc2VxdWVudGlhbCBp
bnNlcnRpb24gCi0gICAqCi0gICAqIHRoaXMgdGVzdCBjb3ZlcnMgb25seSBmYXNlIG5lZ2F0aXZl
cywgc2luY2UgdGhlIHZhbHVlcyByZXR1cm5lZAotICAgKiBieSB1dF9uZXh0X2luZGV4KC4uLikg
YXJlIGRpc3RpbmN0Ci0gICAqLwotICB1dF9pbml0KCZ1dGMpOwotCi0gIHByaW50ZigiXHR0ZXN0
aW5nIG5vbi1zZXF1ZW50aWFsIGluc2VydGlvbi4uLiIpOyAgCi0gIGZvciAoaWR4PTA7IChpbnQp
IGlkeCA8IG51bV90cmlhbHM7IGlkeCsrKSB7Ci0gICAgaXJjdmQgPSB1dF9uZXh0X2luZGV4KCZ1
dGMpOwotICAgIHN0YXR1cyA9IHJkYnhfY2hlY2tfYWRkX3Vub3JkZXJlZCgmcmRieCwgaXJjdmQp
OwotICAgIGlmIChzdGF0dXMpCi0gICAgICByZXR1cm4gc3RhdHVzOwotCXN0YXR1cyA9IHJkYnhf
Y2hlY2tfZXhwZWN0X2ZhaWx1cmUoJnJkYngsIGlyY3ZkKTsKLQlpZiAoc3RhdHVzKQotCQlyZXR1
cm4gc3RhdHVzOwotICB9Ci0gIHByaW50ZigicGFzc2VkXG4iKTsKLQotICAvKiByZS1pbml0aWFs
aXplICovCi0gIHNydHBfcmRieF9kZWFsbG9jKCZyZGJ4KTsKLQotICBpZiAoc3J0cF9yZGJ4X2lu
aXQoJnJkYngsIHdzKSAhPSBzcnRwX2Vycl9zdGF0dXNfb2spIHsKLSAgICBwcmludGYoInJlcGxh
eV9pbml0IGZhaWxlZFxuIik7Ci0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19pbml0X2ZhaWw7
Ci0gIH0KLQotICAvKgotICAgKiB0ZXN0IGluc2VydGlvbiB3aXRoIGxhcmdlIGdhcHMuCi0gICAq
IGNoZWNrIGZvciBmYWxzZSBwb3NpdGl2ZXMgZm9yIGVhY2ggaW5zZXJ0aW9uLgotICAgKi8KLSAg
cHJpbnRmKCJcdHRlc3RpbmcgaW5zZXJ0aW9uIHdpdGggbGFyZ2UgZ2Fwcy4uLiIpOyAgCi0gIGZv
ciAoaWR4PTAsIGlyY3ZkPTA7IChpbnQpIGlkeCA8IG51bV90cmlhbHM7IGlkeCsrLCBpcmN2ZCAr
PSAoMSA8PCAocmFuZCgpICUgMTIpKSkgewotICAgIHN0YXR1cyA9IHJkYnhfY2hlY2tfYWRkKCZy
ZGJ4LCBpcmN2ZCk7Ci0gICAgaWYgKHN0YXR1cykKLSAgICAgIHJldHVybiBzdGF0dXM7Ci0gICAg
c3RhdHVzID0gcmRieF9jaGVja19leHBlY3RfZmFpbHVyZSgmcmRieCwgaXJjdmQpOwotICAgIGlm
IChzdGF0dXMpCi0gICAgICByZXR1cm4gc3RhdHVzOwotICB9Ci0gIHByaW50ZigicGFzc2VkXG4i
KTsKLQotICBzcnRwX3JkYnhfZGVhbGxvYygmcmRieCk7Ci0KLSAgcmV0dXJuIHNydHBfZXJyX3N0
YXR1c19vazsKKyAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQogCitzcnRwX2Vycl9z
dGF0dXNfdCB0ZXN0X3JlcGxheV9kYngoaW50IG51bV90cmlhbHMsIHVuc2lnbmVkIGxvbmcgd3Mp
Cit7CisgICAgc3J0cF9yZGJ4X3QgcmRieDsKKyAgICB1aW50MzJfdCBpZHgsIGlyY3ZkOworICAg
IHV0X2Nvbm5lY3Rpb24gdXRjOworICAgIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKKyAgICBp
bnQgbnVtX2ZwX3RyaWFsczsKKworICAgIHN0YXR1cyA9IHNydHBfcmRieF9pbml0KCZyZGJ4LCB3
cyk7CisgICAgaWYgKHN0YXR1cykgeworICAgICAgICBwcmludGYoInJlcGxheV9pbml0IGZhaWxl
ZCB3aXRoIGVycm9yIGNvZGUgJWRcbiIsIHN0YXR1cyk7CisgICAgICAgIGV4aXQoMSk7CisgICAg
fQorCisgICAgLyoKKyAgICAgKiAgdGVzdCBzZXF1ZW50aWFsIGluc2VydGlvbgorICAgICAqLwor
ICAgIHByaW50ZigiXHR0ZXN0aW5nIHNlcXVlbnRpYWwgaW5zZXJ0aW9uLi4uIik7CisgICAgZm9y
IChpZHggPSAwOyAoaW50KWlkeCA8IG51bV90cmlhbHM7IGlkeCsrKSB7CisgICAgICAgIHN0YXR1
cyA9IHJkYnhfY2hlY2tfYWRkKCZyZGJ4LCBpZHgpOworICAgICAgICBpZiAoc3RhdHVzKQorICAg
ICAgICAgICAgcmV0dXJuIHN0YXR1czsKKyAgICB9CisgICAgcHJpbnRmKCJwYXNzZWRcbiIpOwor
CisgICAgLyoKKyAgICAgKiAgdGVzdCBmb3IgZmFsc2UgcG9zaXRpdmVzIGJ5IGNoZWNraW5nIGFs
bCBvZiB0aGUgaW5kZXgKKyAgICAgKiAgdmFsdWVzIHdoaWNoIHdlJ3ZlIGp1c3QgYWRkZWQKKyAg
ICAgKgorICAgICAqIG5vdGUgdGhhdCB3ZSBsaW1pdCB0aGUgbnVtYmVyIG9mIHRyaWFscyBoZXJl
LCBzaW5jZSBhbGxvd2luZyB0aGUKKyAgICAgKiByb2xsb3ZlciBjb3VudGVyIHRvIHJvbGwgb3Zl
ciB3b3VsZCBkZWZlYXQgdGhpcyB0ZXN0CisgICAgICovCisgICAgbnVtX2ZwX3RyaWFscyA9IG51
bV90cmlhbHMgJSAweDEwMDAwOworICAgIGlmIChudW1fZnBfdHJpYWxzID09IDApIHsKKyAgICAg
ICAgcHJpbnRmKCJ3YXJuaW5nOiBubyBmYWxzZSBwb3NpdGl2ZSB0ZXN0cyBwZXJmb3JtZWRcbiIp
OworICAgIH0KKyAgICBwcmludGYoIlx0dGVzdGluZyBmb3IgZmFsc2UgcG9zaXRpdmVzLi4uIik7
CisgICAgZm9yIChpZHggPSAwOyAoaW50KWlkeCA8IG51bV9mcF90cmlhbHM7IGlkeCsrKSB7Cisg
ICAgICAgIHN0YXR1cyA9IHJkYnhfY2hlY2tfZXhwZWN0X2ZhaWx1cmUoJnJkYngsIGlkeCk7Cisg
ICAgICAgIGlmIChzdGF0dXMpCisgICAgICAgICAgICByZXR1cm4gc3RhdHVzOworICAgIH0KKyAg
ICBwcmludGYoInBhc3NlZFxuIik7CisKKyAgICAvKiByZS1pbml0aWFsaXplICovCisgICAgc3J0
cF9yZGJ4X2RlYWxsb2MoJnJkYngpOworCisgICAgaWYgKHNydHBfcmRieF9pbml0KCZyZGJ4LCB3
cykgIT0gc3J0cF9lcnJfc3RhdHVzX29rKSB7CisgICAgICAgIHByaW50ZigicmVwbGF5X2luaXQg
ZmFpbGVkXG4iKTsKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19pbml0X2ZhaWw7Cisg
ICAgfQorCisgICAgLyoKKyAgICAgKiB0ZXN0IG5vbi1zZXF1ZW50aWFsIGluc2VydGlvbgorICAg
ICAqCisgICAgICogdGhpcyB0ZXN0IGNvdmVycyBvbmx5IGZhc2UgbmVnYXRpdmVzLCBzaW5jZSB0
aGUgdmFsdWVzIHJldHVybmVkCisgICAgICogYnkgdXRfbmV4dF9pbmRleCguLi4pIGFyZSBkaXN0
aW5jdAorICAgICAqLworICAgIHV0X2luaXQoJnV0Yyk7CisKKyAgICBwcmludGYoIlx0dGVzdGlu
ZyBub24tc2VxdWVudGlhbCBpbnNlcnRpb24uLi4iKTsKKyAgICBmb3IgKGlkeCA9IDA7IChpbnQp
aWR4IDwgbnVtX3RyaWFsczsgaWR4KyspIHsKKyAgICAgICAgaXJjdmQgPSB1dF9uZXh0X2luZGV4
KCZ1dGMpOworICAgICAgICBzdGF0dXMgPSByZGJ4X2NoZWNrX2FkZF91bm9yZGVyZWQoJnJkYngs
IGlyY3ZkKTsKKyAgICAgICAgaWYgKHN0YXR1cykKKyAgICAgICAgICAgIHJldHVybiBzdGF0dXM7
CisgICAgICAgIHN0YXR1cyA9IHJkYnhfY2hlY2tfZXhwZWN0X2ZhaWx1cmUoJnJkYngsIGlyY3Zk
KTsKKyAgICAgICAgaWYgKHN0YXR1cykKKyAgICAgICAgICAgIHJldHVybiBzdGF0dXM7CisgICAg
fQorICAgIHByaW50ZigicGFzc2VkXG4iKTsKKworICAgIC8qIHJlLWluaXRpYWxpemUgKi8KKyAg
ICBzcnRwX3JkYnhfZGVhbGxvYygmcmRieCk7CisKKyAgICBpZiAoc3J0cF9yZGJ4X2luaXQoJnJk
YngsIHdzKSAhPSBzcnRwX2Vycl9zdGF0dXNfb2spIHsKKyAgICAgICAgcHJpbnRmKCJyZXBsYXlf
aW5pdCBmYWlsZWRcbiIpOworICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2luaXRfZmFp
bDsKKyAgICB9CisKKyAgICAvKgorICAgICAqIHRlc3QgaW5zZXJ0aW9uIHdpdGggbGFyZ2UgZ2Fw
cy4KKyAgICAgKiBjaGVjayBmb3IgZmFsc2UgcG9zaXRpdmVzIGZvciBlYWNoIGluc2VydGlvbi4K
KyAgICAgKi8KKyAgICBwcmludGYoIlx0dGVzdGluZyBpbnNlcnRpb24gd2l0aCBsYXJnZSBnYXBz
Li4uIik7CisgICAgZm9yIChpZHggPSAwLCBpcmN2ZCA9IDA7IChpbnQpaWR4IDwgbnVtX3RyaWFs
czsKKyAgICAgICAgIGlkeCsrLCBpcmN2ZCArPSAoMSA8PCAocmFuZCgpICUgMTIpKSkgeworICAg
ICAgICBzdGF0dXMgPSByZGJ4X2NoZWNrX2FkZCgmcmRieCwgaXJjdmQpOworICAgICAgICBpZiAo
c3RhdHVzKQorICAgICAgICAgICAgcmV0dXJuIHN0YXR1czsKKyAgICAgICAgc3RhdHVzID0gcmRi
eF9jaGVja19leHBlY3RfZmFpbHVyZSgmcmRieCwgaXJjdmQpOworICAgICAgICBpZiAoc3RhdHVz
KQorICAgICAgICAgICAgcmV0dXJuIHN0YXR1czsKKyAgICB9CisgICAgcHJpbnRmKCJwYXNzZWRc
biIpOwogCisgICAgc3J0cF9yZGJ4X2RlYWxsb2MoJnJkYngpOwogCi0jaW5jbHVkZSA8dGltZS5o
PiAgICAgICAvKiBmb3IgY2xvY2soKSAgKi8KLSNpbmNsdWRlIDxzdGRsaWIuaD4gICAgIC8qIGZv
ciByYW5kb20oKSAqLwotCi1kb3VibGUKLXJkYnhfY2hlY2tfYWRkc19wZXJfc2Vjb25kKGludCBu
dW1fdHJpYWxzLCB1bnNpZ25lZCBsb25nIHdzKSB7Ci0gIHVpbnQzMl90IGk7Ci0gIGludCBkZWx0
YTsKLSAgc3J0cF9yZGJ4X3QgcmRieDsKLSAgc3J0cF94dGRfc2VxX251bV90IGVzdDsKLSAgY2xv
Y2tfdCB0aW1lcjsKLSAgaW50IGZhaWx1cmVzOyAgICAgICAgICAgICAgICAgICAgLyogY291bnQg
bnVtYmVyIG9mIGZhaWx1cmVzICAgICAgICAqLwotICAKLSAgaWYgKHNydHBfcmRieF9pbml0KCZy
ZGJ4LCB3cykgIT0gc3J0cF9lcnJfc3RhdHVzX29rKSB7Ci0gICAgcHJpbnRmKCJyZXBsYXlfaW5p
dCBmYWlsZWRcbiIpOwotICAgIGV4aXQoMSk7Ci0gIH0gIAotCi0gIGZhaWx1cmVzID0gMDsKLSAg
dGltZXIgPSBjbG9jaygpOwotICBmb3IoaT0wOyAoaW50KSBpIDwgbnVtX3RyaWFsczsgaSsrKSB7
Ci0gICAgCi0gICAgZGVsdGEgPSBzcnRwX2luZGV4X2d1ZXNzKCZyZGJ4LmluZGV4LCAmZXN0LCBp
KTsKLSAgICAKLSAgICBpZiAoc3J0cF9yZGJ4X2NoZWNrKCZyZGJ4LCBkZWx0YSkgIT0gc3J0cF9l
cnJfc3RhdHVzX29rKSAKLSAgICAgICsrZmFpbHVyZXM7Ci0gICAgZWxzZQotICAgICAgaWYgKHNy
dHBfcmRieF9hZGRfaW5kZXgoJnJkYngsIGRlbHRhKSAhPSBzcnRwX2Vycl9zdGF0dXNfb2spCi0J
KytmYWlsdXJlczsKLSAgfQotICB0aW1lciA9IGNsb2NrKCkgLSB0aW1lcjsKLQotICBwcmludGYo
Im51bWJlciBvZiBmYWlsdXJlczogJWQgXG4iLCBmYWlsdXJlcyk7Ci0KLSAgc3J0cF9yZGJ4X2Rl
YWxsb2MoJnJkYngpOwotCi0gIHJldHVybiAoZG91YmxlKSBDTE9DS1NfUEVSX1NFQyAqIG51bV90
cmlhbHMgLyB0aW1lcjsKKyAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQogCisjaW5j
bHVkZSA8dGltZS5oPiAgIC8qIGZvciBjbG9jaygpICAqLworI2luY2x1ZGUgPHN0ZGxpYi5oPiAv
KiBmb3IgcmFuZG9tKCkgKi8KKworZG91YmxlIHJkYnhfY2hlY2tfYWRkc19wZXJfc2Vjb25kKGlu
dCBudW1fdHJpYWxzLCB1bnNpZ25lZCBsb25nIHdzKQoreworICAgIHVpbnQzMl90IGk7CisgICAg
aW50IGRlbHRhOworICAgIHNydHBfcmRieF90IHJkYng7CisgICAgc3J0cF94dGRfc2VxX251bV90
IGVzdDsKKyAgICBjbG9ja190IHRpbWVyOworICAgIGludCBmYWlsdXJlczsgLyogY291bnQgbnVt
YmVyIG9mIGZhaWx1cmVzICovCisKKyAgICBpZiAoc3J0cF9yZGJ4X2luaXQoJnJkYngsIHdzKSAh
PSBzcnRwX2Vycl9zdGF0dXNfb2spIHsKKyAgICAgICAgcHJpbnRmKCJyZXBsYXlfaW5pdCBmYWls
ZWRcbiIpOworICAgICAgICBleGl0KDEpOworICAgIH0KKworICAgIGZhaWx1cmVzID0gMDsKKyAg
ICB0aW1lciA9IGNsb2NrKCk7CisgICAgZm9yIChpID0gMDsgKGludClpIDwgbnVtX3RyaWFsczsg
aSsrKSB7CisgICAgICAgIGRlbHRhID0gc3J0cF9pbmRleF9ndWVzcygmcmRieC5pbmRleCwgJmVz
dCwgaSk7CisKKyAgICAgICAgaWYgKHNydHBfcmRieF9jaGVjaygmcmRieCwgZGVsdGEpICE9IHNy
dHBfZXJyX3N0YXR1c19vaykKKyAgICAgICAgICAgICsrZmFpbHVyZXM7CisgICAgICAgIGVsc2Ug
aWYgKHNydHBfcmRieF9hZGRfaW5kZXgoJnJkYngsIGRlbHRhKSAhPSBzcnRwX2Vycl9zdGF0dXNf
b2spCisgICAgICAgICAgICArK2ZhaWx1cmVzOworICAgIH0KKyAgICB0aW1lciA9IGNsb2NrKCkg
LSB0aW1lcjsKKworICAgIHByaW50ZigibnVtYmVyIG9mIGZhaWx1cmVzOiAlZCBcbiIsIGZhaWx1
cmVzKTsKKworICAgIHNydHBfcmRieF9kZWFsbG9jKCZyZGJ4KTsKKworICAgIHJldHVybiAoZG91
YmxlKUNMT0NLU19QRVJfU0VDICogbnVtX3RyaWFscyAvIHRpbWVyOworfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL3Rl
c3QvcmVwbGF5X2RyaXZlci5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9saWJzcnRwL3Rlc3QvcmVwbGF5X2RyaXZlci5jCmluZGV4IGI5NjRhNGEwM2Vi
YmNhNTQyZDhmMmMwNDA0NWI3NWY3ZTkxNjg3OTEuLmE4ODIyNDY4NGY2YTQxMWNlMTVhZWI1MzBi
MzNhMGM4YzU4ZTU1YTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9T
b3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC90ZXN0L3JlcGxheV9kcml2ZXIuYworKysgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvdGVzdC9y
ZXBsYXlfZHJpdmVyLmMKQEAgLTgsMjYgKzgsMjYgQEAKICAqLwogCiAvKgotICoJCisgKgogICog
Q29weXJpZ2h0IChjKSAyMDAxLTIwMTcsIENpc2NvIFN5c3RlbXMsIEluYy4KICAqIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCi0gKiAKKyAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwogICogYXJl
IG1ldDoKLSAqIAorICoKICAqICAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3Qg
cmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKICAqICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogCisgKgogICogICBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCiAgKiAg
IGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nCiAgKiAgIGRpc2NsYWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h
dGVyaWFscyBwcm92aWRlZAogICogICB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKiAKKyAqCiAg
KiAgIE5laXRoZXIgdGhlIG5hbWUgb2YgdGhlIENpc2NvIFN5c3RlbXMsIEluYy4gbm9yIHRoZSBu
YW1lcyBvZiBpdHMKICAqICAgY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3Ig
cHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkCiAgKiAgIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0
IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KLSAqIAorICoKICAqIFRISVMgU09G
VFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRP
UlMKICAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UCiAgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUwpAQCAtNDQsNyArNDQsNyBAQAogICovCiAKICNp
ZmRlZiBIQVZFX0NPTkZJR19ICi0gICAgI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGNv
bmZpZy5oPgogI2VuZGlmCiAKICNpbmNsdWRlIDxzdGRpby5oPgpAQCAtNTksMjI2ICs1OSwyMjUg
QEAKIAogdW5zaWduZWQgbnVtX3RyaWFscyA9IDEgPDwgMTY7CiAKLXNydHBfZXJyX3N0YXR1c190
Ci10ZXN0X3JkYl9kYih2b2lkKTsKLQotZG91YmxlCi1yZGJfY2hlY2tfYWRkc19wZXJfc2Vjb25k
KHZvaWQpOwotCi1pbnQKLW1haW4gKHZvaWQpIHsKLSAgc3J0cF9lcnJfc3RhdHVzX3QgZXJyOwot
ICAKLSAgcHJpbnRmKCJ0ZXN0aW5nIGFudGktcmVwbGF5IGRhdGFiYXNlIChzcnRwX3JkYl90KS4u
LlxuIik7Ci0gIGVyciA9IHRlc3RfcmRiX2RiKCk7Ci0gIGlmIChlcnIpIHsKLSAgICBwcmludGYo
ImZhaWxlZFxuIik7Ci0gICAgZXhpdCgxKTsKLSAgfQotICBwcmludGYoImRvbmVcbiIpOwotCi0g
IHByaW50ZigicmRiX2NoZWNrL3JkYl9hZGRzIHBlciBzZWNvbmQ6ICVlXG4iLAotCSByZGJfY2hl
Y2tfYWRkc19wZXJfc2Vjb25kKCkpOwotICAKLSAgcmV0dXJuIDA7Ci19CitzcnRwX2Vycl9zdGF0
dXNfdCB0ZXN0X3JkYl9kYih2b2lkKTsKIAorZG91YmxlIHJkYl9jaGVja19hZGRzX3Blcl9zZWNv
bmQodm9pZCk7CiAKLXZvaWQKLXByaW50X3JkYihzcnRwX3JkYl90ICpyZGIpIHsKLSAgcHJpbnRm
KCJyZGI6IHsldSwgJXN9XG4iLCByZGItPndpbmRvd19zdGFydCwgdjEyOF9iaXRfc3RyaW5nKCZy
ZGItPmJpdG1hc2spKTsKLX0KK2ludCBtYWluKHZvaWQpCit7CisgICAgc3J0cF9lcnJfc3RhdHVz
X3QgZXJyOworCisgICAgcHJpbnRmKCJ0ZXN0aW5nIGFudGktcmVwbGF5IGRhdGFiYXNlIChzcnRw
X3JkYl90KS4uLlxuIik7CisgICAgZXJyID0gdGVzdF9yZGJfZGIoKTsKKyAgICBpZiAoZXJyKSB7
CisgICAgICAgIHByaW50ZigiZmFpbGVkXG4iKTsKKyAgICAgICAgZXhpdCgxKTsKKyAgICB9Cisg
ICAgcHJpbnRmKCJkb25lXG4iKTsKIAotc3J0cF9lcnJfc3RhdHVzX3QKLXJkYl9jaGVja19hZGQo
c3J0cF9yZGJfdCAqcmRiLCB1aW50MzJfdCBpZHgpIHsKKyAgICBwcmludGYoInJkYl9jaGVjay9y
ZGJfYWRkcyBwZXIgc2Vjb25kOiAlZVxuIiwgcmRiX2NoZWNrX2FkZHNfcGVyX3NlY29uZCgpKTsK
IAotICBpZiAoc3J0cF9yZGJfY2hlY2socmRiLCBpZHgpICE9IHNydHBfZXJyX3N0YXR1c19vaykg
ewotICAgIHByaW50ZigicmRiX2NoZWNrIGZhaWxlZCBhdCBpbmRleCAldVxuIiwgaWR4KTsKLSAg
ICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7Ci0gIH0KLSAgaWYgKHNydHBfcmRiX2FkZF9p
bmRleChyZGIsIGlkeCkgIT0gc3J0cF9lcnJfc3RhdHVzX29rKSB7Ci0gICAgcHJpbnRmKCJyZGJf
YWRkX2luZGV4IGZhaWxlZCBhdCBpbmRleCAldVxuIiwgaWR4KTsKLSAgICByZXR1cm4gc3J0cF9l
cnJfc3RhdHVzX2ZhaWw7Ci0gIH0KKyAgICByZXR1cm4gMDsKK30KIAotICByZXR1cm4gc3J0cF9l
cnJfc3RhdHVzX29rOwordm9pZCBwcmludF9yZGIoc3J0cF9yZGJfdCAqcmRiKQoreworICAgIHBy
aW50ZigicmRiOiB7JXUsICVzfVxuIiwgcmRiLT53aW5kb3dfc3RhcnQsCisgICAgICAgICAgIHYx
MjhfYml0X3N0cmluZygmcmRiLT5iaXRtYXNrKSk7CiB9CiAKLXNydHBfZXJyX3N0YXR1c190Ci1y
ZGJfY2hlY2tfZXhwZWN0X2ZhaWx1cmUoc3J0cF9yZGJfdCAqcmRiLCB1aW50MzJfdCBpZHgpIHsK
LSAgc3J0cF9lcnJfc3RhdHVzX3QgZXJyOwotICAKLSAgZXJyID0gc3J0cF9yZGJfY2hlY2socmRi
LCBpZHgpOwotICBpZiAoKGVyciAhPSBzcnRwX2Vycl9zdGF0dXNfcmVwbGF5X29sZCkgJiYgKGVy
ciAhPSBzcnRwX2Vycl9zdGF0dXNfcmVwbGF5X2ZhaWwpKSB7Ci0gICAgcHJpbnRmKCJyZGJfY2hl
Y2sgZmFpbGVkIGF0IGluZGV4ICV1IChmYWxzZSBwb3NpdGl2ZSlcbiIsIGlkeCk7Ci0gICAgcmV0
dXJuIHNydHBfZXJyX3N0YXR1c19mYWlsOwotICB9Ci0KLSAgcmV0dXJuIHNydHBfZXJyX3N0YXR1
c19vazsKK3NydHBfZXJyX3N0YXR1c190IHJkYl9jaGVja19hZGQoc3J0cF9yZGJfdCAqcmRiLCB1
aW50MzJfdCBpZHgpCit7CisgICAgaWYgKHNydHBfcmRiX2NoZWNrKHJkYiwgaWR4KSAhPSBzcnRw
X2Vycl9zdGF0dXNfb2spIHsKKyAgICAgICAgcHJpbnRmKCJyZGJfY2hlY2sgZmFpbGVkIGF0IGlu
ZGV4ICV1XG4iLCBpZHgpOworICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7Cisg
ICAgfQorICAgIGlmIChzcnRwX3JkYl9hZGRfaW5kZXgocmRiLCBpZHgpICE9IHNydHBfZXJyX3N0
YXR1c19vaykgeworICAgICAgICBwcmludGYoInJkYl9hZGRfaW5kZXggZmFpbGVkIGF0IGluZGV4
ICV1XG4iLCBpZHgpOworICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7CisgICAg
fQorCisgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKK30KKworc3J0cF9lcnJfc3RhdHVz
X3QgcmRiX2NoZWNrX2V4cGVjdF9mYWlsdXJlKHNydHBfcmRiX3QgKnJkYiwgdWludDMyX3QgaWR4
KQoreworICAgIHNydHBfZXJyX3N0YXR1c190IGVycjsKKworICAgIGVyciA9IHNydHBfcmRiX2No
ZWNrKHJkYiwgaWR4KTsKKyAgICBpZiAoKGVyciAhPSBzcnRwX2Vycl9zdGF0dXNfcmVwbGF5X29s
ZCkgJiYKKyAgICAgICAgKGVyciAhPSBzcnRwX2Vycl9zdGF0dXNfcmVwbGF5X2ZhaWwpKSB7Cisg
ICAgICAgIHByaW50ZigicmRiX2NoZWNrIGZhaWxlZCBhdCBpbmRleCAldSAoZmFsc2UgcG9zaXRp
dmUpXG4iLCBpZHgpOworICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7CisgICAg
fQorCisgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKIH0KIAotc3J0cF9lcnJfc3RhdHVz
X3QKLXJkYl9jaGVja19hZGRfdW5vcmRlcmVkKHNydHBfcmRiX3QgKnJkYiwgdWludDMyX3QgaWR4
KSB7Ci0gIHNydHBfZXJyX3N0YXR1c190IHJzdGF0OwotCi0gLyogcHJpbnRmKCJpbmRleDogJXVc
biIsIGlkeCk7ICovCi0gIHJzdGF0ID0gc3J0cF9yZGJfY2hlY2socmRiLCBpZHgpOwotICBpZiAo
KHJzdGF0ICE9IHNydHBfZXJyX3N0YXR1c19vaykgJiYgKHJzdGF0ICE9IHNydHBfZXJyX3N0YXR1
c19yZXBsYXlfb2xkKSkgewotICAgIHByaW50ZigicmRiX2NoZWNrX2FkZF91bm9yZGVyZWQgZmFp
bGVkIGF0IGluZGV4ICV1XG4iLCBpZHgpOwotICAgIHJldHVybiByc3RhdDsKLSAgfQotICBpZiAo
cnN0YXQgPT0gc3J0cF9lcnJfc3RhdHVzX3JlcGxheV9vbGQpIHsKLQlyZXR1cm4gc3J0cF9lcnJf
c3RhdHVzX29rOwotICB9Ci0gIGlmIChzcnRwX3JkYl9hZGRfaW5kZXgocmRiLCBpZHgpICE9IHNy
dHBfZXJyX3N0YXR1c19vaykgewotICAgIHByaW50ZigicmRiX2FkZF9pbmRleCBmYWlsZWQgYXQg
aW5kZXggJXVcbiIsIGlkeCk7Ci0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19mYWlsOwotICB9
ICAKLQotICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOworc3J0cF9lcnJfc3RhdHVzX3QgcmRi
X2NoZWNrX2FkZF91bm9yZGVyZWQoc3J0cF9yZGJfdCAqcmRiLCB1aW50MzJfdCBpZHgpCit7Cisg
ICAgc3J0cF9lcnJfc3RhdHVzX3QgcnN0YXQ7CisKKyAgICAvKiBwcmludGYoImluZGV4OiAldVxu
IiwgaWR4KTsgKi8KKyAgICByc3RhdCA9IHNydHBfcmRiX2NoZWNrKHJkYiwgaWR4KTsKKyAgICBp
ZiAoKHJzdGF0ICE9IHNydHBfZXJyX3N0YXR1c19vaykgJiYKKyAgICAgICAgKHJzdGF0ICE9IHNy
dHBfZXJyX3N0YXR1c19yZXBsYXlfb2xkKSkgeworICAgICAgICBwcmludGYoInJkYl9jaGVja19h
ZGRfdW5vcmRlcmVkIGZhaWxlZCBhdCBpbmRleCAldVxuIiwgaWR4KTsKKyAgICAgICAgcmV0dXJu
IHJzdGF0OworICAgIH0KKyAgICBpZiAocnN0YXQgPT0gc3J0cF9lcnJfc3RhdHVzX3JlcGxheV9v
bGQpIHsKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKKyAgICB9CisgICAgaWYg
KHNydHBfcmRiX2FkZF9pbmRleChyZGIsIGlkeCkgIT0gc3J0cF9lcnJfc3RhdHVzX29rKSB7Cisg
ICAgICAgIHByaW50ZigicmRiX2FkZF9pbmRleCBmYWlsZWQgYXQgaW5kZXggJXVcbiIsIGlkeCk7
CisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfZmFpbDsKKyAgICB9CisKKyAgICByZXR1
cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQogCi1zcnRwX2Vycl9zdGF0dXNfdAotdGVzdF9yZGJf
ZGIoKSB7Ci0gIHNydHBfcmRiX3QgcmRiOwotICB1aW50MzJfdCBpZHgsIGlyY3ZkOwotICB1dF9j
b25uZWN0aW9uIHV0YzsKLSAgc3J0cF9lcnJfc3RhdHVzX3QgZXJyOwotCi0gIGlmIChzcnRwX3Jk
Yl9pbml0KCZyZGIpICE9IHNydHBfZXJyX3N0YXR1c19vaykgewotICAgIHByaW50ZigicmRiX2lu
aXQgZmFpbGVkXG4iKTsKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2luaXRfZmFpbDsKLSAg
fQotCi0gIC8qIHRlc3Qgc2VxdWVudGlhbCBpbnNlcnRpb24gKi8KLSAgZm9yIChpZHg9MDsgaWR4
IDwgbnVtX3RyaWFsczsgaWR4KyspIHsKLSAgICBlcnIgPSByZGJfY2hlY2tfYWRkKCZyZGIsIGlk
eCk7Ci0gICAgaWYgKGVycikgCi0gICAgICByZXR1cm4gZXJyOwotICB9Ci0KLSAgLyogdGVzdCBm
b3IgZmFsc2UgcG9zaXRpdmVzICovCi0gIGZvciAoaWR4PTA7IGlkeCA8IG51bV90cmlhbHM7IGlk
eCsrKSB7Ci0gICAgZXJyID0gcmRiX2NoZWNrX2V4cGVjdF9mYWlsdXJlKCZyZGIsIGlkeCk7Ci0g
ICAgaWYgKGVycikgCi0gICAgICByZXR1cm4gZXJyOwotICB9Ci0KLSAgLyogcmUtaW5pdGlhbGl6
ZSAqLwotICBpZiAoc3J0cF9yZGJfaW5pdCgmcmRiKSAhPSBzcnRwX2Vycl9zdGF0dXNfb2spIHsK
LSAgICBwcmludGYoInJkYl9pbml0IGZhaWxlZFxuIik7Ci0gICAgcmV0dXJuIHNydHBfZXJyX3N0
YXR1c19mYWlsOwotICB9Ci0KLSAgLyogdGVzdCBub24tc2VxdWVudGlhbCBpbnNlcnRpb24gKi8K
LSAgdXRfaW5pdCgmdXRjKTsKLSAgCi0gIGZvciAoaWR4PTA7IGlkeCA8IG51bV90cmlhbHM7IGlk
eCsrKSB7Ci0gICAgaXJjdmQgPSB1dF9uZXh0X2luZGV4KCZ1dGMpOwotICAgIGVyciA9IHJkYl9j
aGVja19hZGRfdW5vcmRlcmVkKCZyZGIsIGlyY3ZkKTsKLSAgICBpZiAoZXJyKSAKLSAgICAgIHJl
dHVybiBlcnI7Ci0gICAgZXJyID0gcmRiX2NoZWNrX2V4cGVjdF9mYWlsdXJlKCZyZGIsIGlyY3Zk
KTsKLSAgICBpZiAoZXJyKSAKLSAgICAgIHJldHVybiBlcnI7Ci0gIH0KLQotICAvKiByZS1pbml0
aWFsaXplICovCi0gIGlmIChzcnRwX3JkYl9pbml0KCZyZGIpICE9IHNydHBfZXJyX3N0YXR1c19v
aykgewotICAgIHByaW50ZigicmRiX2luaXQgZmFpbGVkXG4iKTsKLSAgICByZXR1cm4gc3J0cF9l
cnJfc3RhdHVzX2ZhaWw7Ci0gIH0KLQotICAvKiB0ZXN0IGluc2VydGlvbiB3aXRoIGxhcmdlIGdh
cHMgKi8KLSAgZm9yIChpZHg9MCwgaXJjdmQ9MDsgaWR4IDwgbnVtX3RyaWFsczsgaWR4KyssIGly
Y3ZkICs9ICgxIDw8IChyYW5kKCkgJSAxMCkpKSB7Ci0gICAgZXJyID0gcmRiX2NoZWNrX2FkZCgm
cmRiLCBpcmN2ZCk7Ci0gICAgaWYgKGVycikKLSAgICAgIHJldHVybiBlcnI7Ci0gICAgZXJyID0g
cmRiX2NoZWNrX2V4cGVjdF9mYWlsdXJlKCZyZGIsIGlyY3ZkKTsKLSAgICBpZiAoZXJyKQotICAg
ICAgcmV0dXJuIGVycjsKLSAgfQotCi0gIC8qIHJlLWluaXRpYWxpemUgKi8KLSAgaWYgKHNydHBf
cmRiX2luaXQoJnJkYikgIT0gc3J0cF9lcnJfc3RhdHVzX29rKSB7Ci0gICAgcHJpbnRmKCJyZGJf
aW5pdCBmYWlsZWRcbiIpOwotICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfZmFpbDsKLSAgfQot
Ci0gIC8qIHRlc3QgbG9zcyBvZiBmaXJzdCA1MTMgcGFja2V0cyAqLwotICBmb3IgKGlkeD0wOyBp
ZHggPCBudW1fdHJpYWxzOyBpZHgrKykgewotICAgIGVyciA9IHJkYl9jaGVja19hZGQoJnJkYiwg
aWR4ICsgNTEzKTsKLSAgICBpZiAoZXJyKSAKLSAgICAgIHJldHVybiBlcnI7Ci0gIH0KLQotICAv
KiB0ZXN0IGZvciBmYWxzZSBwb3NpdGl2ZXMgKi8KLSAgZm9yIChpZHg9MDsgaWR4IDwgbnVtX3Ry
aWFscyArIDUxMzsgaWR4KyspIHsKLSAgICBlcnIgPSByZGJfY2hlY2tfZXhwZWN0X2ZhaWx1cmUo
JnJkYiwgaWR4KTsKLSAgICBpZiAoZXJyKSAKLSAgICAgIHJldHVybiBlcnI7Ci0gIH0KLQotICAv
KiB0ZXN0IGZvciBrZXkgZXhwaXJlZCAqLwotICBpZiAoc3J0cF9yZGJfaW5pdCgmcmRiKSAhPSBz
cnRwX2Vycl9zdGF0dXNfb2spIHsKLSAgICBwcmludGYoInJkYl9pbml0IGZhaWxlZFxuIik7Ci0g
ICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19mYWlsOwotICB9Ci0gIHJkYi53aW5kb3dfc3RhcnQg
PSAweDdmZmZmZmZlOwotICBpZiAoc3J0cF9yZGJfaW5jcmVtZW50KCZyZGIpICE9IHNydHBfZXJy
X3N0YXR1c19vaykgewotICAgIHByaW50Zigic3J0cF9yZGJfaW5jcmVtZW50IG9mIDB4N2ZmZmZm
ZmUgZmFpbGVkXG4iKTsKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7Ci0gIH0KLSAg
aWYgKHNydHBfcmRiX2dldF92YWx1ZSgmcmRiKSAhPSAweDdmZmZmZmZmKSB7Ci0gICAgcHJpbnRm
KCJyZGIgdmFsaXVlIHdhcyBub3QgMHg3ZmZmZmZmZlxuIik7Ci0gICAgcmV0dXJuIHNydHBfZXJy
X3N0YXR1c19mYWlsOwotICB9Ci0gIGlmIChzcnRwX3JkYl9pbmNyZW1lbnQoJnJkYikgIT0gc3J0
cF9lcnJfc3RhdHVzX2tleV9leHBpcmVkKSB7Ci0gICAgcHJpbnRmKCJzcnRwX3JkYl9pbmNyZW1l
bnQgb2YgMHg3ZmZmZmZmZiBkaWQgbm90IHJldHVybiBzcnRwX2Vycl9zdGF0dXNfa2V5X2V4cGly
ZWRcbiIpOwotICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfZmFpbDsKLSAgfQotICBpZiAoc3J0
cF9yZGJfZ2V0X3ZhbHVlKCZyZGIpICE9IDB4N2ZmZmZmZmYpIHsKLSAgICBwcmludGYoInJkYiB2
YWxpdWUgd2FzIG5vdCAweDdmZmZmZmZmXG4iKTsKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVz
X2ZhaWw7Ci0gIH0KLQotCi0gIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CitzcnRwX2Vycl9z
dGF0dXNfdCB0ZXN0X3JkYl9kYigpCit7CisgICAgc3J0cF9yZGJfdCByZGI7CisgICAgdWludDMy
X3QgaWR4LCBpcmN2ZDsKKyAgICB1dF9jb25uZWN0aW9uIHV0YzsKKyAgICBzcnRwX2Vycl9zdGF0
dXNfdCBlcnI7CisKKyAgICBpZiAoc3J0cF9yZGJfaW5pdCgmcmRiKSAhPSBzcnRwX2Vycl9zdGF0
dXNfb2spIHsKKyAgICAgICAgcHJpbnRmKCJyZGJfaW5pdCBmYWlsZWRcbiIpOworICAgICAgICBy
ZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2luaXRfZmFpbDsKKyAgICB9CisKKyAgICAvKiB0ZXN0IHNl
cXVlbnRpYWwgaW5zZXJ0aW9uICovCisgICAgZm9yIChpZHggPSAwOyBpZHggPCBudW1fdHJpYWxz
OyBpZHgrKykgeworICAgICAgICBlcnIgPSByZGJfY2hlY2tfYWRkKCZyZGIsIGlkeCk7CisgICAg
ICAgIGlmIChlcnIpCisgICAgICAgICAgICByZXR1cm4gZXJyOworICAgIH0KKworICAgIC8qIHRl
c3QgZm9yIGZhbHNlIHBvc2l0aXZlcyAqLworICAgIGZvciAoaWR4ID0gMDsgaWR4IDwgbnVtX3Ry
aWFsczsgaWR4KyspIHsKKyAgICAgICAgZXJyID0gcmRiX2NoZWNrX2V4cGVjdF9mYWlsdXJlKCZy
ZGIsIGlkeCk7CisgICAgICAgIGlmIChlcnIpCisgICAgICAgICAgICByZXR1cm4gZXJyOworICAg
IH0KKworICAgIC8qIHJlLWluaXRpYWxpemUgKi8KKyAgICBpZiAoc3J0cF9yZGJfaW5pdCgmcmRi
KSAhPSBzcnRwX2Vycl9zdGF0dXNfb2spIHsKKyAgICAgICAgcHJpbnRmKCJyZGJfaW5pdCBmYWls
ZWRcbiIpOworICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7CisgICAgfQorCisg
ICAgLyogdGVzdCBub24tc2VxdWVudGlhbCBpbnNlcnRpb24gKi8KKyAgICB1dF9pbml0KCZ1dGMp
OworCisgICAgZm9yIChpZHggPSAwOyBpZHggPCBudW1fdHJpYWxzOyBpZHgrKykgeworICAgICAg
ICBpcmN2ZCA9IHV0X25leHRfaW5kZXgoJnV0Yyk7CisgICAgICAgIGVyciA9IHJkYl9jaGVja19h
ZGRfdW5vcmRlcmVkKCZyZGIsIGlyY3ZkKTsKKyAgICAgICAgaWYgKGVycikKKyAgICAgICAgICAg
IHJldHVybiBlcnI7CisgICAgICAgIGVyciA9IHJkYl9jaGVja19leHBlY3RfZmFpbHVyZSgmcmRi
LCBpcmN2ZCk7CisgICAgICAgIGlmIChlcnIpCisgICAgICAgICAgICByZXR1cm4gZXJyOworICAg
IH0KKworICAgIC8qIHJlLWluaXRpYWxpemUgKi8KKyAgICBpZiAoc3J0cF9yZGJfaW5pdCgmcmRi
KSAhPSBzcnRwX2Vycl9zdGF0dXNfb2spIHsKKyAgICAgICAgcHJpbnRmKCJyZGJfaW5pdCBmYWls
ZWRcbiIpOworICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7CisgICAgfQorCisg
ICAgLyogdGVzdCBpbnNlcnRpb24gd2l0aCBsYXJnZSBnYXBzICovCisgICAgZm9yIChpZHggPSAw
LCBpcmN2ZCA9IDA7IGlkeCA8IG51bV90cmlhbHM7CisgICAgICAgICBpZHgrKywgaXJjdmQgKz0g
KDEgPDwgKHJhbmQoKSAlIDEwKSkpIHsKKyAgICAgICAgZXJyID0gcmRiX2NoZWNrX2FkZCgmcmRi
LCBpcmN2ZCk7CisgICAgICAgIGlmIChlcnIpCisgICAgICAgICAgICByZXR1cm4gZXJyOworICAg
ICAgICBlcnIgPSByZGJfY2hlY2tfZXhwZWN0X2ZhaWx1cmUoJnJkYiwgaXJjdmQpOworICAgICAg
ICBpZiAoZXJyKQorICAgICAgICAgICAgcmV0dXJuIGVycjsKKyAgICB9CisKKyAgICAvKiByZS1p
bml0aWFsaXplICovCisgICAgaWYgKHNydHBfcmRiX2luaXQoJnJkYikgIT0gc3J0cF9lcnJfc3Rh
dHVzX29rKSB7CisgICAgICAgIHByaW50ZigicmRiX2luaXQgZmFpbGVkXG4iKTsKKyAgICAgICAg
cmV0dXJuIHNydHBfZXJyX3N0YXR1c19mYWlsOworICAgIH0KKworICAgIC8qIHRlc3QgbG9zcyBv
ZiBmaXJzdCA1MTMgcGFja2V0cyAqLworICAgIGZvciAoaWR4ID0gMDsgaWR4IDwgbnVtX3RyaWFs
czsgaWR4KyspIHsKKyAgICAgICAgZXJyID0gcmRiX2NoZWNrX2FkZCgmcmRiLCBpZHggKyA1MTMp
OworICAgICAgICBpZiAoZXJyKQorICAgICAgICAgICAgcmV0dXJuIGVycjsKKyAgICB9CisKKyAg
ICAvKiB0ZXN0IGZvciBmYWxzZSBwb3NpdGl2ZXMgKi8KKyAgICBmb3IgKGlkeCA9IDA7IGlkeCA8
IG51bV90cmlhbHMgKyA1MTM7IGlkeCsrKSB7CisgICAgICAgIGVyciA9IHJkYl9jaGVja19leHBl
Y3RfZmFpbHVyZSgmcmRiLCBpZHgpOworICAgICAgICBpZiAoZXJyKQorICAgICAgICAgICAgcmV0
dXJuIGVycjsKKyAgICB9CisKKyAgICAvKiB0ZXN0IGZvciBrZXkgZXhwaXJlZCAqLworICAgIGlm
IChzcnRwX3JkYl9pbml0KCZyZGIpICE9IHNydHBfZXJyX3N0YXR1c19vaykgeworICAgICAgICBw
cmludGYoInJkYl9pbml0IGZhaWxlZFxuIik7CisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0
dXNfZmFpbDsKKyAgICB9CisgICAgcmRiLndpbmRvd19zdGFydCA9IDB4N2ZmZmZmZmU7CisgICAg
aWYgKHNydHBfcmRiX2luY3JlbWVudCgmcmRiKSAhPSBzcnRwX2Vycl9zdGF0dXNfb2spIHsKKyAg
ICAgICAgcHJpbnRmKCJzcnRwX3JkYl9pbmNyZW1lbnQgb2YgMHg3ZmZmZmZmZSBmYWlsZWRcbiIp
OworICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7CisgICAgfQorICAgIGlmIChz
cnRwX3JkYl9nZXRfdmFsdWUoJnJkYikgIT0gMHg3ZmZmZmZmZikgeworICAgICAgICBwcmludGYo
InJkYiB2YWxpdWUgd2FzIG5vdCAweDdmZmZmZmZmXG4iKTsKKyAgICAgICAgcmV0dXJuIHNydHBf
ZXJyX3N0YXR1c19mYWlsOworICAgIH0KKyAgICBpZiAoc3J0cF9yZGJfaW5jcmVtZW50KCZyZGIp
ICE9IHNydHBfZXJyX3N0YXR1c19rZXlfZXhwaXJlZCkgeworICAgICAgICBwcmludGYoInNydHBf
cmRiX2luY3JlbWVudCBvZiAweDdmZmZmZmZmIGRpZCBub3QgcmV0dXJuICIKKyAgICAgICAgICAg
ICAgICJzcnRwX2Vycl9zdGF0dXNfa2V5X2V4cGlyZWRcbiIpOworICAgICAgICByZXR1cm4gc3J0
cF9lcnJfc3RhdHVzX2ZhaWw7CisgICAgfQorICAgIGlmIChzcnRwX3JkYl9nZXRfdmFsdWUoJnJk
YikgIT0gMHg3ZmZmZmZmZikgeworICAgICAgICBwcmludGYoInJkYiB2YWxpdWUgd2FzIG5vdCAw
eDdmZmZmZmZmXG4iKTsKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19mYWlsOworICAg
IH0KKworICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAKLSNpbmNsdWRlIDx0aW1l
Lmg+ICAgICAgIC8qIGZvciBjbG9jaygpICAqLwotI2luY2x1ZGUgPHN0ZGxpYi5oPiAgICAgLyog
Zm9yIHJhbmRvbSgpICovCisjaW5jbHVkZSA8dGltZS5oPiAgIC8qIGZvciBjbG9jaygpICAqLwor
I2luY2x1ZGUgPHN0ZGxpYi5oPiAvKiBmb3IgcmFuZG9tKCkgKi8KIAogI2RlZmluZSBSRVBMQVlf
TlVNX1RSSUFMUyAxMDAwMDAwMAogCi1kb3VibGUKLXJkYl9jaGVja19hZGRzX3Blcl9zZWNvbmQo
dm9pZCkgewotICB1aW50MzJfdCBpOwotICBzcnRwX3JkYl90IHJkYjsKLSAgY2xvY2tfdCB0aW1l
cjsKLSAgaW50IGZhaWx1cmVzID0gMDsgICAgICAgICAgICAgICAgICAgIC8qIGNvdW50IG51bWJl
ciBvZiBmYWlsdXJlcyAgICAgICAgKi8KLSAgCi0gIGlmIChzcnRwX3JkYl9pbml0KCZyZGIpICE9
IHNydHBfZXJyX3N0YXR1c19vaykgewotICAgIHByaW50ZigicmRiX2luaXQgZmFpbGVkXG4iKTsK
LSAgICBleGl0KDEpOwotICB9ICAKLQotICB0aW1lciA9IGNsb2NrKCk7Ci0gIGZvcihpPTA7IGkg
PCBSRVBMQVlfTlVNX1RSSUFMUzsgaSs9MykgewotICAgIGlmIChzcnRwX3JkYl9jaGVjaygmcmRi
LCBpKzIpICE9IHNydHBfZXJyX3N0YXR1c19vaykKLSAgICAgICsrZmFpbHVyZXM7Ci0gICAgaWYg
KHNydHBfcmRiX2FkZF9pbmRleCgmcmRiLCBpKzIpICE9IHNydHBfZXJyX3N0YXR1c19vaykKLSAg
ICAgICsrZmFpbHVyZXM7Ci0gICAgaWYgKHNydHBfcmRiX2NoZWNrKCZyZGIsIGkrMSkgIT0gc3J0
cF9lcnJfc3RhdHVzX29rKQotICAgICAgKytmYWlsdXJlczsKLSAgICBpZiAoc3J0cF9yZGJfYWRk
X2luZGV4KCZyZGIsIGkrMSkgIT0gc3J0cF9lcnJfc3RhdHVzX29rKQotICAgICAgKytmYWlsdXJl
czsKLSAgICBpZiAoc3J0cF9yZGJfY2hlY2soJnJkYiwgaSkgIT0gc3J0cF9lcnJfc3RhdHVzX29r
KQotICAgICAgKytmYWlsdXJlczsKLSAgICBpZiAoc3J0cF9yZGJfYWRkX2luZGV4KCZyZGIsIGkp
ICE9IHNydHBfZXJyX3N0YXR1c19vaykKLSAgICAgICsrZmFpbHVyZXM7Ci0gIH0KLSAgdGltZXIg
PSBjbG9jaygpIC0gdGltZXI7Ci0KLSAgcmV0dXJuIChkb3VibGUpIENMT0NLU19QRVJfU0VDICog
UkVQTEFZX05VTV9UUklBTFMgLyB0aW1lcjsKK2RvdWJsZSByZGJfY2hlY2tfYWRkc19wZXJfc2Vj
b25kKHZvaWQpCit7CisgICAgdWludDMyX3QgaTsKKyAgICBzcnRwX3JkYl90IHJkYjsKKyAgICBj
bG9ja190IHRpbWVyOworICAgIGludCBmYWlsdXJlcyA9IDA7IC8qIGNvdW50IG51bWJlciBvZiBm
YWlsdXJlcyAgICAgICAgKi8KKworICAgIGlmIChzcnRwX3JkYl9pbml0KCZyZGIpICE9IHNydHBf
ZXJyX3N0YXR1c19vaykgeworICAgICAgICBwcmludGYoInJkYl9pbml0IGZhaWxlZFxuIik7Cisg
ICAgICAgIGV4aXQoMSk7CisgICAgfQorCisgICAgdGltZXIgPSBjbG9jaygpOworICAgIGZvciAo
aSA9IDA7IGkgPCBSRVBMQVlfTlVNX1RSSUFMUzsgaSArPSAzKSB7CisgICAgICAgIGlmIChzcnRw
X3JkYl9jaGVjaygmcmRiLCBpICsgMikgIT0gc3J0cF9lcnJfc3RhdHVzX29rKQorICAgICAgICAg
ICAgKytmYWlsdXJlczsKKyAgICAgICAgaWYgKHNydHBfcmRiX2FkZF9pbmRleCgmcmRiLCBpICsg
MikgIT0gc3J0cF9lcnJfc3RhdHVzX29rKQorICAgICAgICAgICAgKytmYWlsdXJlczsKKyAgICAg
ICAgaWYgKHNydHBfcmRiX2NoZWNrKCZyZGIsIGkgKyAxKSAhPSBzcnRwX2Vycl9zdGF0dXNfb2sp
CisgICAgICAgICAgICArK2ZhaWx1cmVzOworICAgICAgICBpZiAoc3J0cF9yZGJfYWRkX2luZGV4
KCZyZGIsIGkgKyAxKSAhPSBzcnRwX2Vycl9zdGF0dXNfb2spCisgICAgICAgICAgICArK2ZhaWx1
cmVzOworICAgICAgICBpZiAoc3J0cF9yZGJfY2hlY2soJnJkYiwgaSkgIT0gc3J0cF9lcnJfc3Rh
dHVzX29rKQorICAgICAgICAgICAgKytmYWlsdXJlczsKKyAgICAgICAgaWYgKHNydHBfcmRiX2Fk
ZF9pbmRleCgmcmRiLCBpKSAhPSBzcnRwX2Vycl9zdGF0dXNfb2spCisgICAgICAgICAgICArK2Zh
aWx1cmVzOworICAgIH0KKyAgICB0aW1lciA9IGNsb2NrKCkgLSB0aW1lcjsKKworICAgIHJldHVy
biAoZG91YmxlKUNMT0NLU19QRVJfU0VDICogUkVQTEFZX05VTV9UUklBTFMgLyB0aW1lcjsKIH0K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFy
dHkvbGlic3J0cC90ZXN0L3JvY19kcml2ZXIuYyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0
Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC90ZXN0L3JvY19kcml2ZXIuYwppbmRleCBjMjMx
MTNhZGM5ODM2MjZkMWZhY2VlNjBlMTNlMzRmNmU5NDYxNGY5Li5kNjFiYThlZjI0ZWEyMmY2NmJi
OTgzNzczYWE2NjYyZjQ3ZjRmYjM3IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3
ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvdGVzdC9yb2NfZHJpdmVyLmMKKysrIGIv
U291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL3Rl
c3Qvcm9jX2RyaXZlci5jCkBAIC04LDI2ICs4LDI2IEBACiAgKi8KIAogLyoKLSAqCQorICoKICAq
IENvcHlyaWdodCAoYykgMjAwMS0yMDE3LCBDaXNjbyBTeXN0ZW1zLCBJbmMuCiAgKiBBbGwgcmln
aHRzIHJlc2VydmVkLgotICogCisgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKICAqIGFy
ZSBtZXQ6Ci0gKiAKKyAqCiAgKiAgIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0
IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CiAgKiAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIAorICoKICAqICAgUmVk
aXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQogICog
ICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZwogICogICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBt
YXRlcmlhbHMgcHJvdmlkZWQKICAqICAgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICogCisgKgog
ICogICBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBDaXNjbyBTeXN0ZW1zLCBJbmMuIG5vciB0aGUg
bmFtZXMgb2YgaXRzCiAgKiAgIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9y
IHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZAogICogICBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91
dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0gKiAKKyAqCiAgKiBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVU
T1JTCiAgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElO
Q0xVRElORywgQlVUIE5PVAogICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBP
RiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKQEAgLTQzLDkgKzQzLDggQEAKICAqCiAgKi8K
IAotCiAjaWZkZWYgSEFWRV9DT05GSUdfSAotICAgICNpbmNsdWRlIDxjb25maWcuaD4KKyNpbmNs
dWRlIDxjb25maWcuaD4KICNlbmRpZgogCiAjaW5jbHVkZSA8c3RkaW8uaD4KQEAgLTU1LDEyMSAr
NTQsMTE3IEBACiAgKiBzcnRwX3h0ZF9zZXFfbnVtX3QgLSB0aGlzIGFsbG93cyB0aGUgZnVuY3Rp
b25zIHRvIGJlIGV4aGF1c3RpdmVseSB0ZXN0ZWQuCiAgKi8KICNpZiBST0NfTkVFRFNfVE9fQkVf
VEVTVEVECi0jZGVmaW5lIFJPQ19URVNUICAgICAKKyNkZWZpbmUgUk9DX1RFU1QKICNlbmRpZgog
CiAjaW5jbHVkZSAicmRieC5oIgogI2luY2x1ZGUgInV0X3NpbS5oIgogCi1zcnRwX2Vycl9zdGF0
dXNfdAotcm9jX3Rlc3QoaW50IG51bV90cmlhbHMpOwotCi1pbnQKLW1haW4gKHZvaWQpIHsKLSAg
c3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVzOwotCi0gIHByaW50Zigicm9sbG92ZXIgY291bnRlciB0
ZXN0IGRyaXZlclxuIgotCSAiRGF2aWQgQS4gTWNHcmV3XG4iCi0JICJDaXNjbyBTeXN0ZW1zLCBJ
bmMuXG4iKTsKLSAgCi0gIHByaW50ZigidGVzdGluZyBpbmRleCBmdW5jdGlvbnMuLi4iKTsKLSAg
c3RhdHVzID0gcm9jX3Rlc3QoMSA8PCAxOCk7Ci0gIGlmIChzdGF0dXMpIHsKLSAgICBwcmludGYo
ImZhaWxlZFxuIik7Ci0gICAgZXhpdChzdGF0dXMpOwotICB9Ci0gIHByaW50ZigicGFzc2VkXG4i
KTsKLSAgcmV0dXJuIDA7Ci19CitzcnRwX2Vycl9zdGF0dXNfdCByb2NfdGVzdChpbnQgbnVtX3Ry
aWFscyk7CisKK2ludCBtYWluKHZvaWQpCit7CisgICAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVz
OwogCisgICAgcHJpbnRmKCJyb2xsb3ZlciBjb3VudGVyIHRlc3QgZHJpdmVyXG4iCisgICAgICAg
ICAgICJEYXZpZCBBLiBNY0dyZXdcbiIKKyAgICAgICAgICAgIkNpc2NvIFN5c3RlbXMsIEluYy5c
biIpOworCisgICAgcHJpbnRmKCJ0ZXN0aW5nIGluZGV4IGZ1bmN0aW9ucy4uLiIpOworICAgIHN0
YXR1cyA9IHJvY190ZXN0KDEgPDwgMTgpOworICAgIGlmIChzdGF0dXMpIHsKKyAgICAgICAgcHJp
bnRmKCJmYWlsZWRcbiIpOworICAgICAgICBleGl0KHN0YXR1cyk7CisgICAgfQorICAgIHByaW50
ZigicGFzc2VkXG4iKTsKKyAgICByZXR1cm4gMDsKK30KIAogI2RlZmluZSBST0NfVkVSQk9TRSAw
CiAKLXNydHBfZXJyX3N0YXR1c190Ci1yb2NfdGVzdChpbnQgbnVtX3RyaWFscykgewotICBzcnRw
X3h0ZF9zZXFfbnVtX3QgbG9jYWwsIGVzdCwgcmVmOwotICB1dF9jb25uZWN0aW9uIHV0YzsKLSAg
aW50IGksIG51bV9iYWRfZXN0ID0gMDsKLSAgaW50IGRlbHRhOwotICB1aW50MzJfdCBpcmN2ZDsK
LSAgZG91YmxlIGZhaWx1cmVfcmF0ZTsKLQotICBzcnRwX2luZGV4X2luaXQoJmxvY2FsKTsKLSAg
c3J0cF9pbmRleF9pbml0KCZyZWYpOwotICBzcnRwX2luZGV4X2luaXQoJmVzdCk7Ci0KLSAgcHJp
bnRmKCJcblx0dGVzdGluZyBzZXF1ZW50aWFsIGluc2VydGlvbi4uLiIpOwotICBmb3IgKGk9MDsg
aSA8IDIwNDg7IGkrKykgewotICAgIGRlbHRhID0gc3J0cF9pbmRleF9ndWVzcygmbG9jYWwsICZl
c3QsICh1aW50MTZfdCkgcmVmKTsKK3NydHBfZXJyX3N0YXR1c190IHJvY190ZXN0KGludCBudW1f
dHJpYWxzKQoreworICAgIHNydHBfeHRkX3NlcV9udW1fdCBsb2NhbCwgZXN0LCByZWY7CisgICAg
dXRfY29ubmVjdGlvbiB1dGM7CisgICAgaW50IGksIG51bV9iYWRfZXN0ID0gMDsKKyAgICBpbnQg
ZGVsdGE7CisgICAgdWludDMyX3QgaXJjdmQ7CisgICAgZG91YmxlIGZhaWx1cmVfcmF0ZTsKKwor
ICAgIHNydHBfaW5kZXhfaW5pdCgmbG9jYWwpOworICAgIHNydHBfaW5kZXhfaW5pdCgmcmVmKTsK
KyAgICBzcnRwX2luZGV4X2luaXQoJmVzdCk7CisKKyAgICBwcmludGYoIlxuXHR0ZXN0aW5nIHNl
cXVlbnRpYWwgaW5zZXJ0aW9uLi4uIik7CisgICAgZm9yIChpID0gMDsgaSA8IDIwNDg7IGkrKykg
eworICAgICAgICBkZWx0YSA9IHNydHBfaW5kZXhfZ3Vlc3MoJmxvY2FsLCAmZXN0LCAodWludDE2
X3QpcmVmKTsKICNpZiBST0NfVkVSQk9TRQotICAgIHByaW50ZigiJWxsZCwgJWxsZCwgJWRcbiIs
IHJlZiwgZXN0LCAgaSk7CisgICAgICAgIHByaW50ZigiJWxsZCwgJWxsZCwgJWRcbiIsIHJlZiwg
ZXN0LCBpKTsKICNlbmRpZgotICAgIGlmIChyZWYgIT0gZXN0KSB7CisgICAgICAgIGlmIChyZWYg
IT0gZXN0KSB7CiAjaWYgUk9DX1ZFUkJPU0UKLSAgICAgIHByaW50ZigiICpiYWQgZXN0aW1hdGUq
XG4iKTsKKyAgICAgICAgICAgIHByaW50ZigiICpiYWQgZXN0aW1hdGUqXG4iKTsKICNlbmRpZgot
ICAgICAgKytudW1fYmFkX2VzdDsKKyAgICAgICAgICAgICsrbnVtX2JhZF9lc3Q7CisgICAgICAg
IH0KKyAgICAgICAgc3J0cF9pbmRleF9hZHZhbmNlKCZyZWYsIDEpOworICAgIH0KKyAgICBmYWls
dXJlX3JhdGUgPSAoZG91YmxlKW51bV9iYWRfZXN0IC8gbnVtX3RyaWFsczsKKyAgICBpZiAoZmFp
bHVyZV9yYXRlID4gMC4wMSkgeworICAgICAgICBwcmludGYoImVycm9yOiBmYWlsdXJlIHJhdGUg
dG9vIGhpZ2ggKCVkIGJhZCBlc3RpbWF0ZXMgaW4gJWQgdHJpYWxzKVxuIiwKKyAgICAgICAgICAg
ICAgIG51bV9iYWRfZXN0LCBudW1fdHJpYWxzKTsKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0
YXR1c19hbGdvX2ZhaWw7CiAgICAgfQotICAgIHNydHBfaW5kZXhfYWR2YW5jZSgmcmVmLCAxKTsK
LSAgfQotICBmYWlsdXJlX3JhdGUgPSAoZG91YmxlKSBudW1fYmFkX2VzdCAvIG51bV90cmlhbHM7
Ci0gIGlmIChmYWlsdXJlX3JhdGUgPiAwLjAxKSB7Ci0gICAgcHJpbnRmKCJlcnJvcjogZmFpbHVy
ZSByYXRlIHRvbyBoaWdoICglZCBiYWQgZXN0aW1hdGVzIGluICVkIHRyaWFscylcbiIsIAotCSAg
IG51bV9iYWRfZXN0LCBudW1fdHJpYWxzKTsKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2Fs
Z29fZmFpbDsKLSAgfQotICBwcmludGYoImRvbmVcbiIpOwotCi0KLSAgcHJpbnRmKCJcdHRlc3Rp
bmcgbm9uLXNlcXVlbnRpYWwgaW5zZXJ0aW9uLi4uIik7Ci0gIHNydHBfaW5kZXhfaW5pdCgmbG9j
YWwpOwotICBzcnRwX2luZGV4X2luaXQoJnJlZik7Ci0gIHNydHBfaW5kZXhfaW5pdCgmZXN0KTsK
LSAgdXRfaW5pdCgmdXRjKTsKLSAgCi0gIGZvciAoaT0wOyBpIDwgbnVtX3RyaWFsczsgaSsrKSB7
Ci0gICAgCi0gICAgLyogZ2V0IG5leHQgc2VxIG51bSBmcm9tIHVucmVsaWFibGUgdHJhbnNwb3J0
IHNpbXVsYXRvciAqLwotICAgIGlyY3ZkID0gdXRfbmV4dF9pbmRleCgmdXRjKTsKLSAgICAKLSAg
ICAvKiBzZXQgcmVmIHRvIHZhbHVlIG9mIGlyY3ZkICovCi0gICAgcmVmID0gaXJjdmQ7IAotCi0g
ICAgLyogZXN0aW1hdGUgaW5kZXggYmFzZWQgb24gbG93IGJpdHMgb2YgaXJjdmQgKi8KLSAgICBk
ZWx0YSA9IHNydHBfaW5kZXhfZ3Vlc3MoJmxvY2FsLCAmZXN0LCAodWludDE2X3QpIHJlZik7Cisg
ICAgcHJpbnRmKCJkb25lXG4iKTsKKworICAgIHByaW50ZigiXHR0ZXN0aW5nIG5vbi1zZXF1ZW50
aWFsIGluc2VydGlvbi4uLiIpOworICAgIHNydHBfaW5kZXhfaW5pdCgmbG9jYWwpOworICAgIHNy
dHBfaW5kZXhfaW5pdCgmcmVmKTsKKyAgICBzcnRwX2luZGV4X2luaXQoJmVzdCk7CisgICAgdXRf
aW5pdCgmdXRjKTsKKworICAgIGZvciAoaSA9IDA7IGkgPCBudW1fdHJpYWxzOyBpKyspIHsKKyAg
ICAgICAgLyogZ2V0IG5leHQgc2VxIG51bSBmcm9tIHVucmVsaWFibGUgdHJhbnNwb3J0IHNpbXVs
YXRvciAqLworICAgICAgICBpcmN2ZCA9IHV0X25leHRfaW5kZXgoJnV0Yyk7CisKKyAgICAgICAg
Lyogc2V0IHJlZiB0byB2YWx1ZSBvZiBpcmN2ZCAqLworICAgICAgICByZWYgPSBpcmN2ZDsKKwor
ICAgICAgICAvKiBlc3RpbWF0ZSBpbmRleCBiYXNlZCBvbiBsb3cgYml0cyBvZiBpcmN2ZCAqLwor
ICAgICAgICBkZWx0YSA9IHNydHBfaW5kZXhfZ3Vlc3MoJmxvY2FsLCAmZXN0LCAodWludDE2X3Qp
cmVmKTsKICNpZiBST0NfVkVSQk9TRQotICAgIHByaW50ZigicmVmOiAlbGxkLCBsb2NhbDogJWxs
ZCwgZXN0OiAlbGxkLCBpcmN2ZDogJWQsIGRlbHRhOiAlZFxuIiwgCi0JICAgcmVmLCBsb2NhbCwg
ZXN0LCBpcmN2ZCwgZGVsdGEpOworICAgICAgICBwcmludGYoInJlZjogJWxsZCwgbG9jYWw6ICVs
bGQsIGVzdDogJWxsZCwgaXJjdmQ6ICVkLCBkZWx0YTogJWRcbiIsIHJlZiwKKyAgICAgICAgICAg
ICAgIGxvY2FsLCBlc3QsIGlyY3ZkLCBkZWx0YSk7CiAjZW5kaWYKLSAgICAKLSAgICBpZiAobG9j
YWwgKyBkZWx0YSAhPSBlc3QpIHsKLSAgICAgIHByaW50ZigiICpiYWQgZGVsdGEqOiBsb2NhbCAl
bGx1ICsgZGVsdGEgJWQgIT0gZXN0ICVsbHVcbiIsCi0JICAgICAodW5zaWduZWQgbG9uZyBsb25n
KWxvY2FsLCBkZWx0YSwgKHVuc2lnbmVkIGxvbmcgbG9uZyllc3QpOwotICAgICAgcmV0dXJuIHNy
dHBfZXJyX3N0YXR1c19hbGdvX2ZhaWw7Ci0gICAgfQogCi0gICAgLyogbm93IHVwZGF0ZSBsb2Nh
bCBzcnRwX3h0ZF9zZXFfbnVtX3QgYXMgbmVjZXNzYXJ5ICovCi0gICAgaWYgKGRlbHRhID4gMCkg
Ci0gICAgICBzcnRwX2luZGV4X2FkdmFuY2UoJmxvY2FsLCBkZWx0YSk7CisgICAgICAgIGlmIChs
b2NhbCArIGRlbHRhICE9IGVzdCkgeworICAgICAgICAgICAgcHJpbnRmKCIgKmJhZCBkZWx0YSo6
IGxvY2FsICVsbHUgKyBkZWx0YSAlZCAhPSBlc3QgJWxsdVxuIiwKKyAgICAgICAgICAgICAgICAg
ICAodW5zaWduZWQgbG9uZyBsb25nKWxvY2FsLCBkZWx0YSwgKHVuc2lnbmVkIGxvbmcgbG9uZyll
c3QpOworICAgICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19hbGdvX2ZhaWw7CisgICAg
ICAgIH0KKworICAgICAgICAvKiBub3cgdXBkYXRlIGxvY2FsIHNydHBfeHRkX3NlcV9udW1fdCBh
cyBuZWNlc3NhcnkgKi8KKyAgICAgICAgaWYgKGRlbHRhID4gMCkKKyAgICAgICAgICAgIHNydHBf
aW5kZXhfYWR2YW5jZSgmbG9jYWwsIGRlbHRhKTsKIAotICAgIGlmIChyZWYgIT0gZXN0KSB7Cisg
ICAgICAgIGlmIChyZWYgIT0gZXN0KSB7CiAjaWYgUk9DX1ZFUkJPU0UKLSAgICAgIHByaW50Zigi
ICpiYWQgZXN0aW1hdGUqXG4iKTsKKyAgICAgICAgICAgIHByaW50ZigiICpiYWQgZXN0aW1hdGUq
XG4iKTsKICNlbmRpZgotICAgICAgLyogcmVjb3JkIGZhaWx1cmUgZXZlbnQgKi8KLSAgICAgICsr
bnVtX2JhZF9lc3Q7Ci0gICAgICAKLSAgICAgIC8qIHJlc2V0IGxvY2FsIHZhbHVlIHRvIGNvcnJl
Y3QgdmFsdWUgKi8KLSAgICAgIGxvY2FsID0gcmVmOworICAgICAgICAgICAgLyogcmVjb3JkIGZh
aWx1cmUgZXZlbnQgKi8KKyAgICAgICAgICAgICsrbnVtX2JhZF9lc3Q7CisKKyAgICAgICAgICAg
IC8qIHJlc2V0IGxvY2FsIHZhbHVlIHRvIGNvcnJlY3QgdmFsdWUgKi8KKyAgICAgICAgICAgIGxv
Y2FsID0gcmVmOworICAgICAgICB9CiAgICAgfQotICB9Ci0gIGZhaWx1cmVfcmF0ZSA9IChkb3Vi
bGUpIG51bV9iYWRfZXN0IC8gbnVtX3RyaWFsczsKLSAgaWYgKGZhaWx1cmVfcmF0ZSA+IDAuMDEp
IHsKLSAgICBwcmludGYoImVycm9yOiBmYWlsdXJlIHJhdGUgdG9vIGhpZ2ggKCVkIGJhZCBlc3Rp
bWF0ZXMgaW4gJWQgdHJpYWxzKVxuIiwgCi0JICAgbnVtX2JhZF9lc3QsIG51bV90cmlhbHMpOwot
ICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYWxnb19mYWlsOwotICB9Ci0gIHByaW50ZigiZG9u
ZVxuIik7Ci0KLSAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKKyAgICBmYWlsdXJlX3JhdGUg
PSAoZG91YmxlKW51bV9iYWRfZXN0IC8gbnVtX3RyaWFsczsKKyAgICBpZiAoZmFpbHVyZV9yYXRl
ID4gMC4wMSkgeworICAgICAgICBwcmludGYoImVycm9yOiBmYWlsdXJlIHJhdGUgdG9vIGhpZ2gg
KCVkIGJhZCBlc3RpbWF0ZXMgaW4gJWQgdHJpYWxzKVxuIiwKKyAgICAgICAgICAgICAgIG51bV9i
YWRfZXN0LCBudW1fdHJpYWxzKTsKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19hbGdv
X2ZhaWw7CisgICAgfQorICAgIHByaW50ZigiZG9uZVxuIik7CisKKyAgICByZXR1cm4gc3J0cF9l
cnJfc3RhdHVzX29rOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRj
L1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL3Rlc3QvcnRwLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvdGVzdC9ydHAuYwppbmRleCA3
NGNiOTAyMTc5NmQ1Y2Y5ZmZkODg3ODI0YTdjMzlmMGEzMzA2YjllLi5mNjBhOWIxMWIyODg1MGU2
MDI1ODAwZGM5NTgzY2FhYTQxMDg2NDhjIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9s
aWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvdGVzdC9ydHAuYworKysgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvdGVzdC9y
dHAuYwpAQCAtOCwyNiArOCwyNiBAQAogICovCiAKIC8qCi0gKgkKKyAqCiAgKiBDb3B5cmlnaHQg
KGMpIDIwMDEtMjAxNywgQ2lzY28gU3lzdGVtcywgSW5jLgogICogQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KLSAqIAorICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCiAgKiBhcmUgbWV0OgotICog
CisgKgogICogICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhl
IGFib3ZlIGNvcHlyaWdodAogICogICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAKKyAqCiAgKiAgIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKICAqICAgY29weXJpZ2h0
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcKICAqICAg
ZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHBy
b3ZpZGVkCiAgKiAgIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqIAorICoKICAqICAgTmVpdGhl
ciB0aGUgbmFtZSBvZiB0aGUgQ2lzY28gU3lzdGVtcywgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0
cwogICogICBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHBy
b2R1Y3RzIGRlcml2ZWQKICAqICAgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMg
cHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotICogCisgKgogICogVEhJUyBTT0ZUV0FSRSBJUyBQ
Uk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwogICogIkFT
IElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJV
VCBOT1QKICAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRB
QklMSVRZIEFORCBGSVRORVNTCkBAIC01MCwxNzggKzUwLDE3OCBAQAogCiAjaW5jbHVkZSA8c3lz
L3R5cGVzLmg+CiAjaWZkZWYgSEFWRV9TWVNfU09DS0VUX0gKLSMgaW5jbHVkZSA8c3lzL3NvY2tl
dC5oPgorI2luY2x1ZGUgPHN5cy9zb2NrZXQuaD4KICNlbmRpZgogCi0jZGVmaW5lIFBSSU5UX0RF
QlVHICAgIDAgICAgLyogc2V0IHRvIDEgdG8gcHJpbnQgb3V0IGRlYnVnZ2luZyBkYXRhICovCi0j
ZGVmaW5lIFZFUkJPU0VfREVCVUcgIDAgICAgLyogc2V0IHRvIDEgdG8gcHJpbnQgb3V0IG1vcmUg
ZGF0YSAgICAgICovCi0KLWludAotcnRwX3NlbmR0byhydHBfc2VuZGVyX3Qgc2VuZGVyLCBjb25z
dCB2b2lkKiBtc2csIGludCBsZW4pIHsKLSAgaW50IG9jdGV0c19zZW50OwotICBzcnRwX2Vycl9z
dGF0dXNfdCBzdGF0OwotICBpbnQgcGt0X2xlbiA9IGxlbiArIFJUUF9IRUFERVJfTEVOOwotCi0g
IC8qIG1hcnNoYWwgZGF0YSAqLwotICBzdHJuY3B5KHNlbmRlci0+bWVzc2FnZS5ib2R5LCBtc2cs
IGxlbik7Ci0gIAotICAvKiB1cGRhdGUgaGVhZGVyICovCi0gIHNlbmRlci0+bWVzc2FnZS5oZWFk
ZXIuc2VxID0gbnRvaHMoc2VuZGVyLT5tZXNzYWdlLmhlYWRlci5zZXEpICsgMTsKLSAgc2VuZGVy
LT5tZXNzYWdlLmhlYWRlci5zZXEgPSBodG9ucyhzZW5kZXItPm1lc3NhZ2UuaGVhZGVyLnNlcSk7
Ci0gIHNlbmRlci0+bWVzc2FnZS5oZWFkZXIudHMgPSBudG9obChzZW5kZXItPm1lc3NhZ2UuaGVh
ZGVyLnRzKSArIDE7Ci0gIHNlbmRlci0+bWVzc2FnZS5oZWFkZXIudHMgPSBodG9ubChzZW5kZXIt
Pm1lc3NhZ2UuaGVhZGVyLnRzKTsKLSAgCi0gIC8qIGFwcGx5IHNydHAgKi8KLSAgc3RhdCA9IHNy
dHBfcHJvdGVjdChzZW5kZXItPnNydHBfY3R4LCAmc2VuZGVyLT5tZXNzYWdlLmhlYWRlciwgJnBr
dF9sZW4pOwotICBpZiAoc3RhdCkgeworI2RlZmluZSBQUklOVF9ERUJVRyAwICAgLyogc2V0IHRv
IDEgdG8gcHJpbnQgb3V0IGRlYnVnZ2luZyBkYXRhICovCisjZGVmaW5lIFZFUkJPU0VfREVCVUcg
MCAvKiBzZXQgdG8gMSB0byBwcmludCBvdXQgbW9yZSBkYXRhICAgICAgKi8KKworaW50IHJ0cF9z
ZW5kdG8ocnRwX3NlbmRlcl90IHNlbmRlciwgY29uc3Qgdm9pZCAqbXNnLCBpbnQgbGVuKQorewor
ICAgIGludCBvY3RldHNfc2VudDsKKyAgICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0OworICAgIGlu
dCBwa3RfbGVuID0gbGVuICsgUlRQX0hFQURFUl9MRU47CisKKyAgICAvKiBtYXJzaGFsIGRhdGEg
Ki8KKyAgICBzdHJuY3B5KHNlbmRlci0+bWVzc2FnZS5ib2R5LCBtc2csIGxlbik7CisKKyAgICAv
KiB1cGRhdGUgaGVhZGVyICovCisgICAgc2VuZGVyLT5tZXNzYWdlLmhlYWRlci5zZXEgPSBudG9o
cyhzZW5kZXItPm1lc3NhZ2UuaGVhZGVyLnNlcSkgKyAxOworICAgIHNlbmRlci0+bWVzc2FnZS5o
ZWFkZXIuc2VxID0gaHRvbnMoc2VuZGVyLT5tZXNzYWdlLmhlYWRlci5zZXEpOworICAgIHNlbmRl
ci0+bWVzc2FnZS5oZWFkZXIudHMgPSBudG9obChzZW5kZXItPm1lc3NhZ2UuaGVhZGVyLnRzKSAr
IDE7CisgICAgc2VuZGVyLT5tZXNzYWdlLmhlYWRlci50cyA9IGh0b25sKHNlbmRlci0+bWVzc2Fn
ZS5oZWFkZXIudHMpOworCisgICAgLyogYXBwbHkgc3J0cCAqLworICAgIHN0YXQgPSBzcnRwX3By
b3RlY3Qoc2VuZGVyLT5zcnRwX2N0eCwgJnNlbmRlci0+bWVzc2FnZS5oZWFkZXIsICZwa3RfbGVu
KTsKKyAgICBpZiAoc3RhdCkgewogI2lmIFBSSU5UX0RFQlVHCi0gICAgZnByaW50ZihzdGRlcnIs
ICJlcnJvcjogc3J0cCBwcm90ZWN0aW9uIGZhaWxlZCB3aXRoIGNvZGUgJWRcbiIsIHN0YXQpOwor
ICAgICAgICBmcHJpbnRmKHN0ZGVyciwgImVycm9yOiBzcnRwIHByb3RlY3Rpb24gZmFpbGVkIHdp
dGggY29kZSAlZFxuIiwgc3RhdCk7CiAjZW5kaWYKLSAgICByZXR1cm4gLTE7Ci0gIH0KKyAgICAg
ICAgcmV0dXJuIC0xOworICAgIH0KICNpZiBWRVJCT1NFX0RFQlVHCi0gIHNydHBfcHJpbnRfcGFj
a2V0KCZzZW5kZXItPm1lc3NhZ2UuaGVhZGVyLCBwa3RfbGVuKTsKKyAgICBzcnRwX3ByaW50X3Bh
Y2tldCgmc2VuZGVyLT5tZXNzYWdlLmhlYWRlciwgcGt0X2xlbik7CiAjZW5kaWYKLSAgb2N0ZXRz
X3NlbnQgPSBzZW5kdG8oc2VuZGVyLT5zb2NrZXQsICh2b2lkKikmc2VuZGVyLT5tZXNzYWdlLAot
CQkgICAgICAgcGt0X2xlbiwgMCwgKHN0cnVjdCBzb2NrYWRkciAqKSZzZW5kZXItPmFkZHIsCi0J
CSAgICAgICBzaXplb2YgKHN0cnVjdCBzb2NrYWRkcl9pbikpOworICAgIG9jdGV0c19zZW50ID0K
KyAgICAgICAgc2VuZHRvKHNlbmRlci0+c29ja2V0LCAodm9pZCAqKSZzZW5kZXItPm1lc3NhZ2Us
IHBrdF9sZW4sIDAsCisgICAgICAgICAgICAgICAoc3RydWN0IHNvY2thZGRyICopJnNlbmRlci0+
YWRkciwgc2l6ZW9mKHN0cnVjdCBzb2NrYWRkcl9pbikpOwogCi0gIGlmIChvY3RldHNfc2VudCAh
PSBwa3RfbGVuKSB7CisgICAgaWYgKG9jdGV0c19zZW50ICE9IHBrdF9sZW4pIHsKICNpZiBQUklO
VF9ERUJVRwotICAgIGZwcmludGYoc3RkZXJyLCAiZXJyb3I6IGNvdWxkbid0IHNlbmQgbWVzc2Fn
ZSAlcyIsIChjaGFyICopbXNnKTsKLSAgICBwZXJyb3IoIiIpOworICAgICAgICBmcHJpbnRmKHN0
ZGVyciwgImVycm9yOiBjb3VsZG4ndCBzZW5kIG1lc3NhZ2UgJXMiLCAoY2hhciAqKW1zZyk7Cisg
ICAgICAgIHBlcnJvcigiIik7CiAjZW5kaWYKLSAgfQorICAgIH0KIAotICByZXR1cm4gb2N0ZXRz
X3NlbnQ7CisgICAgcmV0dXJuIG9jdGV0c19zZW50OwogfQogCi1pbnQKLXJ0cF9yZWN2ZnJvbShy
dHBfcmVjZWl2ZXJfdCByZWNlaXZlciwgdm9pZCAqbXNnLCBpbnQgKmxlbikgewotICBpbnQgb2N0
ZXRzX3JlY3ZkOwotICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0OwotICAKLSAgb2N0ZXRzX3JlY3Zk
ID0gcmVjdmZyb20ocmVjZWl2ZXItPnNvY2tldCwgKHZvaWQgKikmcmVjZWl2ZXItPm1lc3NhZ2Us
Ci0JCQkgKmxlbiwgMCwgKHN0cnVjdCBzb2NrYWRkciAqKSBOVUxMLCAwKTsKLQotICBpZiAob2N0
ZXRzX3JlY3ZkID09IC0xKSB7Ci0gICAgKmxlbiA9IDA7Ci0gICAgcmV0dXJuIC0xOwotICB9Ci0K
LSAgLyogdmVyaWZ5IHJ0cCBoZWFkZXIgKi8KLSAgaWYgKHJlY2VpdmVyLT5tZXNzYWdlLmhlYWRl
ci52ZXJzaW9uICE9IDIpIHsKLSAgICAqbGVuID0gMDsKLSAgICByZXR1cm4gLTE7Ci0gIH0KK2lu
dCBydHBfcmVjdmZyb20ocnRwX3JlY2VpdmVyX3QgcmVjZWl2ZXIsIHZvaWQgKm1zZywgaW50ICps
ZW4pCit7CisgICAgaW50IG9jdGV0c19yZWN2ZDsKKyAgICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0
OworCisgICAgb2N0ZXRzX3JlY3ZkID0gcmVjdmZyb20ocmVjZWl2ZXItPnNvY2tldCwgKHZvaWQg
KikmcmVjZWl2ZXItPm1lc3NhZ2UsICpsZW4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
MCwgKHN0cnVjdCBzb2NrYWRkciAqKU5VTEwsIDApOworCisgICAgaWYgKG9jdGV0c19yZWN2ZCA9
PSAtMSkgeworICAgICAgICAqbGVuID0gMDsKKyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKwor
ICAgIC8qIHZlcmlmeSBydHAgaGVhZGVyICovCisgICAgaWYgKHJlY2VpdmVyLT5tZXNzYWdlLmhl
YWRlci52ZXJzaW9uICE9IDIpIHsKKyAgICAgICAgKmxlbiA9IDA7CisgICAgICAgIHJldHVybiAt
MTsKKyAgICB9CiAKICNpZiBQUklOVF9ERUJVRwotICBmcHJpbnRmKHN0ZGVyciwgIiVkIG9jdGV0
cyByZWNlaXZlZCBmcm9tIFNTUkMgJXVcbiIsCi0JICBvY3RldHNfcmVjdmQsIHJlY2VpdmVyLT5t
ZXNzYWdlLmhlYWRlci5zc3JjKTsKKyAgICBmcHJpbnRmKHN0ZGVyciwgIiVkIG9jdGV0cyByZWNl
aXZlZCBmcm9tIFNTUkMgJXVcbiIsIG9jdGV0c19yZWN2ZCwKKyAgICAgICAgICAgIHJlY2VpdmVy
LT5tZXNzYWdlLmhlYWRlci5zc3JjKTsKICNlbmRpZgogI2lmIFZFUkJPU0VfREVCVUcKLSAgc3J0
cF9wcmludF9wYWNrZXQoJnJlY2VpdmVyLT5tZXNzYWdlLmhlYWRlciwgb2N0ZXRzX3JlY3ZkKTsK
KyAgICBzcnRwX3ByaW50X3BhY2tldCgmcmVjZWl2ZXItPm1lc3NhZ2UuaGVhZGVyLCBvY3RldHNf
cmVjdmQpOwogI2VuZGlmCiAKLSAgLyogYXBwbHkgc3J0cCAqLwotICBzdGF0ID0gc3J0cF91bnBy
b3RlY3QocmVjZWl2ZXItPnNydHBfY3R4LAotCQkJJnJlY2VpdmVyLT5tZXNzYWdlLmhlYWRlciwg
Jm9jdGV0c19yZWN2ZCk7Ci0gIGlmIChzdGF0KSB7Ci0gICAgZnByaW50ZihzdGRlcnIsCi0JICAg
ICJlcnJvcjogc3J0cCB1bnByb3RlY3Rpb24gZmFpbGVkIHdpdGggY29kZSAlZCVzXG4iLCBzdGF0
LAotCSAgICBzdGF0ID09IHNydHBfZXJyX3N0YXR1c19yZXBsYXlfZmFpbCA/ICIgKHJlcGxheSBj
aGVjayBmYWlsZWQpIiA6Ci0JICAgIHN0YXQgPT0gc3J0cF9lcnJfc3RhdHVzX2F1dGhfZmFpbCA/
ICIgKGF1dGggY2hlY2sgZmFpbGVkKSIgOiAiIik7Ci0gICAgcmV0dXJuIC0xOwotICB9Ci0gIHN0
cm5jcHkobXNnLCByZWNlaXZlci0+bWVzc2FnZS5ib2R5LCBvY3RldHNfcmVjdmQpOwotICAKLSAg
cmV0dXJuIG9jdGV0c19yZWN2ZDsKKyAgICAvKiBhcHBseSBzcnRwICovCisgICAgc3RhdCA9IHNy
dHBfdW5wcm90ZWN0KHJlY2VpdmVyLT5zcnRwX2N0eCwgJnJlY2VpdmVyLT5tZXNzYWdlLmhlYWRl
ciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgJm9jdGV0c19yZWN2ZCk7CisgICAgaWYgKHN0
YXQpIHsKKyAgICAgICAgZnByaW50ZihzdGRlcnIsICJlcnJvcjogc3J0cCB1bnByb3RlY3Rpb24g
ZmFpbGVkIHdpdGggY29kZSAlZCVzXG4iLAorICAgICAgICAgICAgICAgIHN0YXQsCisgICAgICAg
ICAgICAgICAgc3RhdCA9PSBzcnRwX2Vycl9zdGF0dXNfcmVwbGF5X2ZhaWwKKyAgICAgICAgICAg
ICAgICAgICAgPyAiIChyZXBsYXkgY2hlY2sgZmFpbGVkKSIKKyAgICAgICAgICAgICAgICAgICAg
OiBzdGF0ID09IHNydHBfZXJyX3N0YXR1c19hdXRoX2ZhaWwgPyAiIChhdXRoIGNoZWNrIGZhaWxl
ZCkiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIDogIiIpOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorICAgIHN0cm5jcHkobXNnLCBy
ZWNlaXZlci0+bWVzc2FnZS5ib2R5LCBvY3RldHNfcmVjdmQpOworCisgICAgcmV0dXJuIG9jdGV0
c19yZWN2ZDsKIH0KIAotaW50Ci1ydHBfc2VuZGVyX2luaXQocnRwX3NlbmRlcl90IHNlbmRlciwg
Ci0JCWludCBzb2NrLCAKLQkJc3RydWN0IHNvY2thZGRyX2luIGFkZHIsCi0JCXVuc2lnbmVkIGlu
dCBzc3JjKSB7Ci0KLSAgLyogc2V0IGhlYWRlciB2YWx1ZXMgKi8KLSAgc2VuZGVyLT5tZXNzYWdl
LmhlYWRlci5zc3JjICAgID0gaHRvbmwoc3NyYyk7Ci0gIHNlbmRlci0+bWVzc2FnZS5oZWFkZXIu
dHMgICAgICA9IDA7Ci0gIHNlbmRlci0+bWVzc2FnZS5oZWFkZXIuc2VxICAgICA9ICh1aW50MTZf
dCkgcmFuZCgpOwotICBzZW5kZXItPm1lc3NhZ2UuaGVhZGVyLm0gICAgICAgPSAwOwotICBzZW5k
ZXItPm1lc3NhZ2UuaGVhZGVyLnB0ICAgICAgPSAweDE7Ci0gIHNlbmRlci0+bWVzc2FnZS5oZWFk
ZXIudmVyc2lvbiA9IDI7Ci0gIHNlbmRlci0+bWVzc2FnZS5oZWFkZXIucCAgICAgICA9IDA7Ci0g
IHNlbmRlci0+bWVzc2FnZS5oZWFkZXIueCAgICAgICA9IDA7Ci0gIHNlbmRlci0+bWVzc2FnZS5o
ZWFkZXIuY2MgICAgICA9IDA7Ci0KLSAgLyogc2V0IG90aGVyIHN0dWZmICovCi0gIHNlbmRlci0+
c29ja2V0ID0gc29jazsKLSAgc2VuZGVyLT5hZGRyID0gYWRkcjsKLQotICByZXR1cm4gMDsKK2lu
dCBydHBfc2VuZGVyX2luaXQocnRwX3NlbmRlcl90IHNlbmRlciwKKyAgICAgICAgICAgICAgICAg
ICAgaW50IHNvY2ssCisgICAgICAgICAgICAgICAgICAgIHN0cnVjdCBzb2NrYWRkcl9pbiBhZGRy
LAorICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgc3NyYykKK3sKKyAgICAvKiBzZXQg
aGVhZGVyIHZhbHVlcyAqLworICAgIHNlbmRlci0+bWVzc2FnZS5oZWFkZXIuc3NyYyA9IGh0b25s
KHNzcmMpOworICAgIHNlbmRlci0+bWVzc2FnZS5oZWFkZXIudHMgPSAwOworICAgIHNlbmRlci0+
bWVzc2FnZS5oZWFkZXIuc2VxID0gKHVpbnQxNl90KXJhbmQoKTsKKyAgICBzZW5kZXItPm1lc3Nh
Z2UuaGVhZGVyLm0gPSAwOworICAgIHNlbmRlci0+bWVzc2FnZS5oZWFkZXIucHQgPSAweDE7Cisg
ICAgc2VuZGVyLT5tZXNzYWdlLmhlYWRlci52ZXJzaW9uID0gMjsKKyAgICBzZW5kZXItPm1lc3Nh
Z2UuaGVhZGVyLnAgPSAwOworICAgIHNlbmRlci0+bWVzc2FnZS5oZWFkZXIueCA9IDA7CisgICAg
c2VuZGVyLT5tZXNzYWdlLmhlYWRlci5jYyA9IDA7CisKKyAgICAvKiBzZXQgb3RoZXIgc3R1ZmYg
Ki8KKyAgICBzZW5kZXItPnNvY2tldCA9IHNvY2s7CisgICAgc2VuZGVyLT5hZGRyID0gYWRkcjsK
KworICAgIHJldHVybiAwOwogfQogCi1pbnQKLXJ0cF9yZWNlaXZlcl9pbml0KHJ0cF9yZWNlaXZl
cl90IHJjdnIsIAotCQkgIGludCBzb2NrLCAKLQkJICBzdHJ1Y3Qgc29ja2FkZHJfaW4gYWRkciwK
LQkJICB1bnNpZ25lZCBpbnQgc3NyYykgewotICAKLSAgLyogc2V0IGhlYWRlciB2YWx1ZXMgKi8K
LSAgcmN2ci0+bWVzc2FnZS5oZWFkZXIuc3NyYyAgICA9IGh0b25sKHNzcmMpOwotICByY3ZyLT5t
ZXNzYWdlLmhlYWRlci50cyAgICAgID0gMDsKLSAgcmN2ci0+bWVzc2FnZS5oZWFkZXIuc2VxICAg
ICA9IDA7Ci0gIHJjdnItPm1lc3NhZ2UuaGVhZGVyLm0gICAgICAgPSAwOwotICByY3ZyLT5tZXNz
YWdlLmhlYWRlci5wdCAgICAgID0gMHgxOwotICByY3ZyLT5tZXNzYWdlLmhlYWRlci52ZXJzaW9u
ID0gMjsKLSAgcmN2ci0+bWVzc2FnZS5oZWFkZXIucCAgICAgICA9IDA7Ci0gIHJjdnItPm1lc3Nh
Z2UuaGVhZGVyLnggICAgICAgPSAwOwotICByY3ZyLT5tZXNzYWdlLmhlYWRlci5jYyAgICAgID0g
MDsKLQotICAvKiBzZXQgb3RoZXIgc3R1ZmYgKi8KLSAgcmN2ci0+c29ja2V0ID0gc29jazsKLSAg
cmN2ci0+YWRkciA9IGFkZHI7Ci0KLSAgcmV0dXJuIDA7CitpbnQgcnRwX3JlY2VpdmVyX2luaXQo
cnRwX3JlY2VpdmVyX3QgcmN2ciwKKyAgICAgICAgICAgICAgICAgICAgICBpbnQgc29jaywKKyAg
ICAgICAgICAgICAgICAgICAgICBzdHJ1Y3Qgc29ja2FkZHJfaW4gYWRkciwKKyAgICAgICAgICAg
ICAgICAgICAgICB1bnNpZ25lZCBpbnQgc3NyYykKK3sKKyAgICAvKiBzZXQgaGVhZGVyIHZhbHVl
cyAqLworICAgIHJjdnItPm1lc3NhZ2UuaGVhZGVyLnNzcmMgPSBodG9ubChzc3JjKTsKKyAgICBy
Y3ZyLT5tZXNzYWdlLmhlYWRlci50cyA9IDA7CisgICAgcmN2ci0+bWVzc2FnZS5oZWFkZXIuc2Vx
ID0gMDsKKyAgICByY3ZyLT5tZXNzYWdlLmhlYWRlci5tID0gMDsKKyAgICByY3ZyLT5tZXNzYWdl
LmhlYWRlci5wdCA9IDB4MTsKKyAgICByY3ZyLT5tZXNzYWdlLmhlYWRlci52ZXJzaW9uID0gMjsK
KyAgICByY3ZyLT5tZXNzYWdlLmhlYWRlci5wID0gMDsKKyAgICByY3ZyLT5tZXNzYWdlLmhlYWRl
ci54ID0gMDsKKyAgICByY3ZyLT5tZXNzYWdlLmhlYWRlci5jYyA9IDA7CisKKyAgICAvKiBzZXQg
b3RoZXIgc3R1ZmYgKi8KKyAgICByY3ZyLT5zb2NrZXQgPSBzb2NrOworICAgIHJjdnItPmFkZHIg
PSBhZGRyOworCisgICAgcmV0dXJuIDA7CiB9CiAKLWludAotcnRwX3NlbmRlcl9pbml0X3NydHAo
cnRwX3NlbmRlcl90IHNlbmRlciwgY29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5KSB7Ci0gIHJl
dHVybiBzcnRwX2NyZWF0ZSgmc2VuZGVyLT5zcnRwX2N0eCwgcG9saWN5KTsKK2ludCBydHBfc2Vu
ZGVyX2luaXRfc3J0cChydHBfc2VuZGVyX3Qgc2VuZGVyLCBjb25zdCBzcnRwX3BvbGljeV90ICpw
b2xpY3kpCit7CisgICAgcmV0dXJuIHNydHBfY3JlYXRlKCZzZW5kZXItPnNydHBfY3R4LCBwb2xp
Y3kpOwogfQogCi1pbnQKLXJ0cF9zZW5kZXJfZGVpbml0X3NydHAocnRwX3NlbmRlcl90IHNlbmRl
cikgewotICByZXR1cm4gc3J0cF9kZWFsbG9jKHNlbmRlci0+c3J0cF9jdHgpOworaW50IHJ0cF9z
ZW5kZXJfZGVpbml0X3NydHAocnRwX3NlbmRlcl90IHNlbmRlcikKK3sKKyAgICByZXR1cm4gc3J0
cF9kZWFsbG9jKHNlbmRlci0+c3J0cF9jdHgpOwogfQogCi1pbnQKLXJ0cF9yZWNlaXZlcl9pbml0
X3NydHAocnRwX3JlY2VpdmVyX3Qgc2VuZGVyLCBjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3kp
IHsKLSAgcmV0dXJuIHNydHBfY3JlYXRlKCZzZW5kZXItPnNydHBfY3R4LCBwb2xpY3kpOworaW50
IHJ0cF9yZWNlaXZlcl9pbml0X3NydHAocnRwX3JlY2VpdmVyX3Qgc2VuZGVyLCBjb25zdCBzcnRw
X3BvbGljeV90ICpwb2xpY3kpCit7CisgICAgcmV0dXJuIHNydHBfY3JlYXRlKCZzZW5kZXItPnNy
dHBfY3R4LCBwb2xpY3kpOwogfQogCi1pbnQKLXJ0cF9yZWNlaXZlcl9kZWluaXRfc3J0cChydHBf
cmVjZWl2ZXJfdCBzZW5kZXIpIHsKLSAgcmV0dXJuIHNydHBfZGVhbGxvYyhzZW5kZXItPnNydHBf
Y3R4KTsKK2ludCBydHBfcmVjZWl2ZXJfZGVpbml0X3NydHAocnRwX3JlY2VpdmVyX3Qgc2VuZGVy
KQoreworICAgIHJldHVybiBzcnRwX2RlYWxsb2Moc2VuZGVyLT5zcnRwX2N0eCk7CiB9CiAKLXJ0
cF9zZW5kZXJfdCAKLXJ0cF9zZW5kZXJfYWxsb2Modm9pZCkgewotICByZXR1cm4gKHJ0cF9zZW5k
ZXJfdCltYWxsb2Moc2l6ZW9mKHJ0cF9zZW5kZXJfY3R4X3QpKTsKK3J0cF9zZW5kZXJfdCBydHBf
c2VuZGVyX2FsbG9jKHZvaWQpCit7CisgICAgcmV0dXJuIChydHBfc2VuZGVyX3QpbWFsbG9jKHNp
emVvZihydHBfc2VuZGVyX2N0eF90KSk7CiB9CiAKLXZvaWQKLXJ0cF9zZW5kZXJfZGVhbGxvYyhy
dHBfc2VuZGVyX3QgcnRwX2N0eCkgewotICBmcmVlKHJ0cF9jdHgpOwordm9pZCBydHBfc2VuZGVy
X2RlYWxsb2MocnRwX3NlbmRlcl90IHJ0cF9jdHgpCit7CisgICAgZnJlZShydHBfY3R4KTsKIH0K
IAotcnRwX3JlY2VpdmVyX3QgCi1ydHBfcmVjZWl2ZXJfYWxsb2Modm9pZCkgewotICByZXR1cm4g
KHJ0cF9yZWNlaXZlcl90KW1hbGxvYyhzaXplb2YocnRwX3JlY2VpdmVyX2N0eF90KSk7CitydHBf
cmVjZWl2ZXJfdCBydHBfcmVjZWl2ZXJfYWxsb2Modm9pZCkKK3sKKyAgICByZXR1cm4gKHJ0cF9y
ZWNlaXZlcl90KW1hbGxvYyhzaXplb2YocnRwX3JlY2VpdmVyX2N0eF90KSk7CiB9CiAKLXZvaWQK
LXJ0cF9yZWNlaXZlcl9kZWFsbG9jKHJ0cF9yZWNlaXZlcl90IHJ0cF9jdHgpIHsKLSAgZnJlZShy
dHBfY3R4KTsKK3ZvaWQgcnRwX3JlY2VpdmVyX2RlYWxsb2MocnRwX3JlY2VpdmVyX3QgcnRwX2N0
eCkKK3sKKyAgICBmcmVlKHJ0cF9jdHgpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL3Rlc3QvcnRwLmggYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvdGVzdC9y
dHAuaAppbmRleCBkMDEwNTA4ZGUzMmZkZDhhY2FlZjAxZjhjYTdmYTU2OWQyNjQzMGQyLi4zNzky
MWE2NjVjMGEzMTY1ZDk4YjVlZTlmZGU1N2RiMjQ3ODI2ZDJhIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvdGVzdC9ydHAu
aAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xp
YnNydHAvdGVzdC9ydHAuaApAQCAtMSw2ICsxLDYgQEAKIC8qCiAgKiBydHAuaAotICogCisgKgog
ICogcnRwIGludGVyZmFjZSBmb3Igc3J0cCByZWZlcmVuY2UgaW1wbGVtZW50YXRpb24KICAqCiAg
KiBEYXZpZCBBLiBNY0dyZXcKQEAgLTE1LDI2ICsxNSwyNiBAQAogICovCiAKIC8qCi0gKgkKKyAq
CiAgKiBDb3B5cmlnaHQgKGMpIDIwMDEtMjAxNywgQ2lzY28gU3lzdGVtcywgSW5jLgogICogQWxs
IHJpZ2h0cyByZXNlcnZlZC4KLSAqIAorICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCiAg
KiBhcmUgbWV0OgotICogCisgKgogICogICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUg
bXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAogICogICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAKKyAqCiAgKiAg
IFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUK
ICAqICAgY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcKICAqICAgZGlzY2xhaW1lciBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3Ro
ZXIgbWF0ZXJpYWxzIHByb3ZpZGVkCiAgKiAgIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqIAor
ICoKICAqICAgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgQ2lzY28gU3lzdGVtcywgSW5jLiBub3Ig
dGhlIG5hbWVzIG9mIGl0cwogICogICBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3Jz
ZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQKICAqICAgZnJvbSB0aGlzIHNvZnR3YXJlIHdp
dGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgotICogCisgKgogICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRS
SUJVVE9SUwogICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QKICAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTCkBAIC01MCwxNCArNTAsMTMgQEAKICAq
CiAgKi8KIAotCiAjaWZuZGVmIFNSVFBfUlRQX0gKICNkZWZpbmUgU1JUUF9SVFBfSAogCiAjaWZk
ZWYgSEFWRV9ORVRJTkVUX0lOX0gKLSMgaW5jbHVkZSA8bmV0aW5ldC9pbi5oPgorI2luY2x1ZGUg
PG5ldGluZXQvaW4uaD4KICNlbGlmIGRlZmluZWQgSEFWRV9XSU5TT0NLMl9ICi0jIGluY2x1ZGUg
PHdpbnNvY2syLmg+CisjaW5jbHVkZSA8d2luc29jazIuaD4KICNlbmRpZgogCiAjaW5jbHVkZSAi
c3J0cF9wcml2LmgiCkBAIC02OSw5OCArNjgsODUgQEAgZXh0ZXJuICJDIiB7CiAvKgogICogUlRQ
X0hFQURFUl9MRU4gaW5kaWNhdGVzIHRoZSBzaXplIG9mIGFuIFJUUCBoZWFkZXIKICAqLwotI2Rl
ZmluZSBSVFBfSEVBREVSX0xFTiAgIDEyCisjZGVmaW5lIFJUUF9IRUFERVJfTEVOIDEyCiAKLS8q
IAorLyoKICAqIFJUUF9NQVhfQlVGX0xFTiBkZWZpbmVzIHRoZSBsYXJnZXN0IFJUUCBwYWNrZXQg
aW4gdGhlIHJ0cC5jIGltcGxlbWVudGF0aW9uCiAgKi8KLSNkZWZpbmUgUlRQX01BWF9CVUZfTEVO
ICAxNjM4NAotCisjZGVmaW5lIFJUUF9NQVhfQlVGX0xFTiAxNjM4NAogCiB0eXBlZGVmIHNydHBf
aGRyX3QgcnRwX2hkcl90OwogCiB0eXBlZGVmIHN0cnVjdCB7Ci0gIHNydHBfaGRyX3QgaGVhZGVy
OyAgICAgICAgCi0gIGNoYXIgYm9keVtSVFBfTUFYX0JVRl9MRU5dOyAgCisgICAgc3J0cF9oZHJf
dCBoZWFkZXI7CisgICAgY2hhciBib2R5W1JUUF9NQVhfQlVGX0xFTl07CiB9IHJ0cF9tc2dfdDsK
IAogdHlwZWRlZiBzdHJ1Y3QgcnRwX3NlbmRlcl9jdHhfdCB7Ci0gIHJ0cF9tc2dfdCBtZXNzYWdl
OyAgICAgICAgIAotICBpbnQgc29ja2V0OwotICBzcnRwX2N0eF90ICpzcnRwX2N0eDsKLSAgc3Ry
dWN0IHNvY2thZGRyX2luIGFkZHI7ICAgLyogcmVjaWV2ZXIncyBhZGRyZXNzICovCisgICAgcnRw
X21zZ190IG1lc3NhZ2U7CisgICAgaW50IHNvY2tldDsKKyAgICBzcnRwX2N0eF90ICpzcnRwX2N0
eDsKKyAgICBzdHJ1Y3Qgc29ja2FkZHJfaW4gYWRkcjsgLyogcmVjaWV2ZXIncyBhZGRyZXNzICov
CiB9IHJ0cF9zZW5kZXJfY3R4X3Q7CiAKIHR5cGVkZWYgc3RydWN0IHJ0cF9yZWNlaXZlcl9jdHhf
dCB7Ci0gIHJ0cF9tc2dfdCBtZXNzYWdlOwotICBpbnQgc29ja2V0OwotICBzcnRwX2N0eF90ICpz
cnRwX2N0eDsKLSAgc3RydWN0IHNvY2thZGRyX2luIGFkZHI7ICAgLyogcmVjZWl2ZXIncyBhZGRy
ZXNzICovCisgICAgcnRwX21zZ190IG1lc3NhZ2U7CisgICAgaW50IHNvY2tldDsKKyAgICBzcnRw
X2N0eF90ICpzcnRwX2N0eDsKKyAgICBzdHJ1Y3Qgc29ja2FkZHJfaW4gYWRkcjsgLyogcmVjZWl2
ZXIncyBhZGRyZXNzICovCiB9IHJ0cF9yZWNlaXZlcl9jdHhfdDsKIAotCiB0eXBlZGVmIHN0cnVj
dCBydHBfc2VuZGVyX2N0eF90ICpydHBfc2VuZGVyX3Q7CiAKIHR5cGVkZWYgc3RydWN0IHJ0cF9y
ZWNlaXZlcl9jdHhfdCAqcnRwX3JlY2VpdmVyX3Q7CiAKLWludAotcnRwX3NlbmR0byhydHBfc2Vu
ZGVyX3Qgc2VuZGVyLCBjb25zdCB2b2lkKiBtc2csIGludCBsZW4pOworaW50IHJ0cF9zZW5kdG8o
cnRwX3NlbmRlcl90IHNlbmRlciwgY29uc3Qgdm9pZCAqbXNnLCBpbnQgbGVuKTsKIAotaW50Ci1y
dHBfcmVjdmZyb20ocnRwX3JlY2VpdmVyX3QgcmVjZWl2ZXIsIHZvaWQgKm1zZywgaW50ICpsZW4p
OworaW50IHJ0cF9yZWN2ZnJvbShydHBfcmVjZWl2ZXJfdCByZWNlaXZlciwgdm9pZCAqbXNnLCBp
bnQgKmxlbik7CiAKLWludAotcnRwX3JlY2VpdmVyX2luaXQocnRwX3JlY2VpdmVyX3QgcmN2ciwg
aW50IHNvY2ssIAotCQkgIHN0cnVjdCBzb2NrYWRkcl9pbiBhZGRyLCB1bnNpZ25lZCBpbnQgc3Ny
Yyk7CitpbnQgcnRwX3JlY2VpdmVyX2luaXQocnRwX3JlY2VpdmVyX3QgcmN2ciwKKyAgICAgICAg
ICAgICAgICAgICAgICBpbnQgc29jaywKKyAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3Qgc29j
a2FkZHJfaW4gYWRkciwKKyAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgc3NyYyk7
CiAKLWludAotcnRwX3NlbmRlcl9pbml0KHJ0cF9zZW5kZXJfdCBzZW5kZXIsIGludCBzb2NrLCAK
LQkJc3RydWN0IHNvY2thZGRyX2luIGFkZHIsIHVuc2lnbmVkIGludCBzc3JjKTsKK2ludCBydHBf
c2VuZGVyX2luaXQocnRwX3NlbmRlcl90IHNlbmRlciwKKyAgICAgICAgICAgICAgICAgICAgaW50
IHNvY2ssCisgICAgICAgICAgICAgICAgICAgIHN0cnVjdCBzb2NrYWRkcl9pbiBhZGRyLAorICAg
ICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgc3NyYyk7CiAKIC8qCiAgKiBzcnRwX3NlbmRl
cl9pbml0KC4uLikgaW5pdGlhbGl6ZXMgYW4gcnRwX3NlbmRlcl90CiAgKi8KIAotaW50Ci1zcnRw
X3NlbmRlcl9pbml0KHJ0cF9zZW5kZXJfdCBydHBfY3R4LCAgICAgICAgICAvKiBzdHJ1Y3R1cmUg
dG8gYmUgaW5pdCdlZCAqLwotCQkgc3RydWN0IHNvY2thZGRyX2luIG5hbWUsICAgICAgIC8qIHNv
Y2tldCBuYW1lICAgICAgICAgICAgICovCi0JCSBzcnRwX3NlY19zZXJ2X3Qgc2VjdXJpdHlfc2Vy
dmljZXMsICAvKiBzZWMuIHNlcnZzLiB0byBiZSB1c2VkICAqLwotCQkgdW5zaWduZWQgY2hhciAq
aW5wdXRfa2V5ICAgICAgIC8qIG1hc3RlciBrZXkvc2FsdCBpbiBoZXggICovCi0JCSApOwotCi1p
bnQKLXNydHBfcmVjZWl2ZXJfaW5pdChydHBfcmVjZWl2ZXJfdCBydHBfY3R4LCAgICAgICAvKiBz
dHJ1Y3R1cmUgdG8gYmUgaW5pdCdlZCAqLwotCQkgICBzdHJ1Y3Qgc29ja2FkZHJfaW4gbmFtZSwg
CSAvKiBzb2NrZXQgbmFtZSAgICAgICAgICAgICAqLwotCQkgICBzcnRwX3NlY19zZXJ2X3Qgc2Vj
dXJpdHlfc2VydmljZXMsIC8qIHNlYy4gc2VydnMuIHRvIGJlIHVzZWQgICovCi0JCSAgIHVuc2ln
bmVkIGNoYXIgKmlucHV0X2tleQkgLyogbWFzdGVyIGtleS9zYWx0IGluIGhleCAgKi8KLQkJICAg
KTsKLQotCi1pbnQKLXJ0cF9zZW5kZXJfaW5pdF9zcnRwKHJ0cF9zZW5kZXJfdCBzZW5kZXIsIGNv
bnN0IHNydHBfcG9saWN5X3QgKnBvbGljeSk7CitpbnQgc3J0cF9zZW5kZXJfaW5pdCgKKyAgICBy
dHBfc2VuZGVyX3QgcnRwX2N0eCwgICAgICAgICAgICAgIC8qIHN0cnVjdHVyZSB0byBiZSBpbml0
J2VkICovCisgICAgc3RydWN0IHNvY2thZGRyX2luIG5hbWUsICAgICAgICAgICAvKiBzb2NrZXQg
bmFtZSAgICAgICAgICAgICAqLworICAgIHNydHBfc2VjX3NlcnZfdCBzZWN1cml0eV9zZXJ2aWNl
cywgLyogc2VjLiBzZXJ2cy4gdG8gYmUgdXNlZCAgKi8KKyAgICB1bnNpZ25lZCBjaGFyICppbnB1
dF9rZXkgICAgICAgICAgIC8qIG1hc3RlciBrZXkvc2FsdCBpbiBoZXggICovCisgICAgKTsKIAot
aW50Ci1ydHBfc2VuZGVyX2RlaW5pdF9zcnRwKHJ0cF9zZW5kZXJfdCBzZW5kZXIpOworaW50IHNy
dHBfcmVjZWl2ZXJfaW5pdCgKKyAgICBydHBfcmVjZWl2ZXJfdCBydHBfY3R4LCAgICAgICAgICAg
IC8qIHN0cnVjdHVyZSB0byBiZSBpbml0J2VkICovCisgICAgc3RydWN0IHNvY2thZGRyX2luIG5h
bWUsICAgICAgICAgICAvKiBzb2NrZXQgbmFtZSAgICAgICAgICAgICAqLworICAgIHNydHBfc2Vj
X3NlcnZfdCBzZWN1cml0eV9zZXJ2aWNlcywgLyogc2VjLiBzZXJ2cy4gdG8gYmUgdXNlZCAgKi8K
KyAgICB1bnNpZ25lZCBjaGFyICppbnB1dF9rZXkgICAgICAgICAgIC8qIG1hc3RlciBrZXkvc2Fs
dCBpbiBoZXggICovCisgICAgKTsKIAotaW50Ci1ydHBfcmVjZWl2ZXJfaW5pdF9zcnRwKHJ0cF9y
ZWNlaXZlcl90IHNlbmRlciwgY29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5KTsKK2ludCBydHBf
c2VuZGVyX2luaXRfc3J0cChydHBfc2VuZGVyX3Qgc2VuZGVyLCBjb25zdCBzcnRwX3BvbGljeV90
ICpwb2xpY3kpOwogCi1pbnQKLXJ0cF9yZWNlaXZlcl9kZWluaXRfc3J0cChydHBfcmVjZWl2ZXJf
dCBzZW5kZXIpOworaW50IHJ0cF9zZW5kZXJfZGVpbml0X3NydHAocnRwX3NlbmRlcl90IHNlbmRl
cik7CiAKK2ludCBydHBfcmVjZWl2ZXJfaW5pdF9zcnRwKHJ0cF9yZWNlaXZlcl90IHNlbmRlciwg
Y29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5KTsKIAotcnRwX3NlbmRlcl90IAotcnRwX3NlbmRl
cl9hbGxvYyh2b2lkKTsKK2ludCBydHBfcmVjZWl2ZXJfZGVpbml0X3NydHAocnRwX3JlY2VpdmVy
X3Qgc2VuZGVyKTsKIAotdm9pZAotcnRwX3NlbmRlcl9kZWFsbG9jKHJ0cF9zZW5kZXJfdCBydHBf
Y3R4KTsKK3J0cF9zZW5kZXJfdCBydHBfc2VuZGVyX2FsbG9jKHZvaWQpOwogCi1ydHBfcmVjZWl2
ZXJfdCAKLXJ0cF9yZWNlaXZlcl9hbGxvYyh2b2lkKTsKK3ZvaWQgcnRwX3NlbmRlcl9kZWFsbG9j
KHJ0cF9zZW5kZXJfdCBydHBfY3R4KTsKIAotdm9pZAotcnRwX3JlY2VpdmVyX2RlYWxsb2MocnRw
X3JlY2VpdmVyX3QgcnRwX2N0eCk7CitydHBfcmVjZWl2ZXJfdCBydHBfcmVjZWl2ZXJfYWxsb2Mo
dm9pZCk7CiAKK3ZvaWQgcnRwX3JlY2VpdmVyX2RlYWxsb2MocnRwX3JlY2VpdmVyX3QgcnRwX2N0
eCk7CiAKICNpZmRlZiBfX2NwbHVzcGx1cwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFy
dHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL3Rlc3QvcnRwdy5jIGIvU291
cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL3Rlc3Qv
cnRwdy5jCmluZGV4IDNiN2FjNjcwMGIyMGViYWQxMDBkODE4ZTE4MDUwMjQ0YmJmYzkxYjQuLjZl
NzQxNmM3ZjUyNGQ4NmU2ODlhNGZjODBmMjEwZDg2YzhlMjM3Y2UgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC90ZXN0L3J0
cHcuYworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L2xpYnNydHAvdGVzdC9ydHB3LmMKQEAgLTgsMzMgKzgsMzMgQEAKICAqCiAgKiBUaGlzIGFwcCBp
cyBhIHNpbXBsZSBSVFAgYXBwbGljYXRpb24gaW50ZW5kZWQgb25seSBmb3IgdGVzdGluZwogICog
bGlic3J0cC4gIEl0IHJlYWRzIG9uZSB3b3JkIGF0IGEgdGltZSBmcm9tIHdvcmRzLnR4dCAob3IK
LSAqIHdoYXRldmVyIGZpbGUgaXMgc3BlY2lmaWVkIGFzIERJQ1RfRklMRSksIGFuZCBzZW5kcyBv
bmUgd29yZCBvdXQKKyAqIHdoYXRldmVyIGZpbGUgaXMgc3BlY2lmaWVkIGFzIERJQ1RfRklMRSBv
ciB3aXRoIC13KSwgYW5kIHNlbmRzIG9uZSB3b3JkIG91dAogICogZWFjaCBVU0VDX1JBVEUgbWlj
cm9zZWNvbmRzLiAgU2VjdXJlIFJUUCBwcm90ZWN0aW9ucyBjYW4gYmUKICAqIGFwcGxpZWQuICBT
ZWUgdGhlIHVzYWdlKCkgZnVuY3Rpb24gZm9yIG1vcmUgZGV0YWlscy4KICAqCiAgKi8KIAogLyoK
LSAqCQorICoKICAqIENvcHlyaWdodCAoYykgMjAwMS0yMDE3LCBDaXNjbyBTeXN0ZW1zLCBJbmMu
CiAgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICogCisgKgogICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKICAqIGFyZSBtZXQ6Ci0gKiAKKyAqCiAgKiAgIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3Vy
Y2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CiAgKiAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIAor
ICoKICAqICAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZQogICogICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZwogICogICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFu
ZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQKICAqICAgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgotICogCisgKgogICogICBOZWl0aGVyIHRoZSBuYW1lIG9mIHRoZSBDaXNjbyBTeXN0ZW1zLCBJ
bmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCiAgKiAgIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0
byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZAogICogICBmcm9tIHRoaXMgc29m
dHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCi0gKiAKKyAq
CiAgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBB
TkQgQ09OVFJJQlVUT1JTCiAgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAogICogTElNSVRFRCBUTywgVEhFIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MKQEAgLTUwLDgyICs1MCw3
NiBAQAogICoKICAqLwogCi0KICNpZmRlZiBIQVZFX0NPTkZJR19ICi0gICAgI2luY2x1ZGUgPGNv
bmZpZy5oPgorI2luY2x1ZGUgPGNvbmZpZy5oPgogI2VuZGlmCiAKLSNpbmNsdWRlICJnZXRvcHRf
cy5oIiAgICAgICAvKiBmb3IgbG9jYWwgZ2V0b3B0KCkgICovCisjaW5jbHVkZSAiZ2V0b3B0X3Mu
aCIgLyogZm9yIGxvY2FsIGdldG9wdCgpICAqLwogCi0jaW5jbHVkZSA8c3RkaW8uaD4gICAgICAg
ICAgLyogZm9yIHByaW50ZiwgZnByaW50ZiAqLwotI2luY2x1ZGUgPHN0ZGxpYi5oPiAgICAgICAg
IC8qIGZvciBhdG9pKCkgICAgICAgICAgKi8KKyNpbmNsdWRlIDxzdGRpby5oPiAgLyogZm9yIHBy
aW50ZiwgZnByaW50ZiAqLworI2luY2x1ZGUgPHN0ZGxpYi5oPiAvKiBmb3IgYXRvaSgpICAgICAg
ICAgICovCiAjaW5jbHVkZSA8ZXJybm8uaD4KLSNpbmNsdWRlIDxzaWduYWwuaD4gICAgICAgICAv
KiBmb3Igc2lnbmFsKCkgICAgICAgICovCisjaW5jbHVkZSA8c2lnbmFsLmg+IC8qIGZvciBzaWdu
YWwoKSAgICAgICAgKi8KIAotI2luY2x1ZGUgPHN0cmluZy5oPiAgICAgICAgIC8qIGZvciBzdHJu
Y3B5KCkgICAgICAgKi8KLSNpbmNsdWRlIDx0aW1lLmg+CSAgICAvKiBmb3IgdXNsZWVwKCkgICAg
ICAgICovCisjaW5jbHVkZSA8c3RyaW5nLmg+IC8qIGZvciBzdHJuY3B5KCkgICAgICAgKi8KKyNp
bmNsdWRlIDx0aW1lLmg+ICAgLyogZm9yIHVzbGVlcCgpICAgICAgICAqLwogCiAjaWZkZWYgSEFW
RV9VTklTVERfSAotI2luY2x1ZGUgPHVuaXN0ZC5oPiAgICAgICAgIC8qIGZvciBjbG9zZSgpICAg
ICAgICAgKi8KKyNpbmNsdWRlIDx1bmlzdGQuaD4gLyogZm9yIGNsb3NlKCkgICAgICAgICAqLwog
I2VsaWYgZGVmaW5lZChfTVNDX1ZFUikKLSNpbmNsdWRlIDxpby5oPiAgICAgICAgICAgICAvKiBm
b3IgX2Nsb3NlKCkgICAgICAgICovCisjaW5jbHVkZSA8aW8uaD4gLyogZm9yIF9jbG9zZSgpICAg
ICAgICAqLwogI2RlZmluZSBjbG9zZSBfY2xvc2UKICNlbmRpZgogI2lmZGVmIEhBVkVfU1lTX1NP
Q0tFVF9ICi0jIGluY2x1ZGUgPHN5cy9zb2NrZXQuaD4KKyNpbmNsdWRlIDxzeXMvc29ja2V0Lmg+
CiAjZW5kaWYKICNpZmRlZiBIQVZFX05FVElORVRfSU5fSAotIyBpbmNsdWRlIDxuZXRpbmV0L2lu
Lmg+CisjaW5jbHVkZSA8bmV0aW5ldC9pbi5oPgogI2VsaWYgZGVmaW5lZCBIQVZFX1dJTlNPQ0sy
X0gKLSMgaW5jbHVkZSA8d2luc29jazIuaD4KLSMgaW5jbHVkZSA8d3MydGNwaXAuaD4KLSMgZGVm
aW5lIFJUUFdfVVNFX1dJTlNPQ0syCTEKKyNpbmNsdWRlIDx3aW5zb2NrMi5oPgorI2luY2x1ZGUg
PHdzMnRjcGlwLmg+CisjZGVmaW5lIFJUUFdfVVNFX1dJTlNPQ0syIDEKICNlbmRpZgogI2lmZGVm
IEhBVkVfQVJQQV9JTkVUX0gKLSMgaW5jbHVkZSA8YXJwYS9pbmV0Lmg+CisjaW5jbHVkZSA8YXJw
YS9pbmV0Lmg+CiAjZW5kaWYKIAotI2luY2x1ZGUgInNydHAuaCIgICAgICAgICAgIAorI2luY2x1
ZGUgInNydHAuaCIKICNpbmNsdWRlICJydHAuaCIKICNpbmNsdWRlICJ1dGlsLmgiCiAKLSNkZWZp
bmUgRElDVF9GSUxFICAgICAgICAid29yZHMudHh0IgotI2RlZmluZSBVU0VDX1JBVEUgICAgICAg
ICg1ZTUpCi0jZGVmaW5lIE1BWF9XT1JEX0xFTiAgICAgMTI4ICAKKyNkZWZpbmUgRElDVF9GSUxF
ICJ3b3Jkcy50eHQiCisjZGVmaW5lIFVTRUNfUkFURSAoNWU1KQorI2RlZmluZSBNQVhfV09SRF9M
RU4gMTI4CiAjZGVmaW5lIEFERFJfSVNfTVVMVElDQVNUKGEpIElOX01VTFRJQ0FTVChodG9ubChh
KSkKLSNkZWZpbmUgTUFYX0tFWV9MRU4gICAgICA5NgotCisjZGVmaW5lIE1BWF9LRVlfTEVOIDk2
CiAKICNpZm5kZWYgSEFWRV9VU0xFRVAKLSMgaWZkZWYgSEFWRV9XSU5ET1dTX0gKLSMgIGRlZmlu
ZSB1c2xlZXAodXMpCVNsZWVwKCh1cykvMTAwMCkKLSMgZWxzZQotIyAgZGVmaW5lIHVzbGVlcCh1
cykJc2xlZXAoKHVzKS8xMDAwMDAwKQotIyBlbmRpZgorI2lmZGVmIEhBVkVfV0lORE9XU19ICisj
ZGVmaW5lIHVzbGVlcCh1cykgU2xlZXAoKHVzKSAvIDEwMDApCisjZWxzZQorI2RlZmluZSB1c2xl
ZXAodXMpIHNsZWVwKCh1cykgLyAxMDAwMDAwKQorI2VuZGlmCiAjZW5kaWYKLQogCiAvKgogICog
dGhlIGZ1bmN0aW9uIHVzYWdlKCkgcHJpbnRzIGFuIGVycm9yIG1lc3NhZ2UgZGVzY3JpYmluZyBo
b3cgdGhpcwogICogcHJvZ3JhbSBzaG91bGQgYmUgY2FsbGVkLCB0aGVuIGNhbGxzIGV4aXQoKQog
ICovCiAKLXZvaWQKLXVzYWdlKGNoYXIgKnByb2dfbmFtZSk7Cit2b2lkIHVzYWdlKGNoYXIgKnBy
b2dfbmFtZSk7CiAKIC8qCiAgKiBsZWF2ZV9ncm91cCguLi4pIGRlLXJlZ2lzdGVycyBmcm9tIGEg
bXVsdGljYXN0IGdyb3VwCiAgKi8KIAotdm9pZAotbGVhdmVfZ3JvdXAoaW50IHNvY2ssIHN0cnVj
dCBpcF9tcmVxIG1yZXEsIGNoYXIgKm5hbWUpOwotCit2b2lkIGxlYXZlX2dyb3VwKGludCBzb2Nr
LCBzdHJ1Y3QgaXBfbXJlcSBtcmVxLCBjaGFyICpuYW1lKTsKIAogLyoKICAqIHNldHVwX3NpZ25h
bF9oYW5kbGVyKCkgc2V0cyB1cCBhIHNpZ25hbCBoYW5kbGVyIHRvIHRyaWdnZXIKICAqIGNsZWFu
dXBzIGFmdGVyIGFuIGludGVycnVwdAogICovCi1pbnQgc2V0dXBfc2lnbmFsX2hhbmRsZXIoY2hh
ciogbmFtZSk7CitpbnQgc2V0dXBfc2lnbmFsX2hhbmRsZXIoY2hhciAqbmFtZSk7CiAKIC8qCiAg
KiBoYW5kbGVfc2lnbmFsKC4uLikgaGFuZGxlcyBpbnRlcnJ1cHQgc2lnbmFsIHRvIHRyaWdnZXIg
Y2xlYW51cHMKQEAgLTEzOSw1NjEgKzEzMyw1NjggQEAgdm9sYXRpbGUgaW50IGludGVycnVwdGVk
ID0gMDsKIAogdHlwZWRlZiBlbnVtIHsgc2VuZGVyLCByZWNlaXZlciwgdW5rbm93biB9IHByb2dy
YW1fdHlwZTsKIAotaW50Ci1tYWluIChpbnQgYXJnYywgY2hhciAqYXJndltdKSB7Ci0gIGNoYXIg
KmRpY3RmaWxlID0gRElDVF9GSUxFOwotICBGSUxFICpkaWN0OwotICBjaGFyIHdvcmRbTUFYX1dP
UkRfTEVOXTsKLSAgaW50IHNvY2ssIHJldDsKLSAgc3RydWN0IGluX2FkZHIgcmN2cl9hZGRyOwot
ICBzdHJ1Y3Qgc29ja2FkZHJfaW4gbmFtZTsKLSAgc3RydWN0IGlwX21yZXEgbXJlcTsKK2ludCBt
YWluKGludCBhcmdjLCBjaGFyICphcmd2W10pCit7CisgICAgY2hhciAqZGljdGZpbGUgPSBESUNU
X0ZJTEU7CisgICAgRklMRSAqZGljdDsKKyAgICBjaGFyIHdvcmRbTUFYX1dPUkRfTEVOXTsKKyAg
ICBpbnQgc29jaywgcmV0OworICAgIHN0cnVjdCBpbl9hZGRyIHJjdnJfYWRkcjsKKyAgICBzdHJ1
Y3Qgc29ja2FkZHJfaW4gbmFtZTsKKyAgICBzdHJ1Y3QgaXBfbXJlcSBtcmVxOwogI2lmIEJFVwot
ICBzdHJ1Y3Qgc29ja2FkZHJfaW4gbG9jYWw7Ci0jZW5kaWYgCi0gIHByb2dyYW1fdHlwZSBwcm9n
X3R5cGUgPSB1bmtub3duOwotICBzcnRwX3NlY19zZXJ2X3Qgc2VjX3NlcnZzID0gc2VjX3NlcnZf
bm9uZTsKLSAgdW5zaWduZWQgY2hhciB0dGwgPSA1OwotICBpbnQgYzsKLSAgaW50IGtleV9zaXpl
ID0gMTI4OwotICBpbnQgdGFnX3NpemUgPSA4OwotICBpbnQgZ2NtX29uID0gMDsKLSAgY2hhciAq
aW5wdXRfa2V5ID0gTlVMTDsKLSAgaW50IGI2NF9pbnB1dCA9IDA7Ci0gIGNoYXIgKmFkZHJlc3Mg
PSBOVUxMOwotICBjaGFyIGtleVtNQVhfS0VZX0xFTl07Ci0gIHVuc2lnbmVkIHNob3J0IHBvcnQg
PSAwOwotICBydHBfc2VuZGVyX3Qgc25kOwotICBzcnRwX3BvbGljeV90IHBvbGljeTsKLSAgc3J0
cF9lcnJfc3RhdHVzX3Qgc3RhdHVzOwotICBpbnQgbGVuOwotICBpbnQgZXhwZWN0ZWRfbGVuOwot
ICBpbnQgZG9fbGlzdF9tb2RzID0gMDsKLSAgdWludDMyX3Qgc3NyYyA9IDB4ZGVhZGJlZWY7IC8q
IHNzcmMgdmFsdWUgaGFyZGNvZGVkIGZvciBub3cgKi8KKyAgICBzdHJ1Y3Qgc29ja2FkZHJfaW4g
bG9jYWw7CisjZW5kaWYKKyAgICBwcm9ncmFtX3R5cGUgcHJvZ190eXBlID0gdW5rbm93bjsKKyAg
ICBzcnRwX3NlY19zZXJ2X3Qgc2VjX3NlcnZzID0gc2VjX3NlcnZfbm9uZTsKKyAgICB1bnNpZ25l
ZCBjaGFyIHR0bCA9IDU7CisgICAgaW50IGM7CisgICAgaW50IGtleV9zaXplID0gMTI4OworICAg
IGludCB0YWdfc2l6ZSA9IDg7CisgICAgaW50IGdjbV9vbiA9IDA7CisgICAgY2hhciAqaW5wdXRf
a2V5ID0gTlVMTDsKKyAgICBpbnQgYjY0X2lucHV0ID0gMDsKKyAgICBjaGFyICphZGRyZXNzID0g
TlVMTDsKKyAgICBjaGFyIGtleVtNQVhfS0VZX0xFTl07CisgICAgdW5zaWduZWQgc2hvcnQgcG9y
dCA9IDA7CisgICAgcnRwX3NlbmRlcl90IHNuZDsKKyAgICBzcnRwX3BvbGljeV90IHBvbGljeTsK
KyAgICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7CisgICAgaW50IGxlbjsKKyAgICBpbnQgZXhw
ZWN0ZWRfbGVuOworICAgIGludCBkb19saXN0X21vZHMgPSAwOworICAgIHVpbnQzMl90IHNzcmMg
PSAweGRlYWRiZWVmOyAvKiBzc3JjIHZhbHVlIGhhcmRjb2RlZCBmb3Igbm93ICovCiAjaWZkZWYg
UlRQV19VU0VfV0lOU09DSzIKLSAgV09SRCB3VmVyc2lvblJlcXVlc3RlZCA9IE1BS0VXT1JEKDIs
IDApOwotICBXU0FEQVRBIHdzYURhdGE7CisgICAgV09SRCB3VmVyc2lvblJlcXVlc3RlZCA9IE1B
S0VXT1JEKDIsIDApOworICAgIFdTQURBVEEgd3NhRGF0YTsKIAotICByZXQgPSBXU0FTdGFydHVw
KHdWZXJzaW9uUmVxdWVzdGVkLCAmd3NhRGF0YSk7Ci0gIGlmIChyZXQgIT0gMCkgewotICAgIGZw
cmludGYoc3RkZXJyLCAiZXJyb3I6IFdTQVN0YXJ0dXAoKSBmYWlsZWQ6ICVkXG4iLCByZXQpOwot
ICAgIGV4aXQoMSk7Ci0gIH0KKyAgICByZXQgPSBXU0FTdGFydHVwKHdWZXJzaW9uUmVxdWVzdGVk
LCAmd3NhRGF0YSk7CisgICAgaWYgKHJldCAhPSAwKSB7CisgICAgICAgIGZwcmludGYoc3RkZXJy
LCAiZXJyb3I6IFdTQVN0YXJ0dXAoKSBmYWlsZWQ6ICVkXG4iLCByZXQpOworICAgICAgICBleGl0
KDEpOworICAgIH0KICNlbmRpZgogCi0gIG1lbXNldCgmcG9saWN5LCAweDAsIHNpemVvZihzcnRw
X3BvbGljeV90KSk7CisgICAgbWVtc2V0KCZwb2xpY3ksIDB4MCwgc2l6ZW9mKHNydHBfcG9saWN5
X3QpKTsKIAotICBwcmludGYoIlVzaW5nICVzIFsweCV4XVxuIiwgc3J0cF9nZXRfdmVyc2lvbl9z
dHJpbmcoKSwgc3J0cF9nZXRfdmVyc2lvbigpKTsKKyAgICBwcmludGYoIlVzaW5nICVzIFsweCV4
XVxuIiwgc3J0cF9nZXRfdmVyc2lvbl9zdHJpbmcoKSwgc3J0cF9nZXRfdmVyc2lvbigpKTsKIAot
ICBpZiAoc2V0dXBfc2lnbmFsX2hhbmRsZXIoYXJndlswXSkgIT0gMCkgewotICAgIGV4aXQoMSk7
Ci0gIH0KKyAgICBpZiAoc2V0dXBfc2lnbmFsX2hhbmRsZXIoYXJndlswXSkgIT0gMCkgeworICAg
ICAgICBleGl0KDEpOworICAgIH0KIAotICAvKiBpbml0aWFsaXplIHNydHAgbGlicmFyeSAqLwot
ICBzdGF0dXMgPSBzcnRwX2luaXQoKTsKLSAgaWYgKHN0YXR1cykgewotICAgIHByaW50ZigiZXJy
b3I6IHNydHAgaW5pdGlhbGl6YXRpb24gZmFpbGVkIHdpdGggZXJyb3IgY29kZSAlZFxuIiwgc3Rh
dHVzKTsKLSAgICBleGl0KDEpOwotICB9CisgICAgLyogaW5pdGlhbGl6ZSBzcnRwIGxpYnJhcnkg
Ki8KKyAgICBzdGF0dXMgPSBzcnRwX2luaXQoKTsKKyAgICBpZiAoc3RhdHVzKSB7CisgICAgICAg
IHByaW50ZigiZXJyb3I6IHNydHAgaW5pdGlhbGl6YXRpb24gZmFpbGVkIHdpdGggZXJyb3IgY29k
ZSAlZFxuIiwKKyAgICAgICAgICAgICAgIHN0YXR1cyk7CisgICAgICAgIGV4aXQoMSk7CisgICAg
fQorCisgICAgLyogY2hlY2sgYXJncyAqLworICAgIHdoaWxlICgxKSB7CisgICAgICAgIGMgPSBn
ZXRvcHRfcyhhcmdjLCBhcmd2LCAiYjprOnJzZ3Q6YWU6bGQ6dzoiKTsKKyAgICAgICAgaWYgKGMg
PT0gLTEpIHsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICB9CisgICAgICAgIHN3aXRjaCAo
YykgeworICAgICAgICBjYXNlICdiJzoKKyAgICAgICAgICAgIGI2NF9pbnB1dCA9IDE7CisgICAg
ICAgIC8qIGZhbGwgdGhydSAqLworICAgICAgICBjYXNlICdrJzoKKyAgICAgICAgICAgIGlucHV0
X2tleSA9IG9wdGFyZ19zOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgJ2UnOgor
ICAgICAgICAgICAga2V5X3NpemUgPSBhdG9pKG9wdGFyZ19zKTsKKyAgICAgICAgICAgIGlmIChr
ZXlfc2l6ZSAhPSAxMjggJiYga2V5X3NpemUgIT0gMjU2KSB7CisgICAgICAgICAgICAgICAgcHJp
bnRmKCJlcnJvcjogZW5jcnlwdGlvbiBrZXkgc2l6ZSBtdXN0IGJlIDEyOCBvciAyNTYgKCVkKVxu
IiwKKyAgICAgICAgICAgICAgICAgICAgICAga2V5X3NpemUpOworICAgICAgICAgICAgICAgIGV4
aXQoMSk7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBzZWNfc2VydnMgfD0gc2VjX3NlcnZf
Y29uZjsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlICd0JzoKKyAgICAgICAgICAg
IHRhZ19zaXplID0gYXRvaShvcHRhcmdfcyk7CisgICAgICAgICAgICBpZiAodGFnX3NpemUgIT0g
OCAmJiB0YWdfc2l6ZSAhPSAxNikgeworICAgICAgICAgICAgICAgIHByaW50ZigiZXJyb3I6IEdD
TSB0YWcgc2l6ZSBtdXN0IGJlIDggb3IgMTYgKCVkKVxuIiwgdGFnX3NpemUpOworICAgICAgICAg
ICAgICAgIGV4aXQoMSk7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBicmVhazsKKyAgICAg
ICAgY2FzZSAnYSc6CisgICAgICAgICAgICBzZWNfc2VydnMgfD0gc2VjX3NlcnZfYXV0aDsKKyAg
ICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlICdnJzoKKyAgICAgICAgICAgIGdjbV9vbiA9
IDE7CisgICAgICAgICAgICBzZWNfc2VydnMgfD0gc2VjX3NlcnZfYXV0aDsKKyAgICAgICAgICAg
IGJyZWFrOworICAgICAgICBjYXNlICdyJzoKKyAgICAgICAgICAgIHByb2dfdHlwZSA9IHJlY2Vp
dmVyOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgJ3MnOgorICAgICAgICAgICAg
cHJvZ190eXBlID0gc2VuZGVyOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgJ2Qn
OgorICAgICAgICAgICAgc3RhdHVzID0gc3J0cF9zZXRfZGVidWdfbW9kdWxlKG9wdGFyZ19zLCAx
KTsKKyAgICAgICAgICAgIGlmIChzdGF0dXMpIHsKKyAgICAgICAgICAgICAgICBwcmludGYoImVy
cm9yOiBzZXQgZGVidWcgbW9kdWxlICglcykgZmFpbGVkXG4iLCBvcHRhcmdfcyk7CisgICAgICAg
ICAgICAgICAgZXhpdCgxKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGJyZWFrOworICAg
ICAgICBjYXNlICdsJzoKKyAgICAgICAgICAgIGRvX2xpc3RfbW9kcyA9IDE7CisgICAgICAgICAg
ICBicmVhazsKKyAgICAgICAgY2FzZSAndyc6CisgICAgICAgICAgICBkaWN0ZmlsZSA9IG9wdGFy
Z19zOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAgICAgICB1
c2FnZShhcmd2WzBdKTsKKyAgICAgICAgfQorICAgIH0KIAotICAvKiBjaGVjayBhcmdzICovCi0g
IHdoaWxlICgxKSB7Ci0gICAgYyA9IGdldG9wdF9zKGFyZ2MsIGFyZ3YsICJiOms6cnNndDphZTps
ZDoiKTsKLSAgICBpZiAoYyA9PSAtMSkgewotICAgICAgYnJlYWs7CisgICAgaWYgKHByb2dfdHlw
ZSA9PSB1bmtub3duKSB7CisgICAgICAgIGlmIChkb19saXN0X21vZHMpIHsKKyAgICAgICAgICAg
IHN0YXR1cyA9IHNydHBfbGlzdF9kZWJ1Z19tb2R1bGVzKCk7CisgICAgICAgICAgICBpZiAoc3Rh
dHVzKSB7CisgICAgICAgICAgICAgICAgcHJpbnRmKCJlcnJvcjogbGlzdCBvZiBkZWJ1ZyBtb2R1
bGVzIGZhaWxlZFxuIik7CisgICAgICAgICAgICAgICAgZXhpdCgxKTsKKyAgICAgICAgICAgIH0K
KyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgcHJp
bnRmKCJlcnJvcjogbmVpdGhlciBzZW5kZXIgWy1zXSBub3IgcmVjZWl2ZXIgWy1yXSBzcGVjaWZp
ZWRcbiIpOworICAgICAgICAgICAgdXNhZ2UoYXJndlswXSk7CisgICAgICAgIH0KICAgICB9Ci0g
ICAgc3dpdGNoIChjKSB7Ci0JY2FzZSAnYic6Ci0gICAgICBiNjRfaW5wdXQgPSAxOwotICAgICAg
LyogZmFsbCB0aHJ1ICovCi0gICAgY2FzZSAnayc6Ci0gICAgICBpbnB1dF9rZXkgPSBvcHRhcmdf
czsKLSAgICAgIGJyZWFrOwotICAgIGNhc2UgJ2UnOgotICAgICAga2V5X3NpemUgPSBhdG9pKG9w
dGFyZ19zKTsKLSAgICAgIGlmIChrZXlfc2l6ZSAhPSAxMjggJiYga2V5X3NpemUgIT0gMjU2KSB7
Ci0gICAgICAgIHByaW50ZigiZXJyb3I6IGVuY3J5cHRpb24ga2V5IHNpemUgbXVzdCBiZSAxMjgg
b3IgMjU2ICglZClcbiIsIGtleV9zaXplKTsKLSAgICAgICAgZXhpdCgxKTsKLSAgICAgIH0KLSAg
ICAgIHNlY19zZXJ2cyB8PSBzZWNfc2Vydl9jb25mOwotICAgICAgYnJlYWs7Ci0gICAgY2FzZSAn
dCc6Ci0gICAgICB0YWdfc2l6ZSA9IGF0b2kob3B0YXJnX3MpOwotICAgICAgaWYgKHRhZ19zaXpl
ICE9IDggJiYgdGFnX3NpemUgIT0gMTYpIHsKLSAgICAgICAgcHJpbnRmKCJlcnJvcjogR0NNIHRh
ZyBzaXplIG11c3QgYmUgOCBvciAxNiAoJWQpXG4iLCB0YWdfc2l6ZSk7Ci0gICAgICAgIGV4aXQo
MSk7Ci0gICAgICB9Ci0gICAgICBicmVhazsKLSAgICBjYXNlICdhJzoKLSAgICAgIHNlY19zZXJ2
cyB8PSBzZWNfc2Vydl9hdXRoOwotICAgICAgYnJlYWs7Ci0gICAgY2FzZSAnZyc6Ci0gICAgICBn
Y21fb24gPSAxOwotICAgICAgc2VjX3NlcnZzIHw9IHNlY19zZXJ2X2F1dGg7Ci0gICAgICBicmVh
azsKLSAgICBjYXNlICdyJzoKLSAgICAgIHByb2dfdHlwZSA9IHJlY2VpdmVyOwotICAgICAgYnJl
YWs7Ci0gICAgY2FzZSAncyc6Ci0gICAgICBwcm9nX3R5cGUgPSBzZW5kZXI7Ci0gICAgICBicmVh
azsKLSAgICBjYXNlICdkJzoKLSAgICAgIHN0YXR1cyA9IHNydHBfc2V0X2RlYnVnX21vZHVsZShv
cHRhcmdfcywgMSk7Ci0gICAgICBpZiAoc3RhdHVzKSB7Ci0gICAgICAgIHByaW50ZigiZXJyb3I6
IHNldCBkZWJ1ZyBtb2R1bGUgKCVzKSBmYWlsZWRcbiIsIG9wdGFyZ19zKTsKLSAgICAgICAgZXhp
dCgxKTsKLSAgICAgIH0KLSAgICAgIGJyZWFrOwotICAgIGNhc2UgJ2wnOgotICAgICAgZG9fbGlz
dF9tb2RzID0gMTsKLSAgICAgIGJyZWFrOwotICAgIGRlZmF1bHQ6Ci0gICAgICB1c2FnZShhcmd2
WzBdKTsKKworICAgIGlmICgoc2VjX3NlcnZzICYmICFpbnB1dF9rZXkpIHx8ICghc2VjX3NlcnZz
ICYmIGlucHV0X2tleSkpIHsKKyAgICAgICAgLyoKKyAgICAgICAgICogYSBrZXkgbXVzdCBiZSBw
cm92aWRlZCBpZiBhbmQgb25seSBpZiBzZWN1cml0eSBzZXJ2aWNlcyBoYXZlCisgICAgICAgICAq
IGJlZW4gcmVxdWVzdGVkCisgICAgICAgICAqLworICAgICAgICB1c2FnZShhcmd2WzBdKTsKICAg
ICB9Ci0gIH0KLQotICBpZiAocHJvZ190eXBlID09IHVua25vd24pIHsKLSAgICBpZiAoZG9fbGlz
dF9tb2RzKSB7Ci0gICAgICBzdGF0dXMgPSBzcnRwX2xpc3RfZGVidWdfbW9kdWxlcygpOwotICAg
ICAgaWYgKHN0YXR1cykgewotCXByaW50ZigiZXJyb3I6IGxpc3Qgb2YgZGVidWcgbW9kdWxlcyBm
YWlsZWRcbiIpOwotCWV4aXQoMSk7Ci0gICAgICB9Ci0gICAgICByZXR1cm4gMDsKLSAgICB9IGVs
c2UgewotICAgICAgcHJpbnRmKCJlcnJvcjogbmVpdGhlciBzZW5kZXIgWy1zXSBub3IgcmVjZWl2
ZXIgWy1yXSBzcGVjaWZpZWRcbiIpOwotICAgICAgdXNhZ2UoYXJndlswXSk7CisKKyAgICBpZiAo
YXJnYyAhPSBvcHRpbmRfcyArIDIpIHsKKyAgICAgICAgLyogd3JvbmcgbnVtYmVyIG9mIGFyZ3Vt
ZW50cyAqLworICAgICAgICB1c2FnZShhcmd2WzBdKTsKICAgICB9Ci0gIH0KLSAgIAotICBpZiAo
KHNlY19zZXJ2cyAmJiAhaW5wdXRfa2V5KSB8fCAoIXNlY19zZXJ2cyAmJiBpbnB1dF9rZXkpKSB7
Ci0gICAgLyogCi0gICAgICogYSBrZXkgbXVzdCBiZSBwcm92aWRlZCBpZiBhbmQgb25seSBpZiBz
ZWN1cml0eSBzZXJ2aWNlcyBoYXZlCi0gICAgICogYmVlbiByZXF1ZXN0ZWQgCi0gICAgICovCi0g
ICAgdXNhZ2UoYXJndlswXSk7Ci0gIH0KLSAgICAKLSAgaWYgKGFyZ2MgIT0gb3B0aW5kX3MgKyAy
KSB7Ci0gICAgLyogd3JvbmcgbnVtYmVyIG9mIGFyZ3VtZW50cyAqLwotICAgIHVzYWdlKGFyZ3Zb
MF0pOwotICB9Ci0KLSAgLyogZ2V0IGFkZHJlc3MgZnJvbSBhcmcgKi8KLSAgYWRkcmVzcyA9IGFy
Z3Zbb3B0aW5kX3MrK107Ci0KLSAgLyogZ2V0IHBvcnQgZnJvbSBhcmcgKi8KLSAgcG9ydCA9IGF0
b2koYXJndltvcHRpbmRfcysrXSk7Ci0KLSAgLyogc2V0IGFkZHJlc3MgKi8KKworICAgIC8qIGdl
dCBhZGRyZXNzIGZyb20gYXJnICovCisgICAgYWRkcmVzcyA9IGFyZ3Zbb3B0aW5kX3MrK107CisK
KyAgICAvKiBnZXQgcG9ydCBmcm9tIGFyZyAqLworICAgIHBvcnQgPSBhdG9pKGFyZ3Zbb3B0aW5k
X3MrK10pOworCisvKiBzZXQgYWRkcmVzcyAqLwogI2lmZGVmIEhBVkVfSU5FVF9BVE9OCi0gIGlm
ICgwID09IGluZXRfYXRvbihhZGRyZXNzLCAmcmN2cl9hZGRyKSkgewotICAgIGZwcmludGYoc3Rk
ZXJyLCAiJXM6IGNhbm5vdCBwYXJzZSBJUCB2NCBhZGRyZXNzICVzXG4iLCBhcmd2WzBdLCBhZGRy
ZXNzKTsKLSAgICBleGl0KDEpOwotICB9Ci0gIGlmIChyY3ZyX2FkZHIuc19hZGRyID09IElOQURE
Ul9OT05FKSB7Ci0gICAgZnByaW50ZihzdGRlcnIsICIlczogYWRkcmVzcyBlcnJvciIsIGFyZ3Zb
MF0pOwotICAgIGV4aXQoMSk7Ci0gIH0KKyAgICBpZiAoMCA9PSBpbmV0X2F0b24oYWRkcmVzcywg
JnJjdnJfYWRkcikpIHsKKyAgICAgICAgZnByaW50ZihzdGRlcnIsICIlczogY2Fubm90IHBhcnNl
IElQIHY0IGFkZHJlc3MgJXNcbiIsIGFyZ3ZbMF0sCisgICAgICAgICAgICAgICAgYWRkcmVzcyk7
CisgICAgICAgIGV4aXQoMSk7CisgICAgfQorICAgIGlmIChyY3ZyX2FkZHIuc19hZGRyID09IElO
QUREUl9OT05FKSB7CisgICAgICAgIGZwcmludGYoc3RkZXJyLCAiJXM6IGFkZHJlc3MgZXJyb3Ii
LCBhcmd2WzBdKTsKKyAgICAgICAgZXhpdCgxKTsKKyAgICB9CiAjZWxzZQotICByY3ZyX2FkZHIu
c19hZGRyID0gaW5ldF9hZGRyKGFkZHJlc3MpOwotICBpZiAoMHhmZmZmZmZmZiA9PSByY3ZyX2Fk
ZHIuc19hZGRyKSB7Ci0gICAgZnByaW50ZihzdGRlcnIsICIlczogY2Fubm90IHBhcnNlIElQIHY0
IGFkZHJlc3MgJXNcbiIsIGFyZ3ZbMF0sIGFkZHJlc3MpOwotICAgIGV4aXQoMSk7Ci0gIH0KKyAg
ICByY3ZyX2FkZHIuc19hZGRyID0gaW5ldF9hZGRyKGFkZHJlc3MpOworICAgIGlmICgweGZmZmZm
ZmZmID09IHJjdnJfYWRkci5zX2FkZHIpIHsKKyAgICAgICAgZnByaW50ZihzdGRlcnIsICIlczog
Y2Fubm90IHBhcnNlIElQIHY0IGFkZHJlc3MgJXNcbiIsIGFyZ3ZbMF0sCisgICAgICAgICAgICAg
ICAgYWRkcmVzcyk7CisgICAgICAgIGV4aXQoMSk7CisgICAgfQogI2VuZGlmCiAKLSAgLyogb3Bl
biBzb2NrZXQgKi8KLSAgc29jayA9IHNvY2tldChQRl9JTkVULCBTT0NLX0RHUkFNLCBJUFBST1RP
X1VEUCk7Ci0gIGlmIChzb2NrIDwgMCkgewotICAgIGludCBlcnI7CisgICAgLyogb3BlbiBzb2Nr
ZXQgKi8KKyAgICBzb2NrID0gc29ja2V0KFBGX0lORVQsIFNPQ0tfREdSQU0sIElQUFJPVE9fVURQ
KTsKKyAgICBpZiAoc29jayA8IDApIHsKKyAgICAgICAgaW50IGVycjsKICNpZmRlZiBSVFBXX1VT
RV9XSU5TT0NLMgotICAgIGVyciA9IFdTQUdldExhc3RFcnJvcigpOworICAgICAgICBlcnIgPSBX
U0FHZXRMYXN0RXJyb3IoKTsKICNlbHNlCi0gICAgZXJyID0gZXJybm87CisgICAgICAgIGVyciA9
IGVycm5vOwogI2VuZGlmCi0gICAgZnByaW50ZihzdGRlcnIsICIlczogY291bGRuJ3Qgb3BlbiBz
b2NrZXQ6ICVkXG4iLCBhcmd2WzBdLCBlcnIpOwotICAgZXhpdCgxKTsKLSAgfQotCi0gIG5hbWUu
c2luX2FkZHIgICA9IHJjdnJfYWRkcjsgICAgCi0gIG5hbWUuc2luX2ZhbWlseSA9IFBGX0lORVQ7
Ci0gIG5hbWUuc2luX3BvcnQgICA9IGh0b25zKHBvcnQpOwotIAotICBpZiAoQUREUl9JU19NVUxU
SUNBU1QocmN2cl9hZGRyLnNfYWRkcikpIHsKLSAgICBpZiAocHJvZ190eXBlID09IHNlbmRlcikg
ewotICAgICAgcmV0ID0gc2V0c29ja29wdChzb2NrLCBJUFBST1RPX0lQLCBJUF9NVUxUSUNBU1Rf
VFRMLCAmdHRsLCAKLSAgCSAgICAgICAgICAgICAgIHNpemVvZih0dGwpKTsKLSAgICAgIGlmIChy
ZXQgPCAwKSB7Ci0JZnByaW50ZihzdGRlcnIsICIlczogRmFpbGVkIHRvIHNldCBUVEwgZm9yIG11
bHRpY2FzdCBncm91cCIsIGFyZ3ZbMF0pOwotCXBlcnJvcigiIik7Ci0JZXhpdCgxKTsKLSAgICAg
IH0KKyAgICAgICAgZnByaW50ZihzdGRlcnIsICIlczogY291bGRuJ3Qgb3BlbiBzb2NrZXQ6ICVk
XG4iLCBhcmd2WzBdLCBlcnIpOworICAgICAgICBleGl0KDEpOwogICAgIH0KIAotICAgIG1yZXEu
aW1yX211bHRpYWRkci5zX2FkZHIgPSByY3ZyX2FkZHIuc19hZGRyOwotICAgIG1yZXEuaW1yX2lu
dGVyZmFjZS5zX2FkZHIgPSBodG9ubChJTkFERFJfQU5ZKTsKLSAgICByZXQgPSBzZXRzb2Nrb3B0
KHNvY2ssIElQUFJPVE9fSVAsIElQX0FERF9NRU1CRVJTSElQLCAodm9pZCopJm1yZXEsCi0JCSAg
ICAgc2l6ZW9mKG1yZXEpKTsKLSAgICBpZiAocmV0IDwgMCkgewotICAgICAgZnByaW50ZihzdGRl
cnIsICIlczogRmFpbGVkIHRvIGpvaW4gbXVsdGljYXN0IGdyb3VwIiwgYXJndlswXSk7Ci0gICAg
ICBwZXJyb3IoIiIpOwotICAgICAgZXhpdCgxKTsKKyAgICBuYW1lLnNpbl9hZGRyID0gcmN2cl9h
ZGRyOworICAgIG5hbWUuc2luX2ZhbWlseSA9IFBGX0lORVQ7CisgICAgbmFtZS5zaW5fcG9ydCA9
IGh0b25zKHBvcnQpOworCisgICAgaWYgKEFERFJfSVNfTVVMVElDQVNUKHJjdnJfYWRkci5zX2Fk
ZHIpKSB7CisgICAgICAgIGlmIChwcm9nX3R5cGUgPT0gc2VuZGVyKSB7CisgICAgICAgICAgICBy
ZXQgPSBzZXRzb2Nrb3B0KHNvY2ssIElQUFJPVE9fSVAsIElQX01VTFRJQ0FTVF9UVEwsICZ0dGws
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVvZih0dGwpKTsKKyAgICAgICAgICAg
IGlmIChyZXQgPCAwKSB7CisgICAgICAgICAgICAgICAgZnByaW50ZihzdGRlcnIsICIlczogRmFp
bGVkIHRvIHNldCBUVEwgZm9yIG11bHRpY2FzdCBncm91cCIsCisgICAgICAgICAgICAgICAgICAg
ICAgICBhcmd2WzBdKTsKKyAgICAgICAgICAgICAgICBwZXJyb3IoIiIpOworICAgICAgICAgICAg
ICAgIGV4aXQoMSk7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKworICAgICAgICBtcmVxLmlt
cl9tdWx0aWFkZHIuc19hZGRyID0gcmN2cl9hZGRyLnNfYWRkcjsKKyAgICAgICAgbXJlcS5pbXJf
aW50ZXJmYWNlLnNfYWRkciA9IGh0b25sKElOQUREUl9BTlkpOworICAgICAgICByZXQgPSBzZXRz
b2Nrb3B0KHNvY2ssIElQUFJPVE9fSVAsIElQX0FERF9NRU1CRVJTSElQLCAodm9pZCAqKSZtcmVx
LAorICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVvZihtcmVxKSk7CisgICAgICAgIGlmIChy
ZXQgPCAwKSB7CisgICAgICAgICAgICBmcHJpbnRmKHN0ZGVyciwgIiVzOiBGYWlsZWQgdG8gam9p
biBtdWx0aWNhc3QgZ3JvdXAiLCBhcmd2WzBdKTsKKyAgICAgICAgICAgIHBlcnJvcigiIik7Cisg
ICAgICAgICAgICBleGl0KDEpOworICAgICAgICB9CiAgICAgfQotICB9Ci0KLSAgLyogcmVwb3J0
IHNlY3VyaXR5IHNlcnZpY2VzIHNlbGVjdGVkIG9uIHRoZSBjb21tYW5kIGxpbmUgKi8KLSAgcHJp
bnRmKCJzZWN1cml0eSBzZXJ2aWNlczogIik7Ci0gIGlmIChzZWNfc2VydnMgJiBzZWNfc2Vydl9j
b25mKQotICAgIHByaW50ZigiY29uZmlkZW50aWFsaXR5ICIpOwotICBpZiAoc2VjX3NlcnZzICYg
c2VjX3NlcnZfYXV0aCkKLSAgICBwcmludGYoIm1lc3NhZ2UgYXV0aGVudGljYXRpb24iKTsKLSAg
aWYgKHNlY19zZXJ2cyA9PSBzZWNfc2Vydl9ub25lKQotICAgIHByaW50Zigibm9uZSIpOwotICBw
cmludGYoIlxuIik7Ci0gIAotICAvKiBzZXQgdXAgdGhlIHNydHAgcG9saWN5IGFuZCBtYXN0ZXIg
a2V5ICovICAgIAotICBpZiAoc2VjX3NlcnZzKSB7Ci0gICAgLyogCi0gICAgICogY3JlYXRlIHBv
bGljeSBzdHJ1Y3R1cmUsIHVzaW5nIHRoZSBkZWZhdWx0IG1lY2hhbmlzbXMgYnV0IAotICAgICAq
IHdpdGggb25seSB0aGUgc2VjdXJpdHkgc2VydmljZXMgcmVxdWVzdGVkIG9uIHRoZSBjb21tYW5k
IGxpbmUsCi0gICAgICogdXNpbmcgdGhlIHJpZ2h0IFNTUkMgdmFsdWUKLSAgICAgKi8KLSAgICBz
d2l0Y2ggKHNlY19zZXJ2cykgewotICAgIGNhc2Ugc2VjX3NlcnZfY29uZl9hbmRfYXV0aDoKLSAg
ICAgIGlmIChnY21fb24pIHsKKworICAgIC8qIHJlcG9ydCBzZWN1cml0eSBzZXJ2aWNlcyBzZWxl
Y3RlZCBvbiB0aGUgY29tbWFuZCBsaW5lICovCisgICAgcHJpbnRmKCJzZWN1cml0eSBzZXJ2aWNl
czogIik7CisgICAgaWYgKHNlY19zZXJ2cyAmIHNlY19zZXJ2X2NvbmYpCisgICAgICAgIHByaW50
ZigiY29uZmlkZW50aWFsaXR5ICIpOworICAgIGlmIChzZWNfc2VydnMgJiBzZWNfc2Vydl9hdXRo
KQorICAgICAgICBwcmludGYoIm1lc3NhZ2UgYXV0aGVudGljYXRpb24iKTsKKyAgICBpZiAoc2Vj
X3NlcnZzID09IHNlY19zZXJ2X25vbmUpCisgICAgICAgIHByaW50Zigibm9uZSIpOworICAgIHBy
aW50ZigiXG4iKTsKKworICAgIC8qIHNldCB1cCB0aGUgc3J0cCBwb2xpY3kgYW5kIG1hc3RlciBr
ZXkgKi8KKyAgICBpZiAoc2VjX3NlcnZzKSB7CisgICAgICAgIC8qCisgICAgICAgICAqIGNyZWF0
ZSBwb2xpY3kgc3RydWN0dXJlLCB1c2luZyB0aGUgZGVmYXVsdCBtZWNoYW5pc21zIGJ1dAorICAg
ICAgICAgKiB3aXRoIG9ubHkgdGhlIHNlY3VyaXR5IHNlcnZpY2VzIHJlcXVlc3RlZCBvbiB0aGUg
Y29tbWFuZCBsaW5lLAorICAgICAgICAgKiB1c2luZyB0aGUgcmlnaHQgU1NSQyB2YWx1ZQorICAg
ICAgICAgKi8KKyAgICAgICAgc3dpdGNoIChzZWNfc2VydnMpIHsKKyAgICAgICAgY2FzZSBzZWNf
c2Vydl9jb25mX2FuZF9hdXRoOgorICAgICAgICAgICAgaWYgKGdjbV9vbikgewogI2lmZGVmIE9Q
RU5TU0wKLQlzd2l0Y2ggKGtleV9zaXplKSB7Ci0JY2FzZSAxMjg6Ci0JICBzcnRwX2NyeXB0b19w
b2xpY3lfc2V0X2Flc19nY21fMTI4XzhfYXV0aCgmcG9saWN5LnJ0cCk7Ci0JICBzcnRwX2NyeXB0
b19wb2xpY3lfc2V0X2Flc19nY21fMTI4XzhfYXV0aCgmcG9saWN5LnJ0Y3ApOwotCSAgYnJlYWs7
Ci0JY2FzZSAyNTY6Ci0JICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21fMjU2XzhfYXV0
aCgmcG9saWN5LnJ0cCk7Ci0JICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21fMjU2Xzhf
YXV0aCgmcG9saWN5LnJ0Y3ApOwotCSAgYnJlYWs7Ci0JfQorICAgICAgICAgICAgICAgIHN3aXRj
aCAoa2V5X3NpemUpIHsKKyAgICAgICAgICAgICAgICBjYXNlIDEyODoKKyAgICAgICAgICAgICAg
ICAgICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfZ2NtXzEyOF84X2F1dGgoJnBvbGljeS5y
dHApOworICAgICAgICAgICAgICAgICAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21f
MTI4XzhfYXV0aCgmcG9saWN5LnJ0Y3ApOworICAgICAgICAgICAgICAgICAgICBicmVhazsKKyAg
ICAgICAgICAgICAgICBjYXNlIDI1NjoKKyAgICAgICAgICAgICAgICAgICAgc3J0cF9jcnlwdG9f
cG9saWN5X3NldF9hZXNfZ2NtXzI1Nl84X2F1dGgoJnBvbGljeS5ydHApOworICAgICAgICAgICAg
ICAgICAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21fMjU2XzhfYXV0aCgmcG9saWN5
LnJ0Y3ApOworICAgICAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgICAgICB9CiAj
ZWxzZQotCXByaW50ZigiZXJyb3I6IEdDTSBtb2RlIG9ubHkgc3VwcG9ydGVkIHdoZW4gdXNpbmcg
dGhlIE9wZW5TU0wgY3J5cHRvIGVuZ2luZS5cbiIpOwotCXJldHVybiAwOworICAgICAgICAgICAg
ICAgIHByaW50ZigiZXJyb3I6IEdDTSBtb2RlIG9ubHkgc3VwcG9ydGVkIHdoZW4gdXNpbmcgdGhl
IE9wZW5TU0wgIgorICAgICAgICAgICAgICAgICAgICAgICAiY3J5cHRvIGVuZ2luZS5cbiIpOwor
ICAgICAgICAgICAgICAgIHJldHVybiAwOwogI2VuZGlmCi0gICAgICB9IGVsc2UgewotCXN3aXRj
aCAoa2V5X3NpemUpIHsKLQljYXNlIDEyODoKLSAgICAgICAgICBzcnRwX2NyeXB0b19wb2xpY3lf
c2V0X3J0cF9kZWZhdWx0KCZwb2xpY3kucnRwKTsKLSAgICAgICAgICBzcnRwX2NyeXB0b19wb2xp
Y3lfc2V0X3J0Y3BfZGVmYXVsdCgmcG9saWN5LnJ0Y3ApOwotCSAgYnJlYWs7Ci0JY2FzZSAyNTY6
Ci0gICAgICAgICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfY21fMjU2X2htYWNfc2hhMV84
MCgmcG9saWN5LnJ0cCk7Ci0gICAgICAgICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9ydGNwX2Rl
ZmF1bHQoJnBvbGljeS5ydGNwKTsKLQkgIGJyZWFrOwotCX0KLSAgICAgIH0KLSAgICAgIGJyZWFr
OwotICAgIGNhc2Ugc2VjX3NlcnZfY29uZjoKLSAgICAgIGlmIChnY21fb24pIHsKLQkgIHByaW50
ZigiZXJyb3I6IEdDTSBtb2RlIG11c3QgYWx3YXlzIGJlIHVzZWQgd2l0aCBhdXRoIGVuYWJsZWRc
biIpOwotCSAgcmV0dXJuIC0xOwotICAgICAgfSBlbHNlIHsKLQlzd2l0Y2ggKGtleV9zaXplKSB7
Ci0JY2FzZSAxMjg6Ci0gICAgICAgICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfY21fMTI4
X251bGxfYXV0aCgmcG9saWN5LnJ0cCk7Ci0gICAgICAgICAgc3J0cF9jcnlwdG9fcG9saWN5X3Nl
dF9ydGNwX2RlZmF1bHQoJnBvbGljeS5ydGNwKTsgICAgICAKLQkgIGJyZWFrOwotCWNhc2UgMjU2
OgotICAgICAgICAgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2NtXzI1Nl9udWxsX2F1dGgo
JnBvbGljeS5ydHApOwotICAgICAgICAgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfcnRjcF9kZWZh
dWx0KCZwb2xpY3kucnRjcCk7ICAgICAgCi0JICBicmVhazsKLQl9Ci0gICAgICB9Ci0gICAgICBi
cmVhazsKLSAgICBjYXNlIHNlY19zZXJ2X2F1dGg6Ci0gICAgICBpZiAoZ2NtX29uKSB7CisgICAg
ICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgIHN3aXRjaCAoa2V5X3NpemUpIHsKKyAg
ICAgICAgICAgICAgICBjYXNlIDEyODoKKyAgICAgICAgICAgICAgICAgICAgc3J0cF9jcnlwdG9f
cG9saWN5X3NldF9ydHBfZGVmYXVsdCgmcG9saWN5LnJ0cCk7CisgICAgICAgICAgICAgICAgICAg
IHNydHBfY3J5cHRvX3BvbGljeV9zZXRfcnRjcF9kZWZhdWx0KCZwb2xpY3kucnRjcCk7CisgICAg
ICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgICAgIGNhc2UgMjU2OgorICAgICAg
ICAgICAgICAgICAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19jbV8yNTZfaG1hY19zaGEx
XzgwKCZwb2xpY3kucnRwKTsKKyAgICAgICAgICAgICAgICAgICAgc3J0cF9jcnlwdG9fcG9saWN5
X3NldF9ydGNwX2RlZmF1bHQoJnBvbGljeS5ydGNwKTsKKyAgICAgICAgICAgICAgICAgICAgYnJl
YWs7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICAgICAgYnJlYWs7
CisgICAgICAgIGNhc2Ugc2VjX3NlcnZfY29uZjoKKyAgICAgICAgICAgIGlmIChnY21fb24pIHsK
KyAgICAgICAgICAgICAgICBwcmludGYoCisgICAgICAgICAgICAgICAgICAgICJlcnJvcjogR0NN
IG1vZGUgbXVzdCBhbHdheXMgYmUgdXNlZCB3aXRoIGF1dGggZW5hYmxlZFxuIik7CisgICAgICAg
ICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAg
ICBzd2l0Y2ggKGtleV9zaXplKSB7CisgICAgICAgICAgICAgICAgY2FzZSAxMjg6CisgICAgICAg
ICAgICAgICAgICAgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2NtXzEyOF9udWxsX2F1dGgo
JnBvbGljeS5ydHApOworICAgICAgICAgICAgICAgICAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0
X3J0Y3BfZGVmYXVsdCgmcG9saWN5LnJ0Y3ApOworICAgICAgICAgICAgICAgICAgICBicmVhazsK
KyAgICAgICAgICAgICAgICBjYXNlIDI1NjoKKyAgICAgICAgICAgICAgICAgICAgc3J0cF9jcnlw
dG9fcG9saWN5X3NldF9hZXNfY21fMjU2X251bGxfYXV0aCgmcG9saWN5LnJ0cCk7CisgICAgICAg
ICAgICAgICAgICAgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfcnRjcF9kZWZhdWx0KCZwb2xpY3ku
cnRjcCk7CisgICAgICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgICAgIH0KKyAg
ICAgICAgICAgIH0KKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIHNlY19zZXJ2X2F1
dGg6CisgICAgICAgICAgICBpZiAoZ2NtX29uKSB7CiAjaWZkZWYgT1BFTlNTTAotCXN3aXRjaCAo
a2V5X3NpemUpIHsKLQljYXNlIDEyODoKLQkgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2dj
bV8xMjhfOF9vbmx5X2F1dGgoJnBvbGljeS5ydHApOwotCSAgc3J0cF9jcnlwdG9fcG9saWN5X3Nl
dF9hZXNfZ2NtXzEyOF84X29ubHlfYXV0aCgmcG9saWN5LnJ0Y3ApOwotCSAgYnJlYWs7Ci0JY2Fz
ZSAyNTY6Ci0JICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21fMjU2Xzhfb25seV9hdXRo
KCZwb2xpY3kucnRwKTsKLQkgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2djbV8yNTZfOF9v
bmx5X2F1dGgoJnBvbGljeS5ydGNwKTsKLQkgIGJyZWFrOwotCX0KKyAgICAgICAgICAgICAgICBz
d2l0Y2ggKGtleV9zaXplKSB7CisgICAgICAgICAgICAgICAgY2FzZSAxMjg6CisgICAgICAgICAg
ICAgICAgICAgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2djbV8xMjhfOF9vbmx5X2F1dGgo
JnBvbGljeS5ydHApOworICAgICAgICAgICAgICAgICAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0
X2Flc19nY21fMTI4Xzhfb25seV9hdXRoKAorICAgICAgICAgICAgICAgICAgICAgICAgJnBvbGlj
eS5ydGNwKTsKKyAgICAgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICAgICAgY2Fz
ZSAyNTY6CisgICAgICAgICAgICAgICAgICAgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2dj
bV8yNTZfOF9vbmx5X2F1dGgoJnBvbGljeS5ydHApOworICAgICAgICAgICAgICAgICAgICBzcnRw
X2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21fMjU2Xzhfb25seV9hdXRoKAorICAgICAgICAgICAg
ICAgICAgICAgICAgJnBvbGljeS5ydGNwKTsKKyAgICAgICAgICAgICAgICAgICAgYnJlYWs7Cisg
ICAgICAgICAgICAgICAgfQogI2Vsc2UKLQlwcmludGYoImVycm9yOiBHQ00gbW9kZSBvbmx5IHN1
cHBvcnRlZCB3aGVuIHVzaW5nIHRoZSBPcGVuU1NMIGNyeXB0byBlbmdpbmUuXG4iKTsKLQlyZXR1
cm4gMDsKKyAgICAgICAgICAgICAgICBwcmludGYoImVycm9yOiBHQ00gbW9kZSBvbmx5IHN1cHBv
cnRlZCB3aGVuIHVzaW5nIHRoZSBPcGVuU1NMICIKKyAgICAgICAgICAgICAgICAgICAgICAgImNy
eXB0byBlbmdpbmUuXG4iKTsKKyAgICAgICAgICAgICAgICByZXR1cm4gMDsKICNlbmRpZgotICAg
ICAgfSBlbHNlIHsKLSAgICAgICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9udWxsX2NpcGhlcl9o
bWFjX3NoYTFfODAoJnBvbGljeS5ydHApOwotICAgICAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0
X3J0Y3BfZGVmYXVsdCgmcG9saWN5LnJ0Y3ApOwotICAgICAgfQotICAgICAgYnJlYWs7Ci0gICAg
ZGVmYXVsdDoKLSAgICAgIHByaW50ZigiZXJyb3I6IHVua25vd24gc2VjdXJpdHkgc2VydmljZSBy
ZXF1ZXN0ZWRcbiIpOwotICAgICAgcmV0dXJuIC0xOwotICAgIH0gCi0gICAgcG9saWN5LnNzcmMu
dHlwZSAgPSBzc3JjX3NwZWNpZmljOwotICAgIHBvbGljeS5zc3JjLnZhbHVlID0gc3NyYzsKLSAg
ICBwb2xpY3kua2V5ID0gKHVpbnQ4X3QgKilrZXk7Ci0gICAgcG9saWN5LmVrdCAgPSBOVUxMOwot
ICAgIHBvbGljeS5uZXh0ID0gTlVMTDsKLSAgICBwb2xpY3kud2luZG93X3NpemUgPSAxMjg7Ci0g
ICAgcG9saWN5LmFsbG93X3JlcGVhdF90eCA9IDA7Ci0gICAgcG9saWN5LnJ0cC5zZWNfc2VydiA9
IHNlY19zZXJ2czsKLSAgICBwb2xpY3kucnRjcC5zZWNfc2VydiA9IHNlY19zZXJ2X25vbmU7ICAv
KiB3ZSBkb24ndCBkbyBSVENQIGFueXdheSAqLwotCi0gICAgaWYgKGdjbV9vbiAmJiB0YWdfc2l6
ZSAhPSA4KSB7Ci0JcG9saWN5LnJ0cC5hdXRoX3RhZ19sZW4gPSB0YWdfc2l6ZTsKLSAgICB9Cisg
ICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgIHNydHBfY3J5cHRvX3BvbGljeV9z
ZXRfbnVsbF9jaXBoZXJfaG1hY19zaGExXzgwKCZwb2xpY3kucnRwKTsKKyAgICAgICAgICAgICAg
ICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X3J0Y3BfZGVmYXVsdCgmcG9saWN5LnJ0Y3ApOworICAg
ICAgICAgICAgfQorICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGRlZmF1bHQ6CisgICAgICAg
ICAgICBwcmludGYoImVycm9yOiB1bmtub3duIHNlY3VyaXR5IHNlcnZpY2UgcmVxdWVzdGVkXG4i
KTsKKyAgICAgICAgICAgIHJldHVybiAtMTsKKyAgICAgICAgfQorICAgICAgICBwb2xpY3kuc3Ny
Yy50eXBlID0gc3NyY19zcGVjaWZpYzsKKyAgICAgICAgcG9saWN5LnNzcmMudmFsdWUgPSBzc3Jj
OworICAgICAgICBwb2xpY3kua2V5ID0gKHVpbnQ4X3QgKilrZXk7CisgICAgICAgIHBvbGljeS5l
a3QgPSBOVUxMOworICAgICAgICBwb2xpY3kubmV4dCA9IE5VTEw7CisgICAgICAgIHBvbGljeS53
aW5kb3dfc2l6ZSA9IDEyODsKKyAgICAgICAgcG9saWN5LmFsbG93X3JlcGVhdF90eCA9IDA7Cisg
ICAgICAgIHBvbGljeS5ydHAuc2VjX3NlcnYgPSBzZWNfc2VydnM7CisgICAgICAgIHBvbGljeS5y
dGNwLnNlY19zZXJ2ID0gc2VjX3NlcnZfbm9uZTsgLyogd2UgZG9uJ3QgZG8gUlRDUCBhbnl3YXkg
Ki8KKworICAgICAgICBpZiAoZ2NtX29uICYmIHRhZ19zaXplICE9IDgpIHsKKyAgICAgICAgICAg
IHBvbGljeS5ydHAuYXV0aF90YWdfbGVuID0gdGFnX3NpemU7CisgICAgICAgIH0KIAotICAgIC8q
Ci0gICAgICogcmVhZCBrZXkgZnJvbSBoZXhhZGVjaW1hbCBvciBiYXNlNjQgb24gY29tbWFuZCBs
aW5lIGludG8gYW4gb2N0ZXQgc3RyaW5nCi0gICAgICovCi0gICAgaWYgKGI2NF9pbnB1dCkgewot
ICAgICAgICBpbnQgcGFkOwotICAgICAgICBleHBlY3RlZF9sZW4gPSAocG9saWN5LnJ0cC5jaXBo
ZXJfa2V5X2xlbio0KS8zOwotICAgICAgICBsZW4gPSBiYXNlNjRfc3RyaW5nX3RvX29jdGV0X3N0
cmluZyhrZXksICZwYWQsIGlucHV0X2tleSwgZXhwZWN0ZWRfbGVuKTsKLSAgICAgICAgaWYgKHBh
ZCAhPSAwKSB7Ci0gICAgICAgICAgZnByaW50ZihzdGRlcnIsICJlcnJvcjogcGFkZGluZyBpbiBi
YXNlNjQgdW5leHBlY3RlZFxuIik7Ci0gICAgICAgICAgZXhpdCgxKTsKKyAgICAgICAgLyoKKyAg
ICAgICAgICogcmVhZCBrZXkgZnJvbSBoZXhhZGVjaW1hbCBvciBiYXNlNjQgb24gY29tbWFuZCBs
aW5lIGludG8gYW4gb2N0ZXQKKyAgICAgICAgICogc3RyaW5nCisgICAgICAgICAqLworICAgICAg
ICBpZiAoYjY0X2lucHV0KSB7CisgICAgICAgICAgICBpbnQgcGFkOworICAgICAgICAgICAgZXhw
ZWN0ZWRfbGVuID0gKHBvbGljeS5ydHAuY2lwaGVyX2tleV9sZW4gKiA0KSAvIDM7CisgICAgICAg
ICAgICBsZW4gPSBiYXNlNjRfc3RyaW5nX3RvX29jdGV0X3N0cmluZyhrZXksICZwYWQsIGlucHV0
X2tleSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4
cGVjdGVkX2xlbik7CisgICAgICAgICAgICBpZiAocGFkICE9IDApIHsKKyAgICAgICAgICAgICAg
ICBmcHJpbnRmKHN0ZGVyciwgImVycm9yOiBwYWRkaW5nIGluIGJhc2U2NCB1bmV4cGVjdGVkXG4i
KTsKKyAgICAgICAgICAgICAgICBleGl0KDEpOworICAgICAgICAgICAgfQorICAgICAgICB9IGVs
c2UgeworICAgICAgICAgICAgZXhwZWN0ZWRfbGVuID0gcG9saWN5LnJ0cC5jaXBoZXJfa2V5X2xl
biAqIDI7CisgICAgICAgICAgICBsZW4gPSBoZXhfc3RyaW5nX3RvX29jdGV0X3N0cmluZyhrZXks
IGlucHV0X2tleSwgZXhwZWN0ZWRfbGVuKTsKKyAgICAgICAgfQorICAgICAgICAvKiBjaGVjayB0
aGF0IGhleCBzdHJpbmcgaXMgdGhlIHJpZ2h0IGxlbmd0aCAqLworICAgICAgICBpZiAobGVuIDwg
ZXhwZWN0ZWRfbGVuKSB7CisgICAgICAgICAgICBmcHJpbnRmKHN0ZGVyciwgImVycm9yOiB0b28g
ZmV3IGRpZ2l0cyBpbiBrZXkvc2FsdCAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIihz
aG91bGQgYmUgJWQgZGlnaXRzLCBmb3VuZCAlZClcbiIsCisgICAgICAgICAgICAgICAgICAgIGV4
cGVjdGVkX2xlbiwgbGVuKTsKKyAgICAgICAgICAgIGV4aXQoMSk7CisgICAgICAgIH0KKyAgICAg
ICAgaWYgKChpbnQpc3RybGVuKGlucHV0X2tleSkgPiBwb2xpY3kucnRwLmNpcGhlcl9rZXlfbGVu
ICogMikgeworICAgICAgICAgICAgZnByaW50ZihzdGRlcnIsICJlcnJvcjogdG9vIG1hbnkgZGln
aXRzIGluIGtleS9zYWx0ICIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAiKHNob3VsZCBi
ZSAlZCBoZXhhZGVjaW1hbCBkaWdpdHMsIGZvdW5kICV1KVxuIiwKKyAgICAgICAgICAgICAgICAg
ICAgcG9saWN5LnJ0cC5jaXBoZXJfa2V5X2xlbiAqIDIsICh1bnNpZ25lZClzdHJsZW4oaW5wdXRf
a2V5KSk7CisgICAgICAgICAgICBleGl0KDEpOwogICAgICAgICB9CisKKyAgICAgICAgcHJpbnRm
KCJzZXQgbWFzdGVyIGtleS9zYWx0IHRvICVzLyIsIG9jdGV0X3N0cmluZ19oZXhfc3RyaW5nKGtl
eSwgMTYpKTsKKyAgICAgICAgcHJpbnRmKCIlc1xuIiwgb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmco
a2V5ICsgMTYsIDE0KSk7CisKICAgICB9IGVsc2UgewotICAgICAgICBleHBlY3RlZF9sZW4gPSBw
b2xpY3kucnRwLmNpcGhlcl9rZXlfbGVuKjI7Ci0gICAgICAgIGxlbiA9IGhleF9zdHJpbmdfdG9f
b2N0ZXRfc3RyaW5nKGtleSwgaW5wdXRfa2V5LCBleHBlY3RlZF9sZW4pOwotICAgIH0KLSAgICAv
KiBjaGVjayB0aGF0IGhleCBzdHJpbmcgaXMgdGhlIHJpZ2h0IGxlbmd0aCAqLwotICAgIGlmIChs
ZW4gPCBleHBlY3RlZF9sZW4pIHsKLSAgICAgIGZwcmludGYoc3RkZXJyLCAKLQkgICAgICAiZXJy
b3I6IHRvbyBmZXcgZGlnaXRzIGluIGtleS9zYWx0ICIKLQkgICAgICAiKHNob3VsZCBiZSAlZCBk
aWdpdHMsIGZvdW5kICVkKVxuIiwKLQkgICAgICBleHBlY3RlZF9sZW4sIGxlbik7Ci0gICAgICBl
eGl0KDEpOyAgICAKLSAgICB9IAotICAgIGlmICgoaW50KSBzdHJsZW4oaW5wdXRfa2V5KSA+IHBv
bGljeS5ydHAuY2lwaGVyX2tleV9sZW4qMikgewotICAgICAgZnByaW50ZihzdGRlcnIsIAotCSAg
ICAgICJlcnJvcjogdG9vIG1hbnkgZGlnaXRzIGluIGtleS9zYWx0ICIKLQkgICAgICAiKHNob3Vs
ZCBiZSAlZCBoZXhhZGVjaW1hbCBkaWdpdHMsIGZvdW5kICV1KVxuIiwKLQkgICAgICBwb2xpY3ku
cnRwLmNpcGhlcl9rZXlfbGVuKjIsICh1bnNpZ25lZClzdHJsZW4oaW5wdXRfa2V5KSk7Ci0gICAg
ICBleGl0KDEpOyAgICAKKyAgICAgICAgLyoKKyAgICAgICAgICogd2UncmUgbm90IHByb3ZpZGlu
ZyBzZWN1cml0eSBzZXJ2aWNlcywgc28gc2V0IHRoZSBwb2xpY3kgdG8gdGhlCisgICAgICAgICAq
IG51bGwgcG9saWN5CisgICAgICAgICAqCisgICAgICAgICAqIE5vdGUgdGhhdCB0aGlzIHBvbGlj
eSBkb2VzIG5vdCBjb25mb3JtIHRvIHRoZSBTUlRQCisgICAgICAgICAqIHNwZWNpZmljYXRpb24s
IHNpbmNlIFJUQ1AgYXV0aGVudGljYXRpb24gaXMgcmVxdWlyZWQuICBIb3dldmVyLAorICAgICAg
ICAgKiB0aGUgZWZmZWN0IG9mIHRoaXMgcG9saWN5IGlzIHRvIHR1cm4gb2ZmIFNSVFAsIHNvIHRo
YXQgdGhpcworICAgICAgICAgKiBhcHBsaWNhdGlvbiBpcyBub3cgYSB2YW5pbGxhLWZsYXZvcmVk
IFJUUCBhcHBsaWNhdGlvbi4KKyAgICAgICAgICovCisgICAgICAgIHNydHBfY3J5cHRvX3BvbGlj
eV9zZXRfbnVsbF9jaXBoZXJfaG1hY19udWxsKCZwb2xpY3kucnRwKTsKKyAgICAgICAgc3J0cF9j
cnlwdG9fcG9saWN5X3NldF9udWxsX2NpcGhlcl9obWFjX251bGwoJnBvbGljeS5ydGNwKTsKKyAg
ICAgICAgcG9saWN5LmtleSA9ICh1aW50OF90ICopa2V5OworICAgICAgICBwb2xpY3kuc3NyYy50
eXBlID0gc3NyY19zcGVjaWZpYzsKKyAgICAgICAgcG9saWN5LnNzcmMudmFsdWUgPSBzc3JjOwor
ICAgICAgICBwb2xpY3kud2luZG93X3NpemUgPSAwOworICAgICAgICBwb2xpY3kuYWxsb3dfcmVw
ZWF0X3R4ID0gMDsKKyAgICAgICAgcG9saWN5LmVrdCA9IE5VTEw7CisgICAgICAgIHBvbGljeS5u
ZXh0ID0gTlVMTDsKICAgICB9Ci0gICAgCi0gICAgcHJpbnRmKCJzZXQgbWFzdGVyIGtleS9zYWx0
IHRvICVzLyIsIG9jdGV0X3N0cmluZ19oZXhfc3RyaW5nKGtleSwgMTYpKTsKLSAgICBwcmludGYo
IiVzXG4iLCBvY3RldF9zdHJpbmdfaGV4X3N0cmluZyhrZXkrMTYsIDE0KSk7Ci0gIAotICB9IGVs
c2UgewotICAgIC8qCi0gICAgICogd2UncmUgbm90IHByb3ZpZGluZyBzZWN1cml0eSBzZXJ2aWNl
cywgc28gc2V0IHRoZSBwb2xpY3kgdG8gdGhlCi0gICAgICogbnVsbCBwb2xpY3kKLSAgICAgKgot
ICAgICAqIE5vdGUgdGhhdCB0aGlzIHBvbGljeSBkb2VzIG5vdCBjb25mb3JtIHRvIHRoZSBTUlRQ
Ci0gICAgICogc3BlY2lmaWNhdGlvbiwgc2luY2UgUlRDUCBhdXRoZW50aWNhdGlvbiBpcyByZXF1
aXJlZC4gIEhvd2V2ZXIsCi0gICAgICogdGhlIGVmZmVjdCBvZiB0aGlzIHBvbGljeSBpcyB0byB0
dXJuIG9mZiBTUlRQLCBzbyB0aGF0IHRoaXMKLSAgICAgKiBhcHBsaWNhdGlvbiBpcyBub3cgYSB2
YW5pbGxhLWZsYXZvcmVkIFJUUCBhcHBsaWNhdGlvbi4KLSAgICAgKi8KLSAgICBzcnRwX2NyeXB0
b19wb2xpY3lfc2V0X251bGxfY2lwaGVyX2htYWNfbnVsbCgmcG9saWN5LnJ0cCk7Ci0gICAgc3J0
cF9jcnlwdG9fcG9saWN5X3NldF9udWxsX2NpcGhlcl9obWFjX251bGwoJnBvbGljeS5ydGNwKTsK
LSAgICBwb2xpY3kua2V5ID0gKHVpbnQ4X3QgKilrZXk7Ci0gICAgcG9saWN5LnNzcmMudHlwZSAg
ICAgICAgICAgPSBzc3JjX3NwZWNpZmljOwotICAgIHBvbGljeS5zc3JjLnZhbHVlICAgICAgICAg
ID0gc3NyYzsKLSAgICBwb2xpY3kud2luZG93X3NpemUgICAgICAgICA9IDA7Ci0gICAgcG9saWN5
LmFsbG93X3JlcGVhdF90eCAgICAgPSAwOwotICAgIHBvbGljeS5la3QgICAgICAgICAgICAgICAg
ID0gTlVMTDsKLSAgICBwb2xpY3kubmV4dCAgICAgICAgICAgICAgICA9IE5VTEw7Ci0gIH0KLQot
ICBpZiAocHJvZ190eXBlID09IHNlbmRlcikgewogCisgICAgaWYgKHByb2dfdHlwZSA9PSBzZW5k
ZXIpIHsKICNpZiBCRVcKLSAgICAvKiBiaW5kIHRvIGxvY2FsIHNvY2tldCAodG8gbWF0Y2ggY3J5
cHRvIHBvbGljeSwgaWYgbmVlZCBiZSkgKi8KLSAgICBtZW1zZXQoJmxvY2FsLCAwLCBzaXplb2Yo
c3RydWN0IHNvY2thZGRyX2luKSk7Ci0gICAgbG9jYWwuc2luX2FkZHIuc19hZGRyID0gaHRvbmwo
SU5BRERSX0FOWSk7Ci0gICAgbG9jYWwuc2luX3BvcnQgPSBodG9ucyhwb3J0KTsKLSAgICByZXQg
PSBiaW5kKHNvY2ssIChzdHJ1Y3Qgc29ja2FkZHIgKikgJmxvY2FsLCBzaXplb2Yoc3RydWN0IHNv
Y2thZGRyX2luKSk7Ci0gICAgaWYgKHJldCA8IDApIHsKLSAgICAgIGZwcmludGYoc3RkZXJyLCAi
JXM6IGJpbmQgZmFpbGVkXG4iLCBhcmd2WzBdKTsKLSAgICAgIHBlcnJvcigiIik7Ci0gICAgICBl
eGl0KDEpOyAKLSAgICB9CisgICAgICAgIC8qIGJpbmQgdG8gbG9jYWwgc29ja2V0ICh0byBtYXRj
aCBjcnlwdG8gcG9saWN5LCBpZiBuZWVkIGJlKSAqLworICAgICAgICBtZW1zZXQoJmxvY2FsLCAw
LCBzaXplb2Yoc3RydWN0IHNvY2thZGRyX2luKSk7CisgICAgICAgIGxvY2FsLnNpbl9hZGRyLnNf
YWRkciA9IGh0b25sKElOQUREUl9BTlkpOworICAgICAgICBsb2NhbC5zaW5fcG9ydCA9IGh0b25z
KHBvcnQpOworICAgICAgICByZXQgPSBiaW5kKHNvY2ssIChzdHJ1Y3Qgc29ja2FkZHIgKikmbG9j
YWwsIHNpemVvZihzdHJ1Y3Qgc29ja2FkZHJfaW4pKTsKKyAgICAgICAgaWYgKHJldCA8IDApIHsK
KyAgICAgICAgICAgIGZwcmludGYoc3RkZXJyLCAiJXM6IGJpbmQgZmFpbGVkXG4iLCBhcmd2WzBd
KTsKKyAgICAgICAgICAgIHBlcnJvcigiIik7CisgICAgICAgICAgICBleGl0KDEpOworICAgICAg
ICB9CiAjZW5kaWYgLyogQkVXICovCiAKLSAgICAvKiBpbml0aWFsaXplIHNlbmRlcidzIHJ0cCBh
bmQgc3J0cCBjb250ZXh0cyAqLwotICAgIHNuZCA9IHJ0cF9zZW5kZXJfYWxsb2MoKTsKLSAgICBp
ZiAoc25kID09IE5VTEwpIHsKLSAgICAgIGZwcmludGYoc3RkZXJyLCAiZXJyb3I6IG1hbGxvYygp
IGZhaWxlZFxuIik7Ci0gICAgICBleGl0KDEpOwotICAgIH0KLSAgICBydHBfc2VuZGVyX2luaXQo
c25kLCBzb2NrLCBuYW1lLCBzc3JjKTsgCi0gICAgc3RhdHVzID0gcnRwX3NlbmRlcl9pbml0X3Ny
dHAoc25kLCAmcG9saWN5KTsKLSAgICBpZiAoc3RhdHVzKSB7Ci0gICAgICBmcHJpbnRmKHN0ZGVy
ciwgCi0JICAgICAgImVycm9yOiBzcnRwX2NyZWF0ZSgpIGZhaWxlZCB3aXRoIGNvZGUgJWRcbiIs
IAotCSAgICAgIHN0YXR1cyk7Ci0gICAgICBleGl0KDEpOwotICAgIH0KLSAKLSAgICAvKiBvcGVu
IGRpY3Rpb25hcnkgKi8KLSAgICBkaWN0ID0gZm9wZW4gKGRpY3RmaWxlLCAiciIpOwotICAgIGlm
IChkaWN0ID09IE5VTEwpIHsKLSAgICAgIGZwcmludGYoc3RkZXJyLCAiJXM6IGNvdWxkbid0IG9w
ZW4gZmlsZSAlc1xuIiwgYXJndlswXSwgZGljdGZpbGUpOwotICAgICAgaWYgKEFERFJfSVNfTVVM
VElDQVNUKHJjdnJfYWRkci5zX2FkZHIpKSB7Ci0gIAlsZWF2ZV9ncm91cChzb2NrLCBtcmVxLCBh
cmd2WzBdKTsKLSAgICAgIH0KLSAgICAgIGV4aXQoMSk7Ci0gICAgfQotICAgICAgICAgIAotICAg
IC8qIHJlYWQgd29yZHMgZnJvbSBkaWN0aW9uYXJ5LCB0aGVuIHNlbmQgdGhlbSBvZmYgKi8KLSAg
ICB3aGlsZSAoIWludGVycnVwdGVkICYmIGZnZXRzKHdvcmQsIE1BWF9XT1JEX0xFTiwgZGljdCkg
IT0gTlVMTCkgeyAKLSAgICAgIGxlbiA9IHN0cmxlbih3b3JkKSArIDE7ICAvKiBwbHVzIG9uZSBm
b3IgbnVsbCAqLwotICAgICAgCi0gICAgICBpZiAobGVuID4gTUFYX1dPUkRfTEVOKSAKLQlwcmlu
dGYoImVycm9yOiB3b3JkICVzIHRvbyBsYXJnZSB0byBzZW5kXG4iLCB3b3JkKTsKLSAgICAgIGVs
c2UgewotCXJ0cF9zZW5kdG8oc25kLCB3b3JkLCBsZW4pOwotICAgICAgICBwcmludGYoInNlbmRp
bmcgd29yZDogJXMiLCB3b3JkKTsKLSAgICAgIH0KLSAgICAgIHVzbGVlcChVU0VDX1JBVEUpOwot
ICAgIH0KKyAgICAgICAgLyogaW5pdGlhbGl6ZSBzZW5kZXIncyBydHAgYW5kIHNydHAgY29udGV4
dHMgKi8KKyAgICAgICAgc25kID0gcnRwX3NlbmRlcl9hbGxvYygpOworICAgICAgICBpZiAoc25k
ID09IE5VTEwpIHsKKyAgICAgICAgICAgIGZwcmludGYoc3RkZXJyLCAiZXJyb3I6IG1hbGxvYygp
IGZhaWxlZFxuIik7CisgICAgICAgICAgICBleGl0KDEpOworICAgICAgICB9CisgICAgICAgIHJ0
cF9zZW5kZXJfaW5pdChzbmQsIHNvY2ssIG5hbWUsIHNzcmMpOworICAgICAgICBzdGF0dXMgPSBy
dHBfc2VuZGVyX2luaXRfc3J0cChzbmQsICZwb2xpY3kpOworICAgICAgICBpZiAoc3RhdHVzKSB7
CisgICAgICAgICAgICBmcHJpbnRmKHN0ZGVyciwgImVycm9yOiBzcnRwX2NyZWF0ZSgpIGZhaWxl
ZCB3aXRoIGNvZGUgJWRcbiIsCisgICAgICAgICAgICAgICAgICAgIHN0YXR1cyk7CisgICAgICAg
ICAgICBleGl0KDEpOworICAgICAgICB9CiAKLSAgICBydHBfc2VuZGVyX2RlaW5pdF9zcnRwKHNu
ZCk7Ci0gICAgcnRwX3NlbmRlcl9kZWFsbG9jKHNuZCk7Ci0KLSAgICBmY2xvc2UoZGljdCk7Ci0g
IH0gZWxzZSAgeyAvKiBwcm9nX3R5cGUgPT0gcmVjZWl2ZXIgKi8KLSAgICBydHBfcmVjZWl2ZXJf
dCByY3ZyOwotICAgICAgICAKLSAgICBpZiAoYmluZChzb2NrLCAoc3RydWN0IHNvY2thZGRyICop
Jm5hbWUsIHNpemVvZihuYW1lKSkgPCAwKSB7Ci0gICAgICBjbG9zZShzb2NrKTsKLSAgICAgIGZw
cmludGYoc3RkZXJyLCAiJXM6IHNvY2tldCBiaW5kIGVycm9yXG4iLCBhcmd2WzBdKTsKLSAgICAg
IHBlcnJvcihOVUxMKTsKLSAgICAgIGlmIChBRERSX0lTX01VTFRJQ0FTVChyY3ZyX2FkZHIuc19h
ZGRyKSkgewotICAgIAlsZWF2ZV9ncm91cChzb2NrLCBtcmVxLCBhcmd2WzBdKTsKLSAgICAgIH0K
LSAgICAgIGV4aXQoMSk7Ci0gICAgfQorICAgICAgICAvKiBvcGVuIGRpY3Rpb25hcnkgKi8KKyAg
ICAgICAgZGljdCA9IGZvcGVuKGRpY3RmaWxlLCAiciIpOworICAgICAgICBpZiAoZGljdCA9PSBO
VUxMKSB7CisgICAgICAgICAgICBmcHJpbnRmKHN0ZGVyciwgIiVzOiBjb3VsZG4ndCBvcGVuIGZp
bGUgJXNcbiIsIGFyZ3ZbMF0sIGRpY3RmaWxlKTsKKyAgICAgICAgICAgIGlmIChBRERSX0lTX01V
TFRJQ0FTVChyY3ZyX2FkZHIuc19hZGRyKSkgeworICAgICAgICAgICAgICAgIGxlYXZlX2dyb3Vw
KHNvY2ssIG1yZXEsIGFyZ3ZbMF0pOworICAgICAgICAgICAgfQorICAgICAgICAgICAgZXhpdCgx
KTsKKyAgICAgICAgfQogCi0gICAgcmN2ciA9IHJ0cF9yZWNlaXZlcl9hbGxvYygpOwotICAgIGlm
IChyY3ZyID09IE5VTEwpIHsKLSAgICAgIGZwcmludGYoc3RkZXJyLCAiZXJyb3I6IG1hbGxvYygp
IGZhaWxlZFxuIik7Ci0gICAgICBleGl0KDEpOwotICAgIH0KLSAgICBydHBfcmVjZWl2ZXJfaW5p
dChyY3ZyLCBzb2NrLCBuYW1lLCBzc3JjKTsKLSAgICBzdGF0dXMgPSBydHBfcmVjZWl2ZXJfaW5p
dF9zcnRwKHJjdnIsICZwb2xpY3kpOwotICAgIGlmIChzdGF0dXMpIHsKLSAgICAgIGZwcmludGYo
c3RkZXJyLCAKLQkgICAgICAiZXJyb3I6IHNydHBfY3JlYXRlKCkgZmFpbGVkIHdpdGggY29kZSAl
ZFxuIiwgCi0JICAgICAgc3RhdHVzKTsKLSAgICAgIGV4aXQoMSk7Ci0gICAgfQorICAgICAgICAv
KiByZWFkIHdvcmRzIGZyb20gZGljdGlvbmFyeSwgdGhlbiBzZW5kIHRoZW0gb2ZmICovCisgICAg
ICAgIHdoaWxlICghaW50ZXJydXB0ZWQgJiYgZmdldHMod29yZCwgTUFYX1dPUkRfTEVOLCBkaWN0
KSAhPSBOVUxMKSB7CisgICAgICAgICAgICBsZW4gPSBzdHJsZW4od29yZCkgKyAxOyAvKiBwbHVz
IG9uZSBmb3IgbnVsbCAqLworCisgICAgICAgICAgICBpZiAobGVuID4gTUFYX1dPUkRfTEVOKQor
ICAgICAgICAgICAgICAgIHByaW50ZigiZXJyb3I6IHdvcmQgJXMgdG9vIGxhcmdlIHRvIHNlbmRc
biIsIHdvcmQpOworICAgICAgICAgICAgZWxzZSB7CisgICAgICAgICAgICAgICAgcnRwX3NlbmR0
byhzbmQsIHdvcmQsIGxlbik7CisgICAgICAgICAgICAgICAgcHJpbnRmKCJzZW5kaW5nIHdvcmQ6
ICVzIiwgd29yZCk7CisgICAgICAgICAgICB9CisgICAgICAgICAgICB1c2xlZXAoVVNFQ19SQVRF
KTsKKyAgICAgICAgfQorCisgICAgICAgIHJ0cF9zZW5kZXJfZGVpbml0X3NydHAoc25kKTsKKyAg
ICAgICAgcnRwX3NlbmRlcl9kZWFsbG9jKHNuZCk7CisKKyAgICAgICAgZmNsb3NlKGRpY3QpOwor
ICAgIH0gZWxzZSB7IC8qIHByb2dfdHlwZSA9PSByZWNlaXZlciAqLworICAgICAgICBydHBfcmVj
ZWl2ZXJfdCByY3ZyOworCisgICAgICAgIGlmIChiaW5kKHNvY2ssIChzdHJ1Y3Qgc29ja2FkZHIg
KikmbmFtZSwgc2l6ZW9mKG5hbWUpKSA8IDApIHsKKyAgICAgICAgICAgIGNsb3NlKHNvY2spOwor
ICAgICAgICAgICAgZnByaW50ZihzdGRlcnIsICIlczogc29ja2V0IGJpbmQgZXJyb3JcbiIsIGFy
Z3ZbMF0pOworICAgICAgICAgICAgcGVycm9yKE5VTEwpOworICAgICAgICAgICAgaWYgKEFERFJf
SVNfTVVMVElDQVNUKHJjdnJfYWRkci5zX2FkZHIpKSB7CisgICAgICAgICAgICAgICAgbGVhdmVf
Z3JvdXAoc29jaywgbXJlcSwgYXJndlswXSk7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBl
eGl0KDEpOworICAgICAgICB9CiAKLSAgICAvKiBnZXQgbmV4dCB3b3JkIGFuZCBsb29wICovCi0g
ICAgd2hpbGUgKCFpbnRlcnJ1cHRlZCkgewotICAgICAgbGVuID0gTUFYX1dPUkRfTEVOOwotICAg
ICAgaWYgKHJ0cF9yZWN2ZnJvbShyY3ZyLCB3b3JkLCAmbGVuKSA+IC0xKQotCXByaW50ZigiXHR3
b3JkOiAlc1xuIiwgd29yZCk7CisgICAgICAgIHJjdnIgPSBydHBfcmVjZWl2ZXJfYWxsb2MoKTsK
KyAgICAgICAgaWYgKHJjdnIgPT0gTlVMTCkgeworICAgICAgICAgICAgZnByaW50ZihzdGRlcnIs
ICJlcnJvcjogbWFsbG9jKCkgZmFpbGVkXG4iKTsKKyAgICAgICAgICAgIGV4aXQoMSk7CisgICAg
ICAgIH0KKyAgICAgICAgcnRwX3JlY2VpdmVyX2luaXQocmN2ciwgc29jaywgbmFtZSwgc3NyYyk7
CisgICAgICAgIHN0YXR1cyA9IHJ0cF9yZWNlaXZlcl9pbml0X3NydHAocmN2ciwgJnBvbGljeSk7
CisgICAgICAgIGlmIChzdGF0dXMpIHsKKyAgICAgICAgICAgIGZwcmludGYoc3RkZXJyLCAiZXJy
b3I6IHNydHBfY3JlYXRlKCkgZmFpbGVkIHdpdGggY29kZSAlZFxuIiwKKyAgICAgICAgICAgICAg
ICAgICAgc3RhdHVzKTsKKyAgICAgICAgICAgIGV4aXQoMSk7CisgICAgICAgIH0KKworICAgICAg
ICAvKiBnZXQgbmV4dCB3b3JkIGFuZCBsb29wICovCisgICAgICAgIHdoaWxlICghaW50ZXJydXB0
ZWQpIHsKKyAgICAgICAgICAgIGxlbiA9IE1BWF9XT1JEX0xFTjsKKyAgICAgICAgICAgIGlmIChy
dHBfcmVjdmZyb20ocmN2ciwgd29yZCwgJmxlbikgPiAtMSkKKyAgICAgICAgICAgICAgICBwcmlu
dGYoIlx0d29yZDogJXNcbiIsIHdvcmQpOworICAgICAgICB9CisKKyAgICAgICAgcnRwX3JlY2Vp
dmVyX2RlaW5pdF9zcnRwKHJjdnIpOworICAgICAgICBydHBfcmVjZWl2ZXJfZGVhbGxvYyhyY3Zy
KTsKICAgICB9Ci0gICAgICAKLSAgICBydHBfcmVjZWl2ZXJfZGVpbml0X3NydHAocmN2cik7Ci0g
ICAgcnRwX3JlY2VpdmVyX2RlYWxsb2MocmN2cik7Ci0gIH0gCiAKLSAgaWYgKEFERFJfSVNfTVVM
VElDQVNUKHJjdnJfYWRkci5zX2FkZHIpKSB7Ci0gICAgbGVhdmVfZ3JvdXAoc29jaywgbXJlcSwg
YXJndlswXSk7Ci0gIH0KKyAgICBpZiAoQUREUl9JU19NVUxUSUNBU1QocmN2cl9hZGRyLnNfYWRk
cikpIHsKKyAgICAgICAgbGVhdmVfZ3JvdXAoc29jaywgbXJlcSwgYXJndlswXSk7CisgICAgfQog
CiAjaWZkZWYgUlRQV19VU0VfV0lOU09DSzIKLSAgcmV0ID0gY2xvc2Vzb2NrZXQoc29jayk7Cisg
ICAgcmV0ID0gY2xvc2Vzb2NrZXQoc29jayk7CiAjZWxzZQotICByZXQgPSBjbG9zZShzb2NrKTsK
KyAgICByZXQgPSBjbG9zZShzb2NrKTsKICNlbmRpZgotICBpZiAocmV0IDwgMCkgewotICAgIGZw
cmludGYoc3RkZXJyLCAiJXM6IEZhaWxlZCB0byBjbG9zZSBzb2NrZXQiLCBhcmd2WzBdKTsKLSAg
ICBwZXJyb3IoIiIpOwotICB9Ci0KLSAgc3RhdHVzID0gc3J0cF9zaHV0ZG93bigpOwotICBpZiAo
c3RhdHVzKSB7Ci0gICAgcHJpbnRmKCJlcnJvcjogc3J0cCBzaHV0ZG93biBmYWlsZWQgd2l0aCBl
cnJvciBjb2RlICVkXG4iLCBzdGF0dXMpOwotICAgIGV4aXQoMSk7Ci0gIH0KKyAgICBpZiAocmV0
IDwgMCkgeworICAgICAgICBmcHJpbnRmKHN0ZGVyciwgIiVzOiBGYWlsZWQgdG8gY2xvc2Ugc29j
a2V0IiwgYXJndlswXSk7CisgICAgICAgIHBlcnJvcigiIik7CisgICAgfQorCisgICAgc3RhdHVz
ID0gc3J0cF9zaHV0ZG93bigpOworICAgIGlmIChzdGF0dXMpIHsKKyAgICAgICAgcHJpbnRmKCJl
cnJvcjogc3J0cCBzaHV0ZG93biBmYWlsZWQgd2l0aCBlcnJvciBjb2RlICVkXG4iLCBzdGF0dXMp
OworICAgICAgICBleGl0KDEpOworICAgIH0KIAogI2lmZGVmIFJUUFdfVVNFX1dJTlNPQ0syCi0g
IFdTQUNsZWFudXAoKTsKKyAgICBXU0FDbGVhbnVwKCk7CiAjZW5kaWYKIAotICByZXR1cm4gMDsK
KyAgICByZXR1cm4gMDsKIH0KIAotCi12b2lkCi11c2FnZShjaGFyICpzdHJpbmcpIHsKLQotICBw
cmludGYoInVzYWdlOiAlcyBbLWQgPGRlYnVnPl0qIFstayA8a2V5PiBbLWFdWy1lXV0gIgotCSAi
Wy1zIHwgLXJdIGRlc3RfaXAgZGVzdF9wb3J0XG4iCi0JICJvciAgICAgJXMgLWxcbiIKLQkgIndo
ZXJlICAtYSB1c2UgbWVzc2FnZSBhdXRoZW50aWNhdGlvblxuIgotCSAiICAgICAgIC1lIDxrZXkg
c2l6ZT4gdXNlIGVuY3J5cHRpb24gKHVzZSAxMjggb3IgMjU2IGZvciBrZXkgc2l6ZSlcbiIKLQkg
IiAgICAgICAtZyBVc2UgQUVTLUdDTSBtb2RlIChtdXN0IGJlIHVzZWQgd2l0aCAtZSlcbiIKLQkg
IiAgICAgICAtdCA8dGFnIHNpemU+IFRhZyBzaXplIHRvIHVzZSBpbiBHQ00gbW9kZSAodXNlIDgg
b3IgMTYpXG4iCi0JICIgICAgICAgLWsgPGtleT4gIHNldHMgdGhlIHNydHAgbWFzdGVyIGtleSBn
aXZlbiBpbiBoZXhhZGVjaW1hbFxuIgotCSAiICAgICAgIC1iIDxrZXk+ICBzZXRzIHRoZSBzcnRw
IG1hc3RlciBrZXkgZ2l2ZW4gaW4gYmFzZTY0XG4iCi0JICIgICAgICAgLXMgYWN0IGFzIHJ0cCBz
ZW5kZXJcbiIKLQkgIiAgICAgICAtciBhY3QgYXMgcnRwIHJlY2VpdmVyXG4iCi0JICIgICAgICAg
LWwgbGlzdCBkZWJ1ZyBtb2R1bGVzXG4iCi0JICIgICAgICAgLWQgPGRlYnVnPiB0dXJuIG9uIGRl
YnVnZ2luZyBmb3IgbW9kdWxlIDxkZWJ1Zz5cbiIsCi0JIHN0cmluZywgc3RyaW5nKTsKLSAgZXhp
dCgxKTsKLSAgCit2b2lkIHVzYWdlKGNoYXIgKnN0cmluZykKK3sKKyAgICBwcmludGYoInVzYWdl
OiAlcyBbLWQgPGRlYnVnPl0qIFstayA8a2V5PiBbLWFdWy1lXV0gIgorICAgICAgICAgICAiWy1z
IHwgLXJdIGRlc3RfaXAgZGVzdF9wb3J0XG4iCisgICAgICAgICAgICJvciAgICAgJXMgLWxcbiIK
KyAgICAgICAgICAgIndoZXJlICAtYSB1c2UgbWVzc2FnZSBhdXRoZW50aWNhdGlvblxuIgorICAg
ICAgICAgICAiICAgICAgIC1lIDxrZXkgc2l6ZT4gdXNlIGVuY3J5cHRpb24gKHVzZSAxMjggb3Ig
MjU2IGZvciBrZXkgc2l6ZSlcbiIKKyAgICAgICAgICAgIiAgICAgICAtZyBVc2UgQUVTLUdDTSBt
b2RlIChtdXN0IGJlIHVzZWQgd2l0aCAtZSlcbiIKKyAgICAgICAgICAgIiAgICAgICAtdCA8dGFn
IHNpemU+IFRhZyBzaXplIHRvIHVzZSBpbiBHQ00gbW9kZSAodXNlIDggb3IgMTYpXG4iCisgICAg
ICAgICAgICIgICAgICAgLWsgPGtleT4gIHNldHMgdGhlIHNydHAgbWFzdGVyIGtleSBnaXZlbiBp
biBoZXhhZGVjaW1hbFxuIgorICAgICAgICAgICAiICAgICAgIC1iIDxrZXk+ICBzZXRzIHRoZSBz
cnRwIG1hc3RlciBrZXkgZ2l2ZW4gaW4gYmFzZTY0XG4iCisgICAgICAgICAgICIgICAgICAgLXMg
YWN0IGFzIHJ0cCBzZW5kZXJcbiIKKyAgICAgICAgICAgIiAgICAgICAtciBhY3QgYXMgcnRwIHJl
Y2VpdmVyXG4iCisgICAgICAgICAgICIgICAgICAgLWwgbGlzdCBkZWJ1ZyBtb2R1bGVzXG4iCisg
ICAgICAgICAgICIgICAgICAgLWQgPGRlYnVnPiB0dXJuIG9uIGRlYnVnZ2luZyBmb3IgbW9kdWxl
IDxkZWJ1Zz5cbiIKKyAgICAgICAgICAgIiAgICAgICAtdyA8d29yZHNmaWxlPiB1c2UgPHdvcmRz
ZmlsZT4gZm9yIGlucHV0LCByYXRoZXIgdGhhbiAlc1xuIiwKKyAgICAgICAgICAgc3RyaW5nLCBz
dHJpbmcsIERJQ1RfRklMRSk7CisgICAgZXhpdCgxKTsKIH0KIAordm9pZCBsZWF2ZV9ncm91cChp
bnQgc29jaywgc3RydWN0IGlwX21yZXEgbXJlcSwgY2hhciAqbmFtZSkKK3sKKyAgICBpbnQgcmV0
OwogCi12b2lkCi1sZWF2ZV9ncm91cChpbnQgc29jaywgc3RydWN0IGlwX21yZXEgbXJlcSwgY2hh
ciAqbmFtZSkgewotICBpbnQgcmV0OwotCi0gIHJldCA9IHNldHNvY2tvcHQoc29jaywgSVBQUk9U
T19JUCwgSVBfRFJPUF9NRU1CRVJTSElQLCAodm9pZCopJm1yZXEsCi0JCSAgIHNpemVvZihtcmVx
KSk7Ci0gIGlmIChyZXQgPCAwKSB7Ci0JZnByaW50ZihzdGRlcnIsICIlczogRmFpbGVkIHRvIGxl
YXZlIG11bHRpY2FzdCBncm91cCIsIG5hbWUpOwotCXBlcnJvcigiIik7Ci0gIH0KKyAgICByZXQg
PSBzZXRzb2Nrb3B0KHNvY2ssIElQUFJPVE9fSVAsIElQX0RST1BfTUVNQkVSU0hJUCwgKHZvaWQg
KikmbXJlcSwKKyAgICAgICAgICAgICAgICAgICAgIHNpemVvZihtcmVxKSk7CisgICAgaWYgKHJl
dCA8IDApIHsKKyAgICAgICAgZnByaW50ZihzdGRlcnIsICIlczogRmFpbGVkIHRvIGxlYXZlIG11
bHRpY2FzdCBncm91cCIsIG5hbWUpOworICAgICAgICBwZXJyb3IoIiIpOworICAgIH0KIH0KIAog
dm9pZCBoYW5kbGVfc2lnbmFsKGludCBzaWdudW0pCiB7Ci0gIGludGVycnVwdGVkID0gMTsKLSAg
LyogUmVzZXQgaGFuZGxlciBleHBsaWNpdGx5LCBpbiBjYXNlIHdlIGRvbid0IGhhdmUgc2lnYWN0
aW9uKCkgKGFuZCBzaWduYWwoKQotICAgICBoYXMgQlNEIHNlbWFudGljcyksIG9yIHdlIGRvbid0
IGhhdmUgU0FfUkVTRVRIQU5EICovCi0gIHNpZ25hbChzaWdudW0sIFNJR19ERkwpOworICAgIGlu
dGVycnVwdGVkID0gMTsKKyAgICAvKiBSZXNldCBoYW5kbGVyIGV4cGxpY2l0bHksIGluIGNhc2Ug
d2UgZG9uJ3QgaGF2ZSBzaWdhY3Rpb24oKSAoYW5kIHNpZ25hbCgpCisgICAgICAgaGFzIEJTRCBz
ZW1hbnRpY3MpLCBvciB3ZSBkb24ndCBoYXZlIFNBX1JFU0VUSEFORCAqLworICAgIHNpZ25hbChz
aWdudW0sIFNJR19ERkwpOwogfQogCi1pbnQgc2V0dXBfc2lnbmFsX2hhbmRsZXIoY2hhciogbmFt
ZSkKK2ludCBzZXR1cF9zaWduYWxfaGFuZGxlcihjaGFyICpuYW1lKQogewogI2lmIEhBVkVfU0lH
QUNUSU9OCi0gIHN0cnVjdCBzaWdhY3Rpb24gYWN0OwotICBtZW1zZXQoJmFjdCwgMCwgc2l6ZW9m
KGFjdCkpOworICAgIHN0cnVjdCBzaWdhY3Rpb24gYWN0OworICAgIG1lbXNldCgmYWN0LCAwLCBz
aXplb2YoYWN0KSk7CiAKLSAgYWN0LnNhX2hhbmRsZXIgPSBoYW5kbGVfc2lnbmFsOwotICBzaWdl
bXB0eXNldCgmYWN0LnNhX21hc2spOworICAgIGFjdC5zYV9oYW5kbGVyID0gaGFuZGxlX3NpZ25h
bDsKKyAgICBzaWdlbXB0eXNldCgmYWN0LnNhX21hc2spOwogI2lmIGRlZmluZWQoU0FfUkVTRVRI
QU5EKQotICBhY3Quc2FfZmxhZ3MgPSBTQV9SRVNFVEhBTkQ7CisgICAgYWN0LnNhX2ZsYWdzID0g
U0FfUkVTRVRIQU5EOwogI2Vsc2UKLSAgYWN0LnNhX2ZsYWdzID0gMDsKKyAgICBhY3Quc2FfZmxh
Z3MgPSAwOwogI2VuZGlmCi0gIC8qIE5vdGUgdGhhdCB3ZSdyZSBub3Qgc2V0dGluZyBTQV9SRVNU
QVJUOyB3ZSB3YW50IHJlY3Zmcm9tIHRvIHJldHVybgotICAgKiBFSU5UUiB3aGVuIHdlIHNpZ25h
bCB0aGUgcmVjZWl2ZXIuICovCi0gIAotICBpZiAoc2lnYWN0aW9uKFNJR1RFUk0sICZhY3QsIE5V
TEwpICE9IDApIHsKLSAgICBmcHJpbnRmKHN0ZGVyciwgIiVzOiBlcnJvciBzZXR0aW5nIHVwIHNp
Z25hbCBoYW5kbGVyIiwgbmFtZSk7Ci0gICAgcGVycm9yKCIiKTsKLSAgICByZXR1cm4gLTE7Ci0g
IH0KKyAgICAvKiBOb3RlIHRoYXQgd2UncmUgbm90IHNldHRpbmcgU0FfUkVTVEFSVDsgd2Ugd2Fu
dCByZWN2ZnJvbSB0byByZXR1cm4KKyAgICAgKiBFSU5UUiB3aGVuIHdlIHNpZ25hbCB0aGUgcmVj
ZWl2ZXIuICovCisKKyAgICBpZiAoc2lnYWN0aW9uKFNJR1RFUk0sICZhY3QsIE5VTEwpICE9IDAp
IHsKKyAgICAgICAgZnByaW50ZihzdGRlcnIsICIlczogZXJyb3Igc2V0dGluZyB1cCBzaWduYWwg
aGFuZGxlciIsIG5hbWUpOworICAgICAgICBwZXJyb3IoIiIpOworICAgICAgICByZXR1cm4gLTE7
CisgICAgfQogI2Vsc2UKLSAgaWYgKHNpZ25hbChTSUdURVJNLCBoYW5kbGVfc2lnbmFsKSA9PSBT
SUdfRVJSKSB7Ci0gICAgZnByaW50ZihzdGRlcnIsICIlczogZXJyb3Igc2V0dGluZyB1cCBzaWdu
YWwgaGFuZGxlciIsIG5hbWUpOwotICAgIHBlcnJvcigiIik7Ci0gICAgcmV0dXJuIC0xOwotICB9
CisgICAgaWYgKHNpZ25hbChTSUdURVJNLCBoYW5kbGVfc2lnbmFsKSA9PSBTSUdfRVJSKSB7Cisg
ICAgICAgIGZwcmludGYoc3RkZXJyLCAiJXM6IGVycm9yIHNldHRpbmcgdXAgc2lnbmFsIGhhbmRs
ZXIiLCBuYW1lKTsKKyAgICAgICAgcGVycm9yKCIiKTsKKyAgICAgICAgcmV0dXJuIC0xOworICAg
IH0KICNlbmRpZgotICByZXR1cm4gMDsKKyAgICByZXR1cm4gMDsKIH0KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC90ZXN0
L3NydHBfZHJpdmVyLmMgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJk
X3BhcnR5L2xpYnNydHAvdGVzdC9zcnRwX2RyaXZlci5jCmluZGV4IDU2MDUyYTYzMjFkNTE3ZjE1
ZGMyNjEyZWM0MzZiZWQyODczZmJiZjEuLjRlYThmZTUzMDJjMWJlMzQ5MjlmOWIwZDlmMjc3MTBi
YjEzY2NiY2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2Uv
dGhpcmRfcGFydHkvbGlic3J0cC90ZXN0L3NydHBfZHJpdmVyLmMKKysrIGIvU291cmNlL1RoaXJk
UGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL3Rlc3Qvc3J0cF9kcml2
ZXIuYwpAQCAtMSw1ICsxLDMgQEAKLQotCiAvKgogICogc3J0cF9kcml2ZXIuYwogICoKQEAgLTQ0
LDcgKzQyLDYgQEAKICAqCiAgKi8KIAotCiAjaW5jbHVkZSA8c3RyaW5nLmg+ICAgLyogZm9yIG1l
bWNweSgpICAgICAgICAgICovCiAjaW5jbHVkZSA8dGltZS5oPiAgICAgLyogZm9yIGNsb2NrKCkg
ICAgICAgICAgICovCiAjaW5jbHVkZSA8c3RkbGliLmg+ICAgLyogZm9yIG1hbGxvYygpLCBmcmVl
KCkgICovCkBAIC01NSw5NiArNTIsNzMgQEAKICNpbmNsdWRlICJ1dGlsLmgiCiAKICNpZmRlZiBI
QVZFX05FVElORVRfSU5fSAotIyBpbmNsdWRlIDxuZXRpbmV0L2luLmg+CisjaW5jbHVkZSA8bmV0
aW5ldC9pbi5oPgogI2VsaWYgZGVmaW5lZCBIQVZFX1dJTlNPQ0syX0gKLSMgaW5jbHVkZSA8d2lu
c29jazIuaD4KKyNpbmNsdWRlIDx3aW5zb2NrMi5oPgogI2VuZGlmCiAKICNkZWZpbmUgUFJJTlRf
UkVGRVJFTkNFX1BBQ0tFVCAxCiAKLXNydHBfZXJyX3N0YXR1c190Ci1zcnRwX3ZhbGlkYXRlKHZv
aWQpOworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF92YWxpZGF0ZSh2b2lkKTsKIAogI2lmZGVmIE9Q
RU5TU0wKLXNydHBfZXJyX3N0YXR1c190Ci1zcnRwX3ZhbGlkYXRlX2djbSh2b2lkKTsKK3NydHBf
ZXJyX3N0YXR1c190IHNydHBfdmFsaWRhdGVfZ2NtKHZvaWQpOwogI2VuZGlmCiAKLXNydHBfZXJy
X3N0YXR1c190Ci1zcnRwX3ZhbGlkYXRlX2VuY3J5cHRlZF9leHRlbnNpb25zX2hlYWRlcnModm9p
ZCk7CitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3ZhbGlkYXRlX2VuY3J5cHRlZF9leHRlbnNpb25z
X2hlYWRlcnModm9pZCk7CiAKICNpZmRlZiBPUEVOU1NMCi1zcnRwX2Vycl9zdGF0dXNfdAotc3J0
cF92YWxpZGF0ZV9lbmNyeXB0ZWRfZXh0ZW5zaW9uc19oZWFkZXJzX2djbSh2b2lkKTsKK3NydHBf
ZXJyX3N0YXR1c190IHNydHBfdmFsaWRhdGVfZW5jcnlwdGVkX2V4dGVuc2lvbnNfaGVhZGVyc19n
Y20odm9pZCk7CiAjZW5kaWYKIAotc3J0cF9lcnJfc3RhdHVzX3QKLXNydHBfdmFsaWRhdGVfYWVz
XzI1Nih2b2lkKTsKK3NydHBfZXJyX3N0YXR1c190IHNydHBfdmFsaWRhdGVfYWVzXzI1Nih2b2lk
KTsKIAotc3J0cF9lcnJfc3RhdHVzX3QKLXNydHBfY3JlYXRlX2JpZ19wb2xpY3koc3J0cF9wb2xp
Y3lfdCAqKmxpc3QpOworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9jcmVhdGVfYmlnX3BvbGljeShz
cnRwX3BvbGljeV90ICoqbGlzdCk7CiAKLXNydHBfZXJyX3N0YXR1c190Ci1zcnRwX2RlYWxsb2Nf
YmlnX3BvbGljeShzcnRwX3BvbGljeV90ICpsaXN0KTsKK3NydHBfZXJyX3N0YXR1c190IHNydHBf
ZGVhbGxvY19iaWdfcG9saWN5KHNydHBfcG9saWN5X3QgKmxpc3QpOwogCi1zcnRwX2Vycl9zdGF0
dXNfdAotc3J0cF90ZXN0X2VtcHR5X3BheWxvYWQodm9pZCk7CitzcnRwX2Vycl9zdGF0dXNfdCBz
cnRwX3Rlc3RfZW1wdHlfcGF5bG9hZCh2b2lkKTsKIAogI2lmZGVmIE9QRU5TU0wKLXNydHBfZXJy
X3N0YXR1c190Ci1zcnRwX3Rlc3RfZW1wdHlfcGF5bG9hZF9nY20odm9pZCk7CitzcnRwX2Vycl9z
dGF0dXNfdCBzcnRwX3Rlc3RfZW1wdHlfcGF5bG9hZF9nY20odm9pZCk7CiAjZW5kaWYKIAotc3J0
cF9lcnJfc3RhdHVzX3QKLXNydHBfdGVzdF9yZW1vdmVfc3RyZWFtKHZvaWQpOworc3J0cF9lcnJf
c3RhdHVzX3Qgc3J0cF90ZXN0X3JlbW92ZV9zdHJlYW0odm9pZCk7CiAKLXNydHBfZXJyX3N0YXR1
c190Ci1zcnRwX3Rlc3RfdXBkYXRlKHZvaWQpOworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF90ZXN0
X3VwZGF0ZSh2b2lkKTsKIAotc3J0cF9lcnJfc3RhdHVzX3QKLXNydHBfdGVzdF9wcm90ZWN0X3Ry
YWlsZXJfbGVuZ3RoKHZvaWQpOworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF90ZXN0X3Byb3RlY3Rf
dHJhaWxlcl9sZW5ndGgodm9pZCk7CiAKLXNydHBfZXJyX3N0YXR1c190Ci1zcnRwX3Rlc3RfcHJv
dGVjdF9ydGNwX3RyYWlsZXJfbGVuZ3RoKHZvaWQpOworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF90
ZXN0X3Byb3RlY3RfcnRjcF90cmFpbGVyX2xlbmd0aCh2b2lkKTsKIAotc3J0cF9lcnJfc3RhdHVz
X3QKLXNydHBfdGVzdF9nZXRfcm9jKHZvaWQpOworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF90ZXN0
X2dldF9yb2Modm9pZCk7CiAKLXNydHBfZXJyX3N0YXR1c190Ci1zcnRwX3Rlc3Rfc2V0X3JlY2Vp
dmVyX3JvYyh2b2lkKTsKK3NydHBfZXJyX3N0YXR1c190IHNydHBfdGVzdF9zZXRfcmVjZWl2ZXJf
cm9jKHZvaWQpOwogCi1zcnRwX2Vycl9zdGF0dXNfdAotc3J0cF90ZXN0X3NldF9zZW5kZXJfcm9j
KHZvaWQpOworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF90ZXN0X3NldF9zZW5kZXJfcm9jKHZvaWQp
OwogCi1kb3VibGUKLXNydHBfYml0c19wZXJfc2Vjb25kKGludCBtc2dfbGVuX29jdGV0cywgY29u
c3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5KTsKK2RvdWJsZSBzcnRwX2JpdHNfcGVyX3NlY29uZChp
bnQgbXNnX2xlbl9vY3RldHMsIGNvbnN0IHNydHBfcG9saWN5X3QgKnBvbGljeSk7CiAKLWRvdWJs
ZQotc3J0cF9yZWplY3Rpb25zX3Blcl9zZWNvbmQoaW50IG1zZ19sZW5fb2N0ZXRzLCBjb25zdCBz
cnRwX3BvbGljeV90ICpwb2xpY3kpOworZG91YmxlIHNydHBfcmVqZWN0aW9uc19wZXJfc2Vjb25k
KGludCBtc2dfbGVuX29jdGV0cywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBj
b25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3kpOwogCi12b2lkCi1zcnRwX2RvX3RpbWluZyhjb25z
dCBzcnRwX3BvbGljeV90ICpwb2xpY3kpOwordm9pZCBzcnRwX2RvX3RpbWluZyhjb25zdCBzcnRw
X3BvbGljeV90ICpwb2xpY3kpOwogCi12b2lkCi1zcnRwX2RvX3JlamVjdGlvbl90aW1pbmcoY29u
c3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5KTsKK3ZvaWQgc3J0cF9kb19yZWplY3Rpb25fdGltaW5n
KGNvbnN0IHNydHBfcG9saWN5X3QgKnBvbGljeSk7CiAKLXNydHBfZXJyX3N0YXR1c190Ci1zcnRw
X3Rlc3QoY29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5LCBpbnQgZXh0ZW5zaW9uX2hlYWRlciwg
aW50IG1raV9pbmRleCk7CitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3Rlc3QoY29uc3Qgc3J0cF9w
b2xpY3lfdCAqcG9saWN5LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBleHRlbnNp
b25faGVhZGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBta2lfaW5kZXgpOwog
Ci1zcnRwX2Vycl9zdGF0dXNfdAotc3J0Y3BfdGVzdChjb25zdCBzcnRwX3BvbGljeV90ICpwb2xp
Y3ksIGludCBta2lfaW5kZXgpOworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0Y3BfdGVzdChjb25zdCBz
cnRwX3BvbGljeV90ICpwb2xpY3ksIGludCBta2lfaW5kZXgpOwogCi1zcnRwX2Vycl9zdGF0dXNf
dAotc3J0cF9zZXNzaW9uX3ByaW50X3BvbGljeShzcnRwX3Qgc3J0cCk7CitzcnRwX2Vycl9zdGF0
dXNfdCBzcnRwX3Nlc3Npb25fcHJpbnRfcG9saWN5KHNydHBfdCBzcnRwKTsKIAotc3J0cF9lcnJf
c3RhdHVzX3QKLXNydHBfcHJpbnRfcG9saWN5KGNvbnN0IHNydHBfcG9saWN5X3QgKnBvbGljeSk7
CitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3ByaW50X3BvbGljeShjb25zdCBzcnRwX3BvbGljeV90
ICpwb2xpY3kpOwogCi1jaGFyICoKLXNydHBfcGFja2V0X3RvX3N0cmluZyhzcnRwX2hkcl90ICpo
ZHIsIGludCBwYWNrZXRfbGVuKTsKK2NoYXIgKnNydHBfcGFja2V0X3RvX3N0cmluZyhzcnRwX2hk
cl90ICpoZHIsIGludCBwYWNrZXRfbGVuKTsKIAotZG91YmxlCi1taXBzX2VzdGltYXRlKGludCBu
dW1fdHJpYWxzLCBpbnQgKmlnbm9yZSk7Citkb3VibGUgbWlwc19lc3RpbWF0ZShpbnQgbnVtX3Ry
aWFscywgaW50ICppZ25vcmUpOwogCiAjZGVmaW5lIFRFU1RfTUtJX0lEX1NJWkUgNAogCkBAIC0x
NTMsNiArMTI3LDcgQEAgZXh0ZXJuIHVpbnQ4X3QgdGVzdF9rZXlfMls0Nl07CiBleHRlcm4gdWlu
dDhfdCB0ZXN0X21raV9pZFtURVNUX01LSV9JRF9TSVpFXTsKIGV4dGVybiB1aW50OF90IHRlc3Rf
bWtpX2lkXzJbVEVTVF9NS0lfSURfU0laRV07CiAKKy8vIGNsYW5nLWZvcm1hdCBvZmYKIHNydHBf
bWFzdGVyX2tleV90IG1hc3Rlcl9rZXlfMSA9IHsKICAgICB0ZXN0X2tleSwKICAgICB0ZXN0X21r
aV9pZCwKQEAgLTE2OSw5ICsxNDQsOSBAQCBzcnRwX21hc3Rlcl9rZXlfdCAqdGVzdF9rZXlzWzJd
ID0gewogICAgICZtYXN0ZXJfa2V5XzEsCiAgICAgJm1hc3Rlcl9rZXlfMgogfTsKKy8vIGNsYW5n
LWZvcm1hdCBvbgogCi12b2lkCi11c2FnZSAoY2hhciAqcHJvZ19uYW1lKQordm9pZCB1c2FnZShj
aGFyICpwcm9nX25hbWUpCiB7CiAgICAgcHJpbnRmKCJ1c2FnZTogJXMgWyAtdCBdWyAtYyBdWyAt
diBdWyAtbyBdWy1kIDxkZWJ1Z19tb2R1bGU+IF0qIFsgLWwgXVxuIgogICAgICAgICAgICAiICAt
dCAgICAgICAgIHJ1biB0aW1pbmcgdGVzdFxuIgpAQCAtMTgwLDE5ICsxNTUsMjcgQEAgdXNhZ2Ug
KGNoYXIgKnByb2dfbmFtZSkKICAgICAgICAgICAgIiAgLXYgICAgICAgICBydW4gdmFsaWRhdGlv
biB0ZXN0c1xuIgogICAgICAgICAgICAiICAtbyAgICAgICAgIG91dHB1dCBsb2dnaW5nIHRvIHN0
ZG91dFxuIgogICAgICAgICAgICAiICAtZCA8bW9kPiAgIHR1cm4gb24gZGVidWdnaW5nIG1vZHVs
ZSA8bW9kPlxuIgotICAgICAgICAgICAiICAtbCAgICAgICAgIGxpc3QgZGVidWdnaW5nIG1vZHVs
ZXNcbiIsIHByb2dfbmFtZSk7CisgICAgICAgICAgICIgIC1sICAgICAgICAgbGlzdCBkZWJ1Z2dp
bmcgbW9kdWxlc1xuIiwKKyAgICAgICAgICAgcHJvZ19uYW1lKTsKICAgICBleGl0KDEpOwogfQog
Ci12b2lkCi1sb2dfaGFuZGxlciAoc3J0cF9sb2dfbGV2ZWxfdCBsZXZlbCwgY29uc3QgY2hhciAq
IG1zZywgdm9pZCAqIGRhdGEpCit2b2lkIGxvZ19oYW5kbGVyKHNydHBfbG9nX2xldmVsX3QgbGV2
ZWwsIGNvbnN0IGNoYXIgKm1zZywgdm9pZCAqZGF0YSkKIHsKICAgICBjaGFyIGxldmVsX2NoYXIg
PSAnPyc7Ci0gICAgc3dpdGNoKGxldmVsKSB7Ci0gICAgICAgIGNhc2Ugc3J0cF9sb2dfbGV2ZWxf
ZXJyb3I6IGxldmVsX2NoYXIgPSAnZSc7IGJyZWFrOwotICAgICAgICBjYXNlIHNydHBfbG9nX2xl
dmVsX3dhcm5pbmc6IGxldmVsX2NoYXIgPSAndyc7IGJyZWFrOwotICAgICAgICBjYXNlIHNydHBf
bG9nX2xldmVsX2luZm86IGxldmVsX2NoYXIgPSAnaSc7IGJyZWFrOwotICAgICAgICBjYXNlIHNy
dHBfbG9nX2xldmVsX2RlYnVnOiBsZXZlbF9jaGFyID0gJ2QnOyBicmVhazsKKyAgICBzd2l0Y2gg
KGxldmVsKSB7CisgICAgY2FzZSBzcnRwX2xvZ19sZXZlbF9lcnJvcjoKKyAgICAgICAgbGV2ZWxf
Y2hhciA9ICdlJzsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBzcnRwX2xvZ19sZXZlbF93YXJu
aW5nOgorICAgICAgICBsZXZlbF9jaGFyID0gJ3cnOworICAgICAgICBicmVhazsKKyAgICBjYXNl
IHNydHBfbG9nX2xldmVsX2luZm86CisgICAgICAgIGxldmVsX2NoYXIgPSAnaSc7CisgICAgICAg
IGJyZWFrOworICAgIGNhc2Ugc3J0cF9sb2dfbGV2ZWxfZGVidWc6CisgICAgICAgIGxldmVsX2No
YXIgPSAnZCc7CisgICAgICAgIGJyZWFrOwogICAgIH0KICAgICBwcmludGYoIlNSVFAtTE9HIFsl
Y106ICVzXG4iLCBsZXZlbF9jaGFyLCBtc2cpOwogfQpAQCAtMjA0LDcgKzE4Nyw2IEBAIGxvZ19o
YW5kbGVyIChzcnRwX2xvZ19sZXZlbF90IGxldmVsLCBjb25zdCBjaGFyICogbXNnLCB2b2lkICog
ZGF0YSkKIAogZXh0ZXJuIGNvbnN0IHNydHBfcG9saWN5X3QgKnBvbGljeV9hcnJheVtdOwogCi0K
IC8qIHRoZSB3aWxkY2FyZF9wb2xpY3kgaXMgZGVjbGFyZWQgYmVsb3c7IGl0IGhhcyBhIHdpbGRj
YXJkIHNzcmMgKi8KIAogZXh0ZXJuIGNvbnN0IHNydHBfcG9saWN5X3Qgd2lsZGNhcmRfcG9saWN5
OwpAQCAtMjE3LDIwICsxOTksMTkgQEAgZXh0ZXJuIGNvbnN0IHNydHBfcG9saWN5X3Qgd2lsZGNh
cmRfcG9saWN5OwogICovCiAKIHNydHBfZGVidWdfbW9kdWxlX3QgbW9kX2RyaXZlciA9IHsKLSAg
ICAwLCAgICAgICAgICAgICAgICAvKiBkZWJ1Z2dpbmcgaXMgb2ZmIGJ5IGRlZmF1bHQgKi8KLSAg
ICAiZHJpdmVyIiAgICAgICAgICAvKiBwcmludGFibGUgbmFtZSBmb3IgbW9kdWxlICAgKi8KKyAg
ICAwLCAgICAgICAvKiBkZWJ1Z2dpbmcgaXMgb2ZmIGJ5IGRlZmF1bHQgKi8KKyAgICAiZHJpdmVy
IiAvKiBwcmludGFibGUgbmFtZSBmb3IgbW9kdWxlICAgKi8KIH07CiAKLWludAotbWFpbiAoaW50
IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKK2ludCBtYWluKGludCBhcmdjLCBjaGFyICphcmd2W10pCiB7
CiAgICAgaW50IHE7Ci0gICAgdW5zaWduZWQgZG9fdGltaW5nX3Rlc3QgICAgPSAwOworICAgIHVu
c2lnbmVkIGRvX3RpbWluZ190ZXN0ID0gMDsKICAgICB1bnNpZ25lZCBkb19yZWplY3Rpb25fdGVz
dCA9IDA7Ci0gICAgdW5zaWduZWQgZG9fY29kZWNfdGltaW5nICAgPSAwOwotICAgIHVuc2lnbmVk
IGRvX3ZhbGlkYXRpb24gICAgID0gMDsKLSAgICB1bnNpZ25lZCBkb19saXN0X21vZHMgICAgICA9
IDA7Ci0gICAgdW5zaWduZWQgZG9fbG9nX3N0ZG91dCAgICAgPSAwOworICAgIHVuc2lnbmVkIGRv
X2NvZGVjX3RpbWluZyA9IDA7CisgICAgdW5zaWduZWQgZG9fdmFsaWRhdGlvbiA9IDA7CisgICAg
dW5zaWduZWQgZG9fbGlzdF9tb2RzID0gMDsKKyAgICB1bnNpZ25lZCBkb19sb2dfc3Rkb3V0ID0g
MDsKICAgICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7CiAKICAgICAvKgpAQCAtMjU1LDcgKzIz
Niw4IEBAIG1haW4gKGludCBhcmdjLCBjaGFyICphcmd2W10pCiAgICAgc3RhdHVzID0gc3J0cF9j
cnlwdG9fa2VybmVsX2xvYWRfZGVidWdfbW9kdWxlKCZtb2RfZHJpdmVyKTsKICAgICBpZiAoc3Rh
dHVzKSB7CiAgICAgICAgIHByaW50ZigiZXJyb3I6IGxvYWQgb2Ygc3J0cF9kcml2ZXIgZGVidWcg
bW9kdWxlIGZhaWxlZCAiCi0gICAgICAgICAgICAgICAid2l0aCBlcnJvciBjb2RlICVkXG4iLCBz
dGF0dXMpOworICAgICAgICAgICAgICAgIndpdGggZXJyb3IgY29kZSAlZFxuIiwKKyAgICAgICAg
ICAgICAgIHN0YXR1cyk7CiAgICAgICAgIGV4aXQoMSk7CiAgICAgfQogCkBAIC0yOTYsOCArMjc4
LDggQEAgbWFpbiAoaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKICAgICAgICAgfQogICAgIH0KIAot
ICAgIGlmICghZG9fdmFsaWRhdGlvbiAmJiAhZG9fdGltaW5nX3Rlc3QgJiYgIWRvX2NvZGVjX3Rp
bWluZwotICAgICAgICAmJiAhZG9fbGlzdF9tb2RzICYmICFkb19yZWplY3Rpb25fdGVzdCkgewor
ICAgIGlmICghZG9fdmFsaWRhdGlvbiAmJiAhZG9fdGltaW5nX3Rlc3QgJiYgIWRvX2NvZGVjX3Rp
bWluZyAmJgorICAgICAgICAhZG9fbGlzdF9tb2RzICYmICFkb19yZWplY3Rpb25fdGVzdCkgewog
ICAgICAgICB1c2FnZShhcmd2WzBdKTsKICAgICB9CiAKQEAgLTMyNiw1MSArMzA4LDU2IEBAIG1h
aW4gKGludCBhcmdjLCBjaGFyICphcmd2W10pCiAgICAgICAgICAgICBwcmludGYoInRlc3Rpbmcg
c3J0cF9wcm90ZWN0IGFuZCBzcnRwX3VucHJvdGVjdFxuIik7CiAgICAgICAgICAgICBpZiAoc3J0
cF90ZXN0KCpwb2xpY3ksIDAsIC0xKSA9PSBzcnRwX2Vycl9zdGF0dXNfb2spIHsKICAgICAgICAg
ICAgICAgICBwcmludGYoInBhc3NlZFxuXG4iKTsKLSAgICAgICAgICAgIH0gZWxzZXsKKyAgICAg
ICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgcHJpbnRmKCJmYWlsZWRcbiIpOwogICAg
ICAgICAgICAgICAgIGV4aXQoMSk7CiAgICAgICAgICAgICB9CiAKLSAgICAgICAgICAgIHByaW50
ZigidGVzdGluZyBzcnRwX3Byb3RlY3QgYW5kIHNydHBfdW5wcm90ZWN0IHdpdGggZW5jcnlwdGVk
IGV4dGVuc2lvbnMgaGVhZGVyc1xuIik7CisgICAgICAgICAgICBwcmludGYoInRlc3Rpbmcgc3J0
cF9wcm90ZWN0IGFuZCBzcnRwX3VucHJvdGVjdCB3aXRoIGVuY3J5cHRlZCAiCisgICAgICAgICAg
ICAgICAgICAgImV4dGVuc2lvbnMgaGVhZGVyc1xuIik7CiAgICAgICAgICAgICBpZiAoc3J0cF90
ZXN0KCpwb2xpY3ksIDEsIC0xKSA9PSBzcnRwX2Vycl9zdGF0dXNfb2spIHsKICAgICAgICAgICAg
ICAgICBwcmludGYoInBhc3NlZFxuXG4iKTsKLSAgICAgICAgICAgIH0gZWxzZXsKKyAgICAgICAg
ICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgcHJpbnRmKCJmYWlsZWRcbiIpOwogICAgICAg
ICAgICAgICAgIGV4aXQoMSk7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBwcmludGYoInRl
c3Rpbmcgc3J0cF9wcm90ZWN0X3J0Y3AgYW5kIHNydHBfdW5wcm90ZWN0X3J0Y3BcbiIpOwogICAg
ICAgICAgICAgaWYgKHNydGNwX3Rlc3QoKnBvbGljeSwgLTEpID09IHNydHBfZXJyX3N0YXR1c19v
aykgewogICAgICAgICAgICAgICAgIHByaW50ZigicGFzc2VkXG5cbiIpOwotICAgICAgICAgICAg
fSBlbHNleworICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICBwcmludGYoImZh
aWxlZFxuIik7CiAgICAgICAgICAgICAgICAgZXhpdCgxKTsKICAgICAgICAgICAgIH0KLSAgICAg
ICAgICAgIHByaW50ZigidGVzdGluZyBzcnRwX3Byb3RlY3RfcnRwIGFuZCBzcnRwX3VucHJvdGVj
dF9ydHAgd2l0aCBNS0kgaW5kZXggc2V0IHRvIDBcbiIpOworICAgICAgICAgICAgcHJpbnRmKCJ0
ZXN0aW5nIHNydHBfcHJvdGVjdF9ydHAgYW5kIHNydHBfdW5wcm90ZWN0X3J0cCB3aXRoIE1LSSAi
CisgICAgICAgICAgICAgICAgICAgImluZGV4IHNldCB0byAwXG4iKTsKICAgICAgICAgICAgIGlm
IChzcnRwX3Rlc3QoKnBvbGljeSwgMCwgMCkgPT0gc3J0cF9lcnJfc3RhdHVzX29rKSB7CiAgICAg
ICAgICAgICAgICAgcHJpbnRmKCJwYXNzZWRcblxuIik7Ci0gICAgICAgICAgICB9IGVsc2V7Cisg
ICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgIHByaW50ZigiZmFpbGVkXG4iKTsK
ICAgICAgICAgICAgICAgICBleGl0KDEpOwogICAgICAgICAgICAgfQotICAgICAgICAgICAgcHJp
bnRmKCJ0ZXN0aW5nIHNydHBfcHJvdGVjdF9ydHAgYW5kIHNydHBfdW5wcm90ZWN0X3J0cCB3aXRo
IE1LSSBpbmRleCBzZXQgdG8gMVxuIik7CisgICAgICAgICAgICBwcmludGYoInRlc3Rpbmcgc3J0
cF9wcm90ZWN0X3J0cCBhbmQgc3J0cF91bnByb3RlY3RfcnRwIHdpdGggTUtJICIKKyAgICAgICAg
ICAgICAgICAgICAiaW5kZXggc2V0IHRvIDFcbiIpOwogICAgICAgICAgICAgaWYgKHNydHBfdGVz
dCgqcG9saWN5LCAwLCAxKSA9PSBzcnRwX2Vycl9zdGF0dXNfb2spIHsKICAgICAgICAgICAgICAg
ICBwcmludGYoInBhc3NlZFxuXG4iKTsKLSAgICAgICAgICAgIH0gZWxzZXsKKyAgICAgICAgICAg
IH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgcHJpbnRmKCJmYWlsZWRcbiIpOwogICAgICAgICAg
ICAgICAgIGV4aXQoMSk7CiAgICAgICAgICAgICB9CiAKLSAgICAgICAgICAgIHByaW50ZigidGVz
dGluZyBzcnRwX3Byb3RlY3RfcnRjcCBhbmQgc3J0cF91bnByb3RlY3RfcnRjcCB3aXRoIE1LSSBp
bmRleCBzZXQgdG8gMFxuIik7CisgICAgICAgICAgICBwcmludGYoInRlc3Rpbmcgc3J0cF9wcm90
ZWN0X3J0Y3AgYW5kIHNydHBfdW5wcm90ZWN0X3J0Y3Agd2l0aCBNS0kgIgorICAgICAgICAgICAg
ICAgICAgICJpbmRleCBzZXQgdG8gMFxuIik7CiAgICAgICAgICAgICBpZiAoc3J0Y3BfdGVzdCgq
cG9saWN5LCAwKSA9PSBzcnRwX2Vycl9zdGF0dXNfb2spIHsKICAgICAgICAgICAgICAgICBwcmlu
dGYoInBhc3NlZFxuXG4iKTsKLSAgICAgICAgICAgIH0gZWxzZXsKKyAgICAgICAgICAgIH0gZWxz
ZSB7CiAgICAgICAgICAgICAgICAgcHJpbnRmKCJmYWlsZWRcbiIpOwogICAgICAgICAgICAgICAg
IGV4aXQoMSk7CiAgICAgICAgICAgICB9Ci0gICAgICAgICAgICBwcmludGYoInRlc3Rpbmcgc3J0
cF9wcm90ZWN0X3J0Y3AgYW5kIHNydHBfdW5wcm90ZWN0X3J0Y3Agd2l0aCBNS0kgaW5kZXggc2V0
IHRvIDFcbiIpOworICAgICAgICAgICAgcHJpbnRmKCJ0ZXN0aW5nIHNydHBfcHJvdGVjdF9ydGNw
IGFuZCBzcnRwX3VucHJvdGVjdF9ydGNwIHdpdGggTUtJICIKKyAgICAgICAgICAgICAgICAgICAi
aW5kZXggc2V0IHRvIDFcbiIpOwogICAgICAgICAgICAgaWYgKHNydGNwX3Rlc3QoKnBvbGljeSwg
MSkgPT0gc3J0cF9lcnJfc3RhdHVzX29rKSB7CiAgICAgICAgICAgICAgICAgcHJpbnRmKCJwYXNz
ZWRcblxuIik7Ci0gICAgICAgICAgICB9IGVsc2V7CisgICAgICAgICAgICB9IGVsc2UgewogICAg
ICAgICAgICAgICAgIHByaW50ZigiZmFpbGVkXG4iKTsKICAgICAgICAgICAgICAgICBleGl0KDEp
OwogICAgICAgICAgICAgfQpAQCAtMzg2LDE0ICszNzMsMTUgQEAgbWFpbiAoaW50IGFyZ2MsIGNo
YXIgKmFyZ3ZbXSkKICAgICAgICAgcHJpbnRmKCJ0ZXN0aW5nIHNydHBfcHJvdGVjdCBhbmQgc3J0
cF91bnByb3RlY3Qgd2l0aCBiaWcgcG9saWN5XG4iKTsKICAgICAgICAgaWYgKHNydHBfdGVzdChi
aWdfcG9saWN5LCAwLCAtMSkgPT0gc3J0cF9lcnJfc3RhdHVzX29rKSB7CiAgICAgICAgICAgICBw
cmludGYoInBhc3NlZFxuXG4iKTsKLSAgICAgICAgfSBlbHNleworICAgICAgICB9IGVsc2Ugewog
ICAgICAgICAgICAgcHJpbnRmKCJmYWlsZWRcbiIpOwogICAgICAgICAgICAgZXhpdCgxKTsKICAg
ICAgICAgfQotICAgICAgICBwcmludGYoInRlc3Rpbmcgc3J0cF9wcm90ZWN0IGFuZCBzcnRwX3Vu
cHJvdGVjdCB3aXRoIGJpZyBwb2xpY3kgYW5kIGVuY3J5cHRlZCBleHRlbnNpb25zIGhlYWRlcnNc
biIpOworICAgICAgICBwcmludGYoInRlc3Rpbmcgc3J0cF9wcm90ZWN0IGFuZCBzcnRwX3VucHJv
dGVjdCB3aXRoIGJpZyBwb2xpY3kgYW5kICIKKyAgICAgICAgICAgICAgICJlbmNyeXB0ZWQgZXh0
ZW5zaW9ucyBoZWFkZXJzXG4iKTsKICAgICAgICAgaWYgKHNydHBfdGVzdChiaWdfcG9saWN5LCAx
LCAtMSkgPT0gc3J0cF9lcnJfc3RhdHVzX29rKSB7CiAgICAgICAgICAgICBwcmludGYoInBhc3Nl
ZFxuXG4iKTsKLSAgICAgICAgfSBlbHNleworICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAg
cHJpbnRmKCJmYWlsZWRcbiIpOwogICAgICAgICAgICAgZXhpdCgxKTsKICAgICAgICAgfQpAQCAt
NDA4LDcgKzM5Niw3IEBAIG1haW4gKGludCBhcmdjLCBjaGFyICphcmd2W10pCiAgICAgICAgICAg
ICAgICAid2lsZGNhcmQgc3NyYyBwb2xpY3lcbiIpOwogICAgICAgICBpZiAoc3J0cF90ZXN0KCZ3
aWxkY2FyZF9wb2xpY3ksIDAsIC0xKSA9PSBzcnRwX2Vycl9zdGF0dXNfb2spIHsKICAgICAgICAg
ICAgIHByaW50ZigicGFzc2VkXG5cbiIpOwotICAgICAgICB9IGVsc2V7CisgICAgICAgIH0gZWxz
ZSB7CiAgICAgICAgICAgICBwcmludGYoImZhaWxlZFxuIik7CiAgICAgICAgICAgICBleGl0KDEp
OwogICAgICAgICB9CkBAIC00MTYsNyArNDA0LDcgQEAgbWFpbiAoaW50IGFyZ2MsIGNoYXIgKmFy
Z3ZbXSkKICAgICAgICAgICAgICAgICJ3aWxkY2FyZCBzc3JjIHBvbGljeSBhbmQgZW5jcnlwdGVk
IGV4dGVuc2lvbnMgaGVhZGVyc1xuIik7CiAgICAgICAgIGlmIChzcnRwX3Rlc3QoJndpbGRjYXJk
X3BvbGljeSwgMSwgLTEpID09IHNydHBfZXJyX3N0YXR1c19vaykgewogICAgICAgICAgICAgcHJp
bnRmKCJwYXNzZWRcblxuIik7Ci0gICAgICAgIH0gZWxzZXsKKyAgICAgICAgfSBlbHNlIHsKICAg
ICAgICAgICAgIHByaW50ZigiZmFpbGVkXG4iKTsKICAgICAgICAgICAgIGV4aXQoMSk7CiAgICAg
ICAgIH0KQEAgLTQyOSw3ICs0MTcsNyBAQCBtYWluIChpbnQgYXJnYywgY2hhciAqYXJndltdKQog
ICAgICAgICAgICAgICAgInJlZmVyZW5jZSBwYWNrZXRcbiIpOwogICAgICAgICBpZiAoc3J0cF92
YWxpZGF0ZSgpID09IHNydHBfZXJyX3N0YXR1c19vaykgewogICAgICAgICAgICAgcHJpbnRmKCJw
YXNzZWRcblxuIik7Ci0gICAgICAgIH0gZWxzZXsKKyAgICAgICAgfSBlbHNlIHsKICAgICAgICAg
ICAgIHByaW50ZigiZmFpbGVkXG4iKTsKICAgICAgICAgICAgIGV4aXQoMSk7CiAgICAgICAgIH0K
QEAgLTQzOSw3ICs0MjcsNyBAQCBtYWluIChpbnQgYXJnYywgY2hhciAqYXJndltdKQogICAgICAg
ICAgICAgICAgInJlZmVyZW5jZSBwYWNrZXQgdXNpbmcgR0NNXG4iKTsKICAgICAgICAgaWYgKHNy
dHBfdmFsaWRhdGVfZ2NtKCkgPT0gc3J0cF9lcnJfc3RhdHVzX29rKSB7CiAgICAgICAgICAgICBw
cmludGYoInBhc3NlZFxuXG4iKTsKLSAgICAgICAgfSBlbHNleworICAgICAgICB9IGVsc2Ugewog
ICAgICAgICAgICAgcHJpbnRmKCJmYWlsZWRcbiIpOwogICAgICAgICAgICAgZXhpdCgxKTsKICAg
ICAgICAgfQpAQCAtNDU3LDkgKzQ0NSwxMCBAQCBtYWluIChpbnQgYXJnYywgY2hhciAqYXJndltd
KQogI2lmZGVmIE9QRU5TU0wKICAgICAgICAgcHJpbnRmKCJ0ZXN0aW5nIHNydHBfcHJvdGVjdCBh
bmQgc3J0cF91bnByb3RlY3QgYWdhaW5zdCAiCiAgICAgICAgICAgICAgICAicmVmZXJlbmNlIHBh
Y2tldCB3aXRoIGVuY3J5cHRlZCBleHRlbnNpb24gaGVhZGVycyAoR0NNKVxuIik7Ci0gICAgICAg
IGlmIChzcnRwX3ZhbGlkYXRlX2VuY3J5cHRlZF9leHRlbnNpb25zX2hlYWRlcnNfZ2NtKCkgPT0g
c3J0cF9lcnJfc3RhdHVzX29rKSB7CisgICAgICAgIGlmIChzcnRwX3ZhbGlkYXRlX2VuY3J5cHRl
ZF9leHRlbnNpb25zX2hlYWRlcnNfZ2NtKCkgPT0KKyAgICAgICAgICAgIHNydHBfZXJyX3N0YXR1
c19vaykgewogICAgICAgICAgICAgcHJpbnRmKCJwYXNzZWRcblxuIik7Ci0gICAgICAgIH0gZWxz
ZXsKKyAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgIHByaW50ZigiZmFpbGVkXG4iKTsKICAg
ICAgICAgICAgIGV4aXQoMSk7CiAgICAgICAgIH0KQEAgLTQ3Myw3ICs0NjIsNyBAQCBtYWluIChp
bnQgYXJnYywgY2hhciAqYXJndltdKQogICAgICAgICAgICAgICAgInJlZmVyZW5jZSBwYWNrZXQg
KEFFUy0yNTYpXG4iKTsKICAgICAgICAgaWYgKHNydHBfdmFsaWRhdGVfYWVzXzI1NigpID09IHNy
dHBfZXJyX3N0YXR1c19vaykgewogICAgICAgICAgICAgcHJpbnRmKCJwYXNzZWRcblxuIik7Ci0g
ICAgICAgIH0gZWxzZXsKKyAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgIHByaW50ZigiZmFp
bGVkXG4iKTsKICAgICAgICAgICAgIGV4aXQoMSk7CiAgICAgICAgIH0KQEAgLTQ4NSw3ICs0NzQs
NyBAQCBtYWluIChpbnQgYXJnYywgY2hhciAqYXJndltdKQogICAgICAgICAgICAgICAgInBhY2tl
dCB3aXRoIGVtcHR5IHBheWxvYWRcbiIpOwogICAgICAgICBpZiAoc3J0cF90ZXN0X2VtcHR5X3Bh
eWxvYWQoKSA9PSBzcnRwX2Vycl9zdGF0dXNfb2spIHsKICAgICAgICAgICAgIHByaW50ZigicGFz
c2VkXG4iKTsKLSAgICAgICAgfSBlbHNleworICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAg
cHJpbnRmKCJmYWlsZWRcbiIpOwogICAgICAgICAgICAgZXhpdCgxKTsKICAgICAgICAgfQpAQCAt
NDk0LDcgKzQ4Myw3IEBAIG1haW4gKGludCBhcmdjLCBjaGFyICphcmd2W10pCiAgICAgICAgICAg
ICAgICAicGFja2V0IHdpdGggZW1wdHkgcGF5bG9hZCAoR0NNKVxuIik7CiAgICAgICAgIGlmIChz
cnRwX3Rlc3RfZW1wdHlfcGF5bG9hZF9nY20oKSA9PSBzcnRwX2Vycl9zdGF0dXNfb2spIHsKICAg
ICAgICAgICAgIHByaW50ZigicGFzc2VkXG4iKTsKLSAgICAgICAgfSBlbHNleworICAgICAgICB9
IGVsc2UgewogICAgICAgICAgICAgcHJpbnRmKCJmYWlsZWRcbiIpOwogICAgICAgICAgICAgZXhp
dCgxKTsKICAgICAgICAgfQpAQCAtNTA2LDcgKzQ5NSw3IEBAIG1haW4gKGludCBhcmdjLCBjaGFy
ICphcmd2W10pCiAgICAgICAgIHByaW50ZigidGVzdGluZyBzcnRwX3JlbW92ZV9zdHJlYW0oKS4u
LiIpOwogICAgICAgICBpZiAoc3J0cF90ZXN0X3JlbW92ZV9zdHJlYW0oKSA9PSBzcnRwX2Vycl9z
dGF0dXNfb2spIHsKICAgICAgICAgICAgIHByaW50ZigicGFzc2VkXG4iKTsKLSAgICAgICAgfSBl
bHNleworICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgcHJpbnRmKCJmYWlsZWRcbiIpOwog
ICAgICAgICAgICAgZXhpdCgxKTsKICAgICAgICAgfQpAQCAtNTY1LDcgKzU1NCw2IEBAIG1haW4g
KGludCBhcmdjLCBjaGFyICphcmd2W10pCiAgICAgICAgICAgICBwcmludGYoImZhaWxlZFxuIik7
CiAgICAgICAgICAgICBleGl0KDEpOwogICAgICAgICB9Ci0KICAgICB9CiAKICAgICBpZiAoZG9f
dGltaW5nX3Rlc3QpIHsKQEAgLTU5OCw3ICs1ODYsNyBAQCBtYWluIChpbnQgYXJnYywgY2hhciAq
YXJndltdKQogICAgICAgICBtZW1zZXQoJnBvbGljeSwgMCwgc2l6ZW9mKHBvbGljeSkpOwogICAg
ICAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X3J0cF9kZWZhdWx0KCZwb2xpY3kucnRwKTsKICAg
ICAgICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9ydGNwX2RlZmF1bHQoJnBvbGljeS5ydGNwKTsK
LSAgICAgICAgcG9saWN5LnNzcmMudHlwZSAgPSBzc3JjX3NwZWNpZmljOworICAgICAgICBwb2xp
Y3kuc3NyYy50eXBlID0gc3NyY19zcGVjaWZpYzsKICAgICAgICAgcG9saWN5LnNzcmMudmFsdWUg
PSAweGRlY2FmYmFkOwogICAgICAgICBwb2xpY3kua2V5ID0gdGVzdF9rZXk7CiAgICAgICAgIHBv
bGljeS5la3QgPSBOVUxMOwpAQCAtNjEyLDI4ICs2MDAsMjggQEAgbWFpbiAoaW50IGFyZ2MsIGNo
YXIgKmFyZ3ZbXSkKICAgICAgICAgcHJpbnRmKCJjb2RlY1x0XHRsZW5ndGggKG9jdGV0cylcdFx0
c3J0cCBpbnN0cnVjdGlvbnMvc2Vjb25kXG4iKTsKICAgICAgICAgcHJpbnRmKCJHLjcxMVx0XHQl
ZFx0XHRcdCVlXG4iLCA4MCwKICAgICAgICAgICAgICAgIChkb3VibGUpbWlwc192YWx1ZSAqICg4
MCAqIDgpIC8KLSAgICAgICAgICAgICAgIHNydHBfYml0c19wZXJfc2Vjb25kKDgwLCAmcG9saWN5
KSAvIC4wMSApOworICAgICAgICAgICAgICAgICAgIHNydHBfYml0c19wZXJfc2Vjb25kKDgwLCAm
cG9saWN5KSAvIC4wMSk7CiAgICAgICAgIHByaW50ZigiRy43MTFcdFx0JWRcdFx0XHQlZVxuIiwg
MTYwLAogICAgICAgICAgICAgICAgKGRvdWJsZSltaXBzX3ZhbHVlICogKDE2MCAqIDgpIC8KLSAg
ICAgICAgICAgICAgIHNydHBfYml0c19wZXJfc2Vjb25kKDE2MCwgJnBvbGljeSkgLyAuMDIpOwor
ICAgICAgICAgICAgICAgICAgIHNydHBfYml0c19wZXJfc2Vjb25kKDE2MCwgJnBvbGljeSkgLyAu
MDIpOwogICAgICAgICBwcmludGYoIkcuNzI2LTMyXHQlZFx0XHRcdCVlXG4iLCA0MCwKICAgICAg
ICAgICAgICAgIChkb3VibGUpbWlwc192YWx1ZSAqICg0MCAqIDgpIC8KLSAgICAgICAgICAgICAg
IHNydHBfYml0c19wZXJfc2Vjb25kKDQwLCAmcG9saWN5KSAvIC4wMSApOworICAgICAgICAgICAg
ICAgICAgIHNydHBfYml0c19wZXJfc2Vjb25kKDQwLCAmcG9saWN5KSAvIC4wMSk7CiAgICAgICAg
IHByaW50ZigiRy43MjYtMzJcdCVkXHRcdFx0JWVcbiIsIDgwLAogICAgICAgICAgICAgICAgKGRv
dWJsZSltaXBzX3ZhbHVlICogKDgwICogOCkgLwotICAgICAgICAgICAgICAgc3J0cF9iaXRzX3Bl
cl9zZWNvbmQoODAsICZwb2xpY3kpIC8gLjAyKTsKKyAgICAgICAgICAgICAgICAgICBzcnRwX2Jp
dHNfcGVyX3NlY29uZCg4MCwgJnBvbGljeSkgLyAuMDIpOwogICAgICAgICBwcmludGYoIkcuNzI5
XHRcdCVkXHRcdFx0JWVcbiIsIDEwLAogICAgICAgICAgICAgICAgKGRvdWJsZSltaXBzX3ZhbHVl
ICogKDEwICogOCkgLwotICAgICAgICAgICAgICAgc3J0cF9iaXRzX3Blcl9zZWNvbmQoMTAsICZw
b2xpY3kpIC8gLjAxICk7CisgICAgICAgICAgICAgICAgICAgc3J0cF9iaXRzX3Blcl9zZWNvbmQo
MTAsICZwb2xpY3kpIC8gLjAxKTsKICAgICAgICAgcHJpbnRmKCJHLjcyOVx0XHQlZFx0XHRcdCVl
XG4iLCAyMCwKICAgICAgICAgICAgICAgIChkb3VibGUpbWlwc192YWx1ZSAqICgyMCAqIDgpIC8K
LSAgICAgICAgICAgICAgIHNydHBfYml0c19wZXJfc2Vjb25kKDIwLCAmcG9saWN5KSAvIC4wMiAp
OworICAgICAgICAgICAgICAgICAgIHNydHBfYml0c19wZXJfc2Vjb25kKDIwLCAmcG9saWN5KSAv
IC4wMik7CiAgICAgICAgIHByaW50ZigiV2lkZWJhbmRcdCVkXHRcdFx0JWVcbiIsIDMyMCwKICAg
ICAgICAgICAgICAgIChkb3VibGUpbWlwc192YWx1ZSAqICgzMjAgKiA4KSAvCi0gICAgICAgICAg
ICAgICBzcnRwX2JpdHNfcGVyX3NlY29uZCgzMjAsICZwb2xpY3kpIC8gLjAxICk7CisgICAgICAg
ICAgICAgICAgICAgc3J0cF9iaXRzX3Blcl9zZWNvbmQoMzIwLCAmcG9saWN5KSAvIC4wMSk7CiAg
ICAgICAgIHByaW50ZigiV2lkZWJhbmRcdCVkXHRcdFx0JWVcbiIsIDY0MCwKICAgICAgICAgICAg
ICAgIChkb3VibGUpbWlwc192YWx1ZSAqICg2NDAgKiA4KSAvCi0gICAgICAgICAgICAgICBzcnRw
X2JpdHNfcGVyX3NlY29uZCg2NDAsICZwb2xpY3kpIC8gLjAyICk7CisgICAgICAgICAgICAgICAg
ICAgc3J0cF9iaXRzX3Blcl9zZWNvbmQoNjQwLCAmcG9saWN5KSAvIC4wMik7CiAgICAgfQogCiAg
ICAgc3RhdHVzID0gc3J0cF9zaHV0ZG93bigpOwpAQCAtNjQ1LDggKzYzMyw2IEBAIG1haW4gKGlu
dCBhcmdjLCBjaGFyICphcmd2W10pCiAgICAgcmV0dXJuIDA7CiB9CiAKLQotCiAvKgogICogc3J0
cF9jcmVhdGVfdGVzdF9wYWNrZXQobGVuLCBzc3JjKSByZXR1cm5zIGEgcG9pbnRlciB0byBhCiAg
KiAobWFsbG9jZWQpIGV4YW1wbGUgUlRQIHBhY2tldCB3aG9zZSBkYXRhIGZpZWxkIGhhcyB0aGUg
bGVuZ3RoIGdpdmVuCkBAIC02NjAsOCArNjQ2LDkgQEAgbWFpbiAoaW50IGFyZ2MsIGNoYXIgKmFy
Z3ZbXSkKICAqIGRlYWxsb2NhdGVkIHdpdGggdGhlIGZyZWUoKSBjYWxsIG9uY2UgaXQgaXMgbm8g
bG9uZ2VyIG5lZWRlZC4KICAqLwogCi1zcnRwX2hkcl90ICoKLXNydHBfY3JlYXRlX3Rlc3RfcGFj
a2V0IChpbnQgcGt0X29jdGV0X2xlbiwgdWludDMyX3Qgc3NyYykKK3NydHBfaGRyX3QgKnNydHBf
Y3JlYXRlX3Rlc3RfcGFja2V0KGludCBwa3Rfb2N0ZXRfbGVuLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgdWludDMyX3Qgc3NyYywKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGludCAqcGt0X2xlbikKIHsKICAgICBpbnQgaTsKICAgICB1aW50OF90ICpi
dWZmZXI7CkBAIC02NjksMjMgKzY1NiwyMyBAQCBzcnRwX2NyZWF0ZV90ZXN0X3BhY2tldCAoaW50
IHBrdF9vY3RldF9sZW4sIHVpbnQzMl90IHNzcmMpCiAgICAgaW50IGJ5dGVzX2luX2hkciA9IDEy
OwogCiAgICAgLyogYWxsb2NhdGUgbWVtb3J5IGZvciB0ZXN0IHBhY2tldCAqLwotICAgIGhkciA9
IChzcnRwX2hkcl90KiltYWxsb2MocGt0X29jdGV0X2xlbiArIGJ5dGVzX2luX2hkcgotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgKyBTUlRQX01BWF9UUkFJTEVSX0xFTiArIDQpOworICAg
IGhkciA9IChzcnRwX2hkcl90ICopbWFsbG9jKHBrdF9vY3RldF9sZW4gKyBieXRlc19pbl9oZHIg
KworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNSVFBfTUFYX1RSQUlMRVJfTEVOICsg
NCk7CiAgICAgaWYgKCFoZHIpIHsKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogCi0gICAg
aGRyLT52ZXJzaW9uID0gMjsgICAgICAgICAgICAgIC8qIFJUUCB2ZXJzaW9uIHR3byAgICAgKi8K
LSAgICBoZHItPnAgICAgPSAwOyAgICAgICAgICAgICAgICAgLyogbm8gcGFkZGluZyBuZWVkZWQg
ICAqLwotICAgIGhkci0+eCAgICA9IDA7ICAgICAgICAgICAgICAgICAvKiBubyBoZWFkZXIgZXh0
ZW5zaW9uICovCi0gICAgaGRyLT5jYyAgID0gMDsgICAgICAgICAgICAgICAgIC8qIG5vIENTUkNz
ICAgICAgICAgICAgKi8KLSAgICBoZHItPm0gICAgPSAwOyAgICAgICAgICAgICAgICAgLyogbWFy
a2VyIGJpdCAgICAgICAgICAqLwotICAgIGhkci0+cHQgICA9IDB4ZjsgICAgICAgICAgICAgICAv
KiBwYXlsb2FkIHR5cGUgICAgICAgICovCi0gICAgaGRyLT5zZXEgID0gaHRvbnMoMHgxMjM0KTsg
ICAgIC8qIHNlcXVlbmNlIG51bWJlciAgICAgKi8KLSAgICBoZHItPnRzICAgPSBodG9ubCgweGRl
Y2FmYmFkKTsgLyogdGltZXN0YW1wICAgICAgICAgICAqLwotICAgIGhkci0+c3NyYyA9IGh0b25s
KHNzcmMpOyAgICAgICAvKiBzeW5jaC4gc291cmNlICAgICAgICovCisgICAgaGRyLT52ZXJzaW9u
ID0gMjsgICAgICAgICAgICAvKiBSVFAgdmVyc2lvbiB0d28gICAgICovCisgICAgaGRyLT5wID0g
MDsgICAgICAgICAgICAgICAgICAvKiBubyBwYWRkaW5nIG5lZWRlZCAgICovCisgICAgaGRyLT54
ID0gMDsgICAgICAgICAgICAgICAgICAvKiBubyBoZWFkZXIgZXh0ZW5zaW9uICovCisgICAgaGRy
LT5jYyA9IDA7ICAgICAgICAgICAgICAgICAvKiBubyBDU1JDcyAgICAgICAgICAgICovCisgICAg
aGRyLT5tID0gMDsgICAgICAgICAgICAgICAgICAvKiBtYXJrZXIgYml0ICAgICAgICAgICovCisg
ICAgaGRyLT5wdCA9IDB4ZjsgICAgICAgICAgICAgICAvKiBwYXlsb2FkIHR5cGUgICAgICAgICov
CisgICAgaGRyLT5zZXEgPSBodG9ucygweDEyMzQpOyAgICAvKiBzZXF1ZW5jZSBudW1iZXIgICAg
ICovCisgICAgaGRyLT50cyA9IGh0b25sKDB4ZGVjYWZiYWQpOyAvKiB0aW1lc3RhbXAgICAgICAg
ICAgICovCisgICAgaGRyLT5zc3JjID0gaHRvbmwoc3NyYyk7ICAgICAvKiBzeW5jaC4gc291cmNl
ICAgICAgICovCiAKLSAgICBidWZmZXIgPSAodWludDhfdCopaGRyOworICAgIGJ1ZmZlciA9ICh1
aW50OF90ICopaGRyOwogICAgIGJ1ZmZlciArPSBieXRlc19pbl9oZHI7CiAKICAgICAvKiBzZXQg
UlRQIGRhdGEgdG8gMHhhYiAqLwpAQCAtNjk4LDg1ICs2ODUsOTEgQEAgc3J0cF9jcmVhdGVfdGVz
dF9wYWNrZXQgKGludCBwa3Rfb2N0ZXRfbGVuLCB1aW50MzJfdCBzc3JjKQogICAgICAgICAqYnVm
ZmVyKysgPSAweGZmOwogICAgIH0KIAorICAgICpwa3RfbGVuID0gYnl0ZXNfaW5faGRyICsgcGt0
X29jdGV0X2xlbjsKKwogICAgIHJldHVybiBoZHI7CiB9CiAKLXN0YXRpYyBzcnRwX2hkcl90ICoK
LXNydHBfY3JlYXRlX3Rlc3RfcGFja2V0X2V4dGVuZGVkIChpbnQgcGt0X29jdGV0X2xlbiwgdWlu
dDMyX3Qgc3NyYywgdWludDE2X3Qgc2VxLCB1aW50MzJfdCB0cykKK3N0YXRpYyBzcnRwX2hkcl90
ICpzcnRwX2NyZWF0ZV90ZXN0X3BhY2tldF9leHRlbmRlZChpbnQgcGt0X29jdGV0X2xlbiwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJf
dCBzc3JjLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHVpbnQxNl90IHNlcSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB1aW50MzJfdCB0cywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBpbnQgKnBrdF9sZW4pCiB7Ci0gIHNydHBfaGRyX3QgKmhk
cjsKKyAgICBzcnRwX2hkcl90ICpoZHI7CiAKLSAgaGRyID0gc3J0cF9jcmVhdGVfdGVzdF9wYWNr
ZXQocGt0X29jdGV0X2xlbiwgc3NyYyk7Ci0gIGlmIChoZHIgPT0gTlVMTCkKLSAgICByZXR1cm4g
aGRyOworICAgIGhkciA9IHNydHBfY3JlYXRlX3Rlc3RfcGFja2V0KHBrdF9vY3RldF9sZW4sIHNz
cmMsIHBrdF9sZW4pOworICAgIGlmIChoZHIgPT0gTlVMTCkKKyAgICAgICAgcmV0dXJuIGhkcjsK
IAotICBoZHItPnNlcSAgPSBodG9ucyhzZXEpOwotICBoZHItPnRzICAgPSBodG9ubCh0cyk7Ci0g
IHJldHVybiBoZHI7CisgICAgaGRyLT5zZXEgPSBodG9ucyhzZXEpOworICAgIGhkci0+dHMgPSBo
dG9ubCh0cyk7CisgICAgcmV0dXJuIGhkcjsKIH0KIAotc3J0cF9oZHJfdCAqCi1zcnRwX2NyZWF0
ZV90ZXN0X3BhY2tldF9leHRfaGRyKGludCBwa3Rfb2N0ZXRfbGVuLCB1aW50MzJfdCBzc3JjKSB7
Ci0gIGludCBpOwotICB1aW50OF90ICpidWZmZXI7Ci0gIHNydHBfaGRyX3QgKmhkcjsKLSAgaW50
IGJ5dGVzX2luX2hkciA9IDEyOwotICB1aW50OF90IGV4dGVuc2lvbl9oZWFkZXJbMTJdID0gewot
ICAgIC8qIG9uZS1ieXRlIGhlYWRlciAqLwotICAgIDB4YmUsIDB4ZGUsCi0gICAgLyogc2l6ZSAq
LwotICAgIDB4MDAsIDB4MDIsCi0gICAgLyogaWQgMSwgbGVuZ3RoIDEgKGkuZS4gMiBieXRlcykg
Ki8KLSAgICAweDExLAotICAgIC8qIHBheWxvYWQgKi8KLSAgICAweGNhLAotICAgIDB4ZmUsCi0g
ICAgLyogcGFkZGluZyAqLwotICAgIDB4MDAsCi0gICAgLyogaWQgMiwgbGVuZ3RoIDAgKGkuZS4g
MSBieXRlKSAqLwotICAgIDB4MjAsCi0gICAgLyogcGF5bG9hZCAqLwotICAgIDB4YmEsCi0gICAg
LyogcGFkZGluZyAqLwotICAgIDB4MDAsCi0gICAgMHgwMAotICB9OwotCi0gIC8qIGFsbG9jYXRl
IG1lbW9yeSBmb3IgdGVzdCBwYWNrZXQgKi8KLSAgaGRyID0gKHNydHBfaGRyX3QqKSBtYWxsb2Mo
cGt0X29jdGV0X2xlbiArIGJ5dGVzX2luX2hkcgotICAgICAgICAgICArIHNpemVvZihleHRlbnNp
b25faGVhZGVyKSArIFNSVFBfTUFYX1RSQUlMRVJfTEVOICsgNCk7Ci0gIGlmICghaGRyKQotICAg
IHJldHVybiBOVUxMOwotCi0gIGhkci0+dmVyc2lvbiA9IDI7ICAgICAgICAgICAgICAvKiBSVFAg
dmVyc2lvbiB0d28gICAgICovCi0gIGhkci0+cCAgICA9IDA7ICAgICAgICAgICAgICAgICAvKiBu
byBwYWRkaW5nIG5lZWRlZCAgICovCi0gIGhkci0+eCAgICA9IDE7ICAgICAgICAgICAgICAgICAv
KiBubyBoZWFkZXIgZXh0ZW5zaW9uICovCi0gIGhkci0+Y2MgICA9IDA7ICAgICAgICAgICAgICAg
ICAvKiBubyBDU1JDcyAgICAgICAgICAgICovCi0gIGhkci0+bSAgICA9IDA7ICAgICAgICAgICAg
ICAgICAvKiBtYXJrZXIgYml0ICAgICAgICAgICovCi0gIGhkci0+cHQgICA9IDB4ZjsgICAgICAg
ICAgICAgICAvKiBwYXlsb2FkIHR5cGUgICAgICAgICovCi0gIGhkci0+c2VxICA9IGh0b25zKDB4
MTIzNCk7ICAgICAvKiBzZXF1ZW5jZSBudW1iZXIgICAgICovCi0gIGhkci0+dHMgICA9IGh0b25s
KDB4ZGVjYWZiYWQpOyAvKiB0aW1lc3RhbXAgICAgICAgICAgICovCi0gIGhkci0+c3NyYyA9IGh0
b25sKHNzcmMpOyAgICAgICAvKiBzeW5jaC4gc291cmNlICAgICAgICovCi0KLSAgYnVmZmVyID0g
KHVpbnQ4X3QgKiloZHI7Ci0gIGJ1ZmZlciArPSBieXRlc19pbl9oZHI7Ci0KLSAgbWVtY3B5KGJ1
ZmZlciwgZXh0ZW5zaW9uX2hlYWRlciwgc2l6ZW9mKGV4dGVuc2lvbl9oZWFkZXIpKTsKLSAgYnVm
ZmVyICs9IHNpemVvZihleHRlbnNpb25faGVhZGVyKTsKLQotICAvKiBzZXQgUlRQIGRhdGEgdG8g
MHhhYiAqLwotICBmb3IgKGk9MDsgaSA8IHBrdF9vY3RldF9sZW47IGkrKykKLSAgICAqYnVmZmVy
KysgPSAweGFiOwotCi0gIC8qIHNldCBwb3N0LWRhdGEgdmFsdWUgdG8gMHhmZmZmIHRvIGVuYWJs
ZSBvdmVycnVuIGNoZWNraW5nICovCi0gIGZvciAoaT0wOyBpIDwgU1JUUF9NQVhfVFJBSUxFUl9M
RU4rNDsgaSsrKQotICAgICpidWZmZXIrKyA9IDB4ZmY7Ci0KLSAgcmV0dXJuIGhkcjsKK3NydHBf
aGRyX3QgKnNydHBfY3JlYXRlX3Rlc3RfcGFja2V0X2V4dF9oZHIoaW50IHBrdF9vY3RldF9sZW4s
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IHNz
cmMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCAqcGt0
X2xlbikKK3sKKyAgICBpbnQgaTsKKyAgICB1aW50OF90ICpidWZmZXI7CisgICAgc3J0cF9oZHJf
dCAqaGRyOworICAgIGludCBieXRlc19pbl9oZHIgPSAxMjsKKyAgICB1aW50OF90IGV4dGVuc2lv
bl9oZWFkZXJbMTJdID0geyAvKiBvbmUtYnl0ZSBoZWFkZXIgKi8KKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAweGJlLCAweGRlLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIC8qIHNpemUgKi8KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAweDAwLCAweDAyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8q
IGlkIDEsIGxlbmd0aCAxIChpLmUuIDIgYnl0ZXMpICovCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgMHgxMSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAvKiBwYXlsb2FkICovCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHhj
YSwgMHhmZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBwYWRkaW5n
ICovCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMCwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBpZCAyLCBsZW5ndGggMCAoaS5lLiAxIGJ5
dGUpICovCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgyMCwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBwYXlsb2FkICovCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgMHhiYSwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAvKiBwYWRkaW5nICovCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgMHgwMCwgMHgwMAorICAgIH07CisKKyAgICAvKiBhbGxvY2F0ZSBtZW1vcnkgZm9y
IHRlc3QgcGFja2V0ICovCisgICAgaGRyID0gKHNydHBfaGRyX3QgKiltYWxsb2MocGt0X29jdGV0
X2xlbiArIGJ5dGVzX2luX2hkciArCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6
ZW9mKGV4dGVuc2lvbl9oZWFkZXIpICsgU1JUUF9NQVhfVFJBSUxFUl9MRU4gKworICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIDQpOworICAgIGlmICghaGRyKQorICAgICAgICByZXR1cm4g
TlVMTDsKKworICAgIGhkci0+dmVyc2lvbiA9IDI7ICAgICAgICAgICAgLyogUlRQIHZlcnNpb24g
dHdvICAgICAqLworICAgIGhkci0+cCA9IDA7ICAgICAgICAgICAgICAgICAgLyogbm8gcGFkZGlu
ZyBuZWVkZWQgICAqLworICAgIGhkci0+eCA9IDE7ICAgICAgICAgICAgICAgICAgLyogbm8gaGVh
ZGVyIGV4dGVuc2lvbiAqLworICAgIGhkci0+Y2MgPSAwOyAgICAgICAgICAgICAgICAgLyogbm8g
Q1NSQ3MgICAgICAgICAgICAqLworICAgIGhkci0+bSA9IDA7ICAgICAgICAgICAgICAgICAgLyog
bWFya2VyIGJpdCAgICAgICAgICAqLworICAgIGhkci0+cHQgPSAweGY7ICAgICAgICAgICAgICAg
LyogcGF5bG9hZCB0eXBlICAgICAgICAqLworICAgIGhkci0+c2VxID0gaHRvbnMoMHgxMjM0KTsg
ICAgLyogc2VxdWVuY2UgbnVtYmVyICAgICAqLworICAgIGhkci0+dHMgPSBodG9ubCgweGRlY2Fm
YmFkKTsgLyogdGltZXN0YW1wICAgICAgICAgICAqLworICAgIGhkci0+c3NyYyA9IGh0b25sKHNz
cmMpOyAgICAgLyogc3luY2guIHNvdXJjZSAgICAgICAqLworCisgICAgYnVmZmVyID0gKHVpbnQ4
X3QgKiloZHI7CisgICAgYnVmZmVyICs9IGJ5dGVzX2luX2hkcjsKKworICAgIG1lbWNweShidWZm
ZXIsIGV4dGVuc2lvbl9oZWFkZXIsIHNpemVvZihleHRlbnNpb25faGVhZGVyKSk7CisgICAgYnVm
ZmVyICs9IHNpemVvZihleHRlbnNpb25faGVhZGVyKTsKKworICAgIC8qIHNldCBSVFAgZGF0YSB0
byAweGFiICovCisgICAgZm9yIChpID0gMDsgaSA8IHBrdF9vY3RldF9sZW47IGkrKykKKyAgICAg
ICAgKmJ1ZmZlcisrID0gMHhhYjsKKworICAgIC8qIHNldCBwb3N0LWRhdGEgdmFsdWUgdG8gMHhm
ZmZmIHRvIGVuYWJsZSBvdmVycnVuIGNoZWNraW5nICovCisgICAgZm9yIChpID0gMDsgaSA8IFNS
VFBfTUFYX1RSQUlMRVJfTEVOICsgNDsgaSsrKQorICAgICAgICAqYnVmZmVyKysgPSAweGZmOwor
CisgICAgKnBrdF9sZW4gPSBieXRlc19pbl9oZHIgKyBzaXplb2YoZXh0ZW5zaW9uX2hlYWRlcikg
KyBwa3Rfb2N0ZXRfbGVuOworCisgICAgcmV0dXJuIGhkcjsKIH0KIAotdm9pZAotc3J0cF9kb190
aW1pbmcgKGNvbnN0IHNydHBfcG9saWN5X3QgKnBvbGljeSkKK3ZvaWQgc3J0cF9kb190aW1pbmco
Y29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5KQogewogICAgIGludCBsZW47CiAKQEAgLTc5Niwx
MSArNzg5LDkgQEAgc3J0cF9kb190aW1pbmcgKGNvbnN0IHNydHBfcG9saWN5X3QgKnBvbGljeSkK
IAogICAgIC8qIHRoZXNlIGV4dHJhIGxpbmVmZWVkcyBsZXQgZ251cGxvdCBrbm93IHRoYXQgYSBk
YXRhc2V0IGlzIGRvbmUgKi8KICAgICBwcmludGYoIlxyXG5cclxuIik7Ci0KIH0KIAotdm9pZAot
c3J0cF9kb19yZWplY3Rpb25fdGltaW5nIChjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3kpCit2
b2lkIHNydHBfZG9fcmVqZWN0aW9uX3RpbWluZyhjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3kp
CiB7CiAgICAgaW50IGxlbjsKIApAQCAtODE5LDIxICs4MTAsMTggQEAgc3J0cF9kb19yZWplY3Rp
b25fdGltaW5nIChjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3kpCiAKICAgICAvKiB0aGVzZSBl
eHRyYSBsaW5lZmVlZHMgbGV0IGdudXBsb3Qga25vdyB0aGF0IGEgZGF0YXNldCBpcyBkb25lICov
CiAgICAgcHJpbnRmKCJcclxuXHJcbiIpOwotCiB9CiAKLQogI2RlZmluZSBNQVhfTVNHX0xFTiAx
MDI0CiAKLWRvdWJsZQotc3J0cF9iaXRzX3Blcl9zZWNvbmQgKGludCBtc2dfbGVuX29jdGV0cywg
Y29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5KQorZG91YmxlIHNydHBfYml0c19wZXJfc2Vjb25k
KGludCBtc2dfbGVuX29jdGV0cywgY29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5KQogewogICAg
IHNydHBfdCBzcnRwOwogICAgIHNydHBfaGRyX3QgKm1lc2c7CiAgICAgaW50IGk7CiAgICAgY2xv
Y2tfdCB0aW1lcjsKICAgICBpbnQgbnVtX3RyaWFscyA9IDEwMDAwMDsKLSAgICBpbnQgbGVuOwor
ICAgIGludCBpbnB1dF9sZW4sIGxlbjsKICAgICB1aW50MzJfdCBzc3JjOwogICAgIHNydHBfZXJy
X3N0YXR1c190IHN0YXR1czsKIApAQCAtODU4LDE1ICs4NDYsMTMgQEAgc3J0cF9iaXRzX3Blcl9z
ZWNvbmQgKGludCBtc2dfbGVuX29jdGV0cywgY29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5KQog
ICAgIC8qCiAgICAgICogY3JlYXRlIGEgdGVzdCBwYWNrZXQKICAgICAgKi8KLSAgICBtZXNnID0g
c3J0cF9jcmVhdGVfdGVzdF9wYWNrZXQobXNnX2xlbl9vY3RldHMsIHNzcmMpOworICAgIG1lc2cg
PSBzcnRwX2NyZWF0ZV90ZXN0X3BhY2tldChtc2dfbGVuX29jdGV0cywgc3NyYywgJmlucHV0X2xl
bik7CiAgICAgaWYgKG1lc2cgPT0gTlVMTCkgewogICAgICAgICByZXR1cm4gMC4wOyAvKiBpbmRp
Y2F0ZSBmYWlsdXJlIGJ5IHJldHVybmluZyB6ZXJvICovCi0KICAgICB9CiAgICAgdGltZXIgPSBj
bG9jaygpOwogICAgIGZvciAoaSA9IDA7IGkgPCBudW1fdHJpYWxzOyBpKyspIHsKLSAgICAgICAg
bGVuID0gbXNnX2xlbl9vY3RldHMgKyAxMjsgLyogYWRkIGluIHJ0cCBoZWFkZXIgbGVuZ3RoICov
Ci0KKyAgICAgICAgbGVuID0gaW5wdXRfbGVuOwogICAgICAgICAvKiBzcnRwIHByb3RlY3QgbWVz
c2FnZSAqLwogICAgICAgICBzdGF0dXMgPSBzcnRwX3Byb3RlY3Qoc3J0cCwgbWVzZywgJmxlbik7
CiAgICAgICAgIGlmIChzdGF0dXMpIHsKQEAgLTg3Niw3ICs4NjIsOCBAQCBzcnRwX2JpdHNfcGVy
X3NlY29uZCAoaW50IG1zZ19sZW5fb2N0ZXRzLCBjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3kp
CiAKICAgICAgICAgLyogaW5jcmVtZW50IG1lc3NhZ2UgbnVtYmVyICovCiAgICAgICAgIHsKLSAg
ICAgICAgICAgIC8qIGhhY2sgc2VxdWVuY2UgdG8gYXZvaWQgcHJvYmxlbXMgd2l0aCBtYWNyb3Mg
Zm9yIGh0b25zL250b2hzIG9uIHNvbWUgc3lzdGVtcyAqLworICAgICAgICAgICAgLyogaGFjayBz
ZXF1ZW5jZSB0byBhdm9pZCBwcm9ibGVtcyB3aXRoIG1hY3JvcyBmb3IgaHRvbnMvbnRvaHMgb24K
KyAgICAgICAgICAgICAqIHNvbWUgc3lzdGVtcyAqLwogICAgICAgICAgICAgc2hvcnQgbmV3X3Nl
cSA9IG50b2hzKG1lc2ctPnNlcSkgKyAxOwogICAgICAgICAgICAgbWVzZy0+c2VxID0gaHRvbnMo
bmV3X3NlcSk7CiAgICAgICAgIH0KQEAgLTg5MSwxMiArODc4LDExIEBAIHNydHBfYml0c19wZXJf
c2Vjb25kIChpbnQgbXNnX2xlbl9vY3RldHMsIGNvbnN0IHNydHBfcG9saWN5X3QgKnBvbGljeSkK
ICAgICAgICAgZXhpdCgxKTsKICAgICB9CiAKLSAgICByZXR1cm4gKGRvdWJsZSkobXNnX2xlbl9v
Y3RldHMpICogOCAqCi0gICAgICAgICAgIG51bV90cmlhbHMgKiBDTE9DS1NfUEVSX1NFQyAvIHRp
bWVyOworICAgIHJldHVybiAoZG91YmxlKShtc2dfbGVuX29jdGV0cykqOCAqIG51bV90cmlhbHMg
KiBDTE9DS1NfUEVSX1NFQyAvIHRpbWVyOwogfQogCi1kb3VibGUKLXNydHBfcmVqZWN0aW9uc19w
ZXJfc2Vjb25kIChpbnQgbXNnX2xlbl9vY3RldHMsIGNvbnN0IHNydHBfcG9saWN5X3QgKnBvbGlj
eSkKK2RvdWJsZSBzcnRwX3JlamVjdGlvbnNfcGVyX3NlY29uZChpbnQgbXNnX2xlbl9vY3RldHMs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3J0cF9wb2xpY3lfdCAq
cG9saWN5KQogewogICAgIHNydHBfY3R4X3QgKnNydHA7CiAgICAgc3J0cF9oZHJfdCAqbWVzZzsK
QEAgLTkxNiwxOCArOTAyLDE2IEBAIHNydHBfcmVqZWN0aW9uc19wZXJfc2Vjb25kIChpbnQgbXNn
X2xlbl9vY3RldHMsIGNvbnN0IHNydHBfcG9saWN5X3QgKnBvbGljeSkKICAgICAgICAgZXhpdCgx
KTsKICAgICB9CiAKLSAgICBtZXNnID0gc3J0cF9jcmVhdGVfdGVzdF9wYWNrZXQobXNnX2xlbl9v
Y3RldHMsIHNzcmMpOworICAgIG1lc2cgPSBzcnRwX2NyZWF0ZV90ZXN0X3BhY2tldChtc2dfbGVu
X29jdGV0cywgc3NyYywgJmxlbik7CiAgICAgaWYgKG1lc2cgPT0gTlVMTCkgewogICAgICAgICBy
ZXR1cm4gMC4wOyAvKiBpbmRpY2F0ZSBmYWlsdXJlIGJ5IHJldHVybmluZyB6ZXJvICovCi0KICAg
ICB9Ci0gICAgbGVuID0gbXNnX2xlbl9vY3RldHM7Ci0gICAgc3J0cF9wcm90ZWN0KHNydHAsIChz
cnRwX2hkcl90KiltZXNnLCAmbGVuKTsKKyAgICBzcnRwX3Byb3RlY3Qoc3J0cCwgKHNydHBfaGRy
X3QgKiltZXNnLCAmbGVuKTsKIAogICAgIHRpbWVyID0gY2xvY2soKTsKICAgICBmb3IgKGkgPSAw
OyBpIDwgbnVtX3RyaWFsczsgaSsrKSB7CiAgICAgICAgIGxlbiA9IG1zZ19sZW5fb2N0ZXRzOwot
ICAgICAgICBzcnRwX3VucHJvdGVjdChzcnRwLCAoc3J0cF9oZHJfdCopbWVzZywgJmxlbik7Cisg
ICAgICAgIHNydHBfdW5wcm90ZWN0KHNydHAsIChzcnRwX2hkcl90ICopbWVzZywgJmxlbik7CiAg
ICAgfQogICAgIHRpbWVyID0gY2xvY2soKSAtIHRpbWVyOwogCkBAIC05NDIsNTYgKzkyNiw2NyBA
QCBzcnRwX3JlamVjdGlvbnNfcGVyX3NlY29uZCAoaW50IG1zZ19sZW5fb2N0ZXRzLCBjb25zdCBz
cnRwX3BvbGljeV90ICpwb2xpY3kpCiAgICAgcmV0dXJuIChkb3VibGUpbnVtX3RyaWFscyAqIENM
T0NLU19QRVJfU0VDIC8gdGltZXI7CiB9CiAKLQotdm9pZAotZXJyX2NoZWNrIChzcnRwX2Vycl9z
dGF0dXNfdCBzKQordm9pZCBlcnJfY2hlY2soc3J0cF9lcnJfc3RhdHVzX3QgcykKIHsKICAgICBp
ZiAocyA9PSBzcnRwX2Vycl9zdGF0dXNfb2spIHsKICAgICAgICAgcmV0dXJuOwotICAgIH0gZWxz
ZXsKKyAgICB9IGVsc2UgewogICAgICAgICBmcHJpbnRmKHN0ZGVyciwgImVycm9yOiB1bmV4cGVj
dGVkIHNydHAgZmFpbHVyZSAoY29kZSAlZClcbiIsIHMpOwogICAgIH0KICAgICBleGl0KDEpOwog
fQogCi1zcnRwX2Vycl9zdGF0dXNfdAotc3J0cF90ZXN0X2NhbGxfcHJvdGVjdChzcnRwX3Qgc3J0
cF9zZW5kZXIsIHNydHBfaGRyX3QgKmhkciwgaW50ICpsZW4sIGludCBta2lfaW5kZXgpIHsKK3Ny
dHBfZXJyX3N0YXR1c190IHNydHBfdGVzdF9jYWxsX3Byb3RlY3Qoc3J0cF90IHNydHBfc2VuZGVy
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcnRwX2hkcl90ICpo
ZHIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCAqbGVuLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgbWtpX2luZGV4KQor
ewogICAgIGlmIChta2lfaW5kZXggPT0gLTEpIHsKLQlyZXR1cm4gc3J0cF9wcm90ZWN0KHNydHBf
c2VuZGVyLCBoZHIsIGxlbik7CisgICAgICAgIHJldHVybiBzcnRwX3Byb3RlY3Qoc3J0cF9zZW5k
ZXIsIGhkciwgbGVuKTsKICAgICB9IGVsc2UgewotCXJldHVybiBzcnRwX3Byb3RlY3RfbWtpKHNy
dHBfc2VuZGVyLCBoZHIsIGxlbiwgMSwgbWtpX2luZGV4KTsKKyAgICAgICAgcmV0dXJuIHNydHBf
cHJvdGVjdF9ta2koc3J0cF9zZW5kZXIsIGhkciwgbGVuLCAxLCBta2lfaW5kZXgpOwogICAgIH0K
IH0KIAotc3J0cF9lcnJfc3RhdHVzX3QKLXNydHBfdGVzdF9jYWxsX3Byb3RlY3RfcnRjcChzcnRw
X3Qgc3J0cF9zZW5kZXIsIHNydHBfaGRyX3QgKmhkciwgaW50ICpsZW4sIGludCBta2lfaW5kZXgp
IHsKK3NydHBfZXJyX3N0YXR1c190IHNydHBfdGVzdF9jYWxsX3Byb3RlY3RfcnRjcChzcnRwX3Qg
c3J0cF9zZW5kZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgc3J0cF9oZHJfdCAqaGRyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGludCAqbGVuLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGludCBta2lfaW5kZXgpCit7CiAgICAgaWYgKG1raV9pbmRleCA9PSAtMSkgewot
CXJldHVybiBzcnRwX3Byb3RlY3RfcnRjcChzcnRwX3NlbmRlciwgaGRyLCBsZW4pOworICAgICAg
ICByZXR1cm4gc3J0cF9wcm90ZWN0X3J0Y3Aoc3J0cF9zZW5kZXIsIGhkciwgbGVuKTsKICAgICB9
IGVsc2UgewotCXJldHVybiBzcnRwX3Byb3RlY3RfcnRjcF9ta2koc3J0cF9zZW5kZXIsIGhkciwg
bGVuLCAxLCBta2lfaW5kZXgpOworICAgICAgICByZXR1cm4gc3J0cF9wcm90ZWN0X3J0Y3BfbWtp
KHNydHBfc2VuZGVyLCBoZHIsIGxlbiwgMSwgbWtpX2luZGV4KTsKICAgICB9CiB9CiAKLXNydHBf
ZXJyX3N0YXR1c190Ci1zcnRwX3Rlc3RfY2FsbF91bnByb3RlY3Qoc3J0cF90IHNydHBfc2VuZGVy
LCBzcnRwX2hkcl90ICpoZHIsIGludCAqbGVuLCBpbnQgdXNlX21raSkgeworc3J0cF9lcnJfc3Rh
dHVzX3Qgc3J0cF90ZXN0X2NhbGxfdW5wcm90ZWN0KHNydHBfdCBzcnRwX3NlbmRlciwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcnRwX2hkcl90ICpoZHIsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50ICpsZW4sCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IHVzZV9ta2kpCit7CiAg
ICAgaWYgKHVzZV9ta2kgPT0gLTEpIHsKLQlyZXR1cm4gc3J0cF91bnByb3RlY3Qoc3J0cF9zZW5k
ZXIsIGhkciwgbGVuKTsKKyAgICAgICAgcmV0dXJuIHNydHBfdW5wcm90ZWN0KHNydHBfc2VuZGVy
LCBoZHIsIGxlbik7CiAgICAgfSBlbHNlIHsKLQlyZXR1cm4gc3J0cF91bnByb3RlY3RfbWtpKHNy
dHBfc2VuZGVyLCBoZHIsIGxlbiwgdXNlX21raSk7CisgICAgICAgIHJldHVybiBzcnRwX3VucHJv
dGVjdF9ta2koc3J0cF9zZW5kZXIsIGhkciwgbGVuLCB1c2VfbWtpKTsKICAgICB9CiB9CiAKLXNy
dHBfZXJyX3N0YXR1c190Ci1zcnRwX3Rlc3RfY2FsbF91bnByb3RlY3RfcnRjcChzcnRwX3Qgc3J0
cF9zZW5kZXIsIHNydHBfaGRyX3QgKmhkciwgaW50ICpsZW4sIGludCB1c2VfbWtpKSB7CitzcnRw
X2Vycl9zdGF0dXNfdCBzcnRwX3Rlc3RfY2FsbF91bnByb3RlY3RfcnRjcChzcnRwX3Qgc3J0cF9z
ZW5kZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBz
cnRwX2hkcl90ICpoZHIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBpbnQgKmxlbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGludCB1c2VfbWtpKQorewogICAgIGlmICh1c2VfbWtpID09IC0xKSB7Ci0JcmV0
dXJuIHNydHBfdW5wcm90ZWN0X3J0Y3Aoc3J0cF9zZW5kZXIsIGhkciwgbGVuKTsKKyAgICAgICAg
cmV0dXJuIHNydHBfdW5wcm90ZWN0X3J0Y3Aoc3J0cF9zZW5kZXIsIGhkciwgbGVuKTsKICAgICB9
IGVsc2UgewotCXJldHVybiBzcnRwX3VucHJvdGVjdF9ydGNwX21raShzcnRwX3NlbmRlciwgaGRy
LCBsZW4sIHVzZV9ta2kpOworICAgICAgICByZXR1cm4gc3J0cF91bnByb3RlY3RfcnRjcF9ta2ko
c3J0cF9zZW5kZXIsIGhkciwgbGVuLCB1c2VfbWtpKTsKICAgICB9CiB9CiAKLXNydHBfZXJyX3N0
YXR1c190Ci1zcnRwX3Rlc3QgKGNvbnN0IHNydHBfcG9saWN5X3QgKnBvbGljeSwgaW50IGV4dGVu
c2lvbl9oZWFkZXIsIGludCBta2lfaW5kZXgpCitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3Rlc3Qo
Y29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5LAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGludCBleHRlbnNpb25faGVhZGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBt
a2lfaW5kZXgpCiB7CiAgICAgaW50IGk7CiAgICAgc3J0cF90IHNydHBfc2VuZGVyOwpAQCAtMTAw
MCw5ICs5OTUsOSBAQCBzcnRwX3Rlc3QgKGNvbnN0IHNydHBfcG9saWN5X3QgKnBvbGljeSwgaW50
IGV4dGVuc2lvbl9oZWFkZXIsIGludCBta2lfaW5kZXgpCiAgICAgc3J0cF9oZHJfdCAqaGRyLCAq
aGRyMjsKICAgICB1aW50OF90IGhkcl9lbmNbNjRdOwogICAgIHVpbnQ4X3QgKnBrdF9lbmQ7Ci0g
ICAgaW50IG1zZ19sZW5fb2N0ZXRzLCBtc2dfbGVuX2VuYzsKLSAgICBpbnQgbGVuOwotICAgIGlu
dCB0YWdfbGVuZ3RoID0gcG9saWN5LT5ydHAuYXV0aF90YWdfbGVuOworICAgIGludCBtc2dfbGVu
X29jdGV0cywgbXNnX2xlbl9lbmMsIG1zZ19sZW47CisgICAgaW50IGxlbiwgbGVuMjsKKyAgICB1
aW50MzJfdCB0YWdfbGVuZ3RoOwogICAgIHVpbnQzMl90IHNzcmM7CiAgICAgc3J0cF9wb2xpY3lf
dCAqcmN2cl9wb2xpY3k7CiAgICAgc3J0cF9wb2xpY3lfdCB0bXBfcG9saWN5OwpAQCAtMTAxMCw3
ICsxMDA1LDcgQEAgc3J0cF90ZXN0IChjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3ksIGludCBl
eHRlbnNpb25faGVhZGVyLCBpbnQgbWtpX2luZGV4KQogICAgIGludCB1c2VfbWtpID0gMDsKIAog
ICAgIGlmIChta2lfaW5kZXggPj0gMCkKLQl1c2VfbWtpID0gMTsKKyAgICAgICAgdXNlX21raSA9
IDE7CiAKICAgICBpZiAoZXh0ZW5zaW9uX2hlYWRlcikgewogICAgICAgICBtZW1jcHkoJnRtcF9w
b2xpY3ksIHBvbGljeSwgc2l6ZW9mKHNydHBfcG9saWN5X3QpKTsKQEAgLTEwMzEsMTggKzEwMjYs
MjEgQEAgc3J0cF90ZXN0IChjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3ksIGludCBleHRlbnNp
b25faGVhZGVyLCBpbnQgbWtpX2luZGV4KQogICAgICAqLwogICAgIGlmIChwb2xpY3ktPnNzcmMu
dHlwZSAhPSBzc3JjX3NwZWNpZmljKSB7CiAgICAgICAgIHNzcmMgPSAweGRlY2FmYmFkOwotICAg
IH0gZWxzZXsKKyAgICB9IGVsc2UgewogICAgICAgICBzc3JjID0gcG9saWN5LT5zc3JjLnZhbHVl
OwogICAgIH0KICAgICBtc2dfbGVuX29jdGV0cyA9IDI4OwogICAgIGlmIChleHRlbnNpb25faGVh
ZGVyKSB7Ci0gICAgICAgIGhkciA9IHNydHBfY3JlYXRlX3Rlc3RfcGFja2V0X2V4dF9oZHIobXNn
X2xlbl9vY3RldHMsIHNzcmMpOwotICAgICAgICBoZHIyID0gc3J0cF9jcmVhdGVfdGVzdF9wYWNr
ZXRfZXh0X2hkcihtc2dfbGVuX29jdGV0cywgc3NyYyk7CisgICAgICAgIGhkciA9IHNydHBfY3Jl
YXRlX3Rlc3RfcGFja2V0X2V4dF9oZHIobXNnX2xlbl9vY3RldHMsIHNzcmMsICZsZW4pOworICAg
ICAgICBoZHIyID0gc3J0cF9jcmVhdGVfdGVzdF9wYWNrZXRfZXh0X2hkcihtc2dfbGVuX29jdGV0
cywgc3NyYywgJmxlbjIpOwogICAgIH0gZWxzZSB7Ci0gICAgICAgIGhkciA9IHNydHBfY3JlYXRl
X3Rlc3RfcGFja2V0KG1zZ19sZW5fb2N0ZXRzLCBzc3JjKTsKLSAgICAgICAgaGRyMiA9IHNydHBf
Y3JlYXRlX3Rlc3RfcGFja2V0KG1zZ19sZW5fb2N0ZXRzLCBzc3JjKTsKKyAgICAgICAgaGRyID0g
c3J0cF9jcmVhdGVfdGVzdF9wYWNrZXQobXNnX2xlbl9vY3RldHMsIHNzcmMsICZsZW4pOworICAg
ICAgICBoZHIyID0gc3J0cF9jcmVhdGVfdGVzdF9wYWNrZXQobXNnX2xlbl9vY3RldHMsIHNzcmMs
ICZsZW4yKTsKICAgICB9CiAKKyAgICAvKiBzYXZlIG9yaWdpbmFsIG1zZyBsZW4gKi8KKyAgICBt
c2dfbGVuID0gbGVuOworCiAgICAgaWYgKGhkciA9PSBOVUxMKSB7CiAgICAgICAgIGZyZWUoaGRy
Mik7CiAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYWxsb2NfZmFpbDsKQEAgLTEwNTIs
MTggKzEwNTAsMTIgQEAgc3J0cF90ZXN0IChjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3ksIGlu
dCBleHRlbnNpb25faGVhZGVyLCBpbnQgbWtpX2luZGV4KQogICAgICAgICByZXR1cm4gc3J0cF9l
cnJfc3RhdHVzX2FsbG9jX2ZhaWw7CiAgICAgfQogCi0gICAgLyogc2V0IG1lc3NhZ2UgbGVuZ3Ro
ICovCi0gICAgbGVuID0gbXNnX2xlbl9vY3RldHM7Ci0gICAgaWYgKGV4dGVuc2lvbl9oZWFkZXIp
IHsKLSAgICAgICAgbGVuICs9IDEyOwotICAgIH0KLQogICAgIGRlYnVnX3ByaW50KG1vZF9kcml2
ZXIsICJiZWZvcmUgcHJvdGVjdGlvbjpcbiVzIiwKICAgICAgICAgICAgICAgICBzcnRwX3BhY2tl
dF90b19zdHJpbmcoaGRyLCBsZW4pKTsKIAogI2lmIFBSSU5UX1JFRkVSRU5DRV9QQUNLRVQKICAg
ICBkZWJ1Z19wcmludChtb2RfZHJpdmVyLCAicmVmZXJlbmNlIHBhY2tldCBiZWZvcmUgcHJvdGVj
dGlvbjpcbiVzIiwKLSAgICAgICAgICAgICAgICBvY3RldF9zdHJpbmdfaGV4X3N0cmluZygodWlu
dDhfdCopaGRyLCBsZW4pKTsKKyAgICAgICAgICAgICAgICBvY3RldF9zdHJpbmdfaGV4X3N0cmlu
ZygodWludDhfdCAqKWhkciwgbGVuKSk7CiAjZW5kaWYKICAgICBlcnJfY2hlY2soc3J0cF90ZXN0
X2NhbGxfcHJvdGVjdChzcnRwX3NlbmRlciwgaGRyLCAmbGVuLCBta2lfaW5kZXgpKTsKIApAQCAt
MTA3MSw3ICsxMDYzLDcgQEAgc3J0cF90ZXN0IChjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3ks
IGludCBleHRlbnNpb25faGVhZGVyLCBpbnQgbWtpX2luZGV4KQogICAgICAgICAgICAgICAgIHNy
dHBfcGFja2V0X3RvX3N0cmluZyhoZHIsIGxlbikpOwogI2lmIFBSSU5UX1JFRkVSRU5DRV9QQUNL
RVQKICAgICBkZWJ1Z19wcmludChtb2RfZHJpdmVyLCAiYWZ0ZXIgcHJvdGVjdGlvbjpcbiVzIiwK
LSAgICAgICAgICAgICAgICBvY3RldF9zdHJpbmdfaGV4X3N0cmluZygodWludDhfdCopaGRyLCBs
ZW4pKTsKKyAgICAgICAgICAgICAgICBvY3RldF9zdHJpbmdfaGV4X3N0cmluZygodWludDhfdCAq
KWhkciwgbGVuKSk7CiAjZW5kaWYKIAogICAgIC8qIHNhdmUgcHJvdGVjdGVkIG1lc3NhZ2UgYW5k
IGxlbmd0aCAqLwpAQCAtMTA4NSwxNiArMTA3NywxNCBAQCBzcnRwX3Rlc3QgKGNvbnN0IHNydHBf
cG9saWN5X3QgKnBvbGljeSwgaW50IGV4dGVuc2lvbl9oZWFkZXIsIGludCBta2lfaW5kZXgpCiAg
ICAgICogZGF0YSBmb2xsb3dpbmcgdGhlIHBhY2tldCBpcyBkaWZmZXJlbnQsIHRoZW4gd2Uga25v
dyB0aGF0IHRoZQogICAgICAqIHByb3RlY3QgZnVuY3Rpb24gaXMgb3ZlcndyaXRpbmcgdGhlIGVu
ZCBvZiB0aGUgcGFja2V0LgogICAgICAqLwotICAgIHBrdF9lbmQgPSAodWludDhfdCopaGRyICsg
c2l6ZW9mKHNydHBfaGRyX3QpCi0gICAgICAgICAgICAgICsgbXNnX2xlbl9vY3RldHMgKyB0YWdf
bGVuZ3RoOwotICAgIGlmIChleHRlbnNpb25faGVhZGVyKSB7Ci0gICAgICAgIHBrdF9lbmQgKz0g
MTI7Ci0gICAgfQorICAgIGVycl9jaGVjayhzcnRwX2dldF9wcm90ZWN0X3RyYWlsZXJfbGVuZ3Ro
KHNydHBfc2VuZGVyLCB1c2VfbWtpLCBta2lfaW5kZXgsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgJnRhZ19sZW5ndGgpKTsKKyAgICBwa3RfZW5kID0gKHVp
bnQ4X3QgKiloZHIgKyBtc2dfbGVuICsgdGFnX2xlbmd0aDsKICAgICBmb3IgKGkgPSAwOyBpIDwg
NDsgaSsrKSB7CiAgICAgICAgIGlmIChwa3RfZW5kW2ldICE9IDB4ZmYpIHsKICAgICAgICAgICAg
IGZwcmludGYoc3Rkb3V0LCAib3ZlcndyaXRlIGluIHNydHBfcHJvdGVjdCgpIGZ1bmN0aW9uICIK
LSAgICAgICAgICAgICAgICAgICAgIihleHBlY3RlZCAleCwgZm91bmQgJXggaW4gdHJhaWxpbmcg
b2N0ZXQgJWQpXG4iLAotICAgICAgICAgICAgICAgICAgICAweGZmLCAoKHVpbnQ4X3QqKWhkcilb
aV0sIGkpOworICAgICAgICAgICAgICAgICAgICAgICAgICAgICIoZXhwZWN0ZWQgJXgsIGZvdW5k
ICV4IGluIHRyYWlsaW5nIG9jdGV0ICVkKVxuIiwKKyAgICAgICAgICAgICAgICAgICAgMHhmZiwg
KCh1aW50OF90ICopaGRyKVtpXSwgaSk7CiAgICAgICAgICAgICBmcmVlKGhkcik7CiAgICAgICAg
ICAgICBmcmVlKGhkcjIpOwogICAgICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19hbGdv
X2ZhaWw7CkBAIC0xMTE0LDcgKzExMDQsNyBAQCBzcnRwX3Rlc3QgKGNvbnN0IHNydHBfcG9saWN5
X3QgKnBvbGljeSwgaW50IGV4dGVuc2lvbl9oZWFkZXIsIGludCBta2lfaW5kZXgpCiAgICAgICAg
IHByaW50ZigidGVzdGluZyB0aGF0IGNpcGhlcnRleHQgaXMgZGlzdGluY3QgZnJvbSBwbGFpbnRl
eHQuLi4iKTsKICAgICAgICAgc3RhdHVzID0gc3J0cF9lcnJfc3RhdHVzX2FsZ29fZmFpbDsKICAg
ICAgICAgZm9yIChpID0gMTI7IGkgPCBtc2dfbGVuX29jdGV0cyArIDEyOyBpKyspIHsKLSAgICAg
ICAgICAgIGlmICgoKHVpbnQ4X3QqKWhkcilbaV0gIT0gKCh1aW50OF90KiloZHIyKVtpXSkgewor
ICAgICAgICAgICAgaWYgKCgodWludDhfdCAqKWhkcilbaV0gIT0gKCh1aW50OF90ICopaGRyMilb
aV0pIHsKICAgICAgICAgICAgICAgICBzdGF0dXMgPSBzcnRwX2Vycl9zdGF0dXNfb2s7CiAgICAg
ICAgICAgICB9CiAgICAgICAgIH0KQEAgLTExMzQsNyArMTEyNCw3IEBAIHNydHBfdGVzdCAoY29u
c3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5LCBpbnQgZXh0ZW5zaW9uX2hlYWRlciwgaW50IG1raV9p
bmRleCkKICAgICAgKiB3ZSBhbHdheXMgY29weSB0aGUgcG9saWN5IGludG8gdGhlIHJjdnJfcG9s
aWN5LCBzaW5jZSBvdGhlcndpc2UKICAgICAgKiB0aGUgY29tcGlsZXIgd291bGQgZnJldCBhYm91
dCB0aGUgY29uc3RuZXNzIG9mIHRoZSBwb2xpY3kKICAgICAgKi8KLSAgICByY3ZyX3BvbGljeSA9
IChzcnRwX3BvbGljeV90KiltYWxsb2Moc2l6ZW9mKHNydHBfcG9saWN5X3QpKTsKKyAgICByY3Zy
X3BvbGljeSA9IChzcnRwX3BvbGljeV90ICopbWFsbG9jKHNpemVvZihzcnRwX3BvbGljeV90KSk7
CiAgICAgaWYgKHJjdnJfcG9saWN5ID09IE5VTEwpIHsKICAgICAgICAgZnJlZShoZHIpOwogICAg
ICAgICBmcmVlKGhkcjIpOwpAQCAtMTE2MCw4ICsxMTUwLDggQEAgc3J0cF90ZXN0IChjb25zdCBz
cnRwX3BvbGljeV90ICpwb2xpY3ksIGludCBleHRlbnNpb25faGVhZGVyLCBpbnQgbWtpX2luZGV4
KQogICAgICAgICAgICAgICAgIHNydHBfcGFja2V0X3RvX3N0cmluZyhoZHIsIGxlbikpOwogCiAg
ICAgLyogdmVyaWZ5IHRoYXQgdGhlIHVucHJvdGVjdGVkIHBhY2tldCBtYXRjaGVzIHRoZSBvcmln
aWFsIG9uZSAqLwotICAgIGZvciAoaSA9IDA7IGkgPCBtc2dfbGVuX29jdGV0czsgaSsrKSB7Ci0g
ICAgICAgIGlmICgoKHVpbnQ4X3QqKWhkcilbaV0gIT0gKCh1aW50OF90KiloZHIyKVtpXSkgewor
ICAgIGZvciAoaSA9IDA7IGkgPCBsZW47IGkrKykgeworICAgICAgICBpZiAoKCh1aW50OF90ICop
aGRyKVtpXSAhPSAoKHVpbnQ4X3QgKiloZHIyKVtpXSkgewogICAgICAgICAgICAgZnByaW50Zihz
dGRvdXQsICJtaXNtYXRjaCBhdCBvY3RldCAlZFxuIiwgaSk7CiAgICAgICAgICAgICBzdGF0dXMg
PSBzcnRwX2Vycl9zdGF0dXNfYWxnb19mYWlsOwogICAgICAgICB9CkBAIC0xMTc3LDE1ICsxMTY3
LDEzIEBAIHNydHBfdGVzdCAoY29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5LCBpbnQgZXh0ZW5z
aW9uX2hlYWRlciwgaW50IG1raV9pbmRleCkKICAgICAgKiBpZiB0aGUgcG9saWN5IGluY2x1ZGVz
IGF1dGhlbnRpY2F0aW9uLCB0aGVuIHRlc3QgZm9yIGZhbHNlIHBvc2l0aXZlcwogICAgICAqLwog
ICAgIGlmIChwb2xpY3ktPnJ0cC5zZWNfc2VydiAmIHNlY19zZXJ2X2F1dGgpIHsKLSAgICAgICAg
Y2hhciAqZGF0YSA9ICgoY2hhciopaGRyKSArIDEyOworICAgICAgICBjaGFyICpkYXRhID0gKChj
aGFyICopaGRyKSArIChleHRlbnNpb25faGVhZGVyID8gMjQgOiAxMik7CiAKICAgICAgICAgcHJp
bnRmKCJ0ZXN0aW5nIGZvciBmYWxzZSBwb3NpdGl2ZXMgaW4gcmVwbGF5IGNoZWNrLi4uIik7CiAK
LSAgICAgICAgLyogc2V0IG1lc3NhZ2UgbGVuZ3RoICovCi0gICAgICAgIGxlbiA9IG1zZ19sZW5f
ZW5jOwotCiAgICAgICAgIC8qIHVucHJvdGVjdCBhIHNlY29uZCB0aW1lIC0gc2hvdWxkIGZhaWwg
d2l0aCBhIHJlcGxheSBlcnJvciAqLwotICAgICAgICBzdGF0dXMgPSBzcnRwX3Rlc3RfY2FsbF91
bnByb3RlY3Qoc3J0cF9yY3ZyLCBoZHIsICZsZW4sIHVzZV9ta2kpOworICAgICAgICBzdGF0dXMg
PQorICAgICAgICAgICAgc3J0cF90ZXN0X2NhbGxfdW5wcm90ZWN0KHNydHBfcmN2ciwgaGRyLCAm
bXNnX2xlbl9lbmMsIHVzZV9ta2kpOwogICAgICAgICBpZiAoc3RhdHVzICE9IHNydHBfZXJyX3N0
YXR1c19yZXBsYXlfZmFpbCkgewogICAgICAgICAgICAgcHJpbnRmKCJmYWlsZWQgd2l0aCBlcnJv
ciBjb2RlICVkXG4iLCBzdGF0dXMpOwogICAgICAgICAgICAgZnJlZShoZHIpOwpAQCAtMTIwMSwx
NyArMTE4OSwxMSBAQCBzcnRwX3Rlc3QgKGNvbnN0IHNydHBfcG9saWN5X3QgKnBvbGljeSwgaW50
IGV4dGVuc2lvbl9oZWFkZXIsIGludCBta2lfaW5kZXgpCiAgICAgICAgIC8qIGluY3JlbWVudCBz
ZXF1ZW5jZSBudW1iZXIgaW4gaGVhZGVyICovCiAgICAgICAgIGhkci0+c2VxKys7CiAKLSAgICAg
ICAgLyogc2V0IG1lc3NhZ2UgbGVuZ3RoICovCi0gICAgICAgIGxlbiA9IG1zZ19sZW5fb2N0ZXRz
OwotICAgICAgICBpZiAoZXh0ZW5zaW9uX2hlYWRlcikgewotICAgICAgICAgICAgbGVuICs9IDEy
OwotICAgICAgICB9Ci0KICAgICAgICAgLyogYXBwbHkgcHJvdGVjdGlvbiAqLwogICAgICAgICBl
cnJfY2hlY2soc3J0cF90ZXN0X2NhbGxfcHJvdGVjdChzcnRwX3NlbmRlciwgaGRyLCAmbGVuLCBt
a2lfaW5kZXgpKTsKIAogICAgICAgICAvKiBmbGlwIGJpdHMgaW4gcGFja2V0ICovCi0gICAgICAg
IGRhdGFbZXh0ZW5zaW9uX2hlYWRlciA/IDEyIDogMF0gXj0gMHhmZjsKKyAgICAgICAgZGF0YVsw
XSBePSAweGZmOwogCiAgICAgICAgIC8qIHVucHJvdGVjdCwgYW5kIGNoZWNrIGZvciBhdXRoZW50
aWNhdGlvbiBmYWlsdXJlICovCiAgICAgICAgIHN0YXR1cyA9IHNydHBfdGVzdF9jYWxsX3VucHJv
dGVjdChzcnRwX3JjdnIsIGhkciwgJmxlbiwgdXNlX21raSk7CkBAIC0xMjI0LDcgKzEyMDYsNiBA
QCBzcnRwX3Rlc3QgKGNvbnN0IHNydHBfcG9saWN5X3QgKnBvbGljeSwgaW50IGV4dGVuc2lvbl9o
ZWFkZXIsIGludCBta2lfaW5kZXgpCiAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICBwcmlu
dGYoInBhc3NlZFxuIik7CiAgICAgICAgIH0KLQogICAgIH0KIAogICAgIGVycl9jaGVjayhzcnRw
X2RlYWxsb2Moc3J0cF9zZW5kZXIpKTsKQEAgLTEyMzYsOSArMTIxNyw3IEBAIHNydHBfdGVzdCAo
Y29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5LCBpbnQgZXh0ZW5zaW9uX2hlYWRlciwgaW50IG1r
aV9pbmRleCkKICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQogCi0KLXNydHBfZXJy
X3N0YXR1c190Ci1zcnRjcF90ZXN0IChjb25zdCBzcnRwX3BvbGljeV90ICpwb2xpY3ksIGludCBt
a2lfaW5kZXgpCitzcnRwX2Vycl9zdGF0dXNfdCBzcnRjcF90ZXN0KGNvbnN0IHNydHBfcG9saWN5
X3QgKnBvbGljeSwgaW50IG1raV9pbmRleCkKIHsKICAgICBpbnQgaTsKICAgICBzcnRwX3Qgc3J0
Y3Bfc2VuZGVyOwpAQCAtMTI0Nyw5ICsxMjI2LDkgQEAgc3J0Y3BfdGVzdCAoY29uc3Qgc3J0cF9w
b2xpY3lfdCAqcG9saWN5LCBpbnQgbWtpX2luZGV4KQogICAgIHNydHBfaGRyX3QgKmhkciwgKmhk
cjI7CiAgICAgdWludDhfdCBoZHJfZW5jWzY0XTsKICAgICB1aW50OF90ICpwa3RfZW5kOwotICAg
IGludCBtc2dfbGVuX29jdGV0cywgbXNnX2xlbl9lbmM7Ci0gICAgaW50IGxlbjsKLSAgICBpbnQg
dGFnX2xlbmd0aCA9IHBvbGljeS0+cnRwLmF1dGhfdGFnX2xlbjsKKyAgICBpbnQgbXNnX2xlbl9v
Y3RldHMsIG1zZ19sZW5fZW5jLCBtc2dfbGVuOworICAgIGludCBsZW4sIGxlbjI7CisgICAgdWlu
dDMyX3QgdGFnX2xlbmd0aDsKICAgICB1aW50MzJfdCBzc3JjOwogICAgIHNydHBfcG9saWN5X3Qg
KnJjdnJfcG9saWN5OwogICAgIGludCB1c2VfbWtpID0gMDsKQEAgLTEyNjksMzAgKzEyNDgsMjkg
QEAgc3J0Y3BfdGVzdCAoY29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5LCBpbnQgbWtpX2luZGV4
KQogICAgICAqLwogICAgIGlmIChwb2xpY3ktPnNzcmMudHlwZSAhPSBzc3JjX3NwZWNpZmljKSB7
CiAgICAgICAgIHNzcmMgPSAweGRlY2FmYmFkOwotICAgIH0gZWxzZXsKKyAgICB9IGVsc2Ugewog
ICAgICAgICBzc3JjID0gcG9saWN5LT5zc3JjLnZhbHVlOwogICAgIH0KICAgICBtc2dfbGVuX29j
dGV0cyA9IDI4OwotICAgIGhkciA9IHNydHBfY3JlYXRlX3Rlc3RfcGFja2V0KG1zZ19sZW5fb2N0
ZXRzLCBzc3JjKTsKKyAgICBoZHIgPSBzcnRwX2NyZWF0ZV90ZXN0X3BhY2tldChtc2dfbGVuX29j
dGV0cywgc3NyYywgJmxlbik7CisgICAgLyogc2F2ZSBtZXNzYWdlIGxlbiAqLworICAgIG1zZ19s
ZW4gPSBsZW47CiAKICAgICBpZiAoaGRyID09IE5VTEwpIHsKICAgICAgICAgcmV0dXJuIHNydHBf
ZXJyX3N0YXR1c19hbGxvY19mYWlsOwogICAgIH0KLSAgICBoZHIyID0gc3J0cF9jcmVhdGVfdGVz
dF9wYWNrZXQobXNnX2xlbl9vY3RldHMsIHNzcmMpOworICAgIGhkcjIgPSBzcnRwX2NyZWF0ZV90
ZXN0X3BhY2tldChtc2dfbGVuX29jdGV0cywgc3NyYywgJmxlbjIpOwogICAgIGlmIChoZHIyID09
IE5VTEwpIHsKICAgICAgICAgZnJlZShoZHIpOwogICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3Rh
dHVzX2FsbG9jX2ZhaWw7CiAgICAgfQogCi0gICAgLyogc2V0IG1lc3NhZ2UgbGVuZ3RoICovCi0g
ICAgbGVuID0gbXNnX2xlbl9vY3RldHM7Ci0KICAgICBkZWJ1Z19wcmludChtb2RfZHJpdmVyLCAi
YmVmb3JlIHByb3RlY3Rpb246XG4lcyIsCiAgICAgICAgICAgICAgICAgc3J0cF9wYWNrZXRfdG9f
c3RyaW5nKGhkciwgbGVuKSk7CiAKICNpZiBQUklOVF9SRUZFUkVOQ0VfUEFDS0VUCiAgICAgZGVi
dWdfcHJpbnQobW9kX2RyaXZlciwgInJlZmVyZW5jZSBwYWNrZXQgYmVmb3JlIHByb3RlY3Rpb246
XG4lcyIsCi0gICAgICAgICAgICAgICAgb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcoKHVpbnQ4X3Qq
KWhkciwgbGVuKSk7CisgICAgICAgICAgICAgICAgb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcoKHVp
bnQ4X3QgKiloZHIsIGxlbikpOwogI2VuZGlmCiAgICAgZXJyX2NoZWNrKHNydHBfdGVzdF9jYWxs
X3Byb3RlY3RfcnRjcChzcnRjcF9zZW5kZXIsIGhkciwgJmxlbiwgbWtpX2luZGV4KSk7CiAKQEAg
LTEzMDAsNyArMTI3OCw3IEBAIHNydGNwX3Rlc3QgKGNvbnN0IHNydHBfcG9saWN5X3QgKnBvbGlj
eSwgaW50IG1raV9pbmRleCkKICAgICAgICAgICAgICAgICBzcnRwX3BhY2tldF90b19zdHJpbmco
aGRyLCBsZW4pKTsKICNpZiBQUklOVF9SRUZFUkVOQ0VfUEFDS0VUCiAgICAgZGVidWdfcHJpbnQo
bW9kX2RyaXZlciwgImFmdGVyIHByb3RlY3Rpb246XG4lcyIsCi0gICAgICAgICAgICAgICAgb2N0
ZXRfc3RyaW5nX2hleF9zdHJpbmcoKHVpbnQ4X3QqKWhkciwgbGVuKSk7CisgICAgICAgICAgICAg
ICAgb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcoKHVpbnQ4X3QgKiloZHIsIGxlbikpOwogI2VuZGlm
CiAKICAgICAvKiBzYXZlIHByb3RlY3RlZCBtZXNzYWdlIGFuZCBsZW5ndGggKi8KQEAgLTEzMTQs
MTMgKzEyOTIsMTQgQEAgc3J0Y3BfdGVzdCAoY29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5LCBp
bnQgbWtpX2luZGV4KQogICAgICAqIGRhdGEgZm9sbG93aW5nIHRoZSBwYWNrZXQgaXMgZGlmZmVy
ZW50LCB0aGVuIHdlIGtub3cgdGhhdCB0aGUKICAgICAgKiBwcm90ZWN0IGZ1bmN0aW9uIGlzIG92
ZXJ3cml0aW5nIHRoZSBlbmQgb2YgdGhlIHBhY2tldC4KICAgICAgKi8KLSAgICBwa3RfZW5kID0g
KHVpbnQ4X3QqKWhkciArIHNpemVvZihzcnRwX2hkcl90KQotICAgICAgICAgICAgICArIG1zZ19s
ZW5fb2N0ZXRzICsgdGFnX2xlbmd0aDsKKyAgICBzcnRwX2dldF9wcm90ZWN0X3J0Y3BfdHJhaWxl
cl9sZW5ndGgoc3J0Y3Bfc2VuZGVyLCB1c2VfbWtpLCBta2lfaW5kZXgsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICZ0YWdfbGVuZ3RoKTsKKyAgICBwa3RfZW5kID0g
KHVpbnQ4X3QgKiloZHIgKyBtc2dfbGVuICsgdGFnX2xlbmd0aDsKICAgICBmb3IgKGkgPSAwOyBp
IDwgNDsgaSsrKSB7CiAgICAgICAgIGlmIChwa3RfZW5kW2ldICE9IDB4ZmYpIHsKICAgICAgICAg
ICAgIGZwcmludGYoc3Rkb3V0LCAib3ZlcndyaXRlIGluIHNydHBfcHJvdGVjdF9ydGNwKCkgZnVu
Y3Rpb24gIgotICAgICAgICAgICAgICAgICAgICAiKGV4cGVjdGVkICV4LCBmb3VuZCAleCBpbiB0
cmFpbGluZyBvY3RldCAlZClcbiIsCi0gICAgICAgICAgICAgICAgICAgIDB4ZmYsICgodWludDhf
dCopaGRyKVtpXSwgaSk7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIihleHBlY3RlZCAl
eCwgZm91bmQgJXggaW4gdHJhaWxpbmcgb2N0ZXQgJWQpXG4iLAorICAgICAgICAgICAgICAgICAg
ICAweGZmLCAoKHVpbnQ4X3QgKiloZHIpW2ldLCBpKTsKICAgICAgICAgICAgIGZyZWUoaGRyKTsK
ICAgICAgICAgICAgIGZyZWUoaGRyMik7CiAgICAgICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3Rh
dHVzX2FsZ29fZmFpbDsKQEAgLTEzMzYsMTEgKzEzMTUsMTEgQEAgc3J0Y3BfdGVzdCAoY29uc3Qg
c3J0cF9wb2xpY3lfdCAqcG9saWN5LCBpbnQgbWtpX2luZGV4KQogICAgICAqIHJlYXNvbiwgd2Ug
c2tpcCB0aGlzIGNoZWNrIGlmIHRoZSBwbGFpbnRleHQgaXMgbGVzcyB0aGFuIGZvdXIKICAgICAg
KiBvY3RldHMgbG9uZy4KICAgICAgKi8KLSAgICBpZiAoKHBvbGljeS0+cnRwLnNlY19zZXJ2ICYg
c2VjX3NlcnZfY29uZikgJiYgKG1zZ19sZW5fb2N0ZXRzID49IDQpKSB7CisgICAgaWYgKChwb2xp
Y3ktPnJ0Y3Auc2VjX3NlcnYgJiBzZWNfc2Vydl9jb25mKSAmJiAobXNnX2xlbl9vY3RldHMgPj0g
NCkpIHsKICAgICAgICAgcHJpbnRmKCJ0ZXN0aW5nIHRoYXQgY2lwaGVydGV4dCBpcyBkaXN0aW5j
dCBmcm9tIHBsYWludGV4dC4uLiIpOwogICAgICAgICBzdGF0dXMgPSBzcnRwX2Vycl9zdGF0dXNf
YWxnb19mYWlsOwogICAgICAgICBmb3IgKGkgPSAxMjsgaSA8IG1zZ19sZW5fb2N0ZXRzICsgMTI7
IGkrKykgewotICAgICAgICAgICAgaWYgKCgodWludDhfdCopaGRyKVtpXSAhPSAoKHVpbnQ4X3Qq
KWhkcjIpW2ldKSB7CisgICAgICAgICAgICBpZiAoKCh1aW50OF90ICopaGRyKVtpXSAhPSAoKHVp
bnQ4X3QgKiloZHIyKVtpXSkgewogICAgICAgICAgICAgICAgIHN0YXR1cyA9IHNydHBfZXJyX3N0
YXR1c19vazsKICAgICAgICAgICAgIH0KICAgICAgICAgfQpAQCAtMTM2MCw3ICsxMzM5LDcgQEAg
c3J0Y3BfdGVzdCAoY29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5LCBpbnQgbWtpX2luZGV4KQog
ICAgICAqIHdlIGFsd2F5cyBjb3B5IHRoZSBwb2xpY3kgaW50byB0aGUgcmN2cl9wb2xpY3ksIHNp
bmNlIG90aGVyd2lzZQogICAgICAqIHRoZSBjb21waWxlciB3b3VsZCBmcmV0IGFib3V0IHRoZSBj
b25zdG5lc3Mgb2YgdGhlIHBvbGljeQogICAgICAqLwotICAgIHJjdnJfcG9saWN5ID0gKHNydHBf
cG9saWN5X3QqKW1hbGxvYyhzaXplb2Yoc3J0cF9wb2xpY3lfdCkpOworICAgIHJjdnJfcG9saWN5
ID0gKHNydHBfcG9saWN5X3QgKiltYWxsb2Moc2l6ZW9mKHNydHBfcG9saWN5X3QpKTsKICAgICBp
ZiAocmN2cl9wb2xpY3kgPT0gTlVMTCkgewogICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVz
X2FsbG9jX2ZhaWw7CiAgICAgfQpAQCAtMTM3Nyw4ICsxMzU2LDggQEAgc3J0Y3BfdGVzdCAoY29u
c3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5LCBpbnQgbWtpX2luZGV4KQogICAgICAgICAgICAgICAg
IHNydHBfcGFja2V0X3RvX3N0cmluZyhoZHIsIGxlbikpOwogCiAgICAgLyogdmVyaWZ5IHRoYXQg
dGhlIHVucHJvdGVjdGVkIHBhY2tldCBtYXRjaGVzIHRoZSBvcmlnaWFsIG9uZSAqLwotICAgIGZv
ciAoaSA9IDA7IGkgPCBtc2dfbGVuX29jdGV0czsgaSsrKSB7Ci0gICAgICAgIGlmICgoKHVpbnQ4
X3QqKWhkcilbaV0gIT0gKCh1aW50OF90KiloZHIyKVtpXSkgeworICAgIGZvciAoaSA9IDA7IGkg
PCBsZW47IGkrKykgeworICAgICAgICBpZiAoKCh1aW50OF90ICopaGRyKVtpXSAhPSAoKHVpbnQ4
X3QgKiloZHIyKVtpXSkgewogICAgICAgICAgICAgZnByaW50ZihzdGRvdXQsICJtaXNtYXRjaCBh
dCBvY3RldCAlZFxuIiwgaSk7CiAgICAgICAgICAgICBzdGF0dXMgPSBzcnRwX2Vycl9zdGF0dXNf
YWxnb19mYWlsOwogICAgICAgICB9CkBAIC0xMzk0LDE1ICsxMzczLDEzIEBAIHNydGNwX3Rlc3Qg
KGNvbnN0IHNydHBfcG9saWN5X3QgKnBvbGljeSwgaW50IG1raV9pbmRleCkKICAgICAgKiBpZiB0
aGUgcG9saWN5IGluY2x1ZGVzIGF1dGhlbnRpY2F0aW9uLCB0aGVuIHRlc3QgZm9yIGZhbHNlIHBv
c2l0aXZlcwogICAgICAqLwogICAgIGlmIChwb2xpY3ktPnJ0cC5zZWNfc2VydiAmIHNlY19zZXJ2
X2F1dGgpIHsKLSAgICAgICAgY2hhciAqZGF0YSA9ICgoY2hhciopaGRyKSArIDEyOworICAgICAg
ICBjaGFyICpkYXRhID0gKChjaGFyICopaGRyKSArIDEyOwogCiAgICAgICAgIHByaW50ZigidGVz
dGluZyBmb3IgZmFsc2UgcG9zaXRpdmVzIGluIHJlcGxheSBjaGVjay4uLiIpOwogCi0gICAgICAg
IC8qIHNldCBtZXNzYWdlIGxlbmd0aCAqLwotICAgICAgICBsZW4gPSBtc2dfbGVuX2VuYzsKLQog
ICAgICAgICAvKiB1bnByb3RlY3QgYSBzZWNvbmQgdGltZSAtIHNob3VsZCBmYWlsIHdpdGggYSBy
ZXBsYXkgZXJyb3IgKi8KLSAgICAgICAgc3RhdHVzID0gc3J0cF90ZXN0X2NhbGxfdW5wcm90ZWN0
X3J0Y3Aoc3J0Y3BfcmN2ciwgaGRyLCAmbGVuLCB1c2VfbWtpKTsKKyAgICAgICAgc3RhdHVzID0g
c3J0cF90ZXN0X2NhbGxfdW5wcm90ZWN0X3J0Y3Aoc3J0Y3BfcmN2ciwgaGRyLCAmbXNnX2xlbl9l
bmMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZV9t
a2kpOwogICAgICAgICBpZiAoc3RhdHVzICE9IHNydHBfZXJyX3N0YXR1c19yZXBsYXlfZmFpbCkg
ewogICAgICAgICAgICAgcHJpbnRmKCJmYWlsZWQgd2l0aCBlcnJvciBjb2RlICVkXG4iLCBzdGF0
dXMpOwogICAgICAgICAgICAgZnJlZShoZHIpOwpAQCAtMTQxOCwxMSArMTM5NSw5IEBAIHNydGNw
X3Rlc3QgKGNvbnN0IHNydHBfcG9saWN5X3QgKnBvbGljeSwgaW50IG1raV9pbmRleCkKICAgICAg
ICAgLyogaW5jcmVtZW50IHNlcXVlbmNlIG51bWJlciBpbiBoZWFkZXIgKi8KICAgICAgICAgaGRy
LT5zZXErKzsKIAotICAgICAgICAvKiBzZXQgbWVzc2FnZSBsZW5ndGggKi8KLSAgICAgICAgbGVu
ID0gbXNnX2xlbl9vY3RldHM7Ci0KICAgICAgICAgLyogYXBwbHkgcHJvdGVjdGlvbiAqLwotICAg
ICAgICBlcnJfY2hlY2soc3J0cF90ZXN0X2NhbGxfcHJvdGVjdF9ydGNwKHNydGNwX3NlbmRlciwg
aGRyLCAmbGVuLCBta2lfaW5kZXgpKTsKKyAgICAgICAgZXJyX2NoZWNrKAorICAgICAgICAgICAg
c3J0cF90ZXN0X2NhbGxfcHJvdGVjdF9ydGNwKHNydGNwX3NlbmRlciwgaGRyLCAmbGVuLCBta2lf
aW5kZXgpKTsKIAogICAgICAgICAvKiBmbGlwIGJpdHMgaW4gcGFja2V0ICovCiAgICAgICAgIGRh
dGFbMF0gXj0gMHhmZjsKQEAgLTE0MzgsNyArMTQxMyw2IEBAIHNydGNwX3Rlc3QgKGNvbnN0IHNy
dHBfcG9saWN5X3QgKnBvbGljeSwgaW50IG1raV9pbmRleCkKICAgICAgICAgfSBlbHNlIHsKICAg
ICAgICAgICAgIHByaW50ZigicGFzc2VkXG4iKTsKICAgICAgICAgfQotCiAgICAgfQogCiAgICAg
ZXJyX2NoZWNrKHNydHBfZGVhbGxvYyhzcnRjcF9zZW5kZXIpKTsKQEAgLTE0NTAsMjEgKzE0MjQs
MTEgQEAgc3J0Y3BfdGVzdCAoY29uc3Qgc3J0cF9wb2xpY3lfdCAqcG9saWN5LCBpbnQgbWtpX2lu
ZGV4KQogICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAKLQotc3J0cF9lcnJfc3Rh
dHVzX3QKLXNydHBfc2Vzc2lvbl9wcmludF9wb2xpY3kgKHNydHBfdCBzcnRwKQorc3J0cF9lcnJf
c3RhdHVzX3Qgc3J0cF9zZXNzaW9uX3ByaW50X3BvbGljeShzcnRwX3Qgc3J0cCkKIHsKLSAgICBj
aGFyICpzZXJ2X2Rlc2NyWzRdID0gewotICAgICAgICAibm9uZSIsCi0gICAgICAgICJjb25maWRl
bnRpYWxpdHkiLAotICAgICAgICAiYXV0aGVudGljYXRpb24iLAotICAgICAgICAiY29uZmlkZW50
aWFsaXR5IGFuZCBhdXRoZW50aWNhdGlvbiIKLSAgICB9OwotICAgIGNoYXIgKmRpcmVjdGlvblsz
XSA9IHsKLSAgICAgICAgInVua25vd24iLAotICAgICAgICAib3V0Ym91bmQiLAotICAgICAgICAi
aW5ib3VuZCIKLSAgICB9OworICAgIGNoYXIgKnNlcnZfZGVzY3JbNF0gPSB7ICJub25lIiwgImNv
bmZpZGVudGlhbGl0eSIsICJhdXRoZW50aWNhdGlvbiIsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgImNvbmZpZGVudGlhbGl0eSBhbmQgYXV0aGVudGljYXRpb24iIH07CisgICAgY2hhciAq
ZGlyZWN0aW9uWzNdID0geyAidW5rbm93biIsICJvdXRib3VuZCIsICJpbmJvdW5kIiB9OwogICAg
IHNydHBfc3RyZWFtX3Qgc3RyZWFtOwogICAgIHNydHBfc2Vzc2lvbl9rZXlzX3QgKnNlc3Npb25f
a2V5cyA9IE5VTEw7CiAKQEAgLTE0OTgsNyArMTQ2Miw3IEBAIHNydHBfc2Vzc2lvbl9wcmludF9w
b2xpY3kgKHNydHBfdCBzcnRwKQogCiAgICAgICAgIHByaW50ZigiIyBFbmNyeXB0ZWQgZXh0ZW5z
aW9uIGhlYWRlcnM6ICIpOwogICAgICAgICBpZiAoc3RyZWFtLT5lbmNfeHRuX2hkciAmJiBzdHJl
YW0tPmVuY194dG5faGRyX2NvdW50ID4gMCkgewotICAgICAgICAgICAgaW50KiBlbmNfeHRuX2hk
ciA9IHN0cmVhbS0+ZW5jX3h0bl9oZHI7CisgICAgICAgICAgICBpbnQgKmVuY194dG5faGRyID0g
c3RyZWFtLT5lbmNfeHRuX2hkcjsKICAgICAgICAgICAgIGludCBjb3VudCA9IHN0cmVhbS0+ZW5j
X3h0bl9oZHJfY291bnQ7CiAgICAgICAgICAgICB3aGlsZSAoY291bnQgPiAwKSB7CiAgICAgICAg
ICAgICAgICAgcHJpbnRmKCIlZCAiLCAqZW5jX3h0bl9oZHIpOwpAQCAtMTUyOCw4ICsxNDkyLDcg
QEAgc3J0cF9zZXNzaW9uX3ByaW50X3BvbGljeSAoc3J0cF90IHNydHApCiAgICAgICAgICAgICAg
ICAiIyBydGNwIHNlcnZpY2VzOiAlc1xyXG4iCiAgICAgICAgICAgICAgICAiIyB3aW5kb3cgc2l6
ZTogICAlbHVcclxuIgogICAgICAgICAgICAgICAgIiMgdHggcnR4IGFsbG93ZWQ6JXNcclxuIiwK
LSAgICAgICAgICAgICAgIHN0cmVhbS0+c3NyYywKLSAgICAgICAgICAgICAgIHNlc3Npb25fa2V5
cy0+cnRwX2NpcGhlci0+dHlwZS0+ZGVzY3JpcHRpb24sCisgICAgICAgICAgICAgICBzdHJlYW0t
PnNzcmMsIHNlc3Npb25fa2V5cy0+cnRwX2NpcGhlci0+dHlwZS0+ZGVzY3JpcHRpb24sCiAgICAg
ICAgICAgICAgICBzZXNzaW9uX2tleXMtPnJ0cF9hdXRoLT50eXBlLT5kZXNjcmlwdGlvbiwKICAg
ICAgICAgICAgICAgIHNlcnZfZGVzY3Jbc3RyZWFtLT5ydHBfc2VydmljZXNdLAogICAgICAgICAg
ICAgICAgc2Vzc2lvbl9rZXlzLT5ydGNwX2NpcGhlci0+dHlwZS0+ZGVzY3JpcHRpb24sCkBAIC0x
NTQwLDcgKzE1MDMsNyBAQCBzcnRwX3Nlc3Npb25fcHJpbnRfcG9saWN5IChzcnRwX3Qgc3J0cCkK
IAogICAgICAgICBwcmludGYoIiMgRW5jcnlwdGVkIGV4dGVuc2lvbiBoZWFkZXJzOiAiKTsKICAg
ICAgICAgaWYgKHN0cmVhbS0+ZW5jX3h0bl9oZHIgJiYgc3RyZWFtLT5lbmNfeHRuX2hkcl9jb3Vu
dCA+IDApIHsKLSAgICAgICAgICAgIGludCogZW5jX3h0bl9oZHIgPSBzdHJlYW0tPmVuY194dG5f
aGRyOworICAgICAgICAgICAgaW50ICplbmNfeHRuX2hkciA9IHN0cmVhbS0+ZW5jX3h0bl9oZHI7
CiAgICAgICAgICAgICBpbnQgY291bnQgPSBzdHJlYW0tPmVuY194dG5faGRyX2NvdW50OwogICAg
ICAgICAgICAgd2hpbGUgKGNvdW50ID4gMCkgewogICAgICAgICAgICAgICAgIHByaW50ZigiJWQg
IiwgKmVuY194dG5faGRyKTsKQEAgLTE1NTgsOCArMTUyMSw3IEBAIHNydHBfc2Vzc2lvbl9wcmlu
dF9wb2xpY3kgKHNydHBfdCBzcnRwKQogICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9
CiAKLXNydHBfZXJyX3N0YXR1c190Ci1zcnRwX3ByaW50X3BvbGljeSAoY29uc3Qgc3J0cF9wb2xp
Y3lfdCAqcG9saWN5KQorc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF9wcmludF9wb2xpY3koY29uc3Qg
c3J0cF9wb2xpY3lfdCAqcG9saWN5KQogewogICAgIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsK
ICAgICBzcnRwX3Qgc2Vzc2lvbjsKQEAgLTE1OTIsMTEgKzE1NTQsMTAgQEAgc3J0cF9wcmludF9w
b2xpY3kgKGNvbnN0IHNydHBfcG9saWN5X3QgKnBvbGljeSkKIAogY2hhciBwYWNrZXRfc3RyaW5n
W01UVV07CiAKLWNoYXIgKgotc3J0cF9wYWNrZXRfdG9fc3RyaW5nIChzcnRwX2hkcl90ICpoZHIs
IGludCBwa3Rfb2N0ZXRfbGVuKQorY2hhciAqc3J0cF9wYWNrZXRfdG9fc3RyaW5nKHNydHBfaGRy
X3QgKmhkciwgaW50IHBrdF9vY3RldF9sZW4pCiB7CiAgICAgaW50IG9jdGV0c19pbl9ydHBfaGVh
ZGVyID0gMTI7Ci0gICAgdWludDhfdCAqZGF0YSA9ICgodWludDhfdCopaGRyKSArIG9jdGV0c19p
bl9ydHBfaGVhZGVyOworICAgIHVpbnQ4X3QgKmRhdGEgPSAoKHVpbnQ4X3QgKiloZHIpICsgb2N0
ZXRzX2luX3J0cF9oZWFkZXI7CiAgICAgaW50IGhleF9sZW4gPSBwa3Rfb2N0ZXRfbGVuIC0gb2N0
ZXRzX2luX3J0cF9oZWFkZXI7CiAKICAgICAvKiBzYW5pdHkgY2hlY2tpbmcgKi8KQEAgLTE2MDUs
MjkgKzE1NjYsMjAgQEAgc3J0cF9wYWNrZXRfdG9fc3RyaW5nIChzcnRwX2hkcl90ICpoZHIsIGlu
dCBwa3Rfb2N0ZXRfbGVuKQogICAgIH0KIAogICAgIC8qIHdyaXRlIHBhY2tldCBpbnRvIHN0cmlu
ZyAqLwotICAgIHNwcmludGYocGFja2V0X3N0cmluZywKLSAgICAgICAgICAgICIocylydHAgcGFj
a2V0OiB7XG4iCi0gICAgICAgICAgICAiICAgdmVyc2lvbjpcdCVkXG4iCi0gICAgICAgICAgICAi
ICAgcDpcdFx0JWRcbiIKLSAgICAgICAgICAgICIgICB4Olx0XHQlZFxuIgotICAgICAgICAgICAg
IiAgIGNjOlx0XHQlZFxuIgotICAgICAgICAgICAgIiAgIG06XHRcdCVkXG4iCi0gICAgICAgICAg
ICAiICAgcHQ6XHRcdCV4XG4iCi0gICAgICAgICAgICAiICAgc2VxOlx0XHQleFxuIgotICAgICAg
ICAgICAgIiAgIHRzOlx0XHQleFxuIgotICAgICAgICAgICAgIiAgIHNzcmM6XHQleFxuIgotICAg
ICAgICAgICAgIiAgIGRhdGE6XHQlc1xuIgotICAgICAgICAgICAgIn0gKCVkIG9jdGV0cyBpbiB0
b3RhbClcbiIsCi0gICAgICAgICAgICBoZHItPnZlcnNpb24sCi0gICAgICAgICAgICBoZHItPnAs
Ci0gICAgICAgICAgICBoZHItPngsCi0gICAgICAgICAgICBoZHItPmNjLAotICAgICAgICAgICAg
aGRyLT5tLAotICAgICAgICAgICAgaGRyLT5wdCwKLSAgICAgICAgICAgIGhkci0+c2VxLAotICAg
ICAgICAgICAgaGRyLT50cywKLSAgICAgICAgICAgIGhkci0+c3NyYywKLSAgICAgICAgICAgIG9j
dGV0X3N0cmluZ19oZXhfc3RyaW5nKGRhdGEsIGhleF9sZW4pLAorICAgIHNwcmludGYocGFja2V0
X3N0cmluZywgIihzKXJ0cCBwYWNrZXQ6IHtcbiIKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICIgICB2ZXJzaW9uOlx0JWRcbiIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICIgICBwOlx0
XHQlZFxuIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIiAgIHg6XHRcdCVkXG4iCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAiICAgY2M6XHRcdCVkXG4iCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAiICAgbTpcdFx0JWRcbiIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICIg
ICBwdDpcdFx0JXhcbiIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICIgICBzZXE6XHRcdCV4
XG4iCisgICAgICAgICAgICAgICAgICAgICAgICAgICAiICAgdHM6XHRcdCV4XG4iCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAiICAgc3NyYzpcdCV4XG4iCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAiICAgZGF0YTpcdCVzXG4iCisgICAgICAgICAgICAgICAgICAgICAgICAgICAifSAo
JWQgb2N0ZXRzIGluIHRvdGFsKVxuIiwKKyAgICAgICAgICAgIGhkci0+dmVyc2lvbiwgaGRyLT5w
LCBoZHItPngsIGhkci0+Y2MsIGhkci0+bSwgaGRyLT5wdCwgaGRyLT5zZXEsCisgICAgICAgICAg
ICBoZHItPnRzLCBoZHItPnNzcmMsIG9jdGV0X3N0cmluZ19oZXhfc3RyaW5nKGRhdGEsIGhleF9s
ZW4pLAogICAgICAgICAgICAgcGt0X29jdGV0X2xlbik7CiAKICAgICByZXR1cm4gcGFja2V0X3N0
cmluZzsKQEAgLTE2NDMsOCArMTU5NSw3IEBAIHNydHBfcGFja2V0X3RvX3N0cmluZyAoc3J0cF9o
ZHJfdCAqaGRyLCBpbnQgcGt0X29jdGV0X2xlbikKICAqIG9wdGltaXplIGF3YXkgdGhlIGZ1bmN0
aW9uCiAgKi8KIAotZG91YmxlCi1taXBzX2VzdGltYXRlIChpbnQgbnVtX3RyaWFscywgaW50ICpp
Z25vcmUpCitkb3VibGUgbWlwc19lc3RpbWF0ZShpbnQgbnVtX3RyaWFscywgaW50ICppZ25vcmUp
CiB7CiAgICAgY2xvY2tfdCB0OwogICAgIHZvbGF0aWxlIGludCBpLCBzdW07CkBAIC0xNjU2LDIz
ICsxNjA3LDIxIEBAIG1pcHNfZXN0aW1hdGUgKGludCBudW1fdHJpYWxzLCBpbnQgKmlnbm9yZSkK
ICAgICB9CiAgICAgdCA9IGNsb2NrKCkgLSB0OwogCi0vKiAgIHByaW50ZigiJWRcbiIsIHN1bSk7
ICovCisgICAgLyogICBwcmludGYoIiVkXG4iLCBzdW0pOyAqLwogICAgICppZ25vcmUgPSBzdW07
CiAKICAgICByZXR1cm4gKGRvdWJsZSludW1fdHJpYWxzICogQ0xPQ0tTX1BFUl9TRUMgLyB0Owog
fQogCi0KIC8qCiAgKiBzcnRwX3ZhbGlkYXRlKCkgdmVyaWZpZXMgdGhlIGNvcnJlY3RuZXNzIG9m
IGxpYnNydHAgYnkgY29tcGFyaW5nCiAgKiBzb21lIGNvbXB1dGVkIHBhY2tldHMgYWdhaW5zdCBz
b21lIHByZS1jb21wdXRlZCByZWZlcmVuY2UgdmFsdWVzLgogICogVGhlc2UgcGFja2V0cyB3ZXJl
IG1hZGUgd2l0aCB0aGUgZGVmYXVsdCBTUlRQIHBvbGljeS4KICAqLwogCi0KLXNydHBfZXJyX3N0
YXR1c190Ci1zcnRwX3ZhbGlkYXRlICgpCitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX3ZhbGlkYXRl
KCkKIHsKKyAgICAvLyBjbGFuZy1mb3JtYXQgb2ZmCiAgICAgdWludDhfdCBzcnRwX3BsYWludGV4
dF9yZWZbMjhdID0gewogICAgICAgICAweDgwLCAweDBmLCAweDEyLCAweDM0LCAweGRlLCAweGNh
LCAweGZiLCAweGFkLAogICAgICAgICAweGNhLCAweGZlLCAweGJhLCAweGJlLCAweGFiLCAweGFi
LCAweGFiLCAweGFiLApAQCAtMTcxMiw2ICsxNjYxLDggQEAgc3J0cF92YWxpZGF0ZSAoKQogICAg
ICAgICAweDgwLCAweDAwLCAweDAwLCAweDAxLCAweDk5LCAweDNlLCAweDA4LCAweGNkLAogICAg
ICAgICAweDU0LCAweGQ2LCAweGMxLCAweDIzLCAweDA3LCAweDk4CiAgICAgfTsKKyAgICAvLyBj
bGFuZy1mb3JtYXQgb24KKwogICAgIHNydHBfdCBzcnRwX3NuZCwgc3J0cF9yZWN2OwogICAgIHNy
dHBfZXJyX3N0YXR1c190IHN0YXR1czsKICAgICBpbnQgbGVuOwpAQCAtMTcyNCw3ICsxNjc1LDcg
QEAgc3J0cF92YWxpZGF0ZSAoKQogICAgIG1lbXNldCgmcG9saWN5LCAwLCBzaXplb2YocG9saWN5
KSk7CiAgICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9ydHBfZGVmYXVsdCgmcG9saWN5LnJ0cCk7
CiAgICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9ydGNwX2RlZmF1bHQoJnBvbGljeS5ydGNwKTsK
LSAgICBwb2xpY3kuc3NyYy50eXBlICA9IHNzcmNfc3BlY2lmaWM7CisgICAgcG9saWN5LnNzcmMu
dHlwZSA9IHNzcmNfc3BlY2lmaWM7CiAgICAgcG9saWN5LnNzcmMudmFsdWUgPSAweGNhZmViYWJl
OwogICAgIHBvbGljeS5rZXkgPSB0ZXN0X2tleTsKICAgICBwb2xpY3kuZWt0ID0gTlVMTDsKQEAg
LTE4MjYsOSArMTc3Nyw5IEBAIHNydHBfdmFsaWRhdGUgKCkKICAqIHNydHBfdmFsaWRhdGVfZ2Nt
KCkgdmVyaWZpZXMgdGhlIGNvcnJlY3RuZXNzIG9mIGxpYnNydHAgYnkgY29tcGFyaW5nCiAgKiBh
biBjb21wdXRlZCBwYWNrZXQgYWdhaW5zdCB0aGUga25vd24gY2lwaGVydGV4dCBmb3IgdGhlIHBs
YWludGV4dC4KICAqLwotc3J0cF9lcnJfc3RhdHVzX3QKLXNydHBfdmFsaWRhdGVfZ2NtICgpCitz
cnRwX2Vycl9zdGF0dXNfdCBzcnRwX3ZhbGlkYXRlX2djbSgpCiB7CisgICAgLy8gY2xhbmctZm9y
bWF0IG9mZgogICAgIHVuc2lnbmVkIGNoYXIgdGVzdF9rZXlfZ2NtWzI4XSA9IHsKICAgICAgICAg
MHgwMCwgMHgwMSwgMHgwMiwgMHgwMywgMHgwNCwgMHgwNSwgMHgwNiwgMHgwNywKICAgICAgICAg
MHgwOCwgMHgwOSwgMHgwYSwgMHgwYiwgMHgwYywgMHgwZCwgMHgwZSwgMHgwZiwKQEAgLTE4Nzgs
NiArMTgyOSw3IEBAIHNydHBfdmFsaWRhdGVfZ2NtICgpCiAgICAgICAgIDB4ZWEsIDB4MzEsIDB4
MTIsIDB4M2IsIDB4YTgsIDB4OGMsIDB4ZTYsIDB4MWUsCiAgICAgICAgIDB4ODAsIDB4MDAsIDB4
MDAsIDB4MDEKICAgICB9OworICAgIC8vIGNsYW5nLWZvcm1hdCBvbgogCiAgICAgc3J0cF90IHNy
dHBfc25kLCBzcnRwX3JlY3Y7CiAgICAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVzOwpAQCAtMTg5
MSw5ICsxODQzLDkgQEAgc3J0cF92YWxpZGF0ZV9nY20gKCkKICAgICBtZW1zZXQoJnBvbGljeSwg
MCwgc2l6ZW9mKHBvbGljeSkpOwogICAgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2djbV8x
MjhfMTZfYXV0aCgmcG9saWN5LnJ0cCk7CiAgICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNf
Z2NtXzEyOF8xNl9hdXRoKCZwb2xpY3kucnRjcCk7Ci0gICAgcG9saWN5LnNzcmMudHlwZSAgPSBz
c3JjX3NwZWNpZmljOworICAgIHBvbGljeS5zc3JjLnR5cGUgPSBzc3JjX3NwZWNpZmljOwogICAg
IHBvbGljeS5zc3JjLnZhbHVlID0gMHhjYWZlYmFiZTsKLSAgICBwb2xpY3kua2V5ICA9IHRlc3Rf
a2V5X2djbTsKKyAgICBwb2xpY3kua2V5ID0gdGVzdF9rZXlfZ2NtOwogICAgIHBvbGljeS5la3Qg
PSBOVUxMOwogICAgIHBvbGljeS53aW5kb3dfc2l6ZSA9IDEyODsKICAgICBwb2xpY3kuYWxsb3df
cmVwZWF0X3R4ID0gMDsKQEAgLTE5OTMsOCArMTk0NSw5IEBAIHNydHBfdmFsaWRhdGVfZ2NtICgp
CiAvKgogICogVGVzdCB2ZWN0b3JzIHRha2VuIGZyb20gUkZDIDY5MDQsIEFwcGVuZGl4IEEKICAq
Lwotc3J0cF9lcnJfc3RhdHVzX3QKLXNydHBfdmFsaWRhdGVfZW5jcnlwdGVkX2V4dGVuc2lvbnNf
aGVhZGVycygpIHsKK3NydHBfZXJyX3N0YXR1c190IHNydHBfdmFsaWRhdGVfZW5jcnlwdGVkX2V4
dGVuc2lvbnNfaGVhZGVycygpCit7CisgICAgLy8gY2xhbmctZm9ybWF0IG9mZgogICAgIHVuc2ln
bmVkIGNoYXIgdGVzdF9rZXlfZXh0X2hlYWRlcnNbMzBdID0gewogICAgICAgICAweGUxLCAweGY5
LCAweDdhLCAweDBkLCAweDNlLCAweDAxLCAweDhiLCAweGUwLAogICAgICAgICAweGQ2LCAweDRm
LCAweGEzLCAweDJjLCAweDA2LCAweGRlLCAweDQxLCAweDM5LApAQCAtMjAzMiwxMSArMTk4NSwx
MyBAQCBzcnRwX3ZhbGlkYXRlX2VuY3J5cHRlZF9leHRlbnNpb25zX2hlYWRlcnMoKSB7CiAgICAg
ICAgIDB4NWEsIDB4NDYsIDB4YjMsIDB4Y2EsIDB4MzUsIDB4YzUsIDB4MzUsIDB4YTgsCiAgICAg
ICAgIDB4OTEsIDB4YzcKICAgICB9OworICAgIC8vIGNsYW5nLWZvcm1hdCBvbgorCiAgICAgc3J0
cF90IHNydHBfc25kLCBzcnRwX3JlY3Y7CiAgICAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVzOwog
ICAgIGludCBsZW47CiAgICAgc3J0cF9wb2xpY3lfdCBwb2xpY3k7Ci0gICAgaW50IGhlYWRlcnNb
M10gPSB7MSwgMywgNH07CisgICAgaW50IGhlYWRlcnNbM10gPSB7IDEsIDMsIDQgfTsKIAogICAg
IC8qCiAgICAgICogY3JlYXRlIGEgc2Vzc2lvbiB3aXRoIGEgc2luZ2xlIHN0cmVhbSB1c2luZyB0
aGUgZGVmYXVsdCBzcnRwCkBAIC0yMDQ1LDcgKzIwMDAsNyBAQCBzcnRwX3ZhbGlkYXRlX2VuY3J5
cHRlZF9leHRlbnNpb25zX2hlYWRlcnMoKSB7CiAgICAgbWVtc2V0KCZwb2xpY3ksIDAsIHNpemVv
Zihwb2xpY3kpKTsKICAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X3J0cF9kZWZhdWx0KCZwb2xp
Y3kucnRwKTsKICAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X3J0Y3BfZGVmYXVsdCgmcG9saWN5
LnJ0Y3ApOwotICAgIHBvbGljeS5zc3JjLnR5cGUgID0gc3NyY19zcGVjaWZpYzsKKyAgICBwb2xp
Y3kuc3NyYy50eXBlID0gc3NyY19zcGVjaWZpYzsKICAgICBwb2xpY3kuc3NyYy52YWx1ZSA9IDB4
Y2FmZWJhYmU7CiAgICAgcG9saWN5LmtleSA9IHRlc3Rfa2V5X2V4dF9oZWFkZXJzOwogICAgIHBv
bGljeS5la3QgPSBOVUxMOwpAQCAtMjEwOCwxNCArMjA2MywxNCBAQCBzcnRwX3ZhbGlkYXRlX2Vu
Y3J5cHRlZF9leHRlbnNpb25zX2hlYWRlcnMoKSB7CiAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1
c19vazsKIH0KIAotCiAjaWZkZWYgT1BFTlNTTAogCiAvKgogICogSGVhZGVycyBvZiB0ZXN0IHZl
Y3RvcnMgdGFrZW4gZnJvbSBSRkMgNjkwNCwgQXBwZW5kaXggQQogICovCi1zcnRwX2Vycl9zdGF0
dXNfdAotc3J0cF92YWxpZGF0ZV9lbmNyeXB0ZWRfZXh0ZW5zaW9uc19oZWFkZXJzX2djbSgpIHsK
K3NydHBfZXJyX3N0YXR1c190IHNydHBfdmFsaWRhdGVfZW5jcnlwdGVkX2V4dGVuc2lvbnNfaGVh
ZGVyc19nY20oKQoreworICAgIC8vIGNsYW5nLWZvcm1hdCBvZmYKICAgICB1bnNpZ25lZCBjaGFy
IHRlc3Rfa2V5X2V4dF9oZWFkZXJzWzMwXSA9IHsKICAgICAgICAgMHhlMSwgMHhmOSwgMHg3YSwg
MHgwZCwgMHgzZSwgMHgwMSwgMHg4YiwgMHhlMCwKICAgICAgICAgMHhkNiwgMHg0ZiwgMHhhMywg
MHgyYywgMHgwNiwgMHhkZSwgMHg0MSwgMHgzOSwKQEAgLTIxNTEsMTEgKzIxMDYsMTMgQEAgc3J0
cF92YWxpZGF0ZV9lbmNyeXB0ZWRfZXh0ZW5zaW9uc19oZWFkZXJzX2djbSgpIHsKICAgICAgICAg
MHg2YywgMHhkMywgMHhkMiwgMHg4OCwgMHhiNCwgMHg5ZiwgMHg2YywgMHhhOSwKICAgICAgICAg
MHhmNCwgMHhiMSwgMHhiNywgMHg1OSwgMHg3MSwgMHg5ZSwgMHhiNSwgMHhiYwogICAgIH07Cisg
ICAgLy8gY2xhbmctZm9ybWF0IG9uCisKICAgICBzcnRwX3Qgc3J0cF9zbmQsIHNydHBfcmVjdjsK
ICAgICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7CiAgICAgaW50IGxlbjsKICAgICBzcnRwX3Bv
bGljeV90IHBvbGljeTsKLSAgICBpbnQgaGVhZGVyc1szXSA9IHsxLCAzLCA0fTsKKyAgICBpbnQg
aGVhZGVyc1szXSA9IHsgMSwgMywgNCB9OwogCiAgICAgLyoKICAgICAgKiBjcmVhdGUgYSBzZXNz
aW9uIHdpdGggYSBzaW5nbGUgc3RyZWFtIHVzaW5nIHRoZSBkZWZhdWx0IHNydHAKQEAgLTIxNjQs
NyArMjEyMSw3IEBAIHNydHBfdmFsaWRhdGVfZW5jcnlwdGVkX2V4dGVuc2lvbnNfaGVhZGVyc19n
Y20oKSB7CiAgICAgbWVtc2V0KCZwb2xpY3ksIDAsIHNpemVvZihwb2xpY3kpKTsKICAgICBzcnRw
X2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21fMTI4XzhfYXV0aCgmcG9saWN5LnJ0cCk7CiAgICAg
c3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfZ2NtXzEyOF84X2F1dGgoJnBvbGljeS5ydGNwKTsK
LSAgICBwb2xpY3kuc3NyYy50eXBlICA9IHNzcmNfc3BlY2lmaWM7CisgICAgcG9saWN5LnNzcmMu
dHlwZSA9IHNzcmNfc3BlY2lmaWM7CiAgICAgcG9saWN5LnNzcmMudmFsdWUgPSAweGNhZmViYWJl
OwogICAgIHBvbGljeS5rZXkgPSB0ZXN0X2tleV9leHRfaGVhZGVyczsKICAgICBwb2xpY3kuZWt0
ID0gTlVMTDsKQEAgLTIyMzQsMTAgKzIxOTEsOSBAQCBzcnRwX3ZhbGlkYXRlX2VuY3J5cHRlZF9l
eHRlbnNpb25zX2hlYWRlcnNfZ2NtKCkgewogICogVGhlc2UgcGFja2V0cyB3ZXJlIG1hZGUgd2l0
aCB0aGUgQUVTLUNNLTI1Ni9ITUFDLVNIQS0xLTgwIHBvbGljeS4KICAqLwogCi0KLXNydHBfZXJy
X3N0YXR1c190Ci1zcnRwX3ZhbGlkYXRlX2Flc18yNTYgKCkKK3NydHBfZXJyX3N0YXR1c190IHNy
dHBfdmFsaWRhdGVfYWVzXzI1NigpCiB7CisgICAgLy8gY2xhbmctZm9ybWF0IG9mZgogICAgIHVu
c2lnbmVkIGNoYXIgYWVzXzI1Nl90ZXN0X2tleVs0Nl0gPSB7CiAgICAgICAgIDB4ZjAsIDB4ZjAs
IDB4NDksIDB4MTQsIDB4YjUsIDB4MTMsIDB4ZjIsIDB4NzYsCiAgICAgICAgIDB4M2EsIDB4MWIs
IDB4MWYsIDB4YTEsIDB4MzAsIDB4ZjEsIDB4MGUsIDB4MjksCkBAIC0yMjY3LDYgKzIyMjMsOCBA
QCBzcnRwX3ZhbGlkYXRlX2Flc18yNTYgKCkKICAgICAgICAgMHhiMCwgMHhiNCwgMHhiNCwgMHgw
ZCwgMHhhMCwgMHg4ZCwgMHg5ZCwgMHg5YSwKICAgICAgICAgMHg1YiwgMHgzYSwgMHg1NSwgMHhk
OCwgMHg4NywgMHgzYgogICAgIH07CisgICAgLy8gY2xhbmctZm9ybWF0IG9uCisKICAgICBzcnRw
X3Qgc3J0cF9zbmQsIHNydHBfcmVjdjsKICAgICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7CiAg
ICAgaW50IGxlbjsKQEAgLTIyNzksNyArMjIzNyw3IEBAIHNydHBfdmFsaWRhdGVfYWVzXzI1NiAo
KQogICAgIG1lbXNldCgmcG9saWN5LCAwLCBzaXplb2YocG9saWN5KSk7CiAgICAgc3J0cF9jcnlw
dG9fcG9saWN5X3NldF9hZXNfY21fMjU2X2htYWNfc2hhMV84MCgmcG9saWN5LnJ0cCk7CiAgICAg
c3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfY21fMjU2X2htYWNfc2hhMV84MCgmcG9saWN5LnJ0
Y3ApOwotICAgIHBvbGljeS5zc3JjLnR5cGUgID0gc3NyY19zcGVjaWZpYzsKKyAgICBwb2xpY3ku
c3NyYy50eXBlID0gc3NyY19zcGVjaWZpYzsKICAgICBwb2xpY3kuc3NyYy52YWx1ZSA9IDB4Y2Fm
ZWJhYmU7CiAgICAgcG9saWN5LmtleSA9IGFlc18yNTZfdGVzdF9rZXk7CiAgICAgcG9saWN5LmVr
dCA9IE5VTEw7CkBAIC0yMzQ1LDkgKzIzMDMsNyBAQCBzcnRwX3ZhbGlkYXRlX2Flc18yNTYgKCkK
ICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQogCi0KLXNydHBfZXJyX3N0YXR1c190
Ci1zcnRwX2NyZWF0ZV9iaWdfcG9saWN5IChzcnRwX3BvbGljeV90ICoqbGlzdCkKK3NydHBfZXJy
X3N0YXR1c190IHNydHBfY3JlYXRlX2JpZ19wb2xpY3koc3J0cF9wb2xpY3lfdCAqKmxpc3QpCiB7
CiAgICAgZXh0ZXJuIGNvbnN0IHNydHBfcG9saWN5X3QgKnBvbGljeV9hcnJheVtdOwogICAgIHNy
dHBfcG9saWN5X3QgKnAsICp0bXA7CkBAIC0yMzY1LDcgKzIzMjEsNyBAQCBzcnRwX2NyZWF0ZV9i
aWdfcG9saWN5IChzcnRwX3BvbGljeV90ICoqbGlzdCkKICAgICAgKi8KICAgICB0bXAgPSBOVUxM
OwogICAgIHdoaWxlIChwb2xpY3lfYXJyYXlbaV0gIT0gTlVMTCkgewotICAgICAgICBwICA9IChz
cnRwX3BvbGljeV90KiltYWxsb2Moc2l6ZW9mKHNydHBfcG9saWN5X3QpKTsKKyAgICAgICAgcCA9
IChzcnRwX3BvbGljeV90ICopbWFsbG9jKHNpemVvZihzcnRwX3BvbGljeV90KSk7CiAgICAgICAg
IGlmIChwID09IE5VTEwpIHsKICAgICAgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYmFk
X3BhcmFtOwogICAgICAgICB9CkBAIC0yMzgxLDggKzIzMzcsNyBAQCBzcnRwX2NyZWF0ZV9iaWdf
cG9saWN5IChzcnRwX3BvbGljeV90ICoqbGlzdCkKICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVz
X29rOwogfQogCi1zcnRwX2Vycl9zdGF0dXNfdAotc3J0cF9kZWFsbG9jX2JpZ19wb2xpY3kgKHNy
dHBfcG9saWN5X3QgKmxpc3QpCitzcnRwX2Vycl9zdGF0dXNfdCBzcnRwX2RlYWxsb2NfYmlnX3Bv
bGljeShzcnRwX3BvbGljeV90ICpsaXN0KQogewogICAgIHNydHBfcG9saWN5X3QgKnAsICpuZXh0
OwogCkBAIC0yMzk0LDggKzIzNDksNyBAQCBzcnRwX2RlYWxsb2NfYmlnX3BvbGljeSAoc3J0cF9w
b2xpY3lfdCAqbGlzdCkKICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQogCi1zcnRw
X2Vycl9zdGF0dXNfdAotc3J0cF90ZXN0X2VtcHR5X3BheWxvYWQoKQorc3J0cF9lcnJfc3RhdHVz
X3Qgc3J0cF90ZXN0X2VtcHR5X3BheWxvYWQoKQogewogICAgIHNydHBfdCBzcnRwX3NuZCwgc3J0
cF9yZWN2OwogICAgIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKQEAgLTI0MTAsNyArMjM2NCw3
IEBAIHNydHBfdGVzdF9lbXB0eV9wYXlsb2FkKCkKICAgICBtZW1zZXQoJnBvbGljeSwgMCwgc2l6
ZW9mKHBvbGljeSkpOwogICAgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfcnRwX2RlZmF1bHQoJnBv
bGljeS5ydHApOwogICAgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfcnRjcF9kZWZhdWx0KCZwb2xp
Y3kucnRjcCk7Ci0gICAgcG9saWN5LnNzcmMudHlwZSAgPSBzc3JjX3NwZWNpZmljOworICAgIHBv
bGljeS5zc3JjLnR5cGUgPSBzc3JjX3NwZWNpZmljOwogICAgIHBvbGljeS5zc3JjLnZhbHVlID0g
MHhjYWZlYmFiZTsKICAgICBwb2xpY3kua2V5ID0gdGVzdF9rZXk7CiAgICAgcG9saWN5LmVrdCA9
IE5VTEw7CkBAIC0yNDIzLDEyICsyMzc3LDExIEBAIHNydHBfdGVzdF9lbXB0eV9wYXlsb2FkKCkK
ICAgICAgICAgcmV0dXJuIHN0YXR1czsKICAgICB9CiAKLSAgICBtZXNnID0gc3J0cF9jcmVhdGVf
dGVzdF9wYWNrZXQoMCwgcG9saWN5LnNzcmMudmFsdWUpOworICAgIG1lc2cgPSBzcnRwX2NyZWF0
ZV90ZXN0X3BhY2tldCgwLCBwb2xpY3kuc3NyYy52YWx1ZSwgJmxlbik7CiAgICAgaWYgKG1lc2cg
PT0gTlVMTCkgewogICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7CiAgICAgfQog
Ci0gICAgbGVuID0gMTI7ICAvKiBvbmx5IHRoZSBoZWFkZXIgKi8KICAgICBzdGF0dXMgPSBzcnRw
X3Byb3RlY3Qoc3J0cF9zbmQsIG1lc2csICZsZW4pOwogICAgIGlmIChzdGF0dXMpIHsKICAgICAg
ICAgcmV0dXJuIHN0YXR1czsKQEAgLTI0NzIsOCArMjQyNSw3IEBAIHNydHBfdGVzdF9lbXB0eV9w
YXlsb2FkKCkKIH0KIAogI2lmZGVmIE9QRU5TU0wKLXNydHBfZXJyX3N0YXR1c190Ci1zcnRwX3Rl
c3RfZW1wdHlfcGF5bG9hZF9nY20oKQorc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF90ZXN0X2VtcHR5
X3BheWxvYWRfZ2NtKCkKIHsKICAgICBzcnRwX3Qgc3J0cF9zbmQsIHNydHBfcmVjdjsKICAgICBz
cnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7CkBAIC0yNDg4LDcgKzI0NDAsNyBAQCBzcnRwX3Rlc3Rf
ZW1wdHlfcGF5bG9hZF9nY20oKQogICAgIG1lbXNldCgmcG9saWN5LCAwLCBzaXplb2YocG9saWN5
KSk7CiAgICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfZ2NtXzEyOF84X2F1dGgoJnBvbGlj
eS5ydHApOwogICAgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2djbV8xMjhfOF9hdXRoKCZw
b2xpY3kucnRjcCk7Ci0gICAgcG9saWN5LnNzcmMudHlwZSAgPSBzc3JjX3NwZWNpZmljOworICAg
IHBvbGljeS5zc3JjLnR5cGUgPSBzc3JjX3NwZWNpZmljOwogICAgIHBvbGljeS5zc3JjLnZhbHVl
ID0gMHhjYWZlYmFiZTsKICAgICBwb2xpY3kua2V5ID0gdGVzdF9rZXk7CiAgICAgcG9saWN5LmVr
dCA9IE5VTEw7CkBAIC0yNTAxLDEyICsyNDUzLDExIEBAIHNydHBfdGVzdF9lbXB0eV9wYXlsb2Fk
X2djbSgpCiAgICAgICAgIHJldHVybiBzdGF0dXM7CiAgICAgfQogCi0gICAgbWVzZyA9IHNydHBf
Y3JlYXRlX3Rlc3RfcGFja2V0KDAsIHBvbGljeS5zc3JjLnZhbHVlKTsKKyAgICBtZXNnID0gc3J0
cF9jcmVhdGVfdGVzdF9wYWNrZXQoMCwgcG9saWN5LnNzcmMudmFsdWUsICZsZW4pOwogICAgIGlm
IChtZXNnID09IE5VTEwpIHsKICAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19mYWlsOwog
ICAgIH0KIAotICAgIGxlbiA9IDEyOyAgLyogb25seSB0aGUgaGVhZGVyICovCiAgICAgc3RhdHVz
ID0gc3J0cF9wcm90ZWN0KHNydHBfc25kLCBtZXNnLCAmbGVuKTsKICAgICBpZiAoc3RhdHVzKSB7
CiAgICAgICAgIHJldHVybiBzdGF0dXM7CkBAIC0yNTQ4LDEwICsyNDk5LDkgQEAgc3J0cF90ZXN0
X2VtcHR5X3BheWxvYWRfZ2NtKCkKIAogICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9
Ci0jZW5kaWYgIC8vIE9QRU5TU0wKKyNlbmRpZiAvLyBPUEVOU1NMCiAKLXNydHBfZXJyX3N0YXR1
c190Ci1zcnRwX3Rlc3RfcmVtb3ZlX3N0cmVhbSAoKQorc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF90
ZXN0X3JlbW92ZV9zdHJlYW0oKQogewogICAgIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKICAg
ICBzcnRwX3BvbGljeV90ICpwb2xpY3lfbGlzdCwgcG9saWN5OwpAQCAtMjU2NSw3ICsyNTE1LDYg
QEAgc3J0cF90ZXN0X3JlbW92ZV9zdHJlYW0gKCkKICAgICAgKi8KICAgICBleHRlcm4gc3J0cF9z
dHJlYW1fdCBzcnRwX2dldF9zdHJlYW0oc3J0cF90IHNydHAsIHVpbnQzMl90IHNzcmMpOwogCi0K
ICAgICBzdGF0dXMgPSBzcnRwX2NyZWF0ZV9iaWdfcG9saWN5KCZwb2xpY3lfbGlzdCk7CiAgICAg
aWYgKHN0YXR1cykgewogICAgICAgICByZXR1cm4gc3RhdHVzOwpAQCAtMjYxNiw3ICsyNTY1LDcg
QEAgc3J0cF90ZXN0X3JlbW92ZV9zdHJlYW0gKCkKICAgICBtZW1zZXQoJnBvbGljeSwgMCwgc2l6
ZW9mKHBvbGljeSkpOwogICAgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfcnRwX2RlZmF1bHQoJnBv
bGljeS5ydHApOwogICAgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfcnRjcF9kZWZhdWx0KCZwb2xp
Y3kucnRjcCk7Ci0gICAgcG9saWN5LnNzcmMudHlwZSAgPSBzc3JjX3NwZWNpZmljOworICAgIHBv
bGljeS5zc3JjLnR5cGUgPSBzc3JjX3NwZWNpZmljOwogICAgIHBvbGljeS5zc3JjLnZhbHVlID0g
MHhjYWZlYmFiZTsKICAgICBwb2xpY3kua2V5ID0gdGVzdF9rZXk7CiAgICAgcG9saWN5LmVrdCA9
IE5VTEw7CkBAIC0yNjQ3LDcgKzI1OTYsNyBAQCBzcnRwX3Rlc3RfcmVtb3ZlX3N0cmVhbSAoKQog
ICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAKLQorLy8gY2xhbmctZm9ybWF0IG9m
ZgogdW5zaWduZWQgY2hhciB0ZXN0X2FsdF9rZXlbNDZdID0gewogICAweGU1LCAweDE5LCAweDZm
LCAweDAxLCAweDVlLCAweGYxLCAweDliLCAweGUxLAogICAweGQ3LCAweDQ3LCAweGE3LCAweDI3
LCAweDA3LCAweGQ3LCAweDQ3LCAweDMzLApAQCAtMjY1Niw2ICsyNjA1LDcgQEAgdW5zaWduZWQg
Y2hhciB0ZXN0X2FsdF9rZXlbNDZdID0gewogICAweGM3LCAweDE1LCAweGUyLCAweGVhLCAweGZl
LCAweDU1LCAweDY3LCAweDk2LAogICAweGI2LCAweDk2LCAweDBiLCAweDNhLCAweGFiLCAweGU2
CiB9OworLy8gY2xhbmctZm9ybWF0IG9uCiAKIC8qCiAgKiBzcnRwX3Rlc3RfdXBkYXRlKCkgdmVy
aWZpZXMgdXBkYXRpbmcvcmVrZXlpbmcgZXhzaXN0aW5nIHN0cmVhbXMuCkBAIC0yNjY0LDc0OCAr
MjYxNCw3NzYgQEAgdW5zaWduZWQgY2hhciB0ZXN0X2FsdF9rZXlbNDZdID0gewogICogYXRlbXB0
cyB0byBwcm92ZSB0aGF0IHNydHBfdXBkYXRlIGRvZXMgbm90IHJlc2V0IHRoZSBST0MuCiAgKi8K
IAotc3J0cF9lcnJfc3RhdHVzX3QKLXNydHBfdGVzdF91cGRhdGUoKSB7Ci0KLSAgc3J0cF9lcnJf
c3RhdHVzX3Qgc3RhdHVzOwotICB1aW50MzJfdCBzc3JjID0gMHgxMjEyMTIxMjsKLSAgaW50IG1z
Z19sZW5fb2N0ZXRzID0gMzI7Ci0gIGludCBwcm90ZWN0ZWRfbXNnX2xlbl9vY3RldHM7Ci0gIHNy
dHBfaGRyX3QgKiBtc2c7Ci0gIHNydHBfdCBzcnRwX3NuZCwgc3J0cF9yZWN2OwotICBzcnRwX3Bv
bGljeV90IHBvbGljeTsKLQotICBtZW1zZXQoJnBvbGljeSwgMCwgc2l6ZW9mKHBvbGljeSkpOwot
ICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X3J0cF9kZWZhdWx0KCZwb2xpY3kucnRwKTsKLSAgc3J0
cF9jcnlwdG9fcG9saWN5X3NldF9ydGNwX2RlZmF1bHQoJnBvbGljeS5ydGNwKTsKLSAgcG9saWN5
LmVrdCA9IE5VTEw7Ci0gIHBvbGljeS53aW5kb3dfc2l6ZSA9IDEyODsKLSAgcG9saWN5LmFsbG93
X3JlcGVhdF90eCA9IDA7Ci0gIHBvbGljeS5uZXh0ID0gTlVMTDsKLSAgcG9saWN5LnNzcmMudHlw
ZSAgPSBzc3JjX2FueV9vdXRib3VuZDsKLSAgcG9saWN5LmtleSA9IHRlc3Rfa2V5OwotCi0gIC8q
IGNyZWF0ZSBhIHNlbmQgYW5kIHJlY2l2ZSBjdHggd2l0aCBkZWZ1YWx0IHByb2ZpbGUgYW5kIHRl
c3Rfa2V5ICovCi0gIHN0YXR1cyA9IHNydHBfY3JlYXRlKCZzcnRwX3JlY3YsICZwb2xpY3kpOwot
ICBpZiAoc3RhdHVzKQotICAgIHJldHVybiBzdGF0dXM7Ci0KLSAgcG9saWN5LnNzcmMudHlwZSAg
PSBzc3JjX2FueV9pbmJvdW5kOwotICBzdGF0dXMgPSBzcnRwX2NyZWF0ZSgmc3J0cF9zbmQsICZw
b2xpY3kpOwotICBpZiAoc3RhdHVzKQotICAgIHJldHVybiBzdGF0dXM7Ci0KLSAgLyogcHJvdGVj
dCBhbmQgdW5wcm90ZWN0IHR3byBtc2cncyB0aGF0IHdpbGwgY2F1c2UgdGhlIFJPQyB0byBiZSBl
cXVhbCB0byAxICovCi0gIG1zZyA9IHNydHBfY3JlYXRlX3Rlc3RfcGFja2V0KG1zZ19sZW5fb2N0
ZXRzLCBzc3JjKTsKLSAgaWYgKG1zZyA9PSBOVUxMKQotICAgIHJldHVybiBzcnRwX2Vycl9zdGF0
dXNfYWxsb2NfZmFpbDsKLSAgbXNnLT5zZXEgPSBodG9ucyg2NTUzNSk7Ci0KLSAgcHJvdGVjdGVk
X21zZ19sZW5fb2N0ZXRzID0gbXNnX2xlbl9vY3RldHM7Ci0gIHN0YXR1cyA9IHNydHBfcHJvdGVj
dChzcnRwX3NuZCwgbXNnLCAmcHJvdGVjdGVkX21zZ19sZW5fb2N0ZXRzKTsKLSAgaWYgKHN0YXR1
cykKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7Ci0KLSAgc3RhdHVzID0gc3J0cF91
bnByb3RlY3Qoc3J0cF9yZWN2LCBtc2csICZwcm90ZWN0ZWRfbXNnX2xlbl9vY3RldHMpOwotICBp
ZiAoc3RhdHVzKQotICAgIHJldHVybiBzdGF0dXM7Ci0KLSAgZnJlZShtc2cpOwotCi0gIG1zZyA9
IHNydHBfY3JlYXRlX3Rlc3RfcGFja2V0KG1zZ19sZW5fb2N0ZXRzLCBzc3JjKTsKLSAgaWYgKG1z
ZyA9PSBOVUxMKQotICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYWxsb2NfZmFpbDsKLSAgbXNn
LT5zZXEgPSBodG9ucygxKTsKLQotICBwcm90ZWN0ZWRfbXNnX2xlbl9vY3RldHMgPSBtc2dfbGVu
X29jdGV0czsKLSAgc3RhdHVzID0gc3J0cF9wcm90ZWN0KHNydHBfc25kLCBtc2csICZwcm90ZWN0
ZWRfbXNnX2xlbl9vY3RldHMpOwotICBpZiAoc3RhdHVzKQotICAgIHJldHVybiBzcnRwX2Vycl9z
dGF0dXNfZmFpbDsKLQotICBzdGF0dXMgPSBzcnRwX3VucHJvdGVjdChzcnRwX3JlY3YsIG1zZywg
JnByb3RlY3RlZF9tc2dfbGVuX29jdGV0cyk7Ci0gIGlmIChzdGF0dXMpCi0gICAgcmV0dXJuIHN0
YXR1czsKLQotICBmcmVlKG1zZyk7Ci0KLSAgLyogdXBkYXRlIHNlbmQgY3R4IHdpdGggc2FtZSB0
ZXN0X2tleSB0IHZlcmlmeSB1cGRhdGUgd29ya3MqLwotICBwb2xpY3kuc3NyYy50eXBlID0gc3Ny
Y19hbnlfb3V0Ym91bmQ7Ci0gIHBvbGljeS5rZXkgPSB0ZXN0X2tleTsKLSAgc3RhdHVzID0gc3J0
cF91cGRhdGUoc3J0cF9zbmQsICZwb2xpY3kpOwotICBpZiAoc3RhdHVzKQotICAgIHJldHVybiBz
dGF0dXM7Ci0KLSAgbXNnID0gc3J0cF9jcmVhdGVfdGVzdF9wYWNrZXQobXNnX2xlbl9vY3RldHMs
IHNzcmMpOwotICBpZiAobXNnID09IE5VTEwpCi0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19h
bGxvY19mYWlsOwotICBtc2ctPnNlcSA9IGh0b25zKDIpOwotCi0gIHByb3RlY3RlZF9tc2dfbGVu
X29jdGV0cyA9IG1zZ19sZW5fb2N0ZXRzOwotICBzdGF0dXMgPSBzcnRwX3Byb3RlY3Qoc3J0cF9z
bmQsIG1zZywgJnByb3RlY3RlZF9tc2dfbGVuX29jdGV0cyk7Ci0gIGlmIChzdGF0dXMpCi0gICAg
cmV0dXJuIHNydHBfZXJyX3N0YXR1c19mYWlsOwotCi0gIHN0YXR1cyA9IHNydHBfdW5wcm90ZWN0
KHNydHBfcmVjdiwgbXNnLCAmcHJvdGVjdGVkX21zZ19sZW5fb2N0ZXRzKTsKLSAgaWYgKHN0YXR1
cykKLSAgICByZXR1cm4gc3RhdHVzOwotCi0gIGZyZWUobXNnKTsKLQotCi0gIC8qIHVwZGF0ZSBz
ZW5kIGN0eCB0byB1c2UgdGVzdF9hbHRfa2V5ICovCi0gIHBvbGljeS5zc3JjLnR5cGUgPSBzc3Jj
X2FueV9vdXRib3VuZDsKLSAgcG9saWN5LmtleSA9IHRlc3RfYWx0X2tleTsKLSAgc3RhdHVzID0g
c3J0cF91cGRhdGUoc3J0cF9zbmQsICZwb2xpY3kpOwotICBpZiAoc3RhdHVzKQotICAgIHJldHVy
biBzdGF0dXM7Ci0KLSAgLyogY3JlYXRlIGFuZCBwcm90ZWN0IG1zZyB3aXRoIG5ldyBrZXkgYW5k
IFJPQyBzdGlsbCBlcXVhbCB0byAxICovCi0gIG1zZyA9IHNydHBfY3JlYXRlX3Rlc3RfcGFja2V0
KG1zZ19sZW5fb2N0ZXRzLCBzc3JjKTsKLSAgaWYgKG1zZyA9PSBOVUxMKQotICAgIHJldHVybiBz
cnRwX2Vycl9zdGF0dXNfYWxsb2NfZmFpbDsKLSAgbXNnLT5zZXEgPSBodG9ucygzKTsKLQotICBw
cm90ZWN0ZWRfbXNnX2xlbl9vY3RldHMgPSBtc2dfbGVuX29jdGV0czsKLSAgc3RhdHVzID0gc3J0
cF9wcm90ZWN0KHNydHBfc25kLCBtc2csICZwcm90ZWN0ZWRfbXNnX2xlbl9vY3RldHMpOwotICBp
ZiAoc3RhdHVzKQotICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfZmFpbDsKLQotICAvKiB2ZXJp
ZnkgdGhhdCByZWNpdmUgY3R4IHdpbGwgZmFpbCB0byB1bnByb3RlY3QgYXMgaXQgc3RpbGwgdXNl
cyB0ZXN0X2tleSAqLwotICBzdGF0dXMgPSBzcnRwX3VucHJvdGVjdChzcnRwX3JlY3YsIG1zZywg
JnByb3RlY3RlZF9tc2dfbGVuX29jdGV0cyk7Ci0gIGlmIChzdGF0dXMgPT0gc3J0cF9lcnJfc3Rh
dHVzX29rKQotICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfZmFpbDsKLQotICAvKiBjcmVhdGUg
YSBuZXcgcmVjdmlldmUgY3R4IHdpdGggdGVzdF9hbHRfa2V5IGJ1dCBzaW5jZSBpdCBpcyBuZXcg
aXQgd2lsbCBoYXZlIFJPQyBlcXVhbCB0byAxCi0gICAqIGFuZCB0aGVyZWZvcmUgc2hvdWxkIGZh
aWwgdG8gdW5wcm90ZWN0ZWQgKi8KLSAgewotICAgIHNydHBfdCBzcnRwX3JlY3Zfcm9jXzA7Ci0K
LSAgICBwb2xpY3kuc3NyYy50eXBlICA9IHNzcmNfYW55X2luYm91bmQ7CitzcnRwX2Vycl9zdGF0
dXNfdCBzcnRwX3Rlc3RfdXBkYXRlKCkKK3sKKyAgICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7
CisgICAgdWludDMyX3Qgc3NyYyA9IDB4MTIxMjEyMTI7CisgICAgaW50IG1zZ19sZW5fb2N0ZXRz
ID0gMzI7CisgICAgaW50IHByb3RlY3RlZF9tc2dfbGVuX29jdGV0czsKKyAgICBzcnRwX2hkcl90
ICptc2c7CisgICAgc3J0cF90IHNydHBfc25kLCBzcnRwX3JlY3Y7CisgICAgc3J0cF9wb2xpY3lf
dCBwb2xpY3k7CisKKyAgICBtZW1zZXQoJnBvbGljeSwgMCwgc2l6ZW9mKHBvbGljeSkpOworICAg
IHNydHBfY3J5cHRvX3BvbGljeV9zZXRfcnRwX2RlZmF1bHQoJnBvbGljeS5ydHApOworICAgIHNy
dHBfY3J5cHRvX3BvbGljeV9zZXRfcnRjcF9kZWZhdWx0KCZwb2xpY3kucnRjcCk7CisgICAgcG9s
aWN5LmVrdCA9IE5VTEw7CisgICAgcG9saWN5LndpbmRvd19zaXplID0gMTI4OworICAgIHBvbGlj
eS5hbGxvd19yZXBlYXRfdHggPSAwOworICAgIHBvbGljeS5uZXh0ID0gTlVMTDsKKyAgICBwb2xp
Y3kuc3NyYy50eXBlID0gc3NyY19hbnlfb3V0Ym91bmQ7CisgICAgcG9saWN5LmtleSA9IHRlc3Rf
a2V5OworCisgICAgLyogY3JlYXRlIGEgc2VuZCBhbmQgcmVjaXZlIGN0eCB3aXRoIGRlZnVhbHQg
cHJvZmlsZSBhbmQgdGVzdF9rZXkgKi8KKyAgICBzdGF0dXMgPSBzcnRwX2NyZWF0ZSgmc3J0cF9y
ZWN2LCAmcG9saWN5KTsKKyAgICBpZiAoc3RhdHVzKQorICAgICAgICByZXR1cm4gc3RhdHVzOwor
CisgICAgcG9saWN5LnNzcmMudHlwZSA9IHNzcmNfYW55X2luYm91bmQ7CisgICAgc3RhdHVzID0g
c3J0cF9jcmVhdGUoJnNydHBfc25kLCAmcG9saWN5KTsKKyAgICBpZiAoc3RhdHVzKQorICAgICAg
ICByZXR1cm4gc3RhdHVzOworCisgICAgLyogcHJvdGVjdCBhbmQgdW5wcm90ZWN0IHR3byBtc2cn
cyB0aGF0IHdpbGwgY2F1c2UgdGhlIFJPQyB0byBiZSBlcXVhbCB0byAxCisgICAgICovCisgICAg
bXNnID0gc3J0cF9jcmVhdGVfdGVzdF9wYWNrZXQobXNnX2xlbl9vY3RldHMsIHNzcmMsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnByb3RlY3RlZF9tc2dfbGVuX29jdGV0cyk7
CisgICAgaWYgKG1zZyA9PSBOVUxMKQorICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2Fs
bG9jX2ZhaWw7CisgICAgbXNnLT5zZXEgPSBodG9ucyg2NTUzNSk7CisKKyAgICBzdGF0dXMgPSBz
cnRwX3Byb3RlY3Qoc3J0cF9zbmQsIG1zZywgJnByb3RlY3RlZF9tc2dfbGVuX29jdGV0cyk7Cisg
ICAgaWYgKHN0YXR1cykKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19mYWlsOworCisg
ICAgc3RhdHVzID0gc3J0cF91bnByb3RlY3Qoc3J0cF9yZWN2LCBtc2csICZwcm90ZWN0ZWRfbXNn
X2xlbl9vY3RldHMpOworICAgIGlmIChzdGF0dXMpCisgICAgICAgIHJldHVybiBzdGF0dXM7CisK
KyAgICBmcmVlKG1zZyk7CisKKyAgICBtc2cgPSBzcnRwX2NyZWF0ZV90ZXN0X3BhY2tldChtc2df
bGVuX29jdGV0cywgc3NyYywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmcHJv
dGVjdGVkX21zZ19sZW5fb2N0ZXRzKTsKKyAgICBpZiAobXNnID09IE5VTEwpCisgICAgICAgIHJl
dHVybiBzcnRwX2Vycl9zdGF0dXNfYWxsb2NfZmFpbDsKKyAgICBtc2ctPnNlcSA9IGh0b25zKDEp
OworCisgICAgc3RhdHVzID0gc3J0cF9wcm90ZWN0KHNydHBfc25kLCBtc2csICZwcm90ZWN0ZWRf
bXNnX2xlbl9vY3RldHMpOworICAgIGlmIChzdGF0dXMpCisgICAgICAgIHJldHVybiBzcnRwX2Vy
cl9zdGF0dXNfZmFpbDsKKworICAgIHN0YXR1cyA9IHNydHBfdW5wcm90ZWN0KHNydHBfcmVjdiwg
bXNnLCAmcHJvdGVjdGVkX21zZ19sZW5fb2N0ZXRzKTsKKyAgICBpZiAoc3RhdHVzKQorICAgICAg
ICByZXR1cm4gc3RhdHVzOworCisgICAgZnJlZShtc2cpOworCisgICAgLyogdXBkYXRlIHNlbmQg
Y3R4IHdpdGggc2FtZSB0ZXN0X2tleSB0IHZlcmlmeSB1cGRhdGUgd29ya3MqLworICAgIHBvbGlj
eS5zc3JjLnR5cGUgPSBzc3JjX2FueV9vdXRib3VuZDsKKyAgICBwb2xpY3kua2V5ID0gdGVzdF9r
ZXk7CisgICAgc3RhdHVzID0gc3J0cF91cGRhdGUoc3J0cF9zbmQsICZwb2xpY3kpOworICAgIGlm
IChzdGF0dXMpCisgICAgICAgIHJldHVybiBzdGF0dXM7CisKKyAgICBtc2cgPSBzcnRwX2NyZWF0
ZV90ZXN0X3BhY2tldChtc2dfbGVuX29jdGV0cywgc3NyYywKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAmcHJvdGVjdGVkX21zZ19sZW5fb2N0ZXRzKTsKKyAgICBpZiAobXNnID09
IE5VTEwpCisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfYWxsb2NfZmFpbDsKKyAgICBt
c2ctPnNlcSA9IGh0b25zKDIpOworCisgICAgc3RhdHVzID0gc3J0cF9wcm90ZWN0KHNydHBfc25k
LCBtc2csICZwcm90ZWN0ZWRfbXNnX2xlbl9vY3RldHMpOworICAgIGlmIChzdGF0dXMpCisgICAg
ICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfZmFpbDsKKworICAgIHN0YXR1cyA9IHNydHBfdW5w
cm90ZWN0KHNydHBfcmVjdiwgbXNnLCAmcHJvdGVjdGVkX21zZ19sZW5fb2N0ZXRzKTsKKyAgICBp
ZiAoc3RhdHVzKQorICAgICAgICByZXR1cm4gc3RhdHVzOworCisgICAgZnJlZShtc2cpOworCisg
ICAgLyogdXBkYXRlIHNlbmQgY3R4IHRvIHVzZSB0ZXN0X2FsdF9rZXkgKi8KKyAgICBwb2xpY3ku
c3NyYy50eXBlID0gc3NyY19hbnlfb3V0Ym91bmQ7CiAgICAgcG9saWN5LmtleSA9IHRlc3RfYWx0
X2tleTsKLSAgICBzdGF0dXMgPSBzcnRwX2NyZWF0ZSgmc3J0cF9yZWN2X3JvY18wLCAmcG9saWN5
KTsKKyAgICBzdGF0dXMgPSBzcnRwX3VwZGF0ZShzcnRwX3NuZCwgJnBvbGljeSk7CiAgICAgaWYg
KHN0YXR1cykKLSAgICAgIHJldHVybiBzdGF0dXM7CisgICAgICAgIHJldHVybiBzdGF0dXM7CiAK
LSAgICBzdGF0dXMgPSBzcnRwX3VucHJvdGVjdChzcnRwX3JlY3Zfcm9jXzAsIG1zZywgJnByb3Rl
Y3RlZF9tc2dfbGVuX29jdGV0cyk7Ci0gICAgaWYgKHN0YXR1cyA9PSBzcnRwX2Vycl9zdGF0dXNf
b2spCi0gICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7CisgICAgLyogY3JlYXRlIGFu
ZCBwcm90ZWN0IG1zZyB3aXRoIG5ldyBrZXkgYW5kIFJPQyBzdGlsbCBlcXVhbCB0byAxICovCisg
ICAgbXNnID0gc3J0cF9jcmVhdGVfdGVzdF9wYWNrZXQobXNnX2xlbl9vY3RldHMsIHNzcmMsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnByb3RlY3RlZF9tc2dfbGVuX29jdGV0
cyk7CisgICAgaWYgKG1zZyA9PSBOVUxMKQorICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVz
X2FsbG9jX2ZhaWw7CisgICAgbXNnLT5zZXEgPSBodG9ucygzKTsKIAotICAgIHN0YXR1cyA9IHNy
dHBfZGVhbGxvYyhzcnRwX3JlY3Zfcm9jXzApOworICAgIHN0YXR1cyA9IHNydHBfcHJvdGVjdChz
cnRwX3NuZCwgbXNnLCAmcHJvdGVjdGVkX21zZ19sZW5fb2N0ZXRzKTsKICAgICBpZiAoc3RhdHVz
KQotICAgICAgcmV0dXJuIHN0YXR1czsKLSAgfQorICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3Rh
dHVzX2ZhaWw7CiAKLSAgLyogdXBkYXRlIHJlY2l2ZSBjdHggdG8gdXNlIHRlc3RfYWx0X2tleSAq
LwotICBwb2xpY3kuc3NyYy50eXBlID0gc3NyY19hbnlfaW5ib3VuZDsKLSAgcG9saWN5LmtleSA9
IHRlc3RfYWx0X2tleTsKLSAgc3RhdHVzID0gc3J0cF91cGRhdGUoc3J0cF9yZWN2LCAmcG9saWN5
KTsKLSAgaWYgKHN0YXR1cykKLSAgICByZXR1cm4gc3RhdHVzOworICAgIC8qIHZlcmlmeSB0aGF0
IHJlY2l2ZSBjdHggd2lsbCBmYWlsIHRvIHVucHJvdGVjdCBhcyBpdCBzdGlsbCB1c2VzIHRlc3Rf
a2V5CisgICAgICovCisgICAgc3RhdHVzID0gc3J0cF91bnByb3RlY3Qoc3J0cF9yZWN2LCBtc2cs
ICZwcm90ZWN0ZWRfbXNnX2xlbl9vY3RldHMpOworICAgIGlmIChzdGF0dXMgPT0gc3J0cF9lcnJf
c3RhdHVzX29rKQorICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7CisKKyAgICAv
KiBjcmVhdGUgYSBuZXcgcmVjdmlldmUgY3R4IHdpdGggdGVzdF9hbHRfa2V5IGJ1dCBzaW5jZSBp
dCBpcyBuZXcgaXQgd2lsbAorICAgICAqIGhhdmUgUk9DIGVxdWFsIHRvIDEKKyAgICAgKiBhbmQg
dGhlcmVmb3JlIHNob3VsZCBmYWlsIHRvIHVucHJvdGVjdGVkICovCisgICAgeworICAgICAgICBz
cnRwX3Qgc3J0cF9yZWN2X3JvY18wOworCisgICAgICAgIHBvbGljeS5zc3JjLnR5cGUgPSBzc3Jj
X2FueV9pbmJvdW5kOworICAgICAgICBwb2xpY3kua2V5ID0gdGVzdF9hbHRfa2V5OworICAgICAg
ICBzdGF0dXMgPSBzcnRwX2NyZWF0ZSgmc3J0cF9yZWN2X3JvY18wLCAmcG9saWN5KTsKKyAgICAg
ICAgaWYgKHN0YXR1cykKKyAgICAgICAgICAgIHJldHVybiBzdGF0dXM7CisKKyAgICAgICAgc3Rh
dHVzID0KKyAgICAgICAgICAgIHNydHBfdW5wcm90ZWN0KHNydHBfcmVjdl9yb2NfMCwgbXNnLCAm
cHJvdGVjdGVkX21zZ19sZW5fb2N0ZXRzKTsKKyAgICAgICAgaWYgKHN0YXR1cyA9PSBzcnRwX2Vy
cl9zdGF0dXNfb2spCisgICAgICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7CisK
KyAgICAgICAgc3RhdHVzID0gc3J0cF9kZWFsbG9jKHNydHBfcmVjdl9yb2NfMCk7CisgICAgICAg
IGlmIChzdGF0dXMpCisgICAgICAgICAgICByZXR1cm4gc3RhdHVzOworICAgIH0KKworICAgIC8q
IHVwZGF0ZSByZWNpdmUgY3R4IHRvIHVzZSB0ZXN0X2FsdF9rZXkgKi8KKyAgICBwb2xpY3kuc3Ny
Yy50eXBlID0gc3NyY19hbnlfaW5ib3VuZDsKKyAgICBwb2xpY3kua2V5ID0gdGVzdF9hbHRfa2V5
OworICAgIHN0YXR1cyA9IHNydHBfdXBkYXRlKHNydHBfcmVjdiwgJnBvbGljeSk7CisgICAgaWYg
KHN0YXR1cykKKyAgICAgICAgcmV0dXJuIHN0YXR1czsKIAotICAvKiB2ZXJpZnkgdGhhdCBjYW4g
c3RpbGwgdW5wcm90ZWN0LCB0aGVyZm9yZSBrZXkgaXMgdXBkYXRlZCBhbmQgUk9DIHZhbHVlIGlz
IHByZXNlcnZlZCAqLwotICBzdGF0dXMgPSBzcnRwX3VucHJvdGVjdChzcnRwX3JlY3YsIG1zZywg
JnByb3RlY3RlZF9tc2dfbGVuX29jdGV0cyk7Ci0gIGlmIChzdGF0dXMpCi0gICAgcmV0dXJuIHN0
YXR1czsKKyAgICAvKiB2ZXJpZnkgdGhhdCBjYW4gc3RpbGwgdW5wcm90ZWN0LCB0aGVyZm9yZSBr
ZXkgaXMgdXBkYXRlZCBhbmQgUk9DIHZhbHVlIGlzCisgICAgICogcHJlc2VydmVkICovCisgICAg
c3RhdHVzID0gc3J0cF91bnByb3RlY3Qoc3J0cF9yZWN2LCBtc2csICZwcm90ZWN0ZWRfbXNnX2xl
bl9vY3RldHMpOworICAgIGlmIChzdGF0dXMpCisgICAgICAgIHJldHVybiBzdGF0dXM7CiAKLSAg
ZnJlZShtc2cpOworICAgIGZyZWUobXNnKTsKIAotICBzdGF0dXMgPSBzcnRwX2RlYWxsb2Moc3J0
cF9zbmQpOwotICBpZiAoc3RhdHVzKQotICAgIHJldHVybiBzdGF0dXM7CisgICAgc3RhdHVzID0g
c3J0cF9kZWFsbG9jKHNydHBfc25kKTsKKyAgICBpZiAoc3RhdHVzKQorICAgICAgICByZXR1cm4g
c3RhdHVzOwogCi0gIHN0YXR1cyA9IHNydHBfZGVhbGxvYyhzcnRwX3JlY3YpOwotICBpZiAoc3Rh
dHVzKQotICAgIHJldHVybiBzdGF0dXM7CisgICAgc3RhdHVzID0gc3J0cF9kZWFsbG9jKHNydHBf
cmVjdik7CisgICAgaWYgKHN0YXR1cykKKyAgICAgICAgcmV0dXJuIHN0YXR1czsKIAotICByZXR1
cm4gc3J0cF9lcnJfc3RhdHVzX29rOworICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9
CiAKLXNydHBfZXJyX3N0YXR1c190Ci1zcnRwX3Rlc3Rfc2V0dXBfcHJvdGVjdF90cmFpbGVyX3N0
cmVhbXMoc3J0cF90ICpzcnRwX3NlbmQsIHNydHBfdCAqc3J0cF9zZW5kX21raSwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcnRwX3QgKnNydHBfc2VuZF9hZXNfZ2Nt
LCBzcnRwX3QgKnNydHBfc2VuZF9hZXNfZ2NtX21raSkgeworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0
cF90ZXN0X3NldHVwX3Byb3RlY3RfdHJhaWxlcl9zdHJlYW1zKAorICAgIHNydHBfdCAqc3J0cF9z
ZW5kLAorICAgIHNydHBfdCAqc3J0cF9zZW5kX21raSwKKyAgICBzcnRwX3QgKnNydHBfc2VuZF9h
ZXNfZ2NtLAorICAgIHNydHBfdCAqc3J0cF9zZW5kX2Flc19nY21fbWtpKQoreworICAgIHNydHBf
ZXJyX3N0YXR1c190IHN0YXR1czsKKyAgICBzcnRwX3BvbGljeV90IHBvbGljeTsKKyAgICBzcnRw
X3BvbGljeV90IHBvbGljeV9ta2k7CiAKLSAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVzOwotICBz
cnRwX3BvbGljeV90IHBvbGljeTsKLSAgc3J0cF9wb2xpY3lfdCBwb2xpY3lfbWtpOwogI2lmZGVm
IE9QRU5TU0wKLSAgc3J0cF9wb2xpY3lfdCBwb2xpY3lfYWVzX2djbTsKLSAgc3J0cF9wb2xpY3lf
dCBwb2xpY3lfYWVzX2djbV9ta2k7CisgICAgc3J0cF9wb2xpY3lfdCBwb2xpY3lfYWVzX2djbTsK
KyAgICBzcnRwX3BvbGljeV90IHBvbGljeV9hZXNfZ2NtX21raTsKICNlbmRpZiAvLyBPUEVOU1NM
CiAKLSAgbWVtc2V0KCZwb2xpY3ksIDAsIHNpemVvZihwb2xpY3kpKTsKLSAgc3J0cF9jcnlwdG9f
cG9saWN5X3NldF9ydHBfZGVmYXVsdCgmcG9saWN5LnJ0cCk7Ci0gIHNydHBfY3J5cHRvX3BvbGlj
eV9zZXRfcnRjcF9kZWZhdWx0KCZwb2xpY3kucnRjcCk7Ci0gIHBvbGljeS5la3QgPSBOVUxMOwot
ICBwb2xpY3kud2luZG93X3NpemUgPSAxMjg7Ci0gIHBvbGljeS5hbGxvd19yZXBlYXRfdHggPSAw
OwotICBwb2xpY3kubmV4dCA9IE5VTEw7Ci0gIHBvbGljeS5zc3JjLnR5cGUgID0gc3NyY19hbnlf
b3V0Ym91bmQ7Ci0gIHBvbGljeS5rZXkgPSB0ZXN0X2tleTsKLQotICBtZW1zZXQoJnBvbGljeV9t
a2ksIDAsIHNpemVvZihwb2xpY3lfbWtpKSk7Ci0gIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfcnRw
X2RlZmF1bHQoJnBvbGljeV9ta2kucnRwKTsKLSAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9ydGNw
X2RlZmF1bHQoJnBvbGljeV9ta2kucnRjcCk7Ci0gIHBvbGljeV9ta2kuZWt0ID0gTlVMTDsKLSAg
cG9saWN5X21raS53aW5kb3dfc2l6ZSA9IDEyODsKLSAgcG9saWN5X21raS5hbGxvd19yZXBlYXRf
dHggPSAwOwotICBwb2xpY3lfbWtpLm5leHQgPSBOVUxMOwotICBwb2xpY3lfbWtpLnNzcmMudHlw
ZSAgPSBzc3JjX2FueV9vdXRib3VuZDsKLSAgcG9saWN5X21raS5rZXkgPSBOVUxMOwotICBwb2xp
Y3lfbWtpLmtleXMgPSB0ZXN0X2tleXM7Ci0gIHBvbGljeV9ta2kubnVtX21hc3Rlcl9rZXlzID0g
MjsKKyAgICBtZW1zZXQoJnBvbGljeSwgMCwgc2l6ZW9mKHBvbGljeSkpOworICAgIHNydHBfY3J5
cHRvX3BvbGljeV9zZXRfcnRwX2RlZmF1bHQoJnBvbGljeS5ydHApOworICAgIHNydHBfY3J5cHRv
X3BvbGljeV9zZXRfcnRjcF9kZWZhdWx0KCZwb2xpY3kucnRjcCk7CisgICAgcG9saWN5LmVrdCA9
IE5VTEw7CisgICAgcG9saWN5LndpbmRvd19zaXplID0gMTI4OworICAgIHBvbGljeS5hbGxvd19y
ZXBlYXRfdHggPSAwOworICAgIHBvbGljeS5uZXh0ID0gTlVMTDsKKyAgICBwb2xpY3kuc3NyYy50
eXBlID0gc3NyY19hbnlfb3V0Ym91bmQ7CisgICAgcG9saWN5LmtleSA9IHRlc3Rfa2V5OwogCi0j
aWZkZWYgT1BFTlNTTAotICBtZW1zZXQoJnBvbGljeV9hZXNfZ2NtLCAwLCBzaXplb2YocG9saWN5
X2Flc19nY20pKTsKLSAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfZ2NtXzEyOF8xNl9hdXRo
KCZwb2xpY3lfYWVzX2djbS5ydHApOwotICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21f
MTI4XzE2X2F1dGgoJnBvbGljeV9hZXNfZ2NtLnJ0Y3ApOwotICBwb2xpY3lfYWVzX2djbS5la3Qg
PSBOVUxMOwotICBwb2xpY3lfYWVzX2djbS53aW5kb3dfc2l6ZSA9IDEyODsKLSAgcG9saWN5X2Fl
c19nY20uYWxsb3dfcmVwZWF0X3R4ID0gMDsKLSAgcG9saWN5X2Flc19nY20ubmV4dCA9IE5VTEw7
Ci0gIHBvbGljeV9hZXNfZ2NtLnNzcmMudHlwZSAgPSBzc3JjX2FueV9vdXRib3VuZDsKLSAgcG9s
aWN5X2Flc19nY20ua2V5ID0gdGVzdF9rZXk7Ci0KLSAgbWVtc2V0KCZwb2xpY3lfYWVzX2djbV9t
a2ksIDAsIHNpemVvZihwb2xpY3lfYWVzX2djbV9ta2kpKTsKLSAgc3J0cF9jcnlwdG9fcG9saWN5
X3NldF9hZXNfZ2NtXzEyOF8xNl9hdXRoKCZwb2xpY3lfYWVzX2djbV9ta2kucnRwKTsKLSAgc3J0
cF9jcnlwdG9fcG9saWN5X3NldF9hZXNfZ2NtXzEyOF8xNl9hdXRoKCZwb2xpY3lfYWVzX2djbV9t
a2kucnRjcCk7Ci0gIHBvbGljeV9hZXNfZ2NtX21raS5la3QgPSBOVUxMOwotICBwb2xpY3lfYWVz
X2djbV9ta2kud2luZG93X3NpemUgPSAxMjg7Ci0gIHBvbGljeV9hZXNfZ2NtX21raS5hbGxvd19y
ZXBlYXRfdHggPSAwOwotICBwb2xpY3lfYWVzX2djbV9ta2kubmV4dCA9IE5VTEw7Ci0gIHBvbGlj
eV9hZXNfZ2NtX21raS5zc3JjLnR5cGUgID0gc3NyY19hbnlfb3V0Ym91bmQ7Ci0gIHBvbGljeV9h
ZXNfZ2NtX21raS5rZXkgPSBOVUxMOwotICBwb2xpY3lfYWVzX2djbV9ta2kua2V5cyA9IHRlc3Rf
a2V5czsKLSAgcG9saWN5X2Flc19nY21fbWtpLm51bV9tYXN0ZXJfa2V5cyA9IDI7CisgICAgbWVt
c2V0KCZwb2xpY3lfbWtpLCAwLCBzaXplb2YocG9saWN5X21raSkpOworICAgIHNydHBfY3J5cHRv
X3BvbGljeV9zZXRfcnRwX2RlZmF1bHQoJnBvbGljeV9ta2kucnRwKTsKKyAgICBzcnRwX2NyeXB0
b19wb2xpY3lfc2V0X3J0Y3BfZGVmYXVsdCgmcG9saWN5X21raS5ydGNwKTsKKyAgICBwb2xpY3lf
bWtpLmVrdCA9IE5VTEw7CisgICAgcG9saWN5X21raS53aW5kb3dfc2l6ZSA9IDEyODsKKyAgICBw
b2xpY3lfbWtpLmFsbG93X3JlcGVhdF90eCA9IDA7CisgICAgcG9saWN5X21raS5uZXh0ID0gTlVM
TDsKKyAgICBwb2xpY3lfbWtpLnNzcmMudHlwZSA9IHNzcmNfYW55X291dGJvdW5kOworICAgIHBv
bGljeV9ta2kua2V5ID0gTlVMTDsKKyAgICBwb2xpY3lfbWtpLmtleXMgPSB0ZXN0X2tleXM7Cisg
ICAgcG9saWN5X21raS5udW1fbWFzdGVyX2tleXMgPSAyOwogCisjaWZkZWYgT1BFTlNTTAorICAg
IG1lbXNldCgmcG9saWN5X2Flc19nY20sIDAsIHNpemVvZihwb2xpY3lfYWVzX2djbSkpOworICAg
IHNydHBfY3J5cHRvX3BvbGljeV9zZXRfYWVzX2djbV8xMjhfMTZfYXV0aCgmcG9saWN5X2Flc19n
Y20ucnRwKTsKKyAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21fMTI4XzE2X2F1dGgo
JnBvbGljeV9hZXNfZ2NtLnJ0Y3ApOworICAgIHBvbGljeV9hZXNfZ2NtLmVrdCA9IE5VTEw7Cisg
ICAgcG9saWN5X2Flc19nY20ud2luZG93X3NpemUgPSAxMjg7CisgICAgcG9saWN5X2Flc19nY20u
YWxsb3dfcmVwZWF0X3R4ID0gMDsKKyAgICBwb2xpY3lfYWVzX2djbS5uZXh0ID0gTlVMTDsKKyAg
ICBwb2xpY3lfYWVzX2djbS5zc3JjLnR5cGUgPSBzc3JjX2FueV9vdXRib3VuZDsKKyAgICBwb2xp
Y3lfYWVzX2djbS5rZXkgPSB0ZXN0X2tleTsKKworICAgIG1lbXNldCgmcG9saWN5X2Flc19nY21f
bWtpLCAwLCBzaXplb2YocG9saWN5X2Flc19nY21fbWtpKSk7CisgICAgc3J0cF9jcnlwdG9fcG9s
aWN5X3NldF9hZXNfZ2NtXzEyOF8xNl9hdXRoKCZwb2xpY3lfYWVzX2djbV9ta2kucnRwKTsKKyAg
ICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X2Flc19nY21fMTI4XzE2X2F1dGgoJnBvbGljeV9hZXNf
Z2NtX21raS5ydGNwKTsKKyAgICBwb2xpY3lfYWVzX2djbV9ta2kuZWt0ID0gTlVMTDsKKyAgICBw
b2xpY3lfYWVzX2djbV9ta2kud2luZG93X3NpemUgPSAxMjg7CisgICAgcG9saWN5X2Flc19nY21f
bWtpLmFsbG93X3JlcGVhdF90eCA9IDA7CisgICAgcG9saWN5X2Flc19nY21fbWtpLm5leHQgPSBO
VUxMOworICAgIHBvbGljeV9hZXNfZ2NtX21raS5zc3JjLnR5cGUgPSBzc3JjX2FueV9vdXRib3Vu
ZDsKKyAgICBwb2xpY3lfYWVzX2djbV9ta2kua2V5ID0gTlVMTDsKKyAgICBwb2xpY3lfYWVzX2dj
bV9ta2kua2V5cyA9IHRlc3Rfa2V5czsKKyAgICBwb2xpY3lfYWVzX2djbV9ta2kubnVtX21hc3Rl
cl9rZXlzID0gMjsKICNlbmRpZgogCi0gIC8qIGNyZWF0ZSBhIHNlbmQgY3R4IHdpdGggZGVmdWFs
dCBwcm9maWxlIGFuZCB0ZXN0X2tleSAqLwotICBzdGF0dXMgPSBzcnRwX2NyZWF0ZShzcnRwX3Nl
bmQsICZwb2xpY3kpOwotICBpZiAoc3RhdHVzKQotICAgIHJldHVybiBzdGF0dXM7CisgICAgLyog
Y3JlYXRlIGEgc2VuZCBjdHggd2l0aCBkZWZ1YWx0IHByb2ZpbGUgYW5kIHRlc3Rfa2V5ICovCisg
ICAgc3RhdHVzID0gc3J0cF9jcmVhdGUoc3J0cF9zZW5kLCAmcG9saWN5KTsKKyAgICBpZiAoc3Rh
dHVzKQorICAgICAgICByZXR1cm4gc3RhdHVzOwogCi0gIHN0YXR1cyA9IHNydHBfY3JlYXRlKHNy
dHBfc2VuZF9ta2ksICZwb2xpY3lfbWtpKTsKLSAgaWYgKHN0YXR1cykKLSAgICByZXR1cm4gc3Rh
dHVzOworICAgIHN0YXR1cyA9IHNydHBfY3JlYXRlKHNydHBfc2VuZF9ta2ksICZwb2xpY3lfbWtp
KTsKKyAgICBpZiAoc3RhdHVzKQorICAgICAgICByZXR1cm4gc3RhdHVzOwogCiAjaWZkZWYgT1BF
TlNTTAotICBzdGF0dXMgPSBzcnRwX2NyZWF0ZShzcnRwX3NlbmRfYWVzX2djbSwgJnBvbGljeV9h
ZXNfZ2NtKTsKLSAgaWYgKHN0YXR1cykKLSAgICByZXR1cm4gc3RhdHVzOworICAgIHN0YXR1cyA9
IHNydHBfY3JlYXRlKHNydHBfc2VuZF9hZXNfZ2NtLCAmcG9saWN5X2Flc19nY20pOworICAgIGlm
IChzdGF0dXMpCisgICAgICAgIHJldHVybiBzdGF0dXM7CiAKLSAgc3RhdHVzID0gc3J0cF9jcmVh
dGUoc3J0cF9zZW5kX2Flc19nY21fbWtpLCAmcG9saWN5X2Flc19nY21fbWtpKTsKLSAgaWYgKHN0
YXR1cykKLSAgICByZXR1cm4gc3RhdHVzOwotI2VuZGlmIC8vT1BFTlNTTAorICAgIHN0YXR1cyA9
IHNydHBfY3JlYXRlKHNydHBfc2VuZF9hZXNfZ2NtX21raSwgJnBvbGljeV9hZXNfZ2NtX21raSk7
CisgICAgaWYgKHN0YXR1cykKKyAgICAgICAgcmV0dXJuIHN0YXR1czsKKyNlbmRpZiAvLyBPUEVO
U1NMCiAKLSAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKKyAgICByZXR1cm4gc3J0cF9lcnJf
c3RhdHVzX29rOwogfQogCi1zcnRwX2Vycl9zdGF0dXNfdAotc3J0cF90ZXN0X3Byb3RlY3RfdHJh
aWxlcl9sZW5ndGgoKSB7Ci0KLSAgc3J0cF90IHNydHBfc2VuZDsKLSAgc3J0cF90IHNydHBfc2Vu
ZF9ta2k7Ci0gIHNydHBfdCBzcnRwX3NlbmRfYWVzX2djbTsKLSAgc3J0cF90IHNydHBfc2VuZF9h
ZXNfZ2NtX21raTsKLSAgdWludDMyX3QgbGVuZ3RoID0gMDsKLSAgc3J0cF9lcnJfc3RhdHVzX3Qg
c3RhdHVzOworc3J0cF9lcnJfc3RhdHVzX3Qgc3J0cF90ZXN0X3Byb3RlY3RfdHJhaWxlcl9sZW5n
dGgoKQoreworICAgIHNydHBfdCBzcnRwX3NlbmQ7CisgICAgc3J0cF90IHNydHBfc2VuZF9ta2k7
CisgICAgc3J0cF90IHNydHBfc2VuZF9hZXNfZ2NtOworICAgIHNydHBfdCBzcnRwX3NlbmRfYWVz
X2djbV9ta2k7CisgICAgdWludDMyX3QgbGVuZ3RoID0gMDsKKyAgICBzcnRwX2Vycl9zdGF0dXNf
dCBzdGF0dXM7CiAKLSAgc3J0cF90ZXN0X3NldHVwX3Byb3RlY3RfdHJhaWxlcl9zdHJlYW1zKCZz
cnRwX3NlbmQsICZzcnRwX3NlbmRfbWtpLAotCQkJCQkgICZzcnRwX3NlbmRfYWVzX2djbSwgJnNy
dHBfc2VuZF9hZXNfZ2NtX21raSk7CisgICAgc3J0cF90ZXN0X3NldHVwX3Byb3RlY3RfdHJhaWxl
cl9zdHJlYW1zKAorICAgICAgICAmc3J0cF9zZW5kLCAmc3J0cF9zZW5kX21raSwgJnNydHBfc2Vu
ZF9hZXNfZ2NtLCAmc3J0cF9zZW5kX2Flc19nY21fbWtpKTsKIAotICBzdGF0dXMgPSBzcnRwX2dl
dF9wcm90ZWN0X3RyYWlsZXJfbGVuZ3RoKHNydHBfc2VuZCwgMCwgMCwgJmxlbmd0aCk7Ci0gIGlm
IChzdGF0dXMpCi0gICAgcmV0dXJuIHN0YXR1czsKKyAgICBzdGF0dXMgPSBzcnRwX2dldF9wcm90
ZWN0X3RyYWlsZXJfbGVuZ3RoKHNydHBfc2VuZCwgMCwgMCwgJmxlbmd0aCk7CisgICAgaWYgKHN0
YXR1cykKKyAgICAgICAgcmV0dXJuIHN0YXR1czsKIAotICAvKiAgVEFHIExlbmd0aDogMTAgYnl0
ZXMgKi8KLSAgaWYgKGxlbmd0aCAhPSAxMCkKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2Zh
aWw7CisgICAgLyogIFRBRyBMZW5ndGg6IDEwIGJ5dGVzICovCisgICAgaWYgKGxlbmd0aCAhPSAx
MCkKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19mYWlsOwogCi0gIHN0YXR1cyA9IHNy
dHBfZ2V0X3Byb3RlY3RfdHJhaWxlcl9sZW5ndGgoc3J0cF9zZW5kX21raSwgMSwgMSwgJmxlbmd0
aCk7Ci0gIGlmIChzdGF0dXMpCi0gICAgcmV0dXJuIHN0YXR1czsKKyAgICBzdGF0dXMgPSBzcnRw
X2dldF9wcm90ZWN0X3RyYWlsZXJfbGVuZ3RoKHNydHBfc2VuZF9ta2ksIDEsIDEsICZsZW5ndGgp
OworICAgIGlmIChzdGF0dXMpCisgICAgICAgIHJldHVybiBzdGF0dXM7CiAKLSAgLyogIFRBRyBM
ZW5ndGg6IDEwIGJ5dGVzICsgTUtJIGxlbmd0aDogNCBieXRlcyovCi0gIGlmIChsZW5ndGggIT0g
MTQpCi0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19mYWlsOworICAgIC8qICBUQUcgTGVuZ3Ro
OiAxMCBieXRlcyArIE1LSSBsZW5ndGg6IDQgYnl0ZXMqLworICAgIGlmIChsZW5ndGggIT0gMTQp
CisgICAgICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfZmFpbDsKIAogI2lmZGVmIE9QRU5TU0wK
LSAgc3RhdHVzID0gc3J0cF9nZXRfcHJvdGVjdF90cmFpbGVyX2xlbmd0aChzcnRwX3NlbmRfYWVz
X2djbSwgMCwgMCwgJmxlbmd0aCk7Ci0gIGlmIChzdGF0dXMpCi0gICAgcmV0dXJuIHN0YXR1czsK
KyAgICBzdGF0dXMgPSBzcnRwX2dldF9wcm90ZWN0X3RyYWlsZXJfbGVuZ3RoKHNydHBfc2VuZF9h
ZXNfZ2NtLCAwLCAwLCAmbGVuZ3RoKTsKKyAgICBpZiAoc3RhdHVzKQorICAgICAgICByZXR1cm4g
c3RhdHVzOwogCi0gIC8qICBUQUcgTGVuZ3RoOiAxNiBieXRlcyAqLwotICBpZiAobGVuZ3RoICE9
IDE2KQotICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfZmFpbDsKKyAgICAvKiAgVEFHIExlbmd0
aDogMTYgYnl0ZXMgKi8KKyAgICBpZiAobGVuZ3RoICE9IDE2KQorICAgICAgICByZXR1cm4gc3J0
cF9lcnJfc3RhdHVzX2ZhaWw7CiAKKyAgICBzdGF0dXMgPQorICAgICAgICBzcnRwX2dldF9wcm90
ZWN0X3RyYWlsZXJfbGVuZ3RoKHNydHBfc2VuZF9hZXNfZ2NtX21raSwgMSwgMSwgJmxlbmd0aCk7
CisgICAgaWYgKHN0YXR1cykKKyAgICAgICAgcmV0dXJuIHN0YXR1czsKIAotICBzdGF0dXMgPSBz
cnRwX2dldF9wcm90ZWN0X3RyYWlsZXJfbGVuZ3RoKHNydHBfc2VuZF9hZXNfZ2NtX21raSwgMSwg
MSwgJmxlbmd0aCk7Ci0gIGlmIChzdGF0dXMpCi0gICAgcmV0dXJuIHN0YXR1czsKKyAgICAvKiAg
VEFHIExlbmd0aDogMTYgYnl0ZXMgKyBNS0kgbGVuZ3RoOiA0IGJ5dGVzKi8KKyAgICBpZiAobGVu
Z3RoICE9IDIwKQorICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7CisjZW5kaWYg
Ly8gT1BFTlNTTAogCi0gIC8qICBUQUcgTGVuZ3RoOiAxNiBieXRlcyArIE1LSSBsZW5ndGg6IDQg
Ynl0ZXMqLwotICBpZiAobGVuZ3RoICE9IDIwKQotICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNf
ZmFpbDsKKyAgICBzcnRwX2RlYWxsb2Moc3J0cF9zZW5kKTsKKyAgICBzcnRwX2RlYWxsb2Moc3J0
cF9zZW5kX21raSk7CisjaWZkZWYgT1BFTlNTTAorICAgIHNydHBfZGVhbGxvYyhzcnRwX3NlbmRf
YWVzX2djbSk7CisgICAgc3J0cF9kZWFsbG9jKHNydHBfc2VuZF9hZXNfZ2NtX21raSk7CisjZW5k
aWYKIAotI2VuZGlmIC8vT1BFTlNTTAotICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOworICAg
IHJldHVybiBzcnRwX2Vycl9zdGF0dXNfb2s7CiB9CiAKLXNydHBfZXJyX3N0YXR1c190Ci1zcnRw
X3Rlc3RfcHJvdGVjdF9ydGNwX3RyYWlsZXJfbGVuZ3RoKCkgewotCi0gIHNydHBfdCBzcnRwX3Nl
bmQ7Ci0gIHNydHBfdCBzcnRwX3NlbmRfbWtpOwotICBzcnRwX3Qgc3J0cF9zZW5kX2Flc19nY207
Ci0gIHNydHBfdCBzcnRwX3NlbmRfYWVzX2djbV9ta2k7Ci0gIHVpbnQzMl90IGxlbmd0aCA9IDA7
Ci0gIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKK3NydHBfZXJyX3N0YXR1c190IHNydHBfdGVz
dF9wcm90ZWN0X3J0Y3BfdHJhaWxlcl9sZW5ndGgoKQoreworICAgIHNydHBfdCBzcnRwX3NlbmQ7
CisgICAgc3J0cF90IHNydHBfc2VuZF9ta2k7CisgICAgc3J0cF90IHNydHBfc2VuZF9hZXNfZ2Nt
OworICAgIHNydHBfdCBzcnRwX3NlbmRfYWVzX2djbV9ta2k7CisgICAgdWludDMyX3QgbGVuZ3Ro
ID0gMDsKKyAgICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7CiAKLSAgc3J0cF90ZXN0X3NldHVw
X3Byb3RlY3RfdHJhaWxlcl9zdHJlYW1zKCZzcnRwX3NlbmQsICZzcnRwX3NlbmRfbWtpLAotCQkJ
CQkgICZzcnRwX3NlbmRfYWVzX2djbSwgJnNydHBfc2VuZF9hZXNfZ2NtX21raSk7CisgICAgc3J0
cF90ZXN0X3NldHVwX3Byb3RlY3RfdHJhaWxlcl9zdHJlYW1zKAorICAgICAgICAmc3J0cF9zZW5k
LCAmc3J0cF9zZW5kX21raSwgJnNydHBfc2VuZF9hZXNfZ2NtLCAmc3J0cF9zZW5kX2Flc19nY21f
bWtpKTsKIAotICBzdGF0dXMgPSBzcnRwX2dldF9wcm90ZWN0X3J0Y3BfdHJhaWxlcl9sZW5ndGgo
c3J0cF9zZW5kLCAwLCAwLCAmbGVuZ3RoKTsKLSAgaWYgKHN0YXR1cykKLSAgICByZXR1cm4gc3Rh
dHVzOworICAgIHN0YXR1cyA9IHNydHBfZ2V0X3Byb3RlY3RfcnRjcF90cmFpbGVyX2xlbmd0aChz
cnRwX3NlbmQsIDAsIDAsICZsZW5ndGgpOworICAgIGlmIChzdGF0dXMpCisgICAgICAgIHJldHVy
biBzdGF0dXM7CiAKLSAgLyogIFRBRyBMZW5ndGg6IDEwIGJ5dGVzICsgU1JUQ1AgVHJhaWxlciA0
IGJ5dGVzKi8KLSAgaWYgKGxlbmd0aCAhPSAxNCkKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVz
X2ZhaWw7CisgICAgLyogIFRBRyBMZW5ndGg6IDEwIGJ5dGVzICsgU1JUQ1AgVHJhaWxlciA0IGJ5
dGVzKi8KKyAgICBpZiAobGVuZ3RoICE9IDE0KQorICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3Rh
dHVzX2ZhaWw7CiAKLSAgc3RhdHVzID0gc3J0cF9nZXRfcHJvdGVjdF9ydGNwX3RyYWlsZXJfbGVu
Z3RoKHNydHBfc2VuZF9ta2ksIDEsIDEsICZsZW5ndGgpOwotICBpZiAoc3RhdHVzKQotICAgIHJl
dHVybiBzdGF0dXM7CisgICAgc3RhdHVzID0gc3J0cF9nZXRfcHJvdGVjdF9ydGNwX3RyYWlsZXJf
bGVuZ3RoKHNydHBfc2VuZF9ta2ksIDEsIDEsICZsZW5ndGgpOworICAgIGlmIChzdGF0dXMpCisg
ICAgICAgIHJldHVybiBzdGF0dXM7CiAKLSAgLyogIFRBRyBMZW5ndGg6IDEwIGJ5dGVzICsgU1JU
Q1AgVHJhaWxlciA0IGJ5dGVzICsgTUtJIDQgYnl0ZXMqLwotICBpZiAobGVuZ3RoICE9IDE4KQot
ICAgIHJldHVybiBzcnRwX2Vycl9zdGF0dXNfZmFpbDsKKyAgICAvKiAgVEFHIExlbmd0aDogMTAg
Ynl0ZXMgKyBTUlRDUCBUcmFpbGVyIDQgYnl0ZXMgKyBNS0kgNCBieXRlcyovCisgICAgaWYgKGxl
bmd0aCAhPSAxOCkKKyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19mYWlsOwogCiAjaWZk
ZWYgT1BFTlNTTAotICBzdGF0dXMgPSBzcnRwX2dldF9wcm90ZWN0X3J0Y3BfdHJhaWxlcl9sZW5n
dGgoc3J0cF9zZW5kX2Flc19nY20sIDAsIDAsICZsZW5ndGgpOwotICBpZiAoc3RhdHVzKQotICAg
IHJldHVybiBzdGF0dXM7CisgICAgc3RhdHVzID0KKyAgICAgICAgc3J0cF9nZXRfcHJvdGVjdF9y
dGNwX3RyYWlsZXJfbGVuZ3RoKHNydHBfc2VuZF9hZXNfZ2NtLCAwLCAwLCAmbGVuZ3RoKTsKKyAg
ICBpZiAoc3RhdHVzKQorICAgICAgICByZXR1cm4gc3RhdHVzOwogCi0gIC8qICBUQUcgTGVuZ3Ro
OiAxNiBieXRlcyArIFNSVENQIFRyYWlsZXIgNCBieXRlcyovCi0gIGlmIChsZW5ndGggIT0gMjAp
Ci0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19mYWlsOworICAgIC8qICBUQUcgTGVuZ3RoOiAx
NiBieXRlcyArIFNSVENQIFRyYWlsZXIgNCBieXRlcyovCisgICAgaWYgKGxlbmd0aCAhPSAyMCkK
KyAgICAgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19mYWlsOwogCisgICAgc3RhdHVzID0gc3J0
cF9nZXRfcHJvdGVjdF9ydGNwX3RyYWlsZXJfbGVuZ3RoKHNydHBfc2VuZF9hZXNfZ2NtX21raSwg
MSwgMSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Jmxlbmd0aCk7CisgICAgaWYgKHN0YXR1cykKKyAgICAgICAgcmV0dXJuIHN0YXR1czsKIAotICBz
dGF0dXMgPSBzcnRwX2dldF9wcm90ZWN0X3J0Y3BfdHJhaWxlcl9sZW5ndGgoc3J0cF9zZW5kX2Fl
c19nY21fbWtpLCAxLCAxLCAmbGVuZ3RoKTsKLSAgaWYgKHN0YXR1cykKLSAgICByZXR1cm4gc3Rh
dHVzOworICAgIC8qICBUQUcgTGVuZ3RoOiAxNiBieXRlcyArIFNSVENQIFRyYWlsZXIgNCBieXRl
cyArIE1LSSA0IGJ5dGVzKi8KKyAgICBpZiAobGVuZ3RoICE9IDI0KQorICAgICAgICByZXR1cm4g
c3J0cF9lcnJfc3RhdHVzX2ZhaWw7CisjZW5kaWYgLy8gT1BFTlNTTAogCi0gIC8qICBUQUcgTGVu
Z3RoOiAxNiBieXRlcyArIFNSVENQIFRyYWlsZXIgNCBieXRlcyArIE1LSSA0IGJ5dGVzKi8KLSAg
aWYgKGxlbmd0aCAhPSAyNCkKLSAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7CisgICAg
c3J0cF9kZWFsbG9jKHNydHBfc2VuZCk7CisgICAgc3J0cF9kZWFsbG9jKHNydHBfc2VuZF9ta2kp
OworI2lmZGVmIE9QRU5TU0wKKyAgICBzcnRwX2RlYWxsb2Moc3J0cF9zZW5kX2Flc19nY20pOwor
ICAgIHNydHBfZGVhbGxvYyhzcnRwX3NlbmRfYWVzX2djbV9ta2kpOworI2VuZGlmCiAKLSNlbmRp
ZiAvL09QRU5TU0wKLSAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKKyAgICByZXR1cm4gc3J0
cF9lcnJfc3RhdHVzX29rOwogfQogCi1zcnRwX2Vycl9zdGF0dXNfdAotc3J0cF90ZXN0X2dldF9y
b2MoKSB7Ci0gIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKLSAgc3J0cF9wb2xpY3lfdCBwb2xp
Y3k7Ci0gIHNydHBfdCBzZXNzaW9uOwotICBzcnRwX2hkcl90ICpwa3Q7Ci0gIHVpbnQzMl90IGk7
Ci0gIHVpbnQzMl90IHJvYzsKLSAgdWludDMyX3QgdHM7Ci0gIHVpbnQxNl90IHNlcTsKLQotICBp
bnQgbXNnX2xlbl9vY3RldHMgPSAzMjsKLSAgaW50IHByb3RlY3RlZF9tc2dfbGVuX29jdGV0czsK
LQotICBtZW1zZXQoJnBvbGljeSwgMCwgc2l6ZW9mKHBvbGljeSkpOwotICBzcnRwX2NyeXB0b19w
b2xpY3lfc2V0X3J0cF9kZWZhdWx0KCZwb2xpY3kucnRwKTsKLSAgc3J0cF9jcnlwdG9fcG9saWN5
X3NldF9ydGNwX2RlZmF1bHQoJnBvbGljeS5ydGNwKTsKLSAgcG9saWN5LnNzcmMudHlwZSAgPSBz
c3JjX3NwZWNpZmljOwotICBwb2xpY3kuc3NyYy52YWx1ZSA9IDB4Y2FmZWJhYmU7Ci0gIHBvbGlj
eS5rZXkgPSB0ZXN0X2tleTsKLSAgcG9saWN5LndpbmRvd19zaXplID0gMTI4OwotCi0gIC8qIENy
ZWF0ZSBhIHNlbmRlciBzZXNzaW9uICovCi0gIHN0YXR1cyA9IHNydHBfY3JlYXRlKCZzZXNzaW9u
LCAmcG9saWN5KTsKLSAgaWYgKHN0YXR1cykgewotICAgIHJldHVybiBzdGF0dXM7Ci0gIH0KLQot
ICAvKiBTZXQgc3RhcnQgc2VxdWVuY2Ugc28gd2Ugcm9sbCBvdmVyICovCi0gIHNlcSA9IDY1NTM1
OwotICB0cyA9IDA7Ci0KLSAgZm9yIChpID0gMDsgaSA8IDI7IGkrKykgewotICAgIHBrdCA9IHNy
dHBfY3JlYXRlX3Rlc3RfcGFja2V0X2V4dGVuZGVkKG1zZ19sZW5fb2N0ZXRzLCBwb2xpY3kuc3Ny
Yy52YWx1ZSwgc2VxLCB0cyk7Ci0gICAgcHJvdGVjdGVkX21zZ19sZW5fb2N0ZXRzID0gbXNnX2xl
bl9vY3RldHM7Ci0gICAgc3RhdHVzID0gc3J0cF9wcm90ZWN0KHNlc3Npb24sIHBrdCwgJnByb3Rl
Y3RlZF9tc2dfbGVuX29jdGV0cyk7Ci0gICAgZnJlZShwa3QpOworc3J0cF9lcnJfc3RhdHVzX3Qg
c3J0cF90ZXN0X2dldF9yb2MoKQoreworICAgIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKKyAg
ICBzcnRwX3BvbGljeV90IHBvbGljeTsKKyAgICBzcnRwX3Qgc2Vzc2lvbjsKKyAgICBzcnRwX2hk
cl90ICpwa3Q7CisgICAgdWludDMyX3QgaTsKKyAgICB1aW50MzJfdCByb2M7CisgICAgdWludDMy
X3QgdHM7CisgICAgdWludDE2X3Qgc2VxOworCisgICAgaW50IG1zZ19sZW5fb2N0ZXRzID0gMzI7
CisgICAgaW50IHByb3RlY3RlZF9tc2dfbGVuX29jdGV0czsKKworICAgIG1lbXNldCgmcG9saWN5
LCAwLCBzaXplb2YocG9saWN5KSk7CisgICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9ydHBfZGVm
YXVsdCgmcG9saWN5LnJ0cCk7CisgICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9ydGNwX2RlZmF1
bHQoJnBvbGljeS5ydGNwKTsKKyAgICBwb2xpY3kuc3NyYy50eXBlID0gc3NyY19zcGVjaWZpYzsK
KyAgICBwb2xpY3kuc3NyYy52YWx1ZSA9IDB4Y2FmZWJhYmU7CisgICAgcG9saWN5LmtleSA9IHRl
c3Rfa2V5OworICAgIHBvbGljeS53aW5kb3dfc2l6ZSA9IDEyODsKKworICAgIC8qIENyZWF0ZSBh
IHNlbmRlciBzZXNzaW9uICovCisgICAgc3RhdHVzID0gc3J0cF9jcmVhdGUoJnNlc3Npb24sICZw
b2xpY3kpOwogICAgIGlmIChzdGF0dXMpIHsKLSAgICAgIHJldHVybiBzdGF0dXM7CisgICAgICAg
IHJldHVybiBzdGF0dXM7CiAgICAgfQogCi0gICAgc3RhdHVzID0gc3J0cF9nZXRfc3RyZWFtX3Jv
YyhzZXNzaW9uLCBwb2xpY3kuc3NyYy52YWx1ZSwgJnJvYyk7CisgICAgLyogU2V0IHN0YXJ0IHNl
cXVlbmNlIHNvIHdlIHJvbGwgb3ZlciAqLworICAgIHNlcSA9IDY1NTM1OworICAgIHRzID0gMDsK
KworICAgIGZvciAoaSA9IDA7IGkgPCAyOyBpKyspIHsKKyAgICAgICAgcGt0ID0gc3J0cF9jcmVh
dGVfdGVzdF9wYWNrZXRfZXh0ZW5kZWQobXNnX2xlbl9vY3RldHMsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvbGljeS5zc3JjLnZhbHVlLCBzZXEsIHRz
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmcHJvdGVj
dGVkX21zZ19sZW5fb2N0ZXRzKTsKKyAgICAgICAgc3RhdHVzID0gc3J0cF9wcm90ZWN0KHNlc3Np
b24sIHBrdCwgJnByb3RlY3RlZF9tc2dfbGVuX29jdGV0cyk7CisgICAgICAgIGZyZWUocGt0KTsK
KyAgICAgICAgaWYgKHN0YXR1cykgeworICAgICAgICAgICAgcmV0dXJuIHN0YXR1czsKKyAgICAg
ICAgfQorCisgICAgICAgIHN0YXR1cyA9IHNydHBfZ2V0X3N0cmVhbV9yb2Moc2Vzc2lvbiwgcG9s
aWN5LnNzcmMudmFsdWUsICZyb2MpOworICAgICAgICBpZiAoc3RhdHVzKSB7CisgICAgICAgICAg
ICByZXR1cm4gc3RhdHVzOworICAgICAgICB9CisKKyAgICAgICAgaWYgKHJvYyAhPSBpKSB7Cisg
ICAgICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7CisgICAgICAgIH0KKworICAg
ICAgICBzZXErKzsKKyAgICAgICAgdHMrKzsKKyAgICB9CisKKyAgICAvKiBDbGVhbnVwICovCisg
ICAgc3RhdHVzID0gc3J0cF9kZWFsbG9jKHNlc3Npb24pOworICAgIGlmIChzdGF0dXMpIHsKKyAg
ICAgICAgcmV0dXJuIHN0YXR1czsKKyAgICB9CisKKyAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVz
X29rOworfQorCitzdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3QgdGVzdF9zZXRfcmVjZWl2ZXJfcm9j
KHVpbnQzMl90IHBhY2tldHMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHVpbnQzMl90IHJvY190b19zZXQpCit7CisgICAgc3J0cF9lcnJfc3RhdHVzX3Qg
c3RhdHVzOworCisgICAgc3J0cF9wb2xpY3lfdCBzZW5kZXJfcG9saWN5OworICAgIHNydHBfdCBz
ZW5kZXJfc2Vzc2lvbjsKKworICAgIHNydHBfcG9saWN5X3QgcmVjZWl2ZXJfcG9saWN5OworICAg
IHNydHBfdCByZWNlaXZlcl9zZXNzaW9uOworCisgICAgc3J0cF9oZHJfdCAqcGt0XzE7CisgICAg
dW5zaWduZWQgY2hhciAqcmVjdl9wa3RfMTsKKworICAgIHNydHBfaGRyX3QgKnBrdF8yOworICAg
IHVuc2lnbmVkIGNoYXIgKnJlY3ZfcGt0XzI7CisKKyAgICB1aW50MzJfdCBpOworICAgIHVpbnQz
Ml90IHRzOworICAgIHVpbnQxNl90IHNlcTsKKworICAgIGludCBtc2dfbGVuX29jdGV0cyA9IDMy
OworICAgIGludCBwcm90ZWN0ZWRfbXNnX2xlbl9vY3RldHNfMTsKKyAgICBpbnQgcHJvdGVjdGVk
X21zZ19sZW5fb2N0ZXRzXzI7CisKKyAgICAvKiBDcmVhdGUgc2VuZGVyICovCisgICAgbWVtc2V0
KCZzZW5kZXJfcG9saWN5LCAwLCBzaXplb2Yoc2VuZGVyX3BvbGljeSkpOworICAgIHNydHBfY3J5
cHRvX3BvbGljeV9zZXRfcnRwX2RlZmF1bHQoJnNlbmRlcl9wb2xpY3kucnRwKTsKKyAgICBzcnRw
X2NyeXB0b19wb2xpY3lfc2V0X3J0Y3BfZGVmYXVsdCgmc2VuZGVyX3BvbGljeS5ydGNwKTsKKyAg
ICBzZW5kZXJfcG9saWN5LnNzcmMudHlwZSA9IHNzcmNfc3BlY2lmaWM7CisgICAgc2VuZGVyX3Bv
bGljeS5zc3JjLnZhbHVlID0gMHhjYWZlYmFiZTsKKyAgICBzZW5kZXJfcG9saWN5LmtleSA9IHRl
c3Rfa2V5OworICAgIHNlbmRlcl9wb2xpY3kud2luZG93X3NpemUgPSAxMjg7CisKKyAgICBzdGF0
dXMgPSBzcnRwX2NyZWF0ZSgmc2VuZGVyX3Nlc3Npb24sICZzZW5kZXJfcG9saWN5KTsKICAgICBp
ZiAoc3RhdHVzKSB7Ci0gICAgICByZXR1cm4gc3RhdHVzOworICAgICAgICByZXR1cm4gc3RhdHVz
OwogICAgIH0KIAotICAgIGlmIChyb2MgIT0gaSkgewotICAgICAgcmV0dXJuIHNydHBfZXJyX3N0
YXR1c19mYWlsOworICAgIC8qIENyZWF0ZSBhbmQgcHJvdGVjdCBwYWNrZXRzICovCisgICAgc2Vx
ID0gMDsKKyAgICB0cyA9IDA7CisgICAgZm9yIChpID0gMDsgaSA8IHBhY2tldHM7IGkrKykgewor
ICAgICAgICBzcnRwX2hkcl90ICp0bXBfcGt0OworICAgICAgICBpbnQgdG1wX2xlbjsKKworICAg
ICAgICB0bXBfcGt0ID0gc3J0cF9jcmVhdGVfdGVzdF9wYWNrZXRfZXh0ZW5kZWQoCisgICAgICAg
ICAgICBtc2dfbGVuX29jdGV0cywgc2VuZGVyX3BvbGljeS5zc3JjLnZhbHVlLCBzZXEsIHRzLCAm
dG1wX2xlbik7CisgICAgICAgIHN0YXR1cyA9IHNydHBfcHJvdGVjdChzZW5kZXJfc2Vzc2lvbiwg
dG1wX3BrdCwgJnRtcF9sZW4pOworICAgICAgICBmcmVlKHRtcF9wa3QpOworICAgICAgICBpZiAo
c3RhdHVzKSB7CisgICAgICAgICAgICByZXR1cm4gc3RhdHVzOworICAgICAgICB9CisgICAgICAg
IHNlcSsrOworICAgICAgICB0cysrOwogICAgIH0KIAorICAgIC8qIENyZWF0ZSB0aGUgZmlyc3Qg
cGFja2V0IHRvIGRlY3J5cHQgYW5kIHRlc3QgZm9yIFJPQyBjaGFuZ2UgKi8KKyAgICBwa3RfMSA9
IHNydHBfY3JlYXRlX3Rlc3RfcGFja2V0X2V4dGVuZGVkKG1zZ19sZW5fb2N0ZXRzLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VuZGVyX3BvbGljeS5zc3Jj
LnZhbHVlLCBzZXEsIHRzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgJnByb3RlY3RlZF9tc2dfbGVuX29jdGV0c18xKTsKKyAgICBzdGF0dXMgPSBzcnRwX3By
b3RlY3Qoc2VuZGVyX3Nlc3Npb24sIHBrdF8xLCAmcHJvdGVjdGVkX21zZ19sZW5fb2N0ZXRzXzEp
OworICAgIGlmIChzdGF0dXMpIHsKKyAgICAgICAgcmV0dXJuIHN0YXR1czsKKyAgICB9CisKKyAg
ICAvKiBDcmVhdGUgdGhlIHNlY29uZCBwYWNrZXQgdG8gZGVjcnlwdCBhbmQgdGVzdCBmb3IgUk9D
IGNoYW5nZSAqLwogICAgIHNlcSsrOwogICAgIHRzKys7Ci0gIH0KKyAgICBwa3RfMiA9IHNydHBf
Y3JlYXRlX3Rlc3RfcGFja2V0X2V4dGVuZGVkKG1zZ19sZW5fb2N0ZXRzLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VuZGVyX3BvbGljeS5zc3JjLnZhbHVl
LCBzZXEsIHRzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
JnByb3RlY3RlZF9tc2dfbGVuX29jdGV0c18yKTsKKyAgICBzdGF0dXMgPSBzcnRwX3Byb3RlY3Qo
c2VuZGVyX3Nlc3Npb24sIHBrdF8yLCAmcHJvdGVjdGVkX21zZ19sZW5fb2N0ZXRzXzIpOworICAg
IGlmIChzdGF0dXMpIHsKKyAgICAgICAgcmV0dXJuIHN0YXR1czsKKyAgICB9CiAKLSAgLyogQ2xl
YW51cCAqLwotICBzdGF0dXMgPSBzcnRwX2RlYWxsb2Moc2Vzc2lvbik7Ci0gIGlmIChzdGF0dXMp
IHsKLSAgICByZXR1cm4gc3RhdHVzOwotICB9CisgICAgLyogQ3JlYXRlIHRoZSByZWNlaXZlciAq
LworICAgIG1lbXNldCgmcmVjZWl2ZXJfcG9saWN5LCAwLCBzaXplb2YocmVjZWl2ZXJfcG9saWN5
KSk7CisgICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9ydHBfZGVmYXVsdCgmcmVjZWl2ZXJfcG9s
aWN5LnJ0cCk7CisgICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9ydGNwX2RlZmF1bHQoJnJlY2Vp
dmVyX3BvbGljeS5ydGNwKTsKKyAgICByZWNlaXZlcl9wb2xpY3kuc3NyYy50eXBlID0gc3NyY19z
cGVjaWZpYzsKKyAgICByZWNlaXZlcl9wb2xpY3kuc3NyYy52YWx1ZSA9IHNlbmRlcl9wb2xpY3ku
c3NyYy52YWx1ZTsKKyAgICByZWNlaXZlcl9wb2xpY3kua2V5ID0gdGVzdF9rZXk7CisgICAgcmVj
ZWl2ZXJfcG9saWN5LndpbmRvd19zaXplID0gMTI4OworCisgICAgc3RhdHVzID0gc3J0cF9jcmVh
dGUoJnJlY2VpdmVyX3Nlc3Npb24sICZyZWNlaXZlcl9wb2xpY3kpOworICAgIGlmIChzdGF0dXMp
IHsKKyAgICAgICAgcmV0dXJuIHN0YXR1czsKKyAgICB9CisKKyAgICAvKiBNYWtlIGEgY29weSBv
ZiB0aGUgZmlyc3Qgc2VudCBwcm90ZWN0ZWQgcGFja2V0ICovCisgICAgcmVjdl9wa3RfMSA9IG1h
bGxvYyhwcm90ZWN0ZWRfbXNnX2xlbl9vY3RldHNfMSk7CisgICAgaWYgKHJlY3ZfcGt0XzEgPT0g
TlVMTCkgeworICAgICAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX2ZhaWw7CisgICAgfQorICAg
IG1lbWNweShyZWN2X3BrdF8xLCBwa3RfMSwgcHJvdGVjdGVkX21zZ19sZW5fb2N0ZXRzXzEpOwor
CisgICAgLyogTWFrZSBhIGNvcHkgb2YgdGhlIHNlY29uZCBzZW50IHByb3RlY3RlZCBwYWNrZXQg
Ki8KKyAgICByZWN2X3BrdF8yID0gbWFsbG9jKHByb3RlY3RlZF9tc2dfbGVuX29jdGV0c18yKTsK
KyAgICBpZiAocmVjdl9wa3RfMiA9PSBOVUxMKSB7CisgICAgICAgIHJldHVybiBzcnRwX2Vycl9z
dGF0dXNfZmFpbDsKKyAgICB9CisgICAgbWVtY3B5KHJlY3ZfcGt0XzIsIHBrdF8yLCBwcm90ZWN0
ZWRfbXNnX2xlbl9vY3RldHNfMik7CisKKyAgICAvKiBTZXQgdGhlIFJPQyB0byB0aGUgd2FudGVk
IHZhbHVlICovCisgICAgc3RhdHVzID0gc3J0cF9zZXRfc3RyZWFtX3JvYyhyZWNlaXZlcl9zZXNz
aW9uLCByZWNlaXZlcl9wb2xpY3kuc3NyYy52YWx1ZSwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHJvY190b19zZXQpOworICAgIGlmIChzdGF0dXMpIHsKKyAgICAgICAgcmV0dXJu
IHN0YXR1czsKKyAgICB9CiAKLSAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKKyAgICAvKiBV
bnByb3RlY3QgdGhlIGZpcnN0IHBhY2tldCAqLworICAgIHN0YXR1cyA9IHNydHBfdW5wcm90ZWN0
KHJlY2VpdmVyX3Nlc3Npb24sIHJlY3ZfcGt0XzEsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgJnByb3RlY3RlZF9tc2dfbGVuX29jdGV0c18xKTsKKyAgICBpZiAoc3RhdHVzKSB7CisgICAg
ICAgIHJldHVybiBzdGF0dXM7CisgICAgfQorCisgICAgLyogVW5wcm90ZWN0IHRoZSBzZWNvbmQg
cGFja2V0ICovCisgICAgc3RhdHVzID0gc3J0cF91bnByb3RlY3QocmVjZWl2ZXJfc2Vzc2lvbiwg
cmVjdl9wa3RfMiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAmcHJvdGVjdGVkX21zZ19s
ZW5fb2N0ZXRzXzIpOworICAgIGlmIChzdGF0dXMpIHsKKyAgICAgICAgcmV0dXJuIHN0YXR1czsK
KyAgICB9CisKKyAgICAvKiBDbGVhbnVwICovCisgICAgc3RhdHVzID0gc3J0cF9kZWFsbG9jKHNl
bmRlcl9zZXNzaW9uKTsKKyAgICBpZiAoc3RhdHVzKSB7CisgICAgICAgIHJldHVybiBzdGF0dXM7
CisgICAgfQorCisgICAgc3RhdHVzID0gc3J0cF9kZWFsbG9jKHJlY2VpdmVyX3Nlc3Npb24pOwor
ICAgIGlmIChzdGF0dXMpIHsKKyAgICAgICAgcmV0dXJuIHN0YXR1czsKKyAgICB9CisKKyAgICBm
cmVlKHBrdF8xKTsKKyAgICBmcmVlKHJlY3ZfcGt0XzEpOworICAgIGZyZWUocGt0XzIpOworICAg
IGZyZWUocmVjdl9wa3RfMik7CisKKyAgICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwogfQog
Ci1zdGF0aWMgc3J0cF9lcnJfc3RhdHVzX3QKLXRlc3Rfc2V0X3JlY2VpdmVyX3JvYyh1aW50MzJf
dCBwYWNrZXRzLCB1aW50MzJfdCByb2NfdG9fc2V0KQorc3RhdGljIHNydHBfZXJyX3N0YXR1c190
IHRlc3Rfc2V0X3NlbmRlcl9yb2ModWludDE2X3Qgc2VxLCB1aW50MzJfdCByb2NfdG9fc2V0KQog
ewotICBzcnRwX2Vycl9zdGF0dXNfdCBzdGF0dXM7CisgICAgc3J0cF9lcnJfc3RhdHVzX3Qgc3Rh
dHVzOworCisgICAgc3J0cF9wb2xpY3lfdCBzZW5kZXJfcG9saWN5OworICAgIHNydHBfdCBzZW5k
ZXJfc2Vzc2lvbjsKKworICAgIHNydHBfcG9saWN5X3QgcmVjZWl2ZXJfcG9saWN5OworICAgIHNy
dHBfdCByZWNlaXZlcl9zZXNzaW9uOwogCi0gIHNydHBfcG9saWN5X3Qgc2VuZGVyX3BvbGljeTsK
LSAgc3J0cF90IHNlbmRlcl9zZXNzaW9uOworICAgIHNydHBfaGRyX3QgKnBrdDsKKyAgICB1bnNp
Z25lZCBjaGFyICpyZWN2X3BrdDsKKworICAgIHVpbnQzMl90IHRzOworCisgICAgaW50IG1zZ19s
ZW5fb2N0ZXRzID0gMzI7CisgICAgaW50IHByb3RlY3RlZF9tc2dfbGVuX29jdGV0czsKKworICAg
IC8qIENyZWF0ZSBzZW5kZXIgKi8KKyAgICBtZW1zZXQoJnNlbmRlcl9wb2xpY3ksIDAsIHNpemVv
ZihzZW5kZXJfcG9saWN5KSk7CisgICAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9ydHBfZGVmYXVs
dCgmc2VuZGVyX3BvbGljeS5ydHApOworICAgIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfcnRjcF9k
ZWZhdWx0KCZzZW5kZXJfcG9saWN5LnJ0Y3ApOworICAgIHNlbmRlcl9wb2xpY3kuc3NyYy50eXBl
ID0gc3NyY19zcGVjaWZpYzsKKyAgICBzZW5kZXJfcG9saWN5LnNzcmMudmFsdWUgPSAweGNhZmVi
YWJlOworICAgIHNlbmRlcl9wb2xpY3kua2V5ID0gdGVzdF9rZXk7CisgICAgc2VuZGVyX3BvbGlj
eS53aW5kb3dfc2l6ZSA9IDEyODsKKworICAgIHN0YXR1cyA9IHNydHBfY3JlYXRlKCZzZW5kZXJf
c2Vzc2lvbiwgJnNlbmRlcl9wb2xpY3kpOworICAgIGlmIChzdGF0dXMpIHsKKyAgICAgICAgcmV0
dXJuIHN0YXR1czsKKyAgICB9CiAKLSAgc3J0cF9wb2xpY3lfdCByZWNlaXZlcl9wb2xpY3k7Ci0g
IHNydHBfdCByZWNlaXZlcl9zZXNzaW9uOworICAgIC8qIFNldCB0aGUgUk9DIGJlZm9yZSBlbmNy
eXB0aW5nIHRoZSBmaXJzdCBwYWNrZXQgKi8KKyAgICBzdGF0dXMgPSBzcnRwX3NldF9zdHJlYW1f
cm9jKHNlbmRlcl9zZXNzaW9uLCBzZW5kZXJfcG9saWN5LnNzcmMudmFsdWUsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICByb2NfdG9fc2V0KTsKKyAgICBpZiAoc3RhdHVzICE9IHNy
dHBfZXJyX3N0YXR1c19vaykgeworICAgICAgICByZXR1cm4gc3RhdHVzOworICAgIH0KIAotICBz
cnRwX2hkcl90ICpwa3RfMTsKLSAgdW5zaWduZWQgY2hhciAqcmVjdl9wa3RfMTsKKyAgICAvKiBD
cmVhdGUgdGhlIHBhY2tldCB0byBkZWNyeXB0ICovCisgICAgdHMgPSAwOworICAgIHBrdCA9IHNy
dHBfY3JlYXRlX3Rlc3RfcGFja2V0X2V4dGVuZGVkKG1zZ19sZW5fb2N0ZXRzLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbmRlcl9wb2xpY3kuc3NyYy52YWx1
ZSwgc2VxLCB0cywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAm
cHJvdGVjdGVkX21zZ19sZW5fb2N0ZXRzKTsKKyAgICBzdGF0dXMgPSBzcnRwX3Byb3RlY3Qoc2Vu
ZGVyX3Nlc3Npb24sIHBrdCwgJnByb3RlY3RlZF9tc2dfbGVuX29jdGV0cyk7CisgICAgaWYgKHN0
YXR1cykgeworICAgICAgICByZXR1cm4gc3RhdHVzOworICAgIH0KIAotICBzcnRwX2hkcl90ICpw
a3RfMjsKLSAgdW5zaWduZWQgY2hhciAqcmVjdl9wa3RfMjsKKyAgICAvKiBDcmVhdGUgdGhlIHJl
Y2VpdmVyICovCisgICAgbWVtc2V0KCZyZWNlaXZlcl9wb2xpY3ksIDAsIHNpemVvZihyZWNlaXZl
cl9wb2xpY3kpKTsKKyAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X3J0cF9kZWZhdWx0KCZyZWNl
aXZlcl9wb2xpY3kucnRwKTsKKyAgICBzcnRwX2NyeXB0b19wb2xpY3lfc2V0X3J0Y3BfZGVmYXVs
dCgmcmVjZWl2ZXJfcG9saWN5LnJ0Y3ApOworICAgIHJlY2VpdmVyX3BvbGljeS5zc3JjLnR5cGUg
PSBzc3JjX3NwZWNpZmljOworICAgIHJlY2VpdmVyX3BvbGljeS5zc3JjLnZhbHVlID0gc2VuZGVy
X3BvbGljeS5zc3JjLnZhbHVlOworICAgIHJlY2VpdmVyX3BvbGljeS5rZXkgPSB0ZXN0X2tleTsK
KyAgICByZWNlaXZlcl9wb2xpY3kud2luZG93X3NpemUgPSAxMjg7CiAKLSAgdWludDMyX3QgaTsK
LSAgdWludDMyX3QgdHM7Ci0gIHVpbnQxNl90IHNlcTsKKyAgICBzdGF0dXMgPSBzcnRwX2NyZWF0
ZSgmcmVjZWl2ZXJfc2Vzc2lvbiwgJnJlY2VpdmVyX3BvbGljeSk7CisgICAgaWYgKHN0YXR1cykg
eworICAgICAgICByZXR1cm4gc3RhdHVzOworICAgIH0KIAotICBpbnQgbXNnX2xlbl9vY3RldHMg
PSAzMjsKLSAgaW50IHByb3RlY3RlZF9tc2dfbGVuX29jdGV0c18xOwotICBpbnQgcHJvdGVjdGVk
X21zZ19sZW5fb2N0ZXRzXzI7CisgICAgLyogTWFrZSBhIGNvcHkgb2YgdGhlIHNlbnQgcHJvdGVj
dGVkIHBhY2tldCAqLworICAgIHJlY3ZfcGt0ID0gbWFsbG9jKHByb3RlY3RlZF9tc2dfbGVuX29j
dGV0cyk7CisgICAgaWYgKHJlY3ZfcGt0ID09IE5VTEwpIHsKKyAgICAgICAgcmV0dXJuIHNydHBf
ZXJyX3N0YXR1c19mYWlsOworICAgIH0KKyAgICBtZW1jcHkocmVjdl9wa3QsIHBrdCwgcHJvdGVj
dGVkX21zZ19sZW5fb2N0ZXRzKTsKIAotICAvKiBDcmVhdGUgc2VuZGVyICovCi0gIG1lbXNldCgm
c2VuZGVyX3BvbGljeSwgMCwgc2l6ZW9mKHNlbmRlcl9wb2xpY3kpKTsKLSAgc3J0cF9jcnlwdG9f
cG9saWN5X3NldF9ydHBfZGVmYXVsdCgmc2VuZGVyX3BvbGljeS5ydHApOwotICBzcnRwX2NyeXB0
b19wb2xpY3lfc2V0X3J0Y3BfZGVmYXVsdCgmc2VuZGVyX3BvbGljeS5ydGNwKTsKLSAgc2VuZGVy
X3BvbGljeS5zc3JjLnR5cGUgID0gc3NyY19zcGVjaWZpYzsKLSAgc2VuZGVyX3BvbGljeS5zc3Jj
LnZhbHVlID0gMHhjYWZlYmFiZTsKLSAgc2VuZGVyX3BvbGljeS5rZXkgPSB0ZXN0X2tleTsKLSAg
c2VuZGVyX3BvbGljeS53aW5kb3dfc2l6ZSA9IDEyODsKKyAgICAvKiBTZXQgdGhlIFJPQyB0byB0
aGUgd2FudGVkIHZhbHVlICovCisgICAgc3RhdHVzID0gc3J0cF9zZXRfc3RyZWFtX3JvYyhyZWNl
aXZlcl9zZXNzaW9uLCByZWNlaXZlcl9wb2xpY3kuc3NyYy52YWx1ZSwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHJvY190b19zZXQpOworICAgIGlmIChzdGF0dXMpIHsKKyAgICAg
ICAgcmV0dXJuIHN0YXR1czsKKyAgICB9CiAKLSAgc3RhdHVzID0gc3J0cF9jcmVhdGUoJnNlbmRl
cl9zZXNzaW9uLCAmc2VuZGVyX3BvbGljeSk7Ci0gIGlmIChzdGF0dXMpIHsKLSAgICByZXR1cm4g
c3RhdHVzOwotICB9CisgICAgc3RhdHVzID0KKyAgICAgICAgc3J0cF91bnByb3RlY3QocmVjZWl2
ZXJfc2Vzc2lvbiwgcmVjdl9wa3QsICZwcm90ZWN0ZWRfbXNnX2xlbl9vY3RldHMpOworICAgIGlm
IChzdGF0dXMpIHsKKyAgICAgICAgcmV0dXJuIHN0YXR1czsKKyAgICB9CiAKLSAgLyogQ3JlYXRl
IGFuZCBwcm90ZWN0IHBhY2tldHMgKi8KLSAgc2VxID0gMDsKLSAgdHMgPSAwOwotICBmb3IgKGkg
PSAwOyBpIDwgcGFja2V0czsgaSsrKSB7Ci0gICAgc3J0cF9oZHJfdCAqdG1wX3BrdDsKLSAgICBp
bnQgdG1wX2xlbjsKKyAgICAvKiBDbGVhbnVwICovCisgICAgc3RhdHVzID0gc3J0cF9kZWFsbG9j
KHNlbmRlcl9zZXNzaW9uKTsKKyAgICBpZiAoc3RhdHVzKSB7CisgICAgICAgIHJldHVybiBzdGF0
dXM7CisgICAgfQogCi0gICAgdG1wX3BrdCA9IHNydHBfY3JlYXRlX3Rlc3RfcGFja2V0X2V4dGVu
ZGVkKG1zZ19sZW5fb2N0ZXRzLCBzZW5kZXJfcG9saWN5LnNzcmMudmFsdWUsIHNlcSwgdHMpOwot
ICAgIHRtcF9sZW4gPSBtc2dfbGVuX29jdGV0czsKLSAgICBzdGF0dXMgPSBzcnRwX3Byb3RlY3Qo
c2VuZGVyX3Nlc3Npb24sIHRtcF9wa3QsICZ0bXBfbGVuKTsKLSAgICBmcmVlKHRtcF9wa3QpOwor
ICAgIHN0YXR1cyA9IHNydHBfZGVhbGxvYyhyZWNlaXZlcl9zZXNzaW9uKTsKICAgICBpZiAoc3Rh
dHVzKSB7Ci0gICAgICByZXR1cm4gc3RhdHVzOworICAgICAgICByZXR1cm4gc3RhdHVzOwogICAg
IH0KLSAgICBzZXErKzsKLSAgICB0cysrOwotICB9Ci0KLSAgLyogQ3JlYXRlIHRoZSBmaXJzdCBw
YWNrZXQgdG8gZGVjcnlwdCBhbmQgdGVzdCBmb3IgUk9DIGNoYW5nZSAqLwotICBwa3RfMSA9IHNy
dHBfY3JlYXRlX3Rlc3RfcGFja2V0X2V4dGVuZGVkKG1zZ19sZW5fb2N0ZXRzLCBzZW5kZXJfcG9s
aWN5LnNzcmMudmFsdWUsIHNlcSwgdHMpOwotICBwcm90ZWN0ZWRfbXNnX2xlbl9vY3RldHNfMSA9
IG1zZ19sZW5fb2N0ZXRzOwotICBzdGF0dXMgPSBzcnRwX3Byb3RlY3Qoc2VuZGVyX3Nlc3Npb24s
IHBrdF8xLCAmcHJvdGVjdGVkX21zZ19sZW5fb2N0ZXRzXzEpOwotICBpZiAoc3RhdHVzKSB7Ci0g
ICAgcmV0dXJuIHN0YXR1czsKLSAgfQotCi0gIC8qIENyZWF0ZSB0aGUgc2Vjb25kIHBhY2tldCB0
byBkZWNyeXB0IGFuZCB0ZXN0IGZvciBST0MgY2hhbmdlICovCi0gIHNlcSsrOwotICB0cysrOwot
ICBwa3RfMiA9IHNydHBfY3JlYXRlX3Rlc3RfcGFja2V0X2V4dGVuZGVkKG1zZ19sZW5fb2N0ZXRz
LCBzZW5kZXJfcG9saWN5LnNzcmMudmFsdWUsIHNlcSwgdHMpOwotICBwcm90ZWN0ZWRfbXNnX2xl
bl9vY3RldHNfMiA9IG1zZ19sZW5fb2N0ZXRzOwotICBzdGF0dXMgPSBzcnRwX3Byb3RlY3Qoc2Vu
ZGVyX3Nlc3Npb24sIHBrdF8yLCAmcHJvdGVjdGVkX21zZ19sZW5fb2N0ZXRzXzIpOwotICBpZiAo
c3RhdHVzKSB7Ci0gICAgcmV0dXJuIHN0YXR1czsKLSAgfQotCi0gIC8qIENyZWF0ZSB0aGUgcmVj
ZWl2ZXIgKi8KLSAgbWVtc2V0KCZyZWNlaXZlcl9wb2xpY3ksIDAsIHNpemVvZihyZWNlaXZlcl9w
b2xpY3kpKTsKLSAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9ydHBfZGVmYXVsdCgmcmVjZWl2ZXJf
cG9saWN5LnJ0cCk7Ci0gIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfcnRjcF9kZWZhdWx0KCZyZWNl
aXZlcl9wb2xpY3kucnRjcCk7Ci0gIHJlY2VpdmVyX3BvbGljeS5zc3JjLnR5cGUgID0gc3NyY19z
cGVjaWZpYzsKLSAgcmVjZWl2ZXJfcG9saWN5LnNzcmMudmFsdWUgPSBzZW5kZXJfcG9saWN5LnNz
cmMudmFsdWU7Ci0gIHJlY2VpdmVyX3BvbGljeS5rZXkgPSB0ZXN0X2tleTsKLSAgcmVjZWl2ZXJf
cG9saWN5LndpbmRvd19zaXplID0gMTI4OwotCi0gIHN0YXR1cyA9IHNydHBfY3JlYXRlKCZyZWNl
aXZlcl9zZXNzaW9uLCAmcmVjZWl2ZXJfcG9saWN5KTsKLSAgaWYgKHN0YXR1cykgewotICAgIHJl
dHVybiBzdGF0dXM7Ci0gIH0KLQotICAvKiBNYWtlIGEgY29weSBvZiB0aGUgZmlyc3Qgc2VudCBw
cm90ZWN0ZWQgcGFja2V0ICovCi0gIHJlY3ZfcGt0XzEgPSBtYWxsb2MocHJvdGVjdGVkX21zZ19s
ZW5fb2N0ZXRzXzEpOwotICBpZiAocmVjdl9wa3RfMSA9PSBOVUxMKSB7Ci0gICAgcmV0dXJuIHNy
dHBfZXJyX3N0YXR1c19mYWlsOwotICB9Ci0gIG1lbWNweShyZWN2X3BrdF8xLCBwa3RfMSwgcHJv
dGVjdGVkX21zZ19sZW5fb2N0ZXRzXzEpOwotCi0gIC8qIE1ha2UgYSBjb3B5IG9mIHRoZSBzZWNv
bmQgc2VudCBwcm90ZWN0ZWQgcGFja2V0ICovCi0gIHJlY3ZfcGt0XzIgPSBtYWxsb2MocHJvdGVj
dGVkX21zZ19sZW5fb2N0ZXRzXzIpOwotICBpZiAocmVjdl9wa3RfMiA9PSBOVUxMKSB7Ci0gICAg
cmV0dXJuIHNydHBfZXJyX3N0YXR1c19mYWlsOwotICB9Ci0gIG1lbWNweShyZWN2X3BrdF8yLCBw
a3RfMiwgcHJvdGVjdGVkX21zZ19sZW5fb2N0ZXRzXzIpOwotCi0gIC8qIFNldCB0aGUgUk9DIHRv
IHRoZSB3YW50ZWQgdmFsdWUgKi8KLSAgc3RhdHVzID0gc3J0cF9zZXRfc3RyZWFtX3JvYyhyZWNl
aXZlcl9zZXNzaW9uLCByZWNlaXZlcl9wb2xpY3kuc3NyYy52YWx1ZSwgcm9jX3RvX3NldCk7Ci0g
IGlmIChzdGF0dXMpIHsKLSAgICByZXR1cm4gc3RhdHVzOwotICB9Ci0KLSAgLyogVW5wcm90ZWN0
IHRoZSBmaXJzdCBwYWNrZXQgKi8KLSAgc3RhdHVzID0gc3J0cF91bnByb3RlY3QocmVjZWl2ZXJf
c2Vzc2lvbiwgcmVjdl9wa3RfMSwgJnByb3RlY3RlZF9tc2dfbGVuX29jdGV0c18xKTsKLSAgaWYg
KHN0YXR1cykgewotICAgIHJldHVybiBzdGF0dXM7Ci0gIH0KLQotICAvKiBVbnByb3RlY3QgdGhl
IHNlY29uZCBwYWNrZXQgKi8KLSAgc3RhdHVzID0gc3J0cF91bnByb3RlY3QocmVjZWl2ZXJfc2Vz
c2lvbiwgcmVjdl9wa3RfMiwgJnByb3RlY3RlZF9tc2dfbGVuX29jdGV0c18yKTsKLSAgaWYgKHN0
YXR1cykgewotICAgIHJldHVybiBzdGF0dXM7Ci0gIH0KLQotICAvKiBDbGVhbnVwICovCi0gIHN0
YXR1cyA9IHNydHBfZGVhbGxvYyhzZW5kZXJfc2Vzc2lvbik7Ci0gIGlmIChzdGF0dXMpIHsKLSAg
ICByZXR1cm4gc3RhdHVzOwotICB9Ci0KLSAgc3RhdHVzID0gc3J0cF9kZWFsbG9jKHJlY2VpdmVy
X3Nlc3Npb24pOwotICBpZiAoc3RhdHVzKSB7Ci0gICAgcmV0dXJuIHN0YXR1czsKLSAgfQotCi0g
IGZyZWUocGt0XzEpOwotICBmcmVlKHJlY3ZfcGt0XzEpOwotICBmcmVlKHBrdF8yKTsKLSAgZnJl
ZShyZWN2X3BrdF8yKTsKLQotICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOworCisgICAgZnJl
ZShwa3QpOworICAgIGZyZWUocmVjdl9wa3QpOworCisgICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1
c19vazsKIH0KIAotc3RhdGljIHNydHBfZXJyX3N0YXR1c190Ci10ZXN0X3NldF9zZW5kZXJfcm9j
KHVpbnQxNl90IHNlcSwgdWludDMyX3Qgcm9jX3RvX3NldCkKK3NydHBfZXJyX3N0YXR1c190IHNy
dHBfdGVzdF9zZXRfcmVjZWl2ZXJfcm9jKCkKIHsKLSAgc3J0cF9lcnJfc3RhdHVzX3Qgc3RhdHVz
OwotCi0gIHNydHBfcG9saWN5X3Qgc2VuZGVyX3BvbGljeTsKLSAgc3J0cF90IHNlbmRlcl9zZXNz
aW9uOwotCi0gIHNydHBfcG9saWN5X3QgcmVjZWl2ZXJfcG9saWN5OwotICBzcnRwX3QgcmVjZWl2
ZXJfc2Vzc2lvbjsKLQotICBzcnRwX2hkcl90ICpwa3Q7Ci0gIHVuc2lnbmVkIGNoYXIgKnJlY3Zf
cGt0OwotCi0gIHVpbnQzMl90IHRzOwotCi0gIGludCBtc2dfbGVuX29jdGV0cyA9IDMyOwotICBp
bnQgcHJvdGVjdGVkX21zZ19sZW5fb2N0ZXRzOwotCi0gIC8qIENyZWF0ZSBzZW5kZXIgKi8KLSAg
bWVtc2V0KCZzZW5kZXJfcG9saWN5LCAwLCBzaXplb2Yoc2VuZGVyX3BvbGljeSkpOwotICBzcnRw
X2NyeXB0b19wb2xpY3lfc2V0X3J0cF9kZWZhdWx0KCZzZW5kZXJfcG9saWN5LnJ0cCk7Ci0gIHNy
dHBfY3J5cHRvX3BvbGljeV9zZXRfcnRjcF9kZWZhdWx0KCZzZW5kZXJfcG9saWN5LnJ0Y3ApOwot
ICBzZW5kZXJfcG9saWN5LnNzcmMudHlwZSAgPSBzc3JjX3NwZWNpZmljOwotICBzZW5kZXJfcG9s
aWN5LnNzcmMudmFsdWUgPSAweGNhZmViYWJlOwotICBzZW5kZXJfcG9saWN5LmtleSA9IHRlc3Rf
a2V5OwotICBzZW5kZXJfcG9saWN5LndpbmRvd19zaXplID0gMTI4OwotCi0gIHN0YXR1cyA9IHNy
dHBfY3JlYXRlKCZzZW5kZXJfc2Vzc2lvbiwgJnNlbmRlcl9wb2xpY3kpOwotICBpZiAoc3RhdHVz
KSB7Ci0gICAgcmV0dXJuIHN0YXR1czsKLSAgfQotCi0gIC8qIFNldCB0aGUgUk9DIGJlZm9yZSBl
bmNyeXB0aW5nIHRoZSBmaXJzdCBwYWNrZXQgKi8KLSAgc3RhdHVzID0gc3J0cF9zZXRfc3RyZWFt
X3JvYyhzZW5kZXJfc2Vzc2lvbiwgc2VuZGVyX3BvbGljeS5zc3JjLnZhbHVlLCByb2NfdG9fc2V0
KTsKLSAgaWYgKHN0YXR1cyAhPSBzcnRwX2Vycl9zdGF0dXNfb2spIHsKLSAgICByZXR1cm4gc3Rh
dHVzOwotICB9Ci0KLSAgLyogQ3JlYXRlIHRoZSBwYWNrZXQgdG8gZGVjcnlwdCAqLwotICB0cyA9
IDA7Ci0gIHBrdCA9IHNydHBfY3JlYXRlX3Rlc3RfcGFja2V0X2V4dGVuZGVkKG1zZ19sZW5fb2N0
ZXRzLCBzZW5kZXJfcG9saWN5LnNzcmMudmFsdWUsIHNlcSwgdHMpOwotICBwcm90ZWN0ZWRfbXNn
X2xlbl9vY3RldHMgPSBtc2dfbGVuX29jdGV0czsKLSAgc3RhdHVzID0gc3J0cF9wcm90ZWN0KHNl
bmRlcl9zZXNzaW9uLCBwa3QsICZwcm90ZWN0ZWRfbXNnX2xlbl9vY3RldHMpOwotICBpZiAoc3Rh
dHVzKSB7Ci0gICAgcmV0dXJuIHN0YXR1czsKLSAgfQotCi0gIC8qIENyZWF0ZSB0aGUgcmVjZWl2
ZXIgKi8KLSAgbWVtc2V0KCZyZWNlaXZlcl9wb2xpY3ksIDAsIHNpemVvZihyZWNlaXZlcl9wb2xp
Y3kpKTsKLSAgc3J0cF9jcnlwdG9fcG9saWN5X3NldF9ydHBfZGVmYXVsdCgmcmVjZWl2ZXJfcG9s
aWN5LnJ0cCk7Ci0gIHNydHBfY3J5cHRvX3BvbGljeV9zZXRfcnRjcF9kZWZhdWx0KCZyZWNlaXZl
cl9wb2xpY3kucnRjcCk7Ci0gIHJlY2VpdmVyX3BvbGljeS5zc3JjLnR5cGUgID0gc3NyY19zcGVj
aWZpYzsKLSAgcmVjZWl2ZXJfcG9saWN5LnNzcmMudmFsdWUgPSBzZW5kZXJfcG9saWN5LnNzcmMu
dmFsdWU7Ci0gIHJlY2VpdmVyX3BvbGljeS5rZXkgPSB0ZXN0X2tleTsKLSAgcmVjZWl2ZXJfcG9s
aWN5LndpbmRvd19zaXplID0gMTI4OwotCi0gIHN0YXR1cyA9IHNydHBfY3JlYXRlKCZyZWNlaXZl
cl9zZXNzaW9uLCAmcmVjZWl2ZXJfcG9saWN5KTsKLSAgaWYgKHN0YXR1cykgewotICAgIHJldHVy
biBzdGF0dXM7Ci0gIH0KLQotICAvKiBNYWtlIGEgY29weSBvZiB0aGUgc2VudCBwcm90ZWN0ZWQg
cGFja2V0ICovCi0gIHJlY3ZfcGt0ID0gbWFsbG9jKHByb3RlY3RlZF9tc2dfbGVuX29jdGV0cyk7
Ci0gIGlmIChyZWN2X3BrdCA9PSBOVUxMKSB7Ci0gICAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19m
YWlsOwotICB9Ci0gIG1lbWNweShyZWN2X3BrdCwgcGt0LCBwcm90ZWN0ZWRfbXNnX2xlbl9vY3Rl
dHMpOwotCi0gIC8qIFNldCB0aGUgUk9DIHRvIHRoZSB3YW50ZWQgdmFsdWUgKi8KLSAgc3RhdHVz
ID0gc3J0cF9zZXRfc3RyZWFtX3JvYyhyZWNlaXZlcl9zZXNzaW9uLCByZWNlaXZlcl9wb2xpY3ku
c3NyYy52YWx1ZSwgcm9jX3RvX3NldCk7Ci0gIGlmIChzdGF0dXMpIHsKLSAgICByZXR1cm4gc3Rh
dHVzOwotICB9Ci0KLSAgc3RhdHVzID0gc3J0cF91bnByb3RlY3QocmVjZWl2ZXJfc2Vzc2lvbiwg
cmVjdl9wa3QsICZwcm90ZWN0ZWRfbXNnX2xlbl9vY3RldHMpOwotICBpZiAoc3RhdHVzKSB7Ci0g
ICAgcmV0dXJuIHN0YXR1czsKLSAgfQotCi0gIC8qIENsZWFudXAgKi8KLSAgc3RhdHVzID0gc3J0
cF9kZWFsbG9jKHNlbmRlcl9zZXNzaW9uKTsKLSAgaWYgKHN0YXR1cykgewotICAgIHJldHVybiBz
dGF0dXM7Ci0gIH0KLQotICBzdGF0dXMgPSBzcnRwX2RlYWxsb2MocmVjZWl2ZXJfc2Vzc2lvbik7
Ci0gIGlmIChzdGF0dXMpIHsKLSAgICByZXR1cm4gc3RhdHVzOwotICB9Ci0KLSAgZnJlZShwa3Qp
OwotICBmcmVlKHJlY3ZfcGt0KTsKLQotICByZXR1cm4gc3J0cF9lcnJfc3RhdHVzX29rOwotfQor
ICAgIGludCBwYWNrZXRzOworICAgIHVpbnQzMl90IHJvYzsKKyAgICBzcnRwX2Vycl9zdGF0dXNf
dCBzdGF0dXM7CisKKyAgICAvKiBGaXJzdCB0ZXN0IGRvZXMgbm90IHJvbGxvdmVyICovCisgICAg
cGFja2V0cyA9IDE7CisgICAgcm9jID0gMDsKKworICAgIHN0YXR1cyA9IHRlc3Rfc2V0X3JlY2Vp
dmVyX3JvYyhwYWNrZXRzIC0gMSwgcm9jKTsKKyAgICBpZiAoc3RhdHVzKSB7CisgICAgICAgIHJl
dHVybiBzdGF0dXM7CisgICAgfQorCisgICAgc3RhdHVzID0gdGVzdF9zZXRfcmVjZWl2ZXJfcm9j
KHBhY2tldHMsIHJvYyk7CisgICAgaWYgKHN0YXR1cykgeworICAgICAgICByZXR1cm4gc3RhdHVz
OworICAgIH0KKworICAgIHN0YXR1cyA9IHRlc3Rfc2V0X3JlY2VpdmVyX3JvYyhwYWNrZXRzICsg
MSwgcm9jKTsKKyAgICBpZiAoc3RhdHVzKSB7CisgICAgICAgIHJldHVybiBzdGF0dXM7CisgICAg
fQorCisgICAgc3RhdHVzID0gdGVzdF9zZXRfcmVjZWl2ZXJfcm9jKHBhY2tldHMgKyA2MDAwMCwg
cm9jKTsKKyAgICBpZiAoc3RhdHVzKSB7CisgICAgICAgIHJldHVybiBzdGF0dXM7CisgICAgfQor
CisgICAgLyogU2Vjb25kIHRlc3Qgc2hvdWxkIHJvbGxvdmVyICovCisgICAgcGFja2V0cyA9IDY1
NTM1OworICAgIHJvYyA9IDA7CisKKyAgICBzdGF0dXMgPSB0ZXN0X3NldF9yZWNlaXZlcl9yb2Mo
cGFja2V0cyAtIDEsIHJvYyk7CisgICAgaWYgKHN0YXR1cykgeworICAgICAgICByZXR1cm4gc3Rh
dHVzOworICAgIH0KKworICAgIHN0YXR1cyA9IHRlc3Rfc2V0X3JlY2VpdmVyX3JvYyhwYWNrZXRz
LCByb2MpOworICAgIGlmIChzdGF0dXMpIHsKKyAgICAgICAgcmV0dXJuIHN0YXR1czsKKyAgICB9
CisKKyAgICAvKiBOb3cgdGhlIHJvbGxvdmVyIGNvdW50ZXIgc2hvdWxkIGJlIDEgKi8KKyAgICBy
b2MgPSAxOworICAgIHN0YXR1cyA9IHRlc3Rfc2V0X3JlY2VpdmVyX3JvYyhwYWNrZXRzICsgMSwg
cm9jKTsKKyAgICBpZiAoc3RhdHVzKSB7CisgICAgICAgIHJldHVybiBzdGF0dXM7CisgICAgfQor
CisgICAgc3RhdHVzID0gdGVzdF9zZXRfcmVjZWl2ZXJfcm9jKHBhY2tldHMgKyA2MDAwMCwgcm9j
KTsKKyAgICBpZiAoc3RhdHVzKSB7CisgICAgICAgIHJldHVybiBzdGF0dXM7CisgICAgfQogCi1z
cnRwX2Vycl9zdGF0dXNfdAotc3J0cF90ZXN0X3NldF9yZWNlaXZlcl9yb2MoKSB7Ci0gIGludCBw
YWNrZXRzOwotICB1aW50MzJfdCByb2M7Ci0gIHNydHBfZXJyX3N0YXR1c190IHN0YXR1czsKLQot
ICAvKiBGaXJzdCB0ZXN0IGRvZXMgbm90IHJvbGxvdmVyICovCi0gIHBhY2tldHMgPSAxOwotICBy
b2MgPSAwOwotCi0gIHN0YXR1cyA9IHRlc3Rfc2V0X3JlY2VpdmVyX3JvYyhwYWNrZXRzIC0gMSwg
cm9jKTsKLSAgaWYgKHN0YXR1cykgewotICAgIHJldHVybiBzdGF0dXM7Ci0gIH0KLQotICBzdGF0
dXMgPSB0ZXN0X3NldF9yZWNlaXZlcl9yb2MocGFja2V0cywgcm9jKTsKLSAgaWYgKHN0YXR1cykg
ewotICAgIHJldHVybiBzdGF0dXM7Ci0gIH0KLQotICBzdGF0dXMgPSB0ZXN0X3NldF9yZWNlaXZl
cl9yb2MocGFja2V0cyArIDEsIHJvYyk7Ci0gIGlmIChzdGF0dXMpIHsKLSAgICByZXR1cm4gc3Rh
dHVzOwotICB9Ci0KLSAgc3RhdHVzID0gdGVzdF9zZXRfcmVjZWl2ZXJfcm9jKHBhY2tldHMgKyA2
MDAwMCwgcm9jKTsKLSAgaWYgKHN0YXR1cykgewotICAgIHJldHVybiBzdGF0dXM7Ci0gIH0KLQot
ICAvKiBTZWNvbmQgdGVzdCBzaG91bGQgcm9sbG92ZXIgKi8KLSAgcGFja2V0cyA9IDY1NTM1Owot
ICByb2MgPSAwOwotCi0gIHN0YXR1cyA9IHRlc3Rfc2V0X3JlY2VpdmVyX3JvYyhwYWNrZXRzIC0g
MSwgcm9jKTsKLSAgaWYgKHN0YXR1cykgewotICAgIHJldHVybiBzdGF0dXM7Ci0gIH0KLQotICBz
dGF0dXMgPSB0ZXN0X3NldF9yZWNlaXZlcl9yb2MocGFja2V0cywgcm9jKTsKLSAgaWYgKHN0YXR1
cykgewotICAgIHJldHVybiBzdGF0dXM7Ci0gIH0KLQotICAvKiBOb3cgdGhlIHJvbGxvdmVyIGNv
dW50ZXIgc2hvdWxkIGJlIDEgKi8KLSAgcm9jID0gMTsKLSAgc3RhdHVzID0gdGVzdF9zZXRfcmVj
ZWl2ZXJfcm9jKHBhY2tldHMgKyAxLCByb2MpOwotICBpZiAoc3RhdHVzKSB7Ci0gICAgcmV0dXJu
IHN0YXR1czsKLSAgfQotCi0gIHN0YXR1cyA9IHRlc3Rfc2V0X3JlY2VpdmVyX3JvYyhwYWNrZXRz
ICsgNjAwMDAsIHJvYyk7Ci0gIGlmIChzdGF0dXMpIHsKLSAgICByZXR1cm4gc3RhdHVzOwotICB9
Ci0KLSAgcmV0dXJuIHNydHBfZXJyX3N0YXR1c19vazsKKyAgICByZXR1cm4gc3J0cF9lcnJfc3Rh
dHVzX29rOwogfQogCi1zcnRwX2Vycl9zdGF0dXNfdAotc3J0cF90ZXN0X3NldF9zZW5kZXJfcm9j
KCkgewotICB1aW50MzJfdCByb2M7Ci0gIHVpbnQxNl90IHNlcTsKLSAgc3J0cF9lcnJfc3RhdHVz
X3Qgc3RhdHVzOwotCi0gIHNlcSA9IDQzMjEwOwotICByb2MgPSAwOwotICBzdGF0dXMgPSB0ZXN0
X3NldF9zZW5kZXJfcm9jKHNlcSwgcm9jKTsKLSAgaWYgKHN0YXR1cykgewotICAgIHJldHVybiBz
dGF0dXM7Ci0gIH0KLQotICByb2MgPSA2NTUzNTsKLSAgc3RhdHVzID0gdGVzdF9zZXRfc2VuZGVy
X3JvYyhzZXEsIHJvYyk7Ci0gIGlmIChzdGF0dXMpIHsKLSAgICByZXR1cm4gc3RhdHVzOwotICB9
Ci0KLSAgcm9jID0gMHhmZmZmOwotICBzdGF0dXMgPSB0ZXN0X3NldF9zZW5kZXJfcm9jKHNlcSwg
cm9jKTsKLSAgaWYgKHN0YXR1cykgewotICAgIHJldHVybiBzdGF0dXM7Ci0gIH0KLQotICByb2Mg
PSAweGZmZmYwMDsKLSAgc3RhdHVzID0gdGVzdF9zZXRfc2VuZGVyX3JvYyhzZXEsIHJvYyk7Ci0g
IGlmIChzdGF0dXMpIHsKLSAgICByZXR1cm4gc3RhdHVzOwotICB9Ci0KLSAgcm9jID0gMHhmZmZm
ZmZmMDsKLSAgc3RhdHVzID0gdGVzdF9zZXRfc2VuZGVyX3JvYyhzZXEsIHJvYyk7Ci0gIGlmIChz
dGF0dXMpIHsKLSAgICByZXR1cm4gc3RhdHVzOwotICB9Ci0KLSAgcmV0dXJuIHNydHBfZXJyX3N0
YXR1c19vazsKK3NydHBfZXJyX3N0YXR1c190IHNydHBfdGVzdF9zZXRfc2VuZGVyX3JvYygpCit7
CisgICAgdWludDMyX3Qgcm9jOworICAgIHVpbnQxNl90IHNlcTsKKyAgICBzcnRwX2Vycl9zdGF0
dXNfdCBzdGF0dXM7CisKKyAgICBzZXEgPSA0MzIxMDsKKyAgICByb2MgPSAwOworICAgIHN0YXR1
cyA9IHRlc3Rfc2V0X3NlbmRlcl9yb2Moc2VxLCByb2MpOworICAgIGlmIChzdGF0dXMpIHsKKyAg
ICAgICAgcmV0dXJuIHN0YXR1czsKKyAgICB9CisKKyAgICByb2MgPSA2NTUzNTsKKyAgICBzdGF0
dXMgPSB0ZXN0X3NldF9zZW5kZXJfcm9jKHNlcSwgcm9jKTsKKyAgICBpZiAoc3RhdHVzKSB7Cisg
ICAgICAgIHJldHVybiBzdGF0dXM7CisgICAgfQorCisgICAgcm9jID0gMHhmZmZmOworICAgIHN0
YXR1cyA9IHRlc3Rfc2V0X3NlbmRlcl9yb2Moc2VxLCByb2MpOworICAgIGlmIChzdGF0dXMpIHsK
KyAgICAgICAgcmV0dXJuIHN0YXR1czsKKyAgICB9CisKKyAgICByb2MgPSAweGZmZmYwMDsKKyAg
ICBzdGF0dXMgPSB0ZXN0X3NldF9zZW5kZXJfcm9jKHNlcSwgcm9jKTsKKyAgICBpZiAoc3RhdHVz
KSB7CisgICAgICAgIHJldHVybiBzdGF0dXM7CisgICAgfQorCisgICAgcm9jID0gMHhmZmZmZmZm
MDsKKyAgICBzdGF0dXMgPSB0ZXN0X3NldF9zZW5kZXJfcm9jKHNlcSwgcm9jKTsKKyAgICBpZiAo
c3RhdHVzKSB7CisgICAgICAgIHJldHVybiBzdGF0dXM7CisgICAgfQorCisgICAgcmV0dXJuIHNy
dHBfZXJyX3N0YXR1c19vazsKIH0KIAogLyoKICAqIHNydHAgcG9saWN5IGRlZmluaXRpb25zIC0g
dGhlc2UgZGVmaW5pdGlvbnMgYXJlIHVzZWQgYWJvdmUKICAqLwogCisvLyBjbGFuZy1mb3JtYXQg
b2ZmCiB1bnNpZ25lZCBjaGFyIHRlc3Rfa2V5WzQ2XSA9IHsKICAgICAweGUxLCAweGY5LCAweDdh
LCAweDBkLCAweDNlLCAweDAxLCAweDhiLCAweGUwLAogICAgIDB4ZDYsIDB4NGYsIDB4YTMsIDB4
MmMsIDB4MDYsIDB4ZGUsIDB4NDEsIDB4MzksCkBAIC0zNDMxLDI0MSArMzQwOSwyNTMgQEAgdW5z
aWduZWQgY2hhciB0ZXN0X21raV9pZFtURVNUX01LSV9JRF9TSVpFXSA9IHsKIHVuc2lnbmVkIGNo
YXIgdGVzdF9ta2lfaWRfMltURVNUX01LSV9JRF9TSVpFXSA9IHsKICAgICAweGYzLCAweGExLCAw
eDQ2LCAweDcxCiB9OworLy8gY2xhbmctZm9ybWF0IG9uCiAKIGNvbnN0IHNydHBfcG9saWN5X3Qg
ZGVmYXVsdF9wb2xpY3kgPSB7Ci0gICAgeyBzc3JjX2FueV9vdXRib3VuZCwgMCB9LCAgLyogU1NS
QyAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgeyAgICAgICAgICAgICAgICAgICAg
ICAgICAgLyogU1JUUCBwb2xpY3kgICAgICAgICAgICAgICAgICAgICovCi0gICAgICAgIFNSVFBf
QUVTX0lDTV8xMjgsICAgICAgICAgICAvKiBjaXBoZXIgdHlwZSAgICAgICAgICAgICAgICAgKi8K
KyAgICB7IHNzcmNfYW55X291dGJvdW5kLCAwIH0sIC8qIFNTUkMgKi8KKyAgICB7CisgICAgICAg
IC8qIFNSVFAgcG9saWN5ICovCisgICAgICAgIFNSVFBfQUVTX0lDTV8xMjgsICAgICAgICAgICAg
ICAgLyogY2lwaGVyIHR5cGUgICAgICAgICAgICAgICAgICovCiAgICAgICAgIFNSVFBfQUVTX0lD
TV8xMjhfS0VZX0xFTl9XU0FMVCwgLyogY2lwaGVyIGtleSBsZW5ndGggaW4gb2N0ZXRzICovCi0g
ICAgICAgIFNSVFBfSE1BQ19TSEExLCAgICAgICAgICAgICAvKiBhdXRoZW50aWNhdGlvbiBmdW5j
IHR5cGUgICAgKi8KLSAgICAgICAgMTYsICAgICAgICAgICAgICAgICAgICAvKiBhdXRoIGtleSBs
ZW5ndGggaW4gb2N0ZXRzICAgKi8KLSAgICAgICAgMTAsICAgICAgICAgICAgICAgICAgICAvKiBh
dXRoIHRhZyBsZW5ndGggaW4gb2N0ZXRzICAgKi8KLSAgICAgICAgc2VjX3NlcnZfY29uZl9hbmRf
YXV0aCAvKiBzZWN1cml0eSBzZXJ2aWNlcyBmbGFnICAgICAgKi8KKyAgICAgICAgU1JUUF9ITUFD
X1NIQTEsICAgICAgICAgICAgICAgICAvKiBhdXRoZW50aWNhdGlvbiBmdW5jIHR5cGUgICAgKi8K
KyAgICAgICAgMTYsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBhdXRoIGtleSBsZW5n
dGggaW4gb2N0ZXRzICAgKi8KKyAgICAgICAgMTAsICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAvKiBhdXRoIHRhZyBsZW5ndGggaW4gb2N0ZXRzICAgKi8KKyAgICAgICAgc2VjX3NlcnZfY29u
Zl9hbmRfYXV0aCAgICAgICAgICAvKiBzZWN1cml0eSBzZXJ2aWNlcyBmbGFnICAgICAgKi8KICAg
ICB9LAotICAgIHsgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIFNSVENQIHBvbGljeSAgICAg
ICAgICAgICAgICAgICAqLwotICAgICAgICBTUlRQX0FFU19JQ01fMTI4LCAgICAgICAgICAgLyog
Y2lwaGVyIHR5cGUgICAgICAgICAgICAgICAgICovCisgICAgeworICAgICAgICAvKiBTUlRDUCBw
b2xpY3kgKi8KKyAgICAgICAgU1JUUF9BRVNfSUNNXzEyOCwgICAgICAgICAgICAgICAvKiBjaXBo
ZXIgdHlwZSAgICAgICAgICAgICAgICAgKi8KICAgICAgICAgU1JUUF9BRVNfSUNNXzEyOF9LRVlf
TEVOX1dTQUxULCAvKiBjaXBoZXIga2V5IGxlbmd0aCBpbiBvY3RldHMgKi8KLSAgICAgICAgU1JU
UF9ITUFDX1NIQTEsICAgICAgICAgICAgIC8qIGF1dGhlbnRpY2F0aW9uIGZ1bmMgdHlwZSAgICAq
LwotICAgICAgICAxNiwgICAgICAgICAgICAgICAgICAgIC8qIGF1dGgga2V5IGxlbmd0aCBpbiBv
Y3RldHMgICAqLwotICAgICAgICAxMCwgICAgICAgICAgICAgICAgICAgIC8qIGF1dGggdGFnIGxl
bmd0aCBpbiBvY3RldHMgICAqLwotICAgICAgICBzZWNfc2Vydl9jb25mX2FuZF9hdXRoIC8qIHNl
Y3VyaXR5IHNlcnZpY2VzIGZsYWcgICAgICAqLworICAgICAgICBTUlRQX0hNQUNfU0hBMSwgICAg
ICAgICAgICAgICAgIC8qIGF1dGhlbnRpY2F0aW9uIGZ1bmMgdHlwZSAgICAqLworICAgICAgICAx
NiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIGF1dGgga2V5IGxlbmd0aCBpbiBvY3Rl
dHMgICAqLworICAgICAgICAxMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIGF1dGgg
dGFnIGxlbmd0aCBpbiBvY3RldHMgICAqLworICAgICAgICBzZWNfc2Vydl9jb25mX2FuZF9hdXRo
ICAgICAgICAgIC8qIHNlY3VyaXR5IHNlcnZpY2VzIGZsYWcgICAgICAqLwogICAgIH0sCiAgICAg
TlVMTCwKICAgICAoc3J0cF9tYXN0ZXJfa2V5X3QgKiopdGVzdF9rZXlzLAotICAgIDIsICAgICAg
ICAgLyogaW5kaWNhdGVzIHRoZSBudW1iZXIgb2YgTWFzdGVyIGtleXMgKi8KLSAgICBOVUxMLCAg
ICAgIC8qIGluZGljYXRlcyB0aGF0IEVLVCBpcyBub3QgaW4gdXNlICovCi0gICAgMTI4LCAgICAg
ICAvKiByZXBsYXkgd2luZG93IHNpemUgKi8KLSAgICAwLCAgICAgICAgIC8qIHJldHJhbnNtaXNz
aW9uIG5vdCBhbGxvd2VkICovCi0gICAgTlVMTCwgICAgICAvKiBubyBlbmNyeXB0ZWQgZXh0ZW5z
aW9uIGhlYWRlcnMgKi8KLSAgICAwLCAgICAgICAgIC8qIGxpc3Qgb2YgZW5jcnlwdGVkIGV4dGVu
c2lvbiBoZWFkZXJzIGlzIGVtcHR5ICovCisgICAgMiwgICAgLyogaW5kaWNhdGVzIHRoZSBudW1i
ZXIgb2YgTWFzdGVyIGtleXMgICAgICAgICAgKi8KKyAgICBOVUxMLCAvKiBpbmRpY2F0ZXMgdGhh
dCBFS1QgaXMgbm90IGluIHVzZSAgICAgICAgICAgICAqLworICAgIDEyOCwgIC8qIHJlcGxheSB3
aW5kb3cgc2l6ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgMCwgICAgLyogcmV0
cmFuc21pc3Npb24gbm90IGFsbG93ZWQgICAgICAgICAgICAgICAgICAgKi8KKyAgICBOVUxMLCAv
KiBubyBlbmNyeXB0ZWQgZXh0ZW5zaW9uIGhlYWRlcnMgICAgICAgICAgICAgICAqLworICAgIDAs
ICAgIC8qIGxpc3Qgb2YgZW5jcnlwdGVkIGV4dGVuc2lvbiBoZWFkZXJzIGlzIGVtcHR5ICovCiAg
ICAgTlVMTAogfTsKIAogY29uc3Qgc3J0cF9wb2xpY3lfdCBhZXNfb25seV9wb2xpY3kgPSB7CiAg
ICAgeyBzc3JjX2FueV9vdXRib3VuZCwgMCB9LCAvKiBTU1JDICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KICAgICB7Ci0gICAgICAgIFNSVFBfQUVTX0lDTV8xMjgsICAgICAgICAgIC8qIGNpcGhl
ciB0eXBlICAgICAgICAgICAgICAgICAqLworICAgICAgICBTUlRQX0FFU19JQ01fMTI4LCAgICAg
ICAgICAgICAgIC8qIGNpcGhlciB0eXBlICAgICAgICAgICAgICAgICAqLwogICAgICAgICBTUlRQ
X0FFU19JQ01fMTI4X0tFWV9MRU5fV1NBTFQsIC8qIGNpcGhlciBrZXkgbGVuZ3RoIGluIG9jdGV0
cyAqLwotICAgICAgICBTUlRQX05VTExfQVVUSCwgICAgICAgICAgICAvKiBhdXRoZW50aWNhdGlv
biBmdW5jIHR5cGUgICAgKi8KLSAgICAgICAgMCwgICAgICAgICAgICAgICAgICAgIC8qIGF1dGgg
a2V5IGxlbmd0aCBpbiBvY3RldHMgICAqLwotICAgICAgICAwLCAgICAgICAgICAgICAgICAgICAg
LyogYXV0aCB0YWcgbGVuZ3RoIGluIG9jdGV0cyAgICovCi0gICAgICAgIHNlY19zZXJ2X2NvbmYg
ICAgICAgICAvKiBzZWN1cml0eSBzZXJ2aWNlcyBmbGFnICAgICAgKi8KKyAgICAgICAgU1JUUF9O
VUxMX0FVVEgsICAgICAgICAgICAgICAgICAvKiBhdXRoZW50aWNhdGlvbiBmdW5jIHR5cGUgICAg
Ki8KKyAgICAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBhdXRoIGtleSBs
ZW5ndGggaW4gb2N0ZXRzICAgKi8KKyAgICAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAvKiBhdXRoIHRhZyBsZW5ndGggaW4gb2N0ZXRzICAgKi8KKyAgICAgICAgc2VjX3NlcnZf
Y29uZiAgICAgICAgICAgICAgICAgICAvKiBzZWN1cml0eSBzZXJ2aWNlcyBmbGFnICAgICAgKi8K
ICAgICB9LAogICAgIHsKLSAgICAgICAgU1JUUF9BRVNfSUNNXzEyOCwgICAgICAgIC8qIGNpcGhl
ciB0eXBlICAgICAgICAgICAgICAgICAqLworICAgICAgICBTUlRQX0FFU19JQ01fMTI4LCAgICAg
ICAgICAgICAgIC8qIGNpcGhlciB0eXBlICAgICAgICAgICAgICAgICAqLwogICAgICAgICBTUlRQ
X0FFU19JQ01fMTI4X0tFWV9MRU5fV1NBTFQsIC8qIGNpcGhlciBrZXkgbGVuZ3RoIGluIG9jdGV0
cyAqLwotICAgICAgICBTUlRQX05VTExfQVVUSCwgICAgICAgICAgLyogYXV0aGVudGljYXRpb24g
ZnVuYyB0eXBlICAgICovCi0gICAgICAgIDAsICAgICAgICAgICAgICAgICAgLyogYXV0aCBrZXkg
bGVuZ3RoIGluIG9jdGV0cyAgICovCi0gICAgICAgIDAsICAgICAgICAgICAgICAgICAgLyogYXV0
aCB0YWcgbGVuZ3RoIGluIG9jdGV0cyAgICovCi0gICAgICAgIHNlY19zZXJ2X2NvbmYgICAgICAg
Lyogc2VjdXJpdHkgc2VydmljZXMgZmxhZyAgICAgICovCisgICAgICAgIFNSVFBfTlVMTF9BVVRI
LCAgICAgICAgICAgICAgICAgLyogYXV0aGVudGljYXRpb24gZnVuYyB0eXBlICAgICovCisgICAg
ICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogYXV0aCBrZXkgbGVuZ3RoIGlu
IG9jdGV0cyAgICovCisgICAgICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyog
YXV0aCB0YWcgbGVuZ3RoIGluIG9jdGV0cyAgICovCisgICAgICAgIHNlY19zZXJ2X2NvbmYgICAg
ICAgICAgICAgICAgICAgLyogc2VjdXJpdHkgc2VydmljZXMgZmxhZyAgICAgICovCiAgICAgfSwK
ICAgICBOVUxMLAogICAgIChzcnRwX21hc3Rlcl9rZXlfdCAqKil0ZXN0X2tleXMsCi0gICAgMiwg
ICAgICAgICAvKiBpbmRpY2F0ZXMgdGhlIG51bWJlciBvZiBNYXN0ZXIga2V5cyAqLwotICAgIE5V
TEwsICAgICAgLyogaW5kaWNhdGVzIHRoYXQgRUtUIGlzIG5vdCBpbiB1c2UgKi8KLSAgICAxMjgs
ICAgICAgIC8qIHJlcGxheSB3aW5kb3cgc2l6ZSAqLwotICAgIDAsICAgICAgICAgLyogcmV0cmFu
c21pc3Npb24gbm90IGFsbG93ZWQgKi8KLSAgICBOVUxMLCAgICAgIC8qIG5vIGVuY3J5cHRlZCBl
eHRlbnNpb24gaGVhZGVycyAqLwotICAgIDAsICAgICAgICAgLyogbGlzdCBvZiBlbmNyeXB0ZWQg
ZXh0ZW5zaW9uIGhlYWRlcnMgaXMgZW1wdHkgKi8KKyAgICAyLCAgICAvKiBpbmRpY2F0ZXMgdGhl
IG51bWJlciBvZiBNYXN0ZXIga2V5cyAgICAgICAgICAqLworICAgIE5VTEwsIC8qIGluZGljYXRl
cyB0aGF0IEVLVCBpcyBub3QgaW4gdXNlICAgICAgICAgICAgICovCisgICAgMTI4LCAgLyogcmVw
bGF5IHdpbmRvdyBzaXplICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICAwLCAgICAv
KiByZXRyYW5zbWlzc2lvbiBub3QgYWxsb3dlZCAgICAgICAgICAgICAgICAgICAqLworICAgIE5V
TEwsIC8qIG5vIGVuY3J5cHRlZCBleHRlbnNpb24gaGVhZGVycyAgICAgICAgICAgICAgICovCisg
ICAgMCwgICAgLyogbGlzdCBvZiBlbmNyeXB0ZWQgZXh0ZW5zaW9uIGhlYWRlcnMgaXMgZW1wdHkg
Ki8KICAgICBOVUxMCiB9OwogCiBjb25zdCBzcnRwX3BvbGljeV90IGhtYWNfb25seV9wb2xpY3kg
PSB7Ci0gICAgeyBzc3JjX2FueV9vdXRib3VuZCwgMCB9LCAvKiBTU1JDICAgICAgICAgICAgICAg
ICAgICAgICAgKi8KKyAgICB7IHNzcmNfYW55X291dGJvdW5kLCAwIH0sIC8qIFNTUkMgKi8KICAg
ICB7Ci0gICAgICAgIFNSVFBfTlVMTF9DSVBIRVIsICAgICAgICAgIC8qIGNpcGhlciB0eXBlICAg
ICAgICAgICAgICAgICAqLwotICAgICAgICAwLCAgICAgICAgICAgICAgICAgICAgLyogY2lwaGVy
IGtleSBsZW5ndGggaW4gb2N0ZXRzICovCi0gICAgICAgIFNSVFBfSE1BQ19TSEExLCAgICAgICAg
ICAgIC8qIGF1dGhlbnRpY2F0aW9uIGZ1bmMgdHlwZSAgICAqLwotICAgICAgICAyMCwgICAgICAg
ICAgICAgICAgICAgLyogYXV0aCBrZXkgbGVuZ3RoIGluIG9jdGV0cyAgICovCi0gICAgICAgIDQs
ICAgICAgICAgICAgICAgICAgICAvKiBhdXRoIHRhZyBsZW5ndGggaW4gb2N0ZXRzICAgKi8KLSAg
ICAgICAgc2VjX3NlcnZfYXV0aCAgICAgICAgIC8qIHNlY3VyaXR5IHNlcnZpY2VzIGZsYWcgICAg
ICAqLworICAgICAgICBTUlRQX05VTExfQ0lQSEVSLCAvKiBjaXBoZXIgdHlwZSAgICAgICAgICAg
ICAgICAgKi8KKyAgICAgICAgMCwgICAgICAgICAgICAgICAgLyogY2lwaGVyIGtleSBsZW5ndGgg
aW4gb2N0ZXRzICovCisgICAgICAgIFNSVFBfSE1BQ19TSEExLCAgIC8qIGF1dGhlbnRpY2F0aW9u
IGZ1bmMgdHlwZSAgICAqLworICAgICAgICAyMCwgICAgICAgICAgICAgICAvKiBhdXRoIGtleSBs
ZW5ndGggaW4gb2N0ZXRzICAgKi8KKyAgICAgICAgNCwgICAgICAgICAgICAgICAgLyogYXV0aCB0
YWcgbGVuZ3RoIGluIG9jdGV0cyAgICovCisgICAgICAgIHNlY19zZXJ2X2F1dGggICAgIC8qIHNl
Y3VyaXR5IHNlcnZpY2VzIGZsYWcgICAgICAqLwogICAgIH0sCiAgICAgewotICAgICAgICBTUlRQ
X05VTExfQ0lQSEVSLCAgICAgICAgLyogY2lwaGVyIHR5cGUgICAgICAgICAgICAgICAgICovCi0g
ICAgICAgIDAsICAgICAgICAgICAgICAgICAgLyogY2lwaGVyIGtleSBsZW5ndGggaW4gb2N0ZXRz
ICovCi0gICAgICAgIFNSVFBfSE1BQ19TSEExLCAgICAgICAgICAvKiBhdXRoZW50aWNhdGlvbiBm
dW5jIHR5cGUgICAgKi8KLSAgICAgICAgMjAsICAgICAgICAgICAgICAgICAvKiBhdXRoIGtleSBs
ZW5ndGggaW4gb2N0ZXRzICAgKi8KLSAgICAgICAgNCwgICAgICAgICAgICAgICAgICAvKiBhdXRo
IHRhZyBsZW5ndGggaW4gb2N0ZXRzICAgKi8KLSAgICAgICAgc2VjX3NlcnZfYXV0aCAgICAgICAv
KiBzZWN1cml0eSBzZXJ2aWNlcyBmbGFnICAgICAgKi8KKyAgICAgICAgU1JUUF9OVUxMX0NJUEhF
UiwgLyogY2lwaGVyIHR5cGUgICAgICAgICAgICAgICAgICovCisgICAgICAgIDAsICAgICAgICAg
ICAgICAgIC8qIGNpcGhlciBrZXkgbGVuZ3RoIGluIG9jdGV0cyAqLworICAgICAgICBTUlRQX0hN
QUNfU0hBMSwgICAvKiBhdXRoZW50aWNhdGlvbiBmdW5jIHR5cGUgICAgKi8KKyAgICAgICAgMjAs
ICAgICAgICAgICAgICAgLyogYXV0aCBrZXkgbGVuZ3RoIGluIG9jdGV0cyAgICovCisgICAgICAg
IDQsICAgICAgICAgICAgICAgIC8qIGF1dGggdGFnIGxlbmd0aCBpbiBvY3RldHMgICAqLworICAg
ICAgICBzZWNfc2Vydl9hdXRoICAgICAvKiBzZWN1cml0eSBzZXJ2aWNlcyBmbGFnICAgICAgKi8K
ICAgICB9LAogICAgIE5VTEwsCiAgICAgKHNydHBfbWFzdGVyX2tleV90ICoqKXRlc3Rfa2V5cywK
LSAgICAyLCAgICAgICAgIC8qIE51bWJlciBvZiBNYXN0ZXIga2V5cyBhc3NvY2lhdGVkIHdpdGgg
dGhlIHBvbGljeSAqLwotICAgIE5VTEwsICAgICAgLyogaW5kaWNhdGVzIHRoYXQgRUtUIGlzIG5v
dCBpbiB1c2UgKi8KLSAgICAxMjgsICAgICAgIC8qIHJlcGxheSB3aW5kb3cgc2l6ZSAqLwotICAg
IDAsICAgICAgICAgLyogcmV0cmFuc21pc3Npb24gbm90IGFsbG93ZWQgKi8KLSAgICBOVUxMLCAg
ICAgIC8qIG5vIGVuY3J5cHRlZCBleHRlbnNpb24gaGVhZGVycyAqLwotICAgIDAsICAgICAgICAg
LyogbGlzdCBvZiBlbmNyeXB0ZWQgZXh0ZW5zaW9uIGhlYWRlcnMgaXMgZW1wdHkgKi8KKyAgICAy
LCAgICAvKiBOdW1iZXIgb2YgTWFzdGVyIGtleXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBwb2xpY3kg
Ki8KKyAgICBOVUxMLCAvKiBpbmRpY2F0ZXMgdGhhdCBFS1QgaXMgbm90IGluIHVzZSAgICAgICAg
ICAgICAgICAgKi8KKyAgICAxMjgsICAvKiByZXBsYXkgd2luZG93IHNpemUgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgKi8KKyAgICAwLCAgICAvKiByZXRyYW5zbWlzc2lvbiBub3QgYWxs
b3dlZCAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgICBOVUxMLCAvKiBubyBlbmNyeXB0ZWQg
ZXh0ZW5zaW9uIGhlYWRlcnMgICAgICAgICAgICAgICAgICAgKi8KKyAgICAwLCAgICAvKiBsaXN0
IG9mIGVuY3J5cHRlZCBleHRlbnNpb24gaGVhZGVycyBpcyBlbXB0eSAgICAgKi8KICAgICBOVUxM
CiB9OwogCiAjaWZkZWYgT1BFTlNTTAogY29uc3Qgc3J0cF9wb2xpY3lfdCBhZXMxMjhfZ2NtXzhf
cG9saWN5ID0gewotICAgIHsgc3NyY19hbnlfb3V0Ym91bmQsIDAgfSwgICAgICAgICAgIC8qIFNT
UkMgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICAgIHsgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIC8qIFNSVFAgcG9saWN5ICAgICAgICAgICAgICAgICAgICAqLwotICAg
ICAgICBTUlRQX0FFU19HQ01fMTI4LCAgICAgICAgICAgICAgICAgICAgLyogY2lwaGVyIHR5cGUg
ICAgICAgICAgICAgICAgICovCisgICAgeyBzc3JjX2FueV9vdXRib3VuZCwgMCB9LCAvKiBTU1JD
ICovCisgICAgeworICAgICAgICAvKiBTUlRQIHBvbGljeSAqLworICAgICAgICBTUlRQX0FFU19H
Q01fMTI4LCAgICAgICAgICAgICAgIC8qIGNpcGhlciB0eXBlICAgICAgICAgICAgICAgICAqLwog
ICAgICAgICBTUlRQX0FFU19HQ01fMTI4X0tFWV9MRU5fV1NBTFQsIC8qIGNpcGhlciBrZXkgbGVu
Z3RoIGluIG9jdGV0cyAqLwotICAgICAgICBTUlRQX05VTExfQVVUSCwgICAgICAgICAgICAgICAg
ICAgICAgLyogYXV0aGVudGljYXRpb24gZnVuYyB0eXBlICAgICovCisgICAgICAgIFNSVFBfTlVM
TF9BVVRILCAgICAgICAgICAgICAgICAgLyogYXV0aGVudGljYXRpb24gZnVuYyB0eXBlICAgICov
CiAgICAgICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogYXV0aCBrZXkgbGVu
Z3RoIGluIG9jdGV0cyAgICovCiAgICAgICAgIDgsICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgLyogYXV0aCB0YWcgbGVuZ3RoIGluIG9jdGV0cyAgICovCiAgICAgICAgIHNlY19zZXJ2X2Nv
bmZfYW5kX2F1dGggICAgICAgICAgLyogc2VjdXJpdHkgc2VydmljZXMgZmxhZyAgICAgICovCiAg
ICAgfSwKLSAgICB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBTUlRDUCBw
b2xpY3kgICAgICAgICAgICAgICAgICAgKi8KLSAgICAgICAgU1JUUF9BRVNfR0NNXzEyOCwgICAg
ICAgICAgICAgICAgICAgIC8qIGNpcGhlciB0eXBlICAgICAgICAgICAgICAgICAqLworICAgIHsK
KyAgICAgICAgLyogU1JUQ1AgcG9saWN5ICovCisgICAgICAgIFNSVFBfQUVTX0dDTV8xMjgsICAg
ICAgICAgICAgICAgLyogY2lwaGVyIHR5cGUgICAgICAgICAgICAgICAgICovCiAgICAgICAgIFNS
VFBfQUVTX0dDTV8xMjhfS0VZX0xFTl9XU0FMVCwgLyogY2lwaGVyIGtleSBsZW5ndGggaW4gb2N0
ZXRzICovCi0gICAgICAgIFNSVFBfTlVMTF9BVVRILCAgICAgICAgICAgICAgICAgICAgICAvKiBh
dXRoZW50aWNhdGlvbiBmdW5jIHR5cGUgICAgKi8KKyAgICAgICAgU1JUUF9OVUxMX0FVVEgsICAg
ICAgICAgICAgICAgICAvKiBhdXRoZW50aWNhdGlvbiBmdW5jIHR5cGUgICAgKi8KICAgICAgICAg
MCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBhdXRoIGtleSBsZW5ndGggaW4gb2N0
ZXRzICAgKi8KICAgICAgICAgOCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBhdXRo
IHRhZyBsZW5ndGggaW4gb2N0ZXRzICAgKi8KICAgICAgICAgc2VjX3NlcnZfY29uZl9hbmRfYXV0
aCAgICAgICAgICAvKiBzZWN1cml0eSBzZXJ2aWNlcyBmbGFnICAgICAgKi8KICAgICB9LAogICAg
IE5VTEwsCiAgICAgKHNydHBfbWFzdGVyX2tleV90ICoqKXRlc3Rfa2V5cywKLSAgICAyLCAgICAg
ICAgICAgLyogaW5kaWNhdGVzIHRoZSBudW1iZXIgb2YgTWFzdGVyIGtleXMgKi8KLSAgICBOVUxM
LCAgICAgICAgLyogaW5kaWNhdGVzIHRoYXQgRUtUIGlzIG5vdCBpbiB1c2UgKi8KLSAgICAxMjgs
ICAgICAgICAgLyogcmVwbGF5IHdpbmRvdyBzaXplICovCi0gICAgMCwgICAgICAgICAgIC8qIHJl
dHJhbnNtaXNzaW9uIG5vdCBhbGxvd2VkICovCi0gICAgTlVMTCwgICAgICAgIC8qIG5vIGVuY3J5
cHRlZCBleHRlbnNpb24gaGVhZGVycyAqLwotICAgIDAsICAgICAgICAgICAvKiBsaXN0IG9mIGVu
Y3J5cHRlZCBleHRlbnNpb24gaGVhZGVycyBpcyBlbXB0eSAqLworICAgIDIsICAgIC8qIGluZGlj
YXRlcyB0aGUgbnVtYmVyIG9mIE1hc3RlciBrZXlzICAgICAgICAgICovCisgICAgTlVMTCwgLyog
aW5kaWNhdGVzIHRoYXQgRUtUIGlzIG5vdCBpbiB1c2UgICAgICAgICAgICAgKi8KKyAgICAxMjgs
ICAvKiByZXBsYXkgd2luZG93IHNpemUgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICAg
IDAsICAgIC8qIHJldHJhbnNtaXNzaW9uIG5vdCBhbGxvd2VkICAgICAgICAgICAgICAgICAgICov
CisgICAgTlVMTCwgLyogbm8gZW5jcnlwdGVkIGV4dGVuc2lvbiBoZWFkZXJzICAgICAgICAgICAg
ICAgKi8KKyAgICAwLCAgICAvKiBsaXN0IG9mIGVuY3J5cHRlZCBleHRlbnNpb24gaGVhZGVycyBp
cyBlbXB0eSAqLwogICAgIE5VTEwKIH07CiAKIGNvbnN0IHNydHBfcG9saWN5X3QgYWVzMTI4X2dj
bV84X2NhdXRoX3BvbGljeSA9IHsKLSAgICB7IHNzcmNfYW55X291dGJvdW5kLCAwIH0sICAgICAg
ICAgICAvKiBTU1JDICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLSAgICB7ICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBTUlRQIHBvbGljeSAgICAgICAgICAgICAgICAg
ICAgKi8KLSAgICAgICAgU1JUUF9BRVNfR0NNXzEyOCwgICAgICAgICAgICAgICAgICAgIC8qIGNp
cGhlciB0eXBlICAgICAgICAgICAgICAgICAqLworICAgIHsgc3NyY19hbnlfb3V0Ym91bmQsIDAg
fSwgLyogU1NSQyAqLworICAgIHsKKyAgICAgICAgLyogU1JUUCBwb2xpY3kgKi8KKyAgICAgICAg
U1JUUF9BRVNfR0NNXzEyOCwgICAgICAgICAgICAgICAvKiBjaXBoZXIgdHlwZSAgICAgICAgICAg
ICAgICAgKi8KICAgICAgICAgU1JUUF9BRVNfR0NNXzEyOF9LRVlfTEVOX1dTQUxULCAvKiBjaXBo
ZXIga2V5IGxlbmd0aCBpbiBvY3RldHMgKi8KLSAgICAgICAgU1JUUF9OVUxMX0FVVEgsICAgICAg
ICAgICAgICAgICAgICAgIC8qIGF1dGhlbnRpY2F0aW9uIGZ1bmMgdHlwZSAgICAqLworICAgICAg
ICBTUlRQX05VTExfQVVUSCwgICAgICAgICAgICAgICAgIC8qIGF1dGhlbnRpY2F0aW9uIGZ1bmMg
dHlwZSAgICAqLwogICAgICAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIGF1
dGgga2V5IGxlbmd0aCBpbiBvY3RldHMgICAqLwogICAgICAgICA4LCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIC8qIGF1dGggdGFnIGxlbmd0aCBpbiBvY3RldHMgICAqLwogICAgICAgICBz
ZWNfc2Vydl9jb25mX2FuZF9hdXRoICAgICAgICAgIC8qIHNlY3VyaXR5IHNlcnZpY2VzIGZsYWcg
ICAgICAqLwogICAgIH0sCi0gICAgeyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
LyogU1JUQ1AgcG9saWN5ICAgICAgICAgICAgICAgICAgICovCi0gICAgICAgIFNSVFBfQUVTX0dD
TV8xMjgsICAgICAgICAgICAgICAgICAgICAvKiBjaXBoZXIgdHlwZSAgICAgICAgICAgICAgICAg
Ki8KKyAgICB7CisgICAgICAgIC8qIFNSVENQIHBvbGljeSAqLworICAgICAgICBTUlRQX0FFU19H
Q01fMTI4LCAgICAgICAgICAgICAgIC8qIGNpcGhlciB0eXBlICAgICAgICAgICAgICAgICAqLwog
ICAgICAgICBTUlRQX0FFU19HQ01fMTI4X0tFWV9MRU5fV1NBTFQsIC8qIGNpcGhlciBrZXkgbGVu
Z3RoIGluIG9jdGV0cyAqLwotICAgICAgICBTUlRQX05VTExfQVVUSCwgICAgICAgICAgICAgICAg
ICAgICAgLyogYXV0aGVudGljYXRpb24gZnVuYyB0eXBlICAgICovCisgICAgICAgIFNSVFBfTlVM
TF9BVVRILCAgICAgICAgICAgICAgICAgLyogYXV0aGVudGljYXRpb24gZnVuYyB0eXBlICAgICov
CiAgICAgICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogYXV0aCBrZXkgbGVu
Z3RoIGluIG9jdGV0cyAgICovCiAgICAgICAgIDgsICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgLyogYXV0aCB0YWcgbGVuZ3RoIGluIG9jdGV0cyAgICovCiAgICAgICAgIHNlY19zZXJ2X2F1
dGggICAgICAgICAgICAgICAgICAgLyogc2VjdXJpdHkgc2VydmljZXMgZmxhZyAgICAgICovCiAg
ICAgfSwKICAgICBOVUxMLAogICAgIChzcnRwX21hc3Rlcl9rZXlfdCAqKil0ZXN0X2tleXMsCi0g
ICAgMiwgICAgICAgICAgIC8qIGluZGljYXRlcyB0aGUgbnVtYmVyIG9mIE1hc3RlciBrZXlzICov
Ci0gICAgTlVMTCwgICAgICAgIC8qIGluZGljYXRlcyB0aGF0IEVLVCBpcyBub3QgaW4gdXNlICov
Ci0gICAgMTI4LCAgICAgICAgIC8qIHJlcGxheSB3aW5kb3cgc2l6ZSAqLwotICAgIDAsICAgICAg
ICAgICAvKiByZXRyYW5zbWlzc2lvbiBub3QgYWxsb3dlZCAqLwotICAgIE5VTEwsICAgICAgICAv
KiBubyBlbmNyeXB0ZWQgZXh0ZW5zaW9uIGhlYWRlcnMgKi8KLSAgICAwLCAgICAgICAgICAgLyog
bGlzdCBvZiBlbmNyeXB0ZWQgZXh0ZW5zaW9uIGhlYWRlcnMgaXMgZW1wdHkgKi8KKyAgICAyLCAg
ICAvKiBpbmRpY2F0ZXMgdGhlIG51bWJlciBvZiBNYXN0ZXIga2V5cyAgICAgICAgICAqLworICAg
IE5VTEwsIC8qIGluZGljYXRlcyB0aGF0IEVLVCBpcyBub3QgaW4gdXNlICAgICAgICAgICAgICov
CisgICAgMTI4LCAgLyogcmVwbGF5IHdpbmRvdyBzaXplICAgICAgICAgICAgICAgICAgICAgICAg
ICAgKi8KKyAgICAwLCAgICAvKiByZXRyYW5zbWlzc2lvbiBub3QgYWxsb3dlZCAgICAgICAgICAg
ICAgICAgICAqLworICAgIE5VTEwsIC8qIG5vIGVuY3J5cHRlZCBleHRlbnNpb24gaGVhZGVycyAg
ICAgICAgICAgICAgICovCisgICAgMCwgICAgLyogbGlzdCBvZiBlbmNyeXB0ZWQgZXh0ZW5zaW9u
IGhlYWRlcnMgaXMgZW1wdHkgKi8KICAgICBOVUxMCiB9OwogCiBjb25zdCBzcnRwX3BvbGljeV90
IGFlczI1Nl9nY21fOF9wb2xpY3kgPSB7Ci0gICAgeyBzc3JjX2FueV9vdXRib3VuZCwgMCB9LCAg
ICAgICAgICAgLyogU1NSQyAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgeyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogU1JUUCBwb2xpY3kgICAgICAgICAgICAg
ICAgICAgICovCi0gICAgICAgIFNSVFBfQUVTX0dDTV8yNTYsICAgICAgICAgICAgICAgICAgICAv
KiBjaXBoZXIgdHlwZSAgICAgICAgICAgICAgICAgKi8KKyAgICB7IHNzcmNfYW55X291dGJvdW5k
LCAwIH0sIC8qIFNTUkMgKi8KKyAgICB7CisgICAgICAgIC8qIFNSVFAgcG9saWN5ICovCisgICAg
ICAgIFNSVFBfQUVTX0dDTV8yNTYsICAgICAgICAgICAgICAgLyogY2lwaGVyIHR5cGUgICAgICAg
ICAgICAgICAgICovCiAgICAgICAgIFNSVFBfQUVTX0dDTV8yNTZfS0VZX0xFTl9XU0FMVCwgLyog
Y2lwaGVyIGtleSBsZW5ndGggaW4gb2N0ZXRzICovCi0gICAgICAgIFNSVFBfTlVMTF9BVVRILCAg
ICAgICAgICAgICAgICAgICAgICAvKiBhdXRoZW50aWNhdGlvbiBmdW5jIHR5cGUgICAgKi8KKyAg
ICAgICAgU1JUUF9OVUxMX0FVVEgsICAgICAgICAgICAgICAgICAvKiBhdXRoZW50aWNhdGlvbiBm
dW5jIHR5cGUgICAgKi8KICAgICAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAv
KiBhdXRoIGtleSBsZW5ndGggaW4gb2N0ZXRzICAgKi8KICAgICAgICAgOCwgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAvKiBhdXRoIHRhZyBsZW5ndGggaW4gb2N0ZXRzICAgKi8KICAgICAg
ICAgc2VjX3NlcnZfY29uZl9hbmRfYXV0aCAgICAgICAgICAvKiBzZWN1cml0eSBzZXJ2aWNlcyBm
bGFnICAgICAgKi8KICAgICB9LAotICAgIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIFNSVENQIHBvbGljeSAgICAgICAgICAgICAgICAgICAqLwotICAgICAgICBTUlRQX0FF
U19HQ01fMjU2LCAgICAgICAgICAgICAgICAgICAgLyogY2lwaGVyIHR5cGUgICAgICAgICAgICAg
ICAgICovCisgICAgeworICAgICAgICAvKiBTUlRDUCBwb2xpY3kgKi8KKyAgICAgICAgU1JUUF9B
RVNfR0NNXzI1NiwgICAgICAgICAgICAgICAvKiBjaXBoZXIgdHlwZSAgICAgICAgICAgICAgICAg
Ki8KICAgICAgICAgU1JUUF9BRVNfR0NNXzI1Nl9LRVlfTEVOX1dTQUxULCAvKiBjaXBoZXIga2V5
IGxlbmd0aCBpbiBvY3RldHMgKi8KLSAgICAgICAgU1JUUF9OVUxMX0FVVEgsICAgICAgICAgICAg
ICAgICAgICAgIC8qIGF1dGhlbnRpY2F0aW9uIGZ1bmMgdHlwZSAgICAqLworICAgICAgICBTUlRQ
X05VTExfQVVUSCwgICAgICAgICAgICAgICAgIC8qIGF1dGhlbnRpY2F0aW9uIGZ1bmMgdHlwZSAg
ICAqLwogICAgICAgICAwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIGF1dGgga2V5
IGxlbmd0aCBpbiBvY3RldHMgICAqLwogICAgICAgICA4LCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIC8qIGF1dGggdGFnIGxlbmd0aCBpbiBvY3RldHMgICAqLwogICAgICAgICBzZWNfc2Vy
dl9jb25mX2FuZF9hdXRoICAgICAgICAgIC8qIHNlY3VyaXR5IHNlcnZpY2VzIGZsYWcgICAgICAq
LwogICAgIH0sCiAgICAgTlVMTCwKICAgICAoc3J0cF9tYXN0ZXJfa2V5X3QgKiopdGVzdF9rZXlz
LAotICAgIDIsICAgICAgICAgICAvKiBpbmRpY2F0ZXMgdGhlIG51bWJlciBvZiBNYXN0ZXIga2V5
cyAqLwotICAgIE5VTEwsICAgICAgICAvKiBpbmRpY2F0ZXMgdGhhdCBFS1QgaXMgbm90IGluIHVz
ZSAqLwotICAgIDEyOCwgICAgICAgICAvKiByZXBsYXkgd2luZG93IHNpemUgKi8KLSAgICAwLCAg
ICAgICAgICAgLyogcmV0cmFuc21pc3Npb24gbm90IGFsbG93ZWQgKi8KLSAgICBOVUxMLCAgICAg
ICAgLyogbm8gZW5jcnlwdGVkIGV4dGVuc2lvbiBoZWFkZXJzICovCi0gICAgMCwgICAgICAgICAg
IC8qIGxpc3Qgb2YgZW5jcnlwdGVkIGV4dGVuc2lvbiBoZWFkZXJzIGlzIGVtcHR5ICovCisgICAg
MiwgICAgLyogaW5kaWNhdGVzIHRoZSBudW1iZXIgb2YgTWFzdGVyIGtleXMgICAgICAgICAgKi8K
KyAgICBOVUxMLCAvKiBpbmRpY2F0ZXMgdGhhdCBFS1QgaXMgbm90IGluIHVzZSAgICAgICAgICAg
ICAqLworICAgIDEyOCwgIC8qIHJlcGxheSB3aW5kb3cgc2l6ZSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICovCisgICAgMCwgICAgLyogcmV0cmFuc21pc3Npb24gbm90IGFsbG93ZWQgICAgICAg
ICAgICAgICAgICAgKi8KKyAgICBOVUxMLCAvKiBubyBlbmNyeXB0ZWQgZXh0ZW5zaW9uIGhlYWRl
cnMgICAgICAgICAgICAgICAqLworICAgIDAsICAgIC8qIGxpc3Qgb2YgZW5jcnlwdGVkIGV4dGVu
c2lvbiBoZWFkZXJzIGlzIGVtcHR5ICovCiAgICAgTlVMTAogfTsKIAogY29uc3Qgc3J0cF9wb2xp
Y3lfdCBhZXMyNTZfZ2NtXzhfY2F1dGhfcG9saWN5ID0gewotICAgIHsgc3NyY19hbnlfb3V0Ym91
bmQsIDAgfSwgICAgICAgICAgIC8qIFNTUkMgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwot
ICAgIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIFNSVFAgcG9saWN5ICAg
ICAgICAgICAgICAgICAgICAqLwotICAgICAgICBTUlRQX0FFU19HQ01fMjU2LCAgICAgICAgICAg
ICAgICAgICAgLyogY2lwaGVyIHR5cGUgICAgICAgICAgICAgICAgICovCisgICAgeyBzc3JjX2Fu
eV9vdXRib3VuZCwgMCB9LCAvKiBTU1JDICovCisgICAgeworICAgICAgICAvKiBTUlRQIHBvbGlj
eSAqLworICAgICAgICBTUlRQX0FFU19HQ01fMjU2LCAgICAgICAgICAgICAgIC8qIGNpcGhlciB0
eXBlICAgICAgICAgICAgICAgICAqLwogICAgICAgICBTUlRQX0FFU19HQ01fMjU2X0tFWV9MRU5f
V1NBTFQsIC8qIGNpcGhlciBrZXkgbGVuZ3RoIGluIG9jdGV0cyAqLwotICAgICAgICBTUlRQX05V
TExfQVVUSCwgICAgICAgICAgICAgICAgICAgICAgLyogYXV0aGVudGljYXRpb24gZnVuYyB0eXBl
ICAgICovCisgICAgICAgIFNSVFBfTlVMTF9BVVRILCAgICAgICAgICAgICAgICAgLyogYXV0aGVu
dGljYXRpb24gZnVuYyB0eXBlICAgICovCiAgICAgICAgIDAsICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgLyogYXV0aCBrZXkgbGVuZ3RoIGluIG9jdGV0cyAgICovCiAgICAgICAgIDgsICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogYXV0aCB0YWcgbGVuZ3RoIGluIG9jdGV0cyAg
ICovCiAgICAgICAgIHNlY19zZXJ2X2NvbmZfYW5kX2F1dGggICAgICAgICAgLyogc2VjdXJpdHkg
c2VydmljZXMgZmxhZyAgICAgICovCiAgICAgfSwKLSAgICB7ICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAvKiBTUlRDUCBwb2xpY3kgICAgICAgICAgICAgICAgICAgKi8KLSAgICAg
ICAgU1JUUF9BRVNfR0NNXzI1NiwgICAgICAgICAgICAgICAgICAgIC8qIGNpcGhlciB0eXBlICAg
ICAgICAgICAgICAgICAqLworICAgIHsKKyAgICAgICAgLyogU1JUQ1AgcG9saWN5ICovCisgICAg
ICAgIFNSVFBfQUVTX0dDTV8yNTYsICAgICAgICAgICAgICAgLyogY2lwaGVyIHR5cGUgICAgICAg
ICAgICAgICAgICovCiAgICAgICAgIFNSVFBfQUVTX0dDTV8yNTZfS0VZX0xFTl9XU0FMVCwgLyog
Y2lwaGVyIGtleSBsZW5ndGggaW4gb2N0ZXRzICovCi0gICAgICAgIFNSVFBfTlVMTF9BVVRILCAg
ICAgICAgICAgICAgICAgICAgICAvKiBhdXRoZW50aWNhdGlvbiBmdW5jIHR5cGUgICAgKi8KKyAg
ICAgICAgU1JUUF9OVUxMX0FVVEgsICAgICAgICAgICAgICAgICAvKiBhdXRoZW50aWNhdGlvbiBm
dW5jIHR5cGUgICAgKi8KICAgICAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAv
KiBhdXRoIGtleSBsZW5ndGggaW4gb2N0ZXRzICAgKi8KICAgICAgICAgOCwgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAvKiBhdXRoIHRhZyBsZW5ndGggaW4gb2N0ZXRzICAgKi8KICAgICAg
ICAgc2VjX3NlcnZfYXV0aCAgICAgICAgICAgICAgICAgICAvKiBzZWN1cml0eSBzZXJ2aWNlcyBm
bGFnICAgICAgKi8KICAgICB9LAogICAgIE5VTEwsCiAgICAgKHNydHBfbWFzdGVyX2tleV90ICoq
KXRlc3Rfa2V5cywKLSAgICAyLCAgICAgICAgICAgLyogaW5kaWNhdGVzIHRoZSBudW1iZXIgb2Yg
TWFzdGVyIGtleXMgKi8KLSAgICBOVUxMLCAgICAgICAgLyogaW5kaWNhdGVzIHRoYXQgRUtUIGlz
IG5vdCBpbiB1c2UgKi8KLSAgICAxMjgsICAgICAgICAgLyogcmVwbGF5IHdpbmRvdyBzaXplICov
Ci0gICAgMCwgICAgICAgICAgIC8qIHJldHJhbnNtaXNzaW9uIG5vdCBhbGxvd2VkICovCi0gICAg
TlVMTCwgICAgICAgIC8qIG5vIGVuY3J5cHRlZCBleHRlbnNpb24gaGVhZGVycyAqLwotICAgIDAs
ICAgICAgICAgICAvKiBsaXN0IG9mIGVuY3J5cHRlZCBleHRlbnNpb24gaGVhZGVycyBpcyBlbXB0
eSAqLworICAgIDIsICAgIC8qIGluZGljYXRlcyB0aGUgbnVtYmVyIG9mIE1hc3RlciBrZXlzICAg
ICAgICAgICovCisgICAgTlVMTCwgLyogaW5kaWNhdGVzIHRoYXQgRUtUIGlzIG5vdCBpbiB1c2Ug
ICAgICAgICAgICAgKi8KKyAgICAxMjgsICAvKiByZXBsYXkgd2luZG93IHNpemUgICAgICAgICAg
ICAgICAgICAgICAgICAgICAqLworICAgIDAsICAgIC8qIHJldHJhbnNtaXNzaW9uIG5vdCBhbGxv
d2VkICAgICAgICAgICAgICAgICAgICovCisgICAgTlVMTCwgLyogbm8gZW5jcnlwdGVkIGV4dGVu
c2lvbiBoZWFkZXJzICAgICAgICAgICAgICAgKi8KKyAgICAwLCAgICAvKiBsaXN0IG9mIGVuY3J5
cHRlZCBleHRlbnNpb24gaGVhZGVycyBpcyBlbXB0eSAqLwogICAgIE5VTEwKIH07CiAjZW5kaWYK
IAogY29uc3Qgc3J0cF9wb2xpY3lfdCBudWxsX3BvbGljeSA9IHsKLSAgICB7IHNzcmNfYW55X291
dGJvdW5kLCAwIH0sIC8qIFNTUkMgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIHsgc3Ny
Y19hbnlfb3V0Ym91bmQsIDAgfSwgLyogU1NSQyAqLwogICAgIHsKLSAgICAgICAgU1JUUF9OVUxM
X0NJUEhFUiwgICAgICAgICAgLyogY2lwaGVyIHR5cGUgICAgICAgICAgICAgICAgICovCi0gICAg
ICAgIDAsICAgICAgICAgICAgICAgICAgICAvKiBjaXBoZXIga2V5IGxlbmd0aCBpbiBvY3RldHMg
Ki8KLSAgICAgICAgU1JUUF9OVUxMX0FVVEgsICAgICAgICAgICAgLyogYXV0aGVudGljYXRpb24g
ZnVuYyB0eXBlICAgICovCi0gICAgICAgIDAsICAgICAgICAgICAgICAgICAgICAvKiBhdXRoIGtl
eSBsZW5ndGggaW4gb2N0ZXRzICAgKi8KLSAgICAgICAgMCwgICAgICAgICAgICAgICAgICAgIC8q
IGF1dGggdGFnIGxlbmd0aCBpbiBvY3RldHMgICAqLwotICAgICAgICBzZWNfc2Vydl9ub25lICAg
ICAgICAgLyogc2VjdXJpdHkgc2VydmljZXMgZmxhZyAgICAgICovCisgICAgICAgIFNSVFBfTlVM
TF9DSVBIRVIsIC8qIGNpcGhlciB0eXBlICAgICAgICAgICAgICAgICAqLworICAgICAgICAwLCAg
ICAgICAgICAgICAgICAvKiBjaXBoZXIga2V5IGxlbmd0aCBpbiBvY3RldHMgKi8KKyAgICAgICAg
U1JUUF9OVUxMX0FVVEgsICAgLyogYXV0aGVudGljYXRpb24gZnVuYyB0eXBlICAgICovCisgICAg
ICAgIDAsICAgICAgICAgICAgICAgIC8qIGF1dGgga2V5IGxlbmd0aCBpbiBvY3RldHMgICAqLwor
ICAgICAgICAwLCAgICAgICAgICAgICAgICAvKiBhdXRoIHRhZyBsZW5ndGggaW4gb2N0ZXRzICAg
Ki8KKyAgICAgICAgc2VjX3NlcnZfbm9uZSAgICAgLyogc2VjdXJpdHkgc2VydmljZXMgZmxhZyAg
ICAgICovCiAgICAgfSwKICAgICB7Ci0gICAgICAgIFNSVFBfTlVMTF9DSVBIRVIsICAgICAgICAv
KiBjaXBoZXIgdHlwZSAgICAgICAgICAgICAgICAgKi8KLSAgICAgICAgMCwgICAgICAgICAgICAg
ICAgICAvKiBjaXBoZXIga2V5IGxlbmd0aCBpbiBvY3RldHMgKi8KLSAgICAgICAgU1JUUF9OVUxM
X0FVVEgsICAgICAgICAgIC8qIGF1dGhlbnRpY2F0aW9uIGZ1bmMgdHlwZSAgICAqLwotICAgICAg
ICAwLCAgICAgICAgICAgICAgICAgIC8qIGF1dGgga2V5IGxlbmd0aCBpbiBvY3RldHMgICAqLwot
ICAgICAgICAwLCAgICAgICAgICAgICAgICAgIC8qIGF1dGggdGFnIGxlbmd0aCBpbiBvY3RldHMg
ICAqLwotICAgICAgICBzZWNfc2Vydl9ub25lICAgICAgIC8qIHNlY3VyaXR5IHNlcnZpY2VzIGZs
YWcgICAgICAqLworICAgICAgICBTUlRQX05VTExfQ0lQSEVSLCAvKiBjaXBoZXIgdHlwZSAgICAg
ICAgICAgICAgICAgKi8KKyAgICAgICAgMCwgICAgICAgICAgICAgICAgLyogY2lwaGVyIGtleSBs
ZW5ndGggaW4gb2N0ZXRzICovCisgICAgICAgIFNSVFBfTlVMTF9BVVRILCAgIC8qIGF1dGhlbnRp
Y2F0aW9uIGZ1bmMgdHlwZSAgICAqLworICAgICAgICAwLCAgICAgICAgICAgICAgICAvKiBhdXRo
IGtleSBsZW5ndGggaW4gb2N0ZXRzICAgKi8KKyAgICAgICAgMCwgICAgICAgICAgICAgICAgLyog
YXV0aCB0YWcgbGVuZ3RoIGluIG9jdGV0cyAgICovCisgICAgICAgIHNlY19zZXJ2X25vbmUgICAg
IC8qIHNlY3VyaXR5IHNlcnZpY2VzIGZsYWcgICAgICAqLwogICAgIH0sCiAgICAgTlVMTCwKICAg
ICAoc3J0cF9tYXN0ZXJfa2V5X3QgKiopdGVzdF9rZXlzLAotICAgIDIsICAgICAgICAgLyogaW5k
aWNhdGVzIHRoZSBudW1iZXIgb2YgTWFzdGVyIGtleXMgKi8KLSAgICBOVUxMLCAgICAgIC8qIGlu
ZGljYXRlcyB0aGF0IEVLVCBpcyBub3QgaW4gdXNlICovCi0gICAgMTI4LCAgICAgICAvKiByZXBs
YXkgd2luZG93IHNpemUgKi8KLSAgICAwLCAgICAgICAgIC8qIHJldHJhbnNtaXNzaW9uIG5vdCBh
bGxvd2VkICovCi0gICAgTlVMTCwgICAgICAvKiBubyBlbmNyeXB0ZWQgZXh0ZW5zaW9uIGhlYWRl
cnMgKi8KLSAgICAwLCAgICAgICAgIC8qIGxpc3Qgb2YgZW5jcnlwdGVkIGV4dGVuc2lvbiBoZWFk
ZXJzIGlzIGVtcHR5ICovCisgICAgMiwgICAgLyogaW5kaWNhdGVzIHRoZSBudW1iZXIgb2YgTWFz
dGVyIGtleXMgICAgICAgICAgKi8KKyAgICBOVUxMLCAvKiBpbmRpY2F0ZXMgdGhhdCBFS1QgaXMg
bm90IGluIHVzZSAgICAgICAgICAgICAqLworICAgIDEyOCwgIC8qIHJlcGxheSB3aW5kb3cgc2l6
ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgICAgMCwgICAgLyogcmV0cmFuc21pc3Np
b24gbm90IGFsbG93ZWQgICAgICAgICAgICAgICAgICAgKi8KKyAgICBOVUxMLCAvKiBubyBlbmNy
eXB0ZWQgZXh0ZW5zaW9uIGhlYWRlcnMgICAgICAgICAgICAgICAqLworICAgIDAsICAgIC8qIGxp
c3Qgb2YgZW5jcnlwdGVkIGV4dGVuc2lvbiBoZWFkZXJzIGlzIGVtcHR5ICovCiAgICAgTlVMTAog
fTsKIAorLy8gY2xhbmctZm9ybWF0IG9mZgogdW5zaWduZWQgY2hhciB0ZXN0XzI1Nl9rZXlbNDZd
ID0gewogICAgIDB4ZjAsIDB4ZjAsIDB4NDksIDB4MTQsIDB4YjUsIDB4MTMsIDB4ZjIsIDB4NzYs
CiAgICAgMHgzYSwgMHgxYiwgMHgxZiwgMHhhMSwgMHgzMCwgMHhmMSwgMHgwZSwgMHgyOSwKQEAg
LTM3MDEsODAgKzM2OTEsODYgQEAgc3J0cF9tYXN0ZXJfa2V5X3QgKnRlc3RfMjU2X2tleXNbMl0g
PSB7CiAgICAgJm1hc3Rlcl9rZXlfMSwKICAgICAmbWFzdGVyX2tleV8yCiB9OworLy8gY2xhbmct
Zm9ybWF0IG9uCiAKIGNvbnN0IHNydHBfcG9saWN5X3QgYWVzXzI1Nl9obWFjX3BvbGljeSA9IHsK
LSAgICB7IHNzcmNfYW55X291dGJvdW5kLCAwIH0sICAvKiBTU1JDICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKi8KLSAgICB7ICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBTUlRQIHBvbGlj
eSAgICAgICAgICAgICAgICAgICAgKi8KKyAgICB7IHNzcmNfYW55X291dGJvdW5kLCAwIH0sIC8q
IFNTUkMgKi8KKyAgICB7CisgICAgICAgIC8qIFNSVFAgcG9saWN5ICovCiAgICAgICAgIFNSVFBf
QUVTX0lDTV8yNTYsICAgICAgICAgICAgICAgLyogY2lwaGVyIHR5cGUgICAgICAgICAgICAgICAg
ICovCiAgICAgICAgIFNSVFBfQUVTX0lDTV8yNTZfS0VZX0xFTl9XU0FMVCwgLyogY2lwaGVyIGtl
eSBsZW5ndGggaW4gb2N0ZXRzICovCi0gICAgICAgIFNSVFBfSE1BQ19TSEExLCAgICAgICAgICAg
ICAvKiBhdXRoZW50aWNhdGlvbiBmdW5jIHR5cGUgICAgKi8KLSAgICAgICAgMjAsICAgICAgICAg
ICAgICAgICAgICAvKiBhdXRoIGtleSBsZW5ndGggaW4gb2N0ZXRzICAgKi8KLSAgICAgICAgMTAs
ICAgICAgICAgICAgICAgICAgICAvKiBhdXRoIHRhZyBsZW5ndGggaW4gb2N0ZXRzICAgKi8KLSAg
ICAgICAgc2VjX3NlcnZfY29uZl9hbmRfYXV0aCAvKiBzZWN1cml0eSBzZXJ2aWNlcyBmbGFnICAg
ICAgKi8KKyAgICAgICAgU1JUUF9ITUFDX1NIQTEsICAgICAgICAgICAgICAgICAvKiBhdXRoZW50
aWNhdGlvbiBmdW5jIHR5cGUgICAgKi8KKyAgICAgICAgMjAsICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiBhdXRoIGtleSBsZW5ndGggaW4gb2N0ZXRzICAgKi8KKyAgICAgICAgMTAsICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBhdXRoIHRhZyBsZW5ndGggaW4gb2N0ZXRzICAg
Ki8KKyAgICAgICAgc2VjX3NlcnZfY29uZl9hbmRfYXV0aCAgICAgICAgICAvKiBzZWN1cml0eSBz
ZXJ2aWNlcyBmbGFnICAgICAgKi8KICAgICB9LAotICAgIHsgICAgICAgICAgICAgICAgICAgICAg
ICAgIC8qIFNSVENQIHBvbGljeSAgICAgICAgICAgICAgICAgICAqLworICAgIHsKKyAgICAgICAg
LyogU1JUQ1AgcG9saWN5ICovCiAgICAgICAgIFNSVFBfQUVTX0lDTV8yNTYsICAgICAgICAgICAg
ICAgLyogY2lwaGVyIHR5cGUgICAgICAgICAgICAgICAgICovCiAgICAgICAgIFNSVFBfQUVTX0lD
TV8yNTZfS0VZX0xFTl9XU0FMVCwgLyogY2lwaGVyIGtleSBsZW5ndGggaW4gb2N0ZXRzICovCi0g
ICAgICAgIFNSVFBfSE1BQ19TSEExLCAgICAgICAgICAgICAvKiBhdXRoZW50aWNhdGlvbiBmdW5j
IHR5cGUgICAgKi8KLSAgICAgICAgMjAsICAgICAgICAgICAgICAgICAgICAvKiBhdXRoIGtleSBs
ZW5ndGggaW4gb2N0ZXRzICAgKi8KLSAgICAgICAgMTAsICAgICAgICAgICAgICAgICAgICAvKiBh
dXRoIHRhZyBsZW5ndGggaW4gb2N0ZXRzICAgKi8KLSAgICAgICAgc2VjX3NlcnZfY29uZl9hbmRf
YXV0aCAvKiBzZWN1cml0eSBzZXJ2aWNlcyBmbGFnICAgICAgKi8KKyAgICAgICAgU1JUUF9ITUFD
X1NIQTEsICAgICAgICAgICAgICAgICAvKiBhdXRoZW50aWNhdGlvbiBmdW5jIHR5cGUgICAgKi8K
KyAgICAgICAgMjAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBhdXRoIGtleSBsZW5n
dGggaW4gb2N0ZXRzICAgKi8KKyAgICAgICAgMTAsICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAvKiBhdXRoIHRhZyBsZW5ndGggaW4gb2N0ZXRzICAgKi8KKyAgICAgICAgc2VjX3NlcnZfY29u
Zl9hbmRfYXV0aCAgICAgICAgICAvKiBzZWN1cml0eSBzZXJ2aWNlcyBmbGFnICAgICAgKi8KICAg
ICB9LAogICAgIE5VTEwsCiAgICAgKHNydHBfbWFzdGVyX2tleV90ICoqKXRlc3RfMjU2X2tleXMs
Ci0gICAgMiwgICAgICAgICAvKiBpbmRpY2F0ZXMgdGhlIG51bWJlciBvZiBNYXN0ZXIga2V5cyAq
LwotICAgIE5VTEwsICAgICAgLyogaW5kaWNhdGVzIHRoYXQgRUtUIGlzIG5vdCBpbiB1c2UgKi8K
LSAgICAxMjgsICAgICAgIC8qIHJlcGxheSB3aW5kb3cgc2l6ZSAqLwotICAgIDAsICAgICAgICAg
LyogcmV0cmFuc21pc3Npb24gbm90IGFsbG93ZWQgKi8KLSAgICBOVUxMLCAgICAgIC8qIG5vIGVu
Y3J5cHRlZCBleHRlbnNpb24gaGVhZGVycyAqLwotICAgIDAsICAgICAgICAgLyogbGlzdCBvZiBl
bmNyeXB0ZWQgZXh0ZW5zaW9uIGhlYWRlcnMgaXMgZW1wdHkgKi8KKyAgICAyLCAgICAvKiBpbmRp
Y2F0ZXMgdGhlIG51bWJlciBvZiBNYXN0ZXIga2V5cyAgICAgICAgICAqLworICAgIE5VTEwsIC8q
IGluZGljYXRlcyB0aGF0IEVLVCBpcyBub3QgaW4gdXNlICAgICAgICAgICAgICovCisgICAgMTI4
LCAgLyogcmVwbGF5IHdpbmRvdyBzaXplICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAg
ICAwLCAgICAvKiByZXRyYW5zbWlzc2lvbiBub3QgYWxsb3dlZCAgICAgICAgICAgICAgICAgICAq
LworICAgIE5VTEwsIC8qIG5vIGVuY3J5cHRlZCBleHRlbnNpb24gaGVhZGVycyAgICAgICAgICAg
ICAgICovCisgICAgMCwgICAgLyogbGlzdCBvZiBlbmNyeXB0ZWQgZXh0ZW5zaW9uIGhlYWRlcnMg
aXMgZW1wdHkgKi8KICAgICBOVUxMCiB9OwogCisvLyBjbGFuZy1mb3JtYXQgb2ZmCiB1aW50OF90
IGVrdF90ZXN0X2tleVsxNl0gPSB7CiAgICAgMHg3NywgMHgyNiwgMHg5ZCwgMHhhYywgMHgxNiwg
MHhhMywgMHgyOCwgMHhjYSwKICAgICAweDhlLCAweGM5LCAweDY4LCAweDRiLCAweGNjLCAweGM0
LCAweGQyLCAweDFiCiB9OworLy8gY2xhbmctZm9ybWF0IG9uCiAKICNpbmNsdWRlICJla3QuaCIK
IAorLy8gY2xhbmctZm9ybWF0IG9mZgogc3J0cF9la3RfcG9saWN5X2N0eF90IGVrdF90ZXN0X3Bv
bGljeSA9IHsKICAgICAweGE1YTUsICAgICAgICAgICAgICAgICAgICAgLyogU1BJICovCiAgICAg
U1JUUF9FS1RfQ0lQSEVSX0FFU18xMjhfRUNCLAogICAgIGVrdF90ZXN0X2tleSwKICAgICBOVUxM
CiB9OworLy8gY2xhbmctZm9ybWF0IG9uCiAKIGNvbnN0IHNydHBfcG9saWN5X3QgaG1hY19vbmx5
X3dpdGhfZWt0X3BvbGljeSA9IHsKLSAgICB7IHNzcmNfYW55X291dGJvdW5kLCAwIH0sIC8qIFNT
UkMgICAgICAgICAgICAgICAgICAgICAgICAqLworICAgIHsgc3NyY19hbnlfb3V0Ym91bmQsIDAg
fSwgLyogU1NSQyAqLwogICAgIHsKLSAgICAgICAgU1JUUF9OVUxMX0NJUEhFUiwgICAgICAgICAg
LyogY2lwaGVyIHR5cGUgICAgICAgICAgICAgICAgICovCi0gICAgICAgIDAsICAgICAgICAgICAg
ICAgICAgICAvKiBjaXBoZXIga2V5IGxlbmd0aCBpbiBvY3RldHMgKi8KLSAgICAgICAgU1JUUF9I
TUFDX1NIQTEsICAgICAgICAgICAgLyogYXV0aGVudGljYXRpb24gZnVuYyB0eXBlICAgICovCi0g
ICAgICAgIDIwLCAgICAgICAgICAgICAgICAgICAvKiBhdXRoIGtleSBsZW5ndGggaW4gb2N0ZXRz
ICAgKi8KLSAgICAgICAgNCwgICAgICAgICAgICAgICAgICAgIC8qIGF1dGggdGFnIGxlbmd0aCBp
biBvY3RldHMgICAqLwotICAgICAgICBzZWNfc2Vydl9hdXRoICAgICAgICAgLyogc2VjdXJpdHkg
c2VydmljZXMgZmxhZyAgICAgICovCisgICAgICAgIFNSVFBfTlVMTF9DSVBIRVIsIC8qIGNpcGhl
ciB0eXBlICAgICAgICAgICAgICAgICAqLworICAgICAgICAwLCAgICAgICAgICAgICAgICAvKiBj
aXBoZXIga2V5IGxlbmd0aCBpbiBvY3RldHMgKi8KKyAgICAgICAgU1JUUF9ITUFDX1NIQTEsICAg
LyogYXV0aGVudGljYXRpb24gZnVuYyB0eXBlICAgICovCisgICAgICAgIDIwLCAgICAgICAgICAg
ICAgIC8qIGF1dGgga2V5IGxlbmd0aCBpbiBvY3RldHMgICAqLworICAgICAgICA0LCAgICAgICAg
ICAgICAgICAvKiBhdXRoIHRhZyBsZW5ndGggaW4gb2N0ZXRzICAgKi8KKyAgICAgICAgc2VjX3Nl
cnZfYXV0aCAgICAgLyogc2VjdXJpdHkgc2VydmljZXMgZmxhZyAgICAgICovCiAgICAgfSwKICAg
ICB7Ci0gICAgICAgIFNSVFBfTlVMTF9DSVBIRVIsICAgICAgICAvKiBjaXBoZXIgdHlwZSAgICAg
ICAgICAgICAgICAgKi8KLSAgICAgICAgMCwgICAgICAgICAgICAgICAgICAvKiBjaXBoZXIga2V5
IGxlbmd0aCBpbiBvY3RldHMgKi8KLSAgICAgICAgU1JUUF9ITUFDX1NIQTEsICAgICAgICAgIC8q
IGF1dGhlbnRpY2F0aW9uIGZ1bmMgdHlwZSAgICAqLwotICAgICAgICAyMCwgICAgICAgICAgICAg
ICAgIC8qIGF1dGgga2V5IGxlbmd0aCBpbiBvY3RldHMgICAqLwotICAgICAgICA0LCAgICAgICAg
ICAgICAgICAgIC8qIGF1dGggdGFnIGxlbmd0aCBpbiBvY3RldHMgICAqLwotICAgICAgICBzZWNf
c2Vydl9hdXRoICAgICAgIC8qIHNlY3VyaXR5IHNlcnZpY2VzIGZsYWcgICAgICAqLworICAgICAg
ICBTUlRQX05VTExfQ0lQSEVSLCAvKiBjaXBoZXIgdHlwZSAgICAgICAgICAgICAgICAgKi8KKyAg
ICAgICAgMCwgICAgICAgICAgICAgICAgLyogY2lwaGVyIGtleSBsZW5ndGggaW4gb2N0ZXRzICov
CisgICAgICAgIFNSVFBfSE1BQ19TSEExLCAgIC8qIGF1dGhlbnRpY2F0aW9uIGZ1bmMgdHlwZSAg
ICAqLworICAgICAgICAyMCwgICAgICAgICAgICAgICAvKiBhdXRoIGtleSBsZW5ndGggaW4gb2N0
ZXRzICAgKi8KKyAgICAgICAgNCwgICAgICAgICAgICAgICAgLyogYXV0aCB0YWcgbGVuZ3RoIGlu
IG9jdGV0cyAgICovCisgICAgICAgIHNlY19zZXJ2X2F1dGggICAgIC8qIHNlY3VyaXR5IHNlcnZp
Y2VzIGZsYWcgICAgICAqLwogICAgIH0sCiAgICAgTlVMTCwKICAgICAoc3J0cF9tYXN0ZXJfa2V5
X3QgKiopdGVzdF9rZXlzLAotICAgIDIsICAgICAgICAgICAgICAgICAgICAgLyogaW5kaWNhdGVz
IHRoZSBudW1iZXIgb2YgTWFzdGVyIGtleXMgKi8KLSAgICAmZWt0X3Rlc3RfcG9saWN5LCAgICAg
IC8qIGluZGljYXRlcyB0aGF0IEVLVCBpcyBub3QgaW4gdXNlICovCi0gICAgMTI4LCAgICAgICAg
ICAgICAgICAgICAvKiByZXBsYXkgd2luZG93IHNpemUgKi8KLSAgICAwLCAgICAgICAgICAgICAg
ICAgICAgIC8qIHJldHJhbnNtaXNzaW9uIG5vdCBhbGxvd2VkICovCi0gICAgTlVMTCwgICAgICAg
ICAgICAgICAgICAvKiBubyBlbmNyeXB0ZWQgZXh0ZW5zaW9uIGhlYWRlcnMgKi8KLSAgICAwLCAg
ICAgICAgICAgICAgICAgICAgIC8qIGxpc3Qgb2YgZW5jcnlwdGVkIGV4dGVuc2lvbiBoZWFkZXJz
IGlzIGVtcHR5ICovCisgICAgMiwgICAgICAgICAgICAgICAgLyogaW5kaWNhdGVzIHRoZSBudW1i
ZXIgb2YgTWFzdGVyIGtleXMgICAgICAgICAgKi8KKyAgICAmZWt0X3Rlc3RfcG9saWN5LCAvKiBp
bmRpY2F0ZXMgdGhhdCBFS1QgaXMgbm90IGluIHVzZSAgICAgICAgICAgICAqLworICAgIDEyOCwg
ICAgICAgICAgICAgIC8qIHJlcGxheSB3aW5kb3cgc2l6ZSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCisgICAgMCwgICAgICAgICAgICAgICAgLyogcmV0cmFuc21pc3Npb24gbm90IGFsbG93
ZWQgICAgICAgICAgICAgICAgICAgKi8KKyAgICBOVUxMLCAgICAgICAgICAgICAvKiBubyBlbmNy
eXB0ZWQgZXh0ZW5zaW9uIGhlYWRlcnMgICAgICAgICAgICAgICAqLworICAgIDAsICAgICAgICAg
ICAgICAgIC8qIGxpc3Qgb2YgZW5jcnlwdGVkIGV4dGVuc2lvbiBoZWFkZXJzIGlzIGVtcHR5ICov
CiAgICAgTlVMTAogfTsKIAotCiAvKgogICogYW4gYXJyYXkgb2YgcG9pbnRlcnMgdG8gdGhlIHBv
bGljaWVzIGxpc3RlZCBhYm92ZQogICoKQEAgLTM3ODUsOCArMzc4MSw4IEBAIGNvbnN0IHNydHBf
cG9saWN5X3QgaG1hY19vbmx5X3dpdGhfZWt0X3BvbGljeSA9IHsKICAqIGFkZCB0byB0aGlzIGxp
c3QsIHlvdSBzaG91bGQgZG8gaXQgYXQgdGhlIGVuZC4KICAqLwogCi1jb25zdCBzcnRwX3BvbGlj
eV90ICoKLXBvbGljeV9hcnJheVtdID0geworLy8gY2xhbmctZm9ybWF0IG9mZgorY29uc3Qgc3J0
cF9wb2xpY3lfdCAqcG9saWN5X2FycmF5W10gPSB7CiAgICAgJmhtYWNfb25seV9wb2xpY3ksCiAg
ICAgJmFlc19vbmx5X3BvbGljeSwKICAgICAmZGVmYXVsdF9wb2xpY3ksCkBAIC0zODAxLDMyICsz
Nzk3LDM1IEBAIHBvbGljeV9hcnJheVtdID0gewogICAgICZobWFjX29ubHlfd2l0aF9la3RfcG9s
aWN5LAogICAgIE5VTEwKIH07CisvLyBjbGFuZy1mb3JtYXQgb24KIAogY29uc3Qgc3J0cF9wb2xp
Y3lfdCB3aWxkY2FyZF9wb2xpY3kgPSB7Ci0gICAgeyBzc3JjX2FueV9vdXRib3VuZCwgMCB9LCAg
LyogU1NSQyAgICAgICAgICAgICAgICAgICAgICAgICovCi0gICAgeyAgICAgICAgICAgICAgICAg
ICAgICAgICAgLyogU1JUUCBwb2xpY3kgICAgICAgICAgICAgICAgICAgICovCi0gICAgICAgIFNS
VFBfQUVTX0lDTV8xMjgsICAgICAgICAgICAvKiBjaXBoZXIgdHlwZSAgICAgICAgICAgICAgICAg
Ki8KKyAgICB7IHNzcmNfYW55X291dGJvdW5kLCAwIH0sIC8qIFNTUkMgKi8KKyAgICB7CisgICAg
ICAgIC8qIFNSVFAgcG9saWN5ICovCisgICAgICAgIFNSVFBfQUVTX0lDTV8xMjgsICAgICAgICAg
ICAgICAgLyogY2lwaGVyIHR5cGUgICAgICAgICAgICAgICAgICovCiAgICAgICAgIFNSVFBfQUVT
X0lDTV8xMjhfS0VZX0xFTl9XU0FMVCwgLyogY2lwaGVyIGtleSBsZW5ndGggaW4gb2N0ZXRzICov
Ci0gICAgICAgIFNSVFBfSE1BQ19TSEExLCAgICAgICAgICAgICAvKiBhdXRoZW50aWNhdGlvbiBm
dW5jIHR5cGUgICAgKi8KLSAgICAgICAgMTYsICAgICAgICAgICAgICAgICAgICAvKiBhdXRoIGtl
eSBsZW5ndGggaW4gb2N0ZXRzICAgKi8KLSAgICAgICAgMTAsICAgICAgICAgICAgICAgICAgICAv
KiBhdXRoIHRhZyBsZW5ndGggaW4gb2N0ZXRzICAgKi8KLSAgICAgICAgc2VjX3NlcnZfY29uZl9h
bmRfYXV0aCAvKiBzZWN1cml0eSBzZXJ2aWNlcyBmbGFnICAgICAgKi8KKyAgICAgICAgU1JUUF9I
TUFDX1NIQTEsICAgICAgICAgICAgICAgICAvKiBhdXRoZW50aWNhdGlvbiBmdW5jIHR5cGUgICAg
Ki8KKyAgICAgICAgMTYsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBhdXRoIGtleSBs
ZW5ndGggaW4gb2N0ZXRzICAgKi8KKyAgICAgICAgMTAsICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAvKiBhdXRoIHRhZyBsZW5ndGggaW4gb2N0ZXRzICAgKi8KKyAgICAgICAgc2VjX3NlcnZf
Y29uZl9hbmRfYXV0aCAgICAgICAgICAvKiBzZWN1cml0eSBzZXJ2aWNlcyBmbGFnICAgICAgKi8K
ICAgICB9LAotICAgIHsgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIFNSVENQIHBvbGljeSAg
ICAgICAgICAgICAgICAgICAqLwotICAgICAgICBTUlRQX0FFU19JQ01fMTI4LCAgICAgICAgICAg
LyogY2lwaGVyIHR5cGUgICAgICAgICAgICAgICAgICovCisgICAgeworICAgICAgICAvKiBTUlRD
UCBwb2xpY3kgKi8KKyAgICAgICAgU1JUUF9BRVNfSUNNXzEyOCwgICAgICAgICAgICAgICAvKiBj
aXBoZXIgdHlwZSAgICAgICAgICAgICAgICAgKi8KICAgICAgICAgU1JUUF9BRVNfSUNNXzEyOF9L
RVlfTEVOX1dTQUxULCAvKiBjaXBoZXIga2V5IGxlbmd0aCBpbiBvY3RldHMgKi8KLSAgICAgICAg
U1JUUF9ITUFDX1NIQTEsICAgICAgICAgICAgIC8qIGF1dGhlbnRpY2F0aW9uIGZ1bmMgdHlwZSAg
ICAqLwotICAgICAgICAxNiwgICAgICAgICAgICAgICAgICAgIC8qIGF1dGgga2V5IGxlbmd0aCBp
biBvY3RldHMgICAqLwotICAgICAgICAxMCwgICAgICAgICAgICAgICAgICAgIC8qIGF1dGggdGFn
IGxlbmd0aCBpbiBvY3RldHMgICAqLwotICAgICAgICBzZWNfc2Vydl9jb25mX2FuZF9hdXRoIC8q
IHNlY3VyaXR5IHNlcnZpY2VzIGZsYWcgICAgICAqLworICAgICAgICBTUlRQX0hNQUNfU0hBMSwg
ICAgICAgICAgICAgICAgIC8qIGF1dGhlbnRpY2F0aW9uIGZ1bmMgdHlwZSAgICAqLworICAgICAg
ICAxNiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIGF1dGgga2V5IGxlbmd0aCBpbiBv
Y3RldHMgICAqLworICAgICAgICAxMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIGF1
dGggdGFnIGxlbmd0aCBpbiBvY3RldHMgICAqLworICAgICAgICBzZWNfc2Vydl9jb25mX2FuZF9h
dXRoICAgICAgICAgIC8qIHNlY3VyaXR5IHNlcnZpY2VzIGZsYWcgICAgICAqLwogICAgIH0sCiAg
ICAgdGVzdF9rZXksCiAgICAgTlVMTCwKICAgICAwLAogICAgIE5VTEwsCi0gICAgMTI4LCAgICAg
ICAgICAgICAgICAgLyogcmVwbGF5IHdpbmRvdyBzaXplICovCi0gICAgMCwgICAgICAgICAgICAg
ICAgICAgLyogcmV0cmFuc21pc3Npb24gbm90IGFsbG93ZWQgKi8KLSAgICBOVUxMLCAgICAgICAg
ICAgICAgICAvKiBubyBlbmNyeXB0ZWQgZXh0ZW5zaW9uIGhlYWRlcnMgKi8KLSAgICAwLCAgICAg
ICAgICAgICAgICAgICAvKiBsaXN0IG9mIGVuY3J5cHRlZCBleHRlbnNpb24gaGVhZGVycyBpcyBl
bXB0eSAqLworICAgIDEyOCwgIC8qIHJlcGxheSB3aW5kb3cgc2l6ZSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICovCisgICAgMCwgICAgLyogcmV0cmFuc21pc3Npb24gbm90IGFsbG93ZWQgICAg
ICAgICAgICAgICAgICAgKi8KKyAgICBOVUxMLCAvKiBubyBlbmNyeXB0ZWQgZXh0ZW5zaW9uIGhl
YWRlcnMgICAgICAgICAgICAgICAqLworICAgIDAsICAgIC8qIGxpc3Qgb2YgZW5jcnlwdGVkIGV4
dGVuc2lvbiBoZWFkZXJzIGlzIGVtcHR5ICovCiAgICAgTlVMTAogfTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC90ZXN0
L3Rlc3Rfc3J0cC5jIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9w
YXJ0eS9saWJzcnRwL3Rlc3QvdGVzdF9zcnRwLmMKaW5kZXggMjI1NjU1NzNkY2IwNmNkMTI3ZGE3
ZmVhOGI3OGRiMmNiYjhhODM0Ni4uY2RjOWI1ZDViNzYyODc4NjA4MjIyMmQzODI0ZGNhNWExMmQz
ZjBkZCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGly
ZF9wYXJ0eS9saWJzcnRwL3Rlc3QvdGVzdF9zcnRwLmMKKysrIGIvU291cmNlL1RoaXJkUGFydHkv
bGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJzcnRwL3Rlc3QvdGVzdF9zcnRwLmMKQEAg
LTcyLDEzICs3MiwxMyBAQCB2b2lkIHNydHBfY2FsY19hZWFkX2l2X3NydGNwX2Rpc3RpbmN0X2l2
X3Blcl9zZXF1ZW5jZV9udW1iZXIodm9pZCk7CiAgKiBpdGVtIGlzIHRoZSB0ZXN0IGZ1bmN0aW9u
LgogICovCiAKLVRFU1RfTElTVCA9IHt7InNydHBfY2FsY19hZWFkX2l2X3NydGNwX2FsbF96ZXJv
X2lucHV0X3lpZWxkX3plcm9fb3V0cHV0KCkiLAotICAgICAgICAgICAgICBzcnRwX2NhbGNfYWVh
ZF9pdl9zcnRjcF9hbGxfemVyb19pbnB1dF95aWVsZF96ZXJvX291dHB1dH0sCi0gICAgICAgICAg
ICAgeyJzcnRwX2NhbGNfYWVhZF9pdl9zcnRjcF9zZXFfbnVtX292ZXJfMHg3RkZGRkZGRl9iYWRf
cGFyYW0oKSIsCi0gICAgICAgICAgICAgIHNydHBfY2FsY19hZWFkX2l2X3NydGNwX3NlcV9udW1f
b3Zlcl8weDdGRkZGRkZGX2JhZF9wYXJhbX0sCi0gICAgICAgICAgICAgeyJzcnRwX2NhbGNfYWVh
ZF9pdl9zcnRjcF9kaXN0aW5jdF9pdl9wZXJfc2VxdWVuY2VfbnVtYmVyKCkiLAotICAgICAgICAg
ICAgICBzcnRwX2NhbGNfYWVhZF9pdl9zcnRjcF9kaXN0aW5jdF9pdl9wZXJfc2VxdWVuY2VfbnVt
YmVyfSwKLSAgICAgICAgICAgICB7TlVMTH0gLyogRW5kIG9mIHRlc3RzICovfTsKK1RFU1RfTElT
VCA9IHsgeyAic3J0cF9jYWxjX2FlYWRfaXZfc3J0Y3BfYWxsX3plcm9faW5wdXRfeWllbGRfemVy
b19vdXRwdXQoKSIsCisgICAgICAgICAgICAgICAgc3J0cF9jYWxjX2FlYWRfaXZfc3J0Y3BfYWxs
X3plcm9faW5wdXRfeWllbGRfemVyb19vdXRwdXQgfSwKKyAgICAgICAgICAgICAgeyAic3J0cF9j
YWxjX2FlYWRfaXZfc3J0Y3Bfc2VxX251bV9vdmVyXzB4N0ZGRkZGRkZfYmFkX3BhcmFtKCkiLAor
ICAgICAgICAgICAgICAgIHNydHBfY2FsY19hZWFkX2l2X3NydGNwX3NlcV9udW1fb3Zlcl8weDdG
RkZGRkZGX2JhZF9wYXJhbSB9LAorICAgICAgICAgICAgICB7ICJzcnRwX2NhbGNfYWVhZF9pdl9z
cnRjcF9kaXN0aW5jdF9pdl9wZXJfc2VxdWVuY2VfbnVtYmVyKCkiLAorICAgICAgICAgICAgICAg
IHNydHBfY2FsY19hZWFkX2l2X3NydGNwX2Rpc3RpbmN0X2l2X3Blcl9zZXF1ZW5jZV9udW1iZXIg
fSwKKyAgICAgICAgICAgICAgeyBOVUxMIH0gLyogRW5kIG9mIHRlc3RzICovIH07CiAKIC8qCiAg
KiBJbXBsZW1lbnRhdGlvbi4KQEAgLTE0Niw5ICsxNDYsOSBAQCB2b2lkIHNydHBfY2FsY19hZWFk
X2l2X3NydGNwX3NlcV9udW1fb3Zlcl8weDdGRkZGRkZGX2JhZF9wYXJhbSgpCiAgKi8KIHZvaWQg
c3J0cF9jYWxjX2FlYWRfaXZfc3J0Y3BfZGlzdGluY3RfaXZfcGVyX3NlcXVlbmNlX251bWJlcigp
CiB7CisjZGVmaW5lIFNBTVBMRV9DT1VOVCAoMykKICAgICAvLyBQcmVjb25kaXRpb25zCiAgICAg
Ly8gVGVzdCBlYWNoIHNpZ25pZmljYW50IGJpdCBoaWdoIGluIGVhY2ggZnVsbCBieXRlLgotICAg
ICNkZWZpbmUgU0FNUExFX0NPVU5UICgzKQogICAgIHNydHBfc2Vzc2lvbl9rZXlzX3Qgc2Vzc2lv
bl9rZXlzOwogICAgIHNydGNwX2hkcl90IGhlYWRlcjsKICAgICB2MTI4X3Qgb3V0cHV0X2l2W1NB
TVBMRV9DT1VOVF07CkBAIC0xNzMsMTMgKzE3MywxMyBAQCB2b2lkIHNydHBfY2FsY19hZWFkX2l2
X3NydGNwX2Rpc3RpbmN0X2l2X3Blcl9zZXF1ZW5jZV9udW1iZXIoKQogICAgIHNpemVfdCBpID0g
MDsKICAgICBmb3IgKGkgPSAwOyBpIDwgU0FNUExFX0NPVU5UOyBpKyspIHsKICAgICAgICAgVEVT
VF9DSEVDSyhzcnRwX2NhbGNfYWVhZF9pdl9zcnRjcCgmc2Vzc2lvbl9rZXlzLCAmb3V0cHV0X2l2
W2ldLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlcXVlbmNl
X251bVtpXSwgJmhlYWRlcikKLSAgICAgICAgICAgICAgICAgICA9PSBzcnRwX2Vycl9zdGF0dXNf
b2spOworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlcXVlbmNl
X251bVtpXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmaGVh
ZGVyKSA9PSBzcnRwX2Vycl9zdGF0dXNfb2spOwogICAgIH0KIAogICAgIC8vIFRoZW4gYWxsIElW
cyBhcmUgYXMgZXhwZWN0ZWQKICAgICBmb3IgKGkgPSAwOyBpIDwgU0FNUExFX0NPVU5UOyBpKysp
IHsKICAgICAgICAgVEVTVF9DSEVDSyhtZW1jbXAoJmZpbmFsX2l2W2ldLCAmb3V0cHV0X2l2W2ld
LCBzaXplb2YodjEyOF90KSkgPT0gMCk7CiAgICAgfQotICAgICN1bmRlZiBTQU1QTEVfQ09VTlQK
KyN1bmRlZiBTQU1QTEVfQ09VTlQKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC90ZXN0L3V0aWwuYyBiL1NvdXJjZS9U
aGlyZFBhcnR5L2xpYndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC90ZXN0L3V0aWwu
YwppbmRleCA3NTJhNmE0YzdhODRmZTNhMGMxYTA5ODdjZmVkZmJiZGViMjE2ZTY2Li5lYjIwM2Y0
YzRhZmVlOTgyYmIyNDkzODBhZTY2MWUxNDE3NzAxYTM2IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5L2xpYnNydHAvdGVzdC91dGlsLmMK
KysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90aGlyZF9wYXJ0eS9saWJz
cnRwL3Rlc3QvdXRpbC5jCkBAIC00OSwzOCArNDksNjEgQEAKIAogY2hhciBiaXRfc3RyaW5nW01B
WF9QUklOVF9TVFJJTkdfTEVOXTsKIAotc3RhdGljIGlubGluZSBpbnQgaGV4X2NoYXJfdG9fbmli
YmxlICh1aW50OF90IGMpCitzdGF0aWMgaW5saW5lIGludCBoZXhfY2hhcl90b19uaWJibGUodWlu
dDhfdCBjKQogewogICAgIHN3aXRjaCAoYykgewotICAgIGNhc2UgKCcwJyk6IHJldHVybiAweDA7
Ci0gICAgY2FzZSAoJzEnKTogcmV0dXJuIDB4MTsKLSAgICBjYXNlICgnMicpOiByZXR1cm4gMHgy
OwotICAgIGNhc2UgKCczJyk6IHJldHVybiAweDM7Ci0gICAgY2FzZSAoJzQnKTogcmV0dXJuIDB4
NDsKLSAgICBjYXNlICgnNScpOiByZXR1cm4gMHg1OwotICAgIGNhc2UgKCc2Jyk6IHJldHVybiAw
eDY7Ci0gICAgY2FzZSAoJzcnKTogcmV0dXJuIDB4NzsKLSAgICBjYXNlICgnOCcpOiByZXR1cm4g
MHg4OwotICAgIGNhc2UgKCc5Jyk6IHJldHVybiAweDk7Ci0gICAgY2FzZSAoJ2EnKTogcmV0dXJu
IDB4YTsKLSAgICBjYXNlICgnQScpOiByZXR1cm4gMHhhOwotICAgIGNhc2UgKCdiJyk6IHJldHVy
biAweGI7Ci0gICAgY2FzZSAoJ0InKTogcmV0dXJuIDB4YjsKLSAgICBjYXNlICgnYycpOiByZXR1
cm4gMHhjOwotICAgIGNhc2UgKCdDJyk6IHJldHVybiAweGM7Ci0gICAgY2FzZSAoJ2QnKTogcmV0
dXJuIDB4ZDsKLSAgICBjYXNlICgnRCcpOiByZXR1cm4gMHhkOwotICAgIGNhc2UgKCdlJyk6IHJl
dHVybiAweGU7Ci0gICAgY2FzZSAoJ0UnKTogcmV0dXJuIDB4ZTsKLSAgICBjYXNlICgnZicpOiBy
ZXR1cm4gMHhmOwotICAgIGNhc2UgKCdGJyk6IHJldHVybiAweGY7Ci0gICAgZGVmYXVsdDogcmV0
dXJuIC0xOyAvKiB0aGlzIGZsYWdzIGFuIGVycm9yICovCisgICAgY2FzZSAoJzAnKToKKyAgICAg
ICAgcmV0dXJuIDB4MDsKKyAgICBjYXNlICgnMScpOgorICAgICAgICByZXR1cm4gMHgxOworICAg
IGNhc2UgKCcyJyk6CisgICAgICAgIHJldHVybiAweDI7CisgICAgY2FzZSAoJzMnKToKKyAgICAg
ICAgcmV0dXJuIDB4MzsKKyAgICBjYXNlICgnNCcpOgorICAgICAgICByZXR1cm4gMHg0OworICAg
IGNhc2UgKCc1Jyk6CisgICAgICAgIHJldHVybiAweDU7CisgICAgY2FzZSAoJzYnKToKKyAgICAg
ICAgcmV0dXJuIDB4NjsKKyAgICBjYXNlICgnNycpOgorICAgICAgICByZXR1cm4gMHg3OworICAg
IGNhc2UgKCc4Jyk6CisgICAgICAgIHJldHVybiAweDg7CisgICAgY2FzZSAoJzknKToKKyAgICAg
ICAgcmV0dXJuIDB4OTsKKyAgICBjYXNlICgnYScpOgorICAgICAgICByZXR1cm4gMHhhOworICAg
IGNhc2UgKCdBJyk6CisgICAgICAgIHJldHVybiAweGE7CisgICAgY2FzZSAoJ2InKToKKyAgICAg
ICAgcmV0dXJuIDB4YjsKKyAgICBjYXNlICgnQicpOgorICAgICAgICByZXR1cm4gMHhiOworICAg
IGNhc2UgKCdjJyk6CisgICAgICAgIHJldHVybiAweGM7CisgICAgY2FzZSAoJ0MnKToKKyAgICAg
ICAgcmV0dXJuIDB4YzsKKyAgICBjYXNlICgnZCcpOgorICAgICAgICByZXR1cm4gMHhkOworICAg
IGNhc2UgKCdEJyk6CisgICAgICAgIHJldHVybiAweGQ7CisgICAgY2FzZSAoJ2UnKToKKyAgICAg
ICAgcmV0dXJuIDB4ZTsKKyAgICBjYXNlICgnRScpOgorICAgICAgICByZXR1cm4gMHhlOworICAg
IGNhc2UgKCdmJyk6CisgICAgICAgIHJldHVybiAweGY7CisgICAgY2FzZSAoJ0YnKToKKyAgICAg
ICAgcmV0dXJuIDB4ZjsKKyAgICBkZWZhdWx0OgorICAgICAgICByZXR1cm4gLTE7IC8qIHRoaXMg
ZmxhZ3MgYW4gZXJyb3IgKi8KICAgICB9CiAgICAgLyogTk9UUkVBQ0hFRCAqLwogICAgIHJldHVy
biAtMTsgLyogdGhpcyBrZWVwcyBjb21waWxlcnMgZnJvbSBjb21wbGFpbmluZyAqLwogfQogCi11
aW50OF90IG5pYmJsZV90b19oZXhfY2hhciAodWludDhfdCBuaWJibGUpCit1aW50OF90IG5pYmJs
ZV90b19oZXhfY2hhcih1aW50OF90IG5pYmJsZSkKIHsKICAgICBjaGFyIGJ1ZlsxNl0gPSB7ICcw
JywgJzEnLCAnMicsICczJywgJzQnLCAnNScsICc2JywgJzcnLAogICAgICAgICAgICAgICAgICAg
ICAgJzgnLCAnOScsICdhJywgJ2InLCAnYycsICdkJywgJ2UnLCAnZicgfTsKQEAgLTkyLDcgKzEx
NSw3IEBAIHVpbnQ4X3QgbmliYmxlX3RvX2hleF9jaGFyICh1aW50OF90IG5pYmJsZSkKICAqIGhl
eF9zdHJpbmdfdG9fb2N0ZXRfc3RyaW5nIGNvbnZlcnRzIGEgaGV4YWRlY2ltYWwgc3RyaW5nCiAg
KiBvZiBsZW5ndGggMiAqIGxlbiB0byBhIHJhdyBvY3RldCBzdHJpbmcgb2YgbGVuZ3RoIGxlbgog
ICovCi1pbnQgaGV4X3N0cmluZ190b19vY3RldF9zdHJpbmcgKGNoYXIgKnJhdywgY2hhciAqaGV4
LCBpbnQgbGVuKQoraW50IGhleF9zdHJpbmdfdG9fb2N0ZXRfc3RyaW5nKGNoYXIgKnJhdywgY2hh
ciAqaGV4LCBpbnQgbGVuKQogewogICAgIHVpbnQ4X3QgeDsKICAgICBpbnQgdG1wOwpAQCAtMTE4
LDkgKzE0MSw5IEBAIGludCBoZXhfc3RyaW5nX3RvX29jdGV0X3N0cmluZyAoY2hhciAqcmF3LCBj
aGFyICpoZXgsIGludCBsZW4pCiAgICAgcmV0dXJuIGhleF9sZW47CiB9CiAKLWNoYXIgKiBvY3Rl
dF9zdHJpbmdfaGV4X3N0cmluZyAoY29uc3Qgdm9pZCAqcywgaW50IGxlbmd0aCkKK2NoYXIgKm9j
dGV0X3N0cmluZ19oZXhfc3RyaW5nKGNvbnN0IHZvaWQgKnMsIGludCBsZW5ndGgpCiB7Ci0gICAg
Y29uc3QgdWludDhfdCAqc3RyID0gKGNvbnN0IHVpbnQ4X3QqKXM7CisgICAgY29uc3QgdWludDhf
dCAqc3RyID0gKGNvbnN0IHVpbnQ4X3QgKilzOwogICAgIGludCBpOwogCiAgICAgLyogZG91Ymxl
IGxlbmd0aCwgc2luY2Ugb25lIG9jdGV0IHRha2VzIHR3byBoZXggY2hhcmFjdGVycyAqLwpAQCAt
MTMyLDcgKzE1NSw3IEBAIGNoYXIgKiBvY3RldF9zdHJpbmdfaGV4X3N0cmluZyAoY29uc3Qgdm9p
ZCAqcywgaW50IGxlbmd0aCkKICAgICB9CiAKICAgICBmb3IgKGkgPSAwOyBpIDwgbGVuZ3RoOyBp
ICs9IDIpIHsKLSAgICAgICAgYml0X3N0cmluZ1tpXSAgID0gbmliYmxlX3RvX2hleF9jaGFyKCpz
dHIgPj4gNCk7CisgICAgICAgIGJpdF9zdHJpbmdbaV0gPSBuaWJibGVfdG9faGV4X2NoYXIoKnN0
ciA+PiA0KTsKICAgICAgICAgYml0X3N0cmluZ1tpICsgMV0gPSBuaWJibGVfdG9faGV4X2NoYXIo
KnN0cisrICYgMHhGKTsKICAgICB9CiAgICAgYml0X3N0cmluZ1tpXSA9IDA7IC8qIG51bGwgdGVy
bWluYXRlIHN0cmluZyAqLwpAQCAtMTQyLDkgKzE2NSw5IEBAIGNoYXIgKiBvY3RldF9zdHJpbmdf
aGV4X3N0cmluZyAoY29uc3Qgdm9pZCAqcywgaW50IGxlbmd0aCkKIHN0YXRpYyBjb25zdCBjaGFy
IGI2NGNoYXJzW10gPSAiQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVoiCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgImFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSsv
IjsKIAotc3RhdGljIGludCBiYXNlNjRfYmxvY2tfdG9fb2N0ZXRfdHJpcGxlIChjaGFyICpvdXQs
IGNoYXIgKmluKQorc3RhdGljIGludCBiYXNlNjRfYmxvY2tfdG9fb2N0ZXRfdHJpcGxlKGNoYXIg
Km91dCwgY2hhciAqaW4pCiB7Ci0gICAgdW5zaWduZWQgY2hhciBzZXh0ZXRzWzRdID0gezB9Owor
ICAgIHVuc2lnbmVkIGNoYXIgc2V4dGV0c1s0XSA9IHsgMCB9OwogICAgIGludCBqID0gMDsKICAg
ICBpbnQgaTsKIApAQCAtMTUyLDcgKzE3NSw5IEBAIHN0YXRpYyBpbnQgYmFzZTY0X2Jsb2NrX3Rv
X29jdGV0X3RyaXBsZSAoY2hhciAqb3V0LCBjaGFyICppbikKICAgICAgICAgY2hhciAqcCA9IHN0
cmNocihiNjRjaGFycywgaW5baV0pOwogICAgICAgICBpZiAocCAhPSBOVUxMKSB7CiAgICAgICAg
ICAgICBzZXh0ZXRzW2ldID0gcCAtIGI2NGNoYXJzOwotICAgICAgICB9IGVsc2V7ICBqKys7IH0K
KyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIGorKzsKKyAgICAgICAgfQogICAgIH0KIAog
ICAgIG91dFswXSA9IChzZXh0ZXRzWzBdIDw8IDIpIHwgKHNleHRldHNbMV0gPj4gNCk7CkBAIC0x
NjUsNyArMTkwLDcgQEAgc3RhdGljIGludCBiYXNlNjRfYmxvY2tfdG9fb2N0ZXRfdHJpcGxlIChj
aGFyICpvdXQsIGNoYXIgKmluKQogICAgIHJldHVybiBqOwogfQogCi1pbnQgYmFzZTY0X3N0cmlu
Z190b19vY3RldF9zdHJpbmcgKGNoYXIgKm91dCwgaW50ICpwYWQsIGNoYXIgKmluLCBpbnQgbGVu
KQoraW50IGJhc2U2NF9zdHJpbmdfdG9fb2N0ZXRfc3RyaW5nKGNoYXIgKm91dCwgaW50ICpwYWQs
IGNoYXIgKmluLCBpbnQgbGVuKQogewogICAgIGludCBrID0gMDsKICAgICBpbnQgaSA9IDA7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNlL3RoaXJkX3BhcnR5
L2xpYnNydHAvdGVzdC91dGlsLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9saWJ3ZWJydGMvU291cmNl
L3RoaXJkX3BhcnR5L2xpYnNydHAvdGVzdC91dGlsLmgKaW5kZXggZGI1OGMyNDY2MWNkYzQ1NWRj
ODc0ZDliYjE0ZjA4ZWEwODFiZDU2Ny4uZDA0YjI3OWIzYTNhMzllMjJiYTlmZjJlZjVhMjk0NTUy
NTVmNjVhMyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL1NvdXJjZS90
aGlyZF9wYXJ0eS9saWJzcnRwL3Rlc3QvdXRpbC5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L2xp
YndlYnJ0Yy9Tb3VyY2UvdGhpcmRfcGFydHkvbGlic3J0cC90ZXN0L3V0aWwuaApAQCAtNDcsNyAr
NDcsNyBAQAogI2RlZmluZSBNQVhfUFJJTlRfU1RSSU5HX0xFTiAxMDI0CiAKIGludCBoZXhfc3Ry
aW5nX3RvX29jdGV0X3N0cmluZyhjaGFyICpyYXcsIGNoYXIgKmhleCwgaW50IGxlbik7Ci1jaGFy
ICogb2N0ZXRfc3RyaW5nX2hleF9zdHJpbmcoY29uc3Qgdm9pZCAqcywgaW50IGxlbmd0aCk7Citj
aGFyICpvY3RldF9zdHJpbmdfaGV4X3N0cmluZyhjb25zdCB2b2lkICpzLCBpbnQgbGVuZ3RoKTsK
IGludCBiYXNlNjRfc3RyaW5nX3RvX29jdGV0X3N0cmluZyhjaGFyICpyYXcsIGludCAqcGFkLCBj
aGFyICpiYXNlNjQsIGludCBsZW4pOwogCiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGly
ZFBhcnR5L2xpYndlYnJ0Yy9saWJ3ZWJydGMueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1Nv
dXJjZS9UaGlyZFBhcnR5L2xpYndlYnJ0Yy9saWJ3ZWJydGMueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvagppbmRleCBlOTU1OWZiN2VkOTljMzRiM2MyNDJiZTAzOTZkNWM1ZTdhNTE0YWFhLi4zZWNm
NWE2MTRkM2UwMDA1YWYzODQ3NmY3NTc2NDE3NDk4YTBjYWMyIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9saWJ3ZWJydGMvbGlid2VicnRjLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oK
KysrIGIvU291cmNlL1RoaXJkUGFydHkvbGlid2VicnRjL2xpYndlYnJ0Yy54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qCkBAIC0yMSw2ICsyMSw3IEBACiAvKiBFbmQgUEJYQWdncmVnYXRlVGFyZ2V0
IHNlY3Rpb24gKi8KIAogLyogQmVnaW4gUEJYQnVpbGRGaWxlIHNlY3Rpb24gKi8KKwkJNDEwMENE
RjkyMUNBRTMzNDAwRjlCODdEIC8qIHNydHBzZXNzaW9uLmNjIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDE5QzgyRDAxRkUyMEU1NjAwNDBDMzBGIC8qIHNy
dHBzZXNzaW9uLmNjICovOyB9OwogCQk0MTAyRjY4RDIxMjczMjA2MDA2QUU4RDcgLyogcnRjc3Rh
dHN0cmF2ZXJzYWwuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDQxMDJGNjg0MjEyNzMyMDQwMDZBRThENyAvKiBydGNzdGF0c3RyYXZlcnNhbC5oICovOyB9
OwogCQk0MTAyRjY4RTIxMjczMjA2MDA2QUU4RDcgLyoganNlcHRyYW5zcG9ydGNvbnRyb2xsZXIu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxMDJGNjg1
MjEyNzMyMDQwMDZBRThENyAvKiBqc2VwdHJhbnNwb3J0Y29udHJvbGxlci5oICovOyB9OwogCQk0
MTAyRjY4RjIxMjczMjA2MDA2QUU4RDcgLyogdHJhbnNwb3J0c3RhdHMuY2MgaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MTAyRjY4NjIxMjczMjA1MDA2QUU4
RDcgLyogdHJhbnNwb3J0c3RhdHMuY2MgKi87IH07CkBAIC04MzEsNyArODMyLDYgQEAKIAkJNDE5
QzgyREIxRkUyMEU1OTAwNDBDMzBGIC8qIHJ0cHRyYW5zcG9ydGludGVybmFsYWRhcHRlci5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDE5QzgyQ0QxRkUy
MEU1NTAwNDBDMzBGIC8qIHJ0cHRyYW5zcG9ydGludGVybmFsYWRhcHRlci5oICovOyB9OwogCQk0
MTlDODJEQzFGRTIwRTU5MDA0MEMzMEYgLyogc2RwdXRpbHMuY2MgaW4gU291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MTlDODJDRTFGRTIwRTU1MDA0MEMzMEYgLyog
c2RwdXRpbHMuY2MgKi87IH07CiAJCTQxOUM4MkREMUZFMjBFNTkwMDQwQzMwRiAvKiBzZHB1dGls
cy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDE5Qzgy
Q0YxRkUyMEU1NjAwNDBDMzBGIC8qIHNkcHV0aWxzLmggKi87IH07Ci0JCTQxOUM4MkRFMUZFMjBF
NTkwMDQwQzMwRiAvKiBzcnRwc2Vzc2lvbi5jYyBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDQxOUM4MkQwMUZFMjBFNTYwMDQwQzMwRiAvKiBzcnRwc2Vzc2lv
bi5jYyAqLzsgfTsKIAkJNDE5QzgyREYxRkUyMEU1OTAwNDBDMzBGIC8qIHNydHB0cmFuc3BvcnQu
Y2MgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MTlDODJE
MTFGRTIwRTU2MDA0MEMzMEYgLyogc3J0cHRyYW5zcG9ydC5jYyAqLzsgfTsKIAkJNDE5QzgyRTAx
RkUyMEU1OTAwNDBDMzBGIC8qIGR0bHNzcnRwdHJhbnNwb3J0LmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MTlDODJEMjFGRTIwRTU3MDA0MEMzMEYgLyog
ZHRsc3NydHB0cmFuc3BvcnQuaCAqLzsgfTsKIAkJNDE5QzgyRTExRkUyMEU1OTAwNDBDMzBGIC8q
IHNydHBzZXNzaW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA0MTlDODJEMzFGRTIwRTU3MDA0MEMzMEYgLyogc3J0cHNlc3Npb24uaCAqLzsgfTsKQEAg
LTE1NzE0LDYgKzE1NzE0LDcgQEAKIAkJCQk1QzA4OEMxRTFFNEFBNDQ0MDA0MDM5OTUgLyogcnRj
cG11eGZpbHRlci5jYyBpbiBTb3VyY2VzICovLAogCQkJCTVDMDg4QzIwMUU0QUE0NDQwMDQwMzk5
NSAvKiBzcnRwZmlsdGVyLmNjIGluIFNvdXJjZXMgKi8sCiAJCQkJNDEyMzlCNEQyMTQ3NzQzQTAw
Mzk2RjgxIC8qIHZpZGVvX3N0cmVhbV9lbmNvZGVyX2NyZWF0ZS5jYyBpbiBTb3VyY2VzICovLAor
CQkJCTQxMDBDREY5MjFDQUUzMzQwMEY5Qjg3RCAvKiBzcnRwc2Vzc2lvbi5jYyBpbiBTb3VyY2Vz
ICovLAogCQkJKTsKIAkJCXJ1bk9ubHlGb3JEZXBsb3ltZW50UG9zdHByb2Nlc3NpbmcgPSAwOwog
CQl9OwpAQCAtMTcwNzUsNyArMTcwNzYsNiBAQAogCQkJCTVDREQ4MzVGMUU0MzI1NzIwMDYyMUU5
MiAvKiBzcHNfcGFyc2VyLmNjIGluIFNvdXJjZXMgKi8sCiAJCQkJNUNERDgzNjIxRTQzMjU3MjAw
NjIxRTkyIC8qIHNwc192dWlfcmV3cml0ZXIuY2MgaW4gU291cmNlcyAqLywKIAkJCQk1Q0REODY3
MjFFNDNCOEI1MDA2MjFFOTIgLyogc3FydF9vZl9vbmVfbWludXNfeF9zcXVhcmVkLmMgaW4gU291
cmNlcyAqLywKLQkJCQk0MTlDODJERTFGRTIwRTU5MDA0MEMzMEYgLyogc3J0cHNlc3Npb24uY2Mg
aW4gU291cmNlcyAqLywKIAkJCQk0MTlDODJERjFGRTIwRTU5MDA0MEMzMEYgLyogc3J0cHRyYW5z
cG9ydC5jYyBpbiBTb3VyY2VzICovLAogCQkJCTQxOUM4NDVFMUZFMjU1RkEwMDQwQzMwRiAvKiBz
c2xfYWVhZF9jdHguY2MgaW4gU291cmNlcyAqLywKIAkJCQk0MTlDODQ3NDFGRTI1NUZBMDA0MEMz
MEYgLyogc3NsX2FzbjEuY2MgaW4gU291cmNlcyAqLywK
</data>

          </attachment>
      

    </bug>

</bugzilla>